:root{font-family:Twemoji Country Flags,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#213547;background-color:#f5f5f5;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;min-height:100vh}h1,h2,h3,h4,h5,h6{line-height:1.2}button{font-family:inherit}:root{--mw-bg: #ffffff;--mw-text: #0f172a;--mw-muted: #475569;--mw-border: #e2e8f0;--mw-primary: #6366f1;--mw-primary-hover: #4f46e5;--mw-danger: #ef4444;--mw-danger-hover: #dc2626;--mw-shadow: 0 10px 30px rgba(15, 23, 42, .08)}.mw-role-badge{display:inline-flex;align-items:center;height:28px;padding:0 10px;border-radius:6px;font-size:12px;font-weight:600;white-space:nowrap;border:1px solid transparent;pointer-events:none;-webkit-user-select:none;user-select:none}.mw-role-badge--global-admin{background:#4338ca;color:#fff}.mw-role-badge--restaurant-admin{background:linear-gradient(135deg,#ec4899,#db2777);color:#fff}.mw-role-badge--waiter{background:#47556912;color:var(--mw-muted)}.mw-role-badge--customer{background:#10b98114;color:#065f46}.mw-mobile__role{margin:8px 0 0;align-self:flex-start}.mw-nav{position:sticky;top:0;z-index:1000;background:#ffffffeb;border-bottom:1px solid rgba(226,232,240,.6);backdrop-filter:saturate(180%) blur(10px);-webkit-backdrop-filter:saturate(180%) blur(10px);transition:transform .3s cubic-bezier(.22,1,.36,1);will-change:transform}.mw-nav--scrolled{box-shadow:var(--mw-shadow)}.mw-nav--hidden{transform:translateY(-100%)}.mw-nav__container{max-width:1200px;margin:0 auto;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;gap:16px}.mw-nav__brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--mw-primary);font-weight:600;letter-spacing:-.02em}.mw-nav__brandIcon{width:34px;height:34px;display:grid;place-items:center;border-radius:12px;background:#6366f11a;border:1px solid rgba(99,102,241,.18)}.mw-nav__brandText{font-size:18px}.mw-nav__links{display:flex;align-items:center;gap:18px}.mw-nav__link{text-decoration:none;color:var(--mw-muted);font-weight:600;font-size:14px;padding:8px 10px;border-radius:10px;transition:background .18s ease,color .18s ease}.mw-nav__link:hover{background:#0f172a0a;color:var(--mw-text)}.mw-nav__actions{display:flex;align-items:center;gap:10px}.mw-nav__auth{display:flex;align-items:center;gap:8px}.mw-btn{display:inline-flex;align-items:center;justify-content:center;height:40px;padding:0 14px;border-radius:6px;font-weight:400;font-size:14px;text-decoration:none;cursor:pointer;border:1px solid transparent;transition:transform .12s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease}.mw-btn:active{transform:translateY(1px)}.mw-btn--primary{background:var(--mw-primary);color:#fff;box-shadow:0 10px 24px #6366f140}.mw-btn--primary:hover{background:var(--mw-primary-hover)}.mw-btn--secondary{background:#fff;color:var(--mw-text);border-color:var(--mw-border)}.mw-btn--secondary:hover{box-shadow:0 10px 24px #0f172a0f;border-color:#6366f140}.mw-btn--ghost{background:transparent;color:var(--mw-text);border-color:transparent}.mw-btn--ghost:hover{background:#0f172a0a}.mw-btn--danger{background:#ef44441f;color:#b91c1c;border-color:#ef444438}.mw-btn--danger:hover{background:#ef44442e;border-color:#ef444459}.mw-iconBtn{width:40px;height:40px;border-radius:12px;border:1px solid var(--mw-border);background:#fff;display:inline-grid;place-items:center;cursor:pointer;transition:box-shadow .18s ease,border-color .18s ease,transform .12s ease}.mw-iconBtn:hover{box-shadow:0 10px 24px #0f172a0f;border-color:#6366f140}.mw-burger{display:none;width:40px;height:40px;border-radius:12px;border:1px solid var(--mw-border);background:#fff;cursor:pointer;padding:10px;gap:4px;flex-direction:column;justify-content:center;transition:box-shadow .18s ease,border-color .18s ease}.mw-burger span{display:block;height:2px;width:100%;background:var(--mw-text);border-radius:99px}.mw-burger:hover{box-shadow:0 10px 24px #0f172a0f;border-color:#6366f140}.mw-mobile{display:none}.mw-mobile__panel{max-width:1200px;margin:0 auto;padding:12px 18px 18px;border-top:1px solid rgba(226,232,240,.6);background:#ffffffeb;-webkit-backdrop-filter:saturate(180%) blur(10px);backdrop-filter:saturate(180%) blur(10px)}.mw-mobile__link{display:block;padding:10px 12px;border-radius:12px;color:var(--mw-text);text-decoration:none;font-weight:700}.mw-mobile__link:hover{background:#0f172a0a}.mw-mobile__divider{height:1px;background:#e2e8f0cc;margin:10px 0}.mw-mobile__btn{width:100%;margin-top:8px}@media(max-width:900px){.mw-nav__links{display:none}.mw-burger{display:inline-flex}.mw-iconBtn,.mw-nav__auth{display:none}.mw-mobile{display:block;max-height:0;overflow:hidden;transition:max-height .22s ease}.mw-mobile--open{max-height:520px}.mw-nav__actions .mw-btn{display:none}}.mw-btn--logout{display:inline-flex;align-items:center;gap:8px;background:transparent;color:#6b7280;border:1px solid transparent;transition:all .2s ease}.mw-btn--logout:hover{background:#ef444414;color:#ef4444;border-color:#ef444433}:root{--mw-bg: #ffffff;--mw-bg-soft: #f8fafc;--mw-text: #0f172a;--mw-muted: #475569;--mw-border: #e2e8f0;--mw-primary: #6366f1;--mw-primary-hover: #4f46e5;--mw-shadow-sm: 0 10px 24px rgba(15,23,42,.06);--mw-shadow-md: 0 18px 50px rgba(15,23,42,.1)}.mw-home{min-height:100vh;background:var(--mw-bg);color:var(--mw-text)}.mw-section{padding:72px 18px}.mw-section--alt{background:var(--mw-bg-soft);border-top:1px solid rgba(226,232,240,.7);border-bottom:1px solid rgba(226,232,240,.7)}.mw-section__container{max-width:1200px;margin:0 auto}.mw-section__title{font-size:clamp(28px,3vw,40px);letter-spacing:-.03em;margin:0 0 10px;text-align:center}.mw-section__subtitle{margin:0 auto 34px;max-width:680px;color:var(--mw-muted);text-align:center;font-size:16px;line-height:1.7}.mw-hero{position:relative;overflow:hidden;padding:68px 18px 34px;background:radial-gradient(900px 380px at 70% 35%,rgba(99,102,241,.22),transparent 60%),radial-gradient(700px 320px at 20% 20%,rgba(124,58,237,.18),transparent 60%),linear-gradient(180deg,#f8fafce6,#fff)}.mw-hero__container{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1.1fr .9fr;gap:34px;align-items:center}.mw-hero__title{font-size:clamp(36px,4vw,56px);line-height:1.05;letter-spacing:-.04em;margin:0 0 14px}.mw-hero__subtitle{margin:0 0 18px;color:var(--mw-muted);font-size:16px;line-height:1.8;max-width:560px}.mw-hero__cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px}.mw-hero__badges{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.mw-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;border:1px solid rgba(226,232,240,.8);background:#ffffffb3;color:var(--mw-text);font-weight:700;font-size:13px;box-shadow:var(--mw-shadow-sm)}.mw-hero__mock{position:relative;display:grid;place-items:center;min-height:420px}.mw-mock__phone{width:320px;border-radius:28px;border:1px solid rgba(226,232,240,.8);background:#ffffffbf;box-shadow:var(--mw-shadow-md);padding:16px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.mw-mock__status{height:10px;width:80px;border-radius:999px;background:#0f172a14;margin:6px auto 10px}.mw-mock__header{display:flex;align-items:center;gap:10px;padding:6px 4px 10px}.mw-mock__dot{width:10px;height:10px;border-radius:999px;background:#6366f1a6;box-shadow:0 0 0 6px #6366f11f}.mw-mock__title{font-weight:900;letter-spacing:-.02em}.mw-mock__img{height:170px;border-radius:18px;background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20600%20360'%20width='600'%20height='360'%20role='img'%20aria-label='Pizza'%3e%3cdefs%3e%3cradialGradient%20id='bg'%20cx='38%25'%20cy='36%25'%20r='75%25'%3e%3cstop%20offset='0%25'%20stop-color='%23fff7ed'/%3e%3cstop%20offset='100%25'%20stop-color='%23fde7cf'/%3e%3c/radialGradient%3e%3cradialGradient%20id='crust'%20cx='50%25'%20cy='50%25'%20r='50%25'%3e%3cstop%20offset='78%25'%20stop-color='%23e8b06b'/%3e%3cstop%20offset='100%25'%20stop-color='%23c8843a'/%3e%3c/radialGradient%3e%3cradialGradient%20id='cheese'%20cx='46%25'%20cy='42%25'%20r='58%25'%3e%3cstop%20offset='0%25'%20stop-color='%23ffd98a'/%3e%3cstop%20offset='70%25'%20stop-color='%23f6c25a'/%3e%3cstop%20offset='100%25'%20stop-color='%23eaa93f'/%3e%3c/radialGradient%3e%3c/defs%3e%3crect%20width='600'%20height='360'%20rx='18'%20fill='url(%23bg)'/%3e%3c!--%20pizza%20--%3e%3cg%20transform='translate(300%20185)'%3e%3ccircle%20r='150'%20fill='url(%23crust)'/%3e%3ccircle%20r='128'%20fill='%23c0392b'/%3e%3ccircle%20r='120'%20fill='url(%23cheese)'/%3e%3c!--%20pepperoni%20--%3e%3cg%20fill='%23b5341f'%3e%3ccircle%20cx='-58'%20cy='-48'%20r='20'/%3e%3ccircle%20cx='44'%20cy='-58'%20r='20'/%3e%3ccircle%20cx='68'%20cy='34'%20r='20'/%3e%3ccircle%20cx='-30'%20cy='56'%20r='20'/%3e%3ccircle%20cx='-78'%20cy='22'%20r='16'/%3e%3ccircle%20cx='12'%20cy='6'%20r='18'/%3e%3c/g%3e%3cg%20fill='%23d9543b'%20opacity='0.55'%3e%3ccircle%20cx='-58'%20cy='-48'%20r='9'/%3e%3ccircle%20cx='44'%20cy='-58'%20r='9'/%3e%3ccircle%20cx='68'%20cy='34'%20r='9'/%3e%3ccircle%20cx='-30'%20cy='56'%20r='9'/%3e%3ccircle%20cx='12'%20cy='6'%20r='8'/%3e%3c/g%3e%3c!--%20basil%20leaves%20--%3e%3cg%20fill='%233f8f4f'%3e%3cellipse%20cx='-6'%20cy='-70'%20rx='11'%20ry='20'%20transform='rotate(18%20-6%20-70)'/%3e%3cellipse%20cx='84'%20cy='-12'%20rx='10'%20ry='18'%20transform='rotate(-32%2084%20-12)'/%3e%3cellipse%20cx='-72'%20cy='-8'%20rx='10'%20ry='18'%20transform='rotate(40%20-72%20-8)'/%3e%3cellipse%20cx='28'%20cy='74'%20rx='10'%20ry='18'%20transform='rotate(8%2028%2074)'/%3e%3c/g%3e%3c!--%20cheese%20highlights%20--%3e%3cg%20fill='%23fff3d1'%20opacity='0.5'%3e%3ccircle%20cx='-20'%20cy='-20'%20r='6'/%3e%3ccircle%20cx='40'%20cy='20'%20r='5'/%3e%3ccircle%20cx='-44'%20cy='40'%20r='5'/%3e%3ccircle%20cx='60'%20cy='-30'%20r='4'/%3e%3c/g%3e%3c/g%3e%3c/svg%3e");background-size:cover;background-position:center;background-repeat:no-repeat;border:1px solid rgba(226,232,240,.7)}.mw-mock__chips{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 10px}.mw-chip{font-size:12px;font-weight:800;padding:6px 10px;border-radius:999px;border:1px solid rgba(226,232,240,.9);background:#fff;color:var(--mw-text)}.mw-mock__list{margin-top:6px;border-radius:16px;border:1px solid rgba(226,232,240,.8);background:#ffffffbf;padding:10px}.mw-mock__row{display:flex;justify-content:space-between;padding:10px 8px;border-radius:12px;font-weight:700;color:var(--mw-text)}.mw-mock__row+.mw-mock__row{margin-top:6px;border-top:1px solid rgba(226,232,240,.7)}.mw-qr{position:absolute;width:110px;height:110px;border-radius:18px;background:#ffffffb8;border:1px solid rgba(226,232,240,.9);box-shadow:var(--mw-shadow-sm);display:grid;place-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.mw-qr__inner{width:76px;height:76px;border-radius:12px;background:linear-gradient(90deg,rgba(15,23,42,.16) 50%,transparent 0) 0 0 / 12px 12px,linear-gradient(rgba(15,23,42,.16) 50%,transparent 0) 0 0 / 12px 12px;opacity:.9}.mw-qr--left{left:-10px;top:70%;transform:translateY(-50%) rotate(-6deg)}.mw-qr--right{right:-10px;top:38%;transform:translateY(-50%) rotate(7deg)}.mw-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.mw-card{text-decoration:none;color:inherit;background:#ffffffeb;border:1px solid rgba(226,232,240,.9);border-radius:18px;padding:18px;box-shadow:var(--mw-shadow-sm);transition:transform .16s ease,box-shadow .22s ease,border-color .22s ease}.mw-card:hover{transform:translateY(-4px);box-shadow:var(--mw-shadow-md);border-color:#6366f140}.mw-card__top{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.mw-card__emoji{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;font-size:28px;background:#6366f11a;border:1px solid rgba(99,102,241,.18)}.mw-pill{font-size:12px;font-weight:900;padding:6px 10px;border-radius:999px;background:#0f172a0a;border:1px solid rgba(226,232,240,.9);color:var(--mw-text)}.mw-card__title{margin:0 0 12px;font-size:18px;letter-spacing:-.02em}.mw-card__action{display:flex;justify-content:flex-start}.mw-btn--sm{height:36px;padding:0 12px;border-radius:12px;font-size:13px}.mw-features{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.mw-feature{width:100%;text-align:center;background:#ffffffeb;border:1px solid rgba(226,232,240,.9);border-radius:18px;padding:28px 20px;box-shadow:var(--mw-shadow-sm);cursor:pointer;transition:transform .16s ease,box-shadow .22s ease,border-color .22s ease;font-family:inherit}.mw-feature:hover{transform:translateY(-6px);box-shadow:var(--mw-shadow-md);border-color:#6366f159}.mw-feature__icon{margin-bottom:18px;display:flex;justify-content:center}.mw-icon{color:#6366f1;transition:transform .18s ease,color .18s ease}.mw-feature:hover .mw-icon{transform:scale(1.08);color:#4f46e5}.mw-feature__body h3{margin:0 0 8px;font-size:17px;letter-spacing:-.02em}.mw-feature__body p{margin:0;color:var(--mw-muted);font-size:14px;line-height:1.6}.mw-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:34px}.mw-step{position:relative;text-align:center;background:#fff;border:1px solid #ececf2;border-radius:22px;padding:32px 24px 28px;box-shadow:0 1px 2px #1018280a;transition:transform .25s cubic-bezier(.22,1,.36,1),box-shadow .25s ease}.mw-step:hover{transform:translateY(-4px);box-shadow:0 18px 40px #10182814}.mw-step__graphic{position:relative;width:78px;height:78px;margin:0 auto 20px;border-radius:24px;display:grid;place-items:center;background:linear-gradient(135deg,#6366f129,#6366f10a);border:1px solid rgba(99,102,241,.16);color:#6366f1}.mw-step:nth-child(2) .mw-step__graphic{background:linear-gradient(135deg,#10b9812e,#10b9810a);border-color:#10b9812e;color:#0e9f6e}.mw-step:nth-child(3) .mw-step__graphic{background:linear-gradient(135deg,#f973162e,#f973160d);border-color:#f9731633;color:#f97316}.mw-step__num{position:absolute;top:-9px;right:-9px;width:28px;height:28px;border-radius:999px;display:grid;place-items:center;font-weight:800;font-size:13px;color:#0f172a;background:#fff;border:1px solid #ececf2;box-shadow:0 3px 8px #1018281f}.mw-step:not(:last-child):after{content:"";position:absolute;top:71px;right:-24px;width:24px;height:2px;background:repeating-linear-gradient(90deg,#cbd5e1 0 5px,transparent 5px 11px)}.mw-step h3{margin:0 0 8px;font-size:17px;font-weight:650;letter-spacing:-.02em;color:#0f172a}.mw-step p{margin:0;color:var(--mw-muted);line-height:1.6;font-size:14px}.mw-footer{padding:26px 18px 46px;border-top:1px solid rgba(226,232,240,.7);background:var(--mw-bg)}.mw-footer__container{max-width:1200px;margin:0 auto;color:var(--mw-muted);display:flex;gap:10px;align-items:center;justify-content:center;flex-wrap:wrap;font-weight:700;font-size:13px}.mw-footer__container a{color:var(--mw-primary);text-decoration:none}.mw-footer__container a:hover{text-decoration:underline}.mw-footer__sep{opacity:.7}@media(max-width:1000px){.mw-hero__container{grid-template-columns:1fr;gap:22px}.mw-hero__right{order:2}.mw-hero__left{order:1}.mw-hero__mock{min-height:380px}.mw-grid,.mw-features{grid-template-columns:repeat(2,minmax(0,1fr))}.mw-steps{grid-template-columns:1fr}.mw-step:not(:last-child):after{display:none}}@media(max-width:520px){.mw-grid,.mw-features{grid-template-columns:1fr}.mw-qr{display:none}}.mw-demoGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.mw-demoCard{position:relative;color:inherit;display:flex;flex-direction:column;text-decoration:none;align-items:anchor-center;background:#fffffff2;border:1px solid rgba(226,232,240,.9);border-radius:18px;padding:22px 18px;box-shadow:var(--mw-shadow-sm);transition:transform .16s ease,box-shadow .22s ease,border-color .22s ease;text-align:center}.mw-demoCard:hover{transform:translateY(-4px);box-shadow:var(--mw-shadow-md);border-color:#6366f140}.mw-demoTag{position:absolute;top:16px;right:16px;font-size:12px;font-weight:900;padding:6px 10px;border-radius:999px;background:#0f172a0a;border:1px solid rgba(226,232,240,.9);color:var(--mw-text)}.mw-demoIcon{width:84px;height:84px;border-radius:20px;margin:10px auto 16px;display:grid;place-items:center;font-size:40px;overflow:hidden;background:#6366f11a;border:1px solid rgba(99,102,241,.18)}.mw-demoLogo{width:100%;height:100%;object-fit:cover;border-radius:20px}.mw-demoIcon__fb{place-items:center;width:100%;height:100%}.mw-demoTitle{margin:0 0 10px;font-size:18px;letter-spacing:-.02em}.mw-demoLocation{display:inline-flex;align-items:center;gap:6px;color:var(--mw-muted);font-weight:600;font-size:13px;margin-bottom:10px}.mw-demoLocationIcon{color:var(--mw-primary);opacity:.85}.mw-demoLocationIcon{opacity:.85}.mw-demoLocationText{opacity:.9}.mw-demoBtn{display:inline-flex;align-items:center;justify-content:center;height:36px;padding:0 14px;border-radius:6px;font-size:13px;font-weight:400;background:var(--mw-primary);color:#fff;box-shadow:0 10px 24px #6366f138}.mw-demoCard:hover .mw-demoBtn{background:var(--mw-primary-hover)}@media(max-width:1000px){.mw-demoGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.mw-demoGrid{grid-template-columns:1fr}}.mw-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px solid rgba(99,102,241,.15);font-weight:600;font-size:13px;color:var(--mw-text)}.mw-badge svg{color:var(--mw-primary)}.mw-carousel{position:relative;width:100%;max-width:380px;margin-left:auto}.mw-carousel__label{display:block;text-align:center;font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#94a3b8;margin-bottom:12px}.mw-promo{display:block;background:#fff;border:1px solid #eef0f4;border-radius:22px;overflow:hidden;box-shadow:0 18px 50px #1018281f;text-decoration:none;color:inherit;animation:promoIn .5s cubic-bezier(.22,1,.36,1)}@keyframes promoIn{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}.mw-promo__badge{position:absolute;top:40px;left:14px;z-index:2;display:inline-flex;align-items:center;gap:5px;background:var(--mw-accent, #6366f1);color:#fff;font-size:.72rem;font-weight:700;padding:4px 10px;border-radius:999px;box-shadow:0 4px 12px #10182833}.mw-promo__media{height:210px;background:linear-gradient(135deg,color-mix(in srgb,var(--mw-accent,#6366f1) 16%,#fff),#f8fafc);display:flex;align-items:center;justify-content:center;overflow:hidden}.mw-promo__media img{width:100%;height:100%;object-fit:cover}.mw-promo__emoji{font-size:76px}.mw-promo__body{padding:16px 18px 20px}.mw-promo__top{display:flex;align-items:center;justify-content:space-between;gap:10px}.mw-promo__body h3{margin:0;font-size:1.15rem;font-weight:750;color:#0f172a}.mw-promo__rating{display:inline-flex;align-items:center;gap:4px;color:#f79009;font-weight:700;font-size:.85rem;white-space:nowrap}.mw-promo__cat{display:block;margin-top:4px;color:#64748b;font-size:.88rem}.mw-promo__btn{display:inline-block;margin-top:14px;color:var(--mw-accent, #6366f1);font-weight:700;font-size:.92rem}.mw-promo--empty{height:300px;display:flex;align-items:center;justify-content:center;color:#cbd5e1}.mw-carousel__arrow{position:absolute;top:135px;transform:translateY(-50%);width:34px;height:34px;border-radius:999px;border:none;background:#fffffff2;box-shadow:0 4px 14px #1018282e;display:flex;align-items:center;justify-content:center;color:#334155;cursor:pointer;z-index:3}.mw-carousel__arrow:hover{background:#fff}.mw-carousel__arrow--l{left:-10px}.mw-carousel__arrow--r{right:-10px}.mw-carousel__dots{display:flex;justify-content:center;gap:7px;margin-top:14px}.mw-carousel__dot{width:8px;height:8px;border-radius:999px;border:none;padding:0;background:#cbd5e1;cursor:pointer;transition:all .2s ease}.mw-carousel__dot.active{background:var(--mw-primary, #6366f1);width:22px}.mw-feature-cols{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:28px}.mw-feature-col{background:#fff;border:1px solid #eef0f4;border-radius:20px;padding:24px;box-shadow:0 8px 30px #1018280d}.mw-feature-col__head{display:flex;align-items:center;gap:10px;padding-bottom:16px;margin-bottom:8px;border-bottom:1px solid #f1f5f9}.mw-feature-col__head h3{margin:0;font-size:1.2rem;font-weight:750;color:#0f172a}.mw-feature-col__head--customer{color:#0e9f6e}.mw-feature-col__head--admin{color:#f97316}.mw-feature-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}.mw-feature-list li{display:flex;gap:12px;align-items:flex-start}.mw-feature-ic{flex-shrink:0;width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:#f1f5f9;color:#475569}.mw-feature-col__head--customer~.mw-feature-list .mw-feature-ic{background:#ecfdf3;color:#0e9f6e}.mw-feature-col__head--admin~.mw-feature-list .mw-feature-ic{background:#fff7ed;color:#f97316}.mw-feature-list strong{display:block;color:#0f172a;font-size:.96rem}.mw-feature-list span{color:#64748b;font-size:.86rem;line-height:1.4}@media(max-width:820px){.mw-feature-cols{grid-template-columns:1fr}}@media(max-width:520px){.mw-carousel{max-width:100%}.mw-carousel__arrow--l{left:0}.mw-carousel__arrow--r{right:0}}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.auth-container{background:#fff;padding:40px;border-radius:12px;box-shadow:0 10px 25px #0003;max-width:900px;width:100%}.auth-container h1{margin-top:0;margin-bottom:8px;text-align:center;color:#333;font-size:2rem;letter-spacing:-.5px}.auth-container>form{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:30px}.auth-container>form .form-group:nth-child(3),.auth-container>form .form-group:nth-child(6){grid-column:1 / -1}.auth-header{display:flex;flex-direction:column;align-items:center;margin-bottom:32px;text-align:center}.auth-header h1{margin:0}.error-msg{background:#f8d7da;color:#721c24;padding:12px;border-radius:6px;margin-bottom:20px;text-align:center}.form-group{margin-bottom:0}.form-group label{display:flex;align-items:center;gap:8px;margin-bottom:8px;color:#555;font-weight:500;font-size:.95rem}.form-group label svg{color:#667eea;flex-shrink:0}.form-group input{width:100%;padding:12px;border:1px solid #ddd;border-radius:6px;font-size:.95rem;box-sizing:border-box;transition:all .2s}.form-group input:focus{outline:none;border-color:#667eea}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input-wrapper input{padding-right:40px}.password-toggle{position:absolute;right:12px;background:none;border:none;cursor:pointer;color:#667eea;display:flex;align-items:center;justify-content:center;padding:4px;transition:color .2s}.password-toggle:hover{color:#5568d3}.password-toggle svg{flex-shrink:0}.btn-submit{width:100%;padding:14px;background:#667eea;display:flex;align-items:center;justify-content:center;gap:8px;color:#fff;border:none;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .3s;grid-column:1 / -1}.btn-submit:hover:not(:disabled){background:#5568d3}.btn-submit:disabled{background:#ccc;cursor:not-allowed}.auth-footer{text-align:center;margin-top:16px;color:#666;font-size:.9rem}.auth-footer a{color:#667eea;text-decoration:none;font-weight:600}.demo-accounts{margin-top:24px;padding-top:20px;border-top:1px solid #eee}.demo-accounts h3{font-size:.9rem;color:#666;margin-bottom:10px}.demo-accounts ul{list-style:none;padding:0;margin:0;font-size:.85rem;color:#777}.demo-accounts li{margin-bottom:5px}.role-options{display:flex;flex-direction:column;gap:12px}.role-label{display:flex;align-items:flex-start;border:2px solid #ddd;border-radius:8px;cursor:pointer;transition:all .3s;padding:12px;gap:12px}.role-label:hover{border-color:#667eea;background-color:#f8f9ff}.role-label input[type=radio]{width:auto;margin:2px 0 0;cursor:pointer;accent-color:#667eea;flex-shrink:0}.role-label input[type=radio]:checked{accent-color:#667eea}.role-label svg{color:#667eea;flex-shrink:0;margin-top:2px}.role-label>div{display:flex;flex-direction:column;gap:4px}.role-label span:first-of-type{font-weight:600;color:#333}.role-description{font-size:.85rem;color:#777}.role-label input[type=radio]:checked~svg{color:#667eea}.role-label input[type=radio]:checked~div{color:#667eea}.role-label input[type=radio]:checked~div>span:first-of-type{color:#667eea}.role-label input[type=radio]:checked+span{color:#667eea}@media(max-width:768px){.auth-container{padding:32px 24px;max-width:100%}.auth-container h1{font-size:1.5rem}.auth-container>form{grid-template-columns:1fr;gap:16px}.auth-container>form .form-group:nth-child(3),.auth-container>form .form-group:nth-child(6){grid-column:1}.form-group{margin-bottom:0}.btn-submit{font-size:1rem;padding:12px}.demo-accounts{font-size:.8rem}.demo-accounts h3{font-size:.85rem}}.auth-subtitle{color:#6b7280;font-size:.92rem;text-align:center;margin:-6px 0 20px}.auth-footer--forgot{margin-top:14px;margin-bottom:0}.auth-back-link{display:inline-flex;align-items:center;gap:6px}.auth-success{text-align:center;padding:8px 4px 4px}.auth-success-icon{color:#12b76a;margin-bottom:8px}.auth-success p{color:#374151;margin:8px 0}.auth-success-hint{color:#9ca3af!important;font-size:.85rem}.auth-success .auth-back-link{margin-top:14px;justify-content:center}.menu-auth-overlay{position:fixed;inset:0;background:#0f172a8c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:3000;padding:18px}.menu-auth-modal{position:relative;width:100%;max-width:380px;background:#fff;border-radius:20px;padding:28px 24px 22px;box-shadow:0 24px 60px #0f172a4d;animation:menuAuthIn .22s cubic-bezier(.22,1,.36,1) both}@keyframes menuAuthIn{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}.menu-auth-close{position:absolute;top:14px;right:14px;width:32px;height:32px;border:none;border-radius:999px;background:#f2f4f7;color:#475467;display:flex;align-items:center;justify-content:center;cursor:pointer}.menu-auth-close:hover{background:#e4e7ec}.menu-auth-modal h2{margin:0 0 4px;font-size:1.4rem;font-weight:750;color:#101828}.menu-auth-sub{margin:0 0 18px;font-size:.9rem;color:#667085}.menu-auth-error{background:#fef3f2;border:1px solid #fecdca;color:#b42318;border-radius:10px;padding:10px 12px;font-size:.85rem;margin-bottom:14px}.menu-auth-field{display:flex;align-items:center;gap:8px;border:1px solid #d0d5dd;border-radius:11px;padding:0 12px;margin-bottom:12px;background:#fff;color:#98a2b3;transition:border-color .15s ease,box-shadow .15s ease}.menu-auth-field:focus-within{border-color:var(--mw-accent, #10b981);box-shadow:0 0 0 3px #10b98126}.menu-auth-field input{flex:1;border:none;outline:none;padding:12px 0;font-size:.95rem;background:transparent;color:#101828}.menu-auth-submit{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;margin-top:4px;padding:13px;border:none;border-radius:12px;background:var(--mw-accent, #10b981);color:#fff;font-size:.98rem;font-weight:650;cursor:pointer;transition:filter .15s ease}.menu-auth-submit:hover{filter:brightness(.95)}.menu-auth-submit:disabled{opacity:.65;cursor:default}.menu-auth-toggle{margin-top:16px;text-align:center;font-size:.88rem;color:#667085}.menu-auth-toggle button{border:none;background:none;padding:0;color:var(--mw-accent, #10b981);font-weight:650;cursor:pointer;font-size:.88rem}.menu-auth-toggle button:hover{text-decoration:underline}.menu-auth-forgot{text-align:center;margin-top:12px}.menu-auth-forgot a{color:var(--mw-accent, #6366f1);font-size:.86rem;font-weight:600;text-decoration:none}.menu-auth-forgot a:hover{text-decoration:underline}.smart-image{display:block;width:100%;height:100%;object-fit:cover}.smart-image--placeholder{display:flex;align-items:center;justify-content:center}.smart-image__glyph{font-size:2.4rem;line-height:1;filter:drop-shadow(0 1px 1px rgba(0,0,0,.12))}.restaurant-menu{max-width:1200px;margin:0 auto;padding:20px}.menu-header{text-align:center;margin-bottom:40px;padding-bottom:20px;border-bottom:2px solid #eee}.menu-header h1{font-size:2.5rem;margin-bottom:10px;color:#333}.restaurant-info-header{color:#666;font-size:1.1rem}.auth-hint{margin-top:10px;color:#666}.auth-hint a,.auth-hint-link{color:var(--mw-accent, #007bff);text-decoration:underline;background:none;border:none;padding:0;font:inherit;cursor:pointer}.menu-section{margin-bottom:50px}.menu-section h2{font-size:clamp(1.2rem,4vw,1.7rem);margin-bottom:10px;color:#444}.menu-desc{color:#666;margin-bottom:20px;font-size:clamp(.88rem,2.5vw,1rem)}.dishes-grid{display:grid;grid-template-columns:1fr;gap:14px}.restaurant-menu{max-width:1240px;margin:0 auto;padding:20px}.menu-header{text-align:center;margin-bottom:40px}.menu-header h1{font-size:2rem;font-weight:600;margin-bottom:8px}.restaurant-info-header{display:flex;align-items:center;justify-content:center;gap:6px;color:#6b7280;font-size:clamp(.82rem,2.4vw,.95rem);flex-wrap:wrap}.icon-muted{color:#9ca3af}.language-selector{margin:15px auto 0;width:min(340px,100%);display:grid;justify-items:center;gap:.35rem}.language-selector-label{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;color:#6b7280;font-size:.75rem}.language-selector-control{width:100%;position:relative}.follow-btn{display:inline-flex;align-items:center;gap:.4rem;margin:.5rem 0 0;padding:.5rem 1rem;border-radius:999px;border:1px solid #e11d48;background:#e11d48;color:#fff;font-size:.88rem;font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.follow-btn:hover{background:#be123c;border-color:#be123c}.follow-btn.is-following{background:#fff;color:#e11d48}.follow-btn .follow-count{background:#ffffff40;border-radius:999px;padding:0 .45rem;font-size:.8rem;font-weight:700}.follow-btn.is-following .follow-count{background:#fee2e2}.restaurant-hero{position:relative;margin:0 auto 56px;width:100%;max-width:760px}.restaurant-hero-banner{position:relative;width:100%;height:180px;border-radius:20px;overflow:hidden;background:#e5e7eb}.restaurant-hero-banner img,.restaurant-hero-banner-fallback{width:100%;height:100%;object-fit:cover}.restaurant-hero-banner-fallback{background:linear-gradient(135deg,#dbeafe,#e5e7eb)}.restaurant-hero-overlay{position:absolute;inset:0;background:#0f172a38}.restaurant-hero-logo-wrap{position:absolute;left:50%;bottom:-40px;transform:translate(-50%)}.restaurant-hero-logo{width:92px;height:92px;border-radius:999px;overflow:hidden;border:4px solid #fff;background:#fff;box-shadow:0 10px 25px #0000002e}.restaurant-hero-logo img,.restaurant-hero-logo-fallback{width:100%;height:100%;object-fit:cover}.restaurant-hero-logo-fallback{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;font-size:2rem;font-weight:700}.menu-header-content{margin-top:6px}.menu-header h1{font-size:clamp(1.45rem,5vw,2.2rem);font-weight:700;margin-bottom:8px}.auth-hint{margin-top:10px;color:#666;font-size:clamp(.82rem,2.2vw,.95rem)}.dishes-grid{display:grid;grid-template-columns:1fr;gap:18px}@media(min-width:640px){.dishes-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:768px){.restaurant-hero-banner{height:230px}.restaurant-hero-logo-wrap{bottom:-52px}.restaurant-hero-logo{width:118px;height:118px}.dishes-grid{grid-template-columns:repeat(2,1fr);gap:20px}.dish-card{padding:16px}.dish-image img{width:110px;height:110px}}.dish-card{display:flex;gap:14px;padding:12px;border-radius:18px;background:#fff;box-shadow:0 6px 18px #0000000f;align-items:center}.dish-image img{width:90px;height:90px;border-radius:14px;object-fit:cover}.dish-main{flex:1;display:flex;flex-direction:column;gap:6px}.dish-top{display:flex;justify-content:space-between;align-items:center}.dish-name{font-size:clamp(.95rem,2.8vw,1.05rem);font-weight:600;margin:0}.stock-badge{font-size:.75rem;background:#e7f7ed;color:#16a34a;padding:4px 8px;border-radius:999px;font-weight:500}.dish-desc{font-size:clamp(.8rem,2.3vw,.9rem);color:#6b7280;line-height:1.35}.dish-bottom{display:flex;justify-content:space-between;align-items:center}.price{font-size:clamp(1rem,3vw,1.1rem);font-weight:600;color:#2563eb}.dish-actions{display:flex;gap:6px}.icon-btn{width:36px;height:36px;border-radius:999px;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.2s ease}.icon-btn.vote{background:#facc15;color:#111}.icon-btn.vote:hover{background:#eab308}.icon-btn.fav{color:#888;transition:all .2s ease}.icon-btn.fav:hover{color:#ff4d6d}.icon-btn.fav svg[fill=currentColor]{color:#ff4d6d}.dish-meta{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.meta-item{display:flex;align-items:center;gap:4px;font-size:.85rem;color:#9ca3af}.tags{display:flex;gap:6px}.tag{background:#f3f4f6;font-size:.75rem;padding:4px 8px;border-radius:999px;color:#374151}.dish-actions{display:flex;gap:10px}.dish-actions button{flex:1;padding:10px;border-radius:10px;border:none;font-size:.9rem;font-weight:500;display:flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;transition:all .2s ease}.btn-vote{background:#facc15;color:#111}.btn-vote:hover{background:#eab308}.btn-favorite{background:#ef4444;color:#fff}.btn-favorite:hover{background:#dc2626}.modal-overlay{position:fixed;inset:0;background:#0f172a8c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease}.modal{width:100%;max-width:480px;background:#fff;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px;padding:2rem;box-shadow:0 10px 40px #00000026,0 2px 8px #00000014;animation:scaleIn .2s ease}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.modal-header h2{font-size:1.25rem;font-weight:600;color:#111827}.modal-close{background:transparent;border:none;font-size:1.2rem;cursor:pointer;opacity:.6;transition:.2s}.modal-close:hover{opacity:1;transform:rotate(90deg)}.rating-stars{display:flex;justify-content:center;gap:.5rem;margin-bottom:1.5rem}.star{background:none;border:none;font-size:2rem;cursor:pointer;color:#d1d5db;transition:all .2s ease}.star:hover{transform:scale(1.2)}.star.active{color:#6366f1}.modal-label{display:flex;flex-direction:column;font-size:.9rem;font-weight:500;color:#374151;margin-bottom:1.5rem}.modal textarea{margin-top:.5rem;padding:.75rem 1rem;border-radius:14px;border:1px solid #e5e7eb;resize:none;font-family:inherit;transition:.2s ease}.modal textarea:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f126}.modal-actions{display:flex;gap:.75rem}.btn-primary-modal{flex:1;padding:.75rem 1rem;border-radius:14px;border:none;background:#6366f1;color:#fff;font-weight:600;cursor:pointer;transition:.2s ease}.btn-primary-modal:hover{background:#4f46e5;transform:translateY(-1px)}.btn-secondary-modal{flex:1;padding:.75rem 1rem;border-radius:14px;border:none;background:#f3f4f6;font-weight:500;cursor:pointer;transition:.2s ease}.btn-secondary-modal:hover{background:#f9fafb}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.visibility-selector{margin:1.5rem 0}.visibility-selector>label{display:block;margin-bottom:.75rem;font-weight:600;color:#374151}.visibility-options{display:flex;flex-direction:column;gap:.75rem}.visibility-option{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s ease}.visibility-option:hover{border-color:#6366f1;background:#f9fafb}.visibility-option input[type=radio]{margin-top:.2rem;width:18px;height:18px;cursor:pointer}.visibility-option input[type=radio]:checked+div{color:#6366f1}.visibility-option div{display:flex;flex-direction:column;gap:.25rem}.visibility-option strong{font-size:.95rem;color:#111827}.visibility-option span{font-size:.85rem;color:#6b7280}.privacy-helper{margin-top:.75rem;padding:.75rem;background:#eff6ff;border-left:3px solid #3b82f6;border-radius:4px;font-size:.85rem;color:#1e40af;line-height:1.5}.dish-comments-section{margin:.75rem 0;padding-top:.75rem;border-top:1px solid #e5e7eb}.comments-toggle{display:flex;align-items:center;gap:.5rem;background:none;border:none;color:#6366f1;font-size:.875rem;font-weight:500;cursor:pointer;padding:0;transition:color .2s}.comments-toggle:hover{color:#4f46e5}.comments-list{margin-top:.75rem;display:flex;flex-direction:column;gap:.75rem}.comment-item{padding:.75rem;background:#f9fafb;border-radius:6px;border-left:3px solid #6366f1}.comment-rating{color:#facc15;font-size:.9rem;margin-bottom:.25rem}.comment-text{margin:.5rem 0;font-size:.875rem;color:#374151;line-height:1.5}.comment-date{font-size:.75rem;color:#9ca3af}.menu-container{width:100%;max-width:1400px;margin:0 auto;padding:1rem}.menu-container.with-ads{display:grid;grid-template-columns:1fr 250px;gap:2rem;padding:2rem 1rem}.menu-content{min-width:0}.ad-rail{position:sticky;top:80px;height:fit-content;min-width:0}.ad-rail-container{display:flex;flex-direction:column;gap:1.5rem;min-width:0;max-width:100%}.ad-slot{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:.75rem;overflow:hidden}.ad-label{display:block;font-size:.7rem;color:#9ca3af;text-transform:uppercase;margin-bottom:.5rem;letter-spacing:.5px}.ad-slot img{width:100%;height:auto;border-radius:4px;margin-bottom:.5rem}.ad-slot-link{text-decoration:none;color:inherit;display:block}.ad-slot-media{height:140px;border-radius:4px;overflow:hidden;margin-bottom:.5rem}.ad-slot-media .smart-image{width:100%;height:100%;object-fit:cover}.ad-title{font-size:.875rem;color:#374151;margin:0;line-height:1.4}.session-footer{position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:2px solid #e5e7eb;padding:1rem 1.5rem;display:flex;align-items:center;justify-content:space-between;box-shadow:0 -4px 6px -1px #0000001a;z-index:100}.session-info{display:flex;align-items:center;gap:.75rem;font-size:.95rem;font-weight:500;color:#374151}.btn-view-ticket{padding:.75rem 1.5rem;background:#6366f1;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:background .2s}.btn-view-ticket:hover{background:#4f46e5}@media(max-width:768px){.menu-header{margin-bottom:28px;padding-bottom:12px}.restaurant-hero{margin-bottom:48px}.restaurant-hero-banner{height:150px;border-radius:16px}.restaurant-hero-logo-wrap{bottom:-34px}.restaurant-hero-logo{width:76px;height:76px;border-width:3px}.dish-card{gap:10px;padding:10px}.language-selector{width:100%;margin-top:.75rem}.language-selector-label{font-size:.75rem}.language-selector-control .lang-select-trigger{font-size:.88rem}.dish-image img{width:78px;height:78px}.menu-container.with-ads{grid-template-columns:1fr;gap:1rem}.ad-rail{position:static}.ad-rail-container{flex-direction:row;overflow-x:auto;padding-bottom:.5rem}.ad-slot{min-width:200px}.session-footer{flex-direction:column;gap:.75rem;padding:1rem}.session-info{flex-wrap:wrap;justify-content:center}.btn-view-ticket{width:100%}}.restaurant-menu .restaurant-hero-banner-fallback{background:linear-gradient(135deg,var(--mw-accent, #10b981),#0f172a)}.restaurant-menu .menu-section h2{border-left:4px solid var(--mw-accent, #10b981);padding-left:12px}.restaurant-menu .price{color:var(--mw-accent, #10b981)}.restaurant-menu .restaurant-hero-logo{box-shadow:0 0 0 3px var(--mw-accent, #10b981)}.ad-splash-overlay{position:fixed;inset:0;z-index:2000;background:#0f172ad9;display:flex;align-items:center;justify-content:center;padding:20px}.ad-splash-card{background:#fff;border-radius:16px;padding:16px;width:min(420px,92vw);display:flex;flex-direction:column;gap:12px;box-shadow:0 20px 60px #0006}.ad-splash-label{font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:#9ca3af}.ad-splash-media{display:block;width:100%;height:240px;border-radius:12px;overflow:hidden}.ad-splash-media .smart-image{width:100%;height:100%;object-fit:cover}.ad-splash-title{margin:0;font-size:1rem;font-weight:600;color:#111827;text-align:center}.ad-splash-skip{align-self:center;margin-top:4px;background:#111827;color:#fff;border:none;border-radius:999px;padding:8px 18px;font-size:.85rem;font-weight:600;cursor:pointer}.ad-splash-skip:disabled{background:#9ca3af;cursor:default}.ad-footer{margin-top:28px}.ad-footer-link{text-decoration:none;color:inherit;display:block}.ad-footer-inner{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:10px 14px}.ad-footer-media{width:60px;height:40px;border-radius:6px;overflow:hidden;flex-shrink:0}.ad-footer-media .smart-image{width:100%;height:100%;object-fit:cover}.ad-footer-text{font-size:.9rem;color:#374151;font-weight:500}.dishes-grid .dish-card--wide{grid-column:1 / -1}.dish-card--wide,.dish-card--tall{flex-direction:column;align-items:stretch;text-align:left}.dish-card--wide .dish-image,.dish-card--tall .dish-image{width:100%}.dish-card--wide .dish-image img,.dish-card--wide .dish-image .smart-image{width:100%;height:220px;border-radius:14px}.dish-card--tall .dish-image img,.dish-card--tall .dish-image .smart-image{width:100%;height:260px;border-radius:14px}.dish-card--wide.dish-card--tall .dish-image img,.dish-card--wide.dish-card--tall .dish-image .smart-image{height:340px}.restaurant-menu .menu-section{margin-bottom:60px}.restaurant-menu .menu-section h2{font-size:clamp(1.4rem,4.5vw,2rem);font-weight:700;letter-spacing:-.02em;color:#0b1324;margin-bottom:6px}.restaurant-menu .menu-desc{font-size:clamp(.95rem,2.5vw,1.05rem);color:#667085;max-width:62ch;margin-bottom:26px;line-height:1.5}.restaurant-menu .dishes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:24px}.restaurant-menu .dish-card{display:flex;flex-direction:column;align-items:stretch;padding:0;background:#fff;border:1px solid #f0f1f4;border-radius:22px;overflow:hidden;box-shadow:0 1px 2px #1018280a,0 10px 28px #1018280d;transition:transform .5s cubic-bezier(.22,1,.36,1),box-shadow .5s cubic-bezier(.22,1,.36,1);will-change:transform}.restaurant-menu .dish-card:hover{transform:translateY(-8px);box-shadow:0 2px 4px #1018280f,0 28px 56px #10182829}.restaurant-menu .dish-image{width:100%;height:230px;overflow:hidden;position:relative;background:#f2f4f7}.restaurant-menu .dish-image .smart-image,.restaurant-menu .dish-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.22,1,.36,1)}.restaurant-menu .dish-card:hover .dish-image .smart-image,.restaurant-menu .dish-card:hover .dish-image img{transform:scale(1.06)}.restaurant-menu .dish-main{display:flex;flex-direction:column;gap:10px;padding:20px 22px 22px}.restaurant-menu .dish-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.restaurant-menu .dish-name{font-size:clamp(1.1rem,3vw,1.3rem);font-weight:650;letter-spacing:-.01em;color:#0b1324;line-height:1.25;margin:0}.restaurant-menu .dish-desc{font-size:clamp(.95rem,2.4vw,1.02rem);line-height:1.6;color:#475467;margin:0}.restaurant-menu .stock-badge{flex-shrink:0;background:#f2f4f7;color:#475467;font-size:.72rem;font-weight:600;padding:5px 10px;border-radius:999px;white-space:nowrap}.restaurant-menu .dish-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:6px;padding-top:14px;border-top:1px solid #f2f4f7}.restaurant-menu .price{font-size:clamp(1.15rem,3.2vw,1.4rem);font-weight:700;letter-spacing:-.01em;color:var(--mw-accent, #10b981)}.restaurant-menu .dish-actions{display:flex;gap:10px}.restaurant-menu .icon-btn{width:42px;height:42px;border-radius:999px;border:1px solid #eceef2;background:#fff;color:#667085;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s cubic-bezier(.22,1,.36,1),background .2s ease,color .2s ease,box-shadow .2s ease,border-color .2s ease}.restaurant-menu .icon-btn:hover{transform:scale(1.08);box-shadow:0 6px 16px #1018281f}.restaurant-menu .icon-btn:active{transform:scale(.94)}.restaurant-menu .icon-btn.vote{background:#fff}.restaurant-menu .icon-btn.vote:hover,.restaurant-menu .icon-btn.vote.voted{background:#fffaeb;color:#f79009;border-color:#fde9b3}.restaurant-menu .icon-btn.vote.voted svg{color:#f79009}.restaurant-menu .icon-btn.fav:hover{background:#fff1f3;color:#f63d68;border-color:#fecdd6}.restaurant-menu .icon-btn.fav svg[fill=currentColor]{color:#f63d68}.restaurant-menu .dish-diet-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}.restaurant-menu .dish-diet-tag{font-size:.74rem;font-weight:600;padding:3px 9px;border-radius:999px;background:#f2f4f7;color:#475467;white-space:nowrap}.restaurant-menu .dish-diet-tag.diet-VEGAN{background:#ecfdf3;color:#027a48}.restaurant-menu .dish-diet-tag.diet-VEGETARIAN{background:#effaf0;color:#2b8a3e}.restaurant-menu .dish-diet-tag.diet-GLUTEN_FREE{background:#fef7e6;color:#b54708}.restaurant-menu .dish-diet-tag.diet-DIABETIC_FRIENDLY{background:#eff4ff;color:#175cd3}.vote-already-note{margin:0 0 12px;padding:8px 12px;background:#fffaeb;border:1px solid #fef0c7;border-radius:8px;color:#b54708;font-size:.85rem}.btn-danger-modal{padding:11px 18px;border:1px solid #fecdca;border-radius:10px;background:#fff;color:#d92d20;font-weight:600;cursor:pointer;transition:background .15s ease}.btn-danger-modal:hover{background:#fef3f2}.restaurant-menu .comments-toggle{background:none;border:none;color:var(--mw-accent, #10b981);font-size:.85rem;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:4px;padding:2px 0}.restaurant-menu .dish-card--wide{grid-column:1 / -1}.restaurant-menu .dish-card--wide .dish-image{height:320px}.restaurant-menu .dish-card--tall .dish-image{height:340px}.restaurant-menu .dish-card--wide.dish-card--tall .dish-image{height:420px}.restaurant-menu .reveal{opacity:0;transform:translateY(20px);transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1)}.restaurant-menu .reveal.is-visible{opacity:1;transform:none}@media(max-width:600px){.restaurant-menu .dishes-grid{grid-template-columns:1fr;gap:18px}.restaurant-menu .dish-image{height:185px}.restaurant-menu .dish-main{padding:14px 16px 16px;gap:8px}.restaurant-menu .dish-card--wide .dish-image,.restaurant-menu .dish-card--tall .dish-image{height:200px}}@media(prefers-reduced-motion:reduce){.restaurant-menu .reveal{opacity:1;transform:none;transition:none}.restaurant-menu .dish-card,.restaurant-menu .dish-image img,.restaurant-menu .dish-image .smart-image{transition:none!important}}.restaurant-menu .dish-image--clickable,.restaurant-menu .dish-name--clickable{cursor:pointer}.restaurant-menu .dish-image-cta{position:absolute;left:12px;bottom:12px;display:inline-flex;align-items:center;gap:5px;font-size:.72rem;font-weight:600;color:#fff;background:#0f172a8c;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:5px 11px;border-radius:999px;opacity:0;transform:translateY(6px);transition:opacity .3s ease,transform .3s ease;pointer-events:none}.restaurant-menu .dish-card:hover .dish-image-cta{opacity:1;transform:none}.dish-detail-overlay{position:fixed;inset:0;z-index:2400;background:#080c168c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;animation:detailFade .28s ease both}.dish-detail-overlay.closing{animation:detailFadeOut .26s ease both}.dish-detail-panel{position:relative;width:100%;max-width:560px;height:100%;overflow-y:auto;-webkit-overflow-scrolling:touch;background:#fff;animation:detailSlide .4s cubic-bezier(.22,1,.36,1) both;box-shadow:0 0 60px #0000004d}.dish-detail-overlay.closing .dish-detail-panel{animation:detailSlideOut .26s ease both}@keyframes detailFade{0%{opacity:0}to{opacity:1}}@keyframes detailFadeOut{0%{opacity:1}to{opacity:0}}@keyframes detailSlide{0%{transform:translateY(44px);opacity:0}to{transform:none;opacity:1}}@keyframes detailSlideOut{0%{transform:none;opacity:1}to{transform:translateY(44px);opacity:0}}.dish-detail-close{position:fixed;top:16px;right:16px;z-index:2600;width:42px;height:42px;border-radius:999px;border:none;background:#0f172a80;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s ease,background .2s ease}.dish-detail-close:hover{background:#0f172ab8;transform:scale(1.06)}.dish-detail-close:active{transform:scale(.92)}.dish-detail-close-bottom{position:absolute;left:50%;bottom:30px;transform:translate(-50%);z-index:5;display:inline-flex;align-items:center;gap:8px;padding:11px 22px;border:none;border-radius:999px;background:#0f172a9e;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;font-size:.95rem;font-weight:600;cursor:pointer;box-shadow:0 6px 20px #10182840;transition:transform .2s ease,background .2s ease}.dish-detail-close-bottom:hover{background:#0f172acc}.dish-detail-close-bottom:active{transform:translate(-50%) scale(.95)}.dish-detail-hero{position:relative;width:100%;height:64vh;min-height:280px;background:#f2f4f7;overflow:hidden}.dish-detail-hero .smart-image,.dish-detail-hero img{width:100%;height:100%;object-fit:cover}.dish-detail-hero-fade{position:absolute;left:0;right:0;bottom:0;height:120px;background:linear-gradient(to bottom,#fff0,#fff)}.dish-detail-sheet{position:relative;margin-top:-34px;background:#fff;border-radius:28px 28px 0 0;padding:14px 24px 56px;display:flex;flex-direction:column;gap:16px}.dish-detail-handle{width:42px;height:5px;border-radius:999px;background:#d0d5dd;margin:0 auto 6px}.dish-detail-chips{display:flex;flex-wrap:wrap;gap:8px}.dish-detail-chip{font-size:.74rem;font-weight:600;color:#475467;background:#f2f4f7;padding:5px 12px;border-radius:999px}.dish-detail-chip--cat{color:var(--mw-accent, #10b981);background:color-mix(in srgb,var(--mw-accent, #10b981) 12%,#fff)}.dish-detail-headline{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.dish-detail-headline h1{font-size:clamp(1.5rem,6vw,2rem);font-weight:750;letter-spacing:-.02em;color:#0b1324;margin:0;line-height:1.15}.dish-detail-price{flex-shrink:0;font-size:clamp(1.3rem,5vw,1.7rem);font-weight:750;letter-spacing:-.01em;color:var(--mw-accent, #10b981)}.dish-detail-rating{display:flex;align-items:center;gap:8px;font-size:.95rem;color:#475467}.dish-detail-stars{color:#f79009;letter-spacing:2px}.dish-detail-rating strong{color:#101828}.dish-detail-rating-count{color:#98a2b3;font-size:.85rem}.dish-detail-desc{font-size:clamp(1rem,2.6vw,1.1rem);line-height:1.65;color:#344054;margin:0}.dish-detail-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.dish-detail-fact{display:flex;align-items:flex-start;gap:10px;background:#f9fafb;border:1px solid #f0f1f4;border-radius:14px;padding:14px;color:var(--mw-accent, #10b981)}.dish-detail-fact--full{grid-column:1 / -1}.dish-detail-fact-label{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.03em;color:#98a2b3}.dish-detail-fact-value{display:block;color:#101828;font-weight:600;font-size:.95rem;line-height:1.4}.dish-detail-actions{display:flex;gap:12px;margin-top:4px}.dish-detail-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 16px;border-radius:14px;border:1px solid #eceef2;background:#fff;color:#344054;font-size:.95rem;font-weight:650;cursor:pointer;transition:transform .18s ease,box-shadow .2s ease,background .2s ease}.dish-detail-btn:hover{transform:translateY(-1px);box-shadow:0 8px 20px #1018281a}.dish-detail-btn:active{transform:scale(.98)}.dish-detail-btn--primary{background:var(--mw-accent, #10b981);border-color:transparent;color:#fff}.dish-detail-comments{margin-top:8px;display:flex;flex-direction:column;gap:12px}.dish-detail-comments h3{font-size:1.05rem;font-weight:700;color:#101828;margin:0}.dish-detail-comment{background:#f9fafb;border-radius:12px;padding:12px 14px}.dish-detail-comment .comment-rating{color:#f79009;font-size:.85rem}.dish-detail-comment p{margin:4px 0;color:#344054;font-size:.92rem;line-height:1.5}.dish-detail-comment small{color:#98a2b3;font-size:.78rem}@media(prefers-reduced-motion:reduce){.dish-detail-overlay,.dish-detail-panel{animation:none!important}}.restaurant-menu .restaurant-links{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:12px}.restaurant-menu .restaurant-rating-badge{display:inline-flex;align-items:center;gap:6px;text-decoration:none;background:#fffaeb;border:1px solid #fde9b3;padding:6px 12px;border-radius:999px;font-size:.85rem}.restaurant-menu .restaurant-rating-badge svg{color:#f79009}.restaurant-menu .restaurant-rating-badge strong{color:#92400e}.restaurant-menu .restaurant-rating-badge span{color:#b54708;font-weight:500}.restaurant-menu .restaurant-link-btn{display:inline-flex;align-items:center;gap:6px;text-decoration:none;color:#344054;background:#fff;border:1px solid #e4e7ec;padding:6px 14px;border-radius:999px;font-size:.85rem;font-weight:600;transition:transform .18s ease,box-shadow .2s ease,border-color .2s ease,color .2s ease}.restaurant-menu .restaurant-link-btn:hover{transform:translateY(-1px);box-shadow:0 6px 16px #1018281a;border-color:var(--mw-accent, #10b981);color:var(--mw-accent, #10b981)}.rating-stars-row{display:flex;align-items:center;justify-content:center;gap:14px;margin:6px 0 2px}.rating-step{width:40px;height:40px;border-radius:999px;border:1px solid #e4e7ec;background:#fff;color:#344054;font-size:22px;font-weight:700;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease,transform .1s ease}.rating-step:hover:not(:disabled){background:#f9fafb}.rating-step:active:not(:disabled){transform:scale(.92)}.rating-step:disabled{opacity:.4;cursor:default}.rating-value{text-align:center;margin:0 0 4px;color:#667085;font-size:.85rem;font-weight:600}.menu-toast{position:fixed;left:50%;bottom:26px;transform:translate(-50%);z-index:4000;background:#101828;color:#fff;padding:12px 20px;border-radius:999px;font-size:.92rem;font-weight:600;box-shadow:0 12px 30px #1018284d;animation:menuToastIn .25s cubic-bezier(.22,1,.36,1)}@keyframes menuToastIn{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}.restaurant-menu .menu-discovery{position:sticky;top:62px;z-index:20;display:flex;flex-direction:column;gap:10px;padding:12px 16px;margin:0 0 8px;background:#ffffffeb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid rgba(16,24,40,.06)}.restaurant-menu .discovery-row{display:flex;align-items:center;gap:8px}.restaurant-menu .search-box{position:relative;flex:1 1 auto;min-width:0;display:flex;align-items:center}.restaurant-menu .search-box .search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#98a2b3;pointer-events:none}.restaurant-menu .search-input{width:100%;padding:12px 16px 12px 42px;border:1px solid #e4e7ec;border-radius:999px;background:#fff;font-size:15px;line-height:1.2;color:#101828;outline:none;transition:border-color .15s,box-shadow .15s}.restaurant-menu .search-input::placeholder{color:#98a2b3;text-overflow:ellipsis}.restaurant-menu .search-input--has-clear{padding-right:42px}.restaurant-menu .search-input:focus{border-color:var(--mw-accent, #10b981);box-shadow:0 0 0 3px color-mix(in srgb,var(--mw-accent, #10b981) 18%,transparent)}.restaurant-menu .search-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;border-radius:50%;background:#f2f4f7;color:#667085;cursor:pointer}.restaurant-menu .search-clear:hover{background:#e4e7ec}.restaurant-menu .filter-btn{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;padding:12px 16px;border:1px solid #e4e7ec;border-radius:999px;background:#fff;color:#344054;font-size:14px;font-weight:600;line-height:1.2;cursor:pointer;white-space:nowrap;transition:border-color .15s,background .15s,color .15s}.restaurant-menu .filter-btn:hover{border-color:#d0d5dd}.restaurant-menu .filter-btn-label{display:inline}.restaurant-menu .filter-btn.is-active{border-color:var(--mw-accent, #10b981);color:var(--mw-accent, #10b981)}.restaurant-menu .filter-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--mw-accent, #10b981);color:#fff;font-size:11px;font-weight:700}.restaurant-menu .filter-chips{display:flex;flex-wrap:wrap;gap:8px}.restaurant-menu .chip{padding:7px 13px;border:1px solid #e4e7ec;border-radius:999px;background:#fff;color:#344054;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s}.restaurant-menu .chip:hover{border-color:#d0d5dd}.restaurant-menu .chip--on{border-color:var(--mw-accent, #10b981);background:var(--mw-accent, #10b981);color:#fff}.restaurant-menu .discovery-summary{display:flex;align-items:center;justify-content:space-between;font-size:13px;color:#667085}.restaurant-menu .discovery-clear{display:inline-flex;align-items:center;gap:4px;border:none;background:none;color:var(--mw-accent, #10b981);font-size:13px;font-weight:600;cursor:pointer;padding:4px 6px}.restaurant-menu .menu-empty-state{text-align:center;padding:48px 20px;color:#667085}.restaurant-menu .menu-empty-title{font-size:17px;font-weight:700;color:#344054;margin:0 0 6px}.restaurant-menu .menu-empty-hint{margin:0 0 16px;font-size:14px}@media(min-width:768px){.restaurant-menu .menu-discovery{padding:16px;top:68px}.restaurant-menu .discovery-row,.restaurant-menu .filter-chips,.restaurant-menu .discovery-summary{width:100%;max-width:760px;margin-left:auto;margin-right:auto}}@media(max-width:480px){.restaurant-menu .search-input{font-size:16px}.restaurant-menu .filter-btn-label{display:none}.restaurant-menu .filter-btn{padding:12px 13px}}.lang-select{position:relative;width:100%}.lang-flag{font-family:Twemoji Country Flags,"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;font-size:1.15em;line-height:1;flex-shrink:0}.lang-select-trigger{width:100%;display:flex;align-items:center;gap:.5rem;border:1px solid #d1d5db;border-radius:10px;padding:.56rem .7rem;font-size:.89rem;font-weight:600;color:#1f2937;background:#fff;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease}.lang-select-trigger:hover{border-color:#9ca3af}.lang-select-trigger:focus-visible{outline:none;border-color:#475569;box-shadow:0 0 0 2px #4755691f}.lang-select-trigger .lang-label{flex:1;text-align:left}.lang-chevron{color:#6b7280;transition:transform .18s ease;flex-shrink:0}.lang-chevron.is-open{transform:rotate(180deg)}.lang-select-list{position:absolute;z-index:50;top:calc(100% + 6px);left:0;right:0;margin:0;padding:4px;list-style:none;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 10px 30px #0f172a26;max-height:280px;overflow-y:auto}.lang-select-option{width:100%;display:flex;align-items:center;gap:.6rem;padding:.5rem .6rem;border:0;border-radius:8px;background:transparent;font-size:.89rem;font-weight:500;color:#1f2937;cursor:pointer;text-align:left}.lang-select-option:hover{background:#f3f4f6}.lang-select-option.is-selected{background:#eef2ff;font-weight:600}.lang-select-option .lang-label{flex:1}.lang-check{color:#4f46e5;flex-shrink:0}.pd{max-width:680px}.pd-head h3{display:flex;align-items:center;gap:8px;font-size:17px;color:#1d2939;margin:0 0 4px}.pd-head h3 svg{color:#6366f1}.pd-head p{color:#667085;font-size:13.5px;margin:0 0 16px}.pd-head a,.pd a{color:#6366f1}.pd-loading{display:flex;align-items:center;gap:8px;color:#667085;padding:16px}.pd-notice{display:flex;align-items:center;gap:8px;border-radius:10px;padding:10px 13px;font-size:13px;margin-bottom:14px}.pd-notice--ok{background:#ecfdf3;border:1px solid #abefc6;color:#027a48}.pd-notice--error{background:#fef3f2;border:1px solid #fecdca;color:#b42318}.pd-data{display:flex;flex-wrap:wrap;gap:16px;font-size:13px;color:#475467;margin-bottom:14px}.pd-rights{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}.pd-toggle{display:flex;align-items:flex-start;gap:8px;font-size:13px;color:#475467;margin:12px 0;line-height:1.4}.pd-toggle input{margin-top:2px}.pd-danger{margin-top:18px;border:1px solid #fecdca;border-radius:14px;padding:16px;background:#fffbfa}.pd-danger h4{margin:0 0 6px;font-size:14px;color:#b42318}.pd-danger-note{font-size:12.5px;color:#667085;line-height:1.5;margin:0 0 12px}.pd-danger-actions{display:flex;flex-wrap:wrap;gap:10px}.pd-modal-overlay{position:fixed;inset:0;background:#10182873;display:flex;align-items:center;justify-content:center;padding:20px;z-index:1000}.pd-modal{background:#fff;border-radius:18px;padding:24px;width:100%;max-width:460px;box-shadow:0 12px 32px #10182833}.pd-modal h3{margin:0 0 12px;font-size:18px;color:#1d2939}.pd-modal p{font-size:13.5px;color:#475467;line-height:1.55}.pd-field{display:flex;flex-direction:column;gap:5px;margin:12px 0}.pd-field span{font-size:12.5px;color:#344054}.pd-field input{border:1px solid #ececf2;border-radius:10px;padding:9px 12px;font-size:14px}.pd-modal-actions{display:flex;gap:10px;margin-top:18px}.pd-spin{animation:pd-spin 1s linear infinite}@keyframes pd-spin{to{transform:rotate(360deg)}}.cm-overlay{position:fixed;inset:0;background:#0f172a8c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:20px;z-index:1000;animation:cm-fade .12s ease-out}.cm-modal{width:100%;max-width:420px;background:#fff;border-radius:16px;padding:28px 26px 22px;box-shadow:0 20px 60px #0f172a47;text-align:center;animation:cm-pop .14s ease-out}.cm-icon-wrap{display:flex;justify-content:center;margin-bottom:14px}.cm-icon{width:52px;height:52px;border-radius:999px;display:flex;align-items:center;justify-content:center}.cm-icon--danger{background:#fef2f2;color:#dc2626}.cm-icon--success{background:#ecfdf5;color:#059669}.cm-icon--primary{background:#eff6ff;color:#2563eb}.cm-title{margin:0 0 8px;font-size:18px;font-weight:700;color:#111827}.cm-desc{margin:0 0 18px;font-size:14px;line-height:1.5;color:#6b7280}.cm-field{text-align:left;margin:0 0 18px}.cm-label{display:block;margin-bottom:6px;font-size:13px;font-weight:600;color:#374151}.cm-textarea{width:100%;border:1px solid #d1d5db;border-radius:10px;padding:10px 12px;font-size:14px;font-family:inherit;color:#111827;resize:vertical;box-sizing:border-box}.cm-textarea:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f126}.cm-actions{display:flex;gap:10px;justify-content:center}.cm-btn{flex:1;padding:11px 16px;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;border:1px solid transparent;transition:background .15s ease,border-color .15s ease,opacity .15s ease}.cm-btn:disabled{opacity:.5;cursor:not-allowed}.cm-btn--cancel{background:#fff;border-color:#d1d5db;color:#374151}.cm-btn--cancel:hover{background:#f9fafb}.cm-btn--danger{background:#dc2626;color:#fff}.cm-btn--danger:hover:not(:disabled){background:#b91c1c}.cm-btn--success{background:#059669;color:#fff}.cm-btn--success:hover:not(:disabled){background:#047857}.cm-btn--primary{background:#2563eb;color:#fff}.cm-btn--primary:hover:not(:disabled){background:#1d4ed8}@keyframes cm-fade{0%{opacity:0}to{opacity:1}}@keyframes cm-pop{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.profile-tabs button,.profile-actions button,.profile-actions a,.info-actions button,.btn-upload-photo,.btn-remove{display:inline-flex;align-items:center;gap:8px}.admin-icon{color:#6366f1}.profile-page{min-height:100vh;background:#f5f5f5}.profile-header{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;padding:48px 40px;display:flex;gap:40px;align-items:center;flex-wrap:wrap;border-bottom-left-radius:32px;border-bottom-right-radius:32px}.profile-avatar{display:flex;flex-direction:column;align-items:center;gap:15px}.avatar-placeholder{width:120px;height:120px;border-radius:50%;background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;font-size:3rem;font-weight:700;border:2px solid rgba(255,255,255,.4);box-shadow:0 10px 30px #00000026}.btn-upload-photo{background:#fff3;color:#fff;border:1px solid white;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:.9rem;transition:background .3s}.btn-upload-photo:hover{background:#ffffff4d}.profile-info{flex:1}.profile-info h1{margin:0 0 5px;font-size:2rem}.user-email{margin:0 0 10px;opacity:.9;font-size:1.1rem}.role-badge{display:inline-block;padding:6px 14px;border-radius:16px;font-size:.85rem;font-weight:600;text-transform:uppercase;background:#fff3;border:1px solid white}.profile-actions{display:flex;gap:10px}.profile-actions button,.profile-actions a{padding:10px 20px;border-radius:6px;font-weight:600;cursor:pointer;text-decoration:none;border:none;transition:opacity .3s}.btn-danger{background:#dc3545;color:#fff}.profile-actions button:hover,.profile-actions a:hover{opacity:.8}.profile-content{border-radius:12px;padding:0}.tab-content{padding:30px}@media(max-width:640px){.tab-content{padding:18px 16px}.favorites-grid{grid-template-columns:1fr;gap:16px}}.info-section h2{margin:0 0 20px;font-size:20px;font-weight:700;color:#333}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:30px}.info-item label{display:block;font-size:12px;font-weight:600;color:#999;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.info-item p{margin:0;font-size:16px;color:#333;font-weight:500}.info-actions{display:flex;gap:12px}.favorites-section h2{margin-top:0;margin-bottom:25px;color:#333}.favorites-group{margin-bottom:36px}.favorites-group-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 4px 12px;margin-bottom:16px;border-bottom:1px solid #eef0f3;flex-wrap:wrap}.favorites-group-title{display:flex;align-items:center;gap:8px;color:#1f2937}.favorites-group-title h3{margin:0;font-size:1.1rem;font-weight:700}.favorites-group-count{background:#eef2ff;color:#4338ca;font-size:.78rem;font-weight:700;padding:2px 9px;border-radius:999px}.favorites-group-link{display:inline-flex;align-items:center;gap:6px;background:none;border:none;color:#6366f1;font-weight:600;font-size:.85rem;cursor:pointer}.favorites-group-link:hover{text-decoration:underline}.favorites-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:22px}.favorite-card{display:flex;flex-direction:column;border:1px solid #e5e7eb;border-radius:18px;overflow:hidden;background:#fff;transition:transform .2s ease,box-shadow .2s ease}.favorite-card:hover{transform:translateY(-4px);box-shadow:0 15px 40px #00000014}.favorite-card-image{width:100%;height:170px;overflow:hidden;flex-shrink:0;background:#f3f4f6}.favorite-card-body{display:flex;flex-direction:column;flex:1;padding:18px 20px 20px;gap:6px}.favorite-card h3{margin:0 0 2px;color:#1f2937;font-size:1.05rem}.favorite-card-body .description{color:#6b7280;font-size:.9rem;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.favorite-card-body .price{color:#059669;font-weight:700;margin:4px 0 0}.favorite-rating{display:flex;align-items:center;gap:4px;margin-top:6px}.favorite-rating span{font-size:13px;color:#6b7280}.favorite-card-actions{display:flex;gap:8px;margin-top:auto;padding-top:14px}.favorite-action-view{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;font-size:13px}.favorite-action-remove{display:flex;align-items:center;gap:4px;padding:8px 14px;font-size:13px}.restaurant-name{color:#666;font-size:.9rem;margin-bottom:15px}.btn-remove{background:#dc3545;color:#fff;padding:8px 16px;border:none;border-radius:6px;cursor:pointer;font-size:.9rem}.btn-remove:hover{opacity:.9}.admin-section h2{margin-top:0;margin-bottom:25px;color:#333}.admin-links{display:grid;gap:20px}.admin-link{display:flex;align-items:center;gap:20px;padding:30px;background:#fff;border-radius:20px;border:1px solid #e5e7eb;text-decoration:none;transition:.2s ease}.admin-link:hover{transform:translateY(-4px);box-shadow:0 20px 50px #00000014;border-color:#6366f1}.admin-link .icon{font-size:3rem}.admin-link h3{margin:0 0 5px;color:#333}.admin-link p{margin:0;color:#666;font-size:.95rem}.restaurant-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:25px;margin-bottom:30px}.restaurant-section h2{margin-top:0;margin-bottom:25px;color:#333}.status-badge{display:inline-block;padding:6px 12px;border-radius:12px;font-size:.85rem;font-weight:600;background:#dbeafe;color:#1e40af}.toast-notification{position:fixed;bottom:24px;right:24px;z-index:2000;max-width:400px;padding:16px 20px;border-radius:12px;box-shadow:0 10px 40px #00000026;animation:slideInUp .3s ease;display:flex;align-items:center;gap:12px}.toast-content{display:flex;align-items:center;gap:10px;width:100%}.toast-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.toast-message{font-size:.95rem;font-weight:500;line-height:1.4}.toast-notification.toast-success{background:#d1fae5;border:1px solid #a7f3d0;color:#047857}.toast-notification.toast-success .toast-icon{color:#047857}.toast-notification.toast-error{background:#fee2e2;border:1px solid #fecaca;color:#dc2626}.toast-notification.toast-error .toast-icon{color:#dc2626}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.loading,.error{text-align:center;padding:40px 20px;color:#999;font-size:16px;background:#f8f9fa;border-radius:8px}.error{color:#dc2626}.profile-page{background:#f5f5f7;padding-bottom:48px}.profile-header{background:#fff;color:#1d1d1f;border-radius:0 0 28px 28px;border:1px solid #ececf2;border-top:none;box-shadow:0 1px 2px #10182808;padding:34px 40px;gap:24px;max-width:920px;margin:0 auto}.avatar-placeholder{width:88px;height:88px;background:linear-gradient(135deg,#6366f1,#8b5cf6)!important;color:#fff;border:none!important;box-shadow:0 10px 24px #6366f147;font-size:2.2rem;-webkit-backdrop-filter:none;backdrop-filter:none}.profile-info h1{font-size:1.75rem;font-weight:650;letter-spacing:-.02em;color:#1d1d1f}.user-email{color:#86868b;opacity:1;font-size:.98rem}.role-badge{background:#f5f5f7;color:#1d1d1f;border:none;text-transform:none;font-weight:600;letter-spacing:0;padding:5px 12px;border-radius:999px}.profile-actions a,.profile-actions button{border-radius:999px;padding:10px 18px;font-weight:600;display:inline-flex;align-items:center;gap:7px;transition:background .15s ease}.btn-secondary{background:#f5f5f7!important;color:#1d1d1f!important;border:1px solid #ececf2!important}.btn-danger{background:#fff!important;color:#d92d20!important;border:1px solid #fecdca!important}.profile-actions button:hover,.profile-actions a:hover{opacity:1}.profile-actions .btn-secondary:hover{background:#ececf2!important}.profile-actions .btn-danger:hover{background:#fef3f2!important}.profile-content{max-width:920px;margin:22px auto 0;background:#fff;border:1px solid #ececf2;border-radius:22px;box-shadow:0 1px 2px #1018280a;overflow:hidden}.profile-tabs{border-bottom:1px solid #f2f2f4}.profile-tabs button{padding:16px;font-weight:600;color:#86868b;border-bottom:2px solid transparent}.profile-tabs button.active{color:#6366f1;border-bottom-color:#6366f1;background:transparent}.tab-content{padding:30px 32px 34px}.info-section h2,.favorites-section h2{font-size:20px;font-weight:700;letter-spacing:-.01em;color:#1d1d1f;margin:0 0 18px}.profile-page .info-grid{display:flex;flex-direction:column;gap:0;grid-template-columns:none;border:1px solid #ececf2;border-radius:16px;overflow:hidden;margin-bottom:24px}.profile-page .info-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 18px;border-bottom:1px solid #f2f2f4}.profile-page .info-item:last-child{border-bottom:none}.profile-page .info-item label{margin:0;text-transform:none;letter-spacing:0;font-size:14px;font-weight:500;color:#86868b}.profile-page .info-item p{margin:0;font-size:15px;font-weight:560;color:#1d1d1f;text-align:right;word-break:break-word}.info-actions{display:flex;gap:10px;flex-wrap:wrap}.info-actions .btn-primary,.info-actions .btn-secondary{border-radius:999px;padding:11px 20px;font-weight:600;display:inline-flex;align-items:center;gap:7px}.info-actions .btn-primary{background:#6366f1;color:#fff;border:none}.info-actions .btn-primary:hover{filter:brightness(.96)}@media(max-width:720px){.profile-header{padding:26px 18px;gap:16px;border-radius:0 0 22px 22px}.profile-content{margin:16px 14px 0}.tab-content{padding:20px 18px 24px}.profile-page .info-item{flex-direction:column;align-items:flex-start;gap:4px}.profile-page .info-item p{text-align:left}}.admin-sidebar{position:fixed;top:20px;left:20px;bottom:20px;width:272px;display:flex;flex-direction:column;border:1px solid #e2e8f0;border-radius:22px;background:linear-gradient(180deg,#fff,#f8fafc);box-shadow:0 18px 36px #0f172a14;z-index:30;overflow:hidden;transition:width .25s ease}.admin-sidebar--collapsed{width:64px}.admin-sidebar--collapsed .admin-sidebar-brand-text,.admin-sidebar--collapsed .admin-sidebar-account-meta,.admin-sidebar--collapsed .admin-sidebar-section-title,.admin-sidebar--collapsed .admin-sidebar-link-label,.admin-sidebar--collapsed .admin-sidebar-link-badge,.admin-sidebar--collapsed .admin-sidebar-ghost-label{display:none}.admin-sidebar--collapsed .admin-sidebar-brand{justify-content:center;padding:0}.admin-sidebar--collapsed .admin-sidebar-account{justify-content:center;padding:8px}.admin-sidebar--collapsed .admin-sidebar-nav{padding:14px 8px}.admin-sidebar--collapsed .admin-sidebar-link{justify-content:center;padding:10px;gap:0}.admin-sidebar--collapsed .admin-sidebar-footer{padding:10px 8px}.admin-sidebar--collapsed .admin-sidebar-ghost{justify-content:center;padding:9px;gap:0}.admin-sidebar-toggle{position:absolute;top:16px;right:12px;width:26px;height:26px;border-radius:8px;background:#f1f5f9;border:1px solid #e2e8f0;display:inline-flex;align-items:center;justify-content:center;color:#64748b;cursor:pointer;z-index:2;transition:color .15s ease,background .15s ease,right .2s ease,top .2s ease,transform .2s ease;flex-shrink:0}.admin-sidebar-toggle:hover{background:#eef2ff;color:#4338ca;border-color:#c7d2fe}.admin-sidebar--collapsed .admin-sidebar-toggle{top:10px;left:50%;right:auto;transform:translate(-50%)}.admin-sidebar-top{padding:20px 46px 14px 18px;border-bottom:1px solid #e2e8f0;display:flex;flex-direction:column;gap:12px;transition:padding .25s ease}.admin-sidebar--collapsed .admin-sidebar-top{padding:64px 8px 12px;align-items:center}.admin-sidebar-close{display:none}.admin-sidebar-brand{display:flex;align-items:center;gap:10px;border:none;background:transparent;text-align:left;color:#0f172a;padding:0;cursor:pointer}.admin-sidebar-brand-mark{width:30px;height:30px;border-radius:10px;background:linear-gradient(135deg,#6366f1,#818cf8);color:#fff;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.admin-sidebar-brand strong{display:block;font-size:15px;line-height:1.1}.admin-sidebar-brand small{display:block;color:#64748b;font-size:11px;margin-top:3px}.admin-sidebar-account{display:flex;align-items:center;gap:10px;background:#f1f5f9;border-radius:12px;padding:10px}.admin-sidebar-avatar{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,#0ea5e9,#3b82f6);color:#fff;font-weight:700;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.admin-sidebar-account-meta{min-width:0}.admin-sidebar-account-meta p{margin:0;font-size:13px;color:#0f172a;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-sidebar-account-meta small{display:block;margin-top:2px;font-size:11px;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-sidebar-nav{flex:1;overflow-y:auto;padding:14px 12px}.admin-sidebar-section+.admin-sidebar-section{margin-top:12px}.admin-sidebar-section-title{margin:0 8px 7px;font-size:10px;color:#94a3b8;letter-spacing:.08em;text-transform:uppercase;font-weight:700}.admin-sidebar-links{display:flex;flex-direction:column;gap:6px}.admin-sidebar-link{width:100%;border:1px solid transparent;background:transparent;border-radius:12px;padding:9px 10px;display:flex;align-items:center;gap:9px;color:#334155;cursor:pointer;transition:all .2s ease}.admin-sidebar-link:hover{background:#eef2ff;color:#4338ca}.admin-sidebar-link.active{background:linear-gradient(135deg,#4f46e5,#6366f1);color:#fff;border-color:#4f46e5;box-shadow:0 8px 18px #4f46e547}.admin-sidebar-link-icon{display:inline-flex;align-items:center;justify-content:center}.admin-sidebar-link-label{font-size:13px;font-weight:600;text-align:left;flex:1}.admin-sidebar-link-badge{min-width:22px;height:22px;border-radius:999px;font-size:11px;background:#0f172a1a;color:inherit;display:inline-flex;align-items:center;justify-content:center;padding:0 6px}.admin-sidebar-link.active .admin-sidebar-link-badge{background:#fff3}.admin-sidebar-footer{padding:12px;border-top:1px solid #e2e8f0;display:grid;gap:8px}.admin-sidebar-ghost{border:1px solid #e2e8f0;background:#fff;color:#334155;border-radius:10px;padding:9px 10px;display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:600;cursor:pointer}.admin-sidebar-ghost:hover{background:#f8fafc}.admin-sidebar-ghost-danger{color:#b91c1c;border-color:#fecaca;background:#fef2f2}.admin-sidebar-ghost-danger:hover{background:#fee2e2}.admin-sidebar-hamburger,.admin-sidebar-backdrop{display:none}@media(max-width:1100px){.admin-sidebar{width:64px}.admin-sidebar .admin-sidebar-brand-text,.admin-sidebar .admin-sidebar-account-meta,.admin-sidebar .admin-sidebar-section-title,.admin-sidebar .admin-sidebar-link-label,.admin-sidebar .admin-sidebar-link-badge,.admin-sidebar .admin-sidebar-ghost-label{display:none}.admin-sidebar .admin-sidebar-top{padding:14px 10px;align-items:center}.admin-sidebar .admin-sidebar-brand{justify-content:center;padding:0}.admin-sidebar .admin-sidebar-account{justify-content:center;padding:8px}.admin-sidebar .admin-sidebar-nav{padding:14px 8px}.admin-sidebar .admin-sidebar-link{justify-content:center;padding:10px;gap:0}.admin-sidebar .admin-sidebar-footer{padding:10px 8px}.admin-sidebar .admin-sidebar-ghost{justify-content:center;padding:9px;gap:0}.admin-sidebar-toggle{display:none}.admin-sidebar--collapsed{width:64px}}@media(max-width:768px){.admin-sidebar-hamburger{display:inline-flex;position:fixed;top:14px;left:14px;z-index:50;width:42px;height:42px;border-radius:12px;background:#fff;border:1px solid #e2e8f0;box-shadow:0 4px 12px #0f172a1f;align-items:center;justify-content:center;color:#334155;cursor:pointer;transition:background .15s ease,box-shadow .15s ease}.admin-sidebar-hamburger:hover{background:#eef2ff;color:#4338ca}.admin-sidebar-backdrop{display:block;position:fixed;inset:0;background:#0f172a66;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:39}.admin-sidebar{top:0;left:0;bottom:0;width:272px;border-radius:0 22px 22px 0;transform:translate(-310px);transition:transform .28s cubic-bezier(.4,0,.2,1);z-index:40}.admin-sidebar--mobile-open{transform:translate(0)}.admin-sidebar .admin-sidebar-brand-text,.admin-sidebar .admin-sidebar-account-meta,.admin-sidebar .admin-sidebar-section-title,.admin-sidebar .admin-sidebar-link-label,.admin-sidebar .admin-sidebar-link-badge,.admin-sidebar .admin-sidebar-ghost-label{display:revert}.admin-sidebar .admin-sidebar-top{padding:20px 46px 14px 18px;align-items:flex-start}.admin-sidebar .admin-sidebar-brand{justify-content:flex-start}.admin-sidebar .admin-sidebar-account{justify-content:flex-start;padding:10px}.admin-sidebar .admin-sidebar-nav{padding:14px 12px}.admin-sidebar .admin-sidebar-link{justify-content:flex-start;padding:9px 10px;gap:9px}.admin-sidebar .admin-sidebar-footer{padding:12px}.admin-sidebar .admin-sidebar-ghost{justify-content:flex-start;padding:9px 10px;gap:8px}.admin-sidebar-toggle{display:none}.admin-sidebar-close{display:inline-flex;position:absolute;top:16px;right:12px;width:26px;height:26px;border-radius:8px;background:#f1f5f9;border:1px solid #e2e8f0;align-items:center;justify-content:center;color:#64748b;cursor:pointer;z-index:2}.admin-sidebar-close:hover{background:#fee2e2;color:#b91c1c;border-color:#fecaca}}.support-panel{padding:24px 24px 48px 0;max-width:960px}.support-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.support-title{display:flex;gap:12px;color:#0f172a}.support-title h2{margin:0;font-size:1.35rem;font-weight:700}.support-title p{margin:4px 0 0;color:#64748b;font-size:.9rem;max-width:520px}.support-header-actions{display:flex;gap:8px;align-items:center}.support-btn-primary{display:inline-flex;align-items:center;gap:6px;background:#6366f1;color:#fff;border:none;border-radius:10px;padding:9px 16px;font-weight:600;font-size:.9rem;cursor:pointer;transition:background .15s ease}.support-btn-primary:hover{background:#4f46e5}.support-btn-primary:disabled{opacity:.6;cursor:default}.support-btn-ghost{display:inline-flex;align-items:center;gap:6px;background:#fff;color:#475569;border:1px solid #e2e8f0;border-radius:10px;padding:9px 14px;font-weight:600;font-size:.9rem;cursor:pointer}.support-btn-ghost:hover{background:#f8fafc}.support-stats{display:flex;gap:12px;margin-top:20px}.support-stat{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:12px 18px;font-size:.82rem;color:#64748b;font-weight:600}.support-stat span{display:block;font-size:1.5rem;font-weight:800;color:#0f172a}.support-filters{display:flex;gap:10px;margin-top:18px}.support-filters select{padding:8px 12px;border:1px solid #e2e8f0;border-radius:10px;font-size:.88rem;color:#334155;background:#fff}.support-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;padding:10px 14px;font-size:.88rem;margin:14px 0 0}.support-empty{color:#94a3b8;padding:24px 0}.support-empty-card{margin-top:24px;border:1px dashed #cbd5e1;border-radius:14px;padding:40px 24px;text-align:center;color:#94a3b8;display:flex;flex-direction:column;align-items:center;gap:12px}.support-list{list-style:none;margin:20px 0 0;padding:0;display:flex;flex-direction:column;gap:10px}.support-row{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:14px 16px;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,transform .1s ease}.support-row:hover{border-color:#c7d2fe;box-shadow:0 4px 14px #0f172a0f}.support-row-top{display:flex;align-items:center;gap:10px}.support-row-subject{font-weight:600;color:#0f172a;font-size:.96rem}.support-row-meta{display:flex;gap:8px;margin-top:5px;color:#94a3b8;font-size:.8rem;flex-wrap:wrap}.support-row-rest{color:#475569;font-weight:600}.support-cat{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;padding:3px 8px;border-radius:999px}.support-cat-FIX{background:#fef3c7;color:#b45309}.support-cat-FEATURE{background:#ede9fe;color:#6d28d9}.support-cat-HELP{background:#e0f2fe;color:#0369a1}.support-status{font-size:.74rem;font-weight:700;padding:4px 10px;border-radius:999px;white-space:nowrap}.support-status-OPEN{background:#dcfce7;color:#15803d}.support-status-IN_PROGRESS{background:#dbeafe;color:#1d4ed8}.support-status-RESOLVED{background:#f1f5f9;color:#475569}.support-status-CLOSED{background:#e2e8f0;color:#64748b}.support-overlay{position:fixed;inset:0;background:#0f172a80;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.support-modal{background:#fff;border-radius:16px;width:100%;max-width:520px;max-height:90vh;overflow-y:auto;padding:22px;box-shadow:0 24px 60px #0f172a40}.support-modal-thread{max-width:600px;display:flex;flex-direction:column}.support-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.support-modal-header h3{margin:6px 0 0;font-size:1.15rem;color:#0f172a}.support-thread-rest{margin:4px 0 0;color:#64748b;font-size:.85rem;font-weight:600}.support-close{background:none;border:none;color:#94a3b8;cursor:pointer;padding:4px;border-radius:8px}.support-close:hover{background:#f1f5f9;color:#475569}.support-form{display:flex;flex-direction:column;gap:14px}.support-form label{display:flex;flex-direction:column;gap:6px;font-size:.85rem;font-weight:600;color:#334155}.support-form input,.support-form select,.support-form textarea,.support-reply textarea{border:1px solid #cbd5e1;border-radius:10px;padding:10px 12px;font-size:.92rem;font-family:inherit;color:#0f172a;resize:vertical}.support-form input:focus,.support-form textarea:focus,.support-reply textarea:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f126}.support-form-actions{display:flex;justify-content:flex-end;gap:10px}.support-status-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:.82rem;color:#64748b;padding:10px 0 14px;border-bottom:1px solid #f1f5f9}.support-status-pill{border:1px solid #e2e8f0;background:#fff;color:#475569;border-radius:999px;padding:5px 12px;font-size:.78rem;font-weight:600;cursor:pointer}.support-status-pill:hover{background:#f8fafc}.support-status-pill.active{background:#0f172a;color:#fff;border-color:#0f172a}.support-thread{display:flex;flex-direction:column;gap:12px;padding:16px 0;overflow-y:auto;max-height:50vh}.support-msg{max-width:82%;align-self:flex-start;background:#f1f5f9;border-radius:12px;padding:10px 14px}.support-msg-mine{align-self:flex-end;background:#eef2ff;border:1px solid #c7d2fe}.support-msg-author{font-size:.74rem;color:#94a3b8;font-weight:600;margin-bottom:4px}.support-msg-body{color:#1e293b;font-size:.92rem;white-space:pre-wrap;line-height:1.45}.support-reply{display:flex;gap:10px;align-items:flex-end;padding-top:12px;border-top:1px solid #f1f5f9}.support-reply textarea{flex:1}.support-closed-note{text-align:center;color:#94a3b8;font-size:.85rem;padding:14px 0 4px;border-top:1px solid #f1f5f9}@media(max-width:768px){.support-panel{padding:16px 16px 40px}.support-row{flex-direction:column;align-items:flex-start}.support-msg{max-width:92%}}.cat-combobox{position:relative;width:100%}.cat-combobox-control{display:flex;align-items:center;gap:8px;border:1px solid #d0d5dd;border-radius:10px;padding:0 12px;background:#fff;cursor:text;transition:border-color .15s ease,box-shadow .15s ease}.cat-combobox-control:focus-within{border-color:#6366f1;box-shadow:0 0 0 3px #6366f126}.cat-combobox-search-icon{color:#98a2b3;flex-shrink:0}.cat-combobox-control input{flex:1;border:none;outline:none;padding:11px 0;font-size:.95rem;background:transparent;color:#101828}.cat-combobox-chevron{color:#98a2b3;cursor:pointer;flex-shrink:0}.cat-combobox-menu{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:50;background:#fff;border:1px solid #e4e7ec;border-radius:12px;box-shadow:0 12px 32px #10182824;padding:6px;max-height:280px;overflow-y:auto}.cat-combobox-group{padding:4px 0}.cat-combobox-group+.cat-combobox-group{border-top:1px solid #f2f4f7}.cat-combobox-grouplabel{display:block;padding:6px 10px 4px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#98a2b3}.cat-combobox-item{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 10px;border:none;background:none;border-radius:8px;font-size:.92rem;color:#344054;cursor:pointer;text-align:left}.cat-combobox-item:hover{background:#f9fafb}.cat-combobox-item svg{color:#6366f1;flex-shrink:0}.cat-combobox-create{width:100%;display:flex;align-items:center;gap:8px;margin-top:4px;padding:10px;border:none;border-radius:8px;background:#eef2ff;color:#4338ca;font-size:.92rem;font-weight:600;cursor:pointer}.cat-combobox-create:hover{background:#e0e7ff}.cat-combobox-empty{padding:12px 10px;font-size:.88rem;color:#98a2b3}.bpu-modal{max-width:540px;width:100%;position:relative}.bpu-body{padding:4px 2px 2px}.bpu-field{margin-bottom:20px}.bpu-label{display:block;font-size:13px;font-weight:600;color:#344054;margin-bottom:8px}.bpu-segmented{display:flex;background:#f4f4f7;border:1px solid #ececf2;border-radius:12px;padding:4px;gap:4px}.bpu-segmented button{flex:1;padding:9px 12px;border:none;background:transparent;border-radius:9px;font-size:14px;font-weight:500;color:#667085;cursor:pointer;transition:all .15s ease}.bpu-segmented button.active{background:#fff;color:#6366f1;box-shadow:0 1px 2px #10182814}.bpu-select{width:100%;padding:11px 14px;border:1px solid #ececf2;border-radius:12px;font-size:14px;color:#1d2939;background:#fff;cursor:pointer}.bpu-select:focus{outline:none;border-color:#6366f1}.bpu-ops{display:grid;grid-template-columns:1fr 1fr;gap:8px}.bpu-op{display:flex;align-items:center;gap:8px;padding:11px 12px;border:1px solid #ececf2;border-radius:12px;background:#fff;font-size:13.5px;font-weight:500;color:#475467;cursor:pointer;transition:all .15s ease}.bpu-op:hover{border-color:#d6d6e6}.bpu-op.active{border-color:#6366f1;background:#f5f5ff;color:#4f46e5}.bpu-value-input{display:flex;align-items:center;border:1px solid #ececf2;border-radius:12px;padding:0 14px;background:#fff}.bpu-value-input:focus-within{border-color:#6366f1}.bpu-value-icon{color:#98a2b3;display:flex}.bpu-value-input input{flex:1;border:none;outline:none;padding:12px 10px;font-size:15px;color:#1d2939;background:transparent}.bpu-inline-error{color:#d92d20;font-size:12.5px;margin-top:6px}.bpu-error{display:flex;align-items:center;gap:8px;background:#fef3f2;border:1px solid #fecdca;color:#b42318;border-radius:12px;padding:10px 14px;font-size:13.5px;margin-bottom:16px}.bpu-empty{background:#f9fafb;border:1px dashed #d0d5dd;border-radius:12px;padding:14px;color:#667085;font-size:13.5px;text-align:center}.bpu-preview{border:1px solid #ececf2;border-radius:16px;padding:16px;margin-bottom:18px;background:#fcfcfd}.bpu-preview-head{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:#6366f1;margin-bottom:14px}.bpu-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px}.bpu-stat{background:#fff;border:1px solid #ececf2;border-radius:12px;padding:12px 8px;text-align:center}.bpu-stat-num{display:block;font-size:22px;font-weight:700;color:#1d2939}.bpu-stat-label{display:block;font-size:11.5px;color:#667085;margin-top:2px}.bpu-warning{display:flex;align-items:flex-start;gap:8px;background:#fffaeb;border:1px solid #fedf89;color:#b54708;border-radius:10px;padding:9px 12px;font-size:12.5px;margin-bottom:12px}.bpu-warning svg{flex-shrink:0;margin-top:1px}.bpu-examples-title{font-size:12px;font-weight:600;color:#667085;margin-bottom:8px}.bpu-examples{margin-top:4px}.bpu-example-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid #f2f2f6;font-size:13.5px}.bpu-example-row:last-child{border-bottom:none}.bpu-example-name{color:#344054;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bpu-example-prices{display:flex;align-items:center;gap:8px;flex-shrink:0}.bpu-old{color:#98a2b3;text-decoration:line-through}.bpu-arrow{color:#98a2b3}.bpu-new{color:#027a48;font-weight:600}.bpu-skipped{margin-top:10px}.bpu-skipped summary{cursor:pointer;font-size:13px;color:#667085;-webkit-user-select:none;user-select:none}.bpu-skip-row{display:flex;justify-content:space-between;gap:12px;padding:6px 0;font-size:13px;color:#475467;border-bottom:1px solid #f2f2f6}.bpu-skip-reason{color:#b54708;flex-shrink:0}.bpu-result-success{text-align:center;padding:8px 0 18px}.bpu-success-icon{width:56px;height:56px;border-radius:50%;background:#ecfdf3;color:#027a48;display:flex;align-items:center;justify-content:center;margin:0 auto 12px}.bpu-result-success h3{margin:0 0 6px;font-size:18px;color:#1d2939}.bpu-result-success p{margin:0;color:#667085;font-size:14px}.bpu-confirm-overlay{position:absolute;inset:0;background:#10182859;border-radius:inherit;display:flex;align-items:center;justify-content:center;padding:20px;z-index:5}.bpu-confirm{background:#fff;border-radius:18px;padding:22px;width:100%;max-width:400px;box-shadow:0 12px 32px #1018282e}.bpu-confirm h3{margin:0 0 14px;font-size:17px;color:#1d2939}.bpu-confirm-list{list-style:none;margin:0 0 14px;padding:0}.bpu-confirm-list li{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid #f2f2f6;font-size:13.5px}.bpu-confirm-list li span{color:#667085}.bpu-confirm-list li strong{color:#1d2939;text-align:right}.bpu-confirm-note{font-size:12.5px;color:#98a2b3;margin:0 0 16px}.bpu-spin{animation:bpu-spin 1s linear infinite}@keyframes bpu-spin{to{transform:rotate(360deg)}}@media(max-width:520px){.bpu-ops{grid-template-columns:1fr}.bpu-stats{grid-template-columns:repeat(3,1fr)}}.sp{max-width:1000px}.sp-head{margin-bottom:20px}.sp-title{display:flex;align-items:center;gap:8px;margin:0 0 6px;font-size:22px;color:#1d2939}.sp-title svg{color:#6366f1}.sp-sub{margin:0;color:#667085;font-size:14px;line-height:1.5;max-width:680px}.sp-loading,.sp-error{display:flex;align-items:center;gap:8px;padding:24px;color:#667085;font-size:14px}.sp-error{color:#b42318}.sp-notice{display:flex;align-items:center;gap:8px;border-radius:12px;padding:11px 14px;font-size:13.5px;margin-bottom:16px}.sp-notice svg{flex-shrink:0}.sp-notice--ok{background:#ecfdf3;border:1px solid #abefc6;color:#027a48}.sp-notice--pending{background:#eff8ff;border:1px solid #b2ddff;color:#175cd3}.sp-notice--error{background:#fef3f2;border:1px solid #fecdca;color:#b42318}.sp-current{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;background:#fff;border:1px solid #ececf2;border-radius:18px;padding:22px;box-shadow:0 1px 2px #1018280a;margin-bottom:16px}.sp-current-top{display:flex;align-items:center;gap:10px;margin-bottom:6px}.sp-current-name{font-size:18px;font-weight:700;color:#1d2939}.sp-current-price{font-size:26px;font-weight:700;color:#6366f1}.sp-current-desc{margin:6px 0 0;color:#667085;font-size:13.5px;max-width:420px}.sp-current-cycle{display:flex;flex-direction:column;gap:2px;text-align:right;min-width:180px;padding-left:16px}.sp-cycle-label{font-size:12px;color:#98a2b3}.sp-cycle-value{font-size:16px;font-weight:600;color:#344054}.sp-cycle-since{font-size:12px;color:#98a2b3}.sp-badge{font-size:11.5px;font-weight:600;padding:3px 9px;border-radius:999px}.sp-badge--ok{background:#ecfdf3;color:#027a48}.sp-badge--warn{background:#fffaeb;color:#b54708}.sp-badge--muted{background:#f2f4f7;color:#667085}.sp-pending{display:flex;align-items:center;gap:10px;background:#eff8ff;border:1px solid #b2ddff;color:#175cd3;border-radius:12px;padding:12px 14px;font-size:13.5px;margin-bottom:20px}.sp-pending svg{flex-shrink:0}.sp-pending-body{flex:1}.sp-pending-cancel{display:inline-flex;align-items:center;gap:4px;flex-shrink:0;background:#fff;border:1px solid #b2ddff;color:#175cd3;border-radius:8px;padding:6px 10px;font-size:12.5px;cursor:pointer}.sp-pending-cancel:hover{background:#f5faff}.sp-section-title{font-size:15px;color:#344054;margin:8px 0 12px}.sp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin-bottom:18px}.sp-card{display:flex;flex-direction:column;background:#fff;border:1px solid #ececf2;border-radius:16px;padding:18px;box-shadow:0 1px 2px #1018280a}.sp-card--current{border-color:#6366f1;box-shadow:0 0 0 1px #6366f1}.sp-card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.sp-card-name{font-size:16px;font-weight:700;color:#1d2939}.sp-card-tag{font-size:11px;font-weight:600;color:#6366f1;background:#f5f5ff;padding:2px 8px;border-radius:999px}.sp-card-price{font-size:20px;font-weight:700;color:#344054;margin-bottom:12px}.sp-card-features{list-style:none;margin:0 0 16px;padding:0;flex:1}.sp-card-features li{display:flex;align-items:flex-start;gap:6px;font-size:12.5px;color:#475467;padding:4px 0}.sp-card-features li svg{color:#12b76a;flex-shrink:0;margin-top:2px}.sp-card-btn{width:100%;padding:9px 12px;border-radius:10px;font-size:13.5px;font-weight:500;border:1px solid #d0d5dd;background:#fff;color:#344054;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px}.sp-card-btn:hover:not(:disabled){border-color:#98a2b3}.sp-card-btn--primary{background:#6366f1;border-color:#6366f1;color:#fff}.sp-card-btn--primary:hover:not(:disabled){background:#4f46e5}.sp-card-btn:disabled{opacity:.55;cursor:default}.sp-foot{font-size:12px;color:#98a2b3;margin:0}.sp-spin{animation:sp-spin 1s linear infinite}@keyframes sp-spin{to{transform:rotate(360deg)}}@media(max-width:640px){.sp-current-cycle{text-align:left;padding-left:0}}.notif-bell{position:relative}.notif-bell-btn{position:relative;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border:1px solid #ececf2;border-radius:12px;background:#fff;color:#475467;cursor:pointer;transition:all .15s ease}.notif-bell-btn:hover{border-color:#d6d6e6;color:#1d2939}.notif-bell-badge{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;padding:0 5px;display:flex;align-items:center;justify-content:center;background:#f04438;color:#fff;font-size:11px;font-weight:700;line-height:1;border-radius:999px;border:2px solid #fff}.notif-panel{position:absolute;right:0;top:calc(100% + 8px);width:360px;max-width:92vw;background:#fff;border:1px solid #ececf2;border-radius:16px;box-shadow:0 12px 32px #10182824;z-index:60;overflow:hidden}.notif-panel-head{display:flex;align-items:center;justify-content:space-between;padding:13px 16px;border-bottom:1px solid #f2f2f6;font-size:14px;font-weight:600;color:#1d2939}.notif-markall{display:inline-flex;align-items:center;gap:4px;background:none;border:none;cursor:pointer;color:#6366f1;font-size:12px;font-weight:500}.notif-markall:hover{text-decoration:underline}.notif-list{max-height:60vh;overflow-y:auto}.notif-empty{display:flex;align-items:center;justify-content:center;gap:8px;padding:32px 16px;color:#98a2b3;font-size:13.5px}.notif-item{display:flex;align-items:flex-start;gap:10px;width:100%;padding:12px 16px;border:none;border-bottom:1px solid #f6f6f9;background:#fff;text-align:left;cursor:pointer;transition:background .12s ease}.notif-item:hover{background:#fafafe}.notif-item--unread{background:#f5f5ff}.notif-item--unread:hover{background:#eeeefe}.notif-item-dot{width:8px;height:8px;border-radius:999px;margin-top:6px;flex-shrink:0}.notif-item-body{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.notif-item-title{font-size:13.5px;font-weight:600;color:#1d2939}.notif-item-msg{font-size:12.5px;color:#667085;line-height:1.4;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.notif-item-time{font-size:11px;color:#98a2b3;margin-top:2px}.notif-item-check{color:#6366f1;flex-shrink:0;margin-top:4px}.notif-spin{animation:notif-spin 1s linear infinite}@keyframes notif-spin{to{transform:rotate(360deg)}}.mi{max-width:900px}.mi-head{margin-bottom:18px}.mi-title{display:flex;align-items:center;gap:8px;margin:0 0 6px;font-size:22px;color:#1d2939}.mi-title svg{color:#6366f1}.mi-sub{margin:0;color:#667085;font-size:14px;line-height:1.5;max-width:680px}.mi-error{display:flex;align-items:center;gap:8px;margin-bottom:16px;background:#fef3f2;border:1px solid #fecdca;color:#b42318;border-radius:12px;padding:11px 14px;font-size:13.5px}.mi-drop{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:220px;border:2px dashed #d0d5dd;border-radius:18px;background:#fcfcfd;color:#475467;cursor:pointer;transition:all .15s ease;text-align:center}.mi-drop:hover{border-color:#6366f1;background:#f8f8ff}.mi-drop svg{color:#6366f1}.mi-drop input{display:none}.mi-drop--busy{cursor:default;opacity:.8}.mi-drop-title{font-size:16px;font-weight:600;color:#1d2939}.mi-drop-hint{font-size:12.5px;color:#98a2b3}.mi-block{background:#fff;border:1px solid #ececf2;border-radius:16px;padding:20px}.mi-muted{color:#667085;font-size:14px}.mi-applied{display:flex;align-items:center;gap:8px;color:#027a48;font-size:17px;font-weight:600;margin-bottom:10px}.mi-applied svg{background:#ecfdf3;border-radius:50%;padding:4px}.mi-summary{list-style:none;margin:0 0 14px;padding:0;color:#344054;font-size:13.5px}.mi-summary li{padding:3px 0}.mi-warn-li{color:#b54708}.mi-actions{display:flex;flex-wrap:wrap;gap:10px}.mi-actions--end{justify-content:flex-end;margin-top:18px}.mi-thumbs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.mi-thumb{display:block;width:72px;height:72px;border-radius:10px;overflow:hidden;border:1px solid #ececf2}.mi-thumb img{width:100%;height:100%;object-fit:cover}.mi-warn{display:flex;align-items:flex-start;gap:8px;margin-bottom:16px;background:#fffaeb;border:1px solid #fedf89;color:#b54708;border-radius:10px;padding:9px 12px;font-size:12.5px}.mi-warn svg{flex-shrink:0;margin-top:1px}.mi-section{border:1px solid #ececf2;border-radius:14px;padding:14px;margin-bottom:14px;background:#fcfcfd}.mi-section-name{width:100%;font-size:15px;font-weight:700;color:#1d2939;border:none;border-bottom:1px solid #ececf2;padding:4px 2px 8px;margin-bottom:10px;background:transparent}.mi-section-name:focus{outline:none;border-color:#6366f1}.mi-dishes{display:flex;flex-direction:column;gap:8px}.mi-dish{display:grid;grid-template-columns:1.3fr 2fr 90px 32px;gap:8px;align-items:center}.mi-dish input{border:1px solid #ececf2;border-radius:8px;padding:8px 10px;font-size:13px;color:#1d2939}.mi-dish input:focus{outline:none;border-color:#6366f1}.mi-dish-price.mi-needs{border-color:#f79009;background:#fffaeb}.mi-dish-del{border:none;background:none;color:#d92d20;cursor:pointer;display:flex;justify-content:center}.mi-add{align-self:flex-start;display:inline-flex;align-items:center;gap:5px;background:none;border:none;color:#6366f1;font-size:13px;font-weight:500;cursor:pointer;padding:4px 0}.mi-mode{margin-top:16px}.mi-mode-tabs{display:flex;gap:6px;background:#f4f4f7;border:1px solid #ececf2;border-radius:12px;padding:4px}.mi-mode-tabs button{flex:1;padding:9px 12px;border:none;background:transparent;border-radius:9px;font-size:14px;font-weight:500;color:#667085;cursor:pointer}.mi-mode-tabs button.active{background:#fff;color:#6366f1;box-shadow:0 1px 2px #10182814}.mi-mode-tabs button:disabled{opacity:.5;cursor:not-allowed}.mi-modify{margin-top:12px}.mi-field{display:flex;flex-direction:column;gap:5px;max-width:360px}.mi-field span{font-size:13px;font-weight:600;color:#344054}.mi-field select{border:1px solid #ececf2;border-radius:10px;padding:10px 12px;font-size:14px}.mi-impact{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.mi-chip{font-size:12px;font-weight:600;padding:4px 10px;border-radius:999px}.mi-chip--add{background:#ecfdf3;color:#027a48}.mi-chip--upd{background:#eff8ff;color:#175cd3}.mi-chip--keep{background:#f2f4f7;color:#475467}.mi-chip--dup{background:#fef3f2;color:#b42318}.mi-check{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:13px;color:#475467}.mi-spin{animation:mi-spin 1s linear infinite}@keyframes mi-spin{to{transform:rotate(360deg)}}@media(max-width:640px){.mi-dish{grid-template-columns:1fr 80px 30px}.mi-dish-desc{grid-column:1 / -1}}.mfa-panel{border:1px solid #e5e7eb;border-radius:14px;padding:18px 20px;background:#fff;max-width:620px}.mfa-panel--loading{color:#6b7280;font-size:14px}.mfa-head{display:flex;align-items:flex-start;gap:12px}.mfa-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.mfa-icon.is-on{background:#ecfdf5;color:#059669}.mfa-icon.is-off{background:#f3f4f6;color:#6b7280}.mfa-head-text{flex:1;min-width:0}.mfa-head-text h3{margin:0 0 3px;font-size:15px;font-weight:700;color:#111827}.mfa-head-text p{margin:0;font-size:13px;line-height:1.45;color:#6b7280}.mfa-badge{flex-shrink:0;font-size:12px;font-weight:600;padding:4px 10px;border-radius:999px}.mfa-badge.is-on{background:#ecfdf5;color:#047857}.mfa-badge.is-off{background:#f3f4f6;color:#6b7280}.mfa-msg{margin-top:14px;padding:9px 12px;border-radius:9px;font-size:13px}.mfa-msg--success{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0}.mfa-msg--error{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca}.mfa-form{margin-top:14px}.mfa-label{display:block;font-size:13px;font-weight:600;color:#374151;margin-bottom:6px}.mfa-input{width:100%;max-width:220px;border:1px solid #d1d5db;border-radius:9px;padding:9px 12px;font-size:15px;color:#111827;box-sizing:border-box}.mfa-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f126}.mfa-actions{display:flex;gap:10px;margin-top:12px}.mfa-btn{display:inline-flex;align-items:center;gap:6px;margin-top:14px;padding:9px 16px;border-radius:9px;font-size:14px;font-weight:600;border:1px solid transparent;cursor:pointer;transition:background .15s ease,border-color .15s ease,opacity .15s ease}.mfa-form .mfa-btn,.mfa-actions .mfa-btn{margin-top:0}.mfa-btn:disabled{opacity:.5;cursor:not-allowed}.mfa-btn--primary{background:#4f46e5;color:#fff}.mfa-btn--primary:hover:not(:disabled){background:#4338ca}.mfa-btn--danger{background:#dc2626;color:#fff}.mfa-btn--danger:hover:not(:disabled){background:#b91c1c}.mfa-btn--ghost{background:#fff;border-color:#d1d5db;color:#374151}.mfa-btn--ghost:hover:not(:disabled){background:#f9fafb}.profile-admin-page{width:100%;margin:0;padding:0}.profile-admin-layout{min-height:100vh;background:radial-gradient(circle at 12% 12%,rgba(99,102,241,.08) 0,transparent 32%),radial-gradient(circle at 88% 95%,rgba(14,165,233,.08) 0,transparent 30%),#f5f7fb}.profile-admin-main{margin-left:312px;min-height:100vh;padding:24px 28px;transition:margin-left .25s ease}.profile-admin-layout.sidebar-collapsed .profile-admin-main{margin-left:104px}@media(max-width:1100px){.profile-admin-main{margin-left:104px!important}}@media(max-width:640px){.profile-admin-main{margin-left:0!important;padding:72px 8px 20px}}.btn-secondary{background:#fff3;color:#fff;border:1px solid white}.btn-danger{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.5)}.profile-actions button:hover,.profile-actions a:hover{background:#ffffff4d;transform:translateY(-2px)}.profile-content{border-radius:12px;padding:0;background:none!important;border:none!important}.profile-tabs{display:flex;gap:0;padding:0}.profile-tabs button{flex:1;padding:20px 16px;background:none;border:none;cursor:pointer;font-size:14px;font-weight:500;color:#666;border-bottom:3px solid transparent;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:8px}.profile-tabs button.active{color:#6366f1;border-bottom-color:#6366f1;background:#f8f9fa}.tab-content{padding:10px 4px}.workspace-tab-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin:0 0 18px;padding:22px 24px;border:1px solid #e2e8f0;border-radius:18px;background:linear-gradient(180deg,#fff,#f8fafc);box-shadow:0 8px 22px #0f172a0d}.workspace-tab-kicker{display:inline-flex;align-items:center;margin-bottom:8px;padding:5px 10px;border-radius:999px;background:#6366f11a;color:#4f46e5;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.workspace-tab-hero h1{margin:0 0 6px;color:#0f172a;font-size:30px;font-weight:750;letter-spacing:-.01em;line-height:1.15}.workspace-tab-hero p{margin:0;color:#475569;line-height:1.55;font-size:15px;max-width:760px}.workspace-tab-badge{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:12px;background:#fff;border:1px solid #dbeafe;color:#4f46e5;font-weight:600;white-space:nowrap}.info-section{background:#fff;border:1px solid #ececf2;border-radius:22px;padding:30px 32px;box-shadow:0 1px 2px #1018280a;max-width:760px}.info-actions button,.info-actions .btn-primary,.info-actions .btn-secondary{padding:11px 20px;font-weight:600}.info-section h2{margin:0 0 22px;font-size:22px;font-weight:700;letter-spacing:-.02em;color:#1d1d1f}.info-section .info-grid{display:flex;flex-direction:column;grid-template-columns:none;gap:0;border:1px solid #ececf2;border-radius:16px;overflow:hidden;margin-bottom:24px;width:100%}.info-section .info-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 18px;border-bottom:1px solid #f2f2f4}.info-section .info-item:last-child{border-bottom:none}.info-section .info-item label{display:block;margin:0;text-transform:none;letter-spacing:0;font-size:14px;font-weight:500;color:#86868b}.info-section .info-item p{margin:0;font-size:15px;font-weight:560;color:#1d1d1f;text-align:right;word-break:break-word}.info-actions{display:flex;gap:12px;flex-wrap:wrap}.info-actions button{display:flex;align-items:center;gap:8px;padding:12px 20px;background:#6366f1;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:600;transition:all .3s ease}.btn-primary{background:#6366f1;color:#fff;border:none;padding:12px 20px;border-radius:6px;cursor:pointer;font-weight:600;display:flex;align-items:center;gap:8px}.btn-primary:hover{background:#5568d3;transform:translateY(-2px)}.no-data{text-align:center;padding:40px 20px;color:#999;font-size:16px;background:#f8f9fa;border-radius:8px}.no-restaurant{text-align:center;padding:60px 20px;color:#666}.no-restaurant svg{color:#ddd;margin-bottom:20px}.no-restaurant h3{margin:0 0 8px;font-size:18px;font-weight:600;color:#333}.no-restaurant p{margin:0 0 20px;color:#999;font-size:14px}.no-restaurant button.btn-primary{display:inline-flex;align-items:center;gap:8px}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:#fff;border-radius:12px;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px;border-bottom:1px solid #f0f0f0}.modal-header h2{margin:0;font-size:18px;font-weight:600;color:#333}.modal-close{background:none;border:none;cursor:pointer;color:#999;padding:4px;display:flex;align-items:center}.modal-close:hover{color:#333}.form-error{margin:20px;padding:12px;background:#fee;color:#c33;border-radius:6px;font-size:14px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:20px}.form-grid label{display:flex;flex-direction:column;font-weight:600;color:#333;font-size:14px}.form-grid label span{color:#c33}.form-grid label:nth-child(5){grid-column:span 2}.form-grid input,.form-grid select,.form-grid textarea{padding:10px;border:1px solid #ddd;border-radius:6px;font-size:14px;font-family:inherit;margin-top:6px}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #667eea1a}.modal-actions{display:flex;gap:12px;padding:20px;border-top:1px solid #f0f0f0}.modal-actions .btn-action{flex:1}.btn-primary-modal{flex:1;padding:12px;background:#6366f1;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:600;transition:all .3s ease}.btn-primary-modal:hover:not(:disabled){background:#5568d3}.btn-primary-modal:disabled{opacity:.6;cursor:not-allowed}.btn-secondary-modal{flex:1;padding:12px;background:#f0f0f0;color:#333;border:none;border-radius:6px;cursor:pointer;font-weight:600;transition:all .3s ease}.btn-secondary-modal:hover{background:#e0e0e0}.btn-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite;margin-right:6px}@keyframes spin{to{transform:rotate(360deg)}}.confirm-modal{text-align:center;max-width:400px}.confirm-icon-wrap{padding:30px 20px 20px}.confirm-icon{width:60px;height:60px;margin:0 auto;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:30px}.confirm-icon.icon-warn{background:#fee;color:#f97316}.confirm-icon.icon-info{background:#e0f2fe;color:#0ea5e9}.confirm-title{margin:0 0 8px;font-size:18px;font-weight:600;color:#333}.confirm-desc{margin:0 0 20px;font-size:14px;color:#666;padding:0 20px;line-height:1.5}.btn-confirm-danger{background:#ef4444;color:#fff}.btn-confirm-danger:hover:not(:disabled){background:#dc2626}.btn-confirm-success{background:#22c55e;color:#fff}.btn-confirm-success:hover:not(:disabled){background:#16a34a}.restaurant-info{display:grid;grid-template-columns:1fr;gap:30px}.restaurant-header-card{display:flex;align-items:center;gap:20px;padding:20px;border-radius:16px;background:#fff;color:#111;border:1px solid #e5e7eb;box-shadow:0 8px 24px #00000014}.restaurant-header-card:hover{transform:translateY(-1px);box-shadow:0 10px 28px #0000001a}.restaurant-header-icon{flex-shrink:0;width:48px;height:48px;background:#e5e7eb;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#6366f1}.restaurant-header-content{flex:1}.restaurant-header-content h2{margin:0 0 4px;font-size:20px;font-weight:700}.restaurant-media-section{display:grid}.restaurant-banner-card{position:relative;width:100%;height:260px;min-height:260px;max-height:260px;border-radius:16px 16px 0 0;overflow:hidden;background:#f8fafc;border:1px solid #e5e7eb;border-bottom:none;display:flex;align-items:center;justify-content:center}.restaurant-banner-card img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.banner-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#64748b;font-size:.95rem}.banner-actions{position:absolute;right:18px;top:18px}.restaurant-logo-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px;border-radius:0 0 16px 16px;background:#fff;border:1px solid #e5e7eb;border-top:none}.restaurant-logo-preview{width:84px;height:84px;border-radius:18px;overflow:hidden;background:#eef2ff;display:flex;align-items:center;justify-content:center;flex-shrink:0}.logo-preview-label{display:block;width:100%;height:100%;cursor:pointer}.logo-preview-label input{display:none}.restaurant-logo-preview img{width:100%;height:100%;object-fit:cover}.logo-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;gap:6px;color:#475569}.logo-placeholder p{margin:0;font-size:12px}.restaurant-logo-card-content{flex:1;display:flex;align-items:center;justify-content:space-between;gap:16px}.restaurant-logo-card-content h3{margin:0 0 4px;font-size:18px}.restaurant-logo-actions{display:flex;align-items:center}.restaurant-slug{margin:0 0 6px;opacity:.7;font-size:.85rem;letter-spacing:.5px}.restaurant-category-badge{display:inline-block;background:#e5e7eb;padding:4px 10px;border-radius:8px;font-size:.75rem;font-weight:500;color:#6366f1;border:none}.header-status{display:flex;align-items:center}.approval-status{padding:6px 14px;background:#fff3;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.approval-status.status-approved{background:#22c55e33;color:#22c55e}.approval-status.status-pending{background:#f9731633;color:#f97316}.approval-status.status-rejected{background:#ef444433;color:#ef4444}.restaurant-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.restaurant-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;transition:all .3s ease}.restaurant-card:hover{box-shadow:0 4px 20px #0000001a;border-color:#6366f1}.card-header{display:flex;align-items:center;gap:12px;padding:20px;border-bottom:1px solid #f0f0f0;background:#f8f9fa}.card-icon{width:40px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff}.card-icon.location-icon{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.card-icon.contact-icon{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff}.card-icon.subscription-icon{background:linear-gradient(135deg,#ec4899,#db2777);color:#fff}.card-header h3{margin:0;font-size:16px;font-weight:600;color:#333}.card-body{padding:16px 20px}.card-row{display:flex;justify-content:space-between;align-items:center;font-size:14px}.card-label{font-weight:600;color:#999;text-transform:uppercase;font-size:11px;letter-spacing:.5px}.card-value{text-align:right;color:#333;font-weight:500;flex:1;margin-left:12px}.card-value.address-value{text-align:right;white-space:pre-wrap;word-break:break-word}.card-value.contact-value{text-align:right;word-break:break-all}.card-divider{height:1px;background:#f0f0f0;margin:12px 0}.subscription-tier{display:flex;justify-content:space-between;align-items:center}.tier-badge{display:inline-block;padding:6px 12px;border-radius:6px;font-size:12px;font-weight:600;text-transform:uppercase}.tier-badge.tier-gold{background:#fef3c7;color:#d97706}.tier-badge.tier-silver{background:#e5e7eb;color:#6b7280}.tier-badge.tier-bronze{background:#fed7aa;color:#b45309}.tier-badge.tier-platinum{background:#e0e7ff;color:#4f46e5}.restaurant-actions{display:flex;gap:12px;justify-content:flex-start}.btn-action{padding:12px 20px;border:none;border-radius:6px;cursor:pointer;font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .3s ease;font-size:14px}.btn-action:disabled{opacity:.6;cursor:not-allowed}.btn-action-primary{background:#6366f1;color:#fff}.btn-action-primary:hover{background:#5568d3;transform:translateY(-2px)}.btn-action-secondary{background:#f0f0f0;color:#333}.btn-action-secondary:hover{background:#e0e0e0;transform:translateY(-2px)}.btn-action-icon{width:34px;height:34px;padding:0;display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1px solid #ececf2;border-radius:9px;color:#667085;transition:background .15s ease,color .15s ease,border-color .15s ease}.btn-action-icon:hover{background:#eef2ff;color:#6366f1;border-color:#c7d2fe;transform:none}.btn-action-icon.btn-danger:hover{background:#d92d20;color:#fff;border-color:#d92d20}.btn-action-icon svg{flex-shrink:0}.menu-section h2{margin-top:0;margin-bottom:25px;color:#333}.payments-section{display:flex;flex-direction:column;gap:18px}.payments-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border:1px solid #e2e8f0;border-radius:18px;padding:24px;background:radial-gradient(circle at 85% 20%,rgba(14,165,233,.12),transparent 42%),linear-gradient(180deg,#fff,#f8fafc);box-shadow:0 10px 24px #0f172a0d}.payments-kicker{display:inline-flex;align-items:center;padding:5px 10px;border-radius:999px;background:#e0f2fe;color:#0369a1;font-size:12px;text-transform:none;letter-spacing:.01em;font-weight:600;margin-bottom:10px}.payments-hero h2{margin:0 0 6px;color:#0f172a;font-size:30px;font-weight:700;letter-spacing:-.01em;line-height:1.2}.payments-hero p{margin:0;color:#64748b;line-height:1.6;font-size:15px;max-width:720px}.payments-hero-badge{display:inline-flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid #bae6fd;border-radius:12px;background:#f0f9ff;color:#0369a1;font-weight:600;font-size:14px;white-space:nowrap}.payments-metrics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.payments-metric-card{border:1px solid #e2e8f0;border-radius:16px;padding:16px;background:linear-gradient(180deg,#fff,#f8fafc);box-shadow:0 8px 18px #0f172a0a}.payments-metric-label{font-size:12px;color:#64748b;text-transform:none;letter-spacing:.01em;margin-bottom:10px;font-weight:600}.payments-metric-value{display:inline-flex;align-items:center;width:fit-content;padding:6px 12px;border-radius:6px;background:#e5e7eb;color:#6b7280;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;line-height:1}.payments-metric-pill{display:inline-flex;padding:6px 10px;border-radius:999px;font-size:12px;text-transform:none;font-weight:600;letter-spacing:.01em}.payments-metric-pill.status-approved{background:#dcfce7;color:#166534}.payments-metric-pill.status-pending{background:#fef3c7;color:#92400e}.payments-metric-pill.status-rejected{background:#fee2e2;color:#991b1b}.payments-panel{border:1px solid #e2e8f0;border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 8px 26px #0f172a0a}.payments-panel-header{border-bottom:1px solid #e2e8f0;padding:20px 22px;background:#f8fafc}.payments-panel-header h3{margin:0 0 4px;font-size:19px;color:#0f172a;font-weight:700;letter-spacing:-.01em}.payments-panel-header span{color:#64748b;font-size:14px}.payments-form{padding:20px 22px 22px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.payments-field{display:flex;flex-direction:column;gap:7px}.payments-field-full{grid-column:span 2}.payments-field span{font-size:14px;color:#0f172a;font-weight:600}.payments-field input{width:100%;padding:11px 12px;border-radius:10px;border:1px solid #cbd5e1;font-size:14px;color:#1e293b}.payments-field input:focus{outline:none;border-color:#0ea5e9;box-shadow:0 0 0 3px #0ea5e924}.payments-field small{color:#64748b;font-size:12px;line-height:1.4}.payments-actions{grid-column:span 2;display:flex;justify-content:flex-end}.tables-section{display:flex;flex-direction:column;gap:16px}.tables-header{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;border:1px solid #e2e8f0;border-radius:16px;padding:20px;background:linear-gradient(180deg,#fff,#f8fafc)}.tables-header h2{margin:0 0 4px}.tables-header p{margin:0;color:#64748b}.tables-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}.table-card-premium{display:flex;align-items:center;gap:12px;border:1px solid #e2e8f0;border-radius:14px;padding:14px;background:#fff;box-shadow:0 8px 18px #0f172a0a;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.table-card-premium:hover{transform:translateY(-2px);border-color:#cbd5e1;box-shadow:0 12px 22px #0f172a14}.table-card-icon{width:38px;height:38px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;color:#0f766e;background:#ccfbf1}.table-card-meta{display:flex;flex-direction:column;gap:6px}.table-card-number{font-size:16px;color:#0f172a;font-weight:700}.table-card-status{display:inline-flex;width:fit-content;font-size:11px;text-transform:uppercase;letter-spacing:.06em;padding:4px 8px;border-radius:999px;font-weight:700}.table-card-status.enabled{background:#dcfce7;color:#166534}.table-card-status.disabled{background:#e2e8f0;color:#475569}.analytics-dashboard{display:flex;flex-direction:column;gap:20px}.analytics-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:22px 24px;background:linear-gradient(180deg,#fff,#f8fafc);border:1px solid #e5e7eb;border-radius:18px;box-shadow:0 10px 24px #0f172a0d}.analytics-kicker{display:inline-block;margin-bottom:8px;padding:5px 10px;border-radius:999px;background:#6366f11a;color:#4f46e5;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.analytics-hero h2{margin:0 0 6px;font-size:30px;color:#111827}.analytics-hero p{margin:0;max-width:700px;color:#64748b;line-height:1.6}.analytics-hero-badge{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:12px;background:#fff;color:#4f46e5;font-weight:600;white-space:nowrap}.analytics-banner{border-radius:14px;padding:12px 14px;border:1px solid #e5e7eb}.analytics-banner--top{background:#f0f9ff;border-color:#bae6fd}.analytics-banner--inline{background:#fefce8;border-color:#fde047}.analytics-banner-label{font-size:10px;color:#6b7280;margin-bottom:4px;text-transform:uppercase;letter-spacing:.08em}.analytics-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.analytics-stat-card{position:relative;overflow:hidden;padding:18px 18px 20px;background:linear-gradient(180deg,#fff,#f8fafc);border:1px solid #e5e7eb;border-radius:18px;box-shadow:0 10px 24px #0f172a0d;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.analytics-stat-card:after{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:3px;background:linear-gradient(90deg,#6366f1,#8b5cf6);opacity:.9}.analytics-stat-card:hover{transform:translateY(-2px);border-color:#c7d2fe;box-shadow:0 16px 32px #4f46e51a}.analytics-stat-icon{width:42px;height:42px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;margin-bottom:12px}.analytics-stat-icon--dishes{background:#4f46e5;color:#fff}.analytics-stat-icon--menus{background:#0284c7;color:#fff}.analytics-stat-icon--votes{background:#16a34a;color:#fff}.analytics-stat-label{font-size:13px;font-weight:600;color:#64748b;margin-bottom:6px}.analytics-stat-value{font-size:32px;font-weight:800;color:#111827;line-height:1}.analytics-panels-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.analytics-panel{background:linear-gradient(180deg,#fff,#fbfdff);border:1px solid #e5e7eb;border-radius:18px;padding:18px;box-shadow:0 10px 24px #0f172a0a}.analytics-panel--comments{padding:20px}.analytics-panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.analytics-panel-header h3{margin:0;color:#0f172a;font-size:17px}.analytics-chip{display:inline-flex;align-items:center;padding:5px 10px;border-radius:999px;background:#eef2ff;color:#4f46e5;font-size:11px;font-weight:700}.analytics-chip--muted{background:#f1f5f9;color:#475569}.analytics-table-wrap{overflow-x:auto}.analytics-table{width:100%;border-collapse:collapse}.analytics-table thead tr{background:#f8fafc}.analytics-table th{padding:12px 14px;text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#64748b;border-bottom:1px solid #e5e7eb}.analytics-table td{padding:13px 14px;color:#1f2937;border-bottom:1px solid #eef2f7}.analytics-table tbody tr:hover{background:#fafbff}.analytics-comments-list{display:flex;flex-direction:column;gap:14px}.analytics-comment-card{padding:16px;border:1px solid #e5e7eb;border-radius:16px;background:linear-gradient(180deg,#fff,#fafcff)}.analytics-comment-head{margin-bottom:12px}.analytics-comment-title{font-size:16px;font-weight:700;color:#111827}.analytics-comment-meta{margin-top:4px;color:#64748b;font-size:13px}.analytics-comment-quotes{display:flex;flex-direction:column;gap:10px}.analytics-quote-item{padding:12px 14px;background:#f8fafc;border:1px solid #edf2f7;border-radius:12px}.analytics-quote-text{color:#1f2937;line-height:1.55;margin-bottom:6px}.analytics-quote-meta{font-size:12px;color:#64748b}.menu-header-admin{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px;gap:20px}.menu-header-admin h2{margin:0;flex:1}.table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;padding:12px;border:1px solid #e5e7eb;border-radius:12px;background:linear-gradient(180deg,#fff,#f8fafc)}.menu-search{margin-bottom:20px;width:100%;display:flex;justify-content:flex-end}.menu-search--toolbar{margin-bottom:0;justify-content:flex-start;flex:1}.search-input{width:45%;padding:10px 14px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-family:inherit;transition:border-color .2s ease,box-shadow .2s ease}.menu-search--toolbar .search-input{width:100%;max-width:460px}.search-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.dishes-table{background:#fff;border:.5px solid #e5e7eb;border-radius:12px;overflow-x:auto;-webkit-overflow-scrolling:touch}.dishes-table table{width:100%;border-collapse:collapse;font-size:14px}.dishes-table th{background:#f8f9fa;padding:16px;text-align:left;font-weight:600;color:#666;border-bottom:2px solid #e5e7eb;font-size:12px;text-transform:uppercase;letter-spacing:.5px}.dishes-table td{padding:16px;border-bottom:1px solid #e5e7eb;color:#333}.dishes-table tbody tr:hover{background:#f8f9fa}.td-muted{color:#999;font-size:12px}.td-name{font-weight:600;color:#333}.td-description{color:#666;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-actions{display:flex;gap:8px;align-items:center}.btn-table-action{display:flex;align-items:center;justify-content:center;padding:6px 8px;background:none;border:1px solid #ddd;border-radius:4px;cursor:pointer;color:#666;transition:all .3s ease}.btn-table-action:hover{background:#6366f1;color:#fff;border-color:#6366f1}.icon-btn{padding:4px 10px;font-size:11px}.status-badge{display:inline-block;padding:4px 10px;border-radius:4px;font-size:12px;font-weight:600;text-transform:uppercase}.status-badge.status-active{background:#22c55e1a;color:#22c55e}.status-badge.status-inactive{background:#ef44441a;color:#ef4444}.btn-table-action.btn-danger{color:#ef4444}.btn-table-action.btn-danger:hover{background:#ef4444;color:#fff;border-color:#ef4444}.image-input-group{display:flex;flex-direction:column;gap:12px;margin-top:8px}.image-preview{position:relative;width:200px;height:200px;border:1px solid #ddd;border-radius:8px;overflow:hidden}.image-preview img{width:100%;height:100%;object-fit:cover}.btn-remove-image{position:absolute;top:6px;right:6px;background:#000000b3;color:#fff;border:none;border-radius:4px;padding:6px 10px;cursor:pointer;font-size:11px;transition:all .2s ease}.btn-remove-image:hover{background:#000000e6}.file-input{padding:10px;border:1px dashed #ddd;border-radius:8px;cursor:pointer}.toast-notification{position:fixed;bottom:20px;right:20px;background:#fff;padding:16px 20px;border-radius:8px;box-shadow:0 4px 20px #00000026;display:flex;align-items:center;gap:12px;animation:slideInUp .3s ease;z-index:2000}.toast-content{display:flex;align-items:center;gap:12px}.toast-icon{display:flex;align-items:center;flex-shrink:0}.toast-message{font-size:14px;color:#333;line-height:1.4}.toast-notification.toast-success{border-left:4px solid #22c55e}.toast-notification.toast-success .toast-icon{color:#22c55e}.toast-notification.toast-error{border-left:4px solid #ef4444}.toast-notification.toast-error .toast-icon{color:#ef4444}@keyframes slideInUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.loading,.error{padding:40px;text-align:center;color:#666;font-size:16px}.error{color:#ef4444}@media(max-width:1024px){.profile-admin-main{margin-left:0;padding:14px}.tab-content{padding:6px 0}}@media(max-width:768px){.profile-admin-main{margin-left:0!important;padding:72px 10px 20px}.profile-header{flex-direction:column;text-align:center}.profile-info h1{font-size:20px}.profile-actions{width:100%;flex-direction:column}.profile-tabs{flex-wrap:wrap}.profile-tabs button{flex:1;min-width:120px;padding:16px 12px;font-size:12px}.tab-content{padding:8px 0 16px}.workspace-tab-hero{flex-direction:column;padding:18px;gap:12px}.workspace-tab-hero h1{font-size:32px}.workspace-tab-badge{width:100%;justify-content:center}.info-section{max-width:100%;padding:18px 12px;border-radius:16px}.info-section .info-grid{margin-bottom:16px}.info-section .info-item{flex-direction:column;align-items:flex-start;gap:6px;padding:12px 14px}.info-section .info-item p{text-align:left;width:100%}.restaurant-cards-grid{grid-template-columns:1fr}.restaurant-banner-card{height:180px;min-height:180px;max-height:180px}.modal-overlay{padding:12px;align-items:flex-start}.modal{width:100%;max-height:calc(100vh - 24px);margin-top:8px}.modal-header{padding:16px}.form-grid{grid-template-columns:1fr;gap:12px;padding:16px}.form-grid>label{grid-column:1 / -1!important}.modal-actions{flex-direction:column;padding:16px}.modal-actions button{width:100%}.dishes-table{font-size:12px}.dishes-table th,.dishes-table td{padding:12px 8px}.td-description{max-width:100px}.restaurant-actions{flex-direction:column}.table-toolbar{flex-direction:column;align-items:stretch}.menu-search--toolbar{width:100%}.menu-search--toolbar .search-input{max-width:none}.btn-action{width:100%;justify-content:center}.analytics-hero{flex-direction:column;padding:18px}.analytics-hero h2{font-size:24px}.analytics-hero-badge{width:100%;justify-content:center}.analytics-panels-grid{grid-template-columns:1fr}.analytics-panel,.analytics-panel--comments{padding:16px}.analytics-panel-header{flex-direction:column;align-items:flex-start}.payments-hero,.tables-header{flex-direction:column}.payments-hero h2{font-size:24px}.payments-hero-badge{width:100%;justify-content:center}.payments-metrics-grid,.payments-form{grid-template-columns:1fr}.payments-field-full,.payments-actions{grid-column:span 1}.payments-actions{justify-content:stretch}.payments-actions .btn-action{width:100%;justify-content:center}.toast-notification{left:10px;right:10px}}.print-config-header-section{display:flex;align-items:flex-start;gap:16px;margin-bottom:24px}.print-config-header-section h2{margin:0 0 4px;font-size:24px;font-weight:700;color:#1f2937}.print-config-subtitle{margin:0;color:#64748b;font-size:14px}.print-config-panel{max-width:900px;border-radius:16px;border:1px solid #e2e8f0;background:linear-gradient(180deg,#fff,#f8fafc);overflow:hidden;box-shadow:0 4px 20px #0f172a0f}.print-config-section{padding:24px;border-bottom:1px solid #e2e8f0}.print-config-section:last-of-type{border-bottom:none}.print-config-group{display:flex;flex-direction:column;gap:12px}.print-config-label{display:block;margin:0;font-weight:700;color:#1f2937;font-size:15px}.print-config-help{margin:0;color:#64748b;font-size:13px}.print-config-select{width:100%;max-width:320px;padding:10px 12px;border:1px solid #cbd5e1;border-radius:10px;background:#fff;color:#1f2937;font-size:14px}.print-config-select:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f126}.print-config-inline{display:flex;gap:12px;flex-wrap:wrap}.print-config-check{display:flex;align-items:flex-start;gap:10px;cursor:pointer;flex:1;min-width:200px}.print-config-check input[type=radio],.print-config-check input[type=checkbox]{margin-top:4px;cursor:pointer;accent-color:#6366f1}.print-check-content{display:flex;flex-direction:column;gap:2px}.print-check-label{display:block;font-weight:600;color:#1f2937;font-size:14px}.print-check-desc{display:block;color:#64748b;font-size:12px}.print-config-checklist{display:grid;gap:14px}.print-config-check-item{display:flex;align-items:flex-start;gap:12px;padding:12px;border-radius:10px;border:1px solid #e2e8f0;background:#f8fafc;cursor:pointer;transition:all .2s ease}.print-config-check-item:hover{border-color:#cbd5e1;background:#f1f5f9}.print-config-check-item input[type=checkbox]{margin-top:2px;cursor:pointer;accent-color:#6366f1}.print-config-actions{padding:20px 24px;border-top:1px solid #e2e8f0;background:#f8fafc;display:flex;gap:12px}.print-config-actions .btn-action{flex-shrink:0}.print-layout{display:flex;flex-direction:column;gap:24px}.print-layout .print-config-panel{max-width:none}.print-template-grid{display:grid;gap:10px}.print-template-card{display:flex;flex-direction:column;gap:3px;text-align:left;padding:12px 14px;border-radius:12px;border:1px solid #e2e8f0;background:#f8fafc;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.print-template-card:hover{border-color:#cbd5e1;background:#f1f5f9}.print-template-card.is-active{border-color:#6366f1;background:#eef2ff;box-shadow:0 0 0 3px #6366f126}.print-template-name{font-weight:700;font-size:14px;color:#1f2937}.print-template-desc{font-size:12px;color:#64748b;line-height:1.35}.print-footer-preview{margin-top:4px;padding:10px 12px;border-radius:10px;border:1px dashed #cbd5e1;background:#fff;color:#475569;font-size:12.5px;line-height:1.4}.print-preview-pane{border-radius:16px;border:1px solid #e2e8f0;background:#f1f5f9;overflow:hidden;box-shadow:0 4px 20px #0f172a0f}.print-preview-toolbar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#fff;border-bottom:1px solid #e2e8f0}.print-preview-title{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:14px;color:#1f2937}.print-preview-zoom{display:inline-flex;align-items:center;gap:8px}.print-zoom-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:8px;border:1px solid #cbd5e1;background:#fff;color:#475569;cursor:pointer;transition:background .15s ease}.print-zoom-btn:hover{background:#f1f5f9}.print-zoom-value{font-size:13px;font-weight:600;color:#475569;min-width:42px;text-align:center}.print-preview-stage{display:flex;justify-content:center;align-items:flex-start;padding:24px;max-height:72vh;overflow:auto;background:#e2e8f0}.print-preview-scaler{position:relative;flex-shrink:0}.print-preview-page{position:absolute;top:0;left:0;background:transparent}.print-preview-frame{width:100%;height:100%;border:0;display:block;background:transparent}.print-measure-frame{position:absolute;left:-99999px;top:0;height:20000px;border:0;visibility:hidden;pointer-events:none}.print-preview-note{margin:0;padding:12px 16px;background:#fff;border-top:1px solid #e2e8f0;color:#64748b;font-size:12px;line-height:1.45}.restaurant-section>h2{font-size:26px;font-weight:700;letter-spacing:-.02em;color:#1d1d1f;margin:0 0 26px}.restaurant-info{display:flex;flex-direction:column;gap:18px;max-width:980px}.restaurant-header-card{padding:22px 24px;border-radius:22px;border:1px solid #ececef;box-shadow:0 1px 2px #1018280a;gap:18px}.restaurant-header-card:hover{transform:none;box-shadow:0 1px 2px #1018280a}.restaurant-header-icon{width:52px;height:52px;background:#f5f5f7;color:#86868b;border-radius:15px}.restaurant-header-content h2{font-size:22px;font-weight:650;letter-spacing:-.01em;color:#1d1d1f}.restaurant-slug{color:#86868b;font-size:13px;margin:2px 0 10px}.restaurant-category-badge{background:#f5f5f7;color:#1d1d1f;border:none;border-radius:999px;padding:5px 13px;font-size:12px;font-weight:600;letter-spacing:.01em}.header-status .approval-status{border-radius:999px;padding:6px 13px;font-size:12px;font-weight:650;box-shadow:none}.restaurant-media-section{display:flex;flex-direction:column;gap:18px}.restaurant-media-section{gap:62px}.restaurant-banner-card--hero{position:relative;height:260px;min-height:260px;max-height:260px;overflow:visible;border:none!important;background:transparent}.restaurant-banner-media{width:100%;height:100%;border-radius:22px;border:1px solid #ececef;overflow:hidden;background:#f8fafc}.restaurant-banner-media img{display:block;width:100%;height:100%;object-fit:cover}.restaurant-media-actions{position:absolute;right:18px;top:18px;display:flex;gap:8px;z-index:3}.restaurant-brand-logo{position:absolute;left:50%;bottom:-48px;transform:translate(-50%);width:96px;height:96px;border-radius:50%;overflow:hidden;border:4px solid #ffffff;background:#f5f5f7;box-shadow:0 10px 24px #1018282e;z-index:4}.restaurant-brand-logo img{width:100%;height:100%;object-fit:cover}.restaurant-brand-logo .logo-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#64748b}.restaurant-banner-card{height:200px;min-height:200px;max-height:200px;border-radius:22px!important;border:1px solid #ececef!important}.restaurant-logo-card{border-radius:22px!important;border:1px solid #ececef!important;border-top:1px solid #ececef!important;padding:22px 24px;box-shadow:0 1px 2px #1018280a}.restaurant-logo-card h3{font-size:16px;font-weight:650;color:#1d1d1f;letter-spacing:-.01em}.restaurant-logo-preview{border-radius:18px;background:#f5f5f7}.banner-actions .btn-action,.restaurant-logo-card .btn-primary{border-radius:980px;font-weight:600}.restaurant-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px}.restaurant-card{border-radius:22px;border:1px solid #ececef;box-shadow:0 1px 2px #1018280a;overflow:hidden}.restaurant-card:hover{transform:none;box-shadow:0 1px 2px #1018280a}.card-header{background:transparent;border-bottom:1px solid #f2f2f4;padding:18px 22px 14px;gap:11px}.card-icon,.card-icon.location-icon,.card-icon.contact-icon,.card-icon.subscription-icon{width:36px;height:36px;border-radius:10px;background:#f5f5f7!important;color:#86868b!important}.card-header h3{font-size:15px;font-weight:650;color:#1d1d1f}.card-body{padding:18px 22px 20px}.card-label{color:#86868b;font-weight:600;font-size:11px;letter-spacing:.04em}.card-value{color:#1d1d1f;font-weight:560;font-size:14px}.card-divider{background:#f2f2f4}.restaurant-actions{margin-top:2px}.restaurant-actions-card{display:flex;align-items:center;justify-content:center;padding:16px 18px;border:1px solid #ececef;border-radius:18px;background:linear-gradient(180deg,#fff,#fbfcfe);box-shadow:0 1px 2px #1018280a}.restaurant-actions .btn-action-primary{font-weight:600;padding:11px 22px}@media(max-width:640px){.restaurant-section>h2{font-size:22px}.restaurant-logo-card{flex-direction:column;align-items:flex-start}.restaurant-media-section{gap:54px}.restaurant-actions-card{padding:14px}.restaurant-banner-card--hero{height:200px;min-height:200px;max-height:200px}.restaurant-media-actions{left:12px;right:12px;top:12px;justify-content:flex-end;flex-wrap:wrap}.restaurant-media-actions .btn-action{width:auto}.restaurant-brand-logo{width:88px;height:88px;bottom:-44px}}.trans-editor{margin-top:32px;max-width:820px}.trans-editor-title{display:flex;align-items:center;gap:8px;font-size:18px;font-weight:650;color:#1d1d1f;margin:0 0 6px}.trans-editor-sub{color:#86868b;font-size:14px;margin:0 0 18px;line-height:1.5}.trans-lang-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.trans-lang-tab{border:1px solid #ececf2;background:#fff;color:#475467;border-radius:999px;padding:7px 15px;font-size:.88rem;font-weight:600;cursor:pointer;transition:background .15s ease,border-color .15s ease}.trans-lang-tab:hover{background:#f7f7f9}.trans-lang-tab.active{background:#6366f1;border-color:#6366f1;color:#fff}.trans-list{border:1px solid #ececf2;border-radius:16px;overflow:hidden;background:#fff}.trans-row{display:flex;align-items:center;gap:14px;padding:13px 16px;border-bottom:1px solid #f2f2f4}.trans-row:last-child{border-bottom:none}.trans-cell{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.trans-cell-label{font-size:11px;font-weight:600;letter-spacing:.02em;color:#98a2b3;text-transform:uppercase}.trans-cell-name{font-size:14px;color:#1d1d1f;font-weight:540;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trans-cell-empty{color:#b42318;font-style:italic;font-weight:500}.trans-arrow{color:#cbd5e1;font-size:16px;flex-shrink:0}.trans-edit-btn{flex-shrink:0;width:36px;height:36px;border-radius:10px;border:1px solid #ececf2;background:#f7f7f9;color:#475467;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s ease,color .15s ease}.trans-edit-btn:hover{background:#eef2ff;color:#6366f1;border-color:#c7d2fe}@media(max-width:600px){.trans-row{flex-wrap:wrap}.trans-arrow{display:none}.trans-cell{flex:1 1 40%}}.qr-placeholder{width:180px;height:212px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#f7f7f9;border:2px dashed #d6d9e0;border-radius:14px;color:#98a2b3;text-align:center;padding:12px}.qr-placeholder span{font-size:.82rem;font-weight:600;color:#98a2b3}.stat-card{background:#fff;border:1px solid #eceef2;border-radius:14px;padding:18px 18px 16px;box-shadow:0 1px 2px #1018280a,0 1px 3px #1018280f;display:flex;flex-direction:column;gap:6px;transition:box-shadow .15s ease,transform .15s ease}.stat-card--clickable{cursor:pointer}.stat-card--clickable:hover{box-shadow:0 4px 12px #1018281a;transform:translateY(-1px)}.stat-card__top{display:flex;align-items:center;gap:10px}.stat-card__icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:9px;flex-shrink:0;color:#475467;background:#f2f4f7}.stat-card__label{font-size:.8rem;font-weight:600;letter-spacing:.01em;color:#667085;text-transform:uppercase}.stat-card__value{font-size:1.9rem;font-weight:700;line-height:1.1;color:#101828;margin-top:2px}.stat-card__subtitle{font-size:.82rem;color:#667085}.stat-card__trend{font-size:.78rem;font-weight:600;margin-top:2px}.stat-card__trend--up{color:#067647}.stat-card__trend--down{color:#b42318}.stat-card__trend--flat{color:#667085}.stat-card--blue{border-left:3px solid #2e90fa}.stat-card--blue .stat-card__icon{background:#eff8ff;color:#1570ef}.stat-card--green{border-left:3px solid #17b26a}.stat-card--green .stat-card__icon{background:#ecfdf3;color:#067647}.stat-card--amber{border-left:3px solid #f79009}.stat-card--amber .stat-card__icon{background:#fffaeb;color:#b54708}.stat-card--violet{border-left:3px solid #7a5af8}.stat-card--violet .stat-card__icon{background:#f4f3ff;color:#6938ef}.stat-card--rose{border-left:3px solid #f63d68}.stat-card--rose .stat-card__icon{background:#fff1f3;color:#e31b54}.stat-card--slate{border-left:3px solid #98a2b3}.stat-card--slate .stat-card__icon{background:#f2f4f7;color:#475467}.stat-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.obs-panel{display:flex;flex-direction:column;gap:20px}.obs-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.obs-header h2{display:flex;align-items:center;gap:8px;margin:0;font-size:1.25rem;color:#101828}.obs-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.obs-range{display:inline-flex;border:1px solid #e4e7ec;border-radius:999px;overflow:hidden}.obs-range-btn{border:none;background:#fff;padding:8px 14px;font-size:13px;font-weight:600;color:#475467;cursor:pointer;border-right:1px solid #f2f4f7}.obs-range-btn:last-child{border-right:none}.obs-range-btn.is-active{background:#111827;color:#fff}.obs-select,.obs-input{border:1px solid #e4e7ec;border-radius:8px;padding:8px 10px;font-size:13px;background:#fff;color:#344054;min-height:36px}.obs-input{width:130px}.obs-icon-btn{border:1px solid #e4e7ec;background:#fff;border-radius:8px;padding:8px;display:inline-flex;cursor:pointer;color:#475467}.obs-icon-btn:hover{background:#f9fafb}.obs-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.obs-card{background:#fff;border:1px solid #eaecf0;border-radius:12px;padding:14px 16px;box-shadow:0 1px 2px #1018280a}.obs-card-value{font-size:1.6rem;font-weight:800;color:#101828;line-height:1.1}.obs-card-label{font-size:12px;color:#667085;margin-top:4px;font-weight:600}.obs-card-sub{font-size:11px;color:#98a2b3;margin-top:2px}.obs-card.tone-error{border-color:#fda29b;background:#fffbfa}.obs-card.tone-error .obs-card-value{color:#d92d20}.obs-card.tone-warn{border-color:#fec84b;background:#fffcf5}.obs-card.tone-warn .obs-card-value{color:#b54708}.obs-section{background:#fff;border:1px solid #eaecf0;border-radius:12px;padding:16px}.obs-section h3{display:flex;align-items:center;gap:6px;margin:0 0 12px;font-size:1rem;color:#101828}.obs-section h4{margin:0 0 8px;font-size:13px;color:#475467}.obs-section-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:12px}.obs-section-head h3{margin:0}.obs-muted{color:#98a2b3;font-weight:500}.obs-empty{color:#98a2b3;font-size:13px;padding:16px 0;text-align:center}.obs-timeline{display:flex;align-items:flex-end;gap:4px;height:160px;overflow-x:auto;padding-top:8px}.obs-bar-col{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:26px;flex:1}.obs-bar-stack{display:flex;align-items:flex-end;height:130px;width:100%}.obs-bar{width:100%;background:#93c5fd;border-radius:4px 4px 0 0;min-height:2px;display:flex;align-items:flex-end;position:relative}.obs-bar-fail{width:100%;background:#f97066;border-radius:4px 4px 0 0}.obs-bar-label{font-size:10px;color:#98a2b3;white-space:nowrap}.obs-filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.obs-clear{display:inline-flex;align-items:center;gap:4px;border:none;background:none;color:#475467;font-size:13px;font-weight:600;cursor:pointer}.obs-table-wrap{overflow-x:auto}.obs-table{width:100%;border-collapse:collapse;font-size:13px}.obs-table th{text-align:left;padding:8px 10px;color:#667085;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid #eaecf0}.obs-table td{padding:9px 10px;border-bottom:1px solid #f2f4f7;color:#344054;vertical-align:top}.obs-table tr.row-error td{background:#fffbfa}.obs-nowrap{white-space:nowrap}.obs-msg{color:#475467;max-width:360px}.obs-tag{display:inline-block;padding:2px 8px;border-radius:999px;background:#f2f4f7;color:#475467;font-size:11px;font-weight:600}.obs-badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:700}.obs-badge.ok{background:#ecfdf3;color:#027a48}.obs-badge.err{background:#fef3f2;color:#d92d20}.obs-link{border:none;background:none;color:#2563eb;font-weight:600;cursor:pointer;padding:0;font-size:13px}.obs-link:hover{text-decoration:underline}.obs-errors-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}.obs-list{list-style:none;margin:0;padding:0}.obs-list li{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px solid #f2f4f7;font-size:13px}.obs-list li b{color:#d92d20}.obs-drawer-overlay{position:fixed;inset:0;z-index:1000;background:#10182873;display:flex;justify-content:flex-end}.obs-drawer{width:min(720px,96vw);height:100%;overflow-y:auto;background:#f9fafb;padding:20px;display:flex;flex-direction:column;gap:16px;box-shadow:-8px 0 30px #10182833}.obs-drawer-head{display:flex;align-items:center;justify-content:space-between}.obs-drawer-head h3{margin:0}.obs-drawer-meta{display:flex;gap:8px;flex-wrap:wrap}@media(max-width:640px){.obs-header{align-items:flex-start;flex-direction:column}.obs-range-btn{padding:8px 10px;font-size:12px}}.admin-dashboard{min-height:100vh;background:#f5f7fa}.loading{text-align:center;padding:60px;font-size:1rem;color:#6b7280}.error{text-align:center;padding:60px;font-size:1rem;color:#a32d2d}.dashboard-header{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;padding:48px 40px;display:flex;gap:40px;align-items:center;flex-wrap:wrap;border-bottom-left-radius:32px;border-bottom-right-radius:32px}.dashboard-avatar .avatar-placeholder{width:90px;height:90px;border-radius:50%;background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;font-size:2.5rem;font-weight:700;border:2px solid rgba(255,255,255,.4)}.dashboard-info{flex:1}.dashboard-info h1{margin:0 0 6px;font-size:1.9rem;font-weight:700;letter-spacing:-.3px}.dashboard-email{margin:0 0 12px;opacity:.85;font-size:.95rem}.role-badge{display:inline-block;padding:3px 10px;border-radius:99px;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.role-badge.role-global-admin{background:#ede9fe;color:#6d28d9}.role-badge.role-restaurant-admin{background:#dbeafe;color:#1d4ed8}.role-badge.role-waiter{background:#d1fae5;color:#065f46}.role-badge.role-customer{background:#f3f4f6;color:#374151}.search-input-wrap{position:relative;display:flex;align-items:center}.search-input-wrap .search-icon{position:absolute;left:9px;color:#9ca3af;pointer-events:none}.search-input-wrap input{padding-left:28px}.dashboard-actions{display:flex;gap:10px}.dashboard-actions a{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:8px;font-size:.9rem;font-weight:600;text-decoration:none;transition:opacity .2s;background:#ffffff2e;color:#fff;border:1px solid rgba(255,255,255,.4)}.dashboard-actions a:hover{opacity:.8}.dashboard-stats{max-width:1400px;margin:28px auto 0;padding:0 24px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.stat-card-admin{background:#fff;border:.5px solid #e5e7eb;padding:20px 24px;border-radius:12px;text-align:left}.stat-card-admin p{font-size:11px;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.7px;margin:0 0 10px}.stat-card-admin h3{font-size:2rem;font-weight:600;margin:0;color:#111827;letter-spacing:-.5px}.stat-card-admin.pending h3{color:#854f0b}.dashboard-section{max-width:1400px;margin:28px auto;padding:0 24px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:12px}.section-header h2{margin:0;font-size:1.1rem;font-weight:600;color:#111827}.section-header-right{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.filters{display:flex;gap:8px}.filters select,.filters input{padding:8px 12px;border:.5px solid #e5e7eb;border-radius:8px;font-size:.875rem;color:#374151;background:#fff;outline:none;transition:border-color .15s}.filters select:focus,.filters input:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f114}.filters input{min-width:220px}.btn-action{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:8px 14px;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .15s ease;white-space:nowrap;border:1px solid transparent}.btn-action:disabled{opacity:.5;cursor:default}.btn-action-primary{background:#6366f1;color:#fff;border-color:#6366f1}.btn-action-primary:hover:not(:disabled){background:#4f46e5;border-color:#4f46e5}.btn-action-secondary{background:#fff;border-color:#d0d5dd;color:#344054}.btn-action-secondary:hover:not(:disabled){background:#f9fafb}.btn-action-icon{width:30px;height:30px;padding:0;background:#fff;border-color:#e5e7eb;color:#6b7280}.btn-action-icon:hover:not(:disabled){background:#f3f4f6;color:#111827}.btn-action-icon.btn-danger{color:#d92d20;background:#fef3f2;border-color:#fecdca}.btn-action-icon.btn-danger:hover:not(:disabled){background:#d92d20;color:#fff;border-color:#d92d20}.btn-create,.btn-primary-modal{background:#6366f1;color:#fff;border:1px solid #6366f1}.btn-create:hover,.btn-primary-modal:hover{background:#4f46e5;border-color:#4f46e5}.btn-export,.btn-secondary-modal{background:#fff;border:1px solid #d0d5dd;color:#344054}.btn-export:hover,.btn-secondary-modal:hover{background:#f9fafb}.btn-table-action{width:30px;height:30px;padding:0;border:1px solid #e5e7eb;border-radius:8px;background:#fff;color:#6b7280}.btn-table-action:hover{background:#f3f4f6;color:#111827}.approval-help-banner{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;margin-bottom:14px;border:1px solid #fde68a;background:#fffbeb;border-radius:12px;color:#92400e}.approval-help-banner>svg{flex-shrink:0;margin-top:1px;color:#d97706}.approval-help-text{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}.approval-help-text strong{font-size:14px;color:#78350f}.approval-help-text span{font-size:13px;line-height:1.5;color:#92400e}.approval-help-text svg{vertical-align:-2px}.approval-help-text em{font-style:normal;font-weight:600}.approval-help-banner .btn-action{flex-shrink:0;white-space:nowrap}.restaurants-table{background:#fff;border:.5px solid #e5e7eb;border-radius:12px;overflow-x:auto}.restaurants-table table{width:100%;border-collapse:collapse;table-layout:auto}.restaurants-table th{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.6px;color:#9ca3af;background:#f9fafb;padding:11px 16px;text-align:left;border-bottom:.5px solid #e5e7eb;white-space:nowrap}.restaurants-table td{padding:13px 16px;font-size:.875rem;color:#374151;border-bottom:.5px solid #f3f4f6;white-space:nowrap;vertical-align:middle}.restaurants-table tr:last-child td{border-bottom:none}.restaurants-table tbody tr:hover td{background:#fafafa}.restaurants-table a{color:#6366f1;text-decoration:none;font-size:.8rem}.restaurants-table a:hover{text-decoration:underline}.row-inactive td{opacity:.4}.td-muted{color:#9ca3af!important;font-size:.8rem!important}.td-name{font-weight:500;color:#111827!important}.no-data{padding:48px;text-align:center;color:#9ca3af;font-size:.9rem}.status-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:99px;font-size:11px;font-weight:600;letter-spacing:.2px}.status-badge:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor;opacity:.7;flex-shrink:0}.status-approved{background:#eaf3de;color:#3b6d11}.status-pending{background:#faeeda;color:#854f0b}.status-rejected{background:#fcebeb;color:#a32d2d}.active-badge{display:inline-block;padding:3px 10px;border-radius:99px;font-size:11px;font-weight:600}.active-yes{background:#eaf3de;color:#3b6d11}.active-no{background:#f3f4f6;color:#9ca3af}.table-actions{display:flex;gap:5px;flex-wrap:wrap}.btn-approve{color:#3b6d11;border-color:#c0dd97}.btn-approve:hover{background:#eaf3de}.btn-reject{color:#a32d2d;border-color:#f7c1c1}.btn-reject:hover{background:#fcebeb}.btn-deactivate{color:#854f0b;border-color:#fac775}.btn-deactivate:hover{background:#faeeda}.btn-activate{color:#185fa5;border-color:#b5d4f4}.btn-activate:hover{background:#e6f1fb}.modal-overlay{position:fixed;inset:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:#fff;border-radius:16px;padding:32px;width:100%;max-width:560px;box-shadow:0 24px 64px #0000001f}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.modal-header h2{font-size:1.15rem;font-weight:600;color:#111827;margin:0}.modal-close{background:none;border:none;cursor:pointer;color:#9ca3af;padding:4px;border-radius:6px;display:flex;align-items:center}.modal-close:hover{background:#f3f4f6;color:#374151}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:24px}.form-grid label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.4px}.form-grid input,.form-grid select{padding:9px 12px;border:.5px solid #e5e7eb;border-radius:8px;font-size:.875rem;color:#111827;background:#fff;outline:none;transition:border-color .15s;font-weight:400;text-transform:none;letter-spacing:0}.form-grid input:focus,.form-grid select:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.form-grid input::placeholder{color:#d1d5db}.form-error{background:#fcebeb;color:#a32d2d;padding:10px 14px;border-radius:8px;font-size:.825rem;margin-bottom:16px}.modal-actions{display:flex;gap:10px;justify-content:flex-end}.btn-primary-modal,.btn-secondary-modal{padding:10px 22px;border-radius:8px;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .15s ease}.btn-primary-modal:disabled{opacity:.55;cursor:not-allowed}@media(max-width:768px){.dashboard-header{flex-direction:column;align-items:center;text-align:center;padding:32px 20px;border-radius:24px}.dashboard-actions{flex-direction:column;width:100%}.dashboard-actions a{justify-content:center}.dashboard-stats{grid-template-columns:1fr;padding:0 16px}.dashboard-section{padding:0 16px}.section-header{flex-direction:column;align-items:flex-start}.section-header-right{width:100%}.filters{flex-direction:column;width:100%}.filters input{min-width:unset;width:100%}.btn-create,.btn-action-primary,.btn-action-secondary{width:100%;justify-content:center}.restaurants-table{overflow-x:auto}.form-grid{grid-template-columns:1fr}.modal{padding:24px;margin:16px}}.confirm-modal{max-width:420px;text-align:center;padding:40px 32px 32px}.confirm-icon-wrap{display:flex;justify-content:center;margin-bottom:20px}.confirm-icon{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center}.icon-warn{background:#faeeda;color:#854f0b}.icon-info{background:#e6f1fb;color:#185fa5}.confirm-title{font-size:1.1rem;font-weight:600;color:#111827;margin:0 0 10px}.confirm-desc{font-size:.875rem;color:#6b7280;line-height:1.6;margin:0 0 28px}.btn-confirm-danger{padding:10px 22px;background:#dc2626;color:#fff;border:none;border-radius:8px;font-weight:600;font-size:.875rem;cursor:pointer;transition:background .15s}.btn-confirm-danger:hover{background:#b91c1c}.btn-confirm-success{padding:10px 22px;background:#16a34a;color:#fff;border:none;border-radius:8px;font-weight:600;font-size:.875rem;cursor:pointer;transition:background .15s}.btn-confirm-success:hover{background:#15803d}.tier-badge{display:inline-block;padding:3px 10px;border-radius:99px;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.tier-badge.tier-free{background:#f3f4f6;color:#374151}.tier-badge.tier-silver{background:#e5e7eb;color:#4b5563}.tier-badge.tier-gold{background:#fef9c3;color:#854d0e}.tier-badge.tier-platinum{background:#ede9fe;color:#5b21b6}.modal-wide{max-width:820px!important;width:95vw!important}.sub-current-info{background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;padding:10px 14px;margin-bottom:16px;font-size:.88rem;color:#374151;display:flex;align-items:center;gap:4px;flex-wrap:wrap}.sub-billing-cycle{white-space:nowrap;font-size:.82rem}.td-empty{color:#9ca3af;font-style:italic}.overview-tab{padding:24px 24px 40px 0}.dashboard-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.dashboard-h1{font-size:1.5rem;font-weight:700;color:#101828;margin:0}.dashboard-sub{margin:4px 0 0;color:#667085;font-size:.9rem}.btn-refresh{display:inline-flex;align-items:center;gap:7px;background:#fff;border:1px solid #d0d5dd;color:#344054;font-size:.85rem;font-weight:600;padding:8px 14px;border-radius:9px;cursor:pointer;transition:background .15s ease}.btn-refresh:hover{background:#f9fafb}.btn-refresh:disabled{opacity:.6;cursor:default}.btn-refresh .spin{animation:mw-spin .9s linear infinite}@keyframes mw-spin{to{transform:rotate(360deg)}}.overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;margin-top:18px}.overview-panel{background:#fff;border:1px solid #eceef2;border-radius:14px;padding:18px 20px;box-shadow:0 1px 2px #1018280a}.overview-panel__title{display:flex;align-items:center;gap:7px;font-size:.9rem;font-weight:700;color:#344054;margin:0 0 14px}.dist-bars{display:flex;flex-direction:column;gap:10px}.dist-row{display:grid;grid-template-columns:110px 1fr 36px;align-items:center;gap:10px}.dist-row__label{font-size:.8rem;color:#475467;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dist-row__track{background:#f2f4f7;border-radius:99px;height:8px;overflow:hidden}.dist-row__fill{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#2e90fa,#1570ef);min-width:2px}.dist-row__count{font-size:.82rem;font-weight:600;color:#101828;text-align:right}.top-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.top-list__item{display:flex;align-items:center;gap:12px;padding:9px 6px;border-bottom:1px solid #f2f4f7}.top-list__item:last-child{border-bottom:none}.top-list__rank{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:7px;background:#f4f3ff;color:#6938ef;font-size:.78rem;font-weight:700;flex-shrink:0}.top-list__name{flex:1;font-size:.88rem;color:#101828;font-weight:500}.top-list__meta{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;color:#667085}.btn-export{display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:.85rem;font-weight:600;padding:9px 14px;border-radius:9px;cursor:pointer;transition:all .15s ease}.btn-export:disabled{opacity:.5;cursor:default}.dist-row--clickable{cursor:pointer;border-radius:7px;padding:3px 6px;margin:0 -6px;transition:background .12s ease}.dist-row--clickable:hover{background:#f9fafb}.donut-wrap{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.donut-total{font-size:1.5rem;font-weight:700;fill:#101828}.donut-legend{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;min-width:130px}.donut-legend li{display:flex;align-items:center;gap:8px;font-size:.84rem;color:#475467}.donut-legend-label{flex:1}.donut-legend strong{color:#101828}.donut-dot{width:10px;height:10px;border-radius:3px;flex-shrink:0}.trend-chart{display:flex;align-items:flex-end;gap:10px;padding-top:8px}.trend-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;height:100%}.trend-bar-track{width:100%;flex:1;display:flex;align-items:flex-end;justify-content:center}.trend-bar{width:70%;min-height:3px;background:linear-gradient(180deg,#2e90fa,#1570ef);border-radius:6px 6px 0 0;position:relative;display:flex;align-items:flex-start;justify-content:center;transition:height .3s ease}.trend-val{position:absolute;top:-18px;font-size:.72rem;font-weight:600;color:#344054}.trend-label{font-size:.72rem;color:#98a2b3}.admin-dashboard-shell{display:flex;min-height:100vh;background:#f5f7fa}.admin-dashboard-main{flex:1;min-width:0;margin-left:292px;padding:0 0 0 24px;transition:margin-left .25s ease}@media(max-width:1100px){.admin-dashboard-main{margin-left:104px}}@media(max-width:768px){.admin-dashboard-main{margin-left:0;padding:72px 16px 24px}}.pp-page{min-height:100vh;background:#f7f7fb;padding:40px 16px}.pp-container{max-width:820px;margin:0 auto;background:#fff;border:1px solid #ececf2;border-radius:18px;padding:40px 44px;box-shadow:0 1px 2px #1018280a}.pp-back{display:inline-block;margin-bottom:18px;color:#6366f1;text-decoration:none;font-size:14px}.pp-back:hover{text-decoration:underline}.pp-container h1{font-size:28px;color:#1d2939;margin:0 0 6px}.pp-meta{color:#98a2b3;font-size:12.5px;margin:0 0 24px}.pp-container section{margin-bottom:22px}.pp-container h2{font-size:17px;color:#1d2939;margin:0 0 8px}.pp-container p,.pp-container li{color:#475467;font-size:14.5px;line-height:1.6}.pp-container ul{margin:6px 0;padding-left:20px}.pp-container li{margin:4px 0}.pp-container a{color:#6366f1}.pp-foot{margin-top:24px;padding-top:16px;border-top:1px solid #f2f2f6;font-size:13px;color:#667085}@media(max-width:640px){.pp-container{padding:28px 22px}}.waiter-dashboard{max-width:1600px;margin:0 auto;padding:2rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{display:flex;align-items:center;gap:1rem;padding:1.5rem;border-radius:.5rem;background:#fff;box-shadow:0 1px 3px #0000001a;transition:transform .2s,box-shadow .2s}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 6px -1px #0000001a}.stat-card.stat-slate{border-left:4px solid #64748b}.stat-card.stat-green{border-left:4px solid #10b981}.stat-card.stat-blue{border-left:4px solid #3b82f6}.stat-card.stat-orange{border-left:4px solid #f97316}.stat-icon{font-size:2.5rem;line-height:1}.stat-content h3{font-size:.875rem;font-weight:600;color:#6b7280;margin:0 0 .5rem;text-transform:uppercase;letter-spacing:.05em}.stat-value{font-size:2rem;font-weight:700;color:#111827;margin:0}.waiter-content{display:grid;grid-template-columns:1fr 400px;gap:2rem;margin-bottom:2rem}.tables-panel,.session-panel{background:#fff;border-radius:.5rem;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.tables-panel h2,.session-panel h2{margin-top:0;margin-bottom:1.5rem;color:#111827}.tables-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem}.table-card{border:2px solid #e5e7eb;border-radius:.5rem;padding:1rem;text-align:center;cursor:pointer;transition:all .2s}.table-card.available{border-color:#10b981;background:#f0fdf4}.table-card.available:hover{background:#dcfce7;box-shadow:0 4px 6px -1px #0000001a}.table-card.occupied{border-color:#ef4444;background:#fef2f2}.table-card.occupied:hover{background:#fee2e2;box-shadow:0 4px 6px -1px #0000001a}.table-number{font-size:1.25rem;font-weight:700;color:#111827;margin-bottom:.5rem}.table-status{font-size:.75rem;font-weight:600;margin-bottom:.5rem}.table-info{font-size:.875rem;color:#6b7280}.table-info p{margin:.25rem 0}.table-total{font-weight:700;color:#f97316;font-size:1rem}.btn-start{margin-top:.75rem;width:100%;padding:.5rem;border:none;border-radius:.375rem;background:#10b981;color:#fff;font-weight:600;cursor:pointer;transition:background .2s}.btn-start:hover{background:#059669}.session-panel{position:sticky;top:2rem;max-height:calc(100vh - 4rem);overflow-y:auto}.session-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #e5e7eb}.session-header h2{margin:0}.session-time{font-size:.875rem;color:#6b7280;margin:.25rem 0 0}.btn-close-session{padding:.5rem;border:none;background:#f3f4f6;border-radius:.375rem;color:#6b7280;font-size:1.25rem;cursor:pointer;transition:all .2s}.btn-close-session:hover{background:#e5e7eb;color:#111827}.session-items{margin-bottom:1.5rem}.session-items h3{margin:0 0 1rem;font-size:1rem;font-weight:600;color:#111827}.items-list{border:1px solid #e5e7eb;border-radius:.375rem;overflow:hidden}.order-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;border-bottom:1px solid #e5e7eb}.order-item:last-child{border-bottom:none}.item-info{display:flex;align-items:center;gap:.5rem}.item-quantity{display:inline-block;width:2rem;background:#64748b;color:#fff;text-align:center;padding:.25rem;border-radius:.25rem;font-size:.875rem;font-weight:600}.item-name{font-weight:500;color:#111827}.item-price{font-weight:600;color:#f97316}.order-total{display:flex;justify-content:space-between;padding:1rem;background:#f9fafb;font-size:1.125rem;color:#111827}.empty-order{text-align:center;padding:2rem;color:#9ca3af;font-style:italic}.add-items{margin-bottom:1.5rem}.add-items h3{margin:0 0 1rem;font-size:1rem;font-weight:600;color:#111827}.dishes-list{display:flex;flex-direction:column;gap:.5rem;max-height:300px;overflow-y:auto}.dish-button{display:flex;justify-content:space-between;align-items:center;padding:.75rem;border:1px solid #e5e7eb;border-radius:.375rem;background:#fff;cursor:pointer;transition:all .2s;text-align:left}.dish-button:hover{background:#f9fafb;border-color:#64748b}.dish-name{font-weight:500;color:#111827}.dish-price{font-weight:600;color:#64748b}.session-actions{display:flex;gap:.5rem}.btn-generate-ticket,.btn-close-session-final{flex:1;padding:.75rem;border:none;border-radius:.375rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-generate-ticket{background:#3b82f6;color:#fff}.btn-generate-ticket:hover{background:#2563eb}.btn-close-session-final{background:#10b981;color:#fff}.btn-close-session-final:hover{background:#059669}.no-session-selected{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;text-align:center;color:#6b7280;padding:2rem}.no-session-selected p{margin:.5rem 0;font-size:1.125rem}.recent-sessions{background:#fff;border-radius:.5rem;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.section-header h2{margin:0;color:#111827}.filter-buttons{display:flex;gap:.5rem}.filter-btn{padding:.5rem 1rem;border:1px solid #e5e7eb;border-radius:.375rem;background:#fff;color:#6b7280;font-weight:500;cursor:pointer;transition:all .2s}.filter-btn:hover{background:#f9fafb;border-color:#64748b}.filter-btn.active{background:#64748b;color:#fff;border-color:#64748b}.sessions-list{display:flex;flex-direction:column;gap:.5rem}.session-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;border:1px solid #e5e7eb;border-radius:.375rem;cursor:pointer;transition:all .2s}.session-item:hover{background:#f9fafb;box-shadow:0 2px 4px #0000000d}.session-item.open{border-left:4px solid #10b981}.session-item.closed{border-left:4px solid #9ca3af;opacity:.7}.session-info{display:flex;flex-direction:column;gap:.25rem}.session-status{font-size:.75rem;font-weight:600}.session-details{display:flex;gap:1rem;align-items:center;font-size:.875rem;color:#6b7280}.session-total{font-weight:700;font-size:1rem;color:#111827}@media(max-width:1024px){.waiter-content{grid-template-columns:1fr}.session-panel{position:static;max-height:none}}@media(max-width:768px){.waiter-dashboard{padding:1rem}.tables-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}}.waiter-sessions-page{max-width:1000px;margin:0 auto;padding:24px 16px 48px}.sessions-list{display:flex;flex-direction:column;gap:16px}.sessions-header h1{font-size:1.6rem;margin:0;color:#101828}.filter-tabs{display:flex;gap:8px;flex-wrap:wrap}.filter-tabs button{border:1px solid #d0d5dd;background:#fff;color:#344054;padding:7px 16px;border-radius:999px;font-size:.85rem;font-weight:600;cursor:pointer}.filter-tabs button.active{background:#111827;color:#fff;border-color:#111827}.error-message{display:flex;align-items:center;gap:8px;background:#fef3f2;color:#b42318;border:1px solid #fecdca;padding:10px 14px;border-radius:10px;font-size:.9rem}.table-container{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid #eaecf0;border-radius:12px;background:#fff}.sessions-table,.items-table{width:100%;border-collapse:collapse;font-size:.88rem;min-width:520px}.sessions-table th,.items-table th{text-align:left;padding:12px 14px;background:#f9fafb;color:#475467;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid #eaecf0;white-space:nowrap}.sessions-table td,.items-table td{padding:12px 14px;border-bottom:1px solid #f2f4f7;color:#101828}.sessions-table tbody tr:hover{background:#fafafa}.no-data{text-align:center;color:#98a2b3;padding:28px;font-style:italic}.status-badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:.72rem;font-weight:600}.status-badge.open{background:#ecfdf3;color:#067647}.status-badge.closed{background:#f2f4f7;color:#475467}.btn-view,.btn-primary,.btn-danger,.btn-secondary,.btn-back,.btn-close{display:inline-flex;align-items:center;gap:6px;cursor:pointer;border-radius:9px;font-weight:600;font-size:.85rem;padding:8px 14px;border:1px solid transparent}.btn-view{background:#fff;border-color:#d0d5dd;color:#344054}.btn-primary{background:#1570ef;color:#fff}.btn-danger{background:#d92d20;color:#fff}.btn-secondary{background:#fff;border-color:#d0d5dd;color:#344054}.btn-back{background:transparent;color:#475467;padding-left:0}.btn-close{background:none;border:none;color:#667085;padding:4px}.session-detail{display:flex;flex-direction:column;gap:18px}.detail-header{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.detail-header h1{font-size:1.4rem;margin:0}.session-info-card,.items-section{background:#fff;border:1px solid #eaecf0;border-radius:14px;padding:18px}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px}.info-item{display:flex;align-items:center;gap:10px;color:#475467}.info-item .info-label{display:block;font-size:.72rem;text-transform:uppercase;color:#98a2b3}.info-item .info-value{display:block;font-weight:600;color:#101828}.items-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}.items-header h2{font-size:1.1rem;margin:0}.total-section{margin-top:12px;display:flex;justify-content:flex-end}.total-row{display:flex;gap:14px;align-items:baseline}.total-label{color:#475467}.total-value{font-size:1.25rem;font-weight:700;color:#101828}.action-buttons{display:flex;gap:10px;flex-wrap:wrap}.action-buttons button{flex:1;justify-content:center;min-width:140px}.modal-overlay{position:fixed;inset:0;background:#10182880;display:flex;align-items:center;justify-content:center;padding:16px;z-index:1000}.modal-content{background:#fff;border-radius:14px;width:100%;max-width:460px;padding:20px;box-shadow:0 20px 60px #10182833;max-height:90vh;overflow-y:auto}.modal-content.ticket-modal{max-width:520px}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.modal-header h2{margin:0;font-size:1.1rem}.form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.form-group label{font-size:.85rem;font-weight:600;color:#344054}.form-group input,.form-group select{padding:9px 12px;border:1px solid #d0d5dd;border-radius:9px;font-size:.9rem;width:100%;box-sizing:border-box}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:8px}.ticket-content table{width:100%;border-collapse:collapse;font-size:.86rem}.ticket-content th,.ticket-content td{padding:8px;border-bottom:1px solid #f2f4f7;text-align:left}.ticket-info p{margin:4px 0;font-size:.9rem;color:#344054}.ticket-totals{margin-top:12px}.total-line{display:flex;justify-content:space-between;padding:4px 0}.total-line.total{font-weight:700;border-top:2px solid #eaecf0;margin-top:6px;padding-top:8px}.loading{text-align:center;padding:40px;color:#667085}@media(max-width:640px){.waiter-sessions-page{padding:16px 12px 40px}.sessions-header h1{font-size:1.35rem}.modal-actions{flex-direction:column}.modal-actions button{width:100%;justify-content:center}.action-buttons button{min-width:0}}*{box-sizing:border-box}body{margin:0;font-family:Twemoji Country Flags,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}
