.shell{flex-direction:column;min-height:100vh;display:flex}.contenu{padding-bottom:var(--space-2xl);flex:1}.entete{z-index:10;background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid color-mix(in srgb, var(--outline-variant) 45%, transparent);position:sticky;top:0}.entete__inner{justify-content:space-between;align-items:center;gap:var(--space-md);flex-wrap:wrap;min-height:68px;display:flex}.marque{align-items:center;gap:var(--space-sm);color:inherit;display:flex}.marque:hover{text-decoration:none}.marque__logo{color:#fff;background:linear-gradient(135deg, var(--teal-primary), var(--teal-dark));border-radius:50%;place-items:center;width:36px;height:36px;font-size:18px;display:grid}.marque__nom{letter-spacing:-.01em;font-weight:800;display:block}.marque__baseline{color:var(--on-surface-variant);font-size:12px;display:block}.nav{align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.nav a{color:var(--on-surface-variant);border-bottom:2px solid #0000;padding:6px 2px;font-size:15px;font-weight:600}.nav a:hover{color:var(--teal-dark);text-decoration:none}.nav a.active{color:var(--teal-dark);border-bottom-color:var(--teal-primary)}.nav__cta,.nav a.nav__cta.active{background:linear-gradient(135deg, var(--teal-primary), var(--teal-dark));border-radius:var(--radius-md);padding:10px var(--space-md);border-bottom:0;color:#fff!important}.pied{background:var(--teal-dark);color:#fff;padding:var(--space-lg) 0}.pied a{color:var(--teal-light)}.pied .muted{color:#ffffffb8}.pied__inner{justify-content:space-between;align-items:flex-start;gap:var(--space-lg);flex-wrap:wrap;display:flex}.pied__nom{font-weight:800}.pied__contact{flex-direction:column;gap:2px;display:flex}.pied__session{font-size:13px}@media (width<=720px){.entete__inner{min-height:0;padding-top:var(--space-sm);padding-bottom:var(--space-sm)}.nav{gap:var(--space-sm);justify-content:space-between;width:100%}.nav a{font-size:14px}}.async--center{padding:var(--space-2xl) 0;justify-content:center;display:flex}.async__panel{text-align:center;align-items:center;gap:var(--space-sm);flex-direction:column;max-width:420px;display:flex}.async__icon{width:48px;height:48px;color:var(--on-error-container);background:var(--error-container);border-radius:50%;place-items:center;font-size:22px;font-weight:800;display:grid}.async__title{font-size:18px;font-weight:700}.async__message{white-space:pre-line}.async__spinner{border:3px solid color-mix(in srgb, var(--teal-primary) 25%, transparent);border-top-color:var(--teal-primary);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite async-spin}@keyframes async-spin{to{transform:rotate(360deg)}}.async__banner{align-items:center;gap:var(--space-sm);background:var(--error-container);color:var(--on-error-container);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md);margin-bottom:var(--space-md);justify-content:space-between;font-size:14px;display:flex}@media (prefers-reduced-motion:reduce){.async__spinner{animation-duration:2s}}.btn{justify-content:center;align-items:center;gap:var(--space-xs);min-height:44px;padding:0 var(--space-lg);border-radius:var(--radius-md);cursor:pointer;border:0;font-weight:600;text-decoration:none;transition:filter .15s;display:inline-flex}.btn:hover:not(:disabled){filter:brightness(1.05);text-decoration:none}.btn:disabled{opacity:.55;cursor:default}.btn--primary{color:#fff;background:linear-gradient(135deg, var(--teal-primary), var(--teal-dark))}.btn--secondary{color:var(--teal-dark);background:var(--teal-light)}.btn--outline{color:var(--teal-dark);border:1px solid var(--teal-border);background:0 0}.btn--ghost{color:inherit;min-height:32px;padding:0 var(--space-sm);background:0 0;font-size:14px}.btn--danger{color:#fff;background:var(--error)}.btn--block{width:100%}.badge{border-radius:var(--radius-sm);background:var(--surface-container-high);color:var(--on-surface-variant);white-space:nowrap;padding:3px 10px;font-size:12px;font-weight:700;display:inline-block}.badge--pending,.badge--unpaid{background:var(--status-pending-bg);color:var(--status-pending-fg)}.badge--confirmed,.badge--paid,.badge--received,.badge--accepted{background:var(--status-confirmed-bg);color:var(--status-confirmed-fg)}.badge--completed,.badge--delivered{background:var(--status-completed-bg);color:var(--status-completed-fg)}.badge--cancelled,.badge--no_show,.badge--rejected{background:var(--status-cancelled-bg);color:var(--status-cancelled-fg)}.badge--in_progress,.badge--in_production,.badge--partial{background:color-mix(in srgb, var(--warning) 25%, #fff);color:#713b00}.badge--sent_to_lab,.badge--sent{background:var(--blue-light);color:var(--blue-dark)}.badge--ready_for_pickup{color:#2f4a12;background:#e4f4d3}.ariary{font-variant-numeric:tabular-nums;font-weight:700}.field{flex-direction:column;gap:4px;display:flex}.field>label{color:var(--on-surface-variant);font-size:13px;font-weight:600}.field input,.field select,.field textarea{color:var(--on-surface);background:var(--surface-card);border:1px solid var(--outline-variant);border-radius:var(--radius-md);padding:11px var(--space-md);min-height:44px;font-family:inherit;font-size:15px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--teal-primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--teal-primary) 18%, transparent);outline:none}.field__error{color:var(--error);font-size:13px}.field__hint{color:var(--on-surface-variant);font-size:13px}.row{justify-content:space-between;align-items:baseline;gap:var(--space-md);padding:var(--space-sm) var(--space-md);border-bottom:1px solid color-mix(in srgb, var(--outline-variant) 40%, transparent);display:flex}.row:last-child{border-bottom:0}.row__label{color:var(--on-surface-variant);font-size:14px}.row__value{text-align:right;font-weight:600}.hero{background:linear-gradient(135deg, var(--teal-primary), var(--teal-dark));color:#fff;padding:var(--space-3xl) 0;margin-bottom:var(--space-lg)}.hero__inner{justify-content:space-between;align-items:center;gap:var(--space-2xl);display:flex}.hero__texte{max-width:620px}.hero__surtitre{letter-spacing:.14em;text-transform:uppercase;color:var(--teal-light);margin-bottom:var(--space-sm);font-size:12px;font-weight:700}.hero h1{font-size:clamp(32px,5vw,52px);font-weight:800}.hero__accroche{margin-top:var(--space-md);color:#ffffffe0;font-size:17px}.hero__actions{gap:var(--space-sm);margin-top:var(--space-lg);flex-wrap:wrap;display:flex}.hero__actions .btn--outline{color:#fff;border-color:#ffffff8c}.hero__carte{border-radius:var(--radius-xl);background:#ffffff1f;border:1px solid #ffffff4d;flex:none;place-items:center;width:220px;height:220px;display:grid}.hero__oeil{color:var(--teal-light);font-size:96px;line-height:1}.grille{gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.service{padding:var(--space-md)}.service h3{margin-bottom:var(--space-xs);font-size:17px}.deux-colonnes{gap:var(--space-lg);margin-bottom:var(--space-xl);grid-template-columns:repeat(auto-fit,minmax(300px,1fr));display:grid}.horaires{margin:0;padding:0;list-style:none}.horaires li{justify-content:space-between;gap:var(--space-md);padding:var(--space-sm) var(--space-md);border-bottom:1px solid color-mix(in srgb, var(--outline-variant) 40%, transparent);font-variant-numeric:tabular-nums;display:flex}.horaires li:last-child{border-bottom:0}.horaires__ferme{color:var(--on-surface-variant)}.apres-carte{margin-top:var(--space-sm);font-size:14px}@media (width<=860px){.hero__carte{display:none}}.connexion{background:linear-gradient(135deg, var(--teal-primary), var(--teal-dark));min-height:calc(100vh - 188px);padding:var(--space-2xl) var(--screen-edge);justify-content:center;align-items:center;display:flex}.connexion__inner{width:100%;max-width:420px}.connexion__marque{text-align:center;color:#fff;margin-bottom:var(--space-lg)}.connexion__marque span{color:var(--teal-light);font-size:56px;line-height:1}.connexion__marque h1{margin-top:var(--space-sm);font-size:28px;font-weight:800}.connexion__marque p{color:#ffffffd9;margin-top:4px}.connexion__carte{padding:var(--space-lg)}.connexion__aide{margin-top:var(--space-md);text-align:center;font-size:13px}.espace{padding-top:var(--space-lg)}.espace__entete h1{margin-top:2px;font-size:26px;font-weight:800}.onglets{gap:var(--space-xs);margin:var(--space-md) 0 var(--space-lg);border-bottom:1px solid color-mix(in srgb, var(--outline-variant) 45%, transparent);display:flex;overflow-x:auto}.onglets a{padding:var(--space-sm) var(--space-md);color:var(--on-surface-variant);white-space:nowrap;border-bottom:2px solid #0000;font-size:15px;font-weight:600}.onglets a:hover{color:var(--teal-dark);text-decoration:none}.onglets a.active{color:var(--teal-dark);border-bottom-color:var(--teal-primary)}.liste{gap:var(--space-sm);flex-direction:column;display:flex}.entree{padding:var(--space-md)}.entree__haut{justify-content:space-between;align-items:flex-start;gap:var(--space-sm);display:flex}.entree__titre{font-size:16px;font-weight:700}.entree__sous{color:var(--on-surface-variant);margin-top:2px;font-size:14px}.entree__actions{gap:var(--space-sm);margin-top:var(--space-md);flex-wrap:wrap;display:flex}.refraction{border-collapse:collapse;width:100%;margin-top:var(--space-sm);font-variant-numeric:tabular-nums}.refraction th,.refraction td{border:1px solid color-mix(in srgb, var(--outline-variant) 50%, transparent);padding:6px var(--space-sm);text-align:center;font-size:14px}.refraction th{background:var(--surface-container-low);text-transform:uppercase;letter-spacing:.06em;color:var(--on-surface-variant);font-size:12px}.etapes{gap:var(--space-xs);margin-bottom:var(--space-lg);display:flex}.etapes__point{background:var(--surface-container-high);border-radius:2px;flex:1;height:4px}.etapes__point--faite{background:var(--teal-primary)}.creneaux{gap:var(--space-sm);flex-wrap:wrap;display:flex}.creneau{padding:10px var(--space-md);border-radius:var(--radius-md);border:1px solid var(--outline-variant);background:var(--surface-card);cursor:pointer;font-variant-numeric:tabular-nums;font-weight:600}.creneau:hover{border-color:var(--teal-primary)}.creneau--choisi{background:var(--teal-primary);border-color:var(--teal-primary);color:#fff}.mvola{background:var(--surface-container-low);border-radius:var(--radius-md);padding:var(--space-md);margin-top:var(--space-md)}.mvola__numero{letter-spacing:.04em;font-variant-numeric:tabular-nums;font-size:24px;font-weight:800}.resume{gap:var(--space-sm);display:grid}:root{--teal-dark:#005440;--teal-primary:#0f6e56;--teal-light:#a0f3d4;--teal-border:#84d6b9;--blue-primary:#1960a6;--blue-dark:#00447e;--blue-light:#d4e3ff;--surface:#f7faf8;--surface-card:#fff;--surface-container-low:#f1f5f3;--surface-container-high:#e6ebe8;--on-surface:#16201c;--on-surface-variant:#4b5a54;--outline-variant:#c7d3ce;--error:#b3261e;--error-container:#f9dedc;--on-error-container:#410e0b;--warning:#ef9f27;--success:#0f6e56;--status-pending-bg:#ffe8d9;--status-pending-fg:#713b00;--status-confirmed-bg:#0f6e56;--status-confirmed-fg:#fff;--status-completed-bg:#d4e3ff;--status-completed-fg:#001c39;--status-cancelled-bg:#e24b4a;--status-cancelled-fg:#fff;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--space-xs:6px;--space-sm:10px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:72px;--screen-edge:24px;--page-max:1120px;--font:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--shadow-card:0 1px 2px #16201c0f;--shadow-raised:0 8px 24px #16201c1a}*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font);color:var(--on-surface);background:var(--surface);-webkit-font-smoothing:antialiased;line-height:1.5}h1,h2,h3,h4{letter-spacing:-.02em;margin:0;line-height:1.2}p{margin:0}a{color:var(--teal-primary);text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit;font-size:inherit}img{max-width:100%;display:block}:focus-visible{outline:3px solid var(--teal-border);outline-offset:2px}.page{max-width:var(--page-max);padding:0 var(--screen-edge);margin:0 auto}.section-label{letter-spacing:.12em;text-transform:uppercase;color:var(--on-surface-variant);margin:var(--space-lg) 0 var(--space-sm);font-size:10px;font-weight:700}.card{background:var(--surface-card);border:1px solid color-mix(in srgb, var(--outline-variant) 45%, transparent);border-radius:var(--radius-md);box-shadow:var(--shadow-card)}.card--flat{background:var(--surface-container-low);box-shadow:none}.stack{gap:var(--space-sm);flex-direction:column;display:flex}.muted{color:var(--on-surface-variant)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}
