.qr-login-live[data-v-75dbb781]{display:flex;flex-direction:column;align-items:center;gap:10px;min-height:280px}.qr-login-live p[data-v-75dbb781]{margin:0}.qr-login-live small[data-v-75dbb781]{max-width:280px;color:#64748b;line-height:1.7;text-align:center}.checkout-mask[data-v-e5c125b4]{position:fixed;inset:0;z-index:10000;background:#14253699;display:grid;place-items:center;padding:20px}.checkout-box[data-v-e5c125b4]{width:100%;max-width:400px;box-sizing:border-box;background:#fff;border-radius:16px;padding:28px;display:grid;gap:16px}.checkout-box h2[data-v-e5c125b4],.checkout-box p[data-v-e5c125b4]{margin:0}.checkout-box label[data-v-e5c125b4]{display:grid;gap:8px}.checkout-box input[data-v-e5c125b4]{padding:12px;border:1px solid #ccd5df;border-radius:6px}.checkout-box [role=alert][data-v-e5c125b4]{color:#b91c1c}.workflow-block[data-v-2f69002c]{margin-top:20px;padding-top:16px;border-top:1px solid #e2e8f0}.workflow-scroll[data-v-2f69002c]{overflow:auto;max-height:480px}textarea[data-v-2f69002c]{width:100%;min-width:180px}fieldset label[data-v-2f69002c]{display:inline-flex;margin:6px}pre[data-v-2f69002c]{white-space:pre-wrap;overflow-wrap:anywhere}summary[data-v-2f69002c]{cursor:pointer;padding:12px 0}button[data-v-2f69002c]{margin:4px}.android-device-panel[data-v-1a478f3c]{grid-column:1/-1}.price-row[data-v-1a478f3c]{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:10px 0}.price-row input[data-v-1a478f3c]{max-width:200px}summary[data-v-1a478f3c]{padding:10px 0;cursor:pointer}table[data-v-1a478f3c]{width:100%}td[data-v-1a478f3c],th[data-v-1a478f3c]{text-align:left;padding:8px}img[data-v-d79b163f]{max-width:320px;max-height:320px}pre[data-v-d79b163f]{white-space:pre-wrap;overflow-wrap:anywhere;max-height:400px;overflow:auto}summary[data-v-d79b163f]{cursor:pointer;padding:12px 0}.workflow-block[data-v-4dc0d277]{margin-top:20px;border-top:1px solid #e2e8f0;padding-top:16px}.workflow-scroll[data-v-4dc0d277]{overflow:auto;max-height:400px}pre[data-v-4dc0d277]{white-space:pre-wrap;overflow-wrap:anywhere;max-height:400px;overflow:auto}.capture[data-v-4dc0d277]{max-width:100%;max-height:400px}button[data-v-4dc0d277]{margin:4px}.device-connection-panel[data-v-ae0e7641]{grid-column:1 / -1;min-width:0}.device-connection-panel table[data-v-ae0e7641]{width:100%;border-collapse:collapse}.device-connection-panel th[data-v-ae0e7641],.device-connection-panel td[data-v-ae0e7641]{padding:10px;text-align:left;border-bottom:1px solid #e2e8f0}.device-connection-panel p[data-v-ae0e7641]{color:#64748b;font-size:13px;line-height:1.7}.event-table[data-v-ae0e7641]{overflow-x:auto}.event-table td[data-v-ae0e7641]:last-child{min-width:150px}.event-table button[data-v-ae0e7641]{margin:3px}.event-history[data-v-ae0e7641]{margin-top:16px;padding:12px;background:#f8fafc}.device-connection-panel summary[data-v-ae0e7641]{cursor:pointer;padding:12px 0}.device-setup-panel header[data-v-4ee93933]{display:flex;align-items:center;justify-content:space-between;gap:16px}.device-setup-panel label[data-v-4ee93933]{display:grid;gap:8px;margin:12px 0}.device-setup-panel input[data-v-4ee93933],.device-setup-panel select[data-v-4ee93933],.device-setup-panel textarea[data-v-4ee93933]{padding:9px;border:1px solid #dce5eb;border-radius:4px}.setup-state[data-v-4ee93933]{color:#a16207;background:#fef3c7;padding:6px 10px;border-radius:4px}.setup-fields[data-v-4ee93933]{display:grid;grid-template-columns:1fr 1fr;gap:12px}.setup-fields div[data-v-4ee93933]{min-width:0;padding:10px;background:#f6f8fa}.setup-fields dt[data-v-4ee93933]{color:#6b7280;font-size:12px}.setup-fields dd[data-v-4ee93933]{margin:6px 0 0;overflow-wrap:anywhere}.setup-checks[data-v-4ee93933]{display:flex;gap:12px;flex-wrap:wrap;padding:0;list-style:none;color:#059669}.setup-checks .pending[data-v-4ee93933]{color:#a16207}.setup-actions[data-v-4ee93933]{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.setup-error[data-v-4ee93933]{color:#dc2626}.setup-credentials[data-v-4ee93933]{padding:12px;background:#effaf7}.setup-credentials div[data-v-4ee93933]{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:8px 0}.setup-credentials code[data-v-4ee93933]{overflow-wrap:anywhere}.device-setup-panel .setup-check[data-v-4ee93933]{display:flex;gap:8px;align-items:center}.setup-check input[data-v-4ee93933]{width:auto}.device-setup-panel details[data-v-4ee93933]{margin-top:20px}.device-setup-panel li[data-v-4ee93933]{line-height:1.8}@media(max-width:700px){.setup-fields[data-v-4ee93933]{grid-template-columns:1fr}}.registration-help[data-v-7e6138c6]{color:#677888;font-size:13px;line-height:1.7;margin:0 0 18px;padding:0 22px}.management-form-grid .registration-check[data-v-7e6138c6]{display:flex;flex-direction:row;align-items:center;gap:8px;font-size:13px}.management-form-grid .registration-check input[data-v-7e6138c6]{width:auto;height:auto;flex:none}.wide-field[data-v-7e6138c6]{grid-column:1/-1}.payment-recovery[data-v-88e0b07f]{grid-column:1/-1;margin-top:16px;padding:16px;border:1px solid #dce5eb;border-radius:8px;background:#fff;min-width:0}.payment-recovery summary[data-v-88e0b07f]{cursor:pointer;font-weight:600}.payment-recovery p[data-v-88e0b07f],.payment-recovery small[data-v-88e0b07f]{font-size:13px;color:#64748b;overflow-wrap:anywhere}.recovery-order[data-v-88e0b07f]{display:grid;gap:8px;padding:12px 0;border-bottom:1px solid #e2e8f0}.recovery-order button[data-v-88e0b07f]{margin:0 8px 4px 0}.payment-recovery img[data-v-88e0b07f]{display:block}.history-panel[data-v-a768329c]{grid-column:1 / -1;min-width:0}.history-panel summary[data-v-a768329c]{cursor:pointer;padding:10px 0}.history-panel p[data-v-a768329c]{font-size:13px;color:#64748b;line-height:1.7}.retention-row[data-v-a768329c]{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:12px 0;border-bottom:1px solid #e2e8f0}.retention-row label[data-v-a768329c]{display:flex;align-items:center;gap:6px}.retention-row input[type=number][data-v-a768329c]{width:88px}.history-scroll[data-v-a768329c]{overflow:auto;max-height:480px}table[data-v-a768329c]{width:100%;border-collapse:collapse}th[data-v-a768329c],td[data-v-a768329c]{padding:10px;text-align:left;border-bottom:1px solid #e2e8f0}small[data-v-a768329c]{display:block;color:#64748b}button[data-v-a768329c]{margin:4px}code[data-v-a768329c]{overflow-wrap:anywhere}:root{--ink: #173844;--muted: #78919a;--line: #e5eef0;--surface: #fff;--canvas: #f5f8f9;--teal: #0e827b;--teal-dark: #07665f;--blue: #388ff5;--purple: #7b6df3;--orange: #f5a23d;--danger: #e15c5c;--shadow: 0 18px 50px rgba(28, 67, 75, .08);font-family:Inter,PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--canvas);font-size:14px}button,input,select{font:inherit}button{cursor:pointer;border:0;background:none;color:inherit}button:disabled{cursor:not-allowed;opacity:.5}input,select{width:100%;border:1px solid #d8e5e8;background:#fff;border-radius:9px;padding:11px 13px;color:var(--ink);outline:none;transition:border .2s,box-shadow .2s}input:focus,select:focus{border-color:#53aaa3;box-shadow:0 0 0 3px #0e827b1a}label{display:grid;gap:7px;color:#55717a;font-size:13px}h1,h2,h3,p{margin:0}h1{letter-spacing:-.03em}h2{font-size:18px}h3{font-size:17px}.muted{color:var(--muted)}.eyebrow{color:#82a0a5;letter-spacing:.15em;font-size:11px;font-weight:700;margin-bottom:8px}.eyebrow.light{color:#ffffffad}.primary,.secondary,.white-button{border-radius:9px;padding:10px 16px;font-weight:650;transition:transform .15s,box-shadow .15s,background .15s}.primary{background:var(--blue);color:#fff;box-shadow:0 8px 18px #388ff533}.primary:hover{transform:translateY(-1px);box-shadow:0 11px 22px #388ff547}.secondary{color:#446872;background:#f4f8f9;border:1px solid #dce8ea}.secondary:hover{background:#eaf3f3}.white-button{color:#12635f;background:#fff;padding:9px 21px}.wide{width:100%}.link-button,.danger-link{color:var(--blue);font-size:12px;font-weight:650}.danger-link{color:var(--danger)}.icon-button{width:35px;height:35px;display:grid;place-items:center;border-radius:10px;background:#f3f7f8;color:#55717a;font-size:20px}.icon-button:hover{background:#e7eff0}.login-page{min-height:100vh;display:grid;place-items:center;position:relative;overflow:hidden;background:linear-gradient(130deg,#edf7f7,#f8fbfc 55%,#eef4fb)}.login-glow{position:absolute;border-radius:999px;filter:blur(4px);opacity:.45}.glow-a{width:480px;height:480px;background:#ccebe7;top:-180px;right:-90px}.glow-b{width:360px;height:360px;background:#dce6ff;bottom:-160px;left:-100px}.login-card{width:min(430px,calc(100% - 34px));padding:42px 42px 31px;position:relative;z-index:1;background:#ffffffeb;border:1px solid rgba(255,255,255,.8);border-radius:24px;box-shadow:var(--shadow);backdrop-filter:blur(15px)}.brand-mark{width:56px;height:56px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--teal),#35a89d);border-radius:17px;font-size:29px;font-weight:800;margin-bottom:25px;box-shadow:0 12px 24px #0e827b40}.brand-mark.small{width:35px;height:35px;border-radius:10px;font-size:19px;margin:0}.login-card h1{font-size:31px;margin-bottom:7px}.login-subtitle{margin-bottom:26px}.role-switch{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;padding:4px;background:#f1f5f6;border-radius:11px;margin:18px 0 20px}.role-switch button{border-radius:8px;padding:9px 4px;color:#789098;font-size:13px}.role-switch button.active{background:#fff;color:var(--teal);box-shadow:0 3px 10px #24464c14;font-weight:700}.login-card form{display:grid;gap:15px}.login-card form .primary{margin-top:5px;padding:13px}.demo-hint{display:grid;gap:6px;margin-top:24px;padding-top:18px;border-top:1px dashed #dce8ea;color:var(--muted);font-size:11px}.demo-hint button{text-align:left;color:#4c8da0;font-size:12px}.admin-app{min-height:100vh}.admin-topbar{height:70px;padding:0 29px;display:flex;justify-content:space-between;align-items:center;background:#fff;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:11px}.brand b{display:block;font-size:16px}.brand small{display:block;margin-top:2px;color:var(--muted);font-size:11px}.top-actions{display:flex;gap:18px;align-items:center}.live-pill{display:flex;align-items:center;gap:7px;color:#389082;font-size:12px}.live-pill i{width:7px;height:7px;border-radius:50%;background:#42ba85;box-shadow:0 0 0 4px #e2f5ed}.user-chip{padding-left:18px;border-left:1px solid var(--line);color:#5e7880;font-size:13px}.admin-layout{display:flex;min-height:calc(100vh - 70px)}.sidebar{width:220px;flex:0 0 220px;display:flex;flex-direction:column;padding:24px 14px 20px;background:#fff;border-right:1px solid var(--line)}.side-caption{padding:0 13px 9px;color:#9bafb3;font-size:10px;letter-spacing:.13em;font-weight:700}.side-caption.lower{margin-top:23px}.sidebar>button{display:flex;align-items:center;gap:11px;width:100%;padding:11px 13px;border-radius:9px;color:#668088;font-size:13px;text-align:left;margin-bottom:3px}.sidebar>button span{width:18px;color:#86a2a7;text-align:center;font-size:17px}.sidebar>button.active{color:var(--teal);background:#e9f6f4;font-weight:700}.sidebar>button.active span{color:var(--teal)}.sidebar>button em{margin-left:auto;color:#fff;background:#eb826a;font-size:10px;padding:2px 6px;border-radius:8px;font-style:normal}.side-footer{margin-top:auto;padding:17px 13px 0;border-top:1px solid var(--line);color:#9ab0b4;line-height:1.6;font-size:11px}.side-footer small{color:#b5c5c8}.admin-content{flex:1;min-width:0;padding:32px 34px 55px;overflow:auto}.page-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:28px}.page-heading h1{font-size:27px}.page-heading .muted{margin-top:8px;font-size:13px}.heading-actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}.page-section{display:grid;gap:18px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.stat-grid.compact{grid-template-columns:repeat(3,1fr)}.stat-card{display:flex;align-items:flex-start;gap:13px;min-height:121px;padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:13px;box-shadow:0 5px 18px #19454e06}.stat-icon{width:39px;height:39px;flex:0 0 39px;display:grid;place-items:center;border-radius:12px;font-size:18px;font-weight:800}.stat-icon.blue{color:#3c87de;background:#eaf3ff}.stat-icon.green{color:#2e9b86;background:#e7f8f2}.stat-icon.purple{color:#7769e7;background:#efedff}.stat-icon.orange{color:#dd8a2d;background:#fff2df}.stat-card span{display:block;color:var(--muted);font-size:12px}.stat-card strong{display:block;margin:7px 0 4px;font-size:23px;letter-spacing:-.03em}.stat-card small{color:#98aaad;font-size:11px}.dashboard-grid,.split-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,1fr);gap:18px}.panel{min-width:0;background:#fff;border:1px solid var(--line);border-radius:13px;box-shadow:0 5px 18px #19454e06;padding:20px}.panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px}.panel-head h2{font-size:16px}.panel-head p{margin-top:5px;color:var(--muted);font-size:11px}.progress-list{display:grid;gap:21px;padding:13px 4px 5px}.progress-list>div{display:grid;grid-template-columns:92px 1fr 42px;align-items:center;gap:11px;color:#617b83;font-size:12px}.progress-list b{color:var(--ink);text-align:right;font-size:12px}.progress{height:8px;overflow:hidden;background:#edf3f4;border-radius:8px}.progress i{display:block;height:100%;background:linear-gradient(90deg,#36a995,#66c5ad);border-radius:inherit}.notice-panel{padding-bottom:15px}.count-badge{color:#fff;background:#ef9274;border-radius:10px;padding:2px 8px;font-size:11px}.todo-row{display:flex;align-items:center;width:100%;gap:10px;padding:12px 2px;border-bottom:1px solid #eff4f5;text-align:left}.todo-row>span{width:30px;height:30px;display:grid;place-items:center;color:#d48343;background:#fff5e8;border-radius:9px}.todo-row div{flex:1}.todo-row b{display:block;font-size:12px}.todo-row small{display:block;margin-top:4px;color:var(--muted);font-size:11px}.todo-row em{color:#a1b2b5;font-style:normal}.analytics-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(360px,1fr);gap:18px}.updated-label{color:#91a7aa;font-size:11px;white-space:nowrap}.trend-chart{min-height:198px;display:flex;flex-direction:column;justify-content:flex-end;gap:14px}.trend-bars{height:150px;display:flex;align-items:flex-end;gap:7px;padding:12px 3px 0;border-bottom:1px solid #e7eff0}.trend-day{min-width:0;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:8px;height:100%}.trend-columns{width:100%;height:100%;display:flex;align-items:flex-end;justify-content:center;gap:3px}.trend-bar{display:block;width:min(13px,42%);min-height:3px;border-radius:4px 4px 1px 1px;transition:height .35s ease,opacity .2s}.trend-bar:hover{opacity:.72}.trend-bar.recharge,.trend-legend .recharge{background:#8ec9c1}.trend-bar.consume,.trend-legend .consume{background:#4c92ee}.trend-day small{color:#9aadaf;font-size:10px;transform:rotate(-35deg);transform-origin:top center;white-space:nowrap}.trend-legend{display:flex;gap:17px;flex-wrap:wrap;color:#69848a;font-size:11px}.trend-legend span{display:inline-flex;align-items:center;gap:6px}.trend-legend i{width:8px;height:8px;display:inline-block;border-radius:2px}.insight-panel{overflow:hidden}.insight-columns{display:grid;grid-template-columns:1fr 1fr;gap:25px}.insight-columns h3{margin-bottom:13px;color:#54737b;font-size:12px}.insight-row{display:grid;gap:6px;margin-bottom:12px}.insight-row>div:first-child{display:flex;justify-content:space-between;gap:8px;color:#66848a;font-size:11px}.insight-row b{color:#244d57;font-size:11px}.mini-progress{height:5px;overflow:hidden;background:#eef4f5;border-radius:5px}.mini-progress i{display:block;height:100%;background:linear-gradient(90deg,#43af9a,#8ad0bc);border-radius:inherit}.rank-row{display:flex;align-items:center;gap:9px;margin-bottom:12px}.rank-index{width:20px;height:20px;display:grid;place-items:center;color:#3b83d8;background:#eaf3ff;border-radius:6px;font-size:10px;font-weight:700}.rank-row:nth-child(3) .rank-index{color:#d18a35;background:#fff2df}.rank-row b,.rank-row small{display:block}.rank-row b{overflow:hidden;max-width:150px;color:#456871;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.rank-row small{margin-top:3px;color:#9aadaf;font-size:10px}.recent-panel{padding-top:18px}.table-panel{padding:0;overflow:hidden}.table-panel .panel-head{padding:20px 20px 0}.table-wrap{overflow:auto}table{width:100%;min-width:680px;border-collapse:collapse}th,td{padding:13px 15px;border-bottom:1px solid #edf3f4;text-align:left;white-space:nowrap}th{color:#8ba1a5;background:#fbfdfd;font-size:11px;font-weight:600}td{color:#48656d;font-size:12px}tbody tr:hover{background:#fcfefe}.check-col{width:38px;padding-right:0}.check-col input{width:15px;height:15px;accent-color:var(--teal)}.status-badge{display:inline-block;padding:3px 8px;border-radius:9px;color:#4c9282;background:#eaf8f1;font-size:11px}.status-badge.warn{color:#c68543;background:#fff3e3}.table-actions{display:flex;gap:10px}.empty-cell{padding:46px 10px;color:#9db0b3;text-align:center}.pagination{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:14px 18px;color:var(--muted);font-size:12px}.pagination button{padding:6px 10px;border:1px solid var(--line);border-radius:7px;color:#5f7b83}.filter-bar{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.filter-bar input{width:min(290px,100%)}.filter-bar select{width:145px}.date-filter{display:flex;align-items:center;gap:6px;color:#80979b;white-space:nowrap}.date-filter input{width:145px}.file-button{position:relative;overflow:hidden;display:inline-flex;align-items:center}.file-button input{position:absolute;inset:0;opacity:0;cursor:pointer}.selection-toolbar{display:flex;align-items:center;gap:13px;margin-top:-5px;padding:10px 13px;color:#4a7279;background:#ecf8f5;border:1px solid #d5eee8;border-radius:9px;font-size:12px}.department-list{display:grid;gap:1px}.department-row{display:flex;align-items:center;gap:11px;padding:13px 2px;border-bottom:1px solid #eef4f4}.dept-avatar{width:33px;height:33px;display:grid;place-items:center;flex:0 0 33px;border-radius:10px;color:#2d9181;background:#e9f7f3;font-weight:700}.department-row>div{flex:1}.department-row b,.department-row small{display:block}.department-row small{margin-top:3px;color:var(--muted);font-size:11px}.helper-panel{background:linear-gradient(155deg,#effaf8,#fff)}.helper-panel h2{margin-bottom:12px}.helper-panel ul{padding-left:20px;margin:0;color:#64848a;line-height:2.1;font-size:12px}.subnav{display:flex;gap:4px;padding:4px;width:fit-content;background:#edf3f4;border-radius:10px}.subnav button{padding:8px 13px;border-radius:7px;color:#769096;font-size:12px}.subnav button.active{color:var(--teal);background:#fff;box-shadow:0 3px 9px #18434b14;font-weight:700}.visitor-guide,.terminal-test{align-self:start}.visitor-guide h2,.terminal-test h2{margin-bottom:12px}.visitor-guide p{color:#6c878d;line-height:1.8;font-size:12px}.rule-choice{display:flex;gap:17px;margin:17px 0}.rule-choice label{display:flex;align-items:center;gap:6px}.rule-choice input{width:15px}.terminal-test{display:grid;gap:12px}.terminal-test .primary{margin-top:4px}.result-box{overflow:auto;max-height:220px;padding:12px;color:#4b6870;background:#f4f8f9;border-radius:9px;white-space:pre-wrap;font-size:11px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-tip{margin-top:16px;padding:11px 12px;color:#658187;background:#f2f8f8;border-radius:8px;font-size:12px;line-height:1.65}.backup-list{display:grid;gap:10px}.backup-list div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid #eef4f4;font-size:12px}.backup-list span{color:var(--muted)}.modal-mask{position:fixed;z-index:20;inset:0;display:grid;place-items:center;padding:18px;background:#0f262f75;backdrop-filter:blur(3px)}.modal-card{width:min(650px,100%);max-height:min(750px,calc(100vh - 36px));overflow:auto;padding:26px 28px 23px;background:#fff;border-radius:17px;box-shadow:0 24px 70px #0a273038}.modal-head{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:18px;margin-bottom:20px;border-bottom:1px solid var(--line)}.modal-head h2{font-size:20px}.modal-card form{display:grid;gap:15px}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:9px;padding-top:17px;border-top:1px solid var(--line)}.inline-list{display:flex;gap:7px;flex-wrap:wrap;padding:12px 0 4px}.pill{display:inline-flex;gap:6px;align-items:center;padding:6px 9px;color:#4d777e;background:#eef7f5;border-radius:8px;font-size:12px}.pill button{color:var(--blue);font-size:11px}.selected-person{display:flex;align-items:center;gap:10px;padding:12px;background:#f4f8f9;border-radius:9px}.selected-person small{display:block;margin-top:3px;color:var(--muted)}.qr-preview{display:grid;justify-items:center;gap:12px;text-align:center}.qr-preview p{line-height:1.7;font-size:12px}.qr-preview img{width:260px;height:260px;padding:10px;border:1px solid var(--line);border-radius:10px}.qr-preview strong{color:var(--ink);font-size:15px}.qr-preview code{padding:7px 10px;color:#4e7279;background:#f2f8f8;border-radius:7px;font-size:12px}.toast{position:fixed;z-index:30;right:24px;bottom:24px;display:flex;align-items:center;gap:9px;padding:12px 16px;color:#316c63;background:#ecfaf5;border:1px solid #cdece0;border-radius:10px;box-shadow:var(--shadow);font-size:13px}.toast.error{color:#a14c4c;background:#fff1f0;border-color:#f3d5d2}.toast span{width:19px;height:19px;display:grid;place-items:center;color:#fff;background:#41ac8e;border-radius:50%;font-size:11px;font-weight:800}.toast.error span{background:var(--danger)}.holder-app{min-height:100vh;background:#f4f8f7;padding-bottom:78px}.holder-topbar{position:relative;overflow:hidden;display:flex;justify-content:space-between;padding:27px max(24px,calc((100% - 620px)/2));color:#fff;background:linear-gradient(140deg,#058378,#098e83 64%,#0f998a)}.holder-topbar:after{content:"";position:absolute;width:410px;height:170px;right:-115px;bottom:-105px;border:1px solid rgba(255,255,255,.18);border-radius:50%;transform:rotate(-14deg)}.holder-topbar h1{position:relative;z-index:1;font-size:25px}.holder-topbar p:last-child{position:relative;z-index:1;margin-top:9px;color:#ffffffdb;font-size:12px}.light-button{position:relative;z-index:1;color:#fff;background:#ffffff29}.holder-main{width:min(620px,100%);margin:-1px auto 0;padding:0 12px}.balance-card{position:relative;z-index:2;margin:0 3px;padding:21px 20px 18px;color:#fff;background:linear-gradient(145deg,#087f77,#099188);border-radius:17px;box-shadow:0 13px 24px #046e6733}.balance-card:after{content:"";position:absolute;right:-35px;bottom:-42px;width:190px;height:130px;border:1px solid rgba(255,255,255,.12);border-radius:50%;transform:rotate(-26deg)}.balance-card-top,.balance-meta{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:center}.balance-card-top{font-weight:700}.status-dot{padding:5px 9px;color:#d8fff5;background:#ffffff21;border-radius:11px;font-size:11px}.balance-label{position:relative;z-index:1;margin-top:22px;font-size:12px}.balance-number{position:relative;z-index:1;margin:4px 0 18px;font-size:42px;font-weight:800;letter-spacing:.02em}.balance-meta{font-size:12px}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:0 2px 17px;padding:15px 7px;background:#fff;border-radius:0 0 16px 16px;box-shadow:0 7px 18px #1f4d510d}.quick-grid button{display:grid;justify-items:center;gap:5px;color:#58757b}.quick-grid strong{width:42px;height:42px;display:grid;place-items:center;color:#0a867c;background:#eef8f6;border:1px solid #dcefed;border-radius:13px;font-size:18px}.quick-grid b{font-size:12px}.quick-grid small{color:#99abad;font-size:10px}.holder-section{display:grid;gap:14px;padding:0 3px}.section-title{display:flex;justify-content:space-between;align-items:center;padding:2px 4px}.section-title h2{font-size:17px}.ecard-panel{display:flex;align-items:center;gap:18px;padding:19px;background:linear-gradient(135deg,#e0f7f4,#f5fcfc);border-radius:15px}.fake-qr{width:102px;height:102px;display:grid;grid-template-columns:repeat(7,1fr);gap:3px;padding:7px;flex:0 0 102px;background:#fff}.fake-qr span{background:#dcefee}.fake-qr span.dark{background:#0d4447}.ecard-panel h3{margin-bottom:7px;font-size:20px}.ecard-panel p{margin-top:8px;color:#5f7b80;font-size:11px}.tag{padding:4px 7px;color:#fff;background:#20a392;border-radius:6px;font-size:10px}.face-banner{display:flex;justify-content:space-between;align-items:center;padding:15px 17px;background:#fff;border:1px solid #e6efef;border-radius:14px}.face-banner p{margin-top:6px;color:var(--muted);font-size:11px}.meal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;padding:13px 5px;background:#fff;border-radius:13px}.meal-grid>div{display:grid;grid-template-columns:20px 1fr;gap:3px;padding:2px 9px;border-right:1px solid #e8eff0}.meal-grid>div:last-child{border:0}.meal-grid .sun{color:#f2a04b}.meal-grid strong{font-size:12px}.meal-grid small,.meal-grid em{grid-column:2;color:#8ca2a5;font-size:10px;font-style:normal}.meal-grid em{color:#36aa8b}.stack-list{display:grid;gap:10px}.list-card,.coupon-card,.profile-card{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:15px 16px;background:#fff;border:1px solid #e5eeee;border-radius:13px}.list-card p,.coupon-card p{margin-top:5px;color:var(--muted);font-size:11px}.list-card>strong{color:#3d9284}.coupon-card{background:linear-gradient(135deg,#fffaf1,#fff)}.coupon-card>strong{color:#d58a37}.profile-card{display:grid;gap:13px;align-items:stretch}.profile-card .primary{margin-top:4px}.empty{padding:35px 10px;color:#9eafb2;text-align:center;font-size:12px}.success-text{color:#349b81!important}.danger-text{color:#d65d5d!important}.holder-food{display:grid;gap:10px}.food-tip{display:grid;grid-template-columns:1fr auto;gap:4px 10px;padding:14px 15px;color:#4e7479;background:linear-gradient(135deg,#e9f8f4,#fff);border:1px solid #dcefeb;border-radius:13px}.food-tip b{color:#168c7d;font-size:18px}.food-tip small{grid-column:1 / -1;color:#8ba4a6;font-size:11px}.package-card{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:15px;background:#fff;border:1px solid #e5eeee;border-radius:13px}.package-card h3{margin:8px 0 5px;font-size:15px}.package-card p{color:#617e83;font-size:11px;line-height:1.5}.package-card small{display:block;margin-top:7px;color:#9aadaf;font-size:10px}.package-side{display:grid;justify-items:end;gap:9px;flex:0 0 auto}.package-side strong{color:#d48839;font-size:17px}.menu-preview{display:grid;gap:10px;margin-top:5px;padding-top:15px;border-top:1px solid #e7eeee}.menu-mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.menu-mini-grid>div{display:grid;gap:4px;padding:11px;background:#fff;border:1px solid #e8efef;border-radius:10px}.menu-mini-grid b{overflow:hidden;color:#4c7077;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.menu-mini-grid small{color:#9aadaf;font-size:10px}.menu-mini-grid strong{color:#d48839;font-size:12px}.profile-card-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;border:1px solid #e5eeee;border-radius:10px;background:#f8fbfb}.profile-card-row div{display:grid;gap:4px}.profile-card-row strong{color:#163a46;font-size:14px}.profile-actions{display:flex;gap:9px;flex-wrap:wrap}.danger-button{border:1px solid #efb2b2;color:#c45454;background:#fff5f5;border-radius:9px;padding:9px 14px;cursor:pointer}.security-block{display:grid;gap:10px;margin-top:4px;padding-top:15px;border-top:1px solid #e8efef}.security-block h3{margin:0;color:#1c5360;font-size:14px}.holder-nav{position:fixed;z-index:10;right:0;bottom:0;left:0;display:flex;justify-content:center;gap:0;height:68px;padding:8px max(10px,calc((100% - 620px)/2));background:#fffffff5;border-top:1px solid #e5eeee;box-shadow:0 -8px 25px #1942480d;backdrop-filter:blur(8px)}.holder-nav button{flex:1;max-width:120px;display:grid;justify-items:center;gap:4px;color:#92a6a9;font-size:10px}.holder-nav button span{font-size:17px}.holder-nav button.active{color:var(--teal);font-weight:700}@media(max-width:950px){.sidebar{width:190px;flex-basis:190px}.admin-content{padding:26px 21px 45px}.stat-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.split-grid,.analytics-grid{grid-template-columns:1fr}}@media(max-width:650px){.admin-topbar{height:62px;padding:0 15px}.admin-topbar .live-pill,.user-chip{display:none}.admin-layout{display:block}.sidebar{width:100%;height:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:7px;border-right:0;border-bottom:1px solid var(--line)}.side-caption,.side-footer{display:none}.sidebar>button{justify-content:center;gap:5px;padding:9px 3px;margin:0;font-size:11px}.sidebar>button span{width:auto;font-size:15px}.sidebar>button em{display:none}.admin-content{padding:22px 13px 35px}.page-heading{display:block;margin-bottom:21px}.page-heading h1{font-size:24px}.heading-actions{margin-top:15px;justify-content:flex-start}.stat-grid,.stat-grid.compact{grid-template-columns:1fr 1fr;gap:9px}.stat-card{min-height:105px;padding:14px;gap:9px}.stat-icon{width:32px;height:32px;flex-basis:32px}.stat-card strong{font-size:17px}.filter-bar{align-items:stretch}.filter-bar input,.filter-bar select,.date-filter,.date-filter input{width:calc(50% - 5px)}.filter-bar input{width:100%}.date-filter{display:grid;gap:5px}.date-filter input{width:100%}.insight-columns{grid-template-columns:1fr;gap:14px}.trend-bars{gap:3px}.trend-bar{width:10px}.form-grid{grid-template-columns:1fr}.modal-card{padding:21px 18px}}@media(max-width:420px){.holder-topbar{padding:23px 17px}.holder-topbar h1{font-size:22px}.holder-main{padding:0 7px}.balance-number{font-size:37px}.ecard-panel{gap:12px;padding:13px}.fake-qr{width:84px;height:84px;flex-basis:84px;gap:2px;padding:5px}.ecard-panel h3{font-size:18px}.meal-grid{grid-template-columns:1fr;gap:8px}.meal-grid>div{border-right:0}}.table-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;white-space:nowrap}.table-actions button{padding:0;border:0;background:transparent;cursor:pointer;font:inherit}.table-actions .danger-link{color:#c44a3d}.count-badge{min-width:28px;height:28px;padding:0 9px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#edf5f6;color:#2a6570;font-size:12px;font-weight:700}.heading-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.heading-actions .date-filter{display:flex;align-items:center;gap:8px;color:#66818a;font-size:12px}.heading-actions .date-filter input{height:38px}.panel .pagination{margin-top:16px}.status-badge.ok{background:#e8f7ef;color:#267652}.status-badge.warn{background:#fff2df;color:#a45c16}.holder-app{width:min(100%,480px);min-height:100vh;margin:0 auto;overflow:hidden;padding-bottom:104px;color:#123f43;background:linear-gradient(180deg,#f2f8f7,#fbfdfd 48%,#f3f8f7);font-family:PingFang SC,Microsoft YaHei,Inter,sans-serif}body:has(.holder-app){background:#dfeeed}.holder-topbar{position:relative;height:260px;overflow:hidden;display:block;padding:24px 22px 0;color:#fff;background:linear-gradient(160deg,#00665f,#008d82 60%,#0aa598);border-radius:0 0 40px 40px;box-shadow:inset 0 -24px 45px #014c4b24}.holder-topbar:before{content:"";position:absolute;inset:0;opacity:.16;background:radial-gradient(circle at 82% 25%,#b4fff5 0 2px,transparent 3px),radial-gradient(circle at 26% 15%,rgba(255,255,255,.7) 0 1px,transparent 2px),linear-gradient(180deg,transparent 55%,rgba(0,54,60,.38))}.holder-topbar:after{content:"";position:absolute;right:-78px;bottom:-98px;width:460px;height:210px;border:1px solid rgba(255,255,255,.2);border-radius:50%;transform:rotate(-7deg)}.status-time{position:relative;z-index:2;font-size:15px;font-weight:650;letter-spacing:.02em}.wx-capsule{position:absolute;z-index:2;top:52px;right:20px;display:flex;align-items:center;gap:12px;width:104px;height:38px;padding:0 12px;border:1px solid rgba(255,255,255,.56);border-radius:22px;color:#fff;background:#003f3f1c;box-shadow:inset 0 0 0 1px #ffffff14}.wx-capsule span{flex:1;font-size:22px;line-height:1;letter-spacing:2px;transform:translateY(-4px)}.wx-capsule i{width:1px;height:22px;background:#ffffff85}.wx-capsule b{display:grid;place-items:center;width:23px;height:23px;border:3px solid #fff;border-radius:50%;font-size:0}.wx-capsule b:after{content:"";width:7px;height:7px;border-radius:50%;background:#fff}.holder-page-title{position:relative;z-index:2;margin-top:48px;text-align:center;font-size:25px;font-weight:800;letter-spacing:.04em;text-shadow:0 4px 12px rgba(0,66,66,.2)}.campus-scenery{position:absolute;z-index:1;right:18px;bottom:0;width:280px;height:128px;opacity:.28;filter:saturate(.8)}.scenery-tower{position:absolute;right:82px;bottom:0;width:66px;height:98px;border-radius:5px 5px 0 0;background:linear-gradient(90deg,#e1fffa59,#76e5d780,#e1fffa40);clip-path:polygon(50% 0,83% 19%,83% 30%,96% 34%,96% 100%,4% 100%,4% 34%,17% 30%,17% 19%)}.scenery-tower:before{content:"";position:absolute;left:25px;top:33px;width:15px;height:20px;border:2px solid rgba(0,111,108,.6);border-radius:50% 50% 0 0}.scenery-tree{position:absolute;bottom:0;width:64px;height:78px;border-radius:50% 50% 44% 44%;background:radial-gradient(circle at 45% 26%,#d3fff4 0 12px,transparent 13px),radial-gradient(circle at 28% 49%,#d3fff4 0 17px,transparent 18px),radial-gradient(circle at 65% 51%,#c1faed 0 21px,transparent 22px),linear-gradient(90deg,transparent 45%,rgba(0,106,102,.5) 46% 54%,transparent 55%)}.scenery-tree.tree-a{right:150px;transform:scale(.82)}.scenery-tree.tree-b{right:4px;transform:scale(1.05)}.holder-main{position:relative;z-index:3;width:100%;margin:-1px auto 0;padding:0 16px}.holder-profile-hero,.profile-hero{position:relative;display:flex;align-items:center;gap:17px;min-height:112px;margin:-58px -2px 14px;padding:20px 21px 18px;background:#fffffff5;border-radius:34px 34px 38px 0;box-shadow:0 10px 25px #2f66670f}.holder-profile-hero h1,.profile-hero h1{margin:0 0 8px;color:#123f43;font-size:24px;letter-spacing:.01em}.holder-profile-hero p,.profile-hero p{color:#87959e;font-size:13px}.holder-avatar,.profile-avatar{width:76px;height:76px;flex:0 0 76px;display:grid;place-items:center;border:3px solid #fff;border-radius:50%;color:#fff;background:linear-gradient(145deg,#97dccd,#238f84);box-shadow:0 5px 14px #166f672e;font-size:34px;font-weight:800}.profile-hero{min-height:145px;margin:-22px -2px 16px;padding:28px 20px 24px;background:transparent;box-shadow:none;border-radius:0;color:#fff}.profile-hero h1,.profile-hero p{color:#fff}.profile-hero p{opacity:.9}.profile-hero p span{float:right;font-size:26px;line-height:12px}.profile-avatar{width:78px;height:78px;border-radius:23px;border-color:#ffffff3d;background:linear-gradient(145deg,#2eb6a8,#08786f);font-size:35px}.balance-card{position:relative;z-index:4;overflow:hidden;margin:0 2px 14px;padding:23px 23px 20px;color:#fff;background:linear-gradient(145deg,#079c8e,#007c73 92%);border:0;border-radius:27px 27px 24px 24px;box-shadow:0 15px 30px #00716736}.balance-card:before{content:"";position:absolute;right:-11px;bottom:-20px;width:205px;height:166px;border:1px solid rgba(255,255,255,.2);border-radius:50%;transform:rotate(-28deg);box-shadow:-15px 7px 0 -3px #ffffff0a,-30px 15px 0 -9px #ffffff12}.balance-card:after{content:"◫";position:absolute;right:26px;bottom:24px;color:#ffffff26;font-size:104px;line-height:.7;transform:rotate(-7deg)}.balance-card-top,.balance-meta{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center}.balance-card-top{font-size:16px;font-weight:750}.status-dot{padding:6px 12px;color:#fff;background:#00635b4d;border-radius:18px;font-size:12px}.balance-label{position:relative;z-index:2;margin-top:30px;font-size:14px;font-weight:650}.eye-mark{margin-left:7px;font-size:16px;opacity:.95}.balance-number{position:relative;z-index:2;margin:4px 0 22px;font-size:47px;font-weight:800;letter-spacing:.025em}.balance-meta{font-size:14px}.balance-meta i{font-style:normal;opacity:.86}.white-button{position:relative;z-index:3;min-width:130px;padding:11px 25px;color:#04756e;background:#fff;border-radius:24px;font-size:17px;font-weight:750;box-shadow:0 5px 12px #00312f14}.quick-grid{position:relative;z-index:4;display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin:0 2px 25px;padding:23px 9px 20px;background:#fffffff2;border-radius:22px;box-shadow:0 8px 22px #1b575a0f}.quick-grid button{display:grid;justify-items:center;gap:8px;min-width:0;color:#123f43}.quick-grid strong{width:50px;height:50px;display:grid;place-items:center;border-radius:17px;color:#fff;background:linear-gradient(145deg,#1cb8a7,#078f85);box-shadow:0 6px 12px #06908429;font-size:25px;line-height:1}.quick-grid button:nth-child(2) strong{color:#4b91ea;background:linear-gradient(145deg,#e5f0ff,#cfe5ff)}.quick-grid button:nth-child(3) strong{color:#f39427;background:linear-gradient(145deg,#fff3df,#ffe1b5)}.quick-grid button:nth-child(4) strong{color:#3fbdad;background:linear-gradient(145deg,#ecfbf8,#d7f2ed)}.quick-grid b{font-size:14px;white-space:nowrap}.quick-grid small{color:#9aa8ae;font-size:11px}.holder-section{display:grid;gap:15px;padding:0 2px}.detail-section{padding-bottom:24px}.section-title{display:flex;justify-content:space-between;align-items:center;padding:0 5px}.section-title h2{display:flex;align-items:center;gap:9px;color:#123f43;font-size:21px;font-weight:800}.section-title .link-button{color:#778995;font-size:13px;font-weight:600}.section-icon{display:inline-grid;place-items:center;color:#07988b;font-size:24px;line-height:1}.ecard-panel{position:relative;overflow:hidden;display:flex;align-items:center;gap:18px;min-height:160px;padding:17px;background:linear-gradient(135deg,#c9efeb,#ddf6f3 57%,#b5e6df);border:1px solid #a5ddd6;border-radius:21px;box-shadow:inset 0 1px #fff9}.ecard-panel:after{content:"";position:absolute;right:12px;bottom:-3px;width:124px;height:105px;border:2px solid rgba(27,159,149,.16);border-radius:50%;transform:rotate(-22deg)}.ecard-qr-image,.fake-qr{position:relative;z-index:2;width:110px;height:110px;flex:0 0 110px;padding:8px;background:#fff;border-radius:15px}.ecard-panel>div:not(.fake-qr){position:relative;z-index:2;min-width:0}.ecard-panel h3{margin-bottom:8px;font-size:23px}.ecard-panel p{margin-top:9px;color:#1f6669;font-size:12px}.ecard-panel .tag{display:inline-block;padding:6px 10px;border-radius:999px;color:#fff;background:#0da395;font-size:11px;font-weight:700}.ecard-safe{font-size:13px!important;font-weight:650}.ecard-watermark{position:absolute;right:20px;bottom:20px;z-index:1;color:#117e791f;font-size:18px;font-weight:900;letter-spacing:.15em}.meal-title{margin-top:6px}.meal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;padding:18px 8px;background:#fff;border:1px solid #e8f0f0;border-radius:21px;box-shadow:0 6px 16px #1d55560a}.meal-grid>div{display:grid;grid-template-columns:25px 1fr;gap:4px;padding:2px 10px;border-right:1px solid #e4eeee}.meal-grid>div:last-child{border-right:0}.meal-grid .sun{color:#f3a828;font-size:22px;line-height:1}.meal-grid strong{color:#687e88;font-size:12px}.meal-grid small,.meal-grid em{grid-column:2;color:#8698a0;font-size:10px;font-style:normal;white-space:nowrap}.meal-grid em{color:#07988b;font-size:11px;font-weight:700}.holder-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:6px;margin:-4px 0 5px;background:#ffffffb8;border-radius:18px}.holder-tabs button{position:relative;padding:11px 4px;color:#8b9aa3;border-radius:14px;font-size:15px;font-weight:750}.holder-tabs button.active{color:#07988b;background:#fff;box-shadow:0 5px 14px #1f5d5b1a}.holder-tabs button.active:after{content:"";position:absolute;left:50%;bottom:-1px;width:30px;height:4px;border-radius:99px;background:#07988b;transform:translate(-50%)}.section-lead{padding:2px 6px 10px;color:#83939d;font-size:14px}.holder-food{display:grid;gap:15px}.package-card{position:relative;display:grid;grid-template-columns:92px 1fr;gap:14px;min-height:238px;padding:17px;background:#fff;border:1px solid #e6efef;border-radius:23px;box-shadow:0 9px 23px #1f5e5e12}.package-visual{display:grid;place-items:center;width:92px;height:92px;overflow:hidden;border-radius:19px;background:radial-gradient(circle at 50% 45%,#f6dbb3 0 26%,transparent 27%),linear-gradient(145deg,#e8be81,#8e5f35)}.food-plate{color:#ffffffe6;font-size:34px}.package-copy{min-width:0}.package-copy .tag{display:inline-block;margin:2px 0 8px;color:#07988b;background:#e6f7f4;border-radius:99px;font-size:11px}.package-copy h3{margin-bottom:8px;color:#123f43;font-size:21px}.package-copy p{color:#8998a0;font-size:13px}.package-copy small{display:block;margin-top:12px;color:#8798a0;font-size:12px}.package-copy strong{display:block;margin-top:11px;color:#ef7b16;font-size:27px}.package-action{position:absolute;right:17px;bottom:16px;left:17px;width:calc(100% - 34px);padding:13px;border-radius:28px;color:#fff;background:linear-gradient(90deg,#0ca395,#00867d);font-size:17px;font-weight:750}.food-empty-art{display:grid;justify-items:center;gap:8px;padding:78px 0 70px;color:#8fa1a7;text-align:center}.food-empty-art span{display:grid;place-items:center;width:190px;height:112px;color:#1eb0a440;background:radial-gradient(ellipse at center bottom,rgba(77,185,173,.2),transparent 61%);font-size:80px;line-height:1}.food-empty-art b{color:#355c64;font-size:17px}.food-empty-art small{font-size:14px}.order-summary{display:flex;align-items:baseline;gap:9px;padding:3px 6px 2px;color:#8b9ca2}.order-summary strong{color:#07988b;font-size:28px}.order-summary span{font-size:13px}.order-filter{margin-left:auto}.stack-list{display:grid;gap:13px}.list-card,.coupon-card,.profile-card{display:flex;align-items:center;gap:13px;padding:17px 16px;background:#fff;border:1px solid #e7efef;border-radius:19px;box-shadow:0 6px 16px #2252550b}.list-leading-icon{display:grid;place-items:center;width:49px;height:49px;flex:0 0 49px;border-radius:50%;color:#07988b;background:#edf8f6;font-size:22px}.list-copy{min-width:0;flex:1}.list-copy b{display:block;overflow:hidden;color:#123f43;font-size:15px;text-overflow:ellipsis;white-space:nowrap}.list-copy p{overflow:hidden;margin-top:6px;color:#8c9aa1;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.list-copy small{display:block;margin-top:5px;color:#8c9aa1;font-size:11px}.order-card>strong{color:#07988b;font-size:16px}.records-hero,.coupon-hero{position:relative;display:flex;justify-content:space-between;align-items:center;overflow:hidden;min-height:118px;margin:-3px -2px 4px;padding:23px 20px;background:linear-gradient(145deg,#e8f5f3,#fff);border-radius:24px 24px 22px 0}.records-hero h2,.coupon-hero h2{color:#123f43;font-size:27px}.records-hero p,.coupon-hero p{margin-top:6px;color:#8899a0;font-size:13px}.records-hero>span{padding:9px 14px;color:#07988b;background:#e3f3f0;border-radius:99px;font-size:13px;font-weight:750}.record-card{min-height:102px}.record-card .list-leading-icon.recharge-icon,.record-card .list-leading-icon.consume-icon{color:#07988b;background:#edf8f6}.record-card>strong{white-space:nowrap;font-size:17px}.coupon-hero{min-height:180px;margin-top:-2px;padding:27px 20px;background:linear-gradient(155deg,#f1fbfa,#e9f6f4 68%,#fff)}.coupon-hero-art{display:grid;place-items:center;width:117px;height:100px;border-radius:23px;color:#0ba294;background:linear-gradient(145deg,#c7f3eee6,#57c6ba99);box-shadow:inset 0 0 0 1px #ffffff80;font-size:70px;font-weight:900;transform:rotate(9deg)}.coupon-claim{display:grid;grid-template-columns:1fr 112px;gap:11px;padding:19px;background:#fff;border-radius:22px;box-shadow:0 7px 19px #1c54540d}.coupon-claim input{height:52px;padding:0 17px;border:2px solid #e3e5e7;border-radius:18px;color:#123f43;font-size:16px}.coupon-claim .primary{border-radius:18px;background:linear-gradient(90deg,#0ca497,#078a80);font-size:17px}.coupon-list-title{margin-top:11px}.coupon-list-title h2{font-size:22px}.coupon-card.coupon-ticket{position:relative;overflow:hidden;min-height:136px;padding:0}.coupon-ticket:before,.coupon-ticket:after{content:"";position:absolute;top:50%;z-index:2;width:20px;height:20px;border-radius:50%;background:#f5faf9;transform:translateY(-50%)}.coupon-ticket:before{left:-10px}.coupon-ticket:after{right:-10px}.coupon-amount{display:grid;justify-items:center;align-content:center;width:112px;height:100%;flex:0 0 112px;color:#07988b;background:linear-gradient(145deg,#e6f6f3,#f7fcfb);border-right:2px dashed #e1eeee}.coupon-amount strong{font-size:38px;line-height:1}.coupon-amount small{margin-top:10px;font-size:14px}.coupon-copy{display:grid;align-content:center;gap:9px;min-width:0;flex:1}.coupon-copy b{overflow:hidden;color:#123f43;font-size:17px;text-overflow:ellipsis;white-space:nowrap}.coupon-copy span{width:fit-content;padding:4px 9px;color:#138b82;background:#e9f7f4;border-radius:99px;font-size:11px}.coupon-copy p{color:#89989f;font-size:12px}.coupon-status{align-self:start;margin:16px 13px 0 0;padding:8px 11px;color:#89939a;background:#f2f4f5;border-radius:99px;font-size:12px;font-style:normal;white-space:nowrap}.profile-page{gap:17px}.profile-card{display:grid;gap:0;align-items:stretch;padding:20px 19px;border-radius:22px}.profile-card h2{display:flex;align-items:center;gap:11px;margin-bottom:15px;color:#123f43;font-size:22px}.profile-row{display:flex;justify-content:space-between;align-items:center;min-height:50px;border-bottom:1px solid #e8eff0;color:#8a9aa2;font-size:14px}.profile-row:last-of-type{border-bottom:0}.profile-row strong{color:#293e49;font-size:15px;font-weight:500}.profile-link{color:#07988b!important}.security-card{padding-bottom:23px}.security-card .profile-actions{display:grid;gap:10px}.security-action{width:100%;padding:14px;border:1px solid #d8e9e7;border-radius:16px;color:#04756e;background:#f1f9f8;font-size:16px;font-weight:700}.security-action.danger-action{color:#da3d3d;border-color:#ffd7d7;background:#fff0f0}.permission-card .primary{margin-top:16px;border-radius:15px;background:linear-gradient(90deg,#0ca497,#078a80)}.security-block{display:grid;gap:12px;padding:20px;border-radius:21px}.security-block h3{margin:4px 0 0;color:#123f43;font-size:17px}.holder-nav{position:fixed;z-index:10;right:max(0px,calc((100vw - 480px)/2));bottom:0;left:max(0px,calc((100vw - 480px)/2));display:flex;justify-content:center;height:86px;padding:10px 8px calc(10px + env(safe-area-inset-bottom));background:#fffffff5;border-top:1px solid #e8eeee;border-radius:26px 26px 0 0;box-shadow:0 -10px 26px #1e525514;backdrop-filter:blur(14px)}.holder-nav button{position:relative;display:grid;justify-items:center;align-content:center;gap:5px;max-width:96px;color:#94a0a9;font-size:12px}.holder-nav button span{display:grid;place-items:center;min-height:27px;font-size:24px;line-height:1}.holder-nav button b{font-size:12px;font-weight:600}.holder-nav button.active{color:#07988b;font-weight:800}.holder-nav button.active span{transform:translateY(-2px);text-shadow:0 5px 10px rgba(6,155,139,.18)}.holder-nav button.active:before{content:"";position:absolute;bottom:7px;width:25px;height:3px;border-radius:99px;background:#07988b}.detail-section .empty{padding:45px 10px}@media(max-width:520px){body:has(.holder-app){background:#f2f8f7}.holder-app{width:100%}.holder-nav{right:0;left:0}}.holder-app:has(.profile-page) .holder-topbar{height:330px;border-radius:0 0 42px 42px}.holder-app:has(.profile-page) .profile-hero{margin:-168px -2px 19px;padding-top:25px}@media(max-width:380px){.holder-main{padding:0 11px}.holder-topbar{height:240px;padding-left:16px;padding-right:16px}.holder-page-title{margin-top:46px;font-size:23px}.holder-profile-hero h1,.profile-hero h1{font-size:21px}.holder-avatar,.profile-avatar{width:66px;height:66px;flex-basis:66px}.balance-card{padding:19px 18px}.balance-number{font-size:41px}.white-button{min-width:112px}.quick-grid{padding-left:3px;padding-right:3px}.quick-grid strong{width:44px;height:44px}.quick-grid b{font-size:12px}.ecard-panel{gap:11px;padding:12px}.ecard-qr-image,.fake-qr{width:92px;height:92px;flex-basis:92px}.ecard-panel h3{font-size:19px}.meal-grid{grid-template-columns:1fr;gap:8px}.meal-grid>div{border-right:0}.coupon-claim{grid-template-columns:1fr 96px;padding:13px}}.detail-section,.stack-list,.records-list,.record-card{min-width:0}.record-card{width:100%}.record-card .list-copy{min-width:0;max-width:100%;overflow:hidden}.record-card>strong{flex:0 0 auto}.records-hero>span{white-space:nowrap}.profile-card{grid-template-columns:minmax(0,1fr);width:100%}.profile-card .profile-row,.profile-card .profile-actions,.profile-card .security-action{width:100%}.face-file-input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}.face-banner{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:15px 17px;background:linear-gradient(135deg,#fff,#f0fbf9);border:1px solid #dcefeb;border-radius:19px;box-shadow:0 6px 15px #1d5c590d}.face-banner-main{display:flex;align-items:center;gap:11px;min-width:0}.face-banner-icon{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;border-radius:14px;color:#078f84;background:#e2f7f2;font-size:23px;font-weight:800}.face-banner-main strong{display:block;color:#123f43;font-size:15px}.face-banner-main p{margin-top:5px;color:#70878d;font-size:11px;line-height:1.5}.face-banner-main small{display:block;margin-top:4px;color:#94a6aa;font-size:10px}.face-banner-action{display:grid;justify-items:end;gap:7px;flex:0 0 auto}.face-status{padding:4px 9px;border-radius:99px;color:#9aa7ab;background:#f1f4f5;font-size:10px;font-weight:700}.face-status.enabled{color:#118979;background:#e4f7ef}.face-button{min-width:92px;padding:9px 12px;border-radius:13px;background:linear-gradient(90deg,#0ca497,#078a80);font-size:12px}.face-profile-card{gap:15px}.face-profile-content{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding:15px;border-radius:17px;background:linear-gradient(135deg,#f0faf8,#fbfdfd);border:1px solid #dfefed}.face-profile-content>div{min-width:0}.face-profile-content strong{display:block;color:#123f43;font-size:16px}.face-profile-content p{margin-top:7px;color:#70878d;font-size:12px;line-height:1.65}.face-profile-content small{display:block;margin-top:7px;color:#93a4a8;font-size:10px;line-height:1.5}.face-status.large{padding:7px 11px;font-size:11px;white-space:nowrap}.face-profile-actions{display:grid!important;grid-template-columns:1fr 1fr;gap:10px!important}.face-action{color:#087f77;background:#edf9f7}.face-profile-actions .danger-action{color:#cf4f4f;background:#fff2f2}@media(max-width:380px){.face-banner{align-items:flex-start;padding:13px}.face-banner-main{gap:8px}.face-banner-icon{width:36px;height:36px;flex-basis:36px;font-size:20px}.face-banner-main p{font-size:10px}.face-banner-action{gap:6px}.face-button{min-width:78px;padding:8px 9px;font-size:11px}.face-profile-content{padding:12px;gap:8px}.face-profile-actions{grid-template-columns:1fr!important}.face-profile-content p{font-size:11px}}body:has(.admin-app){background:#f5f8fa;color:#102c40}.admin-app{--admin-ink:#102c40;--admin-muted:#7f93a3;--admin-line:#e3ebf0;--admin-canvas:#f5f8fa;--admin-teal:#0b9f91;--admin-teal-dark:#087b73;--admin-blue:#256fdb;min-height:100vh;color:var(--admin-ink);background:var(--admin-canvas);font-family:Inter,PingFang SC,Microsoft YaHei,sans-serif}.admin-app .admin-topbar{height:66px;padding:0 24px 0 20px;border-bottom:1px solid #e6edf1;background:#fff;box-shadow:0 1px #0f3c4a05}.admin-app .brand{gap:12px}.admin-app .brand-mark.small{width:37px;height:37px;border-radius:11px;margin:0;color:#fff;background:linear-gradient(145deg,#119f93,#08786f);box-shadow:0 7px 16px #09918538;font-size:20px}.admin-app .brand b{color:#17354a;font-size:16px;line-height:1.15;letter-spacing:.01em}.admin-app .brand small{margin-top:3px;color:#8799a6;font-size:10px;letter-spacing:.01em}.admin-app .top-actions{gap:17px}.admin-app .live-pill{gap:8px;color:#23927e;font-size:12px;font-weight:650}.admin-app .live-pill i{width:7px;height:7px;background:#25b687;box-shadow:0 0 0 4px #e6f7f1}.admin-app .user-chip{padding-left:18px;border-left:1px solid #e3ebef;color:#647b8a;font-size:12px}.admin-app .icon-button{width:35px;height:35px;border-radius:11px;color:#668091;background:#f1f6f8;font-size:18px;transition:all .18s ease}.admin-app .icon-button:hover{color:var(--admin-teal);background:#e5f5f2}.admin-app .admin-layout{min-height:calc(100vh - 66px)}.admin-app .sidebar{width:210px;flex:0 0 210px;padding:18px 11px 15px;background:#fff;border-right:1px solid #e4edf1}.admin-app .side-caption{padding:0 12px 9px;color:#93a5b0;font-size:10px;line-height:1.2;letter-spacing:.08em;font-weight:700;text-transform:none}.admin-app .side-caption.lower{margin-top:22px}.admin-app .sidebar>button{position:relative;gap:10px;margin:1px 0;padding:10px 12px;border-radius:9px;color:#60798a;font-size:13px;line-height:1.25;transition:all .16s ease}.admin-app .sidebar>button span{width:18px;color:#8299a8;font-size:16px;line-height:1;text-align:center}.admin-app .sidebar>button:hover{color:#0a8278;background:#f1f8f7}.admin-app .sidebar>button.active{color:#078d81;background:#e8f6f3;font-weight:700;box-shadow:inset 3px 0 #0aaf9e}.admin-app .sidebar>button.active span{color:#07998c}.admin-app .sidebar>button em{right:10px;color:#fff;background:#f28e76}.admin-app .side-footer{padding:16px 12px 0;border-top:1px solid #e6eef1;color:#90a3ae;line-height:1.55;font-size:11px}.admin-app .side-footer small{color:#a9b8c0;font-size:10px}.admin-app .admin-content{padding:27px 30px 52px;background:var(--admin-canvas)}.admin-app .page-heading{margin-bottom:23px;align-items:flex-start}.admin-app .page-heading .eyebrow{margin-bottom:6px;color:#7796a3;font-size:10px;letter-spacing:.16em;font-weight:750}.admin-app .page-heading h1{color:#102c40;font-size:27px;line-height:1.2;letter-spacing:-.035em}.admin-app .page-heading .muted{margin-top:7px;color:#8296a3;font-size:12px;line-height:1.45}.admin-app .heading-actions{gap:9px}.admin-app .primary,.admin-app .secondary,.admin-app .white-button{min-height:36px;padding:8px 15px;border-radius:9px;font-size:12px;font-weight:700;transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease}.admin-app .primary{color:#fff;background:linear-gradient(135deg,#0fa99a,#07897f);border:1px solid transparent;box-shadow:0 7px 16px #06958833}.admin-app .primary:hover{transform:translateY(-1px);box-shadow:0 10px 21px #06958842}.admin-app .secondary{color:#526d7d;background:#fff;border:1px solid #dfe9ee;box-shadow:0 2px 6px #19485806}.admin-app .secondary:hover{color:#087e75;border-color:#b8ddd8;background:#f5fbfa}.admin-app .link-button,.admin-app .danger-link{font-size:12px;font-weight:700}.admin-app .link-button{color:#277bd8}.admin-app .danger-link{color:#e05f5b}.admin-app .page-section{gap:16px}.admin-app .stat-grid{gap:14px}.admin-app .stat-grid.compact{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-app .stat-card{min-height:116px;gap:14px;padding:20px 19px;border:1px solid var(--admin-line);border-radius:13px;background:#fff;box-shadow:0 6px 18px #21475809}.admin-app .stat-icon{width:42px;height:42px;flex-basis:42px;border-radius:14px;font-size:18px}.admin-app .stat-icon.blue{color:#347ee0;background:#eaf2ff}.admin-app .stat-icon.green{color:#209d84;background:#e5f7f1}.admin-app .stat-icon.purple{color:#7965e6;background:#f0edff}.admin-app .stat-icon.orange{color:#e49329;background:#fff1dd}.admin-app .stat-card span{color:#8498a5;font-size:11px}.admin-app .stat-card strong{margin:7px 0 4px;color:#102c40;font-size:23px;line-height:1.05}.admin-app .stat-card small{color:#8da0ab;font-size:11px}.admin-app .success-text{color:#1eaa8a!important}.admin-app .danger-text{color:#df6b60!important}.admin-app .panel{padding:19px 20px;border:1px solid var(--admin-line);border-radius:13px;background:#fff;box-shadow:0 6px 18px #21475809}.admin-app .panel-head{margin-bottom:16px}.admin-app .panel-head h2{color:#16354a;font-size:16px;line-height:1.25;font-weight:750}.admin-app .panel-head p{margin-top:5px;color:#8a9da9;font-size:11px;line-height:1.45}.admin-app .panel-head .link-button{color:#12978d}.admin-app .dashboard-grid,.admin-app .split-grid,.admin-app .analytics-grid{gap:16px}.admin-app .dashboard-grid{grid-template-columns:minmax(0,1.5fr) minmax(300px,.9fr)}.admin-app .analytics-grid{grid-template-columns:minmax(0,1.2fr) minmax(360px,.9fr)}.admin-app .progress-list{gap:18px;padding:10px 3px 2px}.admin-app .progress-list>div{grid-template-columns:94px minmax(0,1fr) 42px;gap:11px;color:#637c89;font-size:12px}.admin-app .progress{height:7px;background:#edf3f5}.admin-app .progress i{background:linear-gradient(90deg,#16a58f,#4dc3ad)}.admin-app .progress-list b{color:#17384b;font-size:11px}.admin-app .notice-panel{min-height:207px}.admin-app .count-badge{min-width:28px;height:28px;border-radius:999px;background:#edf6f5;color:#246b70;font-size:11px}.admin-app .todo-row{padding:12px 2px;color:#4e6e7c}.admin-app .todo-row>span{width:30px;height:30px;color:#0c9b8e;background:#edf8f6}.admin-app .todo-row b{font-size:12px;color:#294b5c}.admin-app .todo-row small{font-size:11px;color:#8ba0aa}.admin-app .trend-panel,.admin-app .insight-panel{min-height:345px}.admin-app .trend-bars{height:160px;border-bottom-color:#e5edf1}.admin-app .trend-bar.recharge,.admin-app .trend-legend .recharge{background:#6fc6b0}.admin-app .trend-bar.consume,.admin-app .trend-legend .consume{background:#4d90ee}.admin-app .trend-day small{color:#869ca7;font-size:10px}.admin-app .insight-columns{gap:24px}.admin-app .insight-columns h3{color:#526f7d;font-size:12px}.admin-app .insight-row>div:first-child{color:#607c89}.admin-app .insight-row b{color:#24495b}.admin-app .mini-progress{height:5px;background:#edf4f4}.admin-app .mini-progress i{background:linear-gradient(90deg,#0ca58f,#72ceb7)}.admin-app .rank-row b{color:#3e6473}.admin-app .recent-panel{padding-top:18px}.admin-app .table-panel{padding:0;overflow:hidden}.admin-app .table-panel>.panel-head{padding:19px 20px 0;margin-bottom:0}.admin-app .table-panel>.filter-bar{padding:17px 20px 15px}.admin-app .table-panel>.table-wrap{padding:0 0 1px}.admin-app .table-wrap{overflow:auto}.admin-app table{min-width:760px;border-collapse:collapse}.admin-app th,.admin-app td{height:48px;padding:12px 14px;border-bottom:1px solid #e9eff2;text-align:left;white-space:nowrap}.admin-app th{color:#8a9eab;background:#f8fafb;font-size:11px;font-weight:650}.admin-app td{color:#4e6879;font-size:12px}.admin-app tbody tr:last-child td{border-bottom:0}.admin-app tbody tr:hover{background:#fbfdfd}.admin-app .check-col{width:42px;padding-left:20px;padding-right:4px}.admin-app .check-col input{width:15px;height:15px;accent-color:var(--admin-teal)}.admin-app .status-badge{padding:4px 9px;border-radius:8px;color:#2a987b;background:#e8f7ef;font-size:11px;font-weight:650}.admin-app .status-badge.warn{color:#b16b25;background:#fff1df}.admin-app .status-badge.ok{color:#2a987b;background:#e8f7ef}.admin-app .table-actions{gap:11px}.admin-app .table-actions button{font-size:12px}.admin-app .empty-cell{padding:52px 10px;color:#9aacb6;font-size:12px}.admin-app .pagination{padding:14px 20px;color:#8498a5;font-size:12px}.admin-app .pagination button{min-width:30px;height:30px;padding:5px 10px;border:1px solid #dee8ed;border-radius:8px;color:#5d7484;background:#fff}.admin-app .pagination button:hover{border-color:#9ed7cf;color:#078d81}.admin-app .pagination button.active{border-color:#0b9f91;color:#fff;background:#0b9f91}.admin-app .filter-bar{gap:10px;align-items:center;flex-wrap:wrap}.admin-app>.admin-layout .page-section>.filter-bar{padding:14px 16px;border:1px solid var(--admin-line);border-radius:12px;background:#fff;box-shadow:0 5px 15px #21475806}.admin-app .filter-bar input,.admin-app .filter-bar select{height:38px;padding:8px 12px;border:1px solid #dfe9ee;border-radius:8px;background:#fff;color:#486779;font-size:12px}.admin-app .filter-bar input{width:min(270px,100%)}.admin-app .filter-bar select{width:138px}.admin-app .filter-bar input:focus,.admin-app .filter-bar select:focus{border-color:#72c8bc;box-shadow:0 0 0 3px #0b9f911a}.admin-app .date-filter{gap:7px;color:#8497a3;font-size:11px}.admin-app .date-filter input{width:142px}.admin-app .filter-bar .primary,.admin-app .filter-bar .secondary{height:38px;min-height:38px}.admin-app>.admin-layout .page-section>.filter-bar{padding:4px 0 0;border:0;border-radius:0;background:transparent;box-shadow:none;margin-bottom:5px}.admin-app .selection-toolbar{margin:0;padding:10px 14px;border:1px solid #d7eee9;border-radius:10px;background:#eff9f7;color:#428076}.admin-app .selection-toolbar .secondary{min-height:31px;padding:6px 11px}.admin-app .department-list{gap:0}.admin-app .department-row{min-height:67px;padding:12px 2px;border-bottom:1px solid #edf2f4}.admin-app .department-row:last-child{border-bottom:0}.admin-app .dept-avatar{width:38px;height:38px;flex-basis:38px;border-radius:10px;color:#0a9488;background:#eaf7f5;font-size:15px}.admin-app .department-row b{color:#294557;font-size:13px}.admin-app .department-row small{margin-top:4px;color:#8da0aa;font-size:11px}.admin-app .department-row .link-button,.admin-app .department-row .danger-link{margin-left:12px}.admin-app main:has(.department-list) .split-grid{grid-template-columns:minmax(0,2.15fr) minmax(320px,.9fr)}.admin-app main:has(.department-list) .department-row{min-height:73px}.admin-app main:has(.department-list) .helper-panel{min-height:700px;position:relative;overflow:hidden}.admin-app main:has(.department-list) .helper-panel:after{content:"";position:absolute;right:36px;bottom:39px;width:255px;height:170px;border-radius:18px;background:linear-gradient(180deg,#cff6f14d,#89ddd438);clip-path:polygon(0 100%,0 62%,19% 62%,19% 44%,31% 44%,31% 26%,50% 7%,69% 26%,69% 44%,81% 44%,81% 62%,100% 62%,100% 100%)}.admin-app[data-module=campus]:has(.sidebar>button:nth-of-type(7).active) table th,.admin-app[data-module=campus]:has(.sidebar>button:nth-of-type(7).active) table td{height:44px;padding-top:10px;padding-bottom:10px}.admin-app[data-module=campus]:has(.sidebar>button:nth-of-type(3).active) table th,.admin-app[data-module=campus]:has(.sidebar>button:nth-of-type(3).active) table td{height:32px!important;padding-top:4px!important;padding-bottom:4px!important;line-height:1.15}.admin-app[data-module=campus]:has(.sidebar>button:nth-of-type(3).active) .page-heading{margin-bottom:5px}.admin-app[data-module=campus]:has(.sidebar>button:nth-of-type(3).active) .table-panel>.panel-head{padding-top:13px}.admin-app[data-module=campus]:has(.sidebar>button:nth-of-type(3).active) .table-panel>.filter-bar{padding-top:6px;padding-bottom:8px}.admin-app[data-module=campus]:has(.sidebar>button:nth-of-type(3).active) .panel .pagination{margin-top:0;padding-top:8px;padding-bottom:8px}.admin-app main:has(.progress-list) .page-heading .eyebrow{display:none}.admin-app main:has(.progress-list) .page-heading{margin-bottom:4px}.admin-app main:has(.progress-list) .dashboard-grid .panel{min-height:156px;padding:15px 20px}.admin-app main:has(.progress-list) .dashboard-grid .panel-head{margin-bottom:8px}.admin-app main:has(.progress-list) .notice-panel{min-height:156px}.admin-app main:has(.progress-list) .progress-list{gap:11px;padding:2px 3px 0}.admin-app main:has(.progress-list) .dashboard-grid{row-gap:10px}.admin-app main:has(.progress-list) .analytics-grid .trend-panel,.admin-app main:has(.progress-list) .analytics-grid .insight-panel{min-height:235px}.admin-app main:has(.progress-list) .analytics-grid .trend-bars{height:110px}.admin-app main:has(.progress-list) .analytics-grid .trend-chart{min-height:150px;gap:8px}.admin-app main:has(.progress-list) .analytics-grid .insight-panel .panel-head{margin-bottom:8px}.admin-app main:has(.progress-list) .analytics-grid .insight-columns h3{margin-bottom:8px}.admin-app main:has(.progress-list) .analytics-grid .insight-row{gap:2px;margin-bottom:6px}.admin-app main:has(.progress-list) .analytics-grid .mini-progress{height:4px}.admin-app main:has(.progress-list) .analytics-grid .rank-row{gap:7px;margin-bottom:6px;min-height:26px}.admin-app main:has(.progress-list) .analytics-grid .rank-row small{margin-top:2px}.admin-app main:has(.report-toolbar) table th,.admin-app main:has(.report-toolbar) table td{height:42px;padding-top:10px;padding-bottom:10px}.admin-app main:has(.progress-list) .analytics-grid .trend-panel,.admin-app main:has(.progress-list) .analytics-grid .insight-panel{height:235px;min-height:235px;overflow:hidden;padding:15px 20px}.admin-app main:has(.progress-list) .analytics-grid .trend-panel .panel-head,.admin-app main:has(.progress-list) .analytics-grid .insight-panel .panel-head{margin-bottom:8px}.admin-app main:has(.progress-list) .analytics-grid .insight-columns h3{margin-bottom:5px;line-height:16px}.admin-app main:has(.progress-list) .analytics-grid .insight-row{gap:1px;margin-bottom:3px;line-height:13px}.admin-app main:has(.progress-list) .analytics-grid .insight-row>div:first-child{line-height:13px}.admin-app main:has(.progress-list) .analytics-grid .rank-row{gap:5px;margin-bottom:3px;min-height:22px;height:22px}.admin-app main:has(.progress-list) .analytics-grid .rank-row b{font-size:10px;line-height:12px}.admin-app main:has(.progress-list) .analytics-grid .rank-row small{font-size:9px;line-height:11px;margin-top:1px}@media(min-width:651px){.admin-app main:has(.report-toolbar)>.page-section{margin-top:-48px;row-gap:13px}.admin-app main:has(.report-toolbar)>.page-section>.table-panel{min-height:235px}}.admin-app .helper-panel{background:linear-gradient(155deg,#f0faf9,#fff 66%)}.admin-app .helper-panel h2{margin-bottom:14px;color:#16384b}.admin-app .helper-panel ul{padding-left:20px;color:#6d8794;line-height:2.3;font-size:12px}.admin-app .subnav{gap:4px;padding:4px;border:1px solid #e1eaee;background:#fff;border-radius:11px;box-shadow:0 4px 12px #21475808}.admin-app .subnav button{padding:8px 15px;border-radius:8px;color:#748b98;font-size:12px}.admin-app .subnav button.active{color:#078f84;background:#e7f6f2;box-shadow:none;font-weight:750}.admin-app main:has(.food-dashboard) .food-dashboard{display:grid;gap:16px}.admin-app main:has(.food-dashboard) .food-dashboard>.stat-grid .stat-card{min-height:148px}.admin-app main:has(.food-dashboard) .food-dashboard>.split-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.95fr)}.admin-app .report-toolbar{padding:10px 16px}.admin-app .report-toolbar .filter-bar{align-items:center}.admin-app .report-toolbar .filter-bar input{width:145px}.admin-app .report-toolbar .filter-bar select{width:126px}.admin-app .report-toolbar .filter-bar .date-filter{display:flex}.admin-app .report-toolbar .filter-bar .date-filter input{width:130px}.admin-app .stat-grid.report-stats{grid-template-columns:repeat(5,minmax(0,1fr))}.admin-app .report-stats .stat-card{min-height:103px;padding:17px 16px}.admin-app .report-stats .stat-icon{width:39px;height:39px;flex-basis:39px;border-radius:13px}.admin-app .report-stats .stat-card strong{font-size:20px}.admin-app .visitor-guide,.admin-app .terminal-test{align-self:stretch}.admin-app .visitor-guide h2,.admin-app .terminal-test h2{margin-bottom:15px;color:#16384b}.admin-app .visitor-guide p{color:#708996;line-height:1.9;font-size:12px}.admin-app .rule-choice{gap:18px;margin:16px 0}.admin-app .rule-choice label{display:flex;align-items:center;gap:6px;color:#607c8a;font-size:12px}.admin-app .rule-choice input{width:15px}.admin-app .terminal-test{gap:11px}.admin-app .terminal-test label{gap:6px;color:#637f8c;font-size:11px}.admin-app .terminal-test input,.admin-app .terminal-test select{height:38px;padding:8px 11px;font-size:12px}.admin-app .terminal-test .primary{margin-top:4px}.admin-app .result-box{max-height:220px;background:#f5f9fa;color:#4d6a78}.admin-app .form-grid{gap:15px}.admin-app label{gap:7px;color:#607c8a;font-size:12px}.admin-app label input,.admin-app label select,.admin-app label textarea{border-color:#dfe9ee;border-radius:8px;color:#29485a;font-size:13px}.admin-app label input,.admin-app label select{height:40px;padding:9px 12px}.admin-app label textarea{padding:9px 12px;resize:vertical}.admin-app .form-tip{margin-top:15px;padding:11px 13px;border-radius:8px;background:#f2f8f8;color:#6d8792;font-size:11px;line-height:1.7}.admin-app .backup-list{gap:8px}.admin-app .backup-list div{padding:10px 0;border-bottom-color:#edf2f4;color:#395b6d}.admin-app .backup-list span{margin-left:8px;color:#8da0aa}.admin-app~.modal-mask{background:#102c4061;backdrop-filter:blur(4px)}.admin-app~.modal-mask .modal-card{width:min(680px,100%);padding:25px 28px 22px;border:1px solid #e2edf0;border-radius:16px;box-shadow:0 26px 75px #0f314133}.admin-app~.modal-mask .modal-head{padding-bottom:16px;margin-bottom:19px;border-bottom-color:#e6eef1}.admin-app~.modal-mask .modal-head h2{color:#16384b;font-size:20px}.admin-app~.modal-mask .modal-head .eyebrow{color:#7194a0}.admin-app~.modal-mask .modal-actions{gap:9px;margin-top:9px;padding-top:16px;border-top-color:#e6eef1}.admin-app~.modal-mask .primary{background:linear-gradient(135deg,#0fa99a,#07897f)}@media(min-width:1400px){.admin-app .admin-content{padding-left:31px;padding-right:31px}.admin-app .page-heading h1{font-size:28px}.admin-app .panel{padding-left:20px;padding-right:20px}}@media(max-width:1100px){.admin-app .sidebar{width:190px;flex-basis:190px}.admin-app .admin-content{padding:24px 20px 42px}.admin-app .dashboard-grid,.admin-app .split-grid,.admin-app .analytics-grid{grid-template-columns:1fr}.admin-app .stat-grid,.admin-app .report-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-app .report-toolbar .filter-bar .date-filter{width:calc(50% - 5px)}}@media(max-width:650px){body:has(.admin-app){background:#f5f8fa}.admin-app .admin-topbar{height:62px;padding:0 15px}.admin-app .top-actions{gap:8px}.admin-app .live-pill,.admin-app .user-chip{display:none}.admin-app .admin-layout{display:block}.admin-app .sidebar{width:100%;height:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:7px;border-right:0;border-bottom:1px solid var(--admin-line)}.admin-app .side-caption,.admin-app .side-footer{display:none}.admin-app .sidebar>button{justify-content:center;gap:5px;margin:0;padding:9px 3px;font-size:11px}.admin-app .sidebar>button span{width:auto;font-size:15px}.admin-app .sidebar>button em{display:none}.admin-app .admin-content{padding:20px 13px 35px}.admin-app .page-heading{display:block;margin-bottom:20px}.admin-app .page-heading h1{font-size:24px}.admin-app .heading-actions{margin-top:14px;justify-content:flex-start}.admin-app .stat-grid,.admin-app .stat-grid.compact,.admin-app .stat-grid.report-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.admin-app .stat-card{min-height:102px;padding:14px}.admin-app .filter-bar input,.admin-app .filter-bar select,.admin-app .report-toolbar .filter-bar .date-filter,.admin-app .report-toolbar .filter-bar .date-filter input{width:100%}.admin-app table{min-width:680px}}.login-page{min-height:100vh;min-height:100dvh;display:block;position:relative;overflow:hidden;isolation:isolate;place-items:normal;padding:0 0 24px;color:#fff;background:linear-gradient(165deg,#045f69,#087f80 45%,#16b4a6 77%,#1ec6b1)}.login-page:before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(circle at 77% 39%,rgba(101,239,219,.48),transparent 24%),radial-gradient(circle at 48% 56%,rgba(82,225,207,.25),transparent 33%),linear-gradient(180deg,rgba(1,70,79,.38),transparent 48%)}.login-page:after{content:"";position:absolute;z-index:0;left:-7%;right:-7%;bottom:-4%;height:57%;background:linear-gradient(180deg,#f2fbfa,#fbfdfc 77%);clip-path:polygon(0 23%,8% 19%,17% 20%,26% 26%,35% 28%,44% 23%,54% 20%,64% 23%,73% 19%,83% 21%,92% 16%,100% 12%,100% 100%,0 100%)}.login-page .login-glow{z-index:1;filter:blur(1px);opacity:.18;pointer-events:none}.login-page .glow-a{width:310px;height:310px;top:186px;right:-112px;background:#8bf1dd}.login-page .glow-b{width:240px;height:240px;top:310px;left:-95px;background:#a2fff1}.login-orbit{position:absolute;z-index:1;border:1px solid rgba(150,255,234,.26);border-radius:50%;pointer-events:none}.orbit-a{width:470px;height:290px;top:220px;right:-115px;transform:rotate(-27deg)}.orbit-b{width:420px;height:180px;top:316px;left:-153px;transform:rotate(23deg);border-color:#cdfff833}.login-statusbar{position:absolute;z-index:4;top:17px;left:35px;right:35px;display:flex;align-items:center;justify-content:space-between;font-size:25px;font-weight:750;letter-spacing:.02em}.login-status-icons{display:flex;align-items:center;gap:11px}.login-status-icons i{display:block;position:relative}.login-status-icons .signal{width:27px;height:20px;background:linear-gradient(90deg,transparent 0 2px,#fff 2px 6px,transparent 6px 9px,#fff 9px 14px,transparent 14px 17px,#fff 17px 22px,transparent 22px 24px,#fff 24px);clip-path:polygon(0 100%,0 76%,20% 76%,20% 56%,40% 56%,40% 32%,62% 32%,62% 0,84% 0,84% 100%)}.login-status-icons .wifi{width:27px;height:19px;border:3px solid #fff;border-top-color:transparent;border-left-color:transparent;border-radius:50%;transform:rotate(45deg);margin-right:2px}.login-status-icons .wifi:after{content:"";position:absolute;width:6px;height:6px;left:8px;top:8px;background:#fff;border-radius:50%}.login-status-icons .battery{width:34px;height:18px;border:2px solid #fff;border-radius:4px}.login-status-icons .battery:before{content:"";position:absolute;inset:3px 4px;background:#fff;border-radius:1px}.login-status-icons .battery:after{content:"";position:absolute;right:-5px;top:5px;width:3px;height:7px;background:#fff;border-radius:0 2px 2px 0}.login-capsule{position:absolute;z-index:4;top:108px;right:26px;display:flex;align-items:center;gap:16px;width:195px;height:58px;padding:0 18px;color:#fff;border:1.5px solid rgba(255,255,255,.55);border-radius:32px;font-size:25px}.login-capsule i{width:1px;height:28px;background:#ffffff8c}.login-capsule b{display:grid;place-items:center;width:30px;height:30px;border:4px solid #fff;border-radius:50%;font-size:0}.login-capsule b:after{content:"";width:9px;height:9px;background:#fff;border-radius:50%}.login-titlebar{position:relative;z-index:3;display:flex;justify-content:center;padding:123px 24px 25px;border-bottom:1px solid rgba(255,255,255,.2)}.login-titlebar h1{font-size:27px;line-height:1;font-weight:750;letter-spacing:.02em;text-shadow:0 2px 5px rgba(1,54,62,.26)}.login-scenery{position:absolute;z-index:1;top:194px;left:0;right:0;height:414px;overflow:hidden;pointer-events:none}.scenery-glow{position:absolute;right:8%;top:70px;width:250px;height:250px;border-radius:50%;background:radial-gradient(circle,rgba(156,255,231,.5),rgba(61,201,188,.1) 62%,transparent 70%)}.scenery-building{position:absolute;bottom:72px;display:block;border:2px solid rgba(155,255,235,.58);background:linear-gradient(145deg,#7eecdc47,#076c7514);box-shadow:0 0 28px #5becd624}.building-main{right:4%;width:182px;height:136px;transform:skewY(-10deg)}.building-main:before{content:"";position:absolute;left:38%;top:-42px;width:82px;height:45px;border:2px solid rgba(154,255,235,.55);border-bottom:0;background:#4fc5b92e;transform:skewY(10deg)}.building-main:after{content:"";position:absolute;inset:22px 18px;background:repeating-linear-gradient(90deg,rgba(189,255,242,.36) 0 5px,transparent 5px 20px),repeating-linear-gradient(180deg,rgba(189,255,242,.26) 0 4px,transparent 4px 18px)}.building-side{right:27%;bottom:76px;width:108px;height:104px;opacity:.7;transform:skewY(-10deg)}.building-side:after{content:"";position:absolute;inset:18px 14px;background:repeating-linear-gradient(90deg,rgba(190,255,244,.32) 0 4px,transparent 4px 16px),repeating-linear-gradient(180deg,rgba(190,255,244,.25) 0 4px,transparent 4px 17px)}.scenery-wave{position:absolute;left:-10%;width:120%;height:115px;border-top:2px solid rgba(205,255,246,.6);border-radius:50%;transform:rotate(-9deg)}.wave-a{bottom:6px}.wave-b{bottom:-17px;opacity:.55;transform:rotate(-13deg)}.login-hero-copy{position:relative;z-index:2;width:min(790px,calc(100% - 68px));margin:0 auto;padding:68px 0 88px}.hero-logo{position:relative;width:76px;height:76px;display:grid;place-items:center;margin-bottom:29px;background:#fff;border-radius:23px;box-shadow:0 10px 28px #004e532b}.hero-logo span{position:relative;width:48px;height:40px;color:#fff;background:#078e88;border-radius:8px;font-size:0}.hero-logo span:before{content:"";position:absolute;left:0;right:0;top:10px;height:5px;background:#fff}.hero-logo span:after{content:"";position:absolute;left:17px;bottom:-1px;width:26px;height:17px;border:4px solid #fff;border-bottom:0;border-radius:16px 16px 0 0;transform:skew(-18deg)}.hero-logo i{position:absolute;right:12px;bottom:15px;width:18px;height:4px;border-radius:4px;background:#078e88;transform:rotate(-14deg)}.login-hero-copy h2{font-size:49px;line-height:1.05;font-weight:850;letter-spacing:.03em;text-shadow:0 3px 8px rgba(0,63,72,.18)}.login-hero-copy p{margin-top:22px;font-size:21px;letter-spacing:.04em;color:#fffffff0;text-shadow:0 2px 4px rgba(0,63,72,.18)}.login-page .login-card{position:relative;z-index:3;width:min(820px,calc(100% - 48px));margin:0 auto;padding:25px 29px;color:#173640;background:#fffffff5;border:1px solid rgba(255,255,255,.9);border-radius:32px;box-shadow:0 18px 44px #005b5b2b;backdrop-filter:blur(14px)}.login-role-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:0;margin-bottom:27px;background:#f2f8f7;border-radius:18px}.login-role-tabs button{display:flex;align-items:center;justify-content:center;gap:13px;min-height:61px;padding:12px 8px;color:#8799a2;border-radius:17px;font-size:21px;font-weight:650}.login-role-tabs button.active{color:#087f79;background:#fff;box-shadow:0 8px 18px #2766661a}.login-role-icon{font-size:24px;line-height:1;color:currentColor}.login-field{display:grid;gap:9px;margin-bottom:20px;color:#1e3844;font-size:19px;font-weight:650}.login-field .login-input-shell{position:relative;display:flex;align-items:center;height:62px;padding:0 18px;border:1.5px solid #d5dfe5;border-radius:17px;background:#fff;box-shadow:inset 0 1px #12434b05}.login-input-shell>i{width:28px;color:#078f88;font-size:25px;font-style:normal;text-align:center}.login-field:nth-of-type(2) .login-input-shell>i{color:#84949e}.login-input-shell input{height:100%;min-width:0;flex:1;border:0!important;outline:0;box-shadow:none!important;padding:0 14px;background:transparent;color:#223c47;font-size:20px}.login-input-shell input::placeholder{color:#909ca4}.password-toggle{width:30px;height:35px;color:#86919a;font-size:27px}.login-submit,.wechat-login{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;height:64px;border-radius:17px;color:#fff;font-size:22px;font-weight:750;letter-spacing:.02em;box-shadow:0 10px 18px #00777129;transition:transform .18s,filter .18s}.login-submit{margin-top:8px;background:linear-gradient(100deg,#21b9b1,#087c82)}.wechat-login{margin-top:14px;background:linear-gradient(100deg,#42d181,#1db16d);box-shadow:0 10px 18px #1cab6629}.login-submit:hover,.wechat-login:hover{filter:brightness(1.04);transform:translateY(-1px)}.login-submit b,.wechat-login b{margin-left:auto;margin-right:25px;font-size:33px;font-weight:400;line-height:1}.wechat-mark{font-size:18px;letter-spacing:-6px;margin-right:2px}.login-submit>span,.wechat-login>span:not(.wechat-mark){transform:translate(15px)}.login-page .demo-hint{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:4px 12px;margin-top:22px;padding-top:0;border-top:0;color:#81949d;font-size:15px;line-height:1.55}.login-page .demo-hint>span{display:inline-flex;align-items:center;gap:6px}.login-page .demo-hint>span i{color:#078f88;font-style:normal;font-size:19px}.login-page .demo-hint button{padding:0;color:#81949d;font-size:15px;text-align:left}.login-page .demo-hint button:hover{color:#078f88}.login-terms{position:relative;z-index:3;margin:28px auto 0;color:#7f949c;text-align:center;font-size:15px;letter-spacing:.02em}@media(min-width:651px){.login-page{padding-bottom:50px}.login-titlebar{padding-top:104px}.login-hero-copy{padding-top:55px;padding-bottom:70px}.login-page .login-card{width:min(620px,calc(100% - 48px))}.login-hero-copy h2{font-size:46px}.login-hero-copy p{font-size:19px}.login-capsule{top:86px}.login-statusbar{top:14px}.login-page .merchant-demo{display:inline}.login-terms{margin-top:22px}}@media(max-width:650px){.login-page{padding-bottom:22px}.login-statusbar{top:15px;left:28px;right:27px;font-size:22px}.login-status-icons{gap:8px;transform:scale(.82);transform-origin:right center}.login-capsule{top:75px;right:10px;width:100px;height:45px;gap:8px;padding:0 10px;font-size:17px}.login-capsule i{height:21px}.login-capsule b{width:23px;height:23px;border-width:3px}.login-titlebar{padding:63px 20px 16px}.login-titlebar h1{font-size:22px}.login-scenery{top:124px;height:290px}.orbit-a{width:360px;height:230px;top:145px;right:-101px}.orbit-b{width:350px;height:150px;top:223px;left:-140px}.scenery-glow{right:2%;top:45px;width:208px;height:208px}.building-main{right:-2%;bottom:33px;width:132px;height:99px}.building-main:before{top:-32px;width:60px;height:35px}.building-main:after{inset:16px 12px;background:repeating-linear-gradient(90deg,rgba(189,255,242,.36) 0 4px,transparent 4px 15px),repeating-linear-gradient(180deg,rgba(189,255,242,.26) 0 3px,transparent 3px 14px)}.building-side{right:30%;bottom:39px;width:82px;height:76px}.building-side:after{inset:13px 10px;background:repeating-linear-gradient(90deg,rgba(190,255,244,.32) 0 3px,transparent 3px 12px),repeating-linear-gradient(180deg,rgba(190,255,244,.25) 0 3px,transparent 3px 13px)}.scenery-wave{height:82px}.login-hero-copy{width:calc(100% - 68px);padding:20px 0 45px}.hero-logo{width:58px;height:58px;margin-bottom:14px;border-radius:18px}.hero-logo span{width:39px;height:32px}.login-hero-copy h2{font-size:39px}.login-hero-copy p{margin-top:8px;font-size:15px;line-height:1.45;white-space:nowrap}.login-page .login-card{width:calc(100% - 48px);padding:16px 18px;border-radius:29px}.login-role-tabs{grid-template-columns:repeat(2,1fr);margin-bottom:17px;border-radius:16px}.login-role-tabs button{min-height:50px;gap:7px;border-radius:15px;font-size:18px}.login-role-icon{font-size:21px}.login-role-tabs .merchant-role{display:none}.login-page .login-card form{gap:9px}.login-field{gap:7px;margin-bottom:12px;font-size:16px}.login-field .login-input-shell{height:52px;padding:0 14px;border-radius:14px}.login-input-shell>i{width:24px;font-size:21px}.login-input-shell input{padding:0 9px;font-size:17px}.password-toggle{font-size:23px}.login-submit,.wechat-login{height:56px;border-radius:15px;font-size:19px}.login-submit{margin-top:3px}.login-submit b,.wechat-login b{margin-right:18px;font-size:29px}.login-submit>span,.wechat-login>span:not(.wechat-mark){transform:translate(9px)}.wechat-login{margin-top:9px}.login-page .demo-hint{gap:2px 7px;margin-top:15px;font-size:11px;line-height:1.35}.login-page .demo-hint>span i{font-size:15px}.login-page .demo-hint button{font-size:11px}.login-page .merchant-demo{display:none}.login-terms{margin-top:18px;font-size:12px}}@media(min-width:651px){.login-page{padding-bottom:30px}.login-titlebar{padding-top:86px;padding-bottom:20px}.login-titlebar h1{font-size:25px}.login-scenery{top:133px;height:310px}.login-hero-copy{padding-top:35px;padding-bottom:30px}.hero-logo{width:66px;height:66px;margin-bottom:18px;border-radius:20px}.hero-logo span{width:43px;height:35px}.login-hero-copy h2{font-size:44px}.login-hero-copy p{margin-top:10px;font-size:18px}.login-page .login-card{padding:18px 24px;width:min(620px,calc(100% - 48px));border-radius:28px}.login-role-tabs{margin-bottom:18px;border-radius:15px}.login-role-tabs button{min-height:52px;gap:8px;border-radius:14px;font-size:18px}.login-role-icon{font-size:21px}.login-field{gap:7px;margin-bottom:13px;font-size:16px}.login-field .login-input-shell{height:52px;padding:0 14px;border-radius:14px}.login-input-shell>i{width:24px;font-size:21px}.login-input-shell input{padding:0 10px;font-size:17px}.password-toggle{font-size:24px}.login-page .login-card form{gap:9px}.login-submit,.wechat-login{height:54px;border-radius:14px;font-size:19px}.login-submit{margin-top:3px}.login-submit b,.wechat-login b{margin-right:19px;font-size:29px}.login-submit>span,.wechat-login>span:not(.wechat-mark){transform:translate(10px)}.wechat-login{margin-top:9px}.login-page .demo-hint{gap:2px 9px;margin-top:15px;font-size:12px}.login-page .demo-hint button{font-size:12px}.login-terms{margin-top:18px;font-size:13px}}.admin-app .selection-toolbar{display:flex;align-items:center;gap:10px;margin:10px 0;padding:10px 13px;border:1px solid #d8eeea;border-radius:10px;background:#f2fbf9;color:#197f79;font-size:12px}.admin-app .selection-toolbar span{font-weight:700;margin-right:auto}.admin-app .selection-toolbar button{font-size:12px}.admin-app .heading-actions button:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}.admin-app .global-view-badge{display:inline-flex;align-items:center;margin-top:10px;padding:5px 10px;border:1px solid #cce9e4;border-radius:999px;background:#edf9f6;color:#118476;font-size:11px;font-weight:700}.platform-readonly .admin-content:not(.platform-manage-section) .table-actions button,.platform-readonly .admin-content:not(.platform-manage-section) .check-col,.platform-readonly .admin-content:not(.platform-manage-section) .selection-toolbar,.platform-readonly .admin-content:not(.platform-manage-section) .file-button,.platform-readonly .admin-content:not(.platform-manage-section) .panel-head .heading-actions button:not(.link-button){display:none!important}.admin-app .return-platform{height:34px;padding:0 12px;border:1px solid #cde5e1;border-radius:9px;color:#087f75;background:#eff9f7;font-size:11px;font-weight:750;cursor:pointer}.admin-app .return-platform:hover{background:#e2f4f0}.admin-app .login-account-card{display:flex;align-items:center;justify-content:space-between;gap:18px}.admin-app .login-account-card>div{display:flex;align-items:center;gap:13px}.admin-app .login-account-card h2{color:#17384b;font-size:15px}.admin-app .login-account-card p{margin-top:4px;color:#466b79;font-size:12px}.admin-app .login-account-card small{display:block;margin-top:3px;color:#8a9da7;font-size:11px}.admin-app .account-avatar{width:42px;height:42px;display:grid;place-items:center;flex:0 0 42px;border-radius:13px;color:#fff;background:linear-gradient(145deg,#10a497,#087c73);font-size:17px;font-weight:800;box-shadow:0 7px 16px #0991852e}.admin-app .admin-account-filter{padding:0 20px 14px}.admin-app .admin-account-filter input{width:min(430px,100%)}.compact-modal{max-width:520px!important}.admin-app .data-reset-panel{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:15px;border-color:#f1d4d1;background:linear-gradient(135deg,#fff9f8,#fff)}.admin-app .data-reset-panel h2{margin-bottom:6px;color:#a64f4b}.admin-app .data-reset-panel p{margin:0;color:#8c7777;font-size:12px;line-height:1.65}.admin-app .tenant-search-panel{padding:12px 16px;margin-bottom:13px}.admin-app .warning-box{padding:13px 14px;border:1px solid #f0d5cf;border-radius:10px;background:#fff7f5;color:#915048;font-size:12px;line-height:1.7}.admin-app .warning-box strong{display:block;margin-bottom:3px;color:#a44740}.admin-app .warning-box p{margin:0;color:#9b7772}.admin-app .admin-content{display:flex;flex-direction:column}.admin-app .batch-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;border:1px solid #d8eeea;border-radius:10px;background:linear-gradient(135deg,#f1fbf8,#fff);color:#2e6670}.admin-app .batch-summary b{font-size:15px;color:#117f78}.admin-app .batch-summary span{font-size:12px;color:#6c8790}.admin-app .subsidy-picker{border:1px solid #dfe9ee;border-radius:10px;background:#fbfdfd;overflow:hidden}.admin-app .subsidy-picker .picker-toolbar{display:flex;align-items:center;gap:8px;padding:9px;border-bottom:1px solid #e7eff1;background:#f4f9f9}.admin-app .subsidy-picker .picker-toolbar input{height:34px;min-width:0;flex:1;border:1px solid #d8e5e8;border-radius:7px;padding:6px 9px;background:#fff;color:#29485a;font-size:12px}.admin-app .subsidy-picker .picker-toolbar button{padding:4px 2px;white-space:nowrap}.admin-app .subsidy-picker .picker-list{max-height:190px;overflow:auto;padding:4px 9px}.admin-app .subsidy-picker .picker-option{display:flex;flex-direction:row;align-items:center;gap:9px;margin:0;padding:9px 4px;border-bottom:1px solid #edf3f4;cursor:pointer}.admin-app .subsidy-picker .picker-option:last-child{border-bottom:0}.admin-app .subsidy-picker .picker-option input{width:15px;height:15px;accent-color:#07988c}.admin-app .subsidy-picker .picker-option span{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.admin-app .subsidy-picker .picker-option b{font-size:12px;color:#264553}.admin-app .subsidy-picker .picker-option small{font-size:10px;color:#8aa0a8;font-weight:400}.admin-app .subsidy-picker .picker-option em{font-size:10px;color:#91a4aa;font-style:normal}.admin-app .subsidy-picker>.form-tip{margin:0;border-radius:0;border-top:1px solid #e7eff1}@media(max-width:650px){.admin-app .selection-toolbar{flex-wrap:wrap}.admin-app .selection-toolbar span{width:100%;margin-right:0}.admin-app .subsidy-picker .picker-toolbar{flex-wrap:wrap}.admin-app .subsidy-picker .picker-toolbar input{flex-basis:100%}.admin-app .batch-summary{align-items:flex-start;flex-direction:column;gap:4px}}.coupon-note{display:flex;align-items:flex-start;gap:8px;margin-top:10px;padding:11px 13px;color:#55757a;background:#edf8f6;border-radius:12px;font-size:12px;line-height:1.5}.coupon-note span{color:#07988b;font-size:16px;line-height:1}.coupon-note p{margin:0}.holder-ad-slot{display:grid;gap:12px;margin:15px 0 2px}.holder-ad-card{position:relative;overflow:hidden;border-radius:18px;background:linear-gradient(135deg,#e9fbf7,#fff);border:1px solid rgba(17,151,139,.12);box-shadow:0 10px 22px #1a676914;cursor:pointer}.holder-ad-media{display:block;width:100%;max-height:190px;object-fit:cover;background:#d8f0ed}.holder-ad-text{padding:18px 18px 14px;background:radial-gradient(circle at 90% 10%,rgba(33,180,163,.2),transparent 40%),linear-gradient(135deg,#ebfbf7,#fff)}.holder-ad-text .ad-kicker{display:inline-block;padding:4px 8px;border-radius:99px;background:#d5f2ec;color:#078d81;font-size:11px;font-weight:700}.holder-ad-text h3{margin:9px 0 5px;color:#173d48;font-size:18px}.holder-ad-text p{margin:0;color:#66808a;font-size:13px;line-height:1.65}.holder-ad-caption{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;color:#1f5f68;font-size:12px;background:#ffffffd1}.holder-ad-caption span{color:#07988b}.admin-app .ad-guide,.admin-app .tenant-guide{background:linear-gradient(145deg,#f3fbfa,#fff 70%)}.admin-app .ad-guide h2,.admin-app .tenant-guide h2{margin-bottom:10px;color:#183f4c}.admin-app .ad-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.admin-app .ad-guide-grid>div{padding:14px;border:1px solid #e1efed;border-radius:11px;background:#fff}.admin-app .ad-guide-grid b{color:#078e83;font-size:13px}.admin-app .ad-guide-grid p,.admin-app .tenant-guide p{margin:7px 0 0;color:#718b95;font-size:12px;line-height:1.7}.admin-app main:has(.ad-guide) .table-panel,.admin-app main:has(.tenant-guide) .table-panel{margin-bottom:14px}@media(max-width:650px){.admin-app .ad-guide-grid{grid-template-columns:1fr}.holder-ad-media{max-height:160px}}.field-label{display:flex;align-items:center;gap:8px}.field-hint{color:#14968b;font-size:11px;font-style:normal;font-weight:500}.balance-number{font-size:38px}.balance-visibility{margin-left:6px;padding:0;border:0;color:inherit;background:transparent;font-size:16px;line-height:1;cursor:pointer;opacity:.92}.balance-visibility:hover{opacity:1;transform:scale(1.08)}.profile-visibility{padding:6px 10px;border:1px solid #cde6e2;border-radius:999px;color:#078f84;background:#f0faf8;font-size:12px;font-weight:700;cursor:pointer}.holder-ad-slot{margin-top:0;margin-bottom:15px}@media(max-width:380px){.balance-number{font-size:34px}}.tenant-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.tenant-guide-grid>div{padding:14px;border:1px solid #e1efed;border-radius:11px;background:#fff}.tenant-guide-grid b{display:block;color:#078e83;font-size:13px}.tenant-guide-grid span{display:block;margin-top:6px;color:#718b95;font-size:12px;line-height:1.6}@media(max-width:760px){.tenant-guide-grid{grid-template-columns:1fr}}.form-static{display:flex;flex-direction:column;gap:8px;padding:12px 14px;border:1px solid #e1efed;border-radius:10px;background:#f5fbfa;color:#6c858d;font-size:13px}.form-static b{color:#0b766f;font-size:14px}.login-page{position:relative;isolation:isolate;display:flex;flex-direction:column;min-height:100vh;overflow:hidden;color:#183554;background:linear-gradient(116deg,#f7fbff,#e9f7ff 47%,#f4fffb)}.login-page:before{content:"";position:absolute;z-index:-2;inset:0;background:radial-gradient(circle at 82% 7%,rgba(188,255,233,.58) 0 8%,transparent 27%),radial-gradient(circle at 53% 40%,rgba(133,211,255,.26),transparent 34%),linear-gradient(120deg,transparent 45%,rgba(255,255,255,.66) 45.2%,transparent 45.5%);pointer-events:none}.login-page:after{content:"";position:absolute;z-index:-1;right:-8%;bottom:-18%;left:-8%;height:46%;background:linear-gradient(180deg,#ffffff40,#ffffffeb);border-top:1px solid rgba(255,255,255,.74);border-radius:50% 50% 0 0/17% 17% 0 0;transform:rotate(-2deg);pointer-events:none}.login-bg-orbit{position:absolute;z-index:-1;border:1px solid rgba(96,185,220,.22);border-radius:50%;pointer-events:none}.login-bg-orbit.orbit-a{top:2%;right:-6%;width:420px;height:420px}.login-bg-orbit.orbit-b{top:19%;right:4%;width:300px;height:300px;transform:rotate(28deg)}.login-bg-dot{position:absolute;z-index:-1;width:5px;height:5px;border-radius:50%;background:#91d8ea;box-shadow:0 0 0 6px #91d8ea1c,24px 12px #b1e7f0,48px -1px #a4e1ed,71px 18px #b1e7f0,15px 39px #b1e7f0,39px 49px #9addec,63px 37px #b1e7f0;opacity:.7}.login-bg-dot.dot-a{top:70px;left:48%}.login-bg-dot.dot-b{right:30%;bottom:24%;transform:scale(.7);opacity:.45}.login-brand{position:absolute;z-index:3;top:29px;left:36px;display:flex;align-items:center;gap:13px}.login-brand>div:last-child{display:grid;gap:2px}.login-brand strong{font-size:20px;letter-spacing:.01em}.login-brand small{color:#6f8195;font-size:12px;letter-spacing:.04em}.login-brand-mark{position:relative;width:54px;height:54px;display:grid;place-items:center;border-radius:15px;background:linear-gradient(145deg,#297bf2,#20b9aa 78%);box-shadow:0 10px 22px #3688dc3b}.login-brand-mark:before{content:"";position:absolute;inset:10px 8px;border:3px solid #fff;border-radius:6px 6px 11px 11px;opacity:.96}.login-brand-mark:after{content:"";position:absolute;right:10px;bottom:13px;width:20px;height:11px;border:3px solid #fff;border-top:0;border-radius:0 0 10px 10px;transform:skew(-17deg)}.login-brand-mark span{position:absolute;top:20px;width:30px;height:3px;background:#fff;border-radius:4px}.login-shell{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.16fr) minmax(380px,.84fr);align-items:center;gap:70px;width:min(1260px,calc(100% - 110px));margin:0 auto;padding:128px 0 56px;flex:1}.login-showcase{position:relative;min-width:0;padding-top:15px}.showcase-copy{max-width:650px}.showcase-kicker{margin-bottom:19px;color:#3aa1bf;font-size:12px;font-weight:750;letter-spacing:.2em}.showcase-copy h1{font-size:clamp(48px,5vw,72px);line-height:1.05;font-weight:850;letter-spacing:.025em;color:#152f4d;text-shadow:0 7px 17px rgba(54,113,155,.1)}.showcase-copy h2{margin-top:18px;color:#178c91;font-size:clamp(22px,2.1vw,31px);font-weight:750;letter-spacing:.05em}.showcase-copy h2 b{margin:0 7px;color:#42b5b3;font-weight:500}.showcase-desc{max-width:590px;margin-top:19px;color:#71879a;font-size:16px;line-height:1.9;letter-spacing:.02em}.login-features{display:flex;gap:36px;margin-top:32px}.login-features>div{display:grid;justify-items:center;gap:9px;min-width:75px;color:#294966}.login-features b{font-size:13px;font-weight:650}.feature-icon{position:relative;display:grid;place-items:center;width:60px;height:60px;border-radius:50%;color:#fff;font-size:22px;font-weight:800;background:linear-gradient(145deg,#55d6bf,#218bd7);box-shadow:0 9px 20px #2f9bc22e}.feature-icon.wallet{background:linear-gradient(145deg,#66d8cf,#2c9dd7)}.feature-icon.record{background:linear-gradient(145deg,#5dd9db,#2d91d5)}.feature-icon.apps{background:linear-gradient(145deg,#5ad9c5,#3483e4);font-size:18px;letter-spacing:1px}.login-campus-scene{position:relative;height:300px;margin-top:22px;overflow:hidden;border-radius:28px 28px 18px 18px;background:linear-gradient(180deg,#b8e5ff1f,#7dcde159 74%,#4ebac359);box-shadow:inset 0 -30px 45px #33a9c01f}.login-campus-scene:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 66% 26%,rgba(255,255,255,.95) 0 5px,transparent 6px),radial-gradient(circle at 70% 18%,rgba(255,255,255,.8) 0 3px,transparent 4px),linear-gradient(165deg,transparent 55%,rgba(255,255,255,.55) 55.4%,transparent 56%);opacity:.8}.campus-hill{position:absolute;right:-8%;bottom:73px;left:-8%;height:105px;border-radius:50% 50% 0 0;background:linear-gradient(180deg,#68cbbc38,#44a7c14d);transform:rotate(-4deg)}.campus-building{position:absolute;bottom:72px;border-radius:8px 8px 2px 2px;border:2px solid rgba(255,255,255,.62);background:linear-gradient(135deg,#ffffffbd,#89d5ed8a);box-shadow:inset 0 0 0 8px #5cbbdd1f}.campus-building:before{content:"";position:absolute;inset:22px 15px;background:repeating-linear-gradient(90deg,rgba(58,151,205,.27) 0 8px,transparent 8px 21px),repeating-linear-gradient(180deg,rgba(58,151,205,.2) 0 6px,transparent 6px 17px)}.building-left{left:1%;width:190px;height:125px;transform:perspective(250px) rotateY(16deg) skewY(-5deg)}.building-center{left:28%;width:275px;height:168px;transform:perspective(300px) rotateY(-4deg)}.building-center:after{content:"";position:absolute;top:-42px;left:37%;width:73px;height:44px;border:2px solid rgba(255,255,255,.66);border-bottom:0;border-radius:10px 10px 0 0;background:#5eb3da5c}.building-right{right:8%;width:145px;height:108px;transform:perspective(250px) rotateY(-18deg) skewY(5deg)}.campus-water{position:absolute;right:-10%;bottom:-42px;left:-10%;height:112px;border-radius:50% 50% 0 0;background:linear-gradient(180deg,#e5fffdb8,#62cfdb66);box-shadow:inset 0 14px 18px #ffffff80}.campus-card-art{position:absolute;z-index:2;bottom:22px;left:14%;width:260px;height:155px;padding:25px;color:#fff;border-radius:14px;background:linear-gradient(130deg,#22c6b2,#20a9dc 59%,#356bd7);box-shadow:0 16px 24px #296cb147;transform:rotate(-7deg);overflow:hidden}.campus-card-art:after{content:"";position:absolute;right:-24px;bottom:-44px;width:180px;height:180px;border:2px solid rgba(255,255,255,.22);border-radius:50%}.campus-card-art b{position:relative;z-index:1;display:block;font-size:18px;letter-spacing:.09em}.campus-card-art small{position:relative;z-index:1;display:block;margin-top:3px;font-size:9px;letter-spacing:.18em;opacity:.78}.campus-card-art i{position:absolute;right:30px;bottom:20px;font-size:49px;line-height:1;opacity:.43;font-style:normal}.card-chip{position:relative;z-index:1;width:28px;height:21px;margin-bottom:24px;border:2px solid rgba(255,255,255,.8);border-radius:5px;background:linear-gradient(90deg,transparent 42%,rgba(255,255,255,.6) 43% 49%,transparent 50%)}.campus-tree{position:absolute;z-index:2;bottom:40px;width:52px;height:84px;border-radius:50% 50% 12px 12px;background:radial-gradient(circle at 50% 28%,#9de6c7 0 22px,transparent 23px),radial-gradient(circle at 30% 51%,#7bd0bf 0 23px,transparent 24px),radial-gradient(circle at 70% 51%,#71c5b8 0 24px,transparent 25px)}.campus-tree:after{content:"";position:absolute;bottom:-26px;left:24px;width:5px;height:38px;background:#7fae9e;border-radius:4px}.tree-left{left:9%}.tree-right{right:2%;transform:scale(1.12)}.login-page .login-card{width:100%;max-width:475px;justify-self:end;padding:34px 39px 26px;position:relative;z-index:3;color:#183554;background:#ffffffd4;border:1px solid rgba(255,255,255,.9);border-radius:27px;box-shadow:0 18px 50px #3f799d33,inset 0 1px #fffc;backdrop-filter:blur(16px)}.login-card-header{text-align:center}.login-shield{position:relative;display:grid;place-items:center;width:56px;height:56px;margin:0 auto 12px;color:#fff;font-size:28px;font-weight:800;background:linear-gradient(145deg,#49d4d1,#2581e8);border-radius:17px 17px 21px 21px;box-shadow:0 8px 16px #3193d333;clip-path:polygon(50% 0,92% 16%,86% 73%,50% 100%,14% 73%,8% 16%)}.login-shield:after{content:"";position:absolute;inset:8px;border:1px solid rgba(255,255,255,.52);border-radius:50%}.login-card-header h2{font-size:27px;font-weight:800;letter-spacing:.02em}.login-card-header p{margin-top:8px;color:#8295aa;font-size:13px}.login-page .login-card form{display:grid;gap:16px;margin-top:24px}.login-page .login-field{display:grid;gap:8px;margin:0;color:#183554;font-size:14px;font-weight:750}.login-page .login-field .login-input-shell{position:relative;display:flex;align-items:center;height:56px;padding:0 15px;border:1px solid #d2dee9;border-radius:14px;background:#ffffffe6;box-shadow:inset 0 1px 3px #24598008}.login-page .login-input-shell>i{width:24px;color:#8b9bad;font-size:19px;font-style:normal;text-align:center}.login-page .login-input-shell input{height:100%;min-width:0;flex:1;padding:0 10px;border:0!important;outline:0;box-shadow:none!important;background:transparent;color:#244560;font-size:15px}.login-page .login-input-shell input::placeholder{color:#adb9c5}.login-page .password-toggle{width:28px;height:32px;color:#8997a7;font-size:21px}.login-page .login-submit,.login-page .wechat-login{display:flex;align-items:center;justify-content:center;width:100%;height:56px;border-radius:14px;font-size:17px;font-weight:800;letter-spacing:.03em;transition:transform .18s,box-shadow .18s,filter .18s}.login-page .login-submit{margin-top:2px;color:#fff;background:linear-gradient(100deg,#35bfd0,#18b78c);box-shadow:0 11px 22px #1db5a33b}.login-page .wechat-login{margin-top:0;color:#16a786;background:#ffffffad;border:1px solid #38c5bf;box-shadow:none}.login-page .login-submit:hover,.login-page .wechat-login:hover{filter:brightness(1.03);transform:translateY(-1px)}.login-page .login-submit:disabled,.login-page .wechat-login:disabled{transform:none}.login-page .login-submit b{margin-left:auto;margin-right:19px;font-size:29px;font-weight:400;line-height:1}.login-page .login-submit>span{transform:translate(13px)}.login-page .wechat-mark{margin-right:9px;color:#2ab57d;font-size:16px;letter-spacing:-5px}.login-links{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:19px;color:#8799aa;font-size:12px}.login-links button{padding:0;color:#7a8fa3;font-size:12px}.login-links button:hover{color:#159b9a}.login-links i{width:1px;height:15px;background:#d1dde4}.login-page .demo-hint{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:4px 9px;margin-top:15px;padding-top:13px;border-top:1px solid #e5edf1;color:#99a8b5;font-size:10px;line-height:1.45}.login-page .demo-hint>span{display:inline-flex;align-items:center;gap:4px}.login-page .demo-hint>span i{color:#34aaa9;font-style:normal;font-size:13px}.login-page .demo-hint button{padding:0;color:#8c9eaa;font-size:10px;text-align:left}.login-page .demo-hint button:hover{color:#159b9a}.login-footer{position:relative;z-index:2;padding:0 30px 24px;text-align:center}.login-trust{display:flex;justify-content:center;gap:44px;margin-bottom:18px}.login-trust>span{display:grid;grid-template-columns:26px auto;grid-template-rows:auto auto;column-gap:8px;text-align:left;color:#708aa0}.login-trust i{grid-row:1 / span 2;display:grid;place-items:center;width:26px;height:26px;color:#6f8dab;border:2px solid #88a5bc;border-radius:50%;font-size:14px;font-style:normal}.login-trust b{font-size:13px;font-weight:700}.login-trust small{margin-top:2px;color:#a0afbe;font-size:10px}.login-footer>p{color:#9cabb9;font-size:11px;letter-spacing:.01em}@media(max-width:1100px){.login-shell{gap:38px;width:min(1050px,calc(100% - 70px))}.login-features{gap:20px}.campus-card-art{left:8%;transform:rotate(-7deg) scale(.88);transform-origin:left bottom}.login-page .login-card{max-width:430px;padding-left:30px;padding-right:30px}}@media(max-width:820px){.login-brand{top:20px;left:23px}.login-brand-mark{width:45px;height:45px;border-radius:13px}.login-brand-mark:before{inset:8px 7px}.login-brand strong{font-size:17px}.login-shell{grid-template-columns:1fr;gap:27px;width:min(620px,calc(100% - 42px));padding:92px 0 33px}.login-showcase{padding-top:13px}.showcase-copy{max-width:none;text-align:center}.showcase-kicker{margin-bottom:11px;font-size:10px}.showcase-copy h1{font-size:48px}.showcase-copy h2{margin-top:10px;font-size:21px}.showcase-desc{margin:12px auto 0;font-size:13px;line-height:1.65}.login-features{justify-content:center;margin-top:20px;gap:24px}.feature-icon{width:48px;height:48px;font-size:18px}.login-features b{font-size:11px}.login-campus-scene{height:190px;margin-top:15px}.campus-building{bottom:49px}.building-left{width:115px;height:76px}.building-center{width:175px;height:105px}.building-center:after{top:-28px;height:29px;width:48px}.building-right{width:90px;height:67px}.campus-water{height:75px;bottom:-31px}.campus-card-art{bottom:11px;width:195px;height:113px;padding:17px 18px}.campus-card-art b{font-size:14px}.campus-card-art small{font-size:7px}.campus-card-art i{font-size:35px;right:21px;bottom:14px}.card-chip{width:22px;height:16px;margin-bottom:13px}.campus-tree{bottom:25px;transform:scale(.76)}.tree-right{transform:scale(.86)}.login-page .login-card{max-width:520px;justify-self:center;padding:28px 30px 21px}.login-footer{padding-bottom:17px}.login-trust{gap:23px;margin-bottom:12px}.login-footer>p{font-size:9px}}@media(max-width:520px){.login-brand{top:16px;left:17px}.login-brand-mark{width:39px;height:39px;border-radius:11px}.login-brand-mark:before{inset:7px 6px;border-width:2px}.login-brand-mark:after{right:7px;bottom:10px;width:15px;height:8px;border-width:2px}.login-brand-mark span{top:15px;width:22px;height:2px}.login-brand strong{font-size:15px}.login-brand small{font-size:9px}.login-shell{width:calc(100% - 28px);padding-top:75px;gap:19px}.showcase-copy h1{font-size:40px}.showcase-copy h2{font-size:17px;letter-spacing:.02em}.showcase-copy h2 b{margin:0 3px}.showcase-desc{font-size:12px;line-height:1.55}.login-features{gap:10px;margin-top:17px}.login-features>div{min-width:64px;gap:6px}.feature-icon{width:43px;height:43px}.login-campus-scene{height:145px;margin-top:11px;border-radius:19px}.campus-building{bottom:37px}.building-left{width:85px;height:53px}.building-center{left:26%;width:126px;height:74px}.building-center:after{top:-21px;height:22px;width:35px}.building-right{right:5%;width:65px;height:47px}.campus-water{height:58px;bottom:-28px}.campus-card-art{bottom:8px;left:11%;width:146px;height:82px;padding:12px;border-radius:9px}.campus-card-art b{font-size:10px}.campus-card-art small{font-size:5px}.campus-card-art i{font-size:24px;right:13px;bottom:10px}.card-chip{width:16px;height:12px;margin-bottom:8px;border-width:1px}.campus-tree{bottom:16px;transform:scale(.54)}.tree-right{transform:scale(.62)}.login-page .login-card{padding:22px 20px 17px;border-radius:22px}.login-shield{width:46px;height:46px;margin-bottom:9px;font-size:22px}.login-card-header h2{font-size:23px}.login-card-header p{font-size:11px}.login-page .login-card form{gap:12px;margin-top:19px}.login-page .login-field{gap:6px;font-size:13px}.login-page .login-field .login-input-shell{height:49px;padding:0 12px;border-radius:12px}.login-page .login-input-shell input{font-size:14px}.login-page .login-submit,.login-page .wechat-login{height:50px;border-radius:12px;font-size:16px}.login-page .login-submit b{margin-right:14px;font-size:26px}.login-links{margin-top:15px;font-size:11px}.login-links button{font-size:11px}.login-page .demo-hint{margin-top:12px;padding-top:10px;font-size:9px}.login-page .demo-hint button{font-size:9px}.login-footer{padding:0 16px 12px}.login-trust{display:none}.login-footer>p{font-size:8px;line-height:1.5}}.sidebar-subnav{display:flex;flex-direction:column;padding:3px 0 6px 14px;gap:2px}.sidebar-subnav button{display:flex;align-items:center;gap:9px;width:100%;padding:8px 12px;border-radius:7px;color:#64748b;font-size:12.5px;text-align:left;transition:all .15s ease;background:transparent;cursor:pointer}.sidebar-subnav button:hover{color:var(--teal, #0e827b);background:#f0faf8}.sidebar-subnav button.active{color:var(--teal, #0e827b);background:#e6f6f3;font-weight:700}.sidebar-subnav button span{width:5px;height:5px;border-radius:50%;background:#cbd5e1;display:inline-block;transition:all .15s}.sidebar-subnav button:hover span,.sidebar-subnav button.active span{background:var(--teal, #0e827b);transform:scale(1.2)}.detail-login-gate{min-height:560px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center;background:linear-gradient(145deg,#f8fcfc,#fff 65%);border:1px solid #dceeed;border-radius:18px;color:#173843}.detail-login-gate-icon{width:64px;height:64px;display:grid;place-items:center;margin-bottom:18px;border-radius:20px;color:#0c9c90;background:#e3f7f3;font-size:32px;font-weight:700}.detail-login-gate h1{margin:4px 0 10px;font-size:25px}.detail-login-gate>p:not(.eyebrow){max-width:520px;margin:0;color:#70858c;line-height:1.8}.detail-login-gate-actions{display:flex;gap:12px;margin-top:26px}.current-project-badge small{color:#7b9298;font-weight:500}.admin-app .topbar-scope{max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#c5e8e4;font-size:12px}.admin-app .admin-account-filter select{max-width:240px}.admin-app .sidebar .sidebar-subnav button .subnav-label{width:auto;height:auto;background:none;border-radius:0;transform:none;font-size:12px}.sidebar>button .nav-caret{margin-left:auto;font-size:11px;color:#94a3b8;background:transparent;padding:0;font-style:normal}.admin-content.no-padding{padding:0!important}.parking-platform-embed-section{width:100%;height:100%;display:flex;flex-direction:column}.admin-app .admin-content>*{flex-shrink:0}.admin-app .admin-content>.tenant-account-panel{min-height:220px}.platform-inline-form{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(180px,.8fr) minmax(260px,1.6fr);gap:10px;align-items:center;margin-bottom:18px}.platform-inline-form .wide-field{grid-column:auto}.platform-inline-form .button-row{grid-column:1 / -1;justify-content:flex-start}@media(max-width:900px){.platform-inline-form{grid-template-columns:1fr}.platform-inline-form .wide-field,.platform-inline-form .button-row{grid-column:1}}.ecard-qr-image{width:102px;height:102px;padding:5px;flex:0 0 102px;background:#fff;object-fit:contain}.module-switcher{display:flex;align-items:center;gap:4px;margin-left:28px}.module-switcher button{padding:8px 13px;border-radius:8px;color:#68828a;font-size:13px;white-space:nowrap}.module-switcher button:hover{background:#f1f7f7;color:#147f78}.module-switcher button.active{color:#087f78;background:#e8f6f3;font-weight:750}.admin-app .module-switcher{padding:3px;border:1px solid #e0ecee;border-radius:11px;background:#f7fbfb;box-shadow:inset 0 1px 2px #1d4b530a}.admin-app .module-switcher button{min-width:92px;transition:color .18s,background .18s,box-shadow .18s}.admin-app .module-switcher button.active{background:#fff;box-shadow:0 3px 10px #1064601f}@media(max-width:650px){.admin-app .admin-topbar{height:auto;min-height:123px;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand actions" "modules modules";align-items:center;row-gap:12px;padding:12px 15px 11px}.admin-app .admin-topbar .brand{grid-area:brand}.admin-app .admin-topbar .top-actions{grid-area:actions}.admin-app .admin-topbar .module-switcher{grid-area:modules;width:100%;justify-content:center;margin-left:0}.admin-app .module-switcher button{flex:1 1 0;min-width:0;padding:8px 7px}}.hidden-file{display:none}.wide-field{grid-column:1 / -1}.wide-field select[multiple]{min-height:150px;padding:8px}@media(max-width:420px){.ecard-qr-image{width:84px;height:84px;flex-basis:84px}}.login-page{background:#f5fafb;color:#183c4e}.login-page:before{background:radial-gradient(circle at 83% 12%,rgba(201,247,237,.82),transparent 30%),linear-gradient(116deg,#f8fbff,#edf8fb 56%,#f7fffc)}.login-page:after{height:31%;bottom:-17%;background:linear-gradient(180deg,#ffffff14,#ffffffd1);border-top-color:#fff9}.login-bg-orbit,.login-bg-dot{display:none}.login-brand{top:24px;left:30px;gap:11px}.login-brand-mark{width:46px;height:46px;border-radius:13px;box-shadow:0 8px 18px #3688dc33}.login-brand strong{color:#193f55;font-size:18px}.login-brand small{color:#7b929e;font-size:11px}.login-shell{grid-template-columns:minmax(0,1.08fr) minmax(360px,.72fr);gap:78px;width:min(1120px,calc(100% - 64px));padding:103px 0 34px}.login-showcase{padding-top:9px}.showcase-copy{max-width:580px}.showcase-kicker{margin-bottom:14px;color:#43a4b9;font-size:11px;letter-spacing:.16em}.showcase-copy h1{font-size:clamp(46px,4.5vw,62px);color:#183a57;text-shadow:none}.showcase-copy h2{margin-top:13px;color:#168c91;font-size:clamp(20px,1.9vw,27px)}.showcase-desc{max-width:535px;margin-top:14px;color:#708995;font-size:14px;line-height:1.75}.login-features{gap:24px;margin-top:24px}.login-features>div{min-width:67px;gap:7px;color:#345568}.login-features b{font-size:12px}.feature-icon{width:50px;height:50px;box-shadow:0 7px 16px #2f9bc22e;font-size:18px}.login-campus-scene{height:228px;margin-top:20px;border-radius:21px 21px 15px 15px;opacity:.88;box-shadow:inset 0 -22px 35px #33a9c01a}.campus-building{bottom:55px}.building-left{width:150px;height:99px}.building-center{width:228px;height:137px}.building-center:after{top:-34px;height:36px;width:61px}.building-right{width:116px;height:88px}.campus-water{bottom:-35px;height:86px}.campus-card-art{width:210px;height:126px;padding:20px;bottom:16px;left:13%}.campus-card-art b{font-size:15px}.campus-card-art small{font-size:8px}.campus-card-art i{right:24px;bottom:16px;font-size:40px}.card-chip{width:23px;height:17px;margin-bottom:18px}.campus-tree{bottom:31px;transform:scale(.84)}.tree-right{transform:scale(.94)}.login-page .login-card{max-width:402px;padding:29px 31px 22px;border-radius:19px;background:#fffffff2;border-color:#e0eef2e6;box-shadow:0 18px 42px #32687d21;backdrop-filter:none}.login-shield{width:48px;height:48px;margin-bottom:10px;font-size:24px;box-shadow:0 7px 15px #3193d333}.login-card-header h2{font-size:24px;color:#173b53}.login-card-header p{margin-top:6px;color:#8299a5;font-size:12px}.login-page .login-card form{gap:13px;margin-top:20px}.login-page .login-field{gap:6px;color:#35556a;font-size:13px}.login-page .login-field .login-input-shell{height:50px;padding:0 13px;border-radius:10px;border-color:#d7e5e9;box-shadow:none}.login-page .login-input-shell input{font-size:14px}.login-page .login-submit,.login-page .wechat-login{height:50px;border-radius:10px;font-size:15px}.login-page .login-submit{background:#13ad9a;box-shadow:0 8px 17px #13ad9a33}.login-page .wechat-login{color:#159984;border-color:#58c8bb;background:#fff}.login-links{margin-top:15px;color:#8a9da6}.login-page .demo-hint{margin-top:12px;padding-top:11px;color:#9aaab2}.login-trust{display:none}.login-footer{padding-bottom:14px}.login-footer>p{color:#9aabb2;font-size:10px}@media(max-width:820px){.login-shell{grid-template-columns:1fr;gap:24px;width:min(620px,calc(100% - 42px));padding-top:86px}.login-campus-scene{height:185px}.login-page .login-card{max-width:500px}}@media(max-width:520px){.login-brand{top:16px;left:18px}.login-shell{width:calc(100% - 28px);padding-top:70px}.showcase-copy h1{font-size:38px}.showcase-copy h2{font-size:17px}.login-features{gap:8px}.feature-icon{width:43px;height:43px}.login-campus-scene{height:145px}.login-page .login-card{padding:22px 20px 17px;border-radius:16px}}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}.font-number,.font-money,.font-code,.stat-value,td{font-variant-numeric:tabular-nums;-webkit-font-feature-settings:"tnum";font-feature-settings:"tnum"}input,select{width:100%;border:1.5px solid #d8e2e8;background:#fff;border-radius:9px;padding:9px 13px;color:#1e293b;font-size:13.5px;outline:none;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 2px #0f172a05}input:hover,select:hover{border-color:#94a3b8}input:focus,select:focus{border-color:#00b96b;background:#fff;box-shadow:0 0 0 3px #00b96b26}input::placeholder{color:#94a3b8;font-size:13px}.primary{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:linear-gradient(135deg,#00b96b,#059669);color:#fff!important;border:none;border-radius:9px;padding:8px 18px;font-size:13px;font-weight:650;cursor:pointer;box-shadow:0 2px 8px #00b96b47;transition:all .2s cubic-bezier(.4,0,.2,1)}.primary:hover{transform:translateY(-1px);box-shadow:0 4px 14px #00b96b61;filter:brightness(1.04)}.primary:active{transform:translateY(0)}.secondary{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:#fff;color:#334155!important;border:1px solid #cbd5e1;border-radius:9px;padding:8px 16px;font-size:13px;font-weight:600;cursor:pointer;box-shadow:0 1px 2px #0f172a0a;transition:all .2s}.secondary:hover{background:#f8fafc;color:#00b96b!important;border-color:#00b96b;transform:translateY(-1px);box-shadow:0 3px 10px #00b96b1f}.link-button{background:transparent;border:none;color:#00b96b;font-size:13px;font-weight:600;cursor:pointer;padding:4px 6px;border-radius:6px;transition:all .15s;display:inline-flex;align-items:center;gap:4px}.link-button:hover{background:#e6f9f0;color:#008a4f}.danger-link{background:transparent;border:none;color:#ef4444;font-size:13px;font-weight:600;cursor:pointer;padding:4px 6px;border-radius:6px;transition:all .15s}.danger-link:hover{background:#fee2e2;color:#b91c1c}.danger-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:#fef2f2;color:#dc2626!important;border:1px solid #fca5a5;border-radius:9px;padding:8px 16px;font-size:13px;font-weight:650;cursor:pointer;transition:all .2s}.danger-button:hover{background:#dc2626;color:#fff!important;box-shadow:0 4px 12px #dc262640;transform:translateY(-1px)}.filter-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:16px 20px;background:#fff;border:1px solid rgba(226,232,240,.9);border-radius:14px;box-shadow:0 2px 8px -2px #0f172a0a;margin-bottom:18px}.filter-bar input{width:min(280px,100%)}.filter-bar select{width:150px}.date-filter{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:#64748b;font-weight:550}.date-filter input{width:140px}.selection-toolbar{display:flex;align-items:center;gap:14px;padding:12px 20px;background:linear-gradient(135deg,#e6f9f0,#ecfdf5);border:1px solid rgba(0,185,107,.3);border-radius:12px;box-shadow:0 4px 14px #00b96b1f;margin-bottom:18px;color:#008a4f;font-size:13.5px;font-weight:650;animation:slideDownFade .25s cubic-bezier(.4,0,.2,1)}@keyframes slideDownFade{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.file-button{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer}.file-button input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}.table-panel{padding:0!important;overflow:hidden}.table-panel .panel-head{padding:22px 24px 14px;margin-bottom:0;border-bottom:1px solid #e2e8f0}.table-wrap{width:100%;overflow-x:auto;border-radius:0 0 14px 14px}table{width:100%;border-collapse:collapse;background:#fff;text-align:left}thead th{background:#f8fafc;color:#475569;font-size:12.5px;font-weight:700;padding:13px 18px;border-bottom:1.5px solid #e2e8f0;white-space:nowrap;letter-spacing:.02em}tbody td{padding:13.5px 18px;color:#334155;font-size:13px;border-bottom:1px solid #f1f5f9;transition:background .15s ease;white-space:nowrap}tbody tr:hover td{background:#00b96b09}tbody tr:last-child td{border-bottom:none}.check-col{width:44px;padding-right:0!important}.check-col input[type=checkbox]{width:16px;height:16px;accent-color:#00b96b;cursor:pointer;border-radius:4px}.status-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:999px;font-size:11.5px;font-weight:650;white-space:nowrap}.status-badge.ok{background:#e6f9f0;color:#059669;border:1px solid rgba(0,185,107,.25)}.status-badge.ok:before{content:"●";font-size:9px;color:#00b96b}.status-badge.warn{background:#fff7ed;color:#c2410c;border:1px solid rgba(234,88,12,.25)}.status-badge.warn:before{content:"●";font-size:9px;color:#ea580c}.empty-cell{padding:64px 20px!important;text-align:center;color:#94a3b8;font-size:14px;background:#fbfcfe}.empty-cell:before{content:"";display:block;width:44px;height:44px;margin:0 auto 12px;background-repeat:no-repeat;background-position:center;background-size:contain;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z'/%3E%3Cline x1='12' y1='11' x2='12' y2='17'/%3E%3Cline x1='9' y1='14' x2='15' y2='14'/%3E%3C/svg%3E");opacity:.75}.pagination{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:14px 24px;background:#fff;border-top:1px solid #e2e8f0;color:#64748b;font-size:13px;font-weight:600}.pagination button{padding:6px 14px;border:1px solid #cbd5e1;background:#fff;border-radius:8px;color:#334155;font-size:12.5px;font-weight:600;cursor:pointer;transition:all .2s}.pagination button:hover:not(:disabled){border-color:#00b96b;color:#00b96b;background:#f8fafc;transform:translateY(-1px)}.pagination button:disabled{opacity:.45;cursor:not-allowed;border-color:#e2e8f0}.pagination span{padding:4px 10px;background:#f1f5f9;border-radius:6px;font-variant-numeric:tabular-nums;color:#1e293b}.modal-mask{position:fixed;z-index:2000;inset:0;display:flex;align-items:center;justify-content:center;padding:24px;background:#0f172aa6;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:modalMaskFade .22s ease-out}@keyframes modalMaskFade{0%{opacity:0}to{opacity:1}}.modal-card{width:min(740px,94vw);max-height:min(88vh,840px);overflow-y:auto;overflow-x:hidden;padding:24px 28px;background:#fff;border-radius:14px;border:1px solid rgba(226,232,240,.9);box-shadow:0 20px 48px -10px #0f172a47,0 0 0 1px #0f172a0a;animation:modalCardScale .24s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column;position:relative}.modal-card.compact-modal{width:min(520px,94vw)}.modal-card.wide-modal{width:min(880px,96vw)}.modal-card::-webkit-scrollbar{width:6px}.modal-card::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.modal-card::-webkit-scrollbar-track{background:transparent}@keyframes modalCardScale{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:16px;margin-bottom:20px;border-bottom:1px solid #edf2f7;position:sticky;top:-24px;background:#fff;z-index:10;padding-top:4px}.modal-head .eyebrow{font-size:11px;font-weight:700;color:#00b96b;letter-spacing:.12em;text-transform:uppercase;margin:0 0 4px}.modal-head h2{font-size:18px;font-weight:700;color:#0f172a;letter-spacing:-.01em;margin:0}.modal-head .icon-button{width:32px;height:32px;border-radius:6px;border:none;background:transparent;color:#94a3b8;font-size:22px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}.modal-head .icon-button:hover{background:#f1f5f9;color:#334155}.modal-card .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 20px;align-items:start;padding:0}.modal-card .form-grid label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:#334155;line-height:1.4;min-width:0}.modal-card .form-grid .wide-field{grid-column:1 / -1}.modal-card .form-grid input,.modal-card .form-grid select,.modal-card .form-grid textarea{width:100%;box-sizing:border-box;height:38px;padding:8px 12px;border:1px solid #cbd5e1;border-radius:6px;font-size:13.5px;color:#1e293b;background:#fff;transition:all .15s ease;outline:none;font-family:inherit}.modal-card .form-grid textarea{height:auto;min-height:76px;resize:vertical;line-height:1.5}.modal-card .form-grid input:focus,.modal-card .form-grid select:focus,.modal-card .form-grid textarea:focus{border-color:#00b96b;box-shadow:0 0 0 3px #00b96b26}.modal-card .form-grid input:disabled,.modal-card .form-grid select:disabled{background:#f8fafc;color:#94a3b8;border-color:#e2e8f0;cursor:not-allowed}.modal-card .form-tip{padding:10px 14px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;font-size:12.5px;color:#166534;line-height:1.6;margin:16px 0 0}.modal-card .warning-box{padding:14px 18px;background:#fff1f2;border:1px solid #fecdd3;border-radius:10px;margin-bottom:16px}.modal-card .warning-box strong{display:block;font-size:14px;color:#be123c;margin-bottom:4px}.modal-card .warning-box p{font-size:12.5px;color:#9f1239;margin:0;line-height:1.5}.subsidy-picker{border:1px solid #e2e8f0;border-radius:8px;background:#fff;overflow:hidden}.picker-toolbar{display:flex;gap:10px;align-items:center;padding:8px 12px;background:#f8fafc;border-bottom:1px solid #e2e8f0}.picker-toolbar input{flex:1;height:32px!important}.picker-list{max-height:200px;overflow-y:auto;padding:6px 10px}.picker-option{display:flex!important;flex-direction:row!important;align-items:center!important;gap:10px!important;padding:6px 8px;border-radius:6px;cursor:pointer;transition:background .15s}.picker-option:hover{background:#f1f5f9}.qr-preview{display:flex;flex-direction:column;align-items:center;gap:12px;padding:16px;text-align:center}.qr-preview img{width:180px;height:180px;padding:8px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 4px 12px #0000000f}.qr-preview strong{font-size:18px;color:#0f172a}.qr-preview code{font-family:JetBrains Mono,Consolas,monospace;font-size:13px;color:#0284c7;background:#f0f9ff;padding:4px 10px;border-radius:4px}.modal-actions{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid #edf2f7;position:sticky;bottom:-24px;background:#fff;padding-bottom:4px}.modal-actions button{height:36px;padding:0 20px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .15s ease}.modal-actions .secondary{border:1px solid #cbd5e1;background:#fff;color:#475569}.modal-actions .secondary:hover{background:#f1f5f9;border-color:#94a3b8;color:#1e293b}.modal-actions .primary{background:linear-gradient(135deg,#00c073,#00a862);color:#fff;border:none;box-shadow:0 2px 6px #00b96b4d}.modal-actions .primary:hover{background:linear-gradient(135deg,#05cd7c,#009657);box-shadow:0 4px 12px #00b96b66;transform:translateY(-1px)}.modal-actions .danger-button{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:none;box-shadow:0 2px 6px #ef44444d}.modal-actions .danger-button:hover{background:#dc2626;box-shadow:0 4px 12px #ef444466;transform:translateY(-1px)}.toast{position:fixed;z-index:3000;inset:50% auto auto 50%;min-width:240px;max-width:min(78vw,560px);justify-content:center;transform:translate(-50%,-50%);display:flex;align-items:center;gap:11px;padding:13px 20px;color:#065f46;background:#fff;border:1px solid rgba(0,185,107,.35);border-radius:12px;box-shadow:0 16px 36px -4px #0f172a1f,0 4px 12px #00b96b26;font-size:13.5px;font-weight:600;animation:toastPopCenter .3s cubic-bezier(.34,1.56,.64,1)}@keyframes toastPopCenter{0%{opacity:0;transform:translate(-50%,-44%) scale(.95)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.toast span{width:22px;height:22px;display:grid;place-items:center;color:#fff;background:#00b96b;border-radius:50%;font-size:12px;font-weight:800;box-shadow:0 2px 6px #00b96b66}.toast.error{color:#991b1b;border-color:#ef444459;box-shadow:0 16px 36px -4px #0f172a1f,0 4px 12px #ef444426}.toast.error span{background:#ef4444;box-shadow:0 2px 6px #ef444466}:root{--admin-primary: #00b96b;--admin-primary-hover: #009e5b;--admin-primary-light: #e6f9f0;--admin-primary-glow: rgba(0, 185, 107, .25);--admin-navy: #0f172a;--admin-slate: #1e293b;--admin-muted-slate: #64748b;--admin-light-slate: #94a3b8;--admin-border-subtle: #e2e8f0;--admin-border-light: rgba(226, 232, 240, .9);--admin-card-bg: #ffffff;--admin-surface-bg: #f8fafc;--admin-shadow-sm: 0 1px 3px 0 rgba(15, 23, 42, .05), 0 1px 2px -1px rgba(15, 23, 42, .03);--admin-shadow-md: 0 6px 20px -2px rgba(15, 23, 42, .06), 0 2px 6px -1px rgba(15, 23, 42, .03);--admin-shadow-lg: 0 16px 36px -4px rgba(15, 23, 42, .08), 0 4px 12px -2px rgba(15, 23, 42, .04);--admin-shadow-card-hover: 0 16px 32px -4px rgba(15, 23, 42, .09), 0 6px 18px -2px rgba(0, 185, 107, .12);--admin-radius-sm: 8px;--admin-radius-md: 12px;--admin-radius-lg: 16px;--admin-radius-xl: 20px}body:has(.admin-app){background:#f8fafc;background-image:radial-gradient(at 0% 0%,rgba(0,185,107,.035) 0px,transparent 40%),radial-gradient(at 100% 0%,rgba(59,130,246,.035) 0px,transparent 40%),radial-gradient(at 50% 100%,rgba(139,92,246,.02) 0px,transparent 50%);color:var(--admin-navy);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;-webkit-font-smoothing:antialiased}.admin-app .admin-topbar{height:50px!important;min-height:50px!important;max-height:50px!important;padding:0 20px!important;background:linear-gradient(180deg,#18222e,#111a24)!important;border-bottom:1px solid rgba(255,255,255,.08)!important;box-shadow:0 4px 16px -2px #0000004d!important;display:flex!important;flex-wrap:nowrap!important;white-space:nowrap!important;justify-content:space-between!important;align-items:center!important;position:sticky!important;top:0!important;z-index:1000!important;user-select:none!important;box-sizing:border-box!important;overflow:hidden!important}.admin-app .topbar-brand-block{display:flex;align-items:center;flex-shrink:0;user-select:none;cursor:pointer;padding:4px 0}.admin-app .topbar-brand-mark{display:flex;align-items:center;justify-content:center;margin-right:10px;filter:drop-shadow(0 2px 8px rgba(16,185,129,.45));transition:transform .25s cubic-bezier(.34,1.56,.64,1)}.admin-app .topbar-brand-block:hover .topbar-brand-mark{transform:scale(1.06) rotate(-2deg)}.admin-app .topbar-brand-mark .brand-mark-svg{width:26px;height:26px;display:block}.admin-app .topbar-brand-info{display:flex;align-items:center;gap:8px}.admin-app .topbar-logo-text{font-size:16px;font-weight:700;color:#fff;letter-spacing:.6px;line-height:1;text-shadow:0 1px 4px rgba(0,0,0,.35)}.admin-app .topbar-brand-badge{font-size:9.5px;font-weight:800;color:#38bdf8;background:linear-gradient(135deg,#0ea5e92e,#10b9812e);border:1px solid rgba(56,189,248,.35);border-radius:4px;padding:2px 6px;line-height:1;letter-spacing:.8px;text-transform:uppercase;box-shadow:0 0 10px #38bdf833}.admin-app .topbar-brand-divider{width:1px;height:20px;background:#ffffff1f;margin:0 20px 0 22px}.admin-app .topbar-chrome-nav{display:flex;align-items:center;height:50px;flex:1;gap:6px;overflow:visible;padding-bottom:0}.admin-app .chrome-tab-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;height:34px;padding:0 14px;font-size:13.5px;font-weight:500;color:#94a3b8;background:transparent;border:1px solid transparent;cursor:pointer;border-radius:6px;transition:all .2s cubic-bezier(.4,0,.2,1);margin-bottom:0;white-space:nowrap;outline:none;user-select:none}.admin-app .chrome-tab-btn .tab-ico{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;color:#64748b;transition:all .2s ease}.admin-app .chrome-tab-btn .tab-ico svg{width:15px;height:15px;stroke:currentColor;stroke-width:1.9}.admin-app .chrome-tab-btn:hover{color:#f1f5f9;background:#ffffff0f;border-color:#ffffff14}.admin-app .chrome-tab-btn:hover .tab-ico{color:#cbd5e1;transform:translateY(-1px)}.admin-app .chrome-tab-btn:active{transform:scale(.98)}.admin-app .chrome-tab-btn.active{background:#ffffff1c!important;color:#fff!important;font-weight:600!important;border:1px solid rgba(255,255,255,.18)!important;box-shadow:inset 0 1px #ffffff26,0 2px 10px #00000040!important;border-radius:6px!important}.admin-app .chrome-tab-btn.active:after{content:"";position:absolute;bottom:-2px;left:18%;right:18%;height:2px;border-radius:2px;background:linear-gradient(90deg,#10b981,#0ea5e9);box-shadow:0 0 8px #10b981cc}.admin-app .chrome-tab-btn.active .tab-ico{color:#34d399!important;filter:drop-shadow(0 0 6px rgba(52,211,153,.6))}.admin-app .chrome-tab-btn.active .tab-ico svg{stroke:#34d399!important}.admin-app .chrome-tab-btn.active .tab-label{color:#fff!important;font-weight:600!important;letter-spacing:.2px}.admin-app .topbar-right-tools{display:flex;align-items:center;gap:8px;color:#94a3b8;flex-shrink:0!important;flex-wrap:nowrap!important;white-space:nowrap!important}.admin-app .topbar-scope{font-size:12px;color:#38bdf8;background:#38bdf81f;border:1px solid rgba(56,189,248,.25);border-radius:4px;padding:3px 8px}.admin-app .topbar-tool-item{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 10px;border-radius:6px;background:transparent;border:1px solid transparent;font-size:12.5px;font-weight:500;color:#94a3b8;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);user-select:none}.admin-app .topbar-tool-item:hover{color:#fff;background:#ffffff14;border-color:#ffffff1a}.admin-app .header-notification-badge{display:inline-flex;align-items:center;justify-content:center;min-width:17px;height:17px;padding:0 4px;margin-left:2px;border-radius:999px;color:#fff;background:#ef6262;font-size:10px;font-weight:800;line-height:17px}.admin-app .topbar-tool-item .tool-ico{display:inline-flex;align-items:center;justify-content:center}.admin-app .topbar-tool-item .tool-ico svg{width:14px;height:14px;stroke:currentColor;stroke-width:1.8}.admin-app .topbar-tool-btn.return-btn{background:linear-gradient(135deg,#0ea5e9,#0284c7);color:#fff;padding:5px 12px;border-radius:6px;font-size:12px;font-weight:600;border:none;cursor:pointer;box-shadow:0 2px 6px #0ea5e959;transition:all .2s}.admin-app .topbar-tool-btn.return-btn:hover{filter:brightness(1.1);transform:translateY(-1px)}.admin-app .topbar-user-wrap{display:inline-flex;align-items:center;gap:8px;padding:3px 10px 3px 4px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:20px;margin-left:6px;transition:all .2s ease}.admin-app .topbar-user-wrap:hover{background:#ffffff17;border-color:#ffffff29}.admin-app .topbar-avatar{width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,#10b981,#0284c7);color:#fff;font-size:12px;font-weight:750;display:grid;place-items:center;box-shadow:0 2px 6px #0284c759}.admin-app .topbar-user-name{background:transparent!important;border:none!important;padding:0!important;font-size:12.5px!important;font-weight:600!important;color:#f1f5f9!important;cursor:pointer!important;height:auto!important}.admin-app .topbar-user-name:hover{color:#38bdf8!important;background:transparent!important}.admin-app .topbar-logout-btn{background:#ffffff0d;border:1px solid rgba(255,255,255,.08);color:#94a3b8;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border-radius:6px;transition:all .2s ease}.admin-app .topbar-logout-btn:hover{color:#f87171;background:#ef444433;border-color:#ef444466;transform:scale(1.05)}.admin-app .topbar-logout-btn svg{width:14px;height:14px;stroke:currentColor;stroke-width:1.8}.admin-app .admin-layout{display:flex!important;min-height:calc(100vh - 50px)!important;max-height:calc(100vh - 50px)!important;height:calc(100vh - 50px)!important;overflow:hidden!important}.admin-app .sidebar{height:calc(100vh - 50px)!important;max-height:calc(100vh - 50px)!important}.admin-app .admin-content{height:calc(100vh - 50px)!important;max-height:calc(100vh - 50px)!important;overflow-y:auto!important}.admin-app .icon-button{width:36px;height:36px;border-radius:9px;border:1px solid #e2e8f0;background:#fff;color:#64748b;font-size:16px;cursor:pointer;display:grid;place-items:center;transition:all .2s}.admin-app .icon-button:hover{background:#fef2f2;color:#ef4444;border-color:#fecaca;transform:scale(1.05)}.admin-app .sidebar{width:210px!important;flex:0 0 210px!important;background:#fff!important;border-right:1px solid #e5e9ec!important;padding:0!important;box-shadow:none!important;display:flex!important;flex-direction:column!important;height:calc(100vh - 48px)!important;max-height:calc(100vh - 48px)!important;overflow:hidden!important;user-select:none!important}.admin-app .sidebar .sidebar-menu{flex:1;overflow-y:auto;padding:8px 6px 20px}.admin-app .sidebar .sidebar-menu::-webkit-scrollbar{width:4px}.admin-app .sidebar .sidebar-menu::-webkit-scrollbar-thumb{background:#e2e8f0;border-radius:4px}.admin-app .sidebar .sidebar-menu::-webkit-scrollbar-thumb:hover{background:#cbd5e1}.admin-app .sidebar button.menu-item,.admin-app .sidebar>button,.admin-app .sidebar .sidebar-menu button.menu-item{position:relative;display:flex;align-items:center;gap:8px;width:100%;height:34px;min-height:34px;padding:0 10px;border-radius:4px!important;color:#4a5568;font-size:12.8px;font-weight:500;border:none;background:transparent;cursor:pointer;margin-bottom:2px;transition:all .15s ease;box-shadow:none!important;text-align:left}.admin-app .sidebar button.menu-item:before,.admin-app .sidebar>button:before,.admin-app .sidebar .sidebar-menu button.menu-item:before{display:none!important}.admin-app .sidebar button.menu-item:hover,.admin-app .sidebar>button:hover,.admin-app .sidebar .sidebar-menu button.menu-item:hover{background:#f0f7f4!important;color:#00b96b!important;padding-left:10px!important}.admin-app .sidebar button.menu-item:hover .nav-svg-box,.admin-app .sidebar>button:hover .nav-svg-box,.admin-app .sidebar .sidebar-menu button.menu-item:hover .nav-svg-box{color:#00b96b!important}.admin-app .sidebar button.menu-item.active,.admin-app .sidebar>button.active,.admin-app .sidebar .sidebar-menu button.menu-item.active{background:#e6f7ef!important;color:#00b96b!important;font-weight:600!important;border-radius:4px!important;box-shadow:none!important}.admin-app .sidebar button.menu-item.active .nav-svg-box,.admin-app .sidebar>button.active .nav-svg-box,.admin-app .sidebar .sidebar-menu button.menu-item.active .nav-svg-box{color:#00b96b!important}.admin-app .sidebar .nav-badge{font-size:10px;background:#f59e0b;color:#fff;border-radius:8px;padding:0 5px;font-weight:600;height:15px;line-height:15px;margin-left:auto;margin-right:4px}.admin-app .sidebar .nav-caret{margin-left:auto;opacity:.6;display:inline-flex;align-items:center;flex-shrink:0}.admin-app .sidebar .nav-badge+.nav-caret{margin-left:0}.admin-app .sidebar .sidebar-subnav{margin:1px 0 3px;padding-left:20px;display:flex;flex-direction:column;gap:1px;border-left:none}.admin-app .sidebar .sidebar-subnav button,.admin-app .sidebar .sidebar-subnav button.submenu-item{display:flex;align-items:center;gap:6px;width:100%;height:28px;min-height:28px;padding:0 8px;border-radius:4px!important;color:#556270;font-size:12px;font-weight:500;border:none;background:transparent;cursor:pointer;transition:all .15s ease;margin-bottom:1px}.admin-app .sidebar .sidebar-subnav button:hover,.admin-app .sidebar .sidebar-subnav button.submenu-item:hover{background:#f0f7f4!important;color:#00b96b!important;padding-left:8px!important}.admin-app .sidebar .sidebar-subnav button.active,.admin-app .sidebar .sidebar-subnav button.submenu-item.active{background:#e6f7ef!important;color:#00b96b!important;font-weight:600!important}.admin-app .sidebar .sidebar-subnav button .subnav-dot-svg{width:8px;height:8px;display:inline-flex;align-items:center;justify-content:center;color:#a0aec0}.admin-app .sidebar .sidebar-subnav button.active .subnav-dot-svg{color:#00b96b}.admin-app .sidebar .side-caption{font-size:11px;font-weight:600;color:#a0aec0;padding:8px 10px 4px;margin-top:4px}.admin-app .admin-content{padding:28px 36px 48px;background:#f8fafc}.admin-app .page-heading{margin-bottom:24px;display:flex;justify-content:space-between;align-items:flex-start}.admin-app .page-heading h1{font-size:26px;font-weight:800;color:var(--admin-navy);letter-spacing:-.02em;display:flex;align-items:center;gap:10px}.admin-app .page-heading .muted{font-size:13.5px;color:#64748b;margin-top:6px;display:flex;align-items:center;gap:6px}.admin-app .page-heading .muted:before{content:"";display:inline-block;width:13px;height:13px;flex-shrink:0;background-repeat:no-repeat;background-position:center;background-size:contain;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2300b96b' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cline x1='12' y1='16' x2='12' y2='12'/%3E%3Cline x1='12' y1='8' x2='12.01' y2='8'/%3E%3C/svg%3E")}.admin-app .stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:24px}.admin-app .stat-card{position:relative;display:flex;align-items:center;gap:18px;min-height:128px;padding:22px 24px;background:#fff;border:1px solid rgba(226,232,240,.95);border-radius:var(--admin-radius-lg);box-shadow:0 4px 16px -2px #0f172a0a,0 2px 6px -1px #0f172a05;transition:all .3s cubic-bezier(.4,0,.2,1);overflow:hidden}.admin-app .stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3.5px;background:linear-gradient(90deg,transparent,rgba(0,185,107,.3),transparent);opacity:0;transition:opacity .3s ease}.admin-app .stat-card:hover{transform:translateY(-4px);border-color:#00b96b59;box-shadow:var(--admin-shadow-card-hover)}.admin-app .stat-card:hover:before{opacity:1}.admin-app .stat-icon{width:52px;height:52px;flex:0 0 52px;border-radius:15px;display:grid;place-items:center;font-size:24px;font-weight:800;transition:transform .3s ease}.admin-app .stat-card:hover .stat-icon{transform:scale(1.08) rotate(3deg)}.admin-app .stat-icon.blue{background:linear-gradient(135deg,#eff6ff,#dbeafe);color:#2563eb;border:1px solid rgba(59,130,246,.2);box-shadow:0 6px 14px #2563eb26}.admin-app .stat-icon.green{background:linear-gradient(135deg,#e6f9f0,#d1fae5);color:#059669;border:1px solid rgba(16,185,129,.25);box-shadow:0 6px 14px #0596692e}.admin-app .stat-icon.purple{background:linear-gradient(135deg,#f5f3ff,#ede9fe);color:#7c3aed;border:1px solid rgba(124,58,237,.2);box-shadow:0 6px 14px #7c3aed26}.admin-app .stat-icon.orange{background:linear-gradient(135deg,#fff7ed,#ffedd5);color:#ea580c;border:1px solid rgba(234,88,12,.2);box-shadow:0 6px 14px #ea580c26}.admin-app .stat-card span{display:block;font-size:13px;font-weight:600;color:#64748b;letter-spacing:.01em}.admin-app .stat-card strong{display:block;font-size:27px;font-weight:800;color:var(--admin-navy);letter-spacing:-.025em;margin:4px 0 6px;font-feature-settings:"tnum"}.admin-app .stat-card small{display:inline-flex;align-items:center;gap:4px;font-size:11.5px;font-weight:600;padding:2px 8px;border-radius:6px}.admin-app .stat-card small.success-text{color:#059669;background:#e6f9f0;border:1px solid rgba(16,185,129,.15)}.admin-app .stat-card small.danger-text{color:#e11d48;background:#ffe4e6;border:1px solid rgba(225,29,72,.15)}.admin-app .panel{background:#fff;border:1px solid rgba(226,232,240,.9);border-radius:var(--admin-radius-lg);box-shadow:var(--admin-shadow-sm);padding:24px;transition:box-shadow .25s ease,border-color .25s ease}.admin-app .panel:hover{box-shadow:var(--admin-shadow-md);border-color:#cbd5e1e6}.admin-app .panel-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px;padding-bottom:12px;border-bottom:1px solid #f1f5f9}.admin-app .panel-head h2{font-size:17px;font-weight:750;color:var(--admin-navy);letter-spacing:-.01em;display:flex;align-items:center;gap:8px}.admin-app .panel-head h2:before{content:"";width:4px;height:16px;border-radius:2px;background:#00b96b}.admin-app .panel-head p{font-size:12px;color:#64748b;margin-top:4px}.admin-app .panel-head .link-button{padding:5px 12px;border-radius:6px;background:#f8fafc;border:1px solid #e2e8f0;color:#334155;font-size:12px;font-weight:600;transition:all .2s}.admin-app .panel-head .link-button:hover{background:#e6f9f0;color:#00b96b;border-color:#00b96b4d}.admin-app .dashboard-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(320px,1fr);gap:20px;margin-bottom:24px}.admin-app .progress-list{display:grid;gap:20px;padding:8px 0}.admin-app .progress-list>div{display:grid;grid-template-columns:110px 1fr 56px;align-items:center;gap:16px;font-size:13px;color:#475569;font-weight:550}.admin-app .progress{height:10px;background:#f1f5f9;border-radius:999px;overflow:hidden;box-shadow:inset 0 1px 2px #0000000a}.admin-app .progress i{display:block;height:100%;background:linear-gradient(90deg,#10b981,#00b96b 70%,#34d399);border-radius:999px;transition:width .6s cubic-bezier(.4,0,.2,1);position:relative;box-shadow:0 1px 4px #00b96b66}.admin-app .progress-list b{font-size:13px;font-weight:750;color:var(--admin-navy);text-align:right;font-feature-settings:"tnum"}.admin-app .notice-panel .count-badge{background:#e6f9f0;color:#059669;border:1px solid rgba(0,185,107,.25);font-weight:700;font-size:12px;padding:2px 9px;border-radius:999px}.admin-app .todo-row{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:10px;border:1px solid #f1f5f9;background:#f8fafc;margin-bottom:8px;cursor:pointer;transition:all .2s}.admin-app .todo-row:hover{background:#fff;border-color:#00b96b4d;box-shadow:0 4px 12px #0f172a0d;transform:translate(3px)}.admin-app .todo-row>span{width:34px;height:34px;border-radius:8px;background:#fff7ed;color:#ea580c;display:grid;place-items:center;font-size:16px}.admin-app .todo-row b{font-size:13px;color:var(--admin-navy);display:block}.admin-app .todo-row small{font-size:11.5px;color:#64748b;margin-top:2px;display:block}.admin-app .todo-row em{margin-left:auto;color:#94a3b8;font-style:normal;font-weight:700;transition:transform .2s}.admin-app .todo-row:hover em{transform:translate(3px);color:#00b96b}.admin-app .empty{padding:42px 16px;text-align:center;color:#94a3b8;font-size:13px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px}.admin-app .empty:before{content:"";width:40px;height:40px;border-radius:50%;background:#e6f9f0 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2300b96b' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") no-repeat center / 20px;display:block;margin-bottom:2px;box-shadow:0 2px 10px #00b96b26}.admin-app .analytics-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(360px,1fr);gap:20px;margin-bottom:24px}.admin-app .trend-panel .trend-chart{min-height:210px;display:flex;flex-direction:column;justify-content:flex-end;gap:16px}.admin-app .trend-bars{height:156px;display:flex;align-items:flex-end;gap:8px;padding:12px 6px 0;border-bottom:1.5px solid #e2e8f0;background:linear-gradient(180deg,rgba(248,250,252,.4) 0%,transparent 100%);position:relative}.admin-app .trend-bars:after{content:"";position:absolute;left:0;right:0;top:50%;border-top:1px dashed rgba(226,232,240,.8);pointer-events:none}.admin-app .trend-day{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;justify-content:flex-end}.admin-app .trend-columns{width:100%;height:100%;display:flex;align-items:flex-end;justify-content:center;gap:4px}.admin-app .trend-bar{display:block;width:min(14px,45%);min-height:4px;border-radius:4px 4px 0 0;transition:height .4s ease,filter .2s ease,transform .2s ease;cursor:pointer}.admin-app .trend-bar:hover{filter:brightness(1.12);transform:scaleY(1.04)}.admin-app .trend-bar.recharge{background:linear-gradient(180deg,#38bdf8,#0284c7);box-shadow:0 2px 6px #0284c740}.admin-app .trend-bar.consume{background:linear-gradient(180deg,#34d399,#059669);box-shadow:0 2px 6px #05966940}.admin-app .trend-day small{font-size:10.5px;color:#94a3b8;margin-top:8px;font-weight:550;transform:rotate(-30deg);white-space:nowrap}.admin-app .trend-legend{display:flex;gap:20px;color:#64748b;font-size:12.5px;font-weight:600;padding-top:6px}.admin-app .trend-legend span{display:inline-flex;align-items:center;gap:7px}.admin-app .trend-legend i{width:10px;height:10px;border-radius:3px}.admin-app .trend-legend i.recharge{background:linear-gradient(135deg,#38bdf8,#0284c7);box-shadow:0 0 6px #0284c766}.admin-app .trend-legend i.consume{background:linear-gradient(135deg,#34d399,#059669);box-shadow:0 0 6px #05966966}.admin-app .insight-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}.admin-app .insight-columns h3{font-size:13.5px;font-weight:700;color:#334155;margin-bottom:16px;padding-left:8px;border-left:3px solid #00b96b}.admin-app .insight-row{margin-bottom:14px}.admin-app .insight-row>div:first-child{display:flex;justify-content:space-between;margin-bottom:5px;font-size:12.5px;color:#64748b}.admin-app .insight-row b{color:var(--admin-navy);font-weight:700}.admin-app .mini-progress{height:6px;background:#f1f5f9;border-radius:999px;overflow:hidden}.admin-app .mini-progress i{display:block;height:100%;background:linear-gradient(90deg,#3b82f6,#00b96b);border-radius:999px}.admin-app .rank-row{display:flex;align-items:center;gap:12px;padding:8px 10px;border-radius:8px;margin-bottom:6px;transition:background .15s}.admin-app .rank-row:hover{background:#f8fafc}.admin-app .rank-index{width:24px;height:24px;border-radius:6px;background:#f1f5f9;color:#475569;font-size:11.5px;font-weight:800;display:grid;place-items:center}.admin-app .rank-row:nth-child(2) .rank-index{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#b45309}.admin-app .rank-row:nth-child(3) .rank-index{background:linear-gradient(135deg,#e2e8f0,#cbd5e1);color:#475569}.admin-app .recent-panel{margin-bottom:30px}.admin-app .table-wrap{border:1px solid rgba(226,232,240,.9);border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0f172a05}.admin-app table{width:100%;border-collapse:collapse;background:#fff}.admin-app th{background:#f8fafc;color:#475569;font-size:12.5px;font-weight:700;padding:13px 18px;text-align:left;border-bottom:1px solid #e2e8f0;letter-spacing:.02em}.admin-app td{padding:14px 18px;color:#334155;font-size:13px;border-bottom:1px solid #f1f5f9;transition:background .15s ease}.admin-app tbody tr:hover td{background:#00b96b06}.admin-app tbody tr:last-child td{border-bottom:none}.admin-app .empty-cell{padding:56px 20px;text-align:center;color:#94a3b8;font-size:13.5px}.admin-app .status-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:999px;font-size:11.5px;font-weight:650}.admin-app .status-badge.ok{background:#e6f9f0;color:#059669;border:1px solid rgba(16,185,129,.2)}.admin-app .status-badge.warn{background:#fff7ed;color:#c2410c;border:1px solid rgba(234,88,12,.2)}.admin-app .dashboard-header-tools{display:flex;align-items:center;gap:12px}.admin-app .system-time-tag{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:999px;color:#475569;font-size:12px;font-weight:650;letter-spacing:.02em}.admin-app .btn-refresh-dash{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:9px;background:#fff;border:1px solid #cbd5e1;color:#334155;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 1px 2px #0000000d}.admin-app .btn-refresh-dash:hover{background:#f8fafc;border-color:#00b96b;color:#00b96b;transform:translateY(-1px);box-shadow:0 4px 10px #00b96b1f}.admin-app .dashboard-header-tools .primary{display:inline-flex;align-items:center;gap:6px;padding:8px 18px;border-radius:9px;background:linear-gradient(135deg,#00b96b,#059669);color:#fff;font-size:13px;font-weight:650;border:none;cursor:pointer;box-shadow:0 4px 12px #00b96b4d;transition:all .2s}.admin-app .dashboard-header-tools .primary:hover{transform:translateY(-1px);box-shadow:0 6px 16px #00b96b66}.admin-app .sidebar button .nav-svg-box{width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;margin-right:0;color:#64748b;transition:all .15s ease}.admin-app .sidebar button .nav-svg-box svg{width:15px;height:15px;stroke:currentColor;stroke-width:1.8;transition:all .15s ease}.admin-app .sidebar button:hover .nav-svg-box{color:#00b96b}.admin-app .sidebar button:hover .nav-svg-box svg{stroke:#00b96b}.admin-app .sidebar button.active .nav-svg-box{color:#00b96b}.admin-app .sidebar button.active .nav-svg-box svg{stroke:#00b96b}.admin-app .nav-label-text{flex:1;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12.8px}.btn-svg-icon{display:inline-block;vertical-align:-2px;margin-right:5px;stroke:currentColor;flex-shrink:0}.btn-svg-box{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;margin-right:5px;flex-shrink:0}.btn-svg-box svg{width:14px;height:14px}.toast-svg-box{display:inline-flex;align-items:center;justify-content:center;margin-right:6px;vertical-align:middle}.toast-svg-box svg{width:16px;height:16px}.status-svg-dot{display:inline-flex;align-items:center;justify-content:center;vertical-align:-1.5px;margin-right:4px}.status-svg-dot svg{width:13px;height:13px}.workbench-home{width:100%!important;max-width:100%!important;margin:0!important;padding:20px 24px 32px!important;display:grid!important;grid-template-columns:minmax(0,1fr) 340px!important;gap:20px!important;align-items:start!important;box-sizing:border-box!important;background:transparent!important}.workbench-home-main{display:flex!important;flex-direction:column!important;gap:18px!important;min-width:0!important}.workbench-home-panel{background:#fff!important;border-radius:14px!important;border:1px solid #e2e8f0!important;box-shadow:0 1px 3px #0f172a0a,0 2px 6px -1px #0f172a05!important;overflow:hidden!important;transition:all .25s cubic-bezier(.16,1,.3,1)!important}.workbench-home-panel:hover{box-shadow:0 8px 24px -4px #0f172a14,0 4px 8px -2px #0f172a0a!important;border-color:#cbd5e1!important}.workbench-home-panel>header{height:48px!important;padding:0 20px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;border-bottom:1px solid #f1f5f9!important;position:relative!important;background:linear-gradient(180deg,#fff,#fafbfd)!important}.workbench-home-panel>header:before{content:""!important;position:absolute!important;left:0!important;top:15px!important;width:4px!important;height:18px!important;border-radius:0 3px 3px 0!important;background:linear-gradient(180deg,#2563eb,#3b82f6)!important}.workbench-home-panel h2{font-size:14px!important;font-weight:700!important;color:#0f172a!important;margin:0!important;letter-spacing:-.01em!important}.workbench-home-panel header button{background:none!important;border:0!important;color:#2563eb!important;padding:4px 8px!important;font-size:13px!important;cursor:pointer!important;font-weight:600!important;border-radius:6px!important;transition:all .15s ease!important}.workbench-home-panel header button:hover{background:#eff6ff!important;color:#1d4ed8!important}.workbench-resources{padding:18px 20px 22px!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important}.workbench-resource{position:relative!important;background:#fff!important;border:1px solid #e2e8f0!important;border-radius:12px!important;padding:16px 20px!important;min-height:94px!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;gap:16px!important;text-align:left!important;cursor:pointer!important;overflow:hidden!important;transition:all .25s cubic-bezier(.16,1,.3,1)!important}.workbench-resource:before{content:""!important;position:absolute!important;left:0!important;top:0!important;right:0!important;height:3.5px!important;border-radius:12px 12px 0 0!important}.workbench-resource.blue:before{background:linear-gradient(90deg,#2563eb,#60a5fa)!important}.workbench-resource.green:before{background:linear-gradient(90deg,#059669,#34d399)!important}.workbench-resource.orange:before{background:linear-gradient(90deg,#d97706,#fbbf24)!important}.workbench-resource.purple:before{background:linear-gradient(90deg,#7c3aed,#a78bfa)!important}.workbench-resource.blue{background:linear-gradient(145deg,#eff6ffa6,#fff 55%)!important;border-color:#dbeafee6!important}.workbench-resource.green{background:linear-gradient(145deg,#ecfdf5a6,#fff 55%)!important;border-color:#d1fae5e6!important}.workbench-resource.orange{background:linear-gradient(145deg,#fef3c7a6,#fff 55%)!important;border-color:#fde68ae6!important}.workbench-resource.purple{background:linear-gradient(145deg,#f5f3ffa6,#fff 55%)!important;border-color:#e9d5ffe6!important}.workbench-resource:hover{transform:translateY(-3px)!important;box-shadow:0 10px 24px -4px #0f172a14,0 4px 8px -2px #0f172a08!important}.workbench-resource.blue:hover{border-color:#60a5fa!important}.workbench-resource.green:hover{border-color:#34d399!important}.workbench-resource.orange:hover{border-color:#fbbf24!important}.workbench-resource.purple:hover{border-color:#a78bfa!important}.workbench-resource-icon{width:44px!important;height:44px!important;border-radius:10px!important;display:flex!important;align-items:center!important;justify-content:center!important;flex-shrink:0!important;color:#fff!important;box-shadow:0 4px 10px -1px #0000001f!important}.workbench-resource.blue .workbench-resource-icon{background:linear-gradient(135deg,#1d4ed8,#3b82f6)!important}.workbench-resource.green .workbench-resource-icon{background:linear-gradient(135deg,#047857,#10b981)!important}.workbench-resource.orange .workbench-resource-icon{background:linear-gradient(135deg,#b45309,#f59e0b)!important}.workbench-resource.purple .workbench-resource-icon{background:linear-gradient(135deg,#6d28d9,#8b5cf6)!important}.workbench-resource-icon svg{width:22px!important;height:22px!important}.workbench-resource-text{display:flex!important;flex-direction:column!important;align-items:flex-start!important;text-align:left!important;gap:2px!important}.workbench-resource-text strong{font-size:26px!important;font-weight:800!important;color:#0f172a!important;line-height:1!important;letter-spacing:-.02em!important}.workbench-resource-text span{font-size:13px!important;color:#475569!important;font-weight:500!important;margin-top:4px!important}.workbench-shortcuts{padding:14px 20px 18px!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important}.workbench-shortcuts button{background:#f8fafc!important;border:1px solid #e2e8f0!important;border-radius:10px!important;padding:12px 18px!important;min-height:56px!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;gap:12px!important;cursor:pointer!important;color:#334155!important;text-align:left!important;transition:all .2s cubic-bezier(.16,1,.3,1)!important}.workbench-shortcuts button:hover{background:#fff!important;border-color:#3b82f6!important;color:#2563eb!important;transform:translateY(-2px)!important;box-shadow:0 6px 16px -2px #2563eb1a!important}.workbench-shortcuts .workbench-resource-icon{width:32px!important;height:32px!important;border-radius:8px!important;box-shadow:none!important;flex-shrink:0!important}.workbench-shortcuts .workbench-resource-icon svg{width:17px!important;height:17px!important}.workbench-shortcuts b{font-size:13px!important;font-weight:600!important}.workbench-split-row{display:grid!important;grid-template-columns:1fr 1fr!important;gap:18px!important}.workbench-panel-products,.workbench-recent{height:100%!important;display:flex!important;flex-direction:column!important}.workbench-products{padding:14px 18px 18px!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:14px!important;flex:1!important}.workbench-products button{background:#f8fafc!important;border:1px solid #e2e8f0!important;border-radius:12px!important;padding:16px 20px!important;min-height:74px!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;gap:14px!important;text-align:left!important;position:relative!important;cursor:pointer!important;transition:all .22s cubic-bezier(.16,1,.3,1)!important}.workbench-products button:hover{background:#fff!important;border-color:#3b82f6!important;transform:translateY(-2px)!important;box-shadow:0 8px 18px -4px #2563eb1f!important}.workbench-products .workbench-resource-icon{width:40px!important;height:40px!important;border-radius:10px!important;background:#eff6ff!important;color:#2563eb!important;box-shadow:none!important;flex-shrink:0!important}.workbench-products button.green .workbench-resource-icon{background:#ecfdf5!important;color:#059669!important}.workbench-products .workbench-resource-icon svg{width:22px!important;height:22px!important}.product-info{display:flex!important;flex-direction:column!important;align-items:flex-start!important;text-align:left!important;gap:3px!important;flex:1!important;min-width:0!important;padding-right:28px!important}.product-info b{font-size:14px!important;font-weight:700!important;color:#0f172a!important}.product-info small{font-size:11.5px!important;color:#64748b!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;width:100%!important}.workbench-product-arrow{position:absolute!important;right:16px!important;top:50%!important;transform:translateY(-50%)!important;width:26px!important;height:26px!important;border-radius:50%!important;background:#f1f5f9!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:15px!important;color:#94a3b8!important;transition:all .2s ease!important}.workbench-products button:hover .workbench-product-arrow{background:#2563eb!important;color:#fff!important;transform:translateY(-50%) translate(3px)!important}.workbench-recent-list{padding:12px 18px 18px!important;display:flex!important;flex-direction:column!important;gap:10px!important;flex:1!important}.workbench-recent-list button{background:#f8fafc!important;border:1px solid #eef2f6!important;border-radius:10px!important;padding:12px 16px!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;gap:12px!important;text-align:left!important;cursor:pointer!important;transition:all .2s ease!important}.workbench-recent-list button:hover{background:#fff!important;border-color:#cbd5e1!important;box-shadow:0 4px 12px #0f172a0d!important;transform:translate(2px)!important}.recent-badge{font-size:11px!important;font-weight:700!important;padding:3px 8px!important;border-radius:6px!important;flex-shrink:0!important}.recent-badge.blue{background:#eff6ff!important;color:#2563eb!important}.recent-badge.purple{background:#f5f3ff!important;color:#7c3aed!important}.recent-badge.orange{background:#fffbeb!important;color:#d97706!important}.recent-meta{display:flex!important;flex-direction:row!important;align-items:baseline!important;gap:10px!important;flex:1!important}.recent-meta b{font-size:13px!important;font-weight:600!important;color:#1e293b!important}.recent-meta small{font-size:11.5px!important;color:#64748b!important}.recent-arrow{margin-left:auto!important;font-size:15px!important;color:#cbd5e1!important;transition:all .2s ease!important}.workbench-recent-list button:hover .recent-arrow{color:#2563eb!important;transform:translate(2px)!important}.workbench-home-aside{display:flex!important;flex-direction:column!important;gap:18px!important}.workbench-account-card{padding:18px 20px!important;background:linear-gradient(180deg,#fff,#fcfdfe)!important}.workbench-account-title{display:flex!important;align-items:center!important;gap:14px!important;padding-bottom:14px!important;border-bottom:1px solid #f1f5f9!important}.workbench-account-title>span{width:44px!important;height:44px!important;border-radius:50%!important;background:linear-gradient(135deg,#1d4ed8,#3b82f6)!important;color:#fff!important;display:grid!important;place-items:center!important;font-size:17px!important;font-weight:800!important;box-shadow:0 4px 12px #2563eb40!important}.workbench-account-title b{font-size:14.5px!important;font-weight:700!important;color:#0f172a!important;display:block!important}.workbench-account-title small{display:inline-flex!important;align-items:center!important;gap:6px!important;color:#059669!important;font-size:11.5px!important;font-weight:500!important;margin-top:3px!important;background:#ecfdf5!important;padding:2px 8px!important;border-radius:12px!important}.workbench-account-title small i{width:6px!important;height:6px!important;border-radius:50%!important;background:#10b981!important;box-shadow:0 0 0 2px #10b98140!important}.workbench-home-panel dl{margin:10px 0 0!important}.workbench-home-panel dl>div{display:flex!important;justify-content:space-between!important;align-items:center!important;font-size:12.5px!important;padding:9px 0!important;border-bottom:1px solid #f8fafc!important}.workbench-home-panel dl>div:last-child{border-bottom:none!important}.workbench-home-panel dt{color:#64748b!important}.workbench-home-panel dd{margin:0!important;color:#1e293b!important;font-weight:600!important}.workbench-home-panel dd button{background:none!important;border:none!important;color:#2563eb!important;font-size:12px!important;font-weight:600!important;cursor:pointer!important;padding:2px 6px!important;border-radius:4px!important;transition:all .15s ease!important}.workbench-home-panel dd button:hover{background:#eff6ff!important}.workbench-organization{padding:8px 20px 16px!important}.workbench-home-panel .teal{color:#059669!important;font-weight:700!important;display:inline-flex!important;align-items:center!important;gap:6px!important}.workbench-home-panel .teal:before{content:""!important;width:7px!important;height:7px!important;border-radius:50%!important;background:#10b981!important;box-shadow:0 0 0 2px #10b98133!important}.workbench-notices{padding:10px 14px 14px!important;display:flex!important;flex-direction:column!important;gap:8px!important}.workbench-notices>button{padding:9px 12px!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:4px!important;width:100%!important;text-align:left!important;border:1px solid #f1f5f9!important;background:#fafbfd!important;border-radius:8px!important;cursor:pointer!important;transition:all .15s ease!important}.workbench-notices>button:hover{background:#fff!important;border-color:#cbd5e1!important;box-shadow:0 3px 8px #0f172a0d!important;transform:translate(2px)!important}.workbench-notices time{color:#94a3b8!important;font-size:10.5px!important;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace!important;display:inline-block!important;background:#f1f5f9!important;padding:1px 6px!important;border-radius:4px!important}.workbench-notices span{color:#334155!important;font-size:12px!important;font-weight:500!important;margin-top:2px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;width:100%!important}@media(max-width:1200px){.workbench-home{grid-template-columns:minmax(0,1fr)!important;padding:16px 18px 24px!important}.workbench-home-aside{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}.workbench-home-aside>section:last-child{grid-column:1 / -1!important}}@media(max-width:800px){.workbench-resources,.workbench-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))!important}.workbench-split-row,.workbench-home-aside{grid-template-columns:1fr!important}}@media(max-width:520px){.workbench-resources,.workbench-shortcuts,.workbench-products{grid-template-columns:1fr!important}}.admin-app .page-section{display:flex;flex-direction:column;gap:20px}.helper-panel,.tenant-guide,.visitor-guide{background:linear-gradient(145deg,#fff,#f0fdf4)!important;border:1px solid rgba(0,185,107,.2)!important;border-radius:16px!important;padding:24px!important;box-shadow:0 4px 16px -2px #00b96b0f!important}.helper-panel h2,.tenant-guide h2,.visitor-guide h2{font-size:16px;font-weight:750;color:#065f46;margin-bottom:14px;display:flex;align-items:center;gap:8px}.helper-panel h2:before,.tenant-guide h2:before,.visitor-guide h2:before,.ad-guide h2:before{content:"";display:inline-block;width:18px;height:18px;flex-shrink:0;vertical-align:middle;background-repeat:no-repeat;background-position:center;background-size:contain;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f59e0b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 18h6'/%3E%3Cpath d='M10 22h4'/%3E%3Cpath d='M12 2a7 7 0 0 0-7 7c0 2.38 1.19 4.47 3 5.74V17a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1v-2.26c1.81-1.27 3-3.36 3-5.74a7 7 0 0 0-7-7z'/%3E%3Cline x1='12' y1='9' x2='12' y2='13'/%3E%3C/svg%3E")}.helper-panel ul{padding-left:20px;margin:0;color:#334155;line-height:2;font-size:13px}.department-list,.department-tree{display:flex;flex-direction:column;gap:10px;padding:8px 0}.department-row{display:flex;align-items:center;gap:16px;padding:14px 18px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;transition:all .2s}.department-row:hover{border-color:#00b96b59;box-shadow:0 4px 14px #0f172a0d;transform:translate(3px)}.department-toggle,.department-toggle-placeholder{width:22px;height:22px;flex:0 0 22px;display:grid;place-items:center;color:#0e827b;font-size:18px;font-weight:800}.department-toggle:hover{background:#e8f7f2;border-radius:6px}.department-copy{min-width:180px;flex:1}.department-parent{border-color:#0e827b40}.dept-avatar{width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,#e6f9f0,#d1fae5);color:#059669;font-size:16px;font-weight:800;display:grid;place-items:center;border:1px solid rgba(0,185,107,.2)}.department-row b{font-size:14px;font-weight:700;color:#0f172a;display:block}.department-row small{font-size:12px;color:#64748b;margin-top:3px;display:block}.department-row .department-add-user{margin-left:auto}.department-row .department-add-user+.link-button{margin-left:0}.split-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:20px}.food-order-status-bar{display:flex;gap:8px;margin-bottom:16px}.report-stats{display:grid;grid-template-columns:repeat(5,1fr)!important;gap:16px!important;margin-bottom:22px}.report-stats .stat-card{min-height:110px;padding:16px 18px}.report-stats .stat-card strong{font-size:22px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;padding:8px 0}.switch-label{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;font-size:13.5px;font-weight:600;color:#1e293b;cursor:pointer}.switch-label input[type=checkbox]{width:20px;height:20px;accent-color:#00b96b;cursor:pointer}.backup-config-panel,.payment-config-panel,.withdraw-setting-panel{margin-bottom:24px}.payment-config-panel .form-grid label{font-size:12.5px;font-weight:600;color:#475569}.tenants-section{display:flex;flex-direction:column;gap:20px;width:100%}.tenant-panel-head,.account-panel-head{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px 16px!important;border-bottom:1px solid #f1f5f9;flex-wrap:wrap}.panel-title-area{display:flex;flex-direction:column;gap:4px}.panel-title-row{display:flex;align-items:center;gap:10px}.panel-title-row h2{font-size:16px;font-weight:750;color:#0f172a;letter-spacing:-.01em;margin:0}.panel-title-area p{margin:0;color:#64748b;font-size:12.5px}.count-badge-teal{display:inline-flex;align-items:center;padding:2px 10px;border-radius:999px;font-size:11.5px;font-weight:700;background:#ecfdf5!important;color:#047857!important;border:1px solid rgba(16,185,129,.25)!important}.count-badge-blue{display:inline-flex;align-items:center;padding:2px 10px;border-radius:999px;font-size:11.5px;font-weight:700;background:#eff6ff!important;color:#1d4ed8!important;border:1px solid rgba(59,130,246,.25)!important}.tenant-search-box{position:relative;display:flex;align-items:center;width:280px;max-width:100%}.account-search-box{position:relative;display:flex;align-items:center;width:330px;max-width:100%}.tenant-search-box input,.account-search-box input{width:100%;height:36px;padding:0 30px 0 34px!important;border:1px solid #e2e8f0!important;border-radius:8px!important;background:#f8fafc!important;font-size:12.5px!important;color:#1e293b!important;transition:all .2s cubic-bezier(.4,0,.2,1)!important}.tenant-search-box input:hover,.account-search-box input:hover{background:#fff!important;border-color:#cbd5e1!important}.tenant-search-box input:focus,.account-search-box input:focus{background:#fff!important;border-color:#00b96b!important;box-shadow:0 0 0 3px #00b96b1f!important}.search-svg-icon{position:absolute;left:11px;pointer-events:none;color:#94a3b8}.search-clear-btn{position:absolute;right:8px;display:flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:#cbd5e1;color:#fff;font-size:12px;line-height:1;cursor:pointer;padding:0;border:none;transition:background .15s}.search-clear-btn:hover{background:#94a3b8}.tenant-guide-modern{background:linear-gradient(135deg,#f8fdfc,#fff)!important;border:1px solid rgba(0,185,107,.22)!important;border-radius:14px!important;padding:20px 24px!important;box-shadow:0 4px 16px -2px #00b96b0d!important}.tenant-guide-header{display:flex;justify-content:space-between;align-items:center}.guide-header-title{display:flex;align-items:flex-start;gap:12px}.guide-lamp-badge{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:10px;background:#ecfdf5;color:#059669;border:1px solid rgba(16,185,129,.25);flex-shrink:0}.guide-header-title h3{font-size:15px;font-weight:750;color:#065f46;margin:0 0 3px}.guide-header-title p{font-size:12.5px;color:#64748b;margin:0;line-height:1.5}.tenant-features-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:16px}.tenant-feature-item{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:10px;background:#fff;border:1px solid #e2e8f0;box-shadow:0 1px 3px #00000005;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.tenant-feature-item:hover{transform:translateY(-1px);border-color:#cbd5e1;box-shadow:0 4px 12px #0000000d}.feature-icon-wrapper{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:8px;flex-shrink:0}.feature-icon-wrapper.feat-teal{background:#ecfdf5;color:#059669;border:1px solid rgba(5,150,105,.2)}.feature-icon-wrapper.feat-blue{background:#eff6ff;color:#2563eb;border:1px solid rgba(37,99,235,.2)}.feature-icon-wrapper.feat-amber{background:#fffbeb;color:#d97706;border:1px solid rgba(217,119,6,.2)}.feature-text{display:flex;flex-direction:column;gap:3px}.feature-text strong{font-size:13.5px;color:#1e293b;font-weight:700}.feature-text span{font-size:12px;color:#64748b;line-height:1.45}.admin-account-filter-bar{padding:14px 24px 8px!important;background:#fafbfc;border-bottom:1px solid #f1f5f9}.filter-controls-wrap{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.filter-select-wrapper select{height:36px;width:170px;padding:0 12px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;font-size:12.5px;color:#334155;outline:none;cursor:pointer;transition:border-color .2s,box-shadow .2s}.filter-select-wrapper select:focus{border-color:#00b96b;box-shadow:0 0 0 3px #00b96b1f}.reset-filter-btn{font-size:12.5px;color:#64748b;text-decoration:underline;cursor:pointer}.reset-filter-btn:hover{color:#0f172a}.current-login-account-panel{display:flex;align-items:center;justify-content:space-between;padding:18px 24px!important;border-radius:12px!important;background:linear-gradient(135deg,#f8fafc,#fff)!important;border:1px solid #e2e8f0!important;box-shadow:0 2px 10px #00000005!important}.account-profile-main{display:flex;align-items:center;gap:14px}.account-avatar-circle{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;font-size:18px;font-weight:800;color:#fff;background:linear-gradient(135deg,#00b96b,#059669);box-shadow:0 4px 10px #00b96b40;flex-shrink:0}.account-meta{display:flex;flex-direction:column;gap:3px}.account-title-line{display:flex;align-items:center;gap:10px}.account-title-line h3{font-size:15px;font-weight:750;color:#0f172a;margin:0}.role-badge-primary{display:inline-flex;align-items:center;padding:1px 8px;border-radius:4px;font-size:11px;font-weight:700;background:#e0f2fe;color:#0369a1;border:1px solid rgba(3,105,161,.2)}.status-live-dot{font-size:11.5px;color:#059669;font-weight:600}.account-meta p{margin:0;font-size:12.5px;color:#64748b}.change-my-password-btn{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 16px!important;font-size:12.5px!important;border-radius:8px!important;background:#fff!important;border:1px solid #cbd5e1!important;color:#334155!important;box-shadow:0 1px 2px #0000000a!important}.change-my-password-btn:hover{background:#f8fafc!important;border-color:#94a3b8!important;color:#0f172a!important}.table-panel .table-wrap{overflow-x:auto}.table-panel table th:last-child,.table-panel table td:last-child{min-width:290px;white-space:nowrap}.table-actions{display:flex!important;align-items:center!important;gap:6px!important;flex-wrap:wrap!important;white-space:nowrap!important}.table-actions button{display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:3px 9px!important;border-radius:6px!important;font-size:12px!important;font-weight:600!important;line-height:1.4!important;cursor:pointer!important;transition:all .15s cubic-bezier(.4,0,.2,1)!important;border:1px solid transparent!important;text-decoration:none!important}.table-actions .link-button{background:#f8fafc!important;border-color:#e2e8f0!important;color:#334155!important}.table-actions .link-button:hover{background:#f1f5f9!important;border-color:#cbd5e1!important;color:#0f172a!important;box-shadow:0 1px 3px #0000000d!important}.table-actions button:not(.danger-link):first-child{background:#eff6ff!important;border-color:#bfdbfe!important;color:#1d4ed8!important;font-weight:650!important}.table-actions button:not(.danger-link):first-child:hover{background:#1d4ed8!important;border-color:#1d4ed8!important;color:#fff!important;box-shadow:0 2px 6px #1d4ed840!important}.table-actions .danger-link{background:#fff1f2!important;border-color:#fecdd3!important;color:#e11d48!important}.table-actions .danger-link:hover{background:#e11d48!important;border-color:#e11d48!important;color:#fff!important;box-shadow:0 2px 6px #e11d4840!important}.table-actions button[disabled],.table-actions .muted{background:#f1f5f9!important;border-color:#e2e8f0!important;color:#94a3b8!important;cursor:default!important;pointer-events:none!important}.card-service-panel{padding:20px}.card-service-form{display:grid;grid-template-columns:minmax(260px,1fr) minmax(240px,1fr) auto;align-items:end;gap:14px}.card-service-form>label{display:grid;gap:7px}.card-service-selected{min-height:45px;margin:0}.card-service-actions{display:flex;align-items:center;gap:8px}.card-service-actions button{white-space:nowrap}@media(max-width:900px){.card-service-form{grid-template-columns:1fr;align-items:stretch}.card-service-actions{flex-wrap:wrap}}.management-settings-section-title{margin:26px 0 10px;padding-top:16px;border-top:1px solid #e7edf2;font-size:15px;color:#16324b}.management-settings-section-title:first-of-type{margin-top:10px;padding-top:0;border-top:0}.login-page-theme-blue{min-height:100vh;width:100vw;max-width:100%;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;box-sizing:border-box;background-color:#060a1d;background:radial-gradient(circle at 50% 30%,#0d1a45,#060b20 60%,#030611);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;user-select:none;color:#f1f5f9}.space-deep-bg{position:absolute;inset:0;pointer-events:none;z-index:1;overflow:hidden}.ambient-glow{position:absolute;border-radius:50%;filter:blur(90px);opacity:.45;pointer-events:none;animation:floatAmbient 18s ease-in-out infinite alternate}.glow-cyan{width:500px;height:500px;background:radial-gradient(circle,rgba(14,165,233,.45) 0%,rgba(6,182,212,.1) 70%,transparent 100%);top:10%;left:15%;animation-duration:16s}.glow-blue{width:600px;height:600px;background:radial-gradient(circle,rgba(37,99,235,.5) 0%,rgba(30,58,138,.15) 70%,transparent 100%);bottom:5%;left:35%;animation-duration:22s}.glow-purple{width:480px;height:480px;background:radial-gradient(circle,rgba(139,92,246,.35) 0%,rgba(109,40,217,.08) 70%,transparent 100%);top:15%;right:15%;animation-duration:19s}@keyframes floatAmbient{0%{transform:translate(0) scale(.95);opacity:.35}50%{transform:translate(40px,-30px) scale(1.08);opacity:.55}to{transform:translate(-30px,40px) scale(1.02);opacity:.4}}.space-mesh-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:56px 56px;pointer-events:none;z-index:2;mask-image:radial-gradient(ellipse at 50% 50%,rgba(0,0,0,.85) 30%,transparent 85%);-webkit-mask-image:radial-gradient(ellipse at 50% 50%,rgba(0,0,0,.85) 30%,transparent 85%)}.login-space-layout{position:relative;z-index:10;width:min(1360px,94vw);display:flex;align-items:center;justify-content:space-between;gap:50px;padding:30px 20px}.space-left-showcase{flex:1.15;max-width:740px;display:flex;flex-direction:column;align-items:flex-start;padding-left:10px}.brand-status-tag{display:inline-flex;align-items:center;gap:8px;padding:5px 14px;background:#1e3a8a59;border:1px solid rgba(56,189,248,.3);border-radius:20px;backdrop-filter:blur(10px);margin-bottom:14px;box-shadow:0 4px 16px #0003,inset 0 1px #fff3}.status-pulse-dot{width:7px;height:7px;border-radius:50%;background:#10b981;box-shadow:0 0 10px #10b981,0 0 18px #10b981;animation:pulseDot 2s infinite ease-in-out}@keyframes pulseDot{0%{transform:scale(.9);opacity:.7}50%{transform:scale(1.3);opacity:1}to{transform:scale(.9);opacity:.7}}.status-tag-text{font-size:11px;font-weight:700;letter-spacing:1.5px;color:#7dd3fc;text-transform:uppercase}.space-platform-title{font-size:46px;font-weight:800;letter-spacing:1.5px;margin:0 0 10px;display:flex;align-items:center;gap:16px;line-height:1.15}.space-platform-title>span:first-child{background:linear-gradient(135deg,#fff 30%,#bfdbfe 70%,#60a5fa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 4px 18px rgba(37,99,235,.5))}.title-tech-badge{font-size:13px;font-weight:700;padding:3px 10px;border-radius:8px;background:linear-gradient(135deg,#2563eb4d,#38bdf833);border:1px solid rgba(56,189,248,.4);color:#38bdf8;letter-spacing:.8px;vertical-align:middle}.space-platform-desc{font-size:15px;color:#94a3b8;margin:0 0 35px;letter-spacing:.5px;font-weight:400}.space-topology-circle{position:relative;width:620px;height:440px;display:flex;align-items:center;justify-content:center}.orbit-glow-disc{position:absolute;bottom:40px;width:520px;height:190px;border-radius:50%;background:radial-gradient(ellipse at center,rgba(37,99,235,.4) 0%,rgba(14,165,233,.18) 45%,transparent 75%);filter:blur(16px);pointer-events:none;animation:pulseDisc 6s infinite alternate ease-in-out}@keyframes pulseDisc{0%{transform:scale(.96);opacity:.7}to{transform:scale(1.05);opacity:1}}.orbit-track-ring{position:absolute;bottom:45px;width:500px;height:180px;border-radius:50%;border:1.5px dashed rgba(56,189,248,.45);box-shadow:0 0 25px #38bdf840,inset 0 0 25px #2563eb33;pointer-events:none}.orbit-track-ring-inner{position:absolute;bottom:60px;width:360px;height:140px;border-radius:50%;border:1px solid rgba(147,197,253,.2);pointer-events:none}.orbit-radar-sweep{position:absolute;bottom:45px;width:500px;height:180px;border-radius:50%;background:conic-gradient(from 0deg at 50% 50%,transparent 75%,rgba(56,189,248,.2) 95%,rgba(56,189,248,.45) 100%);animation:sweepRadar 8s linear infinite;pointer-events:none;mask-image:radial-gradient(ellipse at center,transparent 40%,black 85%);-webkit-mask-image:radial-gradient(ellipse at center,transparent 40%,black 85%)}@keyframes sweepRadar{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.center-core-sphere{position:relative;z-index:6;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle at 35% 28%,#4f96ff,#1e60e8 45%,#0b349e 85%,#071f66);box-shadow:0 0 50px #2563ebcc,0 16px 36px #0009,inset -8px -10px 24px #041040cc,inset 8px 10px 20px #ffffff73;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#fff;cursor:pointer;transition:all .4s cubic-bezier(.34,1.56,.64,1);border:1.5px solid rgba(191,219,254,.35)}.center-core-sphere:hover{transform:scale(1.06) translateY(-4px);box-shadow:0 0 70px #38bdf8e6,0 20px 45px #000000b3,inset -8px -10px 24px #041040cc,inset 8px 10px 24px #fff9}.core-ripple-wave{position:absolute;inset:-12px;border-radius:50%;border:1.5px solid rgba(56,189,248,.35);animation:coreRipple 3.6s cubic-bezier(.25,.8,.5,1) infinite;pointer-events:none}@keyframes coreRipple{0%{transform:scale(.95);opacity:.8}to{transform:scale(1.22);opacity:0}}.core-logo-badge{width:56px;height:56px;border-radius:16px;background:#fff3;backdrop-filter:blur(12px);border:1.5px solid rgba(255,255,255,.55);display:flex;align-items:center;justify-content:center;box-shadow:0 8px 20px #0000004d,inset 0 2px 4px #fff9;margin-bottom:2px}.core-svg-icon{width:32px;height:32px;color:#fff;filter:drop-shadow(0 2px 10px rgba(255,255,255,.6))}.core-brand-name{font-size:16px;font-weight:800;letter-spacing:1.2px;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.5)}.core-brand-sub{font-size:9px;font-weight:700;letter-spacing:2px;color:#e0f2fecc;text-transform:uppercase}.top-terminals-arc{position:absolute;top:40px;width:340px;display:flex;justify-content:space-between;align-items:center;z-index:5}.satellite-terminal{background:#0f214fb3;backdrop-filter:blur(14px);border:1px solid rgba(96,165,250,.45);box-shadow:0 6px 20px #0000004d,0 0 15px #2563eb4d;color:#e0f2fe;padding:6px 16px;border-radius:20px;font-size:12px;font-weight:600;display:flex;align-items:center;gap:6px;cursor:pointer;transition:all .3s cubic-bezier(.34,1.56,.64,1);animation:floatPill 5s ease-in-out infinite alternate}.terminal-dot{width:5px;height:5px;border-radius:50%;background:#38bdf8;box-shadow:0 0 6px #38bdf8}.satellite-terminal:hover{background:#1e40afd9;border-color:#93c5fd;transform:translateY(-4px) scale(1.06);box-shadow:0 10px 25px #2563eb80,0 0 20px #38bdf880;color:#fff}.terminal-mini{transform:translateY(-16px);animation-delay:1.5s}.terminal-oa{animation-delay:.2s}.terminal-app{animation-delay:2.8s}@keyframes floatPill{0%{transform:translateY(0)}to{transform:translateY(-7px)}}.terminal-mini{animation:floatPillMini 5s ease-in-out infinite alternate 1.5s}@keyframes floatPillMini{0%{transform:translateY(-16px)}to{transform:translateY(-24px)}}.biz-satellite-bubble{position:absolute;z-index:5;display:flex;flex-direction:column;align-items:center;gap:7px;cursor:pointer;transition:all .35s cubic-bezier(.34,1.56,.64,1)}.biz-satellite-bubble:hover{transform:scale(1.12) translateY(-4px)}.bubble-icon-wrap{width:82px;height:82px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;transition:all .35s ease;position:relative}.parking-bg{background:radial-gradient(circle at 35% 30%,#38bdf8,#0284c7 55%,#0369a1);border:2px solid rgba(186,230,253,.55);box-shadow:0 0 30px #0284c7b3,0 10px 20px #0006,inset 4px 4px 10px #ffffff73}.community-bg{background:radial-gradient(circle at 35% 30%,#818cf8,#4f46e5 55%,#3730a3);border:2px solid rgba(224,231,255,.55);box-shadow:0 0 30px #4f46e5b3,0 10px 20px #0006,inset 4px 4px 10px #ffffff73}.charging-bg{background:radial-gradient(circle at 35% 30%,#38bdf8,#0369a1 60%,#075985);border:2px solid rgba(186,230,253,.55);box-shadow:0 0 30px #0ea5e9b3,0 10px 20px #0006,inset 4px 4px 10px #ffffff73}.canteen-bg{background:radial-gradient(circle at 35% 30%,#60a5fa,#2563eb 55%,#1d4ed8);border:2px solid rgba(191,219,254,.55);box-shadow:0 0 30px #2563ebb3,0 10px 20px #0006,inset 4px 4px 10px #ffffff73}.bubble-svg{width:40px;height:40px;color:#fff;filter:drop-shadow(0 2px 8px rgba(0,0,0,.4))}.biz-satellite-bubble span{font-size:13px;font-weight:700;color:#e2e8f0;text-shadow:0 2px 6px rgba(0,0,0,.7);letter-spacing:.6px}.bubble-parking{left:24px;top:165px}.bubble-community{right:24px;top:165px}.bubble-charging{bottom:12px;left:175px}.bubble-canteen{bottom:12px;right:175px}.space-right-card{width:430px;background:#0b1430c7;backdrop-filter:blur(28px) saturate(190%);-webkit-backdrop-filter:blur(28px) saturate(190%);border-radius:20px;border:1px solid rgba(255,255,255,.14);box-shadow:0 32px 80px -10px #000000bf,0 0 50px #2563eb2e,inset 0 1px 1px #ffffff40;padding:32px 34px 28px;display:flex;flex-direction:column;box-sizing:border-box;position:relative;overflow:hidden}.card-glow-bar{position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#38bdf8,#3b82f6,#818cf8);box-shadow:0 0 12px #38bdf8cc}.card-header-badge{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.08)}.security-chip-icon{width:28px;height:28px;border-radius:8px;background:#38bdf826;border:1px solid rgba(56,189,248,.35);display:flex;align-items:center;justify-content:center;color:#38bdf8}.security-chip-icon svg{width:15px;height:15px}.security-chip-title{font-size:14px;font-weight:700;color:#f1f5f9;letter-spacing:.8px;flex:1;margin-left:10px}.system-ping-tag{font-size:11px;color:#34d399;display:flex;align-items:center;gap:5px;font-weight:600}.ping-dot{width:6px;height:6px;border-radius:50%;background:#34d399;box-shadow:0 0 8px #34d399}.card-switch-tabs{display:flex;background:#0f172a99;padding:4px;border-radius:12px;margin-bottom:24px;gap:6px;border:1px solid rgba(255,255,255,.08)}.switch-tab-item{flex:1;padding:10px 0;font-size:14px;font-weight:600;border:none;background:transparent;color:#94a3b8;border-radius:9px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .25s ease}.tab-svg-icon{width:17px;height:17px;stroke:currentColor;flex-shrink:0;transition:transform .2s ease}.switch-tab-item:hover{color:#f1f5f9;background:#ffffff0a}.switch-tab-item.active{background:linear-gradient(135deg,#2563eb,#1d4ed8 40%,#0284c7);color:#fff;box-shadow:0 4px 16px #2563eb66,inset 0 1px 1px #ffffff59}.switch-tab-item.active .tab-svg-icon{stroke:#fff}.pane-qr-login{display:flex;flex-direction:column;align-items:center;padding:6px 0 10px}.qr-code-box{position:relative;width:210px;height:210px;padding:14px;background:#0f172ad9;border:1.5px solid rgba(56,189,248,.35);border-radius:16px;box-shadow:0 10px 30px #00000080,inset 0 0 20px #38bdf814;cursor:pointer;overflow:hidden;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.qr-code-box:hover{border-color:#38bdf8;box-shadow:0 12px 35px #38bdf840,inset 0 0 25px #38bdf826}.qr-matrix-svg{width:100%;height:100%}.qr-active-laser{position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent 0%,#38bdf8 50%,transparent 100%);box-shadow:0 0 14px #38bdf8,0 0 24px #38bdf8;animation:laserScan 2.4s cubic-bezier(.4,0,.6,1) infinite}@keyframes laserScan{0%{top:6%;opacity:0}15%{opacity:1}85%{opacity:1}to{top:92%;opacity:0}}.qr-desc-text{margin:16px 0 14px;font-size:13px;color:#94a3b8;text-align:center}.btn-fast-auth{width:100%;padding:11px 0;background:#2563eb26;border:1px solid rgba(56,189,248,.35);color:#38bdf8;font-size:14px;font-weight:600;border-radius:10px;cursor:pointer;transition:all .25s ease}.btn-fast-auth:hover{background:#2563eb59;color:#fff;box-shadow:0 4px 16px #2563eb4d}.pane-account-login{display:flex;flex-direction:column}.account-login-form{display:flex;flex-direction:column;gap:16px}.field-item{position:relative;display:flex;align-items:center;background:#0f172a99;border:1.5px solid rgba(255,255,255,.12);border-radius:12px;padding:0 14px;height:48px;transition:all .25s ease}.field-item:focus-within{border-color:#38bdf8;background:#0f172ae6;box-shadow:0 0 0 3px #38bdf840,0 0 20px #38bdf826}.field-icon-wrap{display:flex;align-items:center;justify-content:center;color:#64748b;margin-right:12px;flex-shrink:0;transition:color .25s ease}.field-svg-icon{width:19px;height:19px;stroke:currentColor}.field-item:focus-within .field-icon-wrap{color:#38bdf8}.field-item input{flex:1;border:none;background:transparent;outline:none;font-size:14px;color:#f8fafc;height:100%}.field-item input::placeholder{color:#64748b;font-size:13.5px}.eye-toggle-btn{background:transparent;border:none;cursor:pointer;color:#64748b;padding:4px;display:flex;align-items:center;justify-content:center;transition:color .2s ease,transform .2s ease}.eye-svg-icon{width:18px;height:18px;stroke:currentColor}.eye-toggle-btn:hover{color:#94a3b8;transform:scale(1.1)}.btn-primary-login{margin-top:6px;height:48px;background:linear-gradient(135deg,#2563eb,#1d4ed8 45%,#0284c7);border:1px solid rgba(147,197,253,.3);border-radius:12px;color:#fff;font-size:15px;font-weight:700;letter-spacing:1.5px;cursor:pointer;box-shadow:0 6px 20px #2563eb73,inset 0 1px 1px #ffffff59;transition:all .25s ease;display:flex;align-items:center;justify-content:center}.btn-primary-login:hover{transform:translateY(-2px);background:linear-gradient(135deg,#3b82f6,#2563eb 45%,#0ea5e9);box-shadow:0 10px 28px #2563eb99,0 0 25px #38bdf866,inset 0 1px 2px #ffffff80}.btn-primary-login:active{transform:translateY(0)}.btn-primary-login:disabled{opacity:.65;cursor:not-allowed;transform:none}.btn-login-content{display:flex;align-items:center;justify-content:center;gap:8px}.btn-arrow-icon{width:17px;height:17px;stroke:currentColor;transition:transform .2s ease}.btn-primary-login:hover .btn-arrow-icon{transform:translate(4px)}.btn-loading-text{display:flex;align-items:center;gap:8px}.spin-icon{display:inline-block;animation:spinSlow 1s linear infinite}@keyframes spinSlow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.demo-quick-tags{margin-top:20px;padding-top:16px;border-top:1px dashed rgba(255,255,255,.1)}.tag-title{display:block;font-size:12px;color:#64748b;margin-bottom:9px;font-weight:500}.tag-btns-group{display:flex;gap:8px}.tag-pill{flex:1;padding:7px 0;background:#0f172a80;border:1px solid rgba(255,255,255,.1);border-radius:8px;font-size:12px;color:#94a3b8;cursor:pointer;transition:all .25s ease;display:flex;align-items:center;justify-content:center;gap:6px}.tag-dot{width:5px;height:5px;border-radius:50%}.admin-dot{background:#ef4444;box-shadow:0 0 6px #ef4444}.holder-dot{background:#3b82f6;box-shadow:0 0 6px #3b82f6}.merchant-dot{background:#f59e0b;box-shadow:0 0 6px #f59e0b}.tag-pill:hover{background:#2563eb2e;color:#f1f5f9;border-color:#38bdf866;transform:translateY(-1px)}.card-bottom-credit{margin-top:22px;display:flex;align-items:center;justify-content:center;gap:6px;font-size:11.5px;color:#64748b;letter-spacing:.5px}.credit-shield-svg{width:14px;height:14px;color:#38bdf8;stroke:#38bdf8;flex-shrink:0}@media(max-width:1140px){.login-space-layout{flex-direction:column;justify-content:center;gap:36px;padding:30px 16px}.space-left-showcase{align-items:center;padding-left:0;text-align:center}.space-platform-title{margin:0 0 8px;justify-content:center}.space-topology-circle{transform:scale(.9);height:400px}}@media(max-width:640px){.space-topology-circle{display:none}.space-platform-title{font-size:32px}.space-platform-desc{font-size:13px;margin-bottom:20px}.space-right-card{width:100%;padding:24px 20px}}.holder-app{width:min(100%,480px)!important;margin:0 auto!important;min-height:100vh!important;background:#f8fafc!important;box-shadow:0 0 50px #0f172a14!important;position:relative!important;padding-bottom:96px!important}.holder-topbar{height:250px!important;background:linear-gradient(150deg,#047857,#00b96b 60%,#10b981)!important;border-radius:0 0 36px 36px!important;box-shadow:0 16px 32px -4px #00b96b47!important;padding:16px 20px 0!important;position:relative!important;overflow:hidden!important}.holder-topbar:before{content:"";position:absolute;top:-40px;right:-40px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.25) 0%,transparent 70%);pointer-events:none}.wx-capsule{top:44px!important;right:18px!important;height:34px!important;width:96px!important;border:1px solid rgba(255,255,255,.45)!important;background:#0000001f!important;backdrop-filter:blur(8px)!important;border-radius:999px!important}.holder-page-title{margin-top:40px!important;font-size:22px!important;font-weight:800!important;letter-spacing:-.01em!important;text-shadow:0 2px 8px rgba(0,0,0,.15)!important}.holder-profile-hero,.profile-hero{margin:-60px 14px 16px!important;padding:18px 20px!important;background:#fff!important;border-radius:20px!important;box-shadow:0 10px 30px -4px #0f172a14!important;border:1px solid rgba(255,255,255,.8)!important;position:relative!important;z-index:10!important;display:flex!important;align-items:center!important;gap:16px!important}.holder-avatar,.profile-avatar{width:58px!important;height:58px!important;flex:0 0 58px!important;border-radius:16px!important;background:linear-gradient(135deg,#00b96b,#059669)!important;color:#fff!important;font-size:24px!important;font-weight:800!important;display:grid!important;place-items:center!important;box-shadow:0 6px 16px #00b96b59!important;border:2px solid #ffffff!important}.holder-profile-hero h1{font-size:19px!important;font-weight:800!important;color:#0f172a!important;margin:0 0 4px!important}.holder-profile-hero p{font-size:12px!important;color:#64748b!important;margin:0!important}.balance-card{margin:0 14px 18px!important;padding:24px 22px!important;border-radius:22px!important;background:linear-gradient(135deg,#065f46,#047857,#059669)!important;box-shadow:0 16px 36px -6px #0478576b,0 4px 12px #0000000f!important;position:relative!important;overflow:hidden!important;border:1px solid rgba(255,255,255,.25)!important}.balance-card:before{content:""!important;position:absolute!important;top:24px!important;right:24px!important;width:44px!important;height:34px!important;border-radius:6px!important;background:linear-gradient(135deg,#fef08a,#eab308,#ca8a04)!important;box-shadow:inset 0 1px 2px #fff9,0 2px 6px #0003!important;opacity:.9!important}.balance-card-top{font-size:14px!important;font-weight:700!important;letter-spacing:.02em!important}.status-dot{padding:4px 10px!important;border-radius:999px!important;background:#fff3!important;backdrop-filter:blur(4px)!important;font-size:11.5px!important;font-weight:650!important}.balance-label{margin-top:20px!important;font-size:12.5px!important;opacity:.9!important}.balance-number{font-size:42px!important;font-weight:850!important;letter-spacing:-.02em!important;margin:6px 0 18px!important;text-shadow:0 3px 10px rgba(0,0,0,.2)!important;font-variant-numeric:tabular-nums!important}.balance-meta{display:flex!important;justify-content:space-between!important;align-items:center!important;font-size:12.5px!important}.white-button{background:#fff!important;color:#047857!important;font-weight:750!important;font-size:14px!important;padding:8px 22px!important;border-radius:999px!important;box-shadow:0 4px 12px #00000026!important;border:none!important;transition:all .2s!important}.white-button:hover{transform:scale(1.05)!important;box-shadow:0 6px 18px #0003!important}.quick-grid{margin:0 14px 20px!important;padding:18px 12px!important;background:#fff!important;border-radius:20px!important;box-shadow:0 4px 16px -2px #0f172a0a!important;border:1px solid #f1f5f9!important;display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:8px!important}.quick-grid button{display:flex!important;flex-direction:column!important;align-items:center!important;gap:6px!important;background:transparent!important;border:none!important;cursor:pointer!important;transition:transform .2s!important}.quick-grid button:hover{transform:translateY(-2px)!important}.quick-grid strong{width:48px!important;height:48px!important;border-radius:15px!important;display:grid!important;place-items:center!important;font-size:22px!important;box-shadow:0 4px 12px #00000014!important;transition:transform .2s!important}.quick-grid button:nth-child(1) strong{background:linear-gradient(135deg,#00b96b,#059669)!important;color:#fff!important}.quick-grid button:nth-child(2) strong{background:linear-gradient(135deg,#3b82f6,#2563eb)!important;color:#fff!important}.quick-grid button:nth-child(3) strong{background:linear-gradient(135deg,#f59e0b,#d97706)!important;color:#fff!important}.quick-grid button:nth-child(4) strong{background:linear-gradient(135deg,#8b5cf6,#7c3aed)!important;color:#fff!important}.quick-grid b{font-size:13px!important;font-weight:700!important;color:#1e293b!important}.quick-grid small{font-size:10.5px!important;color:#94a3b8!important}.ecard-panel{margin:0 14px 20px!important;padding:20px!important;border-radius:20px!important;background:linear-gradient(145deg,#fff,#f0fdf4)!important;border:1.5px solid rgba(0,185,107,.25)!important;box-shadow:0 8px 24px -4px #00b96b1a!important}.ecard-panel h3{font-size:20px!important;font-weight:800!important;color:#065f46!important}.holder-nav{position:fixed!important;bottom:0!important;left:50%!important;transform:translate(-50%)!important;width:min(100%,480px)!important;height:68px!important;background:#fffffff0!important;backdrop-filter:blur(16px)!important;-webkit-backdrop-filter:blur(16px)!important;border-top:1px solid #e2e8f0!important;box-shadow:0 -4px 20px #0f172a0d!important;display:flex!important;align-items:center!important;justify-content:space-around!important;z-index:100!important;padding:0 10px!important}.holder-nav button{display:flex!important;flex-direction:column!important;align-items:center!important;gap:3px!important;background:transparent!important;border:none!important;color:#94a3b8!important;cursor:pointer!important;padding:6px 12px!important;transition:all .2s!important;position:relative!important}.holder-nav button span{font-size:20px!important;transition:transform .2s!important}.holder-nav button b{font-size:11px!important;font-weight:600!important}.holder-nav button.active{color:#00b96b!important}.holder-nav button.active span{transform:translateY(-2px) scale(1.15)!important}.holder-nav button.active:after{content:""!important;position:absolute!important;bottom:2px!important;width:18px!important;height:3px!important;border-radius:999px!important;background:#00b96b!important;box-shadow:0 0 8px #00b96b99!important}.holder-simulator-view{position:fixed;inset:0;width:100vw;height:100vh;display:flex;flex-direction:column;background:radial-gradient(circle at top,#1e293b,#0f172a);z-index:1000;overflow:hidden}.holder-simulator-topbar{position:absolute;top:18px;right:28px;display:flex;align-items:center;gap:14px;z-index:2000;background:#0f172ad1;backdrop-filter:blur(16px);padding:8px 16px;border-radius:999px;border:1px solid rgba(255,255,255,.12);box-shadow:0 10px 30px #00000073}.holder-sim-user{display:flex;align-items:center;gap:8px;color:#f1f5f9;font-size:13px;font-weight:600}.holder-sim-avatar{width:24px;height:24px;border-radius:50%;background:#00a854;color:#fff;display:grid;place-items:center;font-size:12px;font-weight:700}.holder-sim-no{color:#94a3b8;font-size:12px;font-family:monospace}.holder-sim-logout{display:inline-flex;align-items:center;gap:6px;background:#ef44442e;border:1px solid rgba(239,68,68,.35);color:#fca5a5;padding:5px 14px;border-radius:999px;font-size:12px;font-weight:700;cursor:pointer;transition:all .2s ease}.holder-sim-logout:hover{background:#ef444459;color:#fff;transform:translateY(-1px)}.holder-simulator-frame{width:100%;height:100%;border:none;display:block}.reference-shell .management-resource-page input:not([type=checkbox]),.reference-shell .management-resource-page select,.reference-shell .management-resource-page textarea{padding:7px 10px;min-height:32px;border:1px solid #dce3e9;border-radius:4px;font-size:12px;color:#495665;background:#fff;min-width:0;box-shadow:none}.reference-shell .management-resource-page :focus-visible{outline:2px solid #51cfbd;outline-offset:2px}.reference-shell .access-container .header-actions{flex-wrap:wrap}.reference-shell .access-container .table-footer-bar{flex-wrap:wrap;gap:10px}:root{--management-accent: #0d9488;--management-accent-soft: #f0fdfa;--management-header: #111827;--management-border: #e2e8f0;--management-muted: #64748b;--management-text: #1e293b}:root[data-platform-theme=navy]{--management-header: #0f172a}:root[data-platform-theme=teal]{--management-header: #0f2d2e}.admin-app.reference-shell .admin-topbar{background:linear-gradient(180deg,#18222e,#111a24)!important;box-shadow:0 4px 16px -2px #0000004d!important;padding:0 18px!important;border-bottom:1px solid rgba(255,255,255,.08)!important;height:50px!important;min-height:50px!important;overflow:visible!important}.reference-shell .topbar-brand-block{width:170px;min-width:170px}.reference-shell .topbar-brand-badge,.reference-shell .topbar-brand-divider{display:none!important}.reference-shell .topbar-brand-mark{filter:drop-shadow(0 2px 8px rgba(16,185,129,.45))!important}.reference-shell .topbar-chrome-nav{height:50px!important;gap:4px!important;overflow-x:auto;scrollbar-width:none;align-items:center}.reference-shell .chrome-tab-btn{height:34px!important;min-height:34px!important;padding:0 16px!important;border-radius:8px!important;background:transparent!important;box-shadow:none!important;border:1px solid transparent!important;color:#94a3b8!important;font-size:13px!important;font-weight:500!important;transition:all .2s cubic-bezier(.4,0,.2,1)!important;display:inline-flex!important;align-items:center!important}.reference-shell .chrome-tab-btn:hover{background:#ffffff0f!important;color:#f8fafc!important}.reference-shell .chrome-tab-btn.active{background:#0d948833!important;color:#34d399!important;border:1px solid rgba(52,211,153,.4)!important;box-shadow:0 0 14px #10b98138!important;font-weight:600!important}.reference-shell .chrome-tab-btn.active:before,.reference-shell .chrome-tab-btn.active:after{display:none!important}.reference-shell .topbar-right-tools{gap:16px!important;min-width:0;align-items:center}.reference-shell .topbar-tool-item{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:6px;background:transparent;color:#94a3b8;border:0;font-size:12px;font-weight:500;white-space:nowrap;transition:all .2s}.reference-shell .topbar-tool-item:hover{color:#f8fafc;background:#ffffff0f}.reference-shell .topbar-avatar{background:linear-gradient(135deg,#0d9488,#10b981)!important;box-shadow:0 2px 8px #10b98159!important}.reference-shell .topbar-user-name{font-size:12px!important;color:#e2e8f0!important;font-weight:500!important}.reference-shell .topbar-user-wrap{cursor:pointer}.topbar-overflow{display:none;position:relative}.topbar-overflow>summary{display:grid;place-items:center;width:30px;height:32px;cursor:pointer;list-style:none;color:#fff;font-size:24px;border-radius:4px}.topbar-overflow>summary::-webkit-details-marker{display:none}.topbar-overflow[open]>summary{background:#ffffff20}.topbar-overflow-panel{position:absolute;z-index:300;top:39px;right:0;width:194px;padding:7px;border:1px solid #e4e9ee;border-radius:5px;background:#fff;box-shadow:0 8px 28px #23354c26;color:#425365}.topbar-overflow-panel p{margin:0 6px 5px;padding:8px 0 10px;border-bottom:1px solid #edf0f3;font-size:12px;font-weight:600}.topbar-overflow-panel small{display:block;margin-top:5px;color:#8995a2;font-weight:400}.topbar-overflow-panel button{display:block;width:100%;padding:10px 12px;border:0;border-radius:3px;background:#fff;color:#526475;text-align:left;font-size:12px}.topbar-overflow-panel button:hover,.topbar-overflow-panel button:focus-visible{background:#eafbf8;color:#008976}.responsive-sidebar-backdrop{display:none}.reference-shell .admin-layout{min-height:calc(100dvh - 48px)!important;height:calc(100dvh - 48px);overflow:hidden}.reference-shell .admin-content.no-padding{padding:0!important;min-width:0;height:100%;overflow:hidden}.reference-shell .page-section.no-padding{height:100%;min-height:0;margin:0}.reference-shell .platform-container,.reference-shell .access-container,.reference-shell .lot-workspace-container{height:calc(100dvh - 48px)!important}.management-workspace{display:flex;height:100%;min-height:0;background:#f0f4f4;color:var(--management-text);font:13px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,sans-serif}.management-workspace *{box-sizing:border-box}.management-sidebar{flex:0 0 176px;width:176px;min-height:0;background:#fff;border-right:1px solid var(--management-border);overflow-y:auto;scrollbar-width:thin}.management-sidebar nav{padding:7px 6px 20px}.management-sidebar.collapsed{width:52px;flex-basis:52px}.management-menu{display:flex;align-items:center;width:100%;gap:9px;min-height:43px;padding:10px 12px;border:0;border-radius:4px;background:transparent;text-align:left;color:#434e5e}.management-menu b{font-size:13px;font-weight:400;white-space:nowrap}.management-menu>span{width:16px;height:16px;display:flex;flex-shrink:0}.management-menu>span svg{width:16px;height:16px}.management-menu>i{margin-left:auto;font-style:normal;color:#86909a}.management-menu:hover,.management-subnav button:hover{background:#f5f8fa}.management-menu.active,.management-subnav button.active{color:#00a991;background:#eafbf8}.management-sidebar.collapsed .management-menu{padding:10px;justify-content:center}.management-sidebar.collapsed .management-menu b,.management-sidebar.collapsed .management-menu i{display:none}.management-subnav{padding:2px 0 4px}.management-subnav button{display:flex;align-items:center;gap:11px;width:100%;padding:10px 10px 10px 35px;min-height:38px;border:0;border-radius:4px;background:transparent;text-align:left;font-size:12px;color:#667180}.management-subnav button i{width:4px;height:4px;background:currentColor;border-radius:50%}.management-main{flex:1;display:flex;flex-direction:column;width:0;min-width:0;min-height:0}.management-tabbar{display:flex;height:34px;min-height:34px;background:#fff;border-bottom:1px solid var(--management-border);align-items:center}.management-collapse,.management-tabs-reset{width:40px;height:32px;flex-shrink:0;border:0;background:#fff;color:#677685}.management-tabs-reset{border-left:1px solid var(--management-border)}.management-tabs{display:flex;gap:5px;flex:1;overflow-x:auto;scrollbar-width:none;padding:4px 0}.management-tab{display:inline-flex;flex-shrink:0;height:24px;border:1px solid #e1e6eb;border-radius:2px}.management-tab>button{display:flex;align-items:center;gap:6px;background:transparent;padding:2px 9px;border:0;color:#738090;white-space:nowrap;font-size:11px}.management-tab>button i{width:6px;height:6px;border-radius:50%;background:#c7ced5}.management-tab.active{border-color:#48c9b7;background:#edfcf8}.management-tab.active>button{color:#00a890}.management-tab.active>button i{background:var(--management-accent)}.management-tab>.management-tab-close{padding:2px 7px 2px 1px;font-size:15px}.management-content{min-height:0;flex:1;overflow:auto}.management-content.embedded-platform-page{overflow:hidden}.management-content .platform-container.embedded-mode{height:100%!important}.management-content .platform-container.embedded-mode .platform-content-body{padding:16px!important}.management-content .platform-container.embedded-mode .platform-main{height:100%}.workbench-home{padding:12px;display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:12px;align-items:start}.home-error{grid-column:1/-1}.workbench-home-main,.workbench-home-aside{display:grid;gap:12px;min-width:0}.workbench-home-panel{min-width:0;background:#fff;border-radius:8px;box-shadow:0 2px 8px #21354405;overflow:hidden}.workbench-home-panel>header{height:42px;padding:0 15px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #edf0f2;position:relative}.workbench-home-panel>header:before{content:"";position:absolute;left:0;top:15px;width:3px;height:13px;background:var(--management-accent)}.workbench-home-panel h2{font-size:13px;line-height:1.4;margin:0;font-weight:600;color:#3d4754}.workbench-home-panel header button,.workbench-account-card button{background:none;border:0;color:var(--management-accent);padding:0;font-size:12px}.workbench-resources{padding:14px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.workbench-resource{display:flex;flex-direction:column;align-items:flex-start;text-align:left;border:0;border-radius:8px;padding:12px;min-height:118px;color:#35424f}.workbench-resource.blue{background:#ffead4}.workbench-resource.green{background:#dcf4e8}.workbench-resource.orange{background:#ffe3eb}.workbench-resource.purple{background:#e4eaff}.workbench-resource strong{font-size:28px;font-weight:650;line-height:1.25;margin:7px 0 4px}.workbench-resource>span:last-child{font-size:12px}.workbench-resource-icon{display:flex;align-items:center;justify-content:center;width:34px;height:34px;color:#fff;background:#32a7f4;border-radius:8px;box-shadow:0 2px 5px #2085c22b}.workbench-resource-icon svg{width:21px;height:21px}.green .workbench-resource-icon{background:#1cc889;box-shadow:0 2px 5px #21b77c2b}.orange .workbench-resource-icon{background:#ff826b;box-shadow:0 2px 5px #e25a6b2b}.purple .workbench-resource-icon{background:#bb5bdc;box-shadow:0 2px 5px #9b43c42b}.workbench-shortcuts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:13px 14px}.workbench-shortcuts button,.workbench-products button{background:#fff;border:1px solid #f7f8fa;border-radius:8px;box-shadow:0 2px 8px #172d3e06;padding:18px 10px;color:#3a4655;transition:border-color .15s}.workbench-shortcuts button:hover,.workbench-products button:hover{border-color:#a1dfd4}.workbench-shortcuts button{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;min-height:108px}.workbench-shortcuts b,.workbench-products b{font-size:12px;font-weight:600}.workbench-products{padding:13px 14px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.workbench-products button{display:flex;align-items:flex-start;flex-direction:column;gap:13px;position:relative;padding:16px}.workbench-product-arrow{position:absolute;right:12px;top:15px;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#f4f6f7;color:#a2aab4;font-size:20px}.workbench-account-card{padding:17px 14px 7px}.workbench-account-title{display:flex;align-items:center;gap:10px;padding-bottom:14px}.workbench-account-title>span,.management-profile>span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#00baa4;color:#fff;font-size:17px;font-weight:600}.workbench-account-title b{font-size:13px;font-weight:600;overflow-wrap:anywhere}.workbench-account-title small{display:flex;align-items:center;gap:5px;color:#8d97a2;font-size:11px;margin-top:4px}.workbench-account-title small i{width:5px;height:5px;border-radius:50%;background:#15c898}.workbench-home-panel dl{margin:0}.workbench-home-panel dl>div{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:39px;border-bottom:1px solid #edf0f2;font-size:12px}.workbench-home-panel dl>div:last-child{border:0}.workbench-home-panel dt{color:#969da5}.workbench-home-panel dd{margin:0;color:#53606d;text-align:right;overflow-wrap:anywhere}.workbench-organization{padding:7px 15px}.workbench-home-panel .teal{color:var(--management-accent)}.workbench-notices{padding:7px 15px 15px}.workbench-notices>button{padding:9px 0;display:flex;flex-direction:column;gap:3px;width:100%;text-align:left;border:0;background:#fff;color:#515d69;font-size:12px}.workbench-notices time{color:#9ba2aa;font-size:10px}.workbench-recent>div{display:grid;grid-template-columns:repeat(3,1fr);padding:6px 14px;gap:18px}.workbench-recent button{display:flex;flex-direction:column;gap:6px;text-align:left;border:0;background:#fff;padding:10px 0;color:#576370}.workbench-recent span{font-size:11px;color:#98a1ad}.management-resource-page{padding:16px;color:var(--management-text);font-size:13px}.management-page-title{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:36px;margin-bottom:14px}.management-page-title h1{margin:0;font-size:15px;font-weight:600}.management-button{padding:7px 14px;min-height:32px;border:1px solid #dce3e9;background:#fff;border-radius:4px;color:#56616e;font-size:12px;font-weight:400;cursor:pointer;white-space:nowrap;line-height:1.3}.management-button.primary{background:var(--management-accent);border-color:var(--management-accent);color:#fff;box-shadow:none}.management-button.danger{border-color:#e46b6b;background:#e46b6b;color:#fff}.management-button:hover:not(:disabled){filter:brightness(.97)}.management-button:disabled{opacity:.55;cursor:not-allowed}.management-filter{display:flex;align-items:flex-end;flex-wrap:wrap;gap:12px;padding:16px;background:#fff;border:1px solid var(--management-border);border-radius:5px;margin-bottom:14px}.management-filter>label{display:flex;align-items:center;gap:9px;font-size:12px;white-space:nowrap}.management-filter input{width:225px}.management-filter select{min-width:130px}.management-workspace input,.management-workspace select,.management-workspace textarea,.management-dialog input,.management-dialog select,.management-dialog textarea{padding:7px 10px;height:33px;border:1px solid #dce3e9;border-radius:4px;font-size:12px;color:#495665;background:#fff;min-width:0;box-shadow:none}.management-workspace textarea,.management-dialog textarea{min-height:80px;height:auto;resize:vertical}.management-workspace :focus-visible,.management-dialog :focus-visible{outline:2px solid #51cfbd;outline-offset:2px}.management-workspace input:disabled,.management-dialog input:disabled,.management-dialog select:disabled,.management-dialog textarea:disabled{background:#f7f9fa;color:#7c8792}.management-table-panel{background:#fff;border:1px solid var(--management-border);border-radius:5px;overflow:hidden}.management-table-tools{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:13px 15px;min-height:58px}.management-table-tools>span{margin-left:auto;color:#99a2ae;font-size:11px}.management-table-tools h2{font-size:14px;margin:0 auto 0 0}.management-table-scroll{overflow-x:auto}.management-table{width:100%;border-collapse:collapse;text-align:left;font-size:12px;white-space:nowrap}.management-table th{background:#f6f8fa;color:#697584;font-weight:500;height:43px}.management-table th,.management-table td{border-bottom:1px solid #edf0f3;padding:12px 15px}.management-table td{color:#536170;max-width:300px;overflow:hidden;text-overflow:ellipsis}.management-table tbody tr:hover{background:#fafdfc}.management-sticky-actions{position:sticky;right:0;background:#fff;box-shadow:-3px 0 5px #35465103}.management-row-actions{display:flex;align-items:center;gap:12px}.management-row-actions button,.management-link{border:0;background:transparent;padding:0;color:#00aa95;font-size:12px}.management-row-actions .danger{color:#df6a6a}.management-status{display:inline-flex;align-items:center;gap:5px;color:#00ad92}.management-status:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}.management-status.muted{color:#a0a7ae}.management-empty{color:#909ba8!important;padding:48px 16px!important;text-align:center!important;white-space:normal}.management-empty small{display:block;font-size:11px;margin-top:8px}.management-empty-icon{display:block;font-size:30px;color:#c7d3dd;margin-bottom:8px}.management-pager{display:flex;justify-content:space-between;align-items:center;padding:14px 15px;gap:12px;background:#fff;color:#88929e;font-size:12px}.management-pager>div,.management-pager label{display:flex;align-items:center;gap:8px}.management-pager select{width:100px;height:28px;padding:3px 6px}.management-pager button{width:26px;height:26px;border:1px solid #e0e7ec;background:#fff;border-radius:3px;color:#778393}.management-pager button:disabled{color:#ccd3da;cursor:not-allowed}.management-page-number{min-width:25px;height:25px;display:grid;place-items:center;color:#00ac95;background:#effaf7;border:1px solid #69cfc0;border-radius:3px}.management-pager input{width:45px;height:28px;padding:3px;text-align:center}.management-error{padding:12px 15px;border:1px solid #fac8c8;background:#fff6f6;color:#c94848;border-radius:4px;font-size:12px;margin-bottom:12px}.management-error button{border:0;background:none;color:inherit;text-decoration:underline}.management-description{margin:14px 22px 4px;padding:10px 14px;background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;color:#0369a1;font-size:13px;line-height:1.6}.management-form-error{margin:12px 22px 16px;padding:10px 14px;background:#fff1f2;border:1px solid #fecdd3;border-radius:8px;color:#be123c;font-size:13px;font-weight:500;display:flex;align-items:center;gap:8px}.management-dialog-message{padding:32px 24px;font-size:15px;font-weight:600;color:#0f172a;line-height:1.7;text-align:center;background:#fafafa}.management-dialog ol{list-style:none;margin:16px 22px;padding:0 0 0 18px;border-left:2px solid #e2e8f0;display:flex;flex-direction:column;gap:14px}.management-dialog ol li{position:relative;font-size:13px;color:#334155;line-height:1.5}.management-dialog ol li:before{content:"";position:absolute;left:-23px;top:5px;width:8px;height:8px;border-radius:50%;background:#10b981;box-shadow:0 0 0 3px #10b98133}.management-dialog-mask{position:fixed;inset:0;z-index:5000;display:flex;align-items:center;justify-content:center;padding:24px;background:#0f172aa6;backdrop-filter:blur(6px);font:13px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,sans-serif;animation:modalMaskFadeIn .22s ease-out}.management-dialog{width:min(700px,100%);max-height:calc(100dvh - 48px);overflow:auto;background:#fff;color:#334155;border-radius:12px;box-shadow:0 20px 48px -12px #0f172a47,0 0 0 1px #0f172a0d;animation:modalScalePop .24s cubic-bezier(.16,1,.3,1)}.management-dialog.wide{width:min(920px,100%)}.management-dialog>header{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid #edf2f7;position:sticky;top:0;background:#fff;z-index:10;border-top-left-radius:12px;border-top-right-radius:12px}.management-dialog>header h2{font-size:16px;font-weight:700;margin:0;color:#0f172a}.management-dialog>header button{border:0;width:32px;height:32px;border-radius:6px;font-size:22px;line-height:1;background:transparent;color:#94a3b8;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .15s ease}.management-dialog>header button:hover{background:#f1f5f9;color:#334155}.management-form-grid{padding:22px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.management-form-grid label{display:flex;flex-direction:column;gap:8px;color:#66717e;font-size:12px}.management-form-grid .wide{grid-column:1/-1}.management-form-grid b{color:#e25e68}.management-dialog-actions{display:flex;align-items:center;justify-content:flex-end;padding:15px 22px;border-top:1px solid #edf0f3;gap:10px}.management-dialog-message{padding:25px 22px}.management-settings-card{padding:20px;margin-bottom:14px;background:#fff;border:1px solid #e7ebef;border-radius:5px}.management-settings-card h2{margin:0 0 12px;font-size:14px;font-weight:600}.management-settings-card p{font-size:12px;color:#94a0ac;line-height:1.8}.management-settings-card .management-form-grid{padding:12px 0 22px;max-width:740px}.management-settings-card .management-dialog-actions{padding-right:0}.management-role-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.management-role-grid article{border:1px solid #e8edef;padding:14px;border-radius:4px}.management-role-grid strong{font-size:12px}.management-role-grid p{font-size:11px;margin-bottom:0}.sync-setting-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.management-check-option{flex-direction:row!important;align-items:flex-start;gap:10px!important;padding:14px;border:1px solid #e8edef;border-radius:5px;cursor:pointer}.management-check-option input{width:16px;height:16px;margin-top:2px;accent-color:#0aa889}.management-check-option span{display:flex;flex-direction:column;gap:5px}.management-check-option small{color:#94a0ac;font-size:11px;line-height:1.5}.management-download-list article{display:flex;align-items:center;gap:15px;padding:18px 0;border-bottom:1px solid #edf0f2}.management-download-list article:last-child{border:0}.management-download-list article>div{flex:1}.management-download-list h3{font-size:13px;font-weight:500;margin:0}.management-download-list p{margin:6px 0 0}.management-file-icon{display:grid;place-items:center;width:42px;height:48px;background:#e6f7f1;color:#23ae89;font-size:11px;border-radius:4px}.management-quick-links{display:flex;gap:30px;flex-wrap:wrap}.management-profile{display:flex;align-items:center;gap:14px}.management-profile h2,.management-profile p{margin:0}.management-detail-list{max-width:560px;margin:20px 0}.management-detail-list>div{display:flex;padding:12px 0;border-bottom:1px solid #edf0f2}.management-detail-list dt{width:130px;color:#8c97a3}.management-detail-list dd{margin:0}.management-help details{padding:18px 0;border-bottom:1px solid #edf0f2}.management-help summary{cursor:pointer;font-size:13px;color:#4d5e6c}.management-help p{color:#75818c;max-width:800px}.management-project-summary{display:flex;align-items:center;gap:22px;margin-bottom:15px;padding:18px;background:#fff;border-radius:5px;border:1px solid #e7ebef}.management-project-summary>span{color:#9aa3ad}.management-project-summary strong{font-size:25px;color:#425161;margin-right:8px}.management-project-summary p{margin:0 0 0 auto;color:#9aa4af;font-size:12px}:root[data-table-density=compact] .management-table th,:root[data-table-density=compact] .management-table td{padding-top:7px;padding-bottom:7px}:root[data-table-density=comfortable] .management-table th,:root[data-table-density=comfortable] .management-table td{padding-top:17px;padding-bottom:17px}@media(max-width:1200px){.reference-shell .topbar-right-tools{gap:8px!important}.reference-shell .topbar-tool-item .tool-ico{display:none}.reference-shell .chrome-tab-btn{padding:0 12px!important}.workbench-home{grid-template-columns:minmax(0,1fr) 270px}.workbench-resources,.workbench-shortcuts{gap:8px;padding:12px}.management-sidebar{flex-basis:162px;width:162px}.reference-shell .topbar-brand-block{width:146px;min-width:146px}}@media(max-width:960px){.workbench-home{grid-template-columns:minmax(0,1fr)}.workbench-home-aside{grid-template-columns:repeat(2,minmax(0,1fr))}.workbench-home-aside>:last-child{grid-column:1/-1}.reference-shell .topbar-tool-item,.reference-shell .topbar-user-name{display:none}.management-filter input{width:185px}.management-pager{flex-wrap:wrap}}@media(max-width:640px){.management-sidebar{width:132px;flex-basis:132px}.management-menu{padding:9px 7px;gap:6px}.management-menu b{font-size:12px}.management-subnav button{padding-left:18px;font-size:11px}.workbench-home{padding:8px;gap:8px}.workbench-resources,.workbench-shortcuts,.workbench-products{grid-template-columns:repeat(2,minmax(0,1fr))}.workbench-home-aside{grid-template-columns:1fr}.workbench-resource strong{font-size:24px}.management-resource-page{padding:10px}.management-filter{padding:12px;gap:10px}.management-filter>label{flex-direction:column;align-items:flex-start;width:100%}.management-filter input,.management-filter select{width:100%}.management-form-grid{grid-template-columns:1fr}.management-pager label{display:none}.management-role-grid{grid-template-columns:1fr}.reference-shell .topbar-brand-block{width:auto;min-width:0;margin-right:7px}.reference-shell .topbar-logo-text{font-size:13px}.reference-shell .topbar-brand-mark{display:none}.reference-shell .chrome-tab-btn{padding:0 9px!important;font-size:12px!important}.reference-shell .chrome-tab-btn .tab-ico{display:none}.reference-shell .topbar-right-tools{margin-left:6px}.reference-shell .topbar-scope,.reference-shell .topbar-tool-btn.return-btn{display:none}.management-dialog-mask{padding:12px}.workbench-recent{display:none}}@media(prefers-reduced-motion:reduce){.management-workspace *{scroll-behavior:auto!important;transition:none!important}}@media(max-width:960px){.reference-shell .topbar-overflow{display:block}.reference-shell .topbar-chrome-nav{min-width:0}.reference-shell .topbar-right-tools{flex-shrink:0}}@media(max-width:640px){.reference-shell .management-workspace,.reference-shell .single-lot-container,.reference-shell .access-container,.reference-shell .platform-container{position:relative}.reference-shell .responsive-sidebar-backdrop{display:block;position:absolute;inset:34px 0 0;z-index:110;border:0;padding:0;background:#24364b45;cursor:default}.reference-shell .management-sidebar,.reference-shell .lot-sidebar,.reference-shell .access-sidebar,.reference-shell .platform-sidebar{position:absolute;z-index:120;top:34px;bottom:0;left:0;width:214px;height:auto;box-shadow:4px 0 18px #23354c18}.reference-shell .management-sidebar.collapsed,.reference-shell .single-lot-container.sidebar-collapsed .lot-sidebar,.reference-shell .access-container.sidebar-collapsed .access-sidebar,.reference-shell .platform-sidebar.collapsed{display:none}.reference-shell .single-lot-container .lot-sidebar,.reference-shell .single-lot-container>.responsive-sidebar-backdrop{top:42px}.reference-shell .access-container .access-sidebar,.reference-shell .access-container>.responsive-sidebar-backdrop{top:38px}.reference-shell .lot-tabbar,.reference-shell .access-tabbar{padding:0 8px}.reference-shell .lot-tabbar .tabbar-left,.reference-shell .access-tabbar .tabbar-left{flex:1;min-width:0}.reference-shell .lot-tabbar .tabbar-right,.reference-shell .access-tabbar .tabbar-right{display:none}.reference-shell .btn-toggle-menu,.reference-shell .btn-tab-nav{flex-shrink:0}.reference-shell .management-page-title{flex-wrap:wrap;gap:10px}.reference-shell .access-container .personnel-header{flex-wrap:wrap;gap:12px;align-items:flex-start}.reference-shell .access-container .personnel-header h2{white-space:nowrap}.reference-shell .management-project-summary{flex-wrap:wrap;gap:12px}.reference-shell .management-project-summary p{width:100%;margin-left:0}.reference-shell .topbar-brand-block{flex-shrink:0}.reference-shell .topbar-avatar{display:none}.reference-shell .topbar-overflow-panel{right:-35px}}.management-dialog .management-detail-list{max-width:100%!important;margin:0!important;padding:20px 24px!important}.management-dialog .management-detail-list>div{display:grid!important;grid-template-columns:110px minmax(0,1fr)!important;gap:16px!important;padding:12px 0!important;border-bottom:1px solid #f1f5f9!important;align-items:start!important}.management-dialog .management-detail-list dt{width:auto!important;color:#64748b!important;font-size:13px!important;font-weight:600!important}.management-dialog .management-detail-list dd{color:#0f172a!important;font-size:13px!important;line-height:1.7!important;word-break:break-word!important}.management-dialog .management-detail-list dd:has(p){background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:12px 16px}.modal-card.holder-modal{width:min(680px,calc(100vw - 36px));padding:27px 29px 25px;border-radius:16px}.holder-modal .modal-head{padding-bottom:17px;margin-bottom:19px}.holder-modal .eyebrow{margin-bottom:7px;color:#2b9e96;letter-spacing:.04em}.holder-modal .modal-head h2{color:#173844;font-size:20px}.holder-modal-form{gap:15px!important}.holder-modal .form-grid{column-gap:20px;row-gap:14px}.holder-modal .form-grid label{color:#2f4054;font-weight:600}.holder-modal .field-hint{color:#0aa899;font-size:11px;font-weight:500;margin-left:4px}.holder-modal input,.holder-modal select{height:39px;padding:9px 12px;border-color:#c7d6e4;border-radius:6px;color:#2f4054}.holder-modal input::placeholder{color:#8da1b9}.holder-modal .holder-form-tip{margin-top:0;padding:11px 13px;color:#0b8c70;background:#effcf5;border:1px solid #a6ecc3;border-radius:8px;line-height:1.65}.holder-modal .modal-actions{margin-top:9px;padding-top:16px}.holder-modal .modal-actions .secondary{color:#3b536b;background:#fff;border-color:#c7d6e4}.holder-modal .modal-actions .primary{min-width:105px;background:#08a99a;box-shadow:0 8px 16px #08a99a38}@media(max-width:640px){.modal-card.holder-modal{width:min(100%,calc(100vw - 24px));padding:22px 18px 19px}.holder-modal .form-grid{grid-template-columns:1fr}}.tenant-home{padding:18px}.tenant-home-heading{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:18px}.tenant-home-heading h1{margin:0;font-size:19px;font-weight:600;color:#233342}.tenant-home-heading p,.tenant-home-heading>span{margin:7px 0 0;font-size:12px;color:#7a8997}.tenant-home-grid.workbench-home{padding:0}.tenant-home .workbench-resources{grid-template-columns:repeat(4,minmax(0,1fr))}.tenant-home .workbench-resource:disabled,.tenant-home .workbench-shortcuts button:disabled,.tenant-home .workbench-products button:disabled{opacity:.52;cursor:default}.tenant-panel-caption{color:#84909b;font-size:12px}.tenant-products.workbench-products{display:grid;grid-template-columns:1fr;gap:0;padding-top:0;padding-bottom:0}.tenant-products.workbench-products>button{display:flex;flex-direction:row;align-items:center;gap:16px;border-radius:0;padding:17px 20px;border-bottom:1px solid #eef1f5;min-height:78px;width:100%}.tenant-products.workbench-products>button:last-child{border-bottom:0}.tenant-products button>div{display:grid;gap:5px;text-align:left}.tenant-products small{font-size:12px;font-weight:400;color:#7b8995}.tenant-products .workbench-product-arrow{position:static;margin-left:auto;flex-shrink:0}.tenant-today{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));padding:20px 8px;gap:16px 0}.tenant-today>div{display:grid;gap:13px;padding:0 18px;border-right:1px solid #edf0f4}.tenant-today>div:last-child{border-right:0}.tenant-today span{color:#7a8997;font-size:12px}.tenant-today strong{font-size:25px;font-weight:500;color:#2c3e50}.tenant-today small{font-size:12px;font-weight:400;color:#8a959f;padding-left:6px}.tenant-home .workbench-account-title>div{min-width:0}.tenant-home .workbench-account-title small{white-space:normal;line-height:1.7}.tenant-home .workbench-account-card dd{overflow-wrap:anywhere;text-align:right}.tenant-account-links{display:flex;justify-content:flex-end;gap:22px;padding:0 20px 18px}.tenant-account-links button{color:#168d76;font-size:12px}.tenant-unread-count,.tenant-nav-badge{display:inline-block;min-width:18px;font-size:11px;background:#e7f5f0;color:#16866c;padding:1px 5px;border-radius:8px;text-align:center;font-style:normal}.tenant-nav-badge{margin-left:auto}.tenant-workbench-scope{padding:0 18px;color:#7c8b96;font-size:12px;white-space:nowrap}.tenant-page-note{margin:8px 0 16px;font-size:12px;color:#778793;line-height:1.8}.tenant-cell-note{display:block;margin-top:5px;color:#8a969f;font-size:11px;white-space:normal}.tenant-permission-cell{min-width:220px;max-width:380px}.tenant-permission-tags{display:flex;gap:5px;flex-wrap:wrap}.tenant-permission-tags>span{color:#52677b;background:#f1f5f8;font-size:11px;padding:3px 7px;border-radius:3px}.tenant-permission-picker{margin:18px 0;padding:16px;border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.tenant-permission-picker legend,.reservation-limits legend,.reservation-account-picker legend{color:#334155;font-size:13px;font-weight:700;padding:0 8px}.tenant-permission-picker label{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:500;color:#334155;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:10px 14px;cursor:pointer;transition:all .18s cubic-bezier(.4,0,.2,1)}.tenant-permission-picker label:hover{border-color:#10b981;background:#f0fdf4;box-shadow:0 2px 8px #10b9811f;transform:translateY(-1px)}.tenant-permission-picker input:disabled+span,.tenant-permission-picker label:has(input:disabled){opacity:.65;background:#f1f5f9;cursor:not-allowed;border-color:#cbd5e1}.tenant-check{display:inline-flex;align-items:center;gap:10px;font-size:13px;font-weight:600;color:#1e293b;margin:16px 0;padding:8px 16px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;transition:all .15s ease}.tenant-check:hover{border-color:#10b981;background:#f0fdf4}.tenant-permission-picker input,.tenant-check input,.reservation-account-picker input{width:16px!important;min-width:16px!important;height:16px!important;accent-color:#10b981;margin:0;cursor:pointer}.tenant-password-result{padding:20px 24px;background:linear-gradient(145deg,#f8fafc,#f0fdf4);border-radius:10px;border:1px solid #e2e8f0;margin:16px 20px 0}.tenant-password-result p{color:#475569;font-size:13px;margin:0 0 12px;line-height:1.6}.tenant-password-result code{display:block;padding:16px 20px;background:#fff;border:1px dashed #10b981;border-radius:8px;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:22px;font-weight:700;letter-spacing:2px;color:#059669;text-align:center;box-shadow:0 2px 10px #10b98114;overflow-wrap:anywhere}.tenant-segmented{display:flex;gap:6px;padding:0;border-bottom:1px solid #e2e8f0;margin-bottom:16px}.tenant-segmented button{padding:12px 22px;font-size:13px;color:#64748b;border-bottom:2px solid transparent;font-weight:500;transition:all .15s ease}.tenant-segmented button:hover{color:#0f172a}.tenant-segmented button.active{color:#059669;border-bottom-color:#059669;font-weight:700}.reservation-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:16px 0 18px}.reservation-summary>div{padding:18px 20px;border:1px solid #e2e8f0;background:#fff;border-radius:10px;display:grid;gap:10px;box-shadow:0 1px 3px #00000008}.reservation-summary span{color:#64748b;font-size:12px;font-weight:500}.reservation-summary strong{color:#0f172a;font-size:26px;font-weight:700;letter-spacing:-.5px}.reservation-summary small{font-size:12px;margin-left:6px;color:#94a3b8;font-weight:400}.reservation-eyebrow{display:block;color:#0f766e;font-size:11px;letter-spacing:1.6px;font-weight:700;margin-bottom:6px}.reservation-notice,.reservation-scope-card{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin:12px 0;padding:12px 16px;border:1px solid #a7f3d0;background:#f0fdf4;border-radius:8px;color:#166534;font-size:13px}.reservation-scope-card b{color:#064e3b}.reservation-overview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:16px 0}.reservation-overview-grid article,.reservation-settings-card{padding:20px;border:1px solid #e2e8f0;border-radius:10px;background:#fff;box-shadow:0 1px 3px #0f172a0a}.reservation-overview-grid h3,.reservation-settings-card h2{margin:0 0 10px;color:#0f172a;font-size:16px}.reservation-overview-grid p,.reservation-settings-card p{color:#64748b;font-size:13px;line-height:1.75;min-height:48px}.reservation-state-list{display:grid;gap:8px;margin:14px 0;color:#475569;font-size:13px}.reservation-state-list span{display:flex;justify-content:space-between;gap:10px}.reservation-state-list b{color:#0f172a}.reservation-settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0}.reservation-settings-grid div{display:grid;gap:6px;padding:14px;background:#f8fafc;border-radius:8px}.reservation-settings-grid span{color:#64748b;font-size:12px}.reservation-settings-grid b{color:#0f172a}.reservation-plate-add{display:flex;gap:10px;margin:16px 0}.reservation-plate-add input{flex:1;min-width:0}.reservation-account-scope{display:grid;gap:10px;padding:12px;margin-top:10px;border:1px solid #e2e8f0;background:#fff;border-radius:8px}.reservation-account-scope>label{display:flex;justify-content:space-between;align-items:center;gap:12px}.reservation-account-scope>label span{display:grid;gap:3px}.reservation-account-scope>label small{color:#64748b}.reservation-account-scope>label input[type=number]{max-width:160px}.reservation-account-space-list{display:flex;flex-wrap:wrap;gap:8px;padding-top:8px;border-top:1px solid #f1f5f9}.reservation-account-space-list label{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border:1px solid #e2e8f0;border-radius:6px;font-size:12px}.reservation-account-space-list>small{width:100%;color:#64748b}.reservation-empty-help{margin:0 0 16px;padding:20px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;color:#166534}.reservation-empty-help p{font-size:13px;line-height:1.8;margin:8px 0 12px}.reservation-quota-table th,.reservation-quota-table td{padding-left:14px;padding-right:14px}.reservation-account-cell{min-width:160px;max-width:260px;white-space:normal!important;line-height:1.7}.reservation-limits{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;padding:16px;border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc;margin:18px 0 6px}.reservation-limits label{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:600;color:#475569;text-align:center}.reservation-limits label:nth-child(6),.reservation-limits label:nth-child(7){color:#0284c7}.reservation-limits input{width:100%;min-width:0;height:38px;text-align:center;font-size:14px;font-weight:700;color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:6px;transition:all .15s ease}.reservation-limits input:focus{border-color:#10b981;outline:none;box-shadow:0 0 0 3px #10b98133}.reservation-account-picker{border:1px solid #e2e8f0;padding:14px 16px;border-radius:10px;background:#f8fafc;margin:18px 0;max-height:250px;overflow-y:auto}.reservation-account-picker>label{display:flex;align-items:center;gap:14px;padding:10px 12px;margin-bottom:4px;border-radius:6px;background:#fff;border:1px solid #e2e8f0;cursor:pointer;transition:all .15s ease}.reservation-account-picker>label:hover{border-color:#10b981;background:#f0fdf4}.reservation-account-picker>label span{display:grid;gap:4px}.reservation-account-picker b{font-size:13px;font-weight:600;color:#1e293b}.reservation-account-picker small{font-size:12px;color:#64748b}.reservation-availability{display:grid;gap:8px;background:linear-gradient(145deg,#f0fdf4,#ecfdf5);border:1px solid #a7f3d0;color:#065f46;padding:16px 20px;margin:18px 0 8px;border-radius:8px;font-size:13px;box-shadow:0 2px 6px #10b9810f}.reservation-availability b{font-size:14px;color:#065f46;font-weight:700}.reservation-availability span{font-size:13px;font-weight:500}.reservation-availability small{color:#047857}.reservation-full{color:#b45309!important;font-weight:700}.parking-reservations-page .management-table-tools{flex-wrap:wrap}.management-edit-form .management-form-grid label>small{font-size:11px;color:#8696a3;font-weight:400;line-height:1.6}@media(max-width:1000px){.tenant-home-grid.workbench-home{grid-template-columns:minmax(0,1fr)}.tenant-home .workbench-home-aside{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px}.tenant-home .workbench-home-aside>section:last-child{grid-column:1 / -1}}@media(max-width:640px){.tenant-home{padding:12px}.tenant-home-heading{flex-direction:column;align-items:flex-start;gap:0}.tenant-home-heading h1{font-size:17px}.tenant-home .workbench-resources,.tenant-home .workbench-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}.tenant-home .workbench-home-aside{grid-template-columns:minmax(0,1fr)}.tenant-workbench-scope{display:none}.tenant-permission-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.reservation-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.reservation-summary>div{padding:13px}.reservation-limits{grid-template-columns:repeat(4,minmax(0,1fr))}.reservation-overview-grid,.reservation-settings-grid{grid-template-columns:minmax(0,1fr)}.reservation-plate-add{flex-direction:column}}.workbench-people-page{display:flex;flex-direction:column;gap:18px;padding:26px;color:#0f172a}.people-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:24px 26px;border:1px solid #d9eee8;border-radius:16px;background:linear-gradient(135deg,#f0fdf9,#fff);box-shadow:0 8px 24px #0f766e0f}.people-hero h1{margin:5px 0 8px;font-size:28px;letter-spacing:-.03em}.people-hero p:not(.eyebrow){margin:0;color:#64748b;font-size:13px}.people-hero-actions,.people-actions-row,.department-actions,.people-modal-actions{display:flex;align-items:center;gap:10px}.people-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.people-stat-card{min-height:92px;padding:17px 20px;border:1px solid #e2e8f0;border-radius:14px;background:#fff;box-shadow:0 5px 18px #0f172a0a}.people-stat-card span,.people-stat-card small{display:block;color:#64748b;font-size:12px}.people-stat-card strong{display:block;margin:6px 0 3px;color:#0f3c5f;font-size:24px}.people-stat-card.accent{border-color:#bdebdc;background:#effcf6}.people-panel{overflow:hidden;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 8px 26px #0f172a0d}.people-tabs{display:flex;gap:4px;padding:0 22px;border-bottom:1px solid #e2e8f0;background:#fbfdff}.people-tabs button{padding:15px 20px;border:0;border-bottom:3px solid transparent;background:transparent;color:#64748b;cursor:pointer;font-size:14px;font-weight:700}.people-tabs button.active{border-bottom-color:#00b96b;color:#009e5b}.people-content,.department-content{padding:20px 22px 24px}.people-toolbar{display:grid;grid-template-columns:180px minmax(180px,1fr) 140px 170px 130px auto auto;gap:9px;align-items:center}.people-toolbar input,.people-toolbar select,.people-form input,.people-form select{width:100%;min-height:38px;box-sizing:border-box;padding:0 11px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#1e293b;outline:none}.people-toolbar input:focus,.people-toolbar select:focus,.people-form input:focus,.people-form select:focus{border-color:#00b96b;box-shadow:0 0 0 3px #00b96b1f}.people-actions-row{margin:14px 0;flex-wrap:wrap}.people-tip,.department-help{color:#64748b;font-size:12px}.people-table-wrap{overflow:auto;border:1px solid #e2e8f0;border-radius:12px}.people-table{width:100%;min-width:920px;border-collapse:collapse}.people-table th{padding:12px 13px;background:#f8fafc;color:#64748b;text-align:left;font-size:12px;font-weight:700;white-space:nowrap}.people-table td{padding:13px;border-top:1px solid #edf2f7;color:#334155;font-size:13px;white-space:nowrap}.people-table td b,.people-table td small{display:block}.people-table td small{margin-top:3px;color:#94a3b8;font-size:11px}.people-status{display:inline-flex;align-items:center;border-radius:99px;padding:4px 9px;font-size:11px}.people-status.ok{color:#047857;background:#d1fae5}.people-status.off{color:#b45309;background:#fef3c7}.people-empty{padding:38px!important;color:#94a3b8!important;text-align:center!important}.people-pagination{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-top:14px;color:#64748b;font-size:12px}.department-toolbar{grid-template-columns:220px minmax(180px,1fr) auto auto auto}.department-help{margin:15px 0;padding:11px 13px;border-radius:9px;background:#f8fafc}.department-list-global{display:flex;flex-direction:column;gap:9px}.department-global-row{display:flex;align-items:center;gap:15px;padding:13px 15px;border:1px solid #e2e8f0;border-radius:11px}.department-global-row:hover{border-color:#9ddfc6;box-shadow:0 4px 16px #0f172a0d}.department-global-name{display:flex;align-items:center;gap:10px;min-width:290px;flex:1}.department-global-name b,.department-global-name small{display:block}.department-global-name small{margin-top:4px;color:#94a3b8;font-size:11px}.dept-avatar{display:grid;width:36px;height:36px;place-items:center;border-radius:10px;color:#047857;background:#d1fae5;font-weight:800}.department-count{width:60px;color:#64748b;font-size:12px}.department-actions{justify-content:flex-end;flex-wrap:wrap}.people-modal-mask{position:fixed;z-index:1600;inset:0;display:grid;place-items:center;padding:20px;background:#0f172a85}.people-modal{width:min(760px,100%);max-height:calc(100vh - 40px);overflow:auto;border-radius:16px;background:#fff;box-shadow:0 24px 80px #0f172a4d}.people-modal-small{width:min(510px,100%)}.people-modal-head{display:flex;align-items:flex-start;justify-content:space-between;padding:21px 24px 15px;border-bottom:1px solid #e2e8f0}.people-modal-head h2{margin:5px 0 0;font-size:21px}.people-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:22px 24px 24px}.people-form label{display:flex;flex-direction:column;gap:7px;color:#334155;font-size:12px;font-weight:700}.people-form-tip{grid-column:1/-1;margin:0;padding:11px 13px;border-radius:8px;background:#f0fdf4;color:#047857;font-size:12px}.people-modal-actions{grid-column:1/-1;justify-content:flex-end;padding-top:6px}.icon-button{border:0;background:transparent;color:#64748b;font-size:25px;cursor:pointer}.file-button input{display:none}@media(max-width:1100px){.people-stat-grid,.people-toolbar,.department-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.people-hero{flex-direction:column}.people-hero-actions{align-self:flex-end}}@media(max-width:650px){.workbench-people-page{padding:14px}.people-stat-grid{grid-template-columns:1fr}.people-form{grid-template-columns:1fr;padding:17px}.people-modal-head{padding:17px}.people-content,.department-content{padding:14px}.people-toolbar,.department-toolbar{grid-template-columns:1fr}.department-global-row{align-items:flex-start;flex-wrap:wrap}.department-count{width:auto}.department-actions{width:100%;justify-content:flex-start}}.type-toolbar{grid-template-columns:minmax(220px,1fr) 140px auto auto}.permission-toolbar{grid-template-columns:minmax(220px,260px) auto auto}.type-list{display:flex;flex-direction:column;gap:9px}.type-row{display:flex;align-items:center;gap:15px;padding:13px 15px;border:1px solid #e2e8f0;border-radius:11px}.type-row:hover{border-color:#9ddfc6;box-shadow:0 4px 16px #0f172a0d}.type-name{display:flex;align-items:center;gap:10px;min-width:260px;flex:1}.type-name b,.type-name small{display:block}.type-name small{margin-top:4px;color:#94a3b8;font-size:11px}.type-system-label{color:#94a3b8;font-size:12px}.permission-table{min-width:760px}.permission-group-picker{grid-column:1/-1}.permission-group-picker>span{display:flex;gap:8px;align-items:center}.permission-group-picker em{color:#94a3b8;font-size:11px;font-style:normal;font-weight:400}.permission-group-options{display:flex;flex-wrap:wrap;gap:8px;padding:10px;min-height:44px;border:1px solid #cbd5e1;border-radius:8px;background:#f8fafc}.permission-chip{display:inline-flex!important;flex-direction:row!important;align-items:center;gap:5px;padding:6px 9px;border:1px solid #b7e4d1;border-radius:999px;background:#fff;color:#047857!important;font-size:12px!important;font-weight:600!important}.permission-chip small{color:#94a3b8;font-size:10px;font-weight:400}.permission-chip input{min-height:auto!important;width:auto!important}.people-form .wide-field{grid-column:1/-1}.people-modal-permission{width:min(720px,100%)}.permission-group-picker>span .link-button{margin-left:auto;padding:0;color:#009e5b;font-size:11px}.permission-group-toggle{grid-column:1/-1;flex-direction:row!important;align-items:center;gap:8px}.permission-group-toggle input{width:16px!important;min-height:auto!important}.people-form-error{grid-column:1/-1;margin:0;padding:10px 13px;border-radius:8px;background:#fff1f2;color:#be123c;font-size:12px}
