: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}
