:root{--burgundy: 344 37% 32%;--cherry: 348 58% 51%;--orange: 34 100% 60%;--pistachio: 92 40% 59%;--sky: 200 67% 79%;--raisin: 344 20% 17%;--bg: 30 20% 99%;--bg-subtle: 30 14% 96%;--surface: 0 0% 100%;--surface-2: 30 16% 97.5%;--text: 344 20% 17%;--text-2: 344 8% 40%;--text-3: 344 9% 44%;--line: 28 12% 90%;--line-2: 28 10% 84%;--primary: 344 37% 32%;--primary-fg: 0 0% 100%;--accent: 348 58% 51%;--ring: 344 37% 32%;--success: 145 45% 34%;--success-bg: 145 45% 95%;--warn: 32 92% 34%;--warn-bg: 34 90% 94%;--info: 205 60% 40%;--info-bg: 205 65% 95%;--danger: 2 68% 47%;--danger-bg: 2 72% 96%;--r-xs: 6px;--r-sm: 8px;--r: 12px;--r-lg: 18px;--r-xl: 24px;--r-pill: 980px;--font: -apple-system, BlinkMacSystemFont, "SF Pro Text", system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--t-xs: .75rem;--t-sm: .8125rem;--t-base: .9375rem;--t-md: 1rem;--t-lg: 1.1875rem;--t-xl: 1.5rem;--t-2xl: 2rem;--t-3xl: 2.75rem;--t-4xl: 3.5rem;--s1:.25rem;--s2:.5rem;--s3:.75rem;--s4:1rem;--s5:1.25rem;--s6:1.5rem;--s8:2rem;--s10:2.5rem;--s12:3rem;--s16:4rem;--s20:5rem;--s24:6rem;--ease-out: cubic-bezier(.23, 1, .32, 1);--ease-io: cubic-bezier(.77, 0, .175, 1);--tap: 44px}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--font);font-size:var(--t-base);line-height:1.5;color:hsl(var(--text));background:hsl(var(--bg));-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img,svg{display:block;max-width:100%}a{color:inherit;text-decoration:none}h1,h2,h3,h4{font-weight:600;line-height:1.1;letter-spacing:-.022em}h1{font-size:var(--t-3xl);letter-spacing:-.03em}h2{font-size:var(--t-2xl)}h3{font-size:var(--t-lg);letter-spacing:-.018em}input,button,select,textarea{font:inherit;color:inherit}::selection{background:hsl(var(--accent) / .18)}:where(a,button,input,select,textarea,[tabindex],[role=button]):focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px;border-radius:var(--r-xs)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.container{width:100%;max-width:1180px;margin-inline:auto;padding-inline:var(--s6)}.container-narrow{max-width:760px}.section{padding-block:var(--s16)}.section-sm{padding-block:var(--s10)}.stack{display:flex;flex-direction:column;gap:var(--s4)}.row{display:flex;align-items:center;gap:var(--s3)}.row-between{display:flex;align-items:center;justify-content:space-between;gap:var(--s3)}.wrap{flex-wrap:wrap}.grow{flex:1}.grid{display:grid;gap:var(--s5)}.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}.muted{color:hsl(var(--text-2))}.tertiary{color:hsl(var(--text-3))}.eyebrow{font-size:var(--t-xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:hsl(var(--accent))}.center{text-align:center}.divider{height:1px;background:hsl(var(--line));border:0}.tabnum{font-variant-numeric:tabular-nums}.sec-head{margin-bottom:var(--s8)}.sec-head h2{margin-bottom:var(--s2)}.sec-head p{color:hsl(var(--text-2));max-width:60ch}.btn{--bg: hsl(var(--primary));--fg: hsl(var(--primary-fg));--bd: transparent;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:var(--tap);padding:0 var(--s5);font-size:var(--t-base);font-weight:500;line-height:1;white-space:nowrap;color:var(--fg);background:var(--bg);border:1px solid var(--bd);border-radius:var(--r-pill);cursor:pointer;transition:transform .15s var(--ease-out),background .15s var(--ease-out),border-color .15s var(--ease-out),color .15s var(--ease-out)}.btn:active{transform:scale(.97)}.btn svg{width:1.15em;height:1.15em}.btn--secondary{--bg: transparent;--fg: hsl(var(--text));--bd: hsl(var(--line-2))}.btn--ghost{--bg: transparent;--fg: hsl(var(--text));--bd: transparent}.btn--accent{--bg: hsl(var(--accent));--fg: #fff}.btn--quiet{--bg: hsl(var(--bg-subtle));--fg: hsl(var(--text))}.btn--danger{--bg: transparent;--fg: hsl(var(--danger));--bd: hsl(var(--danger) / .35)}.btn--sm{min-height:34px;padding:0 var(--s4);font-size:var(--t-sm)}.btn--lg{min-height:52px;padding:0 var(--s8);font-size:var(--t-md)}.btn--block{display:flex;width:100%}.btn--icon{padding:0;width:var(--tap);min-height:var(--tap);border-radius:var(--r-pill)}.btn[disabled]{opacity:.45;pointer-events:none}@media(hover:hover)and (pointer:fine){.btn--primary:hover,.btn:not([class*=--]):hover{background:hsl(var(--burgundy) / .92)}.btn--secondary:hover{background:hsl(var(--surface-2));border-color:hsl(var(--line-2))}.btn--ghost:hover,.btn--quiet:hover{background:hsl(var(--bg-subtle))}.btn--accent:hover{background:hsl(var(--accent) / .9)}}.link{display:inline-flex;align-items:center;gap:.3rem;color:hsl(var(--accent));font-weight:500;transition:gap .15s var(--ease-out)}@media(hover:hover){.link:hover{gap:.5rem}}.link svg{width:1em;height:1em}.card{background:hsl(var(--surface));border:1px solid hsl(var(--line));border-radius:var(--r-lg)}.card-pad{padding:var(--s6)}.panel{background:hsl(var(--surface));border:1px solid hsl(var(--line));border-radius:var(--r)}.inset{background:hsl(var(--bg-subtle));border-radius:var(--r)}.field{display:flex;flex-direction:column;gap:.4rem}.field>label{font-size:var(--t-sm);font-weight:500}.hint{font-size:var(--t-xs);color:hsl(var(--text-2))}.hint.error{color:hsl(var(--danger))}.input,.select,.textarea{width:100%;min-height:var(--tap);padding:0 var(--s4);background:hsl(var(--surface));border:1px solid hsl(var(--line-2));border-radius:var(--r-sm);font-size:var(--t-base);transition:border-color .15s var(--ease-out),background .15s var(--ease-out)}.textarea{padding:var(--s3) var(--s4);min-height:6rem;resize:vertical;line-height:1.5}.input::placeholder,.textarea::placeholder{color:hsl(var(--text-3))}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:hsl(var(--primary))}.input:focus-visible,.select:focus-visible,.textarea:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px}.field[data-invalid] .input{border-color:hsl(var(--danger))}.input-icon{position:relative;display:flex;align-items:center}.input-icon>svg{position:absolute;left:var(--s4);width:18px;height:18px;color:hsl(var(--text-3));pointer-events:none}.input-icon .input{padding-left:2.75rem}.search{background:hsl(var(--bg-subtle));border-color:transparent;border-radius:var(--r-pill)}.check{display:inline-flex;align-items:center;gap:.55rem;cursor:pointer;font-size:var(--t-sm);min-height:var(--tap)}.check input{width:18px;height:18px;accent-color:hsl(var(--primary))}.switch{position:relative;width:44px;height:26px;flex:none}.switch input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}.switch .track{position:absolute;top:0;right:0;bottom:0;left:0;background:hsl(var(--line-2));border-radius:var(--r-pill);transition:background .2s var(--ease-out)}.switch .track:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;background:#fff;border-radius:50%;transition:transform .22s var(--ease-out)}.switch input:checked+.track{background:hsl(var(--success))}.switch input:checked+.track:after{transform:translate(18px)}.segmented{display:inline-flex;background:hsl(var(--bg-subtle));border-radius:var(--r-sm);padding:3px;gap:2px}.segmented button{border:0;background:transparent;padding:.4rem .9rem;border-radius:calc(var(--r-sm) - 2px);font-size:var(--t-sm);font-weight:500;color:hsl(var(--text-2));cursor:pointer;transition:color .15s var(--ease-out)}.segmented button[aria-selected=true]{background:hsl(var(--surface));color:hsl(var(--text));border:1px solid hsl(var(--line))}.tabs{display:flex;gap:var(--s5);border-bottom:1px solid hsl(var(--line))}.tabs button{border:0;background:transparent;padding:.75rem 0;font-size:var(--t-base);font-weight:500;color:hsl(var(--text-2));cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .15s var(--ease-out)}.tabs button[aria-selected=true]{color:hsl(var(--text));border-bottom-color:hsl(var(--primary))}.badge{display:inline-flex;align-items:center;gap:.3rem;font-size:var(--t-xs);font-weight:600;padding:.2rem .55rem;border-radius:var(--r-pill);background:hsl(var(--bg-subtle));color:hsl(var(--text-2))}.badge svg{width:.85em;height:.85em}.badge--line{background:transparent;border:1px solid hsl(var(--line-2))}.badge--maison{background:hsl(var(--success-bg));color:hsl(var(--success))}.badge--new{background:hsl(var(--warn-bg));color:hsl(var(--warn))}.badge--ticket{background:hsl(var(--burgundy) / .08);color:hsl(var(--burgundy))}.pill{display:inline-flex;align-items:center;gap:.45rem;font-size:var(--t-xs);font-weight:600;padding:.28rem .6rem;border-radius:var(--r-pill);background:hsl(var(--bg-subtle));color:hsl(var(--text-2))}.pill .dot{width:7px;height:7px;border-radius:50%;background:currentColor;flex:none}.pill--confirmee{background:hsl(var(--info-bg));color:hsl(var(--info))}.pill--preparee,.pill--livraison{background:hsl(var(--warn-bg));color:hsl(var(--warn))}.pill--livree{background:hsl(var(--success-bg));color:hsl(var(--success))}.pill--annulee{background:hsl(var(--danger-bg));color:hsl(var(--danger))}.avatar{width:36px;height:36px;border-radius:50%;background:hsl(var(--bg-subtle));display:grid;place-items:center;font-size:var(--t-sm);font-weight:600;color:hsl(var(--text-2));flex:none;overflow:hidden}.avatar--lg{width:56px;height:56px;font-size:var(--t-md)}.avatar--brand{background:hsl(var(--burgundy) / .1);color:hsl(var(--burgundy))}.ph{background:hsl(var(--bg-subtle));display:grid;place-items:center;color:hsl(var(--text-3))}.ph svg{width:32px;height:32px;opacity:.6}.product{background:hsl(var(--surface));border:1px solid hsl(var(--line));border-radius:var(--r-lg);overflow:hidden;display:flex;flex-direction:column;transition:border-color .18s var(--ease-out),transform .18s var(--ease-out)}@media(hover:hover)and (pointer:fine){.product:hover{border-color:hsl(var(--line-2));transform:translateY(-2px)}}.product .media{aspect-ratio:4/3;position:relative}.product .media .badges{position:absolute;top:var(--s3);left:var(--s3);display:flex;gap:.4rem}.product .pbody{padding:var(--s4) var(--s5) var(--s5);display:flex;flex-direction:column;gap:.35rem;flex:1}.product .pname{font-weight:600;letter-spacing:-.01em}.product .psh{font-size:var(--t-xs);color:hsl(var(--accent));font-weight:500}.product .pdesc{font-size:var(--t-sm);color:hsl(var(--text-2));flex:1}.product .pfoot{display:flex;align-items:center;justify-content:space-between;margin-top:var(--s2)}.product .price{font-weight:600;font-size:var(--t-lg);letter-spacing:-.02em}.stepper{display:inline-flex;align-items:center;border:1px solid hsl(var(--line-2));border-radius:var(--r-pill)}.stepper button{width:34px;height:34px;border:0;background:transparent;color:hsl(var(--text));cursor:pointer;display:grid;place-items:center;border-radius:50%;transition:background .15s var(--ease-out)}.stepper button:active{transform:scale(.9)}@media(hover:hover){.stepper button:hover{background:hsl(var(--bg-subtle))}}.stepper .n{min-width:2ch;text-align:center;font-weight:600;font-variant-numeric:tabular-nums}.resto-card{background:hsl(var(--surface));border:1px solid hsl(var(--line));border-radius:var(--r-lg);overflow:hidden;display:flex;flex-direction:column;transition:border-color .18s var(--ease-out),transform .18s var(--ease-out)}@media(hover:hover)and (pointer:fine){.resto-card:hover{border-color:hsl(var(--line-2));transform:translateY(-2px)}}.resto-card .cover{aspect-ratio:16/9;position:relative}.resto-card .cover .badges{position:absolute;top:var(--s3);left:var(--s3);display:flex;gap:.4rem}.resto-card .cover .status{position:absolute;top:var(--s3);right:var(--s3)}.resto-card .rbody{padding:var(--s4) var(--s5) var(--s5);display:flex;flex-direction:column;gap:.4rem;flex:1}.resto-card .rname{font-weight:600;letter-spacing:-.01em}.resto-card .rcat{font-size:var(--t-sm);color:hsl(var(--text-2))}.resto-card .rmeta{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem var(--s4);margin-top:auto;padding-top:var(--s2);font-size:var(--t-sm);color:hsl(var(--text-2))}.resto-card .rmeta .m{display:inline-flex;align-items:center;gap:.3rem}.resto-card .rmeta .m svg{width:15px;height:15px;color:hsl(var(--text-3))}.resto-card[data-closed] .cover{filter:grayscale(1);opacity:.65}.rating{display:inline-flex;align-items:center;gap:.3rem;font-weight:600;font-size:var(--t-sm);font-variant-numeric:tabular-nums}.rating svg{width:15px;height:15px;color:hsl(var(--orange))}.rating .count{color:hsl(var(--text-3));font-weight:400}.list{display:flex;flex-direction:column}.list-row{display:flex;align-items:center;gap:var(--s4);padding:var(--s4);border-bottom:1px solid hsl(var(--line));transition:background .12s var(--ease-out)}.list-row:last-child{border-bottom:0}@media(hover:hover){.list-row.interactive:hover{background:hsl(var(--surface-2))}}.list-row .lead{flex:none}.list-row .main{flex:1;min-width:0}.list-row .title{font-weight:500;letter-spacing:-.01em}.list-row .sub{font-size:var(--t-sm);color:hsl(var(--text-2))}.table-wrap{overflow-x:auto;border:1px solid hsl(var(--line));border-radius:var(--r)}table.data{width:100%;border-collapse:collapse;font-size:var(--t-sm);min-width:560px}table.data th{text-align:left;font-size:var(--t-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:hsl(var(--text-2));padding:var(--s3) var(--s4);background:hsl(var(--bg-subtle));border-bottom:1px solid hsl(var(--line));white-space:nowrap}table.data td{padding:var(--s4);border-bottom:1px solid hsl(var(--line));vertical-align:middle}table.data tr:last-child td{border-bottom:0}table.data tbody tr{transition:background .12s var(--ease-out)}@media(hover:hover){table.data tbody tr:hover{background:hsl(var(--surface-2))}}.num{text-align:right;font-variant-numeric:tabular-nums}.stat{background:hsl(var(--surface));border:1px solid hsl(var(--line));border-radius:var(--r);padding:var(--s5)}.stat .k{font-size:var(--t-sm);color:hsl(var(--text-2));display:flex;align-items:center;gap:.4rem}.stat .v{font-size:var(--t-2xl);font-weight:600;letter-spacing:-.03em;margin-top:.35rem;font-variant-numeric:tabular-nums}.stat .delta{font-size:var(--t-xs);font-weight:600;margin-top:.35rem;display:inline-flex;align-items:center;gap:.25rem}.delta.up{color:hsl(var(--success))}.delta.down{color:hsl(var(--danger))}.app{display:grid;grid-template-columns:244px 1fr;min-height:100vh}.sidebar{background:hsl(var(--surface));border-right:1px solid hsl(var(--line));padding:var(--s5) var(--s4);display:flex;flex-direction:column;gap:var(--s2);position:sticky;top:0;height:100vh}.sidebar .brand{display:flex;align-items:center;gap:.6rem;padding:var(--s2) var(--s3) var(--s5);font-weight:600;letter-spacing:-.02em}.sidebar .brand .mark{width:30px;height:30px;border-radius:8px;background:hsl(var(--burgundy));color:#fff;display:grid;place-items:center;font-size:var(--t-sm);flex:none}.nav-item{display:flex;align-items:center;gap:.7rem;padding:.6rem var(--s3);border-radius:var(--r-sm);color:hsl(var(--text-2));font-size:var(--t-base);font-weight:500;cursor:pointer;transition:background .12s var(--ease-out),color .12s var(--ease-out)}.nav-item svg{width:19px;height:19px;flex:none}@media(hover:hover){.nav-item:hover{background:hsl(var(--bg-subtle));color:hsl(var(--text))}}.nav-item[aria-current=page]{background:hsl(var(--burgundy) / .08);color:hsl(var(--burgundy))}.nav-group{font-size:var(--t-xs);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:hsl(var(--text-3));padding:var(--s4) var(--s3) var(--s2)}.app-main{min-width:0;background:hsl(var(--bg))}.topbar{height:64px;display:flex;align-items:center;justify-content:space-between;gap:var(--s4);padding:0 var(--s8);border-bottom:1px solid hsl(var(--line));position:sticky;top:0;background:hsl(var(--bg) / .8);-webkit-backdrop-filter:saturate(180%) blur(12px);backdrop-filter:saturate(180%) blur(12px);z-index:10}.app-body{padding:var(--s8)}.page-head{margin-bottom:var(--s6)}.page-head h1{font-size:var(--t-xl);letter-spacing:-.02em}.topnav{position:sticky;top:0;z-index:20;background:hsl(var(--bg) / .8);-webkit-backdrop-filter:saturate(180%) blur(14px);backdrop-filter:saturate(180%) blur(14px);border-bottom:1px solid hsl(var(--line))}.topnav .inner{height:60px;display:flex;align-items:center;gap:var(--s5)}.topnav .logo{display:flex;align-items:center;gap:.55rem;font-weight:600;letter-spacing:-.02em}.topnav .logo .mark{width:30px;height:30px;border-radius:8px;background:hsl(var(--burgundy));color:#fff;display:grid;place-items:center;flex:none}.topnav .links{display:flex;gap:var(--s5);margin-left:var(--s4)}.topnav .links a{font-size:var(--t-base);color:hsl(var(--text-2));font-weight:500;transition:color .12s var(--ease-out)}@media(hover:hover){.topnav .links a:hover{color:hsl(var(--text))}}.cart-btn{position:relative}.cart-btn .count{position:absolute;top:-3px;right:-3px;min-width:17px;height:17px;padding:0 4px;border-radius:var(--r-pill);background:hsl(var(--accent));color:#fff;font-size:10px;font-weight:700;display:grid;place-items:center}.phone{max-width:400px;margin-inline:auto;background:hsl(var(--surface));border:1px solid hsl(var(--line));border-radius:var(--r-xl);overflow:hidden;min-height:780px;display:flex;flex-direction:column}.phone .status{height:44px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--s5);font-size:var(--t-sm);font-weight:600}.phone .m-top{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);padding:var(--s3) var(--s5);border-bottom:1px solid hsl(var(--line))}.phone .m-body{flex:1;overflow-y:auto;padding:var(--s5);background:hsl(var(--bg))}.tabbar{display:flex;border-top:1px solid hsl(var(--line));background:hsl(var(--surface))}.tabbar a{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--s2) 0 var(--s3);font-size:10px;font-weight:500;color:hsl(var(--text-3))}.tabbar a svg{width:22px;height:22px}.tabbar a[aria-current=page]{color:hsl(var(--burgundy))}.timeline{display:flex;flex-direction:column}.tl{display:grid;grid-template-columns:auto 1fr;gap:var(--s4)}.tl .rail{display:flex;flex-direction:column;align-items:center}.tl .node{width:28px;height:28px;border-radius:50%;border:1.5px solid hsl(var(--line-2));background:hsl(var(--surface));display:grid;place-items:center;color:hsl(var(--text-3));flex:none}.tl .node svg{width:15px;height:15px}.tl .line{width:1.5px;flex:1;min-height:24px;background:hsl(var(--line-2));margin:4px 0}.tl:last-child .line{display:none}.tl .body{padding-bottom:var(--s5)}.tl .t{font-weight:500;letter-spacing:-.01em}.tl .time{font-size:var(--t-xs);color:hsl(var(--text-2))}.tl[data-state=done] .node{background:hsl(var(--success));border-color:hsl(var(--success));color:#fff}.tl[data-state=done] .line{background:hsl(var(--success))}.tl[data-state=active] .node{background:hsl(var(--burgundy));border-color:hsl(var(--burgundy));color:#fff}.tl[data-state=active] .t{color:hsl(var(--burgundy))}.opt{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--s4);padding:var(--s4);border:1px solid hsl(var(--line-2));border-radius:var(--r);background:hsl(var(--surface));cursor:pointer;min-height:var(--tap);transition:border-color .15s var(--ease-out),background .15s var(--ease-out)}.opt .radio{width:20px;height:20px;border-radius:50%;border:1.5px solid hsl(var(--line-2));flex:none;transition:border-color .15s var(--ease-out)}.opt .otitle{font-weight:500}.opt .osub{font-size:var(--t-sm);color:hsl(var(--text-2))}.opt .oval{font-weight:600;letter-spacing:-.01em;white-space:nowrap}.opt[aria-pressed=true]{border-color:hsl(var(--primary));background:hsl(var(--burgundy) / .04)}.opt[aria-pressed=true] .radio{border-color:hsl(var(--primary));border-width:6px}.addr-chip{display:inline-flex;align-items:center;gap:.6rem;padding:.55rem .9rem;border:1px solid hsl(var(--line-2));border-radius:var(--r-sm);background:hsl(var(--surface));cursor:pointer;min-height:var(--tap);text-align:left;transition:border-color .15s var(--ease-out),background .15s var(--ease-out)}.addr-chip svg{width:18px;height:18px;color:hsl(var(--text-3));flex:none}.addr-chip .a1{font-size:var(--t-sm);font-weight:500}.addr-chip .a2{font-size:var(--t-xs);color:hsl(var(--text-2))}.addr-chip[aria-pressed=true]{border-color:hsl(var(--primary));background:hsl(var(--burgundy) / .04)}.addr-chip[aria-pressed=true] svg{color:hsl(var(--primary))}.ticket-box{border:1px dashed hsl(var(--line-2));border-radius:var(--r);padding:var(--s5);background:hsl(var(--bg-subtle))}.ticket-seg{display:inline-flex;gap:.5rem;align-items:center}.ticket-seg input{width:84px;height:48px;text-align:center;font-family:var(--mono);font-size:var(--t-lg);font-weight:600;letter-spacing:.12em;text-transform:uppercase;border:1px solid hsl(var(--line-2));border-radius:var(--r-sm);background:hsl(var(--surface))}.ticket-seg input:focus{outline:none;border-color:hsl(var(--primary))}.summary{display:flex;flex-direction:column;gap:.1rem}.summary .line{display:flex;justify-content:space-between;padding:.4rem 0;font-size:var(--t-base)}.summary .line .muted{color:hsl(var(--text-2))}.summary .total{border-top:1px solid hsl(var(--line));margin-top:var(--s2);padding-top:var(--s3);font-size:var(--t-lg);font-weight:600;letter-spacing:-.02em}.free-banner{background:hsl(var(--success-bg));color:hsl(var(--success));border-radius:var(--r-sm);padding:.6rem .85rem;font-size:var(--t-sm);font-weight:500;display:flex;align-items:center;gap:.5rem}.empty{text-align:center;padding:var(--s16) var(--s6);color:hsl(var(--text-2))}.empty .ico{width:52px;height:52px;border-radius:50%;background:hsl(var(--bg-subtle));display:grid;place-items:center;margin:0 auto var(--s4);color:hsl(var(--text-3))}.scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:hsl(var(--raisin) / .32)}.modal{position:relative;background:hsl(var(--surface));border:1px solid hsl(var(--line));border-radius:var(--r-lg);padding:var(--s6);width:min(380px,92%)}.modal--wide{width:min(560px,96%)}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s4);margin-bottom:var(--s5)}.modal-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;display:grid;place-items:center;padding:var(--s5)}.modal-root[hidden]{display:none}.modal-root .modal{max-height:90vh;overflow:auto;animation:modalIn .22s var(--ease-out)}@keyframes modalIn{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}.temp-readout{display:inline-flex;align-items:baseline;gap:.12rem;font-variant-numeric:tabular-nums;font-weight:600;letter-spacing:-.02em}.temp-readout .u{font-size:.68em;font-weight:500;color:hsl(var(--text-2))}.temp-badge{display:inline-flex;align-items:center;gap:.35rem;font-size:var(--t-xs);font-weight:600;padding:.25rem .6rem;border-radius:var(--r-pill);background:hsl(var(--bg-subtle));color:hsl(var(--text-2));white-space:nowrap}.temp-badge svg{width:.95em;height:.95em}.temp-badge--ok{background:hsl(var(--success-bg));color:hsl(var(--success))}.temp-badge--bad{background:hsl(var(--danger-bg));color:hsl(var(--danger))}.temp-badge--cold{background:hsl(var(--info-bg));color:hsl(var(--info))}.temp-badge--hot{background:hsl(var(--warn-bg));color:hsl(var(--warn))}.temp-scale{display:flex;gap:.5rem;flex-wrap:wrap}.temp-scale .chip{display:flex;flex-direction:column;gap:.1rem;padding:.5rem .75rem;border:1px solid hsl(var(--line-2));border-radius:var(--r-sm);font-size:var(--t-xs);color:hsl(var(--text-2))}.temp-scale .chip b{font-size:var(--t-sm);color:hsl(var(--text))}.timer{display:inline-flex;align-items:center;gap:.5rem;font-variant-numeric:tabular-nums;font-weight:600}.timer .val{min-width:3.4ch}.timer .bar{position:relative;height:6px;border-radius:var(--r-pill);background:hsl(var(--bg-subtle));overflow:hidden;flex:1;min-width:70px}.timer .bar>span{position:absolute;inset:0 auto 0 0;background:hsl(var(--warn));border-radius:inherit;transition:width 1s linear}.timer[data-low]{color:hsl(var(--danger))}.timer[data-low] .bar>span{background:hsl(var(--danger))}.toast-stack{position:fixed;right:var(--s5);bottom:var(--s5);display:flex;flex-direction:column;gap:.6rem;z-index:80;max-width:340px}.toast{display:flex;align-items:flex-start;gap:.6rem;padding:.8rem 1rem;background:hsl(var(--surface));border:1px solid hsl(var(--line-2));border-radius:var(--r);font-size:var(--t-sm);animation:modalIn .24s var(--ease-out)}.toast svg{width:18px;height:18px;flex:none;margin-top:1px}.toast--ok{border-left:3px solid hsl(var(--success))}.toast--ok svg{color:hsl(var(--success))}.toast--err{border-left:3px solid hsl(var(--danger))}.toast--err svg{color:hsl(var(--danger))}.toast--info{border-left:3px solid hsl(var(--info))}.toast--info svg{color:hsl(var(--info))}.skeleton{background:hsl(var(--bg-subtle));border-radius:var(--r-sm);animation:skelPulse 1.4s var(--ease-io) infinite}.skeleton.line{height:.8rem}@keyframes skelPulse{0%,to{opacity:1}50%{opacity:.5}}.map-ph{position:relative;background:hsl(var(--bg-subtle));border-radius:var(--r);overflow:hidden;display:grid;place-items:center;color:hsl(var(--text-3))}.map-ph svg.mapicon{width:40px;height:40px;opacity:.5}.map-pin{position:absolute;width:14px;height:14px;border-radius:50%;background:hsl(var(--burgundy));border:2px solid #fff;transform:translate(-50%,-50%)}.map-pin--courier{background:hsl(var(--cherry))}.map-pin--dest{background:hsl(var(--success))}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.reveal{opacity:0;animation:fadeUp .5s var(--ease-out) forwards}.reveal:nth-child(1){animation-delay:40ms}.reveal:nth-child(2){animation-delay:90ms}.reveal:nth-child(3){animation-delay:.14s}.reveal:nth-child(4){animation-delay:.19s}.reveal:nth-child(5){animation-delay:.24s}.reveal:nth-child(6){animation-delay:.29s}@media(max-width:1024px){.app{grid-template-columns:1fr}.sidebar{display:none}.app-body,.topbar{padding-inline:var(--s5)}}@media(max-width:860px){.g4,.g3{grid-template-columns:repeat(2,1fr)}.topnav .links{display:none}}@media(max-width:620px){.g2,.g3,.g4{grid-template-columns:1fr}.container{padding-inline:var(--s4)}.section{padding-block:var(--s10)}h1{font-size:var(--t-2xl)}.hide-sm{display:none}}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reveal{opacity:1}}.orders-split{display:grid;grid-template-columns:1.3fr 1fr;gap:var(--s6);align-items:start}.orders-split .detail{position:sticky;top:calc(64px + var(--s6))}.o-row{cursor:pointer}.o-row[aria-selected=true]{background:hsl(var(--burgundy) / .05)}@media(max-width:1024px){.orders-split{grid-template-columns:1fr}.orders-split .detail{position:static}}.mobile-tabbar{display:none}@media(max-width:1024px){.mobile-tabbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60}.app-body{padding-bottom:calc(64px + var(--s6))}}@media(max-width:620px){.topbar{height:auto;flex-wrap:wrap;padding-block:var(--s3);row-gap:var(--s2)}.segmented button{white-space:nowrap}.mobile-tabbar a{font-size:9px}}.auth{min-height:100vh;display:grid;place-items:center;padding:var(--s6);background:hsl(var(--bg-subtle))}.auth .card{width:100%;max-width:400px}@media print{body *{visibility:hidden}.modal-root .invoice,.modal-root .invoice *{visibility:visible}.modal-root{position:static}.modal-root .scrim{display:none}.modal-root .modal{position:static;box-shadow:none;max-width:none;width:auto}.no-print{display:none!important}}
