:root{--bg-top:#e9f1fd;--bg-bottom:#f4f8ff;--card:#ffffff;--text:#16234a;--muted:#6b7794;--accent:#3b6ef5;--accent-dark:#2f5fe0;--accent-light:#6aa0ff;--green:#2fb968;--green-dark:#27a45b;--border:#e6ecfa;--radius:18px;--shadow-sm:0 2px 8px rgba(36,67,140,0.06);--shadow:0 10px 30px rgba(36,67,140,0.10);--shadow-lg:0 24px 60px rgba(27,42,78,0.16);--glow:0 8px 22px rgba(59,110,245,0.32);--solved:#22a559;--very_hot:#e74c3c;--hot:#f0712f;--warm:#f1b91a;--cold:#3b82f6;--very_cold:#7c8aa5}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--text);line-height:1.55;min-height:100vh;-webkit-font-smoothing:antialiased;background:radial-gradient(60% 50% at 12% 0,rgba(59,110,245,.16),transparent 60%),radial-gradient(55% 45% at 100% 8%,rgba(47,185,104,.12),transparent 55%),radial-gradient(70% 60% at 50% 100%,rgba(106,160,255,.14),transparent 60%),linear-gradient(180deg,var(--bg-top),var(--bg-bottom));background-attachment:fixed}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:20;background:rgba(255,255,255,.72);backdrop-filter:saturate(180%) blur(14px);-webkit-backdrop-filter:saturate(180%) blur(14px);border-bottom:1px solid rgba(230,236,250,.9)}.topbar-inner{max-width:560px;margin:0 auto;padding:10px 16px;justify-content:space-between;gap:12px}.brand,.topbar-inner{display:flex;align-items:center}.brand-logo{height:34px;width:auto;display:block}.header-user{display:flex;align-items:center;gap:10px}.streak-chip{gap:5px;font-weight:800;font-size:.86rem;color:#d9641e;background:linear-gradient(180deg,#fff1e2,#ffe6cc);border:1px solid #f6d4ad;padding:5px 11px;border-radius:999px}.avatar,.streak-chip{display:inline-flex;align-items:center}.avatar{width:36px;height:36px;border-radius:50%;flex:none;justify-content:center;color:#fff;background:linear-gradient(135deg,var(--accent),var(--accent-light));box-shadow:var(--shadow-sm)}.avatar svg{width:19px;height:19px}.avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block}.avatar-initial{font-weight:800;font-size:.95rem;line-height:1}.avatar-btn{padding:0;border:none;box-shadow:var(--shadow-sm);cursor:pointer}.avatar-btn:hover{transform:translateY(-1px)}.sign-in-btn{min-height:40px;padding:0 14px;font-size:.9rem}.user-menu{position:relative}.user-pop{position:absolute;right:0;top:46px;z-index:30;min-width:180px;background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);padding:12px}.user-pop .user-name{margin:0 0 10px;font-weight:700;font-size:.9rem}main{max-width:560px;margin:0 auto;padding:24px 16px 48px}.title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.ghost-btn{flex:none;min-height:40px;padding:0 14px;font-size:.86rem;font-weight:700;background:rgba(255,255,255,.7);color:var(--accent);border:1px solid var(--border);box-shadow:none;border-radius:11px}.ghost-btn:hover{background:#fff;box-shadow:var(--shadow-sm);transform:none;filter:none}.actions{display:flex;gap:10px}.actions>*{flex:1 1}.btn-note{font-weight:600;opacity:.75}h1{font-size:1.7rem;margin:6px 0 0;font-weight:800;letter-spacing:-.02em;background:linear-gradient(100deg,#16234a 30%,var(--accent));-webkit-background-clip:text;background-clip:text;color:transparent}.sub{color:var(--muted);font-size:.94rem;margin:6px 0 18px}.step{color:var(--accent);font-weight:800;font-size:.72rem;letter-spacing:2px;text-transform:uppercase}.streak{color:var(--muted);font-size:.9rem}.guess-form{display:flex;gap:10px;margin:18px 0}.guess-form input{flex:1 1;min-height:52px;padding:0 16px;border-radius:14px;border:1px solid var(--border);background:rgba(255,255,255,.9);color:var(--text);font-size:1rem;box-shadow:var(--shadow-sm);transition:box-shadow .2s,border-color .2s}.guess-form input:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px rgba(59,110,245,.16),var(--shadow-sm)}button{justify-content:center;gap:8px;min-height:52px;min-width:52px;padding:0 20px;border:none;border-radius:14px;background:linear-gradient(180deg,var(--accent),var(--accent-dark));color:#fff;font-size:1rem;font-weight:700;cursor:pointer;letter-spacing:.01em;box-shadow:var(--glow);transition:transform .15s ease,box-shadow .2s ease,filter .2s ease}.standing-rank,.streak,button{display:inline-flex;align-items:center}.standing-rank,.streak{gap:6px}.bonus svg,.rank-caption svg{vertical-align:-.14em}button:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(59,110,245,.4);filter:saturate(1.05)}button:active{transform:translateY(0)}button:focus-visible{outline:2px solid var(--accent-dark);outline-offset:2px}button.secondary{background:rgba(255,255,255,.92);color:var(--accent);border:1px solid var(--border);box-shadow:var(--shadow-sm)}button.secondary:hover{background:#fff;box-shadow:var(--shadow)}button.green{background:linear-gradient(180deg,#36c977,var(--green-dark));box-shadow:0 8px 22px rgba(47,185,104,.32)}button.green:hover{box-shadow:0 12px 28px rgba(47,185,104,.42)}button.block{width:100%}button.btn-cb{background:#fff;color:var(--text);border:1px solid var(--border);box-shadow:var(--shadow-sm)}button.btn-cb:hover{background:#f5f8ff;box-shadow:var(--shadow);filter:none}.cb-mark{height:18px;width:auto}button:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:var(--shadow-sm)}.notice{color:var(--hot);font-size:.9rem;min-height:1.2em;font-weight:600}.correction-note{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:0 0 14px;padding:10px 14px;border-radius:12px;font-size:.88rem;background:linear-gradient(180deg,#eef4ff,#e6eeff);border:1px solid #d3e0fb;color:var(--text)}.linkish{min-height:auto;min-width:auto;padding:0;color:var(--accent);font-weight:700;font-size:.88rem;text-decoration:underline;border-radius:0}.linkish,.linkish:hover{background:none;box-shadow:none}.linkish:hover{transform:none;filter:none;color:var(--accent-dark)}.linkish:disabled{opacity:.5}ul.guesses{list-style:none;padding:0;margin:18px 0 0;max-height:248px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#c2cbdb transparent}ul.guesses::-webkit-scrollbar{width:8px}ul.guesses::-webkit-scrollbar-thumb{background:#c2cbdb;border-radius:999px}ul.guesses::-webkit-scrollbar-track{background:transparent}ul.guesses>li:first-child{margin-top:2px}.guess-row{position:relative;display:flex;align-items:center;gap:10px;padding:13px 16px 13px 18px;margin-bottom:10px;border-radius:14px;background:rgba(255,255,255,.94);box-shadow:var(--shadow-sm);border:1px solid var(--border);overflow:hidden;transition:transform .15s ease,box-shadow .2s ease;animation:rise .32s ease both}.guess-row:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.guess-row:before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--muted)}.guess-row .word{flex:1 1;font-weight:700;font-size:.9rem}.guess-row .rank{color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:600}.guess-row .temp{display:inline-flex;align-items:center;gap:6px;font-size:.76rem;font-weight:700;padding:4px 11px;border-radius:999px;background:#eef3fd;color:var(--muted)}.guess-row .temp:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}.hint-mark{color:var(--warm);margin-right:5px;vertical-align:-.12em}.typo-tag{margin-left:8px;font-size:.66rem;font-weight:700;letter-spacing:.02em;color:var(--accent);background:#eaf1ff;border:1px solid #d3e0fb;padding:1px 7px;border-radius:999px;vertical-align:.08em;white-space:nowrap}.t-solved:before{background:linear-gradient(var(--solved),#1c8f4c)}.t-very_hot:before{background:linear-gradient(var(--very_hot),#c0392b)}.t-hot:before{background:linear-gradient(var(--hot),#d35400)}.t-warm:before{background:linear-gradient(var(--warm),#d4a017)}.t-cold:before{background:linear-gradient(var(--cold),#2563eb)}.t-very_cold:before{background:linear-gradient(var(--very_cold),#5a6884)}.guess-row.unrecognized{background:#f6f7fb;border:1px dashed #cdd5e6;box-shadow:none;animation:none}.guess-row.unrecognized:before{display:none}.guess-row.unrecognized .word{flex:1 1;color:var(--muted);font-weight:600;text-decoration:line-through}.temp.not-word{background:#e9ecf3;color:var(--muted);text-decoration:none}.t-solved .temp{background:#e6f6ee;color:#1c8f4c}.t-very_hot .temp{background:#fdecea;color:#c0392b}.t-hot .temp{background:#fdeee3;color:#c75b1d}.t-warm .temp{background:#fcf4dc;color:#a9810f}.t-cold .temp{background:#e8f0fe;color:#2563eb}.panel{background:rgba(255,255,255,.96);border:1px solid var(--border);border-radius:var(--radius);padding:22px;margin:18px 0;box-shadow:var(--shadow)}.panel h2{margin:0 0 10px;font-size:1.2rem;font-weight:800;letter-spacing:-.01em}.share-pre{white-space:pre-wrap;background:#f4f8ff;border:1px solid var(--border);padding:14px;border-radius:12px;font-size:.95rem}.row{display:flex;gap:10px;flex-wrap:wrap}.coupon{border:2px dashed var(--accent);border-radius:14px;padding:18px;text-align:center;background:#f4f8ff;margin:8px 0 16px}.coupon .label{color:var(--accent);font-weight:700;font-size:.72rem;letter-spacing:1.5px;text-transform:uppercase}.coupon .big{font-weight:800;font-size:1.7rem;margin:4px 0}.coupon .big,.cta{color:var(--accent)}.cta{display:block;text-align:center;padding:14px 18px;border-radius:14px;font-weight:700;text-decoration:none;background:#fff;border:2px solid var(--accent);box-shadow:var(--shadow-sm);transition:transform .15s ease,box-shadow .2s ease,background .2s ease,color .2s ease}.cta:hover{transform:translateY(-2px);background:var(--accent);color:#fff;box-shadow:var(--glow)}label.toggle{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:.9rem;margin-top:8px}ol.board{list-style:none;padding:0;margin:0;counter-reset:rank}ol.board li{counter-increment:rank;display:flex;align-items:center;gap:12px;padding:13px 16px;margin-bottom:10px;border-radius:14px;background:linear-gradient(180deg,#ffffff,#f6f9ff);border:1px solid var(--border);box-shadow:var(--shadow-sm);transition:transform .15s ease,box-shadow .2s ease}ol.board li:hover{transform:translateY(-2px);box-shadow:var(--shadow)}ol.board li:before{content:counter(rank);display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;border-radius:8px;font-size:.82rem;color:var(--accent);font-weight:800;background:#eaf1ff}ol.board li:first-child:before{color:#fff;background:linear-gradient(180deg,#f5c84a,#e6a91f)}ol.board li:nth-child(2):before{color:#fff;background:linear-gradient(180deg,#c2cbdb,#9aa6bd)}ol.board li:nth-child(3):before{color:#fff;background:linear-gradient(180deg,#d9a273,#b9794a)}.board-name{flex:1 1;font-weight:700}.board-meta{color:var(--muted);font-size:.85rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.board-empty{margin:4px 0 0;color:var(--muted)}.more-note{margin:4px 0 0;font-size:.82rem}.howto-btn{margin:0 0 18px}.howto-dialog{border:none;border-radius:var(--radius);padding:26px;max-width:600px;width:calc(100% - 32px);max-height:92vh;box-shadow:var(--shadow-lg);color:var(--text);background:linear-gradient(180deg,#ffffff,#f7faff)}.howto-dialog::-webkit-backdrop{background:rgba(22,35,74,.5);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.howto-dialog::backdrop{background:rgba(22,35,74,.5);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.howto-dialog h2{margin:0 0 10px;font-size:1.25rem;font-weight:800}.howto-dialog[open]{animation:pop .22s ease both}.howto-dialog .block{margin-top:18px}.howto-examples{margin:0;padding-left:20px;color:var(--muted)}.howto-examples li{margin-bottom:4px}.standing{margin:4px 0 18px}.standing-head{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:.96rem;margin-bottom:14px}.standing-head .points{background:linear-gradient(180deg,var(--accent),var(--accent-dark));color:#fff;font-weight:800;padding:5px 14px;border-radius:999px;font-size:.9rem;box-shadow:var(--glow)}.track{position:relative;height:14px;background:linear-gradient(90deg,#e2e8f5,#cdd9f4);box-shadow:inset 0 1px 3px rgba(36,67,140,.12);margin:26px 0 8px}.track,.track-fill{border-radius:999px}.track-fill{position:absolute;left:0;top:0;height:100%;background:linear-gradient(90deg,var(--accent),var(--accent-light));box-shadow:0 0 12px rgba(59,110,245,.5);transition:width .6s ease}.you-pin{top:-24px;transform:translateX(-50%);color:#fff;font-size:.72rem;font-weight:800;padding:4px 9px;border-radius:9px;white-space:nowrap;box-shadow:var(--shadow-sm)}.you-pin,.you-pin:after{position:absolute;background:var(--text)}.you-pin:after{content:"";left:50%;bottom:-4px;transform:translateX(-50%) rotate(45deg);width:8px;height:8px}.track-ends{display:flex;justify-content:space-between;color:var(--muted);font-size:.78rem}.bonus{margin:14px 0 0;padding:12px 14px;background:linear-gradient(180deg,#fff8ea,#fff3da);border:1px solid #f3dca6;border-radius:14px;font-size:.88rem;color:#8a6d1f}.rank-radar{text-align:center}.rank-radar svg{width:240px;max-width:100%;height:auto}.rank-caption{margin:10px 0 0;font-size:.95rem;color:var(--text)}.radar-dot{transition:transform .9s cubic-bezier(.22,1,.36,1)}.bull-pulse{transform-box:fill-box;transform-origin:center;animation:bull-pulse .9s ease-in-out infinite}.login-prompt{margin:14px 0;padding:16px;border-radius:14px;background:linear-gradient(180deg,#eef4ff,#e6eeff);border:1px solid #d3e0fb}.login-prompt p{margin:0 0 6px}.login-prompt .sub{margin:0 0 12px}.saved-note{margin:12px 0;color:var(--green-dark);font-weight:600;font-size:.9rem}.replay-row{text-align:center;margin-top:14px}.replay-row .linkish{color:var(--muted);text-decoration:none;font-weight:600;font-size:.85rem}.replay-row .linkish:hover{color:var(--accent);text-decoration:underline}.share-text{margin-top:12px}.share-text>summary{cursor:pointer;list-style:none;color:var(--muted);font-size:.85rem;font-weight:700}.share-text>summary::-webkit-details-marker{display:none}.share-text>summary:before{content:"▸ "}.share-text[open]>summary:before{content:"▾ "}.board-panel{padding:16px}.rank-board{text-align:center}.rank-board svg{width:260px;max-width:100%;height:auto}.play-layout{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start}.play-layout .rank-board{flex:0 0 150px}.play-layout .rank-board svg{width:150px}.play-layout .guess-list{flex:1 1 180px;min-width:0}.play-layout ul.guesses{margin:0}.board-latest{transform-box:fill-box;transform-origin:center;animation:bull-pulse 1.2s ease-in-out infinite}.error-box{padding:24px;background:rgba(255,255,255,.96);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);text-align:center}@keyframes bull-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.18)}}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pop{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.site-footer{max-width:560px;margin:8px auto 24px;padding:0 16px;display:flex;align-items:center;gap:10px;font-size:.85rem;color:var(--muted)}.site-footer a{color:var(--muted);text-decoration:none}.site-footer a:hover{color:var(--accent);text-decoration:underline}.site-footer-copy{margin-left:auto}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}