.ax{--navy:#071428;--navy-2:#0c2146;--blue:#2f6bff;--blue-2:#1746d1;--sky:#7fb0ff;--white:#f6f9ff;--teal:#17b897;--ink:#0e1b33;--ink-2:#51607a;--line:#d7e0ee;--danger:#c42b2b;background:var(--white);min-height:100dvh;color:var(--ink);grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);font-family:Plus Jakarta Sans,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;display:grid}.ax *,.ax :before,.ax :after{box-sizing:border-box}.ax-brand{color:#fff;background:radial-gradient(1200px 600px at 10% -10%, #17408f 0%, transparent 60%), linear-gradient(160deg, var(--navy-2) 0%, var(--navy) 70%);flex-direction:column;gap:28px;padding:40px 48px;display:flex;position:relative;overflow:hidden}.ax-glow{filter:blur(70px);pointer-events:none;border-radius:50%;position:absolute}.ax-glow.one{opacity:.38;background:#2f6bff;width:380px;height:380px;top:12%;right:-120px}.ax-glow.two{opacity:.16;background:#17b897;width:300px;height:300px;bottom:-80px;left:-110px}.ax-brand>:not(.ax-glow){position:relative}.ax-wordmark{letter-spacing:.34em;align-items:center;gap:12px;font-size:22px;font-weight:300;line-height:1;display:flex}.ax-wordmark b{letter-spacing:.16em;margin-right:.5em;font-weight:800}.ax-wordmark img{width:auto;height:44px;display:block}.ax-wordmark.compact{color:var(--navy-2);font-size:15px}.ax-wordmark.compact img{height:30px}.ax-visual{border-radius:28px 28px 120px;flex:1;min-height:240px;position:relative;overflow:hidden;box-shadow:0 30px 80px -20px #2f6bff8c,inset 0 0 0 1px #ffffff1a}.ax-visual img,.ax-visual svg{object-fit:cover;object-position:46% 32%;width:100%;height:100%;display:block;position:absolute;inset:0}.ax-visual-shade{background:linear-gradient(#07142800 35%,#071428d1 100%);position:absolute;inset:0}.ax-visual-caption{letter-spacing:-.01em;margin:0;font-size:26px;font-weight:700;line-height:1.15;position:absolute;bottom:26px;left:28px;right:90px}.ax-credit{opacity:.8;margin-top:-10px;font-size:11px}.ax .ax-credit a{color:inherit;font-weight:500;text-decoration:underline}.ax-tagline{color:#c9dbff;letter-spacing:.04em;margin:0;font-size:15px}.ax-tagline i{color:var(--sky);margin:0 6px;font-style:normal}.ax-panel{background:radial-gradient(700px 380px at 100% 0%, #e3edff 0%, transparent 70%), var(--white);flex-direction:column;justify-content:center;align-items:center;gap:18px;padding:32px 24px;display:flex}.ax-card{-webkit-backdrop-filter:blur(14px);background:#ffffffc7;border:1px solid #ffffffe6;border-radius:24px;width:min(440px,100%);padding:36px 34px 30px;overflow:hidden;box-shadow:0 24px 60px -24px #0c214659,0 2px 6px #0c21460f}.ax-card-brand{margin-bottom:22px;display:none}.ax-form{flex-direction:column;gap:16px;display:flex}.ax h1{letter-spacing:-.02em;color:var(--ink);margin:0;font-size:27px;font-weight:750}.ax-sub{color:var(--ink-2);margin:6px 0 0;font-size:14.5px;line-height:1.5}.ax-sub strong{color:var(--ink);overflow-wrap:anywhere;font-weight:650}.ax-fine{color:var(--ink-2);text-align:center;margin:0;font-size:13px}.ax-foot{color:#8492aa;margin:0;font-size:12.5px}.ax-field{position:relative}.ax-field input{width:100%;height:56px;font:inherit;color:var(--ink);border:1.5px solid var(--line);background:#fff;border-radius:14px;outline:none;padding:22px 46px 8px;font-size:15.5px;transition:border-color .16s,box-shadow .16s,background .16s}.ax-field input:hover{border-color:#b9c7de}.ax-field input:focus{border-color:var(--blue);box-shadow:0 0 0 4px #2f6bff29}.ax-field label{color:var(--ink-2);pointer-events:none;transform-origin:0 0;font-size:15px;transition:transform .16s,color .16s;position:absolute;top:18px;left:46px}.ax-field input:focus+label,.ax-field input:not(:placeholder-shown)+label,.ax-field input:focus~label,.ax-field input:not(:placeholder-shown)~label{color:var(--blue-2);transform:translateY(-10px)scale(.78)}.ax-field-icon{color:#7b8aa5;transition:color .16s;display:flex;position:absolute;top:19px;left:15px}.ax-field:focus-within .ax-field-icon{color:var(--blue)}.ax-field.invalid input{border-color:var(--danger);box-shadow:0 0 0 4px #c42b2b1a}.ax-field.invalid .ax-field-icon,.ax-field.invalid label{color:var(--danger)}.ax-field-error{color:var(--danger);margin:6px 2px 0;font-size:12.5px;font-weight:550}.ax-eye{color:#7b8aa5;cursor:pointer;background:0 0;border:0;border-radius:10px;place-items:center;width:40px;height:40px;display:grid;position:absolute;top:8px;right:8px}.ax-eye:hover{color:var(--ink);background:#eef3fb}.ax-eye:focus-visible,.ax-link:focus-visible,.ax a:focus-visible,.ax-cta:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.ax-eye-icon{animation:.18s ease-out ax-pop;display:flex}.ax-row{justify-content:space-between;align-items:center;font-size:13.5px;display:flex}.ax-row.center{justify-content:center}.ax a,.ax-link{color:var(--blue-2);font-weight:600;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600;text-decoration:none}.ax a:hover,.ax-link:hover:not(:disabled){text-decoration:underline}.ax-link:disabled{color:#8a97ad;cursor:default;font-weight:500}.ax-link.quiet{color:var(--ink-2);font-size:13px;font-weight:500}.ax-cta{color:#fff;width:100%;height:54px;font:inherit;cursor:pointer;background:linear-gradient(135deg, #3b7bff 0%, var(--blue-2) 100%);border:0;border-radius:14px;justify-content:center;align-items:center;gap:10px;font-size:16px;font-weight:650;transition:transform .14s,box-shadow .14s,filter .14s;display:flex;box-shadow:0 10px 24px -8px #2f6bffa6,inset 0 1px #ffffff40}.ax-cta:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 16px 32px -10px #2f6bffbf,inset 0 1px #ffffff40}.ax-cta:active:not(:disabled){filter:brightness(.94);transform:translateY(0)scale(.99)}.ax-cta:disabled{cursor:not-allowed;box-shadow:none;background:linear-gradient(135deg,#a9bfee,#8fa6dc)}.ax-cta[aria-busy=true]{background:linear-gradient(135deg, #3b7bff 0%, var(--blue-2) 100%);opacity:.85}.ax-spinner{border:2.5px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite ax-spin}.ax-alert{color:#8f1d1d;background:#fdecec;border:1px solid #f5c6c6;border-radius:12px;align-items:flex-start;gap:10px;padding:11px 13px;font-size:13.5px;line-height:1.45;animation:.22s ease-out both ax-rise;display:flex}.ax-alert svg{flex-shrink:0;margin-top:1px}.ax-alert.ok{color:#0c6b57;background:#e4f8f2;border-color:#aee6d7}.ax-steps{color:var(--ink-2);align-items:center;gap:10px;margin:0 0 4px;padding:0;font-size:13px;font-weight:600;list-style:none;display:flex}.ax-steps li{white-space:nowrap;align-items:center;gap:8px;display:flex}.ax-steps .ax-line{background:linear-gradient(90deg, var(--teal), var(--blue));border-radius:2px;flex:1;min-width:16px;height:2px}.ax-dot{border-radius:50%;place-items:center;width:24px;height:24px;font-size:12.5px;font-weight:700;display:grid}.ax-steps .done{color:#0c6b57}.ax-steps .done .ax-dot{background:var(--teal);color:#fff}.ax-steps .current{color:var(--blue-2)}.ax-steps .current .ax-dot{background:var(--blue);color:#fff;box-shadow:0 0 0 4px #2f6bff2e}.ax-otp{perspective:600px;grid-template-columns:repeat(4,minmax(0,76px));justify-content:center;gap:14px;display:grid}.ax-otp-cell{animation:.5s cubic-bezier(.2,1.3,.4,1) both ax-cell-in;position:relative}.ax-otp input{aspect-ratio:1/1.14;text-align:center;width:100%;min-height:56px;font:inherit;color:var(--ink);border:1.5px solid var(--line);caret-color:var(--blue);background:linear-gradient(#fff,#f4f7fd);border-radius:18px;outline:none;padding:0;font-size:30px;font-weight:750;transition:border-color .18s,box-shadow .18s,transform .18s cubic-bezier(.2,1.3,.4,1),background .18s,color .18s;box-shadow:0 1px 2px #0c21460f}.ax-otp input:focus{border-color:var(--blue);transform:translateY(-4px)scale(1.04);box-shadow:0 0 0 4px #2f6bff2e,0 14px 26px -12px #2f6bff99}.ax-otp-cell.filled input{color:#fff;background:linear-gradient(145deg, #3b7bff, var(--blue-2));border-color:#0000;animation:.34s cubic-bezier(.2,1.5,.4,1) ax-digit;box-shadow:0 12px 24px -10px #2f6bffbf}.ax-otp-cell.filled input:focus{box-shadow:0 0 0 4px #2f6bff38,0 14px 26px -10px #2f6bffcc}.ax-otp-ring{border:2px solid var(--blue);pointer-events:none;border-radius:18px;animation:.5s ease-out forwards ax-ring;position:absolute;inset:0}.ax-otp-bar{pointer-events:none;background:#c9d6ec;border-radius:3px;height:3px;transition:opacity .18s,transform .18s;position:absolute;bottom:10px;left:28%;right:28%}.ax-otp-cell.filled .ax-otp-bar,.ax-otp input:focus~.ax-otp-bar{opacity:0;transform:scaleX(.2)}.ax-otp.invalid input{border-color:var(--danger)}.ax-otp input:disabled{opacity:.75}.ax-otp.shake{animation:.38s cubic-bezier(.36,.07,.19,.97) ax-shake}.ax-otp.accepted .ax-otp-cell input{opacity:1;color:#fff;background:linear-gradient(145deg, #3fd7b6, var(--teal));animation:.42s cubic-bezier(.2,1.4,.4,1) both ax-accept;animation-delay:calc(var(--i) * 90ms);transition-delay:calc(var(--i) * 90ms);border-color:#0000;box-shadow:0 12px 24px -10px #17b897cc}.ax-otp-progress{background:#e3eaf6;border-radius:4px;width:min(346px,100%);height:4px;margin:-4px auto 0;overflow:hidden}.ax-otp-progress span{background:linear-gradient(90deg, var(--blue), var(--teal));border-radius:4px;height:100%;transition:width .3s cubic-bezier(.2,.8,.2,1);display:block}.ax-cta.done,.ax-cta.done:disabled{background:linear-gradient(135deg, #3fd7b6, var(--teal));opacity:1;box-shadow:0 10px 24px -8px #17b897b3}.ax-timer{text-align:center;color:var(--ink-2);margin:0;font-size:13.5px}.ax-timer b{color:var(--ink);font-variant-numeric:tabular-nums}.ax-timer.expired{color:var(--danger);font-weight:650}.ax-success{text-align:center;align-items:center;gap:10px;padding:18px 0 8px}.ax-check{background:radial-gradient(circle at 30% 25%, #3fd7b6, var(--teal));border-radius:50%;place-items:center;width:84px;height:84px;margin-bottom:8px;animation:.42s cubic-bezier(.2,1.4,.4,1) both ax-pop;display:grid;box-shadow:0 0 0 10px #17b89724,0 18px 36px -12px #17b897b3}.ax-check svg{fill:none;stroke:#fff;stroke-width:4px;stroke-linecap:round;stroke-linejoin:round;width:52px;height:52px}.ax-check circle{display:none}.ax-check path{stroke-dasharray:40;stroke-dashoffset:40px;animation:.4s ease-out .22s forwards ax-draw}.ax-rise{animation:.42s cubic-bezier(.2,.8,.2,1) both ax-rise}.ax-stage.in{animation:.28s cubic-bezier(.2,.8,.2,1) both ax-in}.ax-stage.in-back{animation:.28s cubic-bezier(.2,.8,.2,1) both ax-in-back}.ax-stage.out{animation:.17s ease-in both ax-out}.ax-stage.out-back{animation:.17s ease-in both ax-out-back}@keyframes ax-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes ax-in{0%{opacity:0;transform:translate(28px)}to{opacity:1;transform:none}}@keyframes ax-in-back{0%{opacity:0;transform:translate(-28px)}to{opacity:1;transform:none}}@keyframes ax-out{to{opacity:0;transform:translate(-28px)}}@keyframes ax-out-back{to{opacity:0;transform:translate(28px)}}@keyframes ax-spin{to{transform:rotate(360deg)}}@keyframes ax-pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:none}}@keyframes ax-cell-in{0%{opacity:0;transform:translateY(18px)rotateX(-35deg)scale(.9)}to{opacity:1;transform:none}}@keyframes ax-digit{0%{transform:translateY(8px)scale(.82)}60%{transform:translateY(-5px)scale(1.08)}to{transform:none}}@keyframes ax-ring{0%{opacity:.7;transform:scale(1)}to{opacity:0;transform:scale(1.45)}}@keyframes ax-accept{0%{transform:none}50%{transform:translateY(-10px)scale(1.06)}to{transform:none}}@keyframes ax-draw{to{stroke-dashoffset:0}}@keyframes ax-shake{10%,90%{transform:translate(-2px)}20%,80%{transform:translate(4px)}30%,50%,70%{transform:translate(-7px)}40%,60%{transform:translate(7px)}}@media (prefers-reduced-motion:reduce){.ax *,.ax :before,.ax :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-delay:0s!important}.ax-check path{stroke-dashoffset:0}}@media (width<=920px){.ax{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr)}.ax-brand{gap:14px;padding:22px 22px 54px}.ax-visual{border-radius:20px 20px 56px;flex:none;height:132px;min-height:0}.ax-visual-caption{font-size:18px;bottom:14px;left:18px}.ax-brand-foot{display:none}.ax-wordmark{font-size:17px}.ax-wordmark img{height:34px}.ax-panel{background:0 0;justify-content:flex-start;margin-top:-34px;padding:0 16px 24px;position:relative}.ax-card{background:#fff;border-radius:22px;padding:26px 20px 22px}.ax h1{font-size:23px}}@media (width<=380px){.ax-brand{padding:18px 16px 50px}.ax-visual{height:104px}.ax-panel{padding:0 10px 20px}.ax-card{padding:22px 14px 18px}.ax-otp{grid-template-columns:repeat(4,minmax(0,62px));gap:9px}.ax-otp input{border-radius:15px;font-size:25px}.ax-otp-ring{border-radius:15px}.ax-steps{gap:6px;font-size:12px}.ax-field input{font-size:16px}}@media (width<=920px) and (height<=620px){.ax-visual{display:none}.ax-brand{padding-bottom:46px}}.rpt{--rpt-navy:#14304f;--rpt-ink:#1a2433;--rpt-muted:#5b6676;--rpt-line:#dde4ec;--rpt-soft:#f4f7fb;--rpt-total:#e5edf6;--rpt-green:#11845b;--rpt-amber:#b26b00;--rpt-red:#c0392b;color:var(--rpt-ink);font-variant-numeric:tabular-nums;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff;border-radius:16px;padding:30px 32px 34px;box-shadow:0 1px 2px #0f1e3714,0 18px 48px -18px #0f1e3759}.rpt *{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.rpt-head{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.rpt-brand{align-items:center;gap:14px;min-width:0;display:flex}.rpt-logo{object-fit:contain;flex:none;width:64px;height:64px}.rpt-mono{background:linear-gradient(145deg, #1d4572, var(--rpt-navy));color:#fff;letter-spacing:.5px;border-radius:14px;flex:none;place-items:center;width:58px;height:58px;font-size:22px;font-weight:800;display:grid}.rpt-company{color:var(--rpt-navy);letter-spacing:-.2px;font-size:22px;font-weight:800;line-height:1.15}.rpt-contact{color:var(--rpt-muted);margin-top:4px;font-size:12.5px;line-height:1.5}.rpt-contact span+span:before{content:"·";color:#a8b3c0;margin:0 8px}.rpt-title{text-align:right;flex:none;max-width:46%}.rpt-title h2{color:var(--rpt-ink);letter-spacing:-.2px;margin:0;font-size:20px;font-weight:800}.rpt-period{background:var(--rpt-navy);color:#fff;border-radius:999px;margin-top:6px;padding:3px 10px;font-size:12px;font-weight:700;display:inline-block}.rpt-building{color:var(--rpt-muted);margin-top:6px;font-size:12px}.rpt-rule{background:var(--rpt-navy);border-radius:2px;height:3px;margin:18px 0 0}.rpt-rule+.rpt-rule2{background:#8aa4c2;height:1px;margin-top:2px}.rpt-meta{background:var(--rpt-soft);border-radius:10px;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:14px;padding:12px 16px;display:grid}.rpt-meta dt{letter-spacing:.5px;color:var(--rpt-muted);text-transform:uppercase;font-size:10.5px;font-weight:700}.rpt-meta dd{overflow-wrap:anywhere;margin:3px 0 0;font-size:13.5px;font-weight:700}.rpt-warn{color:var(--rpt-red);background:#fdecea;border-radius:10px;margin-top:12px;padding:10px 14px;font-size:13px;font-weight:600}.rpt-demo{color:#9a3412;margin-top:10px;font-size:13px;font-weight:700}.rpt-kpis{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px;margin-top:18px;display:grid}.rpt-kpi{border:1px solid var(--rpt-line);background:#fff;border-radius:12px;padding:12px 14px 12px 18px;position:relative}.rpt-kpi:before{content:"";background:var(--tone);border-radius:0 4px 4px 0;width:4px;position:absolute;top:10px;bottom:10px;left:0}.rpt-kpi-label{letter-spacing:.5px;text-transform:uppercase;color:var(--rpt-muted);font-size:10.5px;font-weight:700}.rpt-kpi-value{color:var(--rpt-ink);margin-top:4px;font-size:21px;font-weight:800}.rpt-kpi-value small{color:var(--rpt-muted);margin-left:4px;font-size:11.5px;font-weight:600}.rpt-section{margin-top:26px}.rpt-section h3{color:var(--rpt-navy);align-items:center;gap:10px;margin:0 0 10px;font-size:15.5px;font-weight:800;display:flex}.rpt-section h3:before{content:"";background:var(--rpt-navy);border-radius:2px;width:4px;height:16px}.rpt-section h3 small{color:var(--rpt-muted);font-size:12px;font-weight:600}.rpt-tablewrap{border:1px solid var(--rpt-line);border-radius:10px;overflow-x:auto}.rpt-table{border-collapse:collapse;width:100%;font-size:13px}.rpt-table th{background:var(--rpt-navy);color:#fff;letter-spacing:.2px;text-align:left;white-space:nowrap;padding:9px 12px;font-size:11.5px;font-weight:700}.rpt-table td{border-top:1px solid var(--rpt-line);color:var(--rpt-ink);padding:8px 12px}.rpt-table tbody tr:nth-child(2n) td{background:var(--rpt-soft)}.rpt-table tbody tr:hover td{background:#eaf1fb}.rpt-table .num{text-align:right;white-space:nowrap}.rpt-table tfoot td{background:var(--rpt-total);color:var(--rpt-navy);border-top:2px solid var(--rpt-navy);font-weight:800}.rpt-empty{color:var(--rpt-muted);background:var(--rpt-soft);border-radius:10px;padding:16px;font-style:italic}.rpt-pill{color:var(--rpt-ink);white-space:nowrap;background:#eef1f5;border-radius:999px;padding:2px 9px;font-size:11.5px;font-weight:700;display:inline-block}.rpt-pill.green{color:var(--rpt-green);background:#e3f4ec}.rpt-pill.amber{color:var(--rpt-amber);background:#fdf1dc}.rpt-pill.red{color:var(--rpt-red);background:#fbe4e1}.rpt-notes{background:var(--rpt-soft);color:var(--rpt-muted);border-radius:10px;margin-top:24px;padding:12px 16px;font-size:12.5px}.rpt-notes b{color:var(--rpt-navy);letter-spacing:.5px;margin-bottom:4px;font-size:11px;display:block}.rpt-notes p{margin:3px 0}.rpt-sign{grid-template-columns:repeat(3,1fr);gap:28px;margin-top:48px;display:grid}.rpt-sign div{border-top:1.5px solid var(--rpt-navy);padding-top:6px;font-size:12.5px;font-weight:700}.rpt-sign span{color:var(--rpt-muted);font-size:11.5px;font-weight:400;display:block}.rpt-foot{border-top:1px solid var(--rpt-line);color:var(--rpt-muted);justify-content:space-between;gap:12px;margin-top:26px;padding-top:10px;font-size:11.5px;display:flex}@media (width<=760px){.rpt{border-radius:12px;padding:18px 16px 22px}.rpt-head{flex-direction:column}.rpt-title{text-align:left;max-width:none}.rpt-meta,.rpt-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.rpt-kpi-value{font-size:17px}.rpt-sign{grid-template-columns:1fr;gap:30px}.rpt-foot{flex-direction:column}}@media print{.rpt{box-shadow:none;border-radius:0;padding:0}.rpt,.rpt *{-webkit-print-color-adjust:exact;print-color-adjust:exact}.rpt-tablewrap{border:0;overflow:visible}.rpt-section{break-inside:auto}.rpt-kpi,.rpt-table tr{break-inside:avoid}}.rpt-table.dense{font-size:12px}.rpt-table.dense th{white-space:normal;vertical-align:bottom;padding:8px 7px;font-size:10.5px}.rpt-table.dense td{padding:7px}.rpt-contact{overflow-wrap:anywhere}@media (width<=760px){.rpt-logo{width:52px;height:52px}.rpt-company{font-size:19px}}.rpt-picker{padding:6px 0 8px}.rpt-picker-group{letter-spacing:.8px;text-transform:uppercase;color:var(--text-3,#8b95a5);padding:12px 16px 6px;font-size:10.5px;font-weight:700}.rpt-picker-item{width:calc(100% - 12px);color:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;align-items:flex-start;gap:11px;margin:1px 6px;padding:8px 10px;transition:background .15s,border-color .15s;display:flex}.rpt-picker-item:hover{background:#6fa2ff12}.rpt-picker-item[aria-selected=true]{background:#2f6bff29;border-color:#6fa2ff73}.rpt-picker-item b{font-size:13.5px;font-weight:650;display:block}.rpt-picker-item small{color:var(--text-3,#8b95a5);margin-top:1px;font-size:11.5px;display:block}.rpt-picker-icon{color:#8fb4ff;background:#6fa2ff1f;border-radius:9px;flex:none;place-items:center;width:30px;height:30px;display:grid}.rpt-picker-item[aria-selected=true] .rpt-picker-icon{color:#fff;background:linear-gradient(145deg,#3b82f6,#2f6bff)}@media print{.rpt-picker{display:none}}:root{--bg:#f3f4f6;--surface:#fff;--surface-2:#f8f9fb;--border:#dfe3e8;--border-strong:#c5ccd6;--text:#17202b;--text-2:#4a5665;--text-3:#6b7685;--accent:#1d5fa7;--accent-hover:#174e8a;--accent-soft:#e8f0f9;--nav:#18222f;--nav-text:#c6ced9;--nav-active:#26374c;--green:#17723f;--green-bg:#e3f4ea;--amber:#8a5a00;--amber-bg:#fdf1d3;--red:#b3261e;--red-bg:#fde7e5;--gray:#55606e;--gray-bg:#eceff3;--blue:#1d5fa7;--blue-bg:#e8f0f9;--radius:6px;--shadow:0 1px 2px #1018280f;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-size:14px;line-height:1.45}h1,h2,h3,h4{letter-spacing:-.01em;margin:0;font-weight:650}h1{font-size:20px}h2{font-size:16px}h3{font-size:14px}p{margin:0}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}.num{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.muted{color:var(--text-3)}.small{font-size:12.5px}.strong{font-weight:650}.nowrap{white-space:nowrap}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.row.end{justify-content:flex-end}.row.between{justify-content:space-between}.stack{flex-direction:column;gap:16px;display:flex}.stack.tight{gap:8px}.grid{gap:16px;display:grid}.grid>*{min-width:0}.grid.c2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.c3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.c4{grid-template-columns:repeat(4,minmax(0,1fr))}.grow{flex:1;min-width:0}.shell{min-height:100%;display:flex}.sidebar{background:var(--nav);width:228px;color:var(--nav-text);flex-direction:column;flex-shrink:0;height:100vh;display:flex;position:sticky;top:0;overflow-y:auto}.brand{color:#fff;border-bottom:1px solid #263242;padding:16px 16px 12px;font-size:15px;font-weight:650;line-height:1.25}.brand small{color:#8d99a8;margin-top:2px;font-size:12px;font-weight:400;display:block}.nav{flex-direction:column;gap:1px;padding:8px;display:flex}.nav-group{text-transform:uppercase;letter-spacing:.06em;color:#7c8898;padding:12px 10px 4px;font-size:11px}.nav a{color:var(--nav-text);border-radius:5px;justify-content:space-between;align-items:center;gap:8px;padding:7px 10px;font-size:13.5px;display:flex}.nav a:hover{color:#fff;background:#202d3d;text-decoration:none}.nav a.active{background:var(--nav-active);color:#fff;font-weight:600;box-shadow:inset 3px 0 #6aa5e6}.count{color:#fff;text-align:center;background:#b3261e;border-radius:10px;min-width:18px;padding:0 6px;font-size:11px;font-weight:650}.main{flex-direction:column;flex:1;min-width:0;display:flex}.topbar{background:var(--surface);border-bottom:1px solid var(--border);z-index:20;align-items:center;gap:12px;padding:8px 20px;display:flex;position:sticky;top:0}.content{width:100%;max-width:1480px;padding:20px}.demo-banner{color:#fff;text-align:center;letter-spacing:.02em;background:#7c2d12;padding:4px 12px;font-size:12.5px;font-weight:600}.btn.menu-btn{display:none}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.page-head p{color:var(--text-3);margin-top:2px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.card-head{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:12px 16px;display:flex}.card-body{padding:16px}.stat{padding:12px 14px}.stat .k{color:var(--text-3);font-size:12.5px}.stat .v{font-variant-numeric:tabular-nums;letter-spacing:-.01em;margin-top:2px;font-size:20px;font-weight:650}.stat .s{color:var(--text-3);margin-top:2px;font-size:12px}.stat.link{cursor:pointer}.stat.link:hover{background:var(--surface-2)}.btn{border:1px solid var(--border-strong);background:var(--surface);cursor:pointer;white-space:nowrap;min-height:34px;color:var(--text);border-radius:5px;justify-content:center;align-items:center;gap:6px;padding:6px 12px;font-size:13.5px;font-weight:550;display:inline-flex}.btn:hover{background:var(--surface-2);text-decoration:none}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover{background:var(--accent-hover)}.btn.danger{background:var(--red);border-color:var(--red);color:#fff}.btn.ghost{color:var(--accent);background:0 0;border-color:#0000;min-height:28px;padding:4px 8px}.btn.sm{min-height:28px;padding:3px 9px;font-size:13px}.btn:disabled{opacity:.55;cursor:not-allowed}.field{flex-direction:column;gap:4px;min-width:0;display:flex}.field label,.label{color:var(--text-2);font-size:12.5px;font-weight:600}.field .hint{color:var(--text-3);font-size:12px}.field .err{color:var(--red);font-size:12px;font-weight:550}.input,select.input,textarea.input{border:1px solid var(--border-strong);background:#fff;border-radius:5px;width:100%;min-height:34px;padding:6px 9px}.input:disabled{background:var(--surface-2);color:var(--text-3)}.input.invalid{border-color:var(--red)}textarea.input{resize:vertical;min-height:72px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px;display:grid}.form-grid .full{grid-column:1/-1}.filters{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:flex-end;gap:8px;padding:12px 16px;display:flex}.filters .field{min-width:140px}.filters .field.wide{flex:1;min-width:220px}.check{align-items:center;gap:8px;font-size:13.5px;display:flex}.table-wrap{overflow-x:auto}table.table{border-collapse:collapse;width:100%;font-size:13.5px}.table th{text-align:left;color:var(--text-3);border-bottom:1px solid var(--border);background:var(--surface-2);white-space:nowrap;padding:8px 12px;font-size:12px;font-weight:600}.table td{border-bottom:1px solid var(--border);vertical-align:middle;padding:8px 12px}.table tr:last-child td{border-bottom:0}.table tbody tr.click{cursor:pointer}.table tbody tr.click:hover{background:var(--surface-2)}.table tfoot td{background:var(--surface-2);border-top:1px solid var(--border-strong);font-weight:650}.table th.num{text-align:right}.pager{border-top:1px solid var(--border);color:var(--text-3);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;font-size:13px;display:flex}.empty{text-align:center;color:var(--text-3);padding:32px 16px}.empty strong{color:var(--text-2);margin-bottom:4px;display:block}.badge{white-space:nowrap;border:1px solid #0000;border-radius:10px;align-items:center;gap:4px;padding:1px 8px;font-size:12px;font-weight:600;display:inline-flex}.badge.green{background:var(--green-bg);color:var(--green)}.badge.amber{background:var(--amber-bg);color:var(--amber)}.badge.red{background:var(--red-bg);color:var(--red)}.badge.gray{background:var(--gray-bg);color:var(--gray)}.badge.blue{background:var(--blue-bg);color:var(--blue)}.alert{border-radius:var(--radius);border:1px solid;align-items:flex-start;gap:8px;padding:10px 12px;display:flex}.alert.red{background:var(--red-bg);color:#7a1a14;border-color:#f0b4af}.alert.amber{background:var(--amber-bg);color:#6b4500;border-color:#ecd08a}.alert.blue{background:var(--blue-bg);color:#153f70;border-color:#b9d2ee}.alert.green{background:var(--green-bg);color:#0f5630;border-color:#a8d9bb}.tabs{border-bottom:1px solid var(--border);gap:2px;padding:0 8px;display:flex;overflow-x:auto}.tabs button{cursor:pointer;color:var(--text-3);white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;padding:10px 12px;font-weight:550}.tabs button[aria-selected=true]{color:var(--accent);border-bottom-color:var(--accent)}dialog.modal{border:1px solid var(--border-strong);width:min(640px,100vw - 24px);max-height:calc(100vh - 32px);color:var(--text);border-radius:8px;padding:0;box-shadow:0 16px 48px #10182838}dialog.modal.wide{width:min(880px,100vw - 24px)}dialog.modal::backdrop{background:#10182873}.modal-head{border-bottom:1px solid var(--border);z-index:1;background:#fff;justify-content:space-between;align-items:center;gap:8px;padding:14px 16px;display:flex;position:sticky;top:0}.modal-body{padding:16px}.modal-foot{border-top:1px solid var(--border);background:var(--surface-2);flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:12px 16px;display:flex;position:sticky;bottom:0}.dl{grid-template-columns:minmax(120px,34%) 1fr;gap:6px 12px;display:grid}.dl dt{color:var(--text-3)}.dl dd{overflow-wrap:anywhere;margin:0;font-weight:550}.toasts{z-index:100;flex-direction:column;gap:8px;max-width:min(420px,100vw - 32px);display:flex;position:fixed;bottom:16px;right:16px}.toast{color:#fff;background:#17202b;border-radius:6px;padding:10px 14px;font-size:13.5px;box-shadow:0 8px 24px #00000040}.toast.error{background:var(--red)}.map-floor{border-top:1px solid var(--border);grid-template-columns:120px 1fr;align-items:start;gap:8px;padding:8px 0;display:grid}.map-floor:first-of-type{border-top:0}.map-rooms{flex-wrap:wrap;gap:6px;display:flex}.room-chip{cursor:pointer;text-align:left;background:#fff;border:1px solid;border-radius:5px;min-width:76px;padding:4px 8px;font-size:12px;line-height:1.3}.room-chip b{font-size:13px;display:block}.room-chip.OCCUPIED{background:var(--green-bg);color:var(--green);border-color:#a8d9bb}.room-chip.VACANT{border-color:var(--border-strong);color:var(--gray);background:#fff}.room-chip.RESERVED{background:var(--amber-bg);color:var(--amber);border-color:#ecd08a}.room-chip.MAINTENANCE{background:var(--red-bg);color:var(--red);border-color:#f0b4af}.room-chip.INACTIVE{background:var(--gray-bg);border-color:var(--border);color:var(--text-3);border-style:dashed}.room-chip.owing{box-shadow:inset 0 -3px 0 var(--red)}.legend{color:var(--text-2);flex-wrap:wrap;gap:12px;font-size:12.5px;display:flex}.meter-row{grid-template-columns:minmax(110px,200px) 1fr minmax(150px,auto);align-items:center;gap:12px;padding:7px 0;display:grid}.meter{background:#e6e9ee;border-radius:4px;height:10px;overflow:hidden}.meter>span{background:#2a78d6;border-radius:4px;height:100%;display:block}.search{flex:1;max-width:460px;position:relative}.search-results{border:1px solid var(--border-strong);z-index:30;background:#fff;border-radius:6px;max-height:70vh;position:absolute;top:38px;left:0;right:0;overflow-y:auto;box-shadow:0 12px 32px #1018282e}.search-results a{border-bottom:1px solid var(--border);color:var(--text);padding:8px 12px;display:block}.search-results a:hover,.search-results a:focus{background:var(--accent-soft);text-decoration:none}.room-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px;margin:0;padding:16px;list-style:none;display:grid}.room-card{--st:var(--gray);border:1px solid var(--border);border-top:3px solid var(--st);border-radius:var(--radius);background:var(--surface);flex-direction:column;gap:10px;min-width:0;padding:14px 16px;display:flex;position:relative}.room-card.OCCUPIED{--st:var(--green)}.room-card.RESERVED{--st:var(--amber)}.room-card.MAINTENANCE{--st:var(--red)}.room-card.INACTIVE{opacity:.7;border-top-style:dashed}.room-card-top{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.room-card-id{align-items:center;gap:10px;min-width:0;display:flex}.room-card-icon{width:36px;height:36px;color:var(--st);background:color-mix(in srgb, var(--st) 14%, transparent);border-radius:10px;flex-shrink:0;place-items:center;display:grid}.room-card-link{color:var(--text);letter-spacing:-.01em;font-size:18px;font-weight:700}.room-card-link:after{content:"";border-radius:inherit;position:absolute;inset:0}.room-card-link:focus-visible{outline:none}.room-card:focus-within{outline:2px solid var(--accent);outline-offset:2px}.room-card .above{z-index:1;position:relative}.room-card-where,.room-card-tenant{color:var(--text-3);align-items:center;gap:6px;min-width:0;font-size:12.5px;display:flex}.room-card-tenant{color:var(--text-2)}.room-card-tenant a,.room-card-tenant span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.room-card-rent span{font-variant-numeric:tabular-nums;font-size:20px;font-weight:700}.room-card-rent small{color:var(--text-3);margin-left:5px}.room-card-foot{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:10px;display:flex}.room-card-owing,.room-card-clear{white-space:nowrap;border-radius:10px;padding:2px 8px;font-size:12px;font-weight:650}.room-card-owing{color:var(--red);background:var(--red-bg)}.room-card-clear{color:var(--green);background:var(--green-bg)}.spinner{vertical-align:-2px;border:2px solid;border-right-color:#0000;border-radius:50%;width:13px;height:13px;margin-right:7px;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.auth{place-items:center;min-height:100%;padding:24px;display:grid}.auth .card{width:min(400px,100%)}.steps{flex-wrap:wrap;gap:4px;margin-bottom:16px;display:flex}.steps li{background:var(--gray-bg);color:var(--text-3);border-radius:12px;padding:3px 10px;font-size:12.5px;font-weight:550;list-style:none}.steps li.on{background:var(--accent);color:#fff}.steps li.done{background:var(--green-bg);color:var(--green)}ol.steps{margin:0 0 16px;padding:0}.timeline{margin:0;padding:0;list-style:none}.timeline li{border-bottom:1px solid var(--border);grid-template-columns:128px 1fr;gap:12px;padding:8px 0;display:grid}.timeline li:last-child{border:0}.alloc{border:1px solid var(--border);border-radius:6px;overflow:hidden}.big-amount{font-variant-numeric:tabular-nums;font-size:26px;font-weight:650}@media (width<=900px){.grid.c3,.grid.c4{grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar{z-index:50;transition:transform .15s;position:fixed;top:0;left:0;transform:translate(-100%);box-shadow:4px 0 24px #0000004d}.sidebar.open{transform:none}.btn.menu-btn{display:inline-flex}.content{padding:12px}.topbar{flex-wrap:wrap;padding:8px 12px}}@media (width<=600px){.grid.c2,.grid.c3,.grid.report-grid{grid-template-columns:minmax(0,1fr)!important}.form-grid{grid-template-columns:minmax(0,1fr)}.topbar{position:static}.main{max-width:100vw}.card{min-width:0}.map-floor{grid-template-columns:1fr}.meter-row{grid-template-columns:1fr;gap:4px}.timeline li{grid-template-columns:1fr;gap:2px}.hide-sm{display:none!important}.search{flex-basis:100%;order:5;max-width:none}.btn{min-height:40px}.input{min-height:40px;font-size:16px}}@media print{.sidebar,.topbar,.no-print,.toasts,.demo-banner.screen{display:none!important}body{background:#fff;font-size:11px}.content{max-width:none;padding:0}.card{box-shadow:none;border:0}.table th{-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#eee!important}.table td,.table th{padding:4px 6px}.table-wrap{overflow:visible}.print-only{display:block!important}tr{break-inside:avoid}.room-grid{grid-template-columns:repeat(3,1fr);gap:8px;padding:0}.room-card{break-inside:avoid}}.print-only{display:none}@media screen{:root{--lightningcss-light: ;--lightningcss-dark:initial;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#050d1c;--surface:#0d1a33;--surface-2:#12233f;--border:#7da5ff24;--border-strong:#7da5ff47;--text:#f1f5ff;--text-2:#bcc8e2;--text-3:#8696b8;--accent:#6fa2ff;--accent-hover:#8db6ff;--accent-soft:#2f6bff2e;--electric:#2f6bff;--electric-2:#1746d1;--teal:#2fd3b0;--purple:#b59cff;--cyan:#5fd4e8;--green:#4fe0bd;--green-bg:#2fd3b021;--amber:#f6c860;--amber-bg:#f6c86021;--red:#ff8a8a;--red-bg:#ff6e6e21;--gray:#aab8d6;--gray-bg:#96afe11f;--blue:#86b4ff;--blue-bg:#2f6bff2e;--radius:14px;--shadow:0 18px 40px -24px #000c;font-family:Plus Jakarta Sans,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}body{background:radial-gradient(900px 520px at 78% -8%, #2f6bff33, transparent 62%), radial-gradient(700px 480px at 8% 108%, #2fd3b012, transparent 60%), linear-gradient(180deg, #071226 0%, var(--bg) 60%);color:var(--text);background-attachment:fixed}h1{letter-spacing:-.02em;color:#fff;font-size:26px;font-weight:750}h2{color:#fff;font-size:16px}h3{color:var(--text)}::selection{background:#2f6bff73}:focus-visible{outline-color:#7fb0ff}.ico{flex-shrink:0}.sidebar{border-right:1px solid var(--border);-webkit-backdrop-filter:blur(16px);scrollbar-width:thin;scrollbar-color:#24365c transparent;background:linear-gradient(#0d1d3ceb,#060f20f5);width:244px;animation:.36s cubic-bezier(.2,.8,.2,1) both th-side}.brand{border-bottom:1px solid var(--border);padding:22px 18px 16px}.brand-mark{letter-spacing:.32em;color:#fff;white-space:nowrap;align-items:center;gap:10px;font-size:15px;font-weight:300;display:flex}.brand-mark b{letter-spacing:.14em;margin-right:.45em;font-weight:800}.brand-mark img{width:auto;height:30px}.brand small{color:#7f93bd;letter-spacing:.01em;white-space:nowrap;margin-top:8px;font-size:10.5px}.nav{gap:2px;padding:10px 10px 18px}.nav>div{flex-direction:column;gap:2px;display:flex}.nav-group{color:#5f74a3;padding:16px 12px 6px;font-weight:700}.nav a{color:#b3c2e2;border-radius:10px;padding:9px 12px;transition:background .2s,color .2s,transform .2s,box-shadow .2s;position:relative}.nav-label{align-items:center;gap:11px;display:flex}.nav a .ico{color:#6f9dff;transition:color .2s,transform .2s}.nav a:hover{color:#fff;background:#5884ff1a;transform:translate(3px)}.nav a:hover .ico{color:#a9c6ff}.nav a.active{color:#fff;background:linear-gradient(100deg,#2f6bfff2,#1f4ed68c 70%,#1f4ed640);font-weight:650;transform:none;box-shadow:0 10px 24px -14px #2f6bfff2,inset 0 0 0 1px #8cb4ff47}.nav a.active:before{content:"";background:#8fb8ff;border-radius:0 3px 3px 0;width:3px;position:absolute;top:9px;bottom:9px;left:-10px;box-shadow:0 0 10px #5b93ff}.nav a.active .ico{color:#fff}.count{color:#2a0505;background:#ff6b6b;box-shadow:0 0 0 3px #ff6b6b2e}.topbar{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(14px);background:#081226b8;padding:10px 24px;animation:.36s cubic-bezier(.2,.8,.2,1) 50ms both th-down;box-shadow:0 10px 30px -22px #2f6bffe6}.demo-banner{background:linear-gradient(90deg,#7c2d12,#9a3412)}.content{padding:26px 24px 40px}#building-filter{appearance:none;color:#fff;letter-spacing:.03em;cursor:pointer;background:#0b1a36 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%238fb8ff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 13px center no-repeat;border:1px solid #6fa2ff73;border-radius:11px;height:40px;padding:0 38px 0 14px;font-size:13px;transition:border-color .2s,box-shadow .2s}#building-filter:hover,#building-filter:focus{border-color:#6fa2ff;outline:none;box-shadow:0 0 0 4px #2f6bff29}.search-icon{color:#7f93bd;pointer-events:none;transition:color .2s;display:flex;position:absolute;top:12px;left:13px}.search:focus-within .search-icon{color:#8fb8ff}#global-search{border-color:var(--border);background:#ffffff0b;border-radius:11px;height:40px;padding-left:38px}.search-results{border-color:var(--border-strong);background:#0e1d3a;border-radius:12px;top:46px;box-shadow:0 24px 60px -18px #000000d9}.search-results a{color:var(--text);border-bottom-color:var(--border)}.search-results a:hover,.search-results a:focus{background:#2f6bff29}.icon-btn{color:#b3c2e2;border:1px solid var(--border);background:#ffffff0a;border-radius:11px;place-items:center;width:38px;height:38px;transition:all .2s;display:grid;position:relative}.icon-btn:hover{color:#fff;border-color:#6fa2ff80;text-decoration:none;box-shadow:0 0 0 4px #2f6bff24}.icon-btn .dot{background:#ff6b6b;border-radius:50%;width:8px;height:8px;position:absolute;top:8px;right:9px;box-shadow:0 0 0 2px #0a1730}.user-chip{color:var(--text);border-radius:12px;align-items:center;gap:10px;padding:3px 10px 3px 3px;transition:background .2s;display:flex}.user-chip:hover{background:#ffffff0d;text-decoration:none}.avatar{color:#fff;background:linear-gradient(135deg,#3b7bff,#1746d1);border-radius:10px;place-items:center;width:34px;height:34px;font-size:12.5px;font-weight:750;display:grid;box-shadow:0 6px 16px -8px #2f6bffe6}.user-name{color:#fff;font-size:13px;font-weight:650;line-height:1.2;display:block}.user-role{color:var(--text-3);font-size:11.5px;line-height:1.2;display:block}.signout{gap:7px}.card{border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);background:linear-gradient(160deg,#16284cb8,#0c1830c7)}.card-head{border-bottom-color:var(--border);padding:14px 18px}.card-body{padding:18px}.page-head{margin-bottom:22px}.page-head p{color:var(--text-3);margin-top:4px;font-size:14px}.stat{color:var(--text);font:inherit;padding:16px 18px;transition:transform .2s,border-color .2s,box-shadow .2s;position:relative;overflow:hidden}.stat:after{content:"";opacity:.6;background:linear-gradient(90deg,#0000,#8fb8ff73,#0000);height:1px;position:absolute;inset:0 0 auto}.stat.has-icon{padding-right:66px}.stat .k{color:var(--text-3);font-size:12.5px;font-weight:550}.stat .v{color:#fff;letter-spacing:-.02em;margin-top:6px;font-size:24px;font-weight:750}.stat .v a{color:#fff}.stat .s{color:var(--text-3);margin-top:5px}.stat-icon{color:#8fb8ff;background:#2f6bff24;border:1px solid #6fa2ff38;border-radius:11px;place-items:center;width:38px;height:38px;transition:background .2s,color .2s,box-shadow .2s;display:grid;position:absolute;top:16px;right:16px}.stat:hover,.stat.link:hover{background:linear-gradient(160deg,#1a2f5acc,#0d1b36d1);border-color:#6fa2ff73;transform:translateY(-2px);box-shadow:0 22px 44px -26px #2f6bfff2}.stat:hover .stat-icon{color:#fff;background:#2f6bff47;box-shadow:0 0 18px -4px #2f6bffe6}.stat.link:active{transform:translateY(0)scale(.99)}.stat .zero{color:#7285ab}.stat .alert-n{color:var(--tone,#fff)}.stat[class*=tone-]{border-color:color-mix(in srgb, var(--tone) 34%, transparent)}.stat[class*=tone-] .stat-icon{color:var(--tone);background:color-mix(in srgb, var(--tone) 14%, transparent);border-color:color-mix(in srgb, var(--tone) 30%, transparent)}.stat[class*=tone-]:after{background:linear-gradient(90deg, transparent, var(--tone), transparent)}.tone-teal{--tone:var(--teal)}.tone-red{--tone:#ff8a8a}.tone-amber{--tone:#f6c860}.tone-purple{--tone:var(--purple)}.tone-cyan{--tone:var(--cyan)}.tone-blue{--tone:#86b4ff}.stat.tone-teal .v{color:#7ff0d6}.btn{border:1px solid var(--border-strong);color:#eef3ff;background:#ffffff0b;border-radius:11px;min-height:38px;padding:7px 14px;transition:transform .18s,box-shadow .18s,border-color .18s,background .18s}.btn:hover{background:#5884ff24;border-color:#6fa2ff99;transform:translateY(-1px);box-shadow:0 10px 24px -14px #2f6bfff2}.btn:active{transform:scale(.98)}.btn.primary{background:linear-gradient(135deg, #3b7bff, var(--electric-2));color:#fff;border-color:#0000;box-shadow:0 10px 24px -10px #2f6bffd9,inset 0 1px #ffffff38}.btn.primary:hover{background:linear-gradient(135deg,#5590ff,#2356e6);box-shadow:0 14px 30px -10px #2f6bff,inset 0 1px #ffffff38}.btn.danger{color:#fff;background:linear-gradient(135deg,#e5484d,#b3261e);border-color:#0000}.btn.ghost{color:var(--accent);box-shadow:none;background:0 0;border-color:#0000}.btn.ghost:hover{background:#5884ff1f;transform:none}.btn.sm{border-radius:9px;min-height:30px;padding:4px 11px}.btn:disabled{box-shadow:none;transform:none}.input,select.input,textarea.input{border:1px solid var(--border-strong);color:var(--text);background:#040c1c8c;border-radius:10px;transition:border-color .18s,box-shadow .18s}.input::placeholder{color:#6f81a6}.input:focus{border-color:#5b93ff;outline:none;box-shadow:0 0 0 4px #2f6bff2e}.input:disabled{color:var(--text-3);background:#ffffff08}select.input option{color:#fff;background:#0e1d3a}.field label,.label{color:var(--text-2)}.filters{border-bottom-color:var(--border)}input[type=checkbox]{accent-color:#3b7bff}.table th{color:var(--text-3);border-bottom-color:var(--border);background:#ffffff09}.table td{border-bottom-color:var(--border)}.table tbody tr.click:hover{background:#5884ff14}.table tfoot td{border-top-color:var(--border-strong);background:#ffffff0a}.table.inner{background:#040c1c80;border-radius:10px;overflow:hidden}.pager{border-top-color:var(--border)}.empty strong{color:var(--text)}.empty.soft{padding:34px 16px 30px;position:relative}.empty.soft .stat-icon{width:46px;height:46px;margin:0 auto 12px;position:static}.badge{border-color:#0000}.badge.green{border-color:#2fd3b040}.badge.amber{border-color:#f6c86040}.badge.red{border-color:#ff6e6e47}.badge.gray{border-color:#96afe133}.badge.blue{border-color:#6fa2ff4d}.alert{border-radius:12px}.alert.red{color:#ffc9c9;background:#ff6e6e1a;border-color:#ff6e6e59}.alert.amber{color:#fbe3a6;background:#f6c8601a;border-color:#f6c86059}.alert.blue{color:#cfe0ff;background:#2f6bff1f;border-color:#6fa2ff59}.alert.green{color:#b6f3e4;background:#2fd3b01a;border-color:#2fd3b059}.alert a{color:#fff;text-decoration:underline}.tabs{border-bottom-color:var(--border)}.tabs button{color:var(--text-3);transition:color .18s}.tabs button:hover{color:#fff}.tabs button[aria-selected=true]{color:#fff;border-bottom-color:#5b93ff}dialog.modal{border-color:var(--border-strong);background:#0d1b36;border-radius:18px;animation:.22s cubic-bezier(.2,.9,.3,1) both th-pop;box-shadow:0 40px 100px -30px #000000e6,0 0 0 1px #6fa2ff14}dialog.modal::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#020814b8}.modal-head{border-bottom-color:var(--border);background:#0d1b36}.modal-foot{border-top-color:var(--border);background:#0a1730}.toast{border:1px solid var(--border-strong);background:#14284d;border-radius:12px}.toast.error{background:#7f1d1d;border-color:#b3261e}.dl dt{color:var(--text-3)}.timeline li{border-bottom-color:var(--border)}.steps li{color:var(--text-3);background:#ffffff0f}.steps li.on{color:#fff;background:linear-gradient(135deg,#3b7bff,#1746d1)}.steps li.done{background:var(--green-bg);color:var(--green)}.alloc{border-color:var(--border);border-radius:12px}.meter{background:#ffffff12;border-radius:6px;height:10px}.meter>span{background:linear-gradient(90deg,#3987e5,#5fb0ff);border-radius:6px;transition:width .6s cubic-bezier(.2,.8,.2,1);box-shadow:0 0 14px -2px #3987e5e6}.meter-row{border-top:1px solid var(--border);padding:10px 0}.meter-row:first-child{border-top:0}.map-floor{border-top-color:var(--border)}.room-chip{border-radius:9px;transition:transform .16s,box-shadow .16s}.room-chip:hover{transform:translateY(-2px);box-shadow:0 8px 18px -10px #2f6bffe6}.room-chip.OCCUPIED{color:#7ff0d6;background:#2fd3b01f;border-color:#2fd3b061}.room-chip.VACANT{border-color:var(--border-strong);color:var(--gray);background:#ffffff0a}.room-chip.RESERVED{color:#f6c860;background:#f6c8601f;border-color:#f6c86066}.room-chip.MAINTENANCE{color:#ff9c9c;background:#ff6e6e1f;border-color:#ff6e6e66}.room-chip.INACTIVE{border-color:var(--border);color:var(--text-3);background:0 0}.room-chip.owing{box-shadow:inset 0 -3px #ff7a7a}.room-grid{gap:16px;padding:18px}.room-card{border-color:var(--border);border-top-color:var(--st);box-shadow:var(--shadow);background:linear-gradient(160deg,#16284cb8,#0c1830d1);transition:transform .2s,border-color .2s,box-shadow .2s;overflow:hidden}.room-card:before{content:"";background:linear-gradient(180deg, color-mix(in srgb, var(--st) 12%, transparent), transparent);pointer-events:none;height:70px;position:absolute;inset:0 0 auto}.room-card:hover{border-color:color-mix(in srgb, var(--st) 45%, transparent);border-top-color:var(--st);box-shadow:0 22px 44px -26px color-mix(in srgb, var(--st) 90%, transparent);transform:translateY(-3px)}.room-card.VACANT{--st:#8fb8ff}.room-card.OCCUPIED{--st:var(--teal)}.room-card-icon{border:1px solid color-mix(in srgb, var(--st) 30%, transparent)}.room-card-link{color:#fff}.room-card-link:hover{text-decoration:none}.room-card-rent span{color:#fff}.room-card-tenant a{color:var(--accent)}.room-card-owing{border:1px solid #ff6e6e47}.room-card-clear{border:1px solid #2fd3b040}.auth .card{background:#0d1b36}pre{color:var(--text-2)}.page-enter>.stack>*,.page-enter>:not(.stack){animation:.42s cubic-bezier(.2,.8,.2,1) both th-rise}.page-enter>.stack>:first-child{animation-delay:60ms}.page-enter>.stack>:nth-child(2){animation-delay:.11s}.page-enter>.stack>:nth-child(3){animation-delay:.16s}.page-enter>.stack>:nth-child(4){animation-delay:.21s}.page-enter>.stack>:nth-child(5){animation-delay:.26s}.page-enter>.stack>:nth-child(6){animation-delay:.31s}.page-enter>.stack>:nth-child(n+7){animation-delay:.36s}@keyframes th-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes th-side{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:none}}@keyframes th-down{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}@keyframes th-pop{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-delay:0s!important}}@media (width<=1180px){.grid.c4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.sidebar{background:#081428;animation:none}.content{padding:18px 14px 32px}.topbar{padding:10px 14px}.signout span{display:none}h1{font-size:22px}}@media (width<=600px){.grid.c4,.grid.c3,.grid.c2{grid-template-columns:minmax(0,1fr)!important}#building-filter{flex:1;min-width:0;max-width:none!important}.page-head .row .btn{flex:calc(50% - 8px)}}.dash-wallpaper{z-index:-1;pointer-events:none;background:linear-gradient(#050d1c8c 0%,#050d1cc7 45%,#050d1ce6 100%),url(/brand/kcc.jpg) 50% 35%/cover no-repeat;position:fixed;inset:0}.install-app{border:1px solid var(--border);text-align:center;border-radius:14px;gap:6px;margin:12px 14px 18px;padding:12px;display:grid}.install-app .btn{justify-content:center;width:100%}.install-app small{color:var(--text-3);font-size:11.5px}}
