/* NOVA package readability and title hierarchy enhancements */
.package-panel .package-grid { gap: 22px; }
.package-panel .output-card { padding: 24px; border-radius: 20px; }
.package-panel .output-head { margin-bottom: 14px; }
.package-panel .output-head label { font-size: 13px; font-weight: 850; letter-spacing: .12em; }
#outTitle { font-size: clamp(20px, 2vw, 28px) !important; line-height: 1.42 !important; font-weight: 800 !important; letter-spacing: -.025em; color: #201b48 !important; min-height: 98px; padding: 22px 24px !important; background: linear-gradient(135deg,#f7f4ff 0%,#fff 100%) !important; border: 1px solid #d9d1ff !important; border-left: 5px solid #725bff !important; border-radius: 16px !important; }
#outDescription { font-size: 16px !important; line-height: 1.8 !important; min-height: 210px; padding: 20px 22px !important; }
#outTags, #outHashtags, #outGoogle, #outYoutube, #outRelated, #outContext { font-size: 15px !important; line-height: 1.7 !important; }
.alt-titles { display: grid; gap: 10px; }
.nova-title-option { display: grid !important; grid-template-columns: 34px minmax(0,1fr) auto; align-items: center; gap: 12px; padding: 16px 18px !important; border: 1px solid #e3ddff !important; border-radius: 14px !important; background: linear-gradient(110deg,#fbfaff 0%,#fff 100%) !important; min-height: 66px; }
.nova-title-option:nth-child(1) { border-color: #bcb0ff !important; background: linear-gradient(110deg,#f0ebff 0%,#fff 100%) !important; box-shadow: 0 5px 16px rgba(103,83,255,.08); }
.nova-title-rank { display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; border-radius: 10px; background: #eee9ff; color: #6753f5; font-size: 12px; font-weight: 850; }
.nova-title-text { font-size: 16px; line-height: 1.5; font-weight: 650; color: #262344; overflow-wrap: anywhere; }
.nova-title-option:nth-child(1) .nova-title-text { font-size: 17px; font-weight: 800; color: #241a62; }
.nova-title-option button { white-space: nowrap; border: 0; border-radius: 10px; background: #ebe7ff; color: #5d49ec; padding: 10px 13px; font-size: 12px; font-weight: 800; cursor: pointer; }
.nova-title-option button:hover, .nova-more-titles:hover { background: #ded7ff; }
.nova-title-count { margin: 0 0 12px; color: #777399; font-size: 13px; font-weight: 650; }
.nova-more-titles { display: block; width: 100%; margin-top: 14px; border: 1px solid #d9d1ff; border-radius: 13px; padding: 14px 18px; background: #f5f2ff; color: #5d49ec; font-size: 14px; font-weight: 800; cursor: pointer; transition: background .15s ease, transform .15s ease; }
.nova-more-titles:active { transform: scale(.995); }
.nova-more-titles:disabled { cursor: default; background: #f8f7fb; color: #9995ad; border-color: #e8e6ef; }
@media (max-width: 680px) { .package-panel .output-card { padding: 16px; } .nova-title-option { grid-template-columns: 28px minmax(0,1fr); padding: 13px !important; } .nova-title-option button { grid-column: 2; justify-self: start; } .nova-title-text { font-size: 15px; } #outTitle { font-size: 21px !important; padding: 16px !important; } }

/* Research desk: consistent, topic-agnostic query cards and actions */
.query-list { display: grid; gap: 10px; }
.query-item { display: grid; grid-template-columns: 38px minmax(0,1fr) auto; align-items: center; gap: 14px; padding: 16px 18px; border: 1px solid #252d44; border-radius: 14px; background: rgba(17,22,38,.82); min-width: 0; }
.query-item .rank { display: flex; align-items: center; justify-content: center; width: 34px; height: 34px; border-radius: 10px; background: #1c2340; color: #a9a4ff; font-size: 12px; font-weight: 800; }
.query-item .item-body { min-width: 0; }
.query-item .item-body b { display: block; color: #e8ecf7; font-size: 15px; line-height: 1.5; overflow-wrap: anywhere; }
.query-item .item-body p { margin: 5px 0 0; color: #99a5bf; font-size: 12px; line-height: 1.5; }
.query-actions { display: flex; align-items: center; gap: 8px; }
.query-actions .tiny-btn, .item-meta .tiny-btn { appearance: none; border: 1px solid #3b4564; border-radius: 9px; padding: 9px 12px; background: #1b2340; color: #e2e7ff; font: inherit; font-size: 12px; font-weight: 750; cursor: pointer; white-space: nowrap; }
.query-actions .tiny-btn:hover, .item-meta .tiny-btn:hover { border-color: #8174ff; background: #282b58; }
.source-link { color: #aaa3ff; font-size: 12px; font-weight: 750; text-decoration: none; }
.source-link:hover { text-decoration: underline; }
.opportunity-list { display: grid; gap: 12px; }
.opportunity-item { display: grid; grid-template-columns: 38px minmax(0,1fr) auto; gap: 14px; align-items: start; padding: 16px 18px; border: 1px solid #252d44; border-radius: 14px; background: rgba(17,22,38,.82); }
.opportunity-item .item-body { min-width: 0; }
.opportunity-item .item-body > b { color: #e8ecf7; line-height: 1.5; overflow-wrap: anywhere; }
.opportunity-item .item-body > p { color: #9aa7c1; font-size: 12px; line-height: 1.55; }
.opportunity-item .item-meta { display: flex; align-items: center; flex-wrap: wrap; gap: 10px 14px; color: #8f9bb5; font-size: 12px; }
.opportunity-item .score { border-radius: 9px; padding: 7px 9px; background: #1b2340; color: #d6d2ff; font-size: 12px; font-weight: 800; white-space: nowrap; }
@media (max-width: 680px) { .query-item { grid-template-columns: 30px minmax(0,1fr); padding: 13px; gap: 10px; } .query-item .rank { width: 28px; height: 28px; } .query-actions { grid-column: 2; } .opportunity-item { grid-template-columns: 30px minmax(0,1fr); padding: 13px; gap: 10px; } .opportunity-item .score { grid-column: 2; justify-self: start; } }
