:root{
  --st-provisional:var(--st-consulta);
  --st-definitiva:var(--st-confirmado);
  --bg:#F4F8F1;
  --surface:#FFFFFF;
  --surface-2:#F7FAF4;
  --surface-3:#EDF0F4;
  --border:#E0E5EB;
  --border-strong:#C9D1DB;
  --text:#141A24;
  --text-2:#57616F;
  --text-3:#8894A4;
  --accent:#005B00;
  --accent-2:#087D16;
  --accent-soft:#EAF4E4;
  --ring:rgba(0,91,0,.30);
  --shadow-sm:0 1px 2px rgba(20,26,36,.05);
  --shadow:0 1px 3px rgba(20,26,36,.07), 0 8px 24px -12px rgba(20,26,36,.18);
  --shadow-lg:0 24px 60px -18px rgba(20,26,36,.38);
  --danger:#C42B2B;
  --ok:#16803C;
  --radius:10px;
  --st-consulta:#2563EB;
  --st-presupuesto:#3DAFE4;
  --st-confirmado:#0E8C86;
  --st-realizado:#2E9E4B;
  --st-facturado:#C9A215;
  --st-cobrado:#E07B21;
  --st-cancelado:#D4453E;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --bg:#0F131A;
    --surface:#171C25;
    --surface-2:#1D232E;
    --surface-3:#232A36;
    --border:#2A323F;
    --border-strong:#3A4452;
    --text:#E7ECF3;
    --text-2:#A3AEBF;
    --text-3:#7B8699;
    --accent:#82D486;
    --accent-2:#B5E5B4;
    --accent-soft:#18321F;
    --ring:rgba(130,212,134,.35);
    --shadow-sm:0 1px 2px rgba(0,0,0,.4);
    --shadow:0 1px 3px rgba(0,0,0,.45), 0 10px 26px -14px rgba(0,0,0,.7);
    --shadow-lg:0 24px 60px -16px rgba(0,0,0,.75);
    --danger:#F08A84;
    --ok:#6DD08D;
    --st-consulta:#5B8DF6;
    --st-presupuesto:#63C4EE;
    --st-confirmado:#2FBAB0;
    --st-realizado:#5FC77C;
    --st-facturado:#E0C04A;
    --st-cobrado:#F0994B;
    --st-cancelado:#EF6B64;
  }
}
:root[data-theme="dark"]{
  --bg:#0F131A;
  --surface:#171C25;
  --surface-2:#1D232E;
  --surface-3:#232A36;
  --border:#2A323F;
  --border-strong:#3A4452;
  --text:#E7ECF3;
  --text-2:#A3AEBF;
  --text-3:#7B8699;
  --accent:#82D486;
  --accent-2:#B5E5B4;
  --accent-soft:#18321F;
  --ring:rgba(130,212,134,.35);
  --shadow-sm:0 1px 2px rgba(0,0,0,.4);
  --shadow:0 1px 3px rgba(0,0,0,.45), 0 10px 26px -14px rgba(0,0,0,.7);
  --shadow-lg:0 24px 60px -16px rgba(0,0,0,.75);
  --danger:#F08A84;
  --ok:#6DD08D;
  --st-consulta:#5B8DF6;
  --st-presupuesto:#63C4EE;
  --st-confirmado:#2FBAB0;
  --st-realizado:#5FC77C;
  --st-facturado:#E0C04A;
  --st-cobrado:#F0994B;
  --st-cancelado:#EF6B64;
}

*{box-sizing:border-box}
/* Los enlaces internos bajan con suavidad, como en el índice del manual */
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:"Public Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  font-size:14px;
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4{font-family:"Familjen Grotesk","Public Sans",sans-serif;margin:0;text-wrap:balance;font-weight:600;letter-spacing:-.01em}
.mono,.num{font-family:"IBM Plex Mono",ui-monospace,monospace;font-variant-numeric:tabular-nums}
button{font:inherit;color:inherit}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

.wrap{max-width:1360px;margin:0 auto;padding-inline:16px;padding-block:0 40px}

/* ---------- Cabecera ---------- */
.topbar{
  position:sticky;top:env(safe-area-inset-top,0px);z-index:40;
  background:var(--bg);
  background:color-mix(in srgb, var(--bg) 88%, transparent);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--border);
}
.topbar-inner{max-width:1360px;margin:0 auto;padding-inline:16px;padding-block:14px 12px;display:flex;flex-direction:column;gap:12px}
.brandrow{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.mark{
  width:32px;height:32px;border-radius:9px;flex:none;
  background:linear-gradient(150deg,var(--accent),var(--accent-2));
  color:#fff;display:grid;place-items:center;
  font-family:"Familjen Grotesk",sans-serif;font-weight:700;font-size:15px;
}
:root[data-theme="dark"] .mark, :root:not([data-theme="light"]) .mark{color:#0F131A}
@media (prefers-color-scheme: light){:root:not([data-theme="dark"]) .mark{color:#fff}}
.brandtxt{display:flex;flex-direction:column;line-height:1.15}
.brandtxt b{font-family:"Familjen Grotesk",sans-serif;font-size:16px;font-weight:700;letter-spacing:-.015em}
.brandtxt span{font-size:11px;color:var(--text-3);text-transform:uppercase;letter-spacing:.09em}
h1.screen{font-size:20px;margin-left:4px;padding-left:16px;border-left:1px solid var(--border-strong);line-height:1.2}
.brandrow .spacer{flex:1}

.filters{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.field{display:flex;flex-direction:column;gap:3px}
.field label,.flabel{font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);font-weight:600}
:where(select,input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=button]):not([type=submit]),textarea){
  font:inherit;background:var(--surface);color:var(--text);
  border:1px solid var(--border-strong);border-radius:8px;padding:7px 10px;
  min-height:34px;
}
select{appearance:none;padding-right:26px;
  background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);
  background-position:calc(100% - 15px) 50%,calc(100% - 10px) 50%;
  background-size:5px 5px,5px 5px;background-repeat:no-repeat}
textarea{min-height:64px;resize:vertical;line-height:1.45}
input::placeholder,textarea::placeholder{color:var(--text-3)}
.search{position:relative}
.search input{padding-left:30px;min-width:220px}
.search svg{position:absolute;left:9px;bottom:10px;color:var(--text-3);pointer-events:none}

.btn{
  display:inline-flex;align-items:center;gap:7px;
  border:1px solid var(--border-strong);background:var(--surface);
  border-radius:8px;padding:7px 12px;min-height:34px;cursor:pointer;
  font-weight:500;box-shadow:var(--shadow-sm);
}
.btn:hover{background:var(--surface-2);border-color:var(--text-3)}
.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}
:root[data-theme="dark"] .btn.primary{color:#0F131A}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]) .btn.primary{color:#0F131A}}
.btn.primary:hover{background:var(--accent-2);border-color:var(--accent-2)}
.btn.ghost{background:transparent;box-shadow:none;border-color:var(--border)}
.btn.sm{min-height:29px;padding:4px 10px;font-size:12.5px}
.btn:disabled{opacity:.45;cursor:not-allowed}
.btn.danger{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 40%,var(--border))}

