/* ===========================
   GlassWires (scoped)
   =========================== */

#gwRoot{
  /* ------------------------------------------------------------
     THEME TOKENS (default = dark)
     Toggle by setting: #gwRoot[data-theme="light"]
  ------------------------------------------------------------ */

  /* semantic colors */
  --gw-text: rgba(226, 232, 240, 1.0);
  --gw-text-dim: rgba(226, 232, 240, 1.0);
  --gw-border: rgba(148, 163, 184, 0.22);

  --gw-surface-0: rgba(0, 0, 0, 0.00);        /* page/overlay */
  --gw-surface-1: rgba(15, 18, 28, 0.18);     /* panels/status/tab shells */
  --gw-surface-2: rgba(255, 255, 255, 0.04);  /* inner widgets */
  --gw-surface-3: rgba(255, 255, 255, 0.05);  /* inputs/textarea style */

  --gw-shadow: 0 18px 60px rgba(0,0,0,0.45);
  --gw-radius: 10px;

  /* buttons */
  --gw-btn-bg: rgba(255,255,255,0.06);
  --gw-btn-bg-hover: rgba(255,255,255,0.09);
  --gw-btn-border: rgba(255,255,255,0.10);
  --gw-btn-text: rgba(226,232,240,0.92);

  /* split handles */
  --gw-handle-bg: rgba(255,255,255,0.06);
  --gw-handle-bg-hover: rgba(105, 177, 187, 0.22);
  --gw-handle-outline: rgba(148, 163, 184, 0.22);

  /* accent-ish */
  --gw-accent: rgba(105, 177, 187, 0.38);

  /* scrollbars */
  --gw-scroll-size: 12px;
  --gw-scroll-radius: 10px;
  --gw-scroll-track: rgba(15, 18, 28, 0.18);
  --gw-scroll-thumb: rgba(226, 232, 240, 0.18);
  --gw-scroll-thumb-hover: rgba(226, 232, 240, 0.28);
  --gw-scroll-thumb-active: rgba(105, 177, 187, 0.38);

  /* layout */
  --gw-status-h: 34px;
  --gw-margin: 1px;
  --gw-gap: 1px;

  /* master blur driven by JS */
  --gw-blur-master: 10px;
}

/* LIGHT THEME OVERRIDES */
#gwRoot[data-theme="light"]{
  --gw-text: rgba(1, 2, 4, 1.0);
  --gw-text-dim: rgba(1, 2, 4, 1.0);
  --gw-border: rgba(15, 23, 42, 0.18);

  --gw-surface-0: rgba(205, 205, 205, 0.00);
  --gw-surface-1: rgba(205, 205, 205, 0.20);
  --gw-surface-2: rgba(205, 205, 205, 0.10);
  --gw-surface-3: rgba(205, 205, 205, 0.15);

  --gw-shadow: 0 18px 60px rgba(0,0,0,0.16);

  --gw-btn-bg: rgba(205,205,205,0.52);
  --gw-btn-bg-hover: rgba(255,255,255,0.70);
  --gw-btn-border: rgba(15,23,42,0.16);
  --gw-btn-text: rgba(1, 2, 4, 1.0);

  --gw-handle-bg: rgba(225,225,225,0.50);
  --gw-handle-bg-hover: rgba(255,255,255,0.70);
  --gw-handle-outline: rgba(15, 23, 42, 0.12);

  --gw-scroll-track: rgba(15, 23, 42, 0.08);
  --gw-scroll-thumb: rgba(15, 23, 42, 0.16);
  --gw-scroll-thumb-hover: rgba(15, 23, 42, 0.24);
  --gw-scroll-thumb-active: rgba(105, 177, 187, 0.50);
}

/* tiny utilities for this page only */
#gwRoot .gw-hidden{ display:none !important; }
#gwRoot .gw-root{ position: relative; width: 100%; height: 100%; overflow: hidden; }
#gwRoot .gw-viewer{ position:absolute; inset:0; display:flex; align-items:center; justify-content:center; }
#gwRoot .gw-overlay{ position:absolute; inset:0; pointer-events:none; z-index: 20 }
#gwRoot .gw-pe-auto{ pointer-events:auto; }
#gwRoot .gw-canvas{ display:block; max-width:100%; max-height:100%; }


/* ===========================
   GW Scrollbars (scoped)
   =========================== */

/* Firefox */
#gwRoot *{
  scrollbar-width: thin;
  scrollbar-color: var(--gw-scroll-thumb) var(--gw-scroll-track);
}

