@font-face{font-family:polySans;src:url(../media/PolySans_Neutral-s.p.1535164f.woff2)format("woff2");font-display:swap;font-weight:400}@font-face{font-family:polySans;src:url(../media/PolySans_Median-s.p.4422e2a7.woff2)format("woff2");font-display:swap;font-weight:500}@font-face{font-family:polySans Fallback;src:local(Arial);ascent-override:89.92%;descent-override:21.41%;line-gap-override:0.0%;size-adjust:102.76%}.polysans_c380874a-module__2eMhoG__className{font-family:polySans,polySans Fallback}.polysans_c380874a-module__2eMhoG__variable{--font-polysans:"polySans","polySans Fallback"}
@font-face{font-family:pixelHackers;src:url(../media/PixelHackers-s.p.4f7e1b55.woff2)format("woff2");font-display:swap;font-weight:400}@font-face{font-family:pixelHackers Fallback;src:local(Arial);ascent-override:75.65%;descent-override:18.91%;line-gap-override:0.0%;size-adjust:105.75%}.pixelhackers_c1416a30-module__ozGobW__className{font-family:pixelHackers,pixelHackers Fallback;font-weight:400}.pixelhackers_c1416a30-module__ozGobW__variable{--font-pixelhackers:"pixelHackers","pixelHackers Fallback"}
.ruby-admin-page{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#101012;min-height:100vh}.ruby-admin{--muted:#9b9ba5;--line:#2b2b30;--accent:#fe0;--focus:#b99aff;color:#f2f2f3;max-width:1320px;font-family:var(--font-polysans),sans-serif;margin:auto;padding:0 48px 28px;font-size:14px;line-height:1.5}.ruby-admin ::selection{background:var(--accent);color:#101012}.ruby-nav{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;min-height:106px;display:flex}.ruby-brand{align-items:center;gap:12px;font-size:13px;display:inline-flex}.ruby-brand svg{width:24px;height:24px;color:var(--accent);flex-shrink:0}.ruby-admin h1{font-family:var(--font-pixelhackers),monospace;letter-spacing:-.035em;margin:12px 0;font-size:clamp(34px,4vw,48px);font-weight:400;line-height:1.15}.ruby-admin h2{letter-spacing:-.02em;font-size:18px;font-weight:500}.ruby-admin h3{font-size:20px;font-weight:500}.ruby-admin strong{font-weight:500}.ruby-muted,.ruby-help{color:var(--muted)}.ruby-help{font-size:12px;line-height:1.6}.ruby-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:11px}.ruby-page-heading{padding:40px 0 34px}.ruby-page-heading>p:last-child{color:var(--muted);margin-top:12px;font-size:15px}.ruby-admin label{font-size:13px;display:block}.ruby-admin input,.ruby-admin select{width:100%;min-height:42px;color:inherit;background:#1a1a1e;border:1px solid #414148;border-radius:5px;padding:10px 12px;font-family:inherit;font-size:14px}.ruby-admin input::placeholder{color:#777781}.ruby-admin button,.ruby-button,.ruby-upload-button{min-height:42px;color:inherit;cursor:pointer;background:#202024;border:1px solid #414148;border-radius:5px;justify-content:center;align-items:center;gap:14px;padding:10px 16px;font-family:inherit;font-size:13px;font-weight:500;transition:background .15s,border-color .15s;display:inline-flex}.ruby-admin button:hover:not(:disabled),.ruby-button:hover,.ruby-upload-button:hover{background:#303035}.ruby-admin button:active:not(:disabled),.ruby-button:active{background:#39393f}.ruby-admin .ruby-primary{border-color:var(--accent);background:var(--accent);color:#101012}.ruby-admin .ruby-primary:hover:not(:disabled){background:#fff36b}.ruby-admin .ruby-primary:active:not(:disabled){background:#d4c700}.ruby-admin :is(button,input,select):disabled{opacity:.42;cursor:not-allowed}.ruby-admin :is(button,a,input,select,summary):focus-visible,.ruby-upload-button:focus-within{outline:2px solid var(--focus);outline-offset:4px}.ruby-admin .ruby-text-button{min-height:30px;color:var(--muted);background:0 0;border:0;padding:4px 0;font-size:12px;font-weight:400}.ruby-admin .ruby-text-button:hover:not(:disabled){color:#fff;text-underline-offset:4px;background:0 0;text-decoration:underline}.ruby-text-link{color:var(--focus);text-underline-offset:4px;text-decoration:underline}.ruby-admin .ruby-icon-button{width:32px;min-height:32px;color:var(--muted);background:0 0;border:0;padding:0;font-size:23px}.ruby-account{align-items:center;gap:12px;font-size:12px;display:flex}.ruby-account small{color:var(--muted);font-size:10px;display:block}.ruby-account>button{margin-left:12px}.ruby-avatar{color:#d0b7ff;background:#2a2533;border-radius:50%;place-items:center;width:32px;height:32px;display:grid}.ruby-steps{border-bottom:1px solid var(--line);gap:32px;padding:20px 0;display:flex}.ruby-steps>span{color:#777781;align-items:center;gap:10px;font-size:12px;display:flex}.ruby-steps>span>span{font-size:10px}.ruby-steps [aria-current]{color:var(--accent)}.ruby-login{max-width:460px;margin:70px auto 90px}.ruby-login>h1{margin:18px 0;font-size:clamp(36px,4vw,48px)}.ruby-login>p:not(.ruby-eyebrow){color:var(--muted);max-width:360px}.ruby-login form{margin-top:32px}.ruby-login label{margin:20px 0 8px}.ruby-login form>button{justify-content:space-between;width:100%;margin:28px 0 10px}.ruby-admin summary{cursor:pointer;color:var(--muted);font-size:12px}.ruby-admin summary:hover{color:#fff}.ruby-settings{margin-top:18px}.ruby-selection{grid-template-columns:270px minmax(0,1fr);gap:48px;display:grid}.ruby-library{border-right:1px solid var(--line);padding-right:28px}.ruby-library>label{margin-bottom:12px}.ruby-library>.ruby-help{margin:18px 0}.ruby-release-list,.ruby-file-list,.ruby-playlist ol,.ruby-review-summary ul,.ruby-diagnostic-list{margin:0;padding:0;list-style:none}.ruby-release-list{margin-top:20px}.ruby-admin .ruby-release{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;border-radius:0;justify-content:flex-start;gap:12px;width:100%;padding:14px 0}.ruby-admin .ruby-release:hover:not(:disabled){background:#1a1a1d}.ruby-release small{color:var(--muted);margin-top:3px;font-size:11px;display:block}.ruby-release strong{font-size:13px}.ruby-release-art{color:#28282c;background:#f3f2ef;border-radius:3px;flex-shrink:0;place-items:center;width:52px;height:52px;display:grid;overflow:hidden}.ruby-release-art img{object-fit:contain;width:100%;height:100%}.ruby-release-add{color:var(--muted);margin-left:auto;font-size:11px}.ruby-section-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.ruby-section-heading h2>span{color:var(--muted);margin-left:8px;font-size:12px}.ruby-upload-button{position:relative;overflow:hidden}.ruby-upload-button input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.ruby-upload-button:has(input:disabled){opacity:.4}.ruby-empty-batch{text-align:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-direction:column;justify-content:center;align-items:center;min-height:310px;display:flex}.ruby-empty-batch>span{color:var(--accent);margin-bottom:18px;font-size:36px}.ruby-empty-batch>p{max-width:310px;color:var(--muted);margin:12px 0;font-size:13px}.ruby-file-list li{border-bottom:1px solid var(--line);gap:18px;padding:22px 0;display:flex}.ruby-file-list li:first-child{border-top:1px solid var(--line)}.ruby-file-thumb{background:#f3f2ef;border-radius:3px;flex-shrink:0;width:68px;height:80px;padding:5px}.ruby-file-thumb img,.ruby-track-art img{object-fit:contain;width:100%;height:100%}.ruby-file-info{flex:1;min-width:0}.ruby-file-info>strong{overflow-wrap:anywhere;font-size:13px;display:block}.ruby-file-info>p{margin-top:4px}.ruby-file-options{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;display:flex}.ruby-file-options label{flex:0 auto;min-width:0;max-width:100%}.ruby-file-options select{min-height:34px;padding:6px 24px 6px 8px;font-size:11px}.ruby-file-list li>button{flex-shrink:0;align-self:flex-start}.ruby-step-footer{justify-content:space-between;align-items:center;gap:24px;padding-top:28px;display:flex}.ruby-step-footer p{color:var(--muted);font-size:12px}.ruby-step-footer button{flex-shrink:0}.ruby-review-grid{grid-template-columns:minmax(0,1fr) 290px;gap:48px;display:grid}.ruby-design-set{margin-bottom:32px}.ruby-design-set h2{margin-bottom:18px}.ruby-render-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;display:grid}.ruby-render-pair>figure{min-width:0;margin:0}.ruby-render-pair>figure:only-child{grid-column:1/-1;width:100%;max-width:380px}.ruby-design-preview{aspect-ratio:1;background:#f3f2ef;width:100%;position:relative;overflow:hidden}.ruby-design-canvas{width:100%;height:100%}.ruby-design-canvas canvas{object-fit:contain;width:100%;height:100%;display:block}.ruby-render-pair figcaption{padding:16px 0 0}.ruby-render-pair figcaption strong{font-size:13px;display:block}.ruby-render-pair figcaption span{color:var(--muted);font-size:11px}.ruby-preview-loading{width:100%;height:100%;min-height:220px;color:var(--muted);place-items:center;font-size:12px;display:grid}.ruby-preview-fallback{color:#4b4b50;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:24px;font-size:11px;display:flex;position:absolute;inset:0}.ruby-preview-fallback img{object-fit:contain;width:85%;height:70%}.ruby-review-summary{border-left:1px solid var(--line);padding-left:30px}.ruby-review-summary h2{margin:8px 0 20px}.ruby-review-summary li{border-bottom:1px solid var(--line);gap:14px;padding:18px 0;display:flex}.ruby-review-summary li strong{font-size:13px;display:block}.ruby-review-summary li div>span,.ruby-review-summary details li{color:var(--muted);font-size:12px}.ruby-quantity{color:var(--accent);font-size:20px}.ruby-review-summary>p.ruby-help{margin:24px 0}.ruby-review-summary>button{width:100%;margin-bottom:8px}.ruby-disclosure{border-top:1px solid var(--line);margin-top:24px;padding-top:18px}.ruby-disclosure>p,.ruby-actions{margin-top:16px}.ruby-disclosure>ul{margin-top:12px}.ruby-player-heading{justify-content:space-between;align-items:end;padding:36px 0 26px;display:flex}.ruby-player-heading h1{margin-bottom:0}.ruby-player{border:1px solid var(--line);border-radius:7px;grid-template-columns:290px minmax(0,1fr);display:grid;overflow:hidden}.ruby-playlist{border-right:1px solid var(--line);background:#131316;min-width:0;padding:24px 0}.ruby-playlist .ruby-section-heading{margin-bottom:20px;padding:0 20px}.ruby-playlist h2{font-size:14px}.ruby-playlist .ruby-section-heading>span{color:var(--muted);font-size:11px}.ruby-playlist ol{max-height:510px;overflow-y:auto}.ruby-playlist li>button{text-align:left;background:0 0;border:0;border-left:2px solid #0000;border-radius:0;justify-content:flex-start;gap:10px;width:100%;padding:16px 16px 16px 12px;display:flex}.ruby-playlist li>button.selected{border-left-color:var(--accent);background:#242329}.ruby-track-number{color:#777781;flex-shrink:0;width:18px;font-size:10px}.ruby-track-art{background:#f3f2ef;border-radius:3px;flex-shrink:0;width:48px;height:56px;padding:4px}.ruby-track-name{min-width:0}.ruby-track-name strong{font-size:12px;display:block}.ruby-track-name small{color:var(--muted);margin:3px 0;font-size:10px;display:block}.ruby-job-state{color:#b3b3bc;font-size:10px}.ruby-job-state.running,.ruby-job-state.finished{color:#bad5a7}.ruby-job-state.upload-rejected,.ruby-job-state.needs-attention{color:#ffaaa2}.ruby-playlist>p,.ruby-playlist>button{margin:20px 20px 0}.ruby-player-main{background:#151518;min-width:0}.ruby-player-screen{aspect-ratio:16/9;border-bottom:1px solid var(--line);width:100%;position:relative}.ruby-laser-canvas{position:absolute;inset:0}.ruby-laser-canvas canvas{width:100%;height:100%;display:block}.ruby-player-screen-top{pointer-events:none;letter-spacing:.08em;color:#a7a7b2;justify-content:space-between;align-items:center;gap:12px;font-size:9px;display:flex;position:absolute;top:18px;left:20px;right:20px}.ruby-live-status{letter-spacing:0;background:#16161bcc;border:1px solid #3a3a42;border-radius:20px;align-items:center;gap:7px;padding:5px 9px;font-size:10px;display:flex}.ruby-live-status i{background:#a1a1ab;border-radius:50%;width:5px;height:5px}.ruby-live-status i.active{background:var(--accent)}.ruby-schematic-label{pointer-events:none;color:#9999a4;font-size:9px;position:absolute;bottom:13px;right:20px}.ruby-now-playing{justify-content:space-between;align-items:center;gap:24px;padding:24px;display:flex}.ruby-now-playing>div{min-width:0}.ruby-now-playing h2{overflow-wrap:anywhere;margin:6px 0;font-size:15px}.ruby-now-playing>div>p:last-child{color:var(--muted);font-size:11px}.ruby-now-playing>a{flex-shrink:0;font-size:11px}.ruby-timeline{padding:0 24px 24px}.ruby-timeline-heading{justify-content:space-between;align-items:center;gap:18px;margin-bottom:12px;font-size:10px;display:flex}.ruby-timeline-heading span{color:var(--muted);font-size:10px}.ruby-timeline-tracks{gap:4px;display:flex;overflow-x:auto}.ruby-timeline-tracks>button{text-align:left;background:#24242b;border:1px solid #34343c;border-radius:3px;flex:1;justify-content:flex-start;min-width:72px;min-height:42px;padding:11px 9px;font-size:10px;position:relative;overflow:hidden}.ruby-timeline-tracks>button.selected{border-color:#aaa37d}.ruby-timeline-tracks .ruby-track-progress{background:#77741e;position:absolute;inset:0 auto 0 0}.ruby-timeline-tracks button>span:last-child{position:relative}.ruby-timeline-time{color:var(--muted);font-variant-numeric:tabular-nums;justify-content:space-between;margin-top:8px;font-size:10px;display:flex}.ruby-error{color:#ffaaa2;max-width:840px;padding:18px 0;font-size:13px}.ruby-working{color:var(--muted);align-items:center;gap:10px;padding-top:20px;font-size:12px;display:flex}.ruby-working>span{background:var(--accent);border-radius:50%;width:6px;height:6px}.ruby-admin-footer{border-top:1px solid var(--line);color:#777781;justify-content:space-between;align-items:flex-start;gap:30px;margin-top:64px;padding:22px 0;font-size:11px;display:flex}.ruby-support{text-align:right;max-width:560px}.ruby-support>.ruby-disclosure{text-align:left;border:0;margin:0;padding:0}.ruby-support>button{margin-top:8px;font-size:10px}.ruby-actions{flex-wrap:wrap;gap:12px;display:flex}.ruby-diagnostic-list li{border-bottom:1px solid var(--line);padding:12px 0}.ruby-diagnostic-list span{color:var(--muted);font-size:11px;display:block}.ruby-sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (max-width:1000px){.ruby-admin{padding-inline:28px}.ruby-selection{grid-template-columns:230px minmax(0,1fr);gap:28px}.ruby-review-grid{grid-template-columns:minmax(0,1fr) 245px;gap:24px}.ruby-review-summary{padding-left:22px}.ruby-player{grid-template-columns:240px minmax(0,1fr)}.ruby-track-number{display:none}.ruby-now-playing{flex-wrap:wrap}}@media (max-width:720px){.ruby-admin{padding-inline:20px}.ruby-nav{min-height:90px}.ruby-brand>span{max-width:110px}.ruby-account{gap:8px}.ruby-account>button{margin-left:0}.ruby-avatar{display:none}.ruby-selection,.ruby-review-grid,.ruby-player{grid-template-columns:minmax(0,1fr)}.ruby-library{border:0;padding:0}.ruby-release-list{gap:20px;margin-bottom:20px;display:flex;overflow-x:auto}.ruby-release-list>li{min-width:210px}.ruby-review-summary{border:0;border-top:1px solid var(--line);padding:24px 0 0}.ruby-playlist{border-right:0;border-bottom:1px solid var(--line)}.ruby-playlist ol{max-height:none;display:flex;overflow-x:auto}.ruby-playlist li{flex-shrink:0;width:220px}.ruby-step-footer{flex-direction:column;align-items:flex-start}.ruby-step-footer button{width:100%}.ruby-file-list li{gap:12px}.ruby-file-thumb{width:48px;height:66px}.ruby-timeline-heading{align-items:start}.ruby-timeline-heading span{text-align:right;max-width:130px}.ruby-admin-footer{margin-top:40px}.ruby-login{margin-top:44px}.ruby-admin input,.ruby-admin select{font-size:16px}.ruby-file-options select{font-size:12px}}@media (prefers-reduced-motion:reduce){.ruby-admin *{transition:none!important}}
