:root{--red:#cf2030;--red-dark:#a3182a;--ink:#1a1a1a;--ink-soft:#4a4a4a;--paper:#fff;--paper-warm:#fbf6f4;--line:#e6d9d6;--night:#14070c;--night-2:#2a0c16;--neon:#ff4d5e;--neon-glow:#ff3c50a6;--ok:#1e6b3a;--font-body:"Segoe UI", system-ui, -apple-system, Roboto, "Helvetica Neue", Arial, sans-serif;--font-display:"Avenir Next", "Futura", "Century Gothic", "Trebuchet MS", var(--font-body);--fs-base:18px;--radius:14px;--tap:48px;--gutter:20px}*,:before,:after{box-sizing:border-box}html{font-size:var(--fs-base);-webkit-text-size-adjust:100%}body{font-family:var(--font-body);color:var(--ink);background:var(--paper);margin:0;line-height:1.55}h1,h2,h3{margin:0;line-height:1.15}p{margin:0 0 .8em}a{color:var(--red-dark)}:focus-visible{outline:3px solid var(--red);outline-offset:3px}.wrap{max-width:34rem;padding:0 var(--gutter);margin:0 auto}.btn{min-height:var(--tap);width:100%;font:inherit;border:2px solid var(--red);background:var(--red);color:#fff;cursor:pointer;border-radius:999px;justify-content:center;align-items:center;padding:.7rem 1.2rem;font-weight:700;text-decoration:none;display:flex}.btn:hover{background:var(--red-dark);border-color:var(--red-dark)}.btn[aria-disabled=true]{color:#4a4a4a;cursor:default;background:#d9d2d0;border-color:#d9d2d0}.hero{isolation:isolate;background:radial-gradient(120% 90% at 50% 0%, var(--night-2), var(--night) 70%);color:#fff;text-align:center;padding:1.6rem 0 11rem;position:relative;overflow:hidden}.hero:before{content:"";z-index:-1;pointer-events:none;background:repeating-linear-gradient(0deg,#ffffff09 0 1px,#0000 1px 4px);position:absolute;inset:0}.hero__grid{z-index:-1;background:linear-gradient(var(--neon-glow) 1.5px, transparent 1.5px) 0 0 / 100% 2.2rem, linear-gradient(90deg, var(--neon-glow) 1.5px, transparent 1.5px) 0 0 / 3.4rem 100%;transform-origin:50% 100%;height:9.5rem;position:absolute;bottom:0;left:-50%;right:-50%;transform:perspective(14rem)rotateX(62deg);-webkit-mask-image:linear-gradient(#0000 5%,#000 85%);mask-image:linear-gradient(#0000 5%,#000 85%)}.hero__logo{background:#fff;border-radius:10px;width:8.5rem;height:auto;margin:0 auto 1.6rem;padding:.55rem .8rem;display:block}.hero__title{font-family:var(--font-display);letter-spacing:-.01em;color:#fff;text-shadow:0 0 6px var(--neon), 0 0 18px var(--neon-glow), 0 0 42px var(--neon-glow);font-size:clamp(2.1rem,9.5vw,3rem);font-style:italic;font-weight:800}.hero__sub{font-family:var(--font-display);color:#ffd3d8;margin:1rem 0 0;font-size:1.15rem;font-style:italic}.section{padding:1.6rem 0}.when{margin-top:-7.5rem;position:relative}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:1.2rem 1.2rem 1.3rem;box-shadow:0 10px 30px #14070c2e}.card h2{margin-bottom:.8rem;font-size:1.35rem}.fact{margin:0 0 .9rem}.fact b{display:block}.fact span{color:var(--ink-soft)}.prices{gap:.8rem;margin:0 0 1.2rem;padding:0;list-style:none;display:flex}.prices li{border:1px solid var(--line);background:var(--paper-warm);border-radius:10px;flex:1;padding:.6rem .8rem}.prices strong{color:var(--red-dark);font-size:1.35rem;display:block}.prices span{color:var(--ink-soft);font-size:.9rem}.mystery{color:var(--ink-soft);text-align:center;margin:1.4rem 0 2.5rem;font-style:italic}.stack>*+*{margin-top:.8rem}.banner{border-radius:var(--radius);background:var(--paper-warm);border:1px solid var(--line);border-left:4px solid var(--red);color:var(--ink);padding:.9rem 1rem;text-decoration:none;display:block}.banner b{color:var(--red-dark)}.page{padding:1.4rem var(--gutter) 3rem}.page h1{font-family:var(--font-display);margin:.6rem 0 1rem;font-size:1.7rem}.back{min-height:var(--tap);align-items:center;display:inline-flex}.steps{counter-reset:s;margin:0 0 1.2rem;padding:0;list-style:none}.steps li{counter-increment:s;padding:.2rem 0 1rem 3rem;position:relative}.steps li:before{content:counter(s);background:var(--red);color:#fff;border-radius:50%;place-items:center;width:2.1rem;height:2.1rem;font-weight:700;display:grid;position:absolute;top:0;left:0}.steps .icon{vertical-align:-.25em;margin:0 .15em}.qr{border:1px solid var(--line);border-radius:10px;width:100%;max-width:15rem;height:auto;margin:1rem auto;display:block}.note{color:var(--ink-soft);font-size:.92rem}.copied{color:var(--ok);min-height:1.5em;font-weight:700}@media (prefers-reduced-motion:no-preference){.hero__title{animation:5s ease-out .4s both flicker}}@keyframes flicker{0%{opacity:.25}6%{opacity:1}9%{opacity:.4}13%{opacity:1}16%{opacity:.7}20%,to{opacity:1}}.btn--ghost{background:var(--paper);color:var(--red-dark)}.btn--ghost:hover{background:var(--paper-warm);color:var(--red-dark)}.btn:disabled{color:#4a4a4a;cursor:default;background:#d9d2d0;border-color:#d9d2d0}.field{margin:0 0 .8rem;display:block}.field span{margin-bottom:.3rem;font-weight:700;display:block}.field input,.field textarea{width:100%;min-height:var(--tap);font:inherit;color:var(--ink);border:2px solid var(--line);background:var(--paper);border-radius:10px;padding:.6rem .8rem}.field input:focus-visible,.field textarea:focus-visible{border-color:var(--red)}.check{min-height:var(--tap);cursor:pointer;align-items:flex-start;gap:.8rem;padding:.35rem 0;display:flex}.check input{width:1.5rem;height:1.5rem;accent-color:var(--red);flex:none;margin-top:.15rem}.allergens{border:1px solid var(--line);border-radius:10px;margin:0;padding:.6rem .9rem}.allergens legend{padding:0 .3rem;font-weight:700}.picklist,.guests{margin:0 0 1rem;padding:0;list-style:none}.picklist li+li{margin-top:.5rem}.pick{width:100%;min-height:var(--tap);font:inherit;text-align:left;color:var(--ink);background:var(--paper-warm);border:1px solid var(--line);cursor:pointer;border-radius:10px;flex-direction:column;justify-content:center;align-items:flex-start;padding:.6rem 1rem;font-weight:700;display:flex}.pick:hover:not(:disabled){border-color:var(--red)}.pick:disabled{color:var(--ink-soft);cursor:default}.pick small{font-weight:400}.linkbtn{min-height:var(--tap);font:inherit;color:var(--red-dark);cursor:pointer;text-align:left;background:0 0;border:0;padding:0 .4rem;text-decoration:underline}.error{color:var(--red-dark);font-weight:700}.guests li{border-bottom:1px solid var(--line);padding:.8rem 0}.page.stack>*+*{margin-top:1rem}.page .card{box-shadow:none}.field select{width:100%;min-height:var(--tap);font:inherit;color:var(--ink);border:2px solid var(--line);background:var(--paper);border-radius:10px;padding:.6rem .8rem}.totals{grid-template-columns:1fr 1fr;gap:.8rem;margin:0;display:grid}.totals dt{color:var(--ink-soft);font-size:.9rem}.totals dd{color:var(--red-dark);margin:0;font-size:1.3rem;font-weight:700}.chips{flex-wrap:wrap;gap:.5rem;display:flex}.chip{min-height:var(--tap);font:inherit;color:var(--ink);background:var(--paper);border:2px solid var(--line);cursor:pointer;border-radius:999px;padding:0 1rem;font-weight:700}.chip--on{background:var(--red);border-color:var(--red);color:#fff}.status{border:2px solid var(--line);border-radius:999px;padding:.15rem .7rem;font-size:.9rem;font-weight:700;display:inline-block}.status--paid{color:var(--ok);border-color:var(--ok)}.status--partial{color:#8a5a00;border-color:#8a5a00}.status--unpaid{color:var(--red-dark);border-color:var(--red-dark)}.status--credit{color:#1f4e8c;border-color:#1f4e8c}.linkbox code{word-break:break-all;background:var(--paper-warm);border-radius:8px;padding:.5rem;font-size:.85rem}.report__list{margin:0;padding-left:1.2rem}@media print{.no-print,.back,.btn,.linkbtn{display:none!important}body{background:#fff;font-size:11pt}html{font-size:11pt}.wrap{max-width:none;padding:0}.page{padding:0}.card{box-shadow:none;border:0;padding:0}.report h2{margin-bottom:.4em;font-size:16pt}.report h3{margin:.6em 0 .2em;font-size:12pt}.report p,.report li{margin:0 0 .15em;line-height:1.3}.report__list{columns:2;column-gap:1.5rem}.report__list li{break-inside:avoid}@page{size:A4;margin:15mm}}