/* WebKit (Chrome/Edge/Safari) */
#gwRoot *::-webkit-scrollbar{
  width: var(--gw-scroll-size);
  height: var(--gw-scroll-size);
}

#gwRoot *::-webkit-scrollbar-track{
  background: var(--gw-scroll-track);
  border-radius: var(--gw-scroll-radius);
  border: 1px solid rgba(255,255,255,0.06);
}

#gwRoot *::-webkit-scrollbar-thumb{
  background: var(--gw-scroll-thumb);
  border-radius: var(--gw-scroll-radius);
  border: 3px solid rgba(0,0,0,0);          /* creates inset padding */
  background-clip: padding-box;
}

#gwRoot *::-webkit-scrollbar-thumb:hover{
  background: var(--gw-scroll-thumb-hover);
  border: 3px solid rgba(0,0,0,0);
  background-clip: padding-box;
}

#gwRoot *::-webkit-scrollbar-thumb:active{
  background: var(--gw-scroll-thumb-active);
  border: 3px solid rgba(0,0,0,0);
  background-clip: padding-box;
}

#gwRoot *::-webkit-scrollbar-corner{
  background: transparent;
}

/* -------------------------------------------------------
   PANELS
------------------------------------------------------- */
#gwRoot .gw-panel{
  position: absolute;
  z-index: 20;

  background: var(--gw-surface-1);
  color: var(--gw-text);

  border: 1px solid var(--gw-border);
  border-radius: var(--gw-radius);
  box-shadow: var(--gw-shadow);

  backdrop-filter: blur(var(--gw-blur-master));
  -webkit-backdrop-filter: blur(var(--gw-blur-master));

  overflow: hidden;
  user-select: none;

  display: flex;
  flex-direction: column;
}

#gwRoot .gw-panel-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding: 8px 10px;
  border-bottom: 1px solid rgba(255,255,255,0.08);
  cursor: move; /* only matters while floating */
}

#gwRoot[data-theme="light"] .gw-panel-header{
  border-bottom: 1px solid rgba(15,23,42,0.10);
}

#gwRoot .gw-title{
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: var(--gw-text);
}

#gwRoot .gw-controls{
  display:flex;
  gap: 6px;
}

/* Beveled buttons (theme-agnostic) */
#gwRoot .gw-btn{
  width: 28px;
  height: 24px;
  border-radius: 6px;
  border: 1px solid var(--gw-btn-border);

  background: var(--gw-btn-bg);
  color: var(--gw-btn-text);

  font-size: 12px;
  line-height: 1;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;

  box-shadow:
    inset 1px 1px 0 rgba(255,255,255,0.10),
    inset -1px -1px 0 rgba(0,0,0,0.28);

  transition: transform 80ms ease, background 120ms ease, box-shadow 120ms ease;
}

#gwRoot[data-theme="light"] .gw-btn{
  box-shadow:
    inset 1px 1px 0 rgba(255,255,255,0.40),
    inset -1px -1px 0 rgba(0,0,0,0.10);
}

#gwRoot .gw-btn:hover{
  background: var(--gw-btn-bg-hover);
  box-shadow:
    inset 1px 1px 0 rgba(255,255,255,0.16),
    inset -1px -1px 0 rgba(0,0,0,0.32);
}

#gwRoot .gw-btn:active{
  transform: translateY(1px);
  box-shadow:
    inset -1px -1px 0 rgba(255,255,255,0.12),
    inset 1px 1px 0 rgba(0,0,0,0.38);
}

#gwRoot .gw-panel-body{
  flex: 1 1 auto;
  min-height: 0;
  padding: 0; /* splitters want full size; use .gw-pane-pad for padding */
  font-size: 12px;
  user-select: text;
}
/* ============================================================
   Panel header: show ONLY the relevant state button
   - docked: show Float (↗), hide Dock (↙)
   - floating: show Dock (↙), hide Float (↗)
   ============================================================ */

/* default (docked) */
#gwRoot .gw-panel .gw-controls [data-action="dock"]{ display: none; }
#gwRoot .gw-panel .gw-controls [data-action="float"]{ display: inline-flex; }

/* when floating */
#gwRoot .gw-panel.gw-floating .gw-controls [data-action="dock"]{ display: inline-flex; }
#gwRoot .gw-panel.gw-floating .gw-controls [data-action="float"]{ display: none; }

#gwRoot .gw-placeholder{
  font-size: 12px;
  line-height: 1.4;
  color: var(--gw-text-dim);
}

