:root{--paper:#f6f0e9;--ink:#3c3033;--muted:#8c7771;--line:#e0d1c6;--rose:#8b4058;--soft:#eddfd2;--cream:#fffaf4}*{box-sizing:border-box}html{background:var(--paper);color:var(--ink);font-family:"Segoe UI",Tahoma,sans-serif}body{margin:0}button,a,input{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{font:inherit;color:inherit;background:var(--cream);border:1px solid var(--line);border-radius:9px;padding:10px 14px;min-height:42px;cursor:pointer}button:hover{border-color:#b88791}button:disabled{opacity:.42;cursor:default}button[aria-pressed=true]{border-color:var(--rose);background:#eddae0;color:#71344b}button:focus-visible,a:focus-visible,canvas:focus-visible{outline:3px solid #ba738c;outline-offset:3px}a{color:inherit;text-decoration:none}.primary{background:var(--rose);border:1px solid var(--rose);color:white;display:inline-flex;align-items:center;justify-content:center;border-radius:9px;padding:11px 17px}.primary:hover{background:#713247}[hidden]{display:none!important}
.topbar{height:72px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 max(22px,4vw);border-bottom:1px solid var(--line);background:#fffaf5}.back-link{font-size:22px;display:flex;align-items:center;gap:9px}.back-link span{font-size:12px}.wordmark{display:flex;align-items:center;gap:10px;font:18px Georgia,Tahoma,serif;letter-spacing:1px}.wordmark>span{font-size:30px;color:var(--rose)}.top-actions{display:flex;align-items:center;gap:14px}.top-actions button{font-size:21px;background:none;border:0;padding:4px 7px}.language{font-size:11px}.balance{border-radius:30px;padding:9px 14px;background:#ecdfce;display:flex;align-items:center;gap:8px;color:#755837}.balance small{font-size:10px}
.atelier{max-width:1330px;margin:0 auto;padding:26px clamp(18px,4vw,55px);display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:clamp(25px,4vw,60px)}.portrait-column,.kit-column{min-width:0}.editorial{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 4px 16px}.eyebrow{font-size:9px;color:#936b6a;letter-spacing:2px;font-weight:600}.editorial h1{font:500 clamp(22px,2.1vw,31px)/1.4 Georgia,Tahoma,serif;margin:6px 0 0}.editorial p{font-size:12px;color:var(--muted);max-width:110px;line-height:1.8;margin:0}.portrait{position:relative;isolation:isolate;width:100%;aspect-ratio:1;border-radius:160px 160px 20px 20px;overflow:hidden;background:#c6b6a5;border:1px solid #d0b9a7;box-shadow:0 14px 40px #68372a0d}.portrait canvas{width:100%;height:100%;display:block;touch-action:none;cursor:crosshair}.portrait-tools{position:absolute;top:23%;inset-inline-end:10px;display:flex;flex-direction:column;gap:6px}.portrait-tools button{background:#fff8efe6;backdrop-filter:blur(7px);padding:7px 9px;font-size:17px;min-height:36px;border-color:#dbc8b7}.portrait-tools button span{display:block;font-size:9px}.portrait-tools button[aria-pressed=true]{background:#8b4058e8;color:#fff;border-color:#8b4058}.paint-help{display:flex;align-items:center;justify-content:center;gap:9px;font-size:11px;color:var(--muted);padding:11px 0}.paint-help>span{font-size:21px;color:var(--rose)}.stage-actions{display:flex;gap:9px}.stage-actions>button:not(.icon-button){flex:1;display:flex;justify-content:space-between;align-items:center;font-size:12px}.icon-button{padding:8px 13px;font-size:22px}#preview-badge,#original-badge{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);border-radius:20px;padding:7px 15px;font-size:11px;white-space:nowrap;color:white;background:#813d54ed}.loading{position:absolute;inset:0;z-index:5;background:#f4e9de;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;text-align:center;padding:20px}.loading strong{font-weight:500}.loading small{font-size:11px;color:var(--muted)}.spinner{width:32px;height:32px;border:2px solid #dcc4c1;border-top-color:var(--rose);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.kit-heading{display:flex;align-items:center;justify-content:space-between;margin:0 0 17px}.kit-heading h2{font:500 27px Georgia,Tahoma,serif;margin:7px 0}.kit-heading p{font-size:11px;color:var(--muted);margin:0}.flower{font-size:50px;color:#bc9482;font-weight:200}.tool-tabs{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;padding-bottom:15px;border-bottom:1px solid var(--line)}.tool-tabs button{padding:8px 1px;font-size:9px;background:transparent;border:1px solid transparent;min-width:0;display:flex;flex-direction:column;align-items:center;gap:5px;border-radius:10px;white-space:nowrap}.tool-tabs button[aria-selected=true]{color:var(--rose);background:#ecd9dc;border-color:#d6b1b9}.tool-art{display:block;width:28px;height:29px}.tool-art svg{width:100%;height:100%}.shade-heading{display:flex;align-items:center;justify-content:space-between;margin:15px 0 9px}.shade-heading h3{font-size:14px;font-weight:500;margin:0}.shade-heading small{font-size:9px;letter-spacing:2px;color:#9e8477}#shades{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.shade{padding:12px 6px 9px;position:relative;background:#fff9f1;min-width:0;text-align:center}.shade[aria-pressed=true]{background:#f4e6e6;box-shadow:inset 0 0 0 1px var(--rose)}.swatch{display:block;width:47px;height:47px;margin:0 auto 8px;border-radius:50%;border:3px solid #f7eada;box-shadow:0 3px 7px #6c302e22,inset 0 1px 5px #ffffff55}.shade[data-shimmer=true] .swatch{background-image:radial-gradient(circle at 32% 26%,#fff9 0,transparent 32%),radial-gradient(circle at 63% 68%,#fff8 0,transparent 24%)}.shade-name{display:block;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shade-price{display:block;font-size:9px;color:#977454;margin-top:4px}.shade-check{position:absolute;top:6px;inset-inline-end:6px;border-radius:50%;background:var(--rose);color:white;font-size:9px;width:15px;height:15px;line-height:15px}.selection{display:flex;justify-content:space-between;align-items:center;min-height:61px;padding:10px 0;border-bottom:1px solid var(--line);gap:10px}.selection strong{font-size:11px;font-weight:500}.selection small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.selection button{font-size:11px;min-height:35px;padding:8px 11px}.brush-settings{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:14px 0 9px}.brush-settings label{font-size:11px;display:block}.brush-settings output{float:inline-end;color:var(--muted);font-size:10px}.brush-settings input{width:100%;margin:9px 0 0;accent-color:var(--rose);cursor:pointer;height:22px}.edit-tools{display:flex;gap:5px;margin:0 0 18px}.edit-tools button{flex:1;font-size:14px;padding:6px;min-height:34px;background:transparent;white-space:nowrap}.edit-tools button span{font-size:10px}.edit-tools #clear-tool{font-size:9px}.edit-tools button[aria-pressed=true]{background:#ebd8de}
.daily-card{padding:17px;background:#eee0d2;border:1px solid #dac4b3;border-radius:13px}.daily-top{display:flex;align-items:center;gap:10px}.daily-top>span:first-child{font-size:28px;color:#a8794c}.daily-top small{font-size:9px;letter-spacing:1px;color:#96694f}.daily-top h3{font:500 17px Georgia,Tahoma,serif;margin:4px 0 0}.reward{margin-inline-start:auto;color:#8e6341;font-size:9px}.reward b{font-size:21px}.daily-card>p{font-size:10px;color:var(--muted);margin:10px 0}.daily-bottom{display:flex;justify-content:space-between;align-items:center;gap:9px;margin-top:13px;border-top:1px solid #d7bfae;padding-top:12px}.daily-bottom>span{font-size:10px}.daily-bottom small{display:block;font-size:9px;color:#8a705f;max-width:200px;margin-top:5px}.daily-bottom button{font-size:10px;padding:7px 10px;min-height:35px;background:#f7ebde}.brief-row{display:flex;align-items:center;gap:8px;font-size:10px;margin-top:7px}.brief-row button{min-height:26px;flex:1;background:#f8efe5;border:0;display:flex;align-items:center;gap:7px;padding:5px 8px;font-size:10px;text-align:start}.brief-dot{width:10px;height:10px;border-radius:50%}.brief-row progress{width:65px;height:6px;accent-color:var(--rose)}.brief-row.complete{color:#5c774c}.brief-row.complete progress{accent-color:#6b8b57}footer{max-width:1220px;margin:0 auto;padding:16px 20px;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:10px;color:var(--muted)}footer>span{font:9px Georgia,serif;letter-spacing:2px}
dialog{max-width:430px;width:calc(100% - 30px);padding:27px;border:1px solid #d5bcb4;border-radius:17px;background:#fcf5ed;color:var(--ink);box-shadow:0 18px 80px #39203144}dialog::backdrop{background:#32212d88;backdrop-filter:blur(4px)}dialog h2{font-size:23px;font-weight:500;margin:0 0 15px}dialog p{font-size:13px;line-height:1.9;color:var(--muted)}.dialog-actions{display:flex;gap:9px;margin-top:22px}.dialog-actions>*{flex:1;font-size:12px}#purchase-price{font-size:25px;color:#8e5f40}#photo-preview{display:block;max-width:100%;max-height:60svh;margin:auto;border-radius:12px}#toast{position:fixed;bottom:max(20px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);max-width:min(90vw,530px);width:max-content;z-index:99;background:#51313f;color:#fff6ee;border:1px solid #c18c9e;padding:13px 21px;border-radius:11px;box-shadow:0 8px 30px #30142333;font-size:12px;text-align:center}
@media(min-width:1400px){.portrait{max-width:610px}.atelier{gap:55px}.tool-tabs{gap:7px}.tool-tabs button{font-size:10px}.tool-art{width:32px;height:34px}.swatch{width:52px;height:52px}}
@media(max-width:1000px){.atelier{padding-inline:20px;gap:24px}.editorial{display:block}.editorial p{display:none}.tool-tabs{grid-template-columns:repeat(7,minmax(0,1fr));gap:1px}.tool-tabs button{font-size:8px}.tool-art{width:24px;height:27px}.kit-heading h2{font-size:23px}.flower{font-size:37px}.daily-card{padding:13px}.edit-tools button span{font-size:9px}.portrait{border-radius:110px 110px 15px 15px}}
@media(max-width:760px){.topbar{height:55px;padding:0 13px;gap:9px}.back-link span{display:none}.wordmark{font-size:12px;letter-spacing:.5px;gap:5px}.wordmark>span{font-size:22px}.top-actions{gap:9px}.balance{padding:6px 8px;font-size:11px}.balance small{display:none}.top-actions button{font-size:19px;min-height:36px}.language{font-size:10px}.atelier{height:calc(100svh - var(--game-guest-height,0px) - 85px);min-height:575px;display:flex;flex-direction:column;gap:12px;padding:10px 12px}.portrait-column{flex:0 0 57%;min-height:320px;display:flex;flex-direction:column;align-items:center}.editorial{width:100%;display:flex;margin:0 0 6px;align-items:center}.editorial .eyebrow{font-size:7px;letter-spacing:1px}.editorial h1{font-size:18px;margin:2px 0 0}.portrait{flex:1;min-height:0;width:auto;max-width:100%;height:100%;aspect-ratio:1;border-radius:65px 65px 14px 14px}.portrait-tools{top:22%;inset-inline-end:7px;gap:4px}.portrait-tools button{padding:5px 6px;min-height:29px;font-size:15px}.portrait-tools button span{display:none}.paint-help{font-size:9px;padding:5px 0}.paint-help>span{font-size:15px}.stage-actions{width:100%;gap:7px}.stage-actions button{min-height:35px;padding:7px 10px}.stage-actions>button:not(.icon-button){font-size:10px}.icon-button{font-size:19px}.kit-column{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:0 3px 12px}.kit-heading{margin:0 0 8px}.kit-heading h2{font-size:19px;margin:0}.kit-heading .eyebrow,.kit-heading p,.flower{display:none}.tool-tabs{display:flex;overflow-x:auto;position:sticky;top:0;z-index:4;background:var(--paper);gap:4px;padding:0 0 8px;scrollbar-width:thin}.tool-tabs button{flex:0 0 54px;min-height:48px;padding:5px 2px;font-size:8px;gap:3px}.tool-art{width:23px;height:23px}.shade-heading{margin:9px 0 6px}.shade-heading h3{font-size:12px}.shade{padding:7px 3px 6px}.swatch{width:35px;height:35px;margin-bottom:5px}.shade-name,.shade-price{font-size:9px}.selection{min-height:49px;padding:7px 0}.brush-settings{padding:10px 0 5px;gap:18px}.brush-settings label{font-size:10px}.edit-tools{margin-bottom:12px}.daily-card{padding:12px}.daily-top h3{font-size:15px}.daily-card>p{font-size:10px}footer{height:30px;padding:8px 14px;font-size:9px}footer>span{font-size:7px;letter-spacing:1px}#preview-badge,#original-badge{font-size:9px;padding:5px 9px;bottom:8px}}
@media(max-width:360px){.wordmark{font-size:10px}.atelier{padding-inline:8px}.top-actions{gap:5px}.topbar{padding-inline:8px}.portrait-column{min-height:305px}.editorial h1{font-size:17px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

@media(min-width:761px){.portrait-column{position:sticky;top:calc(var(--game-guest-height,0px) + 16px);align-self:start}.portrait{width:min(100%,max(300px,calc(100svh - 330px)));margin-inline:auto}.shade-heading small{letter-spacing:.4px}}
