@charset "UTF-8";
:root{--paper:#faf8f6;--ink:#302b37;--muted:#77717f;--purple:#7864c8;--purple-dark:#6150ad;--purple-light:#eee9f8;--line:#eae5e3;--serif:"Songti SC","STSong","SimSun",serif;--sans:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0;color:inherit;background:none}button:disabled{cursor:not-allowed;opacity:.46}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,a,input,select{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #baa9ee;outline-offset:4px}main:focus{outline:0}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:600}h2{font-size:26px;line-height:1.45}h3{font-size:17px;line-height:1.5}p{overflow-wrap:anywhere}.wrap{max-width:1140px;margin-inline:auto;width:calc(100% - 80px)}.icon{width:21px;height:21px;object-fit:contain;flex-shrink:0}.purple{color:var(--purple)}.muted{color:var(--muted);font-size:14px}.hint{font-size:12px;color:var(--muted);line-height:1.75;margin-top:14px}.hint a{color:var(--purple-dark);text-decoration:underline;text-underline-offset:3px}.eyebrow{display:block;font-size:11px;letter-spacing:2.3px;color:#8f8498;margin-bottom:13px}.primary{min-height:48px;padding:12px 22px;border-radius:13px;background:var(--purple);color:#fff;font-size:14px;font-weight:500;display:inline-flex;justify-content:center;align-items:center;gap:10px;transition:background .18s,transform .18s;box-shadow:0 6px 16px #7864c819}.primary:hover:not(:disabled){background:var(--purple-dark);transform:translateY(-1px)}.primary .icon{filter:brightness(0) invert(1);width:19px}.secondary{min-height:44px;border:1px solid #e1d9ef;background:#f1edf7;color:var(--purple-dark);border-radius:12px;padding:10px 18px;font-size:14px}.secondary:hover:not(:disabled){background:#e8e0f4}.full{width:100%}.text-button,.back-link{color:var(--purple-dark);padding:8px 0;font-size:13px;display:inline-flex;align-items:center;gap:7px;min-height:40px}.back-link{color:var(--muted)}.text-button:hover,.back-link:hover{text-decoration:underline;text-underline-offset:4px}.danger{color:#ae615f}.skip-link{position:fixed;left:12px;top:-100px;background:white;padding:10px 16px;z-index:100}.skip-link:focus{top:10px}.site-header{border-bottom:1px solid var(--line);height:88px;background:#faf8f6f5}.header-inner{height:100%;max-width:1280px;width:calc(100% - 80px);margin:auto;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;font-size:21px;font-weight:650;letter-spacing:1px}.brand-mark{display:flex;align-items:center;justify-content:center;background:#eee8f6;border-radius:13px;width:38px;height:38px}.brand-mark img{width:23px}.brand-light{font-weight:400;margin-left:3px}.web-label{border:1px solid #dbd3e3;border-radius:5px;padding:1px 5px;color:#958c9c;font-size:9px;letter-spacing:1.5px;margin-left:2px;font-weight:400}.site-header nav{display:flex;align-items:center;gap:35px;font-size:13px}.site-header nav a{position:relative;min-height:44px;display:flex;align-items:center;color:var(--muted)}.site-header nav a.active{color:var(--purple-dark)}.site-header nav a.active:after{position:absolute;content:"";height:3px;width:15px;background:var(--purple);border-radius:3px;bottom:0;left:50%;transform:translateX(-50%)}.help-nav{width:34px;height:34px;border:1px solid #ded7e5;border-radius:50%;color:#96899f;font-family:Georgia,serif}.site-footer{max-width:1280px;margin:40px auto 0;width:calc(100% - 80px);padding:28px 0 30px;border-top:1px solid var(--line);color:#958e99;font-size:11px;display:flex;align-items:center;gap:24px}.site-footer>span:first-child{font-size:13px;letter-spacing:1px;color:#6e6577}.site-footer button{font-size:11px;color:#82778c;margin-left:auto;min-height:36px;padding:0}.is-busy .site-header nav a{opacity:.5}
.hero{display:grid;grid-template-columns:1.06fr 1fr;align-items:center;min-height:515px;gap:30px;padding-block:40px 42px}.hero-copy{padding-left:12px}.hero-copy .eyebrow{letter-spacing:3.8px;margin-bottom:24px;font-size:12px}.hero h1{font-family:var(--serif);font-size:56px;font-weight:500;line-height:1.4;letter-spacing:3px}.hero-sub{font-size:15px;color:#827787;margin:21px 0 28px;letter-spacing:.4px}.hero-cta{width:215px;font-size:15px;min-height:52px}.hero-cta>span{margin-left:auto;font-size:21px}.hero-benefits{display:flex;align-items:center;gap:12px;font-size:11px;letter-spacing:.6px;color:#958b9c;margin-top:18px}.hero-benefits i{height:3px;width:3px;border-radius:50%;background:#c4bccc}.hero-art{height:416px;position:relative;display:flex;align-items:center;justify-content:center}.art-orbit{width:350px;height:350px;position:absolute;border-radius:50%;background:#efe9ef;right:12px;top:18px}.art-orbit:after{content:"";position:absolute;inset:-13px;border:1px solid #eae3eb;border-radius:50%}.hero-print{position:relative;width:259px;padding:10px 10px 0;background:#fff;transform:rotate(7deg);box-shadow:0 18px 40px #5d436b15;left:33px;top:-2px}.hero-print>img{width:100%;height:315px;object-fit:cover}.hero-print figcaption{font-size:10px;display:flex;justify-content:space-between;color:#8b8291;padding:12px 3px 14px}.hero-print figcaption>span:first-child{letter-spacing:2px;color:#6d607a}.mini-print{position:absolute;width:145px;padding:7px;background:#fff;bottom:30px;left:10px;transform:rotate(-12deg);z-index:1;box-shadow:0 9px 25px #54426019}.mini-print img{width:100%;height:165px;object-fit:cover;background:#e6ebed}.mini-print span{display:block;font-size:10px;text-align:center;color:#8e8396;padding:9px 0 4px;letter-spacing:1px}.art-note{position:absolute;right:15px;bottom:5px;font-family:Georgia,serif;font-style:italic;letter-spacing:.3px;color:#a194ad;font-size:17px;transform:rotate(-7deg)}.section-head{display:flex;justify-content:space-between;align-items:center;gap:22px;margin-bottom:25px}.home-tools .section-head{padding-top:7px}.section-head .eyebrow{margin-bottom:6px;font-size:10px}.section-head .muted{margin-top:12px}.search{display:flex;align-items:center;gap:10px;border:1px solid #e5dfe8;background:#fff8;border-radius:10px;padding:0 14px;height:43px;min-width:278px}.search .icon{width:17px;opacity:.75}.search input{border:0;outline:none;background:transparent;width:100%;font-size:12px;min-width:0;color:var(--ink)}.search:focus-within{border-color:#a994d5;box-shadow:0 0 0 3px #7864c812}.search input:focus-visible{outline:none}.search input::placeholder{color:#a299a9}.purpose-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.purpose-card{background:#fff;border:1px solid #ede7e8;border-radius:17px;text-align:left;padding:24px 24px 17px;position:relative;transition:transform .2s,box-shadow .2s}.purpose-card:hover{transform:translateY(-4px);box-shadow:0 10px 25px #6853710b;border-color:#d9cfe7}.paper-icon{display:flex;width:40px;height:46px;align-items:center;justify-content:center;background:#f2eef8;border-radius:9px;margin-bottom:20px}.paper-icon .icon{width:26px;height:26px}.purpose-card:nth-child(2) .paper-icon{background:#ecf1f7}.purpose-card:nth-child(3) .paper-icon{background:#f6f0e8}.purpose-card:nth-child(4) .paper-icon{background:#f0ecef}.purpose-card h3{font-size:16px;letter-spacing:.5px}.purpose-card p{font-size:12px;color:#8b818f;margin-top:5px}.card-bottom{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#998e9e;border-top:1px solid #f0ebef;margin-top:18px;padding-top:12px}.card-bottom b{font-size:18px;font-weight:400;color:#9581ad}.quick-tools{display:flex;align-items:center;gap:0;background:#f1edf2;border-radius:14px;padding:16px 22px;margin-top:18px}.quick-title{font-size:12px;letter-spacing:.5px;color:#84728f;margin-right:20px;white-space:nowrap}.quick-tools button{display:flex;align-items:center;gap:12px;flex:1;border-left:1px solid #e0d8e5;padding:3px 24px;font-size:13px;min-height:34px}.quick-tools button .icon{width:19px}.quick-tools button>span{margin-left:auto;font-size:17px;color:#9b87af}.quick-tools button:hover{color:var(--purple-dark)}.home-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:20px;font-size:12px;color:#918494}.home-bottom p{display:flex;align-items:center;gap:8px}.home-bottom .icon{width:15px;height:15px;opacity:.7}.home-bottom .text-button{font-size:12px;color:#8a7a97}
.page-section{padding-top:35px;min-height:65vh}.page-title{font-size:30px;font-weight:550;letter-spacing:1px;line-height:1.5}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.catalog-card{display:grid;grid-template-columns:38px 1fr 18px;grid-template-rows:auto auto;align-items:center;column-gap:14px;background:#fff;border:1px solid var(--line);border-radius:13px;padding:20px;text-align:left}.catalog-card:hover{border-color:#c9b7e1}.catalog-icon{grid-row:span 2;background:#f5f1f8;padding:9px;border-radius:9px}.catalog-icon .icon{width:20px}.catalog-card strong{font-size:14px;font-weight:500;overflow-wrap:anywhere}.catalog-card>span:not(.catalog-icon){font-size:11px;color:var(--muted);margin-top:4px;grid-column:2}.catalog-card>b{grid-column:3;grid-row:1/3;font-size:17px;font-weight:400;color:#ae99bc}.empty-search{grid-column:1/-1;padding:24px;text-align:center;color:var(--muted)}.page-section>.back-link{margin-bottom:18px}
.studio-section{padding-top:22px;min-height:70vh}.studio-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.steps{display:flex;align-items:center;gap:13px;color:#ada4b4;font-size:11px}.steps i{width:26px;height:1px;background:#ddd5e4}.steps .done{color:var(--purple-dark)}.studio-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.studio-heading .muted{margin-top:4px;font-size:12px}.studio-heading .page-title{font-size:27px}.editor-grid{display:grid;grid-template-columns:minmax(0,1.23fr) minmax(330px,1fr);gap:32px;align-items:start}.preview-column{min-width:0}.photo-stage{height:535px;background:#ede9e7;border:1px solid #e6e0df;border-radius:18px;position:relative;display:flex;justify-content:center;align-items:center;overflow:hidden;padding:32px;transition:background .2s}.photo-stage.dragging{outline:3px dashed #9d81d1;outline-offset:-12px;background:#ece3f7}.photo-preview{height:100%;width:100%;object-fit:contain;filter:drop-shadow(0 8px 14px #30203213)}.upload-empty{text-align:center;color:#8f8397;display:flex;align-items:center;flex-direction:column;gap:10px}.upload-frame{width:89px;height:105px;border:1px dashed #bbaec6;border-radius:9px;display:flex;align-items:center;justify-content:center;margin-bottom:14px;transform:rotate(-5deg);background:#ffffff47}.upload-frame .icon{width:37px;height:37px;opacity:.6}.upload-empty h2{font-size:21px;font-weight:500;color:#64556f;letter-spacing:1px}.upload-empty p{font-size:13px}.upload-empty .primary{margin-top:10px;min-width:181px}.upload-empty small{font-size:10px;color:#978d9b;margin-top:5px}.upload-empty .camera-link{padding:0;font-size:12px}.camera-link .icon{width:16px;height:16px}.preview-badge{position:absolute;left:17px;top:17px;padding:5px 11px;background:#ffffffdc;border-radius:20px;font-size:10px;color:#82718d}.compare-button{position:absolute;right:17px;bottom:17px;background:#463c52bc;color:white;font-size:11px;border-radius:20px;padding:8px 14px;min-height:36px;backdrop-filter:blur(8px)}.preview-caption{font-size:11px;color:#908798;margin-top:13px;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}.photo-details{font-size:12px;color:var(--muted);margin-top:16px}.photo-details summary{cursor:pointer;color:#867493;padding:7px 0}.photo-details p{margin:8px 0;line-height:1.7}.control-column{min-width:0}.control-card{background:white;border:1px solid var(--line);border-radius:18px;padding:23px 25px;min-height:260px}.editor-tabs{display:flex;border-bottom:1px solid #ede8ef;margin:-4px -2px 22px;gap:10px}.editor-tabs button{flex:1;font-size:14px;position:relative;padding:8px 0 14px;color:#918498;min-height:44px}.editor-tabs button.selected{color:var(--purple-dark);font-weight:600}.editor-tabs button.selected:after{content:"";position:absolute;bottom:-1px;left:calc(50% - 12px);width:24px;height:3px;border-radius:3px;background:var(--purple)}.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;font-weight:500;font-size:14px;margin-bottom:16px}.panel-heading>span{font-size:10px;font-weight:400;color:#a196a8}.look-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.look-card{border-radius:11px;overflow:hidden;border:1.5px solid #f0ebef;background:#fff;padding:4px 4px 10px;transition:border-color .15s}.look-card img{aspect-ratio:3/3.65;width:100%;object-fit:cover;border-radius:6px}.look-card strong{display:block;font-size:13px;font-weight:500;margin:8px 0 1px}.look-card small{display:block;font-size:10px;color:#a196a8}.look-card.selected{border-color:#a087d1;background:#f8f5fd}.look-card.selected strong{color:var(--purple-dark)}.sample-note{font-size:10px;color:#a49aaa;text-align:center;margin:9px 0 19px}.slider-label{display:flex;justify-content:space-between;flex-wrap:wrap;align-items:center;font-size:12px;color:#7c6f87;margin-top:15px}.slider-label output{font-size:11px;font-variant-numeric:tabular-nums;color:#a898b7}.slider-label input{display:block;width:100%;margin:11px 0 4px;accent-color:var(--purple);height:17px;cursor:pointer}.reset-look{font-size:11px;margin-top:9px;min-height:30px}.palette{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px 6px;margin:24px 0}.swatch{padding:3px 0 1px;display:flex;align-items:center;flex-direction:column;gap:9px;font-size:10px;color:#82748d}.swatch-dot{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;border:1px solid #e3dce7;font-size:17px;color:#3a2e45;text-shadow:0 0 3px #fff}.swatch.selected .swatch-dot{outline:2px solid #a990cf;outline-offset:4px}.swatch.selected{color:var(--purple-dark)}.checker{background-image:conic-gradient(#e6e3e7 25%,#f6f4f6 0 50%,#e6e3e7 0 75%,#f6f4f6 0);background-size:16px 16px}.format-row{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#7e7188;margin-top:18px}.segmented{background:#f3eff6;border-radius:8px;padding:3px;display:flex}.segmented button{font-size:11px;min-width:56px;min-height:30px;border-radius:6px;color:#928599}.segmented button.selected{background:#fff;color:var(--purple-dark);box-shadow:0 1px 5px #4531510d}.field{display:flex;flex-direction:column;gap:7px;min-width:0;flex:1;font-size:12px;color:#84758d}.field input,.field select{width:100%;height:43px;background:#faf8fb;border:1px solid #e9e3ee;border-radius:9px;padding:9px 11px;font-size:13px;min-width:0;color:#63536f}.field input:disabled{color:#9e93a5;background:#f4f0f7}.field-row{display:flex;gap:14px;margin-top:19px}.spec-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:17px}.spec-options button{font-size:11px;background:#f7f4f9;border-radius:7px;padding:8px 4px;min-height:34px;color:#8a7898;border:1px solid transparent}.spec-options button.selected{border-color:#d7c6ef;background:#f0eaf9;color:var(--purple-dark)}.check-line{display:flex;gap:9px;align-items:center;font-size:13px;margin-top:18px}.check-line input,.consent input{accent-color:var(--purple);width:16px;height:16px;flex-shrink:0}.editor-actions{padding:21px 2px 0}.consent{display:flex;align-items:flex-start;gap:8px;font-size:11px;color:#918199;line-height:1.8;margin-bottom:14px}.consent input{margin:2px 0 0}.inline-button{display:inline;color:var(--purple-dark);font-size:inherit;padding:0 0 0 3px;text-decoration:underline;text-underline-offset:3px}.action-hint{text-align:center;font-size:10px;color:#9c8da6;margin-top:10px}.editor-actions>.primary{min-height:49px;font-size:14px}.locked-note,.guide-only{padding:23px 0;text-align:center}.locked-note>.icon,.guide-only>.icon{width:38px;height:38px;margin:0 auto 17px;opacity:.75}.locked-note h3,.guide-only h3{font-size:16px}.locked-note p,.guide-only p{font-size:13px;color:var(--muted);line-height:1.9;margin-top:12px}.guide-only .secondary{margin-top:22px}.processing{position:absolute;inset:0;background:#f7f4f1e8;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;backdrop-filter:blur(3px)}.processing strong{font-size:15px;color:#78648c;font-weight:500}.processing p{font-size:12px;color:#9b8ca6}.spinner{display:block;width:31px;height:31px;border:2px solid #e2d8ee;border-top-color:var(--purple);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error{background:#fff0ed;border:1px solid #f0d8d3;border-radius:10px;color:#a45b53;font-size:13px;padding:12px 15px;margin:12px 0;line-height:1.7}.error .text-button{display:block;color:#914a49;padding:0;min-height:32px}.warning{font-size:12px;color:#9b7950;background:#fbf3e8;border-radius:10px;padding:12px 14px;margin:12px 0}.initial-loading{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:20px;min-height:65vh;font-size:13px;color:var(--muted)}.connection-error{text-align:center;padding-top:90px}.connection-error>.icon{width:42px;height:42px;margin:0 auto 23px}.connection-error p{margin:20px 0;color:var(--muted)}
.gallery-bar{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);margin-top:32px}.gallery-tabs{display:flex;gap:25px}.gallery-tabs button{font-size:14px;padding:12px 1px;color:#9a8ba4;border-bottom:2px solid transparent;display:flex;gap:7px;align-items:center}.gallery-tabs button.selected{color:var(--purple-dark);border-color:var(--purple)}.gallery-tabs button>span{font-size:10px;padding:0 5px;background:#efe9f5;border-radius:4px}.gallery-note{display:flex;align-items:center;gap:7px;font-size:12px;color:#9a8ca3;margin:21px 0}.gallery-note .icon{width:15px;height:15px;opacity:.6}.gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.photo-card{border:1px solid var(--line);background:white;border-radius:14px;overflow:hidden;min-width:0}.gallery-image{height:210px;display:flex;align-items:center;justify-content:center;padding:18px}.gallery-image img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 3px 8px #402a4c12)}.gallery-image>span{font-size:13px;color:#a197a6;background:#fffe;border-radius:6px;padding:6px 14px}.photo-card-body{padding:16px}.photo-card-body>div:first-child{display:flex;justify-content:space-between;align-items:center;gap:8px}.photo-card-body strong{font-size:13px;font-weight:500;overflow-wrap:anywhere}.status-tag{font-size:9px;background:#f2edf7;color:#9883ac;padding:1px 6px;border-radius:4px;white-space:nowrap}.photo-card-body p{font-size:11px;color:#95889e;margin-top:8px}.photo-card-body small{font-size:10px;color:#aa9db2}.card-actions{margin-top:13px;border-top:1px solid #f0eaf4;padding-top:6px;display:flex;justify-content:space-between}.card-actions .text-button,.icon-button{font-size:11px}.icon-button{min-height:38px}.empty-gallery{text-align:center;padding:65px 0}.empty-gallery>.icon{width:44px;height:44px;margin:0 auto 25px;opacity:.6}.empty-gallery h2{font-size:22px;font-weight:500}.empty-gallery p{font-size:13px;color:#9c8ba6;margin:12px 0 24px}.result-heading{text-align:center;margin:7px 0 32px}.success-mark{height:33px;width:33px;display:flex;align-items:center;justify-content:center;background:#eeebf7;border-radius:50%;color:var(--purple);margin:0 auto 15px;font-size:18px}.result-heading .muted{margin-top:8px}.result-card{max-width:810px;margin:auto;display:grid;grid-template-columns:1fr 1.08fr;background:white;border:1px solid var(--line);border-radius:21px;overflow:hidden}.result-photo{min-height:435px;display:flex;justify-content:center;align-items:center;flex-direction:column;gap:20px;padding:35px}.result-photo>img{max-height:330px;max-width:100%;object-fit:contain;filter:drop-shadow(0 6px 10px #31243c19)}.result-photo>span{font-size:10px;color:#988ca2;background:#ffffffe6;padding:4px 10px;border-radius:5px}.result-info{padding:36px 32px}.result-info h2{font-size:22px;font-weight:500}.result-info .eyebrow{font-size:10px;letter-spacing:2px}.result-info dl{font-size:12px;margin:23px 0}.result-info dl>div{display:flex;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid #f1ecf4}.result-info dt{color:#9a8aa4}.result-info dd{margin:0;color:#675471}.result-info .hint{font-size:10px}.result-secondary{display:flex;justify-content:space-between;margin-top:14px}.result-secondary button{font-size:12px}.result-notice{font-size:11px;color:#998ba2;text-align:center;margin:20px auto;max-width:720px}.empty-photo{display:flex;align-items:center;flex-direction:column;gap:18px;color:#9a8ca3;font-size:13px}.empty-photo .icon{width:50px;height:50px}
dialog{border:1px solid #e8e0ef;border-radius:20px;max-width:490px;width:calc(100% - 40px);padding:34px;background:#fffcfa;color:var(--ink);box-shadow:0 24px 70px #26123829;max-height:calc(100dvh - 40px);overflow:auto}dialog::backdrop{background:#30293f65;backdrop-filter:blur(4px)}dialog h2{font-size:21px;padding-right:23px;margin-bottom:22px;font-weight:550}dialog>p{font-size:14px;color:var(--muted);line-height:1.8}.dialog-close{position:absolute;top:15px;right:17px;font-size:26px;color:#9c8ba6;width:36px;height:36px}.dialog-copy p{font-size:13px;color:#8b7c96;line-height:1.9;margin:16px 0}.dialog-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:25px}.dialog-copy+.primary{margin-top:10px}.capture-example{display:flex;align-items:center;gap:21px}.capture-example img{width:102px;height:136px;object-fit:cover;border-radius:10px}.capture-example strong{font-size:13px;font-weight:500}.capture-example p{font-size:12px;color:#9a8ba4;margin-top:8px}.capture-example small{font-size:9px;color:#ac9db5;display:block;margin-top:8px}.camera-stage{position:relative;background:#ebe4f0;border-radius:12px;overflow:hidden;aspect-ratio:3/4}.camera-stage video{width:100%;height:100%;object-fit:contain;transform:scaleX(-1)}.camera-outline{position:absolute;inset:15% 25% 25%;border:1px dashed #ffffffaa;border-radius:50% 50% 30% 30%;pointer-events:none}#camera-error{font-size:12px;color:#a36365;margin:12px 0}.camera-stage~.secondary{margin-top:12px}.toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);background:#473a53;color:#fff;padding:13px 23px;border-radius:12px;max-width:min(500px,calc(100% - 36px));width:max-content;font-size:13px;box-shadow:0 8px 25px #29173220;z-index:20}.toast[hidden]{display:none}
@media(min-width:1440px){.hero{min-height:548px}.hero h1{font-size:59px}.hero-art{height:435px}.hero-print{width:280px}.hero-print>img{height:341px}.art-orbit{width:380px;height:380px}.mini-print{left:10px;bottom:29px}.hero-copy{padding-left:12px}}
@media(max-width:1000px){.wrap{width:calc(100% - 48px)}.header-inner,.site-footer{width:calc(100% - 48px)}.hero{gap:20px;min-height:475px}.hero h1{font-size:43px;letter-spacing:1px}.hero-copy{padding-left:0}.hero-sub{font-size:13px}.hero-art{height:360px}.hero-print{width:220px;left:18px}.hero-print>img{height:283px}.mini-print{width:119px;left:-1px;bottom:17px}.mini-print img{height:139px}.art-orbit{width:290px;height:290px;top:26px;right:0}.art-note{right:5px;bottom:-2px;font-size:15px}.purpose-card{padding:20px 18px 14px}.quick-tools{padding:15px}.quick-tools button{padding:3px 18px}.quick-title{margin-right:13px;font-size:11px}.editor-grid{gap:22px;grid-template-columns:minmax(0,1fr) minmax(320px,1fr)}.control-card{padding:20px}.photo-stage{height:510px;padding:26px}.panel-heading>span{display:none}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-head h2{font-size:23px}.search{min-width:245px}}
@media(max-width:720px){body{font-size:14px}.wrap{width:calc(100% - 36px)}.site-header{height:72px}.header-inner{width:calc(100% - 36px)}.brand{font-size:17px;gap:8px;letter-spacing:.4px}.brand-mark{width:33px;height:33px;border-radius:11px}.brand-mark img{width:21px}.web-label{font-size:8px;margin-left:0;letter-spacing:1px}.site-header nav{gap:18px;font-size:12px}.help-nav{display:none}.site-header nav a{min-height:40px}.hero{grid-template-columns:1fr .85fr;min-height:340px;padding:28px 0;gap:0}.hero h1{font-size:33px;letter-spacing:.8px;line-height:1.45}.hero-copy .eyebrow{font-size:9px;letter-spacing:1.8px;margin-bottom:14px}.hero-sub{font-size:12px;margin:16px 0 18px;max-width:183px;line-height:1.8}.hero-cta{width:165px;min-height:45px;font-size:13px;padding:9px 16px;border-radius:11px}.hero-benefits{font-size:9px;gap:7px;margin-top:12px;letter-spacing:0}.hero-benefits i{width:2px;height:2px}.hero-art{height:280px;margin-left:3px}.hero-print{width:161px;padding:6px 6px 0;left:3px;transform:rotate(5deg);top:-7px}.hero-print>img{height:211px}.hero-print figcaption{font-size:8px;padding:8px 1px;gap:2px}.hero-print figcaption>span:first-child{letter-spacing:0}.mini-print{width:81px;left:-13px;bottom:12px;padding:4px;transform:rotate(-11deg)}.mini-print img{height:96px}.mini-print span{font-size:7px;letter-spacing:0;padding:5px 0 3px}.art-orbit{width:185px;height:185px;right:-4px;top:40px}.art-orbit:after{inset:-8px}.art-note{display:none}.section-head{flex-direction:column;align-items:stretch;gap:15px;margin-bottom:18px}.section-head h2{font-size:22px}.home-tools .section-head{padding-top:12px}.section-head .eyebrow{font-size:9px;margin-bottom:5px}.search{min-width:0;height:44px}.search input{font-size:12px}.purpose-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.purpose-card{padding:18px 18px 12px;border-radius:14px}.paper-icon{width:33px;height:39px;margin-bottom:13px;border-radius:8px}.paper-icon .icon{width:23px;height:23px}.purpose-card h3{font-size:15px}.purpose-card p{font-size:11px;margin-top:4px}.card-bottom{font-size:10px;margin-top:14px;padding-top:9px}.quick-tools{flex-wrap:wrap;padding:14px 10px;margin-top:15px}.quick-title{flex-basis:100%;margin:0 0 10px 7px;font-size:10px}.quick-tools button{font-size:12px;gap:6px;padding:0 8px;min-height:34px}.quick-tools button:first-of-type{border-left:0}.quick-tools button .icon{width:16px;height:16px}.quick-tools button>span{font-size:14px}.home-bottom{flex-direction:column;align-items:flex-start;gap:6px;padding-top:17px}.home-bottom p{font-size:10px}.home-bottom .text-button{font-size:10px}.site-footer{width:calc(100% - 36px);padding:22px 0 calc(20px + env(safe-area-inset-bottom));margin-top:25px;gap:10px;flex-wrap:wrap;font-size:9px}.site-footer>span:first-child{font-size:11px}.site-footer>span:nth-child(2){display:none}.site-footer button{font-size:10px}.page-section{padding-top:22px}.page-title{font-size:26px}.section-head .muted{font-size:12px;max-width:450px}.section-head>.primary{align-self:flex-start;min-height:42px;font-size:12px}.catalog-grid{gap:10px}.catalog-card{display:flex;flex-direction:column;align-items:flex-start;padding:16px;position:relative;gap:6px}.catalog-icon{padding:7px;border-radius:8px;margin-bottom:4px}.catalog-icon .icon{width:18px;height:18px}.catalog-card strong{font-size:13px;padding-right:5px}.catalog-card>span:not(.catalog-icon){font-size:10px;margin-top:0}.catalog-card>b{position:absolute;right:14px;top:17px;font-size:15px}.studio-section{padding-top:14px}.studio-top{margin-bottom:12px}.steps{font-size:9px;gap:7px}.steps i{width:10px}.back-link{font-size:12px}.studio-heading{margin-bottom:17px}.studio-heading .page-title{font-size:23px}.studio-heading .muted{font-size:11px}.studio-heading .text-button{font-size:12px}.editor-grid{grid-template-columns:1fr;gap:22px}.photo-stage{height:360px;max-height:47vh;min-height:285px;padding:24px;border-radius:16px}.upload-frame{width:56px;height:68px;margin-bottom:7px}.upload-frame .icon{width:26px;height:26px}.upload-empty{gap:6px}.upload-empty h2{font-size:18px}.upload-empty p{font-size:12px}.upload-empty .primary{min-height:42px;margin-top:6px;min-width:166px}.upload-empty small{font-size:9px;margin-top:0}.upload-empty .camera-link{min-height:33px}.preview-caption{font-size:10px;margin-top:10px;gap:6px}.photo-details{font-size:11px;margin-top:8px}.control-card{padding:20px;border-radius:15px}.panel-heading>span{display:inline;font-size:10px}.look-grid{gap:12px}.look-card img{aspect-ratio:3/2.9;object-position:center 27%}.look-card strong{margin-top:5px}.sample-note{margin-bottom:14px;font-size:9px}.slider-label{font-size:12px;margin-top:13px}.editor-tabs{margin-bottom:18px}.editor-actions{padding-top:17px}.consent{font-size:11px;margin-bottom:12px}.editor-actions>.primary{min-height:49px}.action-hint{font-size:10px}.palette{row-gap:20px;max-width:360px;margin:22px auto}.swatch-dot{height:38px;width:38px}.swatch{font-size:11px}.gallery-bar{margin-top:22px}.gallery-tabs{gap:22px}.gallery-tabs button{font-size:13px}.gallery-note{font-size:11px;align-items:flex-start}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.gallery-image{height:185px;padding:17px}.photo-card-body{padding:12px}.photo-card-body strong{font-size:12px}.photo-card-body p{font-size:10px}.photo-card-body small{font-size:9px}.status-tag{font-size:8px;padding:1px 4px}.card-actions .text-button,.icon-button{font-size:10px}.empty-gallery{padding:45px 0}.empty-gallery h2{font-size:21px}.result-heading{margin:7px 0 23px}.result-heading .page-title{font-size:26px}.result-card{grid-template-columns:1fr;border-radius:17px;max-width:440px}.result-photo{min-height:0;height:330px;padding:24px;gap:12px}.result-photo>img{height:255px;max-height:100%}.result-photo>span{font-size:9px}.result-info{padding:25px}.result-info .eyebrow{font-size:9px;margin-bottom:8px}.result-info h2{font-size:21px}.result-info dl{margin:16px 0 22px}.result-info dl>div{padding:10px 0}.result-info .hint{font-size:11px}.result-notice{font-size:10px;line-height:1.8;padding:0 8px}.toast{bottom:calc(18px + env(safe-area-inset-bottom));font-size:12px;padding:11px 16px}dialog{padding:27px 24px;border-radius:17px}dialog h2{font-size:20px}.dialog-copy p{font-size:12px}.capture-example{gap:16px}.capture-example img{width:85px;height:113px}.capture-example p{font-size:11px}.capture-example strong{font-size:12px}}
@media(max-width:380px){.wrap,.header-inner,.site-footer{width:calc(100% - 28px)}.brand{font-size:15px}.brand-mark{height:29px;width:29px}.web-label{display:none}.site-header nav{gap:14px;font-size:11px}.hero{min-height:314px}.hero h1{font-size:29px}.hero-art{height:247px}.hero-print{width:139px;left:0}.hero-print>img{height:185px}.hero-print figcaption{font-size:7px}.mini-print{width:71px;left:-10px;bottom:7px}.mini-print img{height:80px}.mini-print span{font-size:6px}.art-orbit{width:155px;height:155px;top:39px;right:-1px}.hero-copy .eyebrow{font-size:8px;letter-spacing:1px}.hero-sub{font-size:11px;max-width:160px}.hero-cta{width:145px;min-height:43px;font-size:12px;padding:9px 12px}.hero-benefits{font-size:8px;gap:5px}.purpose-card{padding:16px 14px 10px}.purpose-card h3{font-size:14px}.purpose-card p{font-size:10px}.card-bottom{font-size:9px}.steps{font-size:8px;gap:5px}.studio-heading .page-title{font-size:21px}.photo-stage{padding:22px}.control-card{padding:17px}.panel-heading{font-size:13px}.panel-heading>span{font-size:9px}.gallery-image{height:162px}.gallery-grid{gap:10px}.photo-card-body>div:first-child{align-items:flex-start}.photo-card-body strong{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition:none!important}.spinner{border-top-color:var(--purple)}}

/* Keep the main phrase intact on narrow screens, without a lone last character. */
.hero-line{white-space:nowrap}
@media(max-width:720px){.hero h1{font-size:clamp(22px,6.7vw,34px);letter-spacing:.3px}.hero-sub{max-width:min(160px,42vw)}.quick-tools button{white-space:nowrap}}
@media(max-width:380px){.hero-print{width:135px}.quick-tools button{padding-inline:7px;gap:5px}.quick-tools button>span{display:none}}

.site-footer{flex-wrap:wrap}.site-legal{flex-basis:100%;display:flex;gap:18px;flex-wrap:wrap;font-size:10px}.site-legal a:hover{text-decoration:underline}

.look-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.look-card{padding:18px 12px;text-align:left}.look-card strong,.look-card small{display:block}.look-card small{margin-top:6px}.hd-download{margin-top:12px}

.hd-download{display:flex;align-items:center;justify-content:center;gap:8px}

/* Focused editor: choose first, keep the photo and next action within reach. */
.before-upload h2{font-size:20px;font-weight:550;line-height:1.5;margin-bottom:16px}.before-upload p{font-size:14px;color:var(--muted);line-height:1.8;margin:8px 0}.before-upload .text-button{margin-top:16px}
.awaiting-photo .control-card{min-height:0}.empty-actions{display:none}
.fine-tune{margin-top:14px;border-top:1px solid var(--line);padding-top:12px}.fine-tune summary{cursor:pointer;font-size:14px;color:var(--purple-dark);min-height:44px;display:list-item;padding:10px 0}
.look-card{min-height:80px}.look-card.selected{background:#f2eefb;border-color:var(--purple);box-shadow:inset 0 0 0 1px var(--purple)}.look-card small,.sample-note,.preview-caption,.action-hint,.consent,.hint{color:#706778}.sample-note{font-size:12px;line-height:1.6}.look-card small{font-size:12px;line-height:1.5}.look-card strong{font-size:15px}.slider-label{font-size:14px}.slider-label input{min-height:32px}.swatch{min-width:44px;min-height:54px}.compare-button{min-height:44px;font-size:12px}.inspect-photo{min-height:44px;padding:8px 0;font-size:13px}.preview-caption{align-items:center}.processing p{max-width:250px;text-align:center;line-height:1.7;padding-inline:14px}
.photo-inspection{display:grid;grid-template-columns:1fr 1fr;gap:14px}.photo-inspection figure{margin:0;min-width:0}.photo-inspection img{width:100%;height:260px;object-fit:contain;background:#eee9e7;border-radius:8px}.photo-inspection figcaption{font-size:12px;text-align:center;line-height:1.7;margin-top:8px}.save-photo{display:block;max-width:100%;max-height:65dvh;margin:20px auto;object-fit:contain;-webkit-touch-callout:default}
@media(min-width:721px){.editing .preview-column{position:sticky;top:20px}.editing .photo-stage{height:min(535px,65vh)}}
@media(max-width:720px){
 .awaiting-photo .control-column{display:none}.awaiting-photo .photo-stage{height:360px}.awaiting-photo .preview-caption{font-size:12px;line-height:1.7}
 .editing{padding-bottom:190px}.editing .studio-heading{margin-bottom:12px}.editing .editor-grid{gap:12px}.editing .preview-column{position:sticky;top:0;z-index:3;background:var(--paper);padding:6px 0 4px}.editing .photo-stage{height:clamp(175px,29dvh,265px);min-height:0;max-height:none;padding:12px;border-radius:12px}.editing .preview-caption{margin-top:0;font-size:11px;gap:6px}.editing .preview-caption #preview-status{display:none}.editing .preview-caption .inspect-photo{min-height:36px}.editing .photo-details{display:none}
 .editing .control-card{padding:16px}.editing .panel-heading{margin-bottom:12px}.editing .panel-heading>span{display:none}.editing .editor-tabs{margin-bottom:14px}.editing .look-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.editing .look-card{padding:12px 4px;text-align:center;min-height:56px;border-radius:9px}.editing .look-card strong{font-size:13px;margin:0}.editing .look-card small{display:none}.editing .sample-note{margin:12px 0 0;font-size:12px}.editing .fine-tune{margin-top:10px}.editing .editor-actions{position:fixed;z-index:5;bottom:0;left:0;right:0;background:#fffdfb;border-top:1px solid var(--line);box-shadow:0 -5px 20px #302b3708;padding:12px 18px calc(10px + env(safe-area-inset-bottom));}.editing .consent{font-size:12px;line-height:1.6;margin:0 0 9px}.editing .consent[hidden]{display:none}.editing .action-hint{font-size:11px;margin:6px 0 0}.editing #editor-feedback{max-height:90px;overflow:auto}.editing .editor-actions .error{margin:0 0 8px}.editing~*{position:relative}.toast{z-index:25;bottom:calc(185px + env(safe-area-inset-bottom))}
 .photo-inspection{grid-template-columns:1fr}.photo-inspection img{height:auto;max-height:55dvh}.result-info .hint{font-size:12px;line-height:1.7}.result-info .text-button{min-height:44px}.dialog-copy p{font-size:13px}
}
@media(max-height:600px) and (max-width:720px){.editing .preview-column{position:relative}.editing .photo-stage{height:180px}.editing .editor-actions{position:sticky;margin-top:12px}.editing{padding-bottom:20px}}

.quality-feedback{max-width:810px;margin:24px auto 0;padding:22px;background:#f2eef7;border:1px solid #e5dced;border-radius:16px;text-align:center}.feedback-title{font-size:15px;font-weight:550;margin:0 0 14px}.feedback-choices{display:flex;flex-wrap:wrap;justify-content:center;gap:9px}.feedback-choice{min-height:44px;padding:10px 18px;border:1px solid #d9cfe6;border-radius:22px;background:#fff;color:#61516e;font-size:14px}.feedback-choice:hover{background:#e9e0f5;border-color:var(--purple)}.feedback-choice:disabled{opacity:.6;cursor:wait}.feedback-note{margin:12px 0 0;color:#746a7c;font-size:12px;line-height:1.7}.feedback-back{min-height:44px;margin-top:8px}.feedback-choice[data-feedback="unsatisfied"]{background:transparent;border-style:dashed}
@media(max-width:720px){.quality-feedback{padding:20px 14px;margin-top:20px}.feedback-choice{padding:10px 15px}.feedback-choices{gap:8px}}
