@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap");:root{--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",system-ui,sans-serif;--font-mono:"SF Mono","Menlo","Monaco","Cascadia Code","Courier New",monospace;--text-xs:11px;--text-sm:13px;--text-base:15px;--text-lg:17px;--text-xl:20px;--text-2xl:24px;--text-3xl:30px;--text-4xl:36px;--text-5xl:48px;--font-light:300;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--font-extrabold:800;--font-black:900;--leading-tight:1.2;--leading-snug:1.35;--leading-normal:1.55;--leading-relaxed:1.65;--space-0:0px;--space-px:1px;--space-0-5:2px;--space-1:4px;--space-1-5:6px;--space-2:8px;--space-2-5:10px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-10:40px;--space-12:48px;--space-14:56px;--space-16:64px;--space-20:80px;--space-24:96px;--radius-xs:4px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:18px;--radius-2xl:24px;--radius-full:9999px;--color-background:#f7f8fa;--color-surface:#fff;--color-surface-secondary:#f2f3f7;--color-surface-tertiary:#ecedf2;--color-surface-elevated:#fff;--color-text-primary:#111827;--color-text-secondary:#4b5563;--color-text-tertiary:#9ca3af;--color-text-inverse:#fff;--color-text-link:#1b6b2e;--color-border:#e5e7eb;--color-border-secondary:#d1d5db;--color-border-focus:#1b6b2e;--color-primary:#1b6b2e;--color-primary-hover:#145523;--color-primary-active:#0f4a1d;--color-primary-light:#ecfdf3;--color-primary-subtle:#d1fae5;--color-primary-ghost:rgba(27,107,46,.08);--color-secondary:#6b5b3e;--color-secondary-hover:#564a32;--color-secondary-light:#f5f0e8;--color-success:#059669;--color-success-light:#ecfdf5;--color-success-border:#a7f3d0;--color-warning:#b45309;--color-warning-light:#fffbeb;--color-warning-border:#fde68a;--color-error:#dc2626;--color-error-light:#fef2f2;--color-error-border:#fecaca;--color-info:#2563eb;--color-info-light:#eff6ff;--color-info-border:#bfdbfe;--shadow-xs:0 1px 2px rgba(0,0,0,.04);--shadow-sm:0 1px 3px rgba(0,0,0,.06),0 1px 2px rgba(0,0,0,.04);--shadow-md:0 4px 8px -1px rgba(0,0,0,.07),0 2px 4px -2px rgba(0,0,0,.05);--shadow-lg:0 10px 24px -4px rgba(0,0,0,.08),0 4px 8px -4px rgba(0,0,0,.03);--shadow-xl:0 20px 40px -8px rgba(0,0,0,.1),0 8px 16px -8px rgba(0,0,0,.04);--shadow-2xl:0 32px 64px -12px rgba(0,0,0,.14);--shadow-inner:inset 0 2px 4px rgba(0,0,0,.04);--shadow-ring:0 0 0 3px rgba(27,107,46,.15);--shadow-ring-error:0 0 0 3px rgba(220,38,38,.15);--shadow-card:0 1px 3px rgba(0,0,0,.04),0 1px 2px rgba(0,0,0,.02);--shadow-card-hover:0 8px 24px -4px rgba(0,0,0,.08),0 4px 8px -4px rgba(0,0,0,.03);--transition-fast:150ms cubic-bezier(0.4,0,0.2,1);--transition-base:200ms cubic-bezier(0.4,0,0.2,1);--transition-slow:300ms cubic-bezier(0.4,0,0.2,1);--transition-spring:400ms cubic-bezier(0.175,0.885,0.32,1.275);--z-base:0;--z-dropdown:50;--z-sticky:100;--z-overlay:1000;--z-modal:10000;--z-toast:10100}*{box-sizing:border-box;padding:0;margin:0}body,html{max-width:100vw;overflow-x:hidden;font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:"cv02","cv03","cv04","cv11"}body{background:var(--color-background);font-size:var(--text-base);line-height:var(--leading-normal)}body,h1,h2,h3,h4,h5,h6{color:var(--color-text-primary)}h1,h2,h3,h4,h5,h6{font-weight:var(--font-semibold);line-height:var(--leading-tight);letter-spacing:-.025em}h1{font-size:var(--text-3xl);font-weight:var(--font-bold);letter-spacing:-.03em}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-xl)}h4{font-size:var(--text-lg)}p{margin-bottom:var(--space-4);color:var(--color-text-secondary);line-height:var(--leading-relaxed)}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-hover)}small{color:var(--color-text-tertiary)}button,small{font-size:var(--text-sm)}button{font-family:var(--font-sans);font-weight:var(--font-medium);border:none;cursor:pointer;transition:all var(--transition-base);border-radius:var(--radius-md);line-height:1}button:active:not(:disabled){transform:scale(.98)}button:disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}.btn-primary{background:var(--color-primary);color:var(--color-text-inverse);padding:var(--space-2-5) var(--space-5);font-weight:var(--font-semibold);border-radius:var(--radius-md);box-shadow:0 1px 2px rgba(0,0,0,.1),inset 0 1px 0 hsla(0,0%,100%,.1)}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover);box-shadow:0 2px 8px rgba(27,107,46,.25),inset 0 1px 0 hsla(0,0%,100%,.1);transform:translateY(-1px)}.btn-primary:active:not(:disabled){background:var(--color-primary-active);box-shadow:var(--shadow-inner);transform:translateY(0)}.btn-secondary{background:var(--color-secondary);color:var(--color-text-inverse);padding:var(--space-2-5) var(--space-5);font-weight:var(--font-semibold);border-radius:var(--radius-md)}.btn-secondary:hover:not(:disabled){background:var(--color-secondary-hover);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.btn-accent{background:var(--color-surface);color:var(--color-text-primary);padding:var(--space-2-5) var(--space-5);border:1px solid var(--color-border);font-weight:var(--font-medium)}.btn-accent:hover:not(:disabled){background:var(--color-surface-secondary);border-color:var(--color-border-secondary)}.btn-sm{padding:var(--space-1-5) var(--space-3);font-size:var(--text-sm)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-card);transition:all var(--transition-base)}.card-interactive{cursor:pointer}.card-interactive:hover{border-color:var(--color-border-secondary);box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.card-interactive:active{transform:translateY(0);box-shadow:var(--shadow-sm)}input,select,textarea{font-family:var(--font-sans);font-size:var(--text-base);padding:var(--space-2-5) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-primary);transition:all var(--transition-fast);width:100%;line-height:var(--leading-normal)}input::placeholder,textarea::placeholder{color:var(--color-text-tertiary)}input:hover:not(:focus):not(:disabled),select:hover:not(:focus):not(:disabled),textarea:hover:not(:focus):not(:disabled){border-color:var(--color-border-secondary)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--shadow-ring)}input:disabled,select:disabled,textarea:disabled{background:var(--color-surface-secondary);cursor:not-allowed;opacity:.7}input[type=checkbox]{width:auto;accent-color:var(--color-primary)}.badge{display:inline-flex;align-items:center;padding:3px var(--space-2-5);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-semibold);line-height:1.4;letter-spacing:.01em}.badge-success{background:var(--color-success-light);color:var(--color-success)}.badge-warning{background:var(--color-warning-light);color:var(--color-warning)}.badge-error{background:var(--color-error-light);color:var(--color-error)}.badge-primary{background:var(--color-primary-light);color:var(--color-primary)}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-tertiary{color:var(--color-text-tertiary)}.bg-surface{background:var(--color-surface)}.bg-surface-secondary{background:var(--color-surface-secondary)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.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)}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(24px)}to{opacity:1;transform:translateX(0)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.fade-in{animation:fadeIn var(--transition-base) ease-out}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border-secondary);border-radius:var(--radius-full);border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary);border:2px solid transparent;background-clip:content-box}::selection{background:var(--color-primary-subtle);color:var(--color-primary)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.skip-nav{position:absolute;top:-999px;left:0;z-index:9999;padding:var(--space-3) var(--space-5);background:var(--color-primary);color:var(--color-text-inverse);font-weight:var(--font-semibold);font-size:var(--text-base);border-radius:var(--radius-md);text-decoration:none;transition:top var(--transition-fast)}.skip-nav:focus{top:var(--space-2);left:var(--space-2);outline:3px solid var(--color-text-inverse);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.sr-only,body.modal-open{overflow:hidden}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.page-content{animation:fadeIn .25s ease-out}