:root{--bg: #0d0d0f;--surface: #1c1c1e;--surface2: #28282c;--surface3: #323236;--border: #2e2e32;--border2: #3a3a3f;--text: #f0f0f0;--text-muted: #6e6e78;--text-dim: #4a4a52;--accent: #ff453a;--radius: 12px;--radius-sm: 8px}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%;overflow:hidden}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,system-ui,sans-serif;-webkit-font-smoothing:antialiased}button{font-family:inherit;cursor:pointer}.app{display:flex;flex-direction:column;height:100%;max-width:1600px;margin:0 auto;position:relative}.app-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:flex-end;padding:16px}.app-modal{background:var(--surface);border:1px solid var(--border2);border-radius:20px;width:100%;padding:28px 24px 24px;position:relative;text-align:center}.app-modal__close{position:absolute;top:14px;right:14px;background:var(--surface2);border:none;border-radius:50%;width:30px;height:30px;display:flex;align-items:center;justify-content:center}.app-modal__icon{font-size:48px;line-height:1;margin-bottom:16px}.app-modal__title{font-size:22px;font-weight:700;color:var(--text);margin-bottom:10px}.app-modal__body{font-size:14px;color:var(--text-muted);line-height:1.5;margin-bottom:24px}.app-modal__badges{display:flex;flex-direction:column;align-items:center;gap:12px;margin-bottom:20px}.app-modal__badges a{display:block;transition:opacity .15s}.app-modal__badges a:active{opacity:.7}.app-modal__skip{background:none;border:none;color:var(--text-muted);font-size:13px;padding:4px 8px;text-decoration:underline;text-underline-offset:3px}.header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px 10px;flex-shrink:0;background:var(--bg);z-index:20}.logo{font-size:17px;font-weight:700;letter-spacing:-.3px}.logo-accent{color:var(--accent)}.icon-btn{background:var(--surface);border:1px solid var(--border);color:var(--text-muted);width:34px;height:34px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s;flex-shrink:0}.icon-btn:hover{background:var(--surface2);color:var(--text)}.icon-btn:active{background:var(--surface3)}.account-wrap{position:relative}.account-btn{width:28px;height:28px;border-radius:50%!important;background:var(--accent)!important;border-color:var(--accent)!important;display:flex;align-items:center;justify-content:center;padding:0!important}.account-btn:hover{opacity:.85}.account-initial{font-size:12px;font-weight:800;color:#fff;line-height:1}.account-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:180px;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:10px;display:flex;flex-direction:column;gap:8px;z-index:200;box-shadow:0 8px 24px #0006}.account-menu-email{font-size:11px;color:var(--text-dim);margin:0;padding:2px 4px;word-break:break-all}.account-menu-signout{width:100%;padding:7px 0;background:none;border:1px solid var(--border);border-radius:7px;color:var(--text-muted);font-size:12px;font-weight:600;cursor:pointer}.account-menu-signout:hover{border-color:#ff5f5f;color:#ff5f5f}.account-menu-top{display:flex;align-items:center;gap:6px;padding:2px 4px}.account-menu-top .account-menu-email{padding:0;flex:1}.pro-badge{flex-shrink:0;font-size:9px;font-weight:800;letter-spacing:.06em;color:#fff;background:linear-gradient(135deg,#bf5af2,#9b3fe8);border-radius:4px;padding:2px 5px}.header-right{display:flex;align-items:center;gap:8px}.mic-btn--active{background:#00e5ff1f;border-color:#00e5ff;color:#00e5ff}.mic-btn--active:hover{background:#00e5ff33;color:#00e5ff}.pitch-badge{display:flex;align-items:center;gap:6px;background:#00e5ff14;border:1px solid rgba(0,229,255,.3);border-radius:20px;padding:5px 12px 5px 8px}.pitch-dot{width:6px;height:6px;border-radius:50%;background:#00e5ff;animation:pitch-pulse 1s ease-in-out infinite;flex-shrink:0}.pitch-note{font-size:15px;font-weight:700;color:#00e5ff;letter-spacing:-.3px;min-width:28px}@keyframes pitch-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}.detection-ring{animation:ring-flash .15s ease-out}@keyframes ring-flash{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}@keyframes target-blink{0%,to{opacity:1}50%{opacity:.05}}.target-ring--blinking{animation:target-blink .36s ease-in-out infinite}.focus-btn--active{background:#ffd60a1f;border-color:#ffd60a;color:#ffd60a}.focus-btn--active:hover{background:#ffd60a33;color:#ffd60a}.fb-focus-host{position:relative;flex:1;min-height:0;display:flex;flex-direction:column}.focus-clear-chip{position:absolute;bottom:12px;left:50%;transform:translate(-50%);z-index:40;height:30px;padding:0 14px;border-radius:999px;border:1px solid rgba(255,214,10,.6);background:#ffd60a1f;color:#ffd60a;font-size:12px;font-weight:700;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 2px 10px #0006;transition:background .12s}.focus-clear-chip:hover{background:#ffd60a33}.focus-clear-inline{height:26px;padding:0 10px;border-radius:6px;border:1px solid rgba(255,214,10,.55);background:#ffd60a1a;color:#ffd60a;font-size:11px;font-weight:700;cursor:pointer;flex-shrink:0;transition:background .12s}.focus-clear-inline:hover{background:#ffd60a2e}.zen-toggle{position:absolute;top:8px;right:10px;z-index:45;width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid var(--border2);background:#1c1c1eb3;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--text-muted);transition:color .12s,background .12s}.zen-toggle:hover{color:var(--text);background:#28282cd9}.app--zen .fb-stage{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:var(--bg);padding:0;box-shadow:inset 0 0 120px #0000008c}.app--zen .zen-toggle{z-index:65;color:var(--text);top:max(8px,env(safe-area-inset-top));right:max(10px,env(safe-area-inset-right));box-shadow:0 0 0 1px #ffffff1f,0 2px 8px #00000080}.neck-stage{display:contents}.mode-tabs{display:flex;padding:4px 16px 8px;gap:6px;overflow-x:auto;scrollbar-width:none;flex-shrink:0}.mode-tabs::-webkit-scrollbar{display:none}.tab{padding:7px 15px;border-radius:20px;border:1px solid var(--border);background:transparent;color:var(--text-muted);font-size:13px;font-weight:500;white-space:nowrap;transition:all .15s;letter-spacing:.1px}.tab:hover{color:var(--text);border-color:var(--border2)}.tab.active{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.target-bar{display:flex;align-items:center;gap:6px;padding:0 16px 8px;flex-shrink:0}.target-bar-label{font-size:10px;text-transform:uppercase;letter-spacing:1.2px;color:var(--text-dim);font-weight:700;margin-right:2px}.target-pill{padding:5px 12px;border-radius:20px;border:1px solid var(--border);background:transparent;color:var(--text-muted);font-size:12px;font-weight:500;cursor:pointer;transition:all .15s}.target-pill:hover{border-color:var(--border2);color:var(--text)}.target-pill.active{background:#ffd60a22;border-color:#ffd60a;color:#ffd60a}.target-pill-multi.active{font-weight:600}.target-pill:disabled{opacity:.3;pointer-events:none}.controls{padding:4px 16px 8px;display:flex;flex-direction:column;gap:8px;flex-shrink:0}.ctrl-row{display:flex;align-items:center;gap:8px;min-height:34px}.ctrl-label{font-size:10px;text-transform:uppercase;letter-spacing:1.2px;color:var(--text-dim);min-width:36px;font-weight:600}.chip-list{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;flex:1;padding-bottom:2px}.chip-list::-webkit-scrollbar{display:none}.chip{height:32px;padding:0 11px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--text-muted);font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:center;white-space:nowrap;flex-shrink:0;transition:all .12s;min-width:32px;letter-spacing:.1px}.chip:hover{background:var(--surface2);color:var(--text)}.chip:active{background:var(--surface3)}.chip.dim-note{font-size:10px;padding:0 8px}.multi-slots{padding:4px 16px 8px;display:flex;flex-direction:column;gap:7px;flex-shrink:0}.m-slot{display:flex;align-items:center;gap:8px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:7px 10px;min-height:44px;transition:opacity .15s}.m-slot-off{opacity:.45}.m-toggle{width:28px;height:28px;border-radius:50%;border:1.5px solid var(--border2);background:var(--surface2);color:var(--text-muted);font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s;line-height:1}.m-toggle:active{transform:scale(.9)}.m-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.m-divider{width:1px;height:24px;background:var(--border2);flex-shrink:0}.m-scroll{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none}.m-scroll::-webkit-scrollbar{display:none}.m-chip{height:28px;padding:0 9px;border-radius:6px;border:1px solid var(--border);background:transparent;color:var(--text-dim);font-size:11px;font-weight:600;white-space:nowrap;flex-shrink:0;transition:all .12s}.m-chip:hover{color:var(--text)}.m-chip.active{color:#fff}.controls-area{min-height:168px;flex-shrink:0;display:flex;flex-direction:column;justify-content:flex-start}.fb-wrap{flex:1;padding:8px 16px 4px;overflow:hidden;min-height:0;display:flex;align-items:flex-start;touch-action:none}.legend{padding:6px 16px 14px;display:flex;gap:6px 12px;flex-wrap:wrap;align-items:center;flex-shrink:0;min-height:34px}.leg-item{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--text-muted);letter-spacing:.2px}.leg-swatch{width:10px;height:10px;border-radius:50%;flex-shrink:0}.leg-intervals{font-size:11px;color:var(--text-dim);margin-left:4px}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;z-index:100;display:flex;align-items:flex-end;justify-content:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:0;pointer-events:none;transition:opacity .2s}.overlay.open{opacity:1;pointer-events:all}.sheet{background:var(--surface);border:1px solid var(--border2);border-radius:20px 20px 0 0;padding:12px 20px 32px;width:100%;max-width:960px;transform:translateY(100%);transition:transform .25s cubic-bezier(.32,.72,0,1)}.overlay.open .sheet{transform:translateY(0)}.sheet-handle{width:36px;height:4px;background:var(--border2);border-radius:2px;margin:0 auto 18px}.sheet-title{font-size:15px;font-weight:600;margin-bottom:14px;color:var(--text)}.setting-row{display:flex;align-items:center;justify-content:space-between;padding:13px 0;border-top:1px solid var(--border)}.setting-info .s-title{font-size:14px;color:var(--text)}.setting-info .s-desc{font-size:11px;color:var(--text-muted);margin-top:2px}.setting-row-col{flex-direction:column;align-items:flex-start}.chip.active.target-chip{background:#ffd60a;border-color:#ffd60a;color:#000}.seg{display:flex;background:var(--surface2);border:1px solid var(--border2);border-radius:var(--radius-sm);overflow:hidden;flex-shrink:0}.seg-btn{padding:7px 14px;font-size:12px;font-weight:500;border:none;background:transparent;color:var(--text-muted);transition:all .12s;white-space:nowrap}.seg-btn.active{background:var(--accent);color:#fff}.sheet-close{width:100%;margin-top:16px;padding:13px;background:var(--surface2);border:1px solid var(--border2);border-radius:var(--radius);color:var(--text);font-size:14px;font-weight:500;transition:background .12s}.sheet-close:hover{background:var(--surface3)}.setting-danger-zone{margin-top:24px;border-top:1px solid var(--border);padding-top:16px}.setting-clear-btn{width:100%;padding:11px;border-radius:var(--radius);background:transparent;border:1px solid rgba(255,69,58,.45);color:#ff453a;font-size:13px;font-weight:600;cursor:pointer;transition:background .12s,border-color .12s}.setting-clear-btn:hover{background:#ff453a14;border-color:#ff453a}.setting-clear-btn.confirm{background:#ff453a1f;border-color:#ff453a;animation:danger-pulse .4s ease}.setting-clear-btn:disabled{opacity:.5;cursor:default}@keyframes danger-pulse{0%{transform:scale(1)}40%{transform:scale(1.02)}to{transform:scale(1)}}.tab-lick.active{background:#0a84ff;border-color:#0a84ff}.chip.active{background:var(--accent);border-color:var(--accent);color:#fff}.chip-dimmed{opacity:.35;pointer-events:none}.lick-setup{display:flex;flex-direction:column;flex:1;min-height:0}.lick-setup-scroll{flex:1;overflow-y:auto;padding:4px 16px 16px;display:flex;flex-direction:column;gap:10px;scrollbar-width:none}.lick-setup-scroll::-webkit-scrollbar{display:none}.lick-section{display:flex;align-items:center;gap:10px}.lick-ctrl-row{align-items:flex-start}.lick-count{font-size:10px;font-weight:600;color:var(--text-dim);letter-spacing:0}.lick-count-max{color:var(--accent)}.lick-setup-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;display:flex;flex-direction:column;gap:8px;flex-shrink:0}.lick-card-head{display:flex;align-items:center;gap:8px}.lick-card-badge{width:26px;height:26px;border-radius:50%;border:1.5px solid;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;color:#fff;flex-shrink:0;line-height:1}.lick-card-title{font-size:10px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;flex:1}.lick-card-count{font-size:10px;font-weight:600;color:var(--text-dim)}.lick-card-count.max{color:var(--accent)}.lick-card-toggle{width:28px;height:28px;border-radius:50%;border:1.5px solid var(--border2);background:var(--surface2);color:var(--text-muted);font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer;transition:all .15s;line-height:1}.lick-card-toggle:active{transform:scale(.9)}.lick-card-off{opacity:.45}.lick-card-row-label{font-size:9px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--text-dim);margin-top:4px}.lick-card-chips{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none}.lick-card-chips::-webkit-scrollbar{display:none}.lick-hint{display:flex;align-items:center;gap:8px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 12px;font-size:12px;color:var(--text-muted);line-height:1.5;flex-shrink:0}.lick-hint-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.lick-setup-footer{padding:12px 16px;flex-shrink:0;border-top:1px solid var(--border)}.lick-start-btn{width:100%;height:50px;background:var(--accent);color:#fff;font-size:15px;font-weight:700;border:none;border-radius:var(--radius);transition:opacity .15s}.lick-start-btn:disabled{opacity:.4;cursor:default}.lick-start-btn:not(:disabled):hover{opacity:.88}.lick-lib-tabs{display:flex;border-bottom:1px solid var(--border);flex-shrink:0}.lick-lib-tab{flex:1;padding:9px 0;background:none;border:none;border-bottom:2px solid transparent;color:var(--text-dim);font-size:12px;font-weight:600;letter-spacing:.3px;cursor:pointer;transition:color .15s,border-color .15s;margin-bottom:-1px}.lick-lib-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.lick-lib-tab:hover:not(.active){color:var(--text-muted)}.lick-library{flex:1;overflow-y:auto;padding:12px 14px;display:flex;flex-direction:column;gap:8px}.lick-library::-webkit-scrollbar{display:none}.lick-lib-empty{color:var(--text-dim);font-size:13px;text-align:center;margin-top:32px}.lick-lib-error{color:#ff5f5f}.lick-lib-card{display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:10px 12px}.lick-lib-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.lick-lib-name{font-size:13px;font-weight:700;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lick-lib-meta{font-size:11px;color:var(--text-dim)}.lick-lib-actions{display:flex;gap:6px;flex-shrink:0}.lick-lib-load{padding:5px 12px;background:var(--accent);color:#fff;border:none;border-radius:7px;font-size:12px;font-weight:700;cursor:pointer}.lick-lib-load:hover{opacity:.85}.lick-lib-del{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:none;border:1px solid var(--border);border-radius:7px;color:var(--text-dim);font-size:11px;cursor:pointer}.lick-lib-del:hover{border-color:#ff5f5f;color:#ff5f5f}.lick-build{display:flex;flex-direction:column;flex:1;min-height:0}.lick-build-header{display:flex;align-items:center;gap:8px;padding:6px 16px;flex-shrink:0;border-bottom:1px solid var(--border)}.lick-back{color:var(--accent);font-size:14px;font-weight:600;background:none;border:none;flex-shrink:0;padding:4px 2px}.lick-back:hover{opacity:.75}.lick-legend-strip{display:flex;align-items:center;gap:10px;flex:1;overflow-x:auto;scrollbar-width:none}.lick-legend-strip::-webkit-scrollbar{display:none}.lick-leg-item{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--text-muted);white-space:nowrap;flex-shrink:0}.lick-leg-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}.lick-save-btn{padding:6px 14px;background:var(--accent);color:#fff;font-size:13px;font-weight:700;border:none;border-radius:var(--radius-sm);flex-shrink:0;transition:opacity .15s}.lick-save-btn.disabled{opacity:.35;cursor:default}.lick-save-btn:not(.disabled):hover{opacity:.88}.lick-fb-area{position:relative;flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.lick-sequence{height:64px;display:flex;align-items:center;gap:5px;padding:0 12px;overflow-x:auto;scrollbar-width:none;background:var(--surface);border-top:1px solid var(--border);flex-shrink:0}.lick-sequence::-webkit-scrollbar{display:none}.lick-seq-empty{font-size:12px;color:var(--text-dim);font-style:italic;white-space:nowrap}.lick-seq-note{display:flex;flex-direction:column;align-items:center;min-width:42px;padding:4px 8px;background:var(--surface2);border:1px solid #5bbfff44;border-radius:var(--radius-sm);flex-shrink:0;transition:opacity .12s}.lick-seq-note:hover{opacity:.75}.lick-seq-note.outside{border-color:#ff950066;background:#ff950018}.lick-seq-note.playing{border-color:#fff;background:#fff2;box-shadow:0 0 10px #fff6}.lick-fb-active{transform-box:fill-box;transform-origin:center;filter:drop-shadow(0 0 5px #fff);animation:lick-fb-pulse .5s ease-in-out infinite alternate}@keyframes lick-fb-pulse{0%{opacity:.55;stroke-width:2.5px}to{opacity:1;stroke-width:4px}}.lick-seq-order{font-size:9px;color:var(--text-dim);font-weight:700;line-height:1}.lick-seq-label{font-size:14px;color:var(--text);font-weight:700;line-height:1.2}.lick-seq-out{font-size:8px;color:#ff9500;font-weight:800;letter-spacing:.5px;line-height:1}.lick-controls{display:flex;gap:8px;padding:8px 16px 12px;flex-shrink:0}.lick-ctrl-btn{flex:1;height:36px;background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-muted);font-size:13px;font-weight:600;transition:all .12s}.lick-ctrl-btn:not(:disabled):hover{background:var(--surface3);color:var(--text)}.lick-ctrl-btn:disabled{opacity:.35;cursor:default}.lick-play-btn{flex:1;height:36px;background:var(--accent);border:1px solid var(--accent);border-radius:var(--radius-sm);color:#fff;font-size:13px;font-weight:700;transition:all .12s;letter-spacing:.3px}.lick-play-btn:not(:disabled):hover{filter:brightness(1.12)}.lick-play-btn:disabled{opacity:.35;cursor:default}.lick-play-btn--playing{background:#e05c5c;border-color:#e05c5c}.lick-play-btn--playing:not(:disabled):hover{filter:brightness(1.1)}.paywall{display:flex;flex-direction:column;flex:1;min-height:0}.paywall-body{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 32px 16px;text-align:center}.paywall-icon{font-size:54px;margin-bottom:18px}.paywall-title{font-size:26px;font-weight:800;margin-bottom:10px}.paywall-sub{font-size:14px;color:var(--text-muted);line-height:1.6;margin-bottom:24px}.paywall-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#000000b3;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);padding:20px}.paywall-overlay-inner{position:relative;width:100%;max-width:420px;max-height:90vh;overflow-y:auto;background:var(--bg, #14141a);border:1px solid rgba(255,255,255,.1);border-radius:16px}.paywall-close{position:absolute;top:10px;right:10px;z-index:1;width:30px;height:30px;border:none;border-radius:8px;background:#ffffff14;color:var(--text, #fff);font-size:14px;cursor:pointer}.paywall-close:hover{background:#ffffff29}.paywall-taste{font-size:14px;font-weight:600;color:var(--accent, #a78bfa);line-height:1.5;margin-bottom:14px;padding:10px 14px;background:#a78bfa1a;border:1px solid rgba(167,139,250,.3);border-radius:10px}.paywall-features{list-style:none;text-align:left;display:flex;flex-direction:column;gap:8px;width:100%;max-width:320px}.paywall-features li{display:flex;gap:8px;font-size:14px;color:var(--text);line-height:1.5}.paywall-check{color:var(--accent);font-weight:700;flex-shrink:0}.paywall-footer{padding:16px 24px 24px;display:flex;flex-direction:column;gap:8px}.paywall-packages{display:flex;flex-direction:column;gap:8px}.paywall-cta{height:50px;background:var(--accent);color:#fff;font-size:15px;font-weight:700;border:none;border-radius:var(--radius);transition:opacity .15s}.paywall-cta:hover{opacity:.88}.paywall-cta:disabled{opacity:.5;cursor:default}.paywall-restore{height:38px;background:none;border:none;color:var(--text-muted);font-size:13px}.paywall-restore:hover{color:var(--text)}.paywall-legal{font-size:11px;color:var(--text-dim);text-align:center;line-height:1.5}.paywall-signout{background:none;border:none;cursor:pointer;color:var(--accent);font-size:11px;padding:0;text-decoration:underline}.tab-playalong.active{background:#30d158;border-color:#30d158}.pa-setup{display:flex;flex-direction:column;flex:1;min-height:0}.pa-setup-scroll{flex:1;overflow-y:auto;padding:4px 16px 16px;display:flex;flex-direction:column;gap:10px;scrollbar-width:none}.pa-setup-scroll::-webkit-scrollbar{display:none}.pa-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;display:flex;flex-direction:column;gap:8px;flex-shrink:0}.pa-card-off{opacity:.45}.pa-card-head{display:flex;align-items:center;gap:8px}.pa-toggle{width:28px;height:28px;border-radius:50%;border:1.5px solid var(--border2);background:var(--surface2);color:var(--text-muted);font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s;line-height:1}.pa-toggle:active{transform:scale(.9)}.pa-card-title{font-size:14px;font-weight:700;flex:1;color:var(--text)}.pa-bars-ctrl{display:flex;align-items:center;gap:5px}.pa-bars-btn{width:24px;height:24px;border-radius:6px;border:1px solid var(--border2);background:var(--surface2);color:var(--text-muted);font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:center;transition:all .12s}.pa-bars-btn:hover{color:var(--text);background:var(--surface3)}.pa-bars-val{font-size:11px;color:var(--text-muted);min-width:44px;text-align:center}.pa-tiles-row{display:flex;gap:6px}.pa-tile{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 4px 6px;border-radius:10px;border:1.5px solid var(--border);background:var(--surface);cursor:pointer;transition:all .15s;position:relative}.pa-tile:hover{border-color:var(--border2)}.pa-tile--active{background:var(--surface2)}.pa-tile-badge{width:20px;height:20px;border-radius:10px;border:1.5px solid var(--border2);background:var(--surface3);font-size:10px;font-weight:800;color:var(--text-muted);display:flex;align-items:center;justify-content:center}.pa-tile-name{font-size:13px;font-weight:800;color:var(--text-dim);min-height:18px}.pa-tile-add{position:absolute;bottom:-1px;right:-1px;width:18px;height:18px;border-radius:0 0 8px;border:none;background:var(--surface3);font-size:13px;font-weight:700;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1}.pa-tile-add:hover{color:var(--text)}.pa-editor-card{background:var(--surface);border:1.5px solid var(--border);border-radius:var(--radius);padding:10px 12px;display:flex;flex-direction:column;gap:8px}.pa-inline-row{display:flex;align-items:center;height:30px;gap:6px}.pa-inline-label{width:36px;font-size:8px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--text-dim);flex-shrink:0}.pa-draft-preview{font-size:12px;font-weight:700;color:var(--text-muted);margin-left:auto}.pa-prog-bottom{display:flex;align-items:center;gap:8px;border-top:1px solid var(--border);padding-top:6px;margin-top:auto}.pa-bpm-inline{display:flex;align-items:center;gap:4px;flex-shrink:0}.pa-bpm-unit{font-size:9px;font-weight:500;color:var(--text-muted)}.pa-add-btn{height:26px;padding:0 10px;border-radius:7px;border:1.5px solid #30d158;background:var(--bg);color:#30d158;font-size:12px;font-weight:700;cursor:pointer;transition:all .12s}.pa-add-btn:hover{filter:brightness(1.25)}.pa-prog-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;display:flex;flex-direction:column;gap:8px;flex-shrink:0}.pa-prog-head{display:flex;align-items:center;gap:6px;height:34px}.pa-prog-pills-row{flex:1;display:flex;align-items:center;gap:5px;overflow-x:auto;scrollbar-width:none;min-width:0}.pa-prog-pills-row::-webkit-scrollbar{display:none}.pa-prog-title{font-size:13px;font-weight:700;color:var(--text)}.pa-prog-sub{font-size:11px;color:var(--text-dim)}.pa-prog-clear{font-size:11px;font-weight:600;color:var(--text-muted);background:var(--surface2);border:1px solid var(--border);border-radius:6px;padding:3px 8px;cursor:pointer}.pa-prog-clear:hover{color:var(--text)}.pa-prog-empty{font-size:11px;color:var(--text-dim);line-height:1.4}.pa-prog-strip{display:flex;flex-wrap:wrap;gap:6px}.pa-prog-step{display:flex;align-items:center;gap:4px;height:26px;padding:0 6px 0 8px;border-radius:7px;border:1.5px solid var(--border2);background:var(--surface2);font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap;flex-shrink:0;transition:all .12s}.pa-prog-step:hover{filter:brightness(1.2)}.pa-prog-step-x{font-size:12px;font-weight:700;opacity:.6}.pa-row-label{font-size:9px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--text-dim);margin-top:2px}.pa-chip-row{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none}.pa-chip-row::-webkit-scrollbar{display:none}.pa-settings-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;display:flex;flex-direction:column;gap:10px;flex-shrink:0}.pa-display-row{display:flex;flex-direction:column;gap:6px}.pa-settings-row{display:flex;align-items:center;gap:8px;min-height:32px}.pa-settings-row--wrap{flex-direction:column;align-items:flex-start;gap:6px}.pa-bpm-ctrl{display:flex;align-items:center;gap:8px;flex:1}.pa-bpm-val{font-size:16px;font-weight:700;color:var(--text);min-width:38px;text-align:center}.pa-bpm-slider{flex:1;height:3px;accent-color:var(--accent);cursor:pointer}.pa-setup-footer{padding:12px 16px;flex-shrink:0;border-top:1px solid var(--border)}.pa-start-btn{width:100%;height:50px;background:#30d158;color:#fff;font-size:15px;font-weight:700;border:none;border-radius:var(--radius);transition:opacity .15s}.pa-start-btn:disabled{opacity:.4;cursor:default}.pa-start-btn:not(:disabled):hover{opacity:.88}.pa-player{display:flex;flex-direction:column;flex:1;min-height:0;position:relative}.pa-back-btn{position:absolute;top:6px;left:12px;background:none;border:none;color:#30d158;font-size:13px;font-weight:600;z-index:2;padding:4px 2px}.pa-back-btn:hover{opacity:.75}.pa-pattern-strip{display:flex;align-items:center;gap:6px;padding:6px 16px 6px 80px;border-bottom:1px solid var(--border);flex-shrink:0;min-height:44px;overflow-x:auto;scrollbar-width:none}.pa-pattern-strip::-webkit-scrollbar{display:none}.pa-strip-chord{font-size:14px;font-weight:700;color:var(--text);white-space:nowrap;flex-shrink:0}.pa-strip-divider{width:1px;height:20px;background:var(--border2);flex-shrink:0}.pa-chip-row-inline{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;flex:1}.pa-chip-row-inline::-webkit-scrollbar{display:none}.pa-fb-area{position:relative;flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.pa-chord-indicator{display:flex;align-items:center;gap:8px;padding:8px 16px;height:56px;border-top:1px solid var(--border);background:var(--surface);flex-shrink:0;overflow-x:auto;scrollbar-width:none}.pa-chord-indicator::-webkit-scrollbar{display:none}.pa-chord-pill{display:flex;align-items:center;gap:5px;padding:6px 12px;border-radius:10px;border:1px solid var(--border);background:var(--surface2);flex-shrink:0;transition:all .15s;position:relative;overflow:hidden}.pa-chord-current{border-color:#30d15888;background:#30d15818}.pa-chord-next{border-color:#0a84ff44;background:#0a84ff10;opacity:.7}.pa-chord-name{font-size:15px;font-weight:700;color:var(--text)}.pa-chord-display-label{font-size:10px;color:var(--text-dim);font-weight:500;white-space:nowrap}.pa-chord-bars{font-size:10px;color:var(--text-dim);font-weight:600}.pa-chord-progress{position:absolute;bottom:0;left:0;right:0;height:2px;background:#30d15833}.pa-chord-progress-fill{height:100%;background:#30d158;transition:width .05s linear}.pa-transport{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;height:56px;border-top:1px solid var(--border);flex-shrink:0}.pa-transport-left{display:flex;align-items:center;gap:12px;min-width:0}.pa-beat-dots{display:flex;gap:6px;align-items:center;min-width:60px}.pa-volume{display:flex;align-items:center;gap:6px;color:var(--text-muted)}.pa-vol-slider{width:84px;height:4px;accent-color:#30d158;cursor:pointer}@media (max-width: 600px){.pa-transport-left{gap:8px}.pa-vol-slider{width:64px}}.pa-beat-dot{width:8px;height:8px;border-radius:50%;background:var(--surface3);border:1.5px solid var(--border2);transition:all .06s}.pa-beat-dot--one{width:10px;height:10px}.pa-beat-dot--active{background:#30d158;border-color:#30d158;box-shadow:0 0 6px #30d15888}.pa-transport-btns{display:flex;gap:10px;align-items:center}.pa-t-btn{width:44px;height:44px;border-radius:50%;border:1.5px solid var(--border2);background:var(--surface2);color:var(--text-muted);font-size:16px;display:flex;align-items:center;justify-content:center;transition:all .12s}.pa-t-btn:hover{background:var(--surface3);color:var(--text)}.pa-t-play{width:52px;height:52px;background:#30d158;border-color:#30d158;color:#fff;font-size:18px;box-shadow:0 0 12px #30d15844}.pa-t-play:hover{opacity:.88;background:#30d158;color:#fff}.pa-t-playing{background:#0a84ff;border-color:#0a84ff;box-shadow:0 0 12px #0a84ff44}.pa-t-playing:hover{background:#0a84ff;color:#fff}.pa-bpm-badge{display:flex;align-items:center;gap:4px;min-width:60px;justify-content:flex-end}.pa-bpm-label{font-size:14px;font-weight:700;color:var(--text);min-width:30px;text-align:center}.pa-bpm-mini{width:22px;height:22px;border-radius:5px;border:1px solid var(--border2);background:var(--surface2);color:var(--text-muted);font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;transition:all .12s}.pa-bpm-mini:hover{background:var(--surface3);color:var(--text)}.header{padding-top:max(14px,calc(14px + env(safe-area-inset-top)));padding-left:max(20px,calc(20px + env(safe-area-inset-left)));padding-right:max(20px,calc(20px + env(safe-area-inset-right)))}.legend{padding-bottom:max(14px,calc(14px + env(safe-area-inset-bottom)));padding-left:max(16px,calc(16px + env(safe-area-inset-left)));padding-right:max(16px,calc(16px + env(safe-area-inset-right)))}@media (min-width: 600px){.header{padding:16px 24px 12px}.mode-tabs,.controls,.multi-slots{padding:4px 20px 10px}.fb-wrap{padding:10px 20px 6px}.legend{padding:8px 20px 16px}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000b;display:flex;align-items:center;justify-content:center;padding:24px;z-index:1000}.modal-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:24px;width:100%;max-width:380px;display:flex;flex-direction:column;gap:12px}.modal-title{font-size:20px;font-weight:800;color:var(--text);text-align:center;margin:0}.modal-sub{font-size:13px;color:var(--text-muted);text-align:center;margin:0 0 4px}.modal-input{height:46px;background:var(--surface2);border:1px solid var(--border);border-radius:10px;padding:0 14px;color:var(--text);font-size:15px;outline:none;width:100%;box-sizing:border-box}.modal-input:focus{border-color:var(--accent)}.modal-error{color:#ff5f5f;font-size:12px;text-align:center;margin:0}.modal-btn{height:48px;background:var(--accent);border:none;border-radius:12px;color:#fff;font-size:15px;font-weight:700;cursor:pointer;transition:opacity .15s}.modal-btn:disabled{opacity:.4;cursor:default}.modal-btn:not(:disabled):hover{opacity:.85}.modal-btn--google{background:var(--surface2);color:var(--text);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;gap:8px;font-size:14px;font-weight:600}.modal-btn--google:not(:disabled):hover{opacity:1;border-color:var(--accent)}.modal-btn--facebook{background:#1877f2;color:#fff;border:none;display:flex;align-items:center;justify-content:center;gap:8px;font-size:14px;font-weight:600}.modal-btn--facebook:not(:disabled):hover{opacity:.9}.modal-divider{display:flex;align-items:center;gap:10px;color:var(--text-dim);font-size:11px}.modal-divider:before,.modal-divider:after{content:"";flex:1;height:1px;background:var(--border)}.modal-toggle{background:none;border:none;cursor:pointer;color:var(--accent);font-size:13px;text-align:center;padding:2px}.modal-cancel{background:none;border:none;cursor:pointer;color:var(--text-dim);font-size:13px;text-align:center;padding:2px}.tab-quiz.active{background:#bf5af2;border-color:#bf5af2}.quiz{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.quiz-setup{overflow-y:auto}.quiz-setup-tabs{display:flex;gap:8px;padding:10px 16px 4px;flex-shrink:0}.quiz-setup-tabs button{flex:1;padding:9px;border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--border);color:var(--text-muted);font-size:13px;font-weight:600}.quiz-setup-tabs button.active{background:#bf5af2;border-color:#bf5af2;color:#fff}.quiz-setup-body{padding:8px 16px 24px}.quiz-cat{margin-bottom:16px}.quiz-cat-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px;font-size:13px;font-weight:700;color:var(--text)}.quiz-cat-count{font-size:11px;font-weight:500;color:var(--text-dim)}.quiz-chips{display:flex;flex-wrap:wrap;gap:6px}.quiz-chip{padding:6px 11px;border-radius:999px;background:var(--surface);border:1px solid var(--border);color:var(--text-muted);font-size:12px;font-weight:500}.quiz-chip.active{background:#bf5af226;border-color:#bf5af2;color:#e3b9ff}.quiz-field{margin:18px 0 6px}.quiz-field>label{display:block;font-size:12px;font-weight:600;color:var(--text-muted);margin-bottom:7px}.quiz-seg{display:flex;gap:6px;flex-wrap:wrap}.quiz-seg button{padding:7px 13px;border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--border);color:var(--text-muted);font-size:12px;font-weight:600}.quiz-seg button.active{background:var(--surface3);border-color:var(--border2);color:var(--text)}.quiz-seg-sm button{padding:4px 9px;font-size:11px}.quiz-cta{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:13px 18px;border-radius:var(--radius);background:#bf5af2;border:none;color:#fff;font-size:15px;font-weight:700}.quiz-cta:disabled{opacity:.4;cursor:default}.quiz-start{width:100%;margin-top:20px}.quiz-secondary{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:11px 16px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);color:var(--text-muted);font-size:14px;font-weight:600}.quiz-hint{margin-top:10px;font-size:12px;color:var(--text-dim);text-align:center}.quiz-active-bar{display:flex;align-items:center;justify-content:space-between;padding:8px 16px 0;flex-shrink:0}.quiz-progress-count{font-size:13px;font-weight:700;color:var(--text-muted)}.quiz-strikes{display:flex;gap:5px;align-items:center}.quiz-strike-dot{width:10px;height:10px;border-radius:50%;background:var(--surface3);border:1.5px solid var(--border2);transition:background .15s,border-color .15s,transform .15s}.quiz-strike-dot.hit{background:#ff453a;border-color:#ff453a;transform:scale(1.2)}.quiz-icon-btn{width:34px;height:34px;border-radius:9px;background:var(--surface);border:1px solid var(--border);color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center}.quiz-icon-btn.active{background:#00e5ff1f;border-color:#00e5ff}.quiz-prompt{text-align:center;padding:12px 16px 6px;flex-shrink:0}.quiz-prompt-title{font-size:24px;font-weight:800;color:var(--text);letter-spacing:-.4px}.quiz-prompt-sub{font-size:14px;color:var(--text-muted);margin-top:2px}.quiz-listening{margin-top:8px;font-size:12px;font-weight:700;color:#00e5ff}.quiz-listening span{color:#00e5ff80;font-weight:500}.quiz-fb-scroll{position:relative;flex:1;min-height:0;overflow:auto}.quiz-fb-scroll .fb-wrap{height:100%;padding:8px 12px;overflow:visible}.quiz-active-footer{display:flex;align-items:center;justify-content:space-between;padding:8px 16px 16px;flex-shrink:0;gap:10px}.quiz-checklist{display:flex;flex-wrap:wrap;gap:5px;flex:1}.quiz-checklist-item{padding:3px 8px;border-radius:6px;font-size:11px;font-weight:700;background:var(--surface);border:1px solid var(--border);color:var(--text-muted)}.quiz-checklist-item.found{background:#30d15826;border-color:#30d158;color:#30d158}.quiz-advancing{display:flex;align-items:center;justify-content:center;padding:12px 16px 16px;flex-shrink:0;font-size:20px;font-weight:800;color:#30d158;gap:6px}.quiz-advancing-check{font-size:22px}.quiz-focus-badge{margin-top:4px;font-size:11px;font-weight:600;color:#ff9f0a}.quiz-focus-notice{margin-top:14px;padding:8px 12px;border-radius:8px;background:#ff9f0a14;border:1px solid rgba(255,159,10,.28);font-size:12px;font-weight:600;color:#ff9f0a}@keyframes quizWrongFlash{0%{opacity:1}to{opacity:0}}.quiz-wrong-flash{animation:quizWrongFlash .42s ease-out forwards}@keyframes quizFoundPop{0%{transform:scale(.4);opacity:0}60%{transform:scale(1.15)}to{transform:scale(1);opacity:1}}.quiz-found-pop{transform-box:fill-box;transform-origin:center;animation:quizFoundPop .22s ease-out}.quiz-done{align-items:center;justify-content:flex-start;overflow-y:auto;padding:24px 16px;text-align:center}.quiz-done-trophy{color:#ffd60a;margin-bottom:8px}.quiz-done-score{font-size:40px;font-weight:800;color:var(--text)}.quiz-done-sub{font-size:13px;color:var(--text-muted);margin-bottom:18px}.quiz-done-list{list-style:none;width:100%;max-width:420px;margin-bottom:20px}.quiz-done-list li{display:flex;justify-content:space-between;padding:9px 12px;border-bottom:1px solid var(--border);font-size:13px;color:var(--text)}.quiz-done-list li.miss{color:var(--text-muted)}.quiz-done-mark{font-weight:800}.quiz-done-list li.ok .quiz-done-mark{color:#30d158}.quiz-done-list li.miss .quiz-done-mark{color:#ff453a}.quiz-done-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.quiz-progress{padding:8px 16px 24px;overflow-y:auto}.quiz-empty{padding:40px 24px;text-align:center;color:var(--text-muted);font-size:14px;display:flex;flex-direction:column;align-items:center;gap:14px}.empty-signin-btn{padding:10px 24px;background:var(--accent);color:#fff;font-size:14px;font-weight:600;border:none;border-radius:var(--radius);cursor:pointer;transition:opacity .15s}.empty-signin-btn:hover{opacity:.85}.lick-lib-signin-wrap{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:32px}.quiz-progress-summary{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-muted);margin-bottom:12px}.quiz-progress-summary strong{color:var(--text)}.quiz-progress-summary .quiz-seg{margin-left:auto}.quiz-progress-list{list-style:none}.quiz-progress-list li{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--border)}.quiz-progress-main{flex:1;min-width:0}.quiz-progress-label{display:block;font-size:14px;font-weight:600;color:var(--text)}.quiz-progress-list li.mastered .quiz-progress-label{color:#30d158}.quiz-progress-stats{font-size:11px;color:var(--text-dim)}.quiz-master-btn{display:inline-flex;align-items:center;gap:4px;padding:6px 10px;border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--border);color:var(--text-muted);font-size:12px;font-weight:600;flex-shrink:0}.quiz-master-btn.active{background:#30d15826;border-color:#30d158;color:#30d158}.quiz-progress-cat-tabs{display:flex;gap:4px;margin-bottom:16px;flex-wrap:wrap}.quiz-progress-cat-tabs button{padding:5px 12px;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--text-muted);font-size:12px;font-weight:600;cursor:pointer}.quiz-progress-cat-tabs button.active{background:#bf5af2;border-color:#bf5af2;color:#fff}.quiz-chart-section{margin-bottom:20px}.quiz-chart-heading{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid var(--border);font-size:12px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.quiz-chart-heading-sub{font-size:11px;font-weight:500;color:var(--text-dim);text-transform:none;letter-spacing:0}.quiz-chart-row{display:grid;grid-template-columns:110px 1fr 72px 32px;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid var(--border)}.quiz-chart-row.mastered .quiz-chart-label{color:#30d158}.quiz-chart-label{font-size:13px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.quiz-chart-bar-wrap{height:8px;border-radius:4px;background:var(--surface3);overflow:hidden}.quiz-chart-bar{height:100%;border-radius:4px;transition:width .4s ease}.quiz-chart-stats{display:flex;justify-content:flex-end;gap:6px;align-items:baseline}.quiz-chart-pct{font-size:12px;font-weight:700}.quiz-chart-tries{font-size:11px;color:var(--text-dim)}.quiz-stats{padding:8px 16px 24px;overflow-y:auto;display:flex;flex-direction:column;gap:4px}.quiz-stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:6px}.quiz-stat-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:12px 12px 10px;display:flex;flex-direction:column;gap:2px}.quiz-stat-icon{color:var(--text-dim);margin-bottom:2px}.quiz-stat-value{font-size:22px;font-weight:800;color:var(--text);line-height:1}.quiz-stat-label{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.quiz-stat-sub{font-size:10px;color:var(--text-dim);margin-top:1px}.quiz-stats-section-head{font-size:11px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.8px;margin:8px 0 6px}.quiz-stats-cat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:8px}.quiz-stats-cat-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:10px 10px 8px;display:flex;flex-direction:column;gap:3px}.quiz-stats-cat-empty{opacity:.45}.quiz-stats-cat-name{font-size:10px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.quiz-stats-cat-accuracy{font-size:20px;font-weight:800;line-height:1.1}.quiz-stats-cat-speed{font-size:11px;color:var(--text-muted);display:flex;align-items:center;gap:3px}.quiz-stats-cat-count{font-size:10px;color:var(--text-dim)}.quiz-stats-cat-empty-text{font-size:12px;color:var(--text-dim)}.quiz-stats-callout{display:flex;align-items:flex-start;gap:7px;padding:9px 12px;border-radius:8px;font-size:12px;line-height:1.4;margin-bottom:4px}.quiz-stats-callout-weak{background:#ff453a14;border:1px solid rgba(255,69,58,.25);color:#ff453a}.quiz-stats-callout-weak strong{color:#ff453a}.quiz-stats-callout-due{background:#ff9f0a14;border:1px solid rgba(255,159,10,.25);color:#ff9f0a}.quiz-stats-callout-due strong{color:#ff9f0a}.quiz-stats-table-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-top:4px}.quiz-stats-sort{display:flex;gap:4px}.quiz-stats-sort button{display:flex;align-items:center;gap:4px;padding:4px 8px;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--text-muted);font-size:11px;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s}.quiz-stats-sort button.active{background:var(--surface3);border-color:var(--border2);color:var(--text)}.quiz-stats-item-row{align-items:center}.quiz-stats-speed-badge{display:flex;align-items:center;gap:3px;font-size:11px;font-weight:700;white-space:nowrap;min-width:44px;justify-content:flex-end}.quiz-stats-add-btn{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:6px;flex-shrink:0;background:var(--surface);border:1px solid var(--border);color:var(--text-muted);cursor:pointer;transition:background .15s,color .15s}.quiz-stats-add-btn:hover{background:#bf5af226;border-color:#bf5af2;color:#bf5af2}.quiz-stats-add-btn.added{background:#30d1581f;border-color:#30d158;color:#30d158}.help-btn--active{background:#ffd60a1f!important;border-color:#ffd60a!important;color:#ffd60a!important}.help-hint-wrap{display:contents;cursor:help}.help-mode-active .help-hint-wrap>*{outline:1.5px dashed rgba(255,214,10,.55)!important;outline-offset:2px;animation:help-pulse 2.4s ease-in-out infinite}.help-mode-active .help-hint-wrap:hover>*{outline:1.5px solid rgba(255,214,10,.9)!important;animation:none}@keyframes help-pulse{0%,to{outline-color:#ffd60a59}50%{outline-color:#ffd60abf}}.help-tooltip{position:fixed;width:260px;background:var(--surface2);border:1px solid #ffd60a;border-radius:var(--radius-sm);padding:10px 12px;z-index:9999;box-shadow:0 8px 24px #00000080;animation:help-fade-in .12s ease}.help-tooltip-text{color:var(--text);font-size:12px;line-height:1.5}@keyframes help-fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.rotate-gate{display:none}@media (hover: none) and (pointer: coarse) and (orientation: portrait){.rotate-gate{display:flex;position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:40px 28px;text-align:center;background:var(--bg)}.rotate-gate-icon{color:var(--accent);animation:rotate-hint 2.4s ease-in-out infinite}.rotate-gate-title{font-size:18px;font-weight:800;color:var(--text);letter-spacing:-.2px}.rotate-gate-sub{font-size:13px;color:var(--text-muted);line-height:1.5;max-width:260px}.app{pointer-events:none}}@keyframes rotate-hint{0%,45%{transform:rotate(0)}60%,90%{transform:rotate(-90deg)}to{transform:rotate(0)}}@media (orientation: landscape) and (max-height: 500px){html,body,#root{height:100dvh}.header{padding:4px 14px 2px}.header{padding-top:max(4px,env(safe-area-inset-top));padding-left:max(14px,calc(10px + env(safe-area-inset-left)));padding-right:max(14px,calc(10px + env(safe-area-inset-right)))}.logo{font-size:15px}.icon-btn{width:30px;height:30px}.account-btn{width:26px;height:26px}.pitch-badge{padding:3px 10px 3px 7px}.pitch-note{font-size:13px}.mode-tabs{padding:0 14px 4px;gap:5px}.tab{padding:4px 12px;font-size:12px}.target-bar{padding:0 14px 4px}.target-pill{padding:4px 10px}.controls-area{min-height:0}.controls{padding:2px 14px 4px;gap:5px}.ctrl-row{min-height:28px}.chip{height:28px}.multi-slots{padding:2px 14px 4px;gap:5px}.m-slot{min-height:36px;padding:4px 8px}.fb-wrap{padding:4px 12px 2px}.legend{padding:2px 14px 4px;min-height:0;padding-bottom:max(4px,env(safe-area-inset-bottom))}.leg-item,.leg-intervals{font-size:10px}.sheet{max-height:92dvh;overflow-y:auto;padding:10px 20px max(16px,env(safe-area-inset-bottom));border-radius:16px 16px 0 0}.sheet-handle{margin-bottom:10px}.sheet-title{margin-bottom:8px}.setting-row{padding:9px 0}.modal-overlay{padding:12px;align-items:center}.modal-card{max-height:94dvh;overflow-y:auto;padding:16px;gap:10px}.modal-title{font-size:18px}.modal-input{height:42px}.modal-btn{height:44px}.paywall-body{justify-content:flex-start;overflow-y:auto;padding:16px 24px}.paywall-icon{font-size:38px;margin-bottom:10px}.paywall-title{font-size:20px;margin-bottom:6px}.paywall-sub{font-size:13px;margin-bottom:14px}.paywall-footer{padding:10px 24px max(14px,env(safe-area-inset-bottom))}.paywall-cta{height:44px}.lick-setup-scroll,.pa-setup-scroll,.quiz-setup-body{padding-top:2px}.lick-setup-footer{padding:8px 14px max(10px,env(safe-area-inset-bottom))}.lick-start-btn{height:44px}.lick-build-header{padding:4px 14px}.lick-sequence{height:56px}.lick-controls{padding:6px 14px max(8px,env(safe-area-inset-bottom))}.lick-ctrl-btn{height:32px}.pa-pattern-strip{min-height:38px;padding:4px 14px 4px 70px}.pa-chord-indicator{height:48px;padding:4px 14px}.pa-transport{height:48px;padding:4px 14px;padding-bottom:max(4px,env(safe-area-inset-bottom))}.pa-t-btn{width:38px;height:38px}.pa-t-play{width:44px;height:44px}.quiz-prompt{padding:6px 16px 2px}.quiz-prompt-title{font-size:18px}.quiz-prompt-sub{font-size:12px}.quiz-active-bar{padding:4px 16px 0}.quiz-active-footer{padding:6px 16px max(8px,env(safe-area-inset-bottom))}}
