/*
*
  File: layout/gw3001.css
  Function: Modern responsive UI layer for GMAwatch 3
  Author: Mario H. Fietz, DL4MFM + Assist
  Timestamp: 26.06.2026
  Notes:
  - Cleaned from organically grown gw3001.css
  - Consolidated duplicate GW3 panel/modal/toolbar/rig/dashboard blocks
  - Kept legacy table/output compatibility rules
*/

/* ==========================================================
   Base / legacy page reset
   ========================================================== */

html,
body {
  margin: 0;
  padding: 0;
  background: #eef2f5;
}

body {
  font-family: Arial, Helvetica, sans-serif;
}

body > table,
body > table > tbody > tr > td > table {
  width: 100% !important;
  max-width: none !important;
}

/* ==========================================================
   Main containers
   ========================================================== */

#gmaieshadowbox95 {
  width: calc(100% - 12px) !important;
  max-width: none !important;
  margin: 8px auto 10px auto !important;
  padding: 14px 18px;
  background: #ffffff;
  border: 1px solid #d6dee6;
  border-radius: 16px;
  box-shadow: 0 14px 32px rgba(0, 0, 0, 0.18);
  box-sizing: border-box;
}

#gmaieshadowbox95 + br,
#gmaieshadowbox95 + br + br {
  display: none !important;
}

/* ==========================================================
   GW3 title bar
   ========================================================== */

.gw3-titlebar {
  height: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  background: linear-gradient(180deg, #007fa8, #005f86);
  color: #fff;
  font-weight: 900;
  letter-spacing: 0.4px;
}

.gw3-triangle {
  font-size: 15px;
  color: #fff;
}

.gw3-title-main,
.gw3-title-sub {
  font-size: 12px;
}

.gw3-title-sub {
  opacity: 0.8;
}

/* ==========================================================
   Top dashboard: clock, space weather, toolbar
   ========================================================== */

.gw3-top-dashboard {
  display: grid;
  grid-template-columns: 420px minmax(320px, 1fr) auto;
  grid-template-rows: auto auto;
  gap: 8px 20px !important;
  padding: 10px 22px !important;
  align-items: center;
  margin-bottom: 0 !important;
}

.gw3-clock-display {
  grid-column: 1;
  grid-row: 1;
  min-width: 0;
  max-width: 360px;
  min-height: 52px !important;
  padding: 7px 12px !important;
  border-radius: 12px;
  background: #f8fbfe;
  border: 1px solid #d6e1eb;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  box-sizing: border-box;
}

.gw3-clock-time {
  font-family: "Courier New", Consolas, monospace;
  font-size: 26px !important;
  font-weight: 900;
  letter-spacing: 1px;
  color: #004a8f;
  line-height: 1;
  white-space: nowrap;
}

.gw3-clock-sub {
  margin-top: 3px !important;
  color: #24384c;
  font-family: "Courier New", Consolas, monospace;
  font-size: 10px !important;
  font-weight: 800;
  letter-spacing: 0.7px;
  white-space: nowrap;
}

.gw3-spacewx-display {
  grid-column: 3;
  grid-row: 1;
  display: flex;
  justify-content: flex-end;
}

/* Legacy ids still used by JS */
#qsotime {
  white-space: nowrap;
}

#wcy {
  white-space: nowrap;
}

/* ==========================================================
   Space weather
   ========================================================== */

.swx-panel {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 52px !important;
  padding: 7px 12px !important;
  border-radius: 14px;
  background: #f8fbfe;
  border: 1px solid #d6e1eb;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  box-sizing: border-box;
}

.swx-head {
  min-width: 64px;
  padding-right: 8px;
  border-right: 1px solid #d6e1eb;
  line-height: 1.05;
}

.swx-head a {
  display: block;
  color: #005aa0;
  font-size: 19px;
  font-weight: 900;
  letter-spacing: 0.6px;
  text-decoration: none;
}

.swx-head span {
  display: block;
  margin-top: 4px;
  color: #43505c;
  font-size: 10px;
  font-weight: 700;
  white-space: nowrap;
}

.swx-cards {
  display: flex;
  align-items: stretch;
  gap: 7px;
}

