:root { --red:#ef3124; --red-dark:#ce2419; --ink:#202124; --muted:#757982; --line:#e8eaed; --canvas:#f5f6f8; --white:#fff; font-family:Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; color:var(--ink); font-synthesis:none; }
* { box-sizing:border-box; }
body { margin:0; background:var(--canvas); font-size:14px; line-height:1.55; }
button,input,select { font:inherit; }
button,a,input,select,summary { -webkit-tap-highlight-color:transparent; }
button { cursor:pointer; }
button:disabled { cursor:wait; opacity:.6; }
a { color:inherit; }
h1,h2,h3,h4,p { margin-top:0; }
h1,h2,h3,h4 { line-height:1.22; letter-spacing:-.025em; }
h1 { font-size:34px; font-weight:650; margin-bottom:12px; }
h2 { font-size:23px; font-weight:650; }
h3 { font-size:17px; font-weight:650; }
h4 { font-size:13px; letter-spacing:0; }
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible { outline:3px solid #427ee5; outline-offset:4px; }
.icon { width:20px; height:20px; flex-shrink:0; vertical-align:middle; }
.muted { color:var(--muted); }
.eyebrow { display:block; font-size:10px; letter-spacing:.14em; font-weight:750; margin-bottom:13px; }
.pill { display:inline-flex; align-items:center; gap:6px; padding:5px 9px; border-radius:6px; font-size:11px; line-height:1.4; font-weight:550; }
.pill .icon { width:14px; height:14px; }
.neutral { background:#f0f1f3; color:#62666e; }
.red { background:#fff0ed; color:#cc2a20; }
.button { display:inline-flex; justify-content:center; align-items:center; gap:18px; min-height:44px; padding:11px 19px; border:0; border-radius:9px; font-weight:600; font-size:13px; transition:background .15s; }
.button.primary { background:var(--red); color:white; }
.button.primary:hover { background:var(--red-dark); }
.button.secondary { background:#f1f2f4; color:var(--ink); }
.button.light { background:white; color:var(--ink); }
.full { width:100%; }
.brand { display:flex; align-items:center; gap:12px; font-size:20px; line-height:1.1; font-weight:750; letter-spacing:-.05em; }
.brand-mark { position:relative; color:var(--red); font-size:42px; font-weight:800; line-height:1; padding-bottom:6px; }
.brand-mark:after { content:''; position:absolute; background:var(--red); height:4px; width:27px; bottom:0; left:2px; }
.brand-sub { display:block; font-size:13px; font-weight:500; letter-spacing:0; margin-top:3px; }
.skip-link { position:fixed; left:20px; top:-60px; background:white; padding:10px; z-index:20; }
.skip-link:focus { top:10px; }
.boot { display:grid; place-items:center; min-height:100vh; color:var(--muted); }
.notice { padding:14px 17px; background:#f0f3f8; border:1px solid #e0e7f1; border-radius:10px; margin:0 0 22px; font-size:13px; }
.notice.error { background:#fff1ef; border-color:#f9d7d2; color:#a72d24; }
.notice.success { background:#eff8f1; border-color:#d4e9d8; color:#2f6741; }
.notice.warning { background:#fffaf0; border-color:#ead7a3; color:#765416; }
.digest-rejections { margin-top:12px; }
.digest-rejections summary { cursor:pointer; font-weight:550; }
.digest-rejections ul { margin:10px 0 0; padding-left:20px; }
.digest-rejections li+li { margin-top:6px; }
.digest-rank { font-weight:600; color:#424e60; }
.disclaimer { color:#8b8f97; font-size:11px; line-height:1.7; margin-top:35px; padding-top:20px; border-top:1px solid var(--line); }

/* Sign in */
.login-layout { display:grid; grid-template-columns:1fr 1fr; min-height:100vh; }
.login-story { background:#eeefF1; padding:40px 9%; display:flex; flex-direction:column; position:relative; overflow:hidden; }
.story-content { margin:auto 0; padding:70px 0; max-width:490px; position:relative; z-index:1; }
.story-content .eyebrow { color:var(--red); }
.story-content h1 { font-size:clamp(36px,3.7vw,58px); line-height:1.12; letter-spacing:-.055em; margin-bottom:24px; }
.story-content>p { color:#6b7078; font-size:15px; max-width:380px; line-height:1.8; }
.story-foot { color:#8b8f97; font-size:10px; letter-spacing:.12em; }
.story-diagram { display:flex; align-items:center; margin-top:50px; max-width:380px; }
.story-source { display:grid; justify-items:center; gap:9px; font-size:11px; color:#6c7077; }
.story-source>.icon { width:40px; height:40px; padding:9px; box-sizing:content-box; border-radius:14px; background:#fff; color:#626772; }
.story-core { width:72px; height:72px; display:grid; place-items:center; border-radius:22px; background:var(--red); color:white; box-shadow:0 14px 35px #ef31242b; flex-shrink:0; }
.story-core>.icon { width:34px; height:34px; }
.story-line { flex:1; height:1px; background:#cdd0d6; margin:0 12px 22px; }
.login-panel { display:flex; flex-direction:column; justify-content:center; padding:60px 12%; background:white; }
.login-box { max-width:390px; margin:auto; width:100%; }
.login-box>h2 { font-size:36px; margin:24px 0 16px; letter-spacing:-.045em; }
.login-form { display:flex; flex-direction:column; margin-top:30px; gap:9px; }
.login-form label { font-size:12px; color:#5e626a; margin-top:8px; }
.login-form input,.login-form select { width:100%; min-height:49px; border:1px solid #e0e2e6; border-radius:9px; padding:12px; background:#fafafb; font-size:12px; color:var(--ink); }
.login-form .button { margin-top:15px; }
.login-note { color:#898d95; font-size:11px; line-height:1.8; margin-top:22px; }
.login-panel>.disclaimer { max-width:390px; margin:45px auto 0; }

/* App shell */
.app-shell { display:flex; min-height:100vh; }
.sidebar { width:230px; background:white; border-right:1px solid var(--line); position:fixed; inset:0 auto 0 0; display:flex; flex-direction:column; padding:30px 18px 20px; }
.sidebar .brand { margin:0 13px 45px; }
.workspace-label { font-size:9px; font-weight:650; letter-spacing:.12em; color:#969ba4; margin:0 13px 15px; }
.nav-item { display:flex; align-items:center; gap:12px; width:100%; min-height:46px; padding:11px 13px; margin:4px 0; background:transparent; border:0; border-radius:8px; text-align:left; color:#777c85; font-size:13px; font-weight:550; }
.nav-item:hover { background:#f7f8fa; }
.nav-item.active { background:#fff1ee; color:#d92a1e; }
.new-label { font-size:9px; margin-left:auto; padding:2px 5px; border-radius:4px; background:#ffe0d9; }
.sidebar-bottom { margin-top:auto; }
.prototype-note { display:flex; align-items:center; gap:7px; color:#999da5; font-size:10px; padding:14px 11px; }
.status-dot { display:inline-block; width:6px; height:6px; border-radius:100%; background:#749a81; flex-shrink:0; }
.status-dot.pending { background:#b69962; }
.user-row { border-top:1px solid var(--line); padding:21px 8px 12px; display:flex; align-items:center; gap:10px; }
.avatar { width:34px; height:34px; border-radius:50%; background:#eceef2; display:grid; place-items:center; font-weight:650; color:#686e78; }
.user-row strong { display:block; font-size:12px; font-weight:600; }
.user-row small { display:block; font-size:9px; color:#8d929b; }
.logout { display:flex; align-items:center; gap:9px; color:#969aa2; background:none; border:0; font-size:11px; padding:8px 12px; }
.logout>.icon { width:15px; height:15px; }
.workspace { margin-left:230px; flex:1; min-width:0; }
.topbar { background:white; height:89px; display:flex; align-items:center; justify-content:space-between; padding:0 42px; border-bottom:1px solid var(--line); }
.company-switch { display:flex; align-items:center; gap:12px; }
.company-icon { width:35px; height:35px; background:#f2f3f5; border-radius:9px; display:grid; place-items:center; color:#686d76; }
.company-switch strong { font-size:12px; font-weight:600; }
.company-switch small { display:block; color:#9297a0; font-size:10px; margin-top:3px; }
.company-switch select { border:0; background:none; font-weight:600; }
.main-content { padding:35px 42px 25px; max-width:1600px; margin:auto; }
.page-heading { margin:9px 0 30px; }
.page-heading>p { font-size:14px; }
.panel { background:white; border:1px solid var(--line); border-radius:14px; padding:25px; }
.home-hero { display:flex; justify-content:space-between; align-items:center; min-height:305px; padding:35px 39px; background:#202126; border-radius:16px; color:white; overflow:hidden; position:relative; }
.home-hero>div:first-child { position:relative; z-index:1; }
.dark-pill { background:#ffffff12; color:#ededf2; }
.home-hero h2 { font-size:33px; margin:17px 0 13px; letter-spacing:-.045em; }
.home-hero p { color:#b9bac2; max-width:450px; font-size:13px; margin-bottom:23px; }
.hero-graphic { width:210px; height:210px; position:relative; display:grid; place-items:center; flex-shrink:0; margin-left:20px; }
.graphic-ring { position:absolute; border:1px solid #ffffff16; border-radius:50%; }
.ring-one { inset:0; }
.ring-two { inset:25px; }
.graphic-center { display:grid; place-items:center; width:108px; height:108px; border-radius:30px; background:var(--red); transform:rotate(-12deg); box-shadow:0 0 70px #ef312433; }
.graphic-center>.icon { width:48px; height:48px; transform:rotate(12deg); }
.home-bottom { display:grid; grid-template-columns:1fr 1.3fr; gap:22px; margin-top:23px; }
.profile-panel h3 { margin:7px 0; }
.profile-panel>p { font-size:12px; margin-bottom:23px; }
.profile-facts { margin:0; font-size:12px; }
.profile-facts>div { display:flex; justify-content:space-between; gap:20px; padding:10px 0; border-bottom:1px solid #f0f1f3; }
.profile-facts dt { color:#838893; }
.profile-facts dd { margin:0; font-weight:500; text-align:right; }
.context-note { display:flex; align-items:flex-start; gap:8px; color:#9296a0; font-size:10px; margin:19px 0; line-height:1.7; }
.context-note>.icon { width:14px; height:14px; margin-top:2px; color:#8d959f; }
.orientation>h3 { margin-bottom:26px; }
.orientation-step { display:flex; gap:16px; margin-top:18px; }
.orientation-step>span { color:#c2c5cc; font-size:12px; padding-top:1px; }
.orientation-step strong { font-size:13px; font-weight:550; }
.orientation-step p { margin:4px 0 0; font-size:12px; color:#858a95; }

/* Analytics */
.breadcrumb { display:flex; align-items:center; gap:11px; color:#8e939d; font-size:10px; margin:0 0 25px; }
.breadcrumb>span { color:#bdc0c7; }
.analytics-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:28px; }
.analytics-heading h1 { font-size:30px; }
.analytics-heading p { font-size:12px; margin:0; }
.analytics-heading .eyebrow { margin-bottom:9px; }
.analytics-heading>.pill { white-space:nowrap; }
.analytics-grid { display:grid; grid-template-columns:minmax(0,1fr) 280px; gap:24px; align-items:start; }
.analysis-callout { display:flex; align-items:flex-start; gap:17px; background:white; border:1px solid var(--line); padding:25px; border-radius:14px; }
.callout-icon { display:grid; place-items:center; flex-shrink:0; width:42px; height:42px; border-radius:12px; color:var(--red); background:#fff0ed; }
.analysis-callout h2 { font-size:20px; margin:3px 0 10px; }
.analysis-callout p { font-size:12px; color:#828793; margin-bottom:17px; }
.input-indicators { display:flex; flex-wrap:wrap; gap:8px 14px; margin-bottom:21px; font-size:10px; color:#7b818c; }
.input-indicators>span { display:flex; align-items:center; gap:4px; }
.input-indicators .icon { width:12px; height:12px; color:#7d9d88; }
.connection-note { display:flex; align-items:center; gap:8px; font-size:10px; color:#9398a2; margin:12px 2px 27px; }
.section-heading { display:flex; align-items:center; gap:10px; margin:26px 0 16px; }
.section-heading h2 { font-size:17px; margin:0; }
.count { padding:2px 7px; font-size:10px; background:#e9ebef; border-radius:5px; color:#7f8590; }
.filter-tabs { display:flex; gap:5px; margin-bottom:15px; flex-wrap:wrap; }
.filter-tabs button { border:0; background:transparent; border-radius:7px; padding:8px 12px; color:#858a94; font-size:11px; }
.filter-tabs button.selected { background:#e9ebef; color:#383c44; font-weight:550; }
.materials-list { display:grid; gap:12px; }
.material-card { display:flex; align-items:flex-start; gap:15px; padding:24px; border-radius:12px; background:white; border:1px solid var(--line); }
.material-icon { display:grid; place-items:center; width:35px; height:35px; border-radius:9px; background:#f4f5f7; color:#818895; flex-shrink:0; }
.material-content { min-width:0; }
.material-meta { display:flex; align-items:center; flex-wrap:wrap; gap:8px 12px; color:#969ba5; font-size:10px; margin-bottom:12px; }
.material-meta .pill { font-size:9px; }
.material-card h3 { font-size:16px; line-height:1.45; margin-bottom:10px; }
.material-excerpt { color:#838994; font-size:12px; line-height:1.8; margin-bottom:13px; overflow-wrap:anywhere; }
.source-link { display:inline-flex; align-items:center; gap:6px; text-decoration:none; color:#535963; font-size:10px; font-weight:550; }
.source-link:hover { color:var(--red); }
.source-link>.icon { width:13px; height:13px; }
.analytics-aside .profile-panel { padding:22px; }
.analytics-aside .profile-panel h3 { font-size:16px; }
.reading-guide { padding:24px 9px; }
.reading-guide h3 { font-size:12px; line-height:1.5; }
.reading-guide p { font-size:11px; color:#959aa5; line-height:1.8; }
.empty-state { border:1px dashed #daddE3; border-radius:12px; text-align:center; padding:35px 20px; color:#9a9fa9; font-size:12px; }
.empty-state>.icon { width:30px; height:30px; margin-bottom:10px; }
.empty-state h3 { color:#747a85; font-size:14px; margin-bottom:8px; }
.empty-state p { max-width:330px; margin:auto; }
.insight-card { margin:15px 0; }
.insight-card h2 { font-size:23px; margin-bottom:23px; }
.insight-section { margin:19px 0; }
.insight-section h4 { margin-bottom:9px; color:#5e6470; }
.insight-section p,.insight-section li { font-size:12px; color:#747b87; line-height:1.8; overflow-wrap:anywhere; }
.insight-section ul { padding-left:18px; }
.impact-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.risk h4 { color:#b75a48; }
.opportunity h4 { color:#537d64; }
.evidence-links { display:flex; flex-direction:column; gap:9px; margin-top:20px; }
.evidence-links a { display:flex; align-items:center; gap:7px; font-size:11px; text-decoration:none; color:#757d8a; }
.evidence-links .icon { width:13px; height:13px; }
.trace { font-size:10px; color:#999eA8; margin-top:20px; }
.trace summary { cursor:pointer; }
.question-help { margin-top:23px; padding-top:21px; border-top:1px solid var(--line); }
.question-help h4 { margin:0 0 8px; font-size:16px; }
.question-help p { margin:0 0 12px; font-size:14px; color:var(--muted); }
.question-help .button { font-size:13px; }
.question-form { display:flex; gap:9px; margin-top:12px; }
.question-form input { min-width:0; flex:1; border:1px solid #dfe3e9; border-radius:8px; padding:10px 12px; font-size:11px; }
.question-form .button { font-size:11px; min-height:40px; }
.answer-panel { margin-top:16px; }
.answer-panel h3 { font-size:14px; }
.answer-panel p { color:#777e8a; font-size:12px; white-space:pre-wrap; }

/* Read the decision first, then its evidence and optional detail. */
.insight-card { padding:clamp(20px,3vw,32px); }
.insight-card h2 { font-size:clamp(23px,2vw,29px); line-height:1.28; margin:18px 0 12px; overflow-wrap:anywhere; }
.insight-meta { display:flex; flex-wrap:wrap; gap:8px 16px; color:#626974; font-size:12px; }
.prior-analysis-note { background:#f5f6f8; border-left:3px solid #a3adba; padding:12px 14px; margin:16px 0; border-radius:6px; color:#586372; font-size:13px; }
.insight-card .material-meta { color:#656d79; font-size:12px; }
.insight-card .material-meta .pill { font-size:11px; }
.significance-high { background:#fff0ed; color:#a72d24; }
.significance-medium { background:#fff5df; color:#805d13; }
.significance-low { background:#edf2f8; color:#4f6178; }
.event-continuation { font-size:17px; color:#505966; line-height:1.6; margin-bottom:12px; }
.significance-reason { font-size:13px; color:#616a77; margin:0 0 24px; }
.insight-section h4 { font-size:17px; color:#333c49; margin-bottom:12px; }
.insight-section p,.insight-section li { font-size:15px; color:#505966; line-height:1.75; }
.insight-section p:last-child,.insight-section ul:last-child { margin-bottom:0; }
.insight-section ul { margin-top:0; padding-left:20px; }
.insight-section li+li { margin-top:10px; }
.company-relevance { border-top:1px solid var(--line); padding-top:22px; }
.uncertainty-block { border:1px solid #ead7a3; border-left:4px solid #bd8b24; background:#fffaf0; padding:20px; border-radius:10px; }
.uncertainty-block h4 { color:#765416; }
.impact-grid { gap:16px; margin:22px 0; }
.impact-grid .insight-section { border:1px solid var(--line); border-radius:10px; padding:20px; margin:0; background:#fafbfc; }
.risk h4 { color:#a54232; }
.opportunity h4 { color:#356447; }
.bank-block { background:#f5f6f8; border-radius:10px; padding:20px; }
.bank-block p.bank-period { font-size:12px; color:#636c78; margin-bottom:12px; }
.next-actions { padding:8px 0; }
.insight-sources { border-top:1px solid var(--line); padding-top:22px; margin-top:24px; }
.insight-sources h3 { font-size:17px; }
.insight-sources ul { list-style:none; margin:0; padding:0; display:grid; gap:12px; }
.insight-sources li { border:1px solid var(--line); border-radius:10px; padding:16px; display:flex; flex-direction:column; gap:6px; min-width:0; }
.source-kind { color:#69727f; font-size:11px; }
.insight-sources strong { font-size:14px; overflow-wrap:anywhere; }
.source-date { color:#626b78; font-size:12px; }
.insight-sources .evidence-links { flex-direction:row; flex-wrap:wrap; margin-top:2px; }
.insight-sources .evidence-links a { font-size:12px; color:#424e60; text-decoration:underline; text-underline-offset:3px; }
.insight-card .trace { color:#626b78; font-size:12px; border-top:1px solid var(--line); padding-top:15px; }
.insight-card .trace summary { font-size:14px; font-weight:550; color:#404b5b; }
.insight-card blockquote { margin:12px 0; padding-left:15px; border-left:3px solid #d2d8e2; overflow-wrap:anywhere; }
.insight-card .question-form input { font-size:14px; }
.insight-card .question-form .button { font-size:13px; }

@media(min-width:1600px) { .main-content { padding-left:60px; padding-right:60px; } .analytics-grid { grid-template-columns:minmax(0,1fr) 320px; gap:30px; } }
@media(max-width:1150px) { .sidebar { width:195px; padding-left:12px; padding-right:12px; } .workspace { margin-left:195px; } .main-content { padding:28px; } .topbar { padding:0 28px; } .analytics-grid { grid-template-columns:minmax(0,1fr) 245px; gap:18px; } .analysis-callout { padding:21px; } .analysis-callout>.callout-icon { display:none; } .analytics-heading>.pill { display:none; } .hero-graphic { width:160px; height:160px; } }
@media(max-width:900px) { .analytics-grid { grid-template-columns:1fr; } .analytics-aside { display:none; } .hero-graphic { display:none; } .home-bottom { grid-template-columns:1fr; } .login-story { padding:35px 9%; } .login-panel { padding:45px 9%; } }
@media(max-width:650px) { .login-layout { grid-template-columns:1fr; } .login-story { padding:24px; } .story-content { padding:40px 0 25px; } .story-content h1 { font-size:35px; } .story-content h1 br { display:none; } .story-diagram,.story-foot { display:none; } .login-panel { padding:40px 25px; } .sidebar { position:static; width:100%; padding:16px 20px; border-bottom:1px solid var(--line); border-right:0; flex-direction:row; align-items:center; gap:20px; } .sidebar .brand { margin:0; font-size:16px; } .sidebar .brand-mark { font-size:31px; } .sidebar .brand-mark:after { width:20px; height:3px; } .sidebar .brand-sub { font-size:10px; } .workspace-label,.sidebar-bottom,.new-label { display:none; } .sidebar nav { display:flex; margin-left:auto; } .nav-item { padding:8px; min-height:38px; font-size:11px; } .nav-item .icon { width:16px; height:16px; } .app-shell { display:block; } .workspace { margin-left:0; } .topbar { height:70px; padding:0 20px; } .topbar>.pill { display:none; } .main-content { padding:24px 20px; } h1,.analytics-heading h1 { font-size:26px; } .home-hero { padding:27px; min-height:300px; } .home-hero h2 { font-size:28px; } .material-card { padding:20px; } .material-icon { display:none; } .analysis-callout { padding:23px; } .impact-grid { grid-template-columns:1fr; gap:0; } .question-form { flex-direction:column; } }
@media(prefers-reduced-motion:reduce) { * { transition:none !important; scroll-behavior:auto !important; } }
/* Evidence is local to its statement; detailed quotes remain collapsed. */
.field-evidence, .field-evidence-unmapped { margin-top: 8px; font-size: 13px; line-height: 1.5; }
.field-evidence > summary { color: #495466; cursor: pointer; }
.field-evidence-unmapped > summary { color: #737e8d; cursor: pointer; font-size: 12px; }
.field-evidence-claim { padding: 10px 12px; margin-top: 8px; border-left: 2px solid #dce2ea; background: #f7f8fa; border-radius: 0 8px 8px 0; }
.field-evidence-claim p { margin: 6px 0; }
.field-evidence-claim blockquote { margin: 8px 0; padding-left: 12px; border-left: 2px solid #c9d1dc; }
.company-evidence { color: #536476; }
.bank-block:has(> .pill.red) { background: #fff5f3; border-left: 3px solid #ef3124; }

/* Current collection: readable decisions first, optional detail stays folded. */
.analytics-main { min-width:0; }
.current-collection > .section-heading { margin-top:28px; }
.insight-card { padding:clamp(20px,3vw,30px); }
.insight-card h2 { font-size:clamp(21px,1.8vw,27px); line-height:1.3; max-width:36ch; }
.insight-card p,.insight-card li,.clarification-card p,.clarification-card li { max-width:75ch; }
.event-description { margin:12px 0 20px; font-size:15px; color:#384454; }
.event-description summary { cursor:pointer; text-decoration:underline; text-underline-offset:3px; }
.event-description p,.event-summary { margin-top:12px; font-size:16px; line-height:1.65; }
.insight-meta { font-size:12px; color:#5c6572; }
.provenance-note,.collection-note { font-size:12px; line-height:1.6; color:#626b78; margin:16px 0; }
.insight-section { margin:20px 0; }
.company-relevance { border:0; padding-top:8px; }
.uncertainty-block { border:0; border-left:3px solid #bd8b24; padding:12px 16px; border-radius:0 8px 8px 0; }
.impact-grid .insight-section { border:0; padding:0; background:transparent; border-radius:0; }
.more-consequences { margin:10px 0; color:#505966; font-size:14px; }
.more-consequences summary,.previous-collections summary,.technical-corpus summary { cursor:pointer; }
.previous-collections,.technical-corpus { border-top:1px solid var(--line); margin-top:28px; padding-top:18px; color:#505966; font-size:14px; }
.previous-collection { margin-top:18px; }
.bank-position { background:#fff3f1; border-left:4px solid #ef3124; border-radius:0 10px 10px 0; padding:20px; }
.bank-position h4 { display:flex; align-items:center; gap:16px; color:#8b221c; }
.bank-position .bank-position-text { color:#6b241f; font-weight:500; }
.bank-mark { font-size:26px; color:#ef3124; flex-shrink:0; line-height:1; margin-bottom:5px; }
.bank-mark:after { width:18px; height:3px; bottom:-4px; }
.bank-position .bank-citation { font-size:12px; color:#734c47; line-height:1.5; }
.bank-citation a { margin-left:10px; color:#8b221c; }
.bank-absence { margin:20px 0; padding:12px 0; color:#626b78; font-size:13px; line-height:1.6; }
.bank-absence > p { margin-bottom:8px; }
.bank-absence summary { cursor:pointer; }
.insight-sources li { border:0; border-radius:0; padding:8px 0; gap:4px; }
.insight-sources ul { gap:6px; }
.field-evidence { font-size:12px; margin-top:6px; }
.field-evidence > summary { color:#596677; }
.technical-details { margin-top:20px; }
.technical-details > details { margin:12px 0; }
.card-discussion { margin-top:18px; }
.text-button { border:0; background:transparent; padding:8px 0; color:#525e70; text-decoration:underline; text-underline-offset:3px; font-size:13px; }
.answer-panel { border:0; border-left:3px solid #d4dce6; border-radius:0; background:#fafbfc; padding:16px 20px; }
.clarification-card { padding:16px 0; border-top:1px solid var(--line); }
.clarification-card h4 { margin:10px 0; font-size:17px; }
.clarification-card .insight-section p,.clarification-card .insight-section li { color:#414c5c; font-size:14px; line-height:1.7; }
.clarification-card .impact-grid { display:block; }
.discussion-turn > h4 { font-size:15px; color:#303a48; margin:16px 0; }
@media(max-width:720px) {
  .impact-grid { grid-template-columns:1fr; gap:8px; }
  .insight-card .insight-section h4 { font-size:16px; }
  .insight-section p,.insight-section li { font-size:14px; line-height:1.7; }
  .bank-position { padding:16px; }
  .bank-position h4 { align-items:flex-start; gap:12px; }
  .insight-card .question-form { flex-direction:column; }
  .answer-panel { padding:12px; }
}
