/* The generator uses the existing Designeule colors and native controls. */
.generation-flow{--flow-surface:var(--paper);--flow-subtle:#f1f4ee;--flow-ink:var(--ink);--flow-muted:#59645c;--flow-line:#d7ded3;--flow-warning:#795811;--flow-danger:#963c35;color:var(--flow-ink)}
.generation-flow [hidden]{display:none!important}
.generation-flow button,.generation-flow select,.generation-flow input{min-height:44px}
.generation-flow button{display:inline-flex;align-items:center;justify-content:center;gap:8px;line-height:1.4}
.generation-flow svg{width:20px;height:20px;flex:0 0 auto}
.generation-flow p{color:var(--flow-muted)}
.generation-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;list-style:none;padding:0;margin:0 0 28px}
.generation-steps li{display:flex;align-items:center;gap:12px;padding:16px 12px;border-radius:14px;min-width:0}
.generation-steps li>span{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;border:1px solid var(--flow-line);background:var(--flow-surface);font-weight:700;flex-shrink:0}
.generation-steps strong{font-size:14px;display:block;line-height:1.4}.generation-steps small{font-size:12px;display:block;color:var(--flow-muted);margin-top:4px;line-height:1.4}
.generation-steps [aria-current=step]{background:#e6eddf}.generation-steps [aria-current=step]>span{background:var(--green);border-color:var(--green);color:white}.generation-steps .is-complete>span{background:#e6eddf;color:var(--green);border-color:#b6c7a8}
.generation-flow .generation-launcher{background:var(--flow-surface);padding:28px;border-color:var(--flow-line);border-radius:18px}
.generation-section-title{display:flex;align-items:center;gap:14px;margin:0 0 24px}.generation-section-title h2{margin:0;font-size:22px;line-height:1.3}.generation-section-title p{margin:5px 0 0;font-size:14px;line-height:1.5}
.generation-section-icon,.generation-source-icon{display:grid;place-items:center;background:var(--flow-subtle);color:var(--green);border:1px solid var(--flow-line);border-radius:12px;width:44px;height:44px;flex:0 0 auto}
.generation-section-icon svg{width:24px;height:24px}
.generation-project-picker{font-size:14px;max-width:100%;margin-bottom:16px}.generation-project-picker select{padding:15px 12px;font-size:16px;background:var(--flow-surface);border-radius:10px}
.generation-flow .generation-project-summary{display:block;padding:0;margin:0 0 28px;background:transparent;border:0;border-radius:0}
.generation-loaded-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 0 8px;color:var(--flow-muted);font-size:12px}.generation-loaded-caption>span{display:flex;align-items:center;gap:6px}.generation-loaded-caption button{font-size:12px;padding:6px 10px;border:0;background:transparent}
.generation-sources{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.generation-source-card{padding:20px;border:1px solid var(--flow-line);border-radius:14px;min-width:0;display:flex;flex-direction:column;align-items:flex-start;background:var(--flow-surface)}
.generation-source-heading{display:flex;gap:12px;align-items:center}.generation-source-heading h3{font-size:15px;margin:0;line-height:1.4}.generation-source-heading p{font-size:12px;line-height:1.5;margin:4px 0 0}.generation-source-heading .generation-source-icon{width:36px;height:36px;border-radius:10px}
.generation-source-card>button{margin-top:auto;font-size:13px;text-align:left;min-height:44px;justify-content:space-between;width:100%}.generation-business-copy{font-size:14px;line-height:1.65;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin:16px 0 20px}.generation-source-empty{font-size:14px;margin:16px 0 20px}
.generation-media-strip{display:flex;align-items:center;gap:8px;margin:16px 0 20px;width:100%;overflow-x:auto;padding-bottom:4px}.generation-media-strip a{position:relative;display:block;width:80px;flex:0 0 80px;height:72px;background:var(--flow-subtle);border:1px solid var(--flow-line);border-radius:9px;overflow:hidden}.generation-media-strip img{display:block;width:100%;height:100%;object-fit:cover}.generation-media-strip [data-image-error]{padding:8px;display:block;font-size:11px;line-height:1.3;color:var(--flow-danger)}.generation-more-images{font-weight:700;font-size:14px;padding:8px;white-space:nowrap}.generation-media-feedback{font-size:12px;color:var(--flow-danger)!important}
.generation-flow .generation-builder{padding:28px 0 0;background:transparent;border:0;border-top:1px solid var(--flow-line);border-radius:0;margin:0}
.generation-creation-summary{border:1px solid var(--flow-line);border-radius:14px;overflow:hidden;margin-bottom:16px}.generation-design-summary{display:flex;gap:12px;align-items:center;padding:20px;background:var(--flow-subtle)}.generation-design-summary>.tag{font-size:12px;padding:7px 10px;background:var(--green);color:white;border-radius:7px}.generation-design-summary strong{font-size:16px;display:block;line-height:1.4}.generation-design-summary p{font-size:13px;line-height:1.5;margin:3px 0 0}
.generation-page-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));list-style:none;padding:16px 20px;margin:0;gap:8px 20px}.generation-page-list li{display:flex;gap:9px;align-items:baseline;min-width:0}.generation-page-list span{font-size:11px;font-weight:700;color:var(--flow-muted);min-width:20px}.generation-page-list strong{font-size:14px;font-weight:500;overflow-wrap:anywhere;line-height:1.5}
.generation-included{display:flex;flex-wrap:wrap;gap:8px 14px;padding:4px 20px 16px}.generation-included>span{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--flow-muted)}.generation-included svg{width:14px;height:14px;color:var(--green)}
.generation-flow .generation-text-action{width:100%;justify-content:space-between;border:0;border-top:1px solid var(--flow-line);border-radius:0;padding:12px 20px;color:var(--green);font-size:13px;background:var(--flow-surface)}
.generation-options{border:1px solid var(--flow-line);border-radius:12px;padding:0 16px;margin-bottom:24px}.generation-options>summary,.generation-warnings summary,.generation-projects-manage>summary{min-height:48px;padding:14px 0;font-size:14px;font-weight:600;cursor:pointer;line-height:1.5}.generation-options[open]>summary{margin-bottom:8px}.generation-options .generation-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.generation-options label{font-size:13px}.generation-options input,.generation-options textarea,.generation-options select{font-size:14px}.generation-options>button{margin-bottom:16px}
.generation-flow .generation-blockers{padding:20px;margin:20px 0;border:1px solid #decfa7;border-radius:12px;background:#fbf8ef}.generation-blockers h3{color:var(--flow-warning);margin:0 0 12px;font-size:16px}.generation-blockers ul{padding:0;margin:0;list-style:none}.generation-blockers li{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid #e8dec5;font-size:14px;line-height:1.6}.generation-blockers li:last-child{border:0}.generation-blockers li button{font-size:12px;white-space:nowrap;flex:0 0 auto}.generation-blockers>button{margin-top:12px}.generation-blockers [data-generation-save-status]{margin:8px 0 0;font-size:13px}
.generation-warnings{margin:12px 0 20px}.generation-warnings summary{font-size:13px;color:var(--flow-warning)}.generation-warnings li{font-size:13px;line-height:1.6;color:var(--flow-muted)}
.generation-submit{display:flex;align-items:center;gap:20px;margin:24px 0 12px}.generation-submit button{padding:15px 22px;min-height:54px;border-radius:11px;font-size:16px;font-weight:600;flex:0 0 auto}.generation-submit>span{font-size:13px;line-height:1.5;color:var(--flow-muted);max-width:350px}.generation-release-note{font-size:12px;line-height:1.65;max-width:68ch;margin:0}
.generation-loading{display:flex;gap:16px;align-items:center;border:1px solid var(--flow-line);border-radius:14px;background:var(--flow-subtle);padding:24px;min-height:124px}.generation-loading strong{font-size:15px;line-height:1.5}.generation-loading p{font-size:13px;margin:5px 0 0}
.generation-load-error,.generation-submit-status{border:1px solid #dcbeb9;background:#fdf4f2;padding:20px;border-radius:12px;margin:16px 0}.generation-load-error h3,.generation-submit-status strong{color:var(--flow-danger)}.generation-load-error p,.generation-submit-status p{font-size:14px}.generation-load-error button{margin-right:8px}.generation-load-error p:last-of-type{font-size:13px}
.generation-flow .generation-history{padding:28px;border-radius:18px;margin-top:24px}.generation-flow .job-row>button{min-height:44px;font-size:13px;margin-right:8px}.generation-flow .job-row.active{background:var(--flow-subtle)}.generation-projects-manage{margin:28px 0}.generation-projects-manage>summary{color:var(--flow-muted)}.generation-projects-manage .generation-project-title{margin-top:12px}
@media(max-width:1000px){.generation-sources{grid-template-columns:1fr}.generation-steps small{display:none}.generation-steps li{padding:12px 6px;gap:8px}.generation-steps strong{font-size:12px}.generation-steps li>span{width:30px;height:30px}.generation-submit{align-items:flex-start;flex-direction:column;gap:10px}.generation-submit>span{max-width:none}}
@media(max-width:600px){.generation-flow .generation-launcher,.generation-flow .generation-history{padding:20px 16px}.generation-steps{gap:4px;margin-bottom:16px}.generation-steps li{flex-direction:column;text-align:center;padding:10px 4px}.generation-steps strong{font-size:11px}.generation-section-title{gap:10px;align-items:flex-start}.generation-section-title h2{font-size:20px}.generation-section-title p{font-size:13px}.generation-source-card{padding:16px}.generation-page-list{grid-template-columns:1fr;padding:16px}.generation-included{padding:0 16px 16px}.generation-design-summary{align-items:flex-start;padding:16px}.generation-design-summary strong{font-size:14px}.generation-options .generation-choice-grid{grid-template-columns:1fr}.generation-options input,.generation-options select,.generation-options textarea{font-size:16px}.generation-blockers li{align-items:flex-start;flex-direction:column;gap:8px}.generation-submit>button{width:100%}.generation-loaded-caption{gap:4px}.generation-loaded-caption button{font-size:11px}.generation-loaded-caption>span{font-size:11px}.generation-projects-manage .generation-project-title{align-items:flex-start;gap:12px;flex-direction:column}}
.generation-upload-actions{display:flex;flex-wrap:wrap;gap:8px;width:100%;margin-top:8px}.generation-upload-actions button{font-size:12px;padding:8px 10px;flex:1;white-space:nowrap}.generation-upload-feedback{font-size:12px;line-height:1.6;margin:12px 0 0;overflow-wrap:anywhere}
.generation-flow .job-source-warnings{padding:12px 0;font-size:13px}.generation-flow .job-source-warnings summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-weight:600;color:var(--flow-warning)}.generation-flow .job-source-warnings li{line-height:1.6;margin:6px 0}.generation-flow .job-source-warnings p{font-size:12px}
/* Override the earlier summary's generic span rule without affecting other screens. */
.generation-flow .generation-project-summary span{margin-bottom:0;color:inherit}
.generation-flow .generation-source-icon{display:grid;color:var(--green)}
.generation-flow .generation-loaded-caption>span{display:flex;font-size:12px}
.generation-flow .generation-media-strip [data-image-error]{font-size:12px;color:var(--flow-danger)}
@media(max-width:600px){.generation-steps strong,.generation-loaded-caption button{font-size:12px}.generation-loaded-caption{flex-wrap:wrap}}
.generation-blocker-copy{min-width:0;display:block}.generation-blocker-copy strong{display:block;font-size:14px;margin-bottom:3px}.generation-blocker-copy>span{display:block;font-size:13px}
.generation-flow .generation-goal-edit{font-size:13px;color:var(--green);margin-top:-8px;margin-bottom:12px;border:0;background:transparent;padding-left:0}
.generation-flow input[readonly]{background:var(--flow-subtle);color:var(--flow-muted)}
@media(max-width:700px){.nav button{min-height:44px}}
.project-material-row{align-items:flex-start}.project-material-info{min-width:0;flex:1}.project-material-info>strong{overflow-wrap:anywhere}.material-use{display:flex;gap:10px;align-items:center;min-height:44px;margin:10px 0 0;font-size:14px;font-weight:600;cursor:pointer}.material-use input{width:20px;height:20px;margin:0;flex:0 0 auto;accent-color:var(--green)}.project-material-row .material-use-description{margin:0 0 8px;font-size:12px;line-height:1.5}.material-use-status{font-size:13px;line-height:1.6;margin:8px 0}.project-material-row>div.actions{gap:12px}.project-material-row>div.actions a{padding:12px 0;min-height:44px}.generation-excluded-note{font-size:12px;line-height:1.6;margin:8px 0 16px}.project-material-row [data-material-reload]{min-height:44px;font-size:13px}
@media(max-width:600px){.project-material-row{flex-direction:column;gap:8px}.project-material-row>div.actions{flex-wrap:wrap}}

/* Employee workspace: previews first, editing details on demand. */
.generation-heading{margin:28px 0 20px}.generation-heading h1{font-family:inherit;font-size:28px;line-height:1.2;letter-spacing:-.025em;margin:0}
.generation-flow .generation-launcher{padding:24px}.generation-flow .generation-section-title{margin-bottom:16px}.generation-flow h2{font-size:19px}
.generation-preview-board{margin:24px 0}.generation-board-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.generation-board-title h2{margin:0}
.generation-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.generation-preview-card{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--paper,#fff);padding:14px;min-width:0}.generation-preview-card header{display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;align-items:center;margin-bottom:14px}.generation-preview-card h3{margin:0;font-size:18px}.generation-preview-card .tag{font-size:11px}
.generation-thumbnail{height:200px;position:relative;overflow:hidden;border-radius:7px;background:#f1f2ef}.generation-thumbnail iframe{width:400%;height:800px;transform:scale(.25);transform-origin:top left;border:0;pointer-events:none}.generation-thumbnail>button{position:absolute;inset:0;width:100%;height:100%;background:transparent;border:0;border-radius:0;cursor:pointer}.generation-thumbnail>button:focus-visible{outline:3px solid var(--green);outline-offset:-3px}
.generation-version-date{font-size:12px;color:var(--muted);margin:12px 0}.generation-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.generation-card-actions button{padding:9px 8px;min-height:44px}.generation-card-actions button:last-child{grid-column:1/-1}.generation-preview-empty{min-height:200px;display:grid;place-content:center;text-align:center;color:var(--muted);padding:20px;background:#f5f6f3;border-radius:7px;margin-bottom:12px}.generation-preview-card>button{width:100%}
.generation-context,.generation-flow .generation-builder{border-top:1px solid var(--line);padding:18px 0;margin:0}.generation-context>summary,.generation-builder>summary,.generation-history>summary{font-weight:650;cursor:pointer;min-height:28px}.generation-builder[open]>.generation-section-title,.generation-context[open]>.generation-project-summary{margin-top:20px}
.generation-history{padding:18px 24px}.generation-business-copy{max-height:5em;overflow:auto}.generation-board-progress{margin-bottom:16px}
.generation-dialog{width:min(680px,calc(100% - 32px));max-height:90vh;overflow:auto;border:1px solid var(--line);border-radius:16px;padding:28px;color:var(--ink);background:var(--paper,#fff)}.generation-dialog::backdrop{background:#17221dcc}.generation-dialog h2{padding-right:40px;font-size:22px;margin-top:0}.generation-dialog-close{position:absolute;right:12px;top:12px;min-height:44px;min-width:44px;font-size:24px}.generation-dialog.preview{width:min(1200px,calc(100% - 32px))}.generation-full-preview{width:100%;height:72vh;border:1px solid var(--line);border-radius:8px}.generation-revision-form textarea{width:100%}.generation-dialog .actions{gap:10px;flex-wrap:wrap}
@media(max-width:1050px){.generation-preview-grid{grid-template-columns:1fr}.generation-preview-card{display:grid;grid-template-columns:minmax(200px,1fr) 1fr;gap:0 20px}.generation-preview-card header{grid-column:1/-1}.generation-thumbnail,.generation-preview-empty{grid-row:2/4}.generation-card-actions{align-self:end}.generation-version-date{align-self:start}}
@media(max-width:650px){.generation-heading h1{font-size:24px}.generation-flow .generation-launcher{padding:16px}.generation-preview-card{display:block}.generation-dialog{padding:20px}.generation-context>summary,.generation-builder>summary{font-size:15px}}
@media(max-width:650px){.generation-preview-empty{min-height:100px}}