.swx-card {
  min-width: 44px !important;
  padding: 3px 5px !important;
  border-radius: 10px;
  background: linear-gradient(180deg, #ffffff, #eef4fa);
  border: 1px solid #d3dde8;
  color: #004a8f;
  text-align: center;
  text-decoration: none;
  box-shadow: inset 0 0 8px rgba(0, 74, 143, 0.05);
}

.swx-card b {
  display: block;
  font-family: "Courier New", Consolas, monospace;
  font-size: 14px !important;
  line-height: 1;
  color: #004a8f;
  text-shadow: none;
}

.swx-card small {
  display: block;
  margin-top: 3px;
  color: #43505c;
  font-size: 7px !important;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.4px;
}

.swx-card.swx-ok b {
  color: #168a3a;
}

.swx-card.swx-warn b {
  color: #c92828;
}

.swx-link:hover {
  transform: translateY(-1px);
  border-color: #8fb5d8;
}

/* ==========================================================
   Top toolbar
   ========================================================== */

.gw3-top-controls {
  grid-column: 1 / span 2;
  grid-row: 2;
  padding: 5px 10px !important;
  border: 1px solid #cfd8e2;
  border-radius: 12px;
  background: #f3f8fc;
}

.gw3-toolbar {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  width: 100%;
  padding: 4px 8px;
  background: transparent;
  border: 0 !important;
}

.gw3-tool,
.gw3-tool-shell {
  position: relative;
  width: 38px;
  height: 38px;
  border: 1px solid #c5d1dd;
  border-radius: 9px;
  background: linear-gradient(180deg, #ffffff, #edf4fa);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #234;
  text-decoration: none;
  cursor: pointer;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
  box-sizing: border-box;
}

.gw3-tool-shell {
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.gw3-tool:hover {
  background: linear-gradient(180deg, #ffffff, #e4eef7);
  border-color: #8fb5d8;
}

.gw3-tool:disabled,
.gw3-tool-disabled {
  opacity: 0.45;
  cursor: default;
}

.gw3-tool img {
  max-width: 24px;
  max-height: 24px;
}

.gw3-tool-home {
  width: 54px;
  flex-direction: column;
  gap: 1px;
}

.gw3-tool-home span {
  font-size: 20px;
  font-weight: 900;
  line-height: 1;
}

.gw3-tool-home small {
  font-size: 9px;
  font-weight: 800;
}

.gw3-tool-badge,
.gw3-icon-badge,

#RBNandSettings img {
  max-width: 24px !important;
  max-height: 24px !important;
  vertical-align: middle;
}

.gw3-leds {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin-left: 12px;
  white-space: nowrap;
}

.gw3-leds img {
  max-height: 14px;
}

/* ==========================================================
   GMA spot panel
   ========================================================== */

.gw3-panel {
  background: #fff;
  border: 1px solid #d9e1e8;
  border-radius: 14px;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
  padding: 14px;
  margin-bottom: 14px;
}

.gw3-panel-head {
  display: block;
  border-bottom: 1px solid #ccd5dd;
  padding-bottom: 0;
  margin-bottom: 8px;
  font-size: 16px;
  white-space: nowrap;
}

.gw3-panel-titlebar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  margin: -14px -14px 10px -14px;
  padding: 14px 18px;
  border-radius: 14px 14px 0 0;
  background: linear-gradient(90deg, #f8fbfe, #eaf3fa);
  border-bottom: 1px solid #cbd8e3;
}

.gw3-panel-title-left {
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
}

.gw3-title-blue {
  color: #005aa0;
  font-size: 24px;
  font-weight: 900;
  letter-spacing: 0.5px;
  margin-right: 0;
}

.gw3-title-sep {
  width: 1px;
  height: 28px;
  background: #c7d3de;
}

.gw3-muted {
  color: #666;
  font-size: 13px;
}

.gw3-panel-subtitle {
  font-size: 15px;
  font-weight: 700;
  color: #333;
}

.gw3-panel-actions,
.gw3-head-actions {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-left: auto;
}

.gw3-action-btn {
  min-width: 118px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 7px 14px;
  border: 1px solid #7aa9d8;
  border-radius: 999px;
  background: #ffffff;
  color: #003f8f;
  font-weight: 700;
  text-decoration: none;
  line-height: 1;
  white-space: nowrap;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08);
}

.gw3-action-btn:hover {
  background: #eef6ff;
  text-decoration: none;
}

.gw3-action-primary {
  min-width: 170px;
  border-color: #3f7fc4;
  background: #eef6ff;
}

.gw3-summit-only {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-weight: 700;
  white-space: nowrap;
  color: #354250;
}

/* ==========================================================
   GW3 spot grid
   ========================================================== */

.gw3-table {
  width: 100%;
}

.gw3-row {
  display: grid;
  grid-template-columns: 82px 70px 110px 180px 180px 230px minmax(260px, 1fr) 120px;
  align-items: center;
  min-height: 34px;
  border-bottom: 1px solid #fff;
  font-size: 14px;
  line-height: 1.15;
}

.gw3-row > div {
  padding: 3px 8px;
  min-width: 0;
}

.gw3-table-head,
.gw3-header {
  background: #fff !important;
  font-weight: 700;
  border-bottom: 1px solid #ccd5dd;
}

.gw3-row:nth-child(odd) {
  background: #f2f5f8;
}

.gw3-row:nth-child(even) {
  background: #f7f9fb;
}

.gw3-date,
.gw3-date a {
  color: #c00000;
  font-weight: 700;
  text-decoration: none;
}

.gw3-time,
.gw3-qrg {
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.gw3-time a,
.gw3-spotter a,
.gw3-call a {
  color: #000;
  text-decoration: none;
}

.gw3-ref {
  color: #b00000;
  text-decoration: none;
}

.gw3-needed {
  color: #800000;
  font-weight: 700;
}

.gw3-top16 {
  color: #c63313;
}

.gw3-addtext {
  color: #087a22;
  font-size: 12px;
  font-style: italic;
}

.gw3-arrow,
.gw3-rbn {
  color: #000;
  text-decoration: none;
  font-weight: 700;
  margin-left: 0;
}

.gw3-flag {
  height: 14px;
  margin-right: 6px;
  vertical-align: middle;
  border: 1px solid #ddd;
}

.gw3-qrg {
  display: grid;
  grid-template-columns: 86px 48px 18px;
  column-gap: 6px;
  align-items: center;
}

.gw3-qrg > a:first-child,
.gw3-qrg a:first-child {
  display: inline-block;
  text-align: right;
  font-variant-numeric: tabular-nums;
}

.gw3-qrg .gw3-mode {
  justify-self: start;
  width: 46px;
  min-width: 46px;
  margin: 0;
}

.gw3-qrg .gw3-rbn {
  justify-self: start;
}

.gw3-mode {
  display: inline-block;
  width: 42px;
  box-sizing: border-box;
  padding: 2px 5px;
  border-radius: 4px;
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  text-align: center;
}

.gw3-mode-cw { background: #f28c00; }
.gw3-mode-ssb { background: #006fc9; }
.gw3-mode-fm { background: #008b4a; }
.gw3-mode-data { background: #6f42c1; }
.gw3-mode-other { background: #666; }

.gw3-comment {
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
}

.gw3-comment-main {
  display: inline;
  white-space: nowrap;
}

.gw3-justworked,
.gw3-camilla {
  text-align: center;
  padding: 10px;
}

/* ==========================================================
   Spot actions
   ========================================================== */

.gw3-actions-cell {
  display: flex;
  justify-content: flex-end;
}

.gw3-actions {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  white-space: nowrap;
}

.gw3-action,
.gw3-action-slot,
.gw3-ptt,
.gw3-s9,
.gw3-s9-wrap {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 3px;
  white-space: nowrap;
}

.gw3-action {
  min-height: 20px;
  text-align: center;
}

.gw3-action img,
.gw3-action input[type="image"],
.gw3-action-slot img,
.gw3-action-slot input[type="image"] {
  display: inline-block;
  height: 14px;
  max-height: 14px;
  vertical-align: middle;
}

.gw3-edit img,
.gw3-edit-action img,
.gw3-action-edit img {
  height: 16px;
  opacity: 1;
  filter: contrast(1.4);
}

.gw3-badge {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  padding: 1px 6px;
  border-radius: 10px;
  font-size: 11px;
  font-weight: 700;
}

.gw3-count,
.gw3-ptt .gw3-count,
.gw3-s9 .gw3-count,
.gw3-s9-count {
  background: transparent;
  color: #000;
  border: 0;
  min-width: auto;
  height: auto;
  padding: 0 2px;
  font-size: 11px;
  font-weight: 700;
}

.gw3-s9-count {
  min-width: 10px;
  text-align: right;
}

.gw3-s9-flash {
  background: #fff2a8;
  border-radius: 4px;
  box-shadow: 0 0 0 3px #fff2a8;
}

/* ==========================================================
   Spot answers / talks
   ========================================================== */

.gw3-answer-line {
  margin-top: 5px;
  display: flex;
  align-items: center;
  gap: 7px;
  white-space: nowrap;
  font-size: 12px;
  line-height: 1.35;
  color: #111;
}

.gw3-answer-time,
.gw3-talk-time {
  display: inline-block;
  background: #0b0b0b;
  color: #ffd34d;
  border-radius: 999px;
  padding: 2px 8px;
  font-size: 12px;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
}

.gw3-answer-call,
.gw3-talk-call {
  display: inline-block;
  background: #dcecff;
  color: #004a8f;
  border: 1px solid #88b5e8;
  border-radius: 999px;
  padding: 2px 8px;
  font-size: 12px;
  font-weight: 800;
}

.gw3-answer-text,
.gw3-talk-text {
  color: #111;
  overflow: visible;
  text-overflow: clip;
}

.gw3-answer-edit,
.gw3-answer-edit img,
.gw3-talk-edit img {
  max-height: 13px;
  margin-left: 4px;
  opacity: 0.75;
  vertical-align: middle;
}

.gw3-answer-edit:hover {
  opacity: 1;
}

.gw3-talk {
  margin-top: 5px;
  display: flex;
  align-items: center;
  gap: 7px;
  white-space: nowrap;
}

.gw3-tag-sw {
  background: #eef6ff;
  border: 1px solid #8db8f0;
  color: #004a8f;
  border-radius: 10px;
  padding: 1px 8px;
  font-size: 11px;
  font-weight: 700;
}

/* ==========================================================
   Rig status
   ========================================================== */


#gw3-rigstatus-holder {
  position: static;
  height: auto;
  overflow: visible;
  z-index: 10;
  grid-column: 2;
  justify-self: center;
  align-self: center;

}

#gw3-rigstatus-holder .gw3-rigstatus {
  position: static;
  left: 450px;
  top: 24px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 0;
  padding: 4px 12px;
  margin: 0;
  background: linear-gradient(#ffffff, #edf4fb);
  border: 1px solid #c8d6e8;
  border-radius: 10px;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.9),
    0 2px 8px rgba(0, 0, 0, 0.08);
  color: #004c9a;
  font-family: Consolas, "Courier New", monospace;
  font-size: 15px;
  font-weight: 700;
  white-space: nowrap;
}

#gw3-rigstatus-holder .gw3-rigstatus:hover {
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.95),
    0 4px 12px rgba(0, 70, 140, 0.15);
}

.gw3-rigfreq,
#gw3-rigstatus-holder .gw3-rigfreq {
  color: #004a8f;
  font-family: Consolas, "Courier New", monospace;
  font-size: 18px;
  font-weight: 800;
  letter-spacing: 1px;
  text-shadow: none;
}

.gw3-rigmode,
#gw3-rigstatus-holder .gw3-rigmode {
  position: relative;
  top: -1px;
  margin-left: 4px;
  padding: 2px 7px;
  border-radius: 7px;
  background: #f28c00;
  color: #fff;
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
}

.gw3-sep {
  color: #999;
  margin: 0 8px;
}

#gw3-rigstatus-holder .gw3-rigname,
#gw3-rigstatus-holder .gw3-rigchip {
  display: inline-flex;
  align-items: center;
  height: 20px;
  padding: 0 7px;
  border-radius: 999px;
  border: 1px solid #c8d6e8;
  background: #f8fbfe;
  color: #004a8f;
  font-size: 11px;
  font-weight: 800;
  white-space: nowrap;
}

#gw3-rigstatus-holder .gw3-rigname {
  color: #003b75;
}

