:root{--font-display: "Sora", "Avenir Next", "Futura", "Century Gothic", "Segoe UI", sans-serif;--bg-base: #f1f4fa;--bg-lift: #e8edf6;--surface-base: #ffffff;--surface-soft: rgba(255, 255, 255, .9);--line-soft: rgba(10, 33, 59, .12);--line-strong: rgba(10, 33, 59, .24);--text-primary: #10233f;--text-secondary: #5f7088;--accent: #4f79b7;--accent-strong: #3a5d93;--accent-ring: rgba(79, 121, 183, .26);--menu-width: 280px;--menu-width-collapsed: 92px;--radius-xl: 24px;--radius-lg: 16px;--radius-md: 12px;--shadow-shell: 0 18px 34px rgba(8, 27, 49, .08);--shadow-card: 0 8px 18px rgba(8, 27, 49, .06);color-scheme:light}*,*:before,*:after{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:var(--font-display);color:var(--text-primary);background:radial-gradient(circle at 6% -12%,rgba(160,183,214,.32),transparent 34%),radial-gradient(circle at 94% 8%,rgba(132,159,195,.22),transparent 28%),linear-gradient(160deg,var(--bg-base) 0%,var(--bg-lift) 100%);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button{font:inherit}.pwa-update-toast{position:fixed;right:16px;bottom:16px;z-index:1000;display:grid;gap:10px;min-width:260px;max-width:min(360px,calc(100vw - 24px));padding:14px;border:1px solid var(--line-strong);border-radius:14px;background:#0c2344f5;color:#f4f8ff;box-shadow:0 16px 34px #05101e61;animation:pwa-update-toast-enter .18s ease-out both}.pwa-update-toast__message{margin:0;font-size:.95rem;line-height:1.35}.pwa-update-toast__actions{display:flex;justify-content:flex-end;gap:8px}.pwa-update-toast__button{border:1px solid transparent;border-radius:10px;padding:6px 12px;font-size:.88rem;font-weight:700;cursor:pointer}.pwa-update-toast__button--secondary{border-color:#f4f8ff3d;background:transparent;color:#f4f8ffe6}.pwa-update-toast__button--primary{border-color:transparent;background:var(--accent);color:#fff}.pwa-update-toast__button:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-ring)}.app-shell{position:relative;display:flex;min-height:100vh;min-height:100dvh;color:var(--text-primary);overflow:hidden}.app-shell__mobile-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:18;opacity:0;pointer-events:none;background:#06122270;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:opacity .24s ease}.app-shell__mobile-toggle{position:fixed;top:16px;left:16px;z-index:32;display:none;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--line-soft);border-radius:12px;background:#fffffff5;color:var(--text-primary);box-shadow:0 12px 22px #081b3126;cursor:pointer;transition:transform .22s ease,opacity .22s ease,border-color .22s ease}.app-shell__mobile-toggle:hover{transform:translateY(-1px);border-color:var(--line-strong)}.app-shell__menu-pane{width:var(--menu-width);flex:0 0 var(--menu-width);transition:width .28s cubic-bezier(.2,.8,.2,1),flex-basis .28s cubic-bezier(.2,.8,.2,1)}.app-shell__menu-panel{position:sticky;top:16px;height:calc(100vh - 32px);height:calc(100dvh - 32px);margin:16px 0 16px 16px;display:flex;flex-direction:column;border:1px solid var(--line-soft);border-radius:var(--radius-xl);background:#fffffff2;box-shadow:var(--shadow-shell);overflow:hidden;transition:transform .28s cubic-bezier(.25,1,.4,1),border-color .22s ease;will-change:transform}.app-shell__menu-controls{display:flex;justify-content:flex-end;padding:12px 12px 6px}.app-shell__menu-toggle{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--line-soft);border-radius:10px;background:#ffffffd6;color:var(--text-secondary);cursor:pointer;transition:transform .2s ease,border-color .2s ease,color .2s ease,background-color .2s ease}.app-shell__menu-toggle:hover{transform:translateY(-1px);border-color:var(--line-strong);color:var(--text-primary);background:var(--surface-base)}.app-shell__menu-toggle:focus-visible,.app-shell__mobile-toggle:focus-visible,.app-menu__item:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.app-shell__menu-content{flex:1;min-height:0;padding:0 12px 14px}.app-shell__content{flex:1;min-width:0;padding:16px 16px 16px 12px}.app-shell__content-scroll{height:calc(100vh - 32px);height:calc(100dvh - 32px);overflow:auto;border:1px solid var(--line-soft);border-radius:var(--radius-xl);background:var(--surface-soft);box-shadow:var(--shadow-shell);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.app-shell--collapsed .app-shell__menu-pane{width:var(--menu-width-collapsed);flex-basis:var(--menu-width-collapsed)}.app-shell--collapsed .app-menu__title{justify-content:center}.app-shell--collapsed .app-menu__title-copy,.app-shell--collapsed .app-menu__item-label,.app-shell--collapsed .app-menu__item-description{max-width:0;opacity:0;overflow:hidden;transform:translate(-3px)}.app-shell--collapsed .app-menu__item{justify-content:center;gap:0;padding:11px 10px}.app-shell--collapsed .app-menu__item-marker{margin:0}.app-menu{display:flex;flex-direction:column;gap:14px;height:100%}.app-menu__title{display:flex;align-items:center;gap:12px;min-height:42px;margin:0}.app-menu__title-mark{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:13px;flex-shrink:0;font-size:.72rem;font-weight:720;letter-spacing:.08em;color:#f4f8ff;background:linear-gradient(150deg,#4f79b7,#3a5d93)}.app-menu__title-copy{font-size:1.05rem;font-weight:690;white-space:nowrap;transition:max-width .22s ease,opacity .22s ease,transform .22s ease}.app-menu__list{display:flex;flex-direction:column;gap:8px;min-height:0;overflow:auto;padding-right:4px}.app-menu__item{width:100%;border:1px solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--text-primary);text-align:left;display:flex;align-items:center;gap:12px;padding:10px 12px;cursor:pointer;transition:transform .22s ease,background-color .22s ease,border-color .22s ease,box-shadow .22s ease}.app-menu__item:hover{transform:translateY(-1px);background:#ffffffd6;border-color:var(--line-soft)}.app-menu__item--active{border-color:#3a5d9347;background:linear-gradient(140deg,var(--accent) 0%,#6c92c6 100%);color:#f4f8ff;box-shadow:0 12px 20px #3a5d933d}.app-menu__item-marker{width:30px;height:30px;border-radius:10px;border:1px solid var(--line-soft);display:inline-flex;align-items:center;justify-content:center;font-size:.71rem;font-weight:700;letter-spacing:.06em;color:var(--text-secondary);background:#ffffffd1;flex-shrink:0}.app-menu__item--active .app-menu__item-marker{border-color:#ffffff80;color:#f4f8ff;background:#fff3}.app-menu__item-copy{display:flex;flex-direction:column;min-width:0;gap:3px}.app-menu__item-label{font-size:.96rem;font-weight:640;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:max-width .22s ease,opacity .22s ease,transform .22s ease}.app-menu__item-description{font-size:.72rem;line-height:1.32;color:var(--text-secondary);transition:max-width .22s ease,opacity .22s ease,transform .22s ease,color .22s ease}.app-menu__item--active .app-menu__item-description{color:#f8fff9d9}.view-container{display:flex;flex-direction:column;gap:16px;padding:28px;animation:view-enter .36s cubic-bezier(.16,1,.3,1) both}.view-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:6px 4px 14px;border-bottom:1px solid var(--line-soft)}.view-header__copy{min-width:0}.view-header__title{margin:0;line-height:1.05;letter-spacing:-.02em;font-size:clamp(1.84rem,3.2vw,2.42rem)}.view-header__subtitle{margin:9px 0 0;max-width:54ch;color:var(--text-secondary);line-height:1.45}.view-header__actions{flex-shrink:0}.view-section{position:relative;padding:18px 20px;border:1px solid var(--line-soft);border-radius:var(--radius-lg);background:#fffffff5;box-shadow:var(--shadow-card);overflow:hidden;animation:section-rise .42s cubic-bezier(.16,1,.3,1) both}.view-section:after{content:"";position:absolute;top:-32px;right:-24px;width:112px;height:112px;border-radius:50%;background:radial-gradient(circle,rgba(169,205,255,.18) 0%,transparent 70%);pointer-events:none}.view-section:nth-of-type(2){animation-delay:65ms}.view-section:nth-of-type(3){animation-delay:.12s}.view-section:nth-of-type(4){animation-delay:.18s}.view-section__title{margin:0;font-size:1.05rem;letter-spacing:.01em}.view-section__description{margin:7px 0 0;max-width:58ch;color:var(--text-secondary);font-size:.88rem;line-height:1.4}.view-section__content{margin-top:14px;color:#2f4639;line-height:1.45}.practice-view{position:relative;height:100%;min-height:100%;overflow:hidden;outline:none;background:radial-gradient(circle at 72% -12%,rgba(138,192,255,.2),transparent 36%),radial-gradient(circle at -8% 118%,rgba(104,170,245,.2),transparent 40%),linear-gradient(180deg,#f5f8ff,#e7efff)}.practice-view__notation-scroll{position:absolute;top:0;right:0;bottom:0;left:0;overflow:auto;padding:48px 30px 152px;padding-bottom:calc(152px + env(safe-area-inset-bottom));scrollbar-width:thin}.practice-view__notation-display{position:relative;width:min(1180px,100%);margin:0 auto;border:1px solid rgba(10,33,59,.22);border-radius:26px;background:linear-gradient(180deg,#fffffffa,#f6fafffa);box-shadow:0 18px 34px #081b311f,inset 0 1px #ffffffd1;overflow:hidden}.practice-view__notation-renderer{background-image:linear-gradient(180deg,#081b3108,#081b3105 34%,#081b3108)}.practice-view__notation-overlay{pointer-events:none}.practice-view__notation-rail{position:sticky;top:0;width:min(1180px,100%);height:8px;margin:-8px auto 0;border-radius:999px;background:linear-gradient(90deg,#4f79b766,#4f79b70a);pointer-events:none}.practice-view__notation-title{position:relative;width:min(1180px,100%);margin:0 auto 10px;padding:0 2px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;color:#21446a}.practice-view__notation-title-copy{display:block;font-size:.68rem;color:#516d8f;line-height:1.3}.practice-view__notation-title-main{min-width:0;display:grid;gap:2px}.practice-view__notation-exercise-title{margin:0;font-size:1.12rem;font-weight:760;line-height:1.08;color:#17345c;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.practice-view__notation-subtitle{font-size:.72rem;font-weight:700;color:#3f648d;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.practice-view__notation-title-meta{position:relative;display:inline-flex;align-items:center;justify-content:flex-end;gap:8px}.practice-view__notation-progress-chip{display:block;padding:5px 9px;border:1px solid rgba(17,60,38,.2);border-radius:999px;background:#ffffffdb;font-size:.62rem;font-weight:720;letter-spacing:.05em;text-transform:uppercase;color:#2b5078}.practice-view__notation-key-badge{min-width:52px;height:38px;padding:0 12px;border:1px solid rgba(24,106,217,.5);border-radius:12px;background:linear-gradient(155deg,#e9f6fffa,#d6f6e2f2);display:inline-flex;align-items:center;justify-content:center;font-size:1rem;font-weight:760;color:#385f93;letter-spacing:.01em}.practice-view__key-navigator{position:relative;justify-self:end}.practice-view__notation-key-badge--interactive{font:inherit;line-height:1;cursor:pointer;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}.practice-view__notation-key-badge--interactive:hover{transform:translateY(-1px);border-color:#186ad9b8;box-shadow:0 8px 16px #0f3a7a33}.practice-view__notation-key-badge--interactive:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-ring)}.practice-view__key-menu{position:absolute;right:0;top:calc(100% + 8px);min-width:132px;border:1px solid rgba(10,33,59,.22);border-radius:12px;background:#fffffffa;box-shadow:0 16px 28px #07192d38;padding:6px;display:grid;gap:4px;z-index:6}.practice-view__key-menu-entry{border:1px solid transparent;border-radius:9px;min-height:34px;padding:6px 8px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:7px;background:transparent;color:#25496f;cursor:pointer;text-align:left}.practice-view__key-menu-entry:hover{border-color:#0a213b29;background:#eff6ffb8}.practice-view__key-menu-entry--active{border-color:#3a5d934d;background:#e5f1ffe0}.practice-view__key-menu-entry:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-ring)}.practice-view__context-navigator{position:relative}.practice-view__context-trigger{border:1px solid rgba(10,33,59,.24);border-radius:10px;min-height:34px;padding:6px 10px;display:inline-flex;align-items:center;gap:8px;background:#ffffffdb;color:#234b76;cursor:pointer}.practice-view__context-trigger-label{font-size:.58rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#4a6557}.practice-view__context-trigger-value{max-width:180px;font-size:.71rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.practice-view__context-menu{position:absolute;right:0;top:calc(100% + 8px);min-width:230px;max-width:min(82vw,300px);border:1px solid rgba(10,33,59,.22);border-radius:12px;background:#fffffffa;box-shadow:0 16px 28px #07192d38;padding:6px;display:grid;gap:4px;z-index:6}.practice-view__context-entry{border:1px solid transparent;border-radius:9px;min-height:34px;padding:6px 8px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:7px;background:transparent;color:#25496f;cursor:pointer;text-align:left}.practice-view__context-entry:hover{border-color:#0a213b29;background:#eff6ffb8}.practice-view__context-entry--active{border-color:#3a5d934d;background:#e5f1ffe0}.practice-view__context-status-dot{width:8px;height:8px;border-radius:50%;background:#526a8b59}.practice-view__context-status-dot--done{background:#277deee6}.practice-view__context-status-dot--partial{background:#d2971be6}.practice-view__context-status-dot--skip{background:#808893db}.practice-view__context-status-dot--pending{background:#526a8b59}.practice-view__context-entry-label{font-size:.72rem;font-weight:680;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.practice-view__context-entry-meta{font-size:.62rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#5d789b}.practice-view__notation-status{border-radius:999px;padding:2px 8px;font-size:.58rem;font-weight:700;letter-spacing:.05em}.practice-view__notation-status--done{color:#3a5d93;background:#2d82f624}.practice-view__notation-status--partial{color:#8b590f;background:#dba93b33}.practice-view__notation-status--skip{color:#5f6670;background:#99a0ab3d}.practice-view__notation-status--pending{color:#4e6457;background:#59739524}.practice-view__notation-error{position:sticky;top:56px;width:fit-content;margin:12px auto 0;padding:7px 12px;border:1px solid rgba(155,72,38,.28);border-radius:10px;background:#fff6efe6;color:#784021;font-size:.78rem}.practice-view__floating-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.practice-view__metronome-strip{position:absolute;left:16px;right:16px;bottom:14px;bottom:calc(14px + env(safe-area-inset-bottom));min-height:84px;border:1px solid rgba(9,29,54,.26);border-radius:18px;background:linear-gradient(160deg,#fffffff0,#f0f7ffe6);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 14px 28px #0a213b2e;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 12px;pointer-events:auto}.practice-view__metronome-strip-center{display:grid;justify-items:center;gap:5px;min-width:0}.practice-view__metronome-strip-header{display:inline-flex;align-items:center;gap:7px;color:#3a587b;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.practice-view__metronome-pulse{width:12px;height:12px;border-radius:50%;background:#2e588e42;box-shadow:0 0 #4f79b700;transform:scale(.84);transition:transform .12s ease,background-color .12s ease,box-shadow .12s ease}.practice-view__metronome-pulse--visible{transform:scale(1.06);background:#2a7ef2bd;box-shadow:0 0 0 5px #4f79b730}.practice-view__metronome-pulse--accent{background:#2273e9e6}.practice-view__metronome-main{display:flex;align-items:center;gap:9px;min-width:0}.practice-view__metronome-play{width:auto;min-width:76px;height:40px;padding:0 10px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid rgba(24,91,186,.34);border-radius:11px;background:linear-gradient(155deg,#4f79b733,#4f79b714);color:#215fca;font-size:.66rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;cursor:pointer;transition:transform .18s ease,background-color .18s ease,border-color .18s ease}.practice-view__metronome-play:hover{transform:translateY(-1px);border-color:#185bba85}.practice-view__metronome-tempo{min-width:64px;text-align:center;font-size:1.08rem;font-weight:760;letter-spacing:-.02em;color:#21456b}.practice-view__metronome-tempo-unit{display:block;margin-top:2px;font-size:.56rem;font-weight:650;letter-spacing:.08em;color:#4c6958}.practice-view__metronome-tempo-buttons{display:flex;flex-direction:row;gap:5px}.practice-view__metronome-tempo-buttons button{width:32px;height:26px;border:1px solid rgba(10,33,59,.2);border-radius:8px;background:#ffffffe6;color:#234a73;font-size:.9rem;line-height:1;cursor:pointer;transition:background-color .16s ease,transform .16s ease}.practice-view__metronome-tempo-buttons button:hover{transform:translateY(-1px);background:#fff}.practice-view__metronome-strip-actions{display:inline-flex;align-items:center;gap:9px;justify-self:end}.practice-view__done-button{border:1px solid rgba(58,93,147,.82);border-radius:999px;min-width:128px;min-height:40px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;color:#f4fff8;font-size:.76rem;font-weight:700;letter-spacing:.02em;text-transform:none;background:linear-gradient(160deg,#4f79b7,#3a5d93);box-shadow:0 10px 20px #12784047;cursor:pointer;transition:transform .18s ease,filter .18s ease,box-shadow .18s ease}.practice-view__done-button:hover{transform:translateY(-1px);filter:saturate(1.05) brightness(1.04);box-shadow:0 12px 22px #12784054}.practice-view__options-cluster{position:relative;display:flex;flex-direction:column;align-items:flex-end;gap:7px;pointer-events:auto}.practice-view__options-menu{position:absolute;right:0;bottom:calc(100% + 8px);min-width:200px;max-width:min(82vw,260px);max-height:min(430px,calc(100vh - 190px));max-height:min(430px,calc(100dvh - 190px));border:1px solid rgba(10,33,59,.24);border-radius:12px;background:#fffffffa;box-shadow:0 16px 28px #07192d3d;padding:6px;display:grid;gap:6px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;z-index:8;opacity:0;transform:translateY(6px) scale(.98);pointer-events:none;transition:opacity .17s ease,transform .17s ease}.practice-view--options-menu-open .practice-view__options-menu{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.practice-view__options-group{display:grid;gap:4px}.practice-view__options-group+.practice-view__options-group{border-top:1px solid rgba(10,33,59,.12);padding-top:6px}.practice-view__options-group-title{font-size:.56rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#556f60;padding:0 4px}.practice-view__options-action{border:1px solid rgba(10,33,59,.24);border-radius:10px;min-height:34px;width:100%;padding:7px 9px;display:inline-flex;align-items:center;justify-content:flex-start;gap:8px;background:#ffffffdb;color:#21456b;font-size:.69rem;font-weight:670;cursor:pointer;transition:transform .14s ease,background-color .14s ease,border-color .14s ease}.practice-view__options-action:hover{transform:translateY(-1px);border-color:#0a213b57;background:#fffffff0}.practice-view__outcome-toggle{border:1px solid rgba(10,33,59,.28);border-radius:999px;padding:8px 13px;min-width:84px;background:#ffffffc7;color:#294f78;font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}.practice-view__outcome-toggle:hover{border-color:#0a213b66;background:#ffffffe6}.practice-view__metronome-beat{margin:0;padding:0;color:#4f6658;font-size:.67rem;font-weight:650;letter-spacing:.08em;text-transform:uppercase}.practice-view__routine-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:44;display:flex;align-items:center;justify-content:center;padding:20px;background:#05101e80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.practice-view__execution-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:46;display:flex;align-items:center;justify-content:center;padding:20px;background:#05101e85;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.practice-view__execution-modal-card{width:min(760px,100%);max-height:min(86vh,820px);border:1px solid rgba(10,33,59,.24);border-radius:18px;background:linear-gradient(165deg,#fffffffa,#f4faeff7);box-shadow:0 24px 44px #0a213b47;padding:14px;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:10px}.practice-view__execution-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.practice-view__execution-modal-header-copy{min-width:0;display:grid;gap:4px}.practice-view__execution-modal-header h3{margin:0;font-size:.96rem;color:#17345c}.practice-view__execution-modal-copy{margin:0;font-size:.72rem;line-height:1.35;color:#486455}.practice-view__execution-modal-body{overflow:auto;max-height:min(62vh,600px);display:grid;gap:10px;padding-right:2px}.practice-view__execution-row{border:1px solid rgba(10,33,59,.14);border-radius:12px;background:#ffffffe6;padding:10px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:end}.practice-view__execution-grouping-grid{grid-column:1 / -1;display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.practice-view__execution-cycle-groups{grid-column:1 / -1}.practice-view__execution-toggle{display:inline-flex;align-items:center;gap:7px;font-size:.73rem;font-weight:650;color:#224268}.practice-view__execution-apply-all{display:inline-flex;align-items:center;gap:7px;font-size:.7rem;font-weight:620;color:#476354;white-space:nowrap}.practice-view__execution-note{grid-column:1 / -1;margin:0;font-size:.69rem;line-height:1.35;color:#5b4f2a}.practice-view__execution-error{margin:0;padding:8px 10px;border:1px solid rgba(138,62,41,.35);border-radius:10px;background:#ffede9f0;color:#7a2d1a;font-size:.74rem;font-weight:620;line-height:1.35}.practice-view__execution-modal-footer{border-top:1px solid rgba(10,33,59,.14);padding-top:10px;display:flex;align-items:center;justify-content:space-between;gap:10px}.practice-view__completion-modal-card{width:min(700px,100%)}.practice-view__completion-modal-body{max-height:min(52vh,420px)}.practice-view__completion-modal-footer{justify-content:flex-end;flex-wrap:wrap}.practice-view__routine-modal-card{width:min(760px,100%);max-height:min(84vh,760px);border:1px solid rgba(10,33,59,.24);border-radius:18px;background:linear-gradient(165deg,#fffffffa,#f4faeff7);box-shadow:0 24px 44px #0a213b47;padding:14px;display:grid;gap:10px}.practice-view__routine-modal-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.practice-view__routine-modal-header h3{margin:0;font-size:.96rem;color:#17345c}.practice-view__routine-modal-list{overflow:auto;max-height:min(72vh,620px);display:grid;gap:8px;padding-right:2px}.practice-view__routine-modal-row{border:1px solid rgba(10,33,59,.14);border-radius:12px;background:#ffffffe0;padding:8px 10px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px}.practice-view__routine-modal-row--current{border-color:#3a5d9361;background:linear-gradient(158deg,#e2f0fffa,#f6fafffa);box-shadow:inset 0 0 0 1px #3a5d931f}.practice-view__routine-modal-sequence{width:24px;height:24px;border-radius:999px;border:1px solid rgba(10,33,59,.2);display:inline-flex;align-items:center;justify-content:center;font-size:.67rem;font-weight:700;color:#3f648d;background:#ffffffe6}.practice-view__routine-modal-copy{min-width:0;display:grid;gap:4px}.practice-view__routine-modal-step-jump{border:0;padding:0;margin:0;background:transparent;display:grid;justify-items:start;gap:2px;min-width:0;text-align:left;cursor:pointer}.practice-view__routine-modal-step{font-size:.62rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#5d789b}.practice-view__routine-modal-recipe{font-size:.78rem;line-height:1.24;color:#274b73;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.practice-view__routine-modal-context{font-size:.67rem;color:#456152;line-height:1.2}.practice-view__routine-modal-keys{display:flex;flex-wrap:wrap;gap:6px}.practice-view__routine-modal-key{border:1px solid rgba(10,33,59,.24);border-radius:999px;background:#fffffff0;color:#294c74;padding:3px 9px;min-height:24px;font-size:.66rem;font-weight:700;letter-spacing:.03em;cursor:pointer;transition:transform .14s ease,border-color .14s ease,background-color .14s ease}.practice-view__routine-modal-key:hover,.practice-view__routine-modal-step-jump:hover .practice-view__routine-modal-recipe{transform:translateY(-1px)}.practice-view__routine-modal-key:hover{border-color:#0a213b66;background:#f6fafffa}.practice-view__routine-modal-step-jump:hover .practice-view__routine-modal-recipe{color:#1f5fc6}.practice-view__routine-modal-step-jump:focus-visible,.practice-view__routine-modal-key:focus-visible{outline:none;box-shadow:0 0 0 3px var(--accent-ring);border-radius:10px}.app-resume-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:52;display:flex;align-items:center;justify-content:center;padding:20px;background:#05101e70;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.app-resume-modal__card{width:min(420px,100%);border:1px solid rgba(10,33,59,.22);border-radius:16px;background:linear-gradient(160deg,#fffffffa,#f2f7fff7);box-shadow:0 20px 36px #0a213b3d;padding:14px;display:grid;gap:10px}.app-resume-modal__card h3{margin:0;font-size:1rem;color:#17345c}.app-resume-modal__card p{margin:0;color:#516d8f;font-size:.8rem;line-height:1.42}.app-resume-modal__card--warning{border-color:#a05f0e61;background:linear-gradient(160deg,#fff7eafa,#fffcf5f7)}.app-resume-modal__actions{display:flex;justify-content:flex-end;gap:8px}.app-resume-modal__actions button{min-height:34px;padding:0 12px;border-radius:10px;border:1px solid rgba(10,33,59,.22);background:#ffffffeb;color:#17345c;font-size:.74rem;font-weight:700;letter-spacing:.02em;cursor:pointer;transition:transform .14s ease,border-color .14s ease}.app-resume-modal__actions button:hover{transform:translateY(-1px);border-color:#0a213b57}.practice-view__log-tray{position:absolute;top:18px;right:18px;max-width:min(44vw,300px);display:flex;flex-direction:column;gap:6px;pointer-events:none}.practice-view__log-chip{display:grid;grid-template-columns:auto auto auto 1fr;gap:8px;align-items:center;padding:7px 10px;border:1px solid rgba(10,33,59,.18);border-radius:10px;background:#ffffffa8;color:#3a587b;font-size:.68rem;font-weight:600;letter-spacing:.02em;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.practice-view__feedback{position:absolute;left:50%;top:22px;transform:translate(-50%);padding:8px 13px;border-radius:999px;font-size:.76rem;font-weight:670;letter-spacing:.03em;background:#ffffffe0;border:1px solid rgba(10,33,59,.2);box-shadow:0 10px 16px #0a213b1f;pointer-events:none;animation:practice-feedback-enter .16s ease-out both}.practice-view__feedback--success{color:#3a5d93}.practice-view__feedback--warning{color:#8a4b24}.practice-view__feedback--neutral{color:#3c5a7e}.quiz-view{gap:18px}.quiz-view__header-actions{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.quiz-view__badge{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:0 12px;border-radius:999px;border:1px solid transparent;font-size:.66rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.quiz-view__badge--active{color:#3a5d93;border-color:#1c6cdf40;background:#d8e9ffd1}.quiz-view__badge--complete{color:#a05f0e;border-color:#a05f0e47;background:#ffecd0e6}.quiz-view__header-button{min-height:30px;padding:0 11px;border-radius:999px;border:1px solid rgba(10,33,59,.24);background:#ffffffe6;color:#365476;font-size:.64rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;cursor:pointer;transition:transform .14s ease,border-color .14s ease}.quiz-view__header-button:hover{transform:translateY(-1px);border-color:#0a213b61}.quiz-view__setup-section,.quiz-view__challenge-section,.quiz-view__results-section{border-color:#0a213b24;background:linear-gradient(155deg,#fffffffa,#f5f9fff2)}.quiz-view__setup-grid{display:grid;grid-template-columns:1.2fr 1.4fr 1fr;gap:12px}.quiz-view__control-card{border:1px solid rgba(12,42,82,.12);border-radius:14px;padding:12px;background:linear-gradient(160deg,#fffffffa,#f1f6ffeb)}.quiz-view__control-card--compact{display:flex;flex-direction:column;justify-content:space-between;gap:12px}.quiz-view__control-headline{margin:0;font-size:.74rem;font-weight:740;letter-spacing:.1em;text-transform:uppercase;color:#486487}.quiz-view__stepper{margin-top:10px;display:grid;grid-template-columns:34px 1fr 34px;align-items:center;gap:8px}.quiz-view__stepper-button{width:34px;height:34px;border:1px solid rgba(10,33,59,.2);border-radius:10px;background:#fffffff2;color:#17345c;font-size:1rem;font-weight:680;line-height:1;cursor:pointer;transition:transform .14s ease,border-color .14s ease}.quiz-view__stepper-button:hover{transform:translateY(-1px);border-color:#0a213b52}.quiz-view__stepper-button:disabled{opacity:.32;cursor:default;transform:none}.quiz-view__number-input{width:100%;min-height:36px;border:1px solid rgba(10,33,59,.2);border-radius:10px;background:#fffffff5;color:#17345c;text-align:center;font-size:.98rem;font-weight:690}.quiz-view__range{width:100%;margin-top:12px;accent-color:#1b82ff}.quiz-view__chip-grid{margin-top:10px;display:grid;grid-template-columns:1fr;gap:7px}.quiz-view__chip{border:1px solid rgba(10,33,59,.16);border-radius:12px;padding:8px 9px;display:grid;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:8px;background:#ffffffe0;color:#17345c;text-align:left;cursor:pointer;transition:transform .14s ease,border-color .14s ease,background-color .14s ease}.quiz-view__chip:hover{transform:translateY(-1px);border-color:#0a213b47}.quiz-view__chip--active{border-color:#1865d261;background:linear-gradient(160deg,#e6f2fff5,#f1f8fff2);box-shadow:0 10px 18px #1b82ff1f}.quiz-view__chip-marker{width:40px;height:28px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(10,33,59,.18);background:#fffffff2;color:#385b48;font-size:.59rem;font-weight:760;letter-spacing:.08em}.quiz-view__chip-copy{display:flex;flex-direction:column;gap:2px;min-width:0}.quiz-view__chip-label{font-size:.82rem;font-weight:680;line-height:1.15}.quiz-view__chip-description{font-size:.68rem;color:#5c7466;line-height:1.26}.quiz-view__format-row{margin-top:10px;display:grid;grid-template-columns:1fr 1fr;gap:6px}.quiz-view__format-button{min-height:34px;border:1px solid rgba(10,33,59,.18);border-radius:10px;background:#fffffff0;color:#335072;font-size:.72rem;font-weight:660;cursor:pointer;transition:transform .14s ease,border-color .14s ease}.quiz-view__format-button:hover{transform:translateY(-1px)}.quiz-view__format-button--active{border-color:#1b82ff70;color:#0f5dba;background:#eaf6fff2}.quiz-view__launch-button{width:100%;min-height:40px;border:1px solid rgba(23,109,216,.46);border-radius:11px;background:linear-gradient(145deg,#1b82ff,#0b66d9);color:#f5faff;font-size:.79rem;font-weight:720;letter-spacing:.03em;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease;box-shadow:0 12px 20px #1b82ff40}.quiz-view__launch-button:hover{transform:translateY(-1px);box-shadow:0 14px 24px #1b82ff4d}.quiz-view__error{margin-top:10px;border:1px solid rgba(147,52,34,.25);border-radius:10px;padding:8px 10px;background:#fff0eee6;color:#7a3728;font-size:.76rem}.quiz-view__empty-state{border:1px dashed rgba(10,33,59,.2);border-radius:14px;padding:16px;background:#f8fcf6e0}.quiz-view__empty-title{font-size:.94rem;font-weight:720;color:#3b5a7d}.quiz-view__empty-copy{margin:8px 0 0;font-size:.78rem;line-height:1.42;color:#567063}.quiz-view__question-card{border:1px solid rgba(14,44,72,.16);border-radius:18px;padding:14px;background:radial-gradient(circle at 88% -20%,rgba(91,180,255,.18),transparent 32%),linear-gradient(165deg,#fffffffc,#f5fafff2);box-shadow:0 18px 30px #0a213b14}.quiz-view__question-meta{display:flex;flex-direction:column;gap:8px}.quiz-view__question-meta-top{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.quiz-view__question-pill{display:inline-flex;align-items:center;gap:6px;min-height:26px;padding:0 9px;border-radius:999px;border:1px solid rgba(27,130,255,.24);background:#e8f4ffd6;color:#0e5aaf;font-size:.65rem;font-weight:710;letter-spacing:.05em;text-transform:uppercase}.quiz-view__question-count{font-size:.69rem;font-weight:650;color:#4d6574;letter-spacing:.04em;text-transform:uppercase}.quiz-view__progress-track{width:100%;height:8px;border-radius:999px;overflow:hidden;background:#0a213b17}.quiz-view__progress-bar{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#1b82ff,#4eb2ff);transition:width .22s ease}.quiz-view__prompt{margin:13px 0 0;font-size:clamp(1.06rem,2.2vw,1.36rem);line-height:1.3;letter-spacing:-.01em;color:#1f3448}.quiz-view__capability-row{margin-top:10px;display:flex;flex-wrap:wrap;gap:6px}.quiz-view__capability-badge{display:inline-flex;align-items:center;border:1px solid rgba(27,130,255,.3);border-radius:999px;padding:3px 10px;font-size:.72rem;font-weight:650;letter-spacing:.02em;color:#1f5a8d;background:#e4f2ffd9}.quiz-view__option-grid{margin-top:14px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.quiz-view__option{min-height:46px;border:1px solid rgba(14,44,72,.2);border-radius:12px;padding:8px 10px;background:#fffffff5;color:#20405a;text-align:left;cursor:pointer;transition:transform .14s ease,border-color .14s ease,background-color .14s ease}.quiz-view__option:hover{transform:translateY(-1px);border-color:#0e2c4857}.quiz-view__option:disabled{cursor:default}.quiz-view__option--selected{border-color:#1b82ff7a;background:#e7f4fff2}.quiz-view__option-label{font-size:.84rem;font-weight:650;line-height:1.26}.quiz-view__free-text-wrap{margin-top:14px}.quiz-view__free-text-input{width:100%;min-height:46px;border:1px solid rgba(14,44,72,.2);border-radius:12px;padding:10px 12px;background:#fffffff5;color:#1f3448;font-size:.86rem}.quiz-view__question-actions{margin-top:14px;display:flex;gap:8px;flex-wrap:wrap}.quiz-view__action-button{min-height:38px;padding:0 14px;border-radius:10px;border:1px solid transparent;font-size:.73rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:transform .14s ease,opacity .14s ease,box-shadow .14s ease}.quiz-view__action-button:disabled{opacity:.4;cursor:default;transform:none;box-shadow:none}.quiz-view__action-button--check{border-color:#1b82ff61;color:#f4f9ff;background:linear-gradient(145deg,#1b82ff,#0c67d9);box-shadow:0 10px 18px #1b82ff3d}.quiz-view__action-button--next{border-color:#0a213b33;color:#395779;background:#ffffffed}.quiz-view__feedback{margin-top:12px;border-radius:12px;padding:10px 11px;border:1px solid transparent;background:#ffffffdb}.quiz-view__feedback--correct{border-color:#1c6cdf3d;background:#e1f8ead6}.quiz-view__feedback--incorrect{border-color:#9a581047;background:#ffeed8db}.quiz-view__feedback-title{font-size:.79rem;font-weight:740;letter-spacing:.04em;text-transform:uppercase}.quiz-view__feedback-copy{margin-top:4px;display:flex;flex-direction:column;gap:2px;font-size:.75rem;line-height:1.35}.quiz-view__pending-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.quiz-view__pending-stat{border:1px solid rgba(10,33,59,.13);border-radius:12px;padding:11px;background:#ffffffed}.quiz-view__pending-label{display:block;font-size:.68rem;font-weight:660;letter-spacing:.08em;text-transform:uppercase;color:#546d5f}.quiz-view__pending-value{display:block;margin-top:6px;font-size:1.24rem;line-height:1;color:#203f2d}.quiz-view__result-summary{display:flex;align-items:center;gap:12px}.quiz-view__score-shell{width:88px;height:88px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;border:2px solid rgba(27,130,255,.24);background:radial-gradient(circle at 50% 35%,#fffffff0,#ecf7ffeb);box-shadow:inset 0 0 0 8px #1b82ff14}.quiz-view__score-value{font-size:1.4rem;font-weight:760;color:#0f5db8;letter-spacing:-.02em}.statistics-view__summary-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.statistics-view__summary-card{border:1px solid var(--line-soft);border-radius:var(--radius-md);background:var(--surface-base);box-shadow:var(--shadow-card);padding:14px}.statistics-view__table{width:100%;border-collapse:collapse;font-size:.92rem}.statistics-view__table th,.statistics-view__table td{border-bottom:1px solid var(--line-soft);text-align:left;padding:8px 6px}.statistics-view__trend-list{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-direction:column;gap:6px}.statistics-view__trend-list li{border:1px solid var(--line-soft);border-radius:10px;background:var(--surface-base);padding:8px 10px;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}.statistics-view__empty-state{color:var(--text-secondary)}.quiz-view__summary-copy{min-width:0}.quiz-view__summary-headline{font-size:1rem;font-weight:730;color:#26496f}.quiz-view__summary-subline{margin-top:4px;font-size:.75rem;line-height:1.32;color:#556f61}.quiz-view__review-list{margin-top:12px;display:flex;flex-direction:column;gap:6px}.quiz-view__review-row{border:1px solid rgba(10,33,59,.14);border-radius:10px;padding:8px 10px;display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,1fr);gap:8px;align-items:center;font-size:.74rem;background:#ffffffeb}.quiz-view__review-row--correct{border-color:#1c6cdf3d}.quiz-view__review-row--incorrect{border-color:#9a581047}.quiz-view__review-type{min-width:42px;height:22px;padding:0 6px;border-radius:8px;border:1px solid rgba(10,33,59,.2);display:inline-flex;align-items:center;justify-content:center;font-size:.58rem;font-weight:740;letter-spacing:.07em;color:#395a47;background:#ffffffe6}.quiz-view__review-value{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:620;color:#355275}.quiz-view__result-actions{margin-top:12px;display:flex;gap:8px;flex-wrap:wrap}.quiz-view__result-button{min-height:37px;padding:0 12px;border-radius:10px;border:1px solid transparent;cursor:pointer;font-size:.73rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.quiz-view__result-button--primary{border-color:#1b82ff66;color:#f5faff;background:linear-gradient(145deg,#1b82ff,#0c67d9)}.quiz-view__result-button--secondary{border-color:#0a213b36;color:#334f73;background:#ffffffeb}.library-view{gap:18px}.library-view__header-actions{display:inline-flex;align-items:center;gap:7px;flex-wrap:wrap}.library-view__tabs{position:sticky;top:0;z-index:1;padding:2px;border-radius:11px;background:#ffffffd1;border:1px solid rgba(10,33,59,.12);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.library-view__badge{min-height:30px;padding:0 11px;border-radius:999px;border:1px solid rgba(10,33,59,.18);display:inline-flex;align-items:center;justify-content:center;font-size:.64rem;font-weight:720;letter-spacing:.08em;text-transform:uppercase;color:#3c5a7e;background:#ffffffe0}.builder-mode-badge{min-height:30px;padding:0 12px;border-radius:999px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;font-size:.66rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.builder-mode-badge--create{color:#0f6a92;border-color:#0f6a9247;background:#cbecfbd6}.builder-mode-badge--edit{color:#3a5d93;border-color:#1c6cdf40;background:#d8e9ffd1}.library-view__header-create-button{min-height:32px;padding:0 12px;border-radius:999px;border:1px solid rgba(15,120,66,.38);background:linear-gradient(145deg,#cff6dff5,#e8f5fff5);color:#1e64ce;font-size:.65rem;font-weight:730;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:transform .14s ease,border-color .14s ease}.library-view__header-create-button:hover:not(:disabled){transform:translateY(-1px);border-color:#0f78428a}.library-view__header-create-button:disabled{opacity:.48;cursor:default}.library-view__overview-section,.library-view__filters-section,.library-view__items-section{border-color:#0a213b24;background:linear-gradient(155deg,#fffffffa,#f5f9fff2)}.library-view__overview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.library-view__overview-card{border:1px solid rgba(10,33,59,.14);border-radius:13px;padding:11px;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:10px;align-items:center;background:#ffffffdb}.library-view__overview-marker{grid-row:1 / span 2;width:42px;height:32px;border-radius:10px;border:1px solid rgba(10,33,59,.2);display:inline-flex;align-items:center;justify-content:center;font-size:.6rem;font-weight:760;letter-spacing:.08em;color:#3b5a48;background:#fffffff0}.library-view__overview-count{font-size:1.16rem;letter-spacing:-.02em;color:#21456b}.library-view__overview-label{margin-top:2px;font-size:.72rem;color:#5a7364}.library-view__filters-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:9px}.library-view__field{display:grid;gap:6px}.library-view__field-label{font-size:.66rem;font-weight:720;letter-spacing:.08em;text-transform:uppercase;color:#3d5c49}.library-view__field-input,.library-view__field-select{width:100%;min-height:37px;border:1px solid rgba(10,33,59,.2);border-radius:11px;padding:0 11px;background:#fffffff5;color:#17345c;font-size:.82rem}.library-view__field-input:focus-visible,.library-view__field-select:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.library-view__category-row{margin-top:10px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.library-view__category-button{min-height:40px;border:1px solid rgba(10,33,59,.17);border-radius:11px;padding:0 8px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:7px;background:#ffffffe6;color:#17345c;cursor:pointer;transition:transform .14s ease,border-color .14s ease}.library-view__category-button:hover{transform:translateY(-1px);border-color:#0a213b47}.library-view__category-button--active{border-color:#15713b5c;background:linear-gradient(145deg,#dbf8e6fa,#eaf6fff5)}.library-view__category-marker{width:32px;height:24px;border-radius:8px;border:1px solid rgba(10,33,59,.2);display:inline-flex;align-items:center;justify-content:center;font-size:.56rem;font-weight:760;letter-spacing:.07em;color:#3c5f4b;background:#fffffff2}.library-view__category-label{font-size:.74rem;font-weight:650;text-align:left}.library-view__category-count{min-width:22px;padding:0 6px;min-height:22px;border-radius:999px;border:1px solid rgba(10,33,59,.17);display:inline-flex;align-items:center;justify-content:center;font-size:.63rem;font-weight:710;color:#335342;background:#ffffffeb}.library-view__reset-button{margin-top:11px;min-height:33px;padding:0 11px;border-radius:9px;border:1px solid rgba(10,33,59,.22);background:#ffffffe6;color:#23466e;font-size:.67rem;font-weight:720;letter-spacing:.07em;text-transform:uppercase;cursor:pointer}.library-view__item-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.library-view__item-card{border:1px solid rgba(10,33,59,.14);border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:9px;background:linear-gradient(160deg,#fffffffa,#f6fbf1ed);cursor:pointer;transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease}.library-view__item-card:hover{transform:translateY(-1px);box-shadow:0 12px 20px #0a213b1f}.library-view__item-card:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.library-view__item-card--voicing-family{border-color:#06708a42;background:linear-gradient(160deg,#eef6fffa,#e7f9fced)}.library-view__item-card--lick{border-color:#1e70d947;background:linear-gradient(160deg,#f6fafffa,#ecf6ffed)}.library-view__item-card--progression{border-color:#ab6d1047;background:linear-gradient(160deg,#fffcf4fa,#fdf5e4ed)}.library-view__item-card--comping-pattern{border-color:#724aaa47;background:linear-gradient(160deg,#fbf7fffa,#f3ecfced)}.library-view__item-headline{display:grid;grid-template-columns:auto 1fr;gap:9px;align-items:center}.library-view__item-marker{width:42px;height:30px;border-radius:10px;border:1px solid rgba(10,33,59,.2);display:inline-flex;align-items:center;justify-content:center;font-size:.58rem;font-weight:760;letter-spacing:.08em;color:#3b5a47;background:#fffffff2}.library-view__item-marker--voicing-family{border-color:#06708a57;color:#0f6578;background:#edfafff0}.library-view__item-marker--lick{border-color:#1e70d957;color:#2b6fd8;background:#eef7fff0}.library-view__item-marker--progression{border-color:#ab6d1057;color:#9b6518;background:#fffaeff0}.library-view__item-marker--comping-pattern{border-color:#724aaa57;color:#724bb0;background:#f8f2fff0}.library-view__item-heading-copy{min-width:0}.library-view__item-name{margin:0;font-size:.92rem;line-height:1.2}.library-view__item-category{margin:3px 0 0;font-size:.68rem;color:#5a7263}.library-view__item-detail{margin:0;font-size:.73rem;font-weight:620;color:#3b597c}.library-view__item-description{margin:0;min-height:2.5em;font-size:.74rem;line-height:1.34;color:#587161}.library-view__item-tags{display:flex;flex-wrap:wrap;gap:5px}.library-view__item-tag{min-height:24px;padding:0 9px;border-radius:999px;border:1px solid rgba(10,33,59,.18);display:inline-flex;align-items:center;justify-content:center;font-size:.62rem;font-weight:670;color:#3f648d;background:#ffffffe6}.library-view__item-tag--empty{color:#5d7366;border-style:dashed}.library-view__item-footer{margin-top:auto;padding-top:8px;border-top:1px solid rgba(10,33,59,.1);display:grid;gap:8px;font-size:.62rem;color:#60796a}.library-view__item-footer-meta{display:flex;justify-content:space-between;gap:8px}.library-view__item-id{font-family:Menlo,Consolas,monospace;color:#4d6859}.library-view__item-updated{white-space:nowrap}.library-view__item-actions{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.library-view__item-action{min-height:30px;padding:0 9px;border:1px solid rgba(10,33,59,.2);border-radius:9px;background:#ffffffeb;color:#23466e;font-size:.62rem;font-weight:710;letter-spacing:.07em;text-transform:uppercase;cursor:pointer;transition:transform .14s ease,border-color .14s ease}.library-view__item-action:hover:not(:disabled){transform:translateY(-1px);border-color:#0a213b57}.library-view__item-action:disabled{opacity:.45;cursor:default}.library-view__item-action--primary{border-color:#2273e99e;background:linear-gradient(155deg,#4f79b7e6,#1d67dde6);color:#f3fff7}.library-view__item-action--secondary{border-color:#1266aa66;background:linear-gradient(155deg,#e8f5fffa,#ddeefcfa);color:#12508e}.library-view__item-action--danger{border-color:#9236366b;background:linear-gradient(155deg,#fff0f0fa,#fbe2e2fa);color:#7f2f2f}.library-view__empty-state{border:1px dashed rgba(10,33,59,.24);border-radius:12px;padding:14px;background:#ffffffd1}.library-view__empty-title{display:block;font-size:.86rem;color:#365476}.library-view__empty-copy{margin:6px 0 0;font-size:.74rem;color:#60786a;line-height:1.4}.library-view__modal,.library-item-view__modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:35;display:flex;align-items:center;justify-content:center;padding:16px;background:#06122257;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.library-view__modal-card,.library-item-view__modal-card{width:min(480px,100%);border-radius:14px;border:1px solid rgba(10,33,59,.16);background:#fffffffa;box-shadow:0 20px 38px #0c1b1342;padding:14px;display:grid;gap:10px}.library-view__modal-title,.library-item-view__modal-title{margin:0;font-size:1rem;color:#17345c}.library-view__modal-copy,.library-item-view__modal-copy{margin:0;font-size:.8rem;line-height:1.4;color:#476052}.library-view__modal-field,.library-item-view__modal-field{display:grid;gap:6px;font-size:.68rem;font-weight:690;color:#476285}.library-view__modal-field select,.library-item-view__modal-field select{min-height:36px;border-radius:10px;border:1px solid rgba(10,33,59,.2);background:#fffffff7;color:#2a4d76;font-size:.77rem;padding:0 10px}.library-view__modal-actions,.library-item-view__modal-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}.edit-view{gap:18px}.edit-view__header-button{min-height:32px;padding:0 12px;border-radius:999px;border:1px solid rgba(10,33,59,.24);background:#ffffffe6;color:#224268;font-size:.65rem;font-weight:710;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:transform .14s ease,border-color .14s ease}.edit-view__header-button:hover{transform:translateY(-1px);border-color:#0a213b5c}.edit-view__workflow-section,.edit-view__editor-section,.edit-view__preview-section,.edit-view__metadata-section{border-color:#0a213b24;background:linear-gradient(155deg,#fffffffa,#f5f9fff2)}.edit-view__workflow-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.edit-view__workflow-card{border:1px solid rgba(10,33,59,.14);border-radius:12px;padding:11px;display:grid;gap:4px;background:#ffffffe0}.edit-view__workflow-label{font-size:.64rem;font-weight:710;letter-spacing:.08em;text-transform:uppercase;color:#486353}.edit-view__workflow-value{font-size:.88rem;color:#17345c}.edit-view__workflow-empty{border:1px dashed rgba(10,33,59,.22);border-radius:12px;padding:12px;font-size:.76rem;color:#5d7566;background:#ffffffd6}.edit-view__placeholder{border:1px solid rgba(10,33,59,.13);border-radius:12px;padding:12px;font-size:.74rem;line-height:1.4;color:#557062;background:#ffffffdb}.library-item-view{gap:18px}.library-item-view__header-actions{display:inline-flex;flex-wrap:wrap;gap:8px}.library-item-view__header-button{min-height:32px;padding:0 12px;border-radius:999px;border:1px solid rgba(10,33,59,.24);background:#ffffffe6;color:#224268;font-size:.65rem;font-weight:710;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}.library-item-view__header-button--edit{border-color:#0f78426b;color:#1e64ce}.library-item-view__header-button--primary{border-color:#2273e99e;background:linear-gradient(155deg,#4f79b7e6,#1d67dde6);color:#f3fff7}.library-item-view__header-button--secondary{border-color:#1266aa66;background:linear-gradient(155deg,#e8f5fffa,#ddeefcfa);color:#12508e}.library-item-view__header-button--danger{border-color:#9236366b;background:linear-gradient(155deg,#fff0f0fa,#fbe2e2fa);color:#7f2f2f}.library-item-view__overview-section,.library-item-view__structure-section,.library-item-view__steps-section{border-color:#0a213b24;background:linear-gradient(155deg,#fffffffa,#f5f9fff2)}.library-item-view__overview{display:grid;gap:10px}.library-item-view__description{margin:0;font-size:.82rem;line-height:1.45;color:#23466e}.library-item-view__tags{display:flex;flex-wrap:wrap;gap:6px}.library-item-view__tag{min-height:24px;padding:0 9px;border-radius:999px;border:1px solid rgba(10,33,59,.2);display:inline-flex;align-items:center;justify-content:center;font-size:.62rem;font-weight:670;color:#3f648d;background:#ffffffe6}.library-item-view__tag--empty{border-style:dashed;color:#5d7567}.library-item-view__meta-line{display:flex;justify-content:space-between;gap:8px;font-size:.68rem;color:#617b6b}.library-item-view__meta-id{font-family:Menlo,Consolas,monospace}.library-item-view__metadata-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.library-item-view__metadata-card{border:1px solid rgba(10,33,59,.14);border-radius:12px;padding:11px;display:grid;gap:5px;background:#ffffffe6}.library-item-view__metadata-label{font-size:.64rem;font-weight:710;letter-spacing:.08em;text-transform:uppercase;color:#476152}.library-item-view__metadata-value{font-size:.84rem;color:#17345c}.library-item-view__steps-list{display:grid;gap:8px}.library-item-view__step-link{min-height:36px;padding:0 12px;border-radius:10px;border:1px solid rgba(10,33,59,.2);background:#ffffffe6;color:#23466e;font-size:.72rem;font-weight:650;text-align:left;cursor:pointer}.library-item-view__step-link:hover:not(:disabled){border-color:#0a213b5c}.library-item-view__empty{border:1px dashed rgba(10,33,59,.22);border-radius:12px;padding:12px;font-size:.76rem;color:#597364;background:#ffffffdb}.library-item-view__preview-section{border-color:#0a213b24;background:linear-gradient(160deg,#fffffffa,#f3f8fff2)}.library-item-view__preview-controls{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:10px}.library-item-view__preview-controls label{display:grid;gap:5px;font-size:.68rem;font-weight:680;color:#476285}.library-item-view__preview-controls select{min-height:34px;min-width:170px;border-radius:10px;border:1px solid rgba(10,33,59,.18);background:#ffffffeb;color:#2a4d76;font-size:.74rem;padding:0 10px}.library-item-view__preview-warnings{margin:0 0 10px;padding-left:18px;display:grid;gap:4px;color:#7a4d1b;font-size:.72rem}@keyframes view-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes section-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes practice-feedback-enter{0%{opacity:0;transform:translate(-50%,-5px)}to{opacity:1;transform:translate(-50%)}}@keyframes pwa-update-toast-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 1039px){.app-shell{display:block}.app-shell__mobile-toggle{display:inline-flex}.app-shell--menu-open .app-shell__mobile-toggle{opacity:0;transform:translateY(-5px);pointer-events:none}.app-shell--menu-open .app-shell__mobile-overlay,.app-shell--dragging .app-shell__mobile-overlay{opacity:1;pointer-events:auto}.app-shell__menu-pane{position:fixed;inset:0 auto 0 0;width:min(86vw,304px);flex-basis:auto;z-index:28;pointer-events:none}.app-shell__menu-panel{height:calc(100vh - 20px);height:calc(100dvh - 20px);margin:10px 0 10px 10px;border-radius:24px}.app-shell--menu-open .app-shell__menu-pane,.app-shell--dragging .app-shell__menu-pane{pointer-events:auto}.app-shell__menu-controls{justify-content:flex-start}.app-shell__content{padding:12px}.app-shell__content-scroll{height:calc(100vh - 24px);height:calc(100dvh - 24px);border-radius:22px}.view-container{padding:76px 16px 18px;gap:14px}.view-header{flex-direction:column;gap:10px}.practice-view__notation-scroll{padding:58px 12px 210px;padding-bottom:calc(220px + env(safe-area-inset-bottom))}.practice-view__notation-display{border-radius:19px}.practice-view__notation-title{margin:0 auto 8px;padding:0;grid-template-columns:minmax(0,1fr);gap:6px}.practice-view__notation-exercise-title{font-size:.95rem}.practice-view__notation-subtitle{font-size:.66rem}.practice-view__notation-title-meta{justify-content:flex-start;flex-wrap:wrap}.practice-view__notation-progress-chip{font-size:.56rem}.practice-view__context-trigger{min-height:32px;padding:5px 8px}.practice-view__context-trigger-value{max-width:120px}.practice-view__context-menu{left:0;right:auto;min-width:210px;max-width:min(90vw,300px)}.practice-view__notation-key-badge{min-width:44px;height:30px;padding:0 9px;border-radius:10px;font-size:.86rem;justify-self:start}.practice-view__key-navigator{justify-self:start}.practice-view__key-menu{left:0;right:auto}.practice-view__metronome-strip{left:10px;right:10px;bottom:10px;bottom:calc(10px + env(safe-area-inset-bottom));grid-template-columns:1fr;justify-items:stretch;gap:8px;padding:10px}.practice-view__metronome-strip-center{justify-items:start;gap:6px}.practice-view__metronome-main{gap:7px}.practice-view__metronome-play{width:auto;min-width:70px;height:36px;padding:0 9px}.practice-view__metronome-tempo{font-size:1rem}.practice-view__metronome-strip-actions{width:100%;justify-content:space-between}.practice-view__done-button{min-width:112px;min-height:36px;padding:0 14px;font-size:.72rem}.practice-view__options-cluster{gap:6px;align-items:flex-start}.practice-view__options-menu{left:0;right:auto;bottom:calc(100% + 6px);width:min(320px,calc(100vw - 32px));min-width:min(320px,calc(100vw - 32px));max-width:min(320px,calc(100vw - 32px));max-height:min(460px,calc(100vh - 170px));max-height:min(460px,calc(100dvh - 170px))}.practice-view__feedback{top:14px;font-size:.72rem}.practice-view__log-tray{right:10px;top:10px;max-width:min(66vw,260px)}.quiz-view__setup-grid{grid-template-columns:1fr}.quiz-view__chip{grid-template-columns:34px minmax(0,1fr)}.quiz-view__chip-marker{width:34px}.quiz-view__option-grid{grid-template-columns:1fr}.quiz-view__result-summary{align-items:flex-start}.quiz-view__score-shell{width:74px;height:74px}.quiz-view__review-row{grid-template-columns:auto 1fr}.quiz-view__review-value:last-child{grid-column:1 / -1;margin-top:-2px}.library-view__overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.library-view__filters-grid{grid-template-columns:1fr}.library-view__category-row{grid-template-columns:repeat(2,minmax(0,1fr))}.library-view__item-grid{grid-template-columns:1fr}.library-view__item-footer-meta{flex-direction:column;gap:4px}.edit-view__workflow-grid,.library-item-view__metadata-grid{grid-template-columns:1fr}.library-item-view__meta-line{flex-direction:column;gap:4px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.exercises-view__recipes-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.exercises-view__recipes-list{display:grid;gap:.5rem}.exercises-view__recipe-row{display:flex;justify-content:space-between;align-items:center;width:100%;border:1px solid rgba(0,0,0,.12);border-radius:10px;padding:.6rem .8rem;background:#fff}.exercises-view__recipe-row--active{border-color:#1b6feea6;box-shadow:0 0 0 2px #1b6fee24}.exercises-view__builder-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem;margin-bottom:.85rem}.exercises-view__builder-grid label,.exercises-view__role-grid label{display:grid;gap:.3rem;font-size:.88rem}.exercises-view__builder-grid input,.exercises-view__builder-grid textarea,.exercises-view__builder-grid select,.exercises-view__role-grid select{border:1px solid rgba(0,0,0,.18);border-radius:8px;padding:.45rem .5rem;font:inherit;background:#fff}.exercises-view__roles-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.6rem}.exercises-view__roles-list{display:grid;gap:.7rem}.exercises-view__role-card{border:1px solid rgba(0,0,0,.12);border-radius:10px;padding:.65rem;background:#fff}.exercises-view__role-card header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.55rem}.exercises-view__role-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.6rem}.exercises-view__grouping-toggle-field{display:flex!important;align-items:center;justify-content:space-between}.exercises-view__grouping-toggle-field .ui-checkbox{width:18px;height:18px}.exercises-view__cycle-groups{grid-column:1 / -1;display:grid;gap:.55rem;padding:.65rem;border:1px solid rgba(0,0,0,.12);border-radius:10px;background:#f7fafde6}.exercises-view__cycle-groups-header{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.exercises-view__cycle-group-row{display:grid;gap:.45rem;padding:.55rem;border:1px solid rgba(0,0,0,.1);border-radius:8px;background:#ffffffeb}.exercises-view__cycle-group-chips{display:flex;flex-wrap:wrap;gap:.4rem}.exercises-view__cycle-chip{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .35rem;border:1px solid rgba(0,0,0,.18);border-radius:999px;background:#fff}.exercises-view__builder-actions{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-top:.8rem}.exercises-view__feedback{margin:.65rem 0 0;color:#0a5cc6;font-weight:600}.exercises-view__validation-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.85rem}.ui-button{min-height:40px;padding:0 14px;border-radius:11px;border:1px solid rgba(10,33,59,.2);display:inline-flex;align-items:center;justify-content:center;gap:6px;background:#fffffff0;color:#2a4b72;font-size:.78rem;font-weight:700;letter-spacing:.03em;cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background-color .16s ease}.ui-button:hover:not(:disabled){transform:translateY(-1px);border-color:#0a213b47;box-shadow:0 8px 14px #0a213b1f}.ui-button:focus-visible,.mobile-panel-tabs__button:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.ui-button:disabled{opacity:.45;cursor:default;transform:none;box-shadow:none}.ui-button--primary{border-color:#2273e9b3;background:linear-gradient(155deg,#4f79b7f0,#1d67ddf0);color:#f3fff7}.ui-button--secondary{border-color:#1266aa70;background:linear-gradient(155deg,#e8f5fffa,#ddeefcfa);color:#12508e}.ui-button--danger{border-color:#92363673;background:linear-gradient(155deg,#fff0f0fa,#fbe2e2fa);color:#7f2f2f}.ui-button--ghost{background:#fffc;color:#395678}.ui-control-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.ui-control-row--scroll{flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;padding-bottom:2px}.ui-control-row--scroll>*{flex-shrink:0}.ui-field{display:grid;gap:6px;font-size:.72rem;font-weight:670;color:#486487}.ui-field--checkbox{display:flex;align-items:center;gap:8px}.ui-input,.ui-select{min-height:40px;border-radius:11px;border:1px solid rgba(10,33,59,.2);background:#fffffff5;color:#17345c;font:inherit;padding:0 11px}textarea.ui-input{min-height:92px;resize:vertical;padding:9px 11px}.ui-input:focus-visible,.ui-select:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.ui-card{border:1px solid rgba(10,33,59,.14);border-radius:12px;background:#ffffffe6}.mobile-panel-tabs{position:sticky;top:0;z-index:5;margin-top:-3px;padding:6px;border:1px solid rgba(10,33,59,.13);border-radius:12px;background:#f4f9ffeb;display:flex;gap:6px;overflow-x:auto;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.mobile-panel-tabs__button{min-height:34px;padding:0 12px;border-radius:9px;border:1px solid transparent;background:transparent;color:#587395;font:inherit;font-size:.72rem;font-weight:700;cursor:pointer}.mobile-panel-tabs__button--active{border-color:#0a213b33;background:#ffffffeb;color:#284c74}.practice-view--selector{overflow:auto;padding:26px}.practice-view__selector-scroll{width:min(980px,100%);margin:0 auto;display:grid;gap:14px}.practice-view__selector-header{display:grid;gap:6px}.practice-view__selector-title{margin:0;font-size:clamp(1.5rem,2.4vw,1.95rem);line-height:1.08;color:#204368}.practice-view__selector-subtitle{margin:0;color:#3f5d4d;font-size:.9rem;line-height:1.45}.practice-view__selector-list{display:grid;gap:12px}.practice-view__selector-empty,.practice-view__selector-card{border:1px solid var(--line-soft);border-radius:var(--radius-md);background:var(--surface-base);box-shadow:var(--shadow-card);padding:14px}.practice-view__selector-empty{display:grid;gap:10px}.practice-view__selector-empty h3{margin:0;font-size:1rem;color:#264a71}.practice-view__selector-empty p{margin:0;color:#587395;font-size:.88rem}.practice-view__selector-card{display:flex;align-items:center;justify-content:space-between;gap:8px}.practice-view__selector-card-copy{min-width:0;display:grid;gap:6px}.practice-view__selector-card-title{margin:0;font-size:1rem;color:#264a71}.practice-view__selector-card-description{margin:0;color:#4d6659;font-size:.87rem;line-height:1.4}.practice-view__selector-card-meta{margin:0;color:#224268;font-size:.77rem;letter-spacing:.01em}.practice-view__selector-card-actions{display:flex;align-items:center;justify-content:flex-end;flex-shrink:0}.practice-view__selector-footer{display:flex;justify-content:flex-end}.routines-view__panels,.exercises-view__panels,.builder-view{display:grid;gap:14px}.builder-view__preview-section,.builder-view__builder-section,.builder-view__validation-section,.builder-view__actions-section{border-color:#0a213b24}.builder-view__actions-row{margin-bottom:0}.builder-view__feedback{margin-top:10px;color:#0f5db8;font-weight:700;font-size:.82rem}.builder-live-preview{border-color:#0a213b24;background:linear-gradient(155deg,#fffffffa,#f5f9fff2)}.builder-live-preview__controls{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:10px}.builder-live-preview__controls .ui-field{min-width:160px}.builder-live-preview__notation{border:1px solid rgba(10,33,59,.14);border-radius:12px;background:#fffffff2;padding:6px}.settings-view__toggle{justify-content:flex-start;color:#3c597d}.settings-view__routine-defaults{margin-top:14px;padding-top:14px;border-top:1px solid rgba(10,33,59,.12);display:grid;gap:10px}.settings-view__subheading{margin:0;font-size:.84rem;color:#274b72}.settings-view__subcopy{margin:0;font-size:.8rem;line-height:1.45;color:#486354}.settings-view__routine-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.settings-view__routine-grid-full{grid-column:1 / -1}.settings-view__routine-actions{display:flex;flex-wrap:wrap;gap:8px}.settings-view__feedback{margin:0;font-size:.78rem;line-height:1.4;color:#3b638f;font-weight:620}.settings-view__documentation-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.settings-view__documentation-card{border:1px solid rgba(10,33,59,.12);border-radius:14px;background:#ffffffe6;padding:12px;display:grid;gap:10px}.settings-view__documentation-card h4{margin:0;font-size:.86rem;color:#274b72}.settings-view__documentation-card p{margin:0;font-size:.8rem;line-height:1.45;color:#486354}.documentation-view__tabs{display:flex;flex-wrap:wrap;gap:8px}.documentation-view__tab{min-height:36px;border:1px solid rgba(10,33,59,.12);border-radius:10px;background:#ffffffe6;color:#35567f;font:inherit;font-size:.8rem;font-weight:660;padding:0 11px;cursor:pointer}.documentation-view__tab--active{border-color:#4f79b761;background:#dbeafce6;color:#274b72}.documentation-view__search-controls{display:grid;gap:10px;grid-template-columns:minmax(220px,1fr) minmax(160px,220px)}.documentation-view__search-field,.documentation-view__scope-field{min-width:0}.documentation-view__search-meta{margin:10px 0 0;font-size:.8rem;color:#496584}.documentation-view__search-empty{margin-top:10px;border:1px dashed rgba(10,33,59,.16);border-radius:12px;padding:12px;color:#4d677f;font-size:.82rem}.documentation-view__search-groups{margin-top:10px;display:grid;gap:10px}.documentation-view__search-group{border:1px solid rgba(10,33,59,.12);border-radius:12px;background:#ffffffe6;padding:10px;display:grid;gap:8px}.documentation-view__search-group h3{margin:0;font-size:.84rem;color:#274b72}.documentation-view__search-group ul{margin:0;padding:0;list-style:none;display:grid;gap:6px}.documentation-view__search-link{width:100%;border:1px solid rgba(10,33,59,.1);border-radius:10px;background:#fafdfffa;text-align:left;padding:9px 10px;display:grid;gap:4px;cursor:pointer}.documentation-view__search-link:hover{border-color:#4f79b757;background:#edf5ffeb}.documentation-view__search-link-title{color:#274b72;font-size:.81rem;font-weight:700}.documentation-view__search-link-snippet{color:#496584;font-size:.76rem;line-height:1.35}.documentation-view__search-link-meta{color:#3b638f;font-size:.72rem;font-weight:640}.documentation-view__sections{display:grid;gap:14px}.documentation-view__section{border:1px solid rgba(10,33,59,.12);border-radius:14px;background:#ffffffeb;padding:14px;display:grid;gap:10px}.documentation-view__section-heading-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.documentation-view__section-heading-row h2{margin:0;font-size:.95rem;color:#274b72}.documentation-view__section-heading-row a{color:#4f79b7;text-decoration:none;font-weight:700}.documentation-view__section-content{display:grid;gap:8px}.documentation-view__section-content p,.documentation-view__section-content li{margin:0;color:#3e5e7e;font-size:.82rem;line-height:1.5}.documentation-view__section-content ul,.documentation-view__section-content ol{margin:0;padding-left:20px;display:grid;gap:4px}.documentation-view__subheading-wrap{margin-top:4px}.documentation-view__subheading{margin:0;color:#2c506f;font-size:.86rem}.documentation-view__code-block{border:1px solid rgba(10,33,59,.14);border-radius:12px;overflow:hidden;background:#f6fafff2}.documentation-view__code-language{min-height:28px;display:flex;align-items:center;padding:0 10px;border-bottom:1px solid rgba(10,33,59,.1);color:#3e5e7e;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.documentation-view__code-block pre{margin:0;padding:10px;overflow:auto}.documentation-view__code-block code{font-family:Menlo,Consolas,monospace;font-size:.75rem;color:#264a71;white-space:pre}.settings-view__danger-zone{display:grid;gap:12px;padding:14px;border:1px solid rgba(130,37,37,.24);border-radius:14px;background:linear-gradient(155deg,#fff7f7f0,#ffececeb)}.settings-view__danger-copy{margin:0;color:#6b2a2a;font-size:.82rem;line-height:1.45;max-width:720px}.settings-view__reset-button{min-height:58px;width:min(100%,360px);padding:0 20px;border:1px solid rgba(142,23,23,.95);border-radius:14px;background:linear-gradient(155deg,#e53f3f,#b91f1f);color:#fff5f5;font-size:.88rem;font-weight:800;letter-spacing:.03em;cursor:pointer;box-shadow:0 14px 22px #91151547;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.settings-view__reset-button:hover{transform:translateY(-1px);box-shadow:0 18px 26px #9115155c;filter:saturate(1.06)}.settings-view__reset-button:focus-visible{outline:none;box-shadow:0 0 0 3px #e53e3e42,0 18px 26px #9115155c}.settings-view__reset-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:56;display:grid;place-items:center;padding:20px;background:#140d0d7a;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.settings-view__reset-modal-card{width:min(100%,460px);border:1px solid rgba(10,33,59,.16);border-radius:18px;background:linear-gradient(160deg,#fffffffa,#fffafafa);box-shadow:0 22px 36px #0a213b33;padding:20px;display:grid;gap:10px}.settings-view__reset-modal-title{margin:0;color:#572121}.settings-view__reset-modal-copy{margin:0;color:#553737;font-size:.84rem;line-height:1.45}.settings-view__reset-modal-actions{margin-top:6px;display:flex;justify-content:flex-end;gap:8px}.routines-view__active-status{margin:0;padding:12px;color:#395779;font-size:.84rem}.routines-view__list{display:grid;gap:8px}.routines-view__list-row{width:100%;border:1px solid rgba(10,33,59,.16);padding:10px 12px;display:grid;gap:4px;text-align:left;cursor:pointer}.routines-view__list-row--active{border-color:#1b6fee8a;box-shadow:0 0 0 2px #1b6fee24}.routines-view__list-row-title{font-size:.88rem;color:#274b73}.routines-view__list-row-id{font-family:Menlo,Consolas,monospace;font-size:.7rem;color:#5f7869}.routines-view__builder-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.routines-view__steps-header{margin-top:10px;display:flex;align-items:center;justify-content:space-between;gap:10px}.routines-view__steps-header h3{margin:0;font-size:.96rem}.routines-view__steps-list{margin-top:10px;display:grid;gap:8px}.routines-view__step-card{padding:10px;display:grid;gap:8px}.routines-view__step-card>header{display:flex;align-items:center;justify-content:space-between;gap:8px}.routines-view__step-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:9px}.routines-view__execution-cycle-groups{grid-column:1 / -1}.routines-view__builder-actions{margin-top:10px}.routines-view__run-order-field{min-width:170px}.routines-view__feedback{margin:10px 0 0;color:#0f5db8;font-weight:700;font-size:.82rem}.routines-view__validation-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px}.routines-view__validation-card{padding:11px 12px}.routines-view__validation-card h4{margin:0 0 8px;font-size:.86rem}.routines-view__validation-card ul{margin:0;padding-left:18px;display:grid;gap:4px;color:#466183;font-size:.76rem}.routines-view__validation-card--invalid{border-color:#92363659;background:#fff6f6e6}.exercises-view__recipes-actions,.exercises-view__builder-actions{margin-bottom:0}.exercises-view__roles-header{margin-top:10px}.exercises-view__roles-header h3{margin:0;font-size:.96rem}.exercises-view__preview-key-field{min-width:160px}.exercises-view__feedback{margin-top:10px}.voicing-family-editor-view__panels{display:grid;gap:12px}.voicing-family-editor-view__builder-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.voicing-family-editor-view__chord-types,.voicing-family-editor-view__hands{margin-top:10px}.voicing-family-editor-view__chord-types h3,.voicing-family-editor-view__hands h3{margin:0 0 8px;font-size:.96rem}.voicing-family-editor-view__chord-types-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px}.voicing-family-editor-view__builder-actions{margin-top:10px}.voicing-family-editor-view__feedback{margin:10px 0 0;color:#0f5db8;font-weight:700;font-size:.82rem}.voicing-family-editor-view__validation-card{padding:11px 12px}.voicing-family-editor-view__validation-card h4{margin:0 0 8px;font-size:.86rem}.voicing-family-editor-view__validation-card ul{margin:0;padding-left:18px;display:grid;gap:4px;color:#466183;font-size:.76rem}.voicing-family-editor-view__validation-card--invalid{border-color:#92363659;background:#fff6f6e6}@media (max-width: 1039px){.view-container{padding:72px 12px 14px;gap:12px}.view-section{padding:14px}.mobile-panel-tabs{top:54px}.practice-view--selector{padding:72px 12px 14px}.practice-view__selector-card{align-items:flex-start;flex-direction:column;gap:10px}.practice-view__selector-card-actions{width:100%;justify-content:flex-start}.practice-view__selector-footer{justify-content:stretch}.practice-view__selector-footer .ui-button{width:100%}.practice-view__routine-modal,.practice-view__execution-modal{padding:10px}.practice-view__execution-modal-card{max-height:calc(100vh - 20px);padding:10px}.practice-view__execution-modal-body{max-height:calc(100vh - 210px)}.practice-view__execution-row{grid-template-columns:1fr;gap:8px}.practice-view__execution-grouping-grid{grid-template-columns:1fr}.practice-view__execution-modal-footer{flex-direction:column;align-items:stretch}.practice-view__routine-modal-card{max-height:calc(100vh - 20px);padding:10px}.practice-view__routine-modal-list{max-height:calc(100vh - 110px)}.practice-view__routine-modal-row{grid-template-columns:minmax(0,1fr) auto;gap:8px}.practice-view__routine-modal-sequence{display:none}.app-resume-modal{padding:12px}.routines-view__builder-grid,.routines-view__step-grid,.voicing-family-editor-view__builder-grid,.exercises-view__builder-grid,.exercises-view__role-grid,.exercises-view__validation-grid,.routines-view__validation-grid{grid-template-columns:1fr}.routines-view__builder-actions{position:sticky;bottom:0;margin:10px -2px -2px;padding:8px 2px 2px;background:linear-gradient(180deg,#f4f9ff00,#f4f9ffeb 24%)}}:root{--line-soft: rgba(10, 33, 59, .05);--line-strong: rgba(10, 33, 59, .11);--shadow-shell: 0 8px 20px rgba(8, 27, 49, .05);--shadow-card: 0 2px 8px rgba(8, 27, 49, .03)}.app-shell__menu-panel,.app-shell__content-scroll{border-color:#0a213b0f;box-shadow:var(--shadow-shell);background:#ffffffe0}.app-shell__content-scroll{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.view-container{gap:20px;padding:34px}.view-header{border-bottom:0;padding-bottom:4px}.view-section{border-color:#0a213b0d;background:#ffffffc7;box-shadow:none;padding:20px 22px}.view-section:after{opacity:.32}.quiz-view__setup-section,.quiz-view__challenge-section,.quiz-view__results-section,.library-view__overview-section,.library-view__filters-section,.library-view__items-section,.edit-view__workflow-section,.edit-view__editor-section,.edit-view__preview-section,.edit-view__metadata-section,.library-item-view__overview-section,.library-item-view__structure-section,.library-item-view__steps-section,.library-item-view__preview-section,.builder-live-preview,.settings-view__reset-modal-card,.practice-view__execution-modal-card,.practice-view__routine-modal-card,.app-resume-modal__card,.library-view__modal-card,.library-item-view__modal-card{background:#ffffffe6;border-color:#0a213b12;box-shadow:0 8px 20px #081b310f}.quiz-view__control-card,.quiz-view__pending-stat,.quiz-view__review-row,.library-view__overview-card,.library-view__item-card,.library-item-view__metadata-card,.routines-view__list-row,.routines-view__step-card,.exercises-view__recipe-row,.exercises-view__role-card,.exercises-view__cycle-group-row,.practice-view__execution-row,.practice-view__routine-modal-row,.practice-view__selector-empty,.practice-view__selector-card,.ui-card{border-color:#0a213b0f;background:#ffffffe6;box-shadow:none}.practice-view__notation-display{border-color:#0a213b14;background:#fffffff7;box-shadow:0 6px 16px #081b3114}.practice-view__metronome-strip{border-color:#0a213b14;background:#ffffffe0;box-shadow:0 6px 14px #081b310f}.practice-view__notation-key-badge{background:#ecf6fff2;color:#385f93}.practice-view__notation-title,.practice-view__notation-exercise-title,.practice-view__context-trigger,.practice-view__metronome-strip-header,.practice-view__metronome-tempo,.practice-view__options-action,.practice-view__outcome-toggle,.practice-view__selector-title,.practice-view__selector-card-title,.quiz-view__summary-headline,.library-view__overview-count,.library-view__item-name,.library-item-view__description,.routines-view__list-row-title,.settings-view__subheading{color:var(--text-primary)}.practice-view__notation-title-copy,.practice-view__notation-subtitle,.practice-view__context-trigger-label,.practice-view__context-entry-meta,.practice-view__metronome-tempo-unit,.practice-view__metronome-beat,.practice-view__selector-subtitle,.practice-view__selector-card-description,.library-view__overview-label,.library-view__item-description,.library-item-view__meta-line,.settings-view__subcopy,.routines-view__active-status,.routines-view__list-row-id,.ui-field{color:var(--text-secondary)}.app-menu__title-mark,.app-menu__item--active,.practice-view__done-button,.ui-button--primary,.quiz-view__launch-button,.quiz-view__action-button--check,.quiz-view__result-button--primary,.library-view__header-create-button,.library-view__item-action--primary,.library-item-view__header-button--primary{background:var(--accent);border-color:#4f79b76b;color:#f4f8ff;box-shadow:0 4px 12px #4f79b733}.library-item-view__header-button--edit,.builder-mode-badge--edit{color:#3a5d93;border-color:#4f79b752;background:#e1eeffd6}.quiz-view__question-card,.quiz-view__score-shell,.quiz-view__chip--active,.quiz-view__format-button--active,.ui-button--secondary,.library-view__category-button--active,.library-view__item-action--secondary,.library-item-view__header-button--secondary,.library-view__item-card--voicing-family,.library-view__item-card--lick,.library-view__item-card--progression,.library-view__item-card--comping-pattern,.settings-view__danger-zone{background:#ecf5ffe0;box-shadow:none;border-color:#0a213b14}.library-view__item-action--danger,.library-item-view__header-button--danger{background:#fff0f0eb;box-shadow:none}.ui-button,.ui-input,.ui-select,.library-view__field-input,.library-view__field-select,.exercises-view__builder-grid input,.exercises-view__builder-grid textarea,.exercises-view__builder-grid select,.exercises-view__role-grid select{border-color:#0a213b1a}.app-menu__item{border-color:#0a213b05;box-shadow:none}.app-menu__item:hover{border-color:#0a213b14;background:#ffffffb8}.app-menu__item--active{background:#4f79b7e6;border-color:#4f79b747;box-shadow:none}.app-menu__item-marker{border-color:#0a213b1a;background:#ffffffe6;width:34px;height:34px;border-radius:11px}.app-menu__item-icon{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.app-menu__item-copy{gap:0}.app-menu__item-description{display:none}.ui-button{border-color:#0a213b1a;box-shadow:none}.ui-button:hover:not(:disabled){box-shadow:none}.ui-button--primary,.quiz-view__launch-button,.quiz-view__action-button--check,.quiz-view__result-button--primary,.practice-view__done-button{background:var(--accent);border-color:#4f79b757}.ui-button--secondary,.library-view__item-action--secondary,.library-item-view__header-button--secondary{border-color:#0a213b1a;background:#ecf5ffb8}.view-header__title{letter-spacing:-.03em;font-weight:700}.view-section__title{font-size:1rem;font-weight:650}.view-section__description{max-width:62ch;margin-top:6px;font-size:.8rem;color:#5c7293db}@media (max-width: 1039px){.view-container{padding:72px 14px 16px;gap:14px}.view-section{padding:14px}}.practice-view{background:linear-gradient(180deg,#f4f8ff,#edf4ff)}.practice-view__notation-scroll{padding:36px 22px 138px;padding-bottom:calc(138px + env(safe-area-inset-bottom))}.practice-view__notation-title{position:sticky;top:0;z-index:7;margin:0 auto 12px;padding:8px 0 10px;border-bottom:1px solid rgba(10,33,59,.06);background:linear-gradient(180deg,#f4f8fffa,#f4f8ffbd 72%,#f4f8ff00)}.practice-view__notation-title-main{gap:4px}.practice-view__notation-exercise-title{font-size:1.04rem;font-weight:680}.practice-view__notation-subtitle,.practice-view__notation-title-copy{font-size:.68rem;color:var(--text-secondary)}.practice-view__notation-progress-chip,.practice-view__context-trigger,.practice-view__notation-key-badge{border-color:#0a213b1a;background:#ffffffdb;color:var(--text-primary);box-shadow:none}.practice-view__notation-progress-chip{font-size:.58rem;letter-spacing:.06em}.practice-view__notation-rail{display:none}.practice-view__notation-display{border-radius:18px}.practice-view__context-menu,.practice-view__key-menu,.practice-view__options-menu{border-color:#0a213b1a;background:#fffffff5;box-shadow:0 8px 18px #081b3114}.practice-view__context-entry,.practice-view__key-menu-entry,.practice-view__options-action{color:var(--text-primary)}.practice-view__context-entry:hover,.practice-view__key-menu-entry:hover,.practice-view__options-action:hover{background:#ecf5ffa8}.practice-view__metronome-strip{left:18px;right:18px;bottom:12px;bottom:calc(12px + env(safe-area-inset-bottom));min-height:72px;padding:8px 10px;border-color:#0a213b14;background:#ffffffe0;box-shadow:0 6px 14px #081b310f}.practice-view__metronome-strip-header{font-size:.6rem;letter-spacing:.1em;color:var(--text-secondary)}.practice-view__metronome-main{gap:7px}.practice-view__metronome-play{width:auto;min-width:70px;height:34px;padding:0 9px;border-radius:10px;border-color:#0a213b1f;background:#ecf5ffd6;color:var(--text-primary)}.practice-view__metronome-tempo{min-width:58px;font-size:1rem;color:var(--text-primary)}.practice-view__metronome-tempo-unit,.practice-view__metronome-beat{color:var(--text-secondary)}.practice-view__metronome-tempo-buttons button{border-color:#0a213b1f;background:#ffffffdb;color:var(--text-primary)}.practice-view__outcome-toggle{min-width:74px;padding:7px 11px;border-color:#0a213b1f;background:#ffffffd6;color:var(--text-secondary)}.practice-view__done-button{min-width:108px;min-height:36px;font-size:.72rem}.practice-view__log-tray{top:12px;right:12px;gap:4px}.practice-view__log-chip{border-color:#0a213b14;background:#ffffffd6;color:var(--text-secondary);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.practice-view__feedback{border-color:#0a213b1a;background:#ffffffdb;box-shadow:none}.practice-view--selector{background:linear-gradient(180deg,#f4f8ff,#edf4ff)}.practice-view__selector-empty,.practice-view__selector-card{border-color:#0a213b0f;background:#ffffffd6;box-shadow:none}@media (max-width: 1039px){.practice-view__notation-scroll{padding:54px 10px 182px;padding-bottom:calc(182px + env(safe-area-inset-bottom))}.practice-view__notation-title{margin-bottom:8px;padding:6px 0 8px}.practice-view__metronome-strip{left:8px;right:8px;bottom:8px;bottom:calc(8px + env(safe-area-inset-bottom));min-height:0;padding:8px;gap:6px}.practice-view__metronome-strip-actions{justify-content:space-between}.practice-view__done-button{min-width:96px}.practice-view__options-menu{width:min(300px,calc(100vw - 24px));min-width:min(300px,calc(100vw - 24px));max-width:min(300px,calc(100vw - 24px))}}:root{--accent-button: #5f84ba;--accent-button-hover: #5478ad;--accent-button-border: rgba(79, 121, 183, .44);--accent-button-shadow: rgba(56, 89, 137, .16)}.ui-button--primary,.quiz-view__launch-button,.quiz-view__action-button--check,.quiz-view__result-button--primary,.practice-view__done-button,.library-view__header-create-button,.library-view__item-action--primary,.library-item-view__header-button--primary{background:var(--accent-button);border-color:var(--accent-button-border);box-shadow:0 3px 9px var(--accent-button-shadow)}.ui-button--primary:hover:not(:disabled),.quiz-view__launch-button:hover,.quiz-view__action-button--check:hover,.quiz-view__result-button--primary:hover,.practice-view__done-button:hover,.library-view__header-create-button:hover:not(:disabled),.library-view__item-action--primary:hover:not(:disabled),.library-item-view__header-button--primary:hover{background:var(--accent-button-hover);border-color:#4f79b785;box-shadow:0 4px 10px var(--accent-button-shadow);filter:none}.view-container{width:min(1120px,100%);margin-inline:auto;gap:24px;padding:38px 34px 34px}.view-header{align-items:flex-start;gap:18px;padding:0}.view-header__main{display:flex;align-items:flex-start;gap:12px;min-width:0}.view-header__icon{width:38px;height:38px;border-radius:12px;border:1px solid rgba(10,33,59,.1);background:#ecf5ffc7;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.view-header__icon-svg{width:18px;height:18px;stroke:#2f5f9a;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.view-header__copy{display:grid;gap:4px}.view-header__title{font-size:clamp(1.68rem,2.8vw,2.2rem)}.view-header__subtitle{margin:0;max-width:44ch;font-size:.89rem;line-height:1.45}.view-header__actions{margin-left:auto}.view-section{padding:22px 24px;border-radius:18px}.view-section__heading{display:flex;align-items:center;gap:10px}.view-section__icon{width:26px;height:26px;border-radius:9px;border:1px solid rgba(10,33,59,.1);background:#ecf5ffb8;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.view-section__icon-svg{width:14px;height:14px;stroke:#2f5f9a;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.view-section__title{margin:0}.view-section__description{margin:6px 0 0 36px}.view-section__content{margin-top:16px}.library-view__item-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px}.library-view__item-card{padding:14px}.library-view__item-description{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;min-height:auto}.library-view__item-footer-meta{justify-content:flex-end}.library-view__item-updated{font-size:.64rem;color:var(--text-secondary)}.library-view__item-action{min-height:28px;padding:0 10px}.statistics-view__summary-card h3{margin:0;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary)}.statistics-view__summary-card p{margin:7px 0 0;font-size:1.28rem;line-height:1;color:var(--text-primary)}@media (max-width: 1039px){.view-container{width:100%;padding:72px 12px 16px;gap:16px}.view-header__icon{width:34px;height:34px}.view-section{padding:14px}.view-section__description{margin-left:0}.library-view__item-grid{grid-template-columns:1fr}}@keyframes card-enter-soft{0%{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes float-breath{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes metronome-groove{0%,to{box-shadow:0 6px 14px #081b310f;transform:translateY(0)}50%{box-shadow:0 10px 18px #4f79b729;transform:translateY(-1px)}}.app-menu__list .app-menu__item{animation:card-enter-soft .36s cubic-bezier(.2,.8,.2,1) both}.app-menu__list .app-menu__item:nth-child(1){animation-delay:40ms}.app-menu__list .app-menu__item:nth-child(2){animation-delay:80ms}.app-menu__list .app-menu__item:nth-child(3){animation-delay:.12s}.app-menu__list .app-menu__item:nth-child(4){animation-delay:.16s}.app-menu__list .app-menu__item:nth-child(5){animation-delay:.2s}.app-menu__list .app-menu__item:nth-child(6){animation-delay:.24s}.library-view__item-card,.practice-view__selector-card,.quiz-view__control-card,.statistics-view__summary-card{animation:card-enter-soft .42s cubic-bezier(.2,.8,.2,1) both}.library-view__item-card:nth-child(2),.practice-view__selector-card:nth-child(2),.statistics-view__summary-card:nth-child(2){animation-delay:70ms}.library-view__item-card:nth-child(3),.practice-view__selector-card:nth-child(3),.statistics-view__summary-card:nth-child(3){animation-delay:.13s}.library-view__item-card:nth-child(4),.practice-view__selector-card:nth-child(4){animation-delay:.19s}.ui-button:active:not(:disabled),.quiz-view__option:active:not(:disabled),.app-menu__item:active{transform:translateY(0) scale(.985)}.view-header__icon,.view-section__icon{animation:float-breath 3.4s ease-in-out infinite}.practice-view--metronome-running .practice-view__metronome-strip{animation:metronome-groove var(--practice-beat-ms, .6s) ease-in-out infinite}.statistics-view__empty-state,.library-view__empty-state,.library-item-view__empty,.quiz-view__empty-state,.practice-view__selector-empty,.edit-view__workflow-empty{position:relative;border:1px dashed rgba(10,33,59,.14);border-radius:14px;background:#ffffffc7;padding:14px}.statistics-view__empty-state:before,.library-view__empty-state:before,.library-item-view__empty:before,.quiz-view__empty-state:before,.practice-view__selector-empty:before,.edit-view__workflow-empty:before{content:"";display:inline-block;width:34px;height:34px;border-radius:10px;margin-bottom:8px;border:1px solid rgba(10,33,59,.11);background:radial-gradient(circle at 30% 28%,rgba(255,255,255,.9),transparent 48%),linear-gradient(150deg,#6a9ce157,#80b1ef4d)}.quiz-view__empty-state,.practice-view__selector-empty,.edit-view__workflow-empty{display:grid;gap:6px}.practice-view__selector-empty h3,.quiz-view__empty-title{margin:0;font-size:1rem;color:var(--text-primary)}.practice-view__selector-empty p,.quiz-view__empty-copy,.library-view__empty-state,.statistics-view__empty-state,.edit-view__workflow-empty{color:var(--text-secondary)}.quiz-view__progress-bar{transition:width .26s cubic-bezier(.22,1,.36,1),background-position .26s ease}.quiz-view__option{transition:transform .15s ease,border-color .15s ease,background-color .15s ease,box-shadow .18s ease}.quiz-view__option:hover{box-shadow:0 6px 14px #081b3114}:root{--motion-kick: .12s;--motion-swing: .22s;--motion-phrase: .42s;--ease-groove: cubic-bezier(.22, 1, .36, 1)}.ui-button,.app-menu__item,.library-view__item-card,.practice-view__selector-card,.quiz-view__control-card,.view-section{transition:transform var(--motion-swing) var(--ease-groove),border-color var(--motion-swing) var(--ease-groove),background-color var(--motion-swing) var(--ease-groove),box-shadow var(--motion-swing) var(--ease-groove)}.app-menu__list .app-menu__item{animation-duration:var(--motion-phrase);animation-timing-function:var(--ease-groove)}.library-view__item-card,.practice-view__selector-card,.quiz-view__control-card,.statistics-view__summary-card{animation-duration:calc(var(--motion-phrase) + 60ms);animation-timing-function:var(--ease-groove)}.practice-view__selector-guide,.quiz-view__setup-hint,.library-view__domain-hint{margin:0;font-size:.74rem;line-height:1.45;color:var(--text-secondary);display:flex;align-items:flex-start;gap:8px}.practice-view__selector-guide:before,.quiz-view__setup-hint:before,.library-view__domain-hint:before{content:"";width:16px;height:16px;margin-top:2px;border-radius:6px;border:1px solid rgba(10,33,59,.12);background:radial-gradient(circle at 34% 32%,rgba(255,255,255,.88),transparent 52%),linear-gradient(145deg,#6a9ce147,#80b1ef42);flex-shrink:0}.practice-view__selector-guide{margin-top:2px}.quiz-view__setup-hint{margin-top:12px}.library-view__domain-hint{margin-bottom:10px}@media (max-width: 1039px){.practice-view__selector-guide,.quiz-view__setup-hint,.library-view__domain-hint{font-size:.72rem;gap:7px}}.app-menu__title-icon{width:21px;height:21px}.app-menu__title-icon-line{stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.library-view__domain-hint,.library-view__domain-actions{margin-bottom:14px}.library-view__item-marker{width:40px;height:30px;font-size:0}.library-view__item-marker-icon{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.settings-view__subcopy{margin-bottom:8px}.settings-view__routine-actions{margin-top:8px}@media (max-width: 920px){.documentation-view__search-controls{grid-template-columns:1fr}}.statistics-view__empty-state,.library-view__empty-state,.library-item-view__empty{display:flex;align-items:center;gap:10px}.statistics-view__empty-state:before,.library-view__empty-state:before,.library-item-view__empty:before{margin-bottom:0;width:28px;height:28px}.practice-view__metronome-play,.practice-view__options-action,.practice-view__outcome-toggle,.practice-view__done-button{display:inline-flex;align-items:center;gap:7px}.practice-view__icon-inline{width:14px;height:14px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.practice-view__icon-svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.practice-view__metronome-play .practice-view__icon-inline{width:12px;height:12px}.practice-view__metronome-play .practice-view__icon-svg{width:12px;height:12px;stroke-width:2}.practice-view__outcome-toggle{justify-content:center}@media (max-width: 1039px){.library-view__domain-hint,.library-view__domain-actions{margin-bottom:10px}.statistics-view__empty-state,.library-view__empty-state,.library-item-view__empty{align-items:flex-start}}
