@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-green-50:#e8f5e9;--color-green-100:#c8e6c9;--color-green-200:#a5d6a7;--color-green-300:#81c784;--color-green-400:#66bb6a;--color-green-500:#4caf50;--color-green-600:#43a047;--color-green-700:#388e3c;--color-green-800:#2e7d32;--color-green-900:#1b5e20;--color-neutral-50:#fafafa;--color-neutral-100:#f5f5f5;--color-neutral-200:#eee;--color-neutral-300:#e0e0e0;--color-neutral-400:#bdbdbd;--color-neutral-600:#757575;--color-neutral-800:#424242;--color-neutral-900:#212121;--color-neutral-white:#fff;--color-neutral-black:#1a1a1a;--color-semantic-success:#4caf50;--color-semantic-warning:#ff9800;--color-semantic-error:#f44336;--color-semantic-info:#2196f3;--color-semantic-purple:#7c4dff;--color-semantic-orange:#ff6d00;--color-surface-surface:#fff;--color-surface-background:#f8faf8;--color-surface-green-tint:#e8f5e9;--color-surface-card:#fff;--color-surface-overlay:#00000080;--color-brand-primary:#4caf50;--color-brand-logo-dark:#1b5e20;--color-brand-passport:#3b2447;--color-brand-passport-base:#5f4671;--color-brand-passport-gold:#e0b76f;--font-family:"InterVariable", "Inter", system-ui, sans-serif;--font-display-size:2.5rem;--font-display-line:3rem;--font-display-weight:700;--font-h1-size:2rem;--font-h1-line:2.5rem;--font-h1-weight:700;--font-h2-size:1.5rem;--font-h2-line:2rem;--font-h2-weight:600;--font-h3-size:1.25rem;--font-h3-line:1.75rem;--font-h3-weight:600;--font-body-large-size:1.125rem;--font-body-large-line:1.75rem;--font-body-large-weight:400;--font-body-size:1rem;--font-body-line:1.5rem;--font-body-weight:400;--font-body-small-size:.875rem;--font-body-small-line:1.25rem;--font-body-small-weight:400;--font-button-size:1rem;--font-button-line:1.5rem;--font-button-weight:600;--font-caption-size:.75rem;--font-caption-line:1rem;--font-caption-weight:400;--font-overline-size:.6875rem;--font-overline-line:1rem;--font-overline-weight:500;--font-overline-tracking:1px;--space-2xs:2px;--space-xs:4px;--space-sm:8px;--space-md:12px;--space-base:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--space-3xl:64px;--radius-none:0px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-full:999px;--elevation-0:none;--elevation-1:0 2px 8px #00000014;--elevation-2:0 4px 16px #00000014;--elevation-3:0 8px 24px #00000014}*,:before,:after{box-sizing:border-box}body{font-family:var(--font-family);font-size:var(--font-body-small-size);line-height:var(--font-body-small-line);color:var(--color-neutral-900);background:var(--color-surface-background);margin:0}h1{font-size:var(--font-h2-size);line-height:var(--font-h2-line);font-weight:var(--font-h2-weight);margin:0}.muted{color:var(--color-neutral-600);margin:0}:focus-visible{outline:3px solid var(--color-semantic-info);outline-offset:2px}.shell{grid-template-columns:220px 1fr;min-height:100dvh;display:grid}.sidebar{background:var(--color-surface-surface);padding:var(--space-base) var(--space-sm);border-right:1px solid var(--color-neutral-200);flex-direction:column;height:100dvh;display:flex;position:sticky;top:0;overflow-y:auto}.brand{gap:var(--space-xs);padding:0 var(--space-md) var(--space-base);display:grid}.logo{width:auto;max-width:100%;height:32px;display:block}.logo-small{height:24px}.logo-login{height:44px}.brand-nom{font-size:var(--font-caption-size);line-height:var(--font-caption-line);color:var(--color-neutral-600)}.sidebar ul{gap:var(--space-2xs);margin:0;padding:0;list-style:none;display:grid}.nav-link{align-items:center;gap:var(--space-md);min-height:36px;padding:0 var(--space-md);border-radius:var(--radius-sm);color:var(--color-neutral-800);text-decoration:none;display:flex}.nav-link:hover{background:var(--color-neutral-100)}.nav-link.active{background:var(--color-green-50);color:var(--color-green-900);font-weight:600}.nav-bottom{margin-top:auto}.topbar,.scrim{display:none}#content{padding:var(--space-lg);min-width:0;max-width:1200px}.stack{gap:var(--space-base);align-content:start;display:grid}.page-header{gap:var(--space-xs);display:grid}.card{background:var(--color-surface-card);border-radius:var(--radius-md);padding:var(--space-base);box-shadow:var(--elevation-1)}.empty{color:var(--color-neutral-600)}.btn{min-height:40px;padding:0 var(--space-base);border-radius:var(--radius-sm);cursor:pointer;font:inherit;font-size:var(--font-button-size);font-weight:var(--font-button-weight);border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.btn-primary{background:var(--color-green-900);color:var(--color-neutral-white)}.btn-primary:hover{background:var(--color-green-800)}.icon-btn{border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:0;place-items:center;width:44px;height:44px;display:inline-grid}.field{gap:var(--space-xs);color:var(--color-neutral-800);display:grid}.field input{min-height:40px;padding:0 var(--space-md);border:1px solid var(--color-neutral-300);border-radius:var(--radius-sm);font:inherit;background:var(--color-neutral-white);color:inherit;font-size:1rem}.notice{padding:var(--space-md);border-radius:var(--radius-sm);margin:0}.notice-info{color:#0d47a1;background:#e3f2fd}.login-wrap{min-height:100dvh;padding:var(--space-base);place-items:center;display:grid}.login-card{width:min(400px,100%);padding:var(--space-lg)}@media (width<=799px){.shell{grid-template-columns:1fr}.topbar{align-items:center;gap:var(--space-sm);z-index:20;height:48px;padding:0 var(--space-sm);background:var(--color-surface-surface);border-bottom:1px solid var(--color-neutral-200);display:flex;position:sticky;top:0}.brand-small{align-items:center;gap:var(--space-sm);display:inline-flex}.sidebar{z-index:30;width:min(280px,85vw);box-shadow:var(--elevation-3);transition:transform .2s;position:fixed;top:0;left:0;transform:translate(-100%)}.shell[data-nav-open=true] .sidebar{transform:none}.scrim{z-index:25;background:var(--color-surface-overlay);display:block;position:fixed;inset:0}#content{padding:var(--space-base)}}@media (prefers-reduced-motion:reduce){.sidebar{transition:none}}h2{font-size:var(--font-h3-size);line-height:var(--font-h3-line);font-weight:var(--font-h3-weight);margin:0}.small{font-size:var(--font-caption-size);line-height:var(--font-caption-line)}.field-error{color:#8a1c13;font-size:var(--font-caption-size);margin:0}.notice-error{color:#8a1c13;background:#fdecea}.notice-ok{background:var(--color-green-50);color:var(--color-green-900)}.btn-secondary{background:var(--color-neutral-white);color:var(--color-green-900);border-color:var(--color-green-200)}.btn-secondary:hover:not(:disabled){background:var(--color-green-50)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn{gap:var(--space-sm)}.row{gap:var(--space-md);flex-wrap:wrap;align-items:center;display:flex}.allergen-list{gap:var(--space-sm);margin:0;padding:0;list-style:none;display:grid}.allergen-row{gap:var(--space-md);padding:var(--space-sm) var(--space-md);background:var(--color-neutral-white);border-radius:var(--radius-sm);border:1px solid var(--color-neutral-200);border-left-width:6px;grid-template-columns:minmax(180px,1fr) auto minmax(180px,1fr);align-items:center;display:grid}.allergen-row[data-etat=present]{border-left-color:var(--color-semantic-error);border-left-style:solid}.allergen-row[data-etat=absent_declare]{border-left-color:var(--color-green-700);border-left-style:solid}.allergen-row[data-etat=inconnu]{border-left-color:var(--color-neutral-400);border-left-style:dashed}.allergen-row[data-modifie=true]{background:#fffbea}.allergen-name{gap:2px;font-weight:600;display:grid}.allergen-name .muted{font-weight:400}.badge-modifie{font-size:var(--font-caption-size);color:#7a5200;font-weight:600}.seg{border:1px solid var(--color-neutral-300);border-radius:var(--radius-sm);display:inline-flex;overflow:hidden}.seg-option{align-items:center;gap:var(--space-xs);min-height:36px;padding:0 var(--space-md);cursor:pointer;background:var(--color-neutral-white);color:var(--color-neutral-800);border-right:1px solid var(--color-neutral-300);display:inline-flex;position:relative}.seg-option:last-child{border-right:0}.seg-option input{opacity:0;cursor:pointer;position:absolute;inset:0}.seg-option:has(input:focus-visible){outline:3px solid var(--color-semantic-info);outline-offset:-3px}.seg-option[data-actif=true][data-etat=present]{color:#8a1c13;background:#fdecea;font-weight:700}.seg-option[data-actif=true][data-etat=absent_declare]{background:var(--color-green-100);color:var(--color-green-900);font-weight:700}.seg-option[data-actif=true][data-etat=inconnu]{background:var(--color-neutral-200);color:var(--color-neutral-900);font-weight:700}.allergen-detail{gap:var(--space-xs);display:grid}.allergen-detail select,.allergen-detail input{min-height:36px;padding:0 var(--space-md);border:1px solid var(--color-neutral-300);border-radius:var(--radius-sm);font:inherit;font-size:1rem}.allergen-detail [aria-invalid=true]{border-color:var(--color-semantic-error)}.allergen-row>.field-error{grid-column:1/-1}@media (width<=899px){.allergen-row{grid-template-columns:1fr}.seg{width:100%}.seg-option{padding:0 var(--space-sm);flex:1;justify-content:center}}.row-between{justify-content:space-between;align-items:center;gap:var(--space-base);flex-wrap:wrap;display:flex}.grow{flex:1;min-width:160px}.form-narrow{max-width:720px}.fieldset{border:1px solid var(--color-neutral-200);border-radius:var(--radius-sm);padding:var(--space-md);margin:0}.fieldset legend{padding:0 var(--space-xs);font-weight:600}.day-row{gap:var(--space-sm);display:grid}.check{align-items:center;gap:var(--space-sm);min-height:36px;display:inline-flex}.list{gap:var(--space-sm);margin:0;padding:0;list-style:none;display:grid}.list.notice{padding:var(--space-md)}.crumbs{align-items:center;gap:var(--space-xs);color:var(--color-neutral-600);display:flex}.tabs{gap:var(--space-xs);border-bottom:1px solid var(--color-neutral-200);flex-wrap:wrap;display:flex}.tabs a{padding:var(--space-sm) var(--space-md);color:var(--color-neutral-800);border-bottom:3px solid #0000;text-decoration:none}.tabs a.active{color:var(--color-green-900);border-bottom-color:var(--color-green-700);font-weight:600}.table-wrap{padding:0;overflow-x:auto}.table{border-collapse:collapse;width:100%}.table th,.table td{text-align:left;padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--color-neutral-200)}.table thead th{font-size:var(--font-caption-size);text-transform:uppercase;letter-spacing:.04em;color:var(--color-neutral-600)}.table tbody th{font-weight:600}.badge{padding:2px var(--space-sm);border-radius:var(--radius-full);font-size:var(--font-caption-size);background:var(--color-neutral-200);color:var(--color-neutral-900);font-weight:600;display:inline-block}.badge[data-statut=publie]{background:var(--color-green-100);color:var(--color-green-900)}.badge[data-statut=suspendu],.badge[data-statut=archive]{color:#7a4100;background:#ffe0b2}.badge[data-statut=inconnu]{color:#664d03;background:#fff3cd}.ok{color:var(--color-green-800);align-items:center;gap:var(--space-xs);display:inline-flex}.link-btn{color:var(--color-green-800);cursor:pointer;font:inherit;background:0 0;border:0;justify-self:start;padding:0;text-decoration:underline}.btn-small{min-height:32px;padding:0 var(--space-md)}.regime-nom{min-width:110px}.field textarea{padding:var(--space-sm) var(--space-md);border:1px solid var(--color-neutral-300);border-radius:var(--radius-sm);font:inherit;resize:vertical;font-size:1rem}.field select{min-height:40px;padding:0 var(--space-md);border:1px solid var(--color-neutral-300);border-radius:var(--radius-sm);font:inherit;background:var(--color-neutral-white);font-size:1rem}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}code{background:var(--color-neutral-100);border-radius:4px;padding:0 4px}.sidebar-bas{gap:var(--space-sm);margin-top:auto;display:grid}.link-reset{text-align:left;width:100%;font:inherit;cursor:pointer;background:0 0;border:0;margin-top:0}
