:root { --ink:#14223d; --muted:#6c7891; --accent:#176ed0; --accent2:#0b4eac; --a-soft:#e9f2ff; --bg:#f4f7fc; --line:#e1e7f1; --card:#fff; --green:#05764b; --g-soft:#e5f6ed; --red:#be344b; --r-soft:#fff0f2; --amber:#9c6300; --amber-soft:#fff6dc; --navy:#101a36; --shadow:0 12px 35px rgba(28,47,88,.045); }
* { box-sizing:border-box } html { scroll-behavior:smooth } body { margin:0; font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif; color:var(--ink); background:var(--bg); line-height:1.5 } button,input,select {font:inherit} button {cursor:pointer} button:disabled { cursor:not-allowed; opacity:.49 } :focus-visible {outline:3px solid #65aeff;outline-offset:3px} .shell {min-height:100vh;display:grid;grid-template-columns:257px minmax(0,1fr)}
.sidebar {background:var(--navy);color:#dfe7f7;min-height:100vh;padding:34px 19px 24px;display:flex;flex-direction:column;gap:37px;position:sticky;top:0;height:100vh} .brand {display:flex;align-items:center;gap:12px;padding-left:7px} .brand-icon {width:46px;height:46px;display:grid;place-items:center;background:linear-gradient(145deg,#4c9dff,#2052bd);border-radius:14px;color:white;font-size:24px;font-weight:900;box-shadow:0 7px 16px #081634} .brand strong{font-size:15px;letter-spacing:.055em;display:block;color:#fff}.brand span{font-size:11px;color:#98aacb}.side-label{font-size:10px;font-weight:800;letter-spacing:.16em;color:#8394b5;padding-left:16px;margin-bottom:-22px}.nav-group{display:grid;gap:5px}.nav-link{width:100%;text-align:left;border:0;background:transparent;color:#aebcda;display:flex;gap:12px;align-items:center;padding:13px 16px;border-radius:10px;font-size:13px;font-weight:650}.nav-link span{font-size:18px;min-width:24px}.nav-link:hover,.nav-link.current{color:#fff;background:#23345b}.sidebar-bottom{margin-top:auto}.side-note{background:#1d2b4d;border:1px solid #344469;padding:16px;border-radius:13px;font-size:11px;font-weight:750;letter-spacing:.025em}.side-note small{color:#a8b8d4;font-size:11px;font-weight:400;line-height:1.6;display:block;margin-top:9px}.note-dot{display:inline-block;background:#6cdbc0;width:7px;height:7px;border-radius:50%;margin-right:4px}
.main-wrap{min-width:0;display:flex;flex-direction:column}.topbar{height:73px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,4vw,64px)}.crumb{font-size:11px;font-weight:780;letter-spacing:.12em;color:#a0abc0}.crumb span{color:#345779}.top-right{display:flex;align-items:center;gap:9px;font-size:12px;color:#60728d}.offline-dot{width:8px;height:8px;border-radius:50%;background:#0cab7d}#app{width:100%;max-width:1190px;padding:clamp(24px,4vw,53px) clamp(20px,4vw,64px) 56px;margin:0 auto;flex:1}.footer{color:#8290a8;border-top:1px solid #e8edf6;display:flex;justify-content:space-between;gap:20px;font-size:11px;padding:16px clamp(20px,4vw,64px)}
.eyebrow{color:#2879ce;font-weight:850;font-size:11px;letter-spacing:.145em;text-transform:uppercase;margin:0 0 8px}.page-title{font-size:clamp(26px,3.7vw,36px);line-height:1.16;letter-spacing:-.045em;margin:0 0 12px}.subhead{color:var(--muted);margin:0;max-width:730px;font-size:14px}.section-heading{font-size:17px;letter-spacing:-.024em;margin:0 0 14px}.flex-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.section{margin-top:33px}.card{background:var(--card);border:1px solid var(--line);border-radius:17px;box-shadow:var(--shadow)}.hero{background:linear-gradient(113deg,#152951 0%,#244f91 100%);border-radius:19px;color:#fff;padding:27px clamp(22px,4vw,43px);display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;overflow:hidden;position:relative;margin-bottom:25px}.hero:after{content:"";position:absolute;width:230px;height:230px;right:-66px;top:-105px;border:40px solid #fff1;border-radius:50%;pointer-events:none}.hero h2{font-size:clamp(22px,3vw,28px);margin:0 0 7px;letter-spacing:-.035em}.hero p{margin:0 0 19px;max-width:540px;color:#c7d7ee;font-size:13px}.hero-mark{font-size:64px;line-height:1;opacity:.22;position:relative;z-index:1}.btn{border:0;background:var(--accent);color:white;padding:11px 18px;font-size:12px;font-weight:750;border-radius:9px;display:inline-flex;justify-content:center;align-items:center;gap:7px;transition:.18s ease}.btn:hover:not(:disabled){background:var(--accent2);transform:translateY(-1px)}.btn-light{background:#fff;color:#154f9d}.btn-light:hover:not(:disabled){background:#e8f3ff}.btn-ghost{color:var(--ink);background:#f0f4fa}.btn-ghost:hover:not(:disabled){background:#e4edfb}.btn-plain{color:#476184;background:transparent;border:1px solid var(--line)}.btn-outline{background:transparent;color:var(--accent);border:1px solid #bccee7}.btn-small{padding:8px 13px;font-size:11px}.btn-danger{background:#c23953}.badge{display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border-radius:20px;font-size:10px;font-weight:770;background:var(--a-soft);color:#2467ad}.badge-green{color:#13734c;background:var(--g-soft)}.badge-red{color:#b02e49;background:var(--r-soft)}.badge-amber{color:#8b6400;background:var(--amber-soft)}
.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.metric{padding:19px 20px}.metric .metric-label{font-size:11px;color:#71819a;font-weight:650}.metric .metric-num{font-size:29px;line-height:1.25;letter-spacing:-.045em;font-weight:850;margin-top:7px}.metric .metric-foot{color:#9aa7b9;font-size:11px;margin-top:5px}.m-icon{float:right;background:#eef5ff;color:#3475bd;padding:7px;border-radius:8px;font-size:16px;line-height:1}.study-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.study-card{padding:21px;display:flex;flex-direction:column;align-items:flex-start;min-height:232px}.study-symbol{font-size:22px;display:grid;place-items:center;background:#ecf3fd;width:46px;height:46px;border-radius:11px;margin-bottom:14px}.study-card h3{margin:0 0 6px;letter-spacing:-.02em;font-size:16px}.study-card p{font-size:12px;color:var(--muted);margin:0 0 16px;flex:1}.study-card button{width:100%}.study-card:has(button:disabled){opacity:.7}.panel-row{display:grid;grid-template-columns:1.2fr .8fr;gap:14px}.overview{padding:23px}.overview p{font-size:12px;color:var(--muted)}.line-progress{background:#e9eef6;height:8px;border-radius:20px;overflow:hidden;margin:14px 0}.line-progress i{display:block;height:100%;background:linear-gradient(90deg,#3299df,#286acb);border-radius:20px}.source-box{padding:20px;font-size:12px;color:#50627e}.source-box strong{display:block;font-size:13px;color:#1d3353;margin-bottom:4px}
.quiz-layout{max-width:810px;margin:0 auto}.quiz-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:23px}.quiz-head h1{font-size:25px;margin:5px 0 0;letter-spacing:-.04em}.timer{font-weight:850;background:#f0f5fc;padding:10px 14px;border-radius:10px;font-variant-numeric:tabular-nums;color:#284f84}.timer.warning{color:#b8344b;background:#fff0f2}.quiz-progress-meta{display:flex;justify-content:space-between;font-size:12px;font-weight:650;color:#6d7f98}.quiz-progress{height:7px;background:#e5edf7;border-radius:15px;overflow:hidden;margin:12px 0 23px}.quiz-progress>div{height:100%;background:#3d81d8;border-radius:15px}.question-card{padding:clamp(21px,4vw,36px)}.q-top{display:flex;justify-content:space-between;align-items:center;gap:14px}.q-text{font-size:clamp(16px,2.2vw,20px);font-weight:700;line-height:1.55;letter-spacing:-.018em;margin:24px 0 26px}.answer-list{display:grid;gap:10px}.answer-option{text-align:left;display:flex;align-items:flex-start;gap:13px;width:100%;background:#fff;border:1.5px solid #dce4f0;padding:15px;border-radius:11px;color:#253752;line-height:1.55;font-size:13px;transition:.12s ease}.answer-option:hover:not(:disabled){border-color:#75aae1;background:#f7fbff}.answer-option:disabled{opacity:1;cursor:default}.answer-option .letter{width:27px;height:27px;display:grid;place-items:center;flex-shrink:0;border-radius:7px;background:#eff3f9;color:#536e91;font-weight:780}.answer-option.chosen{border-color:#3889da;background:#edf5ff}.answer-option.chosen .letter{background:#307fca;color:#fff}.answer-option.correct{border-color:#66b794;background:#edfaf2}.answer-option.correct .letter{background:#09814c;color:#fff}.answer-option.wrong{border-color:#e79ca6;background:#fff2f3}.answer-option.wrong .letter{background:#cc3f55;color:#fff}.feedback{padding:16px 18px;border-radius:11px;margin-top:17px;background:#edf8f3;color:#215a47;font-size:13px;border:1px solid #c7e9d8}.feedback.bad{background:#fff4f4;border-color:#f5d1d6;color:#8b3340}.feedback strong{display:block;margin-bottom:4px}.q-controls{display:flex;gap:10px;justify-content:space-between;align-items:center;margin-top:21px}.right-actions{display:flex;gap:8px;align-items:center}.shortcut{font-size:11px;color:#92a0b1;text-align:center;margin:17px 0}.note{padding:13px 15px;font-size:12px;color:#706643;background:#fff9e9;border:1px solid #f5e9bc;border-radius:9px;margin-top:14px}.summary-top{text-align:center;margin:0 auto 23px;max-width:550px}.score-ring{width:138px;height:138px;margin:18px auto;display:grid;place-items:center;border-radius:50%;background:conic-gradient(#3383d4 var(--pct),#e5edf6 var(--pct));position:relative}.score-ring:before{content:"";position:absolute;inset:13px;background:#fff;border-radius:50%}.score-ring>div{z-index:1;font-size:33px;letter-spacing:-.055em;font-weight:900}.score-ring small{display:block;font-size:11px;font-weight:550;letter-spacing:0;color:#7890a8}.review-item{padding:18px 20px;border-bottom:1px solid var(--line);font-size:12px}.review-item:last-child{border-bottom:0}.review-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.review-item strong{display:block;font-size:13px;line-height:1.55;margin:9px 0}.review-meta{color:#6d7b90;font-size:12px;line-height:1.7}.review-meta b{color:#27446c}.review-item .badge{white-space:nowrap}.action-row{display:flex;flex-wrap:wrap;justify-content:center;gap:9px}.history-card{padding:20px;display:flex;gap:20px;align-items:center;justify-content:space-between;margin:10px 0}.history-card strong{font-size:14px}.history-card p{font-size:12px;color:var(--muted);margin:4px 0 0}.history-score{font-size:24px;font-weight:850;color:#256cb6;white-space:nowrap}.settings-card{padding:22px;margin:12px 0}.settings-card h3{font-size:15px;margin:0 0 8px}.settings-card p{font-size:12px;max-width:720px;color:var(--muted)}.settings-buttons{display:flex;flex-wrap:wrap;gap:9px;margin-top:14px}.toast{position:fixed;right:22px;bottom:22px;max-width:min(480px,calc(100vw - 44px));border-radius:12px;padding:14px 18px;color:#fff;background:#213b69;box-shadow:0 16px 40px #1f31513d;font-size:13px;z-index:100}.empty{padding:44px 23px;text-align:center}.empty .symbol{font-size:34px;margin-bottom:12px}.empty h3{margin:0 0 6px}.empty p{color:var(--muted);font-size:13px;max-width:480px;margin:0 auto 15px}.muted{color:var(--muted)}
@media(max-width:1050px){.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.study-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.shell{display:block}.sidebar{position:static;min-height:0;height:auto;padding:14px 15px;display:flex;flex-direction:row;align-items:center;gap:12px;justify-content:space-between}.brand{gap:8px;padding:0}.brand-icon{width:32px;height:32px;font-size:18px;border-radius:10px}.brand strong{font-size:12px}.brand span{font-size:9px}.side-label,.sidebar-bottom{display:none}.nav-group{display:flex;gap:3px}.nav-link{font-size:0;gap:0;width:37px;height:37px;display:grid;place-items:center;padding:0}.nav-link span{font-size:20px}.topbar{height:43px;padding:0 18px}.top-right{font-size:10px}#app{padding:25px 17px 45px}.hero{padding:23px}.hero-mark{display:none}.metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.metric{padding:16px}.study-grid,.panel-row{grid-template-columns:1fr}.study-card{min-height:0}.footer{padding:16px;display:block}.footer span{display:block;margin-bottom:4px}.quiz-head h1{font-size:21px}.question-card{padding:21px}.q-controls{flex-wrap:wrap}.q-controls>button{flex:0 0 auto}.right-actions{flex:1;justify-content:flex-end}.right-actions button{padding:10px}.shortcut{display:none}}
@media(max-width:385px){.brand strong{font-size:10px}.brand span{font-size:8px}.nav-link{width:32px}.metric-num{font-size:25px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
/* V2: biblioteca por fuentes y temáticas */
.sources-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.source-card { width:100%;min-width:0;text-align:left;display:flex;align-items:center;gap:13px; padding:16px; border:1.5px solid #dce4f0; background:#fff; border-radius:13px; color:var(--ink); transition:.12s;box-shadow:var(--shadow); }
.source-card[data-bank]:hover { border-color:#81b4ed;transform:translateY(-1px); }
.source-card.picked { background:#f0f7ff;border:2px solid #438ee0;padding:15.5px; }
.source-card.unavailable { opacity:.72; background:#f9fafc; }
.source-symbol {width:42px;height:42px;flex-shrink:0;border-radius:12px;background:#eaf2fc;color:#226dbb;display:grid;place-items:center;font-weight:800;font-size:22px;}
.source-card.unavailable .source-symbol {background:#f1f2f6;color:#929bac;}
.source-main {flex:1;min-width:0;}
.source-main strong {display:block;font-size:13px;line-height:1.36;}
.source-main span {display:block;color:var(--muted);font-size:11px;margin-top:5px;line-height:1.35;}
.source-count {font-size:22px;letter-spacing:-.04em;font-weight:850;color:#1d5db2;white-space:nowrap;}
.source-count small {display:block;text-align:right;letter-spacing:0;font-size:9px;font-weight:600;color:#7f90a4;}
.category-grid {display:flex;gap:9px;flex-wrap:wrap;}
.category-pill {display:inline-flex;gap:14px;align-items:center;justify-content:space-between;text-align:left;padding:12px 14px;border-radius:10px;color:#324866;background:#fff;border:1px solid #dce4f0;font-size:12px;line-height:1.4;}
.category-pill:hover {border-color:#9abde9;}
.category-pill.chosen-category {border-color:#3078ce;background:#edf5ff;color:#1d5495;font-weight:800;}
.category-pill b {font-size:11px;border-radius:20px;padding:3px 7px;background:#edf2f9;white-space:nowrap;}
.category-pill.chosen-category b {background:#d8e9ff;}
.subtopics {display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:17px;}
.label-help {font-size:11px;font-weight:780;color:#657692;margin-right:5px;}
.subtopic-pill {padding:8px 11px;border:1px solid #e0e5ee;background:#fff;color:#55708f;font-size:11px;border-radius:20px;}
.subtopic-pill.active {background:#193d71;border-color:#193d71;color:#fff;font-weight:750;}
.filter-search {display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:20px 0 0;}
.filter-search label {font-size:11px;color:var(--muted);font-weight:700;}
.filter-search input {flex:1;min-width:180px;background:#fff;border:1px solid #d8e2ef;border-radius:9px;padding:10px 13px;font-size:13px;color:var(--ink);}
.chosen-panel {padding:22px;}
.chosen-head {display:flex;align-items:center;justify-content:space-between;gap:20px;}
.chosen-head h2 {margin:0;letter-spacing:-.02em;font-size:21px;}
.chosen-head p:not(.eyebrow) {color:var(--muted);font-size:12px;margin:5px 0 0;}
.chosen-number {font-weight:850;font-size:36px;color:#2466b7;}
.chosen-config {display:flex;flex-wrap:wrap;gap:16px;margin:18px 0;}
.chosen-config label {display:grid;gap:7px;color:#65738b;font-size:11px;font-weight:740;flex:1;min-width:160px;}
.chosen-config select {background:white;max-width:100%;border:1px solid #d5dfec;border-radius:9px;padding:10px 12px;color:#253c5d;font-size:12px;}
.fineprint {color:#7f8ca3;font-size:11px;max-width:860px;line-height:1.5;margin:19px 0 0;}
.quiz-source {color:var(--muted);font-size:11px;margin:6px 0 0;line-height:1.35;}
.reading {margin:20px 0 9px;padding:15px 17px;background:#f4f8ff;border:1px solid #d5e6f9;border-radius:12px;line-height:1.75;color:#334a6a;font-size:12px;}
.reading summary {cursor:pointer;color:#235c9a;font-size:12px;font-weight:800;}
.reading p {margin:10px 0 0;white-space:normal;}
@media(max-width:800px) {.sources-grid {grid-template-columns:1fr}.source-card {gap:10px;padding:13px;}.source-card.picked {padding:12.5px;}.source-symbol{width:38px;height:38px;font-size:20px}.source-count{font-size:19px}.chosen-head h2{font-size:18px}}
@media(max-width:450px){.category-pill{width:100%;}.source-main strong{font-size:12px}.source-main span{font-size:10px}.source-count{font-size:17px}.source-count small{font-size:9px}.filter-search input{flex-basis:100%;}}

/* V3: visor integrado de los documentos originales */
.pdf-doc-list {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(460px,100%),1fr));gap:13px}
.pdf-doc-card {display:flex;gap:15px;align-items:center;padding:20px;flex-wrap:wrap}
.pdf-icon {width:48px;height:48px;background:#eaf2fc;color:#176ed0;display:grid;place-items:center;border-radius:13px;font-size:28px;flex:none}
.pdf-doc-text {flex:1;min-width:180px}.pdf-doc-text h3{font-size:14px;margin:0}.pdf-doc-text p{font-size:12px;color:var(--muted);margin:5px 0 0}
.pdf-doc-card .btn {flex-shrink:0}.docs-import{padding:25px}.docs-import h2{font-size:17px;margin:0 0 7px}.docs-import p{font-size:12px;line-height:1.7;color:var(--muted);max-width:800px}.docs-import .btn{margin-top:6px}
.pending-docs{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(380px,100%),1fr));gap:8px}.pending-doc{background:#fff;border:1px dashed #cbd5e6;border-radius:11px;padding:13px;font-size:12px;display:flex;justify-content:space-between;gap:20px;align-items:center}.pending-doc span{color:#946b22;white-space:nowrap;font-size:11px}
.pdf-head{align-items:start}.pdf-tools{display:flex;gap:10px;align-items:center;padding:12px 18px;flex-wrap:wrap}.pdf-tools label{font-size:12px;font-weight:650}.pdf-tools input{width:73px;border:1px solid #dce4f0;border-radius:9px;padding:8px 10px}.pdf-tools .badge{margin-left:auto}
.pdf-frame-wrap{height:min(76vh,970px);min-height:460px;overflow:hidden;position:relative}.pdf-frame-wrap iframe{height:100%;width:100%;border:0;display:block;background:#e4e8ee}.pdf-fallback{position:absolute;bottom:0;right:0;left:0;background:#eef5ffed;font-size:11px;text-align:center;padding:7px}
.pdf-source-link{display:inline-flex;align-items:center;margin:0 0 16px}
@media(max-width:760px){.pdf-doc-card{padding:14px}.pdf-frame-wrap{height:70vh;min-height:370px}.pdf-doc-card .btn{width:100%}.pdf-tools .badge{margin-left:0}.pdf-head{gap:10px;flex-wrap:wrap}}

/* V5.0: inicio de sesión multiusuario */
[hidden] { display:none !important }
.auth-layout { min-height:100vh; display:grid; place-items:center; padding:24px; background:radial-gradient(ellipse at 25% 10%,#254d92 0%,#101a36 64%); }
.auth-card { width:min(100%,435px); border-radius:22px; padding:clamp(25px,5vw,39px); background:#fff; box-shadow:0 25px 80px #08143377; }
.auth-logo { width:47px;height:47px;display:grid;place-items:center;color:#fff;background:linear-gradient(145deg,#4597f7,#1c55b1);font-size:25px;font-weight:900;border-radius:13px;margin-bottom:23px }
.auth-card h1 { font-size:27px;letter-spacing:-.045em;line-height:1.2;margin:0 0 11px; }
.auth-sub { font-size:13px;color:#66778d;line-height:1.65;margin:0 0 23px; }
#auth-form {display:grid;gap:10px} #auth-form label{font-weight:700;font-size:12px;color:#344762}
#auth-form input { width:100%;border:1px solid #d9e3ef;border-radius:10px;background:#f9fbff;padding:13px 14px;outline:0;font-size:14px; }
#auth-form input:focus { border-color:#4c9bef;box-shadow:0 0 0 3px #2d81e622; }
#auth-form .btn {margin-top:8px;width:100%;font-size:14px;padding:14px}
.auth-options {display:flex;align-items:center;justify-content:space-between;gap:7px;margin-top:13px;flex-wrap:wrap}
.auth-options button {border:0;background:none;font-size:12px;color:#2469bf;font-weight:700;padding:7px 0}
.auth-status {padding:12px;margin-bottom:18px;border-radius:10px;border:1px solid #bfd5f5;background:#edf5ff;color:#234b7d;font-size:12px;line-height:1.6;white-space:pre-wrap;}
.auth-status.error {background:#fff1f2;border-color:#f0c2cb;color:#9c3042}
.auth-fine{font-size:10px;color:#8b98ac;line-height:1.65;margin:24px 0 0}
.user-badge{max-width:240px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px;font-weight:650;color:#244778}
@media(max-width:760px){.user-badge{max-width:115px;font-size:9px}.topbar .top-right{gap:5px}.topbar .btn{font-size:10px;padding:6px 8px}.auth-layout{padding:14px}.auth-card{padding:25px}}

/* V2.4 · navegación bidireccional y separación de lectura / explicación / referencia */
.left-actions{display:flex;gap:8px;align-items:center}
.study-note{padding:14px 16px;border-radius:11px;margin-top:12px;font-size:12.5px;line-height:1.65}
.study-note strong{display:block;margin-bottom:4px;font-size:12px}
.study-note p{margin:0;white-space:pre-wrap}
.explanation-note{background:#f6f8fb;border:1px solid #dde5ef;color:#334a6a}
.reference-note{background:#fbfcfe;border:1px dashed #ced9e7;color:#60738d}
.reference-note strong{color:#405b7f}
.q-controls .btn:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:760px){.q-controls{align-items:stretch}.left-actions,.right-actions{width:100%;justify-content:space-between}.left-actions .btn,.right-actions .btn{flex:1}.study-note{font-size:12px}}

/* V2.5 · organización visual de bancos */
.bank-group{margin-top:22px}.bank-group-head{margin:0 0 10px 2px}.bank-group-head h3{margin:0;font-size:1rem}.bank-group-head p{margin:4px 0 0;color:var(--muted,#64748b);font-size:.82rem;max-width:900px}.sources-grid-all{margin-top:12px}.sources-grid-all .source-card{max-width:none}

/* V2.6.3 · navegación CPM → categoría → tema */
.study-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.study-category-card{appearance:none;border:1px solid var(--line,#d7e1ee);background:#fff;border-radius:14px;padding:18px;display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;text-align:left;color:inherit;cursor:pointer}
.study-category-card:hover{border-color:#8cb9ee;box-shadow:0 4px 16px #1d4ed80d}
.study-category-card.picked{border-color:#2f80ed;background:#f3f8ff;box-shadow:0 0 0 1px #2f80ed22}
.study-category-card:disabled{opacity:.45;cursor:not-allowed}
.study-category-card strong{display:block;font-size:1rem;margin-bottom:4px}
.study-category-card span{display:block;font-size:.82rem;color:var(--muted,#64748b);line-height:1.45}
.study-category-card b{font-size:1.35rem;color:#1766b3}
.study-category-icon{width:42px;height:42px;border-radius:12px;background:#eaf3ff;display:flex;align-items:center;justify-content:center;font-weight:800;color:#1766b3}
.source-symbol{min-width:42px}
@media(max-width:760px){.study-category-grid{grid-template-columns:1fr}.study-category-card{grid-template-columns:auto 1fr auto}}

/* V2.6.4 · contraste de retroalimentación */
.feedback-user-answer{color:#9f2f3f;margin-top:6px}
.feedback-user-answer b{color:#8d2635}
.feedback-correct-answer{color:#18794e;margin-top:4px}
.feedback-correct-answer b{color:#0f6b43}
.feedback:not(.bad) .feedback-correct-answer{margin-top:6px}

/* V2.10.0 · navegación por convocatoria, puesto y colecciones */
.library-modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:24px 0 30px}
.library-mode{appearance:none;border:1px solid var(--line,#d7e1ee);background:#fff;border-radius:16px;padding:18px;text-align:left;display:grid;grid-template-columns:auto 1fr;column-gap:12px;row-gap:3px;cursor:pointer;color:inherit}
.library-mode:hover{border-color:#8cb9ee;box-shadow:0 5px 18px #1d4ed80d}
.library-mode.picked{border-color:#2f80ed;background:#f3f8ff;box-shadow:0 0 0 1px #2f80ed22}
.library-mode-icon{grid-row:1/3;width:46px;height:46px;border-radius:13px;background:#eaf3ff;color:#1766b3;display:flex;align-items:center;justify-content:center;font-size:.78rem;font-weight:850}
.library-mode strong{font-size:1rem}
.library-mode small{color:var(--muted,#64748b);line-height:1.4}
.position-search-box{border:1px solid var(--line,#d7e1ee);background:#fff;border-radius:14px;padding:16px;margin-bottom:14px}
.position-search-box label{display:block;font-weight:750;margin-bottom:8px}
.position-search-box input{width:100%;min-height:46px;border:1px solid var(--line,#d7e1ee);border-radius:10px;padding:0 12px;font:inherit}
.position-search-box p{margin:8px 0 0;color:var(--muted,#64748b);font-size:.82rem}
.position-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.position-result{appearance:none;border:1px solid var(--line,#d7e1ee);background:#fff;border-radius:13px;padding:14px;display:grid;grid-template-columns:1fr auto;gap:12px;text-align:left;cursor:pointer;color:inherit}
.position-result:hover{border-color:#8cb9ee}
.position-result.picked{border-color:#2f80ed;background:#f3f8ff}
.position-result strong{display:block;line-height:1.3}
.position-result span,.position-result small{display:block;color:var(--muted,#64748b);margin-top:4px;line-height:1.35}
.position-result b{font-size:1.15rem;color:#1766b3}
.position-selected{padding:18px}
.position-selected-head{display:flex;gap:18px;justify-content:space-between;align-items:flex-start}
.position-selected-head h2{margin:2px 0 6px}
.position-selected-head p{margin:0;color:var(--muted,#64748b)}
.position-scope,.position-filter-block{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:14px}
.selection-detail{color:var(--muted,#64748b);font-size:.86rem!important}
@media(max-width:860px){.library-modes{grid-template-columns:1fr}.position-results{grid-template-columns:1fr}.position-selected-head{display:block}.position-selected-head .btn{margin-top:12px}}
