.neg{color:var(--danger)!important}
 .pos{color:var(--ok)!important}
 .mut{color:var(--muted)!important}
.chip{display:inline-block;border-radius:999px;padding:3px 11px;font-size:.8rem;font-weight:700;background:var(--card-2);color:var(--muted);border:1px solid var(--border);white-space:nowrap}
.chip.hotel{background:var(--info-bg);color:var(--info);border-color:transparent}
.chip.visa{background:var(--gold-soft);color:var(--gold);border-color:transparent}
.chip.transport,.chip.in{background:var(--ok-bg);color:var(--ok);border-color:transparent}
.chip.out{background:var(--warn-bg);color:var(--warn);border-color:transparent}
.chip.leg{background:transparent;border-style:dashed}
.lines .ln{display:flex;justify-content:space-between;gap:12px;padding:9px 0;font-size:1rem;border-bottom:1px dashed var(--border)}
.lines .ln:last-child{border-bottom:0}
.lines .ln b{direction:ltr;font-variant-numeric:tabular-nums}
.lines .ln .totv{display:flex;flex-direction:column;align-items:flex-end;line-height:1.3}
.lines .ln .totv b{font-size:1.1rem}
.lines .ln .totv small{direction:ltr;font-size:.85rem;font-weight:700;opacity:.85}
.lines .ln.tot{font-weight:800;border-bottom:0;border-top:2px solid var(--gold);margin-top:4px;padding-top:8px}
.lines .ln.click{cursor:pointer}
.lines .ln.click:hover{color:var(--accent)}
.check{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:var(--radius-sm);font-weight:700}
.check.ok{background:var(--ok-bg);color:var(--ok)}
 .check.bad{background:var(--warn-bg);color:var(--warn)}
.banner{padding:11px 14px;border-radius:var(--radius-sm);background:var(--warn-bg);color:var(--warn);font-weight:700;font-size:.84rem}
.empty-msg{padding:28px 16px;text-align:center;color:var(--muted);font-size:.86rem}
/* entries page */
.entry-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}
.entry-btn{background:var(--card-2)!important;color:var(--ink);border:1px solid var(--border);border-inline-start:4px solid var(--gold);text-align:start;padding:14px 16px;display:flex;flex-direction:column;gap:4px;border-radius:var(--radius-sm);box-shadow:var(--shadow-card)}
.entry-btn b{font-size:1.1rem;color:var(--accent)}
.entry-btn span{font-size:.85rem;color:var(--muted);font-weight:400;font-family:var(--font-body)}
.entry-btn:hover{border-color:var(--gold);filter:none;transform:translateY(-1px)}
.entry-btn.in{border-inline-start-color:var(--ok)}
 .entry-btn.out{border-inline-start-color:var(--warn)}
.entry-btn.hotel,.entry-btn.visa,.entry-btn.transport,.entry-btn.service{border-inline-start-color:var(--accent)}
/* accounts panel */
.ptabs{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 12px}
.ptab{background:var(--card-2)!important;color:var(--ink);border:1px solid var(--border);padding:8px 14px;font-size:.92rem;border-radius:999px}
.ptab span{display:inline-block;min-width:22px;padding:0 6px;margin-inline-start:6px;border-radius:999px;background:var(--bg-2);color:var(--muted);font-size:.8rem}
.ptab.on{background:var(--accent-deep)!important;color:#fff;border-color:var(--accent-deep)}
:root:not([data-theme="dark"]) .ptab.on{background:#0e6b50!important}
.ptab.on span{background:rgba(255,255,255,.2);color:#fff}
.padd{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}
.padd input{flex:2 1 260px}
.padd select{flex:1 1 180px}
.padd button{flex:none}
@media (max-width:640px){.padd{grid-template-columns:1fr}}
/* control center */
details.control-panel{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-card);padding:16px 20px;margin-bottom:16px}
details.control-panel>summary{cursor:pointer;font-family:var(--font-display);font-weight:800;color:var(--accent);font-size:1.05rem;list-style:none}
details.control-panel>summary::-webkit-details-marker{display:none}
details.control-panel>summary::before{content:"▸ "}
details.control-panel[open]>summary::before{content:"▾ "}