.gw3-rigtag{
    display:inline-block;
    margin-left:6px;
    padding:2px 8px;
    border:1px solid #b8d0ee;
    border-radius:8px;
    background:#ffffff;
    color:#004b9b;
    font-size:12px;
    font-weight:700;
}

.gw3-rigname{
    display:inline-block;
    margin-right:8px;
    padding:2px 8px;
    border:1px solid #b8d0ee;
    border-radius:8px;
    background:#ffffff;
    color:#004b9b;
    font-size:12px;
    font-weight:700;
}

#gw3-rigstatus {
  z-index: 10;
}


/* ==========================================================
   Toggle on/off
   ========================================================== */

.gw3-toggle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  user-select: none;
  white-space: nowrap;
  font-weight: 700;
  color: #354250;
}

.gw3-toggle input {
  display: none;
}

.gw3-toggle-slider {
  position: relative;
  width: 38px;
  height: 20px;
  border-radius: 999px;
  background: #c8d2dc;
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.25);
  transition: background 0.18s ease;
}

.gw3-toggle-slider::before {
  content: "";
  position: absolute;
  width: 16px;
  height: 16px;
  left: 2px;
  top: 2px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.35);
  transition: transform 0.18s ease;
}

.gw3-toggle input:checked + .gw3-toggle-slider {
  background: #1f8f4d;
}

.gw3-toggle input:checked + .gw3-toggle-slider::before {
  transform: translateX(18px);
}

.gw3-toggle-label {
  font-size: 13px;
}

/* ==========================================================
   Legacy output table
   ========================================================== */

#output {
  width: 100%;
}

#output table {
  width: 100% !important;
  border-collapse: collapse !important;
  table-layout: auto;
}

#output tr {
  height: 26px !important;
  min-height: 26px !important;
  border-bottom: 1px solid #ffffff;
}

#output td {
  padding: 1px 4px !important;
  font-size: 16px !important;
  line-height: 1.05 !important;
  vertical-align: middle !important;
  white-space: nowrap;
}

#output td:last-child {
  width: 100% !important;
  white-space: normal;
}

#output a,
#output a.spot,
#output nobr {
  white-space: nowrap;
}

#output a.spot {
  text-decoration: none;
}

#output a.spot:hover {
  text-decoration: underline;
}

#output b,
#output strong {
  font-size: 17px;
}

#output img {
  max-height: 14px;
  vertical-align: middle;
}

#output img[src*="ptt"],
#output img[src*="mail"],
#output img[src*="spot"] {
  max-height: 16px;
}

.ttmap1,
.spot_l,
.spot_lt,
.spot_lt2,
.spot_lt3,
.spot_lt4 {
  background: #f1f4f7 !important;
}

.ttmap2,
.spot_d,
.spot_dt,
.spot_dt2,
.spot_dt3,
.spot_dt4 {
  background: #d8dee4 !important;
}

.spot_at,
.spot_at2,
.spot_at3,
.spot_at4 {
  font-weight: bold;
}

/*----------------------------------------------------------
  GW3 Modals
----------------------------------------------------------*/

.gw3-modal,
.gw3-log-modal {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.68);
  z-index: 50000;
}

.gw3-modal-content,
.gw3-log-box {
  position: fixed;
  left: 50%;
  transform: translateX(-50%);
  background: #fff;
  border-radius: 14px;
  box-shadow: 0 18px 60px rgba(0,0,0,.45);
  overflow: hidden;
  z-index: 50001;
}


/*
.gw3-modal-content {
  top: 60px;
  width: 760px;
  height: 520px;
  max-width: calc(100vw - 40px);
  max-height: calc(100vh - 80px);
}
*/


.gw3-modal-content {
    position: fixed;
    top: 40px;
    left: 50%;
    transform: translateX(-50%);

    width: 980px;
    height: 92vh;

    max-width: calc(100vw - 60px);
    max-height: calc(100vh - 60px);

    background: #fff;
    border-radius: 14px;
    overflow: hidden;
}


.gw3-log-box {
  top: 50%;
  transform: translate(-50%, -50%);
  width: 1000px;
  height: 80vh;
  max-width: calc(100vw - 60px);
  max-height: calc(100vh - 80px);
}

.gw3-modal-content iframe,
.gw3-log-box iframe {
  width: 100%;
  height: 100%;
  border: 0;
}

.gw3-modal-close,
.gw3-log-close {
  position: absolute;
  top: 10px;
  right: 14px;
  z-index: 50002;
  border: 0;
  background: #fff;
  color: #111;
  font-size: 32px;
  line-height: 32px;
  cursor: pointer;
}


/* ==========================================================
   Footer
   ========================================================== */

.foot {
  margin-top: 20px;
}

/* ==========================================================
   Responsive
   ========================================================== */

@media (min-width: 1800px) {
  .gw3-row {
    grid-template-columns: 90px 80px 150px 210px 210px 175px minmax(600px, 1fr) 130px;
    font-size: 16px;
  }
}

@media (max-width: 1250px) {
  .gw3-table {
    overflow-x: auto;
  }

  .gw3-row {
    min-width: 1180px;
  }
}

@media (max-width: 1200px) {
  #gmaieshadowbox95 {
    width: calc(100% - 24px) !important;
    padding: 12px;
  }

  .gw3-top-dashboard {
    grid-template-columns: minmax(260px, 360px) 1fr;
  }

  .gw3-clock-time {
    font-size: 24px !important;
  }

  #wcy,
  #output td {
    font-size: 17px;
  }
}

@media (max-width: 800px) {
  #gmaieshadowbox95 {
    width: calc(100% - 12px) !important;
    margin: 10px auto;
    border-radius: 10px;
  }

  .gw3-top-dashboard {
    display: block;
    padding: 10px !important;
  }

  .gw3-clock-display,
  .gw3-spacewx-display,
  .gw3-top-controls {
    margin-bottom: 8px;
  }

  .gw3-spacewx-display {
    justify-content: flex-start;
    overflow-x: auto;
  }

  .gw3-toolbar {
    justify-content: flex-start;
    overflow-x: auto;
  }

  .gw3-clock-time {
    font-size: 22px !important;
  }

  #wcy {
    font-size: 15px;
    white-space: normal;
  }

  #output {
    overflow-x: auto;
  }

  #output table {
    min-width: 950px;
  }

  .gw3-panel-titlebar {
    align-items: flex-start;
    flex-direction: column;
  }

  .gw3-panel-actions,
  .gw3-head-actions {
    flex-wrap: wrap;
  }
}


