:root{--roohi-blue: #007AFF;--roohi-blue-dark: #005BB5;--roohi-blue-light: #5AC8FA;--roohi-gold: #FF9500;--roohi-gold-light: #FFCC00;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-serif: "Newsreader", Georgia, "Times New Roman", serif;--font-rounded: "Plus Jakarta Sans", -apple-system, system-ui, sans-serif;--bg-canvas: #F9FAFB;--bg-surface: #FFFFFF;--bg-surface-2: #F3F4F6;--bg-surface-glass: rgba(255, 255, 255, .85);--border-subtle: #E5E7EB;--border-glass: rgba(255, 255, 255, .5);--text-primary: #111827;--text-secondary: #6B7280;--text-muted: #9CA3AF;--active-sentence-bg: rgba(0, 122, 255, .12);--active-sentence-border: rgba(0, 122, 255, .3);--active-word-bg: rgba(0, 122, 255, .2);--active-word-color: #111827;--active-word-shadow: 0 1px 3px rgba(0, 122, 255, .15);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .05);--shadow-md: 0 4px 20px -2px rgba(0, 0, 0, .07);--shadow-lg: 0 12px 32px -4px rgba(0, 0, 0, .12);--shadow-dock: 0 20px 40px -10px rgba(0, 0, 0, .15), 0 0 1px rgba(0, 0, 0, .1);--safe-bottom: env(safe-area-inset-bottom, 16px)}[data-theme=sepia]{--bg-canvas: #FBF0D9;--bg-surface: #F4E6CA;--bg-surface-2: #E8DAB7;--bg-surface-glass: rgba(244, 230, 202, .88);--border-subtle: #E2D1B3;--border-glass: rgba(244, 230, 202, .6);--text-primary: #382818;--text-secondary: #7C6D5B;--text-muted: #9E8D7B;--active-sentence-bg: rgba(217, 119, 6, .16);--active-sentence-border: rgba(217, 119, 6, .35);--active-word-bg: rgba(217, 119, 6, .22);--active-word-color: #382818;--active-word-shadow: 0 1px 3px rgba(217, 119, 6, .15);--shadow-sm: 0 1px 3px rgba(56, 40, 24, .05);--shadow-md: 0 4px 20px -2px rgba(56, 40, 24, .08);--shadow-lg: 0 12px 32px -4px rgba(56, 40, 24, .14);--shadow-dock: 0 20px 40px -10px rgba(56, 40, 24, .18), 0 0 1px rgba(56, 40, 24, .1)}[data-theme=dark]{--bg-canvas: #000000;--bg-surface: #18181B;--bg-surface-2: #27272A;--bg-surface-glass: rgba(24, 24, 27, .85);--border-subtle: #2E2E33;--border-glass: rgba(255, 255, 255, .08);--text-primary: #F3F4F6;--text-secondary: #9CA3AF;--text-muted: #71717A;--active-sentence-bg: rgba(56, 189, 248, .2);--active-sentence-border: rgba(56, 189, 248, .4);--active-word-bg: rgba(56, 189, 248, .35);--active-word-color: #FFFFFF;--active-word-shadow: 0 1px 4px rgba(56, 189, 248, .25);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .4);--shadow-md: 0 4px 20px -2px rgba(0, 0, 0, .6);--shadow-lg: 0 12px 32px -4px rgba(0, 0, 0, .7);--shadow-dock: 0 20px 50px -10px rgba(0, 0, 0, .8), 0 0 1px rgba(255, 255, 255, .1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}html,body{width:100%;height:100%;overflow-x:hidden;background-color:var(--bg-canvas);color:var(--text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .25s ease,color .25s ease}#root{min-height:100%;display:flex;flex-direction:column}button{font-family:inherit;cursor:pointer;border:none;background:none;outline:none}input,textarea{font-family:inherit;color:inherit;outline:none;border:none}@keyframes pulseGlow{0%,to{opacity:.85;transform:scale(1)}50%{opacity:1;transform:scale(1.02)}}@keyframes spinner{to{transform:rotate(360deg)}}.spin{animation:spinner .8s linear infinite}.app-container{display:flex;flex-direction:column;min-height:100vh;position:relative;background-color:var(--bg-canvas);color:var(--text-primary)}.roohi-web-page{min-height:100vh;width:100%;display:flex;flex-direction:column;background-color:#f8f9fa;color:#1c1c1e;box-sizing:border-box;position:relative}.roohi-navbar{position:sticky;top:0;z-index:50;background:#ffffffe0;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(0,0,0,.06);width:100%}.roohi-nav-inner{max-width:1080px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}.roohi-nav-left{display:flex;align-items:center;gap:28px}.roohi-brand-group{display:inline-flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:opacity .15s ease}.roohi-brand-group:hover{opacity:.85}.roohi-brand-title{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Inter,sans-serif;font-size:1.25rem;font-weight:800;letter-spacing:.12em;color:#1c1c1e}.roohi-status-dot{width:6.5px;height:6.5px;border-radius:50%;background:#34c759;box-shadow:0 0 0 2.5px #34c75933;display:inline-block;animation:roohi-pulse-green 2.5s infinite alternate ease-in-out}@keyframes roohi-pulse-green{0%{transform:scale(.9);opacity:.8}to{transform:scale(1.2);opacity:1}}.roohi-desktop-tab-switcher{display:flex;align-items:center;background:#f1f3f5;border-radius:999px;padding:3px;gap:2px;border:1px solid rgba(0,0,0,.04)}.tab-switch-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 16px;border-radius:999px;font-size:.84rem;font-weight:500;color:#6b7280;background:transparent;border:none;cursor:pointer;transition:all .18s cubic-bezier(.16,1,.3,1);white-space:nowrap}.tab-switch-btn:hover{color:#1c1c1e}.tab-switch-btn.is-active{background:#fff;color:#1c1c1e;font-weight:600;box-shadow:0 1px 3px #00000014,0 0 0 1px #0000000a}.tab-badge{font-size:.7rem;font-weight:700;color:#6b7280;background:#e5e7eb;border-radius:999px;padding:1px 6px;line-height:1.3}.tab-switch-btn.is-active .tab-badge{background:#007aff;color:#fff}.roohi-nav-right{display:flex;align-items:center;gap:10px}.roohi-lofi-toggle{display:inline-flex;align-items:center;gap:7px;padding:7px 14px;border-radius:999px;border:1px solid #E5E5EA;background:#fff;color:#6b7280;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .18s ease;box-shadow:0 1px 2px #00000008}.roohi-lofi-toggle:hover{background:#f9fafb;color:#1c1c1e;border-color:#d1d5db}.roohi-lofi-toggle.is-active{background:#007aff1a;border-color:#007aff4d;color:#007aff}.roohi-lofi-bars{display:flex;align-items:flex-end;gap:2px;height:12px}.roohi-lofi-bars .bar{width:2px;background:currentColor;border-radius:1px;animation:roohi-bar-bounce 1s ease-in-out infinite alternate}.roohi-lofi-bars .bar-1{height:10px;animation-delay:0s}.roohi-lofi-bars .bar-2{height:6px;animation-delay:.2s}.roohi-lofi-bars .bar-3{height:12px;animation-delay:.1s}@keyframes roohi-bar-bounce{0%{transform:scaleY(.3)}to{transform:scaleY(1)}}.roohi-voice-capsule{display:inline-flex;align-items:center;gap:7px;padding:7px 14px;border-radius:999px;background:#fff;border:1px solid #E5E5EA;box-shadow:0 1px 3px #00000008;cursor:pointer;color:#1c1c1e;transition:all .18s ease}.roohi-voice-capsule:hover{border-color:#d1d5db;background:#f9fafb}.voice-wave-icon{display:flex;align-items:center;gap:1.5px;height:11px}.voice-wave-icon span{width:2px;background:#007aff;border-radius:1px}.voice-wave-icon span:nth-child(1){height:7px}.voice-wave-icon span:nth-child(2){height:11px}.voice-wave-icon span:nth-child(3){height:8px}.voice-name-text{font-size:.84rem;font-weight:600;color:#1c1c1e}.voice-chevron{color:#8e8e93}.roohi-signin-btn{font-size:.82rem;font-weight:600;padding:7px 18px;border-radius:999px;background:#1c1c1e;color:#fff;border:none;cursor:pointer;transition:all .18s ease;box-shadow:0 1px 3px #0000001a}.roohi-signin-btn:hover{background:#000;transform:translateY(-.5px);box-shadow:0 4px 12px #00000026}.roohi-user-menu-wrapper{position:relative}.roohi-user-pill{display:inline-flex;align-items:center;gap:8px;padding:4px 12px 4px 4px;border-radius:999px;background:#fff;border:1px solid #E5E5EA;cursor:pointer;box-shadow:0 1px 3px #00000008;transition:all .18s ease}.roohi-user-pill:hover{border-color:#d1d5db}.user-avatar-circle{width:26px;height:26px;border-radius:50%;background:#1c1c1e;color:#fff;font-size:.72rem;font-weight:700;display:flex;align-items:center;justify-content:center}.user-email-snippet{font-size:.82rem;font-weight:600;color:#1c1c1e;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.roohi-user-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:200px;background:#fff;border:1px solid #E5E7EB;border-radius:16px;padding:6px;box-shadow:0 12px 36px #0000001f;z-index:100}.dropdown-email{font-size:.8rem;font-weight:600;color:#1c1c1e;padding:6px 10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown-divider{height:1px;background:#f3f4f6;margin:4px 0}.dropdown-item{width:100%;display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:10px;border:none;background:transparent;font-size:.82rem;font-weight:500;color:#374151;cursor:pointer;transition:background .15s}.dropdown-item:hover{background:#f9fafb;color:#1c1c1e}.dropdown-item.danger{color:#ef4444}.roohi-page-container{max-width:980px;margin:0 auto;width:100%;padding:36px 24px 140px;flex:1;display:flex;flex-direction:column;box-sizing:border-box}.roohi-home-expanded{display:flex;flex-direction:column;gap:28px}.roohi-hero-card.continue-card{background:#fff;border:1px solid #E5E7EB;border-radius:24px;padding:26px 30px;box-shadow:0 4px 20px -2px #0000000a;display:flex;flex-direction:column;gap:16px;transition:all .2s ease}.roohi-hero-card.continue-card:hover{border-color:#d1d5db;box-shadow:0 8px 28px -4px #0000000f}.continue-card-header{display:flex;align-items:center;justify-content:space-between}.continue-label-group{display:flex;align-items:center;gap:8px}.continue-pulse-dot{width:6.5px;height:6.5px;border-radius:50%;background:#007aff;box-shadow:0 0 8px #007aff99;animation:roohi-pulse-blue 2s ease infinite}@keyframes roohi-pulse-blue{0%{transform:scale(.9);opacity:.8}50%{transform:scale(1.2);opacity:1}to{transform:scale(.9);opacity:.8}}.continue-label{font-size:.72rem;font-weight:800;letter-spacing:.12em;color:#007aff;text-transform:uppercase}.continue-library-link{display:inline-flex;align-items:center;gap:4px;font-size:.84rem;font-weight:600;color:#6b7280;background:transparent;border:none;cursor:pointer;transition:color .15s ease}.continue-library-link:hover{color:#007aff}.continue-card-content{display:flex;flex-direction:column;gap:14px}.continue-book-title{font-size:1.25rem;font-weight:600;line-height:1.35;color:#1c1c1e}.continue-book-meta{font-size:.86rem;font-weight:500;color:#6b7280;display:flex;align-items:center;gap:6px;margin-top:4px}.voice-tag{color:#1c1c1e;font-weight:600}.percent-tag{color:#007aff;font-weight:600}.roohi-progress-track{height:6px;background:#f3f4f6;border-radius:999px;overflow:hidden;width:100%}.roohi-progress-fill{height:100%;background:linear-gradient(135deg,#007aff,#005bb5);border-radius:999px;transition:width .3s cubic-bezier(.16,1,.3,1)}.continue-action-row{display:flex;align-items:center;justify-content:flex-start;padding-top:4px}.roohi-tactile-resume-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 32px;border-radius:14px;background:linear-gradient(135deg,#007aff,#005bb5);color:#fff;font-size:.95rem;font-weight:700;border:none;cursor:pointer;box-shadow:0 4px 16px #007aff47;transition:all .18s cubic-bezier(.16,1,.3,1)}.roohi-tactile-resume-btn:hover{transform:translateY(-1px);box-shadow:0 6px 20px #007aff61}.roohi-tactile-resume-btn:active{transform:scale(.98)}.roohi-hero-card.welcome-card{background:#fff;border:1px solid #E5E7EB;border-radius:24px;padding:36px 32px;box-shadow:0 4px 20px -2px #00000008}.welcome-inner{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;max-width:580px;margin:0 auto}.welcome-headphones-icon{color:#007aff;stroke-width:1.8}.welcome-title{font-size:1.45rem;font-weight:700;color:#1c1c1e;letter-spacing:-.01em}.welcome-desc{font-size:.92rem;color:#6b7280;line-height:1.5}.welcome-sample-pill{display:inline-flex;align-items:center;gap:6px;padding:8px 18px;border-radius:999px;background:#007aff14;color:#007aff;font-size:.84rem;font-weight:600;border:1px solid rgba(0,122,255,.18);cursor:pointer;margin-top:6px;transition:all .15s ease}.welcome-sample-pill:hover{background:#007aff24;transform:translateY(-.5px)}.roohi-primary-action-wrap{width:100%}.roohi-paste-listen-card{display:flex;align-items:center;gap:20px;width:100%;padding:20px 26px;background:#fff;border:1px solid #E5E7EB;border-radius:22px;box-shadow:0 4px 18px -2px #0000000a;cursor:pointer;text-align:left;transition:all .22s cubic-bezier(.16,1,.3,1);box-sizing:border-box}.roohi-paste-listen-card:hover{transform:translateY(-2px);box-shadow:0 12px 32px -4px #00000014;border-color:#cbd5e1}.roohi-paste-listen-card:active{transform:scale(.99)}.paste-icon-circle{width:50px;height:50px;border-radius:16px;background:linear-gradient(135deg,#007aff,#005bb5);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 6px 16px #007aff4d}.paste-text-content{flex:1;min-width:0}.paste-title-row{display:flex;align-items:center;gap:8px}.paste-primary-title{font-size:1.12rem;font-weight:700;color:#1c1c1e}.paste-kbd-hint{display:inline-flex;align-items:center;padding:2px 7px;border-radius:6px;background:#f1f5f9;border:1px solid #E2E8F0;font-size:.74rem;font-weight:600;color:#64748b;font-family:monospace}.paste-sub-title{font-size:.86rem;color:#6b7280;margin-top:3px;line-height:1.35}.paste-play-circle{width:42px;height:42px;border-radius:50%;background:#007aff1a;color:#007aff;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .18s ease}.roohi-paste-listen-card:hover .paste-play-circle{transform:scale(1.1);background:#007aff;color:#fff}.roohi-secondary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.roohi-secondary-card{display:flex;align-items:flex-start;gap:14px;padding:20px;background:#fff;border:1px solid #E5E7EB;border-radius:20px;box-shadow:0 2px 10px #00000008;cursor:pointer;text-align:left;transition:all .2s cubic-bezier(.16,1,.3,1);box-sizing:border-box}.roohi-secondary-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000000f;border-color:#cbd5e1}.roohi-secondary-card:active{transform:scale(.98)}.sec-icon-circle{width:44px;height:44px;border-radius:13px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.sec-icon-circle.blue{background:#007aff1a;color:#007aff}.sec-icon-circle.emerald{background:#10b9811a;color:#10b981}.sec-icon-circle.amber{background:#ff95001a;color:#ff9500}.sec-card-body{display:flex;flex-direction:column}.sec-card-title{font-size:.98rem;font-weight:700;color:#1c1c1e}.sec-card-sub{font-size:.8rem;color:#6b7280;margin-top:3px;line-height:1.35}.roohi-doctor-sample-card{background:#fff;border:1px solid #E5E7EB;border-left:4px solid #007AFF;border-radius:20px;padding:22px 26px;display:flex;flex-direction:column;gap:12px;box-shadow:0 2px 10px #00000008}.sample-card-header{display:flex;align-items:center;justify-content:space-between}.sample-card-badge{font-size:.72rem;font-weight:800;letter-spacing:.08em;color:#007aff;background:#eff6ff;padding:3px 8px;border-radius:6px}.sample-card-tag{font-size:.78rem;color:#8e8e93}.sample-card-title{font-size:1.05rem;font-weight:600;color:#1c1c1e;line-height:1.35}.sample-card-snippet{font-size:.88rem;color:#4b5563;font-style:italic;line-height:1.5}.sample-card-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:4px}.sample-listen-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 18px;border-radius:999px;background:#1c1c1e;color:#fff;font-size:.82rem;font-weight:600;border:none;cursor:pointer;transition:all .18s ease}.sample-listen-btn:hover{background:#000;transform:translateY(-.5px);box-shadow:0 4px 12px #00000026}.sample-meta-note{font-size:.78rem;color:#8e8e93}.roohi-library-expanded{display:flex;flex-direction:column;gap:20px}.library-header-row{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding-bottom:4px}.library-title{font-size:1.75rem;font-weight:800;color:#1c1c1e;letter-spacing:-.02em}.library-subtitle{font-size:.88rem;color:#6b7280;margin-top:3px}.library-search-wrapper{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #E5E7EB;border-radius:14px;padding:8px 14px;width:100%;max-width:340px;box-shadow:0 1px 3px #00000005;transition:all .15s ease}.library-search-wrapper:focus-within{border-color:#007aff;box-shadow:0 0 0 3px #007aff1f}.search-icon{color:#9ca3af;flex-shrink:0}.library-search-input{flex:1;background:transparent;border:none;font-size:.88rem;color:#1c1c1e;outline:none}.search-clear-btn{background:transparent;border:none;color:#9ca3af;cursor:pointer;padding:2px}.library-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;gap:12px;background:#fff;border:1px dashed #D1D5DB;border-radius:24px}.empty-book-icon{color:#d1d5db}.empty-title{font-size:1.15rem;font-weight:700;color:#1c1c1e}.empty-desc{font-size:.88rem;color:#6b7280;max-width:360px;line-height:1.45}.library-empty-cta{display:inline-flex;align-items:center;padding:9px 20px;border-radius:999px;background:#1c1c1e;color:#fff;font-size:.84rem;font-weight:600;border:none;cursor:pointer;margin-top:6px;transition:all .15s ease}.library-empty-cta:hover{background:#007aff}.library-doc-grid{display:flex;flex-direction:column;gap:12px}.library-doc-card{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 24px;background:#fff;border:1px solid #E5E7EB;border-radius:18px;box-shadow:0 1px 4px #00000005;cursor:pointer;transition:all .18s cubic-bezier(.16,1,.3,1)}.library-doc-card:hover{transform:translateY(-1px);border-color:#cbd5e1;box-shadow:0 6px 20px #0000000d}.library-doc-card.is-active{border-color:#007aff;background:#f8fbff}.doc-card-main{flex:1;min-width:0}.doc-card-title-row{display:flex;align-items:center;gap:10px}.doc-card-title{font-size:1.05rem;font-weight:600;color:#1c1c1e;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.doc-percent-pill{font-size:.72rem;font-weight:700;color:#007aff;background:#eff6ff;padding:2px 8px;border-radius:999px}.doc-card-meta{font-size:.8rem;color:#6b7280;margin-top:4px;display:flex;align-items:center;gap:6px}.doc-meta-item{display:inline-flex;align-items:center;gap:4px}.library-mini-progress{height:5px;background:#e5e7eb;border-radius:999px;margin-top:10px;overflow:hidden;width:100%}.library-progress-bar{height:100%;background:linear-gradient(135deg,#007aff,#005bb5);border-radius:999px;transition:width .3s cubic-bezier(.16,1,.3,1)}.doc-card-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.doc-action-btn{width:34px;height:34px;border-radius:50%;border:1px solid #E5E5EA;background:#fff;color:#6b7280;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease;padding:0}.doc-action-btn.play{background:#007aff;border-color:#007aff;color:#fff}.doc-action-btn.play:hover{transform:scale(1.08)}.doc-action-btn.reset:hover{color:#1c1c1e;border-color:#cbd5e1}.doc-action-btn.delete:hover{color:#ef4444;border-color:#fca5a5}.doc-action-btn.share:hover{color:#007aff;border-color:#93c5fd}.roohi-floating-mini-player{position:fixed;bottom:24px;left:50%;transform:translate(-50%);width:calc(100% - 48px);max-width:760px;background:#fffffff0;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(0,0,0,.08);border-radius:20px;box-shadow:0 16px 40px #0000001f;z-index:90;padding:12px 20px;cursor:pointer;transition:all .2s ease}.roohi-floating-mini-player:hover{transform:translate(-50%) translateY(-2px);box-shadow:0 20px 48px #00000029}.mini-player-inner{display:flex;align-items:center;justify-content:space-between;gap:16px}.mini-player-info{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.mini-status-pill{font-size:.65rem;font-weight:800;letter-spacing:.08em;color:#007aff;background:#007aff1a;padding:2px 7px;border-radius:6px;flex-shrink:0}.mini-player-title{font-size:.92rem;font-weight:600;color:#1c1c1e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini-player-subtitle{font-size:.8rem;color:#8e8e93;flex-shrink:0}.mini-play-btn{width:36px;height:36px;border-radius:50%;background:#007aff;color:#fff;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .15s ease;box-shadow:0 2px 8px #007aff4d}.mini-play-btn:hover{transform:scale(1.08)}.roohi-mobile-tab-bar{display:none}@media(max-width:768px){.roohi-desktop-tab-switcher{display:none}.roohi-mobile-tab-bar{display:flex;align-items:center;position:fixed;bottom:0;left:0;right:0;background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-top:1px solid rgba(0,0,0,.06);height:60px;padding:0 16px;z-index:80}.roohi-tab-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;background:transparent;border:none;color:#8e8e93;cursor:pointer}.roohi-tab-item.is-active{color:#007aff;font-weight:600}.tab-icon-wrap{position:relative}.library-count-bubble{font-size:.65rem;font-weight:700;background:#007aff;color:#fff;border-radius:999px;padding:0 5px;position:absolute;top:-4px;right:-8px}.tab-label{font-size:.72rem}.roohi-floating-mini-player{bottom:68px;width:calc(100% - 24px)}.roohi-secondary-grid{grid-template-columns:1fr}.library-header-row{flex-direction:column;align-items:flex-start}.library-search-wrapper{max-width:100%}}.roohi-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000006b;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px;animation:fadeIn .15s ease-out}.roohi-modal-card{background:#fff;border-radius:24px;width:100%;max-width:520px;padding:26px;box-shadow:0 24px 56px #00000029;display:flex;flex-direction:column;gap:18px;border:1px solid #E5E7EB;animation:modalScaleUp .18s cubic-bezier(.16,1,.3,1)}@keyframes modalScaleUp{0%{transform:scale(.96);opacity:0}to{transform:scale(1);opacity:1}}.roohi-modal-header{display:flex;align-items:center;justify-content:space-between}.modal-header-icon-group{display:flex;align-items:center;gap:12px}.modal-title{font-size:1.15rem;font-weight:700;color:#1c1c1e}.modal-subtitle{font-size:.82rem;color:#8e8e93}.modal-close-btn{background:transparent;border:none;color:#8e8e93;cursor:pointer;padding:6px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .15s}.modal-close-btn:hover{background:#f3f4f6;color:#1c1c1e}.roohi-modal-form{display:flex;flex-direction:column;gap:14px}.modal-input-wrap{width:100%}.modal-text-input{width:100%;padding:13px 16px;border-radius:14px;border:1px solid #D1D5DB;font-size:.94rem;color:#1c1c1e;outline:none;box-sizing:border-box;transition:border-color .15s}.modal-text-input:focus{border-color:#007aff;box-shadow:0 0 0 3px #007aff1f}.modal-text-input.title{font-weight:600}.modal-textarea{width:100%;padding:14px 16px;border-radius:14px;border:1px solid #D1D5DB;font-size:.94rem;color:#1c1c1e;outline:none;resize:vertical;min-height:150px;font-family:inherit;box-sizing:border-box;transition:border-color .15s}.modal-textarea:focus{border-color:#007aff;box-shadow:0 0 0 3px #007aff1f}.modal-error-badge{font-size:.82rem;color:#dc2626;background:#fee2e2;padding:8px 12px;border-radius:10px}.modal-actions-row{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:6px}.modal-primary-btn{display:inline-flex;align-items:center;gap:6px;padding:10px 22px;border-radius:999px;background:linear-gradient(135deg,#007aff,#005bb5);color:#fff;font-size:.88rem;font-weight:600;border:none;cursor:pointer;box-shadow:0 2px 10px #007aff47;transition:all .15s ease}.modal-primary-btn:hover:not(:disabled){transform:translateY(-.5px);box-shadow:0 4px 14px #007aff61}.modal-primary-btn:disabled{opacity:.5;cursor:not-allowed}.modal-secondary-btn{padding:10px 18px;border-radius:999px;background:#f3f4f6;color:#374151;font-size:.88rem;font-weight:600;border:none;cursor:pointer;transition:all .15s ease}.modal-secondary-btn:hover:not(:disabled){background:#e5e7eb;color:#111827}.modal-secondary-btn.save{background:#007aff1a;color:#007aff}.modal-secondary-btn.save:hover:not(:disabled){background:#007aff2e}.modal-secondary-btn:disabled{opacity:.5;cursor:not-allowed}.workspace-page-wrapper{height:100vh;height:100dvh;width:100%;display:flex;flex-direction:column;background-color:#f8f9fa;color:#1c1c1e;overflow:hidden;box-sizing:border-box}.workspace-container{max-width:980px;margin:0 auto;width:100%;height:100%;padding:16px 24px 20px;display:flex;flex-direction:column;gap:12px;box-sizing:border-box;overflow:hidden}.workspace-header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;flex-shrink:0}.workspace-cancel-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 18px;border-radius:999px;background:#fff;border:1px solid #E5E7EB;color:#4b5563;font-size:.86rem;font-weight:600;cursor:pointer;transition:all .18s ease;box-shadow:0 1px 3px #00000005}.workspace-cancel-btn:hover{background:#f3f4f6;color:#1c1c1e;border-color:#d1d5db}.workspace-header-pills{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.workspace-pill-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:999px;background:#fff;border:1px solid #E5E5EA;color:#1c1c1e;font-size:.82rem;font-weight:600;cursor:pointer;box-shadow:0 1px 3px #00000005;transition:all .15s ease}.workspace-pill-btn:hover{background:#f9fafb;border-color:#d1d5db}.workspace-pill-btn .pill-icon{color:#007aff}.workspace-stats-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:999px;background:#f1f3f5;color:#6b7280;font-size:.8rem;font-weight:500}.workspace-stats-pill .stats-dot{opacity:.5}.workspace-title-box{background:#fff;border:1px solid #E5E7EB;border-radius:16px;padding:10px 20px;box-shadow:0 1px 4px #00000005;flex-shrink:0}.workspace-title-input{width:100%;font-family:inherit;font-size:1.15rem;font-weight:700;color:#1c1c1e;background:transparent;border:none;outline:none;letter-spacing:-.01em}.workspace-title-input::placeholder{color:#9ca3af;font-weight:500}.workspace-editor-card{background:#fff;border:1px solid #E5E7EB;border-radius:20px;padding:16px 20px;box-shadow:0 4px 20px -2px #0000000a;display:flex;flex-direction:column;gap:10px;flex:1;min-height:0;overflow:hidden}.workspace-toolbar{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #F1F3F5;padding-bottom:10px;flex-wrap:wrap;gap:10px;flex-shrink:0}.toolbar-left{display:flex;align-items:center;gap:8px}.toolbar-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:999px;font-size:.82rem;font-weight:600;border:none;cursor:pointer;transition:all .15s ease}.toolbar-btn.paste{background:#007aff17;color:#007aff}.toolbar-btn.paste:hover{background:#007aff29}.toolbar-btn.clear{background:#f3f4f6;color:#6b7280}.toolbar-btn.clear:hover{background:#e5e7eb;color:#1c1c1e}.editor-hint-text{font-size:.8rem;color:#9ca3af}.workspace-textarea{width:100%;flex:1;min-height:0;height:100%;resize:none;overflow-y:auto;font-family:inherit;font-size:1.05rem;line-height:1.65;color:#1c1c1e;background:transparent;border:none;outline:none;box-sizing:border-box}.workspace-textarea::placeholder{color:#9ca3af}.workspace-action-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:0;padding-top:4px;flex-shrink:0}.workspace-action-cancel{display:inline-flex;align-items:center;gap:6px;padding:12px 22px;border-radius:999px;background:#fff;border:1px solid #E5E7EB;color:#6b7280;font-size:.88rem;font-weight:600;cursor:pointer;transition:all .15s ease}.workspace-action-cancel:hover{background:#f3f4f6;color:#1c1c1e;border-color:#d1d5db}.workspace-action-right{display:flex;align-items:center;gap:12px}.workspace-action-save{display:inline-flex;align-items:center;gap:7px;padding:12px 24px;border-radius:999px;background:#fff;border:1.5px solid #007AFF;color:#007aff;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .18s ease}.workspace-action-save:hover:not(:disabled){background:#007aff14}.workspace-action-save:disabled{opacity:.45;cursor:not-allowed;border-color:#d1d5db;color:#9ca3af}.workspace-action-play{display:inline-flex;align-items:center;gap:8px;padding:12px 32px;border-radius:999px;background:linear-gradient(135deg,#007aff,#005bb5);color:#fff;font-size:.92rem;font-weight:700;border:none;cursor:pointer;box-shadow:0 4px 16px #007aff4d;transition:all .18s ease}.workspace-action-play:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 20px #007aff66}.workspace-action-play:active:not(:disabled){transform:scale(.98)}.workspace-action-play:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.reader-view-container{display:flex;flex-direction:column;min-height:100vh}.reader-top-bar{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:var(--bg-surface-glass);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-bottom:1px solid var(--border-subtle)}.back-button{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border-subtle);cursor:pointer;box-shadow:0 2px 6px #0000000a;transition:all .2s cubic-bezier(.16,1,.3,1);padding:0}.back-button:hover{transform:translateY(-1px);box-shadow:0 4px 10px #00000014;border-color:var(--border-glass)}.back-button:active{transform:scale(.96)}.reader-title-group{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:320px;overflow:hidden}.reader-doc-title{font-size:.98rem;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.reader-voice-badge{font-size:.74rem;font-weight:600;color:var(--text-secondary)}.reader-actions-group{display:flex;align-items:center;gap:8px}.reader-circle-btn{width:38px;height:38px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border-subtle);box-shadow:0 2px 6px #0000000a;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);padding:0;outline:none;-webkit-user-select:none;user-select:none}.reader-circle-btn:hover{transform:translateY(-1px);box-shadow:0 4px 10px #00000014;border-color:var(--border-glass)}.reader-circle-btn:active{transform:scale(.92)}.reader-circle-btn.is-active,.reader-circle-btn.lofi-btn.is-active{background:#007aff1f!important;color:var(--roohi-blue)!important;border:1px solid rgba(0,122,255,.35)!important;box-shadow:0 2px 8px #007aff2e!important}.home-top-right{display:flex;align-items:center;gap:8px}.home-circle-btn{width:32px;height:32px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--bg-surface);color:var(--text-secondary);border:1px solid var(--border-subtle);box-shadow:0 1px 4px #00000008;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);padding:0;outline:none;-webkit-user-select:none;user-select:none}.home-circle-btn:hover{color:var(--text-primary);border-color:var(--border-glass);transform:translateY(-1px)}.home-circle-btn:active{transform:scale(.92)}.home-circle-btn.is-active,.home-circle-btn.lofi-btn.is-active{background:#007aff1f!important;color:var(--roohi-blue)!important;border:1px solid rgba(0,122,255,.35)!important;box-shadow:0 2px 8px #007aff2e!important}.reader-viewport{flex:1;display:flex;justify-content:center;padding:36px 20px 160px;max-width:760px;margin:0 auto;width:100%}.reader-content{width:100%;font-family:var(--font-serif);line-height:1.85;transition:font-size .2s ease}.reader-content.font-serif{font-family:var(--font-serif)}.sentence-block{display:inline;padding:2px;margin:0 1px;border-radius:6px;cursor:pointer;opacity:.38;transition:opacity .25s cubic-bezier(.16,1,.3,1),color .2s ease;border:none}.sentence-block:hover{opacity:.75}.sentence-block.is-active{opacity:1;background-color:transparent;border:none;box-shadow:none}.word-span{display:inline;padding:1px 3px;border-radius:5px;transition:all .12s ease-out}.word-span.is-highlighted{background-color:var(--active-word-bg);color:var(--active-word-color);font-weight:700;box-shadow:0 1px 4px #007aff2e;border-radius:6px}.player-dock-wrapper{position:fixed;bottom:calc(var(--safe-bottom) + 12px);left:0;right:0;display:flex;justify-content:center;padding:0 16px;z-index:60;pointer-events:none}.player-dock{pointer-events:auto;width:100%;max-width:660px;background:var(--bg-surface-glass);backdrop-filter:blur(24px) saturate(190%);-webkit-backdrop-filter:blur(24px) saturate(190%);border:1px solid var(--border-glass);border-radius:24px;padding:12px 20px;box-shadow:var(--shadow-dock);display:flex;flex-direction:column;gap:8px}.scrub-container{display:flex;align-items:center;gap:12px;width:100%}.scrub-slider{flex:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:5px;background:var(--bg-surface-2);border-radius:999px;outline:none;cursor:pointer;transition:height .15s ease}.scrub-slider:hover{height:7px}.scrub-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:var(--roohi-blue);cursor:pointer;box-shadow:0 1px 4px #0000004d;transition:transform .15s ease}.scrub-slider::-webkit-slider-thumb:hover{transform:scale(1.3)}.scrub-time-label{font-size:.74rem;font-weight:600;color:var(--text-secondary);font-variant-numeric:tabular-nums;white-space:nowrap;min-width:38px}.scrub-time-label.elapsed-time{text-align:right}.scrub-time-label.remaining-time{text-align:left}.dock-controls-row{display:flex;align-items:center;justify-content:space-between}.dock-left-group,.dock-right-group{display:flex;align-items:center;gap:8px}.dock-center-group{display:flex;align-items:center;gap:12px}.play-pause-btn{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,var(--roohi-blue),var(--roohi-blue-dark));color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 18px #007aff66;transition:all .2s cubic-bezier(.16,1,.3,1)}.play-pause-btn:hover{transform:scale(1.06);box-shadow:0 8px 24px #007aff80}.play-pause-btn:active{transform:scale(.94)}.pill-button{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:var(--bg-surface-2);color:var(--text-primary);font-size:.82rem;font-weight:600;transition:all .15s ease;border:1px solid transparent}.pill-button:hover{background:var(--bg-surface);border-color:var(--border-subtle)}.icon-button{width:38px;height:38px;border-radius:50%;background:var(--bg-surface-2);color:var(--text-primary);display:flex;align-items:center;justify-content:center;transition:all .18s ease;border:1px solid transparent}.icon-button:hover{background:var(--bg-surface);border-color:var(--border-subtle);transform:translateY(-1px)}.icon-button:active{transform:scale(.94)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:100;display:flex;align-items:center;justify-content:center;padding:20px}.modal-card{width:100%;max-width:480px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:24px;box-shadow:var(--shadow-lg);padding:24px;max-height:85vh;overflow-y:auto}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.modal-title{font-size:1.2rem;font-weight:700;color:var(--text-primary)}.voice-list{display:flex;flex-direction:column;gap:8px}.voice-item{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-radius:14px;background:var(--bg-surface-2);border:1.5px solid transparent;transition:all .18s ease;text-align:left;width:100%}.voice-item:hover{background:var(--bg-canvas);border-color:var(--border-subtle)}.voice-item.is-selected{background:var(--active-sentence-bg);border-color:var(--roohi-blue)}.voice-name{font-size:.95rem;font-weight:600;color:var(--text-primary)}.voice-desc{font-size:.78rem;color:var(--text-secondary)}@media(max-width:640px){.home-container{padding:20px 16px 140px}.workspace-container{padding:12px 14px 16px;gap:10px}.reader-viewport{padding:20px 16px 160px}.pill-button span.hide-on-mobile{display:none}}.auth-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px;animation:fadeIn .2s ease-out}.auth-modal-card.luxury-card{position:relative;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:28px;max-width:410px;width:100%;padding:38px 32px 30px;box-shadow:0 24px 60px -12px #0000002e,0 0 1px #0000001f;display:flex;flex-direction:column;gap:22px;animation:scaleUp .22s cubic-bezier(.16,1,.3,1)}.auth-close-btn{position:absolute;top:20px;right:20px;width:32px;height:32px;border-radius:50%;background:#f3f4f6;border:none;display:flex;align-items:center;justify-content:center;color:#6b7280;cursor:pointer;transition:all .15s ease}.auth-close-btn:hover{color:#111827;background:#e5e7eb;transform:scale(1.05)}.auth-header{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px}.auth-title{font-family:var(--font-serif);font-size:1.6rem;font-weight:700;letter-spacing:-.01em;color:#111827;margin:0}.auth-subtitle{font-size:.88rem;color:#6b7280;line-height:1.45;margin:0;max-width:290px}.auth-tabs{display:flex;background:#f3f4f6;border-radius:12px;padding:3px;gap:3px;border:none}.auth-tab{flex:1;border:none;background:transparent;padding:9px 14px;font-size:.85rem;font-weight:600;color:#6b7280;border-radius:9px;cursor:pointer;transition:all .18s cubic-bezier(.16,1,.3,1)}.auth-tab.active{background:#fff;color:#111827;box-shadow:0 2px 6px #00000014}.auth-alert{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:12px;font-size:.82rem;font-weight:500}.auth-alert.error{background:#ef444414;color:#dc2626;border:1px solid rgba(239,68,68,.2)}.auth-alert.success{background:#10b98114;color:#059669;border:1px solid rgba(16,185,129,.2)}.auth-form{display:flex;flex-direction:column;gap:16px}.auth-field{display:flex;flex-direction:column;gap:6px}.auth-label{font-size:.8rem;font-weight:600;color:#374151;letter-spacing:.01em}.auth-input-wrapper{position:relative;display:flex;align-items:center}.auth-input-icon{position:absolute;left:14px;color:#9ca3af;pointer-events:none}.auth-input{width:100%;background:#f9fafb;border:1px solid #E5E7EB;border-radius:13px;padding:12px 14px 12px 40px;font-size:.92rem;color:#111827;outline:none;transition:all .18s ease}.auth-input:focus{background:#fff;border-color:#007aff;box-shadow:0 0 0 3px #007aff1f}.auth-submit-btn.luxury-btn{display:flex;align-items:center;justify-content:center;gap:8px;background:#111827;color:#fff;border:none;border-radius:14px;padding:13px 22px;font-size:.92rem;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 14px #0000001f;margin-top:6px}.auth-submit-btn.luxury-btn:hover:not(:disabled){background:#000;transform:translateY(-1px);box-shadow:0 6px 20px #0000002e}.auth-submit-btn.luxury-btn:active:not(:disabled){transform:scale(.98)}.auth-submit-btn.luxury-btn:disabled{opacity:.65;cursor:not-allowed}.auth-spinner{animation:spin 1s linear infinite}.auth-footer{text-align:center;font-size:.74rem;color:#9ca3af;line-height:1.4;padding:0 8px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleUp{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.home-lofi-wrapper,.header-lofi-wrapper,.dock-lofi-wrapper{display:flex;align-items:center;gap:4px}.lofi-pill-btn{display:inline-flex;align-items:center;gap:6px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:9999px;padding:6px 12px;font-size:.8rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);box-shadow:var(--shadow-sm);-webkit-user-select:none;user-select:none}.lofi-pill-btn:hover{border-color:var(--roohi-blue);color:var(--text-primary);transform:translateY(-1px)}.lofi-pill-btn.active{background:#007aff1a;border-color:#007aff59;color:var(--roohi-blue);box-shadow:0 2px 10px #007aff2e}.lofi-pill-text{font-weight:600;max-width:140px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lofi-skip-btn,.lofi-skip-dock-btn{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:var(--bg-surface);border:1px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.lofi-skip-btn:hover,.lofi-skip-dock-btn:hover{border-color:var(--roohi-blue);color:var(--roohi-blue);transform:scale(1.08)}.lofi-dock-pill.active{background:#007aff26;border-color:#007aff66;color:var(--roohi-blue)}.lofi-equalizer{display:flex;align-items:flex-end;gap:2px;height:14px;width:14px;padding-bottom:1px}.eq-bar{width:2.5px;background-color:var(--roohi-blue);border-radius:1px;animation:soundWave 1.2s ease-in-out infinite alternate}.eq-bar.bar-1{height:5px;animation-delay:0s}.eq-bar.bar-2{height:12px;animation-delay:.3s}.eq-bar.bar-3{height:8px;animation-delay:.15s}@keyframes soundWave{0%{height:3px}50%{height:12px}to{height:6px}}
