:root{--bg: #14100f;--panel: #1d1815;--panel-2: #241e1a;--line: #362c26;--text: #f2e9df;--muted: #a4968a;--gold: #e0b567;--teal: #7fb8a4;--danger: #d98b6a;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 20% -10%,#2a2019 0%,var(--bg) 55%);color:var(--text);font:15px/1.5 Segoe UI,system-ui,-apple-system,sans-serif;min-height:100vh}.app{max-width:1080px;margin:0 auto;padding:28px 20px 56px}.masthead{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:22px}h1{margin:0;font-size:26px;letter-spacing:.3px}h2{margin:0 0 12px;font-size:14px;text-transform:uppercase;letter-spacing:1.2px;color:var(--muted)}h3{margin:0 0 8px;font-size:14px;color:var(--gold)}.sub{margin:4px 0 0;color:var(--muted);font-size:13px}.share{background:var(--gold);color:#241a08;border:0;border-radius:8px;padding:9px 16px;font-weight:600;cursor:pointer;white-space:nowrap}.share:disabled{opacity:.4;cursor:not-allowed}.columns{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:16px}@media (max-width: 760px){.columns{grid-template-columns:1fr}}.panel{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:16px}.search{width:100%;padding:10px 12px;border-radius:8px;border:1px solid var(--line);background:var(--panel-2);color:var(--text);font-size:14px;margin-bottom:10px}.search:focus{outline:2px solid rgba(224,181,103,.4);outline-offset:1px}.results{list-style:none;margin:0;padding:0;max-height:340px;overflow-y:auto}.result{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;background:transparent;border:0;border-radius:7px;color:var(--text);padding:8px 10px;font:inherit;text-align:left;cursor:pointer}.result:hover{background:var(--panel-2)}.meta{font-size:11px;text-transform:uppercase;letter-spacing:.7px;color:var(--muted)}.meta.crafted{color:var(--teal)}.badge{display:inline-block;min-width:20px;padding:1px 6px;border-radius:999px;background:var(--panel-2);border:1px solid var(--line);color:var(--gold);font-size:12px;text-align:center}.project{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.project li{display:grid;grid-template-columns:minmax(0,1fr) 78px 28px;grid-template-areas:"name qty remove" "per per per";align-items:center;gap:2px 8px;background:var(--panel-2);border:1px solid var(--line);border-radius:8px;padding:6px 8px}.project li .name{grid-area:name}.project li .qty{grid-area:qty}.project li .remove{grid-area:remove}.project li .percraft{grid-area:per;font-size:11.5px;line-height:1.4;color:var(--muted)}.hint{margin:0 0 10px;font-size:12px;line-height:1.5;color:var(--muted)}.hint strong{color:var(--gold);font-weight:600}.qty{width:100%;padding:6px 8px;border-radius:6px;border:1px solid var(--line);background:var(--panel);color:var(--text);font:inherit;text-align:right}.remove{background:transparent;border:0;color:var(--muted);font-size:18px;line-height:1;cursor:pointer}.remove:hover{color:var(--danger)}.totals{margin:12px 0 0;font-size:12px;color:var(--muted)}.empty{color:var(--muted);font-size:13px;margin:8px 0 0}.warn{margin-top:16px;padding:10px 14px;border-radius:10px;background:#d98b6a1f;border:1px solid rgba(217,139,106,.45);font-size:13px}.tabs{display:flex;gap:6px;margin:20px 0 10px}.tab{background:transparent;border:1px solid var(--line);border-radius:8px;color:var(--muted);padding:7px 14px;font:inherit;font-size:13px;cursor:pointer}.tab.active{background:var(--panel-2);border-color:var(--gold);color:var(--text)}table{width:100%;border-collapse:collapse;font-size:14px}th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.9px;color:var(--muted);padding:0 8px 8px;border-bottom:1px solid var(--line)}td{padding:8px;border-bottom:1px solid rgba(54,44,38,.6)}.num{text-align:right;font-variant-numeric:tabular-nums;color:var(--gold)}.muted{color:var(--muted);font-size:13px}.steps{list-style:none;counter-reset:step;margin:0;padding:0}.steps li{counter-increment:step;display:grid;grid-template-columns:26px minmax(0,1.1fr) minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid rgba(54,44,38,.6)}.steps li:before{content:counter(step);color:var(--muted);font-size:12px;text-align:center}.station{font-size:11px;text-transform:uppercase;letter-spacing:.7px;color:var(--teal);border:1px solid rgba(127,184,164,.35);border-radius:999px;padding:2px 9px;white-space:nowrap}.station-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.station-card{background:var(--panel-2);border:1px solid var(--line);border-radius:10px;padding:12px}.station-card ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.station-card li{display:flex;justify-content:space-between;gap:10px;font-size:14px}.foot{margin-top:22px;font-size:12px;color:var(--muted);line-height:1.6}
