:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#f1f1ef;background:#111315;font-synthesis:none;color-scheme:dark;--accent: #ff8147;--muted: #999da1}*{box-sizing:border-box}body{margin:0;-webkit-tap-highlight-color:transparent}button,input{font:inherit}button,a,label{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}.app-header{min-height:80px;padding:18px max(24px,calc((100vw - 1120px)/2));padding-top:max(18px,env(safe-area-inset-top));border-bottom:1px solid #2c2e31;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{display:flex;align-items:center;gap:12px;font-size:14px;font-weight:850;letter-spacing:.015em;min-height:44px}.brand-mark{font-size:24px;font-style:italic;letter-spacing:-.12em;padding-right:5px}.brand-mark span{color:var(--accent)}.brand-light{color:#a8abae;font-weight:450}.studio-badge{font-size:10px;letter-spacing:.1em;color:#b4b7b9;display:flex;align-items:center;gap:8px}.studio-badge>span{background:var(--accent);width:5px;height:5px;border-radius:50%}main{max-width:1168px;margin:auto;padding:44px 24px calc(150px + env(safe-area-inset-bottom))}.eyebrow{font-size:10px;font-weight:700;letter-spacing:.16em;color:var(--accent);margin:0 0 15px}h1{font-size:clamp(40px,6vw,66px);letter-spacing:-.055em;line-height:1.05;margin:0 0 18px;font-weight:750}h1 em{font-style:normal;color:var(--accent)}.intro>p:last-child{max-width:430px;color:#a9acaf;font-size:15px;line-height:1.65;margin:0}.studio-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:24px;margin-top:32px;align-items:start}.setup{display:grid;gap:20px;min-width:0}.panel{background:#191b1e;border:1px solid #303236;border-radius:16px;padding:24px;min-width:0}.section-heading{display:flex;align-items:center;gap:10px;margin-bottom:20px}.step{display:grid;place-items:center;width:28px;height:28px;flex-shrink:0;border:1px solid #45413b;border-radius:8px;color:var(--accent);background:#2c241f;font-size:11px;font-weight:750}h2{font-size:16px;font-weight:650;margin:0;letter-spacing:-.025em}.section-tag{margin-left:auto;font-size:9px;letter-spacing:.06em;color:#adb0b3;white-space:nowrap}.chassis-options{border:0;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.chassis-card{position:relative;cursor:pointer;min-width:0}.chassis-card input{position:absolute;opacity:0;width:1px;height:1px}.card-content{border:1px solid #3d4044;border-radius:10px;padding:14px 12px;display:flex;flex-direction:column;background:#202226;transition:border-color .15s,background .15s}.card-top{display:flex;justify-content:space-between;align-items:center;gap:3px;font-size:8px;letter-spacing:.07em;color:#b4b6b9;font-weight:700}.radio-dot{width:13px;height:13px;border:1px solid #74777b;border-radius:50%;flex-shrink:0}.card-content strong{font-size:29px;letter-spacing:-.045em;margin:17px 0 10px}.drive{font-size:8px;color:#a6a9ad;letter-spacing:.07em}input:checked+.card-content{border-color:var(--accent);background:#30231d}input:checked+.card-content .radio-dot{border:4px solid var(--accent);background:#30231d}input:checked+.card-content strong{color:#ffa276}input:focus-visible+.card-content{outline:2px solid #fff;outline-offset:4px}.hint{color:var(--muted);font-size:11px;line-height:1.6;margin:16px 0 0}.section-description{color:#adb0b3;font-size:13px;line-height:1.6;margin:-4px 0 20px}.upload-area{position:relative;display:flex;align-items:center;flex-direction:column;text-align:center;gap:9px;padding:26px 16px;border:1px dashed #5d5048;border-radius:10px;background:#211f1e;cursor:pointer}.upload-area input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.upload-area:focus-within{outline:2px solid var(--accent);outline-offset:4px}.upload-area.is-full{opacity:.6}.upload-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#382b23;color:var(--accent);margin-bottom:5px}.upload-icon svg{width:24px;height:24px}.upload-area strong{font-size:14px;font-weight:600}.upload-area>span:not(.upload-icon){font-size:11px;color:#b0aca8}.upload-area .upload-formats{font-size:10px!important;color:#a09a95!important;margin-top:7px;line-height:1.5}.privacy-note{color:var(--muted);display:flex;align-items:center;justify-content:center;gap:7px;font-size:10px;margin:17px 0 0;line-height:1.5}.privacy-note svg{width:13px;height:13px;flex-shrink:0}.photo-status{color:#ffc39e;font-size:12px;line-height:1.5}.photo-status:empty{display:none}.previews{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.photo-tile{margin:0;position:relative;min-width:0;border:1px solid #44474b;border-radius:10px;overflow:hidden;background:#111315}.photo-tile img{width:100%;height:140px;object-fit:contain;display:block}.photo-tile figcaption{font-size:10px;color:#c6c8ca;padding:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.remove-photo{position:absolute;right:3px;top:3px;width:44px;height:44px;border:1px solid #717479;border-radius:50%;background:#111315ed;color:#fff;font-size:25px}.preview-panel{border:1px solid #303236;border-radius:16px;background:#17191c;overflow:hidden}.preview-heading{padding:22px 24px 0;display:flex;justify-content:space-between;align-items:center}.preview-heading .eyebrow{color:#b1b4b8;margin:0;font-size:9px}.concept-tag{font-size:8px;letter-spacing:.08em;color:#b1b4b8;border:1px solid #474a4e;padding:5px 7px;border-radius:4px}.chassis-stage{position:relative;display:grid;place-items:center;margin:10px 20px 0;background-image:radial-gradient(#45484c .65px,transparent .65px);background-size:18px 18px}.skin-art{width:183px;height:350px;transform:rotate(19deg);filter:drop-shadow(10px 15px 12px #0008)}.stage-cross{position:absolute;color:#686c72;font-size:19px;font-weight:200}.cross-top{top:16px;left:5px}.cross-bottom{bottom:40px;right:5px}.stage-label{position:absolute;bottom:8px;font-size:7px;letter-spacing:.14em;color:#a2a6aa}.preview-caption{padding:20px 24px 0;display:flex;justify-content:space-between;gap:10px;align-items:center;border-top:1px solid #303236}.small-label{font-size:8px;color:#a5a8ac;letter-spacing:.12em;display:block;margin-bottom:7px}h3{margin:0;font-size:18px;letter-spacing:-.025em}.swatches{display:flex;gap:5px}.swatches i{width:18px;height:18px;border-radius:50%;background:#ff7438;border:1px solid #ffffff30}.swatches i:nth-child(2){background:#e4e5df}.swatches i:nth-child(3){background:#25292d}.preview-note{font-size:11px;line-height:1.7;color:#a3a7ab;margin:13px 24px 24px}.connection{color:#a8acb0;margin-top:24px;font-size:12px}.connection summary{cursor:pointer;min-height:44px;padding:14px 0}.connection>div{padding:10px 0}.secondary{min-height:44px;background:#25282b;color:#e2e3e4;border:1px solid #4c5054;padding:10px 16px;border-radius:8px}.page-footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;color:#8e9297;font-size:8px;letter-spacing:.12em;padding-top:24px;border-top:1px solid #303236;margin-top:20px}.action-bar{position:fixed;z-index:5;bottom:0;left:0;right:0;background:#1b1d20f5;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid #3b3d40;padding:16px max(24px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left))}.action-inner{max-width:1120px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px}.action-copy strong{font-size:14px;font-weight:600}.action-copy strong span{color:#a0a4a8;font-weight:400}.generate{min-height:48px;width:290px;padding:12px 18px;display:flex;align-items:center;justify-content:center;gap:12px;background:#ff8147;color:#1a1613;border:1px solid #ffad83;border-radius:10px;font-weight:700;font-size:14px}.generate:disabled{cursor:not-allowed;background:#cc7d55;border-color:#df9874}.generate-wrap>p{color:#b3a59b;font-size:9px;text-align:center;margin:7px 0 0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:focus-visible{outline:2px solid var(--accent);outline-offset:4px}@media(hover:hover){.chassis-card:hover .card-content{border-color:#bca08c}.upload-area:hover{border-color:var(--accent)}.secondary:hover{background:#34373b}}@media(max-width:760px){.app-header{min-height:66px;padding-left:20px;padding-right:20px}.brand{font-size:12px}.studio-badge{font-size:8px;letter-spacing:.05em}main{padding:30px 20px calc(165px + env(safe-area-inset-bottom))}.intro>p:last-child{font-size:14px;max-width:330px}h1{font-size:44px}.studio-layout{grid-template-columns:1fr;gap:20px;margin-top:26px}.setup{gap:16px}.panel{padding:20px}.preview-panel{max-width:100%}.skin-art{height:290px;width:152px}.action-inner{gap:12px}.action-copy strong{display:block;font-size:12px}.action-copy strong span{display:block;margin-top:4px}.generate{width:195px;font-size:12px;gap:8px}.action-bar{padding-left:20px;padding-right:20px}.page-footer{font-size:7px}}@media(max-width:380px){main{padding-left:14px;padding-right:14px}.app-header{padding-left:14px;padding-right:14px}.panel{padding:15px}.section-heading{gap:7px}h2{font-size:14px}.section-tag{font-size:8px}.chassis-options{gap:7px}.card-content{padding:12px 8px}.card-top{font-size:7px}.action-bar{padding-left:14px;padding-right:14px}.generate{width:170px;font-size:11px}.action-copy{max-width:106px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}[hidden]{display:none!important}.service-status{color:#d8bcaa;font-size:12px;line-height:1.6;border-left:2px solid var(--accent);padding-left:12px;margin-top:24px}.palette{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px}.palette label{display:flex;align-items:center;flex-direction:column;gap:6px;font-size:9px;color:#bfc1c3}.palette input{width:48px;height:48px;padding:3px;border:1px solid #64676b;background:#25282b;border-radius:10px;cursor:pointer}.notes-label{display:block;font-size:13px;margin:24px 0 10px}.notes-label span{color:var(--muted);font-size:11px;margin-left:6px}textarea{width:100%;resize:vertical;background:#111315;border:1px solid #4c5054;border-radius:8px;color:#f1f1ef;padding:12px;font:inherit;font-size:16px}.generated-image{width:100%;height:100%;object-fit:contain}.result-actions{padding:0 24px 24px}.result-actions a{display:inline-flex;align-items:center;font-size:12px}.job-status{color:#ffd4bb;font-size:14px;line-height:1.6}.job-status:empty{display:none}.generate:enabled{background:var(--accent);border-color:#ffad83}#auth-button{margin-left:auto;font-size:12px}@media(max-width:600px){.app-header:has(#auth-button:not([hidden])) .studio-badge{display:none}}
