*{box-sizing:border-box}body{margin:0;font-family:system-ui,Segoe UI,sans-serif;background:#e2e8f0;color:#0f172a}.shell{max-width:560px;margin:0 auto;padding:1.25rem;position:relative}.level-control{display:inline-flex;align-items:center;gap:0;flex-shrink:0}.level-strip{display:inline-flex;align-items:center;gap:.12rem;flex-shrink:0;background:none;border:none;box-shadow:none;border-radius:0}.level-strip__label{display:inline-flex;align-items:center;justify-content:center;gap:.22em;padding:.2rem .05rem;font-size:1rem;font-weight:600;letter-spacing:.02em;min-width:0;-webkit-user-select:none;user-select:none;color:#1e293b}.level-strip__word{font-weight:500;color:#94a3b8}.level-strip__num{font-weight:800;font-size:inherit;line-height:1;color:inherit;font-variant-numeric:tabular-nums}.level-strip__nav{display:inline-flex;align-items:center;justify-content:center;margin:0;padding:.15rem;border:0;border-radius:0;-moz-appearance:none;appearance:none;-webkit-appearance:none;background:transparent;color:#334155;cursor:pointer;font-family:inherit;line-height:0;transition:color .12s ease,opacity .12s ease;-webkit-tap-highlight-color:transparent}.level-strip__icon{display:block;width:1.35rem;height:1.35rem;flex-shrink:0;pointer-events:none}.level-strip__nav:hover:not([aria-disabled=true]){color:#0f172a}.level-strip__nav:active:not([aria-disabled=true]){color:#020617;opacity:1}.level-strip__nav:focus-visible{outline:2px solid rgba(59,130,246,.45);outline-offset:3px}.level-strip__nav[aria-disabled=true]{color:#cbd5e1;cursor:not-allowed}.level-tri{width:26px;height:26px;border-radius:9px;border:1px solid rgba(15,23,42,.14);background:#fff;color:#0f172a;font-weight:900;cursor:pointer;line-height:1;box-shadow:0 4px 10px #0f172a1f}.level-tri[aria-disabled=true]{opacity:1;color:#94a3b8;border-color:#0f172a14;background:#f8fafcf2;cursor:not-allowed}.level-popup{position:absolute;top:56px;right:1.25rem;width:min(320px,calc(100% - 2.5rem));border-radius:12px;background:#fffffff5;border:1px solid rgba(15,23,42,.12);box-shadow:0 18px 46px #0f172a38;padding:.6rem;z-index:20;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.level-popup.hidden{display:none}.level-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(42px,1fr));gap:.4rem}.level-cell{width:100%;height:38px;border-radius:10px;border:1px solid rgba(15,23,42,.14);background:#fff;color:#0f172a;font-weight:900;cursor:pointer;box-shadow:0 6px 16px #0f172a14}.level-cell.active{border-color:#3b82f68c;background:#3b82f614}.title-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:nowrap;margin-bottom:.5rem}@media(max-width:520px){.title-row{align-items:flex-start}.title-row__brand{flex-direction:column;align-items:flex-start;gap:.4rem}}.title-row__brand{display:flex;align-items:baseline;gap:.45rem;min-width:0;flex:1}.title-row__brand h1{font-size:1.35rem;margin:0;min-width:0}.difficulty-trigger{flex-shrink:0;border:1px solid rgba(15,23,42,.1);background:#94a3b861;color:#64748b;font-size:.72rem;font-weight:800;padding:.28rem .5rem;border-radius:8px;cursor:pointer;white-space:nowrap;line-height:1.2}.difficulty-trigger:hover{background:#94a3b885;color:#475569}.shell-footer{margin-top:2rem}.shell-footer--meta{padding-top:1.1rem;padding-bottom:calc(.35rem + env(safe-area-inset-bottom,0px));text-align:center;font-size:.8125rem;line-height:1.5;color:#64748b;border-top:1px solid rgba(15,23,42,.07)}.shell-footer__modes{display:flex;align-items:center;justify-content:center;flex-wrap:wrap}.shell-footer__mode-toggle{display:inline-flex;padding:3px;border-radius:12px;background:#ffffffa6;border:1px solid rgba(15,23,42,.1);box-shadow:0 4px 14px #0f172a14}.shell-footer__mode-btn{display:inline-flex;align-items:center;justify-content:center;min-width:6.25rem;padding:.48rem .95rem;border:0;border-radius:9px;font-size:.8rem;font-weight:700;letter-spacing:.02em;color:#334155;text-decoration:none;background:transparent;cursor:pointer;transition:background .12s ease,color .12s ease,box-shadow .12s ease}.shell-footer__mode-btn:hover{background:#0f172a14;color:#0f172a}.shell-footer__mode-btn:focus-visible{outline:2px solid rgba(99,102,241,.55);outline-offset:2px;z-index:1}.shell-footer__mode-btn--on{color:#0f172a;background:#fff;box-shadow:0 1px 3px #0f172a1f;cursor:default}.shell-footer__mode-btn--on:hover{background:#fff;color:#0f172a}.shell-footer__mode-btn--online,.shell-footer__mode-btn--online:visited{color:#fafafa;background:#111827}.shell-footer__mode-btn--online:hover{background:#0f172a;color:#fafafa}.shell-footer__mode-btn--online:focus-visible{outline:2px solid rgba(99,102,241,.65);outline-offset:2px;z-index:1}.shell-footer__mode-btn--online.shell-footer__mode-btn--on{color:#fafafa;background:#020617;box-shadow:0 1px 4px #00000047;cursor:default}.shell-footer__mode-btn--online.shell-footer__mode-btn--on:hover{background:#020617;color:#fafafa}.shell-footer__mode-btn--workshop,.shell-footer__mode-btn--workshop:visited{color:#0b1220;background:#c7d2fe}.shell-footer__mode-btn--workshop:hover{background:#a5b4fc;color:#020617}.shell-mode-rail{width:min(300px,100%)}.shell-mode-rail__labels{display:grid;grid-template-columns:repeat(3,minmax(64px,1fr));gap:.15rem;margin-bottom:.2rem}.shell-mode-rail__label{justify-self:center;font-size:.92rem;font-weight:800;color:#475569;text-decoration:none;transition:color .12s ease,transform .12s ease}.shell-mode-rail__label:hover{color:#334155;transform:translateY(-1px)}.shell-mode-rail__label--active{color:#020617}.shell-mode-rail__label--disabled{color:#94a3b8;cursor:default;pointer-events:none;transform:none}.shell-mode-rail__track-wrap{position:relative;height:28px;display:grid;grid-template-columns:repeat(3,1fr);align-items:center}.shell-mode-rail__track{position:absolute;left:16%;right:16%;top:50%;height:4px;border-radius:999px;transform:translateY(-50%);background:#0f172a3d}.shell-mode-rail__dot{justify-self:center;width:12px;height:12px;border-radius:999px;background:#94a3b8;border:2px solid #f8fafc;position:relative;z-index:1}.shell-mode-rail__dot--active{background:#111827;transform:scale(1.12)}.shell-mode-rail__pointer{position:absolute;top:-6px;left:0;transform:translate(-50%);border:none;background:transparent;color:#111827;font-size:.9rem;font-weight:900;line-height:1;padding:0;cursor:grab;z-index:2;-webkit-user-select:none;user-select:none}.shell-mode-rail__pointer:active{cursor:grabbing}.shell-footer__go{color:#111827;text-decoration:none;text-underline-offset:3px}.shell-footer__go:hover{text-decoration:underline}.shell-footer__go:focus-visible{outline:2px solid rgba(99,102,241,.55);outline-offset:3px;border-radius:4px}.shell-footer__go--quiet{color:#334155;font-weight:500}.shell-footer__mid{color:#94a3b8;-webkit-user-select:none;user-select:none}.shell-footer__credit{margin:.55rem 0 0;font-size:.72rem;font-weight:600;color:#94a3b8;letter-spacing:.05em}.shell-footer__contact{margin:.25rem 0 0;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.35rem;font-size:.75rem}.shell-footer__contact-label{color:#94a3b8;font-weight:600}body.difficulty-modal-open{overflow:hidden}.difficulty-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;display:flex;align-items:center;justify-content:center;padding:1rem}.difficulty-modal.hidden{display:none!important}.difficulty-modal__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172a7a}.difficulty-modal__panel{position:relative;z-index:1;width:min(440px,100%);max-height:min(88vh,640px);overflow:auto;background:#fff;border-radius:16px;box-shadow:0 24px 56px #0f172a4d;border:1px solid rgba(15,23,42,.1);padding:1rem 1.15rem 1.15rem}.difficulty-modal__head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.85rem}.difficulty-modal__title{margin:0;font-size:1.12rem;font-weight:900}.difficulty-modal__close{width:36px;height:36px;border:none;border-radius:10px;background:#0f172a0f;color:#0f172a;font-size:1.35rem;line-height:1;cursor:pointer;flex-shrink:0}.difficulty-modal__close:hover{background:#0f172a1a}.difficulty-modal__options{display:flex;flex-direction:column;align-items:stretch;width:100%;gap:.55rem}.difficulty-option{display:block;box-sizing:border-box;width:100%;max-width:100%;margin-left:0;margin-right:0;text-align:left;border-radius:12px;border:1px solid rgba(15,23,42,.12);background:#f8fafcf2;padding:.75rem .85rem;cursor:pointer;color:#0f172a;font:inherit;transition:border-color .2s ease,background .22s ease}.difficulty-option:hover{border-color:#3b82f659}.difficulty-option--active:not(.difficulty-option--expanded){border-color:#3b82f673;background:#3b82f60f}.difficulty-option--expanded{text-align:center;border-color:#3b82f68c;background:#3b82f614;box-shadow:0 10px 28px #3b82f61a}.difficulty-option__head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;width:100%;margin-bottom:0}.difficulty-option--expanded .difficulty-option__head{justify-content:center;flex-wrap:wrap;margin-bottom:.15rem}.difficulty-option__title{font-weight:900;font-size:1rem}.difficulty-option__join{display:inline-block;vertical-align:baseline;max-width:0;opacity:0;overflow:hidden;font-weight:900;font-size:1rem;color:#94a3b8;-webkit-user-select:none;user-select:none;white-space:nowrap;transition:max-width .22s ease-out,opacity .18s ease-out}.difficulty-option--expanded .difficulty-option__join{max-width:.75em;opacity:1}.difficulty-option__model-tag{flex-shrink:0;font-size:.82rem;font-weight:700;color:#64748b}.difficulty-option__details{display:grid;grid-template-rows:0fr;padding-top:0;transition:grid-template-rows .2s ease-in,padding-top .18s ease-in}.difficulty-option__details-inner{min-height:0;overflow:hidden}.difficulty-option--expanded .difficulty-option__details{grid-template-rows:1fr;padding-top:.42rem;transition:grid-template-rows .34s ease-out,padding-top .28s ease-out}.difficulty-option__bullets{margin:.15rem auto 0;padding-left:1.15rem;font-size:.82rem;color:#334155;line-height:1.45;text-align:left;width:fit-content;max-width:100%}.difficulty-option__warn{margin:.45rem 0 0;font-size:.84rem;font-weight:800;color:#b91c1c;text-align:center}.difficulty-option--hell .difficulty-option__warn{color:#dc2626}.level-tag{display:inline-flex;align-items:center;gap:.45rem;font-size:.9rem;font-weight:600;color:#0f172a;white-space:nowrap;flex-shrink:0;background:transparent;border:none;padding:0;border-radius:0;box-shadow:none}.level-title{font-weight:700}.level-num{display:inline-flex;align-items:center;justify-content:center;min-width:1.45rem;height:1.45rem;padding:0 .25rem;border-radius:0;background:#0f172a14;border:1px solid rgba(15,23,42,.18);font-weight:800;line-height:1}.stage{display:flex;align-items:stretch;gap:.6rem}.eval-bar{width:30px;border-radius:0;background:#0b1220;position:relative;overflow:hidden;box-shadow:0 8px 24px #0f172a1f;flex:0 0 auto}.eval-bar-pct{position:absolute;top:4px;left:50%;transform:translate(-50%);font-size:10px;font-weight:800;letter-spacing:.2px;color:#ffffffeb;text-shadow:0 1px 2px rgba(0,0,0,.35);pointer-events:none;-webkit-user-select:none;user-select:none;z-index:2}.eval-bar-fill{position:absolute;left:0;right:0;bottom:0;height:10%;background:#fff}.eval-bar-divider{position:absolute;left:0;right:0;height:1px;bottom:10%;background:#ffffff8c;transform:translateY(.5px)}.canvas-wrap{position:relative;flex:1 1 auto;min-width:0}.solo-assist-bubble{position:absolute;right:10px;bottom:10px;max-width:15rem;padding:0;margin:0;font-size:.92rem;line-height:1.38;font-weight:800;letter-spacing:.01em;color:#b91c1c;text-align:right;background:none;border:none;box-shadow:none;text-shadow:0 0 12px rgba(254,226,226,.95),0 1px 2px rgba(15,23,42,.25);z-index:7;pointer-events:none}.solo-assist-bubble.hidden{display:none}.canvas-help{position:absolute;top:10px;right:10px;width:30px;height:30px;border-radius:999px;border:1px solid rgba(15,23,42,.15);background:#ffffffeb;color:#0f172a;font-weight:800;font-size:15px;display:flex;align-items:center;justify-content:center;line-height:1;padding:0;cursor:pointer;z-index:8;box-shadow:0 4px 10px #0f172a2e}.canvas-help[data-quality=great],.canvas-help[data-quality=blunder]{width:40px;height:40px;font-size:18px}.canvas-help[data-quality=good],.canvas-help[data-quality=great]{background:#22c55e29;border-color:#22c55e59}.canvas-help[data-quality=interesting]{background:#3b82f629;border-color:#3b82f659}.canvas-help[data-quality=dubious]{background:#eab3082e;border-color:#eab30866}.canvas-help[data-quality=bad],.canvas-help[data-quality=blunder]{background:#ef444429;border-color:#ef444459}.canvas-help:active{transform:translateY(1px)}.quality-slap-fx{position:absolute;z-index:5;width:4.2rem;height:4.2rem;left:52%;top:38%;transform:translate(-50%,-50%) rotate(-20deg) scale(1.05);opacity:0;filter:drop-shadow(0 3px 6px rgba(220,38,38,.5));pointer-events:none}.quality-slap-fx--show{animation:quality-slap-pop .58s cubic-bezier(.22,1,.36,1) forwards}.quality-slap-fx--fade{animation:quality-slap-fade .36s ease forwards}@keyframes quality-slap-pop{0%{opacity:0;transform:translate(-46%,-56%) rotate(-28deg) scale(1.22)}40%{opacity:1;transform:translate(-50%,-50%) rotate(-20deg) scale(1)}to{opacity:.92;transform:translate(-50%,-50%) rotate(-20deg) scale(1)}}@keyframes quality-slap-fade{to{opacity:0;transform:translate(-50%,-50%) rotate(-20deg) scale(.92)}}.quality-slap-host--shake{animation:quality-slap-host-shake .42s ease}@keyframes quality-slap-host-shake{0%,to{transform:translate(0)}20%{transform:translate(-5px)}40%{transform:translate(4px)}60%{transform:translate(-3px)}80%{transform:translate(2px)}}.canvas-popover{position:absolute;top:42px;right:10px;width:min(208px,calc(100% - 20px));border-radius:12px;background:#fffffff5;border:1px solid rgba(15,23,42,.12);box-shadow:0 18px 46px #0f172a38;padding:.65rem .72rem;z-index:6;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.quality-popover-surprise-hint{margin:.42rem 0 0;padding:0;font-size:.68rem;line-height:1.3;color:#94a3b8;font-weight:500}.canvas-popover.hidden{display:none}.canvas-popover-title{display:flex;align-items:baseline;gap:.55rem}.quality-mark{font-weight:900;font-size:1.15rem;color:#0f172a}.quality-text{font-weight:700;font-size:.95rem;color:#0f172a}.quality-legend{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.55rem}.quality-chip{display:inline-flex;align-items:center;padding:.15rem .4rem;border-radius:999px;border:1px solid rgba(15,23,42,.12);background:#fff;font-size:.8rem;font-weight:700;color:#0f172a;white-space:nowrap}.quality-chip.good,.quality-chip.great{border-color:#22c55e40;background:#22c55e14}.quality-chip.bad,.quality-chip.blunder{border-color:#ef444440;background:#ef444414}.quality-chip.interesting{border-color:#3b82f640;background:#3b82f614}.quality-chip.dubious{border-color:#eab30840;background:#eab3081a}.quality-note{margin:.55rem 0 0;font-size:.82rem;color:#475569;line-height:1.35}.hint{font-size:.9rem;color:#475569;margin:0 0 1rem;line-height:1.45;white-space:pre-line}#cv{display:block;width:100%;max-width:520px;height:auto;border-radius:12px;box-shadow:0 8px 24px #0f172a1f}.hud{display:flex;align-items:center;gap:.75rem;margin-top:.6rem;font-size:.9rem}.row{display:flex;gap:.5rem;margin-top:.75rem}.row input{flex:1;padding:.55rem .65rem;border:1px solid #cbd5e1;border-radius:8px;font-size:1rem}.msg-autocomplete-wrap{flex:1;position:relative;min-width:0;border:1px solid #cbd5e1;border-radius:8px;background:#fff;box-sizing:border-box}.msg-autocomplete-underlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;padding:.55rem .65rem;font-size:1rem;line-height:normal;font-family:inherit;pointer-events:none;overflow:hidden;white-space:nowrap;box-sizing:border-box;border:none;border-radius:8px;background:transparent}.msg-autocomplete-underlay.msg-autocomplete-underlay--hidden{visibility:hidden}.msg-autocomplete-ghost-prefix{color:transparent}.msg-autocomplete-ghost-suffix{color:#94a3b8}.row .msg-autocomplete-wrap .msg-autocomplete-input{position:relative;z-index:1;display:block;width:100%;margin:0;box-sizing:border-box;padding:.55rem .65rem;border:none;border-radius:8px;box-shadow:none;outline:none;background:transparent;font-family:inherit;font-size:1rem}@keyframes msg-input-flash{0%{box-shadow:0 0 0 3px #6366f159}to{box-shadow:0 0 #6366f100}}.row input.msg-input--flash{animation:msg-input-flash .65s ease-out;outline:2px solid rgba(99,102,241,.45);outline-offset:0}.row .msg-autocomplete-wrap.msg-input-wrap--flash{animation:msg-input-flash .65s ease-out;border-color:#4f46e5a6}.row button{padding:.55rem 1rem;border:none;border-radius:8px;background:#0f172a;color:#fff;font-weight:600;cursor:pointer}.row button:disabled{opacity:.55;cursor:not-allowed}.row button.secondary{background:#fff;color:#0f172a;border:1px solid #cbd5e1}.row button.secondary.hidden{display:none}.row button.icon-btn{padding:.55rem .75rem;min-width:2.75rem;display:inline-flex;align-items:center;justify-content:center}.row button#undo.icon-btn{font-size:1.15rem;line-height:1}.row button#undo.icon-btn.icon-btn--muted{opacity:.45;cursor:not-allowed}.status-block{margin-top:.45rem}.status-replay-wrap{margin:0;font-size:.85rem;color:#64748b}.status-replay-wrap.hidden{display:none}.status-line{margin:0;font-size:.85rem;color:#64748b}.status-replay-link{color:#4f46e5;text-decoration:underline;text-underline-offset:2px}.status-replay-link:hover{color:#4338ca}.status-replay-link.disabled,.status-replay-link[aria-disabled=true]{opacity:.55;cursor:not-allowed;pointer-events:none}.solo-thinking-wrap{margin-top:.35rem;border:none;border-radius:0;background:transparent;overflow:visible}.solo-thinking-wrap.hidden{display:none}.solo-thinking-head{display:inline-flex;align-items:center;gap:0;max-width:100%;padding:0;margin:0;border:none;background:transparent;font:inherit;font-size:.85rem;color:#475569;cursor:pointer;text-align:left}.solo-thinking-head-label{display:inline-flex;align-items:center;gap:.35rem;min-width:0}.solo-thinking-icon{flex-shrink:0;display:block;color:#64748b}.solo-thinking-summary{font-weight:600}.solo-thinking-chevron{display:inline-block;flex-shrink:0;margin-left:.12em;font-size:.65rem;color:#64748b;transition:transform .15s ease}.solo-thinking-wrap.solo-thinking-collapsed .solo-thinking-chevron{transform:rotate(-90deg)}.solo-thinking-wrap.solo-thinking-collapsed .solo-thinking-panel{display:none}.solo-thinking-panel{margin-top:.35rem;margin-left:.15rem;padding:0 0 0 .55rem;border-left:2px solid #e5e7eb}.solo-thinking-body{margin:0;font-size:.82rem;line-height:1.45;color:#334155;white-space:pre-wrap}.status-replay-anchor{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.single-history-rail{position:absolute;top:52px;right:8px;bottom:10px;width:34px;display:flex;align-items:center;justify-content:center;z-index:4;pointer-events:none}.single-history-rail__empty{margin:0;color:#94a3b8cc;font-weight:700;font-size:.8rem}.single-history-rail__list{list-style:none;margin:0;padding:0;width:100%;max-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:.5rem;overflow:auto}.single-history-rail__list,.single-history-item,.single-history-rail__tooltip{pointer-events:auto}.single-history-item{width:100%;border:none;padding:.24rem 0;background:transparent;cursor:pointer;border-radius:8px}.single-history-item:focus-visible{outline:2px solid rgba(99,102,241,.55);outline-offset:1px}.single-history-item__line{display:block;width:16px;height:3px;border-radius:999px;margin:0 auto;background:#0f172a40;transition:background .12s ease,width .12s ease}.single-history-item:hover .single-history-item__line{background:#0f172a73;width:18px}.single-history-item[aria-selected=true] .single-history-item__line{width:24px;background:#4f46e5}.single-history-item__meta{display:none}.single-history-rail__tooltip{position:absolute;right:34px;transform:translateY(-50%);max-width:170px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;background:#0f172aeb;color:#fff;font-size:.74rem;line-height:1.3;border-radius:8px;padding:.36rem .5rem;pointer-events:none;box-shadow:0 8px 20px #0f172a38}.single-history-rail__tooltip:after{content:"";position:absolute;right:-4px;top:50%;width:8px;height:8px;transform:translateY(-50%) rotate(45deg);background:#0f172aeb}.llm-load{margin-top:.22rem;display:flex;align-items:center;gap:.65rem;flex-wrap:wrap;min-width:0}.llm-load-slow-hint,.llm-load-tips{flex:1 1 100%;margin:.05rem 0 0;padding:0 0 0 1rem;font-size:.74rem;color:#64748b;line-height:1.45}.llm-load-tips{transition:opacity .2s ease;display:flex;align-items:center;gap:.38rem;min-width:0}.llm-load-tips-text{flex:1 1 auto;min-width:0}.llm-load-spinner{flex-shrink:0;color:#64748b;opacity:.92;animation:llm-load-spin .85s linear infinite}@keyframes llm-load-spin{to{transform:rotate(360deg)}}.llm-load-slow-hint.hidden,.llm-load-tips.hidden,.llm-load.hidden{display:none}.llm-load-label{font-size:.85rem;color:#475569;flex:0 0 auto;white-space:nowrap}.llm-load-pct{font-size:.85rem;font-weight:800;color:#0f172a;flex:0 0 auto;white-space:nowrap}.llm-load-track{flex:1 1 0;min-width:0;height:6px;border-radius:999px;background:#e2e8f0;overflow:hidden}.llm-load-fill{height:100%;width:0%;border-radius:999px;background:linear-gradient(90deg,#6366f1,#8b5cf6)}.play-toast-host{position:fixed;z-index:12000;left:50%;top:1rem;transform:translate(-50%);max-width:min(22rem,calc(100vw - 1.5rem));pointer-events:none;display:flex;flex-direction:column;align-items:center;gap:.35rem}.play-toast-host:empty{display:none}.play-toast{pointer-events:auto;display:flex;align-items:flex-start;gap:.55rem;padding:.65rem .55rem .65rem .75rem;border-radius:10px;box-shadow:0 10px 30px #0f172a1f;border:1px solid #cbd5e1;background:#fff}.play-toast--info{border-color:#93c5fd;background:#eff6ff}.play-toast--warning{border-color:#fbbf24;background:#fffbeb}.play-toast--danger{border-color:#f87171;background:#fef2f2}.play-toast-icon{flex:0 0 auto;width:1.35rem;height:1.35rem;margin-top:.05rem;border-radius:999px;font-size:.8rem;font-weight:800;display:inline-flex;align-items:center;justify-content:center;line-height:1}.play-toast--info .play-toast-icon{background:#3b82f6;color:#fff}.play-toast--warning .play-toast-icon{background:#d97706;color:#fff}.play-toast--danger .play-toast-icon{background:#dc2626;color:#fff}.play-toast-text{margin:0;flex:1 1 auto;font-size:.88rem;line-height:1.45;color:#0f172a}.play-toast-close{flex:0 0 auto;margin:-.2rem -.1rem 0 0;border:none;background:transparent;color:#64748b;font-size:1.25rem;line-height:1;cursor:pointer;padding:.1rem .25rem;border-radius:6px}.play-toast-close:hover{color:#0f172a;background:#0f172a0f}.raw-details{margin-top:.65rem;font-size:.85rem;color:#475569}.raw-details.hidden{display:none}.raw-details summary{cursor:pointer;-webkit-user-select:none;user-select:none}.raw-pre{margin:.45rem 0 0;padding:.5rem .6rem;background:#f1f5f9;border-radius:8px;overflow:auto;max-height:9rem;font-size:.75rem;line-height:1.4;color:#334155;white-space:pre-wrap;word-break:break-word}.celebrate-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:1.25rem;background:#0f172a59;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.celebrate-layer.hidden{display:none!important;pointer-events:none!important}.confetti-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.play-confetti-burst-canvas{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:199;pointer-events:none}.win-modal{position:relative;z-index:1;width:100%;max-width:340px;padding:1.35rem 1.25rem 1.25rem;border-radius:14px;background:#fff;box-shadow:0 22px 50px #0f172a38;text-align:center}.win-modal-title{margin:0;font-size:1.2rem;color:#0f172a;white-space:pre-line}.win-modal-actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-top:1.1rem}.win-btn{padding:.55rem 1rem;border-radius:8px;font-weight:600;font-size:.95rem;cursor:pointer;border:none}.win-btn.primary{background:#0f172a;color:#fff}.win-btn.secondary{background:#fff;color:#0f172a;border:1px solid #cbd5e1}.win-btn.hidden{display:none}.win-modal--settlement{max-width:min(420px,100%);max-height:min(92vh,720px);overflow-x:hidden;overflow-y:auto;text-align:left}#settlementPhaseScore{max-height:none;overflow:visible}.win-modal--settlement.win-modal--settlement-reopen{overflow:hidden;animation:settlement-win-panel-reopen .55s cubic-bezier(.22,1,.36,1) both}@keyframes settlement-win-panel-reopen{0%{transform:translateY(0);opacity:1}38%{transform:translateY(5px);opacity:.9}to{transform:translateY(0);opacity:1}}.settlement-phase{width:100%}.settlement-phase-intro{text-align:center;max-height:560px;overflow:hidden;transition:max-height .55s cubic-bezier(.4,0,.2,1),opacity .42s ease,margin .45s ease}.settlement-intro-replay{margin:.65rem auto 0;max-width:100%;overflow:hidden;max-height:520px;opacity:1;transition:max-height .48s cubic-bezier(.4,0,.2,1),opacity .38s ease,margin .38s ease}#settlementIntroReplayWrap.settlement-intro-replay--collapsed{max-height:0!important;opacity:0;margin-top:0!important;margin-bottom:0!important;pointer-events:none}#settlementPhaseScore.settlement-phase-score--entering{animation:settlement-score-phase-enter .48s cubic-bezier(.22,1,.36,1) both}@keyframes settlement-score-phase-enter{0%{opacity:0}to{opacity:1}}#settlementPhaseIntro.settlement-phase-intro--collapsing{pointer-events:none;max-height:0;margin:0;opacity:0}.settlement-play-block{overflow:hidden;max-height:2400px;opacity:1;transition:max-height .55s cubic-bezier(.4,0,.2,1),opacity .42s ease,margin .45s ease}.settlement-play-block--collapsed{max-height:0;margin:0;opacity:0;pointer-events:none}.settlement-intro-hint{margin:.35rem 0 0;font-size:.88rem;color:#64748b;text-align:center}.settlement-xp-tiers-shell{margin-bottom:.5rem}.settlement-xp-tiers{display:flex;flex-direction:column;gap:.28rem;margin-bottom:0}.settlement-tier-ratio{margin:.2rem 0 0;text-align:left;font-size:.65rem;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.04em;color:#94a3b8;line-height:1.2}#settlementXpTiersShell.settlement-xp-tiers-shell--pulse{animation:settlement-xp-shell-pulse .38s ease-out both}@keyframes settlement-xp-shell-pulse{0%{filter:brightness(1);transform:scale(1)}45%{filter:brightness(1.1) saturate(1.06);transform:scale(1.02)}to{filter:brightness(1);transform:scale(1)}}#settlementTotalScore.settlement-total-score--tier-upgrade{animation:settlement-tier-upgrade-pop .4s cubic-bezier(.22,1,.36,1) both}@keyframes settlement-tier-upgrade-pop{0%{transform:scale(1);filter:brightness(1)}40%{transform:scale(1.08);filter:brightness(1.22) saturate(1.15) drop-shadow(0 0 .65rem var(--settlement-score-burst-shine))}to{transform:scale(1);filter:brightness(1) saturate(1.05)}}.settlement-tier.settlement-tier--upgrade-ring{border-radius:999px;animation:settlement-tier-track-ring .48s cubic-bezier(.22,1,.36,1) both}@keyframes settlement-tier-track-ring{0%{box-shadow:0 0 #6366f100}40%{box-shadow:0 0 0 1px #818cf88c,0 0 12px #6366f147}to{box-shadow:0 0 #6366f100}}.settlement-tier-fill--upgrade-burst{animation:settlement-tier-fill-upgrade-shine .48s cubic-bezier(.22,1,.36,1) both}@keyframes settlement-tier-fill-upgrade-shine{0%{filter:brightness(1) saturate(1)}40%{filter:brightness(1.18) saturate(1.12) drop-shadow(0 0 6px rgba(255,255,255,.55))}to{filter:brightness(1.03) saturate(1.05)}}.settlement-tier{height:8px;border-radius:999px;background:#e2e8f0;overflow:hidden}.settlement-tier-fill{height:100%;border-radius:999px;width:0%;transition:width .5s cubic-bezier(.22,1,.36,1)}.settlement-tier-fill--0{background:linear-gradient(90deg,#6366f1,#818cf8)}.settlement-tier-fill--1{background:linear-gradient(90deg,#7c3aed,#c026d3)}.settlement-tier-fill--2{background:linear-gradient(90deg,#db2777,#f97316)}.settlement-caption-muted{font-size:.72rem;font-weight:600;letter-spacing:.12em;color:#94a3b8;text-transform:none;margin-bottom:.15rem}.settlement-grade-slot{display:flex;flex-direction:column;align-items:center;text-align:center;margin:.5rem 0 .35rem}.settlement-grade-slot--shown{min-height:6.75rem;justify-content:flex-start;gap:.42rem}#settlementGradeCaption.settlement-caption-muted{margin-bottom:.62rem}.settlement-grade-board{display:inline-flex;flex-direction:row;align-items:baseline;justify-content:center;gap:.02em;min-height:3.4rem}.settlement-grade-char{display:inline-block;font-size:clamp(2.6rem,9vw,3.35rem);font-weight:900;letter-spacing:.04em;color:#0f172a;line-height:1;opacity:1;transform:translateY(0) scale(1)}.settlement-grade-char--suffix{font-size:clamp(2.05rem,7vw,2.75rem);opacity:0;transform:translateY(.5em) scale(1.35)}.settlement-grade-char--slam{animation:settlement-grade-char-slam .52s cubic-bezier(.12,.85,.22,1) both}.settlement-grade-char--suffix.settlement-grade-char--slam{animation:settlement-grade-suffix-slam .46s cubic-bezier(.08,1,.24,1) both}.settlement-grade-char--s{color:#a16207;text-shadow:0 0 12px rgba(250,204,21,.9),0 0 28px rgba(250,204,21,.55);animation:settlement-s-glow-text 1.2s ease-in-out infinite alternate}@keyframes settlement-grade-char-slam{0%{opacity:0;transform:translateY(-42%) scale(1.85);filter:blur(1px)}58%{opacity:1;transform:translateY(10%) scale(.92);filter:blur(0)}82%{transform:translateY(-3%) scale(1.05)}to{transform:translateY(0) scale(1)}}@keyframes settlement-grade-suffix-slam{0%{opacity:0;transform:translateY(28%) scale(1.5)}55%{opacity:1;transform:translateY(-6%) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes settlement-s-glow-text{0%{text-shadow:0 0 10px rgba(250,204,21,.75),0 0 22px rgba(250,204,21,.45)}to{text-shadow:0 0 16px rgba(250,204,21,1),0 0 36px rgba(250,204,21,.65)}}.settlement-feed{min-height:2.85rem;max-height:2.85rem;overflow:hidden;margin:.05rem auto .45rem;padding:.1rem .2rem;max-width:16.5rem;font-size:.8rem;line-height:1.42;display:flex;flex-direction:column;justify-content:center}.settlement-feed--static{max-height:9.5rem;min-height:2.85rem;overflow-y:auto;justify-content:flex-start}.settlement-feed-line{display:flex;justify-content:center;align-items:center;width:100%;padding:.1rem 0;flex-shrink:0;animation:settlement-line-in-up .34s ease-out both}.settlement-feed-line--center{text-align:center}.settlement-feed-line__cluster{display:inline-flex;flex-wrap:wrap;align-items:baseline;justify-content:center;gap:.12rem .2rem;max-width:100%;color:#475569}.settlement-feed-line__mid{text-align:center}.settlement-feed-line__sep{color:#cbd5e1;font-weight:700;-webkit-user-select:none;user-select:none}.settlement-feed-strong{font-weight:800;color:#0f172a}.settlement-feed-delta{font-weight:900;color:#4338ca;font-variant-numeric:tabular-nums}@keyframes settlement-line-in-up{0%{opacity:0}to{opacity:1}}.settlement-replay-wrap{border-radius:12px;overflow:hidden;border:1px solid #cbd5e1;margin-bottom:.4rem;background:#e2e8f0}#settlementIntroReplayWrap.settlement-replay-wrap{overflow:visible}.settlement-replay-crop{line-height:0;max-height:none;overflow:visible;background:#e2e8f0}.settlement-replay-stack{position:relative}.settlement-replay-speech{position:absolute;left:.45rem;right:auto;top:.4rem;z-index:2;box-sizing:border-box;max-width:min(calc(100% - .85rem),19rem);padding:0;pointer-events:none;overflow:visible;display:flex;flex-direction:column;align-items:flex-start}.settlement-replay-speech__bubble{position:relative;z-index:2;box-sizing:border-box;padding:.48rem .72rem .72rem;background:#fff;border:1.5px solid #475569;border-radius:10px;box-shadow:0 2px 12px #0f172a1a;overflow:visible}.settlement-replay-speech__tail{position:relative;z-index:1;flex:0 0 auto;align-self:flex-start;width:2.65rem;height:auto;margin-left:.15rem;margin-top:-.5rem;display:block;pointer-events:none}.settlement-replay-speech__txt{position:relative;font-size:clamp(.88rem,2.8vw,.98rem);font-weight:600;line-height:1.48;letter-spacing:.01em;color:#0f172a;text-align:left;word-break:break-word;overflow-wrap:anywhere;white-space:pre-wrap}.settlement-replay-speech.hidden{display:none}#settlementReplayCv{display:block;width:100%;height:auto;aspect-ratio:520 / 420}.settlement-outro-actions{margin-top:.85rem;opacity:0;transform:translateY(10px);transition:none}.settlement-outro-actions--in{opacity:1;transform:translateY(0);transition:opacity .62s ease,transform .68s cubic-bezier(.22,1,.36,1)}.settlement-outro-actions-row--secondary{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-top:.55rem}.settlement-ghost-btn{padding:.38rem .65rem;border-radius:8px;border:1px solid #cbd5e1;background:#f8fafc;font-size:.78rem;font-weight:600;color:#475569;cursor:pointer}.settlement-ghost-btn:hover{background:#e2e8f0;color:#0f172a}.settlement-replay-btn{width:100%;margin:0;padding:.45rem .65rem;border-radius:10px;border:1px solid #c7d2fe;background:linear-gradient(180deg,#eef2ff,#e0e7ff);font-size:.82rem;font-weight:700;color:#3730a3;cursor:pointer}.settlement-replay-btn:hover{background:linear-gradient(180deg,#e0e7ff,#c7d2fe)}.settlement-score-block{margin:0 0 .18rem;display:flex;flex-direction:column;align-items:center;text-align:center}.settlement-total-score{font-size:2.15rem;font-weight:900;text-align:center;line-height:1.12;letter-spacing:.02em;font-variant-numeric:tabular-nums;background:linear-gradient(90deg,#6366f1,#818cf8);-webkit-background-clip:text;background-clip:text;color:transparent;--settlement-score-burst-shine: rgba(129, 140, 248, .92)}.settlement-total-score--tier0{background:linear-gradient(90deg,#6366f1,#818cf8);-webkit-background-clip:text;background-clip:text;--settlement-score-burst-shine: rgba(129, 140, 248, .92)}.settlement-total-score--tier1{background:linear-gradient(90deg,#7c3aed,#c026d3);-webkit-background-clip:text;background-clip:text;--settlement-score-burst-shine: rgba(192, 38, 211, .88)}.settlement-total-score--tier2{background:linear-gradient(90deg,#db2777,#f97316);-webkit-background-clip:text;background-clip:text;--settlement-score-burst-shine: rgba(251, 113, 133, .9)}.settlement-total-score--burst{animation:settlement-score-burst .4s ease-out both}@keyframes settlement-score-burst{0%{transform:scale(1);filter:brightness(1) saturate(1)}50%{transform:scale(1);filter:brightness(1.06) saturate(1.04)}to{transform:scale(1);filter:brightness(1) saturate(1)}}.settlement-help-btn{width:1.65rem;height:1.65rem;border-radius:999px;border:1px solid #cbd5e1;background:#fff;font-weight:800;cursor:pointer;color:#475569;line-height:1}.settlement-help-btn:hover{background:#f8fafc}.settlement-detail{margin:0 0 .5rem;padding:.45rem .55rem;border-radius:10px;background:#f8fafc;border:1px solid #e2e8f0;font-size:.78rem}.settlement-detail-list{margin:0;padding-left:1.1rem;color:#334155}.settlement-rank-wrap{margin:.5rem 0 .75rem;display:flex;flex-direction:column;align-items:center;gap:.15rem}.settlement-rank-wrap .settlement-rank--outro{margin:0}.settlement-rank--outro .settlement-rank__num{font-weight:700;color:#334155}.settlement-rank--outro{margin:.5rem 0 .75rem;font-size:.8rem;line-height:1.5;color:#64748b;text-align:center;opacity:0;transform:translateY(12px);transition:none}.settlement-rank--outro.settlement-rank--in{opacity:1;transform:translateY(0);transition:opacity .48s ease .06s,transform .52s cubic-bezier(.22,1,.36,1) .06s}.win-modal--settlement .win-modal-title{text-align:center}.win-modal--settlement .settlement-outro-actions .win-modal-actions{margin-top:.95rem;justify-content:center}.settlement-preview-body{margin:0;min-height:100vh;padding-bottom:5.25rem;background:#e2e8f0}.settlement-preview-toolbar{position:fixed;bottom:0;left:0;right:0;z-index:50;display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;padding:.65rem 1rem;background:#fff;border-top:1px solid #cbd5e1;box-shadow:0 -8px 24px #0f172a14}.settlement-preview-title{margin-right:.75rem;font-size:.95rem;color:#0f172a}.settlement-preview-btn{padding:.4rem .75rem;border-radius:8px;border:1px solid #cbd5e1;background:#f8fafc;font-weight:600;font-size:.85rem;cursor:pointer;color:#0f172a}.settlement-preview-btn:hover{background:#e2e8f0}.settlement-preview-btn.secondary{background:#fff}.editor-shell{max-width:1100px}.editor-grid{display:grid;grid-template-columns:1fr minmax(300px,360px);gap:.85rem;align-items:start}.editor-stage{min-width:0}.editor-panel{display:flex;flex-direction:column;gap:.85rem}.editor-card{border-radius:12px;background:#fffffff5;border:1px solid rgba(15,23,42,.12);box-shadow:0 18px 46px #0f172a1f;padding:.9rem .95rem}.editor-card-title{font-weight:900;font-size:.92rem;color:#0f172a;margin-bottom:.6rem}.editor-export{width:100%;height:220px;resize:vertical;padding:.6rem .65rem;border:1px solid #cbd5e1;border-radius:10px;font-size:.78rem;line-height:1.35;background:#f8fafc;color:#0f172a;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace}.editor-inspector{display:grid;gap:.55rem;font-size:.85rem;color:#334155}.editor-nav{display:flex;align-items:center;gap:.6rem}.editor-link{font-size:.9rem;font-weight:700;color:#4f46e5;text-decoration:underline;text-underline-offset:2px}.editor-link:hover{color:#4338ca}@media(max-width:960px){.single-history-rail{width:48px;right:4px}.editor-grid{grid-template-columns:1fr}}.pose-input-voice-wrap{position:relative;flex:1 1 auto;min-width:0;display:block}.msg-autocomplete-wrap .pose-input-voice-wrap{z-index:1}.row .pose-input-voice-wrap,.battle-form .pose-input-voice-wrap,.workshop-compose-row .pose-input-voice-wrap,#wcForm .pose-input-voice-wrap{flex:1 1 auto;min-width:0}.workshop-composer-step .pose-input-voice-wrap:has(.workshop-compose-name-input){width:min(380px,100%);margin-inline:auto}.pose-input-voice-wrap__input{width:100%;box-sizing:border-box;padding-right:2.5rem!important}.pose-voice-mic{position:absolute;z-index:2;right:.38rem;top:50%;transform:translateY(-50%);width:1.85rem;height:1.85rem;margin:0;padding:0;border:none;border-radius:0;background:transparent;box-shadow:none;-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.row button.pose-voice-mic,form.row button.pose-voice-mic{padding:0!important;min-width:0!important;font-weight:400!important;background:transparent!important;border-radius:0!important;border:none!important;box-shadow:none!important}.pose-voice-mic:focus-visible{outline:2px solid rgba(59,130,246,.65);outline-offset:2px}.pose-voice-mic__pad{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;opacity:0;background:transparent;border:none;box-shadow:none;transition:opacity .16s ease,background .16s ease,box-shadow .16s ease;pointer-events:none}.pose-voice-mic--listening .pose-voice-mic__pad{opacity:1;background:#0f172a;box-shadow:0 1px 4px #0f172a40}.pose-voice-mic__glyph{position:relative;z-index:1;display:block;width:1.125rem;height:1.125rem;flex-shrink:0;color:#64748b;transition:color .16s ease}.pose-voice-mic--listening .pose-voice-mic__glyph{color:#fff}.pose-voice-mic:hover:not(.pose-voice-mic--listening) .pose-voice-mic__glyph{color:#475569}.row button.pose-voice-mic .pose-voice-mic__glyph{color:#64748b}.row button.pose-voice-mic.pose-voice-mic--listening .pose-voice-mic__glyph{color:#fff}.row button.pose-voice-mic:hover:not(.pose-voice-mic--listening) .pose-voice-mic__glyph{color:#475569}body:has(#battle-root.battle-root--shell){margin:0;background:#e2e8f0}#battle-root{max-width:1120px;margin:0 auto;padding:1rem 1.25rem 2rem}#battle-root.battle-root--shell{max-width:min(1120px,100%);margin:0 auto;min-height:100vh;padding:1.25rem;color:#0f172a;display:flex;flex-direction:column}#battle-root.battle-root--shell .battle-shell-stage{flex:1 0 auto;display:flex;flex-direction:column;min-height:0}#battle-root.battle-root--shell .battle-shell-stage.battle-shell--modal-blocks-input{pointer-events:none;-webkit-user-select:none;user-select:none}#battle-root.battle-root--shell .battle-shell-footer{margin-top:auto;flex-shrink:0}#battle-root.battle-root--shell .battle-lobby,#battle-root.battle-root--shell .battle-prep{max-width:560px;width:100%;margin-left:auto;margin-right:auto}#battle-root.battle-root--shell .battle-prep{display:flex;flex-direction:column;align-items:stretch;gap:.75rem}#battle-root.battle-root--shell .battle-prep .battle-mode-board{margin-top:0}#battle-root.battle-root--shell .battle-btn-primary:disabled{opacity:.45;cursor:not-allowed;filter:none}#battle-root.battle-root--shell .battle-panel{margin-top:.65rem;padding:1.15rem 1.1rem 1.35rem;border-radius:16px;border:1px solid #e2e8f0;background:linear-gradient(165deg,#fff,#f8fafc);box-shadow:0 10px 28px #0f172a12}#battle-root.battle-root--shell .battle-panel-title{margin:0;font-size:1.05rem;font-weight:800;color:#0f172a;text-align:center;flex:1}#battle-root.battle-root--shell .battle-panel-head{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}#battle-root.battle-root--shell .battle-prep-room-hero{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:.65rem;flex-wrap:wrap}#battle-root.battle-root--shell .battle-prep-room-hero .battle-room-code--large{margin:0}#battle-root.battle-root--shell .battle-prep-room-hero__label{font-size:.95rem;font-weight:700;color:#475569;letter-spacing:.02em}#battle-root.battle-root--shell .battle-room-code--large{font-size:1.15rem;letter-spacing:.12em;color:#0f172a}#battle-root.battle-root--shell .battle-prep-slots{display:flex;gap:.85rem;justify-content:center;margin-bottom:1rem}#battle-root.battle-root--shell .battle-prep-slot{flex:1 1 0;min-width:0;max-width:9.5rem;display:flex;flex-direction:column;align-items:center;text-align:center;gap:.5rem;padding:.75rem .5rem .85rem;border-radius:16px;border:1px solid #e2e8f0;background:#f8fafc}#battle-root.battle-root--shell .battle-prep-avatar{width:3.25rem;height:3.25rem;border-radius:999px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.1rem;background:linear-gradient(145deg,#fff,#e2e8f0);color:#0f172a;border:2px solid #cbd5e1}#battle-root.battle-root--shell .battle-prep-avatar--emoji{font-size:1.65rem;line-height:1;font-weight:400}#battle-root.battle-root--shell .battle-prep-avatar--empty{opacity:.65;border-style:dashed}#battle-root.battle-root--shell .battle-prep-slot-body{width:100%}#battle-root.battle-root--shell .battle-prep-badges{display:flex;flex-wrap:wrap;gap:.25rem;justify-content:center;margin-bottom:.25rem}#battle-root.battle-root--shell .battle-badge{display:inline-block;padding:.12rem .4rem;border-radius:999px;font-size:.65rem;font-weight:700;background:linear-gradient(180deg,#6366f1,#4f46e5);color:#fff}#battle-root.battle-root--shell .battle-badge--me{background:linear-gradient(180deg,#94a3b8,#64748b)}#battle-root.battle-root--shell .battle-badge--ready{background:linear-gradient(180deg,#22c55e,#16a34a)}#battle-root.battle-root--shell .battle-prep-name{margin:.2rem 0 0;font-size:.8rem;font-weight:700;color:#0f172a;line-height:1.3;word-break:break-word}#battle-root.battle-root--shell .battle-prep-name--muted{font-weight:600;color:#94a3b8}#battle-root.battle-root--shell .battle-prep-countdown{margin:0 0 .85rem;min-height:1.25rem;text-align:center;font-size:.88rem;font-weight:600;color:#4338ca}#battle-root.battle-root--shell .battle-lobby-brand .battle-lobby-title{font-size:1.35rem;font-weight:800;margin:0}#battle-root.battle-root--shell .battle-prep .battle-prep-substatus,#battle-root.battle-root--shell .battle-play .battle-room-hint{text-align:center}#battle-root.battle-root--shell .battle-play .battle-play-role-hint{text-align:center;margin:.1rem auto .2rem;font-size:.98rem;font-weight:800;color:#0f172a;letter-spacing:.02em}#battle-root.battle-root--shell .battle-prep-top{margin-bottom:.35rem}#battle-root.battle-root--shell .battle-prep-leave{padding:.25rem .4rem;margin-left:-.15rem}#battle-root.battle-root--shell .battle-prep-hero{text-align:center;margin-bottom:.5rem}#battle-root.battle-root--shell .battle-prep-title{margin:0;font-size:1.35rem;font-weight:800;letter-spacing:-.02em;color:#0f172a;line-height:1.2}#battle-root.battle-root--shell .battle-play-top{margin-bottom:.35rem}#battle-root.battle-root--shell .battle-play-leave{padding:.25rem .4rem;margin-left:-.15rem}#battle-root.battle-root--shell .battle-play-hero{text-align:center;margin-bottom:.5rem}#battle-root.battle-root--shell .battle-eval-col{flex:0 0 2.75rem;display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:1.7rem .2rem 0;min-height:0;justify-content:flex-start;align-self:stretch}#battle-root.battle-root--shell .battle-eval-col__caption{font-size:.65rem;font-weight:700;color:#64748b;text-align:center;line-height:1.2;max-width:3.25rem}#battle-root.battle-root--shell .battle-eval-bar{width:34px;flex:1 1 auto;min-height:0;border-radius:0;background:#0b1220;position:relative;overflow:hidden;box-shadow:0 8px 24px #0f172a1f;align-self:stretch}#battle-root.battle-root--shell .battle-eval-bar-pct{position:absolute;top:4px;left:50%;transform:translate(-50%);font-size:10px;font-weight:800;letter-spacing:.2px;color:#ffffffeb;text-shadow:0 1px 2px rgba(0,0,0,.35);pointer-events:none;-webkit-user-select:none;user-select:none;z-index:2}#battle-root.battle-root--shell .battle-eval-bar-fill{position:absolute;left:0;right:0;bottom:0;height:10%;background:#fff;transition:height .2s ease}#battle-root.battle-root--shell .battle-eval-bar-divider{position:absolute;left:0;right:0;height:1px;bottom:10%;background:#ffffff8c;transform:translateY(.5px);pointer-events:none}#battle-root .battle-modal__goal-countdown{margin:0 0 .65rem;text-align:center;font-size:.88rem;font-weight:600;color:#64748b;min-height:1.35rem}#battle-root .battle-modal__partner-title{margin:0 0 1rem;font-size:1rem;font-weight:700;color:#0f172a;text-align:center;line-height:1.45}#battle-root .battle-modal__partner-cta{width:100%;justify-content:center}#battle-root.battle-root--shell .battle-prep-substatus{margin:0 0 .75rem;font-size:.95rem;font-weight:600;color:#64748b;line-height:1.5;min-height:1.5rem}#battle-root.battle-root--shell .battle-prep-actions{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;align-items:center;gap:.65rem}#battle-root .battle-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:13050;display:flex;align-items:center;justify-content:center;padding:1.25rem;box-sizing:border-box}#battle-root .battle-modal.hidden{display:none!important}#battle-root .battle-modal__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0f172a80}#battle-root .battle-modal__card{position:relative;z-index:1;max-width:22rem;width:100%;border-radius:14px;box-shadow:0 22px 55px #0000003d}#battle-root .battle-modal__card--mono{background:#fafafa;border:1px solid #262626;color:#0a0a0a;padding:1.15rem 1.1rem 1.2rem;text-align:center}#battle-root .battle-modal__profile-title{margin:0 0 .75rem;font-size:.88rem;font-weight:700;line-height:1.45;color:#171717}#battle-root .battle-modal__profile-name{box-sizing:border-box;width:100%;max-width:16rem;margin:0 auto .75rem;display:block;padding:.45rem .65rem;border:1px solid #525252;border-radius:10px;font-size:.92rem;font-weight:600;text-align:center;background:#fff;color:#0a0a0a}#battle-root .battle-modal__profile-name::placeholder{color:#737373;font-weight:500}#battle-root .battle-modal__profile-avatars{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem;margin-bottom:.35rem}#battle-root .battle-modal__profile-avatar-btn{width:2.5rem;height:2.5rem;padding:0;border-radius:12px;border:2px solid #a3a3a3;background:#fff;font-size:1.35rem;line-height:1;cursor:pointer}#battle-root .battle-modal__profile-avatar-btn--on{border-color:#0a0a0a;box-shadow:0 0 0 1px #0a0a0a}#battle-root .battle-modal__profile-save{margin-top:.65rem;border-color:#171717!important;background:#171717!important;color:#fafafa!important}#battle-root .battle-modal__profile-save:hover{filter:brightness(1.06)}#battle-root .battle-modal__card--goal{max-width:24rem}#battle-root .battle-modal__goal-title{margin:0 0 .65rem;font-size:1.28rem;font-weight:800;letter-spacing:.06em;color:#0a0a0a;line-height:1.35}#battle-root .battle-modal__goal-canvas{display:block;width:min(100%,360px);height:auto;margin:0 auto;border-radius:10px;border:1px solid #404040;background:#fafafa}#battle-root .battle-modal__card--classic-question{max-width:min(38rem,calc(100vw - 2rem))}#battle-root .battle-modal__classic-question-title{margin:0 0 .45rem;text-align:center;font-size:1.05rem;font-weight:900;color:#0f172a}#battle-root .battle-modal__classic-question-countdown{margin:0 0 .55rem;font-weight:800;text-align:center;font-variant-numeric:tabular-nums;color:#0f172a}#battle-root .battle-modal__classic-question-note{margin:0 0 .7rem;text-align:center;color:#475569;font-weight:700}#battle-root .battle-modal__classic-question-canvas{display:block;width:100%;max-width:520px;height:auto;margin:0 auto .75rem;border-radius:12px;border:1px solid #e2e8f0;background:#fff;touch-action:none}#battle-root.battle-root--shell .battle-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;padding:0;border-radius:10px;border:1px solid #cbd5e1;background:#fff;color:#475569;cursor:pointer;flex-shrink:0}#battle-root.battle-root--shell .battle-icon-btn:hover{border-color:#94a3b8;color:#4338ca;background:#f8fafc}#battle-root.battle-root--shell .battle-icon-btn:active{background:#eef2ff;color:#3730a3}#battle-root.battle-root--shell .battle-icon-btn__svg{display:block}#battle-root.battle-root--shell .battle-btn-prep-primary,#battle-root.battle-root--shell .battle-btn-prep-secondary{width:auto;min-width:unset}.battle-btn-pill{border-radius:999px}.battle-btn-block{width:100%;justify-content:center}.battle-btn-secondary{border-color:#cbd5e1;background:#e2e8f0;color:#1e293b}.battle-btn-secondary:hover{border-color:#94a3b8;background:#f1f5f9}.battle-btn-secondary:disabled{opacity:.55;cursor:default}.battle-room-hint{margin:0 0 .75rem;font-size:.9rem;color:#475569;line-height:1.45;min-height:1.35rem}.hidden{display:none!important}.battle-btn{padding:.45rem .95rem;border-radius:9px;border:1px solid #cbd5e1;background:#fff;font-size:.9rem;font-weight:600;color:#1e293b;cursor:pointer;-webkit-tap-highlight-color:transparent}.battle-btn:hover{border-color:#94a3b8;background:#f8fafc}.battle-btn-primary{border-color:#0f172a;background:#0f172a;color:#fff}.battle-btn-primary:hover{background:#1e293b;border-color:#1e293b}.battle-btn-primary:active{background:#0b1220;border-color:#0b1220}#battle-root.battle-root--shell .battle-btn-primary:active{background:#0b1220;color:#fff;border-color:#0b1220;filter:none}.battle-btn-ghost{background:transparent;border-color:transparent;color:#64748b;padding-left:0}.battle-btn-ghost:hover{color:#4f46e5;background:#f1f5f9}.battle-btn-small{padding:.3rem .65rem;font-size:.82rem}.battle-lobby{margin-top:.5rem;padding:1.5rem 1.35rem 1.65rem;border-radius:16px;border:1px solid #e2e8f0;background:linear-gradient(165deg,#fff,#f8fafc);box-shadow:0 10px 30px #0f172a0f;display:flex;flex-direction:column;align-items:center;text-align:center}.battle-lobby-brand{min-width:0;text-align:center;width:100%;margin-bottom:.5rem}.battle-lobby-title{margin:0;font-size:1.35rem;font-weight:800;color:#0f172a;letter-spacing:-.02em}.battle-lobby-hint{margin:0 0 1.1rem;font-size:1rem;color:#64748b;line-height:1.5;max-width:26rem}.battle-lobby-action-stack{display:flex;flex-direction:column;align-items:center;gap:1rem;width:min(100%,22rem);align-self:center}.battle-lobby-loading{margin-top:1rem;width:min(100%,22rem);text-align:center}.battle-lobby-loading__label{margin:0;font-size:.9rem;font-weight:700;color:#334155}.battle-lobby-loading__pct{display:inline-block;margin-top:.35rem;margin-bottom:.45rem;font-size:.84rem;font-weight:800;color:#0f172a}.battle-lobby-loading__track{width:100%;height:8px;border-radius:999px;overflow:hidden;background:#e2e8f0}.battle-lobby-loading__fill{height:100%;width:0%;border-radius:999px;background:linear-gradient(90deg,#6366f1,#8b5cf6);transition:width .12s linear}.battle-btn-rect-sm{border-radius:8px;padding:.38rem .85rem;font-size:.84rem;font-weight:700;width:fit-content;max-width:100%}.battle-btn-lobby-compact{min-width:5.5rem}.battle-btn-lobby-join-outline{background:#fff;color:#334155}.battle-btn-lobby-join-outline:hover{background:#f8fafc}.battle-join-row{display:flex;gap:.55rem;flex-wrap:wrap;align-items:center;margin-top:.75rem}.battle-code-input{width:100%;padding:.6rem .75rem;border:1px solid #cbd5e1;border-radius:10px;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;letter-spacing:.06em;font-size:1.05rem;font-weight:600;text-align:center;color:#0f172a}.battle-code-input::placeholder{font-family:inherit;font-weight:500;letter-spacing:.02em;color:#94a3b8}.battle-code-input--lobby{box-sizing:border-box;width:100%;max-width:100%}.battle-mode-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.75rem;color:#334155;font-size:.92rem;font-weight:600}.battle-mode-row__label{flex:0 0 auto}.battle-mode-row__select{flex:1 1 auto;min-width:0;border:1px solid #cbd5e1;border-radius:8px;padding:.42rem .55rem;font-size:.9rem;color:#0f172a;background:#fff}.battle-mode-trigger{margin:.7rem auto 0;display:inline-flex;align-items:center;justify-content:center;padding:.48rem .88rem;border-radius:999px;border:1px solid rgba(255,255,255,.2);background:#0f172a;color:#f8fafc;font-size:.86rem;font-weight:700;letter-spacing:.01em;box-shadow:0 10px 24px #0f172a2e;cursor:default}.battle-mode-board{margin:.95rem 0 0;padding:.7rem .8rem;border-radius:12px;background:#0f172a;color:#f8fafc;border:1px solid rgba(15,23,42,.35);box-shadow:0 10px 28px #0f172a1f}.battle-mode-picker-modal .difficulty-modal__panel{display:flex;flex-direction:column;align-items:stretch}.battle-mode-picker-modal .difficulty-option__head,.battle-mode-picker-modal .difficulty-option--expanded .difficulty-option__head{justify-content:center}.battle-mode-picker-modal .battle-btn-block{align-self:center;width:min(260px,100%)}.battle-mode-board__top{display:flex;align-items:center;justify-content:center;gap:.5rem}.battle-mode-current{min-width:180px;border-color:#334155;background:#0b1220;color:#f8fafc}.battle-mode-current:hover{border-color:#475569;background:#111827;color:#f8fafc}.battle-mode-board__current--locked{opacity:.82;cursor:not-allowed}.battle-mode-board__current--locked:hover{border-color:#334155;background:#0b1220}.battle-mode-board__goal{margin-top:.65rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.6rem}.battle-mode-board__goal-canvas{display:block;width:132px;max-width:100%;height:auto;margin-inline:auto;border-radius:8px;border:1px solid #334155;background:#f8fafc}.battle-mode-board__goal-hint{width:min(320px,100%);padding:.35rem .55rem;border-radius:10px;background:#fff;border:1px solid rgba(255,255,255,.28);color:#0f172a;font-size:.82rem;font-weight:800;text-align:center;letter-spacing:.01em;-webkit-user-select:none;user-select:none;pointer-events:none}.battle-mode-board__goal-hint--trickster-guest{padding:.55rem .85rem;border-radius:10px;border:1px solid #334155;font-size:.95rem;font-weight:800;line-height:1.35;box-sizing:border-box}.battle-mode-board__goal-btn{min-width:112px}#battle-root.battle-root--shell .difficulty-modal .battle-btn-block{margin-top:.8rem}.battle-goal-picker-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:.6rem}.battle-goal-picker-item{border:1px solid #cbd5e1;border-radius:10px;background:#f8fafc;padding:.45rem;display:flex;flex-direction:column;gap:.35rem;cursor:pointer}.battle-goal-picker-item--active{border-color:#3b82f699;background:#3b82f614}.battle-goal-picker-item__canvas{width:100%;height:auto;border-radius:8px;border:1px solid #cbd5e1;background:#fff}.battle-goal-picker-item__cap{font-size:.8rem;font-weight:700;color:#334155}.battle-goal-custom-modal__panel{max-width:min(580px,calc(100vw - 2rem))}.battle-goal-custom-modal__body{padding:.45rem 0 .15rem;display:flex;justify-content:center}.battle-goal-custom-modal__canvas{display:block;width:100%;max-width:520px;height:auto;border-radius:12px;border:1px solid #e2e8f0;background:#fff;touch-action:none}.battle-goal-custom-modal__actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end;margin-top:.65rem;padding-top:.55rem;border-top:1px solid #e2e8f0}.battle-room{margin-top:.5rem;padding:1.25rem 1.35rem 1.5rem;border-radius:16px;border:1px solid #e2e8f0;background:#fff;box-shadow:0 10px 28px #0f172a12}.battle-room-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.85rem}.battle-room-heading{margin:0;font-size:1.1rem;font-weight:800;color:#0f172a}.battle-room-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .65rem;margin-bottom:.5rem;font-size:.9rem}.battle-meta-label{color:#64748b;font-weight:600}.battle-room-code{font-family:ui-monospace,monospace;letter-spacing:.1em;font-size:1.05rem;color:#4338ca}#battle-root.battle-root--shell .battle-play-main{display:flex;flex-direction:column;gap:.65rem}#battle-root.battle-root--shell .battle-play-column--command,#battle-root.battle-root--shell .battle-play-command-stack{display:flex;flex-direction:column;gap:.65rem;min-width:0}.battle-play-chat{display:none;min-height:0}.battle-play-chat-log{flex:1 1 auto;overflow-y:auto;padding:.5rem .55rem;display:flex;flex-direction:column;gap:.45rem}.battle-chat-msg{align-self:flex-start;max-width:92%;padding:.38rem .55rem;border-radius:10px;font-size:.88rem;line-height:1.35;background:#fff;border:1px solid #e2e8f0}.battle-chat-msg--self{align-self:flex-end;background:#95ec69;border-color:#7de15a}.battle-chat-msg--opp{align-self:flex-start;background:#fff}.battle-chat-msg--negotiate{opacity:.72;background:#e2e8f0;border-color:#cbd5e1}.battle-chat-msg--self.battle-chat-msg--negotiate{background:#e2e8f0}.battle-chat-msg__mark{display:inline-flex;align-items:center;justify-content:center;margin-right:.35rem;min-width:1.65rem;height:1.65rem;padding:0 .28rem;border-radius:999px;border:1px solid #cbd5e1;background:#fff;color:#0f172a;font-weight:800;font-size:.82rem;line-height:1;vertical-align:middle;flex-shrink:0;box-shadow:0 1px 3px #0f172a1f}.battle-chat-msg__mark[data-quality=great],.battle-chat-msg__mark[data-quality=good]{border-color:#22c55e;background:#ecfdf5;color:#14532d}.battle-chat-msg__mark[data-quality=great],.battle-chat-msg__mark[data-quality=blunder]{min-width:1.85rem;height:1.85rem;font-size:.92rem}.battle-chat-msg__mark[data-quality=interesting]{border-color:#3b82f6;background:#eff6ff;color:#1e3a8a}.battle-chat-msg__mark[data-quality=dubious]{border-color:#ca8a04;background:#fffbeb;color:#713f12}.battle-chat-msg__mark[data-quality=bad],.battle-chat-msg__mark[data-quality=blunder]{border-color:#ef4444;background:#fef2f2;color:#991b1b}.battle-chat-msg__text{word-break:break-word}.battle-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.battle-send-split-wrap{position:relative;flex:0 0 auto;display:flex;flex-direction:column;align-items:stretch}.battle-send-split{display:flex;align-items:stretch;border-radius:9px;overflow:hidden;border:1px solid #0f172a}.battle-send-split__submit{flex:1 1 auto;min-width:3.25rem;border-radius:0!important;border:none!important;padding-left:.75rem;padding-right:.75rem}.battle-send-split__chevron{flex:0 0 auto;border-radius:0!important;border:none!important;border-left:1px solid rgba(255,255,255,.28)!important;padding:.45rem .5rem!important;min-width:2.1rem;display:flex;align-items:center;justify-content:center}.battle-send-split__chevron-icon{display:block;width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid currentColor}.battle-send-mode-menu{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:40;width:100%;min-width:0;box-sizing:border-box;padding:.25rem;border-radius:10px;border:1px solid #e2e8f0;background:#fff;box-shadow:0 10px 28px #0f172a1f}.battle-send-mode-menu__item{display:block;width:100%;margin:0;padding:.42rem .55rem;border:none;border-radius:7px;background:transparent;font-size:.88rem;font-weight:700;color:#1e293b;text-align:left;cursor:pointer}.battle-send-mode-menu__item:hover{background:#f1f5f9}#battle-root.battle-root--shell .battle-play--layout-coop .battle-play-column--command{display:grid;grid-template-columns:minmax(220px,1fr) minmax(280px,1.12fr);grid-template-rows:auto auto;gap:.75rem;align-items:stretch}#battle-root.battle-root--shell .battle-play--layout-coop .battle-play-chat{display:flex;flex-direction:column;grid-column:1;grid-row:1;min-height:0;align-self:stretch;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;overflow:hidden}#battle-root.battle-root--shell .battle-play--layout-coop .battle-play-command-stack{display:contents}#battle-root.battle-root--shell .battle-play--layout-coop .battle-play-row{grid-column:2;grid-row:1;min-width:0;align-self:stretch}#battle-root.battle-root--shell .battle-play--layout-coop .battle-play-column--command .battle-form{grid-column:2;grid-row:2;min-width:0}#battle-root.battle-root--shell .battle-play--layout-coop .battle-opp-typing-indicator{background:transparent;border:none;border-bottom:none;min-height:0;padding:.2rem .35rem .35rem}.battle-speech-bubble--negotiate{opacity:.72;filter:saturate(.85)}.battle-play-column--guess:not(:has(.battle-trickster-guess:not(.hidden))):not(:has(.battle-trickster-photographer-side:not(.hidden))){display:none}.battle-play-row{display:flex;align-items:flex-start;gap:.75rem;margin:.85rem 0 1rem}#battle-root.battle-root--shell .battle-play--layout-trickster-trickster .battle-play-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.75rem;align-items:start}#battle-root.battle-root--shell .battle-play--layout-trickster-trickster .battle-play-column--command{display:flex;flex-direction:column;gap:.65rem;min-width:0}#battle-root.battle-root--shell .battle-play--layout-trickster-trickster .battle-play-row{margin:0}#battle-root.battle-root--shell .battle-command-stat-group{display:flex;flex-direction:row;align-items:stretch;gap:.65rem;min-width:0;flex:1 1 auto}#battle-root.battle-root--shell .battle-command-stat-group .battle-eval-col{flex:0 0 auto;align-self:stretch;padding-top:1.45rem}#battle-root.battle-root--shell .battle-command-stat-group .battle-canvas-wrap--self{flex:1 1 auto;min-width:0}#battle-root.battle-root--shell .battle-play--layout-trickster-trickster .battle-canvases{position:relative;grid-template-columns:1fr;max-width:100%;margin:0 auto;justify-items:center}#battle-root.battle-root--shell .battle-play--layout-trickster-trickster .battle-canvas-wrap--self .battle-canvas-label{text-align:center;padding-right:0}#battle-root.battle-root--shell .battle-play--layout-trickster-trickster .battle-canvas-wrap--opp .battle-canvas-viewport,#battle-root.battle-root--shell .battle-play--layout-trickster-trickster .battle-canvas-wrap--opp .battle-canvas-label{display:none!important}#battle-root.battle-root--shell .battle-play--layout-trickster-trickster .battle-canvas-wrap--opp{position:absolute;left:.35rem;top:.15rem;z-index:8;max-width:min(78%,18rem);pointer-events:none}#battle-root.battle-root--shell .battle-play--layout-trickster-trickster .battle-speech-bubble--opp{position:relative;transform:none;top:0;left:0}#battle-root.battle-root--shell .battle-play--layout-trickster-trickster .battle-trickster-guess{margin:0;padding:0;border:none;background:transparent;display:flex;flex-direction:column;min-height:0;flex:1 1 auto;gap:0}#battle-root.battle-root--shell .battle-play--layout-trickster-trickster .battle-trickster-guess-stat-row{display:flex;flex-direction:row;align-items:flex-start;gap:.65rem;width:100%;min-height:0;flex:1 1 auto}#battle-root.battle-root--shell .battle-play--layout-trickster-trickster .battle-trickster-guess-stat-row .battle-trickster-guess__canvas{flex:1 1 auto;min-width:0;max-width:none}#battle-root.battle-root--shell .battle-play--layout-trickster-trickster .battle-trickster-guess-stat-row .battle-eval-col{flex:0 0 auto;align-self:stretch;padding-top:0;position:relative}#battle-root.battle-root--shell .battle-play--layout-trickster-trickster .battle-trickster-guess-stat-row .battle-eval-bar{min-height:120px}#battle-root.battle-root--shell .battle-eval-col--trickster-guess-side.battle-eval-col--guess-waiting .battle-eval-bar{background:#525a6a;transition:background .35s ease,box-shadow .35s ease}#battle-root.battle-root--shell .battle-eval-col--trickster-guess-side.battle-eval-col--guess-waiting .battle-eval-bar-fill{background:#d1d5db}#battle-root.battle-root--shell .battle-eval-col--trickster-guess-side.battle-eval-col--guess-waiting .battle-eval-bar-divider{background:#1118276b}#battle-root.battle-root--shell .battle-eval-col--trickster-guess-side.battle-eval-col--guess-waiting .battle-eval-bar-pct{color:#f3f4f6;text-shadow:0 1px 2px rgba(0,0,0,.45)}#battle-root.battle-root--shell .battle-eval-col--trickster-guess-side.battle-eval-col--guess-verify-pulse .battle-eval-bar{background:#0b1220;box-shadow:0 0 0 2px #6366f18c,0 8px 28px #6366f159}#battle-root.battle-root--shell .battle-eval-col--trickster-guess-side.battle-eval-col--guess-verify-pulse .battle-eval-bar-fill{background:#fff}#battle-root.battle-root--shell .battle-eval-col--trickster-guess-side.battle-eval-col--guess-verify-pulse .battle-eval-bar-divider{background:#ffffff8c}#battle-root.battle-root--shell .battle-eval-col--trickster-guess-side.battle-eval-col--guess-verify-pulse .battle-eval-bar-pct{color:#ffffffeb;text-shadow:0 1px 2px rgba(0,0,0,.35)}@keyframes battle-trickster-eval-verify-flash{0%{transform:scale(1);filter:brightness(1)}40%{transform:scale(1.07);filter:brightness(1.22)}to{transform:scale(1);filter:brightness(1)}}#battle-root.battle-root--shell .battle-eval-col--trickster-guess-side.battle-eval-col--guess-verify-pulse{animation:battle-trickster-eval-verify-flash .88s ease-out 1;transform-origin:center center}#battle-root.battle-root--shell .battle-play--layout-coop .battle-play-column--guess{display:none}#battle-root.battle-root--shell .battle-play--layout-coop .battle-eval-col:first-child{display:none!important}#battle-root.battle-root--shell .battle-play--layout-trickster-photographer .battle-canvases{position:relative}#battle-root.battle-root--shell .battle-play--layout-trickster-photographer .battle-canvas-wrap--opp .battle-canvas-viewport,#battle-root.battle-root--shell .battle-play--layout-trickster-photographer .battle-canvas-wrap--opp .battle-canvas-label{display:none!important}#battle-root.battle-root--shell .battle-play--layout-trickster-photographer .battle-canvas-wrap--opp{position:absolute;left:.35rem;top:.15rem;z-index:8;max-width:min(78%,18rem);pointer-events:none}#battle-root.battle-root--shell .battle-play--layout-trickster-photographer .battle-speech-bubble--opp{position:relative;transform:none;top:0;left:0}#battle-root.battle-root--shell .battle-play--layout-trickster-photographer .battle-play-row,#battle-root.battle-root--shell .battle-play--layout-coop .battle-play-row{display:flex;flex-direction:row;align-items:flex-start;gap:.35rem;justify-content:center;margin-left:0;margin-right:0}#battle-root.battle-root--shell .battle-play--layout-coop .battle-eval-col:last-child{order:-1}#battle-root.battle-root--shell .battle-play--layout-coop .battle-canvas-wrap--self .battle-canvas-label:empty{display:none}#battle-root.battle-root--shell .battle-play--layout-coop .battle-speech-bubble{display:none!important}#battle-root.battle-root--shell .battle-play--layout-trickster-photographer .battle-canvases,#battle-root.battle-root--shell .battle-play--layout-coop .battle-canvases{grid-template-columns:1fr;max-width:min(560px,100%);margin:0;justify-items:center;position:relative}#battle-root.battle-root--shell .battle-play--layout-trickster-photographer .battle-eval-col{padding-top:1.25rem}#battle-root.battle-root--shell .battle-play--layout-trickster-photographer .battle-play-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.75rem;align-items:stretch}#battle-root.battle-root--shell .battle-play--layout-trickster-photographer .battle-play-column--guess{display:flex;flex-direction:column;flex:1 1 0;min-width:0;align-self:stretch}#battle-root.battle-root--shell .battle-play--layout-trickster-photographer .battle-trickster-photographer-side{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;gap:.5rem;margin-top:0}#battle-root.battle-root--shell .battle-play--layout-trickster-photographer .battle-trickster-guess.battle-trickster-guess--preview{flex:1 1 auto;display:flex;flex-direction:column;min-height:0;margin:0;padding:0;border:none;background:transparent;box-shadow:none}#battle-root.battle-root--shell .battle-play--layout-trickster-photographer .battle-trickster-guess--preview .battle-trickster-guess__label{text-align:center;padding-right:0;margin:0 0 .4rem;font-size:.85rem;font-weight:800;color:#1f2937}#battle-root.battle-root--shell .battle-play--layout-trickster-photographer .battle-trickster-guess-stat-row--preview{flex:1 1 auto;min-height:0}#battle-root.battle-root--shell .battle-play--layout-trickster-photographer .battle-trickster-guess-hint-row{flex:0 0 auto;min-height:2.75rem;display:flex;align-items:center;justify-content:center;padding:0 .35rem}#battle-root.battle-root--shell .battle-play--layout-trickster-photographer .battle-play-column--guess .battle-trickster-guess:not(.battle-trickster-guess--preview){display:none!important}#battle-root.battle-root--shell .battle-play--layout-trickster-photographer .battle-trickster-guess--preview .battle-trickster-guess-stat-row--preview{display:flex;flex-direction:row;align-items:flex-start;gap:.65rem;width:100%;min-height:0}#battle-root.battle-root--shell .battle-play--layout-trickster-photographer .battle-trickster-guess-stat-row--preview .battle-trickster-guess__canvas--preview{flex:1 1 auto;min-width:0;max-width:none}#battle-root.battle-root--shell .battle-play--layout-trickster-photographer .battle-trickster-guess-stat-row--preview .battle-eval-col{flex:0 0 auto;align-self:stretch;padding-top:0}#battle-root.battle-root--shell .battle-play--layout-trickster-photographer .battle-trickster-guess-stat-row--preview .battle-eval-bar{min-height:120px}#battle-root.battle-root--shell .battle-play--layout-trickster-photographer .battle-form-wrapper,#battle-root.battle-root--shell .battle-play--layout-coop .battle-form-wrapper{grid-template-columns:1fr;max-width:min(560px,100%);margin:0 auto;width:100%}#battle-root.battle-root--shell .battle-play--layout-coop .battle-canvas-wrap--opp .battle-canvas-viewport,#battle-root.battle-root--shell .battle-play--layout-coop .battle-canvas-wrap--opp .battle-canvas-label{display:none!important}#battle-root.battle-root--shell .battle-play--layout-coop .battle-canvas-wrap--opp{position:absolute;left:.35rem;top:.15rem;z-index:8;max-width:min(78%,18rem);pointer-events:none}#battle-root.battle-root--shell .battle-play--layout-coop .battle-speech-bubble--opp{position:relative;transform:none;top:0;left:0}#battle-root.battle-root--shell .battle-play--layout-coop .battle-canvas-wrap--self .battle-canvas-label,#battle-root.battle-root--shell .battle-play--layout-trickster-photographer .battle-canvas-wrap--self .battle-canvas-label{text-align:center;padding-right:0}.battle-side-stat{flex:0 0 3.25rem;display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:.45rem .35rem;border-radius:12px;background:#f1f5f9;border:1px solid #e2e8f0;min-height:180px}.battle-stat-caption{font-size:.65rem;font-weight:700;color:#64748b;text-align:center;line-height:1.25;max-width:3.5rem}.battle-stat-nums{font-size:.68rem;font-weight:600;color:#334155;text-align:center;line-height:1.25;max-width:3.6rem}.battle-stat-track{flex:1 1 auto;width:.55rem;min-height:72px;border-radius:999px;background:#e2e8f0;position:relative;overflow:hidden;align-self:stretch;margin-top:.15rem}.battle-stat-fill{position:absolute;left:0;right:0;bottom:0;height:50%;border-radius:999px;background:linear-gradient(180deg,#818cf8,#4f46e5);transition:height .35s ease}.battle-canvases{flex:1 1 auto;display:grid;grid-template-columns:1fr 1fr;gap:.75rem;min-width:0}@media(max-width:860px){.battle-play-row{flex-wrap:wrap;justify-content:center}.battle-side-stat{min-height:140px}.battle-canvases{flex:1 1 100%;grid-template-columns:1fr}.battle-form-wrapper,#battle-root.battle-root--shell .battle-play--layout-trickster-trickster .battle-play-main,#battle-root.battle-root--shell .battle-play--layout-trickster-photographer .battle-play-main{grid-template-columns:1fr}}.battle-canvas-wrap{min-width:0;display:flex;flex-direction:column;position:relative}.battle-canvas-label{margin:0 0 .4rem;font-size:.85rem;font-weight:800;color:#1f2937}.battle-canvas-wrap--self .battle-canvas-label{text-align:right;padding-right:.05rem}#battle-root.battle-root--shell .battle-canvas-viewport{position:relative;display:block}#battle-root.battle-root--shell .battle-canvas-viewport .battle-canvas-quality{position:absolute;z-index:6}#battle-root.battle-root--shell .battle-canvas-viewport .battle-canvas-quality--opp{top:10px;right:10px;left:auto}#battle-root.battle-root--shell .battle-canvas-viewport .battle-canvas-quality--self{top:10px;right:10px}#battle-root.battle-root--shell .battle-play--layout-trickster-trickster .battle-canvas-wrap--self .battle-canvas-quality--self,#battle-root.battle-root--shell .battle-play--layout-trickster-photographer .battle-canvas-wrap--self .battle-canvas-quality--self,#battle-root.battle-root--shell .battle-play--layout-trickster-trickster .battle-canvas-wrap--self .battle-canvas-quality-popover--self,#battle-root.battle-root--shell .battle-play--layout-trickster-photographer .battle-canvas-wrap--self .battle-canvas-quality-popover--self{right:calc(10px + max(0px,(100% - 520px) / 2))}#battle-root.battle-root--shell .battle-play--layout-trickster-trickster .battle-canvas-wrap--self .canvas-help,#battle-root.battle-root--shell .battle-play--layout-trickster-photographer .battle-canvas-wrap--self .canvas-help{border-radius:10px}#battle-root.battle-root--shell .battle-canvas-viewport .battle-canvas-quality-popover{width:min(208px,calc(100% - 20px));top:48px}#battle-root.battle-root--shell .battle-canvas-viewport .battle-canvas-quality-popover--opp,#battle-root.battle-root--shell .battle-canvas-viewport .battle-canvas-quality-popover--self{right:10px;left:auto}.battle-speech-container{position:relative;display:flex;flex-direction:column}.battle-speech-bubble{position:absolute;top:-.2rem;z-index:4;max-width:min(18rem,calc(100vw - 2.5rem));padding:.5rem .62rem;border-radius:11px;border:1px solid #d4d4d8;box-shadow:0 6px 16px #0f172a1f;transform:translateY(-100%)}.battle-speech-bubble--opp{left:.55rem;background:#fff;border-color:#d4d4d8}#battle-root.battle-root--shell .battle-play.battle-play--layout-classic .battle-speech-bubble--opp,#battle-root.battle-root--shell .battle-play.battle-play--layout-trickster-photographer .battle-speech-bubble--opp{left:3.25rem;max-width:min(18rem,calc(100vw - 5rem))}.battle-speech-bubble--self{right:.55rem;background:#22c55e;border-color:#16a34a}.battle-speech-text{font-size:.82rem;font-weight:600;line-height:1.35;color:#0f172a;word-break:break-word}.battle-speech-bubble--self .battle-speech-text{color:#052e16}.battle-speech-tail{position:absolute;bottom:-7px;width:12px;height:12px;transform:rotate(45deg)}.battle-speech-tail--left{left:1rem;background:#fff;border-right:1px solid #d4d4d8;border-bottom:1px solid #d4d4d8}.battle-speech-tail--right{right:1rem;background:#22c55e;border-right:1px solid #16a34a;border-bottom:1px solid #16a34a}.battle-cv{display:block;width:100%;max-width:520px;height:auto;border-radius:12px;border:1px solid #e2e8f0;background:#f8fafc}.battle-form{display:block;margin-bottom:.35rem}.battle-trickster-guess{margin:0 0 .8rem;padding:.55rem .65rem .65rem;border-radius:12px;border:1px solid #e2e8f0;background:#f8fafc}#battle-root.battle-root--shell .battle-play--layout-trickster-trickster .battle-trickster-guess__label{text-align:center;padding-right:0;margin:0 0 .4rem;font-size:.85rem;font-weight:800;color:#1f2937}#battle-root.battle-root--shell .battle-trickster-judge-bar{margin-top:.55rem;width:100%;max-width:none}#battle-root.battle-root--shell .battle-trickster-judge-bar__row{display:flex;flex-direction:row;align-items:center;gap:.55rem;width:100%;min-width:0}#battle-root.battle-root--shell .battle-trickster-judge-bar__track{flex:1 1 auto;min-width:0;height:13px;border-radius:999px;background:#e2e8f0;overflow:hidden}#battle-root.battle-root--shell .battle-trickster-judge-bar__fill{height:100%;width:0%;border-radius:999px;background:linear-gradient(90deg,#6366f1,#a855f7);transition:none}#battle-root.battle-root--shell .battle-trickster-judge-bar__cta{flex:0 0 auto;font-size:.72rem;font-weight:800;color:#475569;letter-spacing:.02em;white-space:nowrap;transition:color .2s ease,text-shadow .2s ease}#battle-root.battle-root--shell .battle-trickster-judge-bar__cta--pulse{animation:battle-trickster-judge-cta-pulse .65s ease-out 1}@keyframes battle-trickster-judge-cta-pulse{0%{color:#475569;text-shadow:none}35%{color:#4f46e5;text-shadow:0 0 12px rgba(99,102,241,.65)}to{color:#475569;text-shadow:none}}.battle-trickster-guess__canvas{display:block;width:100%;max-width:420px;height:auto;border-radius:10px;border:1px solid #dbeafe;background:#fff;touch-action:none}.battle-trickster-guess__canvas--preview{touch-action:auto}.battle-trickster-guess-preview-hint{margin:0;font-size:.82rem;font-weight:700;color:#475569;text-align:center;line-height:1.35}.battle-form-wrapper{display:grid;grid-template-columns:1fr;gap:.6rem;align-items:center}.battle-opp-typing-indicator{flex:0 0 auto;min-height:2.1rem;display:flex;align-items:center;justify-content:center;width:100%;padding:.35rem .5rem;font-size:.9rem;font-weight:700;color:#475569;text-align:center;border-bottom:1px solid #e2e8f0;background:#f1f5f9a6}.battle-opp-typing-indicator:after{content:".";display:inline-block;width:1.1em;text-align:left;animation:battle-typing-dots 1.2s steps(4,end) infinite}@keyframes battle-typing-dots{0%{content:"."}25%{content:".."}50%{content:"..."}75%{content:""}to{content:"."}}.battle-input-group{display:flex;gap:.5rem;align-items:center}.battle-msg{flex:1 1 auto;min-width:0;padding:.52rem .68rem;border:1px solid #cbd5e1;border-radius:10px;font-size:.92rem}.battle-timer-display{margin:.05rem auto .35rem;text-align:center;font-variant-numeric:tabular-nums;font-size:2.4rem;font-weight:800;color:#111827;letter-spacing:.08em;line-height:1;transition:color .2s ease}.battle-timer-display--urgent{color:#dc2626}.battle-blocking-loading{position:fixed;top:0;right:0;bottom:0;left:0;z-index:13100;display:flex;align-items:center;justify-content:center;background:#0f172a6b}.battle-blocking-loading__card{width:min(21rem,calc(100vw - 2rem));border-radius:14px;border:1px solid rgba(226,232,240,.92);background:#111827e0;box-shadow:0 18px 46px #02061773;padding:1rem 1rem .95rem;text-align:center}.battle-blocking-loading__spinner{width:1.65rem;height:1.65rem;display:inline-block;border:2px solid rgba(255,255,255,.25);border-top-color:#e2e8f0;border-radius:999px;animation:battle-blocking-spin .8s linear infinite}.battle-blocking-loading__label{margin:.52rem 0 0;font-size:.92rem;font-weight:700;color:#f8fafc}.battle-blocking-loading__pct{display:inline-block;margin:.32rem 0 .42rem;font-size:.82rem;font-weight:800;color:#cbd5e1}.battle-blocking-loading__track{height:8px;border-radius:999px;overflow:hidden;background:#94a3b859}.battle-blocking-loading__fill{width:0%;height:100%;border-radius:999px;background:linear-gradient(90deg,#94a3b8,#f8fafc);transition:width .1s linear}@keyframes battle-blocking-spin{to{transform:rotate(360deg)}}#battle-root .battle-modal__card--game-over{max-width:24rem}#battle-root .battle-modal__game-over-title{margin:0 0 .3rem;font-size:1.35rem;font-weight:900;color:#0f172a}#battle-root .battle-modal__game-over-time{margin:0 0 .9rem;font-size:.95rem;font-weight:700;color:#334155}#battle-root .battle-modal__game-over-actions{display:flex;gap:.6rem;justify-content:center}.battle-modal__game-over-confetti{position:fixed;top:0;right:0;bottom:0;left:0;z-index:13040;pointer-events:none}.workshop-shell{max-width:560px;position:relative}.workshop-card{margin-top:1rem;border-radius:14px;border:1px solid rgba(15,23,42,.12);background:#fffffff0;box-shadow:0 12px 30px #0f172a1f;padding:.9rem;position:relative}.workshop-card--feed{padding-bottom:5rem}.workshop-card h2{margin:0 0 .75rem;font-size:1rem}.workshop-special-ui{display:grid;gap:.55rem}.workshop-special-ui textarea{width:100%;min-height:124px;border-radius:10px;border:1px solid #cbd5e1;padding:.65rem;resize:vertical;font:inherit}.workshop-special-ui__hint{font-size:.84rem;color:#475569}.workshop-special-ui__hint--ok{color:#166534;font-weight:700}.workshop-special-ui__hint--bad{color:#b91c1c;font-weight:700}.workshop-toolbar{display:flex;flex-wrap:wrap;gap:.5rem}.workshop-toolbar--center{justify-content:center}.workshop-feed-head{display:flex;align-items:center;justify-content:space-between;gap:.65rem;margin-bottom:.55rem}.workshop-tabs{display:inline-flex;align-items:center;gap:.8rem;border-bottom:1px solid rgba(15,23,42,.16);padding-bottom:.16rem}.workshop-tab{border:none;padding:.38rem .04rem .42rem;background:transparent;color:#64748b;font-size:.98rem;font-weight:700;letter-spacing:.015em;cursor:pointer;position:relative;transition:color .14s ease}.workshop-tab:hover{color:#0f172a}.workshop-tab--active{color:#020617}.workshop-tab--active:after{content:"";position:absolute;left:0;right:0;bottom:-.2rem;height:2px;border-radius:999px;background:#020617}.workshop-tab__dot{color:#94a3b8;margin:0 .2rem}.workshop-tab__count{color:#94a3b8;font-size:.78rem;font-weight:600}.workshop-sort-toggle{border:none;padding:.2rem 0;margin:0;background:transparent;color:#94a3b8;font-size:.82rem;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;gap:.28rem}.workshop-sort-toggle:hover{color:#64748b}.workshop-sort-toggle__icon{font-size:.72rem;line-height:1;opacity:.85}.workshop-wc-thinking-slot,.workshop-compose-thinking-slot{margin-top:.35rem;max-width:min(640px,100%)}.workshop-shell .workshop-abandon-btn{flex-shrink:0;border:none;padding:.28rem .45rem;margin:0;background:transparent;color:#64748b;font-size:.82rem;font-weight:600;cursor:pointer;border-radius:8px}.workshop-shell .workshop-abandon-btn:hover{color:#b91c1c;background:#b91c1c0f}.workshop-btn{border:1px solid rgba(15,23,42,.14);background:#fff;color:#0f172a;border-radius:8px;padding:.45rem .7rem;font-weight:700;cursor:pointer}.workshop-btn--primary{background:#0f172a;color:#fff}.workshop-btn:hover{background:#f1f5f9}.workshop-btn--primary:hover{background:#020617;color:#fff}.workshop-btn:disabled{opacity:.55;cursor:not-allowed}.workshop-feed{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:.7rem}.workshop-empty-text{grid-column:1 / -1;margin:1.2rem 0 .6rem;text-align:center;color:#475569;font-size:.95rem}.workshop-item{border:1px solid rgba(15,23,42,.12);border-radius:10px;padding:.6rem .7rem;background:#fff}.workshop-item__meta{margin-top:.35rem;display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;font-size:.8rem;color:#64748b;justify-content:flex-end}.workshop-item__title{margin:0;font-size:1.08rem;color:#0f172a;text-align:center;font-family:inherit;font-weight:700}.workshop-item__canvas-wrap{margin-top:.45rem;border:1px solid rgba(15,23,42,.12);border-radius:8px;overflow:hidden;background:#f8fafc}.workshop-item__canvas{display:block;width:100%;height:auto}.workshop-item__vote{display:inline-flex;gap:.4rem}.workshop-like-stat{font-weight:800;color:#334155}.workshop-lock-tip{width:100%;color:#a16207}.workshop-pill{border-radius:999px;border:1px solid rgba(15,23,42,.15);padding:.18rem .5rem;background:#fff;color:#0f172a}.workshop-pill--easy,.workshop-pill--mid,.workshop-pill--hard{background:#e5e7eb}.workshop-feed-section.hidden{display:none!important}.workshop-compose-surface-full{margin-top:1rem;padding:.65rem .75rem 1rem;border-radius:14px;border:1px solid rgba(15,23,42,.12);background:#fffffff5;box-shadow:0 8px 24px #0f172a0f}.workshop-compose-surface-full.hidden{display:none!important}.workshop-fab{position:absolute;right:.85rem;bottom:.85rem;width:50px;height:50px;border:none;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:0;font-size:1.55rem;font-family:inherit;line-height:1;white-space:nowrap;overflow:hidden;color:#fff;background:#111827;box-shadow:0 14px 24px #0206173d;cursor:pointer;text-decoration:none;z-index:50;transition:width .28s ease,border-radius .28s ease,transform .2s ease,background-color .2s ease}.workshop-fab:hover{width:152px;border-radius:28px;transform:translateY(-1px);background:#000}.workshop-fab__plus{display:inline-block;font-weight:700;font-size:1.65rem;line-height:1;min-width:1ch;margin-right:0}.workshop-fab__label{font-size:1rem;font-weight:800;opacity:0;width:0;overflow:hidden;transform:translate(8px);transition:opacity .2s ease,transform .2s ease,width .2s ease}.workshop-compose-surface{position:relative;margin-top:1rem;padding:2.75rem 1rem 1.25rem;border-radius:14px;border:1px solid rgba(15,23,42,.12);background:#fffffff5;box-shadow:0 8px 24px #0f172a0f}.workshop-compose-heading{margin:0 0 .85rem;text-align:center;font-size:1.55rem;font-weight:800;color:#020617;letter-spacing:.02em}.workshop-compose-name-input{display:block;width:min(380px,100%);margin:0 auto;border-radius:10px;border:1px solid #cbd5e1;padding:.65rem .85rem;font:inherit;text-align:center}.workshop-compose-play-layout{margin-top:.25rem}.workshop-close-btn{position:absolute;right:.9rem;top:.9rem;width:34px;height:34px;border-radius:999px;border:1px solid rgba(15,23,42,.24);display:inline-flex;align-items:center;justify-content:center;color:#334155;background:#fff;text-decoration:none;font-size:1.1rem;line-height:1}.workshop-close-btn:hover{color:#0f172a;background:#f8fafc}.workshop-fab:hover .workshop-fab__label{opacity:1;width:7.5em;margin-left:.38rem;transform:translate(0)}.workshop-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:1rem}.workshop-modal__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#02061773;cursor:pointer}.workshop-modal__panel{position:relative;z-index:1;width:min(640px,100%);border-radius:14px;border:1px solid rgba(148,163,184,.45);background:#fff;box-shadow:0 18px 50px #0f172a38;padding:.9rem;display:grid;gap:.6rem}.workshop-modal__panel--compose{width:min(400px,calc(100vw - 2rem));max-width:400px;padding:2.25rem .75rem .85rem;gap:.5rem}.workshop-compose-heading--modal{font-size:1.22rem;font-weight:800;margin:0 0 .5rem}.workshop-compose-name-hint:not(.hidden){text-align:center}.workshop-modal__head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.workshop-modal__head h2{margin:0;font-size:1.15rem}.workshop-field{display:grid;gap:.35rem;color:#334155;font-size:.84rem}.workshop-field input{width:100%;border-radius:9px;border:1px solid #cbd5e1;padding:.55rem .6rem;font:inherit}.workshop-composer-step{display:grid;gap:.65rem}.workshop-composer-stage{display:block}.workshop-composer-stage__title{margin:0;font-weight:700;color:#0f172a;text-align:center}.workshop-canvas-wrap{margin-top:.5rem}#composerStageCanvas{display:block;width:100%;max-width:520px;height:auto;margin-inline:auto}.workshop-compose-stage-hint:not(.hidden){margin:.55rem 0 .3rem}.workshop-compose-row{margin-top:.45rem}.workshop-compose-stage-hint:not(.hidden)~.workshop-compose-row{margin-top:0}.workshop-compose-stage .hint,.workshop-compose-stage .single-history-rail__empty{font:inherit}.workshop-composer-history{margin:0;padding-left:1.35rem;max-height:180px;overflow:auto;color:#475569;display:grid;gap:.25rem}.workshop-btn--challenge{background:#0f172a;color:#fff;border-color:#0f172a;transition:background-color .14s ease,color .14s ease,border-color .14s ease}.workshop-btn--challenge:hover{background:#334155;color:#fff;border-color:#334155}.workshop-challenge-main .title-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap}.workshop-wc-page-title{margin:0;font-size:1.35rem;font-weight:800;color:#0f172a}.workshop-wc-abandon-btn{flex-shrink:0;border:none;padding:.28rem .45rem;margin:0;background:transparent;color:#64748b;font:inherit;font-size:.82rem;font-weight:600;cursor:pointer;border-radius:8px;text-decoration:none}.workshop-wc-abandon-btn:hover{color:#b91c1c;background:#b91c1c0f}.workshop-wc-abandon-btn--muted{border:none;padding:.38rem .75rem;margin:0;background:transparent;color:#94a3b8;font:inherit;font-size:.84rem;font-weight:600;cursor:pointer;border-radius:999px;box-shadow:none;text-decoration:none;transition:background-color .14s ease,color .14s ease,box-shadow .14s ease}.workshop-wc-abandon-btn--muted:hover{background:#dc2626;color:#fff;box-shadow:0 2px 8px #dc262647}.workshop-wc-hint{line-height:1.45;color:#475569}.workshop-wc-goal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:flex;align-items:center;justify-content:center;padding:1rem;background:#02061766;pointer-events:auto;cursor:default}.workshop-wc-goal.hidden{display:none!important}.workshop-wc-goal__panel{position:relative;max-width:min(520px,94vw);width:100%;background:#fff;border-radius:14px;border:1px solid rgba(148,163,184,.45);box-shadow:0 18px 50px #0f172a33;padding:1.15rem 1.25rem 1.25rem}.workshop-wc-goal__header{margin:0 0 .75rem}.workshop-wc-goal__title{margin:0;text-align:center;font-size:1.35rem;color:#0f172a;padding-inline:2rem}.workshop-wc-goal__close{position:absolute;top:.55rem;right:.55rem;width:2.25rem;height:2.25rem;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:10px;background:#f1f5f9fa;color:#64748b;font-size:1.45rem;line-height:1;cursor:pointer}.workshop-wc-goal__close:hover{background:#e2e8f0;color:#0f172a}.workshop-wc-goal__body{display:grid;gap:.5rem;font-size:.9rem;color:#334155}.workshop-wc-goal__row{display:flex;align-items:center;justify-content:center;gap:.5rem;flex-wrap:wrap}.workshop-wc-goal__stars{display:inline-flex;gap:.12rem;min-width:4.2em;justify-content:flex-start}.workshop-wc-goal__star{color:#cbd5e1;font-size:1.15rem;line-height:1}.workshop-wc-goal__star--on{color:#ca8a04;text-shadow:0 0 .5px rgba(202,138,4,.5)}.workshop-wc-goal__desc{flex:0 1 auto;min-width:0;text-align:center}.workshop-wc-goal__note{margin:.25rem 0 0;font-size:.82rem;color:#64748b}.workshop-wc-star-bar{margin:0 0 .55rem;padding:.45rem .65rem;border-radius:10px;background:#f8fafcf2;border:1px solid rgba(148,163,184,.35);font-size:.88rem;color:#334155;line-height:1.45}.workshop-wc-star-bar__inner{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem .65rem}.workshop-wc-star-bar__label{font-weight:700;color:#0f172a}.workshop-wc-star-bar .workshop-wc-goal__stars{display:inline-flex;gap:.08rem}.workshop-wc-star-bar .workshop-wc-goal__star{font-size:1.05rem}.workshop-wc-star-bar__tier{font-weight:600;color:#0f172a}.workshop-wc-star-bar__rounds{margin-left:auto;font-weight:600;color:#475569}.workshop-wc-settlement-modal{position:relative;max-width:min(440px,calc(100vw - 2rem))}.workshop-wc-settlement-back-link{position:absolute;top:.85rem;left:.75rem;z-index:2;display:inline-flex;align-items:center;gap:.12rem;margin:0;padding:.2rem .25rem;border:none;background:none;font:inherit;font-size:.92rem;font-weight:500;color:#94a3b8;cursor:pointer;text-decoration:none;-webkit-tap-highlight-color:transparent}.workshop-wc-settlement-back-link:hover{color:#64748b}.workshop-wc-settlement-back-link:active{color:#475569}.workshop-wc-settlement-back-arrow{display:inline-block;font-size:1.05rem;line-height:1;transform:translateY(-.02em)}.workshop-wc-settlement-success-title{margin-top:.15rem;padding-inline:2.5rem;font-size:1.78rem;font-weight:800;letter-spacing:.02em;line-height:1.25}@media(max-width:380px){.workshop-wc-settlement-success-title{font-size:1.45rem}}.workshop-wc-settlement-head{opacity:0;transform:translateY(10px);transition:opacity .42s ease,transform .42s ease}.workshop-wc-settlement-head--in{opacity:1;transform:translateY(0)}.workshop-wc-settlement-stars-row{display:flex;justify-content:center;align-items:flex-end;gap:.45rem;min-height:3.5rem;margin:.15rem 0 .35rem}.workshop-wc-settlement-star-slot{display:inline-flex;align-items:center;justify-content:center;opacity:0;transform:scale(.5);transition:opacity .38s ease,transform .45s cubic-bezier(.34,1.56,.64,1)}.workshop-wc-settlement-star-slot--in{opacity:1;transform:scale(1)}.workshop-wc-settlement-stars-row .workshop-wc-goal__star{font-size:2.45rem;line-height:1}.workshop-wc-settlement-detail{margin:0 0 .55rem;font-size:.98rem;line-height:1.55;color:#334155;text-align:center}.workshop-wc-settlement-float{opacity:0;transform:translateY(14px)}.workshop-wc-settlement-float--in{opacity:1;transform:translateY(0);transition:opacity .48s ease,transform .48s ease}.workshop-wc-settlement-rating-ask{margin:.35rem 0 .75rem;font-size:1.02rem;font-weight:700;color:#0f172a;text-align:center}.workshop-wc-settlement-footer{width:100%}.workshop-wc-settlement-vote-row{display:flex;justify-content:center;align-items:center;margin-top:.15rem}.workshop-wc-vote-dock{--workshop-vote-gray: #3f3f46;display:inline-flex;align-items:center;gap:.35rem;flex-wrap:nowrap;justify-content:center;max-width:100%}.workshop-wc-vote-btn{box-sizing:border-box;margin:0;padding:.12rem;border:none;background:none;cursor:pointer;line-height:1;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;color:var(--workshop-vote-gray);-webkit-tap-highlight-color:transparent;overflow:hidden;transition:max-width .38s cubic-bezier(.33,1,.68,1),opacity .34s ease,margin .34s ease,padding .34s ease,transform .18s ease}.workshop-wc-vote-svg{display:block;width:2.05rem;height:1.78rem;vertical-align:middle}.workshop-wc-vote-shape{transition:fill .22s ease,stroke .22s ease}.workshop-wc-vote-btn:not(.workshop-wc-vote-btn--picked) .workshop-wc-vote-shape{fill:none;stroke:var(--workshop-vote-gray)}.workshop-wc-vote-btn--picked .workshop-wc-vote-shape{fill:var(--workshop-vote-gray);stroke:var(--workshop-vote-gray)}.workshop-wc-vote-btn:hover:not(.workshop-wc-vote-btn--picked){color:#52525b}.workshop-wc-vote-btn:hover:not(.workshop-wc-vote-btn--picked) .workshop-wc-vote-shape{stroke:#52525b}.workshop-wc-vote-btn:active{transform:scale(.94)}.workshop-wc-vote-dock--up .workshop-wc-vote-btn--down,.workshop-wc-vote-dock--down .workshop-wc-vote-btn--up{max-width:0;min-width:0;opacity:0;margin:0;padding:0;pointer-events:none;overflow:hidden;transform:translate(10px) scale(.7)}.workshop-wc-vote-feedback{font-size:.88rem;font-weight:700;color:var(--workshop-vote-gray);letter-spacing:.06em;margin-left:.1rem;white-space:nowrap;animation:workshop-wc-vote-feedback-in .35s ease both}@keyframes workshop-wc-vote-feedback-in{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:translate(0)}}@media(max-width:520px){.workshop-wc-star-bar__rounds{margin-left:0;width:100%}}.workshop-wc-stage{display:flex;align-items:stretch;gap:.6rem}.workshop-wc-stage .eval-bar{flex:0 0 auto}.workshop-wc-canvas-wrap{position:relative;flex:1 1 auto;min-width:0}.workshop-wc-canvas-wrap #wcMainCanvas{display:block;width:100%;max-width:520px;height:auto;margin-inline:auto;border-radius:12px;box-shadow:0 8px 24px #0f172a1f}.workshop-settlement-preview-body{margin:0;min-height:100vh;background:#e2e8f0}.workshop-sp-toolbar{position:sticky;top:0;z-index:2;display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.65rem .9rem;background:#f1f5f9;border-bottom:1px solid rgba(15,23,42,.1);font:inherit}.workshop-sp-title{margin:0 .5rem 0 0;font-size:.95rem;color:#0f172a}.workshop-sp-btn{border:1px solid rgba(15,23,42,.2);background:#fff;border-radius:8px;padding:.35rem .6rem;font:inherit;font-weight:600;cursor:pointer}.workshop-sp-btn:hover{background:#f8fafc}.workshop-sp-btn--ghost{border-style:dashed;font-weight:500;color:#475569}.workshop-sp-panel{max-width:400px;margin:2rem auto;padding:1.25rem;background:#fff;border-radius:14px;border:1px solid rgba(15,23,42,.12);box-shadow:0 12px 32px #0f172a1a;text-align:center}.workshop-sp-stars{font-size:2.5rem;letter-spacing:.2em;color:#ca8a04;margin:.5rem 0 .75rem}.workshop-sp-caption{margin:0;color:#334155;font-size:.95rem;line-height:1.5}
