:root{color-scheme:dark;--bg:#07110f;--panel:#0d1a17;--line:#234138;--text:#f2f7f5;--muted:#91aaa2;--accent:#54e6ae;--danger:#ff7c7c}*{box-sizing:border-box}body{margin:0;min-height:100vh;font-family:"Segoe UI","Noto Sans TC",sans-serif;background:radial-gradient(circle at 15% -10%,#164638 0,transparent 35%),radial-gradient(circle at 90% 5%,#19352f 0,transparent 30%),var(--bg);color:var(--text)}.shell{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:48px 0 80px}header{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:32px}h1{margin:3px 0 8px;font-size:clamp(30px,5vw,52px);letter-spacing:-.04em}h2{margin:0;font-size:22px}.eyebrow{margin:0;color:var(--accent);letter-spacing:.16em;font-size:12px;font-weight:700}.muted{color:var(--muted)}.status{padding:10px 14px;border:1px solid var(--line);border-radius:999px;color:var(--muted);white-space:nowrap}.status span{display:inline-block;width:8px;height:8px;margin-right:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 14px var(--accent)}.card{background:linear-gradient(145deg,rgba(16,35,30,.96),rgba(10,24,20,.96));border:1px solid var(--line);border-radius:20px;padding:24px;box-shadow:0 18px 45px rgba(0,0,0,.18);margin-bottom:20px}.login{max-width:460px}form{display:flex;gap:12px}input{width:100%;background:#081510;color:var(--text);border:1px solid var(--line);border-radius:11px;padding:12px 14px;outline:none}input:focus{border-color:var(--accent)}button{border:0;border-radius:11px;padding:12px 16px;background:var(--accent);color:#032117;font-weight:800;cursor:pointer;white-space:nowrap}.error{color:var(--danger);min-height:20px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:20px}.stats article{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:20px}.stats span{color:var(--muted);display:block;margin-bottom:8px}.stats strong{font-size:34px}.section-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.create-grid{display:grid;grid-template-columns:2fr 1fr auto;align-items:end}label{color:var(--muted);font-size:13px}label input{display:block;margin-top:7px}.created{margin-top:16px;padding:14px;border-radius:11px;border:1px solid #2e6d59;background:#0b2b22;font-family:Consolas,monospace;color:var(--accent);word-break:break-all}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;padding:14px 10px;border-bottom:1px solid var(--line);vertical-align:top}th{color:var(--muted);font-size:12px}.key{color:var(--accent);font-family:Consolas,monospace;margin-top:5px}.pill{display:inline-block;padding:5px 9px;border-radius:999px;background:rgba(84,230,174,.12);color:var(--accent);font-size:12px}.pill.off{background:rgba(255,124,124,.1);color:var(--danger)}.actions{display:flex;flex-wrap:wrap;gap:6px}.actions button{padding:7px 9px;font-size:12px;background:transparent;color:var(--text);border:1px solid var(--line)}.small{color:var(--muted);font-size:12px;line-height:1.6}@media(max-width:760px){header{display:block}.status{display:inline-block;margin-top:12px}.stats{grid-template-columns:1fr}.create-grid{grid-template-columns:1fr}form{flex-direction:column}}

select{width:100%;display:block;margin-top:7px;background:#081510;color:var(--text);border:1px solid var(--line);border-radius:11px;padding:12px 14px;outline:none}select:focus{border-color:var(--accent)}.create-grid{grid-template-columns:2fr 1fr 1fr auto}dialog{width:min(620px,calc(100% - 28px));color:var(--text);background:#0d1a17;border:1px solid var(--line);border-radius:20px;padding:24px;box-shadow:0 24px 80px #000}dialog::backdrop{background:rgba(0,0,0,.72);backdrop-filter:blur(4px)}dialog form{display:block}dialog label{display:block;margin:20px 0 10px}dialog>form>button{width:100%}.quick-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:20px}.quick-actions .permanent{grid-column:1/-1;background:#f6c85f;color:#281d00}.secondary{background:transparent;color:var(--text);border:1px solid var(--line)}@media(max-width:760px){.create-grid,.quick-actions{grid-template-columns:1fr}.quick-actions .permanent{grid-column:auto}}
