@charset "UTF-8";
:root{color-scheme:dark;--bg:#090909;--panel:#171411;--gold:#d0ad6b;--text:#f4f0e8;--muted:#aaa299;--line:#ffffff10;--green:#97ceac;--sky:#9ac9e8;--red:#e0a2a0;--shadow:0 16px 30px #0008,0 3px 6px #000b,inset 0 1px #fff1;--font:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 65% -10%,#8c62371f,transparent 45%),radial-gradient(ellipse at 5% 40%,#77471c0d,transparent 40%),var(--bg);color:var(--text);font:14px/1.5 var(--font);min-height:100vh}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer;color:inherit}a{color:var(--gold);text-decoration:none}button{border:0}button:disabled{cursor:not-allowed;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--gold);outline-offset:4px}h1,h2,h3,p{margin:0}h1{font-size:clamp(28px,3vw,40px);font-weight:500;line-height:1.17;letter-spacing:-1.3px}h2{font-size:17px;font-weight:550;letter-spacing:-.25px}h3{font-size:15px;font-weight:550}p{color:var(--muted)}small{font-size:11px}.icon{width:22px;height:22px;flex-shrink:0;vertical-align:middle}button .icon{pointer-events:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:fixed;top:-100px;left:12px;z-index:30;padding:10px;background:#111}.skip:focus{top:10px}
.shell{max-width:1180px;margin:auto;padding:0 28px 140px}.topbar{height:100px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line);margin-bottom:34px}.brand{display:flex;align-items:center;gap:12px;color:var(--text)}.mark{display:grid;place-items:center;width:43px;height:43px;border:1px solid #c2a36b90;border-radius:14px;color:var(--gold);font:22px Georgia,serif;background:linear-gradient(150deg,#30271a,#11100e);box-shadow:var(--shadow)}.brand strong{font-size:13px;letter-spacing:2.5px;font-weight:550}.brand small{display:block;text-transform:uppercase;letter-spacing:1.9px;font-size:9px;color:var(--muted);margin-top:2px}.toolbar{display:flex;gap:10px;align-items:center}.avatar{width:38px;height:38px;display:grid;place-items:center;background:#33281c;border:1px solid #9d7b4240;border-radius:50%;color:var(--gold);font-size:12px}.icon-button{display:grid;place-items:center;min-width:42px;min-height:42px;border:1px solid var(--line);border-radius:50%;background:#181511;color:var(--muted)}.local-tag{border:1px solid #b7904930;padding:6px 10px;border-radius:20px;color:var(--gold);font-size:10px;letter-spacing:.4px}.heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:27px}.eyebrow{color:var(--gold);text-transform:uppercase;font-size:10px;letter-spacing:1.7px;font-weight:500}.heading h1{margin:10px 0}.heading p{font-size:13px}.heading .toolbar{flex-wrap:wrap;justify-content:flex-end}.tenant-select{max-width:270px;background:#181511;border:1px solid #b28f4e30;color:var(--text);border-radius:12px;padding:10px 30px 10px 12px;font-size:12px}.section-kicker{display:flex;justify-content:space-between;align-items:center;margin:22px 0 12px}.section-kicker p{font-size:11px}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:22px}.float-surface{position:relative;border:1px solid #b7965e36;border-radius:22px;background:radial-gradient(ellipse at 10% 0%,#8d644026,transparent 80%),linear-gradient(140deg,#211b16,#171412 50%,#131210);box-shadow:var(--shadow);transition:transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s,border-color .22s;overflow:hidden}.float-surface:before{content:"";position:absolute;top:0;left:15%;right:15%;height:1px;background:linear-gradient(90deg,transparent,#d5b77e80,transparent);pointer-events:none}.tap:active,.tap.pressed{transform:translateY(5px) scale(.975);box-shadow:0 3px 6px #000b,inset 0 3px 12px #0008;border-color:#b7965e60}.metric{padding:20px 22px;text-align:left;min-height:155px}.metric-top{display:flex;align-items:center;gap:12px;margin-bottom:13px}.metric-top .eyebrow{color:#beb4a7;font-size:10px;letter-spacing:1.1px}.metric-icon{display:grid;place-items:center;color:var(--gold);height:32px;width:32px;border:1px solid #a5854c20;background:#cfa95808;border-radius:10px}.metric-icon .icon{width:18px}.metric strong{display:block;font-size:39px;font-weight:450;line-height:1.2;letter-spacing:-1.7px;font-variant-numeric:tabular-nums;overflow:hidden}.metric small{display:block;margin-top:9px;color:var(--gold)}.metric small span{color:#948b81;font-size:10px}.rolling-number{display:inline-block;animation:roll-in .6s cubic-bezier(.18,.75,.25,1) both}@keyframes roll-in{from{transform:translateY(105%);opacity:.2}to{transform:translateY(0);opacity:1}}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:22px}.panel{padding:24px;border-radius:22px;background:linear-gradient(135deg,#191613,#121110);border:1px solid #a58b6130;box-shadow:0 10px 28px #0005,inset 0 1px #ffffff06;min-width:0}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.panel-heading p{font-size:11px}.legend{display:flex;gap:15px;font-size:10px;color:var(--muted)}.legend span:before{content:"";display:inline-block;height:5px;width:5px;background:var(--gold);border-radius:50%;margin-right:5px}.legend span+span:before{background:#7b6c53}.chart{display:block;width:100%;height:auto;overflow:visible}.chart polyline{fill:none;stroke-width:2.2;stroke-linejoin:round;stroke-linecap:round;animation:line-in .6s ease-out}.chart-nfc{stroke:#d8b76f}.chart-qr{stroke:#837259;stroke-dasharray:4 4}.grid-line{stroke:#ffffff09;stroke-width:1}.chart-labels{display:flex;justify-content:space-between;gap:8px;font-size:9px;color:#847a70;margin-top:14px}.chart-labels span:nth-child(2){text-align:center}@keyframes line-in{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:22px}.quick{padding:18px 16px;min-height:108px;text-align:left;color:var(--text)}.quick .icon{color:var(--gold);margin-bottom:12px}.quick strong{display:block;font-size:12px;font-weight:500}.quick small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.quick .arrow{float:right;width:15px;margin:0;color:#8f7956}.list{display:flex;flex-direction:column;gap:0}.list-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 0;border-bottom:1px solid var(--line);min-width:0}.list-row:last-child{border:0}.list-main{display:flex;align-items:center;gap:12px;min-width:0}.list-main>div{min-width:0}.list-main strong{font-size:12px;font-weight:500;display:block;overflow-wrap:anywhere}.list-main small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.list-icon{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;background:#b798600a;border:1px solid #b7986020;border-radius:11px;color:var(--gold)}.list-icon .icon{width:17px}.row-end{text-align:right;flex-shrink:0;font-size:11px;color:var(--muted)}.badge{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border-radius:20px;font-size:10px;border:1px solid currentColor;white-space:nowrap}.badge i{width:4px;height:4px;background:currentColor;border-radius:50%}.green{color:var(--green);background:#6eb47d08}.sky{color:var(--sky);background:#8ab8e508}.red{color:var(--red);background:#d9868608}.neutral{color:#aaa299;background:#aaa29908}.count-pill{font-size:10px;color:var(--gold);border:1px solid #b1905940;padding:4px 8px;border-radius:7px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:43px;border-radius:12px;padding:10px 15px;font-size:12px;background:#b7986010;border:1px solid #b7986040;color:var(--gold);transition:transform .2s,box-shadow .2s}.button.primary{background:linear-gradient(120deg,#d0b17a,#a98046);color:#17120b;border:1px solid #ebd3a3;font-weight:600;box-shadow:0 5px 16px #0005}.button.danger{border-color:#c9898950;color:var(--red);background:#a966660b}.button.quiet{background:transparent;color:var(--muted);border-color:var(--line)}.button.small{min-height:34px;padding:6px 10px;font-size:10px}.button .icon{width:16px}.button.full{width:100%}.action-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.subtle{font-size:11px;color:var(--muted)}.notice{padding:13px 16px;background:#a5844510;border:1px solid #a584452d;border-radius:13px;color:#b9aa94;font-size:11px;line-height:1.65;margin-bottom:20px}.notice strong{color:var(--gold);font-weight:500}.notice.error{border-color:#c9898950;color:var(--red)}.tabs{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 20px}.tabs button{border:1px solid #ffffff0c;background:#171512;padding:9px 14px;border-radius:11px;color:var(--muted);font-size:12px}.tabs button.active{border-color:#c4a06370;color:var(--gold);background:#c4a0630e}.device-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.device{padding:22px}.device-heading{display:flex;justify-content:space-between;gap:12px}.device .big-icon{width:44px;height:44px;border-radius:14px;margin-bottom:18px;background:#c9a8640c;border:1px solid #c9a86430;color:var(--gold);display:grid;place-items:center}.device p{font-size:11px;margin-top:6px}.device .device-id{font:10px ui-monospace,monospace;color:#82786c;overflow-wrap:anywhere}.device .stats-line{display:flex;align-items:center;justify-content:space-between;margin:20px 0 12px;padding-top:16px;border-top:1px solid var(--line)}.device .stats-line strong{font-size:25px;font-weight:450}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px;text-align:left}th{color:var(--muted);font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.6px}td,th{padding:14px 12px;border-bottom:1px solid var(--line);white-space:nowrap}td:first-child,th:first-child{padding-left:0}.split{display:grid;grid-template-columns:1fr 1fr;gap:22px}.stack{display:flex;flex-direction:column;gap:20px}.review-number{font-size:49px;letter-spacing:-2px;font-weight:400;margin:10px 0}.review-number small{font-size:14px;color:var(--gold);letter-spacing:0}.review-values{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:15px 0;gap:15px}.review-values strong{display:block;font-size:23px;font-weight:450}.review-values small{font-size:10px;color:var(--muted)}.empty{text-align:center;padding:35px 16px;color:#8f806b}.empty>.icon{width:32px;height:32px;margin-bottom:12px}.empty p{font-size:12px;margin-top:6px}.empty h3{color:var(--text)}.settings-list .button{justify-content:space-between;width:100%;margin-bottom:8px;min-height:53px;text-align:left}.settings-list .button span{flex:1}.footer-note{display:flex;justify-content:space-between;gap:12px;margin-top:28px;color:#746c62;font-size:10px}.floating-nav{position:fixed;bottom:max(18px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);display:flex;gap:8px;padding:9px 12px;border:1px solid #c9ae7d45;border-radius:24px;background:#1b1815e8;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:0 15px 35px #000d,inset 0 1px #e1ca9d20;z-index:10;width:360px;max-width:calc(100% - 32px)}.floating-nav button{flex:1;min-width:0;min-height:55px;background:transparent;color:#8d867c;border-radius:17px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;font-size:9px;transition:background .2s,color .2s,transform .2s}.floating-nav button.active{background:linear-gradient(145deg,#bda06a24,#a1834e09);color:#e3c187;box-shadow:inset 0 1px #d2ad6930}.floating-nav .icon{height:20px;width:20px}
.login{max-width:1000px;margin:auto;padding:60px 24px;min-height:100vh;display:grid;grid-template-columns:1.2fr 1fr;gap:70px;align-items:center}.login .brand{margin-bottom:50px}.login h1{font:clamp(36px,5vw,60px)/1.1 Georgia,serif;letter-spacing:-2px;margin:20px 0}.gold{color:var(--gold)}.login .lead{max-width:400px;line-height:1.9;font-size:14px}.login .panel{padding:30px}.persona{width:100%;margin-top:12px;text-align:left;padding:16px;display:flex;align-items:center;gap:13px}.persona strong{display:block;font-weight:500;font-size:13px}.persona small{color:var(--muted);font-size:10px}.persona .arrow{margin-left:auto;color:var(--gold)}.login .notice{margin:22px 0 0}.login-note{font-size:10px;margin-top:18px;color:#7f766b}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}label{display:block;font-size:11px;color:#c2b8aa;margin-bottom:14px}input,select,textarea{display:block;margin-top:7px;background:#0e0d0c;color:var(--text);border:1px solid #a5916b35;border-radius:10px;min-height:44px;width:100%;padding:10px 12px;outline:0}textarea{min-height:85px;resize:vertical}input[type=checkbox]{width:18px;min-height:18px;display:inline;vertical-align:middle;margin:0 8px 0 0}dialog{color:var(--text);background:linear-gradient(145deg,#241e18,#11100f);border:1px solid #b7965e70;border-radius:23px;box-shadow:0 35px 120px #000e;padding:26px;max-width:470px;width:calc(100% - 32px);max-height:88vh;overflow:auto}dialog::backdrop{background:#000b;backdrop-filter:blur(7px)}dialog h2{font-size:21px}dialog .panel-heading{margin-bottom:10px}dialog p{font-size:12px;margin:8px 0 20px}dialog .icon-button{width:32px;min-width:32px;min-height:32px}dialog .form-error{color:var(--red);font-size:12px;margin:10px 0}#toast{position:fixed;left:50%;bottom:112px;transform:translateX(-50%);max-width:calc(100% - 32px);padding:12px 18px;background:#30291ff5;border:1px solid #c9ae7d70;color:var(--text);border-radius:13px;font-size:12px;z-index:40;box-shadow:0 8px 40px #000a}#toast:empty{display:none}.loading{min-height:75vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;padding:25px;text-align:center}.loading h1{font-size:27px}.spinner{display:block;width:30px;height:30px;border:1px solid #d0ad6b30;border-top-color:var(--gold);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
@media(min-width:1000px){.shell{padding-top:5px}.metric strong{font-size:44px}.floating-nav{width:400px}.panel{padding:26px}.dashboard-grid .panel{min-height:300px}}
@media(max-width:760px){.shell{padding:0 20px 130px}.topbar{height:83px;margin-bottom:26px}.brand strong{font-size:11px}.brand small{font-size:8px}.mark{height:38px;width:38px;font-size:20px}.local-tag{font-size:8px;padding:5px 7px}.heading{align-items:flex-start;flex-direction:column;gap:12px;margin-bottom:22px}.heading .toolbar{width:100%;justify-content:space-between}.heading h1{font-size:31px;letter-spacing:-1px}.heading p{font-size:12px}.tenant-select{max-width:calc(100% - 55px);flex:1}.metrics{gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:18px}.metrics .metric:last-child{grid-column:1/-1;min-height:100px;display:grid;grid-template-columns:1fr auto;align-items:center}.metrics .metric:last-child .metric-top{margin:0}.metrics .metric:last-child strong{font-size:34px}.metrics .metric:last-child small{grid-column:1/-1;margin-top:8px}.metric{min-height:150px;padding:17px 16px;border-radius:18px}.metric-top{gap:9px;flex-wrap:wrap;margin-bottom:11px}.metric-top .eyebrow{font-size:9px;letter-spacing:.8px}.metric-icon{height:28px;width:28px}.metric strong{font-size:37px}.metric small{font-size:10px}.metric small span{display:block;font-size:9px;margin-top:3px}.dashboard-grid,.split{grid-template-columns:1fr;gap:18px}.panel{padding:20px;border-radius:19px}.panel-heading{margin-bottom:16px}.panel-heading h2{font-size:15px}.chart-labels{font-size:8px}.chart-labels span:nth-child(2){max-width:160px}.quick-grid{gap:9px;margin-top:18px}.quick{padding:15px 12px;border-radius:17px;min-height:112px}.quick strong{font-size:11px}.quick small{font-size:9px}.quick .arrow{display:none}.device-grid{grid-template-columns:1fr;gap:14px}.device{padding:20px}.footer-note{flex-direction:column;gap:5px}.tabs{gap:5px}.tabs button{font-size:11px;padding:8px 11px}.actions{justify-content:flex-start}.list-row{align-items:flex-start}.list-row.with-actions{flex-wrap:wrap}.with-actions .actions{width:100%;padding-left:46px}.login{display:block;padding:35px 22px}.login .brand{margin-bottom:30px}.login h1{font-size:43px;margin-top:22px}.login .lead{font-size:12px;margin-bottom:28px}.login .panel{padding:22px}.login-note{padding-bottom:25px}.login .eyebrow{font-size:9px}.toolbar{gap:8px}.topbar .avatar{display:none}.field-grid{grid-template-columns:1fr}.heading .button{font-size:11px}.floating-nav{bottom:max(13px,env(safe-area-inset-bottom));border-radius:23px}.notice{font-size:10px;padding:12px 14px}.review-number{font-size:42px}}
@media(max-width:350px){.shell{padding-left:14px;padding-right:14px}.metric{padding:15px 12px}.metric-top{gap:6px}.metric-top .eyebrow{font-size:8px}.metric strong{font-size:32px}.metric small{font-size:9px}.brand{gap:8px}.brand strong{letter-spacing:1.5px}.local-tag{font-size:7px}.topbar .toolbar{gap:5px}.quick strong{font-size:10px}.quick small{font-size:8px}.quick{padding:14px 10px}.chart-labels span:nth-child(2){max-width:125px}.floating-nav{padding:7px;gap:3px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.tap:active,.tap.pressed{transform:none}}
