﻿/* css/base.css */
:root{
  --bg:#f7f8fa;
  --surface:#ffffff;
  --surface-2:#f2f5f8;
  --ink:#111827;
  --muted:#637083;
  --line:#e6eaf0;
  --dark:#363a40;
  --dark-2:#45484f;
  --primary:#ff5b18;
  --cyan:#28c7ee;
  --green:#20c474;
  --red:#ef4444;
  --yellow:#f8c400;
  --shadow:0 12px 30px rgba(17,24,39,.09);
  --metal-shadow:inset 0 1px 0 rgba(255,255,255,.38), inset 0 -10px 18px rgba(17,24,39,.08), 0 10px 22px rgba(17,24,39,.14);
  --metal-glow:0 0 0 1px rgba(255,255,255,.2), 0 12px 30px rgba(40,199,238,.18), 0 8px 24px rgba(255,91,24,.16);
  --radius:16px;
  --xf-text-scale:1;
}

/* Pontos de apoio e campanhas */
.support-spots-page{
  width:min(1440px,100%);
  margin:0 auto;
  padding-bottom:110px;
}
.support-spots-hero{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  padding:24px;
  color:#f8fafc;
  background:#111827;
  border-left:6px solid #ff5a1f;
}
.support-spots-hero small{color:#8be0cf;font-weight:800;text-transform:uppercase}
.support-spots-hero h1{margin:4px 0 6px;font-size:clamp(28px,4vw,48px)}
.support-spots-hero p{margin:0;max-width:720px;color:#d7dee8}
.support-spots-count{
  display:grid;
  place-items:center;
  width:64px;
  height:64px;
  border-radius:50%;
  color:#111827;
  background:#8be0cf;
  font-size:28px;
  font-weight:900;
}
.support-spots-controls{
  display:grid;
  grid-template-columns:minmax(180px,240px) 1fr;
  align-items:end;
  gap:16px;
  padding:18px 0;
}
.support-type-filter{overflow-x:auto;flex-wrap:nowrap}
.support-type-filter button{
  flex:0 0 auto;
  min-height:44px;
  padding:0 16px;
  border:1px solid #d7dee8;
  border-radius:8px;
  background:#fff;
  font:inherit;
  font-weight:800;
  cursor:pointer;
}
.support-type-filter button.active{color:#fff;background:#0f766e;border-color:#0f766e}
.support-spots-layout{
  display:grid;
  grid-template-columns:minmax(340px,.8fr) minmax(420px,1.2fr);
  min-height:620px;
  border:1px solid #d7dee8;
  background:#fff;
}
.support-map{min-height:620px;background:#e6eef0}
.support-spots-list{
  display:flex;
  flex-direction:column;
  gap:12px;
  max-height:720px;
  overflow:auto;
  padding:16px;
  background:#f7f9fb;
}
.support-spot-card{
  display:grid;
  grid-template-columns:112px 1fr;
  min-height:164px;
  border:1px solid #d7dee8;
  border-left:5px solid #94a3b8;
  border-radius:8px;
  overflow:hidden;
  background:#fff;
}
.support-spot-card.available{border-left-color:#0f9f6e}
.support-spot-card>img{width:100%;height:100%;object-fit:cover;background:#e5e7eb}
.support-spot-body{display:flex;flex-direction:column;gap:8px;padding:14px}
.support-spot-title{display:flex;align-items:center;gap:10px}
.support-spot-title h2{margin:2px 0 0;font-size:18px}
.support-spot-title small{color:#475569;font-weight:800}
.support-spot-symbol,.perk-manager-icon{
  display:grid;
  place-items:center;
  flex:0 0 42px;
  width:42px;
  height:42px;
  border-radius:8px;
  color:#fff;
  background:#0f766e;
  font-size:12px;
  font-weight:900;
}
.support-spot-body p{margin:0;color:#475569}
.support-spot-meta{display:flex;flex-wrap:wrap;gap:6px}
.support-spot-meta span{
  padding:4px 7px;
  border-radius:6px;
  color:#243244;
  background:#edf3f5;
  font-size:12px;
  font-weight:800;
}
.support-shift{color:#64748b}
.support-empty{display:grid;gap:5px;padding:28px;border:1px dashed #94a3b8;border-radius:8px;text-align:center}
.support-empty span{color:#64748b}
.perk-days{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:4px 0 14px;
  padding:12px;
  border:1px solid #d7dee8;
  border-radius:8px;
}
.perk-days legend{padding:0 6px;font-weight:800}
.perk-days label{display:flex;align-items:center;gap:5px;padding:6px 8px;border-radius:6px;background:#f1f5f9}
.perk-manager-list,.campaign-report-list{display:grid;gap:10px}
.perk-manager-card{
  display:grid;
  grid-template-columns:44px 1fr auto;
  align-items:center;
  gap:12px;
  min-height:104px;
  padding:12px;
  border:1px solid #d7dee8;
  border-left:4px solid #94a3b8;
  border-radius:8px;
  background:#fff;
}
.perk-manager-card.available{border-left-color:#0f9f6e}
.perk-manager-main{min-width:0}
.perk-manager-main p{margin:5px 0;color:#475569}
.perk-manager-main small{color:#64748b}
.campaign-report-card{
  display:grid;
  gap:12px;
  padding:14px;
  border:1px solid #d7dee8;
  border-radius:8px;
  background:#fff;
}
.campaign-report-card .between>div{display:grid;gap:3px}
.campaign-report-card small{color:#64748b}
.campaign-metrics{
  display:grid;
  grid-template-columns:repeat(5,minmax(76px,1fr));
  gap:7px;
}
.campaign-metrics span{
  display:grid;
  gap:3px;
  min-width:0;
  padding:9px;
  border-radius:7px;
  background:#f1f5f9;
}
.campaign-metrics b{font-size:18px}
.campaign-metrics small{overflow:hidden;text-overflow:ellipsis}
.campaign-analysis>summary{cursor:pointer;font-weight:900}
.campaign-analysis[open]{display:grid;gap:8px}
.campaign-insight{
  padding:10px;
  border-left:4px solid #64748b;
  background:#f8fafc;
}
.campaign-insight.strength{border-left-color:#0f9f6e}
.campaign-insight.weakness{border-left-color:#e11d48}
.campaign-insight.change{border-left-color:#f97316}
.campaign-insight.strategy{border-left-color:#0ea5a8}
.campaign-insight p{margin:5px 0;color:#475569}

@media (max-width:860px){
  .support-spots-controls{grid-template-columns:1fr;padding-inline:10px}
  .support-spots-layout{grid-template-columns:1fr;min-height:0}
  .support-map{min-height:330px}
  .support-spots-list{max-height:none;padding:10px}
  .campaign-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:560px){
  .support-spots-hero{padding:18px 14px}
  .support-spots-count{width:50px;height:50px;font-size:22px}
  .support-spot-card{grid-template-columns:82px 1fr}
  .support-spot-body{padding:11px}
  .support-spot-card .row-actions{grid-column:1/-1}
  .perk-manager-card{grid-template-columns:40px 1fr}
  .perk-manager-card .ops-mini-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  min-height:100%;
  background:
    linear-gradient(135deg,rgba(40,199,238,.12),rgba(255,91,24,.08) 44%,rgba(32,196,116,.10)),
    var(--bg);
  color:var(--ink);
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  -webkit-text-size-adjust:100%;
  font-size:calc(16px * var(--xf-text-scale));
}
button,input,select,textarea{font:inherit;color:inherit}
button{border:0;cursor:pointer}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
.hidden{display:none!important}
.muted{color:var(--muted)}
.price{font-weight:950;color:#111827}
.app-shell{
  width:100%;
  max-width:none;
  min-height:100dvh;
  margin:0 auto;
  background:
    linear-gradient(180deg,#fff 0,#fff 220px,rgba(247,250,252,.96) 520px),
    var(--surface);
  box-shadow:none;
}
.page{
  width:100%;
  padding:10px clamp(12px,2.6vw,34px) calc(158px + env(safe-area-inset-bottom,0px));
}
#panel-root.page,#profile-root.page,#orders-root.page,#admin-root.page,#driver-root.page{
  background:
    linear-gradient(145deg,rgba(40,199,238,.08),transparent 34%),
    linear-gradient(25deg,rgba(255,91,24,.08),transparent 42%),
    linear-gradient(180deg,#fff 0,#f6f9fc 100%);
}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.between{display:flex;align-items:center;justify-content:space-between;gap:8px}
.stack{display:grid;gap:10px}
.section-title{margin:12px 2px 8px}
.section-title h1,.section-title h2{margin:0;font-size:clamp(1.12rem,2.5vw,1.58rem)}
.section-title p{margin:4px 0 0;color:var(--muted)}
.input,.search{
  width:100%;
  min-height:42px;
  border:1px solid var(--line);
  border-radius:14px;
  padding:0 12px;
  background:#fff;
  outline:none;
}
textarea.input{min-height:78px;padding-top:10px;resize:vertical}
.search{min-height:48px;border-radius:18px}
.input:focus,.search:focus{
  border-color:rgba(40,199,238,.7);
  box-shadow:0 0 0 4px rgba(40,199,238,.16);
}
.field{display:grid;gap:6px}
.field span,.field label{font-size:.82rem;font-weight:850;color:var(--muted)}
.panel,.card,.stat{
  background:#fff;
  border:1px solid var(--line);
  border-radius:var(--radius);
  box-shadow:0 12px 30px rgba(17,24,39,.06);
}
.panel{padding:12px;margin:9px 0}
.card{padding:12px}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.stat{padding:11px}
.stat small{display:block;color:var(--muted);font-weight:800}
.stat b{display:block;margin-top:2px;font-size:1.1rem}
.primary-btn,.ghost-btn,.ok-btn,.danger-btn,.icon-btn{
  min-height:38px;
  border-radius:12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  font-weight:850;
  transition:.18s ease;
  position:relative;
  overflow:hidden;
  box-shadow:var(--metal-shadow);
  transform:translateZ(0);
}
.primary-btn::before,.ghost-btn::before,.ok-btn::before,.danger-btn::before,.icon-btn::before{
  content:"";
  position:absolute;
  inset:1px 1px auto;
  height:46%;
  border-radius:inherit;
  background:linear-gradient(180deg,rgba(255,255,255,.46),rgba(255,255,255,0));
  pointer-events:none;
}
.primary-btn:hover,.ghost-btn:hover,.ok-btn:hover,.danger-btn:hover,.icon-btn:hover{
  box-shadow:var(--metal-shadow),var(--metal-glow);
  transform:translateY(-1px);
}
.primary-btn:active,.ghost-btn:active,.ok-btn:active,.danger-btn:active,.icon-btn:active{transform:translateY(0) scale(.99)}
.primary-btn{padding:0 14px;background:linear-gradient(145deg,#ff7a32,#ff5b18 54%,#d93e0d);color:#fff}
.ghost-btn{padding:0 12px;background:linear-gradient(145deg,#fff,#f5f7fb 58%,#e9edf4);color:#111827;border:1px solid rgba(198,207,219,.95)}
.ok-btn{padding:0 12px;background:linear-gradient(145deg,#39dc92,#20c474 56%,#10945a);color:#fff}
.danger-btn{padding:0 12px;background:linear-gradient(145deg,#ff6b6b,#ef4444 55%,#c81e1e);color:#fff}
.icon-btn{width:38px;background:linear-gradient(145deg,rgba(255,255,255,.24),rgba(255,255,255,.08));color:#fff;border:1px solid rgba(255,255,255,.28)}
.badge{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:0 9px;
  border-radius:999px;
  font-size:.74rem;
  font-weight:950;
  white-space:normal;
}
.open{background:rgba(32,196,116,.16);color:#137647}
.closed{background:rgba(100,116,139,.14);color:#334155}
.cyan{background:rgba(40,199,238,.18);color:#075985}
.toast{
  position:fixed;
  left:50%;
  bottom:150px;
  z-index:10120;
  width:min(440px,calc(100vw - 28px));
  padding:12px 14px;
  transform:translateX(-50%) translateY(10px);
  border-radius:16px;
  background:#111827;
  color:#fff;
  opacity:0;
  pointer-events:none;
  transition:.2s ease;
  font-weight:850;
}
.toast.show{opacity:1;transform:translateX(-50%)}
.confirm-overlay{
  position:fixed;
  inset:0;
  z-index:10110;
  display:grid;
  place-items:center;
  padding:18px;
  background:rgba(17,24,39,.22);
  backdrop-filter:blur(7px);
  opacity:0;
  transition:opacity .16s ease;
}
.confirm-overlay.open{opacity:1}
.confirm-overlay.closing{opacity:0}
.confirm-dialog{
  position:relative;
  width:min(390px,100%);
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  gap:12px;
  padding:16px;
  border:1px solid rgba(255,255,255,.68);
  border-radius:20px;
  background:
    linear-gradient(145deg,rgba(255,255,255,.96),rgba(246,249,252,.94)),
    #fff;
  box-shadow:0 28px 70px rgba(17,24,39,.25), inset 0 1px 0 rgba(255,255,255,.88);
  overflow:hidden;
  transform:translateY(10px) scale(.98);
  transition:transform .18s cubic-bezier(.22,1,.36,1);
}
.confirm-overlay.open .confirm-dialog{transform:translateY(0) scale(1)}
.confirm-dialog.prompt-dialog{
  grid-template-columns:42px minmax(0,1fr);
}
.prompt-dialog .prompt-field,
.prompt-dialog .confirm-actions{
  position:relative;
  z-index:1;
  grid-column:2;
}
.prompt-field{
  display:grid;
  gap:6px;
}
.prompt-field span{
  color:var(--muted);
  font-size:.72rem;
  font-weight:950;
  text-transform:uppercase;
}
.prompt-field textarea.input{
  width:100%;
  min-height:86px;
}
.confirm-glow{
  position:absolute;
  inset:-80px -80px auto auto;
  width:190px;
  height:190px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(40,199,238,.2),rgba(255,91,24,.08) 45%,transparent 68%);
  pointer-events:none;
}
.confirm-mark{
  position:relative;
  width:42px;
  height:42px;
  border-radius:14px;
  display:grid;
  place-items:center;
  background:linear-gradient(145deg,#454a52,#2f343b);
  color:#fff;
  font-weight:950;
  box-shadow:var(--metal-shadow),0 0 22px rgba(40,199,238,.18);
}
.confirm-copy{position:relative;min-width:0}
.confirm-copy h3{margin:0;font-size:1.02rem;line-height:1.15}
.confirm-copy p{margin:6px 0 0;color:var(--muted);font-size:.88rem;line-height:1.35}
.confirm-actions{
  position:relative;
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-top:4px;
}


/* css/layout.css */
.site-header{
  position:sticky;
  top:0;
  z-index:50;
  padding:8px clamp(10px,1.8vw,16px);
  background:linear-gradient(135deg,#3d4147,#34383e 64%,#4a403d);
  color:#fff;
}
.top-row{display:flex;align-items:center;justify-content:space-between;gap:10px}
.top-row > *{min-width:0}
.header-actions{display:flex;align-items:center;gap:8px;min-width:0}
.header-accessibility-btn{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.3);
  border-radius:50%;
  background:rgba(255,255,255,.1);
  color:#fff;
  font-size:.72rem;
  font-weight:1000;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 8px 18px rgba(15,23,42,.2);
}
.header-message-btn{
  width:38px;
  height:38px;
  position:relative;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.28);
  border-radius:50%;
  background:rgba(255,255,255,.1);
  color:#fff;
  font-size:.95rem;
  font-weight:950;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 8px 18px rgba(15,23,42,.2);
}
.header-message-badge{
  position:absolute;
  top:-4px;
  right:-3px;
  min-width:18px;
  height:18px;
  padding:0 4px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:var(--primary);
  color:#fff;
  font-size:.62rem;
  font-style:normal;
  font-weight:900;
  box-shadow:0 6px 12px rgba(255,91,24,.35);
}
.header-ai-btn{
  width:38px;
  height:38px;
  flex:0 0 auto;
  border:1px solid rgba(255,255,255,.28);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#fff;
  font-weight:950;
  font-size:1rem;
  background:linear-gradient(145deg,rgba(255,255,255,.18),rgba(255,255,255,.05));
  box-shadow:0 12px 24px rgba(15,23,42,.18),0 0 0 1px rgba(255,255,255,.08) inset;
}
.header-ai-btn:hover,
.header-ai-btn:focus-visible,
.header-message-btn:hover,
.header-message-btn:focus-visible{
  outline:none;
  box-shadow:0 14px 28px rgba(15,23,42,.22),0 0 20px rgba(34,199,238,.36),0 0 20px rgba(251,100,20,.26);
}
.brand{display:flex;align-items:center;gap:9px;font-weight:950;letter-spacing:.01em}
.brand-mark{
  width:38px;
  height:38px;
  border-radius:13px;
  display:grid;
  place-items:center;
  background:var(--primary);
  box-shadow:0 8px 18px rgba(255,91,24,.24);
}
.location-card{
  width:100%;
  max-width:100%;
  text-align:left;
  display:grid;
  gap:1px;
  position:relative;
  appearance:none;
  font:inherit;
  color:#fff;
  cursor:pointer;
  margin:5px 0 0;
  padding:6px 10px;
  min-height:38px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:0 14px 14px 14px;
  background:linear-gradient(135deg,rgba(40,199,238,.18),rgba(255,91,24,.16)),rgba(255,255,255,.08);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 8px 18px rgba(17,24,39,.1);
  overflow:hidden;
}
.location-card:focus-visible{outline:3px solid rgba(40,199,238,.42);outline-offset:2px}
.location-card b,.location-card small{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.location-card b{font-size:.86rem;line-height:1.05;padding-right:112px}
.location-card small{display:block;color:rgba(255,255,255,.72);font-size:.68rem;line-height:1.05}
.location-card.is-confirmed small{
  position:absolute;
  right:8px;
  top:50%;
  max-width:112px;
  transform:translateY(-50%);
  padding:3px 7px;
  border-radius:999px;
  color:rgba(255,255,255,.86);
  background:rgba(15,23,42,.24);
  backdrop-filter:blur(8px);
}

.soft-filter-row{
  display:flex;
  gap:8px;
  overflow:auto;
  padding:2px 0;
  scrollbar-width:none;
}
.soft-filter-row::-webkit-scrollbar{display:none}
.opportunity-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:12px;
  margin-top:14px;
}
.opportunity-card{
  min-height:168px;
  border:1px solid rgba(15,23,42,.08);
  border-radius:18px;
  background:rgba(255,255,255,.92);
  box-shadow:0 14px 34px rgba(15,23,42,.08);
  padding:14px;
  display:flex;
  flex-direction:column;
  gap:8px;
  overflow:hidden;
}
.opportunity-card h3{font-size:1rem;line-height:1.2;margin:0}
.opportunity-card p{margin:0;color:var(--muted);line-height:1.35}
.opportunity-card small{text-transform:uppercase;letter-spacing:.02em;color:var(--muted);font-weight:800}
.opportunity-thumb{
  width:100%;
  aspect-ratio:16/9;
  object-fit:cover;
  border-radius:14px;
  background:#eef2f7;
}
.status-pill{
  align-self:flex-start;
  margin-top:auto;
  border-radius:999px;
  padding:5px 10px;
  background:#eefbf4;
  color:#057a4f;
  font-size:.78rem;
  font-weight:800;
}
.opportunity-card.ad-post-card{
  min-height:0;
  padding:0;
  gap:0;
  border-radius:22px;
  background:#fff;
}
.opportunity-card.ad-post-card.is-focused{
  outline:2px solid rgba(255,91,24,.42);
  box-shadow:0 18px 48px rgba(255,91,24,.18),0 16px 44px rgba(15,23,42,.08);
}
.ad-post-head{
  display:grid;
  grid-template-columns:44px minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  padding:12px 13px 10px;
}
.ad-avatar{
  width:44px;
  height:44px;
  border-radius:15px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,#ff5b18,#ffb000);
  color:#fff;
  font-weight:1000;
  box-shadow:0 10px 22px rgba(255,91,24,.22);
  text-decoration:none;
  overflow:hidden;
}
.ad-avatar.has-image{background:#eef2f7}
.ad-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.ad-author-link{text-decoration:none;color:inherit}
.ad-post-head b,.ad-post-head span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ad-post-head b{font-size:.95rem;color:#111827}
.ad-post-head span{font-size:.78rem;color:#64748b;font-weight:800}
.ad-post-audience{
  border:1px solid rgba(40,199,238,.18);
  border-radius:999px;
  padding:6px 9px;
  background:#f0fbff;
  color:#036782;
  font-size:.72rem;
  font-weight:950;
}
.ad-post-media-wrap{
  position:relative;
  overflow:hidden;
  background:#eef2f7;
}
.ad-post-media{
  width:100%;
  aspect-ratio:1/1;
  object-fit:cover;
  background:#eef2f7;
  display:block;
}
.ad-post-overlay{
  position:absolute;
  right:10px;
  bottom:10px;
  display:flex;
  gap:8px;
  opacity:0;
  transform:translateY(8px);
  transition:opacity .18s ease,transform .18s ease;
}
.ad-post-media-wrap:hover .ad-post-overlay,
.ad-post-media-wrap:focus-within .ad-post-overlay{
  opacity:1;
  transform:translateY(0);
}
.ad-post-overlay button{
  width:38px;
  height:38px;
  border:1px solid rgba(255,255,255,.55);
  border-radius:14px;
  display:grid;
  place-items:center;
  color:#fff;
  background:rgba(15,23,42,.42);
  box-shadow:0 12px 24px rgba(15,23,42,.22),inset 0 1px 0 rgba(255,255,255,.28);
  backdrop-filter:blur(10px);
  font-size:1.1rem;
  font-weight:1000;
  cursor:pointer;
}
.ad-post-overlay button.active{background:rgba(255,90,20,.86);border-color:rgba(255,255,255,.8)}
.ad-post-overlay.is-viewer{
  position:static;
  opacity:1;
  transform:none;
  justify-content:flex-end;
}
.ad-post-overlay.is-viewer button{
  width:46px;
  height:46px;
  border-radius:16px;
  font-size:1.18rem;
}
.ad-post-body{display:grid;gap:8px;padding:12px 13px 13px}
.ad-post-body h3{font-size:1.02rem}
.ad-post-social-row{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  padding-top:6px;
  border-top:1px solid rgba(226,232,240,.8);
  color:#64748b;
  font-size:.78rem;
  font-weight:850;
}
.ad-post-social-row a{color:#0284c7;text-decoration:none}
.ad-post-social-row a:hover{text-decoration:underline}
.ad-post-social-row button{
  border:0;
  padding:0;
  color:#64748b;
  background:transparent;
  font:inherit;
  cursor:pointer;
}
.ad-post-social-row button:hover{color:#0284c7;text-decoration:underline}
.ad-comment-list{display:grid;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid rgba(226,232,240,.78)}
.ad-comment{display:grid;gap:4px;padding:9px;border:1px solid rgba(226,232,240,.86);border-radius:14px;background:#f8fafc}
.ad-comment header{display:flex;align-items:center;gap:7px}
.ad-comment header a{color:inherit;text-decoration:none}
.ad-comment-avatar{display:grid;place-items:center;width:28px;height:28px;overflow:hidden;border-radius:9px;color:#fff;background:#111827;font-size:.72rem;font-weight:900}
.ad-comment-avatar img{width:100%;height:100%;object-fit:cover}
.ad-comment b{font-size:.8rem;color:#111827}
.ad-comment p{margin:0;font-size:.82rem;color:#475569}
.ad-comment button{justify-self:start;border:0;background:transparent;color:#0284c7;font-weight:900;font-size:.78rem;padding:0;cursor:pointer}
.ad-comment-image{width:min(100%,360px);max-height:300px;border-radius:8px;object-fit:cover}
.ad-replies{display:grid;gap:4px;margin-left:10px;padding-left:9px;border-left:2px solid rgba(37,193,223,.35);font-size:.78rem;color:#64748b}
.public-profile-hero{display:grid;gap:14px;padding:0;overflow:hidden}
.public-profile-cover{min-height:120px;background:linear-gradient(135deg,#111827,#0ea5e9 55%,#ff5b18)}
.public-profile-cover img{width:100%;height:180px;object-fit:cover;display:block}
.public-profile-info{display:grid;grid-template-columns:auto minmax(0,1fr);gap:13px;align-items:center;padding:0 16px}
.public-profile-avatar{width:58px;height:58px;border-radius:18px;margin-top:-28px}
.public-profile-avatar img{width:100%;height:100%;object-fit:cover;border-radius:inherit;display:block}
.public-profile-info h2{margin:2px 0 4px}
.public-profile-info p{margin:0;color:#64748b;font-weight:750}
.public-profile-ref{display:flex;align-items:center;gap:10px;padding:0 16px}
.public-profile-ref a{min-width:0;overflow:hidden;color:#0284c7;font-size:.78rem;font-weight:800;text-overflow:ellipsis;white-space:nowrap}
.public-profile-metrics,.public-profile-insights{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:9px;padding:0 16px 16px}
.public-profile-metrics article,.public-profile-insights article{border:1px solid rgba(226,232,240,.9);border-radius:16px;background:#fff;padding:11px;display:grid;gap:3px}
.public-profile-metrics b,.public-profile-insights b{font-size:1.05rem;color:#111827}
.public-profile-metrics span,.public-profile-insights span,.public-profile-insights small{font-size:.76rem;color:#64748b;font-weight:850}
.profile-public-compact{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;border:1px solid rgba(226,232,240,.9);border-radius:18px;background:linear-gradient(135deg,#ffffff,#f8fafc);box-shadow:0 12px 28px rgba(15,23,42,.05);min-width:0}
.profile-public-compact h4{margin:2px 0 3px;font-size:.98rem;color:#111827}
.profile-public-compact p{margin:0;font-size:.82rem;overflow-wrap:anywhere}
.profile-public-compact .ghost-btn{white-space:nowrap}
.profile-public-compact.is-active{display:block;padding:0;overflow:hidden}
.profile-public-link{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;padding:13px 15px;color:#111827;text-decoration:none;min-width:0}
.profile-public-link span:first-child{display:grid;gap:2px;min-width:0}
.profile-public-link small{color:#64748b;font-size:.76rem}
.profile-public-link b{font-size:.96rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.profile-public-link span:last-child{font-size:1.25rem;color:#f45b22}
.profile-public-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.profile-public-options{display:grid;gap:8px;padding:10px;border:1px solid rgba(226,232,240,.86);border-radius:16px;background:#f8fafc}
.profile-public-options label{display:flex;gap:8px;align-items:center;color:#475569;font-size:.82rem;font-weight:850}
.profile-human-inbox-card{display:grid;gap:12px}
.profile-human-inbox-head{display:grid;gap:10px}
.profile-human-inbox-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.profile-human-filter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.profile-human-filter-grid .field{margin:0}
.profile-human-inbox-grid{display:grid;grid-template-columns:280px minmax(0,1fr);gap:12px;align-items:start}
.profile-human-ticket-list{display:grid;gap:8px}
.profile-human-ticket{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:11px 12px;border:1px solid rgba(226,232,240,.94);border-radius:16px;background:#fff;text-align:left;box-shadow:0 10px 24px rgba(15,23,42,.05)}
.profile-human-ticket.is-active{border-color:rgba(45,212,191,.46);box-shadow:0 16px 30px rgba(45,212,191,.12);background:linear-gradient(135deg,#ffffff,#f0fdfa)}
.profile-human-ticket span{display:grid;gap:2px;min-width:0}
.profile-human-ticket-main{justify-items:start;text-align:left}
.profile-human-ticket-meta{justify-items:end;text-align:right}
.profile-human-ticket b,.profile-human-ticket small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.profile-human-ticket b{font-size:.92rem;color:#111827}
.profile-human-ticket small{font-size:.76rem;color:#64748b;font-weight:850}
.profile-human-chat-card{min-width:0}
.profile-human-empty{display:grid;gap:6px;padding:16px;border:1px solid rgba(226,232,240,.94);border-radius:18px;background:linear-gradient(135deg,#fff,#f8fafc)}
.social-feed-grid{align-items:start}
.local-opportunity-card{gap:0;overflow:hidden}
.local-opportunity-media .ad-post-media{aspect-ratio:16/10}
.local-opportunity-card .ad-post-body{padding:12px 14px}
.local-opportunity-card .compact-actions{padding:0 14px 14px}
.local-opportunity-card .compact-actions .ghost-btn,
.local-opportunity-card .compact-actions .primary-btn{min-height:38px;padding:9px 12px}
.contract-step{
  display:grid;
  gap:10px;
  margin-top:12px;
  padding:12px;
  border:1px solid rgba(226,232,240,.86);
  border-radius:16px;
  background:linear-gradient(180deg,#ffffff,#f8fbff);
}
.modal-backdrop{
  position:fixed;
  inset:0;
  z-index:1200;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px;
  background:rgba(15,23,42,.36);
  backdrop-filter:blur(10px);
}
.modal-card{
  width:min(520px,100%);
  max-height:min(86vh,720px);
  overflow:auto;
  border:1px solid rgba(255,255,255,.65);
  border-radius:22px;
  background:linear-gradient(145deg,#ffffff,#f8fafc);
  box-shadow:0 28px 80px rgba(15,23,42,.22);
  padding:20px;
  position:relative;
}
.ad-photo-viewer-backdrop{
  padding:14px;
  z-index:1250;
}
.ad-photo-viewer-card{
  width:min(980px,100%);
  max-height:min(94vh,980px);
  padding:16px;
}
.ad-photo-viewer-stage{
  position:relative;
  display:grid;
  align-items:center;
  justify-items:center;
  min-height:min(72vh,760px);
  border-radius:22px;
  overflow:hidden;
  background:#0f172a;
}
.ad-photo-viewer-image{
  display:block;
  max-width:100%;
  max-height:min(72vh,760px);
  width:auto;
  height:auto;
  object-fit:contain;
  background:#0f172a;
}
.ad-photo-viewer-nav{
  position:absolute;
  top:50%;
  z-index:2;
  width:52px;
  height:52px;
  margin-top:-26px;
  border:1px solid rgba(255,255,255,.28);
  border-radius:18px;
  color:#fff;
  background:rgba(15,23,42,.56);
  box-shadow:0 18px 34px rgba(15,23,42,.28);
  backdrop-filter:blur(12px);
  font-size:2rem;
  line-height:1;
  cursor:pointer;
}
.ad-photo-viewer-nav[data-photo-prev]{left:14px}
.ad-photo-viewer-nav[data-photo-next]{right:14px}
.ad-photo-viewer-meta{
  display:grid;
  gap:10px;
  margin-top:12px;
}
.ad-photo-viewer-meta b{
  display:block;
  color:#111827;
  font-size:1rem;
}
.ad-photo-viewer-meta small{
  color:#64748b;
  font-size:.82rem;
  font-weight:850;
}
.modal-close{
  position:absolute;
  right:12px;
  top:12px;
  width:36px;
  height:36px;
  border:0;
  border-radius:999px;
  background:#f1f5f9;
  color:#0f172a;
  font-size:1.2rem;
  cursor:pointer;
}
.sensitive-auth-card{
  max-width:430px;
}
.tiny{font-size:.8rem}
.bottom-nav{
  position:fixed;
  left:50%;
  bottom:8px;
  z-index:60;
  width:min(760px,calc(100vw - 24px));
  transform:translateX(-50%);
  display:flex;
  justify-content:center;
  align-items:center;
  gap:6px;
  padding:6px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:24px;
  background:rgba(36,39,45,.94);
  box-shadow:0 16px 38px rgba(17,24,39,.28);
  backdrop-filter:blur(18px);
}
.nav-btn{
  flex:0 1 112px;
  min-width:62px;
  min-height:42px;
  text-decoration:none;
  border-radius:15px;
  background:rgba(255,255,255,.07);
  color:rgba(255,255,255,.9);
  display:grid;
  place-items:center;
  gap:2px;
  font-size:.76rem;
  font-weight:950;
  border:1px solid rgba(255,255,255,.12);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.13),0 10px 22px rgba(0,0,0,.10);
}
.nav-btn span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nav-btn:hover{color:#fff;background:rgba(255,255,255,.13)}
.nav-btn.active{
  color:#111827;
  background:linear-gradient(135deg,#28c7ee,#7ee7ff);
  border-color:rgba(126,231,255,.75);
  box-shadow:0 12px 26px rgba(40,199,238,.24),inset 0 1px 0 rgba(255,255,255,.5);
}
.cart-fab{
  position:fixed;
  right:clamp(14px,3vw,38px);
  bottom:78px;
  z-index:70;
  min-width:62px;
  height:52px;
  border-radius:18px;
  padding:0 14px;
  color:#fff;
  display:flex;
  align-items:center;
  gap:8px;
  background:linear-gradient(145deg,#ff7a32,var(--primary) 54%,#d93e0d);
  box-shadow:var(--metal-shadow),0 0 28px rgba(255,91,24,.22);
  font-weight:950;
}
.cart-fab:hover{box-shadow:var(--metal-shadow),var(--metal-glow),0 0 28px rgba(255,91,24,.24)}
.cart-panel{
  position:fixed;
  left:auto;
  right:clamp(12px,3vw,38px);
  width:min(420px,calc(100vw - 24px));
  bottom:136px;
  margin:0 auto;
  --cart-panel-transform:none;
  transform:var(--cart-panel-transform);
  z-index:80;
  width:auto;
  max-width:760px;
  max-height:min(78dvh,720px);
  overflow:auto;
  border:1px solid var(--line);
  border-radius:20px;
  background:#fff;
  box-shadow:0 24px 70px rgba(17,24,39,.25);
  display:none;
}
.cart-panel.open{display:block}


/* css/components.css */
.chip-row{display:flex;gap:8px;overflow:auto;padding:3px 0 10px;scrollbar-width:none}
.chip{
  flex:0 0 auto;
  min-height:36px;
  padding:0 14px;
  border-radius:999px;
  background:#fff;
  border:1px solid var(--line);
  color:#111827;
  font-weight:900;
  box-shadow:var(--metal-shadow);
  position:relative;
  overflow:hidden;
}
.chip::before{
  content:"";
  position:absolute;
  inset:1px 1px auto;
  height:46%;
  border-radius:inherit;
  background:linear-gradient(180deg,rgba(255,255,255,.42),rgba(255,255,255,0));
  pointer-events:none;
}
.chip:hover{box-shadow:var(--metal-shadow),var(--metal-glow)}
.chip.active{background:linear-gradient(145deg,#54d8f4,var(--cyan) 56%,#14a9d3);border-color:rgba(40,199,238,.9);box-shadow:var(--metal-shadow),0 8px 22px rgba(40,199,238,.24)}
.promo-banner{
  min-height:clamp(118px,19vw,190px);
  margin:0 0 12px;
  border-radius:22px;
  overflow:hidden;
  position:relative;
  background:#111827 center/cover;
  color:#fff;
  display:flex;
  align-items:flex-end;
  padding:clamp(14px,2.4vw,22px);
  box-shadow:0 14px 28px rgba(17,24,39,.13);
}
.promo-banner > img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.promo-banner::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(17,24,39,.78),rgba(17,24,39,.12))}
.promo-banner > div{position:relative;z-index:1}
.promo-banner h1{font-size:clamp(1.65rem,4.8vw,3.35rem);line-height:1;margin:0;text-wrap:balance}
.promo-banner p{font-size:clamp(.92rem,1.9vw,1.1rem);margin:6px 0 0}
.restaurant-list,.product-list{display:grid;gap:10px}
.restaurant-list{
  padding:clamp(10px,1.7vw,16px);
  border-radius:22px;
  background:linear-gradient(145deg,#fff,#f7fbff);
}
.restaurant-card,.product-card{
  display:grid;
  grid-template-columns:clamp(76px,10vw,108px) minmax(0,1fr);
  gap:12px;
  padding:12px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#fff;
  box-shadow:0 8px 22px rgba(17,24,39,.055);
  position:relative;
}
.restaurant-card > div{min-width:0;padding-right:72px}
.restaurant-card em{
  position:absolute;
  top:12px;
  right:12px;
  min-height:24px;
  max-width:86px;
  padding:4px 9px;
  border-radius:999px;
  font-style:normal;
  font-size:.72rem;
  font-weight:950;
  line-height:1;
  white-space:nowrap;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.52),0 7px 16px rgba(17,24,39,.08);
}
.restaurant-card img,.product-card img{
  width:clamp(76px,10vw,108px);
  height:clamp(76px,10vw,108px);
  aspect-ratio:1;
  border-radius:18px;
  object-fit:cover;
  object-position:center;
  background:#111827;
}
.restaurant-card h3,.product-card h3{margin:0;font-size:clamp(.98rem,1.8vw,1.1rem)}
.restaurant-card p,.product-card p{margin:4px 0;color:var(--muted)}
.product-card.disabled{opacity:.58}
.meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px;color:var(--muted);font-size:.82rem}
.cart-head,.cart-summary{padding:12px;border-bottom:1px solid var(--line)}
.cart-head-actions{display:flex;gap:8px;align-items:center}
.cart-body{padding:0 12px;max-height:36dvh;overflow:auto}
.cart-item{display:grid;grid-template-columns:62px 1fr auto;gap:9px;align-items:center;padding:11px 0;border-bottom:1px solid var(--line)}
.cart-item img{width:62px;height:62px;border-radius:14px;object-fit:cover}
.fly-item{
  position:fixed;
  z-index:220;
  border-radius:16px;
  background:#fff;
  border:2px solid rgba(255,255,255,.92);
  box-shadow:0 18px 38px rgba(17,24,39,.2),0 0 0 8px rgba(40,199,238,.12);
  pointer-events:none;
  display:grid;
  place-items:center;
  overflow:hidden;
  animation:flyToCart .62s cubic-bezier(.22,1,.36,1) forwards;
}
.fly-item img{width:100%;height:100%;object-fit:cover;border-radius:16px}
@keyframes flyToCart{
  0%{transform:translate(0,0) scale(.82) rotate(-8deg);opacity:.95}
  60%{transform:translate(var(--fly-x),calc(var(--fly-y) - 34px)) scale(1.05) rotate(9deg);opacity:1}
  100%{transform:translate(var(--fly-x),var(--fly-y)) scale(.28) rotate(20deg);opacity:0}
}
.cart-fab.bump{animation:cartBump .34s ease}
@keyframes cartBump{50%{transform:scale(1.08)}}
.cart-panel.magic-out{animation:cartMagicOut .42s ease forwards}
.cart-panel.magic-in{animation:cartMagicIn .5s cubic-bezier(.22,1,.36,1)}
@keyframes cartMagicOut{
  0%{transform:var(--cart-panel-transform,translateX(-50%)) scale(1);filter:blur(0);opacity:1}
  70%{transform:var(--cart-panel-transform,translateX(-50%)) scale(.96) rotate(-1deg);filter:blur(2px);opacity:.62}
  100%{transform:var(--cart-panel-transform,translateX(-50%)) scale(.72) rotate(2deg);filter:blur(8px);opacity:0}
}
@keyframes cartMagicIn{
  0%{transform:var(--cart-panel-transform,translateX(-50%)) scale(.88);filter:blur(8px);opacity:0}
  100%{transform:var(--cart-panel-transform,translateX(-50%)) scale(1);filter:blur(0);opacity:1}
}
.magic-sparkle{
  position:fixed;
  z-index:230;
  width:9px;
  height:9px;
  border-radius:50%;
  pointer-events:none;
  background:radial-gradient(circle,#fff 0 28%,var(--yellow) 32% 58%,rgba(255,91,24,.1) 62%);
  box-shadow:0 0 18px rgba(248,196,0,.72);
  animation:magicSparkle .82s ease forwards;
}
@keyframes magicSparkle{
  0%{transform:translate(0,0) scale(.4);opacity:0}
  28%{opacity:1}
  100%{transform:translate(var(--spark-x),var(--spark-y)) scale(0);opacity:0}
}
.checkout-preview{display:grid;gap:8px;padding-top:12px;padding-bottom:4px}
.checkout-items{display:grid;gap:8px}
.checkout-item{
  display:grid;
  grid-template-columns:64px minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  padding:9px;
  border-radius:14px;
  background:var(--surface-2);
}
.checkout-item img{width:64px;height:64px;aspect-ratio:1;border-radius:14px;object-fit:cover;object-position:center;background:#111827}
.checkout-item b,.checkout-item small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.payment-method-field{
  display:grid;
  gap:7px;
  margin:8px 0;
  padding:9px;
  border-radius:14px;
  background:var(--surface-2);
  border:1px solid var(--line);
}
.payment-method-options{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}
.payment-method-options .chip{justify-content:center;width:100%}
.qty{display:flex;align-items:center;gap:7px}
.qty button{width:30px;height:30px;border-radius:10px;background:linear-gradient(145deg,#54d8f4,var(--cyan) 58%,#14a9d3);color:#07111b;font-weight:950;box-shadow:var(--metal-shadow);position:relative;overflow:hidden}
.qty button:first-child{background:linear-gradient(145deg,#ff7a32,var(--primary) 58%,#d93e0d);color:#fff}
.qty button:hover{box-shadow:var(--metal-shadow),var(--metal-glow)}
.product-qty{
  flex:0 0 auto;
  padding:3px;
  border-radius:14px;
  background:var(--surface-2);
  border:1px solid var(--line);
}
.product-qty span{min-width:22px;text-align:center;font-weight:950}
.store-editor{display:grid;grid-template-columns:112px minmax(0,1fr);gap:14px;align-items:start}
.store-editor img{width:112px;height:112px;aspect-ratio:1;border-radius:22px;object-fit:cover;object-position:center;background:#111827}
.store-editor-fields{display:grid;gap:10px}
.store-admin-card{overflow:hidden}
.store-media-preview{
  position:relative;
  min-height:166px;
  border-radius:22px;
  overflow:hidden;
  background:#111827;
  box-shadow:0 16px 36px rgba(17,24,39,.12);
}
.store-media-preview .store-banner-preview{
  width:100%;
  height:100%;
  min-height:166px;
  border-radius:0;
  object-fit:cover;
}
.store-media-preview .store-logo-preview{
  position:absolute;
  left:14px;
  bottom:14px;
  width:72px;
  height:72px;
  border-radius:18px;
  border:3px solid rgba(255,255,255,.92);
  box-shadow:0 12px 28px rgba(17,24,39,.26);
}
.store-status-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.campaign-quick-button{
  min-height:42px;
  padding:9px 13px;
  border:1px solid rgba(14,165,168,.42);
  border-radius:7px;
  background:linear-gradient(135deg,#fff 0%,#effcfa 52%,#fff4ed 100%);
  color:#0f172a;
  box-shadow:0 8px 18px rgba(15,118,110,.13),inset 0 1px 0 #fff;
  font:900 .86rem/1 inherit;
  cursor:pointer;
}
.campaign-quick-button span{color:#f05a18;font-size:1rem}
.campaign-quick-button:hover{border-color:#0ea5a8;box-shadow:0 10px 22px rgba(15,118,110,.2),0 0 0 3px rgba(14,165,168,.08)}

.payment-route-picker{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin:12px 0;
  padding:0;
  border:0;
}
.payment-route-picker legend{
  grid-column:1/-1;
  margin-bottom:5px;
  color:#0f172a;
  font-weight:950;
}
.payment-route-picker label{
  display:grid;
  grid-template-columns:22px minmax(0,1fr);
  gap:9px;
  min-width:0;
  padding:13px;
  border:1px solid #dbe4ee;
  border-radius:8px;
  background:#fff;
  cursor:pointer;
}
.payment-route-picker label.is-selected{
  border-color:#0ea5a8;
  background:#effcf9;
  box-shadow:0 0 0 3px rgba(14,165,168,.09);
}
.payment-route-picker input{margin-top:3px;accent-color:#0ea5a8}
.payment-route-picker span{display:grid;gap:5px}
.payment-route-picker small{color:#64748b;line-height:1.35}
.payment-own-provider-fields{display:grid;gap:10px}
.payment-own-provider-fields[hidden],.payment-central-summary[hidden]{display:none}
.payment-central-summary{
  display:grid;
  gap:12px;
  padding:15px;
  border:1px solid #b8eadf;
  border-radius:8px;
  background:linear-gradient(135deg,#effcf9,#fff8f2);
}
.payment-central-summary h4{margin:3px 0}
.payment-central-summary p{margin:0;color:#475569}
.payment-central-flow{
  display:grid;
  grid-template-columns:1fr auto 1fr auto 1fr;
  align-items:center;
  gap:7px;
}
.payment-central-flow span{
  min-width:0;
  padding:9px 7px;
  border:1px solid rgba(14,165,168,.22);
  border-radius:6px;
  background:#fff;
  text-align:center;
  font-size:.78rem;
  font-weight:900;
}
.payment-central-flow i{color:#f05a18;font-style:normal;font-size:1.25rem;font-weight:950}
@media (max-width:620px){
  .payment-route-picker{grid-template-columns:1fr}
}
.store-status-head{
  align-items:stretch;
  padding:12px;
  margin:-2px 0 14px;
  border-radius:22px;
  background:linear-gradient(135deg,#fff,rgba(40,199,238,.08));
  border:1px solid var(--line);
}
.store-status-head > div{min-width:0}
.store-status-head h3{margin:0}
.store-section-card{
  display:grid;
  gap:12px;
  padding:14px;
  border:1px solid rgba(15,23,42,.08);
  border-radius:22px;
  background:
    linear-gradient(145deg,rgba(255,255,255,.96),rgba(248,251,255,.9)),
    radial-gradient(circle at 12% 8%,rgba(255,214,42,.14),transparent 34%),
    radial-gradient(circle at 88% 0%,rgba(177,0,59,.12),transparent 36%);
  box-shadow:0 16px 36px rgba(17,24,39,.08);
}
.store-section-card .field{margin:0}
.store-section-title{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.store-section-title b{
  color:#111827;
  font-size:.98rem;
  font-weight:950;
}
.store-section-title small{
  color:var(--muted);
  font-size:.76rem;
  font-weight:900;
  line-height:1.25;
  text-align:right;
}
.store-social-card{
  border-color:rgba(34,199,238,.18);
  background:
    linear-gradient(145deg,rgba(255,255,255,.97),rgba(244,253,255,.92)),
    radial-gradient(circle at 12% 8%,rgba(34,199,238,.15),transparent 34%),
    radial-gradient(circle at 88% 0%,rgba(255,107,0,.10),transparent 36%);
}
.store-money-card{
  border-color:rgba(177,0,59,.18);
  background:
    linear-gradient(145deg,rgba(255,255,255,.97),rgba(255,248,229,.86)),
    radial-gradient(circle at 100% 0%,rgba(255,24,0,.11),transparent 34%);
}
.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.store-toggle{
  min-width:148px;
  min-height:58px;
  padding:0 18px;
  border-radius:18px;
  color:#fff;
  font-size:1rem;
  font-weight:950;
  box-shadow:0 16px 32px rgba(17,24,39,.16);
}
.store-toggle.open-action{background:linear-gradient(135deg,#16a34a,#20c474)}
.store-toggle.close-action{background:linear-gradient(135deg,#ef4444,#ff5b18)}
.store-toggle:hover{transform:translateY(-1px)}
.field .input:disabled{
  background:#eef2f6;
  color:#64748b;
  cursor:not-allowed;
}
.helper-copy{margin:0;font-size:.86rem;line-height:1.4}
.spec-toggle{
  display:flex;
  align-items:center;
  gap:9px;
  padding:10px 12px;
  border-radius:14px;
  background:linear-gradient(145deg,#fff,#f8fbff);
  border:1px solid var(--line);
  font-weight:900;
}
.spec-toggle input{width:18px;height:18px;accent-color:var(--primary)}
.modal{
  position:fixed;
  inset:0;
  z-index:120;
  display:grid;
  place-items:end center;
  padding:14px;
  background:rgba(17,24,39,.44);
}
.modal.hidden{display:none}
.modal-content{
  width:min(760px,100%);
  max-height:calc(100dvh - 28px);
  overflow:auto;
  border-radius:26px;
  background:#fff;
  box-shadow:0 26px 80px rgba(17,24,39,.32);
  border:1px solid var(--line);
  padding:16px;
}
.modal-header{display:flex;align-items:start;justify-content:space-between;gap:12px;margin-bottom:12px}
.modal-header strong{font-size:1.08rem}
.modal-header p{margin:4px 0 0;color:var(--muted)}
.map-address-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
.map-modal .modal-content{position:relative;padding:0;overflow:hidden}
.map-modal .modal-header{
  position:absolute;
  left:16px;
  right:16px;
  top:16px;
  z-index:2;
  color:#fff;
  padding:12px 14px;
  border-radius:18px;
  background:rgba(17,24,39,.58);
  backdrop-filter:blur(14px);
}
.map-modal .modal-header p{color:rgba(255,255,255,.78)}
.map-stage{
  min-height:min(72dvh,620px);
  border-radius:24px;
  overflow:hidden;
  position:relative;
  display:grid;
  place-items:center;
  margin:0;
  background:
    linear-gradient(90deg,rgba(255,255,255,.32) 1px,transparent 1px) 0 0/42px 42px,
    linear-gradient(0deg,rgba(255,255,255,.32) 1px,transparent 1px) 0 0/42px 42px,
    linear-gradient(135deg,#dff7f4,#f7efe7 48%,#dfeeff);
  border:1px solid var(--line);
}
.location-map{
  position:absolute;
  inset:0;
  z-index:0;
  min-height:100%;
}
.map-stage.has-real-map{background:#dfeeff}
.map-stage.has-real-map .fallback-pin{display:none}
.map-stage.has-fallback-map{
  cursor:crosshair;
  background:
    linear-gradient(90deg,rgba(17,24,39,.08) 1px,transparent 1px) 0 0/42px 42px,
    linear-gradient(0deg,rgba(17,24,39,.08) 1px,transparent 1px) 0 0/42px 42px,
    linear-gradient(135deg,#caedf5,#f7eadf 48%,#d8f0e3);
}
.map-selected-dot{
  position:absolute;
  z-index:2;
  width:24px;
  height:24px;
  border-radius:50%;
  background:var(--primary);
  border:4px solid #fff;
  box-shadow:0 10px 24px rgba(17,24,39,.28);
  transform:translate(-50%,-50%) scale(.78);
  opacity:0;
  pointer-events:none;
  transition:.16s ease;
}
.map-selected-dot.show{
  opacity:1;
  transform:translate(-50%,-50%) scale(1);
}
.map-zoom-controls{
  position:absolute;
  left:14px;
  bottom:104px;
  z-index:8;
  display:grid;
  gap:5px;
  pointer-events:auto;
}
.map-zoom-btn{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  padding:0;
  border-radius:13px;
  background:rgba(255,255,255,.94);
  color:#111827;
  border:1px solid rgba(15,23,42,.08);
  box-shadow:0 12px 26px rgba(17,24,39,.18);
  font-size:22px;
  line-height:1;
  font-weight:950;
  backdrop-filter:blur(12px);
}
.map-zoom-btn:hover{
  background:#fff;
  box-shadow:0 14px 30px rgba(17,24,39,.22);
}
.map-overlay{
  position:absolute;
  left:16px;
  right:16px;
  top:104px;
  z-index:3;
  display:grid;
  gap:8px;
}
.map-modal .field,.map-actions{
  position:relative;
  z-index:4;
  padding:8px;
  border-radius:20px;
  background:rgba(255,255,255,.76);
  box-shadow:0 16px 34px rgba(17,24,39,.12);
  backdrop-filter:blur(16px);
}
.map-modal .field span{padding-left:8px;color:#334155}
.map-modal .map-address-row .input{
  border-color:rgba(255,255,255,.64);
  background:rgba(255,255,255,.9);
}
.map-modal .map-address-row .ghost-btn,
.map-modal .map-address-row .primary-btn{
  min-height:38px;
  padding:0 12px;
  border-radius:13px;
  box-shadow:none;
  font-size:.86rem;
}
.map-modal .map-actions{
  gap:8px;
  padding:7px;
}
.map-modal .map-actions .ghost-btn,
.map-modal .map-actions .primary-btn{
  min-height:38px;
  padding:0 12px;
  border-radius:13px;
  font-size:.86rem;
}
.map-modal .leaflet-top.leaflet-left{
  display:none;
}
.map-modal .leaflet-control-zoom{
  border:0;
  border-radius:14px;
  overflow:hidden;
  box-shadow:0 12px 26px rgba(17,24,39,.18);
}
.map-modal .leaflet-control-zoom a{
  width:34px;
  height:34px;
  line-height:34px;
  display:grid;
  place-items:center;
  padding:0;
  font-size:20px;
  font-weight:900;
  color:#111827;
  background:rgba(255,255,255,.92);
  border:0;
}
.map-modal .leaflet-control-zoom a + a{
  border-top:1px solid rgba(15,23,42,.08);
}
.map-modal .leaflet-control-attribution{
  font-size:10px;
  max-width:52vw;
  overflow:hidden;
  white-space:normal;
}
.map-pin{
  width:34px;
  height:34px;
  border-radius:50% 50% 50% 0;
  transform:rotate(-45deg);
  background:var(--primary);
  box-shadow:0 12px 24px rgba(255,91,24,.26);
}
.map-pin::after{
  content:"";
  position:absolute;
  inset:9px;
  border-radius:50%;
  background:#fff;
}
.map-stage small{
  position:absolute;
  left:14px;
  right:14px;
  bottom:12px;
  z-index:3;
  padding:9px 12px;
  border-radius:14px;
  background:rgba(255,255,255,.9);
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:normal;
  color:#243042;
  font-weight:800;
}
.map-actions{
  position:absolute;
  left:16px;
  right:16px;
  bottom:48px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  background:transparent;
  box-shadow:none;
  padding:0;
  backdrop-filter:none;
}
.map-actions .ghost-btn,.map-actions .primary-btn{
  min-height:38px;
  padding:0 12px;
  border-radius:13px;
  font-size:.86rem;
  background:rgba(255,255,255,.82);
  color:#111827;
  border:1px solid rgba(255,255,255,.68);
  box-shadow:0 14px 28px rgba(17,24,39,.12);
  backdrop-filter:blur(14px);
}
.map-actions .primary-btn{
  background:rgba(255,91,24,.92);
  color:#fff;
  border-color:rgba(255,255,255,.22);
}
.map-actions button:disabled{opacity:.68;cursor:progress}
.number-popover{
  position:absolute;
  left:16px;
  right:16px;
  bottom:116px;
  z-index:6;
  display:grid;
  gap:8px;
  padding:14px;
  border-radius:22px;
  background:rgba(255,255,255,.94);
  border:1px solid rgba(255,255,255,.72);
  box-shadow:0 22px 48px rgba(17,24,39,.22);
  backdrop-filter:blur(18px);
}
.number-popover strong{font-size:1rem}
.number-popover p{margin:0}
.number-popover.hidden{display:none}
.number-popover > .ghost-btn{width:100%;background:rgba(242,245,248,.9)}


/* css/home.css */
.home-count{color:var(--muted);margin:10px 0}


/* css/restaurante.css */
.restaurant-hero{
  overflow:hidden;
  border-radius:26px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}
.restaurant-hero img{width:100%;height:clamp(180px,28vw,300px);object-fit:cover}
.restaurant-hero-body{padding:16px}
.restaurant-hero h1{margin:0;font-size:clamp(1.7rem,4vw,2.8rem)}


/* css/produto.css */
.product-detail{
  display:grid;
  grid-template-columns:minmax(220px,320px) minmax(280px,1fr);
  gap:16px;
  align-items:start;
}
.product-image-card{
  width:100%;
  max-width:320px;
  padding:8px;
  border-radius:22px;
  background:linear-gradient(145deg,#fff,#f6f8fb);
  border:1px solid var(--line);
  box-shadow:0 14px 34px rgba(17,24,39,.1);
}
.product-image-card img{
  width:100%;
  height:clamp(176px,30vw,260px);
  aspect-ratio:4/3;
  border-radius:17px;
  object-fit:cover;
  object-position:center;
  background:#111827;
}
.product-detail h1{margin:0;font-size:clamp(1.55rem,4vw,2.6rem);line-height:1.02}
.product-info{margin-top:18px}
.product-info h2{margin:2px 0 0;font-size:clamp(1.2rem,2.4vw,1.7rem)}
.product-info-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.product-info-item{
  border:1px solid var(--line);
  border-radius:16px;
  padding:12px;
  background:rgba(255,255,255,.72);
}
.product-info-item span{
  display:block;
  color:var(--muted);
  font-size:.78rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.04em;
  margin-bottom:5px;
}
.product-info-item strong{
  display:block;
  color:var(--text);
  font-size:.95rem;
  line-height:1.45;
  overflow-wrap:anywhere;
}
.product-info-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
.product-label-preview{
  border:1px solid var(--line);
  border-radius:16px;
  overflow:hidden;
  background:rgba(255,255,255,.8);
}
.product-label-preview summary{
  cursor:pointer;
  font-weight:900;
  padding:12px 14px;
}
.product-label-preview iframe{
  display:block;
  width:100%;
  min-height:min(70vh,560px);
  border:0;
  background:#fff;
}
.product-info-note{
  font-size:.88rem;
  margin:0;
}

@media (max-width:720px){
  .profile-public-compact{grid-template-columns:1fr}
  .profile-public-actions{justify-content:stretch}
  .profile-public-compact .ghost-btn{width:100%;justify-content:center}
  .profile-human-inbox-actions{width:100%;justify-content:space-between}
  .profile-human-filter-grid{grid-template-columns:1fr}
  .profile-human-inbox-grid{grid-template-columns:1fr}
  .profile-human-ticket{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;padding:12px 13px;border-radius:18px}
  .profile-human-ticket-main small,
  .profile-human-ticket-meta small{white-space:normal;overflow:visible;text-overflow:clip;line-height:1.25}
  .profile-human-chat-card{overflow:hidden}
  .product-detail{grid-template-columns:1fr}
  .product-image-card{max-width:100%}
  .product-image-card img{height:clamp(150px,44vw,210px)}
  .product-info-grid{grid-template-columns:1fr}
  .product-info-actions .primary-btn,
  .product-info-actions .ghost-btn{width:100%;justify-content:center}
}


/* css/pedidos.css */
.order-list{display:grid;gap:10px}
.orders-dashboard [data-orders-refresh].is-soft-loading{
  opacity:.82;
  cursor:wait;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 10px 24px rgba(15,23,42,.08);
}
.orders-loading-calm{
  display:grid;
  gap:10px;
  padding:12px;
  border:1px solid rgba(226,232,240,.92);
  border-radius:18px;
  background:linear-gradient(145deg,#fff,#f7fbfd);
  box-shadow:0 14px 32px rgba(15,23,42,.07);
}
.orders-loading-calm > div{
  display:grid;
  gap:2px;
  padding:2px 2px 4px;
}
.orders-loading-calm small{
  color:#0e7490;
  font-size:.72rem;
  font-weight:950;
  text-transform:uppercase;
}
.orders-loading-calm b{
  color:#111827;
  font-size:.96rem;
}
.orders-loading-calm span{
  color:var(--muted);
  font-size:.86rem;
  line-height:1.35;
}
.order-skeleton{
  display:grid;
  grid-template-columns:46px minmax(0,1fr);
  gap:10px;
  align-items:center;
  min-height:68px;
  padding:9px;
  border:1px solid rgba(226,232,240,.88);
  border-radius:14px;
  background:#fff;
}
.order-skeleton i,
.order-skeleton span{
  display:block;
  overflow:hidden;
  border-radius:999px;
  background:linear-gradient(90deg,#eef2f7 0%,#f8fafc 45%,#eef2f7 100%);
  background-size:220% 100%;
  animation:softSkeleton 1.9s ease-in-out infinite;
}
.order-skeleton i{
  width:46px;
  height:46px;
  border-radius:14px;
}
.order-skeleton div{display:grid;gap:7px}
.order-skeleton span{height:9px}
.order-skeleton span:nth-child(1){width:72%}
.order-skeleton span:nth-child(2){width:48%}
.order-skeleton span:nth-child(3){width:30%}
@keyframes softSkeleton{
  0%{background-position:120% 0}
  100%{background-position:-120% 0}
}
@media (prefers-reduced-motion:reduce){
  .order-skeleton i,
  .order-skeleton span{animation:none}
}
.driver-invite-card{
  display:grid;
  gap:12px;
  padding:18px;
  margin:8px 0;
  border-radius:24px;
  color:#fff;
  background:
    radial-gradient(circle at 14% 16%,rgba(255,255,255,.2),transparent 28%),
    linear-gradient(145deg,#172554,#075985 58%,#0f766e);
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 20px 46px rgba(17,24,39,.18);
}
.driver-invite-card small{
  color:rgba(255,255,255,.78);
  font-weight:950;
  text-transform:uppercase;
  font-size:.74rem;
}
.driver-invite-card h1{
  margin:0;
  max-width:680px;
  font-size:clamp(1.55rem,4.6vw,3rem);
  line-height:1;
}
.driver-invite-card p{
  margin:0;
  max-width:720px;
  color:rgba(255,255,255,.88);
  line-height:1.48;
}
.driver-delivery-card{
  display:grid;
  gap:6px;
  padding:9px;
  border-radius:13px;
  background:
    linear-gradient(145deg,rgba(255,255,255,.96),rgba(248,251,255,.96)),
    #fff;
  border:1px solid var(--line);
  box-shadow:0 8px 20px rgba(17,24,39,.075);
}
.driver-delivery-head{
  display:flex;
  align-items:start;
  justify-content:space-between;
  gap:10px;
}
.driver-delivery-head small{
  display:block;
  color:var(--muted);
  font-size:.72rem;
  font-weight:950;
  text-transform:uppercase;
}
.driver-delivery-head h2{
  margin:2px 0 0;
  font-size:.88rem;
  line-height:1.1;
}
.driver-delivery-summary{
  display:grid;
  gap:4px;
  padding:7px 8px;
  border-radius:11px;
  background:linear-gradient(145deg,#f8fafc,#f3fbfd);
}
.driver-delivery-summary small{
  display:block;
  color:var(--muted);
  font-size:.66rem;
  font-weight:950;
  text-transform:uppercase;
}
.driver-delivery-summary b{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:normal;
  font-size:.86rem;
}
.driver-delivery-summary em{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:normal;
  color:var(--muted);
  font-size:.74rem;
  font-style:normal;
}
.driver-delivery-details{
  display:grid;
  gap:8px;
}
.driver-delivery-details > summary{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:31px;
  border-radius:999px;
  border:1px solid var(--line);
  background:linear-gradient(145deg,#fff,#f8fafc);
  color:#0f172a;
  font-size:.8rem;
  font-weight:950;
  cursor:pointer;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 6px 16px rgba(15,23,42,.05);
}
.driver-delivery-details > summary::-webkit-details-marker{display:none}
.driver-delivery-details[open] > summary{
  color:#0e7490;
  border-color:rgba(40,199,238,.32);
  background:linear-gradient(145deg,#ecfeff,#fff);
}
.driver-delivery-details .details-hide{display:none}
.driver-delivery-details[open] .details-show{display:none}
.driver-delivery-details[open] .details-hide{display:inline}
.driver-route{
  display:grid;
  grid-template-columns:18px minmax(0,1fr);
  gap:2px 8px;
  padding:8px;
  border-radius:12px;
  background:linear-gradient(145deg,#f8fafc,#eef8fb);
}
.driver-route > span{
  width:13px;
  height:13px;
  margin-top:3px;
  border-radius:50%;
  background:var(--cyan);
  box-shadow:0 0 0 4px rgba(40,199,238,.14);
}
.driver-route > span:nth-of-type(2){
  background:var(--primary);
  box-shadow:0 0 0 4px rgba(255,91,24,.14);
}
.driver-route b{
  display:block;
  font-size:.72rem;
  color:var(--muted);
  text-transform:uppercase;
}
.driver-route p{
  margin:1px 0 5px;
  color:#111827;
  font-weight:850;
  line-height:1.25;
  font-size:.86rem;
}
.driver-route small{display:block;color:var(--muted);font-size:.76rem;line-height:1.25}
.driver-delivery-meta{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:6px;
}
.driver-delivery-meta div{
  min-width:0;
  padding:6px 7px;
  border-radius:10px;
  background:#fff;
  border:1px solid var(--line);
}
.driver-delivery-meta small{
  display:block;
  color:var(--muted);
  font-size:.68rem;
  font-weight:950;
  text-transform:uppercase;
}
.driver-delivery-meta b{
  display:block;
  margin-top:2px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:normal;
  font-size:.86rem;
}
.driver-delivery-actions{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(132px,1fr));
  gap:7px;
}
.driver-delivery-actions .ghost-btn,
.driver-delivery-actions .primary-btn,
.driver-delivery-actions .ok-btn{
  min-height:34px;
  padding:0 10px;
  font-size:.82rem;
}
.driver-contact-card{
  border:1px solid rgba(15,23,42,.08);
  border-radius:12px;
  padding:8px 10px;
  background:linear-gradient(145deg,#fff,#f5fbff);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 10px 28px rgba(15,23,42,.06);
}
.driver-contact-card small{
  display:block;
  color:var(--muted);
  font-weight:800;
  text-transform:uppercase;
  font-size:10px;
}
.driver-contact-card b{display:block;margin-top:2px}
.driver-contact-card p{margin:4px 0 0;color:var(--muted);font-size:13px;line-height:1.35}
.driver-finished-note{
  padding:8px 10px;
  border-radius:12px;
  background:#ecfdf5;
  color:#166534;
  font-weight:900;
  font-size:.86rem;
}
.driver-chat{padding:9px;border-radius:12px}
.driver-empty-card{
  display:grid;
  gap:6px;
  padding:16px;
  border-radius:20px;
  background:
    radial-gradient(circle at 12% 12%,rgba(40,199,238,.14),transparent 28%),
    linear-gradient(145deg,#fff,#f7fbff);
  border:1px solid var(--line);
  box-shadow:0 14px 34px rgba(17,24,39,.08);
}
.driver-empty-card b{font-size:1rem}
.driver-empty-card p{
  margin:0;
  color:var(--muted);
  line-height:1.42;
}
.driver-filter-field{
  margin:2px 0 0;
  padding:10px;
  border:1px solid var(--line);
  border-radius:14px;
  background:linear-gradient(145deg,#fff,#f8fafc);
}
.driver-last-message{
  display:grid;
  gap:3px;
  padding:7px 9px;
  border-radius:11px;
  background:linear-gradient(145deg,#f0fdf4,#ffffff);
  border:1px solid rgba(34,197,94,.18);
}
.driver-last-message small{
  color:#15803d;
  font-size:.66rem;
  font-weight:950;
  text-transform:uppercase;
}
.driver-last-message p{
  margin:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:normal;
  color:#14532d;
  font-size:.78rem;
  font-weight:800;
}
.driver-finance-panel{
  display:grid;
  gap:14px;
  border-color:rgba(34,197,94,.14);
  background:linear-gradient(135deg,#ffffff,#f4fff8);
}
.driver-finance-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.driver-finance-grid>div{
  min-height:72px;
  border:1px solid rgba(15,23,42,.08);
  border-radius:14px;
  padding:12px;
  background:rgba(255,255,255,.78);
  box-shadow:0 10px 24px rgba(15,23,42,.05);
}
.driver-finance-grid small{
  display:block;
  color:var(--muted);
  font-size:.75rem;
  font-weight:900;
  text-transform:uppercase;
}
.driver-finance-grid b{display:block;margin-top:5px;font-size:1.05rem;color:#111827}
.driver-finance-form{
  display:grid;
  grid-template-columns:1.4fr .8fr .8fr auto;
  gap:10px;
  align-items:end;
}
.orders-dashboard{
  display:grid;
  gap:9px;
  margin-top:4px;
}
.orders-dashboard-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
}
.orders-dashboard-head small{
  display:block;
  color:var(--muted);
  font-weight:950;
  text-transform:uppercase;
  font-size:.72rem;
}
.orders-dashboard-head h3{
  margin:2px 0 2px;
  line-height:1.1;
}
.orders-dashboard-head p{
  margin:0;
}
.orders-dashboard-head span{
  display:block;
  margin-top:4px;
  font-size:.82rem;
}
.order-view-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(108px,1fr));gap:7px}
.order-view-tabs .chip{width:100%;justify-content:center}
.order-filter-tabs{
  display:flex;
  gap:6px;
  overflow:auto;
  padding-bottom:2px;
  scrollbar-width:none;
}
.order-filter-tabs::-webkit-scrollbar{display:none}
.order-filter-tabs .chip{
  flex:0 0 auto;
  min-height:32px;
  padding:0 10px;
  font-size:.76rem;
}
.orders-bulk-message{
  display:grid;
  gap:10px;
  margin:0;
  padding:12px;
  border-radius:18px;
  background:linear-gradient(145deg,#fff,#f7fbff);
  border:1px solid var(--line);
  box-shadow:0 10px 24px rgba(17,24,39,.05);
}
.orders-bulk-message b{font-size:.98rem}
.orders-bulk-message p{margin:0}
.orders-bulk-message textarea{
  min-height:84px;
  resize:vertical;
}
.order-summary{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:7px;
  margin:0;
}
.order-summary .stat{
  padding:9px 10px;
  border-radius:14px;
  box-shadow:none;
  background:var(--surface-2);
}
.order-summary .stat b{
  font-size:1.02rem;
  white-space:normal;
  overflow:hidden;
  text-overflow:ellipsis;
}
.orders-cart-top{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  padding:11px 12px;
  border-radius:16px;
  background:linear-gradient(145deg,#fff,#f7fbff);
  border:1px solid var(--line);
  box-shadow:0 10px 24px rgba(17,24,39,.06);
}
.orders-cart-top small{
  display:block;
  color:var(--muted);
  font-size:.7rem;
  font-weight:950;
  text-transform:uppercase;
}
.orders-cart-top b,.orders-cart-top span{
  display:block;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:normal;
}
.orders-cart-top span{
  padding:7px 10px;
  border-radius:999px;
  background:rgba(176,0,64,.09);
  color:#7f002f;
  font-weight:950;
  font-size:.8rem;
}
.order-error{
  margin-top:8px;
  padding:9px 11px;
  border:1px solid #fecaca;
  border-radius:12px;
  background:#fff1f2;
  color:#7f1d1d;
  font-size:.9rem;
  font-weight:800;
}
.order-card.compact{
  display:grid;
  grid-template-columns:58px minmax(0,1fr);
  gap:11px;
  align-items:start;
  padding:11px;
  border-radius:16px;
  background:linear-gradient(145deg,#fff,#f8fafc);
  border:1px solid rgba(15,23,42,.08);
  box-shadow:0 12px 28px rgba(17,24,39,.07);
}
.order-card.has-unread-message{border-color:rgba(40,199,238,.72);box-shadow:0 10px 24px rgba(40,199,238,.12)}
.order-card.has-unread-message .order-observation-preview b{color:#087f8c}
.credential-scan-history{margin-top:18px;padding-top:16px;border-top:1px solid var(--border)}
.product-public-detail{display:grid;grid-template-columns:minmax(240px,.75fr) minmax(0,1fr);gap:22px;align-items:start}
.product-public-line{display:grid;gap:4px;padding:10px 0;border-top:1px solid var(--border)}
.product-public-line small{font-weight:900;color:var(--muted);text-transform:uppercase;font-size:.72rem}
@media(max-width:720px){.product-public-detail{grid-template-columns:1fr}.product-public-detail .product-detail-image{width:100%;max-height:360px;object-fit:cover}}
.order-main{display:grid;gap:8px;min-width:0}
.order-top{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px}
.order-title{display:grid;gap:1px;min-width:0}
.order-title b,.order-title small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.order-title b{font-size:1rem;line-height:1.12}
.order-title small{font-size:.76rem}
.order-title .order-number{
  color:#0e7490;
  font-size:.72rem;
  font-weight:950;
  text-transform:uppercase;
}
.order-public-number{display:none}
.order-restaurant-photo{
  width:58px;
  height:58px;
  aspect-ratio:1;
  border-radius:13px;
  object-fit:cover;
  object-position:center;
  background-color:#111827;
  background-size:cover;
  background-position:center;
  display:block;
}
.order-restaurant-link{
  display:block;
  width:58px;
  height:58px;
  border-radius:13px;
  overflow:hidden;
}
.order-card .between{align-items:end;gap:10px}
.order-preview{display:grid;gap:5px;min-width:0;max-width:100%;width:100%}
.order-preview-item{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:7px;
  min-width:0;
  width:100%;
  padding:6px 8px;
  border-radius:11px;
  background:linear-gradient(135deg,rgba(40,199,238,.12),rgba(255,255,255,.9));
  border:1px solid rgba(40,199,238,.16);
  color:#075985;
  font-size:.76rem;
  font-weight:900;
}
.order-preview-item em{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:normal;
  font-style:normal;
}
.order-preview-item strong{
  color:#111827;
  font-size:.76rem;
  white-space:normal;
}
.order-preview-more{
  width:max-content;
  max-width:100%;
  padding:3px 7px;
  border-radius:999px;
  background:rgba(176,0,64,.1);
  color:#7f1d1d;
  font-size:.7rem;
  font-weight:900;
}
.order-observation-preview{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:5px;
  align-items:center;
  padding:5px 7px;
  border-radius:10px;
  background:#fff7ed;
  border:1px solid rgba(249,115,22,.18);
  color:#7c2d12;
  font-size:.74rem;
  line-height:1.22;
}
.order-observation-preview b{font-size:.7rem;text-transform:uppercase}
.order-observation-preview span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:normal;
}
.order-observation-preview.muted-thread{
  background:#f8fafc;
  border-color:#e2e8f0;
  color:#64748b;
}
.order-toggle{width:max-content;min-height:32px;padding:0 10px;font-size:.82rem}
.order-status-panel{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:7px;
  padding:7px 9px;
  border-radius:12px;
  font-size:.78rem;
  font-weight:850;
  line-height:1.28;
  border:1px solid rgba(15,23,42,.06);
}
.order-status-panel p{margin:0}
.order-status-panel span{
  width:9px;
  height:9px;
  border-radius:999px;
  background:currentColor;
  box-shadow:0 0 0 0 currentColor;
}
.order-status-panel.waiting{
  color:#7c2d12;
  background:linear-gradient(135deg,rgba(255,208,0,.22),rgba(255,255,255,.84),rgba(176,0,64,.08));
  animation:orderPulseWarm 1.9s ease-in-out infinite;
}
.order-status-panel.active{
  color:#075985;
  background:linear-gradient(135deg,rgba(16,0,176,.08),rgba(255,255,255,.9),rgba(64,0,128,.08));
  animation:orderPulseCool 2.2s ease-in-out infinite;
}
.order-status-panel.done{color:#166534;background:#ecfdf5}
.order-status-panel.danger{color:#7f1d1d;background:#fff1f2}
.order-actions.inline{margin-top:1px}
.order-actions.inline .grid-2{
  display:flex;
  gap:5px;
  overflow:auto;
  scrollbar-width:none;
}
.order-actions.inline .grid-2::-webkit-scrollbar{display:none}
.order-actions.inline button{
  flex:0 0 auto;
  width:auto;
  min-width:96px;
  min-height:34px;
}
.order-details{grid-column:1/-1;display:grid;gap:7px;padding-top:7px;border-top:1px solid var(--line)}
.order-detail-banner{
  width:100%;
  height:clamp(92px,18vw,150px);
  border-radius:13px;
  object-fit:cover;
  object-position:center;
  background-color:#111827;
  background-size:cover;
  background-position:center;
  border:1px solid var(--line);
}
.order-items{display:grid;gap:4px;padding:8px;border-radius:11px;background:var(--surface-2);font-size:.82rem}
.order-items span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.order-total{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.order-total .between{padding:7px 8px;border-radius:11px;background:#fff;border:1px solid var(--line);font-size:.82rem}
.compact-total{
  grid-template-columns:repeat(auto-fit,minmax(92px,1fr));
  gap:5px;
  padding:7px;
  border-radius:12px;
  background:linear-gradient(145deg,#fff,#f8fafc);
  border:1px solid var(--line);
}
.compact-total div{
  display:grid;
  gap:1px;
  padding:5px 6px;
  border-radius:9px;
  background:#fff;
  border:1px solid rgba(15,23,42,.05);
  min-width:0;
}
.compact-total span{
  color:var(--muted);
  font-size:.64rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:0;
}
.compact-total b{
  color:#111827;
  font-size:.78rem;
  line-height:1.15;
  white-space:normal;
  overflow:hidden;
  text-overflow:ellipsis;
}
.compact-total .grand-total{
  background:linear-gradient(145deg,rgba(176,0,64,.08),rgba(255,208,0,.12));
  border-color:rgba(176,0,64,.14);
}
.compact-total .grand-total b{font-size:.86rem;color:#7f002f}
.order-actions{display:grid;gap:6px}
.order-actions .grid-2{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(118px,1fr));
  gap:6px;
}
.order-actions button{width:100%}
.order-actions .primary-btn,
.order-actions .ok-btn,
.order-actions .danger-btn,
.order-actions .warning-btn,
.order-actions .ghost-btn{
  min-height:32px;
  padding:0 10px;
  border-radius:10px;
  font-size:.78rem;
  font-weight:950;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.58),0 8px 18px rgba(15,23,42,.08);
}
.order-actions .primary-btn{background:linear-gradient(145deg,#22c7ee,#1294d8)}
.order-actions .ok-btn{background:linear-gradient(145deg,#22c55e,#168a44)}
.order-actions .warning-btn{background:linear-gradient(145deg,#fb923c,#f97316 56%,#c2410c)}
.order-actions .danger-btn{background:linear-gradient(145deg,#fb7185,#dc2626)}
.order-actions .ghost-btn{background:linear-gradient(145deg,#fff,#eef4fa);color:#111827;border:1px solid var(--line)}
.order-note{padding:8px;border-radius:11px;background:#fff7ed;border:1px solid #fed7aa;color:#431407;font-size:.82rem}
.order-chat{
  display:grid;
  gap:7px;
  padding:8px;
  border-radius:13px;
  background:linear-gradient(145deg,#fff,#f8fbff);
  border:1px solid var(--line);
}
.order-chat-view-cliente{background:linear-gradient(145deg,#f0f9ff,#fff);border-color:rgba(14,165,233,.18)}
.order-chat-view-restaurante{background:linear-gradient(145deg,#fff7ed,#fff);border-color:rgba(249,115,22,.18)}
.order-chat-view-entregador{background:linear-gradient(145deg,#f0fdf4,#fff);border-color:rgba(34,197,94,.18)}
.order-chat-head{display:flex;align-items:center;justify-content:space-between;gap:8px}
.order-chat-head b{font-size:.9rem}
.order-chat-head small{color:var(--muted);font-weight:800;font-size:.72rem}
.order-chat-messages{
  display:grid;
  gap:5px;
  max-height:148px;
  overflow:auto;
}
.order-chat-message{
  display:grid;
  gap:4px;
  box-sizing:border-box;
  width:100%;
  padding:8px 9px;
  border-radius:12px;
  background:var(--surface-2);
  color:#111827;
  font-size:.82rem;
  line-height:1.28;
  overflow-wrap:anywhere;
}
.order-chat-message p{margin:0}
.order-chat-message.user{
  margin-left:8px;
  background:#ecfeff;
  border:1px solid rgba(34,199,238,.22);
}
.order-chat-message.restaurant{
  margin-right:8px;
  background:#fff7ed;
  border:1px solid rgba(249,115,22,.24);
}
.order-chat-message.driver{
  margin-left:8px;
  margin-right:8px;
  background:#f0fdf4;
  border:1px solid rgba(34,197,94,.24);
}
.order-chat-message.note{
  background:#f8fafc;
  border:1px solid var(--line);
}
.order-chat-meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}
.order-chat-meta b{
  font-size:.76rem;
  line-height:1.1;
}
.order-chat-meta small{
  color:var(--muted);
  font-size:.68rem;
  font-weight:800;
  white-space:normal;
}
.order-chat-message.user .order-chat-meta b{color:#0284c7}
.order-chat-message.restaurant .order-chat-meta b{color:#c2410c}
.order-chat-message.driver .order-chat-meta b{color:#15803d}
.order-chat-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:6px;
}
.order-chat-form .input{min-height:34px;border-radius:11px}
.order-chat-form .primary-btn{
  min-height:34px;
  padding:0 12px;
  border-radius:11px;
  background:linear-gradient(145deg,#22c7ee,#1294d8);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.58),0 8px 18px rgba(18,148,216,.16);
}
.order-edit-overlay{
  position:fixed;
  inset:0;
  z-index:120;
  display:grid;
  align-items:end;
  padding:14px;
  background:rgba(15,23,42,.28);
  opacity:0;
  transition:opacity .18s ease;
}
.order-edit-overlay.open{opacity:1}
.order-edit-panel{
  width:min(760px,100%);
  margin:0 auto;
  display:grid;
  gap:10px;
  padding:14px;
  border-radius:18px 18px 14px 14px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:0 24px 70px rgba(15,23,42,.24);
}
.order-edit-head,.order-edit-actions{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.order-edit-head small{
  color:var(--muted);
  font-size:.72rem;
  font-weight:950;
  text-transform:uppercase;
}
.order-edit-head h3{margin:2px 0 0;font-size:1.02rem}
.order-edit-items{
  display:grid;
  gap:8px;
  padding:10px;
  border:1px solid var(--line);
  border-radius:14px;
  background:linear-gradient(145deg,#fff,#f8fbff);
}
.order-edit-items-head{
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:flex-start;
}
.order-edit-items-head b{font-size:.9rem;color:#111827}
.order-edit-items-head small{
  color:var(--muted);
  font-weight:850;
  font-size:.72rem;
  text-align:right;
}
.order-edit-item{
  display:grid;
  grid-template-columns:minmax(0,1fr) 82px;
  align-items:center;
  gap:8px;
  padding:8px;
  border-radius:12px;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(15,23,42,.07);
}
.order-edit-item span{display:grid;gap:2px;min-width:0}
.order-edit-item b{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:normal;
  font-size:.84rem;
}
.order-edit-item small{color:var(--muted);font-weight:800;font-size:.72rem}
.order-edit-item .input{text-align:center;font-weight:950}
.order-edit-total{margin-top:2px}
.order-edit-warning{
  padding:8px 10px;
  border-radius:12px;
  background:#fff7ed;
  color:#7c2d12;
  border:1px solid #fed7aa;
  font-size:.78rem;
  font-weight:800;
}
.order-edit-actions .warning-btn{
  min-height:36px;
  padding:0 12px;
  border-radius:11px;
  color:#fff;
  font-weight:950;
  background:linear-gradient(145deg,#fb923c,#f97316 56%,#c2410c);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.58),0 8px 18px rgba(15,23,42,.08);
}
@keyframes orderPulseWarm{
  0%,100%{box-shadow:0 0 0 rgba(255,208,0,0);filter:saturate(1)}
  50%{box-shadow:0 0 18px rgba(255,208,0,.32);filter:saturate(1.12)}
}
@keyframes orderPulseCool{
  0%,100%{box-shadow:0 0 0 rgba(16,0,176,0);filter:saturate(1)}
  50%{box-shadow:0 0 18px rgba(16,0,176,.18);filter:saturate(1.1)}
}


/* css/perfil.css */
.profile-hero-card{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto minmax(190px,.45fr);
  align-items:center;
  gap:14px;
  margin:6px 0 12px;
  padding:16px;
  border-radius:22px;
  color:#fff;
  background:
    radial-gradient(circle at 8% 12%,rgba(255,255,255,.2),transparent 28%),
    radial-gradient(circle at 90% 18%,rgba(255,208,0,.18),transparent 30%),
    linear-gradient(135deg,rgba(255,91,24,.95),rgba(40,199,238,.88)),
    #111827;
  box-shadow:0 16px 34px rgba(17,24,39,.18);
}
.profile-avatar{
  width:62px;
  height:62px;
  border-radius:20px;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.18);
  border:1px solid rgba(255,255,255,.26);
  font-weight:950;
  font-size:1.35rem;
  overflow:hidden;
}
.profile-avatar img{width:100%;height:100%;object-fit:cover}
.profile-photo-field small{display:block;margin-top:3px;font-size:.78rem;line-height:1.35}
.profile-photo-editor{display:grid;grid-template-columns:58px minmax(0,1fr);gap:10px;align-items:center}
.profile-photo-preview{width:58px;height:58px;border-radius:16px;display:grid;place-items:center;overflow:hidden;background:#111827;color:#fff;font-weight:800}
.profile-photo-preview img{width:100%;height:100%;object-fit:cover;display:block}
.icon-action-btn{width:42px;min-width:42px;padding:0;display:inline-grid;place-items:center}
.profile-identity{min-width:0}
.profile-identity small,.profile-referral span{
  display:block;
  color:rgba(255,255,255,.78);
  font-weight:900;
  text-transform:uppercase;
  font-size:.72rem;
}
.profile-identity h1{
  margin:3px 0 5px;
  font-size:clamp(1.35rem,3vw,2.05rem);
  line-height:1;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:normal;
}
.profile-contact-row{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  color:rgba(255,255,255,.9);
  font-weight:800;
  font-size:.86rem;
}
.profile-contact-row span{
  min-width:0;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:normal;
}
.profile-camera-cta{
  width:44px;
  height:44px;
  border-radius:16px;
  display:grid;
  place-items:center;
  color:#fff;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.24);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 12px 24px rgba(17,24,39,.16);
}
.profile-hero-actions{display:flex;gap:8px;align-items:center}
.profile-qr-icon{
  width:21px;height:21px;display:block;border:3px solid #fff;border-radius:3px;
  background:linear-gradient(90deg,#fff 3px,transparent 3px 7px,#fff 7px 10px,transparent 10px 14px,#fff 14px),linear-gradient(#fff 3px,transparent 3px 7px,#fff 7px 10px,transparent 10px 14px,#fff 14px);
  box-shadow:inset 0 0 0 3px rgba(17,24,39,.28)
}
.profile-camera-cta:hover{background:rgba(255,255,255,.24);transform:translateY(-1px)}
.profile-camera-icon,.profile-route-icon{
  width:20px;
  height:20px;
  position:relative;
  flex:0 0 auto;
  border:2px solid rgba(255,255,255,.92);
}
.profile-camera-icon{
  border-radius:7px;
}
.profile-camera-icon::before{
  content:"";
  position:absolute;
  left:4px;
  right:4px;
  top:-6px;
  height:6px;
  border-radius:5px 5px 0 0;
  background:rgba(255,255,255,.92);
}
.profile-camera-icon::after{
  content:"";
  position:absolute;
  inset:4px;
  border-radius:50%;
  border:2px solid rgba(255,255,255,.92);
}
.profile-route-icon{
  border-radius:50%;
}
.profile-route-icon::before{
  content:"";
  position:absolute;
  left:50%;
  top:3px;
  width:2px;
  height:11px;
  background:rgba(255,255,255,.92);
  transform:translateX(-50%) rotate(35deg);
}
.profile-route-icon::after{
  content:"";
  position:absolute;
  right:-3px;
  bottom:-3px;
  width:8px;
  height:8px;
  border-radius:50%;
  background:#fff;
}
.profile-referral{
  min-width:0;
  padding:10px 12px;
  border-radius:18px;
  background:rgba(17,24,39,.18);
  border:1px solid rgba(255,255,255,.22);
  text-align:right;
  display:grid;
  gap:6px;
}
.profile-referral b{
  display:block;
  margin-top:3px;
  font-size:1rem;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:normal;
}
.profile-referral .input{
  min-height:32px;
  padding:0 8px;
  font-size:.72rem;
  text-align:left;
  background:rgba(255,255,255,.88);
  min-width:0;
}
.profile-referral .ghost-btn{
  min-height:30px;
  padding:0 10px;
  font-size:.74rem;
}
.profile-stats-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:9px;
  margin:10px 0;
}
.profile-stat-card{
  min-width:0;
  padding:12px;
  border-radius:16px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:0 8px 22px rgba(17,24,39,.055);
}
.profile-stat-card small,.profile-summary-list span{
  display:block;
  color:var(--muted);
  font-weight:850;
  font-size:.74rem;
  text-transform:uppercase;
}
.profile-stat-card b{
  display:block;
  margin:4px 0 2px;
  font-size:clamp(1rem,2.2vw,1.28rem);
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:normal;
}
.profile-stat-card span{
  display:block;
  color:#64748b;
  font-size:.78rem;
  font-weight:800;
}
.profile-layout{
  display:grid;
  grid-template-columns:minmax(0,.95fr) minmax(0,1.35fr);
  gap:10px;
  align-items:start;
}
.profile-summary-card,.profile-form-card{
  display:grid;
  gap:12px;
}
.profile-summary-card h2,.profile-form-card h3{margin:2px 0 0}
.profile-summary-card p,.profile-form-card p{margin:4px 0 0}
.profile-summary-list{
  display:grid;
  gap:7px;
}
.profile-summary-list div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:9px 10px;
  border-radius:12px;
  background:var(--surface-2);
}
.profile-summary-list b{text-align:right}
.profile-form-card .grid-2{align-items:end}
.profile-form-card #logout-profile{
  color:#ef4444;
}
.profile-doc-links,.institutional-links,.institutional-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.profile-doc-links a{
  color:#0f766e;
  font-weight:900;
  font-size:.86rem;
}
.institutional-hero{
  min-height:260px;
  display:grid;
  align-content:end;
  gap:12px;
  margin:8px 0 14px;
  padding:clamp(22px,5vw,42px);
  border-radius:24px;
  color:#fff;
  background:
    linear-gradient(180deg,rgba(17,24,39,.12),rgba(17,24,39,.72)),
    url("https://images.unsplash.com/photo-1555396273-367ea4eb4db5?auto=format&fit=crop&w=1600&q=80") center/cover;
  box-shadow:0 18px 42px rgba(17,24,39,.18);
  overflow:hidden;
}
.institutional-hero small{
  font-weight:950;
  text-transform:uppercase;
  color:rgba(255,255,255,.82);
}
.institutional-hero h1{
  max-width:760px;
  margin:0;
  font-size:clamp(2rem,7vw,4.4rem);
  line-height:.95;
}
.institutional-hero p{
  max-width:680px;
  margin:0;
  color:rgba(255,255,255,.9);
  font-weight:750;
}
.institutional-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
}
.institutional-grid h2{margin:0 0 8px}
.onboarding-hero{
  display:grid;
  gap:12px;
  padding:clamp(18px,3vw,28px);
  color:#fff;
  background:
    radial-gradient(circle at 12% 18%,rgba(248,196,0,.28),transparent 30%),
    radial-gradient(circle at 86% 16%,rgba(40,199,238,.24),transparent 28%),
    linear-gradient(135deg,#331019,#6e1731 52%,#263a78);
  border-color:rgba(255,255,255,.18);
  box-shadow:0 20px 46px rgba(17,24,39,.18);
}
.onboarding-hero small{
  color:rgba(255,255,255,.74);
  font-size:.76rem;
  font-weight:950;
  text-transform:uppercase;
}
.onboarding-hero h1{
  margin:0;
  font-size:clamp(1.75rem,5vw,3.4rem);
  line-height:1;
  max-width:780px;
}
.onboarding-hero p{
  max-width:780px;
  margin:0;
  color:rgba(255,255,255,.9);
  font-size:clamp(.98rem,2vw,1.12rem);
  line-height:1.5;
}
.onboarding-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:4px;
}
.onboarding-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin:12px 0;
}
.onboarding-choice-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin:12px 0;
}
.onboarding-choice-card{
  min-height:230px;
  display:grid;
  align-content:end;
  gap:10px;
  padding:18px;
  border-radius:22px;
  color:#fff;
  background:
    radial-gradient(circle at 15% 15%,rgba(255,255,255,.22),transparent 28%),
    linear-gradient(145deg,#3b0c1c,#7f1538 58%,#152b72);
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 18px 42px rgba(17,24,39,.18);
}
.onboarding-choice-card:nth-child(2){
  background:
    radial-gradient(circle at 18% 18%,rgba(255,255,255,.2),transparent 28%),
    linear-gradient(145deg,#172554,#075985 58%,#0f766e);
}
.onboarding-choice-card > span{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
}
.onboarding-choice-card small{
  color:rgba(255,255,255,.78);
  font-weight:950;
  text-transform:uppercase;
  font-size:.72rem;
}
.onboarding-choice-card h2{
  margin:0;
  font-size:clamp(1.25rem,3vw,1.7rem);
  line-height:1.08;
}
.onboarding-choice-card p{
  margin:0;
  color:rgba(255,255,255,.86);
  line-height:1.45;
}
.onboarding-card{
  min-height:150px;
  display:grid;
  gap:8px;
  align-content:start;
  padding:15px;
  border-radius:18px;
  background:#fff;
  border:1px solid var(--line);
  box-shadow:0 10px 24px rgba(17,24,39,.06);
}
.onboarding-card span{
  width:34px;
  height:5px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--primary),var(--yellow),var(--cyan));
}
.onboarding-card h2{
  margin:0;
  font-size:1.05rem;
}
.onboarding-card p{
  margin:0;
  color:var(--muted);
  line-height:1.45;
}
.onboarding-steps h2{margin:4px 0 8px}
.onboarding-steps ol{
  display:grid;
  gap:8px;
  margin:0;
  padding-left:22px;
}
.onboarding-steps li{
  padding-left:5px;
  line-height:1.45;
}
.onboarding-closing{
  margin:12px 0 0;
  padding:12px;
  border-radius:14px;
  background:var(--surface-2);
  color:#334155;
  font-weight:850;
}
.onboarding-form-card{display:grid;gap:14px;margin-top:12px}
.onboarding-coordinate-note{margin:-5px 0 0;font-size:.83rem}
.onboarding-location-row{gap:12px;padding:12px;border:1px solid var(--line);border-radius:16px;background:var(--surface-2)}
.onboarding-location-row p{margin:4px 0 0}
.onboarding-existing{margin-top:12px}
.onboarding-existing h2{margin:2px 0 0}
.onboarding-existing-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:16px;background:#fff;color:var(--ink)}
.onboarding-existing-row span:first-child{display:grid;gap:2px;min-width:0}
.onboarding-existing-row b,.onboarding-existing-row small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.onboarding-existing-row small{color:var(--muted)}
.public-profile-media-settings{align-items:start}
.public-profile-media-field{position:relative;min-width:0}
.public-profile-media-preview{position:relative;margin-top:6px;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--surface-2)}
.public-profile-media-preview img{display:block;width:100%;height:138px;object-fit:cover}
.public-profile-media-field:not(.is-cover) .public-profile-media-preview img{height:138px;object-fit:contain}
.public-profile-media-preview .media-remove-button{z-index:2}

@media (max-width:760px){
  .profile-hero-card{
    grid-template-columns:auto minmax(0,1fr) auto;
    padding:14px;
  }
  .profile-referral{
    grid-column:1/-1;
    text-align:left;
    min-width:0;
  }
  .profile-stats-grid{grid-template-columns:1fr 1fr}
  .profile-layout{grid-template-columns:1fr}
  .onboarding-grid,.onboarding-choice-grid{grid-template-columns:1fr}
  .onboarding-form-card .grid-3,.public-profile-media-settings{grid-template-columns:1fr}
}

@media (max-width:430px){
  .profile-avatar{width:54px;height:54px;border-radius:17px}
  .profile-stats-grid{gap:7px}
  .profile-stat-card{padding:10px}
  .profile-camera-cta{width:40px;height:40px;border-radius:14px}
  .profile-hero-actions{gap:6px}
  .onboarding-actions .primary-btn,.onboarding-actions .ghost-btn{width:100%}
}


/* css/responsive.css */
@media (min-width:760px){
  .restaurant-list,.product-list{grid-template-columns:1fr 1fr}
}
@media (max-width:720px){
  .app-shell{width:100%;box-shadow:none}
  .page{padding-left:8px;padding-right:8px;padding-bottom:calc(142px + env(safe-area-inset-bottom,0px))}
  .site-header{padding-left:8px;padding-right:8px}
  .promo-banner,.restaurant-list{border-radius:18px}
  .grid-2,.grid-3,.stats,.product-detail{grid-template-columns:1fr}
  .restaurant-card,.product-card{grid-template-columns:74px minmax(0,1fr);padding:10px}
  .restaurant-card img,.product-card img{width:74px;height:74px;border-radius:16px}
  .store-status-head{display:grid;gap:10px}
  .store-status-actions{justify-content:stretch}
  .store-toggle{width:100%}
  .store-editor{grid-template-columns:1fr}
  .store-editor img{width:100%;height:168px}
  .store-media-preview{min-height:184px}
  .map-address-row,.map-actions{grid-template-columns:1fr}
  .order-card.compact{grid-template-columns:46px minmax(0,1fr)}
  .order-restaurant-photo,.order-restaurant-link{width:46px;height:46px}
  .order-total{grid-template-columns:1fr}
  .orders-cart-top{grid-template-columns:1fr}
  .compact-total{grid-template-columns:repeat(2,minmax(0,1fr))}
  .driver-delivery-meta{grid-template-columns:1fr}
  .driver-finance-grid{grid-template-columns:1fr 1fr}
  .driver-finance-form{grid-template-columns:1fr}
  .owner-sales-agent-box{grid-template-columns:1fr}
  .order-chat-form{grid-template-columns:1fr}
  .map-modal .modal-header,.map-overlay,.map-actions{left:10px;right:10px}
  .map-overlay{top:116px}
  .map-zoom-controls{left:10px;bottom:142px}
  .map-zoom-btn{width:36px;height:36px;border-radius:12px}
  .map-stage{min-height:calc(100dvh - 28px)}
  .order-restaurant-link,.order-restaurant-photo{width:54px;height:54px;border-radius:14px}
  .cart-fab{
    right:12px;
    bottom:76px;
    min-width:56px;
    height:48px;
    border-radius:16px;
  }
  .cart-panel{
    left:8px;
    right:8px;
    bottom:72px;
    width:auto;
    max-width:none;
    max-height:calc(100dvh - 92px);
    --cart-panel-transform:none;
    transform:none;
    border-radius:18px 18px 14px 14px;
  }
  .cart-head,.cart-summary{padding:10px}
  .cart-body{padding:0 10px;max-height:34dvh}
  .cart-item,.checkout-item{grid-template-columns:52px minmax(0,1fr) auto;gap:8px}
  .cart-item img,.checkout-item img{width:52px;height:52px;border-radius:13px}
  .cart-item > b,.checkout-item > b{font-size:.86rem;white-space:nowrap}
  .payment-method-options{grid-template-columns:1fr}
  .institutional-grid{grid-template-columns:1fr}
  .institutional-hero{min-height:230px;border-radius:20px}
  .bottom-nav{justify-content:center}
}
@media (max-width:440px){
  .bottom-nav{width:calc(100vw - 12px);bottom:6px}
  .nav-btn{font-size:.66rem}
  .cart-panel{left:6px;right:6px;bottom:74px;max-height:calc(100dvh - 92px)}
  .cart-item,.checkout-item{grid-template-columns:48px minmax(0,1fr)}
  .cart-item > b,.checkout-item > b{grid-column:2;justify-self:start}
  .cart-item img,.checkout-item img{width:48px;height:48px}
  .cart-head-actions{gap:5px}
  .cart-head-actions .ghost-btn{padding:0 9px;min-height:34px}
  .payment-method-field{padding:8px}
  .orders-dashboard-head{grid-template-columns:1fr}
  .orders-dashboard-head .ghost-btn{width:100%}
  .order-summary{grid-template-columns:repeat(3,minmax(0,1fr))}
  .order-summary .stat{padding:8px 7px}
  .order-summary .stat small{font-size:.68rem}
  .order-summary .stat b{font-size:.92rem}
}






/* profile wallet v132 */
.profile-wallet-entry{
  margin:12px 0 14px;
  padding:0;
  overflow:hidden;
  border-radius:22px;
  background:linear-gradient(145deg,#ffffff,#f8fcff);
  border:1px solid rgba(226,232,240,.92);
  box-shadow:0 18px 40px rgba(15,23,42,.085),0 0 0 1px rgba(255,255,255,.65) inset;
}
.profile-wallet-open{
  width:100%;
  min-height:92px;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  padding:14px;
  border:0;
  border-radius:inherit;
  background:
    linear-gradient(90deg,rgba(255,91,24,.08),rgba(40,199,238,.08)),
    radial-gradient(circle at 14% 18%,rgba(40,199,238,.18),transparent 30%),
    radial-gradient(circle at 92% 12%,rgba(255,91,24,.16),transparent 28%),
    transparent;
  color:var(--text);
  text-align:left;
  cursor:pointer;
}
.profile-wallet-open:hover{transform:translateY(-1px)}
.profile-wallet-lock{
  width:54px;
  height:54px;
  border-radius:19px;
  display:grid;
  place-items:center;
  background:linear-gradient(145deg,#ff6b26,#28c7ee);
  box-shadow:0 16px 30px rgba(40,199,238,.2), inset 0 1px 0 rgba(255,255,255,.42);
  position:relative;
}
.profile-wallet-lock::before{
  content:"";
  width:22px;
  height:15px;
  border-radius:6px;
  background:#fff;
  position:absolute;
  bottom:13px;
  box-shadow:inset 0 -3px 0 rgba(15,23,42,.12);
}
.profile-wallet-lock::after{
  content:"";
  width:22px;
  height:4px;
  border-radius:999px;
  background:rgba(15,23,42,.78);
  position:absolute;
  top:17px;
}
.profile-wallet-copy,.profile-wallet-glimpse{
  min-width:0;
  display:grid;
  gap:3px;
}
.profile-wallet-copy small,.profile-wallet-glimpse small,.profile-wallet-page-head small,.profile-wallet-card small,.profile-wallet-values span{
  display:block;
  color:var(--muted);
  font-size:.72rem;
  font-weight:900;
  text-transform:uppercase;
}
.profile-wallet-copy b{
  font-size:1.08rem;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:normal;
}
.profile-wallet-copy em,.profile-wallet-glimpse em{
  color:#64748b;
  font-size:.8rem;
  font-style:normal;
  font-weight:800;
}
.profile-wallet-glimpse{
  justify-items:end;
  padding:9px 11px;
  border-radius:14px;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(226,232,240,.88);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.88);
}
.profile-wallet-glimpse b{font-size:1rem}
.profile-wallet-gate-backdrop,.profile-wallet-page-backdrop{align-items:center}
.profile-wallet-page{
  width:min(920px,100%);
  max-height:min(760px,88vh);
  margin:0 auto;
  display:grid;
  gap:14px;
  overflow:auto;
  padding:18px;
  border-radius:26px;
  background:
    radial-gradient(circle at 8% 0%,rgba(40,199,238,.13),transparent 32%),
    radial-gradient(circle at 100% 10%,rgba(255,91,24,.12),transparent 30%),
    #fff;
  border:1px solid rgba(226,232,240,.92);
  box-shadow:0 28px 70px rgba(15,23,42,.24);
}
.profile-wallet-page-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.profile-wallet-page-head h3{margin:2px 0 4px;font-size:1.42rem}
.profile-wallet-page-head p{margin:0;color:#64748b;font-weight:750}
.wallet-security-shortcut,
.wallet-security-panel,
.wallet-split-panel{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-width:0;
  padding:12px;
  border:1px solid rgba(226,232,240,.92);
  border-radius:18px;
  background:linear-gradient(135deg,#f8fafc,#fff);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.82);
}
.wallet-security-shortcut{
  background:linear-gradient(135deg,#ecfeff,#fff7ed);
  border-color:rgba(34,199,238,.26);
}
.wallet-security-shortcut b,
.wallet-security-panel h4,
.wallet-split-panel h4{
  display:block;
  margin:0 0 3px;
  color:#0f172a;
  font-size:.94rem;
}
.wallet-security-shortcut span,
.wallet-security-panel p,
.wallet-split-panel p{
  display:block;
  margin:0;
  color:#64748b;
  font-size:.8rem;
  font-weight:800;
  line-height:1.34;
}
.wallet-security-panel small,
.wallet-split-panel small{
  color:#0f766e;
  font-size:.68rem;
  font-weight:950;
  text-transform:uppercase;
}
.wallet-split-panel{
  background:linear-gradient(135deg,#fff7ed,#f8fafc);
  border-color:rgba(249,115,22,.2);
}
.profile-wallet-sections{
  display:grid;
  gap:14px;
}
.profile-wallet-section{
  display:grid;
  gap:8px;
}
.profile-wallet-section > h4{
  margin:0;
  color:#111827;
  font-size:.96rem;
}
.profile-wallet-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
}
.profile-wallet-card{
  display:grid;
  gap:12px;
  min-width:0;
  padding:14px;
  border-radius:18px;
  background:linear-gradient(145deg,#fff,#f7fbfc);
  border:1px solid var(--line);
  box-shadow:0 12px 28px rgba(17,24,39,.075), inset 0 1px 0 rgba(255,255,255,.9);
}
.profile-wallet-card h4{
  margin:3px 0;
  font-size:1.02rem;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:normal;
}
.profile-wallet-card > div > span,.profile-wallet-note{font-size:.82rem}
.profile-wallet-values{
  display:grid;
  grid-template-columns:repeat(4,minmax(96px,1fr));
  gap:7px;
}
.profile-wallet-values div{
  min-width:0;
  padding:8px;
  border-radius:12px;
  background:#f8fafc;
  border:1px solid rgba(226,232,240,.92);
}
.profile-wallet-values b{
  display:block;
  margin-top:3px;
  font-size:.88rem;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:normal;
}
.profile-wallet-provider{
  display:flex;
  justify-content:space-between;
  gap:8px;
  align-items:center;
  padding:9px 10px;
  border-radius:16px;
  background:linear-gradient(135deg,#f8fafc,#eefcff);
  border:1px solid rgba(226,232,240,.95);
  color:#64748b;
  font-size:.82rem;
  font-weight:900;
}
.profile-wallet-provider span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:center;gap:7px}
.profile-wallet-provider b{color:#0f172a;font-size:.78rem;text-align:right}
.wallet-payout-account{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  padding:11px;
  border:1px solid #d7e4e9;
  border-radius:8px;
  background:#f7fbfc;
}
.wallet-payout-account.is-ready{
  border-color:#a7e4cf;
  background:#effcf7;
}
.wallet-payout-account>div{
  display:grid;
  gap:2px;
  min-width:0;
}
.wallet-payout-account small{
  color:#64748b;
  font-size:.7rem;
  font-weight:900;
  text-transform:uppercase;
}
.wallet-payout-account b{
  color:#122033;
  font-size:.88rem;
}
.wallet-payout-account span{
  overflow:hidden;
  color:#64748b;
  font-size:.78rem;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.wallet-payout-account .ghost-btn{
  min-height:38px;
  padding:8px 11px;
}
.payment-provider-badge{
  flex:0 0 auto;
  min-width:32px;
  height:26px;
  padding:0 7px;
  border-radius:10px;
  display:inline-grid;
  place-items:center;
  background:linear-gradient(135deg,#111827,#394150);
  color:#fff;
  font-size:.72rem;
  font-style:normal;
  font-weight:1000;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 8px 18px rgba(15,23,42,.16);
}
.payment-provider-status.is-active{color:#047857}
.payment-provider-status.is-pending{color:#f97316}
.payment-validation-box{
  display:grid;
  gap:4px;
  padding:10px 12px;
  border-radius:16px;
  border:1px solid rgba(251,146,60,.32);
  background:linear-gradient(135deg,#fff7ed,#f8fafc);
  color:#64748b;
  font-size:.84rem;
  font-weight:800;
}
.payment-validation-box b{color:#0f172a}
.payment-validation-box.is-active{
  border-color:rgba(16,185,129,.35);
  background:linear-gradient(135deg,#ecfdf5,#f8fafc);
}
.payment-engineer-card{
  display:grid;
  gap:10px;
  padding:12px;
  border-radius:18px;
  border:1px solid rgba(34,199,238,.24);
  background:linear-gradient(135deg,#ffffff,#f0fbff);
  box-shadow:0 14px 32px rgba(15,23,42,.08);
}
.payment-engineer-head{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
}
.payment-engineer-head > span{
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border-radius:14px;
  color:#fff;
  font-weight:950;
  background:linear-gradient(145deg,#22c7ee,#ff6a21);
  box-shadow:0 12px 24px rgba(34,199,238,.18);
}
.payment-engineer-head div{min-width:0;display:grid;gap:2px}
.payment-engineer-head b,.payment-engineer-head small{
  display:block;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.payment-engineer-head b{color:#111827}
.payment-engineer-head small{color:#64748b;font-weight:800;font-size:.78rem}
.payment-engineer-actions{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  flex-wrap:wrap;
}
.payment-engineer-actions small{
  max-width:360px;
  color:#64748b;
  font-size:.76rem;
  font-weight:780;
}
.payment-engineer-output{
  margin:0;
  max-height:260px;
  overflow:auto;
  white-space:pre-wrap;
  word-break:break-word;
  padding:12px;
  border-radius:16px;
  border:1px solid rgba(15,23,42,.1);
  background:#0f172a;
  color:#e0f2fe;
  font-size:.8rem;
  line-height:1.45;
}
.profile-payment-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.profile-payment-backdrop{
  z-index:140;
  align-items:center;
}
.profile-payment-modal{
  max-width:680px;
  max-height:min(760px,92vh);
  overflow:auto;
}
.profile-wallet-gate{
  width:min(420px,100%);
  box-sizing:border-box;
  margin:0 auto;
  display:grid;
  gap:13px;
  padding:18px;
  border-radius:26px;
  background:#fff;
  border:1px solid rgba(226,232,240,.94);
  box-shadow:0 26px 58px rgba(15,23,42,.24);
}
.profile-wallet-gate-mark{
  width:52px;
  height:52px;
  border-radius:18px;
  background:linear-gradient(145deg,rgba(255,91,24,.96),rgba(40,199,238,.92));
  box-shadow:0 16px 30px rgba(40,199,238,.18), inset 0 1px 0 rgba(255,255,255,.38);
  position:relative;
}
.profile-wallet-gate-mark::before{
  content:"";
  position:absolute;
  left:16px;
  right:16px;
  bottom:15px;
  height:14px;
  border-radius:5px;
  background:#fff;
}
.profile-wallet-gate-mark::after{
  content:"";
  position:absolute;
  left:17px;
  top:11px;
  width:18px;
  height:17px;
  border:3px solid #fff;
  border-bottom:0;
  border-radius:12px 12px 0 0;
}
.profile-wallet-gate h3{margin:2px 0 4px}
.profile-wallet-gate p{margin:0}
.wallet-device-note,.map-required-note{
  padding:9px 11px;
  border-radius:14px;
  background:linear-gradient(135deg,#f8fafc,#eefcff);
  border:1px solid rgba(125,211,252,.34);
  color:#475569;
  font-size:.82rem;
  font-weight:800;
}
.wallet-device-note.is-ready{
  background:linear-gradient(135deg,#ecfdf5,#f8fafc);
  border-color:rgba(16,185,129,.32);
  color:#047857;
}
.map-required-note{margin:7px 0 0}
.profile-wallet-gate-actions{
  display:flex;
  gap:8px;
  justify-content:flex-end;
  flex-wrap:wrap;
}
.profile-withdraw-backdrop{
  position:fixed;
  inset:0;
  z-index:90;
  display:grid;
  align-items:end;
  padding:16px;
  background:rgba(15,23,42,.36);
  backdrop-filter:blur(8px);
  overflow:auto;
}
.profile-withdraw-modal{
  width:min(720px,calc(100vw - 20px));
  max-width:100%;
  max-height:calc(100dvh - 24px);
  overflow:auto;
  box-sizing:border-box;
  margin:0 auto;
  display:grid;
  gap:12px;
  padding:16px;
  border-radius:22px;
  background:#fff;
  border:1px solid rgba(226,232,240,.9);
  box-shadow:0 22px 48px rgba(15,23,42,.2);
}
.profile-sensitive-backdrop{
  align-items:center;
}
.profile-sensitive-modal{
  width:min(760px,calc(100vw - 20px));
}
.profile-sensitive-modal .grid-2,
.profile-sensitive-modal .grid-3{
  min-width:0;
}
.profile-sensitive-modal .field,
.profile-sensitive-modal .input{
  min-width:0;
  max-width:100%;
}
.profile-sensitive-modal .between{
  gap:12px;
  align-items:flex-start;
}
.profile-withdraw-modal h3{margin:2px 0 4px}
.identity-consent-box{
  display:grid;
  gap:12px;
  padding:14px;
  border-radius:20px;
  border:1px solid rgba(125,211,252,.34);
  background:linear-gradient(135deg,#ffffff,#f0fdff);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
}
.identity-consent-box b{color:#0f172a}
.check-row{
  display:flex;
  gap:10px;
  align-items:flex-start;
  color:#334155;
  font-size:.9rem;
  font-weight:800;
}
.check-row input{margin-top:3px}
@media (max-width:720px){
  .profile-wallet-open{grid-template-columns:auto minmax(0,1fr);align-items:start}
  .profile-wallet-glimpse{grid-column:1 / -1;justify-items:start;width:100%}
  .profile-wallet-values{grid-template-columns:1fr 1fr}
  .profile-withdraw-backdrop{padding:10px}
  .profile-withdraw-modal,.profile-sensitive-modal{width:100%;max-height:calc(100dvh - 20px);border-radius:18px;padding:12px}
  .profile-sensitive-modal .grid-2,.profile-sensitive-modal .grid-3{grid-template-columns:1fr}
  .profile-sensitive-modal .between{display:grid}
  .restaurant-dependencies-owner{grid-template-columns:1fr}
  .profile-wallet-page{max-height:92vh;border-radius:22px;padding:14px}
  .profile-wallet-page-head{display:grid}
  .wallet-security-shortcut,
  .wallet-security-panel,
  .wallet-split-panel{display:grid}
}

/* payment page v130 */
.payment-shell{
  min-height:calc(100dvh - 150px);
  display:grid;
  place-items:start center;
  padding:clamp(8px,2vw,18px) 0 88px;
}
.payment-card{
  width:min(760px,100%);
  display:grid;
  gap:14px;
  padding:clamp(16px,3vw,24px);
  border-radius:26px;
  background:
    radial-gradient(circle at 10% 0%,rgba(40,199,238,.12),transparent 30%),
    radial-gradient(circle at 100% 14%,rgba(255,91,24,.13),transparent 32%),
    linear-gradient(145deg,#fff,#f8fbfc);
  border:1px solid rgba(226,232,240,.92);
  box-shadow:0 24px 58px rgba(15,23,42,.13), inset 0 1px 0 rgba(255,255,255,.96);
}
.payment-card-empty{align-content:start;max-width:520px;text-align:left}
.payment-card-head{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:13px;
  align-items:center;
}
.payment-orb{
  width:54px;
  height:54px;
  border-radius:19px;
  display:grid;
  place-items:center;
  background:linear-gradient(145deg,#ff6b26,#28c7ee);
  box-shadow:0 18px 34px rgba(40,199,238,.2), inset 0 1px 0 rgba(255,255,255,.42);
  position:relative;
}
.payment-orb::before{
  content:"";
  width:26px;
  height:18px;
  border-radius:7px;
  background:#fff;
  box-shadow:inset 0 -3px 0 rgba(15,23,42,.12);
}
.payment-orb::after{
  content:"";
  position:absolute;
  top:14px;
  width:22px;
  height:4px;
  border-radius:999px;
  background:rgba(15,23,42,.78);
}
.payment-title-block{min-width:0}
.payment-title-block small{
  display:block;
  color:var(--muted);
  font-size:.72rem;
  font-weight:950;
  text-transform:uppercase;
}
.payment-title-block h1{
  margin:3px 0 4px;
  font-size:clamp(1.45rem,4.4vw,2.35rem);
  line-height:1;
}
.payment-title-block p{margin:0;color:#64748b;font-weight:780}
.payment-total-box{
  display:grid;
  gap:3px;
  padding:16px;
  border-radius:20px;
  color:#fff;
  background:linear-gradient(145deg,#111827,#374151 64%,#1f2937);
  box-shadow:0 18px 36px rgba(15,23,42,.18), inset 0 1px 0 rgba(255,255,255,.18);
}
.payment-total-box span,.payment-total-box small{color:rgba(255,255,255,.76);font-weight:850}
.payment-total-box b{font-size:clamp(1.8rem,6vw,3rem);line-height:1}
.payment-summary-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}
.payment-summary-grid div{
  min-width:0;
  padding:10px;
  border-radius:15px;
  background:#fff;
  border:1px solid rgba(226,232,240,.92);
  box-shadow:0 8px 18px rgba(15,23,42,.045);
}
.payment-summary-grid span{
  display:block;
  color:var(--muted);
  font-size:.72rem;
  font-weight:900;
  text-transform:uppercase;
}
.payment-summary-grid b{
  display:block;
  margin-top:3px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:normal;
}
.payment-action-area{display:grid;gap:10px}
.payment-status-pill{
  width:max-content;
  max-width:100%;
  padding:8px 11px;
  border-radius:999px;
  color:#0f766e;
  background:#ecfdf5;
  border:1px solid rgba(16,185,129,.2);
  font-size:.82rem;
  font-weight:900;
}
.payment-brick-frame{
  overflow:hidden;
  border-radius:18px;
  background:#fff;
  border:1px solid rgba(226,232,240,.92);
  box-shadow:0 12px 28px rgba(15,23,42,.07);
}
.payment-result .panel{border-radius:18px;box-shadow:none;background:#fff}
.payment-result textarea{
  width:100%;
  min-height:96px;
  border-radius:14px;
  border:1px solid var(--line);
  padding:10px;
  resize:vertical;
}
@media (max-width:680px){
  .payment-card-head{grid-template-columns:1fr}.payment-orb{width:48px;height:48px}
  .payment-summary-grid{grid-template-columns:1fr}
  .payment-card{border-radius:22px}
}


/* loja operacional v142 */
.store-ops-panel{display:grid;gap:14px;background:linear-gradient(135deg,#ffffff 0%,#f8fbff 58%,#eefdf8 100%)}
.store-ops-head{gap:12px;align-items:flex-start}
.store-ops-counter{min-width:112px;padding:12px 14px;border-radius:18px;background:#101827;color:#fff;box-shadow:0 18px 38px rgba(15,23,42,.16)}
.store-ops-counter small{display:block;color:#b8f7df;font-weight:800;text-transform:uppercase;font-size:.68rem}
.store-ops-counter b{font-size:1.8rem;line-height:1}
.ops-tab-row{display:flex;gap:8px;overflow:auto;padding-bottom:2px}
.ops-tab-row button{border:1px solid rgba(148,163,184,.28);background:#fff;color:#182235;border-radius:999px;padding:9px 13px;font-weight:900;white-space:nowrap;box-shadow:0 10px 22px rgba(15,23,42,.08)}
.ops-tab-row button.active{background:linear-gradient(135deg,var(--primary),#15d2b0);color:#07131f;border-color:transparent}
.ops-tab-body{display:grid;gap:12px}
.ops-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:12px;align-items:start}
.ops-card{border:1px solid rgba(148,163,184,.22);background:rgba(255,255,255,.9);border-radius:20px;padding:14px;box-shadow:0 14px 34px rgba(15,23,42,.08);display:grid;gap:10px}
.ops-card h4{margin:0;color:#111827}
.know-store-grid{grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr)}
.know-store-hero{
  background:
    linear-gradient(145deg,#ffffff 0%,#f4fcff 56%,#fff8f2 100%),
    radial-gradient(circle at 0 0,rgba(34,199,238,.16),transparent 34%);
}
.know-store-hero h4{font-size:1.12rem}
.social-link-pill{
  display:grid;
  gap:3px;
  min-width:0;
  padding:10px 12px;
  border-radius:16px;
  border:1px solid rgba(226,232,240,.95);
  background:linear-gradient(135deg,#fff,#f8fbff);
  color:#172033;
  text-decoration:none;
  box-shadow:0 10px 22px rgba(15,23,42,.05);
}
.social-link-pill b{font-size:.88rem}
.social-link-pill span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#64748b;
  font-size:.82rem;
  font-weight:850;
}
.store-import-suggestions{display:grid;gap:8px}
.store-import-row{
  display:grid;
  grid-template-columns:minmax(86px,.45fr) minmax(0,1fr);
  gap:4px 10px;
  align-items:center;
  padding:10px;
  border-radius:15px;
  border:1px solid rgba(226,232,240,.95);
  background:#fff;
}
.store-import-row b{font-size:.86rem;color:#111827}
.store-import-row span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#334155;
  font-weight:850;
}
.store-import-row small{grid-column:1/-1;color:#64748b;font-weight:800}
.ops-wide{min-width:0}
.ops-mini-list{display:grid;gap:8px}
.ops-mini-item{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:9px 10px;border-radius:14px;background:#f8fafc;border:1px solid rgba(226,232,240,.95);font-weight:800;color:#172033}
.ops-mini-item span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ops-mini-item small{color:#64748b;font-weight:900}
.recipe-table{display:grid;gap:6px}
.recipe-row{display:grid;grid-template-columns:1.4fr .7fr .55fr .55fr;gap:6px;align-items:center}
.recipe-head{font-size:.76rem;text-transform:uppercase;font-weight:950;color:#475569;padding:0 4px}
.compact-input{max-width:150px;padding:9px 10px}
.profile-opportunities-card{display:grid;gap:13px;background:linear-gradient(135deg,#ffffff,#f1fbff)}
.profile-opportunities-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.profile-opportunities-note{margin:0}
@media (max-width:760px){
  .ops-grid,.know-store-grid,.profile-opportunities-grid{grid-template-columns:1fr}
  .recipe-row{grid-template-columns:1fr 1fr}
  .store-ops-head{display:grid}
  .store-ops-counter{width:100%;box-sizing:border-box}
}


/* oportunidades v145 */
.opps-hero{display:grid;gap:14px;background:linear-gradient(135deg,#ffffff,#f2fbff)}
.opps-hero h1{margin:2px 0 4px}
.opps-switch{display:flex;gap:8px;overflow:auto}
.opps-switch a{padding:9px 13px;border-radius:999px;border:1px solid rgba(148,163,184,.3);background:#fff;color:#172033;font-weight:950;text-decoration:none;white-space:nowrap;box-shadow:0 10px 22px rgba(15,23,42,.07)}
.opps-switch a.active{background:linear-gradient(135deg,var(--primary),#15d2b0);color:#06121d;border-color:transparent}
.opps-composer{display:grid;gap:12px}
.opps-list{display:grid;gap:12px}
.opps-card{display:grid;grid-template-columns:92px minmax(0,1fr);gap:12px;padding:13px;border:1px solid rgba(148,163,184,.22);background:#fff;border-radius:20px;box-shadow:0 16px 36px rgba(15,23,42,.08)}
.opps-card img,.opps-card-mark{width:92px;height:92px;border-radius:18px;object-fit:cover;background:#101827;color:#fff;display:grid;place-items:center;font-weight:950;font-size:1.35rem}
.opps-card h3{margin:0;font-size:1rem}
.opps-card p{margin:6px 0 0}
.opps-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px;font-size:.84rem;font-weight:850}
.opps-meta span,.opps-meta a{border-radius:999px;background:#f1f5f9;color:#334155;text-decoration:none;padding:6px 9px}
@media (max-width:620px){
  .opps-card{grid-template-columns:64px minmax(0,1fr);padding:11px}
  .opps-card img,.opps-card-mark{width:64px;height:64px;border-radius:15px;font-size:1rem}
}


.opps-chat{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:10px}
.opps-last-chat{font-size:.86rem;background:#f8fafc;border:1px solid rgba(148,163,184,.25);border-radius:12px;padding:7px 9px}
.opportunity-apply-modal{max-width:560px}
.candidate-box{display:grid;gap:10px;margin-top:12px;border-top:1px solid rgba(148,163,184,.22);padding-top:12px}
.candidate-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start;padding:10px;border-radius:14px;background:#f8fafc;border:1px solid rgba(148,163,184,.22)}
.candidate-row details{margin-top:6px}
.candidate-row summary{font-weight:900;cursor:pointer}
.ops-mini-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.ops-mini-actions .ghost-btn,.ops-mini-actions .danger-btn{min-height:30px;font-size:.78rem;padding:0 8px}
.address-map-row{align-items:end}
.address-map-row .ghost-btn{height:44px}
@media (max-width:640px){
  .opps-chat,.candidate-row{grid-template-columns:1fr}
  .candidate-row .cart-head-actions{justify-content:stretch}
  .candidate-row .cart-head-actions button{width:100%}
}


.ops-list-card{align-content:start}
.ops-list-head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:54px}
.ops-list-head h4{margin:0}
.ops-filter{display:grid;gap:3px;min-width:156px}
.ops-filter span{font-size:.72rem;font-weight:950;color:#64748b;text-transform:uppercase}
.ops-filter .compact-input{max-width:none;min-width:150px;border-radius:16px;background:#fff}
.ops-grid-single{grid-template-columns:1fr}
.ops-mini-list{display:grid;gap:9px}
.ops-mini-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:stretch;min-height:104px;padding:11px;border-radius:16px;background:#fff;border:1px solid rgba(226,232,240,.95);box-shadow:0 10px 24px rgba(15,23,42,.06);font-weight:800;color:#172033}
.ops-mini-more,.stock-request-history,.restaurant-audit-more{display:grid;gap:8px}
.ops-mini-more summary,.stock-request-history summary,.restaurant-audit-more summary{cursor:pointer;color:#334155;font-weight:900;list-style:none}
.ops-mini-more summary::-webkit-details-marker,.stock-request-history summary::-webkit-details-marker,.restaurant-audit-more summary::-webkit-details-marker{display:none}
.ops-mini-more-list,.stock-request-history-more{display:grid;gap:8px;margin-top:8px}
.ops-mini-main{min-width:0;display:grid;gap:5px;align-content:start}
.ops-mini-top{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}
.ops-mini-top b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.96rem}
.ops-mini-main p{margin:0;color:#64748b;font-size:.86rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ops-status{flex:0 0 auto;max-width:108px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:999px;padding:5px 8px;background:linear-gradient(135deg,#e0f7ff,#d9fff5);color:#075569;font-size:.72rem;font-weight:950}
.ops-mini-details{font-size:.82rem;color:#475569}
.ops-mini-details summary{cursor:pointer;font-weight:950;color:#111827;list-style:none}
.ops-mini-details summary::-webkit-details-marker{display:none}
.ops-mini-details span{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-top:4px}
.ops-mini-actions{display:grid;grid-template-columns:1fr;align-content:start;justify-items:end;gap:6px;min-width:86px}
.ops-mini-actions .ghost-btn,.ops-mini-actions .danger-btn{min-height:30px;font-size:.76rem;padding:0 8px;width:82px}
.candidate-box{display:grid;gap:10px;margin-top:12px;border-top:1px solid rgba(148,163,184,.22);padding-top:12px}
.candidate-box>.between{gap:10px}
.candidate-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start;min-height:96px;padding:11px;border-radius:16px;background:#fff;border:1px solid rgba(226,232,240,.95);box-shadow:0 10px 24px rgba(15,23,42,.05)}
.candidate-row details{margin-top:6px}
.candidate-row summary{font-weight:900;cursor:pointer}
@media (max-width:760px){
  .ops-list-head{display:grid;align-items:stretch}
  .ops-filter{min-width:0}
  .ops-filter .compact-input{width:100%}
  .ops-mini-item,.candidate-row{grid-template-columns:1fr}
  .ops-mini-actions{display:flex;justify-content:flex-start;justify-items:stretch}
  .ops-mini-actions .ghost-btn,.ops-mini-actions .danger-btn{width:auto;flex:1}
}


.opps-list-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.opps-history-panel{display:grid;gap:12px}
.opps-history-card .opps-card-mark{background:linear-gradient(135deg,#111827,#22c7ee)}
.opps-load-more{width:100%;margin-top:12px}
@media (max-width:700px){.opps-list-head{display:grid;align-items:stretch}.opps-list-head .ops-filter{min-width:0}.opps-list-head .compact-input{width:100%}}


.profile-sensitive-card{grid-column:1/-1;display:grid;gap:14px;width:100%;box-sizing:border-box}
.profile-sensitive-card .between{align-items:flex-start}.profile-sensitive-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.profile-sensitive-grid div{padding:12px;border:1px solid rgba(226,232,240,.9);border-radius:18px;background:linear-gradient(180deg,#fff,#f8fafc)}
.profile-sensitive-grid span{display:block;color:#64748b;font-size:.78rem;font-weight:800;text-transform:uppercase}
.profile-sensitive-grid b{display:block;margin-top:4px;word-break:break-word}
.profile-sensitive-note{font-size:.86rem}
.profile-sensitive-modal textarea{resize:vertical}
@media (max-width:900px){.profile-sensitive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.profile-sensitive-grid{grid-template-columns:1fr}}

.media-upload-control{display:grid;gap:8px;min-width:0}
.media-inline-preview{position:relative;display:flex;align-items:center;gap:10px;margin-top:8px;padding:8px 46px 8px 8px;border:1px solid rgba(226,232,240,.95);border-radius:16px;background:#f8fafc;color:#64748b;font-weight:850}
.media-inline-preview img{width:54px;height:54px;border-radius:14px;object-fit:cover;background:#e2e8f0;box-shadow:0 10px 22px rgba(15,23,42,.08)}
.media-inline-preview small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.media-remove-button{position:absolute;top:7px;right:7px;width:30px;height:30px;display:grid;place-items:center;border:1px solid rgba(148,163,184,.42);border-radius:50%;background:rgba(255,255,255,.94);color:#b42318;font-size:1.15rem;font-weight:950;line-height:1;box-shadow:0 7px 18px rgba(15,23,42,.13);cursor:pointer}
.media-remove-button:hover{background:#fff1f2;border-color:#fda4af}

.checkout-page{display:grid;gap:14px;padding:12px 0 84px}
.checkout-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:14px;background:linear-gradient(135deg,#ffffff,#f3fcff)}
.checkout-hero small,.checkout-card h3{color:#111827}
.checkout-hero h1{margin:2px 0 4px;font-size:1.45rem}
.checkout-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:14px;align-items:start}
.checkout-card{display:grid;gap:12px}
.checkout-items{display:grid;gap:9px}
.checkout-item{display:grid;grid-template-columns:58px minmax(0,1fr);gap:10px;align-items:center;padding:9px;border:1px solid rgba(226,232,240,.95);border-radius:16px;background:#fff}
.checkout-item img{width:58px;height:58px;border-radius:14px;object-fit:cover;background:#e2e8f0}
.checkout-item b,.checkout-item span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.checkout-item span{color:#64748b;font-weight:850;font-size:.88rem}
.checkout-summary{display:grid;gap:7px;padding:10px;border-radius:18px;background:#f8fafc;border:1px solid rgba(226,232,240,.95)}
.checkout-summary div{display:flex;justify-content:space-between;gap:10px;font-weight:850;color:#475569}
.checkout-summary .total{padding-top:7px;border-top:1px solid rgba(203,213,225,.9);font-size:1.05rem;color:#111827}
.prize-checkout-box{display:grid;gap:4px;padding:12px;border-radius:18px;border:1px solid rgba(148,163,184,.24);background:linear-gradient(135deg,#fff,#f8fafc);box-shadow:0 12px 28px rgba(15,23,42,.06)}
.prize-checkout-box.active{border-color:rgba(249,115,22,.24);background:linear-gradient(135deg,#fff7ed,#f0fdfa)}
.prize-checkout-box small{font-weight:950;color:#64748b;text-transform:uppercase;font-size:.72rem}
.prize-checkout-box b{color:#111827}
.prize-checkout-box span{color:#64748b;font-size:.86rem;font-weight:800}
@media (max-width:760px){.checkout-grid{grid-template-columns:1fr}.checkout-page{padding-inline:0}.checkout-hero h1{font-size:1.22rem}}

.owner-prize-card{background:linear-gradient(135deg,#ffffff,#fff8f2 54%,#f2fbff)}
.owner-prize-compose{align-items:end}
.owner-prize-flags{display:flex;gap:10px;flex-wrap:wrap;align-items:center;font-weight:900;color:#172033}
.owner-prize-flags label{display:flex;gap:8px;align-items:center;padding:9px 11px;border:1px solid rgba(226,232,240,.95);border-radius:999px;background:#fff}
.owner-legal-note{display:grid;gap:3px;padding:11px 12px;border-radius:16px;border:1px solid rgba(249,115,22,.25);background:#fff7ed;color:#7c2d12}
.owner-legal-note b{font-size:.9rem}
.owner-legal-note span{font-size:.86rem;font-weight:800}
.owner-prize-list{display:grid;gap:8px}
.owner-prize-list article{display:grid;gap:2px;padding:10px;border-radius:15px;background:#fff;border:1px solid rgba(226,232,240,.95)}
.owner-prize-list span{color:#64748b;font-weight:850;font-size:.86rem}

.stock-invoice-preview{margin-top:12px;background:linear-gradient(135deg,#ffffff,#f2fbff);border:1px solid rgba(34,199,238,.18)}
.stock-invoice-preview .ops-mini-item{min-height:78px;border-radius:15px}
.stock-invoice-preview .ops-mini-item>div{display:grid;gap:4px;min-width:0}
.stock-invoice-preview .ops-mini-item strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.stock-invoice-preview .ghost-btn{min-height:34px;padding:0 14px}
.collab-permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0 12px}
.itinerant-team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px}
.permission-chip{display:flex;align-items:center;gap:8px;min-height:42px;padding:8px 10px;border:1px solid rgba(226,232,240,.95);border-radius:16px;background:linear-gradient(180deg,#fff,#f8fafc);font-size:.86rem;font-weight:900;color:#172033}
.permission-chip input{width:16px;height:16px;accent-color:#22c7ee}
.profile-links-card{display:grid;gap:14px;margin-top:14px}
.profile-links-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.profile-link-card{display:grid;gap:10px;padding:13px;border-radius:18px;border:1px solid rgba(226,232,240,.95);background:linear-gradient(135deg,#fff,#f8fbff);box-shadow:0 12px 30px rgba(15,23,42,.06)}
.profile-link-card small{display:block;color:#64748b;font-size:.76rem;font-weight:900;text-transform:uppercase}
.profile-link-card b{display:block;color:#111827;font-size:1rem}
.profile-link-card span,.profile-link-card p{margin:0;color:#64748b;font-size:.88rem;font-weight:800}
.profile-link-actions{display:flex;gap:8px;flex-wrap:wrap}
.profile-link-actions .primary-btn,.profile-link-actions .ghost-btn{min-height:34px;padding:0 12px;font-size:.82rem}
@media (max-width:760px){
  .collab-permission-grid,.itinerant-team-grid,.profile-links-grid{grid-template-columns:1fr}
}

/* agente de design */
.design-agent-loading,.design-agent-empty{display:grid;gap:12px}
.design-agent-hero{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
  margin:8px 0 14px;
  padding:18px;
  border-radius:24px;
  color:#fff;
  background:linear-gradient(135deg,rgba(17,24,39,.94),rgba(54,58,64,.9));
  box-shadow:0 18px 46px rgba(15,23,42,.18);
}
.design-agent-hero small{display:block;font-weight:950;color:#a7f3d0;text-transform:uppercase;font-size:.72rem}
.design-agent-hero h1{margin:4px 0 6px;font-size:clamp(1.35rem,4vw,2.45rem);line-height:1.02}
.design-agent-hero p{max-width:660px;margin:0;color:rgba(255,255,255,.78);font-weight:750}
.design-agent-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(290px,.86fr);gap:12px;align-items:start}
.design-agent-brief{display:grid;gap:12px;margin:0}
.design-agent-chips{display:flex;flex-wrap:wrap;gap:8px}
.design-agent-chips .ghost-btn{min-height:32px;font-size:.82rem;padding:0 10px}
.design-agent-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.design-agent-option-box{
  display:grid;
  gap:9px;
  padding:11px;
  border:1px solid rgba(226,232,240,.94);
  border-radius:18px;
  background:linear-gradient(135deg,#fff,#f8fbff);
}
.design-agent-option-box b{font-size:.9rem;color:#111827}
.design-agent-option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
.design-agent-option-grid label{
  display:flex;
  align-items:center;
  gap:7px;
  min-width:0;
  min-height:34px;
  padding:7px 9px;
  border-radius:14px;
  background:#fff;
  border:1px solid rgba(226,232,240,.82);
  font-size:.8rem;
  font-weight:850;
  color:#334155;
}
.design-agent-option-grid input{width:15px;height:15px;accent-color:#22c7ee;flex:0 0 auto}
.design-agent-option-grid span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.design-agent-preview{overflow:hidden;border:1px solid rgba(226,232,240,.96);border-radius:24px;background:#fff;box-shadow:0 20px 48px rgba(15,23,42,.12)}
.design-preview-banner{position:relative;min-height:230px;display:grid;align-items:end;overflow:hidden;background:linear-gradient(135deg,var(--agent-primary),var(--agent-secondary))}
.design-preview-banner img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.48;filter:saturate(1.04) contrast(1.02)}
.design-preview-banner::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(15,23,42,.72))}
.design-preview-banner div{position:relative;z-index:1;padding:18px;color:#fff}
.design-preview-banner small{font-weight:950;text-transform:uppercase;color:#e0faff;font-size:.72rem}
.design-preview-banner h2{margin:4px 0;font-size:1.55rem;line-height:1.05}
.design-preview-banner p{margin:0;color:rgba(255,255,255,.86);font-weight:800}
.design-preview-body{display:grid;gap:10px;padding:16px;background:linear-gradient(135deg,#fff,#f8fafc)}
.design-preview-pill{width:max-content;max-width:100%;min-height:28px;display:inline-flex;align-items:center;padding:0 10px;border-radius:999px;background:#e0faff;color:#0f172a;font-weight:950}
.design-preview-body h3{margin:0;color:var(--agent-primary)}
.design-preview-body p{margin:0;color:#5b6778;line-height:1.45}
.design-preview-meta,.design-preview-sections,.design-preview-steps{display:flex;flex-wrap:wrap;gap:6px;min-width:0}
.design-preview-meta span,.design-preview-sections i,.design-preview-steps span{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  max-width:100%;
  padding:0 9px;
  border-radius:999px;
  background:#f1f5f9;
  color:#334155;
  font-size:.72rem;
  font-style:normal;
  font-weight:900;
}
.design-preview-sections i{background:rgba(34,199,238,.12);color:#075985}
.design-preview-steps span{background:rgba(249,115,22,.1);color:#9a3412}
.design-preview-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.design-agent-roadmap{margin-top:12px;background:linear-gradient(135deg,#fff,#f2fbff)}
.design-agent-network{
  display:flex;
  align-items:center;
  gap:8px;
  margin-top:12px;
  padding:10px 12px;
  border:1px solid rgba(34,197,94,.22);
  border-radius:14px;
  background:rgba(240,253,244,.74);
  color:#0f172a;
}
.design-agent-network small{margin-left:auto;color:#64748b;font-weight:800}
.status-dot{width:9px;height:9px;border-radius:999px;background:#94a3b8;box-shadow:0 0 0 4px rgba(148,163,184,.16)}
.status-dot.ok{background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.16),0 0 18px rgba(34,197,94,.38)}
@media (max-width:760px){
  .design-agent-hero{display:grid;align-items:start;padding:15px}
  .design-agent-layout{grid-template-columns:1fr}
  .design-agent-actions{grid-template-columns:1fr}
  .design-agent-option-grid{grid-template-columns:1fr}
  .design-agent-network{align-items:flex-start;flex-direction:column}
  .design-agent-network small{margin-left:0}
  .design-preview-banner{min-height:190px}
}

/* loja publica personalizavel */
.restaurant-loading{display:grid;place-items:center;min-height:220px;color:#64748b;font-weight:900}
.restaurant-public-page{display:grid;gap:14px;padding-bottom:110px}
.restaurant-public-hero{
  position:relative;
  min-height:280px;
  display:grid;
  align-items:end;
  overflow:hidden;
  border-radius:28px;
  background:linear-gradient(135deg,var(--store-primary,#ff5b18),var(--store-secondary,#28c7ee));
  color:#fff;
  box-shadow:0 22px 54px rgba(15,23,42,.18);
}
.restaurant-public-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.54;filter:saturate(1.04) contrast(1.04)}
.restaurant-public-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,23,42,.04),rgba(15,23,42,.76))}
.restaurant-public-hero>div{position:relative;z-index:1;display:grid;gap:8px;max-width:760px;padding:22px}
.restaurant-public-hero small{font-weight:950;text-transform:uppercase;color:#d9fbff;font-size:.72rem}
.restaurant-public-hero h1{margin:0;font-size:clamp(1.75rem,6vw,3.8rem);line-height:.98}
.restaurant-public-hero p{margin:0;max-width:620px;color:rgba(255,255,255,.88);font-weight:820;font-size:1rem}
.restaurant-public-badges,.restaurant-category-row{display:flex;flex-wrap:wrap;gap:8px}
.restaurant-public-badges span{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 11px;
  border-radius:999px;
  background:rgba(255,255,255,.16);
  border:1px solid rgba(255,255,255,.22);
  color:#fff;
  font-size:.78rem;
  font-weight:950;
  backdrop-filter:blur(8px);
}
.restaurant-verify-chip{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 12px;
  border:1px solid rgba(255,255,255,.42);
  border-radius:999px;
  color:#fff;
  background:rgba(15,23,42,.28);
  box-shadow:0 10px 24px rgba(15,23,42,.18);
  font-weight:950;
  font-size:.78rem;
  cursor:pointer;
}
.restaurant-dependencies{display:grid;gap:12px}
.restaurant-dependencies[hidden]{display:none}
.restaurant-dependencies-video{
  width:100%;
  max-height:360px;
  border-radius:18px;
  background:#0f172a;
  object-fit:contain;
}
.restaurant-dependencies-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.restaurant-dependencies-meta span{
  padding:6px 10px;
  border-radius:999px;
  background:#f8fafc;
  border:1px solid rgba(226,232,240,.9);
  color:#475569;
  font-size:.78rem;
  font-weight:850;
}
.restaurant-dependencies-owner{
  display:grid;
  grid-template-columns:1fr .9fr 1fr auto;
  gap:10px;
  align-items:end;
  padding:12px;
  border-radius:16px;
  border:1px solid rgba(34,199,238,.16);
  background:linear-gradient(135deg,#f8fcff,#ffffff);
}
.restaurant-public-section{display:grid;gap:10px}
.restaurant-public-band{
  display:grid;
  gap:5px;
  padding:14px;
  border:1px solid rgba(226,232,240,.94);
  border-radius:20px;
  background:#fff;
  box-shadow:0 12px 30px rgba(15,23,42,.06);
}
.restaurant-public-band.soft{background:linear-gradient(135deg,#fff,#f6fbff)}
.restaurant-public-band b{font-size:1rem;color:#111827}
.restaurant-public-band p{margin:0;color:#64748b;font-weight:750}
.restaurant-public-document-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}
.restaurant-highlight-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.restaurant-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.restaurant-product-grid.compact{grid-template-columns:repeat(3,minmax(0,1fr))}
.restaurant-product-card{
  display:grid;
  grid-template-columns:86px minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  min-width:0;
  padding:10px;
  border:1px solid rgba(226,232,240,.95);
  border-radius:18px;
  background:#fff;
  box-shadow:0 12px 30px rgba(15,23,42,.06);
}
.restaurant-product-card.featured{grid-template-columns:1fr;align-content:start}
.restaurant-product-card img{width:86px;height:86px;border-radius:16px;object-fit:cover;background:#eef2f7}
.restaurant-product-card.featured img{width:100%;height:auto;aspect-ratio:1.35;border-radius:18px}
.restaurant-product-card div{min-width:0;display:grid;gap:4px}
.restaurant-product-card b,.restaurant-product-card p{min-width:0;overflow:hidden;text-overflow:ellipsis}
.restaurant-product-card b{white-space:nowrap;color:#111827}
.restaurant-product-card p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;color:#64748b;font-size:.84rem;line-height:1.25}
.restaurant-product-card strong{color:#111827}
.restaurant-product-card .primary-btn{min-height:34px;padding:0 13px;font-size:.8rem}
.layout-editorial .restaurant-public-hero{min-height:360px;border-radius:30px}
.layout-editorial .restaurant-product-card{border-radius:22px}
.layout-rapido .restaurant-public-hero{min-height:220px}
.layout-rapido .restaurant-product-card,.density-compacta .restaurant-product-card{grid-template-columns:64px minmax(0,1fr) auto;padding:8px;border-radius:16px}
.layout-rapido .restaurant-product-card img,.density-compacta .restaurant-product-card img{width:64px;height:64px;border-radius:13px}
.layout-catalogo .restaurant-product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.layout-catalogo .restaurant-product-card{grid-template-columns:1fr;align-content:start}
.layout-catalogo .restaurant-product-card img{width:100%;height:auto;aspect-ratio:1.1}
.density-imersiva .restaurant-product-card{grid-template-columns:1fr;align-content:start}
.density-imersiva .restaurant-product-card img{width:100%;height:auto;aspect-ratio:1.25}
@media (max-width:860px){
  .restaurant-highlight-row,.restaurant-product-grid,.restaurant-product-grid.compact,.layout-catalogo .restaurant-product-grid{grid-template-columns:1fr}
}
@media (max-width:560px){
  .restaurant-public-page{gap:10px}
  .restaurant-public-hero{min-height:236px;border-radius:22px}
  .restaurant-public-hero>div{padding:16px}
  .restaurant-product-card,.layout-rapido .restaurant-product-card,.density-compacta .restaurant-product-card{grid-template-columns:58px minmax(0,1fr);gap:8px}
  .restaurant-product-card img,.layout-rapido .restaurant-product-card img,.density-compacta .restaurant-product-card img{width:58px;height:58px;border-radius:13px}
  .restaurant-product-card .primary-btn{grid-column:1 / -1;width:100%}
}

/* colecoes de imagens da loja e dos produtos */
.media-inline-carousel{
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:minmax(104px,132px);
  gap:9px;
  overflow-x:auto;
  padding:8px 2px 4px;
  scroll-snap-type:x mandatory;
  scrollbar-width:thin;
}
.media-inline-carousel figure{
  position:relative;
  display:grid;
  gap:4px;
  margin:0;
  scroll-snap-align:start;
}
.media-inline-carousel figure .media-remove-button{top:5px;right:5px}
.media-inline-carousel .media-empty-note{grid-column:1/-1}
.media-inline-carousel img{
  width:100%;
  aspect-ratio:1;
  border-radius:14px;
  border:1px solid #dfe6ee;
  background:#eef2f7;
  object-fit:cover;
}
.media-inline-carousel figcaption{
  color:#64748b;
  font-size:.7rem;
  font-weight:900;
  text-align:center;
}
.product-detail-carousel{
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:100%;
  width:100%;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  border-radius:20px;
  background:#eef2f7;
  scrollbar-width:thin;
}
.product-detail-carousel figure{
  width:100%;
  margin:0;
  scroll-snap-align:center;
}
.product-detail-carousel .product-detail-image{
  display:block;
  width:100%;
  height:100%;
  min-height:280px;
  max-height:620px;
  object-fit:cover;
}
.restaurant-public-hero>.restaurant-public-hero-carousel{
  position:absolute;
  z-index:0;
  inset:0;
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:100%;
  max-width:none;
  padding:0;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  scrollbar-width:none;
}
.restaurant-public-hero>.restaurant-public-hero-carousel::-webkit-scrollbar{display:none}
.restaurant-public-hero>.restaurant-public-hero-carousel img{
  position:relative;
  inset:auto;
  display:block;
  width:100%;
  height:100%;
  scroll-snap-align:center;
  object-fit:cover;
  opacity:.54;
  filter:saturate(1.04) contrast(1.04);
}
.restaurant-public-hero>.restaurant-public-hero-content{
  position:relative;
  z-index:2;
  display:grid;
  gap:8px;
  max-width:760px;
  padding:22px;
}
@media(max-width:560px){
  .restaurant-public-hero>.restaurant-public-hero-carousel{padding:0}
  .restaurant-public-hero>.restaurant-public-hero-content{padding:16px}
  .product-detail-carousel .product-detail-image{min-height:220px}
}

/* painel do dono */
.owner-hero{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
  margin:8px 0 14px;
  padding:18px;
  border-radius:24px;
  color:#fff;
  background:linear-gradient(135deg,#111827,#374151 55%,#144e60);
  box-shadow:0 18px 46px rgba(15,23,42,.18);
}
.owner-hero small{display:block;font-weight:950;color:#a7f3d0;text-transform:uppercase;font-size:.72rem}
.owner-hero h1{margin:4px 0 6px;font-size:clamp(1.35rem,4vw,2.35rem);line-height:1.04}
.owner-hero p{max-width:680px;margin:0;color:rgba(255,255,255,.78);font-weight:750}
.owner-stats{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-bottom:12px}
.owner-stat{padding:12px;border:1px solid rgba(226,232,240,.94);border-radius:18px;background:#fff;box-shadow:0 12px 26px rgba(15,23,42,.07)}
.owner-stat.is-link{text-decoration:none;color:inherit;transition:transform .16s ease, box-shadow .16s ease,border-color .16s ease}
.owner-stat.is-link:hover,.owner-stat.is-link:focus-visible{transform:translateY(-1px);border-color:rgba(45,212,191,.34);box-shadow:0 16px 30px rgba(45,212,191,.12)}
.owner-stat small{display:block;color:#64748b;font-weight:900;text-transform:uppercase;font-size:.7rem}
.owner-stat b{display:block;margin-top:4px;font-size:1.35rem}
.owner-stat span{display:block;color:#64748b;font-size:.82rem;font-weight:800}
.owner-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.owner-card{display:grid;gap:10px;margin:0}
.owner-card h3,.owner-wide-card h3{margin:0}
.owner-kv{display:grid;grid-template-columns:112px minmax(0,1fr);gap:8px;align-items:start;padding:8px 0;border-bottom:1px solid rgba(226,232,240,.75)}
.owner-kv span{color:#64748b;font-size:.78rem;font-weight:950;text-transform:uppercase}
.owner-kv b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.88rem}
.owner-wide-card{display:grid;gap:12px;margin-top:12px}
.owner-rest-list{display:grid;gap:8px}
.owner-rest-row{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:10px;align-items:start;padding:12px;border:1px solid rgba(226,232,240,.95);border-radius:16px;background:#fff}
.owner-rest-row img{width:58px;height:58px;border-radius:14px;object-fit:cover;background:#e2e8f0}
.owner-rest-row b,.owner-rest-row span,.owner-rest-row small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.owner-rest-row span{color:#64748b;font-size:.82rem;font-weight:800}
.owner-rest-row small{margin-top:4px;color:#475569;font-size:.75rem;font-weight:800;white-space:normal;line-height:1.35}
.owner-rest-main{display:grid;gap:10px;min-width:0}
.owner-rest-links,.owner-rest-actions{display:flex;flex-wrap:wrap;gap:8px}
.owner-rest-actions .ghost-btn,.owner-rest-links .ghost-btn{min-height:38px}
.owner-rest-side{display:grid;justify-items:end;gap:7px}
.owner-media-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.owner-media-card{display:grid;gap:7px;padding:9px;border:1px solid rgba(226,232,240,.95);border-radius:16px;background:#fff;min-width:0}
.owner-media-card img,.owner-file-mark{width:100%;aspect-ratio:1.25;border-radius:13px;object-fit:cover;background:#eef2f7}
.owner-file-mark{display:grid;place-items:center;font-weight:950;color:#64748b}
.owner-media-card b,.owner-media-card span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.owner-media-card span{color:#64748b;font-size:.76rem}
.owner-strategy-card{background:linear-gradient(135deg,#fff,#f7fbff)}
.owner-strategy-card p{margin:4px 0 0}
.owner-evolution-card{background:linear-gradient(135deg,#fff,#f8fffb);border-color:rgba(16,185,129,.22)}
.owner-evolution-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:10px;margin-top:12px}
.owner-evolution-grid article{display:grid;gap:8px;align-content:start;min-height:156px;padding:13px;border:1px solid rgba(226,232,240,.95);border-radius:18px;background:#fff;box-shadow:0 12px 26px rgba(15,23,42,.05)}
.owner-evolution-grid b{font-size:.95rem;color:#111827}
.owner-evolution-grid span{font-size:.82rem;line-height:1.35;color:#64748b;font-weight:850}
.owner-chip-list{display:flex;flex-wrap:wrap;gap:6px}
.owner-chip-list em{font-style:normal;padding:7px 9px;border:1px solid rgba(34,197,94,.16);border-radius:999px;background:#f0fdf4;color:#166534;font-size:.72rem;font-weight:950}
.owner-decade-roadmap{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin:12px 0}
.owner-decade-roadmap article{min-height:116px;padding:11px;border:1px solid rgba(226,232,240,.95);border-radius:16px;background:rgba(255,255,255,.82)}
.owner-decade-roadmap small{display:block;margin-bottom:5px;color:#0f766e;font-weight:1000;text-transform:uppercase;font-size:.68rem}
.owner-decade-roadmap span{display:block;color:#475569;font-weight:850;font-size:.76rem;line-height:1.32}
.owner-agent-card{background:linear-gradient(135deg,#fff,#f6fbff);border-color:rgba(34,199,238,.22)}
.owner-emergency-panel{
  border-color:rgba(249,115,22,.28);
  background:linear-gradient(135deg,#fff,#fff7ed);
}
.owner-emergency-panel h1{margin:0;color:#111827}
.owner-emergency-list{display:grid;gap:8px}
.owner-emergency-report{
  display:grid;
  gap:4px;
  padding:10px 12px;
  border-radius:14px;
  border:1px solid rgba(226,232,240,.9);
  background:#fff;
}
.owner-emergency-report b,.owner-emergency-report span,.owner-emergency-report small{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
}
.owner-emergency-report b{color:#111827}
.owner-emergency-report span{color:#64748b;font-size:.82rem;font-weight:780;white-space:nowrap}
.owner-emergency-report small{color:#94a3b8;font-size:.72rem;font-weight:850}
.owner-emergency-ai{
  display:grid;
  gap:10px;
  padding:12px;
  border-radius:18px;
  border:1px solid rgba(34,199,238,.25);
  background:linear-gradient(135deg,#fff,#f0fbff);
}
.owner-emergency-ai b{color:#0f172a}
.owner-emergency-ai p{margin:3px 0 0}
.owner-emergency-ai textarea{min-height:96px}
.owner-team-card{background:linear-gradient(135deg,#fff,#f8fffb);border-color:rgba(34,197,94,.18)}
.owner-team-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);gap:12px;align-items:start}
.owner-team-form,.owner-org-card{display:grid;gap:10px;min-width:0;padding:12px;border:1px solid rgba(226,232,240,.95);border-radius:20px;background:#fff}
.owner-team-form h4,.owner-org-card h4{margin:0}
.owner-permission-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.org-chart{display:grid;gap:12px;min-width:0}
.org-children{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0}
.org-children.thin{grid-template-columns:1fr;margin-top:8px;padding-left:10px;border-left:2px solid rgba(34,199,238,.22)}
.org-branch{display:grid;gap:0;min-width:0}
.org-node{
  display:grid;
  gap:3px;
  min-width:0;
  padding:10px 11px;
  border:1px solid rgba(226,232,240,.96);
  border-radius:16px;
  background:linear-gradient(135deg,#fff,#f8fafc);
  box-shadow:0 10px 24px rgba(15,23,42,.05);
}
.org-node.owner{border-color:rgba(249,115,22,.25);background:linear-gradient(135deg,#fff7ed,#fff)}
.org-node b,.org-node span,.org-node small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.org-node b{color:#111827;font-size:.92rem}
.org-node span{color:#334155;font-size:.82rem;font-weight:900}
.org-node small{color:#64748b;font-size:.74rem;font-weight:800}
.owner-manual{margin-top:10px;border:1px solid rgba(226,232,240,.95);border-radius:18px;background:#fff;overflow:hidden}
.owner-manual summary{cursor:pointer;padding:11px 13px;font-weight:950;color:#111827}
.owner-manual div{display:grid;gap:7px;padding:0 13px 13px}
.owner-manual p{margin:0;color:#64748b;font-size:.84rem;font-weight:780;line-height:1.38}
.restaurant-org-chart .org-children{grid-template-columns:1fr}
.owner-agent-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:8px}
.owner-agent-summary{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 2px}
.owner-agent-summary span{display:inline-flex;align-items:center;gap:4px;padding:8px 10px;border:1px solid rgba(226,232,240,.9);border-radius:999px;background:rgba(255,255,255,.72);font-size:.82rem;color:#64748b}
.owner-agent-summary b{color:#111827}
.owner-agent-compose{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.owner-agent-escalation{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.owner-agent-dialog{border:1px solid rgba(34,199,238,.22);border-radius:16px;background:linear-gradient(135deg,#fff,#f0fbff);padding:12px;display:grid;gap:4px}
.owner-agent-dialog small{font-weight:950;text-transform:uppercase;color:#0891b2}
.owner-agent-dialog p{margin:0;color:#64748b;font-weight:760;font-size:.86rem;line-height:1.35}
.owner-agent-guardrails{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.owner-agent-guardrails label{
  display:flex;
  align-items:center;
  gap:7px;
  min-height:38px;
  padding:8px 10px;
  border:1px solid rgba(226,232,240,.95);
  border-radius:14px;
  background:#fff;
  color:#334155;
  font-size:.82rem;
  font-weight:900;
}
.owner-agent-guardrails input{width:16px;height:16px;accent-color:#22c7ee}
.owner-agent-list{display:grid;gap:8px}
.owner-agent-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(220px,.32fr);
  gap:10px;
  align-items:center;
  padding:10px;
  border:1px solid rgba(226,232,240,.96);
  border-radius:18px;
  background:#fff;
  box-shadow:0 10px 24px rgba(15,23,42,.05);
}
.owner-agent-main{min-width:0;display:grid;gap:6px}
.owner-agent-titleline{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}
.owner-agent-row small,.owner-agent-row b,.owner-agent-row span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.owner-agent-row small{color:#64748b;font-size:.72rem;font-weight:950;text-transform:uppercase}
.owner-agent-row b{color:#111827;font-size:.94rem}
.owner-agent-row span{color:#64748b;font-size:.8rem;font-weight:800}
.owner-agent-progress{height:8px;border-radius:999px;background:#e8eef5;overflow:hidden;box-shadow:inset 0 1px 3px rgba(15,23,42,.08)}
.owner-agent-progress i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#22c7ee,#ff6a21);box-shadow:0 0 12px rgba(34,199,238,.32)}
.owner-agent-mini-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.owner-agent-mini-grid small{padding:7px 8px;border-radius:12px;background:#f8fafc;border:1px solid rgba(226,232,240,.9);text-transform:none;font-size:.72rem}
.owner-agent-mini-grid strong{display:block;color:#111827;font-size:.8rem}
.owner-agent-details{border:1px solid rgba(226,232,240,.9);border-radius:14px;background:#fff}
.owner-agent-details summary{cursor:pointer;padding:9px 10px;font-weight:950;color:#172033}
.owner-agent-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 10px 10px}
.owner-agent-detail-block{min-width:0;border:1px solid rgba(226,232,240,.86);border-radius:12px;padding:9px;background:linear-gradient(180deg,#fff,#f8fafc)}
.owner-agent-detail-block b{font-size:.82rem}
.owner-agent-detail-block p,.owner-agent-detail-block li,.owner-agent-timeline span{white-space:normal;color:#64748b;font-size:.78rem;font-weight:760;line-height:1.35}
.owner-agent-detail-block ul{margin:6px 0 0;padding-left:16px}
.owner-agent-timeline{display:grid;gap:4px}
.owner-agent-conversation{display:grid;gap:7px}
.owner-agent-conversation span{display:grid;gap:3px;padding:8px 9px;border-radius:12px;background:#f8fafc;border:1px solid rgba(226,232,240,.88)}
.owner-agent-conversation span.dono{background:#fff7ed;border-color:rgba(249,115,22,.22)}
.owner-agent-conversation span.agente{background:#ecfeff;border-color:rgba(34,199,238,.25)}
.owner-agent-conversation strong{font-size:.72rem;text-transform:uppercase;color:#172033}
.owner-agent-reply{display:grid;gap:8px}
.owner-agent-reply textarea{min-height:76px;resize:vertical}
.owner-agent-reply button{justify-self:end;min-height:38px;padding:8px 14px}
.owner-agent-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.owner-agent-actions .ghost-btn,.owner-agent-actions .ok-btn{min-height:32px;padding:0 9px;font-size:.74rem}
.owner-agent-run{
  background:linear-gradient(135deg,#111827,#0891b2 48%,#ff6a21);
  box-shadow:0 14px 34px rgba(8,145,178,.24),0 0 22px rgba(255,106,33,.22),inset 0 1px 0 rgba(255,255,255,.34);
}
.agent-status{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  font-style:normal;
  font-size:.72rem;
  font-weight:950;
  white-space:nowrap;
}
.agent-status.ok{background:#dcfce7;color:#166534}
.agent-status.wait{background:#fef3c7;color:#92400e}
.agent-status.warn{background:#fee2e2;color:#991b1b}
.agent-status.info{background:#e0f2fe;color:#075985}
.owner-strategy-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.owner-strategy-item{display:grid;gap:8px;align-content:start;min-height:188px;padding:13px;border:1px solid rgba(226,232,240,.95);border-radius:18px;background:#fff;box-shadow:0 12px 26px rgba(15,23,42,.06)}
.owner-strategy-item b{font-size:.98rem;line-height:1.15}
.owner-strategy-item p{margin:0;color:#64748b;font-size:.84rem;line-height:1.38}
.owner-strategy-item .ghost-btn{align-self:end;min-height:34px;font-size:.8rem}
.owner-money-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.owner-finance-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.owner-finance-columns > div{display:grid;gap:6px;padding:12px;border:1px solid rgba(226,232,240,.95);border-radius:16px;background:#fff}
.owner-finance-columns b{font-size:.9rem}
.owner-finance-columns span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#64748b;font-size:.82rem;font-weight:800}
.owner-config-card{background:linear-gradient(135deg,#fff,#f8fffd)}
.owner-config-grid{display:grid;grid-template-columns:220px minmax(0,1fr);gap:10px}
.owner-survival-card{background:linear-gradient(135deg,#fff,#f6fbff);border-color:rgba(56,189,248,.28)}
.owner-runtime-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.owner-toggle-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.owner-toggle-row label{display:flex;align-items:center;gap:7px;min-height:38px;padding:8px 10px;border:1px solid rgba(226,232,240,.95);border-radius:14px;background:#fff;font-weight:900;color:#334155}
.owner-toggle-row input{width:16px;height:16px;accent-color:#ff5b18}
.owner-version-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.owner-version-list article{
  display:grid;
  gap:3px;
  min-width:0;
  padding:10px;
  border-radius:16px;
  border:1px solid rgba(226,232,240,.95);
  background:#fff;
}
.owner-version-list b,.owner-version-list span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.owner-version-list span{color:#64748b;font-size:.8rem;font-weight:800}

/* fiscal / notas */
.fiscal-hero{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:12px;
  padding:18px;
  border-radius:24px;
  color:#fff;
  background:linear-gradient(135deg,#102033,#244454 56%,#0f766e);
  box-shadow:0 18px 44px rgba(15,23,42,.18);
  margin-bottom:12px;
}
.fiscal-hero small{display:block;font-size:.72rem;text-transform:uppercase;font-weight:950;color:#a7f3d0}
.fiscal-hero h1{margin:4px 0 6px;font-size:clamp(1.35rem,4vw,2.2rem);line-height:1.05}
.fiscal-hero p{max-width:720px;margin:0;color:rgba(255,255,255,.78);font-weight:750}
.fiscal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.fiscal-card{display:grid;gap:10px;margin:0;align-content:start}
.fiscal-card h3,.fiscal-wide h3{margin:0}
.fiscal-card p,.fiscal-wide p{margin:0}
.fiscal-wide{display:grid;gap:12px;margin-top:12px}
.fiscal-mini-list{display:grid;gap:6px}
.fiscal-mini-list span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  padding:8px 10px;
  border-radius:14px;
  background:#f8fafc;
  color:#64748b;
  font-size:.82rem;
  font-weight:800;
}
.fiscal-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.fiscal-stats article{
  padding:12px;
  border-radius:18px;
  border:1px solid rgba(226,232,240,.95);
  background:#fff;
  box-shadow:0 12px 26px rgba(15,23,42,.06);
}
.fiscal-stats span{display:block;color:#64748b;font-size:.75rem;font-weight:950;text-transform:uppercase}
.fiscal-stats b{display:block;margin-top:4px;font-size:1.12rem}
.fiscal-note-list{display:grid;gap:8px}
.fiscal-note-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  padding:10px;
  border:1px solid rgba(226,232,240,.95);
  border-radius:16px;
  background:#fff;
}
.fiscal-note-card b,.fiscal-note-card span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fiscal-note-card span{color:#64748b;font-size:.82rem;font-weight:800}
.fiscal-note-card strong{font-size:.98rem}
.fiscal-financial-profile{display:grid;gap:12px}
.financial-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.fiscal-statement-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}
.fiscal-statement{display:grid;gap:10px;margin:0;background:linear-gradient(135deg,#fff,#f8fafc)}
.fiscal-statement h3{margin:0}
.statement-rows{display:grid;border:1px solid rgba(15,23,42,.12);border-radius:14px;overflow:hidden;background:#fff}
.statement-rows div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;min-height:34px;padding:7px 10px;border-bottom:1px solid rgba(226,232,240,.9)}
.statement-rows div:last-child{border-bottom:0}
.statement-rows span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#111827;font-weight:780}
.statement-rows b{white-space:nowrap;color:#111827;font-size:.92rem}
.statement-rows .negative b{color:#ef4444}
.statement-rows .strong{background:#f8fafc}
.statement-rows .strong span,.statement-rows .strong b{font-weight:950}
.statement-rows .total{background:#e2e8f0}
.statement-rows .total span,.statement-rows .total b{font-weight:950}
.balance-columns{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.balance-columns > div{display:grid;gap:6px}
.balance-columns > div > b{
  display:block;
  padding:8px 10px;
  border-radius:12px;
  background:#dbeafe;
  color:#111827;
  text-align:center;
}
@media (max-width:860px){
  .owner-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-console-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-console-columns,
  .admin-console-modal-grid,
  .admin-doc-uploader,
  .admin-console-meta{grid-template-columns:1fr}
  .admin-console-columns{gap:12px}
  .admin-entity-main{grid-template-columns:minmax(0,1fr) auto}
  .owner-grid{grid-template-columns:1fr}
  .owner-team-layout{grid-template-columns:1fr}
  .org-children{grid-template-columns:1fr}
  .owner-permission-grid{grid-template-columns:1fr}
  .owner-agent-stats,.owner-agent-compose,.owner-agent-escalation,.owner-agent-guardrails{grid-template-columns:repeat(2,minmax(0,1fr))}
  .owner-evolution-grid{grid-template-columns:1fr}
  .owner-decade-roadmap{grid-template-columns:repeat(2,minmax(0,1fr))}
  .owner-agent-row{grid-template-columns:1fr}
  .owner-agent-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
  .owner-agent-detail-grid{grid-template-columns:1fr}
  .owner-media-grid,.owner-strategy-grid,.owner-money-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .owner-finance-columns{grid-template-columns:1fr}
  .owner-config-grid,.owner-runtime-grid,.owner-toggle-row{grid-template-columns:1fr}
  .owner-version-list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fiscal-grid{grid-template-columns:1fr}
  .fiscal-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .financial-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .fiscal-statement-grid,.balance-columns{grid-template-columns:1fr}
}
@media (max-width:560px){
  .owner-hero{display:grid;align-items:start;padding:15px}
  .admin-console-board{gap:12px}
  .admin-console-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .admin-console-stats .stat{
    min-height:88px;
    padding:12px;
    gap:4px;
  }
  .admin-console-stats .stat small{font-size:.68rem}
  .admin-console-stats .stat b{font-size:1.3rem}
  .admin-entity-panel{gap:10px}
  .admin-pending-row{
    grid-template-columns:minmax(0,1fr) auto;
    gap:10px;
    padding:12px;
    border-radius:18px;
  }
  .admin-entity-row{
    grid-template-columns:54px minmax(0,1fr);
    align-items:flex-start;
    gap:10px;
    padding:12px;
    border-radius:18px;
  }
  .admin-entity-row img{width:54px;height:54px;border-radius:15px}
  .admin-entity-main{
    grid-template-columns:minmax(0,1fr) auto;
    gap:8px;
    align-items:start;
  }
  .admin-entity-main b{font-size:.94rem}
  .admin-entity-main small,
  .admin-entity-main span{
    white-space:normal;
    overflow:visible;
    text-overflow:clip;
    line-height:1.28;
  }
  .admin-inline-link{
    width:36px;
    height:36px;
    border-radius:12px;
  }
  .admin-console-modal{
    width:min(calc(100vw - 10px),100%);
    max-height:calc(100dvh - 8px);
    padding:14px 14px 18px;
    border-radius:24px;
    gap:12px;
  }
  .admin-console-modal-head{
    grid-template-columns:64px minmax(0,1fr);
    align-items:flex-start;
    gap:10px;
    padding-right:34px;
  }
  .admin-console-modal-head img{width:64px;height:64px;border-radius:18px}
  .admin-console-modal-head h3{font-size:1.08rem}
  .admin-console-modal-head p{
    margin-top:3px;
    line-height:1.35;
    white-space:normal;
  }
  .admin-console-modal .panel{
    padding:14px;
    border-radius:18px;
  }
  .admin-console-meta{
    grid-template-columns:1fr;
    gap:7px;
  }
  .admin-console-meta span{
    padding:9px 10px;
    font-size:.8rem;
  }
  .admin-doc-uploader,
  .admin-doc-uploader-wide{
    grid-template-columns:1fr;
    gap:8px;
  }
  .admin-doc-actions{
    display:grid;
    grid-template-columns:1fr;
  }
  .admin-history-entry,
  .admin-order-admin-actions,
  .admin-content-comment{
    grid-template-columns:1fr;
    align-items:stretch;
  }
  .admin-history-entry .ghost-btn,
  .admin-content-comment .ghost-btn{
    justify-self:stretch;
    width:100%;
  }
  .admin-inline-actions{
    display:grid;
    grid-template-columns:1fr;
  }
  .owner-stats,.owner-media-grid,.owner-strategy-grid,.owner-money-grid{grid-template-columns:1fr}
  .owner-agent-stats,.owner-agent-compose,.owner-agent-escalation,.owner-agent-guardrails,.owner-agent-actions{grid-template-columns:1fr}
  .owner-agent-mini-grid{grid-template-columns:1fr}
  .owner-decade-roadmap{grid-template-columns:1fr}
  .owner-version-list{grid-template-columns:1fr}
  .owner-rest-row{grid-template-columns:50px minmax(0,1fr)}
  .owner-rest-side{grid-column:1 / -1;justify-items:start}
  .owner-rest-links,.owner-rest-actions{display:grid;grid-template-columns:1fr}
  .owner-rest-row .badge{width:max-content}
  .fiscal-hero{display:grid;align-items:start;padding:15px}
  .fiscal-stats{grid-template-columns:1fr}
  .financial-form-grid{grid-template-columns:1fr}
  .fiscal-note-card{grid-template-columns:1fr}
}

/* estudio social */
.studio-hero{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
  margin:8px 0 14px;
  padding:18px;
  border-radius:24px;
  color:#fff;
  background:
    linear-gradient(135deg,rgba(17,24,39,.94),rgba(47,54,64,.9) 52%,rgba(18,106,132,.9)),
    radial-gradient(circle at 86% 16%,rgba(255,255,255,.24),transparent 30%);
  box-shadow:0 18px 46px rgba(15,23,42,.18);
}
.studio-hero small{display:block;color:#a7f3d0;font-size:.72rem;font-weight:950;text-transform:uppercase}
.studio-hero h1{margin:4px 0 6px;font-size:clamp(1.45rem,4vw,2.45rem);line-height:1.03}
.studio-hero p{max-width:690px;margin:0;color:rgba(255,255,255,.8);font-weight:760}
.studio-layout{display:grid;grid-template-columns:minmax(310px,430px) minmax(0,1fr);gap:12px;align-items:start}
.studio-controls{display:grid;gap:12px;position:sticky;top:12px;min-width:0;max-width:430px;overflow:hidden}
.studio-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.studio-fields .field:first-child,.studio-controls>.field{grid-column:1 / -1}
.studio-controls .input,.studio-controls textarea,.studio-controls select{min-width:0;max-width:100%}
.studio-sliders{display:grid;gap:9px;padding:10px;border:1px solid rgba(226,232,240,.9);border-radius:18px;background:linear-gradient(135deg,#fff,#f8fafc)}
.studio-slider-title{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 2px 2px}
.studio-slider-title b{font-size:.9rem;color:#111827;max-width:58%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.studio-range{display:grid;grid-template-columns:96px minmax(0,1fr) 46px;gap:9px;align-items:center;font-size:.82rem;font-weight:900;color:#334155}
.studio-range input{width:100%;accent-color:#22c7ee}
.studio-idea-box,.studio-layer-box{
  display:grid;
  gap:10px;
  padding:12px;
  border:1px solid rgba(226,232,240,.94);
  border-radius:20px;
  background:linear-gradient(135deg,#fff,#f7fbff);
}
.studio-idea-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.studio-idea-head b{display:block;color:#111827;font-size:.98rem}
.studio-ideas{display:flex;gap:7px;flex-wrap:wrap;min-width:0}
.studio-idea-btn{min-height:32px;padding:0 10px;font-size:.78rem}
.studio-prompt-preview{
  display:inline-flex;
  width:max-content;
  max-width:100%;
  min-height:28px;
  align-items:center;
  padding:0 10px;
  border-radius:999px;
  background:#ecfeff;
  color:#126a84;
  font-size:.76rem;
  font-weight:950;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.studio-generate-btn{grid-column:1 / -1;width:100%;min-height:40px}
.studio-layer-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;min-width:0}
.studio-layer-actions .ghost-btn{min-height:34px;padding:0 10px;font-size:.78rem}
.studio-stock-box{background:linear-gradient(135deg,#fff,#f8fff9)}
.studio-stock-add{align-self:end;min-height:42px}
.danger-btn{color:#991b1b;border-color:rgba(248,113,113,.38);background:linear-gradient(180deg,#fff,#fff5f5)}
.studio-compliance{
  padding:11px 12px;
  border:1px solid rgba(249,115,22,.28);
  border-radius:18px;
  background:linear-gradient(135deg,#fff7ed,#ffffff);
  color:#7c2d12;
}
.studio-compliance b{display:block;margin-bottom:3px;color:#9a3412}
.studio-compliance p{margin:0;font-size:.84rem;line-height:1.38;font-weight:750}
.studio-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-width:0}
.studio-actions .primary-btn,.studio-actions .ghost-btn,.studio-actions .ok-btn{min-height:38px;padding:0 13px;font-size:.84rem}
.studio-preview-panel{
  display:grid;
  place-items:center;
  min-width:0;
  position:sticky;
  top:12px;
  overflow:hidden;
  padding:12px;
  border:1px solid rgba(226,232,240,.94);
  border-radius:24px;
  background:
    linear-gradient(45deg,#f8fafc 25%,transparent 25%),
    linear-gradient(-45deg,#f8fafc 25%,transparent 25%),
    linear-gradient(45deg,transparent 75%,#f8fafc 75%),
    linear-gradient(-45deg,transparent 75%,#f8fafc 75%);
  background-color:#fff;
  background-size:24px 24px;
  background-position:0 0,0 12px,12px -12px,-12px 0;
  box-shadow:0 20px 48px rgba(15,23,42,.12);
}
#studio-canvas{
  display:block;
  width:100%;
  max-width:min(720px,100%);
  max-height:calc(100vh - 176px);
  object-fit:contain;
  height:auto;
  touch-action:none;
  border-radius:22px;
  background:#fff;
  box-shadow:0 22px 54px rgba(15,23,42,.2);
}
.studio-motion-slot{
  width:100%;
  max-width:min(720px,100%);
  margin-top:12px;
}
.xf-motion-player{
  display:grid;
  gap:8px;
  width:100%;
  padding:9px;
  border:1px solid rgba(226,232,240,.95);
  border-radius:18px;
  background:rgba(255,255,255,.92);
  box-shadow:0 14px 32px rgba(15,23,42,.11);
}
.xf-motion-stage{
  position:relative;
  overflow:hidden;
  aspect-ratio:var(--xf-motion-ratio,1 / 1);
  border-radius:14px;
  background:#0f172a;
}
.xf-motion-poster{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transform:scale(1.04);
  opacity:.76;
}
.xf-motion-empty{background:linear-gradient(135deg,#e2e8f0,#f8fafc)}
.xf-motion-scrim{
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(15,23,42,.08),rgba(15,23,42,.55));
}
.xf-motion-copy{
  position:absolute;
  left:8%;
  right:8%;
  bottom:9%;
  display:grid;
  gap:5px;
  color:#fff;
  transform:translateY(18px) scale(.98);
  opacity:0;
  text-shadow:0 10px 24px rgba(15,23,42,.45);
}
.xf-motion-copy b{font-size:clamp(1.15rem,4vw,2rem);line-height:1.02}
.xf-motion-copy span{font-size:.9rem;font-weight:850;color:rgba(255,255,255,.88)}
.xf-motion-copy small{
  width:max-content;
  max-width:100%;
  padding:5px 9px;
  border-radius:999px;
  background:rgba(34,199,238,.92);
  color:#082f49;
  font-weight:950;
}
.xf-motion-controls{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  color:#64748b;
  font-size:.78rem;
  font-weight:850;
}
.xf-motion-controls .ghost-btn{min-height:32px;padding:0 12px;font-size:.78rem}
.xf-motion-player.is-playing .xf-motion-poster{animation:xfMotionPoster var(--xf-motion-duration,6200ms) ease-out both}
.xf-motion-player.is-playing .xf-motion-copy{animation:xfMotionCopy var(--xf-motion-duration,6200ms) ease-out both}
@keyframes xfMotionPoster{
  0%{transform:scale(1.06);opacity:.72;filter:saturate(.9)}
  22%{opacity:1;filter:saturate(1.08)}
  100%{transform:scale(1);opacity:1;filter:saturate(1)}
}
@keyframes xfMotionCopy{
  0%,10%{transform:translateY(22px) scale(.96);opacity:0}
  26%,86%{transform:translateY(0) scale(1);opacity:1}
  100%{transform:translateY(-8px) scale(1);opacity:.92}
}
@media (max-width:880px){
  .studio-layout{grid-template-columns:1fr}
  .studio-controls{position:relative;top:auto;max-width:none}
  .studio-preview-panel{position:relative;top:auto}
  #studio-canvas{max-height:none}
}
@media (max-width:560px){
  .studio-hero{display:grid;align-items:start;padding:15px}
  .studio-fields,.studio-actions{grid-template-columns:1fr}
  .studio-layer-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
  .studio-range{grid-template-columns:82px minmax(0,1fr) 38px}
  .studio-slider-title{display:grid}
  .studio-slider-title b{max-width:100%}
  .studio-idea-head{display:grid}
  .studio-preview-panel{padding:8px;border-radius:20px}
  #studio-canvas{border-radius:18px}
}

.xf-greeter{
  position:fixed;
  right:18px;
  bottom:calc(92px + env(safe-area-inset-bottom, 0px));
  z-index:1200;
  display:grid;
  justify-items:end;
  gap:10px;
  pointer-events:none;
  opacity:.96;
  touch-action:none;
  transition:opacity .22s ease, filter .22s ease;
}
.xf-greeter *{box-sizing:border-box}
.xf-greeter.is-idle{opacity:.66}
.xf-greeter.is-edge:not(.is-open){opacity:.58}
.xf-greeter:hover,
.xf-greeter.is-open,
.xf-greeter.is-dragging{
  opacity:1;
  filter:saturate(1.05);
}
.xf-greeter-fab{
  pointer-events:auto;
  display:flex;
  align-items:center;
  gap:9px;
  min-height:44px;
  padding:7px 13px 7px 7px;
  border:1px solid rgba(255,255,255,.62);
  border-radius:999px;
  color:#fff;
  background:linear-gradient(135deg,#111827,#fb6414 46%,#22c7ee);
  box-shadow:0 18px 38px rgba(15,23,42,.24), 0 0 0 1px rgba(255,255,255,.18), inset 0 1px 0 rgba(255,255,255,.46);
  font-weight:950;
  cursor:pointer;
  user-select:none;
  touch-action:none;
}
.xf-greeter [data-greeter-drag-handle]{cursor:grab}
.xf-greeter.is-dragging [data-greeter-drag-handle]{cursor:grabbing}
.xf-greeter-fab span{
  display:grid;
  place-items:center;
  width:31px;
  height:31px;
  border-radius:13px;
  color:#111827;
  background:radial-gradient(circle at 35% 30%,#fff,#e0f2fe 74%);
  font-size:1.05rem;
  letter-spacing:0;
  box-shadow:inset 0 -10px 18px rgba(251,100,20,.12);
}
.xf-greeter-fab b{font-size:.82rem;white-space:nowrap}
.xf-greeter-panel{
  pointer-events:auto;
  display:none;
  width:min(348px,calc(100vw - 24px));
  padding:13px;
  border:1px solid rgba(226,232,240,.9);
  border-radius:24px;
  background:rgba(255,255,255,.96);
  box-shadow:0 24px 70px rgba(15,23,42,.25), inset 0 1px 0 rgba(255,255,255,.8);
  backdrop-filter:blur(18px);
  max-height:min(74vh,520px);
  overflow:auto;
}
.xf-greeter.is-open .xf-greeter-panel{display:grid;gap:9px}
.xf-greeter-panel header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  user-select:none;
  touch-action:none;
}
.xf-greeter-panel small{
  display:block;
  color:#0f766e;
  font-weight:950;
  text-transform:uppercase;
  font-size:.68rem;
}
.xf-greeter-panel b{display:block;color:#111827;font-size:1rem}
.xf-greeter-panel p{
  margin:0;
  color:#64748b;
  font-weight:750;
  line-height:1.38;
}
.xf-greeter-hint{
  padding:9px 11px;
  border-radius:16px;
  background:linear-gradient(135deg,rgba(255,247,237,.82),rgba(236,254,255,.72));
  color:#475569;
  font-size:.84rem;
}
.xf-greeter-icon{
  width:34px;
  height:34px;
  border:1px solid #e2e8f0;
  border-radius:50%;
  background:#fff;
  color:#475569;
  font-size:1.2rem;
  box-shadow:0 8px 18px rgba(15,23,42,.08);
}
.xf-greeter-chips{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:7px;
}
.xf-greeter-chips button{
  min-width:0;
  min-height:54px;
  display:grid;
  place-items:center;
  gap:2px;
  padding:6px 4px;
  border:1px solid #e2e8f0;
  border-radius:16px;
  background:linear-gradient(135deg,#fff,#f8fafc);
  color:#334155;
  box-shadow:0 10px 22px rgba(15,23,42,.07), inset 0 1px 0 rgba(255,255,255,.9);
}
.xf-greeter-chips button span{
  display:grid;
  place-items:center;
  width:24px;
  height:24px;
  border-radius:10px;
  color:#fff;
  background:linear-gradient(135deg,#111827,#22c7ee);
  font-size:.9rem;
  font-weight:950;
  line-height:1;
}
.xf-greeter-chips button b{
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#334155;
  font-size:.66rem;
  font-weight:950;
}
.xf-greeter-answer:empty{display:none}
.xf-greeter-answer{
  display:grid;
  gap:8px;
  max-height:min(42vh,360px);
  overflow:auto;
  padding:2px;
  scrollbar-width:thin;
  overscroll-behavior:contain;
}
.xf-greeter-panel header em{display:inline-flex;width:max-content;margin-top:4px;padding:2px 8px;border-radius:999px;background:rgba(40,199,238,.12);color:#0369a1;font-size:.68rem;font-style:normal;font-weight:950}
.xf-greeter-message{
  display:grid;
  gap:3px;
  justify-items:start;
  max-width:88%;
}
.xf-greeter-message.is-user{
  justify-self:end;
  justify-items:end;
}
.xf-greeter-message-body{
  display:block;
  padding:12px 13px;
  border-radius:18px 18px 18px 8px;
  background:linear-gradient(135deg,#eff6ff,#ecfeff);
  color:#0f172a;
  font-weight:800;
  line-height:1.38;
  box-shadow:inset 0 0 0 1px rgba(14,165,233,.16);
}
.xf-greeter-message.is-user .xf-greeter-message-body{
  border-radius:18px 18px 8px 18px;
  background:linear-gradient(135deg,#fff7ed,#ffedd5);
  box-shadow:inset 0 0 0 1px rgba(249,115,22,.18);
}
.xf-greeter-message.is-pending .xf-greeter-message-body{
  color:#64748b;
  font-weight:750;
  animation:xfGreeterThinking 1.15s ease-in-out infinite;
}
.xf-greeter-message time{
  padding:0 5px;
  color:#94a3b8;
  font-size:.62rem;
  font-weight:800;
}
.xf-greeter-message-file{
  display:inline-grid;
  place-items:center;
  width:20px;
  height:20px;
  margin-right:5px;
  vertical-align:middle;
  color:#f97316;
}
.xf-greeter-message-file svg{
  width:16px;
  height:16px;
  fill:none;
  stroke:currentColor;
  stroke-width:2.2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.xf-greeter-rich-message{
  min-width:0;
  overflow-wrap:anywhere;
  white-space:normal;
}
.xf-greeter-rich-message a{
  color:#0369a1;
  text-decoration:underline;
  text-underline-offset:2px;
}
.xf-greeter-code{
  display:grid;
  gap:0;
  margin:9px 0 4px;
  overflow:hidden;
  border:1px solid #cbd5e1;
  border-radius:10px;
  background:#111827;
  color:#f8fafc;
}
.xf-greeter-code > div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  padding:5px 8px;
  background:#1f2937;
  color:#cbd5e1;
  font-size:.66rem;
}
.xf-greeter-code button{
  display:grid;
  place-items:center;
  width:26px;
  height:26px;
  border:0;
  border-radius:50%;
  background:#f97316;
  color:#fff;
  cursor:pointer;
  font-weight:950;
}
.xf-greeter-code pre{
  max-width:100%;
  margin:0;
  padding:10px;
  overflow:auto;
  font-size:.72rem;
  line-height:1.45;
  white-space:pre;
}
.xf-greeter-empty{
  padding:12px;
  border:1px dashed #cbd5e1;
  border-radius:16px;
  color:#64748b;
  font-size:.8rem;
  text-align:center;
}
.xf-greeter-tabs{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:6px;
  padding:3px;
  border-radius:15px;
  background:#f1f5f9;
}
.xf-greeter-tabs button{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-height:34px;
  padding:6px 9px;
  border:0;
  border-radius:12px;
  color:#64748b;
  background:transparent;
  font-size:.74rem;
  font-weight:900;
}
.xf-greeter-tabs button.is-active{
  color:#0f172a;
  background:#fff;
  box-shadow:0 6px 16px rgba(15,23,42,.08);
}
.xf-greeter-tabs svg{
  width:15px;
  height:15px;
  fill:none;
  stroke:currentColor;
  stroke-width:2.2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.xf-greeter-feedback{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:7px;
  margin-top:8px;
}
.xf-greeter-feedback .input{
  min-height:38px;
  border-radius:14px;
  font-size:.82rem;
}
.xf-greeter-feedback .ghost-btn{
  width:40px;
  min-height:38px;
  padding:0;
  border-radius:14px;
}

.social-login-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(44px, 1fr));
  gap:8px;
  margin:4px 0 2px;
}

.social-login-btn{
  display:grid;
  place-items:center;
  min-height:44px;
  border-radius:14px;
  font-weight:900;
  font-size:1rem;
  color:#111827;
  background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(241,245,249,.88));
  box-shadow:0 9px 22px rgba(15,23,42,.08), inset 0 1px 0 rgba(255,255,255,.95);
}

.social-login-btn svg{
  width:22px;
  height:22px;
  display:block;
}

.social-login-btn.is-disabled{
  opacity:.5;
  filter:saturate(.55);
}

.social-profile-preview{
  display:grid;
  grid-template-columns:44px minmax(0,1fr);
  gap:10px;
  align-items:center;
  padding:10px;
  border:1px solid rgba(226,232,240,.92);
  border-radius:16px;
  background:linear-gradient(180deg,#fff,#f8fafc);
}

.social-profile-preview img,
.social-profile-preview span{
  width:44px;
  height:44px;
  border-radius:14px;
  display:grid;
  place-items:center;
  object-fit:cover;
  background:#fff7ed;
  color:#f97316;
  font-weight:950;
}

.social-profile-preview b,
.social-profile-preview small{
  display:block;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.social-profile-preview small{
  color:#64748b;
  font-weight:750;
}
.xf-greeter-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) 46px;
  gap:8px;
}
.xf-greeter-composer{
  display:grid;
  grid-template-columns:38px minmax(0,1fr) 38px;
  align-items:center;
  min-width:0;
  min-height:44px;
  border:1px solid #dbe4ef;
  border-radius:16px;
  background:#fff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
}
.xf-greeter-composer .input{
  width:100%;
  min-width:0;
  min-height:42px;
  padding:8px 4px;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.xf-greeter-composer .input:focus{
  outline:0;
  box-shadow:none;
}
.xf-greeter-compose-btn{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  margin:auto;
  padding:0;
  border:0;
  border-radius:12px;
  color:#475569;
  background:transparent;
}
.xf-greeter-compose-btn:hover,
.xf-greeter-compose-btn[aria-expanded="true"]{
  color:#0369a1;
  background:#ecfeff;
}
.xf-greeter-compose-btn svg{
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:2.2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.xf-greeter-form .primary-btn{
  min-height:42px;
  width:46px;
  padding:0;
  border-radius:15px;
  font-size:1rem;
}
.xf-greeter-attach-menu{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:7px;
  padding:7px;
  border:1px solid #e2e8f0;
  border-radius:16px;
  background:#f8fafc;
  box-shadow:0 12px 28px rgba(15,23,42,.1);
}
.xf-greeter-attach-menu[hidden]{display:none}
.xf-greeter-attach-menu label{
  display:grid;
  place-items:center;
  gap:4px;
  min-height:58px;
  padding:7px;
  border:1px solid transparent;
  border-radius:13px;
  color:#475569;
  background:#fff;
  cursor:pointer;
}
.xf-greeter-attach-menu label:hover{
  color:#0369a1;
  border-color:rgba(34,199,238,.36);
}
.xf-greeter-attach-menu label span{
  display:grid;
  place-items:center;
}
.xf-greeter-attach-menu label b{
  font-size:.68rem;
  font-weight:900;
}
.xf-greeter-attach-menu svg{
  width:19px;
  height:19px;
  fill:none;
  stroke:currentColor;
  stroke-width:2.1;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.xf-greeter-upload-box{
  display:flex;
  gap:8px;
  align-items:center;
}
.xf-greeter-upload{
  flex:0 0 auto;
  display:grid;
  place-items:center;
  gap:1px;
  width:58px;
  min-height:40px;
  padding:7px 8px;
  border:1px dashed rgba(14,165,233,.42);
  border-radius:16px;
  background:linear-gradient(135deg,#f8fafc,#ecfeff);
  color:#0f172a;
  cursor:pointer;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
}
.xf-greeter-upload span{font-size:1.2rem;font-weight:950;line-height:1}
.xf-greeter-upload small{color:#64748b;font-size:.64rem;font-weight:900;line-height:1}
.xf-greeter-upload-box select.input{
  flex:1 1 auto;
  min-width:0;
  min-height:40px;
  border-radius:16px;
  font-size:.76rem;
  font-weight:850;
}
.xf-greeter-upload-preview{
  width:100%;
  display:none;
  align-items:center;
  gap:8px;
  min-height:34px;
  padding:7px 9px;
  border-radius:14px;
  background:#f8fafc;
  color:#475569;
  font-size:.76rem;
  font-weight:850;
}
.xf-greeter-upload-preview:not(:empty){display:flex}
.xf-greeter-upload-preview img{
  width:34px;
  height:34px;
  border-radius:10px;
  object-fit:cover;
  box-shadow:0 8px 16px rgba(15,23,42,.12);
}
.xf-greeter-actions{
  display:flex;
  justify-content:flex-end;
  gap:8px;
}
.xf-greeter-actions .ghost-btn{
  width:40px;
  min-height:38px;
  padding:0;
  border-radius:14px;
  font-size:1rem;
  border-color:rgba(226,232,240,.88);
  background:linear-gradient(145deg,#fff,#f1f5f9);
  box-shadow:0 10px 22px rgba(15,23,42,.08),inset 0 1px 0 rgba(255,255,255,.95);
}
.xf-greeter-symbol-btn span{
  display:grid;
  place-items:center;
  width:100%;
  height:100%;
  color:#172033;
  font-weight:950;
  line-height:1;
}
.xf-greeter-symbol-btn svg,
.xf-greeter-inline-icon svg,
.xf-greeter-send svg{
  width:18px;
  height:18px;
  display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:2.2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.xf-greeter-inline-icon{
  display:grid;
  place-items:center;
  width:24px;
  height:20px;
  color:#0369a1;
}
.xf-greeter-actions .ghost-btn:hover,
.xf-greeter-form .ghost-btn:hover{
  color:#0369a1;
  border-color:rgba(34,199,238,.45);
  transform:translateY(-1px);
}
.xf-greeter-send{
  color:#fff;
  background:linear-gradient(135deg,#ff5b18,#22c7ee);
  box-shadow:0 12px 24px rgba(255,91,24,.2),inset 0 1px 0 rgba(255,255,255,.35);
}
.verify-resend-row{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:8px;
  margin:8px 0;
}
.verify-resend-row .ghost-btn{
  min-height:40px;
  border-radius:14px;
  font-size:.86rem;
}
.xf-greeter-upload input:focus + span,
.xf-greeter-upload:hover span{color:#0369a1}
.xf-greeter-upload:hover{
  border-color:rgba(34,199,238,.62);
  box-shadow:0 12px 26px rgba(14,165,233,.12),inset 0 1px 0 rgba(255,255,255,.9);
}
.xf-greeter.is-nudging .xf-greeter-fab{
  animation:xfGreeterNudge 1.8s ease-in-out 2;
}
.xf-greeter.is-curious:not(.is-open) .xf-greeter-fab{
  box-shadow:0 18px 38px rgba(15,23,42,.24), 0 0 24px rgba(34,199,238,.42), 0 0 34px rgba(251,100,20,.34), inset 0 1px 0 rgba(255,255,255,.46);
}
.xf-greeter.has-header-trigger:not(.is-open){pointer-events:none}
.xf-greeter.has-header-trigger:not(.is-open) .xf-greeter-fab{display:none}
.passkey-device-card{width:min(520px,calc(100vw - 28px));}
.sensitive-code-actions{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
.sensitive-code-actions .ghost-btn{
  min-height:36px;
  padding:0 10px;
  font-size:.78rem;
}
.passkey-device-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.passkey-device-grid .primary-btn,.passkey-device-grid .ghost-btn{min-height:40px;padding:0 10px;font-size:.8rem}
.passkey-device-qrbox{display:grid;gap:6px;padding:11px;border:1px solid rgba(226,232,240,.92);border-radius:16px;background:linear-gradient(135deg,#f8fafc,#fff)}
.passkey-device-qrbox b{color:#111827}
.passkey-device-qrbox code{display:block;max-height:72px;overflow:auto;padding:8px;border-radius:12px;background:#111827;color:#e0f2fe;font-size:.72rem;word-break:break-all;white-space:normal}
@media (max-width:560px){.passkey-device-grid{grid-template-columns:1fr}}
.pricing-agent-card .ops-list-head{align-items:flex-start}

.owner-operation-return{
  display:grid;
  gap:4px;
  margin:10px 0;
  padding:12px;
  border:1px solid rgba(34,199,238,.24);
  border-radius:18px;
  background:linear-gradient(135deg,#f0fbff,#fff);
}
.owner-sales-agent-box{
  display:grid;
  grid-template-columns:minmax(190px,.8fr) 1.2fr;
  gap:10px;
  align-items:end;
  padding:12px;
  border:1px solid rgba(249,115,22,.18);
  border-radius:16px;
  background:linear-gradient(135deg,#fff7ed,#ffffff);
}
.owner-sales-agent-box p{margin:0;font-size:.85rem;line-height:1.35}
.fiscal-auto-check{
  margin-top:8px;
  padding:10px 12px;
  border:1px solid rgba(34,199,238,.18);
  border-radius:14px;
  background:linear-gradient(135deg,#f8fcff,#ffffff);
}
.tiny{font-size:.82rem}
.soft-check{
  display:flex;
  align-items:center;
  gap:9px;
  color:#111827;
  font-weight:850;
  line-height:1.3;
}
.soft-check input{width:18px;height:18px;accent-color:#28c7ee}
.owner-operation-return span{
  color:#64748b;
  font-size:.72rem;
  font-weight:950;
  text-transform:uppercase;
}
.owner-operation-return b{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#111827;
  font-size:.9rem;
}
.owner-operation-return small{color:#64748b;font-weight:760}
.admin-console-board{display:grid;gap:16px}
.admin-console-stats{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}
.admin-console-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.admin-entity-panel{display:grid;gap:12px}
.admin-entity-list{display:grid;gap:10px}
.admin-pending-row,
.admin-entity-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  padding:14px;
  border:1px solid rgba(226,232,240,.96);
  border-radius:20px;
  background:linear-gradient(135deg,#ffffff,#f8fafc);
  box-shadow:0 12px 30px rgba(15,23,42,.06);
  min-width:0;
}
.admin-entity-row{grid-template-columns:62px minmax(0,1fr)}
.admin-pending-row[data-admin-open-console],
.admin-entity-row[data-admin-open-console]{cursor:pointer}
.admin-pending-row:hover,
.admin-entity-row:hover{
  border-color:rgba(40,199,238,.34);
  box-shadow:0 16px 36px rgba(15,23,42,.08);
}
.admin-entity-row img{
  width:62px;
  height:62px;
  border-radius:16px;
  object-fit:cover;
  background:#e2e8f0;
}
.admin-pending-row b,
.admin-pending-row small{
  display:block;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.admin-pending-row b{font-size:1rem;color:#111827}
.admin-pending-row small{color:#64748b;font-size:.78rem;font-weight:800}
.admin-entity-main{
  min-width:0;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
}
.admin-entity-main > div{
  min-width:0;
  display:grid;
  gap:3px;
}
.admin-entity-main b,
.admin-entity-main small,
.admin-entity-main span{
  display:block;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.admin-entity-main small{color:#64748b;font-size:.78rem;font-weight:800}
.admin-entity-main span{color:#94a3b8;font-size:.72rem;font-weight:900}
.admin-row-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.admin-inline-link{
  display:grid;
  place-items:center;
  width:40px;
  height:40px;
  border:1px solid rgba(226,232,240,.96);
  border-radius:14px;
  background:#fff;
  color:#0f172a;
  text-decoration:none;
  font-size:1rem;
  font-weight:900;
}
.admin-inline-link.is-empty{visibility:hidden}
.admin-console-modal{
  width:min(1120px,calc(100vw - 28px));
  display:grid;
  gap:14px;
}
.admin-console-modal-head{
  display:grid;
  grid-template-columns:88px minmax(0,1fr);
  gap:14px;
  align-items:center;
}
.admin-console-modal-head img{
  width:88px;
  height:88px;
  border-radius:24px;
  object-fit:cover;
  background:#e2e8f0;
}
.admin-console-modal-head small{display:block;color:#64748b;font-size:.76rem;font-weight:900;text-transform:uppercase}
.admin-console-modal-head h3{margin:2px 0 4px}
.admin-console-modal-head p{margin:0;color:#64748b}
.admin-console-modal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.admin-console-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.admin-console-meta span{
  display:grid;
  gap:3px;
  padding:10px 12px;
  border:1px solid rgba(226,232,240,.96);
  border-radius:14px;
  background:#fff;
  color:#111827;
  font-size:.82rem;
  font-weight:820;
}
.admin-console-meta b{color:#64748b;font-size:.68rem;text-transform:uppercase}
.admin-doc-actions{display:flex;flex-wrap:wrap;gap:8px}
.admin-doc-uploader{display:grid;grid-template-columns:180px minmax(0,1fr) 180px;gap:10px;align-items:end}
.admin-doc-uploader-wide{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}
.admin-history-list{display:grid;gap:8px}
.admin-history-list article{
  display:grid;
  gap:2px;
  padding:10px 12px;
  border:1px solid rgba(226,232,240,.92);
  border-radius:14px;
  background:#fff;
}
.admin-history-entry{
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:10px !important;
}
.admin-history-entry > div{
  display:grid;
  gap:2px;
  min-width:0;
}
.admin-history-entry .ghost-btn{
  align-self:center;
  justify-self:end;
  min-height:36px;
  padding:0 12px;
}
.admin-history-list span{color:#64748b;font-size:.78rem;font-weight:780}
.admin-history-list small{color:#94a3b8;font-size:.72rem;font-weight:850}
.admin-inline-actions{display:flex;flex-wrap:wrap;gap:8px}
.admin-order-admin-list,
.admin-content-list,
.admin-content-comments{display:grid;gap:10px}
.admin-order-admin-card,
.admin-content-card,
.admin-content-comment{
  display:grid;
  gap:10px;
  padding:12px;
  border:1px solid rgba(226,232,240,.92);
  border-radius:16px;
  background:#fff;
}
.admin-order-admin-card small,
.admin-content-card small,
.admin-content-comment small{color:#64748b;font-size:.78rem;font-weight:780}
.admin-order-admin-actions{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px;
  align-items:center;
}
.admin-content-comment{
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
}
.owner-commissions-card{display:grid;gap:12px;background:linear-gradient(135deg,#fff,#fffaf7)}
.owner-commission-note{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  padding:11px;
  border:1px solid rgba(249,115,22,.2);
  border-radius:16px;
  background:#fff7ed;
}
.owner-commission-note b{color:#9a3412}
.owner-commission-note span{color:#64748b;font-weight:780}
.owner-commission-list{display:grid;gap:8px}
.owner-commission-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) repeat(3,120px);
  gap:10px;
  align-items:center;
  padding:11px;
  border:1px solid rgba(226,232,240,.96);
  border-radius:18px;
  background:#fff;
  box-shadow:0 12px 28px rgba(15,23,42,.06);
}
.owner-commission-row div{min-width:0;display:grid;gap:2px}
.owner-commission-row small{
  color:#64748b;
  font-size:.7rem;
  font-weight:950;
  text-transform:uppercase;
}
.owner-commission-row b,.owner-commission-row span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.owner-commission-row b{color:#111827}
.owner-commission-row span{color:#64748b;font-size:.8rem;font-weight:760}
.owner-operations-card{display:grid;gap:12px;background:linear-gradient(135deg,#fff,#f8fbff)}
.owner-operation-compose{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
  align-items:end;
}
.owner-operation-description{grid-column:span 5}
.owner-operation-list{display:grid;gap:8px}
.owner-operation-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) 150px 280px;
  gap:10px;
  align-items:center;
  padding:11px;
  border:1px solid rgba(226,232,240,.96);
  border-radius:18px;
  background:#fff;
  box-shadow:0 12px 28px rgba(15,23,42,.07);
}
.owner-operation-row.alta,.owner-operation-row.critica,.owner-operation-row.grave,.owner-operation-row.urgente{
  border-color:rgba(249,115,22,.34);
  background:linear-gradient(135deg,#fff,#fff7ed);
}
.owner-operation-main{min-width:0;display:grid;gap:3px}
.owner-operation-main small{
  color:#64748b;
  font-size:.7rem;
  font-weight:950;
  text-transform:uppercase;
}
.owner-operation-main b,.owner-operation-main span,.owner-operation-main em{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.owner-operation-main b{color:#111827}
.owner-operation-main span{color:#64748b;font-size:.82rem;font-weight:760}
.owner-operation-main em{color:#0f766e;font-size:.76rem;font-style:normal;font-weight:850}
.owner-operation-meta{display:grid;gap:4px;text-align:right}
.owner-operation-meta span{color:#64748b;font-size:.78rem;font-weight:800}
.owner-operation-meta b{color:#111827;font-size:.86rem}
.owner-operation-meta small{color:#64748b;font-size:.72rem;font-weight:760}
.owner-operation-responsavel{color:#0284c7;font-size:.75rem;font-weight:850;text-decoration:none}
.owner-operation-actions{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:6px}
.owner-operation-actions .ghost-btn,.owner-operation-actions .ok-btn{
  min-height:34px;
  padding:0 10px;
  font-size:.74rem;
}

@media (max-width:980px){
  .owner-operation-compose{grid-template-columns:repeat(2,minmax(0,1fr))}
  .owner-operation-description{grid-column:span 2}
  .owner-operation-row{grid-template-columns:1fr}
  .owner-commission-row{grid-template-columns:1fr 1fr}
  .owner-operation-meta{text-align:left}
}

@media (max-width:620px){
  .owner-operation-compose,.owner-operation-actions{grid-template-columns:1fr}
  .owner-commission-row{grid-template-columns:1fr}
  .owner-operation-description{grid-column:auto}
}

/* integrações */
.integration-page{display:grid;gap:14px;padding-bottom:96px}
.integration-hero{
    min-height:310px;
    display:grid;
  align-items:end;
  padding:24px;
  border-radius:28px;
  color:#fff;
  overflow:hidden;
  background:
    linear-gradient(135deg,rgba(15,23,42,.84),rgba(255,91,24,.78)),
    url("assets/logo.png") center right 8%/220px no-repeat,
    linear-gradient(135deg,#111827,#ff5b18);
  box-shadow:0 24px 62px rgba(15,23,42,.18);
}
.integration-hero small{
  display:block;
  font-weight:950;
  letter-spacing:.02em;
  text-transform:uppercase;
  color:#d9f99d;
}
.integration-hero h1{
  max-width:780px;
  margin:6px 0 8px;
  font-size:clamp(1.55rem,4vw,3rem);
  line-height:1.02;
}
.integration-hero p{
  max-width:720px;
  margin:0;
  color:rgba(255,255,255,.82);
  font-weight:780;
}
.integration-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.integration-bot{display:grid;gap:12px;background:linear-gradient(135deg,#fff,#f7fbff)}
.integration-bot h2,.integration-blog h2{margin:0}
.integration-form{display:grid;grid-template-columns:minmax(170px,.55fr) minmax(260px,1fr) auto;gap:10px;align-items:end}
.integration-form .field{margin:0}
.integration-brief textarea{min-height:92px;resize:vertical}
.integration-answer{min-height:130px}
.integration-response{
  display:grid;
  gap:8px;
  padding:14px;
  border:1px solid rgba(226,232,240,.96);
  border-radius:20px;
  background:#fff;
  box-shadow:0 14px 36px rgba(15,23,42,.08);
}
.integration-response small{
  font-size:.72rem;
  color:#64748b;
  font-weight:950;
  text-transform:uppercase;
}
.integration-response h3{margin:0;color:#111827}
.integration-response p{margin:0;color:#475569;font-weight:720}
.integration-response ol{margin:0;padding-left:20px;color:#111827;font-weight:780}
.integration-response li{margin:5px 0}
.integration-response.ai{border-color:rgba(34,199,238,.34);background:linear-gradient(135deg,#fff,#f0fbff)}
.integration-response details{border-top:1px solid rgba(226,232,240,.9);padding-top:8px}
.integration-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.integration-card{
  display:grid;
  grid-template-rows:auto auto 1fr auto;
  gap:8px;
  min-height:190px;
  padding:14px;
  border:1px solid rgba(226,232,240,.96);
  border-radius:22px;
  background:#fff;
  box-shadow:0 16px 40px rgba(15,23,42,.08);
}
.integration-card small{
  color:#ff5b18;
  font-weight:950;
  text-transform:uppercase;
  font-size:.72rem;
}
.integration-card h3{
  min-height:42px;
  margin:0;
  color:#111827;
  font-size:1rem;
  line-height:1.18;
}
.integration-card p{
  margin:0;
  color:#64748b;
  font-weight:760;
  line-height:1.35;
}
.integration-card .ghost-btn{min-height:34px;font-size:.8rem}
.host-page{display:grid;gap:14px;padding-bottom:96px}
.host-hero{
  min-height:280px;
  background:
    radial-gradient(circle at top right,rgba(34,199,238,.24),transparent 32%),
    radial-gradient(circle at bottom left,rgba(255,106,33,.24),transparent 34%),
    linear-gradient(135deg,#111827,#1f2937 48%,#273548 100%);
}
.host-layout{
  display:grid;
  grid-template-columns:minmax(0,1.04fr) minmax(320px,.96fr);
  gap:14px;
  align-items:start;
}
.host-workflows{display:grid;gap:14px}
.host-workflow-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.host-workflow-card,
.host-folder-card,
.host-file-card,
.host-policy-card{
  display:grid;
  gap:10px;
  padding:14px;
  border-radius:18px;
  border:1px solid rgba(226,232,240,.95);
  background:linear-gradient(180deg,#fff,#f8fbff);
  box-shadow:0 12px 30px rgba(15,23,42,.06);
}
.host-workflow-card small,
.host-folder-card small,
.host-file-card small,
.host-policy-card small{
  color:#0f766e;
  font-weight:900;
  letter-spacing:.02em;
  text-transform:uppercase;
}
.host-workflow-card p,
.host-folder-card p,
.host-file-card p,
.host-policy-card p{margin:0}
.host-browser,.host-chat-panel{display:grid;gap:12px;align-content:start}
.host-badges{display:flex;flex-wrap:wrap;gap:8px}
.host-badges span{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  border:1px solid rgba(125,211,252,.42);
  background:rgba(240,249,255,.9);
  color:#0f172a;
  font-size:.78rem;
  font-weight:850;
}
.host-file-head{gap:12px}
.host-file-lists{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.host-file-lists section{
  display:grid;
  gap:8px;
  padding:12px;
  border-radius:16px;
  background:#fff;
  border:1px solid rgba(226,232,240,.95);
}
.host-file-lists ul{margin:0;padding-left:18px;color:#475569}
.host-file-lists li + li{margin-top:4px}
.host-answer-card p{
  margin:0;
  white-space:normal;
  word-break:break-word;
}
.host-policy-card pre{
  margin:0;
  padding:12px;
  border-radius:16px;
  background:#0f172a;
  color:#dbeafe;
  font-size:.78rem;
  line-height:1.5;
  overflow:auto;
  white-space:pre-wrap;
  word-break:break-word;
}
.host-chat-panel .profile-payment-actions{margin-top:2px}
.host-chat-panel details{
  padding:10px 12px;
  border-radius:14px;
  background:#fff;
  border:1px solid rgba(226,232,240,.95);
}
.host-chat-panel details summary{cursor:pointer;font-weight:850;color:#0f172a}
.integration-blog{display:grid;gap:12px}
.integration-timeline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.integration-timeline article{
    display:grid;
  gap:6px;
  padding:12px;
  border:1px solid rgba(226,232,240,.96);
  border-radius:18px;
  background:#f8fafc;
}
.integration-timeline b{color:#111827}
.integration-timeline span{color:#64748b;font-weight:740;line-height:1.35}
.integration-api-panel{display:grid;gap:14px;background:linear-gradient(135deg,#ffffff,#f6fbff)}
.integration-api-form{display:grid;grid-template-columns:1.4fr 1fr .7fr auto;gap:10px;align-items:end}
.integration-access-box{grid-column:1/-1;min-width:0;margin:0;padding:10px 12px;border:1px solid #dce5ee;background:#f8fbfd}
.integration-access-box legend{padding:0 5px;color:#526177;font-size:.78rem;font-weight:900}
.integration-scope-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;grid-column:1/-1}
.integration-scope-grid label{display:flex;align-items:center;gap:8px;min-height:38px;border:1px solid rgba(226,232,240,.9);border-radius:14px;background:#fff;padding:8px 10px;font-weight:850;color:#172033}
.integration-scope-grid input{width:16px;height:16px;accent-color:#22c7ee}
.integration-api-secret{border:1px solid rgba(34,199,238,.24);background:#ecfeff;border-radius:16px;padding:12px;display:grid;gap:6px;color:#164e63}
.integration-api-secret p{margin:0;min-width:0;overflow:auto}
.integration-api-secret code{font-size:.78rem}
.integration-console-toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.integration-console-form{grid-template-columns:1.1fr .85fr 1fr auto}
.integration-api-list{display:grid;gap:8px}
.integration-api-key{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid rgba(226,232,240,.95);border-radius:16px;background:#fff;padding:10px;box-shadow:0 10px 24px rgba(15,23,42,.05)}
.integration-api-key div{min-width:0;display:grid;gap:3px}
.integration-api-key small{font-size:.72rem;text-transform:uppercase;color:#64748b;font-weight:950}
.integration-api-key b,.integration-api-key span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.integration-api-key span{color:#64748b;font-size:.82rem;font-weight:760}
.integration-api-docs{border:1px solid rgba(226,232,240,.9);border-radius:14px;background:#fff}
.integration-api-docs summary{cursor:pointer;padding:10px 12px;font-weight:950;color:#172033}
.integration-api-docs pre{margin:0;padding:0 12px 12px;overflow:auto;font-size:.78rem;color:#334155}
.soft-loading{
  display:grid;
  place-items:center;
  min-height:110px;
  border:1px dashed rgba(34,199,238,.46);
  border-radius:20px;
  color:#64748b;
  font-weight:850;
  background:rgba(240,251,255,.72);
}

@media (max-width:980px){
  .integration-form,.integration-api-form{grid-template-columns:1fr}
  .integration-grid,.integration-timeline{grid-template-columns:repeat(2,minmax(0,1fr))}
  .integration-scope-grid{grid-template-columns:1fr}
  .integration-api-key{grid-template-columns:1fr}
  .integration-console-toolbar{display:grid;grid-template-columns:1fr}
}

@media (max-width:620px){
  .integration-page{gap:10px}
  .integration-hero{min-height:260px;padding:18px;border-radius:22px;background-position:center right -54px;background-size:190px}
  .host-layout,.host-workflow-grid,.host-file-lists{grid-template-columns:1fr}
  .integration-grid,.integration-timeline{grid-template-columns:1fr}
  .integration-card{min-height:auto}
}
.blog-hero{
  display:grid;
  gap:12px;
  padding:22px;
  border-radius:26px;
  color:#fff;
  background:
    linear-gradient(135deg,rgba(17,24,39,.92),rgba(11,116,120,.78)),
    linear-gradient(135deg,#111827,#20c4de);
  box-shadow:0 24px 64px rgba(15,23,42,.16);
}
.blog-hero small{
  color:#a7f3d0;
  font-weight:950;
  letter-spacing:.02em;
  text-transform:uppercase;
}
.blog-hero h1{
  max-width:820px;
  margin:0;
  font-size:clamp(1.55rem,4vw,2.7rem);
  line-height:1.05;
}
.blog-hero p{
  max-width:780px;
  margin:0;
  color:rgba(255,255,255,.84);
  font-weight:760;
}
.blog-hero-actions{display:flex;flex-wrap:wrap;gap:8px}
.blog-layout{
  display:grid;
  grid-template-columns:minmax(0,1.75fr) minmax(260px,.8fr);
  gap:14px;
  align-items:start;
}
.blog-posts,.blog-sidebar{display:grid;gap:12px}
.blog-insight-card,.blog-signal-row{
  display:grid;
  gap:10px;
  padding:14px;
  border:1px solid rgba(226,232,240,.95);
  border-radius:22px;
  background:linear-gradient(135deg,#fff,#f8fbff);
  box-shadow:0 16px 42px rgba(15,23,42,.08);
}
.blog-insight-meta{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  align-items:center;
  color:#64748b;
  font-size:.76rem;
  font-weight:850;
  text-transform:uppercase;
}
.blog-insight-card h2{
  margin:0;
  color:#111827;
  font-size:clamp(1.12rem,2vw,1.55rem);
  line-height:1.14;
}
.blog-insight-card p,.blog-insight-body{
  margin:0;
  color:#475569;
  font-weight:730;
  line-height:1.45;
}
.blog-insight-tags{display:flex;flex-wrap:wrap;gap:6px}
.blog-insight-tags span{
  padding:6px 9px;
  border-radius:999px;
  background:#ecfeff;
  color:#0e7490;
  font-size:.75rem;
  font-weight:900;
}
.blog-insight-sources{
  padding-top:8px;
  border-top:1px solid rgba(226,232,240,.9);
  color:#64748b;
  font-size:.78rem;
  font-weight:780;
}
.blog-signal-row{border-radius:18px;background:#fff}
.blog-signal-row small{
  color:#0f766e;
  font-size:.72rem;
  font-weight:950;
  text-transform:uppercase;
}
.blog-signal-row b{color:#111827}
.blog-signal-row span{color:#64748b;font-size:.84rem;font-weight:740}
@media (max-width:840px){
  .blog-layout{grid-template-columns:1fr}
  .blog-hero{padding:18px;border-radius:22px}
}
.pricing-result{
  display:grid;
  gap:12px;
  padding:14px;
  border:1px solid rgba(226,232,240,.92);
  border-radius:18px;
  background:linear-gradient(135deg,#fff,#f8fbff);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.82),0 14px 34px rgba(15,23,42,.08);
}
.pricing-result p{
  margin:4px 0 0;
  color:#64748b;
  font-weight:750;
  line-height:1.38;
}
.pricing-kpis{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}
.pricing-kpis span{
  min-height:74px;
  display:grid;
  align-content:center;
  gap:3px;
  padding:10px;
  border-radius:16px;
  background:#fff;
  border:1px solid #e2e8f0;
  box-shadow:0 10px 24px rgba(15,23,42,.06);
}
.pricing-kpis small{
  color:#64748b;
  font-weight:850;
  font-size:.72rem;
}
.pricing-kpis b{
  color:#111827;
  font-size:1rem;
}
@keyframes xfGreeterNudge{
  0%,100%{transform:translateY(0)}
  35%{transform:translateY(-5px)}
  70%{transform:translateY(0)}
}
@keyframes xfGreeterThinking{
  0%,100%{opacity:.68}
  50%{opacity:1}
}
@media (max-width:560px){
  .xf-greeter{
    right:12px;
    bottom:calc(82px + env(safe-area-inset-bottom, 0px));
  }
  .xf-greeter.is-open:not([style*="left"]){
    left:12px;
    right:12px;
  }
  .xf-greeter.is-open .xf-greeter-panel{
    width:100%;
  }
  .xf-greeter-upload-box{display:flex}
  .xf-greeter-upload-preview{grid-column:auto}
  .xf-greeter-actions{display:flex}
  .pricing-kpis{grid-template-columns:1fr 1fr}
}

/* Recuperacao de senha */
.recovery-shell{
  display:grid;
  gap:12px;
}
.recovery-shell h1{margin-bottom:0}
.recovery-methods{
  display:grid;
  gap:9px;
}
.recovery-method{
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  gap:11px;
  align-items:center;
  min-height:62px;
  padding:10px 12px;
  text-align:left;
}
.recovery-method > span:last-child{
  display:grid;
  min-width:0;
  gap:2px;
}
.recovery-method small{
  color:#64748b;
  font-size:.78rem;
  font-weight:750;
  overflow-wrap:anywhere;
}
.recovery-passkey small{color:rgba(255,255,255,.82)}
.recovery-method-icon{
  display:grid;
  place-items:center;
  width:40px;
  height:40px;
  border-radius:50%;
  background:rgba(14,165,233,.12);
  color:#075985;
  font-size:.72rem;
  font-weight:950;
}
.recovery-passkey .recovery-method-icon{
  background:rgba(255,255,255,.2);
  color:#fff;
  font-size:1.25rem;
}
.recovery-code{
  text-align:center;
  font-size:1.35rem;
  font-weight:900;
  letter-spacing:6px;
}
.recovery-identity{
  display:grid;
  gap:11px;
  padding:13px;
  border:1px solid rgba(14,165,233,.22);
  border-radius:16px;
  background:#f8fcff;
}
.recovery-capture-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}
.recovery-capture{
  display:grid;
  justify-items:center;
  gap:5px;
  min-height:92px;
  padding:9px 6px;
  font-size:.75rem;
  text-align:center;
}
.recovery-capture small{font-size:.68rem;color:#64748b}
.recovery-capture.is-ready{
  border-color:#10b981;
  background:#ecfdf5;
  color:#065f46;
}
.recovery-camera-icon{
  position:relative;
  width:26px;
  height:19px;
  border:2px solid currentColor;
  border-radius:5px;
}
.recovery-camera-icon::before{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:7px;
  height:7px;
  border:2px solid currentColor;
  border-radius:50%;
  transform:translate(-50%,-50%);
}
.recovery-camera-icon::after{
  content:"";
  position:absolute;
  left:3px;
  top:-6px;
  width:9px;
  height:5px;
  border-radius:3px 3px 0 0;
  background:currentColor;
}
.recovery-camera-modal{
  width:min(520px,100%);
  display:grid;
  gap:12px;
}
.recovery-camera-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.recovery-camera-modal video{
  width:100%;
  max-height:62vh;
  aspect-ratio:4/3;
  object-fit:cover;
  border-radius:14px;
  background:#111827;
}
.recovery-symbol{
  display:grid;
  place-items:center;
  width:54px;
  height:54px;
  border-radius:50%;
  font-size:1.5rem;
  font-weight:950;
}
.recovery-symbol-review{
  color:#047857;
  background:#d1fae5;
}
.text-btn{
  border:0;
  background:transparent;
  color:#475569;
  min-height:38px;
  font:inherit;
  font-weight:850;
  cursor:pointer;
}
@media (max-width:560px){
  .recovery-capture-grid{grid-template-columns:1fr}
  .recovery-capture{
    grid-template-columns:32px minmax(0,1fr) auto;
    justify-items:start;
    align-items:center;
    min-height:54px;
    text-align:left;
  }
}

/* XFartura v331: perfil publico e Moments */
.public-profile-hero{
  border:0;
  box-shadow:0 16px 40px rgba(15,23,42,.09);
}
.public-profile-cover{
  position:relative;
  min-height:190px;
  background:linear-gradient(120deg,#18202c,#51636c 48%,#ff5b18);
}
.public-profile-cover::after{
  position:absolute;
  inset:auto 0 0;
  height:44%;
  content:"";
  background:linear-gradient(transparent,rgba(15,23,42,.18));
  pointer-events:none;
}
.public-profile-cover img{
  height:230px;
}
.public-profile-info{
  grid-template-columns:92px minmax(0,1fr);
  padding:0 20px;
}
.public-profile-info>*{min-width:0}
.public-profile-avatar{
  width:92px;
  height:92px;
  margin-top:-48px;
  border:4px solid #fff;
  border-radius:24px;
  box-shadow:0 10px 28px rgba(15,23,42,.18);
}
.public-profile-info h2{
  font-size:clamp(1.35rem,2.4vw,2rem);
}
.public-profile-own-actions{
  flex-wrap:wrap;
}
.public-moments-band{
  display:grid;
  gap:4px;
  margin:14px 0;
  padding:14px 16px 8px;
  border:1px solid rgba(226,232,240,.9);
  border-radius:8px;
  background:#fff;
  box-shadow:0 12px 30px rgba(15,23,42,.06);
}
.public-moments-head{
  margin:0;
}
.public-moments-head h3{
  margin:0;
}
.public-moment-empty{
  display:grid;
  flex:0 0 112px;
  width:112px;
  height:168px;
  place-items:center;
  align-content:center;
  gap:8px;
  border:1px dashed #7dd3fc;
  border-radius:8px;
  color:#075985;
  background:#f0f9ff;
  cursor:pointer;
}
.public-moment-empty b{
  font-size:2rem;
}
.public-moment-empty span{
  padding:0 8px;
  font-size:.75rem;
  font-weight:850;
  text-align:center;
}
.public-moment-composer{
  display:grid;
  gap:14px;
  width:min(480px,calc(100vw - 24px));
}
.public-moment-file{
  min-height:84px;
}
.public-moment-preview{
  overflow:hidden;
  aspect-ratio:9 / 12;
  border-radius:8px;
  background:#0f172a;
}
.public-moment-preview[hidden]{
  display:none;
}
.public-moment-preview img{
  width:100%;
  height:100%;
  object-fit:cover;
}

@media (max-width:620px){
  .public-profile-hero{
    gap:11px;
    margin-inline:0;
  }
  .public-profile-cover{
    min-height:132px;
  }
  .public-profile-cover img{
    height:152px;
  }
  .public-profile-info{
    grid-template-columns:76px minmax(0,1fr);
    gap:11px;
    align-items:start;
    padding:0 13px;
  }
  .public-profile-avatar{
    width:76px;
    height:76px;
    margin-top:-36px;
    border-radius:20px;
  }
  .public-profile-info h2{
    margin-top:2px;
    font-size:1.32rem;
    overflow-wrap:anywhere;
  }
  .public-profile-info p{
    font-size:.84rem;
    line-height:1.35;
  }
  .public-profile-ref{
    gap:7px;
    padding:0 13px;
    align-items:flex-start;
  }
  .public-profile-ref a{
    width:100%;
    overflow-wrap:anywhere;
    white-space:normal;
  }
  .public-profile-own-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:7px;
    padding:0 13px 12px;
  }
  .public-profile-own-actions>*{
    width:100%;
    min-height:42px;
    padding-inline:10px;
    font-size:.8rem;
  }
  .public-profile-own-actions>*:last-child{
    grid-column:1 / -1;
  }
  .public-profile-metrics,
  .public-profile-insights{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px;
    padding:0 13px 13px;
  }
  .public-profile-metrics article,
  .public-profile-insights article{
    min-width:0;
    padding:9px;
  }
  .public-moments-band{
    margin:10px 0;
    padding:12px 12px 6px;
  }
}


/* v320: conversas, atendimento humano, lives e integracoes */
.xf-chat{
  display:grid;
  min-width:0;
  overflow:hidden;
  border:1px solid #dbe4ee;
  border-radius:8px;
  background:#fff;
}

/* v320: publicacoes com midia, marcacoes e acompanhamento */
.ad-media-picker{
  display:grid;
  grid-template-columns:88px 88px minmax(0,1fr);
  gap:10px;
  align-items:stretch;
}

.ad-media-button{
  min-height:78px;
  border:1px dashed #67cfea;
  border-radius:8px;
  background:#f4fbfd;
  color:#0f6475;
  display:grid;
  place-content:center;
  gap:2px;
  font:inherit;
  cursor:pointer;
}

.ad-media-button span{
  width:27px;
  height:27px;
  margin:auto;
  border:2px solid currentColor;
  border-radius:50%;
  display:grid;
  place-items:center;
  font-size:20px;
  line-height:1;
}

.ad-media-button.has-file{
  border-style:solid;
  background:#e8f9f2;
  color:#087657;
}

.ad-camera-symbol{
  position:relative;
  width:29px!important;
  height:22px!important;
  border-radius:5px!important;
}

.ad-camera-symbol::before{
  content:"";
  position:absolute;
  inset:5px auto auto 7px;
  width:10px;
  height:10px;
  border:2px solid currentColor;
  border-radius:50%;
}

.ad-camera-symbol::after{
  content:"";
  position:absolute;
  left:7px;
  top:-6px;
  width:12px;
  height:6px;
  border:2px solid currentColor;
  border-bottom:0;
  border-radius:4px 4px 0 0;
}

.ad-media-preview{
  min-height:78px;
  border:1px solid #dce4ed;
  border-radius:8px;
  background:#f8fafc;
  padding:8px 10px;
  display:flex;
  align-items:center;
  gap:10px;
  color:#64748b;
  overflow:hidden;
}

.ad-media-preview img{
  width:58px;
  height:58px;
  flex:0 0 58px;
  object-fit:cover;
  border-radius:6px;
}

.ad-media-preview span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.ad-media-studio{
  display:grid;
  gap:12px;
  min-width:0;
}

.ad-carousel-editor{
  display:grid;
  gap:11px;
  min-width:0;
  padding:12px;
  border:1px solid #dce4ed;
  border-radius:8px;
  background:#f8fafc;
}

.ad-carousel-editor[hidden]{display:none}

.ad-editor-canvas-wrap{
  position:relative;
  width:min(100%,480px);
  margin:auto;
}

.ad-editor-canvas-wrap canvas{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:1;
  border:1px solid #d5dee8;
  border-radius:8px;
  background:#eef2f7;
  box-shadow:0 12px 24px rgba(15,23,42,.1);
}

.ad-remove-image{
  position:absolute;
  top:8px;
  right:8px;
  width:38px;
  height:38px;
  border:1px solid rgba(255,255,255,.7);
  border-radius:50%;
  background:rgba(15,23,42,.78);
  color:#fff;
  font:800 23px/1 Arial,sans-serif;
  cursor:pointer;
}

.ad-editor-thumbs{
  display:flex;
  gap:8px;
  min-height:66px;
  overflow-x:auto;
  scrollbar-width:thin;
}

.ad-editor-thumbs:empty{display:none}

.ad-editor-thumbs button{
  position:relative;
  flex:0 0 64px;
  width:64px;
  height:64px;
  padding:0;
  overflow:hidden;
  border:2px solid transparent;
  border-radius:7px;
  background:#e2e8f0;
  cursor:pointer;
}

.ad-editor-thumbs button.is-active{
  border-color:#ff5b18;
  box-shadow:0 0 0 3px rgba(255,91,24,.15);
}

.ad-editor-thumbs img{width:100%;height:100%;object-fit:cover}

.ad-editor-thumbs span{
  position:absolute;
  right:3px;
  bottom:3px;
  display:grid;
  place-items:center;
  width:19px;
  height:19px;
  border-radius:50%;
  background:rgba(15,23,42,.82);
  color:#fff;
  font-size:.68rem;
  font-weight:900;
}

.ad-effect-picker,.ad-save-effect{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:9px;
  align-items:end;
}

.ad-effect-ranges{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:9px 16px;
}

.ad-effect-range{
  display:grid;
  grid-template-columns:78px minmax(0,1fr) 36px;
  align-items:center;
  gap:7px;
  min-width:0;
}

.ad-effect-range span,.ad-effect-range b{
  color:#475569;
  font-size:.75rem;
  font-weight:900;
}

.ad-effect-range input{width:100%;min-width:0;accent-color:#ff5b18}
.ad-effect-range b{text-align:right}

/* v330: compositor social compacto */
.ad-composer-backdrop{
  align-items:flex-end;
  padding:12px;
}
.ad-composer-card{
  width:min(610px,100%);
  max-height:min(92dvh,860px);
  margin:0 auto;
  padding:18px;
  overflow:auto;
  border:1px solid rgba(148,163,184,.42);
  border-radius:8px 8px 0 0;
  background:#fff;
  box-shadow:0 -20px 60px rgba(15,23,42,.22);
}
.ad-composer-head{
  display:flex;
  align-items:center;
  gap:11px;
  padding-right:44px;
}
.ad-composer-head h3{margin:2px 0 0;font-size:1.18rem}
.ad-composer-head small{color:#0f766e;font-weight:900;text-transform:uppercase}
.ad-composer-avatar{
  display:grid;
  place-items:center;
  width:42px;
  height:42px;
  flex:0 0 42px;
  border-radius:50%;
  color:#fff;
  background:#ff5b18;
  font-weight:950;
}
.ad-composer-copy{
  display:grid;
  margin-top:12px;
  border:1px solid #dce4ed;
  border-radius:8px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 8px 28px rgba(15,23,42,.06);
}
.ad-composer-title-input,
.ad-composer-text-input,
.ad-composer-link input{
  width:100%;
  min-width:0;
  border:0;
  outline:0;
  color:#111827;
  background:transparent;
  font:inherit;
  letter-spacing:0;
}
.ad-composer-title-input{
  padding:10px 15px 12px;
  border-top:1px solid #edf1f5;
  font-size:.9rem;
  font-weight:800;
}
.ad-composer-text-input{
  min-height:112px;
  padding:16px 15px 12px;
  resize:vertical;
  line-height:1.45;
}
.ad-composer-link{
  display:grid;
  grid-template-columns:28px minmax(0,1fr);
  align-items:center;
  min-height:46px;
  padding:0 12px;
  border-top:1px solid #e5eaf0;
  color:#0f766e;
}
.ad-composer-options{
  display:grid;
  grid-template-columns:minmax(0,1.5fr) minmax(150px,.7fr);
  gap:10px;
}
.ad-composer-more{
  border:1px solid #dce4ed;
  border-radius:8px;
  background:#f8fafc;
}
.ad-composer-more summary{
  padding:12px 14px;
  color:#475569;
  font-weight:850;
  cursor:pointer;
}
.ad-composer-more[open] summary{border-bottom:1px solid #dce4ed}
.ad-composer-more .ad-composer-options{padding:12px}
.ad-selected-effect{
  margin:0;
  padding:9px 12px;
  border:1px solid #a7f3d0;
  border-radius:8px;
  color:#0f6d58;
  background:#ecfdf5;
  font-size:.82rem;
  font-weight:850;
}
.ad-composer-actions{
  position:sticky;
  bottom:-18px;
  z-index:4;
  margin:4px -18px -18px;
  padding:12px 18px max(12px,env(safe-area-inset-bottom));
  border-top:1px solid #e5eaf0;
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(14px);
}
.ad-external-link{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin:2px 0 8px;
  color:#0f766e;
  font-weight:850;
}
.public-profile-own-actions{
  display:flex;
  justify-content:flex-end;
  gap:8px;
  padding:0 18px 14px;
}
.ad-camera-live{
  position:relative;
  overflow:hidden;
  aspect-ratio:4/3;
  border:1px solid #283548;
  border-radius:8px;
  background:#0f172a;
}
.ad-camera-live[hidden]{display:none}
.ad-camera-live video{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:filter .15s ease;
}
.ad-camera-live-bar{
  position:absolute;
  right:10px;
  bottom:10px;
  left:10px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 42px 54px 42px;
  align-items:center;
  gap:8px;
  padding:8px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:8px;
  background:rgba(15,23,42,.74);
  backdrop-filter:blur(12px);
}
.ad-camera-live-bar .input{height:42px;min-height:42px;background:#fff}
.ad-camera-capture{
  display:grid;
  place-items:center;
  width:54px;
  height:54px;
  padding:0;
  border:2px solid #fff;
  border-radius:50%;
  background:rgba(255,255,255,.18);
  cursor:pointer;
}
.ad-camera-capture span{
  width:38px;
  height:38px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 0 0 2px rgba(15,23,42,.22);
}
.effect-discovery{
  display:grid;
  gap:10px;
  padding:16px 0 12px;
  border-block:1px solid #e5eaf0;
  background:#fff;
}
.effect-discovery-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:12px;
  padding:0 max(16px,calc((100% - 1180px)/2));
}
.effect-discovery-head small{
  color:#0f766e;
  font-size:.72rem;
  font-weight:950;
  text-transform:uppercase;
}
.effect-discovery-head h3{margin:2px 0 0;font-size:1.05rem}
.effect-discovery-head>span{color:#64748b;font-size:.78rem;font-weight:800}
.effect-discovery-track{
  display:flex;
  gap:9px;
  overflow-x:auto;
  padding:2px max(16px,calc((100% - 1180px)/2)) 8px;
  scrollbar-width:thin;
  scroll-snap-type:x proximity;
}
.effect-discovery-card{
  flex:0 0 116px;
  display:grid;
  gap:4px;
  scroll-snap-align:start;
}
.effect-discovery-card>button{
  display:grid;
  gap:4px;
  width:100%;
  padding:7px;
  border:1px solid #dce4ed;
  border-radius:8px;
  color:#172033;
  background:#fff;
  text-align:left;
  cursor:pointer;
  box-shadow:0 7px 18px rgba(15,23,42,.06);
}
.effect-discovery-preview{
  display:block;
  width:100%;
  aspect-ratio:1;
  border-radius:6px;
  background:
    radial-gradient(circle at 32% 28%,#fff 0 8%,transparent 9%),
    linear-gradient(135deg,#ff5b18 0 34%,#22c7ee 34% 67%,#14213d 67%);
}
.effect-discovery-card b,
.effect-discovery-card small,
.effect-discovery-card>a{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.effect-discovery-card b{font-size:.78rem}
.effect-discovery-card small,
.effect-discovery-card>a{color:#64748b;font-size:.68rem}
.effect-discovery-card>a{padding-inline:4px}
.effect-discovery-note{
  margin:0;
  padding:0 max(16px,calc((100% - 1180px)/2));
  color:#64748b;
  font-size:.74rem;
}

@media (max-width:620px){
  .ad-media-picker{grid-template-columns:72px 72px minmax(0,1fr)}
  .ad-media-button{min-height:70px}
  .ad-effect-ranges{grid-template-columns:1fr}
  .ad-effect-range{grid-template-columns:78px minmax(0,1fr)}
  .ad-effect-range b{display:none}
  .ad-effect-picker,.ad-save-effect{grid-template-columns:1fr}
  .ad-composer-card{padding:14px}
  .ad-composer-options{grid-template-columns:1fr}
  .ad-composer-actions{bottom:-14px;margin:4px -14px -14px;padding-inline:14px}
  .public-profile-own-actions{justify-content:stretch}
  .public-profile-own-actions>*{flex:1}
  .ad-camera-live-bar{grid-template-columns:minmax(0,1fr) 38px 50px 38px}
  .ad-camera-live-bar .icon-btn{width:38px;height:38px;min-height:38px}
  .effect-discovery-head>span{display:none}
}

/* v330: pagamentos, biblioteca pessoal e codigo de entrega */
.owner-payment-delay-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.owner-policy-toggle{
  display:grid;
  grid-template-columns:24px minmax(0,1fr);
  align-items:start;
  gap:10px;
  padding:12px;
  border:1px solid #dce4ed;
  border-radius:8px;
  background:#f8fafc;
}
.owner-policy-toggle input{width:20px;height:20px;margin-top:2px;accent-color:#ff5b18}
.owner-policy-toggle span{display:grid;gap:3px;min-width:0}
.owner-policy-toggle small{color:#64748b;line-height:1.35}
.profile-media-entry{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}
.profile-media-entry h3{margin:3px 0}
.media-library-modal{width:min(900px,100%);max-height:88dvh;overflow:auto}
.media-library-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:12px;
  margin-top:14px;
}
.media-library-card{
  display:grid;
  align-content:start;
  gap:9px;
  min-width:0;
  padding:10px;
  border:1px solid #dce4ed;
  border-radius:8px;
  background:#fff;
}
.media-library-preview{
  aspect-ratio:1;
  overflow:hidden;
  border-radius:6px;
  background:#eef2f7;
}
.media-library-preview img,.media-library-preview video{
  width:100%;
  height:100%;
  object-fit:cover;
}
.order-code-backdrop{
  position:fixed;
  z-index:1200;
  inset:0;
  display:grid;
  place-items:center;
  padding:18px;
  background:rgba(15,23,42,.64);
  backdrop-filter:blur(9px);
}
.order-code-modal{
  position:relative;
  width:min(430px,100%);
  display:grid;
  gap:14px;
  padding:22px;
  border:1px solid rgba(255,255,255,.58);
  border-radius:8px;
  background:#fff;
  box-shadow:0 24px 72px rgba(15,23,42,.35);
}
.order-code-close{
  position:absolute;
  top:10px;
  right:10px;
  width:38px;
  height:38px;
  border:1px solid #dce4ed;
  border-radius:50%;
  background:#f8fafc;
  color:#0f172a;
  font-size:1.3rem;
  cursor:pointer;
}
.order-code-value{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
}
.order-code-value b{
  display:grid;
  place-items:center;
  aspect-ratio:1;
  border:1px solid #fdba74;
  border-radius:8px;
  color:#9a3412;
  background:#fff7ed;
  font-size:clamp(1.6rem,8vw,2.4rem);
}
.order-code-input{
  min-height:64px;
  text-align:center;
  font-size:1.75rem;
  font-weight:950;
  letter-spacing:.34em;
}
.restaurant-formalization-links{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  align-items:center;
  gap:9px;
  margin-top:12px;
  padding:12px;
  border:1px solid #bfe3d8;
  border-radius:8px;
  background:#f0fdf8;
}
.restaurant-formalization-links>div{display:grid;gap:3px;min-width:0}
.restaurant-formalization-links span{color:#526177;font-size:.84rem;line-height:1.35}
@media (max-width:620px){
  .owner-payment-delay-grid{grid-template-columns:1fr}
  .profile-media-entry{align-items:stretch;flex-direction:column}
  .media-library-grid{grid-template-columns:1fr}
  .restaurant-formalization-links{grid-template-columns:1fr}
}

.ad-mention-picker{
  position:relative;
}

.ad-mention-results{
  position:absolute;
  z-index:12;
  left:0;
  right:0;
  top:calc(100% - 4px);
  max-height:230px;
  overflow:auto;
  padding:6px;
  border:1px solid #dce4ed;
  border-radius:8px;
  background:#fff;
  box-shadow:0 14px 30px rgba(15,23,42,.16);
}

.ad-mention-results button{
  width:100%;
  border:0;
  background:transparent;
  border-radius:6px;
  padding:9px 10px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  text-align:left;
  color:#111827;
  cursor:pointer;
}

.ad-mention-results button:hover,
.ad-mention-results button:focus-visible{
  background:#edf9fc;
}

.ad-mention-results button span,
.ad-mention-results p{
  color:#64748b;
  font-size:.84rem;
}

.ad-mention-selected,
.ad-mention-chips,
.ad-post-follow-actions,
.ad-mention-links{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}

.ad-mention-selected button,
.ad-mention-chips a,
.ad-mention-links a{
  border:1px solid #bfeaf3;
  border-radius:999px;
  background:#effbfe;
  color:#08697c;
  padding:6px 9px;
  text-decoration:none;
  font:inherit;
  font-size:.82rem;
}

.ad-mention-selected button{
  cursor:pointer;
}

.ad-mentioned-you{
  margin:0 14px 10px;
  padding:8px 10px;
  border-left:3px solid #22b8d6;
  background:#effbfe;
  color:#155e75;
  font-size:.86rem;
}

.ad-post-follow-actions{
  margin-top:10px;
}

.ad-post-follow-actions .ghost-btn{
  min-height:36px;
  padding:7px 11px;
  font-size:.82rem;
}

.ad-post-follow-actions .ghost-btn.active{
  border-color:#58cbb4;
  background:#e9faf5;
  color:#08765d;
}

.ad-mention-center{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:16px;
  align-items:center;
  border-left:4px solid #27bfdc;
}

.ad-mention-center h3{
  margin:2px 0 4px;
}

.ad-mention-links{
  justify-content:flex-end;
  max-width:430px;
}

@media (max-width:640px){
  .ad-mention-center{
    grid-template-columns:1fr;
  }

  .ad-mention-links{
    justify-content:flex-start;
    max-width:none;
  }

  .ad-media-picker{
    grid-template-columns:68px 68px minmax(0,1fr);
  }
}

.xf-chat-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px 14px;
  border-bottom:1px solid #e6ebf1;
}

.xf-chat-head small{color:#64748b}

.xf-chat-messages{
  display:flex;
  flex-direction:column;
  gap:9px;
  min-height:150px;
  max-height:380px;
  overflow:auto;
  padding:14px;
  background:#f7f9fc;
}

.xf-chat.is-compact .xf-chat-messages{min-height:112px;max-height:260px}

.xf-chat-message{
  align-self:flex-start;
  box-sizing:border-box;
  width:auto;
  max-width:min(94%, 720px);
  padding:9px 11px;
  border:1px solid #dce4ee;
  border-radius:8px;
  background:#fff;
  box-shadow:0 6px 18px rgba(15,23,42,.06);
}

.xf-chat-message.is-self{
  align-self:flex-end;
  margin-left:auto;
  border-color:#8edff1;
  background:#e8faff;
}

.xf-chat.is-compact .xf-chat-message{
  width:100%;
  max-width:none;
}

.xf-chat-message.is-staff{border-color:#b8ead6;background:#effcf6}
.xf-chat-message.is-restaurant{border-color:#ffd0af;background:#fff7ef}
.xf-chat-message.is-driver{border-color:#c9c3f8;background:#f6f4ff}

.xf-chat-message header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:4px;
  font-size:12px;
}

.xf-chat-message time{color:#64748b}
.xf-chat-message p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
.xf-chat-empty{margin:auto;color:#64748b;text-align:center}

.xf-chat-composer{
  display:grid;
  grid-template-columns:42px 42px minmax(0,1fr) 44px;
  align-items:end;
  gap:8px;
  padding:10px;
  border-top:1px solid #e6ebf1;
}

.xf-chat-composer textarea{
  min-height:42px;
  max-height:120px;
  resize:vertical;
}

.xf-chat-file-button,
.xf-chat-record,
.xf-chat-send{
  display:grid;
  width:42px;
  height:42px;
  place-items:center;
  padding:0;
  border-radius:8px;
  cursor:pointer;
}

.xf-chat-file-button{
  border:1px solid #d7e0ea;
  background:#fff;
}

.xf-chat-record{
  border:1px solid #d7e0ea;
  background:#fff;
  color:#0f172a;
}

.xf-chat-record[data-recording="1"]{
  border-color:#f97316;
  background:#fff1e8;
  color:#f97316;
}

.xf-chat-file-button svg,
.xf-chat-record svg,
.xf-chat-send svg,
.xf-chat-attachment svg,
.xf-chat-file-preview svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}

.xf-chat-file-preview{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  margin:0 10px 10px;
  padding:8px 10px;
  border-radius:8px;
  background:#eef5fb;
}

.xf-chat-file-preview[hidden]{display:none}
.xf-chat-file-preview button{margin-left:auto;border:0;background:transparent;font-size:20px;cursor:pointer}
.xf-chat-file-preview audio{width:min(100%,320px)}
.xf-chat-attachments{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}
.xf-chat-attachment{display:inline-flex;align-items:center;gap:6px;max-width:100%;color:#0f766e;text-decoration:none}
.xf-chat-attachment b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.xf-chat-attachment.is-image{display:grid;grid-template-columns:56px minmax(0,1fr);padding:5px;border:1px solid #dce6ef;border-radius:8px;background:#fff}
.xf-chat-attachment.is-image img{width:56px;height:56px;object-fit:cover;border-radius:6px;display:block}
.xf-chat-attachment.is-audio{display:grid;gap:6px;padding:8px 10px;border:1px solid #dce6ef;border-radius:8px;background:#fff;color:#0f172a}
.xf-chat-attachment.is-audio audio{width:min(100%,260px)}

.xf-modal-backdrop{
  position:fixed;
  inset:0;
  z-index:10050;
  display:grid;
  place-items:center;
  padding:16px;
  background:rgba(15,23,42,.58);
  backdrop-filter:blur(8px);
}

.xf-modal-card{
  width:min(720px,100%);
  max-height:min(820px,92vh);
  overflow:auto;
  padding:18px;
  border-radius:8px;
  background:#fff;
  box-shadow:0 28px 80px rgba(15,23,42,.28);
}

.owner-support-chat-modal{display:grid;gap:14px}
.owner-restaurant-review-modal{display:grid;gap:14px;width:min(1160px,calc(100vw - 20px));max-height:min(92vh,980px);overflow:auto}
.owner-review-grid{display:grid;grid-template-columns:minmax(320px,.96fr) minmax(320px,1.04fr);gap:14px}
.owner-review-card{display:grid;gap:12px}
.owner-review-links{display:flex;flex-wrap:wrap;gap:8px}
.owner-review-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px}
.owner-review-step{min-width:0}
.owner-ticket-toolbar{margin:14px 0}
.owner-ticket-toolbar .field{width:min(360px,100%)}

@media (max-width:860px){
  .owner-review-grid{grid-template-columns:1fr}
}

.live-page{width:100%}
.live-page-shell{display:grid;gap:16px;width:min(1280px,100%);margin:0 auto;padding:18px 18px 110px}
.live-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.live-page-head h2{margin:3px 0}
.live-status-pill{padding:8px 12px;border:1px solid #94e5cc;border-radius:999px;background:#eafff7;color:#047857;font-weight:800}
.live-setup{display:grid;gap:12px}
.live-source-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:5px;border:1px solid #dce5ee;background:#f4f7fa}
.live-source-switch button{min-height:42px;border:1px solid transparent;background:transparent;color:#526177;font:inherit;font-weight:850;cursor:pointer}
.live-source-switch button.is-active{border-color:#b8ddea;background:#fff;color:#102033;box-shadow:0 7px 18px rgba(15,23,42,.08)}
.live-external-fields{display:grid;grid-template-columns:minmax(180px,.65fr) minmax(260px,1.35fr);gap:10px;padding:12px;border:1px solid #dbe7ee;background:#f8fbfd}
.live-external-fields[hidden]{display:none}
.live-external-fields p{grid-column:1/-1;margin:0}
.live-stage{display:grid;gap:14px}
.live-stage[hidden],.live-empty[hidden],.live-setup[hidden]{display:none}
.live-video-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));gap:10px;min-height:340px;padding:10px;background:#111827}
.live-video-tile{position:relative;min-height:280px;overflow:hidden;background:#020617}
.live-video-tile video{width:100%;height:100%;min-height:280px;object-fit:cover}
.live-video-tile span{position:absolute;left:10px;bottom:10px;padding:5px 8px;border-radius:6px;background:rgba(15,23,42,.72);color:#fff;font-size:12px}
.live-external-player{display:grid;place-items:center;min-height:320px;background:#020617;color:#fff}
.live-external-player[hidden]{display:none}
.live-external-player iframe{width:100%;height:100%;min-height:420px;border:0;background:#020617}
.live-external-link{display:grid;justify-items:center;gap:14px;padding:28px;text-align:center}
.live-review-note{margin:0;padding:10px;border-left:3px solid #27c5db;background:#f1fbfd;color:#526177;font-size:.84rem}
.live-controls{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;padding:8px;background:#222831}
.live-controls .icon-btn{color:#fff;background:#343b45;border-color:#59616d}
.live-end-btn{min-height:42px}
.live-audio-setup{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  padding:12px;
  border:1px solid #dbe7ee;
  background:#f8fbfd;
}
.live-effect-panel{
  display:grid;
  grid-template-columns:repeat(3,minmax(120px,1fr)) auto;
  gap:10px;
  align-items:end;
  padding:10px 12px;
  border:1px solid #dce4ed;
  background:#f8fafc;
}
.live-effect-panel[hidden]{display:none}
.live-effect-panel label{display:grid;gap:5px;color:#475569;font-size:.78rem;font-weight:850}
.live-effect-panel input{width:100%;accent-color:#ff5b18}
.live-capture-panel{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  gap:10px;
  align-items:end;
  padding:12px;
  border:1px solid #dce4ed;
  border-radius:8px;
  background:#f8fafc;
}
.live-capture-panel[hidden]{display:none}
.live-capture-copy{
  display:grid;
  gap:3px;
  min-width:0;
}
.live-capture-copy b{color:#122033}
.live-capture-copy span{
  color:#64748b;
  font-size:.8rem;
}
.live-capture-actions{
  display:flex;
  align-items:end;
  flex-wrap:wrap;
  gap:8px;
}
.live-capture-actions label{
  display:grid;
  gap:4px;
  color:#64748b;
  font-size:.72rem;
  font-weight:850;
}
.live-capture-actions select{
  min-height:40px;
  border:1px solid #cbd5e1;
  border-radius:8px;
  background:#fff;
  color:#122033;
  padding:0 30px 0 10px;
  font:inherit;
}
.live-recording-status{
  align-self:center;
  min-width:116px;
  color:#526177;
  font-size:.78rem;
  font-weight:850;
  text-align:right;
}
.live-recording-status.is-recording{color:#c2410c}
.live-audio-player{
  display:grid;
  gap:8px;
  padding:10px;
  border:1px solid #dce4ed;
  border-radius:8px;
  background:#f8fafc;
}
.live-audio-player[hidden]{display:none}
.live-audio-player>div{display:grid;gap:2px}
.live-audio-player audio{width:100%}
.live-meta-grid{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(340px,1.2fr);gap:14px;align-items:start}
.live-room-info{display:grid;gap:12px}
.live-invite{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}
.live-participant-list{display:flex;flex-wrap:wrap;gap:6px}
.live-participant-list span{padding:6px 9px;border-radius:999px;background:#edf3f8;font-size:12px}
@media (max-width:760px){
  .live-audio-setup,.live-effect-panel,.live-capture-panel{grid-template-columns:1fr}
  .live-capture-actions{align-items:stretch}
  .live-capture-actions>*{flex:1 1 130px}
  .live-recording-status{text-align:left}
  .live-video-grid{min-height:240px}
  .live-video-tile,.live-video-tile video{min-height:240px}
}

/* XFartura v321: acessibilidade e credencial temporaria */
.sr-only{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}
.xf-a11y-contrast{
  --bg:#fff;
  --surface:#fff;
  --surface-2:#f3f3f3;
  --ink:#000;
  --muted:#252525;
  --line:#111;
  --dark:#111;
  --primary:#c83200;
  --cyan:#006f8f;
  --green:#08763f;
}
.xf-a11y-contrast body,.xf-a11y-contrast .app-shell,.xf-a11y-contrast .page{background:#fff;color:#000}
.xf-a11y-contrast .panel,.xf-a11y-contrast .card,.xf-a11y-contrast .stat,.xf-a11y-contrast .input,.xf-a11y-contrast .search,.xf-a11y-contrast .site-header,.xf-a11y-contrast .bottom-nav,.xf-a11y-contrast .cart-panel,.xf-a11y-contrast .toast{border-color:#111;box-shadow:none}
.xf-a11y-reduced-motion *,.xf-a11y-reduced-motion *::before,.xf-a11y-reduced-motion *::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}
.xf-a11y-large-targets button,.xf-a11y-large-targets .primary-btn,.xf-a11y-large-targets .ghost-btn,.xf-a11y-large-targets .ok-btn,.xf-a11y-large-targets .danger-btn,.xf-a11y-large-targets .input,.xf-a11y-large-targets .nav-btn,.xf-a11y-large-targets .chip,.xf-a11y-large-targets .header-accessibility-btn,.xf-a11y-large-targets .cart-fab{min-height:50px}
.xf-a11y-large-targets .nav-btn,.xf-a11y-large-targets .header-accessibility-btn,.xf-a11y-large-targets .cart-fab{min-width:50px}
.xf-a11y-underline-links a:not(.brand):not(.nav-btn){text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}
.xf-a11y-readable-font body,.xf-a11y-readable-font button,.xf-a11y-readable-font input,.xf-a11y-readable-font select,.xf-a11y-readable-font textarea,.xf-a11y-readable-font .page,.xf-a11y-readable-font .panel,.xf-a11y-readable-font .card{font-family:Arial,"Segoe UI",sans-serif}
.xf-a11y-focus :focus-visible{outline:4px solid #f8c400!important;outline-offset:3px!important;box-shadow:0 0 0 7px rgba(17,24,39,.82)!important}

.a11y-hero,.credential-hero{
  width:100%;
  min-height:190px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:clamp(22px,4vw,48px);
  border-radius:8px;
  background:linear-gradient(128deg,#111827,#2d343d 62%,#284951);
  color:#fff;
  overflow:hidden;
}
.a11y-hero small,.credential-hero small{display:block;color:#a7f3d0;font-weight:950;text-transform:uppercase;font-size:.72rem}
.a11y-hero h1,.credential-hero h1{margin:5px 0 8px;font-size:clamp(1.55rem,4vw,2.8rem);line-height:1.03}
.a11y-hero p,.credential-hero p{max-width:720px;margin:0;color:rgba(255,255,255,.84);font-weight:760;line-height:1.45}
.a11y-hero-mark{
  flex:0 0 auto;
  width:86px;
  height:86px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.34);
  border-radius:50%;
  background:linear-gradient(145deg,#28c7ee,#20c474 58%,#ff5b18);
  font-size:1.65rem;
  font-weight:1000;
  box-shadow:0 18px 34px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.5);
}
.a11y-layout,.credential-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:14px;align-items:start;margin-top:14px}
.a11y-settings{display:grid;gap:13px}
.a11y-settings h2,.a11y-tools h3,.credential-grid h2,.credential-list-card h2{margin:3px 0 5px}
.a11y-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.a11y-option{
  min-height:82px;
  display:grid;
  grid-template-columns:24px minmax(0,1fr);
  align-items:start;
  gap:10px;
  padding:12px;
  border:1px solid var(--line);
  border-radius:8px;
  background:#f8fafc;
  cursor:pointer;
}
.a11y-option input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--primary)}
.a11y-option b,.a11y-option small{display:block}
.a11y-option b{color:var(--ink)}
.a11y-option small{margin-top:4px;color:var(--muted);font-size:.78rem;line-height:1.3}
.a11y-tools{display:grid;gap:10px}
.a11y-tools .panel{display:grid;gap:9px;margin:0}
.profile-security-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:10px 0}

.credential-shield{
  position:relative;
  flex:0 0 auto;
  width:82px;
  height:92px;
  border:3px solid #fff;
  border-radius:38px 38px 45px 45px;
  background:linear-gradient(145deg,#28c7ee,#20c474);
  box-shadow:0 18px 34px rgba(0,0,0,.24);
}
.credential-shield::after{content:"✓";position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-size:2rem;font-weight:1000}
.credential-create-card,.credential-scan-card{display:grid;gap:11px;margin:0}
.credential-share-box{display:grid;gap:8px;padding:12px;border:1px solid var(--line);border-radius:8px}
.credential-share-box legend{padding:0 5px;color:var(--muted);font-size:.8rem;font-weight:900}
.credential-share-box label{display:flex;align-items:center;gap:9px;min-height:32px;font-weight:800}
.credential-share-box input{width:20px;height:20px;accent-color:var(--primary)}
.credential-generated{display:grid;justify-items:center;gap:8px;padding:13px;border:1px solid rgba(32,196,116,.35);border-radius:8px;background:#f1fff8;text-align:center}
.credential-generated canvas{width:min(286px,100%);height:auto;border:1px solid #d6e5dd;border-radius:4px;background:#fff}
.credential-generated b{font-size:1.08rem;letter-spacing:0;color:#111827}
.credential-generated span{color:#526177;font-size:.82rem;font-weight:800}
.credential-generated .grid-2{width:100%}
.credential-scan-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.credential-camera{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px;background:#111827}
.credential-result{display:grid;grid-template-columns:46px minmax(0,1fr);gap:11px;padding:13px;border:1px solid var(--line);border-radius:8px}
.credential-result.is-approved{border-color:rgba(32,196,116,.55);background:#effdf6}
.credential-result.is-denied{border-color:rgba(239,68,68,.45);background:#fff5f5}
.credential-result-mark{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:#111827;color:#fff;font-size:1.3rem;font-weight:1000}
.credential-result small{color:#0f766e;font-weight:950;text-transform:uppercase;font-size:.7rem}
.credential-result h3{margin:3px 0 9px}
.credential-result-data{display:grid;gap:5px;margin:0 0 10px}
.credential-result-data div{display:grid;grid-template-columns:100px minmax(0,1fr);gap:8px;padding:6px 0;border-bottom:1px solid rgba(148,163,184,.2)}
.credential-result-data dt{color:#64748b;font-size:.76rem;font-weight:900}
.credential-result-data dd{margin:0;color:#111827;font-weight:900;word-break:break-word}
.credential-list-card{margin-top:14px}
.credential-list{display:grid;gap:8px;margin-top:10px}
.credential-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#f8fafc}
.credential-row div{min-width:0}
.credential-row small,.credential-row b,.credential-row span{display:block}
.credential-row small{color:#64748b;font-size:.7rem;font-weight:900;text-transform:uppercase}
.credential-row b{overflow:hidden;text-overflow:ellipsis;color:#111827}
.credential-row span{color:#64748b;font-size:.78rem;font-weight:800}
.order-credential-link{width:100%;margin:8px 0}

@media (max-width:760px){
  .a11y-hero,.credential-hero{min-height:150px;padding:20px 16px}
  .a11y-hero-mark,.credential-shield{width:58px;height:64px}
  .a11y-layout,.credential-grid{grid-template-columns:1fr}
  .a11y-options,.profile-security-links{grid-template-columns:1fr}
  .credential-result-data div{grid-template-columns:82px minmax(0,1fr)}
}
.native-live-launcher{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:14px}
.native-live-launcher .primary-btn{flex:0 0 auto}
.native-live-list{display:grid;gap:8px}
.native-live-row{display:flex;align-items:center;justify-content:space-between;gap:14px;min-width:0;padding:12px;border:1px solid #e0e7ef;border-radius:8px}
.native-live-row>div{display:grid;min-width:0;gap:3px}
.native-live-row span{overflow:hidden;color:#64748b;text-overflow:ellipsis;white-space:nowrap}

.toast,
.xf-toast,
[role="status"]{overflow-wrap:anywhere;word-break:break-word}

@media (max-width:760px){
  .xf-chat-message{max-width:98%}
  .xf-modal-card{padding:14px}
  .live-page-shell{padding:12px 10px 105px}
  .live-page-head{align-items:center}
  .live-page-head p{display:none}
  .live-video-grid{min-height:240px}
  .live-video-tile,.live-video-tile video{min-height:220px}
  .live-external-fields{grid-template-columns:1fr}
  .live-external-player,.live-external-player iframe{min-height:240px}
  .live-meta-grid{grid-template-columns:1fr}
  .live-invite{grid-template-columns:1fr}
  .native-live-launcher{align-items:stretch;flex-direction:column}
  .native-live-row{align-items:stretch;flex-direction:column}
  .native-live-row .ghost-btn{width:100%}
}

.stock-request-card,.restaurant-audit-card{align-content:start}
.stock-request-list,.restaurant-audit-list{display:grid;gap:8px;margin-top:12px}
.stock-request-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  padding:11px;
  border:1px solid var(--line);
  border-radius:8px;
  background:#f8fafc;
}
.stock-request-row>div:first-child{display:grid;gap:3px;min-width:0}
.stock-request-row b,.stock-request-row span,.stock-request-row small{overflow-wrap:anywhere}
.stock-request-row span{color:#334155;font-weight:800}
.stock-request-row small{color:var(--muted)}
.stock-request-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.stock-request-actions button{min-height:38px;padding:8px 12px}
.stock-request-history{margin-top:12px}
.stock-request-history summary{cursor:pointer;color:#334155;font-weight:900}
.restaurant-audit-row{
  display:grid;
  grid-template-columns:12px minmax(0,1fr);
  gap:9px;
  padding:9px 0;
  border-bottom:1px solid rgba(148,163,184,.22);
}
.restaurant-audit-row>span{width:9px;height:9px;margin-top:5px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.12)}
.restaurant-audit-row div{display:grid;gap:2px}
.restaurant-audit-row p{margin:0;color:#334155;font-weight:800}
.restaurant-audit-row small{color:var(--muted)}
.xf-greeter-confirm-action{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:112px}
.xf-greeter-confirm-action span{width:20px;height:20px}
.xf-greeter-confirm-action svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}

@media (max-width:760px){
  .stock-request-row{grid-template-columns:1fr}
  .stock-request-actions{width:100%}
  .xf-greeter-confirm-action{min-width:94px}
}

/* Criador visual: ferramenta isolada dos fluxos de pedidos e pagamentos. */
.creator-page{
  width:min(1480px,calc(100% - 24px));
  max-width:none;
  margin:0 auto;
  padding:12px 0 112px;
}
.creator-hero{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:24px;
  min-height:210px;
  padding:32px;
  color:#fff;
  background:
    linear-gradient(110deg,rgba(15,23,42,.96),rgba(31,41,55,.9)),
    url("./assets/images/hero-food.svg") center/cover;
  border-radius:8px;
  overflow:hidden;
}
.creator-hero>div{max-width:780px}
.creator-hero small,.creator-avatar-intro small,.creator-section-head small{
  display:block;
  margin-bottom:5px;
  font-size:.72rem;
  font-weight:950;
  text-transform:uppercase;
  color:#22c7ee;
}
.creator-hero h1{margin:0;font-size:3.6rem;line-height:1.02}
.creator-hero p{max-width:690px;margin:10px 0 0;color:#dbeafe;line-height:1.55}
.creator-hero .ghost-btn{color:#111827;background:#fff}
.creator-editor-band{
  display:grid;
  grid-template-columns:minmax(360px,.88fr) minmax(420px,1.12fr);
  gap:22px;
  padding:28px 0;
  border-bottom:1px solid var(--line);
}
.creator-controls,.creator-preview,.creator-avatar-tools,.creator-timeline{
  min-width:0;
}
.creator-section-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}
.creator-section-head h2,.creator-section-head h3{margin:0}
.creator-upload{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:56px;
  margin:12px 0;
  padding:10px 14px;
  border:1px dashed #38bdf8;
  border-radius:8px;
  color:#0f172a;
  background:#f0f9ff;
  font-weight:900;
  cursor:pointer;
}
.creator-upload input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.creator-camera-actions{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}
.creator-camera-actions>*{flex:1 1 120px}
.creator-camera{
  display:block;
  width:100%;
  aspect-ratio:16/9;
  margin:8px 0 12px;
  object-fit:cover;
  border:1px solid var(--line);
  border-radius:8px;
  background:#0f172a;
}
.creator-camera[hidden]{display:none}
.creator-carousel{
  display:flex;
  gap:8px;
  min-height:74px;
  overflow-x:auto;
  overscroll-behavior-inline:contain;
  scrollbar-width:thin;
}
.creator-carousel:empty{display:none}
.creator-carousel-item{
  position:relative;
  flex:0 0 72px;
  width:72px;
  height:72px;
  padding:0;
  overflow:hidden;
  border:2px solid transparent;
  border-radius:8px;
  background:#e2e8f0;
  cursor:pointer;
}
.creator-carousel-item.is-active{border-color:#ff5b18;box-shadow:0 0 0 3px rgba(255,91,24,.16)}
.creator-carousel-item img{width:100%;height:100%;object-fit:cover}
.creator-carousel-item span{
  position:absolute;
  right:4px;
  bottom:4px;
  display:grid;
  place-items:center;
  width:20px;
  height:20px;
  border-radius:50%;
  color:#fff;
  background:rgba(15,23,42,.82);
  font-size:.7rem;
  font-weight:950;
}
.creator-ranges{display:grid;grid-template-columns:1fr 1fr;gap:9px 16px;margin:16px 0}
.creator-range{display:grid;grid-template-columns:minmax(76px,auto) minmax(90px,1fr) 38px;align-items:center;gap:8px}
.creator-range span{font-size:.78rem;font-weight:900;color:#475569}
.creator-range input{width:100%;accent-color:#ff5b18}
.creator-range b{text-align:right;font-size:.75rem;color:#0f172a}
.creator-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.creator-actions>*{flex:1 1 130px}
.creator-preview{display:grid;align-content:start;justify-items:center;gap:8px}
#creator-canvas{
  display:block;
  width:min(100%,640px);
  aspect-ratio:4/5;
  height:auto;
  border:1px solid #dce3ec;
  border-radius:8px;
  background:#eef2f7;
  box-shadow:0 18px 38px rgba(15,23,42,.12);
}
.creator-preview small{color:var(--muted);text-align:center}
.creator-effect-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.creator-effect-card{
  display:grid;
  grid-template-columns:54px minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  min-height:76px;
  padding:10px;
  border:1px solid var(--line);
  border-radius:8px;
  background:#fff;
}
.creator-effect-swatch{width:54px;height:54px;border-radius:6px;background:linear-gradient(135deg,#ff5b18,#22c7ee,#0f172a)}
.creator-effect-card>div:nth-child(2){display:grid;gap:2px;min-width:0}
.creator-effect-card b,.creator-effect-card span,.creator-effect-card small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.creator-effect-card span,.creator-effect-card small{color:var(--muted);font-size:.74rem}
.creator-effect-card.is-archived{opacity:.62;background:#f8fafc}
.creator-effect-actions{display:flex;align-items:center;gap:5px}
.creator-effect-actions .icon-btn{width:36px;height:36px;min-height:36px}
.creator-engineering-request{
  display:grid;
  grid-template-columns:minmax(220px,.7fr) minmax(280px,1.3fr) auto;
  align-items:end;
  gap:12px;
  margin-top:18px;
  padding:16px;
  border:1px solid var(--line);
  border-radius:8px;
  background:#f8fafc;
}
.creator-engineering-request>div{display:grid;gap:4px}
.creator-engineering-request textarea{min-height:92px;resize:vertical}
.creator-moment-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.creator-moment-card{
  display:grid;
  grid-template-columns:66px minmax(0,1fr);
  grid-template-areas:"media text" "media action";
  gap:5px 10px;
  min-width:0;
  padding:9px;
  border:1px solid var(--line);
  border-radius:8px;
  background:#fff;
}
.creator-moment-card>img,.creator-moment-placeholder{
  grid-area:media;
  width:66px;
  height:88px;
  object-fit:cover;
  border-radius:6px;
  background:#0f172a;
}
.creator-moment-placeholder{display:grid;place-items:center;color:#fff;font-weight:950}
.creator-moment-card>div{grid-area:text;display:grid;align-content:start;min-width:0}
.creator-moment-card b,.creator-moment-card small{overflow:hidden;text-overflow:ellipsis}
.creator-moment-card small{color:var(--muted)}
.creator-moment-card button{grid-area:action;min-height:34px}
.creator-moment-card.is-archived{opacity:.64}
.creator-avatar-stage{
  margin-top:18px;
  padding:30px;
  color:#e2e8f0;
  background:#111827;
  border-radius:8px;
}
.creator-avatar-intro{max-width:780px}
.creator-avatar-intro h2{margin:0;color:#fff;font-size:2rem}
.creator-avatar-intro p{color:#b9c7da;line-height:1.5}
.creator-avatar-tools{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}
.creator-avatar-tools .creator-upload{margin:0}
.creator-avatar-tools .field span,.creator-timeline .field span{color:#cbd5e1}
.creator-avatar-workspace{display:grid;grid-template-columns:minmax(320px,.82fr) minmax(420px,1.18fr);gap:16px}
.creator-body-canvas-wrap,.creator-three-wrap{min-width:0;overflow:hidden;border:1px solid #334155;border-radius:8px;background:#f8fafc}
#avatar-canvas{display:block;width:100%;height:auto;aspect-ratio:3/4;touch-action:none}
.creator-three-wrap{position:relative;min-height:540px}
#avatar-three-canvas{display:block;width:100%;height:100%;min-height:540px;touch-action:none}
#avatar-three-status{
  position:absolute;
  left:12px;
  right:12px;
  bottom:12px;
  margin:0;
  padding:8px 10px;
  border-radius:6px;
  color:#fff;
  background:rgba(15,23,42,.8);
  font-size:.78rem;
}
.creator-timeline{margin-top:20px;padding-top:18px;border-top:1px solid #334155}
.creator-keyframes{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.creator-keyframes>span{padding:7px 9px;border:1px solid #334155;border-radius:6px;background:#1f2937;font-size:.76rem}
.public-moments-strip{
  display:flex;
  gap:10px;
  margin:10px 0;
  padding:2px 0 8px;
  overflow-x:auto;
  overscroll-behavior-inline:contain;
}
.public-moment-card{
  position:relative;
  flex:0 0 112px;
  width:112px;
  height:168px;
  overflow:hidden;
  border:2px solid #fff;
  border-radius:8px;
  background:#0f172a;
  box-shadow:0 8px 24px rgba(15,23,42,.14);
  padding:0;
  border-width:2px;
  border-style:solid;
  appearance:none;
  cursor:pointer;
  text-align:left;
}
.public-moment-card img{width:100%;height:100%;object-fit:cover}
.public-moment-card small{
  position:absolute;
  top:8px;
  left:8px;
  z-index:2;
  padding:4px 7px;
  border-radius:999px;
  color:#fff;
  background:rgba(15,23,42,.76);
  font-size:.64rem;
  font-weight:900;
}
.public-moment-card span{
  position:absolute;
  right:0;
  bottom:0;
  left:0;
  padding:26px 7px 8px;
  overflow:hidden;
  color:#fff;
  background:linear-gradient(transparent,rgba(15,23,42,.86));
  font-size:.72rem;
  font-weight:900;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.public-moment-card em{
  position:absolute;
  right:8px;
  left:8px;
  bottom:34px;
  z-index:2;
  overflow:hidden;
  color:#fff;
  font-size:.64rem;
  font-style:normal;
  font-weight:850;
  text-overflow:ellipsis;
  text-shadow:0 2px 14px rgba(15,23,42,.52);
  white-space:nowrap;
}
.public-moment-viewer{
  width:min(96vw,540px);
  max-height:min(92vh,860px);
  padding:14px;
  display:grid;
  gap:12px;
}
.public-moment-viewer-media{
  overflow:hidden;
  border-radius:20px;
  background:#0f172a;
}
.public-moment-viewer-media img{
  display:block;
  width:100%;
  max-height:62vh;
  object-fit:cover;
}
.public-moment-viewer-copy{display:grid;gap:8px}
.public-moment-viewers{display:grid;gap:8px;padding:10px;border:1px solid var(--line);border-radius:16px;background:#f8fafc}
.public-moment-viewers a{color:#0284c7;font-size:.82rem;font-weight:850;text-decoration:none}
.stack-right{display:grid;justify-items:end;gap:8px}
.ad-post-carousel{
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:100%;
  width:100%;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  overscroll-behavior-inline:contain;
  scrollbar-width:thin;
}
.ad-post-carousel .ad-post-media{
  width:100%;
  scroll-snap-align:start;
  object-fit:cover;
}
.ad-carousel-count{
  position:absolute;
  top:10px;
  right:10px;
  z-index:2;
  padding:5px 8px;
  border-radius:999px;
  color:#fff;
  background:rgba(15,23,42,.78);
  font-size:.7rem;
  font-weight:900;
}
.ad-post-social-row.is-private-counts>span{font-style:italic;color:var(--muted)}

.social-notification-center{padding:0;overflow:hidden}
.social-notification-center summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;cursor:pointer;list-style:none}
.social-notification-center summary::-webkit-details-marker{display:none}
.social-notification-center summary span{display:grid;gap:2px}
.social-notification-center summary small,.social-notification-center summary em{color:var(--muted);font-size:.76rem;font-style:normal}
.social-notification-list{display:grid;gap:8px;padding:0 16px 12px}
.social-notification-list article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fff}
.social-notification-list article>div{display:grid;gap:2px}
.social-notification-list article span{color:var(--muted);font-size:.78rem}
.social-notification-list nav{display:flex;gap:8px}
.social-notification-list a{color:#0284c7;font-size:.78rem;font-weight:850;text-decoration:none}
.social-notification-center>[data-toggle-social-notifications]{margin:0 16px 14px}
.social-actor-list{display:grid;gap:8px}
.social-actor-list>a{display:flex;align-items:center;gap:10px;padding:8px;border:1px solid var(--line);border-radius:8px;color:var(--ink);text-decoration:none}
.social-actors-modal{max-width:460px}
.owner-withdrawal-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;margin-top:14px}
.owner-withdrawal-item{display:grid;gap:10px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#fff}
.owner-withdrawal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.owner-withdrawal-head>div{display:grid;gap:2px}
.owner-withdrawal-head b{font-size:1.2rem}
.owner-withdrawal-head span{color:var(--muted);font-size:.72rem}

@media (max-width:980px){
  .creator-editor-band,.creator-avatar-workspace{grid-template-columns:1fr}
  .creator-effect-grid,.creator-moment-list{grid-template-columns:1fr 1fr}
  .creator-engineering-request{grid-template-columns:1fr}
  .creator-three-wrap,#avatar-three-canvas{min-height:420px}
}

@media (max-width:620px){
  .public-profile-ref{align-items:stretch;flex-direction:column}
  .social-notification-list article{align-items:flex-start;flex-direction:column}
  .creator-page{width:calc(100% - 16px);max-width:calc(100vw - 16px);padding-top:8px;overflow-x:clip}
  .creator-page *{min-width:0}
  .creator-hero{align-items:flex-start;flex-direction:column;width:100%;max-width:100%;min-height:180px;padding:20px 16px}
  .creator-hero>div{width:100%;max-width:100%}
  .creator-hero h1{width:min(100%,310px);max-width:310px;font-size:2rem;white-space:normal;overflow-wrap:anywhere}
  .creator-hero p{width:min(100%,320px);max-width:320px;overflow-wrap:anywhere}
  .creator-editor-band{grid-template-columns:minmax(0,1fr);padding:20px 0}
  .creator-ranges{grid-template-columns:1fr}
  .creator-range{grid-template-columns:78px minmax(0,1fr);width:100%;max-width:100%;padding-right:12px}
  .creator-range input{width:calc(100% - 8px);min-width:0;max-width:100%}
  .creator-range b{display:none}
  .creator-upload,.creator-actions,.creator-preview{width:100%;max-width:100%}
  .creator-effect-grid,.creator-moment-list{grid-template-columns:1fr}
  .creator-effect-card{grid-template-columns:48px minmax(0,1fr) auto}
  .creator-effect-swatch{width:48px;height:48px}
  .creator-avatar-stage{padding:20px 12px}
  .creator-avatar-tools{grid-template-columns:1fr}
  .creator-avatar-tools .grid-2,.creator-timeline .grid-3{grid-template-columns:1fr}
  .creator-three-wrap,#avatar-three-canvas{min-height:340px}
}

/* XFartura v331: live estavel e enquadramento responsivo */
.live-video-grid{
  align-items:center;
  justify-items:center;
}
.live-video-grid.is-vertical .live-video-tile{
  width:min(100%,430px);
  min-height:0;
  aspect-ratio:9 / 16;
}
.live-video-grid.is-horizontal .live-video-tile{
  width:100%;
  min-height:0;
  aspect-ratio:16 / 9;
}
.live-video-grid.is-vertical .live-video-tile video,
.live-video-grid.is-horizontal .live-video-tile video{
  min-height:0;
  aspect-ratio:inherit;
}
.live-meta-grid>[data-live-chat]{
  min-width:0;
}
.live-meta-grid .xf-chat{
  overflow:hidden;
}

@media (min-width:761px){
  .live-meta-grid>[data-live-chat]{
    position:sticky;
    top:92px;
  }
}

@media (max-width:760px){
  .live-video-grid{
    min-height:0;
    padding:8px;
  }
  .live-video-grid.is-vertical .live-video-tile{
    width:min(100%,340px);
  }
  .live-video-grid.is-horizontal .live-video-tile{
    width:100%;
  }
  .live-meta-grid .xf-chat-messages{
    min-height:180px;
    max-height:46vh;
  }
}

@media (max-width:720px){
  .ad-photo-viewer-card{
    width:min(100%,100%);
    max-height:min(96vh,1000px);
    padding:12px;
  }
  .ad-photo-viewer-stage{
    min-height:58vh;
  }
  .ad-photo-viewer-nav{
    width:44px;
    height:44px;
    margin-top:-22px;
    border-radius:14px;
    font-size:1.7rem;
  }
}
