body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}body,html{background-color:#000}:root{--osd-purple:#6f42c1;--osd-purple-hover:#5a32a3;--osd-purple-glow:#6f42c126}.osd-auth-page{align-items:center;background:#111827;color:#f9fafb;display:flex;font-family:Inter,system-ui,sans-serif;justify-content:center;min-height:100vh}.osd-auth-card{background:#1f2937;border-radius:24px;box-shadow:0 25px 70px #00000059;margin:2em;padding:2.5rem;width:min(420px,90%)}.osd-auth-card h1{color:#6f42c1;color:var(--osd-purple);font-size:4rem;margin:0}.osd-auth-card p{color:#9ca3af;margin-bottom:2rem}.osd-auth-card form{grid-gap:1rem;display:grid;gap:1rem}.osd-auth-card input{background:#111827;border:1px solid #374151;border-radius:12px;color:#fff;padding:1rem}.osd-auth-card button{background:#6f42c1;background:var(--osd-purple);border:none;border-radius:12px;color:#fff;cursor:pointer;font-weight:900;padding:1rem}.osd-auth-card button:hover{background:#5a32a3;background:var(--osd-purple-hover)}.auth-switch{color:#9ca3af;margin-top:1.5rem;text-align:center}.auth-switch button{background:#0000;border:none;color:#6f42c1;color:var(--osd-purple);cursor:pointer;font-weight:800;margin-left:.4rem}.auth-error{background:#f871711a;border:1px solid #f871714d;border-radius:10px;color:#f87171!important}.auth-error,.auth-success{font-size:.85rem;padding:.75rem;text-align:left!important}.auth-success{background:#4ade801a;border:1px solid #4ade804d;border-radius:10px;color:#4ade80!important}.osd-dashboard-page{background:#020617;color:#f9fafb;font-family:Inter,system-ui,sans-serif;min-height:100vh;padding:2rem}.osd-dashboard-nav{align-items:center;display:flex;justify-content:space-between;margin-bottom:4rem}.osd-dashboard-nav h1{color:#6f42c1;color:var(--osd-purple);font-size:2.5rem;font-weight:900;margin:0}.osd-dashboard-nav p{color:#9ca3af;margin:0}.dashboard-card button,.osd-dashboard-nav button{background:#6f42c1;background:var(--osd-purple);border:none;border-radius:12px;color:#fff;cursor:pointer;font-weight:900;padding:.8rem 1.2rem;transition:.2s ease}.dashboard-card button:hover,.osd-dashboard-nav button:hover{background:#5a32a3;background:var(--osd-purple-hover);transform:translateY(-2px)}.osd-dashboard-hero{margin-bottom:3rem;max-width:800px}.dashboard-eyebrow{color:#6f42c1;color:var(--osd-purple);font-weight:800;letter-spacing:.15rem;text-transform:uppercase}.osd-dashboard-hero h2{font-size:clamp(2.5rem,7vw,5rem);margin:.5rem 0}.osd-dashboard-hero p{color:#d1d5db;font-size:1.2rem;line-height:1.6}.dashboard-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(3,minmax(220px,1fr))}.dashboard-card{background:#111827;border:1px solid #1f2937;border-radius:24px;box-shadow:0 20px 60px #00000059;padding:2rem}.dashboard-card h3{font-size:1.5rem;margin-bottom:1rem}.dashboard-card p{color:#9ca3af;line-height:1.5;min-height:50px}@media (max-width:800px){.osd-dashboard-nav{align-items:center;flex-direction:row;gap:1rem;justify-content:space-between}.osd-dashboard-nav button{flex-shrink:0}.dashboard-grid{grid-template-columns:1fr}}.upload-page{align-items:center;background:#020617;color:#f9fafb;display:flex;font-family:Inter,system-ui,sans-serif;justify-content:center;min-height:100vh;padding:2rem}.upload-card{background:#111827;border:1px solid #1f2937;border-radius:24px;box-shadow:0 25px 70px #00000073;padding:2rem;width:min(720px,100%)}.back-btn{font-weight:800;margin-bottom:1.5rem}.upload-card h1{color:#6f42c1;color:var(--osd-purple);font-size:clamp(2.5rem,7vw,4rem);margin:0}.upload-subtitle{color:#9ca3af;font-size:1.1rem;margin:.5rem 0 2rem}.upload-form{grid-gap:1.2rem;display:grid;gap:1.2rem}.upload-form>label{grid-gap:.5rem;color:#d1d5db;display:grid;font-weight:800;gap:.5rem}.custom-file-box,.upload-form input:not([type=file]),.upload-form select{background:#020617;border:1px solid #374151;border-radius:18px;box-sizing:border-box;color:#fff;font-size:1rem;height:74px;outline:none;padding:0 1.4rem;width:100%}.custom-file-box:focus-within,.upload-form input:not([type=file]):focus,.upload-form select:focus{border-color:#6f42c1;border-color:var(--osd-purple);box-shadow:0 0 0 3px #6f42c126;box-shadow:0 0 0 3px var(--osd-purple-glow)}.upload-form select{appearance:none;-webkit-appearance:none;cursor:pointer}.custom-file-box{align-items:center;display:flex;gap:1rem}.custom-file-box input[type=file]{display:none}.custom-file-btn{align-items:center;background:#6f42c1;background:var(--osd-purple);border-radius:12px;color:#fff!important;cursor:pointer;display:inline-flex!important;font-weight:900;justify-content:center;padding:.85rem 1rem;white-space:nowrap}.custom-file-btn:hover{background:#5a32a3;background:var(--osd-purple-hover)}.custom-file-box span{color:#9ca3af}.audio-preview{background:#020617;border:1px solid #1f2937;border-radius:18px;padding:1rem}.audio-preview p{color:#6f42c1;color:var(--osd-purple);font-weight:900;margin-bottom:.8rem}.audio-preview audio{width:100%}.submit-track-btn{background:#6f42c1;background:var(--osd-purple);border:none;border-radius:14px;color:#fff;cursor:pointer;font-weight:900;margin-top:1rem;padding:1rem;transition:.2s ease}.submit-track-btn:hover{background:#5a32a3;background:var(--osd-purple-hover);transform:translateY(-2px)}.upload-page{overflow-x:hidden}.custom-file-box,.upload-card{max-width:100%;overflow:hidden}.custom-file-box{min-width:0}.custom-file-btn{flex-shrink:0}.custom-file-box span{display:block;flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:600px){.upload-page{padding:1rem}.upload-card{padding:1.5rem}.custom-file-box{align-items:center;flex-direction:row;gap:.75rem;height:74px;padding:0 1rem}.custom-file-btn{flex-shrink:0;font-size:.85rem;max-width:150px;padding:.75rem .9rem;width:auto}.custom-file-box span{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:auto}}.rate-page{align-items:center;background:#020617;color:#f9fafb;display:flex;font-family:Inter,system-ui,sans-serif;justify-content:center;min-height:100vh;padding:1.25rem}.rate-card{background:#111827;border:1px solid #1f2937;border-radius:18px;box-shadow:0 18px 45px #00000052;padding:1.25rem;width:min(560px,100%)}.rate-state-card{margin-top:0}.back-btn{background:#0000;border:none;color:#9ca3af;cursor:pointer;font-weight:700;margin-bottom:1rem;padding:0}.back-btn:hover{color:#fff}.rate-header{align-items:center;display:flex;gap:.75rem;justify-content:space-between;margin-bottom:.75rem}.rate-eyebrow{color:#6f42c1;color:var(--osd-purple);font-size:.72rem;font-weight:900;letter-spacing:.14rem;margin:0;text-transform:uppercase}.rate-average-pill{background:#6f42c11f;border:1px solid #6f42c147;border-radius:999px;color:#c4b5fd;font-size:.72rem;font-weight:800;padding:.35rem .6rem;white-space:nowrap}.track-hero{grid-gap:1rem;align-items:center;display:grid;gap:1rem;grid-template-columns:92px 1fr;margin-bottom:1rem}.rate-cover-wrap{display:flex;height:92px;width:92px}.rate-cover-art{border:1px solid #7c3aed47;border-radius:14px;box-shadow:0 12px 28px #00000047;height:92px;object-fit:cover;width:92px}.track-info{min-width:0}.rate-card h1{color:#f9fafb;font-size:clamp(1.65rem,5vw,2.35rem);line-height:1.05;margin:0;overflow-wrap:anywhere}.rate-subtitle{color:#9ca3af;font-size:.95rem;margin:.35rem 0 0}.rate-player{margin:1rem 0 1.1rem}.custom-audio-player{align-items:center;background:#020617;border:1px solid #243044;border-radius:14px;box-sizing:border-box;display:flex;gap:.85rem;padding:.75rem;width:100%}.audio-play-btn{align-items:center;background:#6f42c1;background:var(--osd-purple);border:none;border-radius:30%;color:#fff;cursor:pointer;display:flex;font-size:.85rem;height:38px;justify-content:center;min-width:38px;transition:.2s ease;width:38px}.audio-play-btn:hover{background:#5a32a3;background:var(--osd-purple-hover);transform:scale(1.03)}.audio-progress-area{display:flex;flex:1 1;flex-direction:column;gap:.32rem}.audio-time-row{color:#a78bfa;display:flex;font-size:.7rem;font-weight:700;justify-content:space-between}.audio-progress-bar{background:#374151;border-radius:999px;cursor:pointer;height:6px;overflow:hidden;width:100%}.audio-progress-fill{background:#6f42c1;background:var(--osd-purple);border-radius:999px;height:100%;transition:width .1s linear}.rating-form{grid-gap:.75rem;display:grid;gap:.75rem}.rating-row{grid-gap:.55rem .8rem;align-items:center;background:#020617;border:1px solid #243044;border-radius:14px;display:grid;gap:.55rem .8rem;grid-template-columns:1fr auto;padding:.85rem}.rating-row label{color:#f9fafb;font-size:.95rem;font-weight:900}.rating-row p{color:#9ca3af;font-size:.78rem;line-height:1.35;margin:.15rem 0 0}.rating-row span{color:#6f42c1;color:var(--osd-purple);font-size:1.15rem;font-weight:900}.rating-row input[type=range]{appearance:none!important;background:#0000!important;cursor:pointer;grid-column:1/-1;height:18px;outline:none;width:100%}.rating-row input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(90deg,#6f42c1 0,#6f42c1 50%,#374151 0,#374151)!important;background:linear-gradient(to right,var(--osd-purple) 0,var(--osd-purple) var(--range-progress,50%),#374151 var(--range-progress,50%),#374151 100%)!important;border-radius:999px;height:6px;width:100%}.rating-row input[type=range]::-webkit-slider-thumb{appearance:none!important;background:#fff;border:3px solid #6f42c1;border:3px solid var(--osd-purple);border-radius:50%;box-shadow:0 0 0 3px #6f42c121;cursor:pointer;height:18px;margin-top:-6px;width:18px}.rating-row input[type=range]::-moz-range-track{background:#374151;border-radius:999px;height:6px}.rating-row input[type=range]::-moz-range-progress{background:#6f42c1;background:var(--osd-purple);border-radius:999px;height:6px}.rating-row input[type=range]::-moz-range-thumb{background:#fff;border:3px solid #6f42c1;border:3px solid var(--osd-purple);border-radius:50%;cursor:pointer;height:18px;width:18px}.rating-row input[type=range]:disabled{cursor:not-allowed;opacity:.55}.rating-actions{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:1fr auto;margin-top:.25rem}.rating-result button,.skip-track-btn,.submit-rating-btn{border-radius:12px;cursor:pointer;font-weight:900;min-height:44px;padding:.75rem 1rem;transition:.2s ease}.rating-result button,.submit-rating-btn{background:#6f42c1;background:var(--osd-purple);border:none;color:#fff}.rating-result button:hover,.submit-rating-btn:hover{background:#5a32a3;background:var(--osd-purple-hover);transform:translateY(-1px)}.submit-rating-btn:disabled{cursor:not-allowed;opacity:.7;transform:none}.skip-track-btn{background:#0000;border:1px solid #7c3aed66;color:#c4b5fd}.skip-track-btn:hover{background:#7c3aed1f;color:#fff;transform:translateY(-1px)}.rating-result{background:#020617;border:1px solid #6f42c173;border-radius:16px;margin-top:1rem;padding:1rem;text-align:center}.rating-result p{color:#9ca3af;font-size:.72rem;font-weight:800;letter-spacing:.1rem;margin:0;text-transform:uppercase}.rating-result h2{color:#6f42c1;color:var(--osd-purple);font-size:2.8rem;margin:.25rem 0}.score-breakdown{color:#d1d5db;display:flex;font-size:.85rem;font-weight:900;gap:.75rem;justify-content:center}.upload-status{color:#c4b5fd;font-size:.82rem;font-weight:700;margin:.25rem 0 0}.preview-player{align-items:center;background:#111827;border:1px solid #7c3aed59;border-radius:14px;box-sizing:border-box;display:flex;gap:.85rem;margin-top:.75rem;padding:.75rem;width:100%}.preview-play-btn{align-items:center;background:#6f42c1;background:var(--osd-purple);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:.85rem;height:38px;justify-content:center;min-width:38px;transition:.2s ease;width:38px}.preview-play-btn:hover{background:#5a32a3;background:var(--osd-purple-hover);transform:scale(1.03)}.preview-progress-wrap{display:flex;flex:1 1;flex-direction:column;gap:.32rem}.preview-time-row{color:#a78bfa;display:flex;font-size:.7rem;font-weight:700;justify-content:space-between}.preview-progress-bar{background:#374151;border-radius:999px;cursor:pointer;height:6px;overflow:hidden;width:100%}.preview-progress-fill{background:#6f42c1;background:var(--osd-purple);border-radius:999px;height:100%;transition:width .1s linear}@media (max-width:600px){.rate-page{padding:.75rem}.rate-card{border-radius:16px;padding:1rem}.track-hero{gap:.8rem;grid-template-columns:74px 1fr}.rate-cover-art,.rate-cover-wrap{border-radius:12px;height:74px;width:74px}.rate-card h1{font-size:1.55rem}.rate-subtitle{font-size:.85rem}.rating-row{padding:.75rem}.rating-row p{display:none}.rating-actions{grid-template-columns:1fr}.skip-track-btn{width:100%}.score-breakdown{flex-direction:column;gap:.25rem}}.my-tracks-panel{background:#111827;border:1px solid #1f2937;border-radius:18px;box-shadow:0 18px 45px #00000047;margin-bottom:2em;margin-top:2rem;padding:1.25rem}.my-tracks-header{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.my-tracks-header h3{color:#f9fafb;font-size:1.35rem;margin:.2rem 0 0}.my-tracks-count{background:#6f42c11f;border:1px solid #6f42c147;border-radius:999px;color:#c4b5fd;font-size:.78rem;font-weight:900;padding:.4rem .65rem;white-space:nowrap}.my-tracks-empty{background:#020617;border:1px solid #243044;border-radius:14px;color:#9ca3af;margin:0;padding:1rem}.my-tracks-empty p{margin:0}.my-tracks-list{grid-gap:.85rem;display:grid;gap:.85rem}.my-track-card{grid-gap:.85rem;align-items:center;background:#020617;border:1px solid #243044;border-radius:14px;display:grid;gap:.85rem;grid-template-columns:64px 1fr;padding:.8rem;transition:border-color .2s ease,background .2s ease}.my-track-card-active{background:#6f42c10f;border-color:#6f42c1a6}.my-track-cover{border:1px solid #7c3aed47;border-radius:12px;height:64px;object-fit:cover;width:64px}.my-track-info{min-width:0}.my-track-info h4{color:#f9fafb;font-size:.98rem;line-height:1.2;margin:0;overflow-wrap:anywhere}.my-track-info p{color:#9ca3af;font-size:.78rem;margin:.25rem 0 .45rem}.my-track-stats{display:flex;flex-wrap:wrap;gap:.4rem}.my-track-stats span{background:#6f42c11a;border:1px solid #6f42c138;border-radius:999px;color:#c4b5fd;font-size:.68rem;font-weight:800;padding:.22rem .45rem}.my-track-player{align-items:center;background:#111827;border:1px solid #7c3aed47;border-radius:12px;display:flex;gap:.75rem;grid-column:1/-1;margin-top:.1rem;padding:.65rem}.my-track-play-btn{align-items:center;background:#6f42c1;background:var(--osd-purple);border:none;border-radius:30%;color:#fff;cursor:pointer;display:flex;font-size:.78rem;height:34px;justify-content:center;min-width:34px;transition:.2s ease;width:34px}.my-track-play-btn:hover{background:#5a32a3;background:var(--osd-purple-hover);transform:scale(1.04)}.my-track-progress-area{display:flex;flex:1 1;flex-direction:column;gap:.28rem;min-width:0}.my-track-time-row{color:#a78bfa;display:flex;font-size:.68rem;font-weight:700;justify-content:space-between}.my-track-progress-bar{background:#374151;border-radius:999px;cursor:pointer;height:6px;overflow:hidden;width:100%}.my-track-progress-fill{background:#6f42c1;background:var(--osd-purple);border-radius:999px;height:100%;transition:width .1s linear}.my-tracks-pagination{align-items:center;display:flex;gap:.85rem;justify-content:center;margin-top:1rem}.my-tracks-pagination button{background:#6f42c11f;border:1px solid #7c3aed59;border-radius:50%;color:#c4b5fd;cursor:pointer;font-size:1.1rem;font-weight:900;height:38px;transition:.2s ease;width:38px}.my-tracks-pagination button:hover:not(:disabled){background:#6f42c1;background:var(--osd-purple);color:#fff;transform:translateY(-1px)}.my-tracks-pagination button:disabled{cursor:not-allowed;opacity:.35}.my-tracks-pagination span{color:#9ca3af;font-size:.78rem;font-weight:800}@media (max-width:600px){.my-tracks-header{align-items:flex-start;flex-direction:column}.my-track-card{gap:.75rem;grid-template-columns:56px 1fr}.my-track-cover{height:56px;width:56px}.my-track-info h4{font-size:.92rem}.my-track-info p{font-size:.72rem}.my-track-player{padding:.6rem}}.my-track-cover,.my-track-info{cursor:pointer}.my-track-details-btn{background:#6f42c11a;border:1px solid #7c3aed59;border-radius:999px;color:#c4b5fd;cursor:pointer;font-size:.72rem;font-weight:900;grid-column:1/-1;justify-self:flex-end;padding:.45rem .75rem;transition:.2s ease}.my-track-details-btn:hover{background:#6f42c1;background:var(--osd-purple);color:#fff}.track-modal-backdrop{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#020617c7;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:999}.track-modal{background:#111827;border:1px solid #7c3aed59;border-radius:20px;box-shadow:0 25px 80px #00000080;padding:1.25rem;position:relative;width:min(520px,100%)}.track-modal-close{background:#020617;border:none;border-radius:50%;color:#c4b5fd;cursor:pointer;font-size:1.25rem;height:34px;position:absolute;right:.85rem;top:.85rem;width:34px}.track-modal-close:hover{background:#7c3aed2e;color:#fff}.track-modal-hero{grid-gap:1rem;align-items:center;display:grid;gap:1rem;grid-template-columns:92px 1fr;margin-bottom:1rem;padding-right:2.5rem}.track-modal-cover{border:1px solid #7c3aed4d;border-radius:14px;height:92px;object-fit:cover;width:92px}.track-modal h3{color:#f9fafb;font-size:1.55rem;line-height:1.1;margin:.15rem 0}.track-modal-subtitle{color:#9ca3af;font-size:.9rem;margin:0}.track-modal-grid{grid-gap:.65rem;display:grid;gap:.65rem;grid-template-columns:repeat(4,1fr);margin:1rem 0}.track-modal-stat{background:#020617;border:1px solid #243044;border-radius:14px;padding:.75rem}.track-modal-stat span{color:#9ca3af;display:block;font-size:.68rem;font-weight:800;margin-bottom:.25rem;text-transform:uppercase}.track-modal-stat strong{color:#f9fafb;font-size:1rem}.track-category-breakdown{background:#020617;border:1px solid #243044;border-radius:14px;padding:.9rem}.track-category-breakdown h4{color:#f9fafb;font-size:.95rem;margin:0 0 .8rem}.track-category-row{grid-gap:.7rem;align-items:center;display:grid;gap:.7rem;grid-template-columns:82px 1fr 32px;margin-bottom:.65rem}.track-category-row:last-child{margin-bottom:0}.track-category-row span{color:#d1d5db;font-size:.78rem;font-weight:800}.track-category-row>div{background:#374151;border-radius:999px;height:7px;overflow:hidden}.track-category-row>div>div{background:#6f42c1;background:var(--osd-purple);border-radius:999px;height:100%}.track-category-row strong{color:#c4b5fd;font-size:.8rem;text-align:right}.track-modal-note{color:#9ca3af;font-size:.78rem;line-height:1.5;margin:.85rem 0 0}@media (max-width:600px){.track-modal{padding:1rem}.track-modal-hero{grid-template-columns:72px 1fr}.track-modal-cover{height:72px;width:72px}.track-modal-grid{grid-template-columns:repeat(2,1fr)}.track-category-row{grid-template-columns:76px 1fr 30px}}.history-page{align-items:flex-start;background:#020617;color:#f9fafb;display:flex;font-family:Inter,system-ui,sans-serif;justify-content:center;min-height:100vh;padding:1.25rem}.history-card{background:#111827;border:1px solid #1f2937;border-radius:18px;box-shadow:0 18px 45px #00000052;padding:1.25rem;width:min(860px,100%)}.history-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.history-header h1{color:#f9fafb;font-size:clamp(1.8rem,5vw,2.7rem);line-height:1.05;margin:.25rem 0}.history-subtitle{color:#9ca3af;font-size:.95rem;margin:0;max-width:560px}.history-count{background:#6f42c11f;border:1px solid #6f42c147;border-radius:999px;color:#c4b5fd;font-size:.78rem;font-weight:900;padding:.4rem .65rem;white-space:nowrap}.history-empty{background:#020617;border:1px solid #243044;border-radius:14px;color:#9ca3af;padding:1rem}.history-empty p{margin:0 0 .85rem}.history-empty button{background:#6f42c1;background:var(--osd-purple);border:none;border-radius:12px;color:#fff;cursor:pointer;font-weight:900;padding:.75rem 1rem}.history-list{grid-gap:.85rem;display:grid;gap:.85rem}.history-item{grid-gap:.9rem;background:#020617;border:1px solid #243044;border-radius:14px;display:grid;gap:.9rem;grid-template-columns:76px 1fr;padding:.85rem}.history-cover{border:1px solid #7c3aed47;border-radius:12px;height:76px;object-fit:cover;width:76px}.history-main{min-width:0}.history-title-row{grid-gap:1rem;align-items:flex-start;display:grid;gap:1rem;grid-template-columns:1fr auto;width:100%}.history-title-info{min-width:0}.history-title-row h3{color:#f9fafb;font-size:1.05rem;line-height:1.2;margin:0;overflow-wrap:anywhere}.history-title-row p{color:#9ca3af;font-size:.82rem;margin:.25rem 0 0}.history-score{align-self:start;justify-self:end;min-width:74px;text-align:right}.history-score span{color:#9ca3af;display:block;font-size:.62rem;font-weight:900;letter-spacing:.08rem;margin-bottom:.15rem;text-transform:uppercase}.history-score strong{color:#6f42c1;color:var(--osd-purple);font-size:2rem;font-weight:900;line-height:1}.history-score-grid{grid-gap:.45rem;display:grid;gap:.45rem;margin-top:.85rem}.history-score-row{grid-gap:.65rem;align-items:center;display:grid;gap:.65rem;grid-template-columns:82px 1fr 28px}.history-score-row span{color:#d1d5db;font-size:.76rem;font-weight:800}.history-score-row>div{background:#374151;border-radius:999px;height:6px;overflow:hidden}.history-score-row>div>div{background:#6f42c1;background:var(--osd-purple);border-radius:999px;height:100%}.history-score-row strong{color:#c4b5fd;font-size:.8rem;text-align:right}.history-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.85rem}.history-meta span{background:#6f42c11a;border:1px solid #fff;border-radius:999px;color:#c4b5fd;font-size:.7rem;font-weight:800;padding:.25rem .5rem}@media (max-width:600px){.history-page{padding:.75rem}.history-card{border-radius:16px;padding:1rem}.history-header{flex-direction:column}.history-item{gap:.75rem;grid-template-columns:58px 1fr}.history-cover{height:58px;width:58px}.history-title-row{gap:.75rem;grid-template-columns:1fr auto}.history-title-row h3{font-size:.98rem}.history-score{min-width:58px}.history-score span{font-size:.55rem}.history-score strong{font-size:1.55rem}.history-score-row{grid-template-columns:76px 1fr 26px}}.create-room-page{align-items:center;background:#020617;color:#f9fafb;display:flex;font-family:Inter,system-ui,sans-serif;justify-content:center;min-height:100vh;padding:1.25rem}.create-room-card{background:#111827;border:1px solid #1f2937;border-radius:18px;box-shadow:0 18px 45px #00000052;padding:1.25rem;width:min(520px,100%)}.create-room-card h1{color:#f9fafb;font-size:clamp(2rem,6vw,3rem);line-height:1.05;margin:.25rem 0}.create-room-subtitle{color:#9ca3af;font-size:.95rem;line-height:1.5;margin:.5rem 0 1.25rem}.create-room-form{grid-gap:1rem;display:grid;gap:1rem}.create-room-form label{grid-gap:.45rem;color:#d1d5db;display:grid;font-size:.85rem;font-weight:900;gap:.45rem}.create-room-form input,.create-room-form select{background:#020617;border:1px solid #374151;border-radius:14px;box-sizing:border-box;color:#fff;font-size:.95rem;height:52px;outline:none;padding:0 1rem;width:100%}.create-room-form input:focus,.create-room-form select:focus{border-color:#6f42c1;border-color:var(--osd-purple);box-shadow:0 0 0 3px #6f42c126;box-shadow:0 0 0 3px var(--osd-purple-glow)}.create-room-form select{appearance:none;-webkit-appearance:none;cursor:pointer}.create-room-form button{background:#6f42c1;background:var(--osd-purple);border:none;border-radius:14px;color:#fff;cursor:pointer;font-weight:900;min-height:48px;transition:.2s ease}.create-room-form button:hover{background:#5a32a3;background:var(--osd-purple-hover);transform:translateY(-1px)}.create-room-form button:disabled{cursor:not-allowed;opacity:.65;transform:none}.my-rooms-panel{background:#111827;border:1px solid #1f2937;border-radius:18px;box-shadow:0 18px 45px #00000047;margin-top:2rem;padding:1.25rem}.my-rooms-header{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.my-rooms-header h3{color:#f9fafb;font-size:1.35rem;margin:.2rem 0 0}.my-rooms-create-btn{background:#6f42c1;background:var(--osd-purple);border:none;border-radius:999px;color:#fff;cursor:pointer;font-weight:900;padding:.65rem .9rem;transition:.2s ease;white-space:nowrap}.my-rooms-create-btn:hover{background:#5a32a3;background:var(--osd-purple-hover);transform:translateY(-1px)}.my-rooms-empty{background:#020617;border:1px solid #243044;border-radius:14px;color:#9ca3af;margin:0;padding:1rem}.my-rooms-empty p{margin:0 0 .85rem}.my-rooms-empty button{background:#6f42c1;background:var(--osd-purple);border:none;border-radius:12px;color:#fff;cursor:pointer;font-weight:900;padding:.75rem 1rem}.my-room-card,.my-rooms-list{grid-gap:.85rem;display:grid;gap:.85rem}.my-room-card{background:#020617;border:1px solid #243044;border-radius:14px;padding:.9rem}.my-room-main{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.my-room-main h4{color:#f9fafb;font-size:1rem;margin:0;overflow-wrap:anywhere}.my-room-main p{color:#9ca3af;font-size:.78rem;margin:.25rem 0 0}.my-room-badges{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:flex-end}.my-room-badges span{background:#6f42c11a;border:1px solid #6f42c138;border-radius:999px;color:#c4b5fd;font-size:.68rem;font-weight:800;padding:.25rem .5rem;text-transform:capitalize;white-space:nowrap}.my-room-actions{display:flex;flex-wrap:wrap;gap:.65rem}.my-room-actions button{background:#6f42c1;background:var(--osd-purple);border:none;border-radius:12px;color:#fff;cursor:pointer;font-weight:900;padding:.65rem .85rem;transition:.2s ease}.my-room-actions button:hover{background:#5a32a3;background:var(--osd-purple-hover);transform:translateY(-1px)}.my-room-actions .my-room-secondary-btn{background:#0000;border:1px solid #7c3aed66;color:#c4b5fd}.my-room-actions .my-room-secondary-btn:hover{background:#7c3aed1f;color:#fff}@media (max-width:600px){.my-rooms-header{align-items:flex-start}.my-room-main,.my-rooms-header{flex-direction:column}.my-room-badges{justify-content:flex-start}.my-room-actions{display:grid;grid-template-columns:1fr}}.room-page{align-items:flex-start;background:#020617;color:#f9fafb;display:flex;font-family:Inter,system-ui,sans-serif;justify-content:center;min-height:100vh;padding:1.25rem}.room-card{background:#111827;border:1px solid #1f2937;border-radius:18px;box-shadow:0 18px 45px #00000052;padding:1.25rem;width:min(720px,100%)}.room-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1.25rem}.room-card h1,.room-header h1{color:#f9fafb;font-size:clamp(2rem,6vw,3rem);line-height:1.05;margin:.25rem 0;overflow-wrap:anywhere}.room-subtitle{color:#9ca3af;font-size:.95rem;line-height:1.5;margin:.4rem 0 0}.room-badges{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:flex-end}.room-badges span{background:#6f42c11a;border:1px solid #6f42c138;border-radius:999px;color:#c4b5fd;font-size:.68rem;font-weight:800;padding:.25rem .5rem;text-transform:capitalize;white-space:nowrap}.room-closed-box{background:#020617;border:1px solid #243044;border-radius:14px;color:#9ca3af;padding:1rem}.room-closed-box p{margin:0}.room-submit-form{grid-gap:1rem;display:grid;gap:1rem}.room-form-intro{background:#020617;border:1px solid #243044;border-radius:14px;padding:1rem}.room-form-intro h2{color:#f9fafb;font-size:1.25rem;margin:0 0 .35rem}.room-form-intro p{color:#9ca3af;font-size:.9rem;line-height:1.5;margin:0}.room-submit-form>label{grid-gap:.45rem;color:#d1d5db;display:grid;font-size:.85rem;font-weight:900;gap:.45rem}.room-submit-form input:not([type=file]),.room-submit-form select{background:#020617;border:1px solid #374151;border-radius:14px;box-sizing:border-box;color:#fff;font-size:.95rem;height:52px;outline:none;padding:0 1rem;width:100%}.room-submit-form input:not([type=file]):focus,.room-submit-form select:focus{border-color:#6f42c1;border-color:var(--osd-purple);box-shadow:0 0 0 3px #6f42c126;box-shadow:0 0 0 3px var(--osd-purple-glow)}.room-submit-form select{appearance:none;-webkit-appearance:none;cursor:pointer}.room-submit-btn{background:#6f42c1;background:var(--osd-purple);border:none;border-radius:14px;color:#fff;cursor:pointer;font-weight:900;min-height:48px;transition:.2s ease}.room-submit-btn:hover{background:#5a32a3;background:var(--osd-purple-hover);transform:translateY(-1px)}.room-submit-btn:disabled{cursor:not-allowed;opacity:.65;transform:none}@media (max-width:600px){.room-page{padding:.75rem}.room-card{border-radius:16px;padding:1rem}.room-header{flex-direction:column}.room-badges{justify-content:flex-start}}.host-room-page{align-items:flex-start;background:#020617;color:#f9fafb;display:flex;font-family:Inter,system-ui,sans-serif;justify-content:center;min-height:100vh;padding:1.25rem}.host-room-card{background:#111827;border:1px solid #1f2937;border-radius:18px;box-shadow:0 18px 45px #00000052;padding:1.25rem;width:min(900px,100%)}.host-room-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.host-room-card h1,.host-room-header h1{color:#f9fafb;font-size:clamp(2rem,6vw,3rem);line-height:1.05;margin:.25rem 0;overflow-wrap:anywhere}.host-room-subtitle{color:#9ca3af;font-size:.95rem;line-height:1.5;margin:.4rem 0 0}.host-queue-badges,.host-room-badges{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:flex-end}.host-queue-badges span,.host-room-badges span{background:#6f42c11a;border:1px solid #6f42c138;border-radius:999px;color:#c4b5fd;font-size:.68rem;font-weight:800;padding:.25rem .5rem;text-transform:capitalize;white-space:nowrap}.host-room-actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-bottom:1rem}.host-room-actions button{background:#6f42c1;background:var(--osd-purple);border:none;border-radius:12px;color:#fff;cursor:pointer;font-weight:900;padding:.75rem .95rem;transition:.2s ease}.host-room-actions button:hover{background:#5a32a3;background:var(--osd-purple-hover);transform:translateY(-1px)}.host-room-actions .host-room-secondary-btn{background:#0000;border:1px solid #7c3aed66;color:#c4b5fd}.host-room-actions .host-room-secondary-btn:hover{background:#7c3aed1f;color:#fff}.host-room-stats{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(4,1fr);margin-bottom:1.25rem}.host-room-stats div{background:#020617;border:1px solid #243044;border-radius:14px;padding:.85rem}.host-room-stats span{color:#9ca3af;display:block;font-size:.68rem;font-weight:900;margin-bottom:.25rem;text-transform:uppercase}.host-room-stats strong{color:#f9fafb;font-size:1.45rem}.host-room-section-title{align-items:flex-end;display:flex;gap:1rem;justify-content:space-between;margin:.5rem 0 .85rem}.host-room-section-title h2{color:#f9fafb;font-size:1.25rem;margin:0}.host-room-section-title p{color:#9ca3af;font-size:.82rem;margin:0}.host-room-empty{background:#020617;border:1px solid #243044;border-radius:14px;color:#9ca3af;padding:1rem}.host-room-empty p{margin:0 0 .85rem}.host-room-empty button{background:#6f42c1;background:var(--osd-purple);border:none;border-radius:12px;color:#fff;cursor:pointer;font-weight:900;padding:.75rem 1rem}.host-queue-list{grid-gap:.85rem;display:grid;gap:.85rem}.host-queue-card{grid-gap:.9rem;align-items:center;background:#020617;border:1px solid #243044;border-radius:14px;display:grid;gap:.9rem;grid-template-columns:72px 1fr;padding:.85rem;transition:border-color .2s ease,background .2s ease}.host-queue-card-active{background:#6f42c10f;border-color:#6f42c1a6}.host-queue-cover{border:1px solid #7c3aed47;border-radius:12px;height:72px;object-fit:cover;width:72px}.host-queue-info{min-width:0}.host-queue-info h3{color:#f9fafb;font-size:1.05rem;line-height:1.2;margin:0;overflow-wrap:anywhere}.host-queue-info p{color:#9ca3af;font-size:.82rem;margin:.25rem 0 .5rem}.host-queue-player{align-items:center;background:#111827;border:1px solid #7c3aed47;border-radius:12px;display:flex;gap:.75rem;grid-column:1/-1;padding:.65rem}.host-queue-play-btn{align-items:center;background:#6f42c1;background:var(--osd-purple);border:none;border-radius:30%;color:#fff;cursor:pointer;display:flex;font-size:.8rem;height:36px;justify-content:center;min-width:36px;transition:.2s ease;width:36px}.host-queue-play-btn:hover{background:#5a32a3;background:var(--osd-purple-hover);transform:scale(1.04)}.host-queue-progress-area{display:flex;flex:1 1;flex-direction:column;gap:.28rem;min-width:0}.host-queue-time-row{color:#a78bfa;display:flex;font-size:.68rem;font-weight:700;justify-content:space-between}.host-queue-progress-bar{background:#374151;border-radius:999px;cursor:pointer;height:6px;overflow:hidden;width:100%}.host-queue-progress-fill{background:#6f42c1;background:var(--osd-purple);border-radius:999px;height:100%;transition:width .1s linear}.host-queue-actions{display:flex;flex-wrap:wrap;gap:.55rem;grid-column:1/-1}.host-queue-actions button{background:#6f42c1;background:var(--osd-purple);border:none;border-radius:12px;color:#fff;cursor:pointer;flex:1 1;font-weight:900;min-width:130px;padding:.65rem .75rem;transition:.2s ease}.host-queue-actions button:disabled{cursor:not-allowed;opacity:.45}.host-queue-actions .host-queue-danger{background:#0000;border:1px solid #f8717159;color:#fca5a5}@media (max-width:700px){.host-room-page{padding:.75rem}.host-room-card{border-radius:16px;padding:1rem}.host-room-header{flex-direction:column}.host-room-badges{justify-content:flex-start}.host-room-stats{grid-template-columns:repeat(2,1fr)}.host-room-section-title{align-items:flex-start;flex-direction:column}.host-queue-card{gap:.75rem;grid-template-columns:58px 1fr}.host-queue-cover{height:58px;width:58px}.host-queue-actions{display:grid;grid-template-columns:1fr}.host-queue-actions button{min-width:0}}.host-queue-card[data-queue-status=nowPlaying]{background:#6f42c114;border-color:#6f42c1bf}.host-queue-card[data-queue-status=reviewed]{opacity:.7}.host-queue-card[data-queue-status=skipped]{opacity:.55}.host-room-control-panel{align-items:center;background:#020617;border:1px solid #243044;border-radius:14px;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem;padding:.9rem}.host-room-control-panel p{color:#f9fafb;font-size:.95rem;font-weight:900;margin:0 0 .25rem}.host-room-control-panel span{color:#9ca3af;font-size:.78rem;line-height:1.4}.host-room-control-buttons{display:flex;flex-wrap:wrap;gap:.65rem;justify-content:flex-end}.host-room-control-buttons button{background:#6f42c1;background:var(--osd-purple);border:none;border-radius:12px;color:#fff;cursor:pointer;font-weight:900;padding:.7rem .9rem;transition:.2s ease;white-space:nowrap}.host-room-control-buttons button:hover{background:#5a32a3;background:var(--osd-purple-hover);transform:translateY(-1px)}.host-room-control-buttons .host-room-secondary-btn{background:#0000;border:1px solid #7c3aed66;color:#c4b5fd}.host-room-control-buttons .host-room-secondary-btn:hover{background:#7c3aed1f;color:#fff}.host-room-control-buttons .host-room-danger-btn{background:#0000;border:1px solid #f8717173;color:#fca5a5}.host-room-control-buttons .host-room-danger-btn:hover{background:#f871711f;color:#fff}@media (max-width:700px){.host-room-control-panel{align-items:flex-start;flex-direction:column}.host-room-control-buttons{display:grid;grid-template-columns:1fr;width:100%}.host-room-control-buttons button{width:100%}}.host-queue-badges span,.host-room-badges span{letter-spacing:.01rem}.host-room-control-panel{position:relative}.host-room-control-panel:before{background:#6f42c1;background:var(--osd-purple);border-radius:999px;bottom:.9rem;left:.9rem;opacity:.85;position:absolute;top:.9rem;width:3px}.host-room-control-panel>div:first-child{padding-left:.85rem}.host-room-empty{line-height:1.5}.host-room-private-code-card{align-items:center;background:#d946ef14;border:1px solid #d946ef59;border-radius:14px;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem;padding:.9rem}.host-room-private-code-card p{color:#f9fafb;font-size:.95rem;font-weight:900;margin:0 0 .25rem}.host-room-private-code-card span{color:#d1d5db;font-size:.78rem;line-height:1.4}.host-room-private-code-actions{align-items:center;display:flex;gap:.65rem}.host-room-private-code-actions strong{background:#d946ef29;border:1px solid #d946ef73;border-radius:12px;box-sizing:border-box;color:#fce7f3;font-size:1rem;letter-spacing:.08rem;max-width:100%;overflow-wrap:anywhere;padding:.65rem .85rem}.host-room-private-code-actions button{background:#6f42c1;background:var(--osd-purple);border:none;border-radius:12px;color:#fff;cursor:pointer;font-weight:900;padding:.7rem .9rem;transition:.2s ease;white-space:nowrap}.host-room-private-code-actions button:hover{background:#5a32a3;background:var(--osd-purple-hover);transform:translateY(-1px)}@media (max-width:700px){.host-room-private-code-card{align-items:flex-start;flex-direction:column}.host-room-private-code-actions{display:grid;grid-template-columns:1fr;width:100%}.host-room-private-code-actions button,.host-room-private-code-actions strong{text-align:center;width:100%}}.room-now-playing{background:#020617;border:1px solid #243044;border-radius:16px;margin-bottom:1rem;padding:1rem}.room-section-heading{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.room-section-heading h2{color:#f9fafb;font-size:1.45rem;line-height:1.1;margin:.25rem 0 0}.room-live-pill{background:#6f42c11f;border:1px solid #6f42c147;border-radius:999px;color:#c4b5fd;font-size:.72rem;font-weight:900;padding:.35rem .6rem;white-space:nowrap}.room-empty-now-playing{background:#111827;border:1px solid #243044;border-radius:14px;color:#9ca3af;padding:1rem}.room-empty-now-playing p{line-height:1.5;margin:0}.room-current-song-card{grid-gap:.9rem;align-items:center;display:grid;gap:.9rem;grid-template-columns:84px 1fr;margin-bottom:.9rem}.room-current-cover{border:1px solid #7c3aed4d;border-radius:14px;height:84px;object-fit:cover;width:84px}.room-current-info{min-width:0}.room-current-info h3{color:#f9fafb;font-size:1.2rem;margin:0;overflow-wrap:anywhere}.room-current-info p{color:#9ca3af;font-size:.85rem;margin:.25rem 0 .55rem}.room-current-stats{display:flex;flex-wrap:wrap;gap:.4rem}.room-current-stats span{background:#6f42c11a;border:1px solid #6f42c138;border-radius:999px;color:#c4b5fd;font-size:.68rem;font-weight:800;padding:.25rem .5rem}.room-current-player{align-items:center;background:#111827;border:1px solid #7c3aed47;border-radius:12px;display:flex;gap:.75rem;margin-bottom:1rem;padding:.65rem}.room-current-play-btn{align-items:center;background:#6f42c1;background:var(--osd-purple);border:none;border-radius:30%;color:#fff;cursor:pointer;display:flex;font-size:.8rem;height:36px;justify-content:center;min-width:36px;transition:.2s ease;width:36px}.room-current-play-btn:hover{background:#5a32a3;background:var(--osd-purple-hover);transform:scale(1.04)}.room-current-progress-area{display:flex;flex:1 1;flex-direction:column;gap:.28rem;min-width:0}.room-current-time-row{color:#a78bfa;display:flex;font-size:.68rem;font-weight:700;justify-content:space-between}.room-current-progress-bar{background:#374151;border-radius:999px;cursor:pointer;height:6px;overflow:hidden;width:100%}.room-current-progress-fill{background:#6f42c1;background:var(--osd-purple);border-radius:999px;height:100%;transition:width .1s linear}.room-rating-form{grid-gap:.75rem;display:grid;gap:.75rem}.room-rating-footer{align-items:center;background:#111827;border:1px solid #243044;border-radius:14px;display:flex;gap:1rem;justify-content:space-between;padding:.85rem}.room-rating-footer span{color:#9ca3af;display:block;font-size:.68rem;font-weight:900;margin-bottom:.2rem;text-transform:uppercase}.room-rating-footer strong{color:#6f42c1;color:var(--osd-purple);font-size:1.7rem;line-height:1}.room-rating-footer button{background:#6f42c1;background:var(--osd-purple);border:none;border-radius:12px;color:#fff;cursor:pointer;font-weight:900;padding:.75rem 1rem;transition:.2s ease}.room-rating-footer button:hover{background:#5a32a3;background:var(--osd-purple-hover);transform:translateY(-1px)}.room-rating-footer button:disabled{cursor:not-allowed;opacity:.65;transform:none}.room-submit-section{margin-top:1rem}@media (max-width:600px){.room-section-heading{flex-direction:column}.room-current-song-card{grid-template-columns:68px 1fr}.room-current-cover{height:68px;width:68px}.room-rating-footer{align-items:stretch;flex-direction:column}.room-rating-footer button{width:100%}}.room-results-page{align-items:flex-start;background:#020617;color:#f9fafb;display:flex;font-family:Inter,system-ui,sans-serif;justify-content:center;min-height:100vh;padding:1.25rem}.room-results-card{background:#111827;border:1px solid #1f2937;border-radius:18px;box-shadow:0 18px 45px #00000052;padding:1.25rem;width:min(980px,100%)}.room-results-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.room-results-card h1,.room-results-header h1{color:#f9fafb;font-size:clamp(2rem,6vw,3rem);line-height:1.05;margin:.25rem 0;overflow-wrap:anywhere}.room-results-subtitle{color:#9ca3af;font-size:.95rem;line-height:1.5;margin:.4rem 0 0;max-width:560px}.room-results-header-actions{display:flex;flex-wrap:wrap;gap:.65rem;justify-content:flex-end}.room-results-header-actions button{background:#6f42c1;background:var(--osd-purple);border:none;border-radius:12px;color:#fff;cursor:pointer;font-weight:900;padding:.75rem .95rem;transition:.2s ease;white-space:nowrap}.room-results-header-actions button:hover{background:#5a32a3;background:var(--osd-purple-hover);transform:translateY(-1px)}.room-results-header-actions .room-results-secondary-btn{background:#0000;border:1px solid #7c3aed66;color:#c4b5fd}.room-results-header-actions .room-results-secondary-btn:hover{background:#7c3aed1f;color:#fff}.room-results-summary-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(6,1fr);margin:1rem 0 1.25rem}.room-results-summary-grid div{background:#020617;border:1px solid #243044;border-radius:14px;padding:.85rem}.room-results-summary-grid span{color:#9ca3af;display:block;font-size:.65rem;font-weight:900;margin-bottom:.25rem;text-transform:uppercase}.room-results-summary-grid strong{color:#f9fafb;font-size:1.45rem}.room-results-section-title{align-items:flex-end;display:flex;gap:1rem;justify-content:space-between;margin:1.25rem 0 .85rem}.room-results-section-title h2{color:#f9fafb;font-size:1.25rem;margin:0}.room-results-section-title p{color:#9ca3af;font-size:.82rem;margin:0}.room-results-leaders-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(4,1fr)}.room-results-leader-card{background:#020617;border:1px solid #243044;border-radius:14px;padding:.9rem}.room-results-leader-card span{color:#a78bfa;display:block;font-size:.65rem;font-weight:900;margin-bottom:.4rem;text-transform:uppercase}.room-results-leader-card h3{color:#f9fafb;font-size:.98rem;line-height:1.2;margin:0;overflow-wrap:anywhere}.room-results-leader-card p{color:#9ca3af;font-size:.78rem;margin:.25rem 0 .55rem}.room-results-leader-card strong{color:#6f42c1;color:var(--osd-purple);font-size:1.55rem}.room-results-empty{background:#020617;border:1px solid #243044;border-radius:14px;color:#9ca3af;padding:1rem}.room-results-empty p{margin:0}.room-results-list{grid-gap:.85rem;display:grid;gap:.85rem}.room-results-song-card{grid-gap:.9rem;align-items:center;background:#020617;border:1px solid #243044;border-radius:14px;display:grid;gap:.9rem;grid-template-columns:42px 76px 1fr;padding:.85rem}.room-results-rank{align-items:center;background:#6f42c126;border:1px solid #6f42c159;border-radius:50%;color:#c4b5fd;display:flex;font-size:.82rem;font-weight:900;height:42px;justify-content:center;width:42px}.room-results-cover{border:1px solid #7c3aed47;border-radius:12px;height:76px;object-fit:cover;width:76px}.room-results-song-main{min-width:0}.room-results-song-top{grid-gap:1rem;align-items:flex-start;display:grid;gap:1rem;grid-template-columns:1fr auto}.room-results-song-top h3{color:#f9fafb;font-size:1.05rem;line-height:1.2;margin:0;overflow-wrap:anywhere}.room-results-song-top p{color:#9ca3af;font-size:.8rem;margin:.25rem 0 0}.room-results-score{min-width:62px;text-align:right}.room-results-score span{color:#9ca3af;display:block;font-size:.6rem;font-weight:900;margin-bottom:.15rem;text-transform:uppercase}.room-results-score strong{color:#6f42c1;color:var(--osd-purple);font-size:1.75rem;line-height:1}.room-results-bars{grid-gap:.45rem;display:grid;gap:.45rem;margin-top:.85rem}.room-results-bar-row{grid-gap:.65rem;align-items:center;display:grid;gap:.65rem;grid-template-columns:82px 1fr 30px}.room-results-bar-row span{color:#d1d5db;font-size:.76rem;font-weight:800}.room-results-bar-row>div{background:#374151;border-radius:999px;height:6px;overflow:hidden}.room-results-bar-row>div>div{background:#6f42c1;background:var(--osd-purple);border-radius:999px;height:100%}.room-results-bar-row strong{color:#c4b5fd;font-size:.78rem;text-align:right}.room-results-meta{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.85rem}.room-results-meta span{background:#6f42c11a;border:1px solid #6f42c138;border-radius:999px;color:#c4b5fd;font-size:.68rem;font-weight:800;padding:.25rem .5rem;text-transform:capitalize}@media (max-width:800px){.room-results-summary-grid{grid-template-columns:repeat(3,1fr)}.room-results-leaders-grid{grid-template-columns:repeat(2,1fr)}.room-results-header{flex-direction:column}.room-results-header-actions{justify-content:flex-start}}@media (max-width:600px){.room-results-page{padding:.75rem}.room-results-card{border-radius:16px;padding:1rem}.room-results-summary-grid{grid-template-columns:repeat(2,1fr)}.room-results-leaders-grid{grid-template-columns:1fr}.room-results-section-title{align-items:flex-start;flex-direction:column}.room-results-song-card{gap:.7rem;grid-template-columns:38px 58px 1fr}.room-results-cover{height:58px;width:58px}.room-results-rank{height:38px;width:38px}.room-results-song-top{grid-template-columns:1fr auto}.room-results-score strong{font-size:1.45rem}.room-results-bar-row{grid-template-columns:76px 1fr 28px}}.ai-song-label{align-items:center;background:#d946ef29;border:1px solid #d946ef73;border-radius:999px;color:#fce7f3;display:inline-flex;font-size:.62rem;font-weight:900;letter-spacing:.04rem;padding:.18rem .5rem;text-transform:uppercase;white-space:nowrap;width:fit-content}.host-queue-title-row,.room-current-title-row{align-items:center;display:flex;flex-wrap:wrap;gap:.45rem}.host-queue-title-row h3,.room-current-title-row h3{margin:0}.room-submit-toggle-card{align-items:center;background:#020617;border:1px solid #243044;border-radius:16px;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem;padding:1rem}.room-submit-toggle-card h2{color:#f9fafb;font-size:1.2rem;margin:.2rem 0 .25rem}.room-submit-toggle-card span{color:#9ca3af;font-size:.85rem;line-height:1.4}.room-submit-toggle-card button{background:#6f42c1;background:var(--osd-purple);border:none;border-radius:12px;color:#fff;cursor:pointer;font-weight:900;padding:.75rem 1rem;transition:.2s ease;white-space:nowrap}.room-submit-toggle-card button:hover{background:#5a32a3;background:var(--osd-purple-hover);transform:translateY(-1px)}.room-submissions-closed-pill{background:#f871711a;border:1px solid #f8717159;border-radius:999px;color:#fca5a5!important;font-size:.7rem!important;font-weight:900;padding:.35rem .65rem;text-transform:uppercase;white-space:nowrap}.room-closed-box h3,.room-empty-now-playing h3{color:#f9fafb;font-size:1rem;margin:0 0 .35rem}.room-closed-box p,.room-empty-now-playing p{color:#9ca3af;line-height:1.5}.room-now-playing{overflow:hidden;position:relative}.room-now-playing:before{background:#6f42c1;background:var(--osd-purple);border-radius:999px;bottom:1rem;content:"";left:0;opacity:.85;position:absolute;top:1rem;width:3px}.room-now-playing>*{position:relative}@media (max-width:600px){.room-submit-toggle-card{align-items:stretch;flex-direction:column}.room-submit-toggle-card button{width:100%}.room-submissions-closed-pill{width:fit-content}}.room-private-gate{background:#020617;border:1px solid #243044;border-radius:16px;padding:1rem}.room-private-gate h1{color:#f9fafb;font-size:clamp(2rem,6vw,3rem);line-height:1.05;margin:.25rem 0}.room-private-gate p{color:#9ca3af;line-height:1.5;margin:.5rem 0 1rem}.room-private-form{grid-gap:1rem;display:grid;gap:1rem}.room-private-form label{grid-gap:.45rem;color:#d1d5db;display:grid;font-size:.85rem;font-weight:900;gap:.45rem}.room-private-form input{background:#020617;border:1px solid #374151;border-radius:14px;box-sizing:border-box;color:#fff;font-size:.95rem;height:52px;outline:none;padding:0 1rem;width:100%}.room-private-form input:focus{border-color:#6f42c1;border-color:var(--osd-purple);box-shadow:0 0 0 3px #6f42c126;box-shadow:0 0 0 3px var(--osd-purple-glow)}.room-private-form button{background:#6f42c1;background:var(--osd-purple);border:none;border-radius:14px;color:#fff;cursor:pointer;font-weight:900;min-height:48px;transition:.2s ease}.room-private-form button:hover{background:#5a32a3;background:var(--osd-purple-hover);transform:translateY(-1px)}.host-upload-panel{background:#020617;border:1px solid #243044;border-radius:14px;margin-bottom:1rem;padding:.9rem}.host-upload-panel-header{align-items:center;display:flex;gap:1rem;justify-content:space-between}.host-upload-panel-header p{color:#f9fafb;font-size:.95rem;font-weight:900;margin:0 0 .25rem}.host-upload-panel-header span{color:#9ca3af;font-size:.78rem;line-height:1.4}.host-upload-form button,.host-upload-panel-header button{background:#6f42c1;background:var(--osd-purple);border:none;border-radius:12px;color:#fff;cursor:pointer;font-weight:900;padding:.7rem .9rem;transition:.2s ease;white-space:nowrap}.host-upload-form button:hover,.host-upload-panel-header button:hover{background:#5a32a3;background:var(--osd-purple-hover);transform:translateY(-1px)}.host-upload-form{grid-gap:1rem;display:grid;gap:1rem;margin-top:1rem}.host-upload-form label{grid-gap:.45rem;color:#d1d5db;display:grid;font-size:.85rem;font-weight:900;gap:.45rem}.host-upload-form input:not([type=file]),.host-upload-form select{background:#020617;border:1px solid #374151;border-radius:14px;box-sizing:border-box;color:#fff;font-size:.95rem;height:52px;outline:none;padding:0 1rem;width:100%}.host-upload-form input:not([type=file]):focus,.host-upload-form select:focus{border-color:#6f42c1;border-color:var(--osd-purple);box-shadow:0 0 0 3px #6f42c126;box-shadow:0 0 0 3px var(--osd-purple-glow)}.host-upload-form button:disabled{cursor:not-allowed;opacity:.65;transform:none}@media (max-width:700px){.host-upload-panel-header{align-items:stretch;flex-direction:column}.host-upload-panel-header button{width:100%}}
/*# sourceMappingURL=main.ce848866.css.map*/