@charset "UTF-8";:root{--tf-primary: #006139;--tf-primary-light: #268d5f;--tf-primary-dark: #004324;--tf-accent: #c9a227;--tf-accent-light: #e6c04d;--tf-surface: #fafbf9;--tf-background: #ffffff;--tf-error: #b91c1c;--tf-success: #006139;--tf-warn: #b45309;--tf-text: #1a1a1a;--tf-text-secondary: #525252;--tf-border: #e5e7eb;--tf-radius: 12px;--tf-radius-sm: 8px;--tf-shadow: 0 1px 3px rgba(0, 97, 57, .08);--tf-shadow-md: 0 4px 12px rgba(0, 97, 57, .12);--tf-shadow-lg: 0 12px 40px rgba(0, 40, 25, .1);--tf-ease-out: cubic-bezier(.22, 1, .36, 1);--tf-ease-in-out: cubic-bezier(.45, 0, .15, 1);--tf-duration: .22s;--tf-duration-slow: .45s;--tf-focus-ring: 0 0 0 3px rgba(0, 97, 57, .22);--tf-sidebar-bg: linear-gradient(180deg, #00301a 0%, #004324 50%, #00301a 100%);--tf-sidebar-text: rgba(255, 255, 255, .85);--tf-sidebar-text-hover: #fff;--tf-sidebar-accent: #4da67d;--tf-sidebar-border: rgba(255, 255, 255, .08)}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;-webkit-tap-highlight-color:transparent}@media (max-width: 768px){html{font-size:15px}}body{margin:0;font-family:DM Sans,system-ui,sans-serif;background:var(--tf-surface);color:var(--tf-text);line-height:1.5}::selection{background:#0061392e;color:var(--tf-text)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}h1,h2,h3,h4,h5,h6{font-family:Space Grotesk,system-ui,sans-serif;font-weight:600;margin:0 0 .5em}a{color:var(--tf-primary);text-decoration:none;transition:color var(--tf-duration) var(--tf-ease-out)}a:hover{text-decoration:underline}a:focus-visible{outline:none;border-radius:2px;box-shadow:var(--tf-focus-ring)}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1rem}.page-title{font-size:1.5rem;color:var(--tf-text);margin-bottom:1rem}.card{background:var(--tf-background);border-radius:var(--tf-radius);box-shadow:var(--tf-shadow);padding:1.25rem;border:1px solid var(--tf-border);transition:box-shadow var(--tf-duration-slow) var(--tf-ease-out),border-color var(--tf-duration) var(--tf-ease-out),transform var(--tf-duration) var(--tf-ease-out)}.card:hover{box-shadow:var(--tf-shadow-md);border-color:#0061391f}@media (hover: hover) and (pointer: fine){.card:hover{transform:translateY(-1px)}}.btn-primary{background:var(--tf-primary);color:#fff;border:none;padding:.6rem 1.25rem;border-radius:var(--tf-radius-sm);font-weight:600;cursor:pointer;font-family:inherit;transition:background var(--tf-duration) var(--tf-ease-out),transform .12s var(--tf-ease-out),box-shadow var(--tf-duration) var(--tf-ease-out);box-shadow:0 1px 2px #0028191f}.btn-primary:hover:not(:disabled){background:var(--tf-primary-dark);box-shadow:0 4px 14px #00613947}.btn-primary:active:not(:disabled){transform:scale(.98)}.btn-primary:focus-visible{outline:none;box-shadow:var(--tf-focus-ring),0 2px 8px #00613940}.btn-primary:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.btn-outline{background:transparent;color:var(--tf-primary);border:2px solid var(--tf-primary);padding:.5rem 1.25rem;border-radius:var(--tf-radius-sm);font-weight:600;cursor:pointer;font-family:inherit;transition:background var(--tf-duration) var(--tf-ease-out),border-color var(--tf-duration) var(--tf-ease-out),transform .12s var(--tf-ease-out)}.btn-outline:hover{background:#00613914}.btn-outline:active:not(:disabled){transform:scale(.98)}.btn-outline:focus-visible{outline:none;box-shadow:var(--tf-focus-ring)}.form-group{margin-bottom:1rem}.form-group label{display:block;font-weight:500;margin-bottom:.35rem;color:var(--tf-text)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.6rem .75rem;border:1px solid var(--tf-border);border-radius:var(--tf-radius-sm);font-family:inherit;font-size:1rem;box-sizing:border-box}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--tf-primary);box-shadow:0 0 0 3px #00613926}.form-group select{padding-right:2.25rem}.error-message{color:var(--tf-error);font-size:.875rem;margin-top:.25rem}
