:root{--bg:#11131a;--bg-raised:#1c1f2a;--text:#e8eaf0;--text-dim:#9aa0ae;--accent:#4f8cff;--danger:#ff5f6b;--border:#2a2e3c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:system-ui,Segoe UI,Hiragino Sans,Yu Gothic UI,sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{background:var(--bg);color:var(--text);margin:0;padding:0}#app{max-width:640px;padding:0 16px calc(24px + env(safe-area-inset-bottom));margin:0 auto}.app-header{padding-top:calc(12px + env(safe-area-inset-top));justify-content:space-between;align-items:center;display:flex}.app-header h1{margin:8px 0;font-size:22px}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;padding:0}.gear{padding:8px;font-size:22px}.toolbar{align-items:center;gap:10px;margin:12px 0 16px;display:flex}.action{background:var(--bg-raised);border:1px solid var(--border);border-radius:10px;padding:10px 16px;font-size:15px}.action.primary{background:var(--accent);border-color:var(--accent);color:#fff;margin-left:auto}.crumb{color:var(--accent);padding:8px 0;font-size:16px}.crumb-name{font-weight:600}.row{background:var(--bg-raised);border:1px solid var(--border);border-radius:12px;align-items:stretch;margin-bottom:8px;display:flex;overflow:hidden}.row-main{text-align:left;flex:1;align-items:center;gap:12px;min-width:0;padding:14px;display:flex}.row-main:disabled{opacity:.6}.row-main .name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:16px;overflow:hidden}.row-main .icon{font-size:20px}.status{color:var(--accent);white-space:nowrap;font-size:13px}.status.err{color:var(--danger)}.row-menu{color:var(--text-dim);padding:0 14px;font-size:18px}.empty{color:var(--text-dim);text-align:center;margin-top:48px;line-height:1.8}.info-banner{border:1px solid var(--accent);color:var(--accent);background:#4f8cff1f;border-radius:10px;padding:10px 14px;font-size:14px}.error-banner{border:1px solid var(--danger);color:var(--danger);background:#ff5f6b26;border-radius:10px;padding:10px 14px;font-size:14px}.sheet-backdrop{z-index:10;background:#0000008c;position:fixed;inset:0}.sheet{left:50%;bottom:calc(16px + env(safe-area-inset-bottom));background:var(--bg-raised);border:1px solid var(--border);z-index:11;border-radius:16px;flex-direction:column;width:min(480px,100vw - 24px);padding:8px;display:flex;position:fixed;transform:translate(-50%)}.sheet-title{text-align:center;color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;margin:8px 0;font-size:13px;overflow:hidden}.sheet button{border-top:1px solid var(--border);padding:14px;font-size:16px}.sheet button.danger{color:var(--danger)}.player-title{word-break:break-all;margin:8px 0 20px;font-size:18px}.seek{align-items:center;gap:10px;display:flex}.seek input[type=range]{accent-color:var(--accent);flex:1;height:28px}.time{color:var(--text-dim);font-variant-numeric:tabular-nums;text-align:center;min-width:40px;font-size:13px}.controls{justify-content:center;align-items:center;gap:28px;margin:20px 0;display:flex}.controls .play{background:var(--bg-raised);border:1px solid var(--border);border-radius:50%;width:80px;height:80px;font-size:44px}.controls .skip{color:var(--text-dim);padding:14px;font-size:16px}.rates{flex-wrap:wrap;justify-content:center;gap:6px;margin-bottom:20px;display:flex}.rate{border:1px solid var(--border);color:var(--text-dim);border-radius:999px;padding:8px 12px;font-size:14px}.rate.active{background:var(--accent);border-color:var(--accent);color:#fff}.doc-text{border-top:1px solid var(--border);color:var(--text-dim);padding-top:16px;font-size:15px;line-height:1.9}.setting{background:var(--bg-raised);border:1px solid var(--border);border-radius:12px;margin-bottom:16px;padding:16px}.setting h3{margin:0 0 12px;font-size:16px}.radio{padding:10px 0;font-size:16px;display:block}.radio input{accent-color:var(--accent);margin-right:10px}.hint{color:var(--text-dim);margin:10px 0 0;font-size:13px}.text-input{width:100%;font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:10px;margin-bottom:10px;padding:10px 12px}
