@font-face{font-display:swap;font-family:Fraunces Variable;font-style:normal;font-weight:100 900;src:url(/static/media/fraunces-vietnamese-wght-normal.c53893a52fe93c11cf60.woff2) format("woff2-variations");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-display:swap;font-family:Fraunces Variable;font-style:normal;font-weight:100 900;src:url(/static/media/fraunces-latin-ext-wght-normal.a4d05471980d7e6e6c04.woff2) format("woff2-variations");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-display:swap;font-family:Fraunces Variable;font-style:normal;font-weight:100 900;src:url(/static/media/fraunces-latin-wght-normal.5a4a82b52388ff7868e0.woff2) format("woff2-variations");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-display:swap;font-family:Nunito Variable;font-style:normal;font-weight:200 1000;src:url(/static/media/nunito-cyrillic-ext-wght-normal.565621dcd429eb51cf25.woff2) format("woff2-variations");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-display:swap;font-family:Nunito Variable;font-style:normal;font-weight:200 1000;src:url(/static/media/nunito-cyrillic-wght-normal.49a875fc25c6a57cbce0.woff2) format("woff2-variations");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-display:swap;font-family:Nunito Variable;font-style:normal;font-weight:200 1000;src:url(/static/media/nunito-vietnamese-wght-normal.aaa7ab2c71deaffabcd1.woff2) format("woff2-variations");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-display:swap;font-family:Nunito Variable;font-style:normal;font-weight:200 1000;src:url(/static/media/nunito-latin-ext-wght-normal.c6d65b7d2d87dd3fe27c.woff2) format("woff2-variations");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-display:swap;font-family:Nunito Variable;font-style:normal;font-weight:200 1000;src:url(/static/media/nunito-latin-wght-normal.bc532ddabdb476d77e6f.woff2) format("woff2-variations");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}:root{--paper:#fbf8f0;--paper-2:#f5efe0;--paper-3:#ece3cd;--card:#fffdf7f0;--card-solid:#fffdf7;--ink:#2e3a2c;--ink-soft:#55634f;--muted:#8a9584;--line:#465c3a24;--line-strong:#465c3a42;--leaf:#5c8b4a;--leaf-dark:#44703a;--leaf-deep:#2f5428;--leaf-soft:#e4efd9;--leaf-tint:#f1f6ea;--blossom:#e2849a;--blossom-dark:#c9637c;--blossom-soft:#fbe4ea;--lake:#5f9db2;--lake-soft:#e1eff3;--wood:#9a6a41;--wood-soft:#f3e6d4;--sun:#f0c25e;--sun-soft:#fbf0d2;--danger:#c4573f;--danger-soft:#f9e2db;--board-light:#f3ead3;--board-dark:#93b47c;--board-frame:#7d5a3a;--radius-sm:8px;--radius:14px;--radius-lg:20px;--radius-pill:999px;--shadow-sm:0 1px 2px #2e3a2c0f,0 2px 6px #2e3a2c0d;--shadow:0 2px 4px #2e3a2c0d,0 10px 28px #2e3a2c17;--shadow-lg:0 6px 16px #2e3a2c14,0 24px 60px #2e3a2c29;--font-display:"Fraunces Variable","Fraunces",Georgia,"Times New Roman",serif;--font-body:"Nunito Variable","Nunito",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-mono:ui-monospace,"SF Mono","Cascadia Mono",Menlo,Consolas,monospace;--header-h:60px;--header-gap:12px;--header-space:calc(var(--header-h) + var(--header-gap)*2);--page-max:1320px;--gutter:clamp(16px,2.4vw,28px);--primary-color:var(--leaf)}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%;font-size:16px}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fbf8f0;background-color:var(--paper);color:#2e3a2c;color:var(--ink);font-family:Nunito Variable,Nunito,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-family:var(--font-body);font-size:.95rem;line-height:1.5;margin:0}body:after,body:before{content:"";inset:0;pointer-events:none;position:fixed;transition:opacity .5s ease,background .5s ease}body:before{background-color:#fbf8f0;background-color:var(--paper);background-image:url(/static/media/grain.fb206e7b6b9b4c40e800.svg),radial-gradient(1200px 600px at 15% -10%,#e4efd9e6,#0000 60%),radial-gradient(900px 500px at 100% 0,#fbe4ea8c,#0000 60%);z-index:-2}body:after{background:none;z-index:-1}body[data-theme=park]:before{background:url(/static/media/park.5884aeb9615e3e96ec22.jpg) center 62%/cover no-repeat}body[data-theme=park]:after{background:url(/static/media/grain.fb206e7b6b9b4c40e800.svg),linear-gradient(180deg,#fbf8f014,#fbf8f052 38%,#fbf8f0b8 75%,#fbf8f0db)}body[data-theme=game]:before{background:url(/static/media/park.5884aeb9615e3e96ec22.jpg) center 62%/cover no-repeat}body[data-theme=game]:after{background:url(/static/media/grain.fb206e7b6b9b4c40e800.svg),linear-gradient(180deg,#fbf8f066,#fbf8f085 45%,#fbf8f0c7)}body[data-theme=study]:before{background-color:#f1f2ec;background-image:linear-gradient(#5f9db217 1px,#0000 0),linear-gradient(90deg,#5f9db217 1px,#0000 0),linear-gradient(#5f9db20d 1px,#0000 0),linear-gradient(90deg,#5f9db20d 1px,#0000 0),linear-gradient(180deg,#f4f5ef,#e9eee9);background-size:96px 96px,96px 96px,24px 24px,24px 24px,auto}body[data-theme=study]:after{background:url(/static/media/grain.fb206e7b6b9b4c40e800.svg),radial-gradient(1000px 700px at 50% 0,#ffffff8c,#0000 70%)}body[data-theme=golden]:before{background:url(/static/media/statues.b70dd675e0d9d2cc60a6.jpg) center 72%/cover no-repeat}body[data-theme=golden]:after{background:url(/static/media/grain.fb206e7b6b9b4c40e800.svg),linear-gradient(180deg,#fbf8f03d,#fbf8f05c 38%,#fbf8f080 72%,#fbf8f0a8)}body[data-theme=blossom]:before{background:url(/static/media/blossom.1df466dc890924e74936.jpg) center 60%/cover no-repeat}body[data-theme=blossom]:after{background:url(/static/media/grain.fb206e7b6b9b4c40e800.svg),linear-gradient(180deg,#fbf8f014,#fbf8f052 38%,#fbf8f0b8 75%,#fbf8f0db)}body[data-theme=lake]:before{background:url(/static/media/lake.388394142938b908c91f.jpg) center 62%/cover no-repeat}body[data-theme=lake]:after{background:url(/static/media/grain.fb206e7b6b9b4c40e800.svg),linear-gradient(180deg,#fbf8f014,#fbf8f052 38%,#fbf8f0b8 75%,#fbf8f0db)}@media (max-width:760px){:root{--header-h:56px;--header-gap:8px}}h1,h2,h3,h4{color:#2e3a2c;color:var(--ink);font-family:Fraunces Variable,Fraunces,Georgia,Times New Roman,serif;font-family:var(--font-display);font-weight:600;letter-spacing:-.01em;line-height:1.2;margin:0}h1{font-size:clamp(1.7rem,3vw,2.3rem)}h2{font-size:clamp(1.3rem,2.2vw,1.6rem)}h3{font-size:1.15rem}h4{font-size:1rem}p{margin:0}a{color:#44703a;color:var(--leaf-dark);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{color:inherit;font:inherit}img{max-width:100%}::selection{background:#fbe4ea;background:var(--blossom-soft)}:focus-visible{outline:3px solid #5f9db28c;outline-offset:2px}*{scrollbar-color:#465c3a47 #0000;scrollbar-width:thin}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-thumb{background:#465c3a40;border-radius:8px}::-webkit-scrollbar-track{background:#0000}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.app-shell{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;position:relative}.app-main{flex:1 1;width:100%}.site-header{margin-top:var(--header-gap);padding:0 var(--gutter);pointer-events:none;position:relative;z-index:50}.site-header__inner{backdrop-filter:blur(14px) saturate(1.15);-webkit-backdrop-filter:blur(14px) saturate(1.15);background:#fdfbf5d6;border:1px solid #ffffffb3;border-radius:20px;box-shadow:0 1px 2px #2e3a2c0d,0 8px 24px #2e3a2c14;gap:1.25rem;height:var(--header-h);margin:0 auto;max-width:calc(var(--page-max) - var(--gutter)*2);padding:0 .6rem 0 .9rem;pointer-events:auto}.brand,.site-header__inner{align-items:center;display:flex}.brand{background:none;border:0;color:var(--ink);cursor:pointer;flex-shrink:0;gap:.6rem;padding:0}.brand__logo{filter:drop-shadow(0 2px 3px rgba(46,58,44,.18));height:42px;transition:transform .25s ease;width:auto}.brand:hover .brand__logo{transform:rotate(-6deg) scale(1.04)}.brand__name{font-family:var(--font-display);font-size:1.35rem;font-weight:700;letter-spacing:-.02em;white-space:nowrap}.main-nav{align-items:center;display:flex;flex:1 1;gap:.25rem}.nav-link{align-items:center;background:none;border:0;border-radius:var(--radius-pill);color:var(--ink-soft);cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:700;gap:.45rem;padding:.5rem .85rem;position:relative;transition:background .15s ease,color .15s ease;white-space:nowrap}.nav-link:hover{background:var(--leaf-tint);color:var(--ink);text-decoration:none}.nav-link.active{background:var(--leaf-soft);color:var(--leaf-deep)}.nav-link svg{height:18px;width:18px}.nav-link__badge{align-items:center;background:var(--blossom);border-radius:9px;color:#fff;display:inline-flex;font-size:.7rem;font-weight:800;height:18px;justify-content:center;min-width:18px;padding:0 5px}.header-right{align-items:center;display:flex;gap:.5rem;margin-left:auto}.profile-link{background:var(--card-solid);border:1px solid var(--line-strong);padding:.35rem .85rem .35rem .35rem}.profile-link:hover{background:var(--card-solid);border-color:var(--leaf)}.icon-btn.menu-toggle,.mobile-nav{display:none}@media (max-width:760px){.main-nav{display:none}.icon-btn.menu-toggle{display:inline-flex}.brand__name{font-size:1.15rem}.profile-link .profile-link__label{display:none}.profile-link{padding:.3rem}.mobile-nav{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fdfbf5f7;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow-lg);display:block;left:var(--gutter);opacity:0;padding:.5rem .5rem .6rem;pointer-events:none;position:absolute;right:var(--gutter);top:calc(var(--header-space) + 6px);transform:translateY(-8px);transition:opacity .18s ease,transform .18s ease;z-index:49}.mobile-nav.open{opacity:1;pointer-events:auto;transform:none}.mobile-nav .nav-link{border-radius:var(--radius);display:flex;font-size:1rem;padding:.75rem .85rem;width:100%}}.site-footer{margin-top:2.5rem;padding:0 var(--gutter) var(--header-gap)}.site-footer__inner{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#fdfbf5cc;border:1px solid #ffffffb3;border-radius:16px;box-shadow:0 1px 2px #2e3a2c0d,0 6px 18px #2e3a2c0f;color:var(--muted);display:flex;flex-wrap:wrap;font-size:.82rem;gap:1rem;justify-content:space-between;margin:0 auto;max-width:calc(var(--page-max) - var(--gutter)*2);padding:.8rem 1.1rem}.site-footer__links{display:flex;gap:1.1rem}.feedback-lead{color:var(--ink-soft);font-size:1.02rem;line-height:1.6;margin:0;max-width:62ch}.contact-row{align-items:center;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);display:flex;gap:.8rem;padding:.7rem .8rem}.contact-row__text{display:flex;flex:1 1;flex-direction:column;min-width:0}@media (max-width:520px){.contact-row__copy-label{display:none}}.contact-row__text a{color:var(--leaf-dark);font-weight:700;overflow-wrap:anywhere}.site-footer button{background:none;border:0;color:var(--leaf-dark);cursor:pointer;font-weight:700;padding:0}.page{margin:0 auto;max-width:var(--page-max);padding:clamp(16px,3vw,32px) var(--gutter) 0}.page--narrow{max-width:880px}.page-header{align-items:flex-end;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1.25rem}.page-header p{color:var(--ink-soft);margin-top:.25rem}.eyebrow{color:var(--leaf);font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow);min-width:0}.card--flat{box-shadow:var(--shadow-sm)}.card-pad{padding:clamp(14px,2vw,20px)}.card-header{border-bottom:1px solid var(--line);gap:.75rem;justify-content:space-between;padding:.9rem 1.1rem}.card-header,.card-title{align-items:center;display:flex}.card-title{font-family:var(--font-display);font-size:1.05rem;font-weight:600;gap:.5rem}.card-title svg{color:var(--leaf);height:18px;width:18px}.card-subtitle{color:var(--muted);font-size:.82rem}.card-body{padding:1rem 1.1rem}.stack{display:flex;flex-direction:column;gap:1rem}.row,.stack--sm{gap:.5rem}.row{align-items:center;display:flex}.row--wrap{flex-wrap:wrap}.spacer{flex:1 1}.muted{color:var(--muted)}.small{font-size:.82rem}.mono{font-family:var(--font-mono)}.btn{--btn-bg:var(--card-solid);--btn-fg:var(--ink);--btn-border:var(--line-strong);align-items:center;background:var(--btn-bg);border:1px solid var(--btn-border);border-radius:12px;color:var(--btn-fg);cursor:pointer;display:inline-flex;font-size:.92rem;font-weight:800;gap:.5rem;justify-content:center;line-height:1.1;padding:.62rem 1.05rem;transition:transform .08s ease,background .15s ease,box-shadow .15s ease,border-color .15s ease,color .15s ease;-webkit-user-select:none;user-select:none;white-space:nowrap}.btn:hover{border-color:var(--leaf);text-decoration:none}.btn:active{transform:translateY(1px)}.btn:disabled{cursor:not-allowed;opacity:.55;transform:none}.btn svg{flex-shrink:0;height:18px;width:18px}.btn-primary{--btn-bg:var(--leaf);--btn-fg:#fff;--btn-border:var(--leaf-dark);box-shadow:0 1px 0 var(--leaf-deep),0 4px 12px #44703a2e}.btn-primary:hover{--btn-bg:var(--leaf-dark);border-color:var(--leaf-deep)}.btn-primary:active{box-shadow:0 1px 0 var(--leaf-deep),0 3px 8px #44703a33}.btn-blossom{--btn-bg:var(--blossom);--btn-fg:#fff;--btn-border:var(--blossom-dark);box-shadow:0 2px 0 #a94f66,0 6px 14px #c9637c40}.btn-blossom:hover{--btn-bg:var(--blossom-dark);border-color:#a94f66}.btn-secondary{--btn-bg:var(--leaf-tint);--btn-fg:var(--leaf-deep);--btn-border:#5c8b4a59}.btn-secondary:hover{--btn-bg:var(--leaf-soft)}.btn-ghost{--btn-bg:#0000;--btn-border:#0000;--btn-fg:var(--ink-soft)}.btn-ghost:hover{--btn-bg:var(--leaf-tint);border-color:#0000;color:var(--ink)}.btn-danger{--btn-bg:var(--card-solid);--btn-fg:var(--danger);--btn-border:#c4573f59}.btn-danger:hover{--btn-bg:var(--danger-soft);border-color:var(--danger)}.btn-sm{border-radius:10px;font-size:.82rem;padding:.42rem .75rem}.btn-sm svg{height:16px;width:16px}.btn-lg{border-radius:14px;font-size:1.02rem;padding:.85rem 1.35rem}.btn-block{width:100%}.icon-btn{align-items:center;background:#0000;border:1px solid #0000;border-radius:11px;color:var(--ink-soft);cursor:pointer;display:inline-flex;flex-shrink:0;height:38px;justify-content:center;transition:background .15s ease,color .15s ease,border-color .15s ease;width:38px}.icon-btn:hover:not(:disabled){background:var(--leaf-tint);color:var(--ink)}.icon-btn.active{background:var(--leaf-soft);border-color:#5c8b4a4d;color:var(--leaf-deep)}.icon-btn:disabled{cursor:default;opacity:.35}.icon-btn svg{height:20px;width:20px}.icon-btn--outlined{background:var(--card-solid);border-color:var(--line-strong)}.icon-btn--sm{border-radius:9px;height:32px;width:32px}.icon-btn--sm svg{height:17px;width:17px}.segmented{background:var(--paper-2);border:1px solid var(--line);border-radius:13px;display:inline-flex;gap:2px;max-width:100%;overflow-x:auto;padding:4px}.segmented button{align-items:center;background:#0000;border:0;border-radius:10px;color:var(--ink-soft);cursor:pointer;display:inline-flex;font-size:.86rem;font-weight:700;gap:.4rem;padding:.42rem .8rem;transition:background .15s ease,color .15s ease,box-shadow .15s ease;white-space:nowrap}.segmented button:hover{color:var(--ink)}.segmented button.active{background:var(--card-solid);box-shadow:var(--shadow-sm);color:var(--leaf-deep)}.segmented img,.segmented svg{height:18px;object-fit:contain;width:18px}.chip{align-items:center;background:var(--paper-2);border:1px solid var(--line);border-radius:var(--radius-pill);color:var(--ink-soft);display:inline-flex;font-size:.76rem;font-weight:700;gap:.35rem;padding:.2rem .6rem;white-space:nowrap}.chip img{height:14px;object-fit:contain;width:14px}.chip--leaf{background:var(--leaf-soft);border-color:#5c8b4a40;color:var(--leaf-deep)}.chip--blossom{background:var(--blossom-soft);border-color:#e2849a59;color:#9a4459}.chip--lake{background:var(--lake-soft);border-color:#5f9db24d;color:#2f6676}.chip--sun{background:var(--sun-soft);border-color:#f0c25e73;color:#8a6413}.chip--wood{background:var(--wood-soft);border-color:#9a6a414d;color:#7a5230}.field{display:flex;flex-direction:column;gap:.35rem}.field label,.label{color:var(--ink-soft);font-size:.8rem;font-weight:800}.input,.select,.textarea{background:var(--card-solid);border:1px solid var(--line-strong);border-radius:11px;color:var(--ink);font-size:.95rem;padding:.65rem .8rem;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.input::placeholder,.textarea::placeholder{color:#a3ac9e}.input:focus,.select:focus,.textarea:focus{border-color:var(--leaf);box-shadow:0 0 0 3px #5c8b4a2e;outline:none}.textarea{font-family:var(--font-mono);font-size:.82rem;min-height:90px;resize:vertical}.form-error,.form-success{border-radius:10px;font-size:.85rem;font-weight:600;padding:.6rem .8rem}.form-error{background:var(--danger-soft);border:1px solid #c4573f40;color:#8f3b28}.form-success{background:var(--leaf-soft);border:1px solid #5c8b4a40;color:var(--leaf-deep)}.range{padding:.25rem .5rem 0}.range__header{color:var(--ink-soft);display:flex;font-size:.82rem;font-weight:800;justify-content:space-between}.range__value{color:var(--leaf-deep);font-family:var(--font-mono)}.range__track{border-radius:3px;height:6px;margin:14px 0 10px}.range__thumb{background:var(--card-solid);border:2px solid var(--leaf);border-radius:50%;box-shadow:var(--shadow-sm);height:20px;width:20px}.range__thumb:focus-visible{outline:3px solid #5c8b4a4d}input[type=range].slider{accent-color:var(--leaf);width:100%}.avatar{--size:36px;align-items:center;border-radius:50%;box-shadow:inset 0 -2px 0 #00000014,0 1px 2px #2e3a2c26;color:#fff;display:inline-flex;flex-shrink:0;font-family:var(--font-display);font-size:calc(var(--size)*.42);font-weight:700;height:var(--size);justify-content:center;position:relative;text-transform:uppercase;-webkit-user-select:none;user-select:none;width:var(--size)}.avatar--guest{background:var(--paper-3)!important;color:var(--ink-soft)}.avatar__dot{background:#9aa595;border:2px solid var(--card-solid);border-radius:50%;bottom:-1px;height:calc(var(--size)*.3);min-height:9px;min-width:9px;position:absolute;right:-1px;width:calc(var(--size)*.3)}.avatar__dot.online{background:#5cc25a}.user-link{background:none;border:0;color:inherit;font-weight:800;max-width:100%;overflow:hidden;padding:0;text-align:left;text-overflow:ellipsis;white-space:nowrap}.user-link--clickable{cursor:pointer}.user-link--clickable:hover{color:var(--leaf-dark);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}.modal-backdrop{align-items:center;animation:fade-in .18s ease;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#28342461;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:200}.modal{animation:pop-in .22s cubic-bezier(.2,.9,.3,1.2);background:var(--card-solid);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-height:calc(100dvh - 32px);overflow:auto;width:min(520px,100%)}.modal--sm{width:min(400px,100%)}.modal-header{align-items:center;display:flex;gap:1rem;justify-content:space-between;padding:1.1rem 1.25rem .4rem}.modal-body{padding:.75rem 1.25rem 1.25rem}.modal-footer{background:var(--paper);border-radius:0 0 var(--radius-lg) var(--radius-lg);border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end;padding:.9rem 1.25rem}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes pop-in{0%{opacity:0;transform:translateY(10px) scale(.97)}to{opacity:1;transform:none}}@keyframes slide-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.toast-stack{bottom:16px;display:flex;flex-direction:column-reverse;gap:10px;pointer-events:none;position:fixed;right:16px;width:min(360px,calc(100vw - 32px));z-index:300}.toast{align-items:flex-start;animation:slide-up .25s ease;background:var(--card-solid);border:1px solid var(--line);border-left:4px solid var(--leaf);border-radius:var(--radius);box-shadow:var(--shadow-lg);display:flex;gap:.75rem;padding:.85rem .9rem;pointer-events:auto}.toast--blossom{border-left-color:var(--blossom)}.toast--danger{border-left-color:var(--danger)}.toast--sun{border-left-color:var(--sun)}.toast__body{flex:1 1;min-width:0}.toast__title{font-size:.92rem;font-weight:800}.toast__text{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--ink-soft);display:-webkit-box;font-size:.85rem;margin-top:.1rem;overflow:hidden;text-overflow:ellipsis}.toast__actions{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.6rem}.toast__close{margin:-4px -4px 0 0}.empty-state{align-items:center;color:var(--muted);display:flex;flex-direction:column;gap:.4rem;justify-content:center;padding:1.5rem 1rem;text-align:center}.empty-state svg{color:var(--board-dark);height:34px;margin-bottom:.2rem;width:34px}.empty-state strong{color:var(--ink-soft)}.spinner{animation:spin .8s linear infinite;border:3px solid var(--leaf-soft);border-radius:50%;border-top-color:var(--leaf);flex-shrink:0;height:22px;width:22px}.spinner--sm{border-width:2px;height:16px;width:16px}.spinner--light{border-color:#fff #ffffff59 #ffffff59}@keyframes spin{to{transform:rotate(1turn)}}.pulse-dot{animation:pulse 1.6s infinite;background:var(--blossom);border-radius:50%;box-shadow:0 0 0 0 #e2849a99;height:9px;width:9px}@keyframes pulse{0%{box-shadow:0 0 0 0 #e2849a8c}70%{box-shadow:0 0 0 9px #e2849a00}to{box-shadow:0 0 0 0 #e2849a00}}.divider{background:var(--line);border:0;height:1px;margin:.25rem 0}.visually-hidden{clip:rect(0 0 0 0);height:1px;overflow:hidden;position:absolute!important;white-space:nowrap;width:1px}.board-wrap{display:flex;justify-content:center;width:100%}.board-frame{background:linear-gradient(145deg,#a27650,#7b5636);border-radius:14px;box-shadow:inset 0 1px 0 #ffffff40,0 2px 0 #5d4029,0 14px 34px #3c2c1a47;padding:clamp(5px,.9vw,9px);position:relative}.board-frame__inner{border-radius:6px;box-shadow:inset 0 0 0 1px #00000026;overflow:hidden}.board-frame--locked{filter:saturate(.92)}.square-badge{align-items:center;animation:pop-in .25s ease;display:flex;filter:drop-shadow(0 2px 3px rgba(0,0,0,.3));height:38%;justify-content:center;pointer-events:none;position:absolute;right:2%;top:2%;width:38%;z-index:5}.square-badge svg{height:100%;width:100%}.history-banner{align-items:center;animation:slide-up .2s ease;background:#2e3a2cdb;border-radius:var(--radius-pill);bottom:14px;box-shadow:var(--shadow);color:#fff;display:inline-flex;font-size:.82rem;font-weight:700;gap:.5rem;left:50%;padding:.4rem .45rem .4rem .85rem;position:absolute;transform:translateX(-50%);white-space:nowrap;z-index:20}.history-banner .btn{--btn-bg:#fff;--btn-fg:var(--leaf-deep);--btn-border:#fff}.player-strip{align-items:center;display:flex;gap:.7rem;min-height:52px;padding:.4rem .2rem}.player-strip__info{display:flex;flex:1 1;flex-direction:column;gap:.05rem;min-width:0}.player-strip__name{align-items:center;display:flex;font-size:.98rem;gap:.45rem;min-width:0}.player-strip__name .chip{font-size:.7rem;padding:.05rem .45rem}.captured{align-items:center;flex-wrap:wrap;gap:4px;min-height:20px}.captured,.captured__group{display:flex}.captured__group img{height:19px;object-fit:contain;opacity:.85;width:19px}.captured__group img+img{margin-left:-11px}.captured__diff{color:var(--ink-soft);font-size:.78rem;font-weight:800;margin-left:2px}.clock{font-feature-settings:"tnum";background:var(--paper-2);border:1px solid var(--line);border-radius:11px;color:var(--ink-soft);font-family:var(--font-mono);font-size:clamp(1.15rem,2.2vw,1.5rem);font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:.02em;min-width:6.2ch;padding:.35rem .8rem;text-align:center;transition:background .2s ease,color .2s ease,box-shadow .2s ease}.clock.active{background:var(--ink);border-color:var(--ink);box-shadow:0 4px 14px #2e3a2c4d;color:#fff}.clock.low{color:var(--danger)}.clock.active.low{animation:clock-pulse 1s ease-in-out infinite;background:var(--danger);border-color:var(--danger);color:#fff}@keyframes clock-pulse{50%{box-shadow:0 0 0 6px #c4573f2e}}.moves{display:flex;flex-direction:column;min-height:0}.moves__list{flex:1 1;min-height:120px;overflow-y:auto;padding:.35rem}.moves__row{align-items:stretch;border-radius:8px;display:grid;grid-template-columns:2.6rem 1fr 1fr}.moves__row:nth-child(odd){background:#ece3cd59}.moves__num{font-feature-settings:"tnum";color:var(--muted);font-size:.8rem;font-variant-numeric:tabular-nums;font-weight:700;padding-left:.6rem}.move-cell,.moves__num{align-items:center;display:flex}.move-cell{background:#0000;border:0;border-radius:7px;color:var(--ink);cursor:pointer;font-size:.92rem;font-weight:700;gap:.35rem;margin:2px;min-width:0;padding:.32rem .5rem;text-align:left}.move-cell:hover:not(:disabled){background:var(--leaf-soft)}.move-cell.current,.move-cell.current:hover:not(:disabled){background:var(--leaf);color:#fff}.move-cell:disabled{cursor:default}.move-cell__badge{display:inline-flex;flex-shrink:0;height:15px;width:15px}.move-cell__badge svg{height:100%;width:100%}.moves__variation{background:var(--blossom-soft);border:1px dashed #c9637c73;border-radius:10px;margin:.4rem .35rem .2rem;padding:.5rem .6rem}.moves__variation-title{align-items:center;color:#9a4459;display:flex;font-size:.72rem;font-weight:800;justify-content:space-between;letter-spacing:.06em;margin-bottom:.25rem;text-transform:uppercase}.moves__variation-moves{display:flex;flex-wrap:wrap;font-size:.88rem;font-weight:700;gap:2px 4px}.moves__variation-moves span.current{background:var(--blossom);border-radius:6px;color:#fff;padding:0 4px}.moves__nav{align-items:center;border-top:1px solid var(--line);display:flex;gap:.25rem;justify-content:space-between;padding:.45rem .5rem}.moves__empty{color:var(--muted);font-size:.85rem;padding:1.25rem .5rem;text-align:center}.play-layout{grid-gap:clamp(14px,2vw,24px);align-items:start;display:grid;gap:clamp(14px,2vw,24px);grid-template-areas:"lobby board chat";grid-template-columns:minmax(280px,340px) minmax(0,1fr) minmax(260px,320px)}.play-layout__lobby{grid-area:lobby}.play-layout__board{grid-area:board}.play-layout__chat{grid-area:chat}@media (max-width:1180px){.play-layout{grid-template-areas:"lobby board" "chat board";grid-template-columns:minmax(280px,360px) minmax(0,1fr)}}@media (max-width:820px){.play-layout{grid-template-areas:"lobby" "board" "chat";grid-template-columns:minmax(0,1fr)}}.hero{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:clamp(14px,2vw,22px)}.hero h1{text-shadow:0 1px 0 #fff9}.hero p{color:var(--ink-soft);font-weight:600;margin-top:.3rem}.quick-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(3,1fr)}.quick-tile{align-items:center;background:var(--card-solid);border:1px solid var(--line);border-radius:12px;cursor:pointer;display:flex;flex-direction:column;gap:.1rem;padding:.6rem .25rem .5rem;transition:border-color .15s ease,background .15s ease,transform .1s ease,box-shadow .15s ease}.quick-tile:hover{background:var(--leaf-tint);border-color:var(--leaf);box-shadow:var(--shadow-sm)}.quick-tile:active{transform:translateY(1px)}.quick-tile.selected{background:var(--leaf-soft);border-color:var(--leaf);box-shadow:inset 0 0 0 1px var(--leaf)}.quick-tile__time{font-feature-settings:"tnum";font-size:1.05rem;font-variant-numeric:tabular-nums;font-weight:800}.quick-tile__label{align-items:center;color:var(--muted);display:flex;font-size:.72rem;font-weight:700;gap:.25rem}.quick-tile__label img{height:13px;width:13px}.lobby-list{display:flex;flex-direction:column;gap:.45rem;max-height:340px;overflow-y:auto;padding:.1rem}.offer-row{align-items:center;animation:slide-up .2s ease;background:var(--card-solid);border:1px solid var(--line);border-radius:12px;cursor:pointer;display:flex;gap:.65rem;padding:.55rem .6rem;text-align:left;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease;width:100%}.offer-row:hover{border-color:var(--leaf);box-shadow:var(--shadow-sm)}.offer-row:hover .offer-row__cta{background:var(--leaf);border-color:var(--leaf-dark);color:#fff}.offer-row--own{background:var(--sun-soft);border-color:#f0c25e99;cursor:default}.offer-row--own:hover{border-color:#f0c25ee6}.offer-row__main{flex:1 1;min-width:0}.offer-row__name{font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.offer-row__meta{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.15rem}.offer-row__cta{background:var(--leaf-tint);border:1px solid #5c8b4a59;border-radius:9px;color:var(--leaf-deep);font-size:.8rem;font-weight:800;padding:.35rem .7rem;transition:all .15s ease}.color-pip{border:1.5px solid #2e3a2c73;border-radius:50%;flex-shrink:0;height:16px;width:16px}.color-pip--white{background:#fff}.color-pip--black{background:#2e3a2c}.color-pip--random{background:linear-gradient(135deg,#fff 50%,#2e3a2c 0)}.sandbox-toolbar{align-items:center;display:flex;flex-shrink:0;flex-wrap:nowrap;gap:.15rem}@media (max-width:520px){.card-header .card-subtitle.hide-sm{display:none}.sandbox-toolbar .icon-btn{height:34px;width:34px}}.sandbox-rules{grid-gap:1rem;background:var(--paper);border-radius:0 0 var(--radius-lg) var(--radius-lg);border-top:1px solid var(--line);display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));padding:.9rem 1.1rem 1.1rem}.option-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fill,minmax(92px,1fr))}.option-tile{align-items:center;background:var(--card-solid);border:1px solid var(--line);border-radius:12px;cursor:pointer;display:flex;flex-direction:column;gap:.2rem;justify-content:center;padding:.6rem .3rem;text-align:center;transition:border-color .15s ease,background .15s ease}.option-tile.selected,.option-tile:hover{border-color:var(--leaf)}.option-tile.selected{background:var(--leaf-soft);box-shadow:inset 0 0 0 1px var(--leaf)}.option-tile img{height:28px;object-fit:contain;width:28px}.option-tile__title{color:var(--muted);font-size:.74rem;font-weight:700}.option-tile__value{font-feature-settings:"tnum";font-size:.95rem;font-variant-numeric:tabular-nums;font-weight:800}.option-group+.option-group{margin-top:1.1rem}.option-group__label{align-items:center;color:var(--ink-soft);display:flex;font-size:.8rem;font-weight:800;justify-content:space-between;margin-bottom:.5rem}.color-choice{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(3,1fr)}.color-choice button{align-items:center;background:var(--card-solid);border:1px solid var(--line);border-radius:12px;cursor:pointer;display:flex;flex-direction:column;font-size:.82rem;font-weight:700;gap:.35rem;padding:.6rem}.color-choice button.selected{background:var(--leaf-soft);border-color:var(--leaf);box-shadow:inset 0 0 0 1px var(--leaf)}.color-choice .color-pip{height:26px;width:26px}.check-row{align-items:center;cursor:pointer;display:flex;font-size:.9rem;font-weight:700;gap:.55rem;-webkit-user-select:none;user-select:none}.check-row input{accent-color:var(--leaf);height:18px;width:18px}.link-btn{background:none;border:0;color:var(--leaf-dark);cursor:pointer;font-size:.82rem;font-weight:800;padding:0}.link-btn:hover{text-decoration:underline}.chat{flex-direction:column;height:100%}.chat,.chat__messages{display:flex;min-height:0}.chat__messages{flex:1 1;flex-direction:column;gap:.55rem;overflow-y:auto;padding:.75rem .9rem}.chat-msg{align-items:flex-start;animation:slide-up .18s ease;display:flex;gap:.55rem}.chat-msg__body{flex:1 1;min-width:0}.chat-msg__meta{align-items:baseline;display:flex;font-size:.82rem;gap:.4rem}.chat-msg__time{font-feature-settings:"tnum";color:var(--muted);font-size:.7rem;font-variant-numeric:tabular-nums}.chat-msg__text{color:var(--ink);font-size:.9rem;overflow-wrap:anywhere}.chat-msg--self .user-link{color:var(--leaf-dark)}.chat__composer{border-top:1px solid var(--line);display:flex;gap:.4rem;padding:.6rem}.chat__composer .input{font-size:.9rem;padding:.55rem .75rem}.chat__composer .icon-btn{background:var(--leaf);color:#fff;height:40px;width:40px}.chat__composer .icon-btn:hover:not(:disabled){background:var(--leaf-dark);color:#fff}.chat__composer .icon-btn:disabled{background:var(--paper-3);color:var(--muted);opacity:1}.game-layout{grid-gap:clamp(14px,2vw,24px);align-items:start;display:grid;gap:clamp(14px,2vw,24px);grid-template-areas:"side board panel";grid-template-columns:minmax(240px,300px) minmax(0,1fr) minmax(270px,330px)}.game-layout__side{grid-area:side}.game-layout__board{grid-area:board;min-width:0}.game-layout__panel{grid-area:panel}@media (max-width:1180px){.game-layout{grid-template-areas:"board panel" "side panel";grid-template-columns:minmax(0,1fr) minmax(270px,330px)}}@media (max-width:860px){.game-layout{grid-template-areas:"board" "panel" "side";grid-template-columns:minmax(0,1fr)}}.board-column{margin:0 auto;max-width:min(100%,78vh)}.board-column,.panel{display:flex;flex-direction:column}.panel{max-height:calc(100dvh - var(--header-space) - 40px)}@media (max-width:860px){.panel{max-height:none}.panel .moves__list{max-height:220px}}.panel__section{border-top:1px solid var(--line);padding:.8rem .9rem}.game-status{align-items:center;display:flex;font-weight:800;gap:.55rem;padding:.8rem .95rem}.game-status__text{flex:1 1;min-width:0}.game-status__sub{color:var(--muted);font-size:.8rem;font-weight:600}.turn-dot{border:2px solid #2e3a2c73;border-radius:50%;flex-shrink:0;height:12px;width:12px}.turn-dot--w{background:#fff}.turn-dot--b{background:var(--ink)}.action-row{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:1fr 1fr}.inline-offer{align-items:center;animation:slide-up .2s ease;background:var(--sun-soft);border:1px solid #f0c25e99;border-radius:12px;display:flex;flex-wrap:wrap;font-size:.88rem;font-weight:700;gap:.6rem;padding:.7rem .8rem}.inline-offer__text{flex:1 1;min-width:140px}.elo-stakes{grid-gap:.4rem;display:grid;gap:.4rem;grid-template-columns:repeat(3,1fr);text-align:center}.elo-stakes>div{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:.45rem .25rem}.elo-stakes span{color:var(--muted);display:block;font-size:.68rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.elo-stakes strong{font-feature-settings:"tnum";font-size:1rem;font-variant-numeric:tabular-nums}.elo-plus{color:var(--leaf-dark)}.elo-minus{color:var(--danger)}.versus{align-items:center;display:flex;gap:.6rem}.versus__vs{color:var(--muted);font-family:var(--font-display);font-style:italic}.result-hero{background:linear-gradient(180deg,#fbf8f059,#fffdf7 92%),url(/static/media/park-small.79f2d3f80324fe0e862d.jpg) center 60% /cover;border-radius:var(--radius-lg) var(--radius-lg) 0 0;overflow:hidden;padding:1.6rem 1.25rem 1.1rem;position:relative;text-align:center}.result-hero__icon{align-items:center;background:var(--card-solid);border-radius:50%;box-shadow:var(--shadow);display:flex;font-size:2rem;height:64px;justify-content:center;margin:0 auto .6rem;width:64px}.result-hero__icon svg{height:34px;width:34px}.result-hero p{color:var(--ink-soft);font-weight:700;margin-top:.25rem}.result--win .result-hero__icon{color:var(--sun)}.result--loss .result-hero__icon{color:var(--blossom-dark)}.result--draw .result-hero__icon{color:var(--lake)}.confetti{inset:0;overflow:hidden;pointer-events:none;position:absolute}.confetti span{animation:petal-fall 2.6s ease-in forwards;border-radius:50% 50% 50% 0;height:13px;opacity:.9;position:absolute;top:-12px;width:9px}@keyframes petal-fall{0%{opacity:0;transform:translateY(0) rotate(0deg)}10%{opacity:.95}to{opacity:0;transform:translateY(260px) rotate(320deg)}}.analysis-layout{grid-gap:clamp(14px,2vw,24px);align-items:start;display:grid;gap:clamp(14px,2vw,24px);grid-template-areas:"summary board panel";grid-template-columns:minmax(250px,310px) minmax(0,1fr) minmax(270px,330px)}.analysis-layout__summary{grid-area:summary}.analysis-layout__board{grid-area:board;min-width:0}.analysis-layout__panel{grid-area:panel}@media (max-width:1180px){.analysis-layout{grid-template-areas:"board panel" "summary panel";grid-template-columns:minmax(0,1fr) minmax(270px,330px)}}@media (max-width:860px){.analysis-layout{grid-template-areas:"board" "panel" "summary";grid-template-columns:minmax(0,1fr)}}.board-with-eval{align-items:stretch;display:flex;gap:10px}.board-with-eval>.board-wrap{flex:1 1;min-width:0}.eval-bar{background:#33402f;border-radius:8px;box-shadow:inset 0 0 0 1px #0003,var(--shadow-sm);flex-shrink:0;overflow:hidden;position:relative;width:22px}.eval-bar__white{background:#f7f3e8;left:0;position:absolute;right:0;transition:height .55s cubic-bezier(.3,.8,.3,1)}.eval-bar__label{font-family:var(--font-mono);font-size:.6rem;font-weight:800;left:0;letter-spacing:-.03em;position:absolute;right:0;text-align:center;z-index:2}.eval-bar--disabled{opacity:.35}.best-line{border-top:1px solid var(--line);font-size:.86rem;padding:.65rem .9rem}.best-line__moves{color:var(--ink);display:flex;flex-wrap:wrap;font-weight:700;gap:0 .35rem;margin-top:.15rem}.best-line__moves span:first-child{color:var(--leaf-dark)}.eval-pill{background:var(--paper-2);border:1px solid var(--line);border-radius:7px;font-family:var(--font-mono);font-size:.85rem;font-weight:800;padding:.15rem .5rem}.eval-pill--white{background:#fff}.eval-pill--black{background:var(--ink);border-color:var(--ink);color:#fff}.overview-table{border-collapse:collapse;font-size:.88rem;width:100%}.overview-table th{color:var(--muted);font-size:.7rem;font-weight:800;letter-spacing:.06em;padding:0 .3rem .4rem;text-transform:uppercase}.overview-table td{border-top:1px solid var(--line);padding:.38rem .3rem}.overview-table td.count{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:800;text-align:center;width:3.2rem}.overview-table .label-cell{align-items:center;display:flex;font-weight:700;gap:.45rem}.overview-table .label-cell span.badge{display:inline-flex;height:18px;width:18px}.overview-table .label-cell svg{height:100%;width:100%}.chart-box{height:150px;padding:.4rem .5rem .6rem;position:relative}.analysis-cta{align-items:center;display:flex;flex-direction:column;gap:.7rem;padding:1.4rem 1.1rem;text-align:center}.analysis-cta__icon{align-items:center;background:var(--leaf-soft);border-radius:16px;color:var(--leaf-dark);display:flex;height:56px;justify-content:center;width:56px}.analysis-cta__icon svg{height:30px;width:30px}.hero__actions{display:flex;flex-wrap:wrap;gap:.6rem}.level-grid{grid-template-columns:repeat(4,1fr)}@media (max-width:420px){.level-grid{grid-template-columns:repeat(2,1fr)}}.engine-error{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem .75rem}.engine-error span{flex:1 1 12rem;min-width:0}.computer-level{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);gap:.45rem;padding:.7rem .8rem}.computer-level,.computer-level__top{display:flex;flex-direction:column}.computer-level__bar{grid-gap:3px;display:grid;gap:3px;grid-template-columns:repeat(8,1fr)}.computer-level__bar span{background:var(--line-strong);border-radius:3px;height:6px}.computer-level__bar span.on{background:var(--leaf)}.analysis-progress{display:flex;flex-direction:column;gap:.4rem;text-align:left;width:100%}.analysis-progress__top{align-items:baseline;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between}.analysis-progress__top strong{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.analysis-progress__bar{background:var(--leaf-tint);border:1px solid var(--line);border-radius:var(--radius-pill);height:8px;overflow:hidden}.analysis-progress__bar span{background:linear-gradient(90deg,var(--leaf),#7aa866);border-radius:inherit;display:block;height:100%;transition:width .35s ease}.engine-toggles{padding:.7rem 1.1rem 0}.toggle-chips{display:flex;flex-wrap:wrap;gap:.35rem}.toggle-chip{align-items:center;background:var(--card-solid);border:1px solid var(--line-strong);border-radius:var(--radius-pill);color:var(--ink-soft);cursor:pointer;display:inline-flex;font:700 .78rem var(--font-body);gap:.3rem;padding:.3rem .65rem;transition:background .15s ease,border-color .15s ease,color .15s ease}.toggle-chip.on,.toggle-chip:hover{border-color:var(--leaf)}.toggle-chip.on{background:var(--leaf-soft);color:var(--leaf-deep)}.toggle-chip:focus-visible{outline:3px solid var(--leaf-soft);outline-offset:1px}.profile-layout{grid-gap:clamp(14px,2vw,24px);align-items:start;display:grid;gap:clamp(14px,2vw,24px);grid-template-columns:minmax(0,1fr) minmax(280px,340px)}@media (max-width:960px){.profile-layout{grid-template-columns:minmax(0,1fr)}}.profile-hero{margin-bottom:clamp(14px,2vw,24px);overflow:hidden;position:relative}.profile-hero__banner{background:url(/static/media/blossom-small.b2f2c0f8ae8b67ec0524.jpg) center 45%/cover;height:110px;position:relative}.profile-hero__banner:after{background:linear-gradient(180deg,#fbf8f000 30%,#fffdf7e6);content:"";inset:0;position:absolute}.profile-hero__content{align-items:flex-end;display:flex;flex-wrap:wrap;gap:1rem;margin-top:-46px;padding:0 clamp(16px,2.4vw,26px) clamp(16px,2vw,22px);position:relative}.profile-hero__content .avatar{border:4px solid var(--card-solid);box-shadow:var(--shadow)}.profile-hero__name{flex:1 1;min-width:180px;padding-bottom:.2rem;padding-top:54px}@media (max-width:600px){.profile-hero__name{flex-basis:100%;padding-top:0}}.profile-hero__name h1{overflow-wrap:anywhere}.profile-hero__actions{display:flex;flex-wrap:wrap;gap:.5rem;padding-bottom:.2rem}.stat-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.stat-card{background:var(--card-solid);border:1px solid var(--line);border-radius:var(--radius);padding:.9rem 1rem}.stat-card__head{align-items:center;color:var(--ink-soft);display:flex;font-size:.85rem;font-weight:800;gap:.45rem}.stat-card__head img{height:20px;width:20px}.stat-card__elo{font-feature-settings:"tnum";font-family:var(--font-display);font-size:1.9rem;font-variant-numeric:tabular-nums;font-weight:700;line-height:1.1;margin:.35rem 0 .15rem}.stat-card__meta{color:var(--muted);display:flex;font-size:.78rem;font-weight:700;justify-content:space-between}.winbar{background:var(--paper-3);border-radius:3px;height:6px;margin-top:.45rem;overflow:hidden}.winbar>div{background:linear-gradient(90deg,var(--leaf),#8cc06f);border-radius:3px;height:100%}.history-list{display:flex;flex-direction:column}.history-row{grid-gap:.8rem;align-items:center;background:#0000;border:0;border-top:1px solid var(--line);cursor:pointer;display:grid;gap:.8rem;grid-template-columns:74px minmax(0,1fr) auto auto;padding:.7rem 1.1rem;text-align:left;transition:background .15s ease;width:100%}.history-row:first-child{border-top:0}.history-row:hover{background:var(--leaf-tint)}.history-row:hover .history-row__go{color:var(--leaf-dark);transform:translateX(2px)}.history-row__opponent{align-items:center;display:flex;gap:.55rem;min-width:0}.history-row__opponent>div{min-width:0}.history-row__name{font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-row__sub{color:var(--muted);font-size:.76rem;font-weight:600}.history-row__go{color:var(--muted);display:flex;transition:transform .15s ease,color .15s ease}.history-row__go svg{height:18px;width:18px}@media (max-width:560px){.history-row{grid-template-columns:64px minmax(0,1fr) auto;padding:.65rem .8rem}.history-row .chip{display:none}}.result-badge{align-items:center;border-radius:8px;display:inline-flex;font-size:.75rem;font-weight:800;justify-content:center;letter-spacing:.03em;padding:.25rem .5rem;text-transform:uppercase}.result-badge--win{background:var(--leaf-soft);color:var(--leaf-deep)}.result-badge--loss{background:var(--blossom-soft);color:#9a4459}.result-badge--draw{background:var(--paper-2);color:var(--ink-soft)}.friend-list{display:flex;flex-direction:column;max-height:360px;overflow-y:auto}.friend-row{align-items:center;border-top:1px solid var(--line);display:flex;gap:.65rem;padding:.55rem 1.1rem}.friend-row:first-child{border-top:0}.friend-row__info{flex:1 1;min-width:0}.friend-row__status{color:var(--muted);font-size:.74rem;font-weight:700}.friend-row__status.online{color:#3f9a3d}.friend-row__actions{display:flex;gap:.15rem}.request-card{align-items:center;animation:slide-up .2s ease;background:var(--blossom-soft);border:1px solid #e2849a59;border-radius:12px;display:flex;gap:.6rem;padding:.65rem .7rem}.request-card__info{flex:1 1;min-width:0}.request-card__actions{display:flex;gap:.3rem}.add-friend-form{display:flex;gap:.4rem}.add-friend-form .input{font-size:.9rem;padding:.5rem .7rem}.auth-card{margin:clamp(10px,5vh,48px) auto 0;max-width:440px;overflow:hidden}.auth-card__hero{align-items:center;background:linear-gradient(180deg,#fbf8f040,#fffdf7 90%),url(/static/media/park-small.79f2d3f80324fe0e862d.jpg) center 60% /cover;display:flex;flex-direction:column;gap:.5rem;padding:1.6rem 1.25rem 1.1rem;text-align:center}.auth-card__hero img{filter:drop-shadow(0 4px 8px rgba(46,58,44,.25));height:92px}.auth-card__hero p{color:var(--ink-soft);font-weight:600}.auth-card form{display:flex;flex-direction:column;gap:.85rem;padding:.4rem 1.4rem 1.5rem}.auth-tabs{display:flex;justify-content:center;padding:.3rem 1.4rem .9rem}.auth-tabs .segmented{width:100%}.auth-tabs .segmented button{flex:1 1;justify-content:center}.messages-layout{display:grid;grid-template-columns:minmax(240px,300px) minmax(0,1fr);height:calc(100dvh - var(--header-space) - 120px);min-height:420px;overflow:hidden}.conv-list{background:#fbf8f099;border-right:1px solid var(--line);display:flex;flex-direction:column;min-height:0}.conv-list__items{flex:1 1;overflow-y:auto;padding:.4rem}.conv-item{align-items:center;background:#0000;border:0;border-radius:12px;cursor:pointer;display:flex;gap:.65rem;padding:.6rem .65rem;text-align:left;transition:background .15s ease;width:100%}.conv-item:hover{background:var(--leaf-tint)}.conv-item.active{background:var(--leaf-soft)}.conv-item__info{flex:1 1;min-width:0}.conv-item__name{font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conv-item__sub{color:var(--muted);font-size:.75rem;font-weight:700}.conversation__close-row{display:flex;justify-content:flex-end;padding:.6rem .6rem 0}.conversation{display:flex;flex-direction:column;min-height:0;min-width:0}.conversation__header{align-items:center;border-bottom:1px solid var(--line);display:flex;gap:.7rem;padding:.75rem 1rem}.conversation__body{display:flex;flex:1 1;flex-direction:column;gap:.25rem;min-height:0;overflow-y:auto;padding:1rem clamp(12px,2vw,22px)}.day-sep{align-self:center;background:var(--paper-2);border-radius:var(--radius-pill);color:var(--muted);font-size:.72rem;font-weight:800;margin:.75rem 0 .4rem;padding:.2rem .7rem}.bubble-row{align-items:flex-start;animation:slide-up .18s ease;display:flex;flex-direction:column;max-width:min(78%,520px)}.bubble-row--self{align-items:flex-end;align-self:flex-end}.bubble{background:var(--card-solid);border:1px solid var(--line);border-radius:18px 18px 18px 6px;box-shadow:var(--shadow-sm);font-size:.93rem;overflow-wrap:anywhere;padding:.55rem .85rem;white-space:pre-wrap}.bubble-row--self .bubble{background:var(--leaf);border-color:var(--leaf-dark);border-radius:18px 18px 6px 18px;color:#fff}.bubble-row--grouped .bubble{border-radius:18px}.bubble__time{font-feature-settings:"tnum";color:var(--muted);font-size:.68rem;font-variant-numeric:tabular-nums;margin:.15rem .4rem .3rem}.conversation__composer{align-items:flex-end;background:#fbf8f099;border-top:1px solid var(--line);display:flex;gap:.5rem;padding:.7rem}.conversation__composer textarea{border-radius:22px;flex:1 1;font-family:var(--font-body);font-size:.95rem;max-height:140px;min-height:44px;padding:.65rem 1rem;resize:none}.conversation__composer .icon-btn{background:var(--leaf);border-radius:50%;color:#fff;height:44px;width:44px}.conversation__composer .icon-btn:hover:not(:disabled){background:var(--leaf-dark);color:#fff}.conversation__composer .icon-btn:disabled{background:var(--paper-3);color:var(--muted);opacity:1}.back-btn{display:none!important}@media (max-width:720px){.messages-layout{grid-template-columns:minmax(0,1fr);height:calc(100dvh - var(--header-space) - 90px)}.messages-layout.has-active .conv-list,.messages-layout:not(.has-active) .conversation{display:none}.back-btn{display:inline-flex!important}}.active-game-banner{align-items:center;background:var(--sun-soft);border-color:#f0c25eb3;display:flex;flex-wrap:wrap;gap:.8rem;margin-bottom:clamp(14px,2vw,22px);padding:.8rem 1rem}.save-note{margin:0;text-align:center}.history-pager{align-items:center;border-top:1px solid var(--line);display:flex;gap:.75rem;justify-content:space-between;padding:.7rem 1.1rem}.history-pager__info{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:700;text-align:center}.history-list--loading{opacity:.55;transition:opacity .15s ease}.coming-soon{margin-top:clamp(0px,3vh,32px);overflow:hidden}.coming-soon__art{background:url(/static/media/lake-small.e526dd364b1df774a204.jpg) center 60%/cover;height:clamp(170px,30vw,260px);position:relative}.coming-soon__art:after{background:linear-gradient(180deg,#fffdf700 45%,#fffdf7f5);content:"";inset:0;position:absolute}.coming-soon__sign{align-items:center;animation:sign-sway 4s ease-in-out infinite;background:linear-gradient(180deg,#b07d50,#8e6340);border-radius:8px;bottom:26px;box-shadow:0 2px 0 #6c4a2f,0 10px 22px #3c2c1a4d;color:#fff8ec;display:inline-flex;font-family:var(--font-display);font-size:1.05rem;font-weight:600;gap:.5rem;left:50%;letter-spacing:.01em;padding:.55rem 1rem;position:absolute;transform:translateX(-50%) rotate(-2deg);white-space:nowrap;z-index:1}@keyframes sign-sway{0%,to{transform:translateX(-50%) rotate(-2deg)}50%{transform:translateX(-50%) rotate(1.5deg)}}.coming-soon__body{align-items:center;display:flex;flex-direction:column;padding:.5rem clamp(18px,4vw,40px) clamp(22px,4vw,36px);text-align:center}.coming-soon__body h1{margin-top:.35rem}.coming-soon__body p{color:var(--ink-soft);font-weight:600;margin-top:.6rem;max-width:520px}.coming-soon__list{display:flex;flex-direction:column;gap:.5rem;list-style:none;margin:1.25rem 0 0;padding:0;text-align:left}.coming-soon__list li{align-items:center;background:var(--leaf-tint);border:1px solid #5c8b4a2e;border-radius:12px;display:flex;font-size:.92rem;font-weight:700;gap:.6rem;padding:.55rem .85rem}.coming-soon__list svg{color:var(--leaf);flex-shrink:0;height:20px;width:20px}.coming-soon .row{justify-content:center}.leaderboard-filters{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:clamp(16px,2.4vw,28px);padding:.75rem}.podium{grid-gap:clamp(8px,2vw,20px);align-items:end;display:grid;gap:clamp(8px,2vw,20px);grid-template-columns:repeat(3,minmax(0,1fr));margin:0 auto clamp(16px,2.4vw,28px);max-width:640px}.podium__spot{align-items:center;background:none;border:0;cursor:pointer;display:flex;flex-direction:column;gap:.25rem;min-width:0;padding:0;position:relative}.podium__spot .avatar{border:3px solid var(--card-solid);box-shadow:var(--shadow);transition:transform .2s ease}.podium__spot:hover .avatar{transform:translateY(-3px)}.podium__crown{color:var(--sun);filter:drop-shadow(0 2px 2px rgba(138,100,19,.3));height:30px;margin-bottom:-4px;width:30px}.podium__name{font-weight:800;max-width:100%;overflow:hidden;padding:0 .25rem;text-overflow:ellipsis;white-space:nowrap}.podium__elo{font-feature-settings:"tnum";color:var(--ink-soft);font-family:var(--font-display);font-size:1.1rem;font-variant-numeric:tabular-nums;font-weight:700}.podium__block{border-radius:14px 14px 6px 6px;box-shadow:inset 0 1px 0 #ffffff59,var(--shadow);color:#fffffff2;display:flex;font-family:var(--font-display);font-size:1.6rem;font-weight:700;justify-content:center;margin-top:.35rem;padding-top:.6rem;text-shadow:0 1px 2px #0003;width:100%}.podium__spot--1 .podium__block{background:linear-gradient(180deg,#f3cd76,#d9a441);height:120px}.podium__spot--2 .podium__block{background:linear-gradient(180deg,#b7c9ad,#8fa684);height:88px}.podium__spot--3 .podium__block{background:linear-gradient(180deg,#d1a37a,#a97a52);height:66px}.podium__spot.is-me .podium__name{color:var(--leaf-dark)}.podium__spot--empty{visibility:hidden}.leaderboard-list{overflow:hidden}.leaderboard-row{grid-gap:.8rem;align-items:center;background:#0000;border:0;border-top:1px solid var(--line);cursor:pointer;display:grid;gap:.8rem;grid-template-columns:3rem auto minmax(0,1fr) auto;padding:.6rem 1.1rem;text-align:left;transition:background .15s ease;width:100%}.leaderboard-row:first-child{border-top:0}.leaderboard-row:hover{background:var(--leaf-tint)}.leaderboard-row.is-me{background:var(--sun-soft)}.leaderboard-row__rank{font-feature-settings:"tnum";color:var(--muted);font-variant-numeric:tabular-nums;font-weight:800;text-align:center}.leaderboard-row__name{font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.leaderboard-row__elo{font-feature-settings:"tnum";font-family:var(--font-display);font-size:1.1rem;font-variant-numeric:tabular-nums;font-weight:700}.pagination{align-items:center;display:flex;gap:1rem;justify-content:center;margin-top:1.25rem}@media (max-width:560px){.podium__block{font-size:1.25rem}.podium__spot--1 .podium__block{height:92px}.podium__spot--2 .podium__block{height:68px}.podium__spot--3 .podium__block{height:50px}.leaderboard-row{gap:.6rem;grid-template-columns:2.2rem auto minmax(0,1fr) auto;padding:.55rem .8rem}}
/*# sourceMappingURL=main.80568dbf.css.map*/