@import"https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Fraunces:opsz,wght@9..144,500;9..144,600;9..144,700&family=Manrope:wght@400;500;600;700;800&display=swap";.workflows-page{min-height:100vh;padding:clamp(1.4rem,4vw,3.5rem);color:var(--ink)}.workflow-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;max-width:1100px}.workflow-heading__actions{display:flex;align-items:flex-end;flex-direction:column;gap:.5rem}.clear-workflows,.workflow-cancel-inline{border:1px solid #c96850;border-radius:9px;background:#fff8f4;color:#9b422f;padding:.43rem .66rem;font-size:.67rem;font-weight:850}.clear-workflows:disabled{opacity:.45;cursor:not-allowed}.workflow-cancel-inline{background:#fff4ef;white-space:nowrap}.agent-status{flex:none;display:flex;align-items:center;gap:.45rem;padding:.55rem .75rem;border:1px solid #c8dfd1;border-radius:40px;background:#eaf3ed;color:var(--spruce-deep);font-size:.7rem;font-weight:800}.agent-status span,.working-dot{width:8px;height:8px;border-radius:50%;background:#43a775;box-shadow:0 0 0 4px #43a77521}.agent-status--offline{background:#f6e8df;border-color:#eed0bf;color:#9d5337}.agent-status--offline span{background:#c86c49}.agent-status--warning{background:#fff0d7;border-color:#e8c98f;color:#8a5c18}.agent-status--warning span{background:#d18b25}.poller-alert{max-width:1100px;display:flex;align-items:center;gap:.65rem;margin:-.8rem 0 1rem;padding:.85rem 1rem;border:1px solid #e8c98f;border-radius:14px;background:#fff4df;color:#754e17;font-size:.75rem}.poller-alert span{flex:1}.poller-alert button{border:1px solid currentColor;border-radius:9px;background:transparent;color:inherit;padding:.42rem .65rem;font-weight:800}.workflow-add{max-width:1100px;padding:1rem;margin-bottom:1rem;background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:0 8px 28px #41312309}.workflow-add label{display:block;margin-bottom:.5rem;color:var(--ink-soft);font-size:.72rem;font-weight:800}.workflow-add>div{display:flex;gap:.6rem}.workflow-add input,.workflow-time input{min-width:0;flex:1;border:1px solid var(--line);border-radius:12px;background:#fffdfa;padding:.8rem .9rem;color:var(--ink);outline:none}.workflow-add .primary-button{min-width:90px;padding:.7rem 1rem}.workflow-list{display:grid;gap:.8rem;max-width:1100px}.workflow-empty{padding:3rem 1rem;border:1px dashed var(--line);border-radius:18px;color:var(--ink-soft);text-align:center}.workflow-card,.workflow-progress{position:relative;padding:1.2rem;background:var(--card);border:1px solid var(--line);border-radius:19px;box-shadow:0 8px 28px #4131230a;overflow:hidden}.workflow-card--new{animation:new-workflow 2.2s ease-out}@keyframes new-workflow{0%{background:#fff2c8;box-shadow:0 0 0 4px #e0ad3e40}}.workflow-card__top,.workflow-progress>header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.workflow-card h2,.workflow-progress h2{font-size:1.12rem;letter-spacing:-.02em}.workflow-card p{margin-top:.35rem;color:var(--ink-soft);font-size:.72rem}.workflow-progress__tools{display:flex;align-items:center;justify-content:flex-end;gap:.65rem;flex-wrap:wrap}.live-view-tab{display:flex;align-items:center;gap:.4rem;border:1px solid #b9d5c3;border-radius:999px;background:#edf6f0;color:var(--spruce-deep);padding:.42rem .68rem;font-size:.67rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.live-view-tab span{width:7px;height:7px;border-radius:50%;background:#45a875;box-shadow:0 0 0 3px #45a87524;animation:workflow-pulse 1.2s infinite alternate}.workflow-card time,.workflow-progress>header time{flex:none;color:var(--ink-soft);font-size:.7rem}.workflow-deadline--urgent{color:#b53f35!important;font-weight:800}.workflow-deadline--soon{color:#b16c19!important;font-weight:800}.workflow-start{display:block;margin:.9rem 0 0 auto;border:0;border-radius:10px;padding:.55rem .95rem;background:#3e9669;color:#fff;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.workflow-modal{width:min(660px,100%);max-height:calc(100vh - 2rem);overflow:auto;padding:1.5rem;background:#fffdfa;color:var(--ink);border-radius:24px;box-shadow:var(--shadow)}.workflow-modal>header{display:flex;justify-content:space-between;gap:1rem;margin-bottom:1.3rem}.workflow-modal h2{margin-top:.25rem;font-size:1.6rem}.workflow-range{display:grid;gap:.65rem;color:var(--ink-soft);font-size:.77rem;font-weight:800}.workflow-range input{width:100%;accent-color:var(--coral)}.workflow-time{display:flex;align-items:center;gap:.8rem;margin:.65rem 0}.workflow-time strong{min-width:65px}.workflow-wpm{padding:.75rem;border-radius:12px;background:#eef4ef;color:var(--spruce-deep);font-size:.8rem;font-weight:800}.workflow-wpm span{color:var(--ink-soft);font-size:.67rem;font-weight:500}.workflow-modal fieldset{margin:1.1rem 0;padding:1rem;border:1px solid var(--line);border-radius:15px}.workflow-modal legend{padding:0 .4rem;font:700 .7rem DM Mono,monospace;text-transform:uppercase;color:var(--coral-deep)}.workflow-modal fieldset label{display:flex;align-items:flex-start;gap:.65rem;margin:.75rem 0}.workflow-modal fieldset input{margin-top:.15rem;accent-color:var(--spruce)}.workflow-modal fieldset strong{display:block;font-size:.8rem}.workflow-modal fieldset small{color:var(--ink-soft);font-size:.68rem;margin-top:.2rem}.workflow-resources{display:grid;gap:.55rem;margin:1rem 0;padding:1rem;border:1px dashed #b9ccbf;border-radius:15px;background:#f5f8f3}.workflow-resources h3{font-size:.82rem}.workflow-resources h3 span{color:var(--ink-soft);font-size:.65rem;font-weight:500}.workflow-resources p,.workflow-resources small{color:var(--ink-soft);font-size:.68rem}.workflow-resources textarea{min-height:78px;resize:vertical;border:1px solid var(--line);border-radius:10px;padding:.65rem;background:#fffdfa;color:var(--ink)}.resource-file-picker{width:max-content;border:1px solid #91b49e;border-radius:9px;padding:.5rem .65rem;background:#edf5f0;color:var(--spruce-deep);font-size:.68rem;font-weight:850;cursor:pointer}.resource-file-picker input{display:none!important}.workflow-progress{border-left:4px solid var(--spruce)}.workflow-progress h2{display:flex;align-items:center;gap:.55rem}.working-dot{display:inline-block;animation:workflow-pulse 1.2s infinite alternate}@keyframes workflow-pulse{to{opacity:.35}}.workflow-progress__status{margin:1rem 0;padding:1rem;background:#f1f5f1;border-radius:13px}.workflow-progress__status>strong{text-transform:uppercase;font-size:.72rem}.workflow-progress__status p{color:var(--ink-soft);font-size:.7rem}.progress-track{height:7px;margin:.7rem 0;border-radius:20px;background:#dbe3dc;overflow:hidden}.progress-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--spruce),#61ad7f);transition:width .3s}.workflow-log h3{font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft)}.workflow-log p{padding:.25rem 0;color:var(--ink-soft);font:500 .68rem DM Mono,monospace}.workflow-log time{color:var(--coral-deep)}.workflow-alert{margin-top:1rem;padding:.85rem;border-radius:12px;background:#fae5dc;color:#913e31;font-size:.75rem}.workflow-alert div,.workflow-done,.preview-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;margin-top:.7rem}.workflow-alert button,.workflow-done button,.workflow-done a{border:1px solid currentColor;border-radius:9px;background:transparent;color:inherit;padding:.45rem .65rem;font-size:.68rem;font-weight:800;text-decoration:none}.workflow-done{color:var(--spruce-deep)}.workflow-done strong{margin-right:auto}.decision-trace{margin:0 0 1rem;padding:.8rem .9rem;border:1px solid #cbded2;border-radius:12px;background:#edf5f0}.decision-trace h3{color:var(--spruce-deep);font-size:.68rem;text-transform:uppercase;letter-spacing:.08em}.decision-trace p{margin:.35rem 0;color:var(--ink);font-size:.75rem}.decision-trace small{color:var(--ink-soft);font-size:.62rem}.help-response{display:flex!important;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.help-response input:not([type=file]){flex:1;min-width:180px;border:1px solid #d7a89a;border-radius:9px;background:#fffaf7;padding:.55rem .65rem;color:var(--ink)}.help-response small{flex-basis:100%}.attempt-choice{display:flex;flex-basis:100%;gap:.55rem}.attempt-choice button:first-child{background:var(--green-800,#1f5d4a);color:#fff}.workflow-preview{width:min(760px,100%)}.preview-links a{color:var(--coral-deep);font-size:.75rem;font-weight:800}.score-list{margin:1rem 0;border-top:1px solid var(--line)}.score-list>div,.overall-score{display:flex;justify-content:space-between;gap:1rem;padding:.75rem .2rem;border-bottom:1px solid var(--line);font-size:.75rem}.score-list span{color:var(--ink-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.overall-score{padding:1rem;border:0;border-radius:12px;background:#eef4ef}.preview-actions .primary-button{min-height:36px;padding:.55rem .8rem}.workflow-deliverables{margin-top:1rem;padding:.85rem;border:1px solid #c9ddd2;border-radius:12px;background:#eef6f1}.workflow-deliverables h3{margin:0;color:var(--spruce-deep);font-size:.78rem}.workflow-deliverables p{margin:.2rem 0 .55rem;color:var(--ink-soft);font-size:.68rem}.workflow-deliverables div{display:flex;flex-wrap:wrap;gap:.5rem}.workflow-deliverables a{border:1px solid var(--spruce);border-radius:9px;padding:.45rem .65rem;color:var(--spruce-deep);background:#fff;font-size:.68rem;font-weight:800;text-decoration:none}.agent-chat{margin-top:1rem;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}.agent-chat>header{padding:.7rem .8rem;display:flex;justify-content:space-between;gap:1rem;background:#f3f6f3}.agent-chat h3{margin:0;font-size:.75rem}.agent-chat header span{color:var(--ink-soft);font-size:.62rem}.agent-chat__messages{max-height:190px;overflow:auto;padding:.7rem;display:grid;gap:.45rem}.agent-chat__messages p{margin:0;padding:.5rem .65rem;border-radius:10px;font-size:.68rem;line-height:1.45}.agent-chat__messages p strong{display:block;margin-bottom:.15rem;font-size:.58rem;text-transform:uppercase;letter-spacing:.06em}.agent-chat__user{justify-self:end;max-width:85%;color:#fff;background:var(--spruce)}.agent-chat__agent{justify-self:start;max-width:85%;background:#f1ede6}.agent-chat__empty{color:var(--ink-soft);background:transparent!important}.agent-chat form{display:flex;gap:.45rem;padding:.65rem;border-top:1px solid var(--line)}.agent-chat input{flex:1;min-width:0;border:1px solid var(--line);border-radius:9px;padding:.55rem .65rem}.agent-chat button{border:0;border-radius:9px;padding:.5rem .75rem;color:#fff;background:var(--spruce);font-weight:800}.live-view-backdrop{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:clamp(.7rem,3vw,2rem);background:#16221db3;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.live-view-modal{width:min(1180px,96vw);max-height:94vh;padding:1rem;border:1px solid rgba(255,255,255,.42);border-radius:20px;background:#f7f7f1;box-shadow:0 28px 90px #00000059}.live-view-modal>header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:.25rem .3rem .8rem}.live-view-modal h2{margin:.15rem 0;font-size:1.15rem}.live-view-modal header span,.live-view-modal>p{color:var(--ink-soft);font-size:.68rem}.live-view-modal>p{margin:.65rem .25rem 0;text-align:center}.live-view-screen{display:grid;place-items:center;min-height:260px;max-height:calc(94vh - 125px);overflow:auto;border-radius:13px;background:#17201c;box-shadow:inset 0 0 0 1px #ffffff1a}.live-view-screen img{display:block;width:100%;height:auto;object-fit:contain}.live-view-waiting{display:flex;align-items:center;gap:.7rem;color:#dce9df;font-size:.78rem}.live-view-screen--controlling img{cursor:crosshair;outline:3px solid #50b47d;outline-offset:-3px}.live-controls{display:flex;align-items:center;flex-wrap:wrap;gap:.38rem;padding-top:.7rem}.live-controls>button,.live-controls form button{border:1px solid var(--line);border-radius:8px;background:#fffdfa;color:var(--ink);padding:.42rem .58rem;font-size:.65rem;font-weight:800}.live-controls .live-control-active{border-color:#3d9668;background:#3d9668;color:#fff}.live-controls form{display:flex;flex:1;min-width:260px;margin-left:auto}.live-controls input{flex:1;min-width:120px;border:1px solid var(--line);border-radius:8px 0 0 8px;padding:.42rem .55rem}.live-controls form button{border-left:0;border-radius:0 8px 8px 0}@media(max-width:640px){.workflows-page{padding:1.2rem .8rem}.workflow-heading,.workflow-card__top,.workflow-progress>header{display:grid}.workflow-heading__actions{align-items:flex-start}.agent-status{justify-self:start}.poller-alert{align-items:flex-start;flex-wrap:wrap}.poller-alert span{flex-basis:100%}.workflow-add>div{align-items:stretch}.workflow-card time{order:-1}.workflow-modal{padding:1.1rem}.score-list>div{display:grid}.workflow-progress__tools{justify-content:flex-start}.live-view-modal{padding:.65rem}.live-view-screen{min-height:180px}.workflow-progress>header time{margin-left:0}}.workflow-deliverables button{border:1px solid var(--spruce);border-radius:9px;padding:.45rem .65rem;color:var(--spruce-deep);background:#fff;font-size:.68rem;font-weight:800;text-decoration:none;cursor:pointer}.remote-page{min-height:100vh;padding:clamp(1.2rem,3vw,2.5rem);background:var(--paper)}.remote-page .section-heading{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.remote-stop{border:0;border-radius:10px;padding:.7rem 1rem;background:#a73e34;color:#fff;font-weight:900}.remote-gate{max-width:680px;margin:2rem auto;padding:1.4rem;border:1px solid var(--line);border-radius:18px;background:var(--card);display:grid;gap:.8rem}.remote-gate h2{font-size:1.35rem}.remote-gate p{color:var(--ink-soft)}.remote-gate input{border:1px solid var(--line);border-radius:10px;padding:.75rem}.remote-gate button{border:0;border-radius:10px;padding:.7rem;background:var(--spruce);color:#fff;font-weight:900}.remote-console{margin-top:1rem;border:1px solid #26342e;border-radius:16px;overflow:hidden;background:#101713;box-shadow:0 18px 50px #0a140f33}.remote-toolbar{display:flex;align-items:center;gap:.5rem;padding:.65rem;background:#1a2721;color:#e7f0eb}.remote-toolbar span{margin-right:auto;font-size:.7rem;font-weight:800}.remote-toolbar i{display:inline-block;width:8px;height:8px;margin-right:.35rem;border-radius:50%;background:#5fd08b}.remote-toolbar button{border:1px solid #53675d;border-radius:8px;padding:.45rem .65rem;background:#26372f;color:#fff;font-size:.66rem;font-weight:800}.remote-toolbar button.active{background:#9b4c3c}.remote-screen{position:relative;min-height:480px;display:grid;place-items:center;overflow:hidden;outline:none;background:#050806;touch-action:none}.remote-screen.has-frame{min-height:0}.remote-screen:focus-visible{box-shadow:inset 0 0 0 3px #5fd08b}.remote-screen.controlling{cursor:none}.remote-screen img{display:block;width:100%;height:auto;max-width:none;max-height:none;object-fit:fill;-webkit-user-select:none;user-select:none;pointer-events:none}.remote-screen:fullscreen{width:100vw;height:100vh;min-height:0;background:#050806}.remote-screen:fullscreen img{width:100%;height:100%;object-fit:fill}.remote-control-overlay{position:absolute;inset:0;border:0;color:#fff;background:#0000002e;font-weight:900;text-shadow:0 2px 8px #000}.remote-control-overlay:hover{background:#00000014}.remote-loading{color:#aebdb5;font-size:.8rem}.remote-safety{margin:0;padding:.55rem .75rem;color:#aebdb5;background:#1a2721;font-size:.62rem}@media(max-width:700px){.remote-page .section-heading{display:grid}.remote-screen:not(.has-frame){min-height:320px}.remote-toolbar{flex-wrap:wrap}.remote-toolbar span{width:100%}}.remote-screen.controlling{cursor:crosshair}.gif-backdrop{align-items:end;justify-content:flex-end;padding:1.25rem}.gif-picker{width:min(620px,100%);max-height:min(760px,calc(100vh - 2.5rem));display:flex;flex-direction:column;background:#fffdfa;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);overflow:hidden}.gif-picker header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.15rem .7rem}.gif-picker header strong{display:block;font:600 1.35rem Fraunces,serif;margin-top:.1rem}.gif-picker>input{width:calc(100% - 2.3rem);margin:0 1.15rem .5rem;border:1px solid var(--line);background:#fff;border-radius:12px;padding:.8rem .9rem;outline:none}.gif-picker>input:focus{border-color:var(--coral);box-shadow:0 0 0 3px #e66e431f}.gif-picker__content{overflow:auto;padding:.2rem 1.15rem 1rem}.gif-section+.gif-section{margin-top:1.1rem}.gif-section h3{margin:.45rem 0 .55rem;font:700 .7rem Manrope,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft)}.gif-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.45rem;max-height:none;overflow:visible;margin-top:0}.gif-grid button{border:0;padding:0;background:#eee;min-height:0;aspect-ratio:1.12;overflow:hidden;border-radius:10px;transition:transform .16s,box-shadow .16s}.gif-grid button:hover{transform:translateY(-2px);box-shadow:0 5px 13px #23313a33}.gif-picker footer{border-top:1px solid var(--line);padding:.65rem 1.15rem;color:#71807e;font:600 .62rem DM Mono,monospace;letter-spacing:.04em}.gif-picker .muted{margin:.8rem 0;font-size:.75rem}@media(max-width:640px){.gif-backdrop{align-items:center;padding:.75rem}.gif-picker{max-height:calc(100vh - 1.5rem)}.gif-grid{grid-template-columns:repeat(3,1fr)}}.rail__notifications{margin:.85rem .65rem 0;border:1px solid rgba(255,255,255,.22);border-radius:9px;background:#ffffff14;color:#fffaf2;padding:.55rem .65rem;font:700 .65rem Manrope,sans-serif}.rail__notifications:hover{background:#ffffff29}@media(max-width:900px){.rail__notifications{font-size:0;width:34px;height:34px;margin:.8rem 0 0;padding:0;border-radius:50%}.rail__notifications:after{content:"🔔";font-size:.9rem}}@media(max-width:640px){.rail__notifications{display:none}}.settings-panel{min-height:100vh;padding:clamp(1.5rem,4vw,3.5rem)}.settings-grid{max-width:1080px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;align-items:start}.settings-card{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:1.1rem;display:grid;gap:.85rem}.settings-card h2{font-size:1.35rem}.settings-card h3{font-size:.72rem;text-transform:uppercase;letter-spacing:.09em;color:var(--ink-soft);margin-top:.35rem}.settings-card label{display:grid;gap:.35rem;font-size:.72rem;color:var(--ink-soft);font-weight:800}.settings-card input:not([type=color]){border:1px solid var(--line);border-radius:10px;padding:.7rem;background:#fff}.profile-preview{display:flex;gap:.65rem;align-items:center}.avatar--profile{width:64px;height:64px;font-size:1.4rem}.avatar img{width:100%;height:100%;object-fit:cover;border-radius:inherit}.theme-options{display:flex;gap:.45rem}.theme-swatch{flex:1;border:1px solid var(--line);border-radius:10px;background:#fff;padding:.45rem;text-transform:capitalize;font-size:.65rem}.theme-swatch span{display:block;height:22px;border-radius:6px;margin-bottom:.25rem;border:1px solid rgba(0,0,0,.08)}.selected{outline:2px solid var(--coral);outline-offset:1px}.color-controls{display:grid;grid-template-columns:repeat(2,1fr);gap:.45rem}.color-controls label{text-transform:capitalize}.color-controls input{width:100%;height:30px;padding:0;border:0;background:transparent}.bubble-options{display:grid;grid-template-columns:repeat(3,1fr);gap:.45rem}.bubble-option{border:1px solid var(--line);background:#fff;padding:.5rem .25rem;border-radius:10px;display:grid;gap:.4rem;font-size:.62rem}.bubble-option span{display:block;background:var(--spruce);color:#fff;padding:.4rem;font-size:.6rem}.bubble-option--soft span{border-radius:4px 14px 14px}.bubble-option--leaf span{border-radius:16px 3px}.bubble-option--square span{border-radius:3px}[data-bubble=leaf] .bubble{border-radius:18px 3px}[data-bubble=square] .bubble{border-radius:4px}@media(max-width:900px){.settings-grid{grid-template-columns:1fr 1fr}.settings-card:last-child{grid-column:span 2}}@media(max-width:640px){.settings-panel{padding:1.5rem 1rem}.settings-grid{grid-template-columns:1fr}.settings-card:last-child{grid-column:auto}}.bubble-studio{margin:0 clamp(1.5rem,4vw,3.5rem) 3rem;max-width:1080px;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:1.1rem;display:grid;gap:.85rem}.bubble-studio h2{font-size:1.5rem;margin:.2rem 0}.studio-tools{display:flex;gap:.7rem;align-items:end;flex-wrap:wrap}.studio-tools label{display:grid;gap:.25rem;font-size:.7rem;font-weight:800;color:var(--ink-soft)}.studio-tools input{width:56px;height:32px;border:0;background:transparent}.drawing-canvas{width:min(100%,480px);aspect-ratio:8/3;height:auto;border:2px dashed var(--line);border-radius:20px;touch-action:none;cursor:crosshair}.bubble-presets{display:flex;flex-wrap:wrap;gap:.5rem}.bubble-preset{border:0;border-radius:16px 5px;padding:.6rem .8rem;font-weight:800}.bubble-preset--default{background:#dcede4}.bubble-preset--sage{background:#d7e7da;color:#254d3b}.bubble-preset--frog{background:#83c983;color:#143e27}.bubble-preset--capybara{background:#c99d6c;color:#3e2717}.bubble-preset--lucki-nights{background:#1c2724;color:#d6f069}.bubble-zone-guide{position:relative;width:min(100%,390px);height:115px;border:2px dashed var(--coral);border-radius:28px;padding:10px;color:var(--ink-soft);font-size:.65rem}.bubble-zone-guide:before{content:"";position:absolute;inset:16px;border:2px solid var(--spruce);border-radius:20px}.bubble-zone-guide strong{position:absolute;inset:40px 58px;display:grid;place-items:center;text-align:center;background:#ffffffbf;border:1px dotted var(--ink-soft);border-radius:12px;color:var(--ink);z-index:1}.zone-outside{position:absolute;top:2px;left:12px;background:var(--card);z-index:2}.zone-inside{position:absolute;bottom:3px;right:16px;background:var(--card);z-index:2}.drawing-wrap{position:relative;width:min(100%,480px)}.drawing-wrap .drawing-canvas{width:100%;display:block}.drawing-wrap .bubble-zone-guide{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;background:#ffffff14}.bubble-preset--ring{background:#fff2b7;border:2px solid #ef8c9e}.bubble-preset--ticket{background:#cdeaf2;border:2px dashed #367f99}.bubble-preset--cloud{background:#e6e9ff;border-radius:24px}.bubble-preset--lucki{background:#19221e;color:#fff}.bubble{position:relative;overflow-wrap:anywhere;word-break:break-word}.message--decorated{position:relative;isolation:isolate;margin:8px 6px}.bubble-decoration{position:absolute;inset:-8px -10px;z-index:-1;display:block;background-repeat:no-repeat;background-size:100% 100%;background-position:center;border-radius:22px;pointer-events:none}.bubble--ring{border:3px solid #ef8c9e;border-radius:999px!important;box-shadow:inset 0 0 0 4px #fff2b7,0 2px #c85f74;padding:1rem 1.25rem!important}.bubble--ticket{border-radius:8px!important;border:2px dashed #367f99;box-shadow:8px 0 #cdeaf2,-8px 0 #cdeaf2}.bubble--cloud{border-radius:28px!important;box-shadow:10px 8px #cbd0ee,-8px 10px #d9ddf5}.bubble--frog{border-radius:14px 14px 5px 5px!important;box-shadow:inset 0 -6px #e85b5b}.bubble--frog:after{content:"•  •";position:absolute;top:-8px;left:14px;font-weight:900;color:#143e27;letter-spacing:14px}.bubble--capybara{border-radius:18px 18px 8px 8px!important;box-shadow:inset 0 -5px #9c623f,inset 0 3px #ffffff59}.bubble--lucki{background-image:linear-gradient(#0d110f2e,#0d110f2e),url(/bubbles/lucki.png)!important;background-size:100% 100%!important;background-position:center!important;color:#fff!important;text-shadow:0 2px 5px #000!important;min-height:94px;display:flex;align-items:end;max-width:100%}.bubble--lucki p{background:#ffffff59;color:inherit;border-radius:10px;padding:.28rem .48rem}.bubble--lucki p{background:#00000080;color:#fff}.bubble--custom{border:2px solid rgba(255,255,255,.8);border-radius:18px 18px 18px 6px!important;box-shadow:0 5px 14px #1e282d2e;overflow:hidden}.composer__tool--games{background:#e7efe9;color:var(--spruce-deep);font-size:1.05rem}.game-tray{position:absolute;z-index:20;left:1.2rem;right:1.2rem;bottom:76px;max-height:min(520px,65vh);overflow:auto;padding:1rem;border:1px solid var(--line);border-radius:20px;background:var(--card);box-shadow:0 22px 60px #202d302e}.game-tray>header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.15rem .2rem 1rem}.game-tray>header strong{display:block;margin-top:.2rem;font:600 1.3rem Fraunces,serif}.game-tray>header>span{color:var(--ink-soft);font-size:.68rem}.game-catalog{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem}.game-catalog>.muted{grid-column:1/-1;padding:2rem;text-align:center}.game-tile{min-height:105px;padding:.75rem .45rem;display:grid;place-items:center;align-content:center;gap:.35rem;border:1px solid var(--line);border-radius:15px;color:var(--ink);background:#fffdfa;transition:transform .16s,border-color .16s,box-shadow .16s}.game-tile:hover:not(:disabled){transform:translateY(-2px);border-color:var(--coral);box-shadow:0 8px 20px #43302414}.game-tile:disabled{filter:grayscale(.65);background:#f2eee7}.game-tile__icon{font-size:1.55rem;line-height:1}.game-tile strong{font-size:.7rem}.game-tile small{color:var(--ink-soft);font-size:.57rem}.game-message{width:min(100%,430px);max-width:min(86%,430px)}.game-card{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.8rem;padding:.85rem;overflow:hidden;color:var(--ink);background:linear-gradient(135deg,#fffaf0,#eef3e8);border:1px solid #ded7ca;border-radius:18px 18px 18px 5px;box-shadow:0 8px 24px #42302214}.message--mine .game-card{border-radius:18px 5px 18px 18px}.game-card--loading{display:block;color:var(--ink-soft);font-size:.75rem}.game-card__art{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:#2e6259;font-size:1.35rem;position:relative}.game-card__art span{position:absolute;right:3px;bottom:2px;font-size:.9rem}.game-card__copy{min-width:0}.game-card__copy>strong{display:block;font:600 1rem Fraunces,serif;margin:.15rem 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.game-card__copy small{color:var(--ink-soft);font-size:.61rem;line-height:1.4}.game-card__actions{display:grid;justify-items:end;gap:.2rem}.game-backdrop{z-index:60}.game-board-screen{width:min(700px,100%);max-height:calc(100vh - 2rem);overflow:auto;border:1px solid rgba(255,255,255,.55);border-radius:26px;background:var(--card);color:var(--ink);box-shadow:0 30px 90px #0a161859;position:relative}.game-board-header{padding:1rem 1.15rem;display:flex;align-items:center;gap:.8rem;border-bottom:1px solid var(--line)}.game-board-header h2{font-size:1.35rem;margin-top:.12rem}.game-board-header .icon-button{width:38px;height:38px;border:1px solid var(--line);border-radius:50%;font-size:1rem}.game-live-state{margin-left:auto;padding:.35rem .55rem;border-radius:50px;color:#7d6750;background:#eee7db;font:600 .58rem DM Mono,monospace;letter-spacing:.05em}.game-live-state--turn{color:#fff;background:var(--coral)}.game-player-panel{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;padding:1rem 1.35rem;background:#f4efe6;border-bottom:1px solid var(--line)}.game-player-panel>div{display:flex;align-items:center;gap:.55rem;min-width:0}.game-player-panel>div:last-child{flex-direction:row-reverse;text-align:right}.game-player-panel strong{display:block;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.73rem}.game-player-panel small{color:var(--ink-soft);font-size:.6rem;margin-top:.15rem}.game-player-panel>b{color:var(--coral-deep);font:.6rem DM Mono,monospace}.connect-four{width:min(92%,480px);aspect-ratio:7/6;margin:1.4rem auto;display:grid;grid-template-columns:repeat(7,1fr);gap:clamp(3px,1vw,7px);padding:clamp(7px,2vw,14px);border-radius:20px;background:#396f65;box-shadow:inset 0 -8px #0c322d38,0 12px 25px #21433d29;transition:opacity .18s}.connect-four--pending{opacity:.68}.connect-four__column{min-width:0;padding:0;border:0;background:transparent;display:grid;grid-template-rows:repeat(6,1fr);gap:clamp(3px,1vw,7px)}.connect-four__column:not(:disabled):hover .connect-four__cell--0{background:#f7f0df}.connect-four__cell{display:block;aspect-ratio:1;border-radius:50%;background:#fffaf0;box-shadow:inset 0 3px 6px #142d2a2e;transition:background .2s,transform .2s}.connect-four__cell--1{background:#e76f51;transform:scale(.93)}.connect-four__cell--2{background:#f4c95d;transform:scale(.93)}.game-feedback{min-height:1.2rem;margin:-.8rem auto 1rem;text-align:center;color:var(--ink-soft);font-size:.68rem}.game-feedback--error{color:#a14730}.game-waiting{padding:4rem 1.5rem;display:grid;justify-items:center;gap:.65rem;text-align:center}.game-waiting>span{font-size:3rem;animation:game-float 1.8s ease-in-out infinite alternate}.game-waiting h3,.game-over h3{font:600 1.65rem Fraunces,serif}.game-waiting p{color:var(--ink-soft);font-size:.75rem}@keyframes game-float{to{transform:translateY(-7px) rotate(5deg)}}.game-over{position:absolute;inset:138px 0 0;min-height:360px;padding:2rem;display:grid;place-content:center;justify-items:center;gap:.7rem;text-align:center;background:#fffdf9ed;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);border-radius:0 0 26px 26px}.game-over>div{display:flex;align-items:center;gap:.5rem;margin-top:.5rem}.game-over .primary-button{min-height:38px;padding:.65rem .9rem}.tic-board{width:min(82vw,360px);aspect-ratio:1;margin:2rem auto;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:8px;border-radius:22px;background:var(--spruce-deep)}.tic-board button{border:0;border-radius:14px;color:var(--coral-deep);background:#fffaf0;font:700 clamp(2.2rem,9vw,4rem) Fraunces,serif}.tic-board button:nth-child(2n){background:#f2eadf}.checkers-board,.chess-board{width:min(90vw,480px);aspect-ratio:1;margin:1.25rem auto;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));grid-template-rows:repeat(8,minmax(0,1fr));overflow:hidden;border:8px solid #6d4f3a;border-radius:12px;box-shadow:0 12px 28px #35251a29}.checkers-board button,.chess-board button{width:100%;height:100%;min-width:0;min-height:0;padding:0;overflow:hidden;border:0;display:grid;place-items:center}.checkers-board .light,.chess-board .light{background:#eee1cc}.checkers-board .dark,.chess-board .dark{background:#789183}.checkers-board button.selected,.chess-board button.selected{box-shadow:inset 0 0 0 4px var(--sun)}.checker{width:75%;aspect-ratio:1;display:grid;place-items:center;border-radius:50%;color:#fff5cf;background:#d85d43;box-shadow:inset 0 -5px #46140a38,0 2px 4px #00000040;font-size:.75rem}.checker--2,.checker--4{background:#263a3d}.checker--3,.checker--4{border:3px double #f5cf6c}.chess-board button{position:relative;color:#18282c;font-size:clamp(1.5rem,7vw,2.8rem);line-height:1;text-shadow:0 1px 0 rgba(255,255,255,.45)}.chess-board button.legal-target:after{content:"";position:absolute;width:24%;aspect-ratio:1;border-radius:50%;background:#1f493d7a;box-shadow:0 0 0 4px #fff3}.chess-board button.legal-capture:after{content:"";position:absolute;inset:7%;border:4px solid rgba(211,87,60,.75);border-radius:50%;box-shadow:inset 0 0 0 2px #ffffff52}.mancala-board{margin:2rem auto;width:min(94%,570px);display:grid;grid-template-columns:72px 1fr 72px;gap:.55rem;padding:1rem;border-radius:42px;background:#b77d4b;box-shadow:inset 0 -8px #4a27112e,0 12px 25px #4a271124}.mancala-pits{display:grid;gap:.5rem}.mancala-pits>div{display:grid;grid-template-columns:repeat(6,1fr);gap:.4rem}.mancala-pit,.mancala-store{min-width:0;border:0;border-radius:50%;color:#5d381f;background:#f1d9ae;box-shadow:inset 0 5px 10px #4c2a1440}.mancala-pit{aspect-ratio:1;padding:.25rem}.mancala-pit strong{display:block}.mancala-pit span{display:block;max-width:34px;overflow:hidden;color:#8e5930;font-size:.55rem;line-height:.65}.mancala-store{display:grid;place-content:center;justify-items:center;border-radius:34px}.mancala-store span{font-size:.52rem;writing-mode:vertical-rl}.mancala-store strong{font:600 1.4rem Fraunces,serif}.mancala-store--mine{background:#f8c968}.sea-setup{padding:4rem 1.5rem;display:grid;justify-items:center;gap:.7rem;text-align:center}.sea-setup>span{font-size:3rem}.sea-setup p{color:var(--ink-soft);font-size:.75rem;max-width:350px}.sea-setup .primary-button{margin-top:.5rem}.sea-placement{padding:1.15rem;display:grid;gap:1rem}.sea-placement__intro{display:flex;align-items:center;justify-content:center;gap:.75rem;text-align:left}.sea-placement__intro>span{font-size:2.25rem}.sea-placement__intro h3{font:600 1.3rem Fraunces,serif}.sea-placement__intro p{margin-top:.15rem;color:var(--ink-soft);font-size:.67rem}.sea-placement__body{display:grid;grid-template-columns:minmax(250px,350px) minmax(150px,1fr);align-items:center;justify-content:center;gap:1rem}.sea-grid--placement{width:100%}.sea-grid--placement button{cursor:crosshair;color:#fff;font-size:.55rem}.sea-grid--placement button:disabled{cursor:default;opacity:1}.sea-grid--placement button.ship-preview--valid{background:#4e8e6f3d}.sea-grid--placement button.ship-preview--invalid{background:#cf4e3c47}.ship-preview--valid .ship-segment{background:linear-gradient(180deg,#b8d7c7,#4f8c70)}.ship-preview--invalid .ship-segment{background:linear-gradient(180deg,#efaa98,#b84636)}.ship-segment--preview{opacity:.82}.fleet-controls{display:grid;gap:.7rem;align-content:center}.fleet-progress{display:grid;gap:.2rem}.fleet-progress span,.fleet-controls>small{color:var(--ink-soft);font-size:.6rem;line-height:1.5}.fleet-progress strong{font:600 .9rem Fraunces,serif}.fleet-direction,.fleet-buttons{display:flex;gap:.4rem}.fleet-direction button{flex:1;min-width:0;padding:.5rem .35rem;border:1px solid var(--line);border-radius:9px;color:var(--ink);background:var(--card);font-size:.58rem}.fleet-direction button.selected{color:#fff;border-color:var(--spruce);background:var(--spruce)}.fleet-list{display:grid;gap:.25rem}.fleet-list span{width:100%;padding:.28rem .4rem;display:flex;align-items:center;justify-content:space-between;gap:.35rem;border-radius:6px;color:#66777a;background:#e3e9e8;font-size:.52rem}.fleet-list span b{font-weight:800}.fleet-list span i{font:600 .5rem/1 DM Mono,monospace;letter-spacing:.04em;font-style:normal}.fleet-list span.placed{color:#fff;background:#71858a}.fleet-list span.next{outline:2px solid var(--sun);outline-offset:1px}.fleet-buttons .small-button{flex:1;min-width:0;padding:.48rem .25rem}.fleet-controls>.primary-button{min-height:38px;padding:.6rem .7rem}.fleet-error{color:#a14730;font-size:.62rem;line-height:1.4}.sea-battle{padding:1rem;display:grid;grid-template-columns:1fr 1fr;gap:1rem}.sea-grid-wrap{display:grid;gap:.45rem}.sea-grid-wrap>strong{font:600 .78rem Fraunces,serif;text-align:center}.sea-grid{aspect-ratio:1;display:grid;grid-template-columns:repeat(10,1fr);overflow:hidden;border:4px solid #417687;border-radius:10px;background:#cce6ec}.sea-grid button{position:relative;min-width:0;padding:0;overflow:visible;border:1px solid rgba(36,92,108,.22);color:#fff;background:transparent;font-weight:800}.sea-grid button:not(:disabled):hover{background:#f5d58a}.sea-grid button.miss{color:#3e6972;background:#e7f3f4}.sea-grid button.hit:not(.ship-model){background:#d95f4a}.ship-segment{position:absolute;z-index:2;display:block;background:linear-gradient(180deg,#92a6aa 0 28%,#536c72 30% 74%,#344b51 76%);border:1px solid rgba(21,49,56,.48);box-shadow:inset 0 1px #ffffff80,0 2px 3px #15313833;pointer-events:none}.ship-segment:after{content:"";position:absolute;width:24%;aspect-ratio:1;top:22%;left:38%;border-radius:50%;background:#d9edf0;box-shadow:0 0 0 1px #1f3d428c}.ship-segment--h{inset:22% -2px}.ship-segment--v{inset:-2px 22%}.ship-segment--h.ship-segment--start{left:12%;border-radius:60% 0 0 60%}.ship-segment--h.ship-segment--end{right:12%;border-radius:0 60% 60% 0}.ship-segment--v.ship-segment--start{top:12%;border-radius:60% 60% 0 0}.ship-segment--v.ship-segment--end{bottom:12%;border-radius:0 0 60% 60%}.sea-grid button.hit.ship-model .ship-segment{filter:saturate(.55) brightness(.84)}.sea-grid button.hit.ship-model:after{content:"×";position:absolute;z-index:3;inset:0;display:grid;place-items:center;color:#ff9a7f;font-size:.75rem;text-shadow:0 1px #5d2119}.sea-grid button.sunk{background:#2b424733}.sea-grid button.sunk .ship-segment{background:linear-gradient(180deg,#665b58,#332f31);border-color:#231f21}.legacy-ship{color:#61767a}.word-game{padding:1.4rem;display:grid;justify-items:center;gap:1rem}.word-score{display:flex;align-items:center;gap:1rem}.word-score strong{min-width:150px;font:600 1.3rem Fraunces,serif;text-transform:uppercase}.word-score span{color:var(--ink-soft);font-size:.65rem}.word-timer{min-width:220px;padding:.55rem .8rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;border:1px solid #d9cbb9;border-radius:14px;background:#fff7e9}.word-timer strong{color:var(--coral-deep);font:700 1.45rem DM Mono,monospace}.word-timer span{color:var(--ink-soft);font-size:.63rem}.word-round-start{min-height:360px;padding:3rem 1.5rem;display:grid;place-content:center;justify-items:center;gap:.7rem;text-align:center}.word-round-start>span{font-size:3rem}.word-round-start h3{font:600 1.55rem Fraunces,serif}.word-round-start p{max-width:420px;color:var(--ink-soft);font-size:.75rem;line-height:1.65}.word-round-start .primary-button{margin-top:.5rem}.word-grid{width:min(78vw,360px);aspect-ratio:1;display:grid;grid-template-columns:repeat(4,1fr);gap:.55rem}.word-grid button,.letter-rack span{border:1px solid #ddcdb9;border-radius:14px;color:var(--ink);background:#fff7e8;box-shadow:0 5px #dac4a5;text-transform:uppercase;font:700 clamp(1.25rem,6vw,2rem) Fraunces,serif}.word-grid button.selected{color:#fff;background:var(--spruce);border-color:var(--spruce-deep);transform:translateY(3px);box-shadow:0 2px 0 var(--spruce-deep)}.word-actions{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;justify-content:center}.word-actions .primary-button{min-height:38px;padding:.65rem .85rem}.found-words{display:flex;gap:.35rem;flex-wrap:wrap;justify-content:center}.found-words span{padding:.25rem .45rem;border-radius:20px;color:var(--spruce-deep);background:#e4eee7;font-size:.62rem;text-transform:uppercase}.anagrams-board{padding-top:2.5rem}.letter-rack{display:flex;gap:.4rem;flex-wrap:wrap;justify-content:center}.letter-rack span{width:46px;height:50px;display:grid;place-items:center;font-size:1.35rem}.anagrams-board form{width:min(100%,420px);display:flex;gap:.45rem}.anagrams-board input,.question-control input{flex:1;min-width:0;padding:.8rem;border:1px solid var(--line);border-radius:12px;color:var(--ink);background:#fffdfa}.anagrams-board .primary-button{min-height:0}.questions-board{padding:1.4rem;display:grid;justify-items:center;gap:1rem}.questions-counter{display:flex;align-items:baseline;gap:.45rem}.questions-counter strong{font:600 2rem Fraunces,serif;color:var(--coral-deep)}.questions-counter span{color:var(--ink-soft);font-size:.7rem}.question-control{width:min(100%,440px);display:grid;justify-items:center;gap:.7rem;padding:1.2rem;border:1px solid var(--line);border-radius:18px;text-align:center;background:#fffaf1}.question-control h3{font:600 1.2rem Fraunces,serif}.question-control p{color:var(--ink-soft);font-size:.75rem;line-height:1.6}.question-control input{width:100%}.question-control>div{display:flex;gap:.45rem}.answer-buttons{text-transform:capitalize}.question-history{width:min(100%,440px);max-height:190px;overflow:auto;display:grid}.question-history>div{display:flex;justify-content:space-between;gap:1rem;padding:.55rem;border-bottom:1px solid var(--line);font-size:.67rem}.question-history span{color:var(--coral-deep);text-transform:capitalize}.physics-game{padding:.8rem 1rem 1.1rem;display:grid;gap:.65rem;background:linear-gradient(180deg,rgba(255,255,255,.2),transparent)}.physics-hud{min-height:46px;display:flex;align-items:stretch;justify-content:center;gap:.45rem}.physics-hud>span{min-width:78px;padding:.38rem .55rem;display:grid;place-items:center;align-content:center;border:1px solid var(--line);border-radius:13px;color:var(--ink);background:var(--card);box-shadow:0 5px 14px #1b302c0f}.physics-hud strong{max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:700 .75rem DM Mono,monospace;text-transform:uppercase}.physics-hud small{margin-top:.08rem;color:var(--ink-soft);font-size:.46rem;font-weight:900;letter-spacing:.09em}.physics-canvas-wrap{position:relative;overflow:hidden;border-radius:20px;box-shadow:0 15px 34px #1a2b2929}.physics-game canvas{width:100%;height:auto;display:block;border:1px solid rgba(38,57,55,.24);border-radius:20px;background:#f5f0e7;cursor:crosshair;touch-action:none}.physics-game--animating canvas{cursor:progress}.physics-live-badge{position:absolute;top:.65rem;right:.65rem;padding:.26rem .45rem;border-radius:99px;color:#fff;background:#d95746;box-shadow:0 0 0 5px #d9574629;font:800 .5rem DM Mono,monospace;letter-spacing:.08em;animation:physics-pulse .8s ease-in-out infinite alternate}.physics-place-tip{position:absolute;left:50%;bottom:.75rem;transform:translate(-50%);width:max-content;max-width:90%;padding:.42rem .68rem;border-radius:99px;color:#3d3828;background:#f5d776;box-shadow:0 6px 18px #2a26182e;font-size:.58rem;font-weight:800}.physics-controls{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:.65rem;padding:.75rem;border:1px solid var(--line);border-radius:15px;background:var(--card)}.physics-controls label{display:grid;gap:.28rem;color:var(--ink-soft);font-size:.52rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.physics-controls input{width:100%;min-width:110px;accent-color:var(--coral)}.physics-controls .primary-button{min-height:40px;padding:.65rem .85rem;white-space:nowrap}.physics-readout{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:1.4rem;color:var(--ink-soft);font:.62rem DM Mono,monospace}.physics-readout strong{color:var(--ink);font-size:.74rem}.cue-spin{grid-column:1/-1;display:grid;grid-template-columns:auto 1fr 1fr;align-items:center;gap:.55rem;padding:.45rem .6rem;border:1px dashed var(--line);border-radius:11px;background:color-mix(in srgb,var(--card) 78%,var(--paper))}.cue-spin>span{color:var(--coral-deep);font:.52rem DM Mono,monospace;text-transform:uppercase}.cue-spin label{min-width:0}.physics-feedback{min-height:1rem;color:var(--ink-soft);text-align:center;font-size:.65rem;line-height:1.5}.replay-stage .physics-game{padding-bottom:.7rem}.replay-stage .physics-feedback{margin-bottom:.25rem}@keyframes physics-pulse{to{transform:scale(1.06);opacity:.8}}.physics-round-gate{padding:.8rem;display:flex;align-items:center;justify-content:center;gap:.7rem;flex-wrap:wrap;border:1px solid var(--line);border-radius:15px;background:var(--card);text-align:center}.physics-round-gate strong{font:600 1rem Fraunces,serif}.physics-round-gate span{color:var(--ink-soft);font-size:.62rem}.physics-round-gate .primary-button{min-height:38px;padding:.55rem .8rem}.physics-gesture-tip{position:absolute;z-index:3;left:50%;bottom:.65rem;transform:translate(-50%);width:max-content;max-width:calc(100% - 1.2rem);padding:.36rem .68rem;border:1px solid rgba(255,255,255,.26);border-radius:999px;color:#fff;background:#0f2321ad;box-shadow:0 5px 18px #0003;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);font:800 .49rem DM Mono,monospace;letter-spacing:.02em;text-align:center;pointer-events:none}.physics-controls--gesture{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;background:linear-gradient(145deg,color-mix(in srgb,var(--card) 94%,#dfeae5),var(--card));box-shadow:0 8px 24px #1b302c0f}.physics-controls--gesture>label{min-width:0;padding:.5rem .58rem;border:1px solid var(--line);border-radius:11px;background:color-mix(in srgb,var(--card) 82%,var(--paper))}.physics-controls--gesture input[type=range]{min-width:0}.physics-controls--gesture .baseline-control{grid-column:1/-1}.physics-controls--gesture .physics-action-button{min-width:96px}.piece-selector{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:.38rem}.piece-selector button{width:34px;height:31px;border:1px solid var(--line);border-radius:9px;color:var(--ink-soft);background:var(--paper);font:800 .55rem DM Mono,monospace}.piece-selector button.selected{color:#263d36;border-color:#d5a934;background:#f4cf64;box-shadow:0 0 0 3px #f4cf6433}.physics-game--darts .physics-canvas-wrap,.physics-game--tanks .physics-canvas-wrap,.physics-game--cup_pong .physics-canvas-wrap{border:1px solid rgba(19,44,41,.35);box-shadow:0 18px 40px #0a1f1e3d}.physics-game--archery .physics-canvas-wrap,.physics-game--basketball .physics-canvas-wrap,.physics-game--mini_golf .physics-canvas-wrap,.physics-game--knockout .physics-canvas-wrap,.physics-game--shuffleboard .physics-canvas-wrap{border:1px solid rgba(41,73,66,.25);box-shadow:0 18px 38px #16342f2e}.physics-game--darts,.physics-game--tanks,.physics-game--cup_pong{background:linear-gradient(180deg,rgba(24,56,52,.08),transparent 75%)}.physics-game--archery,.physics-game--basketball,.physics-game--mini_golf,.physics-game--knockout,.physics-game--shuffleboard{background:linear-gradient(180deg,rgba(69,119,102,.07),transparent 75%)}.physics-game--tanks .physics-action-button{border-color:#754d32;background:linear-gradient(180deg,#b45f42,#82402f)}.physics-game--mini_golf .physics-action-button,.physics-game--knockout .physics-action-button{border-color:#24594d;background:linear-gradient(180deg,#4b826e,#2b5e51)}.physics-game--basketball .physics-action-button,.physics-game--cup_pong .physics-action-button{background:linear-gradient(180deg,#df7451,#b94e38)}@media(prefers-reduced-motion:reduce){.physics-live-badge{animation:none}.physics-game canvas,.pool-power-indicator i{transition:none}}.physics-game--eight_ball,.physics-game--nine_ball{background:linear-gradient(180deg,rgba(30,76,65,.08),transparent 72%)}.physics-game--eight_ball .physics-canvas-wrap,.physics-game--nine_ball .physics-canvas-wrap{overflow:hidden;border:1px solid rgba(30,48,43,.24);border-radius:22px;background:#172c29;box-shadow:0 18px 38px #10201d3d}.physics-game--eight_ball canvas,.physics-game--nine_ball canvas{border:0;border-radius:0;background:#172c29}.pool-power-indicator{position:absolute;z-index:3;right:.8rem;top:50%;transform:translateY(-50%);width:32px;padding:.38rem .25rem;display:grid;place-items:center;gap:.14rem;border:1px solid rgba(255,255,255,.25);border-radius:12px;color:#fff;background:#0a1916b8;box-shadow:0 6px 16px #00000040;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);pointer-events:none}.pool-power-indicator>span{width:8px;height:66px;padding:2px;display:flex;align-items:flex-end;overflow:hidden;border-radius:99px;background:#ffffff29}.pool-power-indicator i{width:100%;min-height:5px;display:block;border-radius:99px;background:linear-gradient(0deg,#55c98a 0 45%,#efd052 67%,#e6634d);box-shadow:0 0 8px #f2c85b73;transition:height .12s ease-out}.pool-power-indicator strong{font:800 .55rem DM Mono,monospace}.pool-power-indicator small{font:800 .38rem DM Mono,monospace;letter-spacing:.08em;opacity:.72;writing-mode:vertical-rl}.pool-controls{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;padding:.75rem .8rem .8rem;border-color:color-mix(in srgb,var(--line) 72%,#2f6e5b);background:linear-gradient(145deg,color-mix(in srgb,var(--card) 94%,#dcebe3),var(--card));box-shadow:0 8px 25px #1c342e12}.pool-readout{justify-content:flex-start;gap:.9rem;min-height:25px}.pool-guide-key{margin-left:auto;display:flex;align-items:center;gap:.25rem;color:var(--ink-soft);font-size:.48rem;text-transform:uppercase;letter-spacing:.04em}.pool-guide-key i{width:16px;height:2px;display:inline-block;border-radius:9px;background:#d5ae30}.pool-guide-key i:nth-of-type(2){margin-left:.25rem;background:#78cbd1}.pool-controls>label{min-width:0;padding:.48rem .56rem;border:1px solid var(--line);border-radius:11px;background:color-mix(in srgb,var(--card) 82%,var(--paper))}.pool-controls input[type=range]{min-width:0;height:19px}.pool-power-slider{appearance:none;height:8px!important;margin:.3rem 0;border-radius:99px;background:linear-gradient(90deg,#4f9f78 0 var(--pool-power),color-mix(in srgb,var(--line) 78%,transparent) var(--pool-power) 100%);outline:none}.pool-power-slider::-webkit-slider-thumb{width:20px;height:20px;appearance:none;border:3px solid #fff;border-radius:50%;background:var(--coral);box-shadow:0 2px 7px #22302c47}.pool-power-slider::-moz-range-thumb{width:16px;height:16px;border:3px solid #fff;border-radius:50%;background:var(--coral);box-shadow:0 2px 7px #22302c47}.cue-spin--pool{grid-template-columns:auto auto minmax(0,1fr) minmax(0,1fr);min-height:57px;padding:.4rem .55rem;border-style:solid}.cue-spin--pool>.cue-spin__title{color:var(--ink-soft);font-size:.48rem;letter-spacing:.06em}.cue-spin--pool>.cue-spin__ball{width:35px;height:35px;display:grid;place-items:center;border:1px solid #9aa5a0;border-radius:50%;background:radial-gradient(circle at 36% 30%,#fff 0 23%,#ebe9de 69%,#c5c8c0);box-shadow:inset -3px -3px 7px #182b271f,0 2px 4px #1928251f}.cue-spin__ball i{width:6px;height:6px;display:block;border:1px solid rgba(97,25,19,.38);border-radius:50%;background:#d64e40;box-shadow:0 1px 2px #4419144d;transition:transform .1s ease-out}.pool-shoot-button{min-width:92px;border-color:#174a3c!important;background:linear-gradient(180deg,#387e66,#245b4a)!important;box-shadow:inset 0 1px #ffffff38,0 5px 12px #1a463833}.pool-shoot-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:inset 0 1px #ffffff38,0 8px 16px #1a463842}.history-panel{min-height:100vh;padding:clamp(1.5rem,4vw,3.5rem);color:var(--ink)}.history-header{max-width:1240px;display:flex;align-items:end;justify-content:space-between;gap:1.5rem;margin-bottom:1.5rem}.history-header h1{margin:.2rem 0 .45rem;font-size:clamp(2.5rem,4vw,4.2rem)}.history-header>div>p:last-child{color:var(--ink-soft)}.history-summary{display:flex;gap:.45rem;flex-wrap:wrap}.history-summary span{min-width:84px;padding:.65rem .8rem;display:grid;gap:.12rem;border:1px solid var(--line);border-radius:13px;color:var(--ink-soft);background:var(--card);font-size:.56rem;text-transform:uppercase;letter-spacing:.06em}.history-summary strong{color:var(--ink);font:600 1.2rem Fraunces,serif}.history-filters{max-width:1240px;margin-bottom:1rem;padding:.8rem;display:grid;grid-template-columns:1fr 1.25fr 1fr .9fr .9fr auto;align-items:end;gap:.55rem;border:1px solid var(--line);border-radius:16px;background:var(--card)}.history-filters label{display:grid;gap:.3rem;color:var(--ink-soft);font-size:.57rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.history-filters input,.history-filters select{width:100%;min-width:0;padding:.58rem .65rem;border:1px solid var(--line);border-radius:9px;color:var(--ink);background:#fffdfa;font:600 .66rem Manrope,sans-serif}.history-filters>.link-button{height:34px}.history-table-wrap{max-width:1240px;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:var(--card);box-shadow:0 10px 32px #4131230b}.history-table{width:100%;border-collapse:collapse}.history-table th{padding:.7rem .9rem;border-bottom:1px solid var(--line);text-align:left;background:#f3eee5}.history-table th button{display:flex;gap:.3rem;border:0;color:var(--ink-soft);background:transparent;font-size:.56rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.history-table td{padding:.82rem .9rem;border-bottom:1px solid #f0eae2;font-size:.7rem}.history-table tbody tr:last-child td{border-bottom:0}.history-identity{display:flex;align-items:center;gap:.55rem}.history-table .avatar{width:34px;height:34px;flex:0 0 34px}.history-table td strong{display:block}.history-table td small{display:block;margin-top:.1rem;color:var(--ink-soft)}.history-game-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:10px;background:#edf2e9;font-size:1rem}.history-result{display:inline-flex;padding:.28rem .48rem;border-radius:99px;color:#6a5845;background:#eee7dc;font-size:.58rem;font-weight:800}.history-result--win{color:#285f48;background:#dceee3}.history-result--loss{color:#8b4034;background:#f5dfda}.history-result--draw{color:#615780;background:#e8e4f1}.history-result--in_progress{color:#305d68;background:#deedf0}.history-empty{padding:3rem 1rem;color:var(--ink-soft);text-align:center;font-size:.75rem}.history-column-label{color:var(--ink-soft);font-size:.56rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.history-replay-button{padding:.45rem .62rem;display:inline-flex;align-items:center;gap:.42rem;white-space:nowrap;border:1px solid #cbd9ce;border-radius:9px;color:var(--spruce-deep);background:#edf4ed;font-size:.59rem;font-weight:800}.history-replay-button:hover:not(:disabled){border-color:var(--spruce);background:#e0ede3}.history-replay-button:disabled{cursor:not-allowed;opacity:.48}.history-replay-button span{font-size:.48rem}.replay-screen{width:min(680px,100%);overflow:hidden;display:flex;flex-direction:column}.replay-screen .game-board-header,.replay-screen .game-player-panel,.replay-controls{flex:0 0 auto}.replay-stage{min-height:290px;overflow:auto;pointer-events:none;-webkit-user-select:none;user-select:none}.replay-stage .word-round-start{min-height:300px}.replay-controls{padding:.85rem 1rem 1rem;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.6rem 1rem;border-top:1px solid var(--line);background:#f7f3eb}.replay-now{min-width:0;display:grid;gap:.12rem}.replay-now span{color:var(--coral-deep);font:.55rem DM Mono,monospace;text-transform:uppercase;letter-spacing:.06em}.replay-now strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.68rem}.replay-scrubber{width:100%;grid-column:1/-1;accent-color:var(--coral);cursor:pointer}.replay-buttons{grid-row:1;grid-column:2;display:flex;align-items:center;gap:.28rem}.replay-buttons button{width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--ink);background:var(--card);font-size:.66rem}.replay-buttons button:disabled{opacity:.38}.replay-buttons .replay-play{width:42px;height:42px;color:#fff;border-color:var(--spruce);background:var(--spruce);font-size:.78rem}@media(max-width:640px){.game-tray{left:.5rem;right:.5rem;bottom:66px;padding:.75rem}.game-catalog{grid-template-columns:repeat(3,minmax(0,1fr))}.game-tile{min-height:88px}.game-card{grid-template-columns:auto minmax(0,1fr)}.game-card__actions{grid-column:1/-1;grid-auto-flow:column;justify-content:end}.game-message{max-width:96%}.game-board-screen{max-height:calc(100vh - 1rem);border-radius:20px}.game-live-state{max-width:105px;text-align:center}.game-player-panel{gap:.45rem;padding:.8rem}.game-player-panel .avatar{display:none}.connect-four{width:96%}.mancala-board{grid-template-columns:48px 1fr 48px;padding:.6rem;gap:.3rem;border-radius:30px}.mancala-pits>div{gap:.2rem}.mancala-pit{font-size:.68rem}.sea-placement__body{grid-template-columns:1fr}.sea-placement__body .sea-grid-wrap,.fleet-controls{width:min(100%,340px);margin:auto}.fleet-list{grid-template-columns:repeat(2,1fr);align-items:end;overflow:hidden}.fleet-list span{max-width:100%;overflow:hidden}.sea-battle{grid-template-columns:1fr}.sea-grid-wrap:last-child{display:none}.checkers-board,.chess-board{width:96%;border-width:5px}.physics-game{padding:.65rem}.physics-controls{grid-template-columns:1fr 1fr}.physics-controls .primary-button{grid-column:1/-1}.physics-controls input{min-width:0}.cue-spin{grid-template-columns:1fr 1fr}.cue-spin>span{grid-column:1/-1;text-align:center}.physics-hud>span{min-width:64px;padding:.3rem}.physics-feedback{padding:0 .35rem}.physics-gesture-tip{bottom:.42rem;font-size:.44rem}.physics-controls--gesture .baseline-control,.physics-controls--gesture .piece-selector{grid-column:1/-1}.pool-controls{grid-template-columns:1fr 1fr;padding:.62rem;gap:.5rem}.pool-readout{justify-content:center;gap:.7rem}.pool-guide-key{width:100%;margin:0;justify-content:center}.cue-spin--pool{grid-template-columns:auto auto 1fr 1fr}.cue-spin--pool>.cue-spin__title,.cue-spin--pool>.cue-spin__ball{grid-column:auto}.pool-power-indicator{right:.42rem;transform:translateY(-50%) scale(.86);transform-origin:right center}.pool-shoot-button{min-height:43px!important}.history-panel{padding:1.5rem 1rem}.history-header{align-items:flex-start;flex-direction:column}.history-header h1{font-size:2.8rem}.history-filters{grid-template-columns:1fr 1fr}.history-filters label:nth-child(2){grid-column:1/-1}.history-table-wrap{border:0;overflow:visible;background:transparent;box-shadow:none}.history-table thead{display:none}.history-table,.history-table tbody,.history-table tr,.history-table td{display:block!important;width:100%}.history-table tr{margin-bottom:.7rem;padding:.8rem;display:grid!important;grid-template-columns:1fr 1fr;gap:.65rem;border:1px solid var(--line);border-radius:15px;background:var(--card)}.history-table td{padding:0;border:0}.history-table td:before{content:attr(data-label);display:block;margin-bottom:.2rem;color:var(--ink-soft);font-size:.5rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.history-table td:first-child:before,.history-table td:nth-child(2):before{display:none}.history-empty{border:1px solid var(--line);border-radius:15px;background:var(--card)}.replay-controls{grid-template-columns:1fr}.replay-buttons{grid-row:auto;grid-column:1;justify-content:center}.replay-scrubber{grid-column:1}.replay-now{text-align:center}.replay-stage{min-height:250px}}:root{--ink:#21313a;--ink-soft:#617078;--paper:#f7f3ec;--paper-deep:#eee6d9;--card:#fffdf9;--coral:#e66e43;--coral-deep:#c85330;--sun:#f6be52;--spruce:#3f746a;--spruce-deep:#25574f;--line:#e7ddd0;--shadow:0 20px 55px rgba(66,47,31,.1);font-family:Manrope,system-ui,sans-serif;color:var(--ink);background:var(--paper)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:var(--paper)}button,input{font:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}a{color:inherit}h1,h2,h3,p{margin:0}h1,h2{font-family:Fraunces,Georgia,serif;letter-spacing:-.04em}h1{font-size:clamp(2.25rem,4vw,4.4rem);line-height:1.02}h2{line-height:1.05}small{display:block}.eyebrow{color:var(--coral-deep);font:500 .69rem/1.4 DM Mono,monospace;letter-spacing:.13em;text-transform:uppercase}.splash{min-height:100vh;background:var(--ink);color:#fff7eb;display:grid;place-content:center;justify-items:center;gap:.4rem;font:600 clamp(2rem,6vw,4rem) Fraunces,serif;overflow:hidden;position:relative}.splash small{font:500 .72rem Manrope,sans-serif;letter-spacing:.11em;text-transform:uppercase;color:#ffc96c}.embers{position:absolute;inset:-100%;opacity:.35;background:radial-gradient(circle at 25% 75%,#f1b65d 0 2px,transparent 3px),radial-gradient(circle at 75% 25%,#e66e43 0 2px,transparent 3px);background-size:90px 90px;animation:drift 16s linear infinite}@keyframes drift{to{transform:translateY(-90px)}}.service-state-page{min-height:100vh;padding:clamp(1.25rem,6vw,5rem);display:grid;place-items:center;background:radial-gradient(circle at 15% 15%,rgba(246,190,82,.2),transparent 30%),linear-gradient(135deg,#f8f4ec,#e8efe8)}.service-state-card{width:min(700px,100%);padding:clamp(1.8rem,5vw,3.5rem);border:1px solid var(--line);border-radius:28px;background:var(--card);box-shadow:var(--shadow);display:grid;gap:1.1rem}.service-state-mark{width:52px;height:52px;display:grid;place-items:center;border-radius:18px 18px 18px 4px;background:var(--coral);color:#fff;font:700 1.5rem Fraunces,serif;box-shadow:6px 6px 0 var(--sun);transform:rotate(-4deg);margin-bottom:.5rem}.service-state-card h1{font-size:clamp(2.2rem,5vw,4rem)}.service-state-card>p:not(.eyebrow){color:var(--ink-soft);line-height:1.7}.service-state-card ol{margin:.25rem 0;padding-left:1.4rem;display:grid;gap:.8rem;color:var(--ink);line-height:1.6}.service-state-card code{font-family:DM Mono,monospace;font-size:.82em;background:#f1ebe2;border:1px solid var(--line);border-radius:6px;padding:.12rem .3rem;word-break:break-word}.service-state-card .primary-button{justify-self:start;margin-top:.35rem}.service-state-note{border-left:3px solid var(--spruce);padding:.7rem .9rem;background:#edf3ee;border-radius:0 10px 10px 0;font-size:.82rem}.auth-page{min-height:100vh;display:grid;grid-template-columns:1.15fr .85fr}.auth-intro{padding:clamp(2rem,7vw,7rem);background:var(--ink);color:#f9f3e9;display:flex;flex-direction:column;justify-content:center;gap:1.35rem;position:relative;overflow:hidden}.auth-intro:before{content:"";position:absolute;width:48vw;height:48vw;max-width:600px;max-height:600px;border-radius:50%;right:-22%;bottom:-26%;border:1px solid rgba(246,190,82,.25);box-shadow:0 0 0 50px #f6be520a,0 0 0 100px #f6be5206}.auth-intro h1{max-width:650px;font-size:clamp(3rem,5.4vw,6rem)}.auth-intro>p:not(.eyebrow){max-width:440px;color:#bec8c2;font-size:1.05rem;line-height:1.8}.auth-intro .eyebrow{color:#ffc96c}.hearth-illustration{width:72px;height:72px;border-radius:26px 26px 26px 5px;display:grid;place-items:center;background:var(--coral);color:#fff;box-shadow:8px 8px #f6be52;transform:rotate(-5deg);font-size:2rem}.hearth-illustration span{transform:rotate(5deg)}.auth-notes{display:flex;gap:1.5rem;flex-wrap:wrap;margin-top:1.2rem;color:#d8e0d7;font-size:.8rem}.auth-notes span:first-letter{color:var(--sun)}.auth-card-wrap{padding:2rem;display:grid;place-items:center;background:linear-gradient(135deg,#fbf8f0,#f2e8dc)}.auth-card{width:min(100%,420px);background:var(--card);padding:clamp(1.8rem,5vw,3.4rem);box-shadow:var(--shadow);border:1px solid rgba(222,210,196,.75);border-radius:28px;display:grid;gap:1.05rem}.auth-brand{font:600 1.15rem Fraunces,serif;margin-bottom:1.8rem}.wordmark__mark{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:10px 10px 10px 2px;background:var(--coral);color:#fff;margin-right:.35rem;font:700 1rem Fraunces,serif;transform:rotate(-5deg)}.auth-card h2{font-size:2.2rem}.auth-card>p{color:var(--ink-soft);line-height:1.6;margin-bottom:.55rem}.auth-card label{display:grid;gap:.42rem;color:var(--ink-soft);font-size:.78rem;font-weight:700}.auth-card input,.composer input,.search-line input,.gif-picker input{width:100%;border:1px solid var(--line);background:#fffdfa;border-radius:12px;padding:.83rem .9rem;outline:none;color:var(--ink)}.auth-card input:focus,.composer input:focus,.search-line input:focus,.gif-picker input:focus{border-color:var(--coral);box-shadow:0 0 0 3px #e66e431f}.primary-button{border:0;border-radius:13px;background:var(--coral);color:#fff;padding:.92rem 1.1rem;min-height:44px;display:flex;align-items:center;justify-content:center;gap:.6rem;font-weight:800;transition:transform .18s,background .18s}.primary-button:hover:not(:disabled){background:var(--coral-deep);transform:translateY(-1px)}.primary-button span{font-size:1.2rem}.text-button,.link-button{border:0;background:transparent;color:var(--spruce-deep);font-weight:700;padding:.4rem}.auth-switch{margin-top:.35rem;font-size:.8rem}.app-shell{min-height:100vh;display:grid;grid-template-columns:240px minmax(0,1fr)}.rail{background:var(--ink);color:#eef2ea;padding:2rem 1rem 1.1rem;display:flex;flex-direction:column;min-height:100vh;position:sticky;top:0;height:100vh}.wordmark{display:flex;align-items:center;font:600 1.15rem Fraunces,serif;padding:0 .7rem;color:#fffaf2}.rail nav{display:grid;gap:.3rem;margin-top:3.2rem}.nav-button{border:0;background:transparent;color:#aab9b6;padding:.78rem .8rem;border-radius:10px;text-align:left;display:flex;gap:.7rem;align-items:center;font-size:.86rem;font-weight:700}.nav-button span{width:1rem;color:#e7be68;text-align:center}.nav-button:hover,.nav-button--active{background:#ffffff17;color:#fff}.nav-button--active{box-shadow:inset 3px 0 var(--coral)}.rail__user{border-top:1px solid rgba(255,255,255,.12);margin-top:auto;padding:.95rem .65rem 0;display:flex;align-items:center;gap:.65rem}.rail__identity{min-width:0;flex:1}.rail__identity strong,.rail__identity small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rail__identity strong{font-size:.78rem}.rail__identity small{color:#99aaa6;font-size:.67rem;margin-top:.1rem}.icon-button{border:0;background:transparent;color:inherit;font-size:1.4rem;padding:.25rem;line-height:1}.main-panel{min-width:0;background:var(--paper)}.notice{position:fixed;z-index:30;right:1.25rem;top:1.25rem;color:#fff;padding:.85rem 1rem;border-radius:12px;max-width:360px;box-shadow:var(--shadow);font-size:.86rem;animation:rise .25s ease-out}.notice--info{background:var(--spruce-deep)}.notice--danger{background:#9d3f38}.notice--warning{background:#8a6219}@keyframes rise{0%{opacity:0;transform:translateY(-10px)}}.chat-layout{min-height:100vh;display:grid;grid-template-columns:320px minmax(0,1fr)}.conversation-list{border-right:1px solid var(--line);background:#fbf8f2;min-width:0}.conversation-list header{padding:2.25rem 1.4rem 1.25rem;display:flex;align-items:flex-start;justify-content:space-between}.conversation-list h2{margin-top:.35rem;font-size:1.85rem}.count-pill{color:var(--ink-soft);background:var(--paper-deep);border-radius:50px;padding:.25rem .55rem;font-size:.7rem}.conversation-scroll{padding:.2rem .7rem;max-height:calc(100vh - 120px);overflow:auto}.conversation-row{width:100%;border:0;background:transparent;padding:.78rem .7rem;display:flex;align-items:center;gap:.75rem;border-radius:14px;text-align:left;position:relative;color:var(--ink)}.conversation-row:hover,.conversation-row--active{background:#fffdf9;box-shadow:0 5px 20px #4131230f}.conversation-row--active:before{content:"";position:absolute;left:0;top:22%;bottom:22%;width:3px;background:var(--coral);border-radius:4px}.conversation-row__copy{min-width:0;flex:1}.conversation-row__copy>div{display:flex;justify-content:space-between;gap:.4rem}.conversation-row strong{font-size:.82rem}.conversation-row time{color:#8b9996;font-size:.67rem;white-space:nowrap}.conversation-row p{color:var(--ink-soft);font-size:.73rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:.2rem}.unread-pill{min-width:18px;height:18px;display:grid;place-items:center;border-radius:20px;background:var(--coral);color:#fff;font-size:.61rem;font-weight:800}.quiet-empty{color:var(--ink-soft);text-align:center;padding:3rem 1rem;line-height:1.7;font-size:.8rem}.avatar{flex:none;display:grid;place-items:center;width:36px;height:36px;border-radius:50% 50% 50% 12px;background:#dfab72;color:#fff;font:700 .82rem Fraunces,serif;border:2px solid transparent;position:relative}.avatar--me{width:30px;height:30px;background:var(--spruce);font-size:.7rem}.avatar--large{width:43px;height:43px;font-size:1rem}.avatar--active:after{content:"";position:absolute;width:9px;height:9px;border-radius:50%;background:#54bd88;border:2px solid #fffdf9;right:-1px;bottom:-1px}.empty-chat{min-height:100%;padding:3rem;display:grid;place-content:center;justify-items:center;text-align:center;gap:1rem;background:radial-gradient(circle at 55% 45%,#fffdf9,transparent 22%),var(--paper)}.empty-chat__icon{width:70px;height:70px;border-radius:25px;display:grid;place-items:center;color:#fff;background:var(--coral);box-shadow:9px 9px 0 var(--sun);font-size:2rem;transform:rotate(-7deg);margin-bottom:.8rem}.empty-chat p:not(.eyebrow){max-width:380px;color:var(--ink-soft);line-height:1.7}.empty-chat .primary-button{margin-top:.5rem}.chat-room{min-width:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;height:100vh;background:#fffdfa;position:relative}.chat-header{min-height:84px;border-bottom:1px solid var(--line);padding:1rem 1.6rem;display:flex;align-items:center;gap:.8rem;background:#fffdf9eb}.chat-header h2{font-size:1.15rem}.chat-header p{color:var(--ink-soft);font-size:.72rem;margin-top:.25rem}.active-dot{width:7px;height:7px;display:inline-block;border-radius:50%;background:#55b983;margin-right:3px}.chat-header__actions{margin-left:auto;display:flex;gap:.5rem}.round-button{width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--spruce-deep);font-size:1rem}.round-button:hover{background:#e8f0ea}.messages{overflow:auto;padding:1.5rem clamp(1rem,4vw,4rem);display:flex;flex-direction:column;gap:.55rem;background-image:radial-gradient(rgba(231,221,208,.45) .7px,transparent .7px);background-size:18px 18px}.message{align-self:flex-start;max-width:min(78%,580px);display:grid;gap:.18rem}.message--mine{align-self:flex-end}.message__meta{display:flex;align-items:center;gap:.45rem;color:#75817e;font-size:.66rem;padding:0 .45rem;min-height:.85rem}.message--mine .message__meta{justify-content:flex-end}.message__meta time{margin-left:auto}.bubble{padding:.7rem .9rem;border-radius:4px 17px 17px;background:#f0e8dd;color:var(--ink);box-shadow:0 2px 4px #40302309;overflow:hidden}.message--mine .bubble{background:#dcede4;border-radius:17px 4px 17px 17px}.bubble p{font-size:.87rem;line-height:1.55;white-space:pre-wrap}.bubble img{display:block;max-width:100%;max-height:360px;border-radius:10px}.bubble--image,.bubble--gif{padding:.3rem;background:#eee5d8}.bubble--voice{min-width:200px;padding:.45rem}.bubble audio{width:100%;height:34px}.file-card{display:flex;align-items:center;gap:.65rem;text-decoration:none;padding:.1rem;font-size:.78rem}.file-card>span:first-child{color:var(--coral);font-size:1.6rem}.file-card small{color:var(--ink-soft);margin-top:.2rem}.receipt,.report-button{color:#84908d;font-size:.61rem;margin:0 .45rem}.receipt{text-align:right}.report-button{border:0;background:transparent;text-align:left;padding:0;opacity:0;transition:opacity .18s}.message:hover .report-button{opacity:1}.typing-indicator{padding:0 1.6rem .3rem;color:#74817e;font-size:.69rem;display:flex;align-items:center;gap:3px}.typing-indicator span{width:4px;height:4px;border-radius:50%;background:var(--coral);animation:bob .8s infinite alternate}.typing-indicator span:nth-child(2){animation-delay:.15s}.typing-indicator span:nth-child(3){animation-delay:.3s;margin-right:3px}@keyframes bob{to{transform:translateY(-4px)}}.composer{margin:0;display:flex;gap:.45rem;align-items:center;padding:1rem 1.4rem 1.3rem;border-top:1px solid var(--line);background:#fffdfa}.composer input{border-radius:50px;padding:.78rem 1rem;flex:1;min-width:0}.composer__tool{border:0;background:transparent;color:var(--spruce-deep);width:32px;height:32px;border-radius:50%;font-weight:800}.composer__tool:hover:not(:disabled){background:#e8f0ea}.composer__tool--gif{font-size:.64rem;border:1px solid var(--line);width:33px}.composer__tool--recording{background:#fbe0d7;color:var(--coral-deep);animation:pulse 1s infinite alternate}@keyframes pulse{to{transform:scale(1.1)}}.send-button{width:36px;height:36px;border:0;border-radius:50%;background:var(--coral);color:#fff;font-size:1.15rem}.send-button:hover:not(:disabled){background:var(--coral-deep)}.popover{position:absolute;right:1.4rem;bottom:72px;z-index:10;width:min(440px,calc(100% - 2rem));background:#fffdfa;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:18px;padding:.8rem}.gif-picker header,.camera-modal header{display:flex;justify-content:space-between;align-items:center;padding:.15rem .25rem .6rem}.gif-picker form{display:flex;gap:.45rem}.gif-picker form .primary-button{min-height:0;padding:.6rem .85rem;font-size:.75rem}.gif-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.35rem;max-height:260px;overflow:auto;margin-top:.7rem}.gif-grid button{border:0;padding:0;background:#eee;min-height:80px;overflow:hidden;border-radius:8px}.gif-grid img{width:100%;height:100%;object-fit:cover;display:block}.muted{color:var(--ink-soft);font-size:.78rem;line-height:1.6}.gif-picker .muted{margin:.8rem .25rem .1rem;font-size:.67rem}.people-panel,.admin-panel{min-height:100vh;padding:clamp(1.5rem,4vw,3.5rem)}.section-heading{margin-bottom:2rem}.section-heading h1{font-size:clamp(2.5rem,4vw,4.2rem);margin:.2rem 0 .6rem}.section-heading>div>p:last-child{color:var(--ink-soft);max-width:520px;line-height:1.65}.people-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr);gap:1.2rem;max-width:1180px}.directory-card,.side-card,.admin-card{background:var(--card);border:1px solid var(--line);border-radius:20px;box-shadow:0 8px 28px #41312309}.directory-card{padding:1rem}.directory-card h2{font-size:1.15rem;margin:1.25rem .5rem .6rem}.search-line{display:flex;align-items:center;gap:.4rem;background:#f6f0e8;border-radius:12px;padding:0 .7rem;color:var(--ink-soft)}.search-line input{border:0;background:transparent;box-shadow:none!important}.person-list{display:grid}.person-row{display:flex;align-items:center;gap:.75rem;padding:.8rem .5rem;border-top:1px solid #f1ebe3}.person-row>div:nth-child(2){flex:1;min-width:0}.person-row strong,.mini-person strong,.request-row strong{display:block;font-size:.8rem}.person-row p{color:var(--ink-soft);font-size:.7rem;margin-top:.2rem}.small-button{border:0;border-radius:9px;padding:.45rem .65rem;background:#e5efe9;color:var(--spruce-deep);font-size:.7rem;font-weight:800}.small-button:hover{background:#cee2d8}.friend-state{color:var(--spruce);font-size:.69rem;font-weight:800}.friend-actions{display:flex;align-items:center;gap:.2rem}.link-button{font-size:.68rem;white-space:nowrap}.people-side{display:grid;align-content:start;gap:1.2rem}.side-card{padding:1rem}.side-card header h2{font-size:1.05rem}.side-card header span{font:600 .65rem DM Mono,monospace;color:var(--coral);margin-left:.25rem}.mini-person,.request-row{display:flex;align-items:center;gap:.6rem;padding:.8rem 0;border-top:1px solid #f1ebe3}.mini-person>div:nth-child(2),.request-row>div:nth-child(2){flex:1;min-width:0}.mini-person small,.request-row small{color:var(--ink-soft);font-size:.66rem;margin-top:.18rem}.request-row{align-items:flex-start}.request-row>div:last-child div{display:flex;align-items:center;gap:.2rem;margin-top:.5rem}.admin-tabs{display:flex;gap:.35rem;margin-bottom:1.3rem;border-bottom:1px solid var(--line)}.admin-tabs button{border:0;background:transparent;padding:.7rem .85rem;color:var(--ink-soft);font-weight:800;font-size:.75rem;border-bottom:2px solid transparent}.admin-tabs .active{color:var(--coral-deep);border-color:var(--coral)}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.stat-card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:1.1rem}.stat-card p{color:var(--ink-soft);font-size:.7rem}.stat-card strong{display:block;font:600 2rem Fraunces,serif;margin:.35rem 0 .1rem}.stat-card small{color:var(--spruce);font-size:.65rem}.stat-card--alert strong{color:var(--coral-deep)}.admin-card{overflow:auto}.admin-card table{width:100%;border-collapse:collapse;min-width:640px}.admin-card th{text-align:left;padding:.9rem 1rem;color:var(--ink-soft);text-transform:uppercase;font:500 .6rem DM Mono,monospace;letter-spacing:.1em}.admin-card td{border-top:1px solid #eee7de;padding:.9rem 1rem;font-size:.73rem}.admin-card td strong{display:block}.admin-card td small{color:var(--ink-soft);margin-top:.2rem}.status-chip{border-radius:20px;display:inline-block;padding:.25rem .45rem;background:#e5efe9;color:var(--spruce-deep);font-size:.63rem;font-weight:800}.status-chip.disabled,.status-chip.alert{background:#fae0d7;color:#a14730}.report-card{padding:1rem;border-bottom:1px solid #eee7de}.report-card p{font-family:Fraunces,serif;font-size:1.05rem;margin:.55rem 0}.report-card small{color:var(--ink-soft);font-size:.7rem}.admin-card>.muted{padding:1.4rem}.flag-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.flag-card{background:var(--card);border:1px solid var(--line);border-radius:15px;padding:1rem;display:flex;justify-content:space-between;align-items:center;text-transform:capitalize}.flag-card strong{font-family:Fraunces,serif}.flag-card p{color:var(--ink-soft);font-size:.68rem;margin-top:.25rem}.switch{width:42px;height:24px;border:0;border-radius:20px;background:#d6d8d4;padding:3px;text-align:left}.switch span{width:18px;height:18px;border-radius:50%;background:#fff;display:block;transition:transform .18s}.switch--on{background:var(--spruce)}.switch--on span{transform:translate(18px)}.modal-backdrop{position:fixed;inset:0;z-index:50;background:#1a282db3;display:grid;place-items:center;padding:1rem;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.camera-modal{width:min(520px,100%);overflow:hidden;background:#101c20;color:#fff;border-radius:20px;box-shadow:var(--shadow)}.camera-modal header{padding:.8rem 1rem}.camera-modal video{width:100%;display:block;max-height:70vh;object-fit:cover}.capture-button{margin:1rem auto;width:50px;height:50px;padding:4px;border-radius:50%;border:2px solid #fff;background:transparent;display:block}.capture-button span{display:block;width:100%;height:100%;border-radius:50%;background:var(--coral)}.call-card{width:min(410px,100%);padding:2.3rem;color:#fff;background:var(--ink);border-radius:28px;text-align:center;box-shadow:var(--shadow);position:relative;overflow:hidden}.call-card--video{width:min(760px,100%)}.call-card__shine{position:absolute;width:260px;height:260px;border-radius:50%;background:var(--coral);filter:blur(70px);opacity:.4;right:-110px;top:-120px}.avatar--call{width:76px;height:76px;font-size:2rem;margin:0 auto 1.2rem;background:var(--coral);position:relative}.call-card .eyebrow{color:#f6be52;position:relative}.call-card h2,.call-card p{position:relative}.call-card h2{font-size:2rem;margin:.35rem 0}.call-card>p:last-of-type{color:#c3cec9;font-size:.78rem}.call-controls{position:relative;display:flex;justify-content:center;gap:.5rem;margin-top:1.6rem;flex-wrap:wrap}.call-control{border:1px solid rgba(255,255,255,.25);color:#fff;background:#ffffff1a;border-radius:10px;padding:.65rem .9rem;font-size:.72rem;font-weight:800}.call-control--answer{background:#3f9c6f;border-color:#3f9c6f}.call-control--end{background:#c95049;border-color:#c95049}.video-stage{position:relative;margin:-1rem -1rem 1rem;aspect-ratio:16/9;background:#121c20;border-radius:17px;overflow:hidden}.video-stage>video{width:100%;height:100%;object-fit:cover}.video-stage__local{position:absolute;right:.7rem;bottom:.7rem;width:28%;aspect-ratio:3/4;overflow:hidden;border:2px solid #fff;border-radius:9px}.video-stage__local video{width:100%;height:100%;object-fit:cover}.call-toast{position:fixed;bottom:1.4rem;left:50%;transform:translate(-50%);z-index:55;background:var(--ink);color:#fff;border-radius:50px;padding:.6rem 1rem;font-size:.75rem;box-shadow:var(--shadow)}@media(max-width:900px){.app-shell{grid-template-columns:74px minmax(0,1fr)}.rail{padding:.9rem .5rem;align-items:center}.wordmark{padding:0}.wordmark:not(.wordmark__mark){font-size:0}.wordmark .wordmark__mark{font-size:1rem;margin:0}.rail nav{margin-top:2rem;width:100%}.nav-button{justify-content:center;padding:.8rem;font-size:0}.nav-button span{font-size:1rem}.rail__user{padding:.8rem 0 0}.rail__identity,.rail__user .icon-button{display:none}.chat-layout{grid-template-columns:275px minmax(0,1fr)}.people-layout{grid-template-columns:1fr}.people-side{grid-template-columns:1fr 1fr}.stat-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.auth-page{grid-template-columns:1fr}.auth-intro{min-height:36vh;padding:2.5rem 1.8rem}.auth-intro h1{font-size:2.8rem}.auth-notes{display:none}.app-shell{display:block;padding-bottom:60px}.rail{position:fixed;z-index:20;height:60px;min-height:0;width:100%;bottom:0;top:auto;padding:.2rem .4rem;flex-direction:row;background:var(--ink)}.wordmark,.rail__user{display:none}.rail nav{margin:0;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);width:100%}.nav-button{padding:.45rem .2rem;font-size:.56rem;flex-direction:column;gap:0}.nav-button span{font-size:.85rem}.chat-layout{display:block}.conversation-list{height:calc(100vh - 60px);border:0}.conversation-list header{padding:1.5rem 1.2rem .8rem}.conversation-scroll{max-height:calc(100vh - 180px)}.chat-room{height:calc(100vh - 60px)}.chat-layout:has(.chat-room) .conversation-list{display:none}.chat-header{padding:.75rem .9rem}.chat-header__actions{gap:.25rem}.messages{padding:1rem .85rem}.message{max-width:90%}.composer{padding:.65rem .75rem .8rem;gap:.2rem}.composer__tool{width:28px}.people-panel,.admin-panel{padding:1.5rem 1rem}.people-side,.flag-grid{grid-template-columns:1fr}.section-heading h1{font-size:2.8rem}.popover{right:1rem;bottom:66px}.call-card{padding:1.8rem}}button.file-card{border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}
