*{box-sizing:border-box}body{margin:0}#app{min-height:100vh}html{min-width:320px;overflow-x:hidden;-webkit-text-size-adjust:100%}*,*:before,*:after{box-sizing:border-box}:root{--color-bg: #faf7f2;--color-bg-card: #fffefc;--color-bg-muted: #f5f0e8;--color-text: #2c2419;--color-text-muted: #6b5b4f;--color-text-light: #8b7d6f;--color-accent: #a67c52;--color-accent-hover: #8b6914;--color-link: #7d5a38;--color-link-hover: #5a4030;--color-border: #e8e0d5;--color-border-strong: #d4c8b8;--color-btn-bg: #6b5344;--color-btn-bg-hover: #5a4538;--color-btn-text: #fffefc;--color-error: #b85450;--color-success: #5a7d5a;--font-heading: "Montserrat Alternates", Arial, sans-serif;--font-body: "PT Sans", -apple-system, BlinkMacSystemFont, sans-serif;--heading-color: #000000;--heading-font-size: 30px;--heading-line-height: 1.55;--heading-font-weight: 400;--heading-border-color: transparent;--heading-border-style: solid;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--shadow-sm: 0 1px 3px rgba(44, 36, 25, .08);--shadow-md: 0 4px 12px rgba(44, 36, 25, .1)}body{font-family:var(--font-body);color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;margin:0;min-width:320px;overflow-x:hidden}h1,h2,h3,h4,h5,h6{display:block;width:100%;-webkit-text-size-adjust:100%;font-family:var(--font-heading);color:var(--heading-color);font-size:1.05rem;line-height:1.4;font-weight:var(--heading-font-weight);background-position:center center;border-color:var(--heading-border-color);border-style:var(--heading-border-style);margin:.6em 0 .4em;text-align:center}h1{margin-block-start:.67em;margin-block-end:.67em;margin-inline-start:0;margin-inline-end:0}@media (min-width: 768px){h1,h2,h3,h4,h5,h6{font-size:1.2rem;margin:.75em 0 .5em}}@media (min-width: 1024px){h1,h2,h3,h4,h5,h6{font-size:1.5rem;margin:.85em 0 .55em}}a{color:var(--color-link);text-decoration:none;transition:color .2s ease}a:hover{color:var(--color-link-hover)}button,input,select,textarea{font-family:var(--font-body)}.btn-primary{display:inline-block;padding:.65rem 1.25rem;background:var(--color-btn-bg);color:var(--color-btn-text);border:none;border-radius:var(--radius-sm);font-size:1rem;cursor:pointer;transition:background .2s ease}.btn-primary:hover{background:var(--color-btn-bg-hover)}.card-style{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:box-shadow .2s ease,border-color .2s ease}.card-style:hover{box-shadow:var(--shadow-md);border-color:var(--color-border-strong)}
