* { box-sizing: border-box; } /* Sikrer at padding ikke endrer knappestørrelsen */

body { font-family: 'Segoe UI', Arial, sans-serif; text-align: center; background: #121212; color: #ffffff; margin: 0; padding: 20px; user-select: none; }
.container { max-width: 800px; margin: 0 auto; }
.box { background: #1e1e1e; padding: 25px; margin: 20px 0; border-radius: 14px; box-shadow: 0 6px 15px rgba(0,0,0,0.4); border: 1px solid #2d2d2d; }

.hidden { display: none !important; }
.role-btn { font-size: 20px; padding: 20px; margin: 10px 0; width: 100%; border: none; border-radius: 8px; cursor: pointer; font-weight: bold; color: white; }
.btn-setup-a { background: #e74c3c; }
.btn-setup-b { background: #3498db; }
.btn-setup-base { background: #2ecc71; }

/* Gjør flaggmann-knappene helt identiske i størrelse */
.trigger-btn { width: 100%; height: 55vh; font-size: 40px; font-weight: bold; color: white; border: none; border-radius: 20px; cursor: pointer; text-shadow: 2px 2px 4px rgba(0,0,0,0.5); box-shadow: 0 8px 20px rgba(0,0,0,0.5); display: block; margin: 0 auto; }
.bg-a { background: linear-gradient(135deg, #ff416c, #ff4b2b); }
.bg-b { background: linear-gradient(135deg, #2193b0, #6dd5ed); }
.trigger-btn:disabled { background: #444 !important; color: #777; box-shadow: none; cursor: not-allowed; }

/* Infotekst for flaggmenn */
.flagg-info-text { font-size: 28px; font-weight: bold; color: #f1c40f; margin-bottom: 20px; font-family: monospace; background: #1e1e1e; padding: 15px; border-radius: 10px; border: 1px solid #333; }

/* Basestasjon */
.main-timer { font-size: 64px; font-weight: bold; font-family: monospace; color: #2ecc71; margin: 15px 0; text-shadow: 0 0 10px rgba(46,204,113,0.3); }
.countdown-active { color: #f1c40f; text-shadow: 0 0 10px rgba(241,196,15,0.3); }
.control-btn { font-size: 20px; padding: 15px 30px; margin: 10px; border: none; border-radius: 8px; font-weight: bold; cursor: pointer; color: white; min-width: 150px; }
.btn-start { background: #2ecc71; }
.btn-abort { background: #e74c3c; }

#totaltid-boks { margin-top: 20px; font-size: 24px; color: #2ecc71; font-weight: bold; background: #1a2e1a; padding: 15px; border-radius: 8px; border: 1px solid #2ecc71; }

table { width: 100%; border-collapse: collapse; margin-top: 20px; font-size: 18px; }
th, td { padding: 12px; border-bottom: 1px solid #333; text-align: center; }
th { background-color: #252525; color: #aaa; font-weight: 500; }
tr:nth-child(even) { background-color: #1a1a1a; }
.highlight-row { background-color: #2d3722 !important; font-weight: bold; }

.status-badge { display: inline-block; padding: 8px 16px; border-radius: 20px; font-weight: bold; font-size: 16px; background: #333; margin-bottom: 10px; }
.status-ready { background: #27ae60; }
.status-cd { background: #f39c12; color: black; }
.status-flying { background: #2980b9; }

.reset-link { color: #666; font-size: 14px; text-decoration: underline; cursor: pointer; display: inline-block; margin-top: 30px; }
