:root{--color-primary: #7D9B76;--color-primary-light: #A8C4A2;--color-primary-dark: #5B7A54;--color-secondary: #D4C4B0;--color-secondary-light: #EDE6DD;--color-secondary-dark: #B5A089;--color-accent: #C9A9A6;--color-accent-light: #E5D5D3;--color-accent-dark: #A78682;--color-bg: #FDFCFA;--color-bg-alt: #F7F4F0;--color-bg-card: #FFFFFF;--color-text: #3D3D3D;--color-text-light: #6B6B6B;--color-text-muted: #9A9A9A;--color-text-inverse: #FFFFFF;--color-success: #7D9B76;--color-error: #C26B6B;--color-warning: #D4A84B;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .07);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1);--radius-sm: 4px;--radius-md: 8px;--radius-lg: 16px;--radius-full: 9999px;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem;--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 2rem;--font-size-4xl: 2.5rem;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .35s ease;--container-max: 1200px;--container-narrow: 800px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-text);background-color:var(--color-bg);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img,picture,video,canvas,svg{display:block;max-width:100%;height:auto}input,button,textarea,select{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}ul,ol{list-style:none}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);color:var(--color-text)}h1{font-size:var(--font-size-4xl);margin-bottom:var(--space-lg)}h2{font-size:var(--font-size-3xl);margin-bottom:var(--space-md)}h3{font-size:var(--font-size-2xl);margin-bottom:var(--space-md)}h4{font-size:var(--font-size-xl);margin-bottom:var(--space-sm)}p{margin-bottom:var(--space-md)}p:last-child{margin-bottom:0}strong{font-weight:var(--font-weight-semibold)}small{font-size:var(--font-size-sm)}.link{color:var(--color-primary-dark);text-decoration:underline;text-underline-offset:2px;transition:color var(--transition-fast)}.link:hover{color:var(--color-primary)}.link:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.nav-link:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.form-group{margin-bottom:var(--space-lg)}.form-label{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text);margin-bottom:var(--space-sm)}.form-input,.form-textarea,.form-select{width:100%;padding:var(--space-sm) var(--space-md);font-size:var(--font-size-base);background-color:var(--color-bg-card);border:1px solid var(--color-secondary);border-radius:var(--radius-md);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #7d9b7626}.form-input::placeholder,.form-textarea::placeholder{color:var(--color-text-muted)}.form-input.error,.form-textarea.error,.form-select.error{border-color:var(--color-error)}.form-error{font-size:var(--font-size-sm);color:var(--color-error);margin-top:var(--space-xs)}.form-hint{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-top:var(--space-xs)}.form-textarea{min-height:120px;resize:vertical}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);line-height:var(--line-height-normal);border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);text-decoration:none}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background-color:var(--color-primary);color:var(--color-text-inverse)}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-dark)}.btn-secondary{background-color:var(--color-secondary);color:var(--color-text)}.btn-secondary:hover:not(:disabled){background-color:var(--color-secondary-dark)}.btn-outline{background-color:transparent;color:var(--color-primary);border:2px solid var(--color-primary)}.btn-outline:hover:not(:disabled){background-color:var(--color-primary);color:var(--color-text-inverse)}.btn-ghost{background-color:transparent;color:var(--color-text)}.btn-ghost:hover:not(:disabled){background-color:var(--color-bg-alt)}.btn-sm{padding:var(--space-xs) var(--space-md);font-size:var(--font-size-sm)}.btn-lg{padding:var(--space-md) var(--space-xl);font-size:var(--font-size-lg)}.btn-block{width:100%}.btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.card{background-color:var(--color-bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden}.card-body{padding:var(--space-lg)}.card-header{padding:var(--space-lg);border-bottom:1px solid var(--color-secondary-light)}.card-footer{padding:var(--space-lg);border-top:1px solid var(--color-secondary-light);background-color:var(--color-bg-alt)}.card-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-sm)}.card-text{color:var(--color-text-light)}.card-bordered{box-shadow:none;border:1px solid var(--color-secondary)}.card-flat{box-shadow:none;background-color:var(--color-bg-alt)}.container{width:100%;max-width:var(--container-max);margin:0 auto;padding:0 var(--space-md)}.container-narrow{max-width:var(--container-narrow)}.flex{display:flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.gap-xs{gap:var(--space-xs)}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.gap-xl{gap:var(--space-xl)}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-base{font-size:var(--font-size-base)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.text-2xl{font-size:var(--font-size-2xl)}.text-3xl{font-size:var(--font-size-3xl)}.text-muted{color:var(--color-text-muted)}.text-light{color:var(--color-text-light)}.text-primary{color:var(--color-primary)}.text-success{color:var(--color-success)}.text-error{color:var(--color-error)}.font-normal{font-weight:var(--font-weight-normal)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.m-0{margin:0}.m-xs{margin:var(--space-xs)}.m-sm{margin:var(--space-sm)}.m-md{margin:var(--space-md)}.m-lg{margin:var(--space-lg)}.m-xl{margin:var(--space-xl)}.mt-0{margin-top:0}.mt-xs{margin-top:var(--space-xs)}.mt-sm{margin-top:var(--space-sm)}.mt-md{margin-top:var(--space-md)}.mt-lg{margin-top:var(--space-lg)}.mt-xl{margin-top:var(--space-xl)}.mt-2xl{margin-top:var(--space-2xl)}.mt-3xl{margin-top:var(--space-3xl)}.mb-0{margin-bottom:0}.mb-xs{margin-bottom:var(--space-xs)}.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)}.mb-2xl{margin-bottom:var(--space-2xl)}.mb-3xl{margin-bottom:var(--space-3xl)}.ml-0{margin-left:0}.ml-xs{margin-left:var(--space-xs)}.ml-sm{margin-left:var(--space-sm)}.ml-md{margin-left:var(--space-md)}.ml-lg{margin-left:var(--space-lg)}.ml-auto{margin-left:auto}.mr-0{margin-right:0}.mr-xs{margin-right:var(--space-xs)}.mr-sm{margin-right:var(--space-sm)}.mr-md{margin-right:var(--space-md)}.mr-lg{margin-right:var(--space-lg)}.mr-auto{margin-right:auto}.mx-auto{margin-left:auto;margin-right:auto}.p-0{padding:0}.p-xs{padding:var(--space-xs)}.p-sm{padding:var(--space-sm)}.p-md{padding:var(--space-md)}.p-lg{padding:var(--space-lg)}.p-xl{padding:var(--space-xl)}.p-2xl{padding:var(--space-2xl)}.pt-0{padding-top:0}.pt-xs{padding-top:var(--space-xs)}.pt-sm{padding-top:var(--space-sm)}.pt-md{padding-top:var(--space-md)}.pt-lg{padding-top:var(--space-lg)}.pt-xl{padding-top:var(--space-xl)}.pt-2xl{padding-top:var(--space-2xl)}.pt-3xl{padding-top:var(--space-3xl)}.pb-0{padding-bottom:0}.pb-xs{padding-bottom:var(--space-xs)}.pb-sm{padding-bottom:var(--space-sm)}.pb-md{padding-bottom:var(--space-md)}.pb-lg{padding-bottom:var(--space-lg)}.pb-xl{padding-bottom:var(--space-xl)}.pb-2xl{padding-bottom:var(--space-2xl)}.pb-3xl{padding-bottom:var(--space-3xl)}.px-0{padding-left:0;padding-right:0}.px-xs{padding-left:var(--space-xs);padding-right:var(--space-xs)}.px-sm{padding-left:var(--space-sm);padding-right:var(--space-sm)}.px-md{padding-left:var(--space-md);padding-right:var(--space-md)}.px-lg{padding-left:var(--space-lg);padding-right:var(--space-lg)}.px-xl{padding-left:var(--space-xl);padding-right:var(--space-xl)}.py-0{padding-top:0;padding-bottom:0}.py-xs{padding-top:var(--space-xs);padding-bottom:var(--space-xs)}.py-sm{padding-top:var(--space-sm);padding-bottom:var(--space-sm)}.py-md{padding-top:var(--space-md);padding-bottom:var(--space-md)}.py-lg{padding-top:var(--space-lg);padding-bottom:var(--space-lg)}.py-xl{padding-top:var(--space-xl);padding-bottom:var(--space-xl)}.py-2xl{padding-top:var(--space-2xl);padding-bottom:var(--space-2xl)}.py-3xl{padding-top:var(--space-3xl);padding-bottom:var(--space-3xl)}.hidden{display:none}.block{display:block}.inline{display:inline}.inline-block{display:inline-block}.w-full{width:100%}.h-full{height:100%}.min-h-screen{min-height:100vh}.rounded{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-full{border-radius:var(--radius-full)}.shadow{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(min-width:640px){.sm\:flex{display:flex}.sm\:hidden{display:none}.sm\:block{display:block}.sm\:text-left{text-align:left}.sm\:text-center{text-align:center}}@media(min-width:768px){.md\:flex{display:flex}.md\:hidden{display:none}.md\:block{display:block}.md\:flex-row{flex-direction:row}.md\:text-left{text-align:left}}@media(min-width:1024px){.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:block{display:block}}
