@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');
:root{color-scheme:dark;--bg:#101719;--panel:#182226;--panel2:#1f2b2f;--line:#334349;--muted:#98a8ae;--ink:#deecf1;--gold:#c1ec80;--green:#80b4c7}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px Inter,sans-serif}h1,h2,h3,strong,button,.brand{font-family:Inter,sans-serif}h1,h2,h3,p{margin:0}h1{font-size:30px;letter-spacing:-1px}h2{font-size:25px;letter-spacing:-.6px}h3{font-size:18px}p{line-height:1.65;color:var(--muted)}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button,a{touch-action:manipulation}button{cursor:pointer;color:var(--ink);background:var(--panel2);border:1px solid var(--line);border-radius:2px;padding:12px 16px;font-weight:600}button:disabled{opacity:.45;cursor:not-allowed}button:hover:not(:disabled){filter:brightness(1.12)}a{color:var(--gold);text-decoration:none}a:hover{text-decoration:underline}.primary{background:var(--gold);border-color:var(--gold);color:#0b1a21;box-shadow:0 3px 0 #6f9440}.secondary{background:transparent}.text-button{border:0;background:transparent;padding:0;color:var(--gold)}.eyebrow{display:block;font-size:10px;font-weight:700;letter-spacing:2px;color:var(--muted);margin-bottom:7px}.game-shell{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:100vh}.rail{padding:28px 22px;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:26px;background:#111b1f;position:sticky;top:0;height:100vh;overflow-y:auto;scrollbar-width:thin}.brand{display:flex;gap:12px;align-items:center;color:var(--ink);font-size:12px;font-weight:700;letter-spacing:1px}.brand b{display:grid;place-items:center;background:var(--gold);color:#0b1a21;width:42px;height:46px;clip-path:polygon(0 0,100% 0,100% 80%,50% 100%,0 80%);font-size:19px}.brand small{display:block;font-size:8px;margin-top:7px;color:var(--muted)}.chapter{font-size:9px;letter-spacing:1px;line-height:1.8;color:var(--muted)}.lamp{display:inline-block;width:6px;height:6px;background:var(--green);box-shadow:0 0 10px #80b6ca;margin-right:5px;border-radius:50%}nav{display:grid;gap:8px}nav button{display:flex;align-items:center;text-align:left;gap:14px;background:transparent;border-color:transparent;color:var(--muted);padding:11px 14px}nav button span{font-size:19px;width:22px}nav button.active{background:#2f3d42;border:1px solid #546971;color:var(--ink)}.rail-bottom{margin-top:auto;display:grid;gap:17px;font-size:12px}.token-button{display:block;background:#28353a;border:1px solid #4e717d;padding:14px;border-radius:3px;color:#b3d9e6;font-weight:700}.token-button span{display:block;font-size:11px;color:var(--muted);margin-top:4px}main{padding:32px 38px;max-width:1550px;width:100%;margin:0 auto}.topbar{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:30px}.top-actions{display:flex;gap:24px;align-items:center}.wallet-points{text-align:right}.wallet-points small{display:block;font-size:9px;letter-spacing:1.3px;color:var(--muted);margin-bottom:5px}.wallet-points strong{font-size:22px;color:var(--gold)}.notice{padding:14px 18px;border:1px solid #87704b;background:#332c20;border-radius:3px;margin-bottom:22px;color:#ebce9b;line-height:1.6}.hero-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,1fr);gap:24px}.scene{position:relative;min-height:440px;border-radius:5px;overflow:hidden;border:1px solid #405157;background:#162125;isolation:isolate}.scene:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#081317cc,transparent 60%),url('/assets/workshop.webp') center/cover;image-rendering:pixelated;z-index:-2}.scene:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0d1a18 0%,transparent 70%);z-index:-1}.scene-art{position:absolute;height:95%;width:75%;object-fit:contain;right:-7%;bottom:-8%;image-rendering:pixelated;mask-image:linear-gradient(#000 70%,transparent)}.scene-copy{position:relative;padding:28px;max-width:72%;height:100%;min-height:440px;display:flex;flex-direction:column;align-items:flex-start}.scene-label{background:#162429d9;border:1px solid #4a5c62;padding:8px 11px;border-radius:2px;font-size:9px;letter-spacing:1.5px;color:#b2ced9}.scene-copy h2{font-size:40px;line-height:1.05;margin-top:auto;margin-bottom:12px;max-width:330px}.scene-copy p{font-size:13px;color:#c1ced3;max-width:250px}.scene-copy .chips{margin:16px 0 0}.chip{font-size:10px;border:1px solid #435c65;background:#213036;display:inline-block;border-radius:2px;padding:6px 8px;color:#b5d4df}.chips{display:flex;gap:7px;flex-wrap:wrap}.panel{background:var(--panel);border:1px solid var(--line);padding:24px;border-radius:4px}.farm-panel{display:flex;flex-direction:column;gap:17px}.panel-top,.section-head{display:flex;justify-content:space-between;align-items:center;gap:15px}.panel-top .chip{white-space:nowrap}.live-amount{font:700 43px Inter,sans-serif;letter-spacing:-1px;color:var(--gold);overflow-wrap:anywhere}.live-unit{font-size:10px;letter-spacing:2px;color:var(--muted);margin-top:4px}.track{height:8px;background:#0c1518;border:1px solid #37484e;border-radius:2px;overflow:hidden}.track i{display:block;height:100%;background:linear-gradient(90deg,#6599ac,#92c6d9);width:0;transition:width 1s linear}.statline{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:12px}.statline strong{color:var(--ink)}.farm-panel>.primary{margin-top:auto;width:100%;padding:17px}.hint{font-size:11px;line-height:1.6;color:var(--muted)}.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0}.metric{padding:19px 22px;background:var(--panel);border:1px solid var(--line);border-radius:3px}.metric strong{display:block;font-size:23px;margin-top:8px;overflow-wrap:anywhere}.metric small{font-size:11px;color:var(--muted)}.section-head{margin:30px 0 18px}.section-head p{font-size:12px}.crew-grid,.quest-grid,.market-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.nft{position:relative;background:var(--panel);border:1px solid var(--line);border-radius:4px;overflow:hidden;min-width:0}
.nft.rarity-regular,.scene.rarity-regular{--rarity:#9eaeb4}
.nft.rarity-modified,.scene.rarity-modified{--rarity:#5fd0c4}
.nft.rarity-experimental,.scene.rarity-experimental{--rarity:#b98cf0}
.nft.rarity-legendary,.scene.rarity-legendary{--rarity:#ffd25e}
.nft[class*="rarity-"]{border-color:var(--rarity)}
.nft.rarity-legendary{box-shadow:0 0 0 1px var(--rarity),0 0 20px -6px var(--rarity)}
.nft.selected{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold)}
.rarity-name{color:var(--rarity,var(--ink))}
.rarity-chip{border-color:var(--rarity,var(--line))!important;color:var(--rarity,var(--ink))!important}
.scene[class*="rarity-"] .scene-label{border-color:var(--rarity);color:var(--rarity)}.nft-picture{position:relative;background:#1b272b;aspect-ratio:1}.nft-picture img{width:100%;height:100%;object-fit:cover;image-rendering:pixelated}.nft-picture .chip{position:absolute;left:10px;top:10px;background:#162024e8}
.nft-picture .chip.chip-level{left:auto;right:10px}.nft-body{padding:16px}.nft-body h3{font-size:15px;margin:6px 0}.nft-body p{font-size:11px}.nft-body button{width:100%;margin-top:13px}.nft-body .links{margin-top:10px}.section-links{display:flex;gap:12px;flex-wrap:wrap}.selected-panel{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:24px}.selected-panel>div{min-width:0}.upgrade-price{font-size:24px;color:var(--gold);display:block;margin:14px 0}
.sell-list{display:grid;gap:10px;margin-top:14px}
.sell-row{display:grid;grid-template-columns:46px 1fr auto auto;gap:12px;align-items:center;background:var(--panel2);border:1px solid var(--line);border-radius:3px;padding:10px 14px}
.sell-row img{width:46px;height:46px;object-fit:cover;border-radius:2px;image-rendering:pixelated}
.sell-info{display:flex;align-items:center;gap:10px;min-width:0}
.sell-info strong{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sell-row input{width:110px;min-width:0}
.sell-row button{white-space:nowrap}.selected-panel button{margin-top:12px}.actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.allocation{margin-top:25px;display:grid;grid-template-columns:1.3fr 1fr;gap:25px;background:linear-gradient(120deg,#27353a,#172226)}.allocation .metric-grid{margin:0;grid-template-columns:1fr 1fr}.allocation p{margin:10px 0}.allocation strong{color:var(--gold)}.empty{padding:45px 25px;text-align:center;border:1px dashed #4e5d63;border-radius:4px}.empty p{margin:12px auto;max-width:500px}.empty button{margin-top:10px}.quest-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.quest{display:flex;flex-direction:column;gap:13px}.quest .reward{color:var(--gold);font-size:21px}.quest button{margin-top:auto}.quest-number{width:38px;height:38px;background:#2f4148;border:1px solid #476a77;display:grid;place-items:center;color:#a7cddb;border-radius:3px;flex-shrink:0}
.quest-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.tier-chip{color:var(--gold);border-color:#4d6b2c}
.streak-chip{background:#3a2c17;border-color:#8a6a34;color:#f0c98a;font-weight:700;padding:9px 12px;white-space:nowrap}
.welcome-back{background:linear-gradient(120deg,#3d3220,#1e272a);border-color:var(--gold);margin-bottom:16px}
.welcome-back h2{margin:6px 0 10px}
.welcome-back p{margin-bottom:16px}
.welcome-back button{width:100%;padding:16px}
.event-banner{background:#33202a;border-color:#8a4b6b;color:#f0aecb}
.decor-panel{margin-top:25px}
.decor-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:14px;margin-top:16px}
.decor-tile{background:var(--panel2);border:1px solid var(--line);border-radius:3px;padding:12px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px}
.decor-tile img{width:48px;height:48px;object-fit:contain;image-rendering:pixelated}
.decor-tile strong{font-size:11px}
.decor-tile button{width:100%;font-size:11px;padding:8px}
.decor-item{position:absolute;z-index:1;pointer-events:none;image-rendering:pixelated}
.decor-lamp{top:18px;left:18px;width:56px}
.decor-neon{top:18px;right:18px;width:76px}
.decor-plant{bottom:16px;left:16px;width:56px}
.decor-bench{bottom:8px;left:50%;transform:translateX(-50%);width:104px}
.decor-cabinet{bottom:16px;right:16px;width:66px}
.decor-trophy{top:14px;left:50%;transform:translateX(-50%);width:46px}
.sale-row{display:grid;grid-template-columns:auto 1fr auto auto;gap:10px;align-items:center;padding:9px 0;border-bottom:1px solid var(--line);font-size:12px}
.sale-row:last-child{border-bottom:0}
.sale-row strong{color:var(--gold)}.social-quest{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-bottom:24px;background:#253136}.social-quest h2{margin:9px 0 12px}label{display:grid;gap:8px;font-size:12px;color:var(--muted)}input,textarea,select{background:#0f191d;border:1px solid #425359;border-radius:2px;padding:13px;color:var(--ink);width:100%;min-width:0}textarea{resize:vertical;line-height:1.6}form{display:grid;gap:15px}.social-quest textarea{margin:12px 0}form .actions{margin-top:4px}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.profile-grid .panel h2{margin-bottom:20px}.social-row{display:grid;grid-template-columns:1fr;gap:8px;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--line)}.check{display:flex;align-items:center;line-height:1.5}.check input{width:auto}.board-row{display:grid;grid-template-columns:40px 52px minmax(0,1fr) auto;gap:17px;align-items:center;margin-bottom:12px}.board-row img{width:52px;border-radius:3px;image-rendering:pixelated}.board-row .rank{color:var(--gold);font-size:18px}.board-row p{font-size:11px}.board-score{text-align:right;font-size:19px;color:var(--gold)}.links{display:flex;flex-wrap:wrap;gap:7px;min-width:0}.links a{border:1px solid var(--line);padding:6px 9px;font-size:11px;border-radius:2px;overflow-wrap:anywhere}.referral{display:grid;gap:15px}.referral h2{margin:0!important}.summary-list{display:grid;gap:12px}.summary-list .statline{padding-bottom:12px;border-bottom:1px solid var(--line)}.pagination{display:flex;justify-content:center;gap:15px;align-items:center;margin:25px 0}.loading{padding:50px;text-align:center;color:var(--muted)}.loading:before{content:'◌';display:block;font-size:35px;animation:spin 3s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.active-dot{display:inline-block;width:6px;height:6px;background:var(--green);border-radius:50%;margin-right:7px;box-shadow:0 0 9px #71bbd6}.market-grid .nft-body .actions a{font-size:12px}footer{border-top:1px solid var(--line);margin-top:45px;padding-top:20px;display:flex;justify-content:space-between;gap:15px;font-size:9px;letter-spacing:1px;color:var(--muted)}dialog{background:var(--panel);color:var(--ink);border:1px solid #51656c;border-radius:5px;padding:26px;width:min(560px,94vw);max-height:90vh}dialog::backdrop{background:#080f11da;backdrop-filter:blur(5px)}.dialog-heading{display:flex;justify-content:space-between;gap:12px;margin-bottom:25px}.dialog-heading button{padding:6px 12px}dialog p{margin:15px 0}dialog li{margin:12px 0;line-height:1.6;color:var(--muted)}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);padding:14px 22px;border-radius:3px;background:var(--gold);color:#0b1a21;max-width:90vw;z-index:100;opacity:0;pointer-events:none;transition:.2s}#toast.show{opacity:1;transform:translate(-50%,0)}[hidden]{display:none!important}
@media(min-width:1500px){.crew-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:1150px){.game-shell{grid-template-columns:205px minmax(0,1fr)}.rail{padding:26px 15px}main{padding:25px}.hero-grid{grid-template-columns:1fr 1fr;gap:16px}.scene-copy{max-width:90%;padding:22px}.scene-copy h2{font-size:33px}.scene-art{width:100%;right:-20%}.crew-grid,.market-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.quest-grid{grid-template-columns:1fr 1fr}.top-actions{gap:12px}.live-amount{font-size:34px}}
@media(max-width:850px){.game-shell{display:block}.rail{position:relative;height:auto;padding:18px 20px;border-right:0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:15px}.chapter{display:none}.rail-bottom{margin:0}.rail-bottom p,.rail-bottom>a:last-child{display:none}.token-button{padding:10px 13px;font-size:12px}.token-button span{font-size:9px}.rail nav{grid-column:1/-1;grid-row:2;grid-template-columns:repeat(6,1fr);gap:5px}.rail nav button{display:grid;gap:4px;text-align:center;justify-items:center;padding:10px 3px;font-size:10px}.rail nav button span{font-size:18px}.topbar{margin-bottom:20px}main{padding:24px 20px}.topbar h1{font-size:25px}.wallet-points{display:none}.brand{font-size:10px}.brand small{font-size:7px}.hero-grid{grid-template-columns:1fr 1fr}.scene,.scene-copy{min-height:380px}.scene-copy h2{font-size:31px}.panel{padding:20px}.selected-panel{gap:20px}.allocation{grid-template-columns:1fr}.profile-grid{grid-template-columns:1fr}}
@media(max-width:590px){.hero-grid{grid-template-columns:1fr}.scene,.scene-copy{min-height:340px}.scene-copy{max-width:75%;padding:24px}.scene-copy h2{font-size:35px}.scene-art{width:85%;right:-8%}.farm-panel{gap:16px}.live-amount{font-size:44px}.metric-grid{gap:8px;margin:16px 0}.metric{padding:14px 10px}.metric strong{font-size:20px}.metric small{font-size:9px}.metric .eyebrow{font-size:8px;letter-spacing:1px}.crew-grid,.market-grid{grid-template-columns:1fr 1fr;gap:12px}.nft-body{padding:12px}.nft-body button{padding:10px;font-size:11px}.nft-body h3{font-size:13px}.quest-grid,.social-quest,.selected-panel{grid-template-columns:1fr}.section-head{align-items:flex-start}.section-head h2{font-size:21px}.section-head button{font-size:11px;padding:10px}.board-row{grid-template-columns:25px 42px minmax(0,1fr);gap:10px;padding:15px}.board-row img{width:42px}.board-score{grid-column:3;text-align:left;font-size:17px}.allocation .metric-grid{gap:12px}.topbar .eyebrow{font-size:8px;letter-spacing:1px}#account{font-size:11px;padding:11px}.topbar h1{font-size:24px}.referral input{font-size:12px}.actions>*{flex-grow:1;text-align:center}.panel-top h2{font-size:21px}.nft-picture .chip{font-size:8px;left:6px;top:6px;padding:5px}footer{flex-direction:column;line-height:1.8}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
@media(max-width:590px){.scene-copy{max-width:100%;background:linear-gradient(90deg,#0f181ced 0%,#0f181cb0 37%,transparent 85%)}.scene-copy h2{font-size:31px;max-width:175px}.scene-copy p{display:none}.scene-art{right:-18%;width:95%;height:100%;bottom:-8%}.allocation .metric-grid{grid-template-columns:1fr}.selected-panel .track{margin:12px 0}.selected-panel .hint{margin-top:10px}}
@media(max-width:590px){.sell-row{grid-template-columns:38px 1fr;grid-template-areas:"img info" "input input" "button button";row-gap:8px}.sell-row img{grid-area:img;width:38px;height:38px}.sell-info{grid-area:info;flex-wrap:wrap}.sell-row input{grid-area:input;width:100%}.sell-row button{grid-area:button;width:100%}.mine-grid{grid-template-columns:1fr 1fr}.market-side-grid{grid-template-columns:1fr}.decor-grid{grid-template-columns:repeat(auto-fill,minmax(85px,1fr))}.decor-item{display:none}.streak-chip{padding:8px 10px;font-size:12px}}
/* Rankings: tab switcher (replacing the old <select>), podium accents for the top 3, a real
   rarity-bordered avatar (the player's own best raccoon) instead of the old generic class icon,
   and a highlighted / pinned "your place" row. */
.board-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}
.board-tabs button{padding:10px 16px;font-size:12px;border-radius:7px;background:var(--panel2);border:1px solid var(--line);color:var(--muted)}
.board-tabs button.active{background:var(--gold);border-color:var(--gold);color:#0b1a21;font-weight:700}
.board-avatar{width:52px;height:52px;border-radius:3px;object-fit:cover;image-rendering:pixelated;border:2px solid transparent}
.board-avatar.rarity-regular{border-color:#9eaeb4}
.board-avatar.rarity-modified{border-color:#5fd0c4}
.board-avatar.rarity-experimental{border-color:#b98cf0}
.board-avatar.rarity-legendary{border-color:#ffd25e;box-shadow:0 0 14px -4px #ffd25e}
.board-row{border:1px solid var(--line)}
.board-row.podium-1{background:linear-gradient(90deg,#332a12,var(--panel) 45%);border-color:#c1ec80}
.board-row.podium-1 .rank{color:#ffd873;font-size:23px}
.board-row.podium-2{background:linear-gradient(90deg,#242b30,var(--panel) 45%);border-color:#c9d0d6}
.board-row.podium-2 .rank{color:#dfe4e8;font-size:20px}
.board-row.podium-3{background:linear-gradient(90deg,#2c2216,var(--panel) 45%);border-color:#caa06b}
.board-row.podium-3 .rank{color:#e0b785;font-size:20px}
.board-row.you-row{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold)}
.board-you-nudge{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;font-size:13px}
.board-row.pinned{margin-bottom:22px}
/* "Visit workshop" player card — a real hero shot of their raccoon instead of plain text. */
.visit-hero{display:flex;gap:18px;align-items:center;margin-bottom:18px;flex-wrap:wrap}
.visit-avatar{width:104px;height:104px;border-radius:5px;object-fit:cover;image-rendering:pixelated;border:3px solid transparent;flex-shrink:0;background:#1b272b}
.visit-avatar.rarity-regular{border-color:#9eaeb4}
.visit-avatar.rarity-modified{border-color:#5fd0c4}
.visit-avatar.rarity-experimental{border-color:#b98cf0}
.visit-avatar.rarity-legendary{border-color:#ffd25e;box-shadow:0 0 22px -4px #ffd25e}
.visit-hero-copy{min-width:0}
.visit-hero-copy h2{margin:3px 0 2px}
.visit-hero-copy>p{margin-bottom:10px}
.visit-hero-copy .primary{display:inline-block}
@media(max-width:590px){.visit-avatar{width:76px;height:76px;border-radius:4px}}
/* My profile: a live preview of the same card (visitCard()) other players see, above the edit
   form — updates as you type, so publishing is no longer a leap of faith about how it will look. */
.own-card-panel{margin-bottom:24px}
.own-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.chip-live{border-color:var(--green);color:var(--green)}
.own-card-actions{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}
.own-card-actions .hint{text-align:right}
/* Rankings: name search (a plain input above the list, never rebuilt while typing — see
   loadBoardResults()'s comment) and the Hall of Fame dialog (past weeks' top 3, mini-podium). */
.board-search{margin:14px 0}
.hof-week{margin-bottom:16px}
.hof-podium{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:12px}
.hof-entry{text-align:center;padding:14px 8px;border-radius:3px;background:var(--panel2);border:1px solid var(--line)}
.hof-entry .rank{display:block;color:var(--muted);font-size:13px;margin-bottom:6px}
.hof-entry .board-avatar{width:56px;height:56px;margin:0 auto 8px}
.hof-entry .text-button{display:block;margin:0 auto;font-size:13px}
.hof-entry.podium-1{border-color:#c1ec80;background:linear-gradient(180deg,#332a12,var(--panel2))}
.hof-entry.podium-1 .rank{color:#ffd873;font-weight:700}
.hof-entry.podium-2{border-color:#c9d0d6}
.hof-entry.podium-2 .rank{color:#dfe4e8}
.hof-entry.podium-3{border-color:#caa06b}
.hof-entry.podium-3 .rank{color:#e0b785}
@media(max-width:590px){.hof-podium{grid-template-columns:1fr}}
/* Recycle/burn program (its own nav tab) — an irreversible action, so a warm/warning accent
   throughout instead of the site's usual gold, to visually set it apart before anyone commits. */
#burn .section-head .chip{border-color:#c96a4e;color:#f0a888;white-space:nowrap}
.burn-grid{margin-top:18px}
.burn-card{cursor:pointer;transition:border-color .15s,transform .1s}
.burn-card:hover{border-color:#c96a4e}
.burn-card.selected{border-color:#e8815c;box-shadow:0 0 0 1px #e8815c}
.burn-card .nft-picture{position:relative}
.burn-check{position:absolute;inset:0;display:grid;place-items:center;font-size:34px;color:#fff;background:#c96a4e55;opacity:0;transition:opacity .15s}
.burn-card.selected .burn-check{opacity:1}
.burn-actions{margin-top:20px;padding-top:18px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.burn-actions #burn-go{border-color:#c96a4e;color:#f0a888}
.burn-actions #burn-go:hover:not(:disabled){background:#3a221c}

/* Collection set bonus (My raccoons) */
.set-panel{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-bottom:22px}
.set-panel h3{margin:4px 0 6px}
.set-panel.complete{border-color:var(--gold);background:linear-gradient(120deg,#33301c,var(--panel) 60%)}
.set-chips{display:flex;gap:8px;flex-wrap:wrap}
.set-chips .chip{font-size:12px;padding:8px 10px}
.chip.missing{opacity:.45;border-style:dashed}
.chip.have{border-color:#598da0;color:#a5d2e3}
/* Expeditions */
.outcome-chips{margin:-6px 0 20px}
.expedition-panel{margin-bottom:20px}
.expedition-panel h3{margin-top:4px}.expedition-panel>.hint{margin-top:12px}.nowrap{white-space:nowrap}
.duration-picks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:8px 0 16px}
.duration-picks button{display:grid;gap:3px;text-align:left;padding:12px 14px}
.duration-picks button strong{font-size:18px}
.duration-picks small{font-size:11px;font-weight:500;opacity:.85}
.expedition-row{grid-template-columns:46px 1fr auto auto}
.countdown{font:600 14px Inter,sans-serif;color:var(--gold);white-space:nowrap}
.relic-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:10px;margin:12px 0}
.relic{background:var(--panel2);border:1px dashed var(--line);border-radius:3px;padding:14px 10px;display:grid;justify-items:center;gap:4px;text-align:center;opacity:.55}
.relic.found{opacity:1;border-style:solid}
.relic-icon{font-size:30px;line-height:1.2}
.relic strong{font-size:12px}
.relic small{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:1px}
.relic.found.relic-uncommon{border-color:#5fd0c4}
.relic.found.relic-rare{border-color:#b98cf0}
.relic.found.relic-legendary{border-color:#ffd25e;box-shadow:0 0 18px -6px #ffd25e}

/* Relic crafting and the Curator collection */
.curator-goal{margin:10px 0 4px}.curator-goal .track{margin-bottom:8px}
.relic-craft{margin-top:6px;padding:6px 8px;font-size:11px;width:100%;background:#25353b;border-color:#598da0;color:#a5d2e3}

/* ===== Visual layer: pixel icons, mobile bar, reward feedback, time of day, clans, podium ===== */
.px-icon{display:inline-block;vertical-align:middle;flex-shrink:0;image-rendering:pixelated}
nav button .tab-label{font-size:inherit;width:auto}
.tab-more{display:none}
.more-sheet{display:contents}
.empty-icon{color:var(--green);margin:0 auto 12px;display:block}
/* readability: nothing a player needs to read is smaller than ~12px */
p{color:#a8b7bd}
.hint{font-size:12.5px;color:#a8b7bd}
.eyebrow{font-size:11px;letter-spacing:1.6px;color:#a2b1b7}
.statline{font-size:13px}
.chip{font-size:11px}
.nft-body p,.board-row p{font-size:12.5px}
.metric small{font-size:12px}
.sale-row{font-size:13px}
.brand small{font-size:9px}
.relic small{font-size:10.5px}
.section-head p{font-size:13px}
/* collected points fly to the balance; the balance pulses */
#top-balance{display:inline-block}
.float-points{position:fixed;z-index:1000;transform:translate(-50%,-50%);font:700 20px Inter,sans-serif;color:var(--gold);text-shadow:0 2px 0 #0009,0 0 14px #c1ec8099;pointer-events:none;white-space:nowrap;transition:transform .8s cubic-bezier(.5,-.3,.7,1),opacity .5s ease-in .35s}
.pulse{animation:pulse .6s ease}
@keyframes pulse{40%{transform:scale(1.18);text-shadow:0 0 18px #c1ec80}}
.confetti{position:fixed;z-index:1000;width:7px;height:7px;margin:-3px 0 0 -3px;pointer-events:none;animation:confetti 1.2s cubic-bezier(.2,.6,.4,1) forwards}
@keyframes confetti{55%{transform:translate(var(--dx),var(--dy)) rotate(calc(var(--rot) / 2));opacity:1}100%{transform:translate(var(--dx),calc(var(--dy) + 140px)) rotate(var(--rot));opacity:0}}
/* reveal dialog: expedition returns and crafting */
.reveal-dialog h2{margin:4px 0 16px}
.reveal-dialog .dialog-heading{margin-bottom:6px}
.reveal-list{display:grid;gap:10px;max-height:52vh;overflow:auto}
.reveal-card{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:12px;align-items:center;background:var(--panel2);border:1px solid var(--line);border-radius:3px;padding:10px 12px}
.reveal-card img{width:52px;height:52px;border-radius:3px;image-rendering:pixelated}
.reveal-card strong{display:block}
.reveal-card.lost{opacity:.65}
.reveal-outcome{display:inline-block;margin-top:3px;font:600 15px Inter,sans-serif;color:var(--muted)}
.reveal-outcome.landed{animation:land .35s ease}
.outcome-rough{color:#e07a6a!important}.outcome-solid{color:var(--ink)!important}.outcome-big{color:var(--green)!important}.outcome-jackpot{color:#ffd873!important;text-shadow:0 0 12px #ffd25e}
@keyframes land{0%{transform:scale(1.45)}100%{transform:scale(1)}}
.reveal-amount{font:700 20px Inter,sans-serif;color:var(--gold);white-space:nowrap}
.reveal-relic{grid-column:1/-1;display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:3px;background:#ffffff08;border:1px solid var(--line)}
.reveal-relic small{font-size:13px;color:var(--ink);font-weight:600}
.reveal-relic.relic-uncommon{border-color:#5fd0c4}.reveal-relic.relic-rare{border-color:#b98cf0}.reveal-relic.relic-legendary{border-color:#ffd25e;box-shadow:0 0 18px -4px #ffd25e}
.pop{animation:pop .5s cubic-bezier(.3,1.6,.5,1)}
@keyframes pop{0%{transform:scale(.3);opacity:0}100%{transform:scale(1);opacity:1}}
.reveal-total{margin-top:14px;font-size:14px}
.reveal-ok{width:100%;margin-top:16px}
.relic-common{--glow:#c1ec80}.relic-uncommon{--glow:#5fd0c4}.relic-rare{--glow:#b98cf0}.relic-legendary{--glow:#ffd25e}
.craft-stage{position:relative;height:150px;display:grid;place-items:center;margin:4px 0}
.craft-inputs{position:absolute;inset:0;display:flex;justify-content:center;align-items:center;gap:30px}
.craft-in{animation:merge .9s ease-in .15s forwards}
@keyframes merge{to{transform:translateX(calc((1 - var(--i)) * 64px)) scale(.4);opacity:0}}
.craft-flash{position:absolute;width:130px;height:130px;border-radius:50%;background:radial-gradient(circle,#fff 0,var(--glow) 35%,transparent 70%);opacity:0;animation:flash .6s ease-out .9s forwards}
@keyframes flash{0%{opacity:0;transform:scale(.2)}40%{opacity:1}100%{opacity:0;transform:scale(1.7)}}
.craft-out{opacity:0;animation:pop .5s cubic-bezier(.3,1.6,.5,1) 1.05s forwards;filter:drop-shadow(0 0 14px var(--glow))}
.craft-result{text-align:center;font-size:15px}.craft-result strong{color:var(--ink)}
.curator-unlocked{margin-top:10px;text-align:center;color:var(--gold)}
/* the hideout scene follows the time of day */
.scene-sky{position:absolute;inset:0;z-index:-1;pointer-events:none}
.scene.time-night .scene-sky{background:radial-gradient(circle at 80% 20%,#ffd87326 0,transparent 16%),linear-gradient(180deg,#071030e0,#0a1a3a99 55%,#0b1a2a55)}
.scene.time-night .scene-art{filter:brightness(.9) saturate(.9)}
.scene.time-dawn .scene-sky{background:linear-gradient(180deg,#f3a9a040,#c1ec8026 50%,transparent)}
.scene.time-dusk .scene-sky{background:linear-gradient(180deg,#e8913a4d,#b050603b 50%,transparent)}
.scene-time{position:absolute;top:18px;right:18px;z-index:2;font-size:10px;font-weight:700;letter-spacing:1.5px;padding:6px 9px;border-radius:2px;background:#101719cc;border:1px solid #4a5c62;color:#b2ced9}
.scene.time-night .scene-time{color:#ffe08a;border-color:#4d6b2c}
/* guests: a preview instead of an empty box */
.guest-pitch{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;background:linear-gradient(120deg,#27353a,#172226)}
.guest-pitch h2{margin:4px 0 6px}
.guest-pitch .primary{white-space:nowrap}
.nft.demo .nft-picture:after{content:'DEMO';position:absolute;right:10px;top:10px;font-size:10px;font-weight:700;letter-spacing:1.5px;padding:5px 7px;border-radius:2px;background:#101719d9;color:var(--gold);border:1px solid #4d6b2c}
/* rankings podium */
.podium{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:end;margin:8px 0 22px}
.podium-spot{display:grid;justify-items:center;gap:6px;text-align:center;min-width:0}
.podium-avatar{width:72px;height:72px;border-radius:4px;border:2px solid var(--rarity,var(--line));image-rendering:pixelated;object-fit:cover;background:#1b272b}
.podium-avatar.rarity-regular{--rarity:#9eaeb4}.podium-avatar.rarity-modified{--rarity:#5fd0c4}.podium-avatar.rarity-experimental{--rarity:#b98cf0}.podium-avatar.rarity-legendary{--rarity:#ffd25e}
.place-1 .podium-avatar{width:92px;height:92px;box-shadow:0 0 26px -6px #ffd873}
.podium-spot .text-button{font-weight:700;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.podium-spot strong{color:var(--gold);font-size:15px}
.podium-block{width:100%;border-radius:3px 3px 2px 2px;display:grid;place-items:center;font:700 26px Inter,sans-serif;color:#0b1a21}
.place-1 .podium-block{height:110px;background:linear-gradient(#ffd873,#c99a3c)}
.place-2 .podium-block{height:80px;background:linear-gradient(#e6ebef,#9aa5ad)}
.place-3 .podium-block{height:60px;background:linear-gradient(#e0b785,#a87a45)}
/* phones: bottom tab bar with "More", balance back in the header */
@media(max-width:850px){
 .rail nav{position:fixed;left:0;right:0;bottom:0;z-index:60;grid-template-columns:repeat(6,1fr);gap:2px;padding:6px 6px calc(6px + env(safe-area-inset-bottom));background:#111b1ff5;backdrop-filter:blur(8px);border-top:1px solid var(--line);grid-row:auto;grid-column:auto}
 .rail nav button{padding:7px 2px;font-size:10px;border-radius:3px;gap:3px}
 .rail nav button .tab-label{font-size:10px;width:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
 .tab-more{display:grid}
 .rail nav .more-sheet{display:none;position:absolute;bottom:calc(100% + 8px);right:8px;grid-template-columns:repeat(2,minmax(130px,1fr));gap:6px;background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:8px;box-shadow:0 12px 30px #000a}
 .rail nav .more-sheet.open{display:grid}
 .rail nav .more-sheet button{display:flex;align-items:center;gap:10px;padding:12px;font-size:13px;text-align:left;justify-items:start}
 .rail nav .more-sheet button .tab-label{font-size:13px}
 body{padding-bottom:calc(76px + env(safe-area-inset-bottom))}
 #toast{bottom:calc(86px + env(safe-area-inset-bottom))}
 .wallet-points{display:block}
 .wallet-points small{font-size:9px;margin-bottom:2px}
 .wallet-points strong{font-size:17px}
 .top-actions{gap:12px}
 .guest-pitch{flex-direction:column;align-items:flex-start}
}
@media(max-width:590px){.podium{gap:6px}.podium-avatar{width:56px;height:56px}.place-1 .podium-avatar{width:68px;height:68px}.place-1 .podium-block{height:84px}.place-2 .podium-block{height:62px}.place-3 .podium-block{height:46px}.reveal-card{grid-template-columns:44px minmax(0,1fr) auto}.reveal-card img{width:44px;height:44px}}
@media(prefers-reduced-motion:reduce){.craft-in{animation:none;opacity:0}.craft-flash{display:none}.craft-out{animation:none;opacity:1}.pop,.reveal-outcome.landed,.pulse{animation:none}.float-points,.confetti{display:none}}

/* phone polish: short tab labels, header on two rows */
.tab-short{display:none}
@media(max-width:850px){
 .rail nav>button .tab-label{display:none}
 .rail nav>button .tab-short{display:block;font-size:10px}
 .topbar{flex-wrap:wrap;align-items:flex-start}
 .topbar>div:first-child{flex:1 1 100%}
 .top-actions{width:100%;justify-content:space-between}
 .wallet-points{text-align:left;order:-1;margin-right:auto}
 .wallet-points small{display:inline;margin-right:6px}
}

.pending-burns{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;border-color:#87704b;background:#332c20}
.pending-burns p{color:#ebce9b}
@media(max-width:590px){.pending-burns{flex-direction:column;align-items:flex-start}}

/* ===================== MINING SYSTEMS theme =====================
   Matches the Mining Systems landing (/info): midnight server-room navy, mint "power on" accent,
   violet glow, Inter headings, monospace telemetry labels, soft rounded hardware panels. */
:root{--bg:#0b101b;--panel:#111927;--panel2:#162132;--line:#293344;--muted:#a6b2c2;--ink:#f0f4f6;--gold:#9affce;--green:#8ec5ff;--orange:#b38cff;--mono:'Courier New',ui-monospace,monospace;--display:Inter,Arial,sans-serif}
body{background:radial-gradient(1200px 600px at 85% -10%,#2a1d4d55,transparent 60%),radial-gradient(900px 500px at -10% 110%,#0f3b3255,transparent 60%),var(--bg);background-attachment:fixed;font-family:Inter,Arial,sans-serif}
h1,h2,h3{font-family:var(--display);text-transform:none;font-weight:800;letter-spacing:-.04em;line-height:1.05}
h1{font-size:34px}h2{font-size:28px}h3{font-size:19px}
button,.brand{font-family:Inter,Arial,sans-serif}
button{border-radius:8px;font-weight:700}
.primary{background:var(--gold);border-color:var(--gold);color:#092219;box-shadow:0 0 0 1px #9affce33,0 8px 24px -10px #9affce99}
.primary:active:not(:disabled){transform:translateY(1px)}
.secondary{border-color:#33415a;background:transparent}
a{color:var(--gold)}
.eyebrow,.chip,.scene-label,.scene-time,.live-unit,.wallet-points small,.chapter,.tier-chip,.rank,.countdown,footer{font-family:var(--mono)}
.eyebrow{text-transform:uppercase;letter-spacing:1.6px;color:var(--gold);font-size:11px}
.eyebrow:before{content:'';display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--gold);box-shadow:0 0 8px var(--gold);margin-right:8px;vertical-align:middle}
.topbar .eyebrow:before{display:none}
.chip{background:#0f1726;border-color:#2f3b52;color:#cfd8e3;border-radius:6px}
.panel,.metric,.nft,.empty,dialog,.scene{border-radius:14px}
.panel{background:linear-gradient(180deg,#121b2b,#0f1726);border-color:var(--line)}
.notice{border-radius:10px}
/* rail */
.rail{background:#090d16cc;backdrop-filter:blur(8px);border-right:1px solid #1d2636}
.brand{font-size:13px;letter-spacing:3px;font-weight:700}
.brand b{clip-path:none;width:42px;height:42px;border-radius:10px;background:transparent;border:1px solid var(--gold);color:var(--gold);font-family:var(--mono);font-size:18px;box-shadow:0 0 18px -6px var(--gold)}
.brand small{font-family:var(--mono);letter-spacing:1px}
.lamp{background:var(--gold);box-shadow:0 0 10px var(--gold)}
nav button{border-radius:10px;font-weight:600}
nav button.active{background:#16213a;border:1px solid #33415a;color:var(--ink);box-shadow:inset 3px 0 0 var(--gold)}
.token-button{background:#0f1726;border:1px solid #33415a;border-radius:12px;color:var(--ink);font-family:var(--display);font-weight:800;letter-spacing:-.02em;font-size:15px}
.token-button span{font-family:Inter,sans-serif;font-weight:500;letter-spacing:0;color:var(--muted)}

/* header */
.topbar{position:relative;padding-bottom:20px;border-bottom:1px solid #1d2636}
.topbar:after{display:none}
.wallet-points strong{font-family:var(--mono);font-size:24px;color:var(--gold);text-shadow:0 0 18px #9affce55}
/* mining room scene: the rig GIF glowing on the rack wall */
.scene{border-color:#2a3550;background:#0b101b}
.scene:before{background:url('/assets/fleet.webp') center/cover;image-rendering:auto;filter:saturate(1.1) brightness(.55);opacity:.55}
.scene:after{background:radial-gradient(circle at 72% 55%,#b38cff33,transparent 45%),linear-gradient(90deg,#0b101bf2 0%,#0b101bb3 42%,transparent 78%),linear-gradient(0deg,#0b101b 0%,transparent 50%)}
.scene-art{mask-image:none;-webkit-mask-image:none;width:auto;height:78%;max-width:52%;aspect-ratio:1;object-fit:contain;right:3%;bottom:8%;border:0;outline:0;box-shadow:none;transform:none;background:transparent;filter:drop-shadow(0 0 28px #b38cff66);image-rendering:pixelated}
.scene-copy{max-width:56%}
.scene-copy h2{font-size:44px;line-height:1;max-width:340px;letter-spacing:-.05em}
.scene-copy p{max-width:280px}
.scene-label{font-size:10px;border-radius:6px;background:#0b101bd9;border-color:#2f3b52;color:var(--gold)}
.scene-time{border-radius:6px;background:#0b101bcc;border-color:#2f3b52;color:#cfd8e3}
.live-amount{font-family:var(--mono);font-size:46px;letter-spacing:-1px;color:var(--gold);text-shadow:0 0 24px #9affce44}
.track{border-radius:99px;background:#0b101b;border-color:#293344}
.track i{background:linear-gradient(90deg,#9affce,#8ec5ff,#b38cff)}
.metric strong,.upgrade-price,.board-score,.reward{font-family:var(--mono);letter-spacing:-.5px}
.metric strong{font-size:26px}
.metric{background:#0f1726}
.quest-number{background:#16213a;border-color:#33415a;color:var(--gold);border-radius:8px;font-family:var(--mono)}
.allocation{background:linear-gradient(120deg,#1a1640,#0f1726 60%)}
.welcome-back{background:linear-gradient(120deg,#103a2e,#0f1726);border-color:var(--gold)}
.social-quest{background:linear-gradient(120deg,#131d33,#0f1726)}
.guest-pitch{background:linear-gradient(120deg,#1a1640,#0f1726)}
input,textarea,select{background:#0b101b;border-color:#2f3b52;border-radius:8px}
dialog{border-color:#33415a;background:#111927}
dialog::backdrop{background:#05080fe0;backdrop-filter:blur(4px)}
#toast{border-radius:10px;background:var(--gold);color:#092219;box-shadow:0 10px 30px -10px #9affce99;font-weight:700}
/* hardware classes (colours from the landing) */
.nft.rarity-copper,.scene.rarity-copper{--rarity:#dc995f}
.nft.rarity-iron,.scene.rarity-iron{--rarity:#a7b7c9}
.nft.rarity-silver,.scene.rarity-silver{--rarity:#d6e4f5}
.nft.rarity-gold,.scene.rarity-gold{--rarity:#f3cf72}
.nft.rarity-diamond,.scene.rarity-diamond{--rarity:#7cddf5}
.nft.rarity-obsidian,.scene.rarity-obsidian{--rarity:#b38cff}
.nft.rarity-diamond{box-shadow:0 0 0 1px var(--rarity),0 0 22px -8px var(--rarity)}
.nft.rarity-obsidian{box-shadow:0 0 0 1px var(--rarity),0 0 30px -6px var(--rarity)}
.chip.rarity-chip.rarity-copper{--rarity:#dc995f}.chip.rarity-chip.rarity-iron{--rarity:#a7b7c9}.chip.rarity-chip.rarity-silver{--rarity:#d6e4f5}.chip.rarity-chip.rarity-gold{--rarity:#f3cf72}.chip.rarity-chip.rarity-diamond{--rarity:#7cddf5}.chip.rarity-chip.rarity-obsidian{--rarity:#b38cff}
.board-avatar.rarity-copper,.visit-avatar.rarity-copper,.podium-avatar.rarity-copper{--rarity:#dc995f;border-color:#dc995f}
.board-avatar.rarity-iron,.visit-avatar.rarity-iron,.podium-avatar.rarity-iron{--rarity:#a7b7c9;border-color:#a7b7c9}
.board-avatar.rarity-silver,.visit-avatar.rarity-silver,.podium-avatar.rarity-silver{--rarity:#d6e4f5;border-color:#d6e4f5}
.board-avatar.rarity-gold,.visit-avatar.rarity-gold,.podium-avatar.rarity-gold{--rarity:#f3cf72;border-color:#f3cf72}
.board-avatar.rarity-diamond,.visit-avatar.rarity-diamond,.podium-avatar.rarity-diamond{--rarity:#7cddf5;border-color:#7cddf5}
.board-avatar.rarity-obsidian,.visit-avatar.rarity-obsidian,.podium-avatar.rarity-obsidian{--rarity:#b38cff;border-color:#b38cff}
.nft{clip-path:none}
.nft-picture{background:radial-gradient(circle at 50% 55%,#1c1640,#0b101b 70%)}
.nft-picture img{object-fit:contain;image-rendering:pixelated}
.nft-picture .chip{background:#0b101be8}
.nft-body h3{font-size:17px}
.nft.selected{border-color:var(--gold);box-shadow:0 0 0 2px var(--gold),0 0 24px -8px var(--gold)}
.board-avatar,.visit-avatar,.podium-avatar,.reveal-card img,.sell-row img{object-fit:contain;background:#0f1726}
/* full set */
.chip.have{border-color:var(--gold);color:var(--gold)}
.chip.missing{opacity:.45;border-style:dashed}
.set-panel.complete{background:linear-gradient(120deg,#103a2e,var(--panel) 60%)}
@media(max-width:590px){.duration-picks{grid-template-columns:1fr}.expedition-row{grid-template-columns:46px 1fr auto}.expedition-row>button,.expedition-row>.chip{grid-column:1/-1}.set-panel{align-items:flex-start}}
.relic-craft{background:#16213a;border-color:#33415a;color:var(--gold)}
/* recycle */
#burn .section-head .chip{border-color:#dc995f;color:#dc995f}
.burn-card.selected{border-color:#dc995f;box-shadow:0 0 0 1px #dc995f}
.burn-actions #burn-go{border-color:#dc995f;color:#dc995f}
.burn-check{background:#dc995f55}
/* rankings */
.board-tabs button{border-radius:99px;font-family:var(--mono);font-size:11px;letter-spacing:.5px;text-transform:uppercase}
.board-tabs button.active{background:var(--gold);border-color:var(--gold);color:#092219}
.board-row,.hof-entry{border-radius:12px}
.podium-block{border-radius:10px 10px 4px 4px;font-family:var(--mono);color:#0b101b}
.float-points{font-family:var(--mono);font-size:22px;color:var(--gold);text-shadow:0 2px 0 #000,0 0 14px #9affce99}
@keyframes pulse{40%{transform:scale(1.18);text-shadow:0 0 18px #9affce}}
.nft.demo .nft-picture:after{content:'SAMPLE';border-radius:6px;font-family:var(--mono);border-color:#2f3b52;color:var(--gold)}
.reveal-amount,.reveal-outcome{font-family:var(--mono)}
footer{border-top:1px solid #1d2636}
@media(max-width:850px){
 .rail{background:#090d16;backdrop-filter:none}
 .rail-links{display:none}
 .rail nav{background:#090d16f2}
 .rail nav button.active{box-shadow:inset 0 3px 0 var(--gold)}
 .rail nav .more-sheet{border-radius:14px}
 h1{font-size:28px}
}
@media(max-width:590px){
 .scene-copy h2{font-size:34px}
 .scene-art{height:56%;max-width:60%;right:0;bottom:6%}
 .live-amount{font-size:38px}
 .nft-body h3{font-size:15px}
}

/* rail: project links as compact hardware "ports" */
.rail-links{display:grid;gap:6px;padding:8px;border:1px solid #1f2a3d;border-radius:14px;background:linear-gradient(180deg,#0f1726,#0b101b)}
.rail-link{display:grid;grid-template-columns:32px 1fr auto;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;color:var(--ink);text-decoration:none;border:1px solid transparent;transition:background .15s,border-color .15s,transform .15s}
.rail-link:hover{text-decoration:none;background:#16213a;border-color:#2f3b52;transform:translateX(2px)}
.rail-link:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.rail-link-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:9px;background:#0b101b;border:1px solid #2a3550;color:var(--gold)}
.rail-link-icon svg{width:16px;height:16px}
.rail-link:nth-child(2) .rail-link-icon{color:#8ec5ff}
.rail-link:nth-child(3) .rail-link-icon{color:#7cddf5}
.rail-link:nth-child(4) .rail-link-icon{color:#b38cff}
.rail-link-text{display:grid;min-width:0;line-height:1.25}
.rail-link-text strong{font-size:13px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rail-link-text small{font-family:var(--mono);font-size:10px;letter-spacing:.5px;color:var(--muted);text-transform:uppercase}
.rail-link-arrow{color:var(--muted);font-size:12px;transition:color .15s}
.rail-link:hover .rail-link-arrow{color:var(--gold)}@media(max-width:850px){.rail-links{display:none}}

/* Recycle: the action bar sits above the rig grid and stays on screen while scrolling */
.burn-bar{position:sticky;top:12px;z-index:5;margin:6px 0 18px;padding:14px 16px;border:1px solid #2f3b52;border-radius:14px;background:#0f1726ee;backdrop-filter:blur(8px);display:grid;grid-template-columns:1fr auto;align-items:center;gap:6px 16px;box-shadow:0 12px 30px -18px #000}
.burn-bar .burn-bar-info{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px;min-width:0}
.burn-bar .burn-bar-info strong{font-size:15px}
.burn-bar .burn-bar-links{display:flex;gap:14px}
.burn-bar .burn-bar-links .text-button{font-size:13px}
.burn-bar #burn-go{white-space:nowrap}
.burn-bar #burn-status{grid-column:1/-1;margin:0}
.burn-bar #burn-status:empty{display:none}
.burn-grid{margin-top:0}
@media(max-width:850px){.burn-bar{top:8px}}
@media(max-width:590px){.burn-bar{grid-template-columns:1fr}.burn-bar #burn-go{width:100%}}
/* ===== main computer (main-rig-ui.js) ===== */
.main-rig{margin:24px 0;background:linear-gradient(120deg,#1d2c26,#172226 60%)}
.main-grid{display:grid;grid-template-columns:auto minmax(0,1.5fr) minmax(240px,1fr);gap:26px;align-items:center}
.main-avatar{position:relative;width:128px;height:128px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 50% 40%,#26363b,#121b1d 70%);border:3px solid var(--ring);box-shadow:0 0 0 6px #ffffff08,0 0 34px -6px var(--ring)}
.main-avatar img{width:104px;height:104px;object-fit:contain;image-rendering:pixelated;border-radius:50%}
.main-avatar.ring-copper{--ring:#dc995f}.main-avatar.ring-gold{--ring:#f3cf72}.main-avatar.ring-diamond{--ring:#7cddf5}.main-avatar.ring-obsidian{--ring:#b38cff}
.main-level{position:absolute;bottom:-8px;left:50%;transform:translateX(-50%);background:var(--ring);color:#111a1c;font:800 13px Inter,sans-serif;padding:4px 10px;border-radius:999px;white-space:nowrap;box-shadow:0 2px 0 #0006}
.main-info h2{margin:4px 0 8px}.main-info p strong{color:var(--ink)}
.main-ladder{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}
.rung{display:grid;gap:2px;min-width:78px;padding:8px 10px;border-radius:9px;background:#0f1719aa;border:1px solid var(--line);text-align:center}
.rung small{font-size:10px;letter-spacing:1px;color:var(--muted)}.rung strong{font-size:16px;color:var(--ink)}.rung span{font-size:11px;color:var(--muted)}
.rung.now{border-color:var(--gold);background:#22301a}.rung.now strong{color:var(--gold)}
.main-upgrade{display:grid;gap:8px;padding:18px;border-radius:12px;background:#0f1719cc;border:1px solid #455a52}
.main-upgrade .upgrade-price{margin:0;font-size:28px}.main-upgrade .upgrade-price small{font-size:13px;color:var(--muted)}
.main-upgrade p{margin:0}.main-upgrade .primary{width:100%;padding:14px}
.afford{display:grid;gap:4px}.afford small{font-size:11px;color:var(--muted)}
.refund-note{display:flex;gap:12px;align-items:center;margin-bottom:18px;padding:12px 14px;border-radius:10px;background:#1f3324;border:1px solid #5f8a55}
.refund-note p{margin:0;color:#cfe8b8}.refund-note .px-icon{color:var(--gold);flex-shrink:0}
@media(max-width:900px){.main-grid{grid-template-columns:auto minmax(0,1fr)}.main-upgrade{grid-column:1/-1}}
@media(max-width:590px){.main-grid{grid-template-columns:1fr;justify-items:start}.main-avatar{width:104px;height:104px}.main-avatar img{width:84px;height:84px}}
/* main computer: live numbers and stats, as on the SCRAP RACCOONS main raccoon */
.main-grid{align-items:start}
.main-live{display:flex;flex-wrap:wrap;gap:8px 28px;align-items:flex-end;margin:6px 0 10px}
.main-live small{display:block;font-size:10px;letter-spacing:1.5px;color:var(--muted);font-weight:700}
.main-live strong{display:block;font:800 40px Inter,sans-serif;color:var(--gold);letter-spacing:-1px;line-height:1.1}
.main-live .main-speed strong{font-size:22px;color:var(--ink);letter-spacing:0}
.main-mult{color:var(--gold);font-size:1.25em}
.main-info>.track{margin:0 0 14px}
.main-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.main-stats>div{background:#0f1719aa;border:1px solid var(--line);border-radius:9px;padding:9px 11px;min-width:0}
.main-stats small{display:block;font-size:11px;color:var(--muted)}
.main-stats strong{font-size:16px;overflow-wrap:anywhere}
.main-upgrade .main-ladder{margin-top:6px}
.main-foot{margin-top:14px}
@media(max-width:1100px){.main-grid{grid-template-columns:auto minmax(0,1fr)}.main-upgrade{grid-column:1/-1}.main-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:590px){.main-grid{grid-template-columns:1fr}.main-live strong{font-size:32px}.main-stats{grid-template-columns:1fr 1fr}}

/* home page laid out like the SCRAP RACCOONS hideout */
.main-quests{grid-column:1/-1;justify-self:start;background:#22301a;border-color:#4f6b3a;color:var(--gold);padding:8px 12px;font-size:13px}
.home-scene{min-height:360px;margin-bottom:6px}
.home-scene .scene-copy{min-height:360px;max-width:60%}
.home-scene .scene-copy h2{margin-top:auto}
.home-scene .actions{margin-top:14px}
.home-scene .scene-art{width:58%}
@media(max-width:590px){.home-scene .scene-copy{max-width:100%}.home-scene .scene-art{width:85%;opacity:.55}}

/* Withdraw button in the left rail + its countdown dialog */
.withdraw-button{display:grid;grid-template-columns:32px 1fr auto;align-items:center;gap:10px;width:100%;padding:12px;border-radius:10px;text-align:left;background:linear-gradient(120deg,#22301a,#1a2a2c);border:1px solid #5f8a55;color:var(--ink);box-shadow:0 0 22px -10px var(--gold)}
.withdraw-button:hover:not(:disabled){filter:brightness(1.15)}
.wd-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;background:var(--gold);color:#111a1c;font-weight:800}
.wd-text strong{display:block;font-size:15px}.wd-text small{display:block;font-size:12px;color:var(--gold);font-variant-numeric:tabular-nums;margin-top:2px}
.wd-lock{font-size:14px;opacity:.8}
.withdraw-button.open{border-color:var(--gold);animation:wd-pulse 2s infinite}
@keyframes wd-pulse{50%{box-shadow:0 0 26px -4px var(--gold)}}
#withdraw-dialog{max-width:560px}
.wd-count{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:8px 0 18px}
.wd-count div{background:#0f1719;border:1px solid var(--line);border-radius:10px;padding:12px 6px;text-align:center}
.wd-count strong{display:block;font-size:30px;color:var(--gold);font-variant-numeric:tabular-nums}
.wd-count small{font-size:11px;color:var(--muted);letter-spacing:1px;text-transform:uppercase}
.wd-list{display:grid;gap:10px;padding-left:20px;margin:10px 0 14px;color:var(--muted)}.wd-list strong{color:var(--ink)}
@media(prefers-reduced-motion:reduce){.withdraw-button.open{animation:none}}

/* ===== Charge Cells ===== */
.cell-rewards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0 0 18px}
.cell-reward{display:grid;grid-template-columns:52px 1fr;gap:10px;align-items:center;padding:10px;border-radius:10px;background:var(--panel);border:1px solid var(--cell,var(--line))}
.cell-reward img{width:52px;height:52px;object-fit:cover;border-radius:8px}
.cell-reward small{display:block;font-size:11px;color:var(--muted)}.cell-reward strong{display:block;font-size:20px;color:var(--cell,var(--gold))}
.cell-common{--cell:#dc995f}.cell-uncommon{--cell:#5fd08a}.cell-rare{--cell:#5fc8f0}.cell-epic{--cell:#b38cff}.cell-legendary{--cell:#f3cf72}
.cell-card{border-color:var(--cell)}.cell-card .rarity-chip{color:var(--cell)!important;border-color:var(--cell)!important}
.cell-card .nft-picture img{object-fit:cover}
.cells-gate{border-color:#8a6b2e;background:#2a2414;margin:0 0 16px}.cells-gate h3{margin:0 0 6px}.cells-gate .button{display:inline-block;margin-top:8px}
@media(max-width:900px){.cell-rewards{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:590px){.cell-rewards{grid-template-columns:1fr 1fr}}

.burn-bar-links .select-all{padding:8px 14px;font-size:13px}
