/* Selectido Sofi Service Navigator — isolated visual upgrade */
#modal-concierge.cg-ov{
  --sn-ink:#13283f;
  --sn-muted:#64758a;
  --sn-line:#dfe7ef;
  --sn-soft:#f4f7fa;
  --sn-cyan:#13b9d2;
  --sn-cyan-soft:#e8fafd;
  --sn-navy:#142d47;
  background:rgba(8,22,38,.46)!important;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  padding:18px!important;
  align-items:center!important;
}
#modal-concierge .cg-sheet{
  width:min(680px,100%)!important;
  max-width:680px!important;
  height:min(760px,calc(100dvh - 36px))!important;
  max-height:760px!important;
  border-radius:24px!important;
  overflow:hidden!important;
  background:#fff!important;
  border:1px solid rgba(255,255,255,.65)!important;
  box-shadow:0 28px 80px rgba(10,31,52,.28)!important;
  display:flex!important;
  flex-direction:column!important;
}
#modal-concierge .cg-head{
  flex:0 0 auto!important;
  min-height:78px!important;
  padding:14px 18px!important;
  gap:12px!important;
  background:linear-gradient(135deg,#122a43 0%,#183d5d 100%)!important;
  color:#fff!important;
  border:0!important;
}
#modal-concierge .cg-back,
#modal-concierge .cg-head-ic{
  width:38px!important;height:38px!important;border-radius:12px!important;
  display:grid!important;place-items:center!important;
  color:#fff!important;background:rgba(255,255,255,.09)!important;
  border:1px solid rgba(255,255,255,.13)!important;
}
#modal-concierge .cg-back{font-size:29px!important;line-height:1!important;}
#modal-concierge .cg-back:hover,
#modal-concierge .cg-head-ic:hover{background:rgba(255,255,255,.16)!important;}
#modal-concierge .cg-avatar{
  width:42px!important;height:42px!important;border-radius:14px!important;
  color:#0f2b42!important;background:linear-gradient(145deg,#d9fbff,#77dfed)!important;
  font-size:18px!important;font-weight:900!important;
  border:1px solid rgba(255,255,255,.7)!important;
  box-shadow:0 6px 16px rgba(0,0,0,.14)!important;
}
#modal-concierge .cg-name{font-size:16px!important;font-weight:850!important;letter-spacing:-.01em!important;}
#modal-concierge .cg-sub{font-size:11.5px!important;color:#c4d8e8!important;opacity:1!important;letter-spacing:.01em!important;}
#modal-concierge .cg-thread{
  flex:1 1 auto!important;
  min-height:0!important;
  padding:0!important;
  background:#f7f9fb!important;
  background-image:radial-gradient(circle at 90% 0%,rgba(19,185,210,.08),transparent 30%)!important;
  overflow-y:auto!important;
  overscroll-behavior:contain;
}
#modal-concierge .cg-input-bar{
  flex:0 0 auto!important;
  padding:12px 14px max(12px,env(safe-area-inset-bottom))!important;
  gap:9px!important;
  background:#fff!important;
  border-top:1px solid var(--sn-line)!important;
}
#modal-concierge .cg-input-wrap{
  min-height:44px!important;border-radius:14px!important;
  border:1px solid #d8e2eb!important;background:#f8fafc!important;
  box-shadow:none!important;
}
#modal-concierge .cg-input{font-size:14px!important;color:var(--sn-ink)!important;padding:0 14px!important;}
#modal-concierge .cg-input::placeholder{color:#8392a3!important;}
#modal-concierge .cg-btn{
  width:42px!important;height:42px!important;border-radius:13px!important;
  color:#fff!important;background:var(--sn-navy)!important;border:0!important;
  box-shadow:none!important;
}
#modal-concierge .cg-btn.mic{color:#53677d!important;background:#eef3f7!important;}
#modal-concierge .cg-btn.listening{color:#fff!important;background:#d94b55!important;}