/* Hover halo + active selection */
#gwRoot .gw-panel:hover{
  outline: 1px solid rgba(226,232,240,0.18);
}

#gwRoot[data-theme="light"] .gw-panel:hover{
  outline: 1px solid rgba(15,23,42,0.14);
}

#gwRoot .gw-panel.gw-active{
  outline: 1px solid rgba(226,232,240,0.28);
  box-shadow:
    0 18px 60px rgba(0,0,0,0.45),
    0 0 0 2px rgba(226,232,240,0.08);
}

#gwRoot[data-theme="light"] .gw-panel.gw-active{
  outline: 1px solid rgba(15,23,42,0.18);
  box-shadow:
    0 18px 60px rgba(0,0,0,0.16),
    0 0 0 2px rgba(15,23,42,0.06);
}

/* -------------------------------------------------------
   DOCKED SIZES (panels stop above status bar)
------------------------------------------------------- */
#gwRoot .gw-panel-left{
  top: var(--gw-margin);
  left: var(--gw-margin);
  bottom: calc(var(--gw-status-h) + var(--gw-margin) + var(--gw-gap));
  width: 320px;
}

#gwRoot .gw-panel-right{
  top: var(--gw-margin);
  right: var(--gw-margin);
  bottom: calc(var(--gw-status-h) + var(--gw-margin) + var(--gw-gap));
  width: 340px;
}

#gwRoot .gw-panel-bottom{
  left: var(--gw-margin);
  right: var(--gw-margin);
  bottom: calc(var(--gw-status-h) + var(--gw-margin) + var(--gw-gap));
  height: 240px;
}

/* -------------------------------------------------------
   RESIZERS
------------------------------------------------------- */
#gwRoot .gw-resizer{
  position:absolute;
  background: transparent;
  z-index: 350;
}
#gwRoot .gw-resizer-right{
  top: 0; right: -4px; bottom: 0;
  width: 10px;
  cursor: ew-resize;
}
#gwRoot .gw-resizer-left{
  top: 0; left: -4px; bottom: 0;
  width: 10px;
  cursor: ew-resize;
}
#gwRoot .gw-resizer-top{
  left: 0; right: 0; top: -4px;
  height: 10px;
  cursor: ns-resize;
}

/* -------------------------------------------------------
   FLOATING
------------------------------------------------------- */
#gwRoot .gw-floating{
  position: fixed !important;
  z-index: 80;
}

/* -------------------------------------------------------
   COLLAPSED TABS (edge bars)
------------------------------------------------------- */
#gwRoot .gw-tab{
  position:absolute;
  z-index: 70;

  border-radius: 14px;
  border: 1px solid var(--gw-border);
  background: var(--gw-surface-1);
  color: var(--gw-text);

  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);

  display:flex;
  align-items:center;
  justify-content:center;

  font-size: 16px;
  font-weight: 900;
  opacity: 0.95;

  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;

  box-shadow:
    inset 1px 1px 0 rgba(255,255,255,0.10),
    inset -1px -1px 0 rgba(0,0,0,0.28),
    var(--gw-shadow);

  transition: box-shadow 120ms ease, transform 80ms ease, background 120ms ease, opacity 120ms ease;
}

#gwRoot[data-theme="light"] .gw-tab{
  box-shadow:
    inset 1px 1px 0 rgba(255,255,255,0.45),
    inset -1px -1px 0 rgba(0,0,0,0.10),
    var(--gw-shadow);
}

#gwRoot .gw-tab:hover{
  background: var(--gw-btn-bg-hover);
  box-shadow:
    inset 1px 1px 0 rgba(255,255,255,0.16),
    inset -1px -1px 0 rgba(0,0,0,0.32),
    var(--gw-shadow);
  opacity: 1.0;
}

#gwRoot .gw-tab:active{
  transform: translateY(1px);
  box-shadow:
    inset -1px -1px 0 rgba(255,255,255,0.12),
    inset 1px 1px 0 rgba(0,0,0,0.38),
    var(--gw-shadow);
}

/* edge spanning */
#gwRoot .gw-tab-left{
  left: var(--gw-margin);
  top: var(--gw-margin);
  bottom: calc(var(--gw-status-h) + var(--gw-margin) + var(--gw-gap));
  width: 18px;
}
#gwRoot .gw-tab-right{
  right: var(--gw-margin);
  top: var(--gw-margin);
  bottom: calc(var(--gw-status-h) + var(--gw-margin) + var(--gw-gap));
  width: 18px;
}
/* bottom tab sits ABOVE status bar */
#gwRoot .gw-tab-bottom{
  left: var(--gw-margin);
  right: var(--gw-margin);
  height: 18px;
  bottom: calc(var(--gw-status-h) + var(--gw-margin) + var(--gw-gap));
}

