:root{--kk-warm-white:#fffefe;--kk-sage:#dfece2;--kk-sage-deep:#789883;--kk-lilac:#eee5f3;--kk-lilac-2:#dfcfe8;--kk-purple:#351541;--kk-purple-soft:#65476f;--kk-border:#ded2e5}

/* V4.1 palette: lilac, sage and white throughout, with purple as the brand anchor. */
body{background:radial-gradient(circle at 8% 6%,rgba(222,207,232,.85),transparent 29rem),radial-gradient(circle at 94% 12%,rgba(203,223,207,.82),transparent 31rem),linear-gradient(180deg,#fbf9fc,#f5f8f4)!important;color:#271c2c}
#app{background:transparent!important}.wrap{background:transparent!important}
.hdr{background:linear-gradient(118deg,#2d1138 0%,#4e2a58 58%,#668676 145%)!important;border-bottom:1px solid rgba(255,255,255,.18)}
.card,.ord,.due-card,.weekly-card,.product-card,.auth-card,.auth-note{background:rgba(255,255,255,.94)!important;border-color:var(--kk-border)!important;box-shadow:0 12px 34px rgba(62,37,71,.07)!important}
.card.dark{background:linear-gradient(135deg,#351541,#5c3b65)!important}
input,select,textarea{background:#fff!important;border-color:#d8cde0!important}input:focus,select:focus,textarea:focus{border-color:var(--kk-sage-deep)!important;box-shadow:0 0 0 3px rgba(120,152,131,.14)!important;outline:0}
.btn{background:var(--kk-purple);color:#fff}.btn.ghost{background:#fff!important;color:var(--kk-purple)!important;border-color:#bdaac8!important}.btn.gold{background:var(--kk-sage-deep)!important;color:#fff!important;border-color:var(--kk-sage-deep)!important}.btn.danger{background:#fff7f6!important;color:#a33b32!important;border-color:#ddb4af!important}
.note{background:#f0e9f4!important;border-color:#d9c7e2!important;color:#523a5a!important}.note.good{background:#e8f1e9!important;border-color:#bfd5c4!important;color:#315d43!important}.note.bad{background:#fff3f1!important;border-color:#e4bcb6!important;color:#8d392e!important}
.chip{background:#fff!important;border-color:#d7cbe0!important}.chip.on,.pill.open{background:var(--kk-sage-deep)!important;color:#fff!important;border-color:var(--kk-sage-deep)!important}.kk-badge{background:var(--kk-lilac)!important;color:var(--kk-purple)!important}.catalogue-meta span{background:var(--kk-lilac)!important;color:#59455e!important}
.rule{border-color:#e5dbe9!important}.eyebrow,.kk-tag{color:#78587f!important}.client-hero .kk-tag{color:#dceadf!important}
.client-hero{background:linear-gradient(112deg,rgba(45,17,56,.97),rgba(87,57,96,.89) 58%,rgba(105,139,120,.83)),radial-gradient(circle at 88% 15%,#c8b1d2,transparent 45%)!important}.client-hero:after{color:rgba(223,236,226,.12)!important}
.kk-hero{background:linear-gradient(112deg,rgba(45,17,56,.97),rgba(91,62,101,.9) 58%,rgba(110,145,125,.86)),radial-gradient(circle at 82% 25%,#cbb6d5,transparent 48%)!important}.kk-hero:after{color:rgba(222,236,225,.12)!important}.kk-grid>.card{background:linear-gradient(145deg,#fff,#f6f0f8)!important}.kk-grid>.card:nth-child(even){background:linear-gradient(145deg,#fff,#eef5ef)!important}.kk-icon{background:linear-gradient(135deg,var(--kk-lilac),var(--kk-sage))!important;color:var(--kk-purple)!important}
.tabs{background:rgba(238,229,243,.94)!important;border-color:#d8c9e0!important}.tabs button.on{background:var(--kk-purple)!important;color:#fff!important}.foot{color:#69566e}.foot a{color:var(--kk-purple)}
.weekly-placeholder,.catalogue-empty-photo{background:linear-gradient(135deg,var(--kk-lilac),var(--kk-sage))!important}.cart-panel{background:linear-gradient(180deg,#fff,#f2f7f2)!important;border-color:#bfd3c3!important}.sticky-cart-bar{background:linear-gradient(105deg,#351541,#5b3a64)!important}.sticky-cart-bar .btn{background:var(--kk-sage-deep)!important}
.location-preview,.menu-explainer>div{background:#f3edf6!important;border-color:#ded1e5!important}.maps-help,.google-place-shell{background:#e9f2ea!important;border-color:#c6d9ca!important}.reply-box{background:var(--kk-lilac)!important}.fulfil-pick label{background:#fff!important;border-color:#d8cde0!important}

/* Restaurant atmosphere lives at the edges; the working surface stays calm. */
@media(min-width:1320px){
  body{background-image:linear-gradient(rgba(252,248,240,.16),rgba(252,248,240,.16)),url('/restaurant-edge-spread.webp')!important;background-size:cover!important;background-position:center top!important;background-attachment:fixed!important}
  #app{background:rgba(250,249,251,.93)!important;box-shadow:0 0 58px rgba(43,20,50,.13);min-height:100vh}
}

.owner-nav-v4{position:sticky;top:101px;z-index:18;display:grid;grid-template-columns:1.12fr 1fr 1fr 1fr;gap:7px;margin-bottom:17px;padding:8px;border:1px solid #d8c9e0;border-radius:18px;background:rgba(238,229,243,.96);box-shadow:0 8px 28px rgba(52,21,65,.08);backdrop-filter:blur(15px)}
.owner-nav-group{min-width:0;padding:7px;border:1px solid rgba(91,57,101,.1);border-radius:13px;background:rgba(255,255,255,.7)}
.owner-nav-label{display:block;padding:2px 5px 7px;color:#8b6c88;font:700 9px/1 var(--sans);letter-spacing:.15em;text-transform:uppercase}
.owner-nav-buttons{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none}.owner-nav-buttons::-webkit-scrollbar{display:none}
.owner-nav-v4 button{flex:1 0 auto;border:0;border-radius:10px;background:transparent;color:var(--ink2);padding:10px 8px;font:600 12px/1 var(--sans);white-space:nowrap;cursor:pointer}
.owner-nav-v4 button.on{background:var(--plum);color:#fff;box-shadow:0 5px 14px rgba(49,20,62,.19)}

.menu-library{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:-3px 0 20px}
.menu-library-card{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px 18px;border:1px solid #d8c9e0;border-radius:18px;background:linear-gradient(135deg,#fff,#f4eef7);box-shadow:0 8px 26px rgba(48,25,54,.05)}
.menu-library-card.global{background:linear-gradient(135deg,#f0f6f1,#fff);border-color:#c5d8c9}
.menu-library-card b{display:block;color:var(--plum);font-family:var(--serif);font-size:18px}.menu-library-card small{display:block;margin-top:3px;color:var(--ink2);line-height:1.35}
.menu-library-card .btn{width:auto;min-width:116px;flex:none}
.menu-explainer{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0}.menu-explainer>div{padding:14px;border-radius:14px}.menu-explainer b{display:block;color:var(--plum);margin-bottom:4px}

.brand-promise{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.brand-promise span{padding:8px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.1);font-size:12px}
.client-hero .kk-tag{color:var(--gold-l)}
.client-identity{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px;padding:14px 17px;border:1px solid rgba(74,35,88,.1);border-radius:16px;background:rgba(255,255,255,.88)}
.client-identity b{font-family:var(--serif);font-size:20px;color:var(--plum)}.client-identity small{display:block;color:var(--ink2);margin-top:2px}

.profile-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:15px}.profile-heading h2{margin:2px 0 3px}.profile-location{color:var(--wine);font-weight:700}.profile-initial{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:linear-gradient(135deg,var(--plum),#6c3577);color:var(--gold-l);font:700 28px/1 var(--serif);flex:none}

.google-place-shell{padding:13px 14px;margin:0 0 12px;border:1px solid #d7e5d8;border-radius:15px;background:var(--kk-sage)}
.google-place-shell>label{display:block;margin-bottom:7px;color:#315f48;font:700 11px/1 var(--sans);letter-spacing:.09em;text-transform:uppercase}
.google-place-shell gmp-place-autocomplete{display:block;width:100%;--gmpx-color-surface:#fff;--gmpx-color-primary:#351541}
.google-place-note{color:#486956;font-size:12px;line-height:1.45}.google-place-note a{font-weight:700;color:var(--wine)}
.google-place-success{margin-top:8px;color:#286044;font-size:12px;font-weight:700}
.dish-suggest-list .new-weekly-choice{background:#fffaf0;border:1px solid #ead39b;border-radius:10px;margin:7px;width:calc(100% - 14px);color:var(--plum)}.dish-suggest-list .new-weekly-choice strong{color:#8a6217}.weekly-only-note{margin-top:7px;color:#7d647f;font-size:11px}

.public-review{border-left:4px solid var(--kk-sage-deep)!important}.review-status{display:inline-flex;padding:5px 9px;border-radius:99px;font-size:11px;font-weight:700}.review-status.approved{background:#e6f2e7;color:#2c6b46}.review-status.pending{background:#f0e7f4;color:#65466d}.review-status.rejected{background:#f9e2de;color:#943928}
.review-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:13px}.review-quote{height:100%;padding:18px;border:1px solid #d8cde0;border-radius:17px;background:linear-gradient(150deg,#fff,#f1eaf4 58%,#eaf3eb)}
.catering-card{position:relative;overflow:hidden;background:linear-gradient(125deg,#f1e8f5 0%,#fff 52%,#e7f1e9 100%)!important;border-color:#cebcd8!important}.catering-card:after{content:'✦';position:absolute;right:3%;top:-38px;color:rgba(53,21,65,.06);font:700 150px/1 var(--serif)}.catering-card>*{position:relative;z-index:1}.catering-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:20px;align-items:center}.catering-points{display:grid;grid-template-columns:1fr 1fr;gap:7px 16px;margin:15px 0}.catering-points span{display:flex;gap:7px;color:#58455d;font-size:13px}.catering-points span:before{content:'•';color:var(--kk-sage-deep);font-weight:900}.catering-actions .btn{width:auto}.catering-price{padding:13px;border-radius:13px;background:rgba(255,255,255,.72);border:1px solid #d9cde0;color:#5a4660;font-size:12px}.database-repair-note{margin-bottom:13px;background:#f0e9f4!important}

@media(max-width:980px){.owner-nav-v4{position:static;grid-template-columns:1fr 1fr}.owner-nav-group{padding:6px}.menu-library{grid-template-columns:1fr}}
@media(max-width:620px){
  .owner-nav-v4{grid-template-columns:1fr;margin-left:-5px;margin-right:-5px;padding:6px}.owner-nav-group{display:grid;grid-template-columns:92px 1fr;align-items:center}.owner-nav-label{padding:0 6px;line-height:1.25}.owner-nav-v4 button{font-size:11px;padding:10px 7px}
  .menu-library-card{align-items:flex-start;padding:14px;flex-direction:column}.menu-library-card .btn{width:100%}.menu-explainer{grid-template-columns:1fr}.profile-heading{align-items:flex-start}.profile-initial{width:48px;height:48px;font-size:23px}.client-identity{align-items:flex-start;flex-direction:column}.catering-grid,.catering-points{grid-template-columns:1fr}.catering-actions .btn{width:100%}
}

@media print{.owner-nav-v4,.menu-library,.google-place-shell{display:none!important}}
