/* Shared foundations for the invitation, product and administration. */
:root{--wine:#702b3d;--wine-dark:#502032;--wine2:#873c50;--cream:#faf6ee;--paper:#fffdf8;--ink:#30272a;--muted:#706268;--line:#e2d8cb;--gold:#a47a39;--gold2:#dfc28a;--serif:'Cormorant Garamond',Georgia,'Times New Roman',serif;--sans:'DM Sans',system-ui,-apple-system,sans-serif;--shadow:0 12px 40px #49342509;--radius:16px}

*{box-sizing:border-box}
body{color:var(--ink);background:var(--cream);font-family:var(--sans)}
button,input,select,textarea{font:inherit}
button,a,input,select,textarea{touch-action:manipulation}
button{cursor:pointer}
a{text-underline-offset:4px}
:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--wine);outline-offset:2px}
[hidden]{display:none!important}
.skip-link{position:fixed;top:12px;left:16px;z-index:5000;padding:12px 20px;background:var(--wine);color:white;border-radius:8px;transform:translateY(-180%)}
.skip-link:focus{transform:none}
.danger{color:#a02739!important}
.danger:hover{background:#fbecef!important}
.notice{border-radius:12px;padding:16px 20px;line-height:1.6}
.notice.error{border-color:#d69ba5;background:#fff0f1;color:#8b2335}
button:disabled{opacity:.6;cursor:not-allowed}
input,select,textarea{font-size:16px}
h1,h2,h3,h4,p{overflow-wrap:break-word}
img{max-width:100%}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}
*,*::before,*::after{animation:none!important;transition:none!important}
}
