@import"https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;1,9..40,300;1,9..40,400&display=swap";.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);border:1px solid transparent;border-radius:var(--radius-sm);font-family:var(--font-primary);font-weight:500;letter-spacing:.02em;cursor:pointer;transition:background var(--transition-base),color var(--transition-base),border-color var(--transition-base),opacity var(--transition-base);white-space:nowrap;text-decoration:none;-webkit-user-select:none;user-select:none}.btn:disabled,.btn--loading{opacity:.5;cursor:not-allowed;pointer-events:none}.btn--primary{background:var(--color-text-primary);color:var(--color-bg);border-color:var(--color-text-primary)}.btn--primary:hover:not(:disabled){background:#2a2a2a;border-color:#2a2a2a}.btn--secondary{background:var(--color-surface);color:var(--color-text-primary);border-color:var(--color-border)}.btn--secondary:hover:not(:disabled){background:var(--color-surface-alt);border-color:var(--color-border-dark)}.btn--danger{background:var(--color-danger);color:#fff;border-color:var(--color-danger)}.btn--danger:hover:not(:disabled){background:#a93226;border-color:#a93226}.btn--outline{background:transparent;color:var(--color-text-primary);border-color:var(--color-text-primary)}.btn--outline:hover:not(:disabled){background:var(--color-text-primary);color:var(--color-bg)}.btn--ghost{background:transparent;color:var(--color-text-muted);border-color:transparent}.btn--ghost:hover:not(:disabled){color:var(--color-text-primary);background:var(--color-border)}.btn--small{padding:var(--space-2) var(--space-4);font-size:var(--font-size-sm)}.btn--medium{padding:var(--space-3) var(--space-6);font-size:var(--font-size-base)}.btn--large{padding:var(--space-4) var(--space-8);font-size:var(--font-size-md)}.btn--full{width:100%}.btn__spinner{animation:btn-spin .8s linear infinite;flex-shrink:0}@keyframes btn-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-fallback{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-20) var(--space-6);text-align:center;gap:var(--space-4);min-height:400px}.error-fallback__title{font-size:var(--font-size-xl);font-weight:500;color:var(--color-text-primary)}.error-fallback__message{font-size:var(--font-size-sm);color:var(--color-text-muted);max-width:400px}.header{position:sticky;top:0;z-index:200;background:var(--color-bg);border-bottom:1px solid transparent;transition:border-color var(--transition-base),box-shadow var(--transition-base)}.header--scrolled{border-bottom-color:var(--color-border);box-shadow:0 1px 0 var(--color-border)}.header__inner{max-width:1400px;margin:0 auto;padding:0 var(--space-8);height:64px;display:flex;align-items:center;justify-content:space-between;gap:var(--space-8)}.header__logo{display:inline-flex;align-items:center;gap:var(--space-2);text-decoration:none;color:var(--color-text-primary);font-size:var(--font-size-sm);font-weight:500;letter-spacing:.1em;text-transform:uppercase;flex-shrink:0}.header__nav{display:flex;align-items:center;gap:var(--space-7);margin-left:auto}.header__link{position:relative;text-decoration:none;font-size:var(--font-size-sm);font-weight:400;color:var(--color-text-muted);transition:color var(--transition-base);white-space:nowrap}.header__link:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:1px;background:var(--color-text-primary);transition:width var(--transition-base)}.header__link:hover{color:var(--color-text-primary)}.header__link:hover:after,.header__link--active:after{width:100%}.header__link--active{color:var(--color-text-primary)}.header__link--icon{display:inline-flex;align-items:center;position:relative;padding:var(--space-1)}.header__link--icon:after{display:none}.header__badge{position:absolute;top:-6px;right:-8px;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:var(--color-text-primary);color:var(--color-bg);font-size:10px;font-weight:600;display:flex;align-items:center;justify-content:center;line-height:1}.header__mobile-link .header__badge{position:static}.header__hamburger{display:none;background:none;border:none;cursor:pointer;color:var(--color-text-primary);padding:var(--space-1);border-radius:var(--radius-sm);transition:background var(--transition-base)}.header__hamburger:hover{background:var(--color-surface-alt)}.header__mobile-menu{position:fixed;top:64px;right:0;bottom:0;left:0;background:var(--color-bg);z-index:199;border-top:1px solid var(--color-border);overflow-y:auto}.header__mobile-nav{display:flex;flex-direction:column}.header__mobile-link{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-6);text-decoration:none;font-size:var(--font-size-md);color:var(--color-text-primary);border-bottom:1px solid var(--color-border);transition:background var(--transition-base)}.header__mobile-link:hover{background:var(--color-surface-alt)}@media (max-width: 768px){.header__nav{display:none}.header__hamburger{display:flex;align-items:center}.header__inner{padding:0 var(--space-5)}}.footer{background:var(--color-text-primary);color:var(--color-bg);margin-top:auto}.footer__inner{max-width:1400px;margin:0 auto;padding:var(--space-16) var(--space-8);display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:var(--space-10)}.footer__brand{display:flex;flex-direction:column;gap:var(--space-4)}.footer__logo{display:inline-flex;align-items:center;gap:var(--space-2);text-decoration:none;color:var(--color-bg);font-size:var(--font-size-sm);font-weight:500;letter-spacing:.1em;text-transform:uppercase}.footer__tagline{font-size:var(--font-size-sm);color:#f5f5f080;line-height:1.6;max-width:240px}.footer__social{display:flex;gap:var(--space-4)}.footer__social-link{font-size:var(--font-size-sm);color:#f5f5f080;text-decoration:none;transition:color var(--transition-base)}.footer__social-link:hover{color:var(--color-bg)}.footer__col-heading{font-size:var(--font-size-xs);font-weight:500;text-transform:uppercase;letter-spacing:.1em;color:var(--color-bg);margin-bottom:var(--space-4)}.footer__links{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-3)}.footer__link{font-size:var(--font-size-sm);color:#f5f5f080;text-decoration:none;transition:color var(--transition-base)}.footer__link:hover{color:var(--color-bg)}.footer__link--admin{opacity:.4;font-size:var(--font-size-xs)}.footer__bottom{border-top:1px solid rgba(245,245,240,.1);padding:var(--space-5) var(--space-8);max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.footer__copy,.footer__payments{font-size:var(--font-size-xs);color:#f5f5f059}@media (max-width: 1024px){.footer__inner{grid-template-columns:1fr 1fr;gap:var(--space-8)}.footer__brand{grid-column:1 / -1}}@media (max-width: 640px){.footer__inner{grid-template-columns:1fr;padding:var(--space-10) var(--space-5);gap:var(--space-8)}.footer__bottom{flex-direction:column;gap:var(--space-2);text-align:center;padding:var(--space-4) var(--space-5)}}.toast-container{position:fixed;top:calc(var(--header-height) + var(--space-4));right:var(--space-6);z-index:var(--z-toast);display:flex;flex-direction:column;gap:var(--space-2);max-width:360px;width:max-content}.toast{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);box-shadow:var(--shadow-md);animation:toast-in .2s ease-out;min-width:280px}@keyframes toast-in{0%{transform:translate(calc(100% + var(--space-6)));opacity:0}to{transform:translate(0);opacity:1}}.toast--success{background:var(--color-success);color:#fff}.toast--error{background:var(--color-danger);color:#fff}.toast--info{background:var(--color-text-primary);color:var(--color-bg)}.toast--warning{background:var(--color-warning);color:#fff}.toast__message{flex:1;font-size:var(--font-size-sm);font-weight:400;line-height:1.4}.toast__close{background:none;border:none;color:inherit;cursor:pointer;padding:var(--space-1);display:flex;align-items:center;justify-content:center;opacity:.7;transition:opacity var(--transition-base);border-radius:var(--radius-sm);flex-shrink:0}.toast__close:hover{opacity:1}@media (max-width: 768px){.toast-container{right:var(--space-4);left:var(--space-4);max-width:none;width:auto}.toast{min-width:auto}}.layout{min-height:100vh;display:flex;flex-direction:column;background:var(--color-bg)}.main-content{flex:1;max-width:1400px;width:100%;margin:0 auto;padding:var(--space-10) var(--space-8)}.skip-link{position:absolute;top:-100%;left:var(--space-4);z-index:300;padding:var(--space-2) var(--space-4);background:var(--color-text-primary);color:var(--color-bg);font-size:var(--font-size-sm);font-weight:500;text-decoration:none;border-radius:var(--radius-sm);transition:top var(--transition-base)}.skip-link:focus{top:var(--space-3)}@media (max-width: 768px){.main-content{padding:var(--space-6) var(--space-5)}}.spinner-container{display:flex;justify-content:center;align-items:center;padding:var(--space-8)}.spinner-container--fullscreen{display:flex;justify-content:center;align-items:center;min-height:60vh;width:100%}.spinner{border:2px solid var(--color-border);border-top-color:var(--color-text-primary);border-radius:50%;animation:spinner-rotate .7s linear infinite}.spinner--small{width:20px;height:20px}.spinner--medium{width:40px;height:40px}.spinner--large{width:56px;height:56px;border-width:3px}@keyframes spinner-rotate{to{transform:rotate(360deg)}}:root{--color-bg: #F5F5F0;--color-surface: #FFFFFF;--color-surface-alt: #FAFAF8;--color-text-primary: #0A0A0A;--color-text-muted: #6B6B6B;--color-text-light: #9B9B9B;--color-border: #E8E8E4;--color-border-dark: #C8C8C2;--color-accent: #C8A96E;--color-accent-dark: #A8893E;--color-accent-light: #E8D5A8;--color-danger: #C0392B;--color-danger-light: #F8D7D4;--color-success: #1A7F5A;--color-success-light:#D4F0E6;--color-warning: #B45309;--color-warning-light:#FEF3C7;--color-info: #1E40AF;--color-info-light: #DBEAFE;--font-primary: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-md: 1.125rem;--font-size-lg: 1.25rem;--font-size-xl: 1.5rem;--font-size-2xl: 2rem;--font-size-3xl: 2.5rem;--font-size-4xl: 3.5rem;--font-size-5xl: 5rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--container-max: 1280px;--container-narrow: 960px;--header-height: 72px;--radius-sm: 2px;--radius-md: 4px;--radius-lg: 8px;--radius-full: 9999px;--shadow-sm: 0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);--shadow-md: 0 4px 12px rgba(0,0,0,.08);--shadow-lg: 0 12px 32px rgba(0,0,0,.1);--shadow-xl: 0 24px 48px rgba(0,0,0,.12);--transition-base: .2s ease;--transition-slow: .4s ease;--z-dropdown: 100;--z-sticky: 200;--z-overlay: 300;--z-modal: 400;--z-toast: 500}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-primary);font-size:var(--font-size-base);font-weight:400;line-height:1.6;color:var(--color-text-primary);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh;display:flex;flex-direction:column}h1,h2,h3,h4,h5,h6{font-weight:500;line-height:1.2;letter-spacing:-.02em;color:var(--color-text-primary)}p{color:var(--color-text-muted);line-height:1.7}a{text-decoration:none;color:inherit}button{font-family:var(--font-primary);cursor:pointer}img{max-width:100%;height:auto;display:block}.container{width:100%;max-width:var(--container-max);margin:0 auto;padding:0 var(--space-6)}.container--narrow{max-width:var(--container-narrow)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--color-bg)}::-webkit-scrollbar-thumb{background:var(--color-border-dark);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm)}::selection{background:var(--color-accent-light);color:var(--color-text-primary)}.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-20) var(--space-6);text-align:center;gap:var(--space-4)}.error-container h2{font-size:var(--font-size-xl);color:var(--color-text-primary)}.error-container p{color:var(--color-text-muted);max-width:400px}
