:root{--bg:#efefed;--surface:#fff;--text:#202020;--muted:#66645f;--line:#cfcfc8;--primary:#124f9f;--primary-dark:#08366f;--accent:#ffd83d;--accent-strong:#f4c300;--danger:#bd1e24;--success:#17852d;--sidebar:#555552;--sidebar-dark:#3f3f3c;--wayra-red:#c8161d;--wayra-blue:#124f9f;--wayra-yellow:#fff36a;--wayra-green:#16852b;--shadow:0 7px 20px rgba(36,36,32,.12);font-family:"Arial Narrow","Liberation Sans Narrow",Arial,sans-serif;color:var(--text)}*{box-sizing:border-box}body{margin:0;background:var(--bg)}a{color:var(--primary);text-decoration:none}button,input,textarea,select{font:inherit}.app-shell{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.sidebar{position:sticky;top:0;height:100vh;background:var(--sidebar);color:#fff;padding:22px 16px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px}.brand-mark{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--accent);font-size:24px;font-weight:800}.brand strong,.brand small{display:block}.brand small{opacity:.72;margin-top:3px}.sidebar nav{display:grid;gap:7px;margin-top:30px}.nav-link{color:#eaf1f5;padding:11px 12px;border-radius:9px}.nav-link:hover{background:rgba(255,255,255,.1)}.nav-link.disabled{opacity:.35;pointer-events:none}.sidebar-footer{margin-top:auto}.user-card{padding:14px 8px}.user-card strong,.user-card small{display:block}.user-card small{opacity:.7;margin-top:4px}.main-content{min-width:0}.topbar{height:64px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:20}.page-content{padding:28px;max-width:1600px;margin:auto}.page-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:22px}.page-heading h1{margin:0 0 7px;font-size:28px}.page-heading p{margin:0;color:var(--muted)}.button{border:0;border-radius:9px;padding:10px 16px;font-weight:700;cursor:pointer;display:inline-flex;justify-content:center;align-items:center}.button.primary{background:var(--primary);color:#fff}.button.primary:hover{background:var(--primary-dark)}.button.secondary{background:#e8f0f5;color:var(--primary-dark)}.button.ghost{background:transparent;color:inherit;border:1px solid var(--line)}.sidebar .button.ghost{border-color:rgba(255,255,255,.25);color:#fff}.full{width:100%}.badge,.status{display:inline-flex;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.03em}.experimental{background:#fff2d8;color:#7e5311}.status{background:#e9edf0;color:#4b5963}.status.calculated,.status.completed{background:#dff3e7;color:#1f6844}.status.completed_with_warnings,.status.responses_loaded{background:#fff2d8;color:#7e5311}.status.validation_error,.status.failed_validation{background:#fde3e2;color:#8b2924}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:16px;margin-bottom:20px}.stat{background:var(--surface);border:1px solid var(--line);border-radius:13px;padding:17px 19px;box-shadow:var(--shadow)}.stat span{display:block;color:var(--muted);font-size:13px}.stat strong{display:block;font-size:27px;margin-top:6px}.panel-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px;align-items:start}.panel{grid-column:span 8;background:var(--surface);border:1px solid var(--line);border-radius:13px;box-shadow:var(--shadow);padding:18px;min-width:320px;resize:both;overflow:auto}.panel.compact{grid-column:span 4}.panel-header{display:flex;justify-content:space-between;align-items:center;gap:16px;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:15px;cursor:grab}.panel-header h2{margin:0;font-size:18px}.drag-handle{color:var(--muted);font-size:11px;text-transform:uppercase}.table-wrap{overflow:auto}.table-wrap.tall{max-height:64vh}.response-grid{max-height:68vh}.response-grid table{width:max-content;min-width:100%}table{border-collapse:collapse;width:100%}th,td{padding:10px 11px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}th{font-size:12px;text-transform:uppercase;letter-spacing:.03em;color:#53616d;background:#f8fafb;position:sticky;top:0;z-index:3}td input{width:100%;min-width:90px}.response-grid td{padding:3px}.response-grid td input{min-width:42px;width:42px;text-align:center;padding:7px}.sticky-col{position:sticky!important;left:0;background:#fff;z-index:4;min-width:220px}.response-grid .sticky-col small{display:block;color:var(--muted)}tr.excluded{opacity:.45}.empty{text-align:center;padding:38px;color:var(--muted)}.workflow{display:grid;gap:12px;padding-left:24px}.form-panel{max-width:980px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.span-2{grid-column:span 2}label{display:grid;gap:7px;font-weight:700;font-size:14px}input,textarea,select{border:1px solid #cbd4db;border-radius:8px;padding:10px 11px;background:#fff;color:var(--text)}input:focus,textarea:focus{outline:2px solid rgba(20,90,134,.2);border-color:var(--primary)}.form-actions{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);padding-top:16px;margin-top:18px}.form-actions.sticky{position:sticky;bottom:-18px;background:#fff;padding-bottom:5px}.inline-form{display:flex;align-items:end;gap:12px;margin-bottom:15px}.alert{border-radius:10px;padding:13px 16px;margin-bottom:18px}.alert.error{background:#fde8e7;color:#852b26}.alert.warning{background:#fff3d6;color:#79500f}.alert.success{background:#e2f4e9;color:#246843}.alert ul{margin:7px 0 0}.details{display:grid;grid-template-columns:max-content 1fr;gap:10px 18px}.details dt{font-weight:800}.details dd{margin:0;color:var(--muted)}.action-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.action-card{border:1px solid var(--line);border-radius:10px;padding:16px;display:grid;gap:5px}.action-card:hover{border-color:var(--primary)}.action-card span{color:var(--muted);font-size:13px}.progress-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}.step{background:#fff;border:1px solid var(--line);border-radius:11px;padding:13px;color:var(--text);display:grid;grid-template-columns:35px 1fr;align-items:center}.step strong{grid-row:span 2;display:grid;place-items:center;background:#edf1f4;border-radius:50%;width:28px;height:28px}.step.done strong{background:var(--success);color:#fff}.step small{color:var(--muted)}.calculate-bar{display:flex;justify-content:space-between;align-items:center;background:#eaf2f7;border:1px solid #c7dae7;border-radius:12px;padding:15px 18px;margin-bottom:18px}.calculate-bar strong,.calculate-bar small{display:block}.calculate-bar small{color:var(--muted);margin-top:3px}.run-meta{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin-bottom:18px;color:var(--muted)}.muted{color:var(--muted)}code{background:#edf1f4;border-radius:5px;padding:2px 5px}.login-shell{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#102b3c,#1c526e);padding:24px}.login-card{width:min(430px,100%);background:#fff;border-radius:18px;padding:30px;box-shadow:0 25px 70px rgba(0,0,0,.28)}.login-brand{margin-bottom:28px}.login-card h1{margin-bottom:5px}.stack-form{display:grid;gap:15px;margin:20px 0}.login-card details{margin-top:18px;color:var(--muted)}@media(max-width:1000px){.app-shell{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.sidebar nav{grid-template-columns:1fr 1fr;margin-top:18px}.sidebar-footer{margin-top:18px}.panel,.panel.compact{grid-column:span 12}.stat-grid,.progress-steps{grid-template-columns:1fr 1fr}}@media(max-width:650px){.page-content{padding:18px}.topbar{padding:0 18px}.stat-grid,.progress-steps,.form-grid,.action-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.page-heading,.calculate-bar{align-items:stretch;flex-direction:column}.sidebar nav{grid-template-columns:1fr}}
.nav-section{margin:16px 12px 3px;color:rgba(255,255,255,.55);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.sidebar-footer{display:grid;gap:8px}.stat-grid.five{grid-template-columns:repeat(5,minmax(130px,1fr))}.filter-bar{display:flex;justify-content:flex-end;margin:-10px 0 18px}.filter-bar label{display:flex;align-items:center;gap:10px}.button.danger{background:var(--danger);color:#fff}.danger-zone{border-color:#e6b8b5}.narrow{max-width:620px}.small-text{font-size:12px}.block{display:block}.inline-edit,.inline-reset{display:flex;gap:6px;align-items:center}.inline-edit input,.inline-edit select,.inline-reset input{min-width:110px}.panel form+form{margin-top:8px}.status.preview{background:#e8f0f5;color:#204d68}.status.applied{background:#dff3e7;color:#1f6844}@media(max-width:1200px){.stat-grid.five{grid-template-columns:repeat(3,1fr)}}@media(max-width:650px){.stat-grid.five{grid-template-columns:1fr}.filter-bar{justify-content:stretch}.filter-bar label{width:100%;display:grid}.inline-edit,.inline-reset{display:grid}}

.analysis-nav{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}.analysis-nav a{padding:9px 13px;border:1px solid var(--line);border-radius:9px;background:#fff;font-weight:700}.analysis-nav a.active{background:var(--primary);color:#fff;border-color:var(--primary)}.settings-panel{max-width:none;grid-column:auto;margin-bottom:18px;resize:none}.settings-panel summary{cursor:pointer;font-weight:800}.settings-grid{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:13px;align-items:end;margin-top:16px}.full-panel{width:100%;max-width:none;grid-column:1/-1;resize:none;margin-bottom:18px}.key-row{background:#e8f5ec}.warning-row{background:#fff4dd}.distractor-item .panel-header span{color:var(--muted);font-size:13px}.histogram{display:grid;gap:12px}.hist-row{display:grid;grid-template-columns:70px 1fr 35px;gap:9px;align-items:center}.hist-track{height:22px;background:#edf1f4;border-radius:5px;overflow:hidden}.hist-track i{display:block;height:100%;background:var(--primary);min-width:2px}.hist-row strong{text-align:right}@media(max-width:1100px){.settings-grid{grid-template-columns:1fr 1fr}}@media(max-width:650px){.settings-grid{grid-template-columns:1fr}.analysis-nav{display:grid;grid-template-columns:1fr 1fr}}
.button-row{display:flex;gap:9px;flex-wrap:wrap}.stat-grid.seven{grid-template-columns:repeat(7,minmax(120px,1fr))}.svg-chart{min-height:300px}.svg-chart svg{width:100%;height:auto}.svg-chart line{stroke:#647681;stroke-width:1.2}.svg-chart line.grid{stroke:#dce4e9;stroke-width:1}.svg-chart line.zero{stroke:#99aab5;stroke-dasharray:5 4}.svg-chart text{font-size:12px;fill:#53616d;text-anchor:middle}.svg-chart text.axis-label{font-size:13px;font-weight:700;fill:#17212b}.svg-chart circle{fill:#145a86;stroke:#0d3f61;stroke-width:1.4;cursor:crosshair}.bar-list{display:grid;gap:13px}.bar-list>div{display:grid;grid-template-columns:minmax(85px,1fr) 3fr 58px;gap:10px;align-items:center}.bar-list i{height:17px;background:#edf1f4;border-radius:5px;overflow:hidden}.bar-list b{height:100%;display:block;background:#145a86}.bar-list strong{text-align:right}.category-list{display:grid;gap:9px}.category-list div{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:9px 2px}.mini-histogram{height:220px;display:flex;align-items:flex-end;gap:8px;border-left:1px solid var(--line);border-bottom:1px solid var(--line);padding:10px 10px 25px}.mini-histogram div{height:100%;flex:1;display:flex;align-items:flex-end;position:relative}.mini-histogram i{display:block;width:100%;background:#145a86;min-height:2px}.mini-histogram span{position:absolute;left:50%;bottom:-22px;transform:translateX(-50%);font-size:10px;color:var(--muted)}.report-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}.report-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:19px;box-shadow:var(--shadow);display:flex;flex-direction:column;align-items:flex-start}.report-card>span{font-size:11px;font-weight:800;color:#fff;background:var(--primary);padding:4px 8px;border-radius:999px}.report-card h2{font-size:18px;margin:14px 0 6px}.report-card p{color:var(--muted);font-size:13px;line-height:1.5;flex:1}.report-settings{resize:none}@media(max-width:1350px){.stat-grid.seven{grid-template-columns:repeat(4,1fr)}.report-grid{grid-template-columns:1fr 1fr}}@media(max-width:700px){.stat-grid.seven,.report-grid{grid-template-columns:1fr}.button-row{width:100%}.button-row .button{flex:1}}

/* Wayra v0.9 — modelación histórica e IRT */
.irt-settings-form .form-grid { margin-bottom: 1rem; }
.irt-item-selector { display:grid; grid-template-columns:repeat(auto-fill,minmax(125px,1fr)); gap:.55rem; padding:.8rem; margin:.6rem 0 1rem; border:1px solid var(--border); border-radius:10px; background:#f7fafc; max-height:240px; overflow:auto; }
.irt-item-selector label { display:flex; align-items:center; gap:.4rem; font-size:.9rem; }
.irt-curves-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(310px,1fr)); gap:1rem; }
.irt-curve-card { border:1px solid var(--border); border-radius:12px; padding:1rem; background:#fff; }
.irt-curve-card h3 { margin:0 0 .45rem; color:#123d58; }
.irt-curve { width:100%; min-height:230px; background:#fbfdfe; border:1px solid #dce7ed; border-radius:8px; }
.irt-curve .axis { stroke:#425d6b; stroke-width:.7; }
.irt-curve .grid { stroke:#d9e3e8; stroke-width:.4; stroke-dasharray:2 2; }
.irt-curve polyline { fill:none; stroke-width:1.5; vector-effect:non-scaling-stroke; }
.irt-curve .curve-simple { stroke:#145a86; }
.irt-curve .curve-corrected { stroke:#d36b24; stroke-dasharray:4 2; }
.irt-curve text { font-size:4px; fill:#425d6b; }
.irt-legend { display:flex; gap:1rem; font-size:.8rem; margin-bottom:.4rem; }
.irt-legend span::before { content:""; display:inline-block; width:24px; margin-right:.35rem; vertical-align:middle; border-top:3px solid #145a86; }
.irt-legend .corrected-line::before { border-top-color:#d36b24; border-top-style:dashed; }
.irt-params { display:grid; grid-template-columns:auto 1fr auto 1fr auto 1fr; gap:.3rem .55rem; margin:.6rem 0 0; font-size:.86rem; }
.irt-params dt { font-weight:700; color:#45606f; }
.irt-params dd { margin:0; }
.formula-list dt { font-weight:700; margin-top:.65rem; }
.formula-list dd { margin:.15rem 0 .5rem; overflow-wrap:anywhere; }
td small { display:block; color:#795548; margin-top:.25rem; max-width:32rem; }
@media (max-width:700px){ .irt-params{grid-template-columns:auto 1fr;} .irt-curves-grid{grid-template-columns:1fr;} }

/* Wayra System Web v1.0 — accesibilidad y baseline estable */
.skip-link{position:fixed;left:12px;top:-80px;z-index:9999;background:#fff;color:#102b3c;border:2px solid #145a86;border-radius:8px;padding:10px 14px;font-weight:800;transition:top .15s}.skip-link:focus{top:12px}.badge.stable{background:#dff3e7;color:#1f6844}.nav-section{margin:15px 12px 2px;color:#9fb3bf;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid #e3a52b;outline-offset:3px}.panel-header:active{cursor:grabbing}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Wayra System Web v1.1.0 — catálogos, plantillas y pegado masivo */
.paste-hint{margin:0 0 12px;padding:10px 12px;border:1px dashed #a9bfcc;background:#f4f9fc;border-radius:9px;color:#355566;font-size:13px}.paste-notice{position:fixed;right:24px;bottom:24px;background:#123d58;color:#fff;padding:12px 16px;border-radius:10px;box-shadow:0 12px 30px rgba(0,0,0,.24);z-index:9999;opacity:0;transform:translateY(12px);pointer-events:none;transition:.18s ease}.paste-notice.visible{opacity:1;transform:translateY(0)}.wayra-dialog{width:min(900px,94vw);border:0;border-radius:16px;padding:0;box-shadow:0 26px 80px rgba(0,0,0,.35);color:var(--text)}.wayra-dialog::backdrop{background:rgba(9,25,35,.6)}.wayra-dialog form{padding:22px}.wayra-dialog header{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:18px}.wayra-dialog header h2{margin:0}.wayra-dialog header p{margin:6px 0 0;color:var(--muted)}.dialog-close{border:0;background:#edf1f4;border-radius:50%;width:36px;height:36px;font-size:24px;line-height:1;cursor:pointer}.dialog-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.dialog-grid textarea{font-family:Consolas,"Courier New",monospace;line-height:1.45}.panel .stack-form{margin-bottom:0}@media(max-width:720px){.dialog-grid{grid-template-columns:1fr}.wayra-dialog form{padding:16px}}

/* Wayra System Web v1.1.1 — catálogos cerrados, Excel y pegado robusto */
.dialog-shell{padding:22px}.dialog-shell>header{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:18px}.catalog-dialog{width:min(1120px,96vw)}.narrow-dialog{width:min(620px,94vw)}.catalog-import-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px;background:#f4f9fc;border:1px solid #d7e6ee;border-radius:10px;margin-bottom:18px}.inline-upload{display:flex;align-items:center;gap:10px;margin:0}.inline-upload input[type=file]{max-width:300px}.catalog-grid{align-items:start}.catalog-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}.catalog-heading h3{margin:0}.catalog-table-wrap{max-height:390px}.catalog-table input{min-width:120px;width:100%}.catalog-table th:last-child,.catalog-table td:last-child{width:44px;text-align:center}.icon-button{border:0;background:#f6e7e5;color:#8c2828;border-radius:8px;width:30px;height:30px;font-size:20px;cursor:pointer}.button.small{padding:7px 10px;font-size:12px}.data-grid select{min-width:180px}.wayra-dialog textarea{width:100%;resize:vertical}.wayra-dialog .form-actions{margin-top:18px}@media(max-width:800px){.catalog-import-bar,.inline-upload{align-items:stretch;flex-direction:column}.inline-upload input[type=file]{max-width:none}.dialog-shell{padding:16px}.data-grid select{min-width:150px}}

/* Wayra System Web v1.1.2 — configuración histórica de catálogos en página independiente */
.catalog-page-panel{resize:none}.catalog-page-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}.catalog-page-grid section{min-width:0}.catalog-page-table-wrap{max-height:58vh;border:1px solid var(--line);border-radius:10px}.catalog-page-upload{justify-content:flex-start}.catalog-page-upload input[type=file]{max-width:520px}.catalog-page-grid h2{margin:0}@media(max-width:960px){.catalog-page-grid{grid-template-columns:1fr}.catalog-page-table-wrap{max-height:430px}}

/* Wayra System Web v1.2.0 — vista compacta, test–retest y curvas IRT superpuestas */
html{font-size:14px}.app-shell{grid-template-columns:218px 1fr}.sidebar{padding:16px 12px}.brand-mark{width:34px;height:34px;border-radius:9px;font-size:20px}.sidebar nav{gap:4px;margin-top:20px}.nav-link{padding:8px 10px}.topbar{height:52px;padding:0 18px}.page-content{padding:18px;max-width:1840px}.page-heading{margin-bottom:14px;gap:16px}.page-heading h1{font-size:23px;margin-bottom:4px}.button{padding:8px 12px;border-radius:7px}.panel{padding:13px;border-radius:10px;min-width:280px}.panel-header{padding-bottom:9px;margin-bottom:10px}.panel-header h2{font-size:16px}.panel-grid{gap:12px}.stat-grid{gap:10px;margin-bottom:13px}.stat{padding:11px 13px;border-radius:9px}.stat strong{font-size:21px;margin-top:3px}.stat span{font-size:12px}th,td{padding:7px 8px}th{font-size:11px}.form-grid{gap:11px}.settings-grid{gap:9px;margin-top:11px}.analysis-nav{gap:5px;margin-bottom:12px}.analysis-nav a{padding:7px 10px}.alert{padding:10px 12px;margin-bottom:12px}.calculate-bar{padding:11px 13px;margin-bottom:12px}.run-meta{gap:12px;margin-bottom:12px}.action-grid{gap:8px}.action-card{padding:11px}.progress-steps{gap:8px;margin-bottom:13px}.step{padding:9px}.table-wrap.tall{max-height:70vh}input,textarea,select{padding:8px 9px;border-radius:7px}.form-actions{padding-top:11px;margin-top:12px}.full-panel{margin-bottom:12px}.settings-panel{margin-bottom:12px}
.compact-settings{grid-template-columns:minmax(240px,360px) 1fr auto}.setting-explanation{align-self:end;color:var(--muted);font-size:12px;line-height:1.4;padding:7px 0}.test-retest-form{display:grid;grid-template-columns:minmax(210px,280px) minmax(210px,280px) 1fr auto;gap:12px;align-items:end}.formula-contract{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 12px}.formula-contract code{padding:7px 9px}.selector-toolbar{display:flex;align-items:center;gap:8px;margin:8px 0}.selector-toolbar span{margin-right:auto;color:var(--muted)}.irt-item-selector{max-height:190px;overflow:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(105px,1fr));gap:5px;padding:8px;border:1px solid var(--line);border-radius:8px;margin-bottom:10px}.irt-item-selector label{display:flex;align-items:center;gap:5px;font-size:12px;font-weight:600}.irt-overlay-panel{overflow:visible}.irt-overlay-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:16px;align-items:start}.irt-overlay-chart{display:grid;place-items:center;min-height:520px;background:#fbfcfd;border:1px solid var(--line);border-radius:10px;padding:8px}.irt-overlay-svg{width:100%;max-width:1180px;height:auto;min-height:500px}.irt-overlay-svg .axis{stroke:#344e5c;stroke-width:2}.irt-overlay-svg .grid{stroke:#d8e2e8;stroke-width:1}.irt-overlay-svg text{font-size:18px;fill:#425d6b}.irt-overlay-legend{max-height:520px;overflow:auto;border:1px solid var(--line);border-radius:10px;padding:8px;background:#fff}.irt-legend-row{display:grid;grid-template-columns:22px auto auto 1fr;gap:6px;align-items:center;padding:5px 3px;border-bottom:1px solid #edf1f4}.irt-legend-row small{color:var(--muted);font-size:10px}.curve-swatch{width:20px;border-top:3px solid var(--curve-color)}.line-style-key{display:grid;gap:6px;padding:9px 4px;font-size:11px}.solid-key::before,.dash-key::before{content:"";display:inline-block;width:24px;margin-right:6px;border-top:3px solid #345}.dash-key::before{border-top-style:dashed}.status.completed_with_warnings{text-transform:none;letter-spacing:0}.nce-settings summary{font-weight:800}
@media(max-width:1100px){.test-retest-form{grid-template-columns:1fr 1fr}.compact-settings{grid-template-columns:1fr 1fr}.irt-overlay-layout{grid-template-columns:1fr}.irt-overlay-legend{max-height:240px}.irt-overlay-chart{min-height:420px}.irt-overlay-svg{min-height:400px}}
@media(max-width:700px){html{font-size:15px}.app-shell{grid-template-columns:1fr}.page-content{padding:12px}.test-retest-form,.compact-settings{grid-template-columns:1fr}.irt-overlay-chart{min-height:310px}.irt-overlay-svg{min-height:290px}.selector-toolbar{align-items:stretch;flex-direction:column}.selector-toolbar span{margin-right:0}.irt-item-selector{grid-template-columns:repeat(2,1fr)}}


/* Wayra System Web v1.2.1 — densidad real al 100 %, paneles ordenables y marcas especiales */
html{font-size:12px}body{font-size:1rem;line-height:1.32}.app-shell{grid-template-columns:184px minmax(0,1fr)}.sidebar{padding:10px 8px}.brand{gap:8px}.brand-mark{width:30px;height:30px;border-radius:8px;font-size:18px}.brand small{margin-top:1px;font-size:10px}.sidebar nav{gap:2px;margin-top:12px}.nav-link{padding:6px 8px;border-radius:6px}.nav-section{margin:10px 8px 2px;font-size:9px}.user-card{padding:8px 5px}.user-card small{margin-top:2px}.topbar{height:42px;padding:0 12px;font-size:11px}.topbar .badge{font-size:9px;padding:3px 7px;white-space:nowrap}.page-content{padding:10px 12px;max-width:none;width:100%}.page-heading{margin-bottom:7px;gap:10px;align-items:center}.page-heading h1{font-size:18px;margin:0 0 2px}.page-heading p{font-size:11px;line-height:1.25}.compact-heading{margin-bottom:6px}.button{padding:5px 9px;border-radius:6px;font-size:11px;min-height:28px}.button.small{padding:4px 7px;font-size:10px}.button-row{gap:5px}.badge,.status{padding:3px 7px;font-size:9px;letter-spacing:0}.analysis-nav{gap:4px;margin:0 0 7px}.analysis-nav a{padding:5px 8px;border-radius:6px;font-size:11px}.panel-grid{gap:8px}.panel{padding:8px;border-radius:8px;min-width:0;max-width:100%;resize:vertical;overflow:auto}.panel.compact{min-width:0}.full-panel{margin-bottom:7px}.settings-panel{margin-bottom:7px}.form-panel{max-width:none}.panel-header{gap:8px;padding-bottom:5px;margin-bottom:6px;cursor:default}.panel-header h2{font-size:14px}.panel-header>span:not(.drag-handle){font-size:10px}.static-header{cursor:default}.drag-handle{display:inline-flex;align-items:center;gap:3px;padding:3px 6px;border:1px solid #cdd8df;border-radius:5px;background:#f4f7f9;color:#425d6b;font-size:9px;font-weight:700;text-transform:none;cursor:grab;user-select:none;touch-action:none}.drag-handle:hover{background:#e7f0f5;border-color:#8eabbc}.drag-handle:active{cursor:grabbing}.panel-moving{opacity:.62;outline:2px dashed var(--primary);outline-offset:2px}.panel-reordering{cursor:grabbing}.stat-grid,.stat-grid.five,.stat-grid.seven{grid-template-columns:repeat(auto-fit,minmax(105px,1fr));gap:6px;margin-bottom:7px}.stat{padding:7px 9px;border-radius:7px;box-shadow:0 3px 10px rgba(26,42,55,.05)}.stat span{font-size:9px}.stat strong{font-size:17px;margin-top:1px}th,td{padding:4px 6px}th{font-size:9px;line-height:1.15;white-space:normal}td{font-size:11px}.table-wrap.tall{max-height:74vh}label{gap:3px;font-size:11px;min-width:0}input:not([type=checkbox]):not([type=radio]),textarea,select{width:100%;min-width:0;padding:5px 7px;border-radius:6px;min-height:28px}.form-grid{gap:7px}.inline-form{gap:7px;margin-bottom:7px}.form-actions{gap:6px;padding-top:7px;margin-top:7px}.form-actions.sticky{bottom:-8px}.settings-grid{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:6px;margin-top:7px}.settings-grid>*{min-width:0}.settings-grid .button{align-self:end}.compact-settings{grid-template-columns:minmax(190px,280px) minmax(260px,1fr) auto}.setting-explanation{font-size:10px;line-height:1.25;padding:3px 0}.test-retest-form{grid-template-columns:minmax(160px,220px) minmax(160px,220px) minmax(240px,1fr) auto;gap:7px}.alert{padding:6px 9px;margin-bottom:7px;border-radius:7px;font-size:11px}.alert ul{margin:4px 0 0;padding-left:18px}.calculate-bar{padding:7px 9px;margin-bottom:7px;border-radius:7px}.calculate-bar small{font-size:10px}.run-meta{gap:7px;margin-bottom:6px;font-size:10px}.run-meta code{font-size:9px}.warning-summary{margin:0 0 7px;border:1px solid #efd79a;border-radius:7px;background:#fff8e6;color:#6f4b0b}.warning-summary summary{display:flex;align-items:center;gap:8px;cursor:pointer;padding:5px 8px;font-size:10px;font-weight:700;list-style:none}.warning-summary summary::-webkit-details-marker{display:none}.warning-summary summary::after{content:"▾";margin-left:auto}.warning-summary[open] summary::after{content:"▴"}.warning-body{border-top:1px solid #efd79a;padding:7px 9px;font-size:10px;line-height:1.35}.warning-body p{margin:0 0 5px}.warning-body ul{margin:3px 0;padding-left:18px}.action-grid{gap:6px}.action-card{padding:7px;border-radius:7px}.action-card span{font-size:10px}.progress-steps{gap:5px;margin-bottom:7px}.step{padding:6px;border-radius:7px;grid-template-columns:28px 1fr}.workflow{gap:5px;padding-left:18px}.report-grid{gap:7px;margin-bottom:8px}.report-card{padding:9px;border-radius:8px;box-shadow:0 3px 10px rgba(26,42,55,.05)}.report-card>span{font-size:8px;padding:2px 6px}.report-card h2{font-size:14px;margin:6px 0 3px}.report-card p{font-size:10px;line-height:1.3;margin:3px 0 7px}.report-settings .panel-header{margin-bottom:4px}.empty{padding:20px}.details{gap:5px 10px}.category-list{gap:4px}.category-list div{padding:4px 1px}.bar-list{gap:6px}.bar-list>div{gap:6px}.mini-histogram{height:160px;padding:7px 7px 20px}.svg-chart{min-height:220px}.svg-chart text{font-size:10px}.svg-chart text.axis-label{font-size:11px}.response-code-note{padding:6px 8px;margin-bottom:7px;border:1px solid #b9d4e4;background:#edf7fc;border-radius:7px;color:#234f68;font-size:10px}.response-code-note code{font-weight:800}.key-row{background:#e5f4ea}.warning-row{background:#fff2d4}.omission-row{background:#edf2f5;color:#40515c}.multimark-row{background:#f2eafb;color:#533976}.distractor-item .panel-header span{font-size:10px}.distractor-table{table-layout:fixed;min-width:980px}.distractor-table th:nth-child(1){width:7%}.distractor-table th:nth-child(2){width:9%}.distractor-table th:nth-child(3){width:8%}.distractor-table th:nth-child(4){width:8%}.distractor-table th:nth-child(5),.distractor-table th:nth-child(6),.distractor-table th:nth-child(7),.distractor-table th:nth-child(8),.distractor-table th:nth-child(9){width:7.5%}.distractor-table th:nth-child(10){width:28%}.distractor-table td:last-child{white-space:normal;line-height:1.25}.response-grid{max-height:74vh}.response-grid td{padding:2px}.response-grid td input{min-width:34px;width:34px;padding:4px}.sticky-col{min-width:175px}.paste-hint{padding:6px 8px;margin:0 0 6px;font-size:10px}.irt-item-selector{max-height:150px;grid-template-columns:repeat(auto-fill,minmax(85px,1fr));gap:3px;padding:5px}.irt-item-selector label{font-size:10px}.selector-toolbar{gap:5px;margin:4px 0}.irt-overlay-layout{grid-template-columns:minmax(0,1fr) 230px;gap:8px}.irt-overlay-chart{min-height:390px;padding:4px}.irt-overlay-svg{min-height:370px}.irt-overlay-svg text{font-size:14px}.irt-overlay-legend{max-height:390px;padding:5px}.irt-legend-row{gap:4px;padding:3px 2px}.formula-contract{gap:5px;margin:5px 0 7px}.formula-contract code{padding:4px 6px}@media(max-width:1100px){.compact-settings,.test-retest-form{grid-template-columns:repeat(2,minmax(0,1fr))}.irt-overlay-layout{grid-template-columns:1fr}.irt-overlay-legend{max-height:180px}.report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){html{font-size:13px}.app-shell{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.page-content{padding:8px}.topbar{height:auto;min-height:40px;flex-wrap:wrap;padding:7px 9px}.compact-settings,.test-retest-form{grid-template-columns:1fr}.report-grid{grid-template-columns:1fr}.panel,.panel.compact{grid-column:1/-1}.distractor-table{min-width:860px}}


/* Wayra System Web 1.2.2 — densidad al 100 %, reordenamiento real e IRT prioritario */
html{font-size:10.5px}body{line-height:1.2}.app-shell{grid-template-columns:158px minmax(0,1fr)}.sidebar{padding:7px 6px}.brand{gap:6px}.brand-mark{width:26px;height:26px;font-size:15px;border-radius:6px}.brand strong{font-size:11px}.brand small{font-size:8.5px}.sidebar nav{gap:1px;margin-top:8px}.nav-link{padding:4px 6px;border-radius:4px;font-size:10px}.nav-section{margin:7px 6px 1px;font-size:8px}.user-card{padding:5px 4px}.user-card strong{font-size:10px}.user-card small{font-size:8.5px}.topbar{height:32px;padding:0 8px;font-size:9.5px}.topbar .badge{font-size:8px;padding:2px 5px}.page-content{padding:6px 8px}.page-heading{margin-bottom:4px;gap:6px}.page-heading h1{font-size:16px;margin-bottom:1px}.page-heading p{font-size:9.5px}.button{padding:4px 7px;min-height:23px;font-size:9.5px;border-radius:5px}.button.small{padding:3px 5px;font-size:8.5px}.analysis-nav{gap:3px;margin-bottom:4px}.analysis-nav a{padding:4px 6px;font-size:9.5px;border-radius:5px}.panel-grid{gap:5px;grid-auto-flow:row dense}.panel{padding:5px;border-radius:6px;box-shadow:0 2px 7px rgba(26,42,55,.045);resize:none}.full-panel,.settings-panel{margin-bottom:4px}.panel-header{gap:5px;padding-bottom:3px;margin-bottom:4px}.panel-header h2{font-size:12.5px}.panel-header>span:not(.drag-handle){font-size:9px}.stat-grid,.stat-grid.five,.stat-grid.seven{gap:4px;margin-bottom:4px;grid-template-columns:repeat(auto-fit,minmax(85px,1fr))}.stat{padding:5px 6px;border-radius:5px}.stat span{font-size:8px}.stat strong{font-size:14px;margin-top:0}.compact-stats .stat{padding:4px 5px}th,td{padding:3px 4px}th{font-size:8px}td{font-size:9.5px}.table-wrap.tall{max-height:78vh}label{font-size:9.5px;gap:2px}input:not([type=checkbox]):not([type=radio]),textarea,select{padding:4px 5px;min-height:23px;border-radius:4px;font-size:9.5px}.settings-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;margin-top:4px}.settings-grid label,.settings-grid .button{min-width:0}.settings-grid .button{width:100%}.form-grid{gap:4px}.form-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.inline-form{gap:4px;margin-bottom:4px}.form-actions{padding-top:4px;margin-top:4px}.alert{padding:4px 6px;margin-bottom:4px;font-size:9.5px;border-radius:5px}.run-meta{gap:5px;margin-bottom:4px;font-size:9px}.status,.badge{padding:2px 5px;font-size:8px}.warning-summary{margin-bottom:4px;border-radius:5px}.warning-summary summary{padding:3px 6px;font-size:9px}.warning-body{padding:4px 6px;font-size:9px}.drag-handle{padding:2px 4px;font-size:8px;gap:4px}.panel-moving{opacity:.52;outline:2px dashed var(--primary);outline-offset:2px;pointer-events:none}.panel-move-buttons{display:inline-flex;gap:2px}.panel-move-buttons button{border:1px solid #bdccd5;background:#fff;color:#284d63;border-radius:3px;padding:0 4px;min-width:19px;height:18px;line-height:16px;font-size:8px;cursor:pointer}.panel-move-buttons button:hover{background:#dcecf5}.panel-reordering [data-panel-id]{transition:transform .08s ease}.distractor-item .panel-header{align-items:baseline}.distractor-header-meta{white-space:nowrap}.distractor-table{min-width:820px}.distractor-table th:nth-child(10){width:30%}.distractor-table td:last-child{line-height:1.15}.warning-row{background:#fff0cd}.key-row{background:#def1e5}.irt-method-note{max-width:none}.irt-priority-panel{margin-top:0}.irt-inline-stats{display:flex;gap:4px;flex-wrap:wrap}.irt-inline-stats span{background:#edf3f6;border-radius:999px;padding:2px 5px;color:#385565;font-size:8px}.irt-overlay-layout{grid-template-columns:minmax(0,1fr) 190px;gap:5px}.irt-overlay-chart{min-height:285px;height:285px;padding:2px}.irt-overlay-svg{min-height:275px;height:275px;max-width:none}.irt-overlay-svg text{font-size:12px}.irt-overlay-legend{max-height:285px;padding:3px}.irt-legend-row{grid-template-columns:16px auto auto 1fr;gap:3px;padding:2px 1px}.irt-legend-row small{font-size:7.5px}.curve-swatch{width:14px}.line-style-key{padding:4px 2px;font-size:8px}.irt-config-details summary,.irt-initial-config summary,.formula-details summary{font-weight:800;cursor:pointer}.compact-irt-form{display:grid;gap:4px}.irt-item-selector{max-height:105px;grid-template-columns:repeat(auto-fill,minmax(70px,1fr));gap:2px;padding:3px;margin-bottom:4px}.irt-item-selector label{font-size:8.5px}.selector-toolbar{margin:2px 0;gap:3px}.formula-list{display:grid;grid-template-columns:max-content 1fr;gap:3px 7px}.formula-list dt{font-weight:800}.formula-list dd{margin:0}@media(max-width:1100px){.settings-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.irt-overlay-layout{grid-template-columns:minmax(0,1fr) 170px}.irt-overlay-chart{height:260px;min-height:260px}.irt-overlay-svg{height:250px;min-height:250px}.irt-overlay-legend{max-height:260px}}@media(max-width:760px){html{font-size:12px}.app-shell{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.settings-grid,.form-grid.four{grid-template-columns:1fr}.irt-overlay-layout{grid-template-columns:1fr}.irt-overlay-legend{max-height:130px}.distractor-table{min-width:760px}}

/* Wayra System Web 1.3.0 — rediseño espacial, paneles libres y salidas compactas */
:root{--topbar-h:30px;--page-gap:5px;--panel-gap:7px}
html{font-size:10px}
body{line-height:1.16;overflow-x:hidden}
.app-shell{grid-template-columns:156px minmax(0,1fr)}
.sidebar{padding:6px 5px}
.brand{gap:5px}.brand-mark{width:25px;height:25px;font-size:14px}.brand strong{font-size:10px}.brand small{font-size:8px}
.sidebar nav{gap:0;margin-top:6px}.nav-link{padding:4px 5px;font-size:9.5px}.nav-section{margin:6px 5px 1px;font-size:7.5px}
.sidebar-footer{gap:3px}.user-card{padding:4px 3px}.user-card strong{font-size:9.5px}.user-card small{font-size:8px}
.topbar{height:var(--topbar-h);padding:0 7px;font-size:8.5px}
.topbar .badge{font-size:7.5px;padding:2px 5px}
.page-content{padding:5px 7px;max-width:none}
.page-heading{position:sticky;top:var(--topbar-h);z-index:18;background:var(--bg);align-items:center;gap:6px;margin:-1px 0 4px;padding:3px 0 4px;border-bottom:1px solid #e1e6ea}
.page-heading h1{font-size:15px;margin:0}.page-heading p{font-size:8.8px;margin-top:1px}.page-heading>div:first-child{min-width:0}.button-row,.page-actions{display:flex;justify-content:flex-end;gap:4px;flex-wrap:wrap}
.button{padding:3px 7px;min-height:22px;font-size:9px;border-radius:4px}.button.tiny{padding:2px 5px;min-height:18px;font-size:8px}.button.small{padding:2px 5px;font-size:8px}
.analysis-nav{gap:3px;margin:0 0 4px}.analysis-nav a{padding:3px 6px;font-size:9px;border-radius:4px}
.stat-grid,.stat-grid.five,.stat-grid.seven{gap:4px;margin-bottom:4px;grid-template-columns:repeat(auto-fit,minmax(78px,1fr))}.stat{padding:4px 5px;border-radius:5px}.stat span{font-size:7.6px}.stat strong{font-size:13px;margin-top:0}
.panel-grid{gap:var(--panel-gap);grid-auto-flow:row dense}.panel{padding:5px;border-radius:6px;min-width:250px;box-shadow:0 2px 7px rgba(26,42,55,.05)}
.panel-header{gap:4px;padding-bottom:3px;margin-bottom:4px;cursor:default}.panel-header h2{font-size:12px}.panel-header>span:not(.drag-handle){font-size:8.5px}
.drag-handle{display:inline-flex;align-items:center;gap:3px;color:#294c61;background:#edf4f8;border:1px solid #bdd0db;border-radius:4px;padding:2px 5px;font-size:7.5px;font-weight:800;text-transform:none;cursor:move;touch-action:none;user-select:none}
.resize-handle{display:none;position:absolute;right:1px;bottom:1px;width:16px;height:16px;cursor:nwse-resize;z-index:12;touch-action:none;background:linear-gradient(135deg,transparent 0 48%,#7d99a9 49% 57%,transparent 58% 66%,#7d99a9 67% 75%,transparent 76%)}
.layout-toolbar{display:flex;justify-content:flex-end;align-items:center;gap:4px;margin:0 0 4px;min-height:20px}.layout-toolbar-label{margin-right:auto;color:var(--muted);font-size:8px}.layout-toolbar .active{background:#dff1e7;color:#1e6843;border-color:#a7d3ba}
.free-layout-active{display:block!important;position:relative;min-height:180px;width:100%;overflow:visible;border:1px dashed #cad7df;border-radius:6px;background:linear-gradient(#f7f9fa 1px,transparent 1px),linear-gradient(90deg,#f7f9fa 1px,transparent 1px);background-size:20px 20px}
.free-layout-active>[data-panel-id]{position:absolute!important;grid-column:auto!important;margin:0!important;max-width:none!important;resize:none!important;overflow:auto!important}
.free-layout-active .resize-handle{display:block}.free-layout-locked .drag-handle,.free-layout-locked .resize-handle{opacity:.35;cursor:not-allowed}
.panel-moving,.panel-resizing{outline:2px solid var(--primary);outline-offset:1px;box-shadow:0 10px 28px rgba(20,90,134,.22)!important}.panel-moving{opacity:.92}
.form-actions{gap:4px;padding-top:4px;margin-top:4px}.form-actions.top-actions{position:sticky;top:calc(var(--topbar-h) + 30px);z-index:15;justify-content:flex-end;background:#fff;border:1px solid var(--line);border-radius:5px;padding:4px;margin:0 0 4px}.form-actions.sticky{position:static;bottom:auto}
label{gap:2px;font-size:9px}input:not([type=checkbox]):not([type=radio]),textarea,select{padding:3px 5px;min-height:23px;font-size:9px;border-radius:4px}
th,td{padding:3px 4px}th{font-size:7.8px}td{font-size:9px}.table-wrap.tall{max-height:76vh}
.alert{padding:4px 6px;margin-bottom:4px;font-size:9px}.run-meta{gap:5px;margin-bottom:3px;font-size:8.5px}.warning-summary{margin-bottom:3px}.warning-summary summary{padding:3px 5px;font-size:8.5px}.warning-body{padding:4px 6px;font-size:8.5px}
.action-grid{gap:4px}.action-card{padding:6px}.action-card span{font-size:8.5px}.workflow{gap:3px;padding-left:15px}
.progress-steps{gap:4px;margin-bottom:4px}.step{padding:4px;grid-template-columns:24px 1fr}.step strong{width:22px;height:22px}
.settings-panel,.full-panel{margin-bottom:4px}.settings-grid{gap:4px;margin-top:4px;grid-template-columns:repeat(auto-fit,minmax(125px,1fr))}.test-retest-form{gap:4px}
.report-grid{gap:4px;margin-bottom:4px}.report-card{padding:6px;border-radius:6px}.report-card h2{font-size:12px;margin:4px 0 2px}.report-card p{font-size:8.5px;line-height:1.22;margin:2px 0 5px}.report-card>span{font-size:7px;padding:1px 4px}

/* Barras verticales reutilizables */
.vertical-bars{height:180px;display:flex;align-items:flex-end;gap:7px;padding:8px 8px 27px;border-left:1px solid var(--line);border-bottom:1px solid var(--line);overflow-x:auto}
.vertical-bar{height:100%;min-width:42px;flex:1;display:flex;align-items:flex-end;justify-content:center;position:relative}.vertical-bar i{display:block;width:70%;min-width:18px;background:var(--primary);border-radius:4px 4px 0 0;min-height:2px}.vertical-bar .bar-value{position:absolute;bottom:calc(var(--bar-height) + 3px);font-size:8px;font-weight:800}.vertical-bar .bar-label{position:absolute;bottom:-22px;left:50%;transform:translateX(-50%);white-space:nowrap;font-size:8px;max-width:75px;overflow:hidden;text-overflow:ellipsis}.vertical-bar:hover i{background:var(--primary-dark)}
.svg-chart{min-height:210px}.svg-chart svg{max-height:235px}.svg-chart text{font-size:9px}.svg-chart text.axis-label{font-size:10px}

/* Distractores en dos columnas con orden visual por filas */
.distractor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;align-items:start}.distractor-grid .distractor-item{min-width:0;margin:0;resize:none;overflow:auto}.distractor-table{min-width:760px}.distractor-header-meta{font-size:8px!important}.distractor-item .panel-header h2{font-size:10px}.distractor-item td,.distractor-item th{font-size:7.5px;padding:2px 3px}.distractor-item td:last-child{line-height:1.12}

/* Vista de distribución: histograma vertical */
.histogram.vertical-histogram{height:205px;display:flex;align-items:flex-end;gap:6px;padding:8px 7px 27px;border-left:1px solid var(--line);border-bottom:1px solid var(--line)}
.histogram.vertical-histogram .hist-row{height:100%;min-width:38px;flex:1;display:flex;align-items:flex-end;justify-content:center;position:relative}.histogram.vertical-histogram .hist-track{height:100%;width:70%;display:flex;align-items:flex-end;background:#edf1f4}.histogram.vertical-histogram .hist-track i{width:100%;min-height:2px}.histogram.vertical-histogram .hist-label{position:absolute;bottom:-21px;font-size:8px;white-space:nowrap}.histogram.vertical-histogram strong{position:absolute;bottom:calc(var(--hist-height) + 2px);font-size:8px}

/* IRT: gráfica prioritaria y controles compactos */
.irt-workspace{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:5px;align-items:start}.irt-main-chart{min-height:330px}.irt-overlay-layout{grid-template-columns:minmax(0,1fr) 175px;gap:4px}.irt-overlay-chart{height:300px;min-height:300px}.irt-overlay-svg{height:292px;min-height:292px}.irt-overlay-legend{max-height:300px}.irt-side-stack{display:grid;gap:5px}.irt-item-selector{max-height:115px;grid-template-columns:repeat(auto-fill,minmax(58px,1fr));gap:2px}.irt-parameters-table{max-height:245px}.irt-method-note{margin-bottom:3px}

/* Informes y listados */
.list-toolbar{display:flex;justify-content:flex-end;gap:4px;position:sticky;top:calc(var(--topbar-h) + 32px);z-index:14;background:#fff;padding:3px;border-bottom:1px solid var(--line)}
.report-layout{display:grid;grid-template-columns:minmax(330px,.78fr) minmax(480px,1.22fr);gap:5px;align-items:start}.report-left{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.report-left .report-settings{grid-column:1/-1}.report-left .report-card{min-height:110px}.report-individuals{min-width:0}

@media(max-width:1100px){.distractor-grid{grid-template-columns:1fr}.irt-workspace,.report-layout{grid-template-columns:1fr}.report-left{grid-template-columns:repeat(2,1fr)}}
@media(max-width:899px){html{font-size:12px}.app-shell{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.page-heading{position:static}.layout-toolbar{display:none}.free-layout-active{display:grid!important;height:auto!important;border:0;background:none}.free-layout-active>[data-panel-id]{position:relative!important;left:auto!important;top:auto!important;width:auto!important;height:auto!important;grid-column:1/-1!important}.resize-handle{display:none!important}.report-left{grid-template-columns:1fr}.distractor-grid{grid-template-columns:1fr}.form-actions.top-actions,.list-toolbar{position:static}}

/* Wayra System Web 1.3.1 — diseño bloqueado por defecto y memoria espacial estable */
.layout-toolbar [disabled]{opacity:.45;cursor:not-allowed}.layout-toolbar-label{font-weight:800}.layout-toolbar .active{background:#fff0cd;color:#7a4a00;border-color:#dfbd73}
.free-layout-active.free-layout-locked>[data-panel-id]{transition:none!important}.free-layout-locked .drag-handle,.free-layout-locked .resize-handle{display:none!important;pointer-events:none!important}.free-layout-editing .drag-handle{display:inline-flex!important}.free-layout-editing .resize-handle{display:block!important}.free-layout-editing{border-color:#8fb6cc;background-color:#fbfdfe}.free-layout-editing>[data-panel-id]{box-shadow:0 3px 10px rgba(20,90,134,.09)}

/* Wayra System Web 1.3.3 — persistencia estricta y restauración exacta; superficie completa, colisiones precisas y gráficas fluidas */
.free-layout-active{box-sizing:border-box;overflow:visible!important}
.free-layout-active>.chart-panel{display:flex!important;flex-direction:column;overflow:hidden!important}
.free-layout-active>.chart-panel>.panel-header{flex:0 0 auto}
.free-layout-active>.chart-panel>.svg-chart,
.free-layout-active>.chart-panel>.vertical-bars,
.free-layout-active>.chart-panel>.mini-histogram{flex:1 1 auto;min-height:0!important;height:auto!important;width:100%;overflow:hidden!important;box-sizing:border-box}
.free-layout-active>.chart-panel>.svg-chart svg{display:block;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important}
.free-layout-active>.chart-panel>.vertical-bars{padding:5px 6px 22px;align-items:flex-end}
.free-layout-active>.chart-panel>.mini-histogram{padding:5px 6px 19px;align-items:flex-end}
.free-layout-active>.chart-panel .vertical-bar,
.free-layout-active>.chart-panel .mini-histogram>div{min-height:0}
.free-layout-active>.chart-panel .vertical-bar .bar-label{bottom:-18px}
.free-layout-active>.chart-panel .mini-histogram span{bottom:-17px}
.free-layout-editing>.chart-panel{overflow:hidden!important}

/* Wayra System Web 1.4.0 — paneles adaptables y módulos TCT-TRI */
.free-layout-active>.adaptive-content-panel{
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
  min-height:0!important;
  overflow:hidden!important;
  container-type:size;
}
.free-layout-active>.adaptive-content-panel>.panel-header{
  flex:0 0 auto!important;
  min-width:0;
}
.free-layout-active>.chart-panel>.svg-chart,
.free-layout-active>.chart-panel>.vertical-bars,
.free-layout-active>.chart-panel>.mini-histogram,
.free-layout-active>.chart-panel>.irt-overlay-chart{
  flex:1 1 auto!important;
  width:100%!important;
  min-width:0!important;
  min-height:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}
.free-layout-active>.chart-panel>.svg-chart svg,
.free-layout-active>.chart-panel>.irt-overlay-chart svg,
.free-layout-active>.chart-panel .irt-overlay-svg{
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
  max-width:100%!important;
  max-height:100%!important;
  overflow:hidden!important;
}
.free-layout-active>.chart-panel>.vertical-bars,
.free-layout-active>.chart-panel>.mini-histogram{
  overflow-x:hidden!important;
  overflow-y:hidden!important;
}
.free-layout-active>.chart-panel .vertical-bar,
.free-layout-active>.chart-panel .mini-histogram>div{
  min-width:0!important;
  flex:1 1 0!important;
}
.free-layout-active>.chart-panel .bar-label,
.free-layout-active>.chart-panel .mini-histogram span{
  max-width:100%!important;
  overflow:hidden;
  text-overflow:ellipsis;
}
.free-layout-active>.chart-panel .chart-labels-compact .bar-label,
.free-layout-active>.chart-panel .chart-labels-compact .bar-value{
  font-size:7px!important;
}
.free-layout-active>.table-panel>.table-wrap{
  flex:1 1 auto!important;
  width:100%!important;
  min-width:0!important;
  min-height:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  overscroll-behavior:contain;
}
.free-layout-active>.table-panel>.table-wrap>table{
  margin:0!important;
  transform-origin:top left;
}
.free-layout-active>.table-panel.panel-size-sm th,
.free-layout-active>.table-panel.panel-size-sm td{
  padding:4px 5px;
  font-size:9px;
}
.free-layout-active>.table-panel.panel-size-xs th,
.free-layout-active>.table-panel.panel-size-xs td{
  padding:3px 4px;
  font-size:8px;
  line-height:1.12;
}
.free-layout-active>.panel-size-xs .action-grid,
.free-layout-active>.panel-size-xs .form-grid,
.free-layout-active>.panel-size-xs .settings-grid,
.free-layout-active>.panel-size-xs .test-retest-form{
  grid-template-columns:1fr!important;
}
.free-layout-active>.panel-size-xs .details{
  grid-template-columns:1fr!important;
  gap:2px;
}
.free-layout-active>.panel-size-xs .panel-header h2{font-size:11px}
.free-layout-active>.panel-size-sm .panel-header h2{font-size:12px}
.free-layout-active>.chart-panel.panel-resizing,
.free-layout-active>.table-panel.panel-resizing{user-select:none}
.free-layout-active>.chart-panel.panel-resizing *,
.free-layout-active>.table-panel.panel-resizing *{pointer-events:none}
.free-layout-active>.chart-panel.panel-resizing>.resize-handle,
.free-layout-active>.table-panel.panel-resizing>.resize-handle{pointer-events:auto}

/* Wayra System Web 1.4.0 — doble motor psicométrico e informes multiformato */
.free-layout-active>[data-panel-id]{min-height:0!important}
.free-layout-active>.generic-content-panel{
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
  min-height:0!important;
  overflow:hidden!important;
}
.free-layout-active>.generic-content-panel>.panel-header{flex:0 0 auto!important;min-width:0}
.free-layout-active>.generic-content-panel>.adaptive-panel-body{
  flex:1 1 auto!important;
  width:100%!important;
  min-width:0!important;
  min-height:0!important;
  max-width:100%!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  box-sizing:border-box!important;
  overscroll-behavior:contain;
}
.free-layout-active>.generic-content-panel>.adaptive-panel-body>*{max-width:100%;min-width:0}
.free-layout-active>.generic-content-panel>.adaptive-panel-body>form,
.free-layout-active>.generic-content-panel>.adaptive-panel-body>.form-grid,
.free-layout-active>.generic-content-panel>.adaptive-panel-body>.settings-grid,
.free-layout-active>.generic-content-panel>.adaptive-panel-body>.test-retest-form{width:100%;box-sizing:border-box}

.resize-handle-x,.resize-handle-y{display:none;position:absolute;z-index:11;touch-action:none;background:transparent}
.resize-handle-x{right:0;top:18px;width:8px;height:calc(100% - 34px);cursor:ew-resize}
.resize-handle-y{left:0;bottom:0;width:calc(100% - 18px);height:8px;cursor:ns-resize}
.resize-handle{z-index:13}
.free-layout-editing .resize-handle-x,.free-layout-editing .resize-handle-y{display:block!important}
.free-layout-locked .resize-handle-x,.free-layout-locked .resize-handle-y{display:none!important;pointer-events:none!important}
.free-layout-editing>[data-panel-id]:hover>.resize-handle-x{border-right:2px solid rgba(20,90,134,.25)}
.free-layout-editing>[data-panel-id]:hover>.resize-handle-y{border-bottom:2px solid rgba(20,90,134,.25)}
.free-layout-active>.adaptive-content-panel.panel-resizing{user-select:none}
.free-layout-active>.adaptive-content-panel.panel-resizing *{pointer-events:none}
.free-layout-active>.adaptive-content-panel.panel-resizing>.resize-handle,
.free-layout-active>.adaptive-content-panel.panel-resizing>.resize-handle-x,
.free-layout-active>.adaptive-content-panel.panel-resizing>.resize-handle-y{pointer-events:auto}

.free-layout-active>.panel-height-sm .adaptive-panel-body{font-size:8.5px;line-height:1.12}
.free-layout-active>.panel-height-xs .adaptive-panel-body{font-size:8px;line-height:1.08}
.free-layout-active>.panel-height-xs .adaptive-panel-body label{gap:2px;font-size:8px}
.free-layout-active>.panel-height-xs .adaptive-panel-body input:not([type=checkbox]):not([type=radio]),
.free-layout-active>.panel-height-xs .adaptive-panel-body select,
.free-layout-active>.panel-height-xs .adaptive-panel-body textarea{min-height:19px;padding:2px 4px;font-size:8px}
.free-layout-active>.panel-height-xs .adaptive-panel-body .button{min-height:19px;padding:2px 5px;font-size:8px}
.free-layout-active>.panel-height-xs .adaptive-panel-body .alert{padding:2px 4px;margin-bottom:2px}
.free-layout-active>.panel-height-xs .adaptive-panel-body .stat-grid{gap:2px;margin-bottom:2px}
.free-layout-active>.panel-height-xs .adaptive-panel-body .stat{padding:3px 4px}
.free-layout-active>.panel-height-xs .adaptive-panel-body .stat strong{font-size:11px;margin-top:1px}

@media(max-width:899px){.resize-handle-x,.resize-handle-y{display:none!important}}

/* Wayra System Web 1.4.0 — doble motor, informes multiformato e integridad */
.format-actions,.inline-actions{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.delete-project{position:relative}.delete-project>summary{list-style:none;cursor:pointer}.delete-project>summary::-webkit-details-marker{display:none}.delete-project form{position:absolute;right:0;z-index:25;width:320px;padding:.7rem;background:#fff;border:1px solid var(--line);border-radius:.5rem;box-shadow:0 12px 28px rgba(0,0,0,.18)}.delete-project form p{margin:.1rem 0 .5rem}.method-note{font-size:.78rem;color:var(--muted);margin:.5rem 0 0}.checkbox-label{display:flex!important;align-items:center;gap:.4rem}.checkbox-label input{width:auto}.responsive-chart{min-height:0;flex:1;overflow:hidden}.responsive-chart svg{display:block;width:100%;height:100%;min-height:0}.chart-axis{stroke:#8ca3b2;stroke-width:1;vector-effect:non-scaling-stroke}.chart-legend{display:flex;gap:.45rem;flex-wrap:wrap;font-size:.7rem;padding:.25rem 0}.chart-legend span{display:flex;align-items:center;gap:.25rem}.chart-legend i{width:.8rem;height:.16rem;display:inline-block}.row-warning{background:#fff0df!important}.panel.chart-panel,.panel.table-panel{display:flex;flex-direction:column}.panel.chart-panel>.responsive-chart,.panel.table-panel>.table-wrap{flex:1;min-height:0}.panel.table-panel>.table-wrap{overflow:auto}

/* Wayra System Web 1.4.1 — presentación multiescala de resultados */
.score-settings-form,
.report-settings-form {
  display: grid;
  gap: .55rem;
  min-height: 0;
}
.score-settings-form fieldset,
.report-metric-fieldset {
  border: 1px solid #cbd9e2;
  border-radius: .45rem;
  padding: .45rem .55rem .55rem;
  min-width: 0;
}
.score-settings-form legend,
.report-metric-fieldset legend {
  padding: 0 .25rem;
  font-weight: 700;
  color: #173f59;
}
.metric-check-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(185px, 1fr));
  gap: .35rem;
}
.check-option {
  display: flex;
  align-items: flex-start;
  gap: .35rem;
  padding: .35rem;
  border: 1px solid #d9e3e9;
  border-radius: .38rem;
  background: #f8fafb;
  min-width: 0;
}
.check-option input { margin-top: .16rem; flex: 0 0 auto; }
.check-option span { min-width: 0; }
.check-option strong,
.check-option small { display: block; }
.check-option small { color: #61717c; line-height: 1.2; margin-top: .1rem; }
.compact-note { margin: .25rem 0 0; font-size: .78rem; }
.primary-result-column { background: #e8f3f9 !important; font-weight: 700; }
.report-settings-form > .button { justify-self: start; }
@media (max-width: 850px) {
  .metric-check-grid { grid-template-columns: 1fr; }
}


/* Wayra System 2007 v1.4.2 - identidad visual original modernizada */
body{background:linear-gradient(180deg,#f7f7f5 0,#ededeb 100%)}
.sidebar{background:linear-gradient(180deg,var(--sidebar-dark),var(--sidebar));border-right:4px solid var(--accent-strong)}
.topbar{border-bottom:3px solid var(--accent-strong);box-shadow:0 2px 9px rgba(0,0,0,.08)}
.wayra-brand{gap:9px;min-width:0}.brand-logo{width:48px;height:48px;object-fit:contain;flex:0 0 auto;filter:drop-shadow(0 2px 2px rgba(0,0,0,.28))}.brand-wordmark{min-width:0}.brand-wordmark strong{font-family:Georgia,"Times New Roman",serif;font-size:17px;line-height:1;white-space:nowrap;letter-spacing:-.02em}.wayra-name{color:#d42025;text-shadow:1px 1px 0 #ffe66d,-1px -1px 0 rgba(255,255,255,.65)}.system-name{color:#f4f8ff;text-shadow:1px 1px 0 #123f7c}.sidebar .brand-wordmark small{color:#fff;opacity:.82}.login-brand .brand-wordmark strong{font-size:25px}.login-brand .system-name{color:#124f9f;text-shadow:1px 1px 0 #ffe36a}.login-logo{width:76px;height:76px}.login-shell{background:radial-gradient(circle at 20% 10%,#fff488 0 9%,transparent 30%),linear-gradient(135deg,#555552,#124f9f 58%,#bd1e24)}
.page-heading h1,.panel-header h2{font-family:Georgia,"Times New Roman",serif}.panel{border-color:#c9c7bc;border-top:4px solid var(--accent-strong);border-radius:8px}.panel-header{border-bottom-color:#d8d2b4}.button{border-radius:5px}.button.primary{background:linear-gradient(#1d66bb,#124f9f)}.button.danger{background:linear-gradient(#d63b40,#ad151b)}.button.secondary{background:#fff4a8;color:#333;border:1px solid #e2c944}.stat{border-top:4px solid var(--wayra-green);border-radius:8px}.status.calculated,.status.completed{background:#d9f1d9;color:#0b6820}.analysis-nav a.active{background:linear-gradient(#1d66bb,#124f9f);border-color:#08366f}.primary-result-column{background:#fff5a8!important;color:#1e1e1e}.report-card>span{background:var(--wayra-red)}
/* Alineación uniforme: todas las columnas centradas, salvo Estudiante. */
table th,table td{text-align:center}.student-column,.sticky-col{text-align:left!important}.student-column strong,.student-column small{display:block}.table-wrap table{font-variant-numeric:tabular-nums}
.model-option-note{font-size:.76rem;color:var(--muted);font-weight:400}.advanced-model-warning{border-left:5px solid var(--wayra-red);background:#fff2d5;padding:.55rem .7rem;margin:.45rem 0;border-radius:4px}.management-actions{display:grid;gap:.55rem}.management-actions details{border:1px solid var(--line);padding:.55rem;border-radius:5px;background:#faf9f2}.management-actions summary{cursor:pointer;font-weight:700}.management-actions form{display:grid;gap:.45rem;margin-top:.55rem}.danger-confirm{border-color:#e0aaaa!important;background:#fff5f5!important}.precalc-results-panel .metric-check-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.model-badge{display:inline-flex;padding:.2rem .45rem;border-radius:999px;background:#fff2a8;border:1px solid #ddc34a;font-weight:700}.model-badge.model-3pl{background:#ffe2df;border-color:#d88782}.model-badge.model-2pl{background:#e7effc;border-color:#8eacd4}

/* Wayra System 2007 v1.4.3 — cabecera contenida y navegación preventiva */
.sidebar{overflow-x:hidden}
.sidebar .wayra-brand{
  display:grid;
  grid-template-columns:52px minmax(0,1fr);
  align-items:center;
  gap:8px;
  width:100%;
  max-width:100%;
  min-width:0;
  overflow:hidden;
  padding:2px 0 4px;
}
.sidebar .wayra-brand .brand-logo{
  width:52px;
  height:52px;
  max-width:100%;
  object-fit:contain;
}
.sidebar .wayra-brand .brand-wordmark{
  display:flex;
  flex-direction:column;
  justify-content:center;
  width:100%;
  min-width:0;
  overflow:hidden;
}
.sidebar .wayra-brand .brand-wordmark strong{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  width:100%;
  min-width:0;
  white-space:normal;
  line-height:.92;
}
.sidebar .wayra-brand .wayra-name{
  display:block;
  max-width:100%;
  font-size:22px;
  letter-spacing:-.02em;
  white-space:nowrap;
}
.sidebar .wayra-brand .system-name{
  display:block;
  max-width:calc(100% - 10px);
  margin-top:3px;
  margin-left:10px;
  font-size:15px;
  letter-spacing:.015em;
  white-space:nowrap;
}
.sidebar .wayra-brand .brand-wordmark small{
  max-width:calc(100% - 10px);
  margin:5px 0 0 10px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:10px;
  line-height:1.1;
}
.analysis-pending{
  cursor:pointer;
  border-style:dashed!important;
}
.action-card.analysis-pending{
  background:repeating-linear-gradient(135deg,#fafafa,#fafafa 8px,#f3f3ef 8px,#f3f3ef 16px);
  color:#4d5459;
}
.action-card.analysis-pending::after{
  content:"Requiere cálculo";
  justify-self:start;
  padding:2px 6px;
  border-radius:999px;
  background:#fff2d8;
  color:#7e5311;
  font-size:10px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.03em;
}
.step.analysis-pending small{color:#8a5a00;font-weight:700}
.wayra-notice-dialog{
  width:min(470px,calc(100vw - 32px));
  padding:0;
  border:0;
  border-radius:10px;
  box-shadow:0 24px 70px rgba(0,0,0,.32);
  color:var(--text);
}
.wayra-notice-dialog::backdrop{background:rgba(18,27,33,.48);backdrop-filter:blur(2px)}
.wayra-notice-dialog form{margin:0;padding:0;background:#fff;border-top:6px solid var(--accent-strong)}
.wayra-notice-dialog header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px 10px;border-bottom:1px solid var(--line)}
.wayra-notice-dialog header>div{display:flex;align-items:center;gap:10px}
.wayra-notice-dialog h2{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:20px}
.notice-mark{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#fff0bf;color:#875900;font-size:20px;font-weight:900}
.dialog-close{border:0;background:transparent;font-size:28px;line-height:1;cursor:pointer;color:#666}
.wayra-notice-dialog p{margin:0;padding:18px 20px;font-size:15px;line-height:1.45}
.dialog-actions{display:flex;justify-content:flex-end;padding:0 20px 18px}
@media(max-width:899px){
  .sidebar .wayra-brand{grid-template-columns:48px minmax(0,1fr);max-width:235px}
  .sidebar .wayra-brand .brand-logo{width:48px;height:48px}
}

/* Wayra System 2007 v1.4.4 — nombre lateral visible sin recorte */
.sidebar .wayra-brand{
  grid-template-columns:48px minmax(0,1fr);
  gap:6px;
}
.sidebar .wayra-brand .brand-logo{
  width:48px;
  height:48px;
}
.sidebar .wayra-brand .brand-wordmark strong{
  line-height:1.05;
}
.sidebar .wayra-brand .wayra-name{
  font-size:21px;
  line-height:1.1;
}
.sidebar .wayra-brand .system-name{
  max-width:100%;
  margin-left:0;
  font-size:12px;
  line-height:1.1;
  letter-spacing:0;
}
.sidebar .wayra-brand .brand-wordmark small{
  max-width:100%;
  margin:4px 0 0;
  font-size:9.5px;
  line-height:1.15;
}

/* Wayra System 2007 v1.5.3 — movimiento libre ampliado a módulos administrativos */
.sidebar{overflow-y:auto}
.topbar-badges{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}
.badge.service-warning{background:#fff0cd;color:#7a4a00}
.service-state{display:block;margin-top:5px;padding:5px 6px;border-radius:5px;background:rgba(255,255,255,.08);color:#fff;font-size:8px;line-height:1.25}
.service-state-grace{background:#6e4c0a}.service-state-expired,.service-state-suspended,.service-state-cancelled,.service-state-institution_inactive{background:#7e2328}
.resource-filter{display:flex;align-items:end;gap:8px;max-width:700px;margin:0 0 8px;resize:none;overflow:visible}
.resource-filter label{flex:1}.resource-filter .button{flex:0 0 auto}
.resource-fieldset{min-width:0;margin:0;border:1px solid var(--line);border-radius:7px;padding:8px;background:#fafbf9}
.resource-fieldset legend{padding:0 5px;font-weight:800;color:#173f59}
.field-help{display:block;margin:3px 0;color:var(--muted);font-size:9px;font-weight:400;line-height:1.3}
.empty-inline{margin:6px 0;padding:9px;border:1px dashed #bcc8ce;border-radius:6px;background:#f8fafb;color:var(--muted);text-align:center}
.resource-check-grid,.member-check-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:5px;max-height:260px;overflow:auto;padding:3px}
.member-check-grid{grid-template-columns:repeat(auto-fill,minmax(165px,1fr));max-height:430px}
.resource-check{display:flex;align-items:flex-start;gap:6px;padding:7px;border:1px solid #d5dee3;border-radius:6px;background:#fff;cursor:pointer;min-width:0}
.resource-check:focus-within{outline:2px solid rgba(20,90,134,.25);border-color:var(--primary)}
.resource-check input{flex:0 0 auto;margin-top:2px}.resource-check span{min-width:0}.resource-check strong,.resource-check small{display:block;overflow-wrap:anywhere}.resource-check small{margin-top:2px;color:var(--muted);font-weight:400}
.static-panel{resize:none}.static-panel>.panel-header,.static-header{cursor:default}
.resource-layout>.panel{resize:none}.resource-layout>.panel:first-child{grid-column:span 4}.resource-layout>.panel:last-child{grid-column:span 8}
.inline-resource-form{display:grid;grid-template-columns:minmax(180px,1fr) minmax(120px,.6fr) auto;gap:7px;align-items:end;margin-bottom:8px}
.inline-resource-form .button{align-self:end}
.resource-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:7px}
.resource-card{display:grid;gap:4px;min-width:0;padding:10px;border:1px solid var(--line);border-left:4px solid var(--primary);border-radius:7px;background:#fff;color:var(--text)}
.resource-card:hover{border-color:var(--primary);box-shadow:0 3px 10px rgba(18,79,159,.1)}
.resource-card>strong{font-size:12px;overflow-wrap:anywhere}.resource-card>span:not(.resource-type),.resource-card>small{color:var(--muted)}
.resource-type{justify-self:start;padding:2px 5px;border-radius:999px;background:#e7effc;color:#174f91;font-size:8px;font-weight:800;text-transform:uppercase}
.resource-archived{opacity:.58;border-left-color:#777}.selector-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px}
.stat-text{font-size:12px!important;line-height:1.2}.resource-summary dd code{overflow-wrap:anywhere;word-break:break-all}
.snapshot-note{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin-bottom:7px;padding:7px 9px;border:1px solid #b9d4e4;border-left:4px solid var(--primary);border-radius:6px;background:#edf7fc;color:#234f68;font-size:9px}
.snapshot-chip{display:inline-flex;padding:2px 5px;border-radius:999px;background:#fff;border:1px solid #b9d4e4;font-weight:700}
.response-readonly{display:grid;place-items:center;min-width:29px;min-height:22px;padding:2px 4px;border-radius:4px;background:#f3f5f6;font-weight:700}
.template-meta{margin-bottom:8px}.service-banner{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:8px;padding:14px 16px;border:1px solid #b7d6c0;border-left:6px solid var(--success);border-radius:8px;background:#eff9f1}
.service-banner h2{margin:5px 0 2px}.service-banner p{margin:0}.service-banner dl{display:grid;grid-template-columns:auto auto;gap:4px 8px;margin:0}.service-banner dt{font-weight:700}.service-banner dd{margin:0}
.service-banner-grace{border-color:#e6ca78;border-left-color:#bd7f14;background:#fff8df}.service-banner-expired,.service-banner-suspended,.service-banner-cancelled,.service-banner-institution_inactive,.service-banner-unlicensed,.service-banner-plan_inactive{border-color:#e0aaaa;border-left-color:var(--danger);background:#fff2f2}
.service-code{background:#fff;border:1px solid currentColor}.subscription-details{grid-template-columns:minmax(140px,max-content) 1fr}
.quota-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:7px}.quota-card{display:grid;gap:3px;padding:9px;border:1px solid #d8e0e4;border-top:4px solid var(--wayra-green);border-radius:7px;background:#fafcfc}.quota-card>span{color:var(--muted);font-size:9px}.quota-card>strong{font-size:15px}.quota-card>small{color:var(--muted)}.quota-card meter{width:100%;height:8px}.quota-exceeded{border-color:#d98f8f;border-top-color:var(--danger);background:#fff3f3}.compact-quotas{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));margin-bottom:9px}.compact-quotas .quota-card{padding:6px}.compact-quotas .quota-card>strong{font-size:11px}
.commercial-create{padding:0}.commercial-create>summary{cursor:pointer;padding:10px 12px;font-weight:800}.commercial-create[open]>summary{border-bottom:1px solid var(--line)}.commercial-create>form{padding:10px}
.commercial-plan-grid,.institution-service-list{display:grid;gap:7px}.commercial-plan-grid{grid-template-columns:repeat(auto-fit,minmax(390px,1fr))}.commercial-card{border:1px solid var(--line);border-radius:7px;background:#fff;overflow:hidden}.commercial-card>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px;cursor:pointer;list-style:none}.commercial-card>summary::-webkit-details-marker{display:none}.commercial-card>summary>span:first-child{display:grid;gap:2px}.commercial-card>summary small{color:var(--muted)}.commercial-card>form,.commercial-institution-body{padding:9px;border-top:1px solid var(--line);background:#fafbfb}.institution-service-list{grid-template-columns:repeat(auto-fit,minmax(440px,1fr))}
.service-status-active{background:#d9f1d9;color:#0b6820}.service-status-grace{background:#fff0cd;color:#7a4a00}.service-status-expired,.service-status-suspended,.service-status-cancelled,.service-status-institution_inactive,.service-status-unlicensed,.service-status-plan_inactive{background:#fde3e2;color:#8b2924}
.button[disabled]{opacity:.45;cursor:not-allowed;filter:grayscale(.35)}
@media(max-width:900px){.resource-layout>.panel:first-child,.resource-layout>.panel:last-child{grid-column:1/-1}.commercial-plan-grid,.institution-service-list{grid-template-columns:1fr}.service-banner{align-items:flex-start;flex-direction:column}.resource-filter,.selector-toolbar{align-items:stretch;flex-direction:column}.inline-resource-form{grid-template-columns:1fr}}
@media(max-width:650px){.resource-check-grid,.member-check-grid,.resource-card-grid,.quota-grid{grid-template-columns:1fr}.topbar-badges{justify-content:flex-start}.commercial-card>summary{align-items:flex-start;flex-direction:column}.service-banner dl{grid-template-columns:1fr}.service-banner dd{margin-bottom:4px}}

/* Lectura OMR v1.6.0-alpha3 */
.omr-upload-form{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:10px;align-items:end}.omr-upload-form .button{margin-bottom:1px}.omr-result-card{border-top-color:#1d66bb}.omr-result-warning{border-top-color:#d49119}.omr-result-header{align-items:flex-start}.omr-result-header p{margin:.15rem 0 0;color:var(--muted)}.omr-result-badges{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.omr-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(90px,1fr));gap:7px;margin-bottom:8px}.omr-review-layout{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(420px,1.1fr);gap:10px;align-items:start}.omr-review-image{margin:0;border:1px solid var(--line);border-radius:6px;background:#eef2f4;padding:6px;text-align:center}.omr-review-image img{display:block;width:100%;height:auto;max-height:75vh;object-fit:contain;background:#fff}.omr-review-image figcaption{font-size:.72rem;color:var(--muted);margin-top:5px}.omr-answer-review{min-width:0}.omr-answer-review .table-wrap{max-height:68vh}.omr-status-review{background:#fff4d8}.omr-status-multiple{background:#ffe5e5}.omr-status-blank{color:#66757e}.omr-review-actions{display:flex;align-items:flex-start;gap:8px;justify-content:space-between;margin-top:7px;flex-wrap:wrap}.omr-review-actions details{flex:1;min-width:260px;border:1px solid var(--line);border-radius:5px;padding:5px;background:#fafafa}.omr-review-actions summary{cursor:pointer;font-weight:700}.omr-json{max-height:300px;overflow:auto;white-space:pre-wrap;font-size:.72rem;background:#17232b;color:#eef6fa;padding:8px;border-radius:4px}.topbar-navigation{display:flex;align-items:center;gap:7px;min-width:0}.topbar-navigation>div{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-home{white-space:nowrap}.topbar .button.topbar-home{min-height:19px;padding:1px 6px;font-size:8px}
@media(max-width:900px){.omr-review-layout{grid-template-columns:1fr}.omr-upload-form{grid-template-columns:1fr}.omr-summary-grid{grid-template-columns:repeat(2,minmax(90px,1fr))}.topbar-navigation>div{display:none}}

/* Lectura OMR v1.6.0-alpha4: navegación derecha e importación revisada */
.topbar-navigation{flex:1;min-width:0}
.topbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;margin-left:auto;min-width:0}
.topbar-badges{display:flex;align-items:center;justify-content:flex-end;gap:5px;min-width:0}
.topbar .button.topbar-home{display:inline-flex;align-items:center;justify-content:center;min-height:26px;padding:3px 8px;font-size:9px;font-weight:700;color:#164f8b;background:#fff;border:1px solid #aebbc3;border-radius:5px;text-decoration:none;white-space:nowrap}
.topbar .button.topbar-home:hover{background:#edf5fb;border-color:#1d66bb}
.omr-import-form{display:block}.omr-answer-select{min-width:92px;width:100%;font-weight:800;text-align:center}
.omr-overwrite-confirmation{display:flex;grid-template-columns:auto 1fr;align-items:center;gap:7px;margin-top:7px;padding:7px;border:1px solid #dfbd73;border-radius:5px;background:#fff8e7}
.omr-overwrite-confirmation input{width:auto;min-height:auto}.omr-existing-warning{margin-bottom:7px}
.omr-review-actions{align-items:center}.omr-review-actions details{order:3;flex-basis:100%}
@media(max-width:900px){.topbar-badges{display:none}.topbar-actions{gap:4px}.topbar .button.topbar-home{font-size:9px;padding:3px 6px}.omr-answer-select{min-width:75px}}

/* Wayra OMR v1.6.0-alpha5: lote persistente en pantalla e importación asíncrona. */
.omr-batch-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top-color:#1d66bb}
.omr-batch-toolbar h2{margin:0 0 2px}.omr-batch-toolbar p{margin:0;color:var(--muted)}
.omr-batch-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.omr-batch-status{font-weight:700;color:#385565}.omr-batch-status.is-success{color:#137333}.omr-batch-status.is-error{color:#a63b32}
.omr-import-feedback{min-height:0;margin-top:7px;padding:0;border-radius:5px;font-weight:700}
.omr-import-feedback:not(:empty){padding:6px 8px;border:1px solid #c8d3da;background:#f4f7f8}
.omr-import-feedback.is-pending{border-color:#b9d4e4;background:#edf7fc;color:#234f68}
.omr-import-feedback.is-success{border-color:#a8d7b0;background:#e9f7ec;color:#17632a}
.omr-import-feedback.is-error{border-color:#e0aaaa;background:#fff0ef;color:#8c2e29}
.omr-result-imported{border-top-color:#219653;box-shadow:0 0 0 2px rgba(33,150,83,.12)}
.omr-result-imported .panel-header::after{content:"Importada";margin-left:auto;padding:3px 7px;border-radius:999px;background:#d9f1df;color:#17632a;font-weight:800}
.omr-result-imported select:disabled,.omr-result-imported input:disabled{opacity:.72}
@media(max-width:760px){.omr-batch-toolbar{align-items:stretch;flex-direction:column}.omr-batch-actions{justify-content:flex-start}}

/* Wayra System v1.6.0-alpha6: formato personal de la plataforma. */
:root{--surface-alt:#f1f5f9;--warning:#fbbf24;--on-primary:#fff;--font-scale:1;--ui-density:1;--ui-panel-radius:10px;--ui-control-radius:7px;--ui-shadow:0 5px 16px rgba(25,35,45,.11)}
body[class*="ui-theme-"]{color:var(--text);background-color:var(--bg);font-size:calc(14px * var(--font-scale))}
body.ui-grid-enabled{background-image:linear-gradient(rgba(90,110,125,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(90,110,125,.055) 1px,transparent 1px);background-size:22px 22px}
body[class*="ui-theme-"] .main-content{color:var(--text)}
body[class*="ui-theme-"] .sidebar{background:linear-gradient(180deg,var(--sidebar),var(--sidebar-dark));color:#fff}
body[class*="ui-theme-"] .topbar,
body[class*="ui-theme-"] .panel,
body[class*="ui-theme-"] .stat,
body[class*="ui-theme-"] .step,
body[class*="ui-theme-"] .action-card,
body[class*="ui-theme-"] .commercial-card,
body[class*="ui-theme-"] .quota-card,
body[class*="ui-theme-"] .settings-panel,
body[class*="ui-theme-"] .service-banner,
body[class*="ui-theme-"] .calculate-bar{background-color:var(--surface);color:var(--text);border-color:var(--line)}
body[class*="ui-theme-"] .panel,
body[class*="ui-theme-"] .stat,
body[class*="ui-theme-"] .commercial-card,
body[class*="ui-theme-"] .quota-card{box-shadow:var(--ui-shadow)}
body[class*="ui-theme-"] th{background:var(--surface-alt);color:var(--muted)}
body[class*="ui-theme-"] td,body[class*="ui-theme-"] th,body[class*="ui-theme-"] .panel-header{border-color:var(--line)}
body[class*="ui-theme-"] input,
body[class*="ui-theme-"] textarea,
body[class*="ui-theme-"] select{background:var(--surface);color:var(--text);border-color:var(--line)}
body[class*="ui-theme-"] input::placeholder,body[class*="ui-theme-"] textarea::placeholder{color:var(--muted)}
body[class*="ui-theme-"] .button.primary{background:var(--primary);color:var(--on-primary)}
body[class*="ui-theme-"] .button.primary:hover{background:var(--primary-dark)}
body[class*="ui-theme-"] .button.secondary{background:var(--accent);color:var(--text)}
body[class*="ui-theme-"] .button.ghost{border-color:var(--line)}
body[class*="ui-theme-"] .action-card:hover,body[class*="ui-theme-"] input:focus,body[class*="ui-theme-"] textarea:focus,body[class*="ui-theme-"] select:focus{border-color:var(--primary)}
body[class*="ui-theme-"] a{color:var(--primary)}
body[class*="ui-theme-"] .sidebar a{color:#f7fafc}
body[class*="ui-theme-"] .nav-link.active,body[class*="ui-theme-"] .platform-format-link.active{background:rgba(255,255,255,.18);box-shadow:inset 3px 0 0 var(--warning)}
body[class*="ui-theme-"] .muted,body[class*="ui-theme-"] .page-heading p,body[class*="ui-theme-"] .action-card span,body[class*="ui-theme-"] .details dd{color:var(--muted)}
body.ui-theme-data_dark .sticky-col{background:var(--surface)!important}
body.ui-theme-data_dark code{background:var(--surface-alt);color:var(--text)}
body.ui-theme-data_dark .omr-review-image,body.ui-theme-data_dark .omr-review-actions details{background:var(--surface-alt)}
body.ui-theme-data_dark .alert.warning{background:#493d1e;color:#ffe7a3}
body.ui-theme-data_dark .alert.error{background:#4e2729;color:#ffd4d4}
body.ui-theme-data_dark .alert.success{background:#173d2d;color:#c7f7dc}
body.ui-theme-data_dark .status,body.ui-theme-data_dark .badge{filter:saturate(.8)}

body.ui-density-compact{--ui-density:.78}
body.ui-density-normal{--ui-density:1}
body.ui-density-spacious{--ui-density:1.22}
body[class*="ui-density-"] .page-content{padding:calc(24px * var(--ui-density))}
body[class*="ui-density-"] .panel{padding:calc(15px * var(--ui-density))}
body[class*="ui-density-"] .stat{padding:calc(15px * var(--ui-density)) calc(17px * var(--ui-density))}
body[class*="ui-density-"] th,body[class*="ui-density-"] td{padding:calc(9px * var(--ui-density)) calc(10px * var(--ui-density))}
body[class*="ui-density-"] .nav-link{padding:calc(9px * var(--ui-density)) calc(11px * var(--ui-density))}
body[class*="ui-density-"] input,body[class*="ui-density-"] textarea,body[class*="ui-density-"] select{padding:calc(9px * var(--ui-density)) calc(10px * var(--ui-density))}
body[class*="ui-density-"] .button{padding:calc(8px * var(--ui-density)) calc(14px * var(--ui-density))}

body.ui-radius-square{--ui-panel-radius:0px;--ui-control-radius:0px}
body.ui-radius-soft{--ui-panel-radius:8px;--ui-control-radius:5px}
body.ui-radius-rounded{--ui-panel-radius:16px;--ui-control-radius:11px}
body[class*="ui-radius-"] .panel,body[class*="ui-radius-"] .stat,body[class*="ui-radius-"] .action-card,body[class*="ui-radius-"] .commercial-card,body[class*="ui-radius-"] .quota-card{border-radius:var(--ui-panel-radius)}
body[class*="ui-radius-"] input,body[class*="ui-radius-"] textarea,body[class*="ui-radius-"] select,body[class*="ui-radius-"] .button,body[class*="ui-radius-"] .nav-link{border-radius:var(--ui-control-radius)}
body.ui-shadow-low{--ui-shadow:0 1px 3px rgba(25,35,45,.08)}
body.ui-shadow-medium{--ui-shadow:0 5px 16px rgba(25,35,45,.12)}
body.ui-shadow-high{--ui-shadow:0 11px 30px rgba(25,35,45,.20)}
body.ui-reduced-motion *,body.ui-reduced-motion *::before,body.ui-reduced-motion *::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}

body[class*="ui-theme-"]{line-height:1.28;--shadow:var(--ui-shadow)}
body[class*="ui-theme-"] .page-heading h1{font-size:calc(24px * var(--font-scale))}
body[class*="ui-theme-"] .panel-header h2{font-size:calc(17px * var(--font-scale))}
body[class*="ui-theme-"] label,body[class*="ui-theme-"] input,body[class*="ui-theme-"] textarea,body[class*="ui-theme-"] select,body[class*="ui-theme-"] button,body[class*="ui-theme-"] .nav-link{font-size:calc(12px * var(--font-scale))}
body[class*="ui-theme-"] th{font-size:calc(10px * var(--font-scale))}
body[class*="ui-theme-"] .badge,body[class*="ui-theme-"] .status{font-size:calc(10px * var(--font-scale))}

.platform-format-form{display:grid;gap:16px}.platform-format-section{resize:none;overflow:visible}.platform-format-section .panel-header>div{display:grid;gap:3px}.platform-format-section .panel-header span{color:var(--muted);font-size:.86em}.palette-grid{display:grid;grid-template-columns:repeat(4,minmax(190px,1fr));gap:10px}.palette-card{position:relative;display:grid;gap:10px;padding:12px;border:2px solid var(--line);border-radius:var(--ui-panel-radius);background:var(--surface);cursor:pointer;transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}.palette-card:hover{transform:translateY(-1px);border-color:var(--primary)}.palette-card.is-selected{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 20%,transparent)}.palette-card input{position:absolute;top:9px;right:9px;width:auto;min-height:auto}.palette-card-title{display:grid;gap:3px;padding-right:22px}.palette-card-title small{color:var(--muted);font-weight:400}.palette-swatches{display:grid;grid-template-columns:repeat(6,1fr);height:27px;overflow:hidden;border:1px solid var(--line);border-radius:5px}.palette-swatches i{display:block}.platform-format-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.42fr);gap:16px;align-items:start}.platform-control-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.platform-control-grid label small{color:var(--muted);font-weight:400}.platform-toggle-list{display:grid;gap:10px;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.platform-toggle-list .checkbox-label{display:flex;grid-template-columns:auto 1fr;align-items:center}.platform-toggle-list input{width:auto;min-height:auto}.platform-preview-panel{position:sticky;top:82px;resize:none}.platform-mini-preview{display:grid;grid-template-columns:92px 1fr;min-height:245px;overflow:hidden;border:1px solid var(--line);border-radius:var(--ui-panel-radius);background:var(--bg);box-shadow:var(--ui-shadow)}.platform-mini-sidebar{display:grid;align-content:start;gap:10px;padding:13px 10px;background:linear-gradient(180deg,var(--sidebar),var(--sidebar-dark));color:#fff}.platform-mini-sidebar span{font-size:.78em;opacity:.84}.platform-mini-main{display:grid;align-content:start;gap:12px;padding:13px}.platform-mini-toolbar{display:flex;justify-content:space-between;gap:8px;align-items:center;padding-bottom:9px;border-bottom:1px solid var(--line)}.platform-mini-toolbar button{border:0;border-radius:var(--ui-control-radius);padding:5px 8px;background:var(--primary);color:var(--on-primary);font-weight:700}.platform-mini-cards{display:grid;grid-template-columns:1fr 1fr;gap:8px}.platform-mini-cards article{display:grid;gap:3px;padding:9px;background:var(--surface);border:1px solid var(--line);border-radius:var(--ui-control-radius);box-shadow:var(--ui-shadow)}.platform-mini-cards small{color:var(--muted)}.platform-mini-table{display:grid;grid-template-columns:1fr auto;gap:7px;padding:9px;background:var(--surface);border:1px solid var(--line);border-radius:var(--ui-control-radius)}.platform-mini-table b{color:var(--success)}.platform-format-actions{position:sticky;bottom:0;z-index:8;background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(5px);padding:12px;border:1px solid var(--line);border-radius:var(--ui-panel-radius)}
@media(max-width:1200px){.palette-grid{grid-template-columns:repeat(3,minmax(190px,1fr))}.platform-format-layout{grid-template-columns:1fr}.platform-preview-panel{position:static}.platform-mini-preview{max-width:620px}}
@media(max-width:760px){.palette-grid{grid-template-columns:1fr 1fr}.platform-control-grid{grid-template-columns:1fr}.platform-format-actions{justify-content:stretch;flex-direction:column}.platform-format-actions .button{width:100%}}
@media(max-width:500px){.palette-grid{grid-template-columns:1fr}.platform-mini-preview{grid-template-columns:74px 1fr}}


/* Wayra System v1.6.0-alpha8: cabecera lateral fija y menú desplazable. */
body[class*="ui-theme-"]{background:var(--bg);}
body.ui-theme-wayra_classic{background:linear-gradient(180deg,#f7f7f5 0,#ededeb 100%);}
body.ui-grid-enabled{background-color:var(--bg);background-image:linear-gradient(rgba(90,110,125,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(90,110,125,.055) 1px,transparent 1px);background-size:22px 22px;}

.sidebar{
  display:flex!important;
  flex-direction:column!important;
  height:100vh!important;
  min-height:0!important;
  overflow:hidden!important;
  padding:6px 5px!important;
}
.sidebar .wayra-brand{
  flex:0 0 62px!important;
  min-height:62px!important;
  width:100%!important;
  display:grid!important;
  grid-template-columns:46px minmax(0,1fr)!important;
  align-items:center!important;
  gap:6px!important;
  padding:4px 3px 7px!important;
  overflow:visible!important;
}
.sidebar .wayra-brand .brand-logo{
  width:46px!important;
  height:46px!important;
  object-fit:contain!important;
}
.sidebar .wayra-brand .brand-wordmark{
  min-width:0!important;
  overflow:visible!important;
}
.sidebar .wayra-brand .brand-wordmark strong{
  display:flex!important;
  flex-direction:column!important;
  line-height:1.02!important;
  white-space:normal!important;
}
.sidebar .wayra-brand .wayra-name{
  font-size:18px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.sidebar .wayra-brand .system-name{
  margin:2px 0 0!important;
  max-width:100%!important;
  font-size:11px!important;
  line-height:1.05!important;
  white-space:nowrap!important;
}
.sidebar .wayra-brand .brand-wordmark small{
  margin:3px 0 0!important;
  max-width:100%!important;
  font-size:8px!important;
  line-height:1.05!important;
  white-space:nowrap!important;
}
.sidebar nav{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  margin-top:2px!important;
  padding:3px 1px 5px!important;
  display:grid!important;
  align-content:start!important;
  gap:1px!important;
  scrollbar-gutter:stable;
}
.sidebar .nav-section{
  margin:7px 6px 2px!important;
  font-size:7.5px!important;
  line-height:1!important;
  letter-spacing:.06em!important;
}
body[class*="ui-density-"] .sidebar .nav-link{
  padding:calc(4px * var(--ui-density)) 7px!important;
  min-height:0!important;
  line-height:1.12!important;
}
body[class*="ui-theme-"] .sidebar .nav-link{
  font-size:clamp(9px,calc(9.5px * var(--font-scale)),12.5px)!important;
}
.sidebar-footer{
  flex:0 0 auto!important;
  margin-top:4px!important;
  padding-top:4px!important;
  gap:3px!important;
  border-top:1px solid rgba(255,255,255,.10);
}
.sidebar-footer .user-card{padding:3px!important;}
.sidebar-footer .user-card strong{font-size:9.5px!important;}
.sidebar-footer .user-card small{font-size:8px!important;margin-top:1px!important;}
.sidebar-footer .button{min-height:24px!important;padding:4px 6px!important;font-size:9px!important;}

@media(max-width:899px){
  .sidebar{height:auto!important;overflow:visible!important;}
  .sidebar nav{overflow:visible!important;grid-template-columns:1fr 1fr!important;}
  .sidebar-footer{margin-top:8px!important;}
}

/* Wayra System v1.6.0-alpha8: paletas completas, gráficas temáticas y movimiento libre global. */
:root{
  --chart-primary:var(--primary);
  --chart-secondary:var(--success);
  --chart-tertiary:var(--warning);
  --chart-grid:var(--line);
  --chart-axis:var(--muted);
  --chart-label:var(--text);
  --chart-highlight:var(--danger);
  --chart-series-1:var(--chart-primary);
  --chart-series-2:var(--chart-secondary);
  --chart-series-3:var(--chart-tertiary);
  --chart-series-4:var(--chart-highlight);
  --chart-series-5:color-mix(in srgb,var(--chart-primary) 62%,var(--chart-tertiary));
  --chart-series-6:color-mix(in srgb,var(--chart-secondary) 65%,var(--chart-primary));
  --chart-series-7:color-mix(in srgb,var(--chart-highlight) 58%,var(--chart-tertiary));
  --chart-series-8:color-mix(in srgb,var(--chart-primary) 55%,var(--chart-highlight));
}

/* Todos los gráficos HTML/SVG deben responder a la paleta activa. */
.svg-chart line,.chart-axis{stroke:var(--chart-axis)!important}
.svg-chart line.grid{stroke:var(--chart-grid)!important}
.svg-chart line.zero{stroke:color-mix(in srgb,var(--chart-axis) 72%,transparent)!important}
.svg-chart text,.responsive-chart text{fill:var(--chart-label)!important;color:var(--chart-label)!important}
.svg-chart text.axis-label{fill:var(--chart-label)!important}
.svg-chart circle{fill:var(--chart-primary)!important;stroke:color-mix(in srgb,var(--chart-primary) 68%,#000)!important}
.vertical-bar i,.mini-histogram i,.bar-list b,.hist-track i{background:var(--chart-primary)!important}
.vertical-bars,.mini-histogram{border-color:var(--chart-grid)!important}
.vertical-bar:nth-child(3n+2) i,.mini-histogram>div:nth-child(3n+2) i{background:var(--chart-secondary)!important}
.vertical-bar:nth-child(3n) i,.mini-histogram>div:nth-child(3n) i{background:var(--chart-tertiary)!important}
.chart-legend{color:var(--chart-label)}
.chart-panel svg{color:var(--chart-primary)}

/* Superficies que antes conservaban blanco o gris fijo. */
body[class*="ui-theme-"] .topbar,
body[class*="ui-theme-"] .panel,
body[class*="ui-theme-"] .stat,
body[class*="ui-theme-"] .action-card,
body[class*="ui-theme-"] .report-card,
body[class*="ui-theme-"] .step,
body[class*="ui-theme-"] .commercial-card,
body[class*="ui-theme-"] .platform-format-actions{background:var(--surface);color:var(--text)}
body[class*="ui-theme-"] th{background:var(--surface-alt);color:var(--muted)}
body[class*="ui-theme-"] input,
body[class*="ui-theme-"] textarea,
body[class*="ui-theme-"] select{background:var(--surface);color:var(--text);border-color:var(--line)}
body[class*="ui-theme-"] .sticky-col{background:var(--surface)}

/* Formato de plataforma participa en el mismo sistema de movimiento libre. */
.platform-format-movable{margin-bottom:10px}
.platform-format-movable>.platform-format-section,
.platform-format-movable>.platform-preview-panel{resize:none;overflow:auto;position:relative;top:auto}
.free-layout-active>.platform-format-section,
.free-layout-active>.platform-preview-panel{display:flex;flex-direction:column;min-width:0;max-width:none}
.free-layout-active>.platform-format-section>.palette-grid,
.free-layout-active>.platform-format-section>.platform-control-grid,
.free-layout-active>.platform-preview-panel>.platform-mini-preview{min-height:0}
.free-layout-active>.platform-format-section>.palette-grid{overflow:auto;align-content:start}
.free-layout-active>.platform-preview-panel>.platform-mini-preview{flex:1}

@media(max-width:899px){
  .platform-format-movable{display:grid!important;height:auto!important}
  .platform-format-movable>.panel{position:relative!important;left:auto!important;top:auto!important;width:auto!important;height:auto!important}
}
.irt-overlay-chart,.irt-overlay-legend{background:var(--surface)!important;color:var(--text)!important;border-color:var(--line)!important}
.irt-overlay-svg .axis{stroke:var(--chart-axis)!important}
.irt-overlay-svg .grid{stroke:var(--chart-grid)!important}
.irt-overlay-svg text{fill:var(--chart-label)!important}
.irt-legend-row{border-color:var(--line)!important}
.solid-key::before,.dash-key::before{border-top-color:var(--chart-primary)!important}

/* alpha10: densidad visual global para tarjetas de acceso */
.action-card{padding:7px 10px!important;gap:1px!important;min-height:0!important}
.action-card strong,.action-card b,.action-card h3{margin:0!important;line-height:1.08!important}
.action-card span,.action-card small,.action-card p{margin:0!important;line-height:1.15!important}
.analysis-selection-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 6px;padding:6px 8px;border:1px solid var(--line);border-radius:7px;background:var(--surface)}
.compact-note{margin-bottom:6px!important}
.status.pending{background:#fff2d8;color:#7e5311}.status.approved,.status.active{background:#dff3e7;color:#1f6844}.status.expired,.status.revoked{background:#fde3e2;color:#8b2924}
td small{display:block;margin-top:2px}
@media(max-width:760px){.analysis-selection-toolbar{align-items:stretch;flex-direction:column}}


/* alpha11: navegación activa uniforme, filtros y acciones compactas */
.nav-link{position:relative}
.nav-link.active{background:rgba(242,201,76,.20);font-weight:700}
.nav-link.active::before{content:"";position:absolute;left:0;top:7px;bottom:7px;width:4px;border-radius:0 4px 4px 0;background:#f2c94c}
.inline-actions,.mobile-filter-bar,.filter-row{display:flex;gap:.55rem;align-items:end;flex-wrap:wrap}
.mobile-filter-bar{margin-bottom:.75rem;padding:.75rem}
.mobile-filter-bar label,.filter-row label{min-width:180px;flex:1}
.panel.compact{padding:.8rem}
.resource-card{padding:.8rem;gap:.22rem}
.page-heading.compact-heading{margin-bottom:.65rem}
.selector-toolbar input[type=search]{min-width:220px;flex:1}

/* Diseñador de instrumentos · alpha14 */
.instrument-heading .page-actions form { margin: 0; }
.instrument-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; margin-bottom: 1rem; }
.instrument-summary article { background: var(--panel-bg, #fff); border: 1px solid var(--border-color, #d9e1ea); border-radius: var(--radius-lg, 14px); padding: 1rem; box-shadow: var(--shadow-sm, 0 3px 12px rgba(0,0,0,.06)); }
.instrument-summary span { display: block; color: var(--muted, #5f6b78); font-size: .82rem; }
.instrument-summary strong { display: block; margin-top: .3rem; font-size: 1.05rem; }
.instrument-progress { height: .45rem; margin-top: .65rem; border-radius: 999px; background: rgba(120,130,145,.18); overflow: hidden; }
.instrument-progress span { height: 100%; background: var(--primary, #2463a8); border-radius: inherit; }
.instrument-steps { position: sticky; top: 0; z-index: 4; display: flex; flex-wrap: wrap; gap: .55rem; padding: .7rem; margin-bottom: 1rem; background: color-mix(in srgb, var(--surface, #fff) 92%, transparent); border: 1px solid var(--border-color, #d9e1ea); border-radius: var(--radius-md, 10px); backdrop-filter: blur(8px); }
.instrument-steps a { text-decoration: none; font-weight: 700; padding: .45rem .7rem; border-radius: 999px; color: var(--text-color, #17212b); }
.instrument-steps a:hover { background: rgba(36,99,168,.12); }
.instrument-section { scroll-margin-top: 5rem; margin-bottom: 1rem; }
.instrument-section .panel-header p { margin: .15rem 0 0; color: var(--muted, #5f6b78); }
.instrument-distribution-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 1rem; }
.instrument-distribution-grid fieldset { border: 1px solid var(--border-color, #d9e1ea); border-radius: var(--radius-md, 10px); padding: 1rem; }
.instrument-distribution-grid legend { font-weight: 800; padding: 0 .35rem; }
.instrument-distribution-grid fieldset label { display: grid; grid-template-columns: 1fr 7rem; gap: .7rem; align-items: center; margin-bottom: .65rem; }
.instrument-items-list { display: grid; gap: .8rem; }
.instrument-item { border: 1px solid var(--border-color, #d9e1ea); border-radius: var(--radius-md, 10px); background: var(--surface, #fff); overflow: clip; }
.instrument-item > summary { cursor: pointer; list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: .85rem 1rem; font-weight: 800; background: rgba(120,130,145,.06); }
.instrument-item > summary::-webkit-details-marker { display: none; }
.instrument-item-body { display: grid; gap: .9rem; padding: 1rem; }
.instrument-options { display: grid; gap: .55rem; }
.field-label { font-weight: 750; }
.instrument-option { display: grid; grid-template-columns: auto auto 1fr; gap: .6rem; align-items: center; margin: 0; }
.instrument-option > input[type="text"], .instrument-option > input:not([type]) { width: 100%; }
.status-chip { display: inline-flex; align-items: center; padding: .2rem .55rem; border-radius: 999px; font-size: .75rem; font-weight: 800; background: rgba(120,130,145,.16); }
.status-ready { background: rgba(33,150,83,.16); color: #176d3d; }
.status-draft { background: rgba(222,153,22,.16); color: #875800; }
.sticky-save { position: sticky; bottom: 0; display: flex; justify-content: flex-end; padding: 1rem 0 0; background: linear-gradient(transparent, var(--surface, #fff) 35%); }
.instrument-read-options { margin: .4rem 0 .7rem 1.5rem; }
.correct-option { font-weight: 800; color: #176d3d; }
.instrument-preview-body { margin: 0; background: #e8edf2; color: #111; font-family: Arial, sans-serif; }
.instrument-preview-sheet { width: min(210mm, calc(100% - 2rem)); min-height: 279mm; margin: 1rem auto 5rem; padding: 16mm; background: #fff; box-shadow: 0 8px 30px rgba(0,0,0,.16); }
.instrument-preview-header { display: flex; justify-content: space-between; gap: 1rem; align-items: flex-start; border-bottom: 2px solid #111; padding-bottom: .7rem; }
.instrument-preview-header h1 { margin: 0; font-size: 1.45rem; }
.instrument-preview-header p { margin: .25rem 0 0; }
.instrument-preview-header > span { font-weight: 800; font-size: .8rem; border: 1px solid #111; padding: .35rem .5rem; }
.instrument-student-fields { display: grid; grid-template-columns: 2fr 1fr 1fr; gap: .8rem; margin: 1rem 0; font-size: .9rem; }
.instrument-preview-instructions { border: 1px solid #777; padding: .8rem; margin-bottom: 1rem; }
.instrument-preview-instructions p { margin: .35rem 0 0; white-space: pre-line; }
.instrument-preview-items > li { margin-bottom: 1.2rem; break-inside: avoid; }
.instrument-instruction { font-size: .88rem; font-style: italic; }
.instrument-stem { font-weight: 650; white-space: pre-line; }
.teacher-explanation { background: #f1f6f1; border-left: 4px solid #39764d; padding: .55rem .7rem; font-size: .9rem; }
.instrument-print-button { position: fixed; right: 1rem; bottom: 1rem; }
@media (max-width: 900px) {
  .instrument-summary { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .instrument-distribution-grid { grid-template-columns: 1fr; }
  .instrument-student-fields { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
  .instrument-summary { grid-template-columns: 1fr; }
  .instrument-option { grid-template-columns: auto auto; }
  .instrument-option input:last-child { grid-column: 1 / -1; }
}
@media print {
  .instrument-preview-body { background: #fff; }
  .instrument-preview-sheet { width: auto; min-height: auto; margin: 0; padding: 0; box-shadow: none; }
  .instrument-print-button { display: none !important; }
}

/* Fuentes y generación IA · alpha15 */
.instrument-ai-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 1rem; margin-bottom: 1rem; }
.instrument-ai-card { border: 1px solid var(--border-color, #d9e1ea); border-radius: var(--radius-md, 10px); padding: 1rem; background: rgba(120,130,145,.035); }
.instrument-ai-card h3 { margin-top: 0; }
.compact-form { gap: .65rem; }
.instrument-source-list { display: grid; gap: .55rem; margin: 1rem 0; }
.instrument-source-row { display: grid; grid-template-columns: minmax(0,1fr) auto auto; gap: .75rem; align-items: center; padding: .75rem; border: 1px solid var(--border-color, #d9e1ea); border-radius: var(--radius-md, 10px); background: var(--surface, #fff); }
.instrument-source-row > div:first-child { min-width: 0; }
.instrument-source-row strong, .instrument-source-row span { display: block; }
.instrument-source-row > div:first-child span { margin-top: .2rem; color: var(--muted, #5f6b78); font-size: .8rem; overflow-wrap: anywhere; }
.instrument-source-row.is-inactive { opacity: .62; }
.instrument-generate-form { margin-top: 1rem; padding: 1rem; border: 1px dashed var(--border-color, #d9e1ea); border-radius: var(--radius-md, 10px); }
.instrument-generate-form button[disabled] { cursor: not-allowed; opacity: .55; }
.instrument-origin { display: inline-flex; margin-left: .35rem; padding: .1rem .4rem; border-radius: 999px; background: rgba(111,66,193,.14); color: #5d31a6; font-size: .68rem; font-style: normal; }
.status-observed { background: rgba(222,153,22,.16); color: #875800; }
@media (max-width: 900px) {
  .instrument-ai-grid { grid-template-columns: 1fr; }
  .instrument-source-row { grid-template-columns: 1fr; align-items: start; }
}

/* Alpha16: control preventivo de calidad para ítems */
.instrument-validation-overview{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap;margin:.1rem 0 1rem;padding:.75rem .9rem;border:1px solid var(--border-color,#d9e1ea);border-radius:var(--radius-md,10px);background:rgba(120,130,145,.035)}
.instrument-validation-overview span{display:inline-flex;align-items:baseline;gap:.25rem;padding:.28rem .55rem;border-radius:999px;background:var(--surface,#fff);border:1px solid var(--border-color,#d9e1ea);font-size:.78rem}
.instrument-validation-overview small{flex:1 1 100%;color:var(--muted,#5f6b78)}
.instrument-summary-chips{display:flex!important;align-items:center;justify-content:flex-end;gap:.4rem;flex-wrap:wrap}
.status-chip.quality-pass{background:#dff3e6;color:#176337}
.status-chip.quality-review{background:#fff0c8;color:#795700}
.status-chip.quality-fail{background:#f8d9db;color:#8b1f2a}
.status-chip.quality-draft{background:#e8ebef;color:#59636e}
.instrument-quality-panel{border:1px solid var(--border-color,#d9e1ea);border-left-width:4px;border-radius:var(--radius-md,10px);padding:.8rem;background:rgba(120,130,145,.025)}
.instrument-quality-panel.quality-panel-pass{border-left-color:#2b8a54}
.instrument-quality-panel.quality-panel-review{border-left-color:#c58b00}
.instrument-quality-panel.quality-panel-fail{border-left-color:#b83a47}
.instrument-quality-panel.quality-panel-draft{border-left-color:#8b949e}
.instrument-quality-panel>header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.65rem}
.instrument-quality-panel>header div{display:grid;gap:.15rem}
.instrument-quality-panel>header span,.instrument-quality-panel>header small{color:var(--muted,#5f6b78);font-size:.76rem}
.instrument-quality-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}
.quality-check{display:grid;grid-template-columns:1.5rem 1fr;gap:.45rem;align-items:start;padding:.55rem;border:1px solid var(--border-color,#d9e1ea);border-radius:8px;background:var(--surface,#fff)}
.quality-check strong{font-size:.78rem}
.quality-check p{margin:.15rem 0 0;color:var(--muted,#5f6b78);font-size:.73rem;line-height:1.35}
.quality-symbol{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;border-radius:50%;font-weight:900;font-size:.78rem}
.quality-check-pass .quality-symbol{background:#dff3e6;color:#176337}
.quality-check-review .quality-symbol{background:#fff0c8;color:#795700}
.quality-check-fail .quality-symbol{background:#f8d9db;color:#8b1f2a}
.quality-check-info .quality-symbol{background:#e4edf8;color:#315f8a}
@media(max-width:900px){.instrument-quality-grid{grid-template-columns:1fr}.instrument-summary-chips{justify-content:flex-start}}

/* Alpha17: distribución persistente y controles binarios alineados */
.choice-control,
.checkbox-row,
.check-row,
.checkbox-label,
label:has(> input[type="checkbox"]):not(.palette-card):not(.resource-check):not(.check-option) {
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: .45rem !important;
  width: fit-content;
  max-width: 100%;
  justify-self: start;
  text-align: left;
  cursor: pointer;
}
.choice-control > input[type="checkbox"],
.checkbox-row > input[type="checkbox"],
.check-row > input[type="checkbox"],
.checkbox-label > input[type="checkbox"],
label:has(> input[type="checkbox"]):not(.palette-card):not(.resource-check):not(.check-option) > input[type="checkbox"] {
  flex: 0 0 auto !important;
  width: 1rem !important;
  min-width: 1rem !important;
  height: 1rem !important;
  margin: .08rem 0 0 !important;
  padding: 0 !important;
}
.choice-control > span,
.checkbox-row > span,
.check-row > span,
.checkbox-label > span { min-width: 0; line-height: 1.3; }
.choice-control.span-2,
.checkbox-row.span-2,
.check-row.span-2,
.checkbox-label.span-2 { grid-column: span 2; }
.instrument-blueprint-form { gap: .8rem; }
.blueprint-inline-errors { margin: 0; }
.distribution-total { display: flex; align-items: center; gap: .35rem; flex-wrap: wrap; margin: .45rem 0 0; color: var(--muted, #5f6b78); }
.distribution-total strong { color: var(--text, #202020); }
.distribution-total span { display: inline-flex; padding: .15rem .42rem; border-radius: 999px; font-size: .74rem; font-weight: 800; }
.distribution-total.is-valid span { background: #dff3e6; color: #176337; }
.distribution-total.is-invalid span { background: #f8d9db; color: #8b1f2a; }
.instrument-distribution-grid fieldset.is-invalid { border-color: #b83a47; box-shadow: 0 0 0 2px rgba(184,58,71,.08); }
.blueprint-overwrite-control { padding: .6rem .7rem; border: 1px solid var(--border-color, #d9e1ea); border-radius: 8px; background: rgba(120,130,145,.035); }
.instrument-blueprint-form [data-blueprint-submit][disabled] { cursor: not-allowed; opacity: .55; }
@media(max-width:650px){
  .choice-control.span-2,
  .checkbox-row.span-2,
  .check-row.span-2,
  .checkbox-label.span-2 { grid-column: auto; }
}

/* Wayra 1.6.0-alpha18 · guardado documental del instrumento */
.instrument-draft-banner { display: flex; gap: .75rem; align-items: baseline; margin: .75rem 0 1rem; padding: .65rem .8rem; border: 1px solid #d8ad4d; background: #fff7dc; color: #684400; font-size: .85rem; }
.instrument-draft-banner span { font-weight: 400; }
.teacher-item-metadata { margin: .45rem 0 .25rem; padding: .4rem .55rem; background: #f3eef9; border-left: 3px solid #8d63bd; font-size: .82rem; }
.instrument-save-panel { position: fixed; right: 1rem; bottom: 1rem; z-index: 30; width: 210px; display: grid; gap: .45rem; padding: .8rem; border: 1px solid rgba(65,43,91,.22); border-radius: 14px; background: rgba(255,255,255,.97); box-shadow: 0 10px 28px rgba(0,0,0,.18); }
.instrument-save-panel > strong { font-size: 1rem; }
.instrument-save-panel > span { font-size: .78rem; color: #5e5368; }
.instrument-save-panel .button { width: 100%; box-sizing: border-box; text-align: center; }
@media (max-width: 760px) {
  .instrument-save-panel { position: static; width: auto; margin: 0 1rem 1rem; }
  .instrument-preview-sheet { margin-bottom: 1rem; }
}
@media print {
  .instrument-save-panel, .instrument-draft-banner { display: none !important; }
}

/* Wayra 1.6.0-alpha19 · estímulos visibles y bloques de preguntas */
.instrument-stimulus-list { display: grid; gap: .8rem; margin-top: 1rem; }
.instrument-stimulus-editor { border: 1px solid var(--border-color, #d9e1ea); border-radius: var(--radius-md, 10px); background: var(--surface, #fff); overflow: clip; }
.instrument-stimulus-editor > summary { cursor: pointer; list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: .85rem 1rem; font-weight: 800; background: rgba(120,130,145,.06); }
.instrument-stimulus-editor > summary::-webkit-details-marker { display: none; }
.instrument-stimulus-create { margin-bottom: 1rem; border-style: dashed; }
.instrument-stimulus-body, .instrument-stimulus-editor > form { padding: 1rem; }
.instrument-stimulus-editor > form { display: grid; gap: .9rem; }
.instrument-stimulus-items { border: 1px solid var(--border-color, #d9e1ea); border-radius: var(--radius-md, 10px); padding: .85rem; }
.instrument-stimulus-items legend { padding: 0 .35rem; font-weight: 800; }
.stimulus-item-picker { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: .45rem .8rem; }
.stimulus-item-picker .choice-control { margin: 0; align-items: flex-start; }
.stimulus-item-picker .is-disabled { opacity: .55; }
.instrument-stimulus-image { margin: .5rem auto 1rem; text-align: center; }
.instrument-stimulus-image img { display: block; max-width: min(100%, 760px); max-height: 520px; object-fit: contain; margin: 0 auto; border-radius: 8px; }
.instrument-stimulus-image figcaption { margin-top: .35rem; color: var(--muted, #5f6b78); font-size: .78rem; }
.instrument-stimulus-text { white-space: pre-wrap; overflow-wrap: anywhere; line-height: 1.5; }
.instrument-stimulus-actions { display: flex; flex-wrap: wrap; gap: .5rem; padding-top: .85rem; margin-top: .85rem; border-top: 1px solid var(--border-color, #d9e1ea); }
.instrument-stimulus-actions form { margin: 0; }
.instrument-stimulus-actions button[disabled] { opacity: .45; cursor: not-allowed; }
.instrument-block-tag { display: inline-flex; margin-left: .35rem; padding: .1rem .4rem; border-radius: 999px; background: rgba(31,122,110,.13); color: #17685f; font-size: .68rem; font-style: normal; }
.instrument-preview-content { display: grid; gap: .15rem; }
.instrument-preview-stimulus { margin: 1rem 0 .8rem; padding: .8rem; border: 1px solid #6c7782; background: #f5f7f9; break-inside: avoid-page; }
.instrument-preview-stimulus header > span { display: block; margin-bottom: .2rem; color: #4d5a67; font-size: .72rem; font-weight: 800; text-transform: uppercase; letter-spacing: .04em; }
.instrument-preview-stimulus h2 { margin: 0 0 .55rem; font-size: 1rem; }
.instrument-preview-stimulus figure { margin: .7rem auto 0; text-align: center; }
.instrument-preview-stimulus img { display: block; max-width: 100%; max-height: 520px; object-fit: contain; margin: 0 auto; }
.instrument-preview-stimulus figcaption { margin-top: .3rem; font-size: .75rem; color: #4d5a67; }
.teacher-stimulus-metadata { margin: .6rem 0 0; padding-top: .45rem; border-top: 1px dashed #9aa3ab; font-size: .78rem; }
.instrument-preview-block-items { display: grid; gap: .15rem; }
.instrument-preview-item { margin-bottom: 1.1rem; break-inside: avoid-page; }

@media (max-width: 900px) {
  .stimulus-item-picker { grid-template-columns: 1fr; }
  .instrument-stimulus-editor > summary { align-items: flex-start; flex-direction: column; }
}

@media print {
  .instrument-preview-stimulus { background: #fff; }
}

/* Wayra 1.6.0-alpha19.2 · asociación explícita estímulo–preguntas */
.stimulus-block-guidance {
  margin: .7rem 0 0;
  padding-top: .55rem;
  border-top: 1px solid #7f8c99;
  color: #243746;
  font-weight: 800;
  font-style: italic;
  line-height: 1.35;
}
.stimulus-block-guidance + .teacher-stimulus-metadata { margin-top: .45rem; }

/* Wayra 1.6.0-alpha19.5 · corrección de composición y centrado del acceso */
.login-shell{place-items:center;background:#fff url('/static/wayra-login-network-bg.jpg?v=1.6.0-alpha19.6') left center/cover no-repeat;padding:24px;}
.login-card{position:relative;z-index:2;box-shadow:0 22px 55px rgba(30,55,75,.18);border:1px solid rgba(120,145,165,.2);}
.app-shell{position:relative;isolation:isolate;}
.app-shell::before{content:"";position:fixed;z-index:-1;left:250px;right:0;top:64px;bottom:0;background-image:linear-gradient(color-mix(in srgb,var(--bg) 84%,transparent),color-mix(in srgb,var(--bg) 84%,transparent)),url('/static/wayra-network-child.png?v=1.6.0-alpha19.6');background-repeat:no-repeat;background-position:left 55% center;background-size:min(58vw,900px) auto;opacity:.16;pointer-events:none;filter:saturate(.8);}
.palette-grid{grid-template-columns:repeat(6,minmax(140px,1fr));gap:8px;}
.palette-card{gap:6px;padding:8px 9px;min-height:82px;}
.palette-card-title{gap:1px;padding-right:18px;font-size:.9em}.palette-card-title small{font-size:.78em;line-height:1.15}.palette-swatches{height:18px}.palette-card input{top:7px;right:7px;}
.button.danger{background:var(--danger);color:#fff}.button.danger:hover{filter:brightness(.9)}
@media(max-width:1200px){.palette-grid{grid-template-columns:repeat(4,minmax(145px,1fr));}}
@media(max-width:760px){.login-shell{background-size:cover;background-position:30% center;place-items:center;padding:20px}.app-shell::before{left:0;top:0;background-size:110vw auto}.palette-grid{grid-template-columns:repeat(2,minmax(135px,1fr));}}

/* Wayra v1.6.0-alpha19.5: identidad visual refinada */
.login-shell{
  place-items:center;
  background:#fff url('/static/wayra-login-network-bg.jpg?v=1.6.0-alpha19.6') center center/cover no-repeat;
  padding:24px;
}
.app-shell::before{content:none!important;display:none!important;background:none!important;}
.sidebar-watermark{
  flex:1 1 120px;
  min-height:92px;
  max-height:170px;
  margin:8px 2px 4px;
  background:url('/static/wayra-sidebar-child.png?v=1.6.0-alpha19.6') center top/contain no-repeat;
  opacity:.24;
  pointer-events:none;
  filter:grayscale(.08) brightness(1.35) contrast(.88);
}
.sidebar-footer{margin-top:0!important;}
.roster-rebuild-panel{display:grid;gap:12px;}
.roster-rebuild-card{display:grid;gap:10px;padding:12px;border:1px solid var(--line);border-radius:var(--ui-control-radius);background:color-mix(in srgb,var(--surface) 94%,var(--bg));}
.roster-rebuild-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;}
.roster-rebuild-stats span{display:grid;gap:2px;padding:8px;border:1px solid var(--line);border-radius:7px;background:var(--surface);font-size:.84em;color:var(--muted);}
.roster-rebuild-stats strong{font-size:1.25em;color:var(--text);}
@media(max-width:760px){
  .login-shell{background-position:22% center;background-size:cover;}
  .sidebar-watermark{display:none;}
  .roster-rebuild-stats{grid-template-columns:1fr;}
}


/* Wayra System v1.6.0-alpha19.6 · conciliación segura, tipografía y densidad */
:root{
  --font-ui:"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --font-size-body:13px;
  --font-size-control:12.5px;
  --font-size-meta:11px;
  --font-size-section:16px;
  --font-size-page:24px;
}
html{font-family:var(--font-ui);font-size:var(--font-size-body)}
body,button,input,textarea,select,table,.nav-link,.button,.panel,.stat{font-family:var(--font-ui)!important}
h1,h2,h3,h4,h5,h6{font-family:var(--font-ui)!important;letter-spacing:0!important}
.brand-wordmark,.brand-wordmark *{font-family:Georgia,"Times New Roman",serif!important}
body[class*="ui-theme-"] .page-heading h1,.page-heading h1{font-size:calc(var(--font-size-page) * var(--font-scale,1))!important;line-height:1.12;font-weight:700}
body[class*="ui-theme-"] .panel-header h2,.panel-header h2{font-size:calc(var(--font-size-section) * var(--font-scale,1))!important;line-height:1.2;font-weight:700}
.page-heading p,.muted,.field-help{font-size:var(--font-size-meta);line-height:1.35}
body[class*="ui-theme-"] label,body[class*="ui-theme-"] input,body[class*="ui-theme-"] textarea,body[class*="ui-theme-"] select,body[class*="ui-theme-"] button,body[class*="ui-theme-"] .nav-link,
label,input,textarea,select,button,.button{font-size:calc(var(--font-size-control) * var(--font-scale,1))!important}
body[class*="ui-theme-"] th,th{font-size:calc(10.5px * var(--font-scale,1))!important}
td{font-size:calc(12.5px * var(--font-scale,1))}
.page-content{padding:18px 20px!important}.page-heading{margin-bottom:12px;gap:12px}.topbar{height:48px;padding:0 16px}.panel-grid{gap:10px}.panel{padding:12px!important}.panel-header{padding-bottom:7px;margin-bottom:9px;gap:8px}.stat-grid{gap:8px;margin-bottom:10px}.stat{padding:10px 12px!important}.stat span{font-size:10.5px}.stat strong{font-size:19px;margin-top:3px}.stat .stat-text{font-size:14px}
th,td{padding:6px 7px!important}.table-wrap.tall{max-height:70vh}.stack-form{gap:9px;margin:10px 0}.form-grid{gap:10px}.form-actions{gap:6px;padding-top:9px;margin-top:10px}.alert{padding:8px 11px;margin-bottom:10px}.button{min-height:30px;padding:5px 10px!important;line-height:1.15;white-space:nowrap}.button.small,.button.tiny{min-height:26px;padding:3px 8px!important}.page-actions,.button-row,.format-actions,.inline-actions{gap:5px}.analysis-nav{gap:5px;margin-bottom:10px}.analysis-nav a{padding:5px 8px}.run-meta{gap:9px;margin-bottom:10px}.badge,.status{padding:3px 7px}
.resource-check-grid,.member-check-grid{grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:4px;padding:2px;max-height:480px}
.resource-check{gap:5px;padding:5px 6px;min-height:47px;align-items:flex-start}
.resource-check[hidden],[data-member-empty][hidden]{display:none!important}
.resource-check strong{font-size:12px;line-height:1.12;font-weight:700}.resource-check small{font-size:10.5px;line-height:1.1;margin-top:2px}
.selector-toolbar{gap:6px!important;margin-bottom:6px!important}.selector-toolbar input[type="search"]{min-width:220px}
.sidebar-watermark{background-image:url('/static/wayra-sidebar-child.png?v=1.6.0-alpha19.6');background-color:transparent!important;opacity:.28;filter:brightness(1.5) contrast(.9);}
.restricted-action{opacity:.72}.restricted-action::after{content:" 🔒";font-size:.85em}
.roster-rebuild-card{gap:8px;padding:9px}.roster-rebuild-stats{grid-template-columns:repeat(5,minmax(100px,1fr));gap:5px}.roster-rebuild-stats span{padding:6px;font-size:10.5px}.roster-rebuild-stats strong{font-size:16px}
.reconciliation-table{max-height:520px}.reconciliation-table table{min-width:900px}.reconciliation-table select{min-width:300px;max-width:520px}.reconciliation-status{font-size:11px;line-height:1.25}.reconciliation-row.status-code_conflict{background:#fff4dd}.reconciliation-row.status-ambiguous,.reconciliation-row.status-unresolved{background:#fdeceb}.reconciliation-row.status-name{background:#eef8f2}
.users-table{min-width:1040px}.users-table td{vertical-align:middle}.user-username{font-weight:700;font-size:12.5px}.users-table input,.users-table select{min-height:30px;padding:4px 7px!important}.user-actions{display:flex;align-items:center;gap:5px;flex-wrap:nowrap;min-width:360px}.user-actions form{margin:0!important}.password-reset-inline{display:flex;align-items:center;gap:4px}.password-reset-inline input{width:135px;min-width:110px}.action-form{display:inline-flex}
@media(max-width:1100px){.roster-rebuild-stats{grid-template-columns:repeat(3,1fr)}.user-actions{flex-wrap:wrap;min-width:250px}}
@media(max-width:760px){.page-content{padding:12px!important}.roster-rebuild-stats{grid-template-columns:1fr 1fr}.selector-toolbar{align-items:stretch!important}.selector-toolbar input[type="search"]{min-width:0;width:100%}.user-actions{min-width:210px}.reconciliation-table select{min-width:230px}}

/* Wayra System v1.6.0-alpha19.7 · acceso aprobado y panel lateral robusto al zoom */
.login-shell{
  min-height:100vh;
  display:grid;
  place-items:center;
  background:#fff url('/static/wayra-login-approved-alpha19.7.png?v=1.7.0') center center/cover no-repeat!important;
  padding:24px;
}
.login-card{
  transform:translateX(clamp(90px,11vw,210px));
  width:min(430px,calc(100vw - 48px));
}
.sidebar-watermark{
  flex:0 0 auto!important;
  width:100%;
  min-height:118px!important;
  max-height:none!important;
  height:clamp(118px,18vh,185px);
  margin:8px 0 5px!important;
  background-image:url('/static/wayra-sidebar-child-approved-alpha19.7.png?v=1.7.0')!important;
  background-position:center top!important;
  background-size:contain!important;
  background-repeat:no-repeat!important;
  background-color:transparent!important;
  opacity:.27!important;
  filter:none!important;
  pointer-events:none;
}
.sidebar nav{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:1px!important;
}
.sidebar .nav-section{
  flex:0 0 auto!important;
  margin:7px 6px 2px!important;
  line-height:1.15!important;
}
body[class*="ui-density-"] .sidebar .nav-link,
body[class*="ui-theme-"] .sidebar .nav-link,
.sidebar .nav-link{
  display:block!important;
  flex:0 0 auto!important;
  height:auto!important;
  min-height:22px!important;
  padding:4px 7px!important;
  line-height:1.18!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}
.sidebar .nav-link.active::before{top:4px!important;bottom:4px!important}
@media (min-width:900px){
  .sidebar{min-width:0!important}
  .sidebar nav{overflow-y:auto!important;overflow-x:hidden!important;scrollbar-gutter:stable!important}
}
@media (max-width:900px){
  .login-card{transform:none!important}
  .login-shell{background-position:34% center!important}
  .sidebar-watermark{display:none!important}
  .sidebar nav{display:grid!important;grid-template-columns:1fr 1fr!important}
}
@media (max-width:560px){
  .sidebar nav{grid-template-columns:1fr!important}
}

/* Wayra System v1.6.0-alpha19.16 · navegación distribuida y sidebar sin scroll */
@media (min-width:900px){
  .app-shell{grid-template-columns:190px minmax(0,1fr)!important}
  .sidebar{width:190px!important;padding:6px 7px!important;overflow:hidden!important}
  .sidebar .wayra-brand{grid-template-columns:50px minmax(0,1fr)!important;gap:8px!important;padding-inline:3px!important}
  .sidebar .wayra-brand .brand-logo{width:50px!important;height:50px!important}
  .sidebar .wayra-brand .brand-wordmark small{font-size:7.8px!important;white-space:nowrap!important;overflow:visible!important;text-overflow:clip!important}
  .sidebar nav{overflow:visible!important;scrollbar-gutter:auto!important;flex:0 0 auto!important}
  .sidebar-watermark{flex:1 1 auto!important;min-height:105px!important;height:auto!important;max-height:190px!important;background-position:center bottom!important}
}
.utility-nav{display:flex;align-items:center;gap:4px;min-height:34px;padding:4px 16px;background:color-mix(in srgb,var(--surface) 96%,var(--bg));border-bottom:1px solid var(--line);overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;position:sticky;top:48px;z-index:18}
.utility-link{flex:0 0 auto;color:var(--text);font-size:11px;font-weight:600;line-height:1;padding:7px 9px;border-radius:7px;border:1px solid transparent;white-space:nowrap}
.utility-link:hover{background:color-mix(in srgb,var(--primary) 8%,var(--surface));color:var(--primary)}
.utility-link.active{background:color-mix(in srgb,var(--primary) 12%,var(--surface));border-color:color-mix(in srgb,var(--primary) 28%,var(--line));color:var(--primary);font-weight:700}
@media(max-width:899px){.utility-nav{position:static;flex-wrap:wrap;overflow:visible;padding:5px 10px}.utility-link{font-size:11px}}
@media(max-height:720px) and (min-width:900px){.sidebar-watermark{min-height:70px!important;max-height:100px!important}.sidebar .nav-section{margin-top:5px!important}.sidebar .nav-link{padding-top:3px!important;padding-bottom:3px!important}}
.reconciliation-manual{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(260px,1.2fr) auto;gap:5px;margin-top:5px;padding:6px;border:1px solid var(--line);border-radius:7px;background:var(--surface)}
.reconciliation-manual[hidden]{display:none!important}.reconciliation-manual input,.reconciliation-manual select{min-width:0!important;width:100%!important}
.reconciliation-table td:nth-child(2){min-width:410px}
@media(max-width:900px){.reconciliation-manual{grid-template-columns:1fr}.reconciliation-table td:nth-child(2){min-width:300px}}

/* Wayra System v1.6.0-alpha19.16 · conciliación masiva segura */
.bulk-reconciliation-card{margin:14px 0 18px;padding:16px;border:1px solid rgba(70,86,170,.24);border-radius:14px;background:rgba(248,249,255,.94)}
.bulk-reconciliation-title{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}.bulk-reconciliation-title strong{font-size:16px}.bulk-reconciliation-title span{font-size:13px;color:var(--muted)}
.bulk-reconciliation-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.bulk-reconciliation-summary span{display:flex;flex-direction:column;gap:3px;padding:10px 12px;border:1px solid rgba(70,86,170,.16);border-radius:10px;background:#fff;font-size:12px;color:var(--muted)}.bulk-reconciliation-summary strong{font-size:20px;color:var(--text)}
@media(max-width:780px){.bulk-reconciliation-summary{grid-template-columns:1fr}}

/* Wayra System v1.6.0-alpha19.16 · revisión focalizada de candidatos */
.reconciliation-review-card{border:1px solid var(--warning-border,#e9c46a);background:var(--warning-soft,#fff9e8);border-radius:10px;padding:12px;margin:10px 0}
.reconciliation-review-title{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;margin-bottom:8px}.reconciliation-review-title span{font-size:12px;color:var(--muted)}
.reconciliation-review-list{display:grid;gap:8px}.reconciliation-review-item{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(320px,1.3fr);gap:10px;align-items:start;padding:9px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}
.reconciliation-review-person small{display:block;color:var(--muted);margin-top:2px}.reconciliation-review-actions select{width:100%;min-width:0}.reconciliation-review-actions .reconciliation-manual{margin-top:6px}
.reconciliation-review-summary{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:7px;margin:9px 0}.reconciliation-review-summary span{border:1px solid var(--line);border-radius:8px;padding:8px;background:var(--surface);font-size:12px;color:var(--muted)}.reconciliation-review-summary strong{display:block;font-size:17px;color:var(--text);margin-top:2px}
.reconciliation-full-details{margin-top:10px}.reconciliation-full-details>summary{cursor:pointer;font-weight:600;color:var(--primary)}
@media(max-width:900px){.reconciliation-review-item{grid-template-columns:1fr}.reconciliation-review-summary{grid-template-columns:repeat(2,1fr)}}


/* Wayra System v1.6.0-alpha19.16 · estructura única para todos los listados */
.student-list-unified-layout>.list-members-panel{grid-column:span 5}
.student-list-unified-layout>.list-import-panel{grid-column:span 3}
.student-list-unified-layout>.list-access-panel{grid-column:span 4}
.student-list-unified-layout>.list-permissions-panel{grid-column:span 5}
.student-list-unified-layout>.list-reconciliation-panel{grid-column:1/-1}
.student-list-unified-layout>.list-linked-projects-panel{grid-column:span 6}
.student-list-unified-layout>.list-danger-panel{grid-column:span 6}
@media(max-width:1100px){
  .student-list-unified-layout>.list-members-panel,
  .student-list-unified-layout>.list-import-panel,
  .student-list-unified-layout>.list-access-panel,
  .student-list-unified-layout>.list-permissions-panel,
  .student-list-unified-layout>.list-linked-projects-panel,
  .student-list-unified-layout>.list-danger-panel{grid-column:span 6}
  .student-list-unified-layout>.list-reconciliation-panel{grid-column:1/-1}
}
@media(max-width:899px){
  .student-list-unified-layout>.panel{grid-column:1/-1}
}

/* Wayra System v1.6.0-alpha19.16 · normalización canónica del diseño de listados */
.student-list-unified-layout{grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;grid-auto-flow:row dense}
.student-list-unified-layout>.list-members-panel{grid-column:span 6;min-height:390px}
.student-list-unified-layout>.list-import-panel{grid-column:span 3;min-height:270px}
.student-list-unified-layout>.list-access-panel{grid-column:span 3;min-height:300px}
.student-list-unified-layout>.list-permissions-panel{grid-column:span 6;min-height:260px}
.student-list-unified-layout>.list-linked-projects-panel{grid-column:span 6;min-height:240px}
.student-list-unified-layout>.list-reconciliation-panel{grid-column:1/-1;min-height:320px}
.student-list-unified-layout>.list-danger-panel{grid-column:span 6;min-height:190px}
.student-list-unified-layout>.list-import-panel,
.student-list-unified-layout>.list-access-panel,
.student-list-unified-layout>.list-permissions-panel,
.student-list-unified-layout>.list-linked-projects-panel,
.student-list-unified-layout>.list-danger-panel{overflow:visible}
.student-list-unified-layout>.list-members-panel .member-check-grid{max-height:330px;overflow:auto}
@media(max-width:1100px){
  .student-list-unified-layout>.list-members-panel{grid-column:1/-1}
  .student-list-unified-layout>.list-import-panel,
  .student-list-unified-layout>.list-access-panel,
  .student-list-unified-layout>.list-permissions-panel,
  .student-list-unified-layout>.list-linked-projects-panel,
  .student-list-unified-layout>.list-danger-panel{grid-column:span 6}
}
@media(max-width:899px){.student-list-unified-layout>.panel{grid-column:1/-1!important;min-height:0}}

/* Wayra System v1.6.0-alpha19.16 · rol Docente y cupo mensual por usuario */
.quota-cell{display:grid;gap:4px;min-width:130px}
.quota-cell input{max-width:110px}
.quota-cell small{color:var(--muted,#667085);font-size:11px;white-space:nowrap}

/* Wayra System v1.7.0 · validación visible de claves y respuestas faltantes */
.alert .compact-action{margin-left:.65rem;padding:.3rem .65rem;display:inline-flex;vertical-align:middle}
.missing-response-summary{margin-bottom:1rem}
.missing-response-links{display:flex;flex-wrap:wrap;gap:.45rem .8rem}
.missing-response-links a{font-size:.82rem;text-decoration:none;border-bottom:1px dotted currentColor}
.response-grid td.missing-response-cell{outline:2px solid #d6a626;outline-offset:-2px;background:#fff6cf}
.response-grid td.missing-response-cell input{background:#fff9df}

/* Wayra System v1.8.0 · densidad operativa, malla compacta y acceso docente */
:root{
  --font-size-body:12.5px;
  --font-size-control:12px;
  --font-size-meta:10.5px;
  --font-size-section:15px;
  --font-size-page:22px;
}
.page-content{padding:12px 14px!important;max-width:1800px}
.page-heading{margin-bottom:8px!important;gap:8px!important}
.page-heading h1{margin-bottom:3px!important}
.panel-grid{gap:7px!important}
.panel{padding:9px!important;border-radius:10px!important}
.panel.compact{padding:9px!important}
.panel-header{padding-bottom:5px!important;margin-bottom:6px!important;gap:6px!important}
.stat-grid{gap:6px!important;margin-bottom:7px!important}
.stat{padding:7px 9px!important;border-radius:9px!important}
.stat span{font-size:9.5px!important;line-height:1.1}
.stat strong{font-size:16px!important;margin-top:1px!important;line-height:1.1}
.button{min-height:26px!important;padding:3px 8px!important;border-radius:7px!important}
.button.small,.button.tiny{min-height:23px!important;padding:2px 6px!important}
input,textarea,select{padding:5px 7px!important;border-radius:6px!important;min-height:28px}
th,td{padding:4px 5px!important}
.alert{padding:6px 9px!important;margin-bottom:7px!important;border-radius:7px!important}
.stack-form{gap:7px!important;margin:7px 0!important}
.form-actions{padding-top:7px!important;margin-top:7px!important}
.action-card{padding:9px!important}
.workflow{gap:6px!important;padding-left:20px!important}

/* La malla de respuestas prioriza densidad: 30 preguntas caben en una vista de escritorio común. */
.response-grid-panel{padding:6px!important;margin-bottom:8px!important;overflow:visible!important}
.response-grid{max-height:76vh!important;overflow:auto!important}
.response-grid table{width:max-content!important;min-width:0!important;table-layout:fixed}
.response-grid .response-student-col{width:145px!important;min-width:145px!important;max-width:145px!important;padding:3px 5px!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.response-grid .response-student-col strong{display:block;font-size:11px;line-height:1.05;overflow:hidden;text-overflow:ellipsis}
.response-grid .response-student-col small{font-size:9px;line-height:1.05}
.response-grid .response-question-head{width:30px!important;min-width:30px!important;max-width:30px!important;padding:3px 1px!important;text-align:center!important;font-size:9.5px!important}
.response-grid td.response-cell{width:30px!important;min-width:30px!important;max-width:30px!important;padding:1px!important;height:25px!important}
.response-grid td.response-cell input{box-sizing:border-box!important;width:27px!important;min-width:27px!important;max-width:27px!important;height:22px!important;min-height:22px!important;padding:0 1px!important;text-align:center!important;border-radius:4px!important;font-size:11px!important;line-height:1!important}
.response-grid .response-readonly{display:block;width:27px;text-align:center;font-size:11px}
.response-grid thead th{height:24px!important}
.paste-hint{font-size:10px!important;margin:0 0 4px!important;color:var(--muted)}
.response-admin-panel{margin-bottom:7px!important;resize:none!important}
.response-delete-form{display:grid;grid-template-columns:minmax(220px,420px) auto minmax(220px,1fr);gap:7px;align-items:end}
.response-delete-form label{gap:3px}
.response-page-heading .page-actions{flex-wrap:wrap}
@media(max-width:900px){.response-delete-form{grid-template-columns:1fr}.response-grid .response-student-col{width:120px!important;min-width:120px!important;max-width:120px!important}}

/* Acceso docente passwordless */
.login-card.login-card-v180{width:min(650px,calc(100vw - 44px));padding:20px!important;transform:translateX(clamp(70px,10vw,190px))}
.login-card-v180 .login-brand{margin-bottom:12px!important}
.login-card-v180 h1{margin:0 0 2px}
.login-access-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}
.login-access-block{border:1px solid var(--line);border-radius:9px;padding:10px;background:color-mix(in srgb,var(--surface) 96%,transparent)}
.login-access-block h2{font-size:14px;margin:0 0 5px}
.compact-login-form{margin:5px 0!important;gap:6px!important}
.inline-passwordless-resend{margin-top:5px}
.login-mobile-link{text-align:right;margin-top:9px;font-size:11px}
@media(max-width:900px){.login-card.login-card-v180{transform:none!important}.login-access-grid{grid-template-columns:1fr}}

/* QR estable de descarga Android */
.android-download-grid{display:grid;grid-template-columns:132px 1fr;gap:10px;align-items:center}
.android-download-qr{width:128px;height:128px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:5px}
.android-download-grid>div{display:grid;gap:7px;align-content:center}
.android-download-grid p{margin:0}
@media(max-width:520px){.android-download-grid{grid-template-columns:1fr}.android-download-qr{margin:auto}}

/* Importaciones: registro administrativo compacto */
[data-panel-id="history"] table form{margin:0!important}

/* v1.8.3 · administración de usuarios sin desbordamiento horizontal */
.users-panel{min-width:0}.user-account-list{display:grid;gap:10px}.user-admin-card{border:1px solid var(--border,#d9e1ea);border-radius:12px;background:var(--panel,#fff);padding:12px;display:grid;gap:10px;min-width:0}.user-card-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:7px;border-bottom:1px solid var(--border,#e5eaf0)}.user-active-toggle{display:flex!important;flex-direction:row!important;align-items:center;gap:7px;margin:0!important;white-space:nowrap}.user-fields-grid{display:grid;grid-template-columns:minmax(190px,1.3fr) minmax(180px,1.2fr) minmax(180px,1fr) minmax(150px,.85fr) minmax(150px,.8fr);gap:8px 10px;align-items:end;min-width:0}.user-fields-grid label{min-width:0;margin:0}.user-fields-grid input,.user-fields-grid select{width:100%;min-width:0}.readonly-field{display:flex;align-items:center;min-height:32px;padding:5px 8px;border:1px solid var(--border,#d9e1ea);border-radius:7px;background:var(--surface-soft,#f7f9fb);overflow-wrap:anywhere}.user-card-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding-top:2px}.user-card-actions form{margin:0!important}.user-card-actions .password-reset-inline{display:flex;align-items:center;gap:5px;flex:1 1 300px;max-width:470px}.user-card-actions .password-reset-inline input{flex:1 1 180px;width:auto;min-width:160px}.user-card-actions .button{white-space:nowrap}.quota-cell{min-width:0!important}.quota-cell input{max-width:none!important}
@media(max-width:1450px){.user-fields-grid{grid-template-columns:repeat(3,minmax(180px,1fr))}}
@media(max-width:1050px){.user-fields-grid{grid-template-columns:repeat(2,minmax(180px,1fr))}}
@media(max-width:680px){.user-fields-grid{grid-template-columns:1fr}.user-card-heading{align-items:flex-start}.user-card-actions{align-items:stretch}.user-card-actions>.button,.user-card-actions>a.button,.user-card-actions>form.action-form{width:100%}.user-card-actions>form.action-form .button{width:100%}.user-card-actions .password-reset-inline{max-width:none;flex-basis:100%;flex-wrap:wrap}.user-card-actions .password-reset-inline input,.user-card-actions .password-reset-inline .button{width:100%}}

.action-card.omr-v3-pending{opacity:.72;background:#f6f6f3;cursor:not-allowed}.action-card.omr-v3-pending:hover{border-color:var(--line)}

/* v1.8.6 R8: paletas pastel como paleta principal, sin tinte global forzado.
   En estos formatos el color vive en la navegación, acciones, estados y acentos;
   los fondos y textos vuelven a una base neutra para evitar el efecto de filtro. */
body.ui-theme-pastel_green .sidebar,
body.ui-theme-pastel_yellow .sidebar,
body.ui-theme-pastel_orange .sidebar,
body.ui-theme-pastel_violet .sidebar,
body.ui-theme-pastel_turquoise .sidebar,
body.ui-theme-pastel_green .platform-mini-sidebar,
body.ui-theme-pastel_yellow .platform-mini-sidebar,
body.ui-theme-pastel_orange .platform-mini-sidebar,
body.ui-theme-pastel_violet .platform-mini-sidebar,
body.ui-theme-pastel_turquoise .platform-mini-sidebar{
  background:var(--sidebar)!important;
}

body.ui-theme-pastel_green .nav-link.active,
body.ui-theme-pastel_yellow .nav-link.active,
body.ui-theme-pastel_orange .nav-link.active,
body.ui-theme-pastel_violet .nav-link.active,
body.ui-theme-pastel_turquoise .nav-link.active,
body.ui-theme-pastel_green .platform-format-link.active,
body.ui-theme-pastel_yellow .platform-format-link.active,
body.ui-theme-pastel_orange .platform-format-link.active,
body.ui-theme-pastel_violet .platform-format-link.active,
body.ui-theme-pastel_turquoise .platform-format-link.active{
  background:color-mix(in srgb,var(--accent) 34%,transparent)!important;
  box-shadow:inset 3px 0 0 var(--accent)!important;
}

body.ui-theme-pastel_green .nav-link.active::before,
body.ui-theme-pastel_yellow .nav-link.active::before,
body.ui-theme-pastel_orange .nav-link.active::before,
body.ui-theme-pastel_violet .nav-link.active::before,
body.ui-theme-pastel_turquoise .nav-link.active::before{
  background:var(--accent)!important;
}

body.ui-theme-pastel_green .topbar,
body.ui-theme-pastel_yellow .topbar,
body.ui-theme-pastel_orange .topbar,
body.ui-theme-pastel_violet .topbar,
body.ui-theme-pastel_turquoise .topbar{
  border-bottom-color:color-mix(in srgb,var(--primary) 36%,var(--line))!important;
}

body.ui-theme-pastel_green .button.secondary,
body.ui-theme-pastel_yellow .button.secondary,
body.ui-theme-pastel_orange .button.secondary,
body.ui-theme-pastel_violet .button.secondary,
body.ui-theme-pastel_turquoise .button.secondary{
  background:var(--accent)!important;
  color:var(--text)!important;
}


/* v1.8.6 R9: paletas pastel con barra lateral clara y color principal real */
body.ui-theme-pastel_green .sidebar,
body.ui-theme-pastel_yellow .sidebar,
body.ui-theme-pastel_orange .sidebar,
body.ui-theme-pastel_violet .sidebar,
body.ui-theme-pastel_turquoise .sidebar,
body.ui-theme-pastel_green .platform-mini-sidebar,
body.ui-theme-pastel_yellow .platform-mini-sidebar,
body.ui-theme-pastel_orange .platform-mini-sidebar,
body.ui-theme-pastel_violet .platform-mini-sidebar,
body.ui-theme-pastel_turquoise .platform-mini-sidebar{
  background:var(--sidebar)!important;
  color:var(--text)!important;
}

body.ui-theme-pastel_green .sidebar .nav-link,
body.ui-theme-pastel_yellow .sidebar .nav-link,
body.ui-theme-pastel_orange .sidebar .nav-link,
body.ui-theme-pastel_violet .sidebar .nav-link,
body.ui-theme-pastel_turquoise .sidebar .nav-link,
body.ui-theme-pastel_green .sidebar .nav-section,
body.ui-theme-pastel_yellow .sidebar .nav-section,
body.ui-theme-pastel_orange .sidebar .nav-section,
body.ui-theme-pastel_violet .sidebar .nav-section,
body.ui-theme-pastel_turquoise .sidebar .nav-section,
body.ui-theme-pastel_green .sidebar .wayra-brand *,
body.ui-theme-pastel_yellow .sidebar .wayra-brand *,
body.ui-theme-pastel_orange .sidebar .wayra-brand *,
body.ui-theme-pastel_violet .sidebar .wayra-brand *,
body.ui-theme-pastel_turquoise .sidebar .wayra-brand *,
body.ui-theme-pastel_green .sidebar-footer .user-card strong,
body.ui-theme-pastel_yellow .sidebar-footer .user-card strong,
body.ui-theme-pastel_orange .sidebar-footer .user-card strong,
body.ui-theme-pastel_violet .sidebar-footer .user-card strong,
body.ui-theme-pastel_turquoise .sidebar-footer .user-card strong,
body.ui-theme-pastel_green .sidebar-footer .user-card small,
body.ui-theme-pastel_yellow .sidebar-footer .user-card small,
body.ui-theme-pastel_orange .sidebar-footer .user-card small,
body.ui-theme-pastel_violet .sidebar-footer .user-card small,
body.ui-theme-pastel_turquoise .sidebar-footer .user-card small{
  color:var(--text)!important;
}

body.ui-theme-pastel_green .sidebar-footer,
body.ui-theme-pastel_yellow .sidebar-footer,
body.ui-theme-pastel_orange .sidebar-footer,
body.ui-theme-pastel_violet .sidebar-footer,
body.ui-theme-pastel_turquoise .sidebar-footer{
  border-top:1px solid rgba(0,0,0,.15)!important;
}

body.ui-theme-pastel_green .sidebar .nav-link:hover,
body.ui-theme-pastel_yellow .sidebar .nav-link:hover,
body.ui-theme-pastel_orange .sidebar .nav-link:hover,
body.ui-theme-pastel_violet .sidebar .nav-link:hover,
body.ui-theme-pastel_turquoise .sidebar .nav-link:hover{
  background:rgba(255,255,255,.32)!important;
}

body.ui-theme-pastel_green .nav-link.active,
body.ui-theme-pastel_yellow .nav-link.active,
body.ui-theme-pastel_orange .nav-link.active,
body.ui-theme-pastel_violet .nav-link.active,
body.ui-theme-pastel_turquoise .nav-link.active,
body.ui-theme-pastel_green .platform-format-link.active,
body.ui-theme-pastel_yellow .platform-format-link.active,
body.ui-theme-pastel_orange .platform-format-link.active,
body.ui-theme-pastel_violet .platform-format-link.active,
body.ui-theme-pastel_turquoise .platform-format-link.active{
  background:rgba(255,255,255,.45)!important;
  box-shadow:inset 3px 0 0 var(--primary-dark)!important;
}

body.ui-theme-pastel_green .nav-link.active::before,
body.ui-theme-pastel_yellow .nav-link.active::before,
body.ui-theme-pastel_orange .nav-link.active::before,
body.ui-theme-pastel_violet .nav-link.active::before,
body.ui-theme-pastel_turquoise .nav-link.active::before{
  background:var(--primary-dark)!important;
}

body.ui-theme-pastel_green .sidebar .button,
body.ui-theme-pastel_yellow .sidebar .button,
body.ui-theme-pastel_orange .sidebar .button,
body.ui-theme-pastel_violet .sidebar .button,
body.ui-theme-pastel_turquoise .sidebar .button{
  background:rgba(255,255,255,.22)!important;
  color:var(--text)!important;
  border-color:rgba(0,0,0,.35)!important;
}

body.ui-theme-pastel_green .topbar,
body.ui-theme-pastel_yellow .topbar,
body.ui-theme-pastel_orange .topbar,
body.ui-theme-pastel_violet .topbar,
body.ui-theme-pastel_turquoise .topbar{
  background:color-mix(in srgb,var(--surface) 88%,var(--sidebar))!important;
  border-bottom-color:color-mix(in srgb,var(--primary-dark) 38%,var(--line))!important;
}

body.ui-theme-pastel_green .button.primary,
body.ui-theme-pastel_yellow .button.primary,
body.ui-theme-pastel_orange .button.primary,
body.ui-theme-pastel_violet .button.primary,
body.ui-theme-pastel_turquoise .button.primary{
  color:var(--on-primary)!important;
}


/* Wayra v1.8.6 R10: seguimiento longitudinal, distractores compactos y errores integrados */
.distractor-summary-strip{margin-bottom:4px!important}
.distractor-settings-strip{margin:0 0 6px!important;padding:6px 8px!important;overflow:visible!important}
.distractor-settings-strip .panel-header{margin:0 0 4px!important;padding:0!important;border-bottom:0!important}
.distractor-settings-strip .panel-header h2{font-size:11px!important}
.distractor-settings-strip .settings-grid{display:grid!important;grid-template-columns:minmax(180px,1.35fr) minmax(115px,.7fr) minmax(155px,.95fr) minmax(130px,.8fr) auto!important;gap:5px!important;margin:0!important;align-items:end!important}
.distractor-settings-strip .settings-grid .button{width:auto!important;white-space:nowrap!important}
.follow-up-selector-panel{margin-bottom:7px}.follow-up-selector{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:7px;align-items:end}.follow-up-selector label{min-width:0}
.student-follow-up-panel{overflow:visible!important}.follow-up-controls{display:grid;grid-template-columns:minmax(200px,1fr) minmax(180px,.8fr) minmax(210px,.8fr);gap:7px;align-items:end;margin-bottom:7px}.follow-up-check{display:flex!important;align-items:center;gap:7px;min-height:28px;padding:4px 7px;border:1px solid var(--line);border-radius:var(--ui-control-radius);background:var(--surface-alt)}.follow-up-check input{width:auto!important}.follow-up-chart-wrap{width:100%;overflow-x:auto;border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:5px}.student-follow-up-chart{display:block;width:100%;min-width:760px;height:auto;min-height:310px}.follow-up-table th,.follow-up-table td{text-align:center}.follow-up-table td:nth-child(2){text-align:left;min-width:170px}.platform-error-panel{max-width:760px;margin:30px auto;padding:22px!important}.platform-error-code{display:inline-block;padding:3px 8px;border-radius:999px;background:var(--surface-alt);color:var(--muted);font-weight:700}.public-error-shell{max-width:620px;margin:12vh auto;padding:24px;font-family:Arial,sans-serif}.public-error-shell a{font-weight:700}
@media(max-width:900px){.distractor-settings-strip .settings-grid,.student-follow-up-panel .follow-up-controls,.follow-up-selector{grid-template-columns:1fr!important}}


/* Wayra v1.8.6 R11: seguimiento longitudinal responsive y selector grupo-estudiante */
.follow-up-selector{
  grid-template-columns:minmax(150px,.7fr) minmax(190px,.9fr) minmax(230px,1.15fr) minmax(230px,1.15fr) auto!important;
  gap:7px!important;
  align-items:end!important;
}
.follow-up-project-filter{grid-column:1/-1;border:1px solid var(--line);border-radius:8px;background:var(--surface-alt);padding:5px 7px}
.follow-up-project-filter>summary{cursor:pointer;font-weight:700;color:var(--text)}
.follow-up-project-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:5px;margin-top:6px}
.follow-up-project-list .check-option{margin:0;background:var(--surface);border:1px solid var(--line);border-radius:7px;padding:5px 7px}
.follow-up-project-list .check-option span{display:grid;min-width:0}
.follow-up-project-list .check-option strong,.follow-up-project-list .check-option small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.follow-up-kpis{display:grid;grid-template-columns:repeat(4,minmax(100px,1fr));gap:6px;margin:0 0 7px}
.follow-up-kpis>span{display:grid;gap:2px;padding:7px 9px;border:1px solid var(--line);border-radius:8px;background:var(--surface-alt)}
.follow-up-kpis small{font-size:8.5px;color:var(--muted)}
.follow-up-kpis strong{font-size:14px;color:var(--text)}
.follow-up-chart-wrap{width:100%!important;overflow:hidden!important;box-sizing:border-box!important;border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:5px}
.student-follow-up-chart{display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:1100/390}
.follow-up-controls{grid-template-columns:minmax(200px,1fr) minmax(180px,.8fr) minmax(210px,.8fr)!important}
.follow-up-table{min-width:780px}
.follow-up-selector input[type="search"]{width:100%}
@media(max-width:1180px){.follow-up-selector{grid-template-columns:repeat(2,minmax(0,1fr))!important}.follow-up-selector>.button{width:100%}.follow-up-project-filter{grid-column:1/-1}}
@media(max-width:760px){.follow-up-selector,.follow-up-controls{grid-template-columns:1fr!important}.follow-up-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.student-follow-up-chart{aspect-ratio:1.65/1}}


/* Wayra v1.8.6 R12: búsqueda longitudinal institucional sin selector de grupo */
.follow-up-selector-simple{grid-template-columns:minmax(300px,1fr) auto!important;max-width:860px}
.follow-up-selector-simple .follow-up-search-main{min-width:0}
.follow-up-search-results{margin-top:8px;border-top:1px solid var(--line);padding-top:8px}
.follow-up-match-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:6px;margin-top:6px}
.follow-up-match{display:grid;gap:1px;padding:7px 9px;border:1px solid var(--line);border-radius:8px;background:var(--surface);text-decoration:none;color:var(--text)}
.follow-up-match:hover{border-color:var(--primary);background:var(--surface-alt)}
.follow-up-match span{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.follow-up-match small{color:var(--muted)}
.follow-up-project-filter-form{margin-top:8px}
.follow-up-project-filter-form .follow-up-project-filter{display:block}
.follow-up-project-filter-form .button{margin-top:7px}
@media(max-width:760px){.follow-up-selector-simple{grid-template-columns:1fr!important;max-width:none}.follow-up-selector-simple>.button{width:100%}}
/* Wayra v1.8.6 R13: descarga de gráfica longitudinal */
.follow-up-download { align-self:end; white-space:nowrap; }
@media (max-width:760px) { .follow-up-download { width:100%; } }

/* Wayra v1.8.6 R14: crear evaluación compacto + exportación longitudinal JPG */
.page-heading .page-actions{align-items:flex-end!important}
.page-heading .page-actions>a.button.primary[href="/projects/new"]{
  align-self:flex-end!important;
  min-height:26px!important;
  height:26px!important;
  padding:3px 9px!important;
  line-height:1!important;
}
.follow-up-download{white-space:nowrap}

/* Wayra v1.8.6 R15: contraste en paletas pastel + barras longitudinales delimitadas */
body.ui-theme-pastel_yellow .utility-link,
body.ui-theme-pastel_green .utility-link,
body.ui-theme-pastel_pink .utility-link,
body.ui-theme-pastel_orange .utility-link,
body.ui-theme-pastel_violet .utility-link,
body.ui-theme-pastel_turquoise .utility-link {
  color:#111!important;
}
body.ui-theme-pastel_yellow .utility-link:hover,
body.ui-theme-pastel_yellow .utility-link.active,
body.ui-theme-pastel_green .utility-link:hover,
body.ui-theme-pastel_green .utility-link.active,
body.ui-theme-pastel_pink .utility-link:hover,
body.ui-theme-pastel_pink .utility-link.active,
body.ui-theme-pastel_orange .utility-link:hover,
body.ui-theme-pastel_orange .utility-link.active,
body.ui-theme-pastel_violet .utility-link:hover,
body.ui-theme-pastel_violet .utility-link.active,
body.ui-theme-pastel_turquoise .utility-link:hover,
body.ui-theme-pastel_turquoise .utility-link.active {
  color:#000!important;
  font-weight:700;
}
.student-follow-up-chart rect[stroke]{shape-rendering:geometricPrecision}

/* Wayra R17 · sistema visual contemporáneo */
body[class*="ui-theme-"]{
  --r17-surface-soft:color-mix(in srgb,var(--surface) 88%,var(--bg) 12%);
  --r17-border:color-mix(in srgb,var(--text) 22%,var(--line));
  --r17-border-strong:color-mix(in srgb,var(--text) 38%,var(--line));
  --r17-hover:color-mix(in srgb,var(--primary) 13%,var(--surface));
  --r17-active:color-mix(in srgb,var(--primary) 22%,var(--surface));
  --r17-link:color-mix(in srgb,var(--text) 72%,var(--primary-dark));
  --r17-shadow:0 4px 14px rgba(24,30,38,.08),0 1px 2px rgba(24,30,38,.05);
  --chart-series-1:var(--chart-primary);
  --chart-series-2:var(--chart-secondary);
  --chart-series-3:var(--chart-tertiary);
  --chart-series-4:var(--chart-highlight);
  --chart-series-5:color-mix(in srgb,var(--chart-primary) 56%,var(--chart-tertiary));
  --chart-series-6:color-mix(in srgb,var(--chart-secondary) 58%,var(--chart-primary));
  --chart-series-7:color-mix(in srgb,var(--chart-highlight) 52%,var(--chart-tertiary));
  --chart-series-8:color-mix(in srgb,var(--chart-primary) 52%,var(--chart-highlight));
}
body[class*="ui-theme-"] .panel,
body[class*="ui-theme-"] .stat,
body[class*="ui-theme-"] .action-card,
body[class*="ui-theme-"] .report-card{border-color:var(--r17-border)!important;box-shadow:var(--r17-shadow)!important}
body[class*="ui-theme-"] .panel-header{border-bottom-color:var(--r17-border)!important}
body[class*="ui-theme-"] .panel-header h2,
body[class*="ui-theme-"] .page-heading h1{color:var(--text)!important;font-weight:750!important;letter-spacing:-.01em}
body[class*="ui-theme-"] .topbar-navigation,
body[class*="ui-theme-"] .topbar-navigation a{color:var(--text)!important;font-weight:650!important}
body[class*="ui-theme-"] .topbar-navigation a:hover{color:var(--primary-dark)!important;text-decoration:underline;text-underline-offset:3px}
body[class*="ui-theme-"] .utility-link{color:var(--text)!important;font-weight:650!important}
body[class*="ui-theme-"] .utility-link:hover{color:var(--text)!important;background:var(--r17-hover)!important;border-color:var(--r17-border)!important}
body[class*="ui-theme-"] .utility-link.active{color:var(--text)!important;background:var(--r17-active)!important;border-color:var(--r17-border-strong)!important;box-shadow:0 2px 7px rgba(20,25,30,.08)}
body[class*="ui-theme-"] .analysis-nav a{color:var(--text)!important;border-color:var(--r17-border)!important;font-weight:700!important;background:var(--surface)!important;box-shadow:0 1px 2px rgba(20,25,30,.05)}
body[class*="ui-theme-"] .analysis-nav a:not(.active):hover{background:var(--r17-hover)!important;border-color:var(--r17-border-strong)!important;transform:translateY(-1px)}
body[class*="ui-theme-"] .analysis-nav a.active{background:var(--primary)!important;color:var(--on-primary)!important;border-color:var(--primary-dark)!important}
body[class*="ui-theme-"] .button{border:1px solid transparent;font-weight:700!important;box-shadow:0 1px 2px rgba(20,25,30,.05)}
body[class*="ui-theme-"] .button.secondary{color:var(--text)!important;border-color:var(--r17-border-strong)!important;background:color-mix(in srgb,var(--accent) 78%,var(--surface))!important}
body[class*="ui-theme-"] .button.secondary:hover{background:var(--r17-active)!important;border-color:var(--primary-dark)!important}
body[class*="ui-theme-"] .button.ghost{color:var(--text)!important;background:color-mix(in srgb,var(--surface) 88%,transparent)!important;border-color:var(--r17-border)!important}
body[class*="ui-theme-"] table td a{color:var(--r17-link)!important;font-weight:720!important;text-underline-offset:2px;text-shadow:0 1px 0 rgba(255,255,255,.45)}
body[class*="ui-theme-"] table td a:hover{color:var(--primary-dark)!important;text-decoration:underline}
body[class*="ui-theme-"] th{color:var(--text)!important;font-weight:750!important;background:color-mix(in srgb,var(--surface-alt) 82%,var(--surface))!important;border-bottom-color:var(--r17-border-strong)!important}
body[class*="ui-theme-"] tbody tr:hover td{background:color-mix(in srgb,var(--primary) 6%,var(--surface))!important}

body[class*="ui-theme-pastel_"] .sidebar,
body[class*="ui-theme-pastel_"] .sidebar a{color:var(--text)!important}
body[class*="ui-theme-pastel_"] .sidebar .nav-section{color:var(--text)!important;opacity:.90!important;font-weight:850!important;letter-spacing:.075em!important}
body[class*="ui-theme-pastel_"] .sidebar .nav-link{color:var(--text)!important;font-weight:650!important;text-shadow:0 1px 0 rgba(255,255,255,.35)}
body[class*="ui-theme-pastel_"] .sidebar .nav-link:hover{background:rgba(255,255,255,.34)!important;box-shadow:inset 0 0 0 1px rgba(20,25,30,.10)}
body[class*="ui-theme-pastel_"] .sidebar .nav-link.active{background:rgba(255,255,255,.58)!important;color:var(--text)!important;box-shadow:inset 3px 0 0 var(--text),inset 0 0 0 1px rgba(20,25,30,.13)!important}
body[class*="ui-theme-pastel_"] .sidebar-footer{border-top-color:rgba(20,25,30,.18)!important}
body[class*="ui-theme-pastel_"] .sidebar-footer .button.ghost{color:var(--text)!important;border-color:rgba(20,25,30,.30)!important;background:rgba(255,255,255,.28)!important}

body[class*="ui-theme-"] .vertical-bars,
body[class*="ui-theme-"] .mini-histogram{
  border:1px solid var(--r17-border)!important;border-left:2px solid var(--chart-axis)!important;border-bottom:2px solid var(--chart-axis)!important;border-radius:8px;
  background:linear-gradient(to bottom,transparent 24.7%,color-mix(in srgb,var(--chart-grid) 58%,transparent) 25%,transparent 25.3%,transparent 49.7%,color-mix(in srgb,var(--chart-grid) 58%,transparent) 50%,transparent 50.3%,transparent 74.7%,color-mix(in srgb,var(--chart-grid) 58%,transparent) 75%,transparent 75.3%),var(--r17-surface-soft)!important;
}
body[class*="ui-theme-"] .vertical-bar i,
body[class*="ui-theme-"] .mini-histogram i,
body[class*="ui-theme-"] .bar-list b,
body[class*="ui-theme-"] .hist-track i{border:1.5px solid color-mix(in srgb,var(--text) 36%,transparent)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.38),0 1px 2px rgba(20,25,30,.08)}
body[class*="ui-theme-"] .vertical-bar i{width:82%!important;min-width:24px!important;border-radius:6px 6px 2px 2px!important}
body[class*="ui-theme-"] .vertical-bar:nth-child(8n+1) i,body[class*="ui-theme-"] .mini-histogram>div:nth-child(8n+1) i,body[class*="ui-theme-"] .bar-list>div:nth-child(8n+1) b,body[class*="ui-theme-"] .hist-row:nth-child(8n+1) .hist-track i{background:var(--chart-series-1)!important}
body[class*="ui-theme-"] .vertical-bar:nth-child(8n+2) i,body[class*="ui-theme-"] .mini-histogram>div:nth-child(8n+2) i,body[class*="ui-theme-"] .bar-list>div:nth-child(8n+2) b,body[class*="ui-theme-"] .hist-row:nth-child(8n+2) .hist-track i{background:var(--chart-series-2)!important}
body[class*="ui-theme-"] .vertical-bar:nth-child(8n+3) i,body[class*="ui-theme-"] .mini-histogram>div:nth-child(8n+3) i,body[class*="ui-theme-"] .bar-list>div:nth-child(8n+3) b,body[class*="ui-theme-"] .hist-row:nth-child(8n+3) .hist-track i{background:var(--chart-series-3)!important}
body[class*="ui-theme-"] .vertical-bar:nth-child(8n+4) i,body[class*="ui-theme-"] .mini-histogram>div:nth-child(8n+4) i,body[class*="ui-theme-"] .bar-list>div:nth-child(8n+4) b,body[class*="ui-theme-"] .hist-row:nth-child(8n+4) .hist-track i{background:var(--chart-series-4)!important}
body[class*="ui-theme-"] .vertical-bar:nth-child(8n+5) i,body[class*="ui-theme-"] .mini-histogram>div:nth-child(8n+5) i,body[class*="ui-theme-"] .bar-list>div:nth-child(8n+5) b,body[class*="ui-theme-"] .hist-row:nth-child(8n+5) .hist-track i{background:var(--chart-series-5)!important}
body[class*="ui-theme-"] .vertical-bar:nth-child(8n+6) i,body[class*="ui-theme-"] .mini-histogram>div:nth-child(8n+6) i,body[class*="ui-theme-"] .bar-list>div:nth-child(8n+6) b,body[class*="ui-theme-"] .hist-row:nth-child(8n+6) .hist-track i{background:var(--chart-series-6)!important}
body[class*="ui-theme-"] .vertical-bar:nth-child(8n+7) i,body[class*="ui-theme-"] .mini-histogram>div:nth-child(8n+7) i,body[class*="ui-theme-"] .bar-list>div:nth-child(8n+7) b,body[class*="ui-theme-"] .hist-row:nth-child(8n+7) .hist-track i{background:var(--chart-series-7)!important}
body[class*="ui-theme-"] .vertical-bar:nth-child(8n) i,body[class*="ui-theme-"] .mini-histogram>div:nth-child(8n) i,body[class*="ui-theme-"] .bar-list>div:nth-child(8n) b,body[class*="ui-theme-"] .hist-row:nth-child(8n) .hist-track i{background:var(--chart-series-8)!important}
.response-grid td input[value="X"],.response-readonly{font-weight:800!important;letter-spacing:.02em}

/* WAYRA STAGING BANNER START */
.wayra-staging-banner {
  position: sticky;
  top: 0;
  z-index: 10000;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  width: 100%;
  min-height: 34px;
  padding: 6px 16px;
  box-sizing: border-box;
  background: #7f1d1d;
  color: #ffffff;
  border-bottom: 2px solid #f59e0b;
  font-size: 0.82rem;
  line-height: 1.2;
  letter-spacing: 0.02em;
  text-align: center;
}
.wayra-staging-banner strong {
  font-weight: 800;
}
.wayra-staging-banner span {
  font-weight: 500;
  opacity: 0.96;
}
@media (max-width: 720px) {
  .wayra-staging-banner {
    flex-direction: column;
    gap: 2px;
    padding: 6px 10px;
    font-size: 0.76rem;
  }
}
/* WAYRA STAGING BANNER END */

/* WAYRA UI BATCH 01 START */
/* Panel principal: más superficie útil para Proyectos activos. */
[data-panel-container="dashboard"] > .dashboard-workflow-panel{
  grid-column:span 3;
}
[data-panel-container="dashboard"] > .dashboard-projects-panel{
  grid-column:span 9;
  min-width:0;
}
.dashboard-projects-panel .dashboard-projects-wrap{
  width:100%;
  max-width:100%;
  overflow-x:auto;
}
.dashboard-projects-table{
  width:100%;
  min-width:0;
  table-layout:auto;
}
.dashboard-projects-table th,
.dashboard-projects-table td{
  padding:3px 4px!important;
  font-size:8.4px!important;
  line-height:1.12!important;
  white-space:nowrap;
}
.dashboard-projects-table th:first-child,
.dashboard-projects-table td:first-child{
  min-width:145px;
  white-space:normal;
  text-align:left!important;
}
.dashboard-projects-table th:nth-child(2),
.dashboard-projects-table td:nth-child(2){
  max-width:150px;
}
.dashboard-projects-table th:last-child,
.dashboard-projects-table td:last-child{
  width:82px;
}
.dashboard-projects-table .status,
.dashboard-projects-table .badge{
  padding:1px 4px!important;
  font-size:7px!important;
  line-height:1.1!important;
}

/* Reducir únicamente los controles de creación de evaluación. */
.dashboard-new-evaluation-button{
  min-height:20px!important;
  padding:2px 7px!important;
  line-height:1.05!important;
}
.nav-link.nav-new-evaluation{
  min-height:20px!important;
  padding-top:2px!important;
  padding-bottom:2px!important;
  display:flex;
  align-items:center;
}

@media(max-width:899px){
  [data-panel-container="dashboard"] > .dashboard-workflow-panel,
  [data-panel-container="dashboard"] > .dashboard-projects-panel{
    grid-column:1/-1;
  }
  .dashboard-projects-table{
    min-width:700px;
  }
}
/* WAYRA UI BATCH 01 END */
