@layer components{.song-head{margin-top:calc(-1 * var(--header-h));padding:calc(var(--header-h) + clamp(2.5rem, 7vh, 5rem)) 0 calc(var(--sheet-overlap) + clamp(3rem, 8vh, 6rem));background:var(--stage);color:var(--stage-text)}.song-head__grid{align-items:end;gap:2.5rem 5rem;display:grid}@media (width>=920px){.song-head__grid{grid-template-columns:minmax(0,1.1fr) minmax(18rem,.7fr)}}.song-head h1{max-width:15ch;color:var(--stage-text);font-size:clamp(2.7rem,1.5rem + 4vw,5rem);line-height:.98}.song-head .kicker{color:var(--stage-text)}.song-head .lede{max-width:60ch;color:var(--stage-muted);margin-top:1.3rem}.song-head__limit{border-block:1px solid var(--stage-line);color:var(--stage-muted);font:500 var(--t-meta)/1.65 var(--font-mono);padding-block:1rem}.song-head__limit strong{color:var(--stage-text);display:block}.song-shell{align-items:start;gap:2rem 3rem;display:grid}@media (width>=1040px){.song-shell{grid-template-columns:minmax(0,1.02fr) minmax(23rem,.78fr)}}.song-form{gap:2rem;display:grid}.song-step{border:0;border-top:1px solid var(--line-strong);min-inline-size:0;padding:1.35rem 0 0}.song-step legend{padding:0;font-size:1.28rem;font-weight:650}.song-step__note{max-width:64ch;color:var(--muted);margin-top:.45rem}.song-fields{gap:1rem;margin-top:1.2rem;display:grid}@media (width>=660px){.song-fields--two{grid-template-columns:repeat(2,minmax(0,1fr))}}.song-field{gap:.45rem;min-inline-size:0;display:grid}.song-field label{color:var(--ink-soft);font:550 var(--t-meta)/1.5 var(--font-mono)}.song-field :is(input,select,textarea){border:1px solid var(--line-strong);border-radius:var(--r-control);background:var(--canvas);min-block-size:48px;inline-size:100%;color:var(--ink);font:500 1rem/1.45 var(--font-sans);padding:.75rem .9rem}.song-field textarea{resize:vertical;min-block-size:6.5rem}.song-field :is(input,select,textarea):hover{border-color:var(--muted)}.song-error{color:#a43a2d;min-block-size:1.5rem;font-size:.95rem}.song-output{top:calc(var(--header-h) + 1rem);scroll-margin-top:calc(var(--header-h) + 1rem);border-radius:var(--r-sm);background:var(--stage);color:var(--stage-text);box-shadow:var(--shadow-panel);position:sticky;overflow:hidden}.song-output__bar{border-bottom:1px solid var(--stage-line);color:var(--stage-muted);font:500 var(--t-meta)/1.4 var(--font-mono);justify-content:space-between;gap:1rem;padding:.8rem 1rem;display:flex}.song-output__body{min-block-size:28rem;padding:1.25rem}.song-output__empty{max-width:34ch;color:var(--stage-muted);line-height:1.65}.song-result{gap:1.2rem;display:grid}.song-result h2,.song-result h3{color:var(--stage-text)}.song-result h2{font-size:1.5rem}.song-result h3{font-size:1rem}.song-status{border:1px solid var(--stage-line);width:fit-content;color:var(--stage-text);font:600 var(--t-meta)/1.3 var(--font-mono);border-radius:999px;padding:.35rem .65rem}.song-result dl,.song-result ul{gap:.65rem;display:grid}.song-result dl>div{border-bottom:1px solid var(--stage-line-soft);padding-bottom:.6rem}.song-result dt{color:var(--stage-muted);font:500 var(--t-meta)/1.4 var(--font-mono)}.song-result dd{color:var(--stage-text);margin-top:.22rem}.song-result li{border-left:2px solid var(--stage-line);color:var(--stage-text);padding-left:1rem;line-height:1.5}.song-result__notice{color:var(--stage-muted);font-size:.88rem;line-height:1.6}.song-actions{border-top:1px solid var(--stage-line);grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;padding:1rem 1.25rem 1.25rem;display:grid}.song-actions :is(button,a){text-align:center;justify-content:center;min-block-size:42px;inline-size:100%}.song-actions .btn--quiet{border-color:var(--stage-line);color:var(--stage-text)}.song-actions [data-email]{grid-column:1/-1}.method-grid{gap:2rem 4rem;display:grid}@media (width>=840px){.method-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}}.method-list{border-top:1px solid var(--line-strong)}.method-list li{border-bottom:1px solid var(--line);color:var(--ink-soft);padding-block:1rem;line-height:1.6}.source-list{gap:.8rem;margin-top:1.2rem;display:grid}.source-list a{font-weight:600}.source-list span{color:var(--muted);font-size:.9rem;display:block}@media (width<=1039px){.song-output{position:static}}}
