/* Песня — дополнения к /static/style.css */
:root{--glow:#fdf2f8}
.hero{background:radial-gradient(900px 480px at 90% -10%,#fbcfe8 0,transparent 60%),radial-gradient(700px 400px at -10% 110%,#fef3c7 0,transparent 60%),#fff}
.hero h1{max-width:13em}
.player-card{background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:22px;display:grid;grid-template-columns:auto 1fr;gap:14px 16px;align-items:center;max-width:520px;margin:0 auto}
.pc-cover{width:72px;height:72px;border-radius:16px;background:linear-gradient(135deg,var(--brand),#f59e0b);display:flex;align-items:center;justify-content:center}
.pc-meta small{display:block;color:var(--muted);font-size:.82rem}.pc-meta b{font-size:1.15rem}
.player-card audio{grid-column:1/-1;width:100%}.pc-note{grid-column:1/-1;margin:0;color:var(--muted);font-size:.88rem}
.demo-badge{display:inline-block;background:var(--brand-l);color:var(--brand-d);font-weight:800;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;border-radius:99px;padding:4px 12px;margin-bottom:10px}
.make-sec{background:linear-gradient(#fff,var(--glow))}
.make-head{text-align:center;max-width:760px;margin:0 auto 26px}.make-head .sub{margin:0 auto}
.make-grid{display:grid;gap:22px}@media(min-width:960px){.make-grid{grid-template-columns:1.05fr 1fr;align-items:start}}
.song-form,.song-result{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:22px}
.song-form label,.song-form legend{display:block;font-weight:600;font-size:.92rem;margin:12px 0 0;padding:0}
.song-form input:not([type=radio]),.song-form select,.song-form textarea{display:block;width:100%;margin-top:5px;font:inherit;font-size:16px;padding:.65em .75em;border:1.5px solid #cbd5e1;border-radius:10px;background:#fff;color:var(--ink)}
.song-form textarea{resize:vertical;min-height:90px}
.song-form .invalid{border-color:#dc2626!important;background:#fef2f2!important}
.song-form .btn{margin-top:18px}.song-form .fine{font-size:.8rem;margin-top:12px}
.song-form .row2{gap:12px}@media(max-width:560px){.song-form .row2{grid-template-columns:1fr}}
.voice-set{border:0;margin:0;padding:0;min-width:0}.voice-set legend{margin-bottom:5px}
.pill{display:inline-block!important;margin:5px 6px 0 0!important}.pill input{position:absolute;opacity:0;pointer-events:none}
.pill span{display:inline-block;border:1.5px solid #cbd5e1;border-radius:99px;padding:.55em 1.05em;cursor:pointer;font-weight:600}
.pill input:checked+span{background:var(--brand);border-color:var(--brand);color:#fff}.pill input:focus-visible+span{outline:3px solid var(--brand-l)}
.song-result{min-height:280px}
.res-empty{text-align:center;color:var(--muted);padding:30px 10px}.res-empty b{color:var(--ink)}
.res-ico{font-size:2.4rem;margin:0;color:var(--brand)}
.res-status{display:flex;align-items:center;gap:10px;font-weight:700;margin:0 0 12px;color:var(--brand-d)}
.spinner{width:18px;height:18px;border:3px solid var(--brand-l);border-top-color:var(--brand);border-radius:50%;animation:sp 0.9s linear infinite;flex:none}
@keyframes sp{to{transform:rotate(360deg)}}
.res-status.done .spinner{display:none}.res-status.err{color:#b91c1c}.res-status.err .spinner{display:none}
.res-player{background:var(--glow);border:1px solid var(--brand-l);border-radius:14px;padding:12px 14px;margin-bottom:12px}.res-player audio{width:100%}.res-player p{margin:6px 0 0}
.res-title{margin:6px 0 8px}
.res-lyrics{max-height:340px;overflow:auto;border:1px solid var(--line);border-radius:12px;padding:10px 14px;font-size:.95rem;line-height:1.55;background:#fff}
.res-lyrics p{margin:0 0 .8em}.res-lyrics .tag{display:block;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--brand)}
.res-cta{display:grid;gap:10px;margin-top:14px}
.ex-grid{display:grid;gap:18px;margin-top:22px}@media(min-width:760px){.ex-grid{grid-template-columns:repeat(2,1fr)}}
.ex-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px}
.ex-card h3{margin:.2em 0}.ex-label{margin:0;font-weight:800;font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--brand)}
.ex-meta{margin:0 0 10px;color:var(--muted);font-size:.9rem}.ex-card audio{width:100%}
.ex-facts{font-size:.88rem;color:#475569;margin:10px 0 0}.ex-lyr{font-size:.9rem;color:#334155;border-left:3px solid var(--brand-l);padding-left:12px;margin:10px 0 0;font-style:italic}
.ny{background:linear-gradient(135deg,#0c4a6e,#1e3a8a);color:#fff}
.ny-in{display:grid;gap:26px}@media(min-width:960px){.ny-in{grid-template-columns:1.1fr 1fr;align-items:center}}
.ny .lead{color:#e0f2fe}.ny-eyebrow{background:#e0f2fe;color:#0c4a6e}.ny .ex-card{color:var(--ink)}
.ny .btn-primary{background:#fff;color:#0c4a6e}.ny .btn-primary:hover{background:#e0f2fe}
.song-chip{background:var(--glow);border-radius:10px;padding:.5em .8em;font-size:.9rem;margin:8px 0 0}
.card-page main{padding:40px 20px}.card-page .lyrics{text-align:left;margin-top:24px;background:var(--alt);border-radius:14px;padding:16px 20px}
