@import "https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,600;9..144,700&family=IBM+Plex+Mono:wght@400;500&family=Public+Sans:wght@400;500;600;700&display=swap";:root{--paper:#f4ece0;--paper-light:#fbf7ef;--ink:#261714;--muted:#6d5a54;--accent:#a73121;--accent-dark:#7f261c;--line:#5d26201f;--heading:"Fraunces", Georgia, serif;--sans:"Public Sans", "Segoe UI", sans-serif;--mono:"IBM Plex Mono", "SFMono-Regular", monospace;font-family:var(--sans);color:var(--ink);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(circle at 0 0,#a731211f,#0000 32%),radial-gradient(circle at 85% 15%,#8f66211a,#0000 28%),linear-gradient(#f8f2e8 0%,#eee2d0 100%);font-weight:400;line-height:1.6}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:linear-gradient(#ffffff47, #ffffff47), repeating-linear-gradient(90deg, transparent 0, transparent 30px, #5d262005 30px, #5d262005 31px), var(--paper);min-width:320px;min-height:100vh;margin:0}a{color:inherit}button,input,select,textarea{font:inherit}#root{min-height:100vh}h1,h2,h3{font-family:var(--heading);color:var(--ink);line-height:1.05}h1{font-size:clamp(2.8rem,4vw,4.9rem)}h2{margin:0;font-size:clamp(1.8rem,2.6vw,2.6rem)}h3{font-size:1.2rem}p,li{margin:0}code{font-family:var(--mono)}.app-shell{width:min(1480px,100% - 28px);margin:0 auto;padding:28px 0 72px}.hero-panel,.band,.algorithm-section,.controls-panel,.workspace-card,.documents-section,.list-panel,.detail-panel,.summary-card,.stat-card,.algorithm-card,.record-card,.document-card,.term-card,.viz-card,.empty-card{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fcf7eed6;border:1px solid #5d26201f;box-shadow:0 24px 50px #39140f14}.hero-panel,.band,.algorithm-section,.controls-panel,.workspace-card,.documents-section,.list-panel,.detail-panel,.summary-card,.viz-card,.empty-card{border-radius:30px}.hero-panel{grid-template-columns:1.18fr .82fr;gap:26px;padding:34px;display:grid;position:relative;overflow:hidden}.hero-panel:before,.hero-panel:after{content:"";pointer-events:none;border-radius:999px;position:absolute}.hero-panel:before{background:radial-gradient(circle,#a731212e,#0000 70%);width:360px;height:360px;top:-120px;right:-120px}.hero-panel:after{background:radial-gradient(circle,#2d5a7b1f,#0000 72%);width:260px;height:260px;bottom:-110px;left:-90px}.hero-copy h1{max-width:12ch;margin:12px 0 18px}.hero-toolbar{justify-content:space-between;align-items:center;gap:16px;display:flex}.lede,.section-copy,.record-snippet,.context-note,.record-type,.viz-head p,.summary-card p,.algorithm-card p,.term-card p,.document-card p,.document-links a,.list-summary,.detail-meta,.flash-copy{color:var(--muted)}.hero-note{background:#a7312114;border:1px solid #a7312129;border-radius:18px;max-width:62ch;margin-top:18px;padding:16px 18px}.locale-switch{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:inline-flex}.locale-label{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-size:.8rem;font-weight:700}.locale-button{color:var(--ink);cursor:pointer;background:#fffcf7e0;border:1px solid #5d262026;border-radius:999px;padding:8px 11px;font-weight:700;transition:transform .18s,border-color .18s,box-shadow .18s}.locale-button.is-active,.locale-button:hover{border-color:#a731216b;transform:translateY(-1px);box-shadow:0 10px 18px #39140f14}.hero-aside{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:14px;display:grid}.stat-card{border-radius:24px;flex-direction:column;gap:6px;padding:18px;display:flex}.stat-value{font-family:var(--heading);color:var(--ink);font-size:clamp(1.6rem,3vw,2.4rem);line-height:.95}.stat-label{color:var(--muted);font-size:.9rem}.eyebrow,.section-label,.record-year,.algorithm-tier,.term-category{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-size:.75rem;font-weight:700}.band,.algorithm-section,.controls-panel,.documents-section{margin-top:22px;padding:28px 30px}.study-grid{grid-template-columns:1fr 1fr;gap:18px;margin-top:22px;display:grid}.study-card{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fcf7eed6;border:1px solid #5d26201f;border-radius:30px;gap:12px;padding:24px 28px;display:grid;box-shadow:0 24px 50px #39140f14}.study-callout{flex-wrap:wrap;align-items:center;gap:12px;margin-top:8px;display:flex}.study-callout .secondary-button{text-decoration:none}.band{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;display:grid}.band-status{text-align:right;justify-items:end;gap:10px;display:grid}.error-copy{color:#8e3020}.section-heading,.list-heading,.form-head,.term-card-head{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.section-heading h2,.list-heading h2{margin-top:6px}.section-copy,.list-summary{max-width:42ch}.algorithm-grid,.visual-grid,.workspace-grid,.term-grid,.document-grid,.record-list,.context-list{gap:16px;display:grid}.algorithm-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:22px}.algorithm-card,.summary-card,.term-card,.document-card{border-radius:24px;padding:20px}.algorithm-card h3,.summary-card h3,.term-card h3,.document-card h3,.detail-block h3,.viz-head h3,.record-card h3{margin:10px 0 12px}.controls-panel{gap:18px;display:grid}.filters-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;display:grid}.field-label{color:var(--ink);margin-bottom:8px;font-size:.85rem;font-weight:700;display:block}.search-input,select,textarea,input[type=number],input[type=text]{width:100%;color:var(--ink);font:inherit;background:#fffcf7e6;border:1px solid #5d26202e;border-radius:16px;outline:none;padding:14px 16px;transition:border-color .18s,box-shadow .18s}.search-input:focus,select:focus,textarea:focus,input[type=number]:focus,input[type=text]:focus,input[type=file]:focus{border-color:#a731218c;box-shadow:0 0 0 4px #a7312114}textarea{resize:vertical;min-height:110px}.file-field input[type=file]{background:#fffcf7b3;border:1px dashed #5d26202e;border-radius:16px;width:100%;padding:12px;display:block}.chip-row{flex-wrap:wrap;gap:10px;display:flex}.chip{color:var(--ink);background:#5d262014;border-radius:999px;padding:8px 12px;font-size:.88rem}.chip-accent{color:var(--accent-dark);background:#a731211f}.visual-grid{grid-template-columns:1fr 1fr;margin-top:22px}.visual-grid-bottom{align-items:stretch}.summary-card{align-content:start;display:grid}.evidence-list{gap:14px;margin:16px 0 0;padding-left:18px;display:grid}.evidence-list li{gap:4px;display:grid}.network-row{margin-top:22px}.archive-layout{grid-template-columns:minmax(0,.96fr) minmax(360px,.84fr);align-items:start;gap:18px;margin-top:22px;display:grid}.list-panel,.detail-panel{padding:24px}.detail-panel{align-content:start;gap:16px;display:grid;position:sticky;top:22px}.record-list{margin-top:18px}.record-card{text-align:left;width:100%;color:inherit;cursor:pointer;border-radius:24px;padding:18px;transition:transform .18s,border-color .18s,box-shadow .18s}.record-card:hover,.record-card:focus-visible,.record-card.is-active,.primary-button:hover,.secondary-button:hover,.ghost-button:hover{transform:translateY(-2px)}.record-card.is-active{background:linear-gradient(#fff6ed,#faecddf0);border-color:#a7312157;box-shadow:0 18px 28px #39140f14}.record-card-top,.snippet-meta{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.record-card-top{justify-content:space-between;margin-bottom:12px}.detail-block,.context-card{background:#fffcf7b8;border:1px solid #5d26201a;border-radius:24px;padding:18px}.detail-block{gap:10px;display:grid}.context-list{gap:12px}.context-card p{color:var(--muted)}.stack-form{gap:14px;display:grid}.loading-copy{color:var(--accent-dark);font-weight:600}.workspace-grid{grid-template-columns:1fr 1fr;align-items:start;margin-top:22px}.workspace-card{padding:28px 30px}.term-grid,.document-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:22px}.workspace-form{background:#fffcf7b3;border:1px solid #5d26201a;border-radius:24px;gap:16px;margin-top:22px;padding:22px;display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.form-grid-wide{grid-template-columns:repeat(2,minmax(0,1fr))}.primary-button,.secondary-button,.ghost-button{cursor:pointer;border-radius:999px;padding:12px 16px;font-weight:700;transition:transform .18s,border-color .18s,box-shadow .18s}.primary-button{color:#fff8f4;background:linear-gradient(#c84a34,#a73121);border:1px solid #a7312173;box-shadow:0 14px 24px #a731212e}.secondary-button{color:var(--ink);background:#fffcf7eb;border:1px solid #5d26202e}.ghost-button{color:var(--muted);background:0 0;border:1px dashed #5d262029}.primary-button:disabled,.secondary-button:disabled,.ghost-button:disabled{opacity:.7;cursor:wait}.documents-section{margin-top:22px}.document-links{flex-wrap:wrap;gap:12px;margin-top:16px;display:flex}.document-links a{border-bottom:1px solid #a731214d;text-decoration:none}.empty-card{color:var(--muted);padding:22px}.status-badge{text-transform:uppercase;letter-spacing:.08em;border-radius:999px;padding:7px 11px;font-size:.78rem;font-weight:700}.status-leido{color:#1b6341;background:#1b63411f}.status-parcial{color:#8a5107;background:#b469081f}.status-pendiente{color:var(--accent-dark);background:#5d26201a}.viz-card{padding:22px 22px 18px;position:relative;overflow:hidden}.viz-card-network{min-height:480px}.viz-card:before{content:"";pointer-events:none;background:radial-gradient(circle,#a731211a,#0000 70%);border-radius:50%;width:220px;height:220px;position:absolute;inset:auto -80px -90px auto}.viz-head{justify-content:space-between;align-items:end;gap:16px;margin-bottom:16px;display:flex}.viz-head p:last-child{text-align:right;max-width:34ch}.viz-svg{width:100%;height:auto;display:block}.viz-stage{width:100%}.viz-scroll{cursor:grab;-webkit-user-select:none;user-select:none;scrollbar-width:thin;scrollbar-color:#a7312159 transparent;padding-bottom:6px;overflow:auto hidden}.viz-scroll:active,.viz-scroll.is-dragging{cursor:grabbing}.network-svg{touch-action:none;min-height:390px}.network-empty{min-height:390px;color:var(--muted);text-align:center;background:#fffcf7bd;border:1px dashed #5d262024;border-radius:24px;place-items:center;padding:22px;display:grid}.grid-line{stroke:#5d26201f;stroke-dasharray:4 6}.axis-label{fill:var(--muted);font-family:var(--mono);font-size:11px}.axis-label-left{font-size:10px}.bar-total{fill:#5d262024}.bar-match,.bar-focus{fill:#a73121b8;filter:drop-shadow(0 8px 18px #a731212e)}.bar-value{fill:var(--ink);font-family:var(--mono);font-size:11px}.viz-legend{color:var(--muted);flex-wrap:wrap;gap:16px;margin-top:12px;font-size:.88rem;display:flex}.viz-foot{color:var(--muted);margin-top:10px;font-size:.88rem}.viz-hint{color:var(--muted);margin-top:10px;font-size:.82rem}.legend-swatch{vertical-align:middle;border-radius:99px;width:14px;height:14px;margin-right:8px;display:inline-block}.legend-total{background:#5d262029}.legend-match{background:#a73121b8}.network-link{fill:none;stroke:#5d26202e}.network-circle{stroke:#fffcf7e6;stroke-width:2px;filter:drop-shadow(0 8px 14px #26171424)}.network-query{fill:#a73121f2}.network-record{fill:#895e16c7}.network-term{fill:#2d5a7bb3}.network-label{fill:var(--ink);pointer-events:none;paint-order:stroke;stroke:#fbf7eff2;stroke-width:4px;stroke-linejoin:round;font-size:12px;font-weight:600}.network-node{cursor:grab}.network-node:active{cursor:grabbing}.network-column-label{fill:var(--accent-dark);letter-spacing:.14em;text-transform:uppercase;font-size:12px;font-weight:700}@media (width<=1220px){.hero-panel,.study-grid,.archive-layout,.workspace-grid,.visual-grid{grid-template-columns:1fr}.detail-panel{position:static}.algorithm-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.filters-grid,.form-grid,.form-grid-wide,.term-grid,.document-grid{grid-template-columns:1fr}.band,.section-heading,.list-heading,.viz-head{grid-template-columns:1fr;display:grid}.band-status,.viz-head p:last-child{text-align:left;justify-items:start}.hero-aside{grid-template-columns:1fr 1fr}.hero-toolbar{display:grid}}@media (width<=640px){.app-shell{width:min(100% - 16px,100%);padding-top:16px}.hero-panel,.band,.algorithm-section,.controls-panel,.workspace-card,.documents-section,.list-panel,.detail-panel,.viz-card{border-radius:24px;padding:20px}.hero-copy h1{max-width:none}.hero-aside,.algorithm-grid{grid-template-columns:1fr}.record-card-top,.section-heading,.list-heading,.form-head,.term-card-head,.hero-toolbar{display:grid}}
