@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700&display=swap'); :root { --bg-dark: #011329; --accent: #008cff; --accent-strong: #006bb3; --accent-soft: #a8dcff; --accent-emerald: #0ea5a4; --muted: #6b7280; --muted-2: #94a3b8; --card-bg: #ffffff; --card-border: #e6f2ff; --card-border-hover: rgba(0,140,255,0.18); --soft-blue: rgba(3,102,214,0.06); --shadow-strong: 08px24px rgba(3,102,214,0.08); --gap: 18px; --transition-fast: 160ms; --transition-medium: 280ms; --transition-slow: 420ms; } /* 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: space-between; 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; } /* Overall layout spacing */ .details-layout { display: flex; gap: 28px; align-items: flex-start; padding: 18px 20px 80px; background: linear-gradient(120deg, #f7fbff, #fafcff); } .details-sidebar { width: 270px; background: linear-gradient(180deg,#091427,#0b1a33); border-radius: 18px; padding: 28px 18px; box-shadow: 0 12px 36px rgba(2,24,64,0.06); color: #fff; } .sidebar-section-heading { padding: 10px 12px; border-radius: 10px; background: rgba(255,255,255,0.02); box-shadow: inset 0 1px 0 rgba(255,255,255,0.02); font-weight: 700; } .sidebar-btn-group { margin-top: 12px; display: flex; flex-direction: column; gap: 10px; } .sidebar-btn2 { padding: 12px; border-radius: 10px; text-align: left; font-weight: 700; transition: background var(--transition-fast) ease, transform var(--transition-fast) ease; } .sidebar-btn2:hover { background: rgba(255,255,255,0.02); transform: translateY(-1px); } /* Color and animation enhancements for clearer visual hierarchy */ .details-sidebar .sidebar-btn2 { color: var(--muted-2); background: transparent; border-left: 4px solid transparent; } .details-sidebar .sidebar-btn2:hover { background: rgba(255,255,255,0.02); color: #e6f7ff; transform: translateY(-1px); } .details-sidebar .sidebar-btn2.active { background: linear-gradient(90deg, rgba(0,140,255,0.06), rgba(56,189,248,0.03)); color: #e8f8ff; border-left-color: var(--accent); box-shadow: inset 0 1px 0 rgba(255,255,255,0.02); } /* Main card */ .indigo-main-card { background: var(--card-bg); border-radius: 18px; padding: 24px; box-shadow: var(--shadow-strong); border: 1px solid var(--soft-blue); width: 100%; max-width: calc(100% - 320px); box-sizing: border-box; overflow: auto; transition: box-shadow var(--transition-medium) ease, transform var(--transition-medium) ease; } .indigo-main-card:hover { box-shadow: 0 18px 48px rgba(3,102,214,0.08); transform: translateY(-2px); } .indigo-main-card.wide { background: #f7fbff; border-radius: 18px; box-shadow: 0 8px 32px rgba(56,189,248,0.10); padding: 32px 32px 28px 32px; max-width: 1600px; margin: 32px auto 0 auto; width: 100%; } .indigo-main-card, .indigo-main-card.wide { overflow-x: visible !important; overflow-y: visible !important; } .case-header { padding: 8px 6px 14px 6px; } .case-qa { display: flex; flex-direction: column; gap: 8px; font-weight: 600; color: #0b3b72; } .case-qa strong { color: #0b3b72; } /* Layout toggle */ .layout-toggle-row { display: flex; align-items: center; gap: 12px; margin-bottom: 12px; } .toggle-btn { padding: 6px 10px; border-radius: 8px; border: 1px solid rgba(2,24,64,0.06); background: transparent; cursor: pointer; transition: all var(--transition-fast) ease; } .toggle-btn:hover { transform: translateY(-2px); box-shadow: 0 6px 12px rgba(2,24,64,0.04); } .toggle-btn.active { background: var(--accent); color: #fff; box-shadow: 0 6px 16px rgba(3,102,214,0.12); } /* Metrics card appearance */ .metrics-card { background: #fff; border-radius: 18px; padding: 32px 28px 28px 28px; box-shadow: 0 4px 24px rgba(56,189,248,0.10); border: 1.5px solid #e6f2ff; min-height: 320px; display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; width: 100%; margin-bottom: 0; } .metrics-card-heading { background: #f7fbff; padding: 14px 24px; border-radius: 14px; display: inline-block; color: #232a3d; font-size: 1.22rem; font-weight: 700; margin-bottom: 22px; box-shadow: 0 2px 12px #e0e7ff; text-align: left; } .metrics-card-heading.audio-analysis, .metrics-card-heading.video-analysis { color: #2563eb !important; } .metric-row { display: flex; align-items: center; justify-content: space-between; padding: 14px 10px; gap: 18px; border-bottom: 1px solid #e6eaf3; font-size: 1.12rem; background: none; } .metric-label, .metric-name { background: none; border: none; color: #232a3d; font-weight: 600; padding: 0; margin-bottom: 0; font-size: 1.04rem; box-shadow: none; display: inline-block; text-align: left; } .metric-value { color: #05204a; font-weight: 900; text-align: right; font-size: 1.18rem; } /* Responsive tweaks for smaller screens */ @media (max-width: 1200px) { .audio-cards-row { grid-template-columns: 1fr 1fr; gap: 24px; } .indigo-main-card.wide { padding: 18px 8px 12px 8px; max-width: 100%; } } @media (max-width: 900px) { .audio-cards-row { flex-direction: column; gap: 18px; align-items: stretch; } .audio-cards-row .metrics-card { max-width: 100%; min-width: 0; } } @media (max-width: 700px) { .audio-cards-row { grid-template-columns: 1fr; gap: 18px; } .metrics-card { min-height: 180px; padding: 16px 8px; } } /* Ensure four cards are always displayed in a single horizontal row */ .audio-cards-row { display: flex; flex-direction: row; gap: 32px; justify-content: center; align-items: stretch; width: 100%; margin-top: 0; } .audio-cards-row .metrics-card { flex: 1 1 0; max-width: 340px; min-width: 220px; } /* Fix: Make audio cards row fill available horizontal space and align cards in a single row */ .metrics-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 32px; } .metrics-col { display: flex; flex-direction: column; gap: 10px; min-width: 0; } .metrics-card-heading { font-size: 1.08rem; color: var(--accent); } .metrics-list-plain { list-style: none; padding: 0; margin: 0; } .metrics-list-plain li { display: flex; justify-content: space-between; align-items: center; padding: 8px 6px; border-bottom: 1px dashed rgba(3,102,214,0.04); } .metrics-list-plain li .value { min-width: 72px; text-align: right; color: #0b3b72; font-weight: 700; } /* Multiple cards layout */ .metrics-grid-multiple { display: flex; gap: 18px; flex-wrap: wrap; } .metrics-grid-multiple .metrics-card { min-width: 311px; flex: auto; transition: transform var(--transition-fast) ease, box-shadow var(--transition-fast) ease; } .metrics-grid-multiple .metrics-card:hover { transform: translateY(-6px); box-shadow: 0 20px 40px rgba(3,102,214,0.08); } /* Charts and table styles */ .charts-row { display: flex; gap: 16px; margin-top: 18px; flex-wrap: wrap; } .chart-card { flex: 11420px; background: #fff; border-radius: 12px; padding: 12px; border: 1px solid var(--soft-blue); box-shadow: 0 4px 12px rgba(3,102,214,0.04); } .simple-bar { width: 100%; height: 180px; display: block; } .summary-table { width: 100%; border-collapse: collapse; font-size: 0.95rem; } .summary-table th, .summary-table td { border: 1px solid rgba(224,231,239,0.6); padding: 8px 12px; text-align: left; } .summary-table thead th { background: #fbfdff; color: var(--accent); font-weight: 700; } .summary-table tbody tr:nth-child(even) { background: #fbfbff; } /* Audio / video summary rows */ .audio-summary-row { display: flex; gap: 16px; margin-top: 8px; flex-wrap: wrap; } .audio-summary-row .summary-item { font-weight: 700; color: #0b3b72; padding: 6px 8px; border-radius: 8px; background: rgba(56,189,248,0.04); transition: background var(--transition-fast) ease, transform var(--transition-fast) ease; } .audio-summary-row .summary-item:hover { background: rgba(56,189,248,0.08); transform: translateY(-3px); } /* Scrollable details area for cards that allow internal scrolling */ .audio-card-body, .audio-details-card, .video-details-card, .metrics-card-body { max-height: 340px; overflow: auto; } .audio-card-body::-webkit-scrollbar, .audio-details-card::-webkit-scrollbar, .video-details-card::-webkit-scrollbar { height: 8px; width: 8px; } .audio-card-body::-webkit-scrollbar-thumb, .audio-details-card::-webkit-scrollbar-thumb, .video-details-card::-webkit-scrollbar-thumb { background: rgba(2,24,64,0.12); border-radius: 6px; } /* Back button styling (matches page accent and animated glow) */ .back-btn { display: inline-flex; align-items: center; gap: 8px; background: linear-gradient(90deg, rgba(0,140,255,0.14), rgba(3,102,214,0.10)); color: #01243a; font-weight: 800; padding: 8px 14px; border-radius: 10px; border: 1px solid rgba(3,102,214,0.12); box-shadow: 0 6px 18px rgba(3,102,214,0.06); cursor: pointer; transition: transform var(--transition-fast) ease, box-shadow var(--transition-fast) ease, border-color var(--transition-fast) ease; } .back-btn:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(3,102,214,0.12); border-color: rgba(0,140,255,0.22); } .back-btn:active { transform: translateY(-1px) scale(0.995); } .back-btn:focus { outline: none; box-shadow: 0004px rgba(0,140,255,0.12); } /* small icon styling */ .back-icon { display: inline-block; font-weight: 900; color: var(--accent-strong); transform: translateX(-1px); } /* subtle pulse animation to draw attention when on verification page */ @keyframes backPulse { 0% { box-shadow: 0 6px 18px rgba(3,102,214,0.06); } 50% { box-shadow: 0 20px 40px rgba(3,102,214,0.08); } 100% { box-shadow: 0 6px 18px rgba(3,102,214,0.06); } } /* Apply pulse conditionally — you can add `.pulse` class in template if needed */ .back-btn.pulse { animation: backPulse3.6s ease-in-out infinite; } /* Dark mode inverse for header area */ .site-header .back-btn { background: linear-gradient(90deg, #38bdf8, rgba(255, 255, 255, 0.02)); color: #e6f7ff; border: 1px solid rgba(255,255,255,0.04); box-shadow: 0 6px 18px rgba(0,0,0,0.18); margin-bottom: 16px; } .site-header .back-btn:hover { box-shadow: 0 14px 30px rgba(0,0,0,0.28); transform: translateY(-2px); } .nav-btn { padding: 8px 12px; border-radius: 8px; border: 1px solid rgba(2,24,64,0.06); background: linear-gradient(90deg, rgba(0,140,255,0.06), rgba(56,189,248,0.03)); color: #044a91; font-weight: 700; cursor: pointer; transition: transform 160ms cubic-bezier(.2,.8,.2,1), box-shadow 160ms cubic-bezier(.2,.8,.2,1), background 220ms ease; } .nav-btn:hover:not([disabled]) { transform: translateY(-3px); box-shadow:0 12px 22px rgba(3,102,214,0.10); background: linear-gradient(90deg, rgba(0,140,255,0.12), rgba(56,189,248,0.06)); } .nav-btn[disabled] { opacity:0.5; cursor: default; transform: none; box-shadow: none; } /* During click/navigation animation we keep transform but remove any shadow to avoid background glow */ .nav-btn.prev-anim { transform: translateX(-6px) scale(0.98); box-shadow: none !important; background: linear-gradient(90deg, rgba(3,102,214,0.14), rgba(56,189,248,0.06)); } .nav-btn.next-anim { transform: translateX(6px) scale(0.98); box-shadow: none !important; background: linear-gradient(90deg, rgba(3,102,214,0.14), rgba(56,189,248,0.06)); } /* Also ensure active state does not show shadow */ .nav-btn:active { box-shadow: none !important; } /* Footer */ footer { background: linear-gradient(to right, #011022, #01030a); color: #fff; text-align: center; padding: 10px 0px; position: fixed; left: 0; bottom: 0; width: 100%; z-index: 100; margin-top: 0; } /* Indigo container style for Verified Scores (refined to match screenshot) */ .indigo-main-card.verified-scores { background: linear-gradient(180deg,#f7fbff, #ffffff); border-radius: 18px; padding: 20px; box-shadow: 0 14px 40px rgba(3,102,214,0.06), inset 0 1px 0 rgba(255,255,255,0.6); border: 1px solid rgba(3,102,214,0.08); margin-bottom: 18px; position: relative; overflow: auto; } /* subtle divider under the main heading inside the indigo container */ .indigo-main-card.verified-scores > .metrics-card-heading { color: #2563eb; font-size: 1.08rem; margin-bottom: 10px; padding: 10px 8px; border-radius: 8px; display: inline-block; } .indigo-main-card.verified-scores .metrics-card-heading + .metrics-grid-card { margin-top: 12px; } /* thin top rule under the overall heading (full width) */ .indigo-main-card.verified-scores .heading-divider { content: ''; display: block; height: 1px; background: rgba(6,30,70,0.06); margin: 12px 0 18px 0; } /* custom scrollbar styling to match screenshot cyan thumb */ .indigo-main-card.verified-scores::-webkit-scrollbar { width: 12px; } .indigo-main-card.verified-scores::-webkit-scrollbar-track { background: rgba(0,0,0,0.03); border-radius: 8px; } .indigo-main-card.verified-scores::-webkit-scrollbar-thumb { background: linear-gradient(180deg,#00e0ff,#00c0f0); border-radius: 8px 5px 0 9px; } /* ensure inner validation card blends and keeps same rounded edges */ .metrics-card.validation-card { background: rgba(250,252,255,0.98); border-radius: 12px; padding: 18px; border: 1px solid rgba(3,102,214,0.04); } /* Make the three-column grid appear with soft separators similar to screenshot */ .metrics-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 32px; } .metrics-grid .metrics-col { padding: 12px; background: rgba(255,255,255,0.6); border-radius: 10px; } .metrics-grid .metrics-col .metrics-card-heading { background: rgba(3,102,214,0.03); padding: 8px 10px; border-radius: 8px; } /* Small tweak: emphasize metric separators inside the grid */ .metrics-grid .metric-row { border-bottom: 1px solid rgba(6,30,70,0.04); } /* Scoped: remove internal scrollbar only for the video details metrics card */ .video-details-card { /* allow content to expand and avoid internal scroll */ overflow: visible !important; max-height: none !important; } /* Hide any WebKit scrollbars that might still appear inside the video card */ .video-details-card::-webkit-scrollbar { width:0px; height:0px; display: none; } /* Hide scrollbars in Firefox/IE for the video card */ .video-details-card { -ms-overflow-style: none; /* IE and Edge */ scrollbar-width: none; /* Firefox */ }