/* Model pages start with a centered composer; effect heroes remain separate. */
.model-landing .model-hero{max-width:1120px;margin:0 auto;padding:52px 0 84px;scroll-margin-top:140px}
.model-heading{text-align:center;margin:0 auto 44px}
.model-heading h1{font-size:clamp(36px,3.8vw,58px);font-weight:600;line-height:1.16;letter-spacing:-1.8px;margin:0 0 24px;text-wrap:balance;color:var(--rd-text)}
.model-heading p{max-width:980px;margin:auto;font-size:19px;line-height:1.65;color:var(--rd-secondary);text-wrap:pretty}
.model-landing .model-composer{max-width:1040px;margin:auto;padding:6px 18px 18px;border:1px solid var(--rd-line);border-radius:20px;background:var(--rd-panel);transition:border-color .15s ease}
.model-landing .model-composer:focus-within{border-color:var(--rd-line-strong)}
.model-modes{display:flex;gap:4px;margin:0 -12px 12px}
.model-modes button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 16px;border-radius:12px;color:var(--rd-secondary);font:inherit;font-size:14px;font-weight:600;background:transparent;border:1px solid transparent;cursor:pointer;white-space:nowrap}
.model-modes button[aria-pressed=true]{color:var(--rd-primary);background:var(--rd-hover)}
.model-modes button:not(:disabled):hover{color:var(--rd-primary)}
.model-modes svg,.model-settings-trigger svg{width:19px;height:19px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.model-mode-short{display:none}
.model-prompt-area{display:flex;align-items:flex-start;gap:20px}
.model-composer textarea{display:block;flex:1;min-width:0;resize:none;width:100%;height:144px;min-height:144px;max-height:260px;border:0;background:transparent;color:var(--rd-text);font:inherit;font-size:16px;line-height:1.7;padding:12px 4px;scrollbar-width:thin;scrollbar-color:var(--rd-line-strong) transparent}
.model-composer textarea::placeholder{color:var(--rd-muted)}
.model-composer textarea:focus-visible{outline:2px solid var(--rd-primary);outline-offset:3px;border-radius:6px}
.model-prompt-footer{display:flex;justify-content:flex-end;min-height:24px;align-items:center;padding:0 4px;margin:0 0 8px}
.model-prompt-count{font-size:12px;color:var(--rd-muted);font-variant-numeric:tabular-nums;white-space:nowrap}
.model-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.model-name{display:flex;align-items:center;gap:9px;min-width:0;max-width:310px;min-height:44px;white-space:nowrap;font:inherit;font-size:14px;font-weight:600;padding:0 12px;background:var(--rd-hover);border:1px solid transparent;border-radius:10px;color:var(--rd-text);cursor:pointer}
.model-name:hover,.model-name[aria-expanded=true]{border-color:var(--rd-line-strong)}
.model-name:focus-visible{outline:2px solid var(--rd-primary);outline-offset:3px}
.model-name:disabled{opacity:.6;cursor:wait}
[data-model-icon]{display:flex;flex:none}
[data-model-name]{overflow:hidden;text-overflow:ellipsis}
.model-name>svg{width:16px;height:16px;flex:none;margin-left:auto;fill:none;stroke:var(--rd-muted);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.model-modes button:disabled{opacity:.45;cursor:not-allowed}
.model-name img{width:24px;height:24px;flex:none}
.model-settings-trigger{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:0 12px;background:var(--rd-hover);border:1px solid transparent;border-radius:10px;color:var(--rd-secondary);font:inherit;font-size:13px;font-weight:500;cursor:pointer}
.model-settings-trigger:hover,.model-settings-trigger[aria-expanded=true]{color:var(--rd-text);border-color:var(--rd-line-strong)}
.model-settings-trigger:disabled{cursor:wait;opacity:.6}
[data-model-settings-summary]{display:flex;align-items:center;gap:10px;white-space:nowrap;font-variant-numeric:tabular-nums}
[data-model-settings-summary] i{height:12px;width:1px;background:var(--rd-line-strong)}
.model-settings-trigger svg{width:16px;height:16px;color:var(--rd-muted)}
.model-modes button:focus-visible,.model-settings-trigger:focus-visible,.model-composer-settings button:focus-visible,.model-composer .effect-continue:focus-visible{outline:2px solid var(--rd-primary);outline-offset:3px}
.model-landing .model-composer .effect-continue{flex-shrink:0;width:auto;min-height:44px;padding:10px 18px;margin:0 0 0 auto;font-size:14px;border-radius:10px;gap:12px}
.model-credit-note{font-size:12px;color:var(--rd-secondary);line-height:1.7;margin:14px 0 0}
.model-hero-note{text-align:center}
.model-composer .effect-error{margin:16px 0 0}
.model-composer .effect-sources:empty{display:none}
.model-composer .effect-sources{flex:0 0 150px;gap:10px;margin:4px 0 8px}
.model-composer .effect-sources.multiple-sources{flex-basis:280px;grid-template-columns:repeat(2,minmax(0,1fr))}
.model-landing .model-composer .upload-zone,.model-landing .model-composer .source-photo{height:128px;min-height:0;padding:10px;border-radius:12px}
.model-landing .model-composer .upload-zone{font-size:13px;gap:6px;border:1px dashed var(--rd-line-strong);background:var(--rd-surface)}
.model-landing .model-composer .upload-zone:hover,.model-landing .model-composer .upload-zone.drag-over{border-color:var(--rd-primary);background:var(--rd-primary-tint)}
.model-landing .model-composer .upload-icon{width:28px;height:28px;font-size:26px;background:transparent}
.model-landing .model-composer .upload-help{font-size:10px}
.model-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}
.model-composer-settings{width:340px;padding:18px;background:var(--rd-field);color:var(--rd-text);border-radius:16px}
.model-settings-title{font-size:15px;font-weight:600;margin:0 0 18px}
.model-setting-row{border:0;min-width:0;padding:0;margin:0 0 18px}
.model-setting-row legend{font-size:13px;color:var(--rd-secondary);padding:0;margin-bottom:8px}
.model-setting-row>div{display:flex;gap:8px;flex-wrap:wrap}
.model-setting-row button{flex:1;min-width:60px;min-height:42px;border:1px solid var(--rd-line);border-radius:8px;background:transparent;color:var(--rd-secondary);font:inherit;font-size:14px;cursor:pointer}
.model-setting-row button:hover{background:var(--rd-hover);color:var(--rd-text)}
.model-setting-row button[aria-pressed=true]{border-color:var(--rd-primary);background:var(--rd-primary-tint);color:var(--rd-primary);font-weight:600}
.model-settings-done{width:100%;min-height:42px;border:0;border-radius:9px;background:var(--rd-hover);color:var(--rd-text);font:inherit;font-size:14px;font-weight:600;cursor:pointer}
.model-settings-done:hover{background:var(--rd-line)}
.model-landing .model-showcase{max-width:1040px;margin:0 auto;scroll-margin-top:140px}
.model-showcase .effect-section-heading{margin-bottom:28px}
.model-showcase h2{font-size:clamp(26px,2.4vw,36px);line-height:1.25;margin:0 0 14px;color:var(--rd-text)}
.model-showcase .effect-section-heading p{font-size:16px;color:var(--rd-secondary)}
.model-landing .effect-preview{width:100%;margin:0}
.model-landing .effect-player{width:100%;background:var(--rd-surface)}
.model-landing video{display:block;object-fit:contain;width:100%;height:auto;border-radius:20px}
.model-landing figcaption a{text-decoration:underline;text-underline-offset:3px}
.model-prompt-section blockquote{font-size:16px;line-height:1.8;margin:16px 0}
.model-prompt-section button{border:0;background:transparent;padding:0;text-align:left}
.model-related-links{display:flex;gap:24px;flex-wrap:wrap;margin-top:24px;color:var(--rd-primary)}
.model-landing .effect-plan .primary-button{margin-top:24px}
@media(max-width:1100px){.model-landing .model-hero{padding:38px 0 68px}}
@media(max-width:767px){
 .model-landing .model-hero{padding:22px 0 56px}
 .model-heading{margin-bottom:28px}.model-heading h1{font-size:clamp(32px,8vw,44px);letter-spacing:-1px;margin-bottom:18px}.model-heading p{font-size:16px;line-height:1.65}
 .model-landing .model-composer{padding:6px 12px 14px;border-radius:16px}
 .model-modes{gap:2px;margin:0 -6px 12px}.model-modes button{flex:1;gap:6px;font-size:13px;padding:10px 8px}.model-mode-wide{display:none}.model-mode-short{display:inline}
 .model-prompt-area{flex-direction:column;gap:4px}.model-composer textarea{padding:8px 2px}
 .model-composer .effect-sources,.model-composer .effect-sources.multiple-sources{flex-basis:auto;width:100%;max-width:320px;margin:0 0 8px}
 .model-composer .effect-sources:not(.multiple-sources){max-width:150px}
 .model-toolbar{gap:8px}.model-name{width:100%;max-width:100%;font-size:14px;padding:0 12px;min-height:44px}
 .model-settings-trigger{width:100%;justify-content:space-between;padding:0 12px;min-height:44px}
 .model-prompt-footer{margin-bottom:4px}.model-prompt-count{font-size:11px}
 .model-landing .model-composer .effect-continue{width:100%;min-height:46px;margin:4px 0 0}
 .model-hero-note{font-size:11px}.model-landing video{border-radius:14px}
 .model-composer-settings.editor-sheet{width:100%;max-width:100%;height:auto;max-height:85dvh;padding:0;border-radius:20px 20px 0 0;overflow:auto}
 .model-composer-settings .editor-sheet-heading{padding:14px 20px;margin:0;position:sticky;top:0;background:var(--rd-field);z-index:1}
 .model-composer-settings .editor-sheet-heading p{margin:0;font-size:16px;color:var(--rd-text);font-weight:600}
 .model-composer-settings .editor-sheet-heading button{position:static;margin:0;min-width:44px;min-height:44px;display:grid;place-items:center}
 .model-composer-settings .editor-sheet-content{height:auto;overflow:visible;padding:20px 20px max(20px,env(safe-area-inset-bottom))}
 .model-composer-settings .model-settings-title{display:none}.model-setting-row button,.model-settings-done{min-height:44px}
}
@media(prefers-reduced-motion:reduce){.model-landing .model-composer{transition:none}}
/* Model research, practical guides and reusable recipes. */
.model-editorial-lead{max-width:880px;line-height:1.8;margin:0 auto 28px;text-align:center;color:var(--rd-secondary)}
.model-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 36px;margin:0}
.model-facts>div{padding:24px 0;border-top:1px solid var(--rd-line)}
.model-facts dt,.model-troubleshooting dt{font-size:17px;font-weight:600;color:var(--rd-text);margin:0 0 10px}
.model-facts dd,.model-troubleshooting dd{margin:0;line-height:1.8;color:var(--rd-secondary)}
.model-landing table caption{padding:14px 24px;text-align:left;color:var(--rd-secondary);font-size:13px}
.model-editorial-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px;margin-top:32px}
.model-editorial-columns h3,.model-prompt-guide h3,.model-prompt-revision h3,.model-budget-guide h3{font-size:20px;line-height:1.4;color:var(--rd-text);margin:0 0 12px}
.model-editorial-columns p,.model-prompt-guide p,.model-prompt-revision p,.model-budget-guide p,.model-budget-guide li{line-height:1.8;color:var(--rd-secondary)}
.model-editorial-columns a{color:var(--rd-primary);text-decoration:underline;text-underline-offset:3px}
.model-prompt-formula{padding:24px 28px;border-left:3px solid var(--rd-primary);background:var(--rd-panel);font-size:18px;line-height:1.8;color:var(--rd-text)}
.model-prompt-guide{display:grid;gap:0;margin:28px 0}
.model-prompt-guide>div{display:grid;grid-template-columns:240px 1fr;gap:28px;padding:22px 0;border-bottom:1px solid var(--rd-line)}
.model-prompt-guide p{margin:0}.model-prompt-guide h3{margin:0}
.model-prompt-revision{padding:28px;border:1px solid var(--rd-line);border-radius:16px}
.model-prompt-revision p:last-child{margin-bottom:0}
/* Complete scene prompts: preview, readable copy and two explicit actions. */
.model-recipe-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;align-items:start}
.model-recipe{min-width:0;overflow:hidden;border:1px solid var(--rd-line);border-radius:18px;background:var(--rd-surface)}
.model-landing .model-recipe-preview video{width:100%;aspect-ratio:16/9;height:auto;object-fit:contain;border-radius:0;background:var(--rd-panel)}
.model-landing .model-recipe-preview figcaption{padding:10px 24px;font-size:11px;border-bottom:1px solid var(--rd-line);color:var(--rd-secondary)}
.model-recipe-content{padding:26px;display:flex;flex-direction:column;align-items:stretch;min-width:0}
.model-landing .model-recipe h3{font-size:26px;line-height:1.3;letter-spacing:-.5px;color:var(--rd-text);margin:0 0 14px;text-wrap:balance}
.model-landing .model-recipe p{font-size:15px;line-height:1.7;margin:0 0 18px;color:var(--rd-secondary)}
.model-landing .model-recipe .model-recipe-label{font-size:11px;letter-spacing:1.6px;color:var(--rd-primary);margin-bottom:14px;font-weight:600}
.model-landing .model-recipe .model-recipe-input{font-size:13px;margin:2px 0 12px;color:var(--rd-text)}
.model-recipe-settings{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px;padding:0}
.model-landing .model-recipe-settings li{font-size:12px;padding:4px 10px;border-radius:6px;background:var(--rd-hover);color:var(--rd-secondary);line-height:1.5}
.model-recipe-prompt{border-top:1px solid var(--rd-line);padding-top:20px;margin-bottom:18px}
.model-recipe-prompt>span{display:block;font-size:11px;letter-spacing:1.2px;text-transform:uppercase;color:var(--rd-muted);margin-bottom:12px}
.model-recipe .model-recipe-prompt blockquote{margin:0;font-size:15px;line-height:1.85;color:var(--rd-text);font-weight:400;overflow-wrap:anywhere}
.model-recipe blockquote:focus-visible{outline:2px solid var(--rd-primary);outline-offset:5px}
.model-landing .model-recipe .model-recipe-tip{font-size:13px;line-height:1.75;padding-top:18px;border-top:1px solid var(--rd-line);margin:0 0 22px}
.model-recipe-tip strong{color:var(--rd-text);font-weight:500}
.model-recipe-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:auto}
.model-prompt-section .model-recipe-actions button{display:flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:11px 16px;border-radius:8px;font:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s;color:var(--rd-text);border:1px solid var(--rd-line-strong)}
.model-prompt-section .model-recipe-actions .model-recipe-use{flex:1;background:var(--rd-primary);border-color:var(--rd-primary);color:var(--rd-bg)}
.model-prompt-section .model-recipe-use:hover{background:var(--rd-primary-hover)}
.model-prompt-section .model-recipe-copy:hover{background:var(--rd-hover)}
.model-recipe-actions button:focus-visible{outline:2px solid var(--rd-primary);outline-offset:3px}
.model-landing .effect-section-heading .model-recipe-provenance{margin:20px auto 0;font-size:12px;line-height:1.8;color:var(--rd-muted);max-width:660px}
.model-budget-guide{max-width:880px;margin:0 auto 40px}.model-budget-guide ol{padding-left:24px}.model-budget-guide li{padding:4px 0}
.model-troubleshooting{margin:0}.model-troubleshooting>div{display:grid;grid-template-columns:300px 1fr;gap:36px;border-top:1px solid var(--rd-line);padding:25px 0}
@media(max-width:767px){
 .model-facts,.model-editorial-columns,.model-recipe-grid{grid-template-columns:1fr;gap:20px}
 .model-facts{gap:0}.model-facts>div{padding:20px 0}
 .model-prompt-guide>div,.model-troubleshooting>div{grid-template-columns:1fr;gap:10px}
 .model-prompt-formula,.model-prompt-revision{padding:22px}.model-recipe-content{padding:22px}
 .model-recipe h3{font-size:22px}.model-prompt-formula{font-size:16px}
}
/* Illustrated model guide. Scoped to model pages; composer remains unchanged. */
.model-landing .model-guide-image,.model-editorial-figure img{display:block;width:100%;height:auto;border-radius:16px}
.model-landing figure{margin:0;min-width:0}
.model-landing[data-model-id="topview-t1"] figcaption{font-size:12px;line-height:1.6;color:var(--rd-muted);padding:10px 0 0}
.model-overview-visual{display:grid;grid-template-columns:.85fr 1.15fr;gap:40px;align-items:start}
.model-overview-visual>.model-editorial-figure{position:sticky;top:140px}
.model-overview-visual .model-editorial-lead{text-align:left;margin:0 0 24px}
.model-overview-visual .model-facts{gap:20px}
.model-facts>div{border:0;padding:0 0 18px}.model-facts img{width:100%;height:auto;border-radius:10px;margin-bottom:16px}
.model-feature-intro{margin:0 0 64px}.model-feature-intro figure{margin-bottom:24px}
.model-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:60px 32px}
.model-feature-card h3{font-size:clamp(22px,2vw,28px);line-height:1.35;color:var(--rd-text);margin:0 0 18px;text-wrap:balance}
.model-feature-card>div{padding:24px 6px 0}.model-feature-card p{line-height:1.8;color:var(--rd-secondary)}
.model-feature-card .effect-eyebrow{font-size:11px;letter-spacing:2px;color:var(--rd-primary);margin:0 0 16px}
.model-feature-card video{aspect-ratio:16/9;background:var(--rd-surface)}
.model-benchmark-row{display:grid;grid-template-columns:1fr 1.15fr;gap:36px;align-items:center;margin:0 0 36px}
.model-benchmark-row h3{font-size:27px;line-height:1.4;margin:0 0 20px;color:var(--rd-text)}
.model-benchmark-row p{line-height:1.8;color:var(--rd-secondary)}
.model-benchmark-row strong{color:var(--rd-text)}.model-speed-row{margin-top:72px}
.model-highlight-row{background:var(--rd-primary-tint)}
.model-editorial-columns>.model-guide-image,.model-editorial-columns>div>.model-guide-image{margin-bottom:24px}
.model-landing .effect-steps .model-guide-image{margin-bottom:24px}
.model-prompt-guide>div{grid-template-columns:minmax(260px,.85fr) 1.15fr;align-items:center;gap:36px;padding:28px 0}
.model-prompt-guide img{width:100%;height:auto;border-radius:14px}.model-prompt-guide h3{margin-bottom:12px}
.model-prompt-revision{display:grid;grid-template-columns:1fr 1.1fr;gap:32px;align-items:center}

