:root{color-scheme:dark;--bg:#101419;--panel:#192128;--line:#33414b;--ink:#e5efed;--muted:#a4b6bd;--accent:#92ebbe}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 system-ui,sans-serif}header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px max(24px,calc((100vw - 1120px)/2));border-bottom:1px solid var(--line)}a{color:var(--accent);text-underline-offset:4px}nav{display:flex;gap:22px}.brand{text-decoration:none;font-weight:800;font-size:22px}.brand span{font-weight:400;color:var(--muted)}main{max-width:1170px;margin:auto;padding:38px 24px}.eyebrow{color:var(--accent);font-size:12px;letter-spacing:.14em;font-weight:700}h1{font-size:clamp(30px,5vw,48px);line-height:1.15;margin:10px 0}h2{font-size:22px;margin:0 0 12px}h3{font-size:20px;margin:0;overflow-wrap:anywhere}p{color:var(--muted);margin:8px 0 18px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:30px 0}.stats>div,.panel{border:1px solid var(--line);border-radius:12px;background:var(--panel);padding:24px}.stats span,.stats small{display:block;color:var(--muted)}.stats strong{display:block;font-size:29px;margin:10px 0}.panel{margin:20px 0}.add{display:grid;grid-template-columns:1fr auto;gap:10px}.add label{grid-column:1/-1}input,button{font:inherit;border:1px solid var(--line);border-radius:6px;padding:11px 15px}input{background:#101419;color:var(--ink);min-width:0}button{cursor:pointer;background:var(--accent);color:#102019;font-weight:700}button.secondary{background:transparent;color:var(--ink)}button:hover{filter:brightness(1.1)}:focus-visible{outline:3px solid #b8cdff;outline-offset:3px}.hint,small{font-size:13px;color:var(--muted)}.hint{margin-top:18px}.site{padding:24px 0;border-top:1px solid var(--line)}.site-title,.actions{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.site-title{justify-content:space-between}.badge{font-size:12px;text-transform:uppercase;letter-spacing:.05em;padding:4px 9px;border:1px solid var(--line);border-radius:5px;color:var(--accent)}dl{display:flex;gap:40px;flex-wrap:wrap}dt{font-size:12px;color:var(--muted)}dd{margin:0}code{font-size:12px;overflow-wrap:anywhere}.actions{margin:16px 0}.actions form{margin-left:auto}.notice{border:1px solid #c1a866;color:#f1dca6;padding:16px;border-radius:8px}.error{border-color:#e99090;color:#ffc1c1}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;text-align:left}td,th{padding:10px 12px;border-bottom:1px solid var(--line);white-space:nowrap}th{font-size:12px;color:var(--muted)}.empty{padding:30px 0;color:var(--muted)}footer{font-size:13px;color:var(--muted);padding:20px 0}ul{padding-left:20px}@media(max-width:700px){header{padding:18px;align-items:flex-start}nav{gap:12px;flex-wrap:wrap;font-size:13px}.stats{grid-template-columns:1fr 1fr}.stats>div,.panel{padding:18px}.add{grid-template-columns:1fr}.add button{width:100%}main{padding:24px 16px}.stats strong{font-size:23px}.actions form{margin-left:0}}
.login{max-width:560px}.login-form{display:grid;gap:18px}.login-form label,.login-form input{display:block;width:100%}.login-form input{margin-top:7px}nav{align-items:center}nav form{margin:0}nav span{font-size:13px;overflow-wrap:anywhere}

/* Compact hosting dashboard; account forms keep their existing spacing. */
.dashboard{font-size:14px;line-height:1.5}
.dashboard header{padding-top:12px;padding-bottom:12px}
.dashboard main{padding-top:22px;padding-bottom:22px}
.dashboard h1{font-size:30px;margin:6px 0}
.dashboard h2{font-size:18px;margin-bottom:8px}
.dashboard p{margin:6px 0 12px}
.dashboard .stats{gap:10px;margin:16px 0}
.dashboard .stats>div,.dashboard .panel{padding:16px;border-radius:8px}
.dashboard .stats strong{font-size:24px;margin:4px 0}
.dashboard .panel{margin:12px 0}
.dashboard .hint,.dashboard small{font-size:12px}
.dashboard .hint{margin-top:10px}
.dashboard input,.dashboard button{padding:8px 12px}
.dashboard td,.dashboard th{padding:7px 10px}
.dashboard dl{gap:24px;margin:10px 0}
.dashboard .site{padding:0;border-top:1px solid var(--line)}
/* Stable columns keep labels separated, regardless of domain length. */
.site summary{display:grid;grid-template-columns:18px minmax(0,1fr) 100px 175px;align-items:center;gap:18px;cursor:pointer;padding:15px 8px;min-height:54px;list-style:none}
.site summary::-webkit-details-marker{display:none}
.site summary::marker{content:""}
.site-chevron{width:16px;height:16px;fill:var(--muted);transition:transform .15s ease}
.site[open]>summary .site-chevron{transform:rotate(90deg)}
.site-domain{min-width:0;font-size:15px;font-weight:650;overflow-wrap:anywhere}
.site-size{color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right}
.site summary .badge{justify-self:end;max-width:100%;font-size:10px;padding:4px 8px;margin:0;float:none;text-align:center;background:rgba(146,235,190,.04)}
.site summary:hover{background:rgba(146,235,190,.04)}
.site[open]>summary{border-bottom:1px solid var(--line)}
.site-body{padding:12px 8px 16px}
@media(max-width:700px){
 .dashboard main{padding:18px 14px}
 .dashboard .stats>div,.dashboard .panel{padding:12px}
 .site summary{grid-template-columns:16px minmax(0,1fr) auto;column-gap:10px;row-gap:3px;padding:14px 2px}
 .site-chevron{grid-column:1;grid-row:1/3}
 .site-domain{grid-column:2;grid-row:1;font-size:14px}
 .site-size{grid-column:2;grid-row:2;text-align:left}
 .site summary .badge{grid-column:3;grid-row:1/3;font-size:9px;letter-spacing:.025em;padding:4px 6px}
 .dashboard .actions{gap:12px}
}
@media(prefers-reduced-motion:reduce){.site-chevron{transition:none}}
