:root{--bg:#f6f2ea;--surface:#fff;--ink:#2a241c;--muted:#7a6f60;--line:#e4dccd;--gold:#a87c1e;--gold-soft:#f3e6c4;--buy:#2f8a4c;--vendor:#b58a00;--post:#2a6fb0;--keep:#9a9184;--craft:#c8641c;--learn:#7b4fb5;--farm:#1f8c86;--error:#b3382c;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font:15px/1.5 Inter,system-ui,sans-serif}button,.button{font:inherit;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:8px;padding:7px 14px}button:hover,.button:hover{border-color:var(--gold)}button.primary{background:var(--gold);border-color:var(--gold);color:#fff;font-weight:600}.page{max-width:1120px;margin:0 auto;padding:28px 16px 48px}.header{border-bottom:2px solid var(--gold);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;padding-bottom:14px;display:flex}h1{color:var(--gold);letter-spacing:.02em;margin:0;font-family:Cinzel,Georgia,serif;font-size:34px}h2{letter-spacing:.03em;margin:0 0 10px;font-family:Cinzel,Georgia,serif;font-size:15px}.tagline{color:var(--muted);margin:2px 0 0}.character{color:var(--muted);flex-direction:column;align-items:flex-end;font-size:13px;display:flex}.character strong{color:var(--ink);font-size:15px}.connection{flex-wrap:wrap;align-items:center;gap:12px;margin:18px 0 6px;display:flex}.connection.ok{color:var(--buy);font-weight:600}.actions{flex-wrap:wrap;gap:8px;display:flex}.hint{color:var(--muted);font-size:13px}.error{color:var(--error)}.notice{background:var(--gold-soft);border-radius:8px;padding:10px 14px}.notice.error{background:#f8dcd8}.info{color:var(--muted);margin:14px 0;padding:0;font-size:13px;list-style:none}.tabs{border-bottom:1px solid var(--line);gap:4px;margin:10px 0 18px;display:flex;overflow-x:auto}.tab{color:var(--muted);white-space:nowrap;background:0 0;border:none;border-bottom:3px solid #0000;border-radius:0;padding:10px 14px}.tab.active{color:var(--ink);border-bottom-color:var(--gold);font-weight:600}.cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,480px),1fr));gap:16px;display:grid}.card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:16px 18px}.card ul{margin:0;padding:0;list-style:none}.line{border-top:1px solid var(--line);align-items:flex-start;gap:10px;padding:7px 0;display:flex}.line:first-child{border-top:none}.line .text{flex:1}.dot{background:var(--keep);border-radius:50%;flex:none;width:9px;height:9px;margin-top:7px}.line.buy .dot{background:var(--buy)}.line.vendor .dot{background:var(--vendor)}.line.post .dot{background:var(--post)}.line.keep .dot{background:var(--keep)}.line.craft .dot{background:var(--craft)}.line.learn .dot{background:var(--learn)}.line.farm .dot{background:var(--farm)}.line.keep .text{color:var(--muted)}.copy{color:var(--muted);padding:1px 8px;font-size:13px}.catalog{background:var(--surface);border:1px solid var(--line);border-radius:12px;margin-top:24px;padding:16px 18px}.catalog-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.filters{flex-wrap:wrap;align-items:center;gap:10px 16px;margin:8px 0 12px;display:flex}.filters input[type=search],.filters select{font:inherit;border:1px solid var(--line);background:var(--surface);border-radius:8px;min-width:0;padding:7px 10px}.filters input[type=search]{flex:220px}.count{color:var(--muted);font-size:13px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13px}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:6px 8px}th{color:var(--muted);white-space:nowrap;font-weight:600}th.sortable{cursor:pointer}td.num{text-align:right;white-space:nowrap}td.gain{color:var(--buy);font-weight:600}td.reagents{color:var(--muted);min-width:220px}tr.known td:nth-child(3){font-weight:600}.more{margin-top:12px}.guide{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:18px 22px}.guide ol{padding-left:20px}.guide li{margin:6px 0}.steps{flex-direction:column;gap:12px;display:flex}.step{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:14px 18px}.step.done{opacity:.6}.step header{align-items:center;gap:10px;display:flex}.step header h3{flex:1;margin:0;font-size:15px}.step ol,.step ul{margin:8px 0 0;padding-left:20px}.import{align-items:center;gap:8px;margin-top:8px;display:flex}.import code{background:var(--bg);white-space:nowrap;border-radius:6px;flex:1;padding:6px 8px;font-size:12px;overflow-x:auto}kbd{background:var(--bg);border:1px solid var(--line);border-radius:4px;padding:0 5px;font-size:12px}.footer{color:var(--muted);text-align:center;margin-top:32px;font-size:12px}
