/* Reflow rather than clipped overflow: preserve touch scrolling and text selection. */
.pattern-workspace,.pattern-launch{min-width:0;max-width:100%;overflow-wrap:anywhere}
.pattern-launch{padding:20px;border:1px solid var(--line);border-radius:16px;margin:20px 0;display:grid;gap:12px}
.pattern-launch>button{width:100%;white-space:normal}
.pattern-workspace{display:grid;gap:20px}
.pattern-workspace [hidden]{display:none!important}
.pattern-tabs,.pattern-actions{display:flex;flex-wrap:wrap;gap:12px;min-width:0}
.pattern-tabs>button,.pattern-actions>button{flex:1 1 140px;white-space:normal;min-height:44px}
.pattern-tabs>button[aria-pressed=true]{border-color:var(--gold);box-shadow:inset 0 -3px var(--gold)}
.pattern-panel,.pattern-section-body,.pattern-editor{display:grid;gap:20px;min-width:0}
.pattern-panel>h3,.pattern-card>h3{margin:0}
.pattern-field{display:grid;gap:10px;min-width:0;max-width:100%;line-height:1.5}
.pattern-field>span{font-size:14px;font-weight:700;letter-spacing:.02em}
.pattern-field>:is(input:not([type=checkbox]),select,textarea){width:100%;min-width:0;max-width:100%;box-sizing:border-box;font-size:16px}
.pattern-field>textarea{min-height:120px;resize:vertical}
.pattern-field:has(>input[type=checkbox]){grid-template-columns:24px minmax(0,1fr);align-items:start;gap:12px}
.pattern-field>input[type=checkbox]{grid-column:1;grid-row:1;width:22px;height:22px;margin:2px 0}
.pattern-field:has(>input[type=checkbox])>span{grid-column:2}
.pattern-card-grid,.pattern-candidates,.pattern-checks{display:grid;gap:20px;min-width:0}
.pattern-card,.pattern-claim,.pattern-retained-evidence{display:grid;gap:16px;padding:20px;border:1px solid var(--line);border-radius:16px;min-width:0}
.pattern-card>button{justify-self:start;max-width:100%;white-space:normal}
.pattern-card p,.pattern-claim p{margin:0;white-space:pre-wrap}
.pattern-section,.pattern-evidence{border:1px solid var(--line);border-radius:12px;min-width:0}
.pattern-section>summary,.pattern-evidence>summary{padding:16px;cursor:pointer;font-weight:700;line-height:1.5;min-height:44px;box-sizing:border-box}
.pattern-section-body,.pattern-evidence-body{padding:0 16px 20px}
.pattern-evidence-body{display:grid;gap:14px}
.pattern-evidence-body>button{max-width:100%;white-space:normal}
.pattern-verse{font-family:Georgia,serif;font-size:19px;line-height:1.7}
.pattern-match{background:#e0c36e;color:#172920;padding:0 2px}
.pattern-status:empty{display:none}
.pattern-status{padding:12px;border-left:3px solid var(--gold);line-height:1.6}
.pattern-share-preview{white-space:pre-wrap;overflow-wrap:anywhere;min-width:0;max-width:100%;font:inherit;line-height:1.65;border:1px solid var(--line);border-radius:12px;padding:16px;margin:0}
.pattern-compare-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:20px;min-width:0}
.pattern-claim-editor,.pattern-extra-claim{display:grid;gap:14px;min-width:0;padding:16px;border:1px solid var(--line);border-radius:12px}
.pattern-claim-editor h4{margin:0;line-height:1.6}
.pattern-claim-editor .pattern-field>span{font-weight:500;letter-spacing:0}
.pattern-version-notice{padding:12px;border-left:3px solid var(--gold);line-height:1.6;overflow-wrap:anywhere}
@media(min-width:1000px){.pattern-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:550px){.pattern-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.pattern-tabs>button{font-size:14px;padding:10px 6px}.pattern-actions{display:grid;grid-template-columns:minmax(0,1fr)}.pattern-card{padding:16px}.pattern-card>button{width:100%;justify-self:stretch}}