/* -------------------------------------------------------
   STATUS BAR
------------------------------------------------------- */
#gwRoot .gw-statusbar{
  position: absolute;
  left: var(--gw-margin);
  right: var(--gw-margin);
  bottom: var(--gw-margin);
  height: var(--gw-status-h);
  z-index: 90;

  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 10px;

  border: 1px solid var(--gw-border);
  border-radius: 6px;

  background: var(--gw-surface-1);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  box-shadow: var(--gw-shadow);
}

#gwRoot .gw-statuscell{
  height: 26px;
  margin: 0 8px;
  display: flex;
  align-items: center;
  font-size: 12px;
  color: var(--gw-text);
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

#gwRoot .gw-status-left{ justify-content: flex-start; }
#gwRoot .gw-status-mid{ justify-content: center; }
#gwRoot .gw-status-right{ justify-content: flex-end; }

#gwRoot .gw-frost-mini{
  width: 70px;
  height: 15px;
  accent-color: rgba(105, 177, 187, 0.70);
  opacity: 0.95;
}

/* left tools row: frost + theme */
#gwRoot .gw-status-lefttools{
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

/* -------------------------------------------------------
   THEME SWITCH (tiny, statusbar)
------------------------------------------------------- */
#gwRoot .gw-theme{
  display: inline-flex;
  align-items: center;
  gap: 6px;
  user-select: none;
}

#gwRoot .gw-theme-ico{
  font-size: 13px;
  line-height: 1;
  opacity: 0.88;
}
/* --- Theme icon: one visible at a time, both on the right --- */
#gwRoot .gw-theme{
  gap: 8px; /* switch ↔ icon spacing */
}

#gwRoot .gw-theme-ico{
  font-size: 13px;
  line-height: 1;
  opacity: 0.88;
  width: 16px;            /* keeps layout stable when swapping */
  text-align: center;
}

/* default (unchecked = light): show sun, hide moon */
#gwRoot .gw-theme-ico-sun{ display: inline-block; }
#gwRoot .gw-theme-ico-moon{ display: none; }

/* checked = dark: show moon, hide sun */
#gwRoot .gw-theme-toggle:checked ~ .gw-theme-ico-sun{ display: none; }
#gwRoot .gw-theme-toggle:checked ~ .gw-theme-ico-moon{ display: inline-block; }

#gwRoot .gw-theme input[type="checkbox"]{
  position: absolute;
  opacity: 0;
  width: 1px;
  height: 1px;
  pointer-events: none;
}

#gwRoot .gw-theme-switch{
  width: 34px;
  height: 18px;
  border-radius: 999px;
  border: 1px solid var(--gw-border);
  background: var(--gw-btn-bg);
  box-shadow:
    inset 1px 1px 0 rgba(255,255,255,0.10),
    inset -1px -1px 0 rgba(0,0,0,0.22);
  position: relative;
  cursor: pointer;
  transition: background 140ms ease, border-color 140ms ease, box-shadow 140ms ease;
}

#gwRoot[data-theme="light"] .gw-theme-switch{
  box-shadow:
    inset 1px 1px 0 rgba(255,255,255,0.40),
    inset -1px -1px 0 rgba(0,0,0,0.08);
}

#gwRoot .gw-theme-switch::after{
  content: "";
  position: absolute;
  top: 2px;
  left: 2px;
  width: 14px;
  height: 14px;
  border-radius: 999px;
  background: rgba(205,205,205,0.65);
  box-shadow:
    0 6px 14px rgba(0,0,0,0.22),
    inset 1px 1px 0 rgba(255,255,255,0.25);
  transform: translateX(0);
  transition: transform 160ms ease, background 140ms ease;
}

#gwRoot .gw-theme-toggle:checked + .gw-theme-switch{
  background: rgba(105, 177, 187, 0.26);
  border-color: rgba(105, 177, 187, 0.38);
}

#gwRoot .gw-theme-toggle:checked + .gw-theme-switch::after{
  transform: translateX(16px);
  background: rgba(205,205,205,0.78);
}

#gwRoot .gw-theme:hover .gw-theme-switch{
  background: var(--gw-btn-bg-hover);
}

