/* Generated from existing component colours by scripts/build-appearance.py. */
:root{--ink:#0d1220;color-scheme:light}
:root[data-theme="dark"]{--ink:#edf3ff;--bg:#04060c;--muted:#a8b4cc;--line:#2b3b53;color:#edf3ff;background:#04060c;color-scheme:dark}
:root[data-theme="dark"] body{color:var(--ink);background:var(--bg)}

/* app */
:root[data-theme="dark"]{color:var(--ink)}
:root[data-theme="dark"] button:focus-visible,:root[data-theme="dark"] a:focus-visible,:root[data-theme="dark"] input:focus-visible,:root[data-theme="dark"] select:focus-visible,:root[data-theme="dark"] textarea:focus-visible,:root[data-theme="dark"] summary:focus-visible{outline:3px solid #24375f}
:root[data-theme="dark"] .skip{background:#0a1022}
:root[data-theme="dark"] .btn.secondary{color:var(--ink);background:#0a1022}
:root[data-theme="dark"] .btn.secondary:hover{background:var(--ui-wash,#12204a);border-color:#24375f}
:root[data-theme="dark"] .iconbtn:hover{background:var(--ui-wash,#12204a)}
:root[data-theme="dark"] .pill{background:var(--ui-wash,#12204a);color:#9dbfff}
:root[data-theme="dark"] .pill.soon{background:var(--ui-wash,#12204a);color:#a8b4cc}
:root[data-theme="dark"] .pill.complete{color:#8ee0b7;background:#19382f}
:root[data-theme="dark"] .sidebar{background:#0a1022}
:root[data-theme="dark"] .brand .eyebrow{color:#a8b4cc}
:root[data-theme="dark"] .nav a{color:#a8b4cc}
:root[data-theme="dark"] .nav a:hover{background:#0a1022}
:root[data-theme="dark"] .nav a.active{background:var(--ui-wash,#12204a);color:#9dbfff}
:root[data-theme="dark"] .sidebar-note .eyebrow{color:#a8b4cc}
:root[data-theme="dark"] .sidebar-note p{color:#a8b4cc}
:root[data-theme="dark"] .sidebar-note small{color:#a8b4cc}
:root[data-theme="dark"] .sidebar-foot{color:#a8b4cc}
:root[data-theme="dark"] .sidebar-foot svg{color:#9dbfff}
:root[data-theme="dark"] .topbar{background:#0a1022}
:root[data-theme="dark"] .crumb{color:#a8b4cc}
:root[data-theme="dark"] .crumb strong{color:#9dbfff}
:root[data-theme="dark"] .avatar{background:var(--ui-wash,#12204a);color:#9dbfff}
:root[data-theme="dark"] .language select{background:#0a1022;color:#a8b4cc}
:root[data-theme="dark"] .quiet-link{color:#9dbfff}
:root[data-theme="dark"] .quiet-link:hover{color:#9dbfff}
:root[data-theme="dark"] .chapter{background:#0a1022}
:root[data-theme="dark"] .chapter summary:hover{background:#0a1022}
:root[data-theme="dark"] .chapter-number{background:var(--ui-wash,#12204a);color:#9dbfff}
:root[data-theme="dark"] .chapter-name .eyebrow{color:#a8b4cc}
:root[data-theme="dark"] .chapter-chevron{color:#a8b4cc}
:root[data-theme="dark"] .journey-step:before{background:var(--ui-wash,#12204a)}
:root[data-theme="dark"] .step-node{border:2px solid #24375f;background:#0a1022;color:#a8b4cc}
:root[data-theme="dark"] .journey-step a small{color:#9dbfff}
:root[data-theme="dark"] .journey-step a:hover{border-color:#24375f;background:#0a1022}
:root[data-theme="dark"] .journey-step.current a{border-color:#24375f;background:#0a1022}
:root[data-theme="dark"] .chapter-open{color:#9dbfff}
:root[data-theme="dark"] .chapter-open:hover{background:#0a1022}
:root[data-theme="dark"] .milestone{background:#19382f;color:#8ee0b7}
:root[data-theme="dark"] .finish-marker{border:1px dashed #24375f;background:var(--ui-wash,#12204a)}
:root[data-theme="dark"] .finish-marker>svg{color:#9dbfff}
:root[data-theme="dark"] .progress-card,:root[data-theme="dark"] .admin-card,:root[data-theme="dark"] .module-detail{background:#0a1022}
:root[data-theme="dark"] .journey-summary .eyebrow{color:#a8b4cc}
:root[data-theme="dark"] .progress-orbit{background:conic-gradient(var(--blue) var(--progress),var(--ui-wash,#12204a) 0)}
:root[data-theme="dark"] .progress-orbit strong{background:#0a1022}
:root[data-theme="dark"] .goal-card{background:var(--ui-wash,#12204a);border:1px solid #24375f}
:root[data-theme="dark"] .goal-card>svg{color:#9dbfff}
:root[data-theme="dark"] .goal-card p{color:#a8b4cc}
:root[data-theme="dark"] .search svg{color:#a8b4cc}
:root[data-theme="dark"] .search input{background:#0a1022}
:root[data-theme="dark"] .filter{color:#a8b4cc}
:root[data-theme="dark"] .filter:hover:not(.active){background:var(--ui-wash,#12204a)}
:root[data-theme="dark"] .module-card{background:#0a1022}
:root[data-theme="dark"] .module-art-icon{color:#9dbfff}
:root[data-theme="dark"] .module-card:nth-child(3n+2) .module-art{background:var(--ui-wash,#12204a)}
:root[data-theme="dark"] .module-card:nth-child(3n+2) .module-num{color:#9dbfff}
:root[data-theme="dark"] .module-card:nth-child(3n+2) .art-title{color:#9dbfff}
:root[data-theme="dark"] .line-label{color:#a8b4cc}
:root[data-theme="dark"] .progress-line{background:var(--ui-wash,#12204a)}
:root[data-theme="dark"] .module-action svg{color:#9dbfff}
:root[data-theme="dark"] .back-link{color:#a8b4cc}
:root[data-theme="dark"] .lesson-number{color:#a8b4cc}
:root[data-theme="dark"] .lesson-nav{background:#0a1022}
:root[data-theme="dark"] .lesson-nav-head .eyebrow{color:#9dbfff}
:root[data-theme="dark"] .lesson-row small{color:#a8b4cc}
:root[data-theme="dark"] .lesson-row.active{background:var(--ui-wash,#12204a);color:#9dbfff}
:root[data-theme="dark"] .lesson-row:hover{background:var(--ui-wash,#12204a)}
:root[data-theme="dark"] .lesson-title>.eyebrow{color:#a8b4cc}
:root[data-theme="dark"] .reading{background:#0a1022}
:root[data-theme="dark"] .section-no{color:#a8b4cc}
:root[data-theme="dark"] .reading-block p{color:#a8b4cc}
:root[data-theme="dark"] .media-pending{background:var(--ui-wash,#12204a);border:1px solid #24375f}
:root[data-theme="dark"] .media-pending svg{color:#9dbfff}
:root[data-theme="dark"] .media-pending p{color:#a8b4cc}
:root[data-theme="dark"] .player-options{color:#a8b4cc}
:root[data-theme="dark"] .player-options select{background:#0a1022}
:root[data-theme="dark"] .quiz-card{background:#0a1022}
:root[data-theme="dark"] .quiz-card>.eyebrow{color:#9dbfff}
:root[data-theme="dark"] .quiz-option:has(input:checked){background:var(--ui-wash,#12204a)}
:root[data-theme="dark"] .quiz-option.correct{background:#19382f}
:root[data-theme="dark"] .quiz-feedback{color:#a8b4cc}
:root[data-theme="dark"] #quiz-result:not(:empty){background:var(--ui-wash,#12204a);color:#9dbfff}
:root[data-theme="dark"] .lesson-actions{background:#0a1022}
:root[data-theme="dark"] .lesson-pager a{background:#0a1022}
:root[data-theme="dark"] .lesson-pager a:hover{border-color:#24375f}
:root[data-theme="dark"] .empty{background:#0a1022;border:1px dashed #24375f}
:root[data-theme="dark"] .empty>svg{color:#9dbfff}
:root[data-theme="dark"] .notice{background:var(--ui-wash,#12204a);color:#9dbfff;border:1px solid #24375f}
:root[data-theme="dark"] .form-field input,:root[data-theme="dark"] .form-field textarea,:root[data-theme="dark"] .form-field select{border:1px solid #24375f;background:#0a1022;color:var(--ink)}
:root[data-theme="dark"] .invite-link{background:var(--ui-wash,#12204a)}
:root[data-theme="dark"] .studio-stats>div{background:#0a1022}
:root[data-theme="dark"] .editor-toolbar select{background:#0a1022}
:root[data-theme="dark"] .editor-section,:root[data-theme="dark"] .editor-question{background:#0a1022}
:root[data-theme="dark"] .source-row select{background:#0a1022}
:root[data-theme="dark"] .auth-page{background:radial-gradient(ellipse at 15% 20%,var(--ui-wash,#12204a) 0,transparent 55%),var(--bg)}
:root[data-theme="dark"] .auth-brand .logo{background:#0a1022;border:1px solid #24375f}
:root[data-theme="dark"] .auth-card{background:#0a1022}
:root[data-theme="dark"] .auth-form>.eyebrow{color:#9dbfff}
:root[data-theme="dark"] .error{background:#382333;border:1px solid #24375f;color:#ffb0be}
:root[data-theme="dark"] .spinner{border:2px solid #24375f}
:root[data-theme="dark"] .footnote{color:#a8b4cc}
/* journey */
:root[data-theme="dark"] .nav a.active{background:var(--ui-wash,#12204a)}
:root[data-theme="dark"] .journey-heading .eyebrow{color:#a8b4cc}
:root[data-theme="dark"] .heading-period{color:#9dbfff}
:root[data-theme="dark"] .journey-chapter-panel{background:#0a1022;border:1px solid #24375f}
:root[data-theme="dark"] .chapter-symbol{background:var(--ui-wash,#12204a);color:#9dbfff;border:1px solid #24375f}
:root[data-theme="dark"] .chapter-panel-top .eyebrow{color:#9dbfff}
:root[data-theme="dark"] .chapter-count{color:#a8b4cc}
:root[data-theme="dark"] .track-step:not(:last-child):after{background:var(--ui-wash,#12204a)}
:root[data-theme="dark"] .track-step>span{background:#0a1022;border:1px solid #24375f;color:#a8b4cc}
:root[data-theme="dark"] .track-step.active>span{background:#0a1022;color:#9dbfff}
:root[data-theme="dark"] .panel-section-label{color:#a8b4cc}
:root[data-theme="dark"] .chapter-trail li:not(:last-child):before{background:var(--ui-wash,#12204a)}
:root[data-theme="dark"] .trail-dot{background:#0a1022;border:1px solid #24375f;color:#a8b4cc}
:root[data-theme="dark"] .chapter-trail .current .trail-dot{background:var(--ui-wash,#12204a);color:#9dbfff;border:2px solid #24375f}
:root[data-theme="dark"] .trail-copy small{color:#a8b4cc}
:root[data-theme="dark"] .trail-copy>span{color:#a8b4cc}
:root[data-theme="dark"] .chapter-trail .current .trail-copy>span{color:#9dbfff}
:root[data-theme="dark"] .chapter-trail .done .trail-copy>span{color:#9dbfff}
:root[data-theme="dark"] .chapter-trail a:hover .trail-copy strong{color:#9dbfff}
:root[data-theme="dark"] .chapter-checkpoint{background:#0a1022;border:1px dashed #24375f;color:#a8b4cc}
:root[data-theme="dark"] .chapter-checkpoint strong{color:#9dbfff}
:root[data-theme="dark"] .chapter-checkpoint.achieved{border-color:#24375f;background:var(--ui-wash,#12204a)}
:root[data-theme="dark"] .cta-arrow{background:#0a1022;color:#9dbfff}
:root[data-theme="dark"] .lesson-journey-ribbon{border:1px solid #24375f;background:linear-gradient(110deg,#0a1022,var(--ui-wash,#12204a))}
:root[data-theme="dark"] .lesson-journey-ribbon>a{color:#9dbfff}
:root[data-theme="dark"] .lesson-journey-ribbon .eyebrow{color:#a8b4cc}
:root[data-theme="dark"] .lesson-actions:has([data-status=started]){background:linear-gradient(120deg,var(--ui-wash,#12204a),#0a1022);border-color:#24375f}
:root[data-theme="dark"] .lesson-actions:has([data-status=started]) strong{color:#9dbfff}
:root[data-theme="dark"] .quiz-option:not(:has(input:disabled)):hover{border-color:#24375f}
:root[data-theme="dark"] .quiz-option input{border:2px solid #24375f;background:#0a1022}
:root[data-theme="dark"] #quiz-result:not(:empty){border:1px solid #24375f;background:linear-gradient(125deg,var(--ui-wash,#12204a),#0a1022)}
:root[data-theme="dark"] .library-controls{background:#0a1022}
:root[data-theme="dark"] .library-controls .search input{background:#0a1022}
:root[data-theme="dark"] .library-controls .filters{background:var(--ui-wash,#12204a)}
:root[data-theme="dark"] .library-controls .filter.active{background:#0a1022;color:#9dbfff}
:root[data-theme="dark"] .module-card:hover{border-color:#24375f}
:root[data-theme="dark"] .module-card:nth-child(3n+3) .module-art{background:linear-gradient(145deg,var(--ui-wash,#12204a),var(--ui-wash,#12204a))}
:root[data-theme="dark"] .module-card:nth-child(3n+3) .art-title{color:#9dbfff}
:root[data-theme="dark"] .module-card:nth-child(3n+3) .module-num,:root[data-theme="dark"] .module-card:nth-child(3n+3) .module-art-icon{color:#9dbfff}
:root[data-theme="dark"] .module-card:nth-child(3n+3) .module-art:after{color:#9dbfff16}
:root[data-theme="dark"] .module-action>svg{background:var(--ui-wash,#12204a)}
:root[data-theme="dark"] .module-lesson .lesson-number{background:#0a1022;color:#9dbfff;border:1px solid #24375f}
:root[data-theme="dark"] .module-lesson:hover h3{color:#9dbfff}
:root[data-theme="dark"] .avatar.avatar--soft{background:var(--ui-wash,#12204a);color:#9dbfff;border:2px solid #2b3b53}
:root[data-theme="dark"] .soft-chip{background:var(--ui-wash,#12204a);color:#9dbfff}
:root[data-theme="dark"] .expedition-summary{background:#0a1022;border:1px solid #24375f}
:root[data-theme="dark"] .traveler-profile small{color:#a8b4cc}
:root[data-theme="dark"] .traveler-profile strong span{color:#a8b4cc}
:root[data-theme="dark"] .expedition-meter>div:first-child{color:#a8b4cc}
:root[data-theme="dark"] .expedition-meter strong{color:#9dbfff}
:root[data-theme="dark"] .landscape-map{border:1px solid #24375f;background:var(--ui-wash,#12204a)}
:root[data-theme="dark"] .landscape-caption{background:#0a1022}
:root[data-theme="dark"] .landscape-caption .eyebrow{color:#a8b4cc}
:root[data-theme="dark"] .locate-button{border:1px solid #24375f;background:#0a1022;color:#9dbfff}
:root[data-theme="dark"] .locate-button:hover{background:var(--ui-wash,#12204a);border-color:#24375f}
:root[data-theme="dark"] .terrain-shade{background:linear-gradient(#0a1022 0%,#0a102200 12%,var(--ui-wash,#12204a)00 92%,var(--ui-wash,#12204a)80)}
:root[data-theme="dark"] .terrain-pin{background:#0a1022ed;border:2px solid #2b3b53;color:#9dbfff}
:root[data-theme="dark"] .terrain-stop.in-region .terrain-pin{color:#9dbfff;border-color:#24375f}
:root[data-theme="dark"] .terrain-stop.done .terrain-pin{border-color:#24375f}
:root[data-theme="dark"] .stop-label{background:#0a1022f2;border:1px solid #24375f}
:root[data-theme="dark"] .stop-label strong{color:#9dbfff}
:root[data-theme="dark"] .stop-label small{color:#a8b4cc}
:root[data-theme="dark"] .summit-label{color:#9dbfff;background:#0a1022d9;border:1px solid #24375f}
:root[data-theme="dark"] .region-label{color:#9dbfff;background:#0a102299}
:root[data-theme="dark"] .terrain-key{border-top:1px solid #24375f;background:#0a1022;color:#a8b4cc}
:root[data-theme="dark"] .module-switch{background:var(--ui-wash,#12204a)}
:root[data-theme="dark"] .module-switch button{color:#a8b4cc}
:root[data-theme="dark"] .module-switch button>span{border:1px solid #24375f}
:root[data-theme="dark"] .module-switch button small{color:#a8b4cc}
:root[data-theme="dark"] .module-switch button[aria-pressed=true]{background:#0a1022;color:#9dbfff}
:root[data-theme="dark"] .module-switch button[aria-pressed=true]>span{background:var(--ui-wash,#12204a);color:#9dbfff;border-color:#24375f}
:root[data-theme="dark"] .field-note{color:#a8b4cc}
:root[data-theme="dark"] .module-art-icon{background:#0a102218;border:1px solid #2b3b532a}
:root[data-theme="dark"] .upload-destination{background:var(--ui-wash,#12204a);color:#9dbfff}
:root[data-theme="dark"] .replace-choice{border:1px solid #24375f;background:#352c21}
:root[data-theme="dark"] .recording-table{border:1px solid #24375f}
:root[data-theme="dark"] .recording-row+.recording-row{border-top:1px solid #24375f}
:root[data-theme="dark"] .recording-row>span{color:#a8b4cc}
:root[data-theme="dark"] .continue-mark,:root[data-theme="dark"] .completion-mark{color:#9dbfff}
:root[data-theme="dark"] .continue-mark{background:#0a10220d;border-color:#2b3b5320}
:root[data-theme="dark"] .continue-card .progress-line{background:#0a102218}
:root[data-theme="dark"] .course-finished .continue-mark{color:#8ee0b7}
:root[data-theme="dark"] .completion-card{border:1px solid #24375f;background:#0a1022}
:root[data-theme="dark"] .completion-card .eyebrow{color:#9dbfff}
:root[data-theme="dark"] .completion-card p{color:#a8b4cc}
:root[data-theme="dark"] .completion-links .quiet-link{color:#9dbfff}
:root[data-theme="dark"] .completion-card.milestone{border-color:#24375f;background:linear-gradient(110deg,var(--ui-wash,#12204a),#0a1022)}
:root[data-theme="dark"] .completion-card:focus{outline:2px solid #24375f}
:root[data-theme="dark"] .quiz-option.incorrect{border-color:#24375f;background:#352c21}
:root[data-theme="dark"] .quiz-option .answer-state{color:#8ee0b7}
:root[data-theme="dark"] .quiz-option.incorrect .answer-state{color:#f0cb88}
:root[data-theme="dark"] #toast[data-kind=success]>svg{color:#8ee0b7}
/* journal */
:root[data-theme="dark"] .journal-heading p{color:#a8b4cc}
:root[data-theme="dark"] .journal-private{color:#a8b4cc}
:root[data-theme="dark"] .journal-stat{border:1px solid #24375f;background:#0a1022}
:root[data-theme="dark"] .journal-stat>span{color:#a8b4cc}
:root[data-theme="dark"] .journal-stat.planned strong{color:#9dbfff}
:root[data-theme="dark"] .journal-day-panel{background:#0a1022;border:1px solid #24375f}
:root[data-theme="dark"] .journal-date-controls input{background:#0a1022;border:1px solid #24375f;color:#9dbfff}
:root[data-theme="dark"] .journal-day{background:#0a1022}
:root[data-theme="dark"] .journal-day>span{color:#a8b4cc}
:root[data-theme="dark"] .journal-day small{color:#a8b4cc}
:root[data-theme="dark"] .journal-day:not(.selected):hover{border-color:#24375f;background:var(--ui-wash,#12204a)}
:root[data-theme="dark"] .journal-list-heading{border-bottom:1px solid #24375f}
:root[data-theme="dark"] .journal-list-heading>span{color:#a8b4cc}
:root[data-theme="dark"] .journal-trade{border-bottom:1px solid #24375f}
:root[data-theme="dark"] .journal-trade:hover h3{color:#9dbfff}
:root[data-theme="dark"] .journal-thumb{border:1px solid #24375f}
:root[data-theme="dark"] .journal-no-image{background:var(--ui-wash,#12204a);color:#9dbfff}
:root[data-theme="dark"] .journal-side,:root[data-theme="dark"] .journal-status{background:var(--ui-wash,#12204a);color:#a8b4cc}
:root[data-theme="dark"] .journal-side.long{color:#8ee0b7;background:#19382f}
:root[data-theme="dark"] .journal-side.short{color:#ffb0be;background:#382333}
:root[data-theme="dark"] .journal-status.planned{background:var(--ui-wash,#12204a);color:#9dbfff}
:root[data-theme="dark"] .journal-status.open{background:#352c21;color:#f0cb88}
:root[data-theme="dark"] .journal-trade-copy p{color:#a8b4cc}
:root[data-theme="dark"] .journal-trade-copy small{color:#a8b4cc}
:root[data-theme="dark"] .journal-open{color:#9dbfff}
:root[data-theme="dark"] .journal-empty>svg{color:#9dbfff}
:root[data-theme="dark"] .journal-empty p{color:#a8b4cc}
:root[data-theme="dark"] .journal-editor-heading .back-link{color:#9dbfff}
:root[data-theme="dark"] .journal-card{border:1px solid #24375f;background:#0a1022}
:root[data-theme="dark"] .journal-card .form-field input,:root[data-theme="dark"] .journal-card .form-field select,:root[data-theme="dark"] .journal-card .form-field textarea{border:1px solid #24375f;background:#0a1022;color:#9dbfff}
:root[data-theme="dark"] .journal-optional{color:#a8b4cc}
:root[data-theme="dark"] .journal-file-label input::file-selector-button{border:1px solid #24375f;background:var(--ui-wash,#12204a);color:#9dbfff}
:root[data-theme="dark"] .journal-help{color:#a8b4cc}
:root[data-theme="dark"] .journal-screenshot{background:#0a1022;border:1px solid #24375f}
:root[data-theme="dark"] .journal-image-empty{border:1px dashed #24375f;background:#0a1022;color:#a8b4cc}
:root[data-theme="dark"] .journal-reminder>svg{color:#9dbfff}
:root[data-theme="dark"] .journal-reminder span{color:#9dbfff}
:root[data-theme="dark"] .journal-checks{border:1px solid #24375f;background:#0a1022}
:root[data-theme="dark"] .journal-checks legend span{color:#a8b4cc}
:root[data-theme="dark"] .journal-check{border-bottom:1px solid #24375f}
:root[data-theme="dark"] .journal-check-number{color:#a8b4cc}
:root[data-theme="dark"] .journal-check>input{border:1px solid #24375f;background:#0a1022;color:#9dbfff}
:root[data-theme="dark"] .journal-check>input::placeholder{color:#a8b4cc}
:root[data-theme="dark"] .journal-check:has(input:checked)>label{color:#9dbfff}
:root[data-theme="dark"] .journal-savebar{background:#0a1022;border:1px solid #24375f}
:root[data-theme="dark"] .journal-savebar p{color:#a8b4cc}
:root[data-theme="dark"] .journal-delete{color:#ffb0be}
:root[data-theme="dark"] #journal-message{color:#9dbfff}
:root[data-theme="dark"] .journal-help-example{border:1px solid #24375f;background:#0a1022}
:root[data-theme="dark"] .journal-help-example>summary{color:#9dbfff}
:root[data-theme="dark"] .journal-help-example[open]>summary{border-bottom:1px solid #24375f;background:var(--ui-wash,#12204a)}
:root[data-theme="dark"] .journal-help-content{background:#0a1022}
:root[data-theme="dark"] .journal-help-content h3{color:#9dbfff}
:root[data-theme="dark"] .journal-help-content>p{color:#a8b4cc}
:root[data-theme="dark"] .journal-help-content figure{border:1px solid #24375f;background:#0a1022}
:root[data-theme="dark"] .journal-help-content figcaption{color:#a8b4cc;border-top:1px solid #24375f;background:#0a1022}
:root[data-theme="dark"] .journal-help-content figcaption>span{color:#9dbfff}
:root[data-theme="dark"] .journal-help-question{background:#0a1022}
:root[data-theme="dark"] .journal-help-question strong{color:#9dbfff}
:root[data-theme="dark"] .journal-help-question p{color:#9dbfff}
:root[data-theme="dark"] .journal-lesson-link{color:#9dbfff}
:root[data-theme="dark"] .journal-chart-expand{color:#9dbfff}
/* account */
:root[data-theme="dark"] .account-card{background:#0a1022;border:1px solid #24375f}
:root[data-theme="dark"] .account-card input:not([type=radio]){border:1px solid #24375f;background:#0a1022;color:#9dbfff}
:root[data-theme="dark"] .account-card input[readonly]{background:var(--ui-wash,#12204a);color:#a8b4cc}
:root[data-theme="dark"] .account-card small{color:#a8b4cc}
:root[data-theme="dark"] .account-avatar-picker>p{color:#a8b4cc}
:root[data-theme="dark"] .account-avatar-option{border:1px solid #24375f;background:#0a1022}
:root[data-theme="dark"] .account-avatar-symbol{color:#9dbfff}
:root[data-theme="dark"] .account-avatar-options input:checked+.account-avatar-option{background:var(--ui-wash,#12204a);color:#9dbfff}
:root[data-theme="dark"] .account-form-bottom p{color:#9dbfff}
:root[data-theme="dark"] .account-passport-progress strong span{color:#9dbfff}
:root[data-theme="dark"] .account-password-card>p{color:#a8b4cc}
:root[data-theme="dark"] .device-row{border-top:1px solid #24375f}
:root[data-theme="dark"] .device-row p,:root[data-theme="dark"] .device-row small{color:#a8b4cc}
:root[data-theme="dark"] .device-replacement{border:1px solid #24375f}
:root[data-theme="dark"] .device-replacement small{color:#a8b4cc}
:root[data-theme="dark"] .watch-controls span{color:#a8b4cc}
/* community */
:root[data-theme="dark"] .journal-view-tabs{border-bottom:1px solid #24375f}
:root[data-theme="dark"] .journal-view-tabs a{color:#a8b4cc}
:root[data-theme="dark"] .journal-view-tabs a[aria-current]{color:#9dbfff}
:root[data-theme="dark"] .review-weekbar input{border:1px solid #24375f;background:#0a1022}
:root[data-theme="dark"] .review-stats>div{border:1px solid #24375f;background:#0a1022}
:root[data-theme="dark"] .review-muted{color:#a8b4cc}
:root[data-theme="dark"] .review-days a{color:#a8b4cc}
:root[data-theme="dark"] .review-days a:hover,:root[data-theme="dark"] .review-days a:focus-visible{background:var(--ui-wash,#12204a);color:#9dbfff}
:root[data-theme="dark"] .review-days strong{color:#9dbfff}
:root[data-theme="dark"] .review-bar-space{background:var(--ui-wash,#12204a)}
:root[data-theme="dark"] .review-question b{color:#9dbfff}
:root[data-theme="dark"] .review-writing small{color:#a8b4cc}
:root[data-theme="dark"] .review-reminder{background:var(--ui-wash,#12204a);color:#9dbfff}
:root[data-theme="dark"] .leader-board{border:1px solid #24375f;background:#0a1022}
:root[data-theme="dark"] .leader-board-head svg{color:#9dbfff}
:root[data-theme="dark"] .leader-row{border-bottom:1px solid #24375f}
:root[data-theme="dark"] .leader-row.is-you{background:var(--ui-wash,#12204a)}
:root[data-theme="dark"] .leader-rank{color:#a8b4cc}
:root[data-theme="dark"] .leader-list>.leader-row:first-child .leader-rank{color:#9dbfff}
:root[data-theme="dark"] .leader-avatar{background:var(--ui-wash,#12204a);border:1px solid #24375f}
:root[data-theme="dark"] .leader-person small{color:#a8b4cc}
:root[data-theme="dark"] .leader-points strong{color:#9dbfff}
:root[data-theme="dark"] .leader-points span{color:#a8b4cc}
:root[data-theme="dark"] .leader-guide{border:1px solid #24375f;background:#0a1022}
:root[data-theme="dark"] .leader-rule{border-bottom:1px solid #24375f}
:root[data-theme="dark"] .leader-rule strong{color:#9dbfff}
:root[data-theme="dark"] .leader-guide>p{color:#a8b4cc}
:root[data-theme="dark"] .leader-your-place{border-top:2px solid #24375f}
:root[data-theme="dark"] .member-remove{color:#ffb0be!important;border-color:#24375f!important}
:root[data-theme="dark"] .member-access-note{color:#a8b4cc}
/* collection */
:root[data-theme="dark"] .study-card{border:1px solid #24375f;background:#0a1022}
:root[data-theme="dark"] .study-card:hover{border-color:#24375f}
:root[data-theme="dark"] .study-card-image{background:var(--ui-wash,#12204a);border-bottom:1px solid #24375f}
:root[data-theme="dark"] .study-card-meta{color:#a8b4cc}
:root[data-theme="dark"] .study-kind{background:var(--ui-wash,#12204a);color:#9dbfff;border:1px solid #24375f}
:root[data-theme="dark"] .study-card-body>p{color:#a8b4cc}
:root[data-theme="dark"] .study-market{color:#a8b4cc}
:root[data-theme="dark"] .study-card-foot{border-top:1px solid #24375f;color:#a8b4cc}
:root[data-theme="dark"] .study-card-foot>svg{color:#9dbfff}
:root[data-theme="dark"] .study-no-image{background:var(--ui-wash,#12204a);color:#a8b4cc}
:root[data-theme="dark"] .study-no-image svg{color:#9dbfff}
:root[data-theme="dark"] .study-empty{border:1px dashed #24375f;background:#0a1022}
:root[data-theme="dark"] .study-full-image{background:var(--ui-wash,#12204a)}
:root[data-theme="dark"] .study-private-notes{border-top:1px solid #24375f}
:root[data-theme="dark"] .study-private-notes summary{color:#9dbfff}
:root[data-theme="dark"] .study-share-panel>p{color:#a8b4cc}
:root[data-theme="dark"] .study-subtle{color:#a8b4cc}
:root[data-theme="dark"] .study-preview-card{border:1px solid #24375f;background:#0a1022}
:root[data-theme="dark"] .study-detail{border:1px solid #24375f;background:#0a1022}
:root[data-theme="dark"] .study-journal-link{border:1px solid #24375f;background:var(--ui-wash,#12204a);color:#9dbfff}
:root[data-theme="dark"] #study-editor>.back-link{color:#a8b4cc}
:root[data-theme="dark"] .page>.back-link{color:#a8b4cc}
/* news */
:root[data-theme="dark"] .news-colour-key .bullish{color:#8ee0b7}
:root[data-theme="dark"] .news-colour-key .bearish{color:#ffb0be}
:root[data-theme="dark"] .news-colour-key .neutral{color:#f0cb88}
:root[data-theme="dark"] .news-settings>summary{border:1px solid #24375f;background:#0a1022;color:#9dbfff}
:root[data-theme="dark"] .news-settings[open] .news-controls{background:#0a1022;border:1px solid #24375f}
:root[data-theme="dark"] .news-controls select{border:1px solid #24375f;background:#0a1022;color:#9dbfff}
:root[data-theme="dark"] .news-source-line{color:#a8b4cc}
:root[data-theme="dark"] .news-source{color:#a8b4cc;background:var(--ui-wash,#12204a)}
:root[data-theme="dark"] .news-source.attention{background:#352c21;color:#f0cb88}
:root[data-theme="dark"] .news-source a,:root[data-theme="dark"] .news-method a,:root[data-theme="dark"] .news-daily-body a{color:#9dbfff}
:root[data-theme="dark"] .news-folder{color:#a8b4cc}
:root[data-theme="dark"] .news-folder.high{color:#ffb0be}
:root[data-theme="dark"] .news-folder.medium{color:#f0cb88}
:root[data-theme="dark"] .news-impact{color:#a8b4cc}
:root[data-theme="dark"] .news-folder-count{color:#edf3ff}
:root[data-theme="dark"] .news-muted{color:#a8b4cc}
:root[data-theme="dark"] .news-day{border:1px solid #24375f;background:#0a1022;color:#a8b4cc}
:root[data-theme="dark"] .news-day:hover{border-color:#24375f}
:root[data-theme="dark"] .news-day.selected{background:var(--ui-wash,#12204a)}
:root[data-theme="dark"] .news-day-top strong{color:#9dbfff}
:root[data-theme="dark"] .news-day em{color:#9dbfff}
:root[data-theme="dark"] .news-day-open{color:#9dbfff}
:root[data-theme="dark"] .news-section-heading .eyebrow{color:#9dbfff}
:root[data-theme="dark"] .news-section-heading>span{color:#a8b4cc}
:root[data-theme="dark"] .news-scenario-bar>div>span{color:#a8b4cc}
:root[data-theme="dark"] .news-scenario-options{background:var(--ui-wash,#12204a)}
:root[data-theme="dark"] .news-scenario-option{color:#a8b4cc}
:root[data-theme="dark"] .news-scenario-option[aria-pressed=true]{background:#0a1022;border-color:#24375f;color:#9dbfff}
:root[data-theme="dark"] .news-scenario-option:hover{color:#9dbfff}
:root[data-theme="dark"] .news-ticker{color:#9dbfff}
:root[data-theme="dark"] .news-market-symbol{background:#0a102206}
:root[data-theme="dark"] .news-market-foot{border-top:1px solid #2b3b5312;color:#a8b4cc}
:root[data-theme="dark"] .news-daily-details summary,:root[data-theme="dark"] .news-method summary{color:#9dbfff}
:root[data-theme="dark"] .news-daily-body{color:#a8b4cc;background:#0a1022;border:1px solid #24375f}
:root[data-theme="dark"] .news-daily-body h3{color:#9dbfff}
:root[data-theme="dark"] .news-event{border:1px solid #24375f;background:#0a1022}
:root[data-theme="dark"] .news-event-time small{color:#a8b4cc}
:root[data-theme="dark"] .news-expand{color:#9dbfff}
:root[data-theme="dark"] .news-event-body{border-top:1px solid #24375f}
:root[data-theme="dark"] .news-event-body p{color:#a8b4cc}
:root[data-theme="dark"] .news-values{background:#0a1022}
:root[data-theme="dark"] .news-values dt{color:#a8b4cc}
:root[data-theme="dark"] .news-scenarios caption{color:#a8b4cc}
:root[data-theme="dark"] .news-scenarios th,:root[data-theme="dark"] .news-scenarios td{border:1px solid #24375f}
:root[data-theme="dark"] .news-scenarios th{background:var(--ui-wash,#12204a);color:#9dbfff}
:root[data-theme="dark"] .news-watch{background:#0a1022}
:root[data-theme="dark"] .news-direction-row{background:#0a1022;color:#9dbfff}
:root[data-theme="dark"] .news-market-pair b.bullish{color:#8ee0b7;background:#19382f}
:root[data-theme="dark"] .news-market-pair b.bearish{color:#ffb0be;background:#382333}
:root[data-theme="dark"] .news-market-pair b.neutral{color:#a8b4cc;background:var(--ui-wash,#12204a)}
:root[data-theme="dark"] .news-empty{background:#0a1022;border:1px dashed #24375f;color:#a8b4cc}
:root[data-theme="dark"] .news-method{border-top:1px solid #24375f;color:#a8b4cc}
@media(max-width:700px){:root[data-theme="dark"] .news-scenario-option{border-color:#24375f;background:var(--ui-wash,#12204a)}
:root[data-theme="dark"] .news-scenario-option[aria-pressed=true]{background:var(--ui-wash,#12204a)}}
:root[data-theme="dark"] .news-market-card .news-help:hover{background:#0a102218}
:root[data-theme="dark"] .news-scenario-choice .news-help{color:#a8b4cc}
:root[data-theme="dark"] .news-help-dialog{border:1px solid #24375f;color:#9dbfff;background:#0a1022}
:root[data-theme="dark"] .news-help-top>span{color:#9dbfff}
:root[data-theme="dark"] .news-help-close{background:var(--ui-wash,#12204a);color:#9dbfff}
:root[data-theme="dark"] .news-help-dialog p{color:#a8b4cc}
:root[data-theme="dark"] .news-view-tabs{background:var(--ui-wash,#12204a);border:1px solid #24375f}
:root[data-theme="dark"] .news-view-tabs button{color:#a8b4cc}
:root[data-theme="dark"] .news-view-intro{color:#a8b4cc}
:root[data-theme="dark"] .news-focus-explanation>summary{color:#9dbfff}
:root[data-theme="dark"] .news-fx-overview>p{color:#a8b4cc}
:root[data-theme="dark"] .news-driver-label{color:#a8b4cc}
:root[data-theme="dark"] .news-fx-preview{color:#a8b4cc}
:root[data-theme="dark"] .fundamental-panel{border:1px solid #24375f;background:#0a1022}
:root[data-theme="dark"] .fundamental-head .eyebrow{color:#9dbfff}
:root[data-theme="dark"] .fundamental-intro{color:#a8b4cc}
:root[data-theme="dark"] .fundamental-tag{color:#9dbfff}
:root[data-theme="dark"] .fundamental-coverage{border:1px solid #24375f;background:#352c21;color:#f0cb88}
:root[data-theme="dark"] .fundamental-evidence>summary,:root[data-theme="dark"] .fundamental-method>summary{color:#9dbfff}
:root[data-theme="dark"] .fundamental-evidence>summary span{color:#a8b4cc}
:root[data-theme="dark"] .fundamental-method{border-top:1px solid #24375f}
:root[data-theme="dark"] .fundamental-method p,:root[data-theme="dark"] .fundamental-method li{color:#a8b4cc}
:root[data-theme="dark"] .fundamental-method a,:root[data-theme="dark"] .fundamental-article a{color:#9dbfff}
:root[data-theme="dark"] .fundamental-article{border:1px solid #24375f;background:#0a1022}
:root[data-theme="dark"] .fundamental-article small{color:#a8b4cc}
:root[data-theme="dark"] .fundamental-article p{color:#a8b4cc}
:root[data-theme="dark"] .fundamental-asof{color:#a8b4cc}
:root[data-theme="dark"] .fundamental-period{background:var(--ui-wash,#12204a);color:#9dbfff}
/* analyses */
:root[data-theme="dark"] .analysis-card{background:#0a1022;border:1px solid #24375f}
:root[data-theme="dark"] .analysis-card:hover{border-color:#24375f}
:root[data-theme="dark"] .analysis-cover{background:var(--ui-wash,#12204a)}
:root[data-theme="dark"] .analysis-written{background:var(--ui-wash,#12204a);color:#9dbfff}
:root[data-theme="dark"] .analysis-meta{color:#a8b4cc}
:root[data-theme="dark"] .analysis-meta>span:last-child{color:#9dbfff}
:root[data-theme="dark"] .analysis-card-body>p{color:#a8b4cc}
:root[data-theme="dark"] .analysis-card-foot{border-top:1px solid #24375f;color:#9dbfff}
:root[data-theme="dark"] .analysis-card-foot>svg{color:#9dbfff}
:root[data-theme="dark"] .analysis-empty{border:1px solid #24375f;background:#0a1022}
:root[data-theme="dark"] .analysis-empty>svg{color:#9dbfff}
:root[data-theme="dark"] .analysis-empty p{color:#a8b4cc}
:root[data-theme="dark"] .analysis-detail{background:#0a1022;border:1px solid #24375f}
:root[data-theme="dark"] .analysis-byline span{color:#a8b4cc}
:root[data-theme="dark"] .analysis-chart{border:1px solid #24375f;background:var(--ui-wash,#12204a)}
:root[data-theme="dark"] .analysis-detail figcaption a{color:#9dbfff}
:root[data-theme="dark"] .analysis-back{color:#9dbfff;border-top:1px solid #24375f}
:root[data-theme="dark"] .analysis-upload,:root[data-theme="dark"] .analysis-language{background:#0a1022;border:1px solid #24375f}
:root[data-theme="dark"] .analysis-upload p,:root[data-theme="dark"] .analysis-language>p{color:#a8b4cc}
:root[data-theme="dark"] .analysis-upload small{color:#a8b4cc}
:root[data-theme="dark"] #analysis-image-preview>.quiet-link{color:#ffb0be}
:root[data-theme="dark"] .analysis-language h2{color:#9dbfff}
:root[data-theme="dark"] .analysis-delete-row{border-top:1px solid #24375f}
:root[data-theme="dark"] .analysis-delete-row button{color:#ffb0be}
:root[data-theme="dark"] .analysis-community{border-top-color:#24375f}
:root[data-theme="dark"] .analysis-community-head p,:root[data-theme="dark"] .analysis-comment-main time{color:#a8b4cc}
:root[data-theme="dark"] .analysis-reactions button{background:#17243a;border-color:#24375f;color:#c9d5e8}
:root[data-theme="dark"] .analysis-reactions button.active{background:#193563;border-color:#78a7ff;color:#fff}
:root[data-theme="dark"] .analysis-community form{background:#101a2b;border-color:#24375f}
:root[data-theme="dark"] .analysis-comment{border-bottom-color:#24375f}
:root[data-theme="dark"] .analysis-comment-avatar{background:var(--ui-wash,#12204a);border-color:#41618c;color:#b5ceff}
:root[data-theme="dark"] .analysis-comment-kind.question{background:#193563;color:#b8d0ff}
:root[data-theme="dark"] .analysis-comment-kind.note{background:#1d392b;color:#b6e0c0}
:root[data-theme="dark"] .analysis-thread-empty{border-color:#24375f;color:#a8b4cc}

/* Auth artwork stays photographic; its logo keeps its official white plate. */
:root[data-theme="dark"] .auth-page{background:radial-gradient(ellipse at 15% 20%,#16274b 0,transparent 55%),var(--bg)}
:root[data-theme="dark"] .auth-card{background:#0a1022;box-shadow:0 24px 80px #0003}
:root[data-theme="dark"] .access-prompt{background:#0a1022;border-color:#2c3d58;color:#f4f7fc}
:root[data-theme="dark"] .access-prompt-member,:root[data-theme="dark"] .access-prompt-close{color:#a9bad1}
:root[data-theme="dark"] .auth-brand .logo{background:#fff;border-color:#fff}
/* The original logo and charts retain their actual pixels. */
:root[data-theme="dark"] .brand .logo,:root[data-theme="dark"] .auth-aside>.logo,:root[data-theme="dark"] .analysis-byline>img{background:#fff;border-radius:14px}
:root[data-theme="dark"] input,:root[data-theme="dark"] select,:root[data-theme="dark"] textarea{color:var(--ink);background-color:#111c2d;border-color:#24375f}
:root[data-theme="dark"] input::placeholder,:root[data-theme="dark"] textarea::placeholder{color:#91a4bf;opacity:1}
:root[data-theme="dark"] :is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid #82b3ff;outline-offset:4px}
:root[data-theme="dark"] option{background:#0a1022;color:#edf3ff}
:root[data-theme="dark"] input[type=checkbox],:root[data-theme="dark"] input[type=radio]{accent-color:#77a5ff}
:root[data-theme="dark"] .btn:not(.secondary),:root[data-theme="dark"] .journey-cta{color:#fff}
:root[data-theme="dark"] .news-market-card{--tone:#c9d6e9}
:root[data-theme="dark"] .news-market-card.bullish{--tone:#6be5b3}
:root[data-theme="dark"] .news-market-card.bearish{--tone:#ff9fae}
:root[data-theme="dark"] .news-market-card.neutral{--tone:#f0ca7d}
:root[data-theme="dark"] .news-help-dialog{background:#0a1022;color:#edf3ff;border-color:#24375f}
:root[data-theme="dark"] .news-help-dialog p{color:#a8b4cc}
:root[data-theme="dark"] #toast{background:#17273e;color:#edf3ff;border:1px solid #24375f}
:root[data-theme="dark"] #toast[data-kind=success]{background:#143a31;border-color:#3f8269}
.theme-toggle{border:1px solid #d9e4f4;background:#f2f6ff;color:#355f97;flex:none}
.admin-refresh{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:0 13px;border:1px solid #c9dbf6;border-radius:11px;background:#edf4ff;color:#1d58b7;font:inherit;font-size:.8125rem;font-weight:700;cursor:pointer;white-space:nowrap}.admin-refresh svg{width:17px;height:17px}.admin-refresh:hover{background:#dfebff;border-color:#9dbced}.admin-refresh:disabled{cursor:wait;opacity:.72}.admin-refresh.is-refreshing svg{animation:admin-refresh-spin .8s linear infinite}@keyframes admin-refresh-spin{to{transform:rotate(360deg)}}
:root[data-theme="dark"] .theme-toggle{background:#213451;border-color:#3b5379;color:#c3d8ff}
:root[data-theme="dark"] .admin-refresh{background:#182d4b;border-color:#35547e;color:#c4d9ff}:root[data-theme="dark"] .admin-refresh:hover{background:#203b60}
.theme-icons{display:block;position:relative;width:21px;height:21px}.theme-icons svg{position:absolute;inset:0;width:21px;height:21px;transition:opacity 180ms ease,transform 220ms ease}.theme-moon{opacity:0;transform:rotate(-35deg) scale(.7)}
:root[data-theme="dark"] .theme-moon{opacity:1;transform:rotate(0) scale(1)}
:root[data-theme="dark"] .theme-sun{opacity:0;transform:rotate(35deg) scale(.7)}
.auth-lang{display:flex;justify-content:flex-end;align-items:center;gap:10px}
@media(max-width:760px){.top-right{gap:8px}.topbar{gap:8px}.topbar>.crumb{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-right .language select{max-width:102px}.theme-toggle{width:44px;height:44px}.admin-refresh{width:44px;height:44px;padding:0;justify-content:center}.admin-refresh span{display:none}}
@media(prefers-reduced-motion:reduce){.admin-refresh.is-refreshing svg{animation:none}}
@media(max-width:420px){.topbar>.crumb{display:none}.top-right{margin-left:auto}.topbar{padding-left:12px;padding-right:12px}}
@media(prefers-reduced-motion:reduce){.theme-icons svg{transition:none}}
