/* APPROACHES-01: extensions to existing Inbox primitives, scoped to this module. */
.approaches-page .approach-filters{grid-template-columns:minmax(260px,2fr) minmax(150px,1fr) minmax(170px,1fr)}
.approach-pager{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0;color:var(--color-text-secondary);font-size:12px;flex-wrap:wrap}
.approach-pager>div{display:flex;align-items:center;gap:10px}
.approach-card{padding:0;overflow:hidden}
.approach-card-open{display:block;width:100%;padding:0;border:0;background:var(--color-surface-base);color:var(--color-text-primary);text-align:left;cursor:pointer}
.approach-card-open>header{display:grid;gap:6px;padding:12px;min-width:0;min-height:76px}
.approach-card-open>header strong{font-size:14px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.approach-section-pill{display:inline-flex;justify-self:start;background:var(--color-surface-subtle);color:var(--color-text-secondary);border-radius:999px;padding:4px 8px;font-size:11px;max-width:100%}
.approach-card-media{position:relative;height:230px;background:var(--color-surface-contrast);overflow:hidden;display:grid;place-items:center}
.approach-card-media>img,.approach-card-media>video{position:absolute;inset:0;display:block;width:100%;height:100%;min-width:0;min-height:0;max-width:100%;max-height:100%;object-fit:contain;object-position:center;pointer-events:none}
.approach-card-body{padding:12px;display:grid;gap:12px}
.approach-filled{display:flex;gap:12px;flex-wrap:wrap;border-top:1px solid var(--color-border-default);padding-top:10px;font-size:11px}
.approach-filled .known{color:var(--color-action-primary)}.approach-filled .missing{color:var(--color-text-secondary)}
.approach-no-media{display:grid;place-items:center;min-height:180px;font-size:13px;color:#b8c6d1;padding:16px;text-align:center}
.approach-drawer .approach-detail-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr) minmax(240px,290px)}
.approach-drawer.adspower-detail-drawer.ux28{grid-template-rows:auto minmax(0,1fr)}
.approach-drawer .vis06-evidence-zone,.approach-drawer .vis06-facts-zone{display:grid;align-content:start;gap:14px;min-width:0;min-height:0}
.approach-editor-media{position:relative;height:430px;min-width:0;min-height:0;display:grid;place-items:center;border:1px solid var(--color-border-default);border-radius:var(--radius-panel);background:var(--color-surface-contrast);overflow:hidden}
.approach-drawer .approach-editor-media>img,.approach-drawer .approach-editor-media>video{position:absolute;inset:0;display:block;width:100%;height:100%;min-width:0;min-height:0;max-width:100%;max-height:100%;object-fit:contain;object-position:center}
.approach-media-actions{display:flex;gap:8px;flex-wrap:wrap}.approach-media-actions .file-button{position:relative;overflow:hidden;cursor:pointer}.approach-media-actions input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}
.approach-drawer textarea,.approach-drawer input:not([type=file]),.approach-drawer select{width:100%;padding:10px;border:1px solid var(--color-border-default);border-radius:var(--radius-control);background:var(--color-surface-base);color:var(--color-text-primary);font:inherit;min-width:0}
.approach-drawer textarea{resize:vertical;line-height:1.6;font-size:13px}
.approach-drawer .vis06-decision-rail>label{display:grid;gap:5px;font-size:12px;color:var(--color-text-secondary);font-weight:650}
.approach-drawer .vis06-decision-rail input,.approach-drawer .vis06-decision-rail select{font-size:13px}
.approach-text .adspower-section-title{align-items:center;gap:10px;margin-bottom:10px}.approach-text .adspower-section-title label{font-size:14px;font-weight:750}
.approach-text .compact-btn{font-size:11px}.approach-text{padding:0 0 15px!important}
.approach-note-label{font-size:14px;font-weight:750}.approach-media-name,.approach-origin{font-size:12px;color:var(--color-text-secondary);overflow-wrap:anywhere}
.approach-origin{padding-top:10px;border-top:1px solid var(--color-border-default)}.approach-save-status{font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.approach-picker{width:min(900px,calc(100vw - 32px));max-width:900px}
.approach-picker-search{display:flex;gap:10px;padding:0 22px 16px}.approach-picker-search input{flex:1;min-width:0}
.approach-picker-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0 22px;max-height:55vh;overflow:auto}
.approach-picker-item{display:flex;align-items:center;gap:12px;border:1px solid var(--color-border-default);background:var(--color-surface-base);border-radius:var(--radius-panel);padding:10px;text-align:left;min-width:0;cursor:pointer}
.approach-picker-item>span:last-child{display:grid;gap:5px;min-width:0}.approach-picker-item b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px}.approach-picker-item small{font-size:11px;color:var(--color-text-secondary)}
.approach-picker-thumb{width:68px;height:82px;flex-shrink:0;background:var(--color-surface-subtle);display:grid;place-items:center;overflow:hidden;border-radius:var(--radius-control)}.approach-picker-thumb img{width:100%;height:100%;object-fit:cover}.approach-picker-thumb>span{font-size:10px;color:var(--color-text-secondary)}
.approach-picker .approach-pager{padding:10px 22px}
.approach-drawer .approach-hooks-zone{grid-column:1/-1;min-width:0;margin:0;padding-top:20px;border-top:1px solid var(--color-border-default)}
.approach-hooks-zone>.adspower-section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.approach-hooks-zone h3{font-size:16px;margin:0}.approach-hooks-zone h4{font-size:12px;color:var(--color-text-secondary);font-weight:750;margin:0 0 10px}.approach-hooks-zone h5{font-size:11px;color:var(--color-text-secondary);font-weight:700;margin:0 0 6px}
.approach-hooks-zone p,.approach-hooks-zone blockquote{font-size:13px;line-height:1.65;margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
.approach-hooks-zone blockquote{padding:0 0 0 12px;border-left:3px solid var(--color-border-default);font-style:italic;margin-bottom:16px}
.approach-hooks-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.approach-hooks-actions .compact-btn{font-size:11px}
.approach-hooks-empty,.approach-hooks-hint{color:var(--color-text-secondary)}
.approach-hook-skeleton,.approach-hook-chain,.approach-hook-map{margin-bottom:22px}
.approach-hook-skeleton ol{display:flex;gap:8px;flex-wrap:wrap;list-style:none;padding:0;margin:0}
.approach-hook-skeleton li{display:flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid var(--color-border-default);border-radius:var(--radius-control);background:var(--color-surface-subtle);min-width:0;max-width:100%;overflow-wrap:anywhere}
.approach-hook-skeleton li>span:last-child{display:grid;gap:4px}.approach-hook-skeleton b{font-size:12px}.approach-hook-skeleton small,.approach-hook-summary small{font-size:11px;font-weight:400;color:var(--color-text-secondary)}
.approach-hook-position{font-size:12px;font-weight:750;color:var(--color-action-primary);flex-shrink:0}
.approach-hook-map>.adspower-section-title{display:flex;justify-content:space-between;gap:12px;margin-bottom:10px}.approach-hook-map>.adspower-section-title h4{margin:0}.approach-hook-map>.adspower-section-title>span{font-size:11px;color:var(--color-text-secondary)}
.approach-hook-detail{border:1px solid var(--color-border-default);border-radius:var(--radius-control);margin-top:8px;overflow:hidden}
.approach-hook-detail summary{display:flex;align-items:center;gap:12px;padding:14px;cursor:pointer;list-style:none}.approach-hook-detail summary::-webkit-details-marker{display:none}.approach-hook-detail summary:focus-visible{outline:2px solid var(--color-action-primary);outline-offset:-3px}
.approach-hook-summary{display:grid;gap:5px;min-width:0;flex:1}.approach-hook-summary>b{font-size:13px;overflow-wrap:anywhere}.approach-hook-summary>b small{margin-left:6px}.approach-hook-summary>span{font-size:12px;color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.approach-hook-chevron{color:var(--color-text-secondary);font-size:16px}.approach-hook-detail[open] .approach-hook-chevron{transform:rotate(180deg)}
.approach-hook-body{border-top:1px solid var(--color-border-default);padding:14px}.approach-hook-pattern{border-top:1px solid var(--color-border-default);padding-top:18px}
.approach-hooks-plain{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.65}
.approach-hooks-editor{margin-top:18px;padding-top:18px;border-top:1px solid var(--color-border-default);display:grid;gap:12px}.approach-hooks-editor[hidden],.approach-hooks-zone [hidden]{display:none}
.approach-hooks-format-label{display:grid;gap:6px;max-width:350px;font-size:12px;color:var(--color-text-secondary)}.approach-hooks-editor>label{font-size:13px}.approach-drawer #approach-hooks{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:12px}.approach-hooks-error{color:var(--color-danger);font-size:12px;line-height:1.5;overflow-wrap:anywhere}.approach-hooks-error:empty{display:none}
.approach-hooks-actions .file-button{position:relative;overflow:hidden;cursor:pointer}.approach-hooks-actions .file-button input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}
.approach-hooks-zone #approach-hooks-import-status{font-size:12px;line-height:1.5;overflow-wrap:anywhere;margin-bottom:12px}.approach-hooks-zone #approach-hooks-import-status:empty{display:none}.approach-hooks-zone>#approach-hooks-error:not(:empty){margin-bottom:12px}
.approach-analysis-intro,.approach-operator-skeleton{margin-bottom:22px}.approach-analysis-scope{color:var(--color-text-secondary);margin-bottom:12px!important}
.approach-core-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;list-style:none;margin:0;padding:0}.approach-core-grid>li{min-width:0}
.approach-core-step{display:flex;align-items:flex-start;gap:10px;width:100%;height:100%;padding:13px;border:1px solid var(--color-border-default);border-radius:var(--radius-control);background:var(--color-surface-base);color:var(--color-text-primary);text-align:left;cursor:pointer}.approach-core-step:hover{background:var(--color-surface-subtle);border-color:var(--color-border-strong)}.approach-core-step:focus-visible{outline:2px solid var(--color-action-primary);outline-offset:2px}
.approach-core-copy{display:grid;gap:7px;min-width:0;flex:1}.approach-core-copy>b{font-size:13px;line-height:1.4;overflow-wrap:anywhere}.approach-core-copy>span{font-size:12px;line-height:1.55;color:var(--color-text-secondary);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere}.approach-core-copy>small{font-size:10px;color:var(--color-text-secondary);overflow-wrap:anywhere}
.approach-hook-full-map{margin-top:22px;border:1px solid var(--color-border-default);border-radius:var(--radius-control);overflow:hidden}.approach-hook-full-map>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;list-style:none;padding:14px;background:var(--color-surface-subtle)}.approach-hook-full-map>summary::-webkit-details-marker{display:none}.approach-hook-full-map>summary>span:first-child{display:grid;gap:5px;min-width:0}.approach-hook-full-map>summary b{font-size:13px}.approach-hook-full-map>summary small{font-size:11px;color:var(--color-text-secondary)}.approach-hook-full-map[open]>summary>.approach-hook-chevron{transform:rotate(180deg)}.approach-hook-full-map>summary:focus-visible{outline:2px solid var(--color-action-primary);outline-offset:-3px}
.approach-hook-map-body{padding:14px}.approach-hook-body p+h5{margin-top:14px}.approach-hook-time{color:var(--color-text-secondary);font-size:11px;flex-shrink:0}.approach-hook-original{margin-bottom:14px}.approach-hook-detail .approach-hook-original>summary{padding:6px 0;font-size:12px;color:var(--color-text-secondary)}.approach-hook-original blockquote{margin-top:8px}.approach-hook-cta{border-top:1px solid var(--color-border-default);padding-top:18px}
@media(max-width:1200px){.approach-drawer .approach-detail-layout{grid-template-columns:minmax(0,1fr) minmax(250px,.8fr)}.approach-drawer .vis06-facts-zone{grid-column:1;grid-row:2}.approach-drawer .vis06-decision-rail{grid-column:2;grid-row:1/3}.approach-editor-media{height:350px}}
@media(max-width:820px){.approaches-page .approach-filters{grid-template-columns:1fr}.approach-drawer .approach-detail-layout{grid-template-columns:1fr}.approach-drawer .vis06-facts-zone,.approach-drawer .vis06-decision-rail{grid-column:auto;grid-row:auto}.approach-drawer .vis06-decision-rail{order:0;position:static}.approach-picker-list{grid-template-columns:1fr}.approach-text .adspower-section-title{flex-wrap:wrap}.approach-pager{justify-content:flex-start}}
@media(max-width:820px){.approach-core-grid{grid-template-columns:1fr}.approach-hooks-zone>.adspower-section-title{align-items:flex-start}.approach-hook-map-body{padding:10px}}

