:root{font-family:Plus Jakarta Sans,Noto Sans SC,Helvetica Neue,Arial,sans-serif;color-scheme:light;--ui-background: #f4f4f4;--ui-layer-01: #ffffff;--ui-layer-02: #f4f4f4;--ui-layer-hover: #e8e8e8;--ui-text-primary: #161616;--ui-text-secondary: #525252;--ui-text-placeholder: #6f6f6f;--ui-border-subtle: #e0e0e0;--ui-border-strong: #8d8d8d;--ui-interactive: #0f62fe;--ui-interactive-hover: #0353e9;--ui-focus: #0f62fe;--ui-success: #198038;--ui-danger: #da1e28;--ui-danger-layer: #fff1f1;--ui-info-layer: #edf5ff}*{box-sizing:border-box}html{background:var(--ui-background);overflow-x:hidden}body,#root{min-width:320px;min-height:100%;margin:0}body{background:var(--ui-background);color:var(--ui-text-primary);-webkit-font-smoothing:antialiased}button,input{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}button:disabled,input:disabled{cursor:not-allowed}.app-shell{min-height:100vh;padding:32px 24px 64px}.phone-frame{width:min(100%,1200px);margin:0 auto;display:grid;gap:24px}.hero{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding-bottom:24px;border-bottom:1px solid var(--ui-border-subtle)}.hero-copy{min-width:0}.hero-copy h1{margin:0;display:flex;align-items:flex-start;gap:8px;font-size:clamp(1.75rem,3vw,2.5rem);line-height:1.1;font-weight:700;letter-spacing:-.03em}.hero-copy p{margin:8px 0 0;color:var(--ui-text-secondary);font-size:.875rem;line-height:1.5}.hero-actions{display:flex;align-items:center;gap:8px}.language-switch{min-height:40px;display:grid;grid-template-columns:repeat(2,minmax(44px,1fr));border:1px solid var(--ui-border-strong);background:var(--ui-layer-01)}.language-switch button{min-height:38px;padding:0 12px;border:0;background:transparent;color:var(--ui-text-secondary);font-size:.75rem;font-weight:700;cursor:pointer}.language-switch button+button{border-left:1px solid var(--ui-border-subtle)}.language-switch button:hover{background:var(--ui-layer-hover)}.language-switch button.active{background:var(--ui-text-primary);color:#fff}.glass-button,.ghost-button,.outline-button,.submit-button{min-height:48px;border:1px solid transparent;border-radius:0;cursor:pointer;transition:background-color .12s ease,border-color .12s ease,color .12s ease}.glass-button,.ghost-button{padding:0 18px;border-color:var(--ui-border-strong);background:var(--ui-layer-01);color:var(--ui-text-primary);font-size:.875rem;font-weight:600}.glass-button:hover,.ghost-button:hover,.outline-button:hover{background:var(--ui-layer-hover)}.glass-card{border:1px solid var(--ui-border-subtle);border-radius:0;background:var(--ui-layer-01)}.rules-card{display:grid;grid-template-columns:180px minmax(0,1fr) minmax(0,1fr);gap:24px;padding:24px;border-left:4px solid var(--ui-interactive);background:var(--ui-info-layer)}.rules-title{margin:0;font-size:1rem;line-height:1.4;font-weight:700}.rules-card p{margin:0;color:var(--ui-text-secondary);font-size:.875rem;line-height:1.6}.level-selector{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(210px,1fr);gap:1px;overflow-x:auto;background:var(--ui-border-subtle);border:1px solid var(--ui-border-subtle)}.level-tab{min-height:72px;padding:14px 16px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;border:0;border-bottom:3px solid transparent;background:var(--ui-layer-01);color:var(--ui-text-secondary);text-align:left;cursor:pointer}.level-tab:hover{background:var(--ui-layer-hover)}.level-tab.active{border-bottom-color:var(--ui-interactive);background:var(--ui-layer-01);color:var(--ui-text-primary)}.level-tab:disabled{opacity:.55}.level-tab-number{color:var(--ui-text-placeholder);font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.75rem}.level-tab-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;font-weight:700}.level-tab-meta{color:var(--ui-text-placeholder);font-size:.6875rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.game-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);align-items:start;gap:24px}.play-column,.history-column,.guess-form{min-width:0;display:grid;gap:16px}.history-column{position:sticky;top:24px}.score-card{padding:32px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px 32px}.card-caption{grid-column:1 / -1;color:var(--ui-interactive);font-size:.6875rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.level-heading{min-width:0;align-self:end}.level-heading h2{margin:0;font-size:clamp(1.5rem,3vw,2.25rem);line-height:1.2;letter-spacing:-.03em}.level-heading p{max-width:42rem;margin:8px 0 0;color:var(--ui-text-secondary);font-size:.875rem;line-height:1.6}.score-value{display:flex;align-items:baseline;justify-content:flex-end;align-self:end;line-height:1}.score-value span{font-size:clamp(4.5rem,10vw,7.5rem);font-weight:300;letter-spacing:-.07em}.score-value em{margin-left:8px;color:var(--ui-interactive);font-size:1.5rem;font-style:normal;font-weight:700}.score-label{grid-column:2;justify-self:end;margin-top:-24px;color:var(--ui-text-secondary);font-size:.75rem}.meter-row{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px}.score-meter{height:8px;overflow:hidden;background:var(--ui-layer-hover)}.score-meter span{display:block;height:100%;background:var(--ui-interactive);transition:width .18s ease}.attempt-count{min-width:64px;color:var(--ui-text-secondary);font-size:.75rem;font-weight:700;text-align:right;white-space:nowrap}.score-scale{grid-column:1 / -1;display:flex;justify-content:space-between;margin-top:-16px;color:var(--ui-text-placeholder);font-size:.6875rem}.metric-tip{grid-column:1 / -1}.guess-entry{position:relative;min-height:56px;display:flex;align-items:center;border-bottom:1px solid var(--ui-border-strong);background:var(--ui-layer-02)}.guess-entry:focus-within{outline:2px solid var(--ui-focus);outline-offset:-2px}.guess-entry input{width:100%;min-height:56px;padding:0 56px 0 16px;border:0;outline:0;background:transparent;color:var(--ui-text-primary);font-size:1rem}.guess-entry input::placeholder{color:var(--ui-text-placeholder)}.guess-entry input:disabled{opacity:.55}.input-clear{position:absolute;right:8px;width:40px;height:40px;border:0;background:transparent;color:var(--ui-text-secondary);font-size:1.5rem;cursor:pointer}.input-clear:hover{background:var(--ui-layer-hover)}.input-clear svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:1.5}.hint-panel{grid-column:1 / -1;min-height:80px;padding:16px;display:grid;gap:6px;border-left:4px solid var(--ui-interactive);background:var(--ui-info-layer)}.hint-panel strong{color:var(--ui-text-primary);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}.hint-panel span{color:var(--ui-text-secondary);font-size:.875rem;line-height:1.6}.submit-button{width:100%;min-height:56px;padding:0 24px;background:var(--ui-interactive);color:#fff;font-size:.875rem;font-weight:700}.submit-button:hover:not(:disabled){background:var(--ui-interactive-hover)}.submit-button:disabled,.outline-button:disabled,.glass-button:disabled,.ghost-button:disabled{cursor:not-allowed;opacity:.5}.notice{padding:16px;border-left:4px solid var(--ui-interactive);background:var(--ui-info-layer);color:var(--ui-text-secondary);font-size:.875rem;line-height:1.5}.notice.error{border-left-color:var(--ui-danger);background:var(--ui-danger-layer);color:#750e13}.section-head{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:16px}.section-head h2{margin:0;font-size:1.25rem;line-height:1.3}.ghost-link{min-height:40px;padding:0 8px;border:0;background:transparent;color:var(--ui-interactive);font-size:.875rem;font-weight:600;cursor:pointer}.ghost-link:hover:not(:disabled){background:var(--ui-layer-hover)}.ghost-link:disabled{opacity:.5}.history-card{min-height:320px;overflow:hidden}.history-item{padding:16px;display:grid;gap:12px}.history-item+.history-item{border-top:1px solid var(--ui-border-subtle)}.history-topline{display:flex;align-items:center;justify-content:space-between;gap:16px}.history-topline strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.875rem}.history-topline span{color:var(--ui-interactive);font-family:IBM Plex Mono,ui-monospace,monospace;font-size:.8125rem;font-weight:700}.history-track{height:4px;overflow:hidden;background:var(--ui-layer-hover)}.history-track span{display:block;height:100%;background:var(--ui-interactive)}.empty-panel,.empty-card{color:var(--ui-text-secondary);font-size:.875rem;line-height:1.6}.empty-panel{min-height:320px;padding:32px 24px;display:grid;place-items:center;text-align:center}.empty-card{padding:32px;border-left:4px solid var(--ui-interactive)}.success-card{padding:24px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;border-left:4px solid var(--ui-success)}.success-icon{width:40px;height:40px;color:var(--ui-success)}.success-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.success-title{font-size:1rem;font-weight:700}.success-answer{margin-top:4px;color:var(--ui-text-secondary);font-size:.875rem}.success-answer strong{color:var(--ui-text-primary)}.outline-button{min-width:112px;padding:0 16px;border-color:var(--ui-interactive);background:transparent;color:var(--ui-interactive);font-size:.875rem;font-weight:700}@media(max-width:840px){.app-shell{padding:24px 16px 48px}.game-layout{grid-template-columns:minmax(0,1fr)}.history-column{position:static}.rules-card{grid-template-columns:minmax(0,1fr);gap:12px}.history-card,.empty-panel{min-height:200px}}@media(max-width:560px){.app-shell{padding:16px 0 40px}.phone-frame{gap:16px}.hero,.rules-card,.empty-card{margin-inline:16px}.game-layout{padding-inline:16px}.hero{min-height:auto;flex-direction:column;align-items:stretch;gap:16px;padding-bottom:16px}.hero-actions{justify-content:space-between}.glass-button{min-height:40px;padding:0 12px}.level-selector{border-inline:0}.score-card{padding:24px 20px;grid-template-columns:minmax(0,1fr);gap:16px}.card-caption,.meter-row,.score-scale,.metric-tip,.hint-panel{grid-column:1}.score-value{justify-content:flex-start}.score-label{grid-column:1;justify-self:start;margin-top:-12px}.score-value span{font-size:4.5rem}.success-card{grid-template-columns:auto minmax(0,1fr)}.outline-button{grid-column:1 / -1;width:100%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
