*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif;color:#1d2939;background:#f7f8fa;line-height:1.5}a{color:inherit;text-decoration:none}img{max-width:100%}.container{width:min(1180px,calc(100% - 32px));margin:auto}.topbar{position:sticky;top:0;z-index:30;background:#fff;border-bottom:1px solid #e6e8ec;box-shadow:0 4px 20px rgba(16,24,40,.04)}.topbar-inner{height:68px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:19px}.brand-mark{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:var(--primary);color:white}.topnav{display:flex;gap:18px;align-items:center;font-weight:600}.pill{background:var(--primary);color:white;border-radius:99px;padding:2px 8px;font-size:12px}.hero{background:linear-gradient(115deg,rgba(0,0,0,.72),rgba(0,0,0,.3)),var(--hero);background-size:cover;background-position:center;color:#fff;padding:80px 0}.hero h1{font-size:clamp(34px,6vw,68px);line-height:1;margin:0 0 18px;max-width:760px}.hero p{font-size:19px;max-width:660px;opacity:.92}.hero-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.hero-meta span{background:rgba(255,255,255,.16);backdrop-filter:blur(8px);padding:9px 13px;border-radius:12px}.section{padding:48px 0}.section-title{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}.section-title h2{margin:0;font-size:30px}.grid{display:grid;gap:20px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.card{background:#fff;border:1px solid #e7e9ee;border-radius:18px;padding:20px;box-shadow:0 8px 32px rgba(16,24,40,.05)}.restaurant-card{padding:0;overflow:hidden}.restaurant-cover{height:180px;background:#e9edf2 center/cover}.restaurant-content{padding:20px}.restaurant-content h3{margin:0 0 7px}.product-card{display:grid;grid-template-columns:1fr 150px;gap:18px;align-items:center}.product-img{height:125px;border-radius:14px;background:#edf0f4 center/cover}.price{font-size:20px;font-weight:800;color:var(--primary)}.old-price{text-decoration:line-through;color:#98a2b3;font-size:14px}.tags{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.tag{font-size:12px;background:#f2f4f7;border-radius:99px;padding:4px 9px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:11px;padding:11px 17px;font-weight:700;cursor:pointer;background:#e9edf2;color:#1d2939}.btn:hover{filter:brightness(.97)}.btn-primary{background:var(--primary);color:white}.btn-danger{background:#b42318;color:#fff}.btn-sm{padding:7px 11px;font-size:13px}.btn-block{width:100%}.form-group{margin-bottom:16px}.form-label{font-weight:700;display:block;margin-bottom:6px}.form-control,.form-select,textarea{width:100%;border:1px solid #d0d5dd;background:#fff;border-radius:10px;padding:11px 12px;font:inherit;color:#1d2939}.form-control:focus,.form-select:focus,textarea:focus{outline:3px solid color-mix(in srgb,var(--primary) 18%,transparent);border-color:var(--primary)}.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.check{display:flex;align-items:flex-start;gap:9px;margin:8px 0}.check input{margin-top:5px}.alert{margin-top:18px;padding:14px 16px;border-radius:11px;background:#eef2f6}.alert-success{background:#ecfdf3;color:#027a48}.alert-danger{background:#fef3f2;color:#b42318}.alert-warning{background:#fffaeb;color:#b54708}.alert-info{background:#eff8ff;color:#175cd3}.category-nav{display:flex;gap:8px;overflow:auto;padding:14px 0;position:sticky;top:68px;background:#f7f8fa;z-index:20}.category-nav a{white-space:nowrap;background:#fff;border:1px solid #e7e9ee;padding:8px 13px;border-radius:99px;font-weight:650}.cart-row{display:grid;grid-template-columns:1fr auto auto;gap:16px;align-items:center;border-bottom:1px solid #eaecf0;padding:15px 0}.summary{position:sticky;top:92px}.summary-line{display:flex;justify-content:space-between;gap:10px;margin:10px 0}.summary-total{font-size:22px;font-weight:800;border-top:1px solid #e7e9ee;padding-top:13px}.empty{text-align:center;padding:65px 20px;color:#667085}.dashboard-shell{display:grid;grid-template-columns:240px 1fr;min-height:calc(100vh - 68px)}.sidebar{background:#101828;color:#d0d5dd;padding:24px 14px;display:flex;flex-direction:column;gap:4px}.sidebar a{padding:10px 12px;border-radius:9px}.sidebar a:hover{background:#344054;color:white}.sidebar-user{padding:8px 12px 18px;display:flex;flex-direction:column;color:white}.sidebar-user small{color:#98a2b3}.dashboard-main{padding:28px;min-width:0}.page-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}.page-head h1{margin:0;font-size:29px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.stat{background:#fff;border:1px solid #e7e9ee;border-radius:16px;padding:19px}.stat strong{display:block;font-size:28px;margin-top:4px}.table-wrap{overflow:auto;background:#fff;border:1px solid #e7e9ee;border-radius:14px}.table{width:100%;border-collapse:collapse;min-width:720px}.table th,.table td{padding:12px 14px;text-align:left;border-bottom:1px solid #eaecf0;vertical-align:top}.table th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#667085;background:#f9fafb}.badge{display:inline-flex;border-radius:99px;padding:4px 9px;font-size:12px;font-weight:700;background:#eaecf0}.badge-danger{background:#fef3f2;color:#b42318}.badge-primary{background:#eef4ff;color:#3538cd}.badge-warning{background:#fffaeb;color:#b54708}.badge-success{background:#ecfdf3;color:#027a48}.badge-info{background:#eff8ff;color:#175cd3}.badge-secondary{background:#f2f4f7;color:#475467}.actions{display:flex;gap:7px;flex-wrap:wrap}.modal{display:none;position:fixed;inset:0;background:rgba(16,24,40,.65);z-index:100;align-items:center;justify-content:center;padding:20px}.modal.open{display:flex}.modal-card{width:min(650px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:18px;padding:24px}.modal-head{display:flex;justify-content:space-between;gap:20px;align-items:center}.modal-close{border:0;background:none;font-size:26px;cursor:pointer}.kitchen{display:grid;grid-template-columns:repeat(4,minmax(260px,1fr));gap:16px;overflow:auto}.kitchen-col{background:#eef1f5;border-radius:16px;padding:12px;min-height:600px}.kitchen-col h3{margin:5px 5px 13px}.kitchen-ticket{background:#fff;border-radius:13px;padding:14px;margin-bottom:12px;border-left:5px solid var(--primary);box-shadow:0 5px 18px rgba(16,24,40,.08)}.kitchen-ticket h4{margin:0}.footer{padding:24px 0;color:#667085;border-top:1px solid #eaecf0;background:#fff}.login{min-height:calc(100vh - 140px);display:grid;place-items:center;padding:40px 0}.login-card{width:min(460px,calc(100% - 32px))}.muted{color:#667085}.text-right{text-align:right}.mt-0{margin-top:0}.mb-0{margin-bottom:0}.spacer{height:15px}.notice{font-size:13px;color:#667085}.qr-placeholder{width:140px;height:140px;display:grid;place-items:center;background:repeating-linear-gradient(45deg,#111 0 7px,#fff 7px 14px);border:8px solid white;box-shadow:0 0 0 1px #ddd}.print-only{display:none}@media(max-width:900px){.grid-3,.grid-4,.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-shell{grid-template-columns:1fr}.sidebar{flex-direction:row;overflow:auto;position:sticky;top:68px;z-index:25;padding:8px}.sidebar-user{display:none}.sidebar a{white-space:nowrap}.dashboard-main{padding:18px}.product-card{grid-template-columns:1fr 110px}}@media(max-width:620px){.topnav a:not(:first-child){display:none}.hero{padding:58px 0}.grid-2,.grid-3,.grid-4,.stats,.form-row{grid-template-columns:1fr}.product-card{grid-template-columns:1fr}.product-img{order:-1;height:180px}.cart-row{grid-template-columns:1fr auto}.cart-row>:last-child{grid-column:1/-1}.page-head{align-items:flex-start;flex-direction:column}.dashboard-main{padding:14px}.card{padding:16px}}@media print{.topbar,.sidebar,.footer,.no-print,.btn{display:none!important}.dashboard-shell{display:block}.dashboard-main{padding:0}.print-only{display:block}.card,.table-wrap{box-shadow:none;border:0}.table{min-width:0}body{background:#fff}}
.site-logo{display:block;max-width:190px;max-height:48px;object-fit:contain}.nav-toggle{display:none;border:0;background:transparent;font-size:26px}.hero-home{padding:110px 0;min-height:650px;display:flex;align-items:center}.hero-layout{display:grid;grid-template-columns:minmax(0,760px) 1fr}.eyebrow{display:inline-block;text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:800;color:var(--primary);margin-bottom:10px}.hero .eyebrow{color:#fff;opacity:.8}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0}.btn-lg{padding:14px 22px;font-size:16px}.btn-light{background:#fff;color:#1d2939}.hero-closed{margin-top:20px;background:#fffaeb;color:#93370d;padding:13px 16px;border-radius:12px;max-width:650px}.home-section:nth-of-type(even){background:#fff}.section-heading{text-align:center;max-width:760px;margin:0 auto 28px}.section-heading h2,.split-section h2,.cta-box h2{font-size:clamp(30px,4vw,48px);line-height:1.12;margin:0 0 18px}.split-section{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.split-section.image-left img{order:-1}.section-image{width:100%;height:440px;object-fit:cover;border-radius:28px;box-shadow:0 20px 60px rgba(16,24,40,.14)}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.feature-grid article{background:#fff;border:1px solid #e7e9ee;border-radius:20px;padding:26px}.feature-grid strong{font-size:20px}.cta-box{background:var(--primary);color:#fff;padding:45px;border-radius:28px;display:flex;justify-content:space-between;align-items:center;gap:30px}.cta-box .eyebrow{color:#fff}.contact-strip{background:#101828;color:#fff}.contact-strip strong{font-size:18px}.page-hero{background:linear-gradient(110deg,rgba(16,24,40,.88),rgba(16,24,40,.48)),var(--hero);background-size:cover;background-position:center;padding:80px 0;color:#fff}.page-hero h1{font-size:clamp(38px,6vw,64px);margin:0}.content-narrow{max-width:820px}.page-content{font-size:17px}.page-content h2{font-size:34px}.contact-layout{margin-top:35px}.contact-card{background:#101828;color:#fff}.contact-card a{color:#fff}.hours-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.14)}.hp{position:absolute;left:-9999px}.footer-rich{padding:55px 0 0;background:#0c111d;color:#98a2b3;border:0}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.3fr;gap:35px}.footer-grid h4,.footer-brand{color:#fff;font-size:18px;margin:0 0 14px}.footer-brand{font-size:24px;font-weight:800}.footer-grid a{display:block;margin:8px 0}.footer-bottom{border-top:1px solid #344054;margin-top:36px;padding:18px 0;font-size:13px}.cookie-banner{position:fixed;z-index:200;left:24px;right:24px;bottom:24px;max-width:900px;margin:auto;background:#fff;border:1px solid #d0d5dd;box-shadow:0 20px 60px rgba(16,24,40,.25);padding:18px 20px;border-radius:18px;display:flex;align-items:center;justify-content:space-between;gap:20px}.cookie-banner p{margin:4px 0 0}.ordering-closed{margin-top:20px}.editor-toolbar{display:flex;gap:5px;flex-wrap:wrap;padding:8px;background:#f2f4f7;border:1px solid #d0d5dd;border-bottom:0;border-radius:10px 10px 0 0}.editor-toolbar button{border:1px solid #d0d5dd;background:#fff;border-radius:7px;padding:6px 10px;cursor:pointer}.code-editor{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;border-radius:0 0 10px 10px}.list-row{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:14px 0;border-bottom:1px solid #eaecf0}.input-prefix{display:flex;align-items:center}.input-prefix span{background:#f2f4f7;border:1px solid #d0d5dd;border-right:0;padding:11px;border-radius:10px 0 0 10px}.input-prefix input{border-radius:0 10px 10px 0}.settings-form{display:grid;gap:20px}.settings-section h2{margin-top:0}.save-bar{position:sticky;bottom:15px;display:flex;justify-content:flex-end;padding:12px;background:rgba(247,248,250,.9);backdrop-filter:blur(8px);border-radius:16px;z-index:20}.color-control{height:52px;padding:5px}.availability-box{padding:14px;background:#f9fafb;border:1px solid #eaecf0;border-radius:12px;margin-bottom:15px}.availability-box h3{margin-top:0}
@media(max-width:900px){.footer-grid{grid-template-columns:repeat(2,1fr)}.split-section{grid-template-columns:1fr}.feature-grid{grid-template-columns:1fr}.hero-home{min-height:auto;padding:80px 0}.cta-box{align-items:flex-start;flex-direction:column}.nav-toggle{display:block}.topnav{display:none;position:absolute;top:68px;left:0;right:0;background:#fff;padding:18px 22px;box-shadow:0 15px 30px rgba(16,24,40,.12);flex-direction:column;align-items:flex-start}.topnav.open{display:flex}}
@media(max-width:620px){.footer-grid{grid-template-columns:1fr}.cookie-banner{left:12px;right:12px;bottom:12px;align-items:flex-start;flex-direction:column}.section-image{height:300px}.cta-box{padding:28px}.hero-actions .btn{width:100%}}

/* === FoodOrder Pro 2.2: visual builder and animations === */
:root{--surface:#fff;--surface-soft:#f6f3ef;--ink:#17191f;--muted:#6b7280;--radius-xl:34px;--shadow-soft:0 18px 55px rgba(16,24,40,.10);--shadow-card:0 12px 36px rgba(16,24,40,.08);--ease:cubic-bezier(.2,.8,.2,1)}
.public-body{background:#fbfaf8;color:var(--ink);overflow-x:hidden}.public-body main{overflow:hidden}.public-body::selection{background:var(--primary);color:#fff}
.container-wide{width:min(1380px,calc(100% - 32px));margin:auto}.container-narrow{width:min(860px,calc(100% - 32px));margin:auto}.container-standard{width:min(1180px,calc(100% - 32px));margin:auto}
.topbar{transition:background .3s ease,box-shadow .3s ease,border-color .3s ease,height .3s ease}.public-body .topbar{background:rgba(255,255,255,.88);backdrop-filter:blur(18px);border-color:rgba(255,255,255,.45)}.public-body .topbar.is-scrolled{background:rgba(255,255,255,.97);box-shadow:0 12px 38px rgba(16,24,40,.12)}.public-body .topnav a{position:relative;transition:color .2s ease}.public-body .topnav>a:not(.nav-order-link)::after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:2px;background:var(--primary);transition:right .25s var(--ease)}.public-body .topnav>a:not(.nav-order-link):hover::after{right:0}.nav-order-link{display:inline-flex!important;align-items:center;gap:8px;background:var(--primary);color:#fff!important;padding:10px 15px;border-radius:999px;box-shadow:0 8px 20px color-mix(in srgb,var(--primary) 30%,transparent);transition:transform .2s ease,box-shadow .2s ease!important}.nav-order-link:hover{transform:translateY(-2px);box-shadow:0 12px 26px color-mix(in srgb,var(--primary) 38%,transparent)}.footer .nav-order-link{display:inline-flex!important;margin-top:4px}
.hero-home{position:relative;isolation:isolate;min-height:760px;padding:145px 0 120px;background-position:center;background-size:cover;overflow:hidden}.hero-home::before{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(10,12,17,.93) 5%,rgba(10,12,17,.66) 52%,rgba(10,12,17,.35) 100%);z-index:-2}.hero-home::after{content:"";position:absolute;left:-5%;right:-5%;bottom:-2px;height:110px;background:#fbfaf8;clip-path:polygon(0 82%,15% 70%,32% 82%,52% 54%,72% 74%,87% 58%,100% 73%,100% 100%,0 100%);z-index:-1}.hero-layout{grid-template-columns:minmax(0,700px) minmax(280px,390px);gap:80px;align-items:center}.hero-copy{position:relative;z-index:2}.hero-home h1{font-size:clamp(50px,7vw,92px);line-height:.97;letter-spacing:-.045em;max-width:820px;text-wrap:balance;text-shadow:0 7px 30px rgba(0,0,0,.18)}.hero-home p{font-size:clamp(17px,2vw,21px);line-height:1.7;max-width:650px}.hero-badge{display:inline-flex;align-items:center;gap:10px;padding:8px 13px;border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.10);backdrop-filter:blur(10px);border-radius:999px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.12em;margin-bottom:24px}.hero-badge i{width:8px;height:8px;border-radius:50%;background:#7ee2a8;box-shadow:0 0 0 6px rgba(126,226,168,.16);animation:pulseDot 2s infinite}.btn{transition:transform .2s var(--ease),box-shadow .2s ease,background .2s ease,border-color .2s ease}.btn:hover{transform:translateY(-2px)}.btn-primary{box-shadow:0 10px 25px color-mix(in srgb,var(--primary) 28%,transparent)}.btn-arrow{display:inline-flex;align-items:center;gap:12px}.btn-arrow span{transition:transform .25s var(--ease)}.btn-arrow:hover span{transform:translateX(5px)}.btn-glass{background:rgba(255,255,255,.11);color:#fff;border:1px solid rgba(255,255,255,.28);backdrop-filter:blur(12px)}.btn-glass:hover{background:#fff;color:#111827}.hero-actions{margin:35px 0 30px}.hero-meta{display:flex;flex-wrap:wrap;gap:10px}.hero-meta span{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.14);font-size:13px}.hero-meta b{font-size:15px}.hero-info-card{position:relative;color:#fff;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.23);backdrop-filter:blur(18px);padding:30px;border-radius:28px;box-shadow:0 25px 80px rgba(0,0,0,.30);overflow:hidden}.hero-info-card::before{content:"";position:absolute;right:-55px;top:-55px;width:140px;height:140px;border-radius:50%;background:var(--primary);filter:blur(5px);opacity:.55}.hero-info-card>*{position:relative}.hero-info-label{display:inline-flex;padding:6px 10px;border-radius:999px;background:rgba(126,226,168,.16);color:#c8f7dc;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.hero-info-card strong{display:block;font-size:28px;line-height:1.15;margin:22px 0 12px}.hero-info-card p{font-size:15px;margin:0 0 22px}.hero-info-card a{display:flex;align-items:center;justify-content:space-between;padding-top:18px;border-top:1px solid rgba(255,255,255,.18);font-weight:800}.hero-info-card a span{font-size:22px}.hero-orb{position:absolute;border-radius:50%;filter:blur(2px);pointer-events:none;opacity:.45}.hero-orb-one{width:310px;height:310px;right:-90px;top:80px;background:radial-gradient(circle at 35% 35%,rgba(255,255,255,.55),var(--primary));animation:floatOrb 10s ease-in-out infinite}.hero-orb-two{width:160px;height:160px;left:47%;bottom:80px;background:rgba(255,255,255,.17);animation:floatOrb 7s ease-in-out infinite reverse}.hero-scroll{position:absolute;left:50%;bottom:50px;width:28px;height:45px;border:1px solid rgba(255,255,255,.45);border-radius:99px;display:flex;justify-content:center;padding-top:8px;z-index:2}.hero-scroll span{width:4px;height:9px;background:#fff;border-radius:99px;animation:scrollHint 1.8s infinite}
.home-section{position:relative;isolation:isolate;overflow:hidden}.home-section>.section-decoration{position:absolute;pointer-events:none;z-index:-1}.section-space-compact{padding:50px 0}.section-space-normal{padding:95px 0}.section-space-large{padding:140px 0}.section-theme-default{background:#fbfaf8}.section-theme-white{background:#fff}.section-theme-soft{background:linear-gradient(135deg,#f8f4ef,#f2f5f2)}.section-theme-primary{background:var(--primary);color:#fff}.section-theme-dark{background:#11151d;color:#fff}.section-theme-image{background:linear-gradient(rgba(13,16,22,.78),rgba(13,16,22,.78)),var(--section-bg);background-size:cover;background-position:center;color:#fff}.section-theme-primary .eyebrow,.section-theme-dark .eyebrow,.section-theme-image .eyebrow{color:#fff;opacity:.75}.section-theme-primary .cms-content,.section-theme-dark .cms-content,.section-theme-image .cms-content{color:rgba(255,255,255,.82)}.section-theme-soft .section-decoration{width:500px;height:500px;right:-240px;top:-280px;border-radius:50%;background:color-mix(in srgb,var(--primary) 10%,transparent)}.section-align-left .section-heading{text-align:left;margin-left:0}.section-heading{margin-bottom:48px}.section-heading h2,.split-section h2,.cta-box h2{font-size:clamp(36px,5vw,60px);letter-spacing:-.035em;text-wrap:balance}.section-heading .eyebrow{padding:6px 10px;border-radius:999px;background:color-mix(in srgb,var(--primary) 9%,transparent)}.section-theme-primary .section-heading .eyebrow,.section-theme-dark .section-heading .eyebrow,.section-theme-image .section-heading .eyebrow{background:rgba(255,255,255,.12)}.section-content{font-size:18px;line-height:1.8}.section-action{text-align:center;margin-top:38px}.section-align-left .section-action{text-align:left}
.split-section{gap:80px}.split-copy{padding:20px 0}.split-copy .cms-content{font-size:18px;line-height:1.8;margin-bottom:27px}.image-frame{position:relative}.section-image{height:540px;border-radius:32px;box-shadow:var(--shadow-soft);transition:transform .6s var(--ease)}.image-frame:hover .section-image{transform:scale(1.015)}.image-accent{position:absolute;width:110px;height:110px;right:-24px;bottom:-24px;border:18px solid var(--primary);border-radius:28px;z-index:-1;opacity:.22}.image-left .image-accent{right:auto;left:-24px}
.feature-grid,.stats-showcase,.testimonial-grid,.steps-grid,.team-grid,.menu-preview-grid{display:grid;gap:22px}.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.feature-card{position:relative;background:#fff;border:1px solid rgba(17,24,39,.08);border-radius:25px;padding:31px;box-shadow:0 10px 35px rgba(16,24,40,.05);overflow:hidden;transition:transform .35s var(--ease),box-shadow .35s ease,border-color .35s ease}.feature-card::after{content:"";position:absolute;width:120px;height:120px;right:-75px;bottom:-75px;border-radius:50%;background:var(--primary);opacity:.08;transition:transform .4s var(--ease)}.feature-card:hover{transform:translateY(-8px);box-shadow:0 24px 60px rgba(16,24,40,.12);border-color:color-mix(in srgb,var(--primary) 28%,transparent)}.feature-card:hover::after{transform:scale(1.7)}.feature-icon{width:55px;height:55px;display:grid;place-items:center;border-radius:18px;background:color-mix(in srgb,var(--primary) 10%,#fff);color:var(--primary);font-size:25px;margin-bottom:25px}.feature-card h3{font-size:22px;margin:0 0 10px}.feature-card p{margin:0;color:#687180;line-height:1.7}.section-theme-dark .feature-card,.section-theme-primary .feature-card,.section-theme-image .feature-card{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.13);box-shadow:none}.section-theme-dark .feature-card p,.section-theme-primary .feature-card p,.section-theme-image .feature-card p{color:rgba(255,255,255,.72)}
.stats-showcase{align-items:stretch}.stat-showcase{padding:35px 22px;text-align:center;border-radius:25px;background:#fff;border:1px solid rgba(17,24,39,.08);box-shadow:var(--shadow-card)}.stat-showcase strong{display:block;color:var(--primary);font-size:clamp(40px,5vw,66px);line-height:1;font-weight:900;letter-spacing:-.045em}.stat-showcase>span{display:block;margin-top:13px;font-weight:700;color:#657080}.section-theme-dark .stat-showcase,.section-theme-primary .stat-showcase,.section-theme-image .stat-showcase{background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.14);box-shadow:none}.section-theme-dark .stat-showcase strong,.section-theme-primary .stat-showcase strong,.section-theme-image .stat-showcase strong{color:#fff}.section-theme-dark .stat-showcase>span,.section-theme-primary .stat-showcase>span,.section-theme-image .stat-showcase>span{color:rgba(255,255,255,.7)}
.testimonial-card{position:relative;background:#fff;padding:32px;border-radius:25px;border:1px solid rgba(17,24,39,.08);box-shadow:var(--shadow-card);transition:transform .3s var(--ease)}.testimonial-card:hover{transform:translateY(-7px) rotate(-.3deg)}.testimonial-card:nth-child(even):hover{transform:translateY(-7px) rotate(.3deg)}.stars{color:#e4a11b;letter-spacing:3px}.testimonial-card blockquote{font-size:18px;line-height:1.75;margin:22px 0;color:#343b47}.testimonial-card strong{display:block;padding-top:18px;border-top:1px solid #eceff2}.section-theme-dark .testimonial-card,.section-theme-primary .testimonial-card,.section-theme-image .testimonial-card{background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.14);box-shadow:none}.section-theme-dark .testimonial-card blockquote,.section-theme-primary .testimonial-card blockquote,.section-theme-image .testimonial-card blockquote{color:#fff}
.faq-list{max-width:900px;margin:auto}.section-align-left .faq-list{margin-left:0}.faq-item{border-bottom:1px solid rgba(17,24,39,.13)}.faq-question{width:100%;border:0;background:transparent;padding:23px 3px;display:flex;justify-content:space-between;align-items:center;gap:20px;text-align:left;font:inherit;font-size:19px;font-weight:800;color:inherit;cursor:pointer}.faq-question b{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--primary) 10%,transparent);color:var(--primary);font-size:23px;transition:transform .3s ease}.faq-item.is-open .faq-question b{transform:rotate(45deg)}.faq-answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s var(--ease)}.faq-answer>p{overflow:hidden;margin:0;color:#687180;line-height:1.75}.faq-item.is-open .faq-answer{grid-template-rows:1fr}.faq-item.is-open .faq-answer>p{padding-bottom:24px}.section-theme-dark .faq-item,.section-theme-primary .faq-item,.section-theme-image .faq-item{border-color:rgba(255,255,255,.16)}.section-theme-dark .faq-answer>p,.section-theme-primary .faq-answer>p,.section-theme-image .faq-answer>p{color:rgba(255,255,255,.72)}
.steps-grid{counter-reset:steps}.step-card{position:relative;padding:34px 28px;border-radius:25px;background:#fff;border:1px solid rgba(17,24,39,.08);box-shadow:var(--shadow-card)}.step-card::after{content:"";position:absolute;left:calc(100% + 2px);top:53px;width:22px;border-top:2px dashed color-mix(in srgb,var(--primary) 35%,transparent)}.step-card:last-child::after{display:none}.step-number{width:52px;height:52px;border-radius:18px;display:grid;place-items:center;background:var(--primary);color:#fff;font-size:19px;font-weight:900;box-shadow:0 10px 25px color-mix(in srgb,var(--primary) 28%,transparent)}.step-card h3{font-size:22px;margin:24px 0 10px}.step-card p{color:#687180;line-height:1.7;margin:0}
.gallery-mosaic{display:grid;gap:16px;grid-auto-flow:dense}.gallery-mosaic.cols-2{grid-template-columns:repeat(2,1fr)}.gallery-mosaic.cols-3{grid-template-columns:repeat(3,1fr)}.gallery-mosaic.cols-4,.gallery-mosaic.cols-5{grid-template-columns:repeat(4,1fr)}.gallery-tile{position:relative;height:280px;border-radius:24px;overflow:hidden;background:#ddd}.gallery-tile:nth-child(5n+1){grid-row:span 2;height:576px}.gallery-tile:nth-child(7n+3){grid-column:span 2}.gallery-tile img{width:100%;height:100%;object-fit:cover;transition:transform .65s var(--ease),filter .35s ease}.gallery-tile:hover img{transform:scale(1.08);filter:brightness(.75)}.gallery-tile span{position:absolute;left:18px;right:18px;bottom:17px;color:#fff;font-weight:800;opacity:0;transform:translateY(12px);transition:opacity .3s ease,transform .3s ease}.gallery-tile:hover span{opacity:1;transform:none}
.team-card{text-align:center}.team-photo{aspect-ratio:1/1;border-radius:28px;overflow:hidden;background:color-mix(in srgb,var(--primary) 12%,#fff);box-shadow:var(--shadow-card);margin-bottom:20px;transition:transform .35s var(--ease),border-radius .35s ease}.team-card:hover .team-photo{transform:translateY(-8px);border-radius:50%}.team-photo img{width:100%;height:100%;object-fit:cover}.team-photo span{height:100%;display:grid;place-items:center;font-size:70px;font-weight:900;color:var(--primary)}.team-card h3{margin:0 0 5px}.team-card p{margin:0;color:#687180}
.timeline{max-width:920px;margin:auto;position:relative}.timeline::before{content:"";position:absolute;left:115px;top:12px;bottom:12px;width:2px;background:linear-gradient(var(--primary),color-mix(in srgb,var(--primary) 10%,transparent))}.timeline-item{display:grid;grid-template-columns:90px 24px 1fr;gap:14px;position:relative;margin-bottom:34px}.timeline-item time{font-size:18px;font-weight:900;color:var(--primary);text-align:right;padding-top:5px}.timeline-dot{width:16px;height:16px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 7px color-mix(in srgb,var(--primary) 12%,transparent);margin-top:7px;z-index:1}.timeline-item h3{margin:0 0 7px;font-size:22px}.timeline-item p{margin:0;color:#687180;line-height:1.7}
.menu-preview-card{background:#fff;border-radius:25px;overflow:hidden;border:1px solid rgba(17,24,39,.08);box-shadow:var(--shadow-card);transition:transform .35s var(--ease),box-shadow .35s ease}.menu-preview-card:hover{transform:translateY(-9px);box-shadow:0 27px 65px rgba(16,24,40,.14)}.menu-preview-image{height:220px;position:relative;overflow:hidden}.menu-preview-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}.menu-preview-card:hover img{transform:scale(1.07)}.promo-chip{position:absolute;left:14px;top:14px;background:var(--primary);color:#fff;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:800}.menu-preview-body{padding:23px}.menu-preview-body small{color:var(--primary);font-weight:800;text-transform:uppercase;letter-spacing:.08em}.menu-preview-body h3{font-size:22px;margin:8px 0}.menu-preview-body p{color:#687180;line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.menu-preview-body strong{font-size:20px}
.opening-card{display:grid;grid-template-columns:1fr 1.1fr;overflow:hidden;border-radius:32px;background:#11151d;color:#fff;box-shadow:var(--shadow-soft)}.opening-visual{padding:55px;background:radial-gradient(circle at 10% 10%,color-mix(in srgb,var(--primary) 75%,#fff),var(--primary));display:flex;flex-direction:column;justify-content:center}.opening-visual span{font-size:12px;text-transform:uppercase;letter-spacing:.14em;font-weight:800}.opening-visual strong{font-size:42px;line-height:1.05;margin:14px 0}.opening-list{padding:35px 45px}.opening-list>div{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.12)}
.video-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:55px;align-items:center}.video-layout .cms-content{font-size:18px;line-height:1.8}.video-frame{position:relative;padding-top:56.25%;border-radius:28px;overflow:hidden;box-shadow:var(--shadow-soft);background:#000}.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.quote-block{position:relative;margin:0 auto;max-width:960px;text-align:center;padding:70px 60px;border-radius:34px;background:linear-gradient(135deg,var(--primary),color-mix(in srgb,var(--primary) 68%,#11151d));color:#fff;box-shadow:0 30px 80px color-mix(in srgb,var(--primary) 25%,transparent);overflow:hidden}.quote-block::before,.quote-block::after{content:"";position:absolute;border-radius:50%;background:rgba(255,255,255,.08)}.quote-block::before{width:240px;height:240px;left:-100px;bottom:-140px}.quote-block::after{width:170px;height:170px;right:-70px;top:-100px}.quote-mark{font-family:Georgia,serif;font-size:100px;line-height:.4;opacity:.3}.quote-block blockquote{position:relative;font-size:clamp(27px,4vw,46px);line-height:1.25;margin:25px 0}.quote-block blockquote p{margin:0}.quote-block figcaption{font-weight:800;opacity:.75}
.logo-strip{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:18px}.logo-strip a{min-width:150px;height:90px;padding:20px 26px;display:grid;place-items:center;background:#fff;border:1px solid rgba(17,24,39,.08);border-radius:20px;filter:grayscale(1);opacity:.68;transition:filter .3s ease,opacity .3s ease,transform .3s var(--ease)}.logo-strip a:hover{filter:none;opacity:1;transform:translateY(-5px)}.logo-strip img{max-height:50px;max-width:150px;object-fit:contain}.section-theme-dark .logo-strip a,.section-theme-primary .logo-strip a,.section-theme-image .logo-strip a{background:rgba(255,255,255,.92)}
.contact-showcase{display:grid;grid-template-columns:1fr 1fr auto;gap:30px;align-items:center;background:#fff;border:1px solid rgba(17,24,39,.08);box-shadow:var(--shadow-soft);padding:35px;border-radius:30px}.contact-showcase>div{padding:10px 25px}.contact-showcase>div+div{border-left:1px solid #e8ebef}.contact-icon{display:block;color:var(--primary);font-size:25px}.contact-showcase h3{font-size:20px;margin:9px 0 4px}.contact-showcase p{margin:0;color:#687180}.contact-showcase-action{border:0!important}.section-spacer{position:relative;height:80px;background:#fbfaf8}.section-spacer-compact{height:35px}.section-spacer-large{height:150px}.section-spacer span{position:absolute;left:50%;top:50%;width:70px;height:2px;background:var(--primary);transform:translate(-50%,-50%)}
.cta-box-modern{position:relative;overflow:hidden;background:linear-gradient(120deg,var(--primary),color-mix(in srgb,var(--primary) 68%,#11151d));box-shadow:0 28px 70px color-mix(in srgb,var(--primary) 25%,transparent);padding:60px}.cta-box-modern h2{max-width:780px}.cta-glow{position:absolute;width:330px;height:330px;right:-120px;top:-170px;border-radius:50%;background:rgba(255,255,255,.15);filter:blur(3px)}
.floating-order-button{position:fixed;right:24px;bottom:24px;z-index:80;display:flex;align-items:center;gap:10px;background:var(--primary);color:#fff;padding:12px 18px 12px 12px;border-radius:999px;box-shadow:0 15px 40px color-mix(in srgb,var(--primary) 40%,transparent);transition:transform .25s var(--ease),opacity .25s ease}.floating-order-button:hover{transform:translateY(-4px) scale(1.02)}.floating-order-button span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.18);font-size:18px}.back-to-top{position:fixed;left:24px;bottom:24px;z-index:79;width:44px;height:44px;border-radius:50%;border:1px solid rgba(17,24,39,.12);background:#fff;box-shadow:var(--shadow-card);opacity:0;pointer-events:none;transform:translateY(10px);transition:.25s ease;cursor:pointer}.back-to-top.is-visible{opacity:1;pointer-events:auto;transform:none}.lightbox-modal{display:none;position:fixed;inset:0;z-index:500;background:rgba(5,7,10,.92);padding:60px;align-items:center;justify-content:center}.lightbox-modal.is-open{display:flex}.lightbox-modal img{max-width:min(1200px,95vw);max-height:88vh;border-radius:18px;box-shadow:0 30px 100px rgba(0,0,0,.55)}.lightbox-modal button{position:absolute;right:25px;top:20px;border:0;background:transparent;color:#fff;font-size:45px;cursor:pointer}
.footer-rich{position:relative;padding-top:75px;background:linear-gradient(155deg,#0b0e14,#141a24)}.footer-rich::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,var(--primary),transparent)}.footer-grid a{transition:color .2s ease,transform .2s ease}.footer-grid a:hover{color:#fff;transform:translateX(4px)}.cookie-banner{max-width:980px;border-radius:22px;padding:20px 22px;animation:cookieIn .5s var(--ease);z-index:300}.cookie-actions{display:flex;gap:9px;flex-shrink:0}
/* Reveal animations */
html.js-ready [data-animate]{opacity:0;transition:opacity .75s var(--ease),transform .75s var(--ease);transition-delay:var(--delay,0ms)}html.js-ready [data-animate="fade-up"]{transform:translateY(38px)}html.js-ready [data-animate="fade-in"]{transform:none}html.js-ready [data-animate="slide-left"]{transform:translateX(45px)}html.js-ready [data-animate="slide-right"]{transform:translateX(-45px)}html.js-ready [data-animate="zoom-in"]{transform:scale(.91)}html.js-ready [data-animate="none"]{opacity:1;transform:none}.is-revealed[data-animate]{opacity:1;transform:none}
/* Admin block builder */
.admin-eyebrow{display:block;color:var(--primary);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.12em;margin-bottom:5px}.block-builder-layout{display:grid;grid-template-columns:minmax(520px,1.05fr) minmax(430px,.95fr);gap:24px;align-items:start}.section-editor{padding:0;overflow:hidden}.editor-card-head{display:flex;align-items:center;justify-content:space-between;padding:23px 26px;border-bottom:1px solid #eaecf0;background:linear-gradient(135deg,#fff,#f8fafc)}.editor-card-head>div{display:flex;align-items:center;gap:15px}.editor-card-head small{font-size:10px;font-weight:900;letter-spacing:.12em;color:#98a2b3}.editor-card-head h2{margin:2px 0 0}.block-type-icon,.block-list-icon{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:color-mix(in srgb,var(--primary) 10%,#fff);color:var(--primary);font-size:23px}.editor-panel{padding:24px 26px;border-bottom:1px solid #eaecf0}.editor-panel>h3{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:#475467;margin:0 0 18px}.type-help,.items-format{margin-top:8px;padding:11px 13px;border-radius:10px;background:#f2f4f7;color:#667085;font-size:13px}.structured-items{min-height:180px}.editor-save-row{position:sticky;bottom:0;display:flex;justify-content:space-between;align-items:center;gap:18px;padding:17px 25px;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);box-shadow:0 -10px 35px rgba(16,24,40,.08);z-index:5}.switch{display:flex;align-items:center;gap:10px;font-weight:700}.switch input{position:absolute;opacity:0}.switch span{width:43px;height:24px;border-radius:99px;background:#d0d5dd;position:relative;transition:.25s}.switch span::after{content:"";position:absolute;width:18px;height:18px;border-radius:50%;background:#fff;left:3px;top:3px;transition:.25s;box-shadow:0 2px 5px rgba(0,0,0,.15)}.switch input:checked+span{background:var(--primary)}.switch input:checked+span::after{transform:translateX(19px)}.block-manager{position:sticky;top:90px}.block-manager-head{display:flex;justify-content:space-between;gap:15px;align-items:flex-start;margin-bottom:14px}.block-manager-head h2{margin:0}.block-manager-head p{margin:4px 0 0;color:#667085;font-size:13px}.block-list{display:grid;gap:10px}.block-list-item{display:grid;grid-template-columns:18px 48px 1fr auto;gap:12px;align-items:center;background:#fff;border:1px solid #e4e7ec;border-radius:17px;padding:13px;box-shadow:0 5px 18px rgba(16,24,40,.04);transition:border-color .2s,transform .2s,opacity .2s}.block-list-item:hover{border-color:color-mix(in srgb,var(--primary) 35%,#ddd);transform:translateY(-2px)}.block-list-item.is-hidden{opacity:.58;background:#f9fafb}.block-handle{color:#98a2b3;font-size:17px}.block-list-copy{min-width:0}.block-list-copy small{display:block;color:#98a2b3;font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.block-list-copy strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:2px 0 5px}.block-list-copy>div{display:flex;gap:5px;flex-wrap:wrap}.block-list-copy>div span{font-size:10px;padding:3px 6px;background:#f2f4f7;border-radius:99px;color:#667085}.block-list-copy>div .is-live{background:#ecfdf3;color:#027a48}.block-list-actions{display:flex;align-items:center;gap:4px}.block-list-actions form{display:inline-flex;margin:0}.order-actions{display:flex;border-right:1px solid #eaecf0;padding-right:5px;margin-right:2px}.order-actions button,.icon-btn{width:30px;height:30px;padding:0;border:0;border-radius:8px;background:transparent;display:grid;place-items:center;cursor:pointer;color:#475467;font-size:16px}.order-actions button:hover,.icon-btn:hover{background:#f2f4f7}.order-actions button:disabled{opacity:.25;cursor:not-allowed}.icon-btn.danger:hover{background:#fef3f2;color:#b42318}.block-field.is-hidden-field{display:none!important}
@keyframes pulseDot{0%,100%{box-shadow:0 0 0 4px rgba(126,226,168,.14)}50%{box-shadow:0 0 0 10px rgba(126,226,168,0)}}@keyframes floatOrb{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(-20px,25px,0)}}@keyframes scrollHint{0%{opacity:0;transform:translateY(0)}30%{opacity:1}100%{opacity:0;transform:translateY(18px)}}@keyframes cookieIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
@media(max-width:1100px){.block-builder-layout{grid-template-columns:1fr}.block-manager{position:static}.hero-layout{grid-template-columns:1fr}.hero-info-card{display:none}.cols-4,.cols-5{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-showcase{grid-template-columns:1fr 1fr}.contact-showcase-action{grid-column:1/-1}.gallery-mosaic.cols-4,.gallery-mosaic.cols-5{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.hero-home{min-height:auto;padding:110px 0 100px}.hero-home h1{font-size:clamp(46px,12vw,72px)}.section-space-normal{padding:75px 0}.section-space-large{padding:95px 0}.split-section{gap:45px}.section-image{height:430px}.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}.opening-card,.video-layout{grid-template-columns:1fr}.opening-visual{padding:40px}.gallery-mosaic.cols-3,.gallery-mosaic.cols-4,.gallery-mosaic.cols-5{grid-template-columns:repeat(2,1fr)}.gallery-tile:nth-child(5n+1){height:430px}.gallery-tile:nth-child(7n+3){grid-column:auto}.floating-order-button{bottom:16px;right:16px}.back-to-top{left:16px;bottom:16px}}
@media(max-width:620px){.public-body .topbar-inner{height:64px}.hero-home{padding:92px 0 92px}.hero-home::after{height:65px}.hero-home h1{font-size:45px}.hero-home p{font-size:16px}.hero-actions{display:grid}.hero-actions .btn{width:100%;justify-content:center}.hero-meta{display:grid}.section-space-compact{padding:38px 0}.section-space-normal{padding:62px 0}.section-space-large{padding:78px 0}.section-heading{margin-bottom:34px}.section-heading h2,.split-section h2,.cta-box h2{font-size:35px}.cols-2,.cols-3,.cols-4,.cols-5{grid-template-columns:1fr}.feature-card,.testimonial-card,.step-card{padding:25px}.step-card::after{display:none}.gallery-mosaic.cols-2,.gallery-mosaic.cols-3,.gallery-mosaic.cols-4,.gallery-mosaic.cols-5{grid-template-columns:1fr}.gallery-tile,.gallery-tile:nth-child(5n+1){height:310px;grid-row:auto}.timeline::before{left:8px}.timeline-item{grid-template-columns:18px 1fr;gap:14px;padding-left:0}.timeline-item time{grid-column:2;text-align:left;padding:0}.timeline-item .timeline-dot{grid-row:1/3;grid-column:1}.timeline-item div{grid-column:2}.opening-list{padding:25px}.quote-block{padding:55px 24px}.quote-block blockquote{font-size:27px}.contact-showcase{grid-template-columns:1fr;padding:22px}.contact-showcase>div{padding:12px}.contact-showcase>div+div{border-left:0;border-top:1px solid #e8ebef}.cta-box-modern{padding:34px 25px}.floating-order-button{padding:9px}.floating-order-button strong{display:none}.floating-order-button span{width:42px;height:42px}.block-builder-layout{display:block}.section-editor{margin-bottom:22px}.editor-card-head,.editor-panel{padding-left:18px;padding-right:18px}.editor-save-row{align-items:stretch;flex-direction:column}.block-list-item{grid-template-columns:15px 40px 1fr}.block-list-icon{width:40px;height:40px}.block-list-actions{grid-column:2/-1;justify-content:flex-end;border-top:1px solid #eaecf0;padding-top:8px}.cookie-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.cookie-actions .btn{width:100%}.lightbox-modal{padding:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}[data-animate]{opacity:1!important;transform:none!important}.hero-orb,.hero-scroll{display:none}}

/* Public menu and subpages */
.menu-hero{position:relative;padding:110px 0 95px;min-height:470px;background-position:center;background-size:cover;overflow:hidden}.menu-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(105deg,rgba(10,12,17,.91),rgba(10,12,17,.48))}.menu-hero-inner{position:relative;z-index:1}.menu-hero h1{font-size:clamp(45px,7vw,78px);letter-spacing:-.045em;max-width:850px}.category-nav{top:68px;padding:14px 0;background:rgba(251,250,248,.92);backdrop-filter:blur(14px);gap:9px}.category-nav a{transition:.25s var(--ease);border-color:rgba(17,24,39,.09);box-shadow:0 5px 15px rgba(16,24,40,.04)}.category-nav a:hover,.category-nav a.is-active{background:var(--primary);border-color:var(--primary);color:#fff;transform:translateY(-2px)}.menu-section-title{margin:35px 0 22px;padding-bottom:13px;border-bottom:1px solid #e6e8ec}.menu-section-title h2{font-size:clamp(30px,4vw,45px);letter-spacing:-.03em;margin:0}.product-card{padding:0;overflow:hidden;border-radius:24px;box-shadow:var(--shadow-card);border-color:rgba(17,24,39,.08);transition:transform .35s var(--ease),box-shadow .35s ease}.product-card:hover{transform:translateY(-7px);box-shadow:0 25px 60px rgba(16,24,40,.14)}.product-card>div:first-child{padding:25px}.product-card .product-img{height:100%;min-height:220px;border-radius:0;transition:transform .6s var(--ease)}.product-card:hover .product-img{transform:scale(1.045)}.product-card h3{font-size:23px}.product-card .price{font-size:22px}.product-card .btn{display:inline-flex;align-items:center;gap:8px}.page-hero-modern{position:relative;padding:115px 0 95px;overflow:hidden}.page-hero-modern::after{content:"";position:absolute;right:-90px;bottom:-140px;width:350px;height:350px;border-radius:50%;background:var(--primary);opacity:.24;filter:blur(2px)}.page-hero-modern .container{position:relative;z-index:1}.page-hero-modern h1{letter-spacing:-.045em;max-width:900px}.page-content{font-size:18px;line-height:1.8}.page-content>p:first-child{font-size:21px;color:#4b5563}.contact-layout .card{border-radius:25px;box-shadow:var(--shadow-card)}.contact-layout form.card{padding:34px}.contact-layout .contact-card{padding:34px;background:linear-gradient(145deg,#101828,#1d2939)}
@media(max-width:620px){.menu-hero{padding:85px 0 70px;min-height:390px}.menu-hero h1{font-size:44px}.category-nav{top:64px}.product-card .product-img{min-height:210px}.page-hero-modern{padding:80px 0 65px}}
.block-type-palette{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}.block-type-palette button{border:1px solid #e4e7ec;background:#fff;border-radius:12px;padding:10px 7px;display:flex;flex-direction:column;align-items:center;gap:4px;color:#475467;font-size:11px;font-weight:800;cursor:pointer;transition:.2s}.block-type-palette button span{font-size:20px;color:var(--primary)}.block-type-palette button:hover,.block-type-palette button.is-selected{background:color-mix(in srgb,var(--primary) 7%,#fff);border-color:color-mix(in srgb,var(--primary) 35%,#ddd);color:var(--primary);transform:translateY(-2px)}
@media(max-width:620px){.block-type-palette{grid-template-columns:repeat(4,1fr)}.block-type-palette button{padding:8px 4px}}

/* 2.2.1 – spokojniejszy, redakcyjny szablon restauracji */
.public-body{background:#f5f1e9;color:#29261f}
.public-body h1,.public-body h2,.public-body h3,.public-body .footer-brand{font-family:Georgia,'Times New Roman',serif;font-weight:500}
.public-body .topbar{background:#fbf8f1;border-bottom:1px solid #d8d0c3;backdrop-filter:none;box-shadow:none}
.public-body .topbar.is-scrolled{background:#fbf8f1;box-shadow:0 5px 18px rgba(45,38,28,.08)}
.public-body .topnav{font-size:14px;letter-spacing:.015em}
.public-body .topnav>a:not(.nav-order-link)::after{height:1px;bottom:-5px}
.public-body .nav-order-link{border-radius:3px;box-shadow:none;padding:10px 16px}
.public-body .nav-order-link:hover{transform:none;box-shadow:none;filter:brightness(.94)}
.public-body .btn{border-radius:3px;box-shadow:none;text-transform:none;letter-spacing:.01em}
.public-body .btn:hover{transform:none;box-shadow:none}
.public-body .hero-home{min-height:690px;padding:120px 0 100px}
.public-body .hero-home::before{background:linear-gradient(90deg,rgba(24,21,17,.90) 0%,rgba(24,21,17,.68) 55%,rgba(24,21,17,.32) 100%)}
.public-body .hero-home::after{display:none}
.public-body .hero-layout{grid-template-columns:minmax(0,720px) 330px;gap:72px}
.public-body .hero-home h1{font-size:clamp(48px,6.4vw,78px);line-height:1.02;letter-spacing:-.035em;text-shadow:none}
.public-body .hero-home p{font-size:19px;line-height:1.65;max-width:620px}
.public-body .hero-badge{padding:0;border:0;border-radius:0;background:transparent;backdrop-filter:none;font-size:11px;letter-spacing:.17em;margin-bottom:22px}
.public-body .hero-badge i{width:26px;height:1px;border-radius:0;background:#fff;box-shadow:none;animation:none}
.public-body .hero-meta{gap:0;border-top:1px solid rgba(255,255,255,.28);max-width:650px;padding-top:18px}
.public-body .hero-meta span{display:grid;gap:2px;min-width:150px;padding:0 22px 0 0;margin-right:22px;border:0;border-right:1px solid rgba(255,255,255,.25);border-radius:0;background:transparent}
.public-body .hero-meta span:last-child{border-right:0}
.public-body .hero-meta small{font-size:10px;text-transform:uppercase;letter-spacing:.12em;opacity:.68}
.public-body .hero-meta strong{font-size:14px;font-weight:600}
.public-body .hero-info-card{background:#f2eadc;color:#2e2922;border:0;border-radius:2px;backdrop-filter:none;padding:30px;box-shadow:12px 12px 0 rgba(255,255,255,.17)}
.public-body .hero-info-card::before{display:none}
.public-body .hero-info-label{padding:0;border-radius:0;background:transparent;color:var(--primary);font-size:10px;letter-spacing:.14em}
.public-body .hero-info-card strong{font-family:Georgia,'Times New Roman',serif;font-weight:500;font-size:29px}
.public-body .hero-info-card p{color:#60584d;line-height:1.65}
.public-body .hero-info-card a{border-color:#cfc4b5}
.public-body .hero-orb{display:none}
.public-body .hero-scroll{border-radius:2px;opacity:.8}
.home-intro{padding:85px 0;background:#f5f1e9;border-bottom:1px solid #ded6ca}
.home-intro-grid{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:80px;align-items:start}
.home-intro h2{font-size:clamp(38px,5vw,58px);line-height:1.06;margin:0}
.home-intro .cms-content{font-size:18px;line-height:1.8;color:#575044}
.text-link{display:inline-flex;gap:10px;margin-top:22px;padding-bottom:4px;border-bottom:1px solid currentColor;font-weight:700;color:var(--primary)}
.public-body .section-space-normal{padding:82px 0}
.public-body .section-space-large{padding:105px 0}
.public-body .section-theme-default{background:#f5f1e9}
.public-body .section-theme-white{background:#fffdf8}
.public-body .section-theme-soft{background:#e9e0d3}
.public-body .section-theme-soft .section-decoration{display:none}
.public-body .section-theme-dark{background:#24211c}
.public-body .section-heading{max-width:840px;margin-bottom:42px}
.public-body .section-heading h2,.public-body .split-section h2,.public-body .cta-box h2{font-size:clamp(38px,4.8vw,57px);letter-spacing:-.025em}
.public-body .section-heading .eyebrow{padding:0;border-radius:0;background:transparent}
.public-body .section-align-center .section-heading{text-align:left;margin-left:auto;margin-right:auto}
.public-body .feature-grid{gap:0;border-top:1px solid #cfc7bb}
.public-body .feature-card{border:0;border-right:1px solid #cfc7bb;border-radius:0;padding:32px 30px 34px;background:transparent;box-shadow:none}
.public-body .feature-card:last-child{border-right:0}
.public-body .feature-card::after{display:none}
.public-body .feature-card:hover{transform:none;box-shadow:none;border-color:#cfc7bb}
.public-body .feature-icon{width:auto;height:auto;display:block;border-radius:0;background:transparent;font-family:Georgia,'Times New Roman',serif;font-size:18px;margin-bottom:32px}
.public-body .feature-card h3{font-family:Georgia,'Times New Roman',serif;font-size:25px;font-weight:500}
.public-body .menu-preview-card,.public-body .testimonial-card,.public-body .step-card,.public-body .team-card,.public-body .stat-showcase{border-radius:3px;box-shadow:none}
.public-body .menu-preview-card:hover,.public-body .testimonial-card:hover,.public-body .step-card:hover{transform:none;box-shadow:none}
.public-body .image-frame{border-radius:2px}
.public-body .section-image{border-radius:2px;box-shadow:14px 14px 0 #d9cdbd}
.public-body .image-accent{display:none}
.public-body .gallery-tile{border-radius:2px}
.public-body .opening-card{border-radius:2px;box-shadow:none;border:1px solid #cfc7bb}
.public-body .quote-block{border-radius:0;border-left:1px solid rgba(255,255,255,.35);border-right:1px solid rgba(255,255,255,.35)}
.public-body .quote-block blockquote{font-family:Georgia,'Times New Roman',serif;font-weight:400}
.public-body .cta-box-modern{border-radius:2px;box-shadow:none}
.public-body .cta-glow{display:none}
.public-body .contact-strip{background:#e9e0d3;color:#29261f;border-top:1px solid #cfc7bb}
.public-body .footer-rich{background:#1f1c18;padding-top:68px}
.public-body .footer-rich::before{background:#766b5e}
.public-body .page-hero-modern{padding:125px 0 105px}
.public-body .page-hero-modern::after{display:none}
.public-body .page-hero-modern::before{background:linear-gradient(90deg,rgba(26,23,18,.88),rgba(26,23,18,.42))}
.public-body .page-hero-modern h1{font-size:clamp(48px,7vw,82px);font-weight:500}
.public-body .page-hero-modern p{max-width:650px;font-size:18px;line-height:1.7;color:rgba(255,255,255,.82)}
.about-page-section{padding:90px 0 110px;background:#f5f1e9}
.about-page-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(270px,.65fr);gap:80px;align-items:start}
.about-story{font-size:18px;line-height:1.85}
.about-story .about-lead{font-family:Georgia,'Times New Roman',serif;font-size:clamp(26px,3vw,38px);line-height:1.35;color:#302b24;margin-bottom:55px}
.about-story h2{font-size:38px;margin-top:58px;margin-bottom:18px}
.about-values{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:42px 0;border-top:1px solid #cfc7bb;border-bottom:1px solid #cfc7bb}
.about-values>div{padding:25px 22px;border-right:1px solid #cfc7bb}
.about-values>div:last-child{border-right:0}
.about-values strong,.about-values span{display:block}
.about-values strong{font-family:Georgia,'Times New Roman',serif;font-size:20px;margin-bottom:8px}
.about-values span{font-size:14px;color:#6d655a}
.about-side-card{position:sticky;top:100px;background:#e9e0d3;padding:34px;border-top:4px solid var(--primary)}
.about-side-card h2{font-size:34px;margin:5px 0 15px}
.about-side-card p{color:#625b50;line-height:1.7}
.about-side-card dl{margin:28px 0}
.about-side-card dl>div{padding:15px 0;border-top:1px solid #cbc0b1}
.about-side-card dt{font-size:10px;text-transform:uppercase;letter-spacing:.13em;color:#7a7165}
.about-side-card dd{margin:5px 0 0;font-weight:600}
.public-body .page-content>p:first-child{color:#575044}
.public-body .contact-layout .card{border-radius:2px;box-shadow:none}
.public-body .contact-layout .contact-card{background:#24211c}
@media(max-width:900px){.public-body .hero-layout,.home-intro-grid,.about-page-grid{grid-template-columns:1fr}.public-body .hero-info-card{display:block;max-width:520px}.about-side-card{position:static}.about-values{grid-template-columns:1fr}.about-values>div{border-right:0;border-bottom:1px solid #cfc7bb}.about-values>div:last-child{border-bottom:0}}
@media(max-width:620px){.public-body .hero-home{padding:92px 0 76px}.public-body .hero-home h1{font-size:46px}.public-body .hero-meta{display:grid;gap:12px}.public-body .hero-meta span{border-right:0;margin:0;padding:0}.public-body .hero-info-card{box-shadow:7px 7px 0 rgba(255,255,255,.14)}.home-intro{padding:62px 0}.home-intro-grid{gap:30px}.public-body .feature-grid{display:grid}.public-body .feature-card{border-right:0;border-bottom:1px solid #cfc7bb}.public-body .feature-card:last-child{border-bottom:0}.about-page-section{padding:65px 0}.about-page-grid{gap:45px}.about-values{display:block}}

/* 2.2.2 — szybki koszyk i karta produktu */
.cart-nav-link{display:flex!important;align-items:center;gap:9px;padding:7px 9px;border:1px solid rgba(17,24,39,.1);border-radius:12px;background:#fff;min-width:126px;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.public-body .topnav>.cart-nav-link::after{display:none}.cart-nav-link:hover{border-color:color-mix(in srgb,var(--primary) 35%,#d0d5dd);box-shadow:0 8px 20px rgba(16,24,40,.08);transform:translateY(-1px)}.cart-nav-icon{font-size:18px}.cart-nav-copy{display:flex;flex-direction:column;line-height:1.05}.cart-nav-copy small{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#667085}.cart-nav-copy strong{font-size:13px;white-space:nowrap}.cart-nav-link .pill{margin-left:auto;min-width:23px;height:23px;display:grid;place-items:center;padding:0 6px}.cart-nav-link.cart-bump{animation:cartBump .4s ease}.pill.is-empty{background:#e4e7ec;color:#667085}@keyframes cartBump{45%{transform:scale(1.07)}100%{transform:scale(1)}}

.product-grid{align-items:stretch}.product-card-fast{display:grid;grid-template-columns:190px minmax(0,1fr);gap:0;min-height:245px}.product-card-fast .product-card-media{display:block;overflow:hidden;background:#ece7e0}.product-card-fast .product-img{position:relative;min-height:100%;height:100%;border-radius:0}.product-card-copy{padding:24px;display:flex;flex-direction:column;min-width:0}.product-title-link{display:block}.product-title-link h3{margin-bottom:8px;transition:color .2s ease}.product-title-link:hover h3{color:var(--primary)}.product-card-description{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin:0 0 11px}.product-card-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-top:auto;padding-top:16px}.product-card-footer>div:first-child{display:flex;flex-direction:column;align-items:flex-start}.product-card-footer small{font-size:10px;color:#98a2b3;margin-top:2px}.product-add-button{min-width:112px;padding:11px 14px}.product-add-button b{font-size:20px;line-height:1;font-weight:500}.product-details-link{display:inline-flex;align-items:center;gap:6px;margin-top:14px;font-size:12px;color:#667085;width:max-content}.product-details-link:hover{color:var(--primary)}.product-image-action{position:absolute;left:50%;bottom:16px;transform:translate(-50%,12px);background:rgba(255,255,255,.94);color:#1d2939;padding:7px 12px;border-radius:99px;font-size:12px;font-weight:750;opacity:0;transition:.25s ease;white-space:nowrap}.product-card:hover .product-image-action{opacity:1;transform:translate(-50%,0)}.promo-chip{position:absolute;top:14px;left:14px;background:var(--primary);color:#fff;border-radius:99px;padding:5px 9px;font-size:11px;font-weight:800;z-index:2}

.product-modal{position:fixed;inset:0;z-index:700;display:grid;place-items:center;padding:24px;opacity:0;visibility:hidden;transition:opacity .22s ease,visibility .22s ease}.product-modal.is-open{opacity:1;visibility:visible}.product-modal-backdrop{position:absolute;inset:0;background:rgba(12,15,20,.74);backdrop-filter:blur(5px)}.product-modal>[data-product-modal-content]{position:relative;width:min(940px,100%);max-height:calc(100vh - 48px);overflow:auto;border-radius:22px;box-shadow:0 35px 100px rgba(0,0,0,.35);transform:translateY(16px) scale(.985);transition:transform .25s ease}.product-modal.is-open>[data-product-modal-content]{transform:none}.product-modal.is-loading>[data-product-modal-content]{display:none}.product-modal-loader{position:relative;z-index:2;background:#fff;border-radius:18px;padding:24px 30px;display:flex;align-items:center;gap:13px;box-shadow:0 25px 70px rgba(0,0,0,.25)}.product-modal-loader[hidden]{display:none}.product-modal-loader span,.button-spinner{width:19px;height:19px;border:2px solid #d0d5dd;border-top-color:var(--primary);border-radius:50%;animation:cartSpin .75s linear infinite}.product-modal-loader p{margin:0;font-weight:700}@keyframes cartSpin{to{transform:rotate(360deg)}}body.modal-open{overflow:hidden}.product-modal-dialog{position:relative;background:#fff;display:grid;grid-template-columns:minmax(300px,42%) minmax(0,1fr);min-height:560px}.product-modal-close{position:absolute;right:16px;top:16px;z-index:5;width:40px;height:40px;border:0;border-radius:50%;background:rgba(255,255,255,.94);box-shadow:0 5px 16px rgba(16,24,40,.15);font-size:27px;line-height:1;cursor:pointer}.product-modal-media{min-height:100%;background:#e9e4dd}.product-modal-media img{width:100%;height:100%;object-fit:cover;display:block}.product-modal-content{padding:34px 36px}.product-modal-content h2{font-family:Georgia,'Times New Roman',serif;font-size:38px;line-height:1.08;letter-spacing:-.025em;margin:7px 0 10px}.product-modal-description{color:#667085;font-size:16px;margin:0 0 15px}.product-allergens{font-size:12px;color:#667085;border-top:1px solid #eaecf0;border-bottom:1px solid #eaecf0;padding:10px 0;margin:14px 0 20px}.product-option-group{border:0;padding:0;margin:0 0 19px}.product-option-group legend{width:100%;display:flex;align-items:center;justify-content:space-between;font-weight:800;margin-bottom:8px}.product-option-group legend small{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:#667085;font-weight:650}.product-option-choice{display:block;margin:7px 0;cursor:pointer}.product-option-choice input{position:absolute;opacity:0;pointer-events:none}.product-option-choice span{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;border:1px solid #e1e5ea;border-radius:10px;transition:.18s ease}.product-option-choice span::before{content:"";width:17px;height:17px;border:1px solid #c4cbd4;border-radius:50%;box-shadow:inset 0 0 0 4px #fff;flex:0 0 auto}.product-option-choice b{font-weight:650;margin-right:auto}.product-option-choice em{font-style:normal;font-size:12px;color:#667085}.product-option-choice input[type=checkbox]+span::before{border-radius:5px}.product-option-choice input:checked+span{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 5%,#fff)}.product-option-choice input:checked+span::before{background:var(--primary);border-color:var(--primary)}.option-limit{display:block;color:#98a2b3;font-size:11px;margin-top:6px}.product-modal-bottom{position:sticky;bottom:-34px;background:#fff;display:grid;grid-template-columns:auto minmax(230px,1fr);gap:12px;padding:16px 0 0;margin-top:10px;border-top:1px solid #eaecf0}.quantity-stepper{height:48px;display:grid;grid-template-columns:40px 45px 40px;border:1px solid #d0d5dd;border-radius:11px;overflow:hidden;background:#fff}.quantity-stepper button{border:0;background:#f7f8fa;font-size:20px;cursor:pointer}.quantity-stepper button:hover{background:#eef0f3}.quantity-stepper input{width:100%;border:0;text-align:center;font:700 15px inherit;appearance:textfield}.quantity-stepper input::-webkit-outer-spin-button,.quantity-stepper input::-webkit-inner-spin-button{appearance:none;margin:0}.product-add-submit{height:48px;justify-content:space-between;padding-left:19px;padding-right:19px}.product-add-submit strong{padding-left:15px;border-left:1px solid rgba(255,255,255,.3)}.btn.is-loading{opacity:.78;cursor:wait}.button-spinner{border-color:rgba(255,255,255,.4);border-top-color:#fff;width:17px;height:17px}

.cart-toast{position:fixed;right:24px;top:88px;z-index:850;width:min(410px,calc(100vw - 32px));display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:12px;background:#18211d;color:#fff;padding:13px 14px;border-radius:14px;box-shadow:0 18px 50px rgba(0,0,0,.22);opacity:0;visibility:hidden;transform:translateY(-12px);transition:.25s ease}.cart-toast.is-visible{opacity:1;visibility:visible;transform:none}.cart-toast.is-error{background:#8f241d}.cart-toast-icon{width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.13);display:grid;place-items:center;font-weight:800}.cart-toast div{display:flex;flex-direction:column}.cart-toast small{color:rgba(255,255,255,.72);margin-top:2px}.cart-toast a{font-size:12px;font-weight:800;border-left:1px solid rgba(255,255,255,.18);padding-left:12px;white-space:nowrap}

.quantity-stepper-small{height:39px;grid-template-columns:31px 38px 31px}.quantity-stepper-small button{font-size:17px}.cart-row-price{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:5px}.cart-remove-button{border:0;background:transparent;color:#98a2b3;font-size:11px;cursor:pointer;padding:0}.cart-remove-button:hover{color:#b42318}.cart-items-card.is-updating{opacity:.7;pointer-events:none}.cart-auto-note{display:flex;align-items:center;gap:7px;color:#667085;font-size:12px;margin-top:17px}.cart-auto-note span{color:#027a48;font-weight:800}

@media(max-width:900px){.cart-nav-link{width:100%;justify-content:flex-start}.product-card-fast{grid-template-columns:155px minmax(0,1fr)}.product-modal-dialog{grid-template-columns:36% 1fr}.product-modal-content{padding:30px 28px}}
@media(max-width:680px){.product-grid{gap:14px}.product-card-fast{grid-template-columns:116px minmax(0,1fr);min-height:185px;border-radius:16px}.product-card-fast .product-img{min-height:100%}.product-card-copy{padding:16px}.product-card-copy h3{font-size:18px;margin-bottom:5px}.product-card-description{-webkit-line-clamp:2;font-size:13px}.product-card-copy .tags{display:none}.product-card-footer{align-items:center;padding-top:9px}.product-card-footer .price{font-size:17px}.product-card-footer small,.product-card-footer .old-price{display:none}.product-add-button{min-width:46px;width:46px;height:42px;padding:0}.product-add-button span{display:none}.product-details-link{display:none}.product-image-action{display:none}.product-modal{padding:0;align-items:end}.product-modal>[data-product-modal-content]{width:100%;max-height:94vh;border-radius:20px 20px 0 0}.product-modal-dialog{display:block;min-height:0}.product-modal-media{height:230px}.product-modal-content{padding:24px 19px 28px}.product-modal-content h2{font-size:31px}.product-modal-bottom{bottom:-28px;grid-template-columns:115px 1fr}.quantity-stepper{grid-template-columns:35px 43px 35px}.product-add-submit{padding:0 13px}.product-add-submit strong{font-size:12px;padding-left:9px}.cart-toast{right:16px;top:auto;bottom:16px;grid-template-columns:34px 1fr}.cart-toast a{grid-column:2;border:0;padding:0}.cart-row{grid-template-columns:1fr auto}.cart-row-price{grid-column:1/-1;flex-direction:row;justify-content:space-between;align-items:center}.cart-row .quantity-stepper{grid-row:1;grid-column:2}.cart-nav-copy{display:flex}}
@media(prefers-reduced-motion:reduce){.cart-nav-link.cart-bump,.product-modal-loader span,.button-spinner{animation:none}.product-modal,.product-modal>[data-product-modal-content],.cart-toast{transition:none}}
.mobile-header-actions{display:flex;align-items:center;gap:8px}.mobile-cart-summary{display:none;position:relative;align-items:center;gap:7px;border:1px solid #e1e5ea;border-radius:10px;padding:7px 10px;background:#fff;font-size:12px}.mobile-cart-summary i{position:absolute;right:-5px;top:-7px;min-width:19px;height:19px;padding:0 4px;border-radius:99px;background:var(--primary);color:#fff;display:grid;place-items:center;font-size:10px;font-style:normal}.mobile-cart-summary.cart-bump{animation:cartBump .4s ease}@media(max-width:900px){.mobile-cart-summary{display:flex}.topnav.open a{display:flex!important}.topnav.open .cart-nav-link{display:flex!important}}

/* 2.3.0 — nowoczesny szablon, logo, mapa i języki */
.public-body{background:#f7f4ee;color:#22201c}
.public-body .container{width:min(1320px,calc(100% - 42px))}
.topbar{background:rgba(250,248,243,.94);border-bottom:1px solid rgba(57,50,42,.12);backdrop-filter:blur(16px)}
.topbar-inner{min-height:82px;gap:24px}
.brand{flex:0 0 auto;min-width:190px}
.site-logo{display:block;width:auto;height:58px;max-width:310px;object-fit:contain}
.topnav{margin-left:auto;gap:4px;align-items:center}
.topnav>a:not(.nav-order-link):not(.cart-nav-link){padding:11px 12px;font-size:14px;font-weight:650;white-space:nowrap}
.topnav>.nav-order-link{order:99;margin-left:8px;border-radius:10px;padding:13px 18px!important;background:var(--primary);color:#fff!important;box-shadow:none;white-space:nowrap}
.topnav>.nav-order-link:hover{transform:translateY(-1px);filter:brightness(.96)}
.cart-nav-link{border:0;border-radius:9px;background:transparent;min-width:auto;padding:7px 9px;box-shadow:none}
.cart-nav-link:hover{background:#fff;box-shadow:none;transform:none}
.simple-cart-icon{display:grid;place-items:center;width:23px;height:23px;color:#29251f}
.simple-cart-icon svg{display:block;width:22px;height:22px}
.cart-nav-copy small{display:none}.cart-nav-copy strong{font-size:13px}.cart-nav-link .pill{background:#29251f;color:#fff}
.mobile-cart-summary .simple-cart-icon{width:21px;height:21px}.mobile-cart-summary>strong{font-size:11px}
.language-switcher{display:flex;align-items:center;gap:2px;padding:3px;border:1px solid rgba(57,50,42,.14);border-radius:8px;margin:0 5px}
.language-switcher a{display:grid;place-items:center;min-width:29px;height:27px;border-radius:6px;font-size:10px;font-weight:800;color:#6b6257}
.language-switcher a.active{background:#29251f;color:#fff}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.public-body .hero-home{min-height:720px;padding:145px 0 105px;background-position:center;background-size:cover}
.public-body .hero-home::before{background:linear-gradient(90deg,rgba(20,18,15,.88) 0%,rgba(20,18,15,.65) 48%,rgba(20,18,15,.18) 100%)}
.public-body .hero-layout{grid-template-columns:minmax(0,1.2fr) minmax(320px,.58fr);gap:70px}
.public-body .hero-home h1{font-size:clamp(58px,7vw,94px);line-height:.98;max-width:900px;letter-spacing:-.045em}
.public-body .hero-home p{font-size:clamp(18px,1.7vw,22px);line-height:1.65;max-width:690px}
.public-body .hero-info-card{border-radius:4px;background:rgba(248,245,238,.96);color:#26221d;padding:34px;box-shadow:18px 18px 0 rgba(255,255,255,.13)}
.public-body .hero-actions .btn{min-height:54px;padding:15px 24px;border-radius:7px}
.public-body .home-intro{padding:105px 0}
.public-body .home-intro h2{font-size:clamp(46px,5.3vw,70px)}
.public-body .home-intro .cms-content{font-size:20px}
.public-body .section-heading h2,.public-body .split-section h2,.public-body .cta-box h2{font-size:clamp(44px,5vw,68px);line-height:1.04}
.public-body .split-section{gap:80px}.public-body .split-copy .cms-content{font-size:18px;line-height:1.85}
.public-body .section-image{min-height:500px;object-fit:cover}
.public-body .menu-preview-grid{gap:22px}
.public-body .menu-preview-card{overflow:hidden;background:#fff;border:0}
.public-body .menu-preview-image{height:270px}.public-body .menu-preview-image img{transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.public-body .menu-preview-card:hover .menu-preview-image img{transform:scale(1.035)}
.public-body .menu-preview-body{padding:24px}.public-body .menu-preview-body h3{font-size:27px}
.public-body .gallery-mosaic{display:grid;grid-template-columns:1.25fr .75fr .75fr;grid-auto-rows:250px;gap:14px}
.public-body .gallery-tile{height:auto;min-height:0;overflow:hidden}.public-body .gallery-tile:first-child{grid-row:span 2}.public-body .gallery-tile img{width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2,.7,.2,1)}
.public-body .gallery-tile:hover img{transform:scale(1.035)}
.public-body .quote-block,.public-body .section-quote{display:none!important}
.home-map-section{padding:95px 0 0;background:#f7f4ee;border-top:1px solid #d8d0c5}
.home-map-head{display:flex;align-items:end;justify-content:space-between;gap:30px;padding-bottom:34px}
.home-map-head h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(42px,5vw,66px);line-height:1.02;margin:6px 0 12px;font-weight:500}
.home-map-head p{margin:0;color:#665f55;font-size:18px}
.home-map-frame{height:520px;background:#ddd6cc;overflow:hidden}
.home-map-frame iframe{width:100%;height:100%;border:0;display:block;filter:saturate(.86) contrast(.96)}
.footer-logo{display:block;width:min(290px,100%);height:auto;max-height:82px;object-fit:contain;object-position:left center;margin-bottom:23px;filter:brightness(0) invert(1);opacity:.94}
.footer-order-link{margin-top:8px!important;font-weight:800!important;color:#fff!important}
.footer-order-link span{margin-left:5px}
.translation-editor{margin:26px 0;padding:24px;border:1px solid #d9dee5;background:#fafbfc;border-radius:14px}
.translation-editor>h3{margin:0 0 18px}.translation-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.translation-grid fieldset{border:1px solid #dde2e8;border-radius:12px;padding:18px;background:#fff}.translation-grid legend{font-weight:800;padding:0 8px}
.map-settings-preview{padding:22px;border-radius:12px;background:#f3eee6;border-left:4px solid var(--primary)}.map-settings-preview p{margin-bottom:0;color:#6b6258}
[data-animate]{transition-duration:.7s!important;transition-timing-function:cubic-bezier(.2,.7,.2,1)!important}
.floating-order-button{border-radius:8px;box-shadow:0 10px 32px rgba(30,25,20,.2)}
@media(max-width:1180px){.topnav>a:not(.nav-order-link):not(.cart-nav-link){padding:10px 8px}.site-logo{height:52px;max-width:250px}.cart-nav-copy{display:none}.cart-nav-link{padding:8px}.language-switcher{margin:0}}
@media(max-width:900px){.topbar-inner{min-height:72px}.site-logo{height:48px;max-width:220px}.topnav{align-items:stretch}.topnav>.nav-order-link{order:99;margin:5px 0 0;justify-content:space-between}.language-switcher{display:flex;margin:6px 0;padding:5px;width:max-content}.cart-nav-link{display:none!important}.public-body .hero-home{min-height:auto;padding:112px 0 85px}.public-body .hero-layout{grid-template-columns:1fr;gap:38px}.public-body .hero-home h1{font-size:clamp(50px,12vw,72px)}.public-body .gallery-mosaic{grid-template-columns:1fr 1fr;grid-auto-rows:210px}.public-body .gallery-tile:first-child{grid-column:span 2;grid-row:span 1}.home-map-frame{height:430px}.translation-grid{grid-template-columns:1fr}}
@media(max-width:620px){.public-body .container{width:min(100% - 28px,1320px)}.site-logo{height:42px;max-width:180px}.brand{min-width:0}.mobile-cart-summary>strong{display:none}.public-body .hero-home{padding:92px 0 70px}.public-body .hero-home h1{font-size:48px}.public-body .hero-home p{font-size:17px}.public-body .hero-info-card{padding:25px;box-shadow:9px 9px 0 rgba(255,255,255,.14)}.public-body .section-space-normal,.public-body .section-space-large{padding:70px 0}.public-body .section-heading h2,.public-body .split-section h2,.public-body .cta-box h2{font-size:41px}.public-body .section-image{min-height:350px}.public-body .gallery-mosaic{display:grid;grid-template-columns:1fr;grid-auto-rows:245px}.public-body .gallery-tile:first-child{grid-column:auto}.home-map-head{display:block}.home-map-head .text-link{margin-top:20px}.home-map-frame{height:360px}.footer-logo{max-width:230px}.translation-editor{padding:16px}}


/* 2.4.0 — editorial restaurant theme, configurable accents and richer photography */
:root{--accent:#c8a56a;--dark:#24211c;--paper:#f6f2eb;--ink:#24211c;--line:color-mix(in srgb,var(--dark) 14%,transparent)}
.public-body{background:var(--paper);color:var(--ink)}
.public-body::selection{background:var(--accent);color:var(--dark)}
.public-body .eyebrow{color:color-mix(in srgb,var(--primary) 78%,var(--dark));letter-spacing:.18em}
.public-body .topbar{background:color-mix(in srgb,var(--paper) 94%,transparent);border-color:var(--line);box-shadow:none;transition:min-height .35s ease,background .35s ease,box-shadow .35s ease}
.public-body .topbar.is-scrolled{background:color-mix(in srgb,var(--paper) 97%,transparent);box-shadow:0 14px 35px rgba(28,24,19,.07)}
.public-body .topbar.is-scrolled .topbar-inner{min-height:70px}
.topnav{display:flex;align-items:center;gap:14px}.main-nav-links,.nav-tools{display:flex;align-items:center;gap:2px}
.main-nav-links>a{position:relative;padding:12px 11px;font-size:14px;font-weight:650;white-space:nowrap}
.main-nav-links>a::after{content:"";position:absolute;left:11px;right:11px;bottom:5px;height:1px;background:var(--primary);transform:scaleX(0);transform-origin:right;transition:transform .32s cubic-bezier(.2,.7,.2,1)}
.main-nav-links>a:hover::after,.main-nav-links>.contact-nav-link::after{transform:scaleX(1);transform-origin:left}
.main-nav-links>.contact-nav-link{margin-left:5px}
.nav-tools{gap:6px}.nav-admin-link{font-size:12px;font-weight:800;color:color-mix(in srgb,var(--dark) 65%,transparent);padding:8px}
.topnav>.nav-order-link{position:relative;overflow:hidden;background:var(--primary);border:1px solid color-mix(in srgb,var(--primary) 86%,#000);box-shadow:0 10px 26px color-mix(in srgb,var(--primary) 22%,transparent)}
.topnav>.nav-order-link::before{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 20%,rgba(255,255,255,.2) 48%,transparent 72%);transform:translateX(-130%);transition:transform .65s ease}
.topnav>.nav-order-link:hover::before{transform:translateX(130%)}
.cart-nav-link .pill,.mobile-cart-summary i{background:var(--accent);color:var(--dark)}
.language-switcher a.active{background:var(--dark)}
.public-body .hero-home{position:relative;isolation:isolate;min-height:760px;background-color:var(--dark);animation:heroEntrance 1.1s cubic-bezier(.2,.7,.2,1) both}
.public-body .hero-home::before{background:linear-gradient(90deg,color-mix(in srgb,var(--dark) 94%,transparent) 0%,color-mix(in srgb,var(--dark) 68%,transparent) 49%,color-mix(in srgb,var(--dark) 12%,transparent) 100%)}
.public-body .hero-home::after{content:"";position:absolute;z-index:-1;left:0;right:0;bottom:0;height:8px;background:linear-gradient(90deg,var(--primary) 0 35%,var(--accent) 35% 57%,transparent 57%)}
@keyframes heroEntrance{from{opacity:.82}to{opacity:1}}
.public-body .hero-badge{border:0;border-left:2px solid var(--accent);border-radius:0;background:transparent;padding:6px 0 6px 13px}.public-body .hero-badge i{display:none}
.public-body .hero-actions .btn{border-radius:2px;transition:transform .3s ease,box-shadow .3s ease}.public-body .hero-actions .btn:hover{transform:translateY(-3px)}
.public-body .btn-primary{background:var(--primary)}.public-body .btn-glass{border-color:rgba(255,255,255,.55)}
.public-body .hero-info-card{border-top:5px solid var(--accent);box-shadow:18px 18px 0 color-mix(in srgb,var(--accent) 35%,transparent)}
.public-body .hero-info-card>a,.public-body .text-link{color:var(--primary)}
.home-photo-ribbon{position:relative;margin-top:-40px;z-index:5;padding:0 20px 38px;background:linear-gradient(to bottom,transparent 0 40px,var(--paper) 40px)}
.photo-ribbon-track{width:min(1460px,100%);margin:auto;display:grid;grid-template-columns:1.28fr .74fr .92fr .72fr;gap:10px;align-items:end}
.photo-ribbon-track figure{position:relative;margin:0;overflow:hidden;background:#d9d0c5;height:240px;clip-path:inset(0 0 100% 0);transition:clip-path .9s cubic-bezier(.2,.7,.2,1) var(--reveal-delay,0ms),transform .55s cubic-bezier(.2,.7,.2,1)}
.photo-ribbon-track figure:nth-child(2){height:190px}.photo-ribbon-track figure:nth-child(3){height:290px}.photo-ribbon-track figure:nth-child(4){height:215px}
.photo-ribbon-track figure.is-revealed{clip-path:inset(0)}.photo-ribbon-track figure:hover{transform:translateY(-8px)}
.photo-ribbon-track img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .75s cubic-bezier(.2,.7,.2,1),filter .5s ease;filter:saturate(.9) contrast(1.02)}
.photo-ribbon-track figure:hover img{transform:scale(1.045);filter:saturate(1)}
.photo-ribbon-track figcaption{position:absolute;left:14px;right:14px;bottom:12px;color:#fff;text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:800;text-shadow:0 2px 12px rgba(0,0,0,.7)}
.public-body .home-intro{padding-top:90px}.public-body .home-intro-grid{border-top:1px solid var(--line);padding-top:70px}
.public-body .home-intro h2,.public-body .section-heading h2,.public-body .split-section h2,.public-body .cta-box h2,.home-map-head h2{font-weight:500;letter-spacing:-.04em}
.public-body .home-section{position:relative}.public-body .home-section::before{content:"";position:absolute;left:max(20px,calc((100vw - 1320px)/2));top:0;width:52px;height:1px;background:var(--accent);opacity:.9}
.public-body .feature-card,.public-body .menu-preview-card,.public-body .testimonial-card{border-radius:2px;box-shadow:none;border:1px solid var(--line)}
.public-body .feature-grid{counter-reset:feature-card}.public-body .feature-card{position:relative;padding-top:72px;counter-increment:feature-card}.public-body .feature-card::before{content:counter(feature-card,decimal-leading-zero);position:absolute;left:28px;top:26px;color:var(--accent);font-family:Georgia,'Times New Roman',serif;font-size:28px}
.public-body .menu-preview-image{height:330px}.public-body .menu-preview-card{transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s ease}.public-body .menu-preview-card:hover{transform:translateY(-10px);box-shadow:0 25px 65px rgba(35,29,22,.12)}
.public-body .gallery-mosaic{gap:8px}.public-body .gallery-tile{border-radius:0}.public-body .gallery-tile::after{content:"";position:absolute;inset:auto 0 0;height:35%;background:linear-gradient(transparent,rgba(22,18,14,.55));opacity:0;transition:opacity .4s}.public-body .gallery-tile:hover::after{opacity:1}
.public-body .split-section .section-image{border-radius:1px;box-shadow:22px 22px 0 color-mix(in srgb,var(--accent) 28%,transparent)}
.public-body .cta-box-modern,.public-body .cta-box{border-radius:2px;background:var(--dark);position:relative;overflow:hidden}.public-body .cta-box-modern::after,.public-body .cta-box::after{content:"";position:absolute;right:-60px;top:-90px;width:220px;height:220px;border:1px solid color-mix(in srgb,var(--accent) 55%,transparent);border-radius:50%}
.public-body .opening-list{border-radius:2px;border-top:5px solid var(--accent)}
.home-map-section{background:var(--paper);border-top:1px solid var(--line)}.home-map-frame{height:580px}.home-map-frame iframe{filter:saturate(.72) contrast(1.02)}
.contact-strip{background:color-mix(in srgb,var(--accent) 24%,var(--paper))!important;color:var(--dark)!important;border-color:var(--line)!important}
.footer-rich{background:var(--dark)!important}.footer-rich a:hover{color:var(--accent)}.footer-contact-link{padding-bottom:10px;border-bottom:1px solid color-mix(in srgb,var(--accent) 45%,transparent)}
.footer-order-link{display:inline-flex!important;margin-top:16px!important;padding:12px 15px!important;background:var(--primary);color:#fff!important;border-radius:2px}
.footer-bottom{border-color:color-mix(in srgb,var(--accent) 25%,transparent)}
[data-animate].is-revealed{transition-delay:var(--reveal-delay,0ms)!important}
[data-animate="image-reveal"]{opacity:1!important;transform:none!important}
.theme-color-settings{margin-top:20px;padding:22px;border:1px solid #dde1e7;background:#faf8f4;border-radius:14px}.theme-color-settings h3{margin-top:0}.theme-color-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.theme-palette-presets{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:4px 0 20px}.theme-palette-presets>span{font-size:12px;font-weight:800;color:#667085}.theme-palette-presets button{width:52px;height:30px;padding:0;border:1px solid #d5d9df;border-radius:8px;cursor:pointer;background:linear-gradient(90deg,var(--palette-a) 0 34%,var(--palette-b) 34% 67%,var(--palette-c) 67%)}
.theme-live-preview{--preview-primary:#a9432f;--preview-accent:#c8a56a;--preview-dark:#24211c;overflow:hidden;border-radius:10px;border:1px solid #d9dde3;background:#fff}.theme-preview-hero{min-height:90px;background:var(--preview-dark);color:#fff;padding:18px;display:flex;align-items:center;justify-content:space-between;gap:15px}.theme-preview-hero span{font-family:Georgia,'Times New Roman',serif;font-size:21px}.theme-preview-hero button{border:0;background:var(--preview-primary);color:#fff;padding:10px 14px;border-radius:3px;font-weight:800}.theme-preview-detail{display:grid;grid-template-columns:auto 1fr;gap:2px 9px;padding:14px}.theme-preview-detail i{grid-row:1/3;width:10px;height:38px;background:var(--preview-accent)}.theme-preview-detail small{color:#667085}
@media(max-width:1120px){.topnav{gap:6px}.main-nav-links>a{padding-left:7px;padding-right:7px}.main-nav-links>a::after{left:7px;right:7px}.photo-ribbon-track{grid-template-columns:1.2fr .8fr 1fr}.photo-ribbon-track figure:nth-child(4){display:none}}
@media(max-width:900px){.topnav.open{display:flex;flex-direction:column;align-items:stretch}.main-nav-links,.nav-tools{display:flex;flex-direction:column;align-items:stretch}.main-nav-links>a,.nav-admin-link{display:flex!important;padding:12px 8px}.main-nav-links>.contact-nav-link{margin-left:0}.nav-tools{border-top:1px solid var(--line);padding-top:8px;margin-top:5px}.topnav>.nav-order-link{width:100%;margin-top:8px}.photo-ribbon-track{grid-template-columns:1.3fr .7fr}.photo-ribbon-track figure:nth-child(3),.photo-ribbon-track figure:nth-child(4){display:none}.theme-color-grid{grid-template-columns:1fr}}
@media(max-width:620px){.home-photo-ribbon{margin-top:-22px;padding-left:10px;padding-right:10px}.photo-ribbon-track{grid-template-columns:1fr .72fr;gap:6px}.photo-ribbon-track figure{height:170px}.photo-ribbon-track figure:nth-child(2){height:135px}.public-body .hero-home{min-height:660px}.public-body .menu-preview-image{height:260px}.home-map-frame{height:430px}}
@media(prefers-reduced-motion:reduce){.public-body .hero-home{animation:none}.photo-ribbon-track figure,.photo-ribbon-track img,.public-body .menu-preview-card,.topnav>.nav-order-link::before{transition:none!important}.photo-ribbon-track figure{clip-path:none!important}}
.editorial-reveal{opacity:0;transform:translateY(24px);transition:opacity .7s cubic-bezier(.2,.7,.2,1) var(--reveal-delay,0ms),transform .7s cubic-bezier(.2,.7,.2,1) var(--reveal-delay,0ms)}
.editorial-reveal.is-editorial-visible{opacity:1;transform:none}
.public-body .section-heading .eyebrow::after{content:"";display:inline-block;width:34px;height:1px;background:var(--accent);margin:0 0 3px 12px;transition:width .45s ease}
.public-body .home-section:hover .section-heading .eyebrow::after{width:58px}
@media(prefers-reduced-motion:reduce){.editorial-reveal{opacity:1;transform:none;transition:none}}

/* 2.5.0 — soft modern bistro theme, stronger contrast and contemporary motion */
:root{--modern-radius:30px;--modern-radius-lg:44px;--modern-shadow:0 24px 70px rgba(34,29,24,.11);--modern-shadow-hover:0 34px 90px rgba(34,29,24,.17)}
.public-body{background:#f8f6f1;color:var(--ink);overflow-x:hidden}
.public-body h1,.public-body h2,.public-body h3,.public-body .footer-brand{font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif}
.public-body h1,.public-body h2{font-weight:650;letter-spacing:-.045em;text-wrap:balance}
.public-body .eyebrow{font-size:11px;letter-spacing:.17em;font-weight:850}

/* Light, floating navigation */
.public-body .topbar{background:rgba(250,248,243,.82);border-bottom:1px solid rgba(37,32,27,.08);backdrop-filter:blur(20px) saturate(1.25);box-shadow:0 8px 30px rgba(37,32,27,.035)}
.public-body .topbar.is-scrolled{background:rgba(250,248,243,.95);box-shadow:0 14px 45px rgba(37,32,27,.09)}
.public-body .topbar-inner{min-height:78px;transition:min-height .35s cubic-bezier(.2,.7,.2,1)}
.public-body .topbar.is-scrolled .topbar-inner{min-height:68px}
.public-body .main-nav-links>a{padding:10px 12px;border-radius:999px;transition:background .25s ease,color .25s ease,transform .25s ease}
.public-body .main-nav-links>a:hover{background:color-mix(in srgb,var(--primary) 8%,transparent);color:var(--primary);transform:translateY(-1px)}
.public-body .main-nav-links>a::after{display:none}
.public-body .topnav>.nav-order-link{border-radius:999px;padding:12px 19px;box-shadow:0 12px 30px color-mix(in srgb,var(--primary) 25%,transparent)}
.public-body .cart-nav-link{border-radius:999px;background:rgba(255,255,255,.72);border-color:rgba(37,32,27,.09);box-shadow:none}
.public-body .language-switcher{border-radius:999px;background:rgba(255,255,255,.66);padding:4px}

/* Hero now feels like a contemporary editorial cover */
.public-body .hero-home{margin:0 14px;border-radius:0 0 var(--modern-radius-lg) var(--modern-radius-lg);min-height:760px;overflow:hidden;box-shadow:0 30px 75px rgba(24,20,16,.15)}
.public-body .hero-home::before{background:linear-gradient(98deg,color-mix(in srgb,var(--dark) 94%,transparent) 0%,color-mix(in srgb,var(--dark) 72%,transparent) 48%,color-mix(in srgb,var(--dark) 22%,transparent) 100%)}
.public-body .hero-home::after{height:4px;background:linear-gradient(90deg,var(--primary),var(--accent),transparent 82%)}
.public-body .hero-home h1{font-size:clamp(58px,7.4vw,102px);line-height:.95;max-width:920px}
.public-body .hero-home p{max-width:700px}
.public-body .hero-badge{padding:9px 14px;border:1px solid rgba(255,255,255,.2);border-left:1px solid rgba(255,255,255,.2);border-radius:999px;background:rgba(255,255,255,.09);backdrop-filter:blur(12px)}
.public-body .hero-badge i{display:block;width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 6px color-mix(in srgb,var(--accent) 20%,transparent)}
.public-body .hero-actions .btn{min-height:56px;border-radius:999px;padding-inline:25px}
.public-body .hero-info-card{border:1px solid rgba(255,255,255,.3);border-top:1px solid rgba(255,255,255,.3);border-radius:30px;background:rgba(249,246,239,.88);backdrop-filter:blur(22px) saturate(1.2);box-shadow:0 30px 90px rgba(0,0,0,.24);padding:34px}
.public-body .hero-info-card::after{content:"";position:absolute;width:150px;height:150px;right:-80px;bottom:-95px;border-radius:50%;background:color-mix(in srgb,var(--accent) 58%,transparent);filter:blur(3px);animation:modernOrb 8s ease-in-out infinite}
.public-body .hero-info-card strong{font-family:Inter,system-ui,sans-serif;font-weight:720}
.public-body .hero-info-card>a{border-color:rgba(35,30,25,.14)}

/* Rounded visual ribbon */
.home-photo-ribbon{margin-top:-62px;padding:0 28px 48px;background:linear-gradient(to bottom,transparent 0 62px,#f8f6f1 62px)}
.photo-ribbon-track{gap:14px}
.photo-ribbon-track figure{border-radius:26px;box-shadow:0 18px 50px rgba(31,26,21,.16);clip-path:inset(0 0 100% 0 round 26px);transform:translateY(22px) scale(.985)}
.photo-ribbon-track figure.is-revealed{clip-path:inset(0 round 26px);transform:none}
.photo-ribbon-track figure:hover{transform:translateY(-9px) rotate(.25deg)}
.photo-ribbon-track figure:nth-child(even):hover{transform:translateY(-9px) rotate(-.25deg)}
.photo-ribbon-track figcaption{left:18px;bottom:16px;padding:7px 10px;border-radius:999px;background:rgba(20,18,16,.54);backdrop-filter:blur(8px);width:max-content;max-width:calc(100% - 36px)}

/* Soft section surfaces and contemporary cards */
.public-body .home-section{width:min(1500px,calc(100% - 28px));margin:18px auto;border-radius:var(--modern-radius-lg);overflow:hidden;box-shadow:inset 0 0 0 1px rgba(37,32,27,.045)}
.public-body .home-section::before{display:none}
.public-body .section-theme-default{background:#f3efe8}
.public-body .section-theme-white{background:#fffdf9}
.public-body .section-theme-soft{background:color-mix(in srgb,var(--accent) 13%,#f7f3ec)}
.public-body .section-space-normal{padding:94px 0}
.public-body .section-space-large{padding:120px 0}
.public-body .section-heading{max-width:900px;margin-bottom:48px}
.public-body .section-heading h2,.public-body .split-section h2,.public-body .cta-box h2,.home-map-head h2{font-size:clamp(43px,5vw,70px);font-weight:650;line-height:1.02}
.public-body .section-heading .eyebrow::after{height:2px;border-radius:99px}
.public-body .feature-grid{gap:18px;border:0}
.public-body .feature-card{border:1px solid rgba(37,32,27,.07);border-radius:26px;padding:30px;background:rgba(255,255,255,.72);box-shadow:0 13px 38px rgba(33,28,23,.055);backdrop-filter:blur(8px);transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s ease,border-color .45s ease}
.public-body .feature-card:last-child{border-right:1px solid rgba(37,32,27,.07)}
.public-body .feature-card:hover{transform:translateY(-10px);box-shadow:var(--modern-shadow);border-color:color-mix(in srgb,var(--primary) 25%,transparent)}
.public-body .feature-card::before{position:static;display:inline-grid;place-items:center;width:48px;height:48px;margin-bottom:34px;border-radius:16px;background:color-mix(in srgb,var(--primary) 10%,white);font-family:Inter,system-ui,sans-serif;font-size:14px;font-weight:850;color:var(--primary)}
.public-body .feature-card h3{font-family:Inter,system-ui,sans-serif;font-size:24px;font-weight:700}
.public-body .menu-preview-card,.public-body .testimonial-card,.public-body .step-card,.public-body .team-card,.public-body .stat-showcase{border-radius:28px;border-color:rgba(37,32,27,.07);box-shadow:0 16px 45px rgba(33,28,23,.07);overflow:hidden}
.public-body .menu-preview-card:hover{transform:translateY(-11px) scale(1.008);box-shadow:var(--modern-shadow-hover)}
.public-body .menu-preview-image{height:350px}
.public-body .split-section{gap:90px}
.public-body .image-frame{border-radius:36px;overflow:visible}
.public-body .split-section .section-image,.public-body .section-image{border-radius:36px;box-shadow:var(--modern-shadow);transition:transform .7s cubic-bezier(.2,.8,.2,1),box-shadow .7s ease}
.public-body .image-frame:hover .section-image{transform:translateY(-8px) scale(1.012);box-shadow:var(--modern-shadow-hover)}
.public-body .gallery-mosaic{gap:14px}
.public-body .gallery-tile{border-radius:26px;box-shadow:0 14px 38px rgba(33,28,23,.08)}
.public-body .gallery-tile:hover img{transform:scale(1.075)}
.public-body .opening-list{border-radius:28px;border-top:0;box-shadow:var(--modern-shadow)}
.public-body .cta-box-modern,.public-body .cta-box{border-radius:34px;background:linear-gradient(135deg,var(--dark),color-mix(in srgb,var(--dark) 82%,var(--primary)));box-shadow:0 25px 70px color-mix(in srgb,var(--dark) 28%,transparent)}
.public-body .cta-box-modern::after,.public-body .cta-box::after{border-width:28px;border-color:color-mix(in srgb,var(--accent) 28%,transparent);opacity:.8;animation:modernOrb 10s ease-in-out infinite reverse}

/* Contact and generic page hero: always legible */
.public-body .page-hero-modern{position:relative;isolation:isolate;margin:0 14px;border-radius:0 0 var(--modern-radius-lg) var(--modern-radius-lg);min-height:430px;padding:132px 0 105px;color:#fff;overflow:hidden;box-shadow:0 25px 65px rgba(31,26,21,.12)}
.public-body .page-hero-has-image{background-image:linear-gradient(100deg,color-mix(in srgb,var(--dark) 92%,transparent),color-mix(in srgb,var(--dark) 42%,transparent)),var(--hero);background-size:cover;background-position:center}
.public-body .page-hero-no-image{background:radial-gradient(circle at 82% 22%,color-mix(in srgb,var(--primary) 54%,transparent) 0 13%,transparent 38%),radial-gradient(circle at 69% 88%,color-mix(in srgb,var(--accent) 35%,transparent) 0 12%,transparent 34%),linear-gradient(130deg,var(--dark),color-mix(in srgb,var(--dark) 82%,var(--primary)))}
.public-body .page-hero-modern::before{content:"";position:absolute;inset:0;background:linear-gradient(105deg,rgba(15,13,11,.25),transparent 66%);z-index:-1}
.public-body .page-hero-modern::after{display:block;content:"";position:absolute;right:-120px;bottom:-210px;width:430px;height:430px;border:1px solid rgba(255,255,255,.15);border-radius:50%;background:transparent;z-index:-1}
.public-body .page-hero-modern .eyebrow{color:rgba(255,255,255,.8)}
.public-body .page-hero-modern h1{color:#fff;font-size:clamp(54px,7vw,92px);font-weight:680;text-shadow:0 10px 35px rgba(0,0,0,.18)}
.public-body .page-hero-modern p{color:rgba(255,255,255,.82);font-size:19px}
.page-hero-shape{position:absolute;border-radius:50%;pointer-events:none;filter:blur(.2px)}
.page-hero-shape-one{right:11%;top:20%;width:80px;height:80px;background:color-mix(in srgb,var(--accent) 45%,transparent);animation:shapeFloat 7s ease-in-out infinite}
.page-hero-shape-two{right:23%;bottom:13%;width:28px;height:28px;background:rgba(255,255,255,.35);animation:shapeFloat 5s ease-in-out infinite reverse}
.contact-hero+.section{padding-top:80px;background:linear-gradient(180deg,#f8f6f1,#f1ece4)}
.public-body .contact-layout{gap:24px;align-items:stretch;margin-top:20px}
.public-body .contact-layout .card{border-radius:30px;border:1px solid rgba(37,32,27,.07);box-shadow:0 18px 55px rgba(33,28,23,.08)}
.public-body .contact-layout form.card{padding:38px;background:rgba(255,255,255,.86);backdrop-filter:blur(10px)}
.public-body .contact-layout .contact-card{padding:38px;background:linear-gradient(145deg,var(--dark),color-mix(in srgb,var(--dark) 82%,var(--primary)));overflow:hidden;position:relative}
.public-body .contact-layout .contact-card::after{content:"";position:absolute;right:-85px;bottom:-85px;width:210px;height:210px;border:28px solid color-mix(in srgb,var(--accent) 25%,transparent);border-radius:50%}
.public-body .contact-layout .contact-card>*{position:relative;z-index:1}
.public-body .contact-layout input,.public-body .contact-layout textarea{border-radius:16px;padding:14px 15px;background:#fff;border-color:rgba(37,32,27,.12);transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease}
.public-body .contact-layout input:focus,.public-body .contact-layout textarea:focus{transform:translateY(-1px);box-shadow:0 0 0 5px color-mix(in srgb,var(--primary) 11%,transparent)}
.public-body .contact-layout .btn{border-radius:999px;padding:14px 24px}

/* Map, contact strip and footer */
.public-body .contact-strip{width:min(1500px,calc(100% - 28px));margin:18px auto;border:0!important;border-radius:32px;background:color-mix(in srgb,var(--accent) 16%,#fff)!important;box-shadow:inset 0 0 0 1px rgba(37,32,27,.06)}
.home-map-section{width:min(1500px,calc(100% - 28px));margin:18px auto 0;border:0;border-radius:40px 40px 0 0;overflow:hidden;background:#f1ece4;padding-top:92px}
.home-map-frame{height:560px;margin:36px 18px 18px;border-radius:32px;overflow:hidden;box-shadow:var(--modern-shadow)}
.home-map-frame iframe{filter:saturate(.82) contrast(1.02);transition:filter .4s ease,transform .8s cubic-bezier(.2,.8,.2,1)}
.home-map-frame:hover iframe{filter:saturate(1) contrast(1.02);transform:scale(1.008)}
.public-body .footer-rich{border-radius:40px 40px 0 0;margin-top:18px;background:linear-gradient(145deg,var(--dark),color-mix(in srgb,var(--dark) 88%,#000))!important}
.public-body .footer-order-link{border-radius:999px;padding:13px 18px!important}

/* Product and menu cards use the same visual language */
.public-body .menu-hero{margin:0 14px;border-radius:0 0 42px 42px}
.public-body .product-card,.public-body .product-card-fast{border-radius:28px;box-shadow:0 14px 42px rgba(33,28,23,.07);border-color:rgba(37,32,27,.07);transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s ease}
.public-body .product-card:hover,.public-body .product-card-fast:hover{transform:translateY(-9px);box-shadow:var(--modern-shadow-hover)}
.public-body .product-card-fast .product-img{border-radius:0}
.public-body .product-add-button{border-radius:999px}
.public-body .category-nav a{border-radius:999px}

/* Additional reveal motion */
.modern-reveal{opacity:0;transform:translateY(34px) scale(.985);filter:blur(5px);transition:opacity .85s cubic-bezier(.2,.8,.2,1) var(--modern-delay,0ms),transform .85s cubic-bezier(.2,.8,.2,1) var(--modern-delay,0ms),filter .85s ease var(--modern-delay,0ms)}
.modern-reveal.modern-visible{opacity:1;transform:none;filter:none}
.modern-image-reveal{overflow:hidden}
.modern-image-reveal img,.modern-image-reveal.section-image{will-change:transform}
@keyframes modernOrb{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(-12px,10px,0) scale(1.06)}}
@keyframes shapeFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-16px)}}

@media(max-width:900px){
  .public-body .hero-home,.public-body .page-hero-modern,.public-body .menu-hero{margin-inline:8px;border-radius:0 0 34px 34px}
  .public-body .hero-home h1{font-size:clamp(52px,12vw,76px)}
  .public-body .home-section,.public-body .contact-strip,.home-map-section{width:calc(100% - 16px);border-radius:32px}
  .public-body .feature-grid{gap:14px}
  .public-body .feature-card{border-right:1px solid rgba(37,32,27,.07);border-bottom:1px solid rgba(37,32,27,.07)}
  .home-map-section{border-radius:32px 32px 0 0}
}
@media(max-width:620px){
  :root{--modern-radius:23px;--modern-radius-lg:30px}
  .public-body .topbar-inner{min-height:68px}
  .public-body .hero-home{margin-inline:5px;min-height:640px;padding:95px 0 70px}
  .public-body .hero-home h1{font-size:48px}
  .public-body .hero-info-card{border-radius:24px;padding:26px}
  .home-photo-ribbon{padding-inline:10px;margin-top:-36px;background:linear-gradient(to bottom,transparent 0 36px,#f8f6f1 36px)}
  .photo-ribbon-track figure{border-radius:20px;clip-path:inset(0 0 100% 0 round 20px)}
  .photo-ribbon-track figure.is-revealed{clip-path:inset(0 round 20px)}
  .public-body .section-space-normal,.public-body .section-space-large{padding:72px 0}
  .public-body .section-heading h2,.public-body .split-section h2,.public-body .cta-box h2,.home-map-head h2{font-size:40px}
  .public-body .home-section,.public-body .contact-strip,.home-map-section{width:calc(100% - 10px);margin-top:10px;border-radius:26px}
  .public-body .feature-card,.public-body .menu-preview-card,.public-body .gallery-tile,.public-body .contact-layout .card{border-radius:22px}
  .public-body .split-section .section-image,.public-body .section-image{border-radius:25px;min-height:330px}
  .public-body .page-hero-modern{margin-inline:5px;min-height:350px;padding:105px 0 75px;border-radius:0 0 28px 28px}
  .public-body .page-hero-modern h1{font-size:50px}
  .public-body .contact-layout form.card,.public-body .contact-layout .contact-card{padding:25px}
  .home-map-section{border-radius:26px 26px 0 0;padding-top:70px}
  .home-map-frame{height:390px;margin:24px 8px 8px;border-radius:22px}
  .public-body .footer-rich{border-radius:28px 28px 0 0}
}
@media(prefers-reduced-motion:reduce){.page-hero-shape,.public-body .hero-info-card::after,.public-body .cta-box::after{animation:none!important}.modern-reveal{opacity:1;transform:none;filter:none;transition:none}}


/* 2.6.0 — full-width structural sections and dashboard order notifier */
/* Structural backgrounds span the viewport. Rounded corners remain on cards and media,
   which prevents outlines from continuing beside clipped corners. */
.public-body .hero-home,
.public-body .page-hero-modern,
.public-body .menu-hero{
  width:100%;
  margin-inline:0!important;
  overflow:clip;
  background-clip:padding-box;
}
.public-body .home-section,
.public-body .contact-strip,
.home-map-section,
.public-body .footer-rich{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  border-left:0!important;
  border-right:0!important;
  box-shadow:none!important;
  background-clip:padding-box;
}
.public-body .home-section{
  margin-top:0!important;
  margin-bottom:0!important;
  border-radius:0!important;
  overflow:visible;
}
.public-body .contact-strip{
  margin-top:0!important;
  margin-bottom:0!important;
  border-radius:0!important;
  overflow:hidden;
}
.home-map-section{
  margin-top:0!important;
  border-radius:0!important;
  overflow:hidden;
}
.public-body .footer-rich{
  margin-top:0!important;
  border:0!important;
  border-radius:0!important;
  overflow:hidden;
}
.public-body .card,
.public-body .feature-card,
.public-body .menu-preview-card,
.public-body .gallery-tile,
.public-body .contact-layout .card,
.public-body .section-image,
.public-body .home-map-frame{
  background-clip:padding-box;
  overflow:hidden;
}
.public-body .image-frame{overflow:visible}
.public-body .image-frame .section-image{overflow:hidden}

/* The public structure is full width, while content keeps comfortable page gutters. */
@media(max-width:900px){
  .public-body .hero-home,
  .public-body .page-hero-modern,
  .public-body .menu-hero,
  .public-body .home-section,
  .public-body .contact-strip,
  .home-map-section{width:100%!important;margin-inline:0!important}
}
@media(max-width:620px){
  .public-body .hero-home,
  .public-body .page-hero-modern,
  .public-body .menu-hero,
  .public-body .home-section,
  .public-body .contact-strip,
  .home-map-section{width:100%!important;margin-inline:0!important}
}

/* Dashboard notification bell */
.dashboard-order-alert{position:relative;margin-left:auto;z-index:60;display:flex;align-items:center;gap:9px}
.order-bell-button{position:relative;width:46px;height:46px;display:grid;place-items:center;border:1px solid #e1e6ed;border-radius:15px;background:#fff;color:#253044;cursor:pointer;box-shadow:0 8px 24px rgba(16,24,40,.08);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.order-sound-activate{min-height:42px;display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid #f3b26b;border-radius:13px;background:#fff7ed;color:#9a3412;font:800 12px/1.1 inherit;cursor:pointer;box-shadow:0 8px 22px rgba(154,52,18,.12);animation:orderSoundNudge 1.7s ease-in-out infinite}
.order-sound-activate[hidden]{display:none!important}
.order-sound-activate svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.order-sound-activate:hover,.order-sound-activate:focus-visible{background:#ffedd5;border-color:#ea8b31;outline:none;transform:translateY(-1px)}
.order-audio-status{margin:11px 0 2px;padding:9px 11px;border-radius:11px;background:#f8fafc;color:#667085;font-size:12px;line-height:1.45}
.order-alert-actions .btn-warning{background:#fff7ed;border-color:#f3b26b;color:#9a3412}
@keyframes orderSoundNudge{0%,100%{box-shadow:0 8px 22px rgba(154,52,18,.12)}50%{box-shadow:0 8px 28px rgba(234,88,12,.28)}}
.order-bell-button:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--primary) 48%,#e1e6ed);box-shadow:0 13px 30px rgba(16,24,40,.13)}
.order-bell-button svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.order-bell-badge{position:absolute;right:-5px;top:-5px;min-width:21px;height:21px;padding:0 5px;display:grid;place-items:center;border:3px solid #fff;border-radius:999px;background:#d92d20;color:#fff;font-size:11px;font-weight:850;line-height:1}
.order-bell-button.has-new{color:#b42318;animation:orderBellPulse 1.2s ease-in-out 2}
.order-bell-button.has-new svg{animation:orderBellRing .65s ease-in-out 2;transform-origin:50% 10%}
.order-alert-popover{position:absolute;right:0;top:58px;width:min(390px,calc(100vw - 28px));padding:18px;border:1px solid #e3e7ed;border-radius:20px;background:#fff;box-shadow:0 24px 70px rgba(16,24,40,.2)}
.order-alert-popover[hidden]{display:none}
.order-alert-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding-bottom:14px;border-bottom:1px solid #edf0f4}
.order-alert-head strong{display:block;font-size:17px}.order-alert-head small{display:block;margin-top:3px;color:#667085}
.order-live-dot{width:10px;height:10px;margin-top:6px;border-radius:50%;background:#12b76a;box-shadow:0 0 0 6px rgba(18,183,106,.12);animation:orderLivePulse 2s ease-in-out infinite}
.order-alert-list{max-height:310px;overflow:auto;padding:8px 0}.order-alert-list>p{margin:18px 4px;color:#667085;text-align:center}
.order-alert-item{display:grid;grid-template-columns:1fr auto;gap:7px 12px;padding:12px 8px;border-radius:12px;transition:background .2s ease}
.order-alert-item:hover{background:#f7f8fa}.order-alert-item strong{font-size:14px}.order-alert-item span{font-weight:800;color:var(--primary)}.order-alert-item small{grid-column:1/-1;color:#667085}.order-alert-item+.order-alert-item{border-top:1px solid #f0f2f5}
.order-alert-actions{display:flex;justify-content:space-between;gap:8px;padding-top:14px;border-top:1px solid #edf0f4}.order-alert-actions .btn{flex:1}
.order-alert-toast{position:fixed;right:24px;bottom:24px;z-index:160;width:min(380px,calc(100vw - 32px));display:grid;grid-template-columns:46px 1fr auto;align-items:center;gap:13px;padding:16px;border:1px solid #dfe4ea;border-radius:18px;background:#fff;box-shadow:0 24px 70px rgba(16,24,40,.22);transform:translateY(25px);opacity:0;pointer-events:none;transition:opacity .3s ease,transform .3s ease}
.order-alert-toast.is-visible{opacity:1;transform:none;pointer-events:auto}.order-alert-toast-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:14px;background:#fef3f2;color:#b42318;font-size:22px}.order-alert-toast strong,.order-alert-toast small{display:block}.order-alert-toast small{margin-top:3px;color:#667085}.order-alert-toast a{font-weight:800;color:var(--primary)}
@keyframes orderBellRing{0%,100%{transform:rotate(0)}25%{transform:rotate(12deg)}75%{transform:rotate(-12deg)}}
@keyframes orderBellPulse{50%{box-shadow:0 0 0 10px rgba(217,45,32,.08),0 13px 30px rgba(16,24,40,.13)}}
@keyframes orderLivePulse{50%{box-shadow:0 0 0 10px rgba(18,183,106,0)}}
.dashboard-body .topbar-inner{min-height:68px}.dashboard-body .mobile-header-actions{display:none}
@media(max-width:900px){.dashboard-order-alert{margin-left:auto}.order-sound-activate{width:46px;height:46px;min-height:46px;padding:0;justify-content:center}.order-sound-activate span{display:none}.order-alert-popover{position:fixed;right:12px;top:76px}.order-alert-toast{right:12px;bottom:12px}}
@media(prefers-reduced-motion:reduce){.order-bell-button,.order-bell-button svg,.order-live-dot{animation:none!important}}

.public-body .hero-info-card,.public-body .cta-box,.public-body .cta-box-modern,.public-body .contact-layout .contact-card{overflow:hidden}

/* 2.7.0 — live order tracking, mail and delivery settings */
.order-success-hero{padding:120px 0 46px;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 13%,#fff),#fbfaf8)}
.order-success-intro{display:flex;align-items:center;gap:24px;max-width:900px}.order-success-intro h1{font-size:clamp(36px,5vw,62px);line-height:1.04;margin:8px 0 12px}.order-success-intro p{font-size:18px;color:#667085;max-width:720px}.order-success-check{flex:0 0 72px;width:72px;height:72px;border-radius:24px;background:var(--primary);color:#fff;display:grid;place-items:center;font-size:34px;font-weight:900;box-shadow:0 18px 45px color-mix(in srgb,var(--primary) 28%,transparent)}
.order-tracking-section{padding-top:38px}.order-tracker-card{background:#fff;border:1px solid rgba(17,24,39,.08);border-radius:30px;padding:34px;box-shadow:0 18px 60px rgba(28,23,18,.08);overflow:hidden}.order-tracker-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding-bottom:28px;border-bottom:1px solid #ece8e3}.order-tracker-head h2{font-size:clamp(24px,3vw,36px);margin:14px 0 8px}.order-tracker-head p{margin:0;color:#7a8290}.order-live-status{display:flex;align-items:center;gap:9px;padding:10px 14px;border-radius:999px;background:#f5f8f5;font-size:13px;font-weight:750;color:#526057;white-space:nowrap}.order-live-status i{width:9px;height:9px;border-radius:50%;background:#2fb36f;box-shadow:0 0 0 6px rgba(47,179,111,.12);animation:pulseDot 2s infinite}.order-progress{display:grid;grid-template-columns:repeat(var(--steps-count,6),minmax(0,1fr));gap:0;padding:36px 0 10px}.order-progress-step{position:relative;text-align:center;padding:0 10px;color:#98a0ad}.order-progress-step:not(:last-child)::after{content:"";position:absolute;height:3px;top:17px;left:calc(50% + 18px);right:calc(-50% + 18px);background:#e6e8eb;z-index:0}.order-progress-step.is-done:not(:last-child)::after{background:var(--primary)}.order-progress-dot{position:relative;z-index:1;display:grid;place-items:center;width:38px;height:38px;margin:0 auto 15px;border:3px solid #e2e5e9;border-radius:50%;background:#fff;transition:.35s ease}.order-progress-dot i{width:10px;height:10px;border-radius:50%;background:#c9ced5}.order-progress-step.is-done{color:#313843}.order-progress-step.is-done .order-progress-dot{border-color:var(--primary);background:var(--primary);box-shadow:0 0 0 7px color-mix(in srgb,var(--primary) 10%,transparent)}.order-progress-step.is-done .order-progress-dot i{background:#fff}.order-progress-step.is-active .order-progress-dot{animation:orderPulse 1.8s infinite}.order-progress-step strong{display:block;font-size:14px;line-height:1.3}.order-progress-step small{display:block;margin-top:6px;font-size:12px;line-height:1.45}.order-cancelled-message{margin-top:24px;padding:18px 20px;border-radius:16px;background:#fff1f0;color:#9d261f;font-weight:700}.order-summary-grid{margin-top:26px}.order-details-card,.order-products-card{border-radius:26px}.order-detail-row{display:flex;justify-content:space-between;gap:24px;padding:14px 0;border-bottom:1px solid #eeeae5}.order-detail-row span{color:#737c89}.order-detail-row strong{text-align:right}.order-email-note{margin:24px 0 0;padding:15px 17px;border-radius:14px;background:#f7f5f2;color:#67707d}.order-tracker-card.status-changed{animation:statusCardFlash 1.1s ease}
@keyframes orderPulse{0%,100%{box-shadow:0 0 0 7px color-mix(in srgb,var(--primary) 10%,transparent)}50%{box-shadow:0 0 0 15px color-mix(in srgb,var(--primary) 4%,transparent)}}
@keyframes statusCardFlash{0%{box-shadow:0 18px 60px rgba(28,23,18,.08)}35%{box-shadow:0 18px 70px color-mix(in srgb,var(--primary) 28%,transparent)}100%{box-shadow:0 18px 60px rgba(28,23,18,.08)}}
@media(max-width:900px){.order-progress{grid-template-columns:1fr;padding-left:6px}.order-progress-step{text-align:left;display:grid;grid-template-columns:48px 1fr;padding:0 0 22px}.order-progress-step:not(:last-child)::after{width:3px;height:auto;top:38px;bottom:0;left:18px;right:auto}.order-progress-dot{margin:0}.order-progress-step small{margin-top:3px}.order-tracker-head{display:block}.order-live-status{display:inline-flex;margin-top:18px}.order-success-intro{align-items:flex-start}.order-success-check{width:58px;height:58px;flex-basis:58px;border-radius:18px}.order-tracker-card{padding:24px}}
@media(max-width:600px){.order-success-intro{display:block}.order-success-check{margin-bottom:20px}.order-success-hero{padding-top:95px}.order-detail-row{display:block}.order-detail-row strong{display:block;text-align:left;margin-top:5px}}

/* FoodOrder Pro 2.8 — delivery pricing and timing */
.checkout-estimate-box{margin:1rem 0 1.5rem;padding:1rem 1.15rem;border-radius:18px;background:color-mix(in srgb,var(--primary) 9%,#fff);border:1px solid color-mix(in srgb,var(--primary) 22%,transparent);font-weight:700;line-height:1.5}
.checkout-live-summary{position:sticky;top:110px;align-self:start}
.delivery-quote-message{margin:1rem 0;padding:.85rem 1rem;border-radius:14px;background:#f4f6f8;color:#495160;font-size:.92rem;line-height:1.45}
.delivery-quote-message.is-error{background:#fff0ef;color:#a52b22;border:1px solid #f4c9c5}
.order-estimate-highlight{margin:.35rem -.75rem;padding:.9rem .75rem!important;border-radius:14px;background:color-mix(in srgb,var(--primary) 10%,#fff)}
.order-estimate-highlight strong{color:var(--primary);font-size:1.15rem}
@media(max-width:900px){.checkout-live-summary{position:static}}


/* 2.9.0 – konfigurator wymaganych składników i płatnych dodatków */
.product-option-group{position:relative;padding:18px;border:1px solid #e7e2dc;border-radius:18px;background:#fff}.product-option-group+.product-option-group{margin-top:14px}.product-option-group legend{padding:0 2px;margin:0;width:100%;gap:12px}.product-option-group legend>span{font-size:17px}.option-group-type{display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;background:#f2f4f7;color:#475467}.option-type-required{border-color:color-mix(in srgb,var(--primary) 32%,#e7e2dc)}.option-type-required .option-group-type{background:color-mix(in srgb,var(--primary) 11%,#fff);color:var(--primary)}.option-type-paid .option-group-type{background:#fff7e8;color:#9a5b00}.option-group-help{margin:5px 0 12px;color:#667085;font-size:13px}.included-price{color:#039855!important}.product-option-group.has-error{border-color:#d92d20;box-shadow:0 0 0 3px rgba(217,45,32,.08)}.option-group-error{display:block;color:#b42318;font-weight:700;margin-top:8px}.option-group-error[hidden]{display:none}
.option-builder-intro{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 7%,#fff),#fff)}.option-builder-intro h2,.option-builder-intro p{margin:0}.option-builder-intro p{color:#667085;margin-top:5px}.option-builder-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.option-group-card{padding:24px;overflow:hidden}.option-group-card .section-title{align-items:flex-start}.option-group-card h2{margin:7px 0 3px}.option-group-card .section-title p{margin:0;color:#667085;font-size:13px}.option-admin-badge{display:inline-flex;padding:6px 9px;border-radius:999px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;background:#f2f4f7}.option-admin-required{background:color-mix(in srgb,var(--primary) 12%,#fff);color:var(--primary)}.option-admin-paid{background:#fff4dc;color:#8a5100}.option-admin-optional{background:#edf7f2;color:#067647}.option-group-settings{margin:16px -24px 0;padding:0 24px;border-top:1px solid #ece7e1;border-bottom:1px solid #ece7e1;background:#fbfaf8}.option-group-settings summary{cursor:pointer;font-weight:750;padding:14px 0}.option-edit-form{padding:0 0 18px}.option-items-list{display:grid;gap:10px;margin-top:18px}.option-item-editor{border:1px solid #e7e2dc;border-radius:14px;padding:12px;background:#fff}.option-item-main{display:grid;grid-template-columns:minmax(0,1fr) 140px 76px;gap:9px}.price-input{position:relative}.price-input span{position:absolute;left:10px;top:50%;transform:translateY(-50%);font-size:11px;color:#667085;z-index:1}.price-input input{padding-left:40px}.option-item-flags{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:9px}.option-item-flags details{flex:1;min-width:140px}.option-item-flags summary{cursor:pointer;font-size:12px;font-weight:700}.option-add-item{margin:18px -24px -24px;padding:20px 24px;background:#f8f6f2;border-top:1px solid #e7e2dc}.option-add-item h3{margin-top:0}.option-sort{text-align:center}@media(max-width:960px){.option-builder-grid{grid-template-columns:1fr}}@media(max-width:680px){.option-builder-intro{align-items:flex-start;flex-direction:column}.option-item-main{grid-template-columns:1fr 1fr}.option-sort{grid-column:span 2}.option-item-flags{align-items:flex-start;flex-direction:column}.option-item-flags .actions{width:100%}}

/* 2.9.1 – czytelna dopłata także dla wyborów wymaganych */
.option-price-notice{margin:14px 0 10px;border-left:4px solid var(--accent);background:color-mix(in srgb,var(--accent) 9%,#fff);}
.option-add-item .form-group small.notice{display:block;margin-top:7px;line-height:1.45;}

/* FoodOrder Pro 3.0 — visual builder, drag sorting and dynamic languages */
.drag-handle{display:inline-grid;place-items:center;width:38px;height:38px;border:1px solid #dfe3ea;border-radius:12px;background:#fff;color:#667085;font-size:18px;line-height:1;cursor:grab;user-select:none;touch-action:none;flex:0 0 auto;box-shadow:0 3px 10px rgba(16,24,40,.04)}
.drag-handle:hover,.drag-handle:focus{border-color:var(--primary);color:var(--primary);outline:none;box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 12%,transparent)}
.drag-handle:active{cursor:grabbing}.drag-handle.small{width:32px;height:32px;border-radius:10px;font-size:15px}.is-dragging{opacity:.38!important;transform:scale(.985);box-shadow:0 18px 45px rgba(16,24,40,.16)!important}.has-dragging{outline:2px dashed color-mix(in srgb,var(--primary) 45%,#d0d5dd);outline-offset:7px;border-radius:16px}.is-saving{pointer-events:none}.sort-save-status,[data-sort-status]{font-size:12px;font-weight:700;color:#667085;min-height:18px}.sort-save-status[data-state="saved"],[data-sort-status][data-state="saved"]{color:#087443}.sort-save-status[data-state="error"],[data-sort-status][data-state="error"]{color:#b42318}.sortable-help{display:flex;align-items:center;gap:12px;padding:12px 14px;margin-bottom:14px;background:#f7f9fc;border:1px solid #e5eaf1;border-radius:16px}.sortable-help>div{display:grid;gap:2px}.sortable-help small{color:#667085}.drag-demo{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#fff;border:1px solid #dfe3ea;color:#98a2b3}.drag-order-note{padding:12px 14px;border-radius:14px;background:#f7f9fc;border:1px dashed #d0d5dd;color:#667085;font-size:13px;line-height:1.55}
.block-handle{border:1px solid #dfe3ea!important;background:#fff!important;padding:0!important}.block-list-item{transition:transform .2s,box-shadow .2s,opacity .2s}.block-list.has-dragging .block-list-item:not(.is-dragging){transition:transform .12s}.block-builder-layout{grid-template-columns:minmax(420px,1fr) minmax(320px,.7fr) minmax(440px,1.15fr)!important;align-items:start}.live-preview-panel{position:sticky;top:86px;min-width:0;background:#101828;border-radius:24px;padding:12px;box-shadow:0 22px 55px rgba(16,24,40,.2)}.live-preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;color:#fff;padding:4px 5px 12px}.live-preview-toolbar>div:first-child{display:grid;gap:3px}.live-preview-toolbar small{color:#98a2b3;font-size:11px}.preview-devices{display:flex;gap:5px}.preview-devices button{width:34px;height:32px;border:0;border-radius:9px;background:#273348;color:#b7c1d3;cursor:pointer}.preview-devices button:hover,.preview-devices button.active{background:#fff;color:#101828}.live-preview-frame-wrap{height:calc(100vh - 150px);min-height:600px;background:#fff;border-radius:17px;overflow:hidden;display:flex;justify-content:center;transition:padding .25s}.live-preview-frame-wrap iframe{width:100%;height:100%;border:0;background:#fff;transition:width .25s,border-radius .25s,box-shadow .25s}.live-preview-frame-wrap[data-device="tablet"]{padding:12px}.live-preview-frame-wrap[data-device="tablet"] iframe{width:768px;max-width:100%;border-radius:12px;box-shadow:0 0 0 1px #d0d5dd}.live-preview-frame-wrap[data-device="mobile"]{padding:12px}.live-preview-frame-wrap[data-device="mobile"] iframe{width:390px;max-width:100%;border-radius:22px;box-shadow:0 0 0 1px #d0d5dd}.preview-tip{margin:10px 4px 2px;color:#b7c1d3;font-size:12px;line-height:1.5}
.dynamic-translation-editor{margin-top:22px;padding:0!important;border:1px solid #e1e6ee!important;border-radius:18px!important;overflow:hidden;background:#fff}.translation-editor-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 18px;background:#f7f9fc;border-bottom:1px solid #e1e6ee}.translation-editor-head h3{margin:0 0 3px}.translation-editor-head p{margin:0}.translation-tabs{display:flex;flex-wrap:wrap;gap:6px}.translation-tab{border:1px solid #d0d5dd;background:#fff;border-radius:999px;padding:7px 11px;font-weight:700;font-size:12px;color:#475467;cursor:pointer}.translation-tab.active{background:var(--primary);border-color:var(--primary);color:#fff}.translation-pane{display:none;border:0!important;margin:0!important;padding:18px!important}.translation-pane.active{display:block}.translation-pane legend{font-weight:800;color:#101828;padding:0 0 12px}.translation-pane legend small{margin-left:8px;color:#98a2b3}.language-sort-list{display:grid;gap:9px}.language-row{display:grid;grid-template-columns:auto 48px minmax(120px,1fr) auto auto;align-items:center;gap:12px;padding:12px;border:1px solid #e4e7ec;border-radius:16px;background:#fff}.language-row small{display:block;color:#667085;margin-top:2px}.language-code{display:grid;place-items:center;height:42px;border-radius:12px;background:#f2f4f7;font-weight:900;color:#344054}.language-flags{display:flex;gap:6px}.language-guide ul{padding-left:20px;line-height:1.8}.language-guide code{background:#f2f4f7;padding:3px 6px;border-radius:6px}
.menu-order-builder{margin-bottom:22px}.category-sort-list{display:grid;gap:13px}.category-sort-card{border:1px solid #e4e7ec;border-radius:18px;background:#fbfcfe;overflow:hidden;transition:box-shadow .2s,transform .2s}.category-sort-card>header{display:flex;align-items:center;gap:12px;padding:13px 15px;background:#fff;border-bottom:1px solid #eaecf0}.category-sort-card>header>div{display:grid}.category-sort-card>header small{color:#667085}.product-sort-list{display:grid;gap:7px;padding:10px}.product-sort-row{display:grid;grid-template-columns:auto 46px minmax(120px,1fr) auto;align-items:center;gap:10px;padding:8px 10px;border:1px solid #e7eaf0;border-radius:13px;background:#fff}.product-sort-row img{width:46px;height:38px;border-radius:9px;object-fit:cover}.product-sort-row span{font-weight:700}.product-sort-row strong{font-size:13px;white-space:nowrap}.page-sort-list{display:grid;gap:8px}.page-sort-list .list-row{grid-template-columns:auto minmax(0,1fr) auto;background:#fff;border:1px solid #e4e7ec;border-radius:14px;padding:10px 12px}.option-builder-grid>.option-group-card{transition:transform .2s,box-shadow .2s}.option-group-card>.section-title{align-items:flex-start}.group-drag-handle{margin-right:2px}.option-items-list{display:grid;gap:8px}.option-item-editor{display:grid!important;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px}.option-item-editor>.drag-handle{margin-top:7px}.option-item-editor>.option-item-main,.option-item-editor>.option-item-flags{grid-column:2}.table tbody[data-sortable-entity] tr{transition:opacity .2s,background .2s}.table tbody[data-sortable-entity] tr.is-dragging{display:table-row;opacity:.4}
@media(max-width:1500px){.block-builder-layout{grid-template-columns:minmax(390px,1fr) minmax(300px,.72fr)!important}.live-preview-panel{grid-column:1/-1;position:relative;top:auto}.live-preview-frame-wrap{height:800px}}
@media(max-width:900px){.block-builder-layout{grid-template-columns:1fr!important}.language-row{grid-template-columns:auto 44px 1fr}.language-row .language-flags,.language-row .actions{grid-column:3}.product-sort-row{grid-template-columns:auto 40px 1fr}.product-sort-row strong{grid-column:3}.translation-editor-head{align-items:flex-start;flex-direction:column}.live-preview-frame-wrap{height:680px;min-height:0}}

/* FoodOrder Pro 3.1 — printing integration */
.print-settings-grid .card{align-self:start}.agent-token-box{padding:14px;border:1px solid rgba(35,39,47,.12);border-radius:14px;background:#f8f7f4;margin:14px 0}.agent-token-box label{display:block;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#68707c;margin-bottom:7px}.agent-token-box code{display:block;word-break:break-all;font-size:.82rem;line-height:1.55}.print-settings-grid aside form{margin-top:10px}.print-settings-grid aside .notice{display:block;margin-top:16px;padding:13px;border-radius:12px;background:#fff8e7;line-height:1.5}@media(max-width:900px){.print-settings-grid{grid-template-columns:1fr!important}.print-settings-grid>*{grid-column:1!important}}

/* 3.1.2 — poprawka miniaturek produktów */
.product-card-fast .product-card-media{
  position:relative;
  display:block;
  align-self:stretch;
  min-height:245px;
  height:100%;
  overflow:hidden;
  background:#ece7e0;
}
.product-card-fast .product-img{
  position:absolute;
  inset:0;
  width:100%;
  height:auto!important;
  min-height:0!important;
  background-position:center!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
}
.admin-product-cell{display:flex;align-items:center;gap:12px;min-width:250px}
.admin-product-cell>div{min-width:0}
.admin-product-thumb{display:block;flex:0 0 64px;width:64px;height:50px;object-fit:cover;border-radius:11px;background:#eef1f4;border:1px solid #e3e7ec}
.admin-product-thumb-empty{display:grid;place-items:center;color:#98a2b3;font-size:22px}
@media(max-width:900px){.product-card-fast .product-card-media{min-height:220px}}
@media(max-width:680px){.product-card-fast .product-card-media{min-height:185px}.admin-product-thumb{width:54px;height:44px;flex-basis:54px}}

/* FoodOrder Pro 3.1.3 — per-user touch-friendly dashboard */
.touch-header-toggle{display:flex;margin:0}.touch-header-button{min-height:42px;border:1px solid #d9dee7;background:#fff;color:#344054;border-radius:12px;padding:8px 12px;display:inline-flex;align-items:center;gap:8px;font:700 13px inherit;cursor:pointer;transition:.2s ease;white-space:nowrap}.touch-header-button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.touch-header-button:hover{border-color:var(--primary);color:var(--primary)}.touch-header-button.is-active{color:#fff;background:var(--primary);border-color:var(--primary)}
.sidebar-touch-form{margin-top:13px}.sidebar-touch-toggle,.employee-touch-switch{border:0;background:transparent;color:inherit;display:flex;align-items:center;gap:9px;padding:0;cursor:pointer;font:700 12px inherit;text-align:left}.sidebar-touch-toggle{color:#d0d5dd}.touch-toggle-track{position:relative;width:38px;height:22px;flex:0 0 38px;border-radius:999px;background:#475467;transition:.22s ease}.touch-toggle-track i{position:absolute;left:3px;top:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.25);transition:transform .22s ease}.is-active .touch-toggle-track{background:var(--primary)}.is-active .touch-toggle-track i{transform:translateX(16px)}.employee-touch-switch{min-height:38px;color:#475467;border:1px solid #e1e5ea;border-radius:11px;padding:7px 10px;background:#fff}.employee-touch-switch.is-active{color:#1d2939;background:color-mix(in srgb,var(--primary) 7%,#fff);border-color:color-mix(in srgb,var(--primary) 35%,#e1e5ea)}.touch-mode-create{padding:14px;border-radius:13px;border:1px solid #e1e5ea;background:#f8fafc;align-items:center}.touch-mode-create input{width:21px;height:21px}.touch-mode-create span{display:grid}.touch-mode-create small{font-weight:400;color:#667085;margin-top:2px}

/* Larger, finger-friendly control surface. */
.dashboard-body.touch-friendly{font-size:17px;--touch-target:56px;background:#f3f5f8}.touch-friendly *{scroll-margin-top:95px}.touch-friendly button,.touch-friendly a,.touch-friendly input,.touch-friendly select,.touch-friendly textarea,.touch-friendly label{touch-action:manipulation}.touch-friendly .topbar-inner{min-height:80px;height:auto}.touch-friendly .topbar{box-shadow:0 8px 28px rgba(16,24,40,.07)}.touch-friendly .site-logo{max-height:54px}.touch-friendly .dashboard-shell{grid-template-columns:285px minmax(0,1fr);min-height:calc(100vh - 80px)}.touch-friendly .sidebar{padding:22px 16px;gap:7px}.touch-friendly .sidebar-user{padding:10px 12px 20px}.touch-friendly .sidebar-user strong{font-size:18px}.touch-friendly .sidebar-user small{font-size:14px}.touch-friendly .sidebar-touch-toggle{font-size:13px;min-height:36px}.touch-friendly .sidebar a{display:flex;align-items:center;min-height:54px;padding:14px 15px;border-radius:14px;font-size:16px;font-weight:700}.touch-friendly .sidebar a:hover,.touch-friendly .sidebar a:focus-visible{background:#344054;outline:3px solid rgba(255,255,255,.13);outline-offset:1px}.touch-friendly .dashboard-main{padding:34px;max-width:1800px;width:100%}.touch-friendly .page-head{margin-bottom:28px;gap:22px}.touch-friendly .page-head h1{font-size:34px;line-height:1.12}.touch-friendly .page-head .muted{font-size:16px;margin-top:6px}.touch-friendly .card{border-radius:22px;padding:26px;box-shadow:0 10px 38px rgba(16,24,40,.06)}.touch-friendly .stat{border-radius:20px;padding:24px;min-height:128px;display:flex;flex-direction:column;justify-content:center}.touch-friendly .stat strong{font-size:34px}.touch-friendly .btn{min-height:var(--touch-target);padding:14px 21px;border-radius:15px;font-size:16px;line-height:1.15}.touch-friendly .btn-sm{min-height:48px;padding:12px 16px;font-size:15px}.touch-friendly .actions{gap:10px}.touch-friendly .actions form{display:flex}.touch-friendly .form-group{margin-bottom:22px}.touch-friendly .form-label{font-size:16px;margin-bottom:9px}.touch-friendly .form-control,.touch-friendly .form-select,.touch-friendly textarea{min-height:var(--touch-target);border-radius:14px;padding:14px 15px;font-size:17px;border-width:1.5px}.touch-friendly textarea{min-height:130px}.touch-friendly input[type=checkbox],.touch-friendly input[type=radio]{width:24px;height:24px;flex:0 0 24px;accent-color:var(--primary)}.touch-friendly .check{gap:13px;min-height:42px;align-items:flex-start;padding:4px 0}.touch-friendly .check input{margin-top:1px}.touch-friendly .form-row{gap:22px}.touch-friendly .table-wrap{border-radius:20px;box-shadow:0 8px 28px rgba(16,24,40,.05);overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.touch-friendly .table th,.touch-friendly .table td{padding:18px 17px}.touch-friendly .table th{font-size:13px}.touch-friendly .table td{font-size:16px}.touch-friendly .table tbody tr{min-height:70px}.touch-friendly .table tbody tr:hover{background:#f8fafc}.touch-friendly .badge{font-size:14px;padding:7px 11px}.touch-friendly .modal{padding:28px}.touch-friendly .modal-card{width:min(780px,100%);border-radius:26px;padding:30px;max-height:calc(100vh - 40px)}.touch-friendly .modal-head{margin-bottom:18px}.touch-friendly .modal-head h2{font-size:29px}.touch-friendly .modal-close{display:grid;place-items:center;width:52px;height:52px;border-radius:15px;background:#f2f4f7;font-size:31px}.touch-friendly .order-bell-button{width:52px;height:52px}.touch-friendly .order-alert-popover{width:min(420px,calc(100vw - 28px))}.touch-friendly .order-alert-item{padding:15px}.touch-friendly .touch-header-button{min-height:52px;border-radius:15px;padding:11px 15px;font-size:14px}.touch-friendly .touch-header-button svg{width:23px;height:23px}.touch-friendly .employee-touch-switch{min-height:48px;padding:10px 13px;font-size:14px}.touch-friendly .touch-toggle-track{width:46px;height:27px;flex-basis:46px}.touch-friendly .touch-toggle-track i{width:21px;height:21px}.touch-friendly .is-active .touch-toggle-track i{transform:translateX(19px)}

/* Kitchen and order handling are the most important touch screens. */
.touch-friendly .kitchen{grid-template-columns:repeat(4,minmax(330px,1fr));gap:20px}.touch-friendly .kitchen-col{border-radius:22px;padding:17px;min-height:680px}.touch-friendly .kitchen-col h3{font-size:21px;margin:7px 7px 17px}.touch-friendly .kitchen-ticket{border-radius:18px;padding:19px;margin-bottom:17px;border-left-width:7px}.touch-friendly .kitchen-ticket h4{font-size:20px}.touch-friendly .kitchen-ticket .actions{display:grid;grid-template-columns:1fr}.touch-friendly .kitchen-ticket .btn{width:100%}.touch-friendly .quantity-stepper{height:56px;grid-template-columns:52px 58px 52px;border-radius:14px}.touch-friendly .quantity-stepper button{font-size:25px}.touch-friendly .drag-handle,.touch-friendly [data-drag-handle]{min-width:48px;min-height:48px;display:grid;place-items:center;cursor:grab}.touch-friendly .sortable-item{min-height:68px}.touch-friendly .page-head>.actions{align-items:stretch}.touch-friendly .page-head>.actions .btn{white-space:nowrap}

/* Tablet behavior keeps controls large and the navigation easy to swipe. */
@media(max-width:1180px){.touch-friendly .dashboard-shell{grid-template-columns:1fr}.touch-friendly .sidebar{position:sticky;top:80px;z-index:25;display:flex;flex-direction:row;align-items:center;overflow-x:auto;padding:10px 14px;scroll-snap-type:x proximity}.touch-friendly .sidebar-user{display:flex;min-width:250px;padding:5px 13px}.touch-friendly .sidebar-user small{display:none}.touch-friendly .sidebar-touch-form{margin-top:4px}.touch-friendly .sidebar a{min-width:max-content;scroll-snap-align:start}.touch-friendly .dashboard-main{padding:26px}.touch-friendly .topbar-inner{width:min(100% - 24px,1180px)}}
@media(max-width:760px){.touch-header-button span{display:none}.touch-friendly .touch-header-button span{display:none}.touch-friendly .touch-header-button{width:52px;padding:0;justify-content:center}.touch-friendly .dashboard-main{padding:18px 14px}.touch-friendly .page-head{align-items:stretch}.touch-friendly .page-head h1{font-size:29px}.touch-friendly .page-head>.btn,.touch-friendly .page-head>.actions{width:100%}.touch-friendly .page-head>.actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.touch-friendly .stats{grid-template-columns:1fr 1fr}.touch-friendly .stat{min-height:112px}.touch-friendly .form-row{grid-template-columns:1fr}.touch-friendly .modal{padding:8px}.touch-friendly .modal-card{border-radius:22px;padding:22px;max-height:calc(100vh - 16px)}.touch-friendly .table{min-width:760px}.touch-friendly .kitchen{grid-template-columns:repeat(4,minmax(300px,86vw))}.touch-friendly .sidebar-user{min-width:220px}}
@media(max-width:500px){.touch-friendly .stats{grid-template-columns:1fr}.touch-friendly .page-head>.actions{grid-template-columns:1fr}.touch-friendly .topbar-inner{gap:8px}.touch-friendly .brand{max-width:145px}.touch-friendly .site-logo{max-width:145px}.touch-friendly .dashboard-order-alert{margin-left:auto}.touch-friendly .touch-header-toggle{order:3}}


/* 3.1.5 — compact mobile header and information popup */
.info-popup{position:fixed;inset:0;z-index:250;display:none;align-items:center;justify-content:center;padding:20px}.info-popup.is-visible{display:flex}.info-popup-backdrop{position:absolute;inset:0;background:rgba(16,24,40,.66);backdrop-filter:blur(5px)}.info-popup-card{position:relative;width:min(620px,100%);max-height:min(82vh,760px);overflow:auto;padding:34px;border-radius:26px;background:#fff;box-shadow:0 30px 100px rgba(0,0,0,.3);animation:infoPopupIn .25s ease}.info-popup-card h2{margin:0 48px 16px 0;font-size:clamp(25px,4vw,38px);line-height:1.1}.info-popup-content{color:#475467;font-size:16px;line-height:1.7}.info-popup-content p:first-child{margin-top:0}.info-popup-content img{border-radius:16px}.info-popup-close{position:absolute;right:16px;top:16px;width:42px;height:42px;border:0;border-radius:50%;background:#f2f4f7;color:#344054;font-size:28px;line-height:1;cursor:pointer}.info-popup-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.info-popup-actions .btn{min-height:46px}body.has-info-popup{overflow:hidden}@keyframes infoPopupIn{from{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}
@media(max-width:700px){.public-body .topbar-inner{height:58px;min-height:58px;gap:10px}.public-body .brand{min-width:0;max-width:calc(100% - 58px)}.public-body .brand>span:not(.brand-mark){display:none}.public-body .site-logo{max-width:180px;max-height:42px;width:auto;height:auto}.public-body .mobile-header-actions{display:flex;margin-left:auto}.public-body .mobile-cart-summary{display:none!important}.public-body .nav-toggle{display:grid!important;place-items:center;width:46px;height:46px;padding:0;font-size:25px;border-radius:13px}.public-body .topnav{top:58px;max-height:calc(100dvh - 58px);overflow-y:auto}.public-body .category-nav{top:58px}.public-body .hero-home,.public-body .page-hero-modern,.public-body .menu-hero{padding-top:54px}.info-popup{padding:12px}.info-popup-card{padding:27px 20px 22px;border-radius:22px;max-height:88dvh}.info-popup-card h2{margin-right:42px}.info-popup-actions{display:grid}.info-popup-actions .btn{width:100%}}

/* 3.1.6 — definitive compact public header on phones and tablets */
@media (max-width:900px){
  .public-body .topbar{min-height:0!important}
  .public-body .topbar-inner{
    height:60px!important;
    min-height:60px!important;
    padding:0!important;
    gap:10px!important;
    flex-wrap:nowrap!important;
  }
  .public-body .topbar.is-scrolled .topbar-inner{height:60px!important;min-height:60px!important}
  .public-body .brand{
    min-width:0!important;
    max-width:calc(100% - 58px)!important;
    height:60px;
    overflow:hidden;
  }
  .public-body .brand>span:not(.brand-mark){display:none!important}
  .public-body .site-logo{
    display:block;
    width:auto!important;
    height:auto!important;
    max-width:min(210px,calc(100vw - 96px))!important;
    max-height:44px!important;
    object-fit:contain;
  }
  .public-body .mobile-header-actions{
    display:flex!important;
    align-items:center;
    margin-left:auto;
    flex:0 0 auto;
  }
  .public-body .mobile-cart-summary{display:none!important}
  .public-body .nav-toggle{
    display:grid!important;
    place-items:center;
    flex:0 0 46px;
    width:46px!important;
    height:46px!important;
    margin:0!important;
    padding:0!important;
    border:1px solid rgba(37,32,27,.12)!important;
    border-radius:12px!important;
    background:rgba(255,255,255,.55)!important;
    color:var(--dark)!important;
    font-size:0!important;
    line-height:1!important;
  }
  .public-body .nav-toggle::before{
    content:"";
    width:22px;
    height:16px;
    background:linear-gradient(currentColor,currentColor) 0 0/100% 2px no-repeat,
               linear-gradient(currentColor,currentColor) 0 50%/100% 2px no-repeat,
               linear-gradient(currentColor,currentColor) 0 100%/100% 2px no-repeat;
  }
  .public-body .nav-toggle[aria-expanded="true"]::before{
    width:21px;
    height:21px;
    background:linear-gradient(currentColor,currentColor) center/100% 2px no-repeat;
    transform:rotate(45deg);
    box-shadow:none;
  }
  .public-body .nav-toggle[aria-expanded="true"]::after{
    content:"";
    position:absolute;
    width:21px;
    height:2px;
    background:currentColor;
    transform:rotate(-45deg);
  }
  .public-body .topnav{
    top:60px!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    max-height:calc(100dvh - 60px)!important;
    overflow-y:auto!important;
    margin:0!important;
    padding:16px max(18px,calc((100vw - 1180px)/2)) 22px!important;
    border-top:1px solid var(--line)!important;
  }
  .public-body .category-nav{top:60px!important}
}
@media (max-width:420px){
  .public-body .topbar-inner{height:56px!important;min-height:56px!important}
  .public-body .topbar.is-scrolled .topbar-inner{height:56px!important;min-height:56px!important}
  .public-body .brand{height:56px;max-width:calc(100% - 54px)!important}
  .public-body .site-logo{max-width:calc(100vw - 90px)!important;max-height:38px!important}
  .public-body .nav-toggle{flex-basis:42px;width:42px!important;height:42px!important}
  .public-body .topnav{top:56px!important;max-height:calc(100dvh - 56px)!important}
  .public-body .category-nav{top:56px!important}
}

/* 3.2.0 — complete mobile storefront redesign */
.mobile-nav-backdrop{display:none}
@media (max-width:900px){
  html{scroll-padding-top:56px}
  body.mobile-nav-open{overflow:hidden;touch-action:none}
  .public-body .topbar{height:56px!important;min-height:56px!important;background:color-mix(in srgb,var(--paper) 98%,#fff)!important;box-shadow:0 1px 0 var(--line),0 7px 24px rgba(28,24,19,.07)!important}
  .public-body .topbar-inner,.public-body .topbar.is-scrolled .topbar-inner{width:100%!important;height:56px!important;min-height:56px!important;padding:0 14px!important;gap:8px!important}
  .public-body .brand{height:56px!important;max-width:calc(100% - 52px)!important;flex:1 1 auto!important}
  .public-body .site-logo{max-height:38px!important;max-width:min(210px,calc(100vw - 90px))!important;object-position:left center!important}
  .public-body .mobile-header-actions{height:56px!important}
  .public-body .nav-toggle{position:relative!important;z-index:202!important;width:42px!important;height:42px!important;flex-basis:42px!important;border-radius:12px!important;background:transparent!important;border:1.5px solid color-mix(in srgb,var(--dark) 75%,transparent)!important}
  .public-body .topnav{
    position:fixed!important;z-index:201!important;inset:0 0 0 auto!important;top:0!important;
    width:min(86vw,360px)!important;height:100dvh!important;max-height:none!important;
    display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;
    gap:0!important;padding:78px 22px max(22px,env(safe-area-inset-bottom))!important;
    background:var(--paper)!important;border:0!important;border-left:1px solid var(--line)!important;
    box-shadow:-24px 0 60px rgba(22,18,14,.22)!important;overflow-y:auto!important;
    transform:translateX(105%)!important;visibility:hidden!important;opacity:0!important;
    transition:transform .32s cubic-bezier(.22,.75,.24,1),visibility .32s,opacity .25s!important;
  }
  .public-body .topnav.open{transform:translateX(0)!important;visibility:visible!important;opacity:1!important}
  .public-body .mobile-nav-backdrop{position:fixed;z-index:200;inset:0;display:block;border:0;background:rgba(20,17,14,.52);backdrop-filter:blur(3px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s,visibility .25s}
  .public-body.mobile-nav-open .mobile-nav-backdrop{opacity:1;visibility:visible;pointer-events:auto}
  .public-body .main-nav-links,.public-body .nav-tools{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:2px!important;width:100%!important}
  .public-body .main-nav-links{padding-bottom:18px!important;border-bottom:1px solid var(--line)!important}
  .public-body .nav-tools{padding:16px 0!important}
  .public-body .topnav a{display:flex!important;width:100%!important;min-height:48px!important;align-items:center!important;padding:11px 4px!important;margin:0!important;border-radius:0!important;font-size:16px!important;font-weight:750!important;background:none!important;box-shadow:none!important}
  .public-body .main-nav-links>a::after{left:4px!important;right:auto!important;width:28px!important;bottom:6px!important}
  .public-body .nav-admin-link{color:#746d64!important}
  .public-body .language-switcher{display:flex!important;flex-wrap:wrap!important;width:100%!important;margin:2px 0 8px!important;padding:0!important;background:none!important;gap:7px!important}
  .public-body .language-switcher a{width:auto!important;min-height:38px!important;padding:8px 12px!important;border:1px solid var(--line)!important;border-radius:999px!important;font-size:13px!important}
  .public-body .cart-nav-link{display:flex!important;border-top:1px solid var(--line)!important;border-bottom:1px solid var(--line)!important;padding:12px 4px!important;margin:3px 0 12px!important}
  .public-body .cart-nav-copy{display:flex!important;flex-direction:column!important;line-height:1.15!important}.public-body .cart-nav-link .pill{margin-left:auto!important}
  .public-body .topnav>.nav-order-link{margin-top:auto!important;min-height:54px!important;padding:15px 18px!important;border-radius:999px!important;background:var(--primary)!important;color:#fff!important;justify-content:space-between!important}
  .public-body .category-nav{top:56px!important;padding:10px 14px!important;margin:0 -14px!important;scrollbar-width:none}.public-body .category-nav::-webkit-scrollbar{display:none}
  .public-body .hero-home{min-height:auto!important;padding:58px 0 46px!important}.public-body .hero-home h1{font-size:clamp(38px,11vw,52px)!important;line-height:1.01!important}.public-body .hero-home p{font-size:16px!important;line-height:1.65!important}
  .public-body .hero-actions{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;margin:22px 0!important}.public-body .hero-actions .btn{min-height:52px!important;width:100%!important;padding:13px 18px!important;border-radius:999px!important}
  .public-body .hero-info-card{padding:20px!important;box-shadow:7px 7px 0 rgba(255,255,255,.13)!important}.public-body .hero-layout{gap:25px!important}
  .public-body .home-photo-ribbon{margin-top:0!important;padding:10px 14px 24px!important}.public-body .photo-ribbon-track{display:flex!important;overflow-x:auto!important;gap:10px!important;scroll-snap-type:x mandatory!important}.public-body .photo-ribbon-track figure{flex:0 0 78vw!important;height:220px!important;scroll-snap-align:start!important}
  .public-body .section-space-normal,.public-body .section-space-large,.public-body .home-intro,.public-body .home-map-section{padding:52px 0!important}
  .public-body .home-intro-grid{padding-top:38px!important}.public-body .section-heading{margin-bottom:22px!important}.public-body .section-heading h2,.public-body .split-section h2,.public-body .cta-box h2,.public-body .home-intro h2{font-size:clamp(32px,9vw,42px)!important;line-height:1.08!important}
  .public-body .home-intro .cms-content,.public-body .split-copy .cms-content{font-size:16px!important;line-height:1.7!important}
  .public-body .split-section{grid-template-columns:1fr!important;gap:26px!important}.public-body .section-image{min-height:260px!important;height:56vw!important;max-height:390px!important;border-radius:20px!important}
  .public-body .feature-grid,.public-body .menu-preview-grid{grid-template-columns:1fr!important;gap:14px!important}.public-body .feature-grid article,.public-body .menu-preview-body{padding:19px!important}.public-body .menu-preview-image{height:205px!important}
  .public-body .cta-box{display:block!important;padding:28px 21px!important;border-radius:22px!important}.public-body .cta-box .btn{width:100%!important;margin-top:16px!important}
  .public-body .gallery-mosaic{grid-template-columns:1fr!important;grid-auto-rows:220px!important}.public-body .gallery-tile:first-child{grid-column:auto!important}
  .public-body .home-map-head{padding-bottom:22px!important}.public-body .home-map-head h2{font-size:38px!important}.public-body .home-map-frame{height:330px!important}
  .public-body .footer-grid{grid-template-columns:1fr!important;gap:30px!important}.public-body .footer-rich{padding:52px 0 100px!important}.public-body .footer-logo{max-width:210px!important}
  .public-body .floating-order-button{left:14px!important;right:14px!important;bottom:12px!important;width:auto!important;min-height:52px!important;border-radius:999px!important;justify-content:center!important}
  .public-body .grid-2,.public-body .grid-3,.public-body .grid-4{grid-template-columns:1fr!important}.public-body .card{border-radius:16px!important;padding:16px!important}
  .public-body .product-card{display:grid!important;grid-template-columns:112px minmax(0,1fr)!important;gap:14px!important;align-items:start!important}.public-body .product-card .product-img{order:0!important;width:112px!important;height:112px!important;border-radius:14px!important}.public-body .product-card h3{font-size:18px!important;margin-top:0!important}
  .public-body .product-modal-card{width:100%!important;max-height:94dvh!important;border-radius:24px 24px 0 0!important;margin-top:auto!important}
  .public-body .cart-row{grid-template-columns:1fr!important;gap:10px!important;padding:17px 0!important}.public-body .quantity-stepper{justify-self:start!important}.public-body .cart-row-price{display:flex!important;align-items:center!important;justify-content:space-between!important}
  .public-body [data-cart-page]>.grid,.public-body form.grid.grid-3{grid-template-columns:1fr!important}.public-body .cart-items-card,.public-body form.grid.grid-3>.card{grid-column:auto!important}.public-body .summary{position:static!important}.public-body .checkout-live-summary{order:2!important}
  .public-body .form-row{grid-template-columns:1fr!important;gap:0!important}.public-body .form-control,.public-body .form-select,.public-body textarea{min-height:50px!important;font-size:16px!important}.public-body .check{min-height:44px!important;align-items:center!important}.public-body .check input{width:21px!important;height:21px!important;margin-top:0!important}
  .public-body .page-head{gap:9px!important;margin-bottom:18px!important}.public-body .page-head h1{font-size:30px!important}.public-body .section{padding:32px 0!important}
  .info-popup{align-items:flex-end!important;padding:0!important}.info-popup-card{width:100%!important;max-height:90dvh!important;border-radius:24px 24px 0 0!important;padding:28px 20px calc(22px + env(safe-area-inset-bottom))!important}
  .cookie-banner{left:10px!important;right:10px!important;bottom:10px!important;width:auto!important;display:block!important;padding:18px!important;border-radius:18px!important}.cookie-actions{display:grid!important;grid-template-columns:1fr!important;margin-top:12px!important}
}
@media (max-width:390px){
  .public-body .site-logo{max-width:205px!important;max-height:35px!important}
  .public-body .topnav{width:90vw!important;padding-left:18px!important;padding-right:18px!important}
  .public-body .hero-home h1{font-size:38px!important}
  .public-body .product-card{grid-template-columns:96px minmax(0,1fr)!important}.public-body .product-card .product-img{width:96px!important;height:96px!important}
}

/* 3.2.1 — refined mobile navigation */
.mobile-nav-head,.language-switcher-label{display:none}
.language-switcher-options{display:flex;align-items:center;gap:5px}
.nav-admin-link small,.nav-order-copy small{display:none}
.nav-order-copy strong{font:inherit}
.nav-order-arrow{display:inline-flex;align-items:center;justify-content:center}

@media (max-width:900px){
  .public-body .topnav{
    width:min(91vw,382px)!important;
    padding:0 0 max(14px,env(safe-area-inset-bottom))!important;
    background:linear-gradient(180deg,color-mix(in srgb,var(--paper) 99%,#fff),color-mix(in srgb,var(--paper) 94%,#fff))!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch;
  }
  .public-body .mobile-nav-head{
    display:flex!important;
    min-height:86px;
    flex-direction:column;
    justify-content:center;
    gap:2px;
    padding:17px 72px 15px 22px;
    border-bottom:1px solid color-mix(in srgb,var(--line) 78%,transparent);
    background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 7%,var(--paper)),var(--paper) 66%);
  }
  .public-body .mobile-nav-eyebrow{
    color:var(--primary);
    font-size:10px;
    font-weight:900;
    letter-spacing:.16em;
    line-height:1;
    text-transform:uppercase;
  }
  .public-body .mobile-nav-head strong{
    max-width:235px;
    overflow:hidden;
    color:var(--dark);
    font-size:17px;
    line-height:1.25;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .public-body .mobile-nav-head small{color:#837b71;font-size:12px;line-height:1.35}

  .public-body .main-nav-links{
    gap:4px!important;
    width:auto!important;
    margin:0!important;
    padding:14px 14px 10px!important;
    border:0!important;
  }
  .public-body .main-nav-links>a{
    position:relative!important;
    min-height:50px!important;
    padding:0 42px 0 14px!important;
    border:1px solid transparent!important;
    border-radius:14px!important;
    color:var(--dark)!important;
    font-size:15px!important;
    font-weight:720!important;
    line-height:1.25!important;
    transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease!important;
  }
  .public-body .main-nav-links>a::before{
    content:"";
    position:absolute;
    left:0;
    top:11px;
    bottom:11px;
    width:3px;
    border-radius:0 99px 99px 0;
    background:var(--primary);
    opacity:0;
    transform:scaleY(.45);
    transition:opacity .18s ease,transform .18s ease;
  }
  .public-body .main-nav-links>a::after{
    content:"›"!important;
    position:absolute!important;
    left:auto!important;
    right:15px!important;
    bottom:auto!important;
    top:50%!important;
    width:auto!important;
    height:auto!important;
    background:none!important;
    color:#a39a90!important;
    font-size:25px!important;
    font-weight:400!important;
    line-height:1!important;
    opacity:1!important;
    transform:translateY(-53%)!important;
  }
  .public-body .main-nav-links>a:hover,
  .public-body .main-nav-links>a:focus-visible,
  .public-body .main-nav-links>a.is-active,
  .public-body .main-nav-links>a[aria-current="page"]{
    border-color:color-mix(in srgb,var(--primary) 14%,transparent)!important;
    background:color-mix(in srgb,var(--primary) 8%,#fff)!important;
    color:color-mix(in srgb,var(--primary) 84%,var(--dark))!important;
    transform:none!important;
  }
  .public-body .main-nav-links>a.is-active::before,
  .public-body .main-nav-links>a[aria-current="page"]::before{opacity:1;transform:scaleY(1)}
  .public-body .main-nav-links>a.is-active::after,
  .public-body .main-nav-links>a[aria-current="page"]::after{color:var(--primary)!important}

  .public-body .nav-tools{
    display:flex!important;
    width:auto!important;
    margin:2px 14px 14px!important;
    padding:10px!important;
    gap:7px!important;
    border:1px solid color-mix(in srgb,var(--line) 84%,transparent)!important;
    border-radius:18px!important;
    background:color-mix(in srgb,var(--dark) 3%,#fff)!important;
  }
  .public-body .nav-admin-link{
    display:grid!important;
    grid-template-columns:1fr auto;
    min-height:52px!important;
    align-content:center!important;
    padding:8px 40px 8px 11px!important;
    border-radius:12px!important;
    color:var(--dark)!important;
    position:relative;
  }
  .public-body .nav-admin-link::after{
    content:"↗";
    position:absolute;
    right:13px;
    top:50%;
    color:#8d857b;
    font-size:17px;
    transform:translateY(-50%);
  }
  .public-body .nav-admin-link span{font-size:14px;font-weight:800}
  .public-body .nav-admin-link small{display:block;color:#8d857b;font-size:11px;font-weight:500}
  .public-body .nav-admin-link:hover,.public-body .nav-admin-link:focus-visible{background:#fff!important}

  .public-body .language-switcher{
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:8px 10px 10px!important;
    border-top:1px solid color-mix(in srgb,var(--line) 80%,transparent);
  }
  .public-body .language-switcher-label{
    display:block!important;
    margin:0 0 8px 2px;
    color:#847c72;
    font-size:10px;
    font-weight:900;
    letter-spacing:.13em;
    text-transform:uppercase;
  }
  .public-body .language-switcher-options{display:flex!important;flex-wrap:wrap!important;gap:7px!important}
  .public-body .language-switcher-options a{
    display:grid!important;
    width:auto!important;
    min-width:42px!important;
    min-height:36px!important;
    place-items:center!important;
    padding:7px 11px!important;
    border:1px solid color-mix(in srgb,var(--line) 88%,transparent)!important;
    border-radius:10px!important;
    background:#fff!important;
    color:var(--dark)!important;
    font-size:12px!important;
    font-weight:850!important;
    line-height:1!important;
  }
  .public-body .language-switcher-options a:empty{display:none!important}
  .public-body .language-switcher-options a.active{
    border-color:var(--dark)!important;
    background:var(--dark)!important;
    color:#fff!important;
  }

  .public-body .cart-nav-link{
    display:grid!important;
    grid-template-columns:38px minmax(0,1fr) auto!important;
    min-height:62px!important;
    align-items:center!important;
    gap:10px!important;
    margin:0!important;
    padding:9px 11px!important;
    border:0!important;
    border-radius:14px!important;
    background:#fff!important;
    box-shadow:0 5px 16px rgba(37,32,27,.055)!important;
  }
  .public-body .cart-nav-icon{
    display:grid;
    width:38px;
    height:38px;
    place-items:center;
    border-radius:11px;
    background:color-mix(in srgb,var(--primary) 10%,#fff);
    color:var(--primary);
  }
  .public-body .cart-nav-icon svg{width:20px;height:20px}
  .public-body .cart-nav-copy small{color:#8d857b!important;font-size:10px!important;font-weight:750!important;text-transform:uppercase;letter-spacing:.08em}
  .public-body .cart-nav-copy strong{font-size:15px!important;line-height:1.2!important}
  .public-body .cart-nav-link .pill{
    min-width:28px;
    min-height:28px;
    display:grid;
    place-items:center;
    margin:0!important;
    padding:3px 7px;
    border-radius:9px;
    font-size:11px;
  }

  .public-body .topnav>.nav-order-link{
    position:sticky!important;
    bottom:max(10px,env(safe-area-inset-bottom))!important;
    z-index:2;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 42px!important;
    width:auto!important;
    min-height:62px!important;
    align-items:center!important;
    gap:10px!important;
    margin:auto 14px 0!important;
    padding:10px 10px 10px 17px!important;
    border-radius:17px!important;
    box-shadow:0 13px 30px color-mix(in srgb,var(--primary) 28%,transparent)!important;
  }
  .public-body .nav-order-copy{display:flex;min-width:0;flex-direction:column;align-items:flex-start;line-height:1.15}
  .public-body .nav-order-copy small{display:block;color:rgba(255,255,255,.72);font-size:10px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}
  .public-body .nav-order-copy strong{font-size:15px;font-weight:850}
  .public-body .nav-order-arrow{
    width:42px;
    height:42px;
    border-radius:13px;
    background:rgba(255,255,255,.16);
    font-size:21px;
  }
  .public-body .topnav>.nav-order-link::before{display:none!important}

  .public-body .nav-toggle[aria-expanded="true"]{
    border-color:color-mix(in srgb,var(--dark) 15%,transparent)!important;
    background:color-mix(in srgb,var(--paper) 94%,#fff)!important;
    box-shadow:0 5px 15px rgba(37,32,27,.08)!important;
  }
  .public-body .mobile-nav-backdrop{background:rgba(27,23,19,.48)!important;backdrop-filter:blur(4px)!important}
}

@media (max-width:390px){
  .public-body .topnav{width:94vw!important}
  .public-body .mobile-nav-head{padding-left:18px}
  .public-body .main-nav-links{padding-left:10px!important;padding-right:10px!important}
  .public-body .nav-tools{margin-left:10px!important;margin-right:10px!important}
  .public-body .topnav>.nav-order-link{margin-left:10px!important;margin-right:10px!important}
}

/* 3.2.1 mobile navigation finishing touches */
@media (max-width:900px){
  .public-body .topnav{width:min(89vw,360px)!important}
  .public-body .nav-admin-link{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    justify-content:center!important;
    gap:2px!important;
  }
  .public-body .nav-admin-link span{display:block!important;line-height:1.2!important}
  .public-body .nav-admin-link small{display:block!important;line-height:1.25!important}
  .public-body .language-switcher{
    border:0!important;
    border-top:1px solid color-mix(in srgb,var(--line) 80%,transparent)!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .public-body .cart-nav-copy{
    display:flex!important;
    min-width:0!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:2px!important;
    line-height:1.15!important;
  }
  .public-body .cart-nav-copy small{display:block!important}
}
@media (max-width:390px){.public-body .topnav{width:91vw!important}}
@media (max-width:900px){
  .public-body .topnav .nav-admin-link{
    display:flex!important;
    min-height:52px!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    justify-content:center!important;
    gap:2px!important;
    padding:8px 40px 8px 11px!important;
  }
  .public-body .topnav .cart-nav-link{
    display:grid!important;
    grid-template-columns:38px minmax(0,1fr) auto!important;
    min-height:62px!important;
    align-items:center!important;
    gap:10px!important;
    padding:9px 11px!important;
  }
}


/* 3.2.2 — remove floating order CTA on mobile */
@media (max-width:900px){
  .public-body .floating-order-button{display:none!important}
  .public-body .footer-rich{padding-bottom:36px!important}
}

/* 3.2.3 — louder order sounds and browser audio activation */

/* 3.2.4 — reliable file-based order alarms and clearer audio diagnostics */
.order-alert-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.order-alert-actions>a:last-child{grid-column:1/-1}
.order-alert-actions .btn{width:100%;min-width:0}
.order-audio-status{min-height:38px}
.order-audio-status:empty{display:none}
@media(max-width:420px){
  .order-alert-actions{grid-template-columns:1fr}
  .order-alert-actions>a:last-child{grid-column:auto}
}

/* 3.2.5 — panel administracyjny bez nagłówka strony publicznej */
.dashboard-admin-bar{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid #e3e7ed;box-shadow:0 5px 20px rgba(16,24,40,.06)}
.dashboard-admin-bar-inner{min-height:58px;padding:0 22px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.dashboard-admin-context{min-width:0;display:flex;align-items:baseline;gap:10px}
.dashboard-admin-context strong{font-size:15px;color:#101828;white-space:nowrap}
.dashboard-admin-context small{overflow:hidden;color:#667085;text-overflow:ellipsis;white-space:nowrap}
.dashboard-admin-actions{margin-left:auto;display:flex;align-items:center;justify-content:flex-end;gap:10px}
.dashboard-admin-bar .dashboard-order-alert{margin-left:0}
.dashboard-site-link{min-height:42px;padding:9px 13px;display:inline-flex;align-items:center;gap:7px;border:1px solid #d9dee7;border-radius:12px;background:#fff;color:#344054;font-size:13px;font-weight:750;white-space:nowrap}
.dashboard-site-link:hover{border-color:var(--primary);color:var(--primary)}
.dashboard-site-link span{font-size:16px}
.dashboard-body .dashboard-shell{min-height:calc(100vh - 58px)}
.dashboard-body .topbar{display:none!important}

.dashboard-body.touch-friendly .dashboard-admin-bar-inner{min-height:72px;padding-inline:26px}
.dashboard-body.touch-friendly .dashboard-admin-context strong{font-size:18px}
.dashboard-body.touch-friendly .dashboard-admin-context small{font-size:15px}
.dashboard-body.touch-friendly .dashboard-shell{min-height:calc(100vh - 72px)}
.dashboard-body.touch-friendly .dashboard-site-link{min-height:52px;padding:12px 16px;border-radius:15px;font-size:14px}

@media(max-width:900px){
  .dashboard-admin-bar-inner{padding:0 12px;gap:8px}
  .dashboard-admin-context{display:grid;gap:0;line-height:1.15}
  .dashboard-admin-context strong{font-size:14px}
  .dashboard-admin-context small{max-width:150px;font-size:11px}
  .dashboard-site-link{display:none}
  .dashboard-body .sidebar{top:58px}
  .dashboard-admin-actions{gap:7px}
  .dashboard-admin-bar .order-alert-popover{top:66px}
}
@media(max-width:560px){
  .dashboard-admin-context small{display:none}
  .dashboard-admin-context strong{max-width:125px;overflow:hidden;text-overflow:ellipsis}
  .dashboard-admin-bar .touch-header-button{width:46px;min-height:46px;padding:0;justify-content:center}
  .dashboard-admin-bar .touch-header-button span{display:none}
  .dashboard-admin-bar .order-bell-button{width:46px;height:46px}
}
@media(max-width:1180px){
  .dashboard-body.touch-friendly .sidebar{top:72px}
}
@media print{
  .dashboard-admin-bar{display:none!important}
}

/* 3.2.6 — szybka zmiana statusu na ekranie kuchni */
.kitchen-page-head{align-items:flex-end}
.kitchen-col{display:flex;flex-direction:column}
.kitchen-col-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:3px 5px 13px}
.kitchen-col-head h3{margin:0}
.kitchen-count{min-width:30px;height:30px;padding:0 9px;display:inline-grid;place-items:center;border-radius:999px;background:#fff;color:#344054;font-size:13px;font-weight:800;box-shadow:0 3px 10px rgba(16,24,40,.07)}
.kitchen-ticket-list{min-height:40px}
.kitchen-empty{margin:auto 4px;padding:38px 14px;text-align:center;color:#98a2b3;border:1px dashed #cfd5df;border-radius:13px;background:rgba(255,255,255,.4)}
.kitchen-ticket{transition:transform .25s ease,opacity .25s ease,box-shadow .25s ease}
.kitchen-ticket.is-updating{opacity:.62;pointer-events:none}
.kitchen-ticket-moved{animation:kitchenTicketMoved .6s ease}
.kitchen-ticket-leaving{opacity:0;transform:scale(.96) translateY(8px)}
@keyframes kitchenTicketMoved{0%{transform:scale(.96);box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 26%,transparent)}55%{transform:scale(1.015)}100%{transform:scale(1)}}
.kitchen-ticket-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.kitchen-ticket-head h4{margin:0 0 3px}
.kitchen-ticket-head small{display:block;color:#667085;line-height:1.35}
.kitchen-ticket-head .badge{flex:0 0 auto}
.kitchen-ticket-item+.kitchen-ticket-item{margin-top:11px;padding-top:11px;border-top:1px dashed #e4e7ec}
.kitchen-order-note{margin:12px 0 0;padding:10px 12px}
.kitchen-ticket-actions{display:grid;grid-template-columns:1fr auto;gap:8px}
.kitchen-ticket-actions .btn{min-height:40px}
.kitchen-status-modal .modal-card{width:min(720px,100%);padding:0;overflow:hidden}
.kitchen-status-modal .modal-head{padding:22px 24px 16px;border-bottom:1px solid #eaecf0}
.kitchen-status-modal .modal-head h2{margin:3px 0 0;font-size:24px}
.kitchen-status-modal form{padding:20px 24px 24px}
.kitchen-current-status{margin-bottom:15px;padding:11px 13px;border-radius:12px;background:#f2f4f7;color:#475467}
.kitchen-current-status strong{color:#101828}
.kitchen-status-options{border:0;padding:0;margin:0 0 18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.kitchen-status-options legend{grid-column:1/-1;width:100%;margin-bottom:2px;font-weight:800;color:#101828}
.kitchen-status-option{position:relative;display:block;cursor:pointer}
.kitchen-status-option[hidden]{display:none!important}
.kitchen-status-option input{position:absolute;opacity:0;pointer-events:none}
.kitchen-status-option>span{min-height:72px;padding:12px 14px;display:flex;flex-direction:column;justify-content:center;gap:3px;border:2px solid #e4e7ec;border-radius:14px;background:#fff;transition:border-color .16s,background .16s,transform .16s,box-shadow .16s}
.kitchen-status-option strong{font-size:15px;color:#101828}
.kitchen-status-option small{font-size:12px;line-height:1.35;color:#667085}
.kitchen-status-option:hover>span{border-color:#b8c0cc;transform:translateY(-1px)}
.kitchen-status-option input:focus-visible+span{outline:3px solid color-mix(in srgb,var(--primary) 20%,transparent);outline-offset:2px}
.kitchen-status-option input:checked+span{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,white);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 12%,transparent)}
.kitchen-status-cancelled input:checked+span{border-color:#b42318;background:#fef3f2;box-shadow:0 0 0 3px rgba(180,35,24,.1)}
.kitchen-status-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}
.kitchen-status-actions .btn{min-width:130px}
.kitchen-update-toast{position:fixed;right:22px;bottom:22px;z-index:180;max-width:min(410px,calc(100vw - 28px));padding:13px 17px;border-radius:13px;background:#101828;color:#fff;font-weight:750;box-shadow:0 18px 50px rgba(16,24,40,.24);opacity:0;transform:translateY(14px);pointer-events:none;transition:opacity .2s,transform .2s}
.kitchen-update-toast.is-visible{opacity:1;transform:translateY(0)}
body.kitchen-modal-open{overflow:hidden}
.touch-friendly .kitchen-status-option>span{min-height:88px;padding:16px;border-radius:17px}
.touch-friendly .kitchen-status-option strong{font-size:18px}
.touch-friendly .kitchen-status-option small{font-size:14px}
.touch-friendly .kitchen-status-actions .btn{min-height:56px;font-size:16px}

@media(max-width:700px){
  .kitchen-status-modal{padding:8px;align-items:flex-end}
  .kitchen-status-modal .modal-card{max-height:calc(100dvh - 16px);border-radius:22px 22px 14px 14px}
  .kitchen-status-modal .modal-head{padding:18px 17px 13px}
  .kitchen-status-modal .modal-head h2{font-size:21px}
  .kitchen-status-modal form{padding:15px 17px 17px}
  .kitchen-status-options{grid-template-columns:1fr;gap:8px;max-height:48vh;overflow:auto;padding:2px}
  .kitchen-status-option>span{min-height:62px;padding:10px 12px}
  .kitchen-status-actions{position:sticky;bottom:-17px;margin:15px -17px -17px;padding:12px 17px calc(12px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #eaecf0}
  .kitchen-status-actions .btn{flex:1;min-width:0;min-height:48px}
  .kitchen-ticket-actions{grid-template-columns:1fr}
  .kitchen-ticket-actions .btn{width:100%}
  .kitchen-update-toast{right:14px;bottom:14px;left:14px;max-width:none;text-align:center}
}

/* 3.2.7 — mobile content visibility fail-safe */
@media (max-width:900px){
  /* Animations must never be able to leave the storefront blank on a phone. */
  html.js-ready .public-body [data-animate],
  .public-body .editorial-reveal,
  .public-body .modern-reveal{
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
    filter:none!important;
    transition:none!important;
  }
  .public-body .photo-ribbon-track figure{
    opacity:1!important;
    visibility:visible!important;
    clip-path:inset(0 round 20px)!important;
    transform:none!important;
  }
  .public-body main,
  .public-body #main-content,
  .public-body .home-section,
  .public-body .home-intro,
  .public-body .home-map-section,
  .public-body .section{
    opacity:1!important;
    visibility:visible!important;
  }
}


/* 3.2.8 — storefront visibility first (all viewports, including Safari/macOS).
   Entrance effects are decorative and may never control whether content exists. */
html.js-ready .public-body [data-animate],
html.js-enhanced .public-body [data-animate],
.public-body [data-animate],
.public-body .editorial-reveal,
.public-body .modern-reveal,
.public-body .editorial-reveal.is-editorial-visible,
.public-body .modern-reveal.modern-visible{
  opacity:1!important;
  visibility:visible!important;
  transform:none!important;
  filter:none!important;
}
.public-body .photo-ribbon-track figure,
.public-body .photo-ribbon-track figure.is-revealed{
  opacity:1!important;
  visibility:visible!important;
  transform:none!important;
  clip-path:inset(0 round 26px)!important;
}
.public-body .hero-home,
.public-body .hero-copy,
.public-body .hero-info-card,
.public-body main,
.public-body #main-content,
.public-body .home-section,
.public-body .section,
.public-body .home-map-section{
  opacity:1!important;
  visibility:visible!important;
}


/* 3.2.9 — temporarily unavailable product options */
.product-option-choice.is-temporarily-unavailable{cursor:not-allowed}
.product-option-choice.is-temporarily-unavailable>span{background:#f6f7f8;border-color:#e2e5e9;color:#858b95;opacity:.88}
.product-option-choice.is-temporarily-unavailable>span::before{background:#e7e9ed;border-color:#cfd3d8;box-shadow:none}
.product-option-choice.is-temporarily-unavailable .option-choice-name,
.product-option-choice.is-temporarily-unavailable em{text-decoration:line-through;text-decoration-thickness:1.5px}
.product-option-choice b{display:grid;gap:2px}
.option-temporary-note{display:block;color:#b54708;font-size:11px;font-weight:750;line-height:1.25;text-decoration:none}
.product-option-choice.is-temporarily-unavailable .included-price{color:#8c929b!important}
.option-item-editor.is-temporarily-unavailable{border-color:#f0c36a;background:#fffaf0}
.option-temporary-admin-badge{align-self:center;white-space:nowrap}
.option-temporary-toggle>span{display:grid;gap:2px}
.option-temporary-toggle small{display:block;color:#667085;font-size:11px;line-height:1.35;font-weight:500}
@media(max-width:680px){.option-temporary-admin-badge{grid-column:1/-1;justify-self:start}.option-temporary-toggle{width:100%}}


/* 3.3.0 — employee panel permissions */
.modal-card-wide{width:min(980px,calc(100vw - 32px));max-width:980px}
.employee-access-table td{vertical-align:middle}.permission-summary{display:flex;flex-direction:column;gap:3px;max-width:360px}.permission-summary strong{font-size:13px;line-height:1.45}.permission-summary small{color:#7b8492}
.permission-editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin:24px 0 14px;padding-top:20px;border-top:1px solid #e8eaee}.permission-editor-head h3{margin:0 0 5px}.permission-editor-head p{margin:0}
.permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.permission-group{min-width:0;margin:0;padding:16px;border:1px solid #e2e5ea;border-radius:16px;background:#fafbfc}.permission-group legend{padding:0 7px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#596273}.permission-option{display:flex;align-items:flex-start;gap:11px;padding:11px;border-radius:12px;cursor:pointer;transition:.15s ease}.permission-option:hover{background:#fff;box-shadow:0 4px 16px rgba(30,40,55,.06)}.permission-option input{width:20px;height:20px;flex:0 0 20px;margin:1px 0 0;accent-color:var(--primary)}.permission-option span{display:flex;flex-direction:column;gap:3px;min-width:0}.permission-option strong{font-size:14px}.permission-option small{color:#6f7887;line-height:1.35}.permission-option.is-disabled{opacity:.45;cursor:not-allowed}.permission-form-footer{display:flex;justify-content:flex-end;gap:10px;position:sticky;bottom:0;margin:20px -26px -26px;padding:16px 26px;background:rgba(255,255,255,.96);border-top:1px solid #e8eaee;backdrop-filter:blur(10px)}
@media(max-width:760px){.permission-grid{grid-template-columns:1fr}.permission-editor-head{flex-direction:column}.permission-editor-head .actions{width:100%}.permission-editor-head .actions .btn{flex:1}.permission-form-footer{margin-left:-18px;margin-right:-18px;margin-bottom:-18px;padding:14px 18px}.employee-access-table{min-width:900px}}
.touch-friendly .permission-option{min-height:58px;padding:14px}.touch-friendly .permission-option input{width:26px;height:26px;flex-basis:26px}.touch-friendly .permission-option strong{font-size:16px}


/* 3.3.2 — compact cart with product thumbnails and cross-sell recommendations */
.cart-page-section{padding-top:38px;background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 4%,#f8f7f5),#f7f8fa 320px)}
.cart-page-head{align-items:flex-end;margin-bottom:26px}.cart-page-head h1{font-size:clamp(34px,4vw,52px);line-height:1.05;margin:5px 0 7px}.cart-page-head p{margin:0;color:#777f8c}.cart-page-eyebrow,.cart-summary-eyebrow{display:block;color:var(--primary);font-size:11px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.cart-back-link{display:inline-flex;align-items:center;min-height:44px;padding:9px 14px;border:1px solid #e3ded7;border-radius:999px;background:rgba(255,255,255,.78);font-size:13px;font-weight:750}
.cart-layout-modern{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(290px,.72fr);gap:22px;align-items:start}.cart-items-compact{padding:0;overflow:hidden}.cart-card-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:19px 22px 17px;border-bottom:1px solid #ede9e4}.cart-card-heading h2{font-size:21px;margin:0 0 2px}.cart-card-heading small{color:#7c8490}.cart-count-chip{display:grid;place-items:center;min-width:34px;height:34px;padding:0 10px;border-radius:999px;background:color-mix(in srgb,var(--primary) 11%,#fff);color:var(--primary);font-size:13px;font-weight:850}
.cart-item-list{padding:0 22px}.cart-row-modern{grid-template-columns:76px minmax(0,1fr) auto;gap:15px;padding:15px 0}.cart-product-thumb{width:76px;height:76px;display:block;border-radius:15px;object-fit:cover;background:#eeeae5}.cart-product-copy{min-width:0}.cart-product-copy>strong{display:block;font-size:16px;line-height:1.25;color:#282d35}.cart-option-list{display:flex;flex-wrap:wrap;gap:4px 7px;margin-top:7px}.cart-option-list span{font-size:11px;line-height:1.25;color:#69717d}.cart-option-list span:not(:last-child)::after{content:' ·';color:#b7b0a8}.cart-product-note{margin-top:6px;color:#8b5f3f;font-size:11px}.cart-remove-inline{margin-top:7px;font-size:11px;text-decoration:underline;text-underline-offset:3px}.cart-row-controls{display:grid;justify-items:end;gap:9px}.cart-line-price{font-size:15px;white-space:nowrap}.cart-items-compact .cart-auto-note{margin:0;padding:13px 22px;background:#faf9f7;border-top:1px solid #eeeae5}
.cart-summary-modern{position:sticky;top:92px;padding:24px;border-radius:22px}.cart-summary-modern h2{margin:5px 0 21px;font-size:25px}.cart-summary-modern .summary-line{font-size:15px}.cart-summary-separator{height:1px;background:#ece7e1;margin:17px 0}.cart-delivery-note{display:flex;gap:10px;align-items:flex-start;margin:0 0 18px;color:#727b87;font-size:12px;line-height:1.5}.cart-delivery-note span{flex:0 0 20px;width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:#f0ede8;font-size:11px;font-weight:850}.cart-checkout-button{min-height:54px;justify-content:space-between;padding-inline:18px}.cart-checkout-button>strong{padding-left:13px;border-left:1px solid rgba(255,255,255,.28)}.cart-continue-link{display:block;margin-top:15px;text-align:center;color:#6d7580;font-size:12px;font-weight:750}
.cart-recommendations{margin-top:38px;padding-top:30px;border-top:1px solid #e7e2dc}.cart-recommendations-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:17px}.cart-recommendations-head h2{font-size:clamp(25px,3vw,35px);margin:4px 0 5px}.cart-recommendations-head p{margin:0;color:#747d89}.cart-recommendation-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.cart-recommendation-card{position:relative;display:grid;grid-template-columns:66px minmax(0,1fr) 38px;align-items:center;gap:11px;min-height:90px;padding:11px;border:1px solid #e6e1db;border-radius:18px;background:#fff;box-shadow:0 7px 24px rgba(31,26,21,.045);transition:transform .18s ease,box-shadow .18s ease}.cart-recommendation-card:hover{transform:translateY(-2px);box-shadow:0 13px 32px rgba(31,26,21,.08)}.cart-recommendation-media{width:66px;height:66px;padding:0;border:0;border-radius:13px;overflow:hidden;background:#eee;cursor:pointer}.cart-recommendation-media img{width:100%;height:100%;object-fit:cover}.cart-recommendation-copy{min-width:0}.cart-recommendation-copy small,.cart-recommendation-copy strong,.cart-recommendation-copy span{display:block}.cart-recommendation-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8a919b;font-size:10px;text-transform:uppercase;letter-spacing:.06em}.cart-recommendation-copy strong{overflow:hidden;margin:2px 0 4px;color:#2f343b;font-size:13px;line-height:1.25}.cart-recommendation-copy span{color:var(--primary);font-size:13px;font-weight:850}.cart-recommendation-add{width:38px;height:38px;display:grid;place-items:center;border:0;border-radius:12px;background:var(--primary);color:#fff;font-size:21px;font-weight:500;cursor:pointer}.cart-recommendation-add.is-loading{font-size:0}.cart-recommendation-add .button-spinner{width:15px;height:15px}
.recommendation-setting{padding:12px 13px;border:1px solid #e5e0da;border-radius:13px;background:#faf9f7}.recommendation-setting span{display:grid}.recommendation-setting small{margin-top:2px;color:#737b86;font-weight:400}
@media(max-width:1050px){.cart-recommendation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.cart-layout-modern{grid-template-columns:1fr}.cart-summary-modern{position:static}.cart-page-head{align-items:flex-start}.cart-page-head .cart-back-link{margin-top:5px}}
@media(max-width:620px){.cart-page-section{padding-top:25px}.cart-page-head{margin-bottom:17px}.cart-page-head h1{font-size:36px}.cart-layout-modern{gap:14px}.cart-card-heading{padding:16px}.cart-item-list{padding:0 16px}.cart-row-modern{grid-template-columns:64px minmax(0,1fr);gap:12px;padding:14px 0}.cart-product-thumb{width:64px;height:64px;border-radius:13px}.cart-row-controls{grid-column:2;display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:-3px}.cart-product-copy>strong{font-size:15px}.cart-items-compact .cart-auto-note{padding:12px 16px}.cart-summary-modern{padding:20px}.cart-recommendations{margin-top:29px;padding-top:24px}.cart-recommendation-grid{grid-template-columns:1fr}.cart-recommendation-card{grid-template-columns:62px minmax(0,1fr) 40px}.cart-recommendation-media{width:62px;height:62px}.cart-recommendations-head p{font-size:13px}.cart-back-link{min-height:40px}}

/* Cart-specific overrides for the earlier mobile storefront rules. */
@media(max-width:800px){
  .public-body .cart-items-card.cart-items-compact{padding:0!important}
  .public-body .cart-row.cart-row-modern{grid-template-columns:76px minmax(0,1fr)!important;gap:13px!important;padding:15px 0!important}
  .public-body .cart-row-modern .cart-row-controls{grid-column:2!important;display:flex!important;align-items:center!important;justify-content:space-between!important;width:100%!important}
  .public-body .cart-summary-modern{padding:22px!important}
}
@media(max-width:620px){
  .public-body .cart-row.cart-row-modern{grid-template-columns:64px minmax(0,1fr)!important;gap:12px!important;padding:14px 0!important}
  .public-body .cart-summary-modern{padding:20px!important}
}

/* 3.3.4 — ekran kuchni na żywo i kompaktowy tryb gastronomiczny */
.kitchen-live-controls{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.kitchen-live-state{display:grid;grid-template-columns:10px auto;grid-template-rows:auto auto;column-gap:8px;align-items:center;min-width:155px;padding:8px 12px;border:1px solid #d0d5dd;border-radius:13px;background:#fff}.kitchen-live-state>span{grid-row:1/3;width:10px;height:10px;border-radius:50%;background:#98a2b3;box-shadow:0 0 0 4px rgba(152,162,179,.15)}.kitchen-live-state strong{font-size:13px;line-height:1.15}.kitchen-live-state small{font-size:10px;line-height:1.2;color:#667085;white-space:nowrap}.kitchen-live-state.is-online>span{background:#12b76a;box-shadow:0 0 0 4px rgba(18,183,106,.14)}.kitchen-live-state.is-syncing>span{background:#f79009;box-shadow:0 0 0 4px rgba(247,144,9,.14);animation:kitchenLivePulse 1s infinite}.kitchen-live-state.is-offline>span{background:#f04438;box-shadow:0 0 0 4px rgba(240,68,56,.14)}@keyframes kitchenLivePulse{50%{opacity:.35;transform:scale(.8)}}
.kitchen-col-head{position:sticky;top:0;z-index:2;padding:6px 5px 10px;margin:-4px 0 8px;background:inherit}.kitchen-col-new{background:#fff1f0}.kitchen-col-accepted{background:#eef4ff}.kitchen-col-preparing{background:#fff8e8}.kitchen-col-ready{background:#ecfdf3}.kitchen-col-new .kitchen-col-head{color:#b42318}.kitchen-col-accepted .kitchen-col-head{color:#3538cd}.kitchen-col-preparing .kitchen-col-head{color:#b54708}.kitchen-col-ready .kitchen-col-head{color:#027a48}.kitchen-col-new .kitchen-ticket{border-left-color:#f04438}.kitchen-col-accepted .kitchen-ticket{border-left-color:#6172f3}.kitchen-col-preparing .kitchen-ticket{border-left-color:#f79009}.kitchen-col-ready .kitchen-ticket{border-left-color:#12b76a}
.kitchen-ticket{position:relative;cursor:default}.kitchen-ticket:focus-visible{outline:3px solid color-mix(in srgb,var(--primary) 24%,transparent);outline-offset:2px}.kitchen-ticket-age{position:absolute;right:12px;top:46px;min-width:52px;text-align:right;font-size:11px;font-weight:800;color:#667085}.kitchen-ticket.is-delayed .kitchen-ticket-age{color:#b54708}.kitchen-ticket.is-critical .kitchen-ticket-age{color:#b42318}.kitchen-ticket.is-critical{box-shadow:0 0 0 2px rgba(240,68,56,.18),0 8px 24px rgba(16,24,40,.1)}.kitchen-ticket-summary{margin-top:12px;padding-top:11px;border-top:1px dashed #d0d5dd}.kitchen-ticket-item{display:flex;flex-direction:column;gap:2px}.kitchen-ticket-item small{font-size:11px;line-height:1.3;color:#667085}.kitchen-ticket-item .kitchen-item-note{color:#b54708;font-weight:700}.kitchen-more-items{margin-top:9px;padding-top:8px;border-top:1px dashed #e4e7ec;font-size:12px;font-weight:800;color:#475467}.kitchen-ticket-new{animation:kitchenTicketNew .8s ease}@keyframes kitchenTicketNew{0%{opacity:0;transform:translateY(-12px) scale(.97);box-shadow:0 0 0 5px rgba(18,183,106,.22)}55%{opacity:1;transform:translateY(0) scale(1.01)}100%{transform:scale(1)}}
.kitchen-preview-modal .modal-card{width:min(880px,100%);padding:0;overflow:hidden}.kitchen-preview-modal .modal-head{padding:20px 24px 15px;border-bottom:1px solid #eaecf0}.kitchen-preview-modal .modal-head h2{margin:3px 0 0}.kitchen-preview-content{padding:20px 24px;overflow:auto}.kitchen-preview-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}.kitchen-preview-top p{margin:6px 0 0;color:#667085}.kitchen-preview-total{font-size:24px;white-space:nowrap}.kitchen-preview-section{padding:15px;border:1px solid #e4e7ec;border-radius:15px;background:#fff}.kitchen-preview-section h3{margin:0 0 12px;font-size:15px;text-transform:uppercase;letter-spacing:.04em;color:#475467}.kitchen-preview-items{display:grid;gap:0}.kitchen-preview-item{padding:11px 0;border-bottom:1px dashed #d0d5dd}.kitchen-preview-item:first-child{padding-top:0}.kitchen-preview-item:last-child{padding-bottom:0;border-bottom:0}.kitchen-preview-item strong{font-size:17px}.kitchen-preview-item ul{margin:5px 0 0;padding-left:20px;color:#475467}.kitchen-preview-item-note{margin-top:6px;padding:7px 9px;border-radius:8px;background:#fffaeb;color:#b54708;font-weight:700}.kitchen-preview-note{margin:14px 0 0}.kitchen-preview-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.kitchen-preview-grid [data-kitchen-preview-customer],.kitchen-preview-grid [data-kitchen-preview-payment]{display:flex;flex-direction:column;gap:5px}.kitchen-preview-grid a{color:var(--primary);font-weight:800}.kitchen-preview-actions{display:flex;justify-content:flex-end;gap:10px;padding:14px 24px calc(14px + env(safe-area-inset-bottom));border-top:1px solid #eaecf0;background:#fff}.kitchen-preview-actions .btn{min-width:140px}
body.touch-friendly .kitchen-page-head{align-items:center;margin-bottom:12px}body.touch-friendly .kitchen-page-head h1{font-size:26px}body.touch-friendly .kitchen-page-head .muted{font-size:13px;margin-top:2px}body.touch-friendly .kitchen-live-controls{gap:7px}body.touch-friendly .kitchen-live-state{min-width:138px;padding:6px 10px;border-radius:11px}body.touch-friendly .kitchen-live-controls .btn{min-height:42px;padding:9px 12px;font-size:13px}body.touch-friendly .dashboard-main{padding:14px 12px}body.touch-friendly .kitchen{grid-template-columns:repeat(4,minmax(250px,1fr));gap:10px;align-items:start;overflow:auto;padding-bottom:8px}body.touch-friendly .kitchen-col{min-height:calc(100vh - 210px);max-height:calc(100vh - 190px);overflow:auto;padding:8px;border-radius:14px}body.touch-friendly .kitchen-col-head{padding:7px 5px 8px;margin:-2px 0 6px;backdrop-filter:blur(10px)}body.touch-friendly .kitchen-col-head h3{font-size:16px;margin:0}body.touch-friendly .kitchen-count{min-width:26px;height:26px;font-size:12px}body.touch-friendly .kitchen-ticket{padding:10px 10px 9px;margin-bottom:8px;border-radius:12px;border-left-width:5px;box-shadow:0 3px 10px rgba(16,24,40,.08);touch-action:manipulation;cursor:pointer}body.touch-friendly .kitchen-ticket-head h4{font-size:16px}body.touch-friendly .kitchen-ticket-head small{font-size:11px;padding-right:44px}body.touch-friendly .kitchen-ticket-head .badge{font-size:10px;padding:3px 6px}body.touch-friendly .kitchen-ticket-age{top:39px;right:9px;font-size:10px}body.touch-friendly .kitchen-ticket-summary{margin-top:9px;padding-top:8px}body.touch-friendly .kitchen-ticket-item{gap:1px}body.touch-friendly .kitchen-ticket-item+.kitchen-ticket-item{margin-top:6px;padding-top:6px}body.touch-friendly .kitchen-ticket-item strong{font-size:13px;line-height:1.2}body.touch-friendly .kitchen-ticket-item small{font-size:10px}body.touch-friendly .kitchen-order-note{margin-top:7px;padding:7px 8px;font-size:11px}body.touch-friendly .kitchen-more-items{margin-top:6px;padding-top:6px;font-size:10px}body.touch-friendly .kitchen-ticket-actions{grid-template-columns:1fr 1.25fr;gap:6px;margin-top:9px}body.touch-friendly .kitchen-ticket-actions .btn{min-height:40px;padding:8px 9px;border-radius:10px;font-size:12px}body.touch-friendly .kitchen-empty{padding:24px 8px;font-size:12px}body.touch-friendly .kitchen-preview-modal{padding:8px}body.touch-friendly .kitchen-preview-modal .modal-card{width:min(940px,100%);max-height:calc(100dvh - 16px);border-radius:18px}body.touch-friendly .kitchen-preview-modal .modal-head{padding:14px 17px 11px}body.touch-friendly .kitchen-preview-modal .modal-head h2{font-size:21px}body.touch-friendly .kitchen-preview-content{padding:13px 17px}body.touch-friendly .kitchen-preview-top{margin-bottom:11px}body.touch-friendly .kitchen-preview-total{font-size:21px}body.touch-friendly .kitchen-preview-section{padding:12px;border-radius:12px}body.touch-friendly .kitchen-preview-item{padding:8px 0}body.touch-friendly .kitchen-preview-item strong{font-size:16px}body.touch-friendly .kitchen-preview-grid{gap:10px;margin-top:10px}body.touch-friendly .kitchen-preview-actions{position:sticky;bottom:0;padding:10px 17px calc(10px + env(safe-area-inset-bottom));display:grid;grid-template-columns:.8fr 1fr 1.2fr}body.touch-friendly .kitchen-preview-actions .btn{min-width:0;min-height:48px;padding:10px;font-size:14px}
@media(max-width:1180px){body.touch-friendly .kitchen{grid-template-columns:repeat(4,minmax(245px,78vw))}body.touch-friendly .kitchen-col{min-height:560px;max-height:none}.kitchen-live-controls{justify-content:flex-start}}
@media(max-width:720px){.kitchen-preview-grid{grid-template-columns:1fr}.kitchen-preview-top{align-items:flex-start}.kitchen-preview-actions{display:grid;grid-template-columns:1fr}.kitchen-preview-actions .btn{width:100%;min-width:0}body.touch-friendly .kitchen-page-head{display:grid;grid-template-columns:1fr}body.touch-friendly .kitchen-live-controls{justify-content:space-between}body.touch-friendly .kitchen{grid-template-columns:repeat(4,minmax(270px,88vw))}body.touch-friendly .kitchen-preview-actions{grid-template-columns:1fr 1fr}body.touch-friendly .kitchen-preview-actions [data-kitchen-preview-status-open]{grid-column:1/-1;grid-row:1}body.touch-friendly .kitchen-preview-actions .btn{min-height:46px}}

/* 3.3.4 — przeciąganie zamówień i orientacyjny czas realizacji */
.kitchen-col{transition:box-shadow .18s ease,transform .18s ease,border-color .18s ease}
.kitchen-col.is-drop-target{box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 38%,transparent),0 18px 42px rgba(16,24,40,.15);transform:translateY(-2px)}
.kitchen-col.is-drop-target .kitchen-col-head::after{content:'Upuść tutaj';display:inline-flex;margin-left:auto;padding:4px 8px;border-radius:999px;background:#fff;color:#344054;font-size:10px;font-weight:850;box-shadow:0 2px 8px rgba(16,24,40,.08)}
.kitchen-drag-handle{position:absolute;top:9px;left:8px;z-index:3;width:25px;height:27px;display:grid;place-items:center;padding:0;border:0;border-radius:8px;background:#f2f4f7;color:#667085;font-size:16px;font-weight:900;line-height:1;letter-spacing:-2px;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}
.kitchen-drag-handle:hover,.kitchen-drag-handle:focus-visible{background:#e4e7ec;color:#101828;outline:2px solid color-mix(in srgb,var(--primary) 24%,transparent)}
.kitchen-drag-handle:active{cursor:grabbing}
.kitchen-ticket-head{padding-left:28px}
.kitchen-ticket.is-dragging{opacity:.45;transform:scale(.985);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 25%,transparent)}
.kitchen-drag-ghost{position:fixed!important;z-index:10050!important;pointer-events:none!important;opacity:.94!important;transform:rotate(1.5deg) scale(.98)!important;max-height:280px;overflow:hidden;box-shadow:0 22px 55px rgba(16,24,40,.28)!important}
body.kitchen-dragging{user-select:none;-webkit-user-select:none;overflow:hidden}
.kitchen-ticket-estimate{display:inline-flex;align-items:center;min-height:25px;margin-top:5px;padding:3px 8px;border:1px dashed #d0d5dd;border-radius:999px;background:#fff;color:#667085;font-size:10px;font-weight:800;cursor:pointer}
.kitchen-ticket-estimate:hover,.kitchen-ticket-estimate:focus-visible{border-style:solid;border-color:var(--primary);color:var(--primary);outline:0}
.kitchen-ticket-estimate.has-estimate{border-style:solid;border-color:#a6f4c5;background:#ecfdf3;color:#027a48}
.kitchen-preview-estimate{margin-top:4px;padding:7px 9px;border-radius:9px;background:#ecfdf3;color:#027a48}
.kitchen-estimate-editor{margin:14px 0;padding:14px;border:1px solid #d0d5dd;border-radius:15px;background:#f9fafb}
.kitchen-estimate-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}
.kitchen-estimate-head .form-label{margin:0 0 2px}
.kitchen-estimate-head small{display:block;color:#667085;font-size:11px;line-height:1.4}
.kitchen-estimate-quick{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:10px}
.kitchen-estimate-quick button{min-height:36px;padding:7px 11px;border:1px solid #d0d5dd;border-radius:10px;background:#fff;color:#344054;font-size:12px;font-weight:800;cursor:pointer}
.kitchen-estimate-quick button:hover,.kitchen-estimate-quick button:focus-visible{border-color:var(--primary);color:var(--primary);outline:0}
.kitchen-estimate-editor .input-suffix{display:grid;grid-template-columns:minmax(100px,150px) auto;align-items:center;gap:8px}
.kitchen-estimate-editor .input-suffix span{color:#667085;font-size:12px;font-weight:700}
.order-estimate-highlight[hidden]{display:none!important}
body.touch-friendly .kitchen-drag-handle{top:7px;left:7px;width:30px;height:31px;font-size:18px;border-radius:9px}
body.touch-friendly .kitchen-ticket-head{padding-left:33px}
body.touch-friendly .kitchen-ticket-estimate{min-height:29px;margin-top:4px;padding:4px 8px;font-size:10px}
body.touch-friendly .kitchen-estimate-editor{margin:10px 0;padding:11px;border-radius:12px}
body.touch-friendly .kitchen-estimate-quick{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
body.touch-friendly .kitchen-estimate-quick button{min-height:42px;padding:7px 5px}
@media(max-width:720px){.kitchen-estimate-head{display:grid}.kitchen-estimate-head .btn{justify-self:start}.kitchen-estimate-editor .input-suffix{grid-template-columns:minmax(90px,130px) auto}.kitchen-col.is-drop-target .kitchen-col-head::after{display:none}}


/* 3.3.5 — wysuwane menu panelu w trybie dotykowym */
.touch-menu-button{display:none;min-height:48px;padding:9px 13px;align-items:center;justify-content:center;gap:4px;border:1px solid #d9dee7;border-radius:13px;background:#fff;color:#344054;font:inherit;font-weight:800;cursor:pointer}
.touch-menu-icon{width:20px;display:grid;gap:4px}.touch-menu-icon i{display:block;width:20px;height:2px;border-radius:2px;background:currentColor}.touch-menu-button b{font-size:13px}
.sidebar-drawer-head{display:none}.sidebar-nav{display:flex;flex-direction:column;gap:4px}.touch-menu-backdrop{display:none}.touch-menu-pin-form{margin-top:12px}.touch-menu-pin-form label{display:flex;align-items:flex-start;gap:9px;padding:10px;border:1px solid rgba(255,255,255,.16);border-radius:12px;background:rgba(255,255,255,.06);cursor:pointer}.touch-menu-pin-form input{width:20px;height:20px;margin-top:2px;accent-color:var(--accent)}.touch-menu-pin-form span{display:grid;gap:2px}.touch-menu-pin-form strong{font-size:13px;color:#fff}.touch-menu-pin-form small{font-size:10px;line-height:1.35;color:#98a2b3}.employee-menu-mode{display:block;margin-top:6px;color:#667085;font-size:11px}
.dashboard-body.touch-friendly .touch-menu-button{display:inline-flex}
.dashboard-body.touch-friendly .dashboard-shell{display:block}
.dashboard-body.touch-friendly .sidebar{position:fixed!important;inset:72px auto 0 0!important;z-index:70;width:270px;max-width:88vw;padding:0 12px 18px;display:flex!important;flex-direction:column!important;align-items:stretch!important;overflow-y:auto;overflow-x:hidden;transform:translateX(-104%);transition:transform .24s ease,box-shadow .24s ease;box-shadow:none;scroll-snap-type:none!important}
.dashboard-body.touch-friendly.touch-menu-open .sidebar{transform:translateX(0);box-shadow:18px 0 45px rgba(16,24,40,.26)}
.dashboard-body.touch-friendly .sidebar-drawer-head{position:sticky;top:0;z-index:2;margin:0 -12px 8px;padding:13px 15px;display:flex;align-items:center;justify-content:space-between;background:#101828;border-bottom:1px solid rgba(255,255,255,.1);color:#fff}
.dashboard-body.touch-friendly .sidebar-drawer-head button{width:42px;height:42px;border:0;border-radius:11px;background:#344054;color:#fff;font-size:27px;cursor:pointer}
.dashboard-body.touch-friendly .sidebar-user{min-width:0!important;padding:8px 5px 14px!important;display:flex!important;flex-direction:column!important}
.dashboard-body.touch-friendly .sidebar-user small{display:block!important}
.dashboard-body.touch-friendly .sidebar-nav{display:flex;flex-direction:column;gap:5px}
.dashboard-body.touch-friendly .sidebar-nav a{min-width:0!important;min-height:49px;padding:12px 13px;display:flex;align-items:center;scroll-snap-align:none!important}
.dashboard-body.touch-friendly .touch-menu-backdrop{position:fixed;inset:72px 0 0;z-index:65;border:0;background:rgba(16,24,40,.48);backdrop-filter:blur(2px);cursor:pointer}
.dashboard-body.touch-friendly.touch-menu-open .touch-menu-backdrop{display:block}
.dashboard-body.touch-friendly.touch-menu-open{overflow:hidden}
.dashboard-body.touch-friendly .dashboard-main{margin-left:0;transition:margin-left .24s ease;padding:14px 12px}
@media(min-width:1000px){.dashboard-body.touch-friendly.touch-menu-pinned .sidebar{transform:translateX(0);box-shadow:18px 0 45px rgba(16,24,40,.2)}.dashboard-body.touch-friendly.touch-menu-pinned .sidebar-drawer-head button{display:none}.dashboard-body.touch-friendly.touch-menu-pinned .dashboard-main{margin-left:270px}.dashboard-body.touch-friendly.touch-menu-pinned .touch-menu-backdrop{display:none}.dashboard-body.touch-friendly.touch-menu-pinned{overflow:auto}}
@media(max-width:760px){.dashboard-body.touch-friendly .sidebar{inset:72px auto 0 0!important;width:min(300px,90vw)}.touch-menu-button b{display:none}.touch-menu-button{width:48px;padding:0}.dashboard-body.touch-friendly.touch-menu-pinned .dashboard-main{margin-left:0}}

/* Cała karta zamówienia jest uchwytem w trybie dotykowym. */
body.touch-friendly .kitchen-ticket{cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}
body.touch-friendly .kitchen-ticket:active{cursor:grabbing}
body.touch-friendly .kitchen-ticket button,body.touch-friendly .kitchen-ticket a,body.touch-friendly .kitchen-ticket input,body.touch-friendly .kitchen-ticket select,body.touch-friendly .kitchen-ticket textarea,body.touch-friendly .kitchen-ticket label{touch-action:manipulation;user-select:auto;-webkit-user-select:auto}
body.touch-friendly .kitchen-drag-handle{pointer-events:none;opacity:.65}
body.touch-friendly.kitchen-dragging .kitchen-ticket:not(.is-dragging){opacity:.72}
@media(max-width:900px){.dashboard-body:not(.touch-friendly) .sidebar-nav{display:flex;flex-direction:row;gap:4px}.dashboard-body:not(.touch-friendly) .sidebar-nav a{white-space:nowrap}}

/* 3.4.0 — sala, stoliki i rachunki kelnerskie */
.touch-menu-pin-form{margin-top:7px}
.touch-menu-pin-form label{gap:6px;padding:6px 7px;border-radius:9px;align-items:center}
.touch-menu-pin-form input{width:15px;height:15px;margin:0;flex:0 0 auto}
.touch-menu-pin-form span{display:block;line-height:1.1}
.touch-menu-pin-form strong{font-size:11px;line-height:1.2}
.touch-menu-pin-form small{display:none}
.touch-menu-pin-create{padding:8px 10px!important;margin:8px 0!important;border-radius:10px;background:#f9fafb}
.touch-menu-pin-create input{width:16px;height:16px;margin-top:2px}
.touch-menu-pin-create span{gap:1px!important}.touch-menu-pin-create strong{font-size:12px}.touch-menu-pin-create small{font-size:10px}
.dining-page-head{align-items:flex-start}.dining-page-head .actions{justify-content:flex-end}.dining-page-head .btn[disabled]{opacity:.45;cursor:not-allowed}
.dining-stats{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 20px}.dining-stats>div{display:flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid #e4e7ec;border-radius:999px;background:#fff;color:#475467;font-size:12px;font-weight:750}.dining-stats strong{color:#101828;font-size:14px}.dining-dot{width:9px;height:9px;border-radius:50%;background:#98a2b3}.dining-status-free .dining-dot,.dining-dot.dining-status-free{background:#12b76a}.dining-status-occupied .dining-dot,.dining-dot.dining-status-occupied{background:#f79009}.dining-status-ready .dining-dot,.dining-dot.dining-status-ready{background:#12b76a;box-shadow:0 0 0 4px rgba(18,183,106,.16)}.dining-status-bill_requested .dining-dot,.dining-dot.dining-status-bill_requested{background:#f04438}.dining-status-reserved .dining-dot,.dining-dot.dining-status-reserved{background:#6172f3}.dining-status-cleaning .dining-dot,.dining-dot.dining-status-cleaning{background:#667085}
.dining-empty{padding:50px;text-align:center}.dining-room-section{margin:0 0 28px}.dining-room-head{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin:0 0 12px}.dining-room-head h2{margin:0;font-size:23px}.dining-room-head small{color:#667085}.dining-room-empty{color:#667085;text-align:center}
.dining-table-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(175px,1fr));gap:14px}.dining-table-card{position:relative;min-height:195px;padding:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:2px solid #e4e7ec;border-radius:20px;background:#fff;box-shadow:0 7px 24px rgba(16,24,40,.055);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.dining-table-card:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(16,24,40,.12)}.dining-table-card h3{margin:8px 0 0;font-size:18px}.dining-table-card>p{margin:1px 0;color:#667085;font-size:12px}.dining-table-status{position:absolute;top:10px;right:10px;padding:4px 7px;border-radius:999px;background:#f2f4f7;color:#475467;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.dining-table-card.dining-status-free{border-color:#abefc6}.dining-table-card.dining-status-free .dining-table-status{background:#ecfdf3;color:#027a48}.dining-table-card.dining-status-occupied{border-color:#fedf89;background:#fffcf5}.dining-table-card.dining-status-occupied .dining-table-status{background:#fef0c7;color:#b54708}.dining-table-card.dining-status-bill_requested{border-color:#fda29b;background:#fff7f6}.dining-table-card.dining-status-bill_requested .dining-table-status{background:#fee4e2;color:#b42318}.dining-table-card.dining-status-reserved{border-color:#c7d7fe;background:#f5f8ff}.dining-table-card.dining-status-reserved .dining-table-status{background:#e0e7ff;color:#3538cd}.dining-table-card.dining-status-cleaning,.dining-table-card.dining-status-blocked{background:#f2f4f7;border-color:#d0d5dd}.dining-table-card.dining-status-blocked{opacity:.72}
.dining-table-shape{width:66px;height:50px;display:grid;place-items:center}.dining-table-shape i{display:block;width:52px;height:42px;border:3px solid currentColor;border-radius:10px;color:#667085;box-shadow:-11px 0 0 -8px currentColor,11px 0 0 -8px currentColor,0 -11px 0 -8px currentColor,0 11px 0 -8px currentColor}.dining-table-round .dining-table-shape i,.dining-table-shape.dining-table-round i{width:48px;height:48px;border-radius:50%}.dining-table-rectangle .dining-table-shape i,.dining-table-shape.dining-table-rectangle i{width:65px;height:39px}.dining-status-free .dining-table-shape i{color:#039855}.dining-status-occupied .dining-table-shape i{color:#dc6803}.dining-status-bill_requested .dining-table-shape i{color:#d92d20}.dining-status-reserved .dining-table-shape i{color:#444ce7}
.dining-table-meta{width:100%;margin-top:11px;padding-top:9px;border-top:1px solid rgba(152,162,179,.25);display:grid;gap:1px}.dining-table-meta strong{font-size:16px}.dining-table-meta small{color:#667085;font-size:10px}.dining-table-meta em{justify-self:center;margin-top:4px;padding:3px 6px;border-radius:999px;background:#fff4e5;color:#b54708;font-size:9px;font-style:normal;font-weight:800}
.dining-back-link{display:inline-block;margin-bottom:5px;color:#475467;font-size:13px;font-weight:750}.dining-table-page-head h1{margin-top:2px}.dining-closed-layout{align-items:start}.dining-table-idle{min-height:245px;display:flex;align-items:center;justify-content:center;gap:28px;text-align:left}.dining-table-idle .dining-table-shape{width:120px;height:100px}.dining-table-idle .dining-table-shape i{transform:scale(1.65)}.dining-table-idle h2{margin:2px 0 7px;font-size:29px}.dining-table-idle p{margin:0;color:#667085}.dining-state-actions .actions{gap:8px}
.dining-session-strip{margin-bottom:16px;padding:13px 16px;display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid #fedf89;border-radius:16px;background:#fffcf5}.dining-session-strip.is-bill{border-color:#fda29b;background:#fff6f5}.dining-session-strip>div:first-child{display:grid;grid-template-columns:auto auto;align-items:center;gap:1px 7px}.dining-session-strip small{grid-column:2;color:#667085}.dining-session-strip>div:last-child{text-align:right}.dining-session-strip>div:last-child span{display:block;color:#667085;font-size:11px}.dining-session-strip>div:last-child strong{font-size:23px}.dining-live-pulse{width:10px;height:10px;border-radius:50%;background:#f79009;box-shadow:0 0 0 5px rgba(247,144,9,.13)}.dining-session-strip.is-bill .dining-live-pulse{background:#f04438;box-shadow:0 0 0 5px rgba(240,68,56,.13)}
.dining-workspace{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(320px,.8fr);gap:18px;align-items:start}.dining-menu-panel{min-width:0}.dining-menu-category{margin-bottom:23px}.dining-menu-category>h3{margin:0 0 9px;font-size:17px}.dining-product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.dining-product-card{min-height:82px;padding:10px;display:grid;grid-template-columns:58px 1fr 28px;gap:10px;align-items:center;border:1px solid #e4e7ec;border-radius:14px;background:#fff;box-shadow:0 4px 14px rgba(16,24,40,.035);transition:border-color .15s ease,transform .15s ease}.dining-product-card:hover{border-color:var(--primary);transform:translateY(-1px)}.dining-product-card img,.dining-product-placeholder{width:58px;height:58px;border-radius:10px;object-fit:cover;background:#f2f4f7;display:grid;place-items:center}.dining-product-card div{min-width:0;display:grid}.dining-product-card strong{font-size:13px}.dining-product-card small{min-height:16px;color:#667085;font-size:10px}.dining-product-card b{margin-top:3px;color:var(--primary);font-size:12px}.dining-product-card>span:last-child{width:28px;height:28px;display:grid;place-items:center;border-radius:9px;background:var(--primary);color:#fff;font-size:20px;font-weight:500}.dining-bill-panel{position:sticky;top:88px;display:grid;gap:12px}.dining-bill-panel .card{padding:16px}.dining-draft-card .section-title{margin-bottom:10px}.dining-draft-card h2,.dining-rounds-card h2,.dining-session-actions h2{font-size:18px}.dining-draft-empty{padding:26px 10px;border:1px dashed #d0d5dd;border-radius:12px;text-align:center;color:#667085;font-size:12px}.dining-draft-list{display:grid;gap:8px}.dining-draft-list article{padding:10px;border:1px solid #eaecf0;border-radius:12px;background:#f9fafb;display:grid;grid-template-columns:1fr auto;gap:6px}.dining-draft-list article>div:first-child{display:grid}.dining-draft-list article small,.dining-draft-list article em{color:#667085;font-size:10px;font-style:normal}.dining-draft-list article em{color:#b54708}.dining-item-actions{grid-column:1/-1;display:flex;justify-content:space-between;gap:6px}.dining-item-actions form:first-child{display:flex;gap:5px}.dining-item-actions .form-control{width:64px;padding:6px 8px}.dining-send-form{margin-top:11px}.dining-round-list{display:grid;gap:6px}.dining-round-list a{padding:8px 9px;display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center;border:1px solid #eaecf0;border-radius:10px}.dining-round-list a:hover{background:#f9fafb}.dining-round-list a>span:first-child{display:grid}.dining-round-list small{color:#667085;font-size:9px}.dining-round-list b{font-size:12px}.dining-session-actions{display:grid;gap:9px}.dining-session-actions form{margin:0}.dining-move-form{padding-top:8px;border-top:1px solid #eaecf0}.dining-move-form>div{display:grid;grid-template-columns:1fr auto;gap:6px}.dining-payment-option{padding:11px;border:1px solid #e4e7ec;border-radius:12px}.dining-payment-option:has(input:checked){border-color:var(--primary);background:color-mix(in srgb,var(--primary) 6%,white)}.dining-payment-option span{display:grid}.dining-payment-option small{color:#667085;font-size:11px}
.dining-product-config{align-items:start}.dining-product-hero{height:250px;margin:-20px -20px 18px;border-radius:18px 18px 0 0;background:#f2f4f7 center/cover no-repeat}.dining-product-config h2{margin-bottom:7px}.dining-product-form{position:sticky;top:88px}
body.touch-friendly .dining-table-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}body.touch-friendly .dining-table-card{min-height:170px;padding:12px}body.touch-friendly .dining-workspace{grid-template-columns:minmax(0,1.35fr) minmax(300px,.85fr);gap:10px}body.touch-friendly .dining-product-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:7px}body.touch-friendly .dining-product-card{min-height:72px;padding:7px;grid-template-columns:50px 1fr 34px}body.touch-friendly .dining-product-card img,body.touch-friendly .dining-product-placeholder{width:50px;height:50px}body.touch-friendly .dining-product-card>span:last-child{width:34px;height:34px}body.touch-friendly .dining-bill-panel .btn{min-height:46px}
@media(max-width:1050px){.dining-workspace{grid-template-columns:1fr}.dining-bill-panel{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.dining-draft-card,.dining-session-actions{grid-column:span 1}.dining-rounds-card{grid-column:1/-1}.dining-product-form{position:static}}
@media(max-width:700px){.dining-page-head .actions,.dining-table-page-head .actions{width:100%}.dining-page-head .actions .btn,.dining-table-page-head .actions .btn{flex:1}.dining-stats{display:grid;grid-template-columns:repeat(2,1fr)}.dining-stats>div{justify-content:center}.dining-table-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.dining-table-card{min-height:165px;padding:11px}.dining-table-status{top:7px;right:7px}.dining-table-meta strong{font-size:14px}.dining-table-idle{min-height:180px;gap:12px}.dining-table-idle .dining-table-shape{display:none}.dining-session-strip{align-items:flex-start;padding:11px}.dining-session-strip>div:last-child strong{font-size:19px}.dining-workspace{display:flex;flex-direction:column}.dining-menu-panel,.dining-bill-panel{width:100%}.dining-bill-panel{display:grid;grid-template-columns:1fr}.dining-draft-card,.dining-rounds-card,.dining-session-actions{grid-column:auto}.dining-product-grid{grid-template-columns:1fr}.dining-product-card{min-height:76px}.dining-product-hero{height:190px}.dining-closed-layout>section,.dining-closed-layout>form{grid-column:1!important}.dining-room-head{align-items:center}}

/* 3.4.1 — widoczne wejście do modułu oraz zarządzania salami i stolikami */
.dashboard-module-shortcut{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:18px;padding:20px 22px;border:1px solid color-mix(in srgb,var(--primary) 22%,#e4e7ec);border-radius:17px;background:linear-gradient(110deg,color-mix(in srgb,var(--primary) 7%,#fff),#fff);box-shadow:0 8px 28px rgba(16,24,40,.045)}
.dashboard-module-shortcut h2,.dining-management-panel h2{margin:2px 0 5px}.dashboard-module-shortcut p,.dining-management-panel p{margin:0;color:#667085}
.dining-management-panel{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px;padding:19px 21px;border:1px solid #e4e7ec;border-radius:16px;background:#fff;box-shadow:0 7px 24px rgba(16,24,40,.04);scroll-margin-top:92px}
.dining-management-panel .actions{justify-content:flex-end;flex:0 0 auto}
@media(max-width:760px){.dashboard-module-shortcut,.dining-management-panel{align-items:flex-start;flex-direction:column}.dashboard-module-shortcut .btn,.dining-management-panel .actions,.dining-management-panel .btn{width:100%}.dining-management-panel .actions{display:grid;grid-template-columns:1fr}}

/* 3.5.2 — wizualny rzut sali, szybka obsługa dotykowa i dyskretny status gotowych partii */
.dining-room-tabs{position:sticky;top:72px;z-index:22;margin:0 0 14px;padding:7px;display:flex;gap:7px;overflow-x:auto;border:1px solid #e4e7ec;border-radius:14px;background:rgba(255,255,255,.96);box-shadow:0 7px 20px rgba(16,24,40,.05);scrollbar-width:thin}.dining-room-tabs a{flex:0 0 auto;min-height:40px;padding:8px 13px;display:flex;align-items:center;border-radius:10px;background:#f2f4f7;color:#344054;font-size:12px;font-weight:800}.dining-room-tabs a:hover{background:var(--primary);color:#fff}
.dining-room-section{scroll-margin-top:135px}.dining-layout-message{min-height:28px;margin:-4px 0 8px;padding:5px 10px;border-radius:9px;color:#667085;font-size:11px;font-weight:650}.dining-layout-message[data-state="dirty"]{background:#fffaeb;color:#b54708}.dining-layout-message[data-state="saving"]{background:#eff8ff;color:#175cd3}.dining-layout-message[data-state="saved"]{background:#ecfdf3;color:#027a48}.dining-layout-message[data-state="error"]{background:#fef3f2;color:#b42318}
.dining-floor-scroll{overflow:auto;border:1px solid #d0d5dd;border-radius:20px;background:#f8fafc;box-shadow:inset 0 0 0 1px rgba(255,255,255,.75),0 10px 30px rgba(16,24,40,.045)}.dining-floor-plan{position:relative;min-width:760px;overflow:hidden;background-color:#fdfdfd;background-image:linear-gradient(rgba(71,84,103,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(71,84,103,.07) 1px,transparent 1px),linear-gradient(rgba(71,84,103,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(71,84,103,.035) 1px,transparent 1px);background-size:40px 40px,40px 40px,10px 10px,10px 10px}.dining-floor-plan::before{content:"";position:absolute;inset:18px;border:2px solid #d0d5dd;border-radius:12px;pointer-events:none}.dining-floor-label{position:absolute;top:27px;left:34px;z-index:1;padding:5px 9px;border-radius:8px;background:rgba(255,255,255,.88);color:#98a2b3;font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;pointer-events:none}
.dining-floor-table{position:absolute;left:var(--x);top:var(--y);width:var(--tw);height:var(--th);z-index:3;transform:rotate(var(--rot));border:2px solid #a6f4c5;border-radius:16px;background:#ecfdf3;box-shadow:0 7px 18px rgba(16,24,40,.12);transition:box-shadow .15s ease,filter .15s ease,transform .15s ease;user-select:none;-webkit-user-select:none}.dining-floor-table.dining-table-round{border-radius:50%}.dining-floor-table.dining-table-rectangle{border-radius:15px}.dining-floor-table>a{width:100%;height:100%;padding:9px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;text-align:center;color:#101828;overflow:hidden}.dining-floor-table>a>strong{max-width:100%;font-size:14px;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dining-floor-table>a>small{color:#667085;font-size:9px}.dining-floor-table>a>b{max-width:100%;margin-top:3px;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dining-floor-table>a>em{max-width:100%;color:#667085;font-size:8px;font-style:normal;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dining-floor-status{position:absolute;top:5px;right:6px;padding:2px 5px;border-radius:999px;background:rgba(255,255,255,.88);font-size:7px;font-weight:900;text-transform:uppercase;letter-spacing:.03em}.dining-drag-cue{display:none;position:absolute;inset:auto 50% -9px auto;z-index:4;transform:translateX(50%);padding:3px 7px;border-radius:999px;background:#101828;color:#fff;font-size:8px;font-weight:850;white-space:nowrap;pointer-events:none}
.dining-floor-table.dining-status-occupied{border-color:#fec84b;background:#fffaeb}.dining-floor-table.dining-status-ready{z-index:6;border-color:#039855;background:#d1fadf;animation:diningReadyPulse 1.15s ease-in-out infinite}.dining-floor-table.dining-status-ready .dining-floor-status{width:22px;height:22px;padding:0;display:grid;place-items:center;background:#027a48;color:#fff;font-size:0;line-height:1;box-shadow:0 0 0 3px rgba(255,255,255,.82)}.dining-floor-table.dining-status-ready .dining-floor-status::before{content:"✓";font-size:13px;font-weight:950}.dining-floor-table.dining-status-ready>a>strong{position:relative;z-index:2;color:#05603a}.dining-floor-table.dining-status-bill_requested{border-color:#fda29b;background:#fef3f2}.dining-floor-table.dining-status-reserved{border-color:#a4bcfd;background:#eef4ff}.dining-floor-table.dining-status-cleaning{border-color:#b2b8c2;background:#f2f4f7}.dining-floor-table.dining-status-blocked{border-color:#98a2b3;background:#e4e7ec;filter:grayscale(.35);opacity:.78}.dining-floor-table:hover{z-index:5;box-shadow:0 12px 26px rgba(16,24,40,.18)}
.dining-room-section.is-layout-editing .dining-floor-plan{outline:3px solid color-mix(in srgb,var(--primary) 25%,transparent);outline-offset:-3px}.dining-room-section.is-layout-editing .dining-floor-table{cursor:grab;touch-action:none;z-index:8;box-shadow:0 10px 24px rgba(16,24,40,.18)}.dining-room-section.is-layout-editing .dining-floor-table>a{pointer-events:none}.dining-room-section.is-layout-editing .dining-drag-cue{display:block}.dining-room-section.is-layout-editing .dining-floor-table:focus-visible{outline:4px solid color-mix(in srgb,var(--primary) 35%,transparent);outline-offset:3px}.dining-room-section.is-layout-editing .dining-floor-table.is-dragging{cursor:grabbing;z-index:20;transition:none;box-shadow:0 20px 40px rgba(16,24,40,.28);filter:saturate(1.1)}
.dining-category-tabs{position:sticky;top:72px;z-index:24;margin:0 0 14px;padding:7px;display:flex;gap:7px;overflow-x:auto;border:1px solid #e4e7ec;border-radius:14px;background:rgba(255,255,255,.97);box-shadow:0 8px 22px rgba(16,24,40,.06);scrollbar-width:thin}.dining-category-tabs a,.dining-category-tabs button{flex:0 0 auto;min-height:42px;padding:8px 12px;border:0;border-radius:10px;background:#f2f4f7;color:#344054;font:inherit;font-size:11px;font-weight:850;cursor:pointer}.dining-category-tabs a:last-child{background:#101828;color:#fff}.dining-category-tabs .dining-custom-item-button{background:var(--primary);color:#fff}.dining-menu-category{scroll-margin-top:145px}
.dining-custom-badge{justify-self:start;margin:3px 0;padding:2px 6px;border-radius:999px;background:#f4ebff;color:#6941c6!important;font-weight:850}.printer-dine-in-setting,.notification-dine-in-setting{margin-top:8px;padding:11px 12px;border:1px solid #e4e7ec;border-radius:12px;background:#f9fafb}.printer-dine-in-setting span,.notification-dine-in-setting span{display:grid;gap:2px}.printer-dine-in-setting small,.notification-dine-in-setting small{color:#667085;font-size:10px;line-height:1.35}
.dining-floating-return{position:fixed;right:18px;bottom:18px;z-index:50;min-height:48px;padding:11px 15px;display:flex;align-items:center;justify-content:center;border-radius:999px;background:#101828;color:#fff!important;font-size:13px;font-weight:850;box-shadow:0 13px 32px rgba(16,24,40,.26)}.dining-floating-return:hover{transform:translateY(-1px)}
.dining-touch-bar{display:none;position:fixed;left:50%;bottom:10px;z-index:60;transform:translateX(-50%);width:min(520px,calc(100% - 20px));padding:7px;grid-template-columns:repeat(3,1fr);gap:6px;border:1px solid rgba(255,255,255,.22);border-radius:17px;background:rgba(16,24,40,.94);box-shadow:0 16px 38px rgba(16,24,40,.32);backdrop-filter:blur(12px)}.dining-touch-bar a,.dining-touch-bar button{min-height:53px;padding:6px;border:0;border-radius:12px;background:rgba(255,255,255,.1);color:#fff;font:inherit;font-size:10px;font-weight:800;display:grid;place-items:center;gap:1px;cursor:pointer}.dining-touch-bar span{font-size:20px;line-height:1}.dining-touch-qty{max-width:150px;font-size:20px;text-align:center}
body.touch-friendly .dining-room-tabs,body.touch-friendly .dining-category-tabs{top:69px}body.touch-friendly .dining-room-head .btn{min-height:48px;padding:10px 13px}body.touch-friendly .dining-floor-table>a>strong{font-size:15px}body.touch-friendly .dining-table-page-head .actions .btn{min-height:50px}body.touch-friendly .dining-product-card{min-height:94px;padding:10px;grid-template-columns:62px 1fr 46px;gap:10px}body.touch-friendly .dining-product-card img,body.touch-friendly .dining-product-placeholder{width:62px;height:62px}body.touch-friendly .dining-product-card strong{font-size:14px}body.touch-friendly .dining-product-card b{font-size:13px}body.touch-friendly .dining-product-card>span:last-child{width:46px;height:46px;border-radius:13px;font-size:27px}body.touch-friendly .dining-draft-list article{padding:13px}body.touch-friendly .dining-item-actions .btn{min-height:44px}body.touch-friendly .dining-item-actions .form-control{width:74px;min-height:44px;font-size:18px;text-align:center}body.touch-friendly .dining-touch-bar{display:grid}body.touch-friendly .dining-floating-return{display:none}body.touch-friendly .dashboard-main{padding-bottom:88px}
@media(max-width:760px){.dining-room-tabs{top:70px}.dining-room-head{align-items:flex-start;flex-direction:column}.dining-room-head .actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.dining-room-head .actions form,.dining-room-head .actions .btn{width:100%}.dining-floor-scroll{margin:0 -4px;border-radius:14px}.dining-floor-plan{min-width:720px}.dining-category-tabs{top:70px;margin-left:-4px;margin-right:-4px;border-radius:11px}.dining-table-page-head .actions{display:grid;grid-template-columns:repeat(2,1fr)}.dining-table-page-head .actions .btn:first-child{grid-column:1/-1}.dining-menu-panel .section-title{align-items:flex-start;flex-direction:column}.dining-menu-panel .section-title .btn{width:100%}.dining-touch-bar{display:grid}.dining-floating-return{display:none}.dashboard-main{padding-bottom:88px}.dining-product-page-head .btn{display:none}}

.dining-product-quick-form{margin:0;min-width:0}.dining-product-quick-form .dining-product-card{width:100%;font:inherit;text-align:left;border:1px solid #e4e7ec;cursor:pointer}.dining-product-quick-form .dining-product-card:active{transform:scale(.985)}


/* 3.5.2 — gotowe partie, odbiór i kompaktowa historia */
@keyframes diningReadyPulse{0%,100%{box-shadow:0 0 0 0 rgba(3,152,85,.20),0 8px 20px rgba(3,152,85,.18);transform:rotate(var(--rot)) scale(1)}50%{box-shadow:0 0 0 10px rgba(3,152,85,0),0 16px 34px rgba(3,152,85,.30);transform:rotate(var(--rot)) scale(1.045)}}
.dining-session-strip.is-ready{border-color:#6ce9a6;background:#ecfdf3;box-shadow:0 0 0 3px rgba(18,183,106,.08)}
.dining-session-strip.is-ready .dining-live-pulse{background:#12b76a;box-shadow:0 0 0 5px rgba(18,183,106,.15);animation:diningLiveReady 1.1s ease-in-out infinite}
@keyframes diningLiveReady{50%{transform:scale(1.35);box-shadow:0 0 0 9px rgba(18,183,106,0)}}
.btn-success{border-color:#039855;background:#039855;color:#fff}.btn-success:hover{border-color:#027a48;background:#027a48;color:#fff}
.dining-round-row{display:grid;gap:6px;padding:7px;border:1px solid #eaecf0;border-radius:12px;background:#fff}.dining-round-row>a{border:0;padding:3px}.dining-round-row.is-ready{border-color:#6ce9a6;background:#ecfdf3;box-shadow:0 0 0 3px rgba(18,183,106,.07)}
.dining-round-row.is-ready>a{background:transparent}.dining-round-row form{margin:0}.dining-round-row .btn-success{min-height:44px;font-weight:850}
.dining-order-history{margin-top:12px;border-top:1px solid #eaecf0;padding-top:10px}.dining-order-history summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:10px;color:#475467;font-size:12px;font-weight:800;list-style:none}.dining-order-history summary::-webkit-details-marker{display:none}.dining-order-history summary span{padding:3px 7px;border-radius:999px;background:#f2f4f7}.dining-order-history[open] summary{margin-bottom:8px}.dining-round-history{max-height:230px;overflow:auto;opacity:.88}.dining-round-history a{background:#f9fafb}
.kitchen-ticket-actions .btn-success{flex:1;min-height:40px;font-weight:850}
@media(prefers-reduced-motion:reduce){.dining-floor-table.dining-status-ready,.dining-session-strip.is-ready .dining-live-pulse{animation:none}}
.dining-room-section.is-layout-editing .dining-floor-table.dining-status-ready{animation:none}

/* FoodOrder Pro 3.6.1 — pełnoekranowy terminal obsługi stolików. */
.table-terminal-body{margin:0;min-height:100vh;background:#000;color:#f2f2f2;font-family:Consolas,"Lucida Console","Courier New",monospace;line-height:1.2;overscroll-behavior:none;touch-action:manipulation}
.table-terminal-body *{box-shadow:none!important;text-shadow:none!important}
.table-terminal-main{min-height:100vh;background:#000}
.terminal-topbar{height:64px;display:grid;grid-template-columns:minmax(220px,1fr) auto minmax(320px,1fr);align-items:center;border-bottom:2px solid #d8d8d8;background:#050505;padding:0 14px;gap:16px;position:sticky;top:0;z-index:90}
.terminal-brand,.terminal-user,.terminal-summary{display:flex;align-items:center;gap:12px;min-width:0}
.terminal-brand span{display:grid;place-items:center;width:44px;height:34px;border:2px solid #eee;font-weight:900;letter-spacing:1px}
.terminal-brand strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:17px;text-transform:uppercase}
.terminal-summary{justify-content:center;gap:8px}
.terminal-summary b{border:1px solid #777;padding:8px 10px;font-size:12px;white-space:nowrap;font-weight:700}
.terminal-summary span{font-size:15px;margin-left:4px}
.terminal-user{justify-content:flex-end;font-size:12px}
.terminal-user>[data-terminal-clock]{font-size:20px;font-weight:900;min-width:92px;text-align:center}
.terminal-user small{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#bbb}
.terminal-user button,.terminal-user a{appearance:none;border:1px solid #aaa;background:#090909;color:#fff;padding:9px 10px;font:700 11px/1 Consolas,"Courier New",monospace;cursor:pointer;border-radius:0}
.terminal-user button:active,.terminal-user a:active{background:#fff;color:#000}
.terminal-room-tabs{display:flex;gap:0;overflow-x:auto;border-bottom:1px solid #777;background:#050505;padding:0 8px;position:sticky;top:64px;z-index:80}
.terminal-room-tabs button{min-height:50px;min-width:150px;border:0;border-right:1px solid #555;background:#050505;color:#aaa;font:800 14px/1 Consolas,"Courier New",monospace;padding:0 18px;cursor:pointer;border-radius:0}
.terminal-room-tabs button:first-child{border-left:1px solid #555}
.terminal-room-tabs button.is-active{background:#eee;color:#000}
.terminal-legend{height:36px;display:flex;align-items:center;justify-content:center;gap:20px;border-bottom:1px solid #333;color:#aaa;font-size:11px;white-space:nowrap;overflow-x:auto;padding:0 10px}
.terminal-legend span{display:flex;align-items:center;gap:6px}
.terminal-legend i{width:12px;height:12px;border:2px solid #aaa;display:inline-block}
.terminal-legend .is-free{border-color:#9a9a9a}.terminal-legend .is-occupied{border-color:#ffb000}.terminal-legend .is-ready{border-color:#00ff66;background:#00ff66}.terminal-legend .is-bill{border-color:#00c8ff}.terminal-legend .is-reserved{border-color:#c084fc}.terminal-legend .is-cleaning{border-color:#777;background:#333}
.terminal-rooms{height:calc(100vh - 150px);min-height:420px;overflow:hidden}
.terminal-room{display:none;height:100%;padding:10px}
.terminal-room.is-active{display:block}
.terminal-room-plan{position:relative;width:100%;height:100%;min-height:420px;max-height:var(--terminal-plan-height);border:1px solid #444;background-color:#000;background-image:linear-gradient(#171717 1px,transparent 1px),linear-gradient(90deg,#171717 1px,transparent 1px);background-size:28px 28px;overflow:auto}
.terminal-table{position:absolute;left:var(--x);top:var(--y);width:var(--tw);height:var(--th);min-width:76px;min-height:62px;transform:rotate(var(--rot));border:3px solid #999;background:#080808;color:#fff;z-index:2}
.terminal-table>a,.terminal-table>button{position:relative;width:100%;height:100%;border:0;background:transparent;color:inherit;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:6px;cursor:pointer;font-family:inherit;overflow:hidden;border-radius:0}
.terminal-table strong{font-size:clamp(15px,1.7vw,23px);line-height:1;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.terminal-table small{font-size:10px;color:#aaa}.terminal-table b{font-size:12px;color:#fff}.terminal-table em{font-size:9px;color:#bbb;font-style:normal;text-transform:uppercase;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.terminal-shape-round{border-radius:50%}.terminal-shape-round>a,.terminal-shape-round>button{border-radius:50%}.terminal-shape-square,.terminal-shape-rectangle{border-radius:0}
.terminal-table.dining-status-free{border-color:#aaa}.terminal-table.dining-status-occupied{border-color:#ffb000;background:#171000}.terminal-table.dining-status-ready{border-color:#00ff66;background:#001d0c}.terminal-table.dining-status-bill_requested{border-color:#00c8ff;background:#00131a}.terminal-table.dining-status-reserved{border-color:#c084fc;background:#160b24}.terminal-table.dining-status-cleaning{border-color:#666;background:#202020}.terminal-table.dining-status-blocked{border-color:#555;background:#111;color:#777}
.terminal-table.dining-status-ready{animation:terminal-ready-blink 1s steps(2,end) infinite}
@keyframes terminal-ready-blink{0%,49%{border-color:#00ff66;background:#001d0c}50%,100%{border-color:#fff;background:#075d2c}}
.terminal-ready-icon{position:absolute;top:5px;right:5px;width:19px;height:19px;border:1px solid #00ff66;background:#000;color:#00ff66;display:grid;place-items:center;font:bold 13px/1 Consolas,monospace;z-index:4}
.terminal-modal.modal{background:rgba(0,0,0,.86)}
.terminal-modal .modal-card{width:min(520px,calc(100% - 24px));border:2px solid #eee;background:#050505;color:#fff;border-radius:0;padding:18px}
.terminal-modal .modal-head{border-bottom:1px solid #555;padding-bottom:12px;margin-bottom:16px}.terminal-modal .modal-head h2{font-size:30px;margin:4px 0 0}.terminal-modal .modal-head small{color:#aaa}.terminal-modal .modal-close{border:1px solid #aaa;background:#000;color:#fff;border-radius:0;width:44px;height:44px;font:28px/1 monospace}
.terminal-open-form{display:grid;gap:14px}.terminal-open-form label{display:grid;gap:7px;font-size:12px;font-weight:800;color:#bbb}.terminal-open-form input,.terminal-open-form select,.terminal-open-form textarea{width:100%;border:2px solid #888;background:#000;color:#fff;border-radius:0;padding:13px;font:700 18px/1.2 Consolas,"Courier New",monospace;outline:none}.terminal-open-form input:focus,.terminal-open-form select:focus,.terminal-open-form textarea:focus{border-color:#fff}.terminal-action-primary{width:100%;min-height:58px;border:2px solid #fff;background:#fff;color:#000;font:900 18px/1 Consolas,"Courier New",monospace;cursor:pointer;border-radius:0}.terminal-action-primary:active{background:#000;color:#fff}
.terminal-reservation{border:1px solid #c084fc;padding:12px;display:flex;justify-content:space-between;gap:10px;color:#e7d2ff}.terminal-reservation span{font-weight:700}.terminal-modal-status{border:1px solid #777;padding:18px;text-align:center;font-size:20px}
.terminal-empty{height:calc(100vh - 64px);display:grid;place-content:center;text-align:center;gap:10px}.terminal-empty strong{font-size:34px}.terminal-empty span{color:#aaa}
.terminal-flash{position:fixed;left:50%;top:72px;transform:translateX(-50%);z-index:200;border:2px solid #fff;background:#000;color:#fff;padding:12px 20px;font-weight:800;max-width:min(720px,calc(100% - 24px))}.terminal-flash-success{border-color:#00ff66}.terminal-flash-danger{border-color:#ff4545}.terminal-flash-warning{border-color:#ffb000}

/* Uproszczone ekrany rachunku otwierane z terminala. */
.table-terminal-detail{background:#000;color:#eee;overflow-x:hidden}
.table-terminal-detail .table-terminal-main{padding:16px 18px 92px;max-width:1680px;margin:auto}
.table-terminal-detail .page-head,.table-terminal-detail .dining-session-strip,.table-terminal-detail .card,.table-terminal-detail .dining-menu-panel,.table-terminal-detail .dining-bill-panel>div,.table-terminal-detail .modal-card{border:1px solid #666;background:#050505;color:#eee;border-radius:0;box-shadow:none}
.table-terminal-detail .page-head{padding:12px;margin-bottom:12px}.table-terminal-detail .page-head h1,.table-terminal-detail h2,.table-terminal-detail h3{font-family:Consolas,"Courier New",monospace;text-transform:uppercase}.table-terminal-detail .muted,.table-terminal-detail .notice,.table-terminal-detail small{color:#aaa}
.table-terminal-detail .btn,.table-terminal-detail button,.table-terminal-detail .form-control,.table-terminal-detail .form-select,.table-terminal-detail textarea{border-radius:0;font-family:Consolas,"Courier New",monospace;box-shadow:none}
.table-terminal-detail .btn{border:1px solid #aaa;background:#111;color:#fff}.table-terminal-detail .btn-primary,.table-terminal-detail .btn-success{border-color:#fff;background:#eee;color:#000}.table-terminal-detail .btn-danger{border-color:#ff5555;background:#210000;color:#fff}
.table-terminal-detail .form-control,.table-terminal-detail .form-select,.table-terminal-detail textarea{border:1px solid #888;background:#000;color:#fff}
.table-terminal-detail .dining-product-card{border:1px solid #666;background:#070707;color:#fff;border-radius:0}.table-terminal-detail .dining-product-card img,.table-terminal-detail .dining-product-hero{filter:grayscale(1);border-radius:0}.table-terminal-detail .dining-product-card:hover{border-color:#fff}
.table-terminal-detail .dining-category-tabs,.table-terminal-detail .dining-touch-bar{background:#000;border-color:#666}.table-terminal-detail .dining-category-tabs a,.table-terminal-detail .dining-category-tabs button,.table-terminal-detail .dining-touch-bar a,.table-terminal-detail .dining-touch-bar button{border-radius:0;background:#090909;color:#fff;border:1px solid #666}
.table-terminal-detail .dining-floating-return{position:fixed;left:12px;bottom:12px;z-index:120;border:2px solid #fff;background:#000;color:#fff;border-radius:0;padding:14px 18px;font:bold 14px/1 Consolas,monospace}
.table-terminal-detail .modal{background:rgba(0,0,0,.88)}
.table-terminal-detail .dining-session-strip.is-ready{animation:terminal-ready-blink 1s steps(2,end) infinite;border-color:#00ff66}
/* 3.6.1 — duże, tekstowe przyciski produktów bez zdjęć w terminalu. */
.table-terminal-detail .dining-menu-panel>.section-title{align-items:stretch;gap:14px}.table-terminal-detail .dining-menu-panel>.section-title .btn{min-height:58px;padding:13px 18px;font-size:15px;font-weight:900;white-space:nowrap}
.table-terminal-detail .dining-menu-category{margin-bottom:30px}.table-terminal-detail .dining-menu-category>h3{margin-bottom:12px;padding:9px 12px;border-left:5px solid #fff;background:#0b0b0b;font-size:20px;letter-spacing:.035em}
.table-terminal-detail .dining-product-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.table-terminal-detail .dining-product-quick-form{height:100%}
.table-terminal-detail .dining-product-card{width:100%;min-height:116px;height:100%;padding:18px 16px;display:grid;grid-template-columns:minmax(0,1fr) 56px;gap:16px;align-items:center;border:2px solid #777;background:#050505;text-align:left;touch-action:manipulation;user-select:none;-webkit-user-select:none}
.table-terminal-detail .dining-product-card img,.table-terminal-detail .dining-product-placeholder,.table-terminal-detail .dining-product-hero{display:none!important}
.table-terminal-detail .dining-product-card div{min-width:0;display:flex;flex-direction:column;justify-content:center;gap:8px}
.table-terminal-detail .dining-product-card strong{font-size:20px;line-height:1.15;color:#fff;overflow-wrap:anywhere}
.table-terminal-detail .dining-product-card small{display:none}
.table-terminal-detail .dining-product-card b{margin:0;color:#fff;font-size:16px;line-height:1.1}
.table-terminal-detail .dining-product-card>span:last-child{width:56px;height:56px;display:grid;place-items:center;border:2px solid #fff;background:#111;color:#fff;border-radius:0;font-size:34px;font-weight:900}
.table-terminal-detail .dining-product-card:hover,.table-terminal-detail .dining-product-card:focus-visible{border-color:#fff;background:#111;outline:none;transform:none}
.table-terminal-detail .dining-product-card:active{background:#fff;color:#000;transform:scale(.985)}.table-terminal-detail .dining-product-card:active strong,.table-terminal-detail .dining-product-card:active b{color:#000}.table-terminal-detail .dining-product-card:active>span:last-child{border-color:#000;background:#fff;color:#000}
.table-terminal-detail .dining-category-tabs a,.table-terminal-detail .dining-category-tabs button{min-height:56px;padding:13px 18px;font-size:15px;font-weight:900}
.table-terminal-detail .dining-product-config{gap:14px}.table-terminal-detail .dining-product-config>.card{padding:22px}.table-terminal-detail .dining-product-config>.card>h2{font-size:27px}.table-terminal-detail .dining-product-config .price{font-size:25px}
.table-terminal-detail .product-option-choice span{min-height:58px;padding:14px 15px;border-radius:0;font-size:16px}.table-terminal-detail .product-option-choice span::before{width:22px;height:22px}.table-terminal-detail .product-option-choice em{font-size:14px}
.table-terminal-detail .dining-product-form .form-control,.table-terminal-detail .dining-product-form textarea{min-height:58px;padding:13px 15px;font-size:18px}.table-terminal-detail .dining-product-form textarea{min-height:92px}.table-terminal-detail .dining-touch-qty{font-size:24px!important;text-align:center}.table-terminal-detail .dining-product-form .btn-lg{min-height:66px;font-size:19px;font-weight:900}

@media(max-width:1100px){.terminal-topbar{grid-template-columns:1fr auto}.terminal-summary{display:none}.terminal-user small{display:none}.terminal-room-tabs{top:64px}.terminal-table strong{font-size:16px}.terminal-table b{font-size:11px}.terminal-legend{justify-content:flex-start}.table-terminal-detail .dining-workspace{grid-template-columns:1fr}}
@media(max-width:720px){.terminal-topbar{height:auto;min-height:60px;padding:8px;grid-template-columns:1fr auto}.terminal-brand span{display:none}.terminal-brand strong{font-size:13px}.terminal-user{gap:5px}.terminal-user>[data-terminal-clock]{font-size:15px;min-width:48px}.terminal-user button,.terminal-user a{padding:9px 6px;font-size:9px}.terminal-room-tabs{top:60px}.terminal-room-tabs button{min-width:125px;min-height:46px;font-size:12px}.terminal-legend{display:none}.terminal-rooms{height:calc(100vh - 106px)}.terminal-room{padding:5px}.terminal-room-plan{background-size:22px 22px}.terminal-table{min-width:68px}.terminal-table em{display:none}.table-terminal-detail .table-terminal-main{padding:8px 8px 92px}.table-terminal-detail .dining-product-grid{grid-template-columns:1fr}.table-terminal-detail .dining-product-card{min-height:104px}}

/* 3.6.2 — czytelne pozycje robocze na ciemnym terminalu stolików. */
.table-terminal-detail .dining-draft-list article{
  border:2px solid #777;
  background:#080808;
  color:#fff;
}
.table-terminal-detail .dining-draft-list article>div:first-child>strong,
.table-terminal-detail .dining-draft-list article>strong{
  color:#fff!important;
  font-size:17px;
  line-height:1.25;
}
.table-terminal-detail .dining-draft-list article>strong{
  align-self:start;
  white-space:nowrap;
  font-size:18px;
}
.table-terminal-detail .dining-draft-list article small{
  color:#bbb!important;
}
.table-terminal-detail .dining-draft-list article em{
  color:#ffd166!important;
}
.table-terminal-detail .dining-draft-list .dining-custom-badge{
  width:max-content;
  border:1px solid #aaa;
  background:#111;
  color:#fff!important;
  border-radius:0;
}
.table-terminal-detail .dining-item-actions{
  margin-top:5px;
  padding-top:10px;
  border-top:1px solid #555;
}
.table-terminal-detail .dining-item-actions .form-control{
  min-height:48px;
  border:2px solid #fff;
  background:#000;
  color:#fff;
  font-size:20px;
  font-weight:900;
  text-align:center;
}
.table-terminal-detail .dining-item-actions .btn{
  min-height:48px;
  padding:11px 16px;
  font-size:14px;
  font-weight:900;
}

/* 3.6.3 — pełne, zawsze widoczne nazwy stolików. */
.dining-floor-table>a,
.terminal-table>a,
.terminal-table>button{
  overflow:visible;
}
.dining-floor-table [data-fit-table-name],
.terminal-table [data-fit-table-name],
.dining-table-card h3{
  display:block;
  width:100%;
  max-width:100%;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:anywhere;
  word-break:normal;
  hyphens:auto;
  text-align:center;
  line-height:1.05;
}
.dining-floor-table [data-fit-table-name]{font-size:14px}
.terminal-table [data-fit-table-name]{font-size:clamp(12px,1.55vw,22px)}
.dining-table-card h3{overflow-wrap:anywhere}
.dining-floor-table.table-name-priority>a>small,
.dining-floor-table.table-name-priority>a>em,
.terminal-table.table-name-priority>a>small,
.terminal-table.table-name-priority>a>em,
.terminal-table.table-name-priority>button>small,
.terminal-table.table-name-priority>button>em{
  display:none;
}
.dining-floor-table.table-name-only>a>b,
.dining-floor-table.table-name-only>a>small,
.dining-floor-table.table-name-only>a>em,
.terminal-table.table-name-only>a>b,
.terminal-table.table-name-only>a>small,
.terminal-table.table-name-only>a>em,
.terminal-table.table-name-only>button>b,
.terminal-table.table-name-only>button>small,
.terminal-table.table-name-only>button>em{
  display:none;
}


/* 3.7.0 — rozbudowany moduł raportów i analityki. */
.report-page-head{align-items:flex-start}.report-page-head p{margin:6px 0 0}.report-export-menu{position:relative;z-index:12}.report-export-menu>summary{list-style:none}.report-export-menu>summary::-webkit-details-marker{display:none}.report-export-popover{position:absolute;right:0;top:calc(100% + 8px);width:280px;padding:8px;background:#fff;border:1px solid #e4e7ec;border-radius:14px;box-shadow:0 18px 48px rgba(16,24,40,.18)}.report-export-popover a{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 12px;border-radius:9px;font-weight:700}.report-export-popover a:hover{background:#f2f4f7}.report-export-popover span{font-size:10px;letter-spacing:.08em;color:#667085;background:#f2f4f7;border-radius:99px;padding:3px 7px}.report-filter-card{margin-bottom:18px}.report-range-shortcuts{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.report-range-shortcuts a{padding:8px 12px;border:1px solid #d0d5dd;border-radius:999px;background:#fff;font-size:13px;font-weight:750}.report-range-shortcuts a:hover,.report-range-shortcuts a.is-active{color:#fff;background:var(--primary);border-color:var(--primary)}.report-filter-form{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:12px;align-items:end}.report-filter-form .form-group{margin:0}.report-time-field{max-width:130px}.report-filter-actions{display:flex;gap:8px;align-items:center;grid-column:span 2}.report-active-period{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:16px;padding-top:14px;border-top:1px solid #eaecf0;font-size:13px}.report-active-period span{color:#667085}.report-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin:18px 0}.report-kpi{position:relative;min-height:146px;padding:18px;background:#fff;border:1px solid #e7e9ee;border-radius:18px;box-shadow:0 8px 28px rgba(16,24,40,.045)}.report-kpi>span:first-child{display:block;color:#667085;font-size:13px;font-weight:700}.report-kpi>strong{display:block;margin:7px 0 5px;font-size:clamp(24px,2vw,34px);line-height:1.1}.report-kpi small{display:block;margin-top:11px;color:#98a2b3}.report-delta{display:inline-flex;align-items:center;border-radius:999px;padding:3px 8px;font-size:11px;font-weight:800}.report-delta.is-up{background:#ecfdf3;color:#027a48}.report-delta.is-down{background:#fef3f2;color:#b42318}.report-delta.is-flat{background:#f2f4f7;color:#475467}.report-delta.is-new{background:#eff8ff;color:#175cd3}.report-overview-grid,.report-table-grid{margin-bottom:20px}.report-overview-grid .card,.report-table-grid .card{min-width:0}.report-trend-card .section-title,.report-times-summary .section-title,.report-table-grid .section-title,.report-history-card .section-title{align-items:flex-start}.report-line-chart{position:relative;min-height:260px;padding:8px 0 0}.report-line-chart svg{width:100%;height:230px;overflow:visible}.report-chart-axis{stroke:#d0d5dd;stroke-width:1}.report-chart-line{fill:none;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.report-chart-line.is-revenue{stroke:var(--primary)}.report-chart-line.is-orders{stroke:#7f56d9;stroke-width:3;stroke-dasharray:7 7}.report-chart-legend{position:absolute;right:4px;top:0;display:flex;gap:14px;font-size:12px;color:#667085}.report-chart-legend span{display:flex;align-items:center;gap:6px}.report-chart-legend i{width:18px;height:3px;border-radius:99px}.report-chart-legend i.is-revenue{background:var(--primary)}.report-chart-legend i.is-orders{background:#7f56d9}.report-chart-dates{display:flex;justify-content:space-between;color:#98a2b3;font-size:12px}.report-times-summary{display:flex;flex-direction:column}.report-time-metric{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px 0;border-bottom:1px solid #eaecf0}.report-time-metric span{color:#667085;font-weight:700}.report-time-metric strong{font-size:22px}.report-time-metric.is-muted strong{color:#b42318}.report-channel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.report-channel-grid article{padding:16px;border:1px solid #eaecf0;border-radius:14px;background:#fcfcfd}.report-channel-grid article>div:first-child{display:flex;justify-content:space-between;gap:12px}.report-channel-grid article>div:first-child span{font-weight:800}.report-progress{height:9px;margin:13px 0 11px;border-radius:99px;background:#eaecf0;overflow:hidden}.report-progress i{display:block;height:100%;border-radius:inherit;background:var(--primary)}.report-channel-grid footer{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;color:#667085;font-size:12px}.report-table-grid .card{padding-bottom:0}.report-table-grid .table-wrap{margin:0 -20px;border-width:1px 0 0;border-radius:0 0 18px 18px}.report-table{min-width:650px}.report-table td small,.report-history-table td small{display:block;margin-top:3px;color:#98a2b3;font-size:11px}.report-rank{display:inline-grid;place-items:center;width:23px;height:23px;margin-right:8px;border-radius:50%;background:#f2f4f7;color:#475467;font-size:11px}.report-history-card{padding-bottom:0}.report-history-card .table-wrap{margin:0 -20px;border-width:1px 0 0;border-radius:0}.report-history-table{min-width:1120px}.report-order-link{display:block;margin-top:4px;color:var(--primary);font-size:11px;font-weight:750}.report-pagination{display:flex;align-items:center;justify-content:center;gap:16px;padding:17px}.report-pagination a{font-weight:800;color:var(--primary)}.report-pagination span{color:#667085;font-size:13px}
@media(max-width:1450px){.report-filter-form{grid-template-columns:repeat(4,minmax(130px,1fr))}.report-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.report-channel-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1050px){.report-filter-form{grid-template-columns:repeat(2,minmax(0,1fr))}.report-time-field{max-width:none}.report-filter-actions{grid-column:span 2}.report-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.report-overview-grid,.report-table-grid{grid-template-columns:1fr}.report-overview-grid .report-trend-card{grid-column:auto!important}.report-channel-grid{grid-template-columns:1fr}}
@media(max-width:620px){.report-page-head{flex-direction:column}.report-export-menu,.report-export-menu>summary{width:100%}.report-export-popover{position:static;width:100%;margin-top:8px}.report-filter-form{grid-template-columns:1fr}.report-filter-actions{grid-column:auto;display:grid;grid-template-columns:1fr 1fr}.report-kpis{grid-template-columns:1fr}.report-kpi{min-height:0}.report-active-period{align-items:flex-start;flex-direction:column}.report-line-chart{min-height:210px}.report-line-chart svg{height:190px}.report-chart-legend{position:static;margin-bottom:5px}.report-table-grid .table-wrap,.report-history-card .table-wrap{margin-left:-16px;margin-right:-16px}}

/* 3.7.1 — wspólne stronicowanie list i kolumn ekranu kuchni. */
.system-pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:14px;padding:14px 16px;background:#fff;border:1px solid #e4e7ec;border-radius:14px}.system-pagination-summary{color:#667085;font-size:13px}.system-pagination-pages{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.system-pagination-pages a,.system-pagination-pages>span:not(.system-pagination-gap){min-width:38px;height:38px;display:inline-grid;place-items:center;padding:0 10px;border:1px solid #d0d5dd;border-radius:10px;background:#fff;font-size:13px;font-weight:800}.system-pagination-pages a:hover{border-color:var(--primary);color:var(--primary)}.system-pagination-pages .is-current{border-color:var(--primary)!important;background:var(--primary)!important;color:#fff}.system-pagination-pages .system-pagination-arrow{width:auto;padding:0 13px}.system-pagination-gap{padding:0 3px;color:#98a2b3}.client-pagination{margin-top:12px}
.kitchen-pagination{display:grid;grid-template-columns:52px 1fr 52px;align-items:center;gap:8px;margin-top:auto;padding:10px 2px 2px}.kitchen-pagination[hidden]{display:none!important}.kitchen-pagination button{min-height:46px;border:1px solid #cfd4dc;border-radius:12px;background:#fff;color:#344054;font-size:23px;font-weight:900;cursor:pointer}.kitchen-pagination button:disabled{opacity:.35;cursor:default}.kitchen-pagination span{text-align:center;color:#475467;font-size:13px;font-weight:850}.kitchen-col-ready .kitchen-ticket{padding:12px}.kitchen-col-ready .kitchen-ticket-summary{max-height:180px;overflow:auto}.touch-friendly .kitchen-pagination button{min-height:58px;font-size:28px}.touch-friendly .kitchen-pagination span{font-size:16px}
@media(max-width:620px){.system-pagination{align-items:stretch;flex-direction:column}.system-pagination-pages{justify-content:center}.system-pagination-pages .system-pagination-arrow{flex:1}.system-pagination-summary{text-align:center}}

/* 3.7.2 — dziennik czynności i szczegóły audytu. */
.audit-stats{margin-bottom:18px}.audit-filter-card{margin-bottom:18px}.audit-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.audit-filter-grid .form-group{margin-bottom:0}.audit-filter-search{grid-column:span 2}.audit-log-card{padding:0;overflow:hidden}.audit-log-card .table-wrap{border:0;border-radius:0}.audit-log-table{min-width:1100px}.audit-log-table td{vertical-align:middle}.audit-method{display:inline-flex;align-items:center;justify-content:center;min-width:52px;padding:4px 8px;border-radius:7px;background:#f2f4f7;color:#344054;font-size:11px;font-weight:800;letter-spacing:.04em}.audit-method-post,.audit-method-put,.audit-method-patch,.audit-method-delete{background:#fff4ed;color:#c4320a}.audit-method-get{background:#eff8ff;color:#175cd3}.audit-detail-modal{width:min(1040px,calc(100vw - 32px));max-width:1040px}.audit-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:20px 0}.audit-detail-grid>div{display:flex;flex-direction:column;gap:4px;min-width:0;padding:14px;border:1px solid #eaecf0;border-radius:12px;background:#f9fafb}.audit-detail-grid span{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#667085;font-weight:700}.audit-detail-grid strong{overflow-wrap:anywhere}.audit-detail-grid small{color:#667085;overflow-wrap:anywhere}.audit-json{max-height:390px;overflow:auto;margin:0;padding:16px;border-radius:12px;background:#101828;color:#d1e9ff;white-space:pre-wrap;overflow-wrap:anywhere;font:13px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace}.audit-log-table small{overflow-wrap:anywhere}
@media(max-width:1100px){.audit-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.audit-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.audit-filter-grid,.audit-detail-grid{grid-template-columns:1fr}.audit-filter-search{grid-column:auto}.audit-stats{grid-template-columns:1fr 1fr}.audit-detail-modal{width:100%;padding:16px}.audit-json{font-size:12px}}

/* 4.0.0 — magazyn, food cost, zmiany kasowe, rezerwacje, CRM i lojalność. */
.module-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px;padding:6px;background:#fff;border:1px solid #e4e7ec;border-radius:16px;box-shadow:0 8px 24px rgba(16,24,40,.04)}
.module-tabs a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:9px 14px;border-radius:11px;color:#475467;font-size:13px;font-weight:800}
.module-tabs a:hover{background:#f2f4f7;color:#101828}.module-tabs a.is-active{background:var(--primary);color:#fff}
.stats-six{grid-template-columns:repeat(6,minmax(0,1fr))}.stat-highlight{border-color:rgba(180,35,24,.28)!important;background:linear-gradient(145deg,#fff,#fff7f5)!important}
.back-link{display:inline-flex;margin-bottom:8px;color:var(--primary);font-size:13px;font-weight:800}.text-danger{color:#b42318!important}.form-select-sm{min-height:36px;padding:6px 34px 6px 10px;font-size:12px}
.filter-bar{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin:0 0 16px}.filter-bar .form-control,.filter-bar .form-select{width:auto;min-width:170px}.filter-bar .form-group{margin:0}
.compact-list{display:grid;gap:10px}.compact-list>div,.compact-list>li{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 0;border-bottom:1px solid #eaecf0}.compact-list>div:last-child,.compact-list>li:last-child{border-bottom:0}.compact-list small{display:block;color:#667085}
.check-row,.toggle-row{display:flex;align-items:flex-start;gap:12px;margin:0;padding:13px 0;border-bottom:1px solid #eaecf0;cursor:pointer}.check-row:last-child,.toggle-row:last-child{border-bottom:0}.check-row input,.toggle-row input{flex:0 0 auto;margin-top:4px;width:19px;height:19px;accent-color:var(--primary)}.check-row span,.toggle-row span{display:flex;flex-direction:column;gap:3px}.check-row small,.toggle-row small{color:#667085;line-height:1.45}
.feature-checklist{display:grid;gap:10px;margin:14px 0;padding:0;list-style:none}.feature-checklist li{position:relative;padding-left:28px}.feature-checklist li:before{content:'✓';position:absolute;left:0;top:0;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#ecfdf3;color:#027a48;font-size:12px;font-weight:900}
.recipe-list{display:grid;gap:8px}.recipe-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:13px 14px;border:1px solid #eaecf0;border-radius:13px;background:#fcfcfd}.recipe-row small{display:block;margin-top:3px;color:#667085}.recipe-row>b{white-space:nowrap}.recipe-row form{margin:0}
.delivery-lines{display:grid;gap:9px;margin:10px 0 16px}.delivery-line{display:grid;grid-template-columns:minmax(220px,2fr) repeat(3,minmax(105px,1fr));gap:9px;align-items:center;padding:10px;border:1px solid #eaecf0;border-radius:13px;background:#f9fafb}.delivery-line:focus-within{border-color:var(--primary);background:#fff}
.stocktake-count{min-width:120px}.sticky-form-actions{position:sticky;z-index:15;bottom:12px;display:flex;justify-content:flex-end;margin-top:14px;padding:12px;border:1px solid #eaecf0;border-radius:15px;background:rgba(255,255,255,.94);box-shadow:0 14px 40px rgba(16,24,40,.14);backdrop-filter:blur(8px)}
.cash-shift-live{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 18px;padding:18px 20px;border:1px solid #b7ebc6;border-radius:18px;background:linear-gradient(135deg,#ecfdf3,#fff);box-shadow:0 10px 28px rgba(2,122,72,.08)}.cash-shift-status{display:flex;align-items:center;gap:14px}.cash-shift-status>div{display:flex;flex-direction:column;gap:3px}.cash-shift-status small{color:#027a48;font-weight:900;letter-spacing:.08em}.cash-shift-status strong{font-size:20px}.cash-shift-status span{color:#667085;font-size:13px}.live-dot{width:15px;height:15px;border-radius:50%;background:#12b76a;box-shadow:0 0 0 7px rgba(18,183,106,.15);animation:livePulse 1.8s infinite}@keyframes livePulse{50%{box-shadow:0 0 0 12px rgba(18,183,106,0)}}
.reservation-hours{display:grid;gap:8px;margin-bottom:18px}.reservation-hours-row{display:grid;grid-template-columns:minmax(145px,1.25fr) minmax(100px,.8fr) auto minmax(100px,.8fr);align-items:center;gap:9px;padding:10px 12px;border:1px solid #eaecf0;border-radius:12px}.reservation-hours-row>label{display:flex;align-items:center;gap:9px}.reservation-hours-row input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary)}
.narrow-container{max-width:820px}.reservation-public{min-height:70vh}.reservation-public>.container{position:relative}.reservation-public .card{box-shadow:0 18px 55px rgba(16,24,40,.09)}.reservation-details-card,.reservation-summary{display:grid;gap:12px}.reservation-details-card>div,.reservation-summary>div{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid #eaecf0}.reservation-details-card>div:last-child,.reservation-summary>div:last-child{border-bottom:0}.reservation-confirmation{text-align:center;padding:32px}.status-orb{display:grid;place-items:center;width:74px;height:74px;margin:0 auto 18px;border-radius:50%;background:#ecfdf3;color:#027a48;font-size:32px;font-weight:900;box-shadow:0 0 0 12px rgba(18,183,106,.09)}
.feedback-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.feedback-card{display:flex;flex-direction:column;min-width:0}.feedback-card-head{display:flex;justify-content:space-between;gap:14px}.feedback-card-head strong{color:#f79009;font-size:20px;letter-spacing:2px}.feedback-card-head small{display:block;margin-top:4px;color:#98a2b3}.feedback-card>p{flex:1;overflow-wrap:anywhere}.feedback-meta{display:flex;gap:7px;flex-wrap:wrap;margin:8px 0 14px}.feedback-meta span{padding:4px 8px;border-radius:999px;background:#f2f4f7;color:#475467;font-size:11px;font-weight:750}.feedback-public{max-width:760px;margin:auto}.rating-choice{display:flex;justify-content:center;gap:8px;margin:18px 0}.rating-choice label{cursor:pointer}.rating-choice input{position:absolute;opacity:0;pointer-events:none}.rating-choice span{display:grid;place-items:center;width:52px;height:52px;border:1px solid #d0d5dd;border-radius:13px;background:#fff;color:#f79009;font-size:27px;transition:.18s}.rating-choice input:checked+span,.rating-choice label:hover span{border-color:#f79009;background:#fffaeb;transform:translateY(-2px)}
.checkout-benefits{margin:18px 0;padding:16px;border:1px solid #d0d5dd;border-radius:15px;background:#f9fafb}.checkout-benefits h3{margin:0 0 10px}.loyalty-order-box{display:flex;flex-direction:column;align-items:center;gap:4px;margin:14px 0;padding:16px;border:1px solid #c7d7fe;border-radius:15px;background:#f5f8ff;text-align:center}.loyalty-order-box span{color:#475467;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.loyalty-order-box strong{font-size:26px}.loyalty-order-box small{color:#667085}
.campaign-preview{max-height:520px;overflow:auto;padding:18px;border:1px solid #eaecf0;border-radius:13px;background:#fcfcfd}.campaign-preview img{max-width:100%;height:auto}.campaign-preview table{max-width:100%}
@media(max-width:1450px){.stats-six{grid-template-columns:repeat(3,minmax(0,1fr))}.feedback-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:980px){.delivery-line{grid-template-columns:1fr 1fr}.delivery-line select{grid-column:1/-1}.cash-shift-live{align-items:flex-start;flex-direction:column}.feedback-grid{grid-template-columns:1fr}}
@media(max-width:700px){.module-tabs{display:grid;grid-template-columns:1fr 1fr}.module-tabs a{padding:9px 7px}.stats-six{grid-template-columns:1fr 1fr}.delivery-line{grid-template-columns:1fr}.delivery-line select{grid-column:auto}.recipe-row{grid-template-columns:1fr auto}.recipe-row form{grid-column:2;grid-row:1/3}.reservation-hours-row{grid-template-columns:1fr 1fr}.reservation-hours-row>label{grid-column:1/-1}.reservation-hours-row>span{display:none}.cash-shift-live .actions{display:grid;width:100%;grid-template-columns:1fr 1fr}.filter-bar{display:grid;grid-template-columns:1fr 1fr}.filter-bar .form-control,.filter-bar .form-select{width:100%;min-width:0}.rating-choice span{width:46px;height:46px}.sticky-form-actions{bottom:6px}.sticky-form-actions .btn{width:100%}}
@media(max-width:430px){.module-tabs,.stats-six,.filter-bar{grid-template-columns:1fr}.cash-shift-live .actions{grid-template-columns:1fr}.rating-choice{gap:5px}.rating-choice span{width:42px;height:42px;font-size:23px}}
.feature-checklist>div{display:grid;grid-template-columns:34px minmax(0,1fr);gap:11px;align-items:start;padding:12px 0;border-bottom:1px solid #eaecf0}.feature-checklist>div:last-child{border-bottom:0}.feature-checklist>div>b{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:#ecfdf3;color:#027a48}.feature-checklist>div>span{display:flex;flex-direction:column;gap:3px}.feature-checklist>div small{color:#667085}

/* FoodOrder Pro 4.1.0 — wizualny edytor CMS i inteligentne prognozy. */
.rich-editor-shell{border:1px solid var(--border,#dfe4ea);border-radius:14px;background:#fff;overflow:hidden;box-shadow:0 8px 24px rgba(21,32,43,.05)}
.rich-editor-shell .editor-toolbar{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:9px 10px;background:#f7f9fb;border-bottom:1px solid var(--border,#dfe4ea);position:sticky;top:0;z-index:2}
.rich-editor-shell .editor-toolbar-group{display:inline-flex;gap:3px;padding-right:6px;margin-right:1px;border-right:1px solid #dce2e8}
.rich-editor-shell .editor-toolbar button,.rich-editor-shell .editor-toolbar select{min-height:34px;border:1px solid #d7dde4;border-radius:8px;background:#fff;color:#26313d;padding:5px 9px;font:inherit;font-size:13px;cursor:pointer}
.rich-editor-shell .editor-toolbar button:hover,.rich-editor-shell .editor-toolbar button:focus,.rich-editor-shell .editor-toolbar select:focus{border-color:var(--primary,#c83c3c);box-shadow:0 0 0 3px rgba(200,60,60,.1);outline:0}
.rich-editor-shell .editor-toolbar button.is-active{background:#26313d;color:#fff;border-color:#26313d}
.editor-block-select{display:inline-flex}.editor-block-select select{max-width:145px}
.rich-editor-visual{min-height:280px;padding:22px 24px;color:#26313d;line-height:1.7;outline:0;overflow:auto}
.rich-editor-visual:focus{box-shadow:inset 0 0 0 2px rgba(200,60,60,.2)}
.rich-editor-visual:empty:before{content:'Kliknij i zacznij pisać…';color:#8b96a3}
.rich-editor-visual h2,.rich-editor-visual h3,.rich-editor-visual h4{margin:1.25em 0 .55em;line-height:1.25}
.rich-editor-visual p{margin:.65em 0}.rich-editor-visual ul,.rich-editor-visual ol{padding-left:1.6rem}.rich-editor-visual blockquote{margin:1rem 0;padding:.7rem 1rem;border-left:4px solid var(--primary,#c83c3c);background:#f7f9fb}.rich-editor-visual img{max-width:100%;height:auto;border-radius:10px}.rich-editor-visual a{color:var(--primary,#c83c3c);text-decoration:underline}.rich-editor-visual pre{white-space:pre-wrap;background:#17202a;color:#eef3f7;padding:14px;border-radius:10px}
.rich-editor-source{width:100%;min-height:300px;margin:0;border:0!important;border-radius:0!important;padding:20px!important;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:13px;line-height:1.55;background:#17202a!important;color:#eaf0f5!important;resize:vertical}
.rich-editor-insights{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:10px 12px;border-top:1px solid #e2e6eb;background:#fbfcfd;font-size:12px;color:#65717e}
.rich-editor-insights [data-editor-stats]{display:flex;gap:12px;flex-wrap:wrap}.rich-editor-insights [data-editor-stats] span{white-space:nowrap}.rich-editor-insights [data-editor-advice]{display:grid;gap:3px;flex:1;min-width:260px}.rich-editor-insights [data-editor-advice] span{display:block}.rich-editor-insights [data-editor-advice] .is-good{color:#218251}.rich-editor-ai-actions{display:flex;gap:6px;flex-wrap:wrap}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

.kitchen-smart-suggestion{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px;padding:12px 14px;border:1px solid #b9d8ff;border-radius:12px;background:linear-gradient(135deg,#edf6ff,#f7fbff)}
.kitchen-smart-suggestion[hidden]{display:none}.kitchen-smart-suggestion>div{display:grid;gap:2px}.kitchen-smart-suggestion span{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#29689f;font-weight:700}.kitchen-smart-suggestion strong{font-size:22px;color:#174d7b}.kitchen-smart-suggestion small{color:#56738d}
.kitchen-smart-badge{display:inline-flex;align-items:center;margin-top:5px;padding:3px 7px;border-radius:999px;background:#edf6ff;color:#236294;font-size:11px;font-weight:700}.kitchen-ticket-estimate.has-smart-estimate{border-color:#9cc7ee;background:#edf6ff;color:#236294}
.smart-order-insight{display:grid;grid-template-columns:1fr auto;gap:2px 12px;margin:12px 0;padding:12px 14px;border-radius:12px;background:#edf6ff;border:1px solid #bdd9ef}.smart-order-insight span{font-size:12px;color:#29689f;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.smart-order-insight strong{grid-row:1/3;grid-column:2;font-size:22px;color:#174d7b}.smart-order-insight small{color:#56738d}
.smart-explanation{display:grid;gap:10px}.smart-explanation>div{display:flex;align-items:flex-start;gap:12px;padding:12px;border-radius:12px;background:#f7f9fb}.smart-explanation b{display:grid;place-items:center;min-width:30px;height:30px;border-radius:50%;background:var(--primary,#c83c3c);color:#fff}.smart-explanation span{display:grid;gap:2px}.smart-explanation small{color:#6d7782}

@media(max-width:760px){.rich-editor-shell .editor-toolbar{position:static;gap:4px}.rich-editor-shell .editor-toolbar-group{border:0;padding:0;margin:0}.rich-editor-shell .editor-toolbar button{padding:5px 7px}.rich-editor-visual{min-height:230px;padding:16px}.rich-editor-insights{display:grid}.rich-editor-ai-actions{width:100%}.rich-editor-ai-actions .btn{flex:1}.kitchen-smart-suggestion{align-items:stretch;flex-direction:column}.kitchen-smart-suggestion .btn{width:100%}}


/* FoodOrder Pro 4.2.0 — kafelkowy panel dotykowy */
.touch-home-header-link{display:none;min-height:48px;padding:9px 13px;align-items:center;justify-content:center;gap:7px;border:1px solid #d9dee7;border-radius:13px;background:#fff;color:#344054;font-size:13px;font-weight:850;text-decoration:none}.touch-home-header-link svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.touch-home-header-link.is-active{background:var(--primary);border-color:var(--primary);color:#fff}.dashboard-body.touch-friendly .touch-home-header-link{display:inline-flex}.sidebar-touch-home{background:rgba(255,255,255,.12)!important;color:#fff!important}.sidebar-touch-home svg{width:22px;height:22px;margin-right:9px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.touch-launcher{max-width:1680px;margin:0 auto;padding:4px 0 38px}.touch-launcher-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:20px;padding:18px 20px;border:1px solid #e3e7ed;border-radius:22px;background:#fff}.touch-launcher-head h1{margin:3px 0 4px;font-size:34px}.touch-launcher-head p{margin:0;color:#667085}.touch-launcher-user{display:grid;gap:3px;min-width:230px;padding:13px 16px;border-radius:16px;background:#f2f4f7;text-align:right}.touch-launcher-user strong{font-size:17px}.touch-launcher-user small{color:#667085}.touch-launcher-quick{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:26px}.touch-quick-tile{position:relative;min-height:132px;padding:18px;display:grid;grid-template-columns:58px 1fr;align-items:center;gap:14px;border:2px solid transparent;border-radius:22px;background:var(--primary);color:#fff;text-decoration:none;box-shadow:0 9px 25px rgba(16,24,40,.1);transition:transform .15s ease,box-shadow .15s ease}.touch-quick-tile:hover,.touch-quick-tile:focus-visible{transform:translateY(-2px);box-shadow:0 14px 34px rgba(16,24,40,.17);outline:3px solid color-mix(in srgb,var(--primary),white 55%);outline-offset:2px}.touch-quick-tile .touch-tile-icon{background:rgba(255,255,255,.16);color:#fff}.touch-quick-tile strong{display:block;font-size:19px}.touch-quick-tile small{display:block;margin-top:4px;color:rgba(255,255,255,.78);font-size:12px;line-height:1.35}.touch-quick-tile>b{position:absolute;right:12px;top:10px;padding:5px 9px;border-radius:999px;background:#fff;color:var(--primary);font-size:11px}.touch-module-group{margin-top:23px}.touch-module-group-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;padding:0 4px}.touch-module-group-head h2{margin:0;font-size:21px}.touch-module-group-head span{color:#667085;font-size:13px}.touch-module-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:11px}.touch-module-tile{position:relative;min-height:142px;padding:17px;display:grid;grid-template-columns:54px minmax(0,1fr) 25px;align-items:center;gap:13px;border:1px solid #dfe3e9;border-radius:20px;background:#fff;color:#1d2939;text-decoration:none;box-shadow:0 5px 16px rgba(16,24,40,.045);transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}.touch-module-tile:hover,.touch-module-tile:focus-visible{border-color:var(--primary);transform:translateY(-2px);box-shadow:0 11px 27px rgba(16,24,40,.1);outline:none}.touch-tile-icon{width:54px;height:54px;display:grid;place-items:center;border-radius:16px;background:#f7eee9;background:color-mix(in srgb,var(--primary),white 88%);color:var(--primary)}.touch-tile-icon svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.touch-module-copy{display:grid;gap:4px}.touch-module-copy strong{font-size:17px;line-height:1.2}.touch-module-copy small{color:#667085;font-size:12px;line-height:1.4}.touch-module-tile>i{font-style:normal;font-size:23px;color:#98a2b3}.touch-module-badge{position:absolute;right:13px;top:11px;padding:4px 8px;border-radius:999px;background:#fff1e8;color:#9a3412;font-size:10px;font-weight:750}.touch-module-badge b{font-size:12px}.touch-launcher-footer{display:grid;grid-template-columns:1fr 1fr auto;gap:11px;margin-top:28px;padding-top:22px;border-top:1px solid #e4e7ec}.touch-launcher-secondary{min-height:82px;padding:13px 17px;display:flex;align-items:center;gap:12px;border:1px solid #dfe3e9;border-radius:17px;background:#fff;color:#344054;text-decoration:none}.touch-launcher-secondary svg{width:28px;height:28px;fill:none;stroke:var(--primary);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.touch-launcher-secondary span{display:grid}.touch-launcher-secondary strong{font-size:15px}.touch-launcher-secondary small{color:#667085;font-size:11px}.touch-launcher-logout{min-height:82px;padding:0 25px;display:grid;place-items:center;border-radius:17px;background:#fee4e2;color:#b42318;font-weight:850;text-decoration:none}.touch-home-floating{position:fixed;left:18px;bottom:18px;z-index:60;min-height:62px;padding:11px 18px 11px 13px;display:flex;align-items:center;gap:9px;border:2px solid #fff;border-radius:19px;background:var(--primary);color:#fff;text-decoration:none;font-weight:900;box-shadow:0 13px 32px rgba(16,24,40,.28)}.touch-home-floating svg{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.touch-home-floating.is-raised{bottom:96px}.touch-home-floating:hover,.touch-home-floating:focus-visible{transform:translateY(-2px);outline:3px solid color-mix(in srgb,var(--primary),white 55%);outline-offset:2px}.touch-launcher-page .dashboard-main{max-width:none}.touch-launcher-page.touch-friendly .dashboard-main{padding-bottom:30px}
@media(max-width:1180px){.touch-launcher-quick{grid-template-columns:repeat(2,minmax(0,1fr))}.touch-module-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.touch-launcher-head{align-items:flex-start}.touch-launcher-user{min-width:0}.touch-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.touch-launcher-footer{grid-template-columns:1fr 1fr}.touch-launcher-logout{grid-column:1/-1;min-height:64px}.touch-home-header-link b{display:none}.touch-home-header-link{width:48px;padding:0}.touch-home-floating span{display:none}.touch-home-floating{width:62px;padding:0;justify-content:center}}
@media(max-width:560px){.touch-launcher-head{display:grid;padding:15px}.touch-launcher-head h1{font-size:29px}.touch-launcher-user{text-align:left}.touch-launcher-quick,.touch-module-grid{grid-template-columns:1fr}.touch-quick-tile{min-height:112px}.touch-module-tile{min-height:112px}.touch-launcher-footer{grid-template-columns:1fr}.touch-launcher-logout{grid-column:auto}.touch-home-floating{left:12px;bottom:12px}}

@media(min-width:1000px){.touch-launcher-page.touch-menu-pinned .sidebar{transform:translateX(-104%);box-shadow:none}.touch-launcher-page.touch-menu-pinned .dashboard-main{margin-left:0}.touch-launcher-page.touch-menu-pinned.touch-menu-open .sidebar{transform:translateX(0);box-shadow:18px 0 45px rgba(16,24,40,.26)}}

.terminal-touch-home{position:fixed;left:14px;bottom:14px;z-index:190;min-height:58px;padding:10px 16px 10px 12px;display:flex;align-items:center;gap:8px;border:2px solid rgba(255,255,255,.82);border-radius:17px;background:var(--primary,#a9432f);color:#fff;text-decoration:none;font-weight:900;box-shadow:0 12px 30px rgba(0,0,0,.3)}.terminal-touch-home svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}@media(max-width:700px){.terminal-touch-home{width:58px;padding:0;justify-content:center}.terminal-touch-home span{display:none}}
@media(min-width:1000px){.dashboard-body.touch-friendly.touch-menu-pinned .touch-home-floating{left:288px}}

/* FoodOrder Pro 4.2.0 — social media i Google Business */
.social-page-head{align-items:flex-start}.social-stats{grid-template-columns:repeat(5,minmax(0,1fr))}.social-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0 24px;padding:6px;background:var(--surface,#fff);border:1px solid var(--border,#e5e7eb);border-radius:16px}.social-tabs a{padding:10px 14px;border-radius:11px;color:var(--muted,#667085);font-weight:700;text-decoration:none}.social-tabs a:hover,.social-tabs a.is-active{background:var(--primary);color:#fff}.social-publisher-grid{align-items:start}.social-composer{min-width:0}.social-template-tools{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;gap:10px;align-items:end;padding:14px;margin-bottom:16px;border:1px dashed var(--border,#d0d5dd);border-radius:14px;background:rgba(0,0,0,.018)}.social-template-tools .form-group{margin:0}.social-publish-actions{align-items:end}.social-publish-actions>.actions{justify-content:flex-end;flex-wrap:wrap}.social-target-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.social-target{display:flex;gap:10px;align-items:center;padding:12px;border:1px solid var(--border,#d0d5dd);border-radius:14px;cursor:pointer;background:var(--surface,#fff)}.social-target:has(input:checked){border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 18%,transparent)}.social-target input{width:20px;height:20px}.social-target span:nth-child(3){display:flex;flex-direction:column;min-width:0}.social-target small{color:var(--muted,#667085)}.social-provider-mark{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;flex:0 0 42px;border-radius:12px;font-weight:900;color:#fff;background:#475467}.social-provider-facebook{background:#1877f2}.social-provider-instagram{background:linear-gradient(135deg,#7c3aed,#db2777,#f59e0b)}.social-provider-google{background:#4285f4}.social-preview-card{position:sticky;top:86px}.social-preview{overflow:hidden;border:1px solid var(--border,#d0d5dd);border-radius:16px;background:var(--surface,#fff)}.social-preview-brand{display:flex;gap:10px;align-items:center;padding:14px}.social-preview-brand>span{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:var(--primary);color:#fff;font-weight:900}.social-preview-brand div{display:flex;flex-direction:column}.social-preview-brand small{color:var(--muted,#667085)}.social-preview-text{padding:0 14px 14px;white-space:pre-wrap;overflow-wrap:anywhere}.social-preview img{display:block;width:100%;max-height:360px;object-fit:cover}.social-preview-link{padding:12px 14px;border-top:1px solid var(--border,#e5e7eb);color:var(--muted,#667085);font-size:.9rem;overflow-wrap:anywhere}.social-post-list,.social-account-list,.social-review-list{display:grid;gap:12px}.social-post-row,.social-account-row,.social-review{display:flex;gap:14px;align-items:flex-start;padding:16px;border:1px solid var(--border,#e5e7eb);border-radius:16px;background:var(--surface,#fff)}.social-post-copy{display:grid;gap:9px;min-width:0;flex:1}.social-post-meta{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.social-post-meta small,.social-post-copy>small{color:var(--muted,#667085)}.social-post-actions{display:flex;gap:8px;flex-wrap:wrap}.social-target-results{display:grid;gap:7px}.social-target-results>div{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:9px;align-items:start;padding:9px;border-radius:12px;background:rgba(0,0,0,.025)}.social-target-results .social-provider-mark{width:34px;height:34px;flex-basis:34px;border-radius:9px}.social-target-results span:nth-child(2){display:flex;flex-direction:column;min-width:0}.social-target-results small{color:var(--muted,#667085)}.social-target-results em,.social-account-row em{color:#b42318;font-style:normal;font-size:.88rem;overflow-wrap:anywhere}.social-target-results a{font-size:.88rem}.social-connect-grid{align-items:stretch}.social-connect-head{display:flex;gap:12px;align-items:center;margin-bottom:16px}.social-connect-head h2,.social-connect-head p{margin:0}.social-account-row{align-items:center}.social-account-row.is-disabled{opacity:.62}.social-account-row>div:nth-child(2){display:flex;flex:1;flex-direction:column;min-width:0}.social-account-row small{color:var(--muted,#667085)}.social-account-row .actions{justify-content:flex-end;flex-wrap:wrap}.social-review-sync{display:flex;justify-content:flex-end;margin-bottom:14px}.social-review{display:block}.social-review-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.social-review-head>div{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.social-review-head small{color:var(--muted,#667085)}.social-stars{color:#f59e0b;letter-spacing:1px}.social-review-reply{margin:12px 0;padding:12px 14px;border-left:4px solid var(--primary);border-radius:0 12px 12px 0;background:rgba(0,0,0,.025)}.social-review details{margin-top:12px}.social-review details form{display:grid;gap:10px;margin-top:10px}.social-code-block{display:block;padding:12px;border-radius:12px;background:#101828;color:#f2f4f7;overflow-wrap:anywhere}.social-requirements{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.social-requirements>div{padding:16px;border:1px solid var(--border,#e5e7eb);border-radius:14px}.social-requirements p{margin-bottom:0;color:var(--muted,#667085)}
@media(max-width:1100px){.social-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.social-publisher-grid{grid-template-columns:1fr}.social-publisher-grid>.social-composer{grid-column:auto!important}.social-preview-card{position:static}.social-requirements{grid-template-columns:1fr}.social-template-tools{grid-template-columns:minmax(0,1fr) auto}}
@media(max-width:720px){.social-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.social-target-grid{grid-template-columns:1fr}.social-template-tools{grid-template-columns:1fr}.social-template-tools .btn{width:100%}.social-post-row,.social-account-row{flex-direction:column}.social-account-row .actions,.social-post-actions{width:100%;justify-content:flex-start}.social-review-head{flex-direction:column}.social-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.social-tabs a{text-align:center}.social-publish-actions>.actions{justify-content:stretch}.social-publish-actions>.actions .btn{flex:1}.social-target-results>div{grid-template-columns:34px minmax(0,1fr)}}

/* FoodOrder Pro 4.2.2 — rozszerzone rozliczenia kasowe */
.cash-live-balance{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,.75fr);gap:16px;margin:0 0 18px}.cash-live-balance>div{display:flex;flex-direction:column;gap:5px;padding:22px;border:1px solid #b7ebc6;border-radius:18px;background:#ecfdf3}.cash-live-balance .cash-live-secondary{border-color:#d0d5dd;background:#f8fafc}.cash-live-balance span{font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#475467}.cash-live-balance strong{font-size:clamp(28px,4vw,42px);line-height:1.05}.cash-live-balance small{color:#667085}.cash-live-details{margin-top:18px}.cash-small-empty{padding:24px 10px}.cash-closed-card{margin-bottom:18px}.cash-history-section{margin-top:20px}.cash-history-title{align-items:center}.cash-history-filters{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr)) auto;gap:12px;align-items:end;margin:0 0 18px;padding:16px;border:1px solid #eaecf0;border-radius:14px;background:#f9fafb}.cash-history-filters .form-group{margin:0}.cash-filter-actions{display:flex;gap:8px;padding-bottom:1px}.cash-summary-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:18px}.cash-summary-card{display:flex;min-width:0;flex-direction:column;gap:5px;padding:16px;border:1px solid #e4e7ec;border-radius:14px;background:#fff}.cash-summary-card span{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:#667085}.cash-summary-card strong{font-size:24px;line-height:1.15}.cash-summary-card small{color:#667085}.cash-summary-card.is-surplus{border-color:#abefc6;background:#ecfdf3}.cash-summary-card.is-shortage{border-color:#fecdca;background:#fef3f2}.cash-summary-card.is-balanced{border-color:#d0d5dd;background:#f8fafc}.cash-history-table tr.is-selected td{background:#fffaeb}.cash-history-table .btn{white-space:nowrap}.cash-difference-preview{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:-3px 0 16px;padding:13px 15px;border:1px solid #d0d5dd;border-radius:12px;background:#f8fafc}.cash-difference-preview strong{font-size:20px}.cash-difference-preview.is-surplus{border-color:#abefc6;background:#ecfdf3;color:#027a48}.cash-difference-preview.is-shortage{border-color:#fecdca;background:#fef3f2;color:#b42318}.cash-difference-preview.is-balanced{border-color:#b7ebc6;background:#ecfdf3;color:#027a48}.cash-shift-detail{scroll-margin-top:90px}.cash-detail-result{display:flex;align-items:center;gap:16px;margin-bottom:16px;padding:18px;border:1px solid #d0d5dd;border-radius:14px;background:#f8fafc}.cash-detail-result span{font-weight:800}.cash-detail-result strong{margin-left:auto;font-size:28px}.cash-detail-result small{max-width:340px;color:#667085}.cash-detail-result.is-surplus{border-color:#abefc6;background:#ecfdf3}.cash-detail-result.is-shortage{border-color:#fecdca;background:#fef3f2}.cash-detail-result.is-balanced{border-color:#d0d5dd;background:#f8fafc}.cash-detail-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:20px}.cash-detail-metrics>div,.cash-detail-footer>div{display:flex;flex-direction:column;gap:4px;padding:14px;border:1px solid #eaecf0;border-radius:12px}.cash-detail-metrics span,.cash-detail-footer span{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:#667085}.cash-detail-metrics strong{font-size:19px}.cash-detail-footer{display:grid;grid-template-columns:1fr 1fr 2fr;gap:10px;margin-top:20px}.cash-detail-notes strong{font-weight:500}.text-success{color:#027a48}.text-danger{color:#b42318}
@media(max-width:1350px){.cash-summary-grid,.cash-detail-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.cash-history-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.cash-filter-actions{align-self:end}}
@media(max-width:850px){.cash-live-balance{grid-template-columns:1fr}.cash-history-filters{grid-template-columns:1fr 1fr}.cash-filter-actions{grid-column:1/-1}.cash-detail-footer{grid-template-columns:1fr 1fr}.cash-detail-notes{grid-column:1/-1}.cash-detail-result{align-items:flex-start;flex-direction:column}.cash-detail-result strong{margin-left:0}}
@media(max-width:620px){.cash-summary-grid,.cash-detail-metrics,.cash-history-filters,.cash-detail-footer{grid-template-columns:1fr}.cash-filter-actions,.cash-detail-notes{grid-column:auto}.cash-filter-actions{display:grid;grid-template-columns:1fr 1fr}.cash-live-balance>div{padding:17px}.cash-history-title{align-items:flex-start;flex-direction:column}.cash-history-title .btn{width:100%}.cash-difference-preview{align-items:flex-start;flex-direction:column}}
/* 4.3.0 Delivery, AI i PWA właściciela */
.ai-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0}.ai-result{margin-top:18px;white-space:normal}.ai-owner-brief{font-size:1.05rem;line-height:1.7}.owner-pwa{max-width:980px;margin:0 auto;padding:20px}.owner-pwa .stats{margin:18px 0}.owner-pwa .touch-module-grid{margin-top:18px}.notice code{word-break:break-all}.delivery-provider-status{display:inline-flex;align-items:center;gap:6px}@media(max-width:700px){.ai-actions{grid-template-columns:1fr}.owner-pwa{padding:12px}.owner-pwa .page-head{align-items:flex-start}.owner-pwa .stats{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Kiosk 4.4.0 */
.kiosk-body{margin:0;background:#f3f1ed;color:#171717;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;overscroll-behavior:none;touch-action:manipulation}.kiosk-app{min-height:100vh;padding-bottom:110px}.kiosk-header{position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 32px;background:#fff;border-bottom:1px solid #ddd}.kiosk-brand{display:flex;align-items:center;gap:14px;font-size:22px}.kiosk-brand img{width:52px;height:52px;object-fit:contain}.kiosk-reset-button,.kiosk-back{display:inline-flex;align-items:center;min-height:52px;padding:0 22px;border-radius:16px;background:#ece9e4;color:#222;text-decoration:none;font-weight:800}.kiosk-mode-panel{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(480px,1.2fr);gap:28px;align-items:center;padding:28px 34px;background:#fff}.kiosk-mode-panel h1{font-size:clamp(32px,4vw,58px);margin:8px 0}.kiosk-mode-panel p{font-size:20px;color:#666}.kiosk-mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.kiosk-mode-card{width:100%;min-height:180px;border:3px solid transparent;border-radius:28px;background:#f6f4f0;padding:24px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:8px;text-align:left;cursor:pointer}.kiosk-mode-card span{font-size:44px}.kiosk-mode-card strong{font-size:26px}.kiosk-mode-card small{font-size:16px;color:#666}.kiosk-mode-card.is-selected,.kiosk-table-mode.is-selected .kiosk-mode-card{border-color:var(--primary);background:#fff7f2}.kiosk-table-mode{position:relative}.kiosk-table-picker{display:none;position:absolute;z-index:20;left:0;right:0;top:calc(100% + 8px);padding:18px;border-radius:22px;background:#fff;box-shadow:0 16px 50px rgba(0,0,0,.16)}.kiosk-table-picker.is-open,.kiosk-table-mode.is-selected .kiosk-table-picker{display:block}.kiosk-table-picker label{display:grid;gap:8px;font-weight:800}.kiosk-table-picker select{width:100%;font-size:20px;padding:15px;border:2px solid #ddd;border-radius:14px}.kiosk-confirm-mode{margin-top:12px;width:100%;min-height:58px;border:0;border-radius:14px;background:var(--primary);color:#fff;font-size:19px;font-weight:900}.kiosk-layout{display:grid;grid-template-columns:240px 1fr;gap:24px;padding:28px 30px}.kiosk-category-nav{position:sticky;top:105px;align-self:start;display:grid;gap:10px}.kiosk-category-nav a{padding:18px 20px;border-radius:18px;background:#fff;color:#222;text-decoration:none;font-size:19px;font-weight:800}.kiosk-category-nav a:focus,.kiosk-category-nav a:hover{background:var(--primary);color:#fff}.kiosk-category{scroll-margin-top:110px;margin-bottom:34px}.kiosk-category h2{font-size:34px;margin:0 0 18px}.kiosk-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.kiosk-product-card{overflow:hidden;border-radius:26px;background:#fff;color:#1d1d1d;text-decoration:none;box-shadow:0 4px 18px rgba(0,0,0,.06);transition:.15s}.kiosk-product-card:active{transform:scale(.97)}.kiosk-product-image{aspect-ratio:4/3;background:#e8e4de;display:grid;place-items:center}.kiosk-product-image img{width:100%;height:100%;object-fit:cover}.kiosk-product-image span{font-size:64px}.kiosk-product-card>div:last-child{padding:18px}.kiosk-product-card h3{font-size:23px;margin:0 0 8px}.kiosk-product-card p{min-height:42px;margin:0 0 12px;color:#666}.kiosk-product-card strong{font-size:24px;color:var(--primary)}.kiosk-cart-bar{position:fixed;z-index:60;left:30px;right:30px;bottom:24px;display:none;align-items:center;justify-content:space-between;gap:20px;padding:20px 28px;border-radius:24px;background:var(--primary);color:#fff;text-decoration:none;font-size:22px;box-shadow:0 18px 50px rgba(0,0,0,.25)}.kiosk-cart-bar.is-visible{display:flex}.kiosk-cart-bar b{display:inline-grid;place-items:center;width:38px;height:38px;margin-right:10px;border-radius:50%;background:#fff;color:var(--primary)}.kiosk-product-detail,.kiosk-cart-page{max-width:1260px;margin:0 auto;padding:28px 32px}.kiosk-product-detail-grid{display:grid;grid-template-columns:minmax(360px,.9fr) minmax(460px,1.1fr);gap:36px;margin-top:24px}.kiosk-detail-image{min-height:520px;border-radius:30px;background:#e9e5de;overflow:hidden;display:grid;place-items:center}.kiosk-detail-image img{width:100%;height:100%;object-fit:cover}.kiosk-detail-image span{font-size:100px}.kiosk-detail-form{padding:6px}.kiosk-detail-form h1{font-size:48px;margin:0 0 12px}.kiosk-detail-form>p{font-size:20px;color:#666}.kiosk-detail-price{font-size:34px;font-weight:900;color:var(--primary);margin:18px 0}.kiosk-option-group{border:0;padding:0;margin:22px 0}.kiosk-option-group legend{font-size:22px;font-weight:900;margin-bottom:10px}.kiosk-option-group label{display:grid;grid-template-columns:32px 1fr auto;gap:12px;align-items:center;min-height:62px;padding:12px 16px;margin:8px 0;border:2px solid #ddd;border-radius:16px;background:#fff;font-size:18px}.kiosk-option-group input{width:24px;height:24px}.kiosk-quantity{display:flex;align-items:center;gap:12px;margin:22px 0}.kiosk-quantity label{font-weight:900;margin-right:auto}.kiosk-quantity button{width:58px;height:58px;border:0;border-radius:16px;background:#ddd;font-size:30px}.kiosk-quantity input{width:70px;height:58px;border:2px solid #ccc;border-radius:14px;text-align:center;font-size:24px}.kiosk-notes{display:grid;gap:8px;font-weight:800}.kiosk-notes textarea{border:2px solid #ddd;border-radius:16px;padding:14px;font-size:18px}.kiosk-add-button,.kiosk-submit-order{width:100%;min-height:76px;margin-top:22px;border:0;border-radius:20px;background:var(--primary);color:#fff;font-size:23px;font-weight:900}.kiosk-cart-page h1{font-size:48px;margin-bottom:4px}.kiosk-order-mode{font-size:20px;color:#666}.kiosk-cart-list{display:grid;gap:14px;margin:24px 0}.kiosk-cart-list article{display:grid;grid-template-columns:90px 1fr auto 54px;gap:18px;align-items:center;padding:16px;border-radius:22px;background:#fff}.kiosk-cart-list img{width:88px;height:76px;object-fit:cover;border-radius:16px}.kiosk-cart-list h3{font-size:22px;margin:0 0 4px}.kiosk-cart-list small{display:block;color:#666}.kiosk-cart-list>article>strong{font-size:22px}.kiosk-cart-list button{width:46px;height:46px;border:0;border-radius:14px;background:#eee;font-size:26px}.kiosk-checkout-card{max-width:720px;margin-left:auto;padding:24px;border-radius:26px;background:#fff}.kiosk-total{display:flex;justify-content:space-between;font-size:30px;font-weight:900;border-bottom:2px solid #eee;padding-bottom:18px;margin-bottom:18px}.kiosk-checkout-card label{display:grid;gap:8px;font-weight:800}.kiosk-checkout-card input,.kiosk-checkout-card textarea{width:100%;box-sizing:border-box;border:2px solid #ddd;border-radius:16px;padding:15px;font-size:19px}.kiosk-payment-note{display:flex;gap:14px;align-items:center;padding:16px;border-radius:18px;background:#f3f1ed}.kiosk-payment-note span{font-size:32px}.kiosk-payment-note small{display:block;color:#666}.kiosk-empty,.kiosk-success{max-width:760px;margin:80px auto;text-align:center}.kiosk-empty>span{font-size:80px}.kiosk-empty a,.kiosk-success a{display:inline-flex;padding:18px 28px;border-radius:18px;background:var(--primary);color:#fff;text-decoration:none;font-size:20px;font-weight:900}.kiosk-success-icon{width:110px;height:110px;margin:0 auto 24px;border-radius:50%;display:grid;place-items:center;background:#2e9b59;color:#fff;font-size:62px}.kiosk-success>span{font-size:22px}.kiosk-success h1{font-size:46px}.kiosk-order-number{display:inline-grid;gap:4px;padding:24px 38px;margin:18px 0;border-radius:24px;background:#fff}.kiosk-order-number small{font-size:18px}.kiosk-order-number strong{font-size:48px;color:var(--primary)}.kiosk-success p{font-size:20px;color:#666}.code-box{white-space:pre-wrap;word-break:break-all;background:#222;color:#fff;padding:18px;border-radius:14px}.kiosk-product-setting span{display:grid}.kiosk-product-setting small{color:#777}.kiosk-admin-stats{margin-bottom:24px}
@media(max-width:950px){.kiosk-mode-panel{grid-template-columns:1fr}.kiosk-layout{grid-template-columns:1fr}.kiosk-category-nav{position:sticky;top:89px;z-index:30;display:flex;overflow:auto;background:#f3f1ed;padding:8px 0}.kiosk-category-nav a{white-space:nowrap}.kiosk-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kiosk-product-detail-grid{grid-template-columns:1fr}.kiosk-detail-image{min-height:320px;max-height:420px}.kiosk-cart-bar{left:14px;right:14px}.kiosk-header{padding:14px 18px}}
@media(max-width:600px){.kiosk-product-grid{grid-template-columns:1fr 1fr;gap:10px}.kiosk-product-card>div:last-child{padding:12px}.kiosk-product-card h3{font-size:17px}.kiosk-product-card p{display:none}.kiosk-product-card strong{font-size:18px}.kiosk-layout{padding:16px 12px}.kiosk-mode-grid{grid-template-columns:1fr}.kiosk-mode-card{min-height:130px}.kiosk-product-detail,.kiosk-cart-page{padding:18px 14px}.kiosk-detail-form h1,.kiosk-cart-page h1{font-size:34px}.kiosk-cart-list article{grid-template-columns:60px 1fr auto}.kiosk-cart-list img{width:60px;height:60px}.kiosk-cart-list form{grid-column:3}.kiosk-cart-bar{font-size:16px;padding:16px}.kiosk-cart-bar span{display:none}}

.table-qr-welcome{margin:14px 18px 0;padding:14px 18px;border-radius:18px;background:#fff;display:flex;gap:12px;align-items:center;justify-content:center;text-align:center}.table-qr-welcome span{font-weight:900;color:var(--primary)}.table-qr-welcome strong{font-size:16px}.qr-table-url{display:block;max-width:420px;word-break:break-all}
@media(max-width:600px){.kiosk-header{padding:10px 12px}.kiosk-brand{font-size:17px}.kiosk-brand img{width:40px;height:40px}.kiosk-reset-button{min-height:42px;padding:0 12px;font-size:13px}.table-qr-welcome{display:grid}.kiosk-category-nav{top:65px}.kiosk-product-image{aspect-ratio:1/1}.kiosk-cart-page{padding-bottom:110px}}

/* 4.5.1 - tematyczne, zwijane menu panelu */
.dashboard-shell{grid-template-columns:272px minmax(0,1fr)}
.sidebar{position:sticky;top:68px;align-self:start;height:calc(100vh - 68px);overflow-y:auto;padding:18px 12px 22px;scrollbar-width:thin;scrollbar-color:#475467 transparent}
.sidebar-user{padding:7px 10px 15px}
.sidebar-nav{gap:9px}
.sidebar-nav-group{border:1px solid rgba(255,255,255,.09);border-radius:13px;background:rgba(255,255,255,.025);overflow:hidden}
.sidebar-nav-group[open]{background:rgba(255,255,255,.045);border-color:rgba(255,255,255,.14)}
.sidebar-nav-group summary{list-style:none;display:grid;grid-template-columns:minmax(0,1fr) auto 12px;gap:8px;align-items:center;min-height:42px;padding:10px 11px;color:#98a2b3;cursor:pointer;font-size:10px;font-weight:850;letter-spacing:.075em;text-transform:uppercase;user-select:none}
.sidebar-nav-group summary::-webkit-details-marker{display:none}
.sidebar-nav-group summary:hover,.sidebar-nav-group.is-active summary{color:#fff;background:rgba(255,255,255,.04)}
.sidebar-nav-group summary small{display:grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:99px;background:rgba(255,255,255,.08);color:#d0d5dd;font-size:10px;letter-spacing:0}
.sidebar-nav-group summary i{width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .18s ease}
.sidebar-nav-group[open] summary i{transform:rotate(225deg) translate(-1px,-1px)}
.sidebar-nav-links{display:grid;gap:3px;padding:0 6px 7px}
.sidebar-nav-links a{display:grid;grid-template-columns:22px minmax(0,1fr);gap:9px;align-items:center;min-height:39px;padding:8px 9px!important;border-radius:9px;color:#d0d5dd;font-size:12.5px;font-weight:720}
.sidebar-nav-links a svg,.sidebar-touch-home svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.sidebar-nav-links a:hover{background:#344054;color:#fff}
.sidebar-nav-links a.is-active{background:var(--primary);color:#fff;box-shadow:0 8px 20px color-mix(in srgb,var(--primary) 28%,transparent)}
.sidebar-nav-utility{display:grid;gap:4px;padding-top:10px;margin-top:2px;border-top:1px solid rgba(255,255,255,.11)}
.sidebar-nav-utility a{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:38px;padding:8px 11px!important;color:#98a2b3;font-size:12px;font-weight:750}
.sidebar-nav-utility a:hover{color:#fff}
.sidebar-nav-utility b{font-size:15px}
.dashboard-body.touch-friendly .sidebar-nav-group summary{min-height:48px;padding:12px 13px;font-size:11px}
.dashboard-body.touch-friendly .sidebar-nav-links a{min-height:52px!important;padding:12px 13px!important;font-size:15px!important}
.dashboard-body.touch-friendly .sidebar-nav-links a svg{width:22px;height:22px}
@media(max-width:900px){
  .dashboard-body:not(.touch-friendly) .sidebar{position:relative;top:auto;height:auto;max-height:none;overflow:visible;padding:8px 10px}
  .dashboard-body:not(.touch-friendly) .sidebar-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
  .dashboard-body:not(.touch-friendly) .sidebar-nav-group{min-width:0}
  .dashboard-body:not(.touch-friendly) .sidebar-nav-group summary{min-height:40px}
  .dashboard-body:not(.touch-friendly) .sidebar-nav-links a{white-space:normal}
  .dashboard-body:not(.touch-friendly) .sidebar-nav-utility{grid-column:1/-1;grid-template-columns:1fr 1fr;border-top:0;padding-top:0}
}
@media(max-width:560px){
  .dashboard-body:not(.touch-friendly) .sidebar-nav{grid-template-columns:1fr}
}

/* 4.5.1 - panel generatora menu PDF */
.table-qr-settings-grid{align-items:stretch;margin-bottom:20px}
.table-qr-settings-grid>.card{height:100%}
.menu-pdf-feature-card{position:relative;overflow:hidden;background:linear-gradient(145deg,#fff 0%,color-mix(in srgb,var(--accent) 11%,#fff) 100%)}
.menu-pdf-feature-card::after{content:"";position:absolute;right:-55px;top:-65px;width:170px;height:170px;border-radius:50%;background:color-mix(in srgb,var(--accent) 20%,transparent);pointer-events:none}
.menu-pdf-feature-card h2{position:relative;margin:7px 0 8px;font-size:27px}
.menu-pdf-feature-card>p{position:relative;color:#667085;max-width:620px}
.menu-pdf-feature-list{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:19px 0 23px}
.menu-pdf-feature-list span{padding:9px 11px;border:1px solid color-mix(in srgb,var(--accent) 25%,#e4e7ec);border-radius:11px;background:rgba(255,255,255,.72);color:#344054;font-size:12px;font-weight:750}
@media(max-width:720px){.menu-pdf-feature-list{grid-template-columns:1fr}}

/* 4.5.2 - klasyczne, spokojniejsze menu panelu */
.sidebar-nav{gap:0}
.sidebar-nav-group{border:0;border-top:1px solid rgba(255,255,255,.11);border-radius:0;background:transparent;overflow:visible}
.sidebar-nav-group:first-of-type{border-top:0}
.sidebar-nav-group[open]{background:transparent;border-color:rgba(255,255,255,.11)}
.sidebar-nav-group summary{grid-template-columns:minmax(0,1fr) 10px;min-height:0;padding:15px 10px 7px;color:#98a2b3;background:transparent;font-size:10px;font-weight:750;letter-spacing:.08em}
.sidebar-nav-group summary:hover,.sidebar-nav-group.is-active summary{color:#d0d5dd;background:transparent}
.sidebar-nav-group summary i{width:6px;height:6px;border-width:1.5px;opacity:.75}
.sidebar-nav-links{gap:1px;padding:0 2px 11px}
.sidebar-nav-links a{position:relative;grid-template-columns:19px minmax(0,1fr);gap:10px;min-height:37px;padding:8px 10px 8px 12px!important;border-radius:6px;color:#c7ced8;font-size:12.5px;font-weight:600}
.sidebar-nav-links a svg,.sidebar-touch-home svg{width:17px;height:17px;opacity:.72;stroke-width:1.6}
.sidebar-nav-links a:hover{background:rgba(255,255,255,.065);color:#fff}
.sidebar-nav-links a.is-active{background:rgba(255,255,255,.10);color:#fff;box-shadow:none}
.sidebar-nav-links a.is-active::before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:var(--primary)}
.sidebar-nav-links a.is-active svg{opacity:1}
.sidebar-nav-utility{margin-top:6px}
.dashboard-body.touch-friendly .sidebar-nav-group summary{min-height:0;padding:15px 12px 8px;font-size:10px}
.dashboard-body.touch-friendly .sidebar-nav-links a{min-height:49px!important;padding:12px 13px!important;border-radius:7px;font-size:14px!important}

/* 4.5.2 - panel menu i Google Food Menus */
.menu-pdf-classic-card{background:#fff}
.menu-pdf-classic-card::after{display:none}
.menu-pdf-classic-card .menu-pdf-feature-list span{border:0;border-bottom:1px solid #eaecf0;border-radius:0;background:transparent;padding:9px 0;font-weight:650}
.google-food-menu-card{margin:20px 0}
.google-food-menu-form{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:14px;align-items:end}
.google-food-menu-form .form-group{margin:0}
.table-qr-list-head{margin-top:28px}
@media(max-width:720px){.google-food-menu-form{grid-template-columns:1fr}.google-food-menu-form .btn{width:100%}}

/* 4.5.2 - publiczna karta menu */
.public-menu-hero{padding:54px 0 38px;background:#f7f5f1;border-bottom:1px solid #e5e1da}
.public-menu-hero-inner{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:24px;align-items:center}
.public-menu-hero img{width:92px;height:72px;object-fit:contain}
.public-menu-hero h1{margin:5px 0 8px;font-size:clamp(34px,5vw,58px)}
.public-menu-hero p{max-width:720px;margin:0;color:#667085}
.public-menu-category-nav{position:sticky;top:70px;z-index:15;display:flex;gap:8px;overflow-x:auto;padding:13px 0;background:rgba(255,255,255,.94);border-bottom:1px solid #eaecf0;backdrop-filter:blur(10px)}
.public-menu-category-nav a{flex:0 0 auto;padding:9px 14px;border:1px solid #d0d5dd;border-radius:999px;color:#344054;text-decoration:none;font-size:13px;font-weight:700}
.public-menu-category-nav a:hover{border-color:var(--primary);color:var(--primary)}
.public-menu-catalog{background:#fff}
.public-menu-category{scroll-margin-top:145px;margin-bottom:48px}
.public-menu-category>header{display:flex;justify-content:space-between;align-items:end;margin-bottom:18px;padding-bottom:12px;border-bottom:2px solid #101828}
.public-menu-category>header span{display:block;color:var(--primary);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.public-menu-category>header h2{margin:4px 0 0;font-size:30px}
.public-menu-category>header p{margin:6px 0 0;color:#667085}
.public-menu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.public-menu-item{display:grid;grid-template-columns:118px minmax(0,1fr);gap:16px;min-height:132px;padding:12px;border:1px solid #e4e7ec;border-radius:18px;background:#fff}
.public-menu-item-image{position:relative;overflow:hidden;border-radius:14px;background:#f2f4f7;aspect-ratio:1/1}
.public-menu-item-image img{width:100%;height:100%;object-fit:cover}
.public-menu-item-image>span{display:grid;place-items:center;width:100%;height:100%;color:var(--primary);font-size:34px;font-weight:800}
.public-menu-item-image b{position:absolute;left:8px;top:8px;padding:5px 8px;border-radius:999px;background:var(--primary);color:#fff;font-size:9px;text-transform:uppercase;letter-spacing:.06em}
.public-menu-item-copy{min-width:0;padding:4px 3px 3px 0}
.public-menu-item-head{display:flex;gap:12px;align-items:flex-start;justify-content:space-between}
.public-menu-item h3{margin:0;font-size:19px;line-height:1.25}
.public-menu-item-head>div{flex:0 0 auto;text-align:right}
.public-menu-item-head strong{display:block;color:var(--primary);font-size:17px;white-space:nowrap}
.public-menu-item-head del{display:block;color:#98a2b3;font-size:11px}
.public-menu-item p{margin:8px 0;color:#667085;font-size:13px;line-height:1.45}
.public-menu-item small{display:block;margin-top:8px;color:#667085;font-size:11px}
.public-menu-allergen-note{padding:25px 0;background:#f7f5f1;border-top:1px solid #e5e1da}
.public-menu-allergen-note .container{display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px;align-items:start}
.public-menu-allergen-note p{margin:0;color:#667085}
@media(max-width:820px){.public-menu-grid{grid-template-columns:1fr}.public-menu-hero-inner{grid-template-columns:auto 1fr}.public-menu-hero-inner>.btn{grid-column:1/-1;width:100%}}
@media(max-width:520px){.public-menu-hero{padding:34px 0 25px}.public-menu-hero-inner{grid-template-columns:1fr}.public-menu-hero img{width:78px;height:60px}.public-menu-item{grid-template-columns:92px minmax(0,1fr);min-height:108px;padding:9px;gap:12px;border-radius:14px}.public-menu-item-image{border-radius:11px}.public-menu-item h3{font-size:16px}.public-menu-item p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.public-menu-allergen-note .container{grid-template-columns:1fr}}

/* FoodOrder Pro 4.6.0 - waga porcji i ekran odbioru */
.product-weight{display:inline-flex;align-items:center;width:max-content;margin:.2rem 0 .45rem;padding:.22rem .55rem;border:1px solid rgba(31,41,55,.13);border-radius:999px;background:rgba(255,255,255,.72);color:#5f6570;font-size:.76rem;font-weight:700;letter-spacing:.02em}
.menu-preview-body .product-weight,.public-menu-item .product-weight{margin-top:.1rem}
.kiosk-product-card .product-weight,.kiosk-detail-form .product-weight{font-size:.82rem;background:rgba(255,255,255,.9)}
.product-weight-fields{align-items:flex-end}.product-weight-toggle{margin:-.2rem 0 1.1rem}
.pickup-board-admin-grid textarea[readonly]{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.82rem}

.pickup-board-body{margin:0;min-height:100vh;background:#111827;color:#fff;overflow:hidden;font-family:Inter,Arial,sans-serif}
.pickup-board-screen{min-height:100vh;display:flex;flex-direction:column;background:radial-gradient(circle at 50% -15%,rgba(255,255,255,.08),transparent 38%),#111827}
.pickup-board-header{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:2.1rem 3.2rem 1.7rem;border-bottom:1px solid rgba(255,255,255,.12);background:rgba(17,24,39,.92)}
.pickup-board-brand{display:flex;align-items:center;gap:1.25rem}.pickup-board-brand img{width:82px;height:56px;object-fit:contain;background:#fff;border-radius:12px;padding:7px}.pickup-board-brand span{display:block;color:rgba(255,255,255,.67);font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em}.pickup-board-brand h1{margin:.28rem 0 0;font-size:2.25rem;line-height:1.05;font-weight:800}
.pickup-board-header-actions{display:flex;align-items:center;gap:1rem}.pickup-board-header-actions time{font-size:2.15rem;font-weight:800;font-variant-numeric:tabular-nums}.pickup-board-header-actions button{border:1px solid rgba(255,255,255,.24);border-radius:999px;background:rgba(255,255,255,.08);color:#fff;padding:.7rem 1rem;font-weight:700}.pickup-board-header-actions button:disabled{opacity:.55}
.pickup-board-columns{flex:1;display:grid;grid-template-columns:1fr 1fr;gap:1.3rem;padding:1.3rem 2rem 1rem;min-height:0}
.pickup-board-column{display:flex;min-width:0;flex-direction:column;border:1px solid rgba(255,255,255,.12);border-radius:22px;background:rgba(255,255,255,.045);overflow:hidden}.pickup-board-column>header{display:flex;align-items:center;gap:.8rem;padding:1.15rem 1.45rem;border-bottom:1px solid rgba(255,255,255,.12)}.pickup-board-column>header>span{width:13px;height:13px;border-radius:50%;background:#f59e0b}.pickup-board-ready>header>span{background:#22c55e}.pickup-board-column h2{margin:0;flex:1;font-size:1.55rem}.pickup-board-column header b{display:grid;place-items:center;min-width:2.2rem;height:2.2rem;border-radius:999px;background:rgba(255,255,255,.12);font-size:1rem}
.pickup-number-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-content:start;gap:1rem;padding:1.25rem;overflow:hidden}.pickup-order-number{display:flex;min-height:112px;align-items:center;justify-content:center;flex-direction:column;border-radius:18px;background:#fff;color:#111827;border:3px solid transparent}.pickup-order-number strong{font-size:2.45rem;line-height:1;font-weight:900;letter-spacing:.02em;font-variant-numeric:tabular-nums}.pickup-order-number small{margin-top:.5rem;color:#68707e;font-size:1rem;font-weight:700}.pickup-order-number.is-ready{background:#dcfce7;border-color:#22c55e;color:#14532d;animation:pickupReadyPulse .75s ease-out}.pickup-board-empty{grid-column:1/-1;display:grid;place-items:center;min-height:180px;color:rgba(255,255,255,.48);font-size:1.3rem;font-weight:700}
.pickup-board-footer{display:flex;justify-content:space-between;align-items:center;padding:.8rem 3.2rem 1.1rem;color:rgba(255,255,255,.62);font-weight:700}.pickup-board-footer small{font-variant-numeric:tabular-nums}
@keyframes pickupReadyPulse{0%{transform:scale(.9);box-shadow:0 0 0 0 rgba(34,197,94,.75)}100%{transform:scale(1);box-shadow:0 0 0 20px rgba(34,197,94,0)}}
@media(max-width:1100px){.pickup-number-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.pickup-order-number{min-height:96px}.pickup-order-number strong{font-size:2rem}}
@media(max-width:760px){.pickup-board-body{overflow:auto}.pickup-board-header{padding:1.2rem;align-items:flex-start}.pickup-board-brand h1{font-size:1.45rem}.pickup-board-brand img{width:58px;height:44px}.pickup-board-header-actions{flex-direction:column;align-items:flex-end}.pickup-board-header-actions time{font-size:1.45rem}.pickup-board-columns{grid-template-columns:1fr;padding:1rem}.pickup-number-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.pickup-board-footer{padding:1rem;gap:1rem}.pickup-board-footer span{display:none}}


/* 4.6.1 - oznaczenia dań */
.product-marker-list{display:flex;flex-wrap:wrap;gap:5px;margin:6px 0 7px}.product-marker-list.is-compact{margin:5px 0}.product-marker{display:inline-flex;align-items:center;gap:4px;min-height:25px;padding:3px 7px;border:1px solid #d0d5dd;border-radius:999px;background:#fff;color:#344054;font-size:11px;font-weight:750;line-height:1}.product-marker b{font-size:11px}.product-marker small{font:inherit}.product-marker-spicy_1,.product-marker-spicy_2,.product-marker-spicy_3{border-color:#f7b27b;background:#fff4e8;color:#9c2a10}.product-marker-vegetarian,.product-marker-vegan{border-color:#a6d8a8;background:#f0faef;color:#246b2c}.product-marker-fish,.product-marker-seafood{border-color:#a7c7e8;background:#eef7ff;color:#24557d}.product-marker-kids{border-color:#ecd899;background:#fff9df;color:#745b0a}.product-marker-gluten_free,.product-marker-lactose_free{border-color:#d6c0e8;background:#faf5ff;color:#69418a}.product-marker-chef_choice{border-color:#e1bd76;background:#fff8e8;color:#74510e}.product-marker-editor{margin:14px 0;padding:15px;border:1px solid #e4e7ec;border-radius:14px;background:#fafafa}.product-marker-checkboxes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.product-marker-checkboxes label{display:flex;align-items:center;gap:8px;padding:9px 10px;border:1px solid #e4e7ec;border-radius:10px;background:#fff}.product-marker-checkboxes label span{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:650}.product-marker-checkboxes label b{min-width:28px;color:var(--primary)}.pickup-board-error{margin:1rem 2rem 0;padding:1rem 1.2rem;border:1px solid rgba(248,113,113,.55);border-radius:14px;background:rgba(127,29,29,.65);color:#fff;font-weight:700}@media(max-width:620px){.product-marker-checkboxes{grid-template-columns:1fr}.product-marker small{display:none}.product-marker{min-width:27px;justify-content:center}}


/* 4.6.4 - dwukolumnowy ekran odbioru z automatyczna rotacja */
.pickup-board-body{overflow:hidden}
.pickup-board-column>header em{min-width:3.2rem;color:rgba(255,255,255,.68);font-size:.9rem;font-style:normal;font-weight:800;text-align:right;font-variant-numeric:tabular-nums}
.pickup-number-grid{--pickup-columns:4;--pickup-rows:5;grid-template-columns:repeat(var(--pickup-columns),minmax(0,1fr));grid-template-rows:repeat(var(--pickup-rows),minmax(0,1fr));align-content:stretch;min-height:0;height:100%;gap:clamp(.55rem,1vw,1rem);padding:clamp(.7rem,1.2vw,1.25rem);overflow:hidden}
.pickup-order-number{min-width:0;min-height:0;height:100%;padding:.45rem;border-radius:clamp(12px,1.2vw,18px)}
.pickup-order-number strong{max-width:100%;font-size:clamp(1.65rem,2.55vw,3rem);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pickup-order-number.is-long strong{font-size:clamp(1.3rem,2vw,2.25rem)}
.pickup-order-number.is-very-long strong{font-size:clamp(1.05rem,1.55vw,1.8rem)}
.pickup-order-number small{max-width:100%;margin-top:clamp(.2rem,.6vh,.5rem);font-size:clamp(.72rem,1vw,1rem);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pickup-board-empty{min-height:0;height:100%;grid-column:1/-1;grid-row:1/-1}
.pickup-number-grid.is-page-changing{animation:pickupPageChange .32s ease-out}
@keyframes pickupPageChange{from{opacity:.25;transform:translateY(7px)}to{opacity:1;transform:none}}
@media(max-width:760px){.pickup-board-body{overflow:hidden}.pickup-board-columns{grid-template-columns:1fr 1fr;padding:.6rem;gap:.6rem}.pickup-board-column>header{padding:.7rem}.pickup-board-column h2{font-size:1rem}.pickup-board-column>header em{min-width:2.4rem;font-size:.72rem}.pickup-board-column header b{min-width:1.8rem;height:1.8rem}.pickup-board-footer{padding:.55rem .8rem}.pickup-board-header{padding:.75rem 1rem}.pickup-board-brand h1{font-size:1.15rem}.pickup-board-brand span{font-size:.75rem}.pickup-board-brand img{width:46px;height:38px}.pickup-board-header-actions time{font-size:1.15rem}.pickup-board-header-actions button{padding:.45rem .65rem;font-size:.75rem}}
.pickup-board-screen{height:100vh;min-height:0}
.pickup-board-column{min-height:0}
.pickup-number-grid{flex:1}


/* FoodOrder Pro 4.6.11 — spójność panelu */
.dashboard-admin-context strong{display:flex;align-items:center;gap:8px;line-height:1.15}.dashboard-admin-context strong span{display:inline-flex;align-items:center;min-height:20px;padding:2px 7px;border:1px solid rgba(255,255,255,.24);border-radius:999px;color:#d0d5dd;font-size:11px;font-weight:750;letter-spacing:.02em}.sidebar-product{display:flex;flex-direction:column;gap:2px;margin:0 4px 10px;padding:4px 8px 14px;border-bottom:1px solid rgba(255,255,255,.12)}.sidebar-product strong{color:#fff;font-size:15px}.sidebar-product small{color:#98a2b3;font-size:12px}
.dashboard-main>:is(.card,.grid,.stats,.table-wrap,.filter-bar,.system-pagination,form,.tabs,.admin-tabs,.touch-module-grid,.alert)+:is(.card,.grid,.stats,.table-wrap,.filter-bar,.system-pagination,form,.tabs,.admin-tabs,.touch-module-grid,.alert){margin-top:20px}.dashboard-main>.page-head+*{margin-top:0}.dashboard-main .grid{align-items:start}.dashboard-main .grid>.card,.dashboard-main .grid>form.card,.dashboard-main .grid>section.card,.dashboard-main .grid>article.card{min-width:0;margin:0}.dashboard-main .card>:first-child{margin-top:0}.dashboard-main .card>:last-child{margin-bottom:0}.dashboard-main .card+.card{margin-top:20px}.dashboard-main form.card+.card,.dashboard-main .card+form.card{margin-top:20px}.dashboard-main .table-wrap+.card,.dashboard-main .card+.table-wrap{margin-top:20px}
.dashboard-body :is(.check,.check-row,.toggle-row){display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;column-gap:10px;row-gap:2px;width:100%;margin:8px 0;padding:9px 10px;border-radius:10px;line-height:1.35;cursor:pointer}.dashboard-body :is(.check,.check-row,.toggle-row):hover{background:#f8fafc}.dashboard-body :is(.check,.check-row,.toggle-row)>input[type=checkbox],.dashboard-body :is(.check,.check-row,.toggle-row)>input[type=radio]{grid-column:1;grid-row:1;margin:2px 0 0!important;width:18px!important;height:18px!important;min-width:18px;min-height:18px;accent-color:var(--primary);cursor:pointer}.dashboard-body :is(.check,.check-row,.toggle-row)>:not(input){grid-column:2;min-width:0;margin:0}.dashboard-body :is(.check,.check-row,.toggle-row) span{display:flex;flex-direction:column;gap:2px}.dashboard-body :is(.check,.check-row,.toggle-row) strong{line-height:1.3}.dashboard-body :is(.check,.check-row,.toggle-row) small{display:block;color:#667085;line-height:1.4}.dashboard-body input[type=checkbox],.dashboard-body input[type=radio]{accent-color:var(--primary);flex:0 0 auto}.dashboard-body .product-marker-checkboxes{gap:10px}.dashboard-body .product-marker-checkboxes label{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:center;column-gap:9px;min-height:42px}.dashboard-body .product-marker-checkboxes input{margin:0!important}.dashboard-body .reservation-hours-row>label{display:inline-grid;grid-template-columns:18px auto;align-items:center;gap:9px}.dashboard-body .reservation-hours-row>label input{margin:0}.dashboard-body .social-target input[type=checkbox],.dashboard-body .touch-menu-pin-form input[type=checkbox]{margin:2px 0 0}.dashboard-body .form-group>.check,.dashboard-body .form-group>.check-row,.dashboard-body .form-group>.toggle-row{margin-top:4px}.dashboard-body label:has(>input[type=checkbox]):not(.check):not(.check-row):not(.toggle-row),.dashboard-body label:has(>input[type=radio]):not(.check):not(.check-row):not(.toggle-row){column-gap:9px}.dashboard-body label:has(>input[type=checkbox])>input[type=checkbox],.dashboard-body label:has(>input[type=radio])>input[type=radio]{margin-left:0;margin-right:0}
@media(max-width:620px){.dashboard-main>:is(.card,.grid,.stats,.table-wrap,.filter-bar,.system-pagination,form,.tabs,.admin-tabs,.touch-module-grid,.alert)+:is(.card,.grid,.stats,.table-wrap,.filter-bar,.system-pagination,form,.tabs,.admin-tabs,.touch-module-grid,.alert){margin-top:16px}.dashboard-main .card+.card,.dashboard-main form.card+.card,.dashboard-main .card+form.card,.dashboard-main .table-wrap+.card,.dashboard-main .card+.table-wrap{margin-top:16px}.dashboard-body :is(.check,.check-row,.toggle-row){padding:9px 6px}}
@media(max-width:900px){.dashboard-body:not(.touch-friendly) .dashboard-shell{grid-template-columns:minmax(0,1fr)}.dashboard-body:not(.touch-friendly) .sidebar{width:100%;min-width:0}.dashboard-body:not(.touch-friendly) .dashboard-main{width:100%;min-width:0}}
@media(max-width:900px){.dashboard-body:not(.touch-friendly) .sidebar{display:block;flex-direction:column;overflow-x:hidden}.dashboard-body:not(.touch-friendly) .sidebar-product{margin:0 0 8px;padding:6px 8px 10px}.dashboard-body:not(.touch-friendly) .sidebar-nav{width:100%;min-width:0}}

/* FoodOrder Pro 4.6.11 — panel wydawania zamówień kioskowych */
.pickup-collection-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.pickup-collection-card{overflow:visible}.pickup-collection-grid{display:grid;grid-template-columns:repeat(3,minmax(260px,1fr));gap:18px}.pickup-collection-order{position:relative;display:flex;min-width:0;flex-direction:column;overflow:hidden;border:1px solid #d0d5dd;border-radius:18px;background:#fff;box-shadow:0 4px 14px rgba(16,24,40,.06)}.pickup-collection-number{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 12px;padding:18px 20px;background:#101828;color:#fff}.pickup-collection-number>span{grid-column:1;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#98a2b3}.pickup-collection-number strong{grid-column:1;font-size:clamp(36px,4vw,58px);line-height:1;font-variant-numeric:tabular-nums;white-space:nowrap}.pickup-collection-number small{grid-column:2;grid-row:1/3;align-self:center;font-size:20px;font-weight:800;color:#d0d5dd;font-variant-numeric:tabular-nums}.pickup-collection-details{display:flex;flex:1;min-height:0;flex-direction:column;gap:12px;padding:16px 18px}.pickup-collection-meta{display:flex;flex-wrap:wrap;gap:7px}.pickup-collection-customer{font-size:18px}.pickup-collection-items{display:flex;flex-direction:column;gap:5px;min-height:54px;color:#475467}.pickup-collection-items span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pickup-collection-items b{color:#101828}.pickup-collection-total{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-top:auto;padding-top:10px;border-top:1px solid #eaecf0}.pickup-collection-total span{color:#667085;font-weight:700}.pickup-collection-total strong{font-size:24px}.pickup-collection-action{margin:0!important;padding:0 18px 12px}.pickup-collection-action .btn{min-height:58px;font-size:18px;font-weight:900}.pickup-collection-link{display:block;padding:0 18px 16px;color:#475467;text-align:center;font-size:13px;font-weight:700}.pickup-collection-empty{display:flex;min-height:220px;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:30px;border:2px dashed #d0d5dd;border-radius:16px;background:#f9fafb;text-align:center}.pickup-collection-empty strong{font-size:22px}.pickup-collection-empty span{max-width:520px;color:#667085}.pickup-collection-history summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;font-size:18px;font-weight:850}.pickup-collection-history summary span{display:inline-grid;place-items:center;min-width:32px;height:32px;padding:0 9px;border-radius:999px;background:#f2f4f7;font-size:14px}.pickup-collected-list{display:grid;gap:8px;margin-top:16px}.pickup-collected-list>div{display:grid;grid-template-columns:110px 80px minmax(110px,1fr) auto;align-items:center;gap:12px;padding:11px 13px;border:1px solid #eaecf0;border-radius:11px}.pickup-collected-list strong{font-size:19px;font-variant-numeric:tabular-nums}.pickup-collected-list span{color:#667085;font-variant-numeric:tabular-nums}.pickup-collected-list b{text-align:right}.pickup-collected-list a{font-weight:750}
@media(max-width:1180px){.pickup-collection-grid{grid-template-columns:repeat(2,minmax(250px,1fr))}}
@media(max-width:760px){.pickup-collection-stats,.pickup-collection-grid{grid-template-columns:1fr}.pickup-collection-number strong{font-size:46px}.pickup-collected-list>div{grid-template-columns:80px 60px minmax(90px,1fr)}.pickup-collected-list a{grid-column:1/-1}.pickup-collection-card{padding:14px}.pickup-collection-grid{gap:13px}}



/* FoodOrder Pro branding */
.app-product-logo{display:block;max-width:220px;height:auto;object-fit:contain}
.login-product-logo{display:block;max-width:min(100%,280px);height:auto;margin:0 auto 18px;object-fit:contain}
.sidebar-product{display:flex;flex-direction:column;gap:8px;align-items:flex-start}
.sidebar-product-logo{display:block;max-width:190px;width:100%;height:auto;object-fit:contain}
.dashboard-product-brand{display:flex;align-items:center;gap:14px}
.dashboard-product-logo{display:block;max-width:150px;width:100%;height:auto;object-fit:contain}
.dashboard-admin-context strong{display:flex;flex-direction:column;gap:2px}
@media(max-width:900px){.dashboard-product-logo{max-width:118px}.sidebar-product-logo{max-width:165px}}

/* 4.6.11: wspólne pola obrazu — upload albo URL */
.image-source-field{display:grid;gap:10px}.image-source-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.image-source-grid>label{display:grid;gap:6px;color:#475467;font-size:13px;font-weight:700}.image-source-preview{display:flex;align-items:center;gap:12px;padding:10px;border:1px solid #e4e7ec;border-radius:14px;background:#f9fafb}.image-source-preview img{width:88px;height:64px;object-fit:cover;border-radius:10px;background:#fff}.image-source-preview span{color:#667085;font-size:13px;font-weight:700}.image-source-field input[type=file]{padding:9px;background:#fff}.image-source-field .notice{margin-top:0}
@media(max-width:700px){.image-source-grid{grid-template-columns:1fr}.image-source-preview img{width:72px;height:54px}}
