:root{
  --wave:#003D4F; --wave-h:#0A5166; --flamingo:#F2617A; --mist:#EDF1F3; --talc:#FFFFFF; --onyx:#000;
  --sapphire:#47A1AD; --turmeric:#CC850A; --jade:#6B9E78; --amethyst:#634F7D;
  --line:rgba(0,61,79,.12); --line-soft:rgba(0,61,79,.06); --pend:rgba(0,61,79,.14);
  --head:Bitter,Georgia,serif; --body:Inter,-apple-system,BlinkMacSystemFont,sans-serif;
  --safe-top:env(safe-area-inset-top,0px);
  color-scheme:light;
}
*{box-sizing:border-box;border-radius:0 !important}
.circle{border-radius:50% !important}
[hidden]{display:none !important}
html{scroll-padding-top:calc(46px + var(--safe-top) + 16px);scroll-behavior:smooth}
body{margin:0;background:var(--mist);color:var(--onyx);font-family:var(--body);font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased;
  padding-top:calc(46px + var(--safe-top));padding-bottom:env(safe-area-inset-bottom,0px)}
h1,h2,h3,h4{font-family:var(--head);font-weight:700;margin:0;line-height:1.2}
button{font:inherit;color:inherit;cursor:pointer;transition:all .15s}
a{color:var(--wave)}
:focus-visible{outline:2px solid var(--sapphire);outline-offset:2px}
::placeholder{color:rgba(0,0,0,.4)}

/* top bar */
.topbar{position:fixed;inset:0 0 auto;z-index:100;background:var(--wave);color:#fff;display:flex;align-items:center;gap:14px;
  height:calc(46px + var(--safe-top));padding:var(--safe-top) 20px 0}
