:root{--bg: #f6f2ea;--bg-rgb: 246, 242, 234;--bg-2: #efe8dc;--ink: #1c1916;--mute: rgba(28, 25, 22, .62);--faint: rgba(28, 25, 22, .12);--leaf-teal: #2f8f86;--leaf-rose: #b03060;--font: Poppins, "Helvetica Neue", sans-serif;color-scheme:light}html[data-theme=dark]{--bg: #1c1916;--bg-rgb: 28, 25, 22;--bg-2: #2a2624;--ink: #f3eee6;--mute: #b8aea4;--faint: rgba(243, 238, 230, .14);color-scheme:dark}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:var(--font);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit;color:inherit}button{background:none;border:0;padding:0;cursor:pointer}img{display:block;max-width:100%}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem clamp(1rem,3vw,2rem);background:rgba(var(--bg-rgb),.78);backdrop-filter:blur(12px) saturate(1.25);-webkit-backdrop-filter:blur(12px) saturate(1.25)}.brand{display:flex;align-items:center;min-width:0}.brand-home{line-height:0;color:inherit}.brand-logo-wrap{--logo-h: 2.6rem;position:relative;display:block;height:var(--logo-h);width:calc(var(--logo-h) * 539 / 227);overflow:hidden}.brand-logo{position:absolute;inset:0;width:100%;height:100%;object-fit:fill}.brand-logo--inverse{width:calc(100% * 595 / 539);height:calc(100% * 283 / 227);inset:50% auto auto 50%;transform:translate(-50%,-50%);opacity:0}html[data-theme=dark] .brand-logo:not(.brand-logo--inverse){opacity:0}html[data-theme=dark] .brand-logo--inverse{opacity:1}.brand-portal{margin-left:.85rem;padding-left:.85rem;border-left:1px solid var(--faint);font-size:.84rem;font-weight:500;letter-spacing:.02em}.theme-toggle .icon-sun,html[data-theme=dark] .theme-toggle .icon-moon{display:none}html[data-theme=dark] .theme-toggle .icon-sun{display:block}.topbar-actions{display:flex;align-items:center;gap:.35rem}.topbar-end{display:flex;align-items:center;gap:.75rem}.theme-toggle,.profile-btn,.wallet-btn{position:relative;z-index:1;box-sizing:border-box;width:2.25rem;height:2.25rem;padding:0;margin:0;border:0;border-radius:0;background:transparent;color:var(--ink);box-shadow:none;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;line-height:0}.theme-toggle:hover,.profile-btn:hover,.wallet-btn:hover,.profile-btn[aria-expanded=true]{color:var(--ink)}.theme-toggle svg,.profile-btn svg,.wallet-btn svg{width:1.15rem;height:1.15rem;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.wallet-btn svg circle{fill:currentColor;stroke:none}.profile-menu{position:relative;width:2.25rem;height:2.25rem;display:flex;align-items:center;justify-content:center}.profile-dropdown{position:absolute;right:0;top:calc(100% + 8px);min-width:220px;padding:8px;border-radius:14px;border:1px solid rgba(0,0,0,.08);background:#ffffffe6;box-shadow:0 12px 36px #0000001a,inset 0 1px #ffffffe6;backdrop-filter:saturate(180%) blur(22px);-webkit-backdrop-filter:saturate(180%) blur(22px);z-index:60;color:#1c1916}html[data-theme=dark] .profile-dropdown{border-color:#ffffff1a;background:#3a3632e6;box-shadow:0 12px 36px #00000073,inset 0 1px #ffffff1a;color:#f3eee6}.profile-dropdown-name{margin:0;padding:10px 12px 8px;font-size:13px;font-weight:600;color:inherit}.profile-dropdown-item{width:100%;display:flex;align-items:center;gap:10px;text-align:left;font-family:inherit;font-size:13px;font-weight:500;color:inherit;background:transparent;border:0;border-radius:10px;padding:10px 12px;cursor:pointer;line-height:normal}.profile-dropdown-icon{width:16px;height:16px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.profile-dropdown-item:hover{background:#3a35321a}html[data-theme=dark] .profile-dropdown-item:hover{background:#f3eee61f}.login-shell{--glass: rgba(255, 255, 255, .78);--glass-border: rgba(0, 0, 0, .08);--text: #1c1916;--text-secondary: rgba(28, 25, 22, .62);--accent: #3a3532;--accent-soft: rgba(58, 53, 50, .1);--input-bg: rgba(255, 255, 255, .55);--input-bg-focus: rgba(255, 255, 255, .72);--shadow-glass: 0 8px 30px rgba(0, 0, 0, .08), inset 0 1px 0 rgba(255, 255, 255, .85);--radius: 22px;--radius-sm: 14px;--error: #d70015;min-height:100vh;display:flex;flex-direction:column;font-size:14px;color:var(--text)}html[data-theme=dark] .login-shell{--glass: rgba(48, 44, 40, .78);--glass-border: rgba(255, 255, 255, .1);--text: #f3eee6;--text-secondary: #b8aea4;--accent: #f3eee6;--accent-soft: rgba(243, 238, 230, .12);--input-bg: rgba(255, 255, 255, .06);--input-bg-focus: rgba(255, 255, 255, .1);--shadow-glass: 0 8px 30px rgba(0, 0, 0, .35), inset 0 1px 0 rgba(255, 255, 255, .08);--error: #ff6b6b}.login-shell a{color:inherit;text-decoration:none}.login-shell .topbar{position:fixed;inset:0 0 auto;z-index:50}.login-shell .brand-logo-wrap{--logo-h: 2.9rem}.login-shell .brand-portal:hover{color:var(--ink)}.login-shell .wrap{position:relative;z-index:1;flex:1;width:100%;max-width:920px;margin:0 auto;padding:7rem 24px 64px}.login-shell .foot{position:relative;z-index:1;padding:20px 28px 28px;text-align:center;color:var(--text-secondary);font-size:12px}.login-shell .foot p{margin:0}.login-shell .card{background:var(--glass);border:1px solid var(--glass-border);border-radius:var(--radius);box-shadow:var(--shadow-glass);padding:28px;backdrop-filter:saturate(180%) blur(28px);-webkit-backdrop-filter:saturate(180%) blur(28px)}.login-shell .login-card{max-width:400px;margin:48px auto 0}.login-shell .login-card h1{margin:0 0 4px;font-size:28px;font-weight:600;letter-spacing:-.03em}.login-shell .muted{margin:0 0 1em;color:var(--text-secondary)}.login-shell .form{display:flex;flex-direction:column;gap:16px;margin-top:8px}.login-shell .field{display:flex;flex-direction:column;gap:6px}.login-shell .field-label{font-size:12px;font-weight:500;color:var(--text-secondary)}.login-shell .field input{width:100%;font-family:inherit;font-size:14px;padding:11px 13px;border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:var(--input-bg);color:var(--text);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.login-shell .field input:focus{outline:none;border-color:var(--accent);background:var(--input-bg-focus);box-shadow:0 0 0 3px var(--accent-soft)}.login-shell .btn.primary{margin-top:4px;width:100%;min-height:2.75rem;padding:12px;border:1px solid var(--ink);border-radius:0;background:var(--ink);color:var(--bg);font-size:.88rem;font-weight:500;cursor:pointer;transition:transform .18s ease,background .18s ease,border-color .18s ease}.login-shell .btn.primary:hover{transform:translateY(-1px)}.login-shell .btn.primary:disabled,.login-shell .btn.primary:disabled:hover{opacity:.55;transform:none;cursor:default}.login-shell .flash{max-width:400px;margin:0 auto 18px;padding:12px 16px;border-radius:var(--radius-sm);background:#d7001514;border:1px solid rgba(215,0,21,.22);color:var(--error);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.login-shell .flash p{margin:0}@media(max-width:640px){.login-shell .wrap{padding-top:6.25rem}.login-shell .login-card h1{font-size:24px}}.nav-menu{position:relative}.nav-menu__button{display:inline-flex;align-items:center;gap:.35rem;min-height:2.25rem;padding:0 .35rem;color:var(--mute);font-size:.84rem;font-weight:400;white-space:nowrap}.nav-menu__button svg{width:.85rem;height:.85rem;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.nav-menu__button svg.is-open{transform:rotate(180deg)}.nav-menu__button:hover,.nav-menu__button[aria-expanded=true]{color:var(--ink)}.wallet{position:fixed;inset:0;z-index:40;display:grid;place-items:center;padding:1rem;background:#1c19166b;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.wallet__panel{width:min(30rem,100%);padding:1.75rem 1.75rem 1.4rem;border:1px solid rgba(0,0,0,.08);border-radius:22px;background:#ffffffe6;color:var(--ink);box-shadow:0 12px 36px #0000001a,inset 0 1px #ffffffe6;outline:none}html[data-theme=dark] .wallet__panel{border-color:#ffffff1a;background:#3a3632e6;box-shadow:0 12px 36px #00000073,inset 0 1px #ffffff1a}.wallet__panel h2{margin:0 0 .5rem;font-size:1.25rem;font-weight:500;letter-spacing:-.02em}.wallet__note{margin:0 0 1.1rem;color:var(--mute);font-size:.92rem}.wallet__key{display:flex;flex-direction:column;gap:.4rem}.wallet__head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem}.wallet__head span{font-size:.75rem;font-weight:500;color:var(--mute)}.wallet__topup{flex-shrink:0;font-size:.75rem;font-weight:500;color:var(--ink);text-decoration:none}.wallet__status{display:block;min-height:1.2em;font-size:.75rem;font-weight:400;line-height:1.4;color:var(--mute);overflow-wrap:anywhere}.wallet__key input{width:100%;font-family:inherit;font-size:14px;padding:11px 13px;border:1px solid rgba(0,0,0,.08);border-radius:14px;background:#ffffff8c;color:var(--ink)}html[data-theme=dark] .wallet__key input{border-color:#ffffff1a;background:#ffffff0f}.wallet__key input:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px #1c19161a}html[data-theme=dark] .wallet__key input:focus{box-shadow:0 0 0 3px #f3eee61f}.wallet__error{margin:.75rem 0 0;color:var(--leaf-rose);font-size:.82rem}.wallet__actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1.15rem}.wallet__cancel,.wallet__save{min-height:2.75rem;padding:0 1.15rem;border:1px solid var(--ink);border-radius:0;font-size:.88rem;font-weight:500;cursor:pointer;transition:transform .18s ease}.wallet__cancel:hover,.wallet__save:hover{transform:translateY(-1px)}.wallet__cancel{background:transparent;color:var(--ink)}.wallet__save{background:var(--ink);color:var(--bg)}.wallet__cancel:disabled,.wallet__save:disabled,.wallet__cancel:disabled:hover,.wallet__save:disabled:hover{opacity:.55;transform:none;cursor:default}.nav-menu__panel{position:absolute;top:calc(100% + .55rem);right:0;z-index:30;width:max-content;padding:.3rem 0;background:rgb(var(--bg-rgb));border:1px solid var(--faint);border-radius:0;box-shadow:0 10px 24px #1c191614}.nav-menu__panel button{display:block;width:100%;padding:.45rem .9rem;text-align:left;border-radius:0;color:var(--ink);font-size:.8rem;font-weight:400;letter-spacing:.01em;white-space:nowrap;transition:background .16s ease}.nav-menu__panel button:hover{background:var(--bg-2)}html[data-theme=dark] .nav-menu__panel{background:#222;border-color:#ffffff1f;box-shadow:0 12px 28px #00000059}html[data-theme=dark] .nav-menu__panel button:hover{background:#342f2a}.visual-main{width:min(1120px,calc(100% - 2.5rem));margin:0 auto;padding:2.25rem 0 4rem}h1{margin:0;font-size:clamp(1.7rem,3vw,2.3rem);font-weight:500;letter-spacing:-.03em}.note{max-width:28rem;margin-top:1.5rem}.where{margin:0 0 1rem}.where span{display:block;margin-bottom:.35rem;font-size:.68rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}.suggest-body{margin:0 0 .85rem;line-height:1.5}.meta{margin:0 0 1rem;color:var(--mute);font-size:.8rem}.suggest-line{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.suggest-line .meta{margin:0}.suggest-line .remove{margin:0 0 0 auto}.meta time,.activity time{margin-left:.6rem}.activity{margin:.75rem 0 0;padding:0;list-style:none}.activity li{margin-top:.4rem;color:var(--mute);font-size:.8rem}.activity strong{color:var(--ink);font-weight:500}.activity p{margin:.2rem 0 0;color:var(--ink);line-height:1.5}.feedback-log{margin-top:.85rem}.comment-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.comment-actions{display:flex;gap:.35rem}.comment-actions button{display:grid;place-items:center;width:1.7rem;height:1.7rem;border:1px solid var(--faint);color:var(--mute);background:transparent;transition:transform .18s ease,background .18s ease,border-color .18s ease,color .18s ease}.comment-actions button:hover{transform:translateY(-1px);border-color:var(--ink);color:var(--ink)}.comment-actions button[aria-label="Delete comment"]:hover{background:var(--leaf-rose);border-color:var(--leaf-rose);color:#fff}.comment-actions svg{width:.85rem;height:.85rem;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.feedback-log textarea{min-height:4.5rem;margin-top:.45rem}.options{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1.1rem}.options button{display:inline-flex;align-items:center;min-height:2.15rem;padding:.35rem .75rem;border:1px solid var(--faint);font-size:.84rem;font-weight:500;letter-spacing:-.01em}.options button.is-selected{border-color:var(--ink);background:var(--ink);color:var(--bg)}.options button:not(.is-selected):hover{border-color:var(--ink)}.options button.options-add{border-style:dashed;border-color:var(--ink);transition:transform .18s ease,background .18s ease,border-color .18s ease,color .18s ease}.options button.options-add:hover{border-style:solid;background:transparent;color:var(--ink);transform:translateY(-1px)}.options button.options-add.is-selected,.options button.options-add.is-selected:hover{border-style:solid;border-color:var(--ink);background:var(--ink);color:var(--bg);transform:none}.options-mark{display:inline-flex;margin-left:.4rem;color:var(--leaf-teal)}.options-mark.is-dislike{color:var(--leaf-rose)}.options button.is-selected .options-mark{color:inherit;opacity:.72}.options--styles{display:grid;grid-template-columns:repeat(auto-fill,minmax(14rem,1fr))}.options--styles>button:not(.options-add){justify-content:space-between;gap:.65rem;text-align:left;transition:transform .18s ease,border-color .18s ease,background .18s ease,color .18s ease}.options-name{min-width:0}.options-score{display:inline-flex;align-items:baseline;flex-shrink:0;gap:.28rem;margin-left:.45rem;font-size:.72rem;font-weight:500;font-variant-numeric:tabular-nums}.options-score .is-up{color:var(--leaf-teal)}.options-score .is-down{color:var(--leaf-rose)}.options-score__mark{color:var(--mute)}.options--styles>button.is-like .options-score .is-up,.options--styles>button.is-dislike .options-score .is-down,.options button.is-selected:not(.is-like):not(.is-dislike) .options-score span{color:inherit}.options--styles>button.is-like .options-score__mark,.options--styles>button.is-dislike .options-score__mark{color:inherit;opacity:.55}.options--styles>button:not(.options-add):not(.is-like):not(.is-dislike):not(.is-selected):hover{transform:translateY(-1px)}.options--styles .options-add{grid-column:1 / -1;justify-self:end;width:max-content}.options--styles>button.is-like,.options--styles>button.is-like.is-selected{border-color:var(--leaf-teal);background:var(--leaf-teal);color:#fff;transition:transform .18s ease,filter .18s ease}.options--styles>button.is-dislike,.options--styles>button.is-dislike.is-selected{border-color:var(--leaf-rose);background:var(--leaf-rose);color:#fff;transition:transform .18s ease,filter .18s ease}.options--styles>button.is-like:not(.is-selected):hover{border-color:var(--leaf-teal);transform:translateY(-1px);filter:brightness(.92)}.options--styles>button.is-dislike:not(.is-selected):hover{border-color:var(--leaf-rose);transform:translateY(-1px);filter:brightness(.92)}.options--styles>button.is-like .options-mark,.options--styles>button.is-dislike .options-mark{color:inherit;opacity:.85}.focus{margin-top:1.75rem}.stage{height:22rem;overflow:hidden;background:#fff}html[data-theme=dark] .stage{background:var(--bg-2)}.detail,.compose{margin-top:1.75rem}.back{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;margin-bottom:.85rem;color:var(--ink);transition:transform .18s ease}.back:hover{transform:translateY(-1px)}.back svg{width:1.5rem;height:1.5rem}.confirm{position:fixed;inset:0;z-index:40;display:grid;place-items:center;padding:1.5rem;background:#1c191647}.confirm__panel{width:min(24rem,100%);padding:1.35rem 1.35rem 1.15rem;background:rgb(var(--bg-rgb));border:1px solid var(--faint);box-shadow:0 10px 24px #1c191614}.confirm__panel p{margin:0;font-size:1.05rem;font-weight:500;letter-spacing:-.02em}.confirm__actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1.15rem}.confirm__actions button{min-height:2.15rem;padding:.35rem .85rem;border:1px solid var(--ink);font-size:.84rem;font-weight:500;transition:transform .18s ease,background .18s ease,color .18s ease}.confirm__actions button:hover{transform:translateY(-1px)}.confirm__cancel{background:transparent;color:var(--ink)}.confirm__yes{background:var(--leaf-rose);border-color:var(--leaf-rose);color:#fff}.status{display:grid;grid-template-columns:1fr 1fr;width:100%}.status-wrap{width:min(100%,14rem)}.detail .vote-row{display:flex;align-items:flex-start;gap:1.75rem}.detail .status-wrap{flex:0 0 14rem}.vote-subject{margin:0 0 .4rem;color:var(--mute);font-size:.75rem;text-align:center}.detail .status{width:100%}.detail .feedback-side{flex:1 1 auto;min-width:0}.post-row{display:flex;justify-content:flex-end;margin-top:.55rem}.status-col{min-width:0}.status button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;width:100%;height:2.45rem;padding:0 .7rem;background:#fff;color:var(--mute);transition:transform .18s ease,filter .18s ease,background .18s ease,color .18s ease}.status button:hover{transform:translateY(-1px)}.status button.is-active:hover{filter:brightness(.92)}.status-names{margin:.4rem 0 0;padding:0;list-style:none;font-size:.84rem;font-weight:500}.status-names li+li{margin-top:.15rem}.status-count{font-size:.84rem;font-weight:500;font-variant-numeric:tabular-nums}.status button.is-active{background:var(--leaf-teal);color:#fff}.status button.is-dislike.is-active{background:var(--leaf-rose);color:#fff}.status svg,.options-mark svg{width:1.05rem;height:1.05rem;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.options-mark svg{width:.85rem;height:.85rem}.detail label,.note label,.add label,.field-head{display:block;margin-top:1rem}.field-head,.add label>.field-head{display:flex;align-items:center;justify-content:space-between;gap:.65rem;margin-bottom:.35rem}.add .field-head{margin-top:0}.field-head .save{margin-left:auto}.field-head label,.add label span,.rename span{margin:0;font-size:.68rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}.rename{display:block;margin-top:0}.detail .rename{margin-top:0}.rename span{display:block;margin-bottom:.35rem}.rename input{margin-top:0}.add label span:not(.field-head){display:block;margin-bottom:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.save{display:grid;place-items:center;flex:0 0 auto;width:2.05rem;height:2.05rem;border:1px solid var(--faint);color:var(--mute);background:transparent;transition:transform .18s ease,background .18s ease,border-color .18s ease,color .18s ease}.save svg{width:.95rem;height:.95rem;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.save:hover{transform:translateY(-1px);border-color:var(--ink);color:var(--ink)}textarea,input,select{width:100%;border:1px solid var(--faint);background:transparent;border-radius:0;padding:.7rem .75rem}select{cursor:pointer}select:disabled,select:disabled:hover{opacity:.55;cursor:default}textarea{min-height:7rem;line-height:1.5;resize:vertical}textarea:read-only{cursor:default;resize:none}.remove{display:grid;place-items:center;width:2.05rem;height:2.05rem;margin-top:.8rem;border:1px solid var(--leaf-rose);color:var(--leaf-rose);background:transparent;transition:transform .18s ease,background .18s ease,border-color .18s ease,color .18s ease}.remove svg{width:.95rem;height:.95rem;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.remove:hover{transform:translateY(-1px);background:var(--leaf-rose);color:#fff;border-color:var(--leaf-rose)}.add{margin-top:2.5rem}.add.compose{margin-top:1.75rem}.add-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.add h2{margin:0;font-size:1.2rem;font-weight:500;letter-spacing:-.03em}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:1px solid var(--ink);outline-offset:2px}.play-preview{container-type:size;position:relative;display:grid;place-items:center;width:100%;height:100%;overflow:hidden}.play-carousel{align-self:stretch;justify-self:stretch;position:relative;width:100%;height:100%}.play-carousel__slide{position:absolute;inset:1.5rem 2.75rem 2.25rem;display:grid;place-items:center;overflow:hidden}.play-carousel__slide:has(.play-shot){display:flex;align-items:center;justify-content:center}.play-shot{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;min-height:0;gap:.55rem}.play-shot>.play-look,.play-shot>.play-close,.play-shot>.play-theme{flex:1 1 auto;min-height:0;width:100%;max-height:calc(100% - 4rem)}.play-shot>.play-theme{position:relative;inset:auto;overflow:hidden}.match-style{box-sizing:border-box;flex:0 0 auto;max-width:100%;min-height:2.15rem;padding:.4rem .55rem;border:1px solid var(--ink);background:transparent;color:var(--ink);font-size:.84rem;font-weight:500;line-height:1.25;text-align:center;cursor:pointer;transition:transform .18s ease}.match-style:hover{transform:translateY(-1px)}.play-photos figure,.play-const__person,.shot{position:relative}.shot{display:inline-block;max-width:100%;max-height:100%;line-height:0}.play-look--person .shot,.play-theme:has(figcaption) .shot{max-height:calc(100% - 2.6rem)}.play-theme .shot{height:100%}.play-theme .shot img,.play-look--person .shot img{display:block;width:auto;height:auto;max-width:100%;max-height:100%}.download{position:absolute;top:.35rem;right:.35rem;z-index:2;width:1.65rem;height:1.65rem;display:grid;place-items:center;border:1px solid var(--ink);background:#ffffffeb;color:var(--ink);cursor:pointer;transition:transform .18s ease}html[data-theme=dark] .download{background:#1c1916d1}.download:hover{transform:translateY(-1px)}.download svg{width:.85rem;height:.85rem;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.play-leafcycle .download{display:none}.play-const__person .download{top:-.35rem;right:-.35rem;width:1.35rem;height:1.35rem}.play-carousel__slide>.play-close{align-self:stretch;justify-self:center;height:auto;min-height:0;max-height:100%;overflow:hidden}.play-carousel__prev,.play-carousel__next{position:absolute;top:calc(50% - .85rem);z-index:2;display:grid;place-items:center;width:1.8rem;height:1.8rem;color:var(--ink);background:#ffffffdb}html[data-theme=dark] .play-carousel__prev,html[data-theme=dark] .play-carousel__next{background:#1c1916b8}.play-carousel__prev{left:.4rem}.play-carousel__next{right:.4rem}.play-carousel__prev:hover,.play-carousel__next:hover{color:var(--leaf-teal)}.play-carousel__prev svg,.play-carousel__next svg{width:1rem;height:1rem;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.play-carousel__dots{position:absolute;right:0;bottom:.45rem;left:0;display:flex;justify-content:center;gap:.35rem}.play-carousel__dots button{width:.42rem;height:.42rem;border-radius:50%;background:var(--faint)}.play-carousel__dots button.is-active,.play-carousel__dots button:hover{background:var(--ink)}.play-close{display:grid;grid-template-rows:minmax(0,1fr) auto;align-items:center;justify-items:center;width:100%;height:100%;margin:0}.play-close__frame{position:relative;display:grid;align-items:center;justify-items:center;height:100%;min-height:0}.play-close__photo{height:100%;width:auto;max-width:min(15rem,100%);max-height:100%;min-height:0;aspect-ratio:3 / 4;object-fit:cover;object-position:center 22%;background:var(--bg-2)}.play-close figcaption{display:block;margin-top:.35rem;color:var(--mute);font-size:.75rem;text-align:center}.play-close--paper .play-close__photo{filter:saturate(.45) sepia(.18) brightness(1.06);transition:filter .45s ease}.play-close--paper:hover .play-close__photo{filter:none}.play-close--duotone .play-close__photo{filter:grayscale(1) sepia(.65) hue-rotate(138deg) saturate(2.1) contrast(.95) brightness(.98)}.play-close--editorial figcaption{position:absolute;right:0;bottom:0;left:0;margin:0;padding:1.4rem .6rem .55rem;background:linear-gradient(transparent,#1c1916c7);color:#f6f2ea;text-align:left}.play-close--editorial .play-close__photo{filter:saturate(.82) contrast(1.04)}.play-close--leaf .play-close__photo{filter:saturate(.72) contrast(1.04)}.play-close__leaf{position:absolute;top:6%;right:8%;left:8%;height:58%;object-fit:contain;pointer-events:none}.play-close--constellation{height:auto;grid-template-rows:auto}.play-close--constellation .play-close__frame{height:auto;display:grid;justify-items:center}.play-close--constellation .play-close__photo{width:min(14rem,70%);height:auto;border-radius:50%;box-shadow:0 8px 18px #1c191624}.play-close--constellation figcaption{position:static;display:block;margin-top:.45rem}.play-photos{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.85rem;width:100%}.play-photos figure{margin:0;min-width:0}.play-photos img{width:100%;aspect-ratio:1;object-fit:cover;object-position:center 28%;background:var(--bg-2)}.play-photos figcaption{margin-top:.35rem;color:var(--mute);font-size:.66rem;text-align:center}.play-photos__note{grid-column:1 / -1;margin:.2rem 0 0;color:var(--mute);font-size:.75rem;line-height:1.4;text-align:center;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.play-carousel__slide>.play-photos{width:100%;justify-self:stretch}.play-photos--paper img{filter:saturate(.45) sepia(.18) brightness(1.06);transition:filter .45s ease,transform .45s ease}.play-photos--paper figure:hover img{filter:none;transform:scale(1.05)}.play-photos--duo img{filter:grayscale(1) sepia(.65) hue-rotate(138deg) saturate(2.1) contrast(.95) brightness(.98)}.play-photos--editorial figure{position:relative}.play-photos--editorial img{aspect-ratio:3 / 4;object-position:center 18%;filter:saturate(.82) contrast(1.04)}.play-photos--editorial figcaption{position:absolute;right:0;bottom:0;left:0;margin:0;padding:1.35rem .4rem .4rem;background:linear-gradient(transparent,#1c1916c7);color:#f6f2ea;font-size:.62rem;text-align:left}.play-leafcycle{position:relative;width:min(15rem,68%);aspect-ratio:4 / 5}.play-leafcycle figure{position:absolute;inset:0;margin:0;opacity:0}.play-leafcycle figure:first-child{opacity:1}.play-leafcycle figure>img:first-child{width:100%;height:78%;object-fit:cover;object-position:center 24%;filter:saturate(.72) contrast(1.04)}.play-leafcycle__mark{position:absolute;top:8%;right:8%;left:8%;height:62%;object-fit:contain;pointer-events:none}.play-leafcycle figcaption{position:absolute;right:0;bottom:0;left:0;color:var(--mute);font-size:.75rem;text-align:center}.play-preview.is-live .play-leafcycle figure{animation:play-cycle 18s infinite}.play-preview.is-live .play-leafcycle figure:nth-child(2){animation-delay:3.6s}.play-preview.is-live .play-leafcycle figure:nth-child(3){animation-delay:7.2s}.play-preview.is-live .play-leafcycle figure:nth-child(4){animation-delay:10.8s}.play-preview.is-live .play-leafcycle figure:nth-child(5){animation-delay:14.4s}.play-const{position:relative;width:100%;height:100%}.play-const__lines{position:absolute;inset:0;width:100%;height:100%}.play-const__lines line{stroke:var(--leaf-teal);stroke-width:1.25}.play-const__lines line.is-neg{stroke:var(--leaf-rose)}.play-const__person{position:absolute;width:4.4rem;max-width:20%;margin:0;aspect-ratio:1;transform:translate(-50%,-50%)}.play-const__person img{width:100%;height:100%;object-fit:cover;object-position:center 24%;border-radius:50%;box-shadow:0 8px 18px #1c191624}.play-const__person span{position:absolute;top:calc(100% + .25rem);left:50%;transform:translate(-50%);color:var(--mute);font-size:.66rem;white-space:nowrap}.play-theme{position:absolute;inset:1.5rem 2.75rem 2.25rem;display:flex;flex-direction:column;align-items:center;justify-content:center;margin:0;overflow:auto}.play-theme img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.play-theme:has(figcaption) img{max-height:calc(100% - 2.6rem)}.play-theme figcaption{flex:none;max-width:36rem;margin-top:.65rem;color:var(--mute);font-size:.9rem;line-height:1.45;text-align:center}label[for=look-model],label[for=look-aspect]{margin-bottom:.35rem}.generate,.generate label{margin-top:0}.generate textarea{min-height:4.5rem}.generate__open,.generate__go{min-height:2.15rem;padding:.35rem .85rem;border:1px solid var(--ink);background:transparent;color:var(--ink);font-size:.84rem;font-weight:500;transition:transform .18s ease}.generate__go{display:flex;align-items:center;gap:.4rem;width:fit-content;margin-top:.55rem;margin-left:auto;border-color:var(--faint);color:var(--mute)}.generate__go svg{width:.95rem;height:.95rem;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.generate__open:hover,.generate__go:hover{transform:translateY(-1px);border-color:var(--ink);color:var(--ink)}.generate__go:disabled,.generate__go:disabled:hover,.save:disabled,.save:disabled:hover{opacity:.55;transform:none;border-color:var(--faint);color:var(--mute);background:transparent;cursor:default}.generate__error{margin:.55rem 0 0;color:var(--leaf-rose);font-size:.84rem}.generate__preview{display:block;width:auto;max-width:12rem;max-height:16rem;margin-top:.85rem}.play-custom{display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:2rem 2.75rem;overflow:auto}.play-custom p{margin:0;max-width:36rem;font-weight:400;font-size:1.05rem;line-height:1.55;text-align:left}@container (max-height: 170px){.play-photos figcaption,.play-const__person span,.play-leafcycle figcaption,.play-close figcaption{display:none}.play-photos{width:calc(100% - .8rem);gap:.3rem}.play-const__person{width:1.6rem}}@keyframes play-cycle{0%{opacity:0}4%,16%{opacity:1}22%,to{opacity:0}}.generate__note,.generate__cost{margin:.55rem 0 0;color:var(--mute);font-size:.84rem}.generate__bar{display:flex;gap:.18rem;height:.7rem;margin-top:.45rem;overflow:hidden}.generate__bar span{flex:1 1 0;min-width:0;height:100%;background:var(--faint);overflow:hidden}.generate__bar span.is-filled{position:relative;background:var(--ink);-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 20'%3E%3Cpath fill='black' d='M0 7c5-4 10-4 15 0s10 4 15 0 10-4 15 0 10 4 15 0V20H0z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 20'%3E%3Cpath fill='black' d='M0 7c5-4 10-4 15 0s10 4 15 0 10-4 15 0 10 4 15 0V20H0z'/%3E%3C/svg%3E");-webkit-mask-size:1.5rem 100%;mask-size:1.5rem 100%;-webkit-mask-repeat:repeat-x;mask-repeat:repeat-x;animation:generate-water 1.6s linear infinite}.generate__bar span.is-filled:before{content:"";position:absolute;inset:-35% -20%;background:radial-gradient(ellipse at 28% 40%,rgba(var(--bg-rgb),.42),transparent 46%),radial-gradient(ellipse at 72% 72%,rgba(var(--bg-rgb),.24),transparent 42%);animation:generate-swell 2.6s ease-in-out infinite}@keyframes generate-water{0%{-webkit-mask-position:0 0;mask-position:0 0}to{-webkit-mask-position:-1.5rem 0;mask-position:-1.5rem 0}}@keyframes generate-swell{0%{transform:translate3d(-7%,-6%,0)}50%{transform:translate3d(8%,8%,0)}to{transform:translate3d(-7%,-6%,0)}}.generate__stage{margin-top:.85rem}.references{margin:0 0 1.25rem}.references__label{margin:0 0 .55rem;font-size:.68rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}.add label.references__all{display:flex;align-items:flex-start;gap:.55rem;margin:0 0 .85rem;color:var(--ink);font-size:.92rem;font-weight:400;letter-spacing:0;line-height:1.35;text-transform:none;cursor:pointer}.add label.references__all input{width:1rem;height:1rem;margin:.15rem 0 0;accent-color:var(--ink);flex:none}.add label.references__all span{display:block;margin:0;color:var(--ink);font-size:.92rem;font-weight:400;letter-spacing:0;text-transform:none}.add label.references__all small{display:block;margin-top:.2rem;color:var(--mute);font-size:.78rem;font-weight:400;letter-spacing:0;text-transform:none}.add label.references__all:has(input:disabled){opacity:.55;cursor:default}.references__row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.55rem;margin:0;padding:0;list-style:none}.references figure{display:flex;flex-direction:column;align-items:center;margin:0}.references figure img{width:min(100%,9rem);height:auto;aspect-ratio:1;object-fit:contain;background:#fff}.references figcaption{margin-top:.3rem;color:var(--ink);font-size:.75rem;text-align:center}.references__bank{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.4rem}.references__bank button{width:2.4rem;height:2.4rem;padding:0;border:1px solid var(--faint);background:#fff;transition:transform .18s ease,border-color .18s ease}html[data-theme=dark] .references img,html[data-theme=dark] .references__bank button,html[data-theme=dark] .references__bank label{background:var(--bg-2)}.references__bank button img{width:100%;height:100%;object-fit:contain}.references__bank button:not(.is-selected):hover{transform:translateY(-1px);border-color:var(--ink)}.references__bank button.is-selected,.references__bank button.is-selected:hover{border-color:var(--ink);transform:none}.references__bank label{display:grid;place-items:center;width:2.4rem;height:2.4rem;margin:0;border:1px dashed var(--ink);background:#fff;color:var(--ink);font-size:1.15rem;line-height:1;cursor:pointer;transition:transform .18s ease}.references__bank label:hover{transform:translateY(-1px)}.references__bank label.is-busy,.references__bank label.is-busy:hover{opacity:.55;transform:none;cursor:default}.play-look{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;margin:0;min-height:0}.play-look img{width:auto;max-width:100%;max-height:100%;object-fit:contain}.play-look--person img{max-width:min(15rem,100%)}.play-look figcaption{flex:0 0 auto;max-width:36rem;margin-top:.35rem;color:var(--mute);font-size:.75rem;line-height:1.4;text-align:center;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.play-look:has(figcaption) img{max-height:calc(100% - 2.6rem)}.match-row{display:flex;align-items:center;gap:.55rem;margin-top:.85rem}.match-row img{width:2.4rem;height:2.4rem;object-fit:contain;background:#fff}html[data-theme=dark] .match-row img{background:var(--bg-2)}.match-row p{margin:0;color:var(--ink);font-size:.84rem}.match-row button{margin-left:auto;width:2.05rem;height:2.05rem;border:0;background:transparent;color:var(--mute);font-size:1.15rem;line-height:1;cursor:pointer;transition:transform .18s ease,color .18s ease}.match-row button:hover{transform:translateY(-1px);color:var(--ink)}@media(max-width:900px){.stage{height:16rem}.detail .vote-row{flex-direction:column}.detail .status-wrap{flex-basis:auto;width:min(100%,14rem)}.references__row{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(prefers-reduced-motion:reduce){.play-preview.is-live *{animation:none!important}.generate__bar span,.generate__bar span:before{animation:none}}
