/* ===== HEADER BAR ===== */ .header-bar { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; margin-bottom: 15px; gap: 16px; } .header-bar h1 { font-family: var(--font-display); font-weight: var(--font-weight-bold); font-size: var(--font-size-2xl); letter-spacing: 0.1em; text-shadow: 0 0 20px rgba(0, 255, 136, 0.3); } .header-time { font-family: var(--font-tech); font-size: var(--font-size-lg); text-align: center; white-space: nowrap; padding: 6px 12px; border: 1px solid rgba(0, 255, 136, 0.35); border-radius: 8px; background: rgba(0, 255, 136, 0.05); letter-spacing: 0.05em; } .header-bar .cam-btn { justify-self: end; } /* ===== CAMERA BUTTON ===== */ .cam-btn { padding: 8px 16px; background: rgba(0, 0, 0, 0.6); color: #00ff88; border: 1px solid #00ff88; border-radius: 8px; cursor: pointer; font-family: var(--font-mono); font-size: var(--font-size-base); font-weight: var(--font-weight-semibold); display: flex; align-items: center; gap: 8px; white-space: nowrap; flex-shrink: 0; transition: all 0.3s ease; letter-spacing: 0.03em; } .cam-btn:hover { background: rgba(0, 255, 136, 0.2); box-shadow: 0 0 20px rgba(0, 255, 136, 0.1); transform: translateY(-1px); } .cam-btn-icon { font-size: 16px; } /* ===== HEADER CONTROLS ===== */ .header-controls { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; justify-content: flex-end; } .header-link { color: #00ff88; text-decoration: none; font-size: var(--font-size-base); border: 1px solid rgba(0, 255, 136, 0.3); padding: 6px 14px; border-radius: 6px; transition: all 0.3s ease; font-family: var(--font-mono); font-weight: var(--font-weight-semibold); white-space: nowrap; } .header-link:hover { background: rgba(0, 255, 136, 0.1); border-color: #00ff88; box-shadow: 0 0 20px rgba(0, 255, 136, 0.05); } .audio-indicator { font-size: var(--font-size-lg); padding: 4px 12px; border-radius: 6px; background: rgba(0, 0, 0, 0.4); border: 1px solid #333; min-width: 50px; text-align: center; font-family: var(--font-tech); transition: all 0.3s ease; user-select: none; } .audio-indicator.active { border-color: #00ff88; box-shadow: 0 0 15px rgba(0, 255, 136, 0.3); animation: pulse 1s ease-in-out infinite; } /* ===== CAMERA CLOSE BUTTON ===== */ .cam-close-btn { background: rgba(255, 68, 68, 0.2); color: #ff4466; border: 1px solid rgba(255, 68, 68, 0.3); border-radius: 4px; padding: 4px 10px; cursor: pointer; font-size: var(--font-size-base); font-family: var(--font-mono); transition: all 0.3s ease; } .cam-close-btn:hover { background: rgba(255, 68, 68, 0.3); border-color: #ff4466; box-shadow: 0 0 20px rgba(255, 68, 68, 0.1); } /* ===== МОБИЛЬНАЯ АДАПТАЦИЯ ХЕДЕРА ===== */ @media (max-width: 768px) { .header-bar { display: flex; flex-direction: column; align-items: stretch; gap: 8px; margin-bottom: 12px; } .header-bar h1 { text-align: center; font-size: var(--font-size-lg); } .header-controls { justify-content: center; gap: 6px; } .header-link { font-size: var(--font-size-sm); padding: 6px 10px; } .header-time { font-size: var(--font-size-sm); padding: 4px 8px; } .audio-indicator { font-size: var(--font-size-base); padding: 4px 8px; min-width: 40px; } .cam-btn { font-size: var(--font-size-sm); padding: 6px 10px; } } @media (max-width: 480px) { .header-bar h1 { font-size: var(--font-size-base); } .header-controls { gap: 4px; flex-wrap: wrap; } .header-link { font-size: var(--font-size-xs); padding: 4px 8px; } .header-time { font-size: var(--font-size-xs); padding: 3px 6px; } .audio-indicator { font-size: var(--font-size-sm); padding: 3px 6px; min-width: 32px; } .cam-btn { font-size: var(--font-size-xs); padding: 4px 8px; } }