.menu-btn{display:none;background:transparent;border:0;color:#fff;padding:0;width:44px;height:44px;align-items:center;justify-content:center;margin-left:-12px}
.tw-logo{display:flex;align-items:center}.tw-logo svg{height:22px;width:auto}
.vdiv{width:1px;height:20px;background:var(--mist)}
.appname{font-size:13px;font-weight:500;color:var(--mist)}
.ctx{font-size:12px;opacity:.6}
.prog{margin-left:auto;display:flex;align-items:center;gap:10px;font-size:12px;font-weight:500;white-space:nowrap}
.prog-track{width:120px;height:6px;background:rgba(255,255,255,.2)}
.prog-fill{height:100%;background:#fff;width:0;transition:width .5s ease}

/* sidebar */
.side{display:flex;flex-direction:column;position:fixed;top:calc(46px + var(--safe-top));bottom:0;left:0;width:176px;background:var(--talc);border-right:1px solid var(--line-soft);padding:16px 0;overflow-y:auto;z-index:50;transition:transform .25s ease}
.nav button{display:flex;align-items:center;gap:8px;width:100%;text-align:left;border:0;background:transparent;padding:10px 14px;font-size:12px;font-weight:500;transition:all .12s;min-height:40px}
.nav button:hover{background:var(--mist)}
.nav button[aria-current="true"]{color:var(--flamingo);background:rgba(242,97,122,.04);font-weight:600}
.nav svg{flex:none}
.nav .n{margin-left:auto;font-size:11px;font-weight:600}
.scrim{display:none}

/* main */
.main{margin-left:176px;padding:32px 40px 60px}
.inner{max-width:1180px;margin:0 auto}
section.block{margin-top:40px}
section.block:first-child{margin-top:0}
h1{font-size:24px}
h2{font-size:18px}
.lead{margin:8px 0 0}
.card{background:var(--talc);border:1px solid var(--line-soft);box-shadow:0 1px 3px rgba(0,61,79,.08);padding:28px;margin-bottom:20px;transition:all .15s}
.card:hover{box-shadow:0 2px 12px rgba(0,61,79,.06)}
.sec-head{margin-bottom:14px}
.sec-head p{margin:6px 0 0}
.btn{border:1px solid rgba(0,61,79,.15);background:var(--talc);padding:11px 18px;font-size:14px;font-weight:500;min-height:44px}
.btn:hover{border-color:var(--wave)}
.btn.primary{background:var(--wave);border-color:var(--wave);color:#fff;padding:12px 24px}
.btn.primary:hover{background:var(--wave-h);box-shadow:0 4px 12px rgba(0,61,79,.15)}
.btn[disabled]{opacity:.6;cursor:default}
.input{background:var(--talc);border:1px solid var(--line);padding:12px 16px;font:inherit;font-size:14px;color:var(--onyx);transition:all .15s;min-height:44px}
.input:focus{outline:none;border-color:var(--sapphire);box-shadow:0 0 0 3px rgba(71,161,173,.08)}

/* inicio */
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:18px}
.step{display:flex;gap:14px}
.step .num{flex:none;width:24px;height:24px;background:var(--wave);color:#fff;font-size:12px;font-weight:600;display:inline-flex;align-items:center;justify-content:center}
.step h3{font-size:16px;margin-bottom:4px}
.step p{margin:0}
.cta{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:22px;padding-top:20px;border-top:1px solid var(--mist)}
.cta .mine{font-size:12px;font-weight:500;margin-left:auto}
.notice{border-left:4px solid var(--turmeric);padding:14px 18px;background:var(--talc);border-top:1px solid var(--line-soft);border-right:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft)}
.notice b{font-weight:600}

/* strip */
.strip{display:grid;grid-template-columns:repeat(19,1fr);gap:3px;margin-top:14px}
.seg{height:36px;border:0;background:var(--pend);color:var(--onyx);font-size:11px;font-weight:600;padding:0}
.seg:hover{box-shadow:0 4px 12px rgba(0,61,79,.15)}
.seg[data-s="Aceptada"]{background:var(--jade);color:#fff}
.seg[data-s="Aceptada en parte"]{background:var(--turmeric);color:#fff}
.seg[data-s="Rechazada"]{background:var(--amethyst);color:#fff}
.legend{display:flex;flex-wrap:wrap;gap:6px 20px;margin-top:12px;font-size:12px;font-weight:500}
.legend i{display:inline-block;width:10px;height:10px;margin-right:6px}
.legend b{font-weight:700}

/* tabs + toolbar */
.tabs{display:flex;background:var(--talc);border-bottom:1px solid var(--mist);overflow-x:auto;scrollbar-width:none;margin-top:20px}
.tabs::-webkit-scrollbar{display:none}
.tab{flex:none;border:0;background:transparent;padding:12px 14px;font-size:12px;font-weight:500;border-bottom:3px solid transparent;display:flex;align-items:center;gap:8px;min-height:44px}
.tab[aria-selected="true"]{border-bottom-color:var(--flamingo);font-weight:600}
.tab .badge{background:var(--wave);color:#fff;min-width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;padding:0 6px}
.tab[aria-selected="false"] .badge{background:var(--pend);color:var(--onyx)}
.bar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:16px 0 20px}
.bar .search{flex:1 1 240px;min-width:0}
.bar select{max-width:100%}
.bar .nameinp{width:180px;max-width:100%}
.savestate{font-size:11px;font-weight:500;min-width:80px}

/* decision cards */
.dcard{border-left:4px solid var(--pend)}
.dcard[data-s="Aceptada"]{border-left-color:var(--jade)}
.dcard[data-s="Aceptada en parte"]{border-left-color:var(--turmeric)}
.dcard[data-s="Rechazada"]{border-left-color:var(--amethyst)}
.dcard.flash{animation:flash 1.4s ease}
@keyframes flash{0%,100%{box-shadow:0 1px 3px rgba(0,61,79,.08)}30%{box-shadow:0 0 0 3px var(--sapphire)}}
.head{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:12px}
.pill{padding:2px 10px;font-size:11px;font-weight:600;color:#fff;background:var(--wave)}
.pill.tema{background:var(--mist);color:var(--onyx)}
.pill.st{background:rgba(0,0,0,.5)}
.dcard[data-s="Aceptada"] .pill.st{background:var(--jade)}
.dcard[data-s="Aceptada en parte"] .pill.st{background:var(--turmeric)}
.dcard[data-s="Rechazada"] .pill.st{background:var(--amethyst)}
.blocks{margin-left:auto;font-size:11px;font-weight:500}
.dcard h3{font-size:20px;}
.one{margin:8px 0 0;}
.if{margin:14px 0 0;background:var(--mist);padding:10px 14px}
.if b{font-weight:600}
.meta{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:center;margin-top:14px;font-size:12px;font-weight:500}
.dep{border:1px solid rgba(0,61,79,.15);background:var(--talc);padding:2px 10px;font-size:11px;font-weight:600;margin-left:6px}
.dep:hover{border-color:var(--wave);color:var(--wave)}
details.more{margin-top:12px}
details.more summary{cursor:pointer;font-weight:600;font-size:12px;list-style:none;display:inline-flex;align-items:center;gap:8px;min-height:32px}
details.more summary::-webkit-details-marker{display:none}
details.more summary::before{content:"";width:7px;height:7px;border-right:2px solid var(--flamingo);border-bottom:2px solid var(--flamingo);transform:rotate(-45deg);transition:transform .2s}
details.more[open] summary::before{transform:rotate(45deg)}
.detail{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:18px 28px;margin-top:12px}
.detail section{min-width:0}
.detail h4{font-size:14px;margin:0 0 4px}
.detail p{margin:0;}
.detail .full{grid-column:1/-1}
.ans{margin-top:20px;padding-top:18px;border-top:1px solid var(--mist)}
.ans-label{font-size:12px;font-weight:500;margin-bottom:8px;display:block}
.opts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.opt{display:flex;align-items:center;gap:12px;text-align:left;background:var(--talc);border:1.5px solid rgba(0,61,79,.08);padding:14px 16px;font-size:14px;font-weight:500;min-height:44px}
.opt:hover{border-color:rgba(0,61,79,.3)}
.opt[aria-pressed="true"]{border-color:var(--wave);background:rgba(0,61,79,.02);box-shadow:0 0 0 1px var(--wave);font-weight:600}
.dot{flex:none;width:16px;height:16px;border:1.5px solid rgba(0,61,79,.3);display:inline-block}
.opt[aria-pressed="true"] .dot{background:var(--wave);border-color:var(--wave);box-shadow:inset 0 0 0 3px #fff}
.cmt{display:block;width:100%;margin-top:12px;min-height:72px;resize:vertical}
.talk{display:flex;align-items:center;gap:10px;margin-top:12px;font-size:12px;font-weight:500;min-height:32px;cursor:pointer}
.talk input{width:16px;height:16px;accent-color:var(--wave);margin:0}
.who{margin-top:8px;font-size:11px;font-weight:500}
.empty{padding:48px 0;text-align:center;color:rgba(0,0,0,.4)}

/* próximos pasos */
.tl{display:grid}
.tl-row{display:grid;grid-template-columns:170px 1fr;gap:20px;padding:16px 0;border-top:1px solid var(--mist)}
.tl-row:first-child{border-top:0;padding-top:0}
.tl-row:last-child{padding-bottom:0}
.tl-date{font-family:var(--head);font-weight:700;font-size:16px}
.tl-row p{margin:0;}
.tl-row h3{font-size:14px;font-family:var(--body);font-weight:600;margin-bottom:2px}
.two{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:20px}
.two .card{margin-bottom:0}
.two h3{font-size:16px;margin-bottom:6px}
.two p{margin:0;}
.two ul{margin:8px 0 0;padding-left:18px}

/* material */
.mat{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:20px}
.mat a.card{display:block;text-decoration:none;color:var(--onyx);margin-bottom:0}
.mat a.card:hover{border-color:var(--wave)}
.mat h3{font-size:16px}
.mat p{margin:6px 0 0;}
.mat .go{display:inline-flex;align-items:center;gap:6px;margin-top:12px;font-size:12px;font-weight:600;color:var(--wave)}
.tag{display:inline-block;background:var(--mist);padding:2px 10px;font-size:11px;font-weight:600;margin-bottom:8px}

dialog{border:1px solid var(--line);background:var(--talc);color:var(--onyx);width:min(720px,92vw);max-height:88vh;overflow:auto;padding:28px;box-shadow:0 4px 12px rgba(0,61,79,.15)}
dialog::backdrop{background:rgba(0,61,79,.45)}
dialog h2{font-size:18px}
dialog textarea{width:100%;min-height:260px;margin:12px 0;font:13px/1.5 ui-monospace,Menlo,Consolas,monospace}
.dlg-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}
.sumgrp{margin-top:18px}.sumgrp h3{font-size:14px;margin-bottom:6px}
.sumitem{display:block;width:100%;text-align:left;border:1px solid var(--line);background:var(--talc);padding:10px 14px;margin-top:6px;font-size:14px;min-height:44px}
.sumitem:hover{border-color:var(--wave)}
.sumitem b{font-weight:700}.sumitem small{display:block;font-size:12px;margin-top:2px}
.foot{margin-top:40px;font-size:12px}

@media (max-width:900px){
  .menu-btn{display:inline-flex}
  .appname,.vdiv,.ctx{display:none}
  .prog-track{width:70px}
  .side{transform:translateX(-100%);box-shadow:4px 0 20px rgba(0,0,0,.1)}
  body.drawer .side{transform:none}
  body.drawer .scrim{display:block;position:fixed;inset:calc(46px + var(--safe-top)) 0 0 0;background:rgba(0,0,0,.25);z-index:40}
  .main{margin-left:0;padding:20px 16px 48px}
  .card{padding:20px 16px}
  .input{font-size:16px}
  .steps{grid-template-columns:1fr;gap:18px}
  .opts{grid-template-columns:1fr}
  .tl-row{grid-template-columns:1fr;gap:4px}
  .blocks{margin-left:0;width:100%}
  .cta .mine{margin-left:0;width:100%}
  .strip{gap:2px}.seg{height:32px;font-size:9px}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* ===== Integración Thoughtworks (login, menú de usuario, administración) ===== */
.topbar::after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:4px;pointer-events:none;
  background:linear-gradient(to right,#F2617A 0 16.6%,#47A1AD 16.6% 33.2%,#CC850A 33.2% 49.8%,#6B9E78 49.8% 66.4%,#634F7D 66.4% 83%,#003D4F 83% 100%)}
body.sin-sesion .prog{display:none}
.prog{margin-left:auto}
.usermenu{position:relative;margin-left:auto}
body.rol-cliente .usermenu{margin-left:16px}  /* con el contador de avance a su izquierda */
.pos{font-size:11px;font-weight:500;color:rgba(0,0,0,.55)}
.usermenu[hidden]{display:none!important}
#userBtn{display:flex;align-items:center;gap:8px;background:transparent;border:1px solid rgba(255,255,255,.35);color:#fff;padding:3px 10px 3px 4px;min-height:32px;font-size:12px;font-weight:500}
#userBtn:hover{border-color:#fff}
.avatar{width:24px;height:24px;background:#fff;color:var(--wave);display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700}
.uname{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.umenu{position:absolute;right:0;top:calc(100% + 8px);min-width:260px;background:var(--talc);color:var(--onyx);border:1px solid var(--line);box-shadow:0 4px 12px rgba(0,61,79,.15);z-index:200}
.umenu[hidden]{display:none!important}
.uinfo{display:flex;flex-direction:column;gap:2px;padding:14px 16px;border-bottom:1px solid var(--mist)}
.uinfo b{font-weight:600}
.uinfo span{font-size:12px;word-break:break-all}
.uinfo .pill{align-self:flex-start;margin-top:6px}
.umenu button{display:block;width:100%;text-align:left;border:0;background:transparent;padding:11px 16px;font-size:13px;font-weight:500;min-height:42px}
.umenu button:hover{background:var(--mist)}
.nav-admin{margin-top:auto;border-top:1px solid var(--line-soft);padding-top:8px}
.nav-admin .nav-title{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:rgba(0,0,0,.5);padding:6px 14px 2px}
.nav-admin button{display:flex;align-items:center;gap:8px;width:100%;text-align:left;border:0;background:transparent;padding:9px 14px;font-size:12px;font-weight:500;min-height:38px}
.nav-admin button:hover{background:var(--mist)}
.nav-admin button[aria-current="true"]{color:var(--flamingo);background:rgba(242,97,122,.04);font-weight:600}
body.sin-sesion .menu-btn{display:none}
.solo-cliente,.solo-admin{display:none}
body.rol-cliente .solo-cliente{display:revert}
body.rol-cliente .prog.solo-cliente{display:flex}
body.rol-lectura .solo-admin{display:revert}
body.rol-lectura .ans,body.rol-lectura #stripCard,body.rol-lectura #tabs,body.rol-lectura #exportBtn,body.rol-lectura #sumBtn,body.rol-lectura #submitBtn,body.rol-lectura #okEnviado{display:none!important}

/* ingreso */
.auth-main{max-width:980px;margin:0 auto;padding:40px 24px 64px}
.auth-main h1{font-size:30px;margin-bottom:6px}
.sub{color:rgba(0,0,0,.6);margin:0 0 8px}
.acento{width:56px;height:3px;background:var(--flamingo);margin:16px 0 28px}
.form-card{max-width:440px}
label.lbl{display:block;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--wave);margin:16px 0 6px}
.form-card .input,.dlg-form .input{width:100%}
.acciones{display:flex;gap:10px;margin-top:20px;align-items:center;flex-wrap:wrap}
.link{background:none;border:0;color:var(--wave);text-decoration:underline;font-size:13px;padding:0}
.msg{margin-top:14px;font-size:13px;padding:10px 12px;border-left:3px solid var(--sapphire);background:#F4F8F9}
.msg.err{border-left-color:var(--flamingo);background:#FDF1F3}
.msg.ok{border-left-color:var(--jade);background:#F1F7F3}

/* material */
.mat .card.doc{display:flex;flex-direction:column;margin-bottom:0}
.mat .doc h3{margin-top:2px}
.mat .doc .meta2{font-size:12px;margin-top:8px;color:rgba(0,0,0,.6)}
.mat .doc .botones{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}
.btn.link-btn{display:inline-flex;align-items:center;text-decoration:none;color:var(--onyx)}
.btn.primary.link-btn{color:#fff}
.nav .nav-title{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:rgba(0,0,0,.5);padding:14px 14px 2px}
.nav a{display:flex;align-items:center;gap:8px;padding:9px 14px;font-size:12px;font-weight:500;min-height:38px;color:inherit;text-decoration:none}
.nav a:hover{background:var(--mist)}
.aviso-copia{border-left:4px solid var(--turmeric);padding:12px 16px;background:var(--talc);border-top:1px solid var(--line-soft);border-right:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);margin-bottom:16px}

/* administración */
.adm-head{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-start;justify-content:space-between;margin-bottom:16px}
.adm-head p{margin:6px 0 0}
.adm-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.tbl-wrap{background:var(--talc);border:1px solid var(--line-soft);box-shadow:0 1px 3px rgba(0,61,79,.08);overflow-x:auto}
table.tbl{border-collapse:collapse;width:100%;font-size:13px}
.tbl th{position:sticky;top:0;text-align:left;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--wave);background:var(--talc);border-bottom:2px solid var(--wave);padding:10px 12px;white-space:nowrap}
.tbl td{padding:10px 12px;border-bottom:1px solid var(--mist);vertical-align:top}
.tbl tr:hover td{background:#FAFCFC}
.tbl td.num,.tbl th.num{text-align:right;font-variant-numeric:tabular-nums}
.tbl .acc{display:flex;gap:6px;flex-wrap:wrap}
.tbl .acc button{border:1px solid var(--line);background:var(--talc);padding:3px 10px;font-size:12px;font-weight:500;min-height:30px}
.tbl .acc button:hover{border-color:var(--wave)}
.tbl .acc button.warn:hover{border-color:var(--flamingo);color:var(--flamingo)}
.tbl tr.inactivo td{color:rgba(0,0,0,.45)}
.chip{display:inline-block;padding:1px 8px;font-size:11px;font-weight:600;background:var(--mist);margin:0 4px 4px 0;white-space:nowrap}
.chip.jade{background:var(--jade);color:#fff}.chip.turmeric{background:var(--turmeric);color:#fff}.chip.amethyst{background:var(--amethyst);color:#fff}
.chip.wave{background:var(--wave);color:#fff}.chip.flamingo{background:var(--flamingo);color:#fff}.chip.gris{background:rgba(0,0,0,.45);color:#fff}
.filtros{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}
.filtros .input{min-width:0}
.dlg-form{display:grid;gap:4px}
.dlg-form .fila{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.dlg-form textarea.input{min-height:84px;resize:vertical;font-family:var(--body)}
.dlg-form .hint{font-size:11px;margin:2px 0 0;color:rgba(0,0,0,.55)}
.dlg-form .chk{display:flex;align-items:center;gap:8px;margin-top:14px;font-size:13px}
dialog.ancho{width:min(860px,94vw)}
.alerta{padding:12px 16px;border-left:4px solid var(--flamingo);background:#FDF1F3;margin-bottom:16px;font-size:13px}
.nota{padding:12px 16px;border-left:4px solid var(--sapphire);background:#F4F8F9;margin-bottom:16px;font-size:13px}
.cargando{padding:40px 0;text-align:center;color:rgba(0,0,0,.5)}
pre.json{white-space:pre-wrap;word-break:break-word;background:var(--mist);padding:10px 12px;font:12px/1.5 ui-monospace,Menlo,Consolas,monospace;margin:4px 0 0;max-height:260px;overflow:auto}

/* dashboard */
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin-bottom:20px}
.kpi{background:var(--talc);border:1px solid var(--line-soft);box-shadow:0 1px 3px rgba(0,61,79,.08);padding:16px}
.kpi b{display:block;font-family:var(--head);font-size:26px;line-height:1.1}
.kpi span{font-size:12px;color:rgba(0,0,0,.65)}
.kpi small{display:block;font-size:11px;margin-top:4px;color:rgba(0,0,0,.5)}
.stack{display:flex;height:14px;background:var(--pend);min-width:120px}
.stack i{display:block;height:100%}
.stack .a{background:var(--jade)}.stack .p{background:var(--turmeric)}.stack .r{background:var(--amethyst)}
.stack.grande{height:22px}
.leyenda{display:flex;flex-wrap:wrap;gap:6px 18px;margin:10px 0 0;font-size:12px;font-weight:500}
.leyenda i{display:inline-block;width:10px;height:10px;margin-right:6px}
h3.sec{font-size:16px;margin:28px 0 10px}
.matriz{border-collapse:separate;border-spacing:2px;font-size:11px}
.matriz th{font-weight:600;padding:2px 3px;white-space:nowrap}
.matriz th.fila{text-align:left;padding-right:12px;font-weight:500;font-size:12px}
.matriz td{padding:0}
.matriz .c{display:block;width:30px;height:26px;border:0;background:var(--pend);padding:0;position:relative}
.matriz .c[data-s="Aceptada"]{background:var(--jade)}
.matriz .c[data-s="Aceptada en parte"]{background:var(--turmeric)}
.matriz .c[data-s="Rechazada"]{background:var(--amethyst)}
.matriz .c.sinr{background:var(--pend)}
.matriz .c .h{position:absolute;right:2px;top:2px;width:7px;height:7px;background:#fff;border-radius:50%!important;box-shadow:0 0 0 1px rgba(0,0,0,.35)}
.matriz .c:hover{outline:2px solid var(--wave);z-index:2}
.matriz td.tot{font-size:12px;font-weight:600;padding-left:8px;white-space:nowrap}
.lista-sim{margin:0;padding:0;list-style:none}
.lista-sim li{padding:10px 0;border-top:1px solid var(--mist)}
.lista-sim li:first-child{border-top:0}
.lista-sim .q{font-size:12px;color:rgba(0,0,0,.6);margin-top:4px;white-space:pre-wrap}
@media (max-width:900px){.uname{display:none}body.rol-cliente .usermenu{margin-left:8px}.dlg-form .fila{grid-template-columns:1fr}.prog{margin-left:auto}.auth-main{padding:24px 16px}}

.tbl td:first-child,.tbl th:first-child{white-space:nowrap}
.refs{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:baseline;margin-top:10px;font-size:12.5px}.refs>span{color:rgba(0,0,0,.6);font-weight:600}.refs a{color:var(--wave);text-decoration:underline}
.busca-fab{position:fixed;right:22px;bottom:22px;z-index:40;background:var(--wave);color:#fff;border:0;padding:12px 18px;font:600 14px var(--body);box-shadow:0 6px 18px rgba(0,0,0,.18);cursor:pointer}
.busca-fab:hover{background:var(--wave-h)}
.busca{position:fixed;right:22px;bottom:76px;z-index:41;width:min(460px,calc(100vw - 32px));height:min(620px,calc(100vh - 120px));display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);box-shadow:0 10px 32px rgba(0,0,0,.2)}
.busca[hidden]{display:none}
.busca-cab{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;background:var(--wave);color:#fff}.busca-cab .link{color:#fff}
.busca-aviso{margin:0;padding:10px 14px;font-size:12px;line-height:1.45;background:#FFF7E6;border-bottom:1px solid var(--line)}
.busca-saldo{display:flex;flex-direction:column;gap:4px;padding:8px 14px;font-size:12px;border-bottom:1px solid var(--line-soft)}
.busca-saldo .barra{height:5px;background:var(--mist)}.busca-saldo .barra i{display:block;height:100%;background:var(--jade)}
.busca-log{flex:1;overflow:auto;padding:12px 14px;display:flex;flex-direction:column;gap:10px}
.busca-msg{font-size:13px;line-height:1.5;padding:9px 11px;max-width:92%}.busca-msg p{margin:0}.busca-msg p+p,.busca-msg ul+p,.busca-msg p+ul{margin-top:6px}.busca-msg ul{margin:4px 0 0 16px;padding:0}.busca-msg li{margin:2px 0}
.busca-msg.yo{align-self:flex-end;background:var(--wave);color:#fff}
.busca-msg.bot{align-self:flex-start;background:var(--mist)}.busca-msg.bot a{color:var(--wave)}.busca-msg.err{background:#FDF1F3}.busca-msg.cargando{color:rgba(0,0,0,.55)}
.busca-sub{margin-top:8px!important;font-weight:600;font-size:12px}.busca-costo{margin-top:6px!important;font-size:11px;color:rgba(0,0,0,.5)}
.busca-form{display:flex;gap:8px;padding:10px 14px;border-top:1px solid var(--line)}.busca-form .input{flex:1}
@media print{.busca,.busca-fab{display:none!important}}

