:root{font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Noto Sans SC",sans-serif;color:#292e29;background:#f5f4ee;font-synthesis:none;--accent:#748577;--card:#dce5dc;--line:#dcded5;--muted:#797e73}*{box-sizing:border-box}body{margin:0}button,a,input{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.35}button:focus-visible,a:focus-visible,input:focus-visible,.stage:focus-visible{outline:2px solid #697e70;outline-offset:5px}a{color:inherit;text-decoration:none}[hidden]{display:none!important}.topbar{max-width:1440px;margin:auto;padding:28px 5.2%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:11px;font-size:18px;font-weight:650;letter-spacing:2px}.brand small{display:block;font-size:8px;letter-spacing:2.5px;margin-top:5px;font-weight:500}.brand-mark{font-size:40px;line-height:1;font-weight:400}.edition{font-size:10px;letter-spacing:2px;color:#767e72;display:flex;align-items:center;gap:8px}.edition span,.status-dot{width:6px;height:6px;border-radius:50%;background:#829a7c;display:inline-block}.text-button{border:0;background:none;font-size:12px}.text-button span{padding-left:12px}main{max-width:1440px;margin:auto}.intro{text-align:center;margin:35px 0 12px}.eyebrow{font-size:10px;letter-spacing:2.3px;font-weight:600;color:#6e786c}.intro h1{font-weight:500;font-size:clamp(28px,3vw,40px);letter-spacing:3px;margin:14px 0 12px}.intro>p:last-child{font-size:12px;color:var(--muted);letter-spacing:1px}.showroom{display:grid;grid-template-columns:1fr minmax(360px,540px) 1fr;align-items:center;gap:3.3%;padding:0 7.5%;min-height:650px}.look-info{max-width:220px}.look-counter{display:flex;align-items:baseline;gap:12px;font-size:12px;color:#899084;letter-spacing:2px}.look-counter span:first-child{font-size:38px;font-weight:300;color:#3c493e;letter-spacing:-2px}.look-counter .slash{font-size:25px;font-weight:200;color:#b8bfb2}.look-title{margin-top:32px}.look-title h2{font-size:27px;font-weight:500;letter-spacing:2px;margin:12px 0 16px}.look-title>p:last-child,.studio-note>p:not(.eyebrow){font-size:12px;color:#7a8075;line-height:2}.palette{display:flex;gap:6px;margin:22px 0 18px}.swatch{width:20px;height:20px;border:3px solid #f5f4ee;border-radius:50%;outline:1px solid #d9ddd3}.look-tags{display:flex;gap:7px;flex-wrap:wrap}.look-tags span{font-size:10px;border:1px solid #d7dcd1;padding:5px 9px;border-radius:20px;color:#6b7768}.material-note{display:flex;gap:12px;margin-top:38px;padding-top:23px;border-top:1px solid var(--line)}.material-note p{font-size:10px;line-height:1.9;color:#90968a;margin:0}.tiny-spark{font-size:25px;color:#a4b298}.stage-column{position:relative;align-self:start}.stage-topline{display:flex;justify-content:space-between;align-items:center;padding:17px 20px 0;font-size:10px;color:#8e9588;letter-spacing:.6px}.badge{border:1px solid #d5dbce;border-radius:20px;padding:5px 9px;background:#f5f4eea6;color:#6a7967}.stage{position:relative;height:480px;outline:0;touch-action:pan-y;user-select:none;-webkit-user-select:none;cursor:default;isolation:isolate}.stage.ready{cursor:grab}.stage.dragging{cursor:grabbing}.canvas-wrap{position:absolute;inset:7px 48px 19px;z-index:2;display:flex;align-items:center;justify-content:center;pointer-events:none;mix-blend-mode:normal;mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent)}.canvas-wrap canvas{height:100%;max-width:100%;object-fit:contain;display:block}.stage-word{position:absolute;top:0;left:50%;transform:translateX(-50%);font-family:Georgia,serif;font-style:italic;font-size:98px;letter-spacing:-5px;color:#d5ddd0;opacity:.45;z-index:-2}.paper{width:130px;height:180px;position:absolute;z-index:-1;border:1px solid #e8e9df;box-shadow:0 6px 20px #38433005;transition:background .4s,transform .5s;display:flex;align-items:flex-end;padding:13px}.paper span{font-size:9px;line-height:1.7;letter-spacing:2px;color:#6b796457}.paper-one{left:20px;top:105px;transform:rotate(-13deg);background:var(--card)}.paper-two{right:10px;top:212px;transform:rotate(12deg);background:#e9dfd1}.paper-two span{font-family:Georgia,serif;font-size:12px;font-style:italic;letter-spacing:.5px}.orbit{position:absolute;bottom:31px;left:6%;width:88%;height:72px;border:1px solid #cdd5c8;border-radius:50%;z-index:3;pointer-events:none;border-top-color:transparent;opacity:.7}.orbit span{position:absolute;left:12%;bottom:2px;color:#9ba991}.drag-hint{position:absolute;z-index:4;bottom:1px;left:50%;transform:translateX(-50%);white-space:nowrap;font-size:10px;color:#7e8d76;background:#f5f4eedd;padding:5px 12px;border-radius:15px;transition:opacity .2s}.drag-hint span{font-size:18px;padding-right:6px;vertical-align:-1px}.stage.dragging .drag-hint{opacity:0}.stage-loader{position:absolute;inset:0;background:#f5f4eec9;z-index:6;display:flex;align-items:center;justify-content:center;gap:10px;font-size:12px}.spinner{width:17px;height:17px;border:1px solid #b7c3ae;border-top-color:#44583e;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.transport{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:15px}.circle-button{background:transparent;border:1px solid #cfd6c8;border-radius:50%;width:31px;height:31px;line-height:1}.play-button{border:0;border-radius:24px;padding:10px 18px;background:#e2e8dc;color:#485e41;display:flex;gap:8px;align-items:center;font-size:11px;min-width:112px;justify-content:center}.play-button>span:first-child{font-size:15px}.reset-button{border:0;background:none;font-size:17px;padding:4px 0 4px 9px}.reset-button span{font-size:10px;vertical-align:2px;padding-left:3px}.scrubber{max-width:340px;margin:17px auto 0;display:flex;align-items:center;gap:12px;font-size:9px;font-variant-numeric:tabular-nums;color:#88927f}.scrubber input{appearance:none;width:100%;height:2px;background:#d6ddcf;cursor:pointer;accent-color:#697e5f}.scrubber input::-webkit-slider-thumb{appearance:none;width:9px;height:9px;border:2px solid #f5f4ee;outline:1px solid #8b9d7c;border-radius:50%;background:#8b9d7c}.sequence-note{text-align:center;color:#919888;font-size:9px;margin:15px 0 0;line-height:1.7}.studio-note{justify-self:end;max-width:180px;margin-top:-14px}.note-star{display:inline-block;font-size:45px;font-weight:200;color:#b2bea4;margin-bottom:22px}.studio-note .eyebrow{font-size:8px;letter-spacing:1.5px}.studio-note h3{font-size:26px;font-weight:400;letter-spacing:2px;line-height:1.5;margin:15px 0}.note-rule{width:24px;height:1px;background:#aab6a0;margin:27px 0 20px}.note-number{font-size:9px;letter-spacing:2px;color:#a2aa98}.studio-note .note-caption{font-size:10px!important;color:#a0a696!important}.wardrobe{padding:0 8%;margin-top:10px}.wardrobe-heading{display:flex;justify-content:space-between;align-items:center;padding-bottom:10px;border-bottom:1px solid var(--line)}.wardrobe-heading .eyebrow{font-size:9px}.wardrobe-heading .eyebrow span{font-weight:400;letter-spacing:1px;padding-left:8px;color:#9a9f91}.collection-count{font-size:9px;color:#8b9680;letter-spacing:2px}.card-deck{display:flex;align-items:center;justify-content:center;padding:31px 6px 8px;min-height:260px;gap:14px}.look-card{position:relative;background:#fafaf4;border:1px solid #e2e4da;width:calc((100% - 70px)/6);max-width:148px;padding:7px 7px 12px;text-align:left;border-radius:5px;transform:translateY(var(--raise,0px)) rotate(var(--tilt,0deg));transition:transform .25s,border-color .25s,box-shadow .25s;box-shadow:0 7px 14px #3f473309;flex-shrink:0}.look-card:nth-child(1){--tilt:-8deg;--raise:12px}.look-card:nth-child(2){--tilt:-5deg;--raise:3px}.look-card:nth-child(3){--tilt:-2deg;--raise:-3px}.look-card:nth-child(4){--tilt:2deg;--raise:-3px}.look-card:nth-child(5){--tilt:5deg;--raise:3px}.look-card:nth-child(6){--tilt:8deg;--raise:12px}.look-card:hover{transform:translateY(-13px) rotate(0deg);z-index:2}.look-card[aria-pressed=true]{transform:translateY(-17px) rotate(0deg);border-color:#809075;box-shadow:0 9px 24px #556d3b1b;z-index:3}.thumb-wrap{height:160px;overflow:hidden;background:#ebe9df;border-radius:2px}.thumb-wrap canvas{width:100%;height:100%;object-fit:cover;display:block}.card-meta{display:flex;align-items:center;justify-content:space-between;font-size:9px;color:#959d8c;padding:10px 1px 5px;letter-spacing:1px}.card-meta .check{display:none;color:#6a805b}.look-card[aria-pressed=true] .check{display:block}.card-name{font-size:11px;letter-spacing:1px;padding:0 1px}.card-type{display:block;font-size:8px;color:#979f8c;padding:6px 1px 0}.deck-caption{text-align:center;font-size:9px;color:#a5ad9a;letter-spacing:2px;margin:26px 0}.deck-caption span{padding:0 14px;color:#bac3b1}.experiment-strip{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:22px 25px;border:1px solid #dfe3d7;background:#eeefe6;border-radius:5px;margin:33px 8% 36px}.experiment-strip strong{font-size:11px;font-weight:500;letter-spacing:1px;margin-left:6px}.experiment-strip p{font-size:10px;color:#8a947e;line-height:1.7;margin:8px 0 0 16px}.import-button{border:1px solid #cbd5be;background:#f8f9f1;padding:10px 13px;border-radius:3px;font-size:10px;white-space:nowrap}.import-button span{margin-left:14px;color:#869878}footer{max-width:1280px;margin:auto;border-top:1px solid #dfe2d7;padding:24px 4%;display:flex;justify-content:space-between;font-size:9px;color:#9ba390;letter-spacing:.5px}.footer-dot{padding:0 8px}dialog{background:#f8f8f1;border:1px solid #d5dfcb;padding:40px;max-width:560px;width:calc(100% - 32px);border-radius:10px;color:#384332;box-shadow:0 25px 80px #26301d38}dialog::backdrop{background:#27341d65;backdrop-filter:blur(4px)}dialog h2{font-size:24px;font-weight:500;line-height:1.6}dialog p:not(.eyebrow){font-size:12px;line-height:2;color:#77836e}dialog a{font-size:11px;border-bottom:1px solid #b9c7a9;padding-bottom:4px}.dialog-close{position:absolute;right:15px;top:12px;font-size:26px;border:0;background:none;color:#839574}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);max-width:calc(100vw - 40px);z-index:20;background:#3f4b38;color:#f9fbf5;padding:12px 20px;border-radius:30px;font-size:12px;text-align:center;box-shadow:0 5px 20px #202c1822}
@media(min-width:1441px){.stage{height:510px}.showroom{min-height:675px}}
@media(max-width:1000px){.showroom{grid-template-columns:1fr minmax(340px,500px);padding:0 6%;gap:20px}.studio-note{display:none}.look-info{max-width:185px}.wardrobe{padding:0 6%}.card-deck{gap:10px}.look-card{width:calc((100% - 50px)/6)}.thumb-wrap{height:140px}.experiment-strip{margin-left:6%;margin-right:6%}}
@media(max-width:680px){.topbar{padding:18px 22px}.brand{font-size:15px;gap:8px}.brand-mark{font-size:32px}.brand small{font-size:7px}.edition{display:none}.text-button{font-size:10px}.intro{margin:27px 0 11px}.intro .eyebrow{font-size:7px;letter-spacing:2px}.intro h1{font-size:27px;margin:13px 0 9px;letter-spacing:2px}.intro>p:last-child{font-size:10px}.showroom{display:flex;flex-direction:column;padding:0 16px;gap:0;min-height:auto}.look-info{display:contents}.look-counter,.look-title .eyebrow,.look-title>p:last-child,.palette,.look-tags,.material-note{display:none}.look-title{order:2;margin:14px 0 0;text-align:center}.look-title h2{font-size:20px;margin:4px 0 8px;letter-spacing:2px}.stage-column{width:100%;max-width:430px;align-self:center;order:1}.stage-topline{padding:14px 12px 0;font-size:9px}.badge{font-size:8px}.stage{height:390px}.canvas-wrap{inset:5px 35px 18px}.paper{width:110px;height:150px}.paper-one{left:12px;top:90px}.paper-two{right:6px;top:170px}.stage-word{font-size:82px;top:0}.orbit{bottom:29px;height:58px}.transport{margin-top:15px;gap:12px}.scrubber{max-width:280px;margin-top:16px}.sequence-note{font-size:8px;margin-top:12px}.wardrobe{padding:0;margin-top:15px;overflow:hidden}.wardrobe-heading{margin:0 22px;padding-bottom:8px}.wardrobe-heading .eyebrow{font-size:8px}.wardrobe-heading .eyebrow span{font-size:8px;letter-spacing:0;padding-left:3px}.collection-count{font-size:8px}.card-deck{justify-content:flex-start;overflow-x:auto;overscroll-behavior-x:contain;padding:33px 24px 18px;min-height:238px;gap:12px;scrollbar-width:none;scroll-padding:24px;scroll-snap-type:x proximity}.card-deck::-webkit-scrollbar{display:none}.look-card{width:116px;max-width:116px;padding:6px 6px 10px;scroll-snap-align:center;--tilt:0deg!important;--raise:0px!important}.look-card:nth-child(odd){--tilt:-3deg!important}.look-card:nth-child(even){--tilt:3deg!important}.look-card[aria-pressed=true]{transform:translateY(-10px) rotate(0)}.thumb-wrap{height:136px}.card-name{font-size:10px}.card-meta{font-size:8px}.deck-caption{margin:9px 0 0;font-size:8px}.experiment-strip{margin:27px 22px 24px;padding:16px;display:block}.experiment-strip p{font-size:9px;margin:8px 0 13px}.import-button{width:100%;text-align:center}.import-button span{float:right}footer{padding:20px 22px;gap:14px;flex-wrap:wrap;font-size:8px}.reset-button span{font-size:9px}dialog{padding:28px}.canvas-wrap canvas{width:auto}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

.source-video{font-size:10px;color:#657a58;white-space:nowrap;border-bottom:1px solid #bcc9b1;padding-bottom:3px;margin-left:auto}@media(max-width:680px){.source-video{display:inline-block;margin:0 0 14px;font-size:10px}}

/* Public wardrobe edition: implementation notes live in README, not on the stage. */
.wardrobe{margin-bottom:44px}.retry-button{display:block;margin:8px auto 0;color:#647a59;font-size:11px}.sequence-note{min-height:16px}.stage-loader{pointer-events:none}.scrubber span{min-width:28px}.stage-topline{min-height:42px}
