@font-face{font-family:"Press Start 2P";src:url(/assets/PressStart2P-Regular-GLdY8hqd.woff) format("woff");font-display:swap}:root{--purple-900: #120a20;--purple-800: #1a0f2e;--purple-700: #261742;--purple-600: #352257;--bronze: #a8703c;--gold: #e8c15a;--rose: #e07a8f;--sage: #8fc29a;--sky: #8fb6e6;--text: #f6e9d2;--text-dim: #c3b2c9;--danger: #e2685f;--radius: 4px;--pixel: "Press Start 2P", ui-monospace, monospace;color-scheme:dark}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(120% 60% at 50% -10%,rgb(224 122 143 / .18),transparent 60%),var(--purple-900);color:var(--text);font:15px/1.55 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}a{color:var(--gold)}:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.studio-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px;background:linear-gradient(180deg,#3a1f4f,var(--purple-800))}.studio-bar__brand{display:flex;align-items:center;gap:10px}.studio-logo{font-family:var(--pixel);font-size:13px;color:var(--gold);text-shadow:2px 2px 0 #5a2a1e;letter-spacing:1px}.studio-tag{font-family:var(--pixel);font-size:8px;padding:4px 6px;color:var(--purple-900);background:var(--bronze)}.studio-bar__side{display:flex;align-items:center;gap:12px;min-width:0}.studio-bar__email{color:var(--text-dim);font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.greek-band{height:8px;background:repeating-linear-gradient(90deg,var(--bronze) 0 8px,transparent 8px 12px,var(--bronze) 12px 16px,transparent 16px 24px),var(--purple-800);border-bottom:2px solid var(--gold);opacity:.9}.studio-main{max-width:980px;margin:0 auto;padding:28px 16px 64px;display:grid;gap:20px}.studio-loading{color:var(--text-dim);font-family:var(--pixel);font-size:10px;padding:32px 0;text-align:center}.summary__title,.card__title,.section-title{font-family:var(--pixel);font-weight:400;color:var(--gold);line-height:1.5;margin:0 0 12px}.summary__title{font-size:16px}.card__title,.section-title{font-size:11px}.summary__line{font-size:17px;margin:0 0 6px}.muted{color:var(--text-dim)}p{margin:0 0 12px}.row{display:flex;flex-wrap:wrap;gap:10px}.card{background:var(--purple-800);border:2px solid var(--purple-600);border-radius:var(--radius);padding:18px 20px}.card--feature{border-color:var(--bronze);box-shadow:4px 4px #00000059}.card--alert{border-color:var(--danger);margin-top:40px}.card--quiet{padding:12px 20px}.card__summary{cursor:pointer;color:var(--text-dim)}.card--quiet[open] .card__summary{margin-bottom:12px}.btn{font:inherit;font-weight:600;display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:8px 16px;border:2px solid var(--gold);border-radius:var(--radius);background:var(--gold);color:var(--purple-900);text-decoration:none;cursor:pointer;box-shadow:0 3px 0 var(--bronze)}.btn:hover:not(:disabled){filter:brightness(1.08)}.btn:active:not(:disabled){transform:translateY(2px);box-shadow:0 1px 0 var(--bronze)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn--ghost{background:transparent;color:var(--gold);box-shadow:none}.btn--danger{background:transparent;border-color:var(--danger);color:var(--danger);box-shadow:none}.error{color:var(--danger);margin:12px 0 0}.checks{list-style:none;margin:0;padding:0;display:grid;gap:8px}.check{display:grid;grid-template-columns:24px 130px 1fr;align-items:baseline;gap:8px}.check__mark{font-weight:700;text-align:center}.check--ok .check__mark{color:var(--sage)}.check--todo .check__mark{color:var(--purple-900);background:var(--gold);border-radius:2px}.check__label{font-weight:600}.check__detail{color:var(--text-dim);overflow-wrap:anywhere}.beds__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}.bed{background:var(--purple-800);border:2px solid var(--purple-600);border-top:4px solid var(--bronze);border-radius:var(--radius);padding:14px 16px}.bed__head{margin-bottom:10px}.bed__title{margin:0;font-size:16px}.bed__meta{color:var(--text-dim);font-size:13px}.bed__empty{margin:0}.bed__songs{margin:0;padding:0;list-style:none;display:grid;gap:6px}.song{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:6px 8px;background:var(--purple-700);border-radius:3px}.song__title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.badge{flex:none;font-size:12px;padding:2px 8px;border-radius:999px;border:1px solid currentColor}.badge--live{color:var(--sage)}.badge--soon{color:var(--gold)}.badge--secret{color:var(--rose)}.badge--vault{color:var(--sky)}.issues{margin:0 0 14px;padding:10px 14px;border-left:4px solid var(--gold);background:#e8c15a14}.issues--error{border-left-color:var(--danger);background:#e2685f1a}.issues summary{cursor:pointer;font-weight:600}.issues ul{margin:8px 0 0;padding-left:18px}.issue--error strong{color:var(--danger)}@media(max-width:560px){.studio-bar{padding:12px 16px}.studio-bar__email{display:none}.check{grid-template-columns:24px 1fr}.check__detail{grid-column:2}.summary__line{font-size:16px}}@media(prefers-reduced-motion:reduce){.btn:active:not(:disabled){transform:none}}a.studio-bar__brand{text-decoration:none}.btn--small{min-height:32px;padding:4px 12px;font-size:14px}.tabs{display:flex;gap:2px;padding:0 16px;background:var(--purple-800);overflow-x:auto;scrollbar-width:none}.tabs__item{flex:none;padding:12px 16px 10px;font-family:var(--pixel);font-size:10px;color:var(--text-dim);text-decoration:none;border-bottom:3px solid transparent}.tabs__item:hover{color:var(--text)}.tabs__item--on{color:var(--gold);border-bottom-color:var(--gold)}.save{font-size:13px;white-space:nowrap;max-width:260px;overflow:hidden;text-overflow:ellipsis}.save--busy{color:var(--text-dim)}.save--ok{color:var(--sage)}.save--ok:before{content:"✓ "}.save--error{color:var(--danger)}.studio-main:has(.split){max-width:1240px}.split{display:grid;grid-template-columns:minmax(280px,380px) 1fr;gap:20px;align-items:start}.split__list{position:sticky;top:12px;max-height:calc(100vh - 24px);overflow-y:auto;padding-right:4px}.toolbar{display:flex;gap:8px;margin-bottom:12px}.input{font:inherit;color:var(--text);background:var(--purple-900);border:2px solid var(--purple-600);border-radius:var(--radius);padding:8px 10px;min-height:40px;width:100%}.input:focus{border-color:var(--gold);outline:none}.input:disabled{opacity:.5}textarea.input{resize:vertical;min-height:96px}.input--search{flex:1}.input--inline{display:inline-block;width:auto;min-height:32px;padding:4px 8px;margin-top:6px}.list-group{margin-bottom:14px}.list-group__title{font-size:13px;font-weight:600;margin:0 0 6px;color:var(--gold)}.list-group__empty{margin:0;font-size:13px}.rows{list-style:none;margin:0;padding:0;display:grid;gap:4px}.row{display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:var(--radius);background:var(--purple-800);border:2px solid transparent;color:var(--text);text-decoration:none}.row:hover{border-color:var(--purple-600)}.row--on{border-color:var(--gold);background:var(--purple-700)}.row__art{flex:none;width:36px;height:36px;border-radius:3px;object-fit:cover;image-rendering:pixelated}.row__art--blank{background:repeating-linear-gradient(45deg,var(--purple-700) 0 6px,var(--purple-600) 6px 12px)}.row__title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;vertical-align:middle}.dot--error{background:var(--danger)}.bulk{border:2px dashed var(--purple-600);border-radius:var(--radius);padding:10px 12px;margin-bottom:16px;font-size:14px;color:var(--text-dim)}.bulk--over,.slot--over{border-color:var(--gold);background:#e8c15a14}.bulk__text,.bulk__message{margin:0}.bulk__message{margin-top:8px;color:var(--text)}.empty-state{border:2px dashed var(--purple-600);border-radius:var(--radius);padding:48px 20px;text-align:center}.empty-state__title{font-family:var(--pixel);font-size:11px;color:var(--gold)}.editor{background:var(--purple-800);border:2px solid var(--purple-600);border-radius:var(--radius);padding:18px 20px 20px}.editor__head{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px}.editor__back{display:none;width:100%;text-decoration:none}.editor__title{margin:0;font-size:20px;flex:1;min-width:0;overflow-wrap:anywhere}.editor__foot{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:22px;padding-top:14px;border-top:1px solid var(--purple-600);font-size:13px}.section-title--small{margin-top:20px}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0 16px}.field{margin-bottom:14px}.field__label{display:block;font-size:13px;font-weight:600;color:var(--text-dim);margin-bottom:4px}.field__hint,.field__error{margin:4px 0 0;font-size:13px;color:var(--text-dim)}.field__error{color:var(--danger)}.field--error .input{border-color:var(--danger)}.date-row{display:grid;grid-template-columns:1fr 140px;gap:8px}.segmented{display:flex;flex-wrap:wrap;gap:4px;padding:3px;background:var(--purple-900);border-radius:var(--radius);border:2px solid var(--purple-600)}.segmented__item{flex:1 1 auto;font:inherit;font-size:14px;min-height:36px;padding:4px 12px;border:0;border-radius:3px;background:transparent;color:var(--text-dim);cursor:pointer}.segmented__item:hover{color:var(--text)}.segmented__item--on{background:var(--gold);color:var(--purple-900);font-weight:600}.release-box{margin:12px 0;padding:14px;border-radius:var(--radius);background:var(--purple-700)}.toggle{display:flex;gap:10px;align-items:flex-start;cursor:pointer}.toggle input{position:absolute;opacity:0;width:1px;height:1px}.toggle__track{flex:none;width:40px;height:22px;margin-top:1px;border-radius:11px;background:var(--purple-600);position:relative;transition:background .15s}.toggle__track:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:var(--text);transition:transform .15s}.toggle input:checked+.toggle__track{background:var(--sage)}.toggle input:checked+.toggle__track:after{transform:translate(18px)}.toggle input:focus-visible+.toggle__track{outline:2px solid var(--gold);outline-offset:2px}.toggle__label{display:block;font-weight:600}.toggle__hint{display:block;font-size:13px;color:var(--text-dim)}.advice{margin:0 0 14px;padding:10px 14px 10px 30px;border-left:4px solid var(--sky);background:#8fb6e614;font-size:14px}.slots{display:grid;gap:10px}.slot{border:2px dashed var(--purple-600);border-radius:var(--radius);padding:12px}.slot__head{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline;margin-bottom:8px}.slot__title{font-weight:600}.slot__desc,.slot__empty{font-size:13px;color:var(--text-dim);margin:0 0 8px}.slot__current{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:8px}.slot__cover{width:72px;height:72px;object-fit:cover;border-radius:3px;border:2px solid var(--bronze)}.slot__audio{height:36px;max-width:100%;flex:1 1 260px}.slot__meta{font-size:13px;color:var(--text-dim);overflow-wrap:anywhere}.slot__actions{display:flex;flex-wrap:wrap;gap:6px}.warn{color:var(--gold)}.progress{position:relative;height:28px;border-radius:var(--radius);background:var(--purple-900);overflow:hidden;margin-bottom:8px}.progress__bar{height:100%;background:linear-gradient(90deg,var(--bronze),var(--gold));transition:width .2s}.progress__label{position:absolute;inset:0;display:grid;place-items:center;font-size:13px;color:var(--text);text-shadow:0 1px 2px #000}.picker{list-style:none;margin:8px 0 0;padding:4px;max-height:220px;overflow-y:auto;background:var(--purple-900);border-radius:var(--radius)}.picker__item{display:flex;align-items:center;gap:8px;width:100%;font:inherit;font-size:14px;text-align:left;color:var(--text);background:transparent;border:0;border-radius:3px;padding:6px 8px;cursor:pointer}.picker__item:hover,.picker__item--on{background:var(--purple-700)}.picker__item img{border-radius:2px;object-fit:cover}.picker__item span:nth-child(2),.picker__item span:first-child{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.confirm{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:14px}.files{list-style:none;margin:0;padding:0;display:grid;gap:8px}.file{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:8px;border-radius:var(--radius);background:var(--purple-700)}.file__art{width:44px;height:44px;object-fit:cover;border-radius:3px}.file__audio{height:32px;width:220px;max-width:100%}.file__name{flex:1 1 200px;min-width:0;overflow-wrap:anywhere}.file__use{display:block;font-size:13px;color:var(--text-dim)}a.song__title{color:var(--text);text-decoration:none}a.song__title:hover{color:var(--gold);text-decoration:underline}@media(max-width:860px){.split{grid-template-columns:1fr}.split__list{position:static;max-height:none}.split--detail .split__list{display:none}.editor__back{display:block}.editor{padding:14px}.date-row{grid-template-columns:1fr 1fr}}@media(max-width:560px){.segmented{display:grid;grid-template-columns:1fr 1fr}.studio-bar__side .save{max-width:150px}}.small{font-size:13px}.studio-main:has(.beds-page){max-width:1240px}.beds-page{display:grid;grid-template-columns:minmax(320px,1fr) minmax(340px,1fr);gap:20px;align-items:start}.beds-page__map{position:sticky;top:12px}.map{display:block;width:100%;height:auto;max-height:calc(100vh - 140px);background:var(--purple-900);border:2px solid var(--purple-600);border-radius:var(--radius);user-select:none}.map__note{font:2px var(--pixel);fill:#fff6;text-anchor:middle}.map__bed{fill:#6a4a2e;stroke:#f4ecdc;stroke-width:.35}.map__bed--gold{fill:#8a6a2e;stroke:var(--gold)}.map__bed--hidden{fill:#2d4a2a;stroke:#9fc48f;stroke-dasharray:.8 .5}.map__spot--free .map__bed{fill:#4f6b3a;stroke:#f4ecdc66;stroke-dasharray:.6 .4}.map__spot[role=button]{cursor:pointer}.map__spot[role=button]:hover .map__bed,.map__spot[role=button]:focus-visible .map__bed{stroke:var(--gold);stroke-width:.6}.map__spot:focus{outline:none}.map__spot--selected .map__bed{stroke:var(--gold);stroke-width:.9;fill:#8a5a2e}.map__label{font:600 1.55px system-ui,sans-serif;fill:#fff;text-anchor:middle;paint-order:stroke;stroke:#1a0f2e;stroke-width:.35px;pointer-events:none}.map__label--small{font-size:1.15px}.map__spot--free .map__label{fill:#fffa;font-weight:400}.map__pin{fill:var(--gold);stroke:#1a0f2e;stroke-width:.25}.map__ground--placing{cursor:crosshair}.map-help{margin:8px 0 0;font-size:14px;color:var(--text-dim)}.toolbar__title{flex:1;margin:0;align-self:center}.bed-card{background:var(--purple-800);border:2px solid var(--purple-600);border-left:4px solid var(--bronze);border-radius:var(--radius);padding:12px 14px;margin-bottom:12px}.bed-card--open{border-color:var(--gold)}.bed-card--droppable{border-style:dashed}.bed-card__head{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin-bottom:8px}.bed-card__title{font-weight:700;font-size:16px;color:var(--text);text-decoration:none}.bed-card__title:hover{color:var(--gold)}.bed-card__meta{flex:1;font-size:13px;color:var(--text-dim)}.bed-card__order{display:flex;gap:2px}.icon-btn{font:inherit;font-size:11px;width:30px;height:28px;border-radius:3px;border:1px solid var(--purple-600);background:var(--purple-700);color:var(--text);cursor:pointer}.icon-btn:disabled{opacity:.3;cursor:default}.bed-card__songs{list-style:none;margin:0;padding:0;display:grid;gap:4px}.chip{display:flex;align-items:center;gap:8px;padding:4px 6px 4px 4px;border-radius:3px;background:var(--purple-700);cursor:grab}.chip:active{cursor:grabbing}.chip__grip{color:var(--text-dim);font-size:12px;letter-spacing:-2px;padding:0 2px}.chip__title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);text-decoration:none}.chip__edit{font-size:13px}.input--tiny{width:auto;min-height:28px;padding:2px 4px;font-size:12px;max-width:110px}.bed-editor{margin-top:14px;padding-top:14px;border-top:1px solid var(--purple-600)}.bed-editor .toggle{margin-bottom:14px}.new-bed{flex-basis:100%;display:grid;gap:8px;padding:12px;border-radius:var(--radius);background:var(--purple-800);border:2px solid var(--gold)}.new-bed .field{margin:0}.toolbar:has(.new-bed){flex-wrap:wrap}@media(max-width:860px){.beds-page{grid-template-columns:1fr}.beds-page__map{position:static}.map{max-height:none}}@media(max-width:560px){.bed-card__head{display:grid;grid-template-columns:1fr auto}.bed-card__meta{grid-column:1 / -1;grid-row:2}}.swatch{flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;border:2px solid #0004}.swatch__core{width:10px;height:10px;border-radius:50%}.flower-layout{display:grid;grid-template-columns:minmax(200px,300px) 1fr;gap:20px;align-items:start}.flower-layout__preview{position:sticky;top:12px}.flower-preview{aspect-ratio:4 / 5;border:3px solid var(--gold);box-shadow:0 0 0 3px var(--bronze);background:linear-gradient(#6a3a8a,#e0607e 60%,#ff9a4d);margin-bottom:12px}.flower-preview__canvas{display:block;width:100%;height:100%;image-rendering:pixelated}.flower-preview__failed{margin:0;padding:16px;font-size:14px;color:var(--purple-900)}.species{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px}.species__item{font:inherit;text-align:left;display:grid;gap:2px;padding:8px 10px;border-radius:var(--radius);border:2px solid var(--purple-600);background:var(--purple-900);color:var(--text);cursor:pointer}.species__item span{font-size:12px;color:var(--text-dim)}.species__item:hover{border-color:var(--text-dim)}.species__item--on{border-color:var(--gold);background:var(--purple-700)}.color-row,.slider-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.color-input{width:48px;height:40px;padding:2px;border:2px solid var(--purple-600);border-radius:var(--radius);background:var(--purple-900);cursor:pointer}.swatch-btn{width:26px;height:26px;border-radius:50%;border:2px solid #0006;cursor:pointer}.swatch-btn--on{outline:2px solid var(--gold);outline-offset:2px}.slider{flex:1;min-width:160px;accent-color:var(--gold)}@media(max-width:1000px){.flower-layout{grid-template-columns:1fr}.flower-layout__preview{position:static;max-width:280px}}.deco__footprint{fill:#ffffff10;stroke:#ffffff70;stroke-width:.12;stroke-dasharray:.35 .25}.deco__solid{stroke:#1a0f2e;stroke-width:.12}.deco[role=button]{cursor:pointer}.deco--selected .deco__footprint{stroke:var(--gold);stroke-width:.3;stroke-dasharray:none;fill:#e8c15a30}.deco--ghost .deco__footprint{fill:#ffffff25}.catalog{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:6px;margin-bottom:16px}.catalog__item{font:inherit;text-align:left;display:flex;gap:10px;align-items:center;padding:8px 10px;border-radius:var(--radius);border:2px solid var(--purple-600);background:var(--purple-800);color:var(--text);cursor:pointer}.catalog__item:hover:not(:disabled){border-color:var(--text-dim)}.catalog__item--on{border-color:var(--gold);background:var(--purple-700)}.catalog__item:disabled{opacity:.45;cursor:not-allowed}.catalog__icon{flex:none;width:34px;height:34px;background:#4f6b3a;border-radius:4px}.catalog__about{display:block;font-size:12px;color:var(--text-dim)}.deco-editor{margin-bottom:16px}.nudge{display:inline-flex;gap:2px}.atmosphere .field{margin-bottom:10px}.sky-swatch{height:54px;border-radius:var(--radius);border:2px solid var(--purple-600);margin-bottom:14px}.slider-row--labelled .small{width:70px}.slider-row--labelled .small:last-child{text-align:right}.tabs__count{display:inline-block;margin-left:6px;min-width:18px;padding:2px 4px;border-radius:9px;font-size:8px;text-align:center;color:var(--purple-900);background:var(--gold)}.card--alert-soft{border-color:var(--gold);background:#e8c15a14}.changes{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:4px}.change{display:flex;gap:10px;align-items:baseline;padding:6px 8px;border-radius:3px;background:var(--purple-700)}.change__kind{flex:none;width:74px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.change--added .change__kind{color:var(--sage)}.change--removed .change__kind{color:var(--danger)}.change--changed .change__kind{color:var(--gold)}.publish-row{margin-top:12px;align-items:center}.btn--big{min-height:48px;padding:10px 22px;font-size:16px}.notice{margin-top:14px;padding:10px 14px;border-radius:var(--radius)}.notice p{margin:0}.notice ul{margin:8px 0 0;padding-left:18px;font-size:14px;overflow-wrap:anywhere}.notice--ok{border-left:4px solid var(--sage);background:#8fc29a1a}.notice--error{border-left:4px solid var(--danger);background:#e2685f1a}.versions{list-style:none;margin:0;padding:0;display:grid;gap:6px}.version{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:8px 10px;border-radius:var(--radius);background:var(--purple-700)}.version__id{font-family:var(--pixel);font-size:10px;color:var(--gold);width:36px}.version__main{flex:1 1 260px;display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline}.version__main .small{flex-basis:100%}code{font-size:.9em;padding:1px 4px;border-radius:3px;background:var(--purple-900)}
