:root{--color-primary: #1b4965;--color-primary-light: #2d6a8f;--color-secondary: #9b7b5b;--color-accent: #bea882;--color-bg: #fafbfd;--color-bg-alt: #f0f3f7;--color-text: #1e2a3a;--color-text-light: #5a6b7e;--color-border: #d8dfe8;--color-white: #ffffff;--color-error: #c53030;--color-success: #1b6b4a;--color-warning: #d69e2e;--font-heading: "Cormorant Garamond", Georgia, serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--radius: 8px;--radius-lg: 16px;--shadow-sm: 0 1px 2px rgba(44, 44, 44, .06);--shadow-md: 0 4px 14px rgba(44, 44, 44, .08);--shadow-lg: 0 12px 40px rgba(44, 44, 44, .12);--transition: .2s ease;--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}body{min-height:100vh;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}ul,ol{list-style:none;padding:0}a{color:inherit;text-decoration:none}button{cursor:pointer;background:none;border:none}body{font-family:var(--font-body);font-size:1rem;color:var(--color-text);background-color:var(--color-bg)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600;line-height:1.2;color:var(--color-text)}h1{font-size:clamp(2rem,5vw,3rem)}h2{font-size:clamp(1.5rem,3vw,2.25rem)}h3{font-size:clamp(1.25rem,2vw,1.5rem)}::selection{background-color:#1b496533;color:var(--color-text)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}*{scrollbar-width:thin;scrollbar-color:var(--color-border) var(--color-bg-alt)}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:var(--color-bg-alt)}*::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:999px;border:2px solid var(--color-bg-alt)}*::-webkit-scrollbar-thumb:hover{background:var(--color-text-light)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.text-primary{color:var(--color-primary)}.text-secondary{color:var(--color-secondary)}.text-accent{color:var(--color-accent)}.text-muted{color:var(--color-text-light)}.text-error{color:var(--color-error)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.bg-page{background-color:var(--color-bg)}.bg-alt{background-color:var(--color-bg-alt)}.bg-white{background-color:var(--color-white)}.bg-primary{background-color:var(--color-primary);color:var(--color-white)}.font-heading{font-family:var(--font-heading)}.font-body{font-family:var(--font-body)}.rounded{border-radius:var(--radius)}.rounded-lg{border-radius:var(--radius-lg)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.border-default{border:1px solid var(--color-border)}.transition{transition:all var(--transition)}.animate-fade-in{animation:fadeIn var(--transition) forwards}.animate-slide-up{animation:slideUp .35s ease forwards}.animate-slide-down{animation:slideDown .35s ease forwards}.container{width:100%;max-width:var(--breakpoint-xl);margin-inline:auto;padding-inline:1.25rem}@media(min-width:768px){.container{padding-inline:2rem}}.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}.admin-root,[data-admin=true]{--admin-bg: #ffffff;--admin-surface: #fafafa;--admin-border: #dddddd;--admin-text: #222222;--admin-text-muted: #717171;--admin-radius: 8px;--admin-shadow: 0 1px 2px rgba(0, 0, 0, .08)}.admin-root body,[data-admin=true] body,.admin-layout{font-family:var(--font-body);background-color:var(--admin-bg, #ffffff);color:var(--admin-text, #222222)}.admin-card,.admin-root .card,[data-admin=true] .card{background:var(--admin-bg, #ffffff);border:1px solid var(--admin-border, #dddddd);border-radius:var(--admin-radius, 8px);box-shadow:var(--admin-shadow)}.admin-table,.admin-root table,[data-admin=true] table{width:100%;border-collapse:collapse;font-size:.875rem}.admin-table th,.admin-root th,[data-admin=true] th{text-align:left;font-weight:600;color:var(--admin-text-muted, #717171);border-bottom:1px solid var(--admin-border, #dddddd);padding:.75rem 1rem}.admin-table td,.admin-root td,[data-admin=true] td{border-bottom:1px solid #ebebeb;padding:.75rem 1rem;color:var(--admin-text, #222222)}.admin-input,.admin-root input:not([type=checkbox]):not([type=radio]),.admin-root textarea,.admin-root select,[data-admin=true] input:not([type=checkbox]):not([type=radio]),[data-admin=true] textarea,[data-admin=true] select{width:100%;max-width:100%;padding:.625rem .875rem;border:1px solid var(--admin-border, #b0b0b0);border-radius:var(--admin-radius, 8px);background:var(--admin-bg, #ffffff);color:var(--admin-text, #222222);transition:border-color var(--transition),box-shadow var(--transition)}.admin-input:focus,.admin-root input:focus-visible,.admin-root textarea:focus-visible,.admin-root select:focus-visible,[data-admin=true] input:focus-visible,[data-admin=true] textarea:focus-visible,[data-admin=true] select:focus-visible{outline:none;border-color:#222;box-shadow:0 0 0 2px #22222226}.admin-btn-primary,.admin-root .btn-primary,[data-admin=true] .btn-primary{display:inline-flex;align-items:center;justify-content:center;padding:.625rem 1.25rem;font-weight:600;font-size:.875rem;border-radius:var(--admin-radius, 8px);background:#222;color:#fff;border:none;transition:opacity var(--transition),transform var(--transition)}.admin-btn-primary:hover,.admin-root .btn-primary:hover,[data-admin=true] .btn-primary:hover{opacity:.9}.admin-btn-ghost,.admin-root .btn-ghost,[data-admin=true] .btn-ghost{display:inline-flex;align-items:center;justify-content:center;padding:.625rem 1.25rem;font-weight:600;font-size:.875rem;border-radius:var(--admin-radius, 8px);background:transparent;color:var(--admin-text, #222222);border:1px solid var(--admin-border, #222222);transition:background var(--transition)}.admin-btn-ghost:hover,.admin-root .btn-ghost:hover,[data-admin=true] .btn-ghost:hover{background:var(--admin-surface, #f7f7f7)}.admin-sidebar,.admin-root aside.admin-nav,[data-admin=true] aside.admin-nav{background:var(--admin-bg, #ffffff);border-right:1px solid var(--admin-border, #ebebeb)}