/* floating-only resize handles */
#gwRoot .gw-floatonly { display: none; }
#gwRoot .gw-panel.gw-floating .gw-floatonly { display: block; }

/* bottom edge (for floating resize) */
#gwRoot .gw-resizer-bottom{
  left: 0; right: 0; bottom: -4px;
  height: 10px;
  cursor: ns-resize;
}

/* bottom-right corner (for floating free resize) */
#gwRoot .gw-resizer-corner{
  right: -4px; bottom: -4px;
  width: 14px; height: 14px;
  cursor: nwse-resize;
}

/* ===========================
   GW Splitter (scoped)
   =========================== */
#gwRoot .gw-splitter{
  position: relative;
  display: flex;
  width: 100%;
  height: 100%;
  min-width: 0;
  min-height: 0;
  overflow: hidden;
}

/* orientation */
#gwRoot .gw-splitter[data-orient="v"]{ flex-direction: column; }
#gwRoot .gw-splitter[data-orient="h"]{ flex-direction: row; }

#gwRoot .gw-pane{
  position: relative;
  min-width: 0;
  min-height: 0;
  overflow: auto;
}

/* handle */
#gwRoot .gw-split-handle{
  flex: 0 0 var(--gw-split-w, 10px);
  display: flex;
  align-items: center;
  justify-content: center;
  user-select: none;

  background: var(--gw-handle-bg);
  border: 1px solid var(--gw-handle-outline);
  border-radius: 8px;

  box-shadow:
    inset 1px 1px 0 rgba(255,255,255,0.10),
    inset -1px -1px 0 rgba(0,0,0,0.28);

  opacity: 0.9;
  cursor: pointer;
}

#gwRoot .gw-splitter[data-orient="v"] .gw-split-handle{ cursor: ns-resize; }
#gwRoot .gw-splitter[data-orient="h"] .gw-split-handle{ cursor: ew-resize; }

#gwRoot .gw-split-handle:hover{
  background: var(--gw-handle-bg-hover);
  opacity: 1.0;
}

#gwRoot .gw-split-glyph{
  font-size: 12px;
  line-height: 1;
  letter-spacing: 1px;
  color: var(--gw-text-dim);
  padding: 2px 6px;
  border-radius: 6px;
}

/* Eye tabs */
#gwRoot .gw-eye-top{
  height: 100%;
  display: flex;
  flex-direction: column;
  min-height: 0;
}

#gwRoot .gw-tabs{
  flex: 0 0 auto;
  display: flex;
  gap: 6px;
  padding: 6px 8px;
  border-bottom: 1px solid rgba(255,255,255,0.08);

  background: var(--gw-surface-1);
  backdrop-filter: blur(var(--gw-blur-master));
  -webkit-backdrop-filter: blur(var(--gw-blur-master));
}

#gwRoot[data-theme="light"] .gw-tabs{
  border-bottom: 1px solid rgba(15,23,42,0.10);
}

#gwRoot .gw-tabbtn{
  border: 1px solid var(--gw-btn-border);
  border-radius: 10px;
  padding: 5px 8px;
  font-size: 12px;
  color: var(--gw-text-dim);
  background: var(--gw-btn-bg);
  cursor: pointer;
}
#gwRoot .gw-tabbtn.is-active{
  background: rgba(105,177,187,0.18);
  color: var(--gw-text);
  outline: 1px solid rgba(105,177,187,0.22);
}

#gwRoot .gw-tabpages{
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
}
#gwRoot .gw-tabpage{
  display: none;
  height: 100%;
  overflow: auto;
  padding: 10px;
}
#gwRoot .gw-tabpage.is-active{ display: block; }

/* Simple padding helper for permanent panes */
#gwRoot .gw-pane-pad{
  padding: 10px;
}

/* Toolbelt: flowing widgets with scroll */
#gwRoot .gw-toolbelt{
  height: 100%;
  padding: 10px;
  display: flex;
  flex-wrap: wrap;
  align-content: flex-start;
  gap: 10px;
  overflow: auto;
}

#gwRoot .gw-widget{
  min-width: 180px;
  max-width: 100%;
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 12px;
  background: var(--gw-surface-2);
  box-shadow:
    inset 1px 1px 0 rgba(255,255,255,0.08),
    inset -1px -1px 0 rgba(0,0,0,0.25);
  padding: 8px;
  color: var(--gw-text);
}

