@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2JL7SUc.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa0ZL7SUc.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2ZL7SUc.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1pL7SUc.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa2pL7SUc.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa25L7SUc.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display;font-style:italic;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/playfairdisplay/v40/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_naUXtXA-W2r.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Playfair Display;font-style:italic;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/playfairdisplay/v40/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_naUXt7A-W2r.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display;font-style:italic;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/playfairdisplay/v40/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_naUXt_A-W2r.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display;font-style:italic;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/playfairdisplay/v40/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_naUXtHA-Q.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/playfairdisplay/v40/nuFiD-vYSZviVYUb_rj3ij__anPXDTjYgFE_.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Playfair Display;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/playfairdisplay/v40/nuFiD-vYSZviVYUb_rj3ij__anPXDTPYgFE_.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/playfairdisplay/v40/nuFiD-vYSZviVYUb_rj3ij__anPXDTLYgFE_.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display;font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/playfairdisplay/v40/nuFiD-vYSZviVYUb_rj3ij__anPXDTzYgA.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/playfairdisplay/v40/nuFiD-vYSZviVYUb_rj3ij__anPXDTjYgFE_.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Playfair Display;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/playfairdisplay/v40/nuFiD-vYSZviVYUb_rj3ij__anPXDTPYgFE_.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/playfairdisplay/v40/nuFiD-vYSZviVYUb_rj3ij__anPXDTLYgFE_.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display;font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/playfairdisplay/v40/nuFiD-vYSZviVYUb_rj3ij__anPXDTzYgA.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-primary: #C8603A;--color-primary-light: #E07A54;--color-primary-dark: #A34A2A;--color-primary-subtle: #F5E8E3;--color-accent: #7A9E7E;--color-accent-light: #9FBF9F;--color-accent-dark: #5A7E5E;--color-accent-subtle: #EDF3EE;--color-surface: #FFFDF8;--color-surface-alt: #F5F0E8;--color-border: #E8E0D0;--color-border-strong: #C8B898;--color-text: #2C2418;--color-text-secondary: #6B5E48;--color-text-muted: #9B8E78;--color-text-inverse: #FFFDF8;--color-success: #4A8C5C;--color-success-bg: #EDF5F0;--color-warning: #C8922A;--color-warning-bg: #FBF4E8;--color-error: #C83A3A;--color-error-bg: #FAE8E8;--color-info: #3A6EC8;--color-info-bg: #E8EEFA;--color-bg: #FFFDF8;--color-bg-alt: #F5F0E8;--color-overlay: rgba(44, 36, 24, .5);--font-title: "Playfair Display", Georgia, serif;--font-body: "Inter", system-ui, -apple-system, 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: 1.875rem;--font-size-3xl: 2.25rem;--font-size-4xl: 3rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-snug: 1.375;--line-height-normal: 1.5;--line-height-relaxed: 1.625;--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;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 24px;--radius-full: 9999px;--shadow-xs: 0 1px 2px rgba(44, 36, 24, .05);--shadow-sm: 0 1px 3px rgba(44, 36, 24, .1), 0 1px 2px rgba(44, 36, 24, .06);--shadow-md: 0 4px 6px rgba(44, 36, 24, .07), 0 2px 4px rgba(44, 36, 24, .06);--shadow-lg: 0 10px 15px rgba(44, 36, 24, .1), 0 4px 6px rgba(44, 36, 24, .05);--shadow-xl: 0 20px 25px rgba(44, 36, 24, .1), 0 10px 10px rgba(44, 36, 24, .04);--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .35s ease;--navbar-height: 60px;--sidebar-width: 240px;--content-max-width: 1200px;--card-max-width: 380px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--font-body);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img,video,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}button{cursor:pointer;border:none;background:none}a{color:inherit;text-decoration:none}ul,ol{list-style:none}h1,h2,h3,h4,h5,h6{font-family:var(--font-title);line-height:var(--line-height-tight);font-weight:var(--font-weight-bold);color:var(--color-text)}p{line-height:var(--line-height-relaxed)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.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-md{font-size:var(--font-size-md)}.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)}.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)}.text-primary{color:var(--color-primary)}.text-secondary{color:var(--color-text-secondary)}.text-muted{color:var(--color-text-muted)}.text-error{color:var(--color-error)}.text-success{color:var(--color-success)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:1;transition:background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast);-webkit-user-select:none;user-select:none;white-space:nowrap}.btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn:active:not(:disabled){transform:translateY(1px)}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:1;transition:background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast);-webkit-user-select:none;user-select:none;white-space:nowrap}.btn-primary:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.btn-primary:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn-primary:active:not(:disabled){transform:translateY(1px)}.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{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:1;transition:background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast);-webkit-user-select:none;user-select:none;white-space:nowrap}.btn-secondary:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.btn-secondary:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn-secondary:active:not(:disabled){transform:translateY(1px)}.btn-secondary{background-color:transparent;color:var(--color-primary);border:2px solid var(--color-primary)}.btn-secondary:hover:not(:disabled){background-color:var(--color-primary-subtle)}.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:1;transition:background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast);-webkit-user-select:none;user-select:none;white-space:nowrap}.btn-ghost:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.btn-ghost:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn-ghost:active:not(:disabled){transform:translateY(1px)}.btn-ghost{background-color:transparent;color:var(--color-text-secondary)}.btn-ghost:hover:not(:disabled){background-color:var(--color-surface-alt);color:var(--color-text)}.btn-danger{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:1;transition:background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast);-webkit-user-select:none;user-select:none;white-space:nowrap}.btn-danger:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.btn-danger:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn-danger:active:not(:disabled){transform:translateY(1px)}.btn-danger{background-color:var(--color-error);color:#fff}.btn-danger:hover:not(:disabled){background-color:#a82e2e}.btn-sm{padding:var(--space-2) var(--space-3);font-size:var(--font-size-xs)}.btn-lg{padding:var(--space-4) var(--space-8);font-size:var(--font-size-md)}.btn-icon{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:1;transition:background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast);-webkit-user-select:none;user-select:none;white-space:nowrap}.btn-icon:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.btn-icon:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn-icon:active:not(:disabled){transform:translateY(1px)}.btn-icon{padding:var(--space-2);border-radius:var(--radius-md);background-color:transparent;color:var(--color-text-secondary)}.btn-icon:hover:not(:disabled){background-color:var(--color-surface-alt);color:var(--color-text)}.form-group{display:flex;flex-direction:column;gap:var(--space-2)}.form-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.form-input,.form-textarea,.form-select{width:100%;padding:var(--space-3) var(--space-4);font-size:var(--font-size-base);color:var(--color-text);background-color:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);appearance:none}.form-input::placeholder,.form-textarea::placeholder,.form-select::placeholder{color:var(--color-text-muted)}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #c8603a26}.form-input.is-error,.form-textarea.is-error,.form-select.is-error{border-color:var(--color-error)}.form-input.is-error:focus,.form-textarea.is-error:focus,.form-select.is-error:focus{box-shadow:0 0 0 3px #c83a3a26}.form-input:disabled,.form-textarea:disabled,.form-select:disabled{background-color:var(--color-surface-alt);cursor:not-allowed;opacity:.7}.form-textarea{resize:vertical;min-height:100px}.form-error{font-size:var(--font-size-xs);color:var(--color-error);margin-top:var(--space-1)}.form-hint{font-size:var(--font-size-xs);color:var(--color-text-muted)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-6)}.card-sm{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-4)}.badge{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-2);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);border-radius:var(--radius-full);line-height:1}.badge-green{background-color:var(--color-success-bg);color:var(--color-success)}.badge-orange{background-color:var(--color-warning-bg);color:var(--color-warning)}.badge-primary{background-color:var(--color-primary-subtle);color:var(--color-primary-dark)}.divider{height:1px;background-color:var(--color-border);border:none;margin:var(--space-4) 0}.spinner{width:20px;height:20px;border:2px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.container{width:100%;max-width:var(--content-max-width);margin:0 auto;padding:0 var(--space-4)}@media(min-width:768px){.container{padding:0 var(--space-6)}}.page{padding:var(--space-6) var(--space-4)}@media(min-width:768px){.page{padding:var(--space-8) var(--space-6)}}.page-title{font-size:var(--font-size-2xl);font-family:var(--font-title);margin-bottom:var(--space-6)}@media(min-width:768px){.page-title{font-size:var(--font-size-3xl)}}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-4);background-color:var(--color-bg-alt)}.auth-card{width:100%;max-width:420px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-8) var(--space-8);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:var(--space-5)}.auth-card__logo{font-family:var(--font-title);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-primary);text-align:center}.auth-card__title{font-family:var(--font-title);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text);text-align:center;margin:0}.auth-card__subtitle{font-size:var(--font-size-sm);color:var(--color-text-secondary);text-align:center;margin:calc(-1 * var(--space-3)) 0 0}.auth-card__forgot{text-align:right;font-size:var(--font-size-sm)}.auth-card__forgot a{color:var(--color-primary);text-decoration:none}.auth-card__error{padding:var(--space-3) var(--space-4);background-color:var(--color-error-bg);color:var(--color-error);border-radius:var(--radius-md);font-size:var(--font-size-sm);text-align:center}.auth-card__success{padding:var(--space-3) var(--space-4);background-color:var(--color-success-bg);color:var(--color-success);border-radius:var(--radius-md);font-size:var(--font-size-sm);text-align:center}.auth-card__submit{width:100%;display:flex;align-items:center;justify-content:center;gap:var(--space-2);margin-top:var(--space-2)}.auth-card__switch{text-align:center;font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.auth-card__switch a{color:var(--color-primary);text-decoration:none;font-weight:var(--font-weight-medium)}.auth-card__code-input{text-align:center;font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);letter-spacing:.4em}.empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--space-16) var(--space-4);gap:var(--space-4);color:var(--color-text-muted)}.empty-state__icon{font-size:3rem;opacity:.4}.empty-state__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary)}.empty-state__text{font-size:var(--font-size-sm);max-width:320px}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-bg) 0%,var(--color-primary-subtle) 100%);padding:var(--space-4)}.auth-card{width:100%;max-width:420px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);padding:var(--space-8) var(--space-8)}@media(max-width:480px){.auth-card{padding:var(--space-6) var(--space-5)}}.auth-card__logo{font-family:var(--font-title);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-primary);text-align:center;margin-bottom:var(--space-2)}.auth-card__title{font-size:var(--font-size-2xl);text-align:center;margin-bottom:var(--space-6);color:var(--color-text)}.auth-card__subtitle{font-size:var(--font-size-sm);color:var(--color-text-secondary);text-align:center;margin-bottom:var(--space-6);line-height:var(--line-height-relaxed)}.auth-card form{display:flex;flex-direction:column;gap:var(--space-4)}.auth-card__forgot{text-align:right;margin-top:calc(-1 * var(--space-2))}.auth-card__forgot a{font-size:var(--font-size-sm);color:var(--color-primary)}.auth-card__forgot a:hover{text-decoration:underline}.auth-card__error{background:var(--color-error-bg);color:var(--color-error);border:1px solid var(--color-error);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);font-size:var(--font-size-sm)}.auth-card__success{background:var(--color-success-bg);color:var(--color-success);border:1px solid var(--color-success);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed)}.auth-card__submit{width:100%;margin-top:var(--space-2)}.auth-card__switch{text-align:center;margin-top:var(--space-6);font-size:var(--font-size-sm);color:var(--color-text-secondary);border-top:1px solid var(--color-border);padding-top:var(--space-5)}.auth-card__switch a{color:var(--color-primary);font-weight:var(--font-weight-semibold)}.auth-card__switch a:hover{text-decoration:underline}.auth-card__code-input{text-align:center;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);letter-spacing:.5em;padding:var(--space-4)}
