@charset "UTF-8";:root{--bg: #fdf6f0;--surface: #ffffff;--text: #3a3260;--text-2: #7d76a0;--text-3: #b0aac8;--primary: #7c3aed;--primary-bg: #f3eeff;--green: #2bb673;--green-dark: #239a5f;--radius: 16px;--shadow: 0 2px 12px rgba(58, 50, 96, .08);color-scheme:light}*{box-sizing:border-box}html,body{margin:0;min-height:100%}body{background:var(--bg);color:var(--text);font-family:Trebuchet MS,Segoe UI,system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:focus-visible{outline:3px solid var(--primary);outline-offset:2px;border-radius:6px}.page{max-width:920px;margin:0 auto;padding:1.5rem 1.25rem 2rem}.entete{text-align:center;margin-bottom:1.8rem}.kicker{display:inline-block;padding:5px 14px;background:#fdeee5;color:#e8743b;border-radius:999px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin:0 0 .55rem}.entete h1{margin:0 0 .4rem;font-size:clamp(1.6rem,5vw,2rem);font-weight:800;color:var(--text);line-height:1.2}.date-rose{color:#7c3aed}.sous-titre{margin:0;font-size:.875rem;font-weight:600;color:var(--text-2)}.grille{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.8rem}.actions{display:flex;justify-content:center;gap:.8rem;margin-top:2rem}.btn{display:inline-flex;align-items:center;gap:.4rem;padding:.75rem 1.4rem;border-radius:999px;border:1px solid transparent;font:inherit;font-weight:700;text-decoration:none;cursor:pointer;transition:transform .12s ease,background .2s ease,box-shadow .2s ease}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn-principal{background:var(--primary);color:#fff;box-shadow:0 4px 14px #7c3aed61}.btn-principal:hover{background:#6d28d9}.btn-secondaire{background:var(--surface);border-color:#e5e7eb;color:var(--text);font-weight:600}.btn-secondaire:hover{background:#f9fafb}.btn-lien{background:transparent;color:var(--primary);padding-left:0;font-weight:600}:host{display:flex;flex-direction:column;min-height:100vh}.shell{flex:1}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