/* ===========================================================
   GW3 Toolbar / Kacheln
   =========================================================== */

.gw3-top-controls {
  grid-column: 1 / span 2;
  grid-row: 2;
  padding: 6px 10px;
  border: 1px solid #cfd8e2;
  border-radius: 12px;
  background: #f3f8fc;
}

.gw3-toolbar {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  flex-wrap: nowrap;
}

.gw3-tool,
.gw3-tool-shell {
  position: relative;
  width: 38px;
  height: 38px;
  border: 1px solid #c5d1dd;
  border-radius: 9px;
  background: linear-gradient(180deg, #ffffff, #edf4fa);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #234;
  text-decoration: none;
  cursor: pointer;
  box-shadow: 0 1px 3px rgba(0,0,0,.08);
  box-sizing: border-box;
}

.gw3-tool-shell {
  border: 0;
  background: transparent;
  box-shadow: none;
}

.gw3-tool:hover {
  background: linear-gradient(180deg, #ffffff, #e4eef7);
  border-color: #8fb5d8;
}

.gw3-tool:disabled,
.gw3-tool-disabled {
  opacity: .45;
  cursor: default;
}

.gw3-tool img {
  max-width: 24px;
  max-height: 24px;
}

.gw3-tool-home {
  width: 54px;
  flex-direction: column;
  gap: 1px;
}

.gw3-tool-home span {
  font-size: 20px;
  font-weight: 900;
  line-height: 1;
}

.gw3-tool-home small {
  font-size: 9px;
  font-weight: 800;
}

.gw3-tool-badge {
  position: absolute;
  top: -6px;
  right: -6px;
  min-width: 17px;
  height: 17px;
  padding: 0 4px;
  border-radius: 999px;
  background: #f00000;
  color: #fff;
  font-size: 11px;
  font-weight: 900;
  line-height: 17px;
  text-align: center;
  box-shadow: 0 1px 3px rgba(0,0,0,.35);
}

.gw3-leds {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin-left: 12px;
  white-space: nowrap;
}

.gw3-leds img {
  max-height: 14px;
}


/* ===========================================================
   GW3 Cockpit
   =========================================================== */

.gw3-side-panel .gw3-title-blue {
  font-size: 22px;
}

.gw3-side-panel .gw3-muted {
  font-size: 13px;
}

.gw3-side-row {
  font-size: 13px;
  min-height: 30px;
}

.gw3-side-panel .gw3-mode {
  font-size: 10px;
  padding: 1px 5px;
}

.gw3-side-table {
  width: 100%;
}

.gw3-side-row {
  display: grid;
  grid-template-columns: 70px minmax(160px, 1fr) 130px 90px;
  align-items: center;
  min-height: 36px;
  border-bottom: 1px solid #fff;
  padding: 4px 6px;
  font-size: 15px;
}

.gw3-side-row > div {
  padding: 5px 8px;
  min-width: 0;
}

.gw3-side-head {
  background: #fff !important;
  font-weight: 700;
  border-bottom: 1px solid #ccd5dd;
}

.gw3-side-row:nth-child(odd) {
  background: #f2f5f8;
}

.gw3-side-row:nth-child(even) {
  background: #f7f9fb;
}

.gw3-qrg-side {
  white-space: nowrap;
}

.gw3-side-empty {
  padding: 12px;
  background: #f2f5f8;
  text-align: center;
}

.gw3-panel-footer {
  padding: 10px;
  text-align: center;
  font-weight: 700;
}

.gw3-panel-footer a {
  color: #008a22;
  text-decoration: none;
}


/* ===========================================================
   GW3 DX Cluster
   =========================================================== */


.gw3-title-purple {
  color: #6f1aa8;
}

.gw3-dxc-table .gw3-side-row {
  grid-template-columns: 70px 150px 140px 100px minmax(180px, 1fr);
}

.gw3-dxc-info {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* ===========================================================
   GW3 Grid GMA, SOTA, DXC
   =========================================================== */

.gw3-content-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 670px;
  gap: 18px;
  align-items: start;
}

.gw3-left-column,
.gw3-right-column {
  min-width: 0;
}

.gw3-right-column {
  display: flex;
  flex-direction: column;
  gap: 18px;
}


/* ===========================================================
   GW3 compact cockpit tuning 2026-07-01
   =========================================================== */

/* Main two-column cockpit: flexible GMA left, compact side panels right */
.gw3-content-grid {
  display: grid !important;
  grid-template-columns: minmax(760px, 1fr) 530px !important;
  gap: 14px !important;
  align-items: start !important;
}

.gw3-left-column,
.gw3-right-column {
  min-width: 0 !important;
}

.gw3-right-column {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
}

/* GMA table: reclaim space from comment and keep actions visible */
.gw3-gma-table .gw3-row,
.gw3-panel-main .gw3-row {
  grid-template-columns: 68px 62px 92px 150px 150px 150px minmax(150px, 220px) 82px !important;
  min-height: 28px !important;
  font-size: 13px !important;
  line-height: 1.08 !important;
}

.gw3-gma-table .gw3-row > div,
.gw3-panel-main .gw3-row > div {
  padding: 2px 6px !important;
}

.gw3-panel-main .gw3-comment {
  max-width: 220px !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.gw3-panel-main .gw3-comment-main {
  white-space: nowrap !important;
}

.gw3-panel-main .gw3-actions-cell {
  justify-content: flex-end !important;
}

.gw3-panel-main .gw3-actions {
  gap: 4px !important;
}

/* Smaller panel headers and compact action buttons */
.gw3-panel-titlebar {
  min-height: 38px !important;
  padding: 8px 12px !important;
  margin: -14px -14px 8px -14px !important;
}

.gw3-title-blue {
  font-size: 22px !important;
}

.gw3-panel-main .gw3-title-blue {
  font-size: 24px !important;
}

.gw3-action-btn,
.gw3-action-mini {
  min-width: 86px !important;
  height: 26px !important;
  padding: 4px 12px !important;
  font-size: 13px !important;
  line-height: 1 !important;
  border-radius: 999px !important;
}

.gw3-action-primary {
  min-width: 132px !important;
}

.gw3-toggle-label {
  font-size: 12px !important;
}

.gw3-toggle-slider {
  width: 34px !important;
  height: 18px !important;
}

.gw3-toggle-slider::before {
  width: 14px !important;
  height: 14px !important;
}

.gw3-toggle input:checked + .gw3-toggle-slider::before {
  transform: translateX(16px) !important;
}

/* Side panels: SOTA / DXC compact */
.gw3-side-panel {
  padding: 12px !important;
  margin-top: 0 !important;
}

.gw3-side-panel .gw3-title-blue {
  font-size: 20px !important;
  letter-spacing: .3px !important;
}

.gw3-side-panel .gw3-panel-titlebar {
  min-height: 34px !important;
  padding: 7px 10px !important;
  margin: -12px -12px 7px -12px !important;
}

.gw3-side-table {
  width: 100% !important;
}

.gw3-side-row {
  min-height: 25px !important;
  padding: 0 !important;
  font-size: 12px !important;
  line-height: 1.05 !important;
}

.gw3-side-row > div {
  padding: 2px 5px !important;
}

.gw3-side-row b {
  font-size: 13px !important;
}

.gw3-side-head {
  font-size: 12px !important;
  line-height: 1.05 !important;
}

.gw3-side-panel .gw3-mode {
  width: auto !important;
  min-width: 32px !important;
  padding: 1px 5px !important;
  font-size: 9px !important;
  line-height: 1.1 !important;
}

.gw3-callref {
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.gw3-callref .gw3-ref {
  margin-left: 6px !important;
  font-size: 11px !important;
  font-weight: 600 !important;
}

.gw3-sota-table .gw3-side-row {
  grid-template-columns: 46px minmax(150px, 1fr) 118px 72px !important;
}

.gw3-dxc-table .gw3-side-row {
  grid-template-columns: 46px minmax(135px, 1fr) 105px 72px minmax(90px, 1fr) !important;
}

.gw3-qrg-side {
  white-space: nowrap !important;
}

.gw3-dxc-info {
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.gw3-panel-footer {
  display: none !important;
}

/* Rig status stays in the top dashboard between clock and WCY */
.gw3-top-dashboard {
  grid-template-columns: 420px minmax(260px, 1fr) auto !important;
}

#gw3-rigstatus-holder {
  grid-column: 2 !important;
  grid-row: 1 !important;
  position: static !important;
  height: auto !important;
  justify-self: center !important;
  align-self: center !important;
  z-index: 10 !important;
}

#gw3-rigstatus-holder .gw3-rigstatus {
  position: static !important;
  padding: 4px 10px !important;
  font-size: 13px !important;
}

#gw3-rigstatus-holder .gw3-rigfreq {
  font-size: 17px !important;
}

/* Avoid overlap on smaller browser widths */
@media (max-width: 1500px) {
  .gw3-content-grid {
    grid-template-columns: 1fr !important;
  }
}


/* ===========================================================
   GW3 Paket 6 - dashboard alignment / compact final tuning
   =========================================================== */

/* top cockpit: Uhr | Rig | WCY auf eine gemeinsame visuelle Linie */
.gw3-top-dashboard {
  grid-template-columns: 430px minmax(320px, 1fr) auto !important;
  grid-template-rows: auto auto !important;
  gap: 8px 18px !important;
  padding: 8px 20px !important;
  align-items: center !important;
}

.gw3-clock-display {
  max-width: 370px !important;
  min-height: 54px !important;
  padding: 7px 12px !important;
  align-self: center !important;
}

.gw3-clock-time {
  font-size: 25px !important;
}

.gw3-clock-sub {
  font-size: 9px !important;
  margin-top: 2px !important;
}

.swx-panel {
  min-height: 54px !important;
  padding: 7px 12px !important;
}

#gw3-rigstatus-holder {
  grid-column: 2 !important;
  grid-row: 1 !important;
  justify-self: center !important;
  align-self: center !important;
  position: static !important;
  height: auto !important;
  overflow: visible !important;
  z-index: 10 !important;
}

#gw3-rigstatus-holder .gw3-rigstatus {
  min-height: 34px !important;
  padding: 5px 14px !important;
  font-size: 14px !important;
  border-radius: 12px !important;
}

