:root{color-scheme:dark;--bg:#101916;--card:#1a2721;--line:#344e40;--ink:#e9f3ec;--muted:#a8c0af;--green:#a2e6ba}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.5 system-ui,sans-serif}main{max-width:1000px;margin:auto;padding:28px 22px}header{display:flex;gap:18px;align-items:center;margin-bottom:36px}header span{color:var(--muted);font-size:14px}header form{margin-left:auto}.brand{font-size:29px;font-weight:800;letter-spacing:3px;text-decoration:none;color:var(--green)}h1{font-size:28px;margin:0 0 12px}h2{font-size:18px;margin:0 0 15px}.heading{display:flex;justify-content:space-between;align-items:center;gap:12px}section{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:22px;margin:16px 0}.login{max-width:420px;margin:9vh auto}label{display:block;font-size:14px;color:var(--muted);margin-bottom:14px}input,select{display:block;width:100%;min-height:42px;border:1px solid #587261;border-radius:6px;background:var(--bg);color:var(--ink);padding:8px 10px;margin-top:5px;font:inherit}.fields{display:grid;grid-template-columns:1.3fr 1fr 140px;gap:18px}button{cursor:pointer;border:1px solid transparent;background:var(--green);color:#102d1c;padding:9px 16px;border-radius:6px;font:600 15px/1.4 system-ui}button:hover{filter:brightness(1.08)}button.quiet{background:transparent;border-color:var(--line);color:var(--muted)}button.danger{background:#df8d83;color:#2d1310}a{color:var(--green)}.muted,small{color:var(--muted);font-size:14px}.catalog{padding:0 22px}article{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:17px 0;border-bottom:1px solid var(--line)}article:last-child{border:0}article small{display:block;margin-top:3px}article strong{overflow-wrap:anywhere}.delete{color:#e6a29a;font-size:14px}.empty{padding:28px 0;color:var(--muted)}.notice{padding:12px 18px;border:1px solid var(--line);border-radius:8px;background:var(--card)}.error{border-color:#8a4c43;color:#ffc2b9}details{margin-top:20px;color:var(--muted)}footer{margin-top:36px;color:var(--muted);font-size:12px}form>.muted{margin-left:12px}@media(max-width:650px){.fields{grid-template-columns:1fr;gap:0}main{padding:20px 14px}.heading{display:block}header{gap:10px}header span{font-size:12px}section{padding:18px}form>.muted{display:block;margin:10px 0 0}}