.sn-home{padding:24px 24px 28px;color:var(--sn-ink);}
.sn-eyebrow{display:flex;align-items:center;gap:7px;color:#24798a;font-size:10.5px;font-weight:850;letter-spacing:.11em;text-transform:uppercase;}
.sn-eyebrow-dot{width:7px;height:7px;border-radius:999px;background:#26b88d;box-shadow:0 0 0 4px rgba(38,184,141,.12);}
.sn-home h2{margin:11px 0 7px;font-size:28px;line-height:1.08;letter-spacing:-.035em;color:var(--sn-ink);}
.sn-intro{max-width:520px;margin:0;color:var(--sn-muted);font-size:13.5px;line-height:1.55;}
.sn-snapshot{display:flex;align-items:center;gap:10px;margin:18px 0 20px;padding:12px 14px;border:1px solid #d7e9ed;border-radius:15px;background:linear-gradient(135deg,#f1fcfd,#f7fafc);}
.sn-snapshot-icon{width:35px;height:35px;border-radius:11px;background:#fff;border:1px solid #d5edf1;display:grid;place-items:center;color:#14869a;flex:0 0 auto;}
.sn-snapshot-copy{min-width:0;flex:1;}
.sn-snapshot-copy strong{display:block;font-size:12.5px;color:var(--sn-ink);}
.sn-snapshot-copy span{display:block;margin-top:2px;font-size:11.5px;color:var(--sn-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.sn-label{margin:0 0 9px;font-size:11px;font-weight:850;color:#5c6f84;letter-spacing:.085em;text-transform:uppercase;}
.sn-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.sn-service{
  appearance:none;-webkit-appearance:none;text-align:left;font-family:inherit;cursor:pointer;
  min-height:78px;padding:13px;border:1px solid var(--sn-line);border-radius:16px;background:#fff;color:var(--sn-ink);
  display:grid;grid-template-columns:36px 1fr 18px;align-items:center;gap:10px;
  box-shadow:0 4px 14px rgba(19,40,63,.035);transition:transform .16s,border-color .16s,box-shadow .16s;
}
.sn-service:hover{transform:translateY(-1px);border-color:#a9dce5;box-shadow:0 9px 22px rgba(19,40,63,.08);}
.sn-service:focus-visible{outline:3px solid rgba(19,185,210,.22);outline-offset:2px;}
.sn-service-icon{width:36px;height:36px;border-radius:12px;background:var(--sn-soft);display:grid;place-items:center;color:#334f6b;}
.sn-service-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.sn-service.featured .sn-service-icon{background:var(--sn-cyan-soft);color:#087f92;}
.sn-service-copy{min-width:0;}
.sn-service-copy strong{display:block;font-size:12.8px;line-height:1.25;}
.sn-service-copy span{display:block;margin-top:3px;font-size:10.7px;line-height:1.3;color:var(--sn-muted);}
.sn-arrow{font-size:20px;color:#8da0b2;line-height:1;}
.sn-popular{display:flex;gap:7px;overflow-x:auto;padding:1px 1px 4px;margin:10px -1px 0;scrollbar-width:none;}
.sn-popular::-webkit-scrollbar{display:none;}
.sn-pill{white-space:nowrap;border:1px solid #dbe4ec;background:#fff;color:#42596f;border-radius:999px;padding:8px 11px;font:750 10.8px/1 inherit;cursor:pointer;}
.sn-pill:hover{border-color:#9fd6df;background:#f2fcfd;color:#176f7f;}
.sn-human{margin-top:18px;padding-top:15px;border-top:1px solid var(--sn-line);display:flex;align-items:center;gap:10px;}
.sn-human-copy{min-width:0;flex:1;}
.sn-human-copy strong{display:block;font-size:12.3px;color:var(--sn-ink);}
.sn-human-copy span{display:block;margin-top:2px;font-size:10.8px;color:var(--sn-muted);}
.sn-human-btn,.sn-primary,.sn-secondary{
  appearance:none;-webkit-appearance:none;border-radius:11px;font-family:inherit;font-weight:800;cursor:pointer;
}
.sn-human-btn{border:1px solid #cfe2e7;background:#effbfd;color:#14788a;padding:9px 11px;font-size:10.8px;white-space:nowrap;}

.sn-detail{padding:22px 24px 28px;color:var(--sn-ink);}
.sn-detail-back{border:0;background:none;color:#4c667e;padding:0 0 12px;font:800 11.5px/1 inherit;cursor:pointer;display:flex;align-items:center;gap:5px;}
.sn-detail-card{background:#fff;border:1px solid var(--sn-line);border-radius:20px;padding:21px;box-shadow:0 8px 28px rgba(19,40,63,.055);}
.sn-detail-top{display:flex;align-items:center;gap:12px;margin-bottom:14px;}
.sn-detail-icon{width:44px;height:44px;border-radius:14px;background:var(--sn-cyan-soft);color:#087f92;display:grid;place-items:center;}
.sn-detail-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.sn-detail h2{margin:0;font-size:21px;line-height:1.15;letter-spacing:-.025em;}
.sn-detail-lead{margin:0 0 15px;color:var(--sn-muted);font-size:13px;line-height:1.55;}
.sn-facts{display:grid;gap:8px;margin:0 0 17px;}
.sn-fact{display:flex;align-items:flex-start;gap:9px;padding:10px 11px;border-radius:12px;background:#f5f8fa;color:#41576c;font-size:11.8px;line-height:1.45;}
.sn-check{width:18px;height:18px;border-radius:999px;background:#dff7f0;color:#158265;display:grid;place-items:center;flex:0 0 auto;font-size:11px;font-weight:900;}
.sn-note{margin:0 0 17px;padding:11px 12px;border:1px solid #f0dfb8;border-radius:12px;background:#fff9eb;color:#6f551d;font-size:11.5px;line-height:1.45;}
.sn-actions{display:flex;flex-wrap:wrap;gap:8px;}
.sn-primary{border:1px solid var(--sn-navy);background:var(--sn-navy);color:#fff;padding:11px 14px;font-size:11.5px;}
.sn-secondary{border:1px solid #d4e0e9;background:#fff;color:#344e67;padding:11px 14px;font-size:11.5px;}
.sn-answer-list{display:grid;gap:8px;margin-top:13px;}
.sn-answer{border:1px solid var(--sn-line);background:#fff;border-radius:14px;padding:12px 13px;color:#455b70;font-size:11.8px;line-height:1.45;}
.sn-answer strong{display:block;color:var(--sn-ink);margin-bottom:3px;}
.sn-store-paths{display:grid;gap:8px;margin:4px 0 15px;}
.sn-store-path{
  appearance:none;-webkit-appearance:none;width:100%;border:1px solid var(--sn-line);border-radius:13px;background:#f8fafc;
  color:var(--sn-ink);padding:11px;display:grid;grid-template-columns:28px 1fr 14px;align-items:center;gap:9px;text-align:left;font-family:inherit;cursor:pointer;
  transition:border-color .15s,background .15s,transform .15s;
}
.sn-store-path:hover{border-color:#a9dce5;background:#f2fcfd;transform:translateY(-1px);}
.sn-store-path:focus-visible{outline:3px solid rgba(19,185,210,.2);outline-offset:2px;}
.sn-store-num{width:28px;height:28px;border-radius:9px;background:#e8fafd;color:#0b8093;display:grid;place-items:center;font-size:11px;font-weight:900;}
.sn-store-path strong{display:block;font-size:12px;line-height:1.25;}
.sn-store-path small{display:block;margin-top:3px;color:var(--sn-muted);font-size:10.4px;line-height:1.35;}
.sn-store-path b{color:#8da0b2;font-size:18px;}

@media(max-width:640px){
  #modal-concierge.cg-ov{padding:0!important;align-items:flex-end!important;}
  #modal-concierge .cg-sheet{width:100%!important;max-width:none!important;height:min(92dvh,820px)!important;max-height:92dvh!important;border-radius:24px 24px 0 0!important;border-bottom:0!important;}
  #modal-concierge .cg-head{min-height:70px!important;padding:11px 14px!important;}
  #modal-concierge .cg-avatar{width:39px!important;height:39px!important;border-radius:13px!important;}
  .sn-home,.sn-detail{padding:19px 16px 24px;}
  .sn-home h2{font-size:24px;}
  .sn-grid{gap:8px;}
  .sn-service{min-height:84px;padding:11px 10px;grid-template-columns:34px 1fr 13px;gap:8px;border-radius:14px;}
  .sn-service-icon{width:34px;height:34px;}
  .sn-service-copy strong{font-size:11.8px;}
  .sn-service-copy span{font-size:9.8px;}
  .sn-human{align-items:flex-start;}
  .sn-human-btn{padding:9px 10px;}
  .sn-detail-card{padding:17px;border-radius:17px;}
}

@media(max-width:390px){
  .sn-grid{grid-template-columns:1fr;}
  .sn-service{min-height:68px;}
}

@media(prefers-reduced-motion:reduce){
  .sn-service{transition:none!important;}
}
