.app-frame{height:100%;display:flex}.rail{width:68px;flex:none;display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 0;background:var(--surface);border-right:1px solid var(--outline-variant)}.rail .pin{width:26px;height:26px;color:var(--primary);margin:2px 0 12px;flex:none}.rail .grow{flex:1}.nav-item{display:flex;flex-direction:column;align-items:center;gap:3px;width:56px;padding:8px 0;border-radius:14px;color:var(--on-surface-variant);font-size:10.5px;text-decoration:none}.nav-item:hover{background:var(--surface-2);text-decoration:none;color:var(--on-surface-variant)}.nav-item svg{width:20px;height:20px}.nav-item.active{background:var(--select-bg);color:var(--on-surface);font-weight:600}.nav-item.active svg{color:var(--primary)}.account{position:relative}.account-menu{position:absolute;left:44px;bottom:0;min-width:220px;background:var(--surface);border:1px solid var(--outline-variant);border-radius:14px;box-shadow:var(--shadow);padding:6px;z-index:30}.account-menu .email{padding:8px 10px;font-size:12.5px;color:var(--on-surface-variant);border-bottom:1px solid var(--outline-variant);margin-bottom:4px;word-break:break-all}.account-menu button{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border-radius:9px;font-size:13px}.account-menu button:hover{background:var(--surface-2)}.account-menu button svg{width:16px;height:16px}.page{flex:1;min-width:0;display:flex;flex-direction:column;gap:18px;padding:24px 28px;overflow:auto}.page-head{display:flex;align-items:center;gap:14px}.page-head h1{margin:0;font-size:20px;font-weight:700}.page-head .sub{font-size:12.5px;color:var(--on-surface-variant)}.page-head .grow{flex:1}.tabbar{display:none}@media(max-width:700px){.rail{display:none}.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:40;display:flex;align-items:center;justify-content:space-evenly;gap:2px;padding:6px 4px calc(6px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--outline-variant)}.tab-item{display:grid;place-items:center;width:42px;height:38px;border-radius:12px;color:var(--on-surface-variant)}.tab-item svg{width:21px;height:21px}.tab-item.active{background:var(--select-bg)}.tab-item.active svg{color:var(--primary)}.tabbar .avatar{width:30px;height:30px;font-size:12.5px}.tabbar .account-menu{left:auto;right:0;bottom:44px}.app-frame{display:block;padding-bottom:56px;height:auto;min-height:100%}.page{padding:16px 14px;gap:14px}.page-head{flex-wrap:wrap;gap:10px}}.center-screen{height:100%;display:grid;place-items:center;padding:24px;overflow:auto}.brandline{display:flex;align-items:center;justify-content:center;gap:10px;font-size:18px;font-weight:700}.brandline svg{width:30px;height:30px;color:var(--primary)}.brandline .muted{color:var(--on-surface-variant);font-weight:500}:root{--primary: #b22640;--on-primary: #ffffff;--select-bg: #eae5e3;--background: #f7f5f4;--on-background: #1e1b1a;--surface: #ffffff;--surface-2: #f3f0ef;--surface-3: #ece8e6;--on-surface: #1e1b1a;--on-surface-variant: #5c5452;--outline: #8a807d;--outline-variant: #dcd6d3;--ok: #256e39;--ok-container: #d9eedd;--on-ok-container: #0e4620;--idle: #8a5a00;--idle-container: #f5e7cb;--on-idle-container: #5c3b00;--off: #6b615f;--off-container: #e9e4e2;--on-off-container: #4a4240;--map-ground: #f1eee7;--map-blue: #1565c0;--shadow: 0 1px 3px rgba(30, 27, 26, .14), 0 6px 20px rgba(30, 27, 26, .12)}@media(prefers-color-scheme:dark){:root{--primary: #c94557;--on-primary: #ffffff;--select-bg: #382e2e;--background: #170f0f;--on-background: #ece0df;--surface: #221919;--surface-2: #271d1d;--surface-3: #332727;--on-surface: #ece0df;--on-surface-variant: #cbbebd;--outline: #9f8c8d;--outline-variant: #453a3a;--ok: #8fd9a0;--ok-container: #1e4a2b;--on-ok-container: #c9f0d1;--idle: #efc77e;--idle-container: #4e3a12;--on-idle-container: #fbe3b5;--off: #b3a6a6;--off-container: #3a3030;--on-off-container: #dfd4d3;--map-ground: #201c1a;--map-blue: #5c9ce6;--shadow: 0 1px 3px rgba(0, 0, 0, .5), 0 8px 24px rgba(0, 0, 0, .45)}}:root[data-theme=light]{--primary: #b22640;--on-primary: #ffffff;--select-bg: #eae5e3;--background: #f7f5f4;--on-background: #1e1b1a;--surface: #ffffff;--surface-2: #f3f0ef;--surface-3: #ece8e6;--on-surface: #1e1b1a;--on-surface-variant: #5c5452;--outline: #8a807d;--outline-variant: #dcd6d3;--ok: #256e39;--ok-container: #d9eedd;--on-ok-container: #0e4620;--idle: #8a5a00;--idle-container: #f5e7cb;--on-idle-container: #5c3b00;--off: #6b615f;--off-container: #e9e4e2;--on-off-container: #4a4240;--map-ground: #f1eee7;--map-blue: #1565c0;--shadow: 0 1px 3px rgba(30, 27, 26, .14), 0 6px 20px rgba(30, 27, 26, .12)}:root[data-theme=dark]{--primary: #c94557;--on-primary: #ffffff;--select-bg: #382e2e;--background: #170f0f;--on-background: #ece0df;--surface: #221919;--surface-2: #271d1d;--surface-3: #332727;--on-surface: #ece0df;--on-surface-variant: #cbbebd;--outline: #9f8c8d;--outline-variant: #453a3a;--ok: #8fd9a0;--ok-container: #1e4a2b;--on-ok-container: #c9f0d1;--idle: #efc77e;--idle-container: #4e3a12;--on-idle-container: #fbe3b5;--off: #b3a6a6;--off-container: #3a3030;--on-off-container: #dfd4d3;--map-ground: #201c1a;--map-blue: #5c9ce6;--shadow: 0 1px 3px rgba(0, 0, 0, .5), 0 8px 24px rgba(0, 0, 0, .45)}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font:14px/1.45 system-ui,Segoe UI,Roboto,sans-serif;background:var(--background);color:var(--on-background)}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:0}button:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--primary);outline-offset:2px}input,select{font:inherit}.chip{font-size:11px;font-weight:600;padding:3px 9px;border-radius:999px;white-space:nowrap}.chip.ok{background:var(--ok-container);color:var(--on-ok-container)}.chip.idle{background:var(--idle-container);color:var(--on-idle-container)}.chip.off{background:var(--off-container);color:var(--on-off-container)}.chip.neutral{background:var(--surface-2);color:var(--on-surface)}.btn{display:inline-flex;align-items:center;gap:7px;padding:8px 15px;border-radius:999px;font-weight:600;font-size:13px}.btn svg{width:15px;height:15px}.btn.tonal{background:var(--surface-2);color:var(--on-surface);border:1px solid var(--outline-variant)}.btn.tonal.danger{color:#8f1e33}.btn.filled{background:var(--primary);color:var(--on-primary)}.btn:disabled{opacity:.45;cursor:default}.avatar{width:34px;height:34px;border-radius:999px;background:var(--primary);color:var(--on-primary);display:grid;place-items:center;font-weight:700;font-size:14px;flex:none}.card{background:var(--surface);border:1px solid var(--outline-variant);border-radius:16px}.card-head{display:flex;align-items:center;gap:8px;padding:13px 16px;border-bottom:1px solid var(--outline-variant);font-weight:600;font-size:13.5px}.field{display:flex;flex-direction:column;gap:4px}.field>span{font-size:12px;font-weight:600;color:var(--on-surface-variant)}.field input,.field select{border:1px solid var(--outline-variant);border-radius:10px;background:var(--background);padding:9px 12px;font-size:13.5px;color:var(--on-surface)}.splash{height:100%;display:grid;place-items:center;background:var(--background)}.splash svg{width:44px;height:44px;color:var(--primary);animation:splash-pulse 1.6s ease-in-out infinite}@keyframes splash-pulse{0%,to{opacity:1}50%{opacity:.35}}@media(prefers-reduced-motion:reduce){.splash svg{animation:none}}.register-wrap{width:min(640px,100%);display:flex;flex-direction:column;gap:16px}.register-card .head{padding:18px 20px 0}.register-card .head .title{font-size:17px;font-weight:700}.register-card .head .sub{font-size:12.5px;color:var(--on-surface-variant);margin-top:3px}.register-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 14px;padding:16px 20px}.register-foot{display:flex;align-items:center;gap:10px;padding:14px 20px;border-top:1px solid var(--surface-2);font-size:12px;color:var(--on-surface-variant)}.register-foot .grow{flex:1}.form-error{padding:0 20px 4px;color:#b3261e;font-size:12.5px}@media(max-width:560px){.register-grid{grid-template-columns:1fr}}.pending-card{width:min(460px,100%);padding:28px;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.pending-card .badge{width:52px;height:52px;border-radius:999px;background:var(--idle-container);display:grid;place-items:center}.pending-card .badge svg{width:24px;height:24px;color:var(--idle)}.pending-card .badge.rejected{background:var(--off-container)}.pending-card .badge.rejected svg{color:var(--off)}.pending-card .title{font-size:17px;font-weight:700}.pending-card .text{font-size:13px;color:var(--on-surface-variant);max-width:360px}.pending-card .text b{color:var(--on-surface)}.stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.stat-card{padding:16px;display:flex;flex-direction:column;gap:9px}.stat-card .label{font-size:12.5px;color:var(--on-surface-variant);font-weight:600}.stat-card .value{font-size:30px;font-weight:700;line-height:1}.stat-card .value .unit{font-size:14px;font-weight:500;color:var(--on-surface-variant)}.stat-card .chips{display:flex;gap:6px;min-height:20px}.empty-note{padding:16px;font-size:13px;color:var(--on-surface-variant)}.overview-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:16px;align-items:start}.head-link{font-size:12.5px;font-weight:600;color:var(--on-surface-variant);cursor:default}.card-head .grow{flex:1}.balance-block{padding:16px 16px 4px}.balance{font-size:34px;font-weight:700;line-height:1.1}.balance-sub{font-size:12.5px;color:var(--on-surface-variant);margin-top:4px}.credit{color:var(--ok);font-weight:600}.tx-list{display:flex;flex-direction:column;padding:8px 16px 12px}.tx-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--surface-2);font-size:13px}.tx-list .tx-row:first-child{border-top:0}.card>.tx-row{padding:10px 16px;border-top:1px solid var(--surface-2)}.card>.tx-row:nth-of-type(2){border-top:0}.tx-row .date{width:42px;flex:none;color:var(--on-surface-variant);font-size:12px}.tx-row .label{flex:1;min-width:0}.tx-row .amount{font-weight:600;white-space:nowrap}.tx-row .amount.credit{color:var(--ok)}.chip.expired{background:#f3dadc;color:#8f1e33}.expiring-row{display:flex;align-items:center;gap:12px;padding:10px 16px;border-top:1px solid var(--surface-2)}.expiring-row:first-of-type{border-top:0}.expiring-row .who{flex:1;min-width:0}.expiring-row .who .name{font-weight:600;font-size:13.5px}.expiring-row .who .meta{font-size:12px;color:var(--on-surface-variant)}.expiring-row .due{font-size:12.5px;color:var(--on-surface-variant);white-space:nowrap}.expiring-row .due.soon{color:var(--idle);font-weight:600}.expiring-row .due.expired{color:#8f1e33;font-weight:600}.device-row .dues{display:flex;flex-direction:column;gap:2px;align-items:flex-end}.due-line{font-size:12px}.due-line.soon{color:var(--idle);font-weight:600}.due-line.expired{color:#8f1e33;font-weight:600}.about-text{border:1px solid var(--outline-variant);border-radius:10px;background:var(--background);padding:9px 12px;font:inherit;font-size:13.5px;color:var(--on-surface);min-height:84px;resize:vertical}.terms-row{display:flex;align-items:center;gap:12px;border:1px solid var(--outline-variant);border-radius:12px;padding:12px 14px}.terms-row svg{width:20px;height:20px;color:var(--on-surface-variant);flex:none}.terms-row .who{flex:1;min-width:0}.terms-row .who .name{font-weight:600;font-size:13.5px}.terms-row .who .meta{font-size:12px;color:var(--on-surface-variant)}.asset-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;padding:16px}.asset-slot{display:flex;flex-direction:column;gap:7px}.upload-tile{height:110px;border:1.5px dashed var(--outline-variant);border-radius:12px;display:grid;place-items:center;color:var(--outline);font-size:12.5px;cursor:pointer;gap:4px}.upload-tile:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.upload-tile:disabled{cursor:default;opacity:.6}.upload-tile svg{width:22px;height:22px}.upload-tile.wide{height:auto;padding:18px;display:flex;align-items:center;justify-content:center;gap:8px}.asset-preview{position:relative;height:110px;border:1px solid var(--outline-variant);border-radius:12px;background:var(--background);display:grid;place-items:center;overflow:hidden}.asset-preview img{max-width:100%;max-height:100%;object-fit:contain}.asset-preview .asset-actions{position:absolute;inset:auto 0 0;display:flex;justify-content:center;gap:10px;padding:4px;background:color-mix(in srgb,var(--surface) 85%,transparent);opacity:0}.asset-preview:hover .asset-actions{opacity:1}.asset-name{font-size:12.5px;font-weight:600}.asset-size{font-size:11.5px;color:var(--on-surface-variant)}@media(max-width:1080px){.asset-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.asset-preview .asset-actions{opacity:1}}.q-check{width:17px;height:17px;flex:none;border-radius:4px;border:1.5px solid var(--outline);display:grid;place-items:center;font-size:11px;font-weight:700;color:var(--on-primary);cursor:pointer;padding:0}.q-check.checked{background:var(--primary);border-color:var(--primary)}span.q-check{border:0;cursor:default}.queue-card{display:flex;flex-direction:column;overflow:hidden;flex:1;min-height:0}.queue-toolbar{display:flex;align-items:center;gap:6px;padding:10px 14px;border-bottom:1px solid var(--outline-variant);flex-wrap:wrap}.queue-toolbar .imei-search{width:220px}.period-global{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--on-surface-variant)}.period-global select{border:1px solid var(--outline-variant);border-radius:999px;background:var(--background);padding:4px 10px;font-size:12px;font-weight:600}.queue-header{display:flex;align-items:center;gap:10px;padding:7px 14px;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--on-surface-variant);border-bottom:1px solid var(--outline-variant)}.queue-body{flex:1;overflow:auto;min-height:0}.queue-row{display:flex;align-items:center;gap:10px;padding:6px 14px;border-bottom:1px solid var(--surface-2);font-size:13px}.q-who{flex:1;min-width:0}.q-who .name{font-weight:600;font-size:13px}.q-who .meta,.queue-row .meta{font-size:11.5px;color:var(--on-surface-variant)}.q-who .mono,.mono{font-family:ui-monospace,Consolas,monospace}.q-date,.q-due{width:88px;flex:none;font-size:12.5px}.q-due.soon{color:var(--idle);font-weight:700}.q-due.expired{color:#b3261e;font-weight:700;font-size:12px}.q-services{width:252px;flex:none;display:flex;gap:4px;flex-wrap:wrap}.svc-chip{font-size:10.5px;font-weight:600;padding:3px 8px;border-radius:999px;background:var(--background);border:1px solid var(--outline-variant);color:var(--on-surface-variant);cursor:pointer}.svc-chip.active{background:var(--select-bg);border-color:var(--primary);color:var(--on-surface);font-weight:700}select.q-period{width:84px;flex:none;border:1px solid var(--outline-variant);border-radius:999px;background:var(--background);padding:3px 8px;font-size:11.5px;font-weight:600}.q-price{width:64px;flex:none;text-align:right;font-size:12.5px;font-weight:600}.q-actions{width:150px;flex:none;display:flex;justify-content:flex-end;align-items:center;gap:8px}.q-link{font-size:11.5px;font-weight:600;color:var(--on-surface-variant);cursor:pointer}.q-link:hover{color:var(--primary)}.snooze-date{border:1px solid var(--outline-variant);border-radius:8px;background:var(--background);padding:2px 6px;font-size:11.5px}.queue-foot{display:flex;align-items:center;gap:12px;padding:11px 14px;border-top:1px solid var(--outline-variant);background:var(--background);font-size:13px}.cart-row{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;border-top:1px solid var(--surface-2)}.cart-row:first-of-type{border-top:0}.cart-row .who{flex:1;min-width:0}.cart-row .who .name{font-weight:600;font-size:13.5px}.cart-row .who .meta{font-size:12px;color:var(--on-surface-variant)}.cart-row .qty{font-size:12.5px;color:var(--on-surface-variant)}.cart-row .price{font-weight:600}.cart-hw-add{display:flex;align-items:center;gap:8px;padding:12px 16px;border-top:1px dashed var(--outline-variant)}.cart-hw-add select,.cart-hw-add input{border:1px solid var(--outline-variant);border-radius:8px;background:var(--background);padding:6px 10px;font-size:12.5px}.cart-hw-add select{flex:1;min-width:0}.cart-foot{display:flex;flex-direction:column;gap:8px;padding:14px 16px;border-top:1px solid var(--outline-variant);background:var(--background)}.cart-foot .line{display:flex;align-items:center;gap:10px;font-size:13px}.cart-foot .negative{color:#b3261e}.cart-foot .meta{font-size:12px;color:var(--on-surface-variant)}.order-row{display:flex;align-items:center;gap:12px;padding:12px 16px;border-top:1px solid var(--surface-2)}.order-row:first-of-type{border-top:0}.order-row .who{flex:1;min-width:0}.order-row .who .name{font-weight:600;font-size:13.5px}.order-row .who .meta{font-size:12px;color:var(--on-surface-variant)}.order-row .price{font-weight:600}.optout{display:flex;align-items:center;gap:7px;width:100%;font-size:12px;color:var(--on-surface-variant);cursor:pointer}@media(max-width:1080px){.queue-header{display:none}.queue-row{flex-wrap:wrap;padding:10px 14px}.q-who{flex:1 1 60%}.q-date,.q-due{width:auto}.q-services{width:100%}.q-actions{width:auto;margin-left:auto}}.subtabs{display:inline-flex;gap:4px;background:var(--surface-2);border:1px solid var(--outline-variant);border-radius:999px;padding:3px}.subtab{padding:5px 13px;border-radius:999px;font-size:12.5px;font-weight:600;color:var(--on-surface-variant)}.subtab.active{background:var(--surface);color:var(--on-surface);box-shadow:0 1px 2px #1e1b1a1f}.price-note{padding:10px 16px 4px;font-size:12px;color:var(--on-surface-variant)}.price-row{display:grid;grid-template-columns:1fr 96px 58px 96px;gap:10px;align-items:center;padding:7px 16px;border-top:1px solid var(--surface-2);font-size:13px}.price-row:first-of-type{border-top:0}.price-row .label{min-width:0}.price-row .label .hint{color:var(--outline);font-size:11.5px;margin-left:6px}.price-row input.money,.price-row select{border:1px solid var(--outline-variant);border-radius:8px;background:var(--background);padding:5px 8px;font-size:12.5px;text-align:right;width:100%}.price-row select{text-align:left}.price-row input.money.wide{text-align:left;grid-column:1 / 3}.price-row .iact{border:0;background:none;cursor:pointer;color:var(--on-surface-variant);border-radius:6px;padding:2px 6px}.price-row .iact.danger:hover{background:var(--off-container);color:#8f1e33}.card-head .iact{border:0;background:none;cursor:pointer;color:var(--primary);font-size:12.5px;font-weight:600}.assign-row{display:flex;align-items:center;gap:12px;padding:9px 16px;border-top:1px solid var(--surface-2);font-size:13px}.assign-row:first-of-type{border-top:0}.assign-row .name{flex:1;min-width:0;font-weight:600}.assign-row select{border:1px solid var(--outline-variant);border-radius:8px;background:var(--background);padding:5px 8px;font-size:12.5px}.topup-form{display:flex;flex-direction:column;gap:12px;padding:16px}.topup-row{display:grid;grid-template-columns:1fr 1.4fr;gap:12px}.topup-foot{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--on-surface-variant)}.topup-foot .grow{flex:1}@media(max-width:900px){.overview-grid{grid-template-columns:1fr}}.modal-scrim{position:fixed;inset:0;z-index:50;background:#00000059;display:grid;place-items:center;padding:16px}.modal{background:var(--surface);border-radius:16px;box-shadow:var(--shadow);width:100%;max-width:560px;padding:16px 18px}.modal-head{font-weight:700;font-size:15px;margin-bottom:12px}.modal-foot{display:flex;align-items:center;gap:10px;padding-top:14px;margin-top:14px;border-top:1px solid var(--surface-2);font-size:12.5px;color:var(--on-surface-variant)}.modal-foot .grow{flex:1}.imei-search{display:flex;align-items:center;gap:8px;width:250px;padding:8px 14px;border-radius:999px;background:var(--surface);border:1px solid var(--outline-variant)}.imei-search svg{width:15px;height:15px;color:var(--outline);flex:none}.imei-search input{border:0;background:none;outline:none;font-size:13px;width:100%;color:var(--on-surface)}.imei-search input::placeholder{color:var(--outline)}.table-card{overflow:auto;flex:1;min-height:0}.data-table{width:100%;border-collapse:collapse;font-size:13px}.data-table th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--on-surface-variant);padding:11px 14px;border-bottom:1px solid var(--outline-variant);white-space:nowrap}.data-table td{padding:11px 14px;border-bottom:1px solid var(--surface-2);vertical-align:top}.data-table .mono{font-family:ui-monospace,Consolas,monospace;font-size:12.5px}.data-table .dim{color:var(--outline)}.data-table .muted{color:var(--on-surface-variant)}.data-table .sub{font-family:ui-monospace,Consolas,monospace;font-size:11.5px;color:var(--outline)}.data-table .row-actions{visibility:hidden;white-space:nowrap}.data-table tr:hover .row-actions,.data-table tr.editing .row-actions{visibility:visible}.data-table .iact{border:0;background:none;cursor:pointer;color:var(--on-surface-variant);font-size:13px;padding:2px 6px;border-radius:6px}.data-table .iact:hover{background:var(--surface-2)}.data-table .iact.danger:hover{background:var(--off-container);color:#8f1e33}.data-table td input{width:100%;border:1px solid var(--outline-variant);border-radius:8px;background:var(--background);padding:4px 8px;font-size:12.5px}.table-foot{display:flex;align-items:center;padding:11px 14px;font-size:12.5px;color:var(--on-surface-variant)}.table-foot .grow{flex:1}.imei-textarea{width:100%;min-height:128px;border:1px solid var(--outline-variant);border-radius:12px;background:var(--background);padding:10px 12px;font-family:ui-monospace,Consolas,monospace;font-size:12.5px;line-height:1.6;color:var(--on-surface);resize:vertical}.imei-hint{font-size:12.5px;color:var(--on-surface-variant)}.imei-hint code{font-family:ui-monospace,Consolas,monospace;background:var(--surface-2);border-radius:6px;padding:1px 6px}.drop-zone{display:grid;place-items:center;gap:4px;padding:18px;border:1.5px dashed var(--outline-variant);border-radius:12px;color:var(--on-surface-variant);font-size:12.5px;margin-top:12px}.drop-zone.over{border-color:var(--primary);color:var(--primary)}.drop-zone svg{width:20px;height:20px;color:var(--outline)}.bulk-errors{margin-top:10px;font-size:12.5px;color:#b3261e}.dialog-fields{display:flex;flex-direction:column;gap:12px}.info-box{display:flex;gap:10px;align-items:flex-start;background:var(--surface-2);border-radius:12px;padding:11px 13px;font-size:12.5px;color:var(--on-surface-variant)}.info-box b{color:var(--on-surface)}.info-box svg{width:17px;height:17px;flex:none;margin-top:1px}.section-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--on-surface-variant);margin-top:4px;padding-top:10px;border-top:1px solid var(--surface-2)}.imei-picker{display:flex;flex-direction:column;gap:8px}.imei-picker .imei-search{width:100%}.picker-list{border:1px solid var(--outline-variant);border-radius:12px;overflow:hidden auto;max-height:180px}.picker-row{position:relative;display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:10px 14px;border-top:1px solid var(--surface-2);font-size:12.5px}.picker-row:first-child{border-top:0}.picker-row:hover{background:var(--surface-2)}.picker-row .mono{font-family:ui-monospace,Consolas,monospace}.picker-row .model{color:var(--on-surface-variant)}.picker-row .grow{flex:1}.picker-row .dim{color:var(--outline);font-size:12px}.picker-row.selected{background:var(--select-bg)}.picker-row.selected .mono{font-weight:600}.picker-row.selected:before{content:"";position:absolute;left:5px;top:10px;bottom:10px;width:3.5px;border-radius:999px;background:var(--primary)}.picker-empty{padding:14px;font-size:12.5px;color:var(--on-surface-variant)}.zak-layout{display:flex;gap:16px;flex:1;min-height:0;align-items:flex-start}.zak-master{width:350px;flex:none;overflow:hidden auto;max-height:100%;display:flex;flex-direction:column}.zak-row{position:relative;display:grid;grid-template-columns:40px 1fr auto;gap:12px;align-items:center;padding:11px 16px;border-top:1px solid var(--surface-2);text-align:left}.zak-row:first-child{border-top:0}.zak-row:hover{background:var(--surface-2)}.zak-row.selected{background:var(--select-bg)}.zak-row.selected:before{content:"";position:absolute;left:6px;top:12px;bottom:12px;width:3.5px;border-radius:999px;background:var(--primary)}.zak-avatar{width:34px;height:34px;border-radius:999px;background:var(--surface-3);color:var(--on-surface-variant);display:grid;place-items:center;font-weight:700;font-size:13px;flex:none}.zak-avatar.big{width:44px;height:44px;font-size:16px}.zak-row .who,.zak-head .who{min-width:0}.zak-row .who .name{display:block;font-weight:600;font-size:13.5px}.zak-row .who .mail{display:block;font-size:12px;color:var(--on-surface-variant);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.zak-row .count{font-size:12px;color:var(--on-surface-variant)}.zak-detail{flex:1;min-width:0;display:flex;flex-direction:column;gap:16px}.zak-head{display:flex;align-items:center;gap:12px;padding:16px;flex-wrap:wrap}.zak-head .who{flex:1}.zak-head .who .name{font-weight:700;font-size:16px}.zak-head .who .mail{font-size:12.5px;color:var(--on-surface-variant)}.zak-back{display:none;font-size:18px;color:var(--on-surface-variant);padding:4px 8px;border-radius:8px}.zak-back:hover{background:var(--surface-2)}.device-row{display:flex;align-items:center;gap:12px;padding:12px 16px;border-top:1px solid var(--surface-2)}.device-row:nth-of-type(2){border-top:0}.device-row .who{flex:1;min-width:0}.device-row .who .name{font-weight:600;font-size:13.5px}.device-row .who .meta{font-size:12px;color:var(--on-surface-variant)}.device-row .mono{font-family:ui-monospace,Consolas,monospace}@media(max-width:1080px){.zak-layout{display:block}.zak-master{width:100%}.zak-page.has-selection .zak-master{display:none}.zak-page:not(.has-selection) .zak-detail{display:none}.zak-back{display:inline-block}}@media(min-width:1080.02px){.zak-back{display:none}}.admin-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:16px;flex:1;min-height:0;align-items:start}.admin-col{display:flex;flex-direction:column;gap:16px;min-height:0}.request-row{display:flex;flex-direction:column;gap:10px;padding:14px 16px;border-bottom:1px solid var(--surface-2)}.request-row .top{display:flex;align-items:center;gap:10px}.request-row .top .who{flex:1;min-width:0}.request-row .top .who .name{font-weight:700;font-size:14px}.request-row .top .who .meta{font-size:12px;color:var(--on-surface-variant)}.request-row .bottom{display:flex;align-items:center;gap:10px;font-size:12.5px;color:var(--on-surface-variant)}.request-row .bottom .grow{flex:1}.request-row .btn{padding:6px 13px;font-size:12.5px}.partner-row{display:flex;align-items:center;gap:10px;padding:12px 16px;border-top:1px solid var(--surface-2)}.partner-row:first-of-type{border-top:0}.partner-row .who{flex:1;min-width:0}.partner-row .who .name{font-weight:600;font-size:13px;color:var(--on-surface-variant)}.partner-row .who .meta{font-size:12px;color:var(--outline)}@media(max-width:900px){.admin-grid,.stat-grid{grid-template-columns:1fr}}.imei-cards{display:none}@media(max-width:1080px){.imei-desktop{display:none}.imei-cards{display:flex;flex-direction:column;gap:10px}}.imei-card{padding:12px 14px;display:flex;flex-direction:column;gap:8px}.imei-card .top{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:8px;border-bottom:1px solid var(--surface-2)}.imei-card .top .imei{font-size:15px;font-weight:700}.imei-card .mono{font-family:ui-monospace,Consolas,monospace}.imei-card .kv{display:grid;grid-template-columns:104px 1fr;gap:10px;align-items:baseline;font-size:13px}.imei-card .kv .k{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--on-surface-variant)}.imei-card .kv .sub{font-family:ui-monospace,Consolas,monospace;font-size:11.5px;color:var(--outline)}.imei-card .kv .dim{color:var(--outline)}.imei-card .kv input{border:1px solid var(--outline-variant);border-radius:8px;background:var(--background);padding:6px 10px;font-size:13px;width:100%}.imei-card .actions{display:flex;justify-content:flex-end;gap:8px;padding-top:2px}.imei-card .actions .btn{padding:6px 13px;font-size:12.5px}.imei-cards-foot{font-size:12.5px;color:var(--on-surface-variant);padding:2px 4px 10px}@media(max-width:700px){.imei-search{width:100%;order:5}.request-row .bottom,.request-row .top{flex-wrap:wrap}}
