:root{--color-primary: #F4845F;--color-primary-hover: #E8614D;--color-secondary: #E8614D;--color-accent: #7DBE8A;--color-accent-blue: #6BA3D6;--color-accent-gold: #F5C85C;--color-accent-lavender: #B8A9D9;--color-dark: #2D3A4A;--color-text: #2D3A4A;--color-text-secondary: #5A6675;--color-border: #E8ECF0;--color-bg: #FFF8F0;--color-white: #FFFFFF;--color-success: #7DBE8A;--color-warning: #F5C85C;--color-error: #E8614D;--color-info: #6BA3D6;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--space-3xl: 64px;--space-4xl: 96px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--shadow-sm: 0 2px 8px rgba(45, 58, 74, .08);--shadow-md: 0 4px 16px rgba(45, 58, 74, .1);--shadow-lg: 0 8px 32px rgba(45, 58, 74, .12);--shadow-hover: 0 12px 40px rgba(45, 58, 74, .15);--font-heading: "Nunito", sans-serif;--font-body: "Open Sans", sans-serif;--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--container-max: 1280px;--container-padding: 24px}[data-theme=tropical]{--theme-primary: #4A7C59;--theme-secondary: #E8A87C;--theme-bg: #F5F1EB}[data-theme=ocean]{--theme-primary: #2B7CB5;--theme-secondary: #5DADE2;--theme-bg: #E8F4FC}[data-theme=dinosaur]{--theme-primary: #6B8E23;--theme-secondary: #D2691E;--theme-bg: #FFF8DC}[data-theme=fairy]{--theme-primary: #E8A4C9;--theme-secondary: #B8A9D9;--theme-bg: #FFF0F5}[data-theme=space]{--theme-primary: #1A1A2E;--theme-secondary: #FFD700;--theme-bg: #16213E}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);font-size:16px;line-height:1.6;color:var(--color-text);background-color:var(--color-bg)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700;line-height:1.2;color:var(--color-dark)}h1{font-size:48px;letter-spacing:-.02em}h2{font-size:32px;letter-spacing:-.01em}h3{font-size:24px}h4{font-size:18px}a{color:var(--color-accent-blue);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary)}img{max-width:100%;height:auto;display:block}button{font-family:inherit;cursor:pointer}input,textarea,select{font-family:inherit;font-size:inherit}.container{max-width:var(--container-max);margin:0 auto;padding:0 var(--container-padding)}.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}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:14px 28px;font-family:var(--font-heading);font-weight:700;font-size:16px;border-radius:var(--radius-md);border:2px solid transparent;transition:all var(--transition-base);cursor:pointer;text-decoration:none}.btn-primary{background-color:var(--color-primary);color:var(--color-white)}.btn-primary:hover{background-color:var(--color-primary-hover);transform:scale(1.02);box-shadow:var(--shadow-md)}.btn-secondary{background-color:transparent;border-color:var(--color-dark);color:var(--color-dark)}.btn-secondary:hover{background-color:var(--color-dark);color:var(--color-white)}.btn-ghost{background:transparent;color:var(--color-accent-blue);padding:8px 16px}.btn-ghost:hover{text-decoration:underline}.card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-lg);transition:all var(--transition-base)}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover)}.input{width:100%;padding:12px 16px;background:var(--color-white);border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-size:16px;transition:all var(--transition-fast)}.input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #f4845f26}.input::-moz-placeholder{color:var(--color-text-secondary)}.input::placeholder{color:var(--color-text-secondary)}.label{display:block;font-weight:600;margin-bottom:var(--space-sm);color:var(--color-dark)}.badge{display:inline-flex;align-items:center;padding:4px 12px;font-size:12px;font-weight:600;border-radius:var(--radius-full);background:var(--color-border);color:var(--color-text-secondary)}.badge-primary{background:#f4845f26;color:var(--color-primary)}.badge-success{background:#7dbe8a26;color:#2e7d32}.badge-warning{background:#f5c85c26;color:#f57f17}@media (max-width: 640px){:root{--container-padding: 16px}h1{font-size:32px}h2{font-size:24px}h3{font-size:20px}}
