:root{--font-sans:"Inter",system-ui,-apple-system,sans-serif;--font-display:"Newsreader","Georgia",serif;--text-2xs:11px;--text-xs:12px;--text-sm:13px;--text-base:14px;--text-md:15px;--text-lg:17px;--text-xl:20px;--text-2xl:26px;--text-3xl:34px;--text-4xl:44px;--leading-tight:1.15;--leading-snug:1.35;--leading-normal:1.5;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--bg-app:#f0efea;--bg-surface:#fff;--bg-surface-glass:hsla(0,0%,100%,.86);--bg-surface-muted:#f6f5f1;--border-color:#e4e1da;--border-color-strong:#d3cfc6;--text-main:#1a1a1a;--text-muted:#6b6864;--text-faint:#9c9994;--text-inverse:#fff;--text-inverse-muted:#a8a6a2;--color-navy:#141414;--color-navy-light:#242424;--color-navy-hover:#2e2e2e;--color-accent:#1a1a1a;--color-accent-hover:#000;--color-accent-light:#eceae4;--color-accent-glow:hsla(0,0%,8%,.12);--color-green:#1f7a4d;--color-green-light:#eaf5ee;--color-red:#c0392b;--color-red-light:#fbecea;--color-amber:#c9821a;--color-amber-light:#fbf1e1;--color-blue:#3b6ea5;--color-blue-light:#eef3f8;--shadow-sm:0 1px 2px 0 hsla(0,0%,8%,.05);--shadow-md:0 4px 10px -2px hsla(0,0%,8%,.07),0 2px 4px -2px hsla(0,0%,8%,.04);--shadow-lg:0 16px 32px -8px hsla(0,0%,8%,.14),0 4px 10px -4px hsla(0,0%,8%,.06);--shadow-glow:0 0 15px var(--color-accent-glow);--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--radius-pill:999px;--sidebar-width:320px;--app-sidebar-width:232px;--transition-fast:0.15s ease;--transition-normal:0.25s cubic-bezier(0.4,0,0.2,1)}[data-theme=dark]{--bg-app:#0c0f14;--bg-surface:#12161d;--bg-surface-glass:rgba(18,22,29,.86);--bg-surface-muted:#171b23;--border-color:#232a35;--border-color-strong:#2d3542;--text-main:#f1efe8;--text-muted:#a39a88;--text-faint:#6f6858;--text-inverse:#0c0f14;--text-inverse-muted:#8b96a6;--color-navy:#05080d;--color-navy-light:#161d27;--color-navy-hover:#1c2430;--color-accent:#f1efe8;--color-accent-hover:#fff;--color-accent-light:#1c2430;--color-accent-glow:hsla(47,24%,93%,.1);--color-green:#34d399;--color-green-light:#0d2c22;--color-red:#f87171;--color-red-light:#341313;--color-amber:#fbbf24;--color-amber-light:#332405;--color-blue:#7fb0e6;--color-blue-light:#16283d;--shadow-sm:0 1px 2px 0 rgba(0,0,0,.5);--shadow-md:0 4px 6px -1px rgba(0,0,0,.3),0 2px 4px -1px rgba(0,0,0,.2);--shadow-lg:0 10px 15px -3px rgba(0,0,0,.4),0 4px 6px -2px rgba(0,0,0,.3)}*{box-sizing:border-box;margin:0;padding:0;transition:background-color var(--transition-normal),border-color var(--transition-normal),color var(--transition-normal)}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);background-color:var(--bg-app);color:var(--text-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:500;letter-spacing:-.01em;line-height:var(--leading-tight)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-app)}::-webkit-scrollbar-thumb{background:var(--border-color-strong);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{transform:translateX(100%)}to{transform:translateX(0)}}.animate-fade-in{animation:fadeIn var(--transition-normal) forwards}.dashboard-card{background-color:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:var(--space-5);position:relative;overflow:hidden}.dashboard-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--color-accent),transparent);opacity:0;transition:opacity var(--transition-normal)}.dashboard-card:hover:before{opacity:1}.dashboard-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);transition:transform .2s ease,box-shadow .2s ease}.tab-button{background:transparent;border:none;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:500;cursor:pointer;padding:10px 18px;display:flex;align-items:center;gap:8px;border-radius:var(--radius-sm) var(--radius-sm) 0 0;position:relative}.tab-button:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background-color:var(--color-accent);transform:scaleX(0);transition:transform var(--transition-normal)}.tab-button.active:after{transform:scaleX(1)}.action-btn{background-color:var(--color-navy);color:var(--text-inverse);border:none;font-weight:600;font-size:var(--text-sm);padding:10px 16px;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;align-items:center;gap:8px;box-shadow:var(--shadow-sm)}.action-btn:hover{background-color:var(--color-navy-light);box-shadow:var(--shadow-md)}.form-input{width:100%;padding:8px 12px;background-color:var(--bg-app);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-main);font-family:var(--font-sans);font-size:var(--text-sm)}.form-input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-glow)}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:var(--space-4);gap:var(--space-4)}.panel-grid-2{display:grid;grid-template-columns:1fr;grid-gap:var(--space-5);gap:var(--space-5)}@media (min-width:1024px){.panel-grid-2{grid-template-columns:1fr 1fr}}.editor-sidebar{position:fixed;top:0;right:0;bottom:0;width:var(--sidebar-width);background-color:var(--bg-surface-glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-left:1px solid var(--border-color);box-shadow:var(--shadow-lg);z-index:100;display:flex;flex-direction:column;animation:slideInRight var(--transition-normal)}.app-shell{display:flex;min-height:100vh;background:var(--bg-app)}.app-sidebar{width:var(--app-sidebar-width);flex-shrink:0;background:var(--color-navy);color:var(--text-inverse);display:flex;flex-direction:column;padding:var(--space-5) var(--space-3);gap:var(--space-6);position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow-y:auto;overflow-x:hidden;transition:width var(--transition-normal)}.app-sidebar.collapsed{width:68px}.app-sidebar-header{display:flex;align-items:center;justify-content:space-between;gap:6px}.app-sidebar.collapsed .app-sidebar-header{flex-direction:column;gap:12px}.app-sidebar-brand{display:flex;align-items:center;gap:10px;padding:0 var(--space-2);min-width:0;overflow:hidden}.app-sidebar.collapsed .app-sidebar-brand{padding:0}.app-sidebar-brand-name{font-family:var(--font-display);font-size:var(--text-xl);font-weight:500;color:var(--text-inverse);letter-spacing:.01em;white-space:nowrap}.app-sidebar-toggle{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:28px;height:28px;border-radius:var(--radius-sm);border:1px solid transparent;background:transparent;color:var(--text-inverse-muted);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.app-sidebar-toggle:hover{background:var(--color-navy-hover);color:var(--text-inverse)}.app-sidebar.collapsed .app-nav-item>span:last-child,.app-sidebar.collapsed .app-sidebar-brand-name{display:none}.app-sidebar.collapsed .app-nav-item{justify-content:center;padding:9px}.app-nav-item,.app-sidebar.collapsed nav{align-items:center}.app-nav-item{display:flex;gap:10px;padding:9px 12px;border-radius:var(--radius-sm);color:var(--text-inverse-muted);font-size:var(--text-sm);font-weight:500;cursor:pointer;border:1px solid transparent;background:transparent;width:100%;text-align:left;font-family:var(--font-sans)}.app-nav-item:hover{background:var(--color-navy-hover);color:var(--text-inverse)}.app-nav-item.active{background:var(--color-navy-light);color:var(--text-inverse);border-color:transparent}.app-main{flex:1 1;min-width:0;padding:var(--space-6) var(--space-8);display:flex;flex-direction:column;gap:var(--space-5)}.app-topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}.app-page-title{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:500;color:var(--text-main);letter-spacing:-.01em;line-height:var(--leading-tight)}.pill-btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:600;padding:9px 16px;border-radius:var(--radius-pill);cursor:pointer;border:1px solid var(--border-color-strong);background:var(--bg-surface);color:var(--text-main);white-space:nowrap}.pill-btn:hover{border-color:var(--color-accent)}.pill-btn-dark{background:var(--color-navy);color:var(--text-inverse);border-color:var(--color-navy)}.pill-btn-dark:hover{background:var(--color-navy-light)}.pill-badge{display:inline-flex;align-items:center;gap:6px;font-size:var(--text-xs);font-weight:600;padding:4px 10px;border-radius:var(--radius-pill)}.recharts-default-tooltip{border-radius:var(--radius-sm)!important;box-shadow:var(--shadow-lg)!important;font-family:var(--font-sans)!important}.recharts-cartesian-axis-tick text{font-family:var(--font-sans);font-size:var(--text-2xs);fill:var(--text-muted)}