:root{--primary: #2954e0;--primary-soft: #eef2ff;--sidebar-bg: #0f1a33;--sidebar-muted: #7c8ab0;--sidebar-dim: #5c6b92;--sidebar-item: #b7c0db;--bg: #f3f5f9;--surface: #ffffff;--border: #eaecf0;--border-soft: #f2f4f7;--border-input: #e4e7ec;--text: #101828;--text-2: #344054;--text-3: #475467;--muted: #667085;--muted-2: #98a2b3;--success: #16a34a;--success-bg: #d1fadf;--success-fg: #067647;--warn: #d97706;--warn-bg: #fef0c7;--warn-fg: #b54708;--danger: #dc2626;--danger-bg: #fee4e2;--danger-fg: #b42318;--teal: #0f9e86;--teal-bg: #e6f7f3;--purple: #7c3aed;--purple-bg: #f4ebff;--gray-bg: #f2f4f7;--gray-fg: #475467;--sidebar-w: 264px;--sidebar-w-min: 76px;--topbar-h: 64px;--radius: 14px;--font: "Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--mono: "JetBrains Mono", monospace}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}button,input,select,textarea{font-family:inherit}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.45}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#d0d5dd;border-radius:8px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.card-pad{padding:20px 22px}.card-title{font-size:14.5px;font-weight:700;margin-bottom:14px}.badge{font-size:11px;font-weight:700;padding:4px 10px;border-radius:20px;white-space:nowrap;display:inline-block}.avatar{width:36px;height:36px;border-radius:9px;background:var(--primary-soft);color:var(--primary);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:12.5px;flex:0 0 auto}.btn{padding:10px 18px;border-radius:9px;border:1.5px solid var(--border-input);background:var(--surface);color:var(--text-2);font-weight:600;font-size:13px;cursor:pointer}.btn-primary{border:none;background:var(--primary);color:#fff;font-weight:700}.btn-success{border:none;background:var(--success);color:#fff;font-weight:700}.btn-danger{border-color:#fda29b;color:var(--danger-fg);font-weight:700}.btn-purple{border:none;background:var(--purple);color:#fff;font-weight:700}.btn-block{width:100%}.btn:disabled{opacity:.55;cursor:not-allowed}.input,.select,.textarea{width:100%;padding:11px 14px;border-radius:10px;border:1.5px solid var(--border-input);font-size:13.5px;outline:none;background:var(--surface)}.input:focus,.select:focus,.textarea:focus{border-color:var(--primary)}.textarea{resize:none}.field-label{font-size:13px;font-weight:600;color:var(--text-2);display:block;margin-bottom:6px}.list-row{display:flex;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--border-soft);cursor:pointer}.list-row.selected{background:var(--primary-soft)}.list-row:hover:not(.selected){background:#f9fafb}.progress-track{height:8px;border-radius:6px;background:var(--gray-bg);overflow:hidden}.progress-bar{height:100%;border-radius:6px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#10182873;display:flex;align-items:center;justify-content:center;z-index:50;padding:16px}.modal{width:560px;max-width:100%;max-height:90vh;overflow-y:auto;background:var(--surface);border-radius:16px;padding:28px 30px;box-shadow:0 8px 40px #10182833}.screen{animation:fadeUp .3s ease}.shell{display:flex;min-height:100vh}.main-col{flex:1;min-width:0;display:flex;flex-direction:column;transition:margin-left .25s ease;margin-left:var(--sidebar-w)}.shell.sidebar-collapsed .main-col{margin-left:var(--sidebar-w-min)}.topbar{height:var(--topbar-h);flex:0 0 var(--topbar-h);background:var(--surface);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:5;gap:12px}.topbar-title{font-size:16px;font-weight:700}.content{flex:1;padding:28px;overflow-y:auto}.hamburger{display:none;background:none;border:none;padding:6px;cursor:pointer;color:var(--text-3)}.sidebar{width:var(--sidebar-w);background:var(--sidebar-bg);color:#fff;display:flex;flex-direction:column;padding:20px 14px;position:fixed;top:0;left:0;bottom:0;overflow-y:auto;z-index:40;transition:width .25s ease,transform .25s ease}.sidebar-brand{display:flex;align-items:center;gap:10px;padding:6px 10px 20px}.sidebar-logo{width:32px;height:32px;flex:0 0 32px;border-radius:8px;background:var(--primary);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:14px;color:#fff}.sidebar-brand-text{min-width:0}.sidebar-brand-text .t1{font-weight:700;font-size:13.5px}.sidebar-brand-text .t2{font-size:10.5px;color:var(--sidebar-muted)}.sidebar-collapse-btn{margin-left:auto;background:#ffffff0f;border:none;border-radius:7px;width:26px;height:26px;flex:0 0 26px;color:var(--sidebar-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:13px}.sidebar-collapse-btn:hover{color:#fff;background:#ffffff1f}.nav-item{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:9px;cursor:pointer;margin-bottom:3px;color:var(--sidebar-item);font-size:13px;font-weight:500;border:none;background:transparent;width:100%;text-align:left}.nav-item:hover{background:#ffffff0f;color:#fff}.nav-item.active{background:#2954e02e;color:#fff;font-weight:700}.nav-abbr{width:24px;height:24px;flex:0 0 24px;border-radius:6px;color:#fff;display:flex;align-items:center;justify-content:center;font-size:9.5px;font-weight:800}.nav-group-header{display:flex;align-items:center;justify-content:space-between;width:100%;background:none;border:none;font-family:inherit;font-size:10.5px;font-weight:700;letter-spacing:1px;color:var(--sidebar-dim);padding:0 12px 6px;margin-top:14px;cursor:pointer}.nav-group-header:hover{color:var(--sidebar-muted)}.nav-group-header .chev{transition:transform .2s ease;font-size:9px}.nav-group-header.closed .chev{transform:rotate(-90deg)}.nav-group-items{overflow:hidden}.sidebar-footer{border-top:1px solid rgba(255,255,255,.08);padding-top:14px;margin-top:14px}.sidebar-user{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:9px}.sidebar-user-avatar{width:34px;height:34px;flex:0 0 34px;border-radius:9px;background:var(--primary);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;color:#fff}.sidebar-user-info{flex:1;min-width:0}.sidebar-user-info .n{font-size:12.5px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-info .r{font-size:10.5px;color:var(--sidebar-muted)}.logout-btn{background:none;border:none;cursor:pointer;color:var(--sidebar-muted);font-size:16px;padding:2px}.logout-btn:hover{color:#fff}.shell.sidebar-collapsed .sidebar{width:var(--sidebar-w-min);padding:20px 10px}.shell.sidebar-collapsed .sidebar-brand{justify-content:center;padding:6px 0 16px;flex-direction:column;gap:8px}.shell.sidebar-collapsed .sidebar-brand-text,.shell.sidebar-collapsed .nav-item .nav-label,.shell.sidebar-collapsed .nav-group-header .lbl,.shell.sidebar-collapsed .nav-group-header .chev,.shell.sidebar-collapsed .sidebar-user-info{display:none}.shell.sidebar-collapsed .sidebar-collapse-btn{margin:0 auto}.shell.sidebar-collapsed .nav-item{justify-content:center;padding:9px 0}.shell.sidebar-collapsed .nav-group-header{padding:0;margin-top:12px;height:1px;background:#ffffff14;pointer-events:none}.shell.sidebar-collapsed .nav-group-items{display:block!important}.shell.sidebar-collapsed .sidebar-user{flex-direction:column;gap:8px;padding:8px 0}.sidebar-backdrop{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#10182880;z-index:39}.login-wrap{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.login-brand{background:linear-gradient(160deg,#0b1a3d,#16308a 60%,#2954e0);position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:56px;color:#fff}.login-brand:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(600px 400px at 80% 10%,rgba(255,255,255,.1),transparent),radial-gradient(500px 500px at 10% 90%,rgba(255,255,255,.08),transparent)}.login-brand>*{position:relative;z-index:1}.login-form-col{display:flex;align-items:center;justify-content:center;padding:40px}.login-form{width:100%;max-width:380px;animation:fadeUp .5s ease}.otp-input{width:44px;height:52px;text-align:center;font-size:20px;font-weight:700;border-radius:10px;border:1.5px solid var(--border-input);font-family:var(--mono);outline:none}.otp-input:focus{border-color:var(--primary)}.grid{display:grid;gap:16px;align-items:start}.grid-2{grid-template-columns:1fr 1fr}.grid-2-wide{grid-template-columns:1.4fr 1fr}.grid-emp{grid-template-columns:1fr 1.1fr}.grid-payroll{grid-template-columns:.85fr 1.15fr}.grid-field{grid-template-columns:1fr 1.2fr}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.stats-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.table-scroll{overflow-x:auto}.mode-switch-btn{display:none}@media(max-width:768px){.mode-switch-btn{display:inline-flex;align-items:center;gap:6px;background:var(--gray-bg);border:none;border-radius:8px;padding:7px 10px;cursor:pointer;font-family:inherit;font-size:12px;font-weight:700;color:var(--text-3);white-space:nowrap}}@media(max-width:1100px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}@media(max-width:1024px){.sidebar{transform:translate(-100%);width:var(--sidebar-w)!important;padding:20px 14px!important}.shell.mobile-nav-open .sidebar{transform:translate(0);box-shadow:0 0 40px #10182866}.shell.mobile-nav-open .sidebar-backdrop{display:block}.main-col,.shell.sidebar-collapsed .main-col{margin-left:0}.hamburger{display:inline-flex}.sidebar-collapse-btn{display:none}.shell.sidebar-collapsed .sidebar-brand-text,.shell.sidebar-collapsed .nav-item .nav-label,.shell.sidebar-collapsed .nav-group-header .lbl,.shell.sidebar-collapsed .nav-group-header .chev,.shell.sidebar-collapsed .sidebar-user-info{display:block}.shell.sidebar-collapsed .nav-item{justify-content:flex-start;padding:9px 12px}.shell.sidebar-collapsed .nav-group-header{padding:0 12px 6px;margin-top:14px;height:auto;background:none;pointer-events:auto;display:flex}.shell.sidebar-collapsed .sidebar-brand{flex-direction:row;justify-content:flex-start;padding:6px 10px 20px}.shell.sidebar-collapsed .sidebar-user{flex-direction:row;padding:8px 10px}.content{padding:20px}.topbar{padding:0 16px}}@media(max-width:900px){.grid-2,.grid-2-wide,.grid-emp,.grid-payroll,.grid-field,.login-wrap{grid-template-columns:1fr}.login-brand{display:none}}@media(max-width:640px){.grid-3,.grid-4{grid-template-columns:1fr}.content{padding:14px}.modal{padding:22px 20px}.otp-input{width:40px;height:48px}}:root{--nx-primary: #003178;--nx-on-primary: #ffffff;--nx-primary-container: #0d47a1;--nx-primary-fixed: #d9e2ff;--nx-primary-fixed-dim: #b0c6ff;--nx-secondary: #006b5f;--nx-secondary-container: #8df5e4;--nx-on-secondary-container: #007165;--nx-surface: #faf8ff;--nx-surface-lowest: #ffffff;--nx-surface-low: #f3f3fb;--nx-surface-container: #ededf5;--nx-surface-high: #e8e7f0;--nx-on-surface: #1a1b21;--nx-on-surface-variant: #434652;--nx-outline: #737783;--nx-outline-variant: #c3c6d4;--nx-border: #e2e8f0;--nx-divider: #f1f5f9;--nx-success: #2e7d32;--nx-warning: #f57c00;--nx-danger: #d32f2f;--nx-info: #0288d1;--nx-shadow-1: 0px 2px 4px rgba(0, 0, 0, .05);--nx-shadow-2: 0px 8px 16px rgba(0, 0, 0, .08)}.material-symbols-outlined{font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24;-webkit-user-select:none;user-select:none}.msf{font-variation-settings:"FILL" 1,"wght" 400,"GRAD" 0,"opsz" 24}.mapp{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:var(--nx-surface);color:var(--nx-on-surface);font-family:Inter,system-ui,sans-serif;-webkit-tap-highlight-color:transparent}.nx-appbar{position:sticky;top:0;z-index:40;height:calc(64px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 16px 0;background:var(--nx-surface);border-bottom:1px solid var(--nx-border);box-shadow:var(--nx-shadow-1);display:flex;align-items:center;justify-content:space-between}.nx-appbar-user{display:flex;align-items:center;gap:10px;min-width:0}.nx-appbar-avatar{width:34px;height:34px;flex:0 0 34px;border-radius:50%;background:var(--nx-primary-fixed);color:var(--nx-primary);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;border:1px solid rgba(0,49,120,.2)}.nx-appbar-name{font-size:13.5px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nx-appbar-role{font-size:11px;color:var(--nx-on-surface-variant)}.nx-iconbtn{width:40px;height:40px;flex:0 0 40px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:none;background:none;cursor:pointer;color:var(--nx-primary);transition:background .15s,transform .15s;position:relative}.nx-iconbtn:active{transform:scale(.95);background:var(--nx-surface-high)}.nx-iconbtn .dot{position:absolute;top:6px;right:7px;width:8px;height:8px;border-radius:50%;background:var(--nx-danger);border:1.5px solid var(--nx-surface)}.mapp-content{flex:1;padding:20px 16px calc(92px + env(safe-area-inset-bottom));max-width:672px;width:100%;margin:0 auto}.mapp-nav{position:fixed;left:0;right:0;bottom:0;z-index:50;display:flex;justify-content:space-around;align-items:center;padding:10px 8px calc(10px + env(safe-area-inset-bottom));background:var(--nx-surface);border-top:1px solid var(--nx-border);border-radius:12px 12px 0 0;box-shadow:0 -4px 16px #0000000f}.mapp-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:none;border:none;cursor:pointer;padding:4px 14px;border-radius:999px;color:var(--nx-on-surface-variant);font-family:inherit;font-size:10px;font-weight:500;line-height:12px;transition:transform .2s,background .2s,color .2s}.mapp-nav-item:active{transform:scale(.9)}.mapp-nav-item.active{background:var(--nx-secondary-container);color:var(--nx-on-secondary-container);font-weight:700}.nx-card{background:var(--nx-surface-lowest);border:1px solid var(--nx-border);border-radius:12px;box-shadow:var(--nx-shadow-1)}.nx-card-low{background:var(--nx-surface-low);box-shadow:none}.nx-section-title{font-size:16px;font-weight:600;line-height:24px;color:var(--nx-primary);margin:0 0 10px;display:flex;align-items:center;justify-content:space-between}.nx-section-title .link{font-size:12px;font-weight:600;letter-spacing:.05em;color:var(--nx-primary);cursor:pointer;background:none;border:none;font-family:inherit}.nx-pill{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.02em;white-space:nowrap}.nx-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:11px 16px;border-radius:8px;border:none;cursor:pointer;background:var(--nx-primary);color:var(--nx-on-primary);font-family:inherit;font-size:12px;font-weight:600;letter-spacing:.05em;transition:transform .15s}.nx-btn:active{transform:scale(.96)}.nx-btn:disabled{opacity:.55}.nx-btn.outline{background:var(--nx-surface-lowest);color:var(--nx-on-surface-variant);border:1px solid var(--nx-outline-variant)}.nx-btn.teal{background:var(--nx-secondary)}.nx-btn.danger-soft{background:#d32f2f0d;color:var(--nx-danger);border:1px solid rgba(211,47,47,.2);font-size:14px;font-weight:600;padding:14px;border-radius:12px}.nx-icontile{border-radius:12px;display:flex;align-items:center;justify-content:center;flex:0 0 auto}.nx-list-item{display:flex;align-items:center;gap:12px;padding:12px 16px;min-height:64px;border-bottom:1px solid var(--nx-divider);background:none;border-left:none;border-right:none;border-top:none;width:100%;text-align:left;cursor:pointer;font-family:inherit}.nx-list-item:last-child{border-bottom:none}.nx-list-item:active{background:var(--nx-surface-high)}.nx-module-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.nx-module-cell{display:flex;flex-direction:column;align-items:center;gap:6px;background:none;border:none;cursor:pointer;padding:6px 2px;font-family:inherit;color:var(--nx-on-surface);border-radius:12px;transition:transform .15s}.nx-module-cell:active{transform:scale(.92)}.nx-module-cell .tile{width:52px;height:52px;border-radius:14px;background:var(--nx-surface-low);border:1px solid var(--nx-border);color:var(--nx-primary);display:flex;align-items:center;justify-content:center}.nx-module-cell .lbl{font-size:10px;font-weight:500;line-height:12px;text-align:center;color:var(--nx-on-surface-variant)}.nx-module-view{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:var(--bg);display:flex;flex-direction:column;animation:fadeUp .25s ease}.nx-module-view-header{height:calc(56px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 8px 0;background:var(--nx-primary);color:#fff;display:flex;align-items:center;gap:6px;flex:0 0 auto}.nx-module-view-header .title{font-size:15px;font-weight:700;font-family:Inter,sans-serif}.nx-module-view-header .back{width:44px;height:44px;background:none;border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:50%}.nx-module-view-body{flex:1;overflow-y:auto;padding:16px 14px calc(24px + env(safe-area-inset-bottom))}.nx-details{background:var(--nx-surface-low);border:1px solid var(--nx-border);border-radius:12px;overflow:hidden}.nx-details summary{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;cursor:pointer;list-style:none;font-size:12px;font-weight:600;letter-spacing:.03em}.nx-details summary::-webkit-details-marker{display:none}.nx-details[open] summary .chev{transform:rotate(180deg)}.nx-details .chev{transition:transform .2s;color:var(--nx-outline)}.nx-details .body{padding:14px 16px;border-top:1px solid var(--nx-border);display:flex;flex-direction:column;gap:12px}.nx-kv{display:flex;justify-content:space-between;align-items:center;gap:12px}.nx-kv .k{font-size:12px;color:var(--nx-on-surface-variant)}.nx-kv .v{font-size:14px;font-weight:500;text-align:right;overflow-wrap:anywhere}.nx-stats{display:grid;grid-template-columns:1fr 1fr;gap:12px}.nx-stat{padding:14px}.nx-stat .l{font-size:11px;color:var(--nx-on-surface-variant);font-weight:500;margin-bottom:6px}.nx-stat .v{font-size:19px;font-weight:700;letter-spacing:-.02em}.nx-stat .t{font-size:10.5px;font-weight:600;margin-top:4px}.nx-login{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;padding:32px 20px calc(24px + env(safe-area-inset-bottom));background:radial-gradient(420px 320px at 85% 8%,rgba(141,245,228,.35),transparent),radial-gradient(520px 420px at 10% 92%,rgba(176,198,255,.5),transparent),linear-gradient(165deg,#c7cbe8,#b4bce0 55%,#9aa8d6);font-family:Inter,system-ui,sans-serif;color:var(--nx-on-surface)}.nx-login-brand{text-align:center}.nx-login-logo{width:64px;height:64px;margin:0 auto 14px;border-radius:16px;background:var(--nx-primary-container);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:var(--nx-shadow-2)}.nx-login-appname{font-size:14px;font-weight:600;color:#5a6076;letter-spacing:.02em}.nx-login-card{width:100%;max-width:400px;background:#ffffffb8;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(226,232,240,.6);border-radius:20px;padding:26px 22px;box-shadow:0 12px 24px #0000001f}.nx-login-title{font-size:24px;font-weight:700;letter-spacing:-.02em;margin-bottom:6px}.nx-login-sub{font-size:13px;color:var(--nx-on-surface-variant);margin-bottom:22px;line-height:1.5}.nx-field-label{display:flex;justify-content:space-between;align-items:center;font-size:13px;font-weight:600;margin-bottom:7px}.nx-field-label .aux{font-size:12px;font-weight:600;color:var(--nx-secondary);cursor:pointer}.nx-input-wrap{display:flex;align-items:center;gap:10px;background:#ffffffd9;border:1px solid var(--nx-border);border-radius:10px;padding:0 12px;margin-bottom:16px}.nx-input-wrap:focus-within{border:2px solid var(--nx-secondary);padding:0 11px}.nx-input-wrap .material-symbols-outlined{color:var(--nx-outline);font-size:20px}.nx-input-wrap input{flex:1;min-width:0;border:none;outline:none;background:none;padding:13px 0;font-family:inherit;font-size:14px;color:var(--nx-on-surface)}.nx-divider{display:flex;align-items:center;gap:10px;font-size:10px;font-weight:600;letter-spacing:.1em;color:var(--nx-outline);margin:18px 0}.nx-divider:before,.nx-divider:after{content:"";flex:1;height:1px;background:var(--nx-outline-variant)}.nx-login-foot{text-align:center;font-size:12px;color:#5a6076}.nx-login-foot .links{margin-top:8px;display:flex;gap:10px;justify-content:center;font-size:11.5px}.nx-segtabs{display:flex;background:var(--nx-surface-lowest);border-bottom:1px solid var(--nx-border);margin:-20px -16px 16px;padding:0 16px}.nx-segtab{flex:1;padding:14px 8px 12px;background:none;border:none;cursor:pointer;font-family:inherit;font-size:14px;font-weight:600;color:var(--nx-on-surface-variant);border-bottom:2.5px solid transparent}.nx-segtab.active{color:var(--nx-primary);border-bottom-color:var(--nx-primary)}.nx-chips{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.nx-chips::-webkit-scrollbar{display:none}.nx-chip{display:inline-flex;align-items:center;gap:6px;padding:9px 14px;border-radius:999px;border:none;cursor:pointer;background:var(--nx-surface-container);color:var(--nx-on-surface-variant);font-family:inherit;font-size:12px;font-weight:600;white-space:nowrap}.nx-chip.active{background:var(--nx-secondary-container);color:var(--nx-on-secondary-container)}.nx-switch{width:48px;height:28px;flex:0 0 48px;border-radius:999px;border:none;cursor:pointer;background:var(--nx-outline-variant);position:relative;transition:background .2s}.nx-switch:after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:left .2s}.nx-switch.on{background:var(--nx-secondary)}.nx-switch.on:after{left:23px}.nx-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.nx-tile{background:var(--nx-surface-low);border:1px solid var(--nx-border);border-radius:12px;padding:14px 10px;display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer;font-family:inherit;text-align:center}.nx-tile .v{font-size:16px;font-weight:700}.nx-tile .l{font-size:10.5px;color:var(--nx-on-surface-variant)}.nx-carousel{display:flex;gap:12px;overflow-x:auto;margin:0 -16px;padding:2px 16px 6px;scroll-snap-type:x mandatory;scrollbar-width:none}.nx-carousel::-webkit-scrollbar{display:none}.nx-ann-card{flex:0 0 240px;scroll-snap-align:start;overflow:hidden}.nx-ann-cover{height:110px;display:flex;align-items:center;justify-content:center;color:#fff}.nx-action-pill{position:fixed;right:16px;bottom:calc(92px + env(safe-area-inset-bottom));z-index:45;display:flex;align-items:center;gap:8px;padding:14px 20px;border-radius:14px;border:none;cursor:pointer;background:var(--nx-primary-container);color:#fff;font-family:inherit;font-size:13.5px;font-weight:700;box-shadow:var(--nx-shadow-2);transition:transform .15s}.nx-action-pill:active{transform:scale(.94)}.nx-viewfinder{position:relative;border-radius:16px;overflow:hidden;background:radial-gradient(360px 240px at 50% 38%,rgba(176,198,255,.18),transparent),linear-gradient(170deg,#2e3036,#1a1b21 70%);height:380px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#e2e2ea}.nx-vf-title{position:absolute;top:14px;left:0;right:0;text-align:center;font-size:11px;font-weight:700;letter-spacing:.14em;color:#ffffffbf}.nx-vf-corner{position:absolute;width:34px;height:34px;border:3px solid var(--nx-secondary-container)}.nx-vf-corner.tl{top:38px;left:18px;border-right:none;border-bottom:none;border-top-left-radius:12px}.nx-vf-corner.tr{top:38px;right:18px;border-left:none;border-bottom:none;border-top-right-radius:12px}.nx-vf-corner.bl{bottom:38px;left:18px;border-right:none;border-top:none;border-bottom-left-radius:12px}.nx-vf-corner.br{bottom:38px;right:18px;border-left:none;border-top:none;border-bottom-right-radius:12px}.nx-vf-oval{width:180px;height:230px;border:2.5px dashed rgba(255,255,255,.55);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff6}.nx-vf-oval.detected{border-color:var(--nx-secondary-container);border-style:solid;color:var(--nx-secondary-container)}.nx-vf-status{margin-top:14px;font-size:12px;color:#ffffffb3;min-height:18px}.nx-vf-pill{display:inline-flex;align-items:center;gap:7px;margin-top:10px;padding:7px 14px;border-radius:999px;background:#ffffffeb;color:var(--nx-on-surface);font-size:12px;font-weight:700}.nx-vf-pill .dot{width:8px;height:8px;border-radius:50%}.nx-vf-caption{position:absolute;bottom:12px;left:0;right:0;text-align:center;font-size:10.5px;color:#ffffff8c}.nx-health-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.nx-health-opt{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 8px;border-radius:12px;border:1.5px solid var(--nx-border);background:var(--nx-surface-lowest);cursor:pointer;font-family:inherit;font-size:12px;font-weight:600;color:var(--nx-on-surface-variant);transition:border .15s,background .15s,color .15s}.nx-health-opt.active{border:2px solid var(--nx-primary-container);background:var(--nx-primary-fixed);color:var(--nx-primary)}.nx-actionbar{position:sticky;bottom:calc(76px + env(safe-area-inset-bottom));display:flex;gap:12px;background:var(--nx-surface-lowest);border:1px solid var(--nx-border);border-radius:16px;padding:12px;box-shadow:var(--nx-shadow-2)}.nx-map{position:relative;height:130px;background:linear-gradient(rgba(16,24,40,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(16,24,40,.06) 1px,transparent 1px),linear-gradient(135deg,#e6f7f3,#d9e2ff);background-size:26px 26px,26px 26px,100% 100%}.nx-map .coords{position:absolute;left:10px;bottom:10px;background:#1a1b21bf;color:#fff;font-size:10.5px;font-weight:600;padding:4px 9px;border-radius:6px}.nx-fab{position:fixed;right:16px;bottom:calc(96px + env(safe-area-inset-bottom));z-index:45;width:56px;height:56px;border-radius:16px;border:none;cursor:pointer;background:var(--nx-secondary);color:#fff;box-shadow:var(--nx-shadow-2);display:flex;align-items:center;justify-content:center;transition:transform .15s}.nx-fab:active{transform:scale(.92)}
