.mini-lb-section{border:1px solid var(--rule);border-radius:var(--radius);background:var(--tile);padding:24px;margin-bottom:24px;box-shadow:var(--shadow-sm);min-height:280px}.mini-lb-title{font-size:18px;font-weight:800;color:var(--ink);margin:0 0 16px;text-align:center;letter-spacing:-.02em}.mini-lb-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.mini-lb-card{background:var(--paper);border:1px solid var(--rule);border-radius:14px;padding:16px 18px;min-height:120px}.mini-lb-card-title{font-size:14px;font-weight:700;color:var(--ink);margin:0 0 10px;text-align:center}.mini-lb-loading,.mini-lb-empty{text-align:center;color:var(--muted-2);font-size:13px;padding:16px 0;min-height:48px}.mini-lb-table{width:100%;border-collapse:collapse;font-size:13px}.mini-lb-table td{padding:7px 6px;border-bottom:1px solid var(--rule);line-height:1.4}.mini-lb-table tr:last-child td{border-bottom:none}.mini-lb-table .mini-rank{width:32px;text-align:center}.mini-lb-table .mini-name{font-weight:600;color:var(--ink)}.mini-lb-table .mini-stat{font-family:var(--mono);font-weight:700;color:var(--ink);text-align:right;font-size:13px}.mini-lb-table .mini-stat-secondary{color:var(--muted);font-family:var(--mono);font-size:12px;text-align:right}.mini-recent-list{list-style:none;padding:0;margin:0}.mini-recent-item{display:flex;justify-content:space-between;align-items:center;padding:7px 0;border-bottom:1px solid var(--rule);font-size:13px}.mini-recent-item:last-child{border-bottom:none}.mini-recent-name{font-weight:600;color:var(--ink)}.mini-recent-meta{color:var(--muted);font-family:var(--mono);font-size:12px}.mini-lb-links{display:flex;justify-content:center;gap:20px;margin-top:14px;font-size:13px}.mini-lb-links a{color:var(--accent);text-decoration:none;font-weight:600;transition:color .2s ease,border-color .2s ease;padding:4px 0;border-bottom:1px solid transparent}.mini-lb-links a:hover{border-bottom-color:var(--accent)}.mini-lb-fade-in{animation:fadeIn .3s ease}@media(max-width:600px){.mini-lb-grid{grid-template-columns:1fr}.mini-lb-card{padding:14px 16px}}.stats-card{border:1px solid var(--rule);border-radius:var(--radius);background:var(--tile);padding:24px;margin-bottom:24px;box-shadow:var(--shadow-sm)}.stats-card h3{margin:0 0 14px;font-size:14px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;text-align:center}.stat-item .value{font-size:30px;font-weight:900;color:var(--ink);font-family:var(--mono);letter-spacing:-.02em}.stat-item .label{font-size:12px;color:var(--muted);margin-top:4px;font-weight:500}.hint-card{border:1px solid var(--rule);border-radius:var(--radius);background:var(--tile);padding:24px;margin-bottom:24px;box-shadow:var(--shadow-sm)}.hint-card h3{margin:0 0 10px;font-size:15px;font-weight:700}.hint-word{font-family:var(--mono);font-size:20px;font-weight:700;color:var(--accent);letter-spacing:2px}.modal-overlay{position:fixed;inset:0;background:#0f172a80;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:100;display:flex;align-items:center;justify-content:center;padding:20px;opacity:0;pointer-events:none;transition:opacity .25s ease}.modal-overlay.active{opacity:1;pointer-events:auto}.modal{background:var(--paper-strong);border:1px solid var(--rule);border-radius:var(--radius-lg);padding:32px;max-width:420px;width:100%;box-shadow:var(--shadow-lg)}.modal h3{margin:0 0 18px;font-size:20px;font-weight:800;letter-spacing:-.02em}.share-text{width:100%;min-height:100px;padding:14px;border:1px solid var(--rule);border-radius:12px;background:var(--paper);color:var(--ink);font-family:var(--mono);font-size:13px;resize:vertical;margin-bottom:14px}.modal-actions{display:flex;gap:10px;justify-content:flex-end}.modal-lb-snippet{border-top:1px solid var(--rule);margin-top:14px;padding-top:14px}.modal-rank{text-align:center;font-size:15px;font-weight:700;color:var(--accent);margin-bottom:10px}.modal-lb-top3{background:var(--paper);border:1px solid var(--rule);border-radius:14px;padding:16px 18px}.mini-lb-view-link{display:block;text-align:center;font-size:13px;color:var(--accent);text-decoration:none;font-weight:600;margin-top:10px;padding:4px 0;border-bottom:1px solid transparent;transition:color .2s ease,border-color .2s ease}.mini-lb-view-link:hover{border-bottom-color:var(--accent)}@media(max-width:600px){.modal{max-width:calc(100vw - 40px);padding:24px}}.name-section{text-align:center;margin-bottom:24px;min-height:40px}.name-input{padding:9px 16px;border:1px solid var(--rule);border-radius:10px;background:var(--tile);color:var(--ink);font-size:14px;text-align:center;width:190px;outline:none;transition:border-color .2s ease,box-shadow .2s ease;box-shadow:var(--shadow-sm)}.name-input:focus{border-color:var(--accent);box-shadow:var(--shadow),var(--shadow-glow)}.footer{border-top:1px solid var(--rule);padding:40px 24px 28px;color:var(--muted);background:var(--paper)}.footer-inner{max-width:960px;margin:0 auto;display:flex;gap:48px;align-items:flex-start}.footer-brand{flex:1;min-width:180px}.footer-brand .brand-mark{width:36px;height:36px;display:inline-grid;place-items:center;border-radius:10px;background:var(--accent-gradient);font-family:var(--serif);font-size:18px;color:#fff;letter-spacing:1px;box-shadow:var(--shadow-sm)}.footer-brand p{font-size:13px;color:var(--muted-2);margin:10px 0 0;line-height:1.5}.footer-links{display:flex;gap:40px;flex:2}.footer-col h4{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ink);margin:0 0 12px}.footer-col a{display:block;font-size:13px;color:var(--muted);text-decoration:none;padding:5px 0;border-radius:6px;transition:color .2s ease,background-color .2s ease;font-weight:500}.footer-col a:hover{color:var(--accent);background:var(--hover-bg)}.footer-bottom{max-width:960px;margin:24px auto 0;padding-top:20px;border-top:1px solid var(--rule);font-size:12px;color:var(--muted-2);text-align:center}.footer-bottom p{margin:0 0 8px}.footer-legal-links{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 14px;margin:0;font-size:12px}.footer-legal-links a{color:var(--muted);text-decoration:underline;text-underline-offset:2px}.footer-legal-links a:hover{color:var(--accent)}.ad-slot{margin:24px 0;text-align:center;padding:12px 8px 16px;border:1px dashed var(--rule);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--paper) 88%,var(--muted) 12%)}.ad-slot .ad-label{display:block;margin:0 0 8px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-2);user-select:none}.ad-slot [id^=container-]{min-height:90px}.footer-toggle{cursor:default}.footer-arrow{display:none}.leaderboard-table{width:100%;border-collapse:collapse;margin:16px 0}.leaderboard-table th,.leaderboard-table td{padding:11px 14px;text-align:left;border-bottom:1px solid var(--rule);font-size:14px}.leaderboard-table th{color:var(--muted);font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.06em}.leaderboard-table tr:hover td{background:var(--accent-light)}.leaderboard-table .rank{font-weight:800;color:var(--accent);width:40px}.leaderboard-table .name{font-weight:600}.leaderboard-table .steps{font-family:var(--mono);font-weight:700}.leaderboard-table .time{color:var(--muted);font-family:var(--mono);font-size:13px}.rank-badge{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:8px;font-size:12px;font-weight:800}.rank-badge.gold{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e}.rank-badge.silver{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);color:#334155}.rank-badge.bronze{background:linear-gradient(135deg,#ffedd5,#fed7aa);color:#9a3412}[data-theme=dark] .rank-badge.gold{background:linear-gradient(135deg,#78350f,#92400e);color:#fde68a}[data-theme=dark] .rank-badge.silver{background:linear-gradient(135deg,#334155,#475569);color:#e2e8f0}[data-theme=dark] .rank-badge.bronze{background:linear-gradient(135deg,#7c2d12,#9a3412);color:#fed7aa}.lb-title{font-size:18px;font-weight:800;color:var(--ink);margin:0 0 14px;text-align:center;letter-spacing:-.02em}.leaderboard-section{background:var(--tile);border:1px solid var(--rule);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow-sm)}.leaderboard-table .primary{font-family:var(--mono);font-weight:700;color:var(--ink)}.leaderboard-table .secondary{color:var(--muted);font-family:var(--mono);font-size:13px}@media(max-width:600px){.nav{padding:8px 14px}.nav-links{gap:2px}.nav-links a{padding:6px 10px;font-size:13px}.page{padding:8px 10px 12px}.game-header{margin-bottom:10px}.game-header h1{font-size:20px;margin-bottom:0}.game-header .subtitle{font-size:13px}.mode-selector{margin-bottom:8px}.mode-tab{padding:8px 12px;font-size:13px}.route-word{min-width:42px;height:42px;font-size:16px;letter-spacing:1px}.route-arrow{font-size:12px}.route-display{padding:10px;min-height:56px;margin-bottom:8px}.input-area{margin-bottom:8px;gap:6px}.word-input{font-size:20px;padding:10px 14px;letter-spacing:4px}.submit-btn{padding:10px 12px;font-size:16px;min-width:44px}.message{font-size:13px;padding:8px 12px;min-height:32px;margin-bottom:8px}.actions{flex-direction:row;flex-wrap:wrap;gap:4px;margin-bottom:8px}.action-btn{flex:1;min-width:fit-content;padding:7px 5px;font-size:12px;border-radius:8px;white-space:nowrap}.keyboard{gap:3px;margin-bottom:8px}.keyboard-row{gap:2px}.key{min-width:0;max-width:none;flex:1;height:40px;font-size:13px}.key.wide{flex:1.3;font-size:10px}.name-section{display:block;margin-bottom:12px}.puzzle-info{font-size:12px;gap:10px;margin-top:4px}.stats-grid{grid-template-columns:repeat(3,1fr);gap:10px}.stat-item .value{font-size:24px}}@media(min-width:601px)and (max-width:1024px){.key{min-width:36px;max-width:48px;height:52px;font-size:16px}.key.wide{flex:1.5;max-width:72px;font-size:13px}.keyboard-row{gap:4px}.keyboard{gap:6px}.action-btn{padding:12px 20px}.submit-btn{padding:14px 32px}.route-word{min-width:62px;height:62px;font-size:21px}.puzzle-info{gap:20px;font-size:14px}.word-input{padding:14px 20px;font-size:22px}.page{padding:24px 24px 50px;max-width:680px}@media(hover:none)and (pointer:coarse){.word-input{opacity:.6;border-style:dashed}.input-area{margin-bottom:10px}}}.fade-in{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.slide-up{animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.slide-in{animation:slideIn .3s cubic-bezier(.34,1.56,.64,1)}@keyframes slideIn{0%{opacity:0;transform:scale(.8) translate(-10px)}to{opacity:1;transform:scale(1) translate(0)}}.error-flash{animation:errorFlash .4s ease}@keyframes errorFlash{0%,to{background:inherit}50%{background:var(--danger-light)}}.mode-tab{transition:background-color .25s ease,color .25s ease,box-shadow .25s ease}.route-display,.message{transition:transform .25s ease,opacity .25s ease}.confetti-container{position:fixed;inset:0;pointer-events:none;z-index:50}.confetti-piece{position:absolute;width:8px;height:8px;border-radius:2px;animation:confettiFall 3s ease-in forwards}@keyframes confettiFall{0%{transform:translateY(-20px) rotate(0);opacity:1}to{transform:translateY(100vh) rotate(720deg);opacity:0}}.how-to-content p,.faq-content p,.strategy-content p{font-size:14px;color:var(--muted);line-height:1.75;margin:6px 0}.how-to-content strong{color:var(--ink)}.faq-content details{border-bottom:1px solid var(--rule);padding:12px 0}.faq-content details:first-child{border-top:1px solid var(--rule)}.faq-content summary{font-size:15px;font-weight:600;color:var(--ink);cursor:pointer;padding:4px 0;list-style:none;display:flex;justify-content:space-between;align-items:center;transition:color .2s ease}.faq-content summary:hover{color:var(--accent)}.faq-content summary::-webkit-details-marker{display:none}.faq-content summary:after{content:"+";font-size:18px;color:var(--accent);font-weight:400;margin-left:8px;transition:transform .2s}.faq-content details[open] summary:after{content:"\2212";transform:rotate(0)}.faq-content details p{padding:8px 0 4px;color:var(--muted);font-size:14px;line-height:1.7}.strategy-content ul{padding-left:20px;margin:10px 0 0}.strategy-content li{font-size:14px;color:var(--muted);line-height:1.75;margin-bottom:8px}.strategy-content li strong{color:var(--ink)}.stats-card h2{font-size:18px;font-weight:800;margin:0 0 14px;color:var(--ink);letter-spacing:-.02em}.nav-dropdown{position:relative}.nav-dropdown-btn{padding:8px 14px;border-radius:10px;border:none;background:transparent;color:var(--muted);font-size:14px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:4px;transition:color .2s ease,background-color .2s ease}.nav-dropdown-btn:after{content:"\25be";font-size:10px}.nav-dropdown-btn:hover{color:var(--ink);background:var(--hover-bg)}.nav-dropdown-menu{position:absolute;top:calc(100% + 6px);right:0;min-width:150px;background:var(--paper-strong);border:1px solid var(--rule);border-radius:14px;box-shadow:var(--shadow-lg);padding:6px;opacity:0;pointer-events:none;transform:translateY(-6px);transition:opacity .2s ease,transform .2s ease}.nav-dropdown-menu.open{opacity:1;pointer-events:auto;transform:translateY(0)}.nav-dropdown-menu a{display:block;padding:9px 14px;border-radius:10px;font-size:14px;font-weight:600;color:var(--muted);text-decoration:none;transition:color .15s ease,background-color .15s ease}.nav-dropdown-menu a:hover{color:var(--ink);background:var(--accent-light)}.nav-hamburger{display:none;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:40px;height:40px;background:var(--tile);border:1px solid var(--rule);border-radius:10px;padding:0;cursor:pointer;transition:background .2s,border-color .2s}.nav-hamburger:hover{border-color:var(--accent);background:var(--accent-light)}.nav-hamburger span{display:block;width:18px;height:2px;background:var(--ink);border-radius:2px;transition:transform .25s ease,opacity .15s ease;transform-origin:center}.nav-hamburger[aria-expanded=true] span:nth-child(1){transform:translateY(6px) rotate(45deg)}.nav-hamburger[aria-expanded=true] span:nth-child(2){opacity:0;transform:scaleX(0)}.nav-hamburger[aria-expanded=true] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.mobile-menu-backdrop{display:none;position:fixed;inset:56px 0 0;background:#0f172a4d;z-index:15;opacity:0;transition:opacity .25s ease}.mobile-menu-backdrop.open{display:block;opacity:1}.mobile-menu{display:none;flex-direction:column;gap:0;padding:8px 16px 16px;border-top:1px solid var(--rule);background:var(--paper-strong);box-shadow:var(--shadow-lg);max-height:calc(100vh - 56px);overflow-y:auto;animation:menuSlideIn .25s ease}.mobile-menu.open{display:flex}@keyframes menuSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.mobile-menu-group{padding:4px 0}.mobile-menu-group+.mobile-menu-group{border-top:1px solid var(--rule);padding-top:6px}.mobile-menu-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--muted-2);padding:8px 8px 2px}.mobile-menu a{display:flex;align-items:center;gap:8px;padding:11px 10px;font-size:15px;font-weight:600;color:var(--ink);text-decoration:none;border-radius:10px;transition:color .15s ease,background-color .15s ease}.mobile-menu a:hover{background:var(--hover-bg);color:var(--accent)}.mobile-menu a:active{background:var(--accent-light)}.mobile-menu a.active,.mobile-menu a[aria-current=page]{background:var(--accent-light);color:var(--accent);font-weight:700}.content-page{max-width:720px;margin:0 auto;padding:28px 20px 60px;animation:pageLoad .3s ease}.content-page h1{font-size:30px;font-weight:900;letter-spacing:-.04em;margin:0 0 8px}.content-page .subtitle{font-size:15px;color:var(--muted-2);margin:0 0 28px;font-weight:500}.content-page h2{font-size:22px;font-weight:800;letter-spacing:-.02em;margin:36px 0 14px;color:var(--ink)}.content-page h3{font-size:17px;font-weight:700;margin:28px 0 10px;color:var(--ink)}.content-page p{font-size:15px;line-height:1.8;color:var(--muted);margin:0 0 16px}.content-page ul,.content-page ol{padding-left:24px;margin:0 0 16px}.content-page li{font-size:15px;line-height:1.8;color:var(--muted);margin-bottom:8px}.content-page a{color:var(--accent);text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1px;transition:color .2s ease}.content-page a:hover{color:var(--accent-2)}@keyframes pageLoad{0%{opacity:0}to{opacity:1}}.blog-grid{display:grid;grid-template-columns:1fr;gap:18px;margin-top:28px}@media(min-width:640px){.blog-grid{grid-template-columns:1fr 1fr}}.blog-card{border:1px solid var(--rule);border-radius:var(--radius);background:var(--tile);padding:22px;transition:transform .25s ease,box-shadow .25s ease;display:flex;flex-direction:column;opacity:0;transform:translateY(12px);animation:cardFadeIn .4s ease forwards;box-shadow:var(--shadow-sm)}.blog-card:nth-child(1){animation-delay:0s}.blog-card:nth-child(2){animation-delay:.08s}.blog-card:nth-child(3){animation-delay:.16s}.blog-card:nth-child(4){animation-delay:.24s}.blog-card:nth-child(5){animation-delay:.32s}@keyframes cardFadeIn{to{opacity:1;transform:translateY(0)}}.blog-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:#6366f126}.blog-card-tag{display:inline-block;padding:3px 10px;border-radius:8px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;background:var(--accent-light);color:var(--accent);margin-bottom:12px;align-self:flex-start}.blog-card h2{font-size:17px;font-weight:700;margin:0 0 8px;color:var(--ink);line-height:1.35;letter-spacing:-.01em}.blog-card h2 a{color:inherit;text-decoration:none}.blog-card h2 a:hover{color:var(--accent)}.blog-card-excerpt{font-size:14px;line-height:1.65;color:var(--muted);margin:0 0 14px;flex:1}.blog-card-meta{font-size:12px;color:var(--muted-2);display:flex;gap:12px}.related-articles{border-top:1px solid var(--rule);margin-top:44px;padding-top:28px}.related-articles h3{font-size:16px;font-weight:700;margin:0 0 14px;color:var(--ink)}.related-articles ul{list-style:none;padding:0;margin:0}.related-articles li{padding:12px 0;border-bottom:1px solid var(--rule)}.related-articles li:last-child{border-bottom:none}.related-articles a{font-size:15px;font-weight:600;color:var(--accent);text-decoration:none;transition:color .2s ease}.related-articles a:hover{color:var(--accent-2);text-decoration:underline}.related-articles .related-desc{font-size:13px;color:var(--muted-2);margin-top:3px}.blog-link-list{padding-left:20px;margin:10px 0 0}.blog-link-list li{font-size:14px;color:var(--muted);line-height:1.75;margin-bottom:8px}.blog-link-list li a{color:var(--accent);text-decoration:underline;text-underline-offset:2px;font-weight:600;transition:color .2s ease}.blog-link-list li a:hover{color:var(--accent-2)}.comments-section{padding:0 20px 20px}.comments-section h2{font-size:22px;font-weight:800;letter-spacing:-.02em;margin:0 0 18px;color:var(--ink)}.comment-form{background:var(--tile);border:1px solid var(--rule);border-radius:var(--radius);padding:18px;margin-bottom:22px;box-shadow:var(--shadow-sm)}.comment-form-row{display:flex;gap:10px;align-items:center;margin-bottom:10px}.comment-name-input{flex:0 0 auto;width:160px;padding:10px 14px;border:1px solid var(--rule);border-radius:10px;background:var(--paper);font-size:14px;font-weight:600;color:var(--ink);outline:none;transition:border-color .2s ease,box-shadow .2s ease}.comment-name-input:focus{border-color:var(--accent);box-shadow:var(--shadow-glow)}.comment-text-input{width:100%;padding:12px 14px;border:1px solid var(--rule);border-radius:10px;background:var(--paper);font-size:14px;color:var(--ink);resize:vertical;outline:none;line-height:1.5;font-family:var(--sans);transition:border-color .2s ease,box-shadow .2s ease}.comment-text-input:focus{border-color:var(--accent);box-shadow:var(--shadow-glow)}.comment-submit-btn{white-space:nowrap;padding:10px 20px;font-size:14px}.comments-list{display:flex;flex-direction:column;gap:12px;min-height:200px}.comment-item{padding:14px 18px;background:var(--tile);border:1px solid var(--rule);border-radius:14px;border-left:3px solid var(--accent);transition:box-shadow .2s ease}.comment-item:hover{box-shadow:var(--shadow-sm)}.comment-item.reply{margin-left:24px;border-left-color:var(--accent-2);border-radius:12px;padding:12px 16px}.comment-header{display:flex;align-items:baseline;gap:8px;margin-bottom:6px}.comment-name{font-size:14px;font-weight:700;color:var(--ink)}.comment-time{font-size:12px;color:var(--muted-2)}.comment-body{font-size:14px;color:var(--ink);line-height:1.55;margin-bottom:10px}.comment-actions{display:flex;gap:12px;align-items:center}.like-btn{display:inline-flex;align-items:center;gap:4px;background:none;border:none;padding:3px 8px;cursor:pointer;font-size:13px;color:var(--muted);border-radius:8px;transition:color .2s ease,background-color .2s ease}.like-btn:hover{background:var(--hover-bg);color:var(--accent)}.like-btn.liked{color:var(--accent);font-weight:700}.like-btn .like-icon{font-size:15px}.reply-btn{background:none;border:none;padding:3px 8px;cursor:pointer;font-size:13px;color:var(--muted);border-radius:8px;transition:color .2s ease,background-color .2s ease}.reply-btn:hover{background:var(--hover-bg);color:var(--accent)}.reply-form{display:none;margin-top:10px;gap:8px;flex-direction:column}.reply-form.open{display:flex}.reply-form textarea{width:100%;padding:10px 12px;border:1px solid var(--rule);border-radius:10px;background:var(--paper);font-size:13px;color:var(--ink);resize:vertical;outline:none;line-height:1.4;font-family:var(--sans);transition:border-color .2s ease,box-shadow .2s ease}.reply-form textarea:focus{border-color:var(--accent);box-shadow:var(--shadow-glow)}.reply-form-row{display:flex;gap:8px;align-items:center}.reply-form input{width:120px;padding:7px 12px;border:1px solid var(--rule);border-radius:10px;background:var(--paper);font-size:13px;font-weight:600;color:var(--ink);outline:none;transition:border-color .2s ease}.reply-form input:focus{border-color:var(--accent)}.reply-submit-btn{padding:7px 16px;font-size:13px}.comment-replies{display:flex;flex-direction:column;gap:8px;margin-top:10px}.comments-empty{text-align:center;padding:28px;color:var(--muted-2);font-size:14px}.reaction-bar{display:inline-flex;gap:6px;align-items:center}.reaction-btn{display:inline-flex;align-items:center;gap:2px;background:none;border:1px solid transparent;padding:2px 8px;cursor:pointer;font-size:13px;color:var(--muted);border-radius:8px;transition:color .2s ease,background-color .2s ease,border-color .2s ease}.reaction-btn:hover{background:var(--hover-bg);border-color:var(--rule)}.reaction-btn.active{background:var(--accent-light);border-color:var(--accent);color:var(--accent);font-weight:600}.reaction-btn .reaction-emoji{font-size:16px}.reaction-btn .reaction-count{font-size:11px;font-weight:600}.vote-section{margin-top:14px;padding:18px;background:var(--tile);border:1px solid var(--rule);border-radius:14px;box-shadow:var(--shadow-sm)}.vote-section h3{font-size:14px;font-weight:700;color:var(--ink);margin:0 0 12px}.vote-btns{display:flex;gap:8px;margin-bottom:14px}.vote-btn{padding:9px 18px;border:1px solid var(--rule);border-radius:10px;background:var(--paper);color:var(--muted);font-size:14px;font-weight:600;cursor:pointer;transition:color .2s ease,background-color .2s ease,border-color .2s ease}.vote-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-light)}.vote-btn.active{background:var(--accent-gradient);color:#fff;border-color:transparent;box-shadow:var(--shadow-glow)}.vote-results{display:flex;gap:10px;align-items:center}.vote-result-item{display:flex;align-items:center;gap:4px;font-size:13px;color:var(--muted)}.vote-result-item .vote-bar{height:6px;border-radius:3px;background:var(--accent-light);min-width:20px;transition:width .3s}.vote-result-item .vote-bar.easy{background:var(--green)}.vote-result-item .vote-bar.medium{background:var(--accent)}.vote-result-item .vote-bar.hard{background:var(--danger)}.vote-result-item .vote-percent{font-size:12px;font-weight:600;color:var(--ink)}.achievements-row{display:flex;gap:6px;margin-top:10px;flex-wrap:wrap;justify-content:center}.achievement-badge{display:inline-flex;align-items:center;gap:3px;padding:3px 10px;background:var(--accent-light);border:1px solid rgba(99,102,241,.2);border-radius:10px;font-size:12px;font-weight:600;color:var(--accent);transition:box-shadow .2s ease}.achievement-badge:hover{box-shadow:var(--shadow-glow)}.achievement-badge .badge-icon{font-size:14px}.streak-display{display:inline-flex;align-items:center;gap:4px;font-size:14px;font-weight:700;color:var(--accent)}.streak-display .streak-icon{font-size:16px}.toast-container{position:fixed;bottom:max(24px,env(safe-area-inset-bottom,24px));left:50%;transform:translate(-50%);z-index:200;display:flex;flex-direction:column;gap:8px;pointer-events:none}.toast{background:var(--accent-gradient);color:#fff;padding:14px 24px;border-radius:14px;font-size:14px;font-weight:600;box-shadow:var(--shadow-lg),var(--shadow-glow);animation:toastIn .3s ease,toastOut .3s ease 2.7s forwards;text-align:center;white-space:nowrap}.toast .toast-icon{font-size:18px;margin-right:4px}@keyframes toastIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes toastOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}.share-btns{display:flex;gap:8px;margin-top:10px}.share-twitter-btn{display:inline-flex;align-items:center;gap:6px;padding:11px 18px;border-radius:12px;background:#0f172a;color:#fff;font-size:14px;font-weight:600;border:none;cursor:pointer;transition:opacity .2s ease,transform .2s ease}.share-twitter-btn:hover{opacity:.88;transform:translateY(-1px)}.share-twitter-btn .twitter-icon{font-size:16px;font-weight:800}[data-theme=dark] .share-twitter-btn{background:#f1f5f9;color:#0f172a}@media(max-width:600px){.comments-section{padding:0 16px 16px}.comment-form-row{flex-direction:column;gap:8px}.comment-name-input{width:100%}.comment-item.reply{margin-left:12px}}@media(max-width:600px){.nav-links{display:none}.nav-hamburger{display:flex}.mobile-menu{display:none}.mobile-menu.open{display:flex}.mobile-menu-backdrop{display:none}.mobile-menu-backdrop.open{display:block}.footer-inner{flex-direction:column;gap:20px}.footer-links{flex-wrap:wrap;gap:0;width:100%}.footer-col{min-width:100%;border-bottom:1px solid var(--rule);padding-bottom:8px}.footer-col:last-child{border-bottom:none}.footer-toggle{display:flex;align-items:center;justify-content:space-between;cursor:pointer;padding:10px 0;margin:0}.footer-arrow{display:inline-block;transition:transform .2s ease;font-size:16px}.footer-col.open .footer-arrow{transform:rotate(90deg)}.footer-col-content{max-height:0;overflow:hidden;transition:max-height .3s ease}.footer-col.open .footer-col-content{max-height:200px}.footer-col a{padding:8px 0}.content-page h1{font-size:24px}.content-page h2{font-size:19px}.blog-grid{grid-template-columns:1fr}*{box-sizing:border-box;max-width:100%}html,body{overflow-x:hidden;-webkit-text-size-adjust:100%}.input-area{flex-direction:row;gap:6px;margin-bottom:8px}.word-input{font-size:20px;letter-spacing:4px;padding:10px 14px}.submit-btn{width:auto;min-width:44px;padding:10px 12px;font-size:16px;border-radius:10px}.puzzle-info{flex-wrap:wrap;gap:8px 12px;font-size:12px}.route-display{padding:10px;gap:4px;min-height:56px;margin-bottom:8px}.route-word{min-width:42px;height:42px;font-size:16px;letter-spacing:1px;border-radius:8px}.route-arrow{font-size:12px}.message{font-size:13px;padding:8px 12px;min-height:32px;margin-bottom:8px}.actions{flex-direction:row;flex-wrap:wrap;gap:4px;margin-bottom:8px}.action-btn{width:auto;min-width:0;flex:1;padding:7px 5px;font-size:12px;line-height:1.15;border-radius:8px;justify-content:center;display:flex;white-space:nowrap}.name-section{display:block;margin-bottom:12px}.name-input{width:100%;padding:10px 14px}.comments-section h2{font-size:18px}.comment-form{padding:14px}.comment-form-row{flex-direction:column;gap:8px}.comment-name-input{width:100%}.comment-text-input{font-size:13px;padding:10px 12px}.comment-item{padding:12px 14px}.comment-body{font-size:13px;word-wrap:break-word;overflow-wrap:break-word;word-break:break-word}.leaderboard-table{font-size:13px}.leaderboard-table th,.leaderboard-table td{padding:8px 10px;font-size:13px}.mini-lb-grid{grid-template-columns:1fr}.stats-card{padding:18px 14px;margin-bottom:16px}.stats-card h2{font-size:16px}.how-to-content p,.faq-content p,.strategy-content p,.faq-content details p{font-size:13px}.vote-section{padding:14px}.vote-btns{flex-wrap:wrap;gap:6px}.vote-btn{flex:1;min-width:0;padding:10px 12px;font-size:13px}.modal{padding:20px;max-width:calc(100vw - 32px)}.modal h3{font-size:17px}.share-text{font-size:12px;min-height:80px}.share-btns{flex-direction:column;gap:8px}.share-twitter-btn{width:100%;justify-content:center}.toast{font-size:13px;padding:12px 18px;white-space:normal;max-width:calc(100vw - 48px)}p,li,span,div,td,th,a,button,input,textarea{overflow-wrap:break-word;word-wrap:break-word;-webkit-hyphens:none;hyphens:none}pre,code,.mono{word-break:break-all;white-space:pre-wrap}.stats-grid,.mini-lb-grid,.vote-results,.comment-replies{width:100%}.modal-overlay{padding:16px}.content-page{padding:20px 16px 40px;width:100%;max-width:100vw}.content-page h1{font-size:22px;letter-spacing:-.03em}.content-page h2{font-size:18px;margin:28px 0 12px}.content-page h3{font-size:15px;margin:20px 0 8px}.content-page p,.content-page li{font-size:14px;line-height:1.7}.faq-content summary{font-size:14px}.achievements-row{justify-content:flex-start}.achievement-badge{font-size:11px;padding:4px 8px}.confetti-piece{width:6px;height:6px}.keyboard{display:flex;flex-direction:column;gap:3px;margin-bottom:8px;padding-bottom:max(0px,env(safe-area-inset-bottom,0px))}.keyboard-row{gap:2px}.key{height:40px;font-size:13px;min-width:0;flex:1}.key.wide{flex:1.3;font-size:10px}.page,.content-page,main,section,article,header,footer,nav{max-width:100vw;overflow-x:hidden}.leaderboard-table,.mini-lb-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;width:100%}.leaderboard-table table,.mini-lb-table table{min-width:350px;width:100%}img,video,svg,iframe{max-width:100%;height:auto}.name-input,.comment-name-input{max-width:100%;box-sizing:border-box}.vote-bar{max-width:50px}.rank-badge{flex-shrink:0}.route-display:after{width:24px}.game-header .subtitle{font-size:13px;padding:0 4px;margin-bottom:0}.puzzle-info{margin-top:4px;font-size:12px;gap:10px}.modal-lb-snippet{overflow-x:auto}.reaction-bar{flex-wrap:wrap}.reaction-btn{padding:2px 6px;font-size:12px}.blog-card{padding:16px}.blog-card h2{font-size:15px}.footer-inner{padding:0 16px}.footer-col{min-width:100%}.footer-links{gap:16px}}.mini-calendar{margin:32px auto 0;max-width:380px;padding:20px 16px;background:var(--paper-strong);border:1px solid var(--rule);border-radius:var(--radius);text-align:center}.mini-calendar h3{font-size:1rem;margin:0 0 2px;color:var(--ink)}.mini-calendar .cal-subtitle{font-size:.8rem;color:var(--muted);margin:0 0 12px}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.cal-cell{aspect-ratio:1;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;color:#6b7280;background:#f3f4f6}[data-theme=dark] .cal-cell{background:#374151;color:#9ca3af}.cal-cell.head{background:none;font-weight:800;font-size:.7rem;color:var(--muted)}.cal-cell.empty{background:none}.cal-cell.today{background:var(--accent-gradient);color:#fff;transform:scale(1.08);box-shadow:0 2px 8px #6366f14d}.cal-cell.done{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.progress-bar-wrap{max-width:500px;margin:0 auto 16px}.progress-bar-meta{display:flex;justify-content:center;margin-bottom:6px}.progress-bar-label{font-size:12px;font-weight:700;color:var(--muted);letter-spacing:.02em;font-variant-numeric:tabular-nums}.progress-bar-track{height:8px;background:var(--rule);border-radius:4px;overflow:hidden}.progress-bar-fill{height:100%;width:0%;background:linear-gradient(90deg,#10b981,#6366f1,#8b5cf6);border-radius:4px;transition:width .4s ease}.progress-bar-fill.complete{background:linear-gradient(90deg,#10b981,#34d399)}.name-section{display:flex;flex-direction:column;align-items:center;gap:8px;margin-bottom:14px;min-height:0}.name-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;border:1px solid var(--rule);background:var(--tile);color:var(--muted);font-size:12px;font-weight:600;cursor:pointer;box-shadow:var(--shadow-sm);transition:border-color .15s ease,background-color .15s ease,color .15s ease}.name-chip:hover,.name-chip:focus-visible{border-color:var(--accent);color:var(--ink);background:var(--accent-light);outline:none}.name-chip-label{opacity:.7;text-transform:uppercase;letter-spacing:.04em;font-size:10px}.name-chip-value{color:var(--ink);font-weight:700;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.name-chip-edit{color:var(--accent);font-weight:700}.name-editor{width:min(100%,320px);padding:10px 12px;border-radius:12px;border:1px solid var(--rule);background:var(--tile);box-shadow:var(--shadow-sm)}.name-editor label{display:block;font-size:12px;color:var(--muted);margin-bottom:4px}.name-section.name-open .name-chip{border-color:var(--accent)}.victory-card{margin:0 0 18px;border:1px solid rgba(16,185,129,.25);border-radius:var(--radius);background:radial-gradient(ellipse 80% 60% at 50% 0%,rgba(16,185,129,.12),transparent),var(--tile);box-shadow:var(--shadow);overflow:hidden;animation:msgSlideIn .35s ease}.victory-card[hidden]{display:none!important}.victory-card-inner{padding:22px 18px 18px;text-align:center}.victory-emoji{font-size:32px;line-height:1;margin-bottom:6px}.victory-title{margin:0 0 14px;font-size:20px;font-weight:900;letter-spacing:-.03em;color:var(--ink)}.victory-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}.victory-stat{padding:10px 6px;border-radius:12px;background:var(--paper);border:1px solid var(--rule)}.victory-stat-value{display:block;font-family:var(--mono);font-size:18px;font-weight:800;color:var(--ink);font-variant-numeric:tabular-nums}.victory-stat-label{display:block;margin-top:2px;font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.victory-scoreline{margin:0 0 10px;font-size:14px;font-weight:700;color:var(--green)}.victory-chips{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-bottom:14px;min-height:0}.victory-chip{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:700;background:var(--accent-light);color:var(--accent);border:1px solid rgba(99,102,241,.15)}.victory-chip.streak{background:#f59e0b1f;color:#d97706;border-color:#f59e0b40}.victory-chip.assisted{background:var(--danger-light);color:var(--danger);border-color:#ef444433}.victory-countdown{display:flex;flex-direction:column;align-items:center;gap:2px;margin:0 0 16px;padding:12px;border-radius:14px;background:var(--paper);border:1px dashed var(--rule)}.victory-countdown-label{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.victory-countdown-time{font-family:var(--mono);font-size:28px;font-weight:800;letter-spacing:.04em;color:var(--ink);font-variant-numeric:tabular-nums;line-height:1.2}.victory-countdown-hint{font-size:11px;color:var(--muted-2)}.victory-share-preview{text-align:left}.victory-share-text{margin:0 0 10px;padding:12px 14px;border-radius:12px;background:var(--paper);border:1px solid var(--rule);font-family:var(--mono);font-size:12px;line-height:1.55;color:var(--ink);white-space:pre-wrap;word-break:break-word;max-height:180px;overflow:auto}.victory-share-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.victory-share-actions .share-twitter-btn{display:inline-flex;align-items:center;gap:6px;padding:10px 16px;border-radius:12px;font-size:13px;font-weight:700}.stats-card.collapsible-card{padding:0;overflow:hidden}.content-accordion{margin:0}.content-accordion>summary{list-style:none;cursor:pointer;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px;user-select:none}.content-accordion>summary::-webkit-details-marker{display:none}.content-accordion>summary h2{margin:0;font-size:17px;font-weight:800;letter-spacing:-.02em;flex:1}.content-accordion>summary:after{content:"";width:8px;height:8px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(45deg);transition:transform .2s ease;flex-shrink:0;margin-top:-4px}.content-accordion[open]>summary:after{transform:rotate(225deg);margin-top:4px}.content-accordion>summary:hover{background:var(--hover-bg)}.content-accordion>:not(summary){padding:0 20px 18px}.content-accordion .faq-content details{margin-bottom:6px}.word-row.row-pop{animation:rowPop .35s cubic-bezier(.2,.8,.2,1)}@keyframes rowPop{0%{opacity:0;transform:scale(.9) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}.tile.changed{background:var(--accent-light);color:var(--accent);border-color:#6366f159;box-shadow:0 0 0 1px #6366f11f}.key.used{background:color-mix(in srgb,var(--muted) 10%,var(--paper));color:var(--muted-2);border-color:transparent;opacity:.72}.skip-link{position:absolute;left:12px;top:-48px;z-index:100;padding:10px 14px;border-radius:10px;background:var(--accent-gradient);color:#fff;font-weight:700;font-size:13px;box-shadow:var(--shadow);transition:top .15s ease}.skip-link:focus{top:12px;outline:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button:focus:not(:focus-visible),a:focus:not(:focus-visible){outline:none}@media(prefers-reduced-motion:reduce){.word-row.row-pop,.tile.current,.route-word.current,.message,.victory-card,.confetti-piece{animation:none!important}.progress-bar-fill,.key,.submit-btn,.action-btn{transition:none!important}}
