:root{color-scheme:light dark;--nc-bg:#f3f6fa;--nc-card:#fff;--nc-text:#173149;--nc-muted:#64768a;--nc-border:#dde6ef;--nc-accent:#087ea8}
body,.portal{background:var(--nc-bg);color:var(--nc-text)}button,a,input,select,textarea{touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #20a7d0;outline-offset:4px}.side{background:linear-gradient(165deg,#0c263c,#081a2a);padding:28px 18px}.side .brand{border:0;background:transparent;text-align:left;cursor:pointer;padding:0;color:#fff}.brand-mark{background:transparent;box-shadow:none;width:42px;height:48px}.brand-mark img{width:40px;height:44px}.side nav{margin-top:44px;gap:8px}.nav-item{min-height:46px;font-weight:550;font-size:14px}.nav-item.active{background:rgba(43,156,203,.17);box-shadow:inset 3px 0 #27b6dd;color:#fff}.nav-item svg{width:19px;height:19px;flex:none;stroke-width:1.6}.top{background:var(--nc-card);border-color:var(--nc-border)}.top-title{color:var(--nc-text);font-weight:650}.top-subtitle{color:var(--nc-muted)}.top-inner{min-height:78px}.top-actions button{width:40px;height:40px;background:var(--nc-bg);color:var(--nc-accent);border:1px solid var(--nc-border)}.notification-button svg{width:19px;height:19px}.main{padding:32px 40px 52px}.wrap{max-width:1200px}.client-hero{position:relative;isolation:isolate;overflow:hidden;display:flex;justify-content:space-between;align-items:center;gap:28px;padding:36px 38px;border-radius:22px;color:#fff;background:linear-gradient(115deg,#102f48,#0b253b 70%,#104c63);box-shadow:0 12px 40px #071b2d13;margin-bottom:24px}.client-hero:after{content:"";position:absolute;z-index:-1;right:-60px;top:-95px;width:360px;height:360px;border-radius:50%;border:1px solid #4bb9db25;box-shadow:0 0 0 40px #4bb9db09,0 0 0 85px #4bb9db06}.client-hero .eyebrow{font-size:11px;letter-spacing:.14em;color:#79cbea;margin:0 0 14px}.client-hero h1{font-size:clamp(26px,3vw,38px);line-height:1.15;font-weight:550;letter-spacing:-.045em;margin:0 0 12px;color:#fff}.client-hero p{margin:0;color:#bacddd;line-height:1.6;font-size:14px;max-width:500px}.client-hero .hero-assurance{display:flex;align-items:center;gap:7px;font-size:11px;margin-top:22px;color:#8dd6c2}.hero-assurance svg{width:15px;height:15px}.client-hero .new-request{flex:none;height:44px;color:#fff;border:1px solid #78c8e35c;background:#ffffff0e;backdrop-filter:blur(10px);font-weight:550;white-space:nowrap}.new-request{font-weight:600;background:#125b79}.new-request svg{width:17px;height:17px;vertical-align:middle;margin-right:6px}.client-quick-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:0 0 26px}.client-action{display:flex;align-items:center;gap:14px;min-height:104px;border:1px solid var(--nc-border);border-radius:17px;background:var(--nc-card);padding:19px;text-align:left;color:var(--nc-text);transition:border-color .18s,transform .18s}.client-action:hover{border-color:#42a2c2;transform:translateY(-2px)}.client-action>svg{width:26px;height:26px;flex:none;stroke:#228cad;stroke-width:1.6}.client-action span{display:grid;gap:6px}.client-action strong{font-size:14px;font-weight:650}.client-action small{font-size:12px;color:var(--nc-muted);line-height:1.45}.client-action.fault>svg{stroke:#ae7727}.metric-grid{gap:14px;margin-bottom:30px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.metric-card{width:100%;text-align:left;color:var(--nc-text);background:var(--nc-card);border:1px solid var(--nc-border);border-radius:17px;padding:20px;box-shadow:none}.metric-card strong{color:var(--nc-text);font-size:24px;font-weight:550}.metric-card span{color:var(--nc-muted);font-size:11px;letter-spacing:.06em}.metric-card p{font-size:12px;color:var(--nc-muted)}button.metric-card:hover{border-color:#42a2c2}.section-head h2{font-size:20px;font-weight:600;color:var(--nc-text)}.section-head .eyebrow{font-size:11px;letter-spacing:.1em}.white-card,.record-card,.metric-card,.modal,.account-detail,.notification-item{background:var(--nc-card);border-color:var(--nc-border)}.white-card{padding:22px;border-radius:18px}.white-card h3,.record-top h3,.view-header h1,.profile-modal h2,.modal h2,.account-detail dd,.notification-item h3{color:var(--nc-text)}.record-card{border-radius:13px;padding:16px;box-shadow:none}.record-card.clickable:hover{background:var(--nc-bg);box-shadow:none}.record-meta,.record-note,.muted,.view-subtitle,.notification-item p{color:var(--nc-muted)}.record-top h3{font-size:14px;font-weight:600}.record-note{font-size:13px}.empty{background:var(--nc-bg);border-color:var(--nc-border);color:var(--nc-muted);min-height:110px}.lower{margin-top:0}.small-button,.secondary{color:var(--nc-accent);border-color:var(--nc-border);background:var(--nc-card)}.view-header{margin-bottom:28px}.view-header h1{font-weight:550;font-size:30px}.modal{border:1px solid var(--nc-border)}.fields label{color:var(--nc-text)}.fields input,.fields textarea,.portal select{background:var(--nc-bg);color:var(--nc-text);border-color:var(--nc-border)}.modal-note,.request-upload,.profile-hero{background:var(--nc-bg);color:var(--nc-muted);border-color:var(--nc-border)}.client-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.client-section-heading button{border:0;background:transparent;color:var(--nc-accent);font-size:12px;padding:5px}.top-refresh svg{width:17px;height:17px}.top-refresh:disabled{opacity:.45}.client-footer{margin-top:28px;padding-top:18px;border-top:1px solid var(--nc-border);color:var(--nc-muted);font-size:11px;letter-spacing:.06em;display:flex;justify-content:space-between;gap:16px}.notification-badge{border-color:var(--nc-card)}
@media(prefers-color-scheme:dark){:root{--nc-bg:#0a1623;--nc-card:#112233;--nc-text:#dfebf6;--nc-muted:#94aabe;--nc-border:#253a4d;--nc-accent:#6dc7e9}.side{background:linear-gradient(165deg,#0b2031,#071521)}.client-hero{background:linear-gradient(115deg,#16354e,#0c263c 70%,#104457);box-shadow:none}.white-card,.record-card,.modal{box-shadow:none}.access-form{background:var(--nc-bg)}.card{background:var(--nc-card);border-color:var(--nc-border)}.card h2,.card-eyebrow,.card-copy,.notice,.account-details,.system-detail strong{color:var(--nc-text)}.card-copy,.notice{color:var(--nc-muted)}.card .fields input,.card .fields textarea{color:var(--nc-text);background:var(--nc-bg);border-color:var(--nc-border)}.status-received,.status-in_review{color:#8dd0f2;background:#15364c}.status-resolved,.status-closed{color:#95d8b8;background:#173a32}.notification-item.unread{background:#173247;border-color:#2b6683}.timeline-item{border-color:var(--nc-border)}.message.success,.profile-status.success{background:#16392d;color:#a0dfbd}.message.error,.profile-status.error{background:#3b2329;color:#f1b1b1}.system-detail div{background:var(--nc-bg);border-color:var(--nc-border)}}
@media(max-width:900px){.client-hero{padding:28px}.client-quick-actions{gap:10px}.client-action{padding:16px;gap:10px}.client-action small{font-size:11px}}
@media(max-width:700px){.main{margin-left:0;padding:18px 16px 96px}.top{margin-left:0}.top-inner{padding:0 18px;min-height:66px}.client-hero{padding:25px 22px;align-items:flex-start;flex-direction:column;gap:24px;border-radius:18px;margin-bottom:16px}.client-hero h1{font-size:29px}.client-hero .hero-assurance{margin-top:16px}.client-hero .new-request{align-self:flex-start}.client-quick-actions{grid-template-columns:1fr;margin-bottom:20px;gap:8px}.client-action{min-height:74px;padding:14px 18px;border-radius:14px}.client-action span{gap:4px}.client-action small{font-size:12px}.client-action>svg{width:23px;height:23px}.metric-grid{gap:8px;margin-bottom:24px;grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}.metric-card{padding:15px;border-radius:14px}.metric-card strong{font-size:21px}.mobile-nav{position:fixed;inset:auto 0 0;z-index:5;display:flex;gap:2px;justify-content:space-around;padding:9px 7px calc(9px + env(safe-area-inset-bottom));background:var(--nc-card);border-top:1px solid var(--nc-border);overflow:auto}.mobile-nav .nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:48px;width:auto;min-width:57px;padding:5px;color:var(--nc-muted);font-size:10px;font-weight:550;border-radius:10px}.mobile-nav .nav-item.active{box-shadow:none;color:var(--nc-accent);background:var(--nc-bg)}.mobile-nav .nav-item svg{width:19px;height:19px}.lower{grid-template-columns:1fr}.client-footer{font-size:10px}.view-header h1{font-size:27px}.view-header{align-items:start}.view-header .new-request{padding:0 11px;font-size:12px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
