@font-face{font-family:Google Sans;font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/google-sans-latin.woff2) format("woff2");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+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{font-family:Google Sans,Segoe UI,Arial,sans-serif;font-weight:450;font-optical-sizing:auto;color:#202124;background:#f8fafd;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--blue:#1a73e8;--muted:#5f6368;--border:#e3e7ed;--mono:"Consolas","SFMono-Regular",monospace;color-scheme:light}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden}body{overscroll-behavior:none}button,input,select{font:inherit;color:inherit}button{cursor:pointer;border:0;touch-action:manipulation}button,select,input{-webkit-tap-highlight-color:transparent}button:disabled{cursor:default;opacity:.45}button:focus-visible,select:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid #8ab4f8;outline-offset:3px}button:hover:not(:disabled){filter:brightness(.96)}[hidden]{display:none!important}::selection{background:#d2e3fc}.icon{width:20px;height:20px;flex-shrink:0}.app-header{display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:baseline;font-size:33px;font-weight:600;letter-spacing:-1.4px;text-decoration:none}.brand span:nth-child(4n+1){color:#4285f4}.brand span:nth-child(4n+2){color:#ea4335}.brand span:nth-child(4n+3){color:#f9ab00}.brand span:nth-child(4n){color:#34a853}.brand-dot{width:7px;height:7px;border-radius:50%;background:#4285f4;margin-left:3px}.header-actions{display:flex;align-items:center;gap:14px}.developer-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:8px 12px;border:1px solid #dadce0;border-radius:22px;background:#fff;color:#1967d2;font-size:14px;font-weight:550;white-space:nowrap}.developer-profile{text-align:center;padding:5px 12px 12px}.developer-avatar{display:grid;place-items:center;width:62px;height:62px;margin:0 auto 16px;border-radius:20px;background:#e8f0fe;color:#1967d2}.developer-avatar .icon{width:29px;height:29px}.developer-profile h3{margin:0;font-size:25px;font-weight:550;letter-spacing:-.5px}.developer-contacts{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;margin:8px 0}.developer-contacts a{padding:10px 17px;border:1px solid #dadce0;border-radius:24px;color:#1967d2;font-size:14px;font-weight:550;text-decoration:none;overflow-wrap:anywhere}.developer-contacts a:hover{background:#e8f0fe}@media(max-height:480px){.developer-profile{padding:0 12px 4px}.developer-avatar{width:48px;height:48px;margin-bottom:12px}}.language-switch{display:flex;background:#eaf0fa;border-radius:24px;padding:4px;gap:2px}.language-switch button{border-radius:20px;padding:7px 12px;background:transparent;color:#5f6368;font-size:14px;font-weight:600}.language-switch .active{color:#1967d2;background:#fff;box-shadow:0 1px 3px #3c404320}.icon-button{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:transparent;color:#5f6368;padding:0}.icon-button:hover:not(:disabled){background:#e8f0fe}.metric.blue{background:#e8f0fe;color:#1967d2}.metric.green{background:#e6f4ea;color:#137333}.metric.yellow{background:#fef7e0;color:#875400}.metric.red{background:#fce8e6;color:#b3261e}.method-switch{display:flex;gap:4px;padding:4px;border-radius:24px;background:#f1f3f4}.method-switch button{border-radius:20px;background:transparent;padding:8px 20px;font-size:15px;font-weight:550;white-space:nowrap;color:#5f6368}.method-switch .active{background:#d3e3fd;color:#1967d2}.method-switch .active:disabled{opacity:1}.settings-button{display:flex;align-items:center;gap:7px;border:1px solid #dadce0;background:#fff;border-radius:20px;padding:7px 13px;font-size:14px;color:#3c4043}.settings-button .icon{width:16px;height:16px}.finish-button{color:#5f6368;background:transparent;padding:7px 8px;font-size:14px;border-radius:16px}.arena{min-height:0;position:relative;isolation:isolate}#game-canvas{width:100%;height:100%;display:block}.run-meta time{font-variant-numeric:tabular-nums;font-weight:600;color:#3c4043}.meta-divider{color:#bdc1c6}.strike-caption{position:absolute;bottom:5px;left:0;right:0;text-align:center;font-size:12px;color:#80868b;pointer-events:none}.arena[data-method=rhythm] .strike-caption{color:#1967d2}.game-overlay{position:absolute;inset:0;z-index:2;display:grid;place-items:center;background:radial-gradient(ellipse at center,#fffffffc 12%,#ffffffeb 38%,#ffffff20 88%)}.arena{container-type:size;container-name:arena}.arena:not([data-phase=running]) .strike-caption{visibility:hidden}.arena[data-phase=paused] .game-overlay,.arena[data-phase=gameover] .game-overlay{background:#ffffffed}.overlay-card{display:flex;flex-direction:column;align-items:center;text-align:center;width:min(560px,100%);padding:16px 24px}.color-dots{display:flex;gap:9px;margin-bottom:18px}.color-dots i{width:11px;height:11px;border-radius:50%;background:#4285f4}.color-dots i:nth-child(2){background:#ea4335}.color-dots i:nth-child(3){background:#fbbc04}.color-dots i:nth-child(4){background:#34a853}.overlay-card h1,.overlay-card h2{margin:0;font-size:clamp(31px,3.6vw,46px);font-weight:550;line-height:1.15;letter-spacing:-1.4px}.overlay-card>p{font-size:15px;line-height:1.6;color:#5f6368;margin:14px 0 23px;max-width:360px}.overlay-card>small{font-size:13px;color:#80868b;margin-top:16px}.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:22px;border-radius:28px;padding:12px 22px;min-width:172px;background:#1a73e8;color:#fff;font-size:15px;font-weight:600;box-shadow:0 2px 5px #1a73e820}.primary-button .icon{width:17px;height:17px}.secondary-button{padding:11px 17px;border:1px solid #dadce0;border-radius:24px;background:#fff;color:#1967d2;font-size:14px}.text-button{margin-top:13px;padding:4px 8px;font-size:14px;color:#1967d2;background:transparent;border-radius:12px}.countdown-card>p{margin:0 0 8px}.countdown-card>strong{font-size:87px;font-weight:450;line-height:1;color:#4285f4}.judgment{position:absolute;bottom:37px;left:50%;z-index:3;transform:translate(-50%);font-size:15px;font-weight:600;color:#137333;opacity:0;pointer-events:none;white-space:nowrap}.judgment.miss{color:#b3261e}.board-footer b{color:#5f6368;font-variant-numeric:tabular-nums;font-weight:550;margin-left:4px}.result-card{max-width:570px}.result-grade{font-size:12px;color:#137333;border-radius:12px;padding:4px 10px;background:#e6f4ea;margin-bottom:10px}.result-card h2{font-size:31px}.result-summary{display:grid;grid-template-columns:repeat(3,1fr);width:100%;margin-top:20px}.result-summary>div+div{border-left:1px solid #e8eaed}.result-summary strong{font-size:32px;font-weight:550;color:#3c4043;font-variant-numeric:tabular-nums}.result-summary>div:first-child strong{color:#1967d2}.result-summary em{font-size:17px;font-style:normal}.result-summary span{display:block;font-size:13px;color:#5f6368;margin-top:3px}.result-counts{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:14px;font-size:13px;color:#5f6368;margin-top:15px}.result-card .coaching{font-size:14px;margin:12px 0 18px;max-width:410px}.result-actions{display:flex;align-items:center;gap:10px}dialog{width:min(610px,calc(100vw - 28px));max-height:calc(100dvh - 28px);overflow:auto;color:#202124;background:#fff;border:1px solid #e3e7ed;border-radius:24px;padding:26px;box-shadow:0 20px 80px #3c404330;scrollbar-width:thin;scrollbar-color:#bdc1c6 white}dialog::backdrop{background:#20212470}.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px}.dialog-heading h2{margin:0;font-size:25px;font-weight:550;letter-spacing:-.5px}.close-button{font-size:27px;flex-shrink:0}#dialog-body p{font-size:15px;line-height:1.7;color:#5f6368;margin:12px 0}#dialog-body small{font-size:13px;line-height:1.6;color:#80868b}hr{border:0;border-top:1px solid #e8eaed;margin:18px 0}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.settings-grid label,#custom-field{display:flex;flex-direction:column;gap:8px;font-size:15px;color:#3c4043}.settings-grid select,#custom-keys{width:100%;border:1px solid #dadce0;border-radius:10px;padding:11px 12px;background:#f8fafd;font-size:15px;min-width:0}.settings-grid .checkbox-label{flex-direction:row;align-items:center;gap:9px;line-height:1.5;padding-top:18px}.checkbox-label input{width:17px;height:17px;accent-color:#1a73e8;flex-shrink:0}#custom-field{margin-top:18px}.settings-note{margin:20px 0!important;font-size:14px!important}.analysis-metrics{display:grid;grid-template-columns:1fr 1fr;background:#f8fafd;border:1px solid #e8eaed;border-radius:12px;overflow:hidden}.analysis-metrics>div{padding:12px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid #e8eaed}.analysis-metrics span{font-size:13px;color:#5f6368}.analysis-metrics b{font-size:15px;font-weight:550;text-align:right}.key-table{width:100%;border-collapse:collapse;margin-top:16px;font-size:14px}.key-table th,.key-table td{text-align:right;padding:8px 10px;border-bottom:1px solid #e8eaed;font-weight:450}.key-table th:first-child{text-align:left;color:#1967d2}.key-table thead th{font-size:13px;color:#5f6368}.metric-definitions{border-top:1px solid #e8eaed;margin-top:18px;padding-top:4px}.metric-definitions p{font-size:13px!important}@media(max-width:700px){.method-switch button{padding:7px 15px;font-size:14px}.settings-button{padding:7px 10px;font-size:13px}.brand{font-size:30px}}@media(max-width:480px){.method-switch button{padding:6px 12px;font-size:13px}.settings-button span{display:none}.settings-button{padding:7px;border-radius:50%}.icon-button{width:28px;height:30px}.finish-button{font-size:12px;padding:5px}.practice-description,.run-meta{padding:3px 5px}.header-actions{gap:8px}.language-switch button{padding:6px 10px}.overlay-card{padding:14px 15px}.overlay-card>p{font-size:14px;max-width:270px}.result-card h2,.result-summary strong{font-size:28px}.result-summary span{font-size:12px}.result-counts{font-size:12px;gap:10px}.result-actions{gap:7px}.result-actions .primary-button{min-width:140px;gap:12px;padding:11px 15px;font-size:14px}.secondary-button{padding:10px 11px;font-size:13px}dialog{padding:20px}.settings-grid{gap:14px}.analysis-metrics>div{padding:10px 8px;gap:5px}.analysis-metrics b{font-size:14px}}@media(max-height:700px){.color-dots{margin-bottom:12px}.overlay-card h1{font-size:35px}.overlay-card>p{margin:11px 0 18px}.result-card h2{font-size:27px}.result-grade{margin-bottom:7px}.result-summary{margin-top:14px}.result-counts{margin-top:11px}.result-card .coaching{margin:10px 0 14px}}@media(max-height:480px){.brand{font-size:26px}.header-actions{gap:8px}.language-switch{padding:2px}.language-switch button{padding:4px 9px;font-size:12px}.method-switch{padding:3px}.method-switch button{padding:5px 13px;font-size:13px}.settings-button{padding:5px 9px;font-size:13px}.icon-button{width:28px;height:28px}.strike-caption{font-size:11px;bottom:4px}.overlay-card{padding:6px 20px}.color-dots,.overlay-card>small{display:none}.overlay-card h1,.overlay-card h2{font-size:27px}.overlay-card>p{font-size:13px;margin:8px 0 11px;max-width:400px}.primary-button{padding:8px 17px;font-size:13px;min-width:150px}.text-button{margin-top:7px;font-size:13px;padding:2px 6px}.countdown-card>strong{font-size:58px}.result-grade{display:none}.result-card h2{font-size:22px}.result-summary{margin-top:7px}.result-summary strong{font-size:24px}.result-summary span{font-size:11px}.result-counts{font-size:11px;margin-top:7px}.result-card .coaching{font-size:12px;margin:7px 0 9px;line-height:1.4;max-width:470px}.result-actions .primary-button,.secondary-button{padding:7px 13px;font-size:13px}.judgment{font-size:13px;bottom:30px}}.training,.game-panel{grid-template-columns:minmax(0,1fr)}.word-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.game-panel,.arena,.keyboard,.game-toolbar,.game-overlay,.overlay-card{min-width:0}@media(max-width:360px){.method-switch button{padding:6px 9px}.finish-button{padding:5px 3px}}@media(max-height:620px){.overlay-card>small{display:none}.color-dots{margin-bottom:9px}.overlay-card>p{margin:9px 0 13px}.result-summary{margin-top:10px}.result-card .coaching{margin:8px 0 10px}.result-card h2{font-size:25px}}@media(max-width:480px)and (max-height:620px){.result-card{padding:6px 15px}.result-grade{display:none}.result-summary{margin-top:6px}.result-counts{margin-top:8px}.result-card .coaching{line-height:1.5;font-size:13px;margin:8px 0 11px}.result-actions .primary-button,.result-actions .secondary-button{padding:8px 9px;font-size:13px}.result-actions .primary-button{min-width:134px;gap:8px}.result-actions .secondary-button{white-space:nowrap}}@media(max-height:480px){.result-card{padding:2px 20px}.result-card h2{font-size:21px}.result-card .coaching{display:none}.result-summary{margin-top:3px}.result-summary strong{font-size:24px}.result-summary span{margin-top:2px;font-size:11px}.result-counts{margin-top:4px;font-size:11px}.result-actions{margin-top:4px}.result-actions .primary-button,.result-actions .secondary-button{padding:7px 13px;font-size:13px}}@container arena (max-height:330px){.overlay-card{padding:8px 20px}.overlay-card>small{display:none}.color-dots{margin-bottom:10px}.overlay-card>p{margin:10px 0 16px}.result-grade{margin-bottom:6px}.result-summary{margin-top:9px}.result-counts{margin-top:8px}.result-card .coaching{margin:8px 0 12px}}@container arena (max-height:255px){.color-dots,.result-grade{display:none}.result-card h2{font-size:25px}.result-summary strong{font-size:27px}.result-summary span,.result-counts{font-size:12px}.result-counts{gap:5px 10px}.result-card .coaching{font-size:13px;line-height:1.4;margin:7px 0 9px}.result-actions .primary-button,.result-actions .secondary-button{padding:8px 12px;font-size:13px}}@container arena (max-height:170px){.overlay-card{padding:5px 16px}.overlay-card>p{margin:7px 0 11px}}@container arena (max-height:220px) and (min-width:550px){.result-card{width:min(770px,100%);display:grid;grid-template-columns:minmax(110px,1fr) minmax(230px,2.4fr) auto;gap:6px 15px}.result-card h2{grid-column:1;grid-row:1 / span 2;font-size:23px}.result-summary{grid-column:2;grid-row:1;margin:0}.result-summary strong{font-size:24px}.result-summary span{font-size:11px}.result-counts{grid-column:2;grid-row:2;margin:0;font-size:11px}.result-card .coaching{display:none}.result-actions{grid-column:3;grid-row:1 / span 2;flex-direction:column;gap:7px;margin:0}.result-actions .primary-button,.result-actions .secondary-button{min-width:145px;padding:7px 10px}}@media(max-width:480px){.developer-button{width:28px;height:30px;padding:0;border-color:transparent;border-radius:50%;background:transparent}.developer-button span{display:none}.developer-button .icon{width:18px;height:18px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.history-list{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:12px}.history-list li{padding:16px;border:1px solid #e3e8f0;border-radius:16px;background:#fbfcff}.history-heading{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 16px;color:#5f6368;font-size:13px}.history-heading time{color:#202124;font-weight:600}.history-values{display:flex;flex-wrap:wrap;gap:8px 20px;margin:12px 0 6px;font-size:13px;color:#5f6368}.history-values b{font-size:18px;color:#1967d2}.history-keys{display:block;overflow-wrap:anywhere;letter-spacing:1px}.progress-comparison b{color:#1967d2}.empty-history{padding:30px 12px;text-align:center;border:1px dashed #dadce0;border-radius:16px}.review-practice{display:grid;gap:10px;padding:18px;margin-bottom:18px;border:1px solid #c9dcfa;border-radius:16px;background:#f2f7ff}.review-practice h3{margin:0;color:#1967d2;font-size:25px;letter-spacing:3px}#dialog-body .review-practice p{margin:0}.review-practice .primary-button{margin-top:4px;justify-self:start;white-space:normal;text-align:left}@media(max-width:380px){.app-header .header-actions{gap:4px}.app-header .icon-button{width:30px;height:32px}.app-header .developer-button{width:30px}.history-list li{padding:12px}}.keyboard{container-type:inline-size;display:grid;place-items:center;width:100%;min-width:0;padding:0}.keyboard-shell{--chassis-pad:clamp(8px,2.25cqw,15px);--section-gap:clamp(5px,1.6cqw,11px);--key-gap:clamp(1.1px,.42cqw,2.7px);--key-unit:calc((100cqw - 2 * var(--chassis-pad) - 2px - 2 * var(--section-gap)) / 22);--key-height:calc(var(--key-unit) * .84);--function-height:var(--key-height);--row-gap:calc(var(--key-gap) + 1px);display:grid;grid-template-columns:minmax(0,15fr) minmax(0,3fr) minmax(0,4fr);gap:var(--section-gap);width:100%;padding:var(--chassis-pad) var(--chassis-pad) calc(var(--chassis-pad) + 3px);border:1px solid #ccd0dc;border-radius:clamp(9px,2.4cqw,15px);background:linear-gradient(150deg,#f3f1f6,#e4e5ee 70%,#d6dce8);box-shadow:inset 0 2px 1px #ffffffed,inset 0 -2px 2px #a3aabe4a,0 3px #b7bfce,0 5px 9px #25324714;user-select:none;-webkit-user-select:none;pointer-events:none}.keyboard-main{display:grid;grid-template-rows:var(--function-height) repeat(5,var(--key-height));gap:var(--row-gap);min-width:0}.keyboard-row{display:grid;grid-template-columns:repeat(60,minmax(0,1fr));gap:0;min-width:0}.keycap,.keyboard-spacer{grid-column:span calc(var(--key-units,1) * 4);min-width:0}.keyboard-row>.keycap{margin-right:var(--key-gap)}.keyboard-row>.keycap:last-child{margin-right:0}.keycap{--cap-top:#fffef9;--cap-bottom:#e7e6df;--cap-edge:#888a90;--cap-side:#92949b;--cap-ink:#414650;position:relative;display:flex;align-items:center;justify-content:center;width:auto;height:100%;padding:1px clamp(1px,.5cqw,3px) 2px;border:1px solid var(--cap-edge);border-radius:clamp(3px,.9cqw,5px);color:var(--cap-ink);background:linear-gradient(160deg,var(--cap-top) 25%,var(--cap-bottom));box-shadow:inset 0 1px #ffffffbd,inset 0 -1px 1px #00000012,0 3px 0 var(--cap-side),0 4px 2px #14223a38;font:600 clamp(6.8px,1.75cqw,11.5px)/1 "Google Sans","Segoe UI",sans-serif;transition:transform 55ms ease-out,box-shadow 55ms ease-out,background 55ms ease-out,color 55ms ease-out}.keycap:before{content:"";position:absolute;inset:2px 2px 3px;border:1px solid #ffffff45;border-radius:3px}.keycap-blue{--cap-top:#d1e0fa;--cap-bottom:#a7bee5;--cap-edge:#7f93b1;--cap-side:#7389ab;--cap-ink:#284260}.keycap-navy{--cap-top:#344661;--cap-bottom:#1e2d45;--cap-edge:#14233a;--cap-side:#101d31;--cap-ink:#dce9ff;box-shadow:inset 0 1px 1px #8da7d658,0 3px 0 var(--cap-side),0 4px 2px #14223a50}.keycap[data-key]:not(.enabled){color:#9298a2}.keycap-primary,.keycap-secondary{position:relative;z-index:1}.keycap-secondary{position:absolute;top:2px;left:clamp(2px,.8cqw,5px);font-size:clamp(4px,.98cqw,6px);font-weight:550;opacity:.8}.keycap:has(.keycap-secondary) .keycap-primary{padding-top:clamp(3px,.8cqw,5px)}.keycap-wide,.keycap-word,.keyboard-main>.keyboard-row:first-child .keycap,.keyboard-navigation .keycap{font-size:clamp(4.6px,1.1cqw,7.5px);letter-spacing:-.15px}.keycap-symbol{font-size:clamp(8px,2cqw,13px)}.keycap[data-code=Space] .keycap-primary{font-size:clamp(7px,1.6cqw,10px);letter-spacing:1.3px;opacity:.7}.anchor-key:after{content:"";position:absolute;bottom:3px;left:calc(50% - clamp(2px,.65cqw,4px));width:clamp(4px,1.3cqw,8px);height:1.5px;border-radius:2px;background:#858b95;box-shadow:0 1px #fff}.keycap.pressed{--cap-top:#6fa7ff;--cap-bottom:#397be0;--cap-edge:#1a65d6;--cap-side:#205aa9;--cap-ink:#fff;transform:translateY(3px);color:var(--cap-ink);background:linear-gradient(160deg,var(--cap-top),var(--cap-bottom));box-shadow:inset 0 1px 2px #15438a40,0 0 0 1px #4285f459,0 0 10px #4285f442}.anchor-key.pressed:after{background:#e7f0ff;box-shadow:none}.keyboard-navigation{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:var(--function-height) repeat(5,var(--key-height));gap:var(--row-gap) var(--key-gap);min-width:0}.keyboard-numpad{display:grid;grid-template-rows:var(--function-height) minmax(0,1fr);gap:var(--row-gap);min-width:0}.keyboard-numpad-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(5,var(--key-height));gap:var(--row-gap) var(--key-gap)}.keyboard-navigation .keycap,.keyboard-numpad-grid .keycap{grid-column:auto}.keyboard-numpad-grid .keycap-wide{font-size:clamp(6.8px,1.75cqw,11.5px)}.keyboard-indicators{display:flex;align-items:center;justify-content:space-evenly;padding:1px 2px;border:1px solid #1d2b40;border-radius:4px;background:linear-gradient(150deg,#314057,#202b3d);box-shadow:inset 0 1px 1px #ffffff15}.keyboard-indicator{display:flex;flex-direction:column;align-items:center;gap:clamp(1px,.3cqw,2px);color:#b4c0d2;font-size:clamp(3px,.8cqw,5px);font-weight:550;line-height:1}.indicator-light{width:clamp(2px,.6cqw,3px);height:clamp(2px,.6cqw,3px);border-radius:50%;background:#68768a;box-shadow:inset 0 1px 1px #0006}.keyboard-indicator.active .indicator-light{background:#85e6af;box-shadow:0 0 4px #85e6af99}@media(prefers-reduced-motion:reduce){.keycap{transition:none}}.app-shell{display:grid;margin:auto;container-type:size;container-name:workspace;position:relative;top:var(--viewport-top,0px);width:min(1360px,100%);height:var(--app-height,100dvh);grid-template-rows:64px minmax(0,1fr);gap:14px;padding:0 24px 20px}.training{display:grid;min-height:0;grid-template-columns:minmax(0,.44fr) minmax(0,.56fr);grid-template-rows:minmax(0,1fr) auto;grid-template-areas:"dashboard game" "keyboard game";gap:16px}.dashboard{grid-area:dashboard;display:flex;flex-direction:column;gap:14px;min-width:0;min-height:0}.metrics-strip{display:grid;flex:1;min-height:0;max-height:300px;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:12px}.metric{display:flex;flex-direction:column;justify-content:center;padding:16px 22px;border-radius:20px;container-type:inline-size;--metric-number-room:100cqi}.metric.green,.metric.yellow{--metric-number-room: calc(100cqi - 20px) }.metric>span{font-size:14px;font-weight:550;color:#5f6368;white-space:nowrap}.metric>div{display:flex;align-items:baseline;gap:7px;margin-top:6px;flex-wrap:wrap}.metric strong{font-size:min(42px,calc(var(--metric-number-room) / var(--stat-chars,3) * 1.6));font-weight:550;font-variant-numeric:tabular-nums;letter-spacing:-1px;line-height:1.15}.metric small{font-size:12px;white-space:nowrap}.control-panel,.keyboard-panel{min-width:0;border:1px solid var(--border);border-radius:22px;background:#fff}.control-panel{padding:14px}.game-toolbar{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;padding:0;border:0}.method-switch{width:100%}.method-switch button{flex:1;padding:8px 14px;font-size:15px}.game-controls{display:flex;align-items:center;gap:8px;min-width:0}.settings-button{margin-right:auto;font-size:14px}.game-controls .icon-button{width:32px;height:32px}.finish-button{font-size:13px;padding:6px 8px}.game-panel{display:grid;min-height:0;border:1px solid var(--border);overflow:hidden;background:#fff;grid-area:game;grid-template-rows:44px minmax(0,1fr);border-radius:22px;min-width:0}.arena-top{display:flex;align-items:center;justify-content:space-between;color:#5f6368;position:static;padding:0 15px;border-bottom:1px solid #edf0f5;font-size:12px;gap:8px}.practice-description{padding:0;background:none;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.run-meta{display:flex;align-items:center;padding:0;gap:7px;background:none;white-space:nowrap}.arena{min-width:0}.overlay-card{width:min(520px,100%)}.overlay-card h1{font-size:clamp(29px,3.2vw,44px)}.strike-caption{font-size:11px}.keyboard-panel{grid-area:keyboard;padding:16px}.keyboard-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}.keyboard-heading h2{margin:0;font-size:16px;font-weight:550}.home-key-hint{color:#80868b;font-size:12px;letter-spacing:2px}.board-footer{display:flex;align-items:center;justify-content:space-between;color:#80868b;padding:0;margin-top:13px;border:0;font-size:11px;line-height:1.4;gap:5px 10px;flex-wrap:wrap}.shortcut-hints{display:flex;gap:5px}.board-footer>span:last-child{margin-left:auto;white-space:nowrap}.mobile-input-bar{display:none}dialog{max-height:calc(var(--app-height,100dvh) - 24px);top:calc(var(--viewport-top,0px) + var(--app-height,100dvh) / 2);bottom:auto;margin:0 auto;transform:translateY(-50%)}@media(max-width:1100px){.app-shell{padding:0 18px 16px;gap:12px}.training,.dashboard{gap:12px}.metrics-strip{max-height:250px;gap:10px}.metric{padding:12px 16px}.metric strong{font-size:min(36px,calc(var(--metric-number-room) / var(--stat-chars,3) * 1.6))}.control-panel,.keyboard-panel{padding:12px}.settings-button{padding:7px}.settings-button span{display:none}.game-controls{gap:6px}.keyboard-heading{margin-bottom:10px}.board-footer{font-size:10px}.arena-top{padding:0 10px;font-size:11px}}@media(max-height:600px){.app-shell{grid-template-rows:46px minmax(0,1fr);padding:0 14px 12px;gap:10px}.training{gap:10px}.dashboard{gap:8px}.metrics-strip{max-height:180px;gap:8px}.metric{flex-direction:row;align-items:center;justify-content:space-between;gap:6px;padding:6px 9px;border-radius:13px}.metric>span{font-size:11px}.metric>div{margin:0;gap:3px}.metric strong{font-size:min(26px,calc(var(--metric-number-room) / var(--stat-chars,3) * 1.6))}.metric small{font-size:9px}.control-panel{padding:8px;border-radius:16px}.game-toolbar{display:flex;gap:6px}.method-switch{width:auto;flex-shrink:0;padding:3px}.method-switch button{font-size:11px;padding:6px 5px}.game-controls{gap:2px;margin-left:auto}.settings-button{padding:4px;margin-right:0;border:0}.settings-button span{display:none}.game-controls .icon-button{width:26px;height:28px}.finish-button{font-size:11px;padding:5px}.keyboard-panel{padding:10px;border-radius:16px}.keyboard-heading{margin-bottom:8px}.keyboard-heading h2{font-size:13px}.home-key-hint{font-size:10px}.board-footer{margin-top:10px;font-size:9px}.game-panel{grid-template-rows:36px minmax(0,1fr);border-radius:16px}.brand{font-size:29px}}@container workspace (min-width:951px) and (max-height:740px){.metric{flex-direction:row;align-items:center;justify-content:space-between;gap:6px;padding:6px 9px;border-radius:13px}.metric>span{flex-shrink:0;font-size:11px}.metric>div{margin:0;gap:3px;flex-wrap:nowrap;min-width:0}.metric strong{font-size:min(26px,calc((100cqi - 70px) / var(--stat-chars,3) * 1.6))}.metric.blue strong{font-size:min(26px,calc((100cqi - 115px) / var(--stat-chars,3) * 1.6))}.metric small{font-size:9px}}@media(max-width:700px),(max-width:950px)and (pointer:coarse){.app-shell{width:100%;padding:0 10px max(8px,env(safe-area-inset-bottom));grid-template-rows:50px minmax(0,1fr);gap:8px}.training{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) 46px;grid-template-areas:"dashboard" "game" "mobile";gap:8px}.dashboard{gap:8px}.metrics-strip{flex:none;height:68px;max-height:none;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:minmax(0,1fr);gap:6px}.metric{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:7px;border-radius:14px;gap:0}.metric.green,.metric.yellow{--metric-number-room: calc(100cqi - 12px) }.metric>span{font-size:11px}.metric>div{gap:2px 3px;margin-top:3px}.metric strong{font-size:min(25px,calc(var(--metric-number-room) / var(--stat-chars,3) * 1.6))}.metric small{font-size:9px}.control-panel{padding:5px 7px;border-radius:16px}.game-toolbar{display:flex;gap:5px}.method-switch{width:auto;flex-shrink:0;padding:3px}.method-switch button{padding:6px 5px;font-size:11px}.game-controls{margin-left:auto;gap:2px}.settings-button{padding:4px;margin-right:0;border:0}.settings-button span{display:none}.game-controls .icon-button{width:28px;height:28px}.finish-button{padding:5px 4px;font-size:11px}.game-panel{grid-template-rows:34px minmax(0,1fr);border-radius:18px}.arena-top{padding:0 10px;font-size:11px}.keyboard-panel{display:none}.mobile-input-bar{grid-area:mobile;display:flex;align-items:center;min-width:0;gap:10px;padding:5px 9px 5px 12px;border:1px solid #d8e3f7;border-radius:15px;background:#fff}.mobile-input-bar:focus-within{border-color:#4285f4;box-shadow:0 0 0 2px #4285f414}.mobile-input-icon{color:#1967d2;font-size:22px;line-height:1}#mobile-typing-input{width:100%;min-width:0;height:32px;padding:0;border:0;background:transparent;outline:none;font:450 16px/1.3 Google Sans,Segoe UI,sans-serif}#mobile-typing-input::placeholder{color:#80868b;font-size:12px}.mobile-key-echo{display:grid;place-items:center;width:29px;height:29px;flex-shrink:0;border-radius:9px;background:#e8f0fe;color:#1967d2;font-size:17px;font-weight:600}.overlay-card{padding:12px 16px}.overlay-card h1{font-size:30px}.header-actions{gap:8px}.brand{font-size:29px}#app[data-native-keyboard=true] .app-header{display:none}#app[data-native-keyboard=true] .app-shell{grid-template-rows:minmax(0,1fr);padding-top:3px;padding-bottom:3px;gap:0}#app[data-native-keyboard=true] .metrics-strip{height:51px}#app[data-native-keyboard=true] .metric{padding:4px 7px;border-radius:11px}#app[data-native-keyboard=true] .metric>span{font-size:10px}#app[data-native-keyboard=true] .metric strong{font-size:min(23px,calc(var(--metric-number-room) / var(--stat-chars,3) * 1.6))}#app[data-native-keyboard=true] .metric>div{margin-top:0}}@container workspace (max-height:380px){#app[data-native-keyboard=true] .training{gap:5px;grid-template-rows:auto minmax(0,1fr) 34px}#app[data-native-keyboard=true] .dashboard{gap:5px}#app[data-native-keyboard=true] .metrics-strip{height:34px}#app[data-native-keyboard=true] .metric{padding:1px 5px;border-radius:9px}#app[data-native-keyboard=true] .metric>span{font-size:9px;line-height:10px}#app[data-native-keyboard=true] .metric strong{font-size:min(20px,calc(var(--metric-number-room) / var(--stat-chars,3) * 1.6));line-height:22px}#app[data-native-keyboard=true] .metric.blue small{display:none}#app[data-native-keyboard=true] .control-panel{padding:2px 5px}#app[data-native-keyboard=true] .method-switch button{padding:3px 5px;font-size:11px}#app[data-native-keyboard=true] .game-controls .icon-button{height:24px;width:25px}#app[data-native-keyboard=true] .game-panel{grid-template-rows:25px minmax(0,1fr)}#app[data-native-keyboard=true] .mobile-input-bar{padding:1px 8px}#app[data-native-keyboard=true] #mobile-typing-input{height:28px}#app[data-native-keyboard=true] .mobile-key-echo{height:25px;width:25px}}@media(max-width:700px)and (max-height:500px),(max-width:950px)and (pointer:coarse)and (max-height:500px){.app-shell{grid-template-rows:38px minmax(0,1fr);gap:6px}.training{gap:6px;grid-template-rows:auto minmax(0,1fr) 40px}.dashboard{gap:6px}.metrics-strip{height:49px}.metric{padding:4px 6px}.metric>span{font-size:10px}.metric strong{font-size:min(23px,calc(var(--metric-number-room) / var(--stat-chars,3) * 1.6))}.metric>div{margin-top:0}.control-panel{padding:3px 5px}.method-switch button{padding:5px}.game-panel{grid-template-rows:29px minmax(0,1fr)}.mobile-input-bar{padding-top:2px;padding-bottom:2px}}@container arena (max-height:220px) and (max-width:549px){.overlay-card{padding:5px 12px}.color-dots,.overlay-card>small,.result-grade{display:none}.overlay-card h1,.overlay-card h2{font-size:24px}.overlay-card>p{margin:7px 0 10px;font-size:13px}.primary-button,.secondary-button{padding:8px 12px;font-size:13px}.result-summary{margin-top:6px}.result-summary strong{font-size:24px}.result-summary span{font-size:11px}.result-card .coaching{display:none}.result-counts{margin-top:6px;font-size:11px;gap:4px 7px}.result-actions{gap:7px}.text-button{margin-top:7px;font-size:12px}.countdown-card>strong{font-size:54px}}@container arena (max-height:150px) and (max-width:549px){.overlay-card>p{display:none}.result-counts{display:none}.result-summary strong{font-size:20px}.result-summary span{font-size:10px;line-height:1.2}.result-card h2{font-size:21px}}.compact-goal{display:none}.vocabulary-preview{display:flex;flex-direction:column;gap:9px;margin-top:16px;padding:13px;border:1px solid #dce6f5;border-radius:12px;background:#f8fafd}.vocabulary-preview strong{color:#1967d2;font-size:15px;font-weight:600}.vocabulary-samples{display:flex;flex-wrap:wrap;gap:6px}.vocabulary-samples code{min-width:0;max-width:100%;overflow-wrap:anywhere;padding:4px 7px;border-radius:6px;background:#e8f0fe;color:#3c4043;font:500 13px/1.4 Consolas,Cascadia Code,monospace}.goal-display{display:flex;align-items:center;gap:8px;width:100%;min-width:0;margin-top:10px;padding:6px 9px;border-radius:10px;background:#f5f8fe;color:#5f6368;font:500 12px/1.4 Google Sans,Segoe UI,sans-serif;text-align:left}.goal-symbol{color:#1a73e8;font-size:19px;line-height:1}.goal-current{margin-left:auto;font-variant-numeric:tabular-nums;white-space:nowrap}.goal-display[data-state=achieved]{background:#e6f4ea;color:#137333}.goal-display[data-state=on-track]{color:#1967d2}.session-progress{position:absolute;top:0;left:0;right:0;height:3px;background:#e8f0fe;z-index:3;pointer-events:none}.session-progress>span{display:block;width:100%;height:100%;background:#4285f4;transform:scaleX(var(--session-progress,0));transform-origin:left}.goal-field{display:flex;flex-direction:column;gap:8px;margin-top:18px;font-size:15px}.goal-field select{width:100%;min-width:0;padding:11px 12px;border:1px solid #dadce0;border-radius:10px;background:#f8fafd;font:inherit}.goal-result{display:flex;flex-direction:column;gap:3px;border-radius:12px;padding:9px 13px;margin:12px 0;color:#5f6368;background:#f5f8fe;font-size:13px}.goal-result b{font-weight:600}.goal-result span{font-size:12px}.goal-result[data-state=achieved]{background:#e6f4ea;color:#137333}.overlay-card .goal-result{margin:9px 0 0}.pause-reason span{display:block;margin-top:5px}.judgment{max-width:calc(100% - 16px);text-align:center;line-height:1.4}.training-insights{display:grid;gap:18px;margin:0 0 20px}.training-insights .goal-result{margin:0}.comparison-section,.heatmap-section,.error-breakdown{min-width:0}.comparison-section{margin:18px 0}.training-insights .comparison-section{margin:0}.comparison-section h3,.heatmap-section h3,.error-breakdown h3{font-size:18px;font-weight:600;margin:0 0 8px;color:#202124}.comparison-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}.comparison-values>div{display:flex;flex-direction:column;padding:12px;border:1px solid #e4e9f2;border-radius:12px;background:#f8fafd}.comparison-values span{font-size:12px;color:#5f6368}.comparison-values b{font-size:23px;margin:6px 0 1px;font-weight:600;font-variant-numeric:tabular-nums}.comparison-values [data-trend=better] b{color:#137333}.comparison-values [data-trend=worse] b{color:#c5221f}.comparison-values [data-trend=neutral] b{color:#5f6368}.heatmap-board{padding:12px;border:1px solid #dce3ee;border-radius:15px;background:#f3f6fa;margin-top:14px}.heatmap-row{display:flex;gap:4px;justify-content:center;margin-top:4px}.heatmap-row:first-child{margin-top:0}.heat-key{flex:1;min-width:0;max-width:42px;height:38px;font-size:15px;font-weight:600;padding:0;border:1px solid #cdd5e0;border-radius:7px;color:#5f6368;background:#fff;box-shadow:0 2px #cdd5e0}.heat-key.heat-space{max-width:220px}.heat-key:disabled{color:#b7bdc6;background:#edf0f5;box-shadow:none;border-color:#e2e7ee}.heat-key[data-heat=good],.detail-key[data-heat=good]{background:#d9f0e0;color:#137333;border-color:#90cda5}.heat-key[data-heat=caution],.detail-key[data-heat=caution]{background:#fff0bd;color:#8a5600;border-color:#e8c96c}.heat-key[data-heat=poor],.detail-key[data-heat=poor]{background:#fadad7;color:#b3261e;border-color:#e6a09a}.heat-key[aria-pressed=true]{outline:2px solid #1a73e8;outline-offset:1px}.heat-key:focus-visible{outline:3px solid #1967d2;outline-offset:2px}.heatmap-legend{display:flex;flex-wrap:wrap;gap:7px 14px;margin:12px 0}.heatmap-legend>span{display:flex;align-items:center;gap:6px;color:#5f6368;font-size:11px}.heatmap-legend i{width:9px;height:9px;border-radius:50%;background:#d4d9e1}.heatmap-legend [data-heat=good] i{background:#34a853}.heatmap-legend [data-heat=caution] i{background:#f9ab00}.heatmap-legend [data-heat=poor] i{background:#ea4335}.heatmap-detail{display:flex;gap:13px;align-items:center;padding:12px;border:1px solid #e3e8f0;border-radius:12px;background:#fbfcff}.detail-key{display:grid;place-items:center;width:42px;height:42px;flex-shrink:0;border-radius:9px;border:1px solid #d7dfea;background:#f1f4f9;color:#5f6368;font-size:20px}.heatmap-detail>div{display:flex;flex-direction:column;gap:4px;min-width:0}.heatmap-detail b{font-size:14px;font-weight:600}.heatmap-detail span{font-size:12px;color:#5f6368}.error-breakdown>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:10px}.error-breakdown [data-error]{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px;border:1px solid #eadfdc;border-radius:10px;color:#5f6368;background:#fff8f7;font-size:13px}.error-breakdown b{color:#c5221f;font-size:18px}@media(max-width:700px),(max-width:950px)and (pointer:coarse){.goal-display{margin-top:4px;padding:2px 5px;font-size:11px;line-height:16px}.goal-symbol{font-size:16px}}@media(max-width:400px){.comparison-values{grid-template-columns:repeat(2,minmax(0,1fr))}.comparison-values>div:last-child{grid-column:1/-1}.comparison-values>div:last-child{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 10px}.comparison-values>div:last-child b{grid-column:2;grid-row:1/3;margin:0;align-self:center}.heatmap-board{padding:7px}.heatmap-row{gap:3px}.heat-key{height:32px;font-size:12px;border-radius:5px}.heatmap-detail{gap:9px;padding:10px}}@container workspace (max-height:380px){#app[data-native-keyboard=true] .goal-display,#app[data-native-keyboard=true][data-goal=true] .practice-description{display:none}#app[data-native-keyboard=true][data-goal=true] .compact-goal{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#1967d2;font-size:10px}#app[data-native-keyboard=true] .goal-symbol{font-size:12px}}@container arena (max-height:360px){.overlay-card .goal-result{padding:5px 9px;font-size:11px;margin-top:5px;gap:1px}.overlay-card .goal-result span{font-size:10px}.overlay-card>.pause-reason{font-size:12px;line-height:1.4;margin:8px 0 13px}}@container arena (max-height:330px){.result-card .coaching{display:none}.result-card h2{font-size:25px}.result-summary strong{font-size:27px}.result-summary span,.result-counts{font-size:11px}.result-actions{margin-top:10px;gap:6px}.result-actions .primary-button,.result-actions .secondary-button{min-width:0;padding:8px 10px;font-size:12px}}@container arena (max-height:220px) and (min-width:550px){.result-card .goal-result{grid-column:2;grid-row:3;justify-self:center}}@container arena (max-height:220px) and (max-width:549px){.result-card .goal-result{display:none}}@container arena (max-height:150px) and (max-width:549px){.result-card h2{font-size:21px;line-height:1.2}.result-summary{margin-top:3px}.result-summary strong{font-size:20px;line-height:1.1}.result-summary span{margin-top:2px;font-size:10px;line-height:1.2}.result-actions{margin-top:6px}}.account-header-button{display:flex;align-items:center;justify-content:center;gap:7px;flex-shrink:0;min-width:36px;height:36px;padding:0 13px;border:1px solid #dadce0;border-radius:22px;color:#1967d2;background:#fff;font-size:14px;font-weight:550}.account-header-button[data-signed-in=true]{width:36px;padding:0;border:0;background:#e8f0fe}.account-header-button svg{width:18px;height:18px}.account-header-initials{font-size:14px;font-weight:600}.account-dialog{width:min(780px,calc(100vw - 24px));padding:0;overflow:hidden}.account-dialog[open]{display:flex;flex-direction:column}.account-dialog .account-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0;padding:18px 22px 12px}.account-heading h2{margin:0;font-size:24px;font-weight:550}.account-dialog .account-close{width:34px;height:34px;font-size:25px}.account-tabs{display:flex;flex-shrink:0;gap:5px;padding:0 22px 12px;border-bottom:1px solid #edf0f5}.account-tabs button{padding:8px 15px;border-radius:20px;background:#f1f3f4;color:#5f6368;font-size:14px;font-weight:550}.account-tabs button[aria-pressed=true]{background:#e8f0fe;color:#1967d2}.account-scroll{overflow:auto;overscroll-behavior:contain;min-height:0;padding:18px 22px 24px;scrollbar-width:thin}.account-dialog p{margin:0 0 14px;color:#5f6368;font-size:14px;line-height:1.6}.account-dialog h3{margin:0 0 9px;font-size:18px;font-weight:550}.account-dialog h4{margin:0 0 9px;font-size:16px;font-weight:550}.account-dialog small{display:block;margin-top:6px;color:#5f6368;font-size:12px;line-height:1.5}.account-dialog label{display:flex;flex-direction:column;gap:7px;color:#3c4043;font-size:14px;font-weight:550;min-width:0}.account-dialog input:not([type=checkbox]),.account-dialog select{width:100%;min-width:0;padding:10px 12px;border:1px solid #dadce0;border-radius:12px;background:#fff;font-size:16px;line-height:1.3}.account-dialog form{display:flex;flex-direction:column;gap:12px;margin:0}.account-dialog button{max-width:100%}.account-dialog .primary-button,.account-dialog .secondary-button{justify-content:center;font-size:14px;padding:11px 16px;min-height:40px}.account-login{width:min(410px,100%);margin:auto}.account-login h3{font-size:27px;letter-spacing:-.5px}.account-google{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:12px;background:#fff;border:1px solid #dadce0;border-radius:23px;font-weight:550;font-size:14px}.account-google svg{width:20px;height:20px;flex-shrink:0}.account-divider{text-align:center;color:#80868b;font-size:13px;margin:18px 0}.account-code-form{margin-top:16px!important;padding-top:15px;border-top:1px solid #edf0f5}.account-code-form input{font:550 20px/1.3 var(--mono);letter-spacing:5px}.account-guest-button{width:100%;margin-top:14px;background:transparent;color:#1967d2;border-radius:18px;padding:10px;font-size:14px}.account-feedback{padding:10px 12px;border-radius:12px;background:#fce8e6;color:#a50e0e!important;margin:0 0 14px!important;overflow-wrap:anywhere}.account-notice{padding:12px;border-radius:13px;background:#e8f0fe}.account-notice p{margin:0}.account-storage-notice{background:#fef7e0;margin-bottom:14px}.account-identity{display:flex;align-items:center;gap:13px;margin-bottom:18px}.account-avatar{display:grid;place-items:center;width:48px;height:48px;flex-shrink:0;border-radius:50%;background:#e8f0fe;color:#1967d2;font-size:20px;font-weight:550}.account-identity-details{min-width:0}.account-identity strong,.account-identity span{display:block;overflow-wrap:anywhere}.account-identity strong{font-size:18px;font-weight:550}.account-identity-details span{color:#5f6368;margin-top:4px;font-size:13px}.account-profile-form{max-width:420px}.account-profile-form .primary-button{align-self:flex-start}.account-sync-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:14px 0;margin-top:9px;border-bottom:1px solid #edf0f5}.account-sync-label{display:flex;align-items:center;gap:8px;font-size:13px;color:#5f6368}.account-sync-label:before{content:"";width:8px;height:8px;border-radius:50%;background:#34a853;flex-shrink:0}.account-sync-label[data-status=offline]:before,.account-sync-label[data-status=error]:before{background:#f9ab00}.account-sync-label[data-status=syncing]:before{background:#4285f4}.account-import{margin:18px 0;padding:16px;border:1px solid #d8e3f7;border-radius:16px;background:#f8fafd}.account-import .account-button-row{margin-top:12px}.account-button-row{display:flex;align-items:center;flex-wrap:wrap;gap:9px}.account-data-actions{margin-top:19px}.account-link-button{padding:8px 10px;border-radius:12px;background:transparent;color:#1967d2;font-size:14px}.account-danger{margin-top:23px;padding-top:17px;border-top:1px solid #edf0f5}.account-danger button{color:#b3261e;background:#fce8e6}.account-danger-form{border:1px solid #f3c5c1;border-radius:14px;padding:15px;margin-top:12px!important}.account-danger-form label{flex-direction:row;align-items:flex-start;gap:8px;font-size:13px;line-height:1.5}.account-danger-form input{margin-top:3px;flex-shrink:0}.account-danger-form .account-cancel{background:#f1f3f4;color:#3c4043}.account-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:15px}.account-filters label{font-size:12px}.account-filters select{padding:9px 8px;font-size:13px}.account-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:14px 0 20px}.account-stat{min-width:0;padding:13px;background:#f8fafd;border:1px solid #edf0f5;border-radius:15px}.account-stat span{display:block;color:#5f6368;font-size:12px;line-height:1.4}.account-stat strong{display:block;margin-top:5px;font-size:25px;font-weight:550;font-variant-numeric:tabular-nums}.account-comparison{padding:15px;border:1px solid #d8e3f7;border-radius:16px}.account-comparison select{margin-top:7px;font-size:13px}.account-comparison .account-overview{grid-template-columns:repeat(2,minmax(0,1fr));margin:15px 0}.account-chart{min-width:0;margin:16px 0}.account-chart svg{display:block;max-width:100%;height:auto}.account-chart details{font-size:12px;color:#5f6368;margin-top:8px}.account-chart table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}.account-chart th,.account-chart td{padding:6px 4px;text-align:start;border-bottom:1px solid #edf0f5;font-size:11px}.account-weaknesses{margin-top:18px}.account-weaknesses ul{display:flex;gap:8px;flex-wrap:wrap;list-style:none;padding:0;margin:10px 0}.account-weaknesses li{padding:8px 11px;border-radius:12px;background:#fef7e0;font-size:13px}.account-weaknesses kbd{font:550 15px/1.2 var(--mono)}.account-history{margin-top:24px}.account-session-list{list-style:none;margin:12px 0;padding:0;display:flex;flex-direction:column;gap:9px}.account-session-list li{padding:13px;border:1px solid #edf0f5;border-radius:14px;background:#fff}.account-session-heading{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:4px 8px;font-size:12px;color:#5f6368}.account-session-name{margin:7px 0;font-size:13px;color:#3c4043;overflow-wrap:anywhere}.account-session-values{display:flex;gap:8px 15px;flex-wrap:wrap;font-size:12px}.account-session-values b{font-size:15px;font-weight:550}.account-session-imported{color:#5f6368;background:#f1f3f4;border-radius:7px;padding:2px 7px;font-size:10px}.account-empty{text-align:center;padding:24px 10px}.account-chart-title{font-size:14px;margin:0 0 9px}.account-trend-plots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.account-trend-figure{min-width:0;margin:0}.account-trend-figure figcaption{font-size:12px;color:#5f6368;margin-bottom:4px}.account-trend-svg{width:100%}.account-dialog .account-trend-note{font-size:11px;margin:6px 0}.account-table-wrap{overflow:auto}.account-trend-data summary{cursor:pointer;padding:5px 0}.account-trend-data caption{font-size:11px;margin:8px 0;text-align:left}.account-email-unavailable{margin-top:14px!important}.account-login .account-notice{margin-bottom:14px}.account-result-cta{margin-top:10px;color:#1967d2;background:transparent;font-size:12px;border-radius:10px;padding:5px}@container arena (max-height:220px){.account-result-cta{display:none}}@media(max-width:700px){.account-header-button{width:32px;min-width:32px;height:32px;padding:0}.account-header-button[data-signed-in=true]{width:32px;height:32px}.account-header-button .account-header-label{display:none}.account-dialog{border-radius:20px}.account-dialog .account-heading{padding:14px 16px 10px}.account-heading h2{font-size:21px}.account-tabs{padding:0 16px 10px}.account-scroll{padding:15px 16px 20px}.account-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.account-overview{gap:6px}.account-stat{padding:10px 8px}.account-stat strong{font-size:23px}.account-stat span{font-size:11px}.account-comparison{padding:11px}.account-login h3{font-size:25px}}@media(max-width:380px){.app-header{min-width:0}.app-header .language-switch{padding:3px}.app-header .language-switch button{padding:6px 8px;font-size:13px}.app-header .header-actions>[data-action=progress]{display:none}.account-trend-plots{grid-template-columns:minmax(0,1fr)}}@media(max-height:440px){.account-dialog .account-heading{padding:9px 14px 6px}.account-heading h2{font-size:19px}.account-tabs{padding:0 14px 7px}.account-tabs button{padding:5px 12px;font-size:12px}.account-scroll{padding:12px 14px}}
