:root{--bg: #f4efe6;--panel: rgba(255, 255, 255, .94);--ink: #2d3142;--muted: #7a7f8e;--line: #e3ddd2;--accent: #ff7a45;--accent-soft: #ffe3d6;--radius: 12px;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink)}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg)}body.in-game{overflow:hidden;height:100%}[hidden]{display:none!important}button,input,select{font:inherit;color:inherit}button,a.button{border:0;border-radius:8px;padding:8px 14px;cursor:pointer;text-decoration:none;text-align:center;background:var(--accent);color:#fff;font-weight:600}button.small{padding:4px 10px;font-size:13px}button.ghost{background:transparent;color:var(--muted);padding:2px 6px}button.danger{background:#e5484d}input,select{border:1px solid #d8d3ca;border-radius:8px;padding:7px 9px;background:#fff;min-width:0}input[type=color]{padding:2px;width:44px;height:36px;flex:none}h1,h2{margin:0}h2{font-size:17px}.muted{color:var(--muted);font-size:13px;margin:0}.row{display:flex;gap:8px;align-items:center}.row>input:not([type]),.row>input[readonly]{flex:1}.row.between{justify-content:space-between}.stack{display:grid;gap:10px}.badge{font-size:11px;padding:2px 6px;border-radius:6px;background:var(--accent-soft);color:#b3461a}.card{background:#fff;border-radius:16px;padding:18px;display:grid;gap:12px;box-shadow:0 4px 20px #0000000f}.queue-card{text-align:center;padding:32px;gap:18px}.queue-card .badge{justify-self:center;letter-spacing:.08em}.queue-card p{margin:0;line-height:1.6}.queue-position{font-size:76px;line-height:1.2;font-weight:900;color:var(--accent)}.gift-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.gift-actions button{font-size:12px;flex:1}.gift-actions .has-new{box-shadow:0 0 0 3px #ffcc70}.gift-dialog{max-height:calc(100vh - 32px);overflow:auto}.gift-dialog h2{font-size:21px}.gift-dialog p{margin:0;line-height:1.5}.gift-icon-field{border:1px solid var(--line);border-radius:12px;padding:12px}.gift-icon-field legend{font-size:14px;font-weight:600}.gift-icons{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}.gift-icons button{background:var(--bg);padding:8px 0;font-size:24px;border:2px solid transparent}.gift-icons button[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft)}.gift-error{color:#b42318;font-size:13px}.gift-error:empty{display:none}#gift-tool{position:relative}#gift-nudge{pointer-events:none;position:absolute;top:calc(100% + 12px);left:50%;transform:translate(-50%);background:#2d3142;color:#fff;border-radius:12px;padding:8px 12px;font-size:12px;width:140px;animation:gift-nudge .9s ease-in-out infinite alternate;z-index:3}#gift-nudge b{display:block;font-size:30px;line-height:1}@keyframes gift-nudge{to{transform:translate(-50%,9px)}}@media(prefers-reduced-motion:reduce){#gift-nudge{animation:none}}#gift-opts{flex-basis:100%;justify-content:center;flex-wrap:wrap}#gift-shelf{display:flex;flex-wrap:wrap;gap:5px;max-height:120px;max-width:min(580px,80vw);overflow:auto;font-size:13px}.gift-shelf-item{font-size:12px;background:var(--bg);color:var(--ink);max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gift-shelf-item[aria-pressed=true]{background:var(--accent-soft);box-shadow:inset 0 0 0 2px var(--accent)}.modal.gift-results{width:min(720px,calc(100vw - 32px));max-height:calc(100vh - 32px)}.gift-results>.muted{margin:12px 0}.gift-table-wrap{overflow:auto}.gift-table{border-collapse:collapse;width:100%;font-size:14px}.gift-table th,.gift-table td{text-align:left;padding:8px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.gift-table td:first-child{min-width:130px}.gift-table canvas{width:40px;height:48px;vertical-align:middle;margin-right:6px}.gift-table button{font-size:12px}.gift-link-preview{overflow-wrap:anywhere;background:var(--bg);padding:12px;border-radius:10px;font-size:13px;max-height:110px;overflow:auto}.gift-guide{margin-top:32px;padding:28px;border-radius:20px;background:linear-gradient(135deg,#fff8e8,#fff1e3);box-shadow:inset 0 0 0 1px #f3dfc2}.gift-guide-head{display:flex;gap:18px;align-items:flex-start}.gift-guide-icon{flex:none;width:56px;height:56px;display:grid;place-items:center;font-size:30px;border-radius:16px;background:#fff;box-shadow:0 6px 16px #e99b2040}.gift-guide h3{margin:0 0 8px;font-size:24px;letter-spacing:-.02em}.gift-guide-head p{margin:0;line-height:1.6;color:#4a4f60}.gift-guide-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:0;margin:22px 0 16px;list-style:none}.gift-guide-steps li{display:flex;gap:12px;align-items:flex-start;padding:16px;border-radius:16px;background:#fff;box-shadow:0 4px 14px #2d31420f}.step-num{flex:none;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:var(--accent);color:#fff;font-weight:800;font-size:15px}.gift-guide-steps strong{display:block;font-size:16px;line-height:30px}.gift-guide-steps p{font-size:14px;line-height:1.5;color:#4a4f60;margin:2px 0 0}.gift-guide-note{margin:0;font-size:13px;line-height:1.5;color:#7a6a55}@media(max-width:720px){.gift-guide{padding:20px}.gift-guide-head{flex-direction:column;gap:12px}.gift-guide-steps{grid-template-columns:1fr}}.check{display:flex;gap:10px;align-items:flex-start;cursor:pointer}.check small,.choice-item small{display:block;color:var(--muted);font-size:12px;font-weight:400}.site{min-height:100vh;display:flex;flex-direction:column}.site main{flex:1}.container{width:min(1120px,100% - 32px);margin-inline:auto}.site a{color:inherit}html{scroll-behavior:smooth;scroll-padding-top:72px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;border-radius:10px;padding:9px 16px;cursor:pointer;text-decoration:none;background:var(--accent);color:#fff!important;font-weight:600;transition:transform .1s,background .15s}.btn:hover{background:#f26a33}.btn:active{transform:translateY(1px)}.btn-lg{padding:13px 22px;font-size:16px;border-radius:12px}.btn-secondary{background:#fff;color:var(--ink)!important;box-shadow:inset 0 0 0 1px var(--line)}.btn-secondary:hover{background:#fbf8f3}.btn-icon{width:40px;height:40px;padding:0;font-size:18px}.btn[disabled]{opacity:.6;cursor:default}.site-header{position:sticky;top:0;z-index:5;background:#f4efe6d9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;gap:24px;height:64px}.logo{display:inline-flex;align-items:center;gap:10px;font-weight:800;font-size:20px;text-decoration:none;letter-spacing:-.02em}.logo.small{font-size:16px;gap:8px}.logo-mark{width:26px;height:32px;border-radius:10px;background:var(--accent);position:relative;flex:none;box-shadow:inset 0 -4px #0000001f}@property --px{syntax: "<length>"; inherits: true; initial-value: 1px;}@property --py{syntax: "<length>"; inherits: true; initial-value: 0px;}.logo-mark{transition:--px .2s ease-out,--py .2s ease-out}.logo-mark:before,.logo-mark:after{content:"";position:absolute;top:9px;width:7px;height:7px;border-radius:50%;background:radial-gradient(circle at calc(50% + var(--px)) calc(50% + var(--py)),var(--ink) 0 2.1px,white 2.5px);transition:transform .07s}.logo-mark.blink:before,.logo-mark.blink:after{transform:scaleY(.12)}.logo-mark:before{left:6px}.logo-mark:after{left:14px}.logo.small .logo-mark{width:20px;height:25px;border-radius:8px}.logo.small .logo-mark:before,.logo.small .logo-mark:after{top:7px;width:5px;height:5px;background:radial-gradient(circle at calc(50% + var(--px) * .6) calc(50% + var(--py) * .6),var(--ink) 0 1.4px,white 1.8px)}.logo.small .logo-mark:before{left:4px}.logo.small .logo-mark:after{left:11px}.nav{display:flex;align-items:center;gap:4px;margin-left:auto}.nav a{text-decoration:none;padding:8px 12px;border-radius:8px;font-weight:500}.nav a:hover{background:#2d31420f}.nav-cta{margin-left:8px;border-radius:10px}.profile{position:relative}.profile-chip{display:inline-flex;align-items:center;gap:8px;background:#fff;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line);border-radius:999px;padding:6px 12px 6px 8px;font-weight:600;max-width:180px}.profile-chip #profile-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dot{width:14px;height:14px;border-radius:50%;flex:none;display:inline-block}.popover{position:absolute;right:0;top:calc(100% + 8px);width:280px;background:#fff;border-radius:14px;box-shadow:0 12px 40px #00000026;padding:16px;display:grid;gap:12px;z-index:6}.pop-title{margin:0;font-weight:700}.field{display:grid;gap:6px;font-size:14px;font-weight:500}.field input{width:100%}.swatches{display:flex;flex-wrap:wrap;gap:8px}.swatch{width:28px;height:28px;border-radius:50%;padding:0;border:0;cursor:pointer;box-shadow:inset 0 0 0 2px #00000014}.swatch[aria-pressed=true]{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--ink)}.menu-btn{display:none;background:transparent;color:var(--ink);font-size:22px;padding:4px 8px}.hero{padding:56px 0 40px}.hero-inner{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center}.eyebrow{margin:0 0 12px;color:#b3461a;font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.06em}.hero h1{font-size:clamp(36px,6vw,60px);line-height:1.02;letter-spacing:-.03em}.accent{color:var(--accent)}.lead{font-size:18px;line-height:1.55;color:#4a4f60;margin:18px 0 26px;max-width:34em}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.hero-note{margin:18px 0 0;font-size:13px;line-height:1.6;color:#4a4f60}.hero-stats{margin:18px 0 0;color:var(--muted);font-size:14px;min-height:1.4em}.hero-art svg{width:100%;height:auto;display:block;border-radius:24px;box-shadow:0 20px 60px #2d314226}.hero-hop{animation:hop 1.6s ease-in-out infinite}@keyframes hop{0%,to{transform:translateY(0)}45%{transform:translateY(-46px)}}@media(prefers-reduced-motion:reduce){.hero-hop{animation:none}html{scroll-behavior:auto}}.section{padding:56px 0}.section-alt{background:#fff}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:24px;flex-wrap:wrap}.section h2{font-size:28px;letter-spacing:-.02em;margin-bottom:6px}.section .muted{font-size:15px}.rooms-tools{display:flex;gap:8px}.rooms-tools input{width:240px;height:40px}.room-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.room-card{display:grid;text-decoration:none;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 1px 0 var(--line),0 4px 16px #0000000d;transition:transform .15s,box-shadow .15s}.room-card:hover{transform:translateY(-3px);box-shadow:0 1px 0 var(--line),0 10px 30px #0000001a}.room-cover{height:110px;position:relative;overflow:hidden}.room-cover .ground{position:absolute;left:0;right:0;bottom:0;height:18px;background:#795548;border-top:5px solid #8bc34a}.room-cover .guy{position:absolute;bottom:15px;width:40px;height:50px;transform:translate(-50%)}.room-cover .block{position:absolute;bottom:18px;width:22px;height:22px;border-radius:3px;background:#c98b4a;box-shadow:inset 0 0 0 2px #7a4f24}.room-body{padding:14px 16px 16px;display:grid;gap:6px}.room-name{font-weight:700;font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.room-meta{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--muted)}.online{display:inline-flex;align-items:center;gap:6px;font-weight:600}.online.live{color:#1f8a5a}.online.live:before{content:"";width:8px;height:8px;border-radius:50%;background:#36b37e;box-shadow:0 0 0 3px #36b37e33}.room-grid .empty{grid-column:1 / -1;text-align:center;padding:40px 16px;border:2px dashed var(--line);border-radius:16px;color:var(--muted)}.room-grid .empty .btn{margin-top:12px}.skeleton{height:178px;border-radius:16px;background:linear-gradient(90deg,#efe9df 25%,#f7f3ed,#efe9df 75%);background-size:200% 100%;animation:shimmer 1.2s infinite}@keyframes shimmer{to{background-position:-200% 0}}.link-form{margin-top:28px;display:grid;gap:8px;max-width:520px;font-weight:500}.link-form input{height:40px}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.feature{background:var(--bg);border-radius:16px;padding:20px}.feature-icon{font-size:28px}.feature h3{margin:10px 0 6px;font-size:18px}.feature p{margin:0;color:#4a4f60;line-height:1.5;font-size:15px}.rules{margin-top:32px;padding:32px 36px;border-radius:20px;background:linear-gradient(135deg,#ffe9dc,#fff4ea);display:flex;align-items:center;justify-content:space-between;gap:32px}.rules-text{display:grid;gap:12px;max-width:760px}.rules h3{margin:0;font-size:24px;letter-spacing:-.02em}.rules p{margin:0;line-height:1.6;color:#4a4f60}.rules .btn{flex:none}.rules-keys kbd{display:inline-block;min-width:22px;padding:1px 7px;margin:0 2px;border-radius:6px;background:#fff;box-shadow:inset 0 -2px #2d314226,0 0 0 1px #2d31421f;font:600 13px system-ui;text-align:center;color:#2d3142}@media(max-width:860px){.rules{flex-direction:column;align-items:flex-start;padding:24px;gap:20px}}.site-footer{border-top:1px solid var(--line);padding:24px 0}.footer-inner{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.footer-inner nav{margin-left:auto;display:flex;gap:16px}.footer-inner nav a{text-decoration:none;color:var(--muted)}.modal{border:0;border-radius:20px;padding:24px;width:min(460px,calc(100vw - 32px));box-shadow:0 30px 80px #0000004d}.modal::backdrop{background:#2d314273}.modal h2{font-size:22px}.btn-close{background:transparent;color:var(--muted);font-size:18px;padding:4px 8px}.choice{border:0;padding:0;margin:0;display:grid;gap:8px}.choice legend{font-size:14px;font-weight:500;margin-bottom:6px}.choice-item{display:flex;gap:10px;align-items:flex-start;padding:12px;border-radius:12px;box-shadow:inset 0 0 0 1px var(--line);cursor:pointer}.choice-item:has(input:checked){box-shadow:inset 0 0 0 2px var(--accent);background:#fff8f4}.choice-item input,.check input{margin-top:3px;accent-color:var(--accent);flex:none}.choice-item input{width:18px;height:18px}.room-size-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.room-size-choice{position:relative;cursor:pointer;min-width:0}.room-size-choice input{position:absolute;width:1px;height:1px;opacity:0;padding:0;margin:0}.room-size-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;height:100%;min-height:112px;padding:14px 5px 12px;border-radius:var(--radius);background:#faf8f4;box-shadow:inset 0 0 0 1px var(--line);text-align:center;transition:background .15s,box-shadow .15s}.room-size-card strong{font-size:13px}.room-size-card small{color:var(--muted);font-size:11px;line-height:1.35}.room-size-choice:hover .room-size-card{background:#fff3eb;box-shadow:inset 0 0 0 1px #ffc1a6}.room-size-choice input:checked+.room-size-card{background:#fff3eb;box-shadow:inset 0 0 0 2px var(--accent)}.room-size-choice input:checked+.room-size-card strong{color:#b3461a}.room-size-choice input:focus-visible+.room-size-card{outline:3px solid var(--ink);outline-offset:3px}.room-size-preview{display:block;position:relative;width:32px;height:28px;margin-bottom:2px;border:1px solid #b9d8e7;border-bottom:5px solid #9ac365;border-radius:5px;background:repeating-linear-gradient(90deg,transparent 0 11px,#c5dfea 11px 12px),#e2f0f7}.room-size-preview:after{content:"";position:absolute;width:7px;height:10px;bottom:0;left:calc(50% - 3px);border-radius:4px 4px 2px 2px;background:var(--accent)}.room-size-preview.medium{width:49px}.room-size-preview.large{width:66px}@media(max-width:900px){.hero-inner{grid-template-columns:1fr;gap:32px}.hero-art{max-width:520px}.features{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.menu-btn{display:block}.header-inner{gap:12px}.profile{margin-left:auto}.nav{display:none;position:absolute;top:64px;left:0;right:0;flex-direction:column;align-items:stretch;background:var(--bg);border-bottom:1px solid var(--line);padding:8px 16px 16px;margin:0}.nav.open{display:flex}.nav-cta{margin:8px 0 0}.hero{padding-top:32px}.section{padding:40px 0}.rooms-tools{width:100%}.rooms-tools input{flex:1;width:auto}.features{grid-template-columns:1fr}.profile-chip{max-width:130px}}.nav a[aria-current=page]{background:#2d314214}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:24px;flex-wrap:wrap}.page-head h1{font-size:clamp(30px,5vw,44px);letter-spacing:-.03em;margin-bottom:6px}.rooms-toolbar{display:flex;gap:10px;align-items:center;margin-bottom:20px;flex-wrap:wrap}.rooms-toolbar input{flex:1;min-width:200px;height:40px}.segmented{display:inline-flex;background:#fff;border-radius:10px;padding:3px;box-shadow:inset 0 0 0 1px var(--line)}.segmented button{background:transparent;color:var(--muted);border-radius:8px;padding:7px 12px;font-weight:600;font-size:14px}.segmented button[aria-checked=true]{background:var(--ink);color:#fff}.pagination{display:flex;justify-content:center;align-items:center;gap:6px;margin-top:28px;flex-wrap:wrap}.pagination:empty{display:none}.pagination a,.pagination span{min-width:40px;height:40px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;text-decoration:none;font-weight:600}.pagination a{background:#fff;box-shadow:inset 0 0 0 1px var(--line)}.pagination a:hover{background:#fbf8f3}.pagination a[aria-current=page]{background:var(--accent);color:#fff;box-shadow:none}.pagination .gap{color:var(--muted);min-width:20px;padding:0}.pagination a[aria-disabled=true]{opacity:.4;pointer-events:none}@media(max-width:720px){.segmented{width:100%}#rooms-refresh{display:none}.segmented button{flex:1;padding:7px 6px}.pagination .num:not([aria-current=page]),.pagination .gap{display:none}}canvas#game{display:block;width:100vw;height:100vh;touch-action:none}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#2d314259;padding:16px;z-index:10}.overlay .card{width:min(420px,100%)}.panel{position:fixed;background:var(--panel);border-radius:var(--radius);box-shadow:0 4px 20px #0000001f;padding:8px}#toolbar{top:12px;left:50%;transform:translate(-50%);display:flex;gap:6px;align-items:center;max-width:calc(100vw - 24px);flex-wrap:wrap;justify-content:center}#toolbar button[data-tool]{background:transparent;font-size:20px;padding:4px 8px}#toolbar button[data-tool].active{background:var(--accent-soft)}#toolbar .sep{width:1px;align-self:stretch;background:var(--line)}#toolbar .opts{display:flex;gap:6px;align-items:center}#toolbar input[type=color]{width:36px;height:30px}.block-btn{background:transparent!important;padding:2px!important;border:2px solid transparent!important}.block-btn.active{border-color:var(--accent)!important}.block-btn img{width:36px;height:36px;object-fit:contain;display:block}#room-panel{top:12px;left:12px;width:230px;display:grid;gap:8px;font-size:14px}#room-panel .back{text-decoration:none;color:var(--muted);font-size:18px}#room-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.players{list-style:none;margin:0;padding:0;display:grid;gap:6px;max-height:50vh;overflow-y:auto}.players li{display:grid;gap:4px;padding:6px;border-radius:8px;background:var(--bg)}.players .who{display:flex;gap:6px;align-items:center}.players .dot{width:10px;height:10px;border-radius:50%;flex:none}.players .mod{display:flex;gap:8px;align-items:center;font-size:12px;flex-wrap:wrap}.players .mod label{display:flex;gap:3px;align-items:center}.players .mod button{margin-left:auto;padding:2px 8px;font-size:12px}#logic-panel{top:76px;right:64px;width:240px;display:grid;gap:8px}#chat-form{left:50%;bottom:12px;transform:translate(-50%);display:flex;gap:8px;align-items:center;width:min(420px,calc(100vw - 24px))}#chat-input{flex:1}#toasts{position:fixed;top:76px;left:50%;transform:translate(-50%);display:grid;gap:6px;pointer-events:none}.toast{background:#2d3142d9;color:#fff;font-size:13px;padding:6px 12px;border-radius:8px;animation:toast 4s forwards}@keyframes toast{0%,80%{opacity:1}to{opacity:0}}#help{right:12px;bottom:12px;font-size:12px}.hotbar{position:fixed;left:12px;bottom:12px;display:flex;gap:8px;align-items:flex-end;z-index:5}.hand-slot{display:flex;align-items:center;gap:8px;padding:6px 12px 6px 8px;border-radius:14px;background:var(--panel);color:var(--ink);box-shadow:0 4px 20px #0000001f;font-weight:600;font-size:13px}.hand-slot .hand-icon{width:40px;height:40px;display:grid;place-items:center;font-size:24px;border-radius:10px;background:var(--bg);box-shadow:inset 0 0 0 2px var(--line)}.hand-slot.active .hand-icon{box-shadow:inset 0 0 0 2px var(--accent);background:var(--accent-soft)}.backpack-toggle{position:relative;width:52px;height:52px;border-radius:14px;font-size:26px;padding:0;background:var(--panel);box-shadow:0 4px 20px #0000001f}.badge-count{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;border-radius:9px;padding:0 5px;background:var(--accent);color:#fff;font-size:11px;line-height:18px}.badge-count:empty{display:none}.backpack{left:12px;bottom:76px;display:grid;gap:10px;width:max-content;z-index:6}.backpack-body{display:flex;gap:14px;align-items:flex-start}.backpack-hand-col{display:grid;gap:4px;justify-items:center}.backpack-grid{display:grid;grid-template-columns:repeat(4,48px);gap:6px}.slot{width:48px;height:48px;padding:0;border-radius:10px;font-size:26px;background:var(--bg);color:var(--ink);box-shadow:inset 0 0 0 2px var(--line);cursor:pointer}.slot.hand{box-shadow:inset 0 0 0 2px var(--accent);background:#fff8f4}.slot.over{box-shadow:inset 0 0 0 3px var(--accent)}.slot.dragging{opacity:.4}.backpack .muted{max-width:280px}#item-opts .item-btn{font-size:22px;width:40px;height:40px}.count-field{display:flex;align-items:center;gap:4px;font-weight:700}.count-field input{width:56px}@media(max-width:800px){.hotbar{bottom:64px}.backpack{bottom:128px}}.wardrobe-toggle{position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:15;display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;border-radius:12px 0 0 12px;background:var(--panel);color:var(--ink);font-size:12px;font-weight:700;box-shadow:-4px 4px 20px #0000001f;transition:right .25s ease}.wardrobe-toggle span:first-child{font-size:22px}.wardrobe-toggle[aria-expanded=true]{right:min(340px,100vw)}.wardrobe{position:fixed;top:0;right:0;bottom:0;width:min(340px,100vw);z-index:20;background:#fff;box-shadow:-10px 0 40px #00000026;display:flex;flex-direction:column;transform:translate(100%);transition:transform .25s ease}.wardrobe.open{transform:none}.wardrobe-head{display:flex;justify-content:space-between;align-items:center;padding:14px 16px 6px}.wardrobe-head h2{font-size:20px}.wardrobe-preview{display:block;width:calc(100% - 32px);height:170px;margin:0 16px;border-radius:14px;flex:none;background:linear-gradient(#cfe8ff,#f4efe6)}.wardrobe-body{overflow-y:auto;padding:8px 16px 20px;display:grid;gap:14px;align-content:start}.wardrobe-section h3{margin:0 0 8px;font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.wardrobe-section .swatches{margin-top:8px}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{background:var(--bg);color:var(--ink);font-weight:600;font-size:13px;padding:6px 10px;border-radius:999px}.chip[aria-pressed=true]{background:var(--ink);color:#fff}.pack-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:6px}.pack-btn{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;border-radius:12px;background:var(--bg);color:var(--ink);font-weight:600;font-size:12px}.pack-btn:hover{background:var(--accent-soft)}.pack-icon{font-size:22px}.wardrobe-actions{display:flex;gap:8px;flex-wrap:wrap}.wardrobe-actions .btn{flex:1}@media(max-width:800px){.wardrobe-toggle{top:auto;bottom:76px;transform:none}.wardrobe-toggle[aria-expanded=true]{right:100vw}}@media(max-width:800px){#help{display:none}#room-panel{width:180px}}.admin-app{min-height:100vh;background:var(--bg)}.admin-center{min-height:100vh;display:grid;place-items:center;padding:16px}.admin-login{width:min(380px,100%)}.admin-error{color:#c4302b;margin:0;min-height:1.2em;font-size:14px}.admin-shell{padding:20px 0 48px;display:grid;gap:16px}.admin-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.admin-head h1{font-size:26px;margin-right:auto}.admin-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px}.admin-stat{background:#fff;border-radius:14px;padding:12px 14px;display:grid;gap:2px;box-shadow:0 1px 0 var(--line)}.admin-stat strong{font-size:24px}.admin-stat span{color:var(--muted);font-size:13px}.admin-tools{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.admin-tools input[type=search]{flex:1;min-width:200px;height:40px}.admin-tools select{height:40px}.admin-content{display:grid;gap:10px}.admin-room{background:#fff;border-radius:14px;box-shadow:0 1px 0 var(--line);overflow:hidden}.admin-room.open{box-shadow:0 0 0 2px var(--accent-soft),0 4px 18px #0000000f}.admin-room-head{width:100%;display:grid;grid-template-columns:minmax(0,2fr) minmax(0,2fr) auto;gap:12px;align-items:center;background:transparent;color:var(--ink);text-align:left;padding:12px 16px;font-weight:500}.admin-room-name{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-online{font-size:13px;color:var(--muted);white-space:nowrap}.admin-online.live{color:#1f8a5a;font-weight:700}.admin-room-detail{padding:0 16px 16px;display:grid;gap:10px}.admin-room-detail h3{margin:6px 0 0;font-size:14px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.admin-players{list-style:none;margin:0;padding:0;display:grid;gap:6px}.admin-players li{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:8px 10px;border-radius:10px;background:var(--bg)}.admin-players li>span:first-child{font-weight:600}.admin-actions{display:flex;gap:6px;flex-wrap:wrap;margin-left:auto}.admin-message input{flex:1}@media(max-width:720px){.admin-room-head{grid-template-columns:1fr;gap:2px}}.feature-panels{position:fixed;top:76px;right:64px;z-index:6;width:min(300px,calc(100vw - 24px));display:flex;flex-direction:column;gap:8px;max-height:calc(100vh - 160px);overflow-y:auto;pointer-events:none}.feature-panels>.panel{position:static;pointer-events:auto;display:grid;gap:8px}.feature-panels>.panel[hidden]{display:none}.feature-panels>.panel.collapsed .wheel-body{display:none}.feature-panels>.panel.collapsed .row .ghost{transform:rotate(-90deg)}.wheel-body{display:grid;gap:8px}.wheel-result{margin:0;font-weight:700;text-align:center;min-height:1.3em}.wheel-owner textarea{width:100%;resize:vertical;font:inherit;border:1px solid #d8d3ca;border-radius:8px;padding:7px 9px}.wheel-owner .segmented{width:100%}.wheel-owner .segmented button{flex:1}.wheel-banner{position:fixed;top:84px;left:50%;transform:translate(-50%);z-index:12;display:grid;gap:4px;text-align:center;padding:14px 22px;border-radius:16px;background:linear-gradient(135deg,#ff7a45,#f15bb5);color:#fff;box-shadow:0 10px 40px #f15bb566;animation:wheel-pop .4s ease-out}.wheel-banner strong{font-size:20px}@keyframes wheel-pop{0%{transform:translate(-50%) scale(.6);opacity:0}to{transform:translate(-50%) scale(1);opacity:1}}body.wheel-room #logic-panel,body.ghost-room #logic-panel{right:376px}@media(max-width:800px){.feature-panels{right:12px;top:auto;bottom:140px;width:min(260px,calc(100vw - 24px));max-height:45vh}}.ghost-actions{display:flex;gap:6px;flex-wrap:wrap}.ghost-actions .btn{flex:1}.ghost-panel input[type=number]{width:100%}.ghost-board{left:12px;bottom:84px;min-width:170px;max-width:240px;font-size:13px;display:grid;gap:3px;z-index:5}.ghost-board strong{font-size:14px}.ghost-board .me{color:#c4501f;font-weight:700}.ghost-board .row-line{display:flex;justify-content:space-between;gap:10px}.ghost-result{width:min(420px,calc(100vw - 32px));text-align:center}.ghost-result-list{list-style:none;padding:0;margin:12px 0;display:grid;gap:6px;text-align:left}.ghost-result-list li{display:flex;justify-content:space-between;gap:10px;padding:8px 12px;border-radius:10px;background:#f6f2ec;font-weight:600}.ghost-king{margin:12px 0 4px;padding:14px 16px;border-radius:14px;display:grid;gap:2px;background:linear-gradient(135deg,#eef4ff,#f5ecff);box-shadow:inset 0 0 0 2px #b9c8ff,0 6px 24px #8ca0ff59}.ghost-king small{color:#6b72a8;font-weight:600;letter-spacing:.02em;text-transform:uppercase;font-size:12px}.ghost-king strong{font-size:24px;font-weight:800;color:#2d3142}.ghost-king span{font-size:16px;font-weight:700;color:#5b4bb3}.ghost-board .king{font-weight:800;color:#5b4bb3}.ghost-result-list li.me{background:#fff1e8;box-shadow:inset 0 0 0 2px #ff7a45}.template-options{display:grid;gap:8px;max-height:260px;overflow-y:auto}.admin-template-new,.admin-template{padding:14px 16px}.admin-template-new .row,.admin-template .row{gap:8px}.admin-template-new input:not([type=checkbox]),.admin-template input:not([type=checkbox]){flex:1}.admin-template textarea,.admin-template-new textarea{width:100%;resize:vertical;font:inherit;border:1px solid #d8d3ca;border-radius:8px;padding:7px 9px}.editor-bar{position:absolute;left:50%;top:64px;transform:translate(-50%);z-index:7;display:flex;align-items:center;gap:10px;padding:8px 12px;flex-wrap:wrap;justify-content:center;border:2px dashed #9b5de5}.editor-mode{font-size:13px;padding:3px 9px;border-radius:999px;background:#e9f7ef;color:#1e7a4a;font-weight:600}.editor-mode.paused{background:#f1eafc;color:#6b3fb0}.tag-picker{display:flex;flex-wrap:wrap;gap:6px}.tag-chip{font:inherit;font-size:13px;padding:4px 10px;border-radius:999px;border:1px solid #d8d3ca;background:#fff;color:inherit;cursor:pointer}.tag-chip[aria-pressed=true]{background:#fff1e8;border-color:#ff7a45;color:#c4501f;font-weight:600}.template-icon{font-size:22px}.template-badges{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.template-badge{font-size:12px;padding:2px 8px;border-radius:999px;background:#f3efe8;color:#555b6e}.wheel-owner .check{padding:8px 10px;border:1px solid #e6e0d6;border-radius:10px;background:#fbf8f3;align-items:center}.wheel-owner .check:has(input:checked){border-color:#ff7a45;background:#fff4ec}.wheel-owner .check input{width:20px;height:20px;margin:0;flex:none}.wheel-owner .check span{font-weight:600}.hero-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.hero-chip{padding:6px 12px;border-radius:999px;background:#fff;color:var(--ink, #2d3142);text-decoration:none;font-weight:600;font-size:14px;box-shadow:0 2px 10px #2d31421a;transition:transform .15s,box-shadow .15s}.hero-chip:hover{transform:translateY(-2px);box-shadow:0 6px 16px #2d314229}.challenges{background:linear-gradient(180deg,#fff,#f7f2ff 55%,#fff4ec)}.challenges .eyebrow{margin-bottom:6px}.challenge-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.challenge{display:flex;flex-direction:column;background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 10px 30px #2d31421a;transition:transform .2s,box-shadow .2s}.challenge:hover{transform:translateY(-4px);box-shadow:0 16px 40px #2d314229}.challenge-art{height:200px;display:grid;place-items:center}.challenge-art svg{width:100%;height:100%}.challenge-wheel .challenge-art{background:radial-gradient(circle at 50% 60%,#fff3e6,#ffd9bf)}.challenge-ghosts .challenge-art{background:radial-gradient(circle at 50% 40%,#3e4378,#1f2147)}.challenge-gifts .challenge-art{background:radial-gradient(circle at 50% 60%,#fff8df,#ffe0a8)}.challenge-lava .challenge-art{background:radial-gradient(circle at 50% 30%,#fff1d6,#ffc58f)}.challenge-lava .challenge-points li:before{background:#ff7a1a}.ch-lava-surface{animation:ch-lava 2.4s ease-in-out infinite}@keyframes ch-lava{50%{translate:-20px 0}}.ch-wheel{padding:16px}.ch-wheel-spin{animation:ch-spin 14s linear infinite;transform-origin:0 0}.ch-float{animation:ch-float 3.2s ease-in-out infinite}.ch-float.b{animation-delay:-1.1s;animation-duration:3.8s}.ch-float.c{animation-delay:-2s;animation-duration:2.9s}.ch-crown{filter:drop-shadow(0 0 8px rgba(160,190,255,.9))}.ch-sparkles{animation:ch-twinkle 1.8s ease-in-out infinite}@keyframes ch-spin{to{transform:rotate(360deg)}}@keyframes ch-float{50%{translate:0 -10px}}@keyframes ch-twinkle{50%{opacity:.35}}@media(prefers-reduced-motion:reduce){.ch-wheel-spin,.ch-float,.ch-sparkles,.ch-lava-surface{animation:none}}.challenge-body{padding:20px 22px 22px;display:flex;flex-direction:column;gap:10px;flex:1}.challenge-body h3{margin:0;font-size:21px}.challenge-lead{margin:0;color:#4a4f60;line-height:1.5}.challenge-points{margin:0;padding:0;list-style:none;display:grid;gap:8px}.challenge-points li{position:relative;padding-left:20px;line-height:1.45;font-size:15px;color:#4a4f60}.challenge-points li:before{content:"";position:absolute;left:4px;top:8px;width:8px;height:8px;border-radius:50%;background:var(--accent)}.challenge-ghosts .challenge-points li:before{background:#8b93ff}.challenge-gifts .challenge-points li:before{background:#e0a800}.challenge-points b{color:#2d3142}.challenge-prize{margin:auto 0 0;padding:10px 12px;border-radius:12px;background:#f6f2ec;font-size:14px;font-weight:600;color:#4a4f60}.challenge-cta{margin-top:24px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:20px 24px;border-radius:20px;background:#2d3142;color:#fff}.challenge-cta strong{font-size:18px}.challenge-cta p{margin:4px 0 0;color:#fffc}@media(max-width:760px){.challenge-grid{grid-template-columns:1fr;max-width:560px;margin:0 auto}}.logic-move{display:grid;gap:6px}#logic-panel .field{display:grid;gap:3px;font-size:13px}.lava-point.done{box-shadow:inset 0 0 0 2px #36b37e}.lava-board{bottom:auto;top:200px}body.lava-room #logic-panel{right:376px}.lava-king{background:linear-gradient(135deg,#fff1d6,#ffd9c2);box-shadow:inset 0 0 0 2px #ffb070,0 6px 24px #ff7a1a59}.lava-king small{color:#b3501a}.lava-king span{color:#c4401a}
