:root{--bg:#0b1020;--panel:#111830;--panel-2:#18213d;--text:#e7ecf7;--muted:#94a3b8;--accent:#5eead4;--line:#263253;--chip:#0f172a;--gold:#e8b64c;--gold-soft:#e8b64c24}*{box-sizing:border-box}html,body{color:var(--text);background:linear-gradient(#09101d 0%,#0b1020 100%);margin:0;padding:0;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}.container{max-width:1280px;margin:0 auto;padding:24px}.header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.nav{flex-wrap:wrap;gap:12px;display:flex}.nav a{border:1px solid var(--line);background:#ffffff05;border-radius:999px;padding:10px 14px}.hero{grid-template-columns:1.4fr 1fr;gap:18px;margin-bottom:20px;display:grid}.panel{border:1px solid var(--line);background:#111830eb;border-radius:18px;padding:18px;box-shadow:0 18px 40px #00000040}.cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px;display:grid}.card h3{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin:0 0 8px;font-size:13px;font-weight:600}.metric{font-size:30px;font-weight:700}.muted{color:var(--muted)}.tableWrap{border:1px solid var(--line);border-radius:16px;overflow:auto}table{border-collapse:collapse;width:100%;min-width:900px}th,td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:12px 14px}th{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;background:#ffffff05;font-size:12px}.badge{border:1px solid var(--line);background:var(--chip);border-radius:999px;padding:6px 10px;font-size:12px;display:inline-block}.controls{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin:16px 0 14px;display:grid}input,select,button{border:1px solid var(--line);width:100%;color:var(--text);background:#0b1327;border-radius:12px;padding:12px 14px}button{cursor:pointer;background:linear-gradient(#17345f 0%,#102647 100%)}.smallgrid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.list{margin:0;padding-left:18px}.footer{color:var(--muted);margin-top:24px;font-size:13px}@media (max-width:980px){.hero,.cards,.smallgrid,.aboutGrid{grid-template-columns:1fr}}.gold-text{color:var(--gold)}.badge.gold{color:var(--gold);background:var(--gold-soft);border-color:#e8b64c80}.small{font-size:13px}.underline{text-decoration:underline}.footer{border-top:1px solid var(--line);gap:6px;padding-top:14px;display:grid}button:disabled,select:disabled,input:disabled{opacity:.55;cursor:not-allowed}a.button{border:1px solid var(--line);color:var(--text);background:linear-gradient(#5a4416 0%,#3d2e0e 100%);border-radius:12px;padding:12px 14px;display:inline-block}.results-actions button{width:auto}button.link{width:auto;color:var(--gold);cursor:pointer;font-size:inherit;background:0 0;border:0;padding:0;text-decoration:underline}.toggle{color:var(--muted);align-items:center;gap:8px;font-size:14px;display:flex}.toggle input{width:auto}.purity{letter-spacing:.03em;border:1px solid;border-radius:999px;padding:3px 9px;font-size:12px;font-weight:700;display:inline-block}.purity-pure{color:#f6d27a;background:#e8b64c2e;border-color:#e8b64c}.purity-common{color:#cbd5e1;background:#64748b2e;border-color:#64748b}.purity-crowded{color:#fca5a5;background:#b4535329;border-color:#b45353}.badgeRow{flex-wrap:wrap;gap:16px;margin-top:8px;display:flex}.eureka{border-color:#e8b64c59;margin-bottom:20px}.eurekaGrid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;margin-top:14px;display:grid}.eurekaCard{text-align:left;background:linear-gradient(#1a1a2e 0%,#141a30 100%);border-color:#e8b64c40;gap:6px;display:grid}.eurekaCard:hover{border-color:var(--gold)}.eurekaTitle{color:var(--gold);font-weight:700}.locked{color:var(--gold);background:var(--gold-soft);border:1px dashed #e8b64c80;border-radius:12px;margin:12px 0;padding:10px 14px;font-size:14px}.claims{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.chip{border:1px solid var(--line);background:var(--chip);border-radius:999px;gap:8px;padding:4px 10px;font-size:13px;display:inline-flex}.member{border-top:1px solid var(--line);gap:8px;margin-top:14px;padding-top:12px;display:grid}.modalBack{z-index:50;background:#0009;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{width:100%;max-width:720px;max-height:80vh;overflow:auto}.aboutGrid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.aboutGrid section:first-child{grid-row:span 2}table.density{min-width:1100px}table.density td,table.density th{text-align:center;padding:8px 10px;font-size:13px}table.density tbody th{text-align:left;white-space:nowrap}.dens-empty{color:#475569}.dens-thin{color:#99f6e4;background:#5eead41a}.dens-moderate{background:#e8b64c1f}.dens-crowded{color:#fff7e0;background:#e8b64c61;font-weight:700}span.dens{border-radius:6px;padding:2px 6px}.srOnly{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.chipButton{cursor:pointer;width:auto;color:var(--text)}.chipButton[aria-pressed=true]{border-color:var(--gold);color:var(--gold);background:var(--gold-soft)}button.primary{background:linear-gradient(#5a4416 0%,#3d2e0e 100%);border-color:#e8b64c99;font-weight:700}.screwPanel{margin-top:20px}.screwHead{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.screwButtons{flex-wrap:wrap;gap:8px;display:flex}.screwButtons button{width:auto}.screwLayout{grid-template-columns:minmax(0,1.6fr) minmax(220px,1fr);align-items:center;gap:18px;margin-top:12px;display:grid}.screwSvg{width:100%;height:auto;display:block}.screwSvg .tube{fill:#0b1327;stroke:var(--line);stroke-width:2px}.screwSvg .flight{fill:#0000;transition:fill .5s}.screwSvg .flight.lit{fill:#e8b64c52}.screwSvg .flightEdge{stroke:var(--line);stroke-width:1.5px}.screwSvg .blade{stroke:#94a3b873;stroke-width:5px;stroke-linecap:round}.screwSvg .blades{transform:translate(0)}.screwSvg .blades.spinning{animation:.45s linear 2 screwTurn}.screwSvg .shaft{stroke:#475569;stroke-width:4px}.screwSvg .crank{transform:rotate(0)}.screwSvg .crank.spinning{animation:.45s linear 2 crankTurn}.screwSvg .crankHub{fill:#1e293b;stroke:var(--gold);stroke-width:2px}.screwSvg .crankArm{stroke:var(--gold);stroke-width:4px;stroke-linecap:round}.screwSvg .crankKnob{fill:var(--gold)}.screwSvg .nuggetDot{fill:var(--gold);stroke:#f6d27a}.screwSvg .svgSmall{fill:var(--muted);font-size:13px}.screwSvg .svgCount{fill:var(--muted);font-size:17px;font-weight:700}.screwSvg .flightLabel.lit .svgCount{fill:var(--gold)}.screwSvg .flightLabel.lit .svgSmall{fill:var(--text)}@keyframes screwTurn{0%{transform:translate(0)}to{transform:translate(26px)}}@keyframes crankTurn{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.stageList{gap:8px;margin:0;padding:0;list-style:none;display:grid}.stageList li{border:1px solid var(--line);border-radius:12px;padding:8px 10px;transition:border-color .4s,background .4s}.stageList li.lit{background:var(--gold-soft);border-color:#e8b64c73}.stageButton{text-align:left;background:0 0;border:0;justify-content:space-between;gap:10px;padding:0;font-size:15px;display:flex}.stageButton[aria-current=step] .stageName{color:var(--gold);text-decoration:underline}.stageCount{font-variant-numeric:tabular-nums;font-weight:700}.screwTable td,.screwTable th{font-size:14px}.liftBadge{text-align:center;color:#0b1020;background:var(--gold);border-radius:999px;min-width:38px;padding:3px 8px;font-weight:700;display:inline-block}.nuggetCard{padding:14px}.savedList{gap:10px;margin:0;padding:0;list-style:none;display:grid}.savedList li{border:1px solid var(--line);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.dueBadge{margin-left:8px;padding:2px 8px}@media (max-width:980px){.screwLayout{grid-template-columns:1fr}}@media (max-width:560px){.screwSvg .svgSmall{font-size:17px}.screwSvg .svgCount{font-size:22px}.screwButtons{grid-template-columns:1fr 1fr;width:100%;display:grid}.screwButtons button{width:100%}}@media (prefers-reduced-motion:reduce){.screwSvg .blades.spinning,.screwSvg .crank.spinning{animation:none}.screwSvg .flight,.stageList li{transition:none}}
