@import "https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,300;1,400;1,500;1,600;1,700&family=Dancing+Script:wght@400;500;600;700&display=swap";@import "https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,300;1,400;1,500;1,600;1,700&family=Dancing+Script:wght@400;500;600;700&display=swap";@import "https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.2/css/all.min.css";@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/playfair-display-vietnamese-600-normal-ICsRR-qJ.woff2)format("woff2"),url(/assets/playfair-display-vietnamese-600-normal-BPJkAZPN.woff)format("woff")}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/playfair-display-vietnamese-700-normal-CaKJSIny.woff2)format("woff2"),url(/assets/playfair-display-vietnamese-700-normal-Cr1rw0mr.woff)format("woff")}@font-face{font-family:Karla;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/karla-latin-ext-400-normal-DQe2ZdED.woff2)format("woff2"),url(/assets/karla-latin-ext-400-normal-CMxStcnq.woff)format("woff")}@font-face{font-family:Karla;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/karla-latin-ext-500-normal-BQGx_UZ6.woff2)format("woff2"),url(/assets/karla-latin-ext-500-normal-BR9CgtUN.woff)format("woff")}@font-face{font-family:Karla;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/karla-latin-ext-600-normal-CIPY_Mp5.woff2)format("woff2"),url(/assets/karla-latin-ext-600-normal-Cf-uwXr_.woff)format("woff")}@font-face{font-family:Karla;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/karla-latin-ext-700-normal-DnPH2EDB.woff2)format("woff2"),url(/assets/karla-latin-ext-700-normal-eTNnM7bB.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/manrope-vietnamese-500-normal-DCXiE_xi.woff2)format("woff2"),url(/assets/manrope-vietnamese-500-normal-DaZ8i3XM.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/manrope-vietnamese-700-normal-CUqMx5-1.woff2)format("woff2"),url(/assets/manrope-vietnamese-700-normal-pt65Fn2Z.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/manrope-vietnamese-800-normal-ClPWri-A.woff2)format("woff2"),url(/assets/manrope-vietnamese-800-normal-bvg7iBCV.woff)format("woff")}@font-face{font-family:Dancing Script;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/dancing-script-vietnamese-600-normal-B_5hiXq4.woff2)format("woff2"),url(/assets/dancing-script-vietnamese-600-normal-DmBNuN3D.woff)format("woff")}@font-face{font-family:Dancing Script;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/dancing-script-vietnamese-700-normal-DHSNEjs8.woff2)format("woff2"),url(/assets/dancing-script-vietnamese-700-normal-BxaLPXNn.woff)format("woff")}:root{--brand-ivory:#fffaf5;--brand-paper:#fff;--brand-chestnut:#6f3d2c;--brand-chestnut-dark:#4c291f;--brand-brass:#a47834;--brand-ink:#2f1d16;--brand-muted:#80685e;--brand-clay-line:#ead8cd;--brand-success:#2f7251;--brand-danger:#b13c32;--brand-font-display:"Playfair Display", Georgia, serif;--brand-font-body:"Karla", system-ui, sans-serif;--brand-font-utility:"Manrope", system-ui, sans-serif;--brand-radius-card:1rem;--brand-shadow-soft:0 18px 45px #4c291f1a}:root.brand-theme{--color-bg:var(--brand-ivory);--color-bg-subtle:#fff4ec;--color-bg-section:#fff7f1;--color-card:var(--brand-paper);--color-ink:var(--brand-ink);--color-muted:var(--brand-muted);--color-border:var(--brand-clay-line);--color-border-light:#f2e5dd;--color-primary:var(--brand-chestnut);--color-primary-hover:var(--brand-chestnut-dark);--color-primary-dark:var(--brand-chestnut-dark);--color-warning:var(--brand-brass);--font-display:var(--brand-font-display);--font-ui:var(--brand-font-body);--font-body:var(--brand-font-body);--font-utility:var(--brand-font-utility)}:where([data-money],.brand-money){font-family:var(--brand-font-utility);font-variant-numeric:tabular-nums lining-nums;letter-spacing:-.015em;white-space:nowrap}.brand-wordmark{color:var(--brand-ink);align-items:center;gap:.7rem;display:inline-flex}.brand-wordmark-monogram{background:var(--brand-chestnut);color:#fff;font:800 .82rem/1 var(--brand-font-utility);letter-spacing:.05em;border-radius:.8rem;justify-content:center;align-items:center;width:2.7rem;height:2.7rem;display:inline-flex}.brand-wordmark-copy{gap:.08rem;display:grid}.brand-wordmark-copy strong{font:700 1rem/1.15 var(--brand-font-display)}.brand-wordmark-copy small{color:var(--brand-muted);font:600 .68rem/1.2 var(--brand-font-utility);letter-spacing:.08em;text-transform:uppercase}.language-switcher{background:color-mix(in srgb, var(--brand-paper) 88%, transparent);border:1px solid var(--brand-clay-line);border-radius:999px;align-items:center;gap:.15rem;padding:.2rem;display:inline-flex}.language-switcher button{color:var(--brand-muted);cursor:pointer;font:800 .68rem/1 var(--brand-font-utility);letter-spacing:.06em;background:0 0;border:0;border-radius:999px;min-width:2.75rem;min-height:2.75rem;padding:.45rem .55rem}.language-switcher button[aria-pressed=true]{background:var(--brand-chestnut);color:#fff}.language-switcher button:focus-visible{outline:2px solid var(--brand-brass);outline-offset:2px}.language-toggle{background:var(--brand-chestnut);border:1px solid color-mix(in srgb, var(--brand-chestnut) 82%, #fff);color:#fff;cursor:pointer;font:800 .72rem/1 var(--brand-font-utility);letter-spacing:.08em;border-radius:999px;justify-content:center;align-items:center;min-width:2.75rem;min-height:2.75rem;padding:.55rem;transition:background-color .16s,box-shadow .16s,transform .16s;display:inline-flex;box-shadow:0 5px 14px #4c291f24}.language-toggle:hover{background:color-mix(in srgb, var(--brand-chestnut) 88%, var(--brand-brass));transform:translateY(-1px);box-shadow:0 7px 18px #4c291f33}.language-toggle:focus-visible{outline:2px solid var(--brand-brass);outline-offset:3px}@keyframes fade-in-up{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:none}}@keyframes slide-in-right{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:none}}@keyframes slide-in-left{0%{opacity:0;transform:translate(-24px)}to{opacity:1;transform:none}}@keyframes slide-up{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:none}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes pulse-soft{0%,to{opacity:1}50%{opacity:.5}}@keyframes toast-in{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:none}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes glow-pulse{0%,to{box-shadow:0 0 #005bac4d}50%{box-shadow:0 0 20px 4px #005bac26}}@keyframes hero-slide{0%{opacity:0;transform:scale(1.05)}8%{opacity:1;transform:scale(1)}25%{opacity:1;transform:scale(1)}33%{opacity:0;transform:scale(1.02)}to{opacity:0;transform:scale(1.05)}}@keyframes count-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes dot-typing{0%{opacity:.3}50%{opacity:1}to{opacity:.3}}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.scroll-reveal,.scroll-reveal-left,.scroll-reveal-right{opacity:1!important;transform:none!important}}:root{font-family:var(--font-ui);color:var(--color-ink);background:var(--color-bg);font-synthesis:none;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{background:var(--cmc-bg);min-width:320px;margin:0}button,input,select,textarea{font:inherit}:focus-visible{outline-offset:2px;outline:3px solid #08bcef73}.cmc-button{cursor:pointer;border:0;border-radius:12px;padding:.75rem 1rem;font-weight:700}.cmc-button:disabled{opacity:.6;cursor:not-allowed}.cmc-button--primary{color:#fff;background:var(--cmc-primary)}.cmc-button--primary:hover{background:var(--cmc-primary-hover)}.cmc-button--secondary{color:var(--cmc-primary);background:#e9f7fc}.cmc-button--danger{color:#fff;background:var(--cmc-danger)}.cmc-card{background:var(--cmc-card);border:1px solid var(--cmc-border);box-shadow:var(--cmc-shadow);border-radius:24px;padding:1.5rem}.cmc-state{border:1px solid var(--cmc-border);background:#fff;border-radius:20px;max-width:720px;margin:2rem auto;padding:1.5rem}.cmc-state p{color:var(--cmc-muted)}.cmc-state--error{border-color:#f2b8b5}.cmc-badge{border-radius:999px;padding:.3rem .65rem;font-size:.8rem;font-weight:800;display:inline-flex}.cmc-badge--neutral{background:#edf2f7}.cmc-badge--info{color:#00517a;background:#dff6fd}.cmc-badge--success{color:#166534;background:#dcfce7}.cmc-badge--warning{color:#92400e;background:#fef3c7}.cmc-badge--danger{color:#991b1b;background:#fee2e2}.cmc-operations-shell{grid-template-columns:260px minmax(0,1fr);min-height:100vh;display:grid}.cmc-sidebar{color:#fff;background:#08233e;flex-direction:column;gap:1.5rem;height:100vh;padding:1.25rem;display:flex;position:sticky;top:0}.cmc-brand{align-items:center;gap:.8rem;display:flex}.cmc-brand-mark{background:linear-gradient(135deg,var(--cmc-primary),var(--cmc-cyan));border-radius:16px;place-items:center;width:48px;height:48px;font-weight:900;display:grid}.cmc-brand strong,.cmc-brand small{display:block}.cmc-brand small,.cmc-user small{color:#a9c9dd}.cmc-sidebar nav{gap:.4rem;display:grid}.cmc-nav-link{color:#d5e9f5;border-radius:12px;padding:.8rem 1rem;text-decoration:none}.cmc-nav-link:hover,.cmc-nav-link.is-active{color:#fff;background:#08bcef2e}.cmc-user{border-top:1px solid #ffffff24;gap:.2rem;margin-top:auto;padding-top:1rem;display:grid}.cmc-user button{color:#fff;cursor:pointer;background:0 0;border:1px solid #ffffff4d;border-radius:10px;margin-top:.5rem;padding:.55rem}.cmc-portal-content{min-width:0;padding:1.5rem}.cmc-mobile-topbar{z-index:40;color:#fff;background:#08233e;justify-content:space-between;align-items:center;gap:1rem;padding:.7rem 1rem;display:none;position:sticky;top:0}.cmc-brand--compact{gap:.6rem}.cmc-brand--compact .cmc-brand-mark{border-radius:12px;width:38px;height:38px;font-size:.8rem}.cmc-brand--compact strong{font-size:.95rem}.cmc-nav-toggle{cursor:pointer;background:0 0;border:1px solid #ffffff4d;border-radius:12px;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;padding:11px;display:inline-flex}.cmc-nav-toggle span{width:100%;height:2px;transition:transform var(--duration-base) var(--ease-standard),opacity var(--duration-fast) var(--ease-standard);background:#fff;border-radius:2px;display:block}.cmc-nav-toggle[aria-expanded=true] span:first-child{transform:translateY(7px)rotate(45deg)}.cmc-nav-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.cmc-nav-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.cmc-drawer-overlay{z-index:45;cursor:pointer;animation:cmc-overlay-in var(--duration-base) var(--ease-standard) both;background:#08233e80;border:0;padding:0;display:none;position:fixed;inset:0}@keyframes cmc-overlay-in{0%{opacity:0}to{opacity:1}}.cmc-login-shell{background:radial-gradient(circle at top right,#08bcef33,transparent 35%),var(--cmc-bg);place-items:center;min-height:100vh;padding:1.5rem;display:grid}.cmc-login-card{width:min(440px,100%)}.cmc-eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--cmc-primary);margin:0;font-size:.75rem;font-weight:800}.cmc-login-card form{gap:1rem;margin-top:1.5rem;display:grid}.cmc-login-card label{gap:.4rem;font-weight:700;display:grid}.cmc-login-card input{border:1px solid #b8dbe9;border-radius:12px;width:100%;padding:.8rem}.cmc-form-error{color:var(--cmc-danger);margin:0}@media (width<=800px){:root{--cmc-topbar-h:68px}.cmc-operations-shell{grid-template-columns:1fr}.cmc-mobile-topbar{height:var(--cmc-topbar-h);display:flex}.cmc-drawer-overlay.is-open{display:block}.cmc-sidebar{z-index:50;width:min(82vw,300px);height:100vh;transition:transform var(--duration-base) var(--ease-emphasized);position:fixed;top:0;left:0;overflow-y:auto;transform:translate(-100%);box-shadow:0 24px 60px #08233e73}.cmc-sidebar.is-open{transform:translate(0)}.cmc-sidebar nav{grid-template-columns:1fr}.cmc-sidebar.is-open .cmc-nav-link{animation:fade-in-up var(--duration-base) var(--ease-decelerate) both}.cmc-sidebar.is-open nav>:nth-child(2){animation-delay:30ms}.cmc-sidebar.is-open nav>:nth-child(3){animation-delay:60ms}.cmc-sidebar.is-open nav>:nth-child(4){animation-delay:90ms}.cmc-sidebar.is-open nav>:nth-child(5){animation-delay:.12s}.cmc-sidebar.is-open nav>:nth-child(6){animation-delay:.15s}.cmc-user{margin-top:auto}.cmc-portal-content{padding:1rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.cmc-login-premium{align-items:center;width:min(460px,100%);display:grid}.cmc-form-section{flex-direction:column;gap:.75rem;display:flex}.cmc-form-section h2{color:var(--cmc-text);margin:0 0 .25rem;font-size:1.35rem}.cmc-login-hint{color:var(--cmc-muted);margin:0 0 .5rem;font-size:.875rem}.cmc-user .cmc-account-actions{gap:.4rem;display:grid}.cmc-user .cmc-account-trigger{color:#fff;cursor:pointer;font:inherit;background:0 0;border:1px solid #ffffff4d;border-radius:10px;margin-top:.5rem;padding:.55rem}.cmc-user .cmc-account-trigger:disabled{opacity:.6;cursor:not-allowed}.cmc-user .cmc-account-cancel{color:#a9c9dd;cursor:pointer;font:inherit;background:0 0;border:1px solid #ffffff2e;border-radius:10px;margin-top:0;padding:.55rem}.cmc-user .cmc-account-form{gap:.45rem;margin-top:.5rem;display:grid}.cmc-user .cmc-account-form input{color:#fff;width:100%;font:inherit;background:#ffffff14;border:1px solid #ffffff38;border-radius:10px;padding:.5rem}.cmc-user .cmc-account-form input::placeholder{color:#ffffff8c}.cmc-user .cmc-account-form-actions{gap:.4rem;display:flex}.cmc-user .cmc-account-form-actions .cmc-account-trigger{flex:1;margin-top:0}.cmc-user .cmc-account-note{margin:.25rem 0 0;font-size:.8rem}.cmc-user .cmc-account-note--success{color:#7ee0c8}.cmc-user .cmc-account-note--error{color:#ff9b9b}.cmc-visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.cmc-field{gap:var(--space-2);display:grid}.cmc-field-label{color:var(--color-ink);font-size:.9rem;font-weight:700}.cmc-field-req{color:var(--color-danger)}.cmc-field-hint{color:var(--color-muted);margin:0;font-size:.8rem}.cmc-field-error{color:var(--color-danger);margin:0;font-size:.8rem;font-weight:700}.cmc-input,.cmc-textarea{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-card);width:100%;color:var(--color-ink);transition:border-color var(--duration-fast) var(--ease-standard), box-shadow var(--duration-fast) var(--ease-standard);padding:.7rem .85rem}.cmc-textarea{resize:vertical;min-height:96px}.cmc-input::placeholder,.cmc-textarea::placeholder{color:var(--color-muted)}.cmc-input:focus-visible,.cmc-textarea:focus-visible{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #08bcef47}.cmc-field--invalid .cmc-input,.cmc-field--invalid .cmc-textarea{border-color:var(--color-danger)}.cmc-field--invalid .cmc-input:focus-visible,.cmc-field--invalid .cmc-textarea:focus-visible{box-shadow:0 0 0 3px #b4231838}.cmc-icon-button{border-radius:var(--radius-md);cursor:pointer;width:40px;height:40px;transition:background var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard), transform var(--duration-fast) var(--ease-standard);border:1px solid #0000;place-items:center;font-size:1.1rem;line-height:1;display:inline-grid}.cmc-icon-button:active{transform:scale(.94)}.cmc-icon-button:disabled{opacity:.55;cursor:not-allowed}.cmc-icon-button--ghost{color:var(--color-ink);border-color:var(--color-border);background:0 0}.cmc-icon-button--ghost:hover{background:var(--color-soft)}.cmc-icon-button--solid{background:var(--color-primary);color:#fff}.cmc-icon-button--solid:hover{background:var(--color-primary-hover)}.cmc-icon-button--danger{background:var(--color-danger-bg);color:var(--color-danger)}.cmc-icon-button--danger:hover{background:#fad9d6}.cmc-spinner{vertical-align:middle;display:inline-block;position:relative}.cmc-spinner-track{border:2.5px solid var(--color-border);border-top-color:var(--color-primary);border-radius:var(--radius-pill);width:100%;height:100%;animation:.7s linear infinite cmc-spin;display:block}@keyframes cmc-spin{to{transform:rotate(360deg)}}.cmc-skeleton{background:var(--color-soft);display:block}.cmc-empty-state{justify-items:center;gap:var(--space-3);padding:var(--space-7) var(--space-5);text-align:center;color:var(--color-muted);display:grid}.cmc-empty-state strong{color:var(--color-ink);font-size:1.05rem}.cmc-empty-state p{max-width:42ch;margin:0}.cmc-empty-state-icon{border-radius:var(--radius-pill);background:var(--color-soft);width:64px;height:64px;color:var(--color-primary);place-items:center;font-size:1.7rem;display:grid}.cmc-empty-state-action{margin-top:var(--space-2)}.cmc-timeline{gap:var(--space-4);margin:0;padding:0;list-style:none;display:grid}.cmc-timeline-item{gap:var(--space-3);grid-template-columns:18px minmax(0,1fr);display:grid;position:relative}.cmc-timeline-item:before{content:"";top:18px;left:8px;bottom:calc(-1 * var(--space-4));background:var(--color-border);width:2px;position:absolute}.cmc-timeline-item:last-child:before{display:none}.cmc-timeline-dot{border-radius:var(--radius-pill);background:var(--color-muted);width:16px;height:16px;box-shadow:0 0 0 4px var(--color-card);margin-top:2px}.cmc-timeline-item--info .cmc-timeline-dot{background:var(--color-cyan)}.cmc-timeline-item--success .cmc-timeline-dot{background:var(--color-success)}.cmc-timeline-item--warning .cmc-timeline-dot{background:var(--color-warning)}.cmc-timeline-item--danger .cmc-timeline-dot{background:var(--color-danger)}.cmc-timeline-content{gap:var(--space-1);display:grid}.cmc-timeline-row{justify-content:space-between;align-items:baseline;gap:var(--space-3);display:flex}.cmc-timeline-row strong{color:var(--color-ink)}.cmc-timeline-time{white-space:nowrap;color:var(--color-muted);font-size:.78rem}.cmc-timeline-sub{color:var(--color-muted);font-size:.85rem}.cmc-timeline-note{color:var(--color-ink);margin:0;font-size:.85rem}.cmc-modal-overlay{z-index:1000;padding:var(--space-5);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#08233e75;place-items:center;display:grid;position:fixed;inset:0}.cmc-modal{width:min(560px,100%);max-height:calc(100vh - 2 * var(--space-5));background:var(--color-card);border-radius:var(--radius-lg);box-shadow:var(--elevation-3);overflow:auto}.cmc-modal:focus-visible{outline:none}.cmc-modal-header{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-5) var(--space-5) var(--space-3);display:flex}.cmc-modal-header h2{color:var(--color-ink);margin:0;font-size:1.2rem}.cmc-modal-body{padding:0 var(--space-5) var(--space-5)}.cmc-modal-footer{justify-content:flex-end;gap:var(--space-3);padding:var(--space-3) var(--space-5) var(--space-5);display:flex}.cmc-toaster{right:var(--space-5);bottom:var(--space-5);z-index:1100;gap:var(--space-3);width:min(360px, calc(100vw - 2 * var(--space-5)));display:grid;position:fixed}.cmc-toast{justify-content:space-between;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border-left:4px solid var(--color-primary);background:var(--color-card);box-shadow:var(--elevation-2);color:var(--color-ink);font-weight:600;display:flex}.cmc-toast--info{border-left-color:var(--color-cyan)}.cmc-toast--success{border-left-color:var(--color-success)}.cmc-toast--warning{border-left-color:var(--color-warning)}.cmc-toast--danger{border-left-color:var(--color-danger)}.cmc-toast-close{padding:0 0 0 var(--space-2);color:var(--color-muted);cursor:pointer;background:0 0;border:0;font-size:1.1rem;line-height:1}.cmc-toast-close:hover{color:var(--color-ink)}.cmc-sidebar{background:#14212e;gap:1.1rem;padding:1.1rem .9rem}.cmc-sidebar-nav{scrollbar-width:thin;scrollbar-color:#fff3 transparent;flex:auto;gap:2px;min-height:0;margin:0 -4px;padding:0 4px;display:grid;overflow-y:auto}.cmc-nav-item{gap:2px;display:grid}.cmc-nav-section{letter-spacing:.08em;text-transform:uppercase;color:#ffffff6b;margin:14px 0 4px;padding:0 12px;font-size:.68rem;font-weight:700}.cmc-nav-item:first-child .cmc-nav-section{margin-top:2px}.cmc-nav-link{color:#ffffffb8;border-radius:10px;align-items:center;gap:10px;padding:.6rem .75rem;font-size:.9rem;font-weight:500;transition:background .2s,color .2s,transform .2s;display:flex;position:relative}.cmc-nav-link:hover{color:#fff;background:#ffffff12;transform:translate(4px)}.cmc-nav-link.is-active{color:#fff;background:linear-gradient(135deg, var(--color-primary,#005bac), #08bcef66);font-weight:600;transform:translate(0)}.cmc-nav-link.is-active:before{content:"";background:#fff;border-radius:0 3px 3px 0;width:3px;position:absolute;top:6px;bottom:6px;left:0}.cmc-nav-icon{opacity:.9;flex:none;display:inline-flex}.cmc-nav-link-label{flex:auto}.cmc-nav-badge{color:#fff;text-align:center;background:#ef4444;border-radius:999px;min-width:20px;margin-left:auto;padding:2px 6px;font-size:.72rem;font-weight:700}.cmc-portal-content--with-bottom-nav{padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}.cmc-user{flex:none;gap:.5rem;padding-top:.9rem}.cmc-user-identity{align-items:center;gap:10px;min-width:0;display:flex}.cmc-user-identity>div{min-width:0;display:grid}.cmc-user-identity span:not(.cmc-user-avatar){text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;font-weight:600;overflow:hidden}.cmc-user-avatar{background:linear-gradient(135deg, var(--cmc-primary,#005bac), var(--cmc-cyan,#08bcef));color:#fff;border-radius:12px;flex:none;place-items:center;width:36px;height:36px;font-size:.95rem;font-weight:800;transition:box-shadow .3s;display:grid;box-shadow:0 0 0 2px #08bcef4d}.cmc-user-avatar:hover{box-shadow:0 0 0 3px #08bcef80,0 0 16px #08bcef33}.cmc-user .cmc-logout-btn{color:#ff9b8d;cursor:pointer;background:#dc4c3c29;border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;margin-top:.35rem;padding:.6rem;font-weight:600;transition:background .15s,color .15s;display:inline-flex}.cmc-user .cmc-logout-btn:hover{color:#fff;background:#dc4c3c52}@media (width<=900px){.cmc-sidebar.is-open{display:flex}}:root{--color-primary:#005bac;--color-primary-hover:#0067c7;--color-primary-light:#e8f4fd;--color-primary-dark:#003d73;--color-primary-50:#f0f7ff;--color-primary-100:#dbeefe;--color-primary-200:#bfddfe;--color-primary-600:#005bac;--color-primary-700:#003d73;--color-cyan:#08bcef;--color-teal:#00a99d;--color-bg:#fff;--color-bg-subtle:#f0f7ff;--color-bg-section:#f8fbff;--color-card:#fff;--color-ink:#08233e;--color-muted:#5a7a96;--color-border:#d4e8f5;--color-border-light:#e8f1f8;--color-success:#16a34a;--color-success-bg:#dcfce7;--color-warning:#f59e0b;--color-warning-bg:#fef3c7;--color-danger:#dc2626;--color-danger-bg:#fee2e2;--color-info:#005bac;--color-info-bg:#dbeefe;--color-role-admin:#7c3aed;--color-role-staff:#0284c7;--color-role-kitchen:#ea580c;--color-role-customer:#059669;--gradient-hero:linear-gradient(135deg, #003d73d9 0%, #005bacbf 50%, #08bcef99 100%);--gradient-hero-soft:linear-gradient(135deg, #003d73 0%, #005bac 60%, #08bcef 100%);--gradient-cta:linear-gradient(135deg, #005bac 0%, #0067c7 100%);--gradient-card:linear-gradient(180deg, #005bac08 0%, #005bac00 100%);--gradient-section:linear-gradient(180deg, #fff 0%, #f0f7ff 100%);--glass-bg:#ffffffd9;--glass-border:#d4e8f599;--glass-blur:blur(12px);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:80px;--space-10:96px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-pill:999px;--elevation-1:0 1px 3px #005bac0f, 0 1px 2px #005bac0a;--elevation-2:0 4px 24px #005bac14;--elevation-3:0 12px 40px #005bac1f;--elevation-4:0 20px 60px #005bac29;--elevation-hover:0 12px 40px #005bac24;--elevation-nav:0 4px 20px #005bac0f;--font-display:"Be Vietnam Pro", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-ui:"Be Vietnam Pro", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-mono:"Cascadia Code", "Cascadia Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem;--text-6xl:3.75rem;--leading-tight:1.2;--leading-normal:1.5;--leading-relaxed:1.75;--duration-fast:.15s;--duration-base:.2s;--duration-slow:.3s;--duration-slower:.5s;--ease-standard:cubic-bezier(.2, 0, 0, 1);--ease-decelerate:cubic-bezier(0, 0, 0, 1);--ease-accelerate:cubic-bezier(.3, 0, 1, 1);--ease-emphasized:cubic-bezier(.2, 0, 0, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--z-base:1;--z-dropdown:10;--z-sticky:20;--z-nav:30;--z-modal-backdrop:40;--z-modal:50;--z-toast:60;--z-chat:70;--cmc-primary:var(--color-primary);--cmc-primary-hover:var(--color-primary-hover);--cmc-cyan:var(--color-cyan);--cmc-teal:var(--color-teal);--cmc-bg:var(--color-bg);--cmc-topbar-h:0px;--cmc-card:var(--color-card);--cmc-border:var(--color-border);--cmc-text:var(--color-ink);--cmc-muted:var(--color-muted);--cmc-danger:var(--color-danger);--cmc-shadow:var(--elevation-2);--ink:var(--color-ink);--muted:var(--color-muted);--line:var(--color-border);--panel:var(--color-card);--blue:var(--color-primary);--blue-soft:var(--color-primary-light);--teal:var(--color-primary-hover);--teal-dark:var(--color-primary-hover);--ready:var(--color-teal);--warn:var(--color-cyan);--shadow:var(--elevation-2);--cmc-page-bg:var(--color-bg);--cmc-heading:var(--color-ink);--cmc-text-muted:var(--color-muted);--cmc-accent-cyan:var(--color-cyan);--cmc-ai-teal:var(--color-teal);--cmc-card-shadow:var(--elevation-2);--cmc-cream:var(--color-bg);--cmc-soft:var(--color-primary-light);--cmc-brown:var(--color-ink);--cmc-line:var(--color-border);--cmc-ink:var(--color-ink);--role-admin:var(--color-role-admin);--role-staff:var(--color-role-staff);--role-kitchen:var(--color-role-kitchen);--role-customer:var(--color-role-customer)}.anim-fade-in-up{animation:fade-in-up var(--duration-slow) var(--ease-decelerate) both}.anim-fade-in{animation:fade-in var(--duration-base) var(--ease-decelerate) both}.anim-slide-in{animation:slide-in-right var(--duration-base) var(--ease-decelerate) both}.anim-slide-up{animation:slide-up var(--duration-slow) var(--ease-decelerate) both}.anim-shimmer{background-image:linear-gradient(90deg, var(--color-primary-light) 25%, #fff 37%, var(--color-primary-light) 63%);background-size:200% 100%;animation:1.4s ease-in-out infinite shimmer}.anim-pulse{animation:pulse-soft 1.6s var(--ease-standard) infinite}.anim-toast-in{animation:toast-in var(--duration-slow) var(--ease-emphasized) both}.anim-float{animation:float 3s var(--ease-standard) infinite}.anim-glow{animation:glow-pulse 2s var(--ease-standard) infinite}.anim-spin{animation:1s linear infinite spin}.anim-delay-1{animation-delay:.1s}.anim-delay-2{animation-delay:.2s}.anim-delay-3{animation-delay:.3s}.anim-delay-4{animation-delay:.4s}.anim-delay-5{animation-delay:.5s}.scroll-reveal{opacity:0;transition:opacity var(--duration-slower) var(--ease-decelerate), transform var(--duration-slower) var(--ease-decelerate);transform:translateY(24px)}.scroll-reveal.visible{opacity:1;transform:none}.scroll-reveal-left{opacity:0;transition:opacity var(--duration-slower) var(--ease-decelerate), transform var(--duration-slower) var(--ease-decelerate);transform:translate(-32px)}.scroll-reveal-left.visible{opacity:1;transform:none}.scroll-reveal-right{opacity:0;transition:opacity var(--duration-slower) var(--ease-decelerate), transform var(--duration-slower) var(--ease-decelerate);transform:translate(32px)}.scroll-reveal-right.visible{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.scroll-reveal,.scroll-reveal-left,.scroll-reveal-right{opacity:1!important;transform:none!important}}:root{color:var(--color-ink);background:var(--color-bg);font-family:var(--font-ui);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}a{color:inherit;text-decoration:none}button,input{font:inherit}.app-shell{grid-template-columns:250px minmax(0,1fr);min-height:100vh;display:grid}.customer-app-shell{min-height:100vh;color:var(--color-ink);background:radial-gradient(circle at 18% 0,#08bcef1f,#0000 28%),linear-gradient(#f4f8fb 0%,#eef6fb 100%);padding:100px clamp(16px,4vw,72px) 28px}.customer-app-shell:has(.page-shell-chat){background:radial-gradient(circle at 18% 0,#6e453b0f,#0000 28%),linear-gradient(#fdf8f4 0%,#f8f0e8 100%)}.customer-app-shell:has(.cmc-customer-page){background:linear-gradient(#fdf8f0 0%,#fffbf5 50%,#fff9f0 100%);padding-top:70px}.landing-shell{background:var(--color-bg);min-height:100vh;color:var(--color-ink)}.cmc-nav-link{align-items:center;gap:10px;display:flex}.cmc-nav-icon{opacity:.7;flex-shrink:0;display:inline-flex}.cmc-nav-link.is-active .cmc-nav-icon{opacity:1}.skip-link{z-index:100;color:#003f7d;background:#fff;padding:10px 14px;font-weight:800;position:fixed;top:8px;left:8px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.customer-topbar{z-index:20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);width:min(100%,1520px);animation:fade-in-up var(--duration-slow) var(--ease-decelerate) both;background:#fffffff5;border:1px solid #cfeaf5eb;border-bottom:0;border-radius:24px 24px 0 0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:22px;margin:0 auto;padding:16px 28px 12px;display:grid;position:relative;top:0;box-shadow:0 18px 48px #005bac14}.customer-brand{grid-template-columns:58px auto;align-items:center;gap:10px;min-width:max-content;display:inline-grid}.customer-brand-logo,.brand-logo{object-fit:contain;width:54px;height:54px;box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.customer-brand strong,.customer-brand small{line-height:1.05;display:block}.customer-brand strong{color:#08233e;letter-spacing:0;font-size:23px}.customer-brand small{color:var(--cmc-muted);letter-spacing:0;text-transform:none;margin-top:3px;font-size:14px;font-weight:900}.customer-nav{scrollbar-width:thin;justify-content:end;gap:34px;min-width:0;padding:3px;display:flex;overflow-x:auto}.customer-nav a{color:#08233e;white-space:nowrap;flex:none;padding:10px 0 8px;font-size:15px;font-weight:700;position:relative}.customer-nav a:after{background:var(--color-primary-hover);content:"";height:2px;transition:transform .18s;position:absolute;bottom:2px;left:0;right:0;transform:scaleX(0)}.customer-nav a:hover,.customer-nav a.active{color:var(--color-primary-hover)}.customer-nav a:hover:after,.customer-nav a.active:after{transform:scaleX(1)}.customer-menu-toggle{border:1px solid var(--cmc-line);background:#fff;border-radius:8px;width:46px;height:46px;padding:11px;display:none}.customer-menu-toggle span{background:var(--cmc-brown);width:100%;height:2px;transition:transform var(--duration-base) var(--ease-standard), opacity var(--duration-fast) var(--ease-standard);margin:4px 0;display:block}.customer-menu-toggle[aria-expanded=true] span:first-child{transform:translateY(6px)rotate(45deg)}.customer-menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.customer-menu-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-6px)rotate(-45deg)}.customer-login-link{border:1px solid var(--color-primary);color:#fff;background:#005bac;border-radius:16px;justify-content:center;align-items:center;min-width:max-content;padding:14px 24px;font-size:16px;font-weight:900;display:inline-flex}.customer-content{width:min(100%,1520px);margin:0 auto;padding:0 0 22px}.landing-shell{background:#fff;padding:0}.landing-shell .customer-topbar{border:0;border-radius:0;width:min(100%,1440px);min-height:78px;padding:10px clamp(28px,8vw,112px);position:sticky;top:0;box-shadow:0 1px #08233e1a}.landing-shell .customer-content{width:100%;padding:0}.landing-shell .customer-brand{grid-template-columns:46px auto}.landing-shell .customer-brand-logo{width:44px;height:44px}.landing-shell .customer-brand strong{font-size:18px}.landing-shell .customer-brand small{font-size:11px;font-weight:700}.customer-topbar :is(a,button):focus-visible{outline:3px solid var(--cmc-accent-cyan);outline-offset:4px}.sidebar{color:#fff;background:#08233e;flex-direction:column;gap:28px;height:100vh;padding:22px 16px;display:flex;position:sticky;top:0}.brand{grid-template-columns:36px 1fr;align-items:center;column-gap:10px;display:grid}.brand-logo{border-radius:24px;grid-row:span 2;width:36px;height:36px}.brand .eyebrow,.brand h1{grid-column:2}.sidebar h1{margin:1px 0 0;font-size:18px;line-height:1.05}.eyebrow{color:var(--teal);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:12px;font-weight:900}.sidebar .eyebrow{color:#cfeaf5}.nav-groups,.nav-links{flex-direction:column;gap:10px;display:flex}.nav-group{flex-direction:column;gap:8px;display:flex}.nav-group h2{color:#667a91;text-transform:uppercase;margin:10px 10px 0;font-size:12px}.nav-link{color:#f2fafd;border-radius:8px;padding:11px 12px;font-size:14px;font-weight:800}.nav-link:hover,.nav-link.active{color:#fff;background:#005bac}.content{min-width:0;padding:38px 44px}.page-shell{flex-direction:column;gap:18px;max-width:1280px;display:flex}.page-heading h2{color:var(--ink);margin:6px 0;font-size:clamp(28px,4vw,46px);line-height:1.04}.description{max-width:720px;color:var(--muted);margin:0;font-size:17px;line-height:1.65}.page-body{flex-direction:column;gap:18px;display:flex}.stat-grid,.panel-grid,.kanban-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;display:grid}.stat-card,.feature-panel,.order-card,.table-shell,.login-card,.qr-card,.kanban-column,.kitchen-lane{border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow);border-radius:22px}.stat-card{padding:16px}.stat-card p,.panel-kicker{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin:0 0 10px;font-size:12px;font-weight:900}.stat-card strong{color:var(--ink);font-size:26px;line-height:1;display:block}.stat-card span,.feature-panel p,.menu-item p,.ticket-card p,.kitchen-ticket p,.qr-card p{color:var(--muted);margin:8px 0 0;font-size:14px;line-height:1.5}.action-row{flex-wrap:wrap;gap:12px;display:flex}.button{color:var(--ink);background:#fff;border:1px solid #cfeaf5;border-radius:16px;justify-content:center;align-items:center;padding:12px 16px;font-weight:900;display:inline-flex}.button.primary{border-color:var(--teal);background:var(--teal);color:#fff}.feature-panel,.kanban-column,.kitchen-lane{padding:18px}.feature-panel h3,.kanban-column h3,.kitchen-lane h3,.qr-card h3,.menu-item h3,.timeline-step h3{color:var(--ink);margin:0;font-size:16px}.search-shell{border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:8px;padding:14px 16px}.chip-row{flex-wrap:wrap;gap:8px;display:flex}.chip,.mini-badge{width:max-content;color:var(--ink);background:#fff;border-radius:999px;align-items:center;padding:7px 13px;font-size:13px;font-weight:800;display:inline-flex}.chip{border:1px solid var(--line)}.chip.active,.mini-badge.placed{background:var(--blue);color:#fff}.mini-badge{padding:4px 10px}.mini-badge.ready{color:var(--ready);background:#f2fafd}.mini-badge.preparing{color:var(--warn);background:#eaf7fc}.mini-badge.muted,.mini-badge.pending{color:var(--muted);background:#eaf7fc}.menu-list{flex-direction:column;gap:10px;display:flex}.menu-item{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:68px 1fr auto;align-items:center;gap:14px;padding:12px;display:grid}.item-thumb,.qr-preview{background:#eaf7fc;border-radius:8px;place-items:center;display:grid}.item-thumb{width:68px;height:68px}.item-thumb:after{background:var(--blue);content:"";opacity:.45;border-radius:7px;width:28px;height:28px}.qr-card{grid-template-columns:110px minmax(0,1fr);align-items:center;gap:18px;padding:18px;display:grid}.qr-preview{width:110px;height:110px;box-shadow:inset 0 0 0 1px var(--line);background:linear-gradient(90deg,#08233e 12px,#0000 12px) 0 0/24px 24px,linear-gradient(#08233e 12px,#0000 12px) 0 0/24px 24px,#fff;border:8px solid #fff}.qr-preview span{background:var(--blue);color:#fff;border-radius:999px;padding:7px 9px;font-weight:900}.order-card{overflow:hidden}.order-line,.order-total{border-bottom:1px solid var(--line);justify-content:space-between;gap:18px;padding:16px 18px;display:flex}.order-total{background:#f2fafd;border-bottom:0}.timeline{gap:12px;display:grid}.timeline-step{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:38px 1fr;align-items:center;gap:12px;padding:14px;display:grid}.timeline-step span{background:var(--blue-soft);width:38px;height:38px;color:var(--blue);border-radius:999px;place-items:center;font-weight:900;display:grid}.chat-shell{flex-direction:column;gap:10px;max-width:680px;display:flex}.message{max-width:80%;color:var(--ink);box-shadow:var(--shadow);background:#fff;border-radius:8px;padding:12px 14px}.message.customer{background:var(--blue);color:#fff;align-self:flex-end}.login-card{gap:14px;max-width:420px;padding:18px;display:grid}.login-card label{color:var(--ink);gap:7px;font-weight:800;display:grid}.login-card input{border:1px solid var(--line);border-radius:8px;padding:12px}.auth-helper,.auth-error,.auth-role-hints{margin:0;font-size:.92rem;line-height:1.5}.auth-helper{color:var(--muted)}.auth-error{color:#9f1239;background:#fff1f2;border:1px solid #fecaca;border-radius:8px;padding:10px 12px}.auth-role-hints{color:var(--muted);gap:4px;display:grid}.table-shell{overflow:hidden}.table-row{border-bottom:1px solid var(--line);grid-template-columns:1fr .7fr .8fr .6fr;align-items:center;gap:12px;padding:14px 16px;display:grid}.table-row:last-child{border-bottom:0}.table-head{color:var(--muted);text-transform:uppercase;background:#eaf7fc;font-size:12px;font-weight:900}.table-grid{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px;display:grid}.table-tile{border:1px solid var(--line);background:#fff;border-radius:8px;padding:16px}.table-tile span{color:var(--muted);font-size:13px;font-weight:900}.table-tile strong{margin-top:18px;display:block}.ticket-card,.kitchen-ticket{border:1px solid var(--line);background:#fff;border-radius:8px;padding:12px}.kitchen-board{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.kitchen-lane{background:#08233e;border-color:#cfeaf5;flex-direction:column;gap:10px;display:flex}.kitchen-lane h3,.kitchen-ticket strong{color:#fff}.kitchen-ticket{background:#08233e;border-color:#cfeaf5}.operations-shell{background:radial-gradient(circle at 12% 8%,#005bac14,#0000 28%),linear-gradient(#f2fafd 0%,#eaf7fc 100%)}.operations-shell .sidebar{background:radial-gradient(circle at 12% 10%,#ffe8d71f,#0000 32%),linear-gradient(#08233e 0% 100%);box-shadow:16px 0 42px #005bac14}.operations-shell .brand-mark{background:linear-gradient(135deg,#005bac 0%,#08bcef 100%);box-shadow:0 10px 24px #005bac2e}.operations-shell .sidebar .eyebrow,.operations-shell .nav-group h2{color:#cfeaf5}.operations-shell .nav-link{color:#f2fafd}.operations-shell .nav-link:hover,.operations-shell .nav-link.active{color:#fff;background:#ffe8d724}.operations-shell .content{background:radial-gradient(circle at 88% 0,#005bac14,#0000 26%),0 0}.operations-shell .page-shell{width:min(100%,1180px)}.operations-shell .page-heading{border:1px solid var(--cmc-line);box-shadow:var(--shadow);background:radial-gradient(circle at 92% 20%,#005bac14,#0000 24%),linear-gradient(135deg,#f2fafd 0% 100%);border-radius:24px;padding:18px}.operations-shell .page-heading h2{color:#08233e;font-size:clamp(28px,3.4vw,44px)}.operations-shell .description{color:var(--cmc-muted)}.operations-shell .stat-card,.operations-shell .feature-panel,.operations-shell .order-card,.operations-shell .table-shell,.operations-shell .login-card,.operations-shell .qr-card,.operations-shell .kanban-column,.operations-shell .table-tile,.operations-shell .ticket-card{border-color:var(--cmc-line);box-shadow:var(--shadow);background:#ffffffe6}.operations-shell .stat-card p,.operations-shell .panel-kicker{color:var(--color-primary-hover)}.operations-shell .stat-card strong,.operations-shell .feature-panel h3,.operations-shell .kanban-column h3,.operations-shell .table-tile strong,.operations-shell .ticket-card strong{color:#08233e}.operations-shell .table-head,.operations-shell .order-total{color:var(--color-primary-hover);background:#eaf7fc}.operations-shell .button.primary{border-color:var(--color-primary);background:var(--color-primary);color:#fff;box-shadow:0 14px 30px #005bac2e}.auth-sidebar-card{border:1px solid var(--cmc-line);background:#ffffffd1;border-radius:8px;gap:6px;margin:18px;padding:14px;display:grid}.auth-sidebar-card span,.auth-sidebar-card small{color:var(--cmc-muted)}.auth-sidebar-card strong{color:var(--cmc-brown)}.auth-sidebar-card button{border:1px solid var(--cmc-line);color:var(--cmc-brown);background:#fff;border-radius:999px;justify-self:start;padding:8px 12px;font-weight:800}.operations-shell .login-card input{border-color:var(--cmc-line);color:var(--cmc-brown);background:#f2fafd}.operations-shell .mini-badge.placed,.operations-shell .chip.active{background:var(--color-primary)}.operations-shell .kitchen-lane{background:radial-gradient(circle at 92% 8%,#005bac1f,#0000 26%),#08233e;border-color:#005bac}.operations-shell .kitchen-ticket{background:#f2fafd14;border-color:#ffe8d72e}.operations-shell .kitchen-ticket p{color:#cfeaf5}.operations-shell .message.customer{background:var(--color-primary)}.operations-shell .message.assistant{border:1px solid var(--cmc-line)}.admin-workspace{gap:16px;display:grid}.admin-toolbar,.admin-panel,.admin-state-panel{border:1px solid var(--cmc-line);box-shadow:var(--shadow);background:#ffffffeb;border-radius:24px}.admin-toolbar{justify-content:space-between;align-items:center;gap:16px;padding:18px;display:flex}.admin-toolbar h3,.admin-toolbar p,.admin-panel h3,.admin-panel h4,.admin-panel p{margin:0}.admin-toolbar h3,.admin-panel h3{color:#08233e;font-size:22px}.admin-toolbar p,.admin-panel p,.admin-state-panel p,.admin-detail-grid dt,.admin-order-card small{color:var(--cmc-muted)}.admin-category-strip{scrollbar-width:thin;gap:9px;padding-bottom:3px;display:flex;overflow-x:auto}.admin-chip{border:1px solid var(--cmc-line);color:var(--cmc-muted);cursor:pointer;background:#fff;border-radius:999px;flex:none;padding:10px 14px;font-weight:900}.admin-chip.active{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.admin-split-layout{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:16px;display:grid}.admin-split-layout.orders{grid-template-columns:minmax(320px,.75fr) minmax(0,1.25fr)}.admin-panel{gap:14px;padding:18px;display:grid}.admin-panel-heading,.admin-detail-heading,.admin-row-actions,.admin-action-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.admin-menu-table,.admin-order-list,.admin-order-items,.admin-form,.admin-category-summary{gap:10px;display:grid}.admin-menu-row{border:1px solid var(--cmc-line);background:#f2fafd;border-radius:22px;grid-template-columns:86px minmax(0,1fr) minmax(150px,auto);align-items:center;gap:14px;padding:12px;display:grid}.admin-menu-row img{object-fit:cover;border-radius:20px;width:86px;height:74px}.admin-menu-row h4{color:#08233e;font-size:17px}.admin-tag-row{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.admin-tag-row span{color:var(--cmc-muted);background:#eaf7fc;border-radius:999px;padding:5px 8px;font-size:12px;font-weight:800}.admin-row-actions{flex-direction:column;align-items:end}.admin-row-actions button,.admin-order-card{border:1px solid var(--cmc-line);color:var(--cmc-brown);cursor:pointer;background:#fff;border-radius:999px;font-weight:900}.admin-row-actions button{padding:8px 11px}.admin-status{width:max-content;color:var(--cmc-muted);background:#eaf7fc;border-radius:999px;align-items:center;padding:6px 10px;font-size:12px;font-weight:900;display:inline-flex}.admin-status-available,.admin-status-ready,.admin-status-paid{color:var(--ready);background:#f2fafd}.admin-status-unavailable,.admin-status-pending{color:var(--cmc-muted);background:#eaf7fc}.admin-status-placed{color:var(--color-primary-hover);background:#eaf7fc}.admin-status-preparing{color:var(--warn);background:#eaf7fc}.admin-status-confirmed,.admin-status-served,.admin-status-delivered,.admin-status-completed,.admin-status-serving{color:var(--ready);background:#f2fafd}.admin-status-cancelled,.admin-status-cleaning{color:#005bac;background:#eaf7fc}.admin-status-refunded{color:#b42318;background:#fbeae8}.admin-toolbar-metrics{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.admin-toolbar-metrics span,.ops-health-row span{border:1px solid var(--cmc-line);color:var(--color-primary-hover);white-space:nowrap;background:#f2fafd;border-radius:999px;padding:8px 11px;font-size:12px;font-weight:900}.admin-helper-note{border-top:1px solid var(--cmc-line);color:var(--cmc-muted);padding-top:12px;font-size:13px;line-height:1.55}.ops-dashboard-grid,.staff-workspace{gap:16px;display:grid}.ops-dashboard-grid{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr)}.ops-hero-panel,.ops-panel,.qr-table-card,.staff-lane{border:1px solid var(--cmc-line);box-shadow:var(--shadow);background:#ffffffeb;border-radius:24px}.ops-hero-panel,.ops-panel{padding:16px}.ops-hero-panel{background:radial-gradient(circle at 92% 12%,#005bac14,#0000 28%),linear-gradient(135deg,#f2fafd 0%,#eaf7fc 100%);align-content:space-between;gap:18px;display:grid}.ops-hero-panel h3,.ops-hero-panel p,.ops-panel h3,.ops-panel p,.staff-lane h3,.staff-lane p{margin:0}.ops-hero-panel h3{color:#08233e;max-width:520px;font-size:clamp(24px,3vw,36px);line-height:1.05}.ops-hero-panel p,.ops-feature-card p,.ops-checklist,.staff-ticket p,.staff-ticket small,.qr-meta dt,.qr-table-card code{color:var(--cmc-muted)}.ops-health-row,.ops-feature-list{flex-wrap:wrap;gap:8px;display:flex}.ops-feature-card{border:1px solid var(--cmc-line);background:#f2fafd;border-radius:20px;flex:180px;padding:13px}.ops-feature-card span,.staff-ticket-meta span{color:var(--color-primary-hover);letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:900}.ops-feature-card strong{color:#08233e;margin-top:7px;font-size:17px;display:block}.ops-checklist{gap:10px;margin:0;padding-left:22px;line-height:1.55;display:grid}.ops-order-table{box-shadow:none}.qr-management-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;display:grid}.qr-table-card{grid-template-columns:124px minmax(0,1fr);gap:16px;padding:16px;display:grid}.qr-preview-block{width:124px;min-height:124px;box-shadow:inset 0 0 0 1px var(--cmc-line), 0 14px 26px #005bac14;background:linear-gradient(90deg,#08233e 12px,#0000 12px) 0 0/24px 24px,linear-gradient(#08233e 12px,#0000 12px) 0 0/24px 24px,#f2fafd;border:10px solid #fff;border-radius:24px;place-items:center;display:grid;position:relative}.qr-preview-block span{background:var(--color-primary);color:#fff;border-radius:999px;padding:7px 10px;font-weight:900}.qr-table-content{gap:12px;min-width:0;display:grid}.qr-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;display:grid}.qr-meta div{border:1px solid var(--cmc-line);background:#f2fafd;border-radius:20px;padding:10px}.qr-meta dt,.qr-meta dd{margin:0}.qr-meta dd{color:#08233e;font-weight:900}.qr-table-card code{border:1px solid var(--cmc-line);text-overflow:ellipsis;white-space:nowrap;background:#f2fafd;border-radius:20px;padding:10px;display:block;overflow:hidden}.staff-board{grid-template-columns:repeat(4,minmax(210px,1fr));gap:14px;display:grid}.staff-lane{animation:fade-in-up var(--duration-base) var(--ease-decelerate) both;flex-direction:column;gap:12px;padding:14px;display:flex}.staff-lane:nth-child(2){animation-delay:50ms}.staff-lane:nth-child(3){animation-delay:.1s}.staff-lane:nth-child(4){animation-delay:.15s}.staff-lane .realtime-lane-heading{align-items:flex-start;margin-bottom:0}.staff-ticket{border:1px solid var(--cmc-line);animation:fade-in-up var(--duration-base) var(--ease-decelerate) both;background:#f2fafd;border-radius:20px;gap:12px;padding:13px;display:grid}.staff-ticket-meta{gap:3px;display:grid}.staff-ticket-meta strong{color:#08233e}.staff-ticket ul{gap:7px;margin:0;padding:0;list-style:none;display:grid}.staff-ticket li{color:var(--cmc-brown);justify-content:space-between;gap:12px;display:flex}.staff-action-row{flex-wrap:wrap;gap:8px;display:flex}.staff-action-row .button{flex:auto;min-height:40px;padding:9px 11px}.staff-payment-group{gap:12px;display:grid}.staff-payment-group+.staff-payment-group{margin-top:22px}.staff-section-title{color:#08233e;margin:0;font-size:15px}.staff-refund-confirm{background:#fdf3f2;border:1px solid #f2c5bf;border-radius:16px;gap:8px;padding:12px;display:grid}.staff-refund-confirm label{color:var(--cmc-brown);gap:6px;font-size:13px;font-weight:800;display:grid}.staff-refund-confirm input{border:1px solid var(--cmc-line);width:100%;min-height:40px;color:var(--cmc-ink);background:#fff;border-radius:12px;padding:8px 11px}.staff-refund-confirm input:focus{border-color:#b42318;outline:3px solid #b4231829}.staff-refund-warning{color:#b42318;margin:0;font-size:12px;font-weight:700}.admin-form label,.admin-check-row{color:var(--cmc-brown);gap:7px;font-weight:900;display:grid}.admin-form input,.admin-form select,.admin-form textarea{border:1px solid var(--cmc-line);width:100%;color:var(--cmc-brown);outline-color:var(--color-primary);background:#f2fafd;border-radius:20px;padding:11px 12px}.admin-form textarea{resize:vertical;min-height:92px}.admin-check-row{grid-template-columns:auto 1fr;align-items:center}.admin-category-summary{border-top:1px solid var(--cmc-line);padding-top:14px}.admin-category-summary div,.admin-detail-grid div,.admin-order-items article{justify-content:space-between;gap:12px;display:flex}.admin-category-summary span,.admin-detail-grid dd{color:var(--color-primary-hover);font-weight:900}.admin-order-card{text-align:left;border-radius:22px;grid-template-columns:.8fr 1fr auto auto;align-items:center;gap:8px 12px;padding:13px;display:grid}.admin-order-card.active{border-color:var(--color-primary);background:#eaf7fc}.admin-order-card span,.admin-order-card b{color:var(--color-primary-hover)}.admin-order-card small{grid-column:1/3}.admin-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.admin-detail-grid div,.admin-order-items article,.admin-state-panel{border:1px solid var(--cmc-line);background:#f2fafd;border-radius:20px;padding:12px}.admin-detail-grid dt,.admin-detail-grid dd{margin:0}.admin-order-items article{display:grid}.admin-order-items article div{justify-content:space-between;gap:12px;display:flex}@media (width<=860px){.customer-topbar{grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:12px 14px 10px}.landing-shell .customer-topbar{padding:10px 18px}.customer-menu-toggle{display:block}.customer-nav{z-index:30;background:#fff;border-radius:0 0 18px 18px;flex-direction:column;grid-column:auto;justify-content:flex-start;gap:0;margin:0;padding:8px 18px 14px;display:none;position:absolute;top:calc(100% + 1px);left:0;right:0;overflow:visible;box-shadow:0 22px 40px #003f7d24}.customer-nav.open{animation:fade-in-up var(--duration-base) var(--ease-decelerate) both;display:flex}.customer-nav a{border-bottom:1px solid #e5f0f5;align-items:center;min-height:48px;padding:4px;display:flex}.customer-nav a:last-child{border-bottom:0}.customer-nav a:after{display:none}.landing-shell .customer-content{padding:0}.customer-content{padding:18px 14px 42px}.app-shell{grid-template-columns:1fr;align-content:start}.sidebar{gap:14px;height:auto;padding:18px 20px;overflow:hidden}.brand{grid-template-columns:34px 1fr}.brand-mark{width:34px;height:34px}.sidebar h1{font-size:20px}.nav-groups{scroll-snap-type:x proximity;scrollbar-width:thin;flex-direction:row;gap:10px;width:100%;padding-bottom:6px;display:flex;overflow-x:auto}.nav-group{flex-direction:row;flex:none;gap:10px}.nav-group h2{display:none}.nav-links{flex-direction:row;gap:10px}.nav-link{scroll-snap-align:start;white-space:nowrap;flex:none}.content{padding:26px 20px 34px}.page-heading h2{font-size:36px}.kitchen-board,.menu-item,.qr-card,.table-row{grid-template-columns:1fr}.item-thumb{display:none}}.admin-table-qr-workspace{--table-qr-navy:#08233e;--table-qr-blue:#005bac;--table-qr-cyan:#08bcef;--table-qr-paper:#f5f8f8;--table-qr-line:#d6e1e5;--table-qr-jade:#167864;--table-qr-amber:#b66716;gap:22px;font-family:Manrope,ui-sans-serif,system-ui,sans-serif;display:grid}.table-qr-command{color:#fff;background:linear-gradient(90deg,#08bcef14 1px,#0000 1px) 0 0/54px 100%,linear-gradient(135deg,#08233e 0%,#0a3456 68%,#075185 100%);border:1px solid #154a73;border-radius:28px;grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);align-items:end;gap:clamp(30px,5vw,72px);padding:clamp(28px,4vw,52px);display:grid;position:relative;overflow:hidden;box-shadow:0 24px 54px #08233e33}.table-qr-command:after{content:"";pointer-events:none;border:56px solid #08bcef14;border-radius:50%;width:310px;height:310px;position:absolute;top:-112px;right:-84px}.table-qr-command-copy,.table-qr-command-stats{z-index:1;position:relative}.table-qr-kicker{color:var(--table-qr-blue);letter-spacing:.14em;text-transform:uppercase;font-size:11px;font-weight:700}.table-qr-command .table-qr-kicker{color:#7ee2fa}.table-qr-command h3,.table-qr-command p,.table-qr-sidebar h3,.table-qr-sidebar p,.table-zone h3,.table-copy-feedback{margin:0}.table-qr-command h3{color:#fff;letter-spacing:-.04em;text-wrap:balance;max-width:760px;margin-top:13px;font-size:clamp(28px,3.5vw,48px);font-weight:600;line-height:1.04}.table-qr-command p{color:#c9dce8;max-width:700px;margin-top:18px;font-size:15px;line-height:1.7}.table-qr-command-stats{border-top:1px solid #fff3;border-bottom:1px solid #fff3;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.table-qr-command-stats div{gap:8px;padding:18px 16px;display:grid}.table-qr-command-stats div+div{border-left:1px solid #fff3}.table-qr-command-stats dt,.table-qr-command-stats dd{margin:0}.table-qr-command-stats dt{color:#a9c4d5;letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:700}.table-qr-command-stats dd{color:#fff;font-family:ui-monospace,Cascadia Code,Segoe UI Mono,monospace;font-size:clamp(23px,2.4vw,34px);font-weight:700;line-height:1}.table-qr-layout{grid-template-columns:minmax(220px,270px) minmax(0,1fr);align-items:start;gap:20px;display:grid}.table-qr-sidebar{gap:14px;display:grid;position:sticky;top:20px}.table-qr-legend,.table-qr-route-note,.table-zone{border:1px solid var(--table-qr-line);background:#fff;box-shadow:0 18px 42px #08233e12}.table-qr-legend,.table-qr-route-note{border-radius:22px;padding:20px}.table-qr-sidebar-heading h3{color:var(--table-qr-navy);letter-spacing:-.025em;margin-top:8px;font-size:20px}.table-qr-legend ul{gap:2px;margin:18px 0 0;padding:0;list-style:none;display:grid}.table-qr-legend li{border-top:1px solid #e7edef;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:14px 0;display:grid}.table-status-dot,.table-status-label i{background:#8ca1af;border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 4px #8ca1af24}.table-status-dot.is-available,.table-status-label.is-available i{background:var(--table-qr-jade);box-shadow:0 0 0 4px #16786421}.table-status-dot.is-serving,.table-status-label.is-serving i{background:var(--table-qr-blue);box-shadow:0 0 0 4px #005bac21}.table-status-dot.is-cleaning,.table-status-label.is-cleaning i{background:var(--table-qr-amber);box-shadow:0 0 0 4px #b6671621}.table-qr-legend li div{gap:3px;display:grid}.table-qr-legend strong,.table-qr-legend b{color:var(--table-qr-navy)}.table-qr-legend small{color:#6d818f;font-size:11px;line-height:1.35}.table-qr-legend b{font-family:ui-monospace,Cascadia Code,monospace;font-size:18px}.table-qr-route-note{background:var(--table-qr-paper)}.table-qr-route-note code{color:var(--table-qr-navy);margin-top:10px;font-family:ui-monospace,Cascadia Code,monospace;font-size:14px;font-weight:700;display:block}.table-qr-route-note p{color:#647987;margin-top:12px;font-size:12px;line-height:1.55}.table-zone-list{gap:18px;min-width:0;display:grid}.table-zone{border-radius:24px;overflow:hidden}.table-zone-heading{border-bottom:1px solid var(--table-qr-line);background:var(--table-qr-paper);justify-content:space-between;align-items:end;gap:16px;padding:18px 20px;display:flex}.table-zone-heading h3{color:var(--table-qr-navy);letter-spacing:-.03em;margin-top:5px;font-size:22px}.table-zone-heading>span{color:#6d818f;font-family:ui-monospace,Cascadia Code,monospace;font-size:12px;font-weight:700}.table-zone-grid{background:var(--table-qr-line);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid}.table-qr-card{background:#fff;gap:18px;min-width:0;padding:20px;display:grid;position:relative}.table-qr-card:before{background:var(--table-qr-jade);content:"";width:4px;position:absolute;inset:0 auto 0 0}.table-qr-card.is-serving:before{background:var(--table-qr-blue)}.table-qr-card.is-cleaning:before{background:var(--table-qr-amber)}.table-qr-card-heading,.table-qr-actions,.table-qr-asset{justify-content:space-between;align-items:center;gap:14px;display:flex}.table-number-plate{align-items:baseline;gap:8px;display:flex}.table-number-plate span{color:#6f8492;letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:700}.table-number-plate strong{color:var(--table-qr-navy);letter-spacing:-.05em;font-family:ui-monospace,Cascadia Code,Segoe UI Mono,monospace;font-size:27px}.table-status-label{color:#536a78;white-space:nowrap;align-items:center;gap:8px;font-size:11px;font-weight:700;display:inline-flex}.table-status-label i{width:7px;height:7px;display:block}.table-qr-card-body{gap:18px;display:grid}.table-qr-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;display:grid}.table-qr-meta div{border-top:1px solid #dce5e8;gap:5px;padding-top:10px;display:grid}.table-qr-meta dt,.table-qr-meta dd{margin:0}.table-qr-meta dt,.table-qr-link-copy>span{color:#7b8e9a;letter-spacing:.06em;text-transform:uppercase;font-size:10px;font-weight:700}.table-qr-meta dd{color:var(--table-qr-navy);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;overflow:hidden}.table-qr-asset{border:1px solid var(--table-qr-line);background:var(--table-qr-paper);border-radius:16px;align-items:stretch;padding:10px}.table-qr-preview{background:linear-gradient(90deg, var(--table-qr-navy) 5px, transparent 5px) 0 0 / 10px 10px, linear-gradient(var(--table-qr-navy) 5px, transparent 5px) 0 0 / 10px 10px, #fff;border:6px solid #fff;flex:0 0 82px;place-items:center;width:82px;height:82px;display:grid;position:relative;overflow:hidden;box-shadow:0 8px 18px #08233e1f}.table-qr-preview .finder{border:5px solid var(--table-qr-navy);width:21px;height:21px;box-shadow:inset 0 0 0 3px #fff, inset 0 0 0 7px var(--table-qr-navy);background:#fff;position:absolute}.table-qr-preview .top-left{top:2px;left:2px}.table-qr-preview .top-right{top:2px;right:2px}.table-qr-preview .bottom-left{bottom:2px;left:2px}.table-qr-preview>span{z-index:1;background:var(--table-qr-blue);color:#fff;border-radius:3px;padding:4px 6px;font-family:ui-monospace,Cascadia Code,monospace;font-size:9px;font-weight:700;position:relative}.table-qr-image{justify-items:center;gap:6px;width:96px;display:grid}.table-qr-image img{background:#fff;border-radius:10px;width:96px;height:96px;box-shadow:0 8px 18px #08233e1f}.table-qr-image.is-loading,.table-qr-image.is-error{border:1px dashed var(--table-qr-line);color:#7b8e9a;text-align:center;border-radius:10px;place-items:center;width:96px;height:96px;font-size:10px;font-weight:700;display:grid}.table-qr-download{color:var(--table-qr-navy);font-size:10px;font-weight:700;text-decoration:underline}.table-qr-link-copy{flex:1;align-content:center;gap:7px;min-width:0;display:grid}.table-qr-link-copy code{color:#314d60;text-overflow:ellipsis;white-space:nowrap;font-family:ui-monospace,Cascadia Code,monospace;font-size:11px;overflow:hidden}.table-qr-actions{justify-content:flex-start}.table-qr-actions a,.table-qr-actions button{min-height:42px;color:var(--table-qr-navy);cursor:pointer;background:#fff;border:1px solid #bfd0d9;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:0 14px;font:700 12px/1 Manrope,sans-serif;transition:border-color .16s,background-color .16s,color .16s,transform .16s;display:inline-flex}.table-qr-actions a{border-color:var(--table-qr-blue);background:var(--table-qr-blue);color:#fff}.table-qr-actions a:hover,.table-qr-actions button:hover{border-color:var(--table-qr-navy);background:var(--table-qr-navy);color:#fff;transform:translateY(-1px)}.table-qr-actions a:focus-visible,.table-qr-actions button:focus-visible{outline-offset:3px;outline:3px solid #08bcef57}.table-copy-feedback{color:#126552;background:#eaf6f3;border-radius:8px;padding:9px 11px;font-size:11px;font-weight:700}.table-copy-feedback.is-error{color:#93500d;background:#fff3e5}@media (width<=1180px){.table-qr-command{grid-template-columns:1fr}.table-qr-command-stats{max-width:620px}.table-qr-layout{grid-template-columns:220px minmax(0,1fr)}.table-zone-grid{grid-template-columns:1fr}}@media (width<=860px){.table-qr-layout{grid-template-columns:1fr}.table-qr-sidebar{grid-template-columns:minmax(0,1fr) minmax(220px,.7fr);position:static}.table-qr-legend ul{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.table-qr-legend li{border:1px solid #e2e9ec;border-radius:12px;grid-template-columns:auto minmax(0,1fr);align-items:start;padding:12px}.table-qr-legend li b{grid-column:2}}@media (width<=620px){.admin-table-qr-workspace{gap:16px}.table-qr-command{border-radius:22px;padding:26px 20px}.table-qr-command h3{font-size:31px}.table-qr-command-stats{border-bottom:0;grid-template-columns:1fr}.table-qr-command-stats div{grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:13px 0}.table-qr-command-stats div+div{border-top:1px solid #fff3;border-left:0}.table-qr-sidebar,.table-qr-legend ul{grid-template-columns:1fr}.table-zone-heading{padding:16px}.table-qr-card{padding:18px 16px}.table-qr-card-heading,.table-qr-asset{align-items:flex-start}.table-qr-asset{grid-template-columns:96px minmax(0,1fr);display:grid}.table-qr-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.table-qr-actions a,.table-qr-actions button{width:100%;padding-inline:10px}}@media (prefers-reduced-motion:reduce){.table-qr-actions a,.table-qr-actions button{transition:none}.table-qr-actions a:hover,.table-qr-actions button:hover{transform:none}}@media (width<=860px){.operations-shell .sidebar{z-index:18;position:sticky;box-shadow:0 12px 34px #005bac1a}.operations-shell .content{padding:20px 14px 36px}.operations-shell .page-heading{padding:18px}.admin-toolbar,.admin-panel-heading,.admin-detail-heading,.admin-action-row{flex-direction:column;align-items:stretch}.admin-split-layout,.admin-split-layout.orders,.admin-menu-row,.admin-order-card,.admin-detail-grid{grid-template-columns:1fr}.admin-menu-row img{width:100%;height:170px}.admin-row-actions{align-items:stretch}.admin-order-card small{grid-column:auto}.admin-toolbar-metrics{justify-content:flex-start}.ops-dashboard-grid{grid-template-columns:1fr}.qr-management-grid,.staff-board{scroll-snap-type:x proximity;scrollbar-width:thin;gap:12px;padding-bottom:8px;display:flex;overflow-x:auto}.qr-table-card,.staff-lane{scroll-snap-align:start;flex:0 0 min(86vw,360px)}.qr-table-card{grid-template-columns:1fr}.qr-preview-block{width:100%;min-height:180px}}.button.danger{color:#dc2626;background:#fff1f2;border-color:#fca5a5}.button.danger:hover{background:#fee2e2}.login-premium-layout{width:min(100%,520px);max-width:520px;margin:0 auto;display:grid}.login-form-section{flex-direction:column;gap:14px;display:flex}.login-form-section h3{color:var(--ink);margin:0 0 4px;font-size:20px}.login-premium-layout-centered{place-items:center;min-height:min(620px,100vh - 220px)}.login-card-glass{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffe0;width:100%;max-width:520px}.login-form-header{margin-bottom:4px}.login-form-header h3{color:var(--ink);margin:4px 0 0;font-size:18px}.login-back-link{text-align:center;color:var(--muted);margin-top:4px;font-size:14px;font-weight:600;display:block}.login-back-link:hover{color:var(--blue)}@media (width<=768px){.login-premium-layout{grid-template-columns:1fr}}.admin-category-list{flex-direction:column;gap:6px;padding:14px;display:flex}.admin-category-card{border:1.5px solid var(--line);cursor:pointer;text-align:left;font:inherit;color:var(--ink);background:#fff;border-radius:12px;grid-template-columns:1fr auto;align-items:center;gap:12px;width:100%;padding:14px 16px;transition:all .16s;display:grid}.admin-category-card:hover{border-color:var(--blue);box-shadow:0 4px 16px #005bac14}.admin-category-card.active{border-color:var(--blue);background:var(--blue-soft)}.admin-category-card-info{flex-direction:column;gap:2px;display:flex}.admin-category-card-info strong{font-size:15px}.admin-category-card-info small{color:var(--muted);font-family:monospace;font-size:12px}.admin-category-card-meta{align-items:center;gap:10px;display:flex}.admin-category-order{color:var(--muted);font-size:13px;font-weight:700}.admin-role-selector{flex-direction:column;gap:6px;margin-top:4px;display:flex}.admin-role-option{border:1.5px solid var(--line);cursor:pointer;text-align:left;font:inherit;color:var(--ink);background:#fff;border-radius:12px;grid-template-columns:40px 1fr;align-items:center;gap:10px;padding:12px 14px;transition:all .16s;display:grid}.admin-role-option:hover{border-color:var(--blue)}.admin-role-option.active{border-color:var(--blue);background:var(--blue-soft)}.admin-role-option strong{font-size:14px;display:block}.admin-role-option small{color:var(--muted);font-size:12px}.admin-role-icon{border-radius:10px;place-items:center;width:40px;height:40px;font-size:20px;display:grid}.admin-role-icon.role-admin{background:#ede9fe}.admin-role-icon.role-staff{background:#e0f2fe}.admin-role-icon.role-kitchen{background:#fff7ed}.admin-role-icon.role-customer{background:#ecfdf5}.admin-seed-accounts{flex-direction:column;gap:8px;padding:14px;display:flex}.admin-seed-card{border:1px solid var(--line);background:#fff;border-radius:12px;grid-template-columns:44px 1fr;align-items:center;gap:12px;padding:12px 14px;display:grid}.admin-seed-card strong{font-size:14px;display:block}.admin-seed-card code{color:var(--blue);margin-top:2px;font-size:12px;display:block}.admin-seed-card small{color:var(--muted);margin-top:1px;font-size:11px;display:block}.admin-form-note.is-error{color:#dc2626;background:#fff1f2;border:1px solid #fca5a5;border-radius:8px;padding:8px 12px}.payment-request-overlay{z-index:1000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#3d29148c;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.payment-request-modal{color:#3d2914;background:#fff;border:1px solid #e8dfd0;border-radius:24px;gap:18px;width:min(100%,520px);max-height:90vh;padding:22px 24px 24px;display:grid;overflow-y:auto;box-shadow:0 32px 80px #3d291440}.payment-request-header,.payment-request-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.payment-request-header h3,.payment-request-copy{margin:0}.payment-request-header h3{margin-top:4px;font-family:Playfair Display,Georgia,serif;font-size:22px}.payment-request-copy{color:#6f5a43;font-size:14px;line-height:1.55}.payment-request-options{border:0;gap:10px;min-width:0;margin:0;padding:0;display:grid}.payment-request-options legend{margin-bottom:8px;font-size:14px;font-weight:700}.payment-request-options label{cursor:pointer;background:#fffbf5;border:2px solid #e8dfd0;border-radius:16px;grid-template-columns:auto auto 1fr;align-items:center;gap:12px;min-height:72px;padding:12px 14px;display:grid}.payment-request-options label.is-selected{background:#5a3a3012;border-color:#5a3a30}.payment-request-options input{accent-color:#5a3a30;width:18px;height:18px}.payment-request-options svg{color:#5a3a30}.payment-request-options span{gap:3px;display:grid}.payment-request-options small{color:#6f5a43;font-size:12px}.payment-request-actions{justify-content:flex-end}.cmc-payment-request-submit{color:#fff;cursor:pointer;background:#5a3a30;border:0;border-radius:14px;min-height:48px;padding:0 22px;font-size:14px;font-weight:700}.cmc-payment-request-submit:active{transform:scale(.98)}.cmc-payment-request-submit:disabled,.payment-request-actions button:disabled,.payment-request-header button:disabled{cursor:not-allowed;opacity:.55}@media (width<=520px){.payment-request-overlay{align-items:end;padding:0}.payment-request-modal{width:100%;max-height:100dvh;padding:20px 16px max(20px, env(safe-area-inset-bottom));border-radius:24px 24px 0 0}.payment-request-actions{grid-template-columns:1fr 1fr;display:grid}}@media (prefers-reduced-motion:reduce){.cmc-payment-request-submit{transition:none}}.vietqr-overlay{z-index:1000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#5a3a3080;place-items:center;animation:.2s vqr-fadeIn;display:grid;position:fixed;inset:0}@keyframes vqr-fadeIn{0%{opacity:0}to{opacity:1}}.vietqr-modal{background:#fff;border-radius:24px;width:min(92vw,480px);max-height:90vh;animation:.3s cubic-bezier(.16,1,.3,1) vqr-slideUp;overflow-y:auto;box-shadow:0 32px 80px #5a3a3040}@keyframes vqr-slideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.vietqr-modal-header{border-bottom:1px solid #e8dfd0;justify-content:space-between;align-items:start;padding:22px 24px 14px;display:flex}.vietqr-modal-header .panel-kicker{letter-spacing:.06em;text-transform:uppercase;color:#c4a35a;font-size:11px;font-weight:700}.vietqr-modal-header h3{color:#3d2914;margin:4px 0 0;font-family:Playfair Display,Georgia,serif;font-size:20px;font-weight:700}.vietqr-close{cursor:pointer;color:#8b7355;background:#fff;border:1px solid #e8dfd0;border-radius:10px;place-items:center;width:44px;height:44px;font-size:16px;transition:background .2s;display:grid}.vietqr-close:hover{background:#fdf8f0}.vietqr-content{padding:20px 24px 24px}.vietqr-loading,.vietqr-error{text-align:center;color:#8b7355;padding:40px 24px}.vietqr-qr-section{text-align:center;padding:8px 0 16px}.vietqr-qr-image{object-fit:contain;border:2px solid #e8dfd0;border-radius:16px;width:220px;height:220px}.vietqr-scan-hint{color:#8b7355;margin:10px 0 0;font-size:14px;font-weight:600}.vietqr-bank-info{margin-top:12px}.vietqr-bank-info dl{gap:0;margin:0;display:grid}.vietqr-bank-info dl>div{border-bottom:1px solid #e8dfd0;grid-template-columns:120px 1fr;gap:8px;padding:10px 0;display:grid}.vietqr-bank-info dl>div:last-child{border-bottom:0}.vietqr-bank-info dt{color:#8b7355;font-size:13px;font-weight:700}.vietqr-bank-info dd{color:#3d2914;word-break:break-all;margin:0;font-size:14px;font-weight:600}.vietqr-bank-info code{color:#5a3a30;font-size:13px}.vietqr-status-bar{color:#5a3a30;background:#c4a35a1a;border-radius:12px;align-items:center;gap:10px;margin-top:16px;padding:12px 16px;font-size:14px;font-weight:600;display:flex}.vietqr-polling-dot{background:#c4a35a;border-radius:50%;width:10px;height:10px;animation:1.5s infinite vqr-pulse}@keyframes vqr-pulse{0%,to{opacity:1}50%{opacity:.3}}.vietqr-success{text-align:center;animation:fade-in-up var(--duration-base) var(--ease-decelerate) both;padding:16px 0}.vietqr-success-icon{color:#2f7d4f;width:64px;height:64px;animation:vqr-success-pop .46s var(--ease-emphasized) both;background:#2f7d4f14;border-radius:50%;place-items:center;margin-bottom:12px;font-size:32px;font-weight:900;display:inline-grid}@keyframes vqr-success-pop{0%{opacity:0;transform:scale(.4)}60%{opacity:1;transform:scale(1.12)}to{opacity:1;transform:scale(1)}}.vietqr-success h4{color:#2f7d4f;margin:0 0 6px;font-family:Playfair Display,Georgia,serif;font-size:20px}.vietqr-success p{color:#8b7355;margin:0 0 16px;font-size:14px}.vietqr-success .button.primary{color:#fff;cursor:pointer;background:#5a3a30;border:none;border-radius:12px;padding:12px 24px;font-weight:700}.vietqr-success .button.primary:hover{background:#6e453b}@media (width<=520px){.vietqr-overlay{align-items:end}.vietqr-modal{border-radius:24px 24px 0 0;width:100%;max-height:100dvh}.vietqr-modal-header{padding:18px 16px 12px}.vietqr-content{padding:16px max(16px, env(safe-area-inset-right)) max(20px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left))}.vietqr-qr-image{width:min(210px,62vw);height:min(210px,62vw)}.vietqr-bank-info dl>div{grid-template-columns:minmax(88px,.75fr) minmax(0,1.25fr)}.vietqr-success .button.primary{width:100%;min-height:44px}}.ops-order-table .table-row{grid-template-columns:1fr .7fr .7fr .7fr .6fr}.cmc-portal-content .stat-card{animation:fade-in-up var(--duration-base) var(--ease-decelerate) both}.cmc-portal-content .stat-card:nth-child(2){animation-delay:60ms}.cmc-portal-content .stat-card:nth-child(3){animation-delay:.12s}.cmc-portal-content .stat-card:nth-child(4){animation-delay:.18s}.ops-dashboard-grid>*{animation:fade-in-up var(--duration-base) var(--ease-decelerate) both}.ops-dashboard-grid>:nth-child(2){animation-delay:70ms}.ops-dashboard-grid>:nth-child(3){animation-delay:.14s}.ops-dashboard-grid>:nth-child(4){animation-delay:.21s}.ops-feature-card{animation:fade-in-up var(--duration-base) var(--ease-decelerate) both}.ops-feature-card:nth-child(2){animation-delay:60ms}.ops-feature-card:nth-child(3){animation-delay:.12s}.admin-panel,.admin-menu-row,.admin-order-card,.qr-table-card{animation:fade-in-up var(--duration-base) var(--ease-decelerate) both}.admin-chip,.admin-row-actions button,.admin-order-card{transition:border-color .16s,background-color .16s,color .16s}.admin-chip:not(.active):hover,.admin-row-actions button:hover,.admin-order-card:not(.active):hover{border-color:var(--color-primary)}.cmc-portal-content .page-shell{gap:var(--space-5)}.cmc-portal-content .page-heading{border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6) var(--space-6) var(--space-5);background:radial-gradient(120% 150% at 100% 0%, #08bcef1f, transparent 48%), linear-gradient(135deg, #fff 0%, var(--color-bg) 100%);box-shadow:var(--elevation-1);position:relative;overflow:hidden}.cmc-portal-content .page-heading:before{content:"";background:linear-gradient(180deg, var(--color-primary), var(--color-cyan));width:5px;position:absolute;inset:0 auto 0 0}.cmc-portal-content .page-heading .eyebrow{border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-primary);background:#fff;align-items:center;padding:5px 12px;display:inline-flex}.cmc-portal-content .page-heading h2{margin:var(--space-3) 0 var(--space-2);letter-spacing:-.02em;font-size:clamp(30px,3.4vw,44px);font-weight:800}.cmc-portal-content .stat-grid{gap:var(--space-4)}.cmc-portal-content .stat-card{padding:var(--space-5);border-radius:var(--radius-lg);box-shadow:var(--elevation-1);transition:box-shadow .2s,border-color .2s;position:relative;overflow:hidden}.cmc-portal-content .stat-card:before{content:"";background:linear-gradient(90deg, var(--color-primary), var(--color-cyan));height:4px;position:absolute;inset:0 0 auto}.cmc-portal-content .stat-card:hover{border-color:var(--color-primary);box-shadow:var(--elevation-3)}.cmc-portal-content .stat-card strong{letter-spacing:-.02em;font-size:34px}.cmc-portal-content .ops-dashboard-grid,.cmc-portal-content .admin-workspace{gap:var(--space-5)}.cmc-portal-content .ops-hero-panel,.cmc-portal-content .ops-panel,.cmc-portal-content .admin-panel,.cmc-portal-content .admin-toolbar{padding:var(--space-5)}.admin-invoice-toolbar{justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.admin-invoice-search{border:1px solid var(--color-border);border-radius:var(--radius-pill);min-width:220px;padding:var(--space-2) var(--space-4);font:inherit;font-size:var(--text-sm);transition:border-color var(--duration-fast) var(--ease-standard);outline:none}.admin-invoice-search:focus{border-color:var(--color-primary)}.admin-invoice-table-wrap{overflow-x:auto}.admin-invoice-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.admin-invoice-table th,.admin-invoice-table td{padding:var(--space-3) var(--space-4);text-align:left;white-space:nowrap}.admin-invoice-table thead th{background:var(--color-bg-subtle);color:var(--color-muted);font-weight:700;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;border-bottom:2px solid var(--color-border)}.admin-invoice-table tbody tr{border-bottom:1px solid var(--color-border-light);transition:background var(--duration-fast) var(--ease-standard)}.admin-invoice-table tbody tr:hover{background:var(--color-primary-50)}.admin-invoice-backdrop{z-index:var(--z-modal-backdrop);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fade-in var(--duration-base) var(--ease-decelerate) both;background:#08233e80;place-items:center;display:grid;position:fixed;inset:0}.admin-invoice-modal{background:var(--color-card);border-radius:var(--radius-xl);width:min(640px,92vw);max-height:85vh;box-shadow:var(--elevation-4);animation:scale-in var(--duration-slow) var(--ease-emphasized) both;overflow-y:auto}.admin-invoice-modal-head{padding:var(--space-5);border-bottom:1px solid var(--color-border-light);justify-content:space-between;align-items:center;display:flex}.admin-invoice-modal-head h3{font-family:var(--font-display);font-size:var(--text-xl);color:var(--color-primary-dark);margin:0}.admin-invoice-modal-head button{background:var(--color-bg-subtle);width:36px;height:36px;color:var(--color-muted);font-size:var(--text-lg);cursor:pointer;transition:background var(--duration-fast) var(--ease-standard);border:0;border-radius:50%;place-items:center;display:grid}.admin-invoice-modal-head button:hover{background:var(--color-border)}.admin-invoice-modal-body{padding:var(--space-5)}.admin-invoice-meta{gap:var(--space-2) var(--space-5);margin-bottom:var(--space-5);padding:var(--space-4);background:var(--color-bg-subtle);border-radius:var(--radius-md);grid-template-columns:1fr 1fr;display:grid}.admin-invoice-meta p{font-size:var(--text-sm);color:var(--color-muted);margin:0}.admin-invoice-meta p strong{color:var(--color-ink)}.admin-invoice-modal-body h4{margin:0 0 var(--space-3);font-size:var(--text-base);color:var(--color-ink)}.admin-invoice-items{border-collapse:collapse;width:100%;font-size:var(--text-sm);margin-bottom:var(--space-5)}.admin-invoice-items th,.admin-invoice-items td{padding:var(--space-2) var(--space-3);text-align:left}.admin-invoice-items thead th{background:var(--color-bg-subtle);color:var(--color-muted);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;font-weight:700}.admin-invoice-items tbody tr{border-bottom:1px solid var(--color-border-light)}.admin-invoice-items tfoot td{padding-top:var(--space-3);border-top:2px solid var(--color-border);font-size:var(--text-base)}.admin-invoice-refund{padding:var(--space-4);background:var(--color-danger-bg);border-radius:var(--radius-md);margin-bottom:var(--space-4)}.admin-invoice-refund h4{color:var(--color-danger)}.admin-invoice-refund input{border:1px solid var(--color-border);border-radius:var(--radius-sm);width:100%;padding:var(--space-2) var(--space-3);font:inherit;font-size:var(--text-sm);margin-bottom:var(--space-3)}@media print{.admin-invoice-backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;position:static}.admin-invoice-modal{width:100%;max-height:none;box-shadow:none;border-radius:0}.admin-invoice-modal-head button,.admin-invoice-refund,.staff-workspace,.cmc-sidebar,.cmc-mobile-topbar{display:none!important}}.cmc-login-shell{min-height:100vh;padding:var(--space-4);font-family:var(--font-ui);background:linear-gradient(135deg,#f5fafe 0%,#e2f1f9 100%);justify-content:center;align-items:center;display:flex}.cmc-login-split-card{background:var(--color-card);border:1px solid var(--color-border-light);border-radius:24px;grid-template-columns:1.1fr 1fr;width:min(1000px,95vw);min-height:600px;display:grid;overflow:hidden;box-shadow:0 20px 40px #08233e14}.cmc-login-hero-side{padding:var(--space-8);color:#fff;flex-direction:column;justify-content:flex-end;display:flex;position:relative;overflow:hidden}.cmc-login-hero-img-overlay{z-index:1;background:linear-gradient(#08233e1a 0%,#08233ebf 100%);position:absolute;inset:0}.cmc-login-hero-img{object-fit:cover;z-index:0;width:100%;height:100%;transition:transform 10s;position:absolute;inset:0}.cmc-login-split-card:hover .cmc-login-hero-img{transform:scale(1.05)}.cmc-login-hero-content{z-index:2;position:relative}.cmc-login-hero-badge{padding:4px var(--space-3);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:var(--radius-pill);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--space-3);background:#fff3;font-weight:700;display:inline-block}.cmc-login-hero-side h2{font-family:var(--font-display);margin:0 0 var(--space-2);color:#fff;font-size:clamp(28px,3.5vw,44px);line-height:1.1}.cmc-login-hero-side p{font-size:var(--text-sm);color:#ffffffd9;line-height:var(--leading-relaxed);max-width:380px;margin:0}.cmc-login-form-side{padding:var(--space-8);background:#fff;justify-content:center;align-items:center;display:flex}.cmc-login-form-container{width:100%;max-width:380px}.cmc-login-form-header{margin-bottom:var(--space-6)}.cmc-login-form-header h1{font-family:var(--font-ui);font-size:var(--text-2xl);color:var(--color-primary-dark);margin:0 0 var(--space-1);font-weight:800}.cmc-login-form-header p{font-size:var(--text-sm);color:var(--color-muted);margin:0}.cmc-login-input-group{margin-bottom:var(--space-4)}.cmc-login-input-group label{font-size:var(--text-xs);color:var(--color-primary-dark);margin-bottom:var(--space-2);letter-spacing:.05em;font-weight:700;display:block}.cmc-login-input-wrapper{align-items:center;display:flex;position:relative}.cmc-login-input-icon{left:var(--space-3);color:var(--color-muted);pointer-events:none;align-items:center;display:flex;position:absolute}.cmc-login-input-wrapper input{width:100%;height:48px;padding:0 var(--space-4) 0 42px;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-sm);transition:all var(--duration-fast) var(--ease-standard);background:#fafcff;outline:none;color:var(--color-ink)!important}.cmc-login-input-wrapper input:focus{border-color:var(--color-primary);background:#fff;box-shadow:0 0 0 4px #005bac14}.cmc-login-password-toggle{right:var(--space-3);color:var(--color-muted);cursor:pointer;padding:var(--space-1);background:0 0;border:0;align-items:center;display:flex;position:absolute}.cmc-login-password-toggle:hover{color:var(--color-primary)}.cmc-login-extra{margin-bottom:var(--space-5);font-size:var(--text-xs);justify-content:space-between;align-items:center;display:flex}.cmc-login-remember{align-items:center;gap:var(--space-2);cursor:pointer;color:var(--color-muted);font-weight:600;display:flex}.cmc-login-remember input{cursor:pointer}.cmc-login-submit-btn{justify-content:center;align-items:center;gap:var(--space-2);background:var(--gradient-cta);border-radius:var(--radius-md);color:#fff;width:100%;height:48px;font-size:var(--text-sm);cursor:pointer;transition:all var(--duration-fast) var(--ease-standard);border:0;font-weight:700;display:flex;box-shadow:0 4px 15px #005bac26}.cmc-login-submit-btn:hover{transform:translateY(-1px);box-shadow:0 6px 20px #005bac40}.cmc-login-submit-btn:active{transform:translateY(0)}.cmc-login-divider{text-align:center;margin:var(--space-5) 0;font-size:var(--text-xs);color:var(--color-muted);align-items:center;display:flex}.cmc-login-divider:before,.cmc-login-divider:after{content:"";border-bottom:1px solid var(--color-border-light);flex:1}.cmc-login-divider:not(:empty):before{margin-right:var(--space-3)}.cmc-login-divider:not(:empty):after{margin-left:var(--space-3)}.cmc-login-social-btns{gap:var(--space-3);margin-bottom:var(--space-6);grid-template-columns:1fr 1fr;display:grid}.cmc-social-btn{border:1px solid var(--color-border);border-radius:var(--radius-md);height:40px;font-size:var(--text-xs);cursor:pointer;color:var(--color-ink);transition:background var(--duration-fast) var(--ease-standard);background:#fff;justify-content:center;align-items:center;font-weight:600;display:flex}.cmc-social-btn:hover{background:#fafcff;border-color:#cbd5e1}.cmc-facebook-btn{color:#1877f2}.cmc-google-btn{color:#ea4335}.cmc-login-footer{text-align:center;font-size:var(--text-xs);color:var(--color-muted);line-height:var(--leading-relaxed)}.cmc-login-footer a{color:var(--color-primary);font-weight:700;text-decoration:none}.cmc-login-footer a:hover{text-decoration:underline}.cmc-login-back-link{margin-top:var(--space-3);display:inline-block;color:var(--color-muted)!important;font-weight:600!important}.cmc-login-back-link:hover{color:var(--color-primary)!important}@media (width<=800px){.cmc-login-split-card{grid-template-columns:1fr}.cmc-login-hero-side{display:none}.cmc-login-form-side{padding:var(--space-6)}}:root.brand-theme{--vian-primary:var(--brand-chestnut);--vian-secondary:var(--brand-clay-line);--vian-light:#f2dfd2;--vian-cream:var(--brand-ivory);--vian-sand:#f8eee5;--vian-brown:var(--brand-chestnut);--vian-brown-dark:var(--brand-chestnut-dark);--vian-brown-light:var(--brand-muted);--vian-gold:#d2ad70;--vian-gold-dark:var(--brand-brass);--vian-green:var(--brand-success);--vian-beige:#f8eee5;--vian-divider:var(--brand-clay-line);--vian-footer-bg:var(--brand-chestnut-dark);--vian-card-bg:#f1dfd3}.landing-page{background:var(--vian-cream);width:100%;color:var(--vian-brown-dark);font-family:var(--font-ui);line-height:var(--leading-normal);margin:0 auto;overflow-x:hidden}.landing-page :is(.landing-cuisine-price,.signature-dish-price,.landing-promo-rich-price strong,.cmc-card-price,[class*=total]){font-family:var(--brand-font-utility);font-variant-numeric:tabular-nums lining-nums;letter-spacing:-.015em}.landing-page h1,.landing-page h2,.landing-page h3{font-family:var(--font-display);letter-spacing:1.2px;text-wrap:balance;color:var(--vian-brown);font-weight:700}.landing-page img{max-width:100%;display:block}.landing-eyebrow{margin:0 0 var(--space-3);color:var(--vian-gold-dark);font-family:var(--font-display);font-size:var(--text-xs);letter-spacing:1.2px;text-transform:uppercase;font-weight:700}.landing-button{justify-content:center;align-items:center;gap:var(--space-3);border-radius:var(--radius-pill);min-height:52px;padding:0 var(--space-6);font-family:var(--font-ui);font-weight:700;font-size:var(--text-sm);cursor:pointer;transition:all var(--duration-base) var(--ease-standard);border:2px solid #0000;text-decoration:none;display:inline-flex}.landing-button:hover{transform:translateY(-2px)}.landing-button:active{transform:translateY(0)}.landing-button.primary{background:var(--vian-brown);color:#fff;box-shadow:0 4px 20px #5c3d2e40}.landing-button.primary:hover{background:var(--vian-brown-dark);box-shadow:0 8px 30px #5c3d2e59}.landing-button.secondary{color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff14;border-color:#ffffff80}.landing-button.secondary:hover{background:#ffffff26;border-color:#fff}.landing-button.outline{border-color:var(--vian-brown);color:var(--vian-brown);background:0 0}.landing-button.outline:hover{background:var(--vian-brown);color:#fff}.landing-button.light{color:var(--color-primary-dark);box-shadow:var(--elevation-2);background:#fff}.landing-button.light:hover{box-shadow:var(--elevation-3)}.landing-header{z-index:var(--z-nav);transition:all var(--duration-slow) var(--ease-standard);position:absolute;top:0;left:0;right:0}.landing-header-inner{max-width:1440px;padding:9px var(--space-6);background:0 0;border:none;border-radius:0;justify-content:space-between;align-items:center;margin:0 auto;display:flex;position:relative;overflow:hidden;box-shadow:0 .5rem 1rem #6e453b1a,inset 0 -1px #6e453b33}.landing-header-actions{z-index:2;flex:none;align-items:center;gap:8px;display:flex}.landing-header-bg{display:none}.landing-header.scrolled{position:fixed}.landing-header.scrolled .landing-header-inner{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fff2eef2;border:none;border-radius:0;width:100%;max-width:1440px;margin:0 auto;padding-block:9px;box-shadow:0 .5rem 1rem #6e453b26}.landing-header.scrolled .landing-brand-text strong{color:var(--vian-brown)}.landing-header.scrolled .landing-brand-text small{color:var(--vian-brown-light)}.landing-header.scrolled .landing-nav a{color:var(--vian-brown)}.landing-header.scrolled .landing-nav a:hover,.landing-header.scrolled .landing-nav a.active{color:var(--vian-gold-dark)}.landing-brand{align-items:center;gap:var(--space-3);color:var(--color-ink);z-index:1;text-decoration:none;display:flex}.landing-brand-logo{border-radius:var(--radius-md);object-fit:cover;width:44px;height:44px;transition:transform var(--duration-base) var(--ease-spring)}.landing-brand:hover .landing-brand-logo{transform:scale(1.05)}.landing-brand-text{flex-direction:column;display:flex}.landing-brand-text strong{font-family:var(--font-display);font-size:var(--text-lg);color:#fff}.landing-brand-text small{font-size:var(--text-xs);color:#ffffffb3;font-weight:500}.landing-nav{align-items:center;gap:var(--space-1);z-index:1;display:flex}.landing-nav a{padding:var(--space-2) .75rem;color:#fff;font-family:var(--font-display);transition:all var(--duration-fast) var(--ease-standard);border-radius:0;margin:0 2px;font-size:1rem;font-weight:400;text-decoration:none;position:relative}.landing-nav a:after{content:"";background:var(--vian-gold);width:0;height:2px;transition:all .3s;position:absolute;bottom:2px;left:50%;transform:translate(-50%)}.landing-nav a:hover:after,.landing-nav a.active:after{width:60%}.landing-nav a:hover,.landing-nav a.active{color:var(--vian-gold);background:0 0}.landing-nav-cta{margin-left:var(--space-3);box-shadow:0 2px 12px #6e453b33;padding:var(--space-2) var(--space-5)!important;background:var(--vian-gold)!important;color:var(--vian-brown)!important;border-radius:var(--radius-pill)!important;font-family:"Playfair Display SC", var(--font-display), serif!important}.landing-nav-cta:after{display:none!important}.landing-nav-cta:hover{background:var(--vian-gold-dark)!important;box-shadow:0 4px 20px #6e453b4d!important}.landing-menu-toggle{border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;z-index:1;color:#fff;background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:44px;height:44px;padding:12px;display:none}.landing-menu-toggle span{background:var(--color-ink);width:100%;height:2px;transition:transform var(--duration-base) var(--ease-standard), opacity var(--duration-fast) var(--ease-standard);border-radius:2px;display:block}.landing-menu-toggle[aria-expanded=true] span:first-child{transform:translateY(7px)rotate(45deg)}.landing-menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.landing-menu-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.landing-hero{isolation:isolate;background:#f7fafc;justify-content:flex-end;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.landing-hero-slideshow{z-index:-2;position:absolute;inset:0}.landing-hero-slide{opacity:0;transition:opacity 1.2s var(--ease-decelerate), transform 6s var(--ease-decelerate);position:absolute;inset:0;transform:scale(1.03)}.landing-hero-slide.active{opacity:1;transform:scale(1)}.landing-hero-slide img{object-fit:cover;object-position:center;width:100%;height:100%}.landing-hero-overlay{z-index:-1;background:linear-gradient(90deg,#3a25181a 0%,#3a25180d 30%,#3a251833 60%,#3a251873 100%);position:absolute;inset:0}.landing-hero-copy{text-align:right;z-index:1;width:min(600px,50%);margin-right:clamp(28px,8vw,140px);padding:0;position:relative}.hero-script-text{color:#fff;text-shadow:0 2px 20px #3a25184d;margin-bottom:var(--space-3);font-family:Dancing Script,Cormorant Garamond,cursive,serif;font-size:clamp(60px,8vw,120px);font-weight:400;line-height:1;display:block}.hero-sub-heading{font-family:var(--font-display);color:#fff;letter-spacing:.15em;text-transform:uppercase;text-shadow:0 1px 10px #6e453b4d;font-size:clamp(20px,2.5vw,36px);font-weight:700;display:block}.landing-hero-tags{gap:var(--space-3);margin-bottom:var(--space-4);animation:fade-in-up .8s var(--ease-decelerate) .1s both;display:flex}.landing-hero-tag{align-items:center;gap:var(--space-2);padding:6px var(--space-3);border-radius:var(--radius-pill);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;box-shadow:var(--elevation-1);font-weight:700;display:inline-flex}.landing-hero-tag.highlight{color:var(--vian-brown-dark);background:#fff}.landing-hero-tag.promo{background:var(--vian-gold);color:var(--vian-brown-dark)}.landing-hero h1{color:#fff;text-shadow:0 2px 15px #3a25184d;animation:fade-in-up .8s var(--ease-decelerate) .3s both;margin:0;font-size:clamp(34px,3.8vw,56px);font-weight:400;line-height:1.2}.landing-hero h1 .highlight-text{color:var(--vian-gold);font-style:italic}.landing-hero-subtitle{max-width:420px;margin:var(--space-4) 0 0;color:#ffffffe6;font-size:clamp(14px,1.1vw,15px);line-height:var(--leading-relaxed);text-shadow:0 1px 4px #3a251833;animation:fade-in-up .8s var(--ease-decelerate) .5s both}.landing-hero-actions{gap:var(--space-4);margin-top:var(--space-6);animation:fade-in-up .8s var(--ease-decelerate) .7s both;flex-wrap:wrap;display:flex}.landing-button.secondary-light{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;background:#fff3;border:1px solid #fff6;box-shadow:0 4px 15px #0000000d}.landing-button.secondary-light:hover{background:#ffffff4d;border-color:#fff}.landing-hero-nav-btn{color:#fff;cursor:pointer;z-index:5;width:52px;height:52px;transition:all var(--duration-fast) var(--ease-standard);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#3a25184d;border:1px solid #ffffff4d;border-radius:50%;place-items:center;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.landing-hero-nav-btn:hover{background:#3a251899;border-color:#fff;transform:translateY(-50%)scale(1.05)}.landing-hero-nav-btn.prev{left:var(--space-5)}.landing-hero-nav-btn.next{right:var(--space-5)}.landing-hero-dots{gap:var(--space-3);z-index:2;display:flex;position:absolute;bottom:40px;left:50%;transform:translate(-50%)}.landing-hero-dot{cursor:pointer;width:10px;height:10px;transition:all var(--duration-base) var(--ease-standard);background:0 0;border:2px solid #fff9;border-radius:50%;padding:0}.landing-hero-dot.active{background:#fff;border-color:#fff;border-radius:5px;width:24px}.landing-hero-stats{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:3;height:90px;padding:0 var(--space-8);background:#3a2518bf;border-top:1px solid #c9a96e33;justify-content:space-around;align-items:center;display:flex;position:absolute;bottom:0;left:0;right:0}.landing-hero-stat-col{align-items:center;gap:var(--space-4);color:#fff;flex:1;justify-content:center;display:flex}.landing-hero-stat-col:not(:last-child){border-right:1px solid #c9a96e40}.landing-hero-stat-icon{color:var(--vian-gold)}.landing-hero-stat-info{flex-direction:column;display:flex}.landing-hero-stat-info strong{font-family:var(--font-display);font-size:var(--text-lg);color:#fff;line-height:1}.landing-hero-stat-info span{font-size:var(--text-xs);color:#ffffffbf;margin-top:2px}@media (width<=800px){.landing-hero-nav-btn{display:none}.landing-hero-stats{height:auto;padding:var(--space-4) var(--space-2);flex-wrap:wrap}.landing-hero-stat-col{padding:var(--space-2) 0;flex-basis:50%}.landing-hero-stat-col:not(:last-child){border-right:none}.landing-hero-copy{width:90%;margin-left:var(--space-5);padding:120px 0 160px}.landing-hero-dots{bottom:180px}}.landing-vian-section-title{text-align:center;background:var(--vian-cream);border-bottom:1px solid var(--vian-divider);padding:clamp(40px,5vw,70px) clamp(28px,8vw,140px)}.landing-vian-section-title h2{font-family:var(--font-display);color:var(--vian-brown);text-transform:uppercase;letter-spacing:1.2px;margin:0;font-size:clamp(28px,3.5vw,44px);font-weight:700}.landing-cuisine-vian{background:var(--vian-cream);text-align:center;padding:clamp(40px,5vw,70px) clamp(28px,8vw,100px);position:relative;overflow:hidden}.landing-cuisine-vian:before{content:"";opacity:.6;pointer-events:none;background:linear-gradient(#f9f4edeb 0%,#f9f4edd9 50%,#f9f4edeb 100%),url(/album-images/03-goc-am-cung.webp) 50%/cover no-repeat;position:absolute;inset:0}.landing-cuisine-vian>.landing-vian-section-title{z-index:1;position:relative}.landing-cuisine-grid{z-index:1;grid-template-columns:repeat(4,1fr);gap:clamp(16px,2vw,28px);max-width:1400px;margin:0 auto;display:grid;position:relative}.landing-cuisine-item{flex-direction:column;gap:clamp(12px,1.5vw,20px);display:flex}.landing-cuisine-item.reverse{flex-direction:column-reverse}.landing-cuisine-img-frame{border:2px solid var(--vian-secondary);background:#fff;border-radius:6px;padding:10px;position:relative}.landing-cuisine-img-frame:before,.landing-cuisine-img-frame:after{content:"";border:2px solid var(--vian-gold);pointer-events:none;width:24px;height:24px;position:absolute}.landing-cuisine-img-frame:before{border-bottom:none;border-right:none;border-radius:4px 0 0;top:-2px;left:-2px}.landing-cuisine-img-frame:after{border-top:none;border-left:none;border-radius:0 0 4px;bottom:-2px;right:-2px}.landing-cuisine-img-frame img{aspect-ratio:1/1.1;object-fit:cover;border-radius:4px;width:100%;transition:transform .3s;display:block}.landing-cuisine-item:hover .landing-cuisine-img-frame img{transform:scale(1.05)}.landing-cuisine-text{text-align:left;padding:0 4px}.landing-cuisine-text h3{font-family:var(--font-display);color:var(--vian-brown);text-transform:uppercase;letter-spacing:1px;margin:0 0 8px;font-size:clamp(14px,1.3vw,20px);font-weight:700}.landing-cuisine-text p{font-family:var(--font-ui);color:var(--vian-brown-dark);margin:0;font-size:clamp(12px,.95vw,14px);font-weight:400;line-height:1.6}.landing-cuisine-category{letter-spacing:.12em;text-transform:uppercase;color:var(--vian-gold);font-size:11px;font-weight:800;margin:0 0 4px!important}.landing-cuisine-price{font-family:var(--font-display);color:var(--vian-green);margin-top:8px;font-size:clamp(14px,1.2vw,18px);font-weight:700;display:inline-block}@media (width<=1024px){.landing-cuisine-grid{grid-template-columns:repeat(2,1fr)}.landing-cuisine-item.reverse{flex-direction:column}}@media (width<=600px){.landing-cuisine-grid{grid-template-columns:1fr;max-width:400px}}.landing-space-vian{text-align:center;background:#8b7355;padding:clamp(50px,6vw,80px) clamp(28px,8vw,120px);position:relative;overflow:hidden}.landing-space-vian-bg{opacity:.15;pointer-events:none;filter:sepia(.3)saturate(.7);background-image:url(https://images.unsplash.com/photo-1517248135467-4c7edcad34c4?w=1400&h=600&fit=crop&q=15);background-position:50%;background-size:cover;position:absolute;inset:0}.landing-space-gallery{grid-template-columns:1fr 1.15fr 1fr;align-items:center;gap:clamp(16px,2.5vw,32px);max-width:1200px;margin:0 auto;display:grid;position:relative}.landing-space-frame{background:#ffffff14;border:2px solid #d8bfa480;border-radius:12px;padding:10px;transition:transform .3s;position:relative;overflow:hidden}.landing-space-frame:hover{transform:translateY(-4px)}.landing-space-frame:before,.landing-space-frame:after{content:"";pointer-events:none;z-index:1;border:2px solid #ddc5a5b3;width:28px;height:28px;position:absolute}.landing-space-frame:before{border-bottom:none;border-right:none;border-radius:6px 0 0;top:4px;left:4px}.landing-space-frame:after{border-top:none;border-left:none;border-radius:0 0 6px;bottom:4px;right:4px}.landing-space-frame img{aspect-ratio:4/3.5;object-fit:cover;border-radius:8px;width:100%;transition:transform .3s;display:block}.landing-space-frame.featured img{aspect-ratio:4/4.5}.landing-space-frame:hover img{transform:scale(1.05)}@media (width<=768px){.landing-space-gallery{grid-template-columns:1fr;max-width:500px}.landing-space-frame.featured img{aspect-ratio:4/3.5}}.landing-scan-notice{border-radius:var(--radius-md);width:fit-content;max-width:520px;padding:var(--space-3) var(--space-4);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:var(--text-sm);animation:fade-in-up var(--duration-slow) var(--ease-decelerate) both;background:#ffffff1f;border:1px solid #ffffff4d;margin-top:var(--space-5)!important;color:#fff!important}.landing-about{padding:var(--space-10) clamp(28px, 8vw, 140px);background:var(--vian-cream);border-bottom:1px solid var(--vian-divider);grid-template-columns:1fr 1fr;align-items:center;gap:clamp(40px,6vw,100px);display:grid;position:relative;overflow:hidden}.landing-about:before{content:"";opacity:.5;pointer-events:none;z-index:0;background:linear-gradient(#f9f4eded 0%,#f9f4edde 50%,#f9f4eded 100%),url(/album-images/01-ngoai-canh-nha-hang.webp) 50%/cover no-repeat;position:absolute;inset:0}.landing-about>*{z-index:1;position:relative}.landing-about-image{border-radius:var(--radius-lg);aspect-ratio:4/5;overflow:hidden;box-shadow:0 8px 40px #5c3d2e26}.landing-about-image img{object-fit:cover;width:100%;height:100%;transition:transform var(--duration-slower) var(--ease-decelerate)}.landing-about-image:hover img{transform:scale(1.03)}.landing-about-content h2{color:var(--vian-brown-dark);font-size:clamp(30px,3vw,44px);line-height:var(--leading-tight);margin:0}.landing-about-content p{margin:var(--space-5) 0 0;color:var(--vian-brown-light);font-size:var(--text-base);line-height:var(--leading-relaxed)}.landing-about-stats{gap:var(--space-4);margin-top:var(--space-7);grid-template-columns:repeat(3,1fr);display:grid}.landing-about-stat{text-align:center;padding:var(--space-4);background:var(--vian-sand);border-radius:var(--radius-md);border:1px solid var(--vian-divider)}.landing-about-stat strong{font-family:var(--font-display);font-size:var(--text-3xl);color:var(--vian-brown);display:block}.landing-about-stat span{margin-top:var(--space-1);font-size:var(--text-sm);color:var(--vian-brown-light);display:block}.landing-section{padding:var(--space-10) clamp(28px, 8vw, 140px);background:var(--vian-cream);position:relative;overflow:hidden}.landing-section:before{content:"";opacity:.5;pointer-events:none;z-index:0;background:linear-gradient(#f9f4eded 0%,#f9f4ede0 50%,#f9f4eded 100%),url(/album-images/02-khong-gian-tang-1.webp) 50%/cover no-repeat;position:absolute;inset:0}.landing-section>*{z-index:1;position:relative}.landing-section.alt-bg{background:var(--vian-sand)}.landing-section.alt-bg:before{background:linear-gradient(#ede4d5ed 0%,#ede4d5e0 50%,#ede4d5ed 100%),url(/album-images/08-chi-tiet-trang-tri.webp) 50%/cover no-repeat}.landing-section-heading{justify-content:space-between;align-items:flex-end;gap:var(--space-7);margin-bottom:var(--space-7);display:flex}.landing-section-heading h2{color:var(--vian-brown-dark);font-size:clamp(28px,3vw,44px);line-height:var(--leading-tight);margin:0}.landing-section-heading p{max-width:560px;margin:var(--space-3) 0 0;color:var(--vian-brown-light);line-height:var(--leading-relaxed)}.signature-list{gap:var(--space-5);grid-template-columns:repeat(3,1fr);display:grid}.signature-dish{border-radius:var(--radius-lg);min-width:0;transition:all var(--duration-base) var(--ease-standard);cursor:pointer;background:#fff;border:none;overflow:hidden;box-shadow:0 3px 6px -4px #00000029,0 3px 6px #0000003b}.signature-dish:hover{transform:translateY(-6px);box-shadow:0 12px 40px #6e453b26}.signature-dish img{aspect-ratio:4/3;object-fit:cover;width:100%;transition:transform .15s}.signature-dish:hover img{transform:scale(1.2)}.signature-dish-info{background:var(--vian-card-bg);padding:20px 10px}.signature-dish-category{margin:0 0 var(--space-2);color:var(--vian-brown);font-size:var(--text-xs);letter-spacing:1.2px;text-transform:uppercase;font-weight:700}.signature-dish-name{font-family:var(--font-display);font-size:var(--text-xl);color:var(--vian-brown);margin:0;font-weight:700}.signature-dish-desc{-webkit-line-clamp:2;margin-top:var(--space-2);color:var(--vian-brown-dark);font-size:var(--text-sm);line-height:var(--leading-relaxed);-webkit-box-orient:vertical;min-height:42px;display:-webkit-box;overflow:hidden}.signature-dish-price{margin-top:var(--space-3);padding:var(--space-1) var(--space-3);color:var(--vian-brown);background:0 0;border-radius:0;font-size:20px;font-weight:800;display:inline-block}.landing-empty-menu{border:1px dashed var(--color-border);border-radius:var(--radius-md);padding:var(--space-6);color:var(--color-muted);text-align:center}.landing-promos{gap:var(--space-5);grid-template-columns:repeat(3,1fr);display:grid}.landing-promos-rich{grid-template-columns:repeat(3,1fr);gap:clamp(20px,2.5vw,32px);max-width:1200px;margin:0 auto;display:grid}.landing-promo-rich-card{border:1px solid var(--vian-divider);background:#fff;border-radius:16px;transition:all .3s;overflow:hidden;box-shadow:0 4px 20px #6e453b14}.landing-promo-rich-card:hover{transform:translateY(-6px);box-shadow:0 16px 48px #6e453b26}.landing-promo-rich-card.featured{border:2px solid var(--vian-gold);box-shadow:0 4px 20px #6e453b1f}.landing-promo-rich-img{position:relative;overflow:hidden}.landing-promo-rich-img img{aspect-ratio:3/2;object-fit:cover;width:100%;transition:transform .4s}.landing-promo-rich-card:hover .landing-promo-rich-img img{transform:scale(1.08)}.landing-promo-rich-discount{background:var(--vian-brown);color:#fff;font-family:var(--font-display);letter-spacing:.5px;border-radius:8px;padding:8px 16px;font-size:20px;font-weight:800;position:absolute;top:16px;right:16px;box-shadow:0 4px 12px #0003}.landing-promo-rich-ribbon{color:#fff;letter-spacing:1.5px;clip-path:polygon(0 0,100% 0,92% 100%,0 100%);background:linear-gradient(135deg,#dc2626,#ef4444);padding:4px 16px 4px 12px;font-size:11px;font-weight:800;position:absolute;top:16px;left:-4px;box-shadow:0 2px 8px #dc26264d}.landing-promo-rich-body{padding:20px 24px 24px}.landing-promo-rich-tag{background:var(--vian-sand);color:var(--vian-brown);letter-spacing:.8px;text-transform:uppercase;border-radius:20px;align-items:center;gap:6px;margin-bottom:12px;padding:4px 12px;font-size:12px;font-weight:700;display:inline-flex}.landing-promo-rich-body h3{color:var(--vian-brown);margin:0 0 8px;font-size:clamp(18px,1.5vw,22px);font-weight:700;line-height:1.3}.landing-promo-rich-body p{color:var(--vian-brown-light);margin:0 0 16px;font-size:14px;line-height:1.6}.landing-promo-rich-footer{border-top:1px solid var(--vian-divider);justify-content:space-between;align-items:center;padding-top:16px;display:flex}.landing-promo-rich-price{color:var(--vian-brown-light);font-size:13px}.landing-promo-rich-price strong{color:var(--vian-brown);font-size:18px;font-weight:800}.landing-promo-rich-time{color:var(--vian-brown-light);font-size:13px}.landing-promo-rich-cta{background:var(--vian-brown);color:#fff;letter-spacing:.5px;border-radius:8px;align-items:center;padding:8px 20px;font-size:13px;font-weight:700;text-decoration:none;transition:all .2s;display:inline-flex}.landing-promo-rich-cta:hover{background:var(--vian-brown-dark);transform:translateY(-1px);box-shadow:0 4px 12px #6e453b4d}@media (width<=900px){.landing-promos-rich{grid-template-columns:1fr;max-width:480px}}.landing-promo-vian-section{background:var(--vian-cream);text-align:center;padding:clamp(50px,6vw,80px) clamp(28px,8vw,120px);position:relative}.landing-promo-vian-item{text-align:center}.landing-promo-vian-frame{cursor:pointer;margin-bottom:20px;padding:14px;position:relative}.landing-promo-vian-frame:before{content:"";pointer-events:none;z-index:1;border:2px solid #a7826473;border-radius:12px;position:absolute;inset:0}.landing-promo-vian-frame:after{content:"";z-index:2;pointer-events:none;border-top:3px solid var(--vian-gold-dark);border-left:3px solid var(--vian-gold-dark);border-radius:8px 0 0;width:40px;height:40px;position:absolute;top:-4px;left:-4px}.landing-promo-vian-item:before{content:"";width:0;height:0;display:block;position:relative}.landing-promo-vian-item{position:relative}.landing-promo-vian-item:after{content:"";z-index:2;pointer-events:none;top:calc(14px + var(--frame-img-height,380px));border-bottom:3px solid var(--vian-gold-dark);border-right:3px solid var(--vian-gold-dark);border-radius:0 0 8px;width:40px;height:40px;position:absolute;right:10px}.landing-promo-vian-frame img{aspect-ratio:3/4;object-fit:cover;border-radius:8px;width:100%;transition:transform .4s;display:block}.landing-promo-vian-frame:hover img{transform:scale(1.04)}.landing-promo-vian-badge{z-index:3;background:var(--vian-brown);color:#fff;letter-spacing:.5px;border-radius:8px;padding:8px 16px;font-size:18px;font-weight:800;position:absolute;top:24px;right:24px;box-shadow:0 4px 16px #00000040}.landing-promo-vian-item h3{color:var(--vian-brown);text-transform:uppercase;letter-spacing:1px;margin:0 0 8px;font-size:clamp(16px,1.4vw,22px);font-weight:700}.landing-promo-vian-item p{color:var(--vian-brown-light);max-width:280px;margin:0 auto;font-size:14px;line-height:1.6}@media (width<=768px){.landing-promo-vian-grid{grid-template-columns:1fr;max-width:360px}}.landing-steps{gap:var(--space-5);counter-reset:step;grid-template-columns:repeat(3,1fr);display:grid}.landing-step{text-align:center;padding:var(--space-7) var(--space-5);border:1px solid var(--vian-divider);border-radius:var(--radius-lg);transition:all var(--duration-base) var(--ease-standard);background:#fff;position:relative}.landing-step:hover{border-color:var(--vian-gold);box-shadow:0 8px 30px #5c3d2e14}.landing-step-icon{width:72px;height:72px;margin:0 auto var(--space-5);background:var(--vian-sand);color:var(--vian-brown);transition:all var(--duration-base) var(--ease-standard);border-radius:50%;place-items:center;font-size:32px;display:grid}.landing-step:hover .landing-step-icon{background:var(--vian-brown);color:#fff;transform:scale(1.08)}.landing-step-number{counter-increment:step;width:28px;height:28px;margin:0 auto var(--space-3);background:var(--vian-brown);color:#fff;font-weight:800;font-size:var(--text-sm);border-radius:50%;justify-content:center;align-items:center;display:flex}.landing-step-number:before{content:counter(step)}.landing-step h3{font-family:var(--font-ui);font-size:var(--text-lg);color:var(--vian-brown-dark);margin:0;font-weight:700}.landing-step p{margin:var(--space-3) 0 0;color:var(--vian-brown-light);font-size:var(--text-sm);line-height:var(--leading-relaxed)}.landing-testimonials-track{gap:var(--space-5);scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;padding-bottom:var(--space-4);display:flex;overflow-x:auto}.landing-testimonials-track::-webkit-scrollbar{display:none}.landing-testimonial{scroll-snap-align:start;padding:var(--space-6) var(--space-8);border:1px dashed var(--vian-divider);border-radius:var(--radius-lg);transition:all var(--duration-base) var(--ease-standard);text-align:center;background:#fff;flex-direction:column;flex:0 0 min(420px,90vw);align-items:center;display:flex;box-shadow:0 4px 15px #5c3d2e0a}.landing-testimonial:hover{border-color:var(--vian-gold);box-shadow:0 10px 30px #5c3d2e14}.landing-testimonial-stars{color:var(--vian-gold);font-size:var(--text-base);letter-spacing:2px;margin-bottom:var(--space-2)}.landing-testimonial-text{margin:var(--space-4) 0 var(--space-6);color:var(--vian-brown-dark);font-family:var(--font-display);font-size:var(--text-lg);line-height:var(--leading-relaxed);opacity:.9;font-style:italic}.landing-testimonial-author{align-items:center;gap:var(--space-2);flex-direction:column;margin-top:auto;display:flex}.landing-testimonial-avatar{object-fit:cover;border:2px solid var(--vian-sand);border-radius:50%;width:48px;height:48px;box-shadow:0 2px 8px #5c3d2e1a}.landing-testimonial-name{font-family:var(--font-display);font-weight:700;font-size:var(--text-sm);color:var(--vian-brown);letter-spacing:1.2px;text-transform:uppercase}.landing-testimonial-role{font-size:var(--text-xs);color:var(--vian-brown-light);display:block}.landing-testimonial-dots{justify-content:center;gap:var(--space-2);margin-top:var(--space-5);display:flex}.landing-testimonial-dot{background:var(--vian-divider);cursor:pointer;width:8px;height:8px;transition:all var(--duration-fast) var(--ease-standard);border:0;border-radius:50%;padding:0}.landing-testimonial-dot.active{border-radius:var(--radius-pill);background:var(--vian-brown);width:24px}.landing-ai-cta{background:linear-gradient(135deg,#5a3a30 0%,#6e453b 50%,#7a4f42 100%);padding:40px 24px}.landing-ai-cta-inner{justify-content:space-between;align-items:center;gap:24px;max-width:1100px;margin:0 auto;display:flex}.landing-ai-cta-text{color:#fff;align-items:center;gap:18px;display:flex}.landing-ai-cta-text svg{opacity:.9;flex-shrink:0}.landing-ai-cta-text h3{letter-spacing:-.3px;color:var(--vian-gold,#e8c870);margin:0;font-size:20px;font-weight:700}.landing-ai-cta-text p{opacity:.9;margin:4px 0 0;font-size:14px;line-height:1.5}.landing-ai-cta-btn{color:#5a3a30;white-space:nowrap;background:#fff;border-radius:40px;align-items:center;gap:10px;padding:14px 28px;font-size:15px;font-weight:700;text-decoration:none;transition:all .25s;display:inline-flex;box-shadow:0 4px 16px #00000026}.landing-ai-cta-btn:hover{background:#fdf8f4;transform:translateY(-2px);box-shadow:0 8px 24px #0003}@media (width<=768px){.landing-ai-cta{padding:28px 16px}.landing-ai-cta-inner{text-align:center;flex-direction:column}.landing-ai-cta-text{flex-direction:column;gap:10px}}.landing-ai-section{color:#fff;background:linear-gradient(135deg,#5a3a30 0%,#6e453b 50%,#7a4f42 100%);padding:60px 24px}.landing-ai-container{grid-template-columns:1fr 1fr;align-items:stretch;gap:48px;max-width:1200px;margin:0 auto;display:grid}.landing-ai-intro{flex-direction:column;justify-content:center;gap:20px;display:flex}.landing-ai-badge{letter-spacing:.5px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff1f;border:1px solid #fff3;border-radius:40px;align-items:center;gap:8px;width:fit-content;padding:8px 18px;font-size:13px;font-weight:700;display:inline-flex}.landing-ai-intro h2{margin:0;font-size:42px;font-weight:700;line-height:1.2}.landing-ai-intro p{opacity:.85;max-width:420px;margin:0;font-size:16px;line-height:1.7}.landing-ai-prompts{flex-wrap:wrap;gap:10px;margin-top:8px;display:flex}.landing-ai-prompt-btn{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff14;border:1px solid #ffffff4d;border-radius:24px;padding:10px 20px;font-size:13px;font-weight:600;transition:all .2s}.landing-ai-prompt-btn:hover{background:#fff3;border-color:#ffffff80;transform:translateY(-1px)}.landing-ai-chat-window{background:#fdf8f4;border-radius:20px;flex-direction:column;min-height:480px;max-height:560px;display:flex;overflow:hidden;box-shadow:0 20px 60px #0003}.landing-ai-chat-header{color:#fff;background:linear-gradient(135deg,#5a3a30 0%,#6e453b 100%);flex-shrink:0;align-items:center;gap:10px;padding:14px 20px;font-size:14px;font-weight:700;display:flex}.landing-ai-chat-body{background:linear-gradient(#fdf8f4 0%,#fff5ee 100%);flex-direction:column;flex:1;gap:14px;padding:20px;display:flex;overflow-y:auto}.landing-ai-msg{align-items:flex-start;gap:10px;animation:.3s both fade-in-up;display:flex}.landing-ai-msg.user{flex-direction:row-reverse}.landing-ai-msg-avatar{color:#fff;background:#6e453b;border-radius:50%;flex-shrink:0;place-items:center;width:28px;height:28px;display:grid}.landing-ai-msg-bubble{border-radius:16px;max-width:78%;padding:12px 16px;font-size:14px;line-height:1.6}.landing-ai-msg.assistant .landing-ai-msg-bubble{color:#5a3a30;background:#fff;border:1px solid #a7826426;border-bottom-left-radius:4px;box-shadow:0 1px 4px #5c3d2e0f}.landing-ai-msg.user .landing-ai-msg-bubble{color:#fff;background:#6e453b;border-bottom-right-radius:4px;box-shadow:0 2px 8px #5c3d2e26}.landing-ai-suggestions{flex-direction:column;gap:8px;display:flex}.landing-ai-suggestion-card{background:#fff;border:1px solid #a7826433;border-radius:12px;align-items:center;gap:12px;padding:10px 12px;animation:.3s both fade-in-up;display:flex}.landing-ai-suggestion-card:hover{border-color:#ddc5a5}.landing-ai-suggestion-card img{object-fit:cover;border-radius:10px;width:48px;height:48px}.landing-ai-suggestion-info{flex:1;min-width:0}.landing-ai-suggestion-info strong{color:#5a3a30;white-space:nowrap;text-overflow:ellipsis;font-size:14px;display:block;overflow:hidden}.landing-ai-suggestion-info span{color:#6e453b;font-size:12px;font-weight:700}.landing-ai-suggestion-btn{color:#fff;cursor:pointer;background:#6e453b;border:0;border-radius:8px;padding:6px 14px;font-size:12px;font-weight:700;transition:all .2s}.landing-ai-suggestion-btn:hover{background:#5a3a30}.landing-ai-composer{background:#fdf8f4;border-top:1px solid #a7826426;flex-shrink:0;align-items:center;gap:10px;padding:14px 18px;display:flex}.landing-ai-input{color:#5a3a30;background:#fff;border:1px solid #a782644d;border-radius:24px;outline:none;flex:1;padding:11px 20px;font-size:14px;transition:border-color .2s}.landing-ai-input::placeholder{color:#6e453b66}.landing-ai-input:focus{border-color:#6e453b;box-shadow:0 0 0 3px #6e453b14}.landing-ai-send{color:#fff;cursor:pointer;background:linear-gradient(135deg,#6e453b 0%,#5a3a30 100%);border:0;border-radius:50%;flex-shrink:0;place-items:center;width:42px;height:42px;transition:all .2s;display:grid}.landing-ai-send:hover{transform:scale(1.05);box-shadow:0 4px 12px #5c3d2e4d}.landing-ai-send:disabled{opacity:.4;cursor:not-allowed}@media (width<=768px){.landing-ai-section{padding:40px 16px}.landing-ai-container{grid-template-columns:1fr;gap:28px}.landing-ai-intro{text-align:center;align-items:center}.landing-ai-intro h2{font-size:30px}.landing-ai-intro p{max-width:100%}.landing-ai-prompts{justify-content:center}.landing-ai-chat-window{min-height:400px;max-height:500px}}.landing-chat-fab{bottom:var(--space-5);right:var(--space-5);z-index:var(--z-chat);color:#fff;border-radius:var(--radius-pill);font-weight:700;font-size:var(--text-sm);cursor:pointer;animation:float 3s var(--ease-standard) infinite;background:linear-gradient(135deg,#6e453b 0%,#5a3a30 100%);border:2px solid #d8bfa466;align-items:center;gap:10px;padding:12px 22px;transition:all .3s;display:flex;position:fixed;box-shadow:0 6px 24px #5c3d2e59}.landing-chat-fab:hover{animation:none;transform:translateY(-3px);box-shadow:0 10px 36px #5c3d2e73}.landing-chat-fab-icon{background:#ffffff26;border-radius:50%;place-items:center;width:28px;height:28px;padding:3px;display:grid}.landing-chat-panel{bottom:var(--space-5);right:var(--space-5);z-index:var(--z-chat);width:min(420px,100vw - 32px);max-height:min(620px,100vh - 100px);animation:slide-up var(--duration-slow) var(--ease-emphasized) both;background:#fdf8f4;border:1px solid #a782644d;border-radius:20px;flex-direction:column;display:flex;position:fixed;overflow:hidden;box-shadow:0 20px 60px #5c3d2e33}.landing-chat-header{color:#fff;background:linear-gradient(135deg,#5a3a30 0%,#6e453b 60%,#e4ccac 100%);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.landing-chat-header h3{letter-spacing:.3px;margin:0;font-size:16px;font-weight:700}.landing-chat-header small{opacity:.8;margin-top:3px;font-size:12px;display:block}.landing-chat-close{color:#fff;cursor:pointer;background:#ffffff1f;border:0;border-radius:50%;place-items:center;width:34px;height:34px;transition:background .2s;display:grid}.landing-chat-close:hover{background:#ffffff40}.landing-chat-body{background:linear-gradient(#fdf8f4 0%,#fff5ee 100%);flex-direction:column;flex:1;gap:12px;padding:16px;display:flex;overflow-y:auto}.landing-chat-msg{max-width:82%;animation:fade-in-up var(--duration-base) var(--ease-decelerate) both;border-radius:16px;padding:12px 16px;font-size:14px;line-height:1.6}.landing-chat-msg.assistant{color:#5a3a30;background:#fff;border:1px solid #a7826426;border-bottom-left-radius:4px;align-self:flex-start;box-shadow:0 1px 4px #5c3d2e0f}.landing-chat-msg.user{color:#fff;background:#6e453b;border-bottom-right-radius:4px;align-self:flex-end;box-shadow:0 2px 8px #5c3d2e26}.landing-chat-suggestions{flex-direction:column;gap:8px;padding:0 4px;display:flex}.landing-chat-suggestion-card{animation:fade-in-up var(--duration-base) var(--ease-decelerate) both;background:#fff;border:1px solid #a7826433;border-radius:12px;align-items:center;gap:12px;padding:10px 12px;transition:border-color .2s;display:flex}.landing-chat-suggestion-card:hover{border-color:#ddc5a5}.landing-chat-suggestion-card img{object-fit:cover;border:1px solid #a7826426;border-radius:10px;width:48px;height:48px}.landing-chat-suggestion-info{flex:1;min-width:0}.landing-chat-suggestion-info strong{color:#5a3a30;white-space:nowrap;text-overflow:ellipsis;font-size:14px;display:block;overflow:hidden}.landing-chat-suggestion-info span{color:#6e453b;font-size:12px;font-weight:700}.landing-chat-suggestion-btn{color:#fff;cursor:pointer;white-space:nowrap;background:#6e453b;border:0;border-radius:8px;padding:6px 14px;font-size:12px;font-weight:700;transition:all .2s}.landing-chat-suggestion-btn:hover{background:#5a3a30;box-shadow:0 2px 8px #5c3d2e33}.landing-chat-quick-prompts{flex-wrap:wrap;gap:8px;padding:8px 4px;display:flex}.landing-chat-quick-btn{color:#6e453b;cursor:pointer;background:0 0;border:1px solid #a7826459;border-radius:20px;padding:6px 14px;font-size:12px;font-weight:600;transition:all .2s}.landing-chat-quick-btn:hover{color:#5a3a30;background:#f5ede0;border-color:#6e453b}.landing-chat-composer{background:#fdf8f4;border-top:1px solid #a7826426;align-items:center;gap:10px;padding:12px 16px;display:flex}.landing-chat-input{border-radius:var(--radius-pill);color:#5a3a30;background:#fff;border:1px solid #a782644d;outline:none;flex:1;padding:10px 18px;font-size:14px;transition:border-color .2s}.landing-chat-input::placeholder{color:#6e453b66}.landing-chat-input:focus{border-color:#6e453b;box-shadow:0 0 0 3px #6e453b14}.landing-chat-send{color:#fff;cursor:pointer;background:linear-gradient(135deg,#6e453b 0%,#5a3a30 100%);border:0;border-radius:50%;flex-shrink:0;place-items:center;width:40px;height:40px;transition:all .2s;display:grid}.landing-chat-send:hover{transform:scale(1.05);box-shadow:0 4px 12px #5c3d2e4d}.landing-chat-send:disabled{opacity:.4;cursor:not-allowed}.landing-chat-typing{padding:var(--space-3);align-self:flex-start;gap:4px;display:flex}.landing-chat-typing span{background:var(--color-muted);border-radius:50%;width:8px;height:8px;animation:1s infinite dot-typing}.landing-chat-typing span:nth-child(2){animation-delay:.2s}.landing-chat-typing span:nth-child(3){animation-delay:.4s}@media (width<=768px){.landing-chat-fab{gap:8px;padding:10px 16px;font-size:13px;bottom:16px;right:16px}.landing-chat-fab-icon{width:24px;height:24px}.landing-chat-panel{width:100vw;height:100dvh;max-height:none;box-shadow:none;border:none;border-radius:0;animation:none;inset:0}.landing-chat-header{padding:16px 20px;padding-top:max(16px, env(safe-area-inset-top));border-radius:0}.landing-chat-body{flex:1;min-height:0;padding:16px}.landing-chat-composer{padding:12px 16px;padding-bottom:max(12px, env(safe-area-inset-bottom))}.landing-chat-input{padding:12px 18px;font-size:16px}.landing-chat-quick-prompts{padding:8px}.landing-chat-quick-btn{padding:8px 16px;font-size:13px}.landing-chat-msg{max-width:88%;padding:12px 16px}.landing-chat-suggestion-card{padding:12px}}.landing-footer{background:var(--vian-footer-bg);color:#fff;position:relative;overflow:hidden}.landing-footer-bg{opacity:.06;pointer-events:none;background-image:url(https://images.unsplash.com/photo-1414235077428-338989a2e8c0?w=1400&h=600&fit=crop&q=20);background-position:50%;background-size:cover;position:absolute;inset:0}.landing-footer-content{gap:var(--space-7);padding:var(--space-9) clamp(28px, 8vw, 140px);grid-template-columns:repeat(4,1fr);display:grid;position:relative}.landing-footer h4{margin:0 0 var(--space-4);font-family:var(--font-display);font-size:var(--text-lg);color:var(--vian-gold)}.landing-footer p,.landing-footer li{color:#ede4d5cc;font-size:var(--text-sm);line-height:var(--leading-relaxed);margin:var(--space-2) 0}.landing-footer ul{margin:0;padding:0;list-style:none}.landing-footer a{color:#ede4d5e6;transition:color var(--duration-fast) var(--ease-standard);text-decoration:none}.landing-footer a:hover{color:var(--vian-gold)}.landing-footer-map{padding:0 clamp(28px, 8vw, 140px) var(--space-4);position:relative}.landing-footer-map iframe{border-radius:var(--radius-md);filter:sepia(.2)saturate(.8);border:0;width:100%;height:250px}.landing-footer-bottom{padding:var(--space-5) clamp(28px, 8vw, 140px);font-size:var(--text-xs);color:#ede4d580;border-top:1px solid #7e564d;justify-content:space-between;align-items:center;display:flex;position:relative}.landing-footer-social{align-items:center;gap:12px;display:flex}.landing-social-icon{width:42px;height:42px;color:var(--vian-footer-bg);background:#fff;border-radius:50%;justify-content:center;align-items:center;text-decoration:none;transition:all .25s;display:flex;box-shadow:0 2px 8px #0000001a}.landing-social-icon:hover{background:var(--vian-gold);color:var(--vian-brown);transform:translateY(-2px);box-shadow:0 4px 16px #00000026}.landing-social-icon svg{width:20px;height:20px}.landing-page :is(a,button):focus-visible{outline:3px solid var(--color-cyan);outline-offset:4px}.landing-page :is(a,button){touch-action:manipulation;-webkit-tap-highlight-color:#08bcef2e}.landing-page [data-reveal]{opacity:0;transition:opacity .6s var(--ease-decelerate), transform .6s var(--ease-decelerate);transition-delay:calc(var(--reveal-index,0) * 80ms);transform:translateY(24px)}.landing-page [data-reveal].is-visible{opacity:1;transform:none}@media (width<=1024px){.landing-about{grid-template-columns:1fr}.landing-about-image{aspect-ratio:16/9}.signature-list{grid-template-columns:repeat(2,1fr)}.landing-promos,.landing-steps{grid-template-columns:1fr}.landing-footer-content{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.landing-header-inner{padding:max(8px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) 8px max(12px, env(safe-area-inset-left));gap:8px;overflow:visible}.landing-brand{gap:8px;min-width:0}.landing-brand-logo{width:40px;height:40px}.landing-brand-text{min-width:0}.landing-brand-text strong{white-space:nowrap;font-size:.92rem;line-height:1.05}.landing-brand-text small{display:none}.landing-menu-toggle{border-color:#ffffff73;flex:0 0 44px}.landing-header.scrolled .landing-menu-toggle{border-color:var(--brand-clay-line);color:var(--brand-chestnut)}.landing-nav{display:none}.landing-nav.open{top:100%;left:max(12px, env(safe-area-inset-left));right:max(12px, env(safe-area-inset-right));background:var(--color-card);border:1px solid var(--color-border-light);border-radius:0 0 var(--radius-lg) var(--radius-lg);padding:var(--space-4);box-shadow:var(--elevation-3);animation:fade-in-up var(--duration-base) var(--ease-decelerate) both;z-index:100;flex-direction:column;display:flex;position:absolute}.landing-nav.open a{color:var(--brand-chestnut);width:100%;min-height:44px;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);align-items:center;display:flex}.landing-menu-toggle{display:flex}.landing-hero{align-items:flex-end;min-height:100svh}.landing-hero-copy{width:auto;margin:0;padding:100px 22px 60px}.landing-hero h1{font-size:clamp(36px,10vw,50px)}.landing-hero-actions{display:grid}.landing-button{width:100%}.landing-section{padding:var(--space-8) var(--space-5)}.landing-section-heading{align-items:flex-start;gap:var(--space-4);flex-direction:column}.signature-list{grid-template-columns:1fr}.landing-about-stats{gap:var(--space-2);grid-template-columns:repeat(3,1fr)}.landing-footer-content{gap:var(--space-5);padding-inline:var(--space-5);grid-template-columns:1fr}.landing-footer-map{padding-inline:var(--space-5)}.landing-footer-bottom{gap:var(--space-3);text-align:center;padding-inline:var(--space-5);flex-direction:column}.landing-chat-panel{border-radius:var(--radius-xl) var(--radius-xl) 0 0;width:100%;max-height:85vh;bottom:0;right:0}.landing-chat-fab{bottom:var(--space-4);right:var(--space-4)}.landing-toast{text-align:center;max-width:calc(100vw - 24px);bottom:max(84px, calc(68px + env(safe-area-inset-bottom)))!important;white-space:normal!important}}@media (width<=380px){.landing-brand-text strong{font-size:.78rem}.landing-header-actions{gap:4px}.landing-language-switcher button{min-width:42px}.landing-section{padding-inline:16px}.landing-about-stats{grid-template-columns:1fr}.landing-footer-content,.landing-footer-map,.landing-footer-bottom{padding-inline:16px}}@media (prefers-reduced-motion:reduce){.landing-page *,.landing-page :before,.landing-page :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.landing-page [data-reveal]{opacity:1;transform:none}.landing-hero-slide{transition:opacity .01ms!important}.landing-chat-fab{animation:none}}.typewriter-subtext{color:var(--vian-gold);border-bottom:2px dashed #c9a96e80;padding-bottom:1px;font-weight:700;display:inline-block}.typewriter-cursor{color:var(--vian-gold);margin-left:2px;font-weight:200;animation:.8s step-end infinite typewriter-blink}@keyframes typewriter-blink{0%,to{color:#0000}50%{color:var(--vian-gold)}}.landing-hero-promo-ticker{height:38px;padding:0 var(--space-4);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:var(--radius-pill);margin-bottom:var(--space-4);background:#ffffff26;border:1px solid #ffffff40;align-items:center;display:inline-flex;overflow:hidden;box-shadow:0 4px 15px #0000000d}.landing-hero-promo-text{font-size:var(--text-xs);color:var(--vian-gold);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;font-weight:700;transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1);display:inline-block}.landing-hero-promo-text.slide-in{opacity:1;transform:translateY(0)}.landing-hero-promo-text.slide-out{opacity:0;transform:translateY(-20px)}.landing-gallery-grid{gap:var(--space-5);margin-top:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(320px,1fr));display:grid}.landing-gallery-item{border-radius:var(--radius-xl);aspect-ratio:3/2;border:1px solid var(--vian-divider);position:relative;overflow:hidden;box-shadow:0 4px 20px #5c3d2e1a}.landing-gallery-item img{object-fit:cover;width:100%;height:100%;transition:transform var(--duration-slower) var(--ease-standard)}.landing-gallery-item:hover img{transform:scale(1.06)}.landing-gallery-overlay{padding:var(--space-5);opacity:0;transition:opacity var(--duration-base) var(--ease-standard);background:linear-gradient(#3a251800 40%,#3a2518bf 100%);align-items:flex-end;display:flex;position:absolute;inset:0}.landing-gallery-item:hover .landing-gallery-overlay{opacity:1}.landing-gallery-overlay span{color:#fff;font-family:var(--font-display);font-size:var(--text-lg);text-shadow:0 1px 3px #0000004d;font-weight:500}.landing-media-banner{background:var(--vian-sand);border-radius:var(--radius-xl);border:1px dashed var(--vian-divider);margin-top:var(--space-4);grid-template-columns:1fr 1fr;display:grid;overflow:hidden;box-shadow:0 4px 20px #5c3d2e14}.landing-media-content{padding:var(--space-8);justify-content:center;align-items:flex-start;gap:var(--space-4);flex-direction:column;display:flex}.landing-media-content h2{margin:0;font-size:clamp(24px,2.5vw,36px);line-height:1.2}.landing-media-content p{color:var(--vian-brown-light);font-style:italic;font-size:var(--text-base);line-height:var(--leading-relaxed);margin:0}.landing-media-video-placeholder{aspect-ratio:16/10;position:relative;overflow:hidden}.landing-media-video-placeholder img{object-fit:cover;width:100%;height:100%}.play-button-icon{background:var(--vian-gold);width:68px;height:68px;color:var(--vian-brown-dark);cursor:pointer;transition:all var(--duration-fast) var(--ease-standard);z-index:2;border-radius:50%;place-items:center;font-size:24px;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 4px 20px #c9a96e66}.landing-media-video-placeholder:hover .play-button-icon{color:var(--vian-brown);background:#fff;transform:translate(-50%,-50%)scale(1.1)}@media (width<=800px){.landing-media-banner{grid-template-columns:1fr}.landing-media-content{padding:var(--space-6)}.landing-hero-copy{width:90%;margin-right:var(--space-5);text-align:center}.hero-script-text{font-size:clamp(48px,12vw,80px)}.hero-sub-heading{font-size:clamp(16px,4vw,24px)}.landing-hero-dots{bottom:30px}}.landing-testimonials-vian{text-align:center;background:var(--vian-beige);padding:clamp(60px,8vw,120px) clamp(28px,8vw,140px);position:relative;overflow:hidden}.landing-testimonials-vian-bg{opacity:.08;pointer-events:none;background-image:url(https://images.unsplash.com/photo-1517248135467-4c7edcad34c4?w=1400&h=600&fit=crop&q=20);background-position:50%;background-size:cover;position:absolute;inset:0}.landing-testimonials-vian-heading{font-family:var(--font-display);color:var(--vian-brown);text-transform:uppercase;letter-spacing:1.2px;margin:0 0 clamp(40px,5vw,70px);font-size:clamp(28px,3.5vw,44px);font-weight:700;position:relative}.landing-testimonials-vian-content{flex-direction:column;align-items:center;max-width:700px;margin:0 auto;display:flex;position:relative}.landing-testimonials-vian-avatar{object-fit:cover;width:100px;height:100px;margin-bottom:var(--space-5);border:3px solid #fff9;border-radius:50%;box-shadow:0 4px 15px #6e453b26}.landing-testimonials-vian-quote{font-family:var(--font-ui);font-size:14px;font-weight:500;line-height:var(--leading-relaxed);color:var(--vian-brown-dark);border:none;margin:20px 0 25px;padding:0;font-style:normal}.landing-testimonials-vian-cite{font-family:var(--font-display);color:var(--vian-brown);text-transform:uppercase;letter-spacing:1.2px;font-size:20px;font-style:normal;font-weight:600}.landing-section-heading--centered{text-align:center;display:block}.landing-section-heading--centered h2{margin:0 auto}.landing-promo-vian-section{padding:clamp(48px,6vw,80px) clamp(28px,8vw,100px);position:relative;overflow:hidden}.landing-promo-vian-section:before{content:"";z-index:0;background:linear-gradient(#5a3a30d9 0%,#3d2b1fe0 100%),url(/album-images/06-phong-vip.webp) 50%/cover no-repeat;position:absolute;inset:0}.landing-promo-vian-section>*{z-index:1;position:relative}.landing-promo-vian-section .landing-vian-section-title{background:0 0;border-bottom:none}.landing-promo-vian-section .landing-vian-section-title h2{color:#e8c870;text-shadow:0 2px 16px #00000080,0 0 40px #c4a35a4d}.landing-promo-vian-grid{grid-template-columns:repeat(3,1fr);gap:clamp(16px,2vw,28px);max-width:1200px;margin:0 auto;display:grid}.landing-promo-vian-item{text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff0f;border:1px solid #c4a35a40;border-radius:16px;padding:0 0 clamp(16px,2vw,24px);transition:transform .35s,box-shadow .35s,border-color .35s;overflow:hidden}.landing-promo-vian-item:hover{border-color:var(--vian-gold,#c4a35a);transform:translateY(-6px);box-shadow:0 16px 48px #0000004d}.landing-promo-vian-frame{aspect-ratio:16/10;width:100%;position:relative;overflow:hidden}.landing-promo-vian-frame img{object-fit:cover;width:100%;height:100%;transition:transform .5s cubic-bezier(.25,.46,.45,.94)}.landing-promo-vian-item:hover .landing-promo-vian-frame img{transform:scale(1.08)}.landing-promo-vian-badge{color:var(--vian-brown-dark,#3d2b1f);font-family:var(--font-display,"Playfair Display", serif);letter-spacing:1px;background:linear-gradient(135deg,#c4a35a,#e8c870);border-radius:20px;padding:6px 14px;font-size:14px;font-weight:800;position:absolute;top:12px;right:12px;box-shadow:0 4px 12px #c4a35a66}.landing-promo-vian-item h3{font-family:var(--font-display,"Playfair Display", serif);color:#fff;letter-spacing:.5px;margin:clamp(12px,1.5vw,18px) clamp(12px,2vw,20px) 6px;font-size:clamp(16px,1.6vw,20px);font-weight:700}.landing-promo-vian-item p{font-family:var(--font-body,"Be Vietnam Pro", sans-serif);color:#ede4d5bf;margin:0 clamp(12px,2vw,20px);font-size:clamp(12px,1.1vw,14px);line-height:1.6}@media (width<=900px){.landing-promo-vian-grid{grid-template-columns:1fr;max-width:420px}}.landing-section--cta{color:#fff;text-align:center;background:linear-gradient(135deg,#5a3a30 0%,#6e453b 60%,#8b6f5e 100%)}.landing-section--cta .landing-eyebrow{color:#ddc5a5cc}.landing-cta-title{color:#fff;max-width:600px;margin:0 auto;font-size:clamp(28px,3.5vw,48px)}.landing-cta-sub{margin:var(--space-4) auto 0;color:#ede4d5d9;max-width:500px;line-height:var(--leading-relaxed)}.landing-cta-actions{justify-content:center;gap:var(--space-4);margin-top:var(--space-6);flex-wrap:wrap;display:flex}.landing-toast{z-index:80;padding:var(--space-3) var(--space-5);background:var(--vian-brown-dark);color:#fff;border-radius:var(--radius-pill);box-shadow:var(--elevation-3);font-size:var(--text-sm);white-space:nowrap;animation:toast-in var(--duration-slow) var(--ease-emphasized) both;font-weight:600;position:fixed;bottom:100px;left:50%;transform:translate(-50%)}.landing-inline-icon{vertical-align:-2px;display:inline}.landing-vian-section-title--flush{border:none;padding:0 0 clamp(30px,4vw,50px)}.landing-vian-section-title--on-dark{background:0 0}.landing-vian-section-title--on-dark h2{color:#fff}.landing-album-cta{justify-content:center;margin-top:clamp(24px,3vw,40px);display:flex;position:relative}.landing-button--brown{background:var(--vian-brown);color:#fff;letter-spacing:1.2px}.landing-eyebrow--warning{color:var(--color-warning)}.landing-footer-note{margin-top:var(--space-2);font-size:var(--text-xs);color:var(--color-warning)}.landing-footer-branch{margin-bottom:var(--space-2);font-size:var(--text-sm)}.landing-footer-branch--last{font-size:var(--text-sm)}.landing-footer-hours-note{font-size:var(--text-xs);opacity:.8}.landing-footer-link{color:inherit}.landing-footer-tel{color:inherit;text-decoration:none}.album-hero{justify-content:center;align-items:center;min-height:420px;display:flex;position:relative;overflow:hidden}.album-hero-bg{filter:grayscale(.25)contrast(.92);background:linear-gradient(#5a3a3080 0%,#5a3a30d1 100%),url(/album-images/02-khong-gian-tang-1.webp) 50%/cover no-repeat;position:absolute;inset:0}.album-hero-content{text-align:center;max-width:700px;padding:80px 24px 56px;position:relative}.album-breadcrumb{color:#ede4d5e6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff1f;border-radius:20px;align-items:center;gap:6px;margin-bottom:24px;padding:7px 20px;font-size:13px;font-weight:600;text-decoration:none;transition:background .2s;display:inline-flex}.album-breadcrumb:hover{color:#fff;background:#ffffff38}.album-hero-content h1{font-family:var(--font-display-vian,"Playfair Display", serif);color:#fff;text-transform:uppercase;letter-spacing:5px;text-shadow:0 4px 24px #00000059;margin:0 0 16px;font-size:clamp(34px,5vw,60px);font-weight:800}.album-hero-content p{font-family:var(--font-body-vian,"Be Vietnam Pro", sans-serif);color:#ede4d5d9;margin:0;font-size:clamp(14px,1.4vw,17px);line-height:1.7}.album-hero:after{content:"";background:linear-gradient(90deg, transparent, var(--vian-gold,#c4a35a), transparent);opacity:.6;height:6px;position:absolute;bottom:-1px;left:0;right:0}.album-container{max-width:1200px;margin:0 auto;padding:clamp(48px,6vw,80px) clamp(16px,4vw,40px)}.album-section-title{text-align:center;margin-bottom:clamp(28px,4vw,44px)}.album-section-title h2{font-family:var(--font-display-vian,"Playfair Display", serif);color:var(--vian-brown,#5a3a30);text-transform:uppercase;letter-spacing:2.5px;margin:0 0 12px;font-size:clamp(22px,3vw,34px);font-weight:700}.album-section-title p{font-family:var(--font-body-vian,"Be Vietnam Pro", sans-serif);color:var(--vian-brown-dark,#3d2b1f);opacity:.65;margin:0;font-size:clamp(13px,1.2vw,15px)}.album-filters{flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:clamp(28px,4vw,40px);display:flex}.album-filter-btn{border:1.5px solid var(--vian-brown,#5a3a30);color:var(--vian-brown,#5a3a30);font-family:var(--font-body-vian,"Be Vietnam Pro", sans-serif);cursor:pointer;letter-spacing:.3px;background:0 0;border-radius:24px;padding:8px 20px;font-size:13px;font-weight:600;transition:all .25s}.album-filter-btn:hover{background:#5a3a3014}.album-filter-btn.active{background:var(--vian-brown,#5a3a30);color:#fff;border-color:var(--vian-brown,#5a3a30);box-shadow:0 4px 16px #5a3a3040}.album-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.album-card{cursor:pointer;background:#f9f4ed;border-radius:12px;margin:0;transition:transform .35s,box-shadow .35s;position:relative;overflow:hidden;box-shadow:0 2px 12px #5a3a3014}.album-card:hover{transform:translateY(-4px);box-shadow:0 12px 36px #5a3a302e}.album-card:focus-visible{outline:3px solid var(--vian-gold,#c4a35a);outline-offset:2px}.album-card-img{aspect-ratio:4/3;width:100%;position:relative;overflow:hidden}.album-card-img img{object-fit:cover;width:100%;height:100%;transition:transform .5s cubic-bezier(.25,.46,.45,.94)}.album-card:hover .album-card-img img{transform:scale(1.06)}.album-card-overlay{opacity:0;color:#fff;background:#5a3a3059;justify-content:center;align-items:center;transition:opacity .3s;display:flex;position:absolute;inset:0}.album-card:hover .album-card-overlay{opacity:1}.album-card figcaption{font-family:var(--font-body-vian,"Be Vietnam Pro", sans-serif);color:var(--vian-brown,#5a3a30);text-align:center;letter-spacing:.3px;padding:12px 16px;font-size:13px;font-weight:600}.album-lightbox{z-index:99999;background:#000000f2;justify-content:center;align-items:center;animation:.3s albumLightboxIn;display:flex;position:fixed;inset:0}@keyframes albumLightboxIn{0%{opacity:0}to{opacity:1}}.album-lightbox-close{color:#fff;cursor:pointer;z-index:2;background:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:22px;transition:background .2s;display:flex;position:absolute;top:20px;right:24px}.album-lightbox-close:hover{background:#ffffff40}.album-lightbox-nav{color:#fff;cursor:pointer;z-index:2;background:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;width:54px;height:54px;font-size:32px;transition:background .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.album-lightbox-nav:hover{background:#ffffff38}.album-lightbox-nav.prev{left:24px}.album-lightbox-nav.next{right:24px}.album-lightbox-content{flex-direction:column;align-items:center;max-width:min(90vw,1100px);max-height:85vh;display:flex}.album-lightbox-content img{object-fit:contain;border-radius:10px;max-width:100%;max-height:75vh;animation:.35s cubic-bezier(.16,1,.3,1) albumImgIn;box-shadow:0 20px 60px #00000080}@keyframes albumImgIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.album-lightbox-caption{font-family:var(--font-body-vian,"Be Vietnam Pro", sans-serif);color:#ffffffe6;text-align:center;margin:16px 0 0;font-size:15px;font-weight:600}.album-lightbox-caption span{color:#ffffff80;margin-left:8px;font-size:13px;font-weight:400}@media (width<=900px){.album-grid{grid-template-columns:repeat(2,1fr);gap:12px}.album-hero{min-height:300px}}@media (width<=560px){.album-grid{grid-template-columns:1fr;gap:12px}.album-hero{min-height:240px}.album-hero-content h1{letter-spacing:2px}.album-lightbox-nav{width:40px;height:40px;font-size:24px}.album-lightbox-nav.prev{left:8px}.album-lightbox-nav.next{right:8px}.album-filters{gap:6px}.album-filter-btn{min-height:44px;padding:8px 14px;font-size:12px}.album-container{padding-inline:14px}.album-lightbox-close{width:44px;height:44px}}.cmc-customer-page{--vian-green:var(--brand-chestnut-dark);--vian-green-light:var(--brand-chestnut);--vian-green-soft:#8a5848;--vian-gold:var(--brand-brass);--vian-gold-light:#d2ad70;--vian-cream:var(--brand-ivory);--vian-warm-white:var(--brand-paper);--vian-brown:var(--brand-ink);--vian-brown-light:var(--brand-chestnut-dark);--vian-muted:var(--brand-muted);--vian-red:var(--brand-danger);--vian-border:var(--brand-clay-line);--vian-gradient-hero:linear-gradient(135deg, #5a3a30 0%, #6e453b 40%, #7a4f42 70%, #a07060 100%);--vian-gradient-warm:linear-gradient(180deg, #fdf8f0 0%, #fffbf5 50%, #fff9f0 100%);--vian-gradient-card:linear-gradient(180deg, #5a3a3008 0%, #c4a35a05 100%);--font-display-vian:var(--brand-font-display);--font-body-vian:var(--brand-font-body);background:var(--vian-gradient-warm);color:var(--vian-brown);gap:24px;min-height:100vh;display:grid;overflow-x:hidden}.cmc-hero{background:var(--vian-gradient-hero);color:#fff;border-radius:0;grid-template-columns:minmax(0,1fr) minmax(300px,.8fr);min-height:480px;display:grid;position:relative;overflow:hidden}.cmc-menu-hero-copy{z-index:2;flex-direction:column;justify-content:center;padding:clamp(32px,6vw,80px);display:flex;position:relative}.cmc-menu-hero-copy .cmc-kicker{letter-spacing:.12em;text-transform:uppercase;color:var(--vian-gold-light);margin:0 0 12px;font-size:12px;font-weight:800}.cmc-menu-hero-copy h2{font-family:var(--font-display-vian);color:#fff;margin:0;font-size:clamp(36px,5vw,52px);font-weight:700;line-height:1.15}.cmc-menu-hero-copy h2 span{color:var(--vian-gold-light);font-style:italic}.cmc-menu-hero-copy p{color:#ffffffe6;max-width:520px;margin:20px 0 0;font-size:16px;line-height:1.65}.cmc-hero-actions{flex-wrap:wrap;align-items:center;gap:16px;margin-top:32px;display:flex}.cmc-primary-link{background:var(--vian-gold);min-height:48px;color:var(--vian-brown);font-family:var(--font-body-vian);border-radius:12px;align-items:center;gap:10px;padding:0 28px;font-size:15px;font-weight:700;text-decoration:none;transition:all .25s;display:inline-flex;box-shadow:0 8px 24px #c4a35a59}.cmc-primary-link:hover{background:var(--vian-gold-light);transform:translateY(-2px);box-shadow:0 12px 32px #c4a35a73}.cmc-table-badge{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;background:#ffffff26;border:1px solid #ffffff40;border-radius:999px;align-items:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:700;display:inline-flex}.cmc-hero-collage{grid-template-rows:repeat(2,1fr);grid-template-columns:repeat(2,1fr);gap:12px;padding:20px;display:grid;position:relative;overflow:hidden}.cmc-hero-collage:before{content:"";z-index:1;background:linear-gradient(90deg,#5a3a3080 0%,#0000 30%);position:absolute;inset:0}.cmc-hero-collage img{object-fit:cover;border-radius:16px;width:100%;height:100%;transition:transform .3s;box-shadow:0 12px 32px #00000040}.cmc-hero-collage img:first-child{grid-column:span 2;height:180px}.cmc-hero-collage img:hover{transform:scale(1.02)}.cmc-menu-toolbar{gap:16px;padding:0 clamp(16px,4vw,40px);display:grid}.cmc-search-row{border:1px solid var(--vian-border);background:#fff;border-radius:16px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 20px;display:grid;box-shadow:0 4px 16px #2d501614}.cmc-search-input{color:var(--vian-brown);font-family:var(--font-body-vian);background:0 0;border:none;outline:none;width:100%;min-width:0;font-size:15px}.cmc-search-input::placeholder{color:var(--vian-muted)}.cmc-result-count{color:var(--vian-green);white-space:nowrap;font-size:13px;font-weight:700}.cmc-inline-error{color:var(--vian-red);border-left:4px solid var(--vian-red);background:#c445361a;border-radius:12px;padding:12px 20px;font-size:14px;font-weight:500}.cmc-menu-layout{grid-template-columns:1fr;align-items:start;gap:32px;padding:0 clamp(16px,4vw,40px);display:grid}.cmc-menu-sections{gap:32px;min-width:0;display:grid}.cmc-menu-master-title{border:1px solid var(--vian-border);background:#fff;border-radius:20px;justify-content:space-between;align-items:flex-end;padding:24px 28px;display:flex;box-shadow:0 8px 32px #2d501614}.ordering-cart-dock{z-index:80;color:#fffaf3;background:#643e31;border:1px solid #fff3;border-radius:20px;grid-template-columns:auto auto;align-items:center;min-width:min(360px,100vw - 32px);padding:14px 16px;text-decoration:none;display:grid;position:fixed;bottom:clamp(24px,4vw,42px);right:clamp(18px,3vw,42px);box-shadow:0 18px 44px #44271c47}.ordering-cart-dock-count{flex-direction:column;line-height:1.15;display:flex}.ordering-cart-dock-count small{color:#fffaf3b3;margin-top:3px}.ordering-cart-dock-total{justify-self:end;font-size:1.08rem}.ordering-cart-dock-action{color:#f0cc7d;text-align:right;border-top:1px solid #ffffff2e;grid-column:1/-1;margin-top:10px;padding-top:10px;font-weight:700}@media (width<=720px){.ordering-cart-dock{right:12px;bottom:calc(78px + env(safe-area-inset-bottom,0px));border-radius:16px;min-width:0;left:12px}}.cmc-menu-master-title p{letter-spacing:.12em;text-transform:uppercase;color:var(--vian-green);margin:0 0 8px;font-size:11px;font-weight:800}.cmc-menu-master-title h3{font-family:var(--font-display-vian);color:var(--vian-brown);margin:0;font-size:clamp(24px,3vw,32px);font-weight:700}.cmc-menu-master-title>span{background:var(--vian-cream);color:var(--vian-green);border-radius:999px;padding:8px 16px;font-size:13px;font-weight:700}.cmc-menu-category-section{border:1px solid var(--vian-border);background:#fff;border-radius:24px;gap:20px;padding:clamp(20px,3vw,32px);display:grid;box-shadow:0 12px 40px #2d50160f}.cmc-menu-category-heading{border-bottom:2px solid var(--vian-border);justify-content:space-between;align-items:flex-end;gap:16px;padding-bottom:16px;display:flex}.cmc-menu-category-heading p{letter-spacing:.12em;text-transform:uppercase;color:var(--vian-gold);margin:0 0 8px;font-size:11px;font-weight:800}.cmc-menu-category-heading h4{font-family:var(--font-display-vian);color:var(--vian-brown);margin:0;font-size:clamp(24px,3vw,32px);font-weight:700;line-height:1.2}.cmc-menu-category-heading>span{background:var(--vian-cream);color:var(--vian-green);border-radius:999px;padding:8px 14px;font-size:13px;font-weight:700}.cmc-menu-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px;display:grid}@media (width<=640px){.cmc-menu-grid{grid-template-columns:1fr}}.cmc-menu-card{border:1px solid var(--vian-border);background:#fff;border-radius:20px;grid-template-rows:auto 1fr auto;transition:all .3s;display:grid;overflow:hidden;box-shadow:0 4px 16px #2d50160a}.cmc-menu-card:hover{border-color:var(--vian-gold);transform:translateY(-4px);box-shadow:0 16px 48px #2d50161f}.cmc-menu-card.disabled{opacity:.65;filter:grayscale(.4)}.cmc-card-image-wrap{aspect-ratio:4/3;position:relative;overflow:hidden}.cmc-card-image{object-fit:cover;width:100%;height:100%;transition:transform .4s}.cmc-menu-card:hover .cmc-card-image{transform:scale(1.08)}.cmc-availability{text-transform:uppercase;letter-spacing:.05em;border-radius:999px;padding:6px 12px;font-size:11px;font-weight:700;position:absolute;top:12px;right:12px}.cmc-availability.ready{background:var(--vian-green);color:#fff}.cmc-availability.muted{color:#fff;background:#8b7355e6}.cmc-card-content{flex-direction:column;flex:1;gap:12px;padding:20px;display:flex}.cmc-card-category{letter-spacing:.12em;text-transform:uppercase;color:var(--vian-gold);margin:0;font-size:11px;font-weight:800}.cmc-card-content h3{font-family:var(--font-display-vian);color:var(--vian-brown);margin:0;font-size:18px;font-weight:700;line-height:1.3}.cmc-card-content>p{color:var(--vian-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:13px;line-height:1.55;display:-webkit-box;overflow:hidden}.cmc-tag-row{flex-wrap:wrap;gap:8px;margin-top:auto;display:flex}.cmc-tag-row span{background:var(--vian-cream);color:var(--vian-brown-light);border:1px solid var(--vian-border);border-radius:999px;padding:4px 10px;font-size:11px;font-weight:600}.cmc-card-footer{border-top:1px solid var(--vian-border);justify-content:space-between;align-items:center;gap:12px;min-height:59px;margin-top:auto;padding-top:14px;display:flex}.cmc-card-price{min-width:0;color:var(--vian-green);font-family:var(--font-body-vian);font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum" 1, "lnum" 1;letter-spacing:-.035em;white-space:nowrap;flex:auto;align-items:baseline;font-size:24px;font-weight:700;line-height:1;display:inline-flex}.cmc-card-price-value{display:inline-block}.cmc-card-price-unit{color:var(--vian-green);letter-spacing:.02em;margin-left:3px;font-size:.58em;font-weight:700;line-height:1;transform:translateY(-.24em)}.cmc-add-button{background:var(--vian-green);color:#fff;min-width:108px;height:44px;font-family:var(--font-body-vian);cursor:pointer;border:none;border-radius:12px;flex:none;justify-content:center;align-items:center;gap:7px;padding:0 20px;font-size:14px;font-weight:700;line-height:1;transition:all .25s;display:inline-flex;box-shadow:0 4px 12px #2d501640}.cmc-add-button-icon{flex:none;width:18px;height:18px;display:block}.cmc-add-button:hover:not(:disabled){background:var(--vian-green-light);transform:translateY(-2px);box-shadow:0 8px 20px #2d501659}.cmc-add-button:disabled{background:var(--vian-muted);cursor:not-allowed;box-shadow:none}.cmc-stepper{background:var(--vian-cream);border:2px solid var(--vian-gold);border-radius:12px;flex:none;align-items:center;gap:0;display:inline-flex;overflow:hidden}.cmc-stepper button{width:44px;height:44px;color:var(--vian-green);cursor:pointer;background:0 0;border:none;place-items:center;font-size:20px;font-weight:700;transition:all .2s;display:grid}.cmc-stepper button:hover{background:var(--vian-gold);color:var(--vian-brown)}.cmc-stepper span{text-align:center;min-width:40px;color:var(--vian-brown);font-size:16px;font-weight:700}.cmc-category-tab{border:1px solid var(--vian-border);color:var(--vian-muted);font-family:var(--font-body-vian);cursor:pointer;white-space:nowrap;background:#fff;border-radius:999px;flex:none;padding:10px 20px;font-size:13px;font-weight:600;transition:all .25s}.cmc-category-tab:hover{border-color:var(--vian-gold);color:var(--vian-brown)}.cmc-category-tab.active{background:var(--vian-green);color:#fff;border-color:var(--vian-green);box-shadow:0 4px 12px #5a3a3040}.cmc-cart-sidebar{border:1px solid var(--vian-border);background:#fff;border-radius:24px;gap:20px;max-height:calc(100vh - 120px);padding:28px;display:grid;position:sticky;top:80px;overflow-y:auto;box-shadow:0 12px 40px #5a3a300f}.cmc-cart-sidebar h3{font-family:var(--font-display-vian);color:var(--vian-brown);margin:0;font-size:24px;font-weight:700}.cmc-cart-sidebar>p{color:var(--vian-muted);margin:0;font-size:14px;line-height:1.5}.cmc-cart-submit{background:var(--vian-gold);width:100%;min-height:52px;color:var(--vian-brown);font-family:var(--font-body-vian);cursor:pointer;border:none;border-radius:16px;justify-content:center;align-items:center;gap:10px;padding:0 24px;font-size:16px;font-weight:700;transition:all .25s;display:flex;box-shadow:0 8px 24px #c4a35a4d}.cmc-cart-submit:hover{background:var(--vian-gold-light);transform:translateY(-2px);box-shadow:0 12px 32px #c4a35a73}.cmc-cart-item{border-bottom:1px solid var(--vian-border);grid-template-columns:48px 1fr auto;align-items:center;gap:12px;padding:12px 0;display:grid}.cmc-cart-item img{object-fit:cover;border-radius:12px;width:48px;height:48px}.cmc-cart-item-info strong{color:var(--vian-brown);font-size:14px;font-weight:600;display:block}.cmc-cart-item-info span{color:var(--vian-muted);font-size:12px}.cmc-table-context{background:var(--vian-cream);border:1px solid var(--vian-border);color:var(--vian-brown);border-radius:12px;align-items:center;gap:10px;padding:12px 20px;font-size:14px;font-weight:600;display:flex}.anim-scale-in{animation:.2s ease-out scaleIn}@keyframes scaleIn{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@media (width<=1024px){.cmc-hero{grid-template-columns:1fr;min-height:auto}.cmc-hero-collage{display:none}.cmc-cart-sidebar{max-height:none;position:static}}@media (width<=640px){.cmc-customer-page{gap:16px}.cmc-menu-hero-copy{padding:28px 18px 32px}.cmc-menu-hero-copy h2{font-size:28px}.cmc-menu-toolbar,.cmc-menu-layout{padding-inline:12px}.cmc-search-row{padding:10px 12px}.cmc-menu-master-title{align-items:flex-start;padding:18px 16px}.cmc-menu-category-section{border-radius:18px;padding:16px}.cmc-card-content{padding:16px}.cmc-cart-bar-icon{display:none}.cmc-cart-bar{gap:10px}.cmc-cart-bar-btn{min-height:44px}}@media (width<=360px){.cmc-card-footer{flex-direction:column;align-items:flex-start}.cmc-add-button,.cmc-stepper{width:100%}.cmc-stepper{justify-content:space-between}.cmc-cart-bar-text span{display:none}}.vian-why-section{padding:0 clamp(16px,4vw,40px)}.vian-why-header{text-align:center;margin-bottom:40px}.vian-why-header h2{font-family:var(--font-display-vian);color:var(--vian-brown);margin:0 0 12px;font-size:clamp(28px,3.5vw,38px);font-weight:700}.vian-why-header>p:last-child{color:var(--vian-muted);margin:0;font-size:15px;line-height:1.5}.vian-why-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px;display:grid}.vian-why-card{border:1px solid var(--vian-border);background:#fff;border-radius:20px;flex-direction:column;gap:16px;padding:32px 28px;transition:all .3s;display:flex;box-shadow:0 8px 24px #5a3a300a}.vian-why-card:hover{border-color:var(--vian-gold);transform:translateY(-4px);box-shadow:0 16px 40px #5a3a301a}.vian-why-icon{background:var(--vian-cream);width:56px;height:56px;color:var(--vian-green);border:1px solid var(--vian-border);border-radius:16px;justify-content:center;align-items:center;display:flex}.vian-why-card h4{font-family:var(--font-display-vian);color:var(--vian-brown);margin:0;font-size:18px;font-weight:700}.vian-why-card p{color:var(--vian-muted);margin:0;font-size:14px;line-height:1.55}.vian-testimonials{padding:0 clamp(16px,4vw,40px)}.vian-testimonials-header{text-align:center;margin-bottom:40px}.vian-testimonials-title{font-family:var(--font-display-vian);color:var(--vian-brown);margin:0 0 12px;font-size:clamp(28px,3.5vw,38px);font-weight:700}.vian-testimonials-subtitle{color:var(--vian-muted);margin:0;font-size:15px;line-height:1.5}.vian-testimonials-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;display:grid}.vian-testimonial-card{border:1px solid var(--vian-border);background:#fff;border-radius:20px;flex-direction:column;gap:16px;padding:28px;transition:all .3s;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 24px #5a3a300a}.vian-testimonial-card:hover{border-color:var(--vian-gold);transform:translateY(-4px);box-shadow:0 16px 40px #5a3a301a}.vian-testimonial-header{align-items:center;gap:14px;display:flex}.vian-testimonial-avatar{object-fit:cover;border:3px solid var(--vian-cream);border-radius:50%;width:52px;height:52px;box-shadow:0 4px 12px #5a3a301a}.vian-testimonial-info{flex-direction:column;gap:2px;display:flex}.vian-testimonial-name{font-family:var(--font-display-vian);color:var(--vian-brown);margin:0;font-size:16px;font-weight:700}.vian-testimonial-role{color:var(--vian-muted);margin:0;font-size:13px;font-weight:500}.vian-stars{gap:4px;display:flex}.vian-stars .star{color:var(--vian-border)}.vian-stars .star.filled{color:var(--vian-gold)}.vian-testimonial-text{color:var(--vian-brown-light);margin:0;font-size:15px;font-style:italic;line-height:1.65}.vian-testimonial-decor{color:var(--vian-cream);opacity:.6;position:absolute;top:20px;right:20px}.cmc-customer-page.has-cart-bar{padding-bottom:max(104px, calc(88px + env(safe-area-inset-bottom,0px)))}.cmc-cart-bar{bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:100;background:var(--vian-green);color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:22px;justify-content:space-between;align-items:center;gap:20px;width:min(92vw,680px);max-width:calc(100vw - 24px);padding:14px 20px 14px 16px;animation:.35s cubic-bezier(.16,1,.3,1) cartSlideUp;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 16px 48px #5a3a3059,inset 0 0 0 1px #ffffff1a}@keyframes cartSlideUp{0%{opacity:0;transform:translate(-50%)translateY(120%)}to{opacity:1;transform:translate(-50%)translateY(0)}}.cmc-cart-bar-info{align-items:center;gap:14px;min-width:0;display:flex}.cmc-cart-bar-icon{color:#fff;background:#ffffff26;border-radius:14px;flex:none;justify-content:center;align-items:center;width:44px;height:44px;display:flex;position:relative}.cmc-cart-bar-badge{background:var(--vian-gold);min-width:20px;height:20px;color:var(--vian-brown);border-radius:10px;justify-content:center;align-items:center;padding:0 6px;font-size:11px;font-weight:800;line-height:1;display:flex;position:absolute;top:-4px;right:-4px}.cmc-cart-bar-text{flex-direction:column;gap:2px;min-width:0;display:flex}.cmc-cart-bar-text span{color:#ffffffbf;white-space:nowrap;font-size:12px;font-weight:500}.cmc-cart-bar-text strong{font-family:var(--font-display-vian);color:#fff;letter-spacing:-.02em;font-size:20px;font-weight:700}.cmc-cart-bar-btn{background:var(--vian-gold);color:var(--vian-brown);font-family:var(--font-body-vian);cursor:pointer;white-space:nowrap;border:none;border-radius:14px;flex:none;align-items:center;gap:8px;padding:12px 24px;font-size:14px;font-weight:700;transition:all .2s;display:inline-flex;box-shadow:0 4px 16px #c4a35a59}.cmc-cart-bar-btn:hover{background:var(--vian-gold-light);transform:translateY(-1px);box-shadow:0 6px 20px #c4a35a80}.cmc-cart-bar-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}@media (width<=480px){.cmc-cart-bar{width:calc(100vw - 24px);bottom:calc(12px + env(safe-area-inset-bottom,0px));border-radius:18px;padding:12px 14px}.cmc-cart-bar-text strong{font-size:17px}.cmc-cart-bar-btn{padding:10px 16px;font-size:13px}.cmc-customer-page.has-cart-bar{padding-bottom:calc(88px + env(safe-area-inset-bottom,0px))}}.cmc-menu-category-tabs{scrollbar-width:none;gap:10px;padding:4px 0;display:flex;overflow-x:auto}.cmc-menu-category-tabs::-webkit-scrollbar{display:none}.cmc-menu-category-tabs button{border:1px solid var(--vian-border);color:var(--vian-muted);font-family:var(--font-body-vian);cursor:pointer;white-space:nowrap;background:#fff;border-radius:999px;flex:none;min-height:44px;padding:10px 20px;font-size:13px;font-weight:600;transition:all .25s}.cmc-menu-category-tabs button:hover{border-color:var(--vian-gold);color:var(--vian-brown)}.cmc-menu-category-tabs button.active{background:var(--vian-green);color:#fff;border-color:var(--vian-green);box-shadow:0 4px 12px #5a3a3040}@media (width<=768px){.vian-why-grid{grid-template-columns:repeat(2,1fr)}.vian-testimonials-grid{grid-template-columns:1fr}}@media (width<=480px){.vian-why-grid{grid-template-columns:1fr}}.vian-cta-section{background:var(--vian-gradient-hero);color:#fff;text-align:center;border-radius:28px;margin:0 clamp(16px,4vw,40px);padding:clamp(40px,6vw,72px) clamp(28px,5vw,64px);position:relative;overflow:hidden}.vian-cta-section:before{content:"";pointer-events:none;background:radial-gradient(circle at 20% 80%,#c4a35a33 0%,#0000 50%),radial-gradient(circle at 80% 20%,#ffffff14 0%,#0000 40%);position:absolute;inset:0}.vian-cta-content{z-index:1;flex-direction:column;align-items:center;gap:20px;max-width:600px;margin:0 auto;display:flex;position:relative}.vian-cta-content h2{font-family:var(--font-display-vian);color:#fff;margin:0;font-size:clamp(28px,4vw,40px);font-weight:700;line-height:1.2}.vian-cta-content p{color:#ffffffd9;max-width:480px;margin:0;font-size:16px;line-height:1.65}.vian-cta-button{background:var(--vian-gold);color:var(--vian-brown);font-family:var(--font-body-vian);border-radius:14px;align-items:center;gap:10px;margin-top:8px;padding:14px 32px;font-size:16px;font-weight:700;text-decoration:none;transition:all .25s;display:inline-flex;box-shadow:0 8px 28px #c4a35a66}.vian-cta-button:hover{background:var(--vian-gold-light);transform:translateY(-2px);box-shadow:0 12px 36px #c4a35a8c}.cmc-category-tabs{scrollbar-width:none;gap:10px;padding:4px 0;display:flex;overflow-x:auto}.cmc-category-tabs::-webkit-scrollbar{display:none}.cmc-chip{border:1px solid var(--vian-border);color:var(--vian-muted);font-family:var(--font-body-vian);cursor:pointer;white-space:nowrap;background:#fff;border-radius:999px;flex:none;padding:10px 20px;font-size:13px;font-weight:600;transition:all .25s}.cmc-chip:hover{border-color:var(--vian-gold);color:var(--vian-brown);background:var(--vian-cream)}.cmc-chip.active{background:var(--vian-green);color:#fff;border-color:var(--vian-green);box-shadow:0 4px 12px #5a3a3040}.cmc-table-badge.muted{background:var(--vian-cream);color:var(--vian-muted);font-family:var(--font-body-vian);border:1px solid var(--vian-border);border-radius:12px;padding:12px 20px;font-size:13px;font-weight:500;display:block}.cmc-cart-panel.side{border:1px solid var(--vian-border);background:#fff;border-radius:24px;align-content:start;gap:16px;max-height:calc(100vh - 120px);padding:28px;display:grid;position:sticky;top:80px;overflow-y:auto;box-shadow:0 12px 40px #5a3a300f}.cmc-cart-panel.side h3{font-family:var(--font-display-vian);color:var(--vian-brown);margin:0;font-size:22px;font-weight:700}.cmc-cart-panel.side>p{color:var(--vian-muted);margin:0;font-size:14px;line-height:1.5}.cmc-cart-list{gap:0;display:grid}.cmc-cart-list>p{color:var(--vian-muted);text-align:center;margin:0;padding:12px 0;font-size:14px}.cmc-cart-row{border-bottom:1px solid var(--vian-border);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.cmc-cart-row:last-child{border-bottom:none}.cmc-cart-row div{align-items:center;gap:8px;min-width:0;display:flex}.cmc-cart-row div strong{font-family:var(--font-body-vian);color:var(--vian-brown);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.cmc-cart-row div span{color:var(--vian-muted);background:var(--vian-cream);border-radius:6px;flex:none;padding:2px 8px;font-size:12px;font-weight:700}.cmc-cart-row>strong{font-family:var(--font-display-vian);color:var(--vian-green);flex:none;font-size:14px;font-weight:700}.cmc-cart-total{background:var(--vian-green);color:#fff;font-family:var(--font-display-vian);border-radius:16px;justify-content:space-between;align-items:center;padding:16px 20px;font-size:18px;font-weight:700;display:flex}.cmc-cart-total span{color:#ffffffd9;font-size:15px;font-weight:600}.cmc-secondary-link{background:var(--vian-gold);width:100%;min-height:52px;color:var(--vian-brown);font-family:var(--font-body-vian);cursor:pointer;border:none;border-radius:16px;justify-content:center;align-items:center;gap:10px;padding:0 24px;font-size:16px;font-weight:700;text-decoration:none;transition:all .25s;display:flex;box-shadow:0 8px 24px #c4a35a4d}.cmc-secondary-link:hover{background:var(--vian-gold-light);transform:translateY(-2px);box-shadow:0 12px 32px #c4a35a73}.cmc-empty-state{background:var(--vian-cream);color:var(--vian-muted);text-align:center;border:1px dashed var(--vian-border);border-radius:20px;grid-column:1/-1;justify-content:center;align-items:center;padding:48px 24px;font-size:15px;font-weight:500;display:flex}
