:root{--ov-navy:#162b3d;--ov-gold:#bc9961;--ov-cream:#fbf7ed;--ov-muted:#5d6262;--ov-border:#c9b99e}
body{margin:0;background:#eae7df;color:#183046;font:15px/1.55 system-ui,-apple-system,Segoe UI,sans-serif}
*{box-sizing:border-box}a{color:#1c4b69}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #a57733;outline-offset:2px}
.ov-top{background:var(--ov-navy);color:#fffaf1;border-bottom:3px solid var(--ov-gold);padding:24px max(18px,calc((100vw - 1480px)/2))}
.ov-top a{color:#e9cd93}.ov-top h1{font:400 clamp(32px,3vw,48px)/1.2 Georgia,serif;margin:14px 0}.ov-top p{max-width:1050px;margin:8px 0 0;color:#e7ded1}
.ov-nav{display:flex;gap:20px;align-items:center;flex-wrap:wrap;font-size:13px}
.ov-wrap{max-width:1540px;margin:auto;padding:22px 18px 80px}
.ov-numbers{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:0 0 18px}
.ov-numbers article{background:#fffaf2;padding:15px;border:1px solid var(--ov-border);box-shadow:0 1px 4px #1a1a1a12}
.ov-numbers strong{display:block;font:400 32px/1.15 Georgia,serif;font-variant-numeric:tabular-nums}
.ov-numbers small{display:block;font-size:11px;color:#4c5357;margin-top:7px}
.ov-note{font-size:12px;color:#4c5660;line-height:1.65}
.ov-tools{background:#fffaf1;border:1px solid var(--ov-border);padding:16px;display:flex;gap:12px;flex-wrap:wrap;align-items:end;margin:18px 0}
.ov-tools label{display:grid;gap:5px;min-width:125px;font-weight:600;font-size:12px}.ov-tools input,.ov-tools select{border:1px solid #a99a83;border-radius:3px;background:#fff;color:#192c3a;padding:11px;font:15px system-ui}
.ov-tools input{width:min(390px,80vw)}
.ov-tools button,.ov-button{cursor:pointer;border:1px solid #ab905d;border-radius:3px;background:#17334a;color:#fff9e9;padding:11px 16px;font:600 13px system-ui}
.ov-tools button:hover,.ov-button:hover{background:#315572}
.ov-layout{display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:18px;align-items:start}
.ov-index,.ov-detail,.ov-stats{background:#fffdf7;border:1px solid #c3b29b;min-width:0}
.ov-index{position:sticky;top:10px;max-height:80vh;display:flex;flex-direction:column}
.ov-index h2,.ov-detail h2,.ov-stats h2{font:400 26px/1.35 Georgia,serif;margin:0}
.ov-index header{padding:17px 16px;border-bottom:1px solid #d0bea5;background:#f6ede0}
.ov-index header small{display:block;font-size:12px;color:#5e605a;margin-top:4px}
#ov-list{overflow:auto;padding:8px}
.ov-entry{display:block;width:100%;border:0;border-bottom:1px solid #e6ded0;background:transparent;color:#253343;text-align:left;padding:11px 12px;cursor:pointer}
.ov-entry:hover,.ov-entry[aria-pressed=true]{background:#f0e6d1}
.ov-entry strong{display:block;font-size:14px}.ov-entry small{display:block;font-size:11px;color:#69685e}
.ov-content{padding:24px;min-height:500px}
.ov-eyebrow{letter-spacing:.13em;font-size:11px;color:#8c6944;text-transform:uppercase;font-weight:700}
.ov-content h2{font:400 clamp(26px,2.7vw,37px)/1.2 Georgia,serif;margin:10px 0}
.ov-sub{font-size:13px;color:#5d5e5c;margin-bottom:22px}
.ov-bio{font:17px/1.7 Georgia,serif;max-width:900px}
.ov-source{font-size:12px;color:#5c5952;background:#f8f1e4;padding:11px;border-left:3px solid #b99a69}
.ov-list-loci{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}
.ov-locus{border:1px solid #d3c2a8;background:#fff9ee;padding:16px;margin:16px 0}
.ov-locus h3{font:600 14px system-ui;margin:0 0 10px;color:#433b31}
.ov-locus p{margin:8px 0;font:16px/1.65 Georgia,serif}
.ov-locus small{font-size:12px}
.ov-locus a{font-size:12px;margin-right:12px}
.ov-locus .ov-latin{color:#6e1e29}
.ov-locus .ov-translated{color:#2c3942}
mark{background:#ffdf4a;color:#242018;text-decoration:underline #bb8d20 2px;text-underline-offset:2px}
.ov-mini-title{font:400 23px Georgia,serif;margin:28px 0 12px}
.ov-stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.ov-table{width:100%;border-collapse:collapse;font-size:13px;font-variant-numeric:tabular-nums}
.ov-table th,.ov-table td{padding:10px 9px;border-bottom:1px solid #dfd5c4;text-align:left;vertical-align:top}
.ov-table th{background:#eadfce;font-weight:700}
.ov-table td:nth-last-child(-n+3),.ov-table th:nth-last-child(-n+3){white-space:nowrap}
.ov-stats{margin:18px 0;padding:24px}
.ov-select{padding:10px;background:#fffdf7;border:1px solid #a99a83;color:#253443;max-width:100%}
.ov-verb-row{display:grid;grid-template-columns:240px minmax(0,1fr);gap:12px;align-items:start;border-top:1px solid #ddd0bd;padding:14px 0}
.ov-verb-row strong{font-size:14px}.ov-verb-row small{color:#6b6359}
.ov-hidden{display:none!important}
.ov-empty{padding:20px;color:#666;background:#fffdf5;font-size:13px}
.ov-footer{margin-top:28px;border-top:1px solid #b7a993;font-size:12px;padding-top:14px;line-height:1.8}
@media(max-width:1100px){.ov-numbers{grid-template-columns:repeat(3,minmax(0,1fr))}.ov-layout{grid-template-columns:1fr}.ov-index{position:static;max-height:340px}.ov-stat-grid{grid-template-columns:1fr}}
@media(max-width:640px){.ov-numbers{grid-template-columns:repeat(2,minmax(0,1fr))}.ov-tools label{flex:1}.ov-tools input{width:100%}.ov-content,.ov-stats{padding:16px}.ov-verb-row{grid-template-columns:1fr}}


/* Cabecera: dos controles independientes de idioma y color */
.ov-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;flex-wrap:wrap}
.ov-topline .ov-nav{flex:1 1 670px;min-width:0}
.ov-top-controls{display:flex;gap:9px;align-items:center;justify-content:flex-end;flex:0 0 auto;flex-wrap:wrap}
.ov-lang-control,.ov-color-button{border:1px solid #bca57c;border-radius:4px;background:#273f54;color:#f8ecd9;min-height:39px;font:600 13px/1.3 system-ui,-apple-system,Segoe UI,sans-serif}
.ov-lang-control{display:inline-flex;align-items:center;gap:7px;padding:4px 7px 4px 11px}
.ov-lang-control select{cursor:pointer;background:#172b3d;color:#fff8e8;border:1px solid #a38b64;border-radius:3px;max-width:135px;font:600 13px system-ui;padding:7px 6px}
.ov-color-button{padding:8px 13px;min-width:95px;cursor:pointer}
.ov-color-button:hover,.ov-lang-control:focus-within{background:#365672;border-color:#efcc88}
.ov-color-button[aria-pressed=true]{background:#f0d5a4;color:#12283a;border-color:#efcf98}
html[data-theme="dark"]{color-scheme:dark;--ov-border:#586579}
html[data-theme="dark"] body{background:#111c27;color:#e9e6dd}
html[data-theme="dark"] .ov-top{background:#142637;color:#f8f3e8;border-color:#bca47a}
html[data-theme="dark"] .ov-top p{color:#e1dcd3}
html[data-theme="dark"] .ov-top a{color:#ead09b}
html[data-theme="dark"] .ov-numbers article,
html[data-theme="dark"] .ov-index,
html[data-theme="dark"] .ov-detail,
html[data-theme="dark"] .ov-stats,
html[data-theme="dark"] .ov-tools{background:#233342;color:#eae6dd;border-color:#647487}
html[data-theme="dark"] .ov-numbers small,
html[data-theme="dark"] .ov-note,
html[data-theme="dark"] .ov-index header small,
html[data-theme="dark"] .ov-sub,
html[data-theme="dark"] .ov-source,
html[data-theme="dark"] .ov-verb-row small,
html[data-theme="dark"] .ov-entry small{color:#cbd0d2}
html[data-theme="dark"] .ov-index header,
html[data-theme="dark"] .ov-table th{background:#31495c;color:#f5eee4;border-color:#607287}
html[data-theme="dark"] .ov-entry{background:#233342;color:#f5f0e7;border-color:#45596b}
html[data-theme="dark"] .ov-entry:hover,
html[data-theme="dark"] .ov-entry[aria-pressed=true]{background:#41576b;color:#fff}
html[data-theme="dark"] .ov-content h2,
html[data-theme="dark"] .ov-stats h2,
html[data-theme="dark"] .ov-index h2,
html[data-theme="dark"] .ov-mini-title,
html[data-theme="dark"] .ov-bio{color:#f2ece2}
html[data-theme="dark"] .ov-eyebrow{color:#ecc588}
html[data-theme="dark"] .ov-locus{background:#273a49;border-color:#596d7c;color:#efede9}
html[data-theme="dark"] .ov-locus h3{color:#f1e1c9}
html[data-theme="dark"] .ov-locus .ov-latin{color:#f2c3b9}
html[data-theme="dark"] .ov-locus .ov-translated{color:#e3e7e9}
html[data-theme="dark"] .ov-source{background:#344859;border-color:#bb9b63}
html[data-theme="dark"] .ov-tools input,
html[data-theme="dark"] .ov-tools select,
html[data-theme="dark"] .ov-select{background:#192b3c;color:#faf1e6;border-color:#8d9aa4}
html[data-theme="dark"] .ov-tools input::placeholder{color:#bbc6cf}
html[data-theme="dark"] .ov-tools button,
html[data-theme="dark"] .ov-button{background:#365773;color:#fff9ef;border-color:#c4a672}
html[data-theme="dark"] .ov-tools button:hover,
html[data-theme="dark"] .ov-button:hover{background:#4b7292}
html[data-theme="dark"] .ov-table td{border-color:#566575;color:#f0ede6}
html[data-theme="dark"] .ov-verb-row{border-color:#5a6878}
html[data-theme="dark"] .ov-empty{background:#273a49;color:#e2d9c9}
html[data-theme="dark"] .ov-footer{border-color:#718094;color:#ddd9d2}
html[data-theme="dark"] .ov-wrap a{color:#d4c191}
html[data-theme="dark"] mark{background:#f0d05b;color:#201a11;text-decoration-color:#6e560e}
@media(max-width:830px){
 .ov-top{padding:18px 14px}
 .ov-top-controls{width:100%;justify-content:flex-start}
 .ov-topline .ov-nav{flex:1 1 100%}
}

/* Impresión y envío de una ficha o concordancia seleccionada */
.ov-sharebar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;background:#f5efe4;border:1px solid var(--ov-border);border-left:3px solid #ac8b58;padding:10px 15px;margin:12px 0 18px}
.ov-current-result{font:600 13px/1.4 system-ui,-apple-system,Segoe UI,sans-serif;min-width:0}
.ov-share-buttons{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.ov-share-buttons button{background:transparent;color:#20394b;border:1px solid #a98c62;border-radius:4px;padding:8px 11px;min-height:38px;font:600 12px/1.35 system-ui,-apple-system,Segoe UI,sans-serif;cursor:pointer}
.ov-share-buttons button:hover,.ov-share-buttons button:focus-visible{background:#e6d5b5;outline-offset:2px}
.ov-share-buttons button:disabled{opacity:.45;cursor:not-allowed}
html[data-theme="dark"] .ov-sharebar{background:#273c4e;color:#f4eee7;border-color:#776e63;border-left-color:#c8a374}
html[data-theme="dark"] .ov-share-buttons button{background:#24384b;color:#eee7d8;border-color:#b99d72}
html[data-theme="dark"] .ov-share-buttons button:hover{background:#3b5870}
@media(max-width:640px){.ov-sharebar{align-items:flex-start}.ov-share-buttons{width:100%}.ov-share-buttons button{flex:1 1 auto}}
@page{size:A4;margin:14mm}
@media print{
 html,html[data-theme="dark"],body,html[data-theme="dark"] body{background:#fff!important;color:#111!important;color-scheme:light!important}
 body::before{content:"VITRVVIVS · DE ARCHITECTVRA — ONOMASTICON VITRVVIANVM";display:block;font:600 10pt/1.5 Georgia,serif;color:#333!important;border-bottom:1px solid #aaa;margin:0 0 10mm;padding-bottom:3mm}
 .ov-top,.ov-numbers,#ov-stat-scope,.ov-tools,#ov-loading,.ov-sharebar,.ov-index,.ov-footer,.ov-select,.ov-button{display:none!important}
 .ov-wrap{padding:0!important;max-width:none!important;width:auto!important;margin:0!important}
 .ov-layout{display:block!important}
 .ov-detail,.ov-stats,html[data-theme="dark"] .ov-detail,html[data-theme="dark"] .ov-stats{border:0!important;background:white!important;color:#111!important;margin:0!important;box-shadow:none!important}
 .ov-content{padding:0!important;min-height:0!important}
 .ov-content h2,.ov-mini-title,.ov-bio,.ov-eyebrow,.ov-sub,.ov-source,.ov-note,.ov-locus h3,.ov-locus p,html[data-theme="dark"] .ov-content h2,html[data-theme="dark"] .ov-mini-title,html[data-theme="dark"] .ov-bio,html[data-theme="dark"] .ov-source,html[data-theme="dark"] .ov-note{color:#111!important}
 .ov-locus,html[data-theme="dark"] .ov-locus{background:white!important;color:#111!important;border:1px solid #bbb!important;break-inside:avoid;page-break-inside:avoid}
 .ov-locus .ov-latin,html[data-theme="dark"] .ov-locus .ov-latin{color:#5c2430!important}
 .ov-locus .ov-translated,html[data-theme="dark"] .ov-locus .ov-translated{color:#222!important}
 .ov-source,html[data-theme="dark"] .ov-source{background:#fff!important;border-color:#aaa!important}
 .ov-table th,html[data-theme="dark"] .ov-table th{background:#eee!important;color:#111!important}
 .ov-table td,html[data-theme="dark"] .ov-table td{color:#111!important;border-color:#bbb!important}
 .ov-table tr,.ov-verb-row{break-inside:avoid}
 #ov-books,#ov-chapters{overflow:visible!important}
 .ov-content a,.ov-stats a,html[data-theme="dark"] .ov-wrap a{color:#164d72!important}
 mark,html[data-theme="dark"] mark{background:#fff0b3!important;color:#000!important}
}

/* Search-local language control and historical sculpture records. */
.ov-search-language{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:12px;margin:12px 0 6px;color:var(--ov-ink,#283c4b);font:600 13px system-ui,sans-serif}
.ov-search-language label{display:inline-flex;align-items:center;gap:8px}
.ov-search-language select{padding:8px 10px;border:1px solid #ae9166;border-radius:4px;background:#fffdf9;color:#243b4f;font:600 14px system-ui,sans-serif;cursor:pointer}
.ov-search-language>span{font-weight:400;font-size:12px;opacity:.76}
.ov-historical-portrait{display:grid;grid-template-columns:minmax(120px,180px) minmax(0,1fr);gap:16px;align-items:start;padding:14px;margin:16px 0 20px;background:#f6f0e5;border:1px solid #d7c6a8;border-left:4px solid #ae9166}
.ov-historical-portrait img{display:block;width:100%;max-height:255px;object-fit:contain;background:#eee5d5}
.ov-historical-portrait figcaption{font-size:13px;line-height:1.7;overflow-wrap:anywhere}
.ov-historical-portrait figcaption strong{font-family:Georgia,serif;font-size:17px}
.ov-historical-portrait figcaption details{margin-top:8px}
html[data-theme=dark] .ov-search-language{color:#eee6da}
html[data-theme=dark] .ov-search-language select{background:#203a4e;color:#fff;border-color:#baa37d}
html[data-theme=dark] .ov-historical-portrait{background:#2b4050;color:#f4eee5;border-color:#826e50}
@media(max-width:580px){.ov-search-language{justify-content:flex-start}.ov-historical-portrait{grid-template-columns:1fr}.ov-historical-portrait img{max-width:250px}}
