:root{--wine:#8b1a1a;--wine-dark:#651111;--cream:#fffaf5;--sand:#f6ece1;--gold:#d4a853;--ink:#2b201b;--muted:#766861;--line:#e6d7ca;--danger:#b42318;--success:#157347;--shadow:0 14px 35px rgba(86,45,26,.10)}*{box-sizing:border-box}body{margin:0;background:linear-gradient(180deg,#fffaf5 0%,#f8eee5 100%);color:var(--ink);font:16px/1.45 Arial,Helvetica,sans-serif;min-height:100vh}button,input,select,textarea{font:inherit}button{border:0;cursor:pointer}.shell{max-width:850px;margin:auto;padding:18px 14px 56px}.top{padding:16px 4px 20px;display:flex;justify-content:space-between;align-items:center;gap:12px}.brand{font-family:Georgia,serif;font-size:28px;font-weight:800;color:var(--wine)}.tag{font-size:12px;color:var(--muted);letter-spacing:.06em;text-transform:uppercase}.chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:#fff;border-radius:99px;padding:8px 12px;font-size:13px;color:var(--muted)}.welcome{background:#2d1d19;color:#fff;border-radius:20px;overflow:hidden;box-shadow:var(--shadow);display:grid;grid-template-columns:1.05fr .95fr;margin-bottom:16px}.welcome-copy{padding:28px}.eyebrow{display:block;color:#f5d48d;font-weight:800;font-size:12px;letter-spacing:.1em;text-transform:uppercase}.welcome h1{font-family:Georgia,serif;font-size:32px;line-height:1.05;margin:8px 0 12px}.welcome p{margin:0;color:#f4e8df}.welcome-points{display:grid;gap:7px;margin-top:18px;font-size:13px;color:#fff}.food-carousel{position:relative;min-height:280px;background:#57332b}.carousel-track,.food-slide{height:100%;min-height:280px}.food-slide{position:absolute;inset:0;margin:0;opacity:0;transition:opacity .3s ease;pointer-events:none}.food-slide.active{opacity:1;pointer-events:auto}.food-slide img{width:100%;height:100%;object-fit:cover;display:block}.food-slide:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(25,13,9,.86))}.food-slide figcaption{position:absolute;z-index:1;left:16px;right:16px;bottom:17px;display:grid;gap:2px}.food-slide figcaption strong{font-size:18px}.food-slide figcaption span{font-size:13px;color:#f9eee5}.carousel-controls{position:absolute;z-index:2;bottom:10px;right:12px;display:flex;gap:6px}.carousel-dot{width:9px;height:9px;border-radius:100%;padding:0;background:rgba(255,255,255,.5);border:1px solid rgba(0,0,0,.2)}.carousel-dot.active{background:#fff;transform:scale(1.18)}.card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;box-shadow:var(--shadow);margin-bottom:16px}.card h2{font-family:Georgia,serif;margin:0 0 6px;color:var(--wine);font-size:23px}.card h3{margin:22px 0 8px;font-size:18px}.muted{color:var(--muted)}.section-help{margin-top:0}.notice{border-left:4px solid var(--gold);background:#fff7e6;padding:13px 14px;border-radius:8px;margin:12px 0;color:#6f4c12}.notice ul{margin:8px 0 0;padding-left:20px}.error{border-left-color:var(--danger);background:#fff0ef;color:#8c1d18}.success{border-left-color:var(--success);background:#ebfff3;color:#0b6237}.grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field{display:flex;flex-direction:column;gap:6px}.field.full{grid-column:1/-1}label{font-weight:700;font-size:14px}input,select,textarea{width:100%;border:1px solid #cdbeb3;border-radius:10px;padding:12px;background:#fff;color:var(--ink)}select{min-width:0;overflow:hidden;text-overflow:ellipsis}input:focus,select:focus,textarea:focus{outline:3px solid rgba(212,168,83,.32);border-color:var(--gold)}.field-error input,.field-error select{border:2px solid var(--danger);background:#fff5f4}.field-error-text{font-size:12px;color:var(--danger);font-weight:700}.primary,.secondary,.danger-button{padding:13px 16px;border-radius:10px;font-weight:800;transition:transform .16s ease,background .16s ease}.primary{background:var(--wine);color:#fff}.primary:hover{background:var(--wine-dark)}.secondary{background:#fff;color:var(--wine);border:1px solid var(--wine)}.danger-button{background:#fff0ef;color:#8c1d18;border:1px solid #f1b5b1}.primary:active,.secondary:active,.danger-button:active,.qty-button:active{transform:scale(.97)}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.package{border:1px solid var(--line);border-radius:14px;padding:14px;margin-top:14px;background:#fffcf9}.package-error{border:2px solid var(--danger);box-shadow:0 0 0 3px rgba(180,35,24,.12)}.package-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.package-choice{flex:1;min-width:0}.special-select{font-weight:800}.package-price{display:flex;align-items:baseline;gap:7px;flex-wrap:wrap;padding:8px 2px 0;color:var(--wine)}.package-price strong{font-size:22px}.package-price span{font-size:12px;color:var(--muted);font-weight:600}.meal-help{font-size:13px;margin:13px 0 8px;color:var(--muted)}.meal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}.meal-line{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 8px 8px 10px;border:1px solid #eee4dc;border-radius:9px;background:#fff}.meal-line label{font-size:13px;font-weight:700;line-height:1.2}.meal-line label span{display:block;color:#8e5f12;font-size:11px;margin-top:2px}.qty-stepper{display:grid;grid-template-columns:34px 30px 34px;align-items:center;gap:3px;flex:0 0 auto}.qty-stepper output{text-align:center;font-size:17px;font-weight:800}.qty-button{width:34px;height:36px;border-radius:8px;background:#f8eee5;color:var(--wine);border:1px solid #d8c8b9;font-size:24px;line-height:1;font-weight:800}.package-status{font-size:13px;margin-top:9px;font-weight:700}.package-status.good{color:var(--success)}.package-status.bad{color:var(--danger)}.toggle-row{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}.toggle{flex:1;min-width:150px;padding:12px;border-radius:10px;border:1px solid var(--line);background:#fff;color:var(--ink);font-weight:800}.toggle.active{border-color:var(--wine);background:#fff0ef;color:var(--wine)}.summary{position:sticky;bottom:10px;background:#2d1d19;color:#fff;border-radius:15px;padding:14px 16px;box-shadow:0 12px 28px rgba(48,23,14,.24);display:flex;justify-content:space-between;align-items:center;gap:10px;z-index:2}.summary strong{font-size:22px}.hidden{display:none!important}.invoice-result{max-width:620px;margin:5vh auto}.invoice-result .card{padding:26px}.invoice-number{font-size:24px;color:var(--wine);font-weight:900;letter-spacing:.02em;overflow-wrap:anywhere}.delivery-confirmation{border:1px solid #d9c09a;background:#fff8e9;border-radius:10px;padding:12px}.delivery-confirmation span{color:var(--muted);font-size:14px}.admin-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.orders{display:grid;gap:10px;margin-top:12px}.order-row{border:1px solid var(--line);border-radius:12px;padding:13px;background:#fff}.order-row h3{margin:0;color:var(--wine);font-size:17px}.order-row p{margin:4px 0;font-size:14px}.small{font-size:13px}.loader{padding:40px;text-align:center;color:var(--muted)}@media(max-width:680px){.welcome{grid-template-columns:1fr}.welcome-copy{padding:23px 19px}.welcome h1{font-size:29px}.food-carousel,.carousel-track,.food-slide{min-height:250px}.shell{padding:12px 10px 46px}.top{padding-top:8px}.brand{font-size:25px}.grid{grid-template-columns:1fr}.field.full{grid-column:auto}.meal-grid{grid-template-columns:1fr}.package-head{flex-direction:column}.package-head .danger-button{width:100%}.card{padding:16px;border-radius:15px}.summary{bottom:7px}.summary strong{font-size:20px}.summary>span{max-width:105px;text-align:right;font-size:14px}}@media(prefers-reduced-motion:reduce){.food-slide{transition:none}}
