:root {
  --ink:#17172e; --muted:#66677c; --paper:#f8f7f2; --card:#fff;
  --indigo:#171743; --indigo-2:#282865; --saffron:#e28a17; --saffron-soft:#fff0d7;
  --scale-tonic-ink:#4d73b8; --scale-tonic-soft:#e3ebf8;
  --line:#dedee8; --teal:#167d79; --shadow:0 18px 50px rgba(28,27,61,.09);
}
html, body { touch-action: pan-x pan-y; }
@media(max-width:900px){input,select,textarea{font-size:16px!important}}
.raga-rhythm-delete{position:relative;z-index:2;min-height:44px;touch-action:manipulation;pointer-events:auto}
.raga-rhythm-delete-confirm{display:grid;gap:7px;padding:10px;border:1px solid #d56d67;border-radius:10px;background:#fff6f5;color:var(--indigo)}
.raga-rhythm-delete-confirm[hidden]{display:none}
.raga-rhythm-delete-confirm>span{color:#775d5c;font-size:.78rem}
.raga-rhythm-delete-confirm>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.raga-rhythm-delete-confirm button{min-height:44px;touch-action:manipulation}
#ragaRhythmDeleteConfirmButton{border-color:#9b241d;background:#9b241d;color:#fff}

/* Tonal path: notation stays dark while transitions remain secondary. */
.card-heading .raga-path { color: #17172f; font-weight: 700; }
.card-heading .raga-path-arrow { color: #9696a5; font-weight: 650; }
.raga-path-line{display:block}.raga-path-line+.raga-path-line{margin-top:2px}
*{box-sizing:border-box} html{max-width:100%;overflow-x:hidden;background:var(--paper)}
body{max-width:100%;overflow-x:hidden;margin:0;color:var(--ink);background:radial-gradient(circle at 82% 0,#ecebff 0,transparent 30rem),var(--paper);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.45}
button,select,input{font:inherit} button,select{min-height:44px} button{cursor:pointer}
.topbar{height:86px;padding:0 clamp(18px,4vw,56px);display:flex;align-items:center;gap:14px;color:#fff;background:linear-gradient(120deg,#121238,#24245c);border-bottom:4px solid var(--saffron)}
.master-mixer{position:relative;margin-left:auto}.master-mixer summary{display:flex;align-items:center;cursor:pointer;visibility:visible;opacity:1;list-style:none;border:1px solid #ffffff66;border-radius:9px;padding:7px 10px;background:#ffffff12;color:#fff;-webkit-text-fill-color:#fff;font-weight:750}.master-mixer summary::-webkit-details-marker{display:none}.audio-state{margin-left:5px;color:#9fe3c8;-webkit-text-fill-color:#9fe3c8;font-size:.65rem}.master-mixer-panel{position:absolute;z-index:40;right:0;top:calc(100% + 8px);width:min(310px,84vw);padding:12px;border-radius:12px;background:#fff;color:var(--indigo);box-shadow:0 12px 32px #08081f55}.master-mixer-panel label{display:grid;grid-template-columns:1fr auto;gap:5px 10px;align-items:center;margin:5px 0;font-size:.78rem}.master-mixer-panel input[type=range]{grid-column:1/-1;width:100%}.master-mixer-panel .mixer-switch{display:flex}.master-mixer-panel output{color:var(--muted)}
.main-menu{position:relative;z-index:35;display:flex;align-items:stretch;gap:2px;min-height:40px;padding:0 clamp(14px,3vw,42px);border-bottom:1px solid var(--line);background:#fff}.main-menu-item{position:relative}.main-menu-item>summary{display:flex;align-items:center;min-height:40px;padding:0 14px;cursor:pointer;list-style:none;color:var(--indigo);font-size:.86rem;font-weight:800}.main-menu-item>summary::-webkit-details-marker{display:none}.main-menu-item[open]>summary{background:var(--saffron-soft);box-shadow:inset 0 -3px var(--saffron)}.main-menu-popover{position:absolute;z-index:70;top:100%;left:0;display:grid;min-width:220px;padding:7px;border:1px solid #dadae5;border-radius:0 0 12px 12px;background:#fff;box-shadow:0 14px 32px rgba(23,23,67,.18)}.main-menu-popover button{min-height:40px;padding:7px 10px;border:0;border-radius:7px;background:#fff;color:var(--indigo);text-align:left;font-weight:750}.main-menu-popover button:hover,.main-menu-popover button:focus-visible{background:var(--saffron-soft);outline:none}.main-menu-popover small{display:block;max-width:250px;min-height:1em;padding:3px 10px;color:var(--muted);overflow-wrap:anywhere}
.piano-monitor{--piano-white-width:36px;--piano-black-width:22px;--piano-black-half:11px;width:100%;max-width:1500px;margin:0 auto;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}.piano-monitor[hidden]{display:none}.piano-monitor-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px clamp(14px,3vw,42px)}.piano-monitor-head>strong{color:var(--indigo)}.piano-layer-tabs{display:flex;gap:4px;padding:3px;border-radius:10px;background:#eeeef4}.piano-layer-tabs button{min-height:36px;padding:5px 12px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:.8rem;font-weight:800}.piano-layer-tabs button.active{background:var(--teal);color:#fff;box-shadow:0 2px 7px #17174328}.piano-keyboard-scroll{overflow-x:auto;overscroll-behavior-x:contain;padding:0 clamp(14px,3vw,42px) 8px;scrollbar-width:thin}.piano-keyboard{position:relative;height:142px;min-width:max-content}.piano-key{position:absolute;top:0;padding:0;border-radius:0;transition:background .06s ease,box-shadow .06s ease;touch-action:manipulation}.piano-key.white{z-index:1;width:var(--piano-white-width);height:140px;border:1px solid #a9a9b6;border-left:0;background:#fff}.piano-key.white:first-child{border-left:1px solid #a9a9b6}.piano-key.black{z-index:2;width:var(--piano-black-width);height:88px;min-height:0;border:1px solid #08081e;background:#17172f;box-shadow:0 3px 5px #0005}.piano-key .piano-key-label{position:absolute;right:2px;bottom:4px;left:2px;color:#747487;font-size:.55rem;font-weight:750;text-align:center;pointer-events:none}.piano-key.black .piano-key-label{color:#d7d7e3}.piano-key.sounding,.piano-key.pressed{background:var(--saffron);box-shadow:inset 0 0 0 3px #9b5700,0 0 0 2px #fff}.piano-key.sounding[data-piano-sound-layer="chords"],.piano-key.pressed[data-piano-sound-layer="chords"]{background:var(--teal);box-shadow:inset 0 0 0 3px #0b5653,0 0 0 2px #fff}.piano-key.sounding[data-piano-sound-layer="tanpura"],.piano-key.pressed[data-piano-sound-layer="tanpura"]{background:#f2c453;box-shadow:inset 0 0 0 3px #9c7212,0 0 0 2px #fff}.piano-monitor-status{display:block;min-height:28px;padding:3px clamp(14px,3vw,42px) 8px;color:var(--muted);font-size:.76rem;font-weight:700}
.piano-raga-notes-toggle{display:flex;align-items:center;gap:6px;color:var(--indigo);font-size:.78rem;font-weight:800}.piano-raga-notes-toggle>label{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.piano-raga-notes-toggle input{width:19px;height:19px;accent-color:#5975b5}.piano-key.raga-note::before{position:absolute;z-index:3;bottom:20px;left:50%;box-sizing:border-box;width:12px;height:12px;border:1px solid #69aaa1;border-radius:50%;background:#bfe5df;box-shadow:0 0 0 2px #fff9;content:"";transform:translateX(-50%);pointer-events:none}.piano-key.raga-note.raga-vadi::before{border:3px solid #d83232}.piano-key.raga-note.raga-samvadi::before{border:3px solid #217a46}.piano-key.raga-note.sounding,.piano-key.raga-note.pressed{background:var(--saffron);box-shadow:inset 0 0 0 3px #9b5700,0 0 0 2px #fff}.piano-key.raga-note.sounding[data-piano-sound-layer="chords"],.piano-key.raga-note.pressed[data-piano-sound-layer="chords"]{background:var(--teal);box-shadow:inset 0 0 0 3px #0b5653,0 0 0 2px #fff}.piano-key.raga-note.sounding[data-piano-sound-layer="tanpura"],.piano-key.raga-note.pressed[data-piano-sound-layer="tanpura"]{background:#f2c453;box-shadow:inset 0 0 0 3px #9c7212,0 0 0 2px #fff}
.guitar-fretboard-monitor{width:100%;max-width:1500px;margin:0 auto;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}.guitar-fretboard-monitor[hidden]{display:none}.guitar-fretboard-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:10px clamp(8px,2vw,24px)}.guitar-fretboard-head>strong{flex:0 0 auto;color:var(--indigo)}.guitar-fretboard-options{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px 14px}.guitar-fretboard-options label{display:inline-flex;align-items:center;gap:5px;color:var(--indigo);font-size:.875rem;font-weight:750}.guitar-fretboard-options label.disabled{color:#9999a8}.guitar-fretboard-options input{width:18px;height:18px;accent-color:var(--teal)}.guitar-fretboard-scroll{width:100%;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.guitar-fretboard{position:relative;height:clamp(118px,32vw,210px);overflow:hidden;background:#fff;touch-action:pan-x}.guitar-neck{position:absolute;z-index:0;top:0;right:0;bottom:22%;left:0;border-top:1px solid #8f7049;border-bottom:2px solid #74542e;background:linear-gradient(180deg,#e2c18d,#c89c60 48%,#d8ad73);box-shadow:inset 0 5px 10px #fff3,inset 0 -5px 9px #5a351d22}.guitar-fret-line{position:absolute;z-index:1;top:0;bottom:22%;width:2px;background:#574c40;box-shadow:1px 0 #fff5;transform:translateX(-50%)}.guitar-fret-line.nut{z-index:4;width:6px;background:#241f1a;box-shadow:2px 0 1px #fff8}.guitar-fret-line.octave{width:2px;background:#574c40}.guitar-string{position:absolute;z-index:2;right:0;left:0;height:1px;background:#393536;box-shadow:0 1px #fff8;transform:translateY(-50%)}.guitar-string-4{height:1.4px}.guitar-string-5{height:1.8px}.guitar-string-6{height:2.2px}.guitar-fret-number{position:absolute;z-index:3;bottom:2px;color:#242430;font-size:clamp(10px,2.2vw,16px);font-weight:850;line-height:1;transform:translateX(-50%)}.guitar-note-marker{position:absolute;z-index:5;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:clamp(15px,3.8vw,28px);height:clamp(15px,3.8vw,28px);border:1.5px solid #777780;border-radius:50%;background:transparent;color:#34343e;font-size:clamp(7px,1.7vw,12px);font-weight:900;line-height:1;box-shadow:0 0 0 1px #fff8;transform:translate(-50%,-50%)}.guitar-note-marker.is-open{box-shadow:0 0 0 2px #fff}.guitar-note-marker.is-unique{background:#a9a9b0;color:#17172f}.guitar-note-marker.is-raga{background:#bfe5df;color:#184f4a}.guitar-note-marker.is-vadi{border:2px solid #d83232}.guitar-note-marker.is-samvadi{border:2px solid #217a46}.guitar-fretboard-legend{display:flex;flex-wrap:wrap;gap:6px 14px;padding:7px clamp(8px,2vw,24px);color:var(--muted);font-size:.8rem;font-weight:750}.guitar-fretboard-legend span{display:inline-flex;align-items:center;gap:5px}.guitar-fretboard-legend i{display:inline-block;box-sizing:border-box;width:12px;height:12px;border-radius:50%}.guitar-legend-scale{border:1.5px solid #777780;background:transparent}.guitar-legend-unique{border:1.5px solid #777780;background:#a9a9b0}.guitar-legend-raga{border:1.5px solid #69aaa1;background:#bfe5df}.guitar-legend-vadi{border:2px solid #d83232;background:#bfe5df}.guitar-legend-samvadi{border:2px solid #217a46;background:#bfe5df}
.guitar-note-marker.is-open{box-shadow:0 0 0 1px #fff8}
.guitar-note-marker.is-motif-note{background:#f2a52b!important;color:#17173e}.guitar-note-marker.is-motif-note.is-playing{background:#ef8e16!important;color:#fff}.guitar-note-marker.is-playing{box-shadow:0 0 0 3px #fff,0 0 0 6px #ef8e16!important}.guitar-legend-motif{border:1.5px solid #777780!important;background:#f2a52b!important}
.guitar-note-marker.is-scale:not(.is-unique):not(.is-raga){background:#fff}
.guitar-fingering-toolbar{display:flex;align-items:center;gap:10px;padding:0 clamp(8px,2vw,24px) 9px}.guitar-fingering-toggle{min-height:34px;border:1px solid #25255f;border-radius:9px;background:#fff;color:#25255f;padding:6px 12px;font:inherit;font-size:.82rem;font-weight:850}.guitar-fingering-toggle[aria-expanded="true"]{background:#25255f;color:#fff}.guitar-fingering-toolbar span{color:var(--muted);font-size:.78rem;font-weight:750}.guitar-fingering-options{padding:0 clamp(8px,2vw,24px) 9px}.guitar-fingering-options[hidden]{display:none}.guitar-layout-types{display:flex;gap:7px;overflow-x:auto;padding-bottom:8px;scrollbar-width:thin}.guitar-fingering-options button{flex:0 0 auto;min-height:32px;border:1px solid #b8b8c6;border-radius:999px;background:#fff;color:#29294d;padding:5px 11px;font:inherit;font-size:.78rem;font-weight:800}.guitar-fingering-options button.active{border-color:#e58a00;background:#fff1d5;color:#5e3900;box-shadow:inset 0 0 0 1px #e58a00}.guitar-box-selector{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0;padding:8px 0 0;border:0}.guitar-box-selector legend{float:left;margin-right:4px;color:var(--muted);font-size:.76rem;font-weight:800}.guitar-box-selector label{display:inline-flex;align-items:center;gap:4px;min-height:32px;padding:3px 8px;border:1px solid #c9c9d5;border-radius:8px;color:var(--indigo);font-size:.78rem;font-weight:850}.guitar-box-selector input{width:18px;height:18px;margin:0;accent-color:var(--teal)}.guitar-note-marker.is-playing{z-index:8!important;border-color:#17173e!important;background:#ef8e16!important;color:#fff!important;box-shadow:0 0 0 3px #fff,0 0 0 6px #ef8e16;transform:translate(-50%,-50%) scale(1.13)}.guitar-legend-playing{border:1.5px solid #17173e;background:#ef8e16}
@media(max-width:720px){.guitar-fretboard-head{flex-direction:column}.guitar-fretboard-options{display:grid;width:100%;grid-template-columns:1fr;justify-content:stretch}.guitar-fretboard-options label{font-size:.8rem}.guitar-fretboard-legend{font-size:.72rem}}
@media(max-width:720px){.guitar-fingering-toolbar{align-items:flex-start;flex-direction:column;gap:5px}.guitar-fingering-toggle{width:100%}.guitar-fingering-options{padding-bottom:10px}}
.brandmark{width:52px;height:52px;display:grid;place-items:center;border:1px solid #ffffff45;border-radius:50%;font-family:serif;font-size:23px;color:#ffc66f;background:#ffffff0b}
h1,h2,h3,p{margin:0}.topbar h1{font-family:Georgia,serif;font-size:1.5rem;letter-spacing:.02em}.topbar p{color:#c8c8e3;font-size:.9rem;margin-top:2px}
main{width:100%;max-width:1500px;margin:auto;padding:24px clamp(14px,3vw,42px) 48px}#ragasMain{display:grid;gap:14px}#ragasMain[hidden]{display:none!important}#ragasMain>.workspace{margin-top:0}
.control-deck{display:grid;grid-template-columns:minmax(130px,.65fr) minmax(250px,1.7fr) repeat(3,minmax(120px,.7fr));gap:14px;padding:15px;background:#ffffffbd;border:1px solid #e0e0e8;border-radius:18px;box-shadow:0 9px 30px rgba(40,39,82,.06);backdrop-filter:blur(12px)}
.field{display:flex;flex-direction:column;gap:7px;color:var(--muted);font-size:.82rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;position:relative}
.tonic-field{min-width:170px}.tonality-context{color:var(--indigo);font-size:.78rem;font-weight:850;letter-spacing:0;text-transform:none;white-space:nowrap}
select{width:100%;padding:0 13px;border:1px solid #cfcfdb;border-radius:11px;background:#fff;color:var(--ink);font-weight:650;text-transform:none;letter-spacing:0}
.raga-picker{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:6px}.search-button{min-width:44px;border:1px solid #cfcfdb;border-radius:11px;background:#fff;color:var(--indigo);display:grid;place-items:center}.search-button svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.search-button.active{background:var(--indigo);color:#fff}.raga-search-panel{position:absolute;z-index:20;left:0;right:0;top:100%;max-height:min(78vh,680px);overflow-y:auto;margin-top:5px;padding:7px;background:#fff;border:1px solid #d9d9e4;border-radius:12px;box-shadow:0 15px 35px #1717432b;text-transform:none;letter-spacing:0}.raga-search-panel input{width:100%;height:42px;border:1px solid #cfcfdb;border-radius:9px;padding:0 11px;color:var(--ink)}.raga-search-results{display:grid;max-height:250px;overflow-y:auto;margin-top:5px}.raga-search-result{min-height:38px;border:0;border-radius:7px;background:#fff;color:var(--ink);padding:7px 9px;text-align:left;font-size:.82rem;font-weight:700}.raga-search-result:hover,.raga-search-result:focus{background:var(--saffron-soft);outline:none}.raga-search-empty{padding:9px;color:var(--muted);font-size:.8rem}
.raga-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px}.raga-filter-toggle{min-height:42px;padding:0 13px;border:1px solid #cfcfdb;border-radius:9px;background:#fff;color:var(--indigo);font-size:.8rem;font-weight:800}.raga-filter-toggle.active{border-color:var(--saffron);background:var(--saffron-soft);color:#854b06}.raga-filter-panel{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:7px;padding:10px;border-radius:10px;background:#f7f7fa}.raga-filter-panel[hidden]{display:none}.raga-filter-panel label{display:grid;gap:4px;color:var(--muted);font-size:.7rem;font-weight:800}.raga-filter-panel select,.raga-filter-panel input{height:38px;padding-inline:9px;border:1px solid #cfcfdb;border-radius:9px;background:#fff;color:var(--ink);font-size:.78rem}.raga-filter-panel input.invalid{border-color:#c64b4b;background:#fff8f8}.raga-filter-wide,.raga-filter-hint{grid-column:1/-1}.raga-filter-hint{color:var(--muted);font-size:.64rem;line-height:1.35}.raga-filter-reset{grid-column:1/-1;min-height:36px;border:1px solid #d8d8e2;border-radius:8px;background:#fff;color:var(--indigo);font-weight:750}.raga-search-count{padding:7px 9px 3px;color:var(--muted);font-size:.72rem}.raga-search-result{display:grid;gap:2px}.raga-search-result b{font-size:.82rem}.raga-search-result small{color:var(--muted);font-size:.68rem;font-weight:650}
.raga-filter-fields{display:contents}.raga-filter-fields[hidden]{display:none}.raga-search-research{cursor:default;border-left:3px solid #d7a126;background:#fffaf0}.raga-search-research b{display:flex;align-items:center;gap:5px}.tradition-field{min-width:130px}
.segmented{display:flex;padding:3px;background:#ececf2;border-radius:11px}.segment{flex:1;border:0;border-radius:8px;background:transparent;color:#5e5e72;font-weight:700}.segment.active{color:white;background:var(--indigo-2);box-shadow:0 3px 9px #17174333}
.notation-toggles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));min-width:300px}.notation-toggles .segment{min-width:0;padding-inline:7px}
.notation-context-toggles{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:18px;padding:7px 9px 2px;border-top:1px solid var(--line);font-weight:700;color:var(--muted)}.notation-context-toggles label{display:inline-flex;align-items:center;gap:6px;cursor:pointer}.notation-context-toggles input{width:20px;height:20px;accent-color:var(--teal)}.context-lane-label{font-size:10px;font-weight:800;fill:#69697c}
.notation-card>.notation-context-toggles{position:relative;z-index:6;width:max-content;max-width:calc(100% - 28px);justify-content:flex-start;flex-wrap:wrap;gap:6px 12px;margin:8px 14px 4px;padding:4px 0;border:0;border-radius:0;background:transparent;box-shadow:none;font-size:.74rem;white-space:nowrap}
.notation-toggles--viewer{min-width:0;margin:0;padding:7px 14px;border-radius:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#f3f3f7}
.raga-viewer-head{display:flex;align-items:center;padding:8px 14px;border-bottom:1px solid var(--line);background:#fafafd}.raga-viewer-head .transport{width:100%;max-width:none;align-items:center;justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;margin-top:0}.raga-viewer-head .staff-zoom{margin-left:auto;flex:0 0 auto}.raga-viewer-head .staff-zoom button{min-width:34px;min-height:36px;padding:3px 6px;border:1px solid #d8d8e2;border-radius:9px;background:#fff;color:var(--indigo);font-weight:800}.raga-viewer-head .staff-zoom output{font-size:.72rem;font-weight:850;color:var(--muted)}
.tempo-field span{color:var(--indigo)} input[type=range]{width:100%;accent-color:var(--saffron)}
.tempo-control{display:grid;grid-template-columns:minmax(90px,1fr) 68px;gap:8px;align-items:center}.tempo-control input[type=number]{height:44px;width:100%;border:1px solid #cfcfdb;border-radius:10px;padding:0 7px;color:var(--ink);font-weight:750;background:#fff}
.workspace{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(315px,.75fr);gap:14px;min-width:0;margin-top:20px}.workspace.workspace--single-column{grid-template-columns:minmax(0,1fr)}.workspace.workspace--single-column .details-card{position:static}.workspace>*,.primary-column,.notation-card{min-width:0}.primary-column{display:grid;gap:14px;align-content:start}
.card{background:var(--card);border:1px solid #e1e1e8;border-radius:20px;box-shadow:var(--shadow)}.notation-card{overflow:hidden}
.workspace-section{min-width:0;overflow:hidden}.raga-info-panel,.raga-scale-panel,.raga-analysis-panel{padding:0}.raga-info-content{padding:0 14px 14px}.raga-scale-panel-content{padding:0 14px 14px}.raga-info-current{padding:15px 2px 8px}.raga-info-current h2{margin-top:3px;color:var(--indigo);font-family:Georgia,serif;font-size:clamp(1.35rem,2.2vw,2rem)}.raga-info-current .raga-path{max-width:none}.rhythm-panel{padding:0}.rhythm-panel-content{display:grid;gap:10px;padding:10px 14px 14px}.rhythm-panel-content .tempo-field{max-width:420px}.rhythm-panel-content .raga-rhythm-settings{padding:10px 12px;border:1px solid var(--line);border-radius:13px}.raga-melody-panel{display:block}.primary-column>.workspace-section>.secondary-panel-summary,.harmony-host>.workspace-section>.secondary-panel-summary,.raga-info-panel>.secondary-panel-summary,.raga-scale-panel>.secondary-panel-summary,.raga-analysis-panel>.secondary-panel-summary{box-sizing:border-box;width:calc(100% - 12px);min-height:46px;margin:6px;padding:7px 12px;border:1px solid #d8d8e2;border-radius:13px;background:#fff}.primary-column>.workspace-section[open]>.secondary-panel-summary,.harmony-host>.workspace-section[open]>.secondary-panel-summary,.raga-info-panel[open]>.secondary-panel-summary,.raga-scale-panel[open]>.secondary-panel-summary,.raga-analysis-panel[open]>.secondary-panel-summary{border-color:#9bc7c3;background:#f8fbfb}
.card-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:23px 24px 17px}.eyebrow{display:block;color:var(--saffron);font-size:.74rem;font-weight:850;letter-spacing:.14em}.card-heading h2{font-family:Georgia,serif;font-size:clamp(1.4rem,2.4vw,2.15rem);margin-top:4px;color:var(--indigo)}.raga-path{max-width:720px;margin-top:6px;color:#858595;font-size:.72rem;font-weight:650;line-height:1.4}
.transport{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end;max-width:520px}.icon-button{border:1px solid #d8d8e2;border-radius:11px;background:#fff;color:var(--indigo);padding:0 11px;font-weight:750}.icon-button.primary{background:var(--saffron);border-color:var(--saffron);color:#1d1830}.icon-button.active{color:#fff;background:var(--teal);border-color:var(--teal)}.icon-button:hover,.sequence-tab:hover,.detail-button:hover{transform:translateY(-1px)}
.sequence-tabs{display:flex;overflow-x:auto;padding:0 24px;border-bottom:1px solid var(--line);scrollbar-width:thin}.sequence-tab{white-space:nowrap;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--muted);padding:10px 15px;font-weight:750}.sequence-tab.active{color:var(--indigo);border-bottom-color:var(--saffron)}
.raga-rhythm-settings{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr);gap:10px 18px;padding:10px 24px;border-bottom:1px solid var(--line);background:#fafafd}.raga-rhythm-settings>label{display:grid;gap:6px;color:var(--muted);font-size:.82rem;font-weight:750}.raga-rhythm-settings select{width:100%;min-width:0;height:38px;border:1px solid #cfcfdb;border-radius:9px;padding:0 9px;background:#fff;color:var(--ink);font:inherit;font-size:.88rem}.raga-rhythm-volume span{display:flex;justify-content:space-between;gap:10px}.raga-rhythm-volume output{color:var(--teal)}.raga-rhythm-settings>.tala-rate-control{grid-column:1/-1}.raga-rhythm-info{grid-column:1/-1;min-width:0}.raga-rhythm-info .chord-tala-about{margin-bottom:0}
.raga-rhythm-delete{align-self:end;min-height:38px;border-color:#b53a35!important;background:#fff!important;color:#9b241d!important}
.mix-layer-toggle{display:inline-flex!important;align-items:center;gap:7px;color:var(--teal)!important;font-size:.82rem;font-weight:800;white-space:nowrap}.mix-layer-toggle input{width:18px;height:18px;margin:0;accent-color:var(--teal)}.raga-rhythm-settings>.mix-layer-toggle{grid-column:1/-1;justify-self:start}.mix-layer-toggle--summary{margin-left:auto}
.tala-rate-control{display:grid;grid-template-columns:minmax(0,1fr) 42px 58px 42px;align-items:center;gap:6px;min-width:0;color:var(--muted);font-size:.875rem;font-weight:700}.tala-rate-control button{min-width:42px;min-height:38px;padding:5px;border:1px solid #cfcfdb;border-radius:9px;background:#fff;color:var(--indigo);font-size:1.05rem;font-weight:800}.tala-rate-control button:disabled{opacity:.4}.tala-rate-control output{display:grid;place-items:center;min-height:38px;border-radius:9px;background:var(--indigo);color:#fff;font-variant-numeric:tabular-nums;font-weight:850}
.tabla-tuning-controls{grid-column:1/-1;display:grid;grid-template-columns:minmax(160px,1fr) minmax(220px,1fr);gap:10px 18px;padding:10px;border:1px solid #dcdce8;border-radius:12px;background:#fff}.tabla-drum-tuning{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}.tabla-tuning-controls label{display:grid;gap:6px;color:var(--muted);font-size:.82rem;font-weight:750}.tabla-tuning-controls label>span{display:flex;justify-content:space-between;gap:10px}.tabla-tuning-controls output{color:var(--teal);font-variant-numeric:tabular-nums}.tabla-octave-control{display:grid;grid-template-columns:38px 42px 38px;gap:4px;align-items:end}.tabla-octave-control>span{grid-column:1/-1;color:var(--muted);font-size:.82rem;font-weight:750}.tabla-octave-control button{min-width:38px;min-height:44px;padding:0;border:1px solid #cfcfdb;border-radius:10px;background:#fff;color:var(--indigo);font-size:1.05rem;font-weight:850}.tabla-octave-control button:disabled{opacity:.38}.tabla-octave-control output{display:grid;place-items:center;min-height:44px;border-radius:10px;background:#f1f1f6;color:var(--teal);font-weight:850}
.trajectory-toolbar{display:flex;align-items:center;gap:8px;padding:8px 24px;border-bottom:1px solid #ececf2;background:#fafafd;overflow-x:auto}.trajectory-toolbar button{min-height:34px;padding:5px 9px;border:1px solid #d8d8e2;border-radius:8px;background:#fff;color:var(--indigo);font-size:.78rem;font-weight:750;white-space:nowrap}.trajectory-toolbar button:disabled{opacity:.38;cursor:default}.trajectory-button.active{background:var(--teal);border-color:var(--teal);color:#fff}.trajectory-smooth:not(:disabled){border-color:#d99232;color:#9b5700;background:#fffaf2}.trajectory-status{color:var(--muted);font-size:.75rem;white-space:nowrap}.staff-zoom,.trajectory-actions{display:flex;align-items:center;gap:5px}.staff-zoom{padding-left:3px}.staff-zoom button{min-width:34px}.staff-zoom output{display:block;min-width:38px;text-align:center}.trajectory-actions{margin-left:auto}
.trajectory-toolbar--below-staff{border-top:1px solid #ececf2}
.sequence-text{min-height:38px;margin:0;overflow-x:auto;padding:14px 24px 5px;color:#343449;font-weight:650;overscroll-behavior-x:contain}.sequence-degree-table{width:max-content;min-width:min(100%,760px);border-collapse:collapse;line-height:1.35}.sequence-degree-table th{position:sticky;left:0;z-index:1;min-width:170px;padding:3px 10px 3px 0;background:#fff;color:var(--indigo);font-size:.86rem;text-align:left;white-space:nowrap}.sequence-degree-table td{min-width:34px;padding:3px 4px;text-align:center}.sequence-degree-token{font-weight:850}.sequence-degree-token.role-tanpura{color:#c28200}.sequence-degree-token.role-vadi{color:#d83232}.sequence-degree-token.role-samvadi{color:#299a58}.sequence-degree-token.role-tanpura.role-vadi,.sequence-degree-token.role-tanpura.role-samvadi,.sequence-degree-token.role-vadi.role-samvadi{background:linear-gradient(90deg,#c28200 0 50%,#d83232 50% 100%);background-clip:text;-webkit-background-clip:text;color:transparent}.sequence-degree-token.role-tanpura.role-samvadi{background-image:linear-gradient(90deg,#c28200 0 50%,#299a58 50% 100%)}.sequence-degree-token.role-vadi.role-samvadi{background-image:linear-gradient(90deg,#d83232 0 50%,#299a58 50% 100%)}.sequence-degree-token.role-tanpura.role-vadi.role-samvadi{background:linear-gradient(90deg,#c28200 0 33.33%,#d83232 33.33% 66.66%,#299a58 66.66% 100%);background-clip:text;-webkit-background-clip:text;color:transparent}.sequence-role-vadi{color:#d83232;font-weight:900}.sequence-role-samvaadi{color:#299a58;font-weight:900}.staff-scroll{width:100%;max-width:100%;min-width:0;height:var(--staff-viewport-height,215px);overflow:auto;padding:4px 20px 10px;box-sizing:border-box;overscroll-behavior:contain}.staff-scroll svg{display:block;height:205px;min-width:100%;max-width:none;background:linear-gradient(#fff,#fdfdfb);border-radius:12px;touch-action:pan-x pan-y;user-select:none;-webkit-user-select:none}.note-group{cursor:crosshair}.selection-range{fill:#167d7915;stroke:#167d7970;stroke-width:1.5}.note-group.selected .notehead{fill:var(--teal)}
.staff-scroll.trajectory-active,.staff-scroll.trajectory-active svg{touch-action:none;-webkit-user-select:none;user-select:none;overscroll-behavior:contain}.staff-scroll.trajectory-active{overflow-x:hidden}.staff-scroll svg.trajectory-mode{cursor:crosshair}.staff-scroll svg.trajectory-mode .note-group,.trajectory-edit-hit{touch-action:none}.staff-line{stroke:#48485e;stroke-width:1.25}.ledger{stroke:#48485e;stroke-width:1.4}.barline{stroke:#88889a}.playback-cursor{stroke:var(--saffron);stroke-width:2;stroke-dasharray:3 2;pointer-events:none}.playback-cursor-tip{fill:var(--saffron);pointer-events:none}.clef{font-family:"Noto Music","Bravura Text",serif;font-size:72px;fill:var(--indigo)}.notehead{fill:var(--indigo);transition:.15s}.note-label{font-size:14px;font-weight:800;fill:#323249}.pitch-label{font-size:11px;fill:#7b7b8c}.accidental{font-size:22px;fill:var(--indigo)}.note-group.active .notehead{fill:var(--saffron);filter:drop-shadow(0 0 5px #e28a1788)}.note-group.active .note-label{fill:#bd6600}.trajectory-layer{pointer-events:none}.trajectory-halo{fill:none;stroke:#fff;stroke-width:8;stroke-linecap:round;stroke-linejoin:round;opacity:.9}.trajectory-path{fill:none;stroke:var(--saffron);stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.trajectory-edit-hit{fill:none;stroke:transparent;stroke-width:24;pointer-events:stroke;cursor:grab}.trajectory-anchor{fill:var(--saffron);stroke:#fff;stroke-width:2}.trajectory-extreme-ledger{stroke:var(--saffron);stroke-width:1.5;opacity:.72}.trajectory-group.draft .trajectory-path{stroke:var(--teal);stroke-dasharray:5 3}.trajectory-group.draft .trajectory-anchor{fill:var(--teal)}.trajectory-cursor-ledger{stroke:var(--teal);stroke-width:1.7}.trajectory-cursor-label{fill:var(--indigo);stroke:#fff;stroke-width:1}.trajectory-cursor-text{fill:#fff;font-size:11px;font-weight:850;text-anchor:middle;dominant-baseline:middle}
.trajectory-mode .trajectory-group:not(.selected):not(.draft) .trajectory-path,.trajectory-mode .trajectory-group:not(.selected):not(.draft) .trajectory-anchor{opacity:.62}.trajectory-mode .trajectory-group.selected .trajectory-halo{stroke:#f5d9af;stroke-width:10}
.note-group.role-vadi .note-label,.note-group.role-vadi .pitch-label{fill:#d83232}.note-group.role-samvaadi .note-label,.note-group.role-samvaadi .pitch-label{fill:#299a58}
.note-group.role-vadi .notehead{fill:#d83232}.note-group.role-samvaadi .notehead{fill:#299a58}
.section-marker{font-size:15px;font-weight:900;fill:var(--teal)}.movement-line{stroke:#b9b9c8;stroke-width:1;stroke-dasharray:3 3}.variant-barline{stroke:var(--indigo);stroke-width:2}
.empty-staff{font-size:15px;fill:#747487}.notation-legend{display:flex;flex-wrap:wrap;align-items:center;gap:7px 15px;padding:11px 24px 18px;border-top:1px solid #eeeef2;color:var(--muted);font-size:.82rem}.legend-item b{color:var(--ink)}.role-key{display:inline-flex;align-items:center;gap:5px;font-weight:750;color:var(--ink)}.role-dot{width:9px;height:9px;border-radius:50%;box-shadow:0 0 0 1px #fff,0 0 0 2px #d8d8e0}.vadi-dot{background:#d83232}.samvaadi-dot{background:#299a58}
.secondary-panel{min-width:0}.secondary-panel-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:38px;padding:7px 14px;cursor:pointer;list-style:none;color:var(--indigo);font-weight:800}.secondary-panel-summary::-webkit-details-marker{display:none}.secondary-panel-summary::after{content:'⌄';color:var(--teal)}.secondary-panel[open]>.secondary-panel-summary::after{transform:rotate(180deg)}.instrument-panel{border-top:1px solid #eeeef2;background:#f7f7fa}.instrument-panel .secondary-panel-summary span{margin-left:auto;color:var(--muted);font-size:.75rem;font-weight:650}.note-mixer{display:flex;gap:24px;flex-wrap:wrap;padding:8px 14px 12px;background:#f7f7fa;border-top:1px solid #eeeef2}.note-mixer label,.drone-controls label{display:grid;grid-template-columns:auto auto;gap:3px 12px;min-width:190px;font-size:.78rem;font-weight:720}.note-mixer label span,.drone-controls label span{text-align:right;color:var(--teal)}.note-mixer input,.note-mixer select,.drone-controls input{grid-column:1/-1}.note-mixer select{height:34px;min-height:34px;font-size:.82rem}
.range-control{display:flex;align-items:center;gap:10px;margin-left:auto;font-size:.78rem;color:var(--muted)}.range-control b{color:var(--teal)}.range-control button{min-height:36px;border:1px solid #d8d8e2;border-radius:9px;background:#fff;color:var(--indigo);font-weight:720}
.tanpura-card{display:block;padding:0;background:#fff;color:var(--indigo);overflow:hidden}.tanpura-summary{color:var(--indigo)}.tanpura-expanded{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:4px 22px 16px;border-top:1px solid var(--line)}.tanpura-copy{display:flex;align-items:center;min-width:0}.tanpura-card h3{font-family:Georgia,serif;font-size:1.25rem;margin:2px 0}.tanpura-card p{margin-top:9px;font-size:.84rem;color:var(--muted)}.drone-strings{display:flex;flex-wrap:wrap;gap:7px 18px;margin-top:11px}.drone-degree{display:flex;align-items:center;gap:6px;color:var(--indigo);font-size:.78rem;font-weight:750;cursor:pointer}.drone-degree input{width:16px;height:16px;margin:0;accent-color:var(--saffron)}.drone-degree-copy{display:grid;gap:2px;line-height:1;text-align:center;min-width:24px}.drone-sargam{font-size:.8rem;color:var(--indigo)}.drone-degree-number{font-size:.68rem;color:#a86800;font-weight:800}.drone-note{font-size:.66rem;color:var(--muted);font-weight:700;white-space:nowrap}.drone-degree.extra .drone-sargam::before{content:'('}.drone-degree.extra .drone-sargam::after{content:')'}.tanpura-timing-controls{display:grid;grid-template-columns:minmax(190px,1fr) minmax(200px,1.15fr);align-items:end;gap:8px 14px;margin-top:12px;padding:10px;border:1px solid #e5e2d8;border-radius:12px;background:#faf9f5}.tanpura-timing-controls>label{display:grid;gap:4px;color:var(--muted);font-size:.73rem;font-weight:750}.tanpura-timing-controls select{height:34px;min-height:34px}.tanpura-timing-controls label>span{color:var(--teal)}.tanpura-timing-controls .tanpura-humanize{display:flex;align-items:center;gap:7px;color:var(--indigo)}.tanpura-humanize input{width:17px;height:17px;accent-color:var(--saffron)}.tanpura-timing-controls small{grid-column:1/-1;color:var(--muted);font-size:.7rem;line-height:1.3}.drone-controls{display:flex;align-items:center;justify-content:flex-end;gap:16px;flex-wrap:wrap}.drone-controls label{color:var(--muted)}.drone-controls label span{color:var(--teal)}.tanpura-button{border:1px solid var(--line);border-radius:12px;padding:0 15px;background:#fff;color:var(--indigo);font-weight:750}.tanpura-button.on{background:var(--saffron);color:#201a2b;border-color:var(--saffron)}.pulse{display:inline-block;width:8px;height:8px;border-radius:50%;background:#aaa;margin-right:6px}.on .pulse{background:#fff;box-shadow:0 0 0 5px #ffffff35}

.harmony-progression-panel .harmony-progression-heading-actions .mix-layer-toggle{display:none!important}
.chord-analysis-card{padding:0;overflow:hidden}.chord-analysis-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px}.chord-analysis-card[open]>.chord-analysis-heading{border-bottom:1px solid var(--line)}.chord-analysis-heading h3{margin-top:1px;color:var(--indigo);font-family:Georgia,serif;font-size:.92rem;white-space:nowrap}.chord-analysis-heading .eyebrow{font-size:.75rem}.chord-analysis-grid{display:grid;grid-template-columns:repeat(3,minmax(235px,1fr));gap:8px;margin-top:7px;overflow-x:auto;overscroll-behavior-inline:contain;padding:0 14px 12px}.chord-sound-group{padding:6px 8px;border-radius:9px;background:#fafafc;border:1px solid #ececf2}.chord-sound-group h4{margin-bottom:5px;color:var(--teal);font-size:.75rem;white-space:nowrap}.chord-tone-rows{display:grid;gap:3px}.chord-tone-row{display:grid;grid-template-columns:62px minmax(0,1fr);align-items:center;gap:4px;min-height:20px}.chord-tone-row>b{color:var(--muted);font-size:.75rem}.chord-tone-values{display:flex;flex-wrap:nowrap;gap:3px;min-width:0}.chord-tone{min-width:27px;padding:3px 5px;border-radius:6px;background:#f0f0f5;color:var(--ink);text-align:center;font-size:.75rem;font-weight:800;line-height:1.1;white-space:nowrap}.chord-tone.empty{min-width:0;color:var(--muted);font-weight:650}.chord-tone.tone-vadi{background:#fff0f0;color:#d83232}.chord-tone.tone-samvaadi{background:#eefaf2;color:#299a58}.chord-result{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:.75rem;white-space:nowrap}.chord-result strong{padding:5px 8px;border-radius:7px;background:var(--saffron-soft);color:var(--indigo);font-size:.84rem;white-space:nowrap}.remaining-tones{display:contents}
.details-card{padding:0;align-self:start;position:sticky;top:18px}.details-heading{padding:12px 16px;border-bottom:0}.details-card[open]>.details-heading{border-bottom:1px solid var(--line)}.details-heading h3{font-family:Georgia,serif;font-size:1.1rem;color:var(--indigo)}.page-chip{display:none}
.detail-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:15px}.detail-button{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:46px;padding:8px 11px;border:1px solid #dfdfe8;border-radius:10px;background:#fff;color:#323248;text-align:left;font-size:.88rem;font-weight:720;transition:.15s}.detail-button::after{content:"›";font-size:20px;color:#aaa}.detail-button.active{border-color:#efac4f;background:var(--saffron-soft);color:#743d00}.detail-panel{margin-top:14px;padding:15px;border-left:3px solid var(--saffron);border-radius:4px 11px 11px 4px;background:#f7f7fa;min-height:95px;color:#38384b}.detail-panel strong{display:block;margin-bottom:6px;color:var(--indigo)}.detail-panel p+small{display:block;margin-top:9px;color:var(--teal);font-weight:700}
.detail-list{display:grid;gap:6px;padding:10px 16px 14px}.detail-list-row{display:grid;grid-template-columns:minmax(90px,.45fr) minmax(0,1fr);gap:8px;padding-bottom:6px;border-bottom:1px solid #ececf2;font-size:.82rem;line-height:1.35}.detail-list-row b{color:var(--indigo)}.detail-list-row span{min-width:0;color:#38384b}
.provenance-detail{margin-top:12px;border-top:1px solid #dddde7;padding-top:9px;font-size:.76rem}.provenance-detail summary{cursor:pointer;color:var(--indigo);font-weight:750}.provenance-detail ul{margin:8px 0 0;padding-left:18px}.provenance-detail li+li{margin-top:6px}.provenance-detail a{color:var(--teal)}.provenance-source-value{padding:7px 9px;border-radius:7px;background:#fff;color:#343449;white-space:pre-wrap}.provenance-status,.data-kind{display:inline-block;margin-left:5px;padding:2px 6px;border-radius:12px;background:#e9e9f1;color:#55556b;font-size:.62rem;font-weight:800;letter-spacing:.04em}.provenance-status.source_verified,.provenance-status.cross_verified,.data-kind.source{background:#ddf3ea;color:#17694f}.provenance-status.computed,.data-kind.computed{background:#e5e8ff;color:#353e88}.provenance-status.disputed{background:#ffe4dc;color:#9b351e}.provenance-status.pending,.provenance-status.pending_transcription{background:#fff0c9;color:#825800}.raga-path-line{align-items:center}.data-kind{vertical-align:middle}.carnatic-research-panel{margin-top:16px;border-top:1px solid var(--line);padding-top:12px}.carnatic-research-panel details+details{margin-top:8px}.carnatic-research-panel summary{cursor:pointer;color:var(--indigo);font-size:.8rem;font-weight:800}.carnatic-research-panel ul{margin:8px 0 0;padding-left:18px;font-size:.74rem}.carnatic-research-panel li+li{margin-top:8px}.carnatic-card-meta{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:8px}.carnatic-source-note{color:var(--muted);font-size:.76rem}.carnatic-hidden{display:none!important}
.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);opacity:0;pointer-events:none;padding:10px 16px;border-radius:30px;background:#191936;color:#fff;box-shadow:0 8px 28px #0003;transition:.2s}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:980px){.control-deck{grid-template-columns:1fr 1fr}.workspace{grid-template-columns:1fr}.details-card{position:static}.tanpura-expanded{flex-wrap:wrap}}
@media(max-width:620px){.topbar{height:76px;padding:0 16px}.brandmark{width:44px;height:44px}main{padding:14px 10px 34px}.control-deck{grid-template-columns:1fr;border-radius:15px}.raga-info-content,.raga-scale-panel-content{padding-inline:9px}.rhythm-panel-content{padding-inline:9px}.card-heading{padding:18px 16px 12px;display:block}.transport{justify-content:flex-start;margin-top:14px}.sequence-tabs{padding:0 9px}.raga-rhythm-settings{grid-template-columns:1fr;padding:8px 12px}.tabla-tuning-controls{grid-template-columns:1fr}.raga-rhythm-info{grid-column:1}.raga-viewer-head{padding:7px}.raga-viewer-head .transport{display:flex;width:100%;gap:4px;overflow:visible}.raga-viewer-head .transport>.icon-button{flex:1 1 30px;min-width:0;padding-inline:3px}.raga-viewer-head .staff-zoom{display:grid;grid-template-columns:30px 40px 30px;gap:2px;margin-left:auto;padding-left:0}.raga-viewer-head .staff-zoom button{min-width:0;padding-inline:2px}.trajectory-toolbar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:5px 7px;overflow:visible}.trajectory-toolbar button{min-width:0;padding-inline:3px;font-size:.72rem}.trajectory-toolbar>button{width:100%}.trajectory-status{display:none}.sequence-text{padding:12px 16px 3px}.staff-scroll{padding-inline:8px}.notation-legend{padding-inline:16px}.tanpura-card{padding:0}.tanpura-expanded{padding:3px 14px 12px}.tanpura-timing-controls{grid-template-columns:1fr}.tanpura-timing-controls small{grid-column:auto}.chord-analysis-card{padding:0}.chord-analysis-grid{padding-inline:10px}.drone-controls{width:100%;justify-content:space-between}.chord-analysis-heading{align-items:flex-start}.chord-analysis-heading h3{font-size:.8rem}.chord-result span{display:none}.details-card{padding:0}.detail-list-row{grid-template-columns:1fr}.icon-button span{display:none}.staff-scroll svg{height:190px}}
@media(orientation:landscape) and (max-height:600px){
  .topbar{height:42px;padding:0 12px;border-bottom-width:2px}.brandmark{width:30px;height:30px;font-size:16px}.topbar h1{font-size:1rem}.topbar p{display:none}
  main{max-width:none;padding:5px 7px 20px}.control-deck{display:flex;gap:6px;overflow-x:auto;padding:5px 7px;border-radius:10px}.control-deck .field{min-width:112px;gap:2px;font-size:.64rem}.control-deck .raga-field{min-width:220px}.control-deck select,.tempo-control input[type=number]{min-height:32px;height:32px;padding-inline:7px;font-size:.76rem}.segmented{padding:1px}.segment{min-height:30px;font-size:.72rem}.tempo-control{grid-template-columns:88px 54px;gap:4px}.control-deck input[type=range]{height:16px}
  .workspace{display:block;margin-top:5px}.card{border-radius:11px;box-shadow:none}.card-heading{display:flex;align-items:center;padding:5px 9px;gap:8px}.card-heading h2{font-size:1rem;margin-top:0;white-space:nowrap;max-width:280px;overflow:hidden;text-overflow:ellipsis}.raga-path{max-width:360px;margin-top:2px;font-size:.6rem;white-space:normal;overflow:visible}.raga-path-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.eyebrow{font-size:.56rem}.transport{max-width:none;gap:4px;flex-wrap:nowrap;overflow-x:auto}.icon-button{min-width:32px;min-height:30px;height:30px;padding:0 7px;font-size:.72rem}.icon-button span{display:none}
  .sequence-tabs{padding:0 4px}.sequence-tab{min-height:30px;padding:3px 9px;font-size:.7rem}.trajectory-toolbar{padding:3px 5px}.trajectory-toolbar button{min-height:28px;padding:3px 7px;font-size:.68rem}.sequence-text{min-height:24px;padding:3px 9px 1px;font-size:.7rem;white-space:nowrap;overflow-x:auto}.staff-scroll{height:218px;padding:0 5px 2px}.staff-scroll svg{height:calc(var(--staff-mobile-height,112px) * var(--staff-zoom,1))!important}.notation-legend{min-height:26px;max-height:30px;overflow-x:auto;flex-wrap:nowrap;white-space:nowrap;padding:4px 9px;font-size:.68rem}.note-mixer{flex-wrap:nowrap;overflow-x:auto;gap:12px;padding:4px 9px}.note-mixer label{min-width:150px;grid-template-columns:auto auto;font-size:.66rem}.note-mixer input{height:13px}.range-control{min-width:260px;font-size:.66rem}.range-control button{min-height:28px;font-size:.66rem}
  .tanpura-card,.details-card{margin-top:7px}.tanpura-card{padding:8px 10px}.tanpura-card p{display:none}.drone-strings{margin-top:3px}.details-card{position:static}.primary-column{gap:7px}
}

/* Sound-role colors: Vadi, Samvadi, Tanpura and their overlaps. */
.chord-tone.tone-vadi{background:#ffe4e1;color:#b32d28}
.chord-tone.tone-samvaadi{background:#e3f5e9;color:#23804f}
.chord-tone.tone-tanpura{background:#fff0ad;color:#795600}
.chord-tone.tone-vadi-tanpura{background:linear-gradient(90deg,#fff0ad 0 50%,#ffe4e1 50% 100%);color:#8f2d22}
.chord-tone.tone-samvaadi-tanpura{background:linear-gradient(90deg,#fff0ad 0 50%,#e3f5e9 50% 100%);color:#276b43}
.key-accidental{font-size:18px}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.note-role-legend{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:center;padding:8px 0;color:var(--indigo);font-size:.875rem;line-height:1.4}.note-role-legend span{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.note-role-legend i{display:inline-block;width:10px;height:10px;flex:0 0 10px;border-radius:50%}

/* Staff-space-scaled outlines, independent of device music fonts. */
.gp-music-glyph{color:var(--indigo)}
.rhythm-rest-icon .gp-music-glyph{color:inherit}
/* v226 consolidated project controls and in-card canonical instrument mixer */
.instrument-mixer-panel{border-top:1px solid #eeeef2;background:#f7f7fa}.instrument-mixer-panel>.secondary-panel-summary{min-height:42px}.instrument-voice-controls{display:grid;grid-template-columns:1fr 1fr;gap:6px 10px;padding:7px 12px;border-top:1px solid #e4e4ec}.instrument-voice-controls label{display:grid;grid-template-columns:max-content minmax(120px,1fr);align-items:center;gap:8px;font-size:.72rem;font-weight:750}.instrument-voice-controls .tanpura-instrument-control{grid-column:1/-1}.instrument-voice-controls select{height:30px;min-height:30px;font-size:.76rem}.embedded-instrument-mixer{padding:2px 12px 8px;border-top:1px solid #e4e4ec}.embedded-instrument-mixer .mixer-section{display:grid;grid-template-columns:76px minmax(0,1fr);align-items:center;gap:8px;margin:0;padding:4px 0;border:0;border-bottom:1px solid #e7e7ee;background:transparent;box-shadow:none}.embedded-instrument-mixer .mixer-section:last-child{border-bottom:0}.embedded-instrument-mixer .mixer-section h3{margin:0;color:#17173e;font-size:.74rem;line-height:1.1}.channel-strip{display:grid;grid-template-columns:1fr 1fr;gap:6px}.channel-strip label{display:grid;grid-template-columns:76px minmax(60px,1fr);align-items:center;gap:4px;font-size:.67rem}.channel-strip label>span{display:flex;justify-content:space-between;gap:4px;white-space:nowrap}.channel-strip output{color:#318278;font-weight:750}.channel-strip input[type=range]{width:100%;min-width:0;height:14px;margin:0}.notation-range-control{margin:0;padding:7px 12px;border-top:1px solid #eeeef2;background:#f7f7fa}
.raga-editor-switch{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;width:100%;margin:10px 0 0;padding:6px 8px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#f3f3f7}.raga-editor-switch button{min-width:0;min-height:42px;padding:.45rem .45rem;border:0;border-radius:9px;background:transparent;font-size:clamp(.72rem,2.3vw,.95rem);font-weight:800;color:#686879;line-height:1.15}.raga-editor-switch button.active{background:#17173e;color:#fff;box-shadow:0 3px 9px #17174333}.raga-melodic-movement-controls[hidden]{display:none!important}.raga-melodic-movement-controls{border-bottom:1px solid var(--line)}.raga-melodic-movement-controls .melodic-movement-panel{border:0;border-radius:0;box-shadow:none}.raga-workspace-dock.raga-melodic-movement-controls{border:0}.raga-workspace-dock.raga-melodic-movement-controls>.melodic-movement-panel{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 8px 24px #15153b0d}.raga-analysis-panel>.raga-workspace-dock>.sound-combination-panel--nested{margin:12px;border-radius:14px;box-shadow:none}.raga-analysis-panel>.raga-workspace-dock>.harmony-analysis-content{padding:2px 12px 10px}.raga-editor-mount{display:block!important;width:100%;margin:0;min-height:0}.raga-editor-mount #compositionContent{width:100%;min-height:0}.notation-card>.staff-scroll,.notation-card.editor-mode>.trajectory-toolbar--below-staff,.notation-card.editor-mode>#sequenceTabs,.notation-card.editor-mode>#sequenceText{display:none!important}.raga-top-sargam{font-weight:800}
.notation-toggles--viewer{gap:4px;padding:6px 8px}.notation-toggles--viewer .segment{min-height:42px;border-radius:9px}.sequence-tabs--viewer{width:100%;padding:0 8px;background:#fafafd}.sequence-tabs--viewer .sequence-tab{min-height:40px;padding:8px 12px}.raga-viewer-head{padding:6px 8px}.raga-viewer-head .transport{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:4px;overflow:visible}.raga-viewer-head .transport>.icon-button,.raga-viewer-head .staff-zoom button{width:100%;min-width:0;min-height:42px;height:42px;padding:3px;border-radius:9px}.raga-viewer-head .staff-zoom{display:contents}.raga-viewer-head .staff-zoom output{min-width:0;font-size:.72rem}
.notation-card.melodic-movement-mode>.trajectory-toolbar--below-staff,.notation-card.melodic-movement-mode>#sequenceTabs{display:none!important}
.tabla-drum-tuning{display:grid!important;grid-template-columns:minmax(112px,1fr) 52px auto!important;align-items:end!important;gap:.4rem!important}.tabla-drum-tuning .tabla-octave-control{grid-column:auto;grid-template-columns:36px 40px 36px;gap:3px}.tabla-octave-control>span{font-size:.72rem}.tabla-octave-control button{min-width:36px;min-height:42px}.tabla-octave-control output{min-height:42px}.tabla-mute{width:52px;height:42px;padding:0;border-radius:9px;font-size:.72rem;font-weight:800}.tabla-mute[aria-pressed="true"]{background:#17173e;color:white}
.drone-strings{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:.4rem}.drone-degree{min-width:0}
@media(max-width:720px){.topbar{flex-wrap:wrap}.main-menu{padding-inline:8px}.main-menu-item>summary{padding-inline:12px}.piano-monitor{--piano-white-width:30px;--piano-black-width:18px;--piano-black-half:9px}.piano-monitor-head{align-items:flex-start;flex-direction:column}.piano-layer-tabs{width:100%}.piano-layer-tabs button{flex:1;min-width:0;padding-inline:5px}.piano-keyboard{height:124px}.piano-key.white{height:122px}.piano-key.black{height:76px}.instrument-voice-controls{grid-template-columns:1fr}.embedded-instrument-mixer{padding-inline:8px}.embedded-instrument-mixer .mixer-section{grid-template-columns:62px minmax(0,1fr);gap:4px}.channel-strip{grid-template-columns:1fr 1fr;gap:4px}.channel-strip label{grid-template-columns:1fr;gap:1px}.channel-strip label>span{font-size:.62rem}.channel-strip input[type=range]{height:12px}.drone-strings{grid-template-columns:repeat(3,minmax(0,1fr))}.raga-editor-switch{width:100%;margin-top:6px}.raga-editor-switch button{min-height:40px}.tabla-drum-tuning{grid-template-columns:minmax(104px,1fr) 48px auto!important;gap:4px!important}.tabla-tuning-controls{padding:7px}.tabla-drum-tuning .tabla-octave-control{grid-template-columns:32px 36px 32px;gap:2px}.tabla-octave-control button{min-width:32px;min-height:40px}.tabla-octave-control output{min-height:40px}.tabla-mute{width:48px;height:40px}.raga-viewer-head .transport>.icon-button,.raga-viewer-head .staff-zoom button{min-height:40px;height:40px}.sequence-tabs--viewer{padding-inline:6px}.sequence-tabs--viewer .sequence-tab{padding-inline:10px}}

.instrument-monitor-mount:empty{display:none}.unique-instrument-monitor-mount:not(:empty){margin:12px 0}.piano-sequence-layers{display:flex;flex:1 1 560px;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:6px 12px}.piano-sequence-layers[hidden]{display:none}.piano-sequence-layers>span{padding:5px 9px;border-radius:8px;background:var(--teal);color:#fff;font-size:.8rem;font-weight:850}.piano-sequence-layers label{display:inline-flex;align-items:center;gap:5px;color:var(--indigo);font-size:.8rem;font-weight:800}.piano-sequence-layers label.disabled{color:#9999a8}.piano-sequence-layers input{width:18px;height:18px;accent-color:var(--teal)}
.piano-key.piano-scale-note::before,.piano-key.piano-unique-note::before,.piano-key.piano-scale-tonic::before{position:absolute;z-index:3;bottom:20px;left:50%;box-sizing:border-box;width:12px;height:12px;border:1px solid #777780;border-radius:50%;background:#fff;box-shadow:0 0 0 2px #fff9;content:"";transform:translateX(-50%);pointer-events:none}.piano-key.piano-unique-note::before{background:#a9a9b0}.piano-key.raga-note::before{border:1px solid #69aaa1;background:#bfe5df}.piano-key.raga-vadi::before{border:3px solid #d83232}.piano-key.raga-samvadi::before{border:3px solid #217a46}
.guitar-note-marker.is-trajectory-start::after,.piano-key.piano-trajectory-start::after{position:absolute;z-index:9;box-sizing:border-box;width:8px;height:8px;border:1px solid #fff;border-radius:1px;background:#4d35a6;box-shadow:0 0 0 1px #31216f;content:"";transform:rotate(45deg);pointer-events:none}.guitar-note-marker.is-trajectory-start::after{top:-3px;right:-3px}.piano-key.piano-trajectory-start::after{right:4px;bottom:5px}.piano-key.black.piano-trajectory-start::after{right:3px;bottom:5px}.guitar-legend-trajectory{width:9px!important;height:9px!important;margin:1px 2px;border:1px solid #fff!important;border-radius:1px!important;background:#4d35a6;box-shadow:0 0 0 1px #31216f;transform:rotate(45deg)}
.instrument-raga-filter{display:flex;align-items:center;gap:6px;min-width:0;flex-wrap:wrap}.raga-direction-filter{display:inline-flex;min-width:0;gap:3px;padding:3px;border:1px solid #d7d7e1;border-radius:10px;background:#f1f1f6}.raga-direction-filter button{min-height:32px;padding:5px 9px;border:0;border-radius:7px;background:transparent;color:var(--muted);font-size:.75rem;font-weight:800;white-space:nowrap}.raga-direction-filter button.active{background:var(--teal);color:#fff;box-shadow:0 2px 7px #17174328}.raga-direction-filter button:disabled{opacity:.45}.piano-sequence-layers .instrument-raga-filter{grid-column:1/-1}.guitar-fretboard-options>.instrument-raga-filter{justify-content:flex-end}
@media(max-width:720px){.piano-sequence-layers{display:grid;width:100%;justify-content:stretch}.piano-sequence-layers>span{text-align:center}.piano-sequence-layers label{min-height:34px}}
@media(max-width:720px){.instrument-raga-filter{align-items:stretch;flex-direction:column}.raga-direction-filter{display:grid;width:100%;grid-template-columns:minmax(0,1.7fr) repeat(2,minmax(0,1fr));box-sizing:border-box}.raga-direction-filter button{min-width:0;padding-inline:4px;white-space:normal}.guitar-fretboard-options>.instrument-raga-filter{justify-content:stretch}}

/* Compact shared instrument view and contain intrinsic keyboard/fretboard width. */
.instrument-monitor-mount{width:100%;max-width:100%;min-width:0;overflow:hidden}
.instrument-staff-monitor{max-width:100%;min-width:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}.instrument-staff-monitor[hidden]{display:none}.instrument-staff-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px clamp(14px,3vw,42px)}.instrument-staff-head>strong{color:var(--indigo)}.instrument-staff-options{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:7px 13px}.instrument-staff-options>label{display:inline-flex;align-items:center;gap:5px;color:var(--indigo);font-size:.8rem;font-weight:800}.instrument-staff-options>label.disabled{color:#9999a8}.instrument-staff-options input{width:18px;height:18px;accent-color:var(--teal)}.instrument-staff-scroll{max-width:100%;min-width:0;overflow-x:auto;padding:2px clamp(10px,2vw,28px) 5px;overscroll-behavior-x:contain}.instrument-staff-scroll svg{display:block;height:174px;min-width:720px;background:linear-gradient(#fff,#fdfdfb);border-radius:10px}.instrument-staff-line,.instrument-staff-ledger{stroke:#48485e;stroke-width:1.25}.instrument-staff-clef{fill:var(--indigo);font-family:"Noto Music","Bravura Text",serif;font-size:70px}.instrument-staff-empty{fill:var(--muted);font-size:14px}.instrument-staff-notehead{fill:#fff;stroke:#6f6f80;stroke-width:2}.instrument-staff-note.is-scale .instrument-staff-notehead{fill:#fff3cf;stroke:#bd8614}.instrument-staff-note.is-raga .instrument-staff-notehead{fill:#bfe5df;stroke:#31877e}.instrument-staff-note.is-scale.is-raga .instrument-staff-notehead{fill:#d8ead2}.instrument-staff-unique-ring{fill:none;stroke:#6d6d80;stroke-width:2;stroke-dasharray:2 2}.instrument-staff-note.is-vadi .instrument-staff-notehead{stroke:#d83232;stroke-width:4}.instrument-staff-note.is-samvadi .instrument-staff-notehead{stroke:#299a58;stroke-width:4}.instrument-staff-note.is-playing .instrument-staff-notehead{fill:var(--saffron);stroke:#8c5100;stroke-width:4;filter:drop-shadow(0 0 4px #e59a3488)}.instrument-staff-accidental{fill:var(--indigo);font-size:20px;font-weight:800}.instrument-staff-note-name{fill:#555568;font-size:11px;font-weight:750}.instrument-staff-trajectory{fill:#43358c;stroke:#fff;stroke-width:1}.instrument-staff-legend{display:flex;flex-wrap:wrap;gap:6px 14px;padding:7px clamp(14px,3vw,42px) 11px;color:var(--muted);font-size:.75rem;font-weight:750}.instrument-staff-legend span{display:inline-flex;align-items:center;gap:5px}.instrument-staff-legend i{display:inline-block;width:11px;height:11px;border:2px solid #777;border-radius:50%;background:#fff}.instrument-staff-legend .staff-legend-scale{border-color:#bd8614;background:#fff3cf}.instrument-staff-legend .staff-legend-unique{border-style:dashed}.instrument-staff-legend .staff-legend-raga{border-color:#31877e;background:#bfe5df}.instrument-staff-legend .staff-legend-vadi{border:3px solid #d83232}.instrument-staff-legend .staff-legend-samvadi{border:3px solid #299a58}.instrument-staff-legend .staff-legend-playing{border-color:#8c5100;background:var(--saffron)}
.piano-monitor,.guitar-fretboard-monitor,.piano-keyboard-scroll,.guitar-fretboard-scroll{max-width:100%;min-width:0}
.piano-keyboard-scroll,.guitar-fretboard-scroll{width:100%}
#pianoRagaNotesControl[hidden],#pianoLayerTabs[hidden],#pianoSequenceLayers[hidden]{display:none!important}
@media(max-width:720px){.piano-monitor-head{gap:5px;padding:8px 10px}.piano-sequence-layers{display:grid;flex:none;width:100%;justify-content:stretch;gap:2px}.piano-sequence-layers label{min-height:30px}}

/* Rhythm source tabs, synchronized mix switches and compact five-strip mixer. */
.rhythm-setting-tabs{grid-column:1/-1;display:flex;gap:4px;padding:3px;border-radius:10px;background:#ececf2}
.rhythm-setting-tabs button{flex:1;min-height:34px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-weight:800}
.rhythm-setting-tabs button.active{background:#fff;color:var(--indigo);box-shadow:0 2px 7px #17174324}
.rhythm-settings-panel{grid-column:1/-1}.rhythm-settings-panel--tabla{display:contents}
.rhythm-settings-panel--metronome{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr);align-items:end;gap:10px 18px}
.rhythm-settings-panel--metronome>label:not(.mix-layer-toggle){display:grid;gap:6px;color:var(--muted);font-size:.82rem;font-weight:750}
.rhythm-settings-panel[hidden]{display:none}.raga-viewer-head .transport{grid-template-columns:repeat(10,minmax(0,1fr))}.transport-mix-toggle{grid-column:span 2;justify-content:center;padding:0 5px}
.embedded-instrument-mixer .mixer-section{grid-template-columns:76px 66px minmax(0,1fr)}
.tabla-part-volumes{grid-column:1/-1;display:grid;grid-template-columns:minmax(160px,1fr) minmax(160px,1fr);gap:10px 18px}
.tabla-part-volumes label{display:grid;gap:6px;color:var(--muted);font-size:.82rem;font-weight:750}.tabla-part-volumes label>span{display:flex;justify-content:space-between;gap:10px}.tabla-part-volumes output{color:var(--teal)}
.embedded-instrument-mixer .mixer-section--tabla{align-items:start}.tabla-part-strip{grid-column:3;display:grid;grid-template-columns:1fr 1fr;gap:6px}.tabla-part-strip label{display:grid;grid-template-columns:76px minmax(60px,1fr);align-items:center;gap:4px;font-size:.67rem}.tabla-part-strip label>span{display:flex;justify-content:space-between;gap:4px;white-space:nowrap}.tabla-part-strip output{color:#318278;font-weight:750}.tabla-part-strip input[type=range]{width:100%;min-width:0;height:14px;margin:0}
.raga-rhythm-realization{flex:1 1 auto;color:var(--teal);font-size:.78rem;font-weight:800;text-align:center}
.mixer-layer-toggle{gap:4px!important;font-size:.66rem!important}.mixer-layer-toggle input{width:16px;height:16px}
@media(max-width:720px){.rhythm-settings-panel--metronome{grid-template-columns:1fr}.tabla-part-volumes{grid-template-columns:1fr}.embedded-instrument-mixer .mixer-section{grid-template-columns:62px 58px minmax(0,1fr)}.tabla-part-strip{grid-column:3;grid-template-columns:1fr 1fr;gap:4px}.tabla-part-strip label{grid-template-columns:1fr;gap:1px}.tabla-part-strip label>span{font-size:.62rem}.tabla-part-strip input[type=range]{height:12px}.raga-viewer-head .transport{grid-template-columns:repeat(9,minmax(0,1fr))}.transport-mix-toggle{grid-column:span 1;font-size:0!important}.transport-mix-toggle input{width:20px;height:20px}}

/* On phones the canonical Raga picker is part of the document flow. This lets
   Raga Info grow around the full filter form instead of overlaying Rhythm and
   the panels below it. Search results keep their own bounded scroll region. */
@media(max-width:620px){
  .raga-search-panel{position:static;z-index:auto;max-height:none;overflow:visible;margin-top:0}
  .raga-search-results{max-height:min(42vh,320px);overflow-y:auto}
}

.rhythm-panel-content .raga-matra-unit-field{max-width:420px}
.note-stem{stroke:var(--indigo);stroke-width:2.5}
.notehead.notation-open{fill:#fff;stroke:var(--indigo);stroke-width:2}
.note-group.selected .notehead.notation-open{fill:#fff;stroke:var(--teal)}
.note-group.selected .note-stem{stroke:var(--teal)}
.note-group.active .notehead{stroke:var(--saffron)}
.note-group.active .notehead.notation-open{fill:#fff}
.note-group.active .note-stem{stroke:var(--saffron)}
.note-group.role-vadi .notehead{stroke:#d83232}
.note-group.role-samvaadi .notehead{stroke:#299a58}
.note-group.role-vadi .notehead.notation-open,.note-group.role-samvaadi .notehead.notation-open{fill:#fff}
.note-group.role-vadi .note-stem{stroke:#d83232}
.note-group.role-samvaadi .note-stem{stroke:#299a58}

/* One canonical Raga Info selection with the bidirectional scale context. */
.raga-scale-context{margin:10px 12px 14px;padding:10px;border:1px solid #d9d9e4;border-radius:14px;background:#f8f9fa}
.raga-scale-context[hidden]{display:none}
.raga-scale-context-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:2px 4px 8px}
.raga-scale-context-heading h3{margin:2px 0 0;color:var(--indigo);font-size:1rem}
.raga-scale-context-heading small{max-width:48%;color:var(--teal);font-size:.78rem;font-weight:850;text-align:right}
.raga-scale-context .unique-link-section{margin:0;border-radius:12px;background:#fff;box-shadow:none}
.raga-scale-context--split{margin:0;padding:0;border:0;background:transparent}.raga-scale-context--split .unique-link-section[data-link-section="scale"]{border:0;background:transparent}.raga-scale-context--split .unique-link-section[data-link-section="scale"]>.secondary-panel-summary{display:none}.raga-scale-context--split .unique-link-section[data-link-section="scale"]>.unique-link-card{padding:0;border-top:0;box-shadow:none}.raga-scale-context--split .unique-link-section[data-link-section="scale"]>.unique-link-card>.unique-link-actions{display:none}.raga-scale-context--split .unique-link-section[data-link-section="raga"]{display:none}.raga-workspace-dock:empty{display:none}
.raga-scale-context .unique-link-section+.unique-link-section,.raga-scale-context .unique-same-note-ragas{margin-top:8px}
.raga-scale-context .unique-family-list,.raga-scale-context .unique-same-note-list{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:5px}
.raga-scale-context .unique-family-row,.raga-scale-context .unique-same-note-option{flex:0 0 min(300px,82vw);scroll-snap-align:start}
.raga-info-scale-raga-options[hidden],.raga-info-same-note-host:empty{display:none}.raga-related-group{margin-top:10px;border:1px solid var(--line);border-radius:13px;background:#fff;overflow:hidden}.raga-related-heading{box-sizing:border-box;display:flex;align-items:center;gap:10px;width:calc(100% - 12px);min-height:48px;margin:6px;padding:8px 12px;border:1px solid #d8d8e2;border-radius:10px;background:#fff;color:var(--indigo);font-weight:800;cursor:pointer;list-style:none}.raga-related-heading::-webkit-details-marker{display:none}.raga-related-heading small{margin-left:auto;color:var(--muted);font-size:.75rem}.raga-related-heading::after{content:'⌄';color:var(--teal)}.raga-related-group[open]>.raga-related-heading{border-color:#9bc7c3;background:#f8fbfb}.raga-related-group[open]>.raga-related-heading::after{transform:rotate(180deg)}.raga-related-body{padding:0 10px 10px}.raga-related-list{display:flex;gap:9px;overflow-x:auto;overflow-y:hidden;padding:0 10px 10px;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.raga-related-body>.raga-related-list{padding-inline:0}.raga-related-group .raga-related-list>.unique-family-row,.raga-related-group .raga-related-list>.unique-same-note-option{box-sizing:border-box;display:flex;flex:0 0 min(300px,82vw);min-height:190px;flex-direction:column;scroll-snap-align:start}.raga-related-group .unique-family-row>span,.raga-related-group .unique-same-note-option>span{margin-top:auto;padding-top:8px}.raga-related-group .unique-variant-filter-toolbar{margin:10px 0}.raga-related-group .unique-variant-filter-panel{margin:0 0 10px}
.raga-info-characteristics{position:static;margin-top:10px;border:1px solid var(--line);border-radius:13px;background:#fff;overflow:hidden}.raga-info-characteristics>.secondary-panel-summary{box-sizing:border-box;width:calc(100% - 12px);min-height:48px;margin:6px;padding:8px 12px;border:1px solid #d8d8e2;border-radius:10px}.raga-info-characteristics[open]>.secondary-panel-summary{border-color:#9bc7c3;background:#f8fbfb}
@media(max-width:620px){.raga-scale-context{margin-inline:0;padding:7px}.raga-scale-context--split{padding:0}.raga-scale-context-heading{align-items:flex-start;flex-direction:column}.raga-scale-context-heading small{max-width:none;text-align:left}.raga-related-group .unique-family-row,.raga-related-group .unique-same-note-option{flex-basis:min(300px,86vw);min-height:190px}}

/* The transport belongs to the whole Raga workspace and remains visible while
   the individual notation, piano and fretboard views scroll underneath. */
.raga-transport-dock{position:-webkit-sticky;position:sticky;z-index:60;top:0;align-self:start;padding:7px;border:1px solid #d9d9e4;border-radius:0 0 14px 14px;background:#fafafdf5;box-shadow:0 7px 20px #1717431f;backdrop-filter:blur(12px)}
.raga-transport-dock .transport{display:grid;width:100%;max-width:none;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;margin:0}
.raga-transport-dock .icon-button{width:100%;min-width:0;min-height:42px;padding:3px 7px}
.transport-mixer-panel{margin:0 0 6px;border:1px solid #d9d9e4;border-radius:11px;background:#fff;overflow:hidden}
.transport-mixer-panel>.secondary-panel-summary{box-sizing:border-box;width:100%;min-height:40px;margin:0;padding:7px 11px;border:0;background:#fff;color:var(--indigo)}
.transport-mixer-panel[open]>.secondary-panel-summary{border-bottom:1px solid var(--line);background:#f8fbfb}
.transport-mixer-panel .transport-mixer-content{display:grid;gap:9px;max-height:min(68vh,620px);overflow-y:auto;padding:9px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.transport-mixer-panel .audio-state{color:var(--teal);-webkit-text-fill-color:var(--teal)}
.mixer-master-controls,.instrument-voice-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:9px;border:1px solid var(--line);border-radius:10px;background:#fafafd}
.mixer-master-controls label,.instrument-voice-controls label{display:grid;gap:5px;color:var(--muted);font-size:.76rem;font-weight:750}
.mixer-master-controls label:first-child{grid-column:1/-1}.mixer-master-controls input[type=range]{width:100%}.mixer-master-controls output{color:var(--teal)}
.raga-analysis-panel--nested{margin-top:10px;border:1px solid var(--line);border-radius:13px;background:#fff;box-shadow:none}
.raga-analysis-panel--nested>.secondary-panel-summary{box-sizing:border-box;width:calc(100% - 12px);min-height:48px;margin:6px;padding:8px 12px;border:1px solid #d8d8e2;border-radius:10px}
.raga-analysis-panel--nested[open]>.secondary-panel-summary{border-color:#9bc7c3;background:#f8fbfb}

/* Each visual instrument owns its zoom; the score keeps its existing zoom in
   the score toolbar instead of borrowing space in the transport. */
.instrument-display-zoom{display:grid;grid-template-columns:36px 56px 36px;gap:3px;flex:0 0 auto}
.instrument-display-zoom button{display:grid;min-width:0;min-height:36px;place-items:center;padding:3px;border:1px solid #d8d8e2;border-radius:9px;background:#fff;color:var(--indigo);font-weight:850}
.instrument-display-zoom output{font-size:.72rem;font-weight:850;color:var(--muted);pointer-events:none}
.piano-monitor{--piano-zoom:1;--piano-white-width:calc(36px * var(--piano-zoom));--piano-black-width:calc(22px * var(--piano-zoom));--piano-black-half:calc(11px * var(--piano-zoom))}
.piano-keyboard{height:calc(142px * var(--piano-zoom))}
.piano-key.white{height:calc(140px * var(--piano-zoom))}
.piano-key.black{height:calc(88px * var(--piano-zoom))}
.guitar-fretboard-monitor{--guitar-zoom:1}

@media(max-width:720px){
  .raga-transport-dock{margin-inline:-2px;padding:5px;border-radius:11px}
  .raga-transport-dock .transport{grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;overflow:visible}
  .raga-transport-dock .icon-button{min-height:40px;height:40px;padding-inline:3px}
  .mixer-master-controls,.instrument-voice-controls{grid-template-columns:1fr}
  .mixer-master-controls label:first-child{grid-column:auto}
  .piano-monitor{--piano-white-width:calc(30px * var(--piano-zoom));--piano-black-width:calc(18px * var(--piano-zoom));--piano-black-half:calc(9px * var(--piano-zoom))}
  .piano-keyboard{height:calc(124px * var(--piano-zoom))}
  .piano-key.white{height:calc(122px * var(--piano-zoom))}
  .piano-key.black{height:calc(76px * var(--piano-zoom))}
  .piano-monitor-head,.guitar-fretboard-head{align-items:stretch}
  .instrument-display-zoom{align-self:flex-start}
  .trajectory-toolbar .staff-zoom{display:grid;grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding-left:0}
  .trajectory-toolbar .staff-zoom button{width:100%;min-height:32px}
}
@media(max-width:620px){
  .trajectory-actions{display:contents;margin-left:0}
}

/* v352: Safari/WKWebView must use the viewport as the sticky scroll container.
   The menus and search filter intentionally paint above the transport. */
html,body{overflow-x:visible}
#ragasMain{padding-top:0}
.main-menu{z-index:80;flex-wrap:wrap;overflow:visible}
.main-menu-popover{z-index:100}
.main-menu .main-menu-mode{flex:0 0 auto;display:flex;align-items:center;min-height:40px;margin:0;padding:0 14px;border:0;border-radius:0;background:#fff;color:var(--indigo);font-size:.86rem;font-weight:800;white-space:nowrap}
.main-menu .main-menu-mode.active{background:var(--saffron-soft);color:var(--indigo);box-shadow:inset 0 -3px var(--saffron)}
.main-menu .main-menu-mode:hover,.main-menu .main-menu-mode:focus-visible{background:var(--saffron-soft);outline:none}
.raga-info-panel{overflow:visible}
.raga-info-panel>.secondary-panel-summary{overflow:hidden;border-radius:13px}
.raga-search-panel{z-index:110;max-height:min(78vh,760px);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable}
.notation-field{padding:8px 14px 0}
@media(max-width:720px){
  .main-menu{padding-inline:6px}
  .main-menu .main-menu-mode{padding-inline:10px;font-size:.78rem}
  .raga-transport-dock{margin-inline:calc(-1 * clamp(14px,3vw,42px));border-right:0;border-left:0;border-radius:0}
  .notation-field{padding-inline:8px}
}

/* Shared mobile working surface: four columns, two rows, no duplicate toolbar. */
.notation-toggles{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:6px;box-sizing:border-box;width:100%}
.notation-toggles>.segment{min-width:0;min-height:44px;padding:8px 3px;font-size:clamp(.75rem,2.8vw,1rem);white-space:nowrap}
.notation-toggles>.notation-context-toggles{grid-column:1/-1}
#ragaTransportDock{overflow:visible}
#ragaTransportDock>.transport{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr)) auto;gap:4px;overflow:visible}
#ragaTransportDock .transport-mixer-panel{position:static;border:0;background:transparent;margin:0;overflow:visible}
#ragaTransportDock .transport-mixer-panel>summary{height:44px;min-height:44px;width:auto;min-width:62px;padding:6px;border:1px solid var(--line);border-radius:10px;font-size:.75rem;display:flex;justify-content:center}
#ragaTransportDock .transport-mixer-panel>summary span{margin:0;color:var(--indigo);font-size:inherit}
#ragaTransportDock .transport-mixer-panel>summary::after{display:none}
#ragaTransportDock .transport-mixer-panel[open]>.transport-mixer-content{position:absolute;bottom:calc(100% + 8px);left:0;right:0;z-index:100;max-height:65dvh;border:1px solid var(--line);border-radius:13px;background:#fff;box-shadow:0 -6px 24px #17173e22;padding:8px;box-sizing:border-box}
.mixer-master-controls{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center}
.mixer-master-controls>label{min-width:0;display:grid;grid-template-columns:auto auto;gap:4px;font-size:.75rem}
.mixer-master-controls input[type=range]{grid-column:1/-1;width:100%;min-width:0;min-height:14px;height:14px;margin:0}
.mixer-master-controls>.mixer-switch{display:flex;align-items:center;font-size:.75rem;gap:4px}
#rhythmPanel>summary,#ragaInfoPanel>summary,#tanpuraPanel>summary,#ragaScalePanel>summary,#ragaMelodyPanel>summary,.melodic-movement-panel>summary{box-sizing:border-box;width:calc(100% - 12px);min-height:48px;margin:6px;padding:8px 12px;border:1px solid #d8d8e2;border-radius:13px;display:flex;align-items:center;justify-content:space-between;gap:8px}
#rhythmPanel>summary::after,#ragaInfoPanel>summary::after,#tanpuraPanel>summary::after,#ragaScalePanel>summary::after,#ragaMelodyPanel>summary::after,.melodic-movement-panel>summary::after{content:'⌄';display:block;color:var(--teal);margin-left:auto}
#rhythmPanel[open]>summary::after,#ragaInfoPanel[open]>summary::after,#tanpuraPanel[open]>summary::after,#ragaScalePanel[open]>summary::after,#ragaMelodyPanel[open]>summary::after,.melodic-movement-panel[open]>summary::after{transform:rotate(180deg)}
.melodic-movement-panel:not([open]) .melodic-movement-summary-actions,#ragaScalePanel:not([open])>summary small{display:none}
#ragaScalePanel select,#ragaInfoPanel select{min-height:44px;height:44px;padding-top:4px;padding-bottom:4px}
.sequence-filter-toggle{display:flex;align-items:center;gap:8px;min-height:44px;margin:4px 0;font-weight:700}
.sequence-filter-toggle input{width:20px;height:20px}


#ragaTransportDock .transport-mixer-panel>summary [hidden]{display:none!important}

#ragaTransportDock>.transport{align-items:stretch}
#ragaTransportDock .icon-button,#ragaTransportDock .transport-mixer-panel>summary{box-sizing:border-box;height:44px;min-height:44px;margin:0;align-items:center;border-radius:10px}
.mixer-floating-content{position:fixed;left:8px;right:8px;bottom:12px;z-index:1000;display:grid;gap:9px;box-sizing:border-box;max-width:1100px;margin-inline:auto;max-height:75dvh;overflow:auto;overscroll-behavior:contain;padding:12px;border:1px solid var(--line);border-radius:13px;background:#fff;box-shadow:0 0 0 100vmax #17173e33,0 -6px 24px #17173e22}
.mixer-floating-content[hidden]{display:none!important}
.mixer-floating-close{justify-self:end;min-height:44px;padding:6px 12px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--indigo)}

.raga-info-same-note-host:not(:empty){margin-top:10px;border:1px solid var(--line);border-radius:13px;background:#fff;overflow:hidden}
.raga-info-same-note-host>.same-note-ragas-button{box-sizing:border-box;width:calc(100% - 12px);min-height:48px;margin:6px;padding:8px 12px;border:1px solid #d8d8e2;border-radius:10px;background:#fff;text-align:left;font-family:Georgia,serif;font-size:1.1rem;font-weight:800;color:var(--indigo)}

/* Clear tonic accents keep note labels above decoration and free of halos. */
.guitar-note-marker.is-scale-tonic:not(.is-motif-note):not(.is-playing){background:var(--scale-tonic-ink);color:#fff;box-shadow:none}
.guitar-note-marker.is-scale-tonic:not(.is-vadi):not(.is-samvadi){border:2px solid #345690}
.piano-key.white.piano-scale-tonic:not(.sounding):not(.pressed):not(.piano-chord-note){background:var(--scale-tonic-soft)}
.piano-key.black.piano-scale-tonic:not(.sounding):not(.pressed):not(.piano-chord-note){background:#344f7e}
.piano-key.piano-scale-tonic::before{bottom:clamp(28px,calc(38px * var(--piano-zoom,1)),38px);z-index:3;width:clamp(8px,calc(14px * var(--piano-zoom,1)),14px);height:clamp(8px,calc(14px * var(--piano-zoom,1)),14px);background:var(--scale-tonic-ink);box-shadow:none}
.piano-key.piano-scale-tonic:not(.raga-vadi):not(.raga-samvadi)::before{border-color:var(--scale-tonic-ink)}
.piano-key.piano-scale-tonic .piano-key-label{z-index:4;color:#345690;font-weight:900;line-height:1.2}
.piano-key.black.piano-scale-tonic .piano-key-label{color:#fff}

/* Field headings lead; empty choices remain quiet. */
label.selection-field-heading:has(select),.field.selection-field-heading:has(select){color:#19183f}
body select.is-unselected{color:#767681;font-weight:500}
.guitar-inlay{position:absolute;z-index:1;width:clamp(6px,1.7vw,11px);height:clamp(6px,1.7vw,11px);border-radius:50%;background:#f3ead5;border:1px solid #967c55;transform:translate(-50%,-50%);pointer-events:none}
.display-elements-content{padding:12px clamp(10px,2vw,24px);background:#fff}
.display-elements-content .guitar-fretboard-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch;gap:10px 18px}
.display-elements-content .instrument-raga-filter,.display-elements-content .guitar-chord-picker{grid-column:1/-1;justify-content:flex-start}
.display-elements-content .guitar-fingering-toolbar{padding:12px 0 4px}
.display-elements-content .guitar-fingering-options{padding-inline:0}
.display-elements-content label{min-height:36px}
.piano-key.piano-motif-note::before{position:absolute;z-index:3;bottom:20px;left:50%;width:14px;height:14px;border:1.5px solid #777780;border-radius:50%;background:#f2a52b;content:"";transform:translateX(-50%);pointer-events:none}
.piano-key.piano-motif-note .piano-key-label{font-weight:900}
@media(max-width:720px){.display-elements-content .guitar-fretboard-options{grid-template-columns:1fr}.display-elements-content .raga-direction-filter{width:100%}}

/* Compact instrument header and notation settings below the score. */
#guitarFretboardMonitor .guitar-fretboard-head{display:flex;flex-direction:column;gap:8px;align-items:stretch}
.guitar-heading-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px;position:relative}
.guitar-heading-row>strong{color:var(--indigo);white-space:nowrap}
.guitar-legend-disclosure{margin-left:auto;min-width:0}
.guitar-legend-disclosure>summary{padding:0;border:0;background:transparent;box-shadow:none;color:var(--muted);font-size:.66rem;font-weight:600;cursor:pointer;text-align:right;list-style:none}
.guitar-legend-disclosure>summary::-webkit-details-marker{display:none}
.guitar-legend-disclosure>summary:hover,.guitar-legend-disclosure>summary:focus-visible{color:var(--indigo);text-decoration:underline}
.guitar-legend-disclosure[open] .guitar-fretboard-legend{position:absolute;top:100%;left:0;right:0;z-index:20;padding:12px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 5px 15px #17174322}
.guitar-display-controls{display:flex;align-items:center;justify-content:space-between;gap:8px}
#guitarFretboardMonitor .orientation-control button{box-sizing:border-box;width:36px;min-width:36px;height:36px;min-height:36px;padding:2px;font-size:11px;line-height:1}
#guitarFretboardMonitor .guitar-display-controls .instrument-display-zoom{align-self:auto}
.raga-notation-settings{padding:10px 14px;background:#fafafd;border-top:1px solid var(--line)}
.raga-notation-settings>.notation-context-toggles{justify-content:flex-start;flex-wrap:wrap;gap:8px 14px;margin:0 0 12px;padding:0;border:0;font-size:.8rem}
#guitarFretboardMonitor .guitar-fingering-toolbar{margin:0;padding:4px clamp(8px,2vw,24px) 8px}

/* v138: preserve note fills, with matching outline/stem role colours. */
.note-group { --staff-note-outline: #000; }
.note-group.role-samvaadi { --staff-note-outline: #299a58; }
.note-group.role-vadi { --staff-note-outline: #d83232; }
.note-group .notehead.notehead,.note-group .notehead.notehead.notation-open { stroke: var(--staff-note-outline) !important; stroke-width: 2 !important; }
.note-group .note-stem.note-stem { stroke: var(--staff-note-outline) !important; stroke-width: 1.7; stroke-linecap: butt; }
.note-group.role-vadi .note-label,.note-group.role-vadi .pitch-label,
.note-group.role-samvaadi .note-label,.note-group.role-samvaadi .pitch-label { fill: var(--staff-note-outline) !important; }
