
:root{--bg:#F7F5F6;--surface:#fff;--alt:#FCF8FA;--nav:#6F234F;--nav2:#5D1D43;--primary:#A82469;--accent:#C53A7D;--soft:#F5E7EE;--success:#2E7D66;--success-soft:#E8F4F0;--warning:#A96D2A;--danger:#B64B59;--danger-soft:#F8E9EB;--text:#2B2430;--muted:#746A72;--border:#DED7DB;--grid:#EEE7EB;--shadow:0 8px 24px rgba(64,30,48,.06)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:"Segoe UI",Inter,system-ui,sans-serif;background:var(--bg);color:var(--text)}button,input,select,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}.money{font-variant-numeric:tabular-nums}.subtle{color:var(--muted);font-size:13px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.08em;color:var(--primary);text-transform:uppercase}.notice{padding:11px 14px;border-radius:8px;background:var(--success-soft);color:#235F4E;margin-bottom:12px}.notice.error{background:var(--danger-soft);color:var(--danger)}
.login{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,#F7F5F6,#F4E3EC)}.login-card{width:min(430px,100%);background:#fff;border:1px solid var(--border);border-radius:18px;padding:32px;box-shadow:var(--shadow)}.login-brand{display:flex;align-items:center;gap:10px;margin-bottom:26px}.login-brand img{width:50px;height:50px;border-radius:12px}.login-brand b{font-size:22px;color:var(--nav)}.login-brand span{color:var(--primary)}label{display:block;font-size:12px;font-weight:600;color:#655761;margin:10px 0 5px}input,select,textarea{width:100%;padding:10px 11px;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--text)}input:focus,select:focus,textarea:focus{outline:2px solid #E8BED3;border-color:var(--primary)}button{border:1px solid var(--border);background:#fff;color:var(--nav);padding:9px 13px;border-radius:8px;font-weight:600}button:hover{background:#F9EBF3}.primary{background:var(--primary);border-color:var(--primary);color:#fff}.primary:hover{background:#8D1E59}.danger{border-color:var(--danger);color:var(--danger)}
.topbar{height:82px;background:var(--nav);display:flex;align-items:center;padding:0 20px;color:#fff;position:sticky;top:0;z-index:30}.brand{display:flex;align-items:center;gap:9px;min-width:245px}.brand img{width:42px;height:42px;border-radius:8px}.brand strong{font-size:21px}.brand .cockpit{font-size:13px;color:#F1DCE7}.brand .version{font-size:10px;color:#DDB6CB}.header-actions{margin-left:auto;display:flex;gap:8px;align-items:center}.headbtn{background:transparent;color:#fff;border-color:transparent;padding:11px}.headbtn:hover{background:var(--nav2)}.statusbar{height:34px;background:#F4E3EC;color:#655761;display:flex;align-items:center;padding:0 18px;font-size:12px}.statusdot{color:var(--success);margin-right:7px}.shell{display:grid;grid-template-columns:235px minmax(0,1fr);min-height:calc(100vh - 116px)}.sidebar{background:#fff;border-right:1px solid var(--border);padding:14px 10px;position:sticky;top:116px;height:calc(100vh - 116px);overflow:auto}.navbtn{width:100%;text-align:left;border:0;background:transparent;color:#625760;padding:11px 12px;margin:2px 0}.navbtn.active{background:var(--primary);color:#fff}.main{padding:18px;min-width:0}.page-title{font-size:25px;font-weight:700;margin:0}.page-sub{color:var(--muted);margin:4px 0 18px}.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.toolbar{display:flex;gap:7px;flex-wrap:wrap}.cards{display:grid;grid-template-columns:repeat(6,minmax(150px,1fr));gap:10px}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:15px;box-shadow:var(--shadow)}.kpi-label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}.kpi-value{font-size:22px;font-weight:700;margin-top:7px}.section{margin-top:12px}.section-title{font-size:16px;font-weight:700;margin:0 0 10px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.forms{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:10px}.wide{grid-column:1/-1}.table-wrap{overflow:auto;border:1px solid var(--border);border-radius:9px;background:#fff}.table-wrap table{border-collapse:collapse;width:100%;min-width:850px}th,td{padding:10px 11px;border-bottom:1px solid var(--grid);text-align:left;font-size:12px;vertical-align:top}th{position:sticky;top:0;background:#F1E9ED;color:#4A3E46;font-weight:700;z-index:2}tr:hover td{background:#FFF9FC}.row-actions{display:flex;gap:5px;white-space:nowrap}.row-actions button{padding:6px 8px;font-size:11px}.activity-bar{display:flex;height:32px;border-radius:7px;overflow:hidden;background:#eee}.activity-seg{min-width:3px;color:#fff;display:grid;place-items:center;font-size:10px;font-weight:700;overflow:hidden;white-space:nowrap}.legend{display:flex;flex-wrap:wrap;gap:12px;margin-top:10px;font-size:12px}.swatch{width:11px;height:11px;border-radius:2px;display:inline-block;margin-right:5px}.cash-scroll{overflow:auto;padding-bottom:5px}.cash-row{display:flex;gap:12px;min-width:max-content}.month-card{width:250px;flex:0 0 250px}.month-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.mini-label{font-size:9px;color:var(--muted);text-transform:uppercase}.mini-value{font-weight:700;font-size:12px;margin-top:3px}.bars{height:115px;display:flex;align-items:flex-end;gap:12px;margin:14px 0 8px;padding:0 15px;border-bottom:1px solid var(--grid)}.bar{width:38px;border-radius:5px 5px 0 0;min-height:2px}.bar.in{background:var(--success)}.bar.out{background:var(--danger)}.bar.balance{background:var(--primary)}.json{max-height:350px;overflow:auto;background:#2B2430;color:#fff;padding:12px;border-radius:8px;font-size:11px}.pill{display:inline-block;padding:4px 7px;border-radius:999px;font-size:10px;background:var(--soft);color:var(--nav)}.pill.ok{background:var(--success-soft);color:var(--success)}.pill.warn{background:#FBF0DF;color:var(--warning)}.pill.bad{background:var(--danger-soft);color:var(--danger)}.action-list{margin:0;padding-left:19px}.action-list li{margin:7px 0}.mobile-nav{display:none}.modal{position:fixed;inset:0;background:rgba(43,36,48,.45);z-index:80;display:grid;place-items:center;padding:20px}.modal-box{background:#fff;width:min(800px,100%);max-height:85vh;overflow:auto;border-radius:14px;padding:20px}.modal-head{display:flex;justify-content:space-between;gap:10px}.details-list{display:grid;gap:6px}.detail-line{border-bottom:1px solid var(--grid);padding:8px 0;display:flex;justify-content:space-between;gap:14px}.sync-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.sync-card .source{font-weight:700;font-size:17px}.settings-tabs{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:12px}.note{background:#FCF8FA;border-left:3px solid var(--primary);padding:10px 12px;font-size:12px;color:#655761}.hamburger{display:none}
@media(max-width:1250px){.cards{grid-template-columns:repeat(3,1fr)}.forms{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.shell{grid-template-columns:1fr}.sidebar{position:fixed;left:-260px;top:116px;width:250px;z-index:50;transition:.2s;box-shadow:var(--shadow)}.sidebar.open{left:0}.hamburger{display:block}.brand{min-width:auto}.header-actions .text{display:none}.grid2,.grid3{grid-template-columns:1fr}.sync-grid{grid-template-columns:1fr}.main{padding:14px}}
@media(max-width:650px){.topbar{height:70px;padding:0 12px}.statusbar{height:30px;padding:0 12px}.shell{min-height:calc(100vh - 100px)}.sidebar{top:100px;height:calc(100vh - 100px)}.brand img{width:36px;height:36px}.brand strong{font-size:18px}.brand .cockpit{font-size:11px}.cards{grid-template-columns:repeat(2,1fr)}.forms{grid-template-columns:1fr}.main{padding:12px 10px 82px}.page-title{font-size:21px}.kpi-value{font-size:18px}.header-actions{gap:2px}.headbtn{padding:8px}.mobile-nav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:7px;right:7px;bottom:7px;background:#fff;border:1px solid var(--border);box-shadow:0 6px 24px rgba(70,30,52,.18);border-radius:13px;z-index:60;padding:6px}.mobile-nav button{border:0;background:transparent;font-size:9px;padding:7px 2px;color:var(--muted)}.mobile-nav button.active{color:var(--primary);font-weight:700}.month-card{width:230px;flex-basis:230px}.row-actions{min-width:420px}.hide-mobile{display:none}}
