.guestbook{max-width:640px;margin:20px auto}.guestbook-form{display:flex;flex-direction:column;gap:10px;margin-top:10px}.gb-field{display:flex;flex-direction:column;gap:4px;position:relative}.gb-field label{font-size:.8rem;color:var(--muted)}.gb-field input,.gb-field textarea{background:#0b1220;color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:9px 10px;font:inherit;resize:vertical}.gb-field input:focus,.gb-field textarea:focus{outline:2px solid #2563eb;outline-offset:1px}.gb-field input:disabled,.gb-field textarea:disabled{opacity:.6}.gb-counter{align-self:flex-end;font-size:.7rem;color:var(--muted)}.gb-actions{display:flex}.gb-status{min-height:1.2em;margin:2px 0 0;font-size:.85rem}.gb-ok{color:#86efac}.guestbook-wall{display:flex;flex-direction:column;gap:10px;margin-top:14px}.gb-card{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:10px 12px;animation:fadeIn .28s ease}.gb-card-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap}.gb-name{font-weight:700}.gb-time{font-size:.72rem;white-space:nowrap}.gb-message{margin:6px 0 0;white-space:pre-wrap;word-break:break-word;line-height:1.4}.tut-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px;background:#020617b8;animation:tutFade .18s ease}.tut-panel{animation:tutFade .18s ease}.tut-dialog{width:100%;max-width:560px;max-height:min(88vh,720px);overflow-y:auto;display:flex;flex-direction:column;gap:12px;background:var(--panel, #1e293b);border:1px solid var(--line, #334155);border-radius:14px;padding:18px 20px 16px;color:var(--ink, #e2e8f0);box-shadow:0 20px 60px #0000008c;outline:none}.tut-panel .tut-dialog{max-width:none;box-shadow:none;animation:none}.tut-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.tut-kicker{font-size:.72rem;font-weight:700;letter-spacing:.04em;color:var(--muted, #94a3b8);text-transform:uppercase}.tut-close{background:transparent;border:0;color:var(--muted, #94a3b8);font-size:1.05rem;cursor:pointer;padding:4px 8px;line-height:1;border-radius:6px;transition:color .15s,background .15s}.tut-close:hover{color:var(--ink, #e2e8f0);background:#ffffff0f}.tut-title{margin:0;font-size:1.35rem;line-height:1.25}.tut-body{display:flex;flex-direction:column;gap:10px;font-size:.92rem;line-height:1.5}.tut-lead{margin:0;font-weight:700;color:#fbbf24;font-size:.95rem}.tut-body p{margin:0}.tut-bullets{margin:0;padding-left:1.15em;display:flex;flex-direction:column;gap:6px}.tut-bullets li{line-height:1.4}.tut-svg{display:block;width:100%;height:auto;color:var(--muted, #94a3b8)}.tut-zones{margin:2px 0}.tut-svg-label{fill:currentColor;font-family:inherit}.tut-fork-row{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;margin-top:4px}.tut-fork{max-width:240px}.tut-road-main{fill:none;stroke:var(--line, #334155);stroke-width:9;stroke-linecap:round}.tut-road-branch{fill:none;stroke:#fb923c;stroke-width:7;stroke-dasharray:9 6;stroke-linecap:round}.tut-node{fill:#0f172a;stroke:var(--muted, #94a3b8);stroke-width:2}.tut-branch-name{fill:#fb923c}.tut-dice-demo{display:flex;align-items:center;gap:10px;margin:4px 0;flex-wrap:wrap}.tut-die{width:44px;height:44px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;font-weight:800;border-radius:10px;border:2px solid var(--muted, #94a3b8);background:#f8fafc;color:#0f172a}.tut-die-picked{border-color:#22c55e;box-shadow:0 0 0 3px #22c55e59}.tut-dice-arrow{font-size:1.3rem;color:var(--muted, #94a3b8)}.tut-dice-result{font-weight:700;color:#22c55e}.tut-space-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px}.tut-space-card{display:flex;gap:9px;align-items:flex-start;background:#02061759;border:1px solid var(--line, #334155);border-radius:10px;padding:8px 10px}.tut-space-icon{font-size:1.4rem;line-height:1.3;flex:none}.tut-space-card b{display:block;margin-bottom:2px}.tut-space-card p{margin:0;font-size:.82rem;color:var(--muted, #94a3b8);line-height:1.4}.tut-mode-legend{display:flex;flex-direction:column;gap:7px}.tut-mode-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.tut-mode-tag{display:inline-block;font-size:.66rem;font-weight:700;letter-spacing:.03em;padding:2px 8px;border-radius:999px;white-space:nowrap}.tut-mode-SIMUL{background:#1e40af;color:#dbeafe}.tut-mode-SOLO{background:#7c2d12;color:#fed7aa}.tut-mode-SENSOR{background:#4c1d95;color:#ede9fe}.tut-mode-hint{font-size:.8rem;color:var(--muted, #94a3b8)}.tut-mg-examples{display:flex;flex-direction:column;gap:6px;margin-top:2px}.tut-mg-chip{display:flex;flex-direction:column;gap:1px;background:#02061759;border:1px solid var(--line, #334155);border-radius:8px;padding:6px 10px;font-size:.82rem}.tut-mg-chip span{color:var(--muted, #94a3b8)}.tut-leyenda-list{list-style:none;margin:0;padding:0;max-height:220px;overflow-y:auto;display:flex;flex-direction:column;gap:7px}.tut-leyenda-list li{background:#312e81;border:1px solid #4f46e5;border-radius:8px;padding:7px 10px;font-size:.85rem;line-height:1.4}.tut-score-rows{margin:4px 0 0;display:grid;grid-template-columns:auto 1fr;gap:4px 12px}.tut-score-rows dt{font-weight:700;white-space:nowrap}.tut-score-rows dd{margin:0;color:var(--muted, #94a3b8)}.tut-modes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px}.tut-mode-card{background:#02061759;border:1px solid var(--line, #334155);border-radius:10px;padding:8px 10px}.tut-mode-card b{display:block;margin-bottom:3px}.tut-mode-card p{margin:0;font-size:.82rem;color:var(--muted, #94a3b8);line-height:1.4}.tut-dots{display:flex;gap:6px;justify-content:center;padding:2px 0}.tut-dot{width:9px;height:9px;border-radius:999px;padding:0;border:1px solid var(--muted, #94a3b8);background:transparent;cursor:pointer;transition:background .15s,transform .15s,border-color .15s}.tut-dot:hover{transform:scale(1.2)}.tut-dot.active{background:#2563eb;border-color:#2563eb}.tut-nav{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.tut-nav-main{display:flex;gap:8px}.tut-skip{background:transparent;border:0;color:var(--muted, #94a3b8);font-size:.82rem;cursor:pointer;padding:8px 4px;text-decoration:underline;text-underline-offset:2px}.tut-skip:hover{color:var(--ink, #e2e8f0)}.tut-back{background:#334155;color:var(--ink, #e2e8f0);border:0;padding:10px 16px;border-radius:9px;cursor:pointer;font-size:.9rem;transition:background .18s}.tut-back:hover:not(:disabled){background:#475569}.tut-back:disabled{opacity:.4;cursor:not-allowed}.tut-next.primary{background:#2563eb;color:#fff;border:0;padding:10px 20px;border-radius:9px;cursor:pointer;font-size:.9rem;font-weight:700;transition:background .18s,transform .18s}.tut-next.primary:hover{background:#1d4ed8;transform:translateY(-1px)}@keyframes tutFade{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.tut-overlay,.tut-panel{animation-duration:.01ms}}@media(max-width:560px){.tut-dialog{padding:14px 14px 12px;border-radius:12px}.tut-title{font-size:1.15rem}.tut-nav{flex-direction:column-reverse;align-items:stretch}.tut-nav-main{justify-content:space-between}.tut-skip{text-align:center}}.tut-leyenda-list.scroll{scrollbar-width:thin;scrollbar-color:#475569 transparent}.tut-leyenda-list.scroll::-webkit-scrollbar{width:8px}.tut-leyenda-list.scroll::-webkit-scrollbar-thumb{background:#475569;border-radius:999px}:root{--bg:#0f172a;--panel:#1e293b;--ink:#e2e8f0;--muted:#94a3b8;--line:#334155;--gap: 12px;--cell-h: 150px;--cols: 3}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:ui-sans-serif,system-ui,Segoe UI,sans-serif}.app{max-width:900px;margin:0 auto;padding:12px 16px 40px}.scroll{scrollbar-width:thin;scrollbar-color:#475569 transparent}.scroll::-webkit-scrollbar{width:10px;height:10px}.scroll::-webkit-scrollbar-track{background:#0f172a99;border-radius:999px}.scroll::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#64748b,#475569);border-radius:999px;border:2px solid rgba(15,23,42,.8)}.scroll::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#94a3b8,#64748b)}header{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}h1{margin:.2em 0;font-size:1.5rem}h1 small{color:var(--muted);font-size:.6em}.round{color:var(--muted);font-size:.9rem}.final{color:#fbbf24}.log-toggle{position:relative;background:var(--panel);border:1px solid var(--line);color:var(--ink);font-size:1.3rem;line-height:1;padding:9px 12px;border-radius:10px;cursor:pointer;transition:background .18s,transform .18s,border-color .18s}.log-toggle:hover{background:#293548;transform:translateY(-1px)}.log-toggle.active{background:#2563eb;border-color:#2563eb}.log-toggle .badge{position:absolute;top:-6px;right:-6px;background:#ef4444;color:#fff;font-size:.62rem;font-weight:700;min-width:18px;height:18px;padding:0 5px;border-radius:999px;display:flex;align-items:center;justify-content:center}.log-drawer{overflow:hidden;max-height:0;opacity:0;border:1px solid transparent;border-radius:10px;margin:0;padding:0 12px;transition:max-height .32s ease,opacity .22s ease,margin .32s ease,padding .32s ease}.log-drawer.open{max-height:340px;opacity:1;margin:10px 0;padding:10px 12px;background:var(--panel);border-color:var(--line)}.log-drawer-head{display:flex;justify-content:space-between;align-items:center}.log-drawer-head h4{margin:0 0 6px}.log-drawer .close{background:transparent;border:0;color:var(--muted);font-size:1rem;cursor:pointer}.log-drawer ul{list-style:none;margin:0;padding:0;max-height:265px;overflow-y:auto;font-size:.85rem}.log-drawer li{padding:5px 4px;border-bottom:1px solid var(--line);animation:fadeIn .25s ease}.leyenda{background:#312e81;border:1px solid #4f46e5;padding:9px 12px;border-radius:8px;margin:10px 0;animation:fadeIn .35s ease}.zones{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}.zone-chip{font-size:.72rem;color:#0f172a;padding:3px 9px;border-radius:999px;font-weight:600}.track-wrap{max-height:62vh;overflow-y:auto;overflow-x:hidden;padding:6px 10px 6px 6px;margin:10px 0 16px;border:1px solid var(--line);border-radius:12px;background:#02061773}.track{position:relative;display:grid;grid-template-columns:repeat(var(--cols),1fr);gap:var(--gap)}.space{position:relative;height:var(--cell-h);border:2px solid var(--zone);border-radius:12px;background:linear-gradient(160deg,#1e293bf2,#0f172af2);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;transition:transform .18s,box-shadow .18s}.space:hover{transform:translateY(-2px);box-shadow:0 6px 18px #00000073}.space-n{position:absolute;top:6px;left:9px;font-size:.72rem;color:var(--muted);font-weight:700}.space-icon{font-size:2.1rem;line-height:1}.space-label{font-size:.68rem;color:var(--muted);text-align:center;padding:0 4px}.kind-META{border-width:3px}.kind-LANDMARK .space-icon{animation:twinkle 2.4s ease-in-out infinite}.pawn-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.pawn{--cell-w: calc((100% - (var(--cols) - 1) * var(--gap)) / var(--cols));position:absolute;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:800;color:#fff;border:2px solid rgba(255,255,255,.85);box-shadow:0 3px 10px #00000080;left:calc(var(--col) * (var(--cell-w) + var(--gap)) + var(--cell-w) / 2 - 15px + (var(--seat) - .5) * 20px);top:calc(var(--row) * (var(--cell-h) + var(--gap)) + var(--cell-h) - 44px);transition:left .55s cubic-bezier(.34,1.28,.64,1),top .55s cubic-bezier(.34,1.28,.64,1)}.pawn.trapped{border-color:#f87171;animation:shake 1.6s ease-in-out infinite}@keyframes twinkle{0%,to{opacity:1;transform:scale(1)}50%{opacity:.65;transform:scale(1.12)}}@keyframes shake{0%,to{rotate:0deg}25%{rotate:-9deg}75%{rotate:9deg}}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}@keyframes pop{0%{transform:scale(.85);opacity:0}to{transform:scale(1);opacity:1}}.panel{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:12px;margin:10px 0;animation:fadeIn .28s ease}.panel h3,.panel h4{margin:.2em 0 .5em}.minigame{border-color:#facc15;animation:pop .3s ease}button{font:inherit}button.primary{background:#2563eb;color:#fff;border:0;padding:11px 20px;border-radius:9px;cursor:pointer;font-size:1rem;transition:background .18s,transform .18s}button.primary:hover{background:#1d4ed8;transform:translateY(-1px)}.dice{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.die{width:56px;height:56px;font-size:1.5rem;font-weight:800;border-radius:12px;border:2px solid #64748b;background:#f8fafc;color:#0f172a;cursor:pointer;transition:transform .16s,box-shadow .16s;animation:pop .25s ease}.die:hover{transform:translateY(-3px) rotate(-4deg);box-shadow:0 6px 16px #00000080}.die.sum{width:auto;padding:0 16px;font-size:1rem}.hint{color:var(--muted)}.options{display:flex;gap:8px;flex-wrap:wrap}.options button{background:#f8fafc;color:#0f172a;border:0;padding:9px 15px;border-radius:8px;cursor:pointer;transition:transform .16s}.options button:hover{transform:translateY(-2px)}.muted{color:var(--muted)}table{width:100%;border-collapse:collapse;font-size:.9rem}th,td{text-align:left;padding:6px 8px;border-bottom:1px solid var(--line)}.seats{display:flex;gap:6px;align-items:center;padding:8px 16px;background:#0b1220;flex-wrap:wrap}.seats button{background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:6px;padding:5px 11px;cursor:pointer;transition:background .16s}.seats button.active{background:#2563eb;border-color:#2563eb}@media(max-width:620px){:root{--cell-h: 104px;--gap: 8px}.space-icon{font-size:1.6rem}.pawn{width:24px;height:24px;font-size:.68rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.kind-LANDMARK{padding:0;overflow:hidden;position:relative}.lm-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;opacity:.55;filter:saturate(.85) contrast(1.05);transition:opacity .25s,transform .35s}.space.kind-LANDMARK:hover .lm-img{opacity:.78;transform:scale(1.06)}.lm-badge{position:absolute;top:6px;right:8px;font-size:1.1rem;filter:drop-shadow(0 1px 3px rgba(0,0,0,.9));animation:twinkle 2.4s ease-in-out infinite}.lm-name{position:absolute;left:0;right:0;bottom:0;padding:5px 7px 6px;font-size:.72rem;font-weight:700;text-align:center;color:#fff;background:linear-gradient(to top,rgba(2,6,23,.95),rgba(2,6,23,.55) 70%,transparent);text-shadow:0 1px 3px rgba(0,0,0,.9)}.kind-LANDMARK .space-n{z-index:2;text-shadow:0 1px 3px rgba(0,0,0,.9);color:#e2e8f0}.navlabel{color:var(--muted);font-size:.85rem}.navlabel.sep{margin-left:10px}.hintline{font-size:.8rem}.seats input[type=range]{width:120px;accent-color:#2563eb}.seats .restart{margin-left:auto;background:#334155}.seats .restart:hover{background:#475569}.mode-tag{display:inline-block;font-size:.66rem;font-weight:700;letter-spacing:.03em;padding:2px 8px;border-radius:999px;margin-bottom:8px}.mode-SIMUL{background:#1e40af;color:#dbeafe}.mode-SOLO{background:#7c2d12;color:#fed7aa}.mode-SENSOR{background:#4c1d95;color:#ede9fe}.solo{display:flex;flex-direction:column;gap:10px;align-items:flex-start}.solo-hint{margin:0;color:var(--ink)}.icon-grid{display:flex;flex-wrap:wrap;gap:7px}.icon-chip{background:#0b1220;border:1px solid var(--line);color:var(--ink);padding:8px 12px;border-radius:9px;font-size:.86rem}.icon-chip.flash{animation:pop .3s ease;border-color:#facc15}.icon-chip.pick{cursor:pointer;transition:transform .14s,background .14s}.icon-chip.pick:hover{transform:translateY(-2px)}.icon-chip.pick.on{background:#2563eb;border-color:#3b82f6;color:#fff}.timer-bar{width:100%;max-width:340px;height:6px;background:#0b1220;border-radius:999px;overflow:hidden}.timer-bar i{display:block;height:100%;width:100%;background:linear-gradient(90deg,#22c55e,#facc15,#ef4444);transform-origin:left;animation:drain linear forwards}@keyframes drain{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.built{font-weight:700;letter-spacing:.02em;min-height:1.3em}.precision{position:relative;width:100%;max-width:340px;height:34px;background:#0b1220;border:1px solid var(--line);border-radius:9px;overflow:hidden}.precision .target{position:absolute;top:0;bottom:0;background:#22c55e59;border-left:2px solid #22c55e;border-right:2px solid #22c55e}.precision .marker{position:absolute;top:0;bottom:0;width:4px;background:#f8fafc;box-shadow:0 0 10px #fffc}.shake-count{font-size:2.4rem;font-weight:800}button.primary.big{padding:18px 44px;font-size:1.2rem}.map-wrap{max-height:66vh;overflow-y:auto;overflow-x:hidden;border:1px solid var(--line);border-radius:12px;background:radial-gradient(ellipse at 50% 0%,#16233d,#0b1220 70%);margin:10px 0 16px}.map{display:block;width:100%;height:auto}.road-casing{fill:none;stroke:#0b1220;stroke-width:34;stroke-linecap:round;stroke-linejoin:round}.road{fill:none;stroke:#334155;stroke-width:24;stroke-linecap:round;stroke-linejoin:round}.road.branch{stroke:#7c3f2e;stroke-dasharray:16 10}.zone-label{font-size:19px;font-weight:800;opacity:.5;letter-spacing:.04em}.node{cursor:default}.node circle{transition:stroke-width .18s}.node:hover circle{stroke-width:5}.node-icon{text-anchor:middle}.node-num{text-anchor:middle;font-size:13px;fill:#94a3b8;font-weight:700}.node-name{text-anchor:middle;font-size:12px;fill:#cbd5e1;font-weight:600}.branch-label{text-anchor:middle;font-size:15px;font-weight:800;fill:#fb923c}.node.fork circle{stroke-dasharray:6 4}.node.kind-LANDMARK .node-icon{animation:twinkle 2.4s ease-in-out infinite}.node.kind-META circle{stroke-width:5}.svg-pawn{transition:transform .6s cubic-bezier(.34,1.28,.64,1)}.svg-pawn .pawn-label{text-anchor:middle;font-size:14px;font-weight:800;fill:#fff}.svg-pawn.trapped circle{stroke:#f87171}.svg-pawn.me circle{stroke-width:3.5}.panel.route{border-color:#fb923c;animation:pop .3s ease}.map-inner{position:relative}.node{cursor:pointer;outline:none}.node .hit{pointer-events:all}.node.active circle:not(.hit){stroke-width:5}.node:focus-visible circle:not(.hit){stroke:#fff;stroke-width:5}.tip{position:absolute;z-index:20;width:250px;transform:translate(-50%,16px);background:#0b1220;border:1px solid var(--line);border-radius:12px;padding:10px 12px 11px;box-shadow:0 14px 34px #0000009e;pointer-events:none;animation:tipIn .16s ease}.tip.above{transform:translate(-50%,calc(-100% - 34px))}.tip.pinned{pointer-events:auto}@keyframes tipIn{0%{opacity:0;transform-origin:top center}to{opacity:1}}.tip-close{position:absolute;top:5px;right:6px;background:transparent;border:0;color:var(--muted);font-size:.95rem;cursor:pointer;padding:3px 6px;line-height:1}.tip-close:hover{color:var(--ink)}.tip-img{width:100%;height:78px;object-fit:cover;border-radius:7px;margin-bottom:8px;opacity:.9}.tip-head{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.tip-title{font-weight:800;font-size:.97rem}.tip-zone{font-size:.6rem;font-weight:700;color:#0f172a;padding:2px 7px;border-radius:999px}.tip-sub{color:var(--muted);font-size:.72rem;margin-top:2px}.tip-fork{color:#fb923c}.tip-rule{margin:7px 0 0;font-size:.8rem;line-height:1.4}.tip-flavor{margin:7px 0 0;font-size:.8rem;font-style:italic;color:#cbd5e1;line-height:1.4}.tip-branch{margin:6px 0 0;font-size:.74rem;color:#fb923c}.tip-here{margin-top:8px;display:flex;align-items:center;gap:5px;font-size:.74rem;color:var(--muted);flex-wrap:wrap}.tip-pawn{display:inline-flex;align-items:center;justify-content:center;min-width:19px;height:19px;padding:0 4px;border-radius:999px;color:#fff;font-weight:800;font-size:.68rem}@media(max-width:620px){.tip{width:min(74vw,250px)}}.lobby{max-width:520px;margin:20px auto}.lobby-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:10px}.code-input{text-transform:uppercase;letter-spacing:.22em;font-weight:800;text-align:center;width:120px;padding:9px;border-radius:8px;border:1px solid var(--line);background:#0b1220;color:var(--ink);font-size:1rem}.room-code{font-family:ui-monospace,monospace;letter-spacing:.2em;background:#1e40af;color:#dbeafe;padding:2px 12px;border-radius:8px;margin-left:6px}.seat-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}.seat-btn{padding:12px;border-radius:9px;border:1px solid var(--line);background:var(--panel);color:var(--ink);cursor:pointer;font-weight:700;transition:background .15s}.seat-btn:hover:not(:disabled){background:#293548}.seat-btn.taken{opacity:.55;cursor:not-allowed}.lobby-err{color:#fca5a5;font-size:.85rem;margin-top:8px}.muted.small{font-size:.78rem}.social-space{--sb-bg: #0b1220;--sb-panel: #131c31;--sb-ink: #e2e8f0;--sb-muted: #94a3b8;--sb-line: #2b3852;--sb-accent: #22c55e;max-width:1100px;margin:0 auto;padding:12px 16px 32px;color:var(--sb-ink);font-family:ui-sans-serif,system-ui,Segoe UI,sans-serif}.social-panel{background:var(--sb-panel);border:1px solid var(--sb-line);border-radius:12px;padding:14px;margin:10px 0}.social-panel h3,.social-panel h4{margin:0 0 10px}.social-muted{color:var(--sb-muted);font-size:.88rem}.social-err{color:#fca5a5;font-size:.88rem}.social-err.small{font-size:.8rem}.social-btn{background:#1e293b;color:var(--sb-ink);border:1px solid var(--sb-line);border-radius:8px;padding:9px 14px;cursor:pointer;font:inherit;transition:background .15s,transform .15s}.social-btn:hover:not(:disabled){background:#26344d;transform:translateY(-1px)}.social-btn:disabled{opacity:.5;cursor:not-allowed}.social-btn.primary{background:var(--sb-accent);border-color:var(--sb-accent);color:#06210f;font-weight:700}.social-btn.primary:hover:not(:disabled){background:#16a34a}.social-btn.small{padding:6px 10px;font-size:.82rem}.social-btn.active{background:#2563eb;border-color:#2563eb;color:#fff}.social-setup{max-width:520px;margin:20px auto}.social-setup-row{display:flex;align-items:center;gap:14px;margin-bottom:12px}.social-avatar-preview{border-radius:12px;border:2px solid var(--sb-line);background:#0000;image-rendering:pixelated}.social-setup-fields{display:flex;flex-direction:column;gap:8px;flex:1}.social-name-input{padding:9px 11px;border-radius:8px;border:1px solid var(--sb-line);background:var(--sb-bg);color:var(--sb-ink);font-size:1rem}.social-swatch-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:8px 0}.social-label{color:var(--sb-muted);font-size:.78rem;width:52px;flex:none}.social-swatch{width:30px;height:30px;border-radius:8px;border:2px solid var(--sb-line);background:#1e293b;color:var(--sb-ink);cursor:pointer;transition:transform .12s,border-color .12s}.social-swatch:hover{transform:translateY(-1px)}.social-swatch.active{border-color:var(--sb-accent)}.social-swatch.social-color{border-color:transparent}.social-swatch.social-color.active{border-color:#fff}.social-setup .social-btn.primary{margin-top:10px;width:100%}.social-layout{display:grid;grid-template-columns:1fr 300px;gap:14px;align-items:start}@media(max-width:820px){.social-layout{grid-template-columns:1fr}}.social-room-bar{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.social-map-wrap{border:1px solid var(--sb-line);border-radius:16px;overflow:hidden;background:var(--sb-bg)}.social-map{display:block;width:100%;height:auto;cursor:crosshair}.social-nametag{fill:#fff;font-size:13px;font-weight:700;text-anchor:middle;paint-order:stroke;stroke:#0b1220;stroke-width:3px}.social-hint{color:var(--sb-muted);font-size:.82rem;margin:8px 2px 0}.social-roster-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;max-height:220px;overflow-y:auto}.social-roster-list li{display:flex;align-items:center;gap:8px;font-size:.88rem}.social-roster-list li img{border-radius:5px;image-rendering:pixelated}.social-roster-list li.me{font-weight:700;color:var(--sb-accent)}.social-chat-log{max-height:220px;overflow-y:auto;display:flex;flex-direction:column;gap:4px;margin-bottom:8px;font-size:.86rem}.social-chat-line{word-break:break-word}.social-chat-input-row{display:flex;gap:6px}.social-chat-input-row input{flex:1;padding:8px 10px;border-radius:8px;border:1px solid var(--sb-line);background:var(--sb-bg);color:var(--sb-ink);font:inherit}.help-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#020617b8;display:flex;align-items:center;justify-content:center;padding:16px;animation:helpFadeIn .18s ease}.help-panel{width:min(720px,100%);max-height:min(84vh,780px);display:flex;flex-direction:column;padding:18px 18px 14px;gap:4px}.help-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.help-head h2{margin:0;font-size:1.2rem}.help-close{background:var(--panel);border:1px solid var(--line);color:var(--ink);border-radius:8px;width:34px;height:34px;flex:0 0 auto;cursor:pointer;font-size:1rem;line-height:1;transition:background .16s,transform .16s}.help-close:hover{background:#293548;transform:translateY(-1px)}.help-search-wrap{margin:8px 0 10px}.help-search-label{display:block;font-size:.78rem;color:var(--muted);margin-bottom:5px}.help-search{width:100%;padding:10px 12px;border-radius:9px;border:1px solid var(--line);background:#0b1220;color:var(--ink);font-size:.95rem}.help-search:focus-visible{outline:2px solid #2563eb;outline-offset:1px}.help-body{display:flex;gap:14px;min-height:0;flex:1 1 auto}.help-tabs{display:flex;flex-direction:column;gap:4px;flex:0 0 168px}.help-tab{display:flex;align-items:center;gap:6px;text-align:left;background:transparent;border:1px solid transparent;color:var(--muted);border-radius:8px;padding:8px 10px;cursor:pointer;font-size:.86rem;transition:background .14s,color .14s,border-color .14s}.help-tab:hover{background:#1e293b;color:var(--ink)}.help-tab.active{background:#2563eb;border-color:#2563eb;color:#fff}.help-tab:focus-visible{outline:2px solid #fff;outline-offset:1px}.help-results{flex:1 1 auto;min-width:0;overflow-y:auto;padding-right:4px}.help-count{margin:0 0 8px;font-size:.82rem}.help-group{margin-bottom:14px}.help-group-title{margin:0 0 6px;font-size:.88rem;color:var(--muted)}.help-list{list-style:none;margin:0;padding:0}.help-item{border:1px solid var(--line);border-radius:9px;margin-bottom:7px;background:#0f172a80;overflow:hidden}.help-q{width:100%;display:flex;align-items:flex-start;gap:9px;text-align:left;background:transparent;border:0;color:var(--ink);cursor:pointer;padding:10px 12px;font-size:.92rem;font-weight:600}.help-q:hover{background:#ffffff0a}.help-q:focus-visible{outline:2px solid #2563eb;outline-offset:-2px}.help-caret{flex:0 0 auto;width:1.1em;text-align:center;color:#60a5fa;font-weight:800}.help-q-text{flex:1 1 auto}.help-a{padding:0 12px 12px 33px}.help-a p{margin:0;color:var(--ink);font-size:.88rem;line-height:1.5}.help-a[hidden]{display:none}.help-empty{margin:10px 2px}.help-linklike{background:transparent;border:0;color:#60a5fa;cursor:pointer;padding:0;font:inherit;text-decoration:underline}.help-footer{border-top:1px solid var(--line);margin-top:10px;padding-top:10px}.help-footer p{margin:0;font-size:.8rem;color:var(--muted);line-height:1.5}mark{background:#facc15;color:#0f172a;border-radius:3px;padding:0 1px}@keyframes helpFadeIn{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.help-overlay{animation-duration:.01ms}}@media(max-width:640px){.help-panel{max-height:92vh;padding:14px 12px 10px}.help-body{flex-direction:column}.help-tabs{flex-direction:row;flex-wrap:wrap;flex:0 0 auto}.help-tab{flex:1 1 auto;justify-content:center}}
