:root{
--navy:#012884;--blue:#0245CB;--bright:#0885F7;--lightblue:#B5CAE2;--bg:#F4F7FA;--gray:#54585C;--dark:#02133B;
}
*{box-sizing:border-box}body{font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--dark);background:var(--bg);line-height:1.6}
.site-header{position:sticky;top:0;z-index:1000;background:#fff;box-shadow:0 5px 20px #02133b12}.navbar{min-height:76px}
.navbar-brand{color:var(--navy);font-weight:800;letter-spacing:.4px}.navbar-brand img{height:58px;width:auto;max-width:250px;object-fit:contain}.navbar-brand span{display:inline-block}.nav-link{font-weight:600;color:var(--dark)!important}.nav-link:hover{color:var(--bright)!important}
.currency-select{border:1px solid var(--lightblue);border-radius:9px;padding:7px 9px;background:#fff;color:var(--dark)}
.btn-primary{background:var(--blue);border-color:var(--blue)}.btn-primary:hover{background:var(--bright);border-color:var(--bright)}
.hero{padding:110px 0 90px;background:radial-gradient(circle at 90% 20%,#0885f71c,transparent 35%),linear-gradient(135deg,#fff,var(--bg))}
.hero h1{font-size:clamp(2.6rem,6vw,5.1rem);font-weight:850;line-height:1.02;letter-spacing:-2px}.hero p{font-size:1.15rem;color:var(--gray);max-width:680px}
.hero-visual{min-height:390px;border-radius:35px;background:linear-gradient(145deg,var(--navy),var(--blue));position:relative;overflow:hidden;box-shadow:0 25px 70px #01288435}.hero-visual:before,.hero-visual:after{content:"";position:absolute;border-radius:50%;border:1px solid #ffffff25}.hero-visual:before{width:420px;height:420px;right:-100px;top:-80px}.hero-visual:after{width:280px;height:280px;left:-80px;bottom:-100px}
.section{padding:85px 0}.section-title{font-weight:850;font-size:2.5rem;letter-spacing:-1px}.section-sub{color:var(--gray);max-width:700px}
.trust-card,.service-card,.portfolio-card,.info-card,.admin-card{background:#fff;border:1px solid #dce7f1;border-radius:20px;padding:28px;height:100%;box-shadow:0 10px 35px #02133b08}
.service-card{transition:.25s;position:relative}.service-card:hover{transform:translateY(-7px);box-shadow:0 20px 50px #01288418;border-color:#b5cae2}
.icon-box{width:52px;height:52px;border-radius:15px;background:#0885f714;color:var(--bright);display:grid;place-items:center;font-size:1.35rem}
.price{font-size:1.4rem;font-weight:800;color:var(--navy)}.status{font-size:.78rem;font-weight:800;letter-spacing:.5px}.available{color:#148a46}.soon{color:#b87900}.unavailable{color:#54585c}
.filter-bar{background:#fff;border:1px solid #dce7f1;border-radius:16px;padding:15px}.filter-btn{border:0;background:transparent;padding:9px 14px;border-radius:10px;font-weight:700}.filter-btn.active,.filter-btn:hover{background:#0245cb;color:#fff}
.cta{background:linear-gradient(120deg,var(--navy),var(--blue));color:#fff;border-radius:30px;padding:60px}.cta p{color:#dceaff}
.footer{background:var(--dark);color:#fff}.footer a{display:block;color:#cfe0ff;text-decoration:none;margin:6px 0}.footer a:hover{color:#fff}
.form-control,.form-select{border-color:#c8d8e8;border-radius:10px;padding:.72rem .85rem}.form-control:focus,.form-select:focus{border-color:var(--bright);box-shadow:0 0 0 .2rem #0885f720}
.page-hero{padding:65px 0;background:#fff;border-bottom:1px solid #dce7f1}.badge-soft{background:#0885f714;color:var(--blue);padding:7px 10px;border-radius:99px;font-weight:700}
.admin-shell{min-height:100vh;background:var(--bg)}.sidebar{background:var(--navy);color:#fff;min-height:100vh;position:sticky;top:0}.sidebar a{color:#dbe8ff;text-decoration:none;display:block;padding:10px 14px;border-radius:9px}.sidebar a:hover,.sidebar a.active{background:#ffffff15;color:#fff}.admin-main{padding:28px}.stat{border:0;border-radius:18px;background:#fff;padding:22px;box-shadow:0 10px 30px #02133b0a}.stat h3{font-size:1.8rem;font-weight:850;margin:0}.table-wrap{background:#fff;border-radius:18px;padding:20px;box-shadow:0 10px 30px #02133b08}.table th{color:var(--gray);font-size:.8rem;text-transform:uppercase}.login-wrap{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,var(--navy),var(--blue))}
.login-card{background:#fff;border-radius:24px;padding:38px;max-width:450px;width:92%;box-shadow:0 30px 80px #0003}
@media(max-width:991px){.hero{padding:75px 0}.hero-visual{min-height:280px}.navbar-collapse{padding:15px 0}.currency-select{width:100%}}

/* SONTECH ADMIN DASHBOARD - screenshot-inspired layout */
.admin-body{margin:0;background:var(--bg);overflow-x:hidden}
.admin-shell{display:flex;min-height:100vh;background:var(--bg)}
.admin-sidebar{width:306px;flex:0 0 306px;background:linear-gradient(180deg,#02133b 0%,#001b4d 100%);color:#fff;position:fixed;inset:0 auto 0 0;z-index:1040;display:flex;flex-direction:column;box-shadow:8px 0 28px #02133b18}
.sidebar-brand{height:128px;display:flex;align-items:center;justify-content:center;padding:18px 22px;border-bottom:1px solid #ffffff14}
.sidebar-brand a{display:block;line-height:0}
.sontech-logo{width:245px;height:auto;max-width:100%;display:block;object-fit:contain}
.sidebar-nav{padding:22px 10px 14px;overflow-y:auto;flex:1}
.sidebar-section{font-size:.69rem;letter-spacing:.08em;font-weight:700;color:#8da7ce;padding:10px 16px 7px}
.sidebar-link{display:flex;align-items:center;gap:14px;color:#e8f1ff;text-decoration:none;padding:13px 16px;margin:3px 0;border-radius:9px;font-size:.94rem;font-weight:500;transition:.18s}
.sidebar-link i:first-child{font-size:1.08rem;width:20px;text-align:center}
.sidebar-link:hover{background:#ffffff10;color:#fff}.sidebar-link.active{background:linear-gradient(90deg,#0a5ce6,#145ee0);color:#fff;box-shadow:0 8px 20px #0245cb35}.sidebar-chevron{margin-left:auto;font-size:.72rem!important;opacity:.9}
.sidebar-user{border-top:1px solid #ffffff16;padding:20px 18px;display:flex;align-items:center;gap:12px;background:#001a47}
.admin-avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(145deg,#fff,#dfeeff);color:#1558c8;display:grid;place-items:center;font-size:1.5rem;flex:0 0 auto;box-shadow:0 0 0 3px #ffffff16}
.admin-avatar.small{width:38px;height:38px;font-size:1.1rem;box-shadow:none}
.sidebar-user-copy{display:flex;flex-direction:column;min-width:0;flex:1}.sidebar-user-copy small{font-size:.76rem;color:#b8c9e2}.sidebar-user-copy strong{font-size:.95rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-copy span{font-size:.72rem;color:#cce0ff;margin-top:2px}.sidebar-user-copy span i{color:#2bc55d;font-size:.42rem;vertical-align:middle;margin-right:3px}.sidebar-user>a{color:#fff;font-size:1rem}
.admin-content{margin-left:306px;min-width:0;display:flex;flex-direction:column;min-height:100vh;width:calc(100% - 306px)}
.admin-topbar{height:66px;background:#fff;border-bottom:1px solid #e1e8f0;display:flex;align-items:center;padding:0 28px;position:sticky;top:0;z-index:1000;box-shadow:0 3px 14px #02133b08}
.sidebar-toggle{border:0;background:transparent;color:var(--dark);font-size:1.75rem;line-height:1;padding:4px 8px}.topbar-spacer{flex:1}.topbar-icon{position:relative;color:var(--dark);font-size:1.35rem;margin-right:24px;text-decoration:none}.notification-dot{position:absolute;top:-7px;right:-8px;width:17px;height:17px;border-radius:50%;background:#f44336;color:#fff;font-size:.62rem;display:grid;place-items:center;font-weight:700;border:2px solid #fff}.topbar-admin{display:flex;align-items:center;gap:9px;font-weight:600;color:var(--dark)}.topbar-admin>i{font-size:.72rem;margin-left:2px}
.admin-main{padding:20px 20px 24px;flex:1;max-width:1800px;width:100%;margin:0 auto}.admin-page-heading{display:flex;justify-content:space-between;align-items:flex-start;margin:0 0 18px;padding:0 8px}.admin-page-heading h1{font-size:1.9rem;font-weight:800;margin:0 0 4px;letter-spacing:-.5px}.breadcrumb-line{display:flex;gap:9px;align-items:center;font-size:.88rem;color:#6b7280}.breadcrumb-line a{color:var(--bright);text-decoration:none}.date-chip{display:inline-flex;align-items:center;gap:8px;border:1px solid #dbe4ed;background:#fff;color:var(--dark);padding:9px 13px;border-radius:9px;text-decoration:none;font-size:.84rem;box-shadow:0 2px 8px #02133b06}
.dashboard-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:18px}.dashboard-stat{background:#fff;border:1px solid #e2e9f1;border-radius:12px;padding:18px;display:flex;gap:15px;align-items:center;text-decoration:none;color:inherit;box-shadow:0 5px 18px #02133b07;transition:.18s}.dashboard-stat:hover{transform:translateY(-2px);box-shadow:0 10px 25px #02133b10}.stat-icon{width:76px;height:76px;border-radius:11px;display:grid;place-items:center;color:#fff;font-size:2rem;flex:0 0 auto}.dashboard-stat.blue .stat-icon{background:linear-gradient(145deg,#1457d9,#2267e7)}.dashboard-stat.green .stat-icon{background:linear-gradient(145deg,#1fa348,#32b957)}.dashboard-stat.orange .stat-icon{background:linear-gradient(145deg,#ffad20,#ffbd45)}.dashboard-stat.purple .stat-icon{background:linear-gradient(145deg,#6b50d9,#795ce9)}.stat-copy{min-width:0;display:flex;flex-direction:column}.stat-copy span{font-size:.78rem;text-transform:uppercase;color:#172033;font-weight:600}.stat-copy strong{font-size:1.75rem;line-height:1.15;margin:4px 0 7px}.stat-copy small{color:var(--blue);font-size:.75rem}.stat-copy small i{margin-left:5px}
.dashboard-grid{display:grid;gap:18px;margin-bottom:18px}.dashboard-grid.two-col{grid-template-columns:1.03fr .97fr}.dashboard-card{background:#fff;border:1px solid #e2e9f1;border-radius:12px;box-shadow:0 5px 18px #02133b07;min-width:0}.chart-card{padding:16px 18px 18px}.card-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px}.card-heading h2{font-size:1rem;font-weight:750;margin:0;color:#121a2b}.card-heading p{font-size:.74rem;color:#7a8390;margin:2px 0 0}.card-filter{border:1px solid #dce4ed;border-radius:8px;padding:7px 10px;font-size:.75rem;color:#253047;background:#fff}.card-filter i{margin-left:5px}.chart-holder{height:245px}.status-chart-layout{display:grid;grid-template-columns:minmax(220px,1fr) minmax(190px,.8fr);gap:10px;align-items:center;height:245px}.status-doughnut{height:230px}.status-legend{padding-right:8px}.legend-row{display:flex;justify-content:space-between;gap:10px;font-size:.78rem;margin:12px 0;color:#283245}.legend-row>span{display:flex;align-items:center;gap:9px}.legend-row strong{font-weight:500;white-space:nowrap}.legend-row strong small{color:#6d7480}.legend-dot{display:inline-block;width:12px;height:12px;border-radius:3px}.legend-dot.blue{background:#2871ef}.legend-dot.green{background:#31a853}.legend-dot.orange{background:#ff9414}.legend-dot.yellow{background:#f7c948}.legend-dot.gray{background:#9aa2ad}.legend-total{margin-top:18px;padding-top:13px;border-top:1px solid #e6ebf1;font-size:.82rem}
.table-card,.activity-card{padding:16px 18px}.view-all{font-size:.78rem;color:var(--blue);border:1px solid #cfdceb;padding:5px 9px;border-radius:7px;text-decoration:none}.dashboard-table{width:100%;border-collapse:collapse;min-width:690px}.dashboard-table th{font-size:.72rem;color:#475569;font-weight:600;text-align:left;padding:11px 8px;border-bottom:1px solid #e6ebf1;white-space:nowrap}.dashboard-table td{font-size:.77rem;color:#1d2738;padding:11px 8px;border-bottom:1px solid #edf1f5;vertical-align:middle}.dashboard-table tr:last-child td{border-bottom:0}.request-status{display:inline-block;border:1px solid;padding:4px 9px;border-radius:6px;font-size:.69rem;font-weight:600}.request-status.new,.request-status.contacted,.request-status.quoted{color:#1769e0;border-color:#9cc0ff;background:#f2f7ff}.request-status.in-progress{color:#b96c00;border-color:#f6ca7b;background:#fff8e8}.request-status.completed{color:#16823d;border-color:#8fd0a6;background:#f1fbf4}.request-status.cancelled{color:#6b7280;border-color:#c9ced5;background:#f5f6f8}.activity-list{display:flex;flex-direction:column}.activity-item{display:flex;gap:12px;padding:12px 2px;border-bottom:1px solid #edf1f5}.activity-item:last-child{border-bottom:0}.activity-icon{width:34px;height:34px;border-radius:50%;background:#eef5ff;color:var(--bright);display:grid;place-items:center;flex:0 0 auto}.activity-item strong{display:block;font-size:.77rem;font-weight:600;line-height:1.35;color:#1d2738}.activity-item small{display:block;color:#7a8390;font-size:.68rem;margin-top:4px}.empty-state{text-align:center;color:#7a8390;padding:28px 10px;font-size:.82rem}.admin-footer{height:58px;background:#02133b;color:#fff;display:flex;justify-content:space-between;align-items:center;padding:0 28px;font-size:.75rem;margin-top:auto}

/* Keep the public header logo visually consistent with the admin logo. */
.navbar-brand img{width:245px;height:auto;max-width:245px;object-fit:contain}

@media(max-width:1199px){.dashboard-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid.two-col{grid-template-columns:1fr}.status-chart-layout{grid-template-columns:260px 1fr}.admin-sidebar{width:280px;flex-basis:280px}.admin-content{margin-left:280px;width:calc(100% - 280px)}}
@media(max-width:991px){.admin-sidebar{transform:translateX(-100%);transition:transform .22s ease;width:290px}.admin-sidebar.show{transform:translateX(0)}.admin-content{margin-left:0;width:100%}.admin-topbar{padding:0 16px}.admin-main{padding:16px 12px 20px}.admin-page-heading{padding:0 3px}.navbar-brand img{width:205px;max-width:205px}.sontech-logo{width:235px}}
@media(max-width:700px){.dashboard-stats{grid-template-columns:1fr}.admin-page-heading{align-items:flex-start;gap:10px}.admin-page-heading h1{font-size:1.55rem}.date-chip{padding:7px 9px}.topbar-admin span,.topbar-admin>i{display:none}.status-chart-layout{grid-template-columns:1fr;height:auto}.status-doughnut{height:220px}.chart-holder{height:220px}.admin-footer{padding:0 14px;font-size:.68rem}}

/* Client accounts + chatbot */
.auth-social-divider{display:flex;align-items:center;gap:12px;margin:22px 0 14px;color:#7a8796;font-size:.82rem}.auth-social-divider:before,.auth-social-divider:after{content:"";height:1px;background:#dce7f1;flex:1}.auth-social-divider span{white-space:nowrap}.auth-card .form-check-label{color:#566579;font-size:.9rem;line-height:1.5}.auth-card .form-check-label a{font-weight:700}.auth-card .btn-outline-secondary{border-color:#d5dfeb;color:#243b5a;background:#fff;font-weight:700}.auth-card .btn-outline-secondary:hover{border-color:#1d63d8;color:#1d63d8;background:#f5f9ff}.btn-google{display:flex;align-items:center;justify-content:center;gap:12px;background:#fff!important;border:1px solid #d4deea!important;color:#202124!important;font-weight:600;border-radius:10px;min-height:52px;box-shadow:0 1px 2px rgba(0,0,0,.04);transition:all .18s ease;text-decoration:none}.btn-google:hover,.btn-google:focus{background:#fff!important;border-color:#9dbce8!important;color:#174ea6!important;box-shadow:0 4px 14px rgba(66,133,244,.14);transform:translateY(-1px)}.google-g-mark{width:22px;height:22px;display:inline-flex;flex:0 0 22px}.google-g-mark svg{width:22px;height:22px;display:block}.auth-link{color:#0d6efd!important;font-weight:600;text-decoration:none}.auth-link:hover{color:#0758c9!important;text-decoration:underline}.auth-card h1{color:#0b4fc5!important}
.auth-page{min-height:calc(100vh - 76px);padding:70px 0;background:linear-gradient(135deg,#f4f7fa,#eaf3ff)}
.auth-card{background:#fff;max-width:700px;margin:auto;padding:38px;border-radius:24px;border:1px solid #dce7f1;box-shadow:0 25px 70px #02133b12}.auth-card-sm{max-width:470px}.auth-card h1{font-size:1.8rem;font-weight:800;color:var(--dark)}.auth-card p{color:var(--gray)}.auth-logo{width:245px;height:70px;object-fit:contain;margin-bottom:12px}.client-quote{padding:13px 0;border-bottom:1px solid #e8edf3;display:grid;gap:2px}.client-quote:last-child{border-bottom:0}.client-quote span,.client-quote small{color:var(--gray);font-size:.84rem}.empty-client{padding:30px 10px;color:var(--gray);text-align:center}.sontech-chatbot{position:fixed;right:24px;bottom:24px;z-index:1080;font-family:inherit}.chatbot-toggle{border:0;background:linear-gradient(135deg,var(--blue),var(--bright));color:#fff;border-radius:999px;padding:13px 18px;box-shadow:0 12px 30px #01288435;font-weight:700;display:flex;gap:8px;align-items:center}.chatbot-panel{width:360px;height:500px;background:#fff;border:1px solid #dce7f1;border-radius:18px;box-shadow:0 25px 70px #02133b2b;overflow:hidden;display:flex;flex-direction:column;margin-bottom:12px}.chatbot-head{background:linear-gradient(135deg,var(--navy),var(--blue));color:#fff;padding:15px 16px;display:flex;justify-content:space-between;align-items:center}.chatbot-head strong{display:block}.chatbot-head small{opacity:.8;font-size:.72rem}.chatbot-head button{background:transparent;border:0;color:#fff}.chatbot-messages{flex:1;padding:15px;overflow-y:auto;background:#f7faff}.bot-message,.user-message{max-width:86%;padding:10px 12px;border-radius:13px;margin-bottom:9px;font-size:.85rem;line-height:1.4;white-space:pre-wrap}.bot-message{background:#fff;border:1px solid #dfe8f2;color:var(--dark);margin-right:auto}.user-message{background:var(--blue);color:#fff;margin-left:auto}.chatbot-quick{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0}.chatbot-quick button{border:1px solid #b9cce4;background:#fff;color:var(--blue);border-radius:999px;padding:6px 9px;font-size:.72rem}.chatbot-form{display:flex;border-top:1px solid #e4ebf3;background:#fff;padding:10px;gap:7px}.chatbot-form input{flex:1;border:1px solid #d4dfeb;border-radius:10px;padding:9px 11px;outline:none}.chatbot-form button{border:0;border-radius:10px;background:var(--blue);color:#fff;width:42px}.chatbot-panel[hidden]{display:none}
@media(max-width:500px){.sontech-chatbot{right:12px;bottom:12px}.chatbot-panel{width:min(360px,calc(100vw - 24px));height:470px}.auth-card{padding:25px 18px}.auth-logo{width:210px}}

/* Client/Admin messaging */
.chat-page-card{max-width:1000px;margin:0 auto;background:#fff;border:1px solid #e5eaf0;border-radius:18px;box-shadow:0 12px 35px rgba(1,40,132,.08);overflow:hidden}
.chat-page-head,.conversation-head{padding:18px 22px;border-bottom:1px solid #e9edf3;display:flex;align-items:center;justify-content:space-between;gap:15px}
.chat-page-head strong{display:block;color:#02133B;font-size:1.05rem}.chat-page-head small{display:block;color:#6c757d;margin-top:2px}
.chat-online{font-size:.8rem;color:#16834a}.chat-online i{font-size:.5rem;margin-right:5px}
.chat-page-messages{min-height:430px;max-height:560px;overflow-y:auto;padding:25px;background:#f7f9fc}
.chat-row{display:flex;margin:8px 0}.chat-row.mine{justify-content:flex-end}.chat-row.theirs{justify-content:flex-start}
.chat-bubble{max-width:75%;padding:12px 15px;border-radius:16px;line-height:1.5}.chat-row.mine .chat-bubble{background:#0245CB;color:#fff;border-bottom-right-radius:4px}.chat-row.theirs .chat-bubble{background:#fff;color:#1f2937;border:1px solid #e2e8f0;border-bottom-left-radius:4px}
.chat-bubble small{display:block;margin-top:6px;font-size:.7rem;opacity:.72}.chat-page-form{display:flex;gap:10px;padding:15px;border-top:1px solid #e9edf3;background:#fff}.chat-page-form textarea,.admin-message-form textarea{resize:none;flex:1;border:1px solid #d8e0ea;border-radius:12px;padding:12px;outline:none}.chat-page-form textarea:focus,.admin-message-form textarea:focus{border-color:#0885F7;box-shadow:0 0 0 3px rgba(8,133,247,.1)}
.chat-empty,.message-placeholder{min-height:380px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;color:#718096}.chat-empty i,.message-placeholder i{font-size:2.5rem;color:#0885F7;margin-bottom:10px}.chat-empty h5{color:#02133B;margin-bottom:4px}.chat-empty p{margin:0}
.messages-layout{display:grid;grid-template-columns:340px minmax(0,1fr);min-height:650px;background:#fff;border:1px solid #e1e7ef;border-radius:16px;overflow:hidden;box-shadow:0 12px 35px rgba(1,40,132,.07)}
.message-inbox{border-right:1px solid #e4e9f0;background:#fff}.message-inbox-head{padding:18px;border-bottom:1px solid #e4e9f0;display:flex;justify-content:space-between;align-items:center}.message-inbox-head h2{font-size:1.05rem;margin:0;color:#02133B}.message-inbox-head small{color:#7b8794}.message-count{min-width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#0245CB;color:#fff;font-size:.75rem}
.message-client-list{max-height:590px;overflow-y:auto}.message-client{position:relative;display:flex;gap:10px;padding:14px 16px;border-bottom:1px solid #f0f2f5;text-decoration:none;color:inherit}.message-client:hover,.message-client.active{background:#f1f6ff}.message-avatar{flex:0 0 40px;width:40px;height:40px;border-radius:50%;background:#B5CAE2;color:#012884;display:grid;place-items:center;font-weight:700}.message-avatar.large{width:44px;height:44px}.message-client-copy{min-width:0;display:flex;flex-direction:column}.message-client-copy strong{font-size:.9rem;color:#02133B}.message-client-copy small,.message-client-copy span{font-size:.72rem;color:#7b8794;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message-unread{margin-left:auto;align-self:center;background:#0245CB;color:#fff;border-radius:10px;padding:2px 7px;font-size:.7rem}
.message-conversation{display:flex;flex-direction:column;min-width:0}.conversation-head{justify-content:flex-start}.conversation-head h2{font-size:1rem;margin:0;color:#02133B}.conversation-head p{margin:2px 0 0;color:#7b8794;font-size:.8rem}.conversation-messages{flex:1;overflow-y:auto;padding:25px;background:#f7f9fc;min-height:470px}.admin-message-row{display:flex;margin:8px 0}.admin-message-row.incoming{justify-content:flex-start}.admin-message-row.outgoing{justify-content:flex-end}.admin-message-bubble{max-width:72%;padding:12px 15px;border-radius:16px;background:#fff;border:1px solid #e2e8f0}.admin-message-row.outgoing .admin-message-bubble{background:#0245CB;color:#fff;border-color:#0245CB;border-bottom-right-radius:4px}.admin-message-row.incoming .admin-message-bubble{border-bottom-left-radius:4px}.admin-message-bubble small{display:block;margin-top:6px;font-size:.68rem;opacity:.7}.admin-message-form{display:flex;gap:10px;padding:15px;border-top:1px solid #e4e9f0;background:#fff}.message-placeholder.small{min-height:250px}
@media(max-width:900px){.messages-layout{grid-template-columns:1fr}.message-inbox{border-right:0;border-bottom:1px solid #e4e9f0}.message-client-list{max-height:260px}.conversation-messages{min-height:400px}.chat-page-form,.admin-message-form{align-items:stretch}.chat-page-form .btn,.admin-message-form .btn{white-space:nowrap}}
@media(max-width:576px){.chat-page-form,.admin-message-form{flex-direction:column}.chat-bubble,.admin-message-bubble{max-width:90%}}

/* Admin notification UI */
.notification-wrap{position:relative}.notification-button{cursor:pointer}.notification-button:focus{outline:2px solid #0885F7;outline-offset:2px}.notification-dot{position:absolute;top:2px;right:0;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#dc3545;color:#fff;font-size:.65rem;font-weight:800;display:flex;align-items:center;justify-content:center;border:2px solid #fff}.notification-menu{position:absolute;right:0;top:48px;width:340px;background:#fff;border:1px solid #dce7f1;border-radius:14px;box-shadow:0 18px 50px rgba(2,19,59,.18);overflow:hidden;z-index:2000}.notification-menu[hidden]{display:none}.notification-menu-head{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-bottom:1px solid #e8edf3;color:#02133B}.notification-menu-head button{border:0;background:transparent;color:#6c757d}.notification-item{display:flex;gap:11px;align-items:center;padding:13px 16px;text-decoration:none;color:#02133B;border-bottom:1px solid #eef2f6}.notification-item:hover{background:#f6f9fd}.notification-item.has-new{background:#f3f8ff}.notification-item>span:last-child{display:flex;flex-direction:column;gap:2px}.notification-item small{color:#6b7785}.notification-icon{width:38px;height:38px;border-radius:11px;display:flex;align-items:center;justify-content:center}.notification-icon.request{background:#e8f1ff;color:#0245CB}.notification-icon.message{background:#eaf8ff;color:#0885F7}.notification-empty{text-align:center;padding:20px;color:#6b7785;font-size:.85rem}.notification-empty i{display:block;color:#198754;font-size:1.5rem;margin-bottom:5px}.nav-notification-badge{margin-left:auto;background:#dc3545;color:#fff;border-radius:999px;min-width:20px;height:20px;padding:0 6px;display:inline-flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:800}.admin-notification-toast{position:fixed;right:24px;top:76px;z-index:2100;background:#fff;border:1px solid #dce7f1;border-left:4px solid #0245CB;border-radius:12px;box-shadow:0 16px 40px rgba(2,19,59,.18);padding:13px 16px;display:flex;align-items:center;gap:10px;transform:translateX(130%);opacity:0;transition:.25s ease;font-weight:700;color:#02133B}.admin-notification-toast.show{transform:translateX(0);opacity:1}.admin-notification-toast i{color:#0245CB}@media(max-width:600px){.notification-menu{position:fixed;right:12px;left:12px;top:64px;width:auto}.admin-notification-toast{right:12px;left:12px;top:68px}}

/* Client navigation: stable desktop spacing and mobile collapse */
.site-header{position:sticky;top:0;z-index:1030}
.site-nav-collapse{min-width:0}
.site-nav-list{width:100%;}
.site-nav-list>li{display:flex;align-items:center;}
.site-nav-list .nav-link{white-space:nowrap;padding:.65rem .55rem;display:flex;align-items:center;}
.site-nav-list .currency-select{max-width:145px;}
.navbar-toggler{border:1px solid #d8e0ea;border-radius:10px;padding:.45rem .65rem;}
@media(max-width:991.98px){
 .site-nav-collapse{padding:10px 0 14px;border-top:1px solid #edf1f5;margin-top:8px;}
 .site-nav-list{gap:0!important;align-items:stretch!important;}
 .site-nav-list>li{display:block;width:100%;}
 .site-nav-list .nav-link{padding:.72rem .25rem;}
 .site-nav-list .currency-select{width:100%;max-width:none;margin:.35rem 0;}
 .site-nav-list .btn{width:100%;margin:.4rem 0 0!important;}
}
@media(min-width:992px){.site-nav-list{justify-content:flex-end}.site-nav-list>li:last-child{margin-left:.15rem}}

/* Real-time notification toasts */
.client-notification-toast,
.admin-notification-toast {
    position: fixed;
    right: 22px;
    bottom: 22px;
    z-index: 9999;
    display: flex;
    align-items: center;
    gap: 10px;
    max-width: min(380px, calc(100vw - 32px));
    padding: 14px 18px;
    border-radius: 14px;
    background: #fff;
    color: #172033;
    box-shadow: 0 14px 35px rgba(0,0,0,.18);
    border: 1px solid rgba(13,110,253,.18);
    transform: translateY(25px);
    opacity: 0;
    pointer-events: none;
    transition: opacity .2s ease, transform .2s ease;
}
.client-notification-toast.show,
.admin-notification-toast.show {
    opacity: 1;
    transform: translateY(0);
}
.client-notification-toast i,
.admin-notification-toast i {
    font-size: 1.2rem;
}


/* Request modal close button */
.request-modal .request-modal-close{
    width:38px;
    height:38px;
    padding:.7rem;
    border:1px solid #d9e2ec;
    border-radius:10px;
    background-color:#fff;
    opacity:1;
    box-shadow:0 2px 8px rgba(2,19,59,.08);
}
.request-modal .request-modal-close:hover{background-color:#f3f6fa;border-color:#c6d2df;}
.notification-toast-close{
    margin-left:4px;
    border:0;
    background:transparent;
    color:#64748b;
    width:28px;
    height:28px;
    border-radius:7px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    flex:0 0 auto;
}
.notification-toast-close:hover{background:#eef2f7;color:#172033;}

/* Service Request View & Edit: keep header/footer visible and make ONLY the details area scroll */
.request-modal .request-modal-dialog{
  height:calc(100vh - 2rem)!important;
  max-height:calc(100vh - 2rem)!important;
  margin:1rem auto!important;
  display:flex!important;
}
.request-modal .request-modal-dialog .modal-content{
  height:100%!important;
  max-height:100%!important;
  min-height:0!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
}
.request-modal .request-modal-dialog .modal-content>form{
  height:100%!important;
  min-height:0!important;
  display:flex!important;
  flex-direction:column!important;
}
.request-modal .request-modal-dialog .modal-header{
  flex:0 0 auto!important;
}
.request-modal .request-modal-dialog .modal-body{
  flex:1 1 auto!important;
  height:1px!important;
  min-height:0!important;
  max-height:none!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  overscroll-behavior:contain;
}
.request-modal .request-modal-dialog .modal-footer{
  flex:0 0 auto!important;
  position:relative!important;
  z-index:5!important;
  background:#fff!important;
}

/* Service Requests - organized admin layout */
.requests-page{display:flex;flex-direction:column;gap:18px}
.requests-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.request-stat{background:#fff;border:1px solid #e3e9f1;border-radius:14px;padding:16px 18px;display:flex;align-items:center;gap:13px;box-shadow:0 5px 18px #02133b07}
.request-stat-icon{width:42px;height:42px;border-radius:11px;background:#eaf2ff;color:#1457d9;display:grid;place-items:center;font-size:1.15rem;flex:0 0 auto}
.request-stat-icon.request-stat-new{background:#eafaf0;color:#168548}
.request-stat-icon.request-stat-progress{background:#fff5df;color:#c47a00}
.request-stat-icon.request-stat-payment{background:#fff0ed;color:#d94b35}
.request-stat span{display:block;color:#667085;font-size:.75rem;font-weight:600;margin-bottom:2px}
.request-stat strong{display:block;color:#071a45;font-size:1.35rem;line-height:1.1}
.requests-panel{padding:0;overflow:hidden}
.requests-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:20px 22px;border-bottom:1px solid #e7ecf2}
.requests-toolbar h5{font-weight:800;color:#071a45}
.requests-table-wrap{overflow-x:auto}
.requests-table{min-width:1120px}
.requests-table thead th{background:#f8fafc;border-bottom:1px solid #e3e9f1;padding:12px 14px;white-space:nowrap;font-size:.72rem;letter-spacing:.04em}
.requests-table tbody td{padding:15px 14px;border-color:#edf1f5;vertical-align:middle}
.requests-table tbody tr:hover{background:#fbfdff}
.request-number{font-weight:800;color:#1457d9;font-size:.88rem}
.request-client{font-weight:700;color:#17233f;font-size:.9rem}
.request-service{font-weight:600;color:#17233f;max-width:190px;line-height:1.35}
.request-price{font-weight:800;color:#071a45;font-size:.95rem}
.payment-main{display:flex;align-items:center;gap:7px;color:#071a45;margin-bottom:4px}
.payment-main strong{font-size:.82rem}
.payment-main span{font-weight:700}
.request-payment-status,.request-status{display:inline-flex;align-items:center;border-radius:999px;padding:4px 9px;font-size:.7rem;font-weight:700;white-space:nowrap}
.request-payment-status.unpaid{background:#fff4df;color:#a86b00}
.request-payment-status.paid{background:#e9f8ef;color:#167442}
.request-payment-status.partially-paid{background:#eaf2ff;color:#1457d9}
.request-payment-status.pending-verification{background:#fff0d6;color:#a86400}
.request-payment-status.refunded{background:#f1efff;color:#6854c7}
.payment-balance{display:flex;gap:5px;flex-wrap:wrap;color:#667085;font-size:.68rem;margin-top:5px}
.payment-balance span{color:#b0b7c3}
.request-status{background:#eef2f7;color:#475467}
.request-status.new{background:#eaf2ff;color:#1457d9}
.request-status.contacted,.request-status.quoted{background:#fff5df;color:#9a6700}
.request-status.in-progress{background:#eaf2ff;color:#1457d9}
.request-status.completed{background:#e9f8ef;color:#167442}
.request-status.cancelled{background:#ffeded;color:#b42318}
.request-date{font-weight:600;color:#344054;font-size:.82rem;white-space:nowrap}
.request-actions{display:flex;justify-content:flex-end;align-items:center;gap:6px;flex-wrap:wrap}
.request-modal .modal-content{border:0;border-radius:18px;overflow:hidden;box-shadow:0 24px 80px #02133b25}
.request-modal .modal-dialog{height:calc(100vh - 2rem);max-height:calc(100vh - 2rem);margin:1rem auto}
.request-modal .modal-content{height:100%;max-height:100%;display:flex;flex-direction:column;min-height:0}
.request-modal .modal-content>form{height:100%;display:flex;flex-direction:column;min-height:0}
.request-modal .modal-header{padding:18px 22px;background:#f8fafc;border-bottom:1px solid #e5eaf0;flex:0 0 auto}
.request-modal .modal-title{font-weight:800;color:#071a45}
.request-modal .modal-body{padding:22px;overflow-y:auto;overflow-x:hidden;flex:1 1 auto;min-height:0;max-height:none}
.request-modal .modal-footer{flex:0 0 auto;background:#fff;border-top:1px solid #e5eaf0;position:relative;z-index:2}
.request-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px}
.request-detail-card{background:#f8fafc;border:1px solid #e7ecf2;border-radius:12px;padding:13px 14px;min-width:0}
.request-detail-card span{display:block;color:#667085;font-size:.7rem;font-weight:600;margin-bottom:4px}
.request-detail-card strong{display:block;color:#071a45;font-size:.93rem;overflow-wrap:anywhere}
.request-detail-card small{display:block;color:#667085;margin-top:3px;overflow-wrap:anywhere}
.request-detail-card.highlight{background:#eef6ff;border-color:#cfe1ff}
.request-detail-section{border-top:1px solid #e7ecf2;padding-top:18px;margin-top:18px}
.request-detail-section h6{font-weight:800;color:#071a45;margin-bottom:12px}
.request-description{background:#f8fafc;border:1px solid #e7ecf2;border-radius:10px;padding:12px 14px;color:#344054;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}
.request-info-box{background:#fff9e8;border:1px solid #f3df9a;border-radius:10px;padding:10px 12px;color:#5b4a16;margin-bottom:10px;font-size:.86rem}
.request-modal .table{border:1px solid #e7ecf2;border-radius:10px;overflow:hidden}
.request-modal .table th{background:#f8fafc;font-size:.7rem}
@media(max-width:1100px){
 .requests-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
 .request-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
 .requests-summary{grid-template-columns:1fr}
 .requests-toolbar{align-items:flex-start;flex-direction:column}
 .request-detail-grid{grid-template-columns:1fr}
 .request-modal .modal-body{padding:15px}
}

/* Client dashboard payment summary */
.payment-cell{min-width:245px;vertical-align:middle}
.payment-summary{border:1px solid rgba(13,110,253,.12);background:#f8fbff;border-radius:12px;padding:11px 12px;box-shadow:0 2px 8px rgba(15,23,42,.04)}
.payment-summary-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}
.payment-label{font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#64748b}
.payment-status{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;font-size:.7rem;font-weight:700;line-height:1;border:1px solid transparent;white-space:nowrap}
.payment-status-paid{background:#eaf8ef;color:#18794e;border-color:#bfe8ce}
.payment-status-partially-paid{background:#fff6df;color:#9a6700;border-color:#f3d98c}
.payment-status-pending-verification{background:#eef4ff;color:#2457a6;border-color:#c9daf8}
.payment-status-unpaid{background:#fff0f0;color:#b42318;border-color:#f3c5c2}
.payment-total,.payment-line{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:3px 0;font-size:.82rem}
.payment-total{padding-bottom:7px;margin-bottom:4px;border-bottom:1px dashed #dbe5f0}
.payment-total span,.payment-line span{color:#64748b}
.payment-total strong{color:#1e293b;font-size:.86rem}
.payment-paid{color:#16834b!important}
.payment-remaining{color:#c2410c!important}
.payment-pending{margin-top:7px;padding-top:7px;border-top:1px solid #e2e8f0;color:#2457a6;font-size:.72rem;line-height:1.35}
@media(max-width:991.98px){.payment-cell{min-width:220px}}

/* Client dashboard payment presentation — polished status, currency symbols and actions */
.client-dashboard .payment-summary,
.payment-summary{min-width:250px}
.payment-summary-head{align-items:center}
.payment-label{font-size:.82rem;font-weight:700;letter-spacing:0;text-transform:none;color:#475467}
.payment-status{gap:7px;padding:0;background:transparent;border:0;border-radius:0;font-size:.84rem;font-weight:700}
.payment-status-dot{width:12px;height:12px;border-radius:50%;display:inline-block;flex:0 0 12px;background:#22c55e;box-shadow:0 0 0 2px rgba(34,197,94,.14)}
.payment-status-pending{color:#ef2b2b}
.payment-status-pending .payment-status-dot,
.payment-status-unpaid .payment-status-dot{background:#ef2b2b;box-shadow:0 0 0 2px rgba(239,43,43,.14)}
.payment-status-partially-paid{color:#c47a00}
.payment-status-partially-paid .payment-status-dot{background:#f59e0b;box-shadow:0 0 0 2px rgba(245,158,11,.14)}
.payment-status-paid{color:#16834b}
.payment-status-paid .payment-status-dot{background:#22a83a;box-shadow:0 0 0 2px rgba(34,168,58,.14)}
.payment-status-pending-verification{color:#6842d8}
.payment-status-pending-verification .payment-status-dot{background:#7c4dff;box-shadow:0 0 0 2px rgba(124,77,255,.14)}

.payment-total,.payment-line{font-size:.9rem;padding:4px 0}
.payment-total span,.payment-line span{display:inline-flex;align-items:center;gap:8px;color:#475467}
.payment-row-icon{font-size:1rem;line-height:1}
.payment-total .payment-row-icon{color:#16834b}
.payment-line .payment-row-icon{color:#1769e0}
.payment-line:last-of-type .payment-row-icon{color:#f08a00}
.payment-total-value{color:#16834b!important;font-size:.94rem}
.payment-paid{color:#1769e0!important;font-size:.94rem}
.payment-remaining{color:#f08a00!important;font-size:.94rem}
.payment-pending{display:flex;align-items:center;gap:9px;margin-top:8px;padding-top:9px;border-top:1px solid #e2e8f0;color:#6842d8;font-size:.78rem;line-height:1.35}
.payment-verification-spinner{display:inline-block;flex:0 0 auto;font-size:1.25rem;color:#6842d8;animation:paymentVerificationSpin 1.15s linear infinite}
@keyframes paymentVerificationSpin{to{transform:rotate(360deg)}}
@media(max-width:991.98px){
 .payment-cell{min-width:235px}
}
@media(max-width:576px){
 .payment-summary{min-width:0}
}

/* Client dashboard — give Service Requests more room and expand Status/Action columns */
@media (min-width: 992px){
  .client-dashboard-main-row > .col-lg-8{flex:0 0 auto;width:66.666667%;}
  .client-dashboard-main-row > .col-lg-4{flex:0 0 auto;width:33.333333%;}
  .service-requests-card{padding-left:24px;padding-right:24px;}
  .requests-table-responsive{overflow-x:visible;}
  .client-requests-table{width:100%;table-layout:fixed;margin-bottom:0;}
  .client-requests-table th:nth-child(1),.client-requests-table td:nth-child(1){width:11%;}
  .client-requests-table th:nth-child(2),.client-requests-table td:nth-child(2){width:17%;}
  .client-requests-table th:nth-child(3),.client-requests-table td:nth-child(3){width:34%;}
  .client-requests-table th:nth-child(4),.client-requests-table td:nth-child(4){width:13%;}
  .client-requests-table th:nth-child(5),.client-requests-table td:nth-child(5){width:25%;}
  .client-requests-table th,.client-requests-table td{padding-left:8px;padding-right:8px;}
  .client-requests-table td:nth-child(4){text-align:center;}
  .client-requests-table td:nth-child(5) .d-flex{width:100%;flex-direction:column;align-items:stretch;gap:8px!important;}
  .client-requests-table .payment-cell{min-width:0;}
  .client-requests-table .payment-summary{min-width:0;width:100%;}
}
@media (min-width: 1200px){
  .client-requests-table th:nth-child(1),.client-requests-table td:nth-child(1){width:12%;}
  .client-requests-table th:nth-child(2),.client-requests-table td:nth-child(2){width:18%;}
  .client-requests-table th:nth-child(3),.client-requests-table td:nth-child(3){width:32%;}
  .client-requests-table th:nth-child(4),.client-requests-table td:nth-child(4){width:13%;}
  .client-requests-table th:nth-child(5),.client-requests-table td:nth-child(5){width:25%;}
}
@media (max-width: 991.98px){
  .client-requests-table{min-width:900px;}
  .requests-table-responsive{overflow-x:auto;}
}

/* Final client dashboard status/action colors — intentionally scoped to avoid Bootstrap overrides */
.client-dashboard .request-status{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;padding:7px 11px;border:1px solid;border-radius:8px;font-size:.78rem;font-weight:700;line-height:1.2;background:#fff;}
.client-dashboard .request-status-new{color:#1769e0;border-color:#d5deea;background:#f8fafc;}
.client-dashboard .request-status-contacted,.client-dashboard .request-status-quoted{color:#1769e0;border-color:#c9dcff;background:#f4f8ff;}
.client-dashboard .request-status-in-progress{color:#b96c00;border-color:#f1d18b;background:#fffaf0;}
.client-dashboard .request-status-completed{color:#16823d;border-color:#b8dfc5;background:#f1fbf4;}
.client-dashboard .request-status-cancelled{color:#b42318;border-color:#f1b8b5;background:#fff5f5;}
.client-dashboard .payment-status-pending{color:#ef2b2b!important;}
.client-dashboard .payment-total-value{color:#16834b!important;}
.client-dashboard .payment-paid{color:#1769e0!important;}
.client-dashboard .payment-remaining{color:#f08a00!important;}
.client-dashboard .payment-pending,.client-dashboard .payment-verification-spinner{color:#6842d8!important;}

/* Admin Service Requests — payment status language and roomy action columns */
.requests-table{min-width:1380px;table-layout:fixed}
.requests-table th:nth-child(1){width:10%}.requests-table th:nth-child(2){width:13%}.requests-table th:nth-child(3){width:13%}.requests-table th:nth-child(4){width:8%}.requests-table th:nth-child(5){width:24%}.requests-table th:nth-child(6){width:9%}.requests-table th:nth-child(7){width:9%}.requests-table th:nth-child(8){width:14%}
.requests-table td:nth-child(5){vertical-align:top}
.requests-table td:nth-child(8){min-width:190px}
.admin-payment-cell{min-width:300px}
.admin-payment-summary{padding:2px 0}
.admin-payment-status{display:flex;align-items:center;gap:5px;line-height:1.25;margin-bottom:8px;font-size:.78rem;font-weight:600;color:#25324a;white-space:nowrap}
.admin-payment-status strong{font-weight:800}
.admin-payment-dot{width:10px;height:10px;border-radius:50%;display:inline-block;flex:0 0 10px;background:#94a3b8}
.admin-payment-status-pending-verification,.admin-payment-status-unpaid{color:#dc2626}
.admin-payment-status-pending-verification .admin-payment-dot,.admin-payment-status-unpaid .admin-payment-dot{background:#ef2b2b;box-shadow:0 0 0 3px rgba(239,43,43,.12)}
.admin-payment-status-paid{color:#15803d}.admin-payment-status-paid .admin-payment-dot{background:#22a447;box-shadow:0 0 0 3px rgba(34,164,71,.12)}
.admin-payment-status-partially-paid{color:#b45309}.admin-payment-status-partially-paid .admin-payment-dot{background:#f59e0b;box-shadow:0 0 0 3px rgba(245,158,11,.12)}
.admin-payment-line{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 0;border-bottom:1px dashed #dbe5f0;font-size:.78rem}
.admin-payment-line span{color:#475467;display:flex;align-items:center;gap:7px}.admin-payment-line i{width:16px;text-align:center}
.admin-payment-total strong{color:#15803d}.admin-payment-total i{color:#15803d}
.admin-payment-paid strong{color:#1769e0}.admin-payment-paid i{color:#1769e0}
.admin-payment-remaining strong{color:#d97706}.admin-payment-remaining i{color:#f59e0b}
.admin-payment-verification{display:flex;align-items:center;gap:7px;margin-top:8px;padding-top:7px;color:#6d3df5;font-size:.74rem;font-weight:700}
.admin-payment-verification strong{margin-left:auto;color:#6d3df5;font-weight:800}.admin-verification-icon{font-size:1.05rem;display:inline-block;animation:adminPaymentSpin 1.1s linear infinite}
.admin-payment-completed{display:flex;align-items:center;gap:7px;margin-top:8px;padding-top:7px;color:#16834b;font-size:.74rem;font-weight:700}.admin-payment-completed i{font-size:1rem}
@keyframes adminPaymentSpin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
.request-actions .btn{min-height:40px;border-radius:8px;font-weight:700;white-space:nowrap}.request-actions .btn-success{background:#16a34a;border-color:#16a34a}.request-actions .btn-outline-primary{border-width:1.5px}
@media(max-width:900px){.requests-table{min-width:1380px}}

/* Admin requests final color overrides */
.admin-payment-status-pending{color:#ef2b2b!important}
.admin-payment-status-pending .admin-payment-dot{background:#ef2b2b!important}
.admin-payment-total strong,.admin-payment-total i{color:#16834b!important}
.admin-payment-paid strong,.admin-payment-paid i{color:#1769e0!important}
.admin-payment-remaining strong,.admin-payment-remaining i{color:#f08a00!important}
.admin-payment-verification,.admin-payment-verification *{color:#6d3df5!important}

/* Small Action buttons */
.client-requests-table td:nth-child(5) .client-pay-balance-btn,
.client-requests-table td:nth-child(5) .client-cancel-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 110px !important;
    max-width: 125px !important;
    height: 34px !important;
    min-height: 34px !important;
    max-height: 34px !important;
    padding: 6px 10px !important;
    margin: 0 !important;
    border-radius: 6px !important;
    font-size: 12px !important;
    line-height: 1 !important;
    font-weight: 600 !important;
    gap: 5px !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
}

.client-requests-table td:nth-child(5) > .d-flex {
    align-items: center !important;
    gap: 5px !important;
}

.client-requests-table td:nth-child(5) form {
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Small colored Action buttons */
.client-requests-table td:nth-child(5) .client-pay-balance-btn {
    background: #2563eb !important;
    color: #ffffff !important;
    border: 1px solid #2563eb !important;
}

.client-requests-table td:nth-child(5) .client-pay-balance-btn:hover {
    background: #1d4ed8 !important;
    border-color: #1d4ed8 !important;
}

.client-requests-table td:nth-child(5) .client-cancel-btn {
    background: #dc2626 !important;
    color: #ffffff !important;
    border: 1px solid #dc2626 !important;
}

.client-requests-table td:nth-child(5) .client-cancel-btn:hover {
    background: #b91c1c !important;
    border-color: #b91c1c !important;
}

/* =========================================================
   SONTECH ACTION BUTTONS - FINAL COLOR FIX
   ========================================================= */
.sontech-pay-balance-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    width: 120px !important;
    min-width: 120px !important;
    max-width: 120px !important;
    height: 34px !important;
    min-height: 34px !important;
    max-height: 34px !important;
    padding: 6px 10px !important;
    margin: 0 !important;
    background-color: #2563eb !important;
    background-image: none !important;
    color: #ffffff !important;
    border: 1px solid #2563eb !important;
    border-radius: 6px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    opacity: 1 !important;
    box-shadow: none !important;
}

.sontech-pay-balance-btn:hover,
.sontech-pay-balance-btn:focus,
.sontech-pay-balance-btn:active {
    background-color: #1d4ed8 !important;
    background-image: none !important;
    color: #ffffff !important;
    border-color: #1d4ed8 !important;
}

.sontech-cancel-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    width: 120px !important;
    min-width: 120px !important;
    max-width: 120px !important;
    height: 34px !important;
    min-height: 34px !important;
    max-height: 34px !important;
    padding: 6px 10px !important;
    margin: 0 !important;
    background-color: #dc2626 !important;
    background-image: none !important;
    color: #ffffff !important;
    border: 1px solid #dc2626 !important;
    border-radius: 6px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    opacity: 1 !important;
    box-shadow: none !important;
}

.sontech-cancel-btn:hover,
.sontech-cancel-btn:focus,
.sontech-cancel-btn:active {
    background-color: #b91c1c !important;
    background-image: none !important;
    color: #ffffff !important;
    border-color: #b91c1c !important;
}

.client-requests-table td:nth-child(5) form {
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* FINAL ACTION BUTTON COLORS */
.sontech-pay-balance-btn {
    background: #2563eb !important;
    background-color: #2563eb !important;
    color: #fff !important;
    border: 1px solid #2563eb !important;
}
.sontech-pay-balance-btn:hover {
    background: #1d4ed8 !important;
    background-color: #1d4ed8 !important;
    color: #fff !important;
}

.sontech-cancel-btn {
    background: #dc2626 !important;
    background-color: #dc2626 !important;
    color: #fff !important;
    border: 1px solid #dc2626 !important;
}
.sontech-cancel-btn:hover {
    background: #b91c1c !important;
    background-color: #b91c1c !important;
    color: #fff !important;
}

/* Service Requests admin: professional search and filter toolbar */
.requests-toolbar-enhanced{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:18px!important;
  padding:22px 24px 20px!important;
  background:linear-gradient(180deg,#ffffff 0%,#fbfcfe 100%);
  border-bottom:1px solid #e8edf3!important;
}
.requests-toolbar-heading{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
  min-width:0;
}
.requests-toolbar-heading h5{
  margin:0 0 5px!important;
  color:#071a45;
  font-size:1.12rem;
  font-weight:800;
  letter-spacing:-.01em;
}
.requests-toolbar-heading p{
  margin:0!important;
  color:#667085!important;
  line-height:1.45;
}
.requests-filters{
  display:grid;
  grid-template-columns:minmax(300px,1.8fr) minmax(175px,.75fr) minmax(175px,.75fr) auto;
  align-items:end;
  gap:12px;
  width:100%;
  min-width:0;
  padding:13px;
  background:#f7f9fc;
  border:1px solid #e5eaf1;
  border-radius:14px;
  box-shadow:0 2px 8px rgba(15,23,42,.035);
}
.requests-control{min-width:0}
.requests-control label{
  display:block;
  margin:0 0 6px 2px;
  color:#475467;
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.03em;
  text-transform:uppercase;
}
.requests-input-wrap{position:relative}
.requests-input-wrap>i{
  position:absolute;
  left:13px;
  top:50%;
  transform:translateY(-50%);
  color:#667085;
  z-index:2;
  pointer-events:none;
}
.requests-search .form-control,
.requests-filters>.requests-control .form-select{
  width:100%;
  height:42px;
  min-height:42px;
  border:1px solid #d7dee8!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#17233f;
  font-size:.84rem;
  box-shadow:none!important;
  transition:border-color .15s ease,box-shadow .15s ease;
}
.requests-search .form-control{padding-left:38px}
.requests-search .form-control::placeholder{color:#98a2b3}
.requests-search .form-control:focus,
.requests-filters>.requests-control .form-select:focus{
  border-color:#7aa7f8!important;
  box-shadow:0 0 0 3px rgba(37,99,235,.10)!important;
}
.requests-filter-actions{
  display:flex;
  align-items:flex-end;
  gap:8px;
  height:100%;
  white-space:nowrap;
}
.requests-filter-clear,
.requests-export-btn{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  gap:7px;
  height:42px;
  min-height:42px;
  padding:0 14px!important;
  border-radius:10px!important;
  font-size:.78rem!important;
  font-weight:700!important;
  white-space:nowrap;
  text-decoration:none!important;
}
.requests-filter-clear{
  color:#475467!important;
  background:#fff!important;
  border:1px solid #d7dee8!important;
}
.requests-filter-clear:hover{
  color:#17233f!important;
  background:#f8fafc!important;
  border-color:#c5ceda!important;
}
.requests-export-btn{
  color:#fff!important;
  background:#1769e0!important;
  border:1px solid #1769e0!important;
  box-shadow:0 2px 5px rgba(23,105,224,.16);
}
.requests-export-btn:hover{
  color:#fff!important;
  background:#1258bd!important;
  border-color:#1258bd!important;
}
.requests-filter-result{
  display:flex;
  align-items:center;
  min-height:40px;
  padding:0 24px!important;
  color:#667085;
  font-size:.76rem;
  font-weight:600;
  background:#fff;
  border-bottom:1px solid #eef1f5;
}
.request-row.d-none{display:none!important}
@media(max-width:1200px){
  .requests-filters{grid-template-columns:minmax(240px,1.4fr) minmax(160px,1fr) minmax(160px,1fr);}
  .requests-filter-actions{grid-column:1/-1;justify-content:flex-end}
}
@media(max-width:760px){
  .requests-toolbar-enhanced{padding:18px 16px 16px!important}
  .requests-toolbar-heading{align-items:flex-start;flex-direction:column;gap:3px}
  .requests-filters{grid-template-columns:1fr;padding:11px}
  .requests-filter-actions{grid-column:auto;display:grid;grid-template-columns:1fr 1fr}
  .requests-filter-clear,.requests-export-btn{width:100%}
  .requests-filter-result{padding:0 16px!important}
}
@media(max-width:480px){
  .requests-filter-actions{grid-template-columns:1fr}
}

/* Service Requests — compact professional horizontal toolbar */
.requests-panel .requests-toolbar-enhanced{
  display:grid!important;
  grid-template-columns:minmax(260px,1fr) minmax(720px,auto)!important;
  align-items:center!important;
  gap:24px!important;
  padding:22px 24px!important;
  background:#fff!important;
  border-bottom:1px solid #e8edf3!important;
}
.requests-panel .requests-toolbar-heading{
  display:block!important;
  min-width:0!important;
}
.requests-panel .requests-toolbar-heading h5{
  margin:0 0 6px!important;
  font-size:1.15rem!important;
}
.requests-panel .requests-toolbar-heading p{
  max-width:520px!important;
}
.requests-panel .requests-filters{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:flex-end!important;
  gap:10px!important;
  width:auto!important;
  min-width:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.requests-panel .requests-control{
  flex:0 1 190px!important;
  min-width:150px!important;
}
.requests-panel .requests-search{
  flex:1 1 270px!important;
  min-width:230px!important;
}
.requests-panel .requests-control label{
  margin:0 0 5px 1px!important;
  font-size:.68rem!important;
  color:#667085!important;
  text-transform:none!important;
  letter-spacing:0!important;
}
.requests-panel .requests-search .form-control,
.requests-panel .requests-filters>.requests-control .form-select{
  height:44px!important;
  min-height:44px!important;
  border-radius:10px!important;
  background:#fff!important;
}
.requests-panel .requests-filter-actions{
  flex:0 0 auto!important;
  display:flex!important;
  align-items:flex-end!important;
  gap:8px!important;
  height:auto!important;
}
.requests-panel .requests-filter-clear,
.requests-panel .requests-export-btn{
  height:44px!important;
  min-height:44px!important;
  padding:0 13px!important;
}

@media(max-width:1250px){
  .requests-panel .requests-toolbar-enhanced{
    grid-template-columns:1fr!important;
    gap:16px!important;
  }
  .requests-panel .requests-filters{
    width:100%!important;
    justify-content:stretch!important;
  }
  .requests-panel .requests-control,
  .requests-panel .requests-search{flex:1 1 0!important;min-width:0!important}
}
@media(max-width:760px){
  .requests-panel .requests-toolbar-enhanced{padding:18px 16px!important}
  .requests-panel .requests-filters{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  .requests-panel .requests-control,
  .requests-panel .requests-search{min-width:0!important;width:100%!important}
  .requests-panel .requests-filter-actions{display:grid!important;grid-template-columns:1fr 1fr!important}
  .requests-panel .requests-filter-clear,
  .requests-panel .requests-export-btn{width:100%!important}
}


/* Service Requests: definitive horizontal professional toolbar */
.requests-pro-toolbar{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:24px!important;
  padding:20px 22px!important;
  background:linear-gradient(135deg,#ffffff 0%,#f8fbff 100%)!important;
  border-bottom:1px solid #e4eaf3!important;
}
.requests-pro-heading{
  flex:1 1 auto!important;
  min-width:280px!important;
  display:flex!important;
  align-items:center!important;
  gap:13px!important;
}
.requests-title-icon{
  width:46px;height:46px;flex:0 0 46px;border-radius:13px;
  display:flex;align-items:center;justify-content:center;
  color:#1769e0;background:linear-gradient(135deg,#eaf2ff,#dbeafe);
  border:1px solid #cfe0ff;box-shadow:0 5px 14px rgba(23,105,224,.10);
  font-size:20px;
}
.requests-eyebrow{
  color:#1769e0;font-size:10px;font-weight:800;letter-spacing:.12em;
  margin-bottom:2px;
}
.requests-pro-heading h5{font-size:1.18rem!important;color:#071a45!important;font-weight:800!important;margin:0 0 3px!important}
.requests-pro-heading p{font-size:.78rem!important;color:#667085!important}
.requests-pro-filters{
  flex:0 1 auto!important;
  display:flex!important;
  align-items:flex-end!important;
  gap:9px!important;
  width:auto!important;
  min-width:0!important;
  padding:10px!important;
  background:#f3f7fc!important;
  border:1px solid #dce6f3!important;
  border-radius:14px!important;
  box-shadow:0 4px 14px rgba(15,23,42,.06)!important;
}
.requests-pro-filters .requests-control{flex:0 0 178px!important;min-width:0!important}
.requests-pro-filters .requests-pro-search{flex-basis:290px!important}
.requests-pro-filters label{
  display:flex!important;align-items:center!important;gap:5px!important;
  margin:0 0 5px 2px!important;color:#344054!important;font-size:11px!important;
  line-height:1!important;font-weight:800!important;text-transform:none!important;letter-spacing:0!important;
}
.requests-pro-filters label i{color:#1769e0;font-size:12px}
.requests-pro-filters .requests-input-wrap .form-control,
.requests-pro-filters .form-select{
  height:42px!important;min-height:42px!important;width:100%!important;
  border:1px solid #d2dcea!important;border-radius:9px!important;
  background:#fff!important;color:#17233f!important;font-size:13px!important;
  box-shadow:0 1px 2px rgba(16,24,40,.03)!important;
}
.requests-pro-filters .requests-input-wrap .form-control{padding-left:36px!important}
.requests-pro-filters .requests-input-wrap>i{left:13px!important;color:#1769e0!important}
.requests-pro-filters .form-select:focus,
.requests-pro-filters .form-control:focus{border-color:#1769e0!important;box-shadow:0 0 0 3px rgba(23,105,224,.12)!important}
.requests-pro-actions{flex:0 0 auto!important;display:flex!important;gap:7px!important;height:auto!important;align-items:flex-end!important}
.requests-pro-actions .requests-filter-clear,
.requests-pro-actions .requests-export-btn{
  height:42px!important;min-height:42px!important;border-radius:9px!important;
  padding:0 13px!important;font-size:12px!important;font-weight:800!important;
}
.requests-pro-actions .requests-filter-clear{color:#344054!important;background:#fff!important;border:1px solid #d2dcea!important}
.requests-pro-actions .requests-filter-clear:hover{background:#f8fafc!important;color:#071a45!important}
.requests-pro-actions .requests-export-btn{
  color:#fff!important;background:linear-gradient(135deg,#1769e0,#0d55bf)!important;
  border:1px solid #1769e0!important;box-shadow:0 5px 12px rgba(23,105,224,.20)!important;
}
.requests-pro-actions .requests-export-btn:hover{background:linear-gradient(135deg,#1258bd,#0a469e)!important;color:#fff!important}
@media(max-width:1250px){
  .requests-pro-toolbar{align-items:stretch!important;flex-direction:column!important;gap:14px!important}
  .requests-pro-filters{width:100%!important}
  .requests-pro-filters .requests-control{flex:1 1 0!important}
  .requests-pro-filters .requests-pro-search{flex:1.5 1 0!important}
}
@media(max-width:760px){
  .requests-pro-toolbar{padding:16px!important}
  .requests-pro-heading{min-width:0!important}
  .requests-pro-filters{display:grid!important;grid-template-columns:1fr 1fr!important;padding:10px!important}
  .requests-pro-filters .requests-control,.requests-pro-filters .requests-pro-search{grid-column:auto!important;width:100%!important}
  .requests-pro-filters .requests-pro-search{grid-column:1/-1!important}
  .requests-pro-actions{grid-column:1/-1!important;display:grid!important;grid-template-columns:1fr 1fr!important}
  .requests-pro-actions .requests-filter-clear,.requests-pro-actions .requests-export-btn{width:100%!important}
}
@media(max-width:480px){
  .requests-pro-filters{grid-template-columns:1fr!important}
  .requests-pro-filters .requests-pro-search,.requests-pro-actions{grid-column:auto!important}
  .requests-pro-actions{grid-template-columns:1fr!important}
}


/* SONTECH premium admin messages - matches client chat visual language */
.sontech-admin-messages-page{position:relative;padding:4px 0 24px;overflow:hidden}
.sontech-admin-messages-page:before,.sontech-admin-messages-page:after{content:"";position:absolute;pointer-events:none;border-radius:50%;filter:blur(2px)}
.sontech-admin-messages-page:before{width:430px;height:430px;right:-190px;top:-160px;background:rgba(25,128,255,.10);box-shadow:0 0 130px rgba(0,108,255,.18)}
.sontech-admin-messages-page:after{width:360px;height:360px;left:-210px;bottom:-170px;background:rgba(0,211,255,.07);box-shadow:0 0 110px rgba(0,170,255,.12)}
.sontech-admin-message-hero{position:relative;z-index:1;min-height:118px;display:flex;align-items:center;gap:20px;padding:18px 28px;margin-bottom:18px;border:1px solid rgba(0,185,255,.55);border-radius:24px;overflow:hidden;color:#fff;background:linear-gradient(110deg,#041944 0%,#073c96 48%,#0754d2 78%,#062e78 100%);box-shadow:0 18px 45px rgba(0,65,180,.20),inset 0 1px 0 rgba(255,255,255,.25)}
.sontech-admin-message-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(125deg,transparent 0 76%,rgba(0,222,255,.20) 76.2% 77.2%,transparent 77.4% 79%,rgba(255,255,255,.10) 79.2% 80.3%,transparent 80.5%);pointer-events:none}
.sontech-admin-message-hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,#00dcff,#2788ff,#00e6ff);box-shadow:0 0 14px #00cfff}
.sontech-admin-message-brand{position:relative;z-index:1;width:230px;flex:0 0 230px;display:flex;align-items:center}.sontech-admin-message-brand img{width:210px;max-height:76px;object-fit:contain;filter:drop-shadow(0 0 9px rgba(0,210,255,.42))}
.sontech-admin-message-hero-icon{position:relative;z-index:1;width:68px;height:68px;flex:0 0 68px;display:grid;place-items:center;border:2px solid #2ed9ff;border-radius:50%;font-size:1.8rem;background:rgba(0,52,145,.48);box-shadow:0 0 22px rgba(0,208,255,.48),inset 0 0 16px rgba(0,196,255,.18)}
.sontech-admin-message-copy{position:relative;z-index:1}.sontech-admin-message-copy h2{margin:0;font-size:1.5rem;font-weight:800}.sontech-admin-message-copy p{margin:5px 0 0;color:#e5f3ff}.sontech-admin-online{position:relative;z-index:1;margin-left:auto;display:flex;align-items:center;gap:9px;padding:10px 18px;border:1px solid #32d8ff;border-radius:999px;background:rgba(0,36,105,.48);box-shadow:0 0 18px rgba(0,205,255,.28);font-weight:700;white-space:nowrap}.sontech-admin-online span{width:12px;height:12px;border-radius:50%;background:#14df56;box-shadow:0 0 11px rgba(20,223,86,.9)}
.sontech-admin-messages-layout{position:relative;z-index:1;grid-template-columns:340px minmax(0,1fr);min-height:650px;border:1px solid rgba(255,255,255,.95);border-radius:26px;background:rgba(255,255,255,.62);box-shadow:0 25px 65px rgba(0,58,145,.14),0 0 0 1px rgba(40,155,255,.10) inset;backdrop-filter:blur(12px);overflow:hidden}
.sontech-admin-messages-layout .message-inbox{background:rgba(248,252,255,.78);border-right:1px solid #d9e8f7}.sontech-admin-messages-layout .message-inbox-head{padding:20px;border-bottom:1px solid #dce9f7;background:linear-gradient(105deg,rgba(218,237,255,.94),rgba(181,211,249,.78))}.sontech-admin-messages-layout .message-inbox-head h2{font-size:1.05rem}.sontech-admin-messages-layout .message-count{background:linear-gradient(145deg,#0878f4,#073cc0);box-shadow:0 5px 15px rgba(0,70,200,.22)}
.sontech-admin-messages-layout .message-client{border-bottom:1px solid #e8f0f8;transition:.18s ease}.sontech-admin-messages-layout .message-client:hover{background:#edf6ff}.sontech-admin-messages-layout .message-client.active{background:linear-gradient(90deg,#e2f1ff,#f6fbff);box-shadow:inset 4px 0 #0878f4}.sontech-admin-messages-layout .message-avatar{background:linear-gradient(145deg,#d9ecff,#a9cff6);color:#0750b8;box-shadow:0 5px 14px rgba(0,80,180,.10)}
.sontech-admin-messages-layout .message-unread{background:#e72f3f;box-shadow:0 4px 10px rgba(220,40,55,.18)}
.sontech-admin-messages-layout .message-conversation{background:rgba(245,250,255,.58)}.sontech-admin-messages-layout .conversation-head{min-height:90px;padding:17px 24px;background:linear-gradient(105deg,rgba(219,237,255,.98),rgba(168,204,249,.90));border-bottom:1px solid rgba(255,255,255,.95);position:relative}.sontech-admin-messages-layout .conversation-head:after{content:"";position:absolute;right:0;top:0;width:230px;height:100%;background:linear-gradient(135deg,transparent 43%,rgba(255,255,255,.26) 44% 48%,transparent 49% 56%,rgba(255,255,255,.20) 57% 61%,transparent 62%);pointer-events:none}.sontech-admin-messages-layout .conversation-head h2{font-size:1.12rem;font-weight:800;color:#08245f}.sontech-admin-messages-layout .conversation-head p{color:#41669e}
.sontech-admin-messages-layout .conversation-messages{background:linear-gradient(180deg,rgba(247,251,255,.75),rgba(231,243,255,.56));padding:28px 32px}.sontech-admin-messages-layout .admin-message-row{margin:12px 0}.sontech-admin-messages-layout .admin-message-bubble{max-width:min(72%,720px);padding:14px 17px;border-radius:19px;background:rgba(255,255,255,.92);border:1px solid #d8e7f7;box-shadow:0 8px 20px rgba(20,75,140,.07);color:#102b5e}.sontech-admin-messages-layout .admin-message-row.outgoing .admin-message-bubble{background:linear-gradient(135deg,#0874f0,#0739ba);border:1px solid rgba(255,255,255,.28);color:#fff;box-shadow:0 10px 25px rgba(0,75,210,.22);border-bottom-right-radius:5px}.sontech-admin-messages-layout .admin-message-row.incoming .admin-message-bubble{border-bottom-left-radius:5px}.sontech-admin-messages-layout .admin-message-bubble small{margin-top:8px}.sontech-admin-messages-layout .admin-message-row.outgoing .admin-message-bubble small{color:#dceaff}
.sontech-admin-messages-layout .admin-message-form{padding:16px 18px 18px;align-items:center;background:rgba(255,255,255,.88);border-top:1px solid #d9e8f6}.sontech-admin-messages-layout .admin-message-form:before{content:"";width:52px;height:52px;flex:0 0 52px;border:1px solid #d8e8fa;border-radius:50%;background:#f8fbff url('../img/sontech-logo.png') center/36px auto no-repeat;box-shadow:0 6px 18px rgba(0,73,170,.08)}.sontech-admin-messages-layout .admin-message-form textarea{min-height:58px;max-height:140px;padding:16px 18px;border:1px solid #cbdced;border-radius:16px;background:linear-gradient(180deg,#fff,#f4f9ff);box-shadow:inset 0 1px 2px rgba(21,66,130,.03)}.sontech-admin-messages-layout .admin-message-form textarea:focus{border-color:#59adff;box-shadow:0 0 0 4px rgba(46,144,255,.12)}.sontech-admin-messages-layout .admin-message-form .btn{height:58px;min-width:145px;border-radius:16px;font-weight:800;background:linear-gradient(145deg,#0b75f4,#082fc4);border-color:#0643bf;box-shadow:0 10px 24px rgba(0,70,210,.25)}
.sontech-admin-secure{position:relative;z-index:1;text-align:center;margin:15px 0 0;color:#37659d;font-size:.82rem}.sontech-admin-secure i{color:#0875e8;margin-right:5px}
@media(max-width:900px){.sontech-admin-message-hero{padding:15px 18px;min-height:100px}.sontech-admin-message-brand{width:180px;flex-basis:180px}.sontech-admin-message-brand img{width:165px}.sontech-admin-message-hero-icon{width:56px;height:56px;flex-basis:56px;font-size:1.5rem}.sontech-admin-message-copy h2{font-size:1.2rem}.sontech-admin-message-copy p{font-size:.82rem}.sontech-admin-messages-layout{grid-template-columns:1fr}.sontech-admin-messages-layout .message-inbox{border-right:0;border-bottom:1px solid #d9e8f7}.sontech-admin-messages-layout .message-client-list{max-height:250px}}
@media(max-width:600px){.sontech-admin-message-brand{width:130px;flex-basis:130px}.sontech-admin-message-brand img{width:125px}.sontech-admin-message-hero-icon{display:none}.sontech-admin-message-copy h2{font-size:1rem}.sontech-admin-message-copy p{font-size:.72rem}.sontech-admin-online{padding:8px 10px;font-size:.72rem}.sontech-admin-messages-layout{border-radius:18px}.sontech-admin-messages-layout .conversation-messages{padding:18px 12px}.sontech-admin-messages-layout .admin-message-bubble{max-width:90%}.sontech-admin-messages-layout .admin-message-form{flex-wrap:wrap}.sontech-admin-messages-layout .admin-message-form:before{display:none}.sontech-admin-messages-layout .admin-message-form textarea{flex:1 1 100%;width:100%}.sontech-admin-messages-layout .admin-message-form .btn{width:100%;height:52px}}

/* ==========================================================
   SONTECH ADMIN MESSAGES — reference-matched support center
   Scoped so existing admin navigation/footer and other pages remain intact.
   ========================================================== */
body:has(.sontech-admin-messages-page){background:#eef5ff!important}
.sontech-admin-messages-page{position:relative;padding:0 0 20px;overflow:hidden;background:radial-gradient(circle at 70% 0,rgba(58,145,255,.12),transparent 35%),linear-gradient(135deg,#f7fbff 0%,#edf5ff 100%);border-radius:24px}
.sontech-admin-messages-page:before{content:"";position:absolute;width:520px;height:520px;right:-270px;top:150px;border-radius:50%;background:rgba(0,130,255,.09);box-shadow:0 0 140px rgba(0,105,255,.16);pointer-events:none}
.sontech-admin-message-hero{position:relative;z-index:1;min-height:132px;display:flex;align-items:center;gap:24px;padding:18px 28px;margin-bottom:18px;border:1px solid rgba(0,181,255,.55);border-radius:24px;overflow:hidden;color:#fff;background:linear-gradient(110deg,#031943 0%,#063c98 47%,#0755d8 80%,#062b70 100%);box-shadow:0 18px 48px rgba(0,65,180,.22),inset 0 1px 0 rgba(255,255,255,.22)}
.sontech-admin-message-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(126deg,transparent 0 74%,rgba(0,220,255,.2) 74.2% 75.2%,transparent 75.4% 77%,rgba(255,255,255,.12) 77.2% 78%,transparent 78.2%);pointer-events:none}
.sontech-admin-message-hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,#00d9ff,#2b8cff,#00e5ff);box-shadow:0 0 15px #00cfff}
.sontech-admin-message-brand{position:relative;z-index:1;width:260px;flex:0 0 260px;display:flex;align-items:center}.sontech-admin-message-brand img{width:235px;max-height:88px;object-fit:contain;filter:drop-shadow(0 0 10px rgba(0,210,255,.45))}
.sontech-admin-message-hero-icon{position:relative;z-index:1;width:68px;height:68px;flex:0 0 68px;display:grid;place-items:center;border:2px solid #32d9ff;border-radius:50%;font-size:1.8rem;background:rgba(0,48,142,.5);box-shadow:0 0 24px rgba(0,208,255,.5),inset 0 0 16px rgba(0,196,255,.18)}
.sontech-admin-message-copy{position:relative;z-index:1}.sontech-admin-message-copy h2{margin:0;font-size:1.55rem;font-weight:800}.sontech-admin-message-copy p{margin:5px 0 0;color:#e6f4ff}.sontech-admin-online{position:relative;z-index:1;margin-left:auto;display:flex;align-items:center;gap:9px;padding:10px 18px;border:1px solid #32d8ff;border-radius:999px;background:rgba(0,36,105,.48);box-shadow:0 0 18px rgba(0,205,255,.28);font-weight:700;white-space:nowrap}.sontech-admin-online span{width:12px;height:12px;border-radius:50%;background:#14df56;box-shadow:0 0 11px rgba(20,223,86,.9)}
.sontech-admin-messages-layout{position:relative;z-index:1;grid-template-columns:330px minmax(0,1fr);min-height:680px;border:1px solid rgba(255,255,255,.95);border-radius:24px;background:rgba(255,255,255,.68);box-shadow:0 25px 65px rgba(0,58,145,.14),0 0 0 1px rgba(40,155,255,.10) inset;backdrop-filter:blur(12px);overflow:hidden}
.sontech-admin-messages-layout .message-inbox{background:rgba(250,253,255,.84);border-right:1px solid #d8e7f5}.sontech-admin-messages-layout .message-inbox-head{height:86px;padding:18px 20px;border-bottom:1px solid #dce9f7;background:linear-gradient(105deg,rgba(218,237,255,.96),rgba(183,213,250,.84))}.sontech-admin-messages-layout .message-inbox-head h2{font-size:1.08rem}.sontech-admin-messages-layout .message-inbox-head small{font-size:.74rem;color:#52729e}.message-new-btn{width:34px;height:34px;border:0;border-radius:50%;display:grid;place-items:center;color:#fff;background:linear-gradient(145deg,#0878f4,#073cc0);box-shadow:0 7px 16px rgba(0,70,200,.25);cursor:pointer}.message-new-btn:hover{transform:scale(1.04)}
.message-search-wrap{position:relative;margin:12px 12px 8px}.message-search-wrap>i{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:#5f7ca6;font-size:.85rem}.message-search-wrap input{width:100%;height:40px;padding:0 34px;border:1px solid #d2e1f1;border-radius:12px;background:#fff;color:#102b5e;outline:none}.message-search-wrap input:focus{border-color:#5aaeff;box-shadow:0 0 0 3px rgba(44,144,255,.1)}.message-search-wrap button{position:absolute;right:5px;top:5px;width:30px;height:30px;border:0;border-radius:8px;background:#eef5ff;color:#4d6c98;cursor:pointer}
.sontech-admin-messages-layout .message-client-list{max-height:548px}.sontech-admin-messages-layout .message-client{padding:15px 16px;gap:12px;border-bottom:1px solid #e7eff8;transition:.18s ease}.sontech-admin-messages-layout .message-client:hover{background:#edf6ff}.sontech-admin-messages-layout .message-client.active{background:linear-gradient(90deg,#e0efff,#f7fbff);box-shadow:inset 4px 0 #0878f4}.sontech-admin-messages-layout .message-avatar{background:linear-gradient(145deg,#d8ecff,#a8d0fa);color:#0750b8;box-shadow:0 6px 15px rgba(0,80,180,.12)}.sontech-admin-messages-layout .message-avatar.large{width:48px;height:48px;flex-basis:48px;font-size:1.1rem}.sontech-admin-messages-layout .message-client-copy strong{font-size:.91rem}.sontech-admin-messages-layout .message-client-copy small,.sontech-admin-messages-layout .message-client-copy span{font-size:.7rem}.sontech-admin-messages-layout .message-client-copy span{color:#0a62db;font-weight:700}.sontech-admin-messages-layout .message-unread{background:#096fe8;min-width:24px;text-align:center;border-radius:50%;padding:5px;font-size:.68rem;box-shadow:0 4px 10px rgba(0,90,210,.2)}
.message-list-empty{min-height:180px;padding:35px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#7290b4;gap:5px}.message-list-empty i{font-size:1.8rem;color:#6baef2;margin-bottom:4px}.message-list-empty strong{color:#2a4d7e}.message-list-empty span{font-size:.75rem}.message-list-empty[hidden]{display:none}
.sontech-admin-messages-layout .message-conversation{position:relative;min-width:0;background:linear-gradient(180deg,rgba(246,251,255,.72),rgba(231,243,255,.55))}.sontech-admin-messages-layout .conversation-head{min-height:86px;padding:14px 18px;display:flex;align-items:center;gap:13px;background:linear-gradient(105deg,rgba(222,239,255,.98),rgba(176,210,250,.9));border-bottom:1px solid rgba(255,255,255,.96);position:relative;z-index:4}.sontech-admin-messages-layout .conversation-head:after{content:"";position:absolute;right:0;top:0;width:250px;height:100%;background:linear-gradient(135deg,transparent 43%,rgba(255,255,255,.28) 44% 48%,transparent 49% 56%,rgba(255,255,255,.2) 57% 61%,transparent 62%);pointer-events:none}.conversation-person{min-width:0}.sontech-admin-messages-layout .conversation-head h2{margin:0;color:#09265f;font-size:1.08rem;font-weight:800}.sontech-admin-messages-layout .conversation-head p{margin:3px 0 0;color:#4a6d9e;font-size:.73rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-typing-header{display:flex;align-items:center;gap:4px;margin-top:4px;min-height:16px;color:#075fc7;font-size:.68rem;font-weight:700}.admin-typing-header[hidden]{display:none}.admin-typing-header span{width:5px;height:5px;border-radius:50%;background:#0875e8;animation:sontechAdminTyping 1s infinite ease-in-out}.admin-typing-header span:nth-child(2){animation-delay:.15s}.admin-typing-header span:nth-child(3){animation-delay:.3s}.admin-typing-header b{margin-left:3px;font-weight:700}@keyframes sontechAdminTyping{0%,60%,100%{transform:translateY(0);opacity:.45}30%{transform:translateY(-3px);opacity:1}}.conversation-status{margin-left:auto;position:relative;z-index:2;display:flex;align-items:center;gap:7px;padding:7px 12px;border-radius:999px;border:1px solid #bde8d1;background:#effcf4;color:#19834a;font-size:.72rem;font-weight:700;white-space:nowrap}.conversation-status span{width:8px;height:8px;border-radius:50%;background:#1eb15c}.conversation-menu-btn{position:relative;z-index:2;width:34px;height:38px;border:0;background:transparent;color:#1b477d;font-size:1.15rem;cursor:pointer}.conversation-menu{position:absolute;z-index:10;right:15px;top:70px;width:190px;padding:7px;border:1px solid #d4e3f3;border-radius:13px;background:#fff;box-shadow:0 16px 35px rgba(0,55,140,.18)}.conversation-menu[hidden]{display:none}.conversation-menu-item{width:100%;display:flex;align-items:center;gap:9px;padding:10px;border:0;border-radius:9px;background:#fff;color:#183b6e;text-decoration:none;text-align:left;font-size:.82rem;cursor:pointer}.conversation-menu-item:hover{background:#edf6ff;color:#0758bf}
.sontech-admin-messages-layout .conversation-messages{min-height:500px;max-height:560px;overflow-y:auto;padding:26px 32px;background:radial-gradient(circle at 75% 15%,rgba(88,163,255,.08),transparent 28%),linear-gradient(180deg,rgba(247,251,255,.72),rgba(230,243,255,.54));scroll-behavior:smooth}.sontech-admin-messages-layout .conversation-messages::-webkit-scrollbar{width:8px}.sontech-admin-messages-layout .conversation-messages::-webkit-scrollbar-thumb{background:#aac8eb;border-radius:20px}.sontech-admin-messages-layout .admin-message-row{display:flex;margin:14px 0}.sontech-admin-messages-layout .admin-message-row.outgoing{justify-content:flex-end}.sontech-admin-messages-layout .admin-message-row.incoming{justify-content:flex-start}.sontech-admin-messages-layout .admin-message-bubble{max-width:min(72%,720px);padding:14px 17px;border-radius:18px;background:rgba(255,255,255,.94);border:1px solid #d8e7f7;box-shadow:0 8px 20px rgba(20,75,140,.07);color:#102b5e;line-height:1.5}.sontech-admin-messages-layout .admin-message-row.outgoing .admin-message-bubble{background:linear-gradient(135deg,#0868ea,#0639b7);border-color:rgba(255,255,255,.3);color:#fff;box-shadow:0 10px 25px rgba(0,75,210,.23);border-bottom-right-radius:5px}.sontech-admin-messages-layout .admin-message-row.incoming .admin-message-bubble{border-bottom-left-radius:5px}.sontech-admin-messages-layout .admin-message-bubble small{display:block;margin-top:8px;font-size:.65rem;opacity:.78}.sontech-admin-messages-layout .admin-message-row.outgoing .admin-message-bubble small{color:#dceaff}.message-seen{margin-left:4px;color:#bde0ff}.admin-message-file{display:flex;align-items:center;gap:8px;margin-top:10px;padding:8px 10px;border-radius:11px;background:rgba(8,94,220,.08);color:#0759be;text-decoration:none;font-size:.8rem}.admin-message-file span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.outgoing .admin-message-file{background:rgba(255,255,255,.13);color:#fff}.admin-message-file i:last-child{margin-left:auto}
.placeholder-glow-icon{width:72px;height:72px;display:grid;place-items:center;border-radius:50%;font-size:1.9rem;color:#0872e8;background:linear-gradient(145deg,#e1f2ff,#c2e0ff);box-shadow:0 10px 30px rgba(0,100,220,.13),inset 0 1px 0 #fff}.message-placeholder{height:100%;min-height:560px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#6481aa;padding:25px}.message-placeholder h3{margin:14px 0 5px;color:#15386e}.message-placeholder p{margin:0;max-width:460px;font-size:.85rem}.message-placeholder.small{min-height:360px}.message-placeholder.small .placeholder-glow-icon{width:60px;height:60px;font-size:1.5rem}
.sontech-admin-messages-layout .admin-message-form{position:relative;display:flex;align-items:center;gap:10px;padding:13px 18px;background:rgba(255,255,255,.92);border-top:1px solid #d7e6f5}.admin-compose-attach{width:48px;height:48px;flex:0 0 48px;border:1px solid #d5e6f8;border-radius:50%;display:grid;place-items:center;color:#075bc6;background:#f8fbff;font-size:1.25rem;box-shadow:0 6px 17px rgba(0,73,170,.08);cursor:pointer}.admin-compose-attach:hover,.admin-compose-attach.has-file{color:#fff;background:linear-gradient(145deg,#0b75f4,#082fc4);border-color:#0643bf}.admin-compose-wrap{position:relative;flex:1}.admin-compose-wrap textarea{width:100%;min-height:56px;max-height:140px;resize:none;padding:16px 50px 14px 17px;border:1px solid #cbdced;border-radius:15px;background:linear-gradient(180deg,#fff,#f4f9ff);color:#173568;outline:none;box-sizing:border-box}.admin-compose-wrap textarea:focus{border-color:#59adff;box-shadow:0 0 0 4px rgba(46,144,255,.12)}.admin-compose-emoji{position:absolute;right:12px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:#5674a6;font-size:1.35rem;cursor:pointer}.admin-emoji-menu{position:absolute;right:5px;bottom:65px;z-index:20;display:grid;grid-template-columns:repeat(4,42px);gap:5px;padding:8px;border:1px solid #cfe0f4;border-radius:15px;background:#fff;box-shadow:0 16px 35px rgba(0,55,140,.18)}.admin-emoji-menu[hidden]{display:none}.admin-emoji-menu button{width:42px;height:42px;border:0;border-radius:10px;background:#f5f9ff;font-size:1.3rem;cursor:pointer}.admin-emoji-menu button:hover{background:#e5f1ff}.admin-message-send{height:56px;min-width:142px;padding:0 20px;border:1px solid #0643bf;border-radius:15px;color:#fff;background:linear-gradient(145deg,#0b75f4,#082fc4);font-weight:800;box-shadow:0 10px 24px rgba(0,70,210,.25);cursor:pointer}.admin-message-send:hover{transform:translateY(-1px);box-shadow:0 13px 28px rgba(0,70,210,.32)}.admin-message-send:disabled{opacity:.7;cursor:wait;transform:none}.admin-attachment-preview{margin:-6px 18px 12px 76px;padding:7px 10px;display:flex;align-items:center;gap:8px;border-radius:10px;background:#edf6ff;color:#0759be;font-size:.78rem}.admin-attachment-preview[hidden]{display:none}.admin-attachment-preview span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-attachment-preview button{margin-left:auto;border:0;background:transparent;color:#5c7599;cursor:pointer}.sontech-admin-secure{position:relative;z-index:1;text-align:center;margin:13px 0 0;color:#37659d;font-size:.78rem}.sontech-admin-secure i{color:#0875e8;margin-right:5px}
@media(max-width:1000px){.sontech-admin-message-brand{width:210px;flex-basis:210px}.sontech-admin-message-brand img{width:190px}.sontech-admin-messages-layout{grid-template-columns:300px minmax(0,1fr)}.conversation-status{display:none}}
@media(max-width:850px){.sontech-admin-message-hero{min-height:105px;padding:14px 18px;gap:15px}.sontech-admin-message-brand{width:170px;flex-basis:170px}.sontech-admin-message-brand img{width:155px}.sontech-admin-message-hero-icon{width:56px;height:56px;flex-basis:56px;font-size:1.45rem}.sontech-admin-message-copy h2{font-size:1.2rem}.sontech-admin-message-copy p{font-size:.78rem}.sontech-admin-messages-layout{grid-template-columns:1fr}.sontech-admin-messages-layout .message-inbox{border-right:0;border-bottom:1px solid #d9e8f7}.sontech-admin-messages-layout .message-client-list{max-height:235px}.sontech-admin-messages-layout .conversation-messages{max-height:500px}}
@media(max-width:600px){.sontech-admin-messages-page{border-radius:16px}.sontech-admin-message-hero{padding:12px;min-height:86px}.sontech-admin-message-brand{width:125px;flex-basis:125px}.sontech-admin-message-brand img{width:118px}.sontech-admin-message-hero-icon{display:none}.sontech-admin-message-copy h2{font-size:1rem}.sontech-admin-message-copy p{font-size:.68rem}.sontech-admin-online{padding:7px 9px;font-size:.68rem}.sontech-admin-online span{width:9px;height:9px}.sontech-admin-messages-layout{border-radius:17px}.sontech-admin-messages-layout .conversation-messages{padding:17px 11px;min-height:390px}.sontech-admin-messages-layout .admin-message-bubble{max-width:91%;padding:12px 13px;font-size:.88rem}.sontech-admin-messages-layout .admin-message-form{flex-wrap:wrap;padding:10px}.admin-compose-attach{width:44px;height:44px;flex-basis:44px}.admin-compose-wrap{flex:1}.admin-compose-wrap textarea{min-height:52px}.admin-message-send{width:100%;height:52px}.admin-attachment-preview{margin:-3px 10px 10px 10px}.sontech-admin-messages-layout .message-inbox-head{height:78px}.message-search-wrap{margin:9px}.sontech-admin-secure{font-size:.7rem}}


/* FINAL ADMIN MESSAGES VISUAL FIX */
@media(min-width:992px){
  body.admin-body .admin-sidebar{transform:none!important;display:flex!important;width:306px!important;flex-basis:306px!important;}
  body.admin-body .admin-content{margin-left:306px!important;width:calc(100% - 306px)!important;}
}
.sontech-admin-messages-page{padding:0 0 18px!important;border-radius:0!important;background:transparent!important;overflow:visible!important;}
.sontech-admin-messages-page:before,.sontech-admin-messages-page:after{display:none!important;}
.sontech-admin-messages-layout{width:100%;min-height:calc(100vh - 235px)!important;height:auto!important;grid-template-columns:315px minmax(0,1fr)!important;border-radius:22px!important;background:rgba(255,255,255,.86)!important;box-shadow:0 18px 50px rgba(1,40,132,.12)!important;}
.sontech-admin-messages-layout .message-inbox{min-width:0;}
.sontech-admin-messages-layout .message-client-list{max-height:none!important;overflow:auto;}
.sontech-admin-messages-layout .message-conversation{min-height:0;}
.sontech-admin-messages-layout .conversation-messages{min-height:0!important;max-height:none!important;height:calc(100vh - 395px);padding:24px 30px!important;}
.sontech-admin-messages-layout .conversation-head{min-height:82px!important;}
.sontech-admin-messages-layout .admin-message-bubble{max-width:min(74%,760px)!important;}
.sontech-admin-messages-layout .admin-message-form{position:relative!important;flex-shrink:0!important;}
.sontech-admin-secure{margin:10px 0 0!important;}
@media(max-width:991px){
  .sontech-admin-messages-layout{grid-template-columns:1fr!important;min-height:0!important;}
  .sontech-admin-messages-layout .message-client-list{max-height:260px!important;}
  .sontech-admin-messages-layout .conversation-messages{height:480px!important;}
}
@media(max-width:600px){
  .sontech-admin-messages-layout{border-radius:16px!important;}
  .sontech-admin-messages-layout .conversation-messages{height:420px!important;}
}

/* ==========================================================
   ADMIN MESSAGES — DARK / NEON REFERENCE STYLE
   Scoped to Messages only. Navigation/header/footer are untouched.
   ========================================================== */
body.admin-body:has(.sontech-admin-messages-page){
  background:#020b21!important;
}
body.admin-body:has(.sontech-admin-messages-page) .admin-main{
  background:radial-gradient(circle at 72% 18%,rgba(0,126,255,.12),transparent 32%),linear-gradient(135deg,#020a1d 0%,#03102c 52%,#020a1c 100%);
}
.sontech-admin-messages-page{
  padding:0 0 20px!important;
  border-radius:0!important;
  background:transparent!important;
  color:#e9f4ff;
  overflow:visible!important;
}
.sontech-admin-messages-page:before{
  display:block!important;
  width:520px;height:520px;right:-250px;top:40px;left:auto;bottom:auto;
  border-radius:50%;background:rgba(0,116,255,.08);
  box-shadow:0 0 160px rgba(0,135,255,.14);filter:blur(2px);
}
.sontech-admin-messages-page:after{
  display:block!important;
  width:420px;height:420px;left:-250px;right:auto;bottom:-180px;top:auto;
  border-radius:50%;background:rgba(0,215,255,.045);
  box-shadow:0 0 140px rgba(0,185,255,.10);filter:blur(2px);
}
.sontech-admin-messages-layout{
  width:100%;
  min-height:calc(100vh - 235px)!important;
  height:auto!important;
  grid-template-columns:275px minmax(0,1fr)!important;
  border:1px solid rgba(41,111,203,.42)!important;
  border-radius:15px!important;
  background:rgba(3,17,43,.88)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.36),0 0 0 1px rgba(0,132,255,.07) inset!important;
  backdrop-filter:blur(18px);
  overflow:hidden;
}
.sontech-admin-messages-layout .message-inbox{
  min-width:0;
  background:linear-gradient(180deg,rgba(4,22,52,.98),rgba(2,13,34,.98))!important;
  border-right:1px solid rgba(52,112,184,.30)!important;
}
.sontech-admin-messages-layout .message-inbox-head{
  padding:18px 16px!important;
  border-bottom:1px solid rgba(54,114,183,.28)!important;
  background:linear-gradient(180deg,rgba(6,28,64,.96),rgba(3,18,43,.92))!important;
}
.sontech-admin-messages-layout .message-inbox-head h2{
  color:#f1f7ff!important;font-size:1rem!important;font-weight:800;
}
.sontech-admin-messages-layout .message-inbox-head small{color:#8ea8ca!important}
.sontech-admin-messages-layout .message-new-btn{
  width:34px;height:34px;border:1px solid #087eff;border-radius:9px;
  color:#fff;background:linear-gradient(145deg,#0878f4,#0637a9);
  box-shadow:0 0 18px rgba(0,119,255,.28);cursor:pointer;
}
.sontech-admin-messages-layout .message-search-wrap{
  margin:14px 14px 10px!important;
  background:rgba(2,14,35,.76)!important;
  border:1px solid rgba(49,106,173,.48)!important;
  border-radius:8px!important;
  box-shadow:inset 0 0 12px rgba(0,0,0,.12);
}
.sontech-admin-messages-layout .message-search-wrap i{color:#48a8ff!important}
.sontech-admin-messages-layout .message-search-wrap input{
  color:#e8f4ff!important;background:transparent!important;
}
.sontech-admin-messages-layout .message-search-wrap input::placeholder{color:#6885aa!important}
.sontech-admin-messages-layout .message-client-list{max-height:590px!important}
.sontech-admin-messages-layout .message-client{
  padding:13px 14px!important;
  border-bottom:1px solid rgba(42,92,151,.24)!important;
  color:#e8f3ff!important;
  transition:background .18s ease,box-shadow .18s ease;
}
.sontech-admin-messages-layout .message-client:hover{background:rgba(8,83,167,.16)!important}
.sontech-admin-messages-layout .message-client.active{
  background:linear-gradient(90deg,rgba(0,91,214,.40),rgba(0,58,145,.16))!important;
  box-shadow:inset 3px 0 #1688ff,0 0 24px rgba(0,100,255,.08)!important;
}
.sontech-admin-messages-layout .message-avatar{
  background:linear-gradient(145deg,#123f86,#08275b)!important;
  color:#d9efff!important;
  border:1px solid #1769c9;
  box-shadow:0 0 14px rgba(0,111,255,.16)!important;
}
.sontech-admin-messages-layout .message-client-copy strong{color:#eef7ff!important}
.sontech-admin-messages-layout .message-client-copy small,
.sontech-admin-messages-layout .message-client-copy span{color:#7895ba!important}
.sontech-admin-messages-layout .message-unread{
  background:#147df5!important;color:#fff!important;border:1px solid #42a5ff;
  box-shadow:0 0 12px rgba(0,122,255,.35)!important;
}
.sontech-admin-messages-layout .message-list-empty{color:#7d99bd!important}
.sontech-admin-messages-layout .message-list-empty strong{color:#dbeaff!important}

.sontech-admin-messages-layout .message-conversation{
  background:radial-gradient(circle at 75% 18%,rgba(0,92,220,.11),transparent 30%),linear-gradient(180deg,#031331 0%,#020d24 100%)!important;
}
.sontech-admin-messages-layout .conversation-head{
  min-height:86px!important;
  padding:14px 18px!important;
  background:linear-gradient(180deg,rgba(4,26,60,.96),rgba(3,18,44,.96))!important;
  border-bottom:1px solid rgba(50,113,190,.32)!important;
}
.sontech-admin-messages-layout .conversation-head:after{opacity:.35}
.sontech-admin-messages-layout .conversation-head h2{color:#f2f7ff!important;font-size:1.05rem!important}
.sontech-admin-messages-layout .conversation-head p{color:#90a9cb!important}
.sontech-admin-messages-layout .conversation-status{
  border:1px solid rgba(25,196,112,.42)!important;
  background:rgba(12,86,53,.20)!important;color:#54e49a!important;
}
.sontech-admin-messages-layout .conversation-status span{background:#2ee58a!important;box-shadow:0 0 10px rgba(46,229,138,.7)}
.sontech-admin-messages-layout .conversation-menu-btn{color:#a8c9ef!important}
.sontech-admin-messages-layout .conversation-menu{
  background:#071b3b!important;border-color:#1a4d86!important;
  box-shadow:0 18px 42px rgba(0,0,0,.45)!important;
}
.sontech-admin-messages-layout .conversation-menu-item{background:transparent!important;color:#dcecff!important}
.sontech-admin-messages-layout .conversation-menu-item:hover{background:#0b2d5d!important;color:#fff!important}

.sontech-admin-messages-layout .conversation-messages{
  min-height:500px!important;max-height:560px!important;
  padding:22px 18px!important;
  background:radial-gradient(circle at 76% 13%,rgba(0,117,255,.09),transparent 28%),linear-gradient(180deg,#031330,#020c20)!important;
}
.sontech-admin-messages-layout .conversation-messages::-webkit-scrollbar{width:7px}
.sontech-admin-messages-layout .conversation-messages::-webkit-scrollbar-track{background:#020a19}
.sontech-admin-messages-layout .conversation-messages::-webkit-scrollbar-thumb{background:#174b86;border-radius:20px}
.sontech-admin-messages-layout .admin-message-row{margin:12px 0!important}
.sontech-admin-messages-layout .admin-message-bubble{
  max-width:min(72%,720px)!important;
  padding:11px 14px!important;
  border-radius:13px!important;
  background:linear-gradient(145deg,#122746,#0c1e39)!important;
  border:1px solid rgba(68,113,168,.35)!important;
  box-shadow:0 10px 24px rgba(0,0,0,.20)!important;
  color:#e8f3ff!important;
}
.sontech-admin-messages-layout .admin-message-row.incoming .admin-message-bubble{border-bottom-left-radius:4px!important}
.sontech-admin-messages-layout .admin-message-row.outgoing .admin-message-bubble{
  background:linear-gradient(145deg,#0757c9,#073c99)!important;
  border:1px solid #147eff!important;
  color:#fff!important;
  box-shadow:0 10px 25px rgba(0,75,210,.30),0 0 14px rgba(0,112,255,.12)!important;
  border-bottom-right-radius:4px!important;
}
.sontech-admin-messages-layout .admin-message-bubble small{color:#8ea8ca!important}
.sontech-admin-messages-layout .admin-message-row.outgoing .admin-message-bubble small{color:#cfe5ff!important}
.sontech-admin-messages-layout .message-seen{color:#69c6ff!important}
.sontech-admin-messages-layout .admin-message-file{background:rgba(0,112,245,.14)!important;color:#62bfff!important;border:1px solid rgba(51,144,235,.22)}
.sontech-admin-messages-layout .outgoing .admin-message-file{background:rgba(255,255,255,.10)!important;color:#fff!important}

.sontech-admin-messages-layout .admin-message-form{
  padding:12px 14px 10px!important;
  background:linear-gradient(180deg,rgba(3,19,45,.98),rgba(2,12,29,.98))!important;
  border-top:1px solid rgba(49,106,174,.32)!important;
}
.sontech-admin-messages-layout .admin-compose-attach{
  width:46px!important;height:46px!important;flex-basis:46px!important;
  color:#57baff!important;background:#061a39!important;
  border:1px solid #1c70c4!important;box-shadow:0 0 14px rgba(0,115,255,.16)!important;
}
.sontech-admin-messages-layout .admin-compose-attach:hover,
.sontech-admin-messages-layout .admin-compose-attach.has-file{color:#fff!important;background:linear-gradient(145deg,#0878f4,#0638a7)!important;border-color:#1687ff!important}
.sontech-admin-messages-layout .admin-compose-wrap textarea{
  min-height:50px!important;padding:14px 45px 12px 15px!important;
  color:#edf7ff!important;background:#06152e!important;
  border:1px solid #1b4b80!important;border-radius:11px!important;
  box-shadow:inset 0 0 14px rgba(0,0,0,.14)!important;
}
.sontech-admin-messages-layout .admin-compose-wrap textarea::placeholder{color:#6683a9!important}
.sontech-admin-messages-layout .admin-compose-wrap textarea:focus{border-color:#1689ff!important;box-shadow:0 0 0 3px rgba(0,126,255,.15)!important}
.sontech-admin-messages-layout .admin-compose-emoji{color:#8fb2d9!important}
.sontech-admin-messages-layout .admin-emoji-menu{background:#071b3b!important;border-color:#1c4f87!important;box-shadow:0 18px 35px rgba(0,0,0,.42)!important}
.sontech-admin-messages-layout .admin-emoji-menu button{background:#0b2549!important;color:#fff}
.sontech-admin-messages-layout .admin-emoji-menu button:hover{background:#0f3c75!important}
.sontech-admin-messages-layout .admin-message-send{
  height:50px!important;min-width:142px!important;border-radius:11px!important;
  background:linear-gradient(145deg,#087cf7,#073db4)!important;
  border:1px solid #1689ff!important;color:#fff!important;
  box-shadow:0 0 22px rgba(0,116,255,.28)!important;
}
.sontech-admin-messages-layout .admin-message-send:hover{box-shadow:0 0 28px rgba(0,129,255,.42)!important}
.sontech-admin-messages-layout .admin-attachment-preview{background:#08234a!important;color:#66bdff!important;border:1px solid #1c5b99}
.sontech-admin-secure{color:#397bb7!important;margin-top:11px!important}
.sontech-admin-secure i{color:#1c9bff!important}

/* Payment request cards can be used by future payment messages without changing the PHP flow. */
.sontech-admin-messages-page .payment-request-card{
  max-width:calc(100% - 10px);margin:0 auto 18px;padding:18px 20px;border-radius:16px;
  border:1px solid #087dff;background:linear-gradient(145deg,#071e52,#062a78 55%,#063b9d);
  color:#fff;box-shadow:0 12px 30px rgba(0,77,210,.25),0 0 25px rgba(0,110,255,.12);
}
.sontech-admin-messages-page .payment-request-card .payment-request-title{font-size:1.05rem;font-weight:800;margin-bottom:14px}
.sontech-admin-messages-page .payment-request-card .payment-row{display:flex;justify-content:space-between;gap:20px;padding:5px 0;color:#e6f0ff;font-size:.82rem}
.sontech-admin-messages-page .payment-request-card .payment-row strong{color:#fff}
.sontech-admin-messages-page .payment-request-card .payment-highlight{color:#00cfff;font-weight:800}
.sontech-admin-messages-page .payment-request-card .payment-note{margin-top:12px;padding:10px 12px;border:1px dashed #167dff;border-radius:11px;background:rgba(0,42,119,.34);font-size:.76rem;color:#dcecff}

@media(max-width:850px){
  .sontech-admin-messages-layout{grid-template-columns:1fr!important}
  .sontech-admin-messages-layout .message-inbox{border-right:0!important;border-bottom:1px solid rgba(52,112,184,.30)!important}
  .sontech-admin-messages-layout .message-client-list{max-height:235px!important}
}

/* Final Messages polish: clearer text, no decorative logo, hidden history scrollbar, auto-growing composer. */
body:has(.sontech-admin-messages-page) .admin-page-heading h1{
  color:#f4f8ff!important;
  text-shadow:0 0 16px rgba(45,151,255,.16);
}
body:has(.sontech-admin-messages-page) .breadcrumb-line{
  color:#91a9c8!important;
}
body:has(.sontech-admin-messages-page) .breadcrumb-line a{
  color:#39a8ff!important;
}
.sontech-admin-messages-layout .conversation-messages{
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
}
.sontech-admin-messages-layout .conversation-messages::-webkit-scrollbar{
  display:none!important;
  width:0!important;
  height:0!important;
}
/* Remove the SonTech logo that was injected beside the attachment button. */
.sontech-admin-messages-layout .admin-message-form:before{
  display:none!important;
  content:none!important;
}
/* Make both incoming and outgoing message text easier to read. */
.sontech-admin-messages-layout .admin-message-bubble,
.sontech-admin-messages-layout .admin-message-bubble div{
  color:#f2f7ff!important;
  font-size:.94rem!important;
  line-height:1.55!important;
}
.sontech-admin-messages-layout .admin-message-row.incoming .admin-message-bubble{
  background:linear-gradient(145deg,#17365d,#102b4c)!important;
  border-color:rgba(91,157,220,.48)!important;
  color:#f5f9ff!important;
}
.sontech-admin-messages-layout .admin-message-row.outgoing .admin-message-bubble{
  background:linear-gradient(145deg,#0868df,#0750b8)!important;
  color:#fff!important;
}
.sontech-admin-messages-layout .admin-message-bubble small{
  color:#a9c4e4!important;
  font-size:.70rem!important;
}
.sontech-admin-messages-layout .admin-message-row.outgoing .admin-message-bubble small{
  color:#dcecff!important;
}
/* The composer grows with the message instead of showing an internal textarea scrollbar. */
.sontech-admin-messages-layout .admin-compose-wrap{
  min-width:0!important;
  align-self:flex-end!important;
}
.sontech-admin-messages-layout .admin-compose-wrap textarea{
  overflow-y:hidden!important;
  resize:none!important;
  max-height:none!important;
  height:auto;
  line-height:1.5!important;
}
.sontech-admin-messages-layout .admin-message-form{
  align-items:flex-end!important;
}
.sontech-admin-messages-layout .admin-message-send{
  flex:0 0 auto!important;
  align-self:flex-end!important;
}


/* ==========================================================
   ADMIN MESSAGES — FINAL READABILITY / COMPOSER FIX
   Scoped ONLY to admin/messages.php. Navigation is untouched.
   ========================================================== */
body.admin-messages-page .admin-page-heading h1{
  color:#f5f9ff !important;
  font-weight:800 !important;
  text-shadow:0 0 14px rgba(50,155,255,.20) !important;
}
body.admin-messages-page .breadcrumb-line,
body.admin-messages-page .breadcrumb-line span{color:#a9bdd7 !important;}
body.admin-messages-page .breadcrumb-line a{color:#39a9ff !important;}

/* Message history: no visible scrollbar, but mouse wheel/touch still scrolls. */
body.admin-messages-page .conversation-messages{
  overflow-y:auto !important;
  scrollbar-width:none !important;
  -ms-overflow-style:none !important;
  overscroll-behavior:contain !important;
}
body.admin-messages-page .conversation-messages::-webkit-scrollbar{
  width:0 !important;
  height:0 !important;
  display:none !important;
}

/* Make incoming/outgoing text bright and readable. */
body.admin-messages-page .admin-message-bubble{
  color:#f7fbff !important;
  font-size:.96rem !important;
  line-height:1.6 !important;
  font-weight:500 !important;
  overflow-wrap:anywhere !important;
  word-break:break-word !important;
}
body.admin-messages-page .admin-message-row.incoming .admin-message-bubble{
  color:#f4f9ff !important;
  background:linear-gradient(145deg,#1a3b63,#122e50) !important;
  border-color:rgba(102,171,235,.55) !important;
}
body.admin-messages-page .admin-message-row.outgoing .admin-message-bubble{
  color:#ffffff !important;
  background:linear-gradient(145deg,#086be5,#0750b8) !important;
}
body.admin-messages-page .admin-message-bubble small{
  color:#b8cde7 !important;
  font-size:.70rem !important;
}
body.admin-messages-page .admin-message-row.outgoing .admin-message-bubble small{
  color:#e0efff !important;
}

/* Remove the circular SonTech logo that appeared before the attachment button. */
body.admin-messages-page .admin-message-form::before{
  display:none !important;
  width:0 !important;
  flex:0 0 0 !important;
  content:none !important;
  background:none !important;
  box-shadow:none !important;
  border:0 !important;
}

/* Composer: textarea grows automatically; no textarea scrollbar. */
body.admin-messages-page .admin-message-form{
  align-items:flex-end !important;
}
body.admin-messages-page .admin-compose-wrap{
  min-width:0 !important;
  flex:1 1 auto !important;
  align-self:flex-end !important;
}
body.admin-messages-page #adminMessageInput{
  display:block !important;
  width:100% !important;
  min-height:52px !important;
  height:52px !important;
  max-height:220px !important;
  overflow-y:hidden !important;
  overflow-x:hidden !important;
  resize:none !important;
  color:#eef7ff !important;
  background:#071a35 !important;
  border:1px solid #2365a7 !important;
  line-height:1.55 !important;
  overflow-wrap:anywhere !important;
}
body.admin-messages-page #adminMessageInput::placeholder{color:#91abc9 !important;opacity:1 !important;}
body.admin-messages-page #adminMessageInput:focus{
  color:#ffffff !important;
  background:#081e3d !important;
  border-color:#2695ff !important;
  box-shadow:0 0 0 3px rgba(38,149,255,.15) !important;
}
body.admin-messages-page .admin-compose-emoji{
  color:#d5e8ff !important;
  background:transparent !important;
}

/* Keep the send button fixed at the bottom of the growing composer. */
body.admin-messages-page .admin-message-send{
  flex:0 0 auto !important;
  align-self:flex-end !important;
}

/* ==========================================================
   ADMIN MESSAGES — USE THE FULL LOWER SPACE
   Keep the composer at the very bottom of the conversation.
   ========================================================== */
body.admin-messages-page .sontech-admin-messages-page{
  min-height:calc(100vh - 175px)!important;
}
body.admin-messages-page .sontech-admin-messages-layout{
  height:calc(100vh - 235px)!important;
  min-height:680px!important;
}
body.admin-messages-page .sontech-admin-messages-layout .message-conversation{
  display:flex!important;
  flex-direction:column!important;
  min-height:0!important;
  height:100%!important;
}
body.admin-messages-page .sontech-admin-messages-layout .conversation-head{
  flex:0 0 auto!important;
}
body.admin-messages-page .sontech-admin-messages-layout .conversation-messages{
  flex:1 1 auto!important;
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
}
body.admin-messages-page .sontech-admin-messages-layout .admin-message-form{
  flex:0 0 auto!important;
  margin-top:auto!important;
  position:relative!important;
  z-index:5!important;
}
body.admin-messages-page .sontech-admin-messages-layout .admin-attachment-preview{
  flex:0 0 auto!important;
}
@media(max-width:991px){
  body.admin-messages-page .sontech-admin-messages-page{min-height:0!important;}
  body.admin-messages-page .sontech-admin-messages-layout{height:auto!important;min-height:0!important;}
  body.admin-messages-page .sontech-admin-messages-layout .message-conversation{height:auto!important;min-height:600px!important;}
  body.admin-messages-page .sontech-admin-messages-layout .conversation-messages{flex:1 1 auto!important;height:500px!important;min-height:500px!important;}
}


/* Structured Payment Request card — used in Admin/Client chat */
.sontech-payment-request-message{width:min(780px,100%);margin:2px 0;border:1px solid #c7e4ff;border-radius:20px;overflow:hidden;background:linear-gradient(145deg,#fff,#f4f9ff);box-shadow:0 12px 32px rgba(0,73,170,.12);color:#12356f}
.sprm-head{display:flex;align-items:center;gap:12px;padding:14px 16px;background:linear-gradient(110deg,#eef7ff,#cfe4ff);border-bottom:1px solid #d9ebff}
.sprm-icon{width:46px;height:46px;display:grid;place-items:center;flex:0 0 46px;border-radius:50%;color:#fff;background:linear-gradient(145deg,#0bc9ff,#075ce0);font-size:1.2rem;box-shadow:0 6px 16px rgba(0,88,220,.25)}
.sprm-title{display:flex;align-items:center;gap:9px;min-width:0;flex:1}.sprm-title strong{font-size:1.08rem;color:#082b70}.sprm-title span{display:inline-flex;align-items:center;gap:4px;padding:5px 9px;border:1px solid #8ecaff;border-radius:999px;background:rgba(255,255,255,.6);color:#1162c9;font-size:.68rem;font-weight:800;white-space:nowrap}
.sprm-number{padding:7px 11px;border-radius:999px;background:#0a68df;color:#fff;font-size:.75rem;font-weight:800;white-space:nowrap}
.sprm-body{padding:14px}.sprm-main{display:grid;grid-template-columns:1.5fr 1fr 1.35fr;gap:8px;margin-bottom:10px}.sprm-info{display:grid;grid-template-columns:25px 1fr;align-items:center;gap:4px;padding:8px 7px;border-radius:10px;background:#f5f9ff;font-size:.72rem}.sprm-info>i{grid-row:1 / span 2;color:#0862d6}.sprm-info b{font-size:.67rem;color:#607aa2}.sprm-info strong{font-size:.76rem;color:#14356e}.sprm-info strong.service{color:#0861d7}.sprm-info strong.total{color:#155bd2}
.sprm-money{border:1px solid #dceaf8;border-radius:13px;background:#f7fbff;padding:4px 10px}.sprm-money>div{display:grid;grid-template-columns:25px 1fr auto;align-items:center;gap:5px;padding:7px 0;font-size:.74rem}.sprm-money>div+div{border-top:1px solid #e5eef8}.sprm-money i{font-size:.95rem;color:#0a63d4}.sprm-money span{font-weight:700}.sprm-money strong{font-size:.8rem}.sprm-money .paid,.sprm-money .paid~*{color:#16843e}.sprm-money .balance{color:#d47700}.sprm-money .requested{color:#0b5ed3}.sprm-instruction{display:flex;align-items:center;gap:10px;margin-top:11px;padding:10px 12px;border:1px solid #6dc7ff;border-radius:12px;background:linear-gradient(105deg,#effaff,#dceeff)}.sprm-instruction p{margin:0 0 7px;font-size:.72rem;font-weight:700;color:#153a73}.sprm-light{width:32px;height:32px;flex:0 0 32px;display:grid;place-items:center;border-radius:50%;background:#063e9e;color:#fff}.sprm-link{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid #62bfff;border-radius:999px;background:#fff;color:#075bc7;text-decoration:none;font-size:.72rem;font-weight:850}.sprm-link:hover{background:#f1f8ff;color:#034aa9}
@media(max-width:700px){.sprm-main{grid-template-columns:1fr}.sprm-title span{display:none}.sprm-number{font-size:.68rem}.sprm-info{grid-template-columns:25px 1fr}.sontech-payment-request-message{max-width:100%}}

/* =========================================================
   RECEIVED CLIENT MESSAGES + PAYMENT REQUEST CARD POLISH
   ========================================================= */
.sontech-chat-row.theirs .sontech-chat-bubble{
  background:linear-gradient(145deg,#ffffff 0%,#f5f9ff 100%) !important;
  color:#102f63 !important;
  border:1px solid #cfe1f6 !important;
  border-bottom-left-radius:5px !important;
  box-shadow:0 10px 26px rgba(20,76,145,.12),0 1px 0 rgba(255,255,255,.95) inset !important;
  padding:14px 16px !important;
}
.sontech-chat-row.theirs .sontech-chat-bubble > div{
  color:#173968 !important;
  overflow-wrap:anywhere !important;
  word-break:break-word !important;
}
.sontech-chat-row.theirs .sontech-chat-bubble small{
  color:#6b83a6 !important;
}
.sontech-chat-row.mine .sontech-chat-bubble > div{
  overflow-wrap:anywhere !important;
  word-break:break-word !important;
}

/* Make the structured payment request use the full message area,
   instead of inheriting the normal chat-bubble styling. */
.sontech-chat-bubble:has(.sontech-payment-request-message),
.admin-message-bubble:has(.sontech-payment-request-message){
  padding:6px !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  max-width:min(86%,820px) !important;
}
.sontech-payment-request-message{
  width:min(800px,100%) !important;
  margin:0 !important;
  border:1px solid #9fd3ff !important;
  border-radius:22px !important;
  overflow:hidden !important;
  background:linear-gradient(145deg,#ffffff 0%,#f3f8ff 100%) !important;
  box-shadow:0 16px 38px rgba(0,75,180,.16),0 0 0 1px rgba(255,255,255,.8) inset !important;
  color:#12356f !important;
}
.sprm-head{
  min-height:72px !important;
  padding:13px 16px !important;
  background:linear-gradient(105deg,#eef7ff 0%,#d7eaff 62%,#c4ddff 100%) !important;
  border-bottom:1px solid #c9e4ff !important;
}
.sprm-icon{width:48px !important;height:48px !important;flex-basis:48px !important;}
.sprm-title strong{font-size:1.15rem !important;color:#082d72 !important;}
.sprm-number{background:linear-gradient(135deg,#147cf0,#0755c9) !important;box-shadow:0 5px 13px rgba(0,86,210,.2);}
.sprm-body{padding:16px !important;}
.sprm-main{grid-template-columns:1.55fr 1fr 1.4fr !important;gap:9px !important;}
.sprm-info{min-height:54px !important;background:linear-gradient(180deg,#f9fcff,#eef6ff) !important;border:1px solid #e0edfb !important;}
.sprm-info b{color:#617ba2 !important;}
.sprm-info strong{color:#17386f !important;}
.sprm-info strong.service{color:#075fcf !important;}
.sprm-info strong.total{color:#145fd0 !important;}
.sprm-money{background:linear-gradient(180deg,#f9fcff,#edf6ff) !important;border-color:#d7e8fa !important;}
.sprm-money>div{min-height:37px !important;}
.sprm-money .paid{color:#16843e !important;}
.sprm-money .balance{color:#cc7200 !important;}
.sprm-money .requested{color:#075dcc !important;}
.sprm-instruction{background:linear-gradient(105deg,#f0fbff,#dceeff) !important;border-color:#72c8ff !important;padding:12px 13px !important;}
.sprm-instruction p{color:#173b75 !important;font-size:.76rem !important;}
.sprm-link{
  padding:8px 13px !important;
  border:1px solid #67bdff !important;
  background:#fff !important;
  color:#075bc7 !important;
  box-shadow:0 4px 12px rgba(0,93,210,.08);
}
.sprm-link:hover{background:#eef8ff !important;transform:translateY(-1px);}

/* Admin: a received client message is clearly separated from outgoing replies. */
body.admin-messages-page .admin-message-row.incoming .admin-message-bubble > div{
  color:#f5f9ff !important;
  overflow-wrap:anywhere !important;
}
body.admin-messages-page .admin-message-row.incoming .admin-message-bubble:has(.sontech-payment-request-message){
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  padding:6px !important;
}

@media(max-width:700px){
  .sontech-chat-bubble:has(.sontech-payment-request-message),
  .admin-message-bubble:has(.sontech-payment-request-message){max-width:96% !important;}
  .sprm-head{gap:8px !important;padding:11px 12px !important;}
  .sprm-icon{width:42px !important;height:42px !important;flex-basis:42px !important;}
  .sprm-title strong{font-size:1rem !important;}
  .sprm-number{font-size:.66rem !important;padding:6px 8px !important;}
  .sprm-body{padding:11px !important;}
  .sprm-main{grid-template-columns:1fr !important;}
  .sprm-instruction{align-items:flex-start !important;}
}


/* =========================================================
   FINAL PAYMENT REQUEST CHAT CARD — MATCH REFERENCE DESIGN
   ========================================================= */
.sontech-chat-row.payment-request-row,
.admin-message-row.payment-request-row{
  width:100% !important;
  max-width:100% !important;
  margin:18px 0 !important;
  display:block !important;
}
.sontech-chat-row.payment-request-row .sontech-chat-bubble,
.admin-message-row.payment-request-row .admin-message-bubble{
  width:100% !important;
  max-width:none !important;
  padding:0 !important;
  margin:0 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  color:inherit !important;
}
.sontech-chat-row.payment-request-row .sontech-chat-bubble > div,
.admin-message-row.payment-request-row .admin-message-bubble > div{
  width:100% !important;
  max-width:none !important;
}
.sontech-payment-request-message{
  position:relative !important;
  width:100% !important;
  max-width:100% !important;
  min-height:390px !important;
  margin:0 !important;
  overflow:hidden !important;
  border:2px solid rgba(139,207,255,.82) !important;
  border-radius:28px !important;
  background:
    radial-gradient(circle at 88% 8%,rgba(96,174,255,.22),transparent 26%),
    linear-gradient(145deg,#ffffff 0%,#f6faff 45%,#eaf4ff 100%) !important;
  box-shadow:0 18px 45px rgba(10,75,165,.15), inset 0 1px 0 rgba(255,255,255,.98) !important;
  color:#102f69 !important;
}
.sontech-payment-request-message:after{
  content:"";
  position:absolute;
  right:-70px;
  top:-75px;
  width:310px;
  height:190px;
  background:linear-gradient(135deg,transparent 35%,rgba(92,171,255,.12) 36%,rgba(92,171,255,.12) 43%,transparent 44%,transparent 51%,rgba(92,171,255,.10) 52%,rgba(92,171,255,.10) 59%,transparent 60%);
  pointer-events:none;
}
.sprm-head{
  position:relative !important;
  z-index:1 !important;
  min-height:105px !important;
  padding:20px 30px !important;
  display:flex !important;
  align-items:center !important;
  gap:18px !important;
  background:linear-gradient(110deg,#edf7ff 0%,#d8eaff 55%,#bdd9ff 100%) !important;
  border-bottom:1px solid #c5e0fb !important;
}
.sprm-icon{
  width:68px !important;height:68px !important;flex:0 0 68px !important;
  display:grid !important;place-items:center !important;
  border-radius:50% !important;
  background:linear-gradient(145deg,#13d1ff,#0765e8) !important;
  color:#fff !important;font-size:1.75rem !important;
  box-shadow:0 8px 20px rgba(0,95,220,.24) !important;
}
.sprm-title{display:flex !important;align-items:center !important;gap:18px !important;flex:1 !important;min-width:0 !important;}
.sprm-title strong{font-size:1.7rem !important;font-weight:850 !important;color:#082a6d !important;white-space:nowrap !important;}
.sprm-title span{
  display:inline-flex !important;align-items:center !important;gap:7px !important;
  padding:9px 17px !important;border:2px solid #a7d5ff !important;border-radius:999px !important;
  background:rgba(255,255,255,.5) !important;color:#075dcc !important;font-size:.92rem !important;font-weight:800 !important;white-space:nowrap !important;
}
.sprm-number{margin-left:auto !important;padding:11px 24px !important;border-radius:999px 0 0 999px !important;background:linear-gradient(135deg,#197cf2,#0860d9) !important;color:#fff !important;font-size:1rem !important;font-weight:850 !important;box-shadow:none !important;}
.sprm-body{position:relative;z-index:1;padding:28px 30px 20px !important;}
.sprm-grid{display:grid !important;grid-template-columns:minmax(0,1.3fr) minmax(360px,.9fr) !important;gap:28px !important;align-items:stretch !important;}
.sprm-left{display:flex !important;flex-direction:column !important;justify-content:center !important;border-right:2px dashed #cde2fa !important;padding-right:28px !important;}
.sprm-info-row{display:grid !important;grid-template-columns:54px auto minmax(0,1fr) !important;align-items:center !important;gap:12px !important;min-height:66px !important;}
.sprm-round-icon{
  width:45px;height:45px;display:grid;place-items:center;border-radius:50%;
  color:#075fd1;background:linear-gradient(145deg,#edf6ff,#dcecff);font-size:1.25rem;
  box-shadow:inset 0 1px 0 #fff;
}
.sprm-label{font-size:1.05rem !important;font-weight:700 !important;color:#18386e !important;white-space:nowrap !important;}
.sprm-info-row strong{font-size:1.12rem !important;color:#102e69 !important;min-width:0 !important;overflow-wrap:anywhere !important;}
.sprm-info-row strong.service{color:#075dcc !important;font-size:1.18rem !important;}
.sprm-info-row strong.total{color:#145bd0 !important;font-size:1.2rem !important;}
.sprm-money{
  border:1px solid #e0edf9 !important;border-radius:20px !important;
  background:linear-gradient(180deg,#f8fcff,#edf6ff) !important;
  padding:10px 20px !important;box-shadow:inset 0 1px 0 rgba(255,255,255,.9) !important;
}
.sprm-money>div{display:grid !important;grid-template-columns:52px 1fr auto !important;align-items:center !important;gap:10px !important;min-height:72px !important;padding:7px 0 !important;font-size:1.02rem !important;}
.sprm-money>div+div{border-top:1px solid #dfebf8 !important;}
.sprm-money-icon{width:43px;height:43px;display:grid;place-items:center;border-radius:50%;color:#075dcc;background:#e9f4ff;font-size:1.25rem;}
.sprm-money .paid-icon{color:#159145;background:#e7f7ed;}
.sprm-money span:not(.sprm-money-icon){font-weight:700 !important;color:#18386e !important;}
.sprm-money strong{font-size:1.2rem !important;font-weight:850 !important;white-space:nowrap !important;}
.sprm-money .paid{color:#16833e !important}.sprm-money .balance{color:#ce7600 !important}.sprm-money .requested{color:#095ed0 !important}
.sprm-instruction{
  display:flex !important;align-items:center !important;gap:20px !important;margin-top:28px !important;padding:20px 28px !important;
  border:2px solid #7ccaff !important;border-radius:20px !important;background:linear-gradient(105deg,#effaff,#dceeff) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9) !important;
}
.sprm-light{width:54px !important;height:54px !important;flex:0 0 54px !important;display:grid !important;place-items:center !important;border-radius:50% !important;background:linear-gradient(145deg,#073e9d,#031e68) !important;color:#fff !important;font-size:1.4rem !important;}
.sprm-instruction-copy{min-width:0;flex:1;}
.sprm-instruction p{margin:0 0 13px !important;font-size:1rem !important;font-weight:700 !important;color:#12366f !important;}
.sprm-link{
  display:inline-flex !important;align-items:center !important;gap:12px !important;padding:10px 20px !important;
  border:2px solid #72c5ff !important;border-radius:999px !important;background:#fff !important;color:#075bc7 !important;
  text-decoration:none !important;font-size:1.05rem !important;font-weight:850 !important;box-shadow:0 5px 14px rgba(0,93,210,.08) !important;
}
.sprm-link:hover{background:#f0f8ff !important;color:#034aa9 !important;transform:translateY(-1px);}
.sprm-footer{display:flex !important;align-items:center !important;gap:10px !important;margin:22px 5px 0 !important;color:#54709a !important;font-size:.88rem !important;}
.sprm-footer i{font-size:1.05rem !important;color:#6b86aa !important;}
@media(max-width:900px){
 .sprm-head{padding:17px 20px !important}.sprm-title{gap:10px !important}.sprm-title strong{font-size:1.3rem !important}.sprm-title span{font-size:.72rem !important;padding:7px 10px !important}.sprm-number{font-size:.78rem !important;padding:9px 14px !important}
 .sprm-grid{grid-template-columns:1fr !important}.sprm-left{border-right:0 !important;border-bottom:2px dashed #cde2fa !important;padding:0 0 16px !important}.sprm-money{padding:6px 14px !important}
}
@media(max-width:600px){
 .sontech-payment-request-message{min-height:0 !important;border-radius:18px !important}.sprm-head{min-height:78px !important;padding:12px !important;gap:9px !important}.sprm-icon{width:48px !important;height:48px !important;flex-basis:48px !important;font-size:1.3rem !important}.sprm-title{display:block !important}.sprm-title strong{display:block !important;font-size:1rem !important}.sprm-title span{display:none !important}.sprm-number{font-size:.64rem !important;padding:7px 9px !important}.sprm-body{padding:14px !important}.sprm-info-row{grid-template-columns:40px 1fr !important;gap:7px !important;min-height:54px !important}.sprm-round-icon{width:36px;height:36px;font-size:1rem}.sprm-label{font-size:.78rem !important}.sprm-info-row strong{grid-column:2;font-size:.88rem !important;margin-top:-15px !important;margin-left:0 !important}.sprm-info-row strong.service,.sprm-info-row strong.total{font-size:.92rem !important}.sprm-money>div{grid-template-columns:40px 1fr auto !important;min-height:55px !important;font-size:.78rem !important}.sprm-money-icon{width:34px;height:34px;font-size:1rem}.sprm-money strong{font-size:.88rem !important}.sprm-instruction{margin-top:16px !important;padding:12px !important;gap:10px !important}.sprm-light{width:38px !important;height:38px !important;flex-basis:38px !important;font-size:1rem !important}.sprm-instruction p{font-size:.76rem !important}.sprm-link{font-size:.76rem !important;padding:7px 10px !important}.sprm-footer{font-size:.68rem !important;margin-top:13px !important}
}

/* =========================================================
   SERVICES PAGE - MODERN CATALOG STYLE
   Matches the supplied reference: soft white panel, blue
   category icons, compact search, premium service cards.
   ========================================================= */
.services-page{
  padding:28px 0 86px;
  background:
    radial-gradient(circle at 12% 10%,rgba(8,133,247,.035),transparent 26%),
    linear-gradient(180deg,#f8fbff 0%,#f4f7fa 100%);
  min-height:calc(100vh - 76px);
}
.services-page .container{max-width:1560px}
.services-filter-panel{
  position:relative;
  background:rgba(255,255,255,.97);
  border:1px solid #e2eaf3;
  border-radius:22px;
  padding:18px 28px 16px;
  box-shadow:0 12px 34px rgba(2,19,59,.08);
  margin-bottom:28px;
}
.services-category-grid{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  column-gap:28px;
  row-gap:7px;
  align-items:center;
}
.service-category-btn{
  appearance:none;
  border:0;
  background:transparent;
  color:#171b24;
  min-width:0;
  min-height:48px;
  padding:7px 3px;
  border-radius:13px;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:12px;
  font:600 1rem/1.2 Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
  text-align:left;
  cursor:pointer;
  transition:background .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease;
}
.service-category-btn:hover{color:#0245cb;background:#f3f7ff}
.service-category-btn.active{
  width:max-content;
  min-width:58px;
  justify-content:center;
  padding:10px 18px;
  color:#fff;
  background:linear-gradient(135deg,#1467e8,#0754d9);
  box-shadow:0 9px 18px rgba(2,69,203,.25);
}
.service-category-icon{
  width:27px;
  flex:0 0 27px;
  color:#0868ee;
  font-size:1.48rem;
  text-align:center;
}
.service-category-btn.active .service-category-icon{color:#fff}
.service-category-icon.all-icon{
  width:auto;
  flex:0 0 auto;
  font-size:1rem;
  font-weight:800;
}
.services-search-wrap{
  position:relative;
  width:min(385px,100%);
  margin:8px 0 0 auto;
}
.services-search-wrap>i{
  position:absolute;
  left:17px;
  top:50%;
  transform:translateY(-50%);
  color:#687588;
  font-size:1.2rem;
  pointer-events:none;
}
.services-search{
  width:100%;
  height:52px;
  border:1.5px solid #a9c7f7;
  border-radius:14px;
  background:#fff;
  color:#17233f;
  padding:0 17px 0 50px;
  font-size:1rem;
  outline:none;
  box-shadow:0 2px 7px rgba(2,69,203,.04);
}
.services-search::placeholder{color:#7c8798}
.services-search:focus{border-color:#3c80f5;box-shadow:0 0 0 4px rgba(8,133,247,.1)}
.services-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}
.service-card-modern{
  position:relative;
  overflow:hidden;
  min-height:408px;
  padding:22px 26px 25px;
  border:1px solid #e1e9f2;
  border-radius:20px;
  background:#fff;
  box-shadow:0 9px 28px rgba(2,19,59,.065);
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
.service-card-modern::after{
  content:"";
  position:absolute;
  width:290px;
  height:230px;
  right:-78px;
  bottom:-92px;
  border-radius:50%;
  opacity:.7;
  background:
    repeating-radial-gradient(ellipse at 50% 55%,rgba(8,133,247,.055) 0 2px,transparent 3px 8px),
    radial-gradient(circle at 50% 50%,rgba(8,133,247,.04),transparent 64%);
  pointer-events:none;
}
.service-card-modern:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 42px rgba(1,40,132,.11);
  border-color:#a9c7f7;
}
.service-card-modern.is-featured{border:2px solid #4383ff;box-shadow:0 12px 34px rgba(2,69,203,.12)}
.service-card-modern.is-featured::after{
  width:370px;height:300px;right:-105px;bottom:-115px;opacity:1;
  background:
    repeating-radial-gradient(ellipse at 50% 55%,rgba(8,133,247,.075) 0 2px,transparent 3px 9px),
    repeating-linear-gradient(135deg,transparent 0 24px,rgba(8,133,247,.035) 25px 26px,transparent 27px 46px);
}
.service-card-top{position:relative;z-index:2;display:flex;align-items:flex-start;min-height:68px;gap:10px}
.service-main-icon{width:68px;height:68px;border-radius:16px;background:#eff5ff;color:#0868ee;font-size:1.8rem;box-shadow:inset 0 0 0 1px #e4edff}
.service-status{margin-left:auto;margin-top:8px;display:inline-flex;align-items:center;gap:7px;white-space:nowrap;font-size:.82rem;letter-spacing:.35px}
.status-dot{width:13px;height:13px;border-radius:50%;background:#16a34a;display:inline-block}
.service-status.soon .status-dot{background:#d58a00}.service-status.unavailable .status-dot{background:#64748b}
.popular-badge{
  position:absolute;
  left:50%; top:6px;
  transform:translateX(-50%);
  display:inline-flex;align-items:center;gap:6px;
  background:linear-gradient(135deg,#0756df,#1f6fe9);
  color:#fff;
  border-radius:999px;
  padding:8px 17px;
  font-size:.76rem;
  font-weight:800;
  white-space:nowrap;
  box-shadow:0 8px 18px rgba(2,69,203,.25);
}
.service-card-content{position:relative;z-index:2;padding-top:20px}
.service-card-content h3{margin:0 0 9px;color:#0a2254;font-size:1.43rem;line-height:1.25;letter-spacing:-.45px;font-weight:800}
.service-card-content p{margin:0;color:#66758b;font-size:1rem;line-height:1.58;max-width:95%;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}
.service-card-meta{position:relative;z-index:2;display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin-top:23px}
.service-card-modern .price{font-size:1.48rem;line-height:1.1;color:#075bd8;font-weight:850;letter-spacing:-.4px}
.service-duration{color:#65748a;font-size:.82rem;line-height:1.2;text-align:right;white-space:nowrap}
.service-actions{position:relative;z-index:2;display:flex;gap:16px;align-items:center;margin-top:23px}
.service-action-btn{
  min-height:48px;
  border-radius:10px;
  padding:0 21px;
  display:inline-flex;align-items:center;justify-content:center;gap:12px;
  text-decoration:none!important;
  font-size:.94rem;font-weight:750;
  transition:all .18s ease;
}
.service-action-btn.primary{background:#075bdc;color:#fff;border:1px solid #075bdc;box-shadow:0 5px 12px rgba(2,69,203,.15)}
.service-action-btn.primary:hover{background:#064ec1;border-color:#064ec1;transform:translateY(-1px)}
.service-action-btn.outline{background:#fff;color:#0861d7;border:2px solid #9cbff6}
.service-action-btn.outline:hover{background:#f4f8ff;border-color:#5c94ee}
.service-action-btn.secondary{background:#e9eef5;color:#667085;border:1px solid #d8e0ea;cursor:not-allowed}
.services-empty{margin-top:22px;padding:60px 20px;text-align:center;background:#fff;border:1px solid #e1e9f2;border-radius:20px;box-shadow:0 8px 25px rgba(2,19,59,.05)}
.services-empty i{font-size:2.2rem;color:#0b69ed}.services-empty h3{margin:12px 0 5px;color:#102a5d}.services-empty p{margin:0;color:#6b7788}

@media(max-width:1250px){
  .services-category-grid{grid-template-columns:repeat(5,minmax(0,1fr));column-gap:16px}
  .service-category-btn{font-size:.91rem;gap:8px}
  .service-category-icon{font-size:1.35rem;width:24px;flex-basis:24px}
}
@media(max-width:991.98px){
  .services-page{padding-top:18px}
  .services-filter-panel{padding:16px 18px}
  .services-category-grid{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:10px}
  .services-search-wrap{width:100%;margin-top:12px}
  .services-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
  .service-card-modern{min-height:390px;padding:20px}
}
@media(max-width:650px){
  .services-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .service-category-btn{font-size:.86rem}
  .services-grid{grid-template-columns:1fr}
  .service-card-modern{min-height:0}
  .popular-badge{position:static;transform:none;margin:5px 0 0 auto;order:2}
  .service-status{order:3}
  .service-card-top{flex-wrap:wrap}
  .service-card-content h3{font-size:1.3rem}
  .service-actions{flex-wrap:wrap;gap:10px}
  .service-action-btn{flex:1 1 170px}
}

/* =========================================================
   SERVICES PAGE FINAL OVERRIDE
   Prevents older/global styles from collapsing the catalog.
   ========================================================= */
.services-page .services-filter-panel{
  display:block !important;
  width:100% !important;
  box-sizing:border-box !important;
}
.services-page .services-category-grid{
  display:grid !important;
  grid-template-columns:repeat(6,minmax(0,1fr)) !important;
  gap:7px 28px !important;
  align-items:center !important;
}
.services-page .service-category-btn{
  appearance:none !important;
  -webkit-appearance:none !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  width:100% !important;
  min-width:0 !important;
  min-height:48px !important;
  padding:7px 3px !important;
  margin:0 !important;
  border:0 !important;
  border-radius:13px !important;
  background:transparent !important;
  color:#171b24 !important;
  font:600 1rem/1.2 Inter,system-ui,-apple-system,"Segoe UI",sans-serif !important;
  text-align:left !important;
  box-shadow:none !important;
}
.services-page .service-category-btn:hover{color:#0245cb !important;background:#f3f7ff !important}
.services-page .service-category-btn.active{
  width:max-content !important;
  min-width:58px !important;
  justify-content:center !important;
  padding:10px 18px !important;
  color:#fff !important;
  background:linear-gradient(135deg,#1467e8,#0754d9) !important;
  box-shadow:0 9px 18px rgba(2,69,203,.25) !important;
}
.services-page .service-category-icon{
  width:27px !important;
  flex:0 0 27px !important;
  color:#0868ee !important;
  font-size:1.48rem !important;
  line-height:1 !important;
  text-align:center !important;
}
.services-page .service-category-btn.active .service-category-icon{color:#fff !important}
.services-page .service-category-icon.all-icon{width:auto !important;flex:0 0 auto !important;font-size:1rem !important;font-weight:800 !important}
.services-page .services-search-wrap{
  position:relative !important;
  display:block !important;
  width:min(385px,100%) !important;
  margin:8px 0 0 auto !important;
}
.services-page .services-search{
  display:block !important;
  width:100% !important;
  height:52px !important;
  box-sizing:border-box !important;
  border:1.5px solid #a9c7f7 !important;
  border-radius:14px !important;
  background:#fff !important;
  color:#17233f !important;
  padding:0 17px 0 50px !important;
  font-size:1rem !important;
  outline:none !important;
}
.services-page .services-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:22px !important;
  align-items:stretch !important;
}
.services-page .service-card-modern{
  display:flex !important;
  flex-direction:column !important;
  position:relative !important;
  overflow:hidden !important;
  width:100% !important;
  min-width:0 !important;
  min-height:408px !important;
  box-sizing:border-box !important;
  padding:22px 26px 25px !important;
  margin:0 !important;
  border:1px solid #e1e9f2 !important;
  border-radius:20px !important;
  background:#fff !important;
  box-shadow:0 9px 28px rgba(2,19,59,.065) !important;
}
.services-page .service-card-modern.is-featured{border:2px solid #4383ff !important}
.services-page .service-card-top{display:flex !important;align-items:flex-start !important;min-height:68px !important;gap:10px !important;position:relative !important;z-index:2 !important}
.services-page .service-main-icon{width:68px !important;height:68px !important;flex:0 0 68px !important;border-radius:16px !important;background:#eff5ff !important;color:#0868ee !important;font-size:1.8rem !important;display:flex !important;align-items:center !important;justify-content:center !important}
.services-page .service-status{margin-left:auto !important;margin-top:8px !important;display:inline-flex !important;align-items:center !important;gap:7px !important;white-space:nowrap !important;color:#148a46 !important;font-size:.82rem !important;font-weight:800 !important;letter-spacing:.35px !important}
.services-page .status-dot{width:13px !important;height:13px !important;flex:0 0 13px !important;border-radius:50% !important;background:#16a34a !important;display:inline-block !important}
.services-page .service-card-content{position:relative !important;z-index:2 !important;padding-top:20px !important}
.services-page .service-card-content h3{margin:0 0 9px !important;color:#0a2254 !important;font-size:1.43rem !important;line-height:1.25 !important;font-weight:800 !important}
.services-page .service-card-content p{margin:0 !important;color:#66758b !important;font-size:1rem !important;line-height:1.58 !important;max-width:95% !important;display:-webkit-box !important;-webkit-box-orient:vertical !important;-webkit-line-clamp:4 !important;overflow:hidden !important}
.services-page .service-card-meta{position:relative !important;z-index:2 !important;display:flex !important;align-items:flex-end !important;justify-content:space-between !important;gap:15px !important;margin-top:auto !important;padding-top:23px !important}
.services-page .service-card-modern .price{font-size:1.48rem !important;line-height:1.1 !important;color:#075bd8 !important;font-weight:850 !important}
.services-page .service-duration{color:#65748a !important;font-size:.82rem !important;line-height:1.2 !important;text-align:right !important;white-space:nowrap !important}
.services-page .service-actions{position:relative !important;z-index:2 !important;display:flex !important;gap:16px !important;align-items:center !important;margin-top:23px !important}
.services-page .service-action-btn{min-height:48px !important;border-radius:10px !important;padding:0 21px !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;gap:12px !important;text-decoration:none !important;font-size:.94rem !important;font-weight:750 !important}
.services-page .service-action-btn.primary{background:#075bdc !important;color:#fff !important;border:1px solid #075bdc !important}
.services-page .service-action-btn.outline{background:#fff !important;color:#0861d7 !important;border:2px solid #9cbff6 !important}

@media(max-width:1250px){
  .services-page .services-category-grid{grid-template-columns:repeat(5,minmax(0,1fr)) !important;gap:7px 16px !important}
}
@media(max-width:991.98px){
  .services-page .services-category-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:7px 10px !important}
  .services-page .services-search-wrap{width:100% !important;margin-top:12px !important}
  .services-page .services-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:18px !important}
}
@media(max-width:650px){
  .services-page .services-category-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .services-page .services-grid{grid-template-columns:1fr !important}
  .services-page .service-card-modern{min-height:0 !important}
  .services-page .service-actions{flex-wrap:wrap !important;gap:10px !important}
  .services-page .service-action-btn{flex:1 1 170px !important}
}


/* Services search hardening */
.services-page .service-card-modern.service-search-hidden,
.services-page .service-card-modern[hidden] {
  display: none !important;
}
.services-page .services-search {
  pointer-events: auto !important;
  user-select: text !important;
  -webkit-user-select: text !important;
  cursor: text !important;
  position: relative !important;
  z-index: 5 !important;
}
.services-page .services-search-wrap {
  z-index: 20 !important;
}


/* =========================================================
   HOME PAGE - OUR SERVICES / FLASH SALE DESIGN
   ========================================================= */
.home-services-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;align-items:stretch}
.home-service-col{min-width:0}
.home-service-card{position:relative;height:100%;min-height:470px;background:#fff;border:1px solid #dce7f1;border-radius:24px;overflow:hidden;box-shadow:0 12px 35px rgba(2,19,59,.07);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;display:flex;flex-direction:column}
.home-service-card:hover{transform:translateY(-8px);border-color:#8db4ed;box-shadow:0 24px 55px rgba(2,19,59,.13)}
.home-service-card.is-flash-sale{border:2px solid #f4c542;box-shadow:0 14px 38px rgba(245,190,35,.16)}
.home-service-card.is-flash-sale:hover{border-color:#e5ad19;box-shadow:0 26px 58px rgba(245,190,35,.22)}
.home-sale-banner{height:62px;padding:0 18px 0 20px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:linear-gradient(135deg,#082d78 0%,#075bd8 58%,#0b75e8 100%);color:#fff}
.home-sale-banner span{display:flex;align-items:center;gap:8px;font-size:.9rem;font-weight:950;letter-spacing:.07em}
.home-sale-banner span i{color:#ffd43b;font-size:1.15rem}
.home-sale-banner strong{display:inline-flex;align-items:center;justify-content:center;min-width:72px;padding:8px 11px;border-radius:999px;background:#ffd43b;color:#092d70;font-size:.78rem;font-weight:950;box-shadow:0 4px 12px rgba(0,0,0,.14)}
.home-service-body{padding:25px;display:flex;flex-direction:column;flex:1}
.home-service-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:18px}
.home-service-icon{width:58px;height:58px;border-radius:17px;display:grid;place-items:center;background:#edf5ff;color:#0868ee;font-size:1.55rem;box-shadow:inset 0 0 0 1px #dceaff}
.home-service-status{white-space:nowrap;color:#159447;font-size:.7rem;font-weight:850;letter-spacing:.04em}
.home-service-status i{font-size:.45rem;vertical-align:middle;margin-right:4px}
.home-service-category{font-size:.67rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase;color:#64748b;margin-bottom:7px}
.home-service-card h3{margin:0 0 10px;color:#0b2b68;font-size:1.23rem;font-weight:900;line-height:1.25;letter-spacing:-.25px}
.home-service-card p{margin:0;color:#66758b;font-size:.88rem;line-height:1.55;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;min-height:82px}
.home-service-price{margin-top:auto;padding-top:20px}
.home-sale-label{display:inline-flex;align-items:center;margin-bottom:5px;color:#d79b00;font-size:.72rem;font-weight:950;letter-spacing:.08em}
.home-original-price{text-decoration:line-through;color:#7b8798;font-size:.88rem;font-weight:650;line-height:1.2}
.home-sale-price{color:#075bd8;font-size:1.85rem;font-weight:950;letter-spacing:-.6px;line-height:1.15;margin-top:2px}
.home-savings{display:inline-flex;margin-top:8px;padding:6px 9px;border-radius:8px;background:#fff7d6;border:1px solid #f6df82;color:#9a6b00;font-size:.67rem;font-weight:900;line-height:1.2}
.home-regular-label{color:#64748b;font-size:.68rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px}
.home-regular-price{color:#075bd8;font-size:1.85rem;font-weight:950;line-height:1.15}
.home-service-actions{display:flex;gap:9px;margin-top:20px}
.home-service-btn{min-height:42px;border-radius:11px;padding:9px 12px;display:inline-flex;align-items:center;justify-content:center;gap:7px;text-decoration:none;font-size:.78rem;font-weight:850;transition:.2s ease;flex:1}
.home-service-btn-primary{background:#075bd8;color:#fff;border:1px solid #075bd8;box-shadow:0 7px 16px rgba(7,91,216,.18)}
.home-service-btn-primary:hover{background:#064ec1;color:#fff;transform:translateY(-1px)}
.home-service-btn-outline{background:#fff;color:#075bd8;border:1px solid #b8cef0}
.home-service-btn-outline:hover{background:#f2f7ff;color:#064ec1;border-color:#7fa7e7}
.home-service-card.is-flash-sale .home-service-btn-primary{background:linear-gradient(135deg,#075bd8,#0b75e8)}
@media(max-width:1199px){.home-services-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:991px){.home-services-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.home-service-card{min-height:455px}}
@media(max-width:575px){.home-services-grid{grid-template-columns:1fr}.home-service-card{min-height:0}.home-service-body{padding:22px}.home-service-card p{min-height:auto}}


/* =========================================================
   HOME OUR SERVICES - CACHE-SAFE FINAL DESIGN
   ========================================================= */
.home-services-grid{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:24px !important;
  align-items:stretch !important;
  margin-top:8px !important;
}
.home-service-col{min-width:0 !important;display:flex !important;}
.home-service-card{
  position:relative !important;width:100% !important;height:100% !important;min-height:545px !important;
  display:flex !important;flex-direction:column !important;overflow:hidden !important;
  background:#fff !important;border:2px solid #b9d8f5 !important;border-radius:22px !important;
  box-shadow:0 14px 38px rgba(2,19,59,.08) !important;
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease !important;
}
.home-service-card:hover{transform:translateY(-7px) !important;box-shadow:0 24px 55px rgba(2,19,59,.14) !important;border-color:#f2c94c !important;}
.home-service-card.is-flash-sale{border:2px solid #b9d8f5 !important;box-shadow:0 14px 38px rgba(2,19,59,.08) !important;}
.home-service-card.is-flash-sale:hover{border-color:#f2c94c !important;box-shadow:0 24px 55px rgba(2,19,59,.14) !important;}
.home-sale-banner{
  min-height:58px !important;height:58px !important;padding:0 18px !important;
  display:flex !important;align-items:center !important;justify-content:space-between !important;gap:10px !important;
  background:linear-gradient(135deg,#05296e 0%,#075bd8 68%,#0b78ee 100%) !important;color:#fff !important;
}
.home-sale-banner span{display:flex !important;align-items:center !important;gap:8px !important;font-size:.86rem !important;font-weight:900 !important;letter-spacing:.04em !important;}
.home-sale-banner span i{color:#ffd43b !important;font-size:1.1rem !important;}
.home-sale-banner strong{display:inline-flex !important;align-items:center !important;justify-content:center !important;padding:7px 11px !important;border-radius:999px !important;background:#ffd43b !important;color:#082d70 !important;font-size:.72rem !important;font-weight:900 !important;white-space:nowrap !important;}
.home-service-body{display:flex !important;flex-direction:column !important;flex:1 !important;padding:24px !important;}
.home-service-top{display:flex !important;align-items:center !important;justify-content:space-between !important;gap:10px !important;margin-bottom:17px !important;}
.home-service-icon{width:54px !important;height:54px !important;flex:0 0 54px !important;border-radius:15px !important;display:grid !important;place-items:center !important;background:#eef5ff !important;color:#075bd8 !important;font-size:1.4rem !important;box-shadow:inset 0 0 0 1px #d9e7fb !important;}
.home-service-status{display:inline-flex !important;align-items:center !important;white-space:nowrap !important;color:#159447 !important;font-size:.7rem !important;font-weight:850 !important;letter-spacing:.03em !important;}
.home-service-status i{font-size:.42rem !important;margin-right:5px !important;}
.home-service-category{font-size:.68rem !important;font-weight:850 !important;letter-spacing:.08em !important;text-transform:uppercase !important;color:#718096 !important;margin-bottom:7px !important;}
.home-service-card h3{margin:0 0 10px !important;color:#0a2558 !important;font-size:1.24rem !important;font-weight:850 !important;line-height:1.28 !important;letter-spacing:-.25px !important;}
.home-service-card p{margin:0 !important;color:#63748a !important;font-size:.87rem !important;line-height:1.55 !important;display:-webkit-box !important;-webkit-line-clamp:4 !important;-webkit-box-orient:vertical !important;overflow:hidden !important;min-height:82px !important;}
.home-service-price{margin-top:auto !important;padding-top:20px !important;border-top:1px solid #edf1f6 !important;}
.home-sale-label{display:block !important;color:#d39b00 !important;font-size:.72rem !important;font-weight:950 !important;letter-spacing:.08em !important;margin-bottom:5px !important;}
.home-original-price{text-decoration:line-through !important;color:#8793a3 !important;font-size:.86rem !important;font-weight:650 !important;line-height:1.2 !important;}
.home-sale-price{color:#075bd8 !important;font-size:1.8rem !important;font-weight:950 !important;line-height:1.15 !important;margin-top:3px !important;}
.home-savings{display:inline-flex !important;margin-top:8px !important;padding:6px 9px !important;border-radius:8px !important;background:#fff8d9 !important;border:1px solid #f2df91 !important;color:#946800 !important;font-size:.66rem !important;font-weight:900 !important;line-height:1.2 !important;}
.home-regular-label{color:#718096 !important;font-size:.68rem !important;font-weight:850 !important;letter-spacing:.08em !important;text-transform:uppercase !important;margin-bottom:5px !important;}
.home-regular-price{color:#075bd8 !important;font-size:1.8rem !important;font-weight:950 !important;line-height:1.15 !important;}
.home-service-actions{display:flex !important;gap:9px !important;margin-top:20px !important;}
.home-service-btn{min-height:43px !important;border-radius:10px !important;padding:9px 11px !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;gap:6px !important;text-decoration:none !important;font-size:.76rem !important;font-weight:850 !important;transition:.2s ease !important;flex:1 1 0 !important;}
.home-service-btn-primary{background:#075bd8 !important;color:#fff !important;border:1px solid #075bd8 !important;box-shadow:0 7px 16px rgba(7,91,216,.17) !important;}
.home-service-btn-primary:hover{background:#064ec1 !important;color:#fff !important;transform:translateY(-1px) !important;}
.home-service-btn-outline{background:#fff !important;color:#075bd8 !important;border:1px solid #b8cef0 !important;}
.home-service-btn-outline:hover{background:#f2f7ff !important;color:#064ec1 !important;border-color:#7fa7e7 !important;}
@media(max-width:1199px){.home-services-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}}
@media(max-width:991px){.home-services-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:18px !important;}.home-service-card{min-height:520px !important;}}
@media(max-width:575px){.home-services-grid{grid-template-columns:1fr !important;}.home-service-card{min-height:0 !important;}.home-service-body{padding:21px !important;}.home-service-card p{min-height:auto !important;}}


/* FINAL CLIENT AUTHENTICATION UI */
.auth-layout{background:linear-gradient(135deg,#f4f8ff 0%,#edf5ff 48%,#f8fbff 100%);min-height:100vh}
.auth-layout #sontech-chatbot{display:none!important}
.auth-page{min-height:100vh;padding:36px 18px;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 8% 88%,#0a63e818 0 2px,transparent 3px),radial-gradient(circle at 92% 58%,#0a63e818 0 2px,transparent 3px),linear-gradient(135deg,#f4f8ff 0%,#edf5ff 48%,#f8fbff 100%);background-size:18px 18px,18px 18px,auto}
.auth-shell{width:100%;max-width:700px;margin:0 auto}
.auth-card{width:100%;max-width:none;margin:0;background:rgba(255,255,255,.98);border:1px solid #d8e5f5;border-radius:28px;padding:34px 40px 30px;box-shadow:0 24px 70px rgba(2,19,59,.10)}
.auth-card-login{max-width:590px}.auth-card-register{max-width:700px}
.auth-brand{margin-bottom:8px}.auth-logo{width:250px;height:72px;object-fit:contain;margin:0 auto;display:block}
.auth-heading{margin:2px 0 28px}.auth-heading-icon{width:56px;height:56px;margin:0 auto 10px;border-radius:50%;display:grid;place-items:center;border:1px solid #bdd5f8;background:#f1f7ff;color:#1264e8;font-size:1.55rem}.auth-heading h1{margin:0;color:#0b4fc5!important;font-size:2rem;font-weight:850;letter-spacing:-.8px}.auth-heading p{margin:5px 0 0;color:#54585c;font-size:1rem}
.auth-form .form-label{display:block;color:#071b47;font-weight:600;margin:0 0 7px}.auth-input-wrap{position:relative;margin-bottom:16px}.auth-input-wrap>i:first-child{position:absolute;left:17px;top:50%;transform:translateY(-50%);z-index:2;color:#1769e8;font-size:1.05rem;pointer-events:none}.auth-input-wrap .form-control{height:54px;padding:0 45px 0 45px;border:1px solid #c8daf0;border-radius:11px;background:#fff;color:#102143}.auth-input-wrap .form-control::placeholder{color:#6b7a90}.auth-input-wrap .form-control:focus{border-color:#4a8cf0;box-shadow:0 0 0 3px rgba(74,140,240,.12)}
.auth-password-toggle{position:absolute;right:12px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:#5f728f;padding:8px;line-height:1;z-index:3}.auth-password-toggle:hover{color:#1769e8}
.auth-options{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:2px 0 22px;font-size:.88rem}.auth-options a,.auth-bottom-link a{color:#0865e8!important;font-weight:650;text-decoration:none}.auth-options a:hover,.auth-bottom-link a:hover{text-decoration:underline}.auth-remember{display:flex;align-items:center;gap:8px;margin:0;color:#263b5c}.auth-remember .form-check-input{margin:0;width:19px;height:19px;border-color:#bfd0e5}.auth-remember .form-check-input:checked{background-color:#1264e8;border-color:#1264e8}
.auth-primary-btn{height:54px;border-radius:11px;font-size:1.05rem;font-weight:650;display:flex;align-items:center;justify-content:center;gap:9px;background:#064ed2;border-color:#064ed2;box-shadow:none}.auth-primary-btn:hover{background:#096ef0;border-color:#096ef0}
.auth-social-divider{margin:24px 0 16px}.auth-social-divider span{font-size:.82rem;color:#71819a}
.btn-google{height:54px!important;min-height:54px!important;border-radius:11px!important;border:1px solid #cbdcf0!important;background:#fff!important;color:#202124!important;font-size:1rem!important;font-weight:600!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:12px!important;text-decoration:none!important;box-shadow:none!important;transform:none!important}.btn-google:hover,.btn-google:focus{background:#fbfdff!important;border-color:#9dbce8!important;color:#174ea6!important;box-shadow:0 4px 14px rgba(66,133,244,.12)!important;transform:translateY(-1px)!important}.google-g-mark,.google-g-mark svg{width:22px!important;height:22px!important;min-width:22px!important;max-width:22px!important;min-height:22px!important;max-height:22px!important;display:block!important;flex:0 0 22px!important}.google-g-mark svg{overflow:visible!important}
.auth-bottom-link{margin:26px 0 0;color:#54585c;font-size:.95rem}.auth-alert{border-radius:11px;font-size:.88rem;margin-bottom:18px}.auth-card-register .auth-heading{margin-bottom:24px}.auth-card-register .auth-input-wrap{margin-bottom:0}.auth-card-register .auth-social-divider{margin-top:18px}.auth-card-register .form-check{display:flex;align-items:flex-start;gap:9px;margin:0}.auth-card-register .form-check-input{margin:3px 0 0;flex:0 0 auto}.auth-card-register .form-check-label{color:#566579;font-size:.87rem;line-height:1.45}.auth-card-register .form-check-label a{color:#0865e8;font-weight:700}.auth-card-register .row{--bs-gutter-y:14px}
@media(max-width:767px){.auth-page{padding:22px 12px}.auth-card{padding:28px 20px 24px;border-radius:22px}.auth-logo{width:220px;height:64px}.auth-heading h1{font-size:1.8rem}.auth-heading-icon{width:50px;height:50px;font-size:1.4rem}.auth-options{font-size:.82rem}.auth-card-register .row>.col-md-6{width:100%}}
@media(max-width:430px){.auth-card{padding:24px 16px 22px}.auth-logo{width:200px}.auth-heading{margin-bottom:22px}.auth-input-wrap .form-control{height:52px}.btn-google,.auth-primary-btn{height:52px!important}.auth-options{align-items:flex-start;flex-direction:column;gap:8px}}

/* Client dashboard: compact red Payment Unsuccessful status */
.payment-status-payment-unsuccessful {
    color: #dc2626 !important;
    font-size: .72rem !important;
    font-weight: 700;
    line-height: 1.2;
    white-space: nowrap;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
}
.payment-status-payment-unsuccessful .payment-status-dot {
    width: 8px;
    height: 8px;
    flex: 0 0 8px;
    background: #dc2626;
    box-shadow: 0 0 0 2px rgba(220,38,38,.12);
}

/* Final override: Payment Unsuccessful must always be compact red on Client Dashboard */
.payment-status.payment-status-payment-unsuccessful {
    color: #dc2626 !important;
    font-size: .72rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: 0 !important;
    white-space: nowrap !important;
}
.payment-status.payment-status-payment-unsuccessful .payment-status-dot {
    width: 8px !important;
    height: 8px !important;
    min-width: 8px !important;
    max-width: 8px !important;
    flex: 0 0 8px !important;
    background: #dc2626 !important;
    box-shadow: 0 0 0 2px rgba(220,38,38,.12) !important;
}

/* SonTech professional confirmation modal - shared by client and admin */
.sontech-confirm-overlay{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(7,20,42,.58);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility .2s ease}
.sontech-confirm-overlay.show{opacity:1;visibility:visible;pointer-events:auto}
.sontech-confirm-modal{position:relative;width:min(455px,calc(100vw - 30px));background:#fff;border:1px solid rgba(15,59,110,.1);border-radius:22px;box-shadow:0 28px 90px rgba(2,19,59,.28);padding:30px 30px 24px;transform:translateY(14px) scale(.97);transition:transform .2s ease}
.sontech-confirm-overlay.show .sontech-confirm-modal{transform:translateY(0) scale(1)}
.sontech-confirm-close{position:absolute;right:16px;top:16px;width:34px;height:34px;border:0;border-radius:50%;background:#f3f6fa;color:#718096;display:grid;place-items:center;cursor:pointer;font-size:13px}
.sontech-confirm-close:hover{background:#e8eef6;color:#173b70}
.sontech-confirm-icon{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:#fff4e5;color:#d97706;font-size:24px;margin-bottom:18px}
.sontech-confirm-modal.danger .sontech-confirm-icon{background:#fff0f1;color:#dc2626}
.sontech-confirm-modal.info .sontech-confirm-icon{background:#edf5ff;color:#2563eb}
.sontech-confirm-eyebrow{font-size:10px;font-weight:800;letter-spacing:.12em;color:#6b84a4;margin-bottom:6px}
.sontech-confirm-content h3{font-size:21px;font-weight:800;color:#102a4f;margin:0 36px 8px 0}
.sontech-confirm-content p{font-size:14px;line-height:1.6;color:#66768c;margin:0;white-space:pre-line}
.sontech-confirm-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:25px}
.sontech-confirm-actions button{border:0;border-radius:11px;padding:10px 16px;font-size:13px;font-weight:750;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}
.sontech-confirm-actions button:hover{transform:translateY(-1px)}
.sontech-confirm-cancel{background:#eef3f8;color:#334e70}
.sontech-confirm-cancel:hover{background:#e3eaf2}
.sontech-confirm-ok{display:inline-flex;align-items:center;gap:7px;background:#1769aa;color:#fff;box-shadow:0 7px 18px rgba(23,105,170,.2)}
.sontech-confirm-ok:hover{background:#125a93}
.sontech-confirm-modal.danger .sontech-confirm-ok{background:#dc2626;box-shadow:0 7px 18px rgba(220,38,38,.2)}
.sontech-confirm-modal.danger .sontech-confirm-ok:hover{background:#b91c1c}
.sontech-confirm-actions button:focus-visible{outline:3px solid rgba(37,99,235,.2);outline-offset:2px}
body.sontech-confirm-open{overflow:hidden}
@media(max-width:480px){.sontech-confirm-modal{padding:25px 20px 20px;border-radius:18px}.sontech-confirm-actions{flex-direction:column-reverse}.sontech-confirm-actions button{width:100%;justify-content:center}}

/* Final confirmation-dialog overrides */
#sontechConfirmOverlay.sontech-confirm-overlay{display:flex!important;position:fixed!important;inset:0!important;z-index:2147483000!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;background:rgba(7,20,42,.58)!important;backdrop-filter:blur(7px)!important;-webkit-backdrop-filter:blur(7px)!important}
#sontechConfirmOverlay.sontech-confirm-overlay.show{display:flex!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important}
#sontechConfirmOverlay .sontech-confirm-modal{display:block!important;visibility:visible!important;opacity:1!important;width:min(455px,calc(100vw - 30px))!important;background:#fff!important;border-radius:22px!important;padding:30px 30px 24px!important}
#sontechConfirmOverlay .sontech-confirm-modal.danger .sontech-confirm-ok{background:#dc2626!important;color:#fff!important}
#sontechConfirmOverlay .sontech-confirm-modal.warning .sontech-confirm-ok{background:#1769aa!important;color:#fff!important}
#sontechConfirmOverlay .sontech-confirm-actions{display:flex!important;justify-content:flex-end!important;gap:10px!important}

/* Request a Service - screenshot-matched form */
.request-service-page{background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);padding:38px 0 70px;min-height:calc(100vh - 76px)}
.request-service-container{max-width:980px}
.request-page-heading{padding:0 0 28px 0}.request-page-heading h1{margin:0 0 8px;font-size:2.15rem;line-height:1.2;font-weight:850;letter-spacing:-.8px;color:#07183f}.request-page-heading p{margin:0;color:#5f6d80;font-size:.95rem}
.request-form-card{background:rgba(255,255,255,.96);border:1px solid #dce7f2;border-radius:16px;padding:24px 28px 20px;box-shadow:0 12px 35px rgba(2,19,59,.08)}
.request-section-head{display:flex;align-items:center;gap:18px;margin-bottom:24px}.request-section-icon{width:52px;height:52px;flex:0 0 52px;border-radius:50%;display:grid;place-items:center;background:#eaf3ff;color:#0b65e8;font-size:1.35rem}.request-section-head h2{font-size:1rem;font-weight:850;color:#102044;margin:0 0 7px;letter-spacing:.05px}.request-section-head p{margin:0;color:#617087;font-size:.82rem}.request-section-rule{width:27px;height:2px;background:#1875ec;margin-bottom:5px}
.request-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 28px}.request-full{grid-column:1/-1}.request-field label{display:block;font-size:.78rem;font-weight:750;color:#10244d;margin:0 0 7px}.request-field label span{color:#0b65e8}.request-input,.request-textarea{position:relative;display:flex;align-items:center;border:1px solid #d5e0eb;background:#fff;border-radius:11px;min-height:46px;transition:border-color .18s,box-shadow .18s}.request-input:focus-within,.request-textarea:focus-within{border-color:#3d8bf2;box-shadow:0 0 0 3px rgba(8,133,247,.08)}.request-input>i:first-child,.request-textarea>i:first-child{width:45px;align-self:stretch;display:grid;place-items:center;color:#536175;border-right:1px solid #edf1f5;flex:0 0 45px}.request-input input,.request-input select{border:0;outline:0;width:100%;height:44px;padding:0 13px;background:transparent;color:#29313d;font-size:.79rem;min-width:0}.request-input input::placeholder{color:#98a4b4}.request-input select{appearance:none;padding-right:40px;cursor:pointer}.request-chevron{position:absolute!important;right:13px;width:auto!important;border:0!important;color:#253247!important;pointer-events:none}.request-textarea{align-items:flex-start;min-height:112px}.request-textarea textarea{border:0;outline:0;resize:none;width:100%;min-height:110px;padding:13px 14px;background:transparent;font-size:.79rem;color:#29313d}.request-textarea textarea::placeholder{color:#98a4b4}.request-textarea small{position:absolute;right:12px;bottom:8px;color:#67758a;font-size:.68rem}.request-help{font-size:.69rem;color:#748196;margin-top:5px}.request-divider{height:1px;background:#e1e8f0;margin:25px 0 17px}.payment-head{margin-bottom:22px}.payment-requirement{display:flex;align-items:center;gap:12px;background:#edf5ff;border:1px solid #bdd8ff;border-radius:6px;padding:11px 13px;margin-bottom:20px;color:#173c76}.payment-requirement>i{font-size:1.35rem;color:#5e9df5}.payment-requirement strong,.payment-requirement span{display:block;font-size:.71rem}.payment-requirement strong{font-weight:800;color:#1751a7;margin-bottom:1px}.payment-requirement span{color:#506581}.payment-grid{gap:20px 28px}.payment-percent-field{grid-column:1}.request-percent{max-width:100%}.request-percent input{padding-right:8px}.request-percent>span{height:44px;display:grid;place-items:center;width:38px;border-left:1px solid #e0e7ef;color:#66758a;font-weight:700;font-size:.8rem;flex:0 0 38px}.payment-summary{margin-top:18px;border:1px solid #a9cfff;background:#eef6ff;border-radius:7px;padding:18px 16px;display:grid;grid-template-columns:1fr 1px 1fr;gap:28px;align-items:center}.payment-summary>div:not(.summary-separator){min-width:0}.payment-summary span{display:block;color:#1554b4;font-size:.7rem;font-weight:800;margin-bottom:2px}.payment-summary strong{display:block;color:#0758c9;font-size:1.15rem;font-weight:850;line-height:1.35}.payment-summary small{display:block;color:#61718a;font-size:.68rem;margin-top:3px}.summary-separator{height:52px;background:#bdd0e6}.old-price{text-decoration:line-through;color:#7a8797;font-size:.78rem;margin-right:5px}.sale-badge{font-size:.62rem;background:#0b65e8;color:#fff;border-radius:5px;padding:3px 5px;margin-left:4px;vertical-align:middle}.payment-instructions{margin-top:14px;white-space:pre-line;font-size:.74rem;color:#4f6076}.payment-qr-wrap{margin-top:14px}.payment-qr-label{font-size:.73rem;font-weight:800;color:#536175;margin-bottom:7px}.payment-qr-label i{color:#0b65e8}.request-payment-image-card{display:flex;justify-content:center;align-items:center;padding:14px;background:#fff;border:1px solid #d9e2ec;border-radius:11px;overflow:hidden}.request-payment-image{display:block;width:100%;max-width:430px;max-height:460px;object-fit:contain;border-radius:8px}.request-submit{margin-top:18px;width:100%;height:43px;border:0;border-radius:7px;background:#1260e3;color:#fff;font-size:.83rem;font-weight:800;box-shadow:0 5px 12px rgba(18,96,227,.16);transition:.18s}.request-submit:hover{background:#0b53cb;transform:translateY(-1px)}.request-submit i{margin-right:7px}.request-submit-note{text-align:center;color:#6c7a8e;font-size:.7rem;margin:6px 0 0}.request-success-card{display:flex;gap:18px;align-items:flex-start;background:#fff;border:1px solid #cde5d6;border-radius:16px;padding:24px;box-shadow:0 12px 35px rgba(2,19,59,.07)}.request-success-card h3{margin:0 0 4px;color:#0c5b2d}.request-success-card p{margin:2px 0;color:#5e6c7c;font-size:.85rem}
@media(max-width:767px){.request-service-page{padding:26px 0 45px}.request-service-container{padding-left:14px;padding-right:14px}.request-page-heading h1{font-size:1.8rem}.request-form-card{padding:20px 16px}.request-grid{grid-template-columns:1fr;gap:18px}.request-full,.payment-percent-field{grid-column:1}.payment-summary{grid-template-columns:1fr;gap:14px}.summary-separator{height:1px;width:100%}.request-section-head{gap:12px}.request-section-icon{width:46px;height:46px;flex-basis:46px;font-size:1.15rem}}

/* SONTECH Assistant styles are isolated in assets/css/chatbot.css */