#gwRoot[data-theme="light"] .gw-widget{
  border: 1px solid rgba(15,23,42,0.12);
  box-shadow:
    inset 1px 1px 0 rgba(255,255,255,0.45),
    inset -1px -1px 0 rgba(0,0,0,0.08);
}

#gwRoot .gw-widget-title{
  font-size: 11px;
  font-weight: 700;
  margin: 0 0 6px 0;
  color: var(--gw-text-dim);
}

/* rotate glyph 90° anti-clockwise */
#gwRoot .gw-rot-ccw90{
  display: inline-block;
  transform: rotate(-90deg);
  transform-origin: center;
  line-height: 1;
}

/* ===== splitter: force identical handle thickness everywhere ===== */
#gwRoot { --gw-split-w: 16px; }

#gwRoot .gw-split-handle{
  flex: 0 0 var(--gw-split-w) !important;
}

/* Horizontal splitter => vertical handle (Apron) */
#gwRoot .gw-splitter[data-orient="h"] .gw-split-handle{
  width: var(--gw-split-w) !important;
  min-width: var(--gw-split-w) !important;
  max-width: var(--gw-split-w) !important;
  height: 100% !important;
}

/* Vertical splitter => horizontal handle (Spine/Eye) */
#gwRoot .gw-splitter[data-orient="v"] .gw-split-handle{
  height: var(--gw-split-w) !important;
  min-height: var(--gw-split-w) !important;
  max-height: var(--gw-split-w) !important;
  width: 100% !important;
}

/* Glyph must never force handle size */
#gwRoot .gw-split-glyph{
  padding: 0 !important;
  margin: 0 !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
  line-height: 1 !important;
  display: grid !important;
  place-items: center !important;
  pointer-events: none;
}

/* Rotate glyph only for horizontal splitters (Apron) so it “reads” like the others */
#gwRoot .gw-splitter[data-orient="h"] .gw-split-glyph{
  transform: rotate(90deg);
  transform-origin: center;
}

/* --- Fix Apron hover “cross”: never paint a bg on the glyph --- */
#gwRoot .gw-split-handle:hover .gw-split-glyph{
  background: transparent !important;
}

/* --- Splitter: keep handle visible + obvious when collapsed --- */
#gwRoot .gw-split-handle{
  z-index: 80;
  pointer-events: auto;
}

#gwRoot .gw-splitter[data-orient="h"] > .gw-split-handle{
  height: 100%;
  align-self: stretch;
}

#gwRoot .gw-splitter[data-orient="v"] > .gw-split-handle{
  width: 100%;
  align-self: stretch;
}

#gwRoot .gw-splitter.gw-split-collapsed > .gw-split-handle{
  background: rgba(255,255,255,0.12) !important;
  outline: 1px solid rgba(226,232,240,0.20);
  box-shadow:
    inset 1px 1px 0 rgba(255,255,255,0.12),
    inset -1px -1px 0 rgba(0,0,0,0.35);
}

#gwRoot[data-theme="light"] .gw-splitter.gw-split-collapsed > .gw-split-handle{
  outline: 1px solid rgba(15,23,42,0.14);
}

/* apron: pull the collapsed handle off the panel border so it doesn't "disappear" */
#gwRoot #gwApronSplit.gw-split-collapsed > .gw-split-handle{
  margin-right: 2px;
}

/* Floating resize corner: make it visible and clickable above split handles */
#gwRoot .gw-resizer-corner{
  right: 0px;
  bottom: 0px;
  z-index: 200;          /* above splitter handles */
  pointer-events: auto;
}

#gwRoot .gw-resizer-corner::after{
  content: "/.";
  position: absolute;
  right: 2px;
  bottom: 2px;
  font-size: 12px;
  font-weight: 800;
  line-height: 1;

  color: rgba(226,232,240,0.72);
  background: rgba(15,18,28,0.14);
  border: 0px solid rgba(148,163,184,0.18);
  border-radius: 8px;
  padding: 1px 5px 2px 5px;

  backdrop-filter: blur(var(--gw-blur-master));
  -webkit-backdrop-filter: blur(var(--gw-blur-master));
}

#gwRoot[data-theme="light"] .gw-resizer-corner::after{
  color: rgba(15,23,42,0.70);
  background: rgba(255,255,255,0.30);
}

#gwRoot .gw-resizer-corner:hover::after{
  color: rgba(255,255,255,0.95);
  background: rgba(61,126,135,0.25);
}

#gwRoot[data-theme="light"] .gw-resizer-corner:hover::after{
  color: rgba(15,23,42,0.92);
  background: rgba(61,126,135,0.18);
}


