/* The photograph and primary actions stay visible; only the tool shelf scrolls. */
:root{font-family:Inter,'Segoe UI',Arial,sans-serif;--accent:#8a422c;--line:#e8e3df;--muted:#766c63;background:#f5f2f3;color:#312922}body{height:100dvh;overflow:hidden}.topbar{height:68px;padding:0 32px;gap:44px}.brand{font-size:34px}.topbar nav{gap:24px}.account-nav{margin-left:auto;display:flex;align-items:center;gap:10px}.account-nav .button{min-height:38px;padding:8px 16px;font-size:13px}.credit-pill{border:1px solid #e9dbcf;background:#faf4ef;color:var(--accent);padding:10px 14px;border-radius:30px;font-size:12px;font-weight:600}.nav-button{font-size:13px}#studio-view{height:calc(100dvh - 68px);max-width:1720px;padding:18px 30px 10px;display:flex;flex-direction:column}.page-heading{flex:none;margin:0 0 16px;display:flex;align-items:center;flex-direction:row;gap:16px}.page-heading h1{font-size:24px;letter-spacing:-.7px}.page-heading h1 span{font-weight:400;color:var(--muted)}.heading-note{font-size:12px;color:var(--muted);margin:5px 0 0}.page-heading .button{min-height:40px;padding:8px 17px;width:auto}.workspace{flex:1;min-height:0;grid-template-columns:minmax(0,1fr) 375px;gap:20px;align-items:stretch}.photo-column{display:flex;min-height:0}.photo-panel{width:100%;height:100%;display:flex;flex-direction:column;border-radius:20px;background:#eeeae6}.photo-toolbar{flex:none;min-height:53px;padding:10px 18px}.photo-toolbar>span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;max-width:55%}.photo-stage{flex:1;min-height:100px;padding:18px 18px 55px;background:radial-gradient(ellipse at 50% 35%,#f8f4f2,#eae5e1)}.portrait-wrap{flex:none;max-width:100%;max-height:100%;border-radius:10px}.portrait-wrap>img{width:100%;height:100%;max-height:none;object-fit:contain}.status-pill{font-size:11px;bottom:12px;padding:6px 12px;max-width:94%;line-height:1.5}.photo-footer{flex:none;padding:6px 16px;min-height:43px;border-top:1px solid var(--line);gap:8px;flex-wrap:nowrap}.photo-footer .text-button{font-size:11px;min-height:30px}.history-actions{gap:16px}.view-switch button{min-height:30px}.compare-control{padding:5px 18px;display:flex;align-items:center;gap:14px;flex:none}.compare-control label{font-size:11px;white-space:nowrap}.compare-control input{height:22px}.settings-panel{min-height:0;padding:0;display:flex;flex-direction:column;border-radius:20px}.category-tabs{flex:none;margin:0;padding:0 12px;gap:0;min-height:57px;background:white}.category-tabs button{padding:16px 5px;font-size:12px;white-space:nowrap}.category-tabs button:last-child{color:var(--accent)}.category-tabs button[aria-selected=true]{background:#faf6f2;border-radius:10px 10px 0 0}.tools-scroll{overflow:auto;overscroll-behavior:contain;flex:1;padding:22px 22px 26px;scrollbar-width:thin;min-height:0}.tools-scroll h2{font-size:19px}.tools-scroll>.section-title{margin-top:0}.muted{font-size:13px;line-height:1.6}.palette{grid-template-columns:repeat(4,1fr);gap:14px 8px}.swatch{font-size:11px;min-height:62px}.swatch-circle{width:43px;height:43px}.field-label{font-size:12px;margin:12px 0 7px}.selected-shade{margin:18px 0 16px;padding-top:16px}.selected-shade strong{font-size:13px}.custom-color-label{font-size:12px;margin-top:16px}.range-heading{font-size:12px}.advanced{border-top:1px solid var(--line);padding-top:14px;margin-top:18px}.advanced summary{font-size:12px;font-weight:600;cursor:pointer;min-height:28px;line-height:1.5}.advanced[open] summary{margin-bottom:12px}.recommendation{border:1px solid #ede2d9;padding:14px;background:#faf5f1}.recommendation .rec-title{display:none}.save-area{flex:none;position:relative;background:#fff;margin:0;padding:12px 15px;display:grid;grid-template-columns:1fr 1fr;gap:8px;border-top:1px solid var(--line)}.save-area .button{min-height:40px;padding:8px 10px;font-size:12px;order:0!important}.save-area .local-note{display:none}.export-options{grid-column:1/-1;order:2!important;margin:0;font-size:11px}.export-options summary{cursor:pointer;color:var(--muted);text-align:center;min-height:20px}.export-options[open]{position:absolute;bottom:100%;background:white;border:1px solid var(--line);box-shadow:0 -4px 24px #36211a12;border-radius:12px 12px 0 0;padding:14px;left:0;right:0;z-index:8}.export-options[open] summary{margin-bottom:10px}.studio-footnote{flex:none;min-height:27px;margin-top:8px;align-items:center;gap:8px}.studio-footnote p,.studio-footnote button,.demo-links>span{font-size:10px}.studio-footnote button{min-height:22px}.demo-links{gap:10px}.mask-tools{flex:none;padding:8px 16px;max-height:190px;overflow:auto}.mask-tools p{display:none}.mask-tools label{margin:5px 0 0;font-size:11px}.brush-actions{margin-top:5px}.brush-actions button{min-height:30px}.restore-ai{background:#fff5e9;color:#895c2c;font-size:12px;min-height:32px}.ai-intro{padding:2px 0 8px}.ai-symbol{display:block;color:var(--accent);font-size:30px;margin-bottom:12px}.ai-intro .eyebrow{font-size:10px;letter-spacing:1.5px}.segmented{display:flex;background:#f2efec;border:1px solid #ece5e0;border-radius:9px;padding:3px;gap:3px}.segmented button{flex:1;padding:10px 8px;border:0;background:transparent;border-radius:6px;font-size:12px;color:var(--muted);min-height:38px}.segmented button[aria-pressed=true]{background:white;color:var(--accent);box-shadow:0 1px 5px #0000000d;font-weight:600}textarea{width:100%;font:inherit;font-size:14px;line-height:1.5;padding:12px;min-height:106px;border:1px solid #dbd0c7;border-radius:10px;resize:vertical;background:#fff;color:#40342a}textarea:focus-visible{outline:3px solid #c98c79;outline-offset:2px}.prompt-chips{margin:10px 0 14px;gap:6px}.prompt-chips button{font-size:11px;min-height:33px;padding:6px 10px;border-color:#e7e0db}.photo-consent{font-size:11px;align-items:flex-start;color:var(--muted);margin:14px 0}.check-label input{flex:none;margin-top:2px}.ai-run{width:100%;margin-top:4px}.ai-run span{opacity:.7}.hint{font-size:11px;margin-top:12px}.ai-progress{display:flex;gap:12px;padding:18px 0;align-items:center}.ai-progress strong{font-size:13px}.ai-progress p{font-size:12px;line-height:1.5;color:var(--muted);margin:6px 0 0}.spinner{width:22px;height:22px;border:2px solid #e9d8ca;border-top-color:var(--accent);border-radius:50%;animation:spin 1s linear infinite;flex:none}@keyframes spin{to{transform:rotate(360deg)}}.ai-answer{white-space:pre-wrap;font-size:13px;line-height:1.75}.quick-looks .consultant-panel{padding:0;border:0}.quick-looks .consultant-heading,.quick-looks .consultant-note{display:none}.quick-looks .consultant-panel label{font-size:12px}.quick-looks .consultant-panel .button{width:100%}.quick-looks .consultant-panel textarea{min-height:75px}.form-error{font-size:12px;line-height:1.6;color:#a33304}.form-error:empty{display:none}#saved-view{height:calc(100dvh - 68px);overflow:auto;padding-top:24px}#saved-view .page-heading{align-items:center}#toast{z-index:100;font-size:13px;bottom:24px;pointer-events:none}.account-dialog{max-width:440px;padding:30px;max-height:90dvh;overflow:auto}.account-dialog h2{font-size:25px;letter-spacing:-.7px;line-height:1.3}.account-dialog .eyebrow{font-size:10px}.account-dialog p{font-size:13px}.account-dialog .muted{margin-bottom:20px}.account-dialog form>label{display:block;font-size:12px;margin-top:16px}.account-dialog input:not([type=checkbox]),.admin-form input:not([type=checkbox]){display:block;width:100%;padding:12px;border:1px solid #e0d7cf;border-radius:8px;font:inherit;font-size:15px;margin-top:7px;color:#35291f;background:#fff}.account-dialog form>.check-label{display:flex;font-size:11px;align-items:flex-start;line-height:1.6;color:var(--muted)}.account-dialog .button{width:100%;margin-top:12px;text-decoration:none}.dialog-x{position:absolute;right:15px;top:12px;border:0;background:none;color:#93867a;font-size:25px;width:36px;height:36px}.account-dialog #recover-button{margin:15px auto 0;display:block;font-size:12px}.legal-links{display:flex;gap:15px;flex-wrap:wrap;margin:10px 0;font-size:11px}.legal-links a,a{color:var(--accent)}.recovery-code{display:block;overflow-wrap:anywhere;padding:14px;background:#f5f0ec;border-radius:8px;line-height:1.7;user-select:all}.wide-dialog{max-width:620px}.balance-card{display:flex;align-items:center;justify-content:space-between;background:#f8f1ec;padding:18px;border-radius:14px;gap:20px}.balance-card>div{display:flex;flex-direction:column;gap:5px}.balance-card strong{font-size:36px;color:var(--accent)}.balance-card .small-label{font-size:10px}.balance-card .button{width:auto;margin:0}.account-actions{display:flex;justify-content:space-between;flex-wrap:wrap;gap:15px;font-size:12px;margin:22px 0}.account-dialog h3{margin-top:22px}.history-row{padding:14px 0;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:8px;font-size:12px}.history-row strong{font-size:13px}.history-row details summary{cursor:pointer;color:var(--accent)}.history-row .small-label{font-size:11px}.pack-card{width:100%;display:grid;grid-template-columns:1fr auto;gap:6px;background:white;border:1px solid #e5d7cc;border-radius:12px;padding:20px;margin-top:12px;text-align:left;color:#403226}button.pack-card:hover{background:#fcf6f2;border-color:var(--accent)}.pack-card strong{font-size:18px}.pack-card>span{color:var(--accent);font-size:20px;font-weight:600}.pack-card small{grid-column:1/-1;color:var(--muted);font-size:12px}.empty-note{padding:22px;background:#f7f3ef;border-radius:12px}
@media(min-width:1600px){.workspace{grid-template-columns:minmax(0,1fr) 400px}.tools-scroll{padding:26px}.photo-stage{padding-top:22px}}
@media(max-width:1000px){.topbar{padding:0 20px;gap:28px}#studio-view{padding:15px 18px 8px}.workspace{grid-template-columns:minmax(0,1fr) 340px;gap:14px}.tools-scroll{padding:18px}.heading-note{font-size:11px}.page-heading h1{font-size:22px}.photo-toolbar{padding:8px 12px}.history-actions{gap:8px}}
@media(max-width:760px){.topbar{height:58px;padding:0 14px;gap:16px}.brand{font-size:28px}.topbar nav{gap:0;margin:0}.nav-button{font-size:12px}#studio-nav{display:none}#saved-nav{font-size:0}#saved-nav:before{content:'♡';font-size:23px}#saved-nav span{font-size:10px;width:18px;height:18px;margin-left:3px}.account-nav{gap:7px}.account-nav .button{padding:7px 11px;min-height:34px;font-size:12px}.credit-pill{padding:8px 10px;font-size:11px}#studio-view{height:calc(100dvh - 58px);padding:0;gap:0}.page-heading{height:49px;padding:7px 13px;margin:0;gap:7px;align-items:center}.page-heading h1{font-size:15px;letter-spacing:-.3px}.page-heading h1 span{display:none}.heading-note{display:none}.page-heading .button{font-size:11px;min-height:33px;padding:5px 10px;flex-shrink:0;margin-left:auto}.page-heading .button>span{font-size:17px}.workspace{display:grid;grid-template-columns:1fr;grid-template-rows:minmax(190px,43%) minmax(0,1fr);gap:0;min-height:0}.photo-column{display:flex;min-height:0}.photo-panel{border:0;border-radius:0;position:relative}.photo-toolbar{min-height:38px;padding:4px 12px;background:#f7f4f5}.photo-toolbar>span{font-size:10px;max-width:48%}.view-switch{padding:2px}.view-switch button{font-size:10px;min-height:27px;padding:4px 8px}.photo-stage{min-height:70px;padding:6px 12px 33px}.portrait-wrap{border-radius:6px}.status-pill{font-size:9px;padding:4px 9px;bottom:5px;max-width:96%}.photo-footer{min-height:31px;padding:0 12px;background:#f7f4f5}.photo-footer .text-button{font-size:10px;min-height:30px}.history-actions{gap:13px}.settings-panel{border:0;border-top:1px solid #e3dad2;border-radius:18px 18px 0 0;box-shadow:0 -3px 15px #36211a06;position:relative;z-index:2;min-height:0;order:initial;padding:0}.category-tabs{min-height:45px;padding:0 12px}.category-tabs button{font-size:12px;min-height:44px;padding:12px 5px}.tools-scroll{padding:17px 18px 24px;min-height:0}.tools-scroll h2{font-size:17px}.tools-scroll .muted{font-size:12px;margin:5px 0 12px}.palette{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px 8px}.makeup-palette{grid-template-columns:repeat(4,minmax(0,1fr))}.swatch{font-size:10px;min-height:54px}.swatch-circle{width:36px;height:36px;margin:3px 0}.save-area{padding:7px 13px max(7px,env(safe-area-inset-bottom));gap:7px;grid-template-columns:1fr 1fr 32px;align-items:center;min-height:53px}.save-area .button{font-size:11px;min-height:35px}.export-options{grid-column:3;order:0!important}.export-options:not([open]) summary{font-size:0;width:32px;list-style:none}.export-options:not([open]) summary:after{content:'⚙';font-size:20px;line-height:32px}.export-options[open]{position:absolute;bottom:100%;left:10px;right:10px;grid-column:1/-1;z-index:4}.export-options[open] summary{font-size:12px}.studio-footnote{display:none}.mask-tools{position:absolute;left:8px;right:8px;bottom:35px;z-index:10;padding:9px;border:1px solid var(--line);border-radius:10px;box-shadow:0 4px 20px #0002;max-height:150px}.mask-tools strong{font-size:11px}.brush-actions{gap:4px}.brush-actions button{font-size:10px;min-height:30px;padding:5px 8px}.mask-tools input[type=range]{height:20px;min-height:20px}.compare-control{padding:0 12px;gap:10px}.compare-control label{font-size:9px}.compare-control input{min-height:21px}.restore-ai{position:absolute;bottom:34px;left:8px;z-index:9;padding:6px 10px;min-height:27px;font-size:10px;border:1px solid #e1d3c5;border-radius:7px}.analysis-progress{bottom:36px;padding:5px 9px}.analysis-progress .text-button{font-size:10px;min-height:25px}.retry{bottom:36px;font-size:10px;min-height:29px;padding:5px 9px}.account-dialog{padding:25px;max-height:90dvh}.account-dialog input:not([type=checkbox]){font-size:16px}.account-dialog h2{font-size:23px}#saved-view{height:calc(100dvh - 58px);padding:15px}#saved-view .page-heading{height:auto;padding:0;margin-bottom:15px}#saved-view h1{font-size:20px}.ai-intro .ai-symbol{display:none}.ai-intro .eyebrow{font-size:9px;margin-bottom:8px}.ai-intro{padding-bottom:4px}#ai-panel .segmented button{font-size:11px}.ai-presets button{min-height:32px}.photo-consent{font-size:11px}.quick-looks .consultant-panel{margin:0;padding:0}.quick-looks .consultant-panel label{font-size:12px}#toast{bottom:75px;font-size:12px}.form-error{font-size:12px}}
@media(max-width:370px){.topbar{padding:0 10px;gap:10px}.credit-pill{font-size:10px;padding:7px}.palette{grid-template-columns:repeat(4,1fr)}.account-nav{gap:5px}.workspace{grid-template-rows:minmax(170px,41%) minmax(0,1fr)}}
@media(max-height:560px) and (min-width:761px){.topbar{height:52px}#studio-view{height:calc(100dvh - 52px);padding-top:8px}.page-heading{margin-bottom:8px}.page-heading h1{font-size:18px}.heading-note,.studio-footnote{display:none}.photo-stage{padding-top:8px;padding-bottom:42px}.tools-scroll{padding-top:14px}}
@media(prefers-reduced-motion:reduce){.spinner{animation:none}}.save-area #save-button{grid-area:1/1}.save-area #download-button{grid-area:1/2}.save-area .export-options{grid-area:2/1/3/3}
@media(max-width:760px){.save-area .export-options{grid-area:1/3}.workspace{grid-template-rows:minmax(190px,46%) minmax(0,1fr)}#hair-panel>.muted,#hair-panel>.field-label{display:none}#hair-panel>#color-filter{margin-top:12px}#hair-palette{margin-top:13px}}#signin-gate{position:fixed;inset:68px 0 0;z-index:12;display:grid;place-items:center;background:#f5f3f0bb;backdrop-filter:blur(9px);padding:24px;overflow:auto}.signin-card{width:100%;max-width:460px;background:#fff;border:1px solid #ece3db;border-radius:24px;box-shadow:0 20px 80px #3a231c16;padding:40px;text-align:center}.signin-card .eyebrow{font-size:10px;letter-spacing:1.6px}.signin-card h2{font-size:36px;line-height:1.16;letter-spacing:-1px;font-weight:650}.signin-card>p{font-size:13px;color:var(--muted);line-height:1.7}.welcome-credit{background:#fbf3ee;border:1px solid #f0e3d9;border-radius:13px;padding:18px;margin:22px 0;color:var(--accent);font-size:16px}.welcome-credit span{display:block;margin-top:8px;color:var(--muted);font-size:11px}.signin-card .button{width:100%;margin-top:9px}.signin-card .gate-note{font-size:10px;margin:16px 0 0}.ledger-row{display:flex;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid var(--line);font-size:12px}.ledger-row>div{display:flex;flex-direction:column;gap:5px}.ledger-row .small-label{font-size:10px}.ledger-amount{text-align:right;color:var(--accent)}.ledger-amount span{font-size:10px;color:var(--muted)}#account-ledger{max-height:260px;overflow:auto}#studio-view[inert],#saved-view[inert]{user-select:none}
@media(max-width:760px){#signin-gate{inset:58px 0 0;padding:20px}.signin-card{padding:28px 22px;border-radius:20px}.signin-card h2{font-size:30px}.signin-card>p{font-size:12px}.welcome-credit{font-size:14px;padding:16px}.signin-card .button{min-height:45px}}.idea-card{padding:20px 0;border-bottom:1px solid var(--line)}.idea-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.idea-heading h3{margin:0;font-size:15px;line-height:1.5;overflow-wrap:anywhere}.idea-status{border-radius:15px;padding:5px 9px;font-size:10px;background:#f3f0ed;color:var(--muted);white-space:nowrap}.status-planned,.status-working{color:#855421;background:#fff3df}.status-done{color:#2f7455;background:#eaf7ef}.idea-body{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px!important;color:#63584e!important}.idea-reply{background:#f8f3ef;border-radius:8px;padding:12px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px!important}.idea-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:13px}.vote-button{background:#fff;border:1px solid #e2d3c8;color:var(--accent);border-radius:8px;padding:9px 12px;font-size:12px}.vote-button[aria-pressed=true]{background:#f8eee5;border-color:#d29e8e}.idea-bonus{font-size:11px;color:#327559}.idea-admin-form{display:grid;gap:12px;margin-top:15px}.idea-admin-form .button{justify-self:start}.idea-admin-form textarea{font-size:13px;min-height:70px}.idea-admin-form .form-error{margin:0}#weekly-summary{font-size:13px;line-height:1.7}#ideas-dialog{max-width:660px}#idea-form textarea{margin-top:8px}#ideas-list{min-height:80px}
@media(max-width:760px){#ideas-button{font-size:0;padding:0 3px}#ideas-button:before{content:'✧';font-size:23px}#ideas-button>span{display:none}.topbar nav{gap:6px}.topbar{gap:10px}.idea-heading{flex-wrap:wrap;gap:8px}.idea-footer .small-label{font-size:10px}.idea-body{font-size:12px!important}}
.analytics-consent{position:fixed;bottom:18px;left:18px;z-index:1200;width:min(480px,calc(100vw - 36px));max-height:80dvh;overflow:auto;padding:22px;border:1px solid #e6d5c6;border-radius:20px;background:#fff;box-shadow:0 12px 48px #371e1726;font-size:14px}.analytics-consent p{line-height:1.5;margin:10px 0}.analytics-actions{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}.analytics-preferences{position:fixed;bottom:8px;left:12px;z-index:1100;border:1px solid #e4d8ce;border-radius:12px;padding:5px 10px;background:#fffffff0;font-size:11px;color:#725a53;cursor:pointer}.analytics-consent[hidden],.analytics-preferences[hidden]{display:none!important}

.hairstyle-picker,.eye-details{padding:16px 0;border-bottom:1px solid #e6e0db;margin-bottom:18px}.hairstyle-picker h3,.eye-details h3{margin:0 0 12px}.hairstyle-options{display:grid;gap:7px;margin:10px 0 12px}.hairstyle-options button{text-align:left;display:grid;gap:4px;padding:11px 13px;border:1px solid #d7cac0;border-radius:12px;background:#fff;color:#382c21;font:inherit;cursor:pointer}.hairstyle-options span{font-size:12px;line-height:1.5;color:#6d5e52}.hairstyle-options [aria-pressed=true],.beauty-choices [aria-pressed=true]{border-color:#865647;background:#f2e9e1;box-shadow:inset 0 0 0 1px #865647}.beauty-choices{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:12px}.beauty-choices button{font:inherit;font-size:12px;min-height:40px;border:1px solid #d7cac0;border-radius:10px;padding:8px 10px;background:#fff;color:#382c21;cursor:pointer}.beauty-choices button:disabled{opacity:.45;cursor:default}.beauty-tip{font-size:13px;line-height:1.6;color:#605043;padding:12px;background:#f6f1ed;border-radius:10px}.eye-details h3:not(:first-child){margin-top:20px}.hairstyle-picker>.button{width:100%}
