
:root{--acv-green:#032d1d;--acv-green2:#06452d;--acv-gold:#d5a82c;--acv-ivory:#f7f3e9;--acv-text:#172019;--acv-muted:#778078;--acv-border:#e6e3db}
.acv-app{display:flex;min-height:100vh;background:#f8f8f6;color:var(--acv-text);font-family:Inter,Arial,sans-serif;margin:0 -20px}
.acv-sidebar{width:235px;background:linear-gradient(180deg,#032d1d,#021f15);color:#fff;padding:25px 16px;box-sizing:border-box;position:sticky;top:0;height:100vh}
.acv-brand{display:flex;gap:10px;align-items:center;padding:8px 8px 28px;border-bottom:1px solid rgba(255,255,255,.12)}
.acv-logo{width:42px;height:42px;border:1px solid var(--acv-gold);border-radius:50%;display:grid;place-items:center;color:var(--acv-gold);font:28px Georgia,serif}
.acv-brand strong{display:block;font:17px Georgia,serif;letter-spacing:2px}.acv-brand span{display:block;font-size:8px;letter-spacing:1.5px;color:#c9d0cb;margin-top:4px}
.acv-sidebar nav{padding-top:22px}.acv-sidebar nav a{display:block;color:#e9eee9;text-decoration:none;padding:12px 12px;border-radius:8px;margin:3px 0;font-size:14px}.acv-sidebar nav a.active,.acv-sidebar nav a:hover{background:rgba(213,168,44,.18);color:#f2cc5d}.acv-sidebar hr{border:0;border-top:1px solid rgba(255,255,255,.12);margin:16px 5px}
.acv-sidebar-bottom{position:absolute;bottom:25px;left:24px;font:12px Georgia,serif;line-height:1.8;letter-spacing:1px;color:#aeb9b1}.acv-sidebar-bottom b{color:#e1b73d}
.acv-main{flex:1;min-width:0}.acv-topbar{height:72px;background:#fff;border-bottom:1px solid var(--acv-border);display:flex;align-items:center;justify-content:space-between;padding:0 34px;box-sizing:border-box}.acv-title{font:24px Georgia,serif;letter-spacing:1px}.acv-topbar small{color:var(--acv-muted);letter-spacing:2px;font-size:9px}.acv-user{font-weight:600}
.acv-content{padding:34px;max-width:1450px;margin:auto}.acv-heading-row{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:24px}.acv-heading-row h1{font:34px Georgia,serif;margin:0}.acv-heading-row p{margin:5px 0;color:var(--acv-muted)}
.acv-company-picker{display:flex;align-items:center;gap:10px}.acv-company-picker label{font-size:12px;color:var(--acv-muted)}.acv-company-picker select{min-width:220px;padding:12px 38px 12px 14px;border:1px solid var(--acv-border);border-radius:8px;background:#fff}
.acv-cards{display:grid;grid-template-columns:repeat(6,1fr);gap:13px}.acv-card{background:#fff;border:1px solid var(--acv-border);border-radius:12px;padding:18px;display:flex;gap:12px;align-items:center;min-height:90px;box-shadow:0 2px 8px rgba(0,0,0,.025)}.acv-card-icon{font-size:23px}.acv-card span{display:block;color:#667069;font-size:11px;margin-bottom:8px}.acv-card strong{display:block;font:21px Georgia,serif}.acv-card.green{border-top:3px solid #2d9560}.acv-card.red{border-top:3px solid #dc514b}.acv-card.gold{border-top:3px solid #c9a03a}.acv-card.orange{border-top:3px solid #e78b24}.acv-card.blue{border-top:3px solid #4e8490}.acv-card.purple{border-top:3px solid #8c70a5}
.acv-actions{display:flex;gap:10px;justify-content:flex-end;margin:18px 0}.acv-btn{border:0;border-radius:8px;padding:12px 18px;font-weight:700;cursor:pointer}.acv-btn.dark{background:var(--acv-green);color:#fff}.acv-btn.gold{background:var(--acv-gold);color:#172019}.acv-btn.light{background:#fff;border:1px solid #d7d3c9;color:#233028}
.acv-grid-two{display:grid;grid-template-columns:1.25fr 1fr;gap:18px;margin-bottom:18px}.acv-panel{background:#fff;border:1px solid var(--acv-border);border-radius:12px;padding:20px;box-shadow:0 2px 8px rgba(0,0,0,.025);margin-bottom:18px}.acv-panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.acv-panel-head h2{font:21px Georgia,serif;margin:0}.acv-panel-head span{color:var(--acv-muted);font-size:12px}.acv-panel-head>strong{font:20px Georgia,serif}
.acv-table-wrap{overflow:auto}.acv-panel table{width:100%;border-collapse:collapse;font-size:12px}.acv-panel th{text-align:left;color:#788078;font-size:10px;text-transform:uppercase;letter-spacing:.7px;padding:10px;border-bottom:1px solid var(--acv-border)}.acv-panel td{padding:12px 10px;border-bottom:1px solid #f0eee9;white-space:nowrap}.acv-panel td small,.acv-list-row small{display:block;color:#879087;font-size:10px;margin-top:3px}.positive{color:#15824d;font-weight:700}.negative{color:#d84943;font-weight:700}.acv-pill{font-size:10px;border-radius:20px;padding:4px 7px}.acv-pill.income{background:#e7f5ed;color:#187448}.acv-pill.expense{background:#fbe8e7;color:#b93630}.empty{text-align:center;color:#89928b}
.acv-list{display:flex;flex-direction:column}.acv-list-row{display:grid;grid-template-columns:1fr auto auto;gap:14px;align-items:center;padding:13px 0;border-bottom:1px solid #f0eee9}.acv-list-row strong{font:17px Georgia,serif;display:block;text-align:right}.acv-mini{border:1px solid #ddd8cb;background:var(--acv-ivory);border-radius:6px;padding:7px 9px;font-size:10px;font-weight:700;cursor:pointer}.acv-empty-box{padding:22px;text-align:center;color:#89928b;background:#faf9f6;border-radius:8px}
.acv-bank-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.acv-bank{border:1px solid var(--acv-border);border-radius:9px;padding:15px;display:flex;align-items:center;gap:10px}.acv-bank span{font-size:24px}.acv-bank div{flex:1}.acv-bank b{display:block}.acv-bank small{display:block;color:var(--acv-muted);font-size:10px;margin-top:4px}.acv-bank strong{font:18px Georgia,serif}
.acv-modal{display:none;position:fixed;z-index:99999;inset:0;background:rgba(0,0,0,.55);align-items:center;justify-content:center;padding:20px}.acv-modal.open{display:flex}.acv-modal-card{background:#fff;border-radius:14px;max-width:760px;width:100%;max-height:90vh;overflow:auto;padding:28px;position:relative;box-sizing:border-box}.acv-modal-card h2{font:27px Georgia,serif;margin:0 0 20px}.acv-close{position:absolute;right:18px;top:14px;border:0;background:none;font-size:28px;cursor:pointer}.acv-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:18px}.acv-form-grid label{font-size:11px;font-weight:700;color:#536058}.acv-form-grid label.wide{grid-column:1/-1}.acv-form-grid input,.acv-form-grid select,.acv-form-grid textarea,.acv-login-card input{width:100%;box-sizing:border-box;margin-top:6px;padding:11px 12px;border:1px solid #ddd9cf;border-radius:7px;background:#fff;font:14px Arial}.acv-form-grid textarea{min-height:80px}.acv-form-message,.acv-login-message{margin-top:12px;font-size:12px}.acv-form-message.ok,.acv-login-message.ok{color:#167447}.acv-form-message.err,.acv-login-message.err{color:#bd3a34}
.acv-login-page{min-height:80vh;background:linear-gradient(135deg,#032d1d,#011e14);display:grid;place-items:center;padding:35px}.acv-login-card{background:#fff;width:min(420px,100%);border-radius:15px;padding:38px;box-sizing:border-box;text-align:center;box-shadow:0 20px 60px rgba(0,0,0,.2)}.acv-login-card .acv-logo{margin:auto}.acv-login-card h1{font:20px Georgia,serif;letter-spacing:2px;margin:15px 0 4px}.acv-login-card>p{font-size:10px;letter-spacing:2px;color:#7b827d}.acv-login-card hr{border:0;border-top:1px solid #e5e1d8;margin:25px 0}.acv-login-card h2{font:25px Georgia,serif;margin:0 0 5px}.acv-login-card>span{font-size:12px;color:#7b827d}.acv-login-card form{text-align:left;margin-top:25px}.acv-login-card label{display:block;font-size:11px;font-weight:700;margin-bottom:15px}.acv-login-card .acv-check{font-weight:400;display:flex;gap:8px;align-items:center}.acv-login-card .acv-check input{width:auto;margin:0}.acv-login-card .acv-btn{width:100%}
@media(max-width:1200px){.acv-cards{grid-template-columns:repeat(3,1fr)}.acv-bank-grid{grid-template-columns:1fr 1fr}}
@media(max-width:800px){.acv-app{margin:0;display:block}.acv-sidebar{position:relative;width:100%;height:auto;padding:12px}.acv-brand{padding-bottom:12px}.acv-sidebar nav{display:flex;overflow:auto;padding-top:10px;gap:4px}.acv-sidebar nav a{white-space:nowrap}.acv-sidebar hr,.acv-sidebar-bottom{display:none}.acv-content{padding:20px}.acv-topbar{padding:0 20px}.acv-cards{grid-template-columns:1fr 1fr}.acv-grid-two{grid-template-columns:1fr}.acv-heading-row{align-items:flex-start;flex-direction:column}.acv-actions{justify-content:flex-start;flex-wrap:wrap}.acv-bank-grid{grid-template-columns:1fr}}
@media(max-width:520px){.acv-cards{grid-template-columns:1fr}.acv-form-grid{grid-template-columns:1fr}.acv-form-grid label.wide{grid-column:auto}.acv-modal-card{padding:22px}.acv-title{font-size:18px}}
