/* Alpha signature — shared by every layout: Alpha Island, scroll-edge scrim, chat, splash, Powered by Alpha.
   Glass rule we learned on KAI/Lamiz: never put a backdrop-filter inside another one, and never give a glass
   element's ancestors filter/opacity/will-change, or the inner glass blurs nothing. Every glass piece here is
   a direct child of body or of a plain container. */
:root{--spring:cubic-bezier(.34,1.4,.44,1);--ease:cubic-bezier(.16,.9,.24,1);--blur:blur(26px) saturate(200%)}

/* ---------- Alpha Island ---------- */
.island{position:fixed;z-index:70;top:calc(env(safe-area-inset-top,0px) + 10px);left:0;right:0;padding:0 12px;display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none}
.island>*{pointer-events:auto}
.isl-pill{display:flex;align-items:center;gap:9px;max-width:100%;height:40px;padding:0 16px 0 14px;border-radius:999px;border:1px solid var(--glass-line);background:var(--glass);color:var(--ink);font:inherit;font-size:13.5px;font-weight:500;line-height:1;box-shadow:var(--glass-shadow);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);cursor:pointer;transition:transform .38s var(--spring);-webkit-tap-highlight-color:transparent}
.isl-pill:active{transform:scale(.95)}
.isl-dot{width:8px;height:8px;border-radius:50%;background:#9AA0A6;flex:none}
.island.is-open .isl-dot{background:#22A55A;box-shadow:0 0 0 0 rgba(34,165,90,.5);animation:islPulse 2.4s infinite}
.island.is-closed .isl-dot{background:#E5484D}
@keyframes islPulse{0%{box-shadow:0 0 0 0 rgba(34,165,90,.45)}70%{box-shadow:0 0 0 7px rgba(34,165,90,0)}100%{box-shadow:0 0 0 0 rgba(34,165,90,0)}}
.isl-status,.isl-name{white-space:nowrap;font-weight:700}
.isl-news{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;max-width:44vw;color:var(--muted);padding-inline-start:9px;border-inline-start:1px solid var(--glass-line)}
.isl-panel{width:min(100%,400px);border-radius:28px;padding:16px;display:grid;gap:12px;background:var(--glass-strong);border:1px solid var(--glass-line);box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(30px) saturate(200%);backdrop-filter:blur(30px) saturate(200%);color:var(--ink);transform-origin:top center;animation:islIn .46s var(--spring)}
@keyframes islIn{from{opacity:0;transform:translateY(-10px) scale(.9)}to{opacity:1;transform:none}}
.isl-head{display:flex;align-items:center;gap:12px}
.isl-head>div{flex:1;display:grid;line-height:1.45}
.isl-head b{font-size:17px;font-weight:800}
.isl-head .isl-status{font-size:13px;color:var(--muted);font-weight:500}
.island.is-open .isl-head .isl-status{color:#1E8C4D}
.dark .island.is-open .isl-head .isl-status,.island.dark .isl-head .isl-status{color:#5BD08A}
.isl-logo{width:46px;height:46px;border-radius:15px;object-fit:cover;flex:none}
.isl-logo.mono,.chat-av.mono,.g-logo.mono,.splash-logo.mono{display:grid;place-items:center;background:var(--accent);color:var(--onaccent);font-weight:800;font-size:22px}
.isl-x{width:32px;height:32px;border-radius:50%;border:0;background:var(--pill-on);color:var(--ink);font-size:20px;line-height:1;cursor:pointer}
.isl-ann{margin:0;padding:10px 12px;border-radius:16px;background:var(--accent);color:var(--onaccent);font-weight:700;font-size:14.5px}
.isl-meta{margin:0;color:var(--muted);font-size:13px;line-height:1.7}
.isl-acts{display:grid;grid-template-columns:repeat(auto-fit,minmax(70px,1fr));gap:8px}
.isl-acts a,.isl-acts button{display:grid;justify-items:center;gap:5px;padding:11px 4px 9px;border-radius:18px;border:0;background:var(--pill-on);color:var(--ink);font:inherit;font-size:12.5px;font-weight:500;text-decoration:none;cursor:pointer;transition:transform .25s var(--spring)}
.isl-acts a:active,.isl-acts button:active{transform:scale(.94)}
.isl-acts svg,.li-ic svg,.chat-fab svg,.chat-send svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.isl-ios{margin:0;font-size:12.5px;color:var(--muted)}

/* scroll-edge scrim behind the island: content fades out under it instead of a hard bar */
.scrim{position:fixed;z-index:65;top:0;left:0;right:0;height:calc(env(safe-area-inset-top,0px) + 66px);background:linear-gradient(var(--bg) 62%,transparent);opacity:0;transition:opacity .25s;pointer-events:none}
html.scrolled .scrim{opacity:1}

/* ---------- Powered by Alpha Agency ---------- */
.powered{display:flex;align-items:center;gap:14px;margin-top:26px;padding-top:20px;border-top:1px solid var(--line);text-decoration:none;color:var(--ink);transition:opacity .2s}
.powered:hover{opacity:.8}
.alpha-mark{height:44px;width:auto;flex:none}
.powered-txt{display:grid;gap:1px;text-align:left}
.powered-txt .pb{font-size:9.5px;letter-spacing:.26em;text-transform:uppercase;color:var(--muted);font-weight:500}
.powered-txt .pa{font-size:18px;font-weight:700;letter-spacing:-.01em;line-height:1.15}

/* ---------- chat ---------- */
.chat{display:flex;flex-direction:column;gap:12px}
.chat-head{display:flex;align-items:center;gap:12px}
.chat-head>div{display:grid;line-height:1.45}
.chat-head b{font-size:16px;font-weight:800}
.chat-head small{font-size:12.5px;color:var(--muted)}
.chat-head small.on{color:#1E8C4D}
.dark .chat-head small.on{color:#5BD08A}
.chat-av{width:46px;height:46px;border-radius:15px;object-fit:cover;flex:none}
.chat-note{margin:0;font-size:13px;line-height:1.75;color:var(--muted);background:var(--surface);border:1px dashed var(--line);border-radius:16px;padding:10px 12px}
.chat-intro{display:grid;gap:10px}
.field{display:grid;gap:4px;font-size:13px;color:var(--muted)}
.field input{font:inherit;font-size:16px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:11px 13px;width:100%}
.field input:focus,.chat-form input:focus{outline:2px solid var(--accent);outline-offset:1px}
.chat-err{margin:0;color:#D13B40;font-size:13px}
.chat-log{display:flex;flex-direction:column;gap:6px}
.chat-log:empty{display:none}
.msg{max-width:84%;padding:8px 13px 6px;border-radius:19px;font-size:15px;line-height:1.65;white-space:pre-line;overflow-wrap:anywhere;animation:msgIn .32s var(--spring)}
@keyframes msgIn{from{transform:translateY(6px) scale(.97)}to{transform:none}}
.msg.me{align-self:flex-start;background:var(--accent);color:var(--onaccent);border-end-start-radius:6px}
.msg.them{align-self:flex-end;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-end-end-radius:6px}
.msg.order{background:var(--surface);color:var(--ink);border:1.5px solid var(--accent)}
.msg.order::before{content:"سفارش";display:block;font-size:11px;font-weight:700;color:var(--muted);margin-bottom:2px}
.msg time{display:block;font-size:10.5px;opacity:.6;margin-top:1px;text-align:end}
.msg.pending{opacity:.6}
.chat-day{align-self:center;font-size:11.5px;color:var(--muted);padding:2px 10px}
.chat-form{display:flex;gap:8px;align-items:center}
.chat-form input{flex:1;min-width:0;font:inherit;font-size:16px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:11px 16px}
.chat-send{width:46px;height:46px;flex:none;border-radius:50%;border:0;background:var(--accent);color:var(--onaccent);display:grid;place-items:center;cursor:pointer;transition:transform .25s var(--spring)}
.chat-send:active{transform:scale(.9)}
.chat-send svg{transform:scaleX(-1)}

/* chat button + sheet on classic layouts */
.chat-fab{position:fixed;z-index:11;left:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));width:56px;height:56px;border-radius:50%;border:1px solid var(--glass-line);background:var(--glass);color:var(--ink);box-shadow:var(--glass-shadow);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);display:grid;place-items:center;cursor:pointer;transition:transform .3s var(--spring),bottom .3s var(--ease)}
.chat-fab:active{transform:scale(.92)}
.chat-fab svg{width:25px;height:25px}
body.has-cart .chat-fab{bottom:calc(84px + env(safe-area-inset-bottom,0px))}
.chat-sheet .sheet-in{max-height:86vh;overflow-y:auto}
.badge{position:absolute;top:2px;right:calc(50% - 22px);min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#E5484D;color:#fff;font-size:11px;font-weight:700;line-height:18px;text-align:center;font-style:normal}
.chat-fab .badge{top:-2px;right:-2px}

/* ---------- splash (glass layouts) ---------- */
#splash{display:none}
.splashing #splash{position:fixed;inset:0;z-index:200;display:grid;place-items:center;background:var(--bg);transition:opacity .5s ease,visibility .5s ease}
#splash.gone{opacity:0;visibility:hidden}
.splash-logo{width:min(34vw,132px);height:min(34vw,132px);border-radius:32%;object-fit:cover;opacity:0;transform:scale(.92);animation:splashIn .9s var(--ease) forwards}
.splash-logo.mono{font-size:54px}
.splash-bar{position:absolute;bottom:18%;left:50%;transform:translateX(-50%);width:92px;height:2px;border-radius:2px;background:var(--line);overflow:hidden}
.splash-bar i{display:block;height:100%;width:40%;border-radius:inherit;background:var(--accent);animation:splashBar 1.15s ease-in-out infinite}
@keyframes splashIn{to{opacity:1;transform:scale(1)}}
@keyframes splashBar{0%{transform:translateX(-120%)}100%{transform:translateX(320%)}}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .splash-logo{opacity:1;transform:none}
}
@media (prefers-reduced-transparency:reduce){
  .isl-pill,.isl-panel,.chat-fab,.dock,.g-chips a{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:var(--surface)!important}
}
