.bank-launch { margin-top:80px; }
.bank-launch-card { display:flex;align-items:center;justify-content:space-between;gap:40px;padding:48px;border:1px solid var(--border);border-radius:28px;background:var(--surface); }
.bank-launch h2 { margin:10px 0 16px;font-size:clamp(34px,5vw,60px);letter-spacing:-.05em;line-height:1.08; }
.bank-launch p:not(.overline) { max-width:660px;line-height:1.6;color:var(--secondary);font-size:18px; }
.bank-launch button { flex-shrink:0;white-space:nowrap; }
.bank-launch-tags { display:flex;gap:8px;flex-wrap:wrap;margin-top:24px; }
.bank-launch-tags span,.bank-badge { border:1px solid var(--border);border-radius:30px;padding:7px 12px;font-size:12px;color:var(--secondary); }
.bank-dialog { width:min(1120px,calc(100% - 32px));max-width:none;height:90dvh;max-height:90dvh;border:1px solid var(--border);border-radius:24px;padding:0;color:var(--text);background:var(--page);box-shadow:var(--shadow); }
.bank-dialog::backdrop { background:rgba(0,0,0,.65);backdrop-filter:blur(7px); }
.bank-header { position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:20px;background:var(--surface);border-bottom:1px solid var(--border);padding:22px 28px; }
.bank-header h2 { margin:4px 0 0;font-size:28px;letter-spacing:-.04em; }.bank-header .overline {font-size:10px;margin:0;}
.bank-body { padding:28px; }.bank-filters {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}
.bank-filters label { display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:600;min-width:0; }
.bank-filters input,.bank-filters select {width:100%;background:var(--surface);border:1px solid var(--border);border-radius:10px;color:var(--text);padding:12px;min-height:45px;}
.bank-search {grid-column:span 2;}.bank-toolbar {display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin:28px 0 18px;}.bank-toolbar p {color:var(--secondary);font-size:13px;}
.bank-view-tabs {display:flex;gap:4px;padding:4px;background:var(--surface-muted);border-radius:12px;}.bank-view-tabs button {border:0;border-radius:8px;padding:10px 14px;background:transparent;color:var(--secondary);cursor:pointer;font-size:13px;}.bank-view-tabs button[aria-pressed="true"]{background:var(--surface);color:var(--text);box-shadow:0 2px 6px rgba(0,0,0,.07);}
.bank-results {display:grid;gap:16px;}.bank-question {background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:24px;min-width:0;}.bank-question-top {display:flex;justify-content:space-between;gap:12px;align-items:start;}.bank-question-meta {display:flex;flex-wrap:wrap;gap:6px;}.bank-question h3 {font-size:13px;color:var(--secondary);font-weight:500;margin:16px 0 6px;}.bank-question-text,.bank-answer {white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8;font-size:17px;margin:10px 0 20px;}.bank-answer {font-size:15px;}.bank-question-actions {display:flex;gap:10px;align-items:center;flex-wrap:wrap;}.bank-question button {cursor:pointer;}.bank-save {border:1px solid var(--border);background:var(--surface-muted);border-radius:9px;padding:9px 12px;font-size:13px;white-space:nowrap;}.bank-save[aria-pressed="true"]{background:var(--blue-soft);color:var(--blue);border-color:var(--blue);}.bank-question details {margin:20px 0 0;border-top:1px solid var(--border);padding-top:16px;}.bank-question summary {cursor:pointer;color:var(--blue);font-size:14px;}.bank-question-source {display:block;color:var(--secondary);font-size:11px;margin-top:16px;line-height:1.5;}.bank-question-source a {color:var(--blue);}.bank-empty {padding:50px 20px;text-align:center;border:1px dashed var(--border);border-radius:18px;color:var(--secondary);}.bank-empty h3 {color:var(--text);}.bank-footnote {font-size:12px;color:var(--secondary);line-height:1.7;margin-top:24px;}.bank-session-bar {display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:18px;}.bank-session-bar p {font-size:13px;color:var(--secondary);}.bank-dialog button:focus-visible,.bank-dialog input:focus-visible,.bank-dialog select:focus-visible,.bank-dialog summary:focus-visible {outline:3px solid var(--blue);outline-offset:3px;}#bank-more {margin-top:20px;}.bank-loading {padding:40px;text-align:center;color:var(--secondary);}
@media(max-width:760px){.bank-launch-card{padding:28px;flex-direction:column;align-items:start;gap:22px;}.bank-filters{grid-template-columns:repeat(2,minmax(0,1fr));}.bank-body{padding:18px;}.bank-header{padding:16px 18px;}.bank-dialog{width:100%;height:100dvh;max-height:100dvh;border-radius:0;border:0;}.bank-question{padding:18px;}.bank-question-text{font-size:16px;}.bank-question-top{flex-wrap:wrap;}.bank-launch{margin-top:45px;}.bank-session-bar{flex-wrap:wrap;}}
@media(prefers-reduced-motion:reduce){.bank-dialog::backdrop{backdrop-filter:none;}}
.bank-diagram{overflow:auto;max-width:100%;padding:16px;border:1px solid var(--border);border-radius:12px;margin:16px 0}.bank-diagram svg{max-width:100%;height:auto}.bank-figure-missing{color:var(--secondary);font-size:13px;background:var(--surface-muted);border-radius:10px;padding:14px;line-height:1.6}
.bank-filters{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px}.bank-primary-filters{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.bank-search{grid-column:1/-1}.bank-advanced{min-width:0;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.bank-advanced summary{list-style:none;padding:13px 16px;display:flex;justify-content:space-between;cursor:pointer;font-size:13px;font-weight:600}.bank-advanced summary::-webkit-details-marker{display:none}.bank-advanced-grid{padding:0 16px 16px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.bank-reset,.bank-copy{border:0;background:transparent;color:var(--secondary);font-size:12px;cursor:pointer;padding:10px 8px}.bank-rich{white-space:normal}.bank-rich p{margin:0 0 14px}.bank-rich p:last-child{margin-bottom:0}.bank-rich ul,.bank-rich ol{padding-left:24px}.bank-rich table{display:block;max-width:100%;overflow:auto;border-collapse:collapse;font-size:14px}.bank-rich th,.bank-rich td{padding:9px 12px;border:1px solid var(--border)}.bank-rich pre{padding:16px;border-radius:10px;background:var(--surface-muted);overflow:auto;font-size:13px;line-height:1.65}.bank-rich .katex-display{overflow-x:auto;overflow-y:hidden;padding:8px 0}.bank-rich .katex{font-size:1.07em}.bank-figure{display:block;max-width:560px;margin:0 0 22px;color:var(--blue);font-size:12px}.bank-figure img{display:block;max-width:100%;max-height:340px;object-fit:contain;border-radius:12px;margin-bottom:8px;background:#fff}.bank-pro-tip{border-left:3px solid var(--blue);background:var(--blue-soft);padding:15px 18px;border-radius:0 10px 10px 0;font-size:14px;margin:16px 0}.bank-pro-tip strong{display:block;margin-bottom:8px}.bank-video-links{display:grid;gap:8px;margin-top:20px;font-size:13px}.bank-video-links p{margin:0;color:var(--secondary)}.bank-video-links a{color:var(--blue);line-height:1.5}.bank-answer-note{font-size:11px;color:var(--secondary);margin:18px 0 0;line-height:1.6}.bank-dialog{overscroll-behavior:contain}.bank-header button{min-height:44px}.bank-question-actions button{min-height:44px}.bank-filters input,.bank-filters select{font-size:16px}.bank-toolbar{padding-bottom:14px;border-bottom:1px solid var(--border)}
@media(max-width:760px){.bank-primary-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.bank-primary-filters label:nth-child(3){grid-column:1/-1}.bank-primary-filters label:nth-child(5){grid-column:1/-1}.bank-dialog{scroll-padding-top:105px}.bank-header{padding-top:max(16px,env(safe-area-inset-top))}.bank-body{padding-bottom:max(24px,env(safe-area-inset-bottom))}.bank-view-tabs{width:100%}.bank-view-tabs button{flex:1;min-height:44px}.bank-session-bar{position:sticky;bottom:0;padding:14px 0;background:var(--page);border-top:1px solid var(--border)}.bank-session-bar button{min-height:48px}.bank-badge{font-size:11px;padding:6px 9px}.bank-question-text{font-size:16px;line-height:1.85}.bank-copy{padding:10px 4px}.bank-launch-tags{display:none}.bank-launch-card{border-radius:20px}.bank-primary-filters select{padding-right:24px}}

.bank-advanced-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:760px){.bank-advanced-grid{grid-template-columns:minmax(0,1fr)}}
