@import"https://fonts.googleapis.com/css2?family=Caveat:wght@500;700&family=JetBrains+Mono:wght@400;600&family=Montserrat:wght@400;500;600;700&family=Rubik:wght@700;800;900&family=Space+Mono:wght@400;700&family=Ubuntu:wght@400;500;700&family=Ubuntu+Mono:wght@400;700&display=swap";.navbar{background:var(--nav);height:64px;position:sticky;top:0;z-index:100;border-bottom:2px solid var(--signal)}.navbar-container{height:100%;padding:0 32px;display:flex;justify-content:space-between;align-items:center}.navbar-left{display:flex;align-items:center;gap:24px}.navbar-brand{font-family:var(--font-heading);font-size:18px;font-weight:800;color:#fff;letter-spacing:1px;text-decoration:none}.navbar-links{display:flex;align-items:center;gap:8px}.navbar-link{padding:6px 16px;border:2px solid transparent;border-radius:999px;font-family:var(--font-body);font-size:14px;font-weight:700;color:#fff;text-decoration:none;transition:background .15s,color .15s}.navbar-link:hover{background:#ffffff1f}.navbar-link.active{background:var(--sun);border-color:var(--ink);color:var(--ink);box-shadow:2px 2px 0 var(--ink)}.navbar-right{display:flex;align-items:center;gap:12px}.navbar-points{padding:5px 14px;border:2px solid var(--on-bg-2);border-radius:999px;font-family:var(--font-mono);font-size:12px;font-weight:700;letter-spacing:1px;color:var(--sun)}.navbar-avatar{width:36px;height:36px;border-radius:50%;background:var(--sun);border:2px solid var(--ink);display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:11px;font-weight:700;color:var(--ink);cursor:pointer;position:relative}.navbar-avatar-menu{position:absolute;top:100%;right:0;margin-top:8px;background:var(--lav);border:2px solid var(--ink);border-radius:12px;box-shadow:var(--sticker-shadow);padding:4px;min-width:160px;z-index:200}.navbar-avatar-menu-item{display:block;width:100%;padding:8px 12px;font-family:var(--font-mono);font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--foreground-secondary);background:none;border:none;border-radius:6px;cursor:pointer;text-align:left;transition:all .15s}.navbar-avatar-menu-item:hover{background:var(--surface-tertiary);color:var(--foreground-primary)}.navbar-avatar-menu-item.danger{color:var(--danger)}.navbar-avatar-menu-item.danger:hover{background:#f973161a}.navbar-link-icon{display:none}@media (max-width: 640px){.navbar{height:52px}.navbar-container{padding:0 10px}.navbar-brand{display:none}.navbar-left{gap:0}.navbar-links{gap:4px}.navbar-link{display:flex;align-items:center;gap:6px;padding:5px 10px;font-size:13px}.navbar-link-icon{display:inline;font-size:16px}.navbar-link:not(.active) .navbar-link-text{display:none}.navbar-right{gap:8px}.navbar-points{padding:4px 10px;font-size:11px}.navbar-points-unit{display:none}.navbar-avatar{width:32px;height:32px}}.app{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;width:100%}.loading{display:flex;justify-content:center;align-items:center;min-height:50vh;font-size:1.25rem;color:var(--foreground-muted);font-family:var(--font-mono)}.section-label{font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:2px;color:var(--accent-primary);text-transform:uppercase}.btn{padding:.65rem 1.4rem;border:2px solid var(--ink);border-radius:999px;font-size:.9rem;font-weight:700;cursor:pointer;transition:transform .1s,box-shadow .1s;font-family:var(--font-body);box-shadow:3px 3px 0 var(--ink);display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn-primary{background:var(--sun);color:var(--ink)}.btn-primary:hover{transform:translate(-1px,-1px);box-shadow:4px 4px 0 var(--ink)}.btn-secondary{background:var(--edge);color:var(--ink)}.btn-secondary:hover{background:#fff}.btn-danger{background:var(--signal);color:#fff}.btn-danger:hover{opacity:.9}.btn:disabled{opacity:.4;cursor:not-allowed}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--foreground-secondary);font-size:.875rem}.form-group input,.form-group textarea{width:100%;padding:.75rem 1rem;border:2px solid var(--ink);border-radius:12px;font-size:.9rem;background:var(--edge);color:var(--ink);transition:box-shadow .15s}.form-group input:focus,.form-group textarea:focus{outline:none;box-shadow:0 0 0 3px var(--signal-soft)}.form-group input::placeholder,.form-group textarea::placeholder{color:#6e63c4}.error{color:var(--danger);font-size:.875rem}.success{color:var(--success);font-size:.875rem}.card{background:var(--surface-secondary);border:1px solid var(--border-subtle);border-radius:12px;padding:20px}.card:hover{border-color:var(--border-default)}.home{display:flex;flex-direction:column;align-items:center}.home-hero{display:flex;flex-direction:column;align-items:center;gap:24px;padding:40px 80px 32px;width:100%;position:relative}.home-hero-plus{font-family:var(--font-heading);font-size:48px;font-weight:900;color:var(--sun);line-height:1}.home-hero-title{display:flex;flex-direction:column;align-items:center;gap:12px}.home-hero-eyebrow{padding:4px 12px;border-radius:999px;border:2px solid var(--ink);background:var(--sun);font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:1.5px;color:var(--ink);text-transform:uppercase}.home-hero-h1{font-family:var(--font-heading);font-size:60px;font-weight:900;line-height:1;text-align:center;color:#fff;max-width:900px}.home-hero-sub{font-family:var(--font-body);font-size:17px;line-height:1.6;color:var(--foreground-secondary);text-align:center;max-width:700px}.home-cta-row{display:flex;align-items:center;gap:16px}.home-cta-primary{display:flex;align-items:center;justify-content:center;padding:14px 30px;border-radius:999px;background:var(--sun);border:2px solid var(--ink);box-shadow:4px 4px 0 var(--ink);cursor:pointer;transition:transform .1s,box-shadow .1s}.home-cta-primary span{font-family:var(--font-body);font-size:15px;font-weight:700;color:var(--ink)}.home-cta-primary:hover{transform:translate(-1px,-1px);box-shadow:5px 5px 0 var(--ink)}.home-cta-secondary{display:flex;align-items:center;justify-content:center;padding:14px 30px;border-radius:999px;border:2px solid var(--on-bg-2);background:transparent;cursor:pointer;transition:background .15s}.home-cta-secondary span{font-family:var(--font-body);font-size:15px;font-weight:700;color:#fff}.home-cta-secondary:hover{background:#ffffff14}.home-machine-preview{display:flex;flex-direction:column;align-items:center;gap:16px;padding:0 60px;width:100%}.home-machine-thumbnail{width:900px;max-width:100%;border-radius:18px;overflow:hidden;border:2px solid var(--ink);box-shadow:6px 6px 0 var(--ink);background:var(--lav)}.home-machine-thumbnail img{width:100%;display:block}.home-machine-placeholder{font-family:var(--font-mono);font-size:14px;color:var(--foreground-muted);letter-spacing:2px;text-transform:uppercase}.home-status-bar{display:flex;align-items:center;justify-content:space-around;width:900px;max-width:100%;padding:16px 32px;background:var(--lav);border:2px solid var(--ink);border-radius:16px;box-shadow:var(--sticker-shadow)}.home-stat{display:flex;align-items:center;gap:8px}.home-stat-number{font-family:var(--font-heading);font-size:26px;font-weight:800;color:var(--ink)}.home-stat-number.cyan{color:var(--success)}.home-stat-number.amber{color:var(--accent-primary)}.home-stat-label{font-family:var(--font-mono);font-size:10px;font-weight:700;letter-spacing:1px;color:var(--foreground-muted);text-transform:uppercase}.home-stat-sep{width:2px;height:24px;background:var(--line)}.home-footer{display:flex;justify-content:center;padding:24px 40px;width:100%}.home-footer-text{font-family:var(--font-mono);font-size:10px;letter-spacing:2px;color:var(--foreground-muted);text-transform:uppercase;text-align:center}@media (max-width: 640px){.home-hero{gap:16px;padding:24px 16px 20px}.home-hero-plus{font-size:32px}.home-hero-h1{font-size:clamp(30px,10.5vw,60px)}.home-cta-row{flex-direction:column;width:100%;gap:10px}.home-cta-row>button{width:100%}.home-machine-preview{padding:0 12px}.home-status-bar{flex-wrap:wrap;justify-content:center;gap:12px 8px;padding:12px}.home-stat{width:46%}.home-stat-sep{display:none}.home-footer{padding:20px 16px}}.challenge-layout{display:flex;gap:32px;height:calc(100vh - 66px);padding:0 32px;overflow:hidden}.challenge-left{flex:1;padding:32px 8px 40px 0;overflow-y:auto;display:flex;flex-direction:column;gap:24px}.challenge-right{width:380px;min-width:380px;align-self:flex-start;max-height:calc(100% - 64px);margin:32px 0;background:var(--lav);border:2px solid var(--ink);border-radius:16px;box-shadow:var(--sticker-shadow);padding:22px 20px;display:flex;flex-direction:column;gap:20px;overflow-y:auto}.challenge-welcome{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;flex:1;max-width:460px;margin:0 auto}.challenge-welcome-icon{width:100px;height:100px;border-radius:50%;background:var(--lav);border:2px solid var(--ink);box-shadow:var(--sticker-shadow);display:flex;align-items:center;justify-content:center;font-size:48px}.challenge-welcome-title{display:flex;flex-direction:column;align-items:center;gap:8px;width:100%}.challenge-welcome-badge{display:inline-flex;padding:4px 12px;border-radius:999px;border:2px solid var(--ink);background:var(--sun);font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:1px;color:var(--ink)}.challenge-welcome-h1{font-family:var(--font-heading);font-size:56px;font-weight:900;line-height:.95;text-align:center;color:#fff}.challenge-welcome-sub{font-family:var(--font-body);font-size:14px;line-height:1.6;color:var(--foreground-secondary);text-align:center}.challenge-welcome-arrow{display:flex;align-items:center;gap:10px}.challenge-welcome-arrow-line{width:60px;height:2px;background:var(--accent-primary);border-radius:1px}.challenge-welcome-arrow-text{font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:2px;color:var(--accent-primary)}.challenge-welcome-stats{display:flex;align-items:center;gap:24px}.challenge-welcome-stat{display:flex;flex-direction:column;align-items:center;gap:2px}.challenge-welcome-stat-val{font-family:var(--font-heading);font-size:30px;font-weight:800;color:var(--foreground-primary)}.challenge-welcome-stat-val.muted{color:var(--foreground-muted)}.challenge-welcome-stat-sep{width:1px;height:36px;background:var(--border-default)}.challenge-welcome-hint-text{font-family:var(--font-body);font-size:12px;line-height:1.5;color:var(--foreground-secondary);text-align:center}.challenge-header{display:flex;justify-content:space-between;width:100%}.challenge-header-left{display:flex;flex-direction:column;gap:8px}.challenge-day-badge{display:flex;align-items:center;gap:8px}.challenge-day-tag{padding:3px 10px;border-radius:999px;border:2px solid var(--ink);background:var(--sun);font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:1px;color:var(--ink)}.challenge-title{font-family:var(--font-heading);font-size:48px;font-weight:900;line-height:1.05;color:#fff}.challenge-description{font-family:var(--font-body);font-size:15px;line-height:1.6;color:var(--on-bg);max-width:560px}.challenge-content{flex:1;display:flex;flex-direction:column;gap:12px}.challenge-content-label{font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:2px;color:var(--foreground-secondary)}.challenge-content-box{flex:1;background:var(--edge);border:2px solid var(--ink);border-radius:12px;padding:24px;display:flex;flex-direction:column;gap:16px;min-height:200px}.challenge-content-text{font-family:var(--font-body);font-size:15px;line-height:1.7;color:var(--foreground-primary);white-space:pre-wrap}.calendar-grid{display:flex;flex-direction:column;gap:8px}.calendar-row{display:flex;gap:8px}.calendar-day{flex:1;height:46px;display:flex;align-items:center;justify-content:center;border-radius:10px;border:2px solid var(--ink);background:var(--edge);box-shadow:2px 2px 0 var(--ink);cursor:pointer;transition:transform .1s,box-shadow .1s;text-decoration:none}.calendar-day-text{font-family:var(--font-heading);font-size:16px;font-weight:800;color:var(--ink)}.calendar-day:hover:not(.locked){transform:translate(-1px,-1px);box-shadow:3px 3px 0 var(--ink)}.calendar-day.completed{background:var(--solved)}.calendar-day.completed .calendar-day-text{color:var(--ink)}.calendar-day.active{background:var(--sun);border-width:3px}.calendar-day.active .calendar-day-text{color:var(--ink)}.calendar-day.locked{background:var(--lav-ice);border-color:var(--line);box-shadow:none;cursor:not-allowed}.calendar-day.locked .calendar-day-text{color:var(--line)}.calendar-day.mystery{background:var(--signal)}.calendar-day.mystery .calendar-day-text{font-size:18px;color:#fff}.calendar-day.mystery.locked{background:var(--signal-soft);border-color:var(--ink)}.challenge-welcome-icon.mystery span{font-family:var(--font-heading);font-size:44px;font-weight:900;color:var(--signal)}.calendar-sep{width:calc(100% + 40px);margin:0 -20px;height:2px;background:var(--line)}.answer-section{display:flex;flex-direction:column;gap:16px}.answer-points-row{display:flex;justify-content:space-between;align-items:center;width:100%}.answer-input{width:100%;min-height:110px;padding:14px 16px;border-radius:12px;border:2px solid var(--ink);background:var(--edge);color:var(--ink);font-family:var(--font-body);font-size:14px;line-height:1.6;resize:none}.answer-input:focus{outline:none;box-shadow:0 0 0 3px var(--signal-soft)}.answer-input::placeholder{color:var(--foreground-muted)}.answer-submit-btn{width:100%;height:52px;border-radius:999px;border:2px solid var(--ink);font-family:var(--font-body);font-size:15px;font-weight:700;cursor:pointer;transition:transform .1s,box-shadow .1s}.answer-submit-btn.enabled{background:var(--sun);color:var(--ink);box-shadow:4px 4px 0 var(--ink)}.answer-submit-btn.enabled:hover{transform:translate(-1px,-1px);box-shadow:5px 5px 0 var(--ink)}.answer-submit-btn.disabled{background:var(--lav-ice);border-color:var(--line);color:var(--ink-2);cursor:not-allowed}.answer-message{padding:10px 14px;border-radius:10px;border:2px solid var(--ink);font-family:var(--font-mono);font-size:11px;letter-spacing:.5px;line-height:1.4;color:var(--ink)}.answer-message.success{background:var(--solved)}.answer-message.error{background:var(--signal-soft)}.point-change-anim{font-family:var(--font-heading);font-size:26px;font-weight:800;text-align:center;animation:floatUp 1.5s ease-out forwards}.point-change-anim.positive{color:var(--success)}.point-change-anim.negative{color:var(--danger)}@keyframes floatUp{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-30px)}}.challenge-stage{display:flex;flex-direction:column;gap:20px;padding:24px;background:var(--lav);border:2px solid var(--ink);border-radius:18px;box-shadow:6px 6px 0 var(--ink)}.challenge-premiere{display:flex;flex-direction:column;align-items:center;gap:20px;flex:1;width:100%;max-width:880px;margin:0 auto;text-align:center}.challenge-premiere-video{display:block;width:100%;aspect-ratio:16 / 9;border:2px solid var(--ink);border-radius:14px;background:#05070f;box-shadow:var(--sticker-shadow)}.challenge-header.completed .challenge-day-tag{background:var(--solved)}.challenge-stage.completed{border-color:var(--success);box-shadow:6px 6px 0 var(--success),0 0 0 3px var(--solved) inset}.answer-chip{padding:5px 12px;border:2px solid var(--ink);border-radius:999px;font-family:var(--font-heading);font-size:16px;font-weight:800;color:var(--ink)}.answer-chip.reward{background:var(--sun)}.answer-chip.penalty{background:var(--signal-soft);font-size:13px}.answer-input-wrap{position:relative}.answer-input-wrap .answer-input{display:block}.answer-input.wrong{border-color:var(--danger);background:var(--signal-soft);animation:answer-shake .4s}@keyframes answer-shake{20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}.answer-section.completed .answer-input{background:var(--solved);border-color:var(--success);cursor:default}.answer-done{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-family:var(--font-heading);font-size:56px;font-weight:900;color:var(--ink);pointer-events:none}.answer-section.completed .answer-submit-btn.disabled{background:var(--solved);border-color:var(--success);color:var(--ink);font-size:22px}.answer-submit-btn.ready{animation:answer-ready .9s ease-in-out infinite alternate}@keyframes answer-ready{to{box-shadow:4px 4px 0 var(--ink),0 0 0 6px var(--sun-soft)}}.calendar-panel{display:flex;flex-direction:column;gap:8px}.calendar-bar,.challenge-description-more{display:none}@media (max-width: 900px){.challenge-layout{flex-direction:column;gap:12px;height:auto;min-height:calc(100dvh - 54px);padding:10px 10px 28px;overflow:visible}.challenge-right{display:contents}.calendar-sep{display:none}.calendar-panel{order:0;padding:6px;border:2px solid var(--ink);border-radius:14px;background:var(--lav);box-shadow:3px 3px 0 var(--ink)}.calendar-bar{display:flex;align-items:center;gap:6px}.calendar-bar button{height:38px;border:2px solid var(--ink);border-radius:10px;background:var(--edge);font-family:var(--font-heading);color:var(--ink);cursor:pointer}.calendar-bar-step{width:44px;font-size:22px;line-height:1}.calendar-bar-step:disabled{opacity:.35;cursor:default}.calendar-bar-toggle{display:flex;flex:1;align-items:center;justify-content:center;gap:8px;font-size:16px}.calendar-bar-toggle b{font-size:18px;font-weight:900}.calendar-bar-done{padding:0 8px;border-radius:999px;background:var(--solved);font-size:13px}.calendar-bar-caret{font-size:12px;transition:transform .2s}.calendar-panel.open .calendar-bar-caret{transform:rotate(180deg)}.calendar-panel .calendar-grid{display:none;padding:4px 2px 2px;gap:6px}.calendar-panel.open .calendar-grid{display:flex}.calendar-row{gap:6px}.calendar-day{height:40px}.challenge-left{order:1;flex:none;gap:12px;padding:0;overflow:visible}.challenge-title{font-size:clamp(26px,8vw,40px)}.challenge-welcome-h1{font-size:clamp(30px,10.5vw,56px);text-align:center}.challenge-premiere{padding-top:6px}.challenge-day-badge{display:none}.challenge-header-left{gap:4px}.challenge-description{font-size:14px;line-height:1.5}.challenge-description:not(.open){display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.challenge-stage{gap:14px;padding:10px;border-radius:14px;box-shadow:4px 4px 0 var(--ink)}.challenge-stage.completed{box-shadow:4px 4px 0 var(--success),0 0 0 3px var(--solved) inset}.answer-section{order:2;gap:10px;padding:14px;border:2px solid var(--ink);border-radius:14px;background:var(--lav);box-shadow:3px 3px 0 var(--ink)}.challenge-description-more{display:block;align-self:flex-start;padding:0;border:0;background:none;font-family:var(--font-mono);font-size:12px;font-weight:700;color:var(--sun);cursor:pointer}.answer-input{min-height:56px}.answer-submit-btn{height:46px}.answer-done{font-size:36px}}.enc-housing{--term-bg: #1E1E1E;--term-bar: #303030;--term-text: #D3D7CF;--term-green: #8AE234;--term-blue: #729FCF;--term-dim: #888A85;--term-soft: #BABDB6;--term-cyan: #34E2E2;--term-red: #EF2929;--term-yellow: #FCE94F;--term-violet: #AD7FA8;--font-term: "Ubuntu Mono", "DejaVu Sans Mono", "Liberation Mono", monospace;position:relative;display:flex;flex:1;flex-direction:column;gap:10px;min-height:0;padding:14px 14px 10px;border:2px solid var(--ink);border-radius:28px;background:#7e78de}.enc-bolt{position:absolute;width:12px;height:12px;border:2px solid var(--ink);border-radius:50%;background:var(--edge)}.enc-console{display:flex;flex:1;gap:14px;min-height:0}.enc-bezel{display:flex;flex:1;min-width:0;padding:12px;border:3px solid var(--ink);border-radius:30px;background:#c9c6f7}.enc-screen{display:flex;flex:1;flex-direction:column;min-width:0;overflow:hidden;border:3px solid var(--ink);border-radius:12px;background:var(--term-bg);font-family:var(--font-term);color:var(--term-text)}.enc-titlebar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;padding:6px 10px;background:var(--term-bar);border-bottom:1px solid #000000;font-family:"Ubuntu",var(--font-body);font-size:12px;font-weight:700;color:#eeeeec}.enc-titlebar-tab{justify-self:start;display:grid;place-items:center;width:24px;height:22px;border-radius:5px;background:#454545;font-size:12px;color:#bbb}.enc-titlebar-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.enc-titlebar-buttons{justify-self:end;display:flex;gap:8px}.enc-titlebar-buttons i{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#454545;font-size:9px;font-style:normal;color:#eeeeec}.enc-titlebar-buttons i.close{background:#e95420}.enc-ps1{white-space:pre}.enc-ps1-user{color:var(--term-green)}.enc-ps1-dir{color:var(--term-blue)}.enc-term{display:flex;flex:1;flex-direction:column;gap:1px;min-height:0;padding:8px 10px;overflow:hidden;font-size:14px;line-height:1.35}.enc-cmd{color:var(--term-text)}.enc-out{color:var(--term-text);white-space:pre-wrap}.enc-out.warn{color:var(--term-yellow)}.enc-out.err{color:var(--term-red)}.enc-out.list{color:var(--term-blue);font-weight:700}.enc-out.exec{color:var(--term-green);font-weight:700}.enc-out.dim{color:var(--term-dim)}.enc-status{display:grid;grid-template-columns:max-content max-content 1fr;gap:0 14px;white-space:pre}.enc-status .bar{color:var(--term-dim)}.enc-status .yellow{color:var(--term-yellow)}.enc-status .green{color:var(--term-green)}.enc-status .cyan{color:var(--term-cyan)}.enc-status .red{color:var(--term-red)}.enc-status .violet{color:var(--term-violet)}.enc-status .white{color:#fff}.enc-cursor{display:inline-block;width:8px;height:15px;vertical-align:-3px;background:var(--term-text);animation:enc-blink 1s steps(2) infinite}.enc-rail{display:flex;flex-direction:column;align-items:center;gap:12px;width:64px;padding:16px 0;border:3px solid var(--ink);border-radius:32px;background:var(--lav)}.enc-knob{display:flex;flex-direction:column;align-items:center;gap:4px}.enc-knob>i{width:26px;height:26px;border:2px solid var(--ink);border-radius:50%;box-shadow:inset -3px -3px #23106b40}.enc-dial{position:relative;display:block;background:var(--edge)}.enc-dial b{position:absolute;top:2px;left:50%;width:2px;height:9px;margin-left:-1px;background:var(--ink);transform-origin:50% 9px}.enc-micro{font-family:var(--font-mono);font-size:7px;font-weight:700;letter-spacing:.5px;color:var(--ink-2)}.enc-toggle{position:relative;width:16px;height:30px;border:2px solid var(--ink);border-radius:8px;background:var(--ink-2)}.enc-toggle i{position:absolute;top:2px;left:1px;width:10px;height:10px;border-radius:50%;background:var(--sun)}.enc-speaker{display:grid;grid-template-columns:repeat(3,6px);gap:5px;margin-top:auto}.enc-speaker i{width:6px;height:6px;border-radius:50%;background:var(--ink-2)}.enc-brand{display:flex;align-items:baseline;justify-content:center;gap:12px;font-family:var(--font-mono);font-size:9px;letter-spacing:1px;color:var(--ink-2)}.enc-brand b{font-family:var(--font-heading);font-size:12px;font-weight:800;letter-spacing:1.5px;color:var(--ink)}@keyframes enc-blink{50%{opacity:0}}.challenge-game-section{display:flex;flex-direction:column;gap:12px}.challenge-game-label-row{display:flex;justify-content:space-between;align-items:center}.challenge-game-status{display:flex;align-items:center;gap:12px}.game-status-tag{font-family:var(--font-mono);font-size:10px;font-weight:700;letter-spacing:1px}.game-status-tag.warning{color:var(--warning)}.game-status-tag.cyan{color:var(--neon-cyan)}.game-status-tag.muted{color:var(--foreground-muted)}.game-hearts{display:flex;gap:3px;font-size:14px}.game-heart{color:var(--signal);-webkit-text-stroke:1px var(--ink);transition:opacity .2s}.game-heart.lost{opacity:.2}.game-orbs{display:flex;gap:5px}.game-orb{width:14px;height:14px;border-radius:50%;border:2px solid var(--ink);transition:background .3s}.game-orb.filled{background:var(--signal)}.game-result{display:flex;flex-direction:column;align-items:center;gap:8px;padding:20px;border-radius:14px;border:2px solid var(--ink);background:var(--edge);box-shadow:var(--sticker-shadow)}.game-result.success{background:var(--solved)}.game-result.success .game-result-code:before{content:"✓ "}.game-result.failure{background:var(--signal-soft)}.game-result-label{font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:1px;text-align:center;color:var(--ink)}.game-result-code{font-family:var(--font-heading);font-size:36px;font-weight:900;letter-spacing:3px;color:#fff;text-shadow:3px 3px 0 var(--ink)}.game-result-hint{font-size:12px;text-align:center;color:var(--ink-2)}.game-btn{padding:0 20px;min-height:44px;border-radius:999px;border:2px solid var(--ink);background:var(--edge);font-family:var(--font-body);font-size:13px;font-weight:700;color:var(--ink);cursor:pointer;box-shadow:3px 3px 0 var(--ink);transition:transform .1s,box-shadow .1s}.game-btn.primary{background:var(--sun)}.game-btn:disabled{background:var(--edge);border-color:var(--line);color:var(--foreground-muted);box-shadow:none;cursor:not-allowed}.game-input-row{display:flex;gap:8px}.game-input{flex:1;min-width:0;height:46px;padding:0 16px;border-radius:12px;border:2px solid var(--ink);background:var(--edge);font-family:var(--font-body);font-size:14px;color:var(--ink);outline:none}.game-input:focus{box-shadow:0 0 0 3px var(--signal-soft)}.game-input::placeholder{color:var(--foreground-muted)}.game-link-btn{align-self:flex-start;background:none;border:none;font-family:var(--font-mono);font-size:10px;font-weight:700;letter-spacing:1px;color:var(--ink-2);text-decoration:underline;cursor:pointer}.game-credits{font-size:10px;line-height:1.5;color:var(--foreground-muted)}.game-credits a{color:var(--foreground-secondary)}.game-dots{display:flex;gap:6px}.game-dot{width:12px;height:12px;border-radius:50%;border:2px solid var(--ink);background:var(--edge)}.game-dot.current{background:var(--sun)}.game-dot.right{background:var(--solved)}.game-dot.wrong{background:var(--signal)}.game-round-result{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:10px 14px;border-radius:12px;border:2px solid var(--ink);background:var(--edge);font-size:13px;color:var(--ink-2)}.game-round-result b{color:var(--foreground-primary)}.game-question{font-family:var(--font-heading);font-size:24px;font-weight:800;color:var(--ink)}.game-reset-btn{padding:8px 18px;border-radius:999px;border:2px solid var(--ink);background:var(--sun);font-family:var(--font-body);font-size:13px;font-weight:700;color:var(--ink);box-shadow:3px 3px 0 var(--ink);cursor:pointer}.geo-viewer{position:relative;height:380px;border-radius:14px;border:2px solid var(--ink);background:var(--ink);overflow:hidden}.geo-viewer .geo-viewer-canvas{position:absolute;top:0;right:0;bottom:0;left:0}.geo-viewer-message{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:24px;text-align:center;font-family:var(--font-mono);font-size:11px;line-height:1.6;letter-spacing:.5px;color:var(--foreground-muted)}.geo-viewer-message code{color:var(--neon-cyan)}.geo-map{height:300px;border-radius:14px;border:2px solid var(--ink);background:#fff;overflow:hidden;isolation:isolate;cursor:crosshair}.geo-guess-btn{align-self:flex-end}.geo-map .leaflet-bar{border:2px solid var(--ink);border-radius:999px;overflow:hidden;box-shadow:none}.geo-map .leaflet-bar a{width:32px;height:30px;line-height:30px;border:none;background:var(--ink);color:#fff;font-weight:700}.geo-map .leaflet-bar a:hover{background:var(--ink-2);color:var(--sun)}@media (max-width: 640px){.geo-viewer{height:280px}.geo-map{height:240px}}.chat-container{flex:1;display:flex;flex-direction:column;border-radius:14px;border:2px solid var(--ink);background:var(--edge);overflow:hidden}.chat-header{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--ink)}.chat-header-name{font-family:var(--font-mono);font-size:12px;font-weight:700;letter-spacing:1px;color:var(--ice)}.chat-header-status{font-family:var(--font-body);font-size:11px;color:var(--solved)}.chat-messages{flex:1;overflow-y:auto;padding:18px 16px;display:flex;flex-direction:column;gap:14px;background:var(--edge)}.chat-msg{position:relative;display:flex;flex-direction:column;gap:4px;max-width:78%;padding:10px 16px 12px;border:2px solid var(--ink);border-radius:14px}.chat-msg.bot{align-self:flex-start;margin-left:40px;background:#fff}.chat-msg-meta{display:flex;align-items:center;gap:6px}.chat-msg-role{font-family:var(--font-mono);font-size:9px;font-weight:700;letter-spacing:1px;text-transform:uppercase}.chat-msg-role.bot{color:var(--success)}.chat-msg-role.user{color:var(--ink-2)}.chat-msg.user{align-self:flex-end;background:var(--sun)}.chat-msg.bot:before,.chat-header:before{content:"🤖";display:flex;align-items:center;justify-content:center;flex-shrink:0;border:2px solid var(--ink);border-radius:50%;background:var(--ice)}.chat-msg.bot:before{position:absolute;left:-40px;bottom:0;width:30px;height:30px;font-size:14px}.chat-header:before{width:38px;height:38px;font-size:18px;border-color:var(--edge)}.chat-msg-text{font-family:var(--font-body);font-size:14px;line-height:1.55;color:var(--ink)}.chat-input-bar{display:flex;align-items:center;gap:10px;padding:12px 14px;border-top:2px solid var(--ink);background:var(--edge)}.chat-input{flex:1;height:42px;padding:0 16px;border:2px solid var(--ink);border-radius:999px;background:#fff;outline:none;font-family:var(--font-body);font-size:14px;color:var(--ink)}.chat-input::placeholder{color:var(--foreground-muted)}.chat-send-btn{width:44px;height:44px;flex-shrink:0;border-radius:50%;background:var(--sun);border:2px solid var(--ink);box-shadow:2px 2px 0 var(--ink);color:var(--ink);font-size:15px;cursor:pointer;display:flex;align-items:center;justify-content:center}.chat-typing{font-style:italic;color:var(--foreground-muted)}.chat-error{padding:8px 14px;border-top:1px solid var(--border-default);font-size:12px;color:var(--danger)}.chat-input:disabled{opacity:.6}.chat-send-btn:disabled{background:var(--edge);border-color:var(--line);color:var(--foreground-muted);box-shadow:none;cursor:not-allowed}.chat-hint-bar{display:flex;align-items:center;gap:8px;padding:10px 16px;background:var(--signal);border-top:2px solid var(--ink);font-family:var(--font-body);font-size:12px;font-weight:600;color:#fff}.chimney-layout{display:grid;grid-template-columns:minmax(0,1fr) 96px;gap:16px;align-items:start}.chimney-main{display:flex;flex-direction:column;gap:16px;min-width:0}.chimney-prompt{padding:22px 24px;border:2px solid var(--ink);border-radius:12px;background:#fff;font-family:var(--font-heading);font-size:30px;font-weight:800;line-height:1.15;color:var(--ink)}.chimney-error{font-size:12px;color:var(--danger)}.tier-0,.tier-5{--tier-color: var(--ink-2);--tier-fill: var(--edge)}.tier-20{--tier-color: var(--ink);--tier-fill: var(--ice)}.tier-45{--tier-color: var(--ink);--tier-fill: var(--solved)}.tier-75{--tier-color: var(--ink);--tier-fill: var(--signal-soft)}.tier-100{--tier-color: var(--ink);--tier-fill: var(--sun)}.chimney-result{display:flex;flex-direction:column;gap:6px;padding:16px 18px;border-radius:12px;border:2px solid var(--ink);background:#fff}.chimney-result .game-btn{align-self:flex-start;margin-top:8px}.chimney-result-top{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.chimney-result-answer{font-family:var(--font-heading);font-size:22px;font-weight:800;color:var(--ink)}.chimney-result-points{font-family:var(--font-mono);font-size:16px;font-weight:700;color:var(--ink)}.chimney-result-tier{align-self:flex-start;padding:2px 10px;border:2px solid var(--ink);border-radius:999px;background:var(--tier-fill);font-family:var(--font-mono);font-size:10px;font-weight:700;letter-spacing:1px;color:var(--ink)}.chimney-result-blurb{font-size:12px;color:var(--foreground-secondary)}.chimney-summary{display:flex;flex-direction:column;border:2px solid var(--ink);border-radius:12px;background:#fff;overflow:hidden}.chimney-summary-row{border-bottom:2px solid var(--line);overflow:hidden}.chimney-summary-head{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;width:100%;padding:10px 12px;background:none;border:none;text-align:left;cursor:pointer}.chimney-summary-prompt{font-size:12px;color:var(--foreground-secondary)}.chimney-summary-answer{font-family:var(--font-heading);font-size:15px;font-weight:800;color:var(--ink)}.chimney-summary-points{padding:2px 10px;border:2px solid var(--ink);border-radius:999px;background:var(--tier-fill);font-family:var(--font-mono);font-size:11px;font-weight:700;color:var(--ink)}.chimney-sheet{display:flex;flex-wrap:wrap;gap:6px;padding:0 12px 12px}.chimney-sheet-item{padding:3px 8px;border-radius:999px;border:1px solid color-mix(in srgb,var(--tier-color) 50%,transparent);font-size:11px;color:var(--foreground-secondary)}.chimney-sheet-item em{font-style:normal;color:var(--tier-color)}.chimney-sheet-item.yours{background:color-mix(in srgb,var(--tier-color) 20%,transparent);color:var(--foreground-primary)}.chimney-gauge{display:flex;flex-direction:column;align-items:center;gap:6px}.chimney-gauge-label{font-family:var(--font-mono);font-size:10px;font-weight:700;letter-spacing:1px;color:var(--ink-2)}.chimney-gauge-value{font-family:var(--font-heading);font-size:28px;font-weight:800;color:var(--ink)}.chimney-shaft{--fill: 0%;position:relative;width:64px;height:340px;border:2px solid var(--ink);border-radius:14px;background:repeating-linear-gradient(0deg,transparent 0 19px,rgba(179,176,247,.35) 19px 20px),linear-gradient(180deg,var(--ice) var(--fill),var(--ink) var(--fill));transition:background .8s}.chimney-pass-line{position:absolute;left:-10px;right:-10px;border-top:2px dashed var(--signal)}.chimney-pass-line span{position:absolute;right:-32px;top:-8px;font-family:var(--font-mono);font-size:9px;font-weight:700;color:var(--accent-primary)}.chimney-santa{position:absolute;left:50%;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:2px solid var(--ink);border-radius:50%;background:var(--sun);font-size:18px;transform:translate(-50%,-50%);transition:top .8s cubic-bezier(.34,1.4,.64,1)}@media (max-width: 640px){.chimney-layout{grid-template-columns:1fr}.chimney-gauge{flex-direction:row}.chimney-shaft{display:none}}.cube-stage{cursor:grab;touch-action:none}.cube-stage:active{cursor:grabbing}.cube-moves{--c-W: #F5F5F4;--c-G: #16A34A;--c-R: #DC2626;--c-B: #2563EB;--c-O: #F97316;--c-Y: #FACC15}.c-W{--sticker: var(--c-W)}.c-G{--sticker: var(--c-G)}.c-R{--sticker: var(--c-R)}.c-B{--sticker: var(--c-B)}.c-O{--sticker: var(--c-O)}.c-Y{--sticker: var(--c-Y)}.cube-moves{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.cube-move-group{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:6px;padding:6px 6px 6px 10px;border-radius:8px;border:1px solid var(--border-default);background:var(--surface-secondary)}.cube-move-face{display:flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:9px;letter-spacing:1px;color:var(--foreground-secondary)}.cube-move-swatch{width:10px;height:10px;border-radius:2px;background:var(--sticker)}.cube-move-btn{min-height:32px;padding:0 10px;font-size:14px}.cube-move-notation{font-family:var(--font-mono);font-size:10px;opacity:.7}.cube-history{display:flex;flex-wrap:wrap;gap:4px}.cube-history-move{padding:2px 8px;border-radius:4px;background:var(--surface-tertiary);font-family:var(--font-mono);font-size:11px;color:var(--foreground-secondary)}.doodle-word{display:flex;align-items:flex-end;justify-content:center;gap:6px;flex-wrap:wrap}.doodle-letter{display:flex;align-items:flex-end;justify-content:center;width:22px;height:30px;border-bottom:3px solid var(--foreground-secondary);font-family:var(--font-heading);font-size:22px;color:var(--foreground-primary)}.doodle-letter.shown{color:var(--neon-amber)}.doodle-space{width:14px}.doodle-count{margin-left:8px;font-family:var(--font-mono);font-size:10px;color:var(--foreground-muted)}.doodle-layout{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:12px}.doodle-canvas{position:relative;aspect-ratio:4 / 3;border-radius:10px;background:#fff;overflow:hidden;box-shadow:inset 0 0 0 1px #00000014}.doodle-canvas svg{display:block;width:100%;height:100%}.doodle-signature{position:absolute;right:12px;bottom:8px;font-family:Comic Sans MS,Comic Neue,cursive;font-size:12px;color:#6b7280;transform:rotate(-4deg)}.doodle-chat{display:flex;flex-direction:column;gap:8px;min-height:0;padding:10px;border-radius:10px;border:1px solid var(--border-default);background:var(--surface-secondary)}.doodle-chat-log{display:flex;flex-direction:column;justify-content:flex-end;gap:4px;flex:1;min-height:120px;overflow-y:auto}.doodle-chat-line{font-size:12px;line-height:1.4;color:var(--foreground-secondary);overflow-wrap:anywhere}.doodle-chat-line b{color:var(--foreground-primary);font-weight:600}.doodle-chat-line.system{color:var(--foreground-muted);font-style:italic}.doodle-chat-line.close{color:var(--neon-amber);font-weight:600}.doodle-chat-line.correct{color:var(--neon-cyan);font-weight:600}@media (max-width: 640px){.doodle-layout{grid-template-columns:1fr}}.realai-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.realai-card{position:relative;display:flex;flex-direction:column;border-radius:10px;border:2px solid var(--border-default);background:var(--surface-secondary);overflow:hidden;transition:border-color .2s,opacity .2s}.realai-card:hover:not(.real):not(.fake){border-color:var(--accent-primary)}.realai-card.real{border-color:var(--neon-cyan)}.realai-card.fake{border-color:var(--danger);opacity:.85}.realai-card.picked{box-shadow:0 0 16px var(--accent-glow)}.realai-image-btn{display:block;padding:0;border:none;background:none;cursor:pointer}.realai-image-btn:disabled{cursor:default}.realai-image-btn img{display:block;width:100%;aspect-ratio:4 / 3;object-fit:cover}.realai-zoom{position:absolute;top:8px;right:8px;width:30px;height:30px;border-radius:50%;border:none;background:#0000008c;font-size:14px;cursor:zoom-in}.realai-caption{display:flex;flex-direction:column;gap:2px;padding:8px 10px}.realai-tag{align-self:flex-start;padding:1px 6px;border-radius:4px;font-family:var(--font-mono);font-size:9px;font-weight:700;letter-spacing:1px}.realai-tag.real{background:var(--neon-cyan);color:var(--foreground-inverse)}.realai-tag.fake{background:var(--danger);color:var(--foreground-primary)}.realai-title{font-size:13px;font-weight:600;color:var(--foreground-primary)}.realai-meta{font-size:11px;color:var(--foreground-secondary)}.realai-next{align-self:flex-end}.realai-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:24px;background:#000000e0;cursor:zoom-out}.realai-lightbox img{max-width:100%;max-height:calc(100vh - 80px);border-radius:6px}.realai-lightbox-hint{font-family:var(--font-mono);font-size:10px;color:var(--foreground-muted)}@media (max-width: 640px){.realai-pair{grid-template-columns:1fr}}.wiki-trail{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px}.wiki-trail-step{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--foreground-secondary)}.wiki-trail-step.current{color:var(--foreground-primary);font-weight:600}.wiki-trail-step.target{color:var(--neon-cyan)}.wiki-trail-arrow{color:var(--foreground-muted)}.qwop-stage{position:relative;border-radius:12px;border:1px solid var(--border-default);overflow:hidden}.qwop-canvas{position:relative;display:block;width:100%;height:auto;touch-action:none}.qwop-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:#05070f}.qwop-backdrop canvas{display:block}.qwop-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:#05070fb8;text-align:center}.qwop-overlay-title{font-family:var(--font-heading);font-size:28px;letter-spacing:1px;color:var(--foreground-primary)}.qwop-overlay.fell .qwop-overlay-title,.qwop-overlay.shattered .qwop-overlay-title{color:var(--danger)}.qwop-overlay.delivered .qwop-overlay-title{color:var(--neon-cyan)}.qwop-overlay-sub{font-family:var(--font-mono);font-size:10px;letter-spacing:1px;color:var(--foreground-secondary)}.qwop-keys{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.qwop-key{display:flex;flex-direction:column;align-items:center;gap:2px;padding:12px 0;border-radius:10px;border:1px solid var(--border-default);background:var(--surface-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:none;transition:background .08s,border-color .08s,transform .08s}.qwop-key.down{background:color-mix(in srgb,var(--accent-primary) 30%,transparent);border-color:var(--accent-primary);transform:translateY(1px)}.qwop-key-letter{font-family:var(--font-heading);font-size:26px;color:var(--foreground-primary)}.qwop-key-help{font-family:var(--font-mono);font-size:9px;letter-spacing:.5px;color:var(--foreground-muted)}.pw-boot{display:flex;flex-direction:column;gap:2px;font-family:var(--font-mono);font-size:11px;color:var(--neon-cyan)}.pw-field{position:relative}.pw-input{width:100%;min-height:64px;padding:14px 52px 14px 14px;border-radius:10px;border:1px solid var(--border-default);background:var(--surface-secondary);font-family:var(--font-mono);font-size:18px;line-height:1.4;color:var(--foreground-primary);resize:vertical;outline:none;overflow-wrap:anywhere}.pw-input:focus{border-color:var(--accent-primary)}.pw-length{position:absolute;top:12px;right:14px;font-family:var(--font-mono);font-size:12px;color:var(--foreground-muted)}.pw-rules{display:flex;flex-direction:column;gap:8px}.pw-rule{display:flex;flex-direction:column;border-radius:8px;border:1px solid;overflow:hidden;animation:timeline-pop .3s}.pw-rule.ok{border-color:color-mix(in srgb,var(--neon-cyan) 50%,transparent)}.pw-rule.fail{border-color:var(--danger)}.pw-rule-head{padding:4px 12px;font-family:var(--font-mono);font-size:10px;font-weight:600;letter-spacing:1px}.pw-rule.ok .pw-rule-head{background:color-mix(in srgb,var(--neon-cyan) 18%,transparent);color:var(--neon-cyan)}.pw-rule.fail .pw-rule-head{background:color-mix(in srgb,var(--danger) 20%,transparent);color:var(--danger)}.pw-rule-text{padding:8px 12px;font-size:13px;color:var(--foreground-primary);background:var(--surface-secondary)}.escape-stage{position:relative;height:460px;border-radius:14px;border:2px solid var(--ink);overflow:hidden;background:#05070f}.escape-turn{position:absolute;top:50%;width:46px;height:46px;transform:translateY(-50%);border:2px solid var(--ink);border-radius:50%;background:var(--sun);box-shadow:2px 2px 0 var(--ink);font-size:28px;line-height:1;color:var(--ink);cursor:pointer}.escape-turn:hover{background:#fff3a0}.escape-turn.left{left:10px}.escape-turn.right{right:10px}.escape-popup{position:absolute;z-index:3;max-width:min(300px,calc(100% - 20px));padding:10px 14px;border:2px solid var(--ink);border-radius:14px;background:#fff;box-shadow:3px 3px 0 var(--ink);font-size:14px;font-weight:600;line-height:1.45;color:var(--ink);cursor:pointer;animation:escape-pop .18s ease-out}.escape-popup.centred{max-width:min(380px,calc(100% - 40px));background:var(--sun)}.escape-popup:not(.centred):after{content:"";position:absolute;top:100%;left:var(--tail, 50%);width:12px;height:12px;border-right:2px solid var(--ink);border-bottom:2px solid var(--ink);background:#fff;transform:translate(-50%,-6px) rotate(45deg)}.escape-popup.below:after{top:auto;bottom:100%;transform:translate(-50%,6px) rotate(225deg)}@keyframes escape-pop{0%{transform:scale(.85);opacity:0}}.escape-mute{position:absolute;right:10px;bottom:10px;z-index:2;width:34px;height:34px;border:2px solid var(--ink);border-radius:50%;background:#ffffffd9;font-size:15px;cursor:pointer}.escape-inventory{display:flex;flex-direction:column;gap:6px}.escape-items{display:flex;flex-wrap:wrap;gap:8px}.escape-empty{font-size:12px;font-style:italic;color:var(--foreground-muted)}.escape-back{position:absolute;bottom:14px;left:50%;padding:8px 18px;border:2px solid var(--ink);border-radius:999px;background:var(--sun);box-shadow:3px 3px 0 var(--ink);font-family:var(--font-mono);font-size:12px;font-weight:700;color:var(--ink);cursor:pointer;transform:translate(-50%)}.escape-item{padding:8px 14px;border-radius:10px;border:2px solid var(--ink);background:var(--edge);font-size:12px;font-weight:600;color:var(--ink);cursor:pointer}.escape-item.held{background:var(--sun)}.escape-holding{font-size:11px;color:var(--neon-amber)}.escape-panel-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#0009}.escape-panel{display:flex;flex-direction:column;align-items:center;gap:12px;min-width:240px;padding:20px;border-radius:12px;border:1px solid var(--border-default);background:var(--surface-secondary)}.escape-note,.escape-poster{display:flex;flex-direction:column;gap:6px;padding:16px 20px;border-radius:4px;background:#fef3c7;color:#292524;font-family:Comic Sans MS,Comic Neue,cursive;transform:rotate(-1.5deg)}.escape-note-title{font-family:var(--font-mono);font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase}.escape-code .escape-note-title{color:var(--foreground-secondary)}.escape-note-ps{font-size:12px;opacity:.7}.escape-todo{position:relative;display:flex;flex-direction:column;gap:2px;min-width:260px;padding:18px 20px 10px 46px;border-radius:2px;background:linear-gradient(90deg,transparent 34px,rgba(220,60,60,.45) 34px,rgba(220,60,60,.45) 36px,transparent 36px),repeating-linear-gradient(180deg,transparent 0 20px,rgba(70,110,200,.3) 20px 21px),#fff8dc;box-shadow:0 6px 14px #00000040;color:#1e2a5e;font-family:Caveat,Comic Sans MS,cursive;transform:rotate(-1.5deg)}.escape-todo-tape{position:absolute;top:-10px;left:50%;width:90px;height:22px;background:#f3e9c6d9;transform:translate(-50%) rotate(-3deg)}.escape-todo-title{font-size:22px;font-weight:700;text-decoration:underline;text-decoration-thickness:2px}.escape-todo ul{display:flex;flex-direction:column;list-style:none}.escape-todo li{font-size:18px;line-height:21px}.escape-todo li:before{content:"☐ "}.escape-todo-sign{align-self:flex-end;font-size:16px;color:var(--signal);transform:rotate(-3deg)}.escape-poster-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:6px 18px;font-family:var(--font-heading);font-size:22px}.escape-poster-grid span{display:inline-flex;align-items:center;gap:8px}.escape-poster-grid i{width:18px;height:18px;border-radius:50%}.escape-code{display:flex;flex-direction:column;align-items:center;gap:12px}.escape-wheels{display:flex;gap:10px}.escape-wheel{display:flex;flex-direction:column;align-items:center;gap:4px}.escape-wheel span{width:44px;padding:8px 0;border-radius:6px;background:var(--surface-tertiary);font-family:var(--font-heading);font-size:28px;text-align:center;color:var(--foreground-primary)}.escape-wheel button,.escape-keypad button{border:1px solid var(--border-default);border-radius:6px;background:var(--surface-tertiary);color:var(--foreground-primary);cursor:pointer}.escape-wheel button{width:44px;height:26px}.escape-display{width:160px;padding:8px;border-radius:6px;background:#052e16;font-family:var(--font-mono);font-size:26px;letter-spacing:8px;text-align:center;color:#4ade80}.escape-keypad{display:grid;grid-template-columns:repeat(3,48px);gap:6px}.escape-keypad button{height:44px;font-family:var(--font-mono);font-size:18px}.escape-keypad button.ok{background:var(--accent-primary)}@media (max-width: 640px){.escape-stage{height:340px}}.te-desk{display:flex;flex-direction:column}.te-window{--gtk-window: #FAFAFA;--gtk-header: #EBEBEB;--gtk-border: rgba(0, 0, 0, .14);--gtk-text: #2E3436;--gtk-dim: #77767B;--gtk-accent: #3584E4;--gtk-green: #26A269;--gtk-red: #C01C28;display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid rgba(0,0,0,.22);border-radius:12px;background:var(--gtk-window);box-shadow:0 3px 9px #00000040,0 0 0 1px #0000000d;position:relative;font-family:"Ubuntu","Cantarell",var(--font-body);color:var(--gtk-text)}.te-headerbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;min-height:46px;padding:6px 8px;background:var(--gtk-header);border-bottom:1px solid var(--gtk-border)}.te-hb-start{justify-self:start;display:flex;gap:6px}.te-hb-end{justify-self:end;display:flex;align-items:center;gap:10px}.te-hb-title{display:flex;flex-direction:column;align-items:center;min-width:0;line-height:1.25;text-align:center}.te-hb-title b{font-size:13px;font-weight:700}.te-hb-title span{font-size:11px;color:var(--gtk-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.te-hb-btn{padding:5px 10px;border:none;border-radius:6px;background:#0000000f;font:inherit;font-size:13px;font-weight:700;color:var(--gtk-text);cursor:pointer}.te-hb-btn:hover:not(:disabled){background:#0000001c}.te-hb-btn:disabled{opacity:.45;cursor:default}.te-hb-btn.icon{padding:5px 9px;background:transparent}.te-hb-btn.icon:hover,.te-hb-btn.icon.open{background:#0000001a}.te-popover-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4}.te-popover{position:absolute;top:44px;right:74px;z-index:5;display:flex;flex-direction:column;min-width:190px;padding:6px;border:1px solid var(--gtk-border);border-radius:12px;background:#fff;box-shadow:0 4px 14px #0003}.te-popover button{padding:7px 10px;border:none;border-radius:6px;background:none;font:inherit;font-size:13px;text-align:left;color:var(--gtk-text);cursor:pointer}.te-popover button:hover{background:#00000012}.te-dialog-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;display:grid;place-items:center;padding:16px;background:#00000040}.te-dialog{display:flex;flex-direction:column;gap:12px;width:min(460px,100%);max-height:100%;overflow-y:auto;padding:20px 22px 16px;border-radius:14px;background:#fff;box-shadow:0 8px 28px #0000004d}.te-dialog-body{display:flex;flex-direction:column;gap:8px;font-size:13px;line-height:1.5}.te-dialog-body h3{margin:0;font-size:17px;font-weight:700}.te-dialog-body h4{margin:6px 0 0;font-size:13px;font-weight:700}.te-dialog-body p{margin:0}.te-dialog-body ul{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:4px}.te-dialog-body.about{align-items:center;text-align:center}.te-about-icon{font-size:44px}.te-dialog-close{align-self:flex-end;padding:6px 16px;border:none;border-radius:6px;background:#00000014;font:inherit;font-size:13px;font-weight:700;color:var(--gtk-text);cursor:pointer}.te-dialog-close:hover{background:#00000021}.te-scribble{align-self:center;margin-top:4px;font-family:Caveat,cursive;font-size:20px;color:#c01c28;transform:rotate(-3deg)}.te-hb-controls{display:flex;gap:8px}.te-hb-controls i{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#0000001a;font-size:10px;font-style:normal;font-weight:700;color:var(--gtk-text)}.te-hb-controls i.close{background:#e95420;color:#fff}.te-body{flex:1;display:flex;flex-direction:column;gap:10px;padding:12px;background:var(--gtk-window)}.te-body-info{font-size:12px;color:var(--gtk-dim)}.te-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.te-part{display:flex;flex-direction:column;gap:4px;min-height:92px;padding:9px 10px;border:1px solid var(--gtk-border);border-radius:12px;background:#fff;box-shadow:0 1px 2px #00000012;cursor:pointer;transition:background .12s,box-shadow .12s}.te-part.unknown:hover{background:#f4f4f5}.te-part.selected{box-shadow:0 0 0 2px var(--gtk-accent)}.te-part.hinted{box-shadow:0 0 0 3px #f6d32d}.te-part.done{background:#e8f6ee;border-color:#26a26973;cursor:default}.te-part.todo{background:#fcebec;border-color:#c01c2866;cursor:default}.te-part-head{display:flex;align-items:flex-start;gap:6px}.te-part-led{width:8px;height:8px;flex-shrink:0;margin-top:5px;border-radius:50%;background:#c0bfbc}.te-part-led.done{background:var(--gtk-green)}.te-part-led.todo{background:var(--gtk-red)}.te-part-name{flex:1;min-width:0;font-size:13px;font-weight:700;line-height:1.25;overflow-wrap:anywhere}.te-part-cell{font-family:"Ubuntu Mono",var(--font-mono);font-size:11px;color:var(--gtk-dim)}.te-part-does{font-size:11px;font-style:italic;line-height:1.4;color:var(--gtk-dim)}.te-part-ok{font-size:11px;font-weight:700;color:var(--gtk-green)}.te-part-error{font-size:11px;font-weight:700;color:var(--gtk-red)}.te-part-clue{font-size:11px;font-weight:500;line-height:1.4;cursor:pointer}.te-part-clue.dim{opacity:.35}.te-part-actions{display:flex;gap:4px;margin-top:auto}.te-btn{flex:1;padding:4px 0;border:none;border-radius:6px;font:inherit;font-size:11px;font-weight:700;color:#fff;cursor:pointer}.te-btn.ok{background:var(--gtk-green)}.te-btn.bad{background:var(--gtk-red)}.te-btn:hover{filter:brightness(1.08)}.te-status{padding:8px 12px;border-radius:8px;font-size:12px;line-height:1.45}.te-status.ok{background:#ebebeb}.te-status.bad{background:#fcebec;color:var(--gtk-red)}.te-statusbar{display:flex;flex-wrap:wrap;gap:18px;padding:7px 14px;background:var(--gtk-header);border-top:1px solid var(--gtk-border);font-size:12px;color:var(--gtk-dim)}.te-statusbar span{padding:0;border:none}.te-report{display:flex;flex-direction:column;gap:2px;font-family:var(--font-mono);font-size:11px;color:var(--ink);text-align:center}@media (max-width: 640px){.te-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.qwop-shoes{position:absolute;top:10px;left:10px;z-index:2;padding:6px 12px;border:2px solid var(--ink);border-radius:999px;background:var(--sun);box-shadow:2px 2px 0 var(--ink);font-family:var(--font-heading);font-size:14px;font-weight:800;color:var(--ink);cursor:pointer}.qwop-shoes:disabled{opacity:.5;cursor:default;box-shadow:none}.qwop-shoes.on{background:#fff;border-color:#d32f2f;box-shadow:0 0 0 3px #d32f2f4d;cursor:default}.escape-tv-screen{position:absolute;top:0;left:0;overflow:hidden;background:#000;transform-origin:0 0;pointer-events:none;visibility:hidden}.escape-tv-screen iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0;pointer-events:none}.escape-tv-screen:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(255,255,255,.07),transparent 40%);pointer-events:none}.sms-desk{position:relative;display:flex;align-items:center;justify-content:center;height:780px;overflow:hidden;border:2px solid var(--ink);border-radius:14px;background:#5e3a1e;box-shadow:var(--sticker-shadow)}.sms-bench{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.sms-bench canvas{display:block}.sms-phone{position:relative;display:flex;flex-direction:column;width:360px;max-width:calc(100% - 32px);height:700px;overflow:hidden;border:11px solid #111214;border-radius:46px;background:#fff;box-shadow:0 0 0 2px #3a3b3f,6px 14px 28px #0000008c,2px 4px 6px #0006;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",var(--font-body)}.sms-phone:before{content:"";position:absolute;top:8px;left:50%;z-index:2;width:92px;height:24px;border-radius:14px;background:#111214;transform:translate(-50%)}.sms-header{display:flex;align-items:center;gap:10px;padding:40px 16px 10px;border-bottom:1px solid #E5E5EA;background:#f7f7f8}.sms-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover}.sms-who{display:flex;flex-direction:column;line-height:1.2}.sms-who b{font-size:16px;color:#111}.sms-who span{font-size:12px;color:#8e8e93}.sms-thread{display:flex;flex:1;flex-direction:column;gap:6px;padding:14px 12px;overflow-y:auto}.sms-bubble{max-width:78%;padding:8px 12px;border-radius:18px;font-size:15px;line-height:1.35;overflow-wrap:anywhere;animation:sms-pop .2s ease-out}.sms-bubble.katya{align-self:flex-start;border-bottom-left-radius:6px;background:#e9e9eb;color:#111}.sms-bubble.me{align-self:flex-end;border-bottom-right-radius:6px;background:#0b84ff;color:#fff}@keyframes sms-pop{0%{transform:scale(.9);opacity:0}}.sms-clue{font-style:italic}.sms-clue.hinted .sms-def{box-shadow:inset 0 -3px #34c759}.sms-clue.hinted .sms-ind{font-weight:800;color:#c2148f}.sms-clue.hinted .sms-fod{border-bottom:2px dotted #0B84FF}.sms-typing{display:flex;gap:4px;padding:12px 14px}.sms-typing i{width:7px;height:7px;border-radius:50%;background:#8e8e93;animation:sms-dot 1s infinite}.sms-typing i:nth-child(2){animation-delay:.15s}.sms-typing i:nth-child(3){animation-delay:.3s}@keyframes sms-dot{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.sms-composer{display:flex;align-items:center;gap:8px;padding:10px 12px;border-top:1px solid #E5E5EA;background:#f7f7f8}.sms-input{flex:1;min-width:0;padding:8px 14px;border:1px solid #D1D1D6;border-radius:18px;background:#fff;font:inherit;font-size:15px;color:#111;outline:none}.sms-input:focus{border-color:#0b84ff}.sms-preview{min-height:36px;display:flex;align-items:center}.sms-preview.empty{color:#8e8e93;font-size:13px}.sms-send,.sms-icon-btn{display:grid;place-items:center;flex-shrink:0;width:34px;height:34px;border:none;border-radius:50%;font-size:15px;cursor:pointer}.sms-send{background:#0b84ff;color:#fff}.sms-send:disabled{background:#c7c7cc;cursor:default}.sms-icon-btn{background:transparent;font-size:18px}.sms-icon-btn:disabled{opacity:.4;cursor:default}.sms-builder{display:flex;flex-direction:column;gap:6px;padding-top:8px;border-top:1px solid #E5E5EA;background:#f7f7f8}.sms-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:0 12px}.sms-row-icon{width:22px;font-size:16px;text-align:center;cursor:help}.sms-tile{padding:5px 11px;border:1.5px solid #D1D1D6;border-radius:14px;background:#fff;font:inherit;font-size:13px;color:#111;cursor:pointer}.sms-tile.ind{font-weight:700;color:#c2148f}.sms-tile.fod{font-style:italic}.sms-tile.on{border-color:#0b84ff;background:#0b84ff;color:#fff}.sms-tile:disabled{opacity:.6;cursor:default}.sms-builder .sms-composer{border-top:none}@media (max-width: 520px){.sms-desk{height:680px}.sms-phone{height:620px;border-radius:34px}}.sms-bubble.me{position:relative}.sms-bubble.me:has(.sms-reaction){margin-top:12px}.sms-reaction{position:absolute;top:-14px;left:-10px;padding:2px 7px;border:2px solid #FFFFFF;border-radius:12px;background:#e9e9eb;font-size:12px;line-height:1.3;color:#111;white-space:nowrap;animation:sms-pop .2s ease-out}.sms-reaction.ok{background:#d7f5dd}.sms-bubble.me.failed{margin-right:28px}.sms-bubble.me.failed:after{content:"!";position:absolute;top:50%;right:-28px;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#ff3b30;font-size:13px;font-weight:800;color:#fff;transform:translateY(-50%)}.sms-failed-note{align-self:flex-end;margin:-2px 28px 2px 0;font-size:11px;color:#ff3b30}.shop-desk{height:100%;min-height:0}.shop-phone{height:calc(100% - 36px);max-height:700px;background:#f2f2f7;color:#111}.shop-status{display:flex;justify-content:space-between;padding:10px 22px 0;font-size:13px;font-weight:600}.shop-home{flex-shrink:0;align-self:center;width:120px;height:5px;margin:6px 0 8px;border-radius:3px;background:#111}.shop-page{display:flex;flex:1;flex-direction:column;min-height:0;overflow-y:auto;padding:18px 14px 6px}.shop-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.shop-title{margin:0;font-family:inherit;font-size:28px;font-weight:800;letter-spacing:-.5px;color:#111}.shop-balance{display:flex;align-items:center;gap:3px;padding:4px 10px;border-radius:999px;background:#ffe53b;font-size:13px;font-weight:700;color:#111}.shop-filters{display:flex;gap:2px;margin:14px 0 10px;padding:2px;border-radius:9px;background:#e3e3e8}.shop-filters button{flex:1;padding:6px 0;border:0;border-radius:7px;background:transparent;font:inherit;font-size:13px;font-weight:600;color:#111;cursor:pointer}.shop-filters button.on{background:#fff;box-shadow:0 1px 3px #00000026}.shop-list{display:flex;flex-shrink:0;flex-direction:column;margin:0;padding:0;overflow:hidden;border-radius:12px;background:#fff;list-style:none}.shop-list li+li .shop-row{border-top:1px solid #E5E5EA}.shop-row{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;border:0;background:transparent;font:inherit;text-align:left;color:inherit;cursor:pointer}.shop-row:hover{background:#f7f7fa}.shop-row.dim .shop-thumb{opacity:.55}.shop-row.dim .shop-pill{background:#e5e5ea;color:#8e8e93}.shop-row-text{display:flex;flex:1;flex-direction:column;gap:2px;min-width:0}.shop-row-text b{overflow:hidden;font-size:15px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.shop-row-text span{font-size:12px;color:#8e8e93}.shop-pill{display:flex;align-items:center;gap:2px;padding:5px 10px;border-radius:999px;background:#e8f1ff;font-size:13px;font-weight:700;color:#0b84ff;white-space:nowrap}.shop-thumb{display:grid;flex-shrink:0;place-items:center;border-radius:22%}.shop-back{display:flex;align-items:center;align-self:flex-start;margin:-6px 0 0 -8px;padding:4px 6px;border:0;background:transparent;font:inherit;font-size:16px;color:#0b84ff;cursor:pointer}.shop-hero{display:flex;flex-direction:column;align-items:center;gap:6px;margin:18px 0 14px;text-align:center}.shop-hero-name{margin-top:8px;font-size:22px;font-weight:800}.shop-module{font-size:12px;font-weight:600;letter-spacing:1px;color:#8e8e93}.shop-blurb{margin:0;padding:14px;border-radius:12px;background:#fff;font-size:15px;line-height:1.45;color:#3a3a3c}.shop-buybar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding:14px 2px 4px}.shop-price{display:flex;align-items:center;gap:3px;font-size:20px;font-weight:800}.shop-buy{min-width:130px;padding:11px 20px;border:0;border-radius:999px;background:#0b84ff;font:inherit;font-size:16px;font-weight:700;text-align:center;color:#fff;cursor:pointer}.shop-buy.off{background:#e5e5ea;font-size:13px;color:#8e8e93;cursor:default}.shop-buy.done{background:#34c759;animation:sms-pop .2s ease-out}.shop-tabbar{display:flex;flex-shrink:0;border-top:1px solid #D8D8DD;background:#f9f9fbf5}.shop-tabbar button{display:flex;flex:1;flex-direction:column;align-items:center;gap:2px;padding:7px 0 2px;border:0;background:transparent;font:inherit;font-size:11px;font-weight:600;color:#8e8e93;cursor:pointer}.shop-tabbar button.on{color:#0b84ff}.shop-tabbar button:disabled{opacity:.4;cursor:default}.shop-sub{margin:2px 0 12px;font-size:13px;color:#8e8e93}.shop-empty{margin:24px 8px;font-size:14px;text-align:center;color:#8e8e93}.shop-link{padding:0;border:0;background:transparent;font:inherit;font-size:15px;color:#0b84ff;cursor:pointer}.shop-pickbar{display:flex;flex-wrap:wrap;gap:4px 14px;margin:-4px 0 10px}.shop-pickbar .shop-link{font-size:13px}.shop-row.fish{cursor:default}.shop-row.fish:hover{background:transparent}.shop-pickbar~.shop-list .shop-row.fish{cursor:pointer}.shop-row.fish.picked{background:#eaf3ff}.shop-fish-pic{display:grid;flex-shrink:0;place-items:center;width:44px;height:44px;border-radius:22%;background:linear-gradient(180deg,#6fb2c2,#24566c)}.shop-fish-pic img{width:34px;height:26px;object-fit:contain}.shop-tier{display:inline-block;width:8px;height:8px;margin-right:5px;border-radius:50%;vertical-align:0}.shop-pair{margin-left:5px;font-size:12px}.shop-check{display:grid;flex-shrink:0;place-items:center;width:22px;height:22px;border:1.5px solid #C7C7CC;border-radius:50%;font-size:12px;font-weight:800;color:#fff}.shop-check.on{border-color:#0b84ff;background:#0b84ff}.shop-pill.sell{border:0;font:inherit;font-size:13px;font-weight:700;cursor:pointer}.shop-pill.sell.sure,.shop-buy.sure{background:#ff3b30;color:#fff}.shop-page:has(.shop-pickbar) .shop-buybar{position:sticky;bottom:-6px;margin-top:auto;padding:10px 2px;background:#f2f2f7}.shop-toast{position:sticky;bottom:8px;align-self:center;margin-top:10px;padding:8px 14px;border-radius:999px;background:#1c1c1eeb;font-size:13px;font-weight:600;color:#fff;animation:sms-pop .2s ease-out}.enc{--muted: #45399F;display:flex;flex-direction:column;gap:28px;max-width:1400px;margin:0 auto;padding:32px 24px 48px;color:#fff}.tank-housing{align-items:center}.enc-nameplate{position:relative;display:flex;flex-direction:column;justify-content:center;gap:2px;align-self:flex-start;width:min(430px,100%);min-height:64px;flex-shrink:0;padding:8px 24px;border:3px solid var(--ink);border-radius:14px;background:#c9c6f7;color:var(--ink)}.enc-nameplate b{font-family:var(--font-heading);font-size:24px;font-weight:800}.enc-nameplate span{font-family:var(--font-mono);font-size:10px;letter-spacing:1px;color:var(--ink-2)}.enc-nameplate i,.enc-tank-bezel:before,.enc-tank-bezel:after{position:absolute;width:10px;height:10px;border:2px solid var(--ink);border-radius:50%;background:#9c97ef}.enc-nameplate i:nth-of-type(1){top:8px;left:8px}.enc-nameplate i:nth-of-type(2){top:8px;right:8px}.enc-nameplate i:nth-of-type(3){bottom:8px;left:8px}.enc-nameplate i:nth-of-type(4){bottom:8px;right:8px}.tank-housing .enc-bolt{background:#9c97ef}.enc-tank-bezel{position:relative;display:flex;flex:1;align-items:center;justify-content:center;width:100%;min-height:0;padding:12px;border:3px solid var(--ink);border-radius:30px;background:#c9c6f7;container-type:size}.enc-tank-bezel:before{content:"";top:5px;left:50%}.enc-tank-bezel:after{content:"";bottom:5px;left:50%}.enc-tank{position:relative;flex-shrink:0;width:min(100cqw,100cqh * 784 / 484);aspect-ratio:784 / 484;overflow:hidden;border:3px solid #0E2233;border-radius:16px;background:linear-gradient(180deg,#6fb2c2,#3f8399 45%,#24566c);touch-action:none;-webkit-user-select:none;user-select:none}.enc-tank>*{position:absolute}.enc-tank.mode-feed{cursor:crosshair}.enc-tank.mode-release{cursor:copy}.enc-tank img{-webkit-user-drag:none}.enc-art{display:block;object-fit:contain;pointer-events:none}.enc-shaft{background:linear-gradient(180deg,#ffffff26,#fff0);transform-origin:top center;pointer-events:none}.enc-scene,.enc-algae{top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.enc-algae{transition:opacity .6s}.enc-stale{top:0;right:0;bottom:0;left:0;pointer-events:none;background:#2e54348c}.enc-decor{cursor:grab;transition:filter .15s}.enc-decor:hover{filter:drop-shadow(0 0 6px rgba(255,255,255,.7))}.enc-decor.dragging{cursor:grabbing;filter:drop-shadow(0 6px 4px rgba(14,34,51,.45))}.enc-pellet{border-radius:50%;background:radial-gradient(circle at 35% 35%,#ffe3b0,#c9772e)}.enc-fish{display:flex;align-items:center;justify-content:center;padding:8px;cursor:pointer}.enc-fish img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 2px 2px rgba(14,34,51,.25))}.enc-fish.selected img{filter:drop-shadow(0 0 4px rgba(255,255,255,.9))}.enc-ftag{display:flex;align-items:center;gap:4px;height:16px;padding:0 6px;border-radius:6px;background:#0e2233cc;font-family:var(--font-body);font-size:9px;font-weight:800;color:#fff;white-space:nowrap;transform:translate(-50%);pointer-events:none}.enc-ftag.hungry{background:#ff4fc4e6}.enc-ftag.full{height:17px}.enc-orb{padding:0;border:0;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fff1b8,#f4c95d 55%,#c9962e);box-shadow:0 0 8px #f4c95d8c;cursor:pointer}.enc-orb:hover{box-shadow:0 0 12px #fff1b8f2}.enc-bubble{border:1px solid rgba(255,255,255,.35);border-radius:50%;background:#ffffff0f}.enc-bubble.live{cursor:pointer}.enc-burst{width:0;height:0;pointer-events:none}.enc-burst i{position:absolute;width:4px;height:4px;margin:-2px;border-radius:50%;background:currentColor;animation:enc-spark .6s ease-out forwards}.enc-pop,.enc-ghost,.enc-notice{pointer-events:none}.enc-pop{z-index:2;font-family:var(--font-body);font-size:12px;font-weight:800;color:#fff1b8;text-shadow:0 1px 2px rgba(14,34,51,.8);white-space:nowrap;transform:translate(-50%);animation:enc-float .9s ease-out forwards}.enc-ghost{opacity:.6}.enc-wipe{top:0;bottom:0;left:-20%;z-index:2;width:18%;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(255,255,255,.7),transparent);animation:enc-wipe .9s ease-in-out forwards}.enc-hud-pill{z-index:2;display:flex;align-items:center;gap:10px;height:46px;padding:0 16px 0 14px;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:#0e2233d9;color:#fff;font-family:var(--font-body);pointer-events:none}.enc-hud-pill>span:last-child{display:flex;flex-direction:column}.enc-hud-pill b{font-size:16px;font-weight:800;line-height:20px}.enc-hud-pill small{font-size:8px;font-weight:800;letter-spacing:1px;color:#9fb4c4}.enc-coin-dot{width:14px;height:14px;border-radius:50%;background:#f4c95d;box-shadow:0 0 6px #f4c95d99}.enc-hud-pill.keeper{height:42px;gap:10px;padding:0 14px 0 6px}.enc-lv{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:30px;height:30px;border-radius:8px;background:#6fe3c8;font-size:14px;font-weight:800;color:#0e2233}.enc-keeper-body{display:flex;flex:1;flex-direction:column;gap:4px}.enc-keeper-row{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.enc-keeper-row b{font-size:11px;line-height:13px;white-space:nowrap}.enc-keeper-row small{font-size:9px;font-weight:700;letter-spacing:0;white-space:nowrap}.enc-xp{height:4px;border-radius:2px;background:#ffffff1f;overflow:hidden}.enc-xp i{display:block;height:100%;border-radius:2px;background:#6fe3c8;transition:width .3s}.enc-notice{bottom:14px;left:50%;z-index:3;max-width:80%;padding:7px 14px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:#0e2233e6;font-family:var(--font-body);font-size:12px;font-weight:600;color:#fff;text-align:center;transform:translate(-50%)}.enc-card-fish{top:15%;left:12px;z-index:3;display:flex;align-items:flex-start;gap:10px;width:min(300px,70%);padding:10px 12px 10px 10px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:#0e2233eb;color:#fff}.enc-card-portrait{display:flex;flex-shrink:0;width:54px;height:54px;padding:6px;border-radius:10px;background:linear-gradient(180deg,#6fb2c2,#24566c)}.enc-card-portrait img{width:100%;height:100%;object-fit:contain}.enc-card-body{display:flex;flex:1;flex-direction:column;gap:4px;min-width:0}.enc-name-input{width:100%;margin-left:-4px;padding:0 4px;border:1px solid transparent;border-radius:6px;background:transparent;font-family:var(--font-body);font-size:15px;font-weight:800;color:#fff;outline:none}.enc-name-input:hover,.enc-name-input:focus{border-color:#2c4a60;background:#132c40}.enc-card-meta{font-size:10px;font-weight:500;color:#9fb4c4}.enc-stat{display:grid;grid-template-columns:44px 1fr;align-items:center;gap:6px;font-size:9px;font-weight:700;color:#9fb4c4}.enc-stat-bar{height:5px;border-radius:3px;background:#ffffff1f;overflow:hidden}.enc-stat-bar i{display:block;height:100%;border-radius:3px}.enc-stat-bar.food i{background:#f7b39a}.enc-stat-bar.mood i{background:#6fe3c8}.enc-stat-bar.grow i{background:#b9c6ff}.enc-card-close{position:absolute;top:6px;right:6px;display:flex;padding:3px;border:0;border-radius:50%;background:transparent;color:#9fb4c4;cursor:pointer}.enc-card-close:hover{background:#132c40;color:#fff}.enc-actions.dark{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;width:100%;padding:14px 10px;border:1px solid #0E2233;border-radius:16px;background:#0e2233}.enc-act{display:flex;align-items:center;gap:10px;min-width:0;height:56px;padding:0 6px 0 10px;border:1.5px solid #2C4A60;border-radius:14px;background:#132c40;color:#fff;text-align:left;cursor:pointer;transition:border-color .15s,background .15s}.enc-act:hover{border-color:#6fe3c8}.enc-act.active{border-color:#6fe3c8;background:#17384f}.enc-act>span:last-child{display:flex;flex-direction:column;gap:1px;min-width:0}.enc-act b{overflow:hidden;font-family:var(--font-body);font-size:13px;font-weight:800;letter-spacing:-.2px;text-overflow:ellipsis;white-space:nowrap}.enc-act small{overflow:hidden;font-family:var(--font-body);font-size:10px;font-weight:500;color:#9fb4c4;text-overflow:ellipsis;white-space:nowrap}.enc-act-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:36px;height:36px;border:2px solid var(--ink);border-radius:10px;color:#0e2233}.enc-act.locked .enc-act-icon{opacity:.7}.enc-act.locked b{color:#fff9}.enc-act.owned .enc-act-icon{background:#f4c95d!important}.enc-act.ready .enc-act-icon{box-shadow:0 0 0 3px #f7b39a73}.enc-pill-state{display:flex;align-items:center;justify-content:center;min-width:58px;height:28px;padding:0 10px;border:2px solid var(--muted);border-radius:999px;font-family:var(--font-mono);font-size:9px;font-weight:700;color:var(--muted)}@keyframes enc-float{to{opacity:0;transform:translate(-50%,-26px)}}@keyframes enc-wipe{to{left:105%}}@keyframes enc-spark{0%{transform:rotate(var(--a)) translate(0);opacity:1}to{transform:rotate(var(--a)) translate(16px);opacity:0}}.enc-offline{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;gap:10px;border:3px dashed var(--ink);border-radius:20px;background:repeating-linear-gradient(0deg,rgba(35,16,107,.08) 0 2px,transparent 2px 6px);color:var(--ink);text-align:center}.enc-offline b{font-family:var(--font-heading);font-size:24px;font-weight:800}.enc-offline span{max-width:360px;font-family:var(--font-mono);font-size:11px;color:var(--ink-2)}.enc-card{display:flex;flex-direction:column;gap:14px;padding:18px 20px;border:2px solid var(--ink);border-radius:18px;background:var(--lav);box-shadow:var(--sticker-shadow);color:var(--ink)}@media (max-width: 860px){.enc-rail{display:none}.enc-actions.dark{grid-template-columns:repeat(2,minmax(0,1fr))}.enc-hud-pill{transform:scale(.75);transform-origin:top left}.enc-hud-pill.keeper{display:none}.enc-nameplate b{font-size:18px}.enc-nameplate span{font-size:8px}}.enc-tier-dot{width:7px;height:7px;flex-shrink:0;border-radius:50%;box-shadow:0 0 0 1px #0e223399}.enc-tier-badge{display:inline-block;margin-right:6px;padding:1px 7px;border-radius:999px;font-size:9px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;color:#0e2233}.enc-fish:has(.tier-4){animation:enc-shimmer-exotic 1.6s ease-in-out infinite alternate}.enc-fish:has(.tier-5){animation:enc-shimmer-legend 1.2s ease-in-out infinite alternate}@keyframes enc-shimmer-exotic{0%{filter:drop-shadow(0 0 2px rgba(255,79,196,.4))}to{filter:drop-shadow(0 0 7px rgba(255,79,196,.95))}}@keyframes enc-shimmer-legend{0%{filter:drop-shadow(0 0 3px rgba(255,229,59,.5))}to{filter:drop-shadow(0 0 10px rgba(255,229,59,1))}}.enc-sell{align-self:flex-start;margin-top:2px;padding:4px 10px;border:1px solid rgba(255,209,102,.6);border-radius:8px;background:#ffd1661f;font-family:var(--font-body);font-size:10px;font-weight:800;color:#ffd166;cursor:pointer}.enc-sell:hover{background:#ffd16638}.enc-sell.confirm{background:#ffd166;color:#0e2233}.enc-breed{font-family:var(--font-body);cursor:pointer;pointer-events:auto}.enc-breed:hover{background:#0e2233f2}.enc-guide{top:50%;left:50%;z-index:4;display:flex;flex-direction:column;gap:8px;width:min(460px,92%);max-height:88%;overflow-y:auto;padding:14px 16px;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:#0e2233f2;transform:translate(-50%,-50%);font-family:var(--font-body);color:#fff}.enc-guide-title{font-size:15px;font-weight:800}.enc-guide-rule{font-size:10px;line-height:1.45;color:#9fb4c4}.enc-guide-tier{display:flex;flex-direction:column;gap:5px;padding:8px;border-radius:10px;background:#ffffff0d}.enc-guide-head{display:flex;align-items:center;flex-wrap:wrap;gap:4px}.enc-guide-head small{font-size:9px;color:#9fb4c4}.enc-guide-fish{display:flex;flex-wrap:wrap;gap:10px}.enc-guide-species{display:flex;align-items:center;gap:6px;font-size:10px;font-weight:700}.enc-guide-species img{width:34px;height:25px;object-fit:contain}.enc-guide-species.unknown img{filter:brightness(0) opacity(.45)!important}.enc-guide-species.unknown small{color:#6a7f8f}.mw{display:flex;flex-direction:column}.mw-stage{position:relative;height:min(78vh,760px);min-height:460px;overflow:hidden;border:2px solid var(--ink);border-radius:18px;background:#05070f;box-shadow:var(--sticker-shadow)}.mw-stage canvas{display:block}.mw-hud{position:absolute;top:14px;left:14px;z-index:2;display:flex;flex-wrap:wrap;gap:8px;pointer-events:none}.mw-chip{padding:6px 14px;border:2px solid var(--ink);border-radius:999px;background:#ffffffeb;font-family:var(--font-heading);font-size:15px;font-weight:800;color:var(--ink)}.mw-chip.gold{background:var(--sun)}.mw-label{display:block;padding:4px 10px;border:2px solid var(--ink);border-radius:999px;background:#23106b;font-family:var(--font-body);font-size:13px;font-weight:700;white-space:nowrap;color:#fff;pointer-events:none}.mw-bubble{position:absolute;z-index:3;max-width:280px;padding:10px 14px;border:2px solid var(--ink);border-radius:14px;background:#fff;box-shadow:3px 3px 0 var(--ink);font-size:14px;font-weight:600;line-height:1.45;color:var(--ink);transform:translate(-50%,calc(-100% - 16px));cursor:pointer;animation:mw-pop .18s ease-out}@keyframes mw-pop{0%{opacity:0;transform:translate(-50%,calc(-100% - 8px)) scale(.9)}}.mw-face{position:absolute;top:0;left:0;z-index:1;display:flex;visibility:hidden;overflow:hidden;transform-origin:0 0;filter:blur(18px) saturate(.6);pointer-events:none;transition:filter .7s}.mw-face.near{filter:none;pointer-events:auto}.mw-face.tank:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#d6dee0d1;pointer-events:none;transition:opacity .7s}.mw-face.tank.near:after{opacity:0}.mw-face>.enc-housing{flex:1;padding:10px;border:0;border-radius:0;background:#2b2f33}.mw-face .enc-bolt{display:none}.mw-face .enc-bezel,.mw-face .enc-tank-bezel{border-color:#15181a;border-radius:6px;background:#3a3f43}.mw-face .enc-rail{border-color:#15181a;border-radius:6px;background:#4a4f53}.mw-face .enc-brand,.mw-face .enc-brand b{color:#c9cdd0}.mw-face .enc-nameplate{border-color:#15181a;border-radius:4px;background:#ecece6}.mw-face .enc-nameplate i{display:none}.mw-face .enc-offline{border-color:#6b7074;color:#c9cdd0}.mw-face .enc-offline span{color:#9ea2a4}.mw-face .enc-actions.dark{grid-template-columns:repeat(2,minmax(0,1fr));padding:8px}.mw-back{position:absolute;bottom:14px;left:50%;z-index:3;padding:8px 18px;border:2px solid var(--ink);border-radius:999px;background:var(--sun);box-shadow:3px 3px 0 var(--ink);font-family:var(--font-mono);font-size:12px;font-weight:700;color:var(--ink);cursor:pointer;transform:translate(-50%)}.mw-split{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:16px;height:min(78vh,760px);min-height:560px}.mw-split .mw-stage{height:100%;min-height:0}@media (max-width: 900px){.mw-split{grid-template-columns:1fr;height:auto}.mw-split .mw-stage{height:62vh;min-height:420px}.mw-split .shop-desk{height:720px}}.leaderboard{display:flex;flex-direction:column;height:calc(100vh - 64px);overflow-y:auto}.leaderboard-title{display:flex;flex-direction:column;gap:6px;padding:24px 48px 16px}.leaderboard-title-plus{font-family:var(--font-heading);font-size:40px;font-weight:900;color:var(--sun)}.leaderboard-title-h1{font-family:var(--font-heading);font-size:48px;font-weight:900;color:#fff}.leaderboard-title-sub{font-family:var(--font-mono);font-size:12px;letter-spacing:1.5px;text-transform:uppercase;color:var(--on-bg-2)}.leaderboard-podium{display:flex;align-items:flex-end;justify-content:center;gap:24px;padding:0 48px}.podium-card{display:flex;flex-direction:column;align-items:center;gap:10px;border-radius:16px;border:2px solid var(--ink);box-shadow:var(--sticker-shadow);background:var(--lav);padding:24px 16px;width:200px}.podium-card.gold{background:var(--sun);width:220px;padding:28px 16px}.podium-medal{font-size:32px}.podium-card.gold .podium-medal{font-size:40px}.podium-avatar{width:48px;height:48px;border-radius:50%;border:2px solid var(--ink);background:var(--edge)}.podium-card.gold .podium-avatar{width:56px;height:56px;background:var(--signal)}.podium-name{font-family:var(--font-body);font-size:15px;font-weight:700;color:var(--ink)}.podium-card.gold .podium-name{font-size:16px;font-weight:700}.podium-score{font-family:var(--font-mono);font-size:13px;font-weight:700;color:var(--ink-2)}.podium-card.gold .podium-score{font-size:14px;color:var(--ink)}.podium-rank{font-family:var(--font-heading);font-size:24px;font-weight:900;color:var(--ink)}.podium-card.gold .podium-rank{font-size:30px;color:var(--ink)}.leaderboard-table-section{display:flex;gap:20px;flex:1;padding:16px 48px 24px}.leaderboard-table{flex:1;align-self:flex-start;display:flex;flex-direction:column;overflow:hidden;background:var(--lav);border:2px solid var(--ink);border-radius:16px;box-shadow:var(--sticker-shadow)}.leaderboard-table-header{display:flex;align-items:center;height:44px;padding:0 16px;background:var(--signal);border-bottom:2px solid var(--ink)}.leaderboard-th{font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:1px;color:#fff}.leaderboard-th.rank{width:80px}.leaderboard-th.name{flex:1}.leaderboard-th.solved,.leaderboard-th.score{width:120px}.leaderboard-th.streak{width:100px}.leaderboard-row{display:flex;align-items:center;height:52px;padding:0 16px;border-bottom:2px solid var(--line);transition:background .15s}.leaderboard-row:hover{background:var(--surface-secondary)}.leaderboard-row.current-user{background:var(--ice)}.leaderboard-td{font-size:14px;color:var(--ink)}.leaderboard-td.rank{width:80px;font-family:var(--font-heading);font-size:18px;font-weight:800;color:var(--ink)}.leaderboard-td.rank.top{color:var(--accent-primary)}.leaderboard-td.name{flex:1;font-family:var(--font-body);font-weight:600;color:var(--ink)}.leaderboard-td .you-badge{font-size:11px;color:var(--accent-primary);margin-left:6px}.leaderboard-td.solved{width:120px;font-family:var(--font-mono);color:var(--ink-2)}.leaderboard-td.score{width:120px;font-family:var(--font-heading);font-size:18px;font-weight:800;color:var(--ink)}.leaderboard-td.streak{width:100px;font-family:var(--font-mono);color:var(--ink-2)}.leaderboard-achievements{width:380px;display:flex;flex-direction:column;gap:10px}.achievements-header{display:flex;justify-content:space-between;align-items:center}.achievements-label{font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:2px;color:var(--on-bg)}.achievements-count{font-family:var(--font-mono);font-size:10px;letter-spacing:1px;color:var(--on-bg-2)}.achievement-card{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;background:var(--lav);border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink)}.achievement-card.locked{opacity:.55;box-shadow:none}.achievement-icon{width:36px;height:36px;border-radius:50%;border:2px solid var(--ink);background:var(--signal-soft);display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}.achievement-info{flex:1;display:flex;flex-direction:column;gap:2px}.achievement-name{font-family:var(--font-body);font-size:13px;font-weight:700;color:var(--ink)}.achievement-desc{font-family:var(--font-body);font-size:11px;color:var(--ink-2)}.achievement-badge{padding:3px 8px;border-radius:999px;border:2px solid var(--ink);background:var(--solved);font-family:var(--font-mono);font-size:9px;font-weight:700;letter-spacing:.5px;color:var(--ink);flex-shrink:0}.achievement-card.locked .achievement-badge{background:var(--lav-ice);color:var(--ink-2)}@media (max-width: 640px){.leaderboard{height:auto;overflow:visible}.leaderboard-title{padding:18px 12px 10px}.leaderboard-title-plus{font-size:28px}.leaderboard-title-h1{font-size:clamp(30px,10.5vw,48px)}.leaderboard-podium{gap:6px;padding:0 8px}.podium-card{flex:1;width:auto;min-width:0;padding:14px 6px;gap:6px}.podium-card.gold{flex:1.15;width:auto;padding:18px 6px}.podium-name{max-width:100%;overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.podium-card.gold .podium-name{font-size:13px}.leaderboard-table-section{flex-direction:column;padding:12px 10px 24px}.leaderboard-table-header,.leaderboard-row{padding:0 10px}.leaderboard-th.rank,.leaderboard-td.rank{width:48px}.leaderboard-th.solved,.leaderboard-td.solved,.leaderboard-th.score,.leaderboard-td.score{width:70px}.leaderboard-th.streak,.leaderboard-td.streak{display:none}.leaderboard-achievements{width:100%}}.admin-page{padding:32px 48px;max-width:1200px;margin:0 auto}.admin-page h1{font-family:var(--font-heading);font-size:36px;letter-spacing:2px;color:var(--accent-primary);margin-bottom:24px}.admin-tabs{display:flex;gap:0;margin-bottom:24px;border-bottom:1px solid var(--border-default)}.admin-tab{padding:12px 24px;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:1.5px;color:var(--foreground-muted);text-transform:uppercase;transition:all .2s}.admin-tab:hover{color:var(--foreground-secondary)}.admin-tab.active{color:var(--accent-primary);border-bottom-color:var(--accent-primary)}.admin-content{margin-top:16px}.admin-section{background:var(--surface-secondary);border:1px solid var(--border-subtle);border-radius:12px;padding:24px;margin-bottom:24px}.admin-section h2{font-family:var(--font-heading);font-size:20px;letter-spacing:1px;color:var(--foreground-primary);margin-bottom:16px}.admin-section p{color:var(--foreground-muted);font-size:13px}.users-table{border:1px solid var(--border-default);border-radius:8px;overflow:hidden}.users-header{display:grid;grid-template-columns:1fr 1.5fr 100px 80px 180px;gap:1rem;padding:12px 16px;background:var(--surface-tertiary);font-family:var(--font-mono);font-size:11px;letter-spacing:1px;color:var(--foreground-muted);text-transform:uppercase}.users-row{display:grid;grid-template-columns:1fr 1.5fr 100px 80px 180px;gap:1rem;padding:12px 16px;border-bottom:1px solid var(--border-subtle);align-items:center;font-size:13px;color:var(--foreground-primary)}.users-row:last-child{border-bottom:none}.users-row:hover{background:var(--surface-tertiary)}.users-row input{width:80px;padding:4px 8px;background:var(--surface-primary);border:1px solid var(--border-default);border-radius:4px;color:var(--foreground-primary);font-family:var(--font-mono);font-size:12px}.users-row select{padding:6px 8px;background:var(--surface-primary);border:1px solid var(--border-default);border-radius:4px;color:var(--foreground-primary);font-size:13px}.admin-actions{display:flex;gap:8px}.admin-actions .btn{padding:6px 12px;font-size:11px}.reset-form{max-width:500px}.reset-form select{width:100%;padding:8px 12px;background:var(--surface-primary);border:1px solid var(--border-default);border-radius:6px;color:var(--foreground-primary);font-size:13px}.backups-list{border:1px solid var(--border-default);border-radius:8px;overflow:hidden}.backups-header{display:grid;grid-template-columns:2fr 120px 200px;gap:1rem;padding:12px 16px;background:var(--surface-tertiary);font-family:var(--font-mono);font-size:11px;letter-spacing:1px;color:var(--foreground-muted);text-transform:uppercase}.backups-row{display:grid;grid-template-columns:2fr 120px 200px;gap:1rem;padding:12px 16px;border-bottom:1px solid var(--border-subtle);font-size:13px;color:var(--foreground-primary)}.backups-row:last-child{border-bottom:none}.backups-row:hover{background:var(--surface-tertiary)}.admin-message{padding:12px 16px;margin-bottom:16px;border-radius:8px;font-family:var(--font-mono);font-size:12px;letter-spacing:.5px}.admin-message.success{background:#3b82f61a;border:1px solid var(--success);color:var(--success)}.admin-message.error{background:#f973161a;border:1px solid var(--danger);color:var(--danger)}:root,.challenge-right,.challenge-stage,.challenge-content-box,.challenge-welcome-hint,.navbar-avatar-menu,.home-status-bar,.home-machine-thumbnail,.podium-card,.leaderboard-table,.achievement-card,.machine-status,.machine-image,.machine-viewer-wrapper,.machine-component-card,.workshop-accessory,.admin-section,.card{--bg: #3B1FA3;--bg-grid: #4A2FB8;--nav: #2C1690;--ink: #23106B;--ink-2: #35228F;--lav: #B3B0F7;--lav-ice: #8F8AEB;--line: #9C97EF;--edge: #EEEDFF;--sun: #FFE53B;--sun-soft: #FFF3A0;--signal: #FF4FC4;--signal-soft: #FFB3E8;--solved: #6FF2D9;--ice: #7DF3FF;--on-bg: #E2DFFF;--on-bg-2: #B1ABFA;--sticker-shadow: 5px 5px 0 var(--ink);--surface-primary: #EEEDFF;--surface-secondary: #CDCAFB;--surface-tertiary: #C0BCF9;--surface-inverse: #23106B;--foreground-primary: #23106B;--foreground-secondary: #35228F;--foreground-muted: #4B3FA6;--foreground-inverse: #FFFFFF;--accent-primary: #C2148F;--accent-secondary: #2335D8;--accent-glow: rgba(255, 79, 196, .35);--border-subtle: #9C97EF;--border-default: #23106B;--danger: #B3124F;--warning: #9A4A00;--success: #0B7F6D;--neon-amber: #9A4A00;--neon-cyan: #0B7F6D;--font-heading: "Rubik", sans-serif;--font-body: "Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "Space Mono", "SF Mono", Monaco, monospace}:root{--surface-primary: #3B1FA3}.main-content,.navbar,.qwop-stage{--surface-primary: #2C1690;--foreground-primary: #FFFFFF;--foreground-secondary: #E2DFFF;--foreground-muted: #B1ABFA;--accent-primary: #FF4FC4;--neon-cyan: #7DF3FF;--neon-amber: #FFE53B;--danger: #FF8FB8;--warning: #FFE53B;--success: #6FF2D9;--border-default: #6A55D6;--border-subtle: #4A2FB8}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg);background-image:linear-gradient(var(--bg-grid) 1.5px,transparent 1.5px),linear-gradient(90deg,var(--bg-grid) 1.5px,transparent 1.5px);background-size:56px 56px;min-height:100vh;color:var(--foreground-primary)}code{font-family:var(--font-mono)}#root{min-height:100vh}a{color:inherit;text-decoration:none}button,input,textarea,select{font-family:inherit}.challenge-title,.challenge-welcome-h1,.home-hero-h1,.leaderboard-title-h1{font-family:var(--font-heading);font-weight:900;color:#fff;text-shadow:3px 3px 0 var(--signal);letter-spacing:-.5px}.challenge-right,.challenge-stage,.home-status-bar,.leaderboard-table,.machine-status,.admin-section,.card{background:var(--lav);border:2px solid var(--ink);border-radius:16px;box-shadow:var(--sticker-shadow)}@media (pointer: coarse){input,textarea,select{font-size:max(16px,1em)!important}}
