:root{--bg:#f6f5f1;--panel:#fff;--ink:#201e19;--ink-soft:#6b6558;--line:#ddd8cc;--accent:#14685a;--accent-ink:#fff;--warn:#b5651d;--danger:#a13a2e;--mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;--sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--radio:10px;--sombra:0 1px 2px rgba(32,30,25,.04),0 1px 8px rgba(32,30,25,.04)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}body,html{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit}.shell{max-width:960px;margin:0 auto;padding:20px 16px 90px}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:20;background:var(--bg);margin:-20px -16px 20px;padding:14px 16px 10px;border-bottom:2px solid var(--ink)}.topbar__fila{display:flex;align-items:center;justify-content:space-between}.topbar__title{font-size:19px;font-weight:700;letter-spacing:-.01em}.marca-app{display:flex;align-items:center;gap:8px;color:inherit;text-decoration:none;min-width:0}.marca-app__icono{height:30px;width:auto;flex:0 0 auto}.marca-app__nombre{font-weight:800;color:#0b2a5b;white-space:nowrap}.marca-app__nombre small{font-size:11px;font-weight:700;letter-spacing:.12em;color:#5a6b80;margin-left:2px}.marca-app__sep{width:1px;height:24px;background:var(--line);flex:0 0 auto}.marca-app__empresa{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:560px){.marca-app__nombre{display:none}}.topbar__hamburguesa{display:none;background:none;border:none;color:var(--ink);font-size:22px;padding:4px 8px;line-height:1}.nav{display:flex;gap:4px;font-size:14px;flex-wrap:wrap;margin-top:10px}.nav a{text-decoration:none;color:var(--ink-soft);padding:7px 10px;border-radius:6px}.nav a:hover{color:var(--ink);background:#ece9df}.nav a.active{color:var(--accent-ink);background:var(--accent)}@media (max-width:720px){.topbar__hamburguesa{display:block}.nav{display:none;flex-direction:column;gap:2px;margin-top:12px;padding-bottom:6px;font-size:16px}.nav.nav--abierto{display:flex;position:relative;z-index:41;background:var(--bg);border-radius:10px;padding:8px;margin-left:-8px;margin-right:-8px}.nav a{padding:14px 12px}}.menu-overlay{display:none}@media (max-width:720px){.menu-overlay{display:block;position:fixed;inset:0;background:rgba(20,18,15,.5);z-index:40}}.grupo-menu{position:relative}.grupo-menu>summary{cursor:pointer;padding:7px 10px;border-radius:6px;color:var(--ink-soft);list-style:none;font-weight:600;font-size:13.5px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.grupo-menu>summary::-webkit-details-marker{display:none}.grupo-menu>summary:hover,.grupo-menu[open]>summary{background:#ece9df;color:var(--ink)}.grupo-menu__panel{display:flex;flex-direction:column;gap:2px}.grupo-menu__panel a{padding:9px 10px;border-radius:6px}@media (min-width:721px){.grupo-menu__panel{position:absolute;top:100%;left:0;margin-top:4px;background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--sombra);padding:6px;min-width:210px;z-index:30}}@media (max-width:720px){.grupo-menu__panel{padding:2px 0 6px 10px}}h1{font-size:22px;margin:0 0 6px;letter-spacing:-.01em}h2{font-size:16px;margin:0 0 12px}.subtitle{color:var(--ink-soft);margin:0 0 24px;font-size:14px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radio);box-shadow:var(--sombra);padding:18px;margin-bottom:18px}.field{display:flex;flex-direction:column;gap:5px;margin-bottom:14px}.field label{font-size:12.5px;color:var(--ink-soft)}input,select,textarea{font-family:var(--sans);font-size:16px;padding:10px 11px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--ink);width:100%}@media (min-width:480px){input,select,textarea{font-size:14px}}input[type=checkbox],input[type=radio]{width:18px;height:18px;padding:0;margin:0;flex:0 0 auto;accent-color:var(--accent);cursor:pointer}input[type=checkbox]:disabled,input[type=radio]:disabled{cursor:not-allowed}label:has(>input[type=checkbox]),label:has(>input[type=radio]){display:inline-flex;align-items:center;gap:8px;cursor:pointer}.field label:has(>input[type=checkbox]),.field label:has(>input[type=radio]){font-size:14px;color:var(--ink)}.opciones-tarjeta{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));grid-gap:10px;gap:10px;margin-bottom:14px}label.opcion-tarjeta{display:flex;align-items:flex-start;gap:10px;padding:11px 12px;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:pointer;font-size:14px;color:var(--ink)}label.opcion-tarjeta>input{margin-top:2px}label.opcion-tarjeta:has(input:checked){border-color:var(--accent);background:#eef6f4;box-shadow:inset 0 0 0 1px var(--accent)}label.opcion-tarjeta:has(input:disabled){opacity:.6;cursor:not-allowed}.opcion-tarjeta strong{display:block;font-weight:600}.opcion-tarjeta small{display:block;color:var(--ink-soft);font-size:12.5px;line-height:1.4;margin-top:2px}.subbloque{border-left:3px solid var(--accent);padding:4px 0 4px 14px;margin:-4px 0 18px}.subbloque h3{margin:0 0 8px;font-size:15px}button:focus,input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:1px}input.sin-flechas::-webkit-inner-spin-button,input.sin-flechas::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input.sin-flechas{-moz-appearance:textfield}.row{display:flex;gap:12px;flex-wrap:wrap}.row>*{flex:1 1;min-width:150px}button{font-family:var(--sans);font-size:14.5px;font-weight:600;padding:11px 16px;min-height:42px;border-radius:7px;border:1px solid var(--accent);background:var(--accent);color:var(--accent-ink);cursor:pointer}button.secondary{background:transparent;color:var(--ink);border-color:var(--line)}button.danger{background:var(--danger);border-color:var(--danger)}button:disabled{opacity:.5;cursor:not-allowed}.table-wrap{overflow-x:auto;margin:0 -2px}.table-wrap table{min-width:480px}table{width:100%;border-collapse:collapse;font-size:13.5px}td,th{text-align:left;padding:10px 8px;border-bottom:1px solid var(--line);white-space:nowrap}th{color:var(--ink-soft);font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.03em}td{white-space:normal}.tag{display:inline-block;font-family:var(--mono);font-size:12px;padding:2px 7px;border-radius:3px;background:#eee9db;color:var(--ink)}.tag.warn{background:#f4e1cf;color:var(--warn)}.tag.danger{background:#f3ddda;color:var(--danger)}.tag.ok{background:#dcece7;color:var(--accent)}.empty{color:var(--ink-soft);font-size:14px;padding:24px 0;text-align:center}.notice{border-left:3px solid var(--accent);background:#eaf3f0;padding:10px 14px;font-size:13.5px;border-radius:3px;margin-bottom:16px}.notice.error{border-left-color:var(--danger);background:#f6e6e3}.notice.aviso{border-left-color:var(--warn);background:#f8ecdd}.tarjetas-panel{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:14px;gap:14px}.tarjeta-panel{display:block;text-decoration:none;color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:var(--radio);box-shadow:var(--sombra);padding:22px 18px;transition:transform .1s ease,box-shadow .1s ease}.tarjeta-panel:active{transform:scale(.98)}.tarjeta-panel__icono{font-size:30px;margin-bottom:10px}.tarjeta-panel__titulo{font-size:16px;font-weight:700;margin-bottom:4px}.tarjeta-panel__texto{font-size:13px;color:var(--ink-soft);line-height:1.4}.estado-conexion{position:-webkit-sticky;position:sticky;top:0;z-index:25;background:#eaf3f0;color:var(--ink);border-bottom:1px solid var(--line);padding:8px 16px;font-size:13px;text-align:center;margin:0 -16px 16px}.estado-conexion--offline{background:#f4e1cf}.legal-enlaces{text-align:center;font-size:12px;margin-top:18px}.legal-enlaces,.legal-enlaces a{color:var(--ink-soft)}.legal{max-width:860px;margin:0 auto;padding:24px 16px}.legal__logo img{display:block;width:170px;height:auto;margin:0 auto 14px}.legal__nav{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 16px;font-size:13.5px;margin-bottom:16px}.legal__texto{line-height:1.6}.legal__texto h1{margin-top:0}.legal__texto h2{font-size:17px;margin:22px 0 6px}.legal__texto table{font-size:13.5px}.legal__texto td{vertical-align:top}