/* FOURMI THINK — Professor: entradas e saídas mais claras (teacher-ledger.js). Só no Professor. */
body:is([data-profession="teacher"],[data-profession="trainer"]) #finance-screen .finance-movements-heading,body:is([data-profession="teacher"],[data-profession="trainer"]) #finance-screen #finance-movements{display:none}
body:not([data-profession="teacher"]):not([data-profession="trainer"]) .tlg,body:not([data-profession="teacher"]):not([data-profession="trainer"]) .tlg-hero{display:none!important}
.tlg svg,.tlg-hero svg,.tlg-dialog svg,.tlg-ic svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* Topo: sobrou, entrou, saiu */
.tlg-hero{text-align:center}
.tlg-hero>small{display:block}
.tlg-net{display:block;margin:2px 0 12px;font-family:Literata,Georgia,"Iowan Old Style",serif;font-size:2.3rem;font-weight:700;line-height:1.1;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.tlg-net.is-negative{color:var(--tfi-red)}
.tlg-io{display:grid;grid-template-columns:1fr 1fr;gap:10px;text-align:left}
.tlg-io button{display:flex;align-items:center;gap:8px;min-width:0;min-height:62px;padding:10px 9px;border:0;border-radius:18px}
.tlg-io button>span:first-child{flex:none;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;color:#fff}
.tlg-io button>span:first-child svg{width:18px;height:18px;stroke-width:2.4}
.tlg-io button>span:last-child{display:grid;min-width:0}
.tlg-io small{color:var(--tfi-muted);font-size:.72rem;font-weight:750}
.tlg-io b{font-size:.95rem;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;line-height:1.2}
.tlg-io .is-in{background:#e6f3ec}.tlg-io .is-in>span:first-child{background:#2f9a62}.tlg-io .is-in b{color:#14663f}
.tlg-io .is-out{background:#f8e6e1}.tlg-io .is-out>span:first-child{background:#c9533c}.tlg-io .is-out b{color:#9c3523}
.tlg-split{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 10px;margin-top:12px;padding-top:10px;border-top:1px dashed var(--tfi-line);color:var(--tfi-muted);font-size:.78rem;font-weight:650;text-align:left}
.tlg-split b{color:var(--tfi-ink);font-variant-numeric:tabular-nums}
.tlg-split button{padding:0;border:0;background:none;color:var(--tfi-muted)!important;font-size:inherit;font-weight:inherit}
.tlg-expected{margin:8px 0 0;color:var(--tfi-muted);font-size:.74rem}

/* Movimentações */
.tlg{display:grid;gap:10px;margin-top:6px}
.tlg-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:0 4px}
.tlg-head h3{margin:0;font-size:1.05rem}
.tlg-head small{color:var(--tfi-muted);font-size:.76rem;font-weight:700}
.tlg-seg{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;border-radius:14px;background:#ece5d5}
.tlg-seg button{min-height:40px;border:0;border-radius:10px;background:transparent;color:var(--tfi-muted)!important;font-size:.84rem;font-weight:800}
.tlg-seg button[aria-pressed="true"]{background:var(--tfi-paper);color:var(--tfi-ink)!important;box-shadow:0 2px 6px rgba(0,0,0,.08)}
.tlg-search{display:flex;align-items:center;gap:8px;min-height:46px;margin:0;padding:0 12px;border:1px solid var(--tfi-line);border-radius:14px;background:var(--tfi-paper);color:var(--tfi-muted)}
.tlg-search input{flex:1;min-width:0;margin:0;padding:10px 0;border:0;background:transparent;box-shadow:none;font-size:16px;outline:none}
.tlg-body{display:grid;gap:6px}
.tlg-day{display:flex;justify-content:space-between;gap:10px;margin:8px 6px 0;color:var(--tfi-muted);font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.tlg-day em{font-style:normal;letter-spacing:0;text-transform:none;color:#14663f;font-variant-numeric:tabular-nums}.tlg-day em.is-out{color:#9c3523}
.tlg-list{overflow:hidden;border:1px solid var(--tfi-line);border-radius:18px;background:var(--tfi-paper)}
.tlg-row{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;min-height:62px;margin:0;padding:10px 12px;border:0;border-bottom:1px solid #f0eadc;background:transparent;text-align:left}
.tlg-row:last-child{border-bottom:0}
.tlg-copy{display:grid;min-width:0}
.tlg-copy strong{overflow:hidden;font-size:.92rem;text-overflow:ellipsis;white-space:nowrap}
.tlg-copy small{overflow:hidden;color:var(--tfi-muted,#5d6b65);font-size:.74rem;text-overflow:ellipsis;white-space:nowrap}
.tlg-amt{font-size:.92rem;font-variant-numeric:tabular-nums;white-space:nowrap}.tlg-amt.is-in{color:#14663f}.tlg-amt.is-out{color:#9c3523}
.tlg-ic{display:grid;place-items:center;width:40px;height:40px;border-radius:13px}
.tlg-ic.is-green{background:#e3f1e8;color:#1f7a50}.tlg-ic.is-red{background:#f8e1db;color:#b4432f}.tlg-ic.is-gold{background:#fbefd0;color:#8a6410}.tlg-ic.is-plum{background:#efe6f6;color:#6b3f8f}.tlg-ic.is-blue{background:#e4ecf7;color:#2c5d9a}.tlg-ic.is-gray{background:#efebe2;color:#5d6b65}
.tlg-more{min-height:44px;border:0;background:none;color:#053d2e!important;font-weight:800}
.tlg-empty{margin:0;padding:18px 14px;border:1.5px dashed #ddd8c9;border-radius:16px;color:var(--tfi-muted);font-size:.86rem;text-align:center}
.tlg-cats{display:flex;align-items:center;gap:14px;padding:14px;border:1px solid var(--tfi-line);border-radius:20px;background:var(--tfi-paper)}
.tlg-donut{flex:none;display:grid;place-items:center;width:96px;height:96px;border-radius:50%}
.tlg-donut>div{display:grid;place-items:center;align-content:center;width:64px;height:64px;border-radius:50%;background:var(--tfi-paper);text-align:center}
.tlg-donut small{color:var(--tfi-muted);font-size:.66rem;font-weight:700}.tlg-donut b{font-size:.74rem;font-variant-numeric:tabular-nums}
.tlg-cats ul{flex:1;display:grid;gap:6px;min-width:0;margin:0;padding:0;list-style:none}
.tlg-cats li{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:8px;font-size:.82rem;font-weight:750}
.tlg-cats li span{display:flex;align-items:center;gap:6px;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.tlg-cats li i{flex:none;width:8px;height:8px;border-radius:50%}
.tlg-cats li small{grid-column:1/-1;color:var(--tfi-muted);font-size:.7rem;font-weight:650;padding-left:14px}

/* Detalhe */
.tlg-dialog{--d-paper:#fffdf8;--d-cream:#f7f3ea;--d-line:#e9e1cf;--d-ink:#13261f;--d-muted:#5d6b65;width:min(calc(100% - 20px),440px);padding:0;border:0;border-radius:26px;background:var(--d-cream);color:var(--d-ink)}
.tlg-dialog::backdrop{background:rgba(3,36,29,.55)}
@media(max-width:599px){.tlg-dialog{width:100%;max-width:100%;margin:auto 0 0;border-radius:26px 26px 0 0;padding-bottom:env(safe-area-inset-bottom,0px)}}
.tlg-d{display:grid;gap:12px;padding:12px 16px 20px}
.tlg-d-head{position:relative;display:grid;justify-items:center;gap:4px;padding:6px 0 4px;text-align:center}
.tlg-grab{width:42px;height:5px;margin-bottom:8px;border-radius:9px;background:#d6cdb9}
.tlg-d-close{position:absolute;top:4px;right:0;width:38px;height:38px;border:0;border-radius:50%;background:#ece5d5;color:var(--d-ink);font-size:1.2rem;cursor:pointer}
.tlg-ic.is-big{width:56px;height:56px;border-radius:18px;margin-bottom:4px}.tlg-ic.is-big svg{width:26px;height:26px}
.tlg-d-head small{color:var(--d-muted);font-size:.82rem;font-weight:700}
.tlg-d-head h2{margin:0;font-family:Literata,Georgia,"Iowan Old Style",serif;font-size:2rem;font-weight:700;font-variant-numeric:tabular-nums}
.tlg-d-head h2.is-in{color:#14663f}.tlg-d-head h2.is-out{color:#9c3523}
.tlg-kv{margin:0;padding:2px 14px;border:1px solid var(--d-line);border-radius:18px;background:var(--d-paper)}
.tlg-kv div{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid #f0eadc;font-size:.9rem}
.tlg-kv div:last-child{border-bottom:0}
.tlg-kv dt{color:var(--d-muted)}.tlg-kv dd{margin:0;font-weight:750;text-align:right;overflow-wrap:anywhere}
.tlg-kv dd.is-note{width:100%;color:#8a6410;font-size:.82rem;text-align:left}
.tlg-btns{display:grid;grid-template-columns:1fr 1fr;gap:8px}.tlg-btns.is-one{grid-template-columns:1fr}
.tlg-btn{min-height:48px;margin:0;border:1px solid var(--d-line);border-radius:14px;background:var(--d-paper);color:var(--d-ink);font:inherit;font-weight:800;cursor:pointer}
.tlg-btn.is-primary{border:0;background:#053d2e;color:#fffdf8}
.tlg-btn.is-danger{border:0;background:#b4432f;color:#fff}
.tlg-btn.is-danger-text{color:#9c3523}
.tlg-btn:focus-visible,.tlg-d-close:focus-visible{outline:3px solid #f2c230;outline-offset:2px}
.tlg-warn{margin:0;padding:10px 12px;border-radius:14px;background:#f8e6e1;color:#7d2a1b;font-size:.86rem;font-weight:650}
.tlg-hint{margin:0;color:var(--d-muted);font-size:.8rem;text-align:center}
.tlg-form{display:grid;gap:10px}
.tlg-form label{display:grid;gap:4px;margin:0;font-size:.8rem;font-weight:800;color:var(--d-ink)}
.tlg-form input,.tlg-form select{width:100%;min-width:0;margin:0;border-radius:12px;font-size:16px}
.tlg-two{display:grid;grid-template-columns:1fr 1fr;gap:8px}
@media(max-width:350px){.tlg-io{grid-template-columns:1fr}.tlg-cats{flex-direction:column;align-items:stretch}.tlg-donut{margin:0 auto}.tlg-two{grid-template-columns:1fr}}

/* Evolução: entrou × saiu, de onde veio e para onde foi */
.tev-io{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:6px}
.tev-io>button{position:relative;width:100%;border:0;color:inherit;font:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent}
.tev-io>button:active{transform:scale(.98)}
.tev-io>button:focus-visible,.tev-mini-row:focus-visible{outline:3px solid #f2c230;outline-offset:2px}
.tev-io-chev{margin-left:auto;font-style:normal;color:rgba(255,253,248,.55);font-size:1.1rem}
.tev-io>button{display:flex;align-items:center;gap:9px;min-width:0;padding:9px 10px;border-radius:16px;background:rgba(255,255,255,.08)}
.tev-io>button>span:first-child{flex:none;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;color:#fff}
.tev-io>button>span svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.tev-io .is-in>span:first-child{background:#2f9a62}.tev-io .is-out>span:first-child{background:#c9533c}
.tev-io>button>span:last-child{display:grid;min-width:0}
.tev-io small{display:block;color:rgba(255,253,248,.65);font-size:.7rem;font-weight:700}
.tev-io b{display:block;font-size:.98rem;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.tev-io .is-in b{color:#9ee0b9}.tev-io .is-out b{color:#f2a996}
.tev-two{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.tev-mini{display:grid;align-content:start;gap:6px;min-width:0;padding:12px;border:1px solid var(--tev-line);border-radius:18px;background:var(--tev-paper)}
.tev-mini h4{margin:0 0 2px;font-size:.84rem}
.tev-mini-row{width:100%;padding:5px 2px;border:0;border-bottom:1px dashed var(--tev-line);background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}
.tev-mini-row:last-of-type{border-bottom:0}
.tev-mini :is(p,.tev-mini-row){display:flex;flex-wrap:wrap;justify-content:space-between;gap:0 6px;margin:0;font-size:.78rem;font-weight:750}
.tev-mini :is(p,.tev-mini-row) span{display:flex;align-items:center;gap:5px;min-width:0;overflow:hidden;color:var(--tev-muted);white-space:nowrap;text-overflow:ellipsis}
.tev-mini :is(p,.tev-mini-row) i{flex:none;width:7px;height:7px;border-radius:50%}
.tev-mini :is(p,.tev-mini-row) b{font-variant-numeric:tabular-nums;white-space:nowrap}
.tev-mini .tev-src-bar{height:7px;margin-top:4px}
.tev-mini .tev-muted{margin:0;font-size:.76rem}
.tev-big{display:grid;gap:8px}
.tev-big .tlg-list{border-color:var(--tev-line);background:var(--tev-paper)}
.tev-card.tev-big .tlg-list{border:0;border-radius:0;background:transparent}
.tev-card.tev-big .tlg-row{padding-inline:0}
@media(max-width:350px){.tev-two{grid-template-columns:1fr}}

.tlg-d-back{position:absolute;top:4px;left:0;height:38px;padding:0 12px;border:0;border-radius:19px;background:#ece5d5;color:var(--d-ink);font:inherit;font-size:.86rem;font-weight:800;cursor:pointer}
.tlg-d-back:focus-visible{outline:3px solid #f2c230;outline-offset:2px}
.tlg-list.is-sheet{max-height:60vh;overflow:auto;margin-top:10px}
