:root{--bg: #f3f6f2;--bg-elevated: #ffffff;--ink: #142018;--muted: #5f6f64;--line: #d5dfd8;--accent: #1f6b4f;--accent-soft: #e4f2eb;--warn: #9a5b14;--danger: #9f2f2f;--shadow: 0 18px 50px rgba(20, 32, 24, .08);--radius: 18px}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:DM Sans,system-ui,sans-serif;color:var(--ink);background:radial-gradient(circle at 10% 0%,rgba(31,107,79,.12),transparent 40%),radial-gradient(circle at 90% 10%,rgba(154,91,20,.08),transparent 35%),var(--bg)}h1,h2,.display{font-family:"Instrument Serif",Georgia,serif;font-weight:400;letter-spacing:-.02em}a{color:var(--accent)}button,input,select,textarea{font:inherit}button{cursor:pointer}.container{width:min(1080px,100% - 2rem);margin:0 auto}.card{background:var(--bg-elevated);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.25rem 1.5rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border:none;border-radius:999px;padding:.7rem 1.2rem;background:var(--accent);color:#fff;text-decoration:none;transition:transform .15s ease,opacity .15s ease}.btn:hover{transform:translateY(-1px)}.btn.secondary{background:transparent;color:var(--accent);border:1px solid var(--accent)}.btn.ghost{background:transparent;color:var(--muted);border:1px solid var(--line)}.btn.danger{background:var(--danger)}.field{display:grid;gap:.35rem;margin-bottom:1rem}.field label{font-size:.85rem;color:var(--muted)}.field input,.field select,.field textarea{border:1px solid var(--line);border-radius:12px;padding:.7rem .85rem;background:#fbfcfb}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:.2rem .65rem;font-size:.75rem;background:var(--accent-soft);color:var(--accent)}.badge.warn{background:#f8efe4;color:var(--warn)}.badge.muted{background:#eef2ef;color:var(--muted)}.error{color:var(--danger);font-size:.9rem}.grid-2{display:grid;gap:1rem}@media(min-width:800px){.grid-2{grid-template-columns:1fr 1fr}}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.65rem .4rem;border-bottom:1px solid var(--line);font-size:.92rem}th{color:var(--muted);font-weight:500}
