/* Rollout 1: Ideas, its library and Prompts only. Tokens come from the shared sidebar import. */
:is(#opportunitiesSection, #librarySection, .prompt-library-hub, #promptModal, #promptDeleteDialog) {
  --creative-edge: color-mix(in srgb, var(--sia-sidebar-active-line) 20%, var(--sia-line));
  --creative-control-edge: color-mix(in srgb, var(--sia-sidebar-active-line) 35%, var(--sia-line));
  --creative-control-fill: linear-gradient(color-mix(in srgb, var(--sia-surface) 65%, transparent), color-mix(in srgb, var(--sia-surface) 65%, transparent)), var(--sia-sidebar-active);
  --creative-glow: inset 0 1px 0 rgba(121,215,210,.035), 0 0 12px rgba(67,189,184,.035);
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
:is(#opportunitiesSection, #librarySection, .prompt-library-hub, #promptModal) :is(h1, h2, h3, button, input, textarea) { font-family: inherit; }

/* Keep the focused Ideas task compact; never shrink results into the starting panel. */
.main.main-ideas #opportunitiesSection { flex: none; }
#librarySection.library-hub { background: transparent !important; border-color: transparent !important; box-shadow: none !important; }
.main.main-ideas #opportunitiesSection .ideas-hub-hero { flex: none; min-height: 420px; padding: 40px 28px; }
#opportunitiesSection :is(.ideas-hub-hero, .ideas-hub-result-card, .ideas-hub-saved-card, .channel-gate-card),
#librarySection :is(.library-card, .library-empty),
body .prompt-library-hub.content :is(.prompt-library-overview, .prompt-card, .empty) {
  background: var(--sia-sidebar-bg) !important; border-color: var(--creative-edge) !important;
  border-radius: 20px; box-shadow: var(--creative-glow) !important;
}
.main.main-ideas #opportunitiesSection .ideas-hub-hero.ideas-hub-generated { align-items: stretch; min-height: 0; padding: 24px; }
#opportunitiesSection .ideas-hub-result-card { min-height: 0; padding: 20px; }
#opportunitiesSection .ideas-hub-regenerate-shell::before, #opportunitiesSection .ideas-hub-regenerate-shell::after { display: none; }
#opportunitiesSection :is(.ideas-hub-result-title, .ideas-hub-saved-card-title),
#librarySection .library-card-title, body .prompt-library-hub.content .prompt-title { color: var(--sia-heading); font-size: 18px; line-height: 1.4; }
#opportunitiesSection .ideas-hub-hero h2 { color: var(--sia-heading); font-size: clamp(24px, 2.2vw, 32px); line-height: 1.3; }
:is(#librarySection, .prompt-library-hub) .library-header-copy h1 { color: var(--sia-heading); font-size: clamp(32px, 3vw, 48px); line-height: 1.15; }
#opportunitiesSection :is(.ideas-hub-hero > p, .ideas-hub-result-desc, .ideas-hub-result-why p, .ideas-hub-saved-card-desc, .ideas-hub-feature-desc),
#librarySection :is(.library-header-copy p, .library-card-desc, .library-empty p),
body .prompt-library-hub.content :is(.library-header-copy p, .prompt-desc, .empty p) { color: var(--sia-muted); font-size: 15px; line-height: 1.6; }
#opportunitiesSection :is(.ideas-hub-result-index, .ideas-hub-result-why-label, .ideas-hub-result-refs-label,
  .ideas-hub-result-ref-meta-line, .ideas-hub-result-ref-meta-ratio, .ideas-hub-quota, .ideas-hub-feature-name,
  .ideas-hub-saved-card-date, .ideas-hub-loading-step, .ideas-hub-loading-subtitle),
#librarySection :is(.library-card-kicker, .library-day-date, .library-card-meta, .library-card-time, .library-card-source, .library-card-refs, .library-meta),
body .prompt-library-hub.content :is(.prompt-overview-copy > span, .prompt-category, .prompt-tags span, .prompt-stats, .prompt-meta, .library-meta) { font-size: 12px; line-height: 1.5; }
#opportunitiesSection .ideas-hub-result-ref-title { font-size: 14px; line-height: 1.45; }
#opportunitiesSection :is(.ideas-hub-result-why, .ideas-hub-result-ref, .ideas-hub-demo-lock, .ideas-hub-quota),
#librarySection :is(.library-card-why, .library-card-ref),
body .prompt-library-hub.content .prompt-desc { background: var(--sia-surface) !important; border-color: var(--creative-edge) !important; }
#opportunitiesSection :is(.ideas-hub-hero-icon, .ideas-hub-result-bulb, .ideas-hub-feature-icon),
#librarySection .library-header-icon,
body .prompt-library-hub.content :is(.library-header-icon, .prompt-overview-icon, .prompt-type-icon, .prompt-empty-icon) {
  background: var(--creative-control-fill) !important; border: 1px solid var(--creative-control-edge);
  box-shadow: var(--creative-glow) !important; color: var(--sia-sidebar-accent) !important;
}
body .prompt-library-hub.content .prompt-type-icon { border-radius: 14px; }
body .prompt-library-hub.content .prompt-overview-item { border-color: var(--creative-edge); }

/* Existing tabs, search, dropdowns and actions keep their values and event targets. */
:is(#librarySection, .prompt-library-hub) :is(.library-tabs, .library-search-wrap, .library-order-trigger,
  .library-order-menu, .prompt-filter-trigger, .prompt-filter-menu) {
  background: var(--sia-sidebar-bg) !important; border-color: var(--creative-control-edge) !important;
  border-radius: 14px; box-shadow: var(--creative-glow) !important;
}
:is(#librarySection, .prompt-library-hub) .library-search-wrap input { background: transparent !important; border: 0 !important; border-radius: 0; color: var(--sia-text); font-size: 15px; min-height: 48px; }
:is(#librarySection, .prompt-library-hub) :is(.library-tab, .library-order-trigger, .library-order-option,
  .prompt-filter-trigger, .prompt-filter-option, .prompt-clear-button, .card-action, .library-card-save, .library-card-action) { font-size: 14px; min-height: 44px; }
:is(#librarySection, .prompt-library-hub) :is(.library-tab, .library-order-option, .prompt-filter-option) { background: transparent !important; color: var(--sia-text) !important; }
:is(#librarySection, .prompt-library-hub) :is(.library-tab.active, .library-order-option.active, .prompt-filter-option.active) { background: var(--sia-sidebar-active) !important; color: var(--sia-sidebar-accent) !important; }
#opportunitiesSection :is(.ideas-hub-library-link, .ideas-hub-result-save, .ideas-hub-result-copy, .ideas-hub-saved-remove),
#librarySection :is(.library-card-save, .library-card-project),
body .prompt-library-hub.content :is(.prompt-clear-button, .icon-button, .card-action) {
  background: var(--creative-control-fill) !important; border: 1px solid var(--creative-control-edge) !important;
  border-radius: 12px; box-shadow: var(--creative-glow) !important; color: var(--sia-text) !important;
}
#opportunitiesSection :is(.ideas-hub-cta, .ideas-hub-regenerate, .ideas-hub-create-project, .ideas-hub-library-link),
#librarySection .library-generate-link,
body .prompt-library-hub.content :is(.prompt-new-button, .prompt-empty-action) { font-size: 15px; min-height: 48px; border-radius: 14px; }
#opportunitiesSection :is(.ideas-hub-cta, .ideas-hub-regenerate, .ideas-hub-create-project),
#librarySection .library-generate-link,
body .prompt-library-hub.content :is(.prompt-new-button, .prompt-empty-action) { background: var(--sia-teal-dark) !important; border-color: var(--creative-control-edge); color: #fff !important; box-shadow: var(--creative-glow) !important; }
html[data-theme="dark"] :is(#opportunitiesSection, #librarySection, .prompt-library-hub) :is(.ideas-hub-cta, .ideas-hub-regenerate, .ideas-hub-create-project, .library-generate-link, .prompt-new-button, .prompt-empty-action) { color: var(--sia-bg) !important; }
#opportunitiesSection :is(.ideas-hub-result-save, .ideas-hub-result-copy), body .prompt-library-hub.content .icon-button { flex-shrink: 0; height: 44px; min-width: 44px; width: 44px; }
#opportunitiesSection .ideas-hub-result-save.saved, body .prompt-library-hub.content .icon-button.active { color: var(--sia-sidebar-accent) !important; border-color: var(--sia-sidebar-active-line) !important; }
body .prompt-library-hub.content .card-action.delete { background: var(--sia-danger-soft) !important; border-color: color-mix(in srgb, var(--sia-danger) 30%, var(--sia-line)) !important; color: var(--sia-danger) !important; }
#librarySection .library-card-project { font-size: 14px; min-height: 44px; }
#librarySection .library-card-project svg { fill: none; stroke: currentColor; flex-shrink: 0; }
#librarySection .library-card-foot { flex-wrap: wrap; gap: 14px; }
#librarySection .library-card-actions { flex-shrink: 0; }
#librarySection .library-card-save { height: 44px; width: 44px; flex-shrink: 0; }
#librarySection .library-card-save.saved { background: var(--sia-sidebar-active) !important; border-color: var(--sia-sidebar-active-line) !important; color: var(--sia-sidebar-accent) !important; }
body .prompt-library-hub.content .prompt-card-actions { gap: 8px; grid-template-columns: repeat(3, minmax(0, 1fr)); padding: 12px; }
body .prompt-library-hub.content .prompt-card-actions .card-action { font-size: 13px; gap: 6px; min-height: 44px; min-width: 0; padding: 0 6px; }
:is(#opportunitiesSection, #librarySection, .prompt-library-hub, #promptModal) :is(button, a, input, textarea):focus-visible { outline: 2px solid var(--sia-sidebar-accent); outline-offset: 3px; }
:is(#librarySection, .prompt-library-hub) .library-search-wrap:has(input:focus-visible) { outline: 2px solid var(--sia-sidebar-accent); outline-offset: 3px; }
:is(#librarySection, .prompt-library-hub) .library-search-wrap input:focus-visible { outline: none; box-shadow: none; }
#librarySection .library-generate-link svg { color: inherit; }
:is(#opportunitiesSection, #librarySection, .prompt-library-hub) :is(button, a):hover:not(:disabled) { border-color: var(--sia-sidebar-active-line); }
:is(#opportunitiesSection, #librarySection, .prompt-library-hub) button:disabled { cursor: not-allowed; }
.prompt-library-hub .message.error { background: var(--sia-danger-soft); color: var(--sia-danger); }

/* Prompt editor only: scroll the form on short screens, keep the close target reachable. */
#promptModal { padding: 16px; }
#promptModal .modal { background: var(--sia-sidebar-bg) !important; border: 1px solid var(--creative-edge); border-radius: 24px; display: flex; flex-direction: column; max-height: calc(100dvh - 32px); min-height: 0; overflow: hidden; padding: 0; }
#promptModal .modal-head { border-bottom: 1px solid var(--creative-edge); flex-shrink: 0; margin: 0; padding: 24px; }
#promptModal .modal-head h2 { font-size: 22px; line-height: 1.3; }
#promptModal .close-button { background: var(--creative-control-fill); border-color: var(--creative-control-edge); height: 44px; width: 44px; flex: 0 0 44px; }
#promptModal #promptForm { min-height: 0; overflow-y: auto; overscroll-behavior: contain; padding: 24px; scrollbar-color: var(--creative-control-edge) transparent; scrollbar-width: thin; }
#promptModal label { color: var(--sia-heading); font-size: 14px; }
#promptModal :is(input:not([type="checkbox"]):not([type="hidden"]), textarea, .category-select-trigger, .category-select-menu) { background: var(--sia-surface) !important; border-color: var(--creative-control-edge) !important; border-radius: 14px; color: var(--sia-text); font-size: 15px; }
#promptModal :is(input:not([type="checkbox"]):not([type="hidden"]), .category-select-trigger) { min-height: 48px; }
#promptModal .category-option { color: var(--sia-text); font-size: 14px; min-height: 44px; }
#promptModal .category-option.active { background: var(--creative-control-fill) !important; color: var(--sia-sidebar-accent); }
#promptModal :is(.favorite-toggle, .favorite-toggle-box, .soft-button) { background: var(--creative-control-fill) !important; border-color: var(--creative-control-edge); color: var(--sia-heading); }
#promptModal .favorite-toggle:has(input:checked) { border-color: var(--sia-sidebar-active-line); }
#promptModal .favorite-toggle input:checked + .favorite-toggle-box { background: var(--sia-teal-dark) !important; border-color: var(--sia-sidebar-active-line) !important; color: var(--sia-bg) !important; }
#promptModal .favorite-toggle-copy > span { font-size: 12px; }
#promptModal .modal-actions button { border-radius: 14px; font-size: 15px; min-height: 48px; }
#promptModal .primary-button { background: var(--sia-teal-dark) !important; border-color: var(--creative-control-edge); color: #fff !important; }
html[data-theme="dark"] #promptModal .primary-button { color: var(--sia-bg) !important; }
body:has(.prompt-library-hub):has(#promptModal.open) .floating-theme-toggle { display: none !important; }
#promptDeleteDialog { background: var(--sia-sidebar-bg); border: 1px solid var(--creative-edge); border-radius: 24px; box-shadow: var(--sia-shadow); color: var(--sia-text); max-height: calc(100dvh - 32px); max-width: calc(100vw - 32px); overflow-y: auto; padding: 0; width: 510px; }
#promptDeleteDialog::backdrop { background: rgba(10,28,43,.62); }
#promptDeleteDialog .prompt-delete-head { align-items: center; border-bottom: 1px solid var(--creative-edge); display: flex; gap: 16px; justify-content: space-between; padding: 20px 24px; }
#promptDeleteDialog h2 { color: var(--sia-heading); font-size: 22px; margin: 0; }
#promptDeleteDialog p { color: var(--sia-muted); font-size: 15px; line-height: 1.6; margin: 0; overflow-wrap: anywhere; padding: 24px; }
#promptDeleteDialog .prompt-delete-close { background: var(--creative-control-fill); border: 1px solid var(--creative-control-edge); border-radius: 50%; color: var(--sia-text); cursor: pointer; flex: 0 0 44px; font-size: 24px; height: 44px; width: 44px; }
#promptDeleteDialog .prompt-delete-actions { border-top: 1px solid var(--creative-edge); display: flex; gap: 12px; justify-content: flex-end; padding: 20px 24px; }
#promptDeleteDialog .prompt-delete-actions button { background: var(--creative-control-fill); border: 1px solid var(--creative-control-edge); border-radius: 14px; color: var(--sia-heading); cursor: pointer; font: inherit; font-size: 15px; font-weight: 750; min-height: 48px; padding: 10px 20px; }
#promptDeleteDialog #confirmPromptDelete { background: var(--sia-danger-soft); border-color: color-mix(in srgb, var(--sia-danger) 30%, var(--sia-line)); color: var(--sia-danger); }
#promptDeleteDialog button:focus-visible { outline: 2px solid var(--sia-sidebar-accent); outline-offset: 3px; }
body:has(.prompt-library-hub):has(#promptDeleteDialog[open]) .floating-theme-toggle { display: none !important; }
@media (max-width: 900px) {
  body:has(.main-ideas, #librarySection:not(.page-hidden), .prompt-library-hub) .brand { box-sizing: border-box; padding-right: 60px !important; width: 100%; }
  body:has(.main-ideas, #librarySection:not(.page-hidden), .prompt-library-hub) .brand-name { font-size: clamp(1.3rem, 6.65vw, 1.62rem) !important; }
  body:has(.main-ideas, #librarySection:not(.page-hidden), .prompt-library-hub) .floating-theme-toggle { bottom: auto; right: 16px; top: 17px; z-index: 41; }
}
@media (max-width: 600px) {
  .main.main-ideas #opportunitiesSection .ideas-hub-hero { min-height: 360px; padding: 32px 18px; }
  .main.main-ideas #opportunitiesSection .ideas-hub-hero.ideas-hub-generated { padding: 18px; }
  #opportunitiesSection .ideas-hub-result-card { padding: 18px; }
  #opportunitiesSection .ideas-hub-results { grid-template-columns: minmax(0, 1fr); }
  .prompt-library-hub .prompt-library-overview { border-radius: 18px; }
  .prompt-library-hub .prompt-card-actions { flex-wrap: wrap; }
  #promptModal :is(.modal-head, #promptForm) { padding: 18px; }
  #promptModal .form-row { grid-template-columns: minmax(0, 1fr); }
}
@media (prefers-reduced-motion: reduce) {
  #opportunitiesSection :is(.ideas-hub-sparkle, .ideas-hub-loading-orb, .ideas-hub-loading-bulb) { animation: none; }
}
