:root{--green-950:#052d23;--green-900:#073d2c;--green-800:#0c4b39;--green-100:#dfece6;--gold:#c9a45c;--gold-2:#e1c47e;--cream:#f7f2e7;--cream-2:#efe5d1;--ink:#15221c;--muted:#66736c;--line:#ddd5c5;--white:#fff;--danger:#a33b35;--success:#176b4b;--shadow:0 18px 55px rgba(13,38,29,.12);--radius:18px;--serif:Georgia,'Times New Roman',serif;--sans:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:15px/1.55 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit}img{max-width:100%}button,input,select,textarea{font:inherit}button,.button,.btn{border:0;border-radius:999px;background:var(--green-900);color:#fff;padding:.82rem 1.2rem;font-weight:750;letter-spacing:.01em;cursor:pointer;transition:.2s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.45rem}button:hover,.button:hover,.btn:hover{background:var(--green-800);transform:translateY(-1px)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(201,164,92,.45);outline-offset:2px}.button-gold,.btn-gold{background:var(--gold);color:var(--green-950)}.button-ghost{background:transparent;color:var(--green-900);border:1px solid var(--line)}.eyebrow{display:block;color:#a77b27;font-size:.72rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.muted{color:var(--muted)}.success,.notice{padding:1rem 1.1rem;border-radius:12px;background:#e5f2eb;color:var(--success);border:1px solid #c9e3d5}.err,.error{padding:1rem 1.1rem;border-radius:12px;background:#fae9e6;color:var(--danger);border:1px solid #efcec8}.empty-state{padding:3rem 1.5rem;text-align:center;color:var(--muted)}

/* Public inner pages */
.site-header{height:82px;padding:0 clamp(20px,5vw,76px);display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.96);border-bottom:1px solid rgba(7,61,44,.09);position:relative;z-index:10}.site-brand{text-decoration:none;display:flex;align-items:center;gap:.75rem;color:var(--green-900)}.site-brand-mark{width:42px;height:42px;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;font:700 1.55rem var(--serif)}.site-brand strong{font:700 1.1rem var(--serif);letter-spacing:.16em}.site-brand small{display:block;font:.55rem var(--sans);letter-spacing:.22em;color:#967537}.site-nav{display:flex;align-items:center;gap:1.7rem}.site-nav a{text-decoration:none;font-size:.83rem;font-weight:650}.site-nav .reserve-link{background:var(--green-900);color:white;padding:.7rem 1rem;border-radius:999px}.page-hero{background:radial-gradient(circle at 85% 10%,rgba(201,164,92,.22),transparent 30%),linear-gradient(135deg,var(--green-950),#0c3b2d);color:#fff;padding:clamp(64px,9vw,120px) clamp(22px,7vw,110px)}.page-hero .wrap{max-width:1180px;margin:auto}.page-hero h1{font:500 clamp(2.6rem,6vw,5rem)/1.02 var(--serif);max-width:850px;margin:.7rem 0 1rem}.page-hero p{max-width:660px;color:#dce7e2;font-size:1.05rem}.public-main{max-width:1220px;margin:auto;padding:clamp(40px,6vw,82px) clamp(20px,4vw,54px)}.site-footer{background:var(--green-950);color:#dce7e2;padding:40px clamp(20px,5vw,76px);display:flex;justify-content:space-between;gap:25px;align-items:center}.site-footer a{color:#fff;text-decoration:none}.panel{max-width:760px;margin:7vh auto;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:clamp(22px,4vw,42px)}.panel h1,.panel h2{font-family:var(--serif);color:var(--green-900)}label{display:grid;gap:.42rem;font-weight:700;color:#34473e}input,select,textarea{width:100%;border:1px solid #d7d2c6;border-radius:10px;padding:.84rem .9rem;background:#fff;color:var(--ink)}input:hover,select:hover,textarea:hover{border-color:#baa978}textarea{resize:vertical}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.field-full{grid-column:1/-1}.form-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-top:1.3rem}.reassurance{font-size:.82rem;color:var(--muted)}

/* Menu */
.menu-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) minmax(220px,1.6fr);gap:1rem;margin-bottom:2rem}.menu-categories{display:flex;gap:.65rem;overflow:auto;padding:.2rem 0 1.2rem;scrollbar-width:thin}.menu-categories button{white-space:nowrap;background:#fff;color:var(--green-900);border:1px solid var(--line)}.menu-categories button.active{background:var(--green-900);color:#fff;border-color:var(--green-900)}.menu-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}.menu-card{background:#fff;border:1px solid rgba(7,61,44,.09);border-radius:16px;overflow:hidden;box-shadow:0 10px 28px rgba(13,38,29,.07);transition:.25s ease}.menu-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.menu-card-image{aspect-ratio:4/3;background:linear-gradient(135deg,#e7ddc8,#f8f2e7);overflow:hidden}.menu-card-image img{width:100%;height:100%;object-fit:cover;transition:.45s ease}.menu-card:hover img{transform:scale(1.025)}.menu-card-body{padding:1.2rem}.menu-card small{color:#9b782f;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.menu-card h2{font:500 1.45rem var(--serif);margin:.45rem 0}.menu-card p{color:var(--muted);min-height:3.1em}.menu-card footer{display:flex;justify-content:space-between;align-items:center;margin-top:1rem}.menu-price{font:700 1.12rem var(--serif);color:var(--green-900)}

/* Event concierge */
.event-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(25px,5vw,74px);align-items:start}.event-story{position:sticky;top:28px}.event-story h2{font:500 clamp(2rem,4vw,3.6rem)/1.05 var(--serif);color:var(--green-900);margin:.7rem 0 1rem}.event-types{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-top:1.7rem}.event-type{background:#fff;border:1px solid var(--line);border-radius:14px;padding:1rem}.event-type b{display:block;color:var(--green-900)}.concierge-card{background:#fff;border:1px solid rgba(7,61,44,.1);border-radius:22px;padding:clamp(22px,4vw,42px);box-shadow:var(--shadow)}.concierge-card h2{font:500 2rem var(--serif);margin:.2rem 0}.form-section-title{grid-column:1/-1;padding-top:.6rem;color:#9b782f;font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;border-top:1px solid var(--line)}

/* Admin application */
button:disabled,.product:disabled{opacity:.48;cursor:not-allowed;transform:none}.cart-line{display:grid;grid-template-columns:1fr auto auto;gap:.7rem;align-items:center;padding:.65rem 0;border-bottom:1px solid var(--line)}.cart-line button{width:34px;height:34px;padding:0}
.admin-body{background:#f5f0e6}.admin-sidebar{position:fixed;inset:0 auto 0 0;width:258px;background:linear-gradient(180deg,#052f24,#06382a);color:#fff;z-index:30;padding:24px 18px;display:flex;flex-direction:column;box-shadow:10px 0 35px rgba(3,33,24,.12)}.admin-brand{display:flex;gap:.75rem;align-items:center;padding:0 8px 22px;text-decoration:none}.admin-brand>span{width:40px;height:40px;border:1px solid var(--gold);border-radius:12px;display:grid;place-items:center;color:var(--gold);font:700 1.55rem var(--serif)}.admin-brand strong{font:700 1.04rem var(--serif);letter-spacing:.15em}.admin-brand small{display:block;font:500 .55rem var(--sans);letter-spacing:.18em;color:#c9b784;margin-top:.18rem}.admin-nav{overflow:auto;margin-right:-5px;padding-right:5px}.admin-nav a{display:flex;align-items:center;gap:.75rem;color:#dce7e2;text-decoration:none;padding:.7rem .75rem;border-radius:9px;margin:.12rem 0;font-size:.83rem;font-weight:620}.admin-nav a:hover,.admin-nav a.active{background:rgba(255,255,255,.1);color:#fff}.admin-nav a.active{box-shadow:inset 3px 0 var(--gold)}.admin-nav i{width:20px;text-align:center;color:#d8bb72;font-style:normal}.admin-account{margin-top:auto;border-top:1px solid rgba(255,255,255,.13);padding:18px 7px 0;display:grid;grid-template-columns:38px 1fr 20px;gap:.65rem;align-items:center}.admin-account>span{width:36px;height:36px;border-radius:50%;background:var(--gold);color:var(--green-950);display:grid;place-items:center;font-weight:800}.admin-account strong,.admin-account small{display:block}.admin-account strong{font-size:.78rem}.admin-account small{font-size:.67rem;color:#a9beb5}.admin-account>a{text-decoration:none;color:#fff}.admin-shell{margin-left:258px;min-height:100vh;display:flex;flex-direction:column}.admin-topbar{height:76px;padding:0 clamp(22px,4vw,52px);display:flex;justify-content:space-between;align-items:center;background:rgba(255,255,255,.82);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.admin-topbar b{display:block;color:var(--green-900)}.admin-topbar a{text-decoration:none;color:var(--green-900);font-weight:700}.admin-main{padding:clamp(28px,4vw,52px);width:100%;max-width:1550px}.admin-main>h1{font:500 clamp(2rem,3vw,3rem)/1.1 var(--serif);color:var(--green-900);margin:0 0 1.4rem}.admin-main>h2{font-family:var(--serif);color:var(--green-900);margin-top:2rem}.admin-main>p{color:var(--muted)}.admin-footer{margin-top:auto;padding:18px clamp(22px,4vw,52px);display:flex;justify-content:space-between;color:var(--muted);font-size:.75rem;border-top:1px solid var(--line)}.sidebar-toggle{display:none}.stats,.grid,.products{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1rem}.stats article,.grid article{background:#fff;border:1px solid rgba(7,61,44,.09);border-radius:14px;padding:1.3rem;box-shadow:0 8px 25px rgba(13,38,29,.05)}.stats article small{color:var(--muted);font-weight:700}.stats article h2{font:500 2rem var(--serif);color:var(--green-900);margin:.35rem 0 0}.formrow,.admin-card{background:#fff;border:1px solid rgba(7,61,44,.09);border-radius:14px;padding:1.2rem;box-shadow:0 8px 25px rgba(13,38,29,.05)}.formrow{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem;align-items:end}.formrow input,.formrow select{margin:0}.table-wrap,.admin-main>table{width:100%;overflow:auto}.admin-main table{width:100%;background:#fff;border-collapse:separate;border-spacing:0;border:1px solid rgba(7,61,44,.09);border-radius:14px;margin-top:1rem;box-shadow:0 8px 25px rgba(13,38,29,.05);overflow:hidden}.admin-main th{font-size:.68rem;letter-spacing:.09em;text-transform:uppercase;color:#6b776f;background:#faf8f3}.admin-main td,.admin-main th{padding:.85rem 1rem;border-bottom:1px solid #ece7dd;text-align:left;vertical-align:middle}.admin-main tr:last-child td{border-bottom:0}.admin-main td form{margin:0}.admin-main td select{min-width:130px;padding:.5rem}.status{display:inline-flex;padding:.32rem .55rem;border-radius:999px;background:#e8f1ec;color:var(--green-800);font-size:.72rem;font-weight:800;text-transform:capitalize}.status.pending,.status.new{background:#fff2d8;color:#805d13}.status.cancelled,.status.void{background:#fae8e5;color:#963d35}.pos{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:1.2rem}.product{min-height:120px;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:14px;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;text-align:left}.product:hover{background:#fdfbf7;color:var(--ink);border-color:var(--gold)}.pos section{background:#fff;border-radius:16px;padding:1.3rem;box-shadow:var(--shadow)}

.login-page{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr;background:var(--green-950)}.login-art{padding:8vw;display:flex;flex-direction:column;justify-content:flex-end;color:#fff;background:radial-gradient(circle at 20% 15%,rgba(201,164,92,.25),transparent 28%),linear-gradient(145deg,#063b2d,#031e18)}.login-art h1{font:500 clamp(3rem,6vw,6rem)/.95 var(--serif);margin:.8rem 0}.login-art p{max-width:560px;color:#c7d8d0}.login-panel{display:grid;place-items:center;background:var(--cream);padding:25px}.login-card{width:min(460px,100%);background:#fff;border-radius:22px;padding:clamp(28px,5vw,50px);box-shadow:var(--shadow)}.login-card h2{font:500 2.2rem var(--serif);color:var(--green-900);margin:.4rem 0}.login-card form{display:grid;gap:1rem;margin-top:1.5rem}

@media(max-width:1000px){.menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.event-layout{grid-template-columns:1fr}.event-story{position:static}.site-nav a:not(.reserve-link){display:none}}@media(max-width:900px){.admin-sidebar{transform:translateX(-105%);transition:.25s ease}.sidebar-open .admin-sidebar{transform:none}.admin-shell{margin-left:0}.sidebar-toggle{position:fixed;z-index:40;left:14px;top:16px;display:flex;padding:.65rem .75rem;border-radius:10px}.sidebar-toggle span{width:16px;height:2px;background:#fff;display:block;margin:2px}.sidebar-toggle b{margin-left:.4rem}.admin-topbar{padding-left:105px}.pos{grid-template-columns:1fr}}@media(max-width:680px){.form-grid,.menu-toolbar{grid-template-columns:1fr}.menu-grid{grid-template-columns:1fr}.event-types{grid-template-columns:1fr}.site-header{height:70px}.site-brand strong{font-size:.9rem}.site-nav{gap:.5rem}.site-nav .reserve-link{font-size:.72rem}.site-footer{align-items:flex-start;flex-direction:column}.page-hero{padding-top:55px}.admin-main{padding:24px 14px}.admin-topbar>div{display:none}.admin-topbar{justify-content:flex-end}.admin-footer{flex-direction:column;gap:.25rem}.login-page{grid-template-columns:1fr}.login-art{display:none}.login-panel{min-height:100vh}.admin-main table{display:block;overflow-x:auto;white-space:nowrap}.stats{grid-template-columns:1fr 1fr}}

/* v2.58 authentic Damal brand system */
.site-brand-logo img{display:block;width:64px;height:64px;object-fit:contain;border-radius:10px}.site-footer-brand{display:flex;align-items:center;gap:14px}.site-footer-brand img{width:74px;height:74px;object-fit:contain;border-radius:12px}.site-footer-brand small{max-width:210px}.admin-brand-logo img{width:58px;height:58px;object-fit:contain;border-radius:12px}.admin-brand-logo strong{font:700 .68rem var(--sans);letter-spacing:.14em;color:#d8c899}.login-brand-logo{width:min(240px,55%);height:auto;border-radius:22px;box-shadow:0 18px 52px rgba(0,0,0,.18);margin-bottom:auto}.login-card-logo{display:block;width:132px;height:132px;object-fit:contain;border-radius:18px;margin:0 auto 22px}@media(max-width:680px){.site-brand-logo img{width:54px;height:54px}.site-footer-brand{align-items:flex-start}}

/* Confirmed operations repair: fit POS controls at narrow phone widths. */
.pos,.products,.cart-line,.admin-shell{min-width:0}.product strong,.cart-line span{overflow-wrap:anywhere}.cart-line{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center}
@media(max-width:560px){.products{grid-template-columns:repeat(2,minmax(0,1fr))}.product{padding:12px;min-height:110px;font-size:.9rem}.pos section{padding:16px}.admin-main{max-width:100vw}.admin-body input,.admin-body select,.admin-body textarea{font-size:16px}.admin-sidebar{max-width:calc(100vw - 60px)}}

/* large-reservation-confirmation-20261020 */.concierge-card .success{font-size:clamp(1.25rem,2vw,1.75rem);font-weight:800;line-height:1.35;padding:1.25rem 1.4rem;margin:1rem 0 1.25rem;box-shadow:0 10px 28px rgba(0,0,0,.12)}
