:root { --ink:#ededed; --muted:#b9b9b9; --bg:#222; --panel:#292929; --line:#484848; --lime:#ddd; --orange:#ccc; }
body { background:#222; color:#ededed; }
.brand-mark { background:#383838; border:1px solid #777; color:#eee; border-radius:4px; }
.main-nav a { color:#c4c4c4; border-radius:3px; }
.main-nav a[aria-current=page] { background:#363636; border-color:#ddd; color:#fff; }
.shell>header,.global-state,footer { border-color:#444; }
.global-state,.global-state span,footer,footer a { color:#b9b9b9; }
.global-state span+span { border-color:#555; }
.page h1 { font-size:30px; }
.page p,.subtle { color:#c0c0c0!important; }
.page .eyebrow { display:none; }
a,.text-button,.secondary-button,.help-button { color:#ddd; }
.help-button,.secondary-button { border-color:#555; background:transparent; border-radius:4px; }
button:hover:not(:disabled) { background-color:#454545; }
.primary-link,#startButton,.practice-controls #practiceStart,#practiceResume { background:#ddd; border-color:#ddd; color:#222; border-radius:4px; }
.primary-link:hover,#startButton:hover:not(:disabled),.practice-controls #practiceStart:hover:not(:disabled) { background:#fff; color:#111; }
.panel,.home-history .panel,.home-history .panel+.panel { background:transparent; border:0; border-top:1px solid #484848; border-radius:0; padding:22px 0; }
.home-practice-entry { display:flex; flex-wrap:wrap; align-items:center; gap:20px; padding:26px; margin:8px 0 0; background:#2b2b2b; border:1px solid #555; border-radius:4px; }
.home-practice-entry>div { flex:1; min-width:220px; }
.home-practice-entry h2 { margin:0; font-size:24px; }
.home-practice-entry p { margin:8px 0 0; }
.home-practice-entry button { padding:12px; }
.home-shortcuts { display:flex; flex-wrap:wrap; gap:30px; padding:24px 0 32px; }
.home-shortcuts a { font-size:15px; }
.home-history .badges span { color:#ddd; }
#homePage>.subtle { display:none; }
.home-history #homeGrowth>.subtle { display:none; }
#practicePage>.subtle,.fret-area>.subtle { display:none; }
.visual-step { color:#eee; }
.visual-step>span { background:#3b3b3b; color:#ddd; border-radius:4px; }
.practice-card,.practice-card+.practice-card,.practice-card.selected:first-child { background:#272727; border-color:#555; border-radius:4px; }
.practice-card.selected,.practice-card.selected:first-child { background:#343434; border-color:#ddd; }
.practice-card::after,.practice-card span,.practice-card small { color:#bbb; }
.practice-card.selected::after { background:#525252; color:#fff; }
.practice-workspace { background:#272727; border-color:#484848; border-radius:4px; }
.practice-header { border-color:#484848; }
.practice-header h2,.practice-header h2::before { color:#ddd; }
.practice-header>span { background:none; color:#ccc; border-color:#555; }
#practiceConnectHint { background:#333; border-color:#aaa; border-radius:3px; }
.practice-settings input[type=number],.practice-settings select { background:#202020; border-color:#666; color:#eee; border-radius:4px; }
.practice-settings input[type=checkbox] { accent-color:#ddd; }
.practice-controls .secondary-button { border-color:#555; }
.practice-controls #practiceStart:disabled { background:#3b3b3b; color:#a9a9a9; border-color:#555; }
.practice-live { background:#202020; border-color:#4c4c4c; border-radius:4px; }
.pitch-panel { background:#252525; border-color:#4c4c4c; }
.pitch-panel>span,.pitch-panel p,.pitch-panel #targetNote,.pitch-panel #currentNote,.phase-line strong,.position-label span { color:#ddd; }
.practice-workspace progress::-webkit-progress-value { background:#bbb; }
.practice-workspace progress { accent-color:#bbb; }
.mixer,.mixer-title,.compact-mixer,#practicePage.is-active .compact-mixer { background:#1d1d1d; border-color:#555; }
.mixer-title strong,.mixer-title span,.strip-name,.compact-channel label { color:#ddd; }
.mixer-channel,.compact-channel { border-color:#454545; }
.mixer-channel.master-channel { background:#292929; }
.compact-channel button,.mixer-channel .mute-button { background:#303030; color:#ccc; border-color:#555; }
.control-panel { background:#2d2d2d; border-color:#555; }
.monitor-setting { gap:12px; }.monitor-setting>div { margin-right:auto; }
#playbackStatus:empty,#recordStatus:empty { min-height:0; margin:0; }
.pitch-panel #practiceInstruction { color:#ccc; }
.practice-card p { line-height:1.5; }
@media(max-width:700px) { .home-shortcuts { flex-direction:column; gap:18px; } }