.model-budget-guide{max-width:1000px;display:flow-root}.model-budget-guide>.model-guide-image{width:46%;float:right;margin:0 0 24px 40px}
.model-troubleshooting{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.model-troubleshooting>div{display:block;padding:0 0 24px;border:0}.model-troubleshooting img{display:block;width:100%;height:auto;border-radius:14px;margin-bottom:22px}
.model-landing .effect-boundaries .model-guide-image{margin-bottom:28px}
.model-faq-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:40px;align-items:start}.model-faq-layout>figure{position:sticky;top:140px}
.model-visual-final{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center;text-align:left}
.model-visual-final .model-editorial-figure{max-width:100%;width:100%}.model-visual-final>div{max-width:100%;margin:0}
@media(max-width:900px){.model-overview-visual,.model-benchmark-row,.model-prompt-revision,.model-faq-layout{grid-template-columns:1fr}.model-overview-visual>.model-editorial-figure,.model-faq-layout>figure{position:static}.model-faq-layout>figure{max-width:560px;margin:auto}.model-overview-visual .model-editorial-figure{max-width:800px}.model-budget-guide>.model-guide-image{float:none;width:100%;margin:0 0 28px}.model-feature-grid{gap:40px 24px}}
@media(max-width:767px){.model-feature-grid,.model-prompt-guide>div,.model-troubleshooting,.model-visual-final{grid-template-columns:1fr}.model-feature-card>div{padding:20px 0 0}.model-feature-intro{margin-bottom:40px}.model-visual-final{gap:30px}.model-benchmark-row{gap:24px}.model-benchmark-row h3{font-size:24px}.model-overview-visual .model-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.model-facts dt{font-size:16px}.model-facts dd{font-size:14px}.model-landing .model-prompt-revision{padding:20px}.model-speed-row{margin-top:48px}}
.model-benchmark-row p{margin:0 0 18px}.model-benchmark-row p:last-child{margin-bottom:0}
@media(max-width:767px){.model-overview-visual .model-facts{grid-template-columns:1fr}.model-benchmark-row:not(.model-speed-row)>figure{grid-row:1}}

