:root{--bg:#efe7d7;--panel:#fffef8;--ink:#2a251f;--accent:#7c4b22;--accent-soft:#ead7bd;--line:#d9ccb8}*{box-sizing:border-box}body{margin:0;font-family:Segoe UI,Trebuchet MS,sans-serif;color:var(--ink);background:radial-gradient(circle at 15% 20%,#f7f1e4 0,transparent 30%),radial-gradient(circle at 80% 10%,#f0ddbe 0,transparent 35%),var(--bg)}.page{width:min(1100px,100%);margin:0 auto;padding:24px;display:grid;grid-gap:16px;gap:16px}.panel{min-width:0;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:18px;box-shadow:0 8px 24px rgba(60,34,8,.08)}h1,h2{margin-top:0}.subhead{margin-top:-6px;color:#4d463c}.formStack{grid-gap:10px}.formRow,.formStack{display:grid;gap:10px}.formRow{grid-template-columns:1fr;grid-gap:10px;min-width:0}.formRow.twoCol{grid-template-columns:repeat(2,minmax(0,1fr))}label{display:grid;grid-gap:6px;gap:6px;font-weight:600;min-width:0}input{border:1px solid #c6baa5;border-radius:8px;padding:10px 8px;font-size:15px;width:100%;min-width:0}button{border:0;border-radius:8px;background:var(--accent);color:#fff;padding:11px 14px;cursor:pointer;font-weight:600}button:hover{filter:brightness(1.08)}.status{min-height:1.4rem;margin-bottom:0;color:#3f372e}.warning{margin-top:2px;color:#7d2b1a}.previewWrap{overflow:hidden;border:1px solid var(--line);border-radius:10px;padding:12px;background:var(--accent-soft)}.previewWrap svg{display:block;width:100%;height:auto;max-width:100%}.metrics p{margin:8px 0}table{border-collapse:collapse;width:100%;table-layout:fixed}td,th{border:1px solid var(--line);text-align:left;padding:10px 8px;overflow-wrap:anywhere}th{background:#f8f2e7}.savedList{list-style:none;margin:0;padding:0;display:grid;grid-gap:10px;gap:10px}.savedList li{border:1px solid var(--line);border-radius:8px;padding:10px;display:flex;justify-content:space-between;align-items:center;gap:8px}.savedList li>div{min-width:0}.savedList p{margin:5px 0 0;color:#4d463c;overflow-wrap:anywhere}@media (max-width:700px){.page,.panel{padding:14px}.formRow.twoCol{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}h1,h2{overflow-wrap:anywhere}td,th{padding:8px 6px;font-size:.875rem}.savedList li{align-items:flex-start;flex-direction:column}.savedList li button{width:100%}}