.party-page{max-width:1240px;margin:0 auto;padding:0 32px;color:#f5f6ff;min-height:100vh}.party-nav{display:flex;align-items:center;gap:22px}.party-nav>a{font-size:13px;color:#aeb9d1}.party-hero{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:40px;min-height:650px;padding:65px 0 80px}.party-hero h1{font-size:clamp(42px,5.7vw,72px);font-weight:700;line-height:1.08;letter-spacing:-2.5px;margin:22px 0}.party-intro{font-size:18px;line-height:1.7;color:#aeb9d1;max-width:580px}.party-create{display:flex;align-items:flex-end;flex-wrap:wrap;gap:14px;margin-top:30px}.party-create label{display:flex;flex-direction:column;gap:9px;font-size:13px;color:#bac5d9;flex:1;min-width:200px}.party-page input:not([type=checkbox]):not([type=file]){width:100%;padding:13px 15px;background:rgba(255,255,255,.045);border:1px solid #ffffff26;border-radius:12px;color:#fff;min-width:0;outline:none}.party-page input:focus-visible{border-color:#9890ff;box-shadow:0 0 0 3px #9d65ff20}.party-page button:disabled{opacity:.45;cursor:not-allowed}.party-free{color:#8ecdbc;font-size:13px;margin:20px 0}.party-orbits{position:relative;width:100%;aspect-ratio:1;max-width:460px;border-radius:50%;background:radial-gradient(ellipse,#ae45ef24,transparent 68%);margin:auto;overflow:hidden}.party-orbit{position:absolute;border:1px solid #9a86f22f;border-radius:50%;inset:5%;transform:rotate(-25deg) scaleY(.65)}.party-orbit.two{inset:15%;transform:rotate(35deg) scaleY(.8);border-color:#f657ac44}.party-orbit.three{inset:24%;transform:rotate(-30deg);border-color:#7e9cff55}.party-orbit-label{position:absolute;inset:37% 5% auto;text-align:center;font-size:55px;font-weight:700;letter-spacing:1px;text-shadow:0 0 28px #b05fff66}.party-orbit-label span{color:#c183ff;font-size:32px}.party-orbit-label small{display:block;font-size:10px;letter-spacing:5px;margin-top:8px;color:#9fafd1}.party-orbit-dot{position:absolute;width:30px;height:30px;border-radius:50%;border:5px solid #ffffff18;background:linear-gradient(140deg,#f391c5,#8240a5);box-shadow:0 0 25px #d1558422}.party-orbit-dot:nth-of-type(2n){background:linear-gradient(140deg,#76baff,#404fb1)}.dot-0{top:20%;left:13%}.dot-1{top:50%;left:8%}.dot-2{top:72%;left:21%}.dot-3{top:75%;left:65%}.dot-4{top:30%;left:82%}.dot-5{top:9%;left:51%}.dot-6{top:58%;left:79%}.dot-7{top:11%;left:30%}.dot-8{top:63%;left:42%}.dot-9{top:29%;left:63%}.dot-10{top:78%;left:44%}.dot-11{top:36%;left:28%}.party-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:28px}.party-chart,.party-group,.party-steps article,.party-ties,.party-winner{border:1px solid #ffffff18;border-radius:24px;background:linear-gradient(130deg,#ffffff07,#ffffff02)}.party-steps article{padding:27px}.party-steps article>span{font-size:12px;letter-spacing:3px;color:#bf91f6}.party-steps h2{font-size:19px;margin:14px 0 10px}.party-method,.party-steps p{color:#9baac2;line-height:1.75;font-size:14px}.party-room-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:45px 0 25px}.party-room-heading h1{font-size:clamp(26px,4vw,42px);line-height:1.2;margin-top:15px;overflow-wrap:anywhere}.party-private{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #ffffff15;padding:0 0 28px;margin-bottom:28px}.party-private p{font-size:12px;line-height:1.7;color:#91a0b9;max-width:720px}.party-private button{font-size:12px;flex-shrink:0;color:#c5b9fd;border:1px solid #ae94ee42;border-radius:8px;padding:9px 12px}.party-hint{background:#a27fe90a;padding:20px 24px;border-left:2px solid #a77de5;color:#b3bfd3;line-height:1.7;font-size:14px;margin:0 0 28px;border-radius:0 12px 12px 0}.party-groups{display:grid;grid-template-columns:1fr 1fr;gap:24px}.party-group{padding:28px;min-width:0;align-self:start}.party-group>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px;gap:15px}.party-group h2{font-size:23px;margin-top:9px}.party-group>header>strong{font-size:29px;color:#f49dce}.party-group.male>header>strong{color:#81b5ff}.party-group>header small{font-size:14px;color:#8895ae}.party-entries{list-style:none;margin:0;padding:0}.party-entries>li{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid #ffffff0d}.party-entries>li>div{flex:1;min-width:0}.party-entries strong{overflow-wrap:anywhere;font-size:14px}.party-entries small{display:block;font-size:11px;color:#879ab5;margin-top:5px;overflow-wrap:anywhere}.party-avatar{display:grid;place-items:center;width:38px;height:38px;flex-shrink:0;border-radius:50%;background:linear-gradient(130deg,#bb669347,#84459426);color:#f4afcc}.male .party-avatar{background:linear-gradient(130deg,#6699c747,#44479426);color:#a6cfff}.party-entries button{font-size:23px;padding:5px 8px;color:#a3abc2}.party-entries .status-ready{color:#83c9af}.party-entries .status-failed{color:#ff94ab}.party-entries .status-processing{color:#c6a1ff}.entry-failed{background:#9f24481c;border-radius:10px}.party-queued{align-items:start!important}.party-queued label{display:block;color:#a2b2c8;font-size:11px}.party-queued input{margin-top:6px;font-size:14px}.party-queued details{font-size:12px;color:#aeb7d7;margin-top:9px}.party-queued audio{display:block;width:100%;height:35px;margin:10px 0}.party-add{width:100%;justify-content:center;margin-top:20px}.party-formats{display:block;font-size:11px;line-height:1.7;color:#8292ac;margin-top:13px}.party-empty{padding:35px 0;text-align:center;font-size:14px;color:#7786a2}.party-save{padding:28px;display:flex;align-items:center;gap:28px;border:1px solid #ffffff16;border-radius:20px;margin-top:24px}.party-consent{display:flex;align-items:flex-start;gap:13px;flex:1;font-size:13px;color:#adbbd0;line-height:1.7}.party-consent input{width:18px;height:18px;flex-shrink:0;margin-top:3px;accent-color:#af7aff}.party-save .vox-primary{flex-shrink:0}.party-compare{text-align:center;max-width:730px;margin:38px auto 70px}.party-compare p{color:#9caac2;line-height:1.75;font-size:14px;margin-bottom:20px}.party-processing{text-align:center;padding:45px 20px}.party-processing h2{font-size:23px;margin:15px 0}.party-processing progress{width:100%;max-width:500px;height:8px;accent-color:#b683f3}.party-processing p{color:#99a8c4;font-size:14px;margin-top:15px}.party-spinner{display:inline-block;width:30px;height:30px;border:2px solid #ffffff20;border-top-color:#ba8bf9;border-radius:50%;animation:party-spin 1s linear infinite}@keyframes party-spin{to{transform:rotate(1turn)}}.party-winner{text-align:center;padding:48px 40px;position:relative;background:radial-gradient(ellipse at 50% 15%,#7345a626,transparent 70%),linear-gradient(140deg,#ffffff07,#ffffff02)}.party-winner h2{font-size:21px;color:#b8c5db;margin-top:15px}.party-pair-names{display:flex;align-items:center;justify-content:center;gap:30px;margin:30px 0 15px;font-size:clamp(23px,4vw,42px);font-weight:650;overflow-wrap:anywhere}.party-pair-names>span{min-width:0}.party-pair-names>span:first-child{color:#ff9ed0}.party-pair-names>span:last-child{color:#8bbdff}.party-pair-names>i{font-size:40px;font-weight:400;color:#b492ff}.party-score{font-size:clamp(65px,10vw,110px);line-height:1.2;font-weight:700;letter-spacing:-3px;color:#e4d3ff}.party-score>small{font-size:22px;letter-spacing:0;color:#8d82aa}.party-winner>h3{font-size:18px;color:#c4b6d9}.party-mutual{display:inline-block;padding:8px 14px;background:#6aa98c17;border:1px solid #6aa98c33;border-radius:30px;color:#9cd7be;font-size:12px;margin-top:22px}.party-directions{display:grid;grid-template-columns:1fr 1fr;max-width:600px;gap:15px;margin:30px auto 12px}.party-directions>span{border:1px solid #ffffff14;border-radius:14px;padding:16px;font-size:13px;overflow-wrap:anywhere}.party-directions strong{display:block;font-size:26px;margin-top:8px;color:#d2b9fb}.party-directions+p{font-size:12px;color:#8f9db5}.party-winner .party-method{max-width:760px;margin:30px auto}.party-chart{padding:28px;margin:24px 0}.party-chart>h2{font-size:20px;margin-bottom:10px}.party-chart>p{font-size:13px;color:#93a4be;line-height:1.7}.party-chart>div{max-width:780px;margin:auto}.party-ties{padding:25px;margin-top:25px}.party-ties h3{font-size:19px;color:#d9c2fa}.party-ties p{font-size:13px;color:#a6b2c9;margin:12px 0}.party-ties ul{padding-left:20px;font-size:14px;line-height:2;color:#bac5d8}.party-pairs{border:1px solid #ffffff1a;border-radius:18px;margin:25px 0;padding:22px}.party-pairs summary{font-size:16px;color:#cebce9;cursor:pointer}.party-table-wrap{overflow:auto;margin-top:20px}.party-pairs table{width:100%;border-collapse:collapse;font-size:14px}.party-pairs th{text-align:left;color:#90a0bd;font-weight:400;padding:10px}.party-pairs td{padding:16px 10px;border-top:1px solid #ffffff0e}.party-pairs td:first-child{width:60px;color:#9687b2}.party-pairs td:last-child{white-space:nowrap;color:#dcc4fb}.party-pairs small{display:block;color:#8fc4ae;font-size:10px;margin-top:5px}.party-readonly{font-size:13px;color:#8c9db9;text-align:center;margin:35px 0}.party-error{margin:25px 0;padding:18px}.party-page .vox-footer{margin-top:70px}@media(max-width:760px){.party-page{padding:0 20px}.party-hero{grid-template-columns:1fr;padding:35px 0 45px;min-height:0;gap:0}.party-hero h1{letter-spacing:-1.8px}.party-intro{font-size:16px}.party-orbits{max-width:320px;margin-top:15px}.party-orbit-label{font-size:43px}.party-orbit-dot{width:23px;height:23px;border-width:4px}.party-steps{grid-template-columns:1fr;gap:12px}.party-steps article{padding:22px}.party-nav{gap:12px}.party-nav>a{font-size:11px}.party-room-heading{align-items:flex-start;padding-top:25px}.party-room-heading h1{font-size:28px}.party-room-heading .vox-secondary{font-size:11px;padding:10px;min-width:0;gap:6px}.party-room-heading .vox-secondary svg{width:13px}.party-private{flex-direction:column;align-items:flex-start;gap:12px}.party-groups{grid-template-columns:1fr;gap:18px}.party-group{padding:22px}.party-save{padding:20px;flex-direction:column;align-items:stretch;gap:20px}.party-save button{justify-content:center}.party-compare .vox-primary{width:100%;justify-content:center}.party-winner{padding:30px 18px}.party-pair-names{gap:12px;font-size:25px}.party-directions{gap:10px}.party-directions>span{padding:12px;font-size:11px}.party-chart{padding:16px 8px}.party-chart>h2,.party-chart>p{padding:0 12px}.party-score{font-size:80px}.party-pairs{padding:16px}.party-pairs td,.party-pairs th{padding:14px 6px;font-size:12px}.party-hero .party-create button{width:100%;justify-content:center}.party-page .vox-footer{flex-wrap:wrap;gap:20px}.party-create label{min-width:100%}}