/* ---------- Tarjetas ---------- */
.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}
.section-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin:24px 0 10px}
.section-head h2{font-size:15px}
.section-head .hint{font-size:12.5px;color:var(--text-3)}

/* ---------- Calendario ---------- */
.calbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 12px;border-bottom:1px solid var(--border)}
.calbar .month{font-family:"Familjen Grotesk",sans-serif;font-size:16px;font-weight:600;text-transform:capitalize;min-width:150px}
.navbtn{width:30px;height:30px;display:grid;place-items:center;border:1px solid var(--border-strong);background:var(--surface);border-radius:7px;cursor:pointer}
.navbtn:hover{background:var(--surface-2)}
.legend{display:flex;gap:10px;flex-wrap:wrap;margin-left:auto;font-size:11.5px;color:var(--text-2)}
.legend span{display:inline-flex;align-items:center;gap:5px}
.legend i{width:9px;height:9px;border-radius:3px;background:var(--st);display:inline-block}

.cal-scroll{overflow-x:auto}
.cal{min-width:700px}
.cal-head{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-bottom:1px solid var(--border);background:var(--surface-2)}
.cal-head div{padding:7px 10px;font-size:10.5px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--text-3)}
.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
.day{
  min-width:0;min-height:88px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);
  padding:6px;display:flex;flex-direction:column;gap:4px;background:var(--surface);
}
.day:nth-child(7n){border-right:0}
.day.out{background:var(--surface-2)}
.day.weekend{background:color-mix(in srgb,var(--surface-2) 60%, var(--surface))}
.daynum{font-family:"IBM Plex Mono",monospace;font-size:11.5px;color:var(--text-3);font-variant-numeric:tabular-nums}
.day.out .daynum{opacity:.5}
.day.today .daynum{background:var(--accent);color:var(--surface);border-radius:999px;padding:1px 6px;font-weight:600}
.dayhead{display:flex;align-items:center;justify-content:space-between;gap:4px}
.todaytag{font-size:9.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--accent);font-weight:600}

.ev{
  text-align:left;width:100%;max-width:100%;min-width:0;overflow:hidden;border:1px solid transparent;
  transition:background .12s ease, box-shadow .12s ease;
  border-left:3px solid var(--st);
  background:#eef1f5;
  background:color-mix(in srgb, var(--st) 13%, var(--surface));
  border-radius:6px;padding:4px 6px;cursor:pointer;display:block;
  box-shadow:none;
}
.ev{text-decoration:none;color:var(--text);cursor:pointer}
.ev:hover{background:color-mix(in srgb, var(--st) 22%, var(--surface));text-decoration:none}
.ev .evc{display:block;font-size:11.5px;font-weight:600;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ev .evs{display:block;font-size:10.5px;color:color-mix(in srgb, var(--st) 72%, var(--text));font-weight:600;letter-spacing:.02em;margin-top:1px}
.ev.sel{border-color:var(--accent);box-shadow:0 0 0 2px var(--ring);background:color-mix(in srgb, var(--st) 20%, var(--surface))}
.day .more{font-size:10.5px;color:var(--text-3)}

/* ---------- Estado ---------- */
.badge{
  display:inline-flex;align-items:center;gap:6px;border-radius:999px;
  padding:3px 10px;font-size:11.5px;font-weight:600;letter-spacing:.01em;
  background:color-mix(in srgb, var(--st) 15%, var(--surface));
  color:color-mix(in srgb, var(--st) 72%, var(--text));
  border:1px solid color-mix(in srgb, var(--st) 32%, transparent);
}
.badge i{width:7px;height:7px;border-radius:999px;background:var(--st)}

/* ---------- Detalle ---------- */
.detail{display:flex;flex-direction:column;gap:14px}
.dhead{padding:16px 18px;border-bottom:1px solid var(--border);display:flex;gap:16px;flex-wrap:wrap;align-items:flex-start}
.dhead .who{flex:1;min-width:240px;display:flex;flex-direction:column;gap:6px}
.dhead h2{font-size:22px;letter-spacing:-.02em}
.dhead .sub{display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:var(--text-2);font-size:13px}
.dhead .sub .dot{color:var(--text-3)}
.amount{text-align:right;display:flex;flex-direction:column;gap:2px;align-items:flex-end}
.amount .v{font-family:"IBM Plex Mono",monospace;font-size:24px;font-weight:500;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.amount .k{font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);font-weight:600}
.dactions{display:flex;gap:8px;flex-wrap:wrap;padding:10px 18px;border-bottom:1px solid var(--border);background:var(--surface-2)}

.dgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:0}
.dcell{padding:14px 18px;border-right:1px solid var(--border);border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:7px}
.dcell:last-child{border-right:0}
.dcell h4{font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);display:flex;align-items:center;gap:6px}
.dcell h4 svg{color:var(--text-3)}
.dcell .line{font-size:13px;line-height:1.5}
.dcell .line.strong{font-weight:600}
.dcell .muted{color:var(--text-2)}
.kv{display:flex;gap:8px;font-size:13px}
.kv b{font-weight:500;color:var(--text-2);min-width:88px}
.next{
  border-left:3px solid var(--accent);background:var(--accent-soft);
  border-radius:0 8px 8px 0;padding:8px 12px;display:flex;flex-direction:column;gap:2px;
}
.next .when{font-size:12px;color:var(--text-2);font-family:"IBM Plex Mono",monospace}
.doclinks{display:flex;flex-direction:column;gap:6px}
.doclink{display:inline-flex;align-items:center;gap:7px;font-size:13px}
.doclink.off{color:var(--text-3)}
.obs{padding:14px 18px;font-size:13px;color:var(--text-2);line-height:1.55;border-bottom:1px solid var(--border)}
.obs b{color:var(--text);font-weight:600}

