:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0f1115;--surface:#171a21;--surface-2:#1f232c;--line:#2a2f3a;--text:#f2f3f5;--text-dim:#9aa1ac;--accent:#4fd1a5;--accent-2:#ff6b6b;--radius:16px}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg);height:100%;color:var(--text);-webkit-tap-highlight-color:transparent;overscroll-behavior:none;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}a{color:inherit;text-decoration:none}.view{height:100dvh;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);flex-direction:column;display:flex}.topbar{border-bottom:1px solid var(--line);flex:none;justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.topbar h1{text-align:center;flex:1;margin:0;font-size:18px;font-weight:600}.back-btn,.icon-btn{background:var(--surface-2);color:var(--text);border:none;border-radius:12px;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;display:flex}.back-btn:active,.icon-btn:active{background:var(--line)}.home-grid{flex:1;grid-template-columns:1fr 1fr;align-content:start;gap:14px;padding:20px;display:grid}.tool-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);text-align:center;color:var(--text);aspect-ratio:1;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:20px 14px;text-decoration:none;display:flex}.tool-card:active{background:var(--surface-2)}.tool-card--soon{opacity:.45}.tool-icon{font-size:34px}.tool-name{font-size:15px;font-weight:600}.tool-desc{color:var(--text-dim);font-size:12px}.ruler-main{flex-direction:column;flex:1;min-height:0;display:flex}.ruler-toolbar{justify-content:space-between;align-items:center;gap:10px;padding:10px 16px;display:flex}.segmented{background:var(--surface-2);border-radius:10px;padding:3px;display:flex}.segmented button{color:var(--text-dim);background:0 0;border:none;border-radius:8px;padding:6px 14px;font-size:14px}.segmented button.active{background:var(--accent);color:#06231a;font-weight:600}.pill-btn{background:var(--surface-2);border:1px solid var(--line);color:var(--text);border-radius:999px;padding:8px 14px;font-size:13px}.pill-btn.active{background:var(--accent);color:#06231a;border-color:var(--accent);font-weight:600}.ruler-viewport{--ruler-ink:#241c0a;--ruler-line:#241c0a80;touch-action:none;background:linear-gradient(100deg,#fff6 0%,#fff0 26%),linear-gradient(#ffe27a 0%,#f5c035 55%,#eeae1f 100%);border-radius:14px;flex:none;height:clamp(160px,26vh,260px);margin:6px 16px 0;position:relative;overflow:hidden;box-shadow:0 10px 24px #00000059,inset 0 0 0 1px #0000001f}#ruler-canvas{width:100%;height:100%;display:block}.caliper{position:absolute;inset:0}.caliper-handle{touch-action:none;width:44px;margin-left:-22px;position:absolute;top:0;bottom:0}.caliper-handle:after{content:"";background:var(--accent-2);width:2px;position:absolute;top:0;bottom:0;left:21px}.caliper-handle:before{content:"";background:var(--accent-2);border-radius:50%;width:20px;height:20px;margin-top:-10px;position:absolute;top:50%;left:12px}.caliper-bar{pointer-events:none;background:#ff6b6b26;position:absolute;top:0;bottom:0}.caliper-readout{background:var(--accent-2);color:#2a0808;pointer-events:none;white-space:nowrap;border-radius:999px;padding:6px 12px;font-size:14px;font-weight:700;position:absolute;top:10px;left:50%;transform:translate(-50%)}.hint{text-align:center;color:var(--text-dim);margin:0;padding:0 24px 16px;font-size:13px}.calibrate-main{flex-direction:column;flex:1;gap:16px;padding:20px;display:flex;overflow-y:auto}.calibrate-box{background:var(--surface);border-radius:var(--radius);-webkit-overflow-scrolling:touch;justify-content:flex-start;align-items:center;padding:30px 16px;display:flex;overflow-x:auto}.calibrate-bar{background:linear-gradient(100deg,#fff6 0%,#fff0 26%),linear-gradient(#ffe27a 0%,#f5c035 55%,#eeae1f 100%);border-radius:8px;flex:none;width:323px;height:56px;box-shadow:0 6px 16px #0000004d,inset 0 0 0 1px #0000001f}#calibrate-slider{width:100%}.calibrate-value{text-align:center;color:var(--text-dim);margin:0;font-size:14px}.calibrate-manual{color:var(--text-dim);flex-direction:column;gap:8px;font-size:13px;display:flex}.calibrate-manual input{background:var(--surface);border:1px solid var(--line);color:var(--text);border-radius:10px;padding:10px 12px;font-size:15px}.primary-btn{background:var(--accent);color:#06231a;border:none;border-radius:12px;padding:14px;font-size:16px;font-weight:700}.primary-btn:active{opacity:.85}.tuner-main{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:20px;display:flex}.tuner-settings{background:var(--surface);border:1px solid var(--line);color:var(--text-dim);border-radius:12px;align-items:center;gap:10px;margin-bottom:10px;padding:10px 14px;font-size:13px;display:flex}.tuner-settings input{background:var(--surface-2);border:1px solid var(--line);width:70px;color:var(--text);border-radius:8px;padding:6px 8px;font-size:15px}.tuner-note-wrap{align-items:baseline;gap:6px;display:flex}.tuner-note-name{font-size:96px;font-weight:700;line-height:1;transition:color .15s}.tuner-octave{color:var(--text-dim);font-size:28px}.tuner-gauge{width:min(320px,90vw)}.tuner-gauge svg{width:100%;height:auto}#tuner-needle{transform-origin:150px 150px;transition:transform .1s ease-out}.tuner-cents{color:var(--text-dim);font-size:18px;font-weight:600}.tuner-freq{color:var(--text-dim);margin-bottom:8px;font-size:14px}.tuner-main .primary-btn{width:100%;max-width:280px}.in-tune .tuner-note-name{color:var(--accent)}.flat .tuner-note-name,.sharp .tuner-note-name{color:var(--accent-2)}.field-row{justify-content:space-between;align-items:center;gap:12px;padding:4px 0;display:flex}.field-row label{color:var(--text-dim);font-size:14px}.field-row input,.field-row select{background:var(--surface);border:1px solid var(--line);color:var(--text);border-radius:10px;flex:none;min-width:90px;padding:8px 10px;font-size:15px}.field-row input[type=range]{flex:1;min-width:0}.height-main{flex-direction:column;flex:1;gap:12px;padding:16px;display:flex;overflow-y:auto}.height-viewfinder{aspect-ratio:3/4;border-radius:var(--radius);background:#000;position:relative;overflow:hidden}.height-viewfinder video{object-fit:cover;width:100%;height:100%}.height-crosshair{background:var(--accent-2);pointer-events:none;height:2px;position:absolute;top:50%;left:0;right:0}.height-crosshair:before{content:"";background:var(--accent-2);width:2px;height:20px;position:absolute;top:-9px;left:50%}.height-angle-readout{color:var(--text);background:#0000008c;border-radius:10px;padding:6px 10px;font-size:14px;font-weight:600;position:absolute;top:10px;right:10px}.height-actions{flex-direction:column;gap:8px;display:flex}.height-actions .pill-btn{width:100%;padding:12px;font-size:15px}.height-result{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;align-items:center;gap:10px;padding:18px;display:flex}.height-result-value{color:var(--accent);font-size:34px;font-weight:700}.lightmeter-main{flex-direction:column;flex:1;gap:12px;padding:20px;display:flex;overflow-y:auto}.lightmeter-readout{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;gap:10px;padding:16px;display:flex}.lightmeter-ev{text-align:center;font-size:40px;font-weight:700}.lightmeter-colortemp{text-align:center;color:var(--text-dim);font-size:14px}.lightmeter-table{border-collapse:collapse;width:100%;margin-top:6px;font-size:13px}.lightmeter-table td{border-top:1px solid var(--line);text-align:center;padding:6px 4px}.dof-main{flex-direction:column;flex:1;gap:4px;padding:20px;display:flex;overflow-y:auto}.dof-result{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;gap:10px;margin-top:14px;padding:16px;font-size:15px;display:flex}.dof-result .dof-row{justify-content:space-between;display:flex}.dof-result .dof-row strong{color:var(--accent)}.chords-main{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:14px;padding:20px;display:flex}.chord-name{font-size:64px;font-weight:700}.chord-confidence{color:var(--text-dim);min-height:18px;font-size:14px}.chord-chroma{align-items:flex-end;gap:4px;width:100%;max-width:320px;height:80px;display:flex}.chord-chroma .bar{background:var(--accent);opacity:.85;border-radius:4px 4px 0 0;flex:1;min-height:3px;position:relative}.chord-chroma .bar.is-root{background:var(--accent-2);opacity:1}.chord-chroma .bar span{text-align:center;color:var(--text-dim);font-size:9px;position:absolute;bottom:-18px;left:0;right:0}.chords-main .primary-btn{width:100%;max-width:280px;margin-top:10px}.lyrics-main{flex-direction:column;flex:1;gap:4px;padding:20px;display:flex;overflow-y:auto}.lyrics-main .primary-btn{width:100%;margin-top:14px}.lyrics-result{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);white-space:pre-wrap;margin-top:16px;padding:16px;font-size:15px;line-height:1.6}.tablatures-main{flex-direction:column;flex:1;gap:12px;padding:16px;display:flex;overflow-y:auto}.tablatures-roots,.tablatures-types{flex-wrap:wrap;gap:8px;display:flex}.tablatures-result{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;align-items:center;gap:10px;padding:16px;display:flex}.tablatures-label{font-size:20px;font-weight:700}.chordbook-main{flex-direction:column;flex:1;gap:12px;padding:16px;display:flex;overflow-y:auto}.chordbook-roots,.chordbook-qualities,.chordbook-common,.chordbook-positions{flex-wrap:wrap;gap:8px;display:flex}.chordbook-positions{justify-content:center}.chordbook-positions:empty{display:none}.chordbook-positions .chip-btn{padding:7px 12px;font-size:13px}.chip-btn{background:var(--surface-2);border:1px solid var(--line);color:var(--text);border-radius:999px;padding:8px 12px;font-size:14px}.chip-btn.active{background:var(--accent);border-color:var(--accent);color:#06231a;font-weight:700}.chordbook-diagram-wrap{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;align-items:center;gap:10px;padding:16px;display:flex}.chordbook-label{font-size:20px;font-weight:700}.chordbook-diagram-row{align-items:center;gap:8px;display:flex}.chordbook-nav-btn{background:var(--surface-2);border:1px solid var(--line);color:var(--text);border-radius:999px;flex:none;width:40px;height:40px;font-size:20px;line-height:1}.chordbook-nav-btn:disabled{opacity:.35}.chordbook-subtitle{color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;margin:4px 0 0;font-size:14px;font-weight:600}.tablatures-image{object-fit:cover;border-radius:12px;width:96px;height:96px}.tablatures-details{color:var(--text-dim);font-size:13px}@media (min-width:860px){html,body{background:radial-gradient(circle at 50% -10%, #1c2029 0%, var(--bg) 55%)}.view{border-left:1px solid var(--line);border-right:1px solid var(--line);background:var(--bg);max-width:920px;height:auto;min-height:100dvh;margin:0 auto}.topbar{padding:22px 32px}.topbar h1{font-size:20px}.back-btn,.icon-btn{width:44px;height:44px}.home-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:18px;padding:32px}.tool-card{aspect-ratio:auto;padding:28px 16px;transition:transform .15s,border-color .15s,background .15s}main[class$=-main]{width:100%;max-width:560px;margin:0 auto;padding-left:32px;padding-right:32px}.ruler-viewport{height:clamp(180px,28vh,300px);margin-left:0;margin-right:0}.calibrate-main{max-width:640px}}@media (hover:hover) and (pointer:fine){button,.pill-btn,.chip-btn,a.pill-btn,.tool-card,.icon-btn,.back-btn,.chordbook-nav-btn{cursor:pointer}button:disabled,.chordbook-nav-btn:disabled{cursor:not-allowed}.tool-card:hover{border-color:var(--accent);background:var(--surface-2);transform:translateY(-2px)}.pill-btn:hover,.chip-btn:hover,a.pill-btn:hover{border-color:var(--accent)}.icon-btn:hover,.back-btn:hover,.chordbook-nav-btn:hover:not(:disabled){background:var(--line)}.primary-btn:hover{opacity:.9}.segmented button:not(.active):hover{color:var(--text)}}:root{--bg:#121411;--surface:#1b1e19;--surface-2:#252923;--line:#343a30;--text:#f3f3ea;--text-dim:#aeb5a6;--accent:#d3ec91;--accent-2:#f4b58b}body{line-height:1.5}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}button,.pill-btn,.chip-btn,.back-btn,.icon-btn{min-height:44px}input:not([type=range]),select{min-height:48px;font-size:16px}.skip-link{z-index:100;background:var(--accent);color:#17210d;border-radius:10px;padding:12px 20px;position:fixed;top:-80px;left:16px}.skip-link:focus{top:12px}.app-shell{min-height:100dvh}.sidebar{border-right:1px solid var(--line);z-index:30;background:#181b16;flex-direction:column;width:248px;padding:32px 18px 24px;display:flex;position:fixed;inset:0 auto 0 0;overflow-y:auto}.brand{letter-spacing:-.6px;white-space:nowrap;align-items:center;gap:10px;font-size:18px;font-weight:750;display:flex}.brand-mark{width:34px;height:38px;color:var(--accent);place-items:center;display:grid}.brand-dot{color:var(--accent)}.sidebar-caption{color:var(--text-dim);letter-spacing:1.5px;margin:12px 8px 30px;font-size:9px}.nav-link{min-height:44px;color:var(--text-dim);border-radius:9px;align-items:center;gap:12px;padding:10px 12px;font-size:13px;display:flex}.nav-link svg{flex-shrink:0;width:19px;height:19px}.nav-link:hover{background:var(--surface-2);color:var(--text)}.nav-link.is-active{color:var(--accent);background:#2d3622}.nav-count{opacity:.7;margin-left:auto;font-size:11px}.nav-group{margin-top:24px}.nav-group>p{text-transform:uppercase;letter-spacing:1.8px;color:var(--text-dim);margin:0 12px 8px;font-size:10px}.sidebar-bottom{color:var(--text-dim);margin-top:auto;padding:40px 12px 0;font-size:12px}.little-cross{color:var(--accent);font-size:30px}.sidebar-bottom strong{color:var(--text);font-weight:500}.edition{letter-spacing:1.8px;margin-top:24px;font-size:8px;display:block}.mobile-header,.nav-overlay{display:none}.workspace{min-width:0;margin-left:248px}.workspace .view{background:0 0;border:0;max-width:none;height:auto;min-height:100dvh}.topbar{gap:16px;padding:24px 36px}.topbar h1{text-align:left;font-size:20px}main[class$=-main]{width:100%;max-width:760px;margin:0 auto;padding:32px;overflow:visible}.workspace .ruler-main{max-width:100%}.home-view{max-width:1500px;margin:auto}.home-topline{border-bottom:1px solid var(--line);letter-spacing:1.4px;min-height:76px;color:var(--text-dim);justify-content:space-between;align-items:center;margin:0 48px;font-size:10px;display:flex}.availability{letter-spacing:0;align-items:center;gap:8px;display:flex}.availability i{background:var(--accent);border-radius:50%;width:6px;height:6px}.home-content{padding:0 48px}.hero{justify-content:space-between;align-items:center;gap:24px;padding:58px 0;display:flex;position:relative}.eyebrow{letter-spacing:1.8px;color:var(--accent);font-size:10px;font-weight:600;display:block}.hero h1{letter-spacing:-2px;margin:18px 0;font-size:clamp(34px,3.5vw,54px);font-weight:600;line-height:1.12}.hero h1 span{color:var(--accent)}.hero-copy>p{color:var(--text-dim);font-size:14px;line-height:1.8}.hero-link{align-items:center;gap:12px;min-height:44px;margin-top:24px;font-size:13px;display:inline-flex}.hero-link svg{width:18px}.hero-art{flex:0 0 250px;height:220px;position:relative}.orbit{border:1px solid var(--line);border-radius:50%;width:180px;height:180px;position:absolute;top:15px;left:30px}.orbit-two{width:230px;height:230px;top:-10px;left:5px}.art-tile{border:1px solid #4b5440;border-radius:20px;place-items:center;width:94px;height:104px;display:grid;position:absolute;box-shadow:0 14px 30px #0003}.art-tile svg{width:48px;height:48px}.art-ruler{background:var(--accent);color:#293519;top:35px;left:16px;transform:rotate(-16deg)}.art-wave{color:var(--accent);background:#333d2b;top:5px;left:108px;transform:rotate(12deg)}.art-focus{color:#664629;background:#eed4ba;top:103px;left:111px;transform:rotate(8deg)}.art-spark{color:var(--accent);font-size:40px;position:absolute;top:151px;left:4px}.art-caption{letter-spacing:1.5px;color:var(--text-dim);font-size:8px;position:absolute;bottom:-32px;left:25px}.library-heading{justify-content:space-between;align-items:center;gap:24px;display:flex}.library-heading h2{letter-spacing:-.5px;font-size:22px;font-weight:600}.library-heading h2 span{color:var(--text-dim);margin-left:8px;font-size:13px}.library-heading p{color:var(--text-dim);margin-top:5px;font-size:12px}.tool-search{background:var(--surface);border:1px solid var(--line);border-radius:10px;align-items:center;gap:10px;width:260px;padding:0 14px;display:flex}.tool-search svg{width:17px;color:var(--text-dim);flex-shrink:0}.tool-search input{width:100%;min-width:0;color:var(--text);background:0 0;border:none;font-size:13px}.search-hint{display:none}.library-toolbar{justify-content:space-between;align-items:center;gap:12px;margin:24px 0 20px;display:flex}.category-tabs{flex-wrap:wrap;gap:6px;display:flex}.category-tabs button{color:var(--text-dim);background:0 0;border:1px solid #0000;border-radius:8px;padding:8px 14px;font-size:12px}.category-tabs button.selected{background:var(--surface-2);border-color:var(--line);color:var(--text)}.category-tabs button span{color:var(--accent);margin-left:8px}.result-count{color:var(--text-dim);white-space:nowrap;font-size:11px}.home-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:0;display:grid}.tool-card{aspect-ratio:auto;text-align:left;border-radius:14px;justify-content:flex-start;align-items:stretch;gap:0;min-width:0;min-height:208px;padding:20px}.tool-card-top{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.tool-icon{width:42px;height:42px;color:var(--accent);background:#303827;border-radius:12px;place-items:center;display:grid}.tone-Mesure{color:#e8bf8b;background:#382f24}.tone-Photo{color:#bfc5f4;background:#2b2e40}.card-arrow{color:#89937e}.card-arrow svg{width:17px}.tool-name{margin-bottom:7px;font-size:15px}.tool-desc{margin-bottom:20px;font-size:12px;line-height:1.7}.tool-card-footer{border-top:1px solid var(--line);color:var(--text-dim);flex-wrap:wrap;justify-content:space-between;gap:4px 12px;margin-top:auto;padding-top:12px;font-size:9px;display:flex}.tool-card-footer span:first-child{color:#d3d9ca}.empty-state{text-align:center;color:var(--text-dim);padding:50px 20px}.empty-state h3,.empty-state button{margin:12px 0}.home-footer{border-top:1px solid var(--line);color:var(--text-dim);justify-content:space-between;gap:20px;margin-top:32px;padding:30px 0;font-size:11px;display:flex}.home-footer span,.home-footer a{align-items:center;gap:10px;display:flex}.home-footer svg{width:16px}.tool-intro{margin-bottom:28px}.tool-intro h2{letter-spacing:-1px;margin:14px 0;font-size:clamp(26px,3vw,36px);line-height:1.2}.tool-intro p,.muted{color:var(--text-dim);font-size:14px}.listen-panel{background:#232b1d;border:1px solid #465333;border-radius:16px;flex-wrap:wrap;align-items:center;gap:18px;padding:24px;display:flex}.listen-panel>div:not(.listen-progress){flex:1;min-width:150px}.listen-panel h3{font-size:16px}.listen-panel p{color:var(--text-dim);margin-top:4px;font-size:13px}.listen-panel small{color:var(--text-dim);flex-basis:100%;font-size:11px}.listen-icon{width:50px;height:50px;color:var(--accent);background:#344124;border-radius:50%;place-items:center;display:grid}.primary-btn{color:#202b14;justify-content:center;align-items:center;gap:8px;display:inline-flex}.primary-btn svg{flex-shrink:0;width:18px}.listen-progress{width:100%;color:var(--accent);font-size:14px}.listen-progress progress{width:100%;accent-color:var(--accent);margin-top:12px;display:block}.status-message{border:1px solid var(--line);border-radius:12px;margin-top:16px;padding:16px}.song-search-panel{margin:30px 0}.song-search-panel label{margin-bottom:10px;font-size:14px;display:block}.song-search-row{gap:10px;display:flex}.song-search-row input{background:var(--surface);border:1px solid var(--line);color:var(--text);border-radius:12px;width:100%;min-width:0;padding:12px}.song-search-row button{flex-shrink:0;font-size:13px}.song-search-panel>p,.song-results>.muted{color:var(--text-dim);margin-top:10px;font-size:12px}.song-results h2{overflow-wrap:anywhere;margin-top:8px}.source-grid{grid-template-columns:1fr 1fr;gap:14px;margin-top:18px;display:grid}.source-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:24px}.source-card:hover{border-color:var(--accent)}.source-card>svg{color:var(--accent);margin-bottom:12px}.source-card h3{font-size:17px}.source-card p{color:var(--text-dim);margin:8px 0 20px;font-size:13px}.source-card strong{color:var(--accent);font-size:12px}.recent-searches{margin-top:28px}.section-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.section-heading h3{font-size:14px}.text-button{color:var(--text-dim);background:0 0;border:0;padding:8px;font-size:12px}.chip-list{flex-wrap:wrap;gap:8px;display:flex}.chip-list button{overflow-wrap:anywhere;max-width:100%}.related-tools{border-top:1px solid var(--line);flex-wrap:wrap;gap:16px;margin-top:32px;padding-top:20px;font-size:12px;display:flex}.related-tools span{color:var(--text-dim)}.related-tools a{min-height:44px;color:var(--accent)}.tool-help{border-left:2px solid var(--accent);color:var(--text-dim);align-self:center;max-width:700px;margin:20px 32px 0;padding:14px 18px;font-size:13px}.chordbook-diagram-row{justify-content:center;width:100%}.chordbook-diagram-row svg{min-width:0;max-width:260px}.dof-row{gap:16px}.dof-row strong{text-align:right}.hint{line-height:1.7}@media (min-width:860px){html,body{background:var(--bg)}}@media (max-width:1150px){.home-content{padding:0 28px}.home-topline{margin:0 28px}.hero-art{flex-basis:210px;transform:scale(.85)}.home-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:859px){.sidebar{width:min(310px,88vw);padding-top:20px;display:none;top:65px;bottom:0}.sidebar.is-open{display:flex}.sidebar>.brand,.sidebar-caption{display:none}.mobile-header{z-index:40;border-bottom:1px solid var(--line);padding:10px 20px;padding-top:max(10px, env(safe-area-inset-top));background:#181b16;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.nav-overlay{z-index:20;background:#0009;border:0;display:block;position:fixed;inset:65px 0 0}.workspace{margin-left:0}.workspace .view{min-height:calc(100dvh - 65px);padding-top:0}.topbar{padding:16px 20px}.topbar h1{font-size:17px}.home-topline{min-height:56px}.hero{padding:36px 0 42px}.hero h1{font-size:42px}main[class$=-main]{padding:24px 20px}.tool-help{margin:20px 20px 0}}@media (max-width:580px){.home-content{padding:0 20px}.home-topline{margin:0 20px;font-size:9px}.availability,.hero-art{display:none}.hero h1{font-size:38px}.hero{padding-top:28px}.library-heading{flex-direction:column;align-items:stretch;gap:18px}.tool-search{width:100%}.library-toolbar{align-items:flex-start}.result-count{display:none}.category-tabs{gap:3px}.category-tabs button{padding:8px 10px}.home-grid{gap:12px}.tool-card{min-height:218px;padding:15px}.tool-name{font-size:14px}.tool-desc{font-size:12px}.tool-card-top{margin-bottom:16px}.tool-card-footer{font-size:9px}.card-arrow{display:none}.home-footer{flex-direction:column;margin-top:24px}.listen-panel{padding:20px}.listen-panel .primary-btn{width:100%}.song-search-row{flex-direction:column}.source-grid{grid-template-columns:1fr}.topbar h1{font-size:16px}.desktop-break{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.music-modes{border-bottom:1px solid var(--line);margin-bottom:28px;padding-bottom:16px}.tool-details,.camera-analysis{border:1px solid var(--line);border-radius:12px;padding:18px}.tool-details summary{cursor:pointer;min-height:44px}.camera-analysis{flex-direction:column;gap:14px;margin-top:20px;display:flex}.camera-preview{object-fit:cover;background:#000;border-radius:10px;width:100%;max-height:280px}.chord-legend{color:var(--text-dim);text-align:center;font-size:12px}.lightmeter-table caption{text-align:left;color:var(--text-dim);padding:12px 0}.field-row input,.field-row select{min-width:0;max-width:100%}.calibrate-main .field-row{flex-direction:column;align-items:stretch}.calibrate-main .field-row select{width:100%}.metronome-main,.practice-main,.level-main{flex-direction:column;gap:18px;display:flex}.tempo-display{justify-content:center;align-items:center;gap:32px;padding:16px;display:flex}.tempo-display>div{flex-direction:column;align-items:center;display:flex}.tempo-display strong{font-variant-numeric:tabular-nums;color:var(--accent);font-size:clamp(64px,12vw,96px);line-height:1.2}.tempo-display span{color:var(--text-dim);letter-spacing:3px;font-size:12px}.beat-lights{flex-wrap:wrap;justify-content:center;gap:10px;padding:18px 0;display:flex}.beat-lights span{border:1px solid var(--line);width:36px;height:36px;color:var(--text-dim);border-radius:50%;place-items:center;display:grid}.beat-lights .lit{background:var(--accent);border-color:var(--accent);color:var(--bg)}.practice-actions{flex-wrap:wrap;gap:12px;display:flex}.practice-actions>button{flex:1;min-width:120px}.tap-button{border-style:dashed;border-color:var(--accent);min-height:64px}.metronome-main input[type=range],.practice-main input[type=range]{width:100%;accent-color:var(--accent);min-height:36px}.audio-upload{border:1px dashed var(--accent);background:var(--surface);overflow-wrap:anywhere;border-radius:14px;flex-direction:column;gap:12px;padding:24px;display:flex}.audio-upload span{color:var(--text-dim);font-size:12px}.audio-upload input{width:100%;min-width:0;font-size:13px}.audio-upload input::file-selector-button{background:var(--accent);color:var(--bg);border:0;border-radius:8px;margin-right:10px;padding:10px}.playback-position{color:var(--accent);font-variant-numeric:tabular-nums;justify-content:space-between;display:flex}.loop-panel{border:1px solid var(--line);border-radius:14px;flex-direction:column;gap:16px;padding:20px;display:flex}.loop-markers{grid-template-columns:1fr 1fr;gap:16px;display:grid}.loop-markers>div{flex-direction:column;gap:10px;min-width:0;display:flex}.loop-markers label{color:var(--text-dim);font-size:13px}.loop-markers input{background:var(--surface);border:1px solid var(--line);width:100%;min-width:0;color:var(--text);border-radius:10px;padding:8px}.bubble-level{aspect-ratio:1;background:radial-gradient(circle, #333e29, var(--surface) 70%);border:2px solid var(--line);border-radius:50%;align-self:center;width:min(100%,320px);position:relative;overflow:hidden}.bubble-level:before,.bubble-level:after{content:"";background:var(--line);position:absolute}.bubble-level:before{width:100%;height:1px;top:50%}.bubble-level:after{width:1px;height:100%;left:50%}.level-target{border:1px solid var(--text-dim);border-radius:50%;position:absolute;inset:38%}.level-bubble{z-index:1;background:#efc49b;border-radius:50%;width:46px;height:46px;position:absolute;transform:translate(-50%,-50%);box-shadow:inset -6px -6px 12px #0003}.centered{border-color:var(--accent)}.centered .level-bubble{background:var(--accent)}.level-readings{justify-content:center;gap:48px;display:flex}.level-readings>div{flex-direction:column;align-items:center;display:flex}.level-readings span{color:var(--text-dim);font-size:12px}.level-readings strong{font-variant-numeric:tabular-nums;font-size:32px}.level-state{text-align:center;color:var(--accent)}@media (max-width:400px){.loop-markers{grid-template-columns:1fr}}.height-guide{border:1px solid var(--line);background:var(--surface);border-radius:16px}.height-guide>summary{cursor:pointer;padding:18px 20px;font-weight:600}.height-guide-content{flex-direction:column;gap:20px;padding:0 20px 20px;font-size:14px;display:flex}.height-guide-diagram{align-self:center;width:100%;max-width:520px;height:auto}.height-guide-steps{gap:18px;padding-left:24px;list-style:decimal;display:grid}.height-guide-steps li{padding-left:6px}.height-guide-steps li::marker{color:var(--accent);font-weight:700}.height-guide-steps p{color:var(--text-dim);margin-top:4px;line-height:1.7}.height-guide-example{border-left:3px solid var(--accent);background:var(--surface-2);border-radius:0 10px 10px 0;padding:16px}.height-guide-example p{margin-top:6px}.height-current-step{border:1px solid var(--line);border-radius:14px;margin:12px 0;padding:20px}.height-current-step h3{margin:8px 0;font-size:18px}.height-current-step p{color:var(--text-dim);font-size:14px}.height-viewfinder[hidden]{display:none}.height-main .field-row{flex-wrap:wrap}.height-main .field-row input{flex:1;min-width:160px}@media (max-width:580px){.height-guide-content{padding:0 16px 16px}.height-guide>summary{padding:16px}.height-actions{flex-direction:column}}
