.music-request-section{scroll-margin-top:92px}.music-request-shell{position:relative;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);gap:22px;padding:clamp(22px,4vw,42px);overflow:hidden;border:1px solid rgba(255,132,187,.48);border-radius:34px;background:linear-gradient(135deg,rgba(255,246,205,.9),rgba(255,228,241,.92) 52%,rgba(236,226,255,.88));box-shadow:0 22px 64px rgba(201,80,139,.18)}.music-request-shell:before,.music-request-shell:after{content:"";position:absolute;border-radius:50%;pointer-events:none}.music-request-shell:before{width:220px;height:220px;right:-78px;top:-92px;background:radial-gradient(circle,rgba(255,255,255,.82),rgba(255,210,232,.08) 70%)}.music-request-shell:after{width:180px;height:180px;left:-86px;bottom:-100px;background:radial-gradient(circle,rgba(255,226,113,.42),rgba(255,226,113,0) 72%)}.music-request-intro,.music-request-form{position:relative;z-index:1}.music-request-intro h2{margin:12px 0 10px;font-size:clamp(30px,4.4vw,52px);letter-spacing:-.045em;color:#cf4f87}.music-request-intro>p{max-width:650px;margin:0;color:#715366;line-height:1.72}.music-request-intro b{color:#d34782}.music-request-live-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:22px}.music-request-open-badge,.music-request-queue-count{display:inline-flex;align-items:center;min-height:38px;padding:8px 13px;border-radius:999px;font-size:.86rem;font-weight:900}.music-request-open-badge{gap:8px;background:rgba(67,181,119,.16);color:#2f8156}.music-request-open-badge:before{content:"";width:9px;height:9px;border-radius:50%;background:#4ac47e;box-shadow:0 0 0 5px rgba(74,196,126,.13)}.music-request-open-badge.is-closed{background:rgba(203,83,107,.14);color:#a74158}.music-request-open-badge.is-closed:before{background:#d45d76;box-shadow:0 0 0 5px rgba(212,93,118,.12)}.music-request-queue-count{background:rgba(255,255,255,.62);color:#705064}.music-request-queue-count b{margin:0 3px;color:#d34782}.music-request-now{display:grid;grid-template-columns:72px minmax(0,1fr);align-items:center;gap:14px;margin-top:18px;padding:13px;border:1px solid rgba(255,255,255,.76);border-radius:22px;background:rgba(255,255,255,.5)}.music-request-now:not(:has(img:not([hidden]))){grid-template-columns:1fr}.music-request-now img{width:72px;height:72px;border-radius:16px;object-fit:cover;box-shadow:0 8px 20px rgba(78,41,64,.16)}.music-request-now div{display:grid;min-width:0;gap:4px}.music-request-now span{font-size:.68rem;font-weight:900;letter-spacing:.16em;color:#d34782}.music-request-now strong{overflow:hidden;font-size:1rem;text-overflow:ellipsis;white-space:nowrap;color:#5e4052}.music-request-now small{overflow:hidden;color:#896d7d;text-overflow:ellipsis;white-space:nowrap}.music-request-intro .music-request-distinction{margin-top:15px;font-size:.84rem}.music-request-distinction a{color:#c7427e;font-weight:900}.music-request-form{align-self:start;padding:22px;border:1px solid rgba(255,255,255,.84);border-radius:26px;background:rgba(255,255,255,.72);box-shadow:0 16px 38px rgba(112,67,91,.12);backdrop-filter:blur(14px)}.music-request-field{display:grid;gap:7px;margin-bottom:14px}.music-request-field label{font-weight:900;color:#69485c}.music-request-field input,.music-request-field textarea{width:100%;border:1px solid rgba(211,71,130,.26);border-radius:16px;background:rgba(255,255,255,.82);color:#5d4051;font:inherit;outline:none;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.music-request-field input{min-height:48px;padding:0 14px}.music-request-field textarea{min-height:112px;padding:13px 14px;resize:vertical;line-height:1.55}.music-request-field input:focus,.music-request-field textarea:focus{border-color:#ec6fa5;box-shadow:0 0 0 4px rgba(236,111,165,.14)}.music-request-field small{color:#927587;font-size:.77rem;line-height:1.45}.music-request-submit{width:100%;min-height:52px;border:0;border-radius:17px;background:linear-gradient(135deg,#ed69a4,#ffad76 58%,#ffd168);color:#fff;font:900 1rem/1 inherit;cursor:pointer;box-shadow:0 12px 24px rgba(229,89,146,.25);transition:transform .18s ease,filter .18s ease}.music-request-submit:hover:not(:disabled){transform:translateY(-2px);filter:saturate(1.08)}.music-request-submit:disabled{cursor:not-allowed;filter:grayscale(.3);opacity:.62}.music-request-message{min-height:0;margin:13px 0 0;padding:0;color:#735164;font-weight:800;line-height:1.5;text-align:center}.music-request-message:empty{display:none}.music-request-message.is-success{padding:11px 12px;border-radius:14px;background:rgba(73,190,124,.13);color:#2e7a52}.music-request-message.is-error{padding:11px 12px;border-radius:14px;background:rgba(217,81,110,.12);color:#a43d54}.music-request-privacy{margin:11px 0 0;color:#9a7b8d;font-size:.72rem;line-height:1.5;text-align:center}.theme-dark .music-request-shell{border-color:rgba(255,139,193,.34);background:linear-gradient(135deg,rgba(91,71,39,.82),rgba(77,37,59,.92) 54%,rgba(54,40,80,.9))}.theme-dark .music-request-intro h2{color:#ff9bc8}.theme-dark .music-request-intro>p,.theme-dark .music-request-field label,.theme-dark .music-request-now strong{color:#f2dce8}.theme-dark .music-request-now,.theme-dark .music-request-form{border-color:rgba(255,255,255,.12);background:rgba(36,24,42,.64)}.theme-dark .music-request-field input,.theme-dark .music-request-field textarea{border-color:rgba(255,151,198,.28);background:rgba(255,255,255,.08);color:#fff}.theme-dark .music-request-queue-count{background:rgba(255,255,255,.1);color:#f3dce8}.theme-dark .music-request-field small,.theme-dark .music-request-now small,.theme-dark .music-request-privacy{color:#c5a9b9}@media(max-width:840px){.music-request-shell{grid-template-columns:1fr}.music-request-form{padding:18px}}@media(max-width:520px){.music-request-shell{gap:17px;padding:18px 14px;border-radius:26px}.music-request-intro h2{font-size:32px}.music-request-now{grid-template-columns:58px minmax(0,1fr)}.music-request-now img{width:58px;height:58px;border-radius:14px}.music-request-form{border-radius:22px}.music-request-live-row>*{width:100%;justify-content:center}}@media(prefers-reduced-motion:reduce){.music-request-field input,.music-request-field textarea,.music-request-submit{transition:none}}
