:root{color-scheme:dark;--bg:#17130f;--panel:#27211b;--line:#ecdfcd;--text:#f4eada;--muted:#bba98f;--yellow:#dfac37;--pink:#d987a7;--blue:#68acc5;--paper:#f6f0e6;--ink:#31271e;--quiet:#78654f;--hard:#090704;--sans:"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",system-ui,sans-serif;--mono:"SFMono-Regular",Consolas,monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--site-header-height,130px)}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.85 var(--sans);-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;background:none;border:0}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible,select:focus-visible{outline:3px solid var(--blue);outline-offset:4px}img{display:block;width:100%;height:auto}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:800;line-height:1.4;letter-spacing:-.035em}h1{font-size:48px}h2{font-size:30px}h3{font-size:20px}p+p{margin-top:12px}.wrapper{width:min(1180px,calc(100% - 72px));margin:auto}.eyebrow,.mono{font:11px/1.7 var(--mono);letter-spacing:.08em}.muted,.small{color:var(--muted)}.small{font-size:13px}.eyebrow{color:var(--quiet)}.skip{position:fixed;left:20px;top:-100px;z-index:200;background:var(--paper);color:var(--ink);padding:12px}.skip:focus{top:12px}
.site-header{position:sticky;top:0;z-index:20;background:var(--bg);display:flex;justify-content:space-between;align-items:center;gap:24px;padding:28px 0;border-bottom:1px solid #45382b}.wordmark{display:flex;gap:13px;align-items:center;font-weight:900;font-size:25px;line-height:1.3}.brand-symbol{display:grid;place-items:center;width:47px;height:47px;border:2px solid var(--line);border-radius:15px;background:var(--yellow);color:var(--ink);font-size:28px;box-shadow:3px 3px 0 #000;transform:rotate(-5deg)}.wordmark small{display:block;font:8px/1.6 var(--mono);letter-spacing:.11em;color:var(--muted);margin-top:4px}.main-nav{display:flex;gap:8px}.main-nav button{border:1px solid transparent;border-radius:30px;padding:8px 18px;color:var(--muted);font-size:14px}.main-nav [aria-current=page]{border-color:#806b50;background:var(--panel);color:var(--text)}.app-header{display:flex;align-items:center;gap:12px;min-height:54px;color:var(--muted);font-size:12px}.app-header strong{font-weight:500}.app-header button{font-size:24px;padding:0 8px}.app-header .edition{margin-left:auto;font:10px var(--mono)}#screen{outline:none;min-height:70vh;padding-bottom:20px}.site-footer{margin-top:34px;padding:24px 0 34px;border-top:1px solid #45382b;display:flex;gap:25px;justify-content:space-between;color:var(--muted);font-size:12px}.site-footer a{text-decoration:underline;text-underline-offset:4px}
.primary,.secondary,.button{display:inline-flex;justify-content:center;align-items:center;gap:12px;padding:12px 22px;border:2px solid var(--line);border-radius:12px;font-weight:750;box-shadow:4px 4px 0 var(--hard);line-height:1.6}.primary{background:var(--yellow);color:#2c2113}.secondary{background:var(--panel);color:var(--text)}.primary:hover:not(:disabled),.secondary:hover:not(:disabled){transform:translate(-1px,-2px);box-shadow:5px 6px 0 var(--hard)}.text-button{font-size:13px;padding:8px 0;text-decoration:underline;text-underline-offset:5px}.tag{display:inline-block;border:1px solid #85735e;border-radius:30px;padding:3px 12px;font-size:12px}.row{display:flex;align-items:center;justify-content:space-between;gap:16px}.hint{color:var(--quiet);font-size:12px;margin-top:13px}.error{color:#a64135;background:#ffe0d4;padding:13px;border-radius:10px;font-size:13px}.quiet-details,.technique{margin-top:20px;border-top:1px solid #d4c7b6;padding-top:13px}.quiet-details summary,.technique summary{cursor:pointer;font-weight:600;font-size:14px}.quiet-details p{font-size:14px;margin-top:10px}.technique summary span{float:right;color:var(--quiet);font-weight:400;font-size:12px}.steps{padding-left:24px;margin:16px 0 0;font-size:14px;color:var(--quiet)}.steps li{padding:4px 0 5px 4px}
.home-topline{display:flex;justify-content:space-between;margin-bottom:18px;color:var(--muted);font-size:12px}.hero{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:30px;padding:42px 46px;border:2px solid var(--line);border-radius:23px;box-shadow:7px 7px 0 #000;background:radial-gradient(#84715c35 1px,transparent 1px) 0 0/19px 19px,var(--panel);overflow:hidden}.hero .eyebrow{color:#cbb690}.hero h1{font-size:58px;line-height:1.55;margin-top:18px}.sticker{display:inline-block;background:var(--yellow);color:#281d11;border-radius:9px;padding:0 14px;transform:rotate(-2deg);box-shadow:3px 3px 0 #000}.hero-copy{max-width:410px;font-size:15px;color:#c7b7a2;margin-top:25px}.hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:25px}.hero-note{color:#a99275;font-size:12px;margin-top:20px}.hero-art{position:relative;padding:10px 8px 15px}.hero-photo{background:var(--paper);border:3px solid var(--line);box-shadow:7px 7px 0 #000;border-radius:18px;overflow:hidden;transform:rotate(2deg);position:relative}.hero-photo img{width:100%;aspect-ratio:1/1;object-fit:contain}.hero-art .mini-sticker{position:absolute;right:-6px;top:0;background:var(--pink);border:2px solid var(--line);box-shadow:3px 3px 0 #000;transform:rotate(7deg);border-radius:9px;padding:7px 13px;color:#30201f;font-size:12px;font-weight:800}.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:27px}.benefit{padding:22px 27px;border:2px solid var(--line);border-radius:17px;box-shadow:4px 5px 0 #000;color:var(--ink);text-align:left;background:var(--yellow);transform:rotate(-2deg)}.benefit:nth-child(2){background:var(--pink);transform:rotate(2deg)}.benefit:nth-child(3){background:var(--blue);transform:rotate(-1.5deg)}.benefit h2{font-size:25px;margin:7px 0 2px}.benefit p{font-size:12px}.benefit .eyebrow{font-size:10px;color:#574534}.section-title{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:45px 0 20px}.section-title h2{font-size:26px}.section-title p{font-size:13px;color:var(--muted);margin-top:7px}
.role-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.role-tile{display:block;min-width:0;padding:10px 10px 20px;border:1px solid #705c44;border-radius:16px;background:var(--panel);text-align:left}.role-tile:hover{border-color:var(--line);transform:translateY(-3px)}.role-tile img{aspect-ratio:3/4;object-fit:contain;background:var(--paper);border-radius:10px}.role-tile h3{font-size:18px;margin:15px 6px 0}.role-tile p{font-size:12px;color:var(--muted);margin:5px 6px 0}.gallery-title{font-size:42px;margin:12px 0 15px}.gallery-tools{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:28px 0 20px}.gallery-tools input{border:1px solid #786247;border-radius:10px;background:var(--panel);color:var(--text);padding:9px 14px;width:290px}.gallery-tools p{font-size:13px;color:var(--muted)}.library-filters{display:flex;gap:10px;flex-wrap:wrap;margin:26px 0}.library-filters button{padding:6px 16px;border:1px solid #786247;border-radius:25px}.library-filters [aria-pressed=true]{background:var(--yellow);color:var(--ink);border-color:var(--line)}.library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.library-tile{text-align:left;padding:10px;border:1px solid #766049;border-radius:14px;background:var(--panel)}.library-tile img{width:100%;aspect-ratio:3/2;object-fit:contain;background:var(--paper);border-radius:8px}.library-tile span{display:block;font-size:12px;padding:12px 3px 4px;color:#cbbba7}.library-tile small{display:block;font:9px var(--mono);padding:0 3px 4px;color:var(--muted)}
.upload-layout{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:stretch}.upload-copy{border:2px solid var(--line);border-radius:20px;background:var(--paper);color:var(--ink);overflow:hidden}.upload-copy img{aspect-ratio:1.12;object-fit:contain;background:#faf6ed}.upload-copy>div{padding:0 28px 28px}.upload-copy h1{font-size:32px}.upload-copy p{font-size:14px;color:var(--quiet);margin-top:13px}#generation{padding:30px;border:2px solid var(--line);border-radius:20px;background:var(--panel);box-shadow:5px 5px 0 #000}.upload{display:block;position:relative;border:1.5px dashed #a58b6b;border-radius:14px;overflow:hidden;cursor:pointer;background:#201a15}.upload input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;z-index:2}.upload:focus-within{outline:3px solid var(--blue);outline-offset:4px}.empty-upload{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:320px;text-align:center;padding:20px}.empty-upload .plus{font-size:54px;color:var(--yellow);line-height:1.3}.empty-upload h3{font-size:23px;margin:15px 0 8px}.upload img{height:320px;object-fit:contain}.upload-actions{display:grid;gap:16px;margin-top:22px}#generation .hint{color:var(--muted)}.privacy-note{font-size:12px;color:#cbb79a;background:#dfac3711;border:1px solid #7e603b;border-radius:10px;padding:15px;margin-top:22px}.upload-caption{font-size:12px;color:var(--muted);margin-top:10px}.page-intro{margin-bottom:26px}.page-intro .eyebrow{color:var(--yellow)}.page-intro h1{margin:12px 0;font-size:40px}
.sample-toolbar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;border:1px solid #826340;background:#322619;border-radius:13px;padding:14px 18px;margin-bottom:25px;font-size:12px;color:#d7bb90}.sample-toolbar strong{color:var(--yellow)}.sample-toolbar select{color:var(--text);background:var(--panel);border:1px solid #96784f;border-radius:8px;font-size:12px;padding:7px 10px;margin-left:auto}.sample-toolbar small{display:block;font-size:11px}.report-layout{display:grid;grid-template-columns:185px minmax(0,1fr);gap:27px;align-items:start}.report-nav{position:sticky;top:var(--site-header-height,130px);border:1px solid #6d5840;border-radius:14px;padding:19px 16px;background:var(--panel)}.report-nav .eyebrow{color:var(--muted);margin-bottom:13px;font-size:10px}.report-nav button{display:flex;align-items:center;gap:11px;width:100%;font-size:12px;color:#cfbfa7;padding:8px 0;text-align:left}.report-nav button:hover{color:var(--yellow)}.report-nav button span{font:10px var(--mono);color:#938066}.report-nav .primary{margin-top:16px;padding:9px;font-size:12px;color:var(--ink)}.report-content{min-width:0}.report-content>.row{display:none}.report-index{display:none}.report-content .section,.report-opening{padding:32px 36px;background:var(--paper);color:var(--ink);border:2px solid var(--line);border-radius:19px;box-shadow:5px 5px 0 #000;margin-bottom:24px}.report-content .section h2{margin:9px 0 19px}.report-content .small{color:var(--quiet)}.report-opening{padding:0;overflow:hidden}.tagline{font-size:14px;margin:12px 0 15px;color:#d5c2a7}.role-reason{color:var(--quiet);font-size:14px}.highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.highlight .index{display:block;color:#a4885c;font:20px var(--mono);margin-bottom:12px}.highlight h3{font-size:17px;letter-spacing:0;margin-bottom:9px}.highlight p{font-size:13px;color:var(--quiet)}.report-content .highlights-section{background:#eee3c4}.part-label{display:block;font-size:11px;color:var(--quiet);letter-spacing:.04em}.face-study{display:grid;grid-template-columns:1fr 1.1fr;align-items:center;gap:28px;margin-top:25px}.face-conclusion h3{font-size:24px;margin:9px 0 19px}.face-conclusion p{font-size:14px;color:var(--quiet);line-height:1.95}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin-top:24px}.feature-note{padding:20px;border:1px solid #d1c0a6;border-radius:12px;background:#fffaf2}.feature-note h3{font-size:19px;margin:7px 0 11px}.feature-note p{font-size:14px;color:var(--quiet)}.note-index{font:11px var(--mono);color:#998065}.feature-strength{margin-top:15px!important;padding-top:12px;border-top:1px dashed #d5c3a9}.feature-strength span{display:block;font-size:11px;color:#a27245;margin-bottom:5px}
.illustration{margin:20px 0 0;min-width:0}.image-link{display:block;width:100%;padding:0;border:1px solid #d1bea3;border-radius:12px;background:#fbf7f0;overflow:hidden}.image-link img{width:100%;height:auto;object-fit:contain}.illustration figcaption{color:#8f785b;font-size:11px;line-height:1.7;margin-top:9px}.illustration figcaption span{white-space:nowrap;color:#8a5f35}.face-atlas{margin:0}.face-atlas img{max-height:480px}.chips{display:flex;gap:10px;flex-wrap:wrap;margin:23px 0}.chips button{border:1.5px solid #9f896b;border-radius:30px;padding:8px 18px;font-size:13px;color:#6f573a}.chips [aria-pressed=true]{background:var(--yellow);color:var(--ink);border-color:var(--ink);box-shadow:2px 2px 0 var(--ink)}.look-intro{border-left:3px solid #d09c32;padding:3px 0 3px 18px;margin-bottom:23px}.look-intro h3{font-size:23px;margin:6px 0 12px}.look-direction{font-size:15px}.fit-note{font-size:14px;color:var(--quiet);margin-top:12px}.art-note{font-size:12px;color:#94784e;margin-bottom:16px}.makeup-journal{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px}.makeup-card{padding:20px;border:1px solid #c9b697;border-radius:14px;background:#fffbf4;min-width:0}.makeup-card:last-child:nth-child(odd){grid-column:1/-1;display:grid;grid-template-columns:1fr 1.1fr;column-gap:25px}.makeup-card:last-child:nth-child(odd) .makeup-heading{grid-column:1/-1}.makeup-heading{display:flex;align-items:start;gap:13px}.makeup-number{font:17px var(--mono);color:#9b8059;margin-top:4px}.makeup-heading h3{font-size:18px;line-height:1.6;letter-spacing:0;margin-top:5px}.makeup-card .fit-note{font-size:13px}.makeup-card .steps{font-size:13px}.makeup-card .illustration{margin-top:17px}.hair-illustration{max-width:700px;margin:20px auto}.hair-illustration img{max-height:570px}.palette{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:24px}.swatch{height:87px;width:100%;background:var(--pigment);mask-image:var(--brush);mask-size:100% 100%;mask-repeat:no-repeat;-webkit-mask-image:var(--brush);-webkit-mask-size:100% 100%;-webkit-mask-repeat:no-repeat}.color-copy{display:flex;align-items:start;gap:10px;margin-top:15px}.color-index{font:10px var(--mono);color:#9c835d;margin-top:5px}.color-name{font-size:14px;font-weight:650}.color-use{font-size:12px;color:var(--quiet);margin-top:5px}.wardrobe-note{margin-top:30px;padding:22px;border:1px solid #cbb896;border-radius:12px;background:#eae4d5}.wardrobe-note p{font-size:14px;margin-top:10px}.current-note>div{padding:17px 0;border-top:1px solid #d1bea3}.current-label{display:inline-block;background:#e5d59f;border-radius:6px;font-size:12px;padding:3px 10px;margin-bottom:9px}.current-note>div:last-child .current-label{background:#ebc9d3}.current-note p{font-size:14px;color:var(--quiet)}.inspiration article{border-top:1px solid #d1bea3;padding-top:18px;margin-top:18px}.inspiration article h3{font-size:20px}.inspiration article p{font-size:14px;color:var(--quiet);margin-top:12px}.inspiration a{color:#856028;text-decoration:underline;text-underline-offset:4px}.report-content textarea{color:var(--ink);background:#fffbf5;border:1px solid #c8b493;border-radius:10px;padding:16px;margin-top:14px}.report-content .secondary{margin-top:20px}.report-end{text-align:center}.share-preview{width:220px;margin:20px auto 24px;border:2px solid #846a4c;border-radius:10px}.report-end .primary,.report-end .secondary{margin:10px}.report-end .text-button{display:block;margin:auto}.report-end .hint{max-width:520px;margin-inline:auto}.migration-note{font-size:12px;color:var(--muted);margin:20px 0 5px;line-height:1.9}
.account-heading{display:flex;align-items:center;gap:22px;margin:15px 0 35px}.account-seal{display:grid;place-items:center;width:80px;height:80px;font-size:32px;font-weight:800;background:var(--pink);color:var(--ink);border:2px solid var(--line);border-radius:22px;transform:rotate(-4deg);box-shadow:5px 5px 0 #000}.account-heading h2{font-size:32px}.account-heading .eyebrow{color:var(--muted)}.service-menu{display:grid;grid-template-columns:1fr 1fr;gap:20px}.account-row{display:flex;align-items:center;gap:20px;width:100%;text-align:left;border:1.5px solid #978164;border-radius:17px;padding:23px;background:var(--panel);box-shadow:4px 4px 0 #000}.service-icon{width:66px;flex-shrink:0;border-radius:14px;overflow:hidden;background:var(--paper)}.account-row strong{display:block;font-size:20px}.account-row small{display:block;font-size:12px;color:var(--muted);margin-top:7px}.menu-arrow{margin-left:auto;color:var(--yellow);font-size:22px}.account-footnote{font-size:12px;color:var(--muted);margin-top:30px}.account-title{font-size:36px;margin:14px 0}.plan-picker{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:30px 0}.plan-option{padding:27px;border:2px solid #8e7655;border-radius:18px;background:var(--panel);text-align:left}.plan-option[aria-pressed=true]{border-color:var(--line);box-shadow:5px 5px 0 #000;background:var(--yellow);color:var(--ink)}.plan-name{display:block;font-size:22px}.plan-period{display:block;font-size:16px;margin-top:12px}.plan-period b{font-size:44px;font-family:var(--mono)}.plan-price,.plan-choice{display:inline-block;margin:10px 12px 0 0;font-size:13px}.plan-detail{padding:25px;border:1px solid #806b51;border-radius:14px;margin:25px 0}.plan-detail .part-label{color:var(--muted)}.plan-detail h3{margin:10px 0}.plan-detail ul{font-size:14px;color:var(--muted);padding-left:22px}.plan-detail .small{margin-top:15px}.membership-redeem{display:block;margin-top:20px}.entitlement-record{padding:20px 0;border-bottom:1px solid #67513b}.entitlement-record p{font-size:13px;color:var(--muted)}.redemption-form{padding:28px;border:1px solid #816b4e;border-radius:16px;background:var(--panel);margin:30px 0}.redemption-form label{display:block;font-size:13px;color:var(--muted);margin-bottom:10px}.redemption-form input{width:100%;max-width:500px;padding:12px 16px;border:1px solid #b99c74;border-radius:10px;background:var(--bg);color:var(--text);margin:0 15px 15px 0}.redeem-result{padding:25px;border:1px solid #96805f;border-radius:13px}.demo-codes{margin-top:25px}.demo-codes summary{cursor:pointer}.demo-codes p{font-size:13px;color:var(--muted);margin:15px 0}.demo-code-list{display:flex;gap:14px;flex-wrap:wrap}.demo-code-list button{padding:12px;border:1px solid #826a4c;border-radius:10px}.demo-code-list span{display:block;font-size:12px;color:var(--muted)}.help-list details{padding:21px 0;border-bottom:1px solid #6b563f}.help-list summary{cursor:pointer;font-weight:650}.help-list p{font-size:14px;color:var(--muted);margin-top:15px}.feedback-form{margin-top:30px}.feedback-form label{display:block;margin-bottom:15px}.feedback-form textarea{width:100%;padding:18px;border:1px solid #968060;background:var(--panel);color:var(--text);border-radius:13px}.feedback-form .secondary{margin-top:20px}
.saved-record{display:flex;align-items:center;width:100%;gap:25px;background:var(--panel);padding:23px;border:1.5px solid #9b8461;border-radius:16px;box-shadow:4px 4px 0 #000;margin:20px 0;text-align:left}.saved-record img{width:87px;height:auto;border:2px solid var(--line);border-radius:9px}.saved-record h3{font-size:24px}.saved-record p{font-size:13px;color:var(--muted);margin-top:7px}.empty-state{padding:50px 25px;text-align:center;border:1px solid #816b4e;border-radius:18px;background:var(--panel);margin:25px 0}.empty-state p{color:var(--muted);margin:17px 0 24px}.toast,#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,15px);max-width:calc(100% - 30px);width:max-content;padding:13px 20px;border:2px solid var(--ink);border-radius:12px;background:var(--paper);color:var(--ink);box-shadow:4px 4px 0 #000;font-size:13px;opacity:0;pointer-events:none;z-index:200;transition:opacity .15s,transform .15s}#toast.visible{opacity:1;transform:translate(-50%,0)}dialog{color:var(--text);background:var(--panel);border:2px solid var(--line);border-radius:19px;padding:25px;width:min(950px,calc(100% - 32px));max-height:90dvh;box-shadow:7px 7px 0 #000;overflow:auto}dialog::backdrop{background:#080604c9;backdrop-filter:blur(4px)}dialog>header{display:flex;gap:20px;align-items:start;justify-content:space-between;margin-bottom:20px}dialog>header h2{font-size:20px;line-height:1.7}dialog>header button{font-size:30px;padding:0 10px;line-height:1.2}#role-content>img{width:100%;max-height:70dvh;object-fit:contain}.poster-preview{width:min(400px,100%)!important;max-height:65vh;margin:0 auto 20px}.dialog-raw{display:flex;gap:30px;align-items:center}.dialog-raw img{width:43%;border-radius:10px}.dialog-raw h3{font-size:30px;margin-bottom:15px}.dialog-raw p{font-size:14px;color:var(--muted)}.dialog-raw .primary{margin-top:22px}#role-content .primary,#role-content .secondary{margin:14px 10px 0 0}.dialog-code{word-break:break-word}body:has(dialog[open]){overflow:hidden}[hidden]{display:none!important}
@media(max-width:1000px){.wrapper{width:calc(100% - 44px)}.hero{padding:32px;gap:22px}.hero h1{font-size:48px}.report-layout{grid-template-columns:155px minmax(0,1fr);gap:20px}.report-content .section{padding:27px}.report-nav{padding:17px 13px}.makeup-journal{grid-template-columns:1fr}.makeup-card:last-child:nth-child(odd){display:block;grid-column:auto}.makeup-card .illustration img{max-height:400px}.highlights{gap:15px}.face-study{grid-template-columns:1fr}.face-atlas{max-width:450px;margin:0 auto}.role-grid{gap:15px}.main-nav button{padding:8px 13px}.library-grid{grid-template-columns:1fr 1fr}.upload-layout{gap:22px}#generation{padding:24px}}
@media(max-width:760px){body{font-size:14px}.wrapper{width:calc(100% - 32px)}.site-header{padding:22px 0;gap:15px}.wordmark{font-size:22px;gap:10px}.brand-symbol{width:39px;height:39px;font-size:24px;border-radius:12px}.wordmark small{font-size:6px}.main-nav{gap:0}.main-nav button{font-size:12px;padding:7px 9px}.app-header{min-height:48px}.app-header .edition{font-size:8px}.hero{padding:29px;grid-template-columns:1fr 1fr;gap:18px}.hero h1{font-size:37px}.hero-copy{font-size:13px;margin-top:20px}.hero-actions{gap:15px}.hero .primary{padding:11px 15px;font-size:13px}.hero .text-button{font-size:12px}.hero-art .mini-sticker{right:-10px;font-size:10px;padding:5px 8px}.benefits{gap:13px}.benefit{padding:19px 17px}.benefit h2{font-size:22px}.benefit p{font-size:11px}.section-title{margin-top:36px}.section-title h2{font-size:24px}.role-grid{grid-template-columns:1fr 1fr;gap:15px}.role-tile h3{font-size:18px}.gallery-title{font-size:34px}.library-grid{gap:14px}.upload-layout{grid-template-columns:1fr}.upload-copy{display:grid;grid-template-columns:1fr 1fr;align-items:center}.upload-copy>div{padding:20px 20px 20px 0}.upload-copy h1{font-size:25px}.upload-copy p{font-size:12px}.upload-copy img{aspect-ratio:1;object-fit:contain}.report-layout{display:block}.report-nav{position:static;display:flex;overflow-x:auto;gap:20px;white-space:nowrap;padding:11px 15px;margin-bottom:20px;scrollbar-width:thin}.report-nav button{width:auto;flex-shrink:0}.report-nav .eyebrow,.report-nav .primary{display:none}.sample-toolbar{padding:12px 15px;gap:9px}.sample-toolbar select{margin-left:0;width:100%}.sample-toolbar small{font-size:10px}.report-content .section{padding:26px}.report-content h2{font-size:27px}.highlights{grid-template-columns:1fr;gap:20px}.highlight{display:flex;gap:17px}.highlight .index{margin-top:3px;font-size:18px}.highlight p{font-size:14px}.face-study{grid-template-columns:1fr 1fr;gap:20px}.feature-grid{gap:14px}.feature-note{padding:17px}.feature-note p{font-size:13px}.makeup-journal{grid-template-columns:1fr 1fr;gap:14px}.makeup-card{padding:17px}.makeup-card:last-child:nth-child(odd){grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.makeup-heading h3{font-size:17px}.makeup-number{font-size:14px}.palette{gap:14px}.color-copy{gap:6px}.color-name{font-size:13px}.color-use{font-size:11px}.color-index{display:none}.service-menu{gap:16px}.account-row{gap:13px;padding:19px}.service-icon{width:47px}.account-row strong{font-size:17px}.account-row small{font-size:11px}.account-heading h2{font-size:29px}.site-footer{font-size:11px;gap:15px}.site-footer span{max-width:240px}.dialog-raw{gap:20px}.dialog-raw h3{font-size:25px}.dialog-raw p{font-size:13px}}
@media(max-width:520px){.wrapper{width:calc(100% - 30px)}.site-header{flex-wrap:wrap;row-gap:18px}.wordmark{font-size:23px}.wordmark small{font-size:7px}.main-nav button{font-size:11px;padding:7px 8px}.home-topline{font-size:10px}.home-topline .mono{font-size:8px}.hero{display:flex;flex-direction:column;align-items:stretch;padding:28px 24px;gap:18px}.hero h1{font-size:46px}.hero-copy{font-size:14px;max-width:310px}.hero-art{width:85%;margin:8px auto 0}.hero-photo img{aspect-ratio:1;object-fit:contain}.hero .eyebrow{font-size:10px}.hero-note{font-size:11px}.benefits{gap:10px;margin-top:21px}.benefit{padding:15px 10px;border-radius:12px;box-shadow:3px 4px 0 #000}.benefit .eyebrow{font-size:7px;letter-spacing:0}.benefit h2{font-size:21px}.benefit p{font-size:10px}.section-title{gap:14px}.section-title h2{font-size:21px}.section-title p{font-size:11px}.section-title .text-button{font-size:11px;flex-shrink:0}.role-tile{padding:7px 7px 16px;border-radius:12px}.role-tile h3{font-size:16px;margin:12px 5px 0}.role-tile p{font-size:11px;margin-inline:5px}.gallery-title{font-size:31px}.gallery-tools{flex-direction:column;align-items:stretch;gap:10px}.gallery-tools input{width:100%}.library-filters{gap:8px}.library-filters button{font-size:12px;padding:5px 12px}.library-grid{grid-template-columns:1fr 1fr;gap:12px}.library-tile{padding:7px}.library-tile span{font-size:11px}.library-tile small{font-size:7px;overflow-wrap:anywhere}.upload-copy{display:block}.upload-copy img{max-height:280px;aspect-ratio:auto;object-fit:contain}.upload-copy>div{padding:0 23px 24px}.upload-copy h1{font-size:30px}.upload-copy p{font-size:14px}#generation{padding:21px}.empty-upload{min-height:270px}.empty-upload h3{font-size:23px}.upload img{height:270px}.page-intro h1{font-size:33px}.tagline{font-size:12px;line-height:1.9;margin:11px 0}.quiet-details p{font-size:13px}.report-content .section{padding:25px 22px;border-radius:16px}.report-content .section h2{font-size:25px;margin-bottom:18px}.report-content .eyebrow{font-size:10px}.face-study{grid-template-columns:1fr;gap:18px}.face-conclusion h3{font-size:22px}.face-conclusion p{font-size:14px}.feature-grid{grid-template-columns:1fr;gap:13px}.feature-note p{font-size:14px}.makeup-journal{grid-template-columns:1fr;gap:17px}.makeup-card{padding:20px}.makeup-card:last-child:nth-child(odd){display:block;grid-column:auto}.makeup-heading h3{font-size:20px}.makeup-card .fit-note,.makeup-card .steps{font-size:14px}.illustration figcaption{font-size:10px}.look-intro{padding-left:15px}.look-intro h3{font-size:21px}.look-direction{font-size:14px}.chips{gap:8px}.chips button{font-size:12px;padding:7px 13px}.palette{grid-template-columns:1fr 1fr;gap:20px 17px}.swatch{height:75px}.color-name{font-size:15px}.color-use{font-size:12px}.wardrobe-note{padding:19px}.wardrobe-note p{font-size:14px}.report-content textarea{font-size:13px!important;padding:13px}.share-preview{width:210px}.report-end .primary,.report-end .secondary{width:100%;margin:10px 0;font-size:13px}.service-menu{grid-template-columns:1fr}.account-row{padding:22px;gap:20px}.service-icon{width:56px}.account-row strong{font-size:20px}.account-row small{font-size:12px}.account-heading{gap:18px}.account-seal{width:67px;height:67px;font-size:28px}.account-heading h2{font-size:27px}.account-title{font-size:30px}.plan-picker{gap:15px}.plan-option{padding:20px}.plan-name{font-size:20px}.redemption-form{padding:22px}.redemption-form .primary{width:100%}.saved-record{padding:19px;gap:19px}.saved-record img{width:68px}.saved-record h3{font-size:22px}.saved-record p{font-size:12px}.site-footer{flex-direction:column;gap:8px}.site-footer span{max-width:none}.dialog-raw{flex-direction:column;align-items:stretch;gap:24px}.dialog-raw img{width:78%;max-height:58vh;object-fit:contain;margin:auto}.dialog-raw h3{font-size:25px}.dialog-raw p{font-size:14px}dialog{padding:20px}dialog>header h2{font-size:16px}.report-nav{gap:20px;margin-bottom:19px}.report-nav button{font-size:12px}.report-nav button span{font-size:9px}}
@media(max-width:360px){.wrapper{width:calc(100% - 26px)}.wordmark{font-size:20px}.brand-symbol{width:34px;height:34px;font-size:21px}.main-nav button{font-size:10px;padding:7px}.hero{padding:23px 19px}.hero h1{font-size:41px}.hero-actions{gap:13px}.hero .primary{padding:11px 12px}.role-tile h3{font-size:14px}.report-content .section{padding:22px 17px}.makeup-card{padding:16px}.sample-toolbar{padding:12px}.benefit h2{font-size:18px}.benefit p{font-size:9px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media print{body{background:#fff;color:#222}.site-header,.site-footer,.app-header,.report-nav,.sample-toolbar,#toast,dialog{display:none!important}.wrapper{width:100%}.report-layout{display:block}.report-content .section,.report-opening{box-shadow:none;border:1px solid #ddd}.tagline{color:#555}.report-content .section{break-inside:auto}.makeup-card,.feature-note,.illustration{break-inside:avoid}.report-content .secondary,.report-end .primary,.report-end .secondary{display:none}.quiet-details,.technique{display:block}}

/* Share dialog spacing. Report cover styles live in report-layout.css. */
#role-content{padding-bottom:12px}
#role-content .poster-preview{display:block;height:auto;max-height:none;border-radius:18px;margin:0 auto 28px}
.poster-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:14px;padding:0 8px 20px}
.poster-actions .primary,.poster-actions .secondary{margin:0}
#role-content>.hint{margin:0 8px 14px;text-align:center}

@media(max-width:600px){

  .poster-actions{gap:12px;padding-bottom:18px}
 .poster-actions .primary,.poster-actions .secondary{width:100%;text-align:center}
 #role-content .poster-preview{border-radius:14px}
}

/* Give the try-on description, action and availability note distinct spacing. */
.report-content .tryon-section > h2{margin-bottom:24px}
.tryon-section > h2 + p{margin:0 0 24px;line-height:1.8}
.tryon-section > .primary{display:block;margin:0;max-width:100%;white-space:normal;line-height:1.6}
.tryon-section > .small{margin:22px 0 0;line-height:1.7}
@media(max-width:600px){
 .report-content .tryon-section > h2{margin-bottom:20px}
 .tryon-section > h2 + p{margin-bottom:22px}
 .tryon-section > .primary{width:100%;padding:14px 18px}
 .tryon-section > .small{margin-top:20px}
}

/* Frame the portrait as a circular cutout, matching the bold card outlines. */
.upload-copy img{display:block;width:calc(100% - 48px);max-width:300px;height:auto;max-height:none;aspect-ratio:1;object-fit:cover;object-position:center 35%;border:5px solid var(--ink);border-radius:50%;box-shadow:5px 7px 14px rgba(48,37,27,.20);background:var(--paper);margin:24px auto}
@media(min-width:521px) and (max-width:760px){
 .upload-copy img{width:calc(100% - 40px);margin:24px 20px}
}
@media(max-width:520px){
 .upload-copy img{max-width:260px}
}
/* Homepage artwork keeps the supplied landscape composition intact. */
.photo-consent{display:flex;align-items:flex-start;gap:10px;margin:18px 0;font-size:13px;line-height:1.8}.photo-consent input{flex:none;width:18px;height:18px;margin-top:3px;accent-color:var(--yellow)}.photo-consent a,.privacy-page a{color:var(--yellow);text-decoration:underline}.record-entry{margin:20px 0}.record-entry .saved-record{width:100%}.record-entry>.text-button{margin:8px 20px}.privacy-page{max-width:780px;padding:35px 0 70px;line-height:1.9}.privacy-page h1{font-size:32px;margin-top:28px}.privacy-page h2{font-size:23px;margin:30px 0 12px}.privacy-page p{margin:14px 0}
.hero-photo img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain}
@media(max-width:760px){
 .hero{display:flex;flex-direction:column;align-items:stretch}
 .hero-art{width:100%;margin:8px auto 0}
}
