@font-face{font-family:Courier Prime;font-style:normal;font-weight:400;font-display:swap;src:url(./courier-prime-latin-400-normal-BbyBr73r.woff2) format("woff2"),url(./courier-prime-latin-400-normal-BAlbUm6l.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--paper: #FFFDF7;--paper-edge: #F3E9D2;--desk: #F8F3E6;--desk-soft: #FFF8ED;--ink: #4A3B32;--ink-soft: #6B5A4C;--pen: #E85D75;--pen-soft: #FF8BA0;--chalk: #4A3B32;--pen-text: #B83A52;--btn-grad-start: #CE4159;--btn-grad-end: #B83A52;--card-radius: 24px;--card-shadow: 0 10px 24px rgba(140, 110, 80, .08), 0 4px 8px rgba(140, 110, 80, .04);--tile-shadow: 0 4px 12px rgba(180, 150, 120, .12);--btn-shadow: 0 6px 16px rgba(232, 93, 117, .25);--transition-quick: .16s cubic-bezier(.34, 1.56, .64, 1);--transition-normal: .28s cubic-bezier(.34, 1.56, .64, 1);--font-display: "Courier Prime", "Courier New", monospace;--font-body: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Comic Sans MS", sans-serif;--safe-top: 15vh;--safe-top: 15dvh}body{background:var(--desk);background-image:radial-gradient(var(--paper-edge) 1.5px,transparent 1.5px),radial-gradient(var(--paper-edge) 1.5px,var(--desk) 1.5px);background-size:24px 24px;background-position:0 0,12px 12px;color:var(--ink);margin:0;padding:0}#app{font-family:var(--font-body);color:var(--ink);-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none}.screen{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;justify-content:safe center;padding:calc(18px + env(safe-area-inset-top)) 20px calc(18px + env(safe-area-inset-bottom));overflow-y:auto;-webkit-overflow-scrolling:touch;box-sizing:border-box}.title-screen{text-align:center}.title-stage{display:flex;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:380px}.title-mascot{margin-bottom:2px}.title-logo{font-family:var(--font-display);font-size:clamp(42px,12vw,66px);font-weight:700;color:var(--pen-text);letter-spacing:.02em;line-height:1.05;margin:0;transform:rotate(-2deg);text-shadow:0 2px 0 #FFFFFF,0 4px 0 var(--paper-edge),0 5px 0 #E4D5B4,0 10px 16px rgba(150,110,70,.28)}.title-rule{width:min(230px,68%);height:7px;border-radius:6px;background:linear-gradient(90deg,transparent,var(--pen) 12%,var(--pen) 88%,transparent);transform:rotate(-1.4deg);margin-top:-6px;opacity:.9}.title-rules{font-size:clamp(14px,3.8vw,17px);color:var(--ink-soft);line-height:1.55;max-width:320px;background:var(--paper);padding:12px 18px;border-radius:18px;border:2px solid var(--paper-edge);box-shadow:0 4px #bea57d4d,var(--tile-shadow);margin:0}.title-tally{display:inline-flex;align-items:center;gap:6px;background:var(--paper);border:2px solid var(--paper-edge);border-radius:20px;padding:4px 16px 4px 10px;box-shadow:0 3px #bea57d59}.title-actions{display:flex;flex-direction:column;align-items:stretch;gap:10px;width:100%;max-width:280px;margin-top:4px}.btn-game{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:12px 28px;font-family:var(--font-display);font-size:clamp(17px,4.4vw,21px);font-weight:700;letter-spacing:.02em;border:3px solid #FFFFFF;border-radius:26px;cursor:pointer;overflow:hidden;transition:transform .12s ease,box-shadow .12s ease;-webkit-tap-highlight-color:transparent}.btn-game:before{border-radius:20px 20px 60% 60%}.btn-game-primary{color:#fff;background:linear-gradient(180deg,var(--btn-grad-start),var(--btn-grad-end));box-shadow:0 5px #8e2a3e,0 9px 18px #78283c42}.btn-game-secondary{color:var(--ink);background:linear-gradient(180deg,#fff,#f5e9d2);box-shadow:0 5px #d8c6a2,0 9px 16px #a0825a33}.btn-primary{display:inline-flex;align-items:center;justify-content:center;min-height:52px;min-width:170px;padding:14px 34px;font-family:var(--font-display);font-size:clamp(17px,4.2vw,21px);font-weight:700;color:#fff;background:linear-gradient(135deg,var(--btn-grad-start),var(--btn-grad-end));border:2px solid #FFF;border-radius:26px;box-shadow:var(--btn-shadow);cursor:pointer;transition:transform var(--transition-quick),box-shadow var(--transition-quick);-webkit-tap-highlight-color:transparent}.btn-primary:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 8px 20px #e85d7559}.btn-primary:active{transform:translateY(1px) scale(.98);box-shadow:0 4px 10px #e85d7533}.btn-primary:focus-visible{outline:3px solid var(--pen);outline-offset:3px}.btn-text{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:8px 20px;font-family:var(--font-body);font-size:clamp(14px,3.8vw,16px);font-weight:600;color:var(--ink-soft);background:var(--paper);border:2px solid var(--paper-edge);border-radius:20px;cursor:pointer;transition:color var(--transition-quick),border-color var(--transition-quick),transform var(--transition-quick);box-shadow:0 2px 6px #0000000a;-webkit-tap-highlight-color:transparent}.btn-text:hover{color:var(--pen-text);border-color:var(--pen-soft);transform:translateY(-1px)}.btn-text:focus-visible{outline:2px solid var(--pen);outline-offset:2px}.card{background:var(--paper);border:3px solid var(--paper-edge);border-radius:var(--card-radius);box-shadow:var(--card-shadow);padding:24px 20px 20px;max-width:440px;width:calc(100% - 32px);position:relative;background-image:radial-gradient(var(--paper-edge) 1px,transparent 1px);background-size:16px 16px;background-position:8px 8px}.card-sentence{display:flex;flex-wrap:wrap;gap:6px;padding-top:8px}.word{display:inline-flex;align-items:center;justify-content:center;min-height:48px;min-width:44px;padding:6px 10px;font-family:var(--font-body);font-size:clamp(20px,5.2vw,32px);font-weight:600;line-height:1.5;letter-spacing:.01em;color:var(--ink);background:#ffffffb3;border:1.5px solid transparent;border-radius:12px;cursor:pointer;position:relative;transition:background-color var(--transition-quick),border-color var(--transition-quick),color var(--transition-quick),transform var(--transition-quick),box-shadow var(--transition-quick),opacity var(--transition-quick);-webkit-tap-highlight-color:transparent}.word:hover{background:#fff;border-color:var(--paper-edge);transform:translateY(-1px);box-shadow:0 3px 8px #0000000d}.word:focus-visible{outline:2px solid var(--pen);outline-offset:1px}.word.assist{transform:translateY(calc(-1 * var(--assist-lift, 2px)));transition:transform var(--assist-ms, .2s) cubic-bezier(.34,1.56,.64,1)}.word.ruled-out{opacity:.35;pointer-events:none;text-decoration:line-through;text-decoration-thickness:2px;text-decoration-color:var(--ink-soft);background:transparent}.word.marked{color:var(--pen);font-weight:700;background:#fff0f3;border-color:var(--pen-soft);pointer-events:none}.word.revealed{color:var(--pen);pointer-events:none;font-weight:700;background:#fff0f3;border-color:var(--pen-soft)}@media(max-width:380px){.word{font-size:clamp(15px,4.4vw,20px);padding:4px 6px;line-height:1.25}.card{padding:14px 12px 12px}.card-sentence{gap:5px;padding-top:4px}.game-header{margin-bottom:6px;gap:4px}.page-dots{margin-bottom:8px}}@media(orientation:landscape)and (max-height:560px){.game-screen .game-header{margin-bottom:4px;gap:2px}.game-screen .cute-mascot{width:40px!important;height:40px!important}.game-screen .page-dots{margin-bottom:4px}.game-screen .card{max-width:min(820px,100%);padding:12px 16px 10px}.game-screen .word{font-size:clamp(17px,2.8vw,24px)}.game-screen .pen-line-track{max-width:min(820px,100%);margin-top:10px}.title-stage{gap:8px}.title-mascot .cute-mascot{width:62px!important;height:62px!important}.title-logo{font-size:clamp(30px,7vw,44px)}.title-rules{padding:8px 16px;font-size:14px}.title-actions{flex-direction:row;max-width:460px}.btn-game{min-height:48px;flex:1 1 0}}@media(orientation:landscape)and (max-height:400px){.title-mascot .cute-mascot{width:48px!important;height:48px!important}.title-logo{font-size:clamp(26px,5.5vw,34px)}.title-rule{display:none}.title-rules{padding:5px 14px;font-size:12px;line-height:1.35;max-width:100%}.title-stage{gap:6px}.title-tally,.levels-tally{padding:2px 12px 2px 8px}.levels-crown .cute-mascot{width:34px!important;height:34px!important}}.pen-line-track{width:100%;max-width:440px;height:6px;background:var(--paper-edge);border-radius:10px;margin-top:16px;position:relative;overflow:hidden}.pen-line-fill{position:absolute;left:0;top:0;width:100%;height:100%;background:linear-gradient(90deg,var(--pen-soft),var(--pen));border-radius:10px;transform:scaleX(1);transform-origin:left center;will-change:transform}.pen-line-fill.urgent{background:var(--pen);box-shadow:0 0 8px var(--pen-soft)}.page-dots{display:flex;gap:8px;align-items:center;justify-content:center;margin-bottom:14px}.page-dot{width:10px;height:10px;border-radius:50%;background:var(--paper-edge);transition:background-color var(--transition-quick),border-color var(--transition-quick),transform var(--transition-quick)}.page-dot.correct{background:var(--pen);box-shadow:0 0 6px #e85d7566;transform:scale(1.1)}.page-dot.missed{background:var(--paper);border:2px solid var(--ink-soft);position:relative}.page-dot.missed:after{content:"";position:absolute;top:50%;left:0;right:0;height:2px;background:var(--ink-soft);transform:rotate(-45deg)}.page-dot.current{background:var(--ink);transform:scale(1.2)}.result-screen{gap:12px;padding-bottom:calc(18px + env(safe-area-inset-bottom))}.result-card{background:var(--paper);border:3px solid var(--paper-edge);border-radius:28px;box-shadow:var(--card-shadow);padding:20px 20px 16px;max-width:440px;width:calc(100% - 32px);text-align:center;position:relative;display:flex;flex-direction:column;flex:0 1 auto;min-height:0}.result-header-block{display:flex;flex-direction:column;align-items:center;gap:6px;margin-bottom:12px}.result-mascot-inline{position:relative;margin-bottom:4px}.result-page-title{font-family:var(--font-display);font-size:clamp(22px,5.5vw,28px);font-weight:700;color:var(--pen);margin:0}.result-nibs{display:flex;gap:12px;align-items:center;justify-content:center;margin-bottom:14px}.nib{width:30px;height:30px;color:var(--pen);opacity:.2;transition:opacity .3s cubic-bezier(.34,1.56,.64,1),transform .3s cubic-bezier(.34,1.56,.64,1),filter .3s cubic-bezier(.34,1.56,.64,1)}.nib.earned{opacity:1;transform:scale(1.18);filter:drop-shadow(0 3px 6px rgba(232,93,117,.35))}.result-score-badge{display:inline-flex;align-items:center;gap:6px;background:var(--desk-soft);border:2px solid var(--paper-edge);padding:6px 20px;border-radius:20px;font-family:var(--font-display);font-weight:700;font-size:clamp(16px,4vw,20px);color:var(--ink);margin-bottom:16px;box-shadow:0 3px 8px #00000008}.result-score-badge .score-star{font-size:19px}.result-score-badge .score-num{color:var(--pen-text)}.result-score-badge .score-unit{font-size:13px;color:var(--ink-soft);text-transform:uppercase}.result-words{text-align:left;margin-bottom:0;background:#fff8fa;border:2px solid var(--pen-soft);padding:12px 14px;border-radius:20px;box-shadow:inset 0 2px 4px #e85d750d;display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.result-words-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;border-bottom:1.5px dashed var(--paper-edge);padding-bottom:8px}.result-words-title{font-size:13px;font-weight:700;color:var(--pen-text);text-transform:uppercase;letter-spacing:.06em}.result-mistakes-count{font-size:12px;font-weight:700;color:var(--ink-soft);background:var(--paper);border:1px solid var(--paper-edge);padding:2px 10px;border-radius:12px}.result-words-list{display:flex;flex-direction:column;gap:8px;flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-right:4px;scrollbar-width:thin;scrollbar-color:var(--pen-soft) transparent}.result-words-list::-webkit-scrollbar{width:5px}.result-words-list::-webkit-scrollbar-thumb{background:var(--pen-soft);border-radius:3px}.result-word-row{display:flex;align-items:center;justify-content:space-between;gap:6px;background:#fff;border:1.5px solid var(--paper-edge);padding:8px 12px;border-radius:16px;box-shadow:0 2px 6px #00000005}.word-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:12px;font-family:var(--font-display);font-size:clamp(13px,3.6vw,15px);font-weight:700;line-height:1.2}.word-pill.bad-pill{background:#fff0f3;color:#a82a22;border:1px solid #FFA8B6;text-decoration:line-through;text-decoration-thickness:1.5px}.word-pill.fixed-pill{background:#f2f9f3;color:#1f6e3c;border:1px solid #B8E4C3;font-weight:700}.word-arrow{color:var(--ink-soft);font-size:14px;opacity:.6}.result-perfect-card{background:#f2f9f3;border:2px solid #B8E4C3;padding:16px 18px;border-radius:20px;margin-bottom:14px;text-align:center}.perfect-title{font-family:var(--font-display);font-size:17px;font-weight:700;color:#1f6e3c;margin-bottom:4px}.perfect-sub{font-size:13px;color:var(--ink-soft);line-height:1.4}.result-summary{display:flex;flex-direction:column;align-items:center}.result-header-block,.result-summary,.result-nibs,.result-score-badge,.result-perfect-card,.endless-note{flex:0 0 auto}@media(max-height:720px){.result-card .result-mascot-inline .cute-mascot{width:58px!important;height:58px!important}.result-header-block{margin-bottom:4px;gap:2px}.result-summary{flex-direction:row;justify-content:center;align-items:center;gap:14px;margin-bottom:8px}.result-nibs,.result-score-badge{margin-bottom:0}.result-nibs{gap:8px}.nib{width:25px;height:25px}.result-words-header{margin-bottom:6px;padding-bottom:5px}.result-actions{gap:6px}.result-actions .btn-primary,.result-actions .btn-text{min-height:46px;padding-top:8px;padding-bottom:8px}}.result-actions{display:flex;flex-direction:column;align-items:center;gap:8px;width:100%;max-width:300px;flex:0 0 auto}@media(orientation:landscape)and (max-height:560px){.result-card-page{display:grid;max-width:780px;width:calc(100% - 24px);grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);grid-template-areas:"head    words" "summary words";grid-template-rows:minmax(0,auto) minmax(0,1fr);align-items:center;column-gap:18px;row-gap:2px;padding:14px 16px}.result-card-page .result-header-block{grid-area:head;margin-bottom:2px}.result-card-page .result-summary{grid-area:summary;margin-bottom:0}.result-card-page .result-words,.result-card-page .result-perfect-card{grid-area:words;align-self:stretch}.result-card-page .result-mascot-inline .cute-mascot{width:54px!important;height:54px!important}.result-actions{flex-direction:row;max-width:460px}}.levels-screen{justify-content:flex-start!important;align-items:center;padding:calc(12px + env(safe-area-inset-top)) 14px calc(14px + env(safe-area-inset-bottom));gap:0;overflow:hidden}.levels-crown{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:100%;min-height:calc(var(--safe-top) - 4px)}.levels-inner{width:100%;max-width:460px;margin:0 auto;flex:1 1 auto;min-height:0;display:flex;flex-direction:column;align-items:center}.levels-scroll{flex:1 1 auto;min-height:0;width:100%;display:flex;flex-direction:column;justify-content:center;justify-content:safe center;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:2px 2px 6px;scrollbar-width:thin;scrollbar-color:var(--paper-edge) transparent}.levels-scroll::-webkit-scrollbar{width:6px}.levels-scroll::-webkit-scrollbar-thumb{background:var(--paper-edge);border-radius:3px}.levels-pager{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;margin-bottom:10px}.levels-title-wrap{flex:1 1 auto;text-align:center;min-width:0}.levels-title{font-family:var(--font-display);font-size:clamp(20px,5.6vw,28px);font-weight:700;color:var(--pen-text);line-height:1.1;margin:0;text-shadow:0 2px 0 #FFFFFF}.chapter-stamp{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;margin-left:8px;vertical-align:middle;font-size:15px;color:#fff;background:linear-gradient(180deg,#5fbf48,#3e9130);border:2px solid #FFFFFF;border-radius:50%;box-shadow:0 2px #2a6621;text-shadow:none}.levels-subtitle{font-size:clamp(12px,3.4vw,14px);font-weight:700;color:var(--ink-soft);letter-spacing:.03em;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-arrow,.round-btn{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border-radius:50%;border:3px solid #FFFFFF;color:#fff;cursor:pointer;padding:0;position:relative;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease;-webkit-tap-highlight-color:transparent}.nav-arrow svg,.round-btn svg{width:48%;height:48%;fill:currentColor}.nav-arrow:before,.round-btn:before,.level-tile:before,.btn-game:before{content:"";position:absolute;left:12%;right:12%;top:6%;height:34%;border-radius:50%;background:linear-gradient(180deg,#ffffff8c,#fff0);pointer-events:none}.nav-arrow{width:50px;height:50px;background:linear-gradient(180deg,#4fa83a,#35812a);box-shadow:0 4px #2a6621,0 7px 12px #28501e3d}.nav-arrow:active:not([disabled]),.round-btn:active:not([disabled]),.level-tile:active:not([disabled]),.btn-game:active:not([disabled]){transform:translateY(4px);box-shadow:0 1px #00000047,0 3px 7px #0000002e}.nav-arrow[disabled],.round-btn[disabled]{filter:grayscale(.7);opacity:.45;cursor:default}.nav-arrow:focus-visible,.round-btn:focus-visible,.level-tile:focus-visible,.btn-game:focus-visible{outline:3px solid var(--pen-text);outline-offset:3px}.levels-tally{display:inline-flex;align-items:center;gap:6px;background:var(--paper);border:2px solid var(--paper-edge);border-radius:20px;padding:4px 16px 4px 10px;box-shadow:0 3px #bea57d59;margin-bottom:14px}.tally-nib{width:22px;height:22px;color:var(--pen);opacity:1}.tally-text{font-family:var(--font-display);font-size:clamp(15px,4.2vw,18px);font-weight:700;color:var(--ink)}.level-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;width:100%}.level-tile{position:relative;aspect-ratio:1 / 1;min-height:62px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:0;border:3px solid #FFFFFF;border-radius:18px;background:linear-gradient(180deg,#ffc061,#f5a03a);box-shadow:0 5px #d9820f,0 8px 14px #96641e38;cursor:pointer;overflow:hidden;transition:transform .12s ease,box-shadow .12s ease;-webkit-tap-highlight-color:transparent}.level-tile:before{border-radius:14px 14px 60% 60%}.level-face{position:relative;font-family:var(--font-display);font-size:clamp(20px,5.6vw,29px);font-weight:700;line-height:1;color:#4a2e12;text-shadow:0 1px 0 rgba(255,255,255,.45)}.level-face .icon-lock{display:block;width:clamp(20px,5.4vw,26px);height:clamp(20px,5.4vw,26px);fill:#6b5a44}.level-nibs{position:relative;display:flex;gap:3px;align-items:center;justify-content:center;margin-top:3px}.level-nibs .nib{width:14px;height:14px;color:#a2660f;opacity:.5;transition:opacity .2s ease,transform .2s ease}.level-nibs .nib.earned{color:var(--pen-text);opacity:1;transform:scale(1.2);filter:drop-shadow(0 1px 0 rgba(255,255,255,.6))}.level-tile.locked{background:linear-gradient(180deg,#efe2c6,#e3d2ae);box-shadow:0 5px #bfa97f,0 8px 14px #96825a2e;cursor:default}.level-tile.locked .level-nibs .nib{color:#8a7a5e;opacity:.35}.levels-note{font-size:13px;line-height:1.5;color:var(--ink-soft);text-align:center;max-width:320px;margin:14px auto 0}.levels-bottom{flex:0 0 auto;width:100%;max-width:460px;margin:12px auto 0;display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.round-btn{width:58px;height:58px;background:linear-gradient(180deg,var(--btn-grad-start),var(--btn-grad-end));box-shadow:0 5px #8e2a3e,0 8px 14px #78283c3d}.levels-extra{display:flex;flex-direction:column;align-items:flex-end;gap:5px}.levels-extra-label{font-size:11px;font-weight:700;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.06em}.levels-extra-row{display:flex;gap:10px}.round-btn-extra{width:52px;height:52px;background:linear-gradient(180deg,#f2a93c,#de8412);box-shadow:0 5px #b36808,0 8px 14px #96641e38}.pull-tab{position:fixed;bottom:calc(14px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%);width:52px;height:52px;display:flex;align-items:center;justify-content:center;background:var(--paper);border:2px solid var(--paper-edge);border-radius:50%;box-shadow:0 4px 12px #0000001a;cursor:pointer;z-index:100;transition:transform var(--transition-quick);-webkit-tap-highlight-color:transparent}.pull-tab:hover{transform:translate(-50%) scale(1.08)}.pull-tab-line{width:24px;height:4px;background:var(--pen);border-radius:2px}.tab-sheet{position:fixed;inset:0;background:#4a3b3266;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:flex-end;justify-content:center;z-index:200;opacity:0;pointer-events:none;transition:opacity .2s ease}.tab-sheet.open{opacity:1;pointer-events:auto}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.tab-sheet{background:#4a3b328c}}.tab-sheet-content{background:var(--paper);border-radius:28px 28px 0 0;border-top:3px solid var(--paper-edge);padding:26px 22px calc(38px + env(safe-area-inset-bottom));max-height:86dvh;overflow-y:auto;-webkit-overflow-scrolling:touch;width:100%;max-width:400px;display:flex;flex-direction:column;gap:8px;transform:translateY(100%);transition:transform .25s cubic-bezier(.34,1.56,.64,1)}.tab-sheet.open .tab-sheet-content{transform:translateY(0)}.tab-sheet-grip{width:46px;height:5px;border-radius:3px;background:var(--paper-edge);margin:-8px auto 4px}.tab-sheet-heading{font-family:var(--font-display);font-size:clamp(19px,5vw,23px);font-weight:700;color:var(--pen-text);text-align:center;margin:0 0 6px;text-shadow:0 2px 0 #FFFFFF}.tab-sheet-item{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:54px;padding:12px 18px;font-family:var(--font-display);font-size:17px;font-weight:700;color:var(--ink);background:linear-gradient(180deg,#fff,#f6ebd6);border:3px solid #FFFFFF;border-radius:18px;box-shadow:0 4px #dccaa6,0 7px 12px #a0825a29;width:100%;cursor:pointer;text-align:left;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease;-webkit-tap-highlight-color:transparent}.tab-sheet-item-primary{color:#fff;background:linear-gradient(180deg,var(--btn-grad-start),var(--btn-grad-end));box-shadow:0 4px #8e2a3e,0 7px 12px #78283c38}.tab-sheet-item:active:not([disabled]){transform:translateY(3px);box-shadow:0 1px #00000038,0 2px 6px #00000024}.tab-sheet-item:focus-visible{outline:3px solid var(--pen-text);outline-offset:2px}.endless-title{font-family:var(--font-display);font-size:clamp(18px,4.6vw,22px);font-weight:700;color:var(--pen-text);margin:0}.endless-status{font-size:14px;font-weight:700;color:var(--ink-soft);letter-spacing:.04em}.endless-back{margin-top:18px}.endless-note{font-size:12px;line-height:1.4;color:var(--ink-soft);margin-top:10px}.finale-screen{text-align:center;gap:18px}.finale-title{font-family:var(--font-display);font-size:clamp(26px,6vw,38px);font-weight:700;color:var(--pen)}.finale-sub{font-size:clamp(15px,4vw,18px);color:var(--ink-soft);line-height:1.6}.fade-in{animation:fadeIn var(--transition-quick) ease both}@keyframes fadeIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.slide-up{animation:slideUp .3s cubic-bezier(.34,1.56,.64,1) both}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.slide-away{animation:slideAway .2s ease both}@keyframes slideAway{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-30px)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.slide-away{animation:fadeOut .12s ease both}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}}.tab-sheet-section-label{font-size:12px;font-weight:700;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.06em;padding:10px 4px 2px}.tab-sheet-toggle{justify-content:space-between}.tab-sheet-toggle .toggle-state{font-family:var(--font-display);font-size:14px;font-weight:700;color:var(--ink-soft);background:linear-gradient(180deg,#f0e4cc,#e2d2b2);border:2px solid #FFFFFF;border-radius:14px;padding:3px 14px;min-width:58px;text-align:center;box-shadow:0 3px #b49b7380;transition:background .14s ease,color .14s ease,box-shadow .14s ease}.tab-sheet-toggle.is-on .toggle-state{color:#fff;background:linear-gradient(180deg,#5fbf48,#3e9130);box-shadow:0 3px #2a6621}.tab-sheet-toggle[disabled]{filter:grayscale(.6);opacity:.5;cursor:default}.tab-sheet-note{font-size:12px;line-height:1.4;color:var(--ink-soft);padding:2px 4px 0}.tab-sheet-note[hidden]{display:none}body.is-paused *,body.is-paused *:before,body.is-paused *:after{animation-play-state:paused!important}body.is-paused #app{pointer-events:none}.ready-beat{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);padding:14px 34px;font-family:var(--font-display);font-size:clamp(20px,6vw,28px);font-weight:700;color:var(--pen);background:var(--paper);border:3px solid var(--paper-edge);border-radius:22px;box-shadow:var(--card-shadow);z-index:300;pointer-events:none}.game-header{display:flex;flex-direction:column;align-items:center;gap:8px;margin-bottom:12px;width:100%}.game-mascot-holder{display:flex;justify-content:center;margin:0 auto;transition:transform .2s cubic-bezier(.34,1.56,.64,1)}.mascot-wrapper{display:inline-flex;align-items:center;justify-content:center;position:relative;flex-shrink:0}.mascot-cheer,.mascot-tilt{display:inline-flex;align-items:center;justify-content:center}.cheer-jump{animation:cheerJumpKeyframe .45s cubic-bezier(.34,1.56,.64,1)}@keyframes cheerJumpKeyframe{0%{transform:translateY(0) scale(1)}40%{transform:translateY(-16px) scale(1.15)}70%{transform:translateY(2px) scale(.95)}to{transform:translateY(0) scale(1)}}.mascot-eyes{transform-box:fill-box;transform-origin:center;animation:eyeBlink 4s ease-in-out infinite}@keyframes eyeBlink{0%,94%,to{transform:scaleY(1)}97%{transform:scaleY(.1)}}.mascot-sparkle{transform-box:fill-box;transform-origin:center;animation:sparkleTwinkle 2.5s ease-in-out infinite alternate}@keyframes sparkleTwinkle{0%{transform:scale(.85) rotate(-6deg);opacity:.7}to{transform:scale(1.1) rotate(6deg);opacity:1}}.cute-mascot{display:block;animation:mascotFloat 3s ease-in-out infinite alternate}@keyframes mascotFloat{0%{transform:translateY(0) rotate(-.6deg)}to{transform:translateY(-3px) rotate(.6deg)}}.mascot-bubble-anchor{position:absolute;bottom:calc(100% + 4px);left:50%;transform:translate(-50%);z-index:20;pointer-events:none}.mascot-speech-bubble{white-space:nowrap;max-width:calc(100vw - 32px);overflow:hidden;text-overflow:ellipsis;background:var(--paper);color:var(--ink);border:2px solid var(--paper-edge);padding:4px 12px;border-radius:16px;font-family:var(--font-body);font-size:12px;font-weight:700;box-shadow:0 4px 12px #8c6e5024;pointer-events:none;position:relative}.mascot-speech-bubble[hidden]{display:none}.mascot-speech-bubble.pop{animation:bubblePop .3s cubic-bezier(.34,1.56,.64,1) both}.mascot-speech-bubble:before{content:"";position:absolute;bottom:-5px;left:50%;margin-left:-4px;width:7px;height:7px;background:var(--paper);border-right:2px solid var(--paper-edge);border-bottom:2px solid var(--paper-edge);transform:rotate(45deg)}@keyframes bubblePop{0%{transform:scale(.6) translateY(6px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.visually-hidden{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}@media(prefers-contrast:more){.word{border-color:var(--ink)}.word.marked,.word.revealed{border-color:var(--pen-text);border-width:3px}.word.ruled-out{opacity:.6;border-style:dashed;border-color:var(--ink-soft)}.page-dot{border:2px solid var(--ink)}}@media(forced-colors:active){.word{border:2px solid ButtonBorder;forced-color-adjust:none;background:ButtonFace;color:ButtonText}.word.marked,.word.revealed{border:3px solid Highlight;color:Highlight}.word.ruled-out{border-style:dashed;color:GrayText}.pen-line-fill{background:Highlight}.page-dot{border:2px solid ButtonBorder}.page-dot.correct{background:Highlight}.tab-sheet-toggle.is-on .toggle-state{background:Highlight;color:HighlightText}}.debug-overlay{position:fixed;top:4px;left:4px;font-family:monospace;font-size:11px;color:var(--ink-soft);background:var(--paper);border:1px solid var(--paper-edge);padding:4px 8px;border-radius:8px;pointer-events:none;z-index:9999;line-height:1.4}
