:root{color:#222;font-synthesis:none;text-rendering:optimizelegibility;background:#fff;font-family:Inter,Hiragino Sans,Yu Gothic UI,sans-serif}*{box-sizing:border-box}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}html,body,#root{width:100%;min-height:100%;margin:0;padding:0}body{background:#fff;min-width:320px}button,input,textarea{font:inherit}button{appearance:none}.app{background:linear-gradient(#f2fff7 0%,#f6f7fb 18%);width:100%;min-height:100dvh}.file-screen{flex-direction:column;justify-content:flex-start;align-items:center;width:100%;min-height:100dvh;padding:0 10px 10px;display:flex}.file-screen-no-header{min-height:100dvh}.screen-copyright{color:#8a8f99;text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;width:min(920px,100%);margin-top:14px;font-size:12px;line-height:1.6;display:flex}.screen-copyright-controls{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:inline-flex}.login-screen{background:linear-gradient(#f2fff7 0%,#f6f7fb 18%);flex-direction:column;justify-content:flex-start;align-items:center;min-height:100dvh;padding:0;display:flex;position:relative}.login-panel{text-align:left;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe0;border:1px solid #ececf3;border-radius:28px;width:min(920px,100%);padding:28px;box-shadow:0 18px 40px #20232a14}.login-panel h1,.home-title-block h1{color:#33413b;letter-spacing:0;margin:0;font-size:clamp(1.5rem,3vw,2.4rem);font-weight:900;line-height:1}.login-panel .home-kicker{color:#35b56a;text-shadow:none;margin-bottom:8px;font-size:24px;line-height:.98}.login-copy{color:#33413b;margin:18px 0 24px;font-weight:400;line-height:1.7}.file-screen-title{color:#2a2a2a;text-align:center;margin:0 0 20px;font-size:28px;font-weight:700;line-height:1.2}.login-panel .file-screen-title{color:#2a2a2a;margin:0 0 6px;font-size:28px;font-weight:700;line-height:1.2}.file-screen-description{color:#777;margin:0;font-size:14px}.file-screen-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.auth-screen-card{justify-content:center;align-items:center;min-height:420px;display:flex}.auth-screen-content{text-align:left;width:min(420px,100%)}.auth-screen-description{margin-bottom:24px}.auth-login-button{justify-content:center;margin:0 auto;display:flex}.auth-screen-error{color:#d14b4b;margin:0;font-size:14px;line-height:1.6}.auth-screen-info{color:#666;margin:16px 0 0;font-size:14px;line-height:1.6}.auth-guide-screen{gap:22px}.file-screen-card.auth-hero-card{align-items:stretch;width:min(1120px,100%);min-height:0}.auth-guide-hero{flex-direction:column;gap:28px;width:100%;display:flex}.auth-guide-hero-body{grid-template-columns:minmax(320px,.8fr) minmax(0,1.2fr);align-items:center;gap:34px;display:grid}.auth-guide-intro{text-align:left}.auth-guide-eyebrow{color:#198b4a;margin:0 0 12px;font-size:13px;font-weight:800;line-height:1.5}.auth-guide-title{color:#24272d;margin:0;font-size:34px;font-weight:800;line-height:1.28}.auth-guide-lead{color:#50545d;margin:18px 0 0;font-size:15px;line-height:2}.auth-guide-points{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:22px;display:grid}.auth-guide-point{color:#3f434b;background:#fff;border:1px solid #e7e9ef;border-radius:8px;padding:16px;font-size:14px;font-weight:700;line-height:1.75}.auth-hero-card .auth-screen-content{background:#fff;border:1px solid #ececf3;border-radius:8px;order:-1;width:100%;padding:22px;box-shadow:0 12px 28px #20232a12}.auth-guide-showcase{background:#fff;border:1px solid #dfe3ec;border-radius:8px;margin:0;overflow:hidden;box-shadow:0 18px 42px #20232a1f}.auth-guide-image-button{cursor:zoom-in;background:0 0;border:0;width:100%;margin:0;padding:0;display:block}.auth-guide-image-button:focus-visible{outline-offset:-3px;outline:3px solid #35b56a73}.auth-guide-showcase img{object-fit:contain;object-position:top center;background:#f8f9fc;border-bottom:1px solid #eef0f5;width:100%;display:block}.auth-guide-showcase figcaption{color:#50545d;justify-content:space-between;align-items:flex-start;gap:22px;padding:18px 22px;font-size:14px;line-height:1.75;display:flex}.auth-guide-showcase strong{color:#24272d;flex:none;font-size:18px;line-height:1.5}.auth-guide-showcase span{max-width:720px}.auth-guide-article{flex-direction:column;gap:18px;width:min(920px,100%);display:flex}.auth-guide-section{background:#ffffffeb;border:1px solid #ececf3;border-radius:8px;padding:28px}.auth-guide-section h2{color:#24272d;margin:0 0 12px;font-size:22px;line-height:1.4}.auth-guide-section p{color:#50545d;text-align:left;margin:0;font-size:15px;line-height:2}.auth-guide-overview{grid-template-columns:minmax(0,1fr) minmax(260px,.7fr);gap:28px;display:grid}.auth-guide-list,.auth-guide-steps{color:#50545d;text-align:left;margin:0;font-size:15px;line-height:1.9}.auth-guide-list{padding-left:20px}.auth-guide-steps{counter-reset:auth-guide-step;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0;list-style:none;display:grid}.auth-guide-steps li{counter-increment:auth-guide-step;background:#fff;border:1px solid #e7e9ef;border-radius:8px;padding:18px 18px 18px 52px;position:relative}.auth-guide-steps li:before{content:counter(auth-guide-step);color:#fff;background:#35b56a;border-radius:999px;place-items:center;width:24px;height:24px;font-size:13px;font-weight:800;display:grid;position:absolute;top:18px;left:18px}.auth-guide-screen-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.auth-guide-screen-card{background:#fff;border:1px solid #e7e9ef;border-radius:8px;margin:0;overflow:hidden}.auth-guide-screen-card .auth-guide-image-button{border-bottom:1px solid #eef0f5}.auth-guide-screen-card img{object-fit:contain;object-position:top center;background:#f8f9fc;width:100%;display:block}.auth-guide-screen-card figcaption{color:#50545d;flex-direction:column;gap:8px;padding:16px;font-size:14px;line-height:1.75;display:flex}.auth-guide-screen-card strong{color:#24272d;font-size:16px}.auth-guide-privacy{background:#f2fff7;border-color:#d8f3e3;flex-direction:column;align-items:flex-start;gap:16px;display:flex}.auth-guide-privacy h2,.auth-guide-privacy p{margin-bottom:0}.auth-guide-privacy-link{color:#198b4a;cursor:pointer;background:#fff;border:1px solid #9ee4b9;border-radius:999px;justify-content:center;align-items:center;min-height:44px;padding:10px 16px;font-size:14px;font-weight:800;text-decoration:none;transition:background .15s,border-color .15s,color .15s,transform .15s;display:inline-flex}.auth-guide-privacy-link:hover{color:#106b39;background:#f2fff7;border-color:#35b56a;transform:translateY(-1px)}.auth-guide-preview-backdrop{z-index:1000;background:#16181dc7;place-items:center;padding:8px;display:grid;position:fixed;inset:0}.auth-guide-preview{background:#fff;border-radius:8px;flex-direction:column;width:min(1600px,100%);max-height:calc(100vh - 16px);margin:0;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 70px #00000057}.auth-guide-preview img{object-fit:contain;background:#f8f9fc;width:100%;max-height:calc(100vh - 104px);display:block}.auth-guide-preview figcaption{color:#50545d;justify-content:space-between;align-items:flex-start;gap:18px;padding:10px 16px;font-size:13px;line-height:1.55;display:flex}.auth-guide-preview strong{color:#24272d;flex:none;font-size:15px;line-height:1.5}.auth-guide-preview span{max-width:760px}.auth-guide-preview-close{z-index:1;color:#3f434b;cursor:pointer;background:#ffffffeb;border:1px solid #dfe3ece6;border-radius:999px;min-width:72px;min-height:40px;padding:8px 14px;font-size:13px;font-weight:800;position:absolute;top:12px;right:12px;box-shadow:0 8px 20px #20232a2e}.auth-guide-preview-close:hover{color:#106b39;background:#f2fff7;border-color:#9ee4b9}.registration-panel{min-height:0}.registration-content{width:min(520px,100%)}.registration-summary{margin:0 0 20px}.registration-form{margin-bottom:18px}.profile-nickname-controls.registration-nickname-controls{grid-template-columns:none;display:block}.registration-consent{color:#33413b;background:#f2fff7;border:1px solid #35b56a38;border-radius:8px;align-items:flex-start;gap:12px;margin:0 0 16px;padding:14px 16px;font-size:.94rem;line-height:1.7;display:flex}.registration-consent input{accent-color:#35b56a;flex-shrink:0;width:18px;height:18px;margin-top:3px}.inline-legal-button{color:#1f8d51;cursor:pointer;background:0 0;border:0;padding:0 2px;font-weight:900;text-decoration:underline}.registration-actions{gap:10px;margin-top:18px;display:grid}.registration-submit-button{color:#fff;cursor:pointer;background:#35b56a;border:2px solid #ffffffc7;border-radius:8px;min-height:54px;font-weight:900;transition:filter .16s}.registration-submit-button:hover{filter:brightness(1.04)}.registration-cancel-button{color:#33413b;cursor:pointer;background:#fff;border:2px solid #233f3a1f;border-radius:8px;min-height:54px;font-weight:900;transition:border-color .16s,filter .16s}.registration-cancel-button:hover{filter:brightness(1.01);border-color:#35b56a57}.registration-submit-button:disabled,.registration-cancel-button:disabled{cursor:wait;filter:none;opacity:.65}.legal-screen-card{flex-direction:column;gap:22px;display:flex}.legal-screen-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.legal-screen-header>div{text-align:left;min-width:0}.legal-updated-at{color:#35b56a;margin:0 0 8px;font-size:13px;font-weight:800;line-height:1.5}.legal-intro,.legal-section-body{color:#4f5f59;margin:0;font-size:14px;line-height:1.9}.legal-sections{flex-direction:column;gap:16px;display:flex}.legal-section{background:#fff;border:1px solid #ececf3;border-radius:8px;padding:18px 20px}.legal-section-title{color:#17201a;margin:0 0 8px;font-size:18px;line-height:1.45}.google-login-slot{border-radius:8px;place-items:center;width:min(100%,320px);min-height:52px;margin:0 auto;display:grid}.test-login-button{color:#555;cursor:pointer;background:#fff;border:1px solid #ececf3;border-radius:14px;margin:14px auto 0;padding:12px 18px;font-weight:700;transition:background .15s,transform .15s;display:block}.test-login-button:hover{background:#f6f8f7;transform:translateY(-1px)}.test-login-button:focus-visible{outline-offset:4px;outline:3px solid #35b56a47}.google-login-message{text-align:left;background:0 0;border:0;border-radius:0;width:100%;padding:0;font-weight:400;display:block}.home-screen,.profile-screen{color:#222;background:linear-gradient(#f2fff7 0%,#f6f7fb 18%);flex-direction:column;justify-content:flex-start;align-items:center;min-height:100dvh;padding:0;display:flex;position:relative}.home-screen-title{z-index:1;color:#35b56a;letter-spacing:0;margin:0;font-size:24px;font-weight:900;line-height:.98;position:absolute;top:24px;left:24px}.app-logo-row{justify-content:space-between;align-items:center;gap:10px;width:100%;padding:10px 20px;display:flex}.app-logo{color:#35b56a;white-space:nowrap;align-items:center;min-height:46px;margin:0;font-size:24px;font-weight:800;line-height:1;text-decoration:none;display:flex}.app-header-links{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;min-width:0;margin-left:auto;display:flex}.app-header-break{display:none}.language-switcher{background:#ffffffe0;border:1px solid #ececf3;border-radius:999px;align-items:center;gap:4px;padding:4px;display:inline-flex}.language-switcher-button{color:#666;cursor:pointer;background:0 0;border:0;border-radius:999px;min-width:42px;padding:7px 10px;font-size:13px;font-weight:800;line-height:1}.language-switcher-button.active{color:#fff;background:#35b56a}.language-switcher-button:focus-visible,.sound-switcher-button:focus-visible{outline-offset:2px;outline:3px solid #35b56a47}.sound-switcher{background:#ffffffe0;border:1px solid #ececf3;border-radius:999px;align-items:center;gap:4px;padding:4px;display:inline-flex}.sound-switcher-label{color:#666;padding:0 7px 0 8px;font-size:13px;font-weight:800;line-height:1}.sound-switcher-separator{background:#dddddf;width:1px;height:18px;margin-right:2px}.sound-switcher-button{color:#666;cursor:pointer;background:0 0;border:0;border-radius:999px;min-width:42px;padding:7px 10px;font-size:13px;font-weight:800;line-height:1}.sound-switcher-button.active{color:#fff;background:#35b56a}.app-header-link,.legal-home-link{color:#666;cursor:pointer;overflow-wrap:anywhere;background:#ffffffe0;border:1px solid #ececf3;border-radius:999px;max-width:100%;padding:10px 14px;font-size:14px;font-weight:700;line-height:1.25;text-decoration:none;transition:background .15s,border-color .15s,color .15s,transform .15s}.app-header-link:hover,.legal-home-link:hover{color:#198b4a;background:#f2fff7;border-color:#9ee4b9;transform:translateY(-1px)}.file-screen-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe0;border:1px solid #ececf3;border-radius:28px;width:min(920px,100%);padding:28px;box-shadow:0 18px 40px #20232a14}.home-hero{align-content:start;gap:0;display:grid}.home-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;display:flex}.home-title-block .home-kicker{text-shadow:0 4px #ffffff80;margin-bottom:8px;font-size:clamp(3.2rem,9vw,6.6rem);line-height:.98}.home-kicker{color:#b6543c;margin:0 0 12px;font-size:1rem;font-weight:900}.home-lobby{grid-template-columns:minmax(260px,460px) auto;justify-content:space-between;align-items:start;gap:clamp(22px,6vw,70px);min-height:0;display:grid}.home-tabs{background:#f6f7fb;border-radius:18px;gap:10px;margin-bottom:20px;padding:6px;display:flex}.home-tab-button{color:#666;cursor:pointer;background:0 0;border:none;border-radius:14px;flex:1;padding:12px 16px;font-weight:700;transition:background .15s,color .15s,transform .15s;position:relative}.home-tab-label{display:inline-block}.home-tab-label-short{display:none}.home-tab-badge{background:#35b56a;border-radius:999px;width:10px;height:10px;position:absolute;top:9px;right:12px;box-shadow:0 0 0 3px #f6f7fb}.home-tab-button:hover{color:#333;background:#ffffffbf}.home-tab-button.active{color:#35b56a;background:#fff;box-shadow:0 8px 18px #20232a14}.home-tab-button.active .home-tab-badge{box-shadow:0 0 0 3px #fff}.resume-match-button{color:#198b4a;cursor:pointer;text-align:left;background:#f2fff7;border:1px solid #9ee4b9;border-radius:14px;width:100%;margin:0;padding:14px 18px;transition:background .15s,border-color .15s,transform .15s;box-shadow:0 10px 22px #35b56a1f}.resume-match-button:hover{background:#e5faee;border-color:#35b56a;transform:translateY(-1px)}.resume-match-label,.resume-match-note{display:block}.resume-match-label{font-size:16px;font-weight:800;line-height:1.35}.resume-match-note{color:#4f7d62;margin-top:5px;font-size:13px;font-weight:700;line-height:1.5}.home-menu{gap:12px;width:100%;display:grid}.affiliate-banner{justify-content:center;max-width:100%;display:flex;overflow:hidden}.affiliate-banner a{max-width:100%;display:inline-flex}.affiliate-banner img{max-width:100%;height:auto}.affiliate-banner-banner{margin-top:18px}.friends-section .affiliate-banner-banner,.profile-tab-card .affiliate-banner-banner{margin-top:20px}.affiliate-banner-small{background:#fff;padding:12px}.player-count-selector{gap:12px;width:100%;display:grid}.player-count-button{color:#fff;cursor:pointer;text-align:center;background:#35b56a;border:none;border-radius:14px;width:100%;padding:14px 18px;font-weight:700;transition:background .15s,transform .1s}.player-count-button:hover{background:#2ea05d;transform:translateY(-1px)}.player-count-card{flex-direction:column;min-height:360px;display:flex}.player-count-card .matchmaking-back-button{align-self:center;margin-top:12px}.home-menu-button,.home-secondary-button{color:#fff;box-shadow:none;cursor:pointer;text-align:left;background:#35b56a;border:none;border-radius:14px;padding:14px 18px;font-weight:700;transition:background .15s,transform .1s}.home-menu-button:hover,.home-secondary-button:hover{background:#2ea05d;transform:translateY(-1px)}.home-menu-button-random{background:#e97832}.home-menu-button-random:hover{background:#d46524}.home-menu-button-friends,.home-menu-button-invite{background:#35b56a}.home-menu-button-friends:hover,.home-menu-button-invite:hover{background:#2ea05d}.home-menu-button-ai{color:#33413b;background:#fff;border:1px solid #dfe3ea}.home-menu-button-ai .home-menu-note{color:#66716c}.home-menu-button-ai:hover{background:#f6f8f7}.home-menu-button:focus-visible,.home-secondary-button:focus-visible{outline-offset:4px;outline:3px solid #35b56a47}.home-menu-label,.home-menu-button span{display:block}.home-menu-label{font-size:16px;font-weight:700;line-height:1.35}.home-menu-note{color:#ffffffc7;margin-top:6px;font-size:14px;font-weight:600;line-height:1.6}.matchmaking-card{text-align:center;align-content:center;place-items:center;gap:22px;min-height:360px;display:grid}.matchmaking-spinner{border:8px solid #dff6e8;border-top-color:#35b56a;border-radius:50%;width:76px;height:76px;animation:.85s linear infinite matchmaking-spin}.matchmaking-title{color:#33413b;margin:0;font-size:clamp(1.35rem,3vw,2rem);font-weight:800;line-height:1.35}.matchmaking-rating{color:#4f5f59;gap:5px;font-weight:800;line-height:1.25;display:grid}.matchmaking-rating span{font-size:.9rem}.matchmaking-rating strong{color:#33413b;font-size:1.7rem;line-height:1}.matchmaking-back-button{color:#59645f;cursor:pointer;background:#eef0f4;border:none;border-radius:12px;padding:10px 18px;font-weight:700;line-height:normal;transition:transform .15s,background .15s}.matchmaking-back-button:hover{background:#e3e6ec;transform:translateY(-1px)}.invite-waiting-card{text-align:center;align-content:center;justify-items:center;gap:22px;min-height:360px;display:grid}.invite-waiting-main{justify-items:center;gap:14px;width:min(620px,100%);display:grid}.invite-waiting-description{color:#59645f;margin:0 0 8px;font-size:14px;font-weight:700;line-height:1.6}.invite-url-row{justify-items:center;gap:10px;width:100%;display:grid}.invite-url-input{color:#33413b;text-align:center;background:#f8f9fc;border:1px solid #dfe3ea;border-radius:14px;outline:none;width:100%;padding:13px 15px;font-weight:700}.invite-url-input:focus{border-color:#9ee4b9;box-shadow:0 0 0 4px #35b56a1f}.invite-url-copy-button{color:#fff;cursor:pointer;background:#35b56a;border:none;border-radius:12px;width:50%;min-width:120px;padding:10px 16px;font-weight:700;line-height:normal;transition:transform .15s,background .15s}.invite-url-copy-button:hover{background:#2ea05d;transform:translateY(-1px)}.home-side-actions{align-self:end;gap:14px;display:grid}.home-icon-button{color:#fff;width:82px;height:82px;box-shadow:none;cursor:pointer;background:#b6543c;border:2px solid #ffffffc7;border-radius:50%;place-items:center;font-size:2rem;font-weight:900;line-height:1;transition:filter .16s,transform .16s;display:grid;position:relative}.home-icon-button:hover{filter:brightness(1.05)}.home-icon-button:focus-visible{outline-offset:4px;outline:3px solid #35b56a47}.home-icon-button svg{fill:currentColor;width:42px;height:42px}.home-icon-button[data-tooltip]:after,.rule-help-button[data-tooltip]:after{z-index:3;color:#fff;content:attr(data-tooltip);opacity:0;pointer-events:none;background:#17201aeb;border-radius:8px;min-width:max-content;padding:7px 10px;font-size:.82rem;font-weight:900;line-height:1;transition:opacity .14s,transform .14s;position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%,4px)}.home-icon-button[data-tooltip]:hover:after,.home-icon-button[data-tooltip]:focus-visible:after,.rule-help-button[data-tooltip]:hover:after,.rule-help-button[data-tooltip]:focus-visible:after{opacity:1;transform:translate(-50%)}.profile-panel{background:#fff;border-radius:8px;width:min(100%,680px);padding:32px;box-shadow:0 18px 46px #233f3a1f}.profile-heading-row{align-items:center;gap:12px;margin:0 0 28px;display:flex}.profile-heading-row h1{color:#33413b;letter-spacing:0;margin:0;font-size:clamp(1.5rem,3vw,2.4rem);font-weight:900;line-height:1}.profile-back-button{color:#fff;cursor:pointer;background:#59645f;border:2px solid #ffffffc7;border-radius:8px;flex:none;place-items:center;width:48px;height:48px;padding:10px;font-size:1.15rem;font-weight:900;line-height:1;display:grid}.profile-back-button svg{fill:currentColor;width:24px;height:24px}.profile-back-button:hover{filter:brightness(1.04)}.profile-back-button:focus-visible{outline-offset:4px;outline:3px solid #35b56a47}.profile-title-block{margin-bottom:28px}.profile-title-block h1{margin-top:0}.profile-title-block .home-kicker{margin-bottom:0}.profile-account-card{background:#fff;border:2px solid #233f3a1a;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;margin-bottom:16px;padding:18px;display:grid}.profile-account-main{align-items:center;gap:16px;min-width:0;display:flex}.profile-avatar{object-fit:cover;border-radius:50%;flex:none;width:64px;height:64px;display:block}.profile-avatar-placeholder{color:#fff;background:#35b56a;place-items:center;font-size:1.8rem;font-weight:900;display:grid}.profile-account-text{min-width:0}.profile-account-text h1{overflow-wrap:anywhere;margin:0 0 6px;font-size:2rem;line-height:1.1}.profile-account-text p{color:#4f5f59;overflow-wrap:anywhere;margin:0;font-weight:700}.profile-logout-button{color:#fff;min-height:54px;box-shadow:none;cursor:pointer;background:#b6543c;border:2px solid #ffffffc7;border-radius:8px;padding:0 18px;font-weight:900;transition:filter .16s}.profile-logout-button:hover{filter:brightness(1.04)}.profile-nickname-form{gap:10px;margin-bottom:16px;padding:0;display:grid}.profile-nickname-form label{color:#17201a;font-size:1rem;font-weight:900}.profile-nickname-controls{grid-template-columns:minmax(0,1fr) 104px;gap:12px;display:grid}.profile-nickname-controls input{color:#17201a;background:#fff;border:2px solid #233f3a2e;border-radius:8px;outline:none;width:100%;min-height:54px;padding:0 14px}.profile-nickname-controls input:focus{border-color:#35b56a;box-shadow:0 0 0 4px #35b56a26}.profile-nickname-controls button{color:#fff;min-height:54px;box-shadow:none;cursor:pointer;background:#35b56a;border:2px solid #ffffffc7;border-radius:8px;font-weight:900;transition:filter .16s}.profile-nickname-controls button:hover{filter:brightness(1.04)}.profile-nickname-form p{color:#4f5f59;text-align:center;margin:0;font-size:.94rem;line-height:1.6}.profile-tab-card{background:#fff;border:1px solid #ececf3;border-radius:24px;padding:24px;box-shadow:0 12px 28px #20232a0f}.profile-summary{align-items:center;gap:16px;margin-bottom:24px;display:flex}.profile-avatar-fallback{color:#fff;background:#35b56a;justify-content:center;align-items:center;font-size:24px;font-weight:800;display:flex}.profile-summary-main{flex:1;min-width:0}.profile-name{color:#2f2f2f;margin-bottom:4px;font-size:18px;font-weight:700}.profile-email{color:#777;word-break:break-word;font-size:14px}.profile-form{flex-direction:column;gap:10px;display:flex}.profile-rating-block{color:#444;text-align:left;align-self:stretch;gap:6px;margin-bottom:4px;display:grid}.profile-rating-block span{font-size:14px;font-weight:700}.profile-rating-block strong{color:#222;text-align:center;font-size:22px;font-weight:800;line-height:1.1}.profile-danger-zone{border-top:1px solid #ececf3;margin-top:28px;padding-top:20px}.profile-label{color:#444;text-align:left;align-self:flex-start;font-size:14px;font-weight:700;display:block}.profile-form-row{align-items:center;gap:10px;display:flex}.profile-help{color:#777;text-align:center;margin:0;font-size:13px;line-height:1.6}.profile-input{color:#222;background:#fff;border:1px solid #ececf3;border-radius:14px;outline:none;flex:1;min-width:0;padding:12px 14px}.profile-input:focus{border-color:#9ee4b9;box-shadow:0 0 0 4px #35b56a1f}.profile-logout-button,.profile-update-button{min-height:auto;box-shadow:none;cursor:pointer;border:none;border-radius:14px;padding:12px 16px;font-weight:700;line-height:normal;transition:transform .15s,background .15s}.profile-update-button{color:#fff;white-space:nowrap;background:#35b56a}.profile-logout-button{color:#fff;background:#ff5f4d}.profile-logout-button:hover{filter:none;background:#ef4e3c;transform:translateY(-1px)}.profile-update-button:hover{filter:none;background:#2ea05d;transform:translateY(-1px)}.profile-delete-account-button{color:#c63f35;cursor:pointer;background:#fff1f0;border:none;border-radius:14px;width:100%;padding:13px 16px;font-weight:700;transition:background .15s,transform .15s}.profile-delete-account-button:hover{filter:none;background:#ffe4e1;transform:translateY(-1px)}.profile-delete-account-button:disabled,.profile-update-button:disabled,.auth-test-button:disabled{cursor:wait;opacity:.65;transform:none}.nickname-setup-summary{text-align:left;background:#f8f9fc;border:1px solid #ececf3;border-radius:20px;margin-bottom:20px;padding:16px 18px}.friends-section{background:#fff;border:1px solid #ececf3;border-radius:24px;padding:20px 22px;box-shadow:0 12px 28px #20232a0f}.friends-tab-card{flex-direction:column;gap:18px;display:flex}.friend-rooms-card{gap:0;display:grid}.friend-rooms-header{align-items:center}.friend-rooms-actions{align-items:center;gap:10px;display:flex}.friend-room-list{flex-direction:column;gap:12px;display:flex}.friend-room-item{background:#f8f9fc;border:1px solid #eef0f7;border-radius:18px;justify-content:space-between;align-items:center;gap:16px;padding:16px 18px;display:flex}.friend-room-main{flex:1;min-width:0}.friend-room-name{color:#2d2d2d;word-break:break-word;min-width:0;font-size:16px;font-weight:800}.friend-room-status{color:#777;margin-top:5px;font-size:13px}.friend-room-meta{color:#59645f;white-space:nowrap;flex:none;font-size:14px;font-weight:800}.friend-room-enter-button,.friend-room-create-button,.friend-rooms-back-button{cursor:pointer;border:none;border-radius:12px;padding:10px 14px;font-weight:700;line-height:normal;transition:transform .15s,background .15s}.friend-room-enter-button,.friend-room-create-button{color:#fff;background:#35b56a}.friend-room-enter-button:hover,.friend-room-create-button:hover{background:#2ea05d;transform:translateY(-1px)}.friend-rooms-back-button{color:#59645f;background:#eef0f4}.friend-rooms-back-button:hover{background:#e3e6ec;transform:translateY(-1px)}.friends-section-title{color:#2f2f2f;margin:0 0 14px;font-size:18px;font-weight:800}.friends-user-list{flex-direction:column;gap:12px;display:flex}.friends-user-item{background:#f8f9fc;border:1px solid #eef0f7;border-radius:18px;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.friends-user-main{flex:1;min-width:0}.friends-user-name{color:#2d2d2d;word-break:break-word;min-width:0;font-size:15px;font-weight:700}.friends-user-status{color:#777;margin-top:4px;font-size:13px}.friends-empty-text{color:#777;margin:0;font-size:14px;line-height:1.6}.friends-user-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.friends-action-button{color:#fff;cursor:pointer;background:#35b56a;border:none;border-radius:14px;padding:12px 16px;font-weight:700;line-height:normal;transition:transform .15s,background .15s}.friends-action-button:hover{filter:none;background:#2ea05d;transform:translateY(-1px)}.friends-action-button.approve{background:#35b56a}.friends-action-button.approve:hover{filter:none;background:#2ea05d}.friends-action-button.danger{background:#ff5f4d}.friends-action-button.danger:hover{filter:none;background:#ef4e3c}.home-secondary-button{color:#fff;text-align:center;background:#59645f;width:100%}.app-shell{background:linear-gradient(90deg,#1f494014,#0000 34%),#fff;grid-template-columns:minmax(240px,330px) minmax(0,1fr);height:100dvh;display:grid;overflow:hidden}.history-column{flex-direction:column;min-height:0;display:flex;overflow:hidden}.history-panel{color:#fff;background:#35b56a;flex-direction:column;flex:1;min-height:0;padding:28px 22px;display:flex;overflow:hidden}.panel-heading{justify-content:space-between;align-items:center;gap:14px;display:flex}.eyebrow{color:#fff;opacity:1;margin:0 0 5px;font-size:1.18rem;font-weight:700}.word-history{flex-direction:column;flex:1;gap:10px;min-height:0;margin:24px 0 0;padding:0;list-style:none;display:flex;overflow:auto}.history-item,.empty-history{border:1px solid #ffffff29;border-radius:8px;padding:13px 14px}.history-item{background:#ffffff14}.history-word-button{cursor:pointer;width:100%;color:inherit;font:inherit;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;padding:0;display:flex}.history-word-button:hover strong,.history-word-button:focus-visible strong{text-underline-offset:.18em;text-decoration:underline}.history-word-button:focus-visible{outline-offset:4px;outline:2px solid #ffffffeb}.history-item.self{background:#ffffff38;border-color:#ffffff8c}.history-item.opponent{border-color:#ffffff29}.history-item span{color:#ffffffb3;min-width:38px;font-size:.82rem}.history-item strong{overflow-wrap:anywhere;font-size:1.18rem}.history-bet-label{color:#ffffffc2;vertical-align:.18em;margin-right:.25rem;font-size:.62em;font-weight:700;line-height:1;display:inline-block}.empty-history{color:#ffffffb8}.battle-panel{background:radial-gradient(circle at 22% 22%,#35b56a1f,#0000 32%),#fff;grid-template-rows:minmax(0,1fr) auto auto;height:100dvh;min-height:0;padding:clamp(14px,3vw,28px);display:grid;overflow:hidden}.battle-arena{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(14px,2.4vw,24px);min-height:0;display:grid}.word-stage{background:#fff;border:1px solid #ececf3;border-radius:24px;grid-template-rows:auto minmax(0,1fr) auto;min-height:0;padding:clamp(16px,3vw,28px);transition:background-color .16s,filter .16s,opacity .16s;display:grid;position:relative;box-shadow:0 12px 30px #20232a14;container-type:inline-size}.opponent-stage{border-top:8px solid #d62929}.self-stage{border-top:8px solid #35b56a}.stage-heading{align-items:center;gap:12px;min-width:0;display:flex}.stage-heading span{color:#33413b;white-space:nowrap;background:#fff;border:1px solid #233f3a2e;border-radius:999px;padding:5px 11px;font-size:.9rem;font-weight:900}.stage-heading strong{overflow-wrap:anywhere;color:#33413b;min-width:0;font-size:1.18rem;font-weight:900}.stage-rating{color:#59645f;white-space:nowrap;flex:none;margin-left:auto;font-size:.9rem;font-weight:800}.stage-word{isolation:isolate;cursor:pointer;color:#17201a;letter-spacing:0;overflow-wrap:anywhere;text-align:center;background:0 0;border:0;border-radius:8px;place-items:center;min-width:0;padding:20px 0;font-size:clamp(4rem,10vw,10rem);font-weight:900;line-height:1.02;display:grid;position:relative;overflow:visible}.stage-word:focus-visible{outline-offset:6px;outline:3px solid #35b56ab3}div.stage-word{cursor:default}.battle-arena.player-count-3 .stage-word,.battle-arena.player-count-4 .stage-word{padding:12px 0;font-size:clamp(2.8rem,6.5vw,6.2rem)}.stage-word.is-latest{color:#17201a;text-shadow:0 0 12px #ffe15af2,0 0 28px #ffe15acc,0 0 54px #ffe15a9e,0 0 86px #ffe15a5c}.stage-word.is-latest:before,.stage-word.is-latest:after{pointer-events:none;content:"";position:absolute;top:50%;left:50%}.stage-word.is-latest:before{z-index:-1;aspect-ratio:1;opacity:0;background:radial-gradient(circle,#fff7b0f2 0 12%,#ffe15a94 30%,#ffe15a00 68%);border-radius:50%;width:min(58vw,460px);animation:.9s ease-out word-center-burst;transform:translate(-50%,-50%)scale(.2)}.battle-arena.player-count-3 .stage-word.is-latest:before,.battle-arena.player-count-4 .stage-word.is-latest:before{width:min(34vw,300px)}.stage-word.is-latest:after{z-index:1;opacity:0;background:#fff596f2;border-radius:50%;width:11px;height:11px;animation:.9s cubic-bezier(.18,.82,.25,1) word-star-burst;transform:translate(-50%,-50%)scale(.16)rotate(0);box-shadow:0 -148px 0 3px #ffe960f2,118px -88px 0 2px #fff296e6,146px 30px 0 3px #ffdf49e6,82px 132px 0 2px #fff296e0,-76px 136px 0 3px #ffe960e6,-148px 28px 0 2px #fff296e0,-120px -92px 0 3px #ffdf49e6,32px -118px 0 1px #fffabee6,128px 88px 0 1px #fffabedb,-132px 88px 0 1px #fffabedb}.stage-draft{color:#4f5f59;overflow-wrap:anywhere;text-align:center;justify-items:center;gap:8px;min-height:26px;font-size:.95rem;font-weight:800;line-height:1.4;display:grid}.stage-draft.is-away{color:#9e382f}.away-countdown{color:#6f2b26;font-size:.86rem;font-weight:800;line-height:1.35}.thinking-button{color:#8d322b;cursor:pointer;background:#fff;border:1px solid #9e382f47;border-radius:999px;justify-content:center;align-items:center;min-height:36px;padding:7px 14px;font-size:.88rem;font-weight:800;line-height:1.2;transition:background .15s,border-color .15s,transform .1s;display:inline-flex}.thinking-button:hover{background:#fff6f4;border-color:#9e382f80;transform:translateY(-1px)}.thinking-button:focus-visible{outline-offset:3px;outline:3px solid #9e382f38}.lane-heading{align-items:center;gap:14px;width:100%;display:flex}.lane-heading label{color:#4f5f59;font-size:1.18rem;font-weight:800}.lane-heading span{color:#33413b;background:#fff;border:1px solid #233f3a2e;border-radius:999px;padding:6px 13px;font-size:1.18rem;font-weight:800}.rule-help-button{color:#1b5b35;cursor:pointer;background:#fff;border:none;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;margin-left:auto;font-size:1.05rem;font-weight:700;line-height:1;transition:background .15s,transform .1s;display:grid;position:relative}.rule-help-button:hover{background:#f6f8f7;transform:translateY(-1px)}.rule-help-button:focus-visible{outline-offset:3px;outline:3px solid #35b56a47}.player-lane input{color:#17201a;background:#fff;border:2px solid #233f3a33;border-radius:8px;outline:none;width:100%;min-height:68px;padding:0 18px;font-size:1.6rem}.player-lane input:disabled{cursor:not-allowed}.player-lane input:focus{border-color:#35b56a;box-shadow:0 0 0 4px #35b56a26}.opponent-lane input{background:#fff}.opponent-lane input[readonly]{cursor:default}.player-lane.is-inactive input{color:#1818189e;background:#f2f2f2;border-color:#2222221f}.message-board{color:#fff;background:#35b56a;border-radius:8px;grid-template-columns:max-content minmax(0,1fr) auto;align-self:stretch;align-items:center;gap:14px;min-height:64px;margin-bottom:12px;padding:10px 12px;line-height:1.6;display:grid}.current-kanji{color:#fff;white-space:nowrap;background:#35b56a;border:1px solid #ffffffb8;border-radius:8px;align-self:center;align-items:center;padding:6px 12px;font-size:1.12rem;font-weight:800;line-height:1.2;display:flex}.message-text{overflow-wrap:anywhere;min-width:0;font-size:1rem;font-weight:700}.leave-button{color:#fff;cursor:pointer;background:#1b5b35;border:none;border-radius:14px;min-height:44px;padding:10px 18px;font-weight:700;line-height:normal;transition:background .15s,transform .1s}.leave-button:hover{background:#154628;transform:translateY(-1px)}.copyright{color:#17201a80;text-align:center;padding:28px 0 0;font-size:.78rem;font-weight:700;line-height:1.2}.copyright .screen-copyright{width:100%;margin-top:0}.self-controls{grid-template-columns:minmax(0,1fr) 104px 104px 104px 34px;align-items:center;gap:12px;display:grid}.control-rule-button{color:#4f5f59;background:#f2f2f2;width:32px;height:32px;margin-left:0}.input-dock{background:#fff;border:1px solid #ececf3;border-radius:24px;margin-top:clamp(14px,2.4vw,24px);padding:14px;box-shadow:0 12px 30px #20232a14}.input-dock input{color:#17201a;background:#fff;border:2px solid #233f3a33;border-radius:8px;outline:none;width:100%;min-height:68px;padding:0 18px;font-size:1.6rem}.input-dock input:focus{border-color:#35b56a;box-shadow:0 0 0 4px #35b56a26}.input-dock input:disabled{cursor:not-allowed;color:#1818189e;background:#f2f2f2;border-color:#2222221f}.result-banner{letter-spacing:0;overflow-wrap:anywhere;text-align:center;text-shadow:0 5px #ffffffdb;place-items:center;width:100%;min-width:0;min-height:clamp(96px,18vh,180px);font-size:clamp(3rem,30cqi,8rem);font-weight:900;line-height:1;display:grid}.result-banner.win{color:#d62929}.result-banner.lose{color:#1f5fbf}.result-banner.invalid{color:#7d828a}.send-button,.bet-button,.surrender-button{color:#fff;cursor:pointer;border:none;border-radius:14px;min-height:68px;padding:14px 16px;font-weight:700;line-height:normal;transition:background .15s,transform .1s}.send-button:disabled,.bet-button:disabled,.surrender-button:disabled{cursor:not-allowed;opacity:.52}.send-button:disabled:hover,.bet-button:disabled:hover,.surrender-button:disabled:hover{transform:none}.send-button{background:#35b56a}.bet-button{background:#d62929}.surrender-button{overflow-wrap:anywhere;background:#59645f;min-width:0}.send-button:hover,.bet-button:hover,.surrender-button:hover{transform:translateY(-1px)}.send-button:hover{background:#2ea05d}.bet-button:hover{background:#c82424}.surrender-button:hover{background:#4f5a55}.modal-backdrop{z-index:30;background:#17201a7a;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.bet-modal,.rule-modal{background:#fff;border:1px solid #233f3a29;border-radius:8px;width:min(92vw,430px);padding:24px;box-shadow:0 24px 50px #00000042}.bet-modal{max-height:calc(100vh - 48px);overflow:auto}.bet-modal-heading{align-items:center;gap:14px;margin-bottom:20px;display:flex}.bet-modal-heading h2{margin:0}.bet-rule-help-button{color:#4f5f59;background:#f2f2f2;width:32px;height:32px}.rule-modal{flex-direction:column;max-height:calc(100dvh - 48px);display:flex;overflow:hidden}.profile-status-modal{text-align:left;background:#fff;border:1px solid #233f3a29;border-radius:8px;justify-items:stretch;width:min(92vw,380px);padding:24px;display:grid;box-shadow:0 24px 50px #00000042}.profile-status-modal p{color:#59645f;margin:0;font-size:.95rem;font-weight:700;line-height:1.7}.exit-confirm-modal{width:min(92vw,420px)}.exit-confirm-content{background:#fff;border:1px solid #233f3a29;border-radius:8px;flex-direction:column;gap:20px;padding:28px;display:flex;box-shadow:0 24px 50px #00000042}.app-dialog-message{color:#33413b;white-space:pre-wrap;margin:0;font-size:.98rem;font-weight:700;line-height:1.7}.exit-confirm-checkbox{color:#33413b;align-items:center;gap:10px;font-size:.95rem;font-weight:700;line-height:1.6;display:flex}.exit-confirm-checkbox-list{flex-direction:column;gap:10px;display:flex}.exit-confirm-checkbox input{accent-color:#35b56a;flex:none;width:18px;height:18px}.exit-confirm-actions{justify-content:flex-end;gap:10px;display:flex}.exit-confirm-button{cursor:pointer;border:none;border-radius:14px;padding:12px 18px;font-weight:700;line-height:normal;transition:transform .15s,background .15s}.exit-confirm-button.secondary{color:#59645f;background:#eef0f4}.exit-confirm-button.secondary:hover{background:#e3e6ec;transform:translateY(-1px)}.exit-confirm-button.primary{color:#fff;background:#35b56a}.exit-confirm-button.primary:hover{background:#2ea05d;transform:translateY(-1px)}.exit-confirm-button:disabled{cursor:wait;opacity:.65;transform:none}.profile-confirm-title{color:#17201a;margin:0 0 10px;font-size:1.25rem;font-weight:900;line-height:1.35}.profile-confirm-actions{justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.profile-confirm-cancel-button,.profile-confirm-delete-button,.profile-confirm-approve-button{cursor:pointer;border:none;border-radius:14px;padding:12px 16px;font-weight:700;line-height:normal;transition:transform .15s,background .15s}.profile-confirm-cancel-button{color:#59645f;background:#eef0f4}.profile-confirm-delete-button{color:#fff;background:#ff5f4d}.profile-confirm-approve-button{color:#fff;background:#35b56a}.profile-confirm-cancel-button:hover,.profile-confirm-delete-button:hover,.profile-confirm-approve-button:hover{transform:translateY(-1px)}.profile-confirm-cancel-button:hover{background:#e3e6ec}.profile-confirm-delete-button:hover{background:#ef4e3c}.profile-confirm-approve-button:hover{background:#2ea05d}.profile-confirm-cancel-button:disabled,.profile-confirm-delete-button:disabled,.profile-confirm-approve-button:disabled{cursor:wait;opacity:.65;transform:none}.profile-status-ok-button{color:#fff;cursor:pointer;background:#35b56a;border:none;border-radius:14px;justify-self:end;width:auto;min-height:auto;margin-top:18px;padding:12px 16px;font-weight:700;line-height:normal;transition:transform .15s,background .15s}.profile-status-ok-button:hover{background:#2ea05d;transform:translateY(-1px)}.rule-modal-body{min-height:0;padding-right:4px;overflow:auto}.rule-modal>.modal-cancel-button{flex:none}.bet-modal h2,.rule-modal h1{color:#17201a;margin:0 0 20px;font-size:1.45rem;line-height:1.3}.bet-modal .bet-modal-heading h2{margin:0}.rule-section{margin-top:1.7em}.rule-section.is-first{margin-top:0}.rule-section h2{color:#17201a;margin:0 0 8px;font-size:1.12rem;font-weight:900;line-height:1.4}.auth-guide-section .rule-section h3{color:#17201a;margin:0 0 8px;font-size:1.08rem;font-weight:900;line-height:1.4}.rule-section p{color:#33413b;margin:0;font-weight:700;line-height:1.7}.rule-section p+p,.rule-section .rule-list+p,.rule-section p+.rule-list,.bet-rule-outcomes+p{margin-top:12px}.rule-example{overflow-wrap:anywhere}.rule-list{color:#33413b;gap:10px;margin:0;padding-left:1.25em;font-size:1rem;font-weight:700;line-height:1.7;display:grid}.bet-rule-outcomes{gap:8px;margin-top:12px;display:grid}.bet-rule-outcomes h3,.bet-rule-outcomes h4{color:#17201a;margin:0;font-size:1rem;font-weight:900;line-height:1.5}.bet-rule-outcomes h3:not(:first-child),.bet-rule-outcomes h4:not(:first-child){margin-top:8px}.bet-modal-actions{grid-template-columns:1fr 1fr;gap:12px;display:grid}.bet-choice-button,.modal-cancel-button{color:#fff;cursor:pointer;border:none;border-radius:14px;min-height:56px;padding:12px 16px;font-weight:700;line-height:normal;transition:background .15s,transform .1s}.bet-choice-button:disabled,.modal-cancel-button:disabled{cursor:not-allowed;opacity:.52}.bet-choice-button:disabled:hover,.modal-cancel-button:disabled:hover{transform:none}.bet-exists-button{background:#35b56a}.bet-not-exists-button{background:#d62929}.modal-cancel-button{color:#59645f;background:#eef0f4;width:100%;margin-top:12px}.bet-choice-button:hover,.modal-cancel-button:hover{transform:translateY(-1px)}.bet-exists-button:hover{background:#2ea05d}.bet-not-exists-button:hover{background:#c82424}.modal-cancel-button:hover{background:#e3e6ec}.word-flash{z-index:20;filter:drop-shadow(0 0 18px #00000047)drop-shadow(0 0 36px #00000038);width:min(840px,100vw - 40px);max-width:calc(100vw - 40px);animation:2s both flash-pop;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)scale(.88);container-type:inline-size}.word-flash-bubble{box-sizing:border-box;color:#17201a;overflow-wrap:anywhere;text-align:center;clip-path:polygon(50% 0%,56% 12%,66% 3%,70% 17%,83% 10%,82% 25%,96% 28%,86% 39%,99% 50%,86% 61%,96% 72%,82% 75%,83% 90%,70% 83%,66% 97%,56% 88%,50% 100%,44% 88%,34% 97%,30% 83%,17% 90%,18% 75%,4% 72%,14% 61%,1% 50%,14% 39%,4% 28%,18% 25%,17% 10%,30% 17%,34% 3%,44% 12%);background:#fff;place-items:center;width:100%;min-height:190px;padding:clamp(30px,7vw,56px) clamp(36px,12vw,120px);font-size:clamp(2.2rem,12cqi,5.8rem);font-weight:900;line-height:1.05;display:grid}.word-flash.bet .word-flash-bubble{color:#fff;background:#d83a34}.word-flash.checking .word-flash-bubble{color:#17201a;clip-path:none;background:#fff;border-radius:999px;min-height:150px;padding-left:clamp(28px,10vw,100px);padding-right:clamp(28px,10vw,100px);font-size:clamp(1.8rem,8cqi,3.8rem)}.word-flash.surrender .word-flash-bubble{color:#fff;clip-path:none;background:#1f5fbf;border-radius:999px;min-height:150px;padding-left:clamp(28px,10vw,100px);padding-right:clamp(28px,10vw,100px)}.word-flash.bet-success .word-flash-bubble{color:#fff;background:#1f8f52}.word-flash.bet-failure .word-flash-bubble{color:#fff;clip-path:none;background:#111;border-radius:999px;padding-left:clamp(28px,10vw,100px);padding-right:clamp(28px,10vw,100px)}@keyframes flash-pop{0%{opacity:0;transform:translate(-50%,-50%)scale(.72)rotate(-4deg)}14%{opacity:1;transform:translate(-50%,-50%)scale(1.06)rotate(1deg)}28%,78%{opacity:1;transform:translate(-50%,-50%)scale(1)rotate(0)}to{opacity:0;transform:translate(-50%,-50%)scale(.94)rotate(2deg)}}@keyframes word-center-burst{0%{opacity:0;transform:translate(-50%,-50%)scale(.18)}18%{opacity:.95}to{opacity:0;transform:translate(-50%,-50%)scale(1.22)}}@keyframes word-star-burst{0%{opacity:0;transform:translate(-50%,-50%)scale(.1)rotate(-18deg)}16%{opacity:1}to{opacity:0;transform:translate(-50%,-50%)scale(1.08)rotate(24deg)}}@keyframes matchmaking-spin{to{transform:rotate(360deg)}}@media (width<=1024px){.app-shell{grid-template-rows:auto auto;grid-template-columns:1fr;height:auto;min-height:100dvh;overflow:visible}.home-screen,.profile-screen{align-items:center;padding:0}.home-screen-title{font-size:24px;top:22px;left:16px}.login-panel{width:100%}.file-screen{padding:18px}.file-screen-card{padding:22px}.auth-guide-hero,.auth-guide-hero-body,.auth-guide-overview,.auth-guide-steps,.auth-guide-screen-grid{grid-template-columns:1fr}.auth-guide-showcase figcaption{display:block}.auth-guide-showcase span{max-width:none;margin-top:6px;display:block}.auth-guide-title{font-size:30px}.home-hero{border-radius:22px;width:100%}.app-logo-row{flex-direction:column;align-items:stretch;padding:10px 22px}.app-header-links{justify-content:center;gap:5px;width:100%;margin-left:0}.app-header-link,.legal-home-link{text-align:center;flex:0 auto}.login-panel h1,.home-title-block h1{font-size:1.28rem}.home-title-block .home-kicker{font-size:clamp(2.2rem,12vw,4rem)}.login-panel .home-kicker{font-size:clamp(1.9rem,10vw,3rem)}.home-lobby{grid-template-columns:1fr;gap:18px}.home-menu-button,.home-secondary-button{padding:14px 18px}.home-menu-label{font-size:16px}.home-menu-note{font-size:14px;line-height:1.6}.home-side-actions{order:-1;grid-template-columns:repeat(3,68px);justify-content:end}.home-icon-button{width:68px;height:68px;box-shadow:none}.home-icon-button svg{width:34px;height:34px}.profile-panel{padding:24px}.profile-heading-row h1{font-size:1.28rem}.profile-account-card{grid-template-columns:1fr}.profile-logout-button{width:100%}.profile-nickname-controls{grid-template-columns:1fr}.home-tabs{overflow-x:auto}.legal-screen-header{flex-direction:column;align-items:stretch}.legal-home-link{text-align:center;width:100%}.home-tab-label-full{display:none}.home-tab-label-short{display:inline-block}.profile-summary,.profile-form-row,.friends-user-item,.friend-room-item,.friend-rooms-header{flex-direction:column;align-items:stretch}.friend-rooms-actions{flex-direction:column;width:100%}.invite-url-row{grid-template-columns:1fr}.invite-url-copy-button{width:100%}.friend-room-meta{font-size:13px}.friend-room-enter-button,.friend-room-create-button,.friend-rooms-back-button{width:100%}.friends-user-actions{justify-content:stretch;width:100%}.friends-action-button{flex:1}.history-column{order:2;overflow:visible}.history-panel{height:auto;min-height:0;max-height:none;padding:18px;overflow:visible}.battle-panel{order:1;grid-template-rows:auto auto auto;height:auto;min-height:0;padding:12px;overflow:visible}.word-history{margin-top:14px}.battle-arena{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.word-stage{min-height:180px;padding:12px}.stage-word{font-size:clamp(2.4rem,12vw,4.8rem)}.battle-arena.player-count-3 .stage-word,.battle-arena.player-count-4 .stage-word{padding:8px 0;font-size:clamp(1.9rem,8.6vw,3.4rem)}.stage-heading strong{font-size:.9rem}.stage-heading{flex-wrap:wrap;gap:7px}.stage-heading span{padding:4px 8px;font-size:.74rem}.stage-rating{text-align:right;width:100%;margin-left:0;font-size:.72rem}.stage-draft{min-height:22px;font-size:.78rem}.message-board{grid-template-columns:max-content minmax(0,1fr);gap:6px;min-height:120px;padding:12px}.current-kanji{grid-area:1/1;align-self:start}.message-text{grid-area:2/1/auto/-1}.leave-button{grid-area:3/2;justify-self:end}.input-dock{padding:12px}.copyright{padding:12px 0 0}.self-controls{grid-template-columns:minmax(0,1fr) 58px 58px 58px 34px;gap:8px}.input-dock input{min-height:54px;padding:0 10px;font-size:1.08rem}.send-button,.bet-button,.surrender-button{min-height:54px;padding:0;font-size:.82rem;line-height:1.08}.modal-backdrop{padding:12px}.rule-modal{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:18px}.rule-modal h1{margin-bottom:14px;font-size:1.32rem}.rule-list{gap:8px;line-height:1.6}.send-button,.bet-button,.surrender-button{min-height:52px}.result-banner{min-height:96px;font-size:clamp(2.5rem,30cqi,5.4rem)}.word-flash{width:calc(100vw - 20px);max-width:calc(100vw - 20px)}.word-flash-bubble{width:100%;min-height:150px;padding:28px 24px;font-size:clamp(1.65rem,13cqi,3.4rem)}.word-flash.checking .word-flash-bubble,.word-flash.surrender .word-flash-bubble,.word-flash.bet-failure .word-flash-bubble{padding-left:24px;padding-right:24px;font-size:clamp(1.45rem,11cqi,2.8rem)}}@media (width<=720px){.app-logo-row{padding-left:18px;padding-right:18px}.app-header-break{flex:0 0 100%;height:0;display:block}.file-screen{padding:0 12px 12px}.file-screen-card{border-radius:22px;padding:18px}.auth-guide-screen{gap:14px}.auth-guide-hero{gap:20px}.auth-guide-showcase figcaption{padding:14px 16px}.auth-guide-title{font-size:26px}.auth-guide-points{grid-template-columns:1fr}.auth-guide-point,.auth-guide-steps li{min-height:0}.auth-hero-card .auth-screen-content,.auth-guide-section{padding:18px}.auth-guide-preview-backdrop{padding:4px}.auth-guide-preview{max-height:calc(100vh - 8px)}.auth-guide-preview img{max-height:calc(100vh - 116px)}.auth-guide-preview figcaption{padding:8px 12px;display:block}.auth-guide-preview span{max-width:none;margin-top:4px;display:block}}
