/* MenuPro A1 — luxury hospitality design system. Scoped to plugin UI. */
.m16-app,.mp18-public{--a1-ink:#1b211f;--a1-forest:#18362f;--a1-gold:#ae8a50;--a1-cream:#f7f4ed;--a1-line:#e7dfd2;--a1-muted:#746f65;color:var(--a1-ink);font-family:Inter,'Helvetica Neue',Arial,sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}
.m16-app{background:linear-gradient(145deg,#faf8f3,#f0ece4);padding:clamp(14px,3vw,38px);border-radius:22px;min-height:65vh}
.m16-app *,.mp18-public *{box-sizing:border-box}
.m16-app :is(h1,h2,h3),.mp18-public :is(h1,h2,h3){font-family:Georgia,'Times New Roman',serif;letter-spacing:-.025em;line-height:1.15}
.m16-app :is(button,input,select,textarea),.mp18-public :is(button,input,select,textarea){font:inherit}
.m16-app :is(button,a,input,select),.mp18-public :is(button,a,input,select){transition:background .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.m16-app :is(button,a,input,select):focus-visible,.mp18-public :is(button,a,input,select):focus-visible{outline:3px solid #bb985b;outline-offset:3px}
.m16-header{display:flex;align-items:center;gap:15px;padding:17px 22px;background:#17352e!important;color:#f8f4e9!important;border-radius:16px;box-shadow:0 12px 35px #12282020}
.m16-header strong{font-family:Georgia,serif;font-size:25px;letter-spacing:.025em;color:#f8f4e9}.m16-header small{color:#d8c49c}.m16-header button{background:transparent!important;color:#f5efe2!important;border:1px solid #8d9c8e!important;border-radius:9px;padding:8px 14px}
.m16-card,.mp18-checkout,.mp19-report{background:#fffefa!important;border:1px solid var(--a1-line)!important;border-radius:20px!important;box-shadow:0 18px 50px #24251b0b!important}
.m16-card{max-width:640px;margin:32px auto;padding:clamp(24px,5vw,48px)}.m16-card h1{font-size:clamp(30px,4vw,48px);color:var(--a1-forest)}
.m16-app label{color:#38413a}.m16-app input:not([type=checkbox]),.m16-app select,.m16-app textarea{border:1px solid #d7d5cc;border-radius:10px;background:#fff;padding:12px 14px;max-width:100%}
.m16-app input:focus,.m16-app select:focus{border-color:var(--a1-gold);box-shadow:0 0 0 3px #ae8a5020}
.m16-app .m16-primary,.m16-app .m16-actions .active,.m16-app .mp18-links a:last-child,.mp18-public .m16-primary{background:var(--a1-forest)!important;color:#fff!important;border:1px solid var(--a1-forest)!important;border-radius:10px!important;padding:12px 19px;cursor:pointer}
.m16-app .m16-primary:hover,.m16-app .mp18-links a:last-child:hover{background:#264f43!important;transform:translateY(-1px)}
.mp18-tabs,.mp18-links{gap:9px}.mp18-tabs a,.mp18-links a{background:#fffefa!important;color:#3a473f!important;border:1px solid var(--a1-line)!important;border-radius:9px!important;font-weight:600!important;text-decoration:none!important}
.mp18-tabs a.active{background:var(--a1-forest)!important;color:#fff!important;border-color:var(--a1-forest)!important}
.mp18-hero{position:relative;overflow:hidden;background:linear-gradient(115deg,#102a23 0%,#1f4638 68%,#335744 100%)!important;border-radius:20px!important;padding:clamp(38px,6vw,78px) 22px!important;box-shadow:0 18px 45px #152d2630}
.mp18-hero:after{content:'';position:absolute;inset:15px;border:1px solid #d1b77c66;border-radius:12px;pointer-events:none}
.mp18-hero h1{font-size:clamp(34px,5vw,62px)!important;letter-spacing:-.035em}.mp18-hero small{text-transform:uppercase;color:#e6cfa2;letter-spacing:.22em!important}
.mp18-food-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr))!important;gap:24px!important}
.mp18-food-card{background:#fffefa!important;border:1px solid var(--a1-line)!important;border-radius:15px!important;box-shadow:0 10px 35px #14261b0d!important;transition:transform .25s,box-shadow .25s}
.mp18-food-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px #14261b1b!important}.mp18-photo{height:220px!important;object-fit:cover}.mp18-empty{background:#e8e4d9!important;color:#a68a57}
.mp18-food-body{padding:21px!important}.mp18-food-body h3{font-size:23px!important;color:var(--a1-forest)!important}.mp18-food-body strong{color:#8b683a!important;font-size:21px!important}
.mp18-availability{background:#f8f5ed!important;border:1px solid #cdbf9e!important;color:#344d3f!important;border-radius:9px!important}
.mp18-checkout{padding:clamp(20px,4vw,36px)!important}.mp18-checkout input:not([type=checkbox]),.mp18-checkout select{border-color:#d9d4c9!important;background:#fffefa!important}
.mp19-report{overflow-x:auto}.mp19-report th{background:#f2efe7;color:#254439;font-size:12px;text-transform:uppercase;letter-spacing:.06em}.mp19-report td{color:#333b34}.mp19-report tr:hover td{background:#faf8f2}
.m16-alert{border-left:4px solid var(--a1-gold);background:#fff8e9;color:#574524;padding:13px 17px;border-radius:9px}.m16-hint,.mp18-note{color:var(--a1-muted)!important}
@media(max-width:640px){.m16-app{padding:12px;border-radius:12px}.m16-header{flex-wrap:wrap;padding:13px}.mp18-hero{padding:40px 18px!important}.mp18-food-grid{grid-template-columns:1fr!important;gap:16px!important}.mp18-photo{height:240px!important}.mp18-tabs a,.mp18-links a{flex:1 1 auto;text-align:center;padding:10px!important}.m16-card{padding:23px}}
@media(prefers-reduced-motion:reduce){.m16-app *,.mp18-public *{transition:none!important;transform:none!important}}
.mp23-slots{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:22px;margin:28px 0}.mp23-slot{background:#102820;border:1px solid #a98b53;border-radius:18px;padding:28px;color:#f8f3e8;min-height:190px}.mp23-slot h2,.mp23-slot summary{color:#e3c58b}.mp23-slot summary{cursor:pointer;font-size:1.25rem;font-weight:700}.mp23-slot input{width:100%;margin:8px 0 16px}.mp23-days{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.mp23-days strong{width:100%}.mp23-days label{display:inline-flex;gap:5px;align-items:center;padding:7px;border:1px solid #b5a17b;border-radius:8px}.mp23-days input{width:auto!important}.mp23-edit{margin:12px 0;padding:12px;border:1px solid #b5a17b;border-radius:10px}.mp23-edit summary{cursor:pointer;font-weight:600}