@layer components{.ao-tool,.ao-print-root{--ao-red:#b42318;--ao-red-50:#fdeceb;--ao-red-100:#f9d6d3;--ao-amber:#a8650b;--ao-amber-50:#fdf3e2;--ao-ok:#2f7a52;--ao-ok-50:#eaf5ee;--ao-paper:#fffdf8;--ao-ink:#1c1917;--ao-stripe:repeating-linear-gradient(-45deg, var(--ao-red) 0 10px, #e0483a 10px 20px)}.ao-al{flex-wrap:wrap;gap:.5rem;display:flex}.ao-al button{border:1px solid var(--color-line-strong);background-color:var(--color-white);min-height:2.5rem;color:var(--color-ink);font-size:var(--text-small);border-radius:999px;align-items:center;gap:.375rem;padding:.375rem .875rem .375rem .625rem;font-weight:600;transition:background-color .16s,border-color .16s,color .16s,transform .16s;display:inline-flex}.ao-al button>span{background-color:var(--color-mist);width:1.25rem;height:1.25rem;color:var(--color-ink-muted);border-radius:999px;place-items:center;display:grid}.ao-al button:hover{border-color:var(--ao-red)}.ao-al button:active{transform:scale(.97)}.ao-al button.is-on{border-color:var(--ao-red);background-color:var(--ao-red);color:#fff}.ao-al button.is-on>span{color:#fff;background-color:#ffffff38}.ao-known{flex-wrap:wrap;gap:.375rem;display:flex}.ao-known button{border:1px dashed var(--color-line-strong);background-color:var(--color-white);min-height:2.25rem;font-size:var(--text-small);border-radius:.625rem;align-items:center;gap:.3rem;padding:.25rem .75rem;font-weight:600;display:inline-flex}.ao-known button:hover{border-style:solid;border-color:var(--color-indigo)}.ao-known button.is-contains{border-color:var(--ao-red);background-color:var(--ao-red-50);color:var(--ao-red);text-decoration:line-through;text-decoration-thickness:1px}.ao-known button.is-may{border-color:var(--ao-amber);background-color:var(--ao-amber-50);color:var(--ao-amber)}.ao-known button.is-clear{border-style:solid;border-color:color-mix(in srgb, var(--ao-ok) 45%, transparent)}.ao-dish-add{align-items:flex-end;gap:.75rem;display:flex}.ao-dish-add>:first-child{flex:1;min-width:0;max-width:22rem}.ao-dishes{gap:.5rem;display:grid}.ao-dishes li{border:1px solid var(--color-line);border-left:4px solid var(--color-line-strong);background-color:var(--color-white);border-radius:.75rem;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.125rem .75rem;padding:.5rem .5rem .5rem .875rem;animation:.22s ease-out ao-in;display:grid}.ao-dishes li .tt-x{grid-area:span 2/2}.ao-dish-n{overflow-wrap:anywhere;font-weight:700}.ao-dish-s{color:var(--color-ink-muted);grid-column:1;align-items:center;gap:.3rem;font-size:.8125rem;font-weight:600;display:flex}.ao-dishes li.is-contains{border-left-color:var(--ao-red);background-color:var(--ao-red-50)}.ao-dishes li.is-contains .ao-dish-s{color:var(--ao-red)}.ao-dishes li.is-may{border-left-color:var(--ao-amber);background-color:var(--ao-amber-50)}.ao-dishes li.is-may .ao-dish-s{color:var(--ao-amber)}.ao-dishes li.is-clear{border-left-color:var(--ao-ok)}.ao-dishes li.is-clear .ao-dish-s{color:var(--ao-ok)}.ao-bubble{background-color:var(--color-mist);color:var(--color-ink);border-radius:1.25rem 1.25rem 1.25rem .25rem;gap:.75rem;padding:1rem 1.25rem;display:flex;position:relative}.ao-bubble>svg{color:var(--color-indigo);margin-top:.15rem}.ao-bubble p{font-size:1.0625rem;font-weight:600;line-height:1.45}.ao-bubble p+p{margin-top:.375rem}.ao-bubble p:first-child:before{content:"“"}.ao-bubble p:last-child:after{content:"”"}.ao-bubble.is-cant{background-color:var(--ao-red-50)}.ao-bubble.is-cant>svg{color:var(--ao-red)}.ao-station-h{border-bottom:1px solid var(--color-line);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:.75rem 1.5rem;padding-bottom:.625rem;display:flex}.ao-station-h p{flex-direction:column;display:flex}.ao-station-h small{color:var(--color-ink-muted);font-variant-numeric:tabular-nums;font-size:.8125rem}.ao-signer{border:1px solid var(--color-line-strong);background-color:var(--color-white);color:var(--color-ink-muted);border-radius:.75rem;align-items:center;gap:.5rem;padding:.25rem .375rem .25rem .75rem;font-size:.8125rem;font-weight:600;display:inline-flex}.ao-signer:focus-within{border-color:var(--color-indigo);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-indigo) 18%, transparent)}.ao-signer input{background-color:var(--color-mist);width:4.25rem;min-height:2rem;color:var(--color-ink);letter-spacing:.06em;text-align:center;text-transform:uppercase;border:0;border-radius:.5rem;padding:0 .5rem;font-family:ui-serif,Georgia,serif;font-size:1.0625rem;font-style:italic;font-weight:700}.ao-signer input:focus{outline:none}.ao-signer input::placeholder{color:var(--color-quiet)}.ao-steps{margin-top:.25rem;display:grid}.ao-steps li{border-bottom:1px solid var(--color-line)}.ao-steps label{cursor:pointer;align-items:flex-start;gap:.875rem;padding:.875rem .25rem;display:flex}.ao-steps.is-locked label{cursor:not-allowed;opacity:.55}.ao-step-body{flex-direction:column;flex:1;gap:.125rem;min-width:0;display:flex}.ao-step-body b{font-weight:700}.ao-step-body small{color:var(--color-ink-muted);font-size:.8125rem;line-height:1.45}.ao-steps li.is-signed .ao-step-body b{color:var(--color-ink-muted)}.ao-sig{border:1.5px solid var(--color-indigo);color:var(--color-indigo);border-radius:.5rem;flex-direction:column;flex-shrink:0;align-items:center;padding:.125rem .5rem;animation:.28s cubic-bezier(.2,1.4,.4,1) ao-sign;display:flex;transform:rotate(-4deg)}.ao-sig b{letter-spacing:.05em;font-family:ui-serif,Georgia,serif;font-size:1rem;font-style:italic;font-weight:700;line-height:1.1}.ao-sig small{font-variant-numeric:tabular-nums;font-size:.6875rem;font-weight:700}.ao-call{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.ao-call button{border:1.5px solid var(--color-line-strong);background-color:var(--color-white);text-align:left;border-radius:1rem;grid-template-columns:auto minmax(0,1fr);gap:.125rem .625rem;padding:.875rem 1rem;transition:border-color .16s,background-color .16s,box-shadow .16s;display:grid}.ao-call button svg{color:var(--color-ink-muted);grid-row:span 2;margin-top:.1rem}.ao-call button b{font-size:1rem}.ao-call button small{color:var(--color-ink-muted);font-size:.8125rem;line-height:1.35}.ao-call button.is-safe:hover,.ao-call button.is-safe.is-on{border-color:var(--ao-ok)}.ao-call button.is-cant:hover,.ao-call button.is-cant.is-on{border-color:var(--ao-red)}.ao-call button.is-safe.is-on{background-color:var(--ao-ok-50);box-shadow:0 0 0 3px color-mix(in srgb, var(--ao-ok) 16%, transparent)}.ao-call button.is-safe.is-on svg{color:var(--ao-ok)}.ao-call button.is-cant.is-on{background-color:var(--ao-red-50);box-shadow:0 0 0 3px color-mix(in srgb, var(--ao-red) 16%, transparent)}.ao-call button.is-cant.is-on svg{color:var(--ao-red)}.ao-lock{background-color:var(--color-mist);color:var(--color-ink-muted);border-radius:.625rem;align-items:center;gap:.5rem;margin-top:.75rem;padding:.5rem .75rem;font-size:.8125rem;font-weight:600;display:flex}.ao-panel{position:relative}.ao-ticket{background-color:var(--ao-paper);color:var(--ao-ink);filter:drop-shadow(0 0 .5px #00000040);border-radius:.375rem;margin-top:1rem;position:relative;overflow:hidden;box-shadow:0 1px #0000000a,0 18px 36px -24px #11182773}.ao-band{background:var(--ao-stripe);-webkit-print-color-adjust:exact;print-color-adjust:exact;justify-content:center;align-items:center;height:2.25rem;display:flex}.ao-band>span{color:var(--ao-red);letter-spacing:.24em;text-transform:uppercase;background-color:#fff;border-radius:.25rem;padding:.1rem .625rem;font-size:.8125rem;font-weight:900}.ao-ticket-top{border-bottom:2px dashed #d6d3d1;justify-content:space-between;align-items:flex-end;gap:1rem;padding:.875rem 1.25rem .75rem;display:flex}.ao-ticket-top small{color:#78716c;letter-spacing:.08em;text-transform:uppercase;font-size:.6875rem;font-weight:700;display:block}.ao-ticket-no{letter-spacing:-.03em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:2.5rem;font-weight:900;line-height:1;display:block}.ao-ticket-meta{text-align:right;flex-direction:column;align-items:flex-end;gap:.25rem;display:flex}.ao-copy{border:1.5px solid var(--ao-ink);letter-spacing:.08em;text-transform:uppercase;border-radius:.25rem;padding:0 .375rem;font-size:.6875rem;font-weight:800}.ao-ticket-h{color:var(--ao-red);letter-spacing:.2em;text-transform:uppercase;padding:.75rem 1.25rem 0;font-size:.75rem;font-weight:900}.ao-ticket-al{flex-wrap:wrap;gap:0 .75rem;padding:0 1.25rem;display:flex}.ao-ticket-al li{color:var(--ao-red);letter-spacing:-.01em;text-transform:uppercase;overflow-wrap:anywhere;font-size:1.75rem;font-weight:900;line-height:1.1;animation:.24s ease-out ao-in}.ao-ticket-al li+li:before{content:"·";color:#e7a49d;margin-right:.75rem}.ao-ticket-empty{color:#a8a29e;text-transform:uppercase;padding:.125rem 1.25rem;font-size:1.5rem;font-weight:800}.ao-ticket-not{color:#57534e;margin:.375rem 1.25rem 0;font-size:.8125rem;font-style:italic;font-weight:600}.ao-ticket-dishes{counter-reset:ao;border-top:1px solid #e7e5e4;gap:.2rem;margin:.75rem 1.25rem 0;padding-top:.625rem;display:grid}.ao-ticket-dishes li{counter-increment:ao;overflow-wrap:anywhere;gap:.5rem;font-size:.9375rem;font-weight:700;display:flex}.ao-ticket-dishes li:before{content:counter(ao);color:#a8a29e;font-variant-numeric:tabular-nums;flex-shrink:0;width:1.25rem}.ao-ticket-foot{color:#78716c;letter-spacing:.08em;text-align:center;text-transform:uppercase;border-top:2px dashed #d6d3d1;margin-top:.875rem;padding:.5rem 1.25rem .75rem;font-size:.6875rem;font-weight:800}.ao-stamp{color:var(--ao-ok);letter-spacing:.12em;text-transform:uppercase;opacity:.88;mix-blend-mode:multiply;border:3px solid;border-radius:.375rem;padding:.125rem .625rem;font-size:1.375rem;font-weight:900;animation:.42s cubic-bezier(.3,1.6,.5,1) both ao-stamp;position:absolute;bottom:3rem;right:1.25rem;transform:rotate(-12deg)}.ao-ticket.is-cant .ao-stamp{color:var(--ao-red)}.ao-ticket.is-big .ao-ticket-no{font-size:3.5rem}.ao-ticket.is-big .ao-ticket-al li{font-size:2.5rem}.ao-ticket.is-big .ao-stamp{font-size:1.75rem;bottom:3.25rem}.ao-rail{width:100%;height:auto;margin-top:1.5rem;display:block;overflow:visible}.ao-rail-line{fill:none;stroke:var(--color-line-strong);stroke-width:3px;stroke-dasharray:2 6;stroke-linecap:round}.ao-rail-lit{fill:none;stroke:var(--color-indigo);stroke-width:3px;stroke-linecap:round;transition:d .5s}.ao-rail.is-done .ao-rail-lit{stroke:var(--ao-ok)}.ao-rail.is-cant .ao-rail-lit{stroke:var(--ao-red)}.ao-stop-bg{fill:var(--color-white);stroke:var(--color-line-strong);stroke-width:2px}.ao-stop-ring{fill:none;stroke:var(--color-indigo);stroke-width:3.5px;stroke-linecap:round;transition:stroke-dasharray .4s}.ao-stop-ic{fill:none;stroke:var(--color-ink-muted);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.ao-stop-l{fill:var(--color-ink);text-anchor:middle;font-size:12px;font-weight:700}.ao-stop-n{fill:var(--color-ink-muted);text-anchor:middle;font-variant-numeric:tabular-nums;font-size:11px;font-weight:600}.ao-stop.is-here .ao-stop-bg,.ao-stop.is-here .ao-stop-ic{stroke:var(--color-indigo)}.ao-stop.is-done .ao-stop-bg{fill:var(--ao-ok);stroke:var(--ao-ok)}.ao-stop.is-done .ao-stop-ring{stroke:var(--ao-ok)}.ao-stop.is-done .ao-stop-ic{stroke:#fff;stroke-width:2.5px}.ao-stop.is-skip{opacity:.4}.ao-stop.is-skip .ao-stop-bg{stroke-dasharray:3 3}.ao-rail.is-cant .ao-stop.is-done .ao-stop-bg,.ao-rail.is-cant .ao-stop.is-done .ao-stop-ring{fill:var(--ao-red);stroke:var(--ao-red)}.ao-car{transition:transform .6s cubic-bezier(.5,0,.2,1)}.ao-car rect{fill:var(--ao-red)}.ao-car path{stroke:#fff;stroke-width:1.5px;stroke-linecap:round;stroke-dasharray:2 2}.ao-count{color:var(--color-ink-muted);margin-top:1.25rem;font-size:1rem;font-weight:600}.ao-count b{color:var(--color-ink);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:2rem;font-weight:800}.ao-panel.is-done .ao-count b{color:var(--ao-ok)}.ao-sos{border:1.5px solid var(--ao-red);background-color:var(--ao-red-50);color:var(--ao-ink);border-radius:1rem;gap:.75rem;margin-top:1.5rem;padding:.875rem 1rem;font-size:.8125rem;line-height:1.45;display:flex}.ao-sos>svg{color:var(--ao-red)}.ao-sos b{color:var(--ao-red);font-size:.9375rem}.ao-tab-n{background-color:var(--ao-red);color:#fff;font-variant-numeric:tabular-nums;border-radius:999px;margin-left:.25rem;padding:0 .4rem;font-size:.6875rem;font-weight:800;line-height:1.25rem}.ao-says{grid-template-columns:repeat(auto-fill,minmax(17rem,1fr));gap:1rem;display:grid}.ao-say{border:1px solid var(--color-line);background-color:var(--color-white);border-radius:1rem;padding:1rem 1.125rem}.ao-say-h{color:var(--color-ink-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:800}.ao-say-l{margin-top:.5rem;font-size:1rem;font-weight:600;line-height:1.45}.ao-say.is-cant{border-color:color-mix(in srgb, var(--ao-red) 40%, transparent);background-color:var(--ao-red-50)}.ao-say.is-back{border-color:color-mix(in srgb, var(--color-indigo) 35%, transparent)}.ao-log{display:grid}.ao-log li{border-bottom:1px solid var(--color-line);grid-template-columns:4.5rem minmax(0,1fr);gap:1rem;padding:.875rem 0;animation:.22s ease-out ao-in;display:grid}.ao-log-t{color:var(--color-ink-muted);font-variant-numeric:tabular-nums;font-size:.8125rem;font-weight:700}.ao-log-h{flex-wrap:wrap;align-items:baseline;gap:.25rem .75rem;display:flex}.ao-log-o{background-color:var(--ao-ok-50);color:var(--ao-ok);border-radius:999px;padding:0 .5rem;font-size:.75rem;font-weight:800}.ao-log li.is-cant .ao-log-o{background-color:var(--ao-red-50);color:var(--ao-red)}.ao-log-a{color:var(--ao-red);text-transform:uppercase;letter-spacing:.02em;margin-top:.125rem;font-size:.875rem;font-weight:800}.ao-log-d{margin-top:.125rem;font-size:.875rem}.ao-log-s{color:var(--color-ink-muted);margin-top:.125rem;font-size:.8125rem}.ao-big{color:var(--color-ink-muted);font-weight:600}.ao-big b{color:var(--color-ink);letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:3rem;font-weight:800;line-height:1;display:block}.ao-paper{border:1px solid var(--color-line);background-color:#fff;border-radius:1rem;padding:2rem;overflow-x:auto;box-shadow:0 30px 60px -44px #11182759}.ao-sheet{color:#111827;font-size:.875rem;line-height:1.45}.ao-sheet>header{border-bottom:2px solid #111827;gap:.375rem;padding-bottom:.625rem;display:grid}.ao-sheet>header .ao-band{border-radius:.25rem;justify-content:flex-start;height:1.75rem;padding-left:.5rem}.ao-sheet h1{letter-spacing:-.015em;font-size:1.5rem;font-weight:900;line-height:1.15}.ao-sheet>header p{color:#4b5563;font-size:.8125rem;font-weight:600}.ao-sheet-foot{color:#6b7280;margin-top:1rem;font-size:.6875rem}.ao-flags{gap:.5rem;max-width:30rem;margin-inline:auto;display:grid}.ao-flags .ao-ticket{box-shadow:none;filter:none;border:1.5px solid #111827;margin-top:0}.ao-cut{color:#9ca3af;letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:.5rem;font-size:.6875rem;font-weight:700;display:flex}.ao-cut:before,.ao-cut:after{content:"";border-top:1.5px dashed #9ca3af;flex:1}.ao-poster-cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.5rem;margin-top:1rem;display:grid}.ao-poster-cols section{break-inside:avoid}.ao-poster-cols h2{letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid #d1d5db;align-items:center;gap:.5rem;padding-bottom:.25rem;font-size:.875rem;font-weight:900;display:flex}.ao-poster-cols h2 span{color:#fff;-webkit-print-color-adjust:exact;print-color-adjust:exact;background-color:#111827;border-radius:999px;place-items:center;width:1.5rem;height:1.5rem;font-size:.75rem;display:grid}.ao-poster-cols ol{gap:.375rem;margin-top:.5rem;display:grid}.ao-poster-cols li{font-size:.8125rem;line-height:1.4}.ao-poster-sos{border:3px solid var(--ao-red);-webkit-print-color-adjust:exact;print-color-adjust:exact;border-radius:.75rem;align-items:center;gap:1rem;margin-top:1.25rem;padding:.75rem 1rem;display:flex}.ao-poster-sos svg{fill:none;width:2.5rem;height:2.5rem;stroke:var(--ao-red);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.ao-poster-sos h2{color:var(--ao-red);font-size:1.25rem;font-weight:900}.ao-poster-sos p{font-size:.875rem;font-weight:600}.ao-poster-al{margin-top:.875rem;font-size:.8125rem}.ao-fill{grid-template-columns:repeat(2,minmax(0,1fr));gap:.625rem 1.5rem;margin-top:.875rem;display:grid}.ao-fill p{letter-spacing:.06em;text-transform:uppercase;align-items:flex-end;gap:.5rem;font-size:.75rem;font-weight:800;display:flex}.ao-fill p.is-wide{grid-column:1/-1}.ao-fill i{border-bottom:1px solid #6b7280;flex:1;height:1.375rem}.ao-signsheet .ao-call{flex-wrap:wrap;gap:.5rem 1.5rem;margin-top:.875rem;font-size:.8125rem;display:flex}.ao-signsheet .ao-call span{align-items:center;gap:.375rem;display:inline-flex}.ao-signsheet .ao-call i{border:1.5px solid #111827;border-radius:.125rem;width:.875rem;height:.875rem}.ao-signsheet table{border-collapse:collapse;table-layout:fixed;width:100%;margin-top:.875rem}.ao-signsheet th,.ao-signsheet td{text-align:left;vertical-align:top;border:1px solid #9ca3af;padding:.3rem .4rem;font-size:.75rem;line-height:1.3}.ao-signsheet th{-webkit-print-color-adjust:exact;print-color-adjust:exact;background-color:#f3f4f6;font-weight:800}.ao-signsheet th:first-child{width:4.75rem}.ao-signsheet th:nth-child(3),.ao-signsheet th:nth-child(4){width:4.5rem}.ao-signsheet td small{color:#4b5563}@media (max-width:40rem){.ao-call{grid-template-columns:minmax(0,1fr)}.ao-dish-add>:first-child{max-width:none}.ao-ticket-no{font-size:2rem}.ao-ticket-al li{font-size:1.375rem}.ao-paper{padding:1rem}.ao-poster-cols,.ao-fill{grid-template-columns:minmax(0,1fr)}.ao-signsheet table{min-width:32rem}.ao-log li{grid-template-columns:minmax(0,1fr);gap:.125rem}.ao-ticket.is-big .ao-ticket-no{font-size:2.5rem}.ao-ticket.is-big .ao-ticket-al li{font-size:1.75rem}}@media print{.ao-print-root .ao-sheet{font-size:9.5pt;line-height:1.35}.ao-print-root .ao-ticket,.ao-print-root .ao-band,.ao-print-root .ao-stamp,.ao-print-root .ao-ticket-al li{-webkit-print-color-adjust:exact;print-color-adjust:exact}.ao-print-root .ao-ticket,.ao-print-root .ao-stamp,.ao-print-root .ao-ticket-al li{animation:none}.ao-print-root .ao-flags{gap:.12in;max-width:5.6in}.ao-print-root .ao-ticket{break-inside:avoid}.ao-print-root .ao-signsheet td{height:.3in}.ao-print-root .ao-signsheet tr{break-inside:avoid}.ao-print-root .ao-poster h1{font-size:22pt}.ao-print-root .ao-poster-cols li{font-size:9pt}}@media (prefers-reduced-motion:reduce){.ao-dishes li,.ao-sig,.ao-stamp,.ao-ticket-al li,.ao-log li{animation:none}.ao-car,.ao-stop-ring,.ao-rail-lit,.ao-al button{transition:none}}.td{max-width:64rem;margin-inline:auto;padding:2rem 1rem 4rem}@media (min-width:640px){.td{padding-inline:1.5rem}}}