:root{--bg: #000;--fg: #fff;--fg-dim: rgba(255, 255, 255, .5);--fg-muted: rgba(255, 255, 255, .3);--accent: #fff;--glass: rgba(255, 255, 255, .06);--glass-border: rgba(255, 255, 255, .12);--glass-hover: rgba(255, 255, 255, .1);--radius: 16px;--radius-sm: 10px;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-serif: "Fraunces", Georgia, serif;--font-mono: "JetBrains Mono", monospace;--transition: .2s cubic-bezier(.4, 0, .2, 1)}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%;width:100%;overflow:hidden}body{font-family:var(--font-sans);background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit;font-size:inherit}input,textarea,select{font-family:inherit;color:inherit;background:transparent;border:none;outline:none}.app{height:100%;display:flex;flex-direction:column;position:relative}.glass{background:var(--glass);border:1px solid var(--glass-border);border-radius:var(--radius);backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2)}.glass-sm{background:var(--glass);border:1px solid var(--glass-border);border-radius:var(--radius-sm);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.input-screen{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;gap:32px;overflow-y:auto}.brand{display:flex;flex-direction:column;align-items:center;gap:8px}.brand-name{font-family:var(--font-serif);font-size:28px;font-weight:400;letter-spacing:-.5px}.brand-tag{font-size:11px;text-transform:uppercase;letter-spacing:2px;color:var(--fg-dim)}.hero{text-align:center;max-width:520px}.hero h1{font-family:var(--font-serif);font-size:clamp(24px,5vw,36px);font-weight:300;line-height:1.3;margin-bottom:12px;letter-spacing:-.5px}.hero p{font-size:14px;color:var(--fg-dim);line-height:1.6}.input-panel{width:100%;max-width:560px;display:flex;flex-direction:column;gap:12px}.input-panel textarea{width:100%;min-height:140px;resize:vertical;padding:16px;font-size:14px;line-height:1.6;color:var(--fg);border-radius:var(--radius);background:var(--glass);border:1px solid var(--glass-border);transition:border-color var(--transition)}.input-panel textarea::placeholder{color:var(--fg-muted)}.input-panel textarea:focus{border-color:#ffffff4d}.url-row{display:flex;gap:8px}.url-row input{flex:1;padding:12px 16px;font-size:14px;border-radius:var(--radius-sm);background:var(--glass);border:1px solid var(--glass-border)}.url-row input::placeholder{color:var(--fg-muted)}.btn{padding:10px 20px;border-radius:var(--radius-sm);font-size:13px;font-weight:500;transition:all var(--transition);white-space:nowrap}.btn-primary{background:var(--fg);color:var(--bg)}.btn-primary:hover{opacity:.85}.btn-ghost{background:var(--glass);border:1px solid var(--glass-border);color:var(--fg)}.btn-ghost:hover{background:var(--glass-hover)}.start-row{display:flex;align-items:center;justify-content:center;gap:16px}.word-info{font-size:12px;color:var(--fg-muted)}.reader-screen{flex:1;display:flex;flex-direction:column;position:relative}.reader-stage{flex:1;display:flex;align-items:center;justify-content:center;padding:24px;user-select:none;-webkit-user-select:none;cursor:pointer}.word-display{display:flex;align-items:baseline;justify-content:center;font-size:clamp(36px,10vw,72px);font-weight:500;letter-spacing:-1px;transition:opacity .05s}.word-display.font-serif{font-family:var(--font-serif);font-weight:300}.word-display.font-mono{font-family:var(--font-mono);font-weight:400;font-size:clamp(28px,8vw,56px)}.word-display.font-sans{font-family:var(--font-sans)}.word-before{color:var(--fg-dim)}.word-pivot{color:var(--accent)}.word-after{color:var(--fg-dim)}.controls-bar{padding:16px 24px;display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}.ctrl-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--glass);border:1px solid var(--glass-border);transition:all var(--transition);font-size:16px}.ctrl-btn:hover{background:var(--glass-hover)}.ctrl-btn.active{background:var(--fg);color:var(--bg);border-color:var(--fg)}.ctrl-btn-wide{width:auto;padding:0 14px;border-radius:20px;font-size:12px;font-weight:500}.progress-bar{height:2px;background:var(--glass-border);position:relative}.progress-fill{height:100%;background:var(--fg);transition:width .1s linear}.settings-overlay{position:fixed;inset:0;background:#0009;z-index:100;display:flex;align-items:flex-end;justify-content:center;animation:fadeIn .2s}.settings-panel{width:100%;max-width:480px;max-height:80vh;overflow-y:auto;padding:24px;border-radius:var(--radius) var(--radius) 0 0;display:flex;flex-direction:column;gap:20px;animation:slideUp .25s cubic-bezier(.4,0,.2,1)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.setting-label{font-size:13px;color:var(--fg-dim);white-space:nowrap}.setting-value{font-size:13px;font-weight:500}.setting-select{padding:8px 12px;border-radius:8px;background:var(--glass);border:1px solid var(--glass-border);font-size:13px;color:var(--fg);min-width:120px}.setting-select option{background:#111;color:#fff}.speed-slider{display:flex;align-items:center;gap:12px;width:100%}.speed-slider input[type=range]{flex:1;-webkit-appearance:none;appearance:none;height:4px;background:var(--glass-border);border-radius:2px;outline:none}.speed-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;border-radius:50%;background:var(--fg);cursor:pointer}.settings-header{display:flex;align-items:center;justify-content:space-between}.settings-title{font-size:16px;font-weight:600}.top-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 20px}.top-bar-brand{font-family:var(--font-serif);font-size:16px;font-weight:400}.top-bar-actions{display:flex;gap:8px}.done-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:#000000d9;backdrop-filter:blur(12px);z-index:50}.done-text{font-family:var(--font-serif);font-size:24px;font-weight:300}@media (max-width: 600px){.controls-bar{padding:12px 16px;gap:6px}.ctrl-btn{width:36px;height:36px;font-size:14px}.settings-panel{padding:20px 16px}}
