:root{--primary-50: #ecfdf5;--primary-100: #d1fae5;--primary-200: #a7f3d0;--primary-300: #6ee7b7;--primary-400: #34d399;--primary-500: #10b981;--primary-600: #059669;--primary-700: #047857;--primary-800: #065f46;--primary-900: #064e3b;--accent-gold: #f59e0b;--accent-gold-light: #fef3c7;--accent-blue: #3b82f6;--accent-blue-light: #eff6ff;--accent-rose: #f43f5e;--accent-rose-light: #fff1f2;--bg-page: #f8fafc;--bg-surface: #ffffff;--bg-subtle: #f1f5f9;--border-light: #e2e8f0;--border-medium: #cbd5e1;--text-main: #0f172a;--text-muted: #64748b;--text-subtle: #94a3b8;--text-inverse: #ffffff;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--font-family-base: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-family-si: "Noto Sans Sinhala", "Inter", sans-serif;--font-family-ta: "Noto Sans Tamil", "Inter", sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family-base);background-color:var(--bg-page);color:var(--text-main);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-page)}::-webkit-scrollbar-thumb{background:var(--border-medium);border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:var(--primary-500)}@media(min-width:1024px){.mobile-nav-toggle,.mobile-tab-bar{display:none!important}}@media(max-width:1023px){.sidebar-desktop{display:none!important}.mobile-nav-toggle{display:inline-flex!important}}@media(min-width:641px)and (max-width:1023px){.mobile-tab-bar{display:none!important}}.app-container{display:flex;min-height:100vh;min-height:100dvh}.main-content{flex:1;display:flex;flex-direction:column;min-width:0;overflow-y:auto;height:100vh;height:100dvh}.page-container{padding:2rem;max-width:1320px;margin:0 auto;width:100%}@media(min-width:641px)and (max-width:1023px){.page-container{padding:1.25rem 1.5rem 2.5rem}}@media(max-width:640px){.page-container{padding:.875rem .75rem;padding-bottom:max(5.5rem,calc(env(safe-area-inset-bottom,20px) + 4.5rem))}}.title-hero{font-size:clamp(1.35rem,1rem + 1.8vw,2rem);font-weight:800;color:var(--text-main);letter-spacing:-.025em;line-height:1.2}.subtitle-hero{font-size:clamp(.825rem,.75rem + .4vw,.975rem);color:var(--text-muted);margin-top:.25rem;line-height:1.5}.growth-hero-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:clamp(.875rem,2vw,1.5rem)}.card{background:var(--bg-surface);border:1px solid var(--border-light);border-radius:1rem;box-shadow:var(--shadow-sm);padding:1.5rem;transition:all .2s ease}.card:hover{box-shadow:var(--shadow-md)}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-light)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-size:.875rem;font-weight:600;padding:.625rem 1.25rem;border-radius:.625rem;border:1px solid transparent;cursor:pointer;transition:all .15s ease-in-out;text-decoration:none;line-height:1.25}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,var(--primary-600),var(--primary-700));color:var(--text-inverse);box-shadow:0 2px 4px #05966933}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--primary-700),var(--primary-800));box-shadow:0 4px 6px #0596694d;transform:translateY(-1px)}.btn-secondary{background:var(--bg-surface);border-color:var(--border-medium);color:var(--text-main)}.btn-secondary:hover:not(:disabled){background:var(--bg-subtle);border-color:var(--primary-500)}.btn-danger{background:var(--accent-rose);color:#fff}.btn-danger:hover:not(:disabled){background:#e11d48}.btn-sm{padding:.375rem .75rem;font-size:.75rem;border-radius:.5rem}.badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .625rem;font-size:.75rem;font-weight:600;border-radius:9999px;line-height:1}.badge-green{background-color:var(--primary-100);color:var(--primary-800);border:1px solid var(--primary-200)}.badge-gold{background-color:var(--accent-gold-light);color:#92400e;border:1px solid #fde68a}.badge-blue{background-color:var(--accent-blue-light);color:#1e40af;border:1px solid #bfdbfe}.badge-rose{background-color:var(--accent-rose-light);color:#9f1239;border:1px solid #fecdd3}.badge-gray{background-color:#f1f5f9;color:#475569;border:1px solid var(--border-light)}.form-group{display:flex;flex-direction:column;gap:.375rem;margin-bottom:1.25rem}.form-label{font-size:.875rem;font-weight:600;color:var(--text-main)}.form-input,.form-select,.form-textarea{width:100%;padding:.625rem .875rem;font-size:.875rem;border:1px solid var(--border-medium);border-radius:.5rem;background-color:var(--bg-surface);color:var(--text-main);transition:border-color .15s ease,box-shadow .15s ease;font-family:inherit}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--primary-600);box-shadow:0 0 0 3px #10b98126}.table-container{width:100%;overflow-x:auto;border-radius:.75rem;border:1px solid var(--border-light);background:var(--bg-surface)}.table{width:100%;border-collapse:collapse;text-align:left;font-size:.875rem}.table th{background-color:var(--bg-subtle);padding:.75rem 1rem;font-weight:600;color:var(--text-muted);border-bottom:1px solid var(--border-light);white-space:nowrap}.table td{padding:.875rem 1rem;border-bottom:1px solid var(--border-light);color:var(--text-main)}.table tr:last-child td{border-bottom:none}.table tr:hover td{background-color:#fafbfc}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(.875rem,2vw,1.5rem)}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.875rem,2vw,1.5rem)}.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.75rem,1.5vw,1.25rem)}@media(max-width:1200px)and (min-width:1024px){.grid-4{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1023px)and (min-width:641px){.grid-3,.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr;gap:.875rem}.card{padding:1rem;border-radius:.875rem}}@media(hover:none)and (pointer:coarse){.btn,.form-input,.form-select{min-height:42px}}@media print{body{background:#fff!important;color:#000!important}aside,.sidebar,nav,header,.app-header,.no-print,button,.btn{display:none!important}.page-container,.main-content,#root{margin:0!important;padding:0!important;width:100%!important;max-width:100%!important}.print-only{display:block!important}.printable-poster{border:2px solid #166534!important;border-radius:.5rem!important;padding:1.5rem!important;box-shadow:none!important;page-break-inside:avoid}}.print-only{display:none}
