/* --------------------------------------------------
   GLOBAL PAGE LAYOUT
-------------------------------------------------- */
body {
    margin: 0;
    padding: 0;
    background: #1e1e1e;
    color: #f0f0f0;
    font-family: Arial, sans-serif;
    overflow-x: hidden;
}

h1 {
    text-align: center;
    margin: 20px 0;
    color: #ffffff;
}

/* --------------------------------------------------
   TOOLBAR
-------------------------------------------------- */
#toolbar {
    width: 100%;
    background: #2b2b2b;
    padding: 12px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
    border-bottom: 2px solid #444;
    position: relative;
    z-index: 1000;
}

.toolButton {
    background: #3a3a3a;
    color: #fff;
    padding: 10px 16px;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    font-size: 15px;
    transition: background 0.2s, transform 0.15s;
}

.toolButton:hover {
    background: #505050;
    transform: scale(1.05);
}

.toolButton.active {
    background: #0078ff;
}

/* --------------------------------------------------
   FONT CONTROLS
-------------------------------------------------- */
#fontControls {
    text-align: center;
    background: #2b2b2b;
    padding: 10px;
    border-bottom: 1px solid #444;
    color: #fff;
}

#fontControls select {
    margin: 0 6px;
    padding: 6px;
    border-radius: 4px;
    background: #3a3a3a;
    color: #fff;
    border: 1px solid #555;
    font-size: 14px;
}


//---------------------------------------------------

/* ======== CALLSIGN INPUT PANEL ======== */
#stations label {
  display: block;
  font-size: 0.9rem;
  color: #ccc;
  margin-bottom: 4px;
}

#stations input[type="text"] {
  width: 100%;
  padding: 8px;
  margin-bottom: 10px;
  border: 1px solid #333;
  border-radius: 4px;
  background: #111;
  color: #eee;
  font-size: 0.95rem;
  transition: border 0.2s ease, background 0.2s ease;
}

#stations input[type="text"]:focus {
  border-color: #666;
  background: #181818;
  outline: none;
}

#stations button {
  width: 100%;
  padding: 10px;
  background: linear-gradient(to bottom, #2b2b2b, #1b1b1b);
  border: 1px solid #333;
  border-radius: 4px;
  color: #eee;
  font-size: 0.95rem;
  cursor: pointer;
  transition: all 0.2s ease;
}

#stations button:hover {
  background: linear-gradient(to bottom, #3a3a3a, #222);
  border-color: #444;
}

#stations button:active {
  background: #111;
  border-color: #555;
}

/* Add slight spacing between input section and station data */
#stations .station-block {
  margin-top: 10px;
}


//---------------------------------------------------



/* --------------------------------------------------
   PDF CONTAINER + CANVAS
-------------------------------------------------- */
#pdfContainer {
    width: 100%;
    text-align: center;
    margin-top: 20px;
    position: relative;
    z-index: 1;
}

#pdfCanvas {
    background: #ffffff;
    margin: 0 auto;
    display: block;
    max-width: 95%;
    height: auto;
    border: 1px solid #555;
    z-index: 10;
    position: relative;
    pointer-events: auto;
}

/* --------------------------------------------------
   TEXT TOOL INPUT BOX
-------------------------------------------------- */
#textInputBox {
    position: absolute;
    display: none;
    background: #ffffff;
    color: #000000;
    border: 2px solid #0078ff;
    padding: 6px;
    font-size: 16px;
    border-radius: 4px;
    z-index: 2000;
    outline: none;
}

/* --------------------------------------------------
   FILE INPUT + CONTROLS
-------------------------------------------------- */
#fileInput {
    display: none;
}

#controls {
    text-align: center;
    margin-top: 20px;
}

#pageInfo {
    margin: 10px;
    font-size: 16px;
}

/* --------------------------------------------------
   SAVE BUTTON
-------------------------------------------------- */
#saveButton {
    background: #28a745;
    color: #fff;
    padding: 12px 20px;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    font-size: 17px;
    transition: background 0.2s, transform 0.15s;
}

#saveButton:hover {
    background: #32c85a;
    transform: scale(1.05);
}

/* --------------------------------------------------
   RETURN / INSTRUCTIONS STYLING
-------------------------------------------------- */
.returnButton {
    background: linear-gradient(45deg, #ff7a00, #ffb347);
    color: #fff;
    font-weight: bold;
    border: none;
    border-radius: 6px;
    padding: 10px 20px;
    cursor: pointer;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.3);
}

.returnButton:hover {
    background: linear-gradient(45deg, #ff9500, #ffc567);
    transform: scale(1.05);
}

#instructions {
    background: #282828;
    border-top: 2px solid #444;
    border-bottom: 2px solid #444;
    margin: 0;
    padding: 20px;
    color: #f0f0f0;
    text-align: center;
}

#instructions h3 {
    margin: 10px 0;
    color: #00aaff;
}

#instructions p {
    line-height: 1.6;
    font-size: 15px;
}

/* --------------------------------------------------
   MOBILE RESPONSIVE
-------------------------------------------------- */
@media (max-width: 600px) {
    #toolbar {
        flex-direction: column;
        gap: 10px;
    }

    .toolButton {
        width: 90%;
        font-size: 16px;
    }

    #saveButton {
        width: 90%;
    }

    #fontControls {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 8px;
    }

    #fontControls select {
        width: 80%;
    }

    #instructions p {
        font-size: 14px;
    }
}
