/* Keep menu actions and exercise cards in place, with one system font and SVG icon style. */
body.gt-ui #gt-more-panel{width:min(330px,calc(100vw - 28px));padding:17px 14px;border-radius:22px;border:1px solid #d9f9e22e;background:linear-gradient(140deg,#26342fe8,#111a16f0);box-shadow:inset 0 1px 0 #fff1,0 24px 65px #0007;backdrop-filter:blur(28px) saturate(1.25);-webkit-backdrop-filter:blur(28px) saturate(1.25);font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
body.gt-ui #gt-more-panel .gt-menu-lbl{font:600 9px/1.5 -apple-system,sans-serif;letter-spacing:.16em;color:#8cae99;margin:16px 11px 7px}
body.gt-ui #gt-more-panel .gt-menu-sep{height:1px;background:#c3ead51b;margin:13px 6px}
body.gt-ui #gt-more-panel .gt-menu-row,body.gt-ui #gt-more-panel .dd-btn,body.gt-ui #gt-more-panel #sub-status-badge,body.gt-ui #gt-more-panel #download-badge,body.gt-ui #gt-more-panel .support-badge,body.gt-ui #gt-more-panel #logout-badge,body.gt-ui #gt-more-panel #delete-account-badge,body.gt-ui #gt-more-panel #privacy-badge,body.gt-ui #gt-more-panel #gt-profile-menu{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif!important;font-size:12px!important;font-weight:500!important;letter-spacing:0!important;text-transform:none!important;line-height:1.4;border-radius:11px;gap:11px;min-height:41px;padding:11px 12px!important;text-decoration:none}
body.gt-ui #gt-more-panel .gt-menu-row:hover,body.gt-ui #gt-more-panel .dd-btn:hover,body.gt-ui #gt-more-panel #download-badge:hover,body.gt-ui #gt-more-panel .support-badge:hover,body.gt-ui #gt-more-panel #logout-badge:hover,body.gt-ui #gt-more-panel #privacy-badge:hover{background:#b8f5cf12;color:#c8f5d9!important}
body.gt-ui #gt-more-panel #delete-account-badge{color:#efadad!important;font-size:11px!important}body.gt-ui #gt-more-panel #privacy-badge{color:#a3bdad!important;font-size:11px!important}
.gt-pro-icon{display:inline-flex;align-items:center;justify-content:center;width:19px;height:19px;flex-shrink:0;line-height:0;pointer-events:none}.gt-pro-icon svg{display:block;width:100%;height:100%;overflow:visible}
#gt-more-panel>.gt-pro-icon,#gt-more-panel .gt-pro-icon{color:#8dbea0}#gt-more-panel #gt-language-control{display:flex;align-items:center;gap:12px;padding:8px 11px;margin:0;background:#e4ffef08;border:1px solid #c6e7d51a;border-radius:12px}#gt-more-panel .gt-language-icon{width:29px;height:29px;border-color:#bbdec92e;background:#a5dcb210;color:#a1cbae}#gt-more-panel .gt-language-select-wrap{flex:1}#gt-more-panel .gt-language-select{border:0!important;outline-offset:4px;background:transparent!important;color:#d9ecdf!important;font:500 12px -apple-system,sans-serif!important;min-height:30px;width:100%;padding:3px 7px!important;color-scheme:dark}
#train-card,#train-fs{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}#train-card .train-mode{font-family:inherit;border-radius:20px;padding:20px 17px;min-height:170px;transition:background .16s,border-color .16s,box-shadow .16s}#train-card .train-mode .tm-icon{display:flex;align-items:center;justify-content:center;width:46px;height:46px;margin:0 0 16px;background:linear-gradient(140deg,#eff9f3,#dcefe2);border:1px solid #bddac973;border-radius:14px;color:#36724c;box-shadow:inset 0 1px 0 #fff,0 3px 9px #194d2410}#train-card .tm-icon .gt-pro-icon{width:27px;height:27px}#train-card .train-mode .tm-title{font:650 13px/1.4 -apple-system,sans-serif;letter-spacing:-.015em}#train-card .train-mode .tm-sub{font:400 11px/1.65 -apple-system,sans-serif;color:#5c7464;margin-top:6px}#train-card .train-mode.sel .tm-icon{background:linear-gradient(#d3f4df,#b6e7c9);border-color:#84c59b}
#train-fs-chord{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif!important;letter-spacing:-.03em!important}
@media(max-width:700px){#train-card .train-mode{padding:16px 13px;min-height:176px}#train-card .train-mode .tm-icon{width:40px;height:40px;margin-bottom:12px}#train-card .tm-icon .gt-pro-icon{width:24px;height:24px}#train-card .train-mode .tm-title{font-size:12px}}
@media(prefers-reduced-motion:reduce){#train-card .train-mode{transition:none}}
body.ivi-mode #train-fs-top{max-width:1040px}body.ivi-mode #train-fs-chord{font-size:clamp(26px,4vw,42px);color:#264b33}body.ivi-mode #train-fs-instr{font-size:13px;color:#64816d}body.ivi-mode #ivi-setup{width:100%;max-width:980px;gap:16px;padding:48px 24px 22px;align-items:stretch}body.ivi-mode #ivi-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;width:100%}body.ivi-mode #ivi-modes,body.ivi-mode #ivi-voicings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%}body.ivi-mode .ivi-step-card,body.ivi-mode .ivi-mode-card,body.ivi-mode .ivi-voicing-card{min-width:0;max-width:none;border-radius:14px;padding:16px 13px;background:#ffffffad;border-color:#bfd8c6;color:#385e44;box-shadow:inset 0 1px 0 #fff}body.ivi-mode .ivi-step-card.sel,body.ivi-mode .ivi-mode-card.sel,body.ivi-mode .ivi-voicing-card.sel{background:#e1f5e7;border-color:#54ad73;box-shadow:0 0 0 1px #79c89325}body.ivi-mode .ivi-card-name{font:600 13px/1.4 -apple-system,sans-serif}body.ivi-mode .ivi-card-desc{font:400 11px/1.55 -apple-system,sans-serif;margin-top:7px;color:#577461}body.ivi-mode .ivi-section-title{font:650 9px/1.4 -apple-system,sans-serif;letter-spacing:.14em;color:#5d7c67;margin-top:2px}body.ivi-mode #ivi-run{width:min(1040px,100%);gap:18px}body.ivi-mode #ivi-chord{font:650 clamp(28px,4vw,42px)/1.2 -apple-system,sans-serif;color:#25543a;letter-spacing:-.04em}body.ivi-mode #ivi-instr{font-size:12px;line-height:1.7;max-width:850px;color:#607f6a}
.ivi-rhythm-settings{width:100%;padding:18px;border:1px solid #5c9a6e2e;border-radius:16px;background:#eef9f27d}.ivi-rhythm-settings>label{display:block;font:600 12px -apple-system,sans-serif;color:#395e45;margin-bottom:9px}.ivi-rhythm-settings>select{font:500 13px -apple-system,sans-serif;border:1px solid #507d5b36;border-radius:10px;padding:11px 14px;color:#34553e;background:#ffffffcd;min-width:220px}.ivi-rhythm-settings>p{font:11px/1.6 -apple-system,sans-serif;color:#66836f;margin:10px 0}.ivi-rhythm-diagram,#ivi-prog-line.ivi-rhythm-diagram{display:block;width:100%;position:relative;border:1px solid #4b8c6230;border-radius:16px;background:linear-gradient(#ffffffdb,#f8fcf8cf);padding:14px 12px 9px;overflow:hidden;box-shadow:0 7px 25px #265f3210}.ivi-rhythm-diagram>svg{display:block;width:100%;height:auto;overflow:visible}.ivi-rhythm-diagram text{fill:#647f6c}.ivi-rhythm-diagram .ivi-roman{font-weight:650;fill:#365c43}.ivi-rhythm-diagram .ivi-rhythm-active,.ivi-rhythm-diagram .ivi-rhythm-active path,.ivi-rhythm-diagram .ivi-rhythm-active rect{fill:#228351;stroke:#228351}.ivi-rhythm-diagram text.ivi-rhythm-active{stroke:none;font-weight:650}#ivi-prog-line.ivi-rhythm-diagram:after{content:'';position:absolute;bottom:0;left:0;width:var(--ivi-pulse,0%);height:3px;background:#45ba79;pointer-events:none}
@media(max-width:700px){body.ivi-mode #ivi-steps{grid-template-columns:repeat(2,minmax(0,1fr))}body.ivi-mode #ivi-setup{padding:44px 14px 18px;gap:12px}body.ivi-mode .ivi-step-card,body.ivi-mode .ivi-mode-card,body.ivi-mode .ivi-voicing-card{padding:13px 9px}.ivi-rhythm-settings{padding:12px}.ivi-rhythm-diagram,#ivi-prog-line.ivi-rhythm-diagram{padding:10px 2px 8px}.ivi-rhythm-settings>select{width:100%;min-width:0}}
body.light.gt-ui #gt-more-panel{background:linear-gradient(140deg,#ffffffed,#eef8f2ef);border-color:#fff;box-shadow:0 22px 70px #153c2926}body.light.gt-ui #gt-more-panel .gt-menu-row,body.light.gt-ui #gt-more-panel .dd-btn,body.light.gt-ui #gt-more-panel #sub-status-badge,body.light.gt-ui #gt-more-panel #download-badge,body.light.gt-ui #gt-more-panel .support-badge,body.light.gt-ui #gt-more-panel #logout-badge,body.light.gt-ui #gt-more-panel #privacy-badge{color:#345d43!important}body.light.gt-ui #gt-more-panel .gt-language-select{color:#315b41!important;color-scheme:light}body.light.gt-ui #gt-more-panel .gt-language-icon{color:#39734f}body.light.gt-ui #gt-more-panel .gt-menu-lbl{color:#668570}#gt-more-panel :focus-visible{outline:2px solid #75c893;outline-offset:2px}

/* Shared exercise contrast: also covers controls moved out of the library. */
:is(#train-card,#train-fs) :is(.legacy-settings-card,.exercise-settings-menu,#scale-run,#ivi-run){--white:#203e2b;--g1:#405f4b;--g2:#4b6655;--g3:#4e6a59;--p1:#f3faf5;--p2:#ffffffda;--b1:#c1d8c9;--b2:#a6c7b2;--b3:#5b926f;--local-key:#176c3c;--local-key2:#35ac68;--red:#a63430;color:#203e2b;color-scheme:light}
:is(#train-card,#train-fs) .train-cat-chip{min-height:40px;padding:10px 13px;gap:9px;border:1px solid #a9c8b4;border-radius:12px;background:linear-gradient(145deg,#fffffff0,#eef7f1de);color:#36553f;font:500 13px/1.4 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;letter-spacing:0;box-shadow:inset 0 1px 0 #fff,0 2px 5px #224b2f06}
:is(#train-card,#train-fs) .train-cat-chip:hover{background:#f7fff9;border-color:#588d6a}
:is(#train-card,#train-fs) .train-cat-chip:has(input:checked){color:#154b2b;background:linear-gradient(135deg,#dcf4e5,#eaf9ef);border-color:#368b57;box-shadow:inset 0 0 0 1px #368b5724,inset 0 1px 0 #fff}
:is(#train-card,#train-fs) .train-cat-chip input{width:16px;height:16px;flex-shrink:0;accent-color:#176c3c;color-scheme:light}
:is(#train-card,#train-fs) #train-cats>div:first-child{font:650 10px/1.6 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif!important;letter-spacing:.1em!important;color:#3b5e47!important;margin-bottom:10px!important}
#train-fs .legacy-settings-card{background:linear-gradient(140deg,#ffffffdb,#ecf7f0c9);border:1px solid #b7d2c1;box-shadow:inset 0 1px 0 #fff,0 12px 32px #2451350c}
:is(#train-card,#train-fs) #train-diff{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:4px;background:#dcebe2a8;border:1px solid #adcbb8;border-radius:13px;padding:4px;width:fit-content}
:is(#train-card,#train-fs) .diff-btn{border:1px solid transparent;border-radius:9px;background:transparent;color:#365842;font:550 12px/1.4 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;letter-spacing:0;text-transform:none;padding:9px 16px}
:is(#train-card,#train-fs) .diff-btn.sel{background:#fff;color:#174e2b;border-color:#a6c7b2;box-shadow:0 2px 6px #24513512}
#train-fs :is(.tfs-beat-btn,.tfs-rep-btn){background:#ffffffdf;border:1px solid #a6c6b1;color:#355940;font:550 12px/1.3 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;min-height:38px;border-radius:10px}
#train-fs :is(.tfs-beat-btn,.tfs-rep-btn).sel{background:#dbf2e3;color:#18502e;border-color:#3c8a58;box-shadow:inset 0 0 0 1px #3c8a581c}
#train-fs .tfs-tempo-btn{background:#ffffffdc;color:#224f32;border:1px solid #aac8b5;min-height:36px;font-size:18px}
#train-fs :is(.tfs-check,.tfs-beats-label,.reps-row>span,#scale-type-row label){color:#365a42;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
#train-fs input[type=checkbox]{accent-color:#176c3c;color-scheme:light}
#train-fs :is(.tfs-btn.ghost,.tfs-btn.learn-toggle:not(.on)){background:#ffffffd9;color:#31553d;border-color:#aac8b5}
#train-fs :is(#p12-tempo-val,#scale-tempo-val,#ivi-tempo-val){color:#17653a}
#train-fs #scale-type-sel{background:#ffffffdf;border-color:#a6c7b2;color:#274f35;color-scheme:light;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;max-width:100%;min-width:min(280px,100%)}
#train-fs :is(.tfs-level,.ivi-step-card,.ivi-mode-card,.ivi-voicing-card).sel{background:linear-gradient(145deg,#e0f5e7,#effaf2);border-color:#3d8d5a;box-shadow:inset 0 0 0 1px #3d8d5a20}
#train-fs :is(.tfs-level-desc,.ivi-card-desc,#scale-instr,#ivi-instr,.tfs-space-hint){color:#46634f}
#reading-game :is(.rg-settings>label,.rg-check,.rg-lesson p,#rg-register-detail,.rg-rules,.rg-paper-footer){color:#405f4a}
#reading-game .rg-settings{background:linear-gradient(140deg,#ffffffcb,#eaf6eec4);border:1px solid #b2cfbd;box-shadow:inset 0 1px 0 #fff,0 10px 28px #234e3212}
#reading-game .rg-bpm-label{color:#41614b}#reading-game .rg-check input{accent-color:#176c3c}
.rh-card :is(p,.rh-events span,.rh-figures span){color:#405e49}#rh-play{background:#1c6e40;color:#fff;border-color:#1c6e40}
:is(#train-card,#train-fs) :is(.train-cat-chip,button,summary,select,input):focus-visible{outline:2px solid #176c3c;outline-offset:3px}
:is(#train-card,#train-fs) .train-cat-chip:has(input:focus-visible){outline:2px solid #176c3c;outline-offset:3px}
@media(max-width:600px){:is(#train-card,#train-fs) .train-cat-chip{font-size:12px;padding:10px 11px;min-height:40px}.legacy-settings-card{padding:46px 16px 18px}}
@media(prefers-reduced-transparency:reduce){:is(#train-card,#train-fs) .train-cat-chip{background:#f6fbf8}#train-fs .legacy-settings-card,#reading-game .rg-settings{background:#f1f8f4}}

.ivi-rhythm-diagram text,.rh-header>span{color:#496951;fill:#496951}
