:root{--bg:#030407;--bg-card:#0c0e14;--bg-sidebar:#060810;--bg-input:#0f1118;--text:#9ba3b2;--text-dim:#5c6370;--text-bright:#c0c8d4;--accent:#c0c8d4;--accent-light:#e0e4ea;--border:#1a1e28;--green:#22c55e;--yellow:#f59e0b;--red:#ef4444;--sans:"Inter", system-ui, -apple-system, sans-serif;--mono:"JetBrains Mono", ui-monospace, Consolas, monospace}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--sans);background:var(--bg);color:var(--text);font-size:14px;line-height:1.5}.app-layout{min-height:100vh;display:flex}.sidebar{background:var(--bg-sidebar);border-right:1px solid var(--border);z-index:10;flex-direction:column;width:220px;height:100vh;padding:20px 0;display:flex;position:fixed;top:0;left:0}.sidebar-brand{border-bottom:1px solid var(--border);flex-direction:column;gap:2px;margin-bottom:16px;padding:0 20px 24px;display:flex}.sidebar-brand span:first-of-type{color:var(--text-bright);letter-spacing:-.5px;font-size:18px;font-weight:700}.brand-dot{background:var(--accent);border-radius:50%;width:10px;height:10px;margin-bottom:8px;display:inline-block}.sidebar-brand small{color:var(--text-dim);text-transform:uppercase;letter-spacing:1.5px;font-size:11px}nav{flex-direction:column;flex:1;gap:2px;padding:0 8px;display:flex}.nav-link{color:var(--text-dim);border-radius:8px;align-items:center;gap:10px;padding:10px 12px;font-size:14px;text-decoration:none;transition:all .15s;display:flex}.nav-link:hover{color:var(--text);background:#c0c8d40f}.nav-link.active{color:var(--accent-light);background:#c0c8d41a;font-weight:500}.nav-icon{text-align:center;width:20px;font-size:16px}.sidebar-footer{border-top:1px solid var(--border);margin-top:auto;padding:16px 20px 0}.sidebar-footer small{color:var(--text-dim);text-transform:uppercase;letter-spacing:1px;font-size:11px}.sidebar-user{border-top:1px solid var(--border);justify-content:space-between;align-items:center;margin-top:auto;padding:12px 20px;display:flex}.sidebar-user span{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;max-width:140px;font-size:12px;overflow:hidden}.btn-signout{border:1px solid var(--border);color:var(--text-dim);cursor:pointer;background:0 0;border-radius:6px;padding:4px 10px;font-size:11px;transition:all .15s}.btn-signout:hover{border-color:var(--red);color:var(--red)}.main-content{flex:1;min-height:100vh;margin-left:220px}.page{max-width:1200px;padding:32px}.page-loading{text-align:center;color:var(--text-dim);padding:80px 32px;font-size:16px}.page-header{align-items:center;gap:16px;margin-bottom:24px;display:flex}.page-header h1{margin-bottom:0}.page-count{background:var(--bg-card);color:var(--text-dim);border-radius:20px;padding:4px 12px;font-size:12px}h1{color:var(--text-bright);letter-spacing:-.3px;margin-bottom:24px;font-size:24px;font-weight:600}h2{color:var(--text-bright);margin-bottom:16px;font-size:16px;font-weight:600}h3{color:var(--text-bright);margin-bottom:8px;font-size:14px;font-weight:600}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px;display:grid}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:20px}.stat-label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-size:12px}.stat-value{color:var(--text-bright);letter-spacing:-.5px;font-size:28px;font-weight:700}.stat-sub{color:var(--text-dim);margin-top:4px;font-size:12px}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;margin-bottom:20px;padding:24px}.dashboard-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}@media (width<=900px){.dashboard-grid{grid-template-columns:1fr}}.budget-bar-wrap{flex:1;align-items:center;gap:8px;display:flex}.budget-bar-track{background:var(--border);border-radius:4px;flex:1;height:8px;overflow:hidden}.budget-bar-fill{border-radius:4px;height:100%;transition:width .3s}.budget-bar-label{text-align:right;min-width:36px;font-size:12px;font-weight:600}.budget-list{flex-direction:column;gap:12px;display:flex}.budget-row{color:var(--text);border-radius:8px;align-items:center;gap:12px;padding:8px;text-decoration:none;transition:background .15s;display:flex}.budget-row:hover{background:#c0c8d40a}.budget-name{min-width:140px;color:var(--text-bright);font-size:13px;font-weight:500}.budget-amount{color:var(--text-dim);text-align:right;min-width:140px;font-size:11px}.client-meta{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;flex-wrap:wrap;gap:16px;margin-bottom:24px;padding:16px;display:flex}.client-meta span{color:var(--text-dim);background:#ffffff08;border-radius:6px;padding:4px 12px;font-size:13px}.client-budget-section{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;margin-bottom:20px;padding:20px}.client-budget-section small{color:var(--text-dim);margin-top:8px;font-size:12px;display:block}.table-wrap{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:13px}.data-table th{text-align:left;text-transform:uppercase;letter-spacing:.5px;color:var(--text-dim);border-bottom:1px solid var(--border);white-space:nowrap;padding:10px 12px;font-size:11px}.data-table td{vertical-align:middle;border-bottom:1px solid #1a1e2880;padding:10px 12px}.data-table tbody tr:hover{background:#c0c8d408}.mini-table{font-size:13px}.mini-table th{text-align:left;text-transform:uppercase;color:var(--text-dim);border-bottom:1px solid var(--border);padding:6px 8px;font-size:11px}.mini-table td{border-bottom:1px solid #1a1e2880;padding:6px 8px}.nowrap{white-space:nowrap}.mono{font-family:var(--mono);font-size:12px}.capitalize{text-transform:capitalize}.content-cell{text-overflow:ellipsis;white-space:nowrap;max-width:280px;color:var(--text-dim);font-size:12px;overflow:hidden}.client-link{color:var(--accent-light);font-weight:500;text-decoration:none}.client-link:hover{text-decoration:underline}.status-badge{text-transform:uppercase;letter-spacing:.5px;border:1px solid;border-radius:20px;padding:2px 10px;font-size:11px;font-weight:600;display:inline-block}.filter-bar select{background:var(--bg-card);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:6px 12px;font-size:13px}.alert-list{flex-direction:column;gap:8px;list-style:none;display:flex}.alert-item{border-left:3px solid var(--yellow);background:#f59e0b0f;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;font-size:13px;display:flex}.alert-item small{color:var(--text-dim);white-space:nowrap}.alert-budget_80{border-left-color:var(--yellow);background:#f59e0b0f}.alert-budget_100,.alert-blocked,.alert-error{border-left-color:var(--red);background:#ef44440f}.alert-cards{flex-direction:column;gap:12px;display:flex}.alert-card{background:var(--bg-card);border:1px solid var(--border);border-left:4px solid var(--yellow);border-radius:12px;padding:16px 20px}.alert-card-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.alert-type{font-size:13px;font-weight:600}.alert-via{color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;background:#ffffff0a;border-radius:4px;padding:2px 8px;font-size:11px}.alert-msg{color:var(--text);margin-bottom:10px;font-size:14px}.alert-card-foot{color:var(--text-dim);justify-content:space-between;font-size:12px;display:flex}.empty{text-align:center;color:var(--text-dim);padding:20px}.empty-state{text-align:center;color:var(--text-dim);padding:60px 20px}.empty-state p{max-width:400px;margin:0 auto;font-size:14px}.recharts-default-tooltip{border-radius:8px!important}.recharts-tooltip-label{color:var(--text-bright)!important}.login-page{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.login-card{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;width:100%;max-width:400px;padding:40px}.login-brand{text-align:center;margin-bottom:32px}.login-brand h1{margin-bottom:4px;font-size:28px}.login-brand p{color:var(--text-dim);font-size:14px}.login-logo{border-radius:14px;width:64px;height:64px;margin-bottom:12px}.login-dot{display:none}.login-label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;flex-direction:column;gap:6px;margin-bottom:16px;font-size:12px;font-weight:600;display:flex}.login-label input{background:var(--bg-input);border:1px solid var(--border);color:var(--text-bright);font-size:14px;font-family:var(--sans);border-radius:8px;padding:12px 14px;transition:border-color .15s}.login-label input:focus{border-color:var(--accent);outline:none}.login-error{border:1px solid var(--red);color:var(--red);background:#ef44441a;border-radius:8px;margin-bottom:16px;padding:10px 14px;font-size:13px}.login-info{border:1px solid var(--green);color:var(--green);background:#22c55e1a;border-radius:8px;margin-bottom:16px;padding:10px 14px;font-size:13px}.login-forgot{text-align:center;color:var(--text-dim);margin-top:12px;font-size:13px;text-decoration:none;display:block}.login-forgot:hover{color:var(--text-bright)}.btn-login{background:var(--accent);width:100%;color:var(--bg);cursor:pointer;border:none;border-radius:8px;padding:12px;font-size:14px;font-weight:600;transition:opacity .15s}.btn-login:hover{opacity:.9}.btn-login:disabled{opacity:.5;cursor:not-allowed}.run-agent-panel{border:1px solid var(--accent)}.run-agent-form{flex-direction:column;gap:12px;margin-top:16px;display:flex}.form-row{flex-direction:column;gap:4px;display:flex}.form-row label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;font-size:12px;font-weight:600}.form-row input,.form-row select,.form-row textarea{background:var(--bg-input);border:1px solid var(--border);color:var(--text);font-size:14px;font-family:var(--sans);border-radius:8px;padding:10px 14px}.form-row input:focus,.form-row select:focus,.form-row textarea:focus{border-color:var(--accent);outline:none}.btn-run{background:var(--accent);color:var(--bg);cursor:pointer;border:none;border-radius:8px;align-self:flex-start;margin-top:8px;padding:12px 24px;font-size:14px;font-weight:600;transition:opacity .15s}.btn-run:hover{opacity:.9}.btn-run:disabled{opacity:.5;cursor:not-allowed}.run-error{border:1px solid var(--red);color:var(--red);background:#ef44441a;border-radius:8px;margin-top:12px;padding:12px 16px;font-size:13px}.run-result{border:1px solid var(--green);border-radius:12px;margin-top:16px;overflow:hidden}.run-result-meta{color:var(--green);background:#22c55e14;gap:16px;padding:12px 16px;font-size:13px;font-weight:500;display:flex}.run-result-content{max-height:400px;padding:16px;overflow-y:auto}.run-result-content pre{white-space:pre-wrap;word-break:break-word;font-family:var(--sans);color:var(--text);font-size:13px;line-height:1.6}.content-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;display:grid}.content-item{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:12px;padding:20px;display:flex}.content-item-head{justify-content:space-between;align-items:center;display:flex}.content-item-type{text-transform:uppercase;letter-spacing:.5px;color:var(--accent);font-size:11px;font-weight:600}.content-item-date{color:var(--text-dim);font-size:11px}.content-item-preview{color:var(--text);max-height:120px;font-size:13px;line-height:1.6;overflow:hidden}.content-item-actions{gap:8px;margin-top:auto;display:flex}.btn-sm{cursor:pointer;border:1px solid var(--border);color:var(--text);background:0 0;border-radius:6px;padding:6px 14px;font-size:12px;font-weight:500;transition:all .15s}.btn-sm:hover{border-color:var(--accent);color:var(--accent-light)}.btn-sm.primary{background:var(--accent);color:var(--bg);border-color:var(--accent)}.btn-sm.primary:hover{opacity:.9}@media (width<=768px){.sidebar{width:60px}.sidebar-brand span:first-of-type,.sidebar-brand small,.nav-link span:not(.nav-icon),.sidebar-footer,.sidebar-user span{display:none}.sidebar-brand{align-items:center;padding:0 0 16px}.nav-link{justify-content:center;padding:12px}.main-content{margin-left:60px}.page{padding:20px 16px}.stats-grid{grid-template-columns:1fr 1fr}.content-grid{grid-template-columns:1fr}}
