*{box-sizing:border-box;margin:0;padding:0}:root{--brand-navy:#1a3c6e;--brand-navy-hover:#122b52;--brand-navy-light:#2563eb;--brand-gold:#f5a623;--text:#1f2937;--muted:#8896a7;--surface:#fff;--bg:#f0f4fa;--border:#e5e9f0;--border-light:#f0f4fa}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg);color:var(--text);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}.login-overlay{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#0f2a4d,#1a3c6e 40%,#2563eb);padding:20px}.login-card{background:var(--surface);border-radius:28px;padding:48px 40px;width:100%;max-width:440px;box-shadow:0 32px 64px rgba(0,0,0,.25),0 0 0 1px hsla(0,0%,100%,.08);animation:loginSlide .6s ease}@keyframes loginSlide{0%{opacity:0;transform:translateY(24px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.login-header{text-align:center;margin-bottom:32px}.login-badge{width:72px;height:72px;border-radius:22px;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;margin-bottom:16px;box-shadow:0 8px 24px rgba(26,60,110,.3);background:#fff;padding:4px}.login-header h1{font-size:26px;font-weight:800;color:#1a3c6e;letter-spacing:-.02em}.logo-icon{width:42px;height:42px;border-radius:14px;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;box-shadow:0 4px 12px rgba(245,166,35,.3);background:#fff;padding:2px}.sidebar-brand h1{font-size:17px;font-weight:800;letter-spacing:-.01em}.topbar-logo{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:10px;overflow:hidden;flex-shrink:0;background:#fff;box-shadow:0 2px 8px rgba(26,60,110,.15);padding:2px}.brand-logo-img{width:100%;height:100%;object-fit:cover;border-radius:inherit;display:block}.login-header p{font-size:14px;color:var(--muted);margin-top:4px;font-weight:500}.login-error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:12px 16px;border-radius:12px;font-size:13px;font-weight:600;display:flex;align-items:center;gap:8px;margin-bottom:20px}.login-form{display:flex;flex-direction:column;gap:18px}.login-actions{margin-top:8px}.login-actions .btn{width:100%;justify-content:center}.login-hint{text-align:center;font-size:12px;color:var(--muted);margin-top:24px;padding-top:20px;border-top:1px solid var(--border);line-height:1.7}.app-shell{display:flex;min-height:100vh}.sidebar{width:260px;background:linear-gradient(180deg,#0f2a4d,#1a3c6e);color:#fff;display:flex;flex-direction:column;position:fixed;top:0;left:0;height:100vh;z-index:100;transition:transform .35s cubic-bezier(.4,0,.2,1)}.sidebar-brand{display:flex;align-items:center;gap:12px;padding:24px 20px 20px;border-bottom:1px solid hsla(0,0%,100%,.08)}.sidebar-brand p{font-size:11px;opacity:.5;font-weight:500;margin-top:1px}.sidebar nav{flex:1 1;overflow-y:auto;padding:12px 0}.nav-group{margin-bottom:8px}.nav-label{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;padding:8px 24px 6px;opacity:.35}.nav-item{display:flex;align-items:center;gap:12px;padding:11px 24px;cursor:pointer;font-size:13.5px;font-weight:600;transition:all .2s;border-left:3px solid transparent;color:hsla(0,0%,100%,.65)}.nav-item:hover{background:hsla(0,0%,100%,.06);color:#fff}.nav-item.active{background:rgba(245,166,35,.12);color:#f5a623;border-left-color:#f5a623}.nav-item i{font-size:18px;width:20px;text-align:center}.sidebar-footer{padding:16px 20px;border-top:1px solid hsla(0,0%,100%,.08)}.sidebar-footer button{width:100%;padding:10px;border-radius:12px;border:1px solid hsla(0,0%,100%,.12);background:hsla(0,0%,100%,.04);color:hsla(0,0%,100%,.7);font-size:13px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s;font-family:inherit}.sidebar-footer button:hover{background:hsla(0,0%,100%,.1);color:#fff}.main-area{flex:1 1;margin-left:260px;display:flex;flex-direction:column;min-height:100vh}.topbar{display:flex;align-items:center;justify-content:space-between;padding:16px 28px;background:var(--surface);border-bottom:1px solid var(--border);position:-webkit-sticky;position:sticky;top:0;z-index:50}.topbar h2{font-size:16px;font-weight:700;color:var(--text)}.topbar-right{display:flex;align-items:center;gap:12px}.badge-live{padding:5px 12px;border-radius:20px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:11px;font-weight:700;letter-spacing:.03em;animation:livePulse 2s infinite}@keyframes livePulse{0%,to{opacity:1}50%{opacity:.7}}.topbar-date{font-size:13px;color:var(--muted);font-weight:600}.menu-toggle{display:none;background:none;border:none;font-size:22px;cursor:pointer;color:var(--text);padding:4px}.content{padding:24px 28px 40px;flex:1 1}.page{animation:pageIn .4s ease}@keyframes pageIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.card{background:var(--surface);border-radius:20px;border:1px solid var(--border);overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.04)}.card-head{justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--border);flex-wrap:wrap;gap:12px}.card-head,.card-title{display:flex;align-items:center}.card-title{font-size:14.5px;font-weight:700;gap:8px;color:var(--text)}.card-title i{font-size:18px;color:#1a3c6e}.card-subtitle{font-size:12px;color:var(--muted);font-weight:600}.card-body{padding:18px 22px}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:14px;gap:14px;margin-bottom:20px}.kpi-card{background:var(--surface);border-radius:18px;padding:22px 20px;border:1px solid var(--border);transition:all .3s;position:relative;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.04)}.kpi-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px}.kpi-card.green:before{background:linear-gradient(90deg,#1a3c6e,#2563eb)}.kpi-card.gold:before{background:linear-gradient(90deg,#f5a623,#fbbf24)}.kpi-card.emerald:before{background:linear-gradient(90deg,#10b981,#059669)}.kpi-card.blue:before{background:linear-gradient(90deg,#3b82f6,#2563eb)}.kpi-card.purple:before{background:linear-gradient(90deg,#8b5cf6,#7c3aed)}.kpi-card.amber:before{background:linear-gradient(90deg,#f59e0b,#d97706)}.kpi-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.08)}.kpi-label{font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;display:flex;align-items:center;gap:6px;margin-bottom:8px}.kpi-label i{font-size:16px}.kpi-value{font-size:28px;font-weight:900;color:#1a3c6e;letter-spacing:-.02em;line-height:1.1}.kpi-sub{font-size:12px;color:var(--muted);font-weight:600;margin-top:6px;display:flex;align-items:center;gap:4px}.kpi-sub.up{color:#10b981}.grid-2{margin-bottom:16px}.grid-2,.grid-2-equal{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.chart-box{height:300px;position:relative}.chart-loading{display:flex;align-items:center;justify-content:center;height:300px;color:var(--muted);font-size:14px;font-weight:600}.table-wrap{overflow-x:auto}.mini-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px}.mini-table thead th{padding:12px 14px;text-align:left;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);background:var(--bg);border-bottom:1px solid var(--border);white-space:nowrap;position:-webkit-sticky;position:sticky;top:0}.mini-table tbody td{padding:12px 14px;border-bottom:1px solid var(--border-light);color:var(--text);vertical-align:middle}.mini-table tbody tr:hover{background:rgba(26,60,110,.02)}.mini-table tbody tr:last-child td{border-bottom:none}.mini-table .name{font-weight:700}.mini-table .amount{font-weight:800;color:#1a3c6e;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pill{display:inline-flex;align-items:center;padding:4px 10px;border-radius:8px;font-size:11px;font-weight:700;white-space:nowrap}.pill-new{background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe}.pill-contacted{background:#fffbeb;color:#d97706;border:1px solid #fde68a}.pill-interested{background:#ecfdf5;color:#059669;border:1px solid #a7f3d0}.pill-not-attended{background:#fff7ed;color:#c2410c;border:1px solid #fdba74}.pill-disconnected{background:#f1f5f9;color:#475569;border:1px solid #cbd5e1}.pill-payment-pending{background:#ecfdf5;color:#047857;border:1px solid #6ee7b7}.pill-admitted{background:#f5f3ff;color:#7c3aed;border:1px solid #c4b5fd}.pill-lost{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.pill-source{background:#f0f4fa;color:#1a3c6e;border:1px solid #d4dce8;font-size:10px}.form-card{background:var(--surface);border-radius:20px;border:1px solid var(--border);padding:28px;box-shadow:0 1px 3px rgba(0,0,0,.04)}.form-section{font-size:15px;font-weight:700;color:var(--text);display:flex;align-items:center;gap:8px;margin-bottom:20px;padding-bottom:12px;border-bottom:2px solid var(--bg)}.form-section i{color:#1a3c6e;font-size:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group.full{grid-column:1/-1}.form-group label{font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.form-control{padding:11px 14px;border:1.5px solid var(--border);border-radius:12px;font-size:14px;font-family:inherit;color:var(--text);background:var(--surface);outline:none;transition:border-color .2s,box-shadow .2s;width:100%}.form-control:focus{border-color:#1a3c6e;box-shadow:0 0 0 3px rgba(26,60,110,.08)}textarea.form-control{min-height:90px;resize:vertical}select.form-control{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%238896A7' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}.submit-bar{display:flex;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid var(--border-light)}.btn,.submit-bar{align-items:center}.btn{display:inline-flex;gap:8px;padding:11px 22px;border-radius:12px;font-size:14px;font-weight:700;cursor:pointer;transition:all .25s;border:none;font-family:inherit}.btn-primary{background:linear-gradient(135deg,#1a3c6e,#2563eb);color:#fff;box-shadow:0 4px 14px rgba(26,60,110,.25)}.btn-primary:hover{background:linear-gradient(135deg,#122b52,#1d4ed8);box-shadow:0 6px 20px rgba(26,60,110,.35);transform:translateY(-1px)}.btn-ghost{background:var(--surface);color:var(--text);border:1.5px solid var(--border)}.btn-ghost:hover{border-color:#1a3c6e;color:#1a3c6e}.btn-danger{background:linear-gradient(135deg,#dc2626,#b91c1c);color:#fff}.btn-sm{padding:7px 12px;font-size:12px}.toolbar{display:flex;align-items:center;gap:12px;margin-bottom:16px;flex-wrap:wrap}.search-input{flex:1 1;min-width:200px;padding:10px 16px;border:1.5px solid var(--border);border-radius:12px;font-size:13px;font-family:inherit;outline:none;background:var(--bg);color:var(--text);transition:border-color .2s}.search-input:focus{border-color:#1a3c6e;background:var(--surface);box-shadow:0 0 0 3px rgba(26,60,110,.06)}.redirect-card{background:var(--surface);border-radius:20px;border:1px solid var(--border);padding:48px 32px;text-align:center}.redirect-card i.big{font-size:48px;color:#1a3c6e;margin-bottom:16px;display:block}.redirect-card h3{font-size:18px;font-weight:700;margin-bottom:8px}.redirect-card p{font-size:14px;color:var(--muted);margin-bottom:24px;max-width:400px;margin-left:auto;margin-right:auto;line-height:1.7}.settings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:16px;gap:16px}.settings-card{background:var(--surface);border-radius:18px;border:1px solid var(--border);padding:24px}.settings-card h3{font-size:14px;font-weight:700;margin-bottom:16px;display:flex;align-items:center;gap:8px;color:var(--text)}.settings-card h3 i{color:#1a3c6e}.info-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--border-light)}.info-row:last-child{border-bottom:none}.info-label{font-size:13px;color:var(--muted);font-weight:600}.info-value{font-size:13px;font-weight:700;color:var(--text)}.toast-container{position:fixed;bottom:24px;right:24px;z-index:9999;display:flex;flex-direction:column;gap:10px}.toast-item{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:14px 18px;display:flex;align-items:center;gap:12px;box-shadow:0 12px 32px rgba(0,0,0,.12);transform:translateX(120%);opacity:0;transition:all .4s cubic-bezier(.4,0,.2,1);min-width:300px}.toast-item.show{transform:translateX(0);opacity:1}.toast-item i{font-size:22px;color:#10b981;flex-shrink:0}.toast-item strong{font-size:13px;font-weight:700;display:block}.toast-item p{font-size:12px;color:var(--muted);margin-top:2px}.time-filter-bar{display:flex;align-items:center;gap:8px;margin-bottom:22px;flex-wrap:wrap}.time-tab{padding:9px 20px;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--muted);font-size:13px;font-weight:700;cursor:pointer;transition:all .25s;font-family:inherit;-webkit-user-select:none;-moz-user-select:none;user-select:none}.time-tab:hover{border-color:#1a3c6e;color:#1a3c6e;background:rgba(26,60,110,.04)}.time-tab.active{background:linear-gradient(135deg,#1a3c6e,#2563eb);color:#fff;border-color:#1a3c6e;box-shadow:0 4px 14px rgba(26,60,110,.25)}.date-range-picker{display:flex;align-items:center;gap:8px;margin-left:8px}.date-range-picker input{padding:8px 12px;border:1px solid var(--border);border-radius:10px;font-family:inherit;font-size:13px;outline:none;background:var(--surface);color:var(--text);transition:border-color .2s}.date-range-picker input:focus{border-color:#1a3c6e;box-shadow:0 0 0 3px rgba(26,60,110,.06)}.date-range-picker .separator{color:var(--muted);font-size:13px;font-weight:500}.ledger-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.ledger-stats{display:flex;gap:16px;flex-wrap:wrap}.ledger-stat{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 18px;border-radius:14px;background:var(--bg);border:1px solid var(--border-light)}.ledger-stat .stat-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.ledger-stat .stat-value{font-size:16px;font-weight:800;color:#1a3c6e}@media (max-width:1024px){.grid-2,.grid-2-equal{grid-template-columns:1fr}}@media (max-width:768px){.sidebar{transform:translateX(-100%)}.sidebar-open .sidebar{transform:translateX(0)}.main-area{margin-left:0}.menu-toggle{display:flex}.content{padding:16px}.topbar{padding:12px 16px}.kpi-grid{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.kpi-value{font-size:22px}.login-card{padding:32px 24px}.time-filter-bar{gap:6px}.time-tab{padding:7px 14px;font-size:12px}.date-range-picker{width:100%;margin-left:0;margin-top:8px}.ledger-stats{width:100%}.ledger-stat{flex:1 1;min-width:80px}}@media (max-width:480px){.kpi-grid,.settings-grid{grid-template-columns:1fr}.toolbar{flex-direction:column}.search-input{width:100%}}