/* --- Crispy Modern Redesign --- */ body, html { font-family: 'Poppins', 'Inter', Arial, sans-serif; background: #f6f8fa; color: #23272b; } .h-full { min-height: 100vh; } .bg-gray-900 { background-color: #1a202c; } .text-gray-200 { color: #e2e8f0; } .flex { display: flex; } .flex-col { flex-direction: column; } .justify-between { justify-content: space-between; } .items-center { align-items: center; } .p-4 { padding: 1rem; } .border-b { border-bottom: 1px solid #4a5568; } .bg-gray-800 { background-color: #2d3748; } .text-lg { font-size: 1.125rem; } .font-semibold { font-weight: 600; } .tracking-wide { letter-spacing: 0.05em; } .text-white { color: #fff; } .gap-4 { gap: 1rem; } .home-btn, .btn-start, .btn-stop { background: none; border: none; color: #fff; font-size: 1rem; padding: 0.5rem 1.2rem; border-radius: 6px; cursor: pointer; transition: background 0.2s; } .home-btn:hover, .btn-start:hover, .btn-stop:hover { background: #2b6cb0; } .max-w-4xl { max-width: 56rem; } .mx-auto { margin-left: auto; margin-right: auto; } .space-y-6 > * + * { margin-top: 1.5rem; } .bg-gray-800 { background-color: #2d3748; } .border { border: 1px solid #4a5568; } .rounded-xl { border-radius: 1rem; } .shadow-md { box-shadow: 0 4px 24px rgba(0,0,0,0.12); } .text-sm { font-size: 0.875rem; } .text-gray-400 { color: #a0aec0; } .mb-2 { margin-bottom: 0.5rem; } .text-lg { font-size: 1.125rem; } .font-semibold { font-weight: 600; } .text-gray-200 { color: #e2e8f0; } .mb-4 { margin-bottom: 1rem; } .flex { display: flex; } .items-center { align-items: center; } .justify-between { justify-content: space-between; } .badge { padding: 4px 8px; border-radius: 9999px; font-size: 12px; letter-spacing: 0.5px; background: #2d3748; color: #fff; margin-right: 8px; } .badge.bg-blue-600 { background: #3182ce; } .badge.bg-green-600 { background: #38a169; } .badge.bg-yellow-600 { background: #ecc94b; color: #222; } .mic { width: 12px; height: 12px; border-radius: 50%; background: #4a5568; box-shadow: 0 0 0 0 rgba(31, 130, 68, 0.7); transition: box-shadow 0.25s ease; margin-right: 8px; } .mic.bg-green-600 { background: #2f855a; box-shadow: 0 0 8px 2px rgba(31, 130, 68, 0.7); } .recog { font-size: 12px; padding: 4px 10px; border-radius: 6px; border: 1px dashed #3a3f47; opacity: 0.8; background: #2d3748; color: #fff; } .recog.bg-blue-600 { border-style: solid; border-color: #3b82f6; } .text-xs { font-size: 0.75rem; } .text-gray-500 { color: #718096; } .flex-1 { flex: 1; } .mt-2 { margin-top: 0.5rem; } .space-x-6 > * + * { margin-left: 1.5rem; } .w-full { width: 100%; } .bg-gray-700 { background-color: #4a5568; } .rounded-xl { border-radius: 1rem; } /* Stylish font and button animation */ .stylish-font { font-family: 'Montserrat', 'Poppins', 'Arial Black', Arial, sans-serif; letter-spacing: 2px; text-shadow: 0 0 8px #38bdf8, 0 2px 8px #22222244; transition: color 0.3s, text-shadow 0.3s; } .main-flex-layout { display: grid; grid-template-columns: 1fr 1.5fr; gap: 32px; margin: 32px auto 0 auto; max-width: 1700px; min-height: 80vh; background: linear-gradient(120deg, #f6f8fa 60%, #e0f2fe 100%); border-radius: 24px; box-shadow: 0 8px 32px #38bdf822; padding: 32px 32px 48px 32px; } .left-panel { display: flex; flex-direction: column; gap: 18px; justify-content: flex-start; align-items: flex-start; min-width: 750px; max-width: 800px; } .right-panel { display: flex; flex-direction: column; gap: 24px; align-items: stretch; min-width: 600px; max-width: 900px; } /* Card style for summary/case info */ .case-meta { background: #fff; border-radius: 18px; box-shadow: 0 2px 16px #38bdf822; padding: 18px 24px; margin-bottom: 12px; display: flex; flex-direction: column; gap: 8px; position: relative; } .case-meta::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 6px; background: linear-gradient(90deg, #38bdf8 0%, #6366f1 100%); border-radius: 18px 18px 0 0; } /* Add avatar/icon for suspect/officer */ .suspect-avatar { width: 54px; height: 54px; border-radius: 50%; object-fit: cover; box-shadow: 0 2px 8px #38bdf844; margin-right: 12px; } .case-row { display: flex; align-items: center; gap: 10px; margin-bottom: 2px; border-radius: 8px; padding: 2px 0; font-size: 1.02rem; } .case-label { color: #2563eb; font-weight: 600; min-width: 120px; } .case-value { color: #e3f6ff; font-weight: 500; } .divider-line { border-top: 1.5px solid #e5e7eb; margin: 10px 0 14px 0; } /* Button group for actions */ .button-group { display: flex; gap: 12px; margin: 18px 0 0 0; justify-content: flex-end; } .summary-toggle-btn, .back-btn, .evidence-toggle-btn, .btn-start-gradient, .evidence-submit-btn, .submit-evaluate-btn { font-size: 0.92rem; padding: 0.38rem 0.85rem; border-radius: 8px; font-family: 'Montserrat', 'Poppins', 'Arial Black', Arial, sans-serif; font-weight: 700; letter-spacing: 1px; box-shadow: 0 2px 12px #38bdf844; transition: background 0.2s, color 0.2s, box-shadow 0.2s, transform 0.2s; } .summary-toggle-btn:hover, .back-btn:hover, .evidence-toggle-btn:hover, .btn-start-gradient:hover, .evidence-submit-btn:hover, .submit-evaluate-btn:hover { background: linear-gradient(90deg, #6366f1 0%, #38bdf8 100%); color: #bae6fd; box-shadow: 0 6px 32px #6366f1cc; transform: scale(1.04); } /* Animated divider */ .animated-divider { width: 100%; height: 4px; background: linear-gradient(90deg, #38bdf8 0%, #6366f1 100%); border-radius: 2px; margin: 18px 0; animation: dividerPulse 2s infinite alternate; } @keyframes dividerPulse { 0% { box-shadow: 0 0 8px #38bdf844; } 100% { box-shadow: 0 0 24px #6366f144; } } /* Camera/video preview card */ .video-preview { background: #374151; border: 2px dashed #64748b; border-radius: 18px; box-shadow: 0 2px 16px #23272b44; padding: 0; width: 100%; max-width: 921px; min-height: 368px; height: 368px; box-sizing: border-box; display: flex; flex-direction: column; align-items: center; justify-content: center; position: relative; overflow: hidden; } .camera-video { border-radius: 18px; border: none; background: #222; object-fit: cover; width: 100%; height: 100%; max-width: 100%; max-height: 100%; display: block; position: absolute; top: 0; left: 0; } /* Camera inactive styles */ .camera-inactive-block { width: 100%; height: 100%; min-height: 368px; display: flex; flex-direction: column; align-items: center; justify-content: center; position: relative; } .camera-placeholder-img { width: 96px; height: 96px; object-fit: contain; margin-bottom: 18px; opacity: 0.7; } .camera-placeholder-icon { font-size: 4rem; color: #38bdf8; margin-bottom: 18px; opacity: 0.7; } .camera-inactive-title { font-size: 1.2rem; color: #bae6fd; font-weight: 700; margin-bottom: 8px; } .camera-inactive-sub { font-size: 1rem; color: #fff; opacity: 0.8; } /* Footer */ footer { background: linear-gradient(to right, #011022, #01030a); color: #fff; text-align: center; padding: 10px 0px; position: fixed; bottom: 0; left: 0; width: 100%; } /* Evidence and summary sidebar styles restoration */ .evidence-toggle-btn { position: fixed; top: 110px; right: 32px; z-index: 1202; background: linear-gradient(90deg, #38bdf8 0%, #6366f1 100%); color: #fff; font-family: 'Montserrat', 'Poppins', 'Arial Black', Arial, sans-serif; font-size: 1rem; font-weight: 700; border: none; border-radius: 16px; padding: 12px 28px; box-shadow: 0 2px 16px #38bdf888; cursor: pointer; transition: background 0.3s, box-shadow 0.3s, color 0.2s, transform 0.2s; animation: buttonPulse 1.2s infinite alternate; } .evidence-toggle-btn:hover { background: linear-gradient(90deg, #6366f1 0%, #38bdf8 100%); color: #bae6fd; box-shadow: 0 6px 32px #6366f1cc; transform: scale(1.04); } .summary-toggle-btn { position: fixed; top: 160px; right: 32px; z-index: 1202; background: linear-gradient(90deg, #38bdf8 0%, #6366f1 100%); color: #fff; font-family: 'Montserrat', 'Poppins', 'Arial Black', Arial, sans-serif; font-size: 1rem; font-weight: 700; border: none; border-radius: 16px; padding: 12px 28px; box-shadow: 0 2px 16px #38bdf888; cursor: pointer; transition: background 0.3s, box-shadow 0.3s, color 0.2s, transform 0.2s; animation: buttonPulse 1.2s infinite alternate; } .summary-toggle-btn:hover { background: linear-gradient(90deg, #6366f1 0%, #38bdf8 100%); color: #bae6fd; box-shadow: 0 6px 32px #6366f1cc; transform: scale(1.04); } .evidence-sidebar, .summary-sidebar { position: fixed; top: 90px; right: -35vw; width: 35vw; max-width: 562px; height: 60vh; min-height: 340px; padding: 0; display: flex; flex-direction: column; justify-content: flex-start; align-items: stretch; background: rgba(30, 41, 59, 0.97); box-shadow: 0 8px 32px #38bdf844, 0 2px 16px #6366f144; border-radius: 24px 0 0 24px; z-index: 1201; transition: right 0.35s cubic-bezier(.23,1,.32,1); color: #fff; overflow-y: auto; backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); border: 2.5px solid #38bdf8; animation: fadeInPanel 0.7s cubic-bezier(.23,1,.32,1); } .evidence-sidebar.open, .summary-sidebar.open { right: 0; } .evidence-title-bar, .summary-title-bar { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 24px 32px 0 32px; } .evidence-title, .summary-title { font-size: 1.3rem; font-weight: 700; color: #38bdf8; letter-spacing: 1px; } .evidence-close-btn, .summary-close-btn { background: none; border: none; font-size: 1.5rem; color: #38bdf8; cursor: pointer; } .evidence-form-card, .summary-content-card { background: rgba(44, 54, 74, 0.98); border-radius: 18px; box-shadow: 0 2px 16px #38bdf822; margin: 24px 24px 24px 24px; padding: 32px 36px 24px 36px; display: flex; flex-direction: column; align-items: flex-start; color: #fff; } .evidence-upload-form { display: flex; flex-direction: column; gap: 18px; width: 100%; } .evidence-upload-row { display: flex; align-items: center; gap: 14px; margin-bottom: 8px; color: #fff; } .evidence-upload-label { display: flex; align-items: center; gap: 8px; font-size: 1.08rem; font-weight: 600; color: #fff; min-width: 160px; } .evidence-field-icon { font-size: 1.3rem; color: #38bdf8; } .evidence-summary-row { display: flex; flex-direction: column; gap: 6px; margin-top: 12px; width: 100%; } .evidence-summary-label { font-size: 1.05rem; font-weight: 600; color: #fff; margin-bottom: 2px; } .evidence-summary-textarea { border-radius: 8px; border: 1.5px solid #38bdf8; padding: 8px 12px; font-size: 1rem; background: #232b3e; color: #fff; resize: vertical; min-height: 48px; width: 100%; } .evidence-submit-btn { margin-top: 18px; background: linear-gradient(90deg, #38bdf8 0%, #6366f1 100%); color: #fff; font-family: 'Montserrat', 'Poppins', 'Arial Black', Arial, sans-serif; font-size: 1.08rem; font-weight: 700; border: none; border-radius: 12px; padding: 0.55rem 1.3rem; box-shadow: 0 2px 16px #38bdf888; cursor: pointer; transition: background 0.4s, box-shadow 0.4s, color 0.3s, transform 0.2s; letter-spacing: 1px; width: 140px; display: block; } .evidence-submit-btn:hover { background: linear-gradient(90deg, #6366f1 0%, #38bdf8 100%); color: #bae6fd; box-shadow: 0 6px 32px #6366f1cc; transform: scale(1.04); } /* Prevent page scroll */ body, html { overflow: hidden !important; height: 100vh; } .main-flex-layout { max-height: calc(100vh - 60px); overflow: hidden; } /* Modern UI header styles from infopage */ .site-header { background: #011329; box-shadow: 0 2px 12px #38bdf844; margin-bottom: 0; position: relative; z-index: 10; padding-bottom: 0; } .header-inner { display: flex; align-items: center; justify-content: flex-start; padding: 18px 32px 0 32px; position: relative; } .logo-cluster { display: flex; align-items: center; gap: 18px; } .logo-img-header { width: 54px; height: 54px; border-radius: 50%; background: #fff; box-shadow: 0 2px 8px rgba(0,0,0,0.18); padding: 4px; margin-top: -6px; margin-bottom: 1vh; } .py-detect-title-header { font-size: 2.1rem; font-family: 'Segoe UI', 'Arial', 'Roboto', sans-serif; font-weight: 900; letter-spacing: 6px; color: #38bdf8; display: flex; align-items: center; gap: 2px; margin-bottom: 1.5vh; } .py-detect-title-header .py-letter.p { color: #e3f6ff; text-shadow: 0 0 6px #38bdf8; } .py-detect-title-header .py-letter.y { color: #38bdf8; text-shadow: 0 0 6px #38bdf8; } .py-detect-title-header .py-shape { color: #e3f6ff; background: #e3f6ff; text-shadow: 0 0 6px #38bdf8; box-shadow: 0 0 6px #38bdf8, 0 0 2px #fff; border: 2px solid #23272b; width: 18px; height: 4px; display: inline-block; margin: 0 8px; border-radius: 2px; } .py-detect-title-header .py-letter.d { color: #e3f6ff; text-shadow: 0 0 6px #38bdf8; } .py-detect-title-header .py-letter.e { color: #38bdf8; text-shadow: 0 0 6px #38bdf8; } .py-detect-title-header .py-letter.t { color: #e3f6ff; text-shadow: 0 0 6px #38bdf8; } .py-detect-title-header .py-letter.e2 { color: #38bdf8; text-shadow: 0 0 6px #38bdf8; } .py-detect-title-header .py-letter.c { color: #e3f6ff; text-shadow: 0 0 6px #38bdf8; } .py-detect-title-header .py-letter.t2 { color: #38bdf8; text-shadow: 0 0 6px #38bdf8; } .header-action-bar { display: flex; justify-content: space-between; align-items: center; width: 100%; position: relative; margin-top: 0; margin-bottom: 0; padding: 0 32px 18px 32px; min-height: 96px; box-sizing: border-box; } .header-action-left { display: flex; align-items: center; gap: 12px; height: 40px; } .header-action-right { display: flex; align-items: center; gap: 12px; height: 40px; position: absolute; top: 18px; right: 32px; z-index: 100; } .header-action-bar .small-btn, .header-action-bar .summary-toggle-btn, .header-action-bar .evidence-toggle-btn { font-size: 1.08rem; font-family: 'Montserrat', 'Poppins', 'Arial Black', Arial, sans-serif; font-weight: 700; letter-spacing: 1px; background: linear-gradient(90deg, #38bdf8 0%, #6366f1 100%); color: #fff; border: none; border-radius: 12px; padding: 0.55rem 1.3rem; box-shadow: 0 2px 16px #38bdf888; display: flex; align-items: center; gap: 8px; cursor: pointer; transition: background 0.4s, box-shadow 0.4s, color 0.3s, transform 0.2s; overflow: hidden; height: 40px; line-height: 1.2; } .header-action-bar .small-btn { margin-left: 8px; } .header-action-bar .summary-toggle-btn { margin-right: 8px; } .header-action-bar .evidence-toggle-btn { margin-right: 8px; } .header-action-bar .small-btn:hover, .header-action-bar .summary-toggle-btn:hover, .header-action-bar .evidence-toggle-btn:hover { background: linear-gradient(90deg, #6366f1 0%, #38bdf8 100%); color: #bae6fd; box-shadow: 0 6px 32px #6366f1cc; transform: scale(1.04); } .header-divider-line { width: calc(100% - 64px); /* 32px gap on both sides */ height: 2px; background: linear-gradient(90deg, #38bdf8 0%, #6366f1 100%); border-radius: 2px; margin: 0 auto 18px auto; box-shadow: 0 2px 8px #38bdf844; position: relative; top: -19px; } .blur-bg { position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; z-index: 1200; background: rgba(30,41,59,0.18); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); transition: opacity 0.3s; opacity: 1; pointer-events: auto; } .blur-bg.hide { opacity: 0; pointer-events: none; } .tts-question-card { background: linear-gradient(120deg, #f6f8fa 60%, #bae6fd 100%); border-radius: 18px; box-shadow: 0 8px 32px #38bdf822, 0 2px 16px #6366f144; padding: 32px 36px 24px 36px; margin: 0 0 18px 0; display: flex; flex-direction: column; align-items: flex-start; position: relative; animation: fadeInUp 0.7s cubic-bezier(.39,.58,.57,1); min-height: 180px; max-width: 700px; width: 100%; z-index: 1; } .tts-question-title { font-size: 1.25rem; font-weight: 700; color: #2563eb; margin-bottom: 10px; letter-spacing: 1px; text-shadow: 0 2px 12px #38bdf844; } .tts-question-text { font-size: 1.12rem; color: #23272b; font-weight: 600; margin-bottom: 8px; text-shadow: 0 1px 8px #bae6fd44; } .tts-status-row { font-size: 1.05rem; color: #6366f1; font-weight: 500; margin-bottom: 4px; background: rgba(56,189,248,0.08); border-radius: 8px; padding: 6px 14px; box-shadow: 0 2px 8px #38bdf822; display: inline-block; animation: statusPulse 1.2s infinite alternate; } @keyframes statusPulse { 0% { box-shadow: 0 2px 8px #38bdf822; } 100% { box-shadow: 0 4px 16px #6366f144; } } /* Transcript Panel */ .transcript-panel { background: #fff; border-radius: 14px; box-shadow: 0 2px 12px #6366f122; padding: 18px 18px 18px 18px; width: 100%; max-width: 889px; overflow: hidden; display: flex; flex-direction: column; } .transcript-title { font-weight: 700; color: #6366f1; margin-bottom: 8px; } .transcript-scrollable { overflow-y: auto; max-height: 180px; padding-right: 8px; } .transcript-line { font-size: 1.05rem; color: #23272b; margin-bottom: 4px; } /* Evidence Panel Sidebar Styles */ .evidence-toggle-btn { display: block; position: relative; margin: 2px 0 0 auto; background: linear-gradient(90deg, #38bdf8 0%, #6366f1 100%); color: #fff; font-family: 'Poppins', 'Inter', Arial, sans-serif; font-size: 1rem; font-weight: 600; border: none; border-radius: 8px 8px 0 0; padding: 10px 22px; box-shadow: 0 2px 12px #38bdf844; cursor: pointer; transition: background 0.2s, color 0.2s, box-shadow 0.2s; z-index: 1200; } .evidence-toggle-btn:hover { background: linear-gradient(90deg, #6366f1 0%, #38bdf8 100%); color: #bae6fd; } .evidence-sidebar { position: fixed; top: 90px; right: -35vw; width: 35vw; max-width: 562px; height: 60vh; min-height: 340px; padding: 0; gap: 0; display: flex; flex-direction: column; justify-content: flex-start; align-items: stretch; background: rgba(30, 41, 59, 0.97); box-shadow: 0 8px 32px #38bdf844, 0 2px 16px #6366f144; border-radius: 24px 0 0 24px; z-index: 1201; transition: right 0.35s cubic-bezier(.23,1,.32,1); color: #fff; overflow-y: auto; backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); border: 2.5px solid #38bdf8; animation: fadeInPanel 0.7s cubic-bezier(.23,1,.32,1); } .evidence-sidebar.open { right: 0; } .evidence-title-bar { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 24px 32px 0 32px; } .evidence-title { font-size: 1.3rem; font-weight: 700; color: #38bdf8; letter-spacing: 1px; } .evidence-form-card { background: rgba(44, 54, 74, 0.98); border-radius: 18px; box-shadow: 0 2px 16px #38bdf822; margin: 24px 24px 24px 24px; padding: 24px 28px 18px 28px; display: flex; flex-direction: column; align-items: stretch; } .evidence-upload-form { display: flex; flex-direction: column; gap: 18px; } .evidence-upload-row { display: flex; align-items: center; gap: 14px; margin-bottom: 0; } .evidence-upload-label { display: flex; align-items: center; gap: 8px; font-size: 1.08rem; font-weight: 600; color: #6366f1; min-width: 160px; } .evidence-field-icon { font-size: 1.3rem; color: #38bdf8; } .evidence-divider { border: none; border-top: 1.5px solid #38bdf8; margin: 12px 0 8px 0; } .evidence-summary-row { display: flex; flex-direction: column; gap: 6px; } .evidence-summary-label { font-size: 1.05rem; font-weight: 600; color: #38bdf8; margin-bottom: 2px; } .evidence-summary-textarea { border-radius: 8px; border: 1.5px solid #6366f1; padding: 8px 12px; font-size: 1rem; background: #232b3e; color: #fff; resize: vertical; min-height: 48px; } .evidence-submit-btn { margin-top: 12px; background: linear-gradient(90deg, #2563eb 0%, #38bdf8 100%); color: #fff; font-family: 'Poppins', 'Inter', Arial, sans-serif; font-size: 1rem; font-weight: 600; border: none; border-radius: 8px; padding: 10px 22px; box-shadow: 0 2px 12px #38bdf844; cursor: pointer; transition: background 0.2s, color 0.2s, box-shadow 0.2s; letter-spacing: 1px; } .evidence-submit-btn:hover { background: linear-gradient(90deg, #38bdf8 0%, #2563eb 100%); color: #bae6fd; } .evidence-upload-form input[type="file"] { background: #232b3e; color: #fff; border-radius: 6px; border: 1px solid #6366f1; padding: 4px 8px; font-size: 0.98rem; } .evidence-upload-icon { font-size: 1.15em; margin-right: 6px; vertical-align: middle; } .back-btn { font-size: 1.08rem; font-family: 'Montserrat', 'Poppins', 'Arial Black', Arial, sans-serif; font-weight: 700; letter-spacing: 1px; background: linear-gradient(90deg, #38bdf8 0%, #6366f1 100%); color: #fff; border: none; border-radius: 12px; padding: 0.55rem 1.3rem; box-shadow: 0 2px 16px #38bdf888; display: flex; align-items: center; gap: 8px; cursor: pointer; transition: background 0.4s, box-shadow 0.4s, color 0.3s, transform 0.2s; overflow: hidden; } .recording-status-bar { display: flex; align-items: center; gap: 12px; justify-content: flex-start; background: linear-gradient(90deg, #e0f2fe 0%, #bae6fd 100%); color: #23272b; font-size: 1.08rem; font-weight: 700; border-radius: 12px; box-shadow: 0 2px 8px #38bdf822; padding: 8px 22px; margin: 18px 0 0 0; min-width: 220px; max-width: 340px; position: relative; z-index: 2; border: none; outline: none; cursor: default; transition: none; } .recording-status-bar .status-icon { font-size: 1.3em; margin-right: 6px; } .recording-status-bar .status-timer { font-size: 1.08em; font-weight: 600; color: #2563eb; } .icon-btn { background: linear-gradient(90deg, #38bdf8 0%, #6366f1 100%); color: #fff; border: none; border-radius: 50%; width: 44px; height: 44px; display: flex; align-items: center; justify-content: center; font-size: 1.5rem; box-shadow: 0 2px 12px #38bdf844; margin-bottom: 0; margin-top: 0; margin-right: 8px; cursor: pointer; transition: background 0.3s, box-shadow 0.3s, color 0.2s, transform 0.2s; } .icon-btn:hover { background: linear-gradient(90deg, #6366f1 0%, #38bdf8 100%); color: #bae6fd; box-shadow: 0 6px 32px #6366f1cc; transform: scale(1.08); } .header-actions-right-group { position: absolute; top: 18px; right: 32px; z-index: 100; display: flex; flex-direction: column; align-items: flex-end; gap: 10px; } .header-actions-icons { display: flex; flex-direction: row; align-items: center; gap: 10px; margin-top: 37px; } .guidance-tooltip { display: flex; align-items: center; gap: 8px; background: linear-gradient(90deg, #e0f2fe 0%, #bae6fd 100%); color: #2563eb; font-size: 1.08rem; font-weight: 600; border-radius: 12px; box-shadow: 0 2px 12px #38bdf844; padding: 6px 14px; margin-top: 8px; margin-left: 0; position: absolute; left: 32px; top: 60px; z-index: 101; animation: fadeInTooltip 0.7s cubic-bezier(.39,.58,.57,1); white-space: nowrap; } @keyframes fadeInTooltip { 0% { opacity: 0; transform: translateY(-12px); } 100% { opacity: 1; transform: translateY(0); } } .recording-indicator { position: absolute; top: 18px; left: 50%; transform: translateX(-50%); background: #ef4444; color: #fff; font-size: 1.15rem; font-weight: 700; padding: 8px 22px; border-radius: 16px; max-width: 1000px; z-index: 10; letter-spacing: 1px; display: flex; align-items: center; gap: 8px; animation: fadeInRecording 0.5s cubic-bezier(.39,.58,.57,1); } @keyframes fadeInRecording { 0% { opacity: 0; transform: translateX(-50%) scale(0.8); } 100% { opacity: 1; transform: translateX(-50%) scale(1); } }