
/* Layout: una sola columna tipo app de celular, encabezado con resumen, pestañas fijas abajo, hoja deslizable para agregar/editar */
/* Colores de Ángulo Cero: siempre en tonos claros, rojo como color principal */
:root{color-scheme:light;
  --bg:#F0EDE7; --paper:#FFFFFF; --ink:#1A1613; --muted:#6B6459; --line:#E4DFD6;
  --accent:#9B2B2B; --accent-soft:#FBEAEA; --on-accent:#FFFFFF; --deep:#5C1A1A;
  --ok:#4B5670; --ok-soft:#E4DFD6; --warn:#6B6459; --warn-soft:#E4DFD6; --bad:#9B2B2B; --bad-soft:#FBEAEA;
  --slate:#758AAB; --steel:#4B5670; --dot-fg:#FFFFFF; --wknd:#F7F4EF; --sand:#E4DFD6; --sem-r:#9B2B2B; --sem-o:#C46A1E; --sem-g:#3E7B4F;
  --shadow:0 1px 2px rgba(26,22,19,.05),0 6px 18px rgba(26,22,19,.05);
  --f-display:"Bricolage Grotesque",ui-sans-serif,system-ui,sans-serif;
  --f-body:"Figtree",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --f-mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
  --f-num:"Barlow Condensed","Arial Narrow",ui-sans-serif,system-ui,sans-serif;
}
*{box-sizing:border-box}
html,body{background:var(--bg)}
body{color:var(--ink);font-family:var(--f-body);font-size:15px;line-height:1.45;padding-inline:16px;padding-block:0 120px}
.wrap{max-width:680px;margin:0 auto}
header{padding-block:22px 10px;display:grid;gap:14px}
.brand{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}
h1{color:var(--ink);line-height:1;font-family:var(--f-display);font-weight:800;font-size:1.7rem;letter-spacing:-.02em;margin:0;text-wrap:balance}
.lockup{display:grid;gap:2px}
.sig{font-family:"Instrument Serif",Georgia,"Times New Roman",serif;font-style:italic;font-size:1.55rem;line-height:.9;color:var(--accent);margin-left:2px}
.dotmark{color:var(--accent)}
.date{margin-top:6px;font-family:var(--f-mono);font-size:.78rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.stat{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:10px 12px;min-width:0}
.stat b{display:block;font-family:var(--f-num);font-weight:700;font-size:1.7rem;line-height:1.1;letter-spacing:.01em;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.stat span{font-size:.75rem;color:var(--muted)}
.stat.bad b{color:var(--deep)} .stat.money b{color:var(--accent)}
h2{font-family:var(--f-display);font-weight:600;font-size:1.05rem;margin:22px 0 8px;display:flex;align-items:center;gap:8px}
h2 .count{font-family:var(--f-mono);font-size:.72rem;color:var(--muted);font-weight:500}
.hint{color:var(--muted);font-size:.86rem;margin:0 0 8px}
.list{display:grid;gap:8px}
.card{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:12px 14px;display:grid;gap:8px;box-shadow:var(--shadow);border-left-width:4px}
.card.t-cobro,.card.t-factura{border-left-color:var(--steel)}
.card.t-espera{border-left-color:var(--muted)}
.card.t-prospecto{border-left-color:var(--accent)}
.card.t-grabacion{border-left-color:var(--slate)}
.card.late{border-left-color:var(--deep)}
.card.done{opacity:.6}
.top{display:flex;gap:10px;align-items:flex-start;justify-content:space-between}
.title{font-weight:600;cursor:pointer;min-width:0;overflow-wrap:anywhere}
.title:hover{text-decoration:underline}
.amt{font-family:var(--f-num);font-weight:700;font-size:1.35rem;line-height:1;letter-spacing:.02em;white-space:nowrap;color:var(--ink)}
.amt.r{color:var(--sem-r)}.amt.o{color:var(--sem-o)}.amt.g{color:var(--sem-g)}
sup.cents{font-size:.5em;vertical-align:.75em;line-height:0;margin-left:1px;letter-spacing:0}
.meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:.78rem;color:var(--muted)}
.pill{border-radius:999px;padding:2px 8px;background:var(--bg);border:1px solid var(--line);font-size:.72rem;font-weight:600;white-space:nowrap}
.pill.bad{background:var(--bad-soft);color:var(--bad);border-color:transparent}
.pill.warn{background:var(--warn-soft);color:var(--warn);border-color:transparent}
.pill.ok{background:var(--ok-soft);color:var(--ok);border-color:transparent}
.pill.acc{background:var(--accent-soft);color:var(--accent);border-color:transparent}
.note{font-size:.85rem;color:var(--muted);white-space:pre-wrap;overflow-wrap:anywhere}
.actions{display:flex;flex-wrap:wrap;gap:6px}
button{font:inherit;cursor:pointer}
.btn{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:10px;padding:7px 12px;font-size:.84rem;font-weight:600}
.btn.primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}
.btn.ok{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}
.btn.danger{color:var(--bad);border-color:var(--bad)}
.btn:focus-visible,.tab:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.confirm{background:var(--ok-soft);border-radius:10px;padding:8px 10px;display:grid;gap:8px;font-size:.86rem}
.empty{border:1px dashed var(--line);border-radius:14px;padding:16px;color:var(--muted);font-size:.9rem;text-align:center}
nav.tabs{position:fixed;left:0;right:0;bottom:0;background:var(--paper);border-top:1px solid var(--line);display:flex;justify-content:center;padding:6px 6px calc(6px + env(safe-area-inset-bottom,0px));z-index:5}
nav.tabs .in{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));width:100%;max-width:680px}
.tab{border:0;background:none;color:var(--muted);font-size:.66rem;font-weight:600;padding:6px 2px;border-radius:10px;display:grid;justify-items:center;gap:2px;position:relative}
.tab svg{width:22px;height:22px}
.tab[aria-selected="true"]{color:var(--accent);background:var(--accent-soft)}
.tab .dot{position:absolute;top:3px;right:18%;min-width:16px;height:16px;border-radius:8px;background:#9B2B2B;color:var(--dot-fg);font-size:.62rem;display:grid;place-items:center;padding:0 4px}
.fab{position:fixed;right:16px;bottom:calc(76px + env(safe-area-inset-bottom,0px));z-index:6;border:0;background:var(--accent);color:var(--on-accent);border-radius:999px;padding:13px 18px;font-weight:700;box-shadow:0 8px 20px rgba(92,26,26,.3);font-size:.95rem}
.sheet-bg{position:fixed;inset:0;background:rgba(13,13,13,.5);z-index:10;display:flex;align-items:flex-end;justify-content:center}
.sheet{background:var(--paper);width:100%;max-width:680px;max-height:90%;overflow:auto;border-radius:18px 18px 0 0;padding:18px 16px calc(18px + env(safe-area-inset-bottom,0px));display:grid;gap:12px}
.sheet h3{font-family:var(--f-display);margin:0;font-size:1.2rem}
label{display:grid;gap:4px;font-size:.8rem;font-weight:600;color:var(--muted)}
input,select,textarea{font:inherit;font-size:16px;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:9px 10px;width:100%}
textarea{min-height:70px;resize:vertical}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.seg{display:flex;flex-wrap:wrap;gap:6px}
.seg button{border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:999px;padding:6px 11px;font-size:.82rem;font-weight:600}
.seg button[aria-pressed="true"]{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}
.client{display:grid;gap:6px}
.client dl{display:grid;grid-template-columns:auto 1fr;gap:3px 10px;margin:0;font-size:.85rem}
.client dt{color:var(--muted)} .client dd{margin:0;overflow-wrap:anywhere}
.stage-h{font-family:var(--f-mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:16px 0 6px}
details summary{cursor:pointer;color:var(--muted);font-size:.86rem;margin-top:16px}
.toast{position:fixed;left:50%;transform:translateX(-50%);top:calc(14px + env(safe-area-inset-top,0px));max-width:calc(100% - 32px);box-shadow:0 8px 24px rgba(26,22,19,.25);background:var(--ink);color:var(--bg);padding:9px 14px;border-radius:10px;font-size:.86rem;z-index:20}
.askbtn{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:999px;padding:6px 12px;font-weight:700;font-size:.82rem;display:inline-flex;gap:6px;align-items:center}
.askbtn svg{width:16px;height:16px;color:var(--accent)}
.chat{display:grid;gap:8px;max-height:52vh;overflow:auto;padding:2px}
.msg{padding:9px 12px;border-radius:14px;max-width:88%;white-space:pre-wrap;overflow-wrap:anywhere;font-size:.92rem}
.msg.me{justify-self:end;background:var(--accent);color:var(--on-accent);border-bottom-right-radius:4px}
.msg.ai{justify-self:start;background:var(--bg);border:1px solid var(--line);border-bottom-left-radius:4px}
.msg.sys{justify-self:center;color:var(--muted);font-size:.8rem;background:none;padding:2px}
.chatbar{display:flex;gap:8px;align-items:flex-end}
.chatbar textarea{min-height:44px;max-height:140px}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.chips button{border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:999px;padding:5px 10px;font-size:.8rem}
.cal-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:18px 0 8px}
.cal-head h2{margin:0;text-transform:capitalize}
.cal-nav{display:flex;gap:6px}
.cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:8px}
.cal .wd{font-family:var(--f-mono);font-size:.62rem;color:var(--muted);text-align:center;padding:2px 0 6px;text-transform:uppercase;letter-spacing:.06em}
.day{border:0;background:transparent;border-radius:10px;min-height:48px;padding:4px 2px;display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--ink);min-width:0;cursor:pointer}
.day:hover{background:var(--bg)}
.day.out{opacity:.35}
.day .n{font-family:var(--f-num);font-size:1.02rem;font-weight:600;width:26px;height:26px;display:grid;place-items:center;border-radius:999px;font-variant-numeric:tabular-nums}
.day.today .n{background:var(--accent);color:var(--on-accent)}
.day.sel{background:var(--accent-soft)}
.day.late .n{box-shadow:inset 0 0 0 1.5px var(--deep)}
.day.today.late .n{box-shadow:none}
.day:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
.dots{display:flex;gap:3px;justify-content:center;min-height:5px}
.dt{width:5px;height:5px;border-radius:50%;background:var(--ink)}
.dt.grabacion{background:var(--steel)}.dt.cobro,.dt.factura{background:var(--accent)}.dt.prospecto{background:var(--deep)}
.dt.espera{background:var(--muted);opacity:.6}.dt.personal{background:transparent;box-shadow:inset 0 0 0 1.2px var(--accent)}.dt.gcal{background:var(--slate)}.dt.done{opacity:.3}
.legend{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:.7rem;color:var(--muted);margin-top:8px}
.legend span{display:inline-flex;align-items:center;gap:5px}
.day.out{background:transparent;opacity:.5}
.day .n{font-size:.8rem;font-weight:700;width:24px;height:24px;display:grid;place-items:center;border-radius:999px;font-variant-numeric:tabular-nums}
.day.today .n{background:var(--accent);color:var(--on-accent)}
.day.today{border-color:var(--accent)}
.day.sel{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:var(--accent-soft)}
.day.late{border-color:var(--deep)}
.day:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.marks{display:flex;flex-wrap:wrap;gap:3px;align-items:center}
.mk{width:8px;height:8px;border-radius:2px;background:var(--ink)}
.mk.cobro,.mk.factura{background:var(--steel)}
.mk.prospecto{background:var(--accent)}
.mk.grabacion{background:var(--slate)}
.mk.espera{background:var(--muted)}
.mk.done{opacity:.35}
.mk.gcal{border-radius:50%;background:var(--slate)}
.gev{display:flex;gap:10px;align-items:baseline;background:var(--paper);border:1px solid var(--line);border-left:4px solid var(--slate);border-radius:12px;padding:9px 12px;font-size:.9rem}
.gev b{font-family:var(--f-mono);font-weight:500;font-size:.78rem;color:var(--muted);white-space:nowrap;min-width:92px}
.gev a{color:var(--ink);text-decoration:none;overflow-wrap:anywhere}
.gev a:hover{text-decoration:underline}
.gnote{font-size:.8rem;color:var(--muted);margin:6px 0 0}
.more{font-size:.62rem;color:var(--muted);font-weight:700}
.legend{display:flex;flex-wrap:wrap;gap:10px;font-size:.74rem;color:var(--muted);margin-top:8px}
.legend span{display:inline-flex;align-items:center;gap:5px}
.msgbox{display:grid;gap:8px;background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:10px}
.msgbox textarea{background:var(--paper);min-height:96px}
.sub{margin-top:14px}
.tblwrap{overflow-x:auto;background:var(--paper);border:1px solid var(--line);border-radius:12px;margin-top:8px}
.tbl{width:100%;border-collapse:collapse;font-size:.86rem;font-variant-numeric:tabular-nums}
.tbl th,.tbl td{padding:8px 10px;text-align:left;border-bottom:1px solid var(--line);white-space:nowrap}
.tbl th{font-family:var(--f-mono);font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:500}
.tbl td.num,.tbl th.num{text-align:right}
.tbl tr:last-child td{border-bottom:0}
.tbl tfoot td{font-weight:700}
.card.t-cuenta{border-left-color:var(--accent)}
.card.t-cuenta.urg{border-left-color:var(--deep);background:var(--accent-soft)}
.card.t-personal{border-left-color:var(--ink)}
.mk.personal{background:transparent;box-shadow:inset 0 0 0 2px var(--accent)}
.daybox{display:grid;gap:6px}
.blk{display:flex;align-items:center;justify-content:space-between;gap:8px;background:var(--bg);border-radius:8px;padding:6px 10px;font-size:.86rem}
.blk b{font-family:var(--f-mono);font-weight:500;font-size:.8rem}
.xbtn{border:0;background:none;color:var(--muted);font-size:1rem;padding:2px 6px;border-radius:6px}
.exp-head{display:grid;gap:4px}
.exp-info{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:.84rem;color:var(--muted)}
.exp-info b{color:var(--ink);font-weight:600}
.doc{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:10px 12px;display:grid;gap:8px}
.doc .top{align-items:center}
.doc .dt-title{font-weight:600;overflow-wrap:anywhere;min-width:0}
.revbox{background:var(--bg);border-radius:10px;padding:10px;display:grid;gap:8px}
.revout{white-space:pre-wrap;font-size:.88rem;overflow-wrap:anywhere;max-height:50vh;overflow:auto}
.gen-out{min-height:260px;font-size:.9rem;line-height:1.5}
.sheet.wide{max-height:94%}
.filebtn{position:relative;overflow:hidden}
.filebtn input{position:absolute;inset:0;opacity:0;cursor:pointer}
.busy{opacity:.6;pointer-events:none}
a.btn{text-decoration:none;display:inline-flex;align-items:center}
.hbtns{display:flex;gap:6px;align-items:center}
.ibtn{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:999px;width:36px;height:36px;display:grid;place-items:center;padding:0}
.ibtn svg{width:17px;height:17px}
.av{width:22px;height:22px;border-radius:50%;background:var(--c,var(--steel));color:#FFFFFF;font-size:.6rem;font-weight:700;display:inline-grid;place-items:center;letter-spacing:.02em;flex:none;cursor:pointer;font-family:var(--f-body)}
.clip{display:inline-flex;align-items:center;gap:5px;font-size:.74rem;font-weight:600;color:var(--ink)}
.pill.so{background:#F7E6D6;color:var(--sem-o);border-color:transparent}
.pill.sg{background:#E1EEE4;color:var(--sem-g);border-color:transparent}
.pill.urg{background:var(--accent);color:#FFFFFF;border-color:transparent}
.card[data-card] .top{align-items:center;gap:8px}
.card[data-card] .top>.title{flex:1;min-width:0}
.card[data-card] .top>.amt{margin-left:auto;padding:2px 0 0}
.card[data-card] .top>.dots3{margin-right:-6px}
.dots3{border:0;background:none;color:var(--muted);font-size:1.1rem;line-height:1;padding:2px 6px;border-radius:8px;cursor:pointer;flex:none}
.dots3:hover{background:var(--bg)}
.card.t-nota{border-left-color:var(--sand);background:var(--wknd)}
.swrap{position:relative;border-radius:14px}
.swbg{position:absolute;inset:0;border-radius:14px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;font-weight:700;font-size:.85rem;opacity:0;transition:opacity .1s}
.swbg .l{color:#FFFFFF}.swbg .r{color:var(--muted)}
.swrap.sw-r .swbg{opacity:1;background:var(--sem-g)}.swrap.sw-r .swbg .r{visibility:hidden}
.swrap.sw-l .swbg{opacity:1;background:var(--sand)}.swrap.sw-l .swbg .l{visibility:hidden}
.swrap.sw-r.ready .swbg{background:#2F6A40}.swrap.sw-l.ready .swbg{background:#D6CFC2}
.swrap .card{position:relative;touch-action:pan-y}
.card.snap{transition:transform .2s ease}
.card.leaving{transition:transform .3s ease,opacity .3s ease;transform:scale(.97);opacity:0}
.toast{display:flex;gap:12px;align-items:center}
.toast button{border:0;background:none;color:#F7B26A;font-weight:700;font-size:.86rem;padding:0;cursor:pointer}
.panel{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:14px;margin-top:14px}
.panel h4{margin:0 0 10px;font-family:var(--f-mono);font-size:.66rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);display:flex;justify-content:space-between;align-items:center;gap:8px}
.ring{position:relative;flex:none}
.ring-c{position:absolute;inset:0;display:grid;place-items:center;text-align:center;line-height:1}
.ring-c b{font-family:var(--f-num);font-weight:700;font-size:1.15rem}
.ring-c small{display:block;font-size:.62rem;color:var(--muted);margin-top:2px}
@keyframes ringIn{from{stroke-dashoffset:var(--full)}}
@keyframes grow{from{transform:scaleX(0)}}
@keyframes growY{from{transform:scaleY(0)}}
@keyframes pop{0%{transform:scale(.4);opacity:0}100%{transform:scale(1);opacity:1}}
circle.anim{animation:ringIn 1s cubic-bezier(.2,.8,.2,1)}
.hoyp{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.hp-box{display:flex;gap:12px;align-items:center;min-width:0}
.hp-t{display:grid;gap:2px;min-width:0}
.hp-t .k{font-family:var(--f-mono);font-size:.62rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.hp-t .v{font-size:.9rem;font-weight:600}
.flame{display:flex;align-items:baseline;gap:4px}
.flame b{font-family:var(--f-num);font-size:2.1rem;font-weight:700;line-height:1;color:var(--accent)}
.flame svg{width:18px;height:18px;color:var(--accent);align-self:center}
.wdots{display:flex;gap:5px;margin-top:6px}
.wd2{display:grid;justify-items:center;gap:3px;font-size:.55rem;color:var(--muted);font-family:var(--f-mono)}
.wd2 i{width:10px;height:10px;border-radius:50%;background:var(--line)}
.wd2.ok i{background:var(--accent)}.wd2.ok i.anim{animation:pop .4s ease-out backwards}
.wd2.fail i{background:transparent;box-shadow:inset 0 0 0 1.5px var(--muted)}
.wd2.hoy i{box-shadow:0 0 0 2px var(--paper),0 0 0 3.5px var(--accent)}
.wd2.fut i{background:var(--bg)}
.metap{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.metap .side{display:grid;gap:6px;flex:1;min-width:150px}
.kv{display:flex;justify-content:space-between;gap:10px;font-size:.84rem;border-bottom:1px dashed var(--line);padding-bottom:4px}
.kv span{color:var(--muted)}.kv b{font-family:var(--f-num);font-size:1.05rem;font-weight:600}
.pbar{height:8px;border-radius:999px;background:var(--bg);overflow:hidden;display:flex;margin-top:12px}
.pbar i{display:block;height:100%;transform-origin:left}
.pbar i.anim{animation:grow .9s cubic-bezier(.2,.8,.2,1)}
.plegend{display:flex;gap:12px;font-size:.7rem;color:var(--muted);margin-top:6px;flex-wrap:wrap}
.plegend span{display:inline-flex;align-items:center;gap:5px}.plegend i{width:8px;height:8px;border-radius:2px;display:inline-block}
.cols{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;align-items:end;height:118px}
.colw{display:grid;grid-template-rows:auto 1fr auto;justify-items:center;height:100%;gap:4px;min-width:0}
.colv{font-family:var(--f-num);font-size:.72rem;color:var(--muted);white-space:nowrap}
.colb{width:16px;border-radius:6px 6px 3px 3px;background:var(--sand);align-self:end;transform-origin:bottom}
.colb.cur{background:var(--accent)}.colb.anim{animation:growY .9s cubic-bezier(.2,.8,.2,1)}
.coll{font-family:var(--f-mono);font-size:.6rem;text-transform:uppercase;color:var(--muted)}
.rank{display:grid;gap:10px}
.rk{display:grid;grid-template-columns:auto 1fr auto;gap:8px 10px;align-items:center}
.rk .nm{font-size:.84rem;font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rk .am{font-family:var(--f-num);font-weight:600;font-size:.95rem;white-space:nowrap}
.rk .tr{grid-column:2/4;height:4px;border-radius:999px;background:var(--bg);overflow:hidden;display:flex;align-items:center;gap:8px}
.rk .tr i{display:block;height:100%;background:var(--steel);border-radius:999px;transform-origin:left}.rk .tr i.anim{animation:grow .9s ease-out}
.rk .pp{grid-column:2/4;font-size:.68rem}
.funnel{display:grid;gap:6px}
.fn{display:grid;grid-template-columns:110px 1fr 28px;gap:10px;align-items:center;font-size:.8rem}
.fn .lb{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fn .tk{height:22px;display:flex;justify-content:center}
.fn .tk i{display:block;height:100%;border-radius:6px;transform-origin:center}.fn .tk i.anim{animation:grow .8s ease-out}
.fn .ct{font-family:var(--f-num);font-weight:700;font-size:1rem;text-align:right}
.batt{display:inline-flex;align-items:center;gap:2px}
.batt .bd{width:46px;height:18px;border:1.5px solid var(--ink);border-radius:5px;padding:2px;display:flex}
.batt .bd i{display:block;height:100%;border-radius:2px;transform-origin:left}.batt .bd i.anim{animation:grow .9s ease-out}
.batt .cap{width:3px;height:8px;background:var(--ink);border-radius:0 2px 2px 0}
.batt.g i{background:var(--sem-g)}.batt.o i{background:var(--sem-o)}.batt.r i{background:var(--sem-r)}
.battl{font-family:var(--f-num);font-weight:600;font-size:.95rem}
.segs{display:flex;gap:6px;flex-wrap:wrap}
.seg1{width:34px;height:42px;border-radius:8px;background:var(--bg);box-shadow:inset 0 0 0 1.5px var(--line);display:grid;place-items:center;color:#FFFFFF}
.seg1.on{background:var(--accent);box-shadow:none}.seg1.on.anim{animation:pop .45s ease-out backwards}
.seg1 svg{width:16px;height:16px}
.semp .days7{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;align-items:end;height:84px;margin-top:4px}
.semp .d7{display:grid;grid-template-rows:1fr auto;justify-items:center;height:100%;gap:4px}
.semp .d7 i{width:100%;max-width:26px;border-radius:6px;background:var(--sand);align-self:end;transform-origin:bottom;min-height:3px}
.semp .d7.best i{background:var(--accent)}.semp .d7 i.anim{animation:growY .8s ease-out}
.semp .d7 span{font-family:var(--f-mono);font-size:.58rem;color:var(--muted)}
.chipsrow{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.mchip{background:var(--bg);border-radius:10px;padding:7px 10px;display:grid;gap:1px;min-width:78px}
.mchip b{font-family:var(--f-num);font-size:1.15rem;font-weight:700}.mchip span{font-size:.66rem;color:var(--muted)}
.semmsg{margin:12px 0 0;font-size:.9rem}
.allgood{display:grid;justify-items:center;text-align:center;gap:6px;padding:28px 16px;margin-top:14px;background:var(--paper);border:1px solid var(--line);border-radius:16px}
.allgood svg{width:56px;height:56px}
.allgood b{font-family:var(--f-display);font-size:1.2rem}
.allgood span{color:var(--muted);font-size:.88rem}
.fbar{display:flex;align-items:center;justify-content:space-between;gap:8px;background:var(--ink);color:var(--paper);border-radius:12px;padding:8px 12px;margin-top:10px;font-size:.84rem}
.fbar button{border:0;background:none;color:var(--paper);font-weight:700;cursor:pointer}
.menu{display:grid;gap:4px}
.ftop h3{margin:0}.fbtns{display:flex;gap:6px;align-items:center}
.ctipo{font-size:.8rem;padding:6px 10px;white-space:nowrap}
.tgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.tgrid button{border:1px solid var(--line);background:var(--paper);border-radius:3px;padding:18px 12px;font:600 .95rem var(--f-body);color:var(--ink);cursor:pointer;text-align:left}
.tgrid button:hover{border-color:var(--accent);color:var(--accent)}
.menu button{border:0;background:var(--bg);border-radius:10px;padding:12px;text-align:left;font-weight:600;font-size:.92rem;color:var(--ink);cursor:pointer}
.menu button.danger{color:var(--bad)}
.sres{display:grid;gap:6px;max-height:55vh;overflow:auto}
.sres button{border:1px solid var(--line);background:var(--paper);border-radius:10px;padding:10px 12px;text-align:left;cursor:pointer;display:grid;gap:2px;color:var(--ink)}
.sres button small{color:var(--muted);font-size:.74rem}
.ckrow{display:flex;align-items:center;gap:8px;font-size:.88rem;font-weight:600;color:var(--ink)}
.ckrow input{width:18px;height:18px}
@media (max-width:480px){.hoyp{grid-template-columns:1fr}.fn{grid-template-columns:92px 1fr 24px}}
@media (prefers-reduced-motion:reduce){.anim{animation:none!important}.card.snap,.card.leaving{transition:none}}
.mcal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--paper)}
.mcal .wdh{padding:8px 4px;text-align:center;font-family:var(--f-mono);font-size:.62rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--line);background:var(--wknd)}
.mc{min-height:132px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:6px;display:flex;flex-direction:column;gap:5px;min-width:0;cursor:pointer;transition:background .15s}
.mc.c7{border-right:0}.mc.lastrow{border-bottom:0}
.mc.out{background:var(--wknd)}.mc.out .mn{opacity:.4}
.mc.wk{background:linear-gradient(var(--wknd),var(--wknd))}
.mc.sel{box-shadow:inset 0 0 0 2px var(--accent)}
.mc.drop{background:var(--accent-soft)}
.mn{align-self:flex-end;font-family:var(--f-num);font-weight:600;font-size:.98rem;min-width:26px;height:26px;display:grid;place-items:center;border-radius:50%}
.mc.today .mn{background:var(--accent);color:#FFFFFF}
.ccard{border:1px solid var(--line);border-left:3px solid var(--tc,var(--ink));background:var(--paper);border-radius:9px;padding:6px 7px;display:grid;gap:4px;text-align:left;font:inherit;color:var(--ink);cursor:pointer;min-width:0;width:100%;text-decoration:none}
.ccard:hover{border-color:var(--accent);border-left-color:var(--tc,var(--ink))}
.ccard .ct{font-size:.74rem;font-weight:600;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.ccard .cm{display:flex;align-items:center;gap:5px;flex-wrap:wrap;font-size:.64rem;color:var(--muted);min-width:0}
.ccard .pill{font-size:.6rem;padding:1px 6px}
.ccard .av{width:16px;height:16px;font-size:.48rem}
.ccard .camt{font-family:var(--f-num);font-weight:600;font-size:.8rem;color:var(--ink)}
.ccard.done{opacity:.55}.ccard.done .ct{text-decoration:line-through}
.ccard.gc{background:var(--wknd)}
.ccard[data-gdrag]{cursor:grab;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.ccard[data-drag]{cursor:grab;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.ccard.dragging{opacity:.35}
.ccard.insb{box-shadow:0 -3px 0 0 var(--accent)}
.ccard.insa{box-shadow:0 3px 0 0 var(--accent)}
[data-drag],[data-gdrag]{-webkit-touch-callout:none}
@media (hover:none){[data-drag],[data-gdrag]{-webkit-user-select:none;user-select:none}}
.wkd.drop{border:2px solid var(--accent);background:var(--accent-soft)}
.wkd.drop .wkh{color:var(--accent)}
.ccard.ghost{position:fixed;z-index:50;pointer-events:none;box-shadow:0 12px 28px rgba(26,22,19,.28);transform:rotate(-2deg);opacity:.95;margin:0}
.lifted{transform:scale(1.03);box-shadow:0 8px 22px rgba(0,0,0,.14);transition:transform .15s,box-shadow .15s;border-radius:14px}
[data-kdrag]{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}
body.dragmode,body.dragmode *{cursor:grabbing!important;-webkit-user-select:none;user-select:none}
.wkd.drop{background:var(--accent-soft)}
.cmore{font-size:.66rem;font-weight:700;color:var(--muted);background:none;border:0;text-align:left;padding:2px 4px;cursor:pointer;border-radius:6px}
.cmore:hover{background:var(--bg)}
.wkv{display:grid;gap:8px}
.wkd{display:grid;grid-template-columns:50px 1fr;gap:10px;background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:10px;cursor:pointer}
.wkd.today{border-color:var(--accent)}.wkd.sel{box-shadow:inset 0 0 0 1.5px var(--accent)}.wkd.wkend{background:var(--wknd)}
.wkh{display:grid;justify-items:center;align-content:start;gap:2px}
.wkh span{font-family:var(--f-mono);font-size:.58rem;text-transform:uppercase;color:var(--muted);letter-spacing:.06em}
.wkh b{font-family:var(--f-num);font-size:1.35rem;font-weight:600;width:38px;height:38px;display:grid;place-items:center;border-radius:50%}
.wkd.today .wkh b{background:var(--accent);color:#FFFFFF}
.wkc{display:grid;gap:6px;min-width:0;align-content:start}
.wkc .ccard .ct{font-size:.86rem}.wkc .ccard .cm{font-size:.7rem}
.libre{font-size:.8rem;color:var(--muted);align-self:center;padding:6px 0}
.legend2{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:.7rem;color:var(--muted);margin-top:10px}
.legend2 span{display:inline-flex;align-items:center;gap:6px}.legend2 i{width:3px;height:12px;border-radius:2px;background:var(--tc)}
@media (min-width:760px){
  body{padding-inline:28px}
  .wrap{max-width:1320px}
  .list{grid-template-columns:repeat(auto-fill,minmax(330px,1fr));align-items:start}
  .stats{grid-template-columns:repeat(3,minmax(0,220px))}
  .dgrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}
  .dgrid>.panel,.dgrid>div>.panel:first-child{margin-top:14px}
  .tblwrap{margin-top:14px}
  .sheet-bg{align-items:center;padding:24px}
  .sheet{border-radius:18px;max-width:720px;max-height:88vh}
  .sheet.wide{max-width:860px}
  nav.tabs .in{max-width:760px}
  .fab{right:max(28px,calc((100vw - 1320px)/2 + 28px))}
}
@media (min-width:1024px){
  .cols2{display:grid;grid-template-columns:minmax(300px,380px) minmax(0,1fr);gap:28px;align-items:start}
  .colL{position:sticky;top:calc(12px + env(safe-area-inset-top,0px))}
  .colL .hoyp{grid-template-columns:1fr}
  .colR>h2:first-child,.colR>.allgood:first-child{margin-top:14px}
  .colR .list{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}
  .mc{min-height:150px}
}
@media (min-width:1400px){.ccard .ct{font-size:.8rem}}
.foldh{display:inline-flex;align-items:center;gap:8px;background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer}
.foldh svg{width:16px;height:16px;color:var(--muted);transition:transform .2s ease}
.foldh[aria-expanded="true"] svg{transform:rotate(90deg)}
.foldh:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}
.gbox{display:grid;gap:10px;background:var(--bg);border-radius:12px;padding:10px}
.recbox{display:grid;gap:6px}
.recs{display:grid;gap:6px}
.recrow{display:grid;grid-template-columns:76px 1fr auto auto;gap:8px;align-items:center}
.recrow input,.recrow select{background:var(--paper)}
.plist{display:grid;gap:6px}
.prow{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--bg);border-radius:10px;padding:8px 10px}
.ptxt{display:grid;gap:2px;min-width:0}.ptxt b{font-size:.9rem;overflow-wrap:anywhere}.ptxt span{font-size:.76rem;color:var(--muted)}
.pcont{display:grid;gap:4px;font-size:.86rem}
.pc-n{font-weight:600}
.pc-r{display:flex;align-items:center;gap:8px;flex-wrap:wrap;overflow-wrap:anywhere}
.pc-s{color:var(--muted)}
.cpy{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:999px;padding:2px 9px;font-size:.72rem;font-weight:600;cursor:pointer}
.cpy.danger{color:var(--bad)}
.fbody{display:grid;gap:14px}
.fsec{display:grid;gap:6px}
.frows{display:grid;background:var(--bg);border-radius:12px;overflow:hidden}
.frow{display:grid;grid-template-columns:minmax(110px,180px) 1fr auto;gap:10px;align-items:center;padding:9px 12px;border-bottom:1px solid var(--line);font-size:.88rem}
.frow:last-child{border-bottom:0}
.fk{color:var(--muted);font-weight:600;font-size:.8rem}
.fv{overflow-wrap:anywhere;min-width:0}.fv.masked{letter-spacing:.15em;color:var(--muted)}
.fact{display:flex;gap:4px;justify-content:flex-end}
.lock{font-size:.7rem}
.fed{background:var(--bg);border-radius:12px;padding:10px}
.fsech{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.fsec-t{flex:1;min-width:160px;font-weight:700;background:var(--paper)}
.fedrow{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) auto auto;gap:6px;align-items:center}
.fedrow input{background:var(--paper)}
.fpriv{font-size:.74rem;white-space:nowrap}
@media (max-width:560px){.frow{grid-template-columns:1fr auto}.frow .fk{grid-column:1/-1}.fedrow{grid-template-columns:1fr 1fr}.fedrow .fpriv,.fedrow .fact{grid-column:auto}}
.kb{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(230px,1fr);gap:10px;overflow-x:auto;padding-bottom:8px;margin-top:14px;align-items:start}
.kcol{background:var(--wknd);border:1px solid var(--line);border-radius:14px;display:grid;grid-template-rows:auto 1fr;min-height:260px}
.kcol.lost{background:var(--bg)}
.kcol.kdrop{border-color:var(--accent);background:var(--accent-soft)}
.kh{display:flex;justify-content:space-between;align-items:center;gap:6px;padding:10px 12px;font-weight:700;font-size:.82rem;border-bottom:1px solid var(--line)}
.kh b{font-family:var(--f-num);font-size:.95rem;background:var(--paper);border-radius:999px;padding:0 8px}
.kbody{display:grid;gap:8px;padding:8px;align-content:start}
.kcard{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:10px;display:grid;gap:4px;cursor:grab;-webkit-user-select:none;user-select:none;box-shadow:var(--shadow)}
.kcard:hover{border-color:var(--accent)}
.kcard:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.kt{display:flex;align-items:center;gap:6px;min-width:0}.kt b{font-size:.88rem;overflow-wrap:anywhere}
.ks{font-size:.76rem;color:var(--muted);overflow-wrap:anywhere}
.km{display:flex;flex-wrap:wrap;gap:4px;margin-top:2px}.km .pill{font-size:.62rem}
.kempty{font-size:.74rem;color:var(--muted);text-align:center;padding:16px 4px;border:1px dashed var(--line);border-radius:10px}
.kcard.dragging,.swrap.dragging{opacity:.35}
.kcard.insb,.swrap.insb{box-shadow:0 -3px 0 0 var(--accent)}.kcard.insa,.swrap.insa{box-shadow:0 3px 0 0 var(--accent)}
.kghost{position:fixed;z-index:50;pointer-events:none;box-shadow:0 12px 28px rgba(26,22,19,.28);transform:rotate(-2deg);opacity:.95;margin:0}
.sheet>.top{position:sticky;top:-18px;z-index:6;background:var(--paper);margin:-18px -16px 0;padding:18px 16px 10px;align-items:center}
.kaccs{display:grid;gap:6px;margin-top:12px}
.kacc{border:1px solid var(--line);border-radius:12px;background:var(--paper);overflow:hidden}
.kacc.lost .kah{color:var(--muted)}
.kah{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;border:0;background:var(--wknd);color:var(--ink);font:600 .86rem var(--f-body,inherit);padding:9px 12px;text-align:left;min-height:40px}
.kah b{font-family:var(--f-num);font-weight:600;margin-left:4px}
.kah .car{transition:transform .15s;color:var(--muted)}
.kacc.open .kah .car{transform:rotate(180deg)}
.kabody{padding:8px;display:none}
.kacc.open .kabody{display:block}
.kabody .empty{padding:10px;margin:0}
body.kcollapse .kacc .kabody{display:none!important}
body.kcollapse .kacc .kah .car{visibility:hidden}
.kacc.kdrop{border-color:var(--accent)}
.kacc.kdrop .kah,.kcol.kdrop .kh{background:var(--accent);color:#FFFFFF}
.kacc.kdrop .kah b{color:#FFFFFF}
.kcol.kdrop .kh b{color:var(--accent)}
.kcol.kdrop{border-width:2px}
.kpill{position:fixed;z-index:60;pointer-events:none;background:var(--ink);color:#FFFFFF;font:600 .82rem var(--f-body,inherit);padding:7px 12px;border-radius:999px;box-shadow:0 8px 20px rgba(26,22,19,.3);max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media (max-width:759px){.tab .tl{display:none}.tab{padding:9px 2px}.tab svg{width:24px;height:24px}}
.pboard{padding:16px}
.pb-top{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap}
.pb-k{display:block;font:500 .64rem var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.pb-big{display:block;font-family:var(--f-num);font-weight:700;font-size:2.4rem;line-height:1.05;color:var(--ink);margin:2px 0}
.pb-side{display:flex;gap:22px;text-align:right}.pb-side b{display:block;font-family:var(--f-num);font-weight:700;font-size:1.35rem}.pb-side .note{display:block;margin:0;font-size:.72rem}
.pb-won b{color:var(--sem-g)}.pb-pc b{color:var(--sem-o)}
.pb-ics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-top:14px}
.pb-ic{border:0;background:none;padding:4px 0;display:grid;justify-items:center;gap:6px;color:var(--ink);font:inherit;cursor:pointer}
.pb-i{position:relative;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--accent) calc(var(--lv,0)*100%),var(--wknd));color:#FFFFFF;transition:transform .15s}
.pb-ic.off .pb-i{background:var(--wknd);color:var(--muted)}
.pb-ic.won .pb-i{background:color-mix(in srgb,var(--sem-g) calc(var(--lv,0)*100%),var(--wknd))}
.pb-ic:active .pb-i{transform:scale(.94)}
.pb-i svg{width:22px;height:22px}
.pb-i em{position:absolute;top:-3px;right:-3px;min-width:18px;height:18px;border-radius:9px;background:var(--paper);color:var(--ink);border:1px solid var(--line);font:700 .62rem var(--f-num);font-style:normal;display:grid;place-items:center;padding:0 4px}
.pb-m{font-family:var(--f-num);font-weight:600;font-size:.86rem;color:var(--ink);white-space:nowrap}
.pb-ic.off .pb-m{color:var(--muted)}
.pb-m .pbf{display:none}@media (min-width:760px){.pb-m .pbk{display:none}.pb-m .pbf{display:inline}.pb-m{font-size:1rem}}
@media (max-width:560px){.pb-side{text-align:left;width:100%;gap:28px}}
@media (max-width:420px){.pb-i{width:40px;height:40px}.pb-i svg{width:19px;height:19px}.pb-m{font-size:.74rem}.pb-big{font-size:2rem}}
.khn{display:grid;gap:1px}.ksum{font-style:normal;font-family:var(--f-num);font-weight:600;font-size:.8rem;color:var(--accent)}
.kacc.kdrop .ksum,.kcol.kdrop .ksum{color:#FFFFFF}
.kah .ksum{font-size:.84rem}
.kamt{font-family:var(--f-num);font-weight:700;font-size:.95rem;color:var(--ink)}
.pdet{border:1px solid var(--line);border-radius:14px;padding:12px;background:var(--paper)}
.pdet-m{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pdet-m b{font-family:var(--f-num);font-size:1.4rem;flex:1}
.phist{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:6px;max-height:220px;overflow:auto}
.phist li{display:grid;grid-template-columns:62px 1fr;gap:8px;font-size:.84rem;border-left:2px solid var(--line);padding-left:8px}
.phist li span{color:var(--muted);font:500 .72rem var(--f-mono);padding-top:2px}
.doc.old{opacity:.62}
.foldh.avrojo{color:var(--alerta,#9B2B2B)}.foldh.avrojo .count{color:var(--alerta,#9B2B2B)}
.card.aviso{border-left-color:var(--sem-o)}.card.aviso.urg{border-left-color:var(--alerta,#9B2B2B)}
.rbtn{border:0;background:none;padding:0;font:inherit;color:inherit;text-align:left;cursor:pointer}
.rlink{font-size:.72rem;color:var(--accent);font-weight:600;margin-top:4px;display:block}
.rs-sum{display:flex;gap:28px;flex-wrap:wrap}.rs-sum b{font-family:var(--f-num);font-size:1.6rem;font-weight:400}
.rsl{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.rs{display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:center;border:1px solid var(--line);border-radius:4px;padding:10px 12px;background:var(--paper)}
.rs .wdots{grid-column:1/2;margin:0}.rs-t{display:flex;gap:8px;align-items:center}.rs-n{grid-row:1/3;grid-column:2;text-align:right;font-size:.8rem;color:var(--muted)}.rs-n b{font-family:var(--f-num);font-size:1.6rem;font-weight:400;color:var(--ink);display:block}
.tira{display:grid;gap:4px;width:100%;border:1px solid var(--line);background:transparent;border-radius:3px;padding:8px 10px 7px;cursor:pointer;text-align:left;font:inherit;color:var(--ink)}
.tira:hover{border-color:var(--accent)}
.tira-svg{width:100%;height:34px;display:block}
.tira .td{fill:var(--line-strong,rgba(26,22,19,.3))}.tira .td.off{fill:rgba(155,43,43,.28)}
.tira .thoy{stroke:var(--accent);stroke-width:1.2;stroke-dasharray:2 2}
.tira .tfin{stroke:var(--alerta,#9B2B2B);stroke-width:2}
.tira .tcar{fill:var(--accent)}.tira .tprog{fill:var(--paper,#fff);stroke:var(--accent);stroke-width:1.6}
.tira-l{display:flex;justify-content:space-between;font:500 .6rem var(--f-mono);color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.tira-k{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:center;font-size:.7rem;color:var(--muted)}
.tira-k i{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:4px;vertical-align:-1px}
.tira-k .kc{background:var(--accent)}.tira-k .kp{border:1.5px solid var(--accent)}.tira-k .kf{width:2px;height:10px;border-radius:0;background:var(--alerta,#9B2B2B)}
.tira-v{margin-left:auto;color:var(--accent);font-weight:600}
.phist.hc{max-height:none}.phist li.hk-carga{border-left-color:var(--accent)}.phist li.hk-prog{border-left-color:var(--accent);border-left-style:dashed}.phist li.hk-nota{border-left-color:var(--sem-o)}.phist li.hk-saldo{border-left-color:var(--muted)}
.respbox{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;border-color:var(--accent)}.respbox b{display:block;font-size:1rem;margin:2px 0}.respbox .note{margin:0}
.kchips{display:flex;gap:6px;overflow-x:auto;padding:12px 0 4px;margin-top:6px}
.kchip{flex:none;border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:999px;padding:7px 12px;font-size:.8rem;font-weight:600;white-space:nowrap}
.kchip b{font-family:var(--f-num);margin-left:2px}
.kchip.on{background:var(--accent);color:#FFFFFF;border-color:var(--accent)}
.kchip.lost:not(.on){color:var(--muted)}
.kchip.kdrop{outline:2px solid var(--accent)}
@media (max-width:420px){.row2{grid-template-columns:1fr}.stat b{font-size:1.4rem}}
@media (prefers-reduced-motion:no-preference){.card{transition:opacity .2s}}

/* ===== Tema Ángulo Cero · "parte dos" de la página: papel claro, acentos carbón, pizarra y plano técnico ===== */
:root{
  --bg:#F0EDE7; --paper:#FBFAF7; --raised:#FBFAF7; --ink:#1A1613; --muted:#5E574D; --line:rgba(26,22,19,.13); --line-strong:rgba(26,22,19,.32);
  --accent:#1F3A8F; --accent-soft:#E6EBF6; --deep:#182E72; --alerta:#9B2B2B; --alerta-soft:#FBEAEA;
  --ok:#1F3A8F; --ok-soft:#E3E8F4; --warn:#5E574D; --warn-soft:#E4DFD6;
  --slate:#1F3A8F; --steel:#758AAB; --wknd:#FBFAF7; --sand:#FBFAF7;
  --carbon:#1F3A8F; --carbon-2:#182E72; --negro:#0D0D0D; --crema:#F0EDE7; --crema-mut:#C9CFDB; --ambar:#E0A04A; --vino-claro:#F4A79C; --pizarra-claro:#B9C6DB;
  --shadow:none;
  --f-display:"Gloock","Bodoni 72",Didot,Georgia,serif;
  --f-body:"Schibsted Grotesk","Helvetica Neue",Arial,sans-serif;
  --f-mono:"IBM Plex Mono",ui-monospace,Menlo,monospace;
  --f-num:"Gloock","Bodoni 72",Didot,Georgia,serif;
  --grid-l:rgba(26,22,19,.045);
  --tick:rgba(26,22,19,.55);
}
html,body{background-color:var(--bg);background-image:linear-gradient(var(--grid-l) 1px,transparent 1px),linear-gradient(90deg,var(--grid-l) 1px,transparent 1px);background-size:24px 24px;background-attachment:fixed}
body{font-size:15px}
h1,h2,.sheet h3{font-weight:400;letter-spacing:-.01em}
h2{font-size:1.25rem}
.stat b,.amt,.pb-big,.pb-side b,.kamt,.pdet-m b,.pb-m{font-weight:400!important;letter-spacing:0}

/* --- encabezado en carbón con cuadrícula de plano --- */
header{position:relative;isolation:isolate;color:var(--crema);padding-block:24px 18px;margin-bottom:6px}
header::before{content:"";position:absolute;top:-200px;bottom:0;left:calc(50% - 50vw);right:calc(50% - 50vw);z-index:-1;background-color:var(--carbon);
  background-image:linear-gradient(rgba(240,237,231,.10) 1px,transparent 1px),linear-gradient(90deg,rgba(240,237,231,.10) 1px,transparent 1px),linear-gradient(rgba(240,237,231,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(240,237,231,.05) 1px,transparent 1px);
  background-size:96px 96px,96px 96px,24px 24px,24px 24px;border-bottom:1px solid rgba(244,167,156,.30)}
.adm{font-family:var(--f-mono);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--pizarra-claro);margin-bottom:8px;display:flex;align-items:center;gap:8px}
.adm i{width:7px;height:7px;border-radius:50%;background:var(--vino-claro);box-shadow:0 0 0 3px rgba(244,167,156,.2)}
header h1{color:var(--crema);font-family:var(--f-display);font-size:2.1rem}
header .sig{color:var(--vino-claro)}
header .dotmark{color:var(--vino-claro)}
header .date{color:var(--crema-mut)}
header .ibtn,header .askbtn{background:transparent;color:var(--crema);border-color:rgba(240,237,231,.28)}
header .askbtn svg{color:var(--vino-claro)}
header .ibtn:hover,header .askbtn:hover{border-color:var(--vino-claro)}
header .stat{background-color:var(--carbon-2);border:1px solid rgba(240,237,231,.10);color:var(--crema)}
header .stat span{color:var(--crema-mut);font-family:var(--f-mono);font-size:.62rem;text-transform:uppercase;letter-spacing:.08em}
header .stat b{font-size:2rem;color:var(--crema)}
header .stat.bad b{color:var(--vino-claro)} header .stat.money b{color:#FFFFFF}

.empty{background-color:transparent}
/* --- superficies: esquinas casi rectas, separación por tono --- */
.card{border-radius:4px;box-shadow:none;background:var(--paper);border-color:var(--line)}
.panel{border-radius:4px;background-color:var(--paper);border-color:var(--line)}
.stat{border-radius:3px}
.btn,.ibtn{border-radius:3px}
.ibtn{border-radius:50%}
input,select,textarea{border-radius:2px;background:#FFFFFF;border-color:var(--line-strong)}
.sheet{border-radius:6px 6px 0 0;background:var(--bg)}
.sheet>.top{background:var(--bg)}
@media (min-width:760px){.sheet{border-radius:6px}}
.empty{border-radius:4px;border-color:var(--line-strong)}
.confirm{border-radius:3px}
.toast{background:var(--carbon);color:#FFFFFF;border-radius:3px;border:1px solid rgba(244,167,156,.35);box-shadow:0 10px 30px rgba(13,13,13,.35)}
.toast button{color:var(--vino-claro)!important}
.btn:focus-visible,.tab:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,.day:focus-visible{outline:2px solid var(--slate);outline-offset:2px}
.fab{border-radius:3px;box-shadow:0 10px 30px rgba(31,58,143,.35);font-family:var(--f-body);letter-spacing:.01em}
.seg button,.chips button{border-radius:3px}
.seg button[aria-pressed="true"]{background:var(--slate);border-color:var(--slate);color:var(--crema)}

/* --- etiquetas tipo plano --- */
.panel h4,.pb-k,.stage-h{color:var(--muted)}
.pill{border-radius:999px;font-family:var(--f-body)}

/* --- Google Calendar = pizarra --- */
.ccard.gc{--tc:var(--slate)!important}

/* --- barra de abajo en carbón --- */
nav.tabs{background:var(--carbon);border-top:1px solid rgba(244,167,156,.30)}
.tab{color:#B8C6EA;border-radius:3px;transition:color .15s,background .15s}
.tab:hover{color:var(--vino-claro);background:rgba(244,167,156,.10)}
.tab[aria-selected="true"]{color:var(--vino-claro);background:rgba(244,167,156,.16)}
.tab .dot{background:var(--vino-claro);color:var(--carbon);font-weight:700}

/* --- tablero de prospectos: tarjeta clara --- */
.pboard .pb-big{font-size:2.8rem}
.pboard .pb-pc b{color:var(--accent)} .pboard .pb-won b{color:var(--sem-g)}
.pboard .pb-i{background:color-mix(in srgb,var(--accent) calc(var(--lv,0)*100%),#E6EBF6);color:#FFFFFF}
.pboard .pb-ic.off .pb-i{background:#EEF0F4;color:var(--muted)}
.pboard .pb-i em{background:var(--paper);color:var(--accent);border-color:var(--accent)}
/* --- kanban y calendario --- */
.kcol{border-radius:4px;background:var(--paper)}
.kh{font-family:var(--f-body)}
.kcard{border-radius:3px!important;box-shadow:none!important}
.kacc{border-radius:4px}
.kah{background:var(--paper)}
.cal,.wkd{border-radius:4px}
.day.today .n{background:var(--accent)}
.mc,.ccard{border-radius:3px}

/* --- respaldo --- */
.respbox{background-color:var(--paper)}

/* --- rojo solo para alertas --- */
.card.late{border-left-color:var(--alerta)}
.pill.bad{background:var(--alerta-soft)!important;color:var(--alerta)!important}
.pill.urg{background:var(--alerta)!important;color:#FFFFFF!important}
.btn.danger{color:var(--alerta);border-color:var(--alerta)}
.day.late .n{box-shadow:inset 0 0 0 1.5px var(--alerta)}
.respbox{border-color:var(--accent)}
/* --- superficies uniformes: un solo tono de tarjeta, separación por línea --- */
.card,.panel,.cal,.wkd,.mc,.ccard,.kcard,.kacc,.stat:not(header .stat),.sheet,.sheet>.top,input,select,textarea,.seg button,.chips button,.btn:not(.primary):not(.ok):not(.danger){background-color:var(--paper)}
input,select,textarea{border-color:var(--line-strong)}
.ccard{border-color:var(--line)}
/* ===== Ficha de cliente (v65) ===== */
.cflink{cursor:pointer;text-decoration:underline;text-decoration-color:var(--vino-claro);text-decoration-thickness:2px;text-underline-offset:3px;font-weight:600}
.cflink:hover{color:var(--accent)}
.sheet.cfsheet{padding:0;gap:0;background:var(--bg);display:block}
@media (min-width:760px){.sheet.cfsheet{max-width:1240px;width:96vw;max-height:92vh}}
@media (max-width:759px){.sheet.cfsheet{max-height:100%;height:100%;border-radius:0}}
@media (max-width:759px){.cfpills{flex-basis:100%;order:2}.cfbtns{order:3}.cfwho h3{font-size:1.4rem}}
.cfhead{position:sticky;top:0;z-index:5;background:var(--carbon);color:var(--crema);display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:16px 18px}
.cfwho{display:flex;align-items:center;gap:10px;min-width:0}
.cfwho h3{font-family:var(--f-display);font-weight:400;font-size:1.6rem;margin:0;color:var(--crema);line-height:1.1}
.cfdot{width:14px;height:14px;border-radius:50%;flex:none;box-shadow:0 0 0 2px rgba(240,237,231,.35)}
.cfpills{display:flex;gap:6px;flex-wrap:wrap;flex:1}
.cfpill{display:inline-block;border:1px solid rgba(240,237,231,.35);border-radius:999px;padding:2px 10px;font-size:.78rem;color:var(--crema)}
.cfpill.on{background:var(--vino-claro);color:var(--carbon-2);border-color:var(--vino-claro);font-weight:600}
.cfpill.dark{color:var(--ink);border-color:var(--line);background:var(--bg)}
.cfmarcas{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}
.cfbtns{display:flex;gap:6px}
.btn.light{background:transparent!important;color:var(--crema);border-color:rgba(240,237,231,.35)}
.btn.light:hover{border-color:var(--vino-claro)}
.cfcols{display:grid;grid-template-columns:280px minmax(0,1fr) 310px;gap:14px;padding:16px}
.cfp+.cfp{margin-top:12px}
.cfp h4{display:flex;justify-content:space-between;align-items:center;margin:0 0 10px;font-family:var(--f-mono);font-weight:500;font-size:.66rem;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}
.cfp h4 a,.cfsubbar a,.cfsub-h a{font-family:var(--f-body);text-transform:none;letter-spacing:0;font-size:.82rem;color:var(--accent);font-weight:600;cursor:pointer}
.cfdl{display:grid;gap:2px;margin:0}.cfdl dt{font-size:.74rem;color:var(--muted);margin-top:6px}.cfdl dd{margin:0;font-weight:500;white-space:pre-line;overflow-wrap:anywhere}
.cfempty{font-size:.86rem;color:var(--muted);padding:4px 0}
.cfr{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:9px 0;border-top:1px solid var(--line)}
.cfr:first-child{border-top:0}
.cfr-t{flex:1;min-width:150px;cursor:pointer;display:grid}.cfr-t b{font-weight:600}.cfr-t span{font-size:.78rem;color:var(--muted)}
[data-cfneg],[data-cfexp].cfr{cursor:pointer}
.cfr-a{display:flex;gap:6px;align-items:center}.cfr-a .btn{padding:5px 10px;font-size:.8rem}
.cfconf{display:flex;gap:6px;align-items:center;font-size:.82rem;font-weight:600}
.cfamt{font-family:var(--f-num);font-size:1.15rem}
.tagd{font-size:.72rem;border-radius:999px;padding:2px 8px;background:var(--bg);color:var(--muted);white-space:nowrap}
.tagd.red{background:var(--alerta);color:#fff}
.cfh{display:flex;gap:10px;align-items:flex-start;padding:8px 0;border-top:1px solid var(--line)}
.cfh:first-child{border-top:0}
.cfh .f{font-family:var(--f-mono);font-size:.68rem;color:var(--muted);width:58px;flex:none;padding-top:3px}
.cfh .t{flex:1;font-size:.9rem}.cfh .nb{font-family:var(--f-mono);font-size:.62rem;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);font-weight:500}
.cfx{display:grid;grid-template-columns:1fr auto;gap:2px 8px;padding:8px 0;border-top:1px solid var(--line);align-items:center}
.cfx:first-child{border-top:0}
.cfx span{font-size:.74rem;color:var(--muted);grid-column:1}.cfx b{grid-column:1;font-weight:500;overflow-wrap:anywhere}.cfx b.mask{letter-spacing:.2em;color:var(--muted)}
.cfx .xbtn{grid-column:2;grid-row:1 / span 2}
.cfb{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:9px 0;border-top:1px solid var(--line);cursor:pointer}
.cfb:first-child{border-top:0}
.cfb b{display:block;font-weight:600}.cfb span{font-size:.78rem;color:var(--muted)}
.cfb em{font-style:normal;font-weight:700;font-size:.85rem}.cfb em.red{color:var(--alerta)}
.cfbat{width:26px;height:12px;border:1.5px solid var(--ink);border-radius:2px;position:relative;display:inline-block}
.cfbat::after{content:"";position:absolute;right:-4px;top:3px;width:2px;height:4px;background:var(--ink)}
.cfbat i{position:absolute;left:1px;top:1px;bottom:1px;background:var(--accent);border-radius:1px}
.cfbat.red{border-color:var(--alerta)}.cfbat.red i,.cfbat.red::after{background:var(--alerta)}
.cfneg{display:block;width:100%;margin-top:10px;border:1px solid var(--accent);background:var(--accent);color:#fff;border-radius:3px;padding:12px;text-align:center;font:700 .95rem var(--f-body);cursor:pointer}
.cfneg small{display:block;font-weight:400;opacity:.85;margin-top:2px;font-size:.78rem}
.cfneg:hover{background:var(--carbon-2)}
.cfchips{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}
.cfchips .chip{border:1px solid var(--line);background:var(--paper);border-radius:999px;padding:6px 12px;font:600 .82rem var(--f-body);color:var(--ink);cursor:pointer}
.cfchips .chip.on{background:var(--accent);color:#fff;border-color:var(--accent)}
.cfbody{padding:14px}
.cfgrid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.cfgrid .sq{background:var(--paper);border:1px solid var(--line);border-radius:3px;padding:14px 14px 12px;min-height:104px;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;text-align:left;cursor:pointer;font:inherit;color:var(--ink)}
.cfgrid .sq svg{width:20px;height:20px;color:var(--accent)}
.cfgrid .sq .n{display:block;font-family:var(--f-display);font-size:1.6rem;line-height:1.05}
.cfgrid .sq .n sup{font-size:.5em}
.cfgrid .sq .l{display:block;font-size:.85rem;font-weight:600;margin-top:2px}
.cfgrid .sq.red{border-color:var(--alerta);background:#F7ECEA}.cfgrid .sq.red svg,.cfgrid .sq.red .n{color:var(--alerta)}
.cfgrid .sq.wide{grid-column:span 2;min-height:56px;flex-direction:row;align-items:center;justify-content:space-between}
.cfsubbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-bottom:1px solid var(--line);background:var(--paper);position:sticky;top:0;z-index:4}
.cfsubbar b{font-family:var(--f-display);font-weight:400;font-size:1.2rem}
.cfsubbody{padding:6px 14px 18px;background:var(--paper);min-height:50vh}
.cfsub-h{display:flex;justify-content:space-between;align-items:center;margin:16px 0 4px;font-family:var(--f-mono);font-size:.66rem;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}
.cfmini{position:absolute;inset:0;z-index:20;background:rgba(29,29,31,.35);display:flex;align-items:flex-start;justify-content:center;padding:40px 12px}
.cfminif{background:var(--paper);border-radius:6px;width:100%;max-width:420px;display:grid;gap:12px;padding-bottom:14px;overflow:hidden}
.cfminif label{margin:0 14px}.cfminif .actions{margin:0 14px}
.sheet.cfsheet{position:relative}
.svrow{display:grid;grid-template-columns:1.4fr 1fr auto auto;gap:8px;align-items:center}
@media (max-width:520px){.svrow{grid-template-columns:1fr 1fr}.svrow .ckrow{grid-column:1}}
.negbar{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin:12px 0 4px}
.negbar .chip{border:1px solid var(--line);background:var(--paper);border-radius:999px;padding:6px 12px;font:600 .82rem var(--f-body);color:var(--ink);cursor:pointer}
.negbar .chip.on{background:var(--accent);color:#fff;border-color:var(--accent)}
.negbar .sp{flex:1}
.mq{display:inline-block;font-size:.66rem;font-family:var(--f-mono);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:2px 7px;border:1px solid var(--line);color:var(--muted);background:var(--bg)}
.mq.nuevo{border-color:var(--vino-claro);background:#FBEAE6;color:#8a3b2f}
.mq.cli{border-color:var(--accent);color:var(--accent);background:var(--paper)}
.vertoggle{margin-top:10px}

/* Plan grande (27 oct 2026): preguntas con casillas, Papelera, Registro, vista de tarjeta, conectadas, copiar, avatar */
.pqlist{display:grid;gap:8px;margin-top:4px}
.pq{border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:var(--paper);display:grid;gap:6px;opacity:.75}
.pq.on{opacity:1;border-color:var(--accent);background:var(--accent-soft)}
.pq-r{display:flex;gap:10px;align-items:flex-start;font-size:.92rem;cursor:pointer;margin:0}
.pq-r input{width:18px;height:18px;margin-top:2px;flex:none;accent-color:var(--accent)}
.pq-ajb{justify-self:start;background:none;border:0;padding:2px 0;color:var(--accent);font-weight:700;font-size:.82rem;cursor:pointer;text-decoration:underline}
.pq-aj{padding-top:4px}
.pq-n{font-size:.8rem;color:var(--muted)}
.paplist,.reglist{display:grid;gap:2px;padding:6px}
.papr{display:flex;gap:10px;align-items:flex-start;padding:9px 8px;border-radius:10px;cursor:pointer;margin:0}
.papr:hover{background:var(--wknd)}
.papr input{width:18px;height:18px;margin-top:2px;flex:none;accent-color:var(--accent)}
.papr span{display:grid;gap:1px;min-width:0}
.papr b{font-weight:600;overflow-wrap:anywhere}
.papr em{font-style:normal;font-size:.78rem;color:var(--muted)}
.papr.hijo{padding-left:34px}
.papg{border:1px solid var(--line);border-radius:12px;margin:4px 0;padding:2px}
.regr{display:grid;grid-template-columns:auto 1fr;gap:2px 10px;padding:8px 6px;border-bottom:1px solid var(--line);font-size:.86rem}
.regr:last-child{border-bottom:0}
.regr .f{color:var(--muted);font-family:var(--f-mono);font-size:.74rem;white-space:nowrap;padding-top:2px}
.regr em{font-style:normal;color:var(--muted)}
.vbtns{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}
.tdet{margin-top:6px}
.tline{display:grid;gap:4px;margin-top:12px}
.tl-r{display:flex;gap:10px;align-items:flex-start;text-align:left;background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:8px 10px;font:inherit;color:inherit;cursor:pointer}
.tl-r i{font-style:normal;width:18px;text-align:center;color:var(--muted);flex:none}
.tl-r.ok i{color:var(--sem-g)} .tl-r.cur i{color:var(--accent)}
.tl-r.ok b{text-decoration:line-through;color:var(--muted)}
.tl-r.yo{border-color:var(--accent)}
.tl-r span{display:grid;gap:1px;min-width:0}
.tl-r em{font-style:normal;font-size:.78rem;color:var(--muted)}
.cxsec{display:grid;gap:6px;border-top:1px solid var(--line);padding-top:10px}
.cxr{display:flex;justify-content:space-between;gap:8px;align-items:center;background:var(--wknd);border-radius:10px;padding:6px 10px;font-size:.88rem}
.cxr span{display:grid;min-width:0}
.cxr em{font-style:normal;font-size:.76rem;color:var(--muted)}
.lt{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}
.opc{font:400 .6rem var(--f-mono);letter-spacing:.07em;text-transform:uppercase;color:var(--muted);font-style:normal}
.pesos{position:relative;display:block}
.pesos::before{content:"$";position:absolute;left:11px;top:50%;transform:translateY(-50%);color:var(--muted);font-weight:500;pointer-events:none}
.pesos input{padding-left:24px!important;width:100%;box-sizing:border-box}
.ayuda{font-weight:400;font-size:.76rem;color:var(--muted)}
.fxpills{display:flex;gap:6px;flex-wrap:wrap}
.fxpills button{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:999px;padding:6px 12px;font:600 .8rem var(--f-body);cursor:pointer}
.fxpills button[aria-pressed="true"]{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}
.fxop{display:grid;gap:8px}
label.fxr{display:flex;gap:8px;align-items:center;font-size:.88rem;font-weight:500;color:var(--ink)}
label.fxr input{width:auto;margin:0;flex:none}
.cxed{display:flex;gap:8px;align-items:center;background:var(--wknd);border:1px solid var(--line);border-radius:10px;padding:6px 8px;font-size:.88rem}
.cxed .n{font:500 .72rem var(--f-mono);color:var(--accent);width:16px;flex:none;text-align:center}
.cxed .t{flex:1;min-width:0;display:grid}.cxed .t b{font-weight:500}
.cxed em{font-style:normal;font-size:.76rem;color:var(--muted)}
.cxed.yo{border-color:var(--accent)}
.cxar{width:32px;height:32px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);font-size:.95rem;flex:none;cursor:pointer}
.cxar:disabled{opacity:.3;cursor:default}
.tl-r.ro{cursor:default}
#filtro .fbar{background:var(--bg);color:#8A6E9E;border:1px solid rgba(138,110,158,.25)}
#filtro .fbar b{font-weight:700;color:#8A6E9E}
#filtro .fbar button{color:#8A6E9E}
.vhist{display:grid;gap:8px}
.cmini .cmline{font-size:.86rem;color:var(--muted);cursor:pointer;margin-top:-2px}
.cfprivb{justify-self:start;margin-top:12px}
.sheet-bg.pagina{padding:0!important;background:var(--bg);align-items:stretch;justify-content:stretch;padding-top:env(safe-area-inset-top,0px)!important}
.sheet.pagina{max-width:none!important;width:100%!important;height:100%!important;max-height:100%!important;border-radius:0!important;box-shadow:none}
#exp.pagina{align-content:start;overflow:auto}
#exp.pagina>*{width:100%;max-width:900px;justify-self:center}
.pgtop{justify-content:flex-start!important;gap:12px;align-items:center}
.pagina .cfsubbar{position:static}
.cfnh{display:flex;gap:8px;margin:2px 0 10px}
.cfnhb{flex:1;display:flex;align-items:center;justify-content:space-between;gap:6px;border:1px solid var(--line);background:var(--paper);border-radius:10px;padding:10px 12px;font:600 .86rem var(--f-body);color:var(--ink);cursor:pointer}
.cfnhb small{font:500 .7rem var(--f-mono);color:var(--muted)}
.cfnhb i{font-style:normal;color:var(--accent)}
.cfnhb.on{border-color:var(--accent)}
.cfhbar{border:1px solid var(--line);border-radius:10px;margin-bottom:10px}
.pgbar{display:flex;align-items:center;gap:12px;padding:0 16px;height:44px;background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:4}
.pgv,.pgbtn{border:0;background:none;color:var(--accent);font:600 .8rem var(--f-body);padding:0;cursor:pointer;flex:none}
.pgbtn.b{border:1px solid rgba(31,58,143,.35);border-radius:7px;padding:4px 10px}
.pgsep{width:1px;height:16px;background:var(--line);flex:none}
.pg-nm{font-family:var(--f-display);font-size:16px;font-weight:400;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;max-width:60%}
.pg-est{font-size:.72rem;font-weight:600;color:var(--muted);background:#ECE7DF;border-radius:999px;padding:2px 8px;flex:none}
.pg-tag{font:500 .62rem var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);flex:none}
.pgsp{flex:1}
.pg-av{display:none;width:26px;height:26px;border-radius:50%;place-items:center;color:#fff;font-size:.66rem;font-weight:600;flex:none}
#exp.pagina{padding-top:0!important}
#exp.pagina>.expbar{max-width:none;width:auto;margin:0 -16px 6px;justify-self:stretch}
@media (max-width:759px){.pgbar{height:40px;padding:0 12px;gap:10px}.pg-nm{display:none}.pg-av{display:inline-grid}.pgprog{display:none}
  nav.tabs{left:8px!important;right:8px!important;bottom:calc(8px + env(safe-area-inset-bottom,0px))!important;padding:4px 4px!important;border-radius:999px;border-top:0!important;background:var(--paper)!important;box-shadow:0 6px 18px rgba(13,13,13,.28)}
  nav.tabs .tab{padding:7px 0!important;background:none!important;border-radius:999px}
  nav.tabs .tab svg{position:relative;z-index:1;width:22px!important;height:22px!important}
  nav.tabs .tab[aria-selected="true"]{color:#1F3A8F!important}
  nav.tabs .tab[aria-selected="true"]::before{content:"";position:absolute;left:50%;top:50%;width:38px;height:38px;margin:-19px 0 0 -19px;border-radius:50%;background:#F9D3CC;z-index:0}
  nav.tabs .tab .dot{z-index:2}
  .fab{bottom:calc(84px + env(safe-area-inset-bottom,0px))!important}}
.cpi{display:inline-grid;place-items:center;width:28px;height:28px;border:0;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;vertical-align:middle;flex:none;padding:0}
.cpi:hover{background:var(--wknd);color:var(--ink)}
.cpi svg{width:16px;height:16px}
.cpi.ok{color:var(--sem-g)}
.cav-row{display:flex;gap:12px;align-items:flex-end}
.av.big{width:52px;height:52px;font-size:1.05rem;flex:none}
.cpal{display:flex;flex-wrap:wrap;gap:8px}
.cpb{display:inline-flex;align-items:center;gap:6px;border:2px solid transparent;border-radius:999px;padding:3px 8px 3px 3px;background:var(--wknd);font:inherit;font-size:.74rem;color:var(--muted);cursor:pointer}
.cpb i{width:22px;height:22px;border-radius:50%;background:var(--c);flex:none}
.cpb.on{border-color:var(--ink);color:var(--ink)}
.row3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}
@media(max-width:520px){.row3{grid-template-columns:1fr 1fr}}
.rlp{align-items:center}
.reelc .pill.acc{background:var(--accent-soft);color:var(--accent)}
.estx{display:inline-block;margin-left:6px;font-size:.66rem;font-weight:700;letter-spacing:.02em;color:var(--muted);background:var(--wknd);border:1px solid var(--line);border-radius:999px;padding:0 6px;vertical-align:middle;line-height:1.5}
.ojo{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:8px;cursor:pointer;color:var(--muted);position:relative;flex:none}
.ojo input{position:absolute;opacity:0;width:1px;height:1px}
.ojo svg{width:18px;height:18px}.ojo .oc{display:none}
.ojo input:checked~.oa{display:none}.ojo input:checked~.oc{display:inline;color:var(--accent)}
.ojo:focus-within{outline:2px solid var(--accent);outline-offset:1px}
.cfxa{display:inline-flex;gap:2px;align-items:center;margin-left:auto;flex:none}
.cfh.reg .t{color:var(--muted)}
button.cfpill{cursor:pointer;font:inherit;font-size:.74rem}
.chatok{display:grid;gap:6px;border:1px solid var(--accent);background:var(--accent-soft)}
.fio-meta{display:grid;gap:4px;margin-bottom:8px}.fio-meta b{font-family:var(--f-num);font-size:1.6rem;line-height:1}.fio-meta span{font-size:.8rem;color:var(--muted)}
.fio-bar{display:block;height:6px;border-radius:99px;background:var(--line);overflow:hidden}.fio-bar i{display:block;height:100%;background:var(--accent)}
.msgcp{display:flex;justify-content:flex-end;margin:-2px -6px -6px 0}

/* ===== v69 Fondos invertidos: bandas crema arriba y abajo, azul cuadriculado en medio (celular y Mac) ===== */
:root{--azul-fondo:#33509F;--rosa-osc:#D46F61;--alerta-clara:#FFB3A8}
html,body{background-color:var(--azul-fondo);background-image:linear-gradient(rgba(240,237,231,.10) 1px,transparent 1px),linear-gradient(90deg,rgba(240,237,231,.10) 1px,transparent 1px)}
header{color:var(--carbon)}
header::before{background-color:var(--bg);background-image:linear-gradient(var(--grid-l) 1px,transparent 1px),linear-gradient(90deg,var(--grid-l) 1px,transparent 1px);background-size:24px 24px;border-bottom:2px solid var(--azul-fondo)}
header .adm{color:var(--muted)}
header .adm i{background:var(--rosa-osc);box-shadow:0 0 0 3px rgba(212,111,97,.2)}
header h1{color:var(--carbon)}
header .sig,header .dotmark{color:var(--rosa-osc)}
header .date{color:var(--muted)}
header .ibtn,header .askbtn{color:var(--carbon);border-color:var(--line-strong)}
header .askbtn svg{color:var(--rosa-osc)}
header .ibtn:hover,header .askbtn:hover{border-color:var(--rosa-osc)}
header .stat{background-color:var(--paper);border:1px solid var(--line);color:var(--carbon)}
header .stat span{color:var(--muted)}
header .stat b{color:var(--carbon)}
header .stat.bad b{color:var(--alerta)} header .stat.money b{color:var(--carbon)}
nav.tabs{background:var(--bg);border-top:2px solid var(--azul-fondo)}
.tab{color:#5F72A8}
.tab:hover{color:var(--rosa-osc);background:rgba(212,111,97,.10)}
.tab[aria-selected="true"]{color:var(--rosa-osc);background:rgba(212,111,97,.14)}
.tab .dot{background:var(--rosa-osc);color:#FFFFFF}
.fab{background:var(--paper);color:var(--carbon);border:1px solid var(--line-strong);box-shadow:0 10px 30px rgba(13,13,13,.30)}
#sheet-under{pointer-events:none}
#view,#filtro{--ink:#F0EDE7;--muted:#D3DBF0;--line:rgba(240,237,231,.22);--line-strong:rgba(240,237,231,.45);color:var(--ink)}
#view .foldh.avrojo,#view .foldh.avrojo .count{color:var(--alerta-clara)}
#view .seg button[aria-pressed="true"],#view .negbar .chip.on,#filtro .seg button[aria-pressed="true"]{background:var(--vino-claro);border-color:var(--vino-claro);color:var(--carbon-2)}
:where(#view,#filtro) :where(.card,.panel,.cal,.wkd,.mc,.ccard,.kcol,.kcard,.kacc,.kah,.respbox,.stat,.pboard,input,select,textarea,.seg button,.chips button,.btn,.ibtn,.chip,.pill,.tagd,.allgood,.blk,.doc,.gbox,.gev,.kchip,.mcal,.mchip,.menu,.mq,.pbar,.pdet,.prow,.revbox,.rs,.seg1,.tblwrap,.tgrid button,.frows,.msgbox,.cpy,.sres button,table){--ink:#1A1613;--muted:#5E574D;--line:rgba(26,22,19,.13);--line-strong:rgba(26,22,19,.32);color:var(--ink)}

/* ===== v70 Botones de arriba: sin la línea "Ángulo Cero"; en celular arriba a la derecha y en circulitos ===== */
@media (max-width:759px){
header .hbtns{position:absolute;top:16px;right:0}
header .lockup{padding-top:0}
header .askbtn{width:36px;height:36px;padding:0;justify-content:center;border-radius:50%}
header .askbtn .asktxt{display:none}
header .askbtn svg{width:18px;height:18px}
}

/* ===== v72 Saludo y fecha en malva ===== */
header #today{display:grid;gap:0;margin-top:9px;text-transform:none;letter-spacing:0;font-family:var(--f-body)}
header #today .sal{font-family:var(--f-display);font-size:15px;line-height:1.1;color:#7D5F93}
header #today .fch{font-family:var(--f-body);font-size:14px;font-weight:500;line-height:1.15;color:#9A80AC}
/* ===== v77 Mis gastos (personal de Fiore) ===== */
.sheet.pagina.mg-page{background:#FFFFFF;overflow:auto;display:block;padding:0}
.mg-page .pgbar{background:#FFFFFF}
.mg-page .pgbar .mg-pgnm{display:block;max-width:none}
.mg-page .mgp{max-width:1100px;margin:0 auto;background:#FFFFFF;border-radius:0;padding:14px 14px 40px}
.mgp{--ink:#1F3A8F;--muted:#8a8578;--line:#e2dccf;--line-strong:#c9c1b2;color:#1F3A8F;background:#FBFAF7;border-radius:10px;padding:14px;margin-top:12px;font-family:var(--f-body)}
.mgp .mono,.mg-mono{font-family:var(--f-mono);font-size:11px;letter-spacing:.07em;text-transform:uppercase}
.mgp .gk{font-family:var(--f-display)}
.mg-sobre{border:1.5px solid #8A6E9E;border-radius:8px;position:relative;background-color:#E6DCEE;background-image:linear-gradient(rgba(255,255,255,.55) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.55) 1px,transparent 1px);background-size:16px 16px;color:#3F2D52;padding:34px 14px 14px;margin-bottom:14px}
.mg-flap{position:absolute;left:0;right:0;top:0;height:24px;border-bottom:1.5px dashed #9A80AC}
.mg-mes .gk{font-size:24px;line-height:1.15}
.mg-llev{font-size:12px;color:#5E4473}
.mg-llev button{all:unset;cursor:pointer;color:#5E4473;text-decoration:underline;text-decoration-style:dotted}
.mg-trk{height:6px;border-radius:6px;background:#CDBEDB;margin-top:10px;overflow:hidden}
.mg-trk i{display:block;height:100%;border-radius:6px;background:#D46F61}
.mg-trk i.over{background:#9B2B2B}
.mg-sello{position:absolute;right:14px;top:30px;transform:rotate(-9deg);border:2px solid #D46F61;color:#D46F61;border-radius:6px;padding:3px 9px;text-align:center;background:#FBFAF7}
.mg-sello .gk{font-size:20px}
.mg-sello.over{border-color:#9B2B2B;color:#9B2B2B}
.mg-stats{display:none}
.mg-tabs{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-bottom:10px;position:relative}
.mg-tab{all:unset;cursor:pointer;border-radius:20px;padding:5px 12px;font-size:13px;border:1px solid #1F3A8F;color:#1F3A8F;display:inline-flex;gap:5px;align-items:center}
.mg-tab[aria-pressed="true"]{background:#F9D3CC;border-color:#F9D3CC}
.mg-red{background:#9B2B2B;color:#fff;border-radius:20px;padding:0 7px;font-size:11px;line-height:17px}
.mg-fw{margin-left:auto;display:flex;gap:8px;align-items:center;position:relative}
.mg-cal{all:unset;cursor:pointer;width:32px;height:32px;border-radius:50%;border:1px solid #1F3A8F;display:flex;align-items:center;justify-content:center;color:#1F3A8F}
.mg-cal.act{background:#1F3A8F;color:#fff}
.mg-cal svg{width:16px;height:16px}
.mg-chip{display:inline-flex;align-items:center;gap:5px;border:1px solid #CDBEDB;background:#F3EEF7;color:#8A6E9E;border-radius:20px;padding:3px 9px;font-size:12px;cursor:pointer}
.mg-chipm{display:none;margin:-2px 0 10px}
.mg-menu{position:absolute;right:0;top:38px;width:210px;background:#FBFAF7;border:1px solid #d9d4ca;border-radius:10px;padding:6px;z-index:5;box-shadow:0 10px 24px rgba(13,13,13,.18)}
.mg-op{all:unset;box-sizing:border-box;display:flex;width:100%;justify-content:space-between;align-items:center;padding:9px 10px;border-radius:6px;cursor:pointer;font-size:13px;color:#1F3A8F}
.mg-op:hover{background:#F0EDE7}
.mg-op.sel{background:#F9D3CC}
.mg-op.dis{color:#b9b0a0;cursor:default}
.mg-tk{background:#5A74B8;color:#fff;font-size:13px;padding:12px 14px}
.mg-tk .gw{color:#DCE4F6}
.mg-tk .mono{color:#DCE4F6}
.mg-zz{height:8px;background:radial-gradient(circle at 5px 0,#FFFFFF 5px,#5A74B8 5.5px) 0 0/10px 8px repeat-x}
.mg-dash{border-top:1.5px dashed rgba(255,255,255,.55);margin:7px 0 5px}
.mg-ln{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:4px 0}
.mg-num{font-family:var(--f-mono);font-size:12px;white-space:nowrap}
.mg-nm{all:unset;cursor:pointer;color:#fff;border-bottom:1px solid transparent}
.mg-nm:hover{border-bottom-color:#fff}
.mg-tot{display:flex;justify-content:space-between;align-items:baseline;padding-top:4px}
.mg-tot .gk{font-size:19px}
.mg-tr{display:contents}
.mg-tbl{display:none}
.mg-row{position:relative;display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1.5px dashed rgba(255,255,255,.4)}
.mg-row:last-of-type{border-bottom:0}
.mg-in{flex:1;min-width:0}
.mg-sub{font-size:11px;color:#DCE4F6;margin-top:1px}
.mg-vp{border:1px solid rgba(255,255,255,.6);border-radius:20px;padding:0 7px;font-size:11px;color:#fff;display:inline-block;margin-top:4px}
.mg-vr{background:#9B2B2B;border-color:#9B2B2B}
.mg-dot{all:unset;cursor:pointer;border-bottom:1.5px dotted #fff}
.mg-st{all:unset;cursor:pointer;width:34px;height:34px;flex:none;border-radius:50%;border:1.5px dashed #F9D3CC;color:#F9D3CC;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.08)}
.mg-st svg{width:18px;height:18px}
.mg-stmp{position:absolute;right:46px;top:50%;border:2px solid #D46F61;color:#D46F61;border-radius:5px;padding:0 7px;font-family:var(--f-display);font-size:15px;background:#FFFFFF;opacity:0;transform:translateY(-50%) rotate(-10deg) scale(2);transition:all .22s ease-out;pointer-events:none}
.mg-stmp.on{opacity:1;transform:translateY(-50%) rotate(-10deg) scale(1)}
.mg-row.pagado .mg-in{opacity:.55}
.mg-ck{all:unset;cursor:pointer;width:26px;height:26px;flex:none;border-radius:50%;border:1.5px solid #fff;display:flex;align-items:center;justify-content:center;color:#1F3A8F}
.mg-ck.ok{background:#F9D3CC;border-color:#F9D3CC}
.mg-ck svg{width:14px;height:14px}
.mg-sw{display:flex;gap:14px;margin-bottom:6px}
.mg-sw button{all:unset;cursor:pointer;font-family:var(--f-mono);font-size:11px;letter-spacing:.07em;text-transform:uppercase;color:#DCE4F6;padding-bottom:2px;border-bottom:2px solid transparent}
.mg-sw button[aria-pressed="true"]{color:#fff;border-bottom-color:#F9D3CC}
.mg-empty{font-size:13px;color:#DCE4F6;padding:10px 0}
.mg-ht{font-size:12px;color:#8a8578;margin:8px 0 0}
/* ventana de detalle */
.mg-det{background:#F0EDE7;border:1px solid #e2dccf;padding:12px;font-size:13px;color:#1F3A8F}
.mg-det .mono{font-family:var(--f-mono);font-size:11px;letter-spacing:.07em;text-transform:uppercase;color:#8a8578}
.mg-det .gk{font-family:var(--f-display)}
.mg-det .ddash{border-top:1.5px dashed #c9c1b2;margin:10px 0 6px}
.mg-det .dl{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:4px 0}
.mg-det .dk{all:unset;cursor:pointer;display:flex;gap:7px;align-items:center}
.mg-det .ck2{width:20px;height:20px;border-radius:50%;border:1.5px solid #1F3A8F;display:inline-flex;align-items:center;justify-content:center;flex:none}
.mg-det .ck2.ok{background:#F9D3CC;border-color:#D46F61}
.mg-det .ck2 svg{width:12px;height:12px}
.mg-det .tach{text-decoration:line-through;color:#8a8578}
.mg-det .lnk{all:unset;cursor:pointer;font-size:12px;color:#1F3A8F;text-decoration:underline}
.mg-det .x{all:unset;cursor:pointer;color:#8a8578;padding:0 4px}
/* Mis avisos en Hoy */
#view .mg-avh{font-family:"Instrument Serif",Georgia,serif;font-style:italic;font-weight:400;font-size:1.25rem;color:#F9D3CC;margin:18px 0 8px;display:flex;gap:8px;align-items:center}
#view .mg-avh .count{font-family:var(--f-mono);font-style:normal;font-size:11px;color:#F9D3CC}
.mg-av{all:unset;box-sizing:border-box;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:10px;width:100%;background:#F0EDE7;border:1.5px solid #F9D3CC;border-radius:6px;padding:10px 12px;color:#1F3A8F;font-size:13px;margin-bottom:6px;font-family:var(--f-body)}
.mg-av .gk{font-family:var(--f-display);font-size:16px;white-space:nowrap}
.mg-av small{display:block;color:#8a8578;font-size:11px;margin-top:2px}
@media (max-width:759px){
  .mg-chipd{display:none}
  .mg-chipm{display:block}
}
@media (min-width:760px){
  .mgp{padding:16px}
  .mg-sobre{display:flex;align-items:center;gap:18px;padding:30px 16px 14px}
  .mg-mes{min-width:170px}
  .mg-stats{display:flex;gap:18px}
  .mg-stat{border-left:1.5px dashed #9A80AC;padding-left:12px}
  .mg-stat .l{font-family:var(--f-mono);font-size:11px;letter-spacing:.06em;color:#5E4473}
  .mg-stat .v{font-family:var(--f-display);font-size:17px;color:#3F2D52}
  .mg-stat .s{font-size:11px;color:#5E4473}
  .mg-sello{position:static;margin-left:auto;flex:none}
  .mg-tabs{gap:0;align-items:flex-end;margin-bottom:0;margin-top:16px}
  .mg-tab{border:0;border-radius:8px 8px 0 0;background:#DCE4F6;padding:8px 18px;margin-right:3px}
  .mg-tab[aria-pressed="true"]{background:#5A74B8;color:#fff}
  .mg-fw{padding-bottom:5px}
  .mg-tk{padding:0}
  .mg-tk .mg-pad{padding:10px 16px}
  .mg-list{display:none}
  .mg-tbl{display:block}
  .mg-th,.mg-tr2{display:grid;grid-template-columns:120px minmax(0,1fr) 130px 110px;padding:7px 16px;align-items:baseline}
  .mg-th{border-bottom:1.5px dashed rgba(255,255,255,.55)}
  .mg-tr2{border-bottom:1px dashed rgba(255,255,255,.3)}
  .mg-tr2 .mg-num{text-align:right}
  .mg-tk .mg-rows{padding:2px 16px 8px}
  .mg-tk .mg-foot{padding:8px 16px 12px}
}

/* ===== Vercel (nov 2026): logo en la banda de arriba ===== */
.wd-oculto{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
header .lk2{display:flex;align-items:center;gap:20px}
header .wdlogo{display:block;width:96px;height:auto;transform:rotate(-5deg);margin:4px 0 2px}
header .lk2 #today{margin-top:0}
@media (max-width:759px){
  header .lk2{justify-content:space-between;gap:12px;margin-top:-2px}
  header .lk2 #today{order:-1;margin-top:2px}
  header .wdlogo{width:60px;margin:0 2px 0 0}
}