/* ---------- Actividades ---------- */
.acts{display:flex;flex-direction:column;gap:12px}
.act{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);overflow:hidden}
.act-head{padding:12px 16px;display:flex;gap:14px;align-items:flex-start;flex-wrap:wrap;background:var(--surface-2);border-bottom:1px solid var(--border)}
.act-head .idx{
  width:26px;height:26px;border-radius:7px;flex:none;display:grid;place-items:center;
  background:var(--surface);border:1px solid var(--border-strong);color:var(--text-2);
  font-family:"IBM Plex Mono",monospace;font-size:12px;font-weight:500;
}
.act-head .t{flex:1;min-width:200px;display:flex;flex-direction:column;gap:3px}
.act-head h3{font-size:15px}
.act-head .meta{display:flex;gap:12px;flex-wrap:wrap;font-size:12.5px;color:var(--text-2)}
.act-head .meta span{display:inline-flex;align-items:center;gap:5px}
.pill{font-size:11px;font-weight:600;background:var(--surface-3);color:var(--text-2);padding:2px 8px;border-radius:999px;white-space:nowrap}
.act-obs{padding:9px 16px;font-size:12.5px;color:var(--text-2);border-bottom:1px solid var(--border);background:var(--surface)}

.tablewrap{overflow-x:auto}
table.ses{width:100%;border-collapse:collapse;min-width:880px}
table.ses th{
  text-align:left;font-size:10.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--text-3);
  font-weight:600;padding:8px 12px;border-bottom:1px solid var(--border);white-space:nowrap;background:var(--surface);
}
table.ses td{padding:10px 12px;border-bottom:1px solid var(--border);vertical-align:top;font-size:13px}
table.ses tr:last-child td{border-bottom:0}
table.ses tr:hover td{background:var(--surface-2)}
.hora{font-family:"IBM Plex Mono",monospace;font-variant-numeric:tabular-nums;font-weight:500;white-space:nowrap}
.hora .sep{color:var(--text-3);padding:0 2px}
.grupo{font-weight:600}
.part{font-family:"IBM Plex Mono",monospace;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}
.tdobs{color:var(--text-2);max-width:230px}
.chips{display:flex;gap:5px;flex-wrap:wrap}
.chip{
  display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:500;
  background:var(--accent-soft);color:var(--text);border:1px solid color-mix(in srgb,var(--accent) 22%,transparent);
  border-radius:999px;padding:2px 9px 2px 3px;white-space:nowrap;
}
.chip .av{
  width:17px;height:17px;border-radius:999px;display:grid;place-items:center;flex:none;
  background:var(--accent);color:var(--surface);font-size:9px;font-weight:700;font-family:"Familjen Grotesk",sans-serif;
}
.chip.soft{background:var(--surface-3);border-color:var(--border)}
.chip button{background:none;border:0;cursor:pointer;color:var(--text-3);padding:0 2px;font-size:13px;line-height:1}
.chip.pick{cursor:pointer;background:var(--surface-2);border-color:var(--border-strong);padding:3px 10px}
.chip.pick[aria-pressed="true"]{background:var(--accent-soft);border-color:var(--accent);color:var(--text)}
.warn-inline{color:var(--danger);font-size:12px;display:inline-flex;align-items:center;gap:5px}

/* ---------- Estados vacíos ---------- */
.empty{
  display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;
  padding:44px 20px;color:var(--text-2);
}
.empty .ic{
  width:42px;height:42px;border-radius:12px;display:grid;place-items:center;
  background:var(--surface-3);color:var(--text-3);
}
.empty h3{font-size:15px;color:var(--text)}
.empty p{margin:0;font-size:13px;max-width:44ch}
.empty.sm{padding:26px 16px}

