:root{--bg:#0f1720;--panel:#1a232d;--ink:#e7edf3;--muted:#9caab8;--line:#2b3a48;--brand:#2f9e69;--brand-strong:#1f7a50;--accent:#66d19c;--shadow:0 14px 42px #00000059;--font-display:"Avenir Next","Trebuchet MS","Gill Sans",sans-serif;--font-mono:"Cascadia Code","SFMono-Regular","Consolas",monospace}*{box-sizing:border-box}html,body{min-height:100%;margin:0;padding:0}body{font-family:var(--font-display);color:var(--ink);background:radial-gradient(circle at 12% 8%,#34d3992e 0%,transparent 40%),radial-gradient(circle at 82% 16%,#7891a833 0%,transparent 35%),linear-gradient(180deg,#111b25 0%,var(--bg)100%)}.page-shell{gap:1.1rem;max-width:1200px;margin:0 auto;padding:2.5rem 1rem 3rem;display:grid;position:relative}.ambient{filter:blur(70px);z-index:-1;position:absolute}.ambient-left{background:#2f9e6959;width:220px;height:220px;top:-20px;left:-20px}.ambient-right{background:#94a3b83d;width:260px;height:260px;top:90px;right:40px}.hero{text-align:center;padding:2.1rem 1rem 1.7rem}.kicker{color:var(--brand);text-transform:uppercase;letter-spacing:.18em;margin:0;font-size:.72rem;font-weight:700}h1{letter-spacing:-.03em;margin:.3rem 0;font-size:clamp(2rem,5.5vw,4rem);line-height:1}.subtitle{max-width:680px;color:var(--muted);margin:0 auto;font-size:1.04rem}.panel{background:color-mix(in oklab,var(--panel)92%,black 8%);border:1px solid color-mix(in srgb,var(--line)86%,black 14%);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);border-radius:18px;padding:1.1rem}.panel-head{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.9rem;display:flex}h2{margin:0;font-size:clamp(1rem,2.2vw,1.3rem)}.badge,.results-count{font-family:var(--font-mono);color:var(--muted);border:1px solid var(--line);background:#1f2b36;border-radius:999px;padding:.3rem .6rem;font-size:.75rem}.deck-input{resize:vertical;border:1px solid var(--line);width:100%;font:500 .95rem/1.5 var(--font-mono);color:#e7eef5;background:#121c26;border-radius:12px;min-height:150px;padding:.85rem}.deck-input::placeholder{color:#8d9caf}.deck-input:focus-visible,.table-wrap:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.toolbar{flex-wrap:wrap;gap:.65rem;margin-top:.85rem;display:flex}.button{appearance:none;cursor:pointer;border:none;border-radius:12px;padding:.7rem 1rem;font-weight:650}.button:disabled{opacity:.65;cursor:not-allowed}.button-primary{background:linear-gradient(135deg,var(--brand)0%,var(--brand-strong)100%);color:#effff6}.button-ghost{border:1px solid var(--line);color:var(--ink);background:#16212c}.status-message{color:#c8d6e5;margin:.8rem 0 0;font-size:.9rem}.table-wrap{border:1px solid var(--line);background:#141f29;border-radius:12px;max-height:420px;overflow:auto}table{border-collapse:collapse;width:100%;min-width:850px}thead th{z-index:1;text-align:left;letter-spacing:.08em;text-transform:uppercase;color:#a4b0bf;background:linear-gradient(#22303c 0%,#1b2732 100%);font-size:.76rem;position:sticky;top:0}th,td{white-space:nowrap;border-bottom:1px solid #23313f;padding:.72rem .78rem}tbody tr:nth-child(2n){background:#192531}tbody tr:hover{background:#22303b}.empty-cell{text-align:center;color:var(--muted)}.price-cell{font-family:var(--font-mono);color:#7fe0ad;font-weight:650}.market-cell{font-family:var(--font-mono);color:#cfe7d8}@media (max-width:700px){.page-shell{padding:1rem .7rem 1.35rem}.hero{padding:1rem .2rem .5rem}.kicker{letter-spacing:.12em;font-size:.66rem}h1{font-size:clamp(1.65rem,8.2vw,2.25rem)}.subtitle{font-size:.93rem}.panel{border-radius:14px;padding:.85rem}.panel-head{flex-direction:column;align-items:flex-start;gap:.45rem}.toolbar{gap:.5rem}.button{width:100%;padding:.72rem .9rem}.table-wrap{background:0 0;border:0;max-height:none;overflow:visible}table{border-collapse:separate;border-spacing:0 .55rem;min-width:0}thead{display:none}tbody tr{border:1px solid var(--line);background:#182430;border-radius:12px;gap:.32rem;padding:.68rem;display:grid}tbody tr:nth-child(2n),tbody tr:hover{background:#182430}td{white-space:normal;border:0;justify-content:space-between;align-items:baseline;gap:.8rem;padding:0;font-size:.91rem;display:flex}td:before{content:attr(data-label);color:var(--muted);text-transform:uppercase;letter-spacing:.06em;flex-shrink:0;font-size:.75rem}.empty-cell{text-align:center;padding:.6rem .3rem;display:block}.empty-cell:before{content:none}}
