@import"https://fonts.googleapis.com/css2?family=DM+Serif+Display&family=DM+Mono:wght@400;500&family=Outfit:wght@300;400;500;600&display=swap";:root,html[data-theme=dark]{--bg:#09090F;--bg2:#0F0F1A;--bg3:#141420;--bg4:#1A1A28;--border:rgba(255,255,255,.07);--border2:rgba(255,255,255,.12);--gold:#C9A84C;--gold2:#E8C97A;--gold-dim:rgba(201,168,76,.15);--gold-glow:rgba(201,168,76,.08);--red:#E05555;--red-dim:rgba(224,85,85,.15);--green:#4CAF82;--green-dim:rgba(76,175,130,.15);--blue:#5B8DEF;--blue-dim:rgba(91,141,239,.12);--amber:#E09A30;--amber-dim:rgba(224,154,48,.15);--text:#F0EEF8;--text2:rgba(240,238,248,.65);--text3:rgba(240,238,248,.38);--font:"Outfit",sans-serif;--mono:"DM Mono",monospace;--serif:"DM Serif Display",serif;--r:8px;--r2:14px;--r3:20px;--sw:220px}html[data-theme=light]{--bg:#F5F5F8;--bg2:#EEEEF2;--bg3:#FFFFFF;--bg4:#F0F0F5;--border:rgba(0,0,0,.08);--border2:rgba(0,0,0,.14);--gold:#B8952F;--gold2:#9A7B20;--gold-dim:rgba(184,149,47,.12);--gold-glow:rgba(184,149,47,.08);--red:#D04040;--red-dim:rgba(208,64,64,.1);--green:#3A9B6E;--green-dim:rgba(58,155,110,.1);--blue:#4A7AD9;--blue-dim:rgba(74,122,217,.08);--amber:#CC8820;--amber-dim:rgba(204,136,32,.1);--text:#1A1A2E;--text2:rgba(26,26,46,.7);--text3:rgba(26,26,46,.45)}html[data-theme=light] body:before{display:none}html[data-theme=light] .vtable th{background:var(--bg4)}html[data-theme=light] .field select option{background:#fff}html[data-theme=light] .btn-gold,html[data-theme=light] .sb-badge{color:#fff}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:14px}body{font-family:var(--font);background:var(--bg);color:var(--text);min-height:100vh;overflow-x:hidden}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.025) 2px,rgba(0,0,0,.025) 4px);pointer-events:none;z-index:0}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border2);border-radius:2px}.shell{display:flex;min-height:100vh;position:relative;z-index:1}.sidebar{width:var(--sw);flex-shrink:0;background:var(--bg2);border-right:1px solid var(--border);display:flex;flex-direction:column;position:fixed;top:0;left:0;height:100vh;z-index:100;transition:transform .3s ease}.main{margin-left:var(--sw);flex:1;display:flex;flex-direction:column;min-height:100vh;min-width:0}.topbar{min-height:56px;background:var(--bg2);border-bottom:1px solid var(--border);display:flex;align-items:center;flex-wrap:wrap;padding:12px 24px;gap:12px;position:sticky;top:0;z-index:50}.content{flex:1;padding:28px;width:100%;min-width:0}.sb-logo{padding:20px 20px 16px;border-bottom:1px solid var(--border)}.sb-logotext{font-family:var(--serif);font-size:20px;color:var(--gold2)}.sb-sub{font-size:10px;color:var(--text3);letter-spacing:.15em;text-transform:uppercase;margin-top:2px}.sb-section{padding:12px 12px 4px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--text3)}.sb-nav{padding:4px 8px}.nav-item{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:var(--r);cursor:pointer;color:var(--text2);font-size:13px;transition:all .15s;position:relative;border:none;background:none;width:100%;text-align:left;font-family:var(--font)}.nav-item:hover{color:var(--text);background:#ffffff0a}.nav-item.active{color:var(--gold2);background:var(--gold-dim)}.nav-item.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:2px;height:18px;background:var(--gold);border-radius:2px}.sb-badge{margin-left:auto;background:var(--red);color:#fff;font-size:10px;font-weight:600;padding:1px 6px;border-radius:999px}.sb-footer{margin-top:auto;padding:16px;border-top:1px solid var(--border)}.zt-status{display:flex;align-items:center;gap:8px;padding:10px 12px;background:#4caf8214;border:1px solid rgba(76,175,130,.2);border-radius:var(--r)}.zt-dot{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 6px var(--green);flex-shrink:0}.zt-label{font-size:11px;color:var(--green);font-weight:500}.zt-sub{font-size:10px;color:var(--text3)}.topbar-title{font-size:14px;font-weight:500;color:var(--text)}.topbar-spacer{flex:1}.tb-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--border2);border-radius:var(--r);background:transparent;color:var(--text2);font-size:12px;cursor:pointer;font-family:var(--font);transition:all .15s}.tb-btn:hover{border-color:var(--gold);color:var(--gold2)}.user-avatar{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;cursor:pointer;border:1px solid var(--border2);transition:border-color .15s;flex-shrink:0}.user-avatar:hover{border-color:var(--gold)}.card{background:var(--bg3);border:1px solid var(--border);border-radius:var(--r2);padding:20px}.card-hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.card-title{font-size:13px;font-weight:500;color:var(--text);display:flex;align-items:center;gap:8px}.card-sub{font-size:11px;color:var(--text3)}.metrics-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:24px}.metric-card{background:var(--bg3);border:1px solid var(--border);border-radius:var(--r2);padding:16px 18px;position:relative;overflow:hidden;transition:border-color .2s}.metric-card:hover{border-color:var(--border2)}.metric-card:after{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--gold-dim),transparent)}.mc-label{font-size:11px;color:var(--text3);letter-spacing:.06em;text-transform:uppercase;margin-bottom:8px}.mc-value{font-size:28px;font-weight:300;color:var(--text);font-family:var(--mono);letter-spacing:-.02em}.mc-delta{font-size:11px;margin-top:4px}.mc-icon{position:absolute;top:14px;right:14px;width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:16px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.grid3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.mobile-scroll-tabs{display:flex;gap:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.mobile-scroll-tabs::-webkit-scrollbar{display:none}.mobile-actions{display:flex;gap:8px;flex-wrap:wrap}.mobile-actions>*{min-width:0}.mobile-stack{display:flex;gap:8px;flex-wrap:wrap}.mobile-stack>*{min-width:0}.otp-row{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-bottom:12px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;font-size:11px;color:var(--text3)}.payment-strip{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:8px}.payment-summary{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 0;border-bottom:1px solid var(--border)}.payment-summary:last-child{border-bottom:none}.field{margin-bottom:14px}.field label{display:block;font-size:11px;color:var(--text3);letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px}.field input,.field select,.field textarea{width:100%;background:var(--bg4);border:1px solid var(--border2);border-radius:var(--r);color:var(--text);font-family:var(--font);font-size:13px;padding:9px 12px;outline:none;transition:border-color .15s}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-glow)}.field select option{background:var(--bg4)}.field textarea{resize:vertical}.field-error{font-size:11px;color:var(--red);margin-top:4px}.btn{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;border-radius:var(--r);border:1px solid var(--border2);background:transparent;color:var(--text2);font-size:13px;font-family:var(--font);cursor:pointer;transition:all .15s;font-weight:400}.btn:hover{color:var(--text);background:#ffffff0a}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-gold{background:var(--gold);border-color:var(--gold);color:#0a0a10;font-weight:600}.btn-gold:hover{background:var(--gold2);border-color:var(--gold2)}.btn-danger{background:var(--red-dim);border-color:#e055554d;color:var(--red)}.btn-danger:hover{background:#e0555540}.btn-green{background:var(--green-dim);border-color:#4caf824d;color:var(--green)}.btn-green:hover{background:#4caf8240}.btn-sm{padding:5px 12px;font-size:12px}.btn-xs{padding:3px 8px;font-size:11px}.btns-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:500}.badge-green{background:var(--green-dim);color:var(--green);border:1px solid rgba(76,175,130,.25)}.badge-red{background:var(--red-dim);color:var(--red);border:1px solid rgba(224,85,85,.25)}.badge-amber{background:var(--amber-dim);color:var(--amber);border:1px solid rgba(224,154,48,.25)}.badge-blue{background:var(--blue-dim);color:var(--blue);border:1px solid rgba(91,141,239,.25)}.badge-gold{background:var(--gold-dim);color:var(--gold2);border:1px solid rgba(201,168,76,.3)}.alert{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:var(--r);margin-bottom:16px;font-size:13px;border-width:1px;border-style:solid}.alert-success{background:var(--green-dim);border-color:#4caf8240;color:var(--green)}.alert-warning{background:var(--amber-dim);border-color:#e09a3040;color:var(--amber)}.alert-danger{background:var(--red-dim);border-color:#e0555540;color:var(--red)}.alert-info{background:var(--blue-dim);border-color:#5b8def33;color:var(--blue)}.vtable{width:100%;border-collapse:collapse}.vtable th{text-align:left;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--text3);padding:8px 12px;border-bottom:1px solid var(--border);font-weight:500;position:sticky;top:0;background:var(--bg4);z-index:2}.vtable td{padding:12px;border-bottom:1px solid var(--border);font-size:13px;color:var(--text2);vertical-align:middle}.vtable tr:last-child td{border-bottom:none}.vtable tr:hover td{background:#ffffff05;color:var(--text)}.toast{display:flex;align-items:center;gap:10px;padding:12px 18px;background:var(--bg3);border:1px solid var(--border2);border-radius:var(--r2);font-size:13px;color:var(--text);box-shadow:0 8px 32px #0006;transform:translateY(80px);opacity:0;transition:all .3s ease;max-width:360px;pointer-events:none}.toast.show{transform:translateY(0);opacity:1;pointer-events:auto}.otp-digit{width:48px;height:56px;background:var(--bg4);border:2px solid var(--border2);border-radius:var(--r);text-align:center;font-size:24px;font-family:var(--mono);color:var(--text);outline:none;caret-color:var(--gold);transition:border-color .15s}.otp-digit:focus{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-glow)}.otp-digit.err{border-color:var(--red)!important;background:var(--red-dim)}.divider{border:none;border-top:1px solid var(--border);margin:20px 0}.cam-wrap{position:relative;width:100%;aspect-ratio:4/3;background:#000;border-radius:var(--r);overflow:hidden;border:1px solid var(--border2)}.cam-wrap video{width:100%;height:100%;object-fit:cover;display:block}.cam-corner{position:absolute;width:20px;height:20px;border-color:var(--gold);border-style:solid;opacity:.7}.cam-corner.tl{top:12px;left:12px;border-width:2px 0 0 2px}.cam-corner.tr{top:12px;right:12px;border-width:2px 2px 0 0}.cam-corner.bl{bottom:12px;left:12px;border-width:0 0 2px 2px}.cam-corner.br{bottom:12px;right:12px;border-width:0 2px 2px 0}@keyframes scan-line{0%{top:-10%}to{top:110%}}.cam-scan{position:absolute;left:0;right:0;height:1px;background:#c9a84c80;animation:scan-line 2s linear infinite}.photo-preview{width:100%;aspect-ratio:4/3;border-radius:var(--r);overflow:hidden;border:2px solid var(--gold);position:relative}.photo-preview img{width:100%;height:100%;object-fit:cover}.pw-strength{height:3px;border-radius:2px;margin-top:4px;transition:all .3s}.pw-strength-label{font-size:10px;margin-top:3px}.step-indicator{display:flex;align-items:center;gap:0;margin-bottom:22px}.step-node{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0;transition:all .3s;font-family:var(--mono)}.step-node.done{background:var(--green);color:#fff}.step-node.active{background:var(--gold);color:#0a0a10}.step-node.pending{background:var(--bg4);color:var(--text3);border:1px solid var(--border2)}.step-line{flex:1;height:2px;background:var(--border);margin:0 4px}.step-line.done{background:var(--green)}.step-label{font-size:10px;color:var(--text3);margin-top:4px;text-align:center}@keyframes fadeSlide{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.4}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}.fade-slide{animation:fadeSlide .25s ease}.pulse{animation:pulse-dot 2s infinite}.spin{animation:spin .8s linear infinite}.role-superadmin{background:linear-gradient(135deg,#c9a84c40,#e8c97a26);color:var(--gold2);border:1px solid rgba(201,168,76,.4);border-radius:999px;padding:2px 10px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;display:inline-flex}.role-admin{background:#5b8def26;color:var(--blue);border:1px solid rgba(91,141,239,.3);border-radius:999px;padding:2px 10px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;display:inline-flex}.role-receptionist{background:#4caf821f;color:var(--green);border:1px solid rgba(76,175,130,.25);border-radius:999px;padding:2px 10px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;display:inline-flex}.role-security{background:#e055551f;color:var(--red);border:1px solid rgba(224,85,85,.25);border-radius:999px;padding:2px 10px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;display:inline-flex}.role-readonly{background:#f0eef80f;color:var(--text3);border:1px solid var(--border2);border-radius:999px;padding:2px 10px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;display:inline-flex}@media (max-width:1024px){.grid3{grid-template-columns:1fr 1fr}}@media (max-width:768px){:root{--sw:0px}.sidebar{transform:translate(-220px)}.sidebar.open{transform:translate(0);width:220px}.main{margin-left:0}.topbar{padding:12px 16px}.topbar-title{flex:1 1 100%;min-width:0}.content,.card{padding:16px}.grid2,.grid3,.detail-grid{grid-template-columns:1fr}.metrics-row{grid-template-columns:1fr 1fr!important}.mobile-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:99}.otp-digit{width:42px;height:50px;font-size:20px}}@media (max-width:480px){.metrics-row{grid-template-columns:1fr}}.search-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:500;display:flex;align-items:flex-start;justify-content:center;padding-top:12vh}.search-modal{background:var(--bg3);border:1px solid var(--border2);border-radius:var(--r2);width:520px;max-width:94vw;box-shadow:0 16px 48px #00000080;overflow:hidden}.search-input{width:100%;background:transparent;border:none;border-bottom:1px solid var(--border);color:var(--text);font-family:var(--font);font-size:15px;padding:16px 20px;outline:none}.search-input::placeholder{color:var(--text3)}.search-results{max-height:360px;overflow-y:auto;padding:6px}.search-item{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:var(--r);cursor:pointer;transition:background .1s}.search-item:hover,.search-item.active{background:var(--gold-dim)}.search-item .si-icon{font-size:14px;width:20px;text-align:center;flex-shrink:0}.search-item .si-label{flex:1;font-size:13px;color:var(--text)}.search-item .si-sub{font-size:11px;color:var(--text3)}.search-item .si-type{font-size:10px;color:var(--text3);padding:2px 6px;background:var(--bg4);border-radius:4px;flex-shrink:0}.gauge-ring{position:relative;width:120px;height:120px}.gauge-ring svg{transform:rotate(-90deg)}.gauge-ring .gauge-label{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.theme-toggle{display:flex;align-items:center;gap:4px;padding:4px;border:1px solid var(--border2);border-radius:999px;background:var(--bg4);cursor:pointer}.theme-toggle span{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;font-size:13px;transition:all .2s}.theme-toggle span.active{background:var(--gold-dim);box-shadow:0 0 0 1px var(--gold)}