/* ---------- Modales ---------- */
.overlay{
  position:fixed;inset:0;z-index:80;background:rgba(15,19,26,.55);
  display:flex;align-items:flex-start;justify-content:center;padding:24px 16px;overflow-y:auto;
  backdrop-filter:blur(2px);
}
.modal{
  background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);
  width:100%;max-width:700px;margin:auto;overflow:hidden;
  display:flex;flex-direction:column;max-height:calc(100dvh - 48px);min-height:0;
}
.modal.wide{max-width:900px}
.mhead{padding:16px 20px;border-bottom:1px solid var(--border);display:flex;align-items:flex-start;gap:12px}
.mhead .t{flex:1;display:flex;flex-direction:column;gap:2px}
.mhead h3{font-size:17px}
.mhead .s{font-size:12.5px;color:var(--text-3)}
.mclose{border:0;background:var(--surface-2);width:30px;height:30px;border-radius:8px;cursor:pointer;color:var(--text-2);flex:none}
.mclose:hover{background:var(--surface-3)}
.mbody{padding:18px 20px;display:flex;flex-direction:column;gap:16px;max-height:min(70vh,640px);overflow-y:auto;min-height:0;flex:1 1 auto;overscroll-behavior:contain}
.mbody>*{flex-shrink:0}
.mhead,.mfoot,.steps{flex-shrink:0}
.mfoot{padding:13px 20px;border-top:1px solid var(--border);display:flex;gap:8px;align-items:center;background:var(--surface-2);flex-wrap:wrap}
.mfoot .spacer{flex:1}
.steps{display:flex;gap:6px;padding:12px 20px;border-bottom:1px solid var(--border);background:var(--surface-2);flex-wrap:wrap}
.step{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--text-3);padding:4px 10px;border-radius:999px;font-weight:500}
.step .n{width:19px;height:19px;border-radius:999px;display:grid;place-items:center;background:var(--surface-3);font-size:11px;font-weight:600;font-family:"IBM Plex Mono",monospace}
.step.on{background:var(--accent-soft);color:var(--text)}
.step.on .n{background:var(--accent);color:var(--surface)}
.step.done{color:var(--text-2)}
.step.done .n{background:color-mix(in srgb,var(--ok) 20%,var(--surface));color:var(--ok)}

.frow{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}
.frow.one{grid-template-columns:1fr}
.field.err input,.field.err select,.field.err textarea{border-color:var(--danger)}
.ferr{font-size:11.5px;color:var(--danger)}
.fhint{font-size:11.5px;color:var(--text-3)}
.subcard{border:1px solid var(--border);border-radius:9px;padding:12px;display:flex;flex-direction:column;gap:10px;background:var(--surface-2)}
.subcard .sc-head{display:flex;align-items:center;gap:10px}
.subcard .sc-head b{flex:1;font-size:13px}
.reviewbox{border:1px solid var(--border);border-radius:9px;overflow:hidden}
.reviewbox .rh{padding:9px 12px;background:var(--surface-2);border-bottom:1px solid var(--border);font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);font-weight:600}
.reviewbox .rb{padding:12px;display:flex;flex-direction:column;gap:8px;font-size:13px}
.rline{display:flex;gap:10px}
.rline b{min-width:132px;color:var(--text-2);font-weight:500}
.sesline{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:12.5px;padding:7px 0;border-top:1px dashed var(--border)}