#gw3-rigstatus-holder .gw3-rigfreq {
  font-size: 20px !important;
  letter-spacing: .8px !important;
}

#gw3-rigstatus-holder .gw3-rigmode {
  font-size: 10px !important;
  padding: 2px 6px !important;
}

#gw3-rigstatus-holder .gw3-rigname,
#gw3-rigstatus-holder .gw3-rigchip {
  height: 19px !important;
  font-size: 10px !important;
  padding: 0 6px !important;
}

/* Iconleiste wieder über die ganze Breite und exakt zentriert */
.gw3-top-controls {
  grid-column: 1 / -1 !important;
  grid-row: 2 !important;
  width: 100% !important;
  box-sizing: border-box !important;
  padding: 5px 10px !important;
}

.gw3-toolbar {
  justify-content: center !important;
  margin: 0 auto !important;
}

/* Hauptgrid: rechte Spalte etwas kompakter, linke Spalte bekommt Luft */
.gw3-content-grid {
  grid-template-columns: minmax(820px, 1fr) 500px !important;
  gap: 12px !important;
  align-items: start !important;
}

.gw3-right-column {
  gap: 8px !important;
}

.gw3-right-column .gw3-side-panel,
.gw3-left-column .gw3-panel-main {
  margin-top: 0 !important;
}

/* GMA: 12 Zeilen nutzbar, Kommentar schmaler, Actions stabil */
.gw3-gma-table .gw3-row,
.gw3-panel-main .gw3-row {
  grid-template-columns: 62px 58px 84px 136px 142px 136px minmax(130px, 180px) 86px !important;
  min-height: 26px !important;
  font-size: 12px !important;
  line-height: 1.05 !important;
}

.gw3-gma-table .gw3-row > div,
.gw3-panel-main .gw3-row > div {
  padding: 2px 5px !important;
}

.gw3-panel-main .gw3-comment {
  max-width: 180px !important;
}

.gw3-panel-main .gw3-actions-cell {
  min-width: 80px !important;
}

.gw3-panel-main .gw3-actions {
  gap: 3px !important;
}

/* Panelheader und Buttons flacher */
.gw3-panel-titlebar {
  min-height: 34px !important;
  padding: 6px 10px !important;
  margin: -14px -14px 7px -14px !important;
}

.gw3-panel-main .gw3-title-blue {
  font-size: 22px !important;
}

.gw3-title-sep {
  height: 22px !important;
}

.gw3-muted {
  font-size: 12px !important;
}

.gw3-action-btn,
.gw3-action-mini {
  min-width: 72px !important;
  height: 23px !important;
  padding: 3px 10px !important;
  font-size: 12px !important;
}

.gw3-action-primary {
  min-width: 118px !important;
}

.gw3-toggle {
  gap: 5px !important;
}

.gw3-toggle-label {
  font-size: 11px !important;
}

/* SOTA/DXC kompakter und gleiche Optik */
.gw3-side-panel {
  padding: 10px !important;
}

.gw3-side-panel .gw3-panel-titlebar {
  min-height: 30px !important;
  padding: 6px 8px !important;
  margin: -10px -10px 6px -10px !important;
}

.gw3-side-panel .gw3-title-blue {
  font-size: 18px !important;
}

.gw3-side-row {
  min-height: 23px !important;
  font-size: 11px !important;
  line-height: 1.0 !important;
}

.gw3-side-row > div {
  padding: 2px 4px !important;
}

.gw3-side-row b {
  font-size: 12px !important;
}

.gw3-side-head {
  font-size: 11px !important;
  min-height: 24px !important;
}

.gw3-callref .gw3-ref {
  font-size: 10px !important;
  margin-left: 5px !important;
}

.gw3-sota-table .gw3-side-row {
  grid-template-columns: 42px minmax(130px, 1fr) 104px 64px !important;
}

.gw3-dxc-table .gw3-side-row {
  grid-template-columns: 42px minmax(118px, 1fr) 92px 64px minmax(90px, 1fr) !important;
}

.gw3-side-panel .gw3-mode {
  min-width: 28px !important;
  font-size: 8px !important;
  padding: 1px 4px !important;
}

