:root{--canvas:#f5f4ef;--paper:#fffefa;--ink:#202020;--muted:#75736c;--faint:#9a9890;--line:#e6e3db;--blue:#5d7895;--blue-deep:#435b73;--green:#47765f;--green-pale:#eaf1ec;--red:#a5584c;--red-pale:#f7ece9;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--ink);background:var(--canvas);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body,html{min-height:100%;margin:0}body{background:var(--canvas)}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.62}.loading-shell{min-height:100vh;display:grid;place-items:center;grid-gap:.8rem;gap:.8rem;color:var(--muted);font-size:.95rem}.spinner{width:1.1rem;height:1.1rem;border:2px solid var(--line);border-top-color:var(--blue);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.brand-lockup{display:flex;align-items:center;gap:.52rem;font-weight:700;letter-spacing:-.03em;font-size:1.08rem}.brand-mark{width:1.7rem;height:1.7rem;display:grid;place-items:center;border-radius:.52rem;background:var(--blue);color:white;font-size:.96rem;font-weight:800}.brand-divider{width:1px;height:1.2rem;margin:0 .35rem;background:var(--line)}.brand-section{color:var(--muted);font-size:.9rem;font-weight:500;letter-spacing:0}.eyebrow{margin:0 0 .5rem;color:var(--blue-deep);font-size:.68rem;font-weight:750;letter-spacing:.12em;line-height:1.2;text-transform:uppercase}.topbar{min-height:4.4rem;padding:0 clamp(1rem,4vw,4rem);border-bottom:1px solid var(--line);justify-content:space-between;background:rgba(255,254,250,.78)}.topbar,.topbar-actions{display:flex;align-items:center}.topbar-actions{gap:1.15rem}.operator{color:var(--muted);font-size:.78rem}.ghost-button,.refresh-button{border:1px solid var(--line);border-radius:.65rem;background:transparent;color:var(--ink);padding:.56rem .78rem;font-size:.8rem}.ghost-button:hover,.refresh-button:hover{border-color:var(--blue);color:var(--blue-deep)}.content{width:min(100% - 2rem,76rem);margin:0 auto;padding:clamp(2rem,5vw,4.2rem) 0 2rem}.intro-row{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;margin-bottom:2rem}h1,h2,p{margin-top:0}h1{margin-bottom:.55rem;font-size:clamp(2rem,4vw,3.3rem);font-weight:600;letter-spacing:-.055em;line-height:1.03}h2{font-size:1.05rem;font-weight:650;letter-spacing:-.025em}.lede,h2{margin-bottom:0}.lede{max-width:30rem;color:var(--muted);font-size:.95rem}.refresh-button{display:inline-flex;align-items:center;gap:.48rem;padding:.68rem .9rem;white-space:nowrap}.refresh-button span{font-size:1.15rem;line-height:.8}.health-banner{display:flex;align-items:center;gap:.85rem;margin-bottom:2.5rem;padding:1rem 1.15rem;border:1px solid var(--line);border-radius:.8rem;background:var(--paper)}.health-banner.is-healthy{background:var(--green-pale);border-color:#d7e6db}.health-banner.is-error{background:var(--red-pale);border-color:#ecd4cf}.health-dot{width:.6rem;height:.6rem;flex:none;border-radius:50%;background:var(--faint)}.is-healthy .health-dot{background:var(--green);box-shadow:0 0 0 .22rem #47765f1f}.is-error .health-dot{background:var(--red);box-shadow:0 0 0 .22rem #a5584c1f}.health-banner span,.health-banner strong{display:block}.health-banner strong{margin-bottom:.1rem;font-size:.86rem;font-weight:650}.health-banner div span{color:var(--muted);font-size:.76rem}.error-panel{margin:-1.6rem 0 2rem;padding:.8rem 1rem;border:1px solid #ecd4cf;border-radius:.65rem;color:var(--red);background:var(--red-pale);font-size:.82rem}.section-block{margin-bottom:2.8rem}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1rem}.section-meta{color:var(--faint);font-size:.72rem}.queue-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:.8rem;gap:.8rem}.metric-card,.panel{border:1px solid var(--line);border-radius:.85rem;background:var(--paper)}.metric-card{padding:1rem}.card-heading{display:flex;justify-content:space-between;gap:.5rem;color:var(--muted);font-size:.78rem}.card-heading .eyebrow{margin:0;color:var(--faint);font-size:.58rem}.metric-value{display:block;margin-top:1rem;font-size:2rem;font-weight:600;letter-spacing:-.06em;line-height:1}.metric-caption{display:block;margin-top:.32rem;color:var(--muted);font-size:.7rem}.queue-breakdown{display:grid;grid-template-columns:1fr;grid-gap:.22rem;gap:.22rem;margin-top:1.15rem;padding-top:.8rem;border-top:1px solid var(--line);color:var(--muted);font-size:.68rem}.queue-breakdown b{color:var(--ink);font-weight:650}.card-footnote{margin:1rem 0 0;color:var(--faint);font-size:.68rem}.two-column{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem;margin-bottom:1rem}.panel{padding:1.25rem}.panel .section-heading{margin-bottom:1.2rem}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:.78rem}td,th{padding:.72rem .35rem;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap}td:first-child,th:first-child{text-align:left}th{color:var(--faint);font-size:.64rem;font-weight:650;letter-spacing:.08em;text-transform:uppercase}td{color:var(--muted)}td:first-child{color:var(--ink);font-weight:550}tbody tr:last-child td{border-bottom:0}.empty-state{margin:0;padding:1.6rem 0;color:var(--faint);font-size:.8rem}.failures-panel{margin-bottom:2rem}.failure-list{display:grid}.failure-row{display:grid;grid-template-columns:1.25fr 1fr .8fr .85fr .8fr 1.15fr;grid-gap:.8rem;gap:.8rem;align-items:center;padding:.8rem 0;border-top:1px solid var(--line);color:var(--muted);font-size:.74rem}.failure-code{color:var(--red);font-weight:650}.failure-row time{color:var(--faint);text-align:right}.footer{padding:1rem 0 2rem;color:var(--faint);font-size:.7rem}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:1.5rem;background:var(--canvas)}.auth-card{width:min(100%,27rem);padding:2rem;border:1px solid var(--line);border-radius:1rem;background:var(--paper);box-shadow:0 1.5rem 4rem #34312a0b}.auth-card .brand-lockup{margin-bottom:3.4rem}.auth-card h1{max-width:18rem;margin-bottom:.8rem;font-size:2.15rem}.auth-copy{margin-bottom:1.8rem;color:var(--muted);font-size:.86rem;line-height:1.55}.google-button{width:100%;display:flex;align-items:center;justify-content:center;gap:.55rem;padding:.75rem 1rem;border:1px solid var(--line);border-radius:.58rem;background:white;color:var(--ink);font-size:.82rem;font-weight:650}.google-button:hover{border-color:var(--blue);color:var(--blue-deep)}.google-mark{color:#4285f4;font-size:1rem;font-weight:800}.auth-divider{display:flex;align-items:center;gap:.7rem;margin:1.2rem 0;color:var(--faint);font-size:.68rem}.auth-divider:after,.auth-divider:before{content:"";height:1px;flex:1 1;background:var(--line)}.auth-form{display:grid;grid-gap:1rem;gap:1rem}.auth-form label{display:grid;grid-gap:.42rem;gap:.42rem;color:var(--muted);font-size:.74rem}.auth-form input{width:100%;padding:.75rem .8rem;border:1px solid var(--line);border-radius:.55rem;outline:none;color:var(--ink);background:#fff;font-size:.88rem}.auth-form input:focus{border-color:var(--blue);box-shadow:0 0 0 .2rem #5d78951a}.primary-button{margin-top:.35rem;padding:.8rem 1rem;border:0;border-radius:.58rem;background:var(--blue-deep);color:white;font-size:.82rem;font-weight:650}.primary-button:hover{background:#344a60}.form-error{margin:0;padding:.7rem .8rem;border-radius:.5rem;color:var(--red);background:var(--red-pale);font-size:.74rem;line-height:1.4}.auth-note{margin:1.3rem 0 0;color:var(--faint);font-size:.68rem;line-height:1.45}@media (max-width:66rem){.queue-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.failure-row{grid-template-columns:1.25fr 1fr .8fr .85fr}.failure-row span:nth-child(5),.failure-row time{text-align:left}}@media (max-width:48rem){.topbar{align-items:flex-start;gap:1rem;padding-top:1rem;padding-bottom:1rem}.topbar,.topbar-actions{flex-wrap:wrap}.operator{display:none}.intro-row{align-items:flex-start;flex-direction:column;gap:1rem}.two-column{grid-template-columns:1fr}.queue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.failure-row{grid-template-columns:1fr 1fr;gap:.35rem .8rem}.failure-row time{text-align:left}}@media (max-width:25rem){.queue-grid{grid-template-columns:1fr}}