/* Krent's HUB bridge — acrescentado APÓS folhas FoodPlaces originais; sem alterar rotas */
:root, :root[data-theme="light"], :root[data-theme="dark"] {
  --fp-green:var(--brand-500);--fp-green-dark:var(--brand-600);--fp-green-soft:var(--brand-tint);
  --fp-black:var(--text);--fp-muted:var(--text-muted);--fp-line:var(--border);
  --fp-soft:var(--bg);--fp-bg:var(--bg);--fp-white:var(--surface);
  --fp-danger:var(--danger);--fp-amber:var(--brand-text);
  --fp-radius:var(--radius-lg);--fp-shadow:var(--shadow-md);
}
html{background:var(--bg);color:var(--text);font-family:var(--font-sans)}
body,button,input,select,textarea{font-family:var(--font-sans)}
body{background:var(--bg);color:var(--text);line-height:1.45}
:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--focus-ring)!important;outline-offset:2px}
:where(button,.fp-btn,.pwa-btn,.pwa-icon-button,.fp-link,.pwa-bottom-nav a){min-height:var(--control-md)}
button,.fp-btn,.pwa-btn{font-weight:600}
:where(.fp-price,.fp-total,.pwa-merchant-total,[class*="-amount"],[class*="-price"],[class*="-total"]){font-variant-numeric:tabular-nums}
.fp-container{width:min(var(--content-max),calc(100% - 32px))}
.fp-nav{background:var(--surface);border-color:var(--border);box-shadow:var(--shadow-sm)}
.fp-brand,.pwa-brand,.pwa-splash-mark{color:var(--text);font-family:var(--font-sans);font-weight:700;letter-spacing:-.8px}
.kh-brand-point{color:var(--brand-500)!important}
.kh-brand-hub{font-weight:600}
.fp-nav .fp-link,.fp-footer a{color:var(--text)}
.fp-btn,.pwa-btn.primary,.fp-address-search .fp-btn{background:var(--brand-500);color:var(--on-brand);border-radius:var(--radius-pill);min-height:var(--control-md)}
.fp-btn:hover,.pwa-btn.primary:hover{background:var(--brand-600);color:var(--on-brand)}
.fp-btn-black{background:var(--surface-inverse);color:var(--text-inverse)}
.fp-btn-outline,.pwa-btn.ghost{background:var(--surface);color:var(--text);border:1px solid var(--border-strong)}
.fp-btn-danger{background:var(--danger);color:var(--text-inverse)}
.fp-nav-inner{gap:var(--space-4)}
.fp-market-hero,.fp-hero,.pwa-login-brand{background:var(--bg)}
.fp-market-hero-copy h1,.fp-h1,.fp-title{color:var(--text);font-weight:600;letter-spacing:-1.2px}
.fp-lead,.fp-muted,.fp-market-hero-copy p{color:var(--text-muted)}
.fp-kicker,.fp-badge,.fp-coupon-icon{background:var(--brand-tint);color:var(--brand-text);border-radius:var(--radius-pill)}
.fp-search,.fp-address-search,.fp-card,.fp-place-card,.fp-form-card,.fp-empty,.fp-coupon-strip{background:var(--surface);color:var(--text);border-color:var(--border);box-shadow:var(--shadow-sm);border-radius:var(--radius-md)}
.fp-search input,.fp-address-search input,.fp-field :is(input,select,textarea),.pwa-form :is(input,select,textarea){background:var(--surface);color:var(--text);border-color:var(--border-strong);border-radius:var(--radius-sm)}
.fp-card:hover,.fp-place-card:hover{box-shadow:var(--shadow-md)}
.fp-footer{border-color:var(--border);background:var(--surface);color:var(--text-muted)}
.fp-category-hero{background:var(--surface)!important;color:var(--text);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}
.fp-category-hero small{color:var(--text-muted)}
.fp-category-hero strong{background:var(--brand-tint);color:var(--brand-text)}
.fp-category-hero:hover{border-color:var(--brand-500);box-shadow:var(--shadow-md)}
.fp-mini-categories a{color:var(--text);border:1px solid var(--border);background:var(--surface);border-radius:var(--radius-md)}
.fp-mini-categories a:hover{background:var(--surface-2)}
.fp-cover,.fp-place-thumb{background:var(--surface-2)}
.fp-status span{background:var(--surface-2);color:var(--text)}
.fp-status span.active{background:var(--success-tint);color:var(--success)}
.fp-alert{background:var(--danger-tint);color:var(--danger)}
.fp-success,.pwa-alert.success{background:var(--success-tint);color:var(--success)}
.pwa-alert.error{background:var(--danger-tint);color:var(--danger)}
.pwa-app-body,.pwa-login-body,.pwa-splash-body,.pwa-content{background:var(--bg);color:var(--text)}
.pwa-sidebar,.pwa-topbar,.pwa-bottom-nav,.pwa-login-card,.pwa-card,.pwa-merchant-timeline{background:var(--surface);color:var(--text);border-color:var(--border)}
.pwa-sidebar a,.pwa-side-nav a,.pwa-bottom-nav a,.pwa-login-card h2{color:var(--text)}
.pwa-side-nav a.active,.pwa-bottom-nav a.active{color:var(--brand-text);background:var(--brand-tint)}
.pwa-portal-pill{background:var(--brand-tint);color:var(--brand-text)}
.pwa-login-brand:after{background:var(--brand-tint)}
.pwa-splash-mark b{color:var(--brand-500)}
.pwa-loader{background:var(--surface-2)}.pwa-loader i{background:var(--brand-500)}
.pwa-icon-button,.pwa-btn.ghost{background:var(--surface);color:var(--text);border-color:var(--border-strong)}
.pwa-copyright{color:var(--text-muted)}.pwa-copyright a{color:var(--brand-text)}
.kh-theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-pill);color:var(--text);padding:0 var(--space-3);min-width:44px;min-height:44px;cursor:pointer;font-size:13px;font-weight:600}
.kh-theme-toggle svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.75}
.kh-icon{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.kh-vertical-icons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4);max-width:900px;margin:var(--space-6) auto 0}
.kh-vertical{display:flex;gap:var(--space-4);align-items:center;border:1px solid var(--border);background:var(--surface);border-radius:var(--radius-md);padding:var(--space-5)}
.kh-vertical .kh-icon{width:28px;height:28px}.kh-vertical h2{margin:0;font-size:17px;font-weight:600}.kh-vertical p{margin:4px 0 0;color:var(--text-muted);font-size:13px}
.kh-vertical-food .kh-icon{color:var(--vertical-food)}.kh-vertical-market .kh-icon{color:var(--vertical-market)}.kh-vertical-pay .kh-icon{color:var(--vertical-pay)}.kh-vertical-box .kh-icon{color:var(--vertical-box)}
.kh-vertical-tag{font-size:12px;color:var(--text-muted)}
.kh-category-icon{display:grid;place-items:center;width:66px;height:66px;border-radius:var(--radius-md);background:var(--brand-tint);color:var(--brand-text)}
.kh-category-icon svg{height:36px;width:36px}.fp-mini-categories .kh-icon{color:var(--brand-text)}
@media(max-width:700px){.kh-vertical-icons{grid-template-columns:1fr}.kh-theme-toggle .kh-theme-label{display:none}.fp-nav-inner{gap:8px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
