:root{color-scheme:light;--bg:#edf0eb;--panel:#fafbf7;--ink:#182822;--muted:#51635a;--line:#d7ded4;--side:#182820;--accent:#d9f49c;--accentInk:#213419;--soft:#e8eee1;--warn:#8d4024;--shadow:0 14px 34px #1426180a;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
:root[data-theme=dark]{color-scheme:dark;--bg:#121b17;--panel:#1b2821;--ink:#eff5ea;--muted:#b5c7b7;--line:#35453a;--side:#0f1813;--soft:#29382b;--warn:#ffb698;--shadow:none}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-size:15px;line-height:1.5}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit;text-underline-offset:3px}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid #739a3d;outline-offset:3px}button:disabled{opacity:.5;cursor:not-allowed}h1,h2,h3,p{margin:0}h1{font-size:clamp(2rem,4vw,3.65rem);letter-spacing:-.068em;line-height:1.03;font-weight:650}h2{font-size:1.25rem;letter-spacing:-.03em}h3{font-size:1rem}p+ p{margin-top:.6rem}.muted,small{color:var(--muted)}.wrap{overflow-wrap:anywhere}.pre{white-space:pre-wrap;overflow-wrap:anywhere}.loading{padding:2rem}.shell{display:grid;grid-template-columns:235px minmax(0,1fr);min-height:100dvh}.sidebar{position:sticky;top:0;align-self:start;height:100dvh;background:var(--side);color:#ebf1e8;display:flex;flex-direction:column;padding:24px 16px;gap:27px}.brand{display:flex;align-items:center;gap:11px;font-size:18px;font-weight:700;letter-spacing:-.04em;padding:4px 7px}.brand img{width:36px;height:36px}.sidebar .label{color:#a7b8aa;padding:0 10px}.sidebar nav{display:grid;gap:5px}.sidebar button.nav{border:0;text-align:left;background:none;color:#dce8dd;border-radius:9px;padding:10px 11px;min-height:44px}.sidebar button.nav[aria-current=page]{background:#35483a;color:#e9fac9;font-weight:700}.sidebar button.nav:hover{background:#35483a}.sidebar .foot{margin-top:auto;display:grid;gap:6px}.navicon{display:inline-block;width:24px;color:#c1d99f}.mobile-toggle{display:none}.main{width:100%;min-width:0;max-width:1500px;margin:auto;padding:32px clamp(19px,4vw,58px) 56px;align-self:start}.topline{display:flex;justify-content:space-between;gap:12px;align-items:center;padding-bottom:22px;margin-bottom:26px;border-bottom:1px solid var(--line)}.label{font-size:.73rem;letter-spacing:.125em;text-transform:uppercase;font-weight:750}.badge{display:inline-flex;align-items:center;gap:6px;padding:4px 9px;border-radius:999px;background:var(--soft);font-size:.76rem;font-weight:650;max-width:100%}.hero{display:flex;justify-content:space-between;align-items:end;gap:14px;margin-bottom:26px}.hero p{max-width:670px;margin-top:10px}.hero .label{display:block;margin-bottom:8px;color:var(--muted)}.row{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.between{justify-content:space-between}.stack{display:grid;gap:14px}.grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr))}.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:15px;padding:18px;box-shadow:var(--shadow);min-width:0}.panel>h2,.panel>.row:first-child{margin-bottom:10px}.stat{min-height:113px}.stat strong{font-size:2rem;display:block;line-height:1.12;margin-top:8px;letter-spacing:-.05em}.flow{background:#1e3226;color:#f1f6ed;padding:22px;border-color:#304e3a}.flow p,.flow small{color:#c5d6c6}.flow .badge{background:#355142;color:#f2ffdc}.spacer{margin-top:17px}.btn{display:inline-flex;justify-content:center;align-items:center;gap:5px;min-height:42px;background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:9px;padding:7px 13px;font-weight:650;text-decoration:none}.btn:hover{background:var(--soft)}.btn.primary{background:var(--accent);color:var(--accentInk);border-color:#9bb96a}.btn.primary:hover{background:#c8ea85}.btn.subtle{background:transparent}.btn.danger{color:var(--warn)}.tabs{display:flex;overflow:auto;gap:6px;padding-bottom:8px;margin:0 0 14px;scrollbar-width:thin}.tabs .btn{white-space:nowrap}.tabs [aria-current=page]{background:var(--soft);border-color:#819677}.list{padding:0;list-style:none;margin:0;display:grid;gap:8px}.line{border-bottom:1px solid var(--line);padding:8px 0}.line:last-child{border-bottom:0}.empty{padding:25px 16px;border:1px dashed var(--line);border-radius:12px;color:var(--muted)}.notice{padding:11px 13px;background:var(--soft);border-radius:9px}.alert{color:var(--warn);white-space:pre-wrap}.records{display:grid;gap:9px}.record{border:1px solid var(--line);border-radius:10px;padding:12px}.record summary{cursor:pointer}.record dl{margin:.5rem 0}.record dt{font-size:.75rem;font-weight:700;color:var(--muted);margin-top:7px}.record dd{margin:1px 0 0}.stages{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;padding:0;list-style:none}.stages li{padding:9px 6px;border-top:4px solid var(--line);font-size:.76rem}.stages .done{border-color:#8aab6b}.stages .current{border-color:#6f973e;background:var(--soft);font-weight:700}.meter{width:100%;height:10px;accent-color:#799b48}label{display:grid;gap:5px;font-size:.88rem;font-weight:650;min-width:0}input,textarea,select{width:100%;min-width:0;padding:9px 10px;border-radius:8px;border:1px solid var(--line);color:var(--ink);background:var(--bg);font-size:16px}textarea{min-height:100px;resize:vertical}.code{min-height:230px;font-family:ui-monospace,monospace;font-size:.86rem}.formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.full{grid-column:1/-1}dialog{background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:16px;width:min(700px,calc(100% - 24px));max-height:90dvh;overflow:auto;padding:22px;box-shadow:0 20px 100px #0005}dialog::backdrop{background:#102017a8}dialog form{margin-top:12px}.login{min-height:100dvh;display:grid;place-items:center;padding:22px}.login .panel{width:min(450px,100%)}#toast{position:fixed;bottom:16px;right:16px;z-index:5;max-width:min(400px,calc(100% - 32px));background:var(--side);color:white;padding:12px 16px;border-radius:10px;box-shadow:var(--shadow)}#toast:empty{display:none}.section{margin-top:19px}summary{font-weight:650}summary+*{margin-top:9px}hr{border:0;border-top:1px solid var(--line);margin:16px 0}
@media(max-width:900px){.shell{grid-template-columns:185px minmax(0,1fr)}.sidebar{padding:19px 11px}.stages{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:680px){.shell{display:block}.sidebar{height:auto;position:relative;padding:9px 12px;gap:8px}.sidebar .brand{padding:0}.sidebar .foot,.sidebar nav,.sidebar .label{display:none}.sidebar.open nav,.sidebar.open .foot{display:grid}.mobile-toggle{display:inline-flex;margin-left:auto;background:transparent;color:white;border-color:#65796b}.main{padding:19px 13px 38px}.topline{margin-bottom:17px;padding-bottom:12px}.hero{align-items:start;flex-direction:column;margin-bottom:17px}.two,.formgrid{grid-template-columns:1fr}.panel{padding:14px}.stages{grid-template-columns:repeat(3,minmax(0,1fr))}.stat{min-height:auto}.grid.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
.panel h2,.panel h3,.record summary{overflow-wrap:anywhere}.sidebar .foot .btn{color:var(--ink)}
