:root { color-scheme: light; --ink:#1c2b27; --muted:#52665e; --accent:#245c48; --line:#c9d5ce; --surface:#f4f7f4; --error:#9c241c; font:16px/1.5 system-ui,sans-serif; }
* { box-sizing:border-box; }
body { margin:0; color:var(--ink); background:var(--surface); }
::selection { background:var(--line); color:var(--ink); }
header { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:1rem; border-bottom:1px solid var(--line); padding:1.25rem 2rem; background:var(--panel); }
h1 { font-size:1.5rem; margin:0; } h2 { font-size:1.2rem; margin:0 0 .75rem; } p { max-width:70ch; }
main { max-width:90rem; padding:1.5rem 2rem 4rem; margin:auto; }
section#signin { max-width:30rem; }
form { display:grid; gap:1rem; }
label { display:grid; gap:.3rem; font-size:.9rem; font-weight:600; }
input,textarea,select,button { font:inherit; border:1px solid var(--line); border-radius:.25rem; padding:.6rem .75rem; max-width:100%; color:var(--ink); background:var(--panel); }
input,textarea { width:100%; caret-color:var(--accent); }
input[type=checkbox] { width:1.2rem; height:1.2rem; }
textarea { min-height:7rem; resize:vertical; }
button { cursor:pointer; font-weight:600; }
button:hover { background:var(--surface); } button:active { background:var(--line); }
button[type=submit],#save { background:var(--accent); border-color:var(--accent); color:var(--on-accent,#fff); }
button:disabled { opacity:.6; cursor:wait; }
:focus-visible { outline:3px solid var(--accent); outline-offset:3px; }
[readonly],input:disabled,textarea:disabled { background:var(--surface); color:var(--muted); }
[hidden] { display:none !important; }
.skip { position:absolute; top:-10rem; background:var(--panel); padding:.75rem; z-index:1; } .skip:focus { top:0; }
#status { min-height:1.5rem; } #status.error { color:var(--error); }
.muted { color:var(--muted); font-size:.9rem; }
nav { display:flex; gap:.5rem; flex-wrap:wrap; border-bottom:1px solid var(--line); padding-bottom:1rem; margin-bottom:1.5rem; }
nav [aria-current=true] { background:var(--accent); color:var(--on-accent,#fff); }
.workspace { display:grid; grid-template-columns:minmax(15rem,1fr) minmax(0,2fr); gap:2rem; }
.toolbar { display:flex; gap:.75rem; align-items:center; flex-wrap:wrap; margin:1rem 0; }
.toolbar h2 { margin:0; margin-right:auto; }
#records { display:grid; gap:.4rem; } #records button { text-align:left; overflow-wrap:anywhere; }
#record-form { background:var(--panel); padding:1.5rem; border:1px solid var(--line); }
#record-form small { font-weight:400; color:var(--muted); overflow-wrap:anywhere; }
#record-form img { max-width:100%; max-height:12rem; object-fit:contain; }
@media(max-width:48rem) { header,main { padding:1rem; } .workspace { grid-template-columns:1fr; gap:1.5rem; } #record-form { padding:1rem; } }
#publication{margin-top:2rem;border-top:1px solid #cbd5e1;padding-top:1rem}
.publication-releases{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,19rem),1fr));gap:1rem}
.publication-release{border:1px solid #cbd5e1;border-radius:.5rem;padding:1rem;min-width:0}
.publication-release code{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.8rem}
.publication-release label{display:block;margin:1rem 0}
.publication-release input[type=checkbox]{width:auto;margin-right:.5rem}
