@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-geist-sans);--default-mono-font-family:var(--font-geist-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.z-8{z-index:8}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.h-30{height:calc(var(--spacing)*30)}.border{border-style:var(--tw-border-style);border-width:1px}.break-all{word-break:break-all}.uppercase{text-transform:uppercase}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--background:#fff;--foreground:#171717}@media (prefers-color-scheme:dark){:root{--background:#0a0a0a;--foreground:#ededed}}body{background:var(--background);color:var(--foreground);font-family:Arial,Helvetica,sans-serif}.app-shell{flex-direction:column;height:100dvh;display:flex;overflow:hidden}:root{--primary-red:#a04033;--red-700:#6e2b22;--red-60:#c46f64;--red-20:#f2ddd9;--primary-dark:#000;--accent-gold:#d2bb9b;--creme-bois:#d2bb9b;--bois-chaud:#c4a265;--bg-beige:#f7f1e8;--white-paper:#fff;--success-green:#2e7d32;--sepia-moyen:#6b5c42;--brun-encre:#3d2b1f;--ocre-doux:#a8936f;--font-main:var(--font-inter,"Inter"),sans-serif;--font-body:var(--font-inter,"Inter"),sans-serif;--menu-grid-gap:16px;--menu-grid-row-estimate:350px;--chrome-text:var(--bg-beige);--chrome-text-dim:#8a8a8a;--chrome-line:#ffffff14;--chrome-line-creme:#3d2b1f29;--status-urgent:#e2472f}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-beige);color:var(--primary-dark);font-family:var(--font-body);flex-direction:column;height:100dvh;display:flex;overflow:hidden}.hidden{display:none!important}.top-language-bar{background:var(--bg-beige);color:var(--primary-dark);font-size:.75rem;font-family:var(--font-body);border-bottom:1px solid var(--cream-300,#e8d9bf);flex-shrink:0;justify-content:space-between;align-items:center;padding:8px 20px;display:flex}.top-bar-actions{align-items:center;gap:14px;display:flex}.lang-switch{align-items:center;gap:8px;display:flex}.lang-flag{cursor:pointer;opacity:.4;background:0 0;border:2px solid #0000;border-radius:5px;padding:2px;line-height:0;transition:opacity .15s,border-color .15s}.lang-flag:hover{opacity:1}.lang-flag.active{opacity:1;border-color:var(--primary-red)}.lang-flag svg{border-radius:2px;width:28px;height:18px;display:block;box-shadow:0 0 0 1px #2b211a2e}.brand-logo{--brand-logo-fs:14px;--brand-logo-pad:5px 9px;--brand-logo-sub-fs:8px;flex-direction:column;align-items:flex-start;display:inline-flex}.brand-logo-center{align-items:center}.brand-logo-xl{--brand-logo-fs:clamp(1.6rem,5vh,2.8rem);--brand-logo-pad:clamp(8px,1.4vh,14px)clamp(14px,2vw,22px);--brand-logo-sub-fs:clamp(.65rem,1.6vh,.9rem)}.brand-logo-row{align-items:center;display:flex}.brand-logo-sushi,.brand-logo-san{box-sizing:border-box;border:2px solid var(--primary-red);padding:var(--brand-logo-pad);font-family:Courier New,monospace;font-size:var(--brand-logo-fs);letter-spacing:.06em;font-weight:700;line-height:1}.brand-logo-sushi{background:var(--primary-red);color:#fff}.brand-logo-san{color:var(--primary-red);border-left:none;align-items:center;display:flex}.brand-logo-sep{background:var(--primary-red);width:100%;height:2px;margin:3px 0 2px}.brand-logo-sub{align-items:center;gap:5px;display:flex}.brand-logo-katakana,.brand-logo-train{font-family:Courier New,monospace;font-size:var(--brand-logo-sub-fs);color:var(--primary-red);font-weight:700}.brand-logo-katakana{letter-spacing:.15em}.brand-logo-train{letter-spacing:.2em;text-transform:uppercase}.brand-logo-dot{font-size:var(--brand-logo-sub-fs);color:#a040334d}.brand-logo-corner{z-index:10;position:absolute;top:clamp(12px,2vh,24px);left:clamp(12px,2vw,24px)}.categories-container{background-color:var(--white-paper);border-bottom:1px solid var(--cream-300,#e8d9bf);box-shadow:none;align-items:center;padding:12px 20px;display:flex}.categories{scrollbar-width:none;flex-grow:1;gap:12px;display:flex;overflow-x:auto}.categories::-webkit-scrollbar{display:none}.tab{font-family:var(--font-main);cursor:pointer;white-space:nowrap;text-transform:uppercase;letter-spacing:.08em;background:#fff;border:1px solid #e8d9bf;border-radius:0;padding:10px 18px;font-size:.75rem;font-weight:700;transition:all .2s}.tab.active{background-color:var(--primary-red);color:#fff;border-color:var(--primary-red);box-shadow:none}#btn-addition{background-color:var(--primary-red);color:#fff;border:1px solid var(--primary-red);font-family:var(--font-main);text-transform:uppercase;cursor:pointer;white-space:nowrap;border-radius:0;margin-left:20px;padding:10px 20px;font-size:.8rem;font-weight:800;transition:transform .2s}#btn-addition:active{transform:scale(.95)}.main-layout{flex:1;gap:16px;min-height:0;padding:20px;display:flex;overflow:hidden}.menu-grid-wrapper{flex-direction:column;flex:3;gap:12px;min-width:0;min-height:0;display:flex;overflow:hidden}.menu-grid{gap:var(--menu-grid-gap);flex:1;grid-template-rows:repeat(2,1fr);grid-template-columns:repeat(4,minmax(0,1fr));min-height:0;display:grid;overflow:hidden}.pagination-bar{justify-content:space-between;align-items:center;padding:4px 0 8px;display:flex}.pagination-btn{background:var(--white-paper);border:1.5px solid var(--cream-300,#e8d9bf);color:var(--primary-dark);font-family:var(--font-body);cursor:pointer;padding:8px 18px;font-size:.85rem;font-weight:600;transition:background .15s,border-color .15s}.pagination-btn:hover{background:var(--bg-beige);border-color:var(--primary-red);color:var(--primary-red)}.pagination-indicator{font-family:var(--font-body);color:var(--primary-dark);letter-spacing:.05em;font-size:.9rem;font-weight:600}.pagination-btn-cat{background:var(--primary-red);border-color:var(--primary-red);color:var(--white-paper);text-transform:uppercase;letter-spacing:.03em;font-size:.8rem}.pagination-btn-cat:hover{background:var(--primary-dark);border-color:var(--primary-dark);color:var(--white-paper)}.pagination-spacer{flex:none;width:1px}.order-sidebar{background:var(--white-paper);border:1px solid var(--cream-300,#e8d9bf);border-radius:0;flex-direction:column;flex:1;min-width:280px;max-width:400px;display:flex;overflow:hidden;box-shadow:0 4px 15px #0000000d}.order-sidebar-header{background:var(--bg-beige);color:var(--primary-dark);border-bottom:1px solid var(--cream-300,#e8d9bf);letter-spacing:.04em;text-transform:uppercase;flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 20px;font-size:.9rem;font-weight:700;display:flex}.sidebar-header{font-family:var(--font-main);border-bottom:2px solid var(--primary-red);background:#fff;justify-content:space-between;align-items:center;padding:20px;font-size:1.1rem;font-weight:800;display:flex}.call-btn{color:var(--primary-red);border:1.5px solid var(--primary-red);cursor:pointer;text-transform:uppercase;letter-spacing:.06em;background:0 0;border-radius:0;align-items:center;padding:6px 12px;font-size:.7rem;font-weight:700;transition:background .15s,color .15s;display:inline-flex}.call-btn:not(.is-disabled):hover{background:var(--primary-red);color:#fff}.call-btn.is-disabled{color:#a8936f;cursor:not-allowed;background:0 0;border-color:#d2bb9b}.cart-scroll-area{flex:1;min-height:0;padding:10px;overflow-y:auto}.cart-item{border-bottom:1px solid #eee;justify-content:space-between;align-items:center;padding:10px 0;display:flex}.cart-item-name{flex:1}.cart-item-actions{align-items:center;gap:10px;display:flex}.qty-btn{border:1px solid var(--cream-300,#e8d9bf);cursor:pointer;background:#fff;border-radius:0;padding:5px 10px}.order-footer{border-top:1px solid var(--cream-300,#e8d9bf);background:#fafafa;flex-shrink:0;padding:20px}.product-card{background:var(--white-paper);border:1px solid var(--cream-300,#e8d9bf);text-align:center;width:100%;min-width:0;min-height:0;box-shadow:none;cursor:pointer;border-radius:0;flex-direction:column;padding:8px;transition:transform .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden;transform:translateZ(0)}.product-card:focus-visible{outline:2px solid var(--primary-red);outline-offset:-2px}.product-card.is-sold-out{cursor:default}.product-card.is-sold-out:hover{box-shadow:none;transform:translateZ(0)}.product-card.is-sold-out .product-card-media,.product-card.is-sold-out .product-card-body,.product-card.is-sold-out .add-to-cart-btn{filter:grayscale();opacity:.5}.sold-out-stamp{color:#a04033;letter-spacing:.24em;text-transform:uppercase;white-space:nowrap;opacity:.92;pointer-events:none;box-shadow:none;z-index:3;background:#f7f1e847;border:4px solid #a04033;border-radius:0;padding:5px 16px;font-family:Inter,Arial,sans-serif;font-size:clamp(.85rem,3.6vw,1.35rem);font-weight:800;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-18deg)}.product-card:hover{transform:translateZ(0)translateY(-2px);box-shadow:0 6px 12px #0000000f}.product-card-media{background-color:#eee;border-radius:0;flex:1 1 0;width:100%;min-height:60px;position:relative;overflow:hidden;transform:translateZ(0)}.product-image-fallback{background:#eee;justify-content:center;align-items:center;font-size:2rem;display:flex}.product-image{object-fit:cover;object-position:center;background-color:#eee;border-radius:0;width:100%;height:100%;display:block;transform:translateZ(0)}.product-card-mascotte{justify-content:center;align-items:center;min-width:0;min-height:0;padding:8px;display:flex;overflow:hidden}.product-card-mascotte img{object-fit:contain;max-width:100%;max-height:100%}.product-card-body{flex-direction:column;flex:none;align-items:stretch;padding-top:6px;display:flex}.product-info{flex-direction:column;flex:1;justify-content:space-between;padding:10px;display:flex}.product-name{font-family:var(--font-main);color:var(--primary-dark);width:100%;margin:0 0 4px;font-size:.85rem;font-weight:700;line-height:1.3}.product-name-clamp{-webkit-line-clamp:2;line-clamp:2;overflow-wrap:anywhere;word-break:break-word;-webkit-box-orient:vertical;max-height:2.6em;line-height:1.3;display:-webkit-box;overflow:hidden}.product-portion{color:#666;flex-shrink:0;margin:0 0 4px;font-size:.75rem}.product-price{color:var(--primary-red);font-family:var(--font-main);margin-top:0;padding-top:2px;font-size:1.05rem;font-weight:800}.add-to-cart-btn{background:var(--primary-red);border:1px solid var(--primary-red);font-family:var(--font-main);text-transform:uppercase;cursor:pointer;color:#fff;border-radius:0;flex-shrink:0;width:100%;margin-top:8px;padding:7px;font-size:.72rem;font-weight:800;transition:all .2s}.add-to-cart-btn:hover{background-color:var(--red-700);border-color:var(--red-700)}.send-kitchen-btn{background:var(--primary-red);color:#fff;border:1px solid var(--primary-red);cursor:pointer;text-transform:uppercase;letter-spacing:.08em;border-radius:0;width:100%;padding:15px;font-weight:700}.bill-layout{background:var(--bg-beige);flex-direction:column;align-items:center;padding:12px 20px;position:relative;overflow-y:auto}.bill-layout:before{content:"";opacity:.05;pointer-events:none;z-index:0;background:url(/mascottes/MAWA%20et%20Tanoo%20Sushi%20Box%20et%20white%20board.PNG) 50%/contain no-repeat;position:absolute;inset:20px}.bill-layout .bill-ticket{z-index:1;position:relative}@media (max-width:1100px){.order-sidebar{min-width:220px;max-width:280px}}@media (max-width:900px){.menu-grid{grid-template-rows:repeat(4,1fr);grid-template-columns:repeat(2,minmax(0,1fr))}.order-sidebar{min-width:200px;max-width:240px}}@media (max-width:600px){.main-layout{flex-direction:column}.order-sidebar{flex:none;min-width:0;max-width:100%;max-height:38vh}.menu-grid-wrapper{flex:1;min-height:0}.menu-grid{grid-template-rows:repeat(4,1fr);grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:420px){.menu-grid{grid-template-rows:repeat(8,1fr);grid-template-columns:1fr}}.order-table{border-collapse:collapse;width:100%}.order-table th{text-align:left;color:#888;background:#f9f9f9;padding:10px 15px;font-size:.75rem}.order-table td{border-bottom:1px solid #eee;padding:12px 15px;font-size:.85rem;font-weight:600}.small-btn{cursor:pointer;width:28px;height:28px;color:var(--primary-dark);background:#fff;border:1px solid #ddd;border-radius:50%;font-weight:700;transition:all .2s}.small-btn:hover{background:var(--primary-dark);color:#fff;border-color:var(--primary-dark)}#btn-valider{width:100%;color:var(--primary-red);border:2px solid var(--primary-red);font-family:var(--font-main);text-transform:uppercase;letter-spacing:1px;cursor:pointer;background-color:#0000;border-radius:0;padding:16px;font-weight:800;transition:all .3s;display:block}#btn-valider:hover{background-color:var(--primary-red);color:#fff}#page-bill{background:var(--bg-beige)}.btn-back{background:var(--primary-dark);color:#fff;border:1px solid var(--primary-dark);cursor:pointer;letter-spacing:.08em;text-transform:uppercase;border-radius:0;padding:6px 12px;font-size:.7rem;font-weight:700}.btn-back:hover{background:#111}.bill-container{flex:1;justify-content:center;gap:30px;padding-bottom:50px;display:flex;overflow-y:auto}.bill-ticket{background-color:#fff;background-image:linear-gradient(#fff 0% 100%),linear-gradient(90deg,#e3e3e3 1px,#0000 0);background-position:0 0;background-repeat:repeat;background-size:100% 100%,20px 100%;background-attachment:scroll;background-origin:padding-box;background-clip:border-box;flex-direction:column;width:100%;max-width:460px;padding:18px 24px;display:flex;position:relative;box-shadow:0 10px 30px #0000001a}.bill-ticket:before{content:"";background:radial-gradient(circle,#0000 6px,#fff 7px) bottom/20px 20px;width:100%;height:10px;position:absolute;top:-10px;left:0}.bill-ticket:after{content:"";background:radial-gradient(circle,#0000 6px,#fff 7px) top/20px 20px;width:100%;height:10px;position:absolute;bottom:-10px;left:0;transform:rotate(180deg)}.ticket-header{text-align:center;margin-bottom:10px}.ticket-header h3{font-family:var(--font-main);letter-spacing:2px;font-size:1.4rem;font-weight:800}.ticket-header p{color:#666;font-family:Courier New,monospace;font-size:.8rem}.ticket-logo{justify-content:center;align-items:center;display:flex}.ticket-logo-sushi,.ticket-logo-san{box-sizing:border-box;letter-spacing:2px;border:3px solid var(--primary-red);padding:6px 13px;font-family:Courier New,Courier,monospace;font-size:24px;font-weight:700;line-height:1}.ticket-logo-sushi{background:var(--primary-red);color:#fff}.ticket-logo-san{color:var(--primary-red);border-left:none}.ticket-header .ticket-logo-sub{letter-spacing:4px;color:var(--primary-red);margin-top:6px;font-family:Courier New,Courier,monospace;font-size:9px;font-weight:700}.ticket-divider{border-bottom:2px dashed #ccc;margin:9px 0}.ticket-items{flex:1;max-height:50vh;padding-right:5px;overflow-y:auto}.bill-item{border-bottom:1px dotted #eee;grid-template-columns:minmax(0,1fr) 40px 96px 76px;align-items:center;column-gap:8px;margin-bottom:5px;padding-bottom:5px;font-family:Courier New,monospace;font-size:.95rem;display:grid}.bill-col-nom{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bill-col-qte{text-align:center;color:#555}.bill-col-statut{text-align:center}.bill-col-prix{text-align:right;font-weight:700}.bill-item-head{font-family:var(--font-main);text-transform:uppercase;letter-spacing:.06em;color:#999;border-bottom:1px solid #ddd;margin-bottom:5px;padding-bottom:4px;font-size:.68rem}.item-meta{color:#888;margin-top:2px;font-size:.75rem;display:block}.bill-item-split,.bill-item-head-split{grid-template-columns:minmax(0,1fr) 22px 196px 56px}.bill-col-envoyer{justify-content:flex-end;gap:6px;display:flex}.btn-split-mini-compact{text-align:center;border:1px solid var(--accent-gold);background:var(--white-paper);width:44px;color:var(--primary-dark);cursor:pointer;font-size:.72rem;font-weight:800;font-family:var(--font-main);border-radius:0;padding:4px 0}.btn-split-mini-compact:hover:not(:disabled){border-color:var(--primary-red);color:var(--primary-red)}.btn-split-mini-compact:disabled{opacity:.4;cursor:not-allowed}.status-badge{font-family:var(--font-body);text-transform:uppercase;border-radius:3px;padding:2px 6px;font-size:.65rem;font-weight:700;display:inline-block}.badge-kitchen{color:#1976d2;background:#e3f2fd}.badge-train{background:var(--primary-red);color:#fff}.ticket-total-row{font-family:var(--font-main);border-top:2px solid var(--primary-dark);justify-content:space-between;align-items:center;margin-top:10px;padding-top:7px;font-size:1.3rem;font-weight:800;display:flex}#btn-start-pay,.action-btn-large{background:var(--primary-red);color:#fff;width:100%;font-family:var(--font-main);text-transform:uppercase;cursor:pointer;border:none;border-radius:0;margin-top:14px;padding:12px;font-size:1rem;font-weight:800;transition:transform .2s;box-shadow:0 4px 10px #a0403340}#btn-start-pay:active{transform:scale(.98)}.action-btn-large-ghost{color:var(--primary-dark);border:2px solid var(--accent-gold);width:100%;font-family:var(--font-main);text-transform:uppercase;cursor:pointer;background:0 0;border-radius:0;margin-top:14px;padding:11px;font-size:1rem;font-weight:800;transition:border-color .15s,color .15s,transform .2s}.action-btn-large-ghost:hover{border-color:var(--primary-dark)}.action-btn-large-ghost:active{transform:scale(.98)}.bill-checkout-actions{gap:8px;margin-top:14px;display:flex}.bill-checkout-actions .action-btn-large,.bill-checkout-actions .action-btn-large-ghost{flex:1;margin-top:0}.bill-checkout-actions-split{flex-wrap:wrap}.bill-checkout-actions-split .action-btn-large-ghost{flex:45%}.bill-checkout-actions-split .action-btn-large{flex:100%}.modal{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:2000;background:#3d2b1fc7;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:fixed;top:0;left:0}.toast-overlay{z-index:2000;background:#3d2b1f73;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:fixed;top:0;left:0}.toast-content{text-align:center;width:90%;max-width:360px;padding:32px 40px}.modal-content{background:var(--white-paper);border:1px solid var(--accent-gold);border-top:4px solid var(--primary-red);text-align:center;border-radius:0;width:90%;max-width:450px;padding:40px;box-shadow:0 12px 32px #3d2b1f2e}.modal-content h3{font-family:var(--font-main);color:var(--primary-dark);margin-bottom:15px;font-size:1.5rem;font-weight:800}.modal-content p{color:var(--sepia-moyen);margin-bottom:30px;line-height:1.5}.input-group label{text-align:left;font-weight:700;font-family:var(--font-main);color:var(--primary-dark);margin-bottom:10px;display:block}.input-group input{text-align:center;border:2px solid var(--accent-gold);width:100%;font-size:1.2rem;font-weight:700;font-family:var(--font-main);border-radius:0;padding:15px}.input-group input:focus{border-color:var(--primary-red);outline:none}.modal-actions{justify-content:center;gap:15px;margin-top:20px;display:flex}.modal-actions-column{flex-direction:column;gap:15px;display:flex}.btn-confirm{background:var(--primary-red);color:#fff;border:2px solid var(--primary-red);cursor:pointer;font-weight:700;font-family:var(--font-main);text-transform:uppercase;letter-spacing:.08em;border-radius:0;flex:1;padding:12px 25px;transition:background .15s,border-color .15s}.btn-confirm:hover:not(:disabled){background:var(--red-700);border-color:var(--red-700)}.btn-confirm:disabled{opacity:.5;cursor:not-allowed}.btn-cancel{color:var(--primary-dark);border:2px solid var(--accent-gold);cursor:pointer;font-weight:700;font-family:var(--font-main);text-transform:uppercase;letter-spacing:.08em;background:0 0;border-radius:0;padding:12px 25px;transition:border-color .15s,color .15s}.btn-cancel:hover{border-color:var(--primary-dark)}.split-buttons-grid{grid-template-columns:1fr 1fr;gap:15px;margin-bottom:20px;display:grid}.split-buttons-grid button{background:var(--white-paper);border:2px solid var(--accent-gold);cursor:pointer;font-size:1.5rem;font-weight:800;font-family:var(--font-main);border-radius:0;padding:20px;transition:all .2s}.split-buttons-grid button:hover{border-color:var(--primary-red);color:var(--primary-red)}.modal-lead-text{font-size:.95rem;margin-bottom:16px!important}.split-warning{color:var(--primary-red);font-weight:600}.split-warning-inline{text-align:center;font-size:.8rem;margin:-8px 0 14px!important}.btn-split-mini{text-transform:uppercase;letter-spacing:.04em;border:1px solid var(--cream-300,#e8d9bf);cursor:pointer;font-size:.68rem;font-weight:800;font-family:var(--font-main);background:#fff;border-radius:0;padding:8px 10px}.btn-split-mini:hover:not(:disabled){border-color:var(--primary-red);color:var(--primary-red)}.btn-split-mini:disabled{opacity:.4;cursor:not-allowed}.split-empty-hint{color:var(--sepia-moyen);font-size:.85rem;margin:8px 0 0!important}.split-buttons-grid.split-count-three{grid-template-columns:repeat(3,1fr)}.split-subtickets-row{z-index:1;flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:14px;width:100%;margin-top:14px;display:flex;position:relative}.bill-ticket-sub{max-width:280px;padding:14px 16px}.bill-ticket-sub .ticket-header h3{font-family:var(--font-main);letter-spacing:.12em;color:var(--primary-red);text-transform:uppercase;font-size:1rem;font-weight:800}.bill-ticket-sub .ticket-total-row{font-size:1.05rem}.sub-ticket-item{border-bottom:1px dotted #eee;grid-template-columns:minmax(0,1fr) 26px 52px 24px;align-items:center;column-gap:6px;margin-bottom:5px;padding-bottom:5px;font-family:Courier New,monospace;font-size:.8rem;display:grid}.sub-ticket-item-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sub-ticket-item-qty{text-align:center;color:var(--sepia-moyen);font-size:.75rem}.sub-ticket-item-price{text-align:right;font-weight:700}.btn-sub-return{text-align:center;border:1px solid var(--accent-gold);background:var(--white-paper);width:22px;height:22px;color:var(--primary-dark);cursor:pointer;font-size:.75rem;font-weight:800;line-height:1;font-family:var(--font-main);border-radius:0;padding:0}.btn-sub-return:disabled{opacity:.4;cursor:not-allowed}.pin-screen{background:var(--bg-beige);flex:1;justify-content:center;align-items:center;padding:24px;display:flex}.pin-card{background:var(--white-paper);border:1px solid var(--cream-300,#e8d9bf);text-align:center;width:100%;max-width:460px;padding:32px 28px;box-shadow:0 8px 24px #0000000a}.pin-table-name{font-family:var(--font-main);text-transform:uppercase;letter-spacing:.18em;color:var(--primary-red);margin-bottom:4px;font-size:.75rem}.pin-title{font-family:var(--font-main);color:var(--primary-dark);margin-bottom:8px;font-size:1.6rem;font-weight:800}.pin-subtitle{color:#666;margin-bottom:24px;font-size:.9rem;line-height:1.4}.pin-display{justify-content:center;gap:14px;margin-bottom:28px;display:flex}.pin-dot{border:2px solid var(--cream-300,#e8d9bf);background:0 0;border-radius:50%;width:18px;height:18px;transition:background .15s,border-color .15s}.pin-dot.filled{background:var(--primary-red);border-color:var(--primary-red)}.pin-keypad{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.pin-key{border:1.5px solid var(--cream-300,#e8d9bf);color:var(--primary-dark);font-family:var(--font-main);cursor:pointer;background:#fff;padding:18px 0;font-size:1.5rem;font-weight:700;transition:all .15s}.pin-key:hover:not(:disabled){background:var(--bg-beige);border-color:var(--primary-red);color:var(--primary-red)}.pin-key:active:not(:disabled){transform:scale(.97)}.pin-key:disabled{opacity:.5;cursor:not-allowed}.pin-key-secondary{background:var(--bg-beige);color:#999;font-size:1.2rem}.pin-staff-link{color:#999;text-transform:uppercase;letter-spacing:.15em;cursor:pointer;text-underline-offset:4px;background:0 0;border:none;margin-top:22px;padding:8px 16px;font-size:.75rem;text-decoration:underline}.pin-staff-link:hover{color:var(--primary-dark)}.pin-pick{border:1.5px solid var(--cream-300,#e8d9bf);width:44px;height:44px;font-family:var(--font-main);cursor:pointer;background:#fff;border-radius:0;font-weight:700;transition:all .15s}.pin-pick:hover{border-color:var(--primary-red)}.pin-pick.active{background:var(--primary-red);border-color:var(--primary-red);color:#fff}.dirty-screen{background:var(--bg-beige);text-align:center;flex:1;justify-content:center;align-items:center;padding:24px;display:flex;position:relative}.dirty-screen .pin-card{max-width:420px}.dirty-reset-corner{position:absolute;bottom:20px;right:20px}.dirty-reset-corner .staff-reset-btn{border:1px solid var(--primary-red);width:auto;color:var(--primary-red);background:#fff;padding:10px 16px;font-size:.8rem}.staff-reset-btn{color:#999;text-transform:uppercase;letter-spacing:.1em;cursor:pointer;background:0 0;border:1px solid #ddd;width:100%;margin-top:8px;padding:6px 10px;font-size:.7rem}.staff-reset-btn:hover{border-color:var(--primary-red);color:var(--primary-red)}.staff-reset-btn:disabled{opacity:.4;cursor:not-allowed}.staff-reset-btn:disabled:hover{color:#999;border-color:#ddd}.staff-reset-hint{color:var(--sepia-moyen);margin-top:6px;font-size:.72rem;font-style:italic;line-height:1.3}.staff-pin-modal{max-width:360px}.staff-pin-display{justify-content:center;gap:14px;min-height:24px;margin:18px 0 10px;display:flex}.staff-pin-dot{background:0 0;border:2px solid #c9c9c9;border-radius:50%;width:14px;height:14px;transition:background .1s,border-color .1s}.staff-pin-dot.is-filled{background:var(--primary-red);border-color:var(--primary-red)}.staff-pin-error{color:var(--primary-red);text-align:center;margin:4px 0 12px;font-size:.9rem}.staff-pin-pad{grid-template-columns:repeat(3,1fr);gap:12px;margin:8px 0 16px;display:grid}.staff-pin-key{cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation;color:#333;background:#fafafa;border:1px solid #ddd;border-radius:12px;padding:18px 0;font-size:1.6rem;font-weight:600;transition:background .1s,transform 50ms}.staff-pin-key:active:not(:disabled){background:#ececec;transform:scale(.97)}.staff-pin-key:disabled{opacity:.45;cursor:not-allowed}.staff-pin-key-util{color:#777;font-size:1.4rem}.staff-pin-key-confirm{background:var(--primary-red);color:#fff;border-color:var(--primary-red);font-size:1.6rem}.staff-pin-key-confirm:active:not(:disabled){background:#a8001f}.wheel-picker{-webkit-user-select:none;user-select:none;touch-action:pan-y;background:#fafafa;border-radius:12px;width:140px;margin:18px auto 8px;position:relative;overflow:hidden}.wheel-picker-scroll{scroll-snap-type:y mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;height:100%;overflow-y:scroll}.wheel-picker-scroll::-webkit-scrollbar{display:none}.wheel-picker-item{color:#999;scroll-snap-align:center;justify-content:center;align-items:center;font-size:1.8rem;font-weight:500;transition:color .15s,font-weight .15s;display:flex}.wheel-picker-item.is-selected{color:var(--primary-red);font-size:2rem;font-weight:700}.wheel-picker-highlight{pointer-events:none;z-index:1;border-top:1px solid #ddd;border-bottom:1px solid #ddd;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.wheel-picker-mask{pointer-events:none;z-index:2;height:40%;position:absolute;left:0;right:0}.wheel-picker-mask-top{background:linear-gradient(#fafafaf2,#fafafa00);top:0}.wheel-picker-mask-bottom{background:linear-gradient(#fafafa00,#fafafaf2);bottom:0}.staff-login-screen{background:var(--bg-beige);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.staff-login-card{background:var(--white-paper);border:1px solid var(--cream-300,#e8d9bf);text-align:center;width:100%;max-width:420px;padding:48px 40px;box-shadow:0 8px 24px #0000000d}.staff-login-brand{font-family:var(--font-main);letter-spacing:.4em;color:var(--primary-red);margin-bottom:12px;font-size:.7rem}.staff-login-title{font-family:var(--font-main);color:var(--primary-dark);margin-bottom:8px;font-size:1.7rem;font-weight:800}.staff-login-subtitle{color:#666;margin-bottom:28px;font-size:.9rem}.staff-login-input{text-align:center;border:2px solid var(--cream-300,#e8d9bf);width:100%;font-size:1.5rem;font-family:var(--font-main);letter-spacing:.5em;background:var(--bg-beige);border-radius:0;margin-bottom:16px;padding:18px;font-weight:700}.staff-login-input:focus{border-color:var(--primary-red);outline:none}.staff-login-error{color:var(--primary-red);margin-bottom:14px;font-size:.85rem}.staff-login-btn{background:var(--primary-red);color:#fff;border:1px solid var(--primary-red);width:100%;font-family:var(--font-main);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;border-radius:0;padding:16px;font-size:.95rem;font-weight:800;transition:background .15s}.staff-login-btn:hover:not(:disabled){background:var(--red-700);border-color:var(--red-700)}.staff-login-btn:disabled{opacity:.5;cursor:not-allowed}.kitchen-shell{background:var(--bg-beige);height:100dvh;color:var(--brun-encre);flex-direction:column;display:flex;overflow:hidden}.kitchen-header{background:var(--white-paper);border-bottom:2px solid var(--primary-red);flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 24px;display:flex;position:relative}.kitchen-center{min-width:0;font-family:var(--font-main);white-space:nowrap;flex:1;justify-content:center;align-items:center;gap:16px;font-size:.95rem;display:flex}.kitchen-title{font-family:var(--font-main);letter-spacing:.25em;color:var(--brun-encre);font-size:1.3rem;font-weight:800}.kitchen-meta{font-family:var(--font-main);align-items:center;gap:12px;font-size:.95rem;display:flex}.kitchen-count{color:var(--sepia-moyen);font-weight:600}.kitchen-clock{color:var(--brun-encre);font-variant-numeric:tabular-nums;font-family:Courier New,monospace;font-weight:700}.kitchen-audio-enable{border:1px solid var(--chrome-text-dim);color:var(--chrome-text-dim);cursor:pointer;background:0 0;border-radius:0;padding:6px 12px;font-size:.8rem}.kitchen-audio-enable:hover{border-color:var(--chrome-text);color:var(--chrome-text)}.kitchen-logout{border:1px solid var(--creme-bois);color:var(--sepia-moyen);text-transform:uppercase;letter-spacing:.08em;cursor:pointer;background:0 0;border-radius:0;padding:6px 14px;font-size:.75rem}.kitchen-logout:hover{border-color:var(--primary-red);color:var(--primary-red)}.main-switch-btn{align-items:center;text-decoration:none;display:inline-flex}.main-shell{background:var(--primary-dark);min-height:100vh;color:var(--chrome-text);flex-direction:column;display:flex}.main-header{background:var(--primary-dark);border-bottom:2px solid var(--primary-red);flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 24px;display:flex}.main-header-right{align-items:center;gap:16px;display:flex}.main-body{flex-direction:column;flex:1;gap:28px;padding:24px;display:flex;overflow-y:auto}.main-section-title{font-family:var(--font-main);letter-spacing:.2em;text-transform:uppercase;color:var(--chrome-text-dim);margin-bottom:12px;font-size:.72rem;font-weight:800}.main-preview-grid{background:var(--bg-beige);border:1px solid var(--chrome-line-creme);flex-wrap:wrap;gap:18px;padding:18px;display:flex}.main-preview-card{color:inherit;width:400px;max-width:100%;text-decoration:none;transition:transform .12s;display:block}.main-preview-card:hover{transform:translateY(-2px)}.main-preview-frame{background:var(--white-paper);border:2px solid var(--primary-red);width:100%;height:250px;transition:border-color .12s;position:relative;overflow:hidden}.main-preview-frame iframe{transform-origin:0 0;pointer-events:none;border:0;width:1400px;height:875px;position:absolute;top:0;left:0;transform:scale(.2857)}.main-preview-catch{position:absolute;inset:0}.main-preview-card:hover .main-preview-frame{border-color:#fff}.main-preview-foot{justify-content:space-between;align-items:baseline;gap:10px;padding:9px 2px 2px;display:flex}.main-preview-label{font-family:var(--font-main);color:var(--brun-encre);font-size:1rem;font-weight:800}.main-preview-desc{color:var(--sepia-moyen);font-size:.75rem}.main-nav-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;display:grid}.main-nav-card{background:var(--bg-beige);border:1px solid var(--chrome-line-creme);border-left:3px solid var(--ocre-doux);flex-direction:column;gap:3px;padding:14px 16px;text-decoration:none;transition:border-color .12s,transform .12s;display:flex}.main-nav-card:hover{border-left-color:var(--primary-red);transform:translateY(-1px)}.main-nav-label{font-family:var(--font-main);color:var(--brun-encre);font-size:.95rem;font-weight:800}.main-nav-desc{color:var(--sepia-moyen);font-size:.75rem}.main-tables-grid{grid-template-columns:repeat(auto-fill,minmax(116px,1fr));gap:10px;display:grid}.main-table-tile{background:var(--bg-beige);border:1px solid var(--chrome-line-creme);border-top:3px solid var(--ocre-doux);flex-direction:column;gap:2px;padding:10px 12px;text-decoration:none;transition:transform .12s;display:flex}.main-table-tile:hover{transform:translateY(-1px)}.main-table-name{font-family:var(--font-main);color:var(--brun-encre);font-size:.95rem;font-weight:800}.main-table-status{font-size:.72rem;font-weight:700}.main-table-meta{color:var(--sepia-moyen);font-size:.7rem}.peek-banner{background:var(--primary-red);color:#fff;font-family:var(--font-main);letter-spacing:.06em;flex-shrink:0;align-items:center;gap:12px;padding:6px 12px;font-size:.8rem;font-weight:700;display:flex}.peek-banner-label{text-align:center;flex:1}.peek-back{color:#fff;font-family:var(--font-main);letter-spacing:.04em;cursor:pointer;background:#ffffff29;border:1px solid #ffffff8c;border-radius:0;flex-shrink:0;padding:5px 14px;font-size:.8rem;font-weight:700}.peek-back:hover{background:#ffffff4d}.app-shell.is-peek .order-sidebar{display:none}.kitchen-empty{color:#666;flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex}.kitchen-empty-icon{margin-bottom:16px;font-size:4rem}.kitchen-empty-text{font-family:var(--font-main);letter-spacing:.1em;text-transform:uppercase;font-size:1.1rem}.kitchen-rows{flex-direction:column;flex:1;gap:6px;min-height:0;padding:8px;display:flex;overflow:hidden}.kitchen-row{background:var(--white-paper);border:1px solid var(--creme-bois);flex:1;align-items:stretch;min-height:0;display:flex;overflow:hidden}.kitchen-row-label{background:var(--brun-encre);width:104px;color:var(--bg-beige);font-family:var(--font-main);text-transform:uppercase;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:4px;padding:6px;display:flex}.kitchen-row.is-empty .kitchen-row-label{background:var(--sepia-moyen)}.kitchen-row.is-empty .kitchen-row-count{color:var(--creme-bois)}.kitchen-row-name{letter-spacing:.1em;text-align:center;font-size:.82rem;font-weight:800;line-height:1.15}.kitchen-row-count{font-variant-numeric:tabular-nums;font-family:Courier New,monospace;font-size:1.5rem;font-weight:800;line-height:1}.kitchen-row-cards{scrollbar-width:thin;flex:1;align-items:stretch;gap:10px;padding:10px;display:flex;overflow:auto hidden}.kitchen-row-cards::-webkit-scrollbar{height:6px}.kitchen-row-cards::-webkit-scrollbar-thumb{background:var(--creme-bois)}.kitchen-row-empty{color:var(--ocre-doux);font-family:var(--font-main);letter-spacing:.1em;text-transform:uppercase;align-self:center;padding-left:12px;font-size:.8rem}.kitchen-card{background:var(--white-paper);width:268px;height:100%;color:var(--brun-encre);border:1px solid var(--creme-bois);border-top:4px solid var(--creme-bois);flex-shrink:0;align-items:stretch;display:flex;overflow:hidden}.kitchen-card.kds-attention{border-top-color:var(--bois-chaud)}.kitchen-card.kds-retard{border-color:var(--primary-red);border-top:4px solid var(--primary-red)}.kitchen-card-photo{border-right:1px solid var(--creme-bois);background:#efe6d6;flex:0 0 88px;align-self:stretch;overflow:hidden}.kitchen-card-photo img{object-fit:cover;width:100%;height:100%;display:block;transform:scale(1.45)}.kitchen-card-body{flex-direction:column;flex:1;min-width:0;padding:9px 11px;display:flex}.kitchen-card-top{flex-shrink:0;align-items:center;gap:8px;display:flex}.kitchen-card-table{font-family:var(--font-main);text-transform:uppercase;letter-spacing:.12em;color:var(--ocre-doux);font-size:.72rem;font-weight:800}.kitchen-card-qty-badge{background:var(--brun-encre);color:var(--bg-beige);font-family:var(--font-main);font-variant-numeric:tabular-nums;padding:4px 7px;font-size:.82rem;font-weight:800;line-height:1}.kitchen-card-name{font-family:var(--font-main);color:var(--brun-encre);flex-shrink:0;max-height:2.5em;margin:4px 0 6px;font-size:.92rem;font-weight:700;line-height:1.25;display:block;overflow:hidden}.kitchen-card-timer{color:var(--sepia-moyen);letter-spacing:.04em;font-variant-numeric:tabular-nums;margin-left:auto;font-family:Courier New,monospace;font-size:1.02rem;font-weight:800}.kitchen-card.kds-attention .kitchen-card-timer{color:var(--brun-encre)}.kitchen-card.kds-retard .kitchen-card-timer{color:var(--primary-red)}.kitchen-card-btn{background:var(--brun-encre);color:#fff;font-family:var(--font-main);letter-spacing:.1em;cursor:pointer;text-transform:uppercase;border:none;border-radius:0;flex-shrink:0;align-self:flex-end;margin-top:auto;padding:7px 12px;font-size:.72rem;font-weight:800;transition:background .15s,transform .1s}.kitchen-card-btn:hover{background:var(--primary-red)}.kitchen-card-btn:active{transform:scale(.95)}.kitchen-card.is-tap-unlock,.kitchen-card.is-taplike{cursor:pointer}.kitchen-card.is-staged{outline:2px solid var(--primary-red);outline-offset:-2px;background:var(--red-20)}.kds-batch-countdown{font-family:var(--font-main);letter-spacing:.02em;color:var(--primary-red);font-variant-numeric:tabular-nums;margin-left:auto;font-size:.95rem;font-weight:800}.kds-stepper{align-items:center;gap:4px;display:inline-flex}.kds-stepper-btn{background:var(--brun-encre);color:#fff;cursor:pointer;border:none;border-radius:0;width:30px;height:30px;font-size:1rem;font-weight:800;line-height:1}.kds-stepper-btn:active{transform:scale(.94)}.kds-stepper-val{text-align:center;font-variant-numeric:tabular-nums;min-width:16px;color:var(--brun-encre);font-weight:800}.kds-view-toggle{border:1px solid var(--creme-bois);color:var(--sepia-moyen);font-family:var(--font-main);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:0;padding:6px 12px;font-size:.72rem;font-weight:800}.kds-view-toggle:hover{border-color:var(--primary-red);color:var(--primary-red)}.kds-recall{background:var(--primary-red);color:#fff;font-family:var(--font-main);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;border:none;border-radius:0;align-items:center;gap:8px;padding:7px 12px;font-size:.78rem;font-weight:800;display:inline-flex}.kds-recall:hover{background:var(--red-700)}.kds-recall:active{transform:scale(.98)}.kds-recall-secs{font-variant-numeric:tabular-nums;background:#ffffff38;padding:2px 7px}.kds-sent{flex:1;min-height:0;padding:12px;overflow:auto}.kds-sent-table{border-collapse:collapse;width:100%;font-family:var(--font-main);background:var(--bg-beige);font-size:.85rem}.kds-sent-table th{background:var(--brun-encre);color:#fff;text-align:left;letter-spacing:.08em;text-transform:uppercase;padding:9px 12px;font-size:.72rem;font-weight:800;position:sticky;top:0}.kds-sent-table td{border-bottom:1px solid var(--creme-bois);color:var(--brun-encre);padding:8px 12px}.kds-sent-mark td{color:var(--primary-red);font-weight:700}.kds-sent-empty{text-align:center;color:var(--ocre-doux);padding:24px;font-style:italic}.kds-sent-action{white-space:nowrap}.kds-sent-recall{background:var(--primary-red);color:#fff;font-family:var(--font-main);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;border:none;border-radius:0;padding:6px 12px;font-size:.75rem;font-weight:800}.kds-sent-recall:hover{background:var(--red-700)}.kds-sent-recall:active{transform:scale(.97)}.kds-sent-recall.is-awaiting,.kds-sent-recall.is-failed{cursor:default;display:inline-block}.kds-sent-recall.is-awaiting{background:var(--bois-chaud);color:var(--brun-encre)}.kds-sent-recall.is-awaiting:hover{background:var(--bois-chaud)}.kds-sent-recall.is-failed{color:var(--sepia-moyen);background:#c9b795}.kds-sent-recall.is-failed:hover{background:#c9b795}.kitchen-card.is-retour{outline:2px solid var(--primary-red);outline-offset:-2px}.kds-retour-badge{background:var(--primary-red);color:#fff;font-family:var(--font-main);letter-spacing:.1em;text-transform:uppercase;padding:2px 6px;font-size:.6rem;font-weight:800}.kitchen-card.is-cancelled{cursor:pointer;background:#e8dfd0;border-color:#c9b795;position:relative}.kitchen-card.is-cancelled .kitchen-card-photo img{filter:grayscale();opacity:.45}.kitchen-card.is-cancelled .kitchen-card-name{color:var(--sepia-moyen);text-decoration:line-through;text-decoration-thickness:2px}.kds-cancel-badge{background:var(--sepia-moyen);color:#fff;font-family:var(--font-main);letter-spacing:.1em;text-transform:uppercase;padding:2px 6px;font-size:.6rem;font-weight:800}.kds-cancel-stamp{border:3px solid var(--primary-red);color:var(--primary-red);font-family:var(--font-main);letter-spacing:.16em;text-transform:uppercase;pointer-events:none;background:#f7f1e8b8;padding:3px 14px;font-size:1.05rem;font-weight:900;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-12deg)}.kds-retour-dialog{background:var(--white-paper);border:1px solid var(--creme-bois);border-top:4px solid var(--primary-red);flex-direction:column;align-items:center;gap:12px;width:340px;max-width:100%;padding:20px 22px;display:flex}.kds-retour-title{font-family:var(--font-main);text-transform:uppercase;letter-spacing:.06em;color:var(--brun-encre);font-size:1rem;font-weight:800}.kds-retour-sub{color:var(--sepia-moyen);text-align:center;font-size:.85rem}.kds-retour-actions{gap:10px;width:100%;display:flex}.kds-retour-btn{background:var(--brun-encre);color:#fff;min-height:54px;font-family:var(--font-main);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;border:none;border-radius:0;flex:1;padding:8px;font-size:.8rem;font-weight:800}.kds-retour-btn.is-danger{background:var(--primary-red)}.kds-retour-btn:active{transform:scale(.97)}.kds-retour-cancel{border:1px solid var(--creme-bois);color:var(--sepia-moyen);font-family:var(--font-main);text-transform:uppercase;letter-spacing:.06em;cursor:pointer;background:0 0;border-radius:0;padding:7px 16px;font-size:.72rem;font-weight:800}.kds-offline-banner{background:var(--primary-red);color:#fff;font-family:var(--font-main);letter-spacing:.04em;text-align:center;flex-shrink:0;padding:8px 16px;font-size:.82rem;font-weight:800}.kds-reverse-bar{border-bottom:1px solid var(--creme-bois);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;padding:4px 0 14px;display:flex}.kds-reverse-title{font-family:var(--font-main);letter-spacing:.1em;text-transform:uppercase;color:var(--ocre-doux);margin-right:6px;font-size:.72rem;font-weight:800}.kds-reverse-btn{border:1px solid var(--creme-bois);color:var(--sepia-moyen);font-family:var(--font-main);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:0;padding:7px 12px;font-size:.72rem;font-weight:800}.kds-reverse-btn:not(:disabled):hover{border-color:var(--primary-red);color:var(--primary-red)}.kds-reverse-btn:disabled{opacity:.4;cursor:not-allowed}.kds-manual-bar{border-bottom:1px solid var(--creme-bois);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;padding:4px 0 14px;display:flex}.kds-manual-title{font-family:var(--font-main);letter-spacing:.1em;text-transform:uppercase;color:var(--ocre-doux);margin-right:6px;font-size:.72rem;font-weight:800}.kds-manual-select{font-family:var(--font-main);color:var(--brun-encre);background:var(--white-paper);border:1px solid var(--creme-bois);border-radius:0;min-width:180px;padding:8px 12px;font-size:.82rem;font-weight:700}.kds-manual-select:disabled{opacity:.4;cursor:not-allowed}.kds-manual-btn{border:1px solid var(--creme-bois);color:var(--sepia-moyen);font-family:var(--font-main);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;background:0 0;padding:8px 14px;font-size:.75rem;font-weight:800}.kds-manual-btn:not(:disabled):hover{border-color:var(--primary-red);color:var(--primary-red)}.kds-manual-btn.is-send{background:var(--primary-red);border-color:var(--primary-red);color:#fff}.kds-manual-btn.is-send:not(:disabled):hover{background:var(--red-700);color:#fff}.kds-manual-btn:disabled{opacity:.4;cursor:not-allowed}.kds-manual-note{font-family:var(--font-main);color:var(--ocre-doux);font-size:.72rem;font-style:italic}.kds-manual-status{font-family:var(--font-main);letter-spacing:.03em;padding:6px 10px;font-size:.72rem;font-weight:800}.kds-manual-status.is-awaiting{background:var(--bois-chaud);color:var(--brun-encre)}.kds-manual-status.is-done{background:var(--sepia-moyen);color:#fff}.kds-manual-status.is-failed{color:var(--sepia-moyen);background:#c9b795}.kds-lock-state{font-family:var(--font-main);letter-spacing:.08em;text-transform:uppercase;border-radius:0;align-items:center;gap:7px;padding:6px 12px;font-size:.78rem;font-weight:800;display:inline-flex}.kds-lock-state.is-locked{border:1px solid var(--ocre-doux);color:var(--ocre-doux);cursor:pointer;background:0 0}.kds-lock-state.is-locked:hover{border-color:var(--primary-red);color:var(--primary-red)}.kds-lock-state.is-open{border:1px solid var(--primary-red);color:var(--primary-red)}.kds-lock-dot{background:var(--primary-red);flex-shrink:0;width:9px;height:9px}.kds-lock-btn{border:1px solid var(--creme-bois);color:var(--sepia-moyen);font-family:var(--font-main);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:0;padding:6px 12px;font-size:.72rem;font-weight:800}.kds-lock-btn:hover{border-color:var(--primary-red);color:var(--primary-red)}.kds-pad-overlay{z-index:200;background:#3d2b1f8c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.kds-pad{background:var(--white-paper);border:1px solid var(--creme-bois);border-top:4px solid var(--primary-red);flex-direction:column;align-items:center;width:320px;max-width:100%;padding:22px 24px 24px;display:flex}.kds-pad-title{font-family:var(--font-main);letter-spacing:.06em;text-transform:uppercase;color:var(--brun-encre);font-size:1rem;font-weight:800}.kds-pad-sub{font-family:var(--font-main);color:var(--ocre-doux);letter-spacing:.12em;text-transform:uppercase;margin-top:4px;font-size:.75rem}.kds-pad-dots{gap:14px;margin:18px 0 6px;display:flex}.kds-pad-dot{border:2px solid var(--creme-bois);background:0 0;width:14px;height:14px}.kds-pad-dot.is-filled{background:var(--brun-encre);border-color:var(--brun-encre)}.kds-pad-dots.is-error .kds-pad-dot{border-color:var(--primary-red)}.kds-pad-err{color:var(--primary-red);font-family:var(--font-main);margin:6px 0 2px;font-size:.75rem;font-weight:700}.kds-pad-grid{grid-template-columns:repeat(3,1fr);gap:10px;width:100%;margin-top:14px;display:grid}.kds-pad-key{background:var(--bg-beige);border:1px solid var(--creme-bois);min-height:64px;color:var(--brun-encre);font-family:var(--font-main);cursor:pointer;font-variant-numeric:tabular-nums;border-radius:0;font-size:1.5rem;font-weight:700;transition:background .1s,transform 80ms}.kds-pad-key:hover{background:#efe6d6}.kds-pad-key:active{transform:scale(.96)}.kds-pad-key:disabled{opacity:.5;cursor:default}.kds-pad-key.is-aux{color:var(--sepia-moyen);font-size:1.2rem}.floor-shell{background:var(--primary-dark);min-height:100vh;color:var(--chrome-text);flex-direction:column;display:flex}.floor-header{background:var(--primary-dark);border-bottom:2px solid var(--primary-red);flex-shrink:0;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;padding:14px 24px;display:grid}.floor-title{font-family:var(--font-main);letter-spacing:.25em;font-size:1.3rem;font-weight:800}.floor-headline{align-items:center;gap:14px;min-width:0;display:flex}.brand-logo-compact{--brand-logo-fs:13px;--brand-logo-pad:3px 7px;flex-shrink:0}.floor-stats{font-family:var(--font-main);justify-content:center;align-items:center;gap:16px;font-size:.9rem;display:flex}.floor-stat{letter-spacing:.05em;padding:4px 12px;font-weight:700}.floor-stat-available{color:#5fbf68;background:#2e7d3229}.floor-stat-occupied{color:#e3a45c;background:#c9832e29}.floor-stat-dirty{color:#e0958c;background:#c46f6429}.floor-stat-clock{color:var(--chrome-text);margin-left:12px;font-family:Courier New,monospace;font-weight:700}.floor-actions{align-items:center;gap:10px;display:flex}.floor-tabs{align-items:stretch;gap:2px;display:flex}.floor-tab{font-family:var(--font-main);letter-spacing:.12em;text-transform:uppercase;color:var(--chrome-text-dim);border-bottom:2px solid #0000;align-items:center;padding:8px 16px;font-size:.8rem;font-weight:800;text-decoration:none;transition:color .15s,border-color .15s;display:inline-flex}.floor-tab:hover{color:var(--chrome-text)}.floor-tab.is-active{color:var(--chrome-text);border-bottom-color:var(--primary-red)}.floor-body{flex:1;grid-template-rows:minmax(55vh,1fr) auto;grid-template-columns:minmax(0,1fr);min-height:0;display:grid;overflow:hidden auto}.floor-body.has-detail{grid-template-columns:minmax(0,1fr) 420px}.floor-main{flex-direction:column;grid-area:1/1;min-height:0;padding:16px;display:flex;position:relative;overflow:hidden}.floor-plan{flex-direction:column;flex:1;gap:12px;width:100%;min-height:0;display:flex}.floor-train{background:var(--bg-beige);border:1px solid var(--chrome-line-creme);flex-direction:column;flex:1 1 0;min-height:0;padding:8px 12px;display:flex}.floor-train-label{font-family:var(--font-main);letter-spacing:.2em;color:var(--sepia-moyen);flex-shrink:0;margin-bottom:8px;font-size:.7rem;font-weight:800}.floor-train-rows{flex-direction:column;flex:1 1 0;justify-content:center;gap:2px;min-height:0;display:flex}.floor-train-track{color:var(--ocre-doux);text-align:center;letter-spacing:0;margin:0;font-family:Courier New,monospace;font-size:.7rem}.floor-zone{flex:1 1 0;align-items:stretch;gap:12px;min-height:0;display:flex}.floor-zone-label{width:50px;font-family:var(--font-main);color:var(--sepia-moyen);letter-spacing:.15em;text-transform:uppercase;flex-shrink:0;align-self:center;font-size:.7rem;font-weight:700}.floor-zone-tiles{flex:1;grid-auto-rows:minmax(0,1fr);gap:8px;min-height:0;display:grid}.floor-zone-box{grid-template-columns:repeat(4,1fr)}.floor-zone-mixed{flex:1;gap:16px;min-height:0;display:flex}.floor-zone-cluster{flex:1;align-items:stretch;gap:6px;min-height:0;display:flex}.floor-zone-tiles>.floor-card{min-width:0;height:100%}.floor-zone-cluster>.floor-card{flex:1 1 0;min-width:0;height:100%}.floor-card{outline:none;transition:filter .12s,border-color .12s}.floor-card:not(.is-muted):hover{filter:brightness(.92)}.floor-card:not(.is-muted):focus-visible{outline-offset:-4px;outline:2px solid #fff}.floor-card.is-muted{border:1px solid #8e9196}.floor-card.is-muted:hover{border-color:#5e6165}.floor-card.is-muted:focus-visible,.floor-card.is-selected{outline-offset:2px;outline:2px solid #3d2b1f}.floor-legend{font-family:var(--font-main);color:#aaa;flex-wrap:wrap;flex-shrink:0;gap:18px;padding:8px 4px;font-size:.75rem;display:flex}.floor-legend-item{align-items:center;gap:6px;display:flex}.floor-legend-swatch{border-radius:2px;width:14px;height:14px}.floor-detail{background:var(--bg-beige);border-left:4px solid var(--primary-red);min-height:0;color:var(--brun-encre);font-family:var(--font-body);grid-area:1/2/-1;padding:14px 18px;overflow-y:auto}.floor-detail-head{justify-content:space-between;align-items:flex-start;margin-bottom:10px;display:flex}.floor-detail-name{font-family:var(--font-main);color:var(--brun-encre);font-size:1.3rem;font-weight:800}.floor-detail-meta{color:var(--sepia-moyen);text-transform:uppercase;letter-spacing:.1em;margin-top:2px;font-size:.75rem}.floor-detail-close{border:1px solid var(--chrome-line-creme);color:var(--sepia-moyen);cursor:pointer;background:0 0;width:32px;height:32px;font-size:1.3rem;line-height:1}.floor-detail-close:hover{border-color:var(--primary-red);color:var(--primary-red)}.floor-detail-section{border-top:1px solid var(--chrome-line-creme);margin-top:10px;padding-top:10px}.floor-detail-section-title{font-family:var(--font-main);color:var(--ocre-doux);letter-spacing:.2em;margin-bottom:8px;font-size:.7rem;font-weight:800}.floor-detail-row{justify-content:space-between;align-items:center;padding:4px 0;font-size:.85rem;display:flex}.floor-detail-row span:first-child{color:var(--sepia-moyen)}.floor-detail-row span:last-child{color:var(--brun-encre);font-weight:600}.floor-detail-empty{color:var(--sepia-moyen);font-size:.85rem;font-style:italic}.floor-detail-section-assigned{background:var(--red-20);border-left:3px solid var(--primary-red);border-top:none;border-radius:0;padding:10px 12px}.floor-detail-section-assigned .floor-detail-section-title{color:var(--red-700)}.floor-detail-strong{color:var(--brun-encre);font-weight:700}.floor-detail-pin{font-family:var(--font-main,monospace);letter-spacing:.3em;color:var(--primary-red);font-size:1.2rem;font-weight:800}.floor-detail-hint{color:var(--sepia-moyen);margin-top:8px;font-size:.75rem;font-style:italic}.floor-detail-actions{gap:8px;margin-top:10px;display:flex}.floor-detail-btn{border:1px solid var(--chrome-line-creme);color:var(--brun-encre);font-family:var(--font-main);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;background:0 0;flex:1;padding:8px 10px;font-size:.72rem;font-weight:800;transition:background .15s,border-color .15s,color .15s}.floor-detail-btn:hover{border-color:var(--ocre-doux)}.floor-detail-btn-danger{color:var(--primary-red);border-color:#a0403366}.floor-detail-btn-danger:hover{background:var(--primary-red);color:var(--white-paper);border-color:var(--primary-red)}.floor-detail-stack{flex-direction:column;gap:8px;display:flex}.floor-detail-stack .floor-detail-btn{flex:none}.floor-missing-alert{background:var(--red-20);border-left:3px solid var(--primary-red);margin-bottom:8px;padding:8px 10px}.floor-missing-alert-title{font-family:var(--font-main);color:var(--red-700);letter-spacing:.04em;font-size:.72rem;font-weight:800}.floor-missing-alert-list{color:var(--brun-encre);margin:4px 0 0;padding-left:18px;font-size:.82rem;list-style:outside}.prepa-check-list{flex-direction:column;gap:8px;max-height:42vh;margin:14px 0;display:flex;overflow-y:auto}.prepa-check-item{cursor:pointer;border:2px solid #0000001f;border-radius:12px;align-items:center;gap:12px;padding:12px 14px;font-size:1.05rem;display:flex}.prepa-check-item.is-checked{border-color:var(--primary-red);background:var(--red-20)}.prepa-check-item input{flex-shrink:0;width:22px;height:22px}.prepa-check-name{text-align:left;flex:1}.prepa-check-qty{color:#8a8a8a;font-variant-numeric:tabular-nums}.floor-order-lines{flex-direction:column;gap:2px;display:flex}.floor-order-line{grid-template-columns:auto 1fr auto;align-items:baseline;gap:8px;padding:3px 0;font-size:.85rem;display:grid}.floor-order-qty{color:var(--brun-encre);font-variant-numeric:tabular-nums;font-weight:700}.floor-order-name{color:var(--brun-encre);min-width:0}.floor-order-status{text-transform:uppercase;letter-spacing:.05em;color:var(--ocre-doux);margin-left:6px;font-size:.6rem;font-weight:700}.floor-order-status.is-done{color:#2e7d32}.floor-order-price{color:var(--brun-encre);white-space:nowrap;font-family:Courier New,monospace;font-weight:700}.floor-order-total{border-top:1px solid var(--chrome-line-creme);margin-top:8px}.floor-detail-row.floor-order-total span{color:var(--brun-encre);font-weight:800}.floor-order-item{flex-direction:column;display:flex}.floor-order-item .floor-order-line{grid-template-columns:auto auto 1fr auto;align-items:center}.floor-order-check{cursor:pointer;width:18px;height:18px;accent-color:var(--primary-red)}.floor-order-check-cell{width:18px}.floor-order-selecthead{border-bottom:1px solid var(--chrome-line-creme);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:6px;padding:4px 0 8px;display:flex}.floor-order-selectall{color:var(--sepia-moyen);cursor:pointer;align-items:center;gap:8px;font-size:.75rem;font-weight:700;display:inline-flex}.floor-order-selectall input{width:18px;height:18px;accent-color:var(--primary-red);cursor:pointer}.floor-order-bulk{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.floor-order-bulk-count{color:var(--brun-encre);font-size:.72rem;font-weight:800}.floor-order-bulk-danger{color:var(--primary-red);border-color:#a0403380}.floor-order-bulk-danger:hover{background:var(--primary-red);color:var(--white-paper);border-color:var(--primary-red)}.floor-order-line.is-discount .floor-order-name,.floor-order-line.is-discount .floor-order-price{color:var(--primary-red)}.floor-order-acts{justify-content:flex-end;align-items:center;gap:6px;margin-top:2px;display:flex}.floor-order-act{background:var(--white-paper);border:1px solid var(--chrome-line-creme);min-width:36px;height:36px;color:var(--sepia-moyen);cursor:pointer;justify-content:center;align-items:center;padding:0 6px;font-size:1.05rem;line-height:1;display:inline-flex}.floor-order-act:hover{color:var(--brun-encre);border-color:var(--ocre-doux)}.floor-order-act-danger{color:var(--primary-red)}.floor-order-act-danger:hover{color:var(--white-paper);background:var(--primary-red);border-color:var(--primary-red)}.floor-order-reason{flex-wrap:wrap;align-items:center;gap:6px;padding:6px 0 8px;display:flex}.floor-order-reason-label{color:var(--sepia-moyen);font-size:.7rem;font-weight:700}.floor-order-reason-opt{background:var(--red-20);border:1px solid var(--chrome-line-creme);color:var(--red-700);min-height:38px;font-family:var(--font-main);cursor:pointer;padding:8px 12px;font-size:.78rem;font-weight:700}.floor-order-reason-opt:hover{background:var(--primary-red);color:var(--white-paper)}.floor-alcool-vigilance{color:var(--ocre-doux)}.floor-alcool-attention{color:var(--primary-red)}.reason-picker-trigger{width:100%;min-height:38px;color:var(--primary-red);font-family:var(--font-main);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;background:0 0;border:1px solid #a0403366;border-radius:0;font-size:.72rem;font-weight:800;transition:background .15s,border-color .15s,color .15s}.reason-picker-trigger:hover{background:var(--primary-red);color:var(--white-paper);border-color:var(--primary-red)}.reason-picker{flex-direction:column;gap:6px;width:100%;display:flex}.reason-picker-label{letter-spacing:.06em;text-transform:uppercase;color:var(--sepia-moyen);font-size:.7rem;font-weight:800}.reason-picker-req{color:var(--primary-red)}.reason-picker-error{color:var(--primary-red);font-size:.72rem;font-weight:700}.reason-picker-actions{gap:6px;display:flex}.reason-picker-cancel{border:1px solid var(--chrome-line-creme);color:var(--brun-encre);font-family:var(--font-main);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:0;flex:none;padding:0 14px;font-size:.72rem;font-weight:800}.reason-picker-cancel:hover{border-color:var(--ocre-doux)}.reason-picker-select,.reason-picker-input{background:var(--white-paper);border:1px solid var(--chrome-line-creme);width:100%;color:var(--brun-encre);font-family:var(--font-body);border-radius:0;padding:8px 10px;font-size:.82rem}.reason-picker-select:focus,.reason-picker-input:focus{border-color:var(--ocre-doux);outline:none}.reason-picker-confirm{background:var(--primary-red);border:1px solid var(--primary-red);min-height:38px;color:var(--white-paper);font-family:var(--font-main);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;border-radius:0;flex:auto;font-size:.72rem;font-weight:800;transition:background .15s,border-color .15s}.reason-picker-confirm:hover:not(:disabled){background:var(--red-700);border-color:var(--red-700)}.reason-picker-confirm.is-danger{background:var(--primary-red);border-color:var(--primary-red)}.reason-picker-confirm:disabled{color:var(--sepia-moyen);border-color:var(--chrome-line-creme);cursor:default;background:0 0}.floor-order-reason-empty{color:var(--sepia-moyen);font-size:.72rem;font-style:italic}.floor-order-tools{border-top:1px solid var(--chrome-line-creme);flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;padding-top:10px;display:flex}.floor-order-discount{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.floor-order-tools-label{letter-spacing:.08em;text-transform:uppercase;color:var(--ocre-doux);font-size:.7rem;font-weight:800}.floor-order-tool-btn{border:1px solid var(--chrome-line-creme);color:var(--brun-encre);min-height:38px;font-family:var(--font-main);cursor:pointer;background:0 0;padding:8px 14px;font-size:.82rem;font-weight:800}.floor-order-tool-btn:hover{border-color:var(--ocre-doux)}.floor-order-eur-input{border:1px solid var(--chrome-line-creme);background:var(--white-paper);width:68px;min-height:38px;color:var(--brun-encre);font-family:var(--font-main);padding:8px;font-size:.9rem}.floor-order-cancel-all{color:var(--primary-red);min-height:40px;font-family:var(--font-main);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;background:0 0;border:1px solid #a0403366;margin-left:auto;padding:10px 16px;font-size:.76rem;font-weight:800}.floor-order-cancel-all:hover{background:var(--primary-red);color:var(--white-paper);border-color:var(--primary-red)}.floor-order-cancel-all:disabled{opacity:.4;cursor:not-allowed}.floor-order-cancel-all:disabled:hover{color:var(--primary-red);background:0 0;border-color:#a0403366}.floor-pin-prompt{background:var(--red-20);border:1px solid #a0403366;flex-direction:column;gap:6px;margin-bottom:10px;padding:10px 12px;display:flex}.floor-pin-desc{font-family:var(--font-main);color:var(--brun-encre);font-size:.82rem;font-weight:800}.floor-pin-label{color:var(--sepia-moyen);text-transform:uppercase;letter-spacing:.05em;font-size:.7rem}.floor-pin-row{align-items:center;gap:8px;display:flex}.floor-pin-input{border:1px solid var(--chrome-line-creme);background:var(--white-paper);width:84px;color:var(--brun-encre);letter-spacing:.35em;text-align:center;padding:6px 8px;font-family:Courier New,monospace;font-size:1.05rem}.floor-pin-input:focus{border-color:var(--primary-red);outline:none}.floor-order-tool-btn:disabled{opacity:.45;cursor:not-allowed}.floor-pin-cancel{color:var(--sepia-moyen);font-family:var(--font-main);cursor:pointer;background:0 0;border:none;font-size:.72rem;font-weight:700;text-decoration:underline}.floor-pin-error{color:var(--red-700);font-size:.75rem;font-weight:700}.floor-activity-list{flex-direction:column;gap:4px;display:flex}.floor-activity-row{justify-content:space-between;align-items:baseline;gap:10px;padding:2px 0;font-size:.8rem;display:flex}.floor-activity-label{color:var(--brun-encre);min-width:0}.floor-activity-actor{color:var(--red-700);font-weight:800}.floor-activity-time{color:var(--ocre-doux);white-space:nowrap;font-family:Courier New,monospace;font-size:.72rem}.floor-task-resolve-mini{background:var(--primary-red);color:#fff;text-transform:uppercase;letter-spacing:.08em;cursor:pointer;border:none;padding:4px 10px;font-size:.7rem;font-weight:700}.floor-task-resolve-mini:hover{background:var(--red-700)}.floor-room-bar{background:var(--bg-beige);border:1px solid var(--chrome-line-creme);border-radius:0;flex-wrap:wrap;flex:none;align-items:center;gap:16px;margin-bottom:10px;padding:6px 12px;display:flex}.floor-room-actions{align-items:center;gap:10px;display:flex}.floor-room-open{background:var(--primary-red);color:var(--white-paper);border:1px solid var(--primary-red);min-height:38px;font-family:var(--font-main);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;border-radius:0;padding:8px 18px;font-size:.82rem;font-weight:800}.floor-room-open:hover{background:var(--red-700);border-color:var(--red-700)}.floor-room-close{color:var(--brun-encre);border:1px solid var(--chrome-line-creme);min-height:38px;font-family:var(--font-main);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:0;padding:8px 18px;font-size:.82rem;font-weight:800}.floor-room-close:hover{border-color:var(--ocre-doux)}.floor-room-info{font-family:var(--font-main);color:var(--sepia-moyen);flex-wrap:wrap;align-items:center;gap:14px;margin-left:auto;font-size:.78rem;display:flex}.floor-room-flash{color:var(--success-green);font-weight:800}.floor-room-status{color:var(--sepia-moyen)}.floor-room-tablets{color:var(--brun-encre);align-items:center;gap:6px;font-weight:700;display:inline-flex}.floor-room-dot{background:var(--ocre-doux);border-radius:0;width:9px;height:9px;display:inline-block}.floor-room-dot.is-up{background:var(--success-green)}.floor-room-dot.is-down{background:var(--primary-red)}.floor-room-dot.is-part{background:var(--accent-gold)}.floor-room-overlay{z-index:1000;background:#3d2b1f73;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.floor-room-modal{background:var(--bg-beige);border:1px solid var(--chrome-line-creme);border-top:4px solid var(--primary-red);border-radius:0;flex-direction:column;gap:10px;width:100%;max-width:460px;padding:22px 24px;display:flex}.floor-room-modal.is-close{border-top-color:var(--brun-encre)}.floor-room-modal-title{font-family:var(--font-main);color:var(--brun-encre);font-size:1.1rem;font-weight:800}.floor-room-modal-desc{color:var(--sepia-moyen);font-size:.9rem;line-height:1.4}.floor-room-modal-warn{color:var(--red-700);background:var(--red-20);border:1px solid #a0403366;padding:8px 10px;font-size:.85rem;font-weight:700}.floor-room-modal-pinlabel{color:var(--sepia-moyen);text-transform:uppercase;letter-spacing:.05em;margin-top:4px;font-size:.7rem}.floor-room-modal-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.floor-room-modal-confirm{background:var(--primary-red);color:var(--white-paper);border:1px solid var(--primary-red);min-height:44px;font-family:var(--font-main);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;border-radius:0;padding:10px 18px;font-size:.82rem;font-weight:800}.floor-room-modal-confirm:hover{background:var(--red-700);border-color:var(--red-700)}.floor-room-modal-confirm.is-close{background:var(--brun-encre);border-color:var(--brun-encre)}.floor-room-modal-confirm.is-close:hover{background:#2a1d15;border-color:#2a1d15}.floor-room-modal-confirm:disabled{opacity:.45;cursor:not-allowed}.floor-tasks-panel{background:var(--primary-dark);border-left:1px solid var(--chrome-line);flex-direction:column;display:flex;overflow:visible}.floor-tasks-head{background:var(--primary-dark);border-bottom:1px solid var(--chrome-line);font-family:var(--font-main);letter-spacing:.2em;flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 16px;font-size:.85rem;font-weight:800;display:flex}.floor-tasks-count{background:var(--primary-red);color:var(--white-paper);text-align:center;min-width:32px;padding:2px 10px;font-size:.85rem}.floor-tasks-empty{color:var(--chrome-text-dim);text-align:center;flex:1;justify-content:center;align-items:center;padding:24px;font-size:.85rem;font-style:italic;display:flex}.floor-tasks-list{flex-direction:column;gap:8px;padding:10px;display:flex}.floor-task{background:var(--bg-beige);border:1px solid var(--chrome-line-creme);border-left:4px solid var(--task-color,var(--ocre-doux));grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:7px 12px;transition:background .2s;display:grid}.floor-task.is-priority{background:linear-gradient(90deg,#a040331a,transparent 55%),var(--bg-beige);animation:2s ease-in-out infinite floor-task-pulse}@keyframes floor-task-pulse{0%,to{box-shadow:inset 4px 0 0 var(--task-color,var(--primary-red))}50%{box-shadow:inset 4px 0 0 var(--task-color,var(--primary-red)),0 0 16px var(--task-glow,#a040334d)}}.floor-task.is-urgent{border-left-color:var(--status-urgent);background:linear-gradient(90deg,#e2472f29,transparent 55%),var(--bg-beige);animation:1s ease-in-out infinite floor-task-pulse-urgent}@keyframes floor-task-pulse-urgent{0%,to{box-shadow:inset 4px 0 0 var(--status-urgent)}50%{box-shadow:inset 4px 0 0 var(--status-urgent),0 0 22px #e2472f73}}.floor-task-icon{font-size:1.4rem;line-height:1}.floor-task-body{flex-direction:row;align-items:baseline;gap:10px;min-width:0;display:flex}.floor-task-table{font-family:var(--font-main);color:var(--brun-encre);flex-shrink:0;font-size:.9rem;font-weight:800}.floor-task-type{color:var(--sepia-moyen);text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-size:.75rem;overflow:hidden}.floor-task-age{color:var(--ocre-doux);flex-shrink:0;margin-left:auto;font-family:Courier New,monospace;font-size:.7rem}.floor-task-resolve{background:var(--primary-red);color:var(--white-paper);font-family:var(--font-main);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border:none;padding:8px 14px;font-size:.7rem;font-weight:800;transition:background .15s}.floor-task-resolve:hover{background:var(--red-700)}.floor-task-resolve:active{transform:scale(.96)}.floor-kpis{font-family:var(--font-main);justify-content:center;align-items:center;gap:22px;display:flex}.floor-kpi{flex-direction:column;align-items:center;min-width:60px;line-height:1.1;display:flex}.floor-kpi-value{color:var(--chrome-text);font-size:1.4rem;font-weight:800}.floor-kpi-unit{color:var(--chrome-text-dim);margin-left:1px;font-size:.72rem;font-weight:700}.floor-kpi-label{letter-spacing:.12em;text-transform:uppercase;color:var(--chrome-text-dim);margin-top:3px;font-size:.6rem;font-weight:700}.floor-rail{border-top:1px solid var(--chrome-line);flex-direction:row;grid-area:2/1;align-items:stretch;min-height:0;display:flex;overflow:visible}.floor-rail>.floor-tasks-panel,.floor-rail>.floor-queue-panel{flex:1 1 0;min-width:0;min-height:0}.floor-rail>.floor-tasks-panel{border-left:none}.floor-rail>.floor-queue-panel{border-top:none;border-left:1px solid var(--chrome-line)}.floor-queue-panel{background:var(--primary-dark);border-top:1px solid var(--chrome-line);flex-direction:column;display:flex;overflow:visible}.floor-queue-head{border-bottom:1px solid var(--chrome-line);font-family:var(--font-main);letter-spacing:.2em;color:var(--chrome-text);flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 16px;font-size:.85rem;font-weight:800;display:flex}.floor-queue-count{background:var(--ocre-doux);color:var(--primary-dark);text-align:center;min-width:32px;padding:2px 10px;font-size:.85rem}.floor-queue-empty{color:var(--chrome-text-dim);text-align:center;flex:1;justify-content:center;align-items:center;padding:24px;font-size:.85rem;font-style:italic;display:flex}.floor-queue-list{flex-direction:column;gap:8px;padding:10px;display:flex}.floor-queue-item{background:var(--bg-beige);border:1px solid var(--chrome-line-creme);border-left:4px solid var(--ocre-doux);color:var(--brun-encre);font-family:var(--font-body);flex-direction:column;gap:6px;padding:6px 10px;display:flex}.floor-queue-item.is-called{border-left-color:#5b7fa6}.floor-queue-row{flex-wrap:wrap;align-items:center;gap:6px 8px;min-width:0;display:flex}.floor-queue-ticket{font-family:var(--font-main);color:var(--brun-encre);letter-spacing:.05em;flex-shrink:0;font-size:.9rem;font-weight:800}.floor-queue-size{color:var(--sepia-moyen);flex-shrink:0;font-size:.75rem}.floor-queue-table{color:#5b7fa6;white-space:nowrap;flex-shrink:0;font-size:.75rem;font-weight:700}.floor-queue-pin{color:var(--sepia-moyen);white-space:nowrap;flex-shrink:0;font-size:.75rem}.floor-queue-pin strong{color:var(--red-700);letter-spacing:.12em}.floor-queue-wait{color:var(--ocre-doux);flex-shrink:0;margin-left:auto;font-family:Courier New,monospace;font-size:.72rem}.floor-queue-btn{border:1px solid var(--chrome-line-creme);color:var(--brun-encre);font-family:var(--font-main);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;background:0 0;flex:none;padding:5px 8px;font-size:.66rem;font-weight:800;transition:background .15s,border-color .15s}.floor-queue-btn:hover{border-color:var(--ocre-doux)}.floor-queue-btn-release{color:var(--primary-red);border-color:#a0403366}.floor-queue-btn-release:hover{background:var(--primary-red);color:var(--white-paper);border-color:var(--primary-red)}.floor-queue-reassign{border-top:1px dashed var(--chrome-line-creme);flex-wrap:wrap;gap:6px;padding-top:6px;display:flex}.floor-queue-reassign-empty{color:var(--sepia-moyen);font-size:.72rem;font-style:italic}.floor-queue-reassign-opt{background:var(--red-20);border:1px solid var(--chrome-line-creme);color:var(--red-700);font-family:var(--font-main);cursor:pointer;padding:4px 10px;font-size:.72rem;font-weight:700}.floor-queue-reassign-opt:hover{background:var(--primary-red);color:var(--white-paper)}.reports-sub{font-family:var(--font-main);letter-spacing:.12em;text-transform:uppercase;color:var(--chrome-text-dim);text-align:center;font-size:.8rem}.reports-body{flex-direction:column;flex:1;gap:24px;padding:24px;display:flex;overflow-y:auto}.reports-toolbar{justify-content:flex-end;display:flex}.reports-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;display:grid}.reports-card{background:var(--bg-beige);border:1px solid var(--chrome-line-creme);border-left:4px solid var(--ocre-doux);color:var(--brun-encre);flex-direction:column;gap:6px;padding:18px 20px;display:flex}.reports-card.is-accent{border-left-color:var(--primary-red);background:var(--red-20)}.reports-card-value{font-family:var(--font-main);color:var(--brun-encre);font-size:2rem;font-weight:800;line-height:1}.reports-card-label{letter-spacing:.1em;text-transform:uppercase;color:var(--sepia-moyen);font-size:.72rem;font-weight:700}.reports-section{background:var(--bg-beige);border:1px solid var(--chrome-line-creme);color:var(--brun-encre);padding:18px 20px}.reports-section-title{font-family:var(--font-main);color:var(--ocre-doux);letter-spacing:.2em;text-transform:uppercase;margin-bottom:14px;font-size:.7rem;font-weight:800}.reports-empty{color:var(--sepia-moyen);font-size:.85rem;font-style:italic}.reports-table-list{flex-direction:column;gap:8px;display:flex}.reports-table-row{grid-template-columns:70px 1fr auto;align-items:center;gap:12px;font-size:.85rem;display:grid}.reports-table-name{font-family:var(--font-main);color:var(--brun-encre);font-weight:700}.reports-table-bar{background:#3d2b1f14;height:10px;overflow:hidden}.reports-table-bar-fill{background:var(--ocre-doux);height:100%;display:block}.reports-table-count{color:var(--brun-encre);text-align:right;min-width:20px;font-family:Courier New,monospace;font-weight:700}.history-searchwrap{justify-content:center;display:flex}.history-search{background:var(--bg-beige);border:1px solid var(--chrome-line-creme);width:100%;max-width:520px;color:var(--brun-encre);font-family:var(--font-body);padding:8px 14px;font-size:.9rem}.history-search::placeholder{color:var(--ocre-doux)}.history-body{flex:1;grid-template-columns:minmax(300px,380px) 1fr;min-height:0;display:grid;overflow:hidden}.history-list{border-right:1px solid var(--chrome-line);flex-direction:column;display:flex;overflow-y:auto}.history-empty{color:var(--chrome-text-dim);text-align:center;padding:24px;font-size:.85rem;font-style:italic}.history-row{border:none;border-bottom:1px solid var(--chrome-line);cursor:pointer;text-align:left;color:var(--chrome-text);font-family:var(--font-body);background:0 0;grid-template-columns:auto 1fr auto;grid-template-areas:"ticket table status""ticket date status";align-items:center;gap:2px 10px;padding:10px 16px;display:grid}.history-row:hover{background:#ffffff08}.history-row.is-selected{box-shadow:inset 3px 0 0 var(--primary-red);background:#ffffff0f}.history-row-ticket{font-family:var(--font-main);grid-area:ticket;align-self:center;padding-right:6px;font-size:.95rem;font-weight:800}.history-row-table{grid-area:table;font-size:.85rem;font-weight:700}.history-row-date{opacity:.8;grid-area:date;font-family:Courier New,monospace;font-size:.72rem}.history-row-status{text-transform:uppercase;letter-spacing:.06em;color:var(--ocre-doux);grid-area:status;font-size:.62rem;font-weight:700}.history-row-status.is-active{color:#5fbf68}.history-detail-wrap{padding:20px;overflow-y:auto}.history-placeholder{color:var(--chrome-text-dim);text-align:center;margin-top:40px;font-size:.9rem;font-style:italic}.history-detail{max-width:640px}@media (max-width:900px){.history-body{grid-template-columns:1fr}.history-list{border-right:none;border-bottom:1px solid var(--chrome-line);max-height:45vh}}@media (max-width:1000px){.floor-body,.floor-body.has-detail{grid-template-columns:minmax(0,1fr)}.floor-detail{z-index:60;border-left:4px solid var(--primary-red);width:min(420px,92vw);position:fixed;top:0;bottom:0;right:0;box-shadow:-10px 0 28px #00000073}.floor-kpis{gap:14px}}.menu-admin-body{flex-direction:column;flex:1;gap:14px;min-height:0;padding:16px 20px;display:flex;overflow-y:auto}.menu-admin-lockbar{background:var(--bg-beige);border:1px solid var(--chrome-line-creme);border-left:4px solid var(--primary-red);color:var(--brun-encre);flex-wrap:wrap;align-items:center;gap:12px;padding:10px 14px;display:flex}.menu-admin-lock-label{color:var(--sepia-moyen);font-size:.8rem}.menu-admin-lock-ok{color:var(--brun-encre);font-size:.85rem;font-weight:800}.menu-admin-err{color:var(--red-700);font-size:.78rem;font-weight:700}.menu-admin-grid{grid-template-columns:minmax(0,1fr) 260px;align-items:start;gap:16px;display:grid}.menu-admin-list{background:var(--bg-beige);border:1px solid var(--chrome-line-creme);color:var(--brun-encre);font-family:var(--font-body);flex-direction:column;gap:30px;padding:14px 16px;display:flex}.menu-admin-block{grid-template-columns:1fr 1fr;align-items:start;gap:24px;display:grid}.menu-admin-col{flex-direction:column;gap:24px;min-width:0;display:flex}.menu-admin-cat{margin-bottom:0}.menu-admin-cat-title{font-family:var(--font-main);letter-spacing:.12em;text-transform:uppercase;color:var(--brun-encre);border-bottom:2px solid var(--brun-encre);margin-bottom:8px;padding-bottom:5px;font-size:.82rem;font-weight:800}.menu-admin-row{border-bottom:1px solid var(--chrome-line-creme);align-items:center;gap:8px;padding:5px 0;display:flex}.menu-admin-row.is-hidden .menu-admin-name{opacity:.5;text-decoration:line-through}.menu-admin-name{min-width:0;color:var(--brun-encre);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.82rem;overflow:hidden}.menu-admin-toggles{flex-shrink:0;gap:5px;display:inline-flex}.menu-admin-toggle{border:1px solid var(--chrome-line-creme);background:var(--white-paper);color:var(--sepia-moyen);min-width:62px;font-family:var(--font-main);letter-spacing:.03em;text-transform:uppercase;cursor:pointer;padding:5px 8px;font-size:.66rem;font-weight:800}.menu-admin-toggle:disabled{opacity:.45;cursor:not-allowed}.menu-admin-toggle.is-on,.menu-admin-toggle.is-avail{color:#2e7d32;border-color:#2e7d3273}.menu-admin-toggle.is-off{color:var(--sepia-moyen)}.menu-admin-toggle.is-sold{color:var(--white-paper);background:var(--primary-red);border-color:var(--primary-red)}.menu-admin-activity{background:var(--bg-beige);border:1px solid var(--chrome-line-creme);color:var(--brun-encre);flex-direction:column;gap:5px;padding:12px 14px;display:flex}.menu-admin-activity-title{font-family:var(--font-main);letter-spacing:.15em;text-transform:uppercase;color:var(--sepia-moyen);margin-bottom:4px;font-size:.68rem;font-weight:800}.menu-admin-activity-row{color:var(--brun-encre);justify-content:space-between;align-items:baseline;gap:8px;font-size:.76rem;display:flex}.menu-admin-activity-time{color:var(--ocre-doux);white-space:nowrap;font-family:Courier New,monospace;font-size:.7rem}.menu-admin-empty{color:var(--sepia-moyen);padding:14px 4px;font-size:.85rem;font-style:italic}@media (max-width:1000px){.menu-admin-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width:640px){.menu-admin-block{grid-template-columns:1fr}}.kiosk-shell{background:var(--bg-beige);height:100vh;color:var(--primary-dark);flex-direction:column;display:flex;position:relative;overflow:hidden}.kiosk-help-btn{z-index:10;position:absolute;top:clamp(12px,2vh,24px);right:clamp(12px,2vw,24px)}.kiosk-idle{background:var(--bg-beige);cursor:pointer;width:100%;min-height:0;color:var(--primary-dark);font-family:var(--font-main);border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:clamp(24px,6vh,80px);padding:clamp(20px,5vh,60px) clamp(16px,4vw,40px);transition:background .3s;display:flex}.kiosk-idle:hover{background:#fff}.kiosk-idle-cta{flex-direction:column;align-items:center;gap:clamp(14px,3vh,30px);animation:3s ease-in-out infinite kiosk-breathe;display:flex}.kiosk-idle-text{letter-spacing:.05em;text-align:center;font-size:clamp(1.2rem,3.4vh,2rem);font-weight:800}.kiosk-idle-hint{color:#a0403380;letter-spacing:.3em;font-size:clamp(.85rem,1.8vh,1.1rem)}@keyframes kiosk-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}.kiosk-screen{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:clamp(10px,2.5vh,30px);min-height:0;padding:clamp(20px,5vh,60px) clamp(16px,4vw,40px);display:flex;overflow:hidden}.kiosk-title{font-family:var(--font-main);color:var(--primary-dark);letter-spacing:-.01em;font-size:clamp(1.5rem,4.2vh,2.4rem);font-weight:800;line-height:1.15}.kiosk-text{color:#666;max-width:600px;font-size:clamp(.9rem,2vh,1.1rem);line-height:1.5}.kiosk-error{color:var(--primary-red);font-size:1rem;font-weight:600}.kiosk-pad{gap:clamp(10px,2vh,20px);width:min(720px,90vw,60vh);margin:clamp(10px,2vh,20px) 0;display:grid}.kiosk-pad-3{grid-template-columns:repeat(3,1fr)}.kiosk-pad-4{grid-template-columns:repeat(4,1fr)}.kiosk-key{aspect-ratio:1;background:var(--white-paper);border:3px solid var(--cream-300,#e8d9bf);color:var(--primary-dark);font-family:var(--font-main);cursor:pointer;font-size:clamp(1.6rem,4.5vh,3.5rem);font-weight:800;transition:all .15s}.kiosk-key:hover{border-color:var(--primary-red);color:var(--primary-red);background:#fff;transform:translateY(-2px);box-shadow:0 8px 20px #00000014}.kiosk-key:active{transform:scale(.95)}.kiosk-key.is-selected{border-color:var(--primary-red);background:var(--primary-red);color:#fff}.kiosk-key.is-selected:hover{color:#fff}.kiosk-estimate{background:var(--white-paper);border:1px solid var(--cream-300,#e8d9bf);flex-direction:column;align-items:center;gap:8px;margin:clamp(10px,2vh,20px) 0;padding:clamp(20px,4vh,40px) clamp(24px,6vw,60px);display:flex}.kiosk-estimate-value{font-family:var(--font-main);color:var(--primary-red);font-size:clamp(3rem,10vh,6rem);font-weight:800;line-height:1}.kiosk-estimate-unit{font-family:var(--font-main);color:var(--primary-dark);letter-spacing:.15em;font-size:1.5rem;font-weight:700}.kiosk-estimate-note{color:#666;text-align:center;max-width:400px;margin-top:12px;font-size:1rem}.kiosk-actions{flex-wrap:wrap;justify-content:center;gap:16px;margin-top:clamp(8px,2vh,20px);display:flex}.kiosk-card{background:var(--white-paper);border:1px solid var(--cream-300,#e8d9bf);text-align:center;max-width:540px;padding:clamp(24px,5vh,50px) clamp(20px,4vw,40px)}.kiosk-card .kiosk-title{margin-bottom:16px}.kiosk-btn{font-family:var(--font-main);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;border:2px solid;border-radius:0;padding:clamp(12px,2.4vh,18px) clamp(20px,3vw,36px);font-size:clamp(.9rem,1.8vh,1.1rem);font-weight:800;transition:all .15s}.kiosk-btn-primary{background:var(--primary-red);color:#fff;border-color:var(--primary-red)}.kiosk-btn-primary:hover{background:var(--red-700);border-color:var(--red-700)}.kiosk-btn-primary:disabled{opacity:.5;cursor:not-allowed}.kiosk-btn-ghost{color:var(--primary-dark);border-color:var(--cream-300,#e8d9bf);background:0 0}.kiosk-btn-ghost:hover{border-color:var(--primary-dark)}.kiosk-ticket-screen{background:var(--bg-beige)}.kiosk-ticket{text-align:center;background:#fff;width:min(560px,90vw);max-height:100%;padding:clamp(24px,4vh,50px) clamp(24px,4vw,50px);position:relative;box-shadow:0 20px 60px #0000001f}.kiosk-ticket:before,.kiosk-ticket:after{content:"";background:radial-gradient(circle,transparent 7px,var(--bg-beige)8px);background-size:24px 24px;width:100%;height:12px;position:absolute;left:0}.kiosk-ticket:before{background-position:bottom;top:-12px}.kiosk-ticket:after{background-position:top;bottom:-12px;transform:rotate(180deg)}.kiosk-ticket-divider{border-bottom:2px dashed #ccc;margin:clamp(10px,2vh,20px) 0}.kiosk-ticket-section{margin:clamp(12px,2.4vh,24px) 0}.kiosk-ticket-label{font-family:var(--font-main);letter-spacing:.3em;color:#888;text-transform:uppercase;font-size:.75rem;font-weight:700}.kiosk-ticket-number{font-family:var(--font-main);color:var(--primary-dark);margin-top:8px;font-size:clamp(2.4rem,8vh,4.5rem);font-weight:800;line-height:1;transition:font-size .2s,color .2s}.kiosk-ticket-number-compact{color:#999;font-size:clamp(1.2rem,3vh,1.8rem);font-weight:700}.kiosk-ticket-pin{color:var(--primary-red);letter-spacing:.3em;margin-top:8px;font-family:Courier New,monospace;font-size:clamp(2.4rem,8vh,4.5rem);font-weight:800;line-height:1}.kiosk-ticket-pin-pair{justify-content:center;gap:clamp(20px,5vw,48px);margin-top:8px;display:flex}.kiosk-ticket-pin-item{flex-direction:column;align-items:center;display:flex}.kiosk-ticket-pin-item span{font-family:var(--font-main);letter-spacing:.2em;color:#888;text-transform:uppercase;font-size:.75rem;font-weight:700}.kiosk-ticket-pin-item .kiosk-ticket-pin{letter-spacing:.15em;margin-top:4px;font-size:clamp(1.6rem,5vh,2.8rem)}.kiosk-ticket-table{border-left:4px solid var(--primary-red);background:#a040330f;margin:8px 0;padding:18px 12px}.kiosk-ticket-table-name{font-family:var(--font-main);color:var(--primary-red);letter-spacing:.05em;margin-top:8px;font-size:clamp(1.8rem,5.5vh,3rem);font-weight:800;line-height:1}.kiosk-ticket-waiting-text{font-family:var(--font-main);color:var(--primary-red);margin-top:8px;font-size:clamp(1.1rem,3vh,1.5rem);font-weight:800;line-height:1.3}.kiosk-ticket-table-hint{color:#666;margin-top:8px;font-size:.85rem;font-weight:600}.kiosk-ticket-hold-notice{color:#666;margin-top:10px;font-size:.8rem;line-height:1.4}.kiosk-ticket-meta{font-family:var(--font-main);flex-wrap:wrap;justify-content:space-around;gap:16px;display:flex}.kiosk-ticket-meta>div{flex-direction:column;align-items:center;display:flex}.kiosk-ticket-meta span{text-transform:uppercase;letter-spacing:.2em;color:#888;font-size:.7rem}.kiosk-ticket-meta strong{color:var(--primary-dark);margin-top:4px;font-size:1.5rem}.kiosk-ticket-instructions{color:#666;margin:12px 0 18px;font-size:.95rem;line-height:1.5}.kiosk-ticket-time{color:#999;margin-bottom:24px;font-family:Courier New,monospace;font-size:.8rem}.waiting-shell{background:var(--bg-beige);min-height:100vh;color:var(--primary-dark);flex-direction:column;display:flex;overflow:hidden}.waiting-header{border-bottom:2px solid var(--primary-red);background:#fff;flex-shrink:0;justify-content:space-between;align-items:center;padding:20px 40px;display:flex}.waiting-clock{color:var(--primary-dark);font-family:Courier New,monospace;font-size:2.2rem;font-weight:700}.waiting-audio-enable{cursor:pointer;background:0 0;border:1px solid #ccc;padding:8px 14px;font-size:1.2rem}.waiting-body{flex:1;grid-template-columns:1fr 1fr;gap:20px;min-height:0;padding:24px;display:grid}.waiting-col{border:1px solid var(--cream-300,#e8d9bf);background:#fff;flex-direction:column;display:flex;overflow:hidden}.waiting-col-right{border-color:var(--primary-red);background:linear-gradient(#fff,#a040330a)}.waiting-col-head{border-bottom:1px solid var(--cream-300,#e8d9bf);background:#f8f3eb;flex-shrink:0;justify-content:space-between;align-items:center;padding:22px 30px;display:flex}.waiting-col-right .waiting-col-head{background:var(--primary-red);color:#fff;border-bottom-color:var(--primary-red)}.waiting-col-title{font-family:var(--font-main);letter-spacing:.18em;font-size:1.4rem;font-weight:800}.waiting-col-count{font-family:var(--font-main);text-align:center;background:#00000014;min-width:60px;padding:4px 16px;font-size:1.6rem;font-weight:800}.waiting-col-right .waiting-col-count{color:#fff;background:#fff3}.waiting-empty{color:#aaa;font-family:var(--font-main);text-align:center;flex:1;justify-content:center;align-items:center;padding:40px;font-size:1.4rem;font-style:italic;display:flex}.waiting-list{flex-direction:column;flex:1;gap:12px;padding:20px;display:flex;overflow-y:auto}.waiting-item{background:var(--bg-beige);border-left:5px solid var(--primary-dark);font-family:var(--font-main);justify-content:center;align-items:center;padding:18px 24px;transition:background .3s;display:flex}.waiting-item-ticket{color:var(--primary-dark);letter-spacing:.05em;font-size:clamp(3rem,6vh,5rem);font-weight:800}.waiting-item-late{border-left-color:#a32d2d;animation:1.4s ease-in-out infinite waiting-item-late-pulse}.waiting-item-late .waiting-item-ticket{color:#a32d2d}@keyframes waiting-item-late-pulse{0%,to{background:#a32d2d1a}50%{background:#a32d2d47}}.waiting-item-called{border-left-color:var(--primary-red);background:linear-gradient(90deg,#fff,#a040331a);flex-direction:column;align-items:stretch;gap:6px;animation:.6s ease-out waiting-call-flash}@keyframes waiting-call-flash{0%{background:#a0403366;transform:scale(1.02)}to{background:linear-gradient(90deg,#fff,#a040331a);transform:scale(1)}}.waiting-called-row{justify-content:space-between;align-items:center;gap:16px;display:flex}.waiting-called-arrow{color:var(--primary-red);font-size:2rem;font-weight:800}.waiting-called-table{color:var(--primary-red);letter-spacing:.06em;font-size:2.6rem;font-weight:800}.waiting-called-hint{color:#888;text-transform:uppercase;letter-spacing:.15em;text-align:right;font-size:.85rem}.product-qty-inline{color:#6b5c42;font-family:var(--font-body);letter-spacing:0;font-size:.82rem;font-weight:600}.edition-stamp{outline-offset:2px;color:#a04033;letter-spacing:.1em;text-transform:uppercase;text-align:center;pointer-events:none;max-width:62%;box-shadow:none;z-index:3;background:#f7f1e8c7;border:2px solid #a04033;border-radius:0;outline:1px solid #a04033;padding:3px 7px;font-family:Inter,Arial,sans-serif;font-size:.6rem;font-weight:800;line-height:1.05;position:absolute;top:8px;left:8px;transform:rotate(-8deg)}.drink-section-sep{color:#a8936f;font-family:var(--font-main);letter-spacing:.14em;text-transform:uppercase;flex:none;align-items:center;gap:12px;margin:0 2px;font-size:.8rem;font-weight:800;display:flex}.drink-section-sep:after{content:"";background:#a8936f;flex:1;height:1px}.drink-legal{color:#6b5c42;font-family:var(--font-body);flex:none;margin:0 2px;font-size:.72rem;line-height:1.4}.pm-overlay{z-index:1000;background:#3d2b1f8c;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.pm-dialog{width:100%;max-width:460px;max-height:92vh;box-shadow:none;background:#f7f1e8;border:1px solid #d2bb9b;border-radius:0;flex-direction:column;display:flex;position:relative;overflow-y:auto}.pm-close{color:#3d2b1f;cursor:pointer;z-index:4;background:#f7f1e8;border:1px solid #d2bb9b;border-radius:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.1rem;line-height:1;display:flex;position:absolute;top:0;right:0}.pm-close:hover{color:#a04033}.pm-media{aspect-ratio:1;background:#eee;width:100%;position:relative;overflow:hidden}.pm-img{object-fit:cover;width:100%;height:100%;display:block}.pm-img-fallback{background:#eee;justify-content:center;align-items:center;font-size:3rem;display:flex}.pm-media .edition-stamp{letter-spacing:.14em;padding:5px 12px;font-size:.78rem;top:12px;left:12px}.pm-body{flex-direction:column;gap:10px;padding:16px;display:flex}.pm-name{font-family:var(--font-main);color:#3d2b1f;margin:0;font-size:1.25rem;font-weight:800;line-height:1.2}.pm-price{font-family:var(--font-main);color:#a04033;margin:0;font-size:1.15rem;font-weight:800}.pm-portion{font-family:var(--font-body);color:#6b5c42;font-size:.85rem}.pm-drink{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.pm-drink-vol{font-family:var(--font-main);color:#3d2b1f;border:1px solid #d2bb9b;border-radius:0;padding:3px 8px;font-size:.85rem;font-weight:700}.pm-drink-alc{font-family:var(--font-body);color:#6b5c42;border:1px solid #d2bb9b;border-radius:0;padding:3px 8px;font-size:.8rem}.pm-drink-alc.is-alc{color:#a04033;border-color:#a04033}.pm-desc{font-family:var(--font-body);color:#3d2b1f;margin:2px 0 0;font-size:.95rem;line-height:1.55}.pm-section{flex-direction:column;gap:6px;margin-top:2px;display:flex}.pm-section-label{font-family:var(--font-main);letter-spacing:.12em;text-transform:uppercase;color:#a8936f;font-size:.72rem;font-weight:800}.pm-ing-list{color:#3d2b1f;font-family:var(--font-body);margin:0;padding-left:1.1em;font-size:.9rem;line-height:1.5;list-style:outside}.pm-allergenes{flex-wrap:wrap;gap:6px;display:flex}.pm-allergene{font-family:var(--font-body);color:#3d2b1f;background:0 0;border:1px solid #a8936f;border-radius:0;padding:3px 9px;font-size:.8rem}.pm-footer{background:#f7f1e8;border-top:1px solid #d2bb9b;align-items:stretch;gap:10px;padding:14px 16px;display:flex;position:sticky;bottom:0}.pm-stepper{border:1px solid #d2bb9b;border-radius:0;flex-shrink:0;align-items:center;display:flex}.pm-step{color:#3d2b1f;cursor:pointer;background:#f7f1e8;border:none;border-radius:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.4rem;line-height:1;display:flex}.pm-step:disabled{color:#c9b79a;cursor:default}.pm-qty{text-align:center;min-width:40px;font-family:var(--font-main);color:#3d2b1f;border-left:1px solid #d2bb9b;border-right:1px solid #d2bb9b;justify-content:center;align-self:stretch;align-items:center;font-size:1.05rem;font-weight:800;display:flex}.pm-add{color:#fff;min-height:44px;font-family:var(--font-main);cursor:pointer;background:#a04033;border:1px solid #a04033;border-radius:0;flex:1;font-size:.95rem;font-weight:800}.pm-add:hover:not(:disabled){background:#8a3529;border-color:#8a3529}.pm-add:disabled{color:#f7f1e8;cursor:default;background:#cfa9a0;border-color:#cfa9a0}.age-overlay{z-index:1100;background:#3d2b1f8c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.arrive-overlay{z-index:1200;background:#3d2b1f8c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.arrive-dialog{background:var(--white-paper);border:1px solid var(--accent-gold);border-top:5px solid var(--primary-red);text-align:left;border-radius:0;flex-direction:column;align-items:stretch;gap:14px;width:400px;max-width:100%;padding:22px 24px;display:flex}.arrive-titre{font-family:var(--font-main);color:var(--brun-encre);margin:0;font-size:1.15rem;font-weight:800}.arrive-list{color:var(--sepia-moyen);flex-direction:column;gap:4px;margin:0;padding:0;font-size:.95rem;list-style:none;display:flex}.arrive-foot{justify-content:space-between;align-items:center;gap:12px;margin-top:4px;display:flex}.arrive-probleme{border:1px solid var(--accent-gold);color:var(--sepia-moyen);font-family:var(--font-main);cursor:pointer;background:0 0;border-radius:0;padding:6px 11px;font-size:.72rem;font-weight:700}.arrive-probleme:hover{border-color:var(--primary-red);color:var(--primary-red)}.arrive-actions-row{justify-content:flex-end;align-items:center;gap:10px;display:flex}.arrive-retour{border:1px solid var(--accent-gold);color:var(--sepia-moyen);font-family:var(--font-main);text-transform:uppercase;letter-spacing:.04em;cursor:pointer;background:0 0;border-radius:0;padding:12px 22px;font-size:.85rem;font-weight:800}.arrive-retour:hover{border-color:var(--primary-red);color:var(--primary-red)}.arrive-valider{background:var(--primary-red);color:#fff;font-family:var(--font-main);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;border:none;border-radius:0;padding:12px 28px;font-size:.95rem;font-weight:800}.arrive-valider:hover{background:var(--red-700)}.arrive-secs{color:var(--ocre-doux);font-variant-numeric:tabular-nums;font-family:Courier New,monospace;font-weight:800}.age-dialog{width:100%;max-width:420px;box-shadow:none;background:#f7f1e8;border:1px solid #d2bb9b;border-radius:0;padding:24px}.age-titre{font-family:var(--font-main);color:#a04033;margin:0 0 12px;font-size:1.15rem;font-weight:800;line-height:1.25}.age-texte{font-family:var(--font-body);color:#3d2b1f;margin:0 0 20px;font-size:.95rem;line-height:1.55}.age-actions{gap:12px;display:flex}.age-btn{min-height:48px;font-family:var(--font-main);cursor:pointer;border-radius:0;flex:1 1 0;padding:12px;font-size:.9rem;font-weight:800}.age-btn-confirm{color:#fff;background:#a04033;border:1px solid #a04033}.age-btn-confirm:hover{background:#8a3529;border-color:#8a3529}.age-btn-cancel{color:#3d2b1f;background:0 0;border:1px solid #d2bb9b}.age-btn-cancel:hover{color:#a04033;border-color:#a04033}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
