:root{--primary-green: #7cb342;--primary-dark: #1a5f3f;--accent-blue: #2196f3;--white: #ffffff;--grey-50: #fafafa;--grey-100: #f5f5f5;--grey-200: #eeeeee;--grey-300: #e0e0e0;--grey-400: #bdbdbd;--grey-500: #9e9e9e;--grey-600: #757575;--grey-700: #616161;--grey-800: #424242;--grey-900: #212121;--text-primary: var(--grey-900);--text-secondary: var(--grey-600);--text-muted: var(--grey-500);--border-light: var(--grey-200);--border-medium: var(--grey-300);--background: var(--white);--background-alt: var(--grey-50);--success: #4caf50;--warning: #ff9800;--error: #f44336;--info: var(--accent-blue);--font-sans: "Inter", ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, sans-serif;--font-heading: "Inter", var(--font-sans);--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem;--space-4xl: 6rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .35s ease}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);font-size:16px;line-height:1.6;color:var(--text-primary);background:var(--background);min-height:100vh}#root{min-height:100vh;display:flex;flex-direction:column}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700;line-height:1.2;color:var(--text-primary);margin-bottom:var(--space-md)}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.75rem}h4{font-size:1.5rem}h5{font-size:1.25rem}h6{font-size:1rem}p{margin-bottom:var(--space-md);color:var(--text-secondary)}a{color:var(--primary-green);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--primary-dark)}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--space-lg)}.container-narrow{max-width:960px}.container-wide{max-width:1440px}.section{padding:var(--space-4xl) 0}.section-sm{padding:var(--space-2xl) 0}.section-lg{padding:var(--space-4xl) 0}.grid{display:grid;gap:var(--space-lg)}.grid-cols-1{grid-template-columns:repeat(1,1fr)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}@media (max-width: 768px){.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr}}@media (min-width: 768px) and (max-width: 1024px){.grid-cols-3,.grid-cols-4{grid-template-columns:repeat(2,1fr)}}.flex{display:flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-md) var(--space-xl);font-size:1rem;font-weight:600;font-family:var(--font-sans);text-align:center;text-decoration:none;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.btn-primary{background:var(--primary-green);color:var(--white);box-shadow:var(--shadow-md)}.btn-primary:hover{background:var(--primary-dark);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-secondary{background:var(--white);color:var(--primary-green);border:2px solid var(--primary-green)}.btn-secondary:hover{background:var(--primary-green);color:var(--white)}.btn-outline{background:transparent;color:var(--text-primary);border:2px solid var(--border-medium)}.btn-outline:hover{border-color:var(--primary-green);color:var(--primary-green)}.btn-lg{padding:var(--space-lg) var(--space-2xl);font-size:1.125rem}.btn-sm{padding:var(--space-sm) var(--space-md);font-size:.875rem}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.card{background:var(--white);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:var(--space-xl);transition:all var(--transition-base)}.card:hover{border-color:var(--border-medium);box-shadow:var(--shadow-lg);transform:translateY(-4px)}.card-header,.card-body{margin-bottom:var(--space-lg)}.card-footer{padding-top:var(--space-lg);border-top:1px solid var(--border-light)}.badge{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-md);font-size:.875rem;font-weight:600;border-radius:var(--radius-full);background:var(--grey-100);color:var(--text-primary)}.badge-success{background:#4caf501a;color:var(--success)}.badge-primary{background:#7cb3421a;color:var(--primary-green)}.badge-info{background:#2196f31a;color:var(--accent-blue)}.form-group{margin-bottom:var(--space-lg)}.form-label{display:block;font-weight:600;margin-bottom:var(--space-sm);color:var(--text-primary)}.form-input,.form-textarea,.form-select{width:100%;padding:var(--space-md);font-size:1rem;font-family:var(--font-sans);color:var(--text-primary);background:var(--white);border:2px solid var(--border-medium);border-radius:var(--radius-md);transition:all var(--transition-fast)}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:var(--primary-green);box-shadow:0 0 0 3px #7cb3421a}.form-textarea{min-height:120px;resize:vertical}.form-error{margin-top:var(--space-sm);font-size:.875rem;color:var(--error)}.form-helper{margin-top:var(--space-sm);font-size:.875rem;color:var(--text-muted)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-muted)}.text-white{color:var(--white)}.text-green{color:var(--primary-green)}.bg-white{background:var(--white)}.bg-grey{background:var(--grey-50)}.bg-green{background:var(--primary-green)}.bg-dark{background:var(--primary-dark)}.font-bold{font-weight:700}.font-semibold{font-weight:600}.font-normal{font-weight:400}.text-sm{font-size:.875rem}.text-base{font-size:1rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}.mt-auto{margin-top:auto}.mb-0{margin-bottom:0}.mb-sm{margin-bottom:var(--space-sm)}.mb-md{margin-bottom:var(--space-md)}.mb-lg{margin-bottom:var(--space-lg)}.mb-xl{margin-bottom:var(--space-xl)}.rounded{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-full{border-radius:var(--radius-full)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}@media (max-width: 768px){h1{font-size:2rem}h2{font-size:1.75rem}h3{font-size:1.5rem}h4{font-size:1.25rem}.section{padding:var(--space-2xl) 0}}