.footnote{margin-top:22px;font-size:11.5px;color:var(--text-3);display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.footnote .dot{color:var(--border-strong)}

@media (max-width:760px){
  h1.screen{border-left:0;padding-left:0;margin-left:0;width:100%}
  .dcell{border-right:0}
  .amount{text-align:left;align-items:flex-start}
  .mbody{max-height:none}
  .overlay{padding:12px}
  .modal{max-height:calc(100dvh - 24px)}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}

/* ---------- Añadidos de la versión conectada ---------- */
.quien{font-size:12.5px;color:var(--text-2);display:inline-flex;align-items:center;gap:4px}
.aviso{
  display:flex;align-items:center;gap:10px;flex-wrap:wrap;
  margin-top:14px;padding:11px 14px;border-radius:var(--radius);
  background:color-mix(in srgb, var(--danger) 10%, var(--surface));
  border:1px solid color-mix(in srgb, var(--danger) 35%, transparent);
  color:var(--danger);font-size:13px;
}
.aviso .btn{margin-left:auto;color:var(--text)}
body.solo-lectura .dactions .btn:not(a){display:none}
body.ocupado .mfoot .btn.primary{pointer-events:none;opacity:.5}
body.ocupado{cursor:progress}


/* ---------- Mantenimiento ---------- */
.pestanas{display:flex;gap:4px;flex-wrap:wrap}
.pest{
  border:1px solid transparent;background:transparent;border-radius:8px;
  padding:6px 12px;cursor:pointer;font-weight:500;font-size:13.5px;color:var(--text-2);
  display:inline-flex;align-items:center;gap:7px;
}
.pest:hover{background:var(--surface-2);color:var(--text)}
.pest.on{background:var(--surface);border-color:var(--border);color:var(--text);box-shadow:var(--shadow-sm)}
.pest .n{
  font-family:"IBM Plex Mono",monospace;font-size:11px;font-variant-numeric:tabular-nums;
  background:var(--surface-3);color:var(--text-2);border-radius:999px;padding:1px 7px;
}
.pest.on .n{background:var(--accent-soft);color:var(--accent)}

.barra{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px}
.barra .spacer{flex:1}
.barra .search{position:relative;min-width:220px}
.barra .search input{padding-left:30px;width:100%}
.barra .search svg{position:absolute;left:9px;top:50%;transform:translateY(-50%);color:var(--text-3);pointer-events:none}
.cuenta{font-size:12.5px;color:var(--text-2)}

.filas{display:flex;flex-direction:column;gap:8px}
.fila{overflow:hidden}
.fila-cab{display:flex;align-items:center;gap:10px;padding:10px 14px}
.fila.abierta .fila-cab{border-bottom:1px solid var(--border);background:var(--surface-2)}
.desplegar{
  border:0;background:transparent;cursor:pointer;color:var(--text-3);
  width:22px;height:22px;flex:none;display:grid;place-items:center;border-radius:6px;
}
.desplegar:hover{background:var(--surface-3);color:var(--text)}
.flecha{font-size:11px;line-height:1}
.fila-t{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.fila-n{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.fila-n b{font-size:14px}
.centro-nombre{border:0;background:transparent;padding:0;text-align:left;font:inherit;font-size:14px;font-weight:700;color:var(--text);cursor:pointer}
.centro-nombre:hover{text-decoration:underline}
.centro-nombre:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:2px}
.fila-s{font-size:12.5px;color:var(--text-2)}
.fila-acc{display:flex;gap:6px;flex:none}
.fila-cuerpo{padding:14px;display:flex;flex-direction:column;gap:9px;background:var(--surface)}
.dato{display:flex;gap:10px;font-size:13px;flex-wrap:wrap}
.dato b{min-width:118px;color:var(--text-2);font-weight:500;flex:none}
.sub-cab{display:flex;align-items:center;gap:10px;margin-top:8px;padding-top:12px;border-top:1px solid var(--border)}
.sub-cab b{flex:1;font-size:13px}

.estadillo{
  display:inline-block;font-size:11px;font-weight:600;border-radius:999px;padding:2px 9px;
  background:var(--surface-3);color:var(--text-2);border:1px solid var(--border);
}
.estadillo.on{background:color-mix(in srgb,var(--ok) 14%,var(--surface));color:var(--ok);
  border-color:color-mix(in srgb,var(--ok) 32%,transparent)}
.estadillo.off{background:var(--surface-3);color:var(--text-3)}

.check{display:flex;align-items:center;gap:8px;font-size:13px;cursor:pointer}
.check input{width:15px;height:15px;accent-color:var(--accent);cursor:pointer}

h4.secc{
  font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3);
  margin-top:6px;padding-top:12px;border-top:1px solid var(--border);
  display:flex;align-items:center;gap:10px;
}
h4.secc .btn{margin-left:auto;text-transform:none;letter-spacing:0}

/* Alta rápida junto a un desplegable */
.con-alta{display:flex;gap:6px;align-items:stretch}
.con-alta select{flex:1;min-width:0}
.con-alta .mas{
  flex:none;width:34px;display:grid;place-items:center;
  border:1px solid var(--border-strong);background:var(--surface);border-radius:8px;cursor:pointer;
  color:var(--text-2);
}
.con-alta .mas:hover{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}

/* ---------- Acciones sobre actividades y sesiones ---------- */
.act-acc{display:flex;gap:5px;flex:none;align-items:center}
td.ses-acc{white-space:nowrap;text-align:right;width:74px}
td.ses-acc .btn{padding:3px 6px;min-height:24px}
table.ses tr:hover td.ses-acc .btn{border-color:var(--border-strong)}
body.solo-lectura .act-acc,
body.solo-lectura td.ses-acc{display:none}

/* El detalle avisa de que ha cambiado, para quien no vea el desplazamiento */
@keyframes dvm-aparece{
  from{box-shadow:0 0 0 3px var(--ring)}
  to{box-shadow:var(--shadow-sm)}
}
.detail > .card:first-child{animation:dvm-aparece .5s ease-out}
@media (prefers-reduced-motion:reduce){
  .detail > .card:first-child{animation:none}
}

/* Hueco que deja el desplazamiento al detalle, para que no quede debajo de la
   barra superior. El alto de la barra lo mide la aplicación y lo deja en
   --alto-barra, porque cambia bastante entre móvil y escritorio. */
.section-head{scroll-margin-top:calc(var(--alto-barra, 132px) + 14px)}
/* Encargos que agrupan jornadas de cualquier mes. */
.encargos-panel{padding:18px;margin:16px 0 24px}
.encargos-panel .section-head{margin-top:0;flex-wrap:wrap;gap:10px}
.encargos-panel select{width:100%;max-width:100%}
.encargo-dias,.encargo-acciones{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.encargos-panel h3{margin-top:12px}
.version-app{max-width:1440px;margin:20px auto;padding:12px 24px;text-align:right;font-size:12px}
.version-app{display:flex;justify-content:flex-end;align-items:center;gap:8px 18px;flex-wrap:wrap;color:var(--text-2)}
.acceso+.version-app{justify-content:center;text-align:center;margin:0 auto;max-width:480px}
.changelog{padding-top:24px;padding-bottom:32px;max-width:960px}
.changelog .card{padding:24px;margin-top:20px}
.changelog h2,.changelog h3,.changelog h4{margin:20px 0 10px}
.changelog p{margin:10px 0;overflow-wrap:anywhere}
.cursos-oferta{margin:0;padding:12px;border:1px solid var(--border);border-radius:8px;min-width:0}
.cursos-oferta legend{padding:0 5px;font-weight:600;font-size:13px}
.curso-opciones{display:flex;gap:9px 16px;flex-wrap:wrap;margin-top:10px}
.curso-check{display:flex;align-items:center;gap:6px;font-size:13px;cursor:pointer}
.curso-check input{width:16px;height:16px;accent-color:var(--accent)}
.catalogo-filtros{align-items:flex-end}
.catalogo-filtros .field{flex:1 1 155px;min-width:0}
.catalogo-filtros input,.catalogo-filtros select{width:100%}
.orden-columna{border:0;padding:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}
.orden-columna:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.material-contenido{white-space:pre-wrap;min-width:140px;overflow-wrap:anywhere}
.selector-buscable{flex:1;min-width:0;width:100%}
.buscador-entrada{display:flex;align-items:center;gap:4px}
.buscador-entrada input{width:100%;min-width:0}
.limpiar-selector{background:transparent;border:0;color:var(--text-2);font-size:20px;cursor:pointer;padding:4px}
.buscador-opciones{margin-top:4px;border:1px solid var(--border);border-radius:7px;max-height:180px;overflow:auto;background:var(--surface);padding:4px}
.buscador-opciones button{display:block;width:100%;text-align:left;white-space:normal;padding:8px;border:0;background:transparent;color:var(--text);font:inherit;cursor:pointer;border-radius:4px}
.buscador-opciones button.resaltada,.buscador-opciones button:hover{background:var(--accent-soft)}
.buscador-opciones p{padding:8px}

/* Identidad Divermates: colores extraídos del logo suministrado por la marca. */
:root{--marca-verde:#005B00;--marca-amarillo:#FFEE00;--marca-azul:#00A0E4;--marca-naranja:#F07F1B;--marca-rojo:#E31F25}
.mark{width:100px;height:auto;min-height:49px;background:transparent;border-radius:7px;overflow:hidden}
.mark img{display:block;width:100%;height:auto}
.brandtxt span{color:var(--accent)}
.filtro-nuevo-encargo .btn{white-space:nowrap;min-height:34px}
.filtro-nuevo-encargo{align-self:flex-start}
@media(min-width:1100px){.filters>.field:not(.search):not(.filtro-nuevo-encargo){max-width:235px}.filters select{max-width:100%}}
@media(min-width:1100px){
  .filters{display:grid;grid-template-columns:minmax(140px,1.4fr) minmax(140px,1.6fr) minmax(110px,1fr) minmax(115px,.9fr) minmax(115px,.9fr) minmax(100px,.8fr) auto;align-items:end}
  .filters .field{min-width:0;max-width:none!important}
  .filters select{width:100%;min-width:0}
  .filters .field.search{grid-column:1 / span 3}
  .filtro-nuevo-encargo{align-self:end}
}

/* Navegación y controles comunes */
.selector-buscable input{width:100%;min-width:0;cursor:text;padding-right:26px;background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%23667766'/%3E%3C/svg%3E") no-repeat right 6px center}
.selector-flotante{position:fixed!important;z-index:200;overflow-y:auto;overscroll-behavior:contain;top:auto;box-shadow:var(--shadow-lg);background:var(--surface);border:1px solid var(--border);border-radius:8px}
.selector-flotante button{display:block;width:100%;text-align:left;white-space:normal;min-height:36px}
.selector-flotante p{padding:12px}.vistas{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0 12px}.ruta-modelo{font-size:13px;color:var(--text-2);line-height:1.8}.nivel{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--accent);font-weight:700}
.tabla-scroll{overflow-x:auto;width:100%;margin:12px 0}.tabla-scroll table{width:100%;border-collapse:collapse}.tabla-scroll th,.tabla-scroll td{padding:12px;text-align:left;border-bottom:1px solid var(--border)}.tabla-scroll th{background:var(--surface-2);font-size:12px}.acciones-fila{display:flex;gap:8px;flex-wrap:wrap}.enlace-nombre{border:0;background:none;color:var(--accent);font:inherit;font-weight:600;cursor:pointer;text-align:left;text-decoration:underline}.modal .mbody{max-height:none;overflow:auto}.modal .mhead,.modal .mfoot{flex-shrink:0}.encargos-panel .section-head{align-items:center}
@media(max-width:600px){.overlay{padding:12px 8px}.modal{max-height:calc(100dvh - 24px)}.mhead,.mbody,.mfoot{padding:12px}.tabla-scroll th,.tabla-scroll td{padding:9px}.topbar{position:relative}.ruta-modelo{font-size:12px}}

.calbar .month{display:flex;gap:8px;align-items:center;flex-wrap:wrap;min-width:0}.calbar .month .selector-buscable{width:150px;flex:none}.calbar .month input[type=number]{width:90px;padding:8px;border:1px solid var(--border);border-radius:7px;font:inherit;background:var(--surface);color:var(--text)}.calbar{flex-wrap:wrap}.filters{grid-template-columns:repeat(5,minmax(0,1fr)) auto!important}.selector-flotante{box-sizing:border-box}.encargos-panel table button+button{margin-left:6px}

.topbar[data-vista="encargos"] .field:has(#flt-jornada),.topbar[data-vista="encargos"] .field:has(#flt-estado-jornada){display:none}@media(min-width:1100px){.topbar[data-vista="encargos"] .filters{grid-template-columns:repeat(3,minmax(140px,1fr)) auto!important}}

/* Un mismo aspecto y comportamiento en todas las pantallas. */
.modal-contenido{display:contents}.modal-contenido[hidden]{display:none!important}
.field{min-width:0}.field>input,.field>textarea,.field>.selector-buscable{width:100%;box-sizing:border-box}.field [aria-invalid=true]{border-color:var(--danger)}
input:disabled,textarea:disabled,.btn:disabled{opacity:.6;cursor:not-allowed}.btn:focus-visible,.selector-buscable input:focus-visible{outline:3px solid var(--ring);outline-offset:2px}
.limpiar-filtros{margin-left:auto}.modal .mbody{scrollbar-gutter:stable}.modal .mhead h3{line-height:1.35}.mbody .ferr{line-height:1.5}.modal p{line-height:1.5}
.tabla-scroll td:last-child{white-space:nowrap}.tabla-scroll th{font-weight:600}.tabla-scroll tr:focus-within{background:var(--accent-soft)}
@media(max-width:600px){.vistas .btn{flex:1;justify-content:center}.vistas .limpiar-filtros{flex-basis:100%;margin:0}.modal .mfoot .btn{min-height:40px}.field>input,.field>textarea,.selector-buscable input{font-size:16px}.topbar-inner{padding-inline:12px}.filters .search input{min-width:0}.tabla-scroll td:last-child{white-space:normal}}
@media print{.version-app .btn{display:none!important}}
.reviewbox .sesline .chips{display:none}.rline>span{min-width:0;overflow-wrap:anywhere}.sesline .grupo{overflow-wrap:anywhere}

.vista-educador{padding:16px;margin-top:16px;border-left:4px solid var(--accent);display:flex;flex-direction:column;gap:10px}.vista-educador p{line-height:1.5;margin:0}.vista-educador .btn{align-self:flex-start}.vista-educador .selector-buscable{max-width:100%}.cal-head>div,.cal-grid>.day{box-sizing:border-box;min-width:0}
.notas-version>div{display:flex;flex-direction:column;gap:10px;padding-top:16px}.notas-version p{line-height:1.6;overflow-wrap:anywhere}.notas-version h3{margin-top:12px}.notas-version .nota-cambio{padding-left:14px;text-indent:-14px}

.navegacion-principal{display:flex;gap:4px;max-width:100%;min-width:0;overflow-x:auto;white-space:nowrap;border-bottom:1px solid var(--border);scrollbar-width:thin;padding:2px 0}
.nav-pestana{flex:none;display:inline-flex;align-items:center;min-height:40px;padding:8px 12px;color:var(--text-2);font-weight:600;border-bottom:3px solid transparent;text-decoration:none;border-radius:7px 7px 0 0}
.nav-pestana:hover{color:var(--accent);background:var(--accent-soft);text-decoration:none}.nav-pestana.activa{color:var(--accent);border-bottom-color:var(--accent);background:var(--accent-soft)}
.filtros-acciones{display:flex;justify-content:flex-end;margin-top:12px}.filtros-acciones:empty{display:none}.ruta-modelo{margin-top:12px}
@media(max-width:600px){.nav-pestana{padding-inline:10px;min-height:44px;font-size:13px}.brandrow .quien{font-size:12px}}

/* Trabajo y datos de referencia, separados sin ocultar la jerarquía. */
.navegacion-principal{gap:16px;align-items:stretch;flex-wrap:wrap;overflow:visible}.nav-grupo{min-width:0;background:var(--surface);border:1px solid var(--border);border-radius:9px 9px 0 0;padding:6px 6px 0}.nav-grupo:first-child{background:var(--accent-soft)}.nav-grupo-titulo{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--text-2);padding:0 10px 3px;font-weight:700}.nav-grupo-enlaces{display:flex;flex-wrap:wrap}.nav-pestana{white-space:nowrap}
.selector-vista{display:flex;gap:2px;padding:3px;border:1px solid var(--border);border-radius:8px}.selector-vista .btn[aria-pressed=true]{background:var(--accent);color:white}.agenda-dia{padding:16px;border-top:1px solid var(--border)}.agenda-dia h3{font-size:14px;margin:0 0 10px;color:var(--text-2)}.agenda-fila{display:flex;gap:16px;align-items:center;padding:12px;border:1px solid var(--border);border-radius:8px;margin-top:8px;color:var(--text);text-decoration:none}.agenda-fila:hover,.agenda-fila.seleccionada{background:var(--accent-soft);border-color:var(--accent)}.agenda-hora{min-width:100px;font-variant-numeric:tabular-nums}.agenda-datos{display:flex;flex:1;min-width:0;flex-direction:column;gap:4px;overflow-wrap:anywhere}.agenda-datos small{color:var(--text-2)}
.hoja-dialog:not([open]){display:none}.hoja-dialog[open]{display:flex;flex-direction:column;width:min(1000px,calc(100vw - 24px));height:calc(100dvh - 32px);max-height:900px;padding:0;margin:auto;border:1px solid var(--border);border-radius:12px;color:var(--text);background:var(--surface)}.hoja-dialog::backdrop{background:rgba(0,0,0,.55)}.hoja-dialog iframe{flex:1;min-height:0;width:100%;border:0;background:white}.hoja-dialog .mhead,.hoja-dialog .mfoot{flex:none}
@media(max-width:600px){.navegacion-principal{gap:8px}.nav-grupo{width:100%}.agenda-fila{gap:8px;flex-wrap:wrap}.agenda-hora{min-width:90px}.hoja-dialog .mfoot{flex-wrap:wrap}.hoja-dialog{max-width:calc(100vw - 16px)}}

/* Dos accesos compactos en la cabecera. */
.navegacion-cabecera{display:flex;align-items:center;gap:8px}.nav-desplegable{position:relative}.nav-opciones{position:absolute;top:calc(100% + 8px);right:0;min-width:210px;padding:6px;z-index:100;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-lg)}.nav-opciones[hidden]{display:none}.nav-opciones a{display:block;padding:10px 12px;border-radius:6px;color:var(--text);text-decoration:none;white-space:nowrap}.nav-opciones a:hover,.nav-opciones a[aria-current]{background:var(--accent-soft);color:var(--accent)}.nav-opciones a:focus-visible{outline:2px solid var(--accent)}@media(max-width:600px){.navegacion-cabecera{gap:6px}.nav-opciones{right:auto;left:0;max-width:calc(100vw - 32px)}.brandrow{row-gap:10px}}
@media(max-width:600px){.nav-opciones{position:fixed;left:12px;right:12px;top:auto;margin-top:8px;min-width:0;max-width:none}}
/* Tablero de incidencias y reporte contextual. */
.inc-columnas{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}.inc-columna{min-width:0;padding:12px;background:var(--surface-2);border:1px solid var(--border);border-radius:10px}.inc-columna h3{font-size:15px;margin-bottom:12px}.inc-tarjeta{display:flex;flex-direction:column;gap:8px;width:100%;text-align:left;font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:8px;margin:10px 0;padding:12px;cursor:pointer;overflow-wrap:anywhere}.inc-tarjeta:hover{border-color:var(--accent)}.inc-tarjeta small{color:var(--text-2)}.inc-flotante{position:fixed;z-index:500;box-shadow:var(--shadow-lg)}.inc-objetivo{outline:3px solid #df8b12!important;outline-offset:3px}.inc-modal:not([open]){display:none}.inc-modal[open]{display:flex;flex-direction:column;width:min(720px,calc(100vw - 24px));max-height:calc(100dvh - 32px);margin:auto;padding:0;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text)}.inc-modal::backdrop{background:#0008}.inc-modal .mbody{min-height:0;overflow:auto;display:flex;flex-direction:column;gap:12px}.inc-modal .field{display:flex;flex-direction:column;gap:6px}.inc-modal select{font:inherit;padding:10px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text)}.inc-imagen{display:block;max-width:100%;max-height:320px;object-fit:contain}.inc-imagen[hidden]{display:none}.inc-contexto{background:var(--accent-soft);padding:12px;border-radius:8px;overflow-wrap:anywhere}.inc-descripcion,.inc-historial p{white-space:pre-wrap;overflow-wrap:anywhere}.inc-historial{border-top:1px solid var(--border);padding-top:12px}.inc-confirmacion{position:fixed;bottom:20px;right:16px;z-index:500;background:var(--surface);border:1px solid var(--accent);border-radius:9px;padding:14px;box-shadow:var(--shadow-lg);max-width:calc(100vw - 32px)}@media(max-width:800px){.inc-columnas{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:500px){.inc-columnas{grid-template-columns:1fr}.inc-modal .mfoot{flex-wrap:wrap}}@media print{.inc-flotante,.inc-confirmacion{display:none!important}}

.inc-tarjeta[draggable="true"]{cursor:grab}.inc-tarjeta.inc-arrastrando{opacity:.45;cursor:grabbing}.inc-columna.inc-destino{outline:2px solid var(--accent);outline-offset:2px;background:var(--accent-soft)}.inc-ayuda-arrastre{font-size:11px}.inc-columnas[aria-busy="true"]{opacity:.7}

/* Kanban: estados y prioridades distinguibles también por su texto. */
.inc-filtros{display:grid;grid-template-columns:minmax(220px,2fr) repeat(4,minmax(130px,1fr)) auto;gap:12px;align-items:end;margin:18px 0}.inc-filtros .field{display:flex;flex-direction:column;gap:6px}.inc-filtros input,.inc-filtros select{width:100%;min-width:0;padding:9px;border:1px solid var(--border);border-radius:8px;font:inherit;background:var(--surface);color:var(--text)}.inc-filtros .btn{min-height:38px}.inc-ayuda{margin:8px 0}.inc-ayuda summary{cursor:pointer;color:var(--text-2);font-size:13px}.inc-ayuda p{margin-top:8px;font-size:13px}
.inc-columnas{grid-template-columns:repeat(4,minmax(245px,1fr));overflow-x:auto;align-items:start;padding:3px 3px 16px;scroll-snap-type:x proximity}.inc-columna{min-height:180px;max-height:65dvh;overflow-y:auto;scroll-snap-align:start;border-top:4px solid var(--inc-color);background:var(--inc-fondo);scrollbar-width:thin;overscroll-behavior-y:contain}.inc-columna>h3{position:sticky;top:-12px;z-index:1;background:var(--inc-fondo);padding:10px 0;margin:0 0 8px;border-bottom:1px solid var(--border)}.inc-columna[data-estado="Pendiente"]{--inc-color:#4775bb;--inc-fondo:#edf3fc}.inc-columna[data-estado="En curso"]{--inc-color:#ad7600;--inc-fondo:#fff5dc}.inc-columna[data-estado="Resuelta"]{--inc-color:#13806e;--inc-fondo:#e6f5ef}.inc-columna[data-estado="Validada"]{--inc-color:#557e31;--inc-fondo:#edf4e5}.inc-tarjeta{border-left:4px solid #94a3b8}.inc-tarjeta[data-prioridad="Alta"]{border-left-color:#b83a36}.inc-tarjeta[data-prioridad="Normal"]{border-left-color:#a27213}.inc-tarjeta[data-prioridad="Baja"]{border-left-color:#548165}.inc-etiquetas{display:flex;gap:6px;flex-wrap:wrap}.inc-prioridad,.inc-categoria{display:inline-block;border-radius:20px;padding:3px 8px;font-size:11px;font-weight:600}.inc-prioridad[data-prioridad="Alta"],.inc-categoria[data-categoria="Error"]{color:#8f2420;background:#fde9e7}.inc-prioridad[data-prioridad="Normal"]{color:#775009;background:#fff2cd}.inc-prioridad[data-prioridad="Baja"]{color:#326044;background:#e7f2eb}.inc-categoria[data-categoria="Mejora"]{color:#275488;background:#e5effb}.inc-categoria[data-categoria="Diseño"]{color:#65418a;background:#efe7f7}.inc-categoria[data-categoria="Duda"]{color:#675321;background:#f5efdc}.inc-columnas .inc-columna.inc-destino{outline-color:var(--inc-color);background:var(--accent-soft)}
@media(max-width:1150px){.inc-filtros{grid-template-columns:repeat(3,minmax(0,1fr))}.inc-filtros .field:first-child{grid-column:span 2}}@media(max-width:600px){.inc-filtros{grid-template-columns:repeat(2,minmax(0,1fr))}.inc-filtros .field:first-child{grid-column:1/-1}.inc-columnas{grid-template-columns:repeat(4,minmax(260px,1fr))}.inc-columna{max-height:65dvh}}

.tabla-listado caption{caption-side:top;text-align:left;padding:12px;white-space:normal}.tabla-listado caption button{margin-left:12px}.tabla-listado th{vertical-align:top;min-width:135px}.tabla-listado th:last-child{min-width:90px}.tabla-listado th input{display:block;width:100%;min-width:100px;margin-top:8px;padding:7px;border:1px solid var(--border);border-radius:7px;font:inherit;background:var(--surface);color:var(--text);text-transform:none}.tabla-listado th .selector-buscable{margin-top:7px;width:100%;min-width:120px}.tabla-listado .orden-columna{background:none;border:0;color:inherit;font:inherit;font-weight:700;text-align:left;cursor:pointer;padding:0;min-height:28px}.tabla-listado td .centro-nombre{display:inline;text-align:left}.tabla-listado .fila-cuerpo{border:0;padding:12px}.tabla-listado .tabla-vacia td{padding:24px;text-align:center}

#cabecera-comun{display:contents}.brandrow .quien .pill{margin-left:6px}@media print{.acciones-documento,#cabecera-comun{display:none!important}}
.navegacion-cabecera{flex-wrap:wrap;min-width:0;max-width:100%}.brandrow>.navegacion-cabecera{flex-shrink:1}

.aviso-curso{background:#fff8df;border-left:4px solid #bc8200;color:#684600;padding:10px 12px;border-radius:5px;line-height:1.5}
