*{box-sizing:border-box}body{margin:0;background:#111218;color:#f6f5fb;font-family:Inter,"Segoe UI",Arial,sans-serif}button,a,input,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default;opacity:.5}[hidden]{display:none!important}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #ddcaff;outline-offset:4px}
.gallery-header,.gallery-footer{max-width:1560px;margin:auto;display:flex;justify-content:space-between;align-items:center;padding:20px 32px}.gallery-header{border-bottom:1px solid #292a35}.gallery-brand{font-weight:850;letter-spacing:.07em;font-size:17px}.gallery-brand span{color:#9e91da;font-size:11px}.gallery-chip{font-size:9px;font-weight:750;letter-spacing:.09em;color:#c8bafb;border:1px solid #51476d;border-radius:30px;padding:7px 10px}.gallery-main{max-width:1560px;margin:0 auto;padding:26px 32px}.gallery-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}h1{font-size:30px;letter-spacing:-.045em;line-height:1.1;margin:0 0 7px}.gallery-intro{font-size:12px;color:#a9a5b8;margin:0}.upload-control{display:grid;justify-items:end;gap:7px}.upload-button{border:1px solid #73608e;background:#2a2338;color:#e5d4ff;padding:11px 16px;border-radius:11px;font-size:12px;font-weight:650}.upload-button:hover:enabled{background:#392b4e;border-color:#baa0e7}.upload-button>span{font-size:17px;margin-right:5px}.upload-control>span{font-size:10px;color:#93899f}.gallery-notice{background:#24202e;border:1px solid #47394f;border-radius:10px;color:#d0c0e4;font-size:11px;line-height:1.5;padding:10px 14px;margin:0 0 18px}
.gallery-playback{display:grid;grid-template-columns:1fr 1fr;gap:20px;border:1px solid #302b39;background:#191820;border-radius:14px;padding:15px 18px;margin-bottom:24px}.gallery-live{display:flex;align-items:center;gap:12px;min-width:0}.gallery-live>img{width:76px;aspect-ratio:16/9;object-fit:cover;border-radius:7px}.gallery-live>div{min-width:0}.gallery-live small{font-size:8px;letter-spacing:.12em;color:#b9a6dc}.gallery-live h2{font-size:14px;line-height:1.3;margin:5px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gallery-live p{font-size:10px;color:#a89ab7;margin:0;line-height:1.5}.gallery-live p strong{color:#d9c7ff;font-variant-numeric:tabular-nums}.gallery-waiting{border-left:1px solid #35303d;padding-left:20px;min-width:0}.gallery-queue-heading{display:flex;align-items:center;gap:8px;margin-bottom:7px}.gallery-queue-heading h2{font-size:10px;margin:0;font-weight:550}.gallery-queue-heading>span{background:#332b42;color:#d0b8f6;border-radius:12px;padding:2px 6px;font-size:9px}.gallery-queue{padding:0;margin:0;list-style:none;display:flex;gap:10px;overflow:auto}.gallery-queue li{flex:none;display:flex;gap:8px;align-items:center;max-width:210px}.gallery-queue li img{width:38px;height:25px;border-radius:4px;object-fit:cover}.gallery-queue li strong{font-size:9px;display:block;max-width:140px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.gallery-queue li small{font-size:9px;color:#a89ab7;display:block;margin-top:3px}.queue-number{color:#c4a3fc;font-size:10px}.gallery-queue .queue-empty{color:#8f829b;font-size:10px;padding:3px 0}
.gallery-layout{display:grid;grid-template-columns:minmax(340px,.88fr) minmax(0,1.3fr);gap:26px;align-items:start}.gallery-layout:has(.selection[hidden]){grid-template-columns:1fr}.selection{position:sticky;top:20px;background:#1d1b26;border:1px solid #494155;border-radius:17px;min-width:0;overflow:hidden}.selection-body{padding:18px}.selection-image{container-type:inline-size;position:relative;background:#14131a;border-radius:10px;overflow:hidden}.selection-image img{display:block;width:100%;aspect-ratio:16/9;object-fit:contain}.selection-image-badge{position:absolute;left:12px;bottom:11px;background:#15111fbb;backdrop-filter:blur(10px);border:1px solid #ffffff22;padding:6px 8px;border-radius:6px;font-size:8px;letter-spacing:.09em;color:#ded0f1}.selection-title{margin:17px 0}.selection-title h2{font-size:17px;line-height:1.35;margin:0 0 7px;overflow-wrap:anywhere;letter-spacing:-.025em}.selection-title p{font-size:12px;color:#cab3f3;margin:0}.selection.changed .selection-image img{animation:reveal .22s ease-out}@keyframes reveal{from{opacity:.45;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.duration-heading{display:flex;justify-content:space-between;margin:22px 0 10px;gap:10px;font-size:11px}.duration-heading output{font-weight:750;color:#d3beff}input[type=range]{width:100%;accent-color:#bfa1ff;cursor:pointer}.range-labels{display:flex;justify-content:space-between;color:#888294;font-size:9px;margin-top:6px}.mode-label{display:block;margin:19px 0 8px;color:#b6adcb;font-size:10px}#background-mode{width:100%;background:#14131b;border:1px solid #50435e;border-radius:9px;padding:11px 9px;color:#e0d2ef;font-size:11px}.payment-hint{font-size:10px;line-height:1.55;color:#a296b3;margin:10px 0 0}.price-breakdown{display:grid;gap:7px;font-size:10px;color:#9e93af;margin-top:17px}.price-breakdown>span{display:flex;justify-content:space-between;gap:8px}.price-breakdown b{color:#c9b8de;font-weight:500}.selection-total{border-top:1px solid #403747;margin-top:14px;padding-top:14px;display:flex;align-items:center;justify-content:space-between;font-size:11px}.selection-total strong{font-size:26px;letter-spacing:-.04em}.pay-button{display:block;border:0;text-align:center;width:100%;background:#c3a7ff;color:#1e1431;border-radius:10px;padding:13px 10px;font-weight:750;text-decoration:none;font-size:12px;margin-top:14px}.pay-button:hover:enabled{background:#d1baff}
.gallery-collection{min-width:0}.collection-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:2px 0 14px}.collection-heading h2{font-size:13px;letter-spacing:-.01em;margin:0}.collection-heading>span{font-size:10px;color:#8e829c}.gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.gallery-card{background:#1b1c25;border:1px solid #30313d;overflow:hidden;border-radius:10px;padding:0;text-align:left;color:white;transition:border-color .15s,transform .15s;min-width:0}.gallery-card:hover{border-color:#a789ed;transform:translateY(-2px)}.gallery-card[aria-pressed=true]{border-color:#c6acff;box-shadow:0 0 0 2px #c6acff33}.gallery-card img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;background:#242631}.gallery-card-copy{padding:9px}.gallery-card-copy strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:10px;line-height:1.5;font-weight:550}.gallery-card-copy small{display:block;margin-top:4px;font-size:10px;color:#c5b0fb}.gallery-uploads{margin-top:25px;padding-top:21px;border-top:1px solid #302b39}.gallery-empty{grid-column:1/-1;padding:35px 20px;text-align:center;border:1px dashed #4b455a;border-radius:12px;color:#b7aec9;font-size:12px;line-height:1.8}.gallery-empty strong{display:block;font-size:17px;color:#dfd3f7;margin-bottom:9px}.order-result{max-width:600px;padding:27px;background:#22212d;border:1px solid #494155;border-radius:17px}.order-result h2{font-size:24px;margin-top:23px;overflow-wrap:anywhere}.order-result p{line-height:1.6;color:#bdb6cb;font-size:12px}.order-result #order-message{font-family:monospace;font-size:11px;overflow-wrap:anywhere;padding:13px;background:#18171f;border-radius:10px}.gallery-footer{font-size:9px;letter-spacing:.12em;color:#777181;border-top:1px solid #292a35;margin-top:15px}
@media(min-width:1500px){.gallery-layout{grid-template-columns:520px minmax(0,1fr)}}
@media(max-width:1000px){.gallery-main,.gallery-header,.gallery-footer{padding-left:22px;padding-right:22px}.gallery-layout{grid-template-columns:minmax(300px,.95fr) minmax(0,1.2fr);gap:18px}.gallery-grid{gap:8px}.gallery-card-copy{padding:7px}.selection-body{padding:14px}}
@media(max-width:760px){.gallery-layout{display:flex;flex-direction:column}.gallery-collection{order:-1;width:100%}.selection{position:static;width:100%}.gallery-playback{grid-template-columns:1fr;gap:12px}.gallery-waiting{border-left:0;border-top:1px solid #35303d;padding:12px 0 0}.gallery-toolbar{align-items:flex-start}h1{font-size:26px}.upload-button{padding:10px;font-size:11px}.upload-control>span{font-size:9px;max-width:180px;text-align:right}.selection-image img{max-height:420px}.gallery-main{padding-top:22px}}
@media(max-width:440px){.gallery-main,.gallery-header,.gallery-footer{padding-left:16px;padding-right:16px}.gallery-toolbar{flex-direction:column;gap:16px}.upload-control{justify-items:start}.upload-control>span{text-align:left;max-width:none}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.gallery-card-copy strong{font-size:11px}.gallery-intro{font-size:11px}}
@media(prefers-reduced-motion:reduce){.selection.changed .selection-image img{animation:none}.gallery-card{transition:none}}
.upload-privacy{font-size:9px;color:#8e829d}.clear-photo-cache{border:0;background:none;padding:0;color:#a99ab9;font-size:10px}.clear-photo-cache:hover{color:#d7bdf9}

textarea{font:inherit}#background-text,#background-email,#order-email{width:100%;border:1px solid #50435e;border-radius:9px;background:#14131b;color:#eee4ff;padding:11px;font-size:12px;resize:vertical}#background-text:focus-visible{outline:2px solid #ddcaff;outline-offset:3px}#background-text-count{float:right;color:#93899f}.background-overlay-text{position:absolute;left:6%;right:6%;bottom:12%;text-align:center;color:#fff;font:750 2.8125cqw/1.2 "Segoe UI",Arial,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;text-shadow:0 2px 5px #000,0 0 12px #000;pointer-events:none}.selection-image-badge{top:10px;bottom:auto;font-size:7px}#order-text{white-space:pre-wrap;overflow-wrap:anywhere;color:#eee4ff}
