:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;--page-bg-start: #060c1d;--page-bg-end: #0f1d3a;--card-bg: #fdfdf9;--card-border: #e2e8f0;--card-shadow: 0 30px 60px rgba(10, 12, 35, .16);--text-primary: #0b1120;--text-secondary: #4b5563;--highlight-bg: #fde68a;--summary-bg: #fff7e6;--summary-border: #f6c453;--sentence-bg: #edf2ff;--accent: #2563eb;background-color:var(--page-bg-end);color:var(--text-primary)}body{margin:0;min-height:100vh;background:radial-gradient(circle at top,var(--page-bg-start),var(--page-bg-end))}*,*:before,*:after{box-sizing:border-box}main{max-width:960px;margin:0 auto;padding:3rem 1rem 4rem}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.nav-tabs{display:inline-flex;gap:.5rem}.nav-tabs button{padding:.5rem 1rem;border-radius:999px;border:1px solid rgba(255,255,255,.3);background:transparent;color:#f8fafc;cursor:pointer;font-weight:600;transition:background .2s ease,color .2s ease;box-shadow:none;width:auto}.nav-tabs button.active,.nav-tabs button:hover{background:#ffffff26;color:#fff}h1{font-size:3rem;margin-bottom:.5rem;color:#f8fafc;letter-spacing:.02em}p{color:#a1acc3}.search-card{background:linear-gradient(135deg,#fff,#f6f7fb);border-radius:16px;box-shadow:var(--card-shadow);padding:2rem;margin-top:1.5rem}label{font-weight:600;display:block;margin-bottom:.5rem}input,textarea,button{font:inherit}input,textarea{width:100%;padding:.75rem;margin-bottom:1rem;border-radius:10px;border:1px solid #cbd5f5;background:#f8fafc}.date-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem}.date-fields label{margin-bottom:.25rem}.advanced{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;margin-bottom:1rem}button{width:100%;padding:.9rem;border:none;border-radius:10px;background:var(--accent);color:#fff;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 12px 20px #2563eb59}button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 16px 26px #2563eb66}button:disabled{opacity:.7;cursor:not-allowed;box-shadow:none}.results{margin-top:2rem;display:grid;gap:1rem}.metrics-panel{margin-top:2rem;display:flex;flex-direction:column;gap:1.5rem}.metrics-card{background:linear-gradient(135deg,#111827,#1f2937);border-radius:18px;padding:1.5rem;border:1px solid rgba(255,255,255,.08);color:#e2e8f0;box-shadow:0 20px 35px #05081499}.metrics-card h2,.metrics-card h3{margin-top:0;color:#f8fafc}.metrics-card.columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.metric{padding:1rem;border-radius:12px;background:#ffffff0a;border:1px solid rgba(255,255,255,.06)}.metric-label{font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;color:#cbd5f5}.metric-value{font-size:1.5rem;font-weight:700;color:#f8fafc;margin:.4rem 0 0}.metric-meta{font-size:.85rem;color:#cbd5f5}.metrics-chart{display:flex;align-items:flex-end;gap:.5rem;min-height:160px}.metrics-bar{flex:1;display:flex;flex-direction:column;align-items:center;gap:.35rem}.metrics-bar-fill{width:100%;background:linear-gradient(180deg,#60a5fa,#2563eb);border-radius:6px 6px 0 0;transition:opacity .2s}.metrics-bar-label{font-size:.75rem;color:#cbd5f5}.metrics-list{list-style:none;padding:0;margin:0}.metrics-list li{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.08)}.metrics-list li:last-child{border-bottom:none}.link-row{display:flex;align-items:center;gap:1rem;margin:.5rem 0}.link-row a{color:#2563eb;font-weight:600;text-decoration:none}.link-row .primary-link{color:#1d4ed8}.link-row .secondary-link{color:#475569}.link-row code{background:#f1f5f9;padding:.2rem .4rem;border-radius:4px;font-size:.85rem}.result-card{background:var(--card-bg);border-radius:18px;padding:1.35rem 1.75rem;border:1px solid var(--card-border);box-shadow:var(--card-shadow);color:var(--text-primary)}.result-card.semantic-source{border-color:#3b82f6;box-shadow:0 20px 40px #3b82f633}.result-card.tfidf-source{border-color:#dc2626;box-shadow:0 20px 40px #dc262633}.result-card.hybrid-source{border-color:#fbbf24;box-shadow:0 20px 40px #fbbf2440}.result-header{display:flex;gap:1rem}.result-media{display:flex;flex-direction:column;gap:.75rem;align-items:center;width:150px;flex-shrink:0}.result-media-meta{display:flex;flex-direction:column;gap:.2rem;text-align:center;font-size:.9rem;color:#1f2937}.result-id{font-weight:600}.result-date{color:#475569;font-size:.85rem}.thumbnail,.thumbnail-link{width:140px;height:190px;border-radius:14px;background:linear-gradient(135deg,#dbeafe,#c4daf7);color:#111827;display:flex;align-items:center;justify-content:center;font-weight:700;letter-spacing:1px;overflow:hidden;flex-shrink:0}.thumbnail-link{text-decoration:none;transition:transform .2s ease,box-shadow .2s ease;cursor:pointer}.thumbnail-link:hover{transform:translateY(-2px);box-shadow:0 12px 20px #0f172a40}.thumbnail.has-image,.thumbnail-link.has-image{background:#fff;border:1px solid #e2e8f0}.thumbnail img,.thumbnail-link img{width:100%;height:100%;object-fit:cover;display:block;border-radius:inherit}.thumbnail-placeholder{font-weight:700;letter-spacing:1px}.result-media .thumbnail,.result-media .thumbnail-link{width:100%}.result-meta h3{margin:0;color:var(--text-primary)}.summary-text{color:var(--text-primary);line-height:1.55}.summary-text.secondary{margin-top:.75rem;color:var(--text-primary);background:var(--summary-bg);border:1px solid var(--summary-border);padding:1rem;border-radius:12px}.summary-text.secondary>:first-child,.summary-text>:first-child{margin-top:0}.summary-text :is(p,ul,ol){margin:.5rem 0 0;color:var(--text-primary)}.summary-text ul,.summary-text ol{padding-left:1.25rem}.summary-text h1,.summary-text h2,.summary-text h3{margin:.25rem 0 0;font-size:1.05rem;color:#1f2937}.result-card h3{margin:0 0 .5rem}.result-date-inline{display:inline-block;margin-left:.4rem;font-size:.95rem;color:#475569}.tags{display:flex;flex-direction:column;gap:.35rem;margin-top:.25rem}.tag{color:var(--text-primary);padding:.2rem .6rem;border-radius:999px;font-size:.78rem;background:#ffffffd9;border:1px solid rgba(15,23,42,.08);text-align:center}.highlight{background:var(--highlight-bg);padding:0 .1rem}.sentence-list{margin-top:.75rem;border-left:3px solid #cbd5f5;padding-left:.75rem;display:grid;gap:.35rem}.sentence-list.prominent{border:1px solid #d0dbff;border-left:none;background:var(--sentence-bg);padding:.85rem;border-radius:10px;box-shadow:inset 0 1px #94a3b833}.sentence-item{margin:0;color:#0f172a;line-height:1.5}.sentence-item{margin:0;font-size:.95rem;color:var(--text-primary)}.error{background:#fee2e2;color:#991b1b;border-radius:8px;padding:.75rem;margin-top:1rem}.status{margin-top:1rem;color:#475569}.info-card{margin-top:1rem;padding:.85rem 1rem;border-radius:10px;background:linear-gradient(135deg,#dbeafee6,#bfdbfeb3);color:#1e3a8a;border:1px solid rgba(59,130,246,.25);box-shadow:inset 0 1px #ffffff73}.spinner{position:relative;margin:1.5rem auto 0;width:76px;height:76px;display:grid;place-items:center;filter:drop-shadow(0 10px 30px rgba(37,99,235,.35))}.spinner-ring,.spinner-trail,.spinner-core,.spinner-comet{position:absolute;border-radius:50%}.spinner-ring{width:100%;height:100%;border:3px solid rgba(96,165,250,.2);border-top-color:#60a5fae6;border-left-color:#3b82f659;animation:spinnerOrbit 1.15s linear infinite}.spinner-trail{width:88%;height:88%;border:2px dashed rgba(191,219,254,.35);animation:spinnerTrail 1.6s linear infinite;filter:blur(.1px)}.spinner-core{width:30px;height:30px;background:radial-gradient(circle at 30% 30%,#e0f2fe,#60a5fa 65%,#2563eb 90%);box-shadow:0 0 25px #3b82f6a6,0 0 45px #3b82f659;animation:spinnerPulse 1.8s ease-in-out infinite}.spinner-comet{width:100%;height:100%;animation:spinnerComet 1.4s ease-in-out infinite}.spinner-comet:before{content:"";position:absolute;top:0;left:50%;width:14px;height:14px;margin-left:-7px;border-radius:50%;background:linear-gradient(135deg,#eff6ff,#93c5fd);box-shadow:0 0 18px #bfdbfecc}.spinner-comet:after{content:"";position:absolute;top:0;left:50%;width:4px;height:24px;margin-left:-2px;background:linear-gradient(180deg,#bfdbfebf,#3b82f600);border-radius:999px;transform:translateY(-14px);filter:blur(.6px)}.feedback-panel{margin-top:2rem;display:grid;grid-template-columns:minmax(0,1fr);gap:1.5rem}.feedback-card,.feedback-stream{background:var(--card-bg);border-radius:16px;padding:1.5rem;border:1px solid var(--card-border);box-shadow:var(--card-shadow)}.feedback-form{display:flex;flex-direction:column;gap:.75rem}.feedback-form input,.feedback-form textarea{margin-bottom:0}.feedback-list{list-style:none;padding:0;margin:1rem 0 0;display:flex;flex-direction:column;gap:1rem}.feedback-entry{border:1px solid #e2e8f0;border-radius:12px;padding:1rem;background:#f8fafc}.feedback-entry-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.35rem}.feedback-entry p{margin:0;color:var(--text-primary);white-space:pre-wrap}.feedback-meta{display:block;font-size:.85rem;color:#6b7280;margin-top:.2rem}@keyframes spinnerOrbit{to{transform:rotate(360deg)}}@keyframes spinnerTrail{to{transform:rotate(-360deg)}}@keyframes spinnerPulse{0%{transform:scale(.9);opacity:.85}50%{transform:scale(1.1);opacity:1}to{transform:scale(.9);opacity:.85}}@keyframes spinnerComet{to{transform:rotate(360deg)}}@media (max-width: 640px){main{padding:1.75rem 1.25rem 3rem}.page-header{flex-direction:column;align-items:flex-start;gap:1rem}h1{font-size:2.25rem}.page-header p{margin-top:0}.nav-tabs{width:100%}.nav-tabs button{flex:1;text-align:center}.search-card{padding:1.5rem}textarea{min-height:120px}.results{gap:1.25rem}.result-card{padding:1rem 1.25rem}.result-header{flex-direction:column}.result-media{width:100%;flex-direction:row;align-items:flex-start;gap:.85rem}.result-meta h3{display:none}.result-media .thumbnail,.result-media .thumbnail-link{width:96px;height:128px}.result-media-meta{display:flex;flex-direction:column;gap:.15rem;font-size:1.05rem;color:#1f2937}.result-id{font-weight:700;font-size:1.2rem}.result-date{color:#334155;font-size:1rem}.sentence-list{border-left:none;border:1px solid #dbeafe;border-radius:10px;padding:.75rem}.sentence-list.prominent{border:1px solid #c7d2fe;background:#e0e7ff66}.summary-text.secondary{padding:.75rem}.link-row{flex-direction:column;align-items:flex-start;gap:.5rem}.tags{display:none}.result-media-meta{font-size:1.05rem}.result-id{font-size:1.2rem}.result-date{font-size:1rem;color:#334155}.result-date-inline{display:none}.metrics-card.columns{grid-template-columns:1fr}.metrics-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.feedback-card,.feedback-stream{padding:1.25rem}.feedback-panel{gap:1rem}}