/* Concise photographic direction tips above the video prompt gallery. */
.model-prompt-guide{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin:0}
.model-prompt-guide>div{display:block;border:0;padding:0}
.model-prompt-guide img{aspect-ratio:16/9;object-fit:contain;margin-bottom:22px}
.model-landing .model-prompt-guide h3{font-size:20px;line-height:1.4;margin:0 0 12px}
.model-landing .model-prompt-guide p{font-size:15px;line-height:1.8}
@media(max-width:767px){.model-prompt-guide{grid-template-columns:1fr;gap:32px}.model-recipe-grid{grid-template-columns:1fr;gap:28px}.model-recipe-content{padding:22px}.model-landing .model-recipe h3{font-size:23px}.model-landing .model-recipe-preview figcaption{padding:10px 22px}.model-recipe-actions{gap:8px}.model-prompt-section .model-recipe-actions button{font-size:12px;padding:11px 13px}}
@media(prefers-reduced-motion:reduce){.model-recipe-actions button{transition:none}}

/* A guide can discuss a new model before its native engine is integrated. */
.model-availability-note{max-width:960px;margin:18px auto 0;text-align:center;font-size:13px;line-height:1.75;color:var(--rd-secondary)}
.model-landing[data-model-id="topview-t1"] figcaption{font-size:12px;line-height:1.7;color:var(--rd-muted);margin-top:9px}
@media(max-width:767px){.model-availability-note{font-size:12px;text-align:left}}
