:root{--paper:#f4f3ee;--surface:#fff;--ink:#171915;--muted:#656962;--line:#d8dad3;--teal:#176f68;--coral:#e65734;--gold:#a7772f;--shadow:0 16px 44px rgba(23,25,21,.08);--body:14px;--small:12px;--title:17px}
*{box-sizing:border-box}html{min-width:320px;background:var(--paper)}body{margin:0;color:var(--ink);background:var(--paper);font:var(--body)/1.45 Inter,"PingFang SC","Microsoft YaHei",system-ui,sans-serif}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--coral);outline-offset:2px}
.workspace-header{height:62px;padding:0 clamp(16px,3vw,42px);display:flex;align-items:center;gap:18px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.96)}.brand{display:flex;align-items:center;gap:9px;color:var(--ink);text-decoration:none}.brand-mark{width:32px;height:32px;display:grid;place-items:center;background:var(--ink);color:#fff;font:800 16px/1 Georgia,serif}.brand strong,.brand small{display:block;letter-spacing:0}.brand strong{font-size:18px}.brand small{color:var(--muted);font-size:11px;font-weight:700}.project-switcher{display:flex;align-items:center;gap:7px;margin-left:clamp(12px,2vw,34px);color:var(--muted);font-size:12px;font-weight:800}.project-switcher select{height:34px;min-width:150px;padding:0 27px 0 9px;border:1px solid var(--line);border-radius:3px;color:var(--ink);background:var(--surface);font-weight:700}.icon-button,.back-link,.balance-pill{border:0;background:transparent;color:inherit}.icon-button{width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--line);border-radius:3px}.icon-button svg{width:16px;height:16px}.header-status{margin-left:auto;display:flex;align-items:center;gap:7px;color:var(--muted);font-size:12px}.status-dot,.activity-dot{width:7px;height:7px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 3px rgba(23,111,104,.12)}.balance-pill{height:38px;padding:0 10px;display:flex;align-items:center;gap:6px;color:var(--muted);font-size:12px}.balance-pill svg{width:16px;color:var(--teal)}.balance-pill strong{color:var(--ink);font-size:14px}.back-link{min-height:36px;padding:0 10px;display:inline-flex;align-items:center;gap:6px;border-left:1px solid var(--line);color:var(--ink);font-size:12px;font-weight:800;text-decoration:none}.back-link svg{width:15px}
.ecommerce-app{height:calc(100dvh - 62px);min-height:620px;display:grid;grid-template-columns:minmax(205px,18%) minmax(500px,46%) minmax(360px,36%);overflow:hidden}.workflow-rail{padding:clamp(22px,3vh,40px) clamp(18px,2.5vw,38px);display:flex;flex-direction:column;border-right:1px solid var(--line);background:#eeeee8}.rail-heading p,.preview-head>div>span{margin:0;color:var(--coral);font-size:10px;font-weight:900;letter-spacing:.15em}.rail-heading h1{margin:0 0 10px;font:700 clamp(22px,2vw,30px)/1.2 Georgia,"Songti SC",serif;letter-spacing:0}.rail-heading h1 span{display:block;white-space:nowrap}.rail-heading h1 span+span{margin-top:3px}.rail-heading>span{display:block;color:var(--muted);font-size:12px;line-height:1.6}.step-list{margin:30px 0 0;padding:0;list-style:none}.step-list li+li{border-top:1px solid rgba(216,218,211,.8)}.step-list button{width:100%;min-height:67px;padding:9px 2px;display:grid;grid-template-columns:27px minmax(0,1fr) 15px;align-items:center;gap:7px;border:0;color:var(--muted);background:transparent;text-align:left}.step-list button b{font:800 12px/1 Georgia,serif}.step-list button span,.step-list button strong,.step-list button small{display:block;min-width:0}.step-list button strong{font-size:14px;color:var(--ink)}.step-list button small{margin-top:2px;font-size:11px}.step-list button svg{width:14px;color:var(--teal);opacity:0}.step-list li.is-current button{background:var(--surface);color:var(--teal);box-shadow:var(--shadow)}.step-list li.is-current button strong{color:var(--teal)}.step-list li.is-complete button svg{opacity:1}.step-list button:not(:disabled):hover{background:rgba(255,255,255,.62)}.rail-trust{margin-top:auto;padding-top:15px;display:flex;gap:8px;border-top:1px solid var(--line);color:var(--teal)}.rail-trust svg{width:17px;flex:0 0 auto}.rail-trust strong,.rail-trust small{display:block}.rail-trust strong{font-size:12px}.rail-trust small{margin-top:2px;color:var(--muted);font-size:10px}
.workspace-panel{min-width:0;padding:clamp(18px,2.6vw,36px) clamp(20px,3vw,46px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#b6bbb2 transparent}.workspace-topline{margin-bottom:18px;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:10px;font-weight:900;letter-spacing:.12em}.workspace-topline #save-state{letter-spacing:0;font-weight:700;color:var(--teal)}.step-panel{min-height:calc(100dvh - 140px);display:flex;flex-direction:column}.step-panel[hidden]{display:none}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:16px;border-bottom:1px solid var(--line)}.section-heading h2{margin:0;font-size:24px;line-height:1.2;letter-spacing:0}.section-heading p{max-width:600px;margin:7px 0 0;color:var(--muted);font-size:13px}.count-badge,.trust-chip,.ready-chip{flex:0 0 auto;min-height:28px;padding:5px 9px;display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:3px;color:var(--muted);background:var(--surface);font-size:11px;font-weight:900}.trust-chip.verified{border-color:rgba(23,111,104,.28);color:var(--teal);background:#edf6f2}.trust-chip.derived{border-color:rgba(167,119,47,.3);color:var(--gold);background:#fbf5e7}.trust-chip.generated{border-color:rgba(230,87,52,.25);color:var(--coral);background:#fff4ef}.ready-chip{border-color:rgba(23,111,104,.3);color:var(--teal);background:#edf6f2}.ready-chip svg,.trust-chip svg{width:13px}
.upload-zone{min-height:132px;margin-top:18px;padding:20px;display:flex;align-items:center;justify-content:center;gap:13px;border:1px dashed #aeb5ab;background:rgba(255,255,255,.55);color:var(--teal);text-align:left;transition:border-color .18s,background .18s,box-shadow .18s}.upload-zone:hover{border-color:var(--teal);background:#eef4f1}.upload-zone.is-uploading{border-color:var(--teal);background:#eef6f2;box-shadow:inset 0 0 0 1px rgba(23,111,104,.12)}.upload-zone>svg{width:30px;height:30px}.upload-zone span,.upload-zone strong,.upload-zone small{display:block}.upload-zone strong{color:var(--ink);font-size:15px}.upload-zone small{margin-top:4px;color:var(--muted);font-size:12px}.upload-zone>b{margin-left:10px;padding:8px 12px;border:1px solid var(--ink);color:#fff;background:var(--ink);font-size:12px}.upload-status{margin-top:10px;padding:11px 13px;border:1px solid rgba(23,111,104,.24);border-radius:4px;background:#f1f8f5;color:var(--ink)}.upload-status[data-state="error"]{border-color:rgba(190,66,45,.35);background:#fff4ef}.upload-status[data-state="success"]{border-color:rgba(23,111,104,.35);background:#edf7f2}.upload-status-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.upload-status-head strong{font-size:12px}.upload-status-head span{color:var(--teal);font-size:11px;font-variant-numeric:tabular-nums}.upload-status[data-state="error"] .upload-status-head span{color:var(--coral)}.upload-progress{height:5px;margin:8px 0 6px;overflow:hidden;border-radius:999px;background:#dbe8e2}.upload-progress i{display:block;width:0;height:100%;border-radius:inherit;background:var(--teal);transition:width .2s ease}.upload-status[data-state="error"] .upload-progress i{background:var(--coral)}.upload-status small{display:block;color:var(--muted);font-size:11px;line-height:1.4}.asset-toolbar{margin-top:11px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:12px}.asset-toolbar label{display:flex;align-items:center;gap:7px;font-weight:800}.asset-toolbar select,.derived-tool select,.task-composer select{height:34px;padding:0 25px 0 8px;border:1px solid var(--line);border-radius:3px;background:var(--surface);color:var(--ink);font-size:12px}.asset-toolbar>span{display:flex;align-items:center;gap:5px}.asset-toolbar svg{width:14px;color:var(--teal)}.asset-grid{min-height:150px;margin-top:13px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.asset-card{position:relative;min-width:0;aspect-ratio:1;border:1px solid var(--line);background:var(--surface);overflow:hidden}.asset-card img{width:100%;height:100%;display:block;object-fit:cover}.asset-card figcaption{position:absolute;inset:auto 0 0;padding:18px 6px 5px;display:flex;align-items:center;justify-content:space-between;gap:3px;color:#fff;background:linear-gradient(transparent,rgba(16,20,17,.78));font-size:10px}.asset-card figcaption span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asset-card .asset-trust{color:#d8f1e8}.empty-inline{min-height:78px;grid-column:1/-1;display:grid;place-items:center;border:1px dashed var(--line);color:var(--muted);font-size:13px}.panel-actions{margin-top:auto;padding-top:19px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line)}.panel-actions>span{max-width:62%;color:var(--muted);font-size:11px}.primary-button,.secondary-button{min-height:40px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--ink);border-radius:3px;font-size:13px;font-weight:900}.primary-button{color:#fff;background:var(--ink)}.secondary-button{color:var(--ink);background:var(--surface)}.primary-button:hover,.secondary-button:hover{transform:translateY(-1px)}.primary-button svg,.secondary-button svg{width:15px}.text-button{min-height:32px;padding:0;border:0;background:transparent;color:var(--muted);font-size:12px;font-weight:800}.text-button:hover{color:var(--ink)}.text-button svg{width:14px;vertical-align:-3px;margin-right:4px}
.analysis-form{padding-top:16px;display:grid;gap:11px}.analysis-form label,.single-field{display:grid;gap:5px;color:var(--muted);font-size:12px;font-weight:800}.analysis-form input,.analysis-form textarea,.single-field textarea,.task-composer textarea,.detail-actions textarea{width:100%;padding:9px 10px;border:1px solid var(--line);border-radius:3px;outline:0;background:var(--surface);color:var(--ink);font-size:14px;line-height:1.45;resize:vertical}.analysis-form input:focus,.analysis-form textarea:focus,.single-field textarea:focus,.task-composer textarea:focus,.detail-actions textarea:focus{border-color:var(--teal);box-shadow:0 0 0 2px rgba(23,111,104,.1)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.analyze-button{justify-self:start}.analysis-output{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.analysis-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.analysis-grid article{padding:10px;background:#eef1ed}.analysis-grid article>span{color:var(--muted);font-size:11px;font-weight:900}.analysis-grid p{margin:4px 0 0;font-size:13px}.fact-columns{margin-top:10px;display:grid;grid-template-columns:1fr 1fr;gap:10px}.fact-columns article{min-width:0}.fact-columns h3{margin:0 0 6px;display:flex;align-items:center;gap:5px;font-size:12px}.fact-columns h3 svg{width:14px;color:var(--teal)}.fact-columns article:nth-child(2) h3 svg{color:var(--gold)}.tag-list{display:flex;flex-wrap:wrap;gap:5px}.tag-list span{padding:5px 7px;border:1px solid rgba(23,111,104,.2);background:#edf6f2;color:var(--teal);font-size:11px}.tag-list.suggestions span{border-color:rgba(167,119,47,.24);background:#fbf5e7;color:var(--gold)}.uncertain-note{margin-top:9px;padding:8px 10px;display:flex;gap:7px;color:#7c622d;background:#fbf5e7;font-size:11px}.uncertain-note svg{width:15px;flex:0 0 auto}.uncertain-note strong{margin-right:5px}.retouch-summary{margin-top:18px;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.retouch-summary article{min-width:0;padding:13px;border:1px solid var(--line);background:var(--surface)}.retouch-summary svg{width:20px;color:var(--teal)}.retouch-summary strong,.retouch-summary small{display:block}.retouch-summary strong{margin-top:8px;font-size:13px}.retouch-summary small{margin-top:4px;color:var(--muted);font-size:11px}.single-field{margin-top:16px}.master-state{margin-top:13px;min-height:64px;padding:12px;display:flex;align-items:center;gap:9px;border:1px solid rgba(23,111,104,.2);background:#eef6f2;color:var(--teal)}.master-state svg{width:22px}.master-state strong,.master-state small{display:block}.master-state strong{font-size:13px}.master-state small{margin-top:3px;color:var(--muted);font-size:11px}
.coverage-theme{margin-top:15px;padding:11px 12px;display:flex;align-items:center;gap:9px;border-left:3px solid var(--teal);background:#edf6f2;color:var(--teal)}.coverage-theme>svg{width:21px;flex:0 0 auto}.coverage-theme strong,.coverage-theme small{display:block}.coverage-theme strong{font-size:13px}.coverage-theme small{margin-top:2px;color:var(--muted);font-size:11px}.coverage-summary{margin-top:12px;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.coverage-item{position:relative;min-height:82px;padding:10px;display:grid;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:8px;border:1px solid var(--line);border-radius:3px;background:var(--surface);color:var(--ink);text-align:left}.coverage-item>svg{width:20px;color:var(--muted)}.coverage-item strong,.coverage-item small,.coverage-item em{display:block}.coverage-item strong{font-size:13px}.coverage-item small{margin-top:3px;color:var(--muted);font-size:10px}.coverage-item em{position:absolute;top:7px;right:7px;color:var(--muted);font-size:9px;font-style:normal}.coverage-item:hover,.coverage-item.is-selected{border-color:var(--teal);box-shadow:0 0 0 1px rgba(23,111,104,.1)}.coverage-item.is-selected{background:#edf6f2}.coverage-item.is-selected>svg,.coverage-item.has-generated strong{color:var(--teal)}.coverage-item.has-generated em{color:var(--teal)}.coverage-item.has-reference em{color:var(--gold)}.coverage-item.is-missing{background:#fbf5e7}.coverage-item.is-missing strong{color:var(--gold)}.trust-legend{margin-top:12px;display:flex;align-items:center;gap:7px;flex-wrap:wrap;color:var(--muted);font-size:11px}.trust-legend .trust-chip{padding:3px 6px}.derived-tool{margin-top:13px;padding:12px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;border:1px solid var(--line);background:var(--surface)}.derived-tool strong,.derived-tool small{display:block}.derived-tool strong{font-size:13px}.derived-tool small{margin-top:3px;color:var(--muted);font-size:11px}.derived-tool button{white-space:nowrap}
.task-grid{margin-top:15px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.task-grid button{min-height:70px;padding:10px;display:grid;grid-template-columns:23px minmax(0,1fr);align-items:center;gap:8px;border:1px solid var(--line);border-radius:3px;background:var(--surface);color:var(--ink);text-align:left}.task-grid button:hover,.task-grid button.is-selected{border-color:var(--teal);background:#eef6f2}.task-grid button>svg{width:20px;color:var(--teal)}.task-grid strong,.task-grid small{display:block}.task-grid strong{font-size:13px}.task-grid small{margin-top:3px;color:var(--muted);font-size:10px}.task-grid .suite-task{border-color:rgba(230,87,52,.38);background:#fff8f3}.task-composer{margin-top:12px;padding:11px;display:grid;grid-template-columns:1fr 120px auto;gap:8px;align-items:end;border:1px solid var(--line);background:rgba(255,255,255,.72)}.task-composer>div{grid-column:1/-1}.task-composer strong,.task-composer small{display:block}.task-composer strong{font-size:13px}.task-composer small{margin-top:2px;color:var(--muted);font-size:11px}.task-composer textarea{grid-column:1/-1;min-height:50px}.task-composer label{display:grid;gap:3px;color:var(--muted);font-size:10px;font-weight:800}.task-composer .primary-button{min-height:34px}.suite-planner,.detail-planner{margin-top:13px;padding-top:12px;border-top:1px solid var(--line)}.subsection-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.subsection-heading h3{margin:0;font-size:14px}.subsection-heading p{margin:3px 0 0;color:var(--muted);font-size:11px}.subsection-heading .secondary-button{min-height:34px;font-size:11px;white-space:nowrap}.suite-planner ol{max-height:180px;margin:9px 0 0;padding:0 0 0 24px;display:grid;grid-template-columns:1fr 1fr;gap:5px 15px;overflow:auto}.suite-planner li{padding:5px 6px;background:#eef1ed;color:var(--ink);font-size:11px}.suite-planner li small{display:block;color:var(--muted);font-size:10px}.detail-screen-list{margin-top:9px;display:flex;gap:6px;overflow-x:auto}.screen-item{min-width:92px;padding:8px;border:1px solid var(--line);background:var(--surface);text-align:left}.screen-item.is-active{border-color:var(--teal);background:#eef6f2}.screen-item strong,.screen-item small{display:block}.screen-item strong{font-size:11px}.screen-item small{margin-top:3px;color:var(--muted);font-size:10px}.detail-actions{margin-top:10px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:6px}.detail-actions textarea{grid-column:1/-1;min-height:45px}.detail-actions button{min-height:34px;font-size:11px}
.preview-panel{position:relative;min-width:0;padding:clamp(16px,2.4vw,34px);display:flex;flex-direction:column;background:#e6d6bb;border-left:1px solid var(--line);overflow:hidden}.preview-panel:before{content:"";position:absolute;inset:0;background:linear-gradient(140deg,rgba(255,255,255,.38),transparent 45%),linear-gradient(180deg,transparent 70%,rgba(75,51,18,.1));pointer-events:none}.preview-head,.preview-stage,.result-meta,.qa-panel,.activity-log{position:relative;z-index:1}.preview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.preview-head h2{margin:4px 0 0;font-size:17px}.preview-actions{display:flex;gap:6px}.preview-actions a,.preview-actions button{width:36px;height:36px;display:grid;place-items:center;border:1px solid rgba(23,25,21,.2);border-radius:3px;background:rgba(255,255,255,.85);color:var(--ink)}.preview-actions svg{width:16px}.preview-stage{min-height:0;flex:1;margin:15px 0 12px;display:grid;place-items:center;overflow:hidden}.preview-stage>img{width:min(100%,420px);height:min(100%,calc(100dvh - 250px));object-fit:contain;filter:drop-shadow(0 23px 30px rgba(55,39,14,.18));transition:opacity .2s,filter .2s}.preview-label{position:absolute;left:10px;bottom:9px;padding:5px 7px;background:rgba(23,25,21,.72);color:#fff;font-size:10px;font-weight:800}.source-thumb{position:absolute;left:4px;bottom:12px;width:74px;aspect-ratio:1;border:3px solid rgba(255,255,255,.92);box-shadow:0 10px 20px rgba(55,39,14,.2);background:#fff}.source-thumb img{width:100%;height:100%;display:block;object-fit:cover}.source-thumb span{position:absolute;left:0;right:0;bottom:0;padding:3px;color:#fff;background:rgba(23,25,21,.65);font-size:9px;text-align:center}.preview-stage.is-generating>img{opacity:.2;filter:blur(2px) saturate(.55)}.preview-stage.is-generating .preview-label,.preview-stage.is-generating .source-thumb{opacity:.22}.preview-progress{position:absolute;z-index:5;inset:0;padding:24px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;background:rgba(241,233,217,.88);backdrop-filter:blur(5px)}.preview-progress[hidden]{display:none}.preview-progress-spinner{width:46px;height:46px;margin-bottom:15px;border:3px solid rgba(23,111,104,.18);border-top-color:var(--teal);border-radius:50%;animation:preview-spin .9s linear infinite}.preview-progress strong{font-size:19px}.preview-progress p{max-width:330px;margin:7px 0 16px;color:#4d554f;font-size:13px}.preview-progress-track{width:min(280px,78%);height:5px;overflow:hidden;background:rgba(23,25,21,.12)}.preview-progress-track i{display:block;width:42%;height:100%;background:var(--teal);animation:preview-track 1.55s ease-in-out infinite}.preview-progress small{margin-top:11px;color:#625d55;font-size:11px}.preview-panel.is-generating .preview-head h2{color:var(--teal)}.preview-panel.is-generating .activity-dot{animation:activity-pulse 1.1s ease-in-out infinite}.result-meta{min-height:35px;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;color:#5f584e;font-size:10px}.result-meta span{display:inline-flex;align-items:center;gap:4px}.result-meta svg{width:13px;color:var(--teal)}.qa-panel{margin-top:10px;padding:10px;border:1px solid rgba(23,25,21,.15);background:rgba(255,255,255,.72)}.qa-heading{display:flex;align-items:center;justify-content:space-between}.qa-heading strong,.qa-heading small{display:block}.qa-heading strong{font-size:12px}.qa-heading small{color:var(--muted);font-size:10px}.qa-scores{margin-top:8px;display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.qa-scores span{padding:6px;text-align:center;color:var(--muted);background:#f6f5ef;font-size:10px}.qa-scores b{display:block;margin-top:2px;color:var(--teal);font-size:15px}.qa-panel ul{margin:8px 0;padding-left:17px;color:#775c27;font-size:10px}.psd-button{min-height:30px;padding:0 8px;display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:3px;background:var(--surface);color:var(--muted);font-size:10px;font-weight:800}.psd-button svg{width:14px}.activity-log{min-height:38px;margin-top:auto;padding-top:10px;display:flex;align-items:center;gap:8px;border-top:1px solid rgba(23,25,21,.14)}.activity-log p{margin:0}.activity-log strong,.activity-log small{display:block}.activity-log strong{font-size:11px}.activity-log small{color:#6b645a;font-size:10px}.toast{position:fixed;z-index:20;right:18px;bottom:18px;max-width:min(380px,calc(100vw - 36px));padding:10px 13px;border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);font-size:12px}.toast.is-error{border-color:rgba(230,87,52,.4);color:var(--coral)}.auth-dialog{width:min(390px,calc(100vw - 32px));padding:0;border:0;background:transparent}.auth-dialog::backdrop{background:rgba(23,25,21,.36);backdrop-filter:blur(3px)}.auth-card{padding:25px;display:grid;gap:11px;background:var(--surface);box-shadow:0 25px 80px rgba(23,25,21,.22)}.auth-card>div{margin-bottom:3px}.auth-card>div p{margin:0;color:var(--coral);font-size:10px;font-weight:900;letter-spacing:.14em}.auth-card h2{margin:5px 0 4px;font-size:20px}.auth-card>div>span{color:var(--muted);font-size:12px}.auth-card label{display:grid;gap:5px;color:var(--muted);font-size:12px;font-weight:800}.auth-card input{height:40px;padding:0 10px;border:1px solid var(--line);background:var(--paper);outline:0}.auth-card a{color:var(--teal);font-size:12px;text-align:center}.form-error{min-height:17px;margin:0;color:var(--coral);font-size:12px}@keyframes preview-spin{to{transform:rotate(360deg)}}@keyframes preview-track{0%{transform:translateX(-110%)}50%{transform:translateX(75%)}100%{transform:translateX(245%)}}@keyframes activity-pulse{50%{opacity:.45;box-shadow:0 0 0 7px rgba(23,111,104,.08)}}
@media(max-width:1200px){.ecommerce-app{grid-template-columns:205px minmax(470px,1fr) 330px}.preview-panel{padding:18px}.rail-heading h1{font-size:23px}.task-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.task-composer{grid-template-columns:1fr 106px}.task-composer .primary-button{grid-column:1/-1}.header-status{display:none}}
@media(max-width:900px){.workspace-header{height:58px}.project-switcher{margin-left:auto}.project-switcher>label{display:none}.back-link span{display:none}.back-link{border-left:0;padding:0 3px}.ecommerce-app{height:auto;min-height:0;display:flex;flex-direction:column;overflow:visible}.workflow-rail{order:0;padding:15px 16px 8px;border-right:0;border-bottom:1px solid var(--line)}.rail-heading{display:none}.step-list{margin:0;display:grid;grid-template-columns:repeat(5,1fr);gap:4px}.step-list li+li{border:0}.step-list button{min-height:54px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:4px 2px;text-align:center}.step-list button b{font-size:10px}.step-list button strong{font-size:11px}.step-list button small{display:none}.step-list button svg{display:none}.rail-trust{display:none}.workspace-panel{order:1;min-height:620px;padding:17px 16px;overflow:visible}.step-panel{min-height:0}.panel-actions{margin-top:20px}.panel-actions>span{display:none}.preview-panel{order:2;min-height:430px;padding:18px 16px;border:0}.preview-stage{min-height:300px;margin:7px 0}.preview-stage>img{height:310px}.activity-log{margin-top:8px}.source-thumb{left:2px}.workspace-topline{margin-bottom:10px}}
@media(max-width:560px){.workspace-header{gap:8px;padding:0 12px}.brand small{display:none}.brand strong{font-size:16px}.project-switcher select{min-width:112px;width:112px}.balance-pill span{display:none}.balance-pill{padding:0 3px}.section-heading{gap:8px}.section-heading h2{font-size:21px}.section-heading p{font-size:12px}.asset-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.asset-toolbar{align-items:flex-start;flex-direction:column}.form-grid,.analysis-grid,.fact-columns,.retouch-summary,.coverage-summary{grid-template-columns:1fr}.derived-tool{grid-template-columns:1fr 90px}.derived-tool button{grid-column:1/-1}.task-grid{grid-template-columns:1fr 1fr;gap:6px}.task-grid button{min-height:76px;padding:8px}.task-grid strong{font-size:12px}.task-grid small{font-size:9px}.task-composer{grid-template-columns:1fr}.task-composer label,.task-composer .primary-button{grid-column:1}.suite-planner ol{grid-template-columns:1fr}.detail-actions{grid-template-columns:1fr}.detail-actions button{grid-column:1}.preview-head h2{font-size:15px}.result-meta{gap:7px;font-size:9px}.preview-stage>img{width:88%;height:300px}}
@media(prefers-reduced-motion:reduce){.primary-button:hover,.secondary-button:hover{transform:none}.preview-progress-spinner,.preview-progress-track i,.preview-panel.is-generating .activity-dot{animation-duration:2.5s}}
.task-composer .primary-button{min-width:150px;padding-inline:12px;white-space:nowrap}
@media(max-width:560px){.task-composer .primary-button{width:100%;min-width:0}}
.main-image-planner{margin-top:13px;padding-top:12px;border-top:1px solid var(--line)}.main-image-plan-list{margin-top:9px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-height:230px;overflow:auto;padding-right:2px}.main-image-plan-card{min-width:0;padding:10px;border:1px solid var(--line);border-radius:3px;background:var(--surface);color:var(--ink);text-align:left;transition:border-color .15s,background .15s,box-shadow .15s}.main-image-plan-card:hover,.main-image-plan-card.is-selected{border-color:var(--teal);background:#eef6f2;box-shadow:0 0 0 1px rgba(23,111,104,.08)}.main-image-plan-card strong,.main-image-plan-card small,.main-image-plan-card span{display:block;overflow:hidden;text-overflow:ellipsis}.main-image-plan-card strong{font-size:12px;white-space:nowrap}.main-image-plan-card small{margin-top:4px;color:var(--muted);font-size:11px;line-height:1.35}.main-image-plan-card span{margin-top:6px;color:#53635d;font-size:10px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
@media(max-width:560px){.main-image-plan-list{grid-template-columns:1fr;max-height:260px}}
.preview-stage>img[hidden],.preview-empty[hidden]{display:none}.preview-empty{width:min(360px,88%);min-height:230px;padding:28px;display:flex;align-items:center;justify-content:center;flex-direction:column;border:1px dashed rgba(23,111,104,.45);background:rgba(255,255,255,.42);color:var(--teal);text-align:center}.preview-empty>svg{width:34px;height:34px;margin-bottom:11px}.preview-empty strong,.preview-empty small{display:block}.preview-empty strong{font-size:16px}.preview-empty small{max-width:240px;margin-top:5px;color:#625d55;font-size:11px}.preview-label[hidden],.source-thumb[hidden]{display:none}
@media(max-width:560px){.coverage-summary{grid-template-columns:1fr 1fr}.coverage-item{min-height:76px;padding:8px}.derived-tool{grid-template-columns:1fr}.derived-tool button{grid-column:1}.preview-empty{min-height:210px}}

/* Per-view chat editor. The selected view owns its own messages and references. */
.coverage-chat{margin-top:12px;padding:12px;border:1px solid rgba(23,111,104,.22);background:linear-gradient(135deg,#f7fbf8,#eef6f2)}
.coverage-chat-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.coverage-chat-head>div>span{display:block;color:var(--teal);font-size:10px;font-weight:900;letter-spacing:.08em}
.coverage-chat-head h3{margin:3px 0 0;font-size:15px}
.coverage-chat-head>small{color:var(--muted);font-size:10px;white-space:nowrap}
.coverage-chat-messages{max-height:112px;margin-top:9px;display:grid;gap:6px;overflow:auto;padding-right:3px}
.coverage-chat-empty{min-height:48px;display:flex;align-items:center;gap:8px;padding:9px 10px;border:1px dashed rgba(23,111,104,.25);color:var(--muted);font-size:11px;background:rgba(255,255,255,.6)}
.coverage-chat-empty svg{width:17px;flex:0 0 auto;color:var(--teal)}
.coverage-chat-message{max-width:88%;padding:7px 9px;border-radius:4px;background:#fff;font-size:11px;box-shadow:0 2px 8px rgba(23,25,21,.04)}
.coverage-chat-message.is-user{justify-self:end;background:#176f68;color:#fff}
.coverage-chat-message>span{display:block;font-size:9px;font-weight:900;opacity:.72}
.coverage-chat-message p{margin:2px 0 0;white-space:pre-wrap;word-break:break-word}
.coverage-chat-message-files{display:flex;align-items:center;gap:4px;margin-top:4px;font-size:10px;opacity:.78}
.coverage-chat-message-files svg{width:12px}
.coverage-chat-attachments{display:flex;gap:6px;margin-top:8px;overflow:auto}
.coverage-chat-attachment{position:relative;min-width:148px;display:flex;align-items:center;gap:6px;padding:5px;border:1px solid rgba(23,111,104,.16);background:#fff}
.coverage-chat-attachment img{width:34px;height:34px;flex:0 0 auto;object-fit:cover;border-radius:3px;background:#edf1ee}
.coverage-chat-attachment span{min-width:0}.coverage-chat-attachment strong,.coverage-chat-attachment small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.coverage-chat-attachment strong{max-width:92px;font-size:10px}.coverage-chat-attachment small{margin-top:2px;color:var(--muted);font-size:9px}.coverage-chat-attachment>b{margin-left:auto;color:var(--teal);font-size:10px}.coverage-chat-attachment.is-error{border-color:rgba(230,87,52,.35)}.coverage-chat-attachment.is-error small{color:var(--coral)}
.coverage-chat-progress{margin-top:8px;padding:7px 9px;display:grid;grid-template-columns:19px minmax(0,1fr) auto;align-items:center;gap:7px;border:1px solid rgba(23,111,104,.2);background:#fff;color:var(--ink)}
.coverage-chat-progress[hidden]{display:none}.coverage-chat-progress-icon{display:grid;place-items:center;color:var(--teal)}.coverage-chat-progress-icon svg{width:16px;animation:preview-spin .9s linear infinite}.coverage-chat-progress strong,.coverage-chat-progress small{display:block}.coverage-chat-progress strong{font-size:10px}.coverage-chat-progress small{margin-top:1px;color:var(--muted);font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.coverage-chat-progress>b{color:var(--teal);font-size:10px}.coverage-chat-progress-track{grid-column:1/-1;height:4px;overflow:hidden;border-radius:99px;background:#dbe8e2}.coverage-chat-progress-track i{display:block;width:0;height:100%;border-radius:inherit;background:var(--teal);transition:width .2s ease}
.coverage-chat-form{margin-top:8px;display:grid;grid-template-columns:35px minmax(0,1fr) auto;align-items:end;gap:6px}.coverage-chat-form textarea{min-height:42px;max-height:92px;padding:8px 9px;border:1px solid var(--line);border-radius:4px;background:#fff;font-size:12px;resize:vertical}.coverage-chat-attach,.coverage-chat-send{min-height:38px;border:1px solid var(--line);border-radius:4px;background:#fff;color:var(--ink)}.coverage-chat-attach{width:35px;display:grid;place-items:center}.coverage-chat-attach:hover{border-color:var(--teal);color:var(--teal)}.coverage-chat-attach svg{width:16px}.coverage-chat-send{padding:0 10px;display:inline-flex;align-items:center;gap:5px;background:var(--ink);color:#fff;font-size:11px;font-weight:900;white-space:nowrap}.coverage-chat-send svg{width:14px}.coverage-chat-hint{margin:6px 0 0;display:flex;align-items:center;gap:4px;color:var(--muted);font-size:9px}.coverage-chat-hint svg{width:12px;color:var(--teal)}
@media(max-width:560px){.coverage-chat-head{display:block}.coverage-chat-head>small{display:block;margin-top:3px}.coverage-chat-form{grid-template-columns:35px minmax(0,1fr)}.coverage-chat-send{grid-column:1/-1;justify-content:center}.coverage-chat-messages{max-height:150px}}

/* Upload preview and removable user references. */
.upload-zone{position:relative;display:grid;grid-template-columns:176px minmax(0,1fr) auto;align-items:center;gap:22px;min-height:170px;padding:18px 22px;border:1px solid #d5ddd6;border-radius:8px;background:linear-gradient(110deg,#f9fbf8 0%,#f2f7f2 58%,#eef4ef 100%);box-shadow:0 10px 26px rgba(38,66,53,.06);text-align:left}
.upload-zone [hidden]{display:none !important}
.upload-zone:before{content:"";position:absolute;inset:9px;border:1px dashed rgba(23,111,104,.24);border-radius:5px;pointer-events:none}
.upload-zone:hover{border-color:var(--teal);background:linear-gradient(110deg,#fbfdfb 0%,#edf7f1 100%);box-shadow:0 12px 30px rgba(38,66,53,.1)}
.upload-zone.has-preview{grid-template-columns:176px minmax(0,1fr) auto}
.upload-zone>.upload-empty-icon-wrap{position:relative;z-index:1;width:64px;height:64px;display:grid;place-items:center;justify-self:center;border:1px solid rgba(23,111,104,.2);border-radius:18px;background:#fff;color:var(--teal);box-shadow:0 8px 20px rgba(23,111,104,.08)}
.upload-zone>.upload-empty-icon-wrap svg{width:30px;height:30px}
.upload-zone.has-preview>.upload-empty-icon-wrap{display:none}
.upload-zone>.upload-copy{position:relative;z-index:1;display:grid;gap:5px;min-width:0}
.upload-copy em{color:var(--teal);font-size:10px;font-style:normal;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.upload-copy strong{font-size:17px;letter-spacing:-.02em}
.upload-copy small{margin:0;color:var(--muted);font-size:12px}
.upload-copy>span{color:#78827b;font-size:11px}
.upload-zone>.upload-select-label{position:relative;z-index:1;margin-left:auto;display:inline-flex;align-items:center;gap:6px;padding:11px 14px;border:1px solid var(--ink);border-radius:4px;color:#fff;background:var(--ink);font-size:12px;white-space:nowrap;transition:transform .15s,background .15s}
.upload-zone>.upload-select-label svg{width:14px}
.upload-zone:hover>.upload-select-label{transform:translateY(-1px);background:#236d65}
.upload-preview{position:relative;z-index:1;width:176px;height:134px;overflow:hidden;border:1px solid rgba(23,111,104,.3);border-radius:6px;background:#e8efeb;box-shadow:0 8px 18px rgba(38,66,53,.12)}
.upload-preview>img{position:relative;z-index:1;width:100%;height:100%;display:block;object-fit:cover;font-size:0;color:transparent}
.upload-preview-placeholder{position:absolute;inset:0;z-index:0;display:grid;place-items:center;align-content:center;gap:5px;color:#709087;background:linear-gradient(135deg,#e6f0eb,#f7faf8)}
.upload-preview-placeholder svg{width:28px;height:28px}
.upload-preview-placeholder small{font-size:10px}
.upload-preview-overlay{position:absolute;z-index:2;inset:auto 0 0;min-height:38px;padding:7px 9px;display:flex;align-items:center;gap:6px;background:linear-gradient(transparent,rgba(15,28,24,.86));color:#fff;font-size:11px}
.upload-preview-overlay b{margin:0;padding:0;border:0;background:none;color:#fff;font-size:12px}
.upload-preview-overlay small{margin-left:auto;font-size:10px;opacity:.84}
.upload-preview-spinner{width:12px;height:12px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:preview-spin .8s linear infinite}
.upload-preview.is-complete .upload-preview-overlay{display:none}
.upload-preview-complete{position:absolute;z-index:3;top:8px;right:8px;width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:var(--teal);color:#fff;box-shadow:0 3px 8px rgba(23,111,104,.35)}
.upload-preview-complete svg{width:15px}
.asset-remove{position:absolute;z-index:2;top:6px;right:6px;width:25px;height:25px;padding:0;display:grid;place-items:center;border:1px solid rgba(255,255,255,.8);border-radius:50%;background:rgba(23,25,21,.78);color:#fff;opacity:0;transform:translateY(-4px);transition:opacity .15s,transform .15s}
.asset-remove svg{width:14px}.asset-card:hover .asset-remove,.asset-remove:focus-visible{opacity:1;transform:none}.asset-remove:hover{background:var(--coral);border-color:var(--coral)}
@media(max-width:720px){.upload-zone{grid-template-columns:116px minmax(0,1fr);gap:14px;padding:15px}.upload-zone.has-preview{grid-template-columns:116px minmax(0,1fr)}.upload-preview{width:116px;height:112px}.upload-zone>.upload-select-label{grid-column:2;justify-self:start;margin-left:0}.upload-zone>.upload-empty-icon-wrap{width:54px;height:54px}.upload-copy strong{font-size:15px}}
@media(max-width:460px){.upload-zone{grid-template-columns:1fr;gap:11px}.upload-zone.has-preview{grid-template-columns:1fr}.upload-preview{width:100%;height:150px}.upload-zone>.upload-empty-icon-wrap{justify-self:start}.upload-zone>.upload-select-label{grid-column:1}.upload-copy strong{font-size:16px}}

/* Ecommerce workspace visual polish: clearer type, stronger hierarchy, restrained depth. */
:root{
  --body:15px;
  --small:13px;
  --title:18px;
  --line:#d3d8d1;
  --muted:#59615a;
  --shadow:0 16px 36px rgba(28,45,36,.09),0 2px 7px rgba(28,45,36,.05);
  --shadow-soft:0 9px 24px rgba(28,45,36,.07),0 1px 3px rgba(28,45,36,.05);
  --shadow-focus:0 12px 30px rgba(23,111,104,.12),0 2px 6px rgba(23,111,104,.08);
}
body{font-size:15px;line-height:1.5}
.workspace-header{
  position:relative;z-index:10;
  border-bottom-color:#cfd5cf;
  background:rgba(255,255,255,.98);
  box-shadow:0 3px 14px rgba(28,45,36,.06);
}
.brand-mark{box-shadow:0 6px 15px rgba(23,25,21,.16)}
.brand strong{font-size:20px;line-height:1.05}
.brand small{margin-top:2px;font-size:12px}
.project-switcher,.header-status,.balance-pill,.back-link{font-size:13px}
.project-switcher select{
  height:38px;font-size:13px;
  border-color:#cbd2cb;background:#fbfcfa;
  box-shadow:inset 0 1px 0 #fff,0 2px 7px rgba(28,45,36,.04);
}
.icon-button,.preview-actions a,.preview-actions button{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 3px 9px rgba(28,45,36,.06);
  transition:transform .16s,box-shadow .16s,border-color .16s,color .16s;
}
.icon-button:hover,.preview-actions a:hover,.preview-actions button:hover{
  transform:translateY(-1px);border-color:rgba(23,111,104,.45);color:var(--teal);
  box-shadow:var(--shadow-focus);
}
.balance-pill strong{font-size:15px}

.workflow-rail{
  background:linear-gradient(155deg,#f2f3ef 0%,#e9ece7 100%);
  box-shadow:inset -1px 0 0 rgba(255,255,255,.75);
}
.rail-heading h1{font-size:clamp(26px,2vw,32px);line-height:1.22}
.rail-heading>span{font-size:14px;line-height:1.65}
.step-list{margin-top:25px}
.step-list button{
  min-height:66px;padding:9px 9px;border:1px solid transparent;border-radius:6px;
  transition:transform .16s,background .16s,border-color .16s,box-shadow .16s;
}
.step-list button b{font-size:13px}
.step-list button strong{font-size:16px;line-height:1.25}
.step-list button small{margin-top:3px;font-size:13px;line-height:1.3}
.step-list li.is-current button{
  border-color:rgba(23,111,104,.17);
  background:linear-gradient(115deg,#fff 0%,#f7fbf8 100%);
  box-shadow:0 15px 32px rgba(28,45,36,.12),inset 3px 0 0 var(--teal);
  transform:translateX(2px);
}
.step-list button:not(:disabled):hover{border-color:rgba(23,111,104,.16);box-shadow:var(--shadow-soft)}
.rail-trust{font-size:13px}
.rail-trust strong{font-size:14px}
.rail-trust small{font-size:12px;line-height:1.45}

.workspace-panel{background:linear-gradient(180deg,#f8f9f6 0%,#f3f5f1 100%)}
.workspace-topline{font-size:12px;letter-spacing:.08em}
.section-heading h2{font-size:26px;line-height:1.25}
.section-heading p{font-size:14px;line-height:1.55}
.count-badge,.trust-chip,.ready-chip{
  min-height:31px;font-size:12px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 3px 9px rgba(28,45,36,.05);
}
.upload-zone{
  border-color:#cad5cc;
  background:linear-gradient(115deg,#fff 0%,#f4f9f5 58%,#eaf3ed 100%);
  box-shadow:0 18px 38px rgba(38,66,53,.09),inset 0 1px 0 rgba(255,255,255,.95);
}
.upload-zone:hover{box-shadow:0 20px 42px rgba(38,66,53,.14),inset 0 1px 0 #fff}
.upload-copy em{font-size:11px;letter-spacing:.08em}
.upload-copy strong{font-size:18px;letter-spacing:0}
.upload-copy small{font-size:13px}
.upload-copy>span{font-size:12px}
.upload-zone>.upload-select-label{font-size:13px;box-shadow:0 7px 16px rgba(23,25,21,.15)}
.upload-status{box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 5px 14px rgba(23,111,104,.06)}
.upload-status-head strong{font-size:13px}
.upload-status-head span,.upload-status small{font-size:12px}
.upload-preview-placeholder small{font-size:11px}
.upload-preview-overlay{font-size:12px}
.upload-preview-overlay b{font-size:13px}
.upload-preview-overlay small{font-size:11px}
.asset-toolbar{font-size:13px}
.asset-toolbar select,.derived-tool select,.task-composer select{height:38px;font-size:13px}
.asset-card{border-radius:5px;box-shadow:0 5px 15px rgba(28,45,36,.07)}
.asset-card figcaption{font-size:11px}
.empty-inline{font-size:14px;background:rgba(255,255,255,.55)}
.panel-actions>span{font-size:12px;line-height:1.45}
.primary-button,.secondary-button{
  min-height:42px;font-size:14px;
  box-shadow:0 6px 14px rgba(23,25,21,.1);
  transition:transform .16s,box-shadow .16s,background .16s,border-color .16s;
}
.primary-button:hover,.secondary-button:hover{box-shadow:0 10px 20px rgba(23,25,21,.14)}
.text-button{font-size:13px}

.analysis-form label,.single-field{font-size:13px}
.analysis-form input,.analysis-form textarea,.single-field textarea,.task-composer textarea,.detail-actions textarea{
  border-color:#cbd2cb;background:#fff;font-size:15px;
  box-shadow:inset 0 1px 2px rgba(28,45,36,.035);
}
.analysis-form input:focus,.analysis-form textarea:focus,.single-field textarea:focus,.task-composer textarea:focus,.detail-actions textarea:focus{
  box-shadow:0 0 0 3px rgba(23,111,104,.11),0 8px 18px rgba(23,111,104,.07);
}
.analysis-grid article,.retouch-summary article,.coverage-item,.derived-tool,.task-grid button,.task-composer,.main-image-plan-card,.screen-item{
  border-color:#d2d8d1;
  background:linear-gradient(145deg,#fff 0%,#f8faf7 100%);
  box-shadow:var(--shadow-soft);
}
.analysis-grid article{border:1px solid #d8ded7;border-radius:5px}
.analysis-grid article>span{font-size:12px}
.analysis-grid p{font-size:14px;line-height:1.48}
.fact-columns h3{font-size:14px}
.tag-list span,.uncertain-note{font-size:12px}
.retouch-summary article{border-radius:6px}
.retouch-summary strong,.master-state strong,.coverage-theme strong,.derived-tool strong{font-size:14px}
.retouch-summary small,.master-state small,.coverage-theme small,.derived-tool small{font-size:12px;line-height:1.4}
.master-state,.coverage-theme{border-radius:5px;box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 5px 14px rgba(23,111,104,.06)}

.coverage-item{border-radius:6px;transition:transform .16s,box-shadow .16s,border-color .16s}
.coverage-item:hover,.coverage-item.is-selected{transform:translateY(-1px);box-shadow:var(--shadow-focus)}
.coverage-item strong{font-size:14px}
.coverage-item small{font-size:12px;line-height:1.35}
.coverage-item em{font-size:11px}
.trust-legend{font-size:12px}
.coverage-chat{
  border-color:#d0d7d0;border-radius:7px;
  background:linear-gradient(150deg,#f7faf7 0%,#edf4ef 100%);
  box-shadow:var(--shadow-soft),inset 0 1px 0 rgba(255,255,255,.9);
}
.coverage-chat-head>div>span{font-size:11px}
.coverage-chat-head h3{font-size:16px}
.coverage-chat-head>small,.coverage-chat-empty,.coverage-chat-message{font-size:12px}
.coverage-chat-message>span,.coverage-chat-attachment small,.coverage-chat-progress small,.coverage-chat-hint{font-size:11px}
.coverage-chat-message-files,.coverage-chat-attachment strong,.coverage-chat-attachment>b,.coverage-chat-progress strong,.coverage-chat-progress>b{font-size:12px}
.coverage-chat-form textarea{font-size:13px}
.coverage-chat-send{font-size:12px;box-shadow:0 5px 12px rgba(23,25,21,.13)}

.task-grid button{border-radius:6px;transition:transform .16s,box-shadow .16s,border-color .16s}
.task-grid button:hover,.task-grid button.is-selected{transform:translateY(-1px);box-shadow:var(--shadow-focus)}
.task-grid strong,.task-composer strong{font-size:14px}
.task-grid small,.task-composer small{font-size:12px;line-height:1.35}
.task-composer label{font-size:12px}
.subsection-heading h3{font-size:15px}
.subsection-heading p,.subsection-heading .secondary-button,.suite-planner li,.main-image-plan-card small,.screen-item strong,.detail-actions button{font-size:12px}
.suite-planner li small,.main-image-plan-card span,.screen-item small{font-size:11px}
.main-image-plan-card strong{font-size:13px}

.preview-panel{
  background:linear-gradient(145deg,#eeeae2 0%,#e5ded2 58%,#dcd5c9 100%);
  box-shadow:inset 14px 0 30px rgba(71,62,46,.035);
}
.preview-panel:before{background:linear-gradient(140deg,rgba(255,255,255,.55),transparent 46%),linear-gradient(180deg,transparent 68%,rgba(75,51,18,.08))}
.preview-head>div>span{font-size:11px;letter-spacing:.1em}
.preview-head h2{font-size:19px}
.preview-stage>img{filter:drop-shadow(0 26px 34px rgba(55,39,14,.22))}
.preview-label{font-size:12px;box-shadow:0 5px 14px rgba(23,25,21,.14)}
.source-thumb span{font-size:11px}
.preview-empty{border-radius:7px;box-shadow:inset 0 1px 0 rgba(255,255,255,.8),var(--shadow-soft)}
.preview-empty strong{font-size:18px}
.preview-empty small{font-size:13px}
.preview-progress strong{font-size:20px}
.preview-progress p{font-size:14px}
.preview-progress small{font-size:12px}
.result-meta{font-size:12px}
.qa-panel{border-radius:6px;box-shadow:var(--shadow-soft),inset 0 1px 0 rgba(255,255,255,.85)}
.qa-heading strong{font-size:14px}
.qa-heading small,.qa-scores span,.qa-panel ul,.psd-button{font-size:12px}
.activity-log strong{font-size:13px}
.activity-log small{font-size:12px}
.toast,.auth-card>div>span,.auth-card label,.auth-card a,.form-error{font-size:13px}
.auth-card>div p{font-size:11px}

@media(max-width:1200px){
  .step-list button strong{font-size:15px}
  .step-list button small{font-size:12px}
}
@media(min-width:901px) and (max-height:760px){
  .workflow-rail{padding-top:22px;padding-bottom:18px}
  .workspace-panel{padding-top:22px;padding-bottom:20px}
  .workspace-topline{margin-bottom:12px}
  .section-heading{padding-bottom:12px}
  .upload-zone{min-height:154px;margin-top:14px}
  .asset-grid{min-height:130px;margin-top:10px}
  .panel-actions{padding-top:14px}
}
@media(max-width:900px){
  .step-list button b{font-size:11px}
  .step-list button strong{font-size:13px}
  .workspace-panel{background:#f7f8f5}
  .preview-panel{background:linear-gradient(145deg,#eeeae2,#e2dbcf)}
}
@media(max-width:560px){
  body{font-size:14px}
  .brand strong{font-size:18px}
  .project-switcher select{font-size:12px}
  .section-heading h2{font-size:22px}
  .section-heading p{font-size:13px}
  .task-grid strong{font-size:13px}
  .task-grid small{font-size:11px}
  .preview-head h2{font-size:17px}
  .result-meta{font-size:11px}
}

/* Step 4: click a view to generate; corrections live below the preview. */
#qa-panel,
#activity-log,
#run-qa{display:none!important}
#coverage-chat[hidden]{display:none!important}
.preview-panel>.coverage-chat{position:relative;z-index:1;flex:0 0 auto;margin-top:8px;padding:11px;background:rgba(247,250,247,.94);box-shadow:0 10px 26px rgba(41,54,45,.1),inset 0 1px 0 rgba(255,255,255,.9)}
.preview-panel.has-coverage-chat .preview-stage{flex:1 1 230px;min-height:190px;margin:10px 0 7px}
.preview-panel.has-coverage-chat .preview-stage>img{height:min(100%,calc(100dvh - 430px))}
.preview-panel.has-coverage-chat .result-meta{min-height:28px}
.preview-panel>.coverage-chat .coverage-chat-messages{max-height:74px;margin-top:7px}
.preview-panel>.coverage-chat .coverage-chat-empty{min-height:40px;padding:7px 9px}
.preview-panel>.coverage-chat .coverage-chat-form{margin-top:7px}
.preview-panel>.coverage-chat .coverage-chat-hint{margin-top:5px}
.coverage-item:disabled{opacity:1}
.coverage-item.is-generating{border-color:var(--teal);background:#edf6f2;box-shadow:var(--shadow-focus)}
.coverage-item.is-generating>svg{color:var(--teal);animation:preview-spin .9s linear infinite}
.coverage-item.is-generating em{color:var(--teal)}

@media(max-width:900px){
  .preview-panel.has-coverage-chat .preview-stage{min-height:280px}
  .preview-panel.has-coverage-chat .preview-stage>img{height:290px}
  .preview-panel>.coverage-chat .coverage-chat-messages{max-height:130px}
}

/* Step 5: sales-task cards generate immediately; corrections stay below the result. */
.task-direct-hint{margin-top:11px;padding:10px 12px;display:flex;align-items:center;gap:9px;border:1px solid rgba(23,111,104,.2);border-radius:6px;background:#edf6f2;color:var(--teal)}
.task-direct-hint>svg{width:20px;flex:0 0 auto}.task-direct-hint strong,.task-direct-hint small{display:block}.task-direct-hint strong{font-size:13px}.task-direct-hint small{margin-top:2px;color:var(--muted);font-size:11px;line-height:1.35}
.task-grid button:disabled{cursor:wait;opacity:.72}.task-grid button.is-generating{border-color:var(--teal);background:#e8f4ef;box-shadow:var(--shadow-focus)}.task-grid button.is-generating svg{animation:preview-spin .9s linear infinite}
#sales-task-chat[hidden]{display:none!important}
.sales-task-aspect-label{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:11px;font-weight:800;white-space:nowrap}.sales-task-aspect-label select{height:30px;padding:0 23px 0 8px;border:1px solid var(--line);border-radius:4px;background:#fff;color:var(--ink);font-size:11px}
.coverage-chat-attachment>button{width:24px;height:24px;margin-left:auto;display:grid;place-items:center;border:0;border-radius:3px;background:transparent;color:var(--muted)}.coverage-chat-attachment>button:hover{background:#fbe9e4;color:var(--coral)}.coverage-chat-attachment>button svg{width:13px}
.preview-panel.has-sales-task-chat .preview-stage{flex:1 1 220px;min-height:180px;margin:9px 0 6px}.preview-panel.has-sales-task-chat .preview-stage>img{height:min(100%,calc(100dvh - 440px))}.preview-panel.has-sales-task-chat .result-meta{min-height:26px}.preview-panel>.sales-task-chat{margin-top:7px;padding:10px}.preview-panel>.sales-task-chat .coverage-chat-messages{max-height:72px;margin-top:6px}.preview-panel>.sales-task-chat .coverage-chat-empty{min-height:38px;padding:7px 9px}.preview-panel>.sales-task-chat .coverage-chat-attachments{margin-top:6px}.preview-panel>.sales-task-chat .coverage-chat-form{margin-top:6px}.preview-panel>.sales-task-chat .coverage-chat-hint{margin-top:4px}
@media(max-width:900px){.preview-panel.has-sales-task-chat .preview-stage{min-height:280px}.preview-panel.has-sales-task-chat .preview-stage>img{height:290px}.preview-panel>.sales-task-chat .coverage-chat-messages{max-height:130px}}
@media(max-width:560px){.sales-task-aspect-label{margin-top:6px}.task-direct-hint{align-items:flex-start}.preview-panel>.sales-task-chat{padding:9px}}

/* Standard retouch is a review gate: generation and confirmation are separate actions. */
.master-state.is-pending{border-color:rgba(182,129,40,.36);background:#fff8e8;color:#8a641f}
.master-state.is-pending small{color:#75684d}
.retouch-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}
.retouch-actions button[hidden]{display:none!important}
@media(max-width:900px){.panel-actions>.retouch-actions{display:flex}}
@media(max-width:560px){.panel-actions:has(.retouch-actions){align-items:stretch;flex-direction:column}.panel-actions>.retouch-actions{width:100%;display:grid;grid-template-columns:1fr}.retouch-actions button{width:100%;justify-content:center}}