.gw3-qrg-side {
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* bei kleineren Breiten untereinander stapeln statt überlappen */
@media (max-width: 1500px) {
  .gw3-content-grid {
    grid-template-columns: 1fr !important;
  }
}


/* ==========================================================
   Paket 7 fine tuning: side panels, compact GMA, flags
   ========================================================== */

/* Icon/Linkleiste wieder ueber die komplette Kopfbreite zentrieren */
.gw3-top-controls {
  grid-column: 1 / 4 !important;
  justify-self: stretch !important;
}
.gw3-toolbar {
  justify-content: center !important;
}

/* Hauptlayout: GMA etwas schmaler, rechte Spalte stabil */
.gw3-content-grid {
  grid-template-columns: minmax(760px, 1fr) 500px !important;
  gap: 10px !important;
  align-items: start !important;
}
.gw3-left-column,
.gw3-right-column {
  min-width: 0 !important;
  margin-top: 0 !important;
}
.gw3-panel-main,
.gw3-side-panel {
  margin-top: 0 !important;
}
.gw3-right-column {
  gap: 7px !important;
}

/* GMA: weniger Spaltenluft, Kommentar nicht mehr so dominant */
.gw3-gma-table .gw3-row,
.gw3-panel-main .gw3-row {
  grid-template-columns: 56px 52px 76px 118px 124px 128px minmax(110px, 145px) 78px !important;
  column-gap: 0 !important;
}
.gw3-gma-table .gw3-row > div,
.gw3-panel-main .gw3-row > div {
  padding-left: 3px !important;
  padding-right: 3px !important;
}
.gw3-panel-main .gw3-comment {
  max-width: 145px !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
.gw3-panel-main .gw3-actions-cell {
  min-width: 74px !important;
}

/* SOTA/DXC: Calls schwarz, Ref daneben, Flags klein */
.gw3-side-row .gw3-calllink {
  color: #000 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}
.gw3-side-row .gw3-calllink:hover {
  text-decoration: underline !important;
}
.gw3-side-row .gw3-ref a,
.gw3-side-row .gw3-ref {
  font-size: 10px !important;
  font-weight: 700 !important;
}
.gw3-side-flag {
  height: 7px !important;
  max-width: 12px !important;
  margin-right: 3px !important;
  vertical-align: middle !important;
  border: 0 !important;
}
.gw3-callref {
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* QRG/Mode in SOTA/DXC wie bei GMA ordentlich ausrichten */
.gw3-qrg-side {
  display: grid !important;
  grid-template-columns: 52px 34px 12px !important;
  gap: 3px !important;
  align-items: center !important;
  white-space: nowrap !important;
}
.gw3-qrg-side .gw3-qrg-freq {
  text-align: right !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
.gw3-qrg-side .gw3-qrg-mode {
  text-align: left !important;
}
.gw3-qrg-side .gw3-qrg-rbn {
  text-align: left !important;
}
.gw3-qrg-side .gw3-mode {
  display: inline-block !important;
  text-align: center !important;
}

/* rechte Tabellen minimal nachjustieren */
.gw3-sota-table .gw3-side-row {
  grid-template-columns: 38px minmax(135px, 1fr) 104px 62px !important;
}
.gw3-dxc-table .gw3-side-row {
  grid-template-columns: 38px minmax(120px, 1fr) 104px 62px minmax(76px, 1fr) !important;
}

@media (max-width: 1500px) {
  .gw3-content-grid {
    grid-template-columns: 1fr !important;
  }
}


/* ==========================================================
   GW3 Paket 8 - final spacing tweaks
   ========================================================== */

/* SOTA/DXC: Rufzeichen nicht fett, nur sauber lesbar */
.gw3-side-row .gw3-calllink,
.gw3-side-row b .gw3-calllink {
  color: #000 !important;
  font-weight: 400 !important;
  text-decoration: none !important;
}
.gw3-side-row .gw3-calllink:hover {
  text-decoration: underline !important;
}
.gw3-side-row b {
  font-weight: 400 !important;
}
.gw3-side-row .gw3-ref,
.gw3-side-row .gw3-ref a {
  font-weight: 600 !important;
}

/* GMA: Platz aus der rechten Leere in Call/Kommentar umverteilen */
.gw3-gma-table .gw3-row,
.gw3-panel-main .gw3-row {
  grid-template-columns: 58px 54px 82px 122px 130px 205px minmax(150px, 190px) 88px !important;
  column-gap: 0 !important;
}
.gw3-gma-table .gw3-row > div,
.gw3-panel-main .gw3-row > div {
  padding-left: 3px !important;
  padding-right: 3px !important;
}
.gw3-panel-main .gw3-call {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
.gw3-panel-main .gw3-call .gw3-flag {
  margin-right: 5px !important;
  vertical-align: middle !important;
}
.gw3-panel-main .gw3-comment {
  max-width: 190px !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
.gw3-panel-main .gw3-actions-cell {
  min-width: 84px !important;
  text-align: left !important;
}
.gw3-panel-main .gw3-actions {
  justify-content: flex-start !important;
  gap: 4px !important;
}

/* SOTA/DXC Flags dezent, aber sichtbar */
.gw3-side-flag {
  height: 7px !important;
  max-width: 11px !important;
  margin-right: 3px !important;
  vertical-align: middle !important;
}

/* SOTA/DXC: QRG, Mode und RBN-Pfeil gleichmaessiger */
.gw3-qrg-side {
  display: grid !important;
  grid-template-columns: 54px 34px 12px !important;
  gap: 3px !important;
  align-items: center !important;
  white-space: nowrap !important;
}
.gw3-qrg-side .gw3-qrg-freq {
  text-align: right !important;
}
.gw3-qrg-side .gw3-mode {
  min-width: 28px !important;
  text-align: center !important;
}

/* ==========================================================
   GW3 Paket 9 - final GMA spacing and side text weight
   ========================================================== */

/* SOTA/DXC: Links normalgewichtig, nur die Referenzen leicht betont */
.gw3-side-panel a,
.gw3-side-panel .gw3-calllink,
.gw3-side-panel .gw3-callref a {
  font-weight: 400 !important;
}
.gw3-side-panel .gw3-ref,
.gw3-side-panel .gw3-ref a {
  font-weight: 600 !important;
}

/* SOTA/DXC: Flags sehr dezent */
.gw3-side-flag {
  height: 6px !important;
  max-width: 10px !important;
  margin-right: 3px !important;
  vertical-align: 1px !important;
  border: 0 !important;
}

/* GMA: QRG-Spalte breiter, damit Mode/Flag nicht ineinander laufen */
.gw3-gma-table .gw3-row,
.gw3-panel-main .gw3-row {
  grid-template-columns: 58px 54px 82px 122px 170px 210px minmax(160px, 1fr) 105px !important;
  column-gap: 0 !important;
}

/* GMA: QRG intern kompakter, bleibt innerhalb der QRG-Spalte */
.gw3-panel-main .gw3-qrg,
.gw3-gma-table .gw3-qrg {
  display: grid !important;
  grid-template-columns: 94px 42px 16px !important;
  gap: 3px !important;
  align-items: center !important;
  white-space: nowrap !important;
  overflow: hidden !important;
}
.gw3-panel-main .gw3-qrg a:first-child,
.gw3-gma-table .gw3-qrg a:first-child {
  text-align: right !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
.gw3-panel-main .gw3-qrg .gw3-mode,
.gw3-gma-table .gw3-qrg .gw3-mode {
  min-width: 36px !important;
  text-align: center !important;
}

/* GMA: Call sauber mit Flag und Text nebeneinander */
.gw3-panel-main .gw3-call,
.gw3-gma-table .gw3-call {
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
  min-width: 0 !important;
  overflow: hidden !important;
  white-space: nowrap !important;
}
.gw3-panel-main .gw3-call .gw3-flag,
.gw3-gma-table .gw3-call .gw3-flag {
  flex: 0 0 auto !important;
  height: 11px !important;
  max-width: 18px !important;
  margin: 0 3px 0 0 !important;
  vertical-align: middle !important;
}
.gw3-panel-main .gw3-call a,
.gw3-gma-table .gw3-call a {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* GMA: Actions bekommen den Platz rechts, ohne leere Zentimeter */
.gw3-panel-main .gw3-actions-cell,
.gw3-gma-table .gw3-actions-cell {
  min-width: 100px !important;
  width: 100px !important;
}
.gw3-panel-main .gw3-actions,
.gw3-gma-table .gw3-actions {
  justify-content: flex-start !important;
  gap: 5px !important;
}


/* ==========================================================
   GW3 Paket 10 - final GMA column spacing
   ========================================================== */

/* GMA: Comment/Actions weiter nach links, Call/QRG bleiben sauber getrennt */
.gw3-gma-table .gw3-row,
.gw3-panel-main .gw3-row {
  grid-template-columns:
    58px   /* Date */
    54px   /* UTC */
    82px   /* de */
    124px  /* Ref */
    168px  /* QRG / Mode */
    150px  /* Call */
    190px  /* Comment */
    100px   /* Actions */ !important;
  column-gap: 0 !important;
}

.gw3-gma-table .gw3-row > div,
.gw3-panel-main .gw3-row > div {
  padding-left: 3px !important;
  padding-right: 3px !important;
}

/* QRG intern stabil halten: Frequenz | Mode | RBN-Pfeil */
.gw3-gma-table .gw3-qrg,
.gw3-panel-main .gw3-qrg {
  display: grid !important;
  grid-template-columns: 92px 42px 16px !important;
  gap: 3px !important;
  align-items: center !important;
  white-space: nowrap !important;
  overflow: hidden !important;
}

.gw3-gma-table .gw3-qrg a:first-child,
.gw3-panel-main .gw3-qrg a:first-child {
  text-align: right !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.gw3-gma-table .gw3-qrg .gw3-mode,
.gw3-panel-main .gw3-qrg .gw3-mode {
  min-width: 36px !important;
  width: 36px !important;
  text-align: center !important;
}

/* Call: Flagge und Rufzeichen sauber nebeneinander */
.gw3-gma-table .gw3-call,
.gw3-panel-main .gw3-call {
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
  min-width: 0 !important;
  overflow: hidden !important;
  white-space: nowrap !important;
}

.gw3-gma-table .gw3-call .gw3-flag,
.gw3-panel-main .gw3-call .gw3-flag {
  flex: 0 0 auto !important;
  height: 11px !important;
  max-width: 18px !important;
  margin: 0 3px 0 0 !important;
  vertical-align: middle !important;
}

.gw3-gma-table .gw3-call a,
.gw3-panel-main .gw3-call a {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* Comment: bewusst schmal, damit Actions nicht rechts hängen */
.gw3-gma-table .gw3-comment,
.gw3-panel-main .gw3-comment {
  max-width: 180px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.gw3-gma-table .gw3-comment-main,
.gw3-panel-main .gw3-comment-main {
  white-space: nowrap !important;
}

/* Actions: kompakt direkt hinter Comment */
.gw3-gma-table .gw3-actions-cell,
.gw3-panel-main .gw3-actions-cell {
  min-width: 84px !important;
  width: 84px !important;
  justify-content: flex-start !important;
  text-align: left !important;
}

.gw3-gma-table .gw3-actions,
.gw3-panel-main .gw3-actions {
  justify-content: flex-start !important;
  gap: 4px !important;
}

/* SOTA/DXC: Call-Links normal, nicht fett */
.gw3-side-panel a,
.gw3-side-panel .gw3-calllink,
.gw3-side-panel .gw3-callref a,
.gw3-side-panel b,
.gw3-side-row b {
  font-weight: 400 !important;
}

.gw3-side-panel .gw3-ref,
.gw3-side-panel .gw3-ref a {
  font-weight: 600 !important;
}


/* ==========================================================
   GW3 RBN
   ========================================================== */


.gw3-rbn-modal {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 60000;
  background: rgba(0,0,0,.62);
  align-items: center;
  justify-content: center;
}

.gw3-rbn-modal-box {
  position: relative;
  width: 620px;
  height: 390px;
  max-width: calc(100vw - 40px);
  max-height: calc(100vh - 40px);
  background: #fff;
  border-radius: 14px;
  box-shadow: 0 18px 60px rgba(0,0,0,.45);
  overflow: hidden;
}

.gw3-rbn-modal-box iframe {
  width: 100%;
  height: 100%;
  border: 0;
}

.gw3-rbn-modal-close {
  position: absolute;
  top: 8px;
  right: 12px;
  z-index: 60001;
  border: 0;
  background: #fff;
  color: #111;
  font-size: 30px;
  line-height: 30px;
  cursor: pointer;
}


/* ==========================================================
   GW3 Talks Modal
   ========================================================== */

.gw3-talk-modal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 70000 !important;
  background: rgba(0,0,0,.62) !important;
  display: none;
  align-items: center;
  justify-content: center;
}

.gw3-talk-modal-box {
  position: relative;
  width: 1050px;
  height: 90vh;
  max-width: calc(100vw - 60px);
  max-height: calc(100vh - 60px);
  background: #fff;
  border-radius: 14px;
  box-shadow: 0 18px 60px rgba(0,0,0,.45);
  overflow: hidden;
  z-index: 70001 !important;
}

.gw3-talk-modal-box iframe {
  width: 100%;
  height: 100%;
  border: 0;
}

.gw3-talk-modal-close {
  position: absolute;
  top: 10px;
  right: 14px;
  z-index: 70002 !important;
  border: 0;
  background: #2f6f36;
  color: #fff;
  width: 44px;
  height: 44px;
  border-radius: 999px;
  font-size: 30px;
  line-height: 38px;
  cursor: pointer;
}


.gw3-lastqso {
    font-size: 10px;
    font-weight: 400;
    color: #444;
    text-align: center;
    padding: 4px 0 2px;
    line-height: 1.0;

    margin: 8px 0 2px;
}

.gw3-lastqso b {
    font-weight: 400;
}

.gw3-lastqso .qso-dot {
    color: #18a318;
    font-size: 10px;
}


/* ==========================================================
   GW3 Release 3.1 final polish
   ========================================================== */

.gw3-row {
  grid-template-columns: 82px 70px 110px 180px 180px 200px minmax(340px, 1fr) 90px;
  min-height: 36px;
}

.gw3-actions-cell {
  justify-content: flex-end;
}

.gw3-justworked.gw3-lastqso-status {
  margin: 4px 8px 2px;
  padding: 3px 6px;
  text-align: center;
  font-size: 10px !important;
  line-height: 1.2 !important;
}

.gw3-justworked.gw3-lastqso-status * {
  font-size: inherit !important;
  line-height: inherit !important;
}


/*
.gw3-lastqso-dot {
    display: inline-block;
    width: 9px;
    height: 9px;
    margin-right: 5px;
    border-radius: 50%;
    background: #18c218;
    vertical-align: middle;
}

*/

@media (min-width: 1800px) {
  .gw3-row {
    grid-template-columns: 90px 80px 150px 210px 210px 155px minmax(680px, 1fr) 100px;
  }
}

@media (max-width: 1300px) {
  .gw3-table { overflow-x: auto; }
  .gw3-row { min-width: 1220px; }
}
/* ==========================================================
   GW3 responsive cockpit patch 2026-07-08
   Ziel: grosses Layout auch auf kleineren Screens behalten.
   Keine Kachel-Umsortierung bei Notebookbreiten, sondern
   Kopfbereich, GMA-Tabelle und rechte Spalte kompakt skalieren.
   ========================================================== */

/* Die alten max-width:1500-Regeln stapeln GMA/SOTA/DX untereinander.
   Hier bewusst wieder zwei Spalten: links GMA, rechts SOTA + DX. */
@media (max-width: 1500px) {
  .gw3-content-grid {
    grid-template-columns: minmax(735px, 1fr) 420px !important;
    gap: 8px !important;
    align-items: start !important;
  }

  .gw3-panel,
  .gw3-side-panel {
    padding: 8px !important;
    border-radius: 12px !important;
    margin-bottom: 10px !important;
  }

  .gw3-panel-titlebar,
  .gw3-side-panel .gw3-panel-titlebar {
    min-height: 28px !important;
    padding: 5px 8px !important;
    margin: -8px -8px 6px -8px !important;
    gap: 8px !important;
  }

  .gw3-panel-title-left {
    gap: 8px !important;
  }

  .gw3-panel-main .gw3-title-blue,
  .gw3-title-blue {
    font-size: 20px !important;
  }

  .gw3-muted {
    font-size: 11px !important;
  }

  .gw3-panel-actions,
  .gw3-head-actions {
    gap: 6px !important;
  }

  .gw3-action-btn,
  .gw3-action-mini {
    min-width: 64px !important;
    height: 22px !important;
    padding: 2px 8px !important;
    font-size: 11px !important;
  }

  .gw3-action-primary {
    min-width: 112px !important;
  }

  .gw3-summit-only,
  .gw3-toggle-label {
    font-size: 11px !important;
  }

  .gw3-table {
    overflow-x: visible !important;
  }

  .gw3-gma-table .gw3-row,
  .gw3-panel-main .gw3-row {
    min-width: 0 !important;
    grid-template-columns:
      50px   /* Date */
      46px   /* UTC */
      68px   /* de */
      104px  /* Ref */
      148px  /* QRG / Mode */
      128px  /* Call */
      minmax(96px, 1fr) /* Comment */
      72px   /* Actions */ !important;
    min-height: 24px !important;
    font-size: 11px !important;
    line-height: 1.0 !important;
  }

  .gw3-gma-table .gw3-row > div,
  .gw3-panel-main .gw3-row > div {
    padding: 1px 3px !important;
  }

  .gw3-gma-table .gw3-qrg,
  .gw3-panel-main .gw3-qrg {
    grid-template-columns: 78px 36px 12px !important;
    gap: 2px !important;
  }

  .gw3-gma-table .gw3-qrg .gw3-mode,
  .gw3-panel-main .gw3-qrg .gw3-mode {
    min-width: 32px !important;
    width: 32px !important;
    padding: 1px 3px !important;
    font-size: 9px !important;
  }

  .gw3-gma-table .gw3-call .gw3-flag,
  .gw3-panel-main .gw3-call .gw3-flag {
    height: 9px !important;
    max-width: 15px !important;
    margin-right: 2px !important;
  }

  .gw3-gma-table .gw3-comment,
  .gw3-panel-main .gw3-comment {
    max-width: none !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .gw3-gma-table .gw3-actions-cell,
  .gw3-panel-main .gw3-actions-cell {
    min-width: 68px !important;
    width: 68px !important;
  }

  .gw3-gma-table .gw3-actions,
  .gw3-panel-main .gw3-actions {
    gap: 2px !important;
  }

  .gw3-action img,
  .gw3-action input[type="image"],
  .gw3-action-slot img,
  .gw3-action-slot input[type="image"] {
    height: 12px !important;
    max-height: 12px !important;
  }

  .gw3-side-row {
    min-height: 22px !important;
    font-size: 10px !important;
  }

  .gw3-side-head {
    font-size: 10px !important;
    min-height: 22px !important;
  }

  .gw3-sota-table .gw3-side-row {
    grid-template-columns: 34px minmax(118px, 1fr) 92px 50px !important;
  }

  .gw3-dxc-table .gw3-side-row {
    grid-template-columns: 34px minmax(100px, 1fr) 90px 50px minmax(56px, 1fr) !important;
  }

  .gw3-qrg-side {
    grid-template-columns: 48px 30px 10px !important;
    gap: 2px !important;
  }
}

/* Kopfbereich auf Notebookbreite nur verdichten, nicht umbrechen. */
@media (max-width: 1500px) {
  #gmaieshadowbox95 {
    width: calc(100% - 8px) !important;
    padding: 8px 10px !important;
    margin: 6px auto 8px auto !important;
  }

  .gw3-top-dashboard {
    grid-template-columns: 345px minmax(225px, 1fr) auto !important;
    grid-template-rows: auto auto !important;
    gap: 6px 10px !important;
    padding: 8px 12px !important;
  }

  .gw3-clock-display {
    max-width: 320px !important;
    min-height: 46px !important;
    padding: 6px 10px !important;
  }

  .gw3-clock-time {
    font-size: 23px !important;
  }

  .gw3-clock-sub {
    font-size: 8px !important;
  }

  #gw3-rigstatus-holder .gw3-rigstatus {
    min-height: 30px !important;
    padding: 4px 9px !important;
    font-size: 11px !important;
  }

  #gw3-rigstatus-holder .gw3-rigfreq {
    font-size: 18px !important;
  }

  .swx-panel {
    min-height: 46px !important;
    padding: 5px 8px !important;
    gap: 6px !important;
  }

  .swx-head {
    min-width: 52px !important;
    padding-right: 6px !important;
  }

  .swx-head a {
    font-size: 18px !important;
  }

  .swx-head span {
    font-size: 8px !important;
  }

  .swx-cards {
    gap: 4px !important;
  }

  .swx-card {
    min-width: 38px !important;
    padding: 3px 4px !important;
  }

  .swx-card b {
    font-size: 12px !important;
  }

  .gw3-top-controls {
    padding: 4px 8px !important;
  }

  .gw3-toolbar {
    gap: 5px !important;
    padding: 3px 6px !important;
  }

  .gw3-tool,
  .gw3-tool-shell {
    width: 34px !important;
    height: 34px !important;
  }

  .gw3-tool-home {
    width: 48px !important;
  }
}

/* Erst wenn es wirklich eng wird: ganze Seite darf horizontal scrollen.
   Das ist besser als Kacheln wild umzubauen. */
@media (max-width: 1180px) {
  body {
    overflow-x: auto !important;
  }

  #gmaieshadowbox95 {
    min-width: 1160px !important;
  }
}

/* ==========================================================
   Cockpit footer integration for GW3
   ========================================================== */

html,
body {
  background: #eef2f5;
}

body > table {
  background: #ffffff !important;
}

.foot {
  margin: 0 !important;
  padding: 0 0 10px 0 !important;
  background: #ffffff !important;
}


@media (max-width: 1180px) {

}

/* ==========================================================
   GW3 footer / cockpit polish 2026-07-08
   Ziel: kleinerer Footer, weicheres Hauptpanel, Cockpit-Optik.
   ========================================================== */

#gmaieshadowbox95 {
  margin: 8px auto 14px auto !important;
  padding: 14px 18px 10px 18px !important;
  background: #ffffff !important;
  border-radius: 22px !important;
  box-shadow: 0 10px 26px rgba(0, 0, 0, 0.13) !important;
  overflow: hidden !important;
}

body > table,
body > table > tbody,
body > table > tbody > tr,
body > table > tbody > tr > td {
  background: #ffffff !important;
}

.foot {
  margin: 0 !important;
  padding: 0 0 12px 0 !important;
  background: #ffffff !important;
}


@media (max-width: 1180px) {
  #gmaieshadowbox95 {
    min-width: 1160px !important;
  }
}
