@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:400;font-display:swap;src:url('/static/generic/fonts/source-sans-pro-regular.woff2') format('woff2')}@font-face{font-family:'Roboto Condensed';font-style:normal;font-weight:400;font-display:swap;src:url('/static/generic/fonts/roboto-condensed-regular.woff2') format('woff2')}:root{--font-heading:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-body:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-accent:Georgia,"Times New Roman",serif;--font-code:"SF Mono",Monaco,"Cascadia Code","Courier New",monospace;--font-article-body:"Source Sans Pro",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-article-heading:"Roboto Condensed",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--spacing-unit:8px;--spacing-xs:calc(var(--spacing-unit) * 1);--spacing-sm:calc(var(--spacing-unit) * 2);--spacing-md:calc(var(--spacing-unit) * 3);--spacing-lg:calc(var(--spacing-unit) * 4);--spacing-xl:calc(var(--spacing-unit) * 5);--spacing-2xl:calc(var(--spacing-unit) * 6);--spacing-3xl:calc(var(--spacing-unit) * 8);--breakpoint-mobile:375px;--breakpoint-tablet:640px;--breakpoint-desktop:1024px;--breakpoint-wide:1440px;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--font-size-5xl:3rem;--line-height-tight:1.25;--line-height-normal:1.5;--line-height-relaxed:1.75;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-full:9999px;--transition-fast:150ms ease-in-out;--transition-base:250ms ease-in-out;--transition-slow:350ms ease-in-out;--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070;--fluid-xs:clamp(0.75rem,1.5vw,0.875rem);--fluid-sm:clamp(0.875rem,2vw,1rem);--fluid-base:clamp(1rem,2.5vw,1.125rem);--fluid-lg:clamp(1.125rem,3vw,1.25rem);--fluid-xl:clamp(1.25rem,3.5vw,1.5rem);--fluid-2xl:clamp(1.5rem,4vw,2rem);--fluid-3xl:clamp(1.75rem,5vw,2.5rem);--fluid-4xl:clamp(2rem,6vw,3rem);--fluid-5xl:clamp(2.5rem,8vw,4rem);--fluid-hero:clamp(2rem,8vw,4rem);--fluid-hero-subtitle:clamp(1.125rem,3vw,1.5rem);--section-padding-y:clamp(40px,10vw,100px);--section-padding-x:clamp(16px,5vw,48px);--hero-padding-top:clamp(60px,15vw,140px);--hero-padding-bottom:clamp(40px,10vw,100px);--content-padding-y:clamp(24px,5vw,48px);--content-padding-x:clamp(16px,4vw,32px);--card-padding:clamp(16px,4vw,32px)}:root[data-theme="light"]{--color-primary:#3d8350;--color-dark:#0B0B0B;--bg-primary:#FFFFFF;--bg-secondary:#F5F5F5;--bg-tertiary:#E8E8E8;--bg-accent:#3d8350;--text-primary:#0B0B0B;--text-secondary:#374151;--text-tertiary:#4b5563;--text-inverse:#FFFFFF;--text-accent:#2d5a3d;--border-primary:#D1D1D1;--border-secondary:#E8E8E8;--border-focus:#4A9B60;--color-success:#27AE60;--color-error:#E74C3C;--color-warning:#F39C12;--color-info:#3498DB;--button-primary-bg:#3d8350;--button-primary-text:#FFFFFF;--button-primary-hover:#2d5a3d;--button-primary-hover-text:#FFFFFF;--button-secondary-bg:transparent;--button-secondary-text:#0B0B0B;--button-secondary-border:#0B0B0B;--input-bg:#FFFFFF;--input-border:#D1D1D1;--input-text:#0B0B0B;--input-placeholder:#6B6B6B;--input-disabled-bg:#F5F5F5;--input-disabled-text:#9B9B9B;--shadow-sm:0 1px 2px rgba(11,11,11,0.05);--shadow-md:0 4px 6px rgba(11,11,11,0.1);--shadow-lg:0 10px 15px rgba(11,11,11,0.1)}:root[data-theme="dark"]{--color-primary:#6dcc8b;--color-dark:#FFFFFF;--bg-primary:#0B0B0B;--bg-secondary:#1A1A1A;--bg-tertiary:#2A2A2A;--bg-accent:#6dcc8b;--text-primary:#FFFFFF;--text-secondary:#d1d5db;--text-tertiary:#9ca3af;--text-inverse:#0B0B0B;--text-accent:#6dcc8b;--border-primary:#3A3A3A;--border-secondary:#2A2A2A;--border-focus:#4A9B60;--color-success:#2ECC71;--color-error:#E74C3C;--color-warning:#F1C40F;--color-info:#3498DB;--button-primary-bg:#6dcc8b;--button-primary-text:#0B0B0B;--button-primary-hover:#8dd9a5;--button-primary-hover-text:#0B0B0B;--button-secondary-bg:transparent;--button-secondary-text:#FFFFFF;--button-secondary-border:#FFFFFF;--input-bg:#1A1A1A;--input-border:#3A3A3A;--input-text:#FFFFFF;--input-placeholder:#8B8B8B;--input-disabled-bg:#2A2A2A;--input-disabled-text:#5B5B5B;--shadow-sm:0 1px 2px rgba(0,0,0,0.3);--shadow-md:0 4px 6px rgba(0,0,0,0.4);--shadow-lg:0 10px 15px rgba(0,0,0,0.5)}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{margin:0;padding:0;min-height:100vh;font-family:var(--font-body);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--text-primary);background-color:var(--bg-primary);transition:background-color var(--transition-base),color var(--transition-base)}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}input[type="text"],input[type="email"],input[type="password"],input[type="tel"],input[type="url"],input[type="search"],input[type="number"],input[type="date"],textarea,select{min-height:44px;font-size:16px;padding:var(--spacing-sm,16px) var(--spacing-md,24px)}@media (max-width:640px){input[type="text"],input[type="email"],input[type="password"],input[type="tel"],input[type="url"],input[type="search"],input[type="number"],input[type="date"],textarea,select{min-height:48px}}input[type="checkbox"],input[type="radio"]{width:20px;height:20px;cursor:pointer}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:normal;line-height:var(--line-height-tight);color:var(--text-primary);margin-bottom:var(--spacing-md)}h1{font-size:clamp(2.5rem,5vw,var(--font-size-5xl))}h2{font-size:clamp(2rem,4vw,var(--font-size-4xl))}h3{font-size:clamp(1.75rem,3.5vw,var(--font-size-3xl))}h4{font-size:clamp(1.5rem,3vw,var(--font-size-2xl))}h5{font-size:var(--font-size-xl)}h6{font-size:var(--font-size-lg)}p{margin-bottom:var(--spacing-sm);line-height:var(--line-height-normal)}small{font-size:var(--font-size-sm)}a{color:var(--text-accent);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--button-primary-hover)}a:focus{outline:2px solid var(--border-focus);outline-offset:2px}ul,ol{margin-left:var(--spacing-lg);margin-bottom:var(--spacing-sm)}li{margin-bottom:var(--spacing-xs)}code,pre{font-family:var(--font-code);font-size:var(--font-size-sm)}code{background-color:var(--bg-secondary);padding:2px 6px;border-radius:var(--radius-sm)}pre{background-color:var(--bg-secondary);padding:var(--spacing-md);border-radius:var(--radius-md);overflow-x:auto;margin-bottom:var(--spacing-md)}pre code{background-color:transparent;padding:0}:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.skip-link{position:fixed;top:-100px;left:0;background:var(--button-primary-bg);color:var(--button-primary-text);padding:var(--spacing-sm) var(--spacing-md);text-decoration:none;border-radius:0 0 var(--radius-md) 0;font-weight:600;z-index:9999;transition:top var(--transition-fast)}.skip-link:focus{top:0;outline:2px solid var(--border-focus);outline-offset:2px}@media (min-width:640px){body{font-size:var(--font-size-base)}}@media (min-width:1024px){body{font-size:var(--font-size-lg)}}@media (min-width:1440px){body{font-size:var(--font-size-lg)}}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-accent{color:var(--text-accent)}.text-error{color:var(--color-error)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.m-0{margin:0}.mt-1{margin-top:var(--spacing-xs)}.mt-2{margin-top:var(--spacing-sm)}.mt-3{margin-top:var(--spacing-md)}.mt-4{margin-top:var(--spacing-lg)}.mb-1{margin-bottom:var(--spacing-xs)}.mb-2{margin-bottom:var(--spacing-sm)}.mb-3{margin-bottom:var(--spacing-md)}.mb-4{margin-bottom:var(--spacing-lg)}.ml-1{margin-left:var(--spacing-xs)}.ml-2{margin-left:var(--spacing-sm)}.ml-3{margin-left:var(--spacing-md)}.ml-4{margin-left:var(--spacing-lg)}.mr-1{margin-right:var(--spacing-xs)}.mr-2{margin-right:var(--spacing-sm)}.mr-3{margin-right:var(--spacing-md)}.mr-4{margin-right:var(--spacing-lg)}.p-0{padding:0}.pt-1{padding-top:var(--spacing-xs)}.pt-2{padding-top:var(--spacing-sm)}.pt-3{padding-top:var(--spacing-md)}.pt-4{padding-top:var(--spacing-lg)}.pb-1{padding-bottom:var(--spacing-xs)}.pb-2{padding-bottom:var(--spacing-sm)}.pb-3{padding-bottom:var(--spacing-md)}.pb-4{padding-bottom:var(--spacing-lg)}.pl-1{padding-left:var(--spacing-xs)}.pl-2{padding-left:var(--spacing-sm)}.pl-3{padding-left:var(--spacing-md)}.pl-4{padding-left:var(--spacing-lg)}.pr-1{padding-right:var(--spacing-xs)}.pr-2{padding-right:var(--spacing-sm)}.pr-3{padding-right:var(--spacing-md)}.pr-4{padding-right:var(--spacing-lg)}.hidden{display:none!important}.honeypot{position:absolute;left:-9999px;width:1px;height:1px}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.flex-row{flex-direction:row}.flex-column{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.items-start{align-items:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.gap-1{gap:var(--spacing-xs)}.gap-2{gap:var(--spacing-sm)}.gap-3{gap:var(--spacing-md)}.gap-4{gap:var(--spacing-lg)}.w-full{width:100%}.w-auto{width:auto}.w-fit{width:fit-content}.max-w-sm{max-width:640px}.max-w-md{max-width:768px}.max-w-lg{max-width:1024px}.max-w-xl{max-width:1280px}.max-w-full{max-width:100%}.mb-xs{margin-bottom:var(--spacing-xs)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.mb-xl{margin-bottom:var(--spacing-xl)}.mb-2xl{margin-bottom:var(--spacing-2xl)}.mb-3xl{margin-bottom:var(--spacing-3xl)}.mt-xs{margin-top:var(--spacing-xs)}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mt-xl{margin-top:var(--spacing-xl)}.mt-2xl{margin-top:var(--spacing-2xl)}.mt-3xl{margin-top:var(--spacing-3xl)}.mx-auto{margin-left:auto;margin-right:auto}.my-auto{margin-top:auto;margin-bottom:auto}.gap-xs{gap:var(--spacing-xs)}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.gap-xl{gap:var(--spacing-xl)}.flex-shrink-0{flex-shrink:0}.flex-1{flex:1}.min-h-100{min-height:100px}.min-h-180{min-height:180px}.hide-mobile{display:initial}@media (max-width:640px){.hide-mobile{display:none!important}}.show-mobile{display:none}.show-mobile-flex{display:none}.show-mobile-block{display:none}@media (max-width:640px){.show-mobile{display:initial!important}.show-mobile-flex{display:flex!important}.show-mobile-block{display:block!important}}.hide-tablet{display:initial}@media (max-width:768px){.hide-tablet{display:none!important}}.show-tablet{display:none}@media (max-width:768px){.show-tablet{display:initial!important}}.flex-col-mobile{display:flex;flex-direction:row}@media (max-width:640px){.flex-col-mobile{flex-direction:column}}.flex-reverse-mobile{display:flex}@media (max-width:640px){.flex-reverse-mobile{flex-direction:column-reverse}}.flex-wrap-mobile{display:flex;flex-wrap:wrap}@media (max-width:640px){.flex-wrap-mobile>*{flex:1 1 100%}}.text-center-mobile{text-align:left}@media (max-width:640px){.text-center-mobile{text-align:center}}.text-left-mobile{text-align:center}@media (max-width:640px){.text-left-mobile{text-align:left}}.w-full-mobile{width:auto}@media (max-width:640px){.w-full-mobile{width:100%}}@media (max-width:640px){.order-first-mobile{order:-1}.order-last-mobile{order:999}}@media (max-width:640px){.m-0-mobile{margin:0!important}.mt-0-mobile{margin-top:0!important}.mb-0-mobile{margin-bottom:0!important}.p-0-mobile{padding:0!important}.px-0-mobile{padding-left:0!important;padding-right:0!important}.p-md-mobile{padding:var(--spacing-md)!important}.mb-md-mobile{margin-bottom:var(--spacing-md)!important}}.touch-target{min-height:44px;min-width:44px}.touch-target-lg{min-height:48px;min-width:48px}@media (max-width:640px){.touch-target{min-height:48px;min-width:48px}}.grid-auto{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-lg)}.grid-1{display:grid;grid-template-columns:1fr;gap:var(--spacing-lg)}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg)}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-lg)}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-lg)}@media (max-width:768px){.grid-4{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.grid-2,.grid-3,.grid-4,.grid-auto{grid-template-columns:1fr}.grid-1,.grid-2,.grid-3,.grid-4,.grid-auto{gap:var(--spacing-md)}}.grid-gap-sm{gap:var(--spacing-sm)}.grid-gap-md{gap:var(--spacing-md)}.grid-gap-lg{gap:var(--spacing-lg)}.grid-gap-xl{gap:var(--spacing-xl)}@media (max-width:640px){.grid-gap-xl{gap:var(--spacing-lg)}}.section{padding:var(--section-padding-y,clamp(40px,10vw,100px)) var(--section-padding-x,clamp(16px,5vw,48px))}.section-hero{padding:var(--hero-padding-top,clamp(60px,15vw,140px)) var(--section-padding-x,clamp(16px,5vw,48px)) var(--hero-padding-bottom,clamp(40px,10vw,100px))}.section-compact{padding:var(--content-padding-y,clamp(24px,5vw,48px)) var(--section-padding-x,clamp(16px,5vw,48px))}.py-section{padding-top:var(--section-padding-y,clamp(40px,10vw,100px));padding-bottom:var(--section-padding-y,clamp(40px,10vw,100px))}.py-compact{padding-top:var(--content-padding-y,clamp(24px,5vw,48px));padding-bottom:var(--content-padding-y,clamp(24px,5vw,48px))}.px-section{padding-left:var(--section-padding-x,clamp(16px,5vw,48px));padding-right:var(--section-padding-x,clamp(16px,5vw,48px))}.text-fluid-xs{font-size:var(--fluid-xs,clamp(0.75rem,1.5vw,0.875rem))}.text-fluid-sm{font-size:var(--fluid-sm,clamp(0.875rem,2vw,1rem))}.text-fluid-base{font-size:var(--fluid-base,clamp(1rem,2.5vw,1.125rem))}.text-fluid-lg{font-size:var(--fluid-lg,clamp(1.125rem,3vw,1.25rem))}.text-fluid-xl{font-size:var(--fluid-xl,clamp(1.25rem,3.5vw,1.5rem))}.text-fluid-2xl{font-size:var(--fluid-2xl,clamp(1.5rem,4vw,2rem))}.text-fluid-3xl{font-size:var(--fluid-3xl,clamp(1.75rem,5vw,2.5rem))}.text-fluid-4xl{font-size:var(--fluid-4xl,clamp(2rem,6vw,3rem))}.text-fluid-5xl{font-size:var(--fluid-5xl,clamp(2.5rem,8vw,4rem))}.hero-title{font-size:var(--fluid-hero,clamp(2rem,8vw,4rem));line-height:1.1}.hero-subtitle{font-size:var(--fluid-hero-subtitle,clamp(1.125rem,3vw,1.5rem));line-height:1.5}.form-group{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-bottom:var(--spacing-md)}.form-row{display:flex;flex-direction:column;gap:var(--spacing-md)}@media (min-width:640px){.form-row{flex-direction:row}.form-row>.form-group{flex:1}}.form-actions{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-top:var(--spacing-lg)}@media (min-width:640px){.form-actions{flex-direction:row;justify-content:flex-end}.form-actions .button{width:auto}}@media (max-width:639px){.form-actions .button{width:100%}}.photo-attribution{text-align:center;font-size:var(--font-size-xs,0.75rem);color:var(--text-secondary);margin-top:var(--spacing-md);margin-bottom:0;padding:var(--spacing-xs) 0;font-style:italic}.photo-attribution a{color:var(--text-secondary);text-decoration:underline;transition:color 0.2s ease}.photo-attribution a:hover{color:var(--text-primary)}.image-source{text-align:center;font-size:var(--font-size-xs,0.75rem);color:var(--text-secondary);margin-top:var(--spacing-sm);margin-bottom:var(--spacing-md);padding:var(--spacing-xs) 0}.image-source a{color:var(--text-secondary);text-decoration:underline;transition:color 0.2s ease}.image-source a:hover{color:var(--text-primary)}.underline{text-decoration:underline}.line-through{text-decoration:line-through}.no-underline{text-decoration:none}.list-none{list-style-type:none}.list-disc{list-style-type:disc}.list-decimal{list-style-type:decimal}.text-xs{font-size:0.75rem}.text-sm{font-size:0.875rem}.text-base{font-size:1rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}.bg-highlight-yellow{background-color:rgba(250,214,51,0.25);padding:var(--spacing-xs);border-radius:var(--radius-sm)}.bg-highlight-gray{background-color:#f5f6f5;padding:var(--spacing-xs);border-radius:var(--radius-sm)}.button{display:inline-flex;align-items:center;justify-content:center;padding:8px 16px;border:2px solid transparent;border-radius:4px;font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:all var(--transition-fast);text-decoration:none}.button--primary{background-color:var(--button-primary-bg);color:var(--button-primary-text)}.button--primary:hover:not(:disabled){background-color:var(--button-primary-hover);color:var(--button-primary-hover-text);transform:translateY(-1px);box-shadow:var(--shadow-md)}.button--primary:active:not(:disabled){transform:translateY(0)}.button--secondary{background-color:var(--bg-tertiary);color:var(--text-primary)}.button--secondary:hover:not(:disabled){background-color:var(--bg-secondary);transform:translateY(-1px)}.button--outline{background-color:transparent;border-color:var(--button-secondary-border);color:var(--button-secondary-text)}.button--outline:hover:not(:disabled){background-color:var(--bg-secondary);transform:translateY(-1px)}.button--read-more{text-transform:uppercase;letter-spacing:0.5px}.button:disabled{opacity:0.5;cursor:not-allowed}.button--loading{position:relative;color:transparent}.button--loading::after{content:'';position:absolute;width:16px;height:16px;top:50%;left:50%;margin-left:-8px;margin-top:-8px;border:2px solid var(--button-primary-text);border-radius:50%;border-top-color:transparent;animation:button-loading-spinner 0.6s linear infinite}@keyframes button-loading-spinner{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.input,.textarea,.select{width:100%;padding:var(--spacing-sm);background-color:var(--input-bg);border:2px solid var(--input-border);border-radius:var(--radius-md);color:var(--input-text);font-size:var(--font-size-base);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.input:focus,.textarea:focus,.select:focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 3px rgba(122,196,136,0.1)}.input:disabled,.textarea:disabled,.select:disabled{background-color:var(--input-disabled-bg);color:var(--input-disabled-text);cursor:not-allowed}.input::placeholder,.textarea::placeholder{color:var(--input-placeholder)}.select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="8" viewBox="0 0 12 8"><path fill="%23666" d="M1.41 0L6 4.58 10.59 0 12 1.41l-6 6-6-6z"/></svg>');background-repeat:no-repeat;background-position:right var(--spacing-sm) center;background-size:12px;padding-right:calc(var(--spacing-sm) * 3);cursor:pointer}.select:hover:not(:disabled){border-color:var(--text-secondary)}.select:disabled{opacity:0.6;background-image:url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="8" viewBox="0 0 12 8"><path fill="%23999" d="M1.41 0L6 4.58 10.59 0 12 1.41l-6 6-6-6z"/></svg>')}:root[data-theme="dark"] .select{background-image:url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="8" viewBox="0 0 12 8"><path fill="%23B8B8B8" d="M1.41 0L6 4.58 10.59 0 12 1.41l-6 6-6-6z"/></svg>')}:root[data-theme="dark"] .select:disabled{background-image:url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="8" viewBox="0 0 12 8"><path fill="%23666" d="M1.41 0L6 4.58 10.59 0 12 1.41l-6 6-6-6z"/></svg>')}.input--error{border-color:var(--color-error)}.input--error:focus{box-shadow:0 0 0 3px rgba(220,53,69,0.1)}.input--success{border-color:var(--color-success)}.input--success:focus{box-shadow:0 0 0 3px rgba(40,167,69,0.1)}.input-message{font-size:var(--font-size-sm);margin-top:4px}.input-message--error{color:var(--color-error)}.input-message--success{color:var(--color-success)}.textarea{resize:vertical;min-height:100px}.checkbox-group,.radio-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.checkbox-label,.radio-label{display:flex;align-items:center;gap:var(--spacing-xs);cursor:pointer}.checkbox,.radio{width:20px;height:20px;cursor:pointer}.checkbox-label:has(.checkbox:disabled),.radio-label:has(.radio:disabled){opacity:0.5;cursor:not-allowed}.alert{padding:var(--spacing-md);border-radius:var(--radius-md);border-left:4px solid}.alert--info{background-color:rgba(23,162,184,0.1);border-color:var(--color-info);color:var(--text-primary)}.alert--success{background-color:rgba(40,167,69,0.1);border-color:var(--color-success);color:var(--text-primary)}.alert--warning{background-color:rgba(255,193,7,0.1);border-color:var(--color-warning);color:var(--text-primary)}.alert--error{background-color:rgba(220,53,69,0.1);border-color:var(--color-error);color:var(--text-primary)}.badge{display:inline-block;padding:4px var(--spacing-xs);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:500}.badge--primary{background-color:var(--color-primary);color:var(--text-inverse)}.badge--success{background-color:var(--color-success);color:var(--text-inverse)}.badge--warning{background-color:var(--color-warning);color:var(--text-primary)}.badge--error{background-color:var(--color-error);color:var(--text-inverse)}.badge--info{background-color:var(--color-info);color:var(--text-inverse)}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-lg)}.card{background-color:var(--bg-primary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);overflow:hidden;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.card-image{overflow:hidden}.card-body{padding:var(--spacing-md)}.card-title{font-size:var(--font-size-lg);margin-bottom:var(--spacing-xs)}.card-text{color:var(--text-secondary);margin-bottom:var(--spacing-md)}.tag-list{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.tag{display:inline-block;padding:4px 12px;background-color:var(--bg-secondary);color:var(--text-primary);text-decoration:none;border-radius:var(--radius-sm);font-size:var(--font-size-sm);transition:all var(--transition-fast);border:1px solid transparent}.tag:hover{background-color:var(--bg-tertiary);border-color:var(--color-primary);color:var(--text-accent)}.tag--category{background-color:var(--color-primary);color:#FFFFFF;border:1px solid var(--color-primary);font-weight:600;opacity:1}.tag--category:hover{background-color:var(--button-primary-hover);color:#FFFFFF;border-color:var(--button-primary-hover);opacity:1;transform:translateY(-1px)}.tag-cloud{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);align-items:center;padding:var(--spacing-md);background-color:var(--bg-tertiary);border-radius:var(--radius-md)}.tag-cloud-item{display:inline-block;padding:4px 10px;background-color:var(--bg-primary);color:var(--text-primary);text-decoration:none;border-radius:var(--radius-sm);transition:all var(--transition-fast);font-size:1em}.tag-cloud-item:hover{background-color:var(--color-primary);color:var(--button-primary-text);transform:scale(1.05)}.table-container{overflow-x:auto}.table{width:100%;border-collapse:collapse;background-color:var(--bg-primary)}.table th,.table td{padding:var(--spacing-sm) var(--spacing-md);text-align:left;border-bottom:1px solid var(--border-secondary)}.table th{background-color:var(--bg-tertiary);font-weight:600;color:var(--text-primary)}.table tr:hover{background-color:var(--bg-secondary)}.pagination{display:flex;gap:var(--spacing-xs);flex-wrap:wrap}.pagination-btn{padding:8px 12px;background-color:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:4px;color:var(--text-primary);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.pagination-btn:hover:not(.pagination-btn--active){background-color:var(--bg-secondary)}.pagination-btn--active{background-color:var(--button-primary-bg);color:var(--button-primary-text);border-color:var(--button-primary-bg)}.breadcrumb{padding:0}.breadcrumb-list{display:flex;flex-wrap:wrap;align-items:center;gap:0;list-style:none;margin:0;font-size:var(--font-size-base);text-transform:uppercase;letter-spacing:0.5px}.breadcrumb-list li{display:flex;align-items:center}.breadcrumb-list li a{color:var(--text-accent);text-decoration:none;transition:color var(--transition-fast);font-weight:600}.breadcrumb-list li a:hover{color:var(--button-primary-hover)}.breadcrumb-list li:not(:last-child)::after{content:'>';margin:0 10px;color:var(--text-tertiary);font-size:1em;font-weight:400}.breadcrumb-list li:last-child{color:var(--text-accent);font-weight:600}.modal-content{max-width:500px;background-color:var(--bg-primary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);box-shadow:0 4px 12px rgba(0,0,0,0.15)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);border-bottom:1px solid rgba(0,0,0,0.05)}:root[data-theme="dark"] .modal-header{border-bottom:1px solid rgba(255,255,255,0.05)}.modal-header h4{margin:0}.modal-close{background:none;border:none;font-size:var(--font-size-2xl);color:var(--text-secondary);cursor:pointer;padding:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;transition:color var(--transition-fast)}.modal-close:hover{color:var(--text-primary)}.modal-body{padding:var(--spacing-md)}.modal-footer{display:flex;gap:var(--spacing-sm);justify-content:flex-end;padding:var(--spacing-md);border-top:1px solid rgba(0,0,0,0.05)}:root[data-theme="dark"] .modal-footer{border-top:1px solid rgba(255,255,255,0.05)}.modal-footer .button{padding:8px 16px;font-size:var(--font-size-sm)}