/* FanStudio rose stationery theme. UI only: never changes scene/export colors. */
.design-intake .design-home-link{display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:0 16px;margin-bottom:14px;background:var(--surface);border:1px solid var(--line-2);color:var(--accent)}
.design-intake .design-tasks-link{display:flex;align-items:center;justify-content:space-between;width:100%;box-sizing:border-box;min-height:52px;padding:12px 18px;margin-top:20px;background:var(--surface);border:1px solid var(--line-2);color:var(--accent)}
.favorites-empty .empty-symbol{background:#f3dbea;color:#955775}
:root{--paper:#fff8fb;--surface:#fffefe;--surface-2:#fff1f6;--ink:#482d3d;--ink-2:#664354;--muted:#806471;--line:#efdbe5;--line-2:#ddb8cb;--accent:#9d416a;--accent-soft:#f9e3ed;--info:#754b6a;--info-soft:#f5eaf4;--radius:16px;--radius-lg:24px;--shadow-sm:0 3px 10px #9d416a08;--shadow:0 12px 36px #9d416a12}
body{background:radial-gradient(ellipse at 95% 0,#f5e8fb 0,transparent 44%),var(--paper);color:var(--ink)}
h1,h2,h3{letter-spacing:.01em}::selection{background:#f2c8db;color:#482d3d}
.topbar{background:#fff8fbef;border-color:var(--line)}.logo-mark{background:#f8deea url('/_static/34314c4ec4fa7e1ce86b9126.svg') center/90% no-repeat;font-size:0;border-radius:10px;width:32px;height:32px}.nav a.on{background:var(--accent);color:white}.nav a:hover{background:var(--accent-soft)}
.btn{border-radius:15px;border-color:var(--line-2);background:#fffefe;box-shadow:0 2px 4px #8e426509}.btn:hover{background:#fff0f6;border-color:#b46b8c}.btn.primary,.hero-start.btn{background:var(--accent);border-color:var(--accent);color:white;box-shadow:0 6px 15px #9d416a21}.btn.primary:hover,.hero-start.btn:hover{background:#823451;border-color:#823451}.btn.ghost:hover{background:var(--accent-soft)}.btn.danger{color:var(--danger);background:var(--danger-soft)}
.card,.panel,.chat-card,.suite-card,.hub-card{border-color:var(--line);border-radius:22px;background:var(--surface);box-shadow:var(--shadow-sm)}.chip{border-radius:999px}.chip.on,.chip.active,.chip[aria-pressed=true]{background:var(--accent-soft);border-color:#ad6587;color:#7d3357}
input:not([type]),input[type=text],input[type=email],input[type=password],input[type=search],input[type=url],input[type=number],input[list],textarea,select{border-color:var(--line-2);background:#fffefe;border-radius:16px;box-shadow:0 2px 5px #9d416a05}input:focus,textarea:focus,select:focus{border-color:#ad6587;outline-color:#ad6587}input[type=radio],input[type=checkbox],input[type=range]{accent-color:var(--accent)}:focus-visible{outline:3px solid #ab668a;outline-offset:3px}::placeholder{color:#886574;opacity:1}
.notice{background:var(--info-soft);color:var(--info);border-color:#bc83a7;border-radius:14px}.modebar{background:#fff4e7;border-color:#f1dfd6;color:#775037}
.modal-mask{background:#42213770;backdrop-filter:blur(3px)}.modal{border:1px solid #efd8e4;border-radius:26px;box-shadow:0 20px 80px #63334a35}.modal header,.modal footer{background:#fff8fb}.modal-close{background:#f7e2ed;color:#8e4569}.modal .body{background:#fffefe}.modal header h2::after{content:'';display:inline-block;width:30px;height:24px;background:url('/_static/4b4b468fbfebb6462b9a1fd4.svg') center/contain no-repeat;vertical-align:middle;margin-left:8px}
.tabbar{background:#fffdfdf5;border-top-color:var(--line);box-shadow:0 -4px 20px #9d416a08}.tabbar a{color:#806471}.tabbar a.on,.tabbar a.active{color:var(--accent)}.tabbar .create-circle,.tabbar .create-icon,.tabbar .tab-create-icon{background:var(--accent);box-shadow:0 5px 14px #9d416a30}.tabbar svg{stroke-linecap:round;stroke-linejoin:round}
/* Home: a single stationery collage, preserving the one-action first screen. */
.concert-hero{background:radial-gradient(ellipse at 100% 0,#f0dcf7,transparent 50%),radial-gradient(ellipse at 0 100%,#f7c7db,transparent 60%),#ffedf5;color:var(--ink);border:1px solid #efcddd;box-shadow:0 10px 35px #ba6b8e13;border-radius:30px}
.concert-hero::before{content:'';position:absolute;inset:0;pointer-events:none;opacity:.28;background-image:radial-gradient(#cb96af .8px,transparent .8px);background-size:15px 15px;z-index:-1}.concert-hero .eyebrow{color:#81536c;font-size:10px;letter-spacing:.12em}.concert-hero h1{font-weight:700;letter-spacing:-.025em}.hero-lead{color:#705064}.hero-status,.art-caption{color:#81596e}.hero-start.btn{border-radius:18px}.light{background:linear-gradient(#e5b9e8,transparent);opacity:.4}.light-two{background:linear-gradient(#ffe8b5,transparent)}.stage-orbit{border:1px dashed #c892b4;box-shadow:0 0 0 30px #ffffff25,0 0 0 60px #ffffff17}
.art-poster{background:radial-gradient(ellipse at 80% 5%,#fff7fc,transparent 65%),linear-gradient(145deg,#eed6f4,#f1b8d1);border:5px solid #fffafc;color:#70405d;box-shadow:0 15px 35px #91567128;border-radius:6px;overflow:visible}.art-poster::before{content:'';position:absolute;top:-41px;left:calc(50% - 43px);width:86px;height:66px;background:url('/_static/34314c4ec4fa7e1ce86b9126.svg') center/contain no-repeat}.art-poster small{color:#7a5370}.art-poster>span{color:#714d64}.art-poster strong{text-shadow:1px 2px 0 #fff8fb}.art-ticket{background:#fff9e9;color:#825165;box-shadow:0 12px 25px #a7617e24;border:1px dashed #c8a7a9;border-radius:12px}.art-ticket i{background:repeating-linear-gradient(90deg,#a46483 0 2px,transparent 2px 4px)}.art-badge{background:#fbe0ea;color:#90416c;box-shadow:0 8px 20px #a7617e22;border:3px solid #fff8fb;border-radius:45% 45% 42% 42%;transform:rotate(-14deg)}.concert-art-inner::after{content:'';position:absolute;right:5px;top:10px;width:65px;height:65px;background:url('/_static/4b4b468fbfebb6462b9a1fd4.svg') center/contain no-repeat;pointer-events:none}
/* Creation and conversational workspace. */
.design-intake h1::after,.chat-intro h2::after{content:'';display:inline-block;width:42px;height:34px;margin-left:8px;vertical-align:middle;background:url('/_static/34314c4ec4fa7e1ce86b9126.svg') center/contain no-repeat}.mode-card.btn{background:linear-gradient(135deg,#fce5ef,#fff8fb);border:1px solid #eac8d8;box-shadow:var(--shadow-sm);border-radius:24px}.mode-card.btn:nth-child(2){background:linear-gradient(135deg,#efe7fa,#fff5fa)}.mode-card strong{color:#783c60}.design-photo{background:linear-gradient(135deg,#fff4f9,#f7f0fb);border:2px dashed #cc9ab4;border-radius:24px;color:#93446c}.design-intake #design-brief,.design-intake select,.design-intake input[list]{border-color:var(--line-2);background:var(--surface);border-radius:18px}.material-grid label:has(:checked){background:var(--accent-soft);border-color:#ad6587}.resolution-grid label{background:#fffefe;border-color:var(--line);border-radius:18px}.resolution-grid label:has(:checked){background:#fbe2ee;border-color:#a04b75;color:#793653}.resolution-grid span,.prompt-help{color:#806471}#purpose-grid button[aria-pressed=true]{background:var(--accent);color:white}#design-suggestions{background:#fff4f9;border-color:var(--line);border-radius:18px}
.chat-intro{position:relative}.chat-intro::before{content:'FAN STUDIO · MADE WITH LOVE';display:block;color:#8e5d77;font-size:10px;letter-spacing:.13em;margin-bottom:10px}.chat-compose{background:#fffefe;border-color:#eac4d6;box-shadow:0 10px 32px #a6547710;border-radius:26px}.chat-compose textarea{background:transparent;box-shadow:none}.chat-controls select{background:#fff5f9;border-color:#e4bfd1;border-radius:14px}.chat-selected{background:#fbe4ef;border:1px solid #e7c0d3;border-radius:20px}.chat-quote{border-color:#b36a90;background:#fff7fb}.chat-wrap .muted-text{color:#806471}.chat-head h1{color:#783b60}
/* Personal pages keep their hierarchy, with softer accents. */
.account-entry{background:linear-gradient(125deg,#f8d9e8,#eee3f7);color:#61374e;border-color:#e9c9da;box-shadow:0 8px 24px #9d416a10}.account-entry small,.account-note{color:#775469}.account-action{background:#fff8fc;color:#793653}.creation-entries>a{background:#fffefe;border-color:var(--line)}.entry-icon,.service-icon{color:#955775;background:#f9e4ee}.creation-entries>a:nth-child(2){background:#f5effa}.service-list,.service-list>a{border-color:var(--line)}.favorites-eyebrow,.favorites-heading>p,.favorites-section-heading>a{color:#81566d}.favorites-empty,.empty-state{background:#fff1f7;border-color:#edccdd}.favorites-empty::before{color:#ba789a}.favorites-manage{background:#fff6fa}.tpl-card{border-color:var(--line);border-radius:22px;box-shadow:var(--shadow-sm)}
@media(max-width:720px){.concert-hero{border-radius:26px}.hero-copy .hero-lead{font-size:14px}.tabbar{border-radius:22px 22px 0 0}.modal{border-radius:26px 26px 0 0}.chat-wrap{padding-top:12px}.chat-head .btn{border-radius:999px}.chat-intro{padding-top:22px}.chat-controls .primary{border-radius:999px}.btn{min-height:44px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
.tabbar a.tab-create .ic{background:var(--accent);box-shadow:0 5px 15px #9d416a30}.tabbar a.on{color:var(--accent)}.account-entry .account-note{color:#775469}.account-action{padding:10px 12px;border-radius:999px}.entry-icon{width:38px;border-radius:12px;display:grid;place-items:center}.service-icon{border-radius:9px}.my-page h2{color:#805c70}.favorites-heading h1::after,.my-heading h1::after{content:'';display:inline-block;width:38px;height:30px;background:url('/_static/4b4b468fbfebb6462b9a1fd4.svg') center/contain no-repeat;vertical-align:middle;margin-left:9px}

/* Generation feedback: indeterminate motion never implies provider completion %. */
.generation-progress{min-height:240px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;padding:24px 16px;border-radius:18px;background:radial-gradient(ellipse at top,#f8dbea,transparent 75%),#fff6fb;color:#733553}
.generation-progress p{margin:0;font-size:14px;line-height:1.7}.generation-progress strong{font-size:19px}.generation-progress small{font-size:12px;color:#79596a}.generation-orb{width:38px;height:38px;margin:12px;border-radius:50%;background:linear-gradient(135deg,#eea5c9,#ad467d);box-shadow:0 0 0 9px #eeb9d43d;animation:generation-breathe 2.4s ease-in-out infinite}.generation-elapsed{font-size:22px;font-variant-numeric:tabular-nums;font-weight:600}.generation-estimate{max-width:290px}@keyframes generation-breathe{50%{transform:scale(1.12);box-shadow:0 0 0 17px #eeb9d41c;opacity:.72}}@media(prefers-reduced-motion:reduce){.generation-orb{animation:none}}
.output-specs{margin:16px 0;border:1px solid #edc9da;border-radius:14px;background:#fffafd;overflow:hidden}.output-specs>div{padding:14px}.output-specs>div+div{border-top:1px solid #f1dce6}.output-specs p{margin:6px 0 0;line-height:1.6;font-size:14px}.output-spec-note{color:#805568}.output-specs strong{font-size:15px}
/* Compact reference strip: large touch targets without stacked action buttons. */
.reference-grid{display:grid;grid-auto-flow:column;grid-auto-columns:80px;grid-template-columns:none;justify-content:start;gap:10px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;background:transparent!important;padding:4px 0 8px!important;margin-top:12px;max-width:100%;border:0!important;border-radius:0!important}
.reference-tile{position:relative;width:80px;min-width:0;padding:0;border:0;background:transparent}
.reference-view{display:block;width:80px;height:80px;padding:0;border:1px solid #ebc3d7;border-radius:12px;overflow:hidden;background:#fff}
.reference-tile img{display:block;width:100%!important;height:100%!important;object-fit:contain!important;margin:0!important}
.reference-remove{position:absolute;right:-4px;top:-4px;width:44px;height:44px;padding:0;border:0;background:transparent;color:#79445f;font-size:20px;line-height:1;display:grid;place-items:center;cursor:pointer}
.reference-remove::before{content:'';position:absolute;width:24px;height:24px;border-radius:50%;background:#fff4f9;box-shadow:0 1px 4px #73355325;z-index:0}
.reference-remove{isolation:isolate}.reference-remove::before{z-index:-1}
.reference-remove:focus-visible,.reference-view:focus-visible{outline:2px solid #a43d6d;outline-offset:-2px}

.reference-number{position:absolute;bottom:4px;left:4px;padding:2px 6px;border-radius:6px;background:#fff5faf2;color:#703651;font-size:11px;font-weight:600;line-height:18px;pointer-events:none}

.creation-intro{margin:12px 0 24px;line-height:1.8;color:var(--muted);font-size:15px}.creation-welcome{margin-top:24px;padding:20px;border:1px solid var(--line);border-radius:20px;background:#fff9fc;display:flex;flex-direction:column;gap:14px}.creation-welcome strong{font-size:17px;color:#813c60}.creation-welcome p{margin:8px 0 0;font-size:13px;line-height:1.8;color:var(--muted)}.creation-welcome .btn{align-self:flex-start;min-height:48px}.my-heading{margin-bottom:24px}.my-page>.account-entry{margin-bottom:28px}.creation-welcome[hidden]{display:none!important}

