:root{color:#172033;font-synthesis:none;text-rendering:optimizelegibility;--navy:#0b1628;--navy-light:#16263e;--green:#11864b;--green-soft:#e8f8ee;--orange:#d96b13;--orange-soft:#fff2e7;--blue:#3569d4;--muted:#657083;--line:#e0e6ee;--surface:#fff;--radius:18px;background:#eef2f6;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 10% 0,#3569d414,#0000 28rem),#eef2f6;min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}.app-shell{flex-direction:column;min-height:100vh;display:flex}.login-page{place-items:center;min-height:100vh;padding:1.25rem;display:grid}.login-card{border:1px solid var(--line);text-align:center;background:#fffffff0;border-radius:1.25rem;width:min(100%,25rem);padding:2.25rem;box-shadow:0 18px 50px #18253a1f}.login-brand-mark{margin:0 auto 1.1rem}.login-logo{width:min(100%,20rem);height:auto;margin:0 auto 1.1rem;display:block}.login-eyebrow{color:var(--blue)}.login-card h1{color:var(--navy)}.login-description{color:var(--muted);margin:.75rem 0 1.6rem;font-size:.9rem;line-height:1.5}.login-form{text-align:left;gap:.5rem;display:grid}.login-form label{color:#374154;margin-top:.45rem;font-size:.8rem;font-weight:700}.login-form input{color:#172033;background:#fff;border:1px solid #cbd4e0;border-radius:.65rem;outline:none;width:100%;min-height:2.75rem;padding:.65rem .75rem}.login-form input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #3569d429}.login-form button{color:#fff;background:var(--navy-light);cursor:pointer;border:0;border-radius:.65rem;min-height:2.8rem;margin-top:1rem;font-weight:800}.login-form button:hover{background:var(--navy)}.login-form button:disabled{cursor:wait;opacity:.7}.login-error{color:#b33b30;margin:.6rem 0 0;font-size:.8rem;line-height:1.4}.dashboard-header{color:#fff;background:var(--navy);border-bottom:3px solid #2c415f;justify-content:flex-start;align-items:center;gap:2rem;padding:1rem clamp(1rem,2.5vw,2.75rem);display:flex}.header-controls{align-items:center;gap:.7rem;margin-left:auto;display:flex}.header-controls .summary-bar{gap:.45rem}.header-controls .summary-item{min-height:2.35rem;box-shadow:none;color:#657083;background:#fff;border-color:#fff;padding:.4rem .65rem;font-size:.75rem}.header-controls .summary-item strong{color:#172033;font-size:.95rem}.header-controls .filter-tabs{box-shadow:none;background:#ffffff17;border-color:#ffffff24;display:none}.header-controls .filter-tabs button{color:#c6d1e1;min-height:2rem;font-size:.74rem}.header-controls .filter-tabs button:hover{color:#fff;background:#ffffff1a}.header-controls .filter-tabs button span{color:#9fb0c8;background:#ffffff1f}.header-controls .filter-tabs button.is-active{color:var(--navy);background:#fff}.header-controls .filter-tabs button.is-active span{color:#fff;background:var(--navy-light)}.brand-block,.header-info,.operator-cell,.summary-item,.privacy-label,.status-badge{align-items:center;display:flex}.brand-block{gap:.9rem}.brand-mark{color:#072012;letter-spacing:-.04em;background:linear-gradient(145deg,#4ade80,#1ca45b);border-radius:.85rem;place-items:center;width:2.85rem;height:2.85rem;font-weight:800;display:grid;box-shadow:0 7px 24px #11864b47}.brand-logo{object-fit:contain;flex:none;display:block}.brand-logo-stack{flex:none;width:4.5rem;height:2.85rem;display:block;position:relative;overflow:hidden}.brand-logo--mark{width:4.5rem;height:2.85rem}.brand-logo--white{filter:brightness(0)invert()}.brand-logo--stripes{clip-path:inset(0 86% 0 0);position:absolute;inset:0}.eyebrow{color:#9fb0c8;letter-spacing:.08em;text-transform:uppercase;margin:0 0 .1rem;font-size:.76rem;font-weight:700}h1{letter-spacing:-.035em;margin:0;font-size:clamp(1.25rem,2.1vw,1.8rem);line-height:1.1}.header-info{gap:clamp(.8rem,2vw,2rem)}.privacy-label{color:#c6d1e1;gap:.45rem;font-size:.8rem;font-weight:600}.privacy-label svg{fill:#69df96;width:1.1rem;height:1.1rem}.current-time{text-align:right;font-size:1.12rem;font-weight:700;line-height:1.15;display:grid}.current-time span{color:#9fb0c8;text-transform:uppercase;font-size:.7rem;font-weight:600}main{flex:1;width:100%;padding:0 0 .5rem}.overview-row{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.summary-bar{align-items:center;gap:.65rem;display:flex}.summary-item{border:1px solid var(--line);min-height:2.7rem;color:var(--muted);background:#ffffffd1;border-radius:.85rem;gap:.45rem;padding:.55rem .85rem;font-size:.86rem;box-shadow:0 2px 9px #2130480a}.summary-item strong{color:#172033;font-size:1.05rem}.summary-icon{border-radius:99px;width:.58rem;height:.58rem}.summary-item--available .summary-icon{background:var(--green);box-shadow:0 0 0 4px var(--green-soft)}.summary-item--running .summary-icon{background:var(--orange);box-shadow:0 0 0 4px var(--orange-soft)}.summary-item--total .summary-icon{background:var(--blue);box-shadow:0 0 0 4px #e8efff}.filter-tabs{border:1px solid var(--line);background:#fff;border-radius:.85rem;padding:.25rem;display:inline-flex;box-shadow:0 2px 9px #2130480a}.filter-tabs button{min-height:2.35rem;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:.65rem;align-items:center;gap:.45rem;padding:.45rem .75rem;font-size:.82rem;font-weight:700;transition:background .15s,color .15s;display:flex}.filter-tabs button span{background:#edf1f6;border-radius:99px;place-items:center;min-width:1.35rem;min-height:1.35rem;padding:0 .25rem;font-size:.7rem;display:grid}.filter-tabs button:hover{color:#172033;background:#f2f5f8}.filter-tabs button:focus-visible{outline-offset:2px;outline:3px solid #3569d44d}.filter-tabs button.is-active{color:#fff;background:var(--navy-light)}.filter-tabs button.is-active span{color:var(--navy);background:#fff}.service-table{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);overflow:hidden;box-shadow:0 12px 34px #18253a14}.table-header,.service-row{grid-template-columns:minmax(9rem,1.05fr) minmax(8.2rem,.95fr) minmax(14rem,1.75fr) minmax(6.2rem,.62fr) minmax(10rem,1.3fr) minmax(8rem,.9fr) minmax(5rem,.52fr) minmax(6rem,.6fr);align-items:center;display:grid}.table-header{color:#748095;border-bottom:1px solid var(--line);letter-spacing:.055em;text-transform:uppercase;background:#f7f9fb;min-height:2.7rem;font-size:.69rem;font-weight:700}.table-header>div,.service-row>div{min-width:0;padding:.6rem .75rem}.service-row{color:#374154;border-bottom:1px solid #e9edf2;min-height:4rem;font-size:clamp(.76rem,.83vw,.92rem);position:relative}.service-row:last-child{border-bottom:0}.service-row:before{content:"";width:.25rem;position:absolute;inset:0 auto 0 0}.service-row--available{background:linear-gradient(90deg,#e8f8eec7,#fff0 26rem)}.service-row--running{background:linear-gradient(90deg,#fff2e7bf,#fff0 28rem)}.service-row--available:before{background:var(--green)}.service-row--running:before{background:var(--orange)}.operator-cell{gap:.62rem}.operator-cell strong,.service-cell strong{color:#172033;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.operator-avatar{color:#43516a;background:#e9edf4;border-radius:.65rem;flex:none;place-items:center;width:2rem;height:2rem;font-size:.72rem;font-weight:800;display:grid}.service-row--available .operator-avatar{color:#0d6a3a;background:#d8f3e2}.service-row--running .operator-avatar{color:#a64e0b;background:#ffe4cc}.status-badge{white-space:nowrap;border-radius:99px;gap:.42rem;width:fit-content;padding:.36rem .56rem;font-size:.7rem;font-weight:800}.status-dot{background:currentColor;border-radius:99px;width:.48rem;height:.48rem}.status-badge--available{color:#0e7a43;background:#daf4e3}.status-badge--running{color:#b8540d;background:#ffe5cf}.empty-value{color:#b3bbc7}.elapsed-cell{color:#172033;font-variant-numeric:tabular-nums;font-weight:800}.service-cards{display:none}.empty-state{border-radius:var(--radius);min-height:14rem;color:var(--muted);text-align:center;background:#ffffffb3;border:1px dashed #c9d1dc;align-content:center;place-items:center;gap:.35rem;display:grid}.empty-state strong{color:#172033;font-size:1.05rem}footer{color:#7a8596;justify-content:center;gap:.55rem;padding:.25rem 1rem .4rem;font-size:.7rem;display:flex}@media (width<=1180px){.dashboard-header{gap:1rem}.header-controls{gap:.45rem}.header-controls .summary-item span:last-child{display:none}.table-header,.service-row{grid-template-columns:minmax(8.5rem,1.05fr) minmax(7.8rem,.9fr) minmax(12rem,1.65fr) minmax(5.8rem,.58fr) minmax(8.5rem,1.2fr) minmax(7.5rem,.85fr) minmax(4.5rem,.5fr) minmax(5.5rem,.6fr)}.table-header>div,.service-row>div{padding-inline:.55rem}}@media (width>=921px){.app-shell{height:100vh;min-height:0;overflow:hidden}main{flex-direction:column;min-height:0;display:flex}.service-table{flex-direction:column;flex:1;min-height:0;display:flex}.service-table>[role=rowgroup]{flex:1;grid-auto-rows:minmax(0,1fr);min-height:0;display:grid}.service-row{min-height:0}}@media (width<=920px){.service-table{display:none}.service-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;display:grid}.service-card{border:1px solid var(--line);background:#fff;border-radius:1rem;position:relative;overflow:hidden;box-shadow:0 6px 24px #18253a12}.service-card:before{content:"";height:.25rem;position:absolute;inset:0 0 auto}.service-card--available:before{background:var(--green)}.service-card--running:before{background:var(--orange)}.service-card__header{border-bottom:1px solid #edf0f4;justify-content:space-between;align-items:center;gap:.6rem;padding:.9rem .9rem .75rem;display:flex}.service-card--available .operator-avatar{color:#0d6a3a;background:#d8f3e2}.service-card--running .operator-avatar{color:#a64e0b;background:#ffe4cc}.card-service-name{background:#fff8f2;gap:.18rem;padding:.85rem .9rem;display:grid}.card-service-name span,.card-detail span{color:#788397;letter-spacing:.045em;text-transform:uppercase;font-size:.68rem;font-weight:700}.card-service-name strong{color:#172033;font-size:.92rem}.card-details-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:.3rem .9rem .85rem;display:grid}.card-detail{border-bottom:1px solid #edf0f4;gap:.18rem;padding:.65rem 0;display:grid}.card-detail:nth-child(odd){border-right:1px solid #edf0f4;padding-right:.65rem}.card-detail:nth-child(2n){padding-left:.65rem}.card-detail:last-child{border-bottom:0;border-right:0;grid-column:1/-1}.card-detail strong{color:#303b4f;text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;overflow:hidden}.card-detail--accent strong{color:#b8540d;font-variant-numeric:tabular-nums}.available-message{background:linear-gradient(120deg,#effaf3,#fff);align-items:center;gap:.8rem;padding:1.1rem .9rem;display:flex}.available-message>span{color:#fff;background:var(--green);border-radius:99px;flex:none;place-items:center;width:2.25rem;height:2.25rem;font-weight:800;display:grid}.available-message strong{color:#125d37;font-size:.9rem}.available-message p{color:#758194;margin:.15rem 0 0;font-size:.75rem}}@media (width<=680px){.dashboard-header{flex-wrap:wrap;align-items:center;padding:.85rem 1rem}.header-controls{order:3;width:100%;margin-left:0}.header-controls .summary-bar,.header-controls .filter-tabs{flex:1}.header-controls .filter-tabs{display:inline-flex}.header-controls .summary-item{flex:1;justify-content:center}.brand-mark{width:2.55rem;height:2.55rem}.eyebrow,.privacy-label{display:none}h1{margin-top:.3rem;font-size:1.2rem}.overview-row{display:grid}.summary-bar,.filter-tabs{width:100%}.summary-item{flex:1;justify-content:center;padding-inline:.45rem}.summary-item span:last-child{font-size:.75rem}.filter-tabs button{flex:1;justify-content:center;padding-inline:.4rem}.service-cards{grid-template-columns:1fr}footer{flex-wrap:wrap;line-height:1.2}}@media (width<=390px){.summary-item--total{display:none}.filter-tabs button{gap:.25rem;font-size:.75rem}}@media (orientation:landscape) and (height<=560px) and (width<=920px){.dashboard-header{padding-block:.55rem}.eyebrow,.privacy-label{display:none}main{padding-top:.65rem}.overview-row{margin-bottom:.65rem}.summary-item,.filter-tabs button{min-height:2.1rem;padding-block:.35rem}.service-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1500px){main{padding-block:0 .5rem}.service-row{min-height:4.15rem;font-size:.9rem}.table-header{font-size:.73rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}
