*{box-sizing:border-box}
body{margin:0;background:var(--page);color:var(--ink);font:16px/1.55 system-ui,sans-serif}
.archive{--page:#eef0e8;--panel:#fcfcf7;--ink:#252a24;--muted:#5c665c;--accent:#345443;--line:#c9d1c2;--dark:#253d32;--signal:#d6e8c8}
.camp{--page:#f8efe0;--panel:#fffbf4;--ink:#302820;--muted:#705d4d;--accent:#96472d;--line:#dac8b5;--dark:#5a3026;--signal:#fee0ad}
header,main,footer{max-width:1160px;margin:auto;padding-inline:clamp(1rem,4vw,2.5rem)}
header,footer{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding-block:1.15rem;border-bottom:1px solid var(--line)}
a{color:inherit}.brand{font-size:1.22rem;font-weight:820;letter-spacing:-.04em;text-decoration:none}.brand span{font-size:.76rem;font-weight:600;letter-spacing:0;color:var(--muted);margin-left:.5rem}
.hero{display:grid;grid-template-columns:2fr 1fr;gap:1.3rem;align-items:end;padding-block:clamp(2rem,6vw,4.7rem) 1.8rem}
h1,h2,h3,p{margin-top:0}h1{font-size:clamp(3rem,8vw,6.4rem);line-height:.92;letter-spacing:-.08em;margin-bottom:1rem}.hero p:last-child{font-size:1.12rem;color:var(--muted);max-width:50ch;margin-bottom:0}.eyebrow{font:760 .78rem/1.3 ui-monospace,monospace;letter-spacing:.13em;text-transform:uppercase;color:var(--accent);margin-bottom:1rem}
.hero-card{background:var(--dark);color:white;border-radius:15px;padding:1.3rem 1.5rem;min-height:155px;display:flex;flex-direction:column;justify-content:space-between}.hero-card .eyebrow{color:var(--signal);margin-bottom:.25rem}.hero-card strong{font-size:3rem;line-height:1;letter-spacing:-.07em}.hero-card span:last-child{color:#f3f0e7}
.workspace,dialog{border:1px solid var(--line);background:var(--panel);border-radius:16px;padding:clamp(1rem,3vw,1.8rem)}.workspace-head,.exports{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.workspace-head h2{margin:0}.workspace-head p{margin:.15rem 0 0;color:var(--muted);font-size:.9rem}.filters,.fields{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.filters{margin:1rem 0}.fields{gap:.75rem}label{display:block;font-size:.88rem;font-weight:720;margin-bottom:.6rem}
input,textarea,select{display:block;width:100%;margin-top:.3rem;padding:.62rem;border:1px solid var(--line);background:#fff;border-radius:7px;color:var(--ink);font:inherit;min-width:0}textarea{resize:vertical}
button{border:1px solid var(--line);background:transparent;color:var(--ink);font:720 .88rem/1.35 system-ui,sans-serif;border-radius:7px;padding:.55rem .75rem;cursor:pointer}button.primary{background:var(--accent);border-color:var(--accent);color:white}button:disabled{opacity:.5;cursor:default}button:hover:not(:disabled){box-shadow:0 1px 0 1px var(--line)}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.empty{padding:1.4rem;border:1px dashed var(--line);border-radius:10px}.empty h3,.warning h3{margin-bottom:.35rem}.empty p{color:var(--muted);margin-bottom:.75rem}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:.91rem}th,td{text-align:left;padding:.7rem .4rem;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:.83rem;color:var(--muted)}td small{display:block;color:var(--muted);margin-top:.2rem;max-width:40ch}.actions{display:flex;gap:.3rem;flex-wrap:wrap}.actions button{padding:.3rem .48rem}.notice{min-height:1.4em;color:var(--muted);font-size:.9rem;margin:.75rem 0 .25rem}.exports{justify-content:flex-start;margin-top:.5rem}.guide{border-top:1px solid var(--line);padding-block:1.5rem;margin-top:2.2rem;max-width:72ch}.guide p,footer{color:var(--muted)}footer{border-top:1px solid var(--line);border-bottom:0;font-size:.88rem}
dialog{max-width:min(550px,calc(100vw - 2rem));width:550px;color:var(--ink)}dialog::backdrop{background:#201d1d88}dialog .workspace-head{margin-bottom:1rem}.warning{padding:.75rem 1rem;margin-bottom:1rem;background:#ffeed7;border:1px solid #e4a866;border-radius:9px}.warning ul{margin:.3rem 0;padding-left:1.2rem}
[hidden]{display:none!important}
@media(max-width:680px){.hero,.filters{grid-template-columns:1fr}.hero-card{min-height:115px}.brand span{display:none}td{min-width:95px}}
@media print{body{background:white;color:black}header,.hero,.filters,.exports,.actions,.notice,footer,.guide,button{display:none!important}.workspace{padding:0;border:0}.workspace p{display:none}.warning{break-inside:avoid}}
