:root{color-scheme:light;font-family:Inter,Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,Helvetica Neue,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--bg: #fbfbfe;--panel: #ffffff;--panel-soft: #f3f5fb;--text: #111827;--subtle: #6b7280;--border: rgba(15, 23, 42, .08);--border-strong: rgba(15, 23, 42, .16);--accent: #215cff;--accent-contrast: #ffffff;--wave-user: #215cff;--wave-bot: #ff5a96;--chip-user-bg: rgba(33, 92, 255, .08);--chip-bot-bg: rgba(255, 90, 150, .12);--chip-user-text: #1d4ed8;--chip-bot-text: #b91c6b;--error: #c62828;--error-bg: rgba(198, 40, 40, .08);--success: #0b8a6a;--success-bg: rgba(11, 138, 106, .08);--input-bg: #ffffff;--input-border: rgba(15, 23, 42, .12);--track-bg: rgba(15, 23, 42, .08)}:root[data-theme=dark]{color-scheme:dark;--bg: #05070f;--panel: #0b0f1b;--panel-soft: #10172b;--text: #f3f5ff;--subtle: #9ca6c8;--border: rgba(129, 140, 200, .16);--border-strong: rgba(129, 140, 200, .3);--accent: #7caaff;--accent-contrast: #07122e;--wave-user: #7caaff;--wave-bot: #ff7ac6;--chip-user-bg: rgba(124, 170, 255, .18);--chip-bot-bg: rgba(255, 122, 198, .18);--chip-user-text: #d6e3ff;--chip-bot-text: #ffd7ef;--error: #ff9fa4;--error-bg: rgba(255, 159, 164, .1);--success: #85f0cd;--success-bg: rgba(133, 240, 205, .12);--input-bg: rgba(14, 18, 33, .95);--input-border: rgba(129, 140, 200, .26);--track-bg: rgba(255, 255, 255, .12)}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--bg);color:var(--text);transition:background .3s ease,color .3s ease}#root{min-height:100vh;display:flex;justify-content:center}.app{min-height:100vh;width:100%;display:flex;justify-content:center;padding:56px 20px 72px;background:var(--bg);color:var(--text);transition:background .3s ease,color .3s ease}.surface{width:min(820px,100%);display:flex;flex-direction:column;gap:32px}.top-bar{display:flex;justify-content:space-between;align-items:center;gap:20px}.tagline{font-size:.9rem;letter-spacing:.32em;text-transform:uppercase;color:var(--subtle);display:inline-block}.actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}button{font-family:inherit;font-size:.95rem;border:none;border-radius:999px;padding:.6rem 1.1rem;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease,opacity .2s ease}button:disabled{opacity:.6;cursor:not-allowed}.pill-button{background:transparent;border:1px solid var(--border);color:var(--text)}.pill-button:hover:not(:disabled){border-color:var(--border-strong)}.theme-button{min-width:110px}.action-button{background:var(--accent);color:var(--accent-contrast);border-radius:12px;padding:.65rem 1.4rem;font-weight:600;letter-spacing:.04em;box-shadow:0 10px 24px #215cff2e}.action-button:hover:not(:disabled){filter:brightness(1.05);box-shadow:0 14px 28px #215cff38}.wave-panel{background:var(--panel-soft);border-radius:20px;padding:24px;border:1px solid var(--border)}.waveframe{width:100%;height:140px}.waveframe svg{width:100%;height:100%}.wave-path{fill:none;stroke-width:2.6;stroke-linecap:round;stroke-dasharray:12 24;animation-name:wave-shift;animation-timing-function:linear;animation-iteration-count:infinite}.wave-user{stroke:var(--wave-user);animation-duration:var(--speed-user, 7s);stroke-dashoffset:var(--offset-user, 0)}.wave-bot{stroke:var(--wave-bot);opacity:.85;animation-duration:var(--speed-bot, 7s);stroke-dashoffset:var(--offset-bot, 0)}@keyframes wave-shift{0%{stroke-dashoffset:0}to{stroke-dashoffset:-320}}.wave-caption{margin-top:16px;display:flex;align-items:baseline;gap:12px;font-size:.95rem;color:var(--subtle)}.caption-label{text-transform:uppercase;letter-spacing:.28em;font-size:.72rem}.caption-value{font-size:2rem;line-height:1;font-weight:600;color:var(--text)}.notice{padding:14px 18px;border-radius:16px;border:1px solid transparent;font-size:.95rem}.notice .highlight{font-weight:600}.notice.success{background:var(--success-bg);color:var(--success);border-color:transparent}.notice.success .highlight{font-weight:600}.notice.error{background:var(--error-bg);color:var(--error);border-color:transparent}.entry{background:var(--panel);border:1px solid var(--border);border-radius:20px;padding:24px;display:flex;flex-direction:column;gap:12px}.entry-label{text-transform:uppercase;letter-spacing:.22em;font-size:.78rem;color:var(--subtle)}.entry-row{display:flex;gap:12px;flex-wrap:wrap}.entry-row input{flex:1 1 260px;border:1px solid var(--input-border);border-radius:12px;padding:.75rem 1rem;font-size:1.05rem;background:var(--input-bg);color:var(--text);transition:border-color .2s ease,box-shadow .2s ease}.entry-row input::placeholder{color:var(--subtle);opacity:.6}.entry-row input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px #215cff24}.entry-row input:disabled{opacity:.65;cursor:not-allowed}.hint-text{margin:0;font-size:.88rem;color:var(--subtle)}.history{background:var(--panel);border:1px solid var(--border);border-radius:20px;padding:24px;display:flex;flex-direction:column;gap:16px}.history-header{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.history-header h2{margin:0;font-size:1.1rem;letter-spacing:.06em;text-transform:uppercase}.history-count{font-size:.82rem;color:var(--subtle);text-transform:uppercase;letter-spacing:.18em}.history-empty{margin:0;font-size:.95rem;color:var(--subtle)}.history-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}.turn-item{background:var(--panel-soft);border-radius:16px;padding:16px 18px;border:1px solid var(--border);display:flex;flex-direction:column;gap:12px}.turn-meta{display:flex;justify-content:space-between;align-items:center;font-size:.88rem;letter-spacing:.24em;text-transform:uppercase;color:var(--subtle)}.turn-score{font-size:1.2rem;font-weight:600;color:var(--text);letter-spacing:0}.turn-words{display:flex;flex-wrap:wrap;gap:10px}.word-chip{display:inline-flex;align-items:center;justify-content:center;padding:.55rem 1.05rem;border-radius:999px;font-size:.95rem;font-weight:500;text-transform:lowercase}.word-chip.user{background:var(--chip-user-bg);color:var(--chip-user-text)}.word-chip.bot{background:var(--chip-bot-bg);color:var(--chip-bot-text)}.progress{position:relative;width:100%;height:6px;border-radius:999px;background:var(--track-bg);overflow:hidden}.progress-fill{position:absolute;inset:0;background:linear-gradient(90deg,var(--wave-user),var(--wave-bot));border-radius:inherit;transition:width .4s ease}.modal-backdrop{position:fixed;inset:0;background:#0508148c;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:32px 20px;z-index:1000}.modal-card{width:min(420px,100%);background:var(--panel);border:1px solid var(--border);border-radius:18px;padding:28px;box-shadow:0 24px 64px #05091947;display:flex;flex-direction:column;gap:16px;color:var(--text)}.modal-card h2{margin:0;font-size:1.4rem;letter-spacing:.08em;text-transform:uppercase}.modal-intro,.modal-outro{margin:0;font-size:.95rem;color:var(--subtle)}.modal-outro{font-weight:500}.rules-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:14px;font-size:.98rem}.rules-label{display:block;font-size:.72rem;letter-spacing:.26em;text-transform:uppercase;color:var(--subtle);margin-bottom:4px}.rules-word{font-weight:600;text-transform:lowercase;color:var(--wave-user)}.modal-close{align-self:flex-end}@media(max-width:720px){.app{padding:40px 16px 56px}.top-bar{flex-direction:column;align-items:flex-start;gap:16px}.actions{width:100%;justify-content:flex-start}.entry-row{flex-direction:column}.entry-row input,.action-button{width:100%}}
