:root{--crimson:#8f101b;--crimson-dark:#650710;--ink:#172331;--muted:#687586;--line:#e4e9ee;--surface:#fff;--canvas:#f4f6f8;--green:#198b62;--blue:#2d75d4;--gold:#d59622;--purple:#7650c8}*{box-sizing:border-box}body{margin:0;background:var(--canvas);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #e8b24b;outline-offset:2px}.admin-app-shell{min-height:100dvh;display:flex;overflow-x:clip;background:var(--canvas)}.admin-sidebar{flex:0 0 264px;background:linear-gradient(165deg,#9b0e1a,#700812 58%,#50050b);color:#fff}.sidebar-inner{position:sticky;top:0;height:100dvh;display:flex;flex-direction:column;padding:22px 14px 16px}.brand-lockup,.login-brand,.mobile-brand{display:flex;align-items:center;gap:10px}.brand-lockup{padding:0 11px 25px}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:10px 3px 10px 3px;background:#fff;color:var(--crimson);font-size:22px;font-weight:900;font-style:italic}.brand-lockup strong,.login-brand strong{display:block;font-size:17px;letter-spacing:-.03em}.brand-lockup small,.login-brand small{display:block;color:#ffd8d4;font-size:10px;text-transform:uppercase;letter-spacing:.12em;margin-top:2px}.navigation-panel{flex:1;min-height:0;overflow:auto;scrollbar-width:thin}.nav-group{margin:0 0 13px}.nav-group-label{display:block;color:#f2aaa5;font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;padding:5px 12px 7px}.nav-item{width:100%;min-height:44px;display:flex;align-items:center;gap:11px;border:0;border-radius:8px;padding:8px 12px;background:transparent;color:#fff;text-align:left;font-size:13px}.nav-item:hover{background:rgba(255,255,255,.1)}.nav-item.nav-active{background:#e41b2b;box-shadow:0 7px 17px rgba(30,0,0,.18);font-weight:750}.nav-current{margin-left:auto}.nav-logout{margin-top:10px;color:#ffd2cf}.sidebar-account{display:flex;align-items:center;gap:10px;border-top:1px solid rgba(255,255,255,.15);padding:16px 10px 0}.profile-chip strong,.sidebar-account strong{display:block;font-size:12px}.profile-chip small,.sidebar-account small{display:block;color:#efb7b4;font-size:11px;margin-top:3px}.avatar{flex:0 0 auto;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#f6c05e;color:#57210a;font-size:11px;font-weight:900}.admin-main-shell{flex:1;min-width:0;display:flex;flex-direction:column}.admin-desktop-header{height:72px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 28px;border-bottom:1px solid var(--line);background:#fff}.search-box{max-width:460px;min-width:230px;flex:1;height:42px;display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:9px;padding:0 12px;color:#8b96a5;font-size:12px}.search-box kbd{margin-left:auto;border:1px solid #dbe1e8;border-radius:5px;padding:3px 6px;font-size:10px}.header-actions{display:flex;align-items:center;gap:14px}.location-chip,.profile-chip{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:8px;padding:8px 11px;background:#fff;font-size:12px}.profile-chip{border:0;padding:0 0 0 7px}.profile-chip small{color:var(--muted)}.icon-button{position:relative;display:grid;place-items:center;min-width:40px;min-height:40px;border:0;border-radius:8px;background:transparent;color:var(--ink)}.icon-button:hover{background:#f0f3f6}.header-actions .icon-button i{position:absolute;top:5px;right:5px;width:7px;height:7px;border-radius:50%;background:#e41b2b}.admin-mobile-header,.mobile-bottom-nav{display:none}.admin-content{width:100%;max-width:1600px;margin:0 auto;padding:27px 28px 42px}.content-toolbar{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:22px}.content-toolbar h1{margin:3px 0 5px;color:#253344;font-size:28px;line-height:1.1;letter-spacing:-.04em}.content-toolbar h1 strong{color:var(--crimson)}.content-toolbar p{margin:0;color:var(--muted);font-size:13px}.content-eyebrow,.panel-eyebrow{color:#8c98a7;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.primary-button,.secondary-button{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:8px;padding:0 15px;font-weight:750;font-size:12px}.primary-button{border:1px solid var(--crimson);background:var(--crimson);color:#fff}.primary-button:hover{background:#a91421}.primary-button:disabled{opacity:.65;cursor:wait}.secondary-button{border:1px solid var(--line);background:#fff;color:var(--ink)}.secondary-button:hover{border-color:#c2ccd7;background:#fafbfc}.compact{min-height:36px}.notice{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:-4px 0 18px;border:1px solid #bce5d2;border-radius:8px;padding:10px 12px;background:#f0fbf5;color:#176f50;font-size:12px}.notice button{border:0;background:transparent;color:inherit}.notice-error{border-color:#f1c2c2;background:#fff3f3;color:#9a2020}.metric-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:14px}.metric-card{min-width:0;display:flex;gap:11px;align-items:center;border:1px solid var(--line);border-radius:10px;padding:15px 13px;background:#fff;box-shadow:0 2px 8px rgba(31,46,61,.03)}.metric-card>div:last-child{min-width:0}.metric-card span{color:var(--muted);font-size:11px}.metric-card span,.metric-card strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.metric-card strong{margin:4px 0;font-size:20px;letter-spacing:-.04em}.metric-card small{display:block;color:var(--green);font-size:10px;white-space:nowrap}.metric-icon{display:grid;place-items:center;width:39px;height:39px;flex:0 0 39px;border-radius:9px;color:#fff}.metric-red .metric-icon{background:#e51d2c}.metric-green .metric-icon{background:#1fa66f}.metric-blue .metric-icon{background:#367fdf}.metric-gold .metric-icon{background:#e7a31e}.metric-purple .metric-icon{background:#8251d7}.dashboard-grid{display:grid;gap:14px;margin-bottom:14px}.dashboard-grid-top{grid-template-columns:1.12fr 1.12fr .86fr}.dashboard-grid-middle{grid-template-columns:1.45fr .95fr}.dashboard-grid-bottom{grid-template-columns:repeat(3,1fr)}.admin-panel{min-width:0;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:0 2px 8px rgba(31,46,61,.03);overflow:hidden}.panel-heading{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:15px 15px 10px;border-bottom:1px solid #eff2f4}.panel-heading h2{margin:3px 0 0;font-size:14px;letter-spacing:-.015em}.panel-link{color:var(--crimson);font-size:11px;font-weight:800}.chart-unavailable{min-height:155px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:18px;color:#91a0ae;text-align:center;background:linear-gradient(145deg,#fbfcfd,#f5f7f9)}.chart-unavailable strong{color:#506070;font-size:13px}.chart-unavailable p{max-width:260px;margin:0;font-size:11px;line-height:1.5}.health-list,.live-list,.notification-list,.rank-list{padding:7px 15px 14px}.live-row{min-height:58px;display:grid;grid-template-columns:20px minmax(0,1fr) auto 28px;align-items:center;gap:8px;border-bottom:1px solid #f0f2f4;font-size:11px}.live-row:last-child{border-bottom:0}.live-row>div{min-width:0}.live-row small,.live-row strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.live-row small{margin-top:3px;color:var(--muted)}.live-row>span:last-child{color:var(--muted);font-size:10px;text-align:right}.status-pill{display:inline-flex;width:-moz-max-content;width:max-content;max-width:100%;border-radius:30px;padding:4px 8px;background:#eef2f5;color:#607080;font-size:10px;font-weight:800;text-transform:capitalize;white-space:nowrap}.status-confirmed,.status-healthy,.status-on-time,.status-operational,.status-paid{background:#e4f7ed;color:#17784f}.status-pending,.status-scheduled{background:#fff5dc;color:#9a680c}.status-cancelled,.status-delayed,.status-error{background:#ffebeb;color:#a62b2b}.data-table{width:100%;overflow-x:auto;overscroll-behavior-inline:contain}.table-head,.table-row{min-width:620px;display:grid;grid-template-columns:var(--table-columns,repeat(3,minmax(100px,1fr)));gap:12px;align-items:center;padding:11px 15px}.table-head{color:#8995a3;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;background:#fafbfc}.table-row{border-top:1px solid #f0f2f4;color:#334254;font-size:11px}.table-row>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-row>span:first-child{color:#202d3d;font-weight:750}.table-action{border:0;border-bottom:1px solid;padding:0;background:transparent;color:var(--crimson);font-size:11px;font-weight:750}.rank-row{min-height:43px;display:grid;grid-template-columns:20px minmax(0,1fr) 38px 70px;gap:8px;align-items:center;border-bottom:1px solid #f0f2f4;font-size:11px}.rank-row:last-child{border-bottom:0}.rank-row b{color:#9aa6b1}.rank-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rank-row strong{text-align:right}.rank-row i{height:7px;overflow:hidden;border-radius:8px;background:#edf0f2}.rank-row em{display:block;height:100%;border-radius:8px;background:var(--crimson)}.health-list>div{min-height:38px;display:flex;align-items:center;gap:8px;border-bottom:1px solid #f0f2f4;font-size:11px}.health-list>div:last-child{border-bottom:0}.health-list>div>span{color:var(--green)}.health-list label{flex:1}.notification-list>div{display:flex;gap:9px;padding:10px 0;border-bottom:1px solid #f0f2f4}.notification-list>div:last-child{border-bottom:0}.notification-list svg{flex:0 0 auto;color:var(--crimson)}.notification-list p,.notification-list small,.notification-list strong{display:block}.notification-list strong{font-size:11px}.notification-list p{margin:4px 0;color:var(--muted);font-size:11px}.notification-list small{color:#9ba6b0;font-size:10px}.empty-state{min-height:120px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:20px;color:#8b98a5;text-align:center}.empty-state strong{color:#596979;font-size:12px}.empty-state p{max-width:300px;margin:0;font-size:11px;line-height:1.45}.loading-state{min-height:260px;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--muted);font-size:13px}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.module-toolbar{display:flex;align-items:center;justify-content:space-between;margin:-4px 0 12px;color:var(--muted);font-size:11px}.modal-layer{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:18px;background:rgba(16,25,36,.58)}.modal-card{width:min(100%,520px);display:grid;gap:14px;border-radius:12px;padding:22px;background:#fff;box-shadow:0 20px 60px rgba(0,0,0,.25)}.modal-heading{display:flex;align-items:center;justify-content:space-between}.modal-heading h2{margin:0;font-size:18px}.modal-card label{display:grid;gap:6px;color:#536272;font-size:11px;font-weight:750;text-transform:capitalize}.login-card input,.modal-card input,.modal-card textarea{width:100%;border:1px solid #d8e0e7;border-radius:7px;padding:10px 11px;color:var(--ink);background:#fff}.modal-card textarea{min-height:130px;resize:vertical}.drawer-backdrop{position:fixed;inset:0;z-index:20;border:0;background:rgba(20,26,35,.5)}.mobile-drawer{position:fixed;inset:0 auto 0 0;z-index:21;width:min(84vw,320px);padding:0 14px;background:var(--crimson-dark);box-shadow:9px 0 30px rgba(0,0,0,.25)}.navigation-mobile{height:100%;padding:20px 0}.drawer-heading{display:flex;align-items:center;justify-content:space-between;padding:0 10px 18px;color:#fff}.navigation-mobile .icon-button{color:#fff}.navigation-mobile .nav-group-label{color:#efaaa7}.login-shell{min-height:100dvh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 20% 10%,#a51a28 0,#740914 35%,#45050a 100%)}.login-card{width:min(100%,420px);border-radius:16px;padding:34px;background:#fff;box-shadow:0 25px 70px rgba(0,0,0,.25)}.login-brand{margin-bottom:30px}.login-brand .brand-mark{background:var(--crimson);color:#fff}.login-brand strong{color:var(--ink)}.login-brand small{color:var(--muted)}.login-eyebrow{color:var(--crimson);font-size:10px;font-weight:850;letter-spacing:.14em}.login-card h1{margin:8px 0;font-size:28px}.login-card>p{margin:0 0 24px;color:var(--muted);font-size:13px;line-height:1.55}.login-card form{display:grid;gap:15px}.login-card label{display:grid;gap:7px;color:#536272;font-size:12px;font-weight:750}.form-error{border-radius:7px;padding:9px 10px;background:#fff0f0;color:#a32121;font-size:12px}.login-note{display:flex;align-items:center;gap:6px;margin-top:18px;color:#8995a0;font-size:10px}@media (max-width:1200px){.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-grid-top{grid-template-columns:repeat(2,1fr)}.dashboard-grid-top .admin-panel:last-child{grid-column:1/-1}.dashboard-grid-bottom{grid-template-columns:repeat(2,1fr)}.dashboard-grid-bottom .admin-panel:last-child{grid-column:1/-1}}@media (max-width:900px){.admin-sidebar{flex-basis:84px}.admin-sidebar .sidebar-inner{padding-inline:10px}.admin-sidebar .brand-lockup{justify-content:center;padding-inline:0}.admin-sidebar .brand-lockup>div,.admin-sidebar .nav-current,.admin-sidebar .nav-group-label,.admin-sidebar .nav-item span,.admin-sidebar .sidebar-account>div{display:none}.admin-sidebar .nav-item,.admin-sidebar .sidebar-account{justify-content:center;padding-inline:0}.admin-content,.admin-desktop-header{padding-inline:20px}.table-head{display:none}.table-row{min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px}.table-row>span{display:block;white-space:normal}.table-row>span:before{content:attr(data-label);display:block;margin-bottom:3px;color:#98a2ad;font-size:9px;font-weight:800;text-transform:uppercase}.table-row>span:first-child{color:#253344}}@media (max-width:700px){.admin-desktop-header,.admin-sidebar{display:none}.admin-mobile-header{height:62px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;border-bottom:1px solid var(--line);background:#fff}.mobile-brand{color:var(--crimson);font-size:15px}.mobile-brand .brand-mark{width:29px;height:29px;font-size:18px}.admin-content{padding:20px 14px 24px}.content-toolbar{align-items:flex-start;margin-bottom:18px}.content-toolbar h1{font-size:24px}.content-toolbar p{font-size:12px}.content-toolbar>.secondary-button{min-width:42px;padding:0;font-size:0}.content-toolbar>.secondary-button svg{margin:0}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.metric-card{padding:12px 9px;gap:8px}.metric-card strong{font-size:16px}.metric-icon{width:32px;height:32px;flex-basis:32px}.dashboard-grid,.dashboard-grid-bottom,.dashboard-grid-middle,.dashboard-grid-top{grid-template-columns:1fr;gap:10px;margin-bottom:10px}.dashboard-grid-bottom .admin-panel:last-child,.dashboard-grid-top .admin-panel:last-child{grid-column:auto}.panel-heading{min-height:52px;padding:13px 12px 9px}.panel-heading h2{font-size:13px}.table-head{display:none}.table-row{min-width:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px}.table-row>span{display:block;white-space:normal}.table-row>span:before{content:attr(data-label);display:block;margin-bottom:3px;color:#98a2ad;font-size:9px;font-weight:800;text-transform:uppercase}.table-row>span:first-child{color:#253344}.live-row{grid-template-columns:20px minmax(0,1fr) auto}.live-row>span:last-child{display:none}.rank-row{grid-template-columns:20px minmax(0,1fr) 42px 70px}.mobile-bottom-nav{position:static;z-index:10;display:grid;grid-template-columns:repeat(4,1fr);padding:8px 8px calc(8px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fff;box-shadow:0 -4px 18px rgba(24,37,51,.08)}.mobile-bottom-nav button{min-height:48px;display:grid;place-items:center;gap:3px;border:0;border-radius:8px;background:transparent;color:#7b8793;font-size:10px}.mobile-bottom-nav button.active{color:var(--crimson);font-weight:800}.mobile-bottom-nav button:hover{background:#f5f7f9}.module-toolbar{margin-bottom:10px}.modal-card{padding:18px;max-height:calc(100dvh - 36px);overflow:auto}.search-box{display:none}}@media (max-width:360px){.metric-grid{grid-template-columns:1fr}.metric-card{min-height:64px}.content-toolbar h1{font-size:21px}.health-list,.live-list,.notification-list,.panel-heading,.rank-list{padding-inline:10px}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}