:root{color-scheme:light;font-family:Segoe UI Variable,Segoe UI,system-ui,sans-serif;--ink: #101828;--ink-2: #344054;--muted: #475467;--subtle: #596579;--canvas: #f7f9fc;--surface: #fff;--surface-solid: #fff;--line: #e1e7f0;--line-strong: #d0d5dd;--blue: #1746b8;--blue-deep: #12398f;--blue-soft: #edf2ff;--green: #087a55;--green-soft: #e8f7f1;--orange: #b54708;--orange-soft: #fff4e8;--yellow: #b54708;--yellow-soft: #fff8df;--red: #b42318;--danger: var(--red);--red-soft: #fff0f1;--violet: #7357e8;--sidebar: #0e1b30;--sidebar-2: #142440;--shadow-xs: none;--shadow-sm: none;--shadow-md: 0 6px 18px rgba(16,24,40,.08);--shadow-float: 0 24px 60px rgba(16,24,40,.2);--r-sm: .5rem;--r-md: .625rem;--r-lg: .75rem;--r-xl: 1rem;--control-height: 3rem;--focus: 0 0 0 3px rgba(23,70,184,.22);--ease: cubic-bezier(.22,1,.36,1)}[data-theme=dark]{color-scheme:dark;--ink: #f4f7ff;--ink-2: #ced7e8;--muted: #9aa9c0;--subtle: #718099;--canvas: #091120;--surface: rgba(19,31,52,.8);--surface-solid: #111d31;--line: rgba(218,229,255,.11);--line-strong: rgba(218,229,255,.19);--blue-soft: rgba(23,105,255,.16);--green-soft: rgba(19,166,116,.14);--orange-soft: rgba(249,115,22,.15);--yellow-soft: rgba(246,189,22,.14);--red-soft: rgba(229,72,77,.15)}*{box-sizing:border-box}html{min-width:320px;background:var(--canvas)}body{margin:0;min-width:320px;min-height:100vh;color:var(--ink);background:var(--canvas);line-height:1.5}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}::selection{background:#1769ff2e}:focus-visible{outline:2px solid var(--blue);outline-offset:3px;box-shadow:var(--focus)}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.btn{min-height:var(--control-height);display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 16px;border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface);color:var(--ink-2);font-weight:600;font-size:.875rem;cursor:pointer;transition:background .16s,border-color .16s}.btn:hover:not(:disabled){background:var(--blue-soft);border-color:var(--blue)}.btn:active:not(:disabled){background:var(--blue-soft)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{color:#fff;border-color:var(--blue);background:var(--blue)}.btn-primary:hover:not(:disabled){color:#fff;background:var(--blue-deep)}.btn-accent{color:#6a4700;border-color:#efd37b;background:linear-gradient(145deg,#fff7cf,#ffe48c)}.btn-icon{width:var(--control-height);min-width:var(--control-height);padding:0}.btn-sm{min-height:44px;padding:0 12px;font-size:.8125rem}.field{display:flex;flex-direction:column;gap:7px;min-width:0}.field label{color:var(--ink-2);font-size:.875rem;font-weight:600}.field small{color:var(--muted)}input,select,textarea{width:100%;border:1px solid var(--line-strong);border-radius:var(--r-sm);background:#ffffffd1;color:var(--ink);box-shadow:inset 0 1px 2px #0f172a0a,0 1px #ffffffe6;transition:border-color .18s,box-shadow .18s,background .18s}input,select{height:var(--control-height);padding:0 12px}textarea{min-height:104px;padding:11px 12px;resize:vertical}input:hover,select:hover,textarea:hover{border-color:#1769ff52}input:focus,select:focus,textarea:focus{outline:0;border-color:var(--blue);box-shadow:var(--focus);background:var(--surface-solid)}.badge{display:inline-flex;align-items:center;gap:5px;width:max-content;max-width:100%;min-height:25px;padding:3px 9px;border:1px solid var(--line);border-radius:999px;background:#ffffffb8;color:var(--ink-2);font-size:.75rem;font-weight:750}.badge.blue{color:var(--blue-deep);background:var(--blue-soft);border-color:#1769ff26}.badge.red{color:#a8272d;background:var(--red-soft);border-color:#e5484d2e}.badge.amber{color:#85540a;background:var(--yellow-soft);border-color:#f6bd163d}.badge.green{color:#087552;background:var(--green-soft);border-color:#13a67433}.app-loading{min-height:100vh;display:grid;place-content:center;gap:12px}.spinner{width:30px;height:30px;border:3px solid rgba(23,105,255,.15);border-top-color:var(--blue);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;z-index:40;width:260px;display:flex;flex-direction:column;overflow:hidden;color:#dbe6f8;background:linear-gradient(165deg,var(--sidebar-2),var(--sidebar) 60%);border-right:1px solid rgba(255,255,255,.08);box-shadow:18px 0 55px #0c183124}.sidebar:before{content:"";position:absolute;width:190px;height:190px;right:-95px;top:-80px;border-radius:50%;background:#1769ff38;filter:blur(25px);pointer-events:none}.brand{position:relative;display:flex;align-items:center;gap:12px;padding:22px 20px 18px}.brand-mark{width:43px;height:43px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.4);border-radius:13px;color:#fff;font-size:1.15rem;font-weight:800;background:linear-gradient(145deg,#2e83ff,#174eb8);box-shadow:0 12px 24px #00000038,inset 0 1px #ffffff80,inset 0 -3px #0000002e;transform:rotate(-3deg)}.brand-copy{display:flex;flex-direction:column;gap:2px;letter-spacing:.03em}.brand-logo{width:43px;height:43px;object-fit:contain;border-radius:12px;background:#fff;padding:4px;box-shadow:0 10px 22px #0003}.brand-copy strong{color:#fff;font-size:1rem}.brand-copy span{color:#9db0ce;font-size:.75rem;letter-spacing:.18em}.nav-scroll{position:relative;flex:1;overflow-y:auto;overflow-x:hidden;padding:8px 12px 18px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.18) transparent}.nav-group{margin-bottom:7px}.nav-group-toggle{width:100%;height:34px;display:flex;align-items:center;justify-content:space-between;padding:0 9px;border:0;background:transparent;color:#8295b3;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.14em;cursor:pointer}.nav-group-items{display:grid;grid-template-rows:0fr;transition:grid-template-rows .28s var(--ease)}.nav-group-items.open{grid-template-rows:1fr}.nav-group-inner{min-height:0;overflow:hidden;display:grid;gap:4px}.nav-link{min-height:43px;display:flex;align-items:center;gap:12px;padding:0 12px;border:1px solid transparent;border-radius:11px;color:#b8c6dc;font-size:.84rem;font-weight:600;transition:.2s var(--ease)}.nav-link svg{color:#8fa4c6}.nav-link:hover{color:#fff;background:#ffffff12;transform:translate(2px)}.nav-link.active{color:#fff;border-color:#ffffff1f;background:linear-gradient(100deg,#2d7dff57,#2d7dff1f);box-shadow:inset 3px 0 #4b91ff,0 8px 18px #0000001a}.nav-link.active svg{color:#80afff}.user-panel{display:grid;grid-template-columns:38px 1fr 48px;align-items:center;gap:10px;margin:12px;padding:12px;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:#ffffff0f;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(145deg,#fff,#d9e8ff);color:#17478f;font-weight:800;box-shadow:0 8px 18px #0000002e}.user-copy{min-width:0;display:flex;flex-direction:column;gap:2px}.user-copy strong,.user-copy span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-copy strong{color:#fff;font-size:.76rem}.user-copy span{color:#91a6c5;font-size:.75rem;text-transform:capitalize}.logout{width:48px;height:48px;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:#ffffff0d;color:#c5d3e8;cursor:pointer}.app-main{min-height:100vh;margin-left:260px}.topbar{position:sticky;top:0;z-index:30;height:74px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 clamp(18px,3vw,38px);border-bottom:1px solid var(--line);background:#f7f9fdbd;-webkit-backdrop-filter:blur(20px) saturate(150%);backdrop-filter:blur(20px) saturate(150%)}.page-heading{display:flex;flex-direction:column;gap:2px}.page-heading h1{margin:0;font-size:1rem;letter-spacing:-.02em}.page-heading span{color:var(--muted);font-size:.75rem}.top-actions{display:flex;align-items:center;gap:8px}.mobile-menu{display:none}.page-canvas{width:min(1540px,100%);margin:0 auto;padding:clamp(20px,3vw,38px)}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:20px}.page-header h1{margin-bottom:7px;font-size:clamp(1.55rem,2.4vw,2.2rem);letter-spacing:-.045em;line-height:1.05}.page-header p{max-width:760px;margin:0;color:var(--muted);font-size:.88rem;line-height:1.55}.page-actions{display:flex;gap:8px;flex-wrap:wrap}.form-section{grid-column:1/-1;padding:18px 0 4px;border-top:1px solid var(--line)}.form-section:first-child{border-top:0;padding-top:0}.form-section h3{margin:0 0 4px;font-size:1rem}.form-section p{margin:0;color:var(--muted);font-size:.8rem}.location-capture .btn{width:100%;min-height:48px;border-style:dashed;background:#1769ff09}.location-capture .location-captured{color:#087a55;border-color:#087a5559;background:#087a5512}.location-capture .location-failed{color:var(--danger);border-color:#e5484d61;background:#e5484d12}.location-capture small{color:var(--muted)}.location-capture.location-success .location-status{color:#087a55}.location-capture.location-error .location-status,.field label span{color:var(--danger)}.global-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));align-items:end;gap:12px;padding:16px}.filter-reset{margin-left:auto}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 18px}.kpi{position:relative;overflow:hidden;min-height:130px;padding:17px;border:1px solid rgba(255,255,255,.9);border-radius:var(--r-lg);background:linear-gradient(145deg,#fffffff0,#f6f9ffb8);box-shadow:var(--shadow-sm);transition:transform .22s var(--ease),box-shadow .22s var(--ease)}.kpi:after{content:"";position:absolute;width:80px;height:80px;right:-34px;bottom:-38px;border-radius:50%;background:var(--blue-soft);box-shadow:0 0 40px #1769ff24}.kpi:nth-child(4n+2):after{background:var(--green-soft)}.kpi:nth-child(4n+3):after{background:var(--orange-soft)}.kpi:nth-child(4n+4):after{background:var(--yellow-soft)}.kpi:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.kpi-label{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--muted);font-size:.75rem;font-weight:700}.kpi-label svg{color:var(--blue)}.kpi-value{margin-top:15px;font-size:clamp(1.65rem,2.8vw,2.25rem);font-weight:760;letter-spacing:-.055em}.kpi-note{margin-top:6px;color:var(--subtle);font-size:.75rem}.panel-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);gap:16px;margin-bottom:18px}.panel,.data-wrap,.empty-state{border:1px solid rgba(255,255,255,.88);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(16px) saturate(140%);backdrop-filter:blur(16px) saturate(140%)}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding:18px}.panel-head h2{margin-bottom:5px;font-size:.98rem;letter-spacing:-.02em}.panel-head p{margin:0;color:var(--muted);font-size:.75rem;line-height:1.45}.panel-action{padding:0 18px 18px}.row-actions{gap:6px}.scorecard-wrap{border:0;border-radius:0;box-shadow:none;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}.chart-wrap{height:260px;padding:16px 18px 20px}.bar-chart{height:100%;display:flex;align-items:end;gap:7px;border-bottom:1px solid var(--line)}.bar-col{flex:1;height:100%;display:flex;flex-direction:column;justify-content:end;align-items:center;gap:7px}.bar{width:100%;max-width:20px;min-height:3px;border-radius:5px 5px 2px 2px;background:linear-gradient(180deg,#56a0ff,var(--blue));box-shadow:0 6px 12px #1769ff33;transition:height .35s var(--ease),filter .2s}.bar:hover{filter:brightness(1.1)}.bar-col small{color:var(--subtle);font-size:.75rem}.funnel{display:grid;gap:17px;padding:16px 18px 22px}.funnel-row{display:grid;grid-template-columns:90px 1fr 34px;align-items:center;gap:10px;font-size:.75rem}.funnel-meter{height:9px;overflow:hidden;border-radius:9px;background:#e9eef7;box-shadow:inset 0 1px 2px #0f172a1a}.funnel-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--orange),var(--yellow));box-shadow:0 0 14px #f973163d}.data-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px}.search-input{background:#ffffffd9;box-shadow:var(--shadow-xs)}.data-wrap{position:relative;overflow:hidden}.data-table{width:100%;border-collapse:collapse;font-size:.76rem}.data-table th{height:44px;padding:0 15px;text-align:left;color:var(--muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;background:#f0f4faa8;border-bottom:1px solid var(--line)}.data-table td{padding:13px 15px;border-bottom:1px solid var(--line);vertical-align:middle}.data-table tbody tr{transition:background .18s,transform .18s}.data-table tbody tr:hover{background:#eaf2ff7a}.table-main{display:block;color:var(--ink);font-weight:700}.table-sub{display:block;margin-top:3px;color:var(--muted);font-size:.75rem}.row-actions{display:flex;justify-content:flex-end}.history-stack{display:grid;gap:22px}.history-stack section{min-width:0}.history-stack .data-wrap{max-height:280px;overflow:auto}.table-profile-link{width:max-content;max-width:100%;color:var(--blue-deep);text-decoration:none}.table-profile-link:hover{color:var(--blue);text-decoration:underline;text-underline-offset:3px}.profile-back{width:max-content;margin-bottom:14px;border-color:transparent;background:transparent;box-shadow:none}.profile-summary-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(420px,.8fr);gap:16px;margin-bottom:16px}.profile-identity{min-height:158px;display:flex;align-items:center;gap:18px;padding:22px}.profile-avatar{width:66px;height:66px;flex:0 0 auto;display:grid;place-items:center;border-radius:20px;color:#fff;background:linear-gradient(145deg,var(--blue),var(--blue-deep));box-shadow:0 14px 30px #1769ff38}.profile-avatar.executive{color:#8a3d0b;background:linear-gradient(145deg,#fff2df,#ffd6a0);box-shadow:0 14px 30px #f9731624}.eyebrow{color:var(--blue);font-size:.75rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.profile-identity h2{margin:5px 0;font-size:1.35rem;letter-spacing:-.035em}.profile-identity p{margin:0;color:var(--muted);font-size:.76rem}.profile-badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.profile-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.profile-metric{min-height:74px;display:flex;flex-direction:column;justify-content:center;padding:14px 16px;border:1px solid rgba(255,255,255,.9);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-sm)}.profile-metric span{color:var(--muted);font-size:.75rem;font-weight:700}.profile-metric strong{margin-top:5px;font-size:1.42rem;letter-spacing:-.04em}.profile-metric small{margin-top:2px;color:var(--subtle);font-size:.75rem}.profile-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}.profile-card{padding:20px}.profile-card>header{margin-bottom:17px}.profile-card>header h2{margin:0 0 5px;font-size:1rem}.profile-card>header p{margin:0;color:var(--muted);font-size:.75rem}.profile-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:13px;overflow:hidden}.profile-detail{min-width:0;padding:12px;background:#ffffffc2}.profile-detail span,.profile-detail strong{display:flex;align-items:center;gap:5px}.profile-detail span{color:var(--muted);font-size:.75rem;font-weight:700}.profile-detail strong{margin-top:5px;font-size:.75rem;line-height:1.35;overflow-wrap:anywhere}.profile-note{margin-top:14px;padding:13px;border-left:3px solid var(--orange);background:var(--orange-soft)}.profile-note span{color:#9a4a13;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.profile-note p{margin:5px 0 0;font-size:.75rem;line-height:1.5}.profile-activity{margin-bottom:16px;overflow:hidden}.activity-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);border-top:1px solid var(--line)}.activity-split>div{min-width:0;padding:18px;background:#ffffffb8}.activity-split h3{margin:0 0 14px;font-size:.78rem}.activity-list{display:grid;gap:0;max-height:440px;overflow:auto}.activity-list article{position:relative;display:grid;grid-template-columns:12px minmax(0,1fr);gap:10px;padding:0 0 16px}.activity-list article:not(:last-child):before{content:"";position:absolute;left:4px;top:10px;bottom:0;width:1px;background:var(--line)}.activity-marker{position:relative;z-index:1;width:9px;height:9px;margin-top:4px;border:2px solid white;border-radius:50%;background:var(--blue);box-shadow:0 0 0 2px var(--blue-soft)}.activity-marker.orange{background:var(--orange);box-shadow:0 0 0 2px var(--orange-soft)}.activity-list strong{font-size:.75rem}.activity-list p{margin:4px 0;color:var(--muted);font-size:.75rem;line-height:1.4}.activity-list small{color:var(--subtle);font-size:.75rem}.activity-list .empty-state{min-height:150px}.score-stack{display:grid;gap:15px}.score-line>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:6px}.score-line strong,.score-line span{font-size:.75rem}.score-line span{color:var(--muted)}.score-track{height:7px;overflow:hidden;border-radius:8px;background:#e9eef7}.score-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--blue),#54a1ff)}.embedded-table{border:1px solid var(--line);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.pagination{min-height:50px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 14px;color:var(--muted);font-size:.75rem;background:#f5f8fcb3}.pagination-actions{display:flex;gap:6px}.empty-state{min-height:280px;display:grid;place-content:center;justify-items:center;text-align:center;padding:30px;color:var(--muted)}.empty-state svg{color:var(--blue)}.empty-state h3{margin:12px 0 6px;color:var(--ink);font-size:1rem}.empty-state p{max-width:440px;margin:0;font-size:.75rem;line-height:1.5}.dialog-backdrop{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;background:#0911207a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:fade .18s both}.dialog{width:min(760px,100%);max-height:min(880px,calc(100vh - 32px));display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(255,255,255,.72);border-radius:var(--r-xl);background:#fcfdffeb;box-shadow:var(--shadow-float);animation:rise .28s var(--ease) both}.dialog-head,.dialog-foot{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 20px}.dialog-head{border-bottom:1px solid var(--line)}.dialog-head h2{margin-bottom:4px;font-size:1.15rem}.dialog-head p{margin:0;color:var(--muted);font-size:.75rem}.dialog-body{overflow:auto;padding:20px}.dialog-foot{justify-content:flex-end;border-top:1px solid var(--line);background:#f5f8fcbf}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.span-2{grid-column:1/-1}.role-stack{display:grid;gap:14px}.permission-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(235px,1fr));gap:9px;padding:0 18px 18px}.permission-item{display:flex;align-items:flex-start;gap:10px;padding:11px;border:1px solid var(--line);border-radius:var(--r-sm);background:#ffffff8c;cursor:pointer}.permission-item.sensitive{border-left:3px solid var(--orange)}.permission-item input{width:16px;height:16px;margin:2px 0 0}.permission-item span{display:flex;flex-direction:column;gap:3px}.permission-item strong{font-size:.75rem}.permission-item small{color:var(--muted);font-size:.75rem}.settings-body{padding:0 18px 18px}.upload-control{width:max-content}.logo-preview{width:72px;height:72px;object-fit:contain;margin-top:9px;padding:5px;border:1px solid var(--line);border-radius:12px;background:#fff}@keyframes fade{0%{opacity:0}}@keyframes rise{0%{opacity:0;transform:translateY(16px) scale(.985)}}.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(420px,.9fr) minmax(520px,1.1fr);padding:18px;gap:18px;background:radial-gradient(circle at 10% 10%,rgba(23,105,255,.15),transparent 28rem),var(--canvas)}.login-panel{display:flex;flex-direction:column;justify-content:center;width:min(490px,100%);margin:auto;padding:clamp(28px,5vw,58px)}.login-brand{display:flex;align-items:center;gap:12px;margin-bottom:52px}.login-brand .brand-mark{transform:none}.login-panel h1{max-width:440px;margin-bottom:14px;font-size:clamp(2rem,4vw,3.35rem);line-height:1.02;letter-spacing:-.06em}.login-panel>p{max-width:430px;margin-bottom:30px;color:var(--muted);line-height:1.6;font-size:.9rem}.login-form{display:grid;gap:13px;max-width:420px}.auth-note{color:var(--muted);font-size:.75rem;line-height:1.4}.login-aside{position:relative;overflow:hidden;display:flex;align-items:flex-end;padding:42px;border-radius:32px;background:linear-gradient(145deg,#165fd9,#0e284f 72%);box-shadow:var(--shadow-float)}.login-aside:before,.login-aside:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.22);box-shadow:inset 0 0 40px #ffffff14,0 30px 60px #0003}.login-aside:before{width:430px;height:430px;right:-100px;top:-70px;background:radial-gradient(circle at 30% 30%,#ffffff42,#ffffff08 55%)}.login-aside:after{width:240px;height:240px;left:13%;top:24%;background:radial-gradient(circle at 30% 30%,rgba(246,189,22,.5),rgba(249,115,22,.12) 60%,transparent);filter:blur(.2px)}.login-aside-copy{position:relative;z-index:2;max-width:560px;padding:26px;border:1px solid rgba(255,255,255,.22);border-radius:22px;color:#fff;background:#ffffff1c;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 22px 48px #0000002e,inset 0 1px #ffffff40}.login-aside-copy h2{margin:13px 0 8px;font-size:clamp(1.5rem,3vw,2.45rem);line-height:1.08;letter-spacing:-.04em}.login-aside-copy p{margin:0;color:#d1e2ff;line-height:1.55}.mobile-scrim{display:none}@media(max-width:1120px){.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.global-filters{grid-template-columns:repeat(3,1fr)}.filter-reset{grid-column:1/-1;margin-left:0;width:max-content}}@media(max-width:850px){.sidebar{transform:translate(-105%);transition:transform .28s var(--ease)}.sidebar.open{transform:none}.app-main{margin-left:0}.mobile-menu{display:inline-flex}.mobile-scrim{display:block;position:fixed;inset:0;z-index:39;border:0;background:#09112075;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.top-label{display:none}.panel-grid,.profile-summary-grid,.profile-columns,.activity-split{grid-template-columns:1fr}.login-page{grid-template-columns:1fr;padding:0}.login-aside{display:none}.login-panel{min-height:100vh}.data-wrap{overflow-x:auto}.data-table{min-width:760px}}@media(max-width:620px){.page-canvas{padding:18px 14px 28px}.topbar{height:64px;padding:0 14px}.page-header{flex-direction:column}.page-actions,.page-actions .btn{width:100%}.global-filters{grid-template-columns:1fr;padding:12px}.filter-reset{width:100%}.kpi-grid{grid-template-columns:1fr 1fr;gap:10px}.kpi{min-height:116px;padding:14px}.kpi-value{font-size:1.5rem}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.dialog-backdrop{padding:8px}.dialog{max-height:calc(100vh - 16px);border-radius:20px}.data-toolbar{align-items:stretch;flex-direction:column}.login-panel{padding:26px 22px}.login-brand{margin-bottom:36px}.profile-identity{align-items:flex-start;padding:17px}.profile-avatar{width:52px;height:52px;border-radius:16px}.profile-detail-grid{grid-template-columns:1fr}.profile-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}.filter-bar{margin-bottom:20px}.filter-summary,.filter-done,.mobile-bottom-nav,.mobile-menu-close{display:none}.form-section h3{scroll-margin-top:12px}.form-section p{font-size:.875rem;line-height:1.5}.record-progress{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px;color:var(--muted);font-size:.8125rem}.record-progress progress{width:120px;height:6px;accent-color:var(--green)}.form-section-nav{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px}.form-section-nav button{display:flex;align-items:center;gap:8px;min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--blue-deep);font:inherit;font-size:.8125rem;cursor:pointer}.form-section-nav button:hover{background:var(--blue-soft)}.form-section-nav button span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--blue-soft);font-size:.75rem}.form-review{background:var(--canvas);padding:16px;border-radius:8px}.form-reference-error{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;margin-bottom:16px;color:var(--danger);background:var(--red-soft)}.dialog-head,.dialog-foot{flex-shrink:0}.dialog-body{min-height:0;overscroll-behavior:contain}@media(max-width:850px){.page-canvas{padding-bottom:100px}.mobile-bottom-nav{position:fixed;z-index:35;bottom:0;left:0;right:0;display:flex;align-items:stretch;padding:4px 8px max(4px,env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--line-strong)}.mobile-bottom-nav a,.mobile-bottom-nav button{flex:1;min-width:0;min-height:60px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:0;border-radius:8px;background:transparent;color:var(--muted);font:inherit;font-size:.75rem;font-weight:600;cursor:pointer}.mobile-bottom-nav .active{color:var(--blue);background:var(--blue-soft)}.mobile-menu-close{display:flex;flex-shrink:0;margin:12px 12px 0}.sidebar:not(.open){visibility:hidden}.sidebar.open{visibility:visible}}@media(max-width:620px){.filter-bar{border:1px solid var(--line-strong);border-radius:12px;background:var(--surface)}.filter-summary{display:flex;width:100%;min-height:64px;align-items:center;gap:12px;padding:12px 16px;border:0;border-radius:12px;background:var(--surface);text-align:left;cursor:pointer}.filter-summary>span{flex:1;min-width:0}.filter-summary strong,.filter-summary small{display:block;line-height:1.45}.filter-summary strong{font-size:.8125rem;font-weight:600}.filter-summary small{color:var(--muted);font-size:.75rem;overflow-wrap:anywhere}.filter-bar:not(.expanded) .global-filters{display:none}.filter-bar .global-filters{margin:0;border:0;border-top:1px solid var(--line);border-radius:0 0 12px 12px;padding:16px;box-shadow:none}.filter-done{display:flex}.dialog.dialog-full-mobile{width:100%;height:100dvh;max-height:100dvh;border:0;border-radius:0}.dialog-full-mobile .dialog-head{padding-top:max(16px,env(safe-area-inset-top))}.dialog-full-mobile .dialog-foot{padding-bottom:max(16px,env(safe-area-inset-bottom))}.dialog-full-mobile .dialog-foot .btn-primary{flex:1}.dialog-full-mobile .dialog-body{padding:16px}.record-progress{align-items:flex-start}.record-progress progress{flex-shrink:0;margin-top:7px;width:80px}.form-section-nav{gap:6px}.form-section-nav button{font-size:.75rem;padding:8px}input,select,textarea{font-size:1rem}.btn-sm{min-height:48px}.page-heading{min-width:0}.page-heading strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}.followup-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}.followup-filters .btn{gap:10px}.followup-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:16px}.followup-card{padding:20px;display:flex;flex-direction:column;align-items:flex-start;gap:12px}.followup-card>div{display:flex;gap:12px;align-items:center}.followup-card h2{font-size:18px;line-height:1.4;margin:0}.followup-card p{color:var(--text-secondary);margin:0;line-height:1.6}.followup-card time{margin-top:auto;font-size:13px;font-weight:600}.tracking-indicator{min-height:32px;display:inline-flex;align-items:center;gap:6px;padding:0 10px;border:1px solid rgba(19,166,116,.2);border-radius:999px;color:#087552;background:var(--green-soft);font-size:.75rem;font-weight:750;white-space:nowrap}.kpi-button{width:100%;text-align:left;color:inherit;cursor:pointer;appearance:none}.segmented-control,.auth-method{width:max-content;max-width:100%;display:flex;gap:4px;padding:4px;border:1px solid var(--line);border-radius:12px;background:#e7edf7b8}.segmented-control button,.auth-method button{min-height:var(--control-height);padding:0 13px;border:0;border-radius:9px;background:transparent;color:var(--muted);font-size:.75rem;font-weight:750;cursor:pointer}.segmented-control button.active,.auth-method button.active{color:var(--blue-deep);background:var(--surface-solid);box-shadow:var(--shadow-xs),0 5px 12px #1f335614}.auth-method{width:100%}.auth-method button{flex:1}.compact-field{min-width:240px}.form-submit{display:flex;justify-content:flex-end}.muted{color:var(--muted);font-size:.76rem}.doctor-calendar-panel{margin-bottom:18px}.calendar-events{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0 18px 18px}.calendar-event{min-width:0;display:grid;grid-template-columns:46px 1fr;align-items:center;gap:10px;padding:10px;border:1px solid var(--line);border-radius:12px;background:#ffffff8f}.calendar-event time{height:46px;display:grid;place-content:center;text-align:center;border-radius:11px;color:var(--blue-deep);background:var(--blue-soft)}.calendar-event time strong{font-size:1rem;line-height:1}.calendar-event time span{margin-top:3px;font-size:.75rem;text-transform:uppercase}.calendar-event>div{min-width:0}.calendar-event>div strong,.calendar-event>div small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-event>div strong{font-size:.75rem}.calendar-event>div small{margin-top:4px;color:var(--muted);font-size:.75rem}.live-map-layout{display:grid;grid-template-columns:minmax(280px,.7fr) minmax(0,1.3fr);gap:16px}.live-member-list{display:grid;gap:6px;padding:0 12px 14px}.live-member{width:100%;min-height:58px;display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:10px;padding:9px 10px;border:1px solid transparent;border-radius:12px;background:transparent;text-align:left;cursor:pointer}.live-member:hover,.live-member.active{border-color:#1769ff2e;background:var(--blue-soft)}.live-member strong,.live-member small{display:block}.live-member strong{font-size:.75rem}.live-member small{margin-top:3px;color:var(--muted);font-size:.75rem}.live-dot{width:8px;height:8px;border-radius:50%;background:var(--yellow);box-shadow:0 0 0 4px var(--yellow-soft)}.live-dot.live{background:var(--green);box-shadow:0 0 0 4px var(--green-soft)}.accuracy{color:var(--muted);font-size:.75rem}.map-panel{overflow:hidden}.live-map{width:100%;height:480px;display:block;border:0;border-top:1px solid var(--line)}.target-management{max-width:980px}.detail-table{max-height:55vh;overflow:auto}@media(max-width:1023px){.calendar-events{grid-template-columns:repeat(2,minmax(0,1fr))}.live-map-layout{grid-template-columns:1fr}.live-map{height:420px}.tracking-indicator{max-width:124px;overflow:hidden;text-overflow:ellipsis}}@media(max-width:767px){.page-canvas{overflow-x:hidden}.calendar-events{grid-template-columns:1fr;padding:0 12px 12px}.chart-wrap{height:225px;padding-inline:10px;overflow:hidden}.bar-chart{gap:2px}.bar-col small{display:none}.bar-col:nth-child(5n+1) small,.bar-col:last-child small{display:block;font-size:.75rem}.funnel-row{grid-template-columns:minmax(82px,.8fr) minmax(80px,1.5fr) 30px;gap:7px}.live-map{height:360px}.top-actions .tracking-indicator{display:none}.panel-head{flex-wrap:wrap}.panel-head .segmented-control{width:100%}.panel-head .segmented-control button{flex:1}.dialog-foot{padding-bottom:max(18px,env(safe-area-inset-bottom))}.dialog-foot .btn{min-height:var(--control-height)}}@media(max-width:420px){.kpi-grid{grid-template-columns:1fr}.kpi{min-height:104px}.kpi-value{margin-top:10px}.page-heading span{display:none}.calendar-event{grid-template-columns:42px 1fr}.live-member{grid-template-columns:9px minmax(0,1fr)}.live-member .accuracy{grid-column:2}}h1,h2,h3,.kpi-value,.brand-copy strong{font-family:inherit}.sidebar{width:276px;border-right:1px solid #223047;background:var(--sidebar);box-shadow:none}.sidebar:before{display:none}.brand{min-height:78px;padding:18px 20px;border-bottom:1px solid rgba(255,255,255,.08)}.brand-mark,.brand-logo{width:42px;height:42px;border-radius:9px;transform:none;border-color:#ffffff3d;box-shadow:none}.brand-mark{background:var(--blue)}.brand-copy strong{font-size:1.02rem;letter-spacing:-.02em}.brand-copy span{color:#aab7ca;font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.nav-scroll{padding:14px 12px 18px}.nav-group{margin-bottom:9px}.nav-group-toggle{height:44px;color:#aab7ca;font-size:.75rem;letter-spacing:.02em;text-transform:none}.nav-link{min-height:48px;border-radius:8px;color:#c2ccda;font-size:.875rem}.nav-link:hover{transform:none;background:#19263a}.nav-link.active{border-color:#334b70;background:#1a2b46;box-shadow:inset 3px 0 #5b88eb;color:#fff}.nav-link.active svg{color:#79a1f4}.user-panel{margin:10px 12px 14px;border-radius:9px;background:#162238;-webkit-backdrop-filter:none;backdrop-filter:none}.avatar{border-radius:8px;box-shadow:none;background:#e6edfa}.app-main{margin-left:276px}.topbar{height:72px;padding:0 clamp(18px,2.6vw,36px);border-bottom:1px solid var(--line);background:#fffffff5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.page-heading strong{font-size:.9375rem;font-weight:600;line-height:1.3}.page-heading span{font-size:.75rem}.page-canvas{width:min(1600px,100%);padding:clamp(20px,2.6vw,36px)}.page-header{margin-bottom:22px}.page-header h1{font-size:clamp(1.5rem,2.3vw,1.875rem);font-weight:650;letter-spacing:-.03em;line-height:1.25}.page-header p{font-size:.86rem}.global-filters,.panel,.data-wrap,.empty-state,.kpi{border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:var(--shadow-sm);-webkit-backdrop-filter:none;backdrop-filter:none}.global-filters{padding:15px 16px}.kpi-grid{gap:12px}.kpi{min-height:122px;padding:18px;overflow:hidden;border-top:3px solid var(--blue);background:#fff;transition:box-shadow .16s ease,border-color .16s ease}.kpi:nth-child(4n+2){border-top-color:var(--green)}.kpi:nth-child(4n+3){border-top-color:#c8691b}.kpi:nth-child(4n+4){border-top-color:#d69d13}.kpi:after{display:none}.kpi:hover{transform:none;border-color:var(--line-strong);box-shadow:none}.kpi-label{color:var(--muted);font-size:.8125rem;text-transform:none;letter-spacing:0}.kpi-value{margin-top:18px;font-size:clamp(1.7rem,2.5vw,2.3rem);font-variant-numeric:tabular-nums}.kpi-note{font-size:.75rem}.panel-head{padding:20px;border-bottom:1px solid var(--line)}.panel-head h2{font-size:1rem}.panel-action{padding:18px 20px 20px}.data-wrap{border-radius:10px}.data-table{font-size:.875rem}.data-table th{height:46px;padding:0 16px;color:#647188;background:#f6f7f9;font-size:.75rem}.data-table td{padding:14px 16px}.data-table tbody tr:hover{background:#f8faff}.badge{min-height:25px;border-radius:5px;background:#f7f8fa}.tracking-indicator{border-radius:5px}input,select,textarea{border-radius:7px;border-color:#cbd2dd;background:#fff;box-shadow:inset 0 1px 2px #101b2d08}input,select{height:var(--control-height)}.field{gap:8px}.field label{color:var(--ink-2);font-size:.875rem}.form-grid{gap:17px 16px}.form-section{margin-top:6px;padding-top:18px}.dialog-backdrop{background:#07101e99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.dialog{width:min(880px,100%);border-radius:14px;border-color:#dce1e9;background:#fff}.dialog-head,.dialog-foot{padding:19px 22px}.dialog-head{background:#fbfcfd}.dialog-body{padding:22px}.dialog-foot{background:#f6f7f9}.login-page{grid-template-columns:minmax(420px,.86fr) minmax(560px,1.14fr);padding:0;gap:0;background:#f5f6f8}.login-panel{width:min(540px,100%);padding:clamp(34px,6vw,72px)}.login-brand{margin-bottom:clamp(48px,8vh,90px)}.login-panel h1{max-width:470px;margin-bottom:18px;font-size:clamp(2.25rem,4vw,4rem);letter-spacing:-.065em}.login-panel>p{margin-bottom:34px;font-size:.92rem}.login-aside{align-items:stretch;padding:clamp(36px,5vw,72px);border-radius:0;box-shadow:none;background:linear-gradient(135deg,rgba(50,102,211,.14) 25%,transparent 25%) 0 0/42px 42px,#0f1b2d}.login-aside:before{width:56%;height:56%;right:-12%;top:-10%;border-radius:0;border:0;background:linear-gradient(145deg,#4b7de59e,#4b7de505);filter:none;transform:rotate(16deg)}.login-aside:after{width:260px;height:260px;left:auto;right:13%;top:24%;border:1px solid rgba(255,205,89,.38);background:transparent;filter:none}.login-aside-copy{align-self:flex-end;max-width:620px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.login-aside-copy .badge{color:#172642;background:#ffcf5a;border-color:#ffcf5a}.login-aside-copy h2{max-width:620px;margin:20px 0 14px;font-size:clamp(2rem,4.2vw,4.3rem)}.login-aside-copy p{max-width:520px;color:#b8c6da;font-size:1rem}.evidence-capture{padding:16px;border:1px solid #cbd6e7;border-left:4px solid #255ccf;border-radius:10px;background:#f8faff}.evidence-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.evidence-heading>div{display:grid;gap:5px}.evidence-quality{display:inline-flex;align-items:center;gap:6px;color:#0f765a;font-size:.75rem;font-weight:800}.camera-launch{width:100%;min-height:104px;display:flex;align-items:center;gap:15px;padding:18px;border:1px dashed #9bb0d2;border-radius:8px;background:#fff;color:var(--ink);text-align:left;cursor:pointer}.camera-launch:hover{border-color:#255ccf;background:#f8faff}.camera-launch-icon{width:48px;height:48px;flex:0 0 auto;display:grid;place-items:center;border-radius:8px;color:#255ccf;background:#edf3ff}.camera-launch span:last-child{display:grid;gap:4px}.camera-launch strong{font-size:.86rem}.camera-launch small{color:var(--muted);font-size:.75rem}.camera-stage{overflow:hidden;border:1px solid #17253a;border-radius:9px;background:#07101e}.camera-stage video{width:100%;max-height:58vh;display:block;object-fit:contain;background:#050a12}.camera-stage-actions{display:flex;justify-content:space-between;gap:10px;padding:12px;background:#101b2d}.camera-stage .camera-close{color:#fff;border-color:#45536a;background:#1b293d}.evidence-preview{display:grid;grid-template-columns:140px minmax(0,1fr) auto;align-items:center;gap:14px;padding:10px;border:1px solid #dce2eb;border-radius:8px;background:#fff}.evidence-preview img{width:140px;height:90px;object-fit:cover;border-radius:5px}.evidence-preview-meta{min-width:0;display:grid;gap:5px}.evidence-preview-meta strong{font-size:.76rem}.evidence-preview-meta span{color:var(--muted);font-size:.75rem}.evidence-error{display:flex;align-items:flex-start;gap:7px;margin:0;color:#a32937;font-size:.75rem}.workflow-toolbar{display:flex;gap:4px;width:fit-content;max-width:100%;margin-bottom:18px;padding:4px;overflow-x:auto;border:1px solid var(--line);border-radius:9px;background:#fff}.workflow-toolbar button{min-height:36px;padding:0 13px;border:0;border-radius:6px;background:transparent;color:var(--muted);font:inherit;font-size:13px;font-weight:650;white-space:nowrap;cursor:pointer}.workflow-toolbar button.active,.workflow-toolbar button[aria-selected=true]{color:#fff;background:var(--blue-deep)}.approval-table .row-actions{flex-wrap:nowrap}.approval-approve{color:#0d6349;border-color:#9bcfbe}.approval-reject{color:#982d28;border-color:#e4aaa6}.notification-list{display:grid;gap:8px;max-width:920px}.notification-item{display:grid;grid-template-columns:40px minmax(0,1fr) 12px;gap:12px;width:100%;padding:16px;text-align:left;color:var(--ink);border:1px solid var(--line);border-radius:9px;background:#fff;cursor:pointer}.notification-item.unread{border-left:3px solid var(--blue);background:#f7faff}.notification-item>span:nth-child(2){display:grid;gap:4px}.notification-item small{color:var(--muted)}.notification-icon{display:grid;place-items:center;width:36px;height:36px;color:var(--blue);border-radius:8px;background:#eaf1ff}.unread-dot{align-self:center;width:8px;height:8px;border-radius:50%;background:var(--blue)}.notification-bell{position:relative;display:grid;place-items:center}.notification-bell>span{position:absolute;top:-8px;right:-10px;min-width:17px;height:17px;padding:0 4px;color:#fff;border:2px solid #fff;border-radius:9px;background:#bf302a;font-size:9px;font-weight:800;line-height:13px;text-align:center}@media(max-width:850px){.app-main{margin-left:0}.login-page{grid-template-columns:1fr}}@media(max-width:620px){.page-canvas{padding:16px 16px 96px}.dialog-backdrop{padding:0;place-items:end center}.dialog{width:100%;max-height:calc(100dvh - 10px);border-radius:14px 14px 0 0}.dialog-head,.dialog-body,.dialog-foot{padding-inline:16px}.evidence-preview{grid-template-columns:92px minmax(0,1fr)}.evidence-preview img{width:92px;height:74px}.evidence-preview .btn{grid-column:1 / -1}.camera-stage-actions .btn{flex:1}}