/* APPROACHES-04. Read mode owns the first screen; no sticky metadata rail. */
.approach-overview-drawer{--approach-teal:#0f766e;--approach-amber:#92540b;--approach-violet:#6941a5}
.approach-overview-drawer.adspower-detail-drawer.ux28{width:min(1180px,94vw);max-width:100vw}
.approach-overview-drawer .preview-head{align-items:center}
.approach-head-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}
.approach-draft-status{font-size:11px;color:var(--approach-amber);background:#fff5df;padding:5px 7px;border-radius:6px}.approach-draft-status[hidden]{display:none}
.approach-overview-form #approach-overview-pattern:empty{display:none}
.approach-overview-form{display:grid;gap:22px;min-width:0;color:var(--color-text-primary)}
.approach-overview-form [hidden],.approach-overview-form[data-mode=read] .approach-edit-only,.approach-overview-form[data-mode=edit] .approach-read-only{display:none!important}
.approach-overview-drawer .approach-context{display:grid;grid-template-columns:clamp(160px,23%,240px) minmax(0,1fr);gap:22px;min-width:0;align-items:start}
.approach-content-column{min-width:0}.approach-content-column .approach-read-panel{margin-top:16px}
.approach-overview-form[data-mode=edit] .approach-context{grid-template-columns:minmax(180px,.5fr) minmax(0,1fr)}
.approach-overview-form[data-mode=edit] .approach-hooks-zone{margin-top:22px}
.approach-media-column,.approach-brief{min-width:0;display:grid;gap:10px}
.approach-overview-drawer .approach-editor-media{height:clamp(240px,36vh,360px);border-radius:12px}
.approach-overview-drawer .approach-no-media{min-height:0}
.approach-overview-drawer h3,.approach-overview-drawer h4{margin:0;font-weight:750;line-height:1.35}
.approach-overview-drawer h3{font-size:16px}.approach-overview-drawer h4{font-size:15px}
.approach-kicker{display:block;font-size:10px;line-height:1.5;font-weight:800;letter-spacing:.09em}
.approach-repeat{padding:20px 22px;border:1px solid #b4dcd3;border-left:4px solid var(--approach-teal);border-radius:12px;background:#eff9f5}
.approach-repeat-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}.approach-repeat-head>div{display:grid;gap:5px}
.approach-repeat .approach-kicker,.approach-repeat h3{color:var(--approach-teal)}
.approach-repeat p{font-size:15px;line-height:1.75;font-weight:650;margin:0;white-space:pre-wrap;overflow-wrap:anywhere;color:#155b50}
.approach-repeat .approach-pattern-steps{display:flex;align-items:baseline;flex-wrap:wrap;gap:3px 8px;font-size:13px;font-weight:600;white-space:normal}.approach-pattern-steps>span{max-width:100%}.approach-pattern-arrow{color:var(--approach-teal)}
.approach-repeat>small{display:block;margin-top:10px;font-size:11px;color:var(--color-text-secondary)}
.approach-repeat .secondary-btn{background:var(--color-surface-base);border-color:#b4dcd3;color:var(--approach-teal);white-space:nowrap}
.approach-answer{padding:0 0 0 13px;border:0;border-left:3px solid var(--color-border-default);background:transparent}
.approach-brief{gap:20px}
.approach-answer p{margin:6px 0 0;font-size:14px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}
.approach-answer .approach-kicker{color:var(--color-text-secondary);display:inline-block;padding:3px 6px;border-radius:4px}
.approach-answer-opening{border-left-color:#d99527}.approach-answer-opening .approach-kicker{color:var(--approach-amber);background:#fff3da}
.approach-answer-loop{border-left-color:#9673c5}.approach-answer-loop .approach-kicker{color:var(--approach-violet);background:#f3edfc}
.approach-answer-cta{border-left-color:var(--approach-teal)}
.approach-answer button{border:0;background:transparent;padding:0;margin-top:9px;color:var(--color-text-secondary);font-size:11px;font-weight:650;text-align:left;cursor:pointer}
.approach-answer-opening button{color:var(--approach-amber)}.approach-answer-loop button{color:var(--approach-violet)}
.approach-tabs{display:flex;gap:20px;border-bottom:1px solid var(--color-border-default);overflow:auto}
.approach-tabs button{border:0;border-bottom:2px solid transparent;background:transparent;color:var(--color-text-secondary);padding:0 1px 12px;font:inherit;font-size:13px;white-space:nowrap;cursor:pointer}
.approach-tabs button[aria-pressed=true]{border-bottom-color:var(--approach-teal);color:var(--approach-teal);font-weight:750}
.approach-about,.approach-analysis-context{border:1px solid var(--color-border-default);border-radius:10px;padding:14px 16px;font-size:12px;color:var(--color-text-secondary)}
.approach-about>summary,.approach-analysis-context>summary{cursor:pointer;font-weight:650;line-height:1.5}
.approach-about p,.approach-analysis-context p,.approach-note p{margin:12px 0;font-size:13px;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere}
.approach-note{margin-top:20px}.approach-note h3{font-size:13px}
.approach-overview-drawer .approach-hooks-zone{padding:0;border:0;margin:0;min-width:0}
.approach-overview-drawer .approach-hooks-zone>.adspower-section-title{margin-bottom:16px}
.approach-analysis-workspace{display:grid;grid-template-columns:minmax(170px,.7fr) minmax(0,1.6fr);gap:18px;align-items:start}
.approach-stage-list{padding:14px;background:var(--color-surface-subtle);border:1px solid var(--color-border-default);border-radius:12px;min-width:0}
.approach-stage-list h4{font-size:11px;margin-bottom:12px}.approach-stage-list ol{display:grid;gap:5px;list-style:none;margin:0;padding:0;max-height:540px;overflow:auto}
.approach-stage-button{display:flex;gap:9px;padding:10px;width:100%;text-align:left;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--color-text-secondary);cursor:pointer}
.approach-stage-button>span:first-child{font-size:11px;font-weight:750;padding-top:1px}.approach-stage-button>span:last-child{display:grid;gap:5px;min-width:0}
.approach-stage-button b{font-size:12px;font-weight:650;line-height:1.4;overflow-wrap:anywhere}.approach-stage-button small{font-size:10px;font-weight:400}
.approach-stage-button[aria-pressed=true]{border-color:#b4dcd3;background:var(--color-surface-base);color:var(--approach-teal)}
.approach-beat-workspace{min-width:0}.approach-beat-navigation{display:flex;align-items:flex-end;gap:8px;margin-bottom:12px}
.approach-beat-navigation>label{display:grid;gap:5px;flex:1;min-width:0;color:var(--color-text-secondary);font-size:11px}
.approach-beat-navigation>button{height:38px}.approach-overview-drawer .approach-beat-navigation select{padding:8px;font-size:12px;height:38px}
.approach-selected-beat{border:1px solid var(--color-border-default);border-radius:12px;padding:18px;min-width:0;scroll-margin-top:20px}
.approach-selected-beat>header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:16px}
.approach-selected-beat>header>div:first-child{display:grid;gap:7px;min-width:0}
.approach-selected-beat .approach-kicker,.approach-selected-beat>header small{color:var(--color-text-secondary);font-size:10px}
.approach-overview-drawer .approach-selected-beat h4{color:var(--color-text-primary);font-size:15px;margin:0}
.approach-quote-languages{display:flex;gap:3px;flex-shrink:0;padding:3px;border-radius:7px;background:var(--color-surface-subtle)}
.approach-quote-languages button{border:0;padding:5px 7px;border-radius:5px;font-size:10px;color:var(--color-text-secondary);background:transparent;cursor:pointer}
.approach-quote-languages button[aria-pressed=true]{color:var(--approach-teal);background:var(--color-surface-base)}
.approach-overview-drawer .approach-selected-beat blockquote{margin:0 0 18px;padding:12px 14px;border-left:3px solid #d99527;border-radius:0 7px 7px 0;background:#fffbf1;color:var(--color-text-primary);font-style:normal;font-size:14px;line-height:1.65}
.approach-beat-explanation{display:grid;gap:16px}.approach-overview-drawer .approach-beat-explanation h5{font-size:10px;text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}
.approach-beat-explanation p{font-size:13px;line-height:1.6}.approach-beat-question{padding:12px;border-radius:8px;background:#f8f4fd}.approach-beat-question h5{color:var(--approach-violet)}
.approach-beat-more{border-top:1px solid var(--color-border-default);padding-top:12px;margin-top:16px;font-size:12px}.approach-beat-more>summary{cursor:pointer}.approach-beat-more p{margin-top:10px}
.approach-analysis-context{margin-top:18px}.approach-analysis-context>section{padding-top:16px}.approach-analysis-context h4{font-size:12px}
.approach-script-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;min-width:0}.approach-script-columns>section{min-width:0}
.approach-script-columns .adspower-section-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.approach-script-columns h3{font-size:13px}
.approach-script-read{font-size:13px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}
.approach-parameters{position:static;min-width:0;padding:18px;border:1px solid var(--color-border-default);border-radius:12px;background:var(--color-surface-base)}
.approach-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}.approach-fields label,.approach-edit-text{display:grid;gap:7px;color:var(--color-text-secondary);font-size:12px;min-width:0}.approach-field-wide{grid-column:1/-1}
.approach-text-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.approach-text-fields>section:last-child{grid-column:1/-1}
.approach-edit-footer{position:static;display:flex;align-items:center;gap:10px;flex-wrap:wrap;border-top:1px solid var(--color-border-default);padding-top:20px}.approach-edit-footer .approach-save-status{flex-basis:100%}
.approach-overview-drawer .approach-hooks-zone .approach-hooks-editor{padding:16px;border:1px solid var(--color-border-default);border-radius:10px;margin-top:16px}
.approach-overview-drawer button:focus-visible,.approach-overview-drawer summary:focus-visible{outline:2px solid var(--approach-teal);outline-offset:3px}
@media(max-width:760px){.approach-overview-drawer.adspower-detail-drawer.ux28{width:100vw;max-width:100vw}.approach-overview-drawer .approach-context{grid-template-columns:minmax(130px,.55fr) minmax(0,1fr);gap:14px}.approach-repeat{padding:16px}.approach-repeat p{font-size:14px}.approach-overview-drawer .preview-head-copy h2{font-size:22px}.approach-analysis-workspace{grid-template-columns:1fr}.approach-stage-list ol{display:flex;overflow:auto;max-height:none}.approach-stage-list li{min-width:155px}.approach-stage-button{height:100%}.approach-script-columns{grid-template-columns:1fr}.approach-answer{padding:11px}.approach-answer p{font-size:13px}}
@media(max-width:520px){.approach-overview-drawer .approach-context{grid-template-columns:1fr}.approach-overview-drawer .approach-editor-media{height:260px}.approach-repeat-head{align-items:flex-start;flex-direction:column}.approach-head-actions{gap:5px}.approach-head-actions .compact-btn{font-size:11px;padding:8px}.approach-tabs{gap:16px}.approach-text-fields,.approach-fields{grid-template-columns:1fr}.approach-selected-beat>header{flex-direction:column}.approach-overview-form{gap:18px}.approach-overview-drawer .preview-scroll{padding:14px}.approach-script-columns .adspower-section-title{flex-wrap:wrap}}
@media(max-width:520px){.approach-overview-form[data-mode=edit] .approach-context{grid-template-columns:1fr}.approach-overview-drawer .preview-head{gap:10px;flex-wrap:wrap}.approach-draft-status{font-size:10px}}

/* APPROACHES-04.1: full prompt fallback, outside the approach editor/form. */
.approach-prompt-dialog{width:min(760px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:20px;border:1px solid var(--color-border-default);color:var(--color-text-primary);overflow:auto}
.approach-prompt-dialog::backdrop{background:color-mix(in srgb,var(--color-info) 36%,transparent);backdrop-filter:blur(4px)}
.approach-prompt-dialog .modal-head{gap:16px}.approach-prompt-dialog h2{font-size:19px}.approach-prompt-label{display:block;margin-bottom:8px;color:var(--color-text-secondary);font-size:12px}
.approach-prompt-dialog textarea{display:block;width:100%;height:min(48dvh,420px);min-height:160px;resize:vertical;box-sizing:border-box;padding:12px;border:1px solid var(--color-border-default);border-radius:var(--radius-control);background:var(--color-surface-base);color:var(--color-text-primary);font:12px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace}
.approach-prompt-dialog .modal-actions{flex-wrap:wrap}

/* APPROACHES-UX-CLOSURE-01 · clearer library, original hook semantics intact. */
.approaches-page .approach-grid.adspower-grid.detailed{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:stretch}
.approaches-page .approach-card{display:flex;min-width:0;border-radius:13px;border:1px solid var(--color-border-default);background:var(--color-surface-base)}
.approaches-page .approach-card-open{display:flex;flex-direction:column;min-width:0;min-height:100%;border-radius:inherit;overflow:hidden;text-align:left}
.approaches-page .approach-card-open:hover .approach-card-cta{background:var(--color-surface-subtle)}
.approaches-page .approach-card-open:focus-visible{outline:3px solid var(--color-action-primary);outline-offset:-3px}
.approaches-page .approach-card-media{height:210px;min-height:0;background:var(--color-surface-contrast)}
.approaches-page .approach-card-media img,.approaches-page .approach-card-media video{object-fit:contain}
.approaches-page .approach-card-media .approach-no-media{min-height:100%;font-size:14px;color:var(--color-text-secondary)}
.approaches-page .approach-card-body{display:grid;gap:8px;padding:16px 17px 12px;align-content:start;flex:1;min-width:0}
.approaches-page .approach-card-title{font-size:19px;line-height:1.3;font-weight:750;letter-spacing:-.012em;overflow-wrap:anywhere}
.approaches-page .approach-card-context{font-size:14px;line-height:1.4;color:var(--color-text-secondary);overflow-wrap:anywhere}
.approaches-page .approach-card-status{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:3px}
.approaches-page .approach-section-pill{font-size:12px;font-weight:680;padding:5px 10px;color:var(--color-text-primary);background:var(--color-surface-subtle);border:1px solid var(--color-border-default)}
.approaches-page .approach-card-draft .approach-section-pill{border-style:dashed;color:var(--color-text-secondary)}
.approaches-page .approach-card-hooks{font-size:12px;color:var(--color-text-secondary)}
.approaches-page .approach-card-cta{margin:0 16px 15px;display:flex;align-items:center;justify-content:center;gap:10px;min-height:46px;border-radius:9px;border:1px solid var(--color-border-default);font-size:14px;font-weight:700;color:var(--color-text-primary);transition:background .1s}
.approaches-page .approach-card-cta>span{font-size:18px}
.approaches-page .adspower-status-row.workflow{gap:7px;flex-wrap:wrap}
.approaches-page .adspower-status-row.workflow button{min-height:40px}
.approach-overview-drawer #approach-overview-pattern[hidden],.approach-overview-drawer .approach-brief[hidden]{display:none!important}
.approach-overview-drawer .approach-repeat{padding:19px;border:1px solid var(--color-border-default);border-radius:12px;background:var(--color-surface-subtle)}
.approach-overview-drawer .approach-pattern-steps{font-size:15px;line-height:1.65}
.approach-overview-drawer .approach-answer p{font-size:15px;line-height:1.6}
.approach-overview-drawer .approach-answer button{font-size:13px;min-height:38px}
.approach-overview-drawer .approach-tabs{gap:22px}
.approach-overview-drawer .approach-tabs button{font-size:14px;min-height:44px;padding-top:12px}
.approach-overview-drawer .approach-core-preview{margin-top:14px;border:1px solid var(--color-border-default);border-radius:12px;padding:17px;min-width:0}
.approach-overview-drawer .approach-core-head{display:flex;gap:12px;justify-content:space-between;align-items:flex-start;flex-wrap:wrap}
.approach-overview-drawer .approach-core-head h3{font-size:18px;margin:0 0 4px}
.approach-overview-drawer .approach-core-head p{margin:0;color:var(--color-text-secondary);font-size:13px}
.approach-overview-drawer .approach-core-head button{min-height:42px;font-size:13px}
.approach-overview-drawer .approach-core-preview ol{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:6px}
.approach-overview-drawer .approach-core-preview li button{width:100%;display:flex;align-items:center;gap:12px;text-align:left;padding:10px 11px;min-height:46px;border:1px solid var(--color-border-default);background:var(--color-surface-base);color:var(--color-text-primary);border-radius:9px;cursor:pointer;font:inherit;font-size:14px;line-height:1.5}
.approach-overview-drawer .approach-core-preview li button:hover{background:var(--color-surface-subtle)}
.approach-overview-drawer .approach-core-index{flex:0 0 28px;height:28px;display:grid;place-items:center;border-radius:7px;background:var(--color-surface-subtle);color:var(--color-text-secondary);font-weight:700}
.approach-overview-drawer .approach-core-jump{margin-left:auto;color:var(--color-text-secondary)}
.approach-overview-drawer .approach-core-preview .approach-about{margin-top:13px;font-size:13px}
.approach-overview-drawer .approach-completion{padding:16px;border:1px solid var(--color-border-default);border-radius:12px;margin-bottom:16px;background:var(--color-surface-subtle)}
.approach-overview-drawer .approach-completion h3{font-size:17px;margin:0 0 9px}
.approach-overview-drawer .approach-completion ul{margin:0 0 13px;padding-left:21px;font-size:14px;line-height:1.8}
.approach-overview-drawer .approach-completion button{min-height:44px}
/* Readability without restructuring or reserializing the existing hook engine. */
.approach-overview-drawer .approach-stage-button{min-height:43px}
.approach-overview-drawer .approach-stage-button b{font-size:14px;line-height:1.45}
.approach-overview-drawer .approach-stage-button small{font-size:12px}
.approach-overview-drawer .approach-selected-beat h4{font-size:17px}
.approach-overview-drawer .approach-selected-beat blockquote{font-size:15px;line-height:1.65}
.approach-overview-drawer .approach-beat-explanation p{font-size:15px;line-height:1.65}
.approach-overview-drawer .approach-beat-explanation h5{font-size:12px}
.approach-overview-drawer .approach-script-read{font-size:15px;line-height:1.75}
.approach-overview-drawer .approach-script-columns h3{font-size:16px}
@media(max-width:1240px){.approaches-page .approach-grid.adspower-grid.detailed{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.approaches-page .approach-grid.adspower-grid.detailed{grid-template-columns:1fr}.approaches-page .approach-card-media{height:235px}.approach-overview-drawer .approach-core-head{flex-direction:column}.approach-overview-drawer .approach-selected-beat{padding:14px}}
@media(max-width:380px){.approaches-page .approach-card-body{padding:13px}.approaches-page .approach-card-title{font-size:18px}.approach-overview-drawer .approach-core-preview{padding:12px}}
@media(prefers-reduced-motion:reduce){.approaches-page .approach-card-cta{transition:none}}
