/* ==========================================================================   GW SHARE RAIL — v1.0   GlobalizeWe Edge Inc. · brand-locked share surface   Palette and type follow GW Typography v2. Every value below is a token.   ========================================================================== */.gws-root {  --gws-ink:        #000000;  --gws-paper:      #FFFFFF;  --gws-cyan:       #2596BE;  --gws-cyan-neon:  #3FDCF7;  --gws-cyan-light: #70E9FC;  --gws-cyan-deep:  #008FC7;  --gws-orange:     #FF6A00;  --gws-gray:       rgba(255,255,255,.62);  --gws-lgray:      rgba(255,255,255,.72);  --gws-hair:       rgba(255, 255, 255, 0.10);  --gws-panel:      rgba(255,255,255,.04);  --gws-chip:       rgba(255,255,255,.04);  --gws-display: "Montserrat", "Helvetica Neue", Arial, sans-serif;  --gws-body:    "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;  --gws-mono:    ui-monospace, "SF Mono", "Courier New", monospace;  --gws-ease: cubic-bezier(0.22, 1, 0.36, 1);}.gws-root *,.gws-root *::before,.gws-root *::after { box-sizing: border-box; }/* ---------- Scrim ---------- */.gws-scrim {  position: fixed;  inset: 0;  z-index: 9998;  background: rgba(0, 0, 0, 0.72);  backdrop-filter: blur(6px);  -webkit-backdrop-filter: blur(6px);  opacity: 0;  transition: opacity 220ms var(--gws-ease);  display: flex;  align-items: flex-end;  justify-content: center;}.gws-scrim[data-open="true"] { opacity: 1; }/* `display` rules outrank the hidden attribute — restore it explicitly   or the invisible scrim keeps intercepting clicks on the whole page. */.gws-scrim[hidden],.gws-pill[hidden],.gws-toast[hidden] { display: none !important; }/* ---------- Sheet ---------- */.gws-sheet {  position: relative;  width: 100%;  max-width: 560px;  max-height: 92vh;  overflow-y: auto;  background: var(--gws-panel);  border-top: 1px solid var(--gws-hair);  border-radius: 18px 18px 0 0;  transform: translateY(18px);  transition: transform 260ms var(--gws-ease);  padding-bottom: env(safe-area-inset-bottom, 12px);}.gws-scrim[data-open="true"] .gws-sheet { transform: translateY(0); }.gws-grip {  width: 46px;  height: 4px;  border-radius: 2px;  background: var(--gws-lgray);  opacity: 0.5;  margin: 10px auto 0;}/* ---------- Subject band (mirrors the production cover band) ---------- */.gws-band {  padding: 20px 22px 16px;  border-bottom: 1px solid var(--gws-hair);}.gws-eyebrow {  font-family: var(--gws-display);  font-weight: 700;  font-size: 10px;  letter-spacing: 0.16em;  text-transform: uppercase;  color: var(--gws-cyan);  margin: 0 0 10px;  display: flex;  align-items: center;  gap: 10px;}.gws-eyebrow span { color: var(--gws-lgray); font-weight: 500; letter-spacing: 0.10em; }.gws-rule {  height: 2px;  width: 34px;  background: var(--gws-orange);  border: 0;  margin: 0 0 12px;}.gws-title {  font-family: var(--gws-display);  font-weight: 700;  font-size: 17px;  line-height: 1.28;  color: var(--gws-paper);  margin: 0 0 8px;}.gws-url {  font-family: var(--gws-mono);  font-size: 11px;  line-height: 1.5;  color: var(--gws-lgray);  word-break: break-all;  margin: 0;}/* Selected passage, carried into the share */.gws-quote {  margin: 14px 0 0;  padding: 2px 0 2px 14px;  border-left: 3px solid var(--gws-orange);  font-family: var(--gws-body);  font-style: italic;  font-size: 14px;  line-height: 1.5;  color: var(--gws-cyan-light);}/* ---------- Target grid ---------- */.gws-section-label {  font-family: var(--gws-display);  font-weight: 700;  font-size: 10px;  letter-spacing: 0.16em;  text-transform: uppercase;  color: var(--gws-lgray);  padding: 18px 22px 12px;  margin: 0;}.gws-grid {  display: grid;  grid-template-columns: repeat(4, 1fr);  gap: 6px 4px;  padding: 0 14px 6px;}.gws-target {  appearance: none;  background: none;  border: 0;  padding: 10px 4px 12px;  border-radius: 12px;  cursor: pointer;  display: flex;  flex-direction: column;  align-items: center;  gap: 9px;  font-family: var(--gws-body);  font-size: 11px;  color: var(--gws-lgray);  transition: color 140ms var(--gws-ease), background 140ms var(--gws-ease);}.gws-target:hover,.gws-target:focus-visible { color: var(--gws-paper); background: rgba(255, 255, 255, 0.04); }.gws-target:focus-visible { outline: 2px solid var(--gws-cyan-neon); outline-offset: -2px; }.gws-glyph {  width: 46px;  height: 46px;  border-radius: 50%;  background: var(--gws-chip);  border: 1px solid var(--gws-hair);  display: grid;  place-items: center;  transition: border-color 140ms var(--gws-ease), background 140ms var(--gws-ease);}.gws-target:hover .gws-glyph,.gws-target:focus-visible .gws-glyph { border-color: var(--gws-cyan); background: rgba(255,255,255,.04); }.gws-glyph svg { width: 20px; height: 20px; display: block; }.gws-glyph svg [stroke] { stroke: var(--gws-cyan-neon); }.gws-glyph svg [fill]:not([fill="none"]) { fill: var(--gws-cyan-neon); }/* ---------- Copy row ---------- */.gws-copy {  margin: 8px 14px 0;  width: calc(100% - 28px);  appearance: none;  cursor: pointer;  display: flex;  align-items: center;  gap: 12px;  padding: 14px 16px;  border-radius: 12px;  background: var(--gws-chip);  border: 1px solid var(--gws-hair);  font-family: var(--gws-body);  font-size: 14px;  color: var(--gws-paper);  text-align: left;  transition: border-color 140ms var(--gws-ease);}.gws-copy:hover, .gws-copy:focus-visible { border-color: var(--gws-cyan); }.gws-copy:focus-visible { outline: 2px solid var(--gws-cyan-neon); outline-offset: 2px; }.gws-copy svg { width: 18px; height: 18px; flex: none; }.gws-copy svg [stroke] { stroke: var(--gws-cyan-neon); }.gws-copy[data-state="done"] { border-color: var(--gws-cyan); color: var(--gws-cyan-light); }/* ---------- Receipt ---------- */.gws-receipt {  margin: 14px 14px 8px;  padding: 12px 16px;  border-top: 1px solid var(--gws-hair);  font-family: var(--gws-mono);  font-size: 10.5px;  line-height: 1.7;  color: var(--gws-gray);  min-height: 44px;}.gws-receipt b {  color: var(--gws-cyan);  font-weight: 400;  letter-spacing: 0.04em;}.gws-receipt em { font-style: normal; color: var(--gws-lgray); }.gws-receipt[data-empty="true"] { color: rgba(255,255,255,.28); }/* ---------- Close ---------- */.gws-close {  position: absolute;  top: 14px;  right: 14px;  width: 32px;  height: 32px;  border-radius: 50%;  border: 1px solid var(--gws-hair);  background: var(--gws-chip);  color: var(--gws-lgray);  cursor: pointer;  display: grid;  place-items: center;  font-family: var(--gws-body);  font-size: 16px;  line-height: 1;  transition: color 140ms var(--gws-ease), border-color 140ms var(--gws-ease);}.gws-close:hover { color: var(--gws-paper); border-color: var(--gws-cyan); }.gws-close:focus-visible { outline: 2px solid var(--gws-cyan-neon); outline-offset: 2px; }/* ---------- Selection pill ---------- */.gws-pill {  position: absolute;  z-index: 9997;  transform: translate(-50%, -100%);  margin-top: -10px;  appearance: none;  cursor: pointer;  display: inline-flex;  align-items: center;  gap: 8px;  padding: 9px 14px;  border-radius: 999px;  background: var(--gws-ink);  border: 1px solid var(--gws-cyan);  box-shadow: 0 6px 24px rgba(0, 0, 0, 0.5);  font-family: var(--gws-display);  font-weight: 700;  font-size: 10px;  letter-spacing: 0.14em;  text-transform: uppercase;  color: var(--gws-cyan-light);  opacity: 0;  transition: opacity 160ms var(--gws-ease);}.gws-pill[data-open="true"] { opacity: 1; }.gws-pill svg { width: 13px; height: 13px; }.gws-pill svg [stroke] { stroke: var(--gws-cyan-light); }.gws-pill svg [fill]:not([fill="none"]) { fill: var(--gws-cyan-light); }/* Quote sharing reads the reader's selection, so the selection is branded. */[data-gw-article] ::selection,[data-gw-article]::selection { background: #008FC7; color: #FFFFFF; }/* ---------- Section anchor marker ---------- */.gws-anchor {  appearance: none;  border: 0;  background: none;  cursor: pointer;  padding: 0 0 0 12px;  vertical-align: middle;  opacity: 0;  transition: opacity 140ms var(--gws-ease);}.gws-anchor svg { width: 16px; height: 16px; }.gws-anchor svg [stroke] { stroke: var(--gws-cyan-deep); }:hover > .gws-anchor,.gws-anchor:focus-visible { opacity: 1; }.gws-anchor:focus-visible { outline: 2px solid var(--gws-cyan-neon); outline-offset: 3px; border-radius: 4px; }.gws-anchor:hover svg [stroke] { stroke: var(--gws-cyan-neon); }/* ---------- Toast ---------- */.gws-toast {  position: fixed;  left: 50%;  bottom: 28px;  transform: translate(-50%, 12px);  z-index: 9999;  padding: 11px 18px;  border-radius: 999px;  background: var(--gws-ink);  border: 1px solid var(--gws-cyan);  font-family: var(--gws-mono);  font-size: 11px;  color: var(--gws-cyan-light);  opacity: 0;  pointer-events: none;  transition: opacity 180ms var(--gws-ease), transform 180ms var(--gws-ease);}.gws-toast[data-open="true"] { opacity: 1; transform: translate(-50%, 0); }/* ---------- Trigger button (optional, for host pages) ---------- */.gws-trigger {  appearance: none;  cursor: pointer;  display: inline-flex;  align-items: center;  gap: 9px;  padding: 10px 18px;  border-radius: 999px;  background: transparent;  border: 1px solid var(--gws-cyan-deep);  font-family: var(--gws-display);  font-weight: 700;  font-size: 11px;  letter-spacing: 0.14em;  text-transform: uppercase;  color: var(--gws-cyan);  transition: border-color 140ms var(--gws-ease), color 140ms var(--gws-ease);}.gws-trigger:hover { border-color: var(--gws-cyan-neon); color: var(--gws-cyan-neon); }.gws-trigger:focus-visible { outline: 2px solid var(--gws-cyan-neon); outline-offset: 3px; }.gws-trigger svg { width: 15px; height: 15px; }.gws-trigger svg [stroke] { stroke: currentColor; }/* ---------- Desktop ---------- */@media (min-width: 700px) {  .gws-scrim { align-items: center; }  .gws-sheet { border-radius: 16px; border: 1px solid var(--gws-hair); max-height: 88vh; }  .gws-grip { display: none; }  .gws-band { padding-top: 26px; }  .gws-grid { grid-template-columns: repeat(5, 1fr); }}/* ---------- Light host pages ---------- */.gws-root[data-surface="light"] .gws-anchor svg [stroke] { stroke: var(--gws-cyan-deep); }/* ---------- Motion preference ---------- */@media (prefers-reduced-motion: reduce) {  .gws-scrim, .gws-sheet, .gws-pill, .gws-toast, .gws-target, .gws-glyph, .gws-copy {    transition-duration: 1ms !important;  }  .gws-sheet { transform: none !important; }}