/* Companion styles for the source-based generator and playlist player. */
/* 3D coverflow player */
.hero-player-area{padding:22px 18px 20px;min-height:430px;display:flex;flex-direction:column;justify-content:center;gap:12px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 32%,rgba(56,91,120,.15),transparent 53%),linear-gradient(180deg,rgba(18,25,41,.8),rgba(11,18,26,.25));border-bottom:1px solid rgba(163,255,239,.09)}
.cf-carousel{height:250px;width:100%;position:relative;perspective:1000px;overflow:hidden;isolation:isolate}
.cf-card{position:absolute;top:50%;left:50%;width:clamp(130px,18vw,220px);height:clamp(150px,20vw,220px);padding:0;border:1px solid rgba(223,255,249,.25);border-radius:17px;overflow:hidden;background:#0b2527;box-shadow:0 18px 45px #0007;transform:translate(-50%,-50%);transform-origin:center center;transition:transform .35s ease,opacity .35s ease,filter .35s ease;cursor:pointer;color:#f5fffd;display:block}
.cf-card img{width:100%;height:100%;display:block;object-fit:cover}.cf-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,8,10,.08),transparent 40%,rgba(0,0,0,.82));pointer-events:none}.cf-card .cf-card-country{position:absolute;top:11px;left:11px;z-index:1;font-size:10px;font-weight:700;text-shadow:0 1px 5px #000}.cf-card .cf-card-title{position:absolute;left:12px;right:12px;bottom:12px;z-index:1;font-size:12px;font-weight:900;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cf-card .cf-card-badge{position:absolute;top:10px;right:10px;z-index:2;padding:5px 8px;background:rgba(243,249,250,.92);color:#1b262e;border-radius:99px;font-size:8px;font-weight:800;white-space:nowrap}.cf-card.is-center{border-color:rgba(236,255,252,.75);box-shadow:0 16px 50px #0009,0 0 0 1px rgba(73,245,213,.18)}
.hero-controls-area{width:min(100%,470px);margin:0 auto;text-align:center}.hero-title{margin:0 0 8px;font-size:17px;font-weight:900;color:#edfdfa}.hero-tags{display:flex;justify-content:center;gap:6px;margin-bottom:13px}.hero-tag-pill{padding:4px 9px;border:1px solid rgba(163,255,239,.13);border-radius:99px;background:rgba(255,255,255,.025);font-size:9px;font-weight:800;color:#9db2b0}.hero-progress-bar{display:flex;align-items:center;gap:11px;margin:12px 0}.hero-time{width:36px;color:#879b9e;font-size:10px;font-variant-numeric:tabular-nums}.hero-range{width:100%;accent-color:#e644a5;min-width:0;cursor:pointer}.hero-buttons{display:flex;align-items:center;justify-content:center;gap:15px}.h-btn{width:25px;height:30px;display:grid;place-items:center;border:0;background:transparent;color:#9daab4}.h-btn:hover{color:#fff}.h-play-btn{width:45px;height:45px;border:0;border-radius:50%;display:grid;place-items:center;color:#032d2a;background:linear-gradient(135deg,#57f4d9,#20c9bc);box-shadow:0 7px 25px rgba(73,245,213,.24);font-size:17px}.h-play-btn:hover{filter:brightness(1.08);transform:translateY(-1px)}
.music-panel .music-header{position:relative;z-index:2}.music-panel .music-feed{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain}.music-panel .music-pagination{flex:none}.model-selector-wrap{position:relative;display:flex;align-items:center;gap:8px;padding:0 9px 0 0;border:1px solid rgba(163,255,239,.17);border-radius:14px;background:rgba(17,31,34,.92);margin:4px 0 16px;cursor:pointer}.custom-dropdown-trigger{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;flex:1;padding:13px 15px;color:#edfdfa}.custom-dropdown-trigger span{font-size:12px;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.custom-dropdown-menu{display:none;position:absolute;top:calc(100% + 7px);left:0;right:0;max-height:300px;overflow:auto;z-index:1500;padding:6px;border:1px solid rgba(163,255,239,.2);border-radius:13px;background:#0b1719;box-shadow:0 18px 40px #000a}.custom-dropdown-menu.open{display:block}.custom-model-option{display:flex;justify-content:space-between;gap:12px;width:100%;padding:10px;border:0;border-radius:8px;background:transparent;color:#cfe7e2;text-align:left;font-size:11px}.custom-model-option:hover,.custom-model-option.active{background:rgba(73,245,213,.1);color:#65f5dc}.custom-model-option small{color:#73a69a;white-space:nowrap}.cost-badge{padding:6px 9px;border-radius:99px;background:rgba(73,245,213,.1);color:#6bf6dd;font-size:9px;font-weight:900;white-space:nowrap}.rcs-tabs{display:flex;gap:5px;align-items:center;overflow:auto;border-bottom:1px solid rgba(163,255,239,.1);padding-bottom:7px;margin-bottom:14px}.tab-btn{border:0;border-radius:9px;background:transparent;color:#849b96;padding:10px 13px;font-size:11px;font-weight:800;white-space:nowrap}.tab-btn.active{color:#ecfffb;background:rgba(73,245,213,.1)}.mode-panel{min-width:0}.rcs-textarea,.rcs-input{display:block;width:100%;border:1px solid rgba(163,255,239,.15)!important;border-radius:12px!important;background:#071214!important;color:#e8f8f4!important;outline:none;box-shadow:none!important}.rcs-textarea{min-height:95px;padding:13px;resize:vertical;font-size:12px;line-height:1.65}.rcs-input{padding:10px 12px;font-size:12px}.rcs-textarea:focus,.rcs-input:focus{border-color:rgba(73,245,213,.6)!important;box-shadow:0 0 0 3px rgba(73,245,213,.08)!important}.file-upload-box{position:relative;cursor:pointer;border:1px dashed rgba(163,255,239,.22);border-radius:14px;background:rgba(255,255,255,.02);padding:18px}.file-upload-box input[type=file]{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}.ace-card{padding:14px;border:1px solid rgba(163,255,239,.11);border-radius:15px;background:rgba(10,24,26,.55);margin-bottom:12px}.setting-label{display:block;color:#d8f2ec;font-weight:800}.chips-container{display:flex;gap:6px;flex-wrap:wrap}.prompt-chip{padding:8px 10px;border:1px solid rgba(163,255,239,.12);border-radius:99px;background:rgba(255,255,255,.035);color:#a9c5bf;font-size:10px;font-weight:750}.prompt-chip:hover,.prompt-chip.active{color:#5df5db;border-color:rgba(73,245,213,.38);background:rgba(73,245,213,.08)}.btn-generate{display:flex;align-items:center;justify-content:center;gap:9px;min-height:47px;border:1px solid rgba(108,255,229,.42);border-radius:13px;background:linear-gradient(105deg,#50f2d1,#21c8bc);color:#042a26;font-weight:950;letter-spacing:.035em;box-shadow:0 8px 24px rgba(43,225,197,.15)}.btn-generate:hover{filter:brightness(1.06);transform:translateY(-1px)}.btn-generate[disabled]{filter:grayscale(.35);transform:none}.action-row{display:flex;align-items:center;gap:8px}.thinking-pill-btn{display:flex;align-items:center;gap:7px;border:1px solid rgba(163,255,239,.18);border-radius:12px;padding:10px;color:#a6c4bc;font-size:10px;font-weight:800}.btn-dice-inspire{height:44px;width:44px;border:1px solid rgba(163,255,239,.16);border-radius:12px;background:rgba(73,245,213,.08);color:#7bf8e0}.music-panel .list-item{display:grid;grid-template-columns:62px minmax(0,1fr) 38px auto;align-items:center;gap:12px;padding:12px 14px;border-bottom:1px solid rgba(163,255,239,.1)}.li-thumb-play{cursor:pointer}.li-info-container{min-width:0}.li-title-row{display:flex;align-items:center;gap:8px;min-width:0}.li-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#e9fffa;font-size:11px;font-weight:850}.li-model-badge{padding:4px 6px;border-radius:7px;border:1px solid rgba(73,245,213,.14);color:#74dccc;font-size:8px;white-space:nowrap}.li-subtitle{margin-top:4px;color:#7c9b94;font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.li-actions-right{display:flex;gap:5px}.li-icon-btn{width:32px;height:32px;border:1px solid rgba(163,255,239,.14);border-radius:9px;background:rgba(255,255,255,.025);color:#aacdc4}.li-icon-btn:hover{color:#5cf5d9;border-color:rgba(73,245,213,.4)}.li-equalizer{display:none}.music-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 15px;border-top:1px solid rgba(163,255,239,.1)}.pagination-summary{font-size:10px;color:#89b9ac}.pagination-controls{display:flex;align-items:center;gap:5px}.pagination-controls button{min-width:34px;height:35px;padding:0 9px;border:1px solid rgba(163,255,239,.13);border-radius:10px;background:rgba(255,255,255,.025);color:#abcac1;font-size:10px;font-weight:850}.pagination-controls button.active{background:linear-gradient(135deg,#52f4d5,#1fc8b9);color:#03312b;border-color:transparent}.pagination-controls button:disabled{opacity:.28}.snv-playlist-no-results{padding:35px;text-align:center;color:#9ab7af;font-size:12px}
@media(max-width:760px){.hero-player-area{min-height:365px;padding:15px 8px}.cf-carousel{height:205px}.cf-card{width:154px;height:174px}.music-panel .music-header{align-items:flex-start;flex-direction:column}.music-panel .music-header-actions{width:100%}.music-panel .music-search-wrap{flex:1;width:auto}.music-panel .list-item{grid-template-columns:54px minmax(0,1fr) auto;gap:8px}.music-panel .li-actions-right{grid-column:3}.music-pagination{align-items:flex-start;flex-direction:column}.pagination-controls{flex-wrap:wrap}.hero-title{font-size:15px}}
