:root{--page:#f3f5f7;--surface:#fff;--subtle:#f7f9fb;--ink:#17212b;--secondary:#566270;--muted:#7b8794;--border:#d9e0e7;--action:#1769aa;--action-hover:#11558c;--teal:#287c8e;--success:#1f7a4d;--warning:#a96708;--danger:#bc3434}*{box-sizing:border-box}html,body{background:var(--page);min-height:100%;color:var(--ink);letter-spacing:0;margin:0;font-family:PingFang SC,Microsoft YaHei,sans-serif}button,input{font:inherit}button{letter-spacing:0}.login-page{background:var(--surface);grid-template-columns:minmax(360px,.9fr) minmax(520px,1.1fr);min-height:100vh;display:grid}.login-brand{color:#fff;background:#16384a;flex-direction:column;justify-content:center;padding:9vh 8vw;display:flex;position:relative;overflow:hidden}.login-brand:before{content:"";opacity:.18;background-image:linear-gradient(#ffffff29 1px,#0000 1px),linear-gradient(90deg,#ffffff1f 1px,#0000 1px);background-size:46px 46px;position:absolute;inset:0}.login-brand:after{content:"";background:linear-gradient(90deg,#287c8e 0 36%,#e1a534 36% 54%,#d8e3e8 54% 100%);width:100%;height:8px;position:absolute;bottom:0;left:0}.login-brand>*{z-index:1;position:relative}.brand-mark{border:1px solid #ffffff85;place-items:center;width:48px;height:48px;margin-bottom:42px;display:grid}.brand-code{color:#a9cbd7;margin:0 0 18px;font-family:DIN Alternate,sans-serif;font-size:12px}.login-brand h1{margin:0;font-size:clamp(38px,4vw,62px);font-weight:650;line-height:1.12}.brand-copy{color:#d6e2e7;max-width:420px;margin:28px 0 0;font-size:15px;line-height:1.8}.brand-status{color:#c3d9df;align-items:center;gap:9px;margin-top:64px;font-size:13px;display:flex}.brand-status span,.local-badge span{background:#55c087;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #55c08724}.login-panel{place-items:center;padding:48px;display:grid}.login-box{width:min(420px,100%)}.section-kicker{color:var(--action);margin-bottom:8px;font-size:12px;font-weight:700}.login-box h2{margin:0;font-size:30px;line-height:1.3}.login-intro{color:var(--secondary);margin:10px 0 30px;font-size:14px}.login-form{gap:20px;display:grid}.login-form label>span{margin-bottom:8px;font-size:13px;font-weight:650;display:block}.login-form input{border:1px solid var(--border);width:100%;height:48px;color:var(--ink);background:#fff;border-radius:4px;outline:none;padding:0 13px}.login-form input:focus{border-color:var(--action);box-shadow:0 0 0 3px #1769aa1f}.password-field{position:relative}.password-field input{padding-right:48px}.icon-button{width:40px;height:40px;color:var(--secondary);cursor:pointer;background:0 0;border:0;border-radius:4px;place-items:center;display:grid}.password-field .icon-button{position:absolute;top:4px;right:4px}.icon-button:hover{background:var(--subtle);color:var(--ink)}.primary-button{background:var(--action);color:#fff;cursor:pointer;border:0;border-radius:4px;justify-content:center;align-items:center;gap:9px;height:48px;padding:0 18px;font-weight:650;display:flex}.primary-button:hover{background:var(--action-hover)}.primary-button:disabled{opacity:.65;cursor:wait}.form-error{color:var(--danger);background:#fce8e8;border-radius:4px;margin:-6px 0 0;padding:10px 12px;font-size:13px}.demo-account{border-left:3px solid var(--teal);background:var(--subtle);color:var(--secondary);gap:3px;margin-top:26px;padding:14px 16px;font-size:12px;display:grid}.demo-account strong{color:var(--ink);margin-bottom:3px}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.admin-shell{grid-template-columns:220px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#fff;background:#173441;flex-direction:column;height:100vh;min-height:100vh;padding:18px 12px;display:flex;position:sticky;top:0}.sidebar-brand{border-bottom:1px solid #ffffff1f;align-items:center;gap:10px;height:56px;padding:0 10px 16px;font-weight:650;display:flex}.sidebar-brand>span{border:1px solid #ffffff59;place-items:center;width:34px;height:34px;display:grid}.sidebar-brand div{display:grid}.sidebar-brand small{color:#8db2bf;margin-top:2px;font-family:DIN Alternate,sans-serif;font-size:9px}.side-nav{gap:4px;min-height:0;margin-top:20px;display:grid;overflow-y:auto}.side-nav button{color:#b9cbd2;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:4px;grid-template-columns:22px 1fr 16px;align-items:center;width:100%;height:42px;padding:0 11px;display:grid}.side-nav button:hover{color:#fff;background:#ffffff12}.side-nav button.active{color:#fff;background:#24586a}.side-nav a{color:#b9cbd2;text-align:left;background:0 0;border:0;border-radius:4px;grid-template-columns:22px 1fr 16px;align-items:center;width:100%;height:42px;padding:0 11px;text-decoration:none;display:grid}.side-nav a:hover{color:#fff;background:#ffffff12}.side-nav a.active{color:#fff;background:#24586a}.local-badge{color:#aac2ca;border-top:1px solid #ffffff1a;align-items:center;gap:9px;margin-top:auto;padding:12px;font-size:12px;display:flex}.admin-main{min-width:0}.topbar{border-bottom:1px solid var(--border);z-index:4;background:#fff;justify-content:space-between;align-items:center;height:56px;padding:0 24px;display:flex;position:sticky;top:0}.topbar>div:first-child{align-items:center;gap:18px;display:flex}.topbar>div:first-child span{color:var(--muted);font-size:12px}.user-menu{align-items:center;gap:9px;display:flex}.user-menu>div:nth-child(2){display:grid}.user-menu strong{font-size:13px}.user-menu span{color:var(--muted);font-size:11px}.avatar{color:#1d6171;background:#e4f0f3;border-radius:50%;place-items:center;width:32px;height:32px;font-weight:700;display:grid}.topbar-logout{margin-left:6px}.workspace{padding:28px 24px 48px}.page-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px;display:flex}.page-heading h1{margin:0;font-size:26px}.page-heading p{color:var(--secondary);margin:8px 0 0;font-size:13px}.system-health{min-width:230px;color:var(--success);background:#edf7f1;border:1px solid #cfe4d8;align-items:center;gap:11px;padding:12px 14px;display:flex}.system-health div{display:grid}.system-health strong{font-size:13px}.system-health span{color:#527060;margin-top:2px;font-size:11px}.foundation-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.foundation-grid article{border:1px solid var(--border);background:#fff;border-radius:6px;align-items:flex-start;gap:13px;min-height:118px;padding:17px;display:flex}.foundation-grid article>div{gap:3px;min-width:0;display:grid}.foundation-grid small{color:var(--muted)}.foundation-grid strong{font-family:DIN Alternate,PingFang SC,sans-serif;font-size:24px}.foundation-grid p{color:var(--secondary);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:12px;overflow:hidden}.metric-icon{border-radius:4px;place-items:center;width:38px;height:38px;display:grid}.metric-icon.blue{color:var(--action);background:#e8f2fa}.metric-icon.teal{color:var(--teal);background:#e7f2f4}.metric-icon.amber{color:var(--warning);background:#fff3db}.metric-icon.green{color:var(--success);background:#e5f3eb}.workband{border:1px solid var(--border);background:#fff;margin-top:18px}.workband-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;min-height:68px;padding:14px 18px;display:flex}.workband-heading h2{margin:0;font-size:16px}.workband-heading p{color:var(--muted);margin:4px 0 0;font-size:12px}.workband-heading>span{color:var(--secondary);font-size:12px}.station-row{border-top:1px solid #edf0f3;grid-template-columns:2fr 1fr 100px 1fr;align-items:center;gap:12px;min-height:50px;padding:0 18px;font-size:13px;display:grid}.station-row.header{min-height:40px;color:var(--muted);background:var(--subtle);border-top:0;font-size:12px}.station-row code{color:var(--secondary);background:0 0;font-family:DIN Alternate,monospace}.status{border-radius:4px;width:fit-content;padding:3px 8px;font-size:12px}.status.success{color:var(--success);background:#e5f3eb}.next-stage{min-height:68px;color:var(--warning);background:#fff9ee;border:1px solid #ead9b9;align-items:center;gap:12px;margin-top:18px;padding:14px 18px;display:flex}.next-stage div{display:grid}.next-stage strong{font-size:13px}.next-stage p{color:#735d36;margin:3px 0 0;font-size:12px}.resource-heading{align-items:center}.resource-actions{align-items:center;gap:12px;display:flex}.refresh-state{color:var(--muted);align-items:center;gap:7px;font-size:12px;display:flex}.refresh-state i{background:#55c087;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #55c08724}.refresh-button{border:1px solid var(--border);height:36px;color:var(--action);cursor:pointer;background:#fff;border-radius:4px;align-items:center;gap:7px;padding:0 12px;font-size:12px;font-weight:650;display:flex}.refresh-button:hover{background:#eef6fc;border-color:#b6d3e9}.refresh-button:disabled{opacity:.6;cursor:wait}.resource-error{min-height:48px;color:var(--danger);background:#fff0f0;border:1px solid #efc5c5;align-items:center;gap:10px;margin-bottom:14px;padding:12px 14px;font-size:13px;display:flex}.resource-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.resource-summary article{border:1px solid var(--border);background:#fff;border-radius:6px;align-items:flex-start;gap:13px;min-height:118px;padding:17px;display:flex}.resource-summary article>div{gap:3px;min-width:0;display:grid}.resource-summary small{color:var(--muted)}.resource-summary strong{font-family:DIN Alternate,PingFang SC,sans-serif;font-size:24px}.resource-summary p{color:var(--secondary);margin:0;font-size:12px}.metric-icon.red{color:var(--danger);background:#fbeaea}.resource-table-card{border:1px solid var(--border);background:#fff;margin-top:18px;overflow:hidden}.resource-row{min-height:54px;color:var(--secondary);border-top:1px solid #edf0f3;grid-template-columns:minmax(220px,2fr) 120px 120px 90px 90px;align-items:center;gap:12px;padding:0 18px;font-size:13px;display:grid}.resource-row strong{color:var(--ink)}.resource-row b{color:var(--action);font-family:DIN Alternate,PingFang SC,sans-serif;font-size:16px}.resource-row--header{min-height:40px;color:var(--muted);background:var(--subtle);border-top:0;font-size:12px}.resource-row--link{color:var(--secondary);cursor:pointer;text-decoration:none}.resource-row--link:hover{background:#f4f8fb}.resource-status{border-radius:4px;width:fit-content;padding:3px 8px;font-size:12px}.resource-status.normal{color:var(--success);background:#e5f3eb}.resource-status.bad{color:var(--danger);background:#fce8e8}.resource-empty{color:var(--muted);text-align:center;padding:48px 18px;font-size:13px}.notice-workspace{max-width:1380px}.notice-page-title{align-items:flex-start;gap:14px;margin-bottom:22px;display:flex}.notice-page-title>span{width:44px;height:44px;color:var(--action);background:#e8f2fa;border-radius:8px;place-items:center;display:grid}.notice-page-title h1{margin:0;font-size:26px}.notice-page-title p:last-child{color:var(--secondary);margin:7px 0 0;font-size:13px}.notice-console{grid-template-columns:minmax(330px,.72fr) minmax(500px,1.28fr);align-items:start;gap:18px;display:grid}.notice-compose,.notice-history{border:1px solid var(--border);background:#fff;border-radius:8px}.notice-compose{padding:20px}.notice-compose-head{color:var(--action);gap:10px;display:flex}.notice-compose h2,.notice-history h2{color:var(--ink);margin:0;font-size:16px}.notice-compose-head p,.notice-history p{color:var(--muted);margin:4px 0 0;font-size:12px}.notice-compose form{grid-template-columns:1fr 1fr;gap:14px;margin-top:20px;display:grid}.notice-compose label{color:var(--secondary);gap:7px;font-size:12px;font-weight:650;display:grid}.notice-compose input,.notice-compose select,.notice-compose textarea{border:1px solid var(--border);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:4px;outline:none;padding:9px 10px;font-size:13px}.notice-compose textarea{resize:vertical;min-height:114px;line-height:1.55}.notice-compose input:focus,.notice-compose select:focus,.notice-compose textarea:focus{border-color:var(--action);box-shadow:0 0 0 3px #1769aa1a}.notice-wide{grid-column:1/-1}.notice-send{color:#fff;background:var(--action);cursor:pointer;border:0;border-radius:4px;grid-column:1/-1;justify-content:center;align-items:center;gap:7px;min-height:40px;font-size:13px;font-weight:650;display:flex}.notice-send:hover{background:var(--action-hover)}.notice-send:disabled{opacity:.55;cursor:wait}.notice-message{color:var(--success);background:#edf7f1;margin:14px 0 0;padding:10px;font-size:12px;line-height:1.5}.notice-history{overflow:hidden}.notice-history-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;min-height:72px;padding:14px 18px;display:flex}.notice-history-head button{border:1px solid var(--border);color:var(--secondary);cursor:pointer;background:#fff;border-radius:4px;align-items:center;gap:6px;padding:7px 10px;font-size:12px;display:flex}.terminal-notice{border-bottom:1px solid #edf0f3;padding:17px 18px}.terminal-notice:last-child{border-bottom:0}.terminal-notice--urgent{border-left:3px solid var(--danger);padding-left:15px}.terminal-notice-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.terminal-notice-head>div{align-items:center;gap:8px;display:flex}.terminal-notice-head span{color:var(--action);background:#e8f2fa;border-radius:4px;padding:3px 7px;font-size:11px;font-weight:650}.terminal-notice--urgent .terminal-notice-head span{color:var(--danger);background:#fce8e8}.terminal-notice h3{color:var(--ink);margin:0;font-size:15px}.terminal-notice time{color:var(--muted);white-space:nowrap;font-size:11px}.terminal-notice>p{color:var(--secondary);margin:10px 0;font-size:13px;line-height:1.65}.terminal-notice-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px 16px;font-size:12px;display:flex}.terminal-notice-meta strong{color:var(--success);align-items:center;gap:4px;display:flex}.receipt-list{flex-wrap:wrap;gap:7px;margin-top:12px;display:flex}.receipt-list>span{border-radius:4px;align-items:center;gap:4px;padding:5px 7px;font-size:11px;display:inline-flex}.receipt-list .is-read{color:var(--success);background:#e5f3eb}.receipt-list .is-unread{color:var(--warning);background:#fff3db}.notice-empty{color:var(--muted);text-align:center;padding:64px 18px;font-size:13px}.notice-message--error{color:var(--danger);background:#fff0f0}.movement-config-panel{margin-top:18px}.movement-option-manager{border:1px solid var(--border);background:var(--subtle);border-radius:5px;grid-template-columns:1fr 1fr;gap:16px;margin-top:14px;padding:12px;display:grid}.movement-option-manager>div>strong{color:var(--secondary);font-size:12px;display:block}.movement-option-list{flex-wrap:wrap;align-items:center;gap:7px;margin-top:8px;display:flex}.movement-option-list>span{color:var(--action);background:#fff;border:1px solid #cfe1ef;border-radius:4px;align-items:center;gap:5px;padding:4px 7px;font-size:12px;display:inline-flex}.movement-option-list>span button{width:16px;height:16px;color:var(--danger);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:inline-grid}.movement-option-list input{border:1px solid var(--border);border-radius:4px;width:120px;padding:5px 7px;font-size:12px}.movement-option-list>button{border:1px solid var(--border);color:var(--action);cursor:pointer;background:#fff;border-radius:4px;align-items:center;gap:3px;padding:5px 8px;font-size:11px;display:inline-flex}.movement-all-stations{margin-top:18px}.movement-station-group{border:1px solid var(--border);background:#fff;border-radius:6px;margin:14px 0 0;overflow:hidden}.movement-station-group-head{border-bottom:1px solid var(--border);background:#f7fafc;justify-content:space-between;align-items:center;padding:13px 16px;display:flex}.movement-station-group-head>div{align-items:baseline;gap:10px;display:flex}.movement-station-group-head strong{color:var(--ink);font-size:15px}.movement-station-group-head span{color:var(--muted);font-size:11px}.movement-station-group .movement-route-table,.movement-station-group .movement-record-table{border:0;border-radius:0}.movement-station-group .movement-record-table{border-top:1px solid var(--border)}.movement-station-group .movement-card-head{border-top:0}.notice-station-picker{border:1px solid var(--border);background:var(--subtle);border-radius:4px;min-width:0;margin:0;padding:12px}.notice-station-picker legend{color:var(--secondary);padding:0 3px;font-size:12px;font-weight:650}.notice-station-picker-head{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;font-size:11px;display:flex}.notice-station-picker-head>div{gap:6px;display:flex}.notice-station-picker-head button{border:1px solid var(--border);color:var(--action);font:inherit;cursor:pointer;background:#fff;border-radius:4px;padding:4px 8px;font-size:11px}.notice-station-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;margin-top:10px;display:grid}.notice-station-list label{min-width:0;color:var(--secondary);cursor:pointer;align-items:center;gap:6px;font-size:12px;font-weight:500;display:flex}.notice-station-list input{width:auto;accent-color:var(--action);margin:0}.notice-station-list span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.notice-recipient-picker{border:1px solid var(--border);background:var(--subtle);border-radius:4px;padding:12px}.notice-recipient-head{color:var(--secondary);justify-content:space-between;align-items:center;font-size:12px;font-weight:650;display:flex}.notice-recipient-head button{border:1px solid var(--border);color:var(--action);cursor:pointer;background:#fff;border-radius:4px;margin-left:6px;padding:4px 8px;font-size:11px}.notice-recipient-list{flex-wrap:wrap;gap:8px 14px;margin-top:10px;display:flex}.notice-recipient-list label{color:var(--secondary);grid-template-columns:none;align-items:center;gap:5px;font-size:12px;font-weight:500;display:inline-flex}.notice-recipient-list input{width:auto}.notice-recipient-list small{color:var(--muted)}.receipt-entry{border-radius:5px;margin-top:9px;padding:10px}.receipt-entry>div:first-child{justify-content:space-between;align-items:center;gap:8px;display:flex}.receipt-entry em{font-style:normal;font-weight:650}.receipt-entry small{color:var(--muted);margin-top:5px;font-size:11px;display:block}.receipt-entry p{color:var(--secondary);white-space:pre-wrap;margin:7px 0 0;font-size:12px;line-height:1.55}.receipt-entry .receipt-return-reason{color:var(--danger)}.receipt-actions{gap:6px;margin-top:9px;display:flex}.receipt-actions button{border:1px solid var(--border);color:var(--action);cursor:pointer;background:#fff;border-radius:4px;padding:5px 8px;font-size:11px}.notice-overdue-text{color:var(--danger)!important}.receipt-image-links{flex-wrap:wrap;gap:6px;margin-top:7px;display:flex}.receipt-image-links a{color:var(--action);font-size:11px;text-decoration:underline}.notice-record-list .terminal-notice{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:#fff;border:0;border-bottom:1px solid #edf0f3;display:block}.notice-record-list .terminal-notice--urgent{border-left:3px solid var(--danger)}.notice-record-list .terminal-notice:hover,.notice-record-list .terminal-notice:focus-visible{background:#f7fbfe;outline:0}.terminal-notice-meta em{color:var(--action);align-items:center;gap:4px;margin-left:auto;font-size:11px;font-style:normal;font-weight:650;display:inline-flex}.notice-detail-overlay{z-index:40;background:#0f192294;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.notice-detail-dialog{background:#fff;border-radius:8px;width:min(680px,100%);max-height:calc(100vh - 48px);overflow-y:auto;box-shadow:0 20px 60px #09172342}.notice-detail-dialog>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:18px;padding:20px 22px;display:flex}.notice-detail-dialog>header>div{min-width:0}.notice-detail-dialog header span{color:var(--action);background:#e8f2fa;border-radius:4px;padding:4px 7px;font-size:11px;font-weight:650;display:inline-block}.notice-detail-dialog header span.is-urgent{color:var(--danger);background:#fce8e8}.notice-detail-dialog h2{color:var(--ink);margin:10px 0 0;font-size:21px}.notice-detail-dialog header p{color:var(--muted);margin:7px 0 0;font-size:12px}.notice-detail-dialog header button{border:1px solid var(--border);width:32px;height:32px;color:var(--secondary);cursor:pointer;background:#fff;border-radius:4px;flex:none;place-items:center;padding:0;display:grid}.notice-detail-content{border-left:3px solid var(--action);background:var(--subtle);margin:20px 22px 0;padding:16px}.notice-detail-content span{color:var(--muted);font-size:11px}.notice-detail-content p{color:var(--secondary);white-space:pre-wrap;word-break:break-word;margin:8px 0 0;font-size:14px;line-height:1.75}.notice-detail-receipts{padding:20px 22px 24px}.notice-detail-receipts>div:first-child{justify-content:space-between;align-items:center;gap:12px;display:flex}.notice-detail-receipts h3{color:var(--ink);margin:0;font-size:14px}.notice-detail-receipts strong{color:var(--success);align-items:center;gap:5px;font-size:12px;display:inline-flex}.detail-topbar{min-height:40px;color:var(--ink);grid-template-columns:110px 1fr 60px;align-items:center;gap:12px;margin:-4px 0 14px;display:grid}.detail-topbar a{color:var(--secondary);align-items:center;gap:6px;font-size:13px;font-weight:650;text-decoration:none;display:flex}.detail-topbar strong{font-size:18px}.detail-refresh{color:var(--secondary);cursor:pointer;background:0 0;border:0;justify-self:end;font-weight:650}.detail-refresh:disabled{opacity:.6;cursor:wait}.station-detail-heading{border:1px solid var(--border);background:#fff;border-radius:14px;padding:18px}.station-detail-heading h1{margin:0;font-size:19px}.station-detail-heading p{color:var(--muted);margin:6px 0 0;font-size:12px}.detail-kpi-grid{grid-template-columns:1fr 1fr;gap:12px;margin-top:12px;display:grid}.detail-kpi{color:#fff;border-radius:14px;min-height:96px;padding:15px}.detail-kpi--blue{background:#09628e}.detail-kpi--green{background:#08745d}.detail-kpi small{opacity:.82;font-size:12px;display:block}.detail-kpi strong{margin-top:6px;font-family:DIN Alternate,PingFang SC,sans-serif;font-size:25px;display:block}.detail-kpi em{font-family:PingFang SC,Microsoft YaHei,sans-serif;font-size:12px;font-style:normal;font-weight:400}.detail-band{border:1px solid var(--border);background:#fff;border-radius:14px;margin-top:12px;padding:15px}.detail-band-title{justify-content:space-between;align-items:center;display:flex}.detail-band-title h2{align-items:center;gap:6px;margin:0;font-size:15px;display:flex}.detail-band-title span{color:var(--muted);font-size:12px}.detail-band>p{color:var(--muted);margin:6px 0 0;font-size:12px}.detail-list-band{padding:0;overflow:hidden}.detail-list-band .detail-band-title{border-bottom:1px solid var(--border);padding:15px}.drone-row{border-bottom:1px solid #edf0f3;grid-template-columns:1fr 110px 60px;align-items:center;gap:10px;min-height:64px;padding:0 15px;font-size:12px;display:grid}.drone-row:last-child{border-bottom:0}.drone-row>div{gap:4px;display:grid}.drone-row strong{color:var(--ink);font-family:DIN Alternate,PingFang SC,sans-serif;font-size:16px}.drone-row small,.drone-row>span{color:var(--muted)}.drone-status{border-radius:4px;justify-self:end;padding:4px 7px;font-size:11px;font-weight:650}.drone-status--idle{color:var(--success);background:#e5f3eb}.drone-status--locked{color:var(--warning);background:#fff3db}.drone-status--in_flight{color:var(--action);background:#e8f2fa}.drone-status--maintenance{color:var(--danger);background:#fce8e8}.battery-grid{grid-template-columns:repeat(4,1fr);gap:10px;margin-top:14px;display:grid}.battery-cell{background:var(--subtle);border-radius:8px;align-content:center;gap:6px;min-height:76px;padding:12px;display:grid}.battery-cell strong{font-family:DIN Alternate,PingFang SC,sans-serif;font-size:23px}.battery-cell span{color:var(--muted);font-size:12px}.battery-cell--blue strong{color:var(--action)}.battery-cell--green strong{color:var(--success)}.battery-cell--orange strong{color:var(--warning)}.battery-cell--red strong{color:var(--danger)}.issues-heading{justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:22px;display:flex}.issues-heading h1{margin:0;font-size:26px}.issues-heading p:last-child{color:var(--secondary);margin:7px 0 0;font-size:13px}.record-tools{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.record-tools label{color:var(--secondary);align-items:center;gap:7px;font-size:12px;font-weight:650;display:inline-flex}.record-tools input{border:1px solid var(--border);height:32px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:0 8px;font-size:12px}.record-tools button{border:1px solid var(--border);min-height:32px;color:var(--secondary);cursor:pointer;background:#fff;border-radius:4px;justify-content:center;align-items:center;gap:6px;padding:7px 10px;font-size:12px;display:inline-flex}.record-tools .record-export{color:#fff;border-color:var(--action);background:var(--action)}.record-tools .record-export:disabled{opacity:.45;cursor:not-allowed}.issues-layout{grid-template-columns:minmax(320px,.72fr) minmax(500px,1.28fr);align-items:start;gap:18px;display:grid}.issue-list,.issue-detail{border:1px solid var(--border);background:#fff;border-radius:8px;overflow:hidden}.issue-list-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;min-height:68px;padding:14px 18px;display:flex}.issue-list-head h2,.issue-detail h2{color:var(--ink);margin:0;font-size:16px}.issue-list-head span{color:var(--muted);font-size:12px}.issue-list-item{width:100%;min-height:78px;color:var(--ink);text-align:left;cursor:pointer;background:#fff;border:0;border-bottom:1px solid #edf0f3;grid-template-columns:10px 1fr auto;align-items:center;gap:10px;padding:12px 16px;display:grid}.issue-list-item:hover,.issue-list-item.selected{background:#f4f8fb}.issue-list-item.selected{box-shadow:inset 3px 0 0 var(--action)}.issue-dot{background:var(--success);border-radius:50%;width:8px;height:8px}.issue-dot.urgent{background:var(--danger)}.issue-list-item div{gap:5px;min-width:0;display:grid}.issue-list-item strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.issue-list-item small{color:var(--muted);font-size:11px}.issue-list-item em{color:var(--warning);white-space:nowrap;background:#fff3db;border-radius:4px;padding:4px 7px;font-size:11px;font-style:normal}.issue-detail{padding:20px}.issue-detail-head{color:var(--action);justify-content:space-between;align-items:flex-start;gap:15px;display:flex}.issue-detail-head h2{margin-top:9px;font-size:20px}.issue-detail-head p{color:var(--muted);margin:7px 0 0;font-size:12px}.issue-urgency{border-radius:4px;padding:4px 7px;font-size:11px;font-weight:650;display:inline-block}.issue-urgency.normal{color:var(--action);background:#e8f2fa}.issue-urgency.urgent{color:var(--danger);background:#fce8e8}.issue-description{background:var(--subtle);border-left:3px solid var(--action);margin-top:22px;padding:14px}.issue-description span{color:var(--muted);font-size:12px}.issue-description p{color:var(--secondary);margin:7px 0 0;font-size:13px;line-height:1.7}.issue-form{grid-template-columns:1fr 1fr;gap:14px;margin-top:20px;display:grid}.issue-form label{color:var(--secondary);gap:7px;font-size:12px;font-weight:650;display:grid}.issue-form input,.issue-form select,.issue-form textarea{border:1px solid var(--border);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:4px;outline:none;padding:9px 10px;font-size:13px}.issue-form textarea{resize:vertical;min-height:100px}.issue-note{grid-column:1/-1}.issue-save{color:#fff;background:var(--action);cursor:pointer;border:0;border-radius:4px;grid-column:1/-1;justify-content:center;align-items:center;gap:7px;min-height:40px;font-size:13px;font-weight:650;display:flex}.issue-save:disabled{opacity:.6;cursor:wait}.issue-message{color:var(--success);align-items:center;gap:6px;margin:14px 0 0;font-size:12px;display:flex}.issue-latest{border-top:1px solid var(--border);gap:5px;margin-top:18px;padding-top:16px;display:grid}.issue-latest strong{font-size:12px}.issue-latest span,.issue-latest p{color:var(--muted);margin:0;font-size:12px}.issue-latest p{color:var(--secondary);line-height:1.55}.flight-terminal{border:1px solid var(--border);background:#fff;border-radius:8px;overflow:hidden}.flight-terminal-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;min-height:72px;padding:14px 18px;display:flex}.flight-terminal-head h2{margin:0;font-size:16px}.flight-terminal-head p{color:var(--muted);margin:4px 0 0;font-size:12px}.flight-terminal-head button{border:1px solid var(--border);color:var(--secondary);cursor:pointer;background:#fff;border-radius:4px;align-items:center;gap:6px;padding:7px 10px;font-size:12px;display:flex}.flight-batch-list{background:var(--subtle);grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:16px;display:grid}.flight-batch{border:1px solid var(--border);background:#fff;border-radius:6px;overflow:hidden}.flight-batch-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:12px;min-height:98px;padding:15px;display:flex}.flight-batch-head>div{min-width:0}.flight-batch-head h3{color:var(--ink);margin:0 0 0 8px;font-size:15px;display:inline}.flight-batch-head p{color:var(--muted);margin:9px 0 0;font-size:12px}.flight-batch-head>strong{color:var(--action);white-space:nowrap;padding-top:3px;font-family:DIN Alternate,PingFang SC,sans-serif;font-size:20px}.flight-kind{border-radius:4px;padding:3px 7px;font-size:11px;font-weight:650;display:inline-block}.flight-kind.delivery{color:#5346be;background:#eeebff}.flight-kind.tuning{color:var(--warning);background:#fff3db}.flight-image-list{max-height:260px;overflow:auto}.flight-image-row{min-height:58px;color:var(--action);border-bottom:1px solid #edf0f3;grid-template-columns:18px 1fr auto;align-items:center;gap:9px;padding:9px 14px;display:grid}.flight-image-row:last-child{border-bottom:0}.flight-image-row>div{gap:3px;min-width:0;display:grid}.flight-image-row strong{color:var(--secondary);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.flight-image-row span{color:var(--muted);font-size:11px}.flight-image-row a{color:var(--action);background:#e8f2fa;border-radius:4px;align-items:center;gap:4px;padding:6px 7px;font-size:11px;font-weight:650;text-decoration:none;display:inline-flex}.flight-image-row a:hover{background:#dcecf8}.flight-tools{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.flight-tools label{color:var(--secondary);align-items:center;gap:7px;font-size:12px;font-weight:650;display:inline-flex}.flight-tools input{border:1px solid var(--border);height:32px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:0 8px;font-size:12px}.flight-tools .flight-export{color:#fff;border-color:var(--action);background:var(--action)}.flight-tools .flight-export:disabled{opacity:.45;cursor:not-allowed}.flight-tools .flight-clear{color:var(--action)}.flight-image-row{grid-template-columns:64px minmax(0,1fr) auto;gap:10px;min-height:78px}.terminal-image-preview{border:1px solid var(--border);background:var(--subtle);cursor:zoom-in;border-radius:5px;width:58px;height:58px;padding:0;position:relative;overflow:hidden}.terminal-image-preview img{object-fit:cover;width:100%;height:100%;display:block}.terminal-image-preview span{color:#fff;opacity:0;background:#17212bad;justify-content:center;align-items:center;gap:3px;padding:3px 0;font-size:10px;line-height:1;transition:opacity .15s;display:flex;position:absolute;bottom:0;left:0;right:0}.terminal-image-preview:hover span{opacity:1}.flight-preview-modal{z-index:20;background:#101820b8;place-items:center;padding:28px;display:grid;position:fixed;inset:0}.flight-preview-dialog{background:#fff;border-radius:8px;gap:12px;width:min(880px,100%);max-height:calc(100vh - 56px);padding:14px;display:grid;box-shadow:0 18px 56px #00000052}.flight-preview-dialog>div{color:var(--ink);justify-content:space-between;align-items:center;gap:15px;font-size:13px;display:flex}.flight-preview-dialog button{border:1px solid var(--border);color:var(--secondary);cursor:pointer;background:#fff;border-radius:4px;padding:6px 9px;font-size:12px}.flight-preview-dialog>img{object-fit:contain;background:var(--subtle);width:100%;max-height:calc(100vh - 140px);display:block}.roster-workspace{max-width:100%}.roster-card{border:1px solid var(--border);background:#fff;border-radius:8px;padding:20px}.roster-week-toolbar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:18px;padding-bottom:18px;display:flex}.roster-week-title{align-items:center;gap:10px;min-width:0;display:flex}.roster-month-icon{width:34px;height:34px;color:var(--action);background:#e8f2fa;border-radius:6px;flex:none;place-items:center;display:grid}.roster-week-title strong{color:var(--ink);font-size:16px;display:block}.roster-week-title p{color:var(--muted);margin:4px 0 0;font-size:12px}.roster-week-actions{flex:none;align-items:flex-end;gap:8px;display:flex}.roster-week-actions label{color:var(--secondary);gap:7px;font-size:12px;font-weight:650;display:grid}.roster-week-actions input{border:1px solid var(--border);width:146px;height:36px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:0 10px;font-size:13px}.roster-week-shift{border:1px solid var(--border);width:34px;height:36px;color:var(--secondary);cursor:pointer;background:#fff;border-radius:4px;place-items:center;display:grid}.roster-week-shift:hover{color:var(--action);background:#eef6fc;border-color:#b6d3e9}.roster-save{color:#fff;background:var(--action);cursor:pointer;border:0;border-radius:4px;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:0 16px;font-size:13px;font-weight:650;display:inline-flex}.roster-save--compact{width:auto;min-height:36px;margin:0}.roster-save:disabled{opacity:.55;cursor:wait}.roster-station-manager{border:1px solid var(--border);background:var(--subtle);border-radius:6px;grid-template-columns:minmax(230px,1fr) auto;align-items:center;gap:12px 18px;margin-top:16px;padding:14px 16px;display:grid}.roster-station-manager strong{color:var(--ink);font-size:13px}.roster-station-manager p{color:var(--muted);margin:4px 0 0;font-size:11px}.roster-station-actions{gap:7px;display:flex}.roster-station-actions input{border:1px solid var(--border);width:190px;height:34px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:0 9px;font-size:12px}.roster-station-actions button{border:1px solid var(--action);color:#fff;background:var(--action);cursor:pointer;border-radius:4px;align-items:center;gap:5px;height:34px;padding:0 10px;font-size:12px;display:inline-flex}.roster-station-actions button:disabled{opacity:.55;cursor:wait}.roster-station-list{border-top:1px solid var(--border);flex-wrap:wrap;grid-column:1/-1;gap:7px;padding-top:11px;display:flex}.roster-station-tag{color:var(--secondary);border:1px solid var(--border);background:#fff;border-radius:4px;align-items:center;gap:5px;padding:5px 7px 5px 9px;font-size:12px;display:inline-flex}.roster-station-tag button{width:20px;height:20px;color:var(--danger);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid}.roster-station-tag--inactive{color:var(--muted);background:#f0f2f4;border-style:dashed}.roster-station-tag--inactive button{color:var(--success)}.roster-state{color:var(--secondary);background:var(--subtle);border:1px solid var(--border);margin-top:14px;padding:10px 12px;font-size:12px}.roster-state--error{color:var(--danger);background:#fff0f0;border-color:#efc5c5}.roster-state--success{color:var(--success);background:#edf7f1;border-color:#cfe4d8}.roster-grid-wrap{border:1px solid var(--border);border-radius:6px;margin-top:18px;overflow-x:auto}.roster-grid{border-collapse:separate;border-spacing:0;table-layout:fixed;width:max-content;min-width:100%}.roster-grid th,.roster-grid td{border-right:1px solid var(--border);border-bottom:1px solid var(--border)}.roster-grid th:last-child,.roster-grid td:last-child{border-right:0}.roster-grid tr:last-child th,.roster-grid tr:last-child td{border-bottom:0}.roster-grid thead th{width:92px;min-width:92px;height:54px;color:var(--secondary);background:var(--subtle);text-align:center;vertical-align:middle;padding:7px 5px;font-size:12px;font-weight:700}.roster-grid thead th span,.roster-grid thead th small{display:block}.roster-grid thead th small{color:var(--muted);margin-top:3px;font-size:11px;font-weight:400}.roster-grid .roster-station-header{z-index:2;text-align:left;width:158px;min-width:158px;padding-left:14px;position:sticky;left:0}.roster-grid td{vertical-align:top;background:#fff;width:92px;min-width:92px;height:82px;padding:5px}.roster-grid textarea{resize:none;width:100%;height:70px;min-height:70px;color:var(--ink);font:inherit;background:0 0;border:1px solid #0000;border-radius:4px;outline:none;padding:6px;font-size:12px;line-height:1.45;display:block}.roster-grid textarea:hover{background:#fbfdff;border-color:#cbd8e2}.roster-grid textarea:focus{border-color:var(--action);background:#fff;box-shadow:0 0 0 2px #1769aa1a}.roster-grid textarea::placeholder{color:#aeb9c2;text-align:center}.roster-station-cell{z-index:1;width:158px;min-width:158px;color:var(--ink);text-align:left;vertical-align:middle;background:#fff;padding:10px 12px;position:sticky;left:0}.roster-station-cell strong,.roster-station-cell small{display:block}.roster-station-cell strong{font-size:13px}.roster-station-cell small{color:var(--muted);margin-top:4px;font-size:10px;font-weight:400}.roster-manager-row .roster-station-cell{color:var(--action);background:#f1f7fb}.roster-manager-row td{background:#fbfdff}.roster-grid-note{color:var(--muted);margin:12px 0 0;font-size:12px}.roster-edit-status{min-height:38px;color:var(--success);background:#edf7f1;border:1px solid #cfe4d8;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding:8px 11px;font-size:12px;display:flex}.roster-edit-status--dirty{color:var(--warning);background:#fff8e9;border-color:#ecd59f}.roster-edit-status a{color:var(--action);white-space:nowrap;align-items:center;gap:5px;font-weight:650;text-decoration:none;display:inline-flex}.people-workspace{max-width:1180px}.people-console{gap:16px;display:grid}.people-create,.people-list,.credentials-card,.people-station-manager{border:1px solid var(--border);background:#fff;border-radius:8px}.people-station-manager{background:var(--subtle);padding:18px 20px}.people-station-manager .people-section-heading{margin-bottom:16px}.people-station-form{gap:8px;display:flex}.people-station-form input{border:1px solid var(--border);width:280px;height:36px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:0 10px;font-size:13px}.people-station-form button{color:#fff;background:var(--action);cursor:pointer;border:0;border-radius:4px;align-items:center;gap:6px;height:36px;padding:0 12px;font-size:12px;font-weight:650;display:inline-flex}.people-station-form button:disabled{opacity:.55;cursor:wait}.people-station-list{border-top:1px solid var(--border);flex-wrap:wrap;gap:7px;margin-top:14px;padding-top:14px;display:flex}.people-station-tag{border:1px solid var(--border);color:var(--secondary);background:#fff;border-radius:4px;align-items:center;gap:5px;padding:5px 7px 5px 10px;font-size:12px;display:inline-flex}.people-station-tag button{width:20px;height:20px;color:var(--danger);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid}.people-station-tag--inactive{color:var(--muted);background:#f0f2f4;border-style:dashed}.people-station-tag--inactive button{color:var(--success)}.people-create{padding:20px}.people-section-heading{color:var(--action);gap:10px;display:flex}.people-section-heading>span{background:#e8f2fa;border-radius:6px;place-items:center;width:34px;height:34px;display:grid}.people-section-heading h2,.people-list-head h2{color:var(--ink);margin:0;font-size:16px}.people-section-heading p,.people-list-head p{color:var(--muted);margin:4px 0 0;font-size:12px}.people-form{grid-template-columns:minmax(180px,1fr) minmax(220px,1.25fr) auto;align-items:end;gap:12px;margin-top:18px;display:grid}.people-form label{color:var(--secondary);gap:7px;font-size:12px;font-weight:650;display:grid}.people-form input,.people-form select{border:1px solid var(--border);width:100%;height:38px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:0 10px;font-size:13px}.people-form button{color:#fff;background:var(--action);cursor:pointer;border:0;border-radius:4px;justify-content:center;align-items:center;gap:6px;min-height:38px;padding:0 13px;font-size:13px;font-weight:650;display:inline-flex}.people-form button:disabled{opacity:.55;cursor:wait}.people-empty-station{color:var(--warning);margin:12px 0 0;font-size:12px}.people-message{color:var(--success);background:#edf7f1;border:1px solid #cfe4d8;margin:0;padding:10px 12px;font-size:12px}.people-message--error{color:var(--danger);background:#fff0f0;border-color:#efc5c5}.credentials-card{background:#f7fbfe;border-color:#b6d3e9;grid-template-columns:minmax(220px,.7fr) minmax(300px,1.3fr);gap:18px;padding:16px;display:grid}.credentials-card>div:first-child{color:var(--action);align-items:flex-start;gap:9px;display:flex}.credentials-card>div:first-child>span{background:#e8f2fa;border-radius:6px;flex:none;place-items:center;width:32px;height:32px;display:grid}.credentials-card strong{color:var(--ink);font-size:13px;display:block}.credentials-card p{color:var(--secondary);margin:4px 0 0;font-size:12px}.credentials-card dl{grid-template-columns:1fr 1fr;gap:10px;margin:0;display:grid}.credentials-card dl>div{background:#fff;border:1px solid #cbdde9;border-radius:4px;padding:9px 10px}.credentials-card dt{color:var(--muted);font-size:11px}.credentials-card dd{color:var(--ink);margin:5px 0 0;font-family:SFMono-Regular,Consolas,monospace;font-size:13px;font-weight:700}.people-list{overflow:hidden}.people-list-head{border-bottom:1px solid var(--border);align-items:center;min-height:66px;padding:14px 18px;display:flex}.person-row{border-bottom:1px solid #edf0f3;grid-template-columns:38px minmax(180px,1fr) minmax(170px,.85fr) 70px auto;align-items:center;gap:13px;min-height:72px;padding:12px 18px;display:grid}.person-row:last-child{border-bottom:0}.person-avatar{width:34px;height:34px;color:var(--action);background:#e8f2fa;border-radius:50%;place-items:center;font-size:13px;font-weight:700;display:grid}.person-main,.person-account{gap:4px;min-width:0;display:grid}.person-main strong{color:var(--ink);font-size:13px}.person-main span,.person-account small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.person-account code{color:var(--secondary);font-family:SFMono-Regular,Consolas,monospace;font-size:12px}.person-status{white-space:nowrap;border-radius:4px;width:fit-content;padding:4px 7px;font-size:11px}.person-status--active{color:var(--success);background:#e5f3eb}.person-status--inactive{color:var(--muted);background:#eef1f3}.person-actions{justify-content:flex-end;gap:7px;display:flex}.person-actions button{border:1px solid var(--border);height:31px;color:var(--secondary);cursor:pointer;background:#fff;border-radius:4px;align-items:center;gap:5px;padding:0 9px;font-size:11px;display:inline-flex}.person-actions .person-stop{color:var(--danger);background:#fff8f8;border-color:#efc5c5}.person-actions .person-start{color:var(--success);background:#f4fbf6;border-color:#cfe4d8}.person-actions button:disabled{opacity:.55;cursor:wait}.people-empty{color:var(--muted);text-align:center;margin:0;padding:44px 18px;font-size:13px}.dashboard-workspace{max-width:1500px}.dashboard-console{gap:18px;display:grid}.dashboard-toolbar{justify-content:space-between;align-items:flex-end;gap:20px;display:flex}.dashboard-toolbar h1{color:var(--ink);margin:0;font-size:26px}.dashboard-toolbar p:last-child{color:var(--secondary);margin:7px 0 0;font-size:13px}.dashboard-toolbar-actions{align-items:flex-end;gap:8px;display:flex}.dashboard-toolbar-actions label{color:var(--secondary);gap:7px;font-size:12px;font-weight:650;display:grid}.dashboard-toolbar-actions input{border:1px solid var(--border);width:150px;height:36px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:0 9px;font-size:13px}.dashboard-toolbar-actions button{border:1px solid var(--border);height:36px;color:var(--secondary);cursor:pointer;background:#fff;border-radius:4px;align-items:center;gap:6px;padding:0 11px;font-size:12px;display:inline-flex}.dashboard-toolbar-actions button:disabled{opacity:.55;cursor:wait}.dashboard-message{color:var(--danger);background:#fff0f0;border:1px solid #efc5c5;padding:10px 12px;font-size:12px}.dashboard-kpi-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.dashboard-kpi{color:#fff;border-radius:8px;align-content:space-between;gap:7px;min-height:132px;padding:16px;text-decoration:none;transition:transform .16s,filter .16s,box-shadow .16s;display:grid}.dashboard-kpi:hover{filter:brightness(1.06);transform:translateY(-2px);box-shadow:0 8px 18px #1e314129}.dashboard-kpi:focus-visible{outline-offset:3px;outline:3px solid #8bc3e7}.dashboard-kpi>span{background:#ffffff29;border-radius:6px;place-items:center;width:30px;height:30px;display:grid}.dashboard-kpi small{opacity:.8;font-size:12px}.dashboard-kpi strong{font-family:DIN Alternate,PingFang SC,sans-serif;font-size:32px;line-height:1}.dashboard-kpi em{opacity:.78;font-size:11px;font-style:normal}.dashboard-kpi--blue{background:#1769aa}.dashboard-kpi--teal{background:#287c8e}.dashboard-kpi--violet{background:#6258b8}.dashboard-kpi--amber{background:#a96708}.dashboard-kpi--red{background:#bc3434}.dashboard-station-card{border:1px solid var(--border);background:#fff;border-radius:8px;overflow:hidden}.dashboard-card-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;min-height:68px;padding:14px 18px;display:flex}.dashboard-card-head h2{color:var(--ink);margin:0;font-size:16px}.dashboard-card-head p{color:var(--muted);margin:4px 0 0;font-size:12px}.dashboard-card-head>span{color:var(--secondary);font-size:12px}.dashboard-station-table{overflow-x:auto}.dashboard-station-row{min-width:920px;min-height:58px;color:var(--secondary);border-bottom:1px solid #edf0f3;grid-template-columns:minmax(180px,2fr) 70px 70px 70px 80px 80px minmax(230px,1.4fr);align-items:center;gap:10px;padding:0 18px;font-size:13px;display:grid}.dashboard-station-row:last-child{border-bottom:0}.dashboard-station-row--head{min-height:42px;color:var(--muted);background:var(--subtle);font-size:12px}.dashboard-station-row strong{color:var(--ink)}.dashboard-station-row>span:not(.dashboard-roster){text-align:center;font-family:DIN Alternate,sans-serif;font-size:16px}.dashboard-alert-number{color:var(--danger);font-weight:700}.dashboard-roster{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dashboard-empty{color:var(--muted);text-align:center;padding:48px 18px}.dashboard-links{flex-wrap:wrap;gap:8px;display:flex}.dashboard-links a{border:1px solid var(--border);min-height:34px;color:var(--secondary);background:#fff;border-radius:4px;align-items:center;gap:6px;padding:0 11px;font-size:12px;text-decoration:none;display:inline-flex}.dashboard-links a:hover{color:var(--action);background:#eef6fc;border-color:#b6d3e9}.dashboard-route-section{border:1px solid var(--border);background:#fff;border-radius:8px;overflow:hidden}.dashboard-route-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-end;gap:18px;padding:16px 18px;display:flex}.dashboard-route-head h2{color:var(--ink);margin:2px 0 0;font-size:17px}.dashboard-route-head>div:first-child>p:last-child{color:var(--muted);margin:4px 0 0;font-size:11px}.dashboard-route-tools{align-items:flex-end;gap:10px;display:flex}.dashboard-route-tools label{min-width:230px;color:var(--secondary);gap:6px;font-size:11px;font-weight:650;display:grid}.dashboard-route-tools>span{color:var(--secondary);white-space:nowrap;padding-bottom:10px;font-size:11px}.dashboard-route-section>.route-dashboard-kpis{padding:16px}.dashboard-route-empty{min-height:180px;color:var(--action);align-content:center;place-items:center;gap:7px;display:grid}.dashboard-route-empty strong{color:var(--ink);font-size:14px}.dashboard-route-empty span{color:var(--muted);font-size:11px}.dashboard-station-picker{min-width:230px;position:relative}.dashboard-station-picker-trigger{border:1px solid var(--border);width:230px;height:36px;color:var(--ink);font:inherit;cursor:pointer;background:#fff;border-radius:4px;justify-content:space-between;align-items:center;gap:8px;padding:0 9px;font-size:12px;display:flex}.dashboard-station-picker-trigger:hover,.dashboard-station-picker-trigger[aria-expanded=true]{border-color:#86b8d8;box-shadow:0 0 0 2px #1b70a51f}.dashboard-station-picker-trigger>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dashboard-station-picker-menu{z-index:40;background:#fff;border:1px solid #cbd8e1;border-radius:5px;width:286px;position:absolute;top:calc(100% + 5px);right:0;overflow:hidden;box-shadow:0 12px 28px #162a3829}.dashboard-station-picker-actions{border-bottom:1px solid var(--border);align-items:center;gap:5px;padding:6px;display:flex}.dashboard-station-picker-actions button{border:1px solid var(--border);min-height:29px;color:var(--action);font:inherit;cursor:pointer;white-space:nowrap;background:#fff;border-radius:4px;align-items:center;gap:5px;padding:0 7px;font-size:11px;display:inline-flex}.dashboard-station-picker-actions button:hover{background:#eef6fc}.dashboard-station-picker-actions button:first-child{background:#f7fbfe;border-color:#b6d3e9;margin-right:auto}.dashboard-station-picker-actions button b{color:var(--secondary);font-size:10px;font-weight:600}.dashboard-station-picker-actions .dashboard-station-picker-done{color:#fff;border-color:var(--action);background:var(--action)}.dashboard-station-picker-options{max-height:260px;padding:5px;overflow-y:auto}.dashboard-station-picker-options>button{width:100%;min-height:38px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:4px;align-items:center;gap:8px;padding:5px 7px;display:flex}.dashboard-station-picker-options>button:hover,.dashboard-station-picker-options>button.is-selected{background:#eef6fc}.dashboard-station-picker-options>button>input{width:14px;min-width:14px;height:14px;accent-color:var(--action);pointer-events:none;margin:0}.dashboard-station-picker-options>button>span{gap:2px;min-width:0;display:grid}.dashboard-station-picker-options>button>span small{color:var(--muted);font-size:10px}.dashboard-station-picker-options>button>svg{color:var(--action);flex:none;margin-left:auto}.dashboard-station-picker-options>p{color:var(--muted);text-align:center;margin:0;padding:20px 8px;font-size:11px}.dashboard-route-station-table{border:1px solid var(--border);border-radius:6px;margin:0 16px 16px;overflow-x:auto}.dashboard-route-station-row{min-width:1080px;min-height:54px;color:var(--secondary);border-bottom:1px solid #edf0f3;grid-template-columns:minmax(190px,1.35fr) 70px 70px 95px 90px 75px 75px minmax(230px,1.5fr);align-items:center;gap:10px;padding:0 14px;font-size:12px;display:grid}.dashboard-route-station-row:last-child{border-bottom:0}.dashboard-route-station-row--head{min-height:40px;color:var(--muted);background:var(--subtle);font-size:11px}.dashboard-route-station-row strong{color:var(--ink)}.dashboard-route-station-row>span:not(.dashboard-roster){text-align:center;font-family:DIN Alternate,sans-serif;font-size:16px}.dashboard-route-station-row .dashboard-roster{font-family:inherit;font-size:12px}.flight-workspace{max-width:1280px}.flight-terminal-head button:disabled{opacity:.5;cursor:not-allowed}.flight-summary{background:var(--subtle);border-bottom:1px solid var(--border);grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:16px;display:grid}.flight-summary article{border:1px solid var(--border);background:#fff;border-radius:6px;align-items:flex-start;gap:12px;min-height:108px;padding:15px;display:flex}.flight-summary-icon{width:34px;height:34px;color:var(--action);background:#e8f2fa;border-radius:5px;flex:none;place-items:center;display:grid}.flight-summary article>div{gap:3px;min-width:0;display:grid}.flight-summary small{color:var(--muted);font-size:11px}.flight-summary strong{color:var(--ink);font-family:DIN Alternate,PingFang SC,sans-serif;font-size:26px;line-height:1.15}.flight-summary p{color:var(--secondary);margin:1px 0 0;font-size:11px}.flight-summary--alert{border-color:#ead9b9!important}.flight-summary--alert .flight-summary-icon{color:var(--warning);background:#fff3db}.flight-summary--alert strong{color:var(--warning)}.flight-status-table{overflow-x:auto}.flight-status-row{border-bottom:1px solid #edf0f3;grid-template-columns:minmax(190px,1.25fr) minmax(165px,1fr) minmax(165px,1fr) minmax(165px,1fr) 90px;align-items:center;gap:16px;min-width:1040px;min-height:68px;padding:10px 18px;display:grid}.flight-status-row:last-child{border-bottom:0}.flight-status-row--head{min-height:42px;color:var(--muted);background:var(--subtle);font-size:12px}.flight-status-row--incomplete{background:#fffdf9}.flight-station-name,.flight-upload-cell{gap:4px;min-width:0;display:grid}.flight-station-name strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.flight-station-name small,.flight-upload-cell small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.flight-upload-status{white-space:nowrap;align-items:center;gap:5px;width:fit-content;font-size:12px;font-weight:650;display:inline-flex}.flight-upload-status--done{color:var(--success)}.flight-upload-status--missing{color:var(--danger);background:#fce8e8;border-radius:4px;padding:5px 8px}.flight-complete{white-space:nowrap;border-radius:4px;width:fit-content;padding:4px 8px;font-size:11px}.flight-complete--done{color:var(--success);background:#e5f3eb}.flight-complete--pending{color:var(--warning);background:#fff3db}.flight-message--error{color:var(--danger);background:#fff0f0}.movement-workspace{max-width:1480px}.route-info-tabs{border:1px solid var(--border);background:#eef2f5;border-radius:6px;width:fit-content;padding:3px;display:inline-flex}.route-info-tabs a{min-height:34px;color:var(--secondary);border-radius:4px;align-items:center;gap:6px;padding:0 13px;font-size:12px;font-weight:650;text-decoration:none;display:inline-flex}.route-info-tabs a.active{color:var(--action);background:#fff;box-shadow:0 1px 3px #142b3a14}.movement-console{gap:16px;display:grid}.movement-toolbar,.movement-route-section,.movement-record-section{border:1px solid var(--border);background:#fff;border-radius:8px;overflow:hidden}.movement-toolbar{justify-content:space-between;align-items:flex-end;gap:18px;padding:16px 18px;display:flex}.movement-toolbar strong{color:var(--ink);font-size:14px}.movement-toolbar p{color:var(--muted);margin:4px 0 0;font-size:11px}.movement-filters{align-items:flex-end;gap:8px;display:flex}.movement-filters label{color:var(--secondary);gap:6px;font-size:11px;font-weight:650;display:grid}.movement-filters input,.movement-filters select{border:1px solid var(--border);min-width:132px;height:34px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:0 8px;font-size:12px}.movement-filters select{min-width:180px}.movement-filters button,.movement-create button,.movement-route-row button{border:1px solid var(--border);height:34px;color:var(--secondary);cursor:pointer;background:#fff;border-radius:4px;justify-content:center;align-items:center;gap:5px;padding:0 10px;font-size:12px;display:inline-flex}.movement-filters button:disabled,.movement-create button:disabled,.movement-route-row button:disabled{opacity:.5;cursor:wait}.movement-message{color:var(--success);background:#edf7f1;border:1px solid #cfe4d8;margin:0;padding:10px 12px;font-size:12px}.movement-message--error{color:var(--danger);background:#fff0f0;border-color:#efc5c5}.movement-kpis{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.movement-kpis article{border:1px solid var(--border);background:#fff;border-radius:7px;grid-template-rows:auto auto auto;grid-template-columns:32px 1fr;align-content:center;column-gap:10px;min-height:108px;padding:14px;display:grid}.movement-kpis article>span{width:30px;height:30px;color:var(--action);background:#e8f2fa;border-radius:5px;grid-row:1/4;place-items:center;display:grid}.movement-kpis small{color:var(--muted);font-size:11px}.movement-kpis strong{color:var(--ink);font-family:DIN Alternate,sans-serif;font-size:27px;line-height:1.1}.movement-kpis em{color:var(--secondary);text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-style:normal;overflow:hidden}.movement-card-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;min-height:66px;padding:14px 18px;display:flex}.movement-card-head h2{color:var(--ink);margin:0;font-size:16px}.movement-card-head p{color:var(--muted);margin:4px 0 0;font-size:11px}.movement-card-head>span{color:var(--secondary);white-space:nowrap;font-size:11px}.movement-create{border-bottom:1px solid var(--border);background:#f7fbfe;grid-template-columns:minmax(250px,1fr) minmax(150px,.6fr) minmax(150px,.6fr) auto;align-items:end;gap:10px;padding:14px 18px;display:grid}.movement-create label{color:var(--secondary);gap:6px;font-size:11px;font-weight:650;display:grid}.movement-create input,.movement-create select{border:1px solid var(--border);width:100%;min-width:0;height:36px;color:var(--ink);font:inherit;box-sizing:border-box;background:#fff;border-radius:4px;padding:0 9px;font-size:12px}.movement-create button{color:#fff;border-color:var(--action);background:var(--action);height:36px}.movement-station-search{min-width:0;position:relative}.movement-station-search-input-wrap{position:relative}.movement-station-search-input-wrap>input{border:1px solid var(--border);width:100%;min-width:0;height:36px;color:var(--ink);font:inherit;box-sizing:border-box;background:#fff;border-radius:4px;padding:0 53px 0 9px;font-size:12px}.movement-station-search-input-wrap>input:focus{outline-offset:0;border-color:#86b8d8;outline:2px solid #1b70a52e}.movement-station-search-clear,.movement-station-search-chevron{position:absolute;top:50%;transform:translateY(-50%)}.movement-station-search-clear{width:22px;height:24px;color:var(--muted);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid;right:26px}.movement-station-search-clear:hover{color:var(--danger)}.movement-station-search-chevron{color:var(--muted);pointer-events:none;transition:transform .15s;right:8px}.movement-station-search-chevron.is-open{transform:translateY(-50%)rotate(180deg)}.movement-station-search-menu{z-index:40;background:#fff;border:1px solid #cbd8e1;border-radius:5px;width:100%;max-height:260px;padding:5px;position:absolute;top:calc(100% + 5px);left:0;overflow-y:auto;box-shadow:0 12px 28px #162a3829}.movement-station-search-options{max-height:205px;overflow-y:auto}.movement-station-multi-actions{border-bottom:1px solid var(--border);align-items:center;gap:5px;padding:2px 2px 6px;display:flex}.movement-station-multi-actions button{border:1px solid var(--border);min-height:29px;color:var(--action);font:inherit;cursor:pointer;white-space:nowrap;background:#fff;border-radius:4px;align-items:center;gap:5px;padding:0 7px;font-size:11px;display:inline-flex}.movement-station-multi-actions button:hover{background:#eef6fc}.movement-station-multi-actions button:first-child{background:#f7fbfe;border-color:#b6d3e9;margin-right:auto}.movement-station-multi-actions button b{color:var(--secondary);font-size:10px;font-weight:600}.movement-station-multi-actions .movement-station-multi-done{color:#fff;border-color:var(--action);background:var(--action)}.movement-station-multi-actions .movement-station-multi-done:hover{background:var(--action-hover)}.movement-station-search-option{width:100%;min-height:38px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:4px;justify-content:space-between;align-items:center;gap:10px;padding:5px 8px;display:flex}.movement-station-search-option:hover,.movement-station-search-option.is-selected{background:#eef6fc}.movement-station-search-option>input{width:14px;min-width:14px;height:14px;accent-color:var(--action);pointer-events:none;margin:0}.movement-station-search-option>span{gap:2px;min-width:0;display:grid}.movement-station-search-option strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;overflow:hidden}.movement-station-search-option small{color:var(--muted);font-size:10px}.movement-station-search-option>svg{color:var(--action);flex:none}.movement-station-search-empty{color:var(--muted);text-align:center;margin:0;padding:20px 8px;font-size:11px}.movement-view-picker{align-items:flex-end;gap:10px;display:flex}.movement-view-picker label{min-width:230px;color:var(--secondary);gap:6px;font-size:11px;font-weight:650;display:grid}.movement-view-picker>span{color:var(--secondary);white-space:nowrap;padding-bottom:10px;font-size:11px}.movement-route-table,.movement-record-table{overflow-x:auto}.movement-route-row{min-width:1370px;min-height:58px;color:var(--secondary);border-bottom:1px solid #edf0f3;grid-template-columns:minmax(250px,1.35fr) minmax(210px,1fr) 110px 110px 54px 54px 64px 100px;align-items:center;gap:10px;padding:0 18px;font-size:12px;display:grid}.movement-route-row:last-child,.movement-record-row:last-child{border-bottom:0}.movement-route-row--head,.movement-record-row--head{min-height:42px;color:var(--muted);background:var(--subtle);font-size:11px}.movement-route-row strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.movement-route-row b{color:var(--ink);text-align:center;font-family:DIN Alternate,sans-serif;font-size:17px;font-weight:600}.movement-route-row>span:not(:first-child){text-align:center}.movement-route-row--inactive{background:#fbfbfb}.movement-route-row--inactive strong{color:var(--muted)}.movement-status{white-space:nowrap;border-radius:4px;width:fit-content;padding:4px 6px;font-size:10px}.movement-status--active{color:var(--success);background:#e5f3eb}.movement-status--inactive{color:var(--muted);background:#eef1f3}.movement-stop{color:var(--danger)!important;background:#fff8f8!important;border-color:#efc5c5!important}.movement-restore{color:var(--success)!important;background:#f4fbf6!important;border-color:#cfe4d8!important}.movement-route-select{border:1px solid var(--border);width:100%;height:30px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:0 5px;font-size:11px}.movement-project-cell{align-items:center;gap:6px;min-width:0;display:flex}.movement-project-cell input{border:1px solid var(--border);width:100%;min-width:0;height:30px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:0 7px;font-size:11px}.movement-project-cell button{height:30px;color:var(--action);cursor:pointer;white-space:nowrap;background:#eef6fc;border:1px solid #b6d3e9;border-radius:4px;padding:0 7px;font-size:11px}.movement-project-cell button:disabled{opacity:.5;cursor:wait}.movement-project-readonly{color:var(--secondary);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.movement-empty-terminal{color:var(--muted);text-align:center;margin:0;padding:38px 18px;font-size:12px}.movement-record-row{min-width:780px;min-height:52px;color:var(--secondary);border-bottom:1px solid #edf0f3;grid-template-columns:130px minmax(300px,1fr) 110px 120px;align-items:center;gap:12px;padding:8px 18px;font-size:12px;display:grid}.movement-record-row strong{min-width:0;color:var(--ink);overflow-wrap:anywhere;font-size:12px;line-height:18px}.movement-record-row time{color:var(--muted);font-family:SFMono-Regular,Consolas,monospace;font-size:11px}.movement-type{white-space:nowrap;border-radius:4px;width:fit-content;padding:4px 7px;font-size:11px}.movement-type--takeoff{color:var(--action);background:#e8f2fa}.movement-type--landing{color:var(--success);background:#e5f3eb}.movement-type--both{color:#5d4f91;background:#f0edfa}.movement-select-prompt{min-height:150px;color:var(--action);background:#f7fbfe;border:1px dashed #b6d3e9;border-radius:8px;justify-content:center;align-items:center;gap:14px;padding:24px;display:flex}.movement-select-prompt>span{gap:2px;display:flex}.movement-select-prompt strong{color:var(--ink);font-size:14px}.movement-select-prompt p{color:var(--muted);margin:5px 0 0;font-size:12px}.movement-selected-station{gap:6px;min-width:0;display:grid}.movement-selected-station span{color:var(--secondary);font-size:11px;font-weight:650}.movement-selected-station strong{height:36px;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;background:#fff;border:1px solid #dbe7ef;border-radius:4px;align-items:center;padding:0 9px;font-size:12px;display:flex;overflow:hidden}.route-dashboard-workspace{max-width:1480px}.route-dashboard-console{gap:16px;display:grid}.route-dashboard-toolbar{border:1px solid var(--border);background:#fff;border-radius:8px;justify-content:space-between;align-items:flex-end;gap:18px;padding:16px 18px;display:flex}.route-dashboard-toolbar strong{color:var(--ink);font-size:14px}.route-dashboard-toolbar p{color:var(--muted);margin:4px 0 0;font-size:11px}.route-dashboard-filters{align-items:flex-end;gap:8px;display:flex}.route-dashboard-filters label{color:var(--secondary);gap:6px;font-size:11px;font-weight:650;display:grid}.route-dashboard-filters input,.route-dashboard-filters select{border:1px solid var(--border);min-width:142px;height:34px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:0 8px;font-size:12px}.route-dashboard-filters select{min-width:220px}.route-dashboard-filters button{border:1px solid var(--border);height:34px;color:var(--secondary);cursor:pointer;background:#fff;border-radius:4px;align-items:center;gap:5px;padding:0 10px;font-size:12px;display:inline-flex}.route-dashboard-filters button:disabled{opacity:.5;cursor:wait}.route-station-picker{gap:6px;min-width:230px;display:grid;position:relative}.route-station-picker>span{color:var(--secondary);font-size:11px;font-weight:650}.route-dashboard-filters .route-station-picker-trigger{justify-content:space-between;width:230px}.route-station-picker-trigger>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.route-station-picker-menu{z-index:30;background:#fff;border:1px solid #cbd8e1;border-radius:6px;width:286px;position:absolute;top:calc(100% + 6px);right:0;overflow:hidden;box-shadow:0 12px 28px #162a3829}.route-dashboard-filters .route-station-picker-all{width:100%;height:42px;color:var(--action);border:0;border-bottom:1px solid var(--border);background:#f2f8fc;border-radius:0;justify-content:space-between;padding:0 13px;font-weight:650}.route-station-picker-all b{color:var(--secondary);font-size:11px;font-weight:600}.route-station-picker-options{max-height:280px;padding:6px;overflow-y:auto}.route-dashboard-filters .route-station-picker-options label{min-height:36px;color:var(--ink);cursor:pointer;border-radius:4px;align-items:center;gap:9px;padding:0 7px;font-size:12px;font-weight:500;display:flex}.route-dashboard-filters .route-station-picker-options label:hover{background:#f3f6f8}.route-dashboard-filters .route-station-picker-options input{width:14px;min-width:14px;height:14px;accent-color:var(--action);margin:0;padding:0}.route-station-picker-options p{color:var(--muted);text-align:center;margin:0;padding:18px 8px}.route-dashboard-scope{min-height:34px;color:var(--secondary);align-items:center;gap:9px;margin-top:-6px;padding:0 3px;font-size:11px;display:flex}.route-dashboard-scope span{max-width:min(720px,65vw);color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-weight:650;overflow:hidden}.route-dashboard-scope i{background:#9aa6af;border-radius:50%;width:3px;height:3px}.route-dashboard-scope time{white-space:nowrap}.route-dashboard-empty{min-height:300px;color:var(--action);background:#f7fbfe;border:1px dashed #b6d3e9;border-radius:8px;align-content:center;place-items:center;gap:9px;display:grid}.route-dashboard-empty strong{color:var(--ink);font-size:15px}.route-dashboard-empty span{color:var(--muted);font-size:12px}.route-dashboard-kpis{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.route-dashboard-kpis article{border:1px solid var(--border);background:#fff;border-radius:7px;grid-template-rows:auto auto auto;grid-template-columns:34px 1fr;align-content:center;column-gap:10px;min-height:108px;padding:14px;display:grid}.route-dashboard-kpis article>span{width:32px;height:32px;color:var(--action);background:#e8f2fa;border-radius:5px;grid-row:1/4;place-items:center;display:grid}.route-dashboard-kpis small{color:var(--muted);font-size:11px}.route-dashboard-kpis strong{color:var(--ink);font-family:DIN Alternate,sans-serif;font-size:28px;line-height:1.1}.route-dashboard-kpis strong b{color:var(--muted);font-size:15px;font-weight:600}.route-dashboard-kpis em{color:var(--secondary);font-size:10px;font-style:normal}.route-dashboard-grid{grid-template-columns:minmax(0,1.2fr) minmax(460px,.8fr);align-items:start;gap:16px;display:grid}.route-dashboard-card{border:1px solid var(--border);background:#fff;border-radius:8px;overflow:hidden}.route-dashboard-chart{width:100%;min-height:280px;max-height:680px;padding:4px 16px 8px 0}.route-dashboard-table{overflow-x:auto}.route-dashboard-row{border-bottom:1px solid #edf0f3;grid-template-columns:minmax(230px,1fr) 48px 48px 88px 48px;align-items:center;gap:10px;min-width:540px;min-height:54px;padding:0 16px;display:grid}.route-dashboard-row:last-child{border-bottom:0}.route-dashboard-row--head{min-height:42px;color:var(--muted);background:var(--subtle);font-size:11px}.route-dashboard-row strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.route-dashboard-row b{color:var(--ink);text-align:center;font-family:DIN Alternate,sans-serif;font-size:16px;font-weight:600}.route-dashboard-row>span:not(:first-child){text-align:center}.route-dashboard-row--inactive{background:#fbfbfb}.route-dashboard-row--inactive strong{color:var(--muted)}.route-dashboard-card-empty{min-height:190px;color:var(--muted);place-items:center;font-size:12px;display:grid}.route-dashboard-row strong{gap:2px;min-width:0;display:grid}.route-dashboard-row strong small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:600;overflow:hidden}.route-dashboard-row strong span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.route-dashboard-card-tools{align-items:center;gap:10px;display:flex}.route-dashboard-card-tools>span{color:var(--secondary);white-space:nowrap;font-size:11px}.route-dashboard-card-tools a{height:30px;color:var(--action);white-space:nowrap;background:#eef6fc;border:1px solid #b6d3e9;border-radius:4px;align-items:center;gap:5px;padding:0 9px;font-size:11px;text-decoration:none;display:inline-flex}.route-dashboard-card-tools a:hover{background:#e1f0fa}.route-dashboard-card-tools a.is-disabled{opacity:.5;pointer-events:none}.route-dashboard-project{color:var(--action);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.route-dashboard-card-tools button.route-dashboard-collapse{border:1px solid var(--border);height:30px;color:var(--secondary);font:inherit;cursor:pointer;white-space:nowrap;background:#fff;border-radius:4px;align-items:center;gap:5px;padding:0 9px;font-size:11px;display:inline-flex}.route-dashboard-card-tools button.route-dashboard-collapse:hover{color:var(--action);background:#f7fbfe;border-color:#b6d3e9}.weather-workspace{max-width:1480px}.weather-console{gap:14px;display:grid}.weather-toolbar{border:1px solid var(--border);background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:18px;min-height:66px;padding:14px 18px;display:flex}.weather-toolbar strong{color:var(--ink);font-size:14px}.weather-toolbar p{max-width:760px;color:var(--muted);margin:4px 0 0;font-size:11px;line-height:1.5}.weather-actions{flex:none;align-items:center;gap:8px;display:flex}.weather-actions>span{color:var(--muted);white-space:nowrap;font-size:11px}.weather-actions>span i{background:var(--success);border-radius:50%;width:7px;height:7px;margin-right:5px;display:inline-block}.weather-actions button,.weather-actions a{border:1px solid var(--border);min-height:34px;color:var(--secondary);font:inherit;cursor:pointer;background:#fff;border-radius:4px;align-items:center;gap:5px;padding:0 10px;font-size:12px;text-decoration:none;display:inline-flex}.weather-actions button:hover,.weather-actions a:hover{color:var(--action);background:#eef6fc;border-color:#b6d3e9}.weather-frame-wrap{border:1px solid var(--border);background:#202733;border-radius:8px;min-height:720px;overflow:hidden}.weather-frame-wrap iframe{background:#202733;border:0;width:100%;height:780px;display:block}.weather-frame-wrap--login{background:#f4f7fa}.weather-frame-wrap--login iframe{background:#fff}.antwork-launch{border:1px solid var(--border);background:#fff;border-radius:8px;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:22px;min-height:360px;padding:36px;display:grid}.antwork-launch-icon{width:64px;height:64px;color:var(--action);background:#e8f2fa;border-radius:8px;place-items:center;display:grid}.antwork-launch-copy h2{color:var(--ink);margin:3px 0 0;font-size:22px}.antwork-launch-copy>p:last-of-type{max-width:720px;color:var(--secondary);margin:10px 0 0;font-size:13px;line-height:1.7}.antwork-security{color:var(--success);align-items:center;gap:7px;margin-top:16px;font-size:12px;display:flex}.antwork-launch-button{color:#fff;background:var(--action);white-space:nowrap;border-radius:4px;justify-content:center;align-items:center;gap:7px;min-height:42px;padding:0 16px;font-size:13px;font-weight:650;text-decoration:none;display:inline-flex}.antwork-launch-button:hover{background:var(--action-hover)}.route-project-picker{gap:6px;min-width:230px;display:grid;position:relative}.route-project-picker>span{color:var(--secondary);font-size:11px;font-weight:650}.route-dashboard-filters .route-project-picker .route-station-picker-trigger{width:230px}.route-project-picker .route-station-picker-menu{right:0}.route-project-summary-card,.route-category-summary-card{padding-bottom:0}.route-project-summary-grid{grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:10px;padding:14px 16px 16px;display:grid}.route-project-summary-grid article{background:#fbfdfe;border:1px solid #e3e9ee;border-radius:6px;min-width:0;padding:13px 14px}.route-project-summary-grid article>strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;display:block;overflow:hidden}.route-project-summary-grid article>div{color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:9px;margin-top:10px;font-size:10px;display:flex}.route-project-summary-grid article span{white-space:nowrap}.route-project-summary-grid article b{color:var(--secondary);margin-left:3px;font-family:DIN Alternate,sans-serif;font-size:16px}.route-project-summary-grid article em{color:var(--action);white-space:nowrap;margin-left:auto;font-style:normal;font-weight:650}.route-project-summary-grid article em b{color:var(--action)}.route-category-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px 16px 16px;display:grid}.route-category-summary-grid article{background:#fbfdfe;border:1px solid #e3e9ee;border-radius:6px;min-width:0;padding:13px 14px}.route-category-summary-grid article>strong{color:var(--ink);font-size:13px;display:block}.route-category-summary-grid article>p{color:var(--muted);margin:4px 0 0;font-size:10px;line-height:1.45}.route-category-summary-list{gap:0;margin-top:10px;display:grid}.route-category-summary-item{border-top:1px solid #edf0f3;grid-template-columns:minmax(0,1fr) auto;gap:3px 12px;padding:8px 0;display:grid}.route-category-summary-item:first-child{border-top:0;padding-top:0}.route-category-summary-item strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.route-category-summary-item b{color:var(--action);font-family:DIN Alternate,sans-serif;font-size:18px}.route-category-summary-item span{color:var(--muted);grid-column:1/-1;font-size:10px}@media (max-width:980px){.foundation-grid,.resource-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.notice-console,.issues-layout,.login-page{grid-template-columns:1fr}.login-brand{display:none}.flight-summary{grid-template-columns:1fr}}@media (max-width:720px){.admin-shell{grid-template-columns:64px minmax(0,1fr)}.sidebar{padding-left:8px;padding-right:8px}.sidebar-brand div,.side-nav span,.side-nav svg:last-child,.local-badge{display:none}.side-nav button{grid-template-columns:1fr;place-items:center;padding:0}.page-heading{flex-direction:column;align-items:stretch}.foundation-grid,.resource-summary,.notice-compose form{grid-template-columns:1fr}.notice-wide{grid-column:auto}.notice-station-list,.movement-option-manager{grid-template-columns:1fr}.movement-station-group-head>div{flex-direction:column;align-items:flex-start;gap:4px}.notice-history-head{flex-direction:column;align-items:flex-start;gap:12px}.notice-history-head .record-tools{justify-content:flex-start}.notice-detail-overlay{padding:12px}.notice-detail-dialog{max-height:calc(100vh - 24px)}.notice-detail-receipts>div:first-child,.issues-heading{flex-direction:column;align-items:flex-start}.record-tools{justify-content:flex-start}.issue-form{grid-template-columns:1fr}.issue-note{grid-column:auto}.flight-batch-list{grid-template-columns:1fr}.flight-terminal-head{flex-direction:column;align-items:flex-start}.flight-tools{justify-content:flex-start}.roster-week-toolbar{flex-direction:column;align-items:flex-start}.roster-week-actions{flex-wrap:wrap;align-items:flex-end;width:100%}.roster-week-actions label{flex:150px}.roster-week-actions input{width:100%}.roster-station-manager{grid-template-columns:1fr}.roster-station-actions{width:100%}.roster-station-actions input{flex:1;min-width:0}.people-form{grid-template-columns:1fr}.people-station-form{flex-direction:column}.people-station-form input{width:100%}.credentials-card{grid-template-columns:1fr}.person-row{grid-template-columns:38px minmax(0,1fr) auto}.person-account{display:none}.person-actions{grid-column:2/-1;justify-content:flex-start}.dashboard-toolbar{flex-direction:column;align-items:flex-start}.dashboard-toolbar-actions{width:100%}.dashboard-toolbar-actions label{flex:1}.dashboard-toolbar-actions input{width:100%}.dashboard-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-kpi:last-child{grid-column:1/-1}.dashboard-route-head{flex-direction:column;align-items:stretch}.dashboard-route-tools{flex-wrap:wrap;align-items:stretch}.dashboard-route-tools label{flex:230px}.dashboard-route-tools .dashboard-station-picker,.dashboard-route-tools .dashboard-station-picker-trigger{width:100%}.dashboard-route-tools>span{padding-bottom:0}.dashboard-station-picker-menu{width:min(320px,100vw - 104px);left:0;right:auto}.resource-heading,.resource-actions{flex-direction:column;align-items:flex-start}.resource-table{overflow-x:auto}.resource-row{min-width:680px}.station-table{overflow-x:auto}.station-row{min-width:680px}.analytics-upload-card{flex-direction:column;align-items:stretch;display:flex}.analytics-upload-card>.analytics-upload{width:100%}.analytics-filter-card{flex-direction:column;align-items:stretch;display:flex}.analytics-filters{flex-wrap:wrap}.analytics-filters label{flex:130px}.analytics-filters input{width:100%}.analytics-filters button{margin-top:2px}.analytics-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-kpi-grid article:last-child{grid-column:1/-1}.analytics-import-row{grid-template-columns:48px minmax(0,1fr) 28px;gap:9px;padding:10px 14px}.analytics-import-row>span:nth-child(3),.analytics-import-row time{display:none}.movement-toolbar{flex-direction:column;align-items:stretch}.movement-filters{flex-wrap:wrap}.movement-filters label{flex:130px}.movement-filters input,.movement-filters select{width:100%}.movement-filters button{margin-top:2px}.movement-kpis,.route-dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.movement-create{grid-template-columns:1fr;align-items:stretch}.movement-create button{width:100%}.movement-view-picker{flex-direction:column;align-items:stretch}.movement-view-picker label{width:100%}.movement-view-picker>span{padding-bottom:0}.route-dashboard-toolbar{flex-direction:column;align-items:stretch}.route-dashboard-filters{flex-wrap:wrap}.route-dashboard-filters>label{flex:140px}.route-dashboard-filters>label input{width:100%}.route-station-picker{flex:220px}.route-dashboard-filters .route-station-picker-trigger{width:100%}.route-station-picker-menu{width:min(320px,100vw - 104px);left:0;right:auto}.route-dashboard-grid,.route-category-summary-grid{grid-template-columns:1fr}.weather-toolbar{flex-direction:column;align-items:flex-start}.weather-actions{flex-wrap:wrap;width:100%}.weather-actions>span{flex:100%}.weather-frame-wrap{min-height:600px}.weather-frame-wrap iframe{height:640px}.antwork-launch{grid-template-columns:52px minmax(0,1fr);padding:24px}.antwork-launch-icon{width:52px;height:52px}.antwork-launch-button{grid-column:1/-1}.route-dashboard-card .movement-card-head{flex-direction:column;align-items:flex-start}.route-dashboard-card .route-dashboard-card-tools{flex-wrap:wrap;justify-content:flex-start;width:100%}}.inventory-terminal-workspace{max-width:1480px}.inventory-terminal-console{gap:16px;display:grid}.inventory-terminal-toolbar,.inventory-terminal-section{border:1px solid var(--border);background:#fff;border-radius:8px;overflow:hidden}.inventory-terminal-toolbar{justify-content:space-between;align-items:flex-end;gap:18px;padding:16px 18px;display:flex}.inventory-terminal-toolbar strong{color:var(--ink);font-size:14px}.inventory-terminal-toolbar p{color:var(--muted);margin:4px 0 0;font-size:11px}.inventory-terminal-filters{align-items:flex-end;gap:8px;display:flex}.inventory-terminal-filters label{color:var(--secondary);gap:6px;font-size:11px;font-weight:650;display:grid}.inventory-terminal-filters input,.inventory-terminal-filters select{border:1px solid var(--border);min-width:142px;height:34px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:0 8px;font-size:12px}.inventory-terminal-filters select{min-width:190px}.inventory-terminal-filters button,.inventory-terminal-filters a{border:1px solid var(--border);height:34px;color:var(--secondary);cursor:pointer;background:#fff;border-radius:4px;justify-content:center;align-items:center;gap:5px;padding:0 10px;font-size:12px;text-decoration:none;display:inline-flex}.inventory-terminal-filters button:hover,.inventory-terminal-filters a:hover{color:var(--action);background:#eef6fc;border-color:#b6d3e9}.inventory-terminal-filters button:disabled,.inventory-terminal-filters a.is-disabled{opacity:.45;pointer-events:none}.inventory-terminal-message{color:var(--danger);background:#fff0f0;border:1px solid #efc5c5;margin:0;padding:10px 12px;font-size:12px}.inventory-terminal-kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.inventory-terminal-kpis article{border:1px solid var(--border);background:#fff;border-radius:7px;grid-template-rows:auto auto auto;grid-template-columns:34px 1fr;align-content:center;column-gap:10px;min-height:108px;padding:15px;display:grid}.inventory-terminal-kpis article>span{width:32px;height:32px;color:var(--teal);background:#e4f0f3;border-radius:5px;grid-row:1/4;place-items:center;display:grid}.inventory-terminal-kpis small{color:var(--muted);font-size:11px}.inventory-terminal-kpis strong{color:var(--ink);font-family:DIN Alternate,sans-serif;font-size:28px;line-height:1.1}.inventory-terminal-kpis em{color:var(--secondary);text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-style:normal;overflow:hidden}.inventory-terminal-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;min-height:66px;padding:14px 18px;display:flex}.inventory-terminal-head h2{color:var(--ink);margin:0;font-size:16px}.inventory-terminal-head p{color:var(--muted);margin:4px 0 0;font-size:11px}.inventory-terminal-head>span{color:var(--secondary);font-size:11px}.inventory-space-grid{background:var(--subtle);grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:16px;display:grid}.inventory-space-grid>article{border:1px solid var(--border);background:#fff;border-radius:6px;min-width:0;overflow:hidden}.inventory-space-grid article>header{border-bottom:1px solid var(--border);align-items:center;gap:9px;min-height:58px;padding:11px 13px;display:flex}.inventory-space-grid article>header>span{width:30px;height:30px;color:var(--teal);background:#e4f0f3;border-radius:5px;place-items:center;display:grid}.inventory-space-grid h3{color:var(--ink);margin:0;font-size:14px}.inventory-space-grid header p{color:var(--muted);margin:3px 0 0;font-size:10px}.inventory-material-table{overflow-x:auto}.inventory-material-row{min-width:520px;min-height:48px;color:var(--secondary);border-bottom:1px solid #edf0f3;grid-template-columns:minmax(170px,1.15fr) minmax(140px,1fr) 100px;align-items:center;gap:10px;padding:0 13px;font-size:11px;display:grid}.inventory-material-row:last-child{border-bottom:0}.inventory-material-row--head{min-height:38px;color:var(--muted);background:var(--subtle);font-size:10px}.inventory-material-row strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.inventory-material-row b{color:var(--action);text-align:right;font-family:DIN Alternate,sans-serif;font-size:17px}.inventory-material-row b small{color:var(--muted);font-family:PingFang SC,sans-serif;font-size:10px;font-weight:400}.inventory-material-table>p{color:var(--muted);text-align:center;margin:0;padding:30px 13px;font-size:11px}.inventory-change-table{overflow-x:auto}.inventory-change-row{min-width:940px;min-height:52px;color:var(--secondary);border-bottom:1px solid #edf0f3;grid-template-columns:145px 120px minmax(240px,1.4fr) 130px 130px 120px;align-items:center;gap:10px;padding:0 18px;font-size:11px;display:grid}.inventory-change-row:last-child{border-bottom:0}.inventory-change-row--head{min-height:40px;color:var(--muted);background:var(--subtle);font-size:10px}.inventory-change-row time{color:var(--muted);font-family:SFMono-Regular,Consolas,monospace;font-size:10px}.inventory-change-row strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.inventory-terminal-empty{color:var(--muted);text-align:center;grid-column:1/-1;margin:0;padding:42px 18px;font-size:12px}@media (max-width:980px){.inventory-terminal-toolbar{flex-direction:column;align-items:stretch}.inventory-terminal-filters{flex-wrap:wrap}.inventory-terminal-filters label{flex:150px}.inventory-terminal-filters input,.inventory-terminal-filters select{width:100%}.inventory-space-grid{grid-template-columns:1fr}}@media (max-width:720px){.inventory-terminal-kpis{grid-template-columns:1fr}.inventory-terminal-filters button,.inventory-terminal-filters a{flex:140px}}.analytics-workspace{max-width:1480px}.analytics-console{gap:16px;display:grid}.analytics-upload-card,.analytics-filter-card,.analytics-chart-card,.analytics-imports{border:1px solid var(--border);background:#fff;border-radius:8px;overflow:hidden}.analytics-upload-card{background:#f7fbfe;border-color:#b6d3e9;grid-template-columns:minmax(280px,1fr) auto;align-items:center;gap:14px 18px;padding:18px;display:grid}.analytics-upload-copy{align-items:flex-start;gap:11px;min-width:0;display:flex}.analytics-upload-icon{width:36px;height:36px;color:var(--action);background:#e8f2fa;border-radius:6px;flex:none;place-items:center;display:grid}.analytics-upload-copy h2{color:var(--ink);margin:0;font-size:16px}.analytics-upload-copy p{color:var(--secondary);margin:5px 0 0;font-size:12px;line-height:1.55}.analytics-select,.analytics-upload{cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:7px;min-height:36px;padding:0 13px;font-size:12px;font-weight:650;display:inline-flex}.analytics-select{border:1px solid var(--action);color:var(--action);background:#fff}.analytics-upload{color:#fff;background:var(--action);border:0}.analytics-upload:disabled{opacity:.45;cursor:not-allowed}.analytics-file-picks-head{border-top:1px solid #dbe7ef;grid-column:1/-1;align-items:center;gap:10px;padding-top:12px;display:flex}.analytics-file-picks-head strong{color:var(--ink);font-size:12px}.analytics-file-picks-head span{color:var(--muted);font-size:11px}.analytics-file-picks-head button{color:var(--danger);cursor:pointer;background:0 0;border:0;margin-left:auto;padding:3px 6px;font-size:11px}.analytics-file-picks{flex-wrap:wrap;grid-column:1/-1;gap:7px;display:flex}.analytics-file-picks span{max-width:280px;color:var(--secondary);border:1px solid var(--border);background:#fff;border-radius:4px;align-items:center;gap:5px;padding:6px 6px 6px 8px;font-size:11px;display:inline-flex}.analytics-file-picks b{text-overflow:ellipsis;white-space:nowrap;font-weight:400;overflow:hidden}.analytics-file-picks button{width:20px;height:20px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:3px;flex:none;place-items:center;padding:0;display:grid}.analytics-file-picks button:hover{color:var(--danger);background:#fff0f0}.analytics-drop-hint{color:var(--muted);grid-column:1/-1;font-size:11px}.analytics-upload-card>.analytics-upload{grid-column:1/-1;justify-self:start}.analytics-filter-card{justify-content:space-between;align-items:center;gap:18px;padding:14px 16px;display:flex}.analytics-filter-card strong{color:var(--ink);font-size:13px}.analytics-filter-card p{color:var(--muted);margin:4px 0 0;font-size:11px}.analytics-filters{align-items:flex-end;gap:8px;display:flex}.analytics-filters label{color:var(--secondary);gap:6px;font-size:11px;font-weight:650;display:grid}.analytics-filters input{border:1px solid var(--border);width:140px;height:34px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:0 8px;font-size:12px}.analytics-filters button{border:1px solid var(--border);height:34px;color:var(--secondary);cursor:pointer;background:#fff;border-radius:4px;align-items:center;gap:5px;padding:0 10px;font-size:12px;display:inline-flex}.analytics-filters button:disabled{opacity:.5;cursor:wait}.analytics-message{color:var(--success);background:#edf7f1;border:1px solid #cfe4d8;margin:0;padding:10px 12px;font-size:12px}.analytics-message--error{color:var(--danger);background:#fff0f0;border-color:#efc5c5}.analytics-ground-card{background:#f7fbfe;border:1px solid #b6d3e9;border-radius:8px;overflow:hidden}.analytics-ground-heading{border-bottom:1px solid #dbe7ef;justify-content:space-between;align-items:flex-start;gap:18px;padding:16px 18px 13px;display:flex}.analytics-ground-heading h2{color:var(--ink);margin:2px 0 0;font-size:16px}.analytics-ground-heading p:not(.section-kicker){max-width:620px;color:var(--secondary);margin:5px 0 0;font-size:12px;line-height:1.55}.analytics-ground-status{min-height:25px;color:var(--action);background:#fff;border:1px solid #b6d3e9;border-radius:4px;flex:none;align-items:center;padding:0 8px;font-size:11px;font-weight:700;display:inline-flex}.analytics-ground-form{flex-wrap:wrap;align-items:flex-end;gap:10px;padding:14px 18px;display:flex}.analytics-ground-form label{color:var(--secondary);gap:6px;font-size:11px;font-weight:650;display:grid}.analytics-ground-form input{border:1px solid var(--border);width:164px;height:34px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:0 8px;font-size:12px}.analytics-ground-form button{border:1px solid var(--action);color:#fff;background:var(--action);cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:5px;min-width:80px;height:34px;padding:0 11px;font-size:12px;font-weight:650;display:inline-flex}.analytics-ground-form button:disabled{opacity:.45;cursor:not-allowed}.analytics-ground-form .analytics-ground-cancel{border-color:var(--border);color:var(--secondary);background:#fff}.analytics-ground-value{border-left:1px solid #dbe7ef;align-content:center;min-width:132px;height:47px;padding:0 12px;display:grid}.analytics-ground-value small{color:var(--muted);font-size:10px}.analytics-ground-value strong{color:var(--ink);margin-top:3px;font-family:DIN Alternate,PingFang SC,sans-serif;font-size:21px;line-height:1}.analytics-ground-value em{color:var(--action);margin-left:3px;font-family:PingFang SC,Microsoft YaHei,sans-serif;font-size:11px;font-style:normal;font-weight:500}.analytics-ground-total{color:var(--secondary);flex-wrap:wrap;align-items:baseline;gap:8px;padding:0 18px 14px;font-size:12px;display:flex}.analytics-ground-total strong{color:var(--ink);font-family:DIN Alternate,PingFang SC,sans-serif;font-size:20px}.analytics-ground-total small{color:var(--muted);font-size:11px}.analytics-ground-note,.analytics-ground-readonly{color:var(--muted);margin:0;padding:0 18px 14px;font-size:11px;line-height:1.5}.analytics-ground-readonly{color:var(--danger)}.analytics-kpi-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.analytics-kpi-grid article{border:1px solid var(--border);background:#fff;border-radius:6px;align-content:space-between;gap:5px;min-height:116px;padding:15px;display:grid}.analytics-kpi-grid small{color:var(--muted);font-size:12px}.analytics-kpi-grid strong{color:var(--ink);font-family:DIN Alternate,PingFang SC,sans-serif;font-size:30px;line-height:1}.analytics-kpi-grid em{color:var(--action);font-family:PingFang SC,Microsoft YaHei,sans-serif;font-size:12px;font-style:normal}.analytics-kpi-grid span{color:var(--secondary);font-size:11px}.analytics-kpi-grid .analytics-kpi--accent{background:#f7fbfe;border-color:#b6d3e9}.analytics-kpi--accent strong{color:var(--action)}.analytics-chart-grid{grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:16px;display:grid}.analytics-chart-card{min-width:0;padding:16px}.analytics-chart-card--wide{min-height:350px}.analytics-chart-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.analytics-chart-heading h2,.analytics-imports-head h2{color:var(--ink);margin:0;font-size:16px}.analytics-chart-heading p,.analytics-imports-head p{color:var(--muted);margin:4px 0 0;font-size:11px}.analytics-chart-heading>span,.analytics-imports-head>span{color:var(--secondary);font-size:11px}.analytics-chart{height:260px;margin-top:10px}.analytics-chart--pie{height:250px}.analytics-chart--stations{height:318px}.analytics-empty{min-height:240px;color:var(--muted);border:1px solid var(--border);background:#fff;border-radius:8px;align-content:center;place-items:center;gap:8px;display:grid}.analytics-empty svg{color:var(--action)}.analytics-empty strong{color:var(--secondary);font-size:14px}.analytics-empty span{font-size:12px}.analytics-imports{margin-top:0}.analytics-imports-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;min-height:66px;padding:14px 18px;display:flex}.analytics-import-row{border-bottom:1px solid #edf0f3;grid-template-columns:48px minmax(200px,1fr) 120px 130px 28px;align-items:center;gap:12px;min-height:54px;padding:0 18px;display:grid}.analytics-import-row:last-child{border-bottom:0}.analytics-import-row strong{color:var(--secondary);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.analytics-import-row>span:nth-child(3),.analytics-import-row time{color:var(--muted);font-size:11px}.analytics-import-delete{color:#aa4a4a;cursor:pointer;background:0 0;border:0;border-radius:4px;place-items:center;width:28px;height:28px;padding:0;display:grid}.analytics-import-delete:hover{background:#fff1f1}.analytics-import-delete:disabled{opacity:.45;cursor:wait}.analytics-import-tag{border-radius:4px;width:fit-content;padding:3px 6px;font-size:11px}.analytics-import-tag--delivery{color:var(--action);background:#e8f2fa}.analytics-import-tag--tuning{color:var(--warning);background:#fff3db}.analytics-filters select{border:1px solid var(--border);width:190px;height:34px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:0 8px;font-size:12px}.analytics-week-buttons{gap:4px;display:flex}.analytics-week-buttons button{padding:0 8px}.analytics-export{border:1px solid var(--action);color:#fff;background:var(--action);white-space:nowrap;border-radius:4px;align-items:center;gap:5px;height:34px;padding:0 10px;font-size:12px;text-decoration:none;display:inline-flex}.analytics-export:hover{border-color:var(--action-hover);background:var(--action-hover)}.analytics-export.is-disabled{opacity:.42;pointer-events:none}.analytics-station-picks{border-top:1px solid var(--border);background:var(--subtle);flex-wrap:wrap;gap:6px;max-height:108px;margin:10px -16px -16px;padding:10px 16px 12px;display:flex;overflow-y:auto}.analytics-station-picks button{border:1px solid var(--border);min-height:27px;color:var(--secondary);cursor:pointer;background:#fff;border-radius:4px;align-items:center;gap:4px;padding:0 8px;font-size:10px;display:inline-flex}.analytics-station-picks button:hover{color:var(--action);border-color:#b6d3e9}.analytics-station-picks button.active{color:#fff;border-color:var(--action);background:var(--action)}.analytics-quality-strip{border:1px solid var(--border);background:#fff;border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;display:flex}.analytics-quality-title{color:var(--ink);align-items:center;gap:6px;margin-right:4px;font-size:12px;display:inline-flex}.analytics-quality-title svg{color:var(--action)}.analytics-quality-chip{border:1px solid var(--border);color:var(--secondary);background:var(--subtle);border-radius:4px;align-items:center;gap:5px;padding:5px 8px;font-size:11px;display:inline-flex}.analytics-quality-chip em{color:inherit;opacity:.72;font-size:10px;font-style:normal}.analytics-quality-chip--ready{color:#287c5a;background:#edf7f1;border-color:#cfe4d8}.analytics-quality-chip--partial{color:#8b650d;background:#fff9e8;border-color:#ead8a4}.analytics-quality-chip--missing{color:#a33b3b;background:#fff3f3;border-color:#efc5c5}.analytics-kpi-section{gap:10px;display:grid}.analytics-section-heading{justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.analytics-section-heading h2{color:var(--ink);margin:2px 0 0;font-size:17px}.analytics-section-heading>span{color:var(--muted);font-size:11px}.analytics-kpi-grid--extended{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.analytics-kpi-card{min-height:142px!important}.analytics-kpi-card--ready{border-color:#d7e5ed!important}.analytics-kpi-card--partial{background:#fffdf6!important;border-color:#ead8a4!important}.analytics-kpi-card--missing{background:snow!important;border-color:#e8cccc!important}.analytics-kpi-card-head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.analytics-kpi-card-head small{color:var(--secondary);font-size:12px;font-weight:700}.analytics-kpi-card-head span{color:var(--muted);white-space:nowrap;font-size:10px}.analytics-kpi-card--ready .analytics-kpi-card-head span{color:#287c5a}.analytics-kpi-card--partial .analytics-kpi-card-head span{color:#8b650d}.analytics-kpi-card--missing .analytics-kpi-card-head span{color:#a33b3b}.analytics-kpi-card strong{font-size:27px!important}.analytics-kpi-card strong em{color:var(--action);margin-left:4px;font-size:12px;font-style:normal;font-weight:500}.analytics-kpi-card p{color:var(--muted);margin:0;font-size:10px;line-height:1.45}.analytics-summary-list{gap:0;margin:16px 0 0;display:grid}.analytics-summary-list div{border-bottom:1px solid #edf0f3;justify-content:space-between;align-items:center;min-height:42px;display:flex}.analytics-summary-list dt{color:var(--secondary);font-size:12px}.analytics-summary-list dd{color:var(--ink);margin:0;font-family:DIN Alternate,sans-serif;font-size:19px;font-weight:700}.analytics-station-table{border:1px solid var(--border);background:#fff;border-radius:8px;overflow:hidden}.analytics-table-scroll{overflow-x:auto}.analytics-station-table table{border-collapse:collapse;width:100%;min-width:760px}.analytics-station-table th,.analytics-station-table td{height:42px;color:var(--secondary);text-align:right;white-space:nowrap;border-bottom:1px solid #edf0f3;padding:0 14px;font-size:11px}.analytics-station-table thead th{height:36px;color:var(--muted);background:var(--subtle);font-size:10px;font-weight:600}.analytics-station-table th:first-child,.analytics-station-table td:first-child{text-align:left}.analytics-station-table tbody th{color:var(--ink);font-weight:700}.analytics-station-table tbody tr:last-child th,.analytics-station-table tbody tr:last-child td{border-bottom:0}@media (max-width:980px){.analytics-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.analytics-kpi-grid--extended{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-chart-grid{grid-template-columns:1fr}.analytics-filter-card{flex-direction:column;align-items:stretch}.analytics-filters{flex-wrap:wrap}.analytics-filters label{flex:150px}.analytics-filters input,.analytics-filters select{width:100%}}@media (max-width:720px){.analytics-upload-card{flex-direction:column;align-items:stretch;display:flex}.analytics-upload-card>.analytics-upload{width:100%}.analytics-filter-card{flex-direction:column;align-items:stretch;display:flex}.analytics-filters{flex-wrap:wrap}.analytics-filters label{flex:130px}.analytics-filters input{width:100%}.analytics-week-buttons{flex:100%}.analytics-week-buttons button{flex:1}.analytics-export{flex:140px;justify-content:center}.analytics-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-kpi-grid--extended{grid-template-columns:1fr}.analytics-kpi-grid article:last-child{grid-column:1/-1}.analytics-import-row{grid-template-columns:48px minmax(0,1fr) 28px;gap:9px;padding:10px 14px}.analytics-import-row>span:nth-child(3),.analytics-import-row time{display:none}}.duty-setting-card{background:#fff;border:1px solid #dce5eb;border-radius:8px;margin:18px 0;padding:18px}.duty-setting-heading{align-items:center;gap:10px;margin-bottom:14px;display:flex}.duty-setting-heading>span{color:#1769aa;background:#edf5fb;border-radius:7px;place-items:center;width:34px;height:34px;display:grid}.duty-setting-heading strong{font-size:15px;display:block}.duty-setting-heading p{color:#6d7b88;margin:3px 0 0;font-size:12px}.duty-setting-fields{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.duty-setting-fields label{color:#53616e;flex-direction:column;gap:6px;font-size:12px;display:flex}.duty-setting-fields input,.duty-setting-fields select{color:#24313d;background:#fff;border:1px solid #cfdbe3;border-radius:6px;min-width:124px;height:38px;padding:0 10px}.duty-setting-fields button{color:#fff;background:#1769aa;border:0;border-radius:6px;align-items:center;gap:6px;height:38px;padding:0 15px;font-weight:700;display:flex}.duty-setting-readonly{color:#74818d;align-items:center;height:38px;font-size:12px;display:flex}.material-catalog-panel{background:#fff;border:1px solid #dce5eb;border-radius:8px;margin:18px 0;padding:18px}.material-catalog-head,.material-catalog-head>div{justify-content:space-between;align-items:center;gap:10px;display:flex}.material-catalog-head>div>span{color:#1769aa;background:#edf5fb;border-radius:7px;place-items:center;width:34px;height:34px;display:grid}.material-catalog-head h2{margin:0;font-size:16px}.material-catalog-head p{color:#6d7b88;margin:3px 0 0;font-size:12px}.material-catalog-head>b{color:#1769aa;font-size:12px}.material-catalog-tools{background:#f6f9fb;border-radius:7px;flex-wrap:wrap;align-items:end;gap:9px;margin-top:16px;padding:12px;display:flex}.material-catalog-tools label{color:#60707d;flex-direction:column;gap:5px;font-size:11px;display:flex}.material-catalog-tools select,.material-catalog-tools input{background:#fff;border:1px solid #ccd9e2;border-radius:5px;height:36px;padding:0 9px}.material-catalog-tools input{width:230px}.material-catalog-tools button{color:#fff;background:#1769aa;border:0;border-radius:5px;align-items:center;gap:5px;height:36px;padding:0 12px;font-weight:700;display:flex}.material-catalog-tools .material-catalog-import{background:#287c8e}.material-catalog-tools>span,.material-catalog-readonly{color:#6d7b88;align-items:center;gap:4px;font-size:11px;display:flex}.material-catalog-readonly{margin:12px 0 0}.material-catalog-message{color:#287c5a;margin:10px 0 0;font-size:12px}.material-catalog-message--error{color:#b93131}.material-catalog-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.material-catalog-groups article{border:1px solid #e1e8ed;border-radius:6px;overflow:hidden}.material-catalog-groups header{background:#f7fafc;justify-content:space-between;padding:9px 11px;font-size:12px;display:flex}.material-catalog-groups header span{color:#7a8792}.material-catalog-groups article>div{flex-wrap:wrap;gap:6px;padding:10px;display:flex}.material-catalog-groups article>div>span{color:#384754;background:#fff;border:1px solid #d7e1e8;border-radius:4px;align-items:center;gap:4px;padding:5px 7px;font-size:11px;display:flex}.material-catalog-groups article>div>span.is-inactive{opacity:.48;text-decoration:line-through}.material-catalog-groups button{color:#74818d;cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid}@media (max-width:900px){.material-catalog-groups{grid-template-columns:1fr}.material-catalog-tools input{width:180px}}.external-entry-card{border:1px solid var(--border);background:#fff;border-radius:8px;justify-content:center;align-items:center;gap:24px;min-height:420px;padding:48px;display:flex}.external-entry-icon{color:#1769aa;background:#edf5fb;border-radius:8px;place-items:center;width:72px;height:72px;display:grid}.external-entry-card>div{max-width:620px}.external-entry-card h2{color:var(--ink);margin:4px 0 10px;font-size:25px}.external-entry-card>div>p:not(.section-kicker){color:var(--muted);margin:0;font-size:13px;line-height:1.8}.external-entry-error{color:#9c3030;background:#fff5f5;border:1px solid #f1c7c7;border-radius:6px;align-items:flex-start;gap:8px;margin:16px 0 0;padding:11px 12px;font-size:12px;line-height:1.6;display:flex}.external-entry-error svg{flex:none;margin-top:1px}.external-entry-security{color:#287c5a;align-items:center;gap:7px;margin:18px 0;font-size:12px;display:flex}.external-entry-card a{color:#fff;background:#1769aa;border-radius:6px;align-items:center;gap:8px;width:fit-content;min-height:42px;padding:0 16px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.external-entry-card a:hover{background:#12558b}@media (max-width:720px){.external-entry-card{flex-direction:column;align-items:flex-start;padding:28px}}.route-project-picker{flex:220px}@media (max-width:720px){.route-project-picker{width:100%;min-width:0}.route-dashboard-filters .route-project-picker .route-station-picker-trigger{width:100%}.route-project-summary-grid,.route-category-summary-grid{grid-template-columns:1fr}}.people-form--account{grid-template-columns:repeat(4,minmax(150px,1fr)) auto}.people-password-input{position:relative}.people-password-input input{padding-right:38px}.people-password-toggle{cursor:pointer;place-items:center;width:30px;height:30px;position:absolute;top:4px;right:4px;color:var(--muted)!important;background:0 0!important;border:0!important;padding:0!important;display:grid!important}.people-password-toggle:hover{color:var(--action)!important}.people-create-account{white-space:nowrap}.people-account-overlay{z-index:40;background:#0f192294;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.people-account-dialog{background:#fff;border-radius:8px;width:min(520px,100%);overflow:hidden;box-shadow:0 20px 60px #09172342}.people-account-dialog>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:18px;padding:20px 22px;display:flex}.people-account-dialog>header h2{color:var(--ink);margin:0;font-size:19px}.people-account-dialog>header p{color:var(--muted);margin:6px 0 0;font-size:12px}.people-account-dialog>header>button{border:1px solid var(--border);width:32px;height:32px;color:var(--secondary);cursor:pointer;background:#fff;border-radius:4px;flex:none;place-items:center;padding:0;display:grid}.people-account-form{gap:14px;padding:20px 22px 8px;display:grid}.people-account-form label{color:var(--secondary);gap:7px;font-size:12px;font-weight:650;display:grid}.people-account-form input{border:1px solid var(--border);width:100%;height:38px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:0 10px;font-size:13px}.people-account-form>p{color:var(--muted);margin:0;font-size:11px;line-height:1.6}.people-account-error{color:var(--danger);background:#fff0f0;border:1px solid #efc5c5;margin:0 22px;padding:9px 10px;font-size:12px}.people-account-dialog>footer{justify-content:flex-end;gap:8px;padding:16px 22px 20px;display:flex}.people-account-dialog>footer button{border:1px solid var(--border);min-height:36px;color:var(--secondary);cursor:pointer;background:#fff;border-radius:4px;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:12px;display:inline-flex}.people-account-dialog>footer .people-account-save{color:#fff;border-color:var(--action);background:var(--action)}.people-account-dialog>footer button:disabled{opacity:.55;cursor:wait}@media (max-width:980px){.people-form--account{grid-template-columns:repeat(2,minmax(0,1fr))}.people-create-account{grid-column:1/-1}}@media (max-width:720px){.people-form--account{grid-template-columns:1fr}.people-create-account{grid-column:auto}.people-account-overlay{padding:12px}.people-account-dialog{max-height:calc(100vh - 24px);overflow-y:auto}}.movement-export{height:34px;color:var(--action);white-space:nowrap;background:#eef6fc;border:1px solid #b6d3e9;border-radius:4px;justify-content:center;align-items:center;gap:5px;padding:0 10px;font-size:12px;text-decoration:none;display:inline-flex}.movement-export:hover{background:#e1f0fa}.movement-export.is-disabled{opacity:.5;pointer-events:none}.movement-route-row{grid-template-columns:minmax(280px,1.5fr) 120px 120px 54px 54px 64px 100px;min-width:1040px}.route-dashboard-row{grid-template-columns:minmax(230px,1fr) 92px 92px 48px 48px 88px 48px;min-width:820px}.route-dashboard-row:not(.route-dashboard-row--head){min-height:92px}.route-dashboard-row strong{text-overflow:clip;white-space:normal;overflow:visible}.route-dashboard-lifetime{color:var(--muted);flex-wrap:wrap;align-items:center;gap:3px 7px;margin-top:2px;font-family:SFMono-Regular,Consolas,monospace;font-size:9px;font-style:normal;font-weight:500;line-height:1.55;display:flex}.route-dashboard-lifetime span{color:var(--muted);white-space:nowrap;font-size:9px;text-overflow:clip!important;overflow:visible!important}.route-dashboard-lifetime i{background:#b3bec6;border-radius:50%;flex:none;width:3px;height:3px}.notice-source-issue{color:var(--action);background:#f3f8fc;border:1px solid #cfe1ef;border-radius:5px;grid-column:1/-1;align-items:flex-start;gap:9px;padding:10px;display:flex}.notice-source-issue>svg{flex:none;margin-top:2px}.notice-source-issue>div{gap:3px;min-width:0;display:grid}.notice-source-issue small{color:var(--secondary);font-size:11px}.notice-source-issue strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.notice-source-issue span{color:var(--muted);font-size:11px}.terminal-notice-reference{color:var(--action);align-items:center;gap:6px;margin:-2px 0 11px;font-size:11px;font-weight:650;display:flex}.terminal-notice-reference svg{flex:none}.terminal-notice-reference span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.notice-detail-source-issue{background:#f3f8fc;border:1px solid #cfe1ef;border-left:3px solid #287c8e;margin:20px 22px 0;padding:14px 16px}.notice-detail-source-issue>span{color:#287c8e;align-items:center;gap:5px;font-size:11px;font-weight:650;display:flex}.notice-detail-source-issue>strong{color:var(--ink);margin-top:7px;font-size:14px;display:block}.notice-detail-source-issue>small{color:var(--muted);margin-top:5px;font-size:11px;display:block}.notice-detail-source-issue>p{color:var(--secondary);white-space:pre-wrap;margin:8px 0 0;font-size:12px;line-height:1.65}@media (max-width:720px){.notice-source-issue{grid-column:auto}}.roster-grid tbody tr[draggable=true]{cursor:grab}.roster-grid tbody tr[draggable=true]:active{cursor:grabbing}.roster-grid tbody tr.roster-row--dragging{opacity:.58}.roster-station-copy{vertical-align:top;min-width:0;display:inline-block}.roster-drag-handle{color:var(--muted);vertical-align:top;margin-top:1px;display:inline-block}.audit-workspace{max-width:1480px}.audit-console{gap:16px;display:grid}.audit-toolbar{border:1px solid var(--border);background:#fff;border-radius:8px;justify-content:space-between;align-items:flex-end;gap:18px;padding:16px 18px;display:flex}.audit-toolbar strong{color:var(--ink);font-size:14px}.audit-toolbar p{color:var(--muted);margin:4px 0 0;font-size:11px}.audit-filters{align-items:flex-end;gap:8px;display:flex}.audit-filters label{color:var(--secondary);gap:6px;font-size:11px;font-weight:650;display:grid}.audit-filters input,.audit-filters select{border:1px solid var(--border);min-width:142px;height:34px;color:var(--ink);font:inherit;background:#fff;border-radius:4px;padding:0 8px;font-size:12px}.audit-filters select:disabled{color:var(--muted);background:var(--subtle);cursor:not-allowed}.audit-filters button{border:1px solid var(--border);height:34px;color:var(--secondary);cursor:pointer;background:#fff;border-radius:4px;align-items:center;gap:5px;padding:0 10px;font-size:12px;display:inline-flex}.audit-filters button:hover:not(:disabled){color:var(--action);background:#eef6fc;border-color:#b6d3e9}.audit-filters button:disabled{opacity:.5;cursor:not-allowed}.audit-message{color:var(--danger);background:#fff0f0;border:1px solid #efc5c5;margin:0;padding:10px 12px;font-size:12px}.audit-table-card{border:1px solid var(--border);background:#fff;border-radius:8px;overflow:hidden}.audit-records-collapsible{display:block}.audit-records-summary{min-height:64px;color:var(--ink);cursor:pointer;background:#fff;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;list-style:none;display:flex}.audit-records-summary::-webkit-details-marker{display:none}.audit-records-summary:after{content:"+";width:22px;height:22px;color:var(--muted);text-align:center;font-size:20px;line-height:20px}.audit-records-collapsible[open]>.audit-records-summary{border-bottom:1px solid var(--border)}.audit-records-collapsible[open]>.audit-records-summary:after{content:"−"}.audit-records-summary span{font-size:15px;font-weight:650}.audit-records-summary b{color:var(--secondary);margin-left:auto;font-size:11px;font-weight:500}.audit-collapsed-empty{color:var(--muted);text-align:center;padding:58px 18px;font-size:12px}.audit-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;min-height:68px;padding:14px 18px;display:flex}.audit-head h2{color:var(--ink);margin:0;font-size:16px}.audit-head p{color:var(--muted);margin:4px 0 0;font-size:11px}.audit-head>span{color:var(--secondary);font-size:12px}.audit-table{overflow-x:auto}.audit-row{min-width:1120px;min-height:58px;color:var(--secondary);border-bottom:1px solid #edf0f3;grid-template-columns:150px 130px 150px 140px minmax(250px,1.2fr) minmax(180px,.9fr) minmax(180px,.9fr);align-items:center;gap:10px;padding:8px 18px;font-size:12px;display:grid}.audit-row:last-child{border-bottom:0}.audit-row--head{min-height:42px;color:var(--muted);background:var(--subtle);font-size:11px}.audit-row time{color:var(--muted);font-family:SFMono-Regular,Consolas,monospace;font-size:11px}.audit-row>span,.audit-row>strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.audit-row>span small,.audit-row>strong small{color:var(--muted);margin-top:3px;font-size:10px;font-weight:400;display:block}.audit-row>strong{color:var(--ink);font-weight:600}.audit-row--head>span{text-overflow:clip;white-space:nowrap;overflow:visible}@media (max-width:980px){.audit-toolbar{flex-direction:column;align-items:stretch}.audit-filters{flex-wrap:wrap}.audit-filters label{flex:140px}.audit-filters input,.audit-filters select{width:100%}}.terminal-notice{color:inherit;text-align:left;background:#fff;padding:0;display:block}.notice-record-list .terminal-notice:hover,.notice-record-list .terminal-notice:focus-within{background:#fff}.terminal-notice-summary{cursor:pointer;padding:17px 18px 12px;list-style:none;display:block}.terminal-notice-summary::-webkit-details-marker{display:none}.terminal-notice-summary:before{content:"+";float:right;width:20px;height:20px;color:var(--muted);text-align:center;margin:1px 0 0 10px;font-size:18px;line-height:18px}.terminal-notice[open]>.terminal-notice-summary:before{content:"−"}.terminal-notice--urgent>.terminal-notice-summary{padding-left:15px}.terminal-notice-body{padding:0 18px 17px}.terminal-notice--urgent>.terminal-notice-body{padding-left:15px}.terminal-notice-body>p{color:var(--secondary);margin:0 0 10px;font-size:13px;line-height:1.65}.terminal-notice-summary-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:10px;font-size:12px;display:flex}.terminal-notice-summary-meta strong{color:var(--success);align-items:center;gap:4px;display:inline-flex}.terminal-notice-summary-meta em{color:var(--action);margin-left:auto;font-size:11px;font-style:normal;font-weight:650}.terminal-notice--completed:not([open]) .terminal-notice-summary{padding-bottom:17px}.terminal-notice-detail-button{color:var(--action);font:inherit;cursor:pointer;background:#eef6fc;border:1px solid #b6d3e9;border-radius:4px;align-items:center;gap:4px;margin-left:auto;padding:5px 8px;font-size:11px;font-weight:650;display:inline-flex}.terminal-notice-detail-button:hover{background:#e1f0fa}
