/* Account appearance is presentation only; default HTML remains a readable light page. */
.pi-continuity, .pi-draft-recovery, .pi-saved-view-controls, .pi-result-notebook { margin-block: 1.25rem; padding: 1rem; border: 1px solid var(--pi-rule); border-inline-start: 3px solid var(--pi-blue-600); border-radius: var(--pi-radius-md); background: var(--pi-paper); color: var(--pi-ink-900); }
.pi-continuity { max-width: 76rem; margin-inline: auto; }
.pi-continuity__actions, .pi-continuity__confirmation { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem; }
.pi-notebook-form { display: grid; gap: 1rem; max-width: 54rem; }
.pi-notebook-form label, .pi-saved-view-controls form > label { display: grid; gap: .4rem; }
.pi-notebook-form input:not([type=checkbox]), .pi-notebook-form textarea, .pi-saved-view-controls input:not([type=checkbox]), .pi-result-notebook select, .pi-appearance-setting select { width: 100%; min-height: 44px; padding: .55rem .7rem; border: 1px solid var(--pi-control-border); border-radius: 4px; background: var(--pi-paper); color: var(--pi-ink-900); font: inherit; font-size: 1rem; }
.pi-notebook-form textarea { min-height: 8rem; }
.pi-notebook-form fieldset label { display: flex; align-items: center; gap: .6rem; min-height: 44px; }
.pi-notebook-section details { border-block-start: 1px solid var(--pi-rule); padding-block: 1rem; }
.pi-notebook-section summary, .pi-continuity summary { min-height: 44px; cursor: pointer; font-weight: 600; overflow-wrap: anywhere; }
.pi-notebook-section a, .pi-result-notebook > a { display: block; padding-block: .6rem; }
.pi-notebook-section button, .pi-continuity button, .pi-draft-recovery button, .pi-saved-view-controls button, .pi-result-notebook button { min-height: 44px; margin: .25rem; white-space: normal; }
.pi-notebook-section pre, .pi-continuity pre { white-space: pre-wrap; overflow-wrap: anywhere; max-height: 24rem; overflow: auto; color: inherit; font-size: .9rem; }
.pi-result-notebook [role=status] { overflow-x: auto; }
.pi-result-notebook table { font-variant-numeric: tabular-nums; }
.pi-appearance-setting { display: block; max-width: 18rem; padding: 1rem; }
.pi-view-selection { display: inline-flex; min-width: 44px; min-height: 44px; align-items: center; justify-content: center; }
[hidden] { display: none !important; }
html[data-appearance=dark] { color-scheme: dark; --pi-ink-900: #e5edf6; --pi-ink-650: #bdcbd9; --pi-canvas: #101e2e; --pi-paper: #172940; --pi-blue-600: #aacaff; --pi-blue-700: #c9dcff; --pi-action-primary: #aacaff; --pi-action-primary-hover: #c9dcff; --pi-action-primary-pressed: #e5edf6; --pi-action-risk-surface: #3d2730; --pi-action-risk-hover-ink: #ffb6ac; --pi-action-risk-pressed-surface: #53313a; --pi-action-risk-pressed-ink: #ffb6ac; --pi-control-accent-surface: #243d56; --pi-control-accent-border: #8ea4ba; --pi-control-pressed-surface: #304f6c; --pi-control-selected-surface: #243d56; --pi-benchmark-surface-end: #243d56; --pi-green-650: #76d5af; --pi-amber-700: #ffd18c; --pi-red-650: #ffb6ac; --pi-rule: #526980; --pi-rule-strong: #8ea4ba; --pi-control-border: #8ea4ba; --pi-surface-muted: #243d56; }
html[data-appearance=dark] body { color: var(--pi-ink-900); background: var(--pi-canvas); }
html[data-appearance=dark] :is(h1,h2,h3,h4,h5,h6,legend,label,summary,dt,dd,.text-dark,.table) { color: var(--pi-ink-900); }
html[data-appearance=dark] :is(.text-muted,.pi-eyebrow,.pi-data,.help-block,.form-text,small) { color: var(--pi-ink-650) !important; }
html[data-appearance=dark] :is(main a,.modal a,.dropdown-menu a) { color: var(--pi-blue-600); }
html[data-appearance=dark] :is(.card,.card-body,.card-header,.card-footer,.panel,.panel-body,.panel-heading,.well,.modal-content,.modal-header,.modal-footer,.dropdown-menu,.list-group-item,.popover,.popover-header,.popover-body,.table thead th,.table tbody tr,.table td,.table th,.pi-panel,.pi-toolbar,.pi-result-context,.pi-result-evidence,.pi-builder-group,.pi-builder-summary,.pi-builder-review,.pi-selection,.pi-backtest-activity__item,.pi-management-list,.pi-custom-run__evidence-grid > section,.pi-custom-review__sections > section,.pi-ai-workspace,.pi-composer,.pi-discussion,.pi-reply-composer,.pi-profile-card,.pi-empty-state,.bg-white,.bg-light) { background-color: var(--pi-paper) !important; color: var(--pi-ink-900); border-color: var(--pi-rule); }
html[data-appearance=dark] :is(input,select,textarea,.form-control,.custom-select,.ck.ck-editor__main > .ck-editor__editable,.ck.ck-toolbar,.ck.ck-list,.ck.ck-dropdown__panel) { background-color: var(--pi-paper); color: var(--pi-ink-900); border-color: var(--pi-control-border); }
html[data-appearance=dark] :is(input,textarea)::placeholder { color: var(--pi-ink-650); opacity: 1; }
html[data-appearance=dark] :is(input,select,textarea,button):disabled { opacity: .65; }
html[data-appearance=dark] :is(.btn-primary,.pi-button--primary,.pi-primary-button) { background: #aacaff; border-color: #aacaff; color: #122033 !important; }
html[data-appearance=dark] :is(.btn-primary,.pi-button--primary,.pi-primary-button):hover { background: #c9dcff; color: #122033 !important; }
html[data-appearance=dark] :is(.btn-outline-primary,.btn-outline-secondary,.btn-default,.pi-button--secondary,.pi-button--ghost,.page-link,.nav-tabs .nav-link,.ck.ck-button) { background: var(--pi-paper); color: var(--pi-blue-600); border-color: var(--pi-control-border); }
html[data-appearance=dark] :is(.btn-outline-primary,.btn-outline-secondary,.page-link,.nav-tabs .nav-link,.ck.ck-button):hover { background: var(--pi-surface-muted); }
html[data-appearance=dark] :is(.nav-tabs .nav-link.active,.page-item.active .page-link,[aria-selected=true]) { background: #aacaff; color: #122033; }
/* A benchmark option keeps its nested palette; it is not a tab surface. */
html[data-appearance=dark] .pi-builder-step .pi-benchmark-picker__option[aria-selected=true] { background: var(--pi-control-accent-surface); color: var(--pi-ink-900); }
html[data-appearance=dark] :is(.alert-success,.pi-status-chip--success,.pi-status-chip--positive,.text-success) { background: #173d35; color: #9de8c9 !important; }
html[data-appearance=dark] :is(.alert-warning,.pi-status-chip--warning,.text-warning) { background: #3d3322; color: #ffd18c !important; }
html[data-appearance=dark] :is(.alert-danger,.pi-status-chip--danger,.pi-status-chip--error,.text-danger,.pi-builder-errors) { background: #3d2730; color: #ffb6ac !important; }
html[data-appearance=dark] :is(.alert-info,.pi-status-chip--info,.pi-status-chip--neutral) { background: #243d56; color: #c9dcff; }
html[data-appearance=dark] :is(.tooltip-inner,.pi-help-tooltip,[role=tooltip]) { background: #e5edf6; color: #122033; }
html[data-appearance=dark] :is(.table-hover tbody tr:hover,.table-striped tbody tr:nth-of-type(odd)) { background: var(--pi-surface-muted) !important; }
html[data-appearance=dark] :focus-visible { outline: 3px solid #ffd18c; outline-offset: 3px; }
/* Custom strategy styles load after the shared sheet and own a scoped palette.
   Override that palette and its explicit light surfaces together. */
html[data-appearance=dark] :is(.pi-ai-builder,.pi-custom-strategy--review) { --ai-navy: var(--pi-blue-600); --ai-blue: var(--pi-blue-600); --ai-ink: var(--pi-ink-900); --ai-muted: var(--pi-ink-650); --ai-line: var(--pi-rule); --ai-surface: var(--pi-surface-muted); --ai-paper: var(--pi-paper); color: var(--ai-ink); }
html[data-appearance=dark] :is(.pi-ai-builder,.pi-custom-strategy--review) :is(.pi-ai-editor > .pi-ai-section,.pi-ai-collection-buttons button,.pi-ai-search input,.pi-ai-search [role=listbox],.pi-ai-examples button,.pi-ai-universe select,.pi-ai-universe .pit-universe__parameter-grid input,.pi-custom-strategy-field select,.pit-universe,.pit-universe__choice,.pit-universe__timing span) { background: var(--ai-paper); color: var(--ai-ink); border-color: var(--pi-control-border); }
html[data-appearance=dark] :is(.pi-ai-builder,.pi-custom-strategy--review) :is(.pi-ai-brief,.pi-ai-selected,.pi-ai-example-preview,.pi-ai-message--user,.pi-ai-review-intro,.pi-custom-review__risk,.pit-universe__history-mark) { background: var(--ai-surface); color: var(--ai-ink); border-color: var(--ai-line); }
html[data-appearance=dark] :is(.pi-ai-builder,.pi-custom-strategy--review) :is(.pi-ai-collection-buttons button:hover,.pi-ai-examples button:hover) { background: var(--ai-surface); border-color: var(--pi-control-border); }
html[data-appearance=dark] :is(.pi-ai-builder,.pi-custom-strategy--review) .pi-ai-result[aria-selected=true], html[data-appearance=dark] :is(.pi-ai-builder,.pi-custom-strategy--review) .pi-ai-result:hover { background: var(--ai-surface); color: var(--ai-ink); }
html[data-appearance=dark] :is(.pi-ai-builder,.pi-custom-strategy--review) .pi-ai-steps [aria-current] span { background: var(--ai-navy); color: var(--pi-canvas); }
html[data-appearance=dark] :is(.pi-ai-builder,.pi-custom-strategy--review) .pi-ai-search input::placeholder { color: var(--ai-muted); }
html[data-appearance=dark] :is(.pi-ai-builder,.pi-custom-strategy--review) :is(.pi-ai-review-investments small,.pi-custom-review__risk h3,.pi-custom-review__risk dt,.pi-custom-review__risk dd) { color: var(--ai-ink); }
html[data-appearance=dark] :is(.pi-ai-builder,.pi-custom-strategy--review) .pi-ai-review-investments li { border-color: var(--ai-line); }
html[data-appearance=dark] :is(.pi-ai-builder,.pi-custom-strategy--review) :is(.pi-ai-selected button:hover,.pi-ai-conversation-status[role=alert]) { background: var(--pi-action-risk-surface); color: var(--pi-red-650); border-color: var(--pi-red-650); }
html[data-appearance=dark] :is(.pi-ai-builder,.pi-custom-strategy--review) :is(button,summary,a,input,textarea,select,.pi-ai-chat-log):focus-visible { outline: 3px solid #ffd18c; outline-offset: 3px; }
html[data-appearance=dark] .pi-instrument-picker__skeleton { background: linear-gradient(90deg,var(--pi-surface-muted),var(--pi-paper),var(--pi-surface-muted)); }
@media (prefers-reduced-motion: reduce) { .pi-continuity *, .pi-draft-recovery *, .pi-notebook-section *, .pi-result-notebook *, .pi-saved-view-controls * { animation: none !important; transition: none !important; scroll-behavior: auto !important; } }
@media (forced-colors: active) { .pi-continuity, .pi-draft-recovery, .pi-saved-view-controls, .pi-result-notebook { border: 1px solid CanvasText; background: Canvas; color: CanvasText; } .pi-notebook-section a, .pi-result-notebook a { color: LinkText; } }

.pi-footer .pi-appearance-setting { padding-inline: 0; color: var(--pi-text-inverse); }
