:root{--bg: #F4EDDE;--surface: #FCFAF3;--surface2: #EFE7D5;--surface3: #E4DAC4;--border: #E0D6C0;--border2: #CFC2A6;--text: #221E18;--text-muted: #6E6352;--text-dim: #A1937B;--accent: #9E2B25;--accent-ink: #fff;--accent-2: #1F5C4D;--radius: 10px;--radius-sm: 7px;--neck: #211D16;--neck-edge: #15120D;--font-display: "Fraunces", Georgia, "Times New Roman", serif;--font-body: "Hanken Grotesk", -apple-system, BlinkMacSystemFont, system-ui, sans-serif;--font-mono: "Geist Mono", "SF Mono", ui-monospace, "Roboto Mono", monospace;--shadow-sm: 0 1px 2px rgba(34, 30, 24, .06), 0 1px 1px rgba(34, 30, 24, .04);--shadow-md: 0 4px 14px rgba(34, 30, 24, .1), 0 1px 3px rgba(34, 30, 24, .06);--shadow-lg: 0 18px 50px rgba(34, 30, 24, .16), 0 4px 12px rgba(34, 30, 24, .08)}*,*: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:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.app:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;background:radial-gradient(120% 80% at 50% -10%,rgba(255,252,244,.6),transparent 60%)}button{font-family:inherit;cursor:pointer}.modal-title,.app-modal__title,.paywall-title,.quiz-prompt-title,.quiz-done-score,.quiz-stat-value,.sheet-title{font-family:var(--font-display);font-optical-sizing:auto;letter-spacing:-.4px;font-weight:600}.pitch-note,.pa-chord-name,.pa-strip-chord,.pa-bpm-val,.pa-bpm-label,.lick-seq-label,.lick-note-count,.quiz-chart-pct,.lick-count,.lick-card-count{font-family:var(--font-mono);font-feature-settings:"tnum" 1}.target-bar-label,.ctrl-label,.lick-card-title,.lick-card-row-label,.pa-inline-label,.pa-row-label,.quiz-stat-label,.quiz-stats-section-head,.quiz-chart-heading,.quiz-stats-cat-name,.lick-seq-out,.lick-seq-order{font-family:var(--font-mono);font-weight:500}.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{display:inline-flex;flex-direction:column;align-items:stretch;line-height:1}.logo-word{font-family:var(--font-display);font-size:22px;font-weight:600;letter-spacing:-.4px;color:var(--text);font-optical-sizing:auto}.logo-strings{display:flex;flex-direction:column;gap:3px;margin-top:5px}.logo-string{height:2px;border-radius:1px}.logo-string--1{background:var(--accent)}.logo-string--2{background:var(--accent-2);height:1.5px;opacity:.6}.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:#c0392b;color:#c0392b}.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,#7a4a63,#5e3550);border-radius:4px;padding:2px 5px}.header-right{display:flex;align-items:center;gap:8px}.mic-btn--active{background:#0e8c841f;border-color:#0e8c84;color:#0e8c84}.mic-btn--active:hover{background:#0e8c8433;color:#0e8c84}.pitch-badge{display:flex;align-items:center;gap:6px;background:#0e8c8414;border:1px solid rgba(14,140,132,.3);border-radius:20px;padding:5px 12px 5px 8px}.pitch-dot{width:6px;height:6px;border-radius:50%;background:#0e8c84;animation:pitch-pulse 1s ease-in-out infinite;flex-shrink:0}.pitch-note{font-size:15px;font-weight:700;color:#0e8c84;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:#b07d2b1f;border-color:#b07d2b;color:#b07d2b}.focus-btn--active:hover{background:#b07d2b33;color:#b07d2b}.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(176,125,43,.6);background:#b07d2b1f;color:#b07d2b;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:#b07d2b33}.focus-clear-inline{height:26px;padding:0 10px;border-radius:6px;border:1px solid rgba(176,125,43,.55);background:#b07d2b1a;color:#b07d2b;font-size:11px;font-weight:700;cursor:pointer;flex-shrink:0;transition:background .12s}.focus-clear-inline:hover{background:#b07d2b2e}.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:#fcfaf3d1;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--text-muted);box-shadow:var(--shadow-sm);transition:color .12s,background .12s}.zen-toggle:hover{color:var(--text);background:var(--surface)}.zoom-control{position:absolute;bottom:12px;right:12px;z-index:45;display:flex;align-items:center;gap:1px;padding:3px;border-radius:999px;border:1px solid var(--border2);background:#fcfaf3d1;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:var(--shadow-sm)}.zoom-btn{width:30px;height:30px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--text-muted);border-radius:999px;transition:color .12s,background .12s}.zoom-btn:hover:not(:disabled){color:var(--text);background:var(--surface2)}.zoom-btn:disabled{opacity:.3;cursor:default}.zoom-divider{width:1px;height:16px;background:var(--border2)}.app--zen .fb-stage{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:var(--bg);padding:0}.app--zen .zen-toggle{z-index:65;top:max(10px,env(safe-area-inset-top));right:max(12px,env(safe-area-inset-right))}.app--zen .zoom-control{z-index:65;bottom:max(14px,env(safe-area-inset-bottom));right:max(12px,env(safe-area-inset-right))}.neck-stage{display:contents}.mode-tabs{display:flex;padding:2px 16px 0;gap:2px;overflow-x:auto;scrollbar-width:none;flex-shrink:0;border-bottom:1px solid var(--border)}.mode-tabs::-webkit-scrollbar{display:none}.tab{padding:8px 13px 9px;border:none;border-bottom:2px solid transparent;background:transparent;color:var(--text-muted);font-family:var(--font-body);font-size:13px;font-weight:600;white-space:nowrap;transition:color .15s,border-color .15s;letter-spacing:.1px;margin-bottom:-1px}.tab:hover{color:var(--text)}.tab.active{color:var(--accent);border-bottom-color:var(--accent)}.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:#b07d2b22;border-color:#b07d2b;color:#b07d2b}.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:176px;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:center;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:#b07d2b;border-color:#b07d2b;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(192,57,43,.45);color:#c0392b;font-size:13px;font-weight:600;cursor:pointer;transition:background .12s,border-color .12s}.setting-clear-btn:hover{background:#c0392b14;border-color:#c0392b}.setting-clear-btn.confirm{background:#c0392b1f;border-color:#c0392b;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{color:#355c8c;border-bottom-color:#355c8c}.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:#c0392b}.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:#c0392b;color:#c0392b}.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-note-count{flex-shrink:0;font-size:11px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-dim)}.lick-note-count.at-max{color:#c0392b}.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:#b97a1e66;background:#b97a1e18}.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:#b97a1e;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:#1f7a5e;border:1px solid #1F7A5E;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:#c0392b;border-color:#c0392b}.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, #9E2B25);line-height:1.5;margin-bottom:14px;padding:10px 14px;background:#9e2b251a;border:1px solid rgba(158,43,37,.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{color:#1f7a5e;border-bottom-color:#1f7a5e}.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 #1F7A5E;background:var(--bg);color:#1f7a5e;font-size:12px;font-weight:700;cursor:pointer;transition:all .12s}.pa-add-btn:hover{filter:brightness(1.25)}.pa-add-btn:disabled{opacity:.4;cursor:default;border-color:var(--border2);color:var(--text-dim);filter:none}.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:#1f7a5e;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-setup-footer--split{display:flex;gap:10px}.pa-setup-footer--split .pa-start-btn{flex:1}.pa-save-btn{flex-shrink:0;min-width:96px;height:50px;background:var(--surface2);color:var(--text);font-size:15px;font-weight:700;border:1px solid var(--border2);border-radius:var(--radius);transition:opacity .15s}.pa-save-btn:disabled{opacity:.4;cursor:default}.pa-save-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:#1f7a5e;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:#1f7a5e88;background:#1f7a5e18}.pa-chord-next{border-color:#355c8c44;background:#355c8c10;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:#1f7a5e33}.pa-chord-progress-fill{height:100%;background:#1f7a5e;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:#1F7A5E;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:#1f7a5e;border-color:#1f7a5e;box-shadow:0 0 6px #1f7a5e88}.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:#1f7a5e;border-color:#1f7a5e;color:#fff;font-size:18px;box-shadow:0 0 12px #1f7a5e44}.pa-t-play:hover{opacity:.88;background:#1f7a5e;color:#fff}.pa-t-playing{background:#355c8c;border-color:#355c8c;box-shadow:0 0 12px #355c8c44}.pa-t-playing:hover{background:#355c8c;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}}@media (min-width: 1024px) and (min-height: 640px){.header{padding:18px 36px 14px}.logo-word{font-size:30px;letter-spacing:-.6px}.logo-strings{margin-top:7px;gap:4px}.logo-string{height:3px}.logo-string--2{height:2px}.header-right{gap:10px}.icon-btn{width:38px;height:38px;border-radius:var(--radius)}.account-btn{width:32px;height:32px}.account-initial{font-size:13px}.mode-tabs{padding:8px 32px 0;gap:4px}.tab{padding:11px 18px 12px;font-size:15px;letter-spacing:.2px}.tab.active{border-bottom-width:3px}.controls-area{min-height:204px;justify-content:space-evenly}.controls{gap:10px;padding:6px 36px}.ctrl-row{min-height:38px;gap:14px}.ctrl-label{font-size:11px;letter-spacing:1.4px;min-width:48px}.chip-list{gap:7px}.chip{height:36px;min-width:36px;padding:0 15px;font-size:14px}.chip.dim-note{font-size:12px;padding:0 11px}.target-bar{padding:0 36px 10px;gap:8px}.target-pill{padding:7px 15px;font-size:13px}.legend{padding:10px 36px 16px;gap:8px 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:#c0392b;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{color:#7a4a63;border-bottom-color:#7a4a63}.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:#7a4a63;border-color:#7a4a63;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:#7a4a6326;border-color:#7a4a63;color:#c39db2}.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:#7a4a63;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:#c0392b;border-color:#c0392b;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:#0e8c841f;border-color:#0e8c84}.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:#0e8c84}.quiz-listening span{color:#0e8c8480;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:#1f7a5e26;border-color:#1f7a5e;color:#1f7a5e}.quiz-advancing{display:flex;align-items:center;justify-content:center;padding:12px 16px 16px;flex-shrink:0;font-size:20px;font-weight:800;color:#1f7a5e;gap:6px}.quiz-advancing-check{font-size:22px}.quiz-focus-badge{margin-top:4px;font-size:11px;font-weight:600;color:#b07d2b}.quiz-focus-notice{margin-top:14px;padding:8px 12px;border-radius:8px;background:#b07d2b14;border:1px solid rgba(176,125,43,.28);font-size:12px;font-weight:600;color:#b07d2b}@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:#b07d2b;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:#1f7a5e}.quiz-done-list li.miss .quiz-done-mark{color:#c0392b}.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:#1f7a5e}.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:#1f7a5e26;border-color:#1f7a5e;color:#1f7a5e}.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:#7a4a63;border-color:#7a4a63;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:#1f7a5e}.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:#c0392b14;border:1px solid rgba(192,57,43,.25);color:#c0392b}.quiz-stats-callout-weak strong{color:#c0392b}.quiz-stats-callout-due{background:#b07d2b14;border:1px solid rgba(176,125,43,.25);color:#b07d2b}.quiz-stats-callout-due strong{color:#b07d2b}.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:#7a4a6326;border-color:#7a4a63;color:#7a4a63}.quiz-stats-add-btn.added{background:#1f7a5e1f;border-color:#1f7a5e;color:#1f7a5e}.help-btn--active{background:#b07d2b1f!important;border-color:#b07d2b!important;color:#b07d2b!important}.help-hint-wrap{display:contents;cursor:help}.help-mode-active .help-hint-wrap>*{outline:1.5px dashed rgba(176,125,43,.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(176,125,43,.9)!important;animation:none}@keyframes help-pulse{0%,to{outline-color:#b07d2b59}50%{outline-color:#b07d2bbf}}.help-tooltip{position:fixed;width:260px;background:var(--surface2);border:1px solid #B07D2B;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-word{font-size:15px}.logo-strings{margin-top:3px;gap:2px}.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))}}
