:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#172342;background:#f5f7fb;font-size:16px;line-height:1.5;font-synthesis:none;--ink:#172342;--muted:#65728a;--line:#dfe5ef;--blue:#30469e;--dark:#13223f;--green:#13714f;--amber:#995600}
*{box-sizing:border-box}body{margin:0}button,input,a{font:inherit}button,.button{min-height:44px;border:1px solid var(--line);border-radius:8px;padding:10px 17px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:600;cursor:pointer;background:white;color:var(--ink);text-decoration:none;line-height:1.4;transition:background .15s}button:hover,.button:hover{background:#edf1f9}button:disabled{cursor:wait;opacity:.6}a{color:var(--blue);text-underline-offset:3px}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #8ca7ff;outline-offset:3px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.15;letter-spacing:-.035em;margin-bottom:12px}h2{font-size:1.15rem;margin-bottom:8px}h3{font-size:1rem;margin-bottom:5px}p{color:var(--muted);margin-bottom:16px}small,.small{font-size:.875rem;color:var(--muted)}[hidden]{display:none!important}.primary{background:var(--blue);color:white;border-color:var(--blue)}.primary:hover{background:#243779}.outline{background:white;border-color:#b9c6df;color:var(--blue)}.quiet{background:transparent;border-color:transparent;font-size:.875rem;color:var(--muted)}.danger{background:#ad263b;border-color:#ad263b;color:white}.danger:hover{background:#921d30}.eyebrow{display:block;font-size:.75rem;letter-spacing:.085em;font-weight:700;color:#71819c;margin-bottom:12px}svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}span[data-icon]{display:inline-flex}
.shell{display:grid;grid-template-columns:254px minmax(0,1fr);min-height:100dvh}.sidebar{background:var(--dark);color:white;padding:28px 18px 22px;display:flex;flex-direction:column}.brand{color:white;text-decoration:none;display:flex;align-items:center;gap:11px;font-size:1rem;font-weight:700;margin:0 2px 43px}.brand img{width:43px;height:43px;border-radius:50%;object-fit:contain;background:white}.brand small{display:block;font-size:.61rem;letter-spacing:.1em;margin-top:3px;color:#a7b5d0}.nav-label{font-size:.65rem;font-weight:700;letter-spacing:.1em;color:#9baaca;margin:0 12px 15px}nav{display:grid;gap:6px}nav button{justify-content:flex-start;color:#cbd5e8;background:transparent;border:0;text-align:left;font-weight:500;min-height:50px;padding:12px 13px;gap:13px}nav button:hover{background:#203253}nav button[aria-current=page]{background:#304782;color:white}.sidebar-note{margin:70px 8px 0;padding-top:23px;border-top:1px solid #35425b;display:grid;grid-template-columns:23px 1fr;gap:8px 10px;font-size:.8rem}.sidebar-note strong{align-self:center}.sidebar-note p{grid-column:1/-1;color:#9eafcc;font-size:.75rem;margin:5px 0 0}.workspace{min-width:0}header{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:20px;background:white;border-bottom:1px solid var(--line);padding:18px 34px}.breadcrumb{font-size:.875rem;color:#5e6b81}.breadcrumb span{padding:0 14px;color:#adb6c6}.breadcrumb b{color:var(--blue);font-weight:600}.profile{display:flex;gap:12px;align-items:center;font-size:.875rem}.profile small{display:block;font-size:.73rem}.avatar{width:38px;height:38px;background:#e5eafd;border-radius:50%;color:var(--blue);display:grid;place-items:center;font-weight:700}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:26px}.page-heading p{margin:0}.page-heading .button{flex-shrink:0}main{padding:35px;max-width:1510px;margin:auto}footer{padding:12px 35px 25px;color:#7b88a0;display:flex;justify-content:space-between;gap:15px;font-size:.75rem;flex-wrap:wrap}
.status-banner{border:1px solid #c1e4d6;background:#ecf7f1;border-radius:10px;padding:18px 22px;display:flex;align-items:center;gap:15px;margin-bottom:25px;color:var(--green)}.status-banner.warning{border-color:#f0d6a0;background:#fff7e8;color:var(--amber)}.status-banner p{margin:3px 0 0;font-size:.85rem;color:inherit}.status-banner strong{font-size:1rem}.status-dot{width:11px;height:11px;border-radius:50%;background:currentColor;display:inline-block;flex-shrink:0}.status-banner .quiet{margin-left:auto;color:inherit}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:24px}.card,.panel{background:white;border:1px solid var(--line);border-radius:12px;box-shadow:0 3px 9px #17234203}.card{padding:25px;display:flex;flex-direction:column}.card p{font-size:.875rem;margin-bottom:20px;flex:1}.card button{width:100%;margin-top:auto}.icon-tile{width:48px;height:48px;border-radius:12px;background:#edf0fb;color:var(--blue);display:grid;place-items:center;margin-bottom:19px}.icon-tile svg{width:25px;height:25px}.columns{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:24px;align-items:start}.panel{padding:25px;margin-bottom:22px}.panel-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:13px}.panel-heading p{font-size:.875rem;margin:0}.row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px 0;border-top:1px solid #edf0f5}.row:first-child{border-top:0}.row .details{flex:1;min-width:0}.row .details p{margin:3px 0 0;font-size:.875rem;overflow-wrap:anywhere}.row strong{font-size:.95rem}.badge{display:inline-flex;align-items:center;gap:6px;background:#eff2f7;color:#5d6b84;border-radius:20px;padding:5px 10px;font-size:.75rem;font-weight:650;white-space:nowrap}.badge.good{background:#e8f5ee;color:var(--green)}.badge.warn{background:#fff2d9;color:var(--amber)}.badge.bad{background:#ffedf0;color:#a52137}.notice,#notice{padding:14px 18px;border:1px solid #d2dcf3;border-radius:8px;background:#edf2fc;color:#405479;font-size:.875rem;margin-bottom:22px;overflow-wrap:anywhere}.notice.warn{background:#fff8e9;border-color:#efd7a6;color:#835500}.notice.error,#notice.error{background:#fff0f2;border-color:#efc5ce;color:#982139}.muted{color:var(--muted)}.small-link{display:inline-block;font-size:.875rem;font-weight:600;margin-top:10px}.empty{padding:25px 5px;color:var(--muted);font-size:.875rem}.line-list{list-style:none;margin:0;padding:0}.line-list li{border-bottom:1px solid #edf0f5;padding:15px 0}.line-list li:last-child{border:0}.line-list p{font-size:.875rem;margin:6px 0 0;overflow-wrap:anywhere}.timeline-label{display:flex;justify-content:space-between;gap:15px;align-items:center;font-size:.875rem}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:22px}.stat{background:#f7f9fc;padding:18px;border-radius:8px}.stat strong{display:block;margin-top:6px;font-size:1.1rem;overflow-wrap:anywhere}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px;flex-wrap:wrap}.log{white-space:pre-wrap;overflow-wrap:anywhere;max-height:500px;overflow:auto;background:#101e35;color:#dce5f7;border-radius:9px;padding:20px;font:13px/1.65 ui-monospace,SFMono-Regular,Consolas,monospace}.audit-table{width:100%;border-collapse:collapse;text-align:left;font-size:.875rem}.audit-table th{font-size:.75rem;color:var(--muted);font-weight:600}.audit-table td,.audit-table th{padding:13px 10px;border-bottom:1px solid var(--line);vertical-align:top;overflow-wrap:anywhere}.table-scroll{overflow-x:auto}.key-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.key-grid .panel{margin:0}.key-state{display:flex;gap:10px;align-items:center;margin:22px 0}.key-state p{margin:0}.inline-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.code{font:13px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere;background:#f0f3f8;padding:14px;border-radius:7px}.recovery-note{border-left:3px solid #c8d4f1;padding-left:16px;margin-top:20px}.recovery-note p{font-size:.875rem}.login{max-width:570px;margin:8vh auto;padding:38px;background:white;border:1px solid var(--line);border-radius:18px;box-shadow:0 15px 70px #1625400a}.login-logo{width:72px;height:72px;border-radius:50%;margin-bottom:25px}.login .primary{width:100%;margin:10px 0 18px;justify-content:space-between}.login>a:last-child{display:block;margin-top:25px;font-size:.875rem}.login h1{font-size:2.6rem}.login p{line-height:1.7}
dialog{width:min(540px,calc(100% - 30px));border:1px solid var(--line);border-radius:15px;padding:26px;color:var(--ink);box-shadow:0 24px 100px #111c3955;max-height:90dvh;overflow-y:auto}dialog::backdrop{background:#0e1d3f80}.dialog-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:14px}.dialog-heading h2{font-size:1.4rem;line-height:1.3}.icon-button{padding:0;min-width:35px;min-height:35px;border:0;font-size:1.5rem;background:#f1f4f9}.dialog-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:25px;flex-wrap:wrap}.field{display:block;font-size:.875rem;font-weight:600;margin:18px 0 7px}input{width:100%;min-height:45px;border:1px solid #bcc9df;border-radius:7px;padding:11px;background:white;color:var(--ink)}.check{display:flex;gap:10px;font-size:.875rem;align-items:flex-start;margin-top:18px}.check input{width:18px;min-height:18px;flex-shrink:0;margin-top:3px}.break{overflow-wrap:anywhere}
@media(min-width:1550px){.shell{grid-template-columns:270px minmax(0,1fr)}main{padding:45px 50px}}
@media(max-width:1100px){.shell{grid-template-columns:218px minmax(0,1fr)}main{padding:26px}.cards{gap:12px}.card{padding:18px}.columns{grid-template-columns:1fr}.brand{font-size:.85rem}.sidebar{padding:24px 12px}.profile small{display:none}header{padding:16px 26px}.breadcrumb{font-size:.75rem}.key-grid{grid-template-columns:1fr}}
@media(max-width:800px){.shell{display:block}.sidebar{padding:15px 18px}.brand{margin:0 0 13px;font-size:.95rem}.brand img{width:35px;height:35px}.nav-label,.sidebar-note{display:none}nav{display:flex;overflow:auto;gap:5px;padding-bottom:5px}nav button{white-space:nowrap;min-height:44px;font-size:.875rem;padding:10px 12px}nav svg{width:18px;height:18px}header{padding:13px 20px;min-height:66px}.breadcrumb{display:none}.profile{width:100%;font-size:.875rem}.profile .quiet{margin-left:auto}main{padding:24px 20px}.page-heading{align-items:flex-start}.page-heading .button{font-size:.75rem;min-height:40px;padding:10px}h1{font-size:1.9rem}.cards{grid-template-columns:1fr}.card{display:grid;grid-template-columns:45px 1fr;column-gap:14px;padding:20px}.card .icon-tile{grid-row:1/3;width:40px;height:40px;margin:0}.card h2{margin:0}.card p{margin:6px 0 17px}.card button{grid-column:1/-1}.panel{padding:20px}.row{flex-wrap:wrap}.row .details{min-width:130px}.stats{grid-template-columns:1fr}.stat{display:flex;justify-content:space-between;gap:15px;align-items:center}.stat strong{margin:0;font-size:.875rem}.status-banner{padding:17px}.status-banner .quiet{font-size:.75rem;padding:8px}.status-banner strong{font-size:.9rem}.status-banner p{font-size:.75rem}footer{padding:15px 20px}.login{margin:25px 15px;padding:28px}.login h1{font-size:2.2rem}.audit-table{min-width:590px}.page-heading .eyebrow{font-size:.65rem}.page-heading p{font-size:.875rem}}
.setup-steps{padding-left:23px;margin-bottom:20px}.setup-steps li{padding-left:5px;margin-bottom:18px}.setup-steps p{font-size:.875rem;margin:5px 0 0}.setup-steps .code{margin-top:10px}pre.code{white-space:pre-wrap}details{margin-top:18px}summary{cursor:pointer;font-weight:600;color:var(--blue);padding:10px 0;min-height:44px}details>p:first-of-type{margin-top:12px}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
