@tailwind base;@tailwind components;@tailwind utilities;body{background:linear-gradient(135deg,#eaf3ff 0%,#eef8ff 100%);margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}.page{color:#142033;background:radial-gradient(circle at 0 0,#3c78ff1f,#0000 35%),linear-gradient(135deg,#edf5ff 0%,#eaf9ff 100%);min-height:100vh}.topbar{z-index:10;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffdb;border-bottom:1px solid #cfe1ff;justify-content:space-between;align-items:center;height:54px;padding:0 28px;display:flex;position:sticky;top:0}.brand-pill{color:#2454e8;background:#dbeafe;border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:14px;font-weight:700;display:inline-flex}.topbar-right{color:#2454e8;font-size:14px;font-weight:600}.main{max-width:1320px;margin:0 auto;padding:36px 24px 70px}.hero{text-align:center;margin:0 auto 34px}.hero h1{color:#3158e8;margin:0;font-size:42px;font-weight:800;line-height:1.1}.hero-line{background:#3158e8;border-radius:999px;width:78px;height:4px;margin:16px auto}.hero p{color:#435268;max-width:650px;margin:0 auto;font-size:17px}.layout{grid-template-columns:minmax(0,2fr) 420px;align-items:start;gap:26px;display:grid}.left-col,.right-col{flex-direction:column;gap:22px;display:flex}.panel,.chat-panel{background:#fffffff5;border:1px solid #e2eaf7;border-radius:18px;box-shadow:0 16px 38px #274c821f}.upload-panel{padding:26px}.upload-box{text-align:center;background:#fbfdff;border:2px dashed #c8d3e2;border-radius:16px;padding:36px}.upload-icon{color:#3158e8;background:#eaf2ff;border-radius:18px;justify-content:center;align-items:center;width:58px;height:58px;margin-bottom:14px;display:inline-flex}.upload-box h2{margin:0 0 8px;font-size:22px}.upload-box p{color:#66758b;max-width:520px;margin:0 auto 20px}.file-picker{cursor:pointer;max-width:420px;margin:0 auto 16px;display:block}.file-picker input{display:none}.file-picker span{color:#3158e8;text-overflow:ellipsis;white-space:nowrap;background:#f1f6ff;border:1px solid #cfe1ff;border-radius:12px;padding:12px 16px;font-weight:650;display:block;overflow:hidden}.primary-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#3158e8,#1d4ed8);border:none;border-radius:12px;padding:12px 20px;font-weight:800;box-shadow:0 10px 18px #3158e83d}.primary-btn:disabled,.chat-input button:disabled,.suggested-list button:disabled{opacity:.45;cursor:not-allowed}.panel{padding:22px}.panel-title{align-items:center;gap:12px;margin-bottom:18px;display:flex}.panel-title.compact{margin-bottom:12px}.panel-title h2{margin:0;font-size:22px}.panel-title p{color:#718096;margin:2px 0 0;font-size:14px}.stats-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:20px;display:grid}.stat-card{border-radius:16px;padding:18px}.stat-blue{background:#eaf2ff}.stat-red{background:#fff1f2}.stat-yellow{background:#fff7e6}.stat-num{color:#1d4ed8;font-size:30px;font-weight:850}.stat-red .stat-num{color:#dc2626}.stat-yellow .stat-num{color:#ca8a04}.stat-label{color:#5c6b81;margin-top:3px;font-size:14px}.trait-list{flex-direction:column;gap:14px;display:flex}.trait-card{background:#fff;border:1px solid #e4ebf5;border-radius:16px;padding:18px}.trait-head{justify-content:space-between;gap:16px;display:flex}.trait-card h3{margin:0;font-size:18px}.trait-card p{color:#55657a;margin:5px 0 0}.small-muted{font-size:13px}.badge{border:1px solid;border-radius:999px;flex-shrink:0;height:fit-content;padding:6px 11px;font-size:12px;font-weight:800}.badge-high{color:#dc2626;background:#fff1f2;border-color:#fecdd3}.badge-medium{color:#b45309;background:#fff7e6;border-color:#fde68a}.badge-normal{color:#047857;background:#ecfdf5;border-color:#bbf7d0}.question-chips{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.question-chips button,.suggested-list button{color:#2454e8;cursor:pointer;text-align:left;background:#f3f7ff;border:1px solid #bdd5ff;border-radius:999px;padding:8px 11px;font-size:12px;font-weight:700}.question-chips button:hover,.suggested-list button:hover{background:#e7f0ff}.empty-panel{text-align:center;padding:34px}.empty-panel svg{color:#3158e8}.empty-panel h2{margin-bottom:16px}.feature-grid{text-align:left;grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.feature-grid div{color:#4a5b72;background:#f6f9ff;border:1px solid #e2eaf7;border-radius:14px;padding:14px;font-size:14px}.warning-panel{background:#fffdf5;border-color:#fde68a}.warning-title{color:#b45309;align-items:center;gap:8px;margin-bottom:8px;font-weight:850;display:flex}.warning-panel p{color:#6b5b2b;margin:0;font-size:14px;line-height:1.5}.suggested-list{flex-direction:column;gap:9px;display:flex}.suggested-list button{border-radius:12px;padding:10px 12px}.chat-panel{flex-direction:column;min-height:620px;display:flex;overflow:hidden}.chat-header{background:#fbfdff;border-bottom:1px solid #e5edf8;justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.eyebrow{color:#94a3b8;letter-spacing:.12em;font-size:11px;font-weight:900}.chat-header h2{align-items:center;gap:8px;margin:3px 0 0;font-size:18px;display:flex}.ready-dot{color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:700}.chat-body{background:#fff;flex:1;min-height:440px;padding:18px;overflow-y:auto}.message-row{margin-bottom:14px;display:flex}.message-row.user{justify-content:flex-end}.message-row.assistant{justify-content:flex-start}.bubble{border-radius:18px;max-width:92%;padding:12px 14px;font-size:14px;line-height:1.45}.bubble.user{color:#fff;background:#3158e8;border-bottom-right-radius:6px}.bubble.assistant{color:#1f2937;background:#f1f5fb;border-bottom-left-radius:6px}.bubble-text{white-space:pre-wrap}.typing{color:#64748b}.evidence-list{flex-direction:column;gap:7px;margin-top:10px;display:flex}.evidence-card{color:#2454e8;background:#eaf2ff;border:1px solid #cfe1ff;border-radius:10px;align-items:flex-start;gap:8px;padding:8px;display:flex}.evidence-title{font-size:12px;font-weight:800}.evidence-meta{color:#52657d;margin-top:2px;font-size:11px}.chat-input{background:#fbfdff;border-top:1px solid #e5edf8;gap:10px;padding:13px;display:flex}.chat-input input{border:1px solid #cfe1ff;border-radius:12px;outline:none;flex:1;padding:12px 13px;font-size:14px}.chat-input input:focus{border-color:#3158e8;box-shadow:0 0 0 3px #3158e81f}.chat-input button{color:#fff;cursor:pointer;background:#3158e8;border:none;border-radius:12px;justify-content:center;align-items:center;width:46px;display:inline-flex}@media (width<=1050px){.layout{grid-template-columns:1fr}.right-col{order:-1}.chat-panel{min-height:520px}}@media (width<=680px){.main{padding:24px 14px 50px}.hero h1{font-size:32px}.stats-grid,.feature-grid{grid-template-columns:1fr}.topbar{padding:0 14px}.topbar-right{display:none}}.analysis-btn{width:100%;margin-bottom:20px}.analysis-list{flex-direction:column;gap:14px;margin-bottom:24px;display:flex}.analysis-heading{color:#1d4ed8;margin:0 0 2px;font-size:22px}.analysis-card{background:linear-gradient(#f8fbff 0%,#fff 100%);border:1px solid #cfe1ff;border-radius:16px;padding:18px}.analysis-card-head{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:12px;display:flex}.analysis-card-head h3{margin:0;font-size:18px}.analysis-card-head p{color:#64748b;margin:4px 0 0;font-size:14px}.analysis-answer{white-space:pre-wrap;color:#253044;background:#fff;border:1px solid #e5edf8;border-radius:12px;padding:14px;font-size:14px;line-height:1.55}.analysis-evidence{flex-direction:column;gap:7px;margin-top:12px;display:flex}.analysis-evidence-item{color:#274060;background:#eaf2ff;border:1px solid #cfe1ff;border-radius:10px;padding:8px 10px;font-size:12px}.button-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;display:flex}.secondary-btn{color:#2454e8;cursor:pointer;background:#f3f7ff;border:1px solid #bdd5ff;border-radius:12px;align-items:center;gap:7px;padding:12px 16px;font-weight:800;display:inline-flex}.secondary-btn:hover{background:#e7f0ff}.secondary-btn:disabled{opacity:.45;cursor:not-allowed}.evidence-button{text-align:left;cursor:pointer;width:100%;font-family:inherit}.evidence-button:hover{background:#dbeafe;border-color:#93c5fd}.viewer-backdrop{z-index:1000;background:#0f172a9e;justify-content:center;align-items:center;padding:22px;display:flex;position:fixed;inset:0}.viewer-modal{background:#fff;border-radius:18px;flex-direction:column;width:min(1200px,96vw);height:min(860px,92vh);display:flex;overflow:hidden;box-shadow:0 30px 80px #00000059}.viewer-header{background:#fbfdff;border-bottom:1px solid #e5edf8;justify-content:space-between;align-items:center;height:78px;padding:14px 18px;display:flex}.viewer-header h2{color:#142033;margin:2px 0 0;font-size:18px}.viewer-header p{color:#64748b;margin:3px 0 0;font-size:13px}.icon-btn{color:#1e293b;cursor:pointer;background:#fff;border:1px solid #dbe5f3;border-radius:12px;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex}.icon-btn:hover{background:#f1f5f9}.pdf-frame{background:#f8fafc;border:none;flex:1;width:100%}.supplement-reference-list{background:#eff6ffc7;border:1px solid #3b82f638;border-radius:12px;margin-top:12px;padding:10px}.supplement-reference-title{color:#1e3a8a;margin-bottom:3px;font-size:13px;font-weight:700}.supplement-reference-note{color:#64748b;margin-bottom:8px;font-size:11px;line-height:1.35}.supplement-reference-card{background:#fff;border:1px solid #94a3b847;border-radius:10px;margin-top:8px;padding:9px 10px}.supplement-reference-header{color:#0f172a;align-items:baseline;gap:6px;font-size:12px;font-weight:700;display:flex}.supplement-reference-rank{color:#2563eb;flex:none}.supplement-reference-name{overflow-wrap:anywhere}.supplement-reference-meta{color:#64748b;margin-top:3px;font-size:10.5px;line-height:1.35}.supplement-reference-tags{flex-wrap:wrap;gap:5px;margin-top:7px;display:flex}.supplement-reference-tag{color:#0369a1;background:#e0f2fe;border-radius:999px;padding:2px 7px;font-size:10px;font-weight:600}.supplement-reference-preview{color:#475569;margin-top:7px;font-size:11px;line-height:1.4}.reference-list{background:#f8fafce6;border:1px solid #94a3b847;border-radius:12px;margin-top:12px;padding:10px}.reference-list-intake{background:#eff6ffd1;border-color:#3b82f63d}.reference-list-supplement{background:#ecfdf5d1;border-color:#10b9813d}.reference-title{color:#0f172a;margin-bottom:3px;font-size:13px;font-weight:800}.reference-note{color:#64748b;margin-bottom:8px;font-size:11px;line-height:1.35}.reference-card{background:#fff;border:1px solid #94a3b847;border-radius:10px;margin-top:8px;padding:9px 10px}.reference-header{color:#0f172a;align-items:baseline;gap:6px;font-size:12px;font-weight:750;display:flex}.reference-rank{color:#2563eb;flex:none}.reference-name{overflow-wrap:anywhere}.reference-meta{color:#64748b;margin-top:3px;font-size:10.5px;line-height:1.35}.reference-values{color:#334155;flex-direction:column;gap:2px;margin-top:7px;font-size:11px;display:flex}.reference-tags{flex-wrap:wrap;gap:5px;margin-top:7px;display:flex}.reference-tag{color:#0369a1;background:#e0f2fe;border-radius:999px;padding:2px 7px;font-size:10px;font-weight:650}.reference-preview{color:#475569;margin-top:7px;font-size:11px;line-height:1.4}.reference-link{margin-top:7px;font-size:11px;font-weight:700}.reference-link a{color:#2563eb;text-decoration:none}.reference-link a:hover{text-decoration:underline}.app,.page,.main,main{max-width:1500px;margin-left:auto;margin-right:auto}main>div,.main-grid,.content-grid,.dashboard-grid,.app-grid{grid-template-columns:minmax(680px,1fr) 360px!important;align-items:start!important;gap:24px!important;display:grid!important}.ai-consultant,.consultant-card,.chat-card,.chat-panel,.chat-window,.chat-section,aside .card:last-child{width:100%!important;min-height:760px!important}.upload-card,.report-summary,.summary-card,.suggested-questions,.questions-card,.warning-card,main>div>section .card,main>div>div:not(aside) .card{width:100%!important}.suggested-questions,.questions-card{max-height:420px;overflow-y:auto}.rag-analysis,.analysis-card,.report-analysis{max-height:520px;overflow-y:auto}.report-summary,.summary-card{margin-bottom:16px!important}.evidence-list,.evidence-cards,.combined-reference-list{max-width:100%}.combined-reference-link{margin-top:7px;font-size:11px;font-weight:700}.combined-reference-link a{color:#2563eb;text-decoration:none}.combined-reference-link a:hover{text-decoration:underline}.combined-products-empty{color:#64748b;margin-top:9px;font-size:11px;font-style:italic}@media (width<=1100px){main>div,.main-grid,.content-grid,.dashboard-grid,.app-grid{grid-template-columns:1fr!important}main>div>aside,main>div>section,main>div>div:not(aside){order:initial!important}.chat-body{min-height:460px!important;max-height:620px!important}}main>div{grid-template-columns:minmax(720px,1fr) 380px!important;align-items:start!important;gap:24px!important;display:grid!important}main>div>aside{order:1!important;width:100%!important}main>div>section,main>div>div:not(aside){order:2!important;width:100%!important}.suggested-questions,.questions-card,[class*=suggested],[class*=questions]{order:3!important}.report-summary,.summary-card,[class*=report-summary],[class*=summary]{order:2!important}.upload-card,[class*=upload]{order:1!important}.upload-card,[class*=upload-card],[class*=upload]{min-height:360px!important}.upload-box,.upload-dropzone,.dropzone,[class*=dropzone],[class*=upload-box]{border-radius:22px!important;min-height:300px!important;padding:34px 28px!important}.upload-box svg,.upload-dropzone svg,.dropzone svg{width:46px!important;height:46px!important}.preview-pdf,.pdf-preview,button[aria-label*=Preview]{min-height:42px}button:has(svg){min-height:42px}.pdf-card,.preview-card,.demo-report-card,[class*=pdf],[class*=preview]{border-radius:18px}.chat-body{padding-right:6px;min-height:560px!important;max-height:680px!important;overflow-y:auto!important}.chat-input{background:inherit;padding-top:10px;position:sticky;bottom:0}.message-row.assistant .bubble,.bubble.assistant{max-width:92%!important}.message-row.user .bubble,.bubble.user{max-width:86%!important}.trait-card,.analysis-card,.report-trait-card,.finding-card,.rag-card{cursor:pointer;transition:all .18s}.trait-card:hover,.analysis-card:hover,.report-trait-card:hover,.finding-card:hover,.rag-card:hover{transform:translateY(-1px);box-shadow:0 10px 22px #0f172a14}.trait-card:not(.expanded) .trait-result,.trait-card:not(.expanded) .trait-genes,.trait-card:not(.expanded) .trait-snps,.trait-card:not(.expanded) .trait-actions,.trait-card:not(.expanded) .trait-questions,.trait-card:not(.expanded) p,.trait-card:not(.expanded) button,.analysis-card:not(.expanded) .trait-result,.analysis-card:not(.expanded) .trait-genes,.analysis-card:not(.expanded) .trait-snps,.analysis-card:not(.expanded) .trait-actions,.analysis-card:not(.expanded) .trait-questions,.analysis-card:not(.expanded) p,.analysis-card:not(.expanded) button,.report-trait-card:not(.expanded) .trait-result,.report-trait-card:not(.expanded) .trait-genes,.report-trait-card:not(.expanded) .trait-snps,.report-trait-card:not(.expanded) .trait-actions,.report-trait-card:not(.expanded) .trait-questions,.report-trait-card:not(.expanded) p,.report-trait-card:not(.expanded) button,.finding-card:not(.expanded) .trait-result,.finding-card:not(.expanded) .trait-genes,.finding-card:not(.expanded) .trait-snps,.finding-card:not(.expanded) .trait-actions,.finding-card:not(.expanded) .trait-questions,.finding-card:not(.expanded) p,.finding-card:not(.expanded) button,.rag-card:not(.expanded) .trait-result,.rag-card:not(.expanded) .trait-genes,.rag-card:not(.expanded) .trait-snps,.rag-card:not(.expanded) .trait-actions,.rag-card:not(.expanded) .trait-questions,.rag-card:not(.expanded) p,.rag-card:not(.expanded) button{display:none!important}.trait-card h1,.trait-card h2,.trait-card h3,.trait-card h4,.trait-card .priority-badge,.trait-card .badge,.analysis-card h1,.analysis-card h2,.analysis-card h3,.analysis-card h4,.analysis-card .priority-badge,.analysis-card .badge,.report-trait-card h1,.report-trait-card h2,.report-trait-card h3,.report-trait-card h4,.report-trait-card .priority-badge,.report-trait-card .badge,.finding-card h1,.finding-card h2,.finding-card h3,.finding-card h4,.finding-card .priority-badge,.finding-card .badge,.rag-card h1,.rag-card h2,.rag-card h3,.rag-card h4,.rag-card .priority-badge,.rag-card .badge{display:initial!important}.trait-card:not(.expanded):after,.analysis-card:not(.expanded):after,.report-trait-card:not(.expanded):after,.finding-card:not(.expanded):after,.rag-card:not(.expanded):after{content:"Click to expand";color:#64748b;margin-top:8px;font-size:11px;display:block}.trait-card.expanded,.analysis-card.expanded,.report-trait-card.expanded,.finding-card.expanded,.rag-card.expanded{cursor:pointer}.combined-reference-list{background:#eff6ffeb;border:1px solid #3b82f647;border-radius:14px;margin-top:14px;padding:12px}.combined-reference-title{color:#1e3a8a;margin-bottom:3px;font-size:13px;font-weight:850}.combined-reference-note{color:#64748b;margin-bottom:9px;font-size:11px;line-height:1.35}.combined-reference-card{background:#fff;border:1px solid #94a3b84d;border-radius:12px;margin-top:9px;padding:10px}.combined-reference-header{color:#0f172a;align-items:baseline;gap:6px;font-size:12.5px;font-weight:800;display:flex}.combined-reference-rank{color:#2563eb;flex:none}.combined-reference-name{overflow-wrap:anywhere}.combined-reference-meta{color:#64748b;margin-top:3px;font-size:10.5px;line-height:1.35}.combined-reference-values{color:#334155;flex-direction:column;gap:3px;margin-top:8px;font-size:11px;line-height:1.4;display:flex}.combined-products{border-top:1px dashed #94a3b873;margin-top:10px;padding-top:9px}.combined-products-title{color:#065f46;margin-bottom:7px;font-size:11px;font-weight:850}.combined-product-card{background:#ecfdf5e0;border:1px solid #10b9813d;border-radius:10px;margin-top:7px;padding:8px 9px}.combined-product-name{color:#0f172a;overflow-wrap:anywhere;font-size:11.5px;font-weight:800}.combined-product-meta{color:#64748b;margin-top:3px;font-size:10px;line-height:1.35}.combined-product-tags{flex-wrap:wrap;gap:5px;margin-top:6px;display:flex}.combined-product-tag{color:#047857;background:#d1fae5;border-radius:999px;padding:2px 7px;font-size:10px;font-weight:700}.combined-product-preview{color:#475569;margin-top:6px;font-size:10.5px;line-height:1.35}@media (width<=1100px){main>div{grid-template-columns:1fr!important}main>div>aside,main>div>section,main>div>div:not(aside){order:initial!important}.chat-body{min-height:460px!important;max-height:620px!important}}:is(.right-col .panel:has(.preview-card-btn),.right-col .upload-panel,.right-col .upload-card){min-height:unset!important}.right-col .upload-box,.right-col .upload-dropzone,.right-col .dropzone,.right-col [class*=dropzone],.right-col [class*=upload-box]{border-radius:18px!important;min-height:360px!important;padding:18px!important}.right-col .upload-actions{flex-direction:column!important;align-items:stretch!important;gap:10px!important;display:flex!important}.right-col .upload-actions button{width:100%!important}.preview-card-btn{color:#0f172a!important;width:100%!important;box-shadow:none!important;cursor:pointer!important;text-align:left!important;background:#f8fafc!important;border:1px solid #dbe3ef!important;border-radius:12px!important;justify-content:flex-start!important;align-items:center!important;gap:12px!important;padding:12px 14px!important;display:flex!important}.preview-card-btn svg{color:#94a3b8!important;flex:none!important}.preview-card-btn span{flex-direction:column!important;line-height:1.2!important;display:flex!important}.preview-card-btn strong{color:#0f172a!important;font-size:14px!important;font-weight:700!important}.preview-card-btn small{color:#94a3b8!important;margin-top:4px!important;font-size:12px!important}.trait-list{gap:12px!important}.summary-group-section{background:#fff;border:1px solid #dbeafe;border-radius:16px;overflow:hidden}.summary-group-section+.summary-group-section{margin-top:12px}.summary-group-header{cursor:pointer;color:#0f172a;background:#f8fbff;border-bottom:1px solid #0000;grid-template-columns:1fr auto auto;align-items:center;gap:10px;padding:13px 14px;font-weight:800;list-style:none;display:grid}.summary-group-header::-webkit-details-marker{display:none}.summary-group-section[open] .summary-group-header{border-bottom-color:#e2e8f0}.summary-group-header strong{color:#2563eb;text-align:center;background:#eef4ff;border-radius:999px;min-width:28px;padding:4px 8px;font-size:12px}.summary-group-hint{color:#64748b;font-size:11px;font-weight:700}.summary-group-list{flex-direction:column;gap:10px;padding:10px;display:flex}.summary-group-list .trait-card{margin:0!important}.summary-group-high .summary-group-header strong{color:#e11d48;background:#fff1f2}.summary-group-medium .summary-group-header strong{color:#d97706;background:#fffbeb}.summary-group-normal .summary-group-header strong{color:#059669;background:#ecfdf5}.right-col .upload-box,.right-col .upload-dropzone,.right-col .dropzone,.right-col [class*=dropzone],.right-col [class*=upload-box]{min-height:220px!important;padding:10px 14px!important}.right-col .upload-box svg,.right-col .upload-dropzone svg,.right-col .dropzone svg{width:24px!important;height:24px!important}.right-col .upload-actions{gap:6px!important}.right-col .upload-actions button{min-height:30px!important;padding:7px 10px!important;font-size:12px!important}.preview-card-btn{padding:8px 10px!important}.preview-card-btn svg{width:20px!important;height:20px!important}.preview-card-btn strong{font-size:13px!important}.preview-card-btn small{font-size:11px!important}
