:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#17202b;background:#f3f6f8;font-synthesis:none;line-height:1.5}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button{border:1px solid #b8c4ce;border-radius:.45rem;background:#fff;color:#17202b;cursor:pointer;min-height:2.5rem;padding:.55rem .85rem}button:hover:not(:disabled){border-color:#567184;background:#f5f8fa}button:disabled{cursor:not-allowed;opacity:.58}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #8bc8ff;outline-offset:2px}input,select,textarea{border:1px solid #9eacb7;border-radius:.4rem;background:#fff;color:#17202b;min-height:2.5rem;padding:.55rem .65rem;width:100%}textarea{resize:vertical}label{display:grid;gap:.35rem;font-weight:650}h1,h2,h3,h4,p{margin-top:0}h1{font-size:clamp(1.55rem,2vw,2rem);margin-bottom:0}h2{font-size:1.45rem;margin-bottom:0}h3{font-size:1.1rem}h4{font-size:1rem;margin-bottom:0}.auth-page{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:1.25rem}.auth-card{background:#fff;border:1px solid #d4dde3;border-radius:.75rem;box-shadow:0 .75rem 2rem #1d344015;max-width:27rem;padding:2rem;width:100%}.eyebrow{color:#496575;font-size:.75rem;font-weight:750;letter-spacing:.1em;margin-bottom:.35rem;text-transform:uppercase}.muted{color:#5f707c}.stack{display:grid;gap:1rem}.compact-form{margin-top:1rem}.primary{background:#166b8f;border-color:#166b8f;color:#fff;font-weight:700}.primary:hover:not(:disabled){background:#0e5878;border-color:#0e5878}.message{border-radius:.45rem;margin:.85rem 0;padding:.7rem .85rem}.message.error{background:#fff0ee;border:1px solid #e3a29b;color:#8a281d}.message.success{background:#ecf8f0;border:1px solid #9acaab;color:#205e36}.state{color:#4e626e;margin:1.25rem 0}.state.empty{background:#f8fafb;border:1px dashed #bdc9d1;border-radius:.45rem;padding:1rem}.app-shell{margin:0 auto;max-width:1440px;min-height:100vh;padding:1.25rem}.topbar{align-items:center;border-bottom:1px solid #d4dde3;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1.25rem;padding-bottom:1.1rem}.account-menu{align-items:center;display:flex;flex-wrap:wrap;gap:.7rem;justify-content:flex-end}.account-display{color:#405662;font-size:.9rem}.badge{background:#e5eef3;border-radius:999px;color:#2d5368;display:inline-block;font-size:.76rem;font-weight:700;padding:.18rem .5rem;white-space:nowrap}.layout{align-items:start;display:grid;gap:1.25rem;grid-template-columns:13rem minmax(0,1fr)}.navigation{display:grid;gap:.4rem;position:sticky;top:1rem}.navigation button{text-align:left}.navigation button.active{background:#dcecf4;border-color:#82afc2;color:#0c4f6d;font-weight:750}.content{min-width:0}.panel{background:#fff;border:1px solid #d4dde3;border-radius:.7rem;padding:clamp(1rem,2vw,1.5rem)}.section-heading{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1.25rem}.split-grid{display:grid;gap:2rem;grid-template-columns:minmax(15rem,.8fr) minmax(0,1.4fr)}.search-form{display:grid;gap:.4rem;margin-bottom:1rem}.filter-toggle{align-items:center;display:flex;font-weight:650;grid-template-columns:auto 1fr;margin:0 0 1.25rem}.filter-toggle input{min-height:auto;width:auto}.search-controls{align-items:center;display:flex;gap:.5rem}.search-controls input{flex:1}.table-wrap{overflow-x:auto}table{border-collapse:collapse;min-width:42rem;width:100%}th,td{border-bottom:1px solid #e1e7eb;padding:.75rem .6rem;text-align:left;vertical-align:middle}th{color:#45606e;font-size:.8rem;letter-spacing:.025em;text-transform:uppercase}code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.83em;overflow-wrap:anywhere}.link-button{background:none;border:0;color:#075f89;min-height:auto;padding:0;text-align:left;text-decoration:underline}.load-more{margin-top:1rem}.status{border-radius:999px;display:inline-block;font-size:.78rem;font-weight:700;padding:.18rem .5rem;text-transform:capitalize}.status-active,.status-online{background:#e6f6eb;color:#196238}.status-revoked,.status-offline{background:#fcebea;color:#8b2c26}.status-unknown{background:#edf0f2;color:#5e6c74}.detail{background:#f8fbfc;border:1px solid #cbd8df;border-radius:.55rem;margin-top:1.5rem;padding:1rem}.details-list{display:grid;gap:.65rem;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));margin:0 0 1.5rem}.details-list div{background:#fff;border:1px solid #e0e7eb;border-radius:.4rem;padding:.65rem}dt{color:#5c707c;font-size:.78rem;font-weight:700;text-transform:uppercase}dd{margin:.2rem 0 0;overflow-wrap:anywhere}.detail-forms{border-top:1px solid #dbe4e8;padding-top:1.25rem}.permission-form{align-items:end;display:grid;gap:.65rem;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;margin:1.25rem 0 1.5rem}.permission-form .direction{color:#17607f;font-size:1.35rem;padding-bottom:.5rem}.relay-form{border:1px solid #dbe4e8;border-radius:.5rem;margin:1.25rem 0 1.5rem;padding:1rem}.relay-form h3{margin-bottom:1rem}.form-grid{display:grid;gap:.8rem;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));margin-bottom:1rem}.status-healthy{background:#e6f6eb;color:#196238}.status-draining{background:#fff4d7;color:#79530b}.status-disabled,.status-stale,.status-unhealthy{background:#fcebea;color:#8b2c26}.relay-metrics{margin-top:.55rem}.relay-metrics summary{color:#075f89;cursor:pointer;font-size:.82rem;font-weight:700}.metrics-grid{display:grid;gap:.45rem;grid-template-columns:repeat(2,minmax(7rem,1fr));margin:.65rem 0 0;min-width:18rem}.metrics-grid div{background:#f8fbfc;border:1px solid #e0e7eb;border-radius:.35rem;padding:.45rem}.metrics-grid dt{font-size:.68rem}.metrics-grid dd{font-size:.86rem}.sr-only{clip:rect(0,0,0,0);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}@media(max-width:800px){.layout,.split-grid{grid-template-columns:1fr}.navigation{display:flex;overflow-x:auto;position:static}.navigation button{text-align:center;white-space:nowrap}.permission-form{grid-template-columns:1fr}.permission-form .direction{display:none}.topbar{align-items:flex-start;flex-direction:column}.account-menu{justify-content:flex-start}}@media(max-width:500px){.app-shell{padding:.75rem}.auth-card{padding:1.25rem}.search-controls{align-items:stretch;flex-wrap:wrap}.search-controls input{flex-basis:100%}}
