/* BitNook cross-page visual pass · 2026-10-27.
   Palette-neutral chrome; preserve BitCraft levels, rarity, crafting tiers and status.
   Loaded last intentionally to catch later module-specific dark surfaces. */

/* Consistent typography. Quicksand for UI; mono remains the small uppercase accent. */
:root{
 --font-ui:"Quicksand",Inter,ui-sans-serif,system-ui,sans-serif;
 --font-editorial:"Quicksand",Inter,ui-sans-serif,system-ui,sans-serif;
 --font-mono:ui-monospace,"SFMono-Regular",Consolas,monospace;
 --bn-reading-size:13px;
}
body,button,input,select,textarea{font-family:var(--font-ui)!important}
:root .page-title{font-size:clamp(26px,2.15vw,33px);font-weight:750;letter-spacing:-.035em}
:root .page-description{font-size:13px;line-height:1.65;max-width:74ch}
:root .bp-note,:root .bn-rich-foot,:root .bn-data-caption,
:root .bn-guide-note,:root .bn-stream-note,:root .bn-studio-preview-note{font-size:12px;line-height:1.55}
:root .bp-row-label span,:root .bn-theme-menu-copy small,:root .bn-shelf-copy small,
:root .bn-roster-section-title small,:root .bn-insight-explain,:root .bn-roster-controls label{font-size:11px;line-height:1.45}
:root .bp-row-label b,:root .bn-theme-menu-copy strong,
:root .bn-studio-type-description,
:root .bn-vital-name,:root .bn-vital small{font-size:12px}
:root .upper,:root .smallcaps,:root .eyebrow,:root .bn-shelf-ribbon>div:first-child span{
 font-family:var(--font-mono)!important;letter-spacing:.075em;font-size:10px;font-weight:750
}
:root .bn-rich-heading h2,:root .bn-studio-toolbar h2,:root .bn-vitals-card .mini-hdr,
:root .bn-inventory-summary .mini-hdr,:root .bn-roster-section-title h2{font-size:clamp(17px,1.5vw,21px)}
:root .bn-shelf-ribbon>div:first-child strong{font-size:14px}
:root .bn-roster-matrix table{font-size:11px}
:root .bn-roster-matrix thead th button,:root .bn-insight-table thead th{font-size:11px}
:root .bn-matrix-person small,:root .bn-roster-metrics small{font-size:10px}
:root .bn-matrix-name{font-size:12px}
:root .bn-insight-table{font-size:12px}
:root .bn-studio-preview.is-small{--bn-reading-size:11px}
:root .bn-theme-popover{font-size:12px}
@media(min-width:1000px){
 :root{--bn-reading-size:14px}
 :root .bp-card,:root .card,:root .tool-row,:root .bn-guide-item,
 :root .bn-project-group,:root .bn-project-detail,
 :root .bn-citizen-toolbar,:root .bn-roster-page{font-size:14px}
 :root .bp-note,:root .bn-rich-foot,:root .bn-data-caption,:root .bn-guide-note,
 :root .bn-studio-preview-note,:root .bn-stream-note{font-size:13px}
 :root .bn-guide-detail-row,:root .bn-project-extra,:root .bn-inventory-row,
 :root .bn-quick-info small,:root .bn-craft-item small{font-size:12px}
 :root .bn-roster-matrix table{font-size:12px}
 :root .bn-roster-matrix thead th button,:root .bn-insight-table thead th{font-size:11px}
 :root .bn-insight-table{font-size:12px}
 :root .bn-shelf-tabs button{font-size:11px}
}
@media(max-width:599px){
 :root .page-title{font-size:27px}
 :root .page-description{font-size:12px}
 :root .bn-roster-matrix table{font-size:11px}
 :root .bn-shelf-tabs button{min-height:32px}
}
@media(prefers-reduced-motion:reduce){:root *{scroll-behavior:auto!important}}

/* The charcoal UI should be neutral, not washed with green, irrespective
   of the player's chosen accent color. Meaningful data colors are untouched. */
:root[data-bn-mode="dark"][data-bn-theme]{
 --bn-page:#151617;--bn-panel:#1e2021;--bn-panel-raised:#282a2b;
 --bn-bar:#181a1b;--bn-border:#474748;
 --page:#151617;--panel:#1e2021;--panel2:#282a2b;--border:#474748;
 --text:#f1eee8;--muted:#b6b1ad;--subtle:#928d89;
 --bn-text:#f1eee8;--bn-muted:#b6b1ad;
}
:root[data-bn-mode="dark"] .bn-theme-popover,
:root[data-bn-mode="dark"] .modal,
:root[data-bn-mode="dark"] .bn-xp-notify-dialog,
:root[data-bn-mode="dark"] .bn-xp-alert-launch,
:root[data-bn-mode="dark"] .bn-xp-settings-fold,
:root[data-bn-mode="dark"] .bn-studio-editor{
 background:linear-gradient(145deg,#29292a,#1d1e20 77%)!important;
 border-color:#524f4b!important;
}
:root[data-bn-mode="dark"] .bn-theme-menu-choice,
:root[data-bn-mode="dark"] .bn-xp-notify-event,
:root[data-bn-mode="dark"] .bn-xp-notify-history article,
:root[data-bn-mode="dark"] .bn-xp-notify-character select,
:root[data-bn-mode="dark"] .bn-xp-notify-event-foot select,
:root[data-bn-mode="dark"] .bn-guide-detail-row{
 background:#282829!important;border-color:#51504d!important
}
:root[data-bn-mode="dark"] .bn-vitals-card,
:root[data-bn-mode="dark"] .bn-vital,
:root[data-bn-mode="dark"] .bn-quick-wins-card,
:root[data-bn-mode="dark"] .bn-inv-widget,
:root[data-bn-mode="dark"] .bn-outfit-row,
:root[data-bn-mode="dark"] .bn-inventory-row,
:root[data-bn-mode="dark"] .bn-storage-category,
:root[data-bn-mode="dark"] .bn-storage-container,
:root[data-bn-mode="dark"] .bn-passive-item{
 background:#212324!important;border-color:#4e4a46!important
}
/* Glass used at navigation, popover and compact controls, not over data tables. */
:root[data-bn-mode] :is(.bn-theme-popover,.bn-shelf-ribbon,.bn-shelf-card,.bn-settings-mode-card){
 backdrop-filter:blur(19px) saturate(123%);
 -webkit-backdrop-filter:blur(19px) saturate(123%);
}
:root[data-bn-mode] .bn-theme-popover{
 box-shadow:0 16px 45px #251c3530,inset 0 1px 0 #ffffff25;
}

/* Soft porcelain / warm lavender light mode. Neutral panels, restrained color.
   This intentionally replaces the older cool mint-white light scheme. */
:root[data-bn-mode="light"]{
 --bn-page:#f1efec!important;
 --bn-panel:#f9f7f4!important;
 --bn-panel-raised:#eeece9!important;
 --bn-bar:#e7e5e2!important;
 --bn-border:#dad6d1!important;
 --page:#f1efec!important;--panel:#f9f7f4!important;--panel2:#eeece9!important;
 --border:#dad6d1!important;--border-soft:#e6e2dc!important;
 --text:#343335!important;--muted:#6b6766!important;--subtle:#817d7a!important;
 --bn-text:#343335!important;--bn-muted:#6b6766!important;
 --gold-soft:#c9a8cd25;
}
:root[data-bn-mode="light"] body{
 background:radial-gradient(ellipse at 8% 5%,#e9e1ed,transparent 43%),
 radial-gradient(ellipse at 100% 76%,#eee8ec,transparent 45%),#f1edf2!important
}
:root[data-bn-mode="light"] :is(.overall,.phone-outer,.phone,.scroll,.statusbar,#app-scroll){
 background-color:var(--bn-page)!important;
 color:var(--text)!important;
}
:root[data-bn-mode="light"] .scroll{
 background:radial-gradient(circle at 5% 0%,#e9e0ed 0,transparent 38%),
 radial-gradient(circle at 93% 86%,#eee5ed 0,transparent 42%),var(--bn-page)!important
}
:root[data-bn-mode="light"] :is(.app-header,.bottom){
 background:color-mix(in srgb,#f7f2f8 84%,transparent)!important;
 border-color:#dcd3df!important
}
:root[data-bn-mode="light"] .bn-desktop-sidebar,
:root[data-bn-mode="light"] .bn-theme-popover,
:root[data-bn-mode="light"] .modal,
:root[data-bn-mode="light"] .bn-xp-notify-dialog{
 background:linear-gradient(150deg,#faf6fbed,#f0eaf4f4)!important;
 color:var(--text)!important;border-color:var(--bn-border)!important;
}
:root[data-bn-mode="light"] .bn-theme-popover{
 background:linear-gradient(146deg,#fbf7fbe8,#f1eaf4f0)!important
}
:root[data-bn-mode="light"] :is(
 .bp-card,.card,.section-card,.hero,.daily-card,.progress-card,
 .streak-strip,.streak-card,.widget,.bn-streak-theme,.bn-vitals-card,
 .bn-inventory-summary,.bn-inv-widget,.bn-quick-wins-card,
 .bn-rich-passives,.bn-rich-session,.bn-xp-main,
 .bn-skill-card,.bn-studio-editor,.bn-stream-studio,.bn-ios-install,
 .bn-citizen-parity .bp-card,.bn-roster-card,.bn-roster-compare-card,
 .bn-guide-page .bp-card,.bn-guide-item,.bn-checkin-hero,
 .bn-checkin-calendar,.bn-retro-panel,.retro-panel,
 .bn-shelf-card,.bn-shelf-ribbon,.bn-settings-mode-card){
 background:linear-gradient(145deg,#faf7faf5,#f4f0f6f5)!important;
 border-color:#dfd7e2!important;
 color:var(--text)!important;
 box-shadow:0 4px 24px #4c35550b,inset 0 1px 0 #ffffff90;
}
/* Keep light mode pleasantly layered, not all pure white. */
:root[data-bn-mode="light"] :is(.hero,.daily-card,.progress-card,.widget.bn-streak-theme,.bn-skill-card){
 background:radial-gradient(circle at 94% 0%,#e9deef6a,transparent 72%),#f8f5f9!important;
}
:root[data-bn-mode="light"] :is(
 .streak-strip .streak-details,.streak-strip .streak-actions,
 .bn-vitals-card .mini-hdr,.bn-xp-main .bn-xp-heading-copy,
 .bn-xp-main .bn-xp-goal-surface,.bn-daily-card .daily-title,
 .bn-roster-page-head,.bn-studio-editor .bn-studio-toolbar){
 color:var(--text)!important;
}
/* Previously dark nested cards: vitals, passive jobs, inventory, widgets and modal bodies. */
:root[data-bn-mode="light"] :is(
 .bn-vital,.bn-vitals-grid .bn-vital,
 .bn-quick-row,.bn-dash-item,.bn-inventory-tiles>div,.bn-inventory-row,
 .bn-house-result,.bn-outfit-row,.bn-storage-category,.bn-storage-container,
 .bn-dash-container,.bn-inv-tabs,.bn-inv-widget .bn-inv-tabs,
 .bn-passive-item,.bn-xp-item-image,.bn-session-grid>div,.bn-xp-goal-surface,
 .bn-xp-history>div,.bn-rich-skill,.bn-xp-alert-launch,
 .bn-guide-detail-row,.bn-guide-art,.bn-guide-art img,
 .bn-roster-compare-empty,.bn-roster-empty,.bn-roster-facts>div,
 .bn-roster-compare-card,.bn-roster-metrics>span,.bn-insight-empty,
 .bn-citizen-toolbar,.bn-studio-size-switch,.bn-studio-type-list button,
 .bn-studio-skills>div,.bn-studio-blank,.bn-studio-craft-record,
 .bn-studio-progress,.bn-stream-row,.bn-studio-widget-foot,
 .bn-ios-size-shortcuts button,.bn-theme-menu-choice,.bn-mode-control,
 .bn-mode-switch,.bn-theme-choice,.bp-result,.bp-person,.tool-row,
 .bp-selection,.bp-gradient,.bp-search,.bn-roster-pagination,
 .bn-project-complete-stats>div,.bn-project-material-card,
 .bn-project-group,.bn-project-source,.bn-project-tier-needs,
 .bn-xp-notify-event,.bn-xp-notify-history article,
 .bn-xp-notify-event-icon,.bn-xp-notify-header button,
 .bn-xp-notify-character select,.bn-xp-notify-event-foot select,
 .bn-xp-notify-event button,.bn-xp-alert-toast,.bn-checkin-day,
 .bn-checkin-calendar .checkin-day,.bn-checkin-continue,
 .bn-roster-matrix-scroll,.bn-insight-table-scroll){
 background:#f1ebf2!important;
 border-color:#d9d0df!important;
 color:var(--text)!important;
}
/* Intentional second surface for statistics and controls. */
:root[data-bn-mode="light"] :is(.bn-vital,.bn-quick-row,.bn-passive-item,.bn-inventory-row,
 .bn-guide-detail-row,.bn-studio-type-list button,.bn-session-grid>div,
 .bn-xp-notify-event,.bn-roster-metrics>span){
 background:#f4f0f5!important;
}
/* Dark-mode streak and ring center should not be black in a light layout. */
:root[data-bn-mode="light"] .streak-strip,
:root[data-bn-mode="light"] .streak-strip .streak-week,
:root[data-bn-mode="light"] .streak-strip .streak-actions,
:root[data-bn-mode="light"] .streak-strip .streak-details{
 color:var(--text)!important;border-color:#dfd7e2!important
}
:root[data-bn-mode="light"] .streak-strip .streak-number,
:root[data-bn-mode="light"] .streak-strip .streak-details strong,
:root[data-bn-mode="light"] .streak-strip .streak-week-head b,
:root[data-bn-mode="light"] .bn-streak-hero-total,
:root[data-bn-mode="light"] .bn-daily-card .daily-title{
 color:#302936!important;
}
:root[data-bn-mode="light"] .streak-strip :is(small,.streak-sub,.streak-week-head,
 .streak-week,.week-day,.streak-info,.streak-foot,.streak-checkins){
 color:#6c6173!important;
}
:root[data-bn-mode="light"] .streak-strip .streak-week{border-top-color:#ddd3e0!important}
:root[data-bn-mode="light"] .bn-daily-card .bn-daily-ring:before,
:root[data-bn-mode="light"] .bn-daily-ring:before{background:#faf6f9!important}
:root[data-bn-mode="light"] .bn-daily-ring{
 box-shadow:0 0 0 1px #d9cfe0!important
}
:root[data-bn-mode="light"] .bn-daily-ring :is(strong,b,.ring-percent,.bn-daily-ring-value,.bn-daily-ring-content strong){
 color:#2f2639!important
}
/* Text contrast: distinguish major values from descriptive microcopy. */
:root[data-bn-mode="light"] :is(
 .hero-name,.hero-copy .hero-name,.prog-title,.progress-card .prog-title,
 .progress-card .prog-sub,.bn-daily-card .daily-title,
 .bn-daily-card .bn-stat-main,.bn-daily-card .bn-stat-main strong,
 .bn-daily-card .bn-daily-ring-content strong,
 .bn-vital b,.bn-vital-name,.bn-vital small,
 .bn-rich-heading h2,.bn-quick-info b,.bn-roster-section-title h2,
 .bn-guide-detail-row b,.bn-roster-matrix .bn-matrix-name,
 .bn-studio-toolbar h2,.bn-studio-skill,.bn-studio-stat-large,
 .bn-studio-stat-large small,.bn-studio-skills b,
 .bn-xp-heading-copy h2,.bn-xp-heading-copy .upper,
 .bn-xp-goal-surface strong,.bn-stream-title strong,
 .bn-streak-week-head b,.bn-streak-week .week-day,
 .bn-checkin-calendar .checkin-day,.bn-checkin-hero .bn-streak-hero-total,
 .bn-theme-menu-head h2,.bn-xp-notify-header h2,.bn-xp-notify-event b,
 .bn-insight-panel h3,.bn-insight-table tbody th,
 .bn-roster-strongest,.bn-roster-facts strong,.bn-analytics-level-items>span){
 color:#352c3d!important;
}
:root[data-bn-mode="light"] :is(
 .hero-sub,.ranktxt,.prog-sub,.progress-foot,.card-hint,.subtxt,
 .bn-daily-card .bn-daily-body small,.bn-daily-card .bn-daily-footer,
 .bn-streak-week-head button,.bn-vital small,.bn-vital-name,
 .bn-data-caption,.bn-data-foot,.bn-project-extra,
 .bn-inv-widget .bn-inv-label,.bn-quick-info small,
 .bn-xp-main-foot,.bn-xp-craft-name,.bn-rich-foot,
 .bn-studio-stat>small,.bn-studio-blank small,.bn-studio-type-description,
 .bn-studio-widget-label span,.bn-studio-preview-note,
 .bn-stream-note,.bn-stream-title small,.bn-ios-install p,
 .bn-guide-detail-row small,.bn-roster-section-title .upper,
 .bn-roster-facts span,.bn-roster-metrics small,.bn-insight-explain,
 .bn-insight-legend,.bn-roster-controls label,
 .bn-xp-notify-event p,.bn-xp-notify-event small,
 .bn-xp-notify-dialog p,.bn-xp-notify-event-foot label,
 .bn-shelf-note,.bn-shelf-copy small,.bn-roster-note){
 color:#6c6074!important;
}
/* Special-purpose colored accents remain meaningful but readable. */
:root[data-bn-mode="light"] .bn-daily-card .bn-stat-main strong{color:#785b94!important}
:root[data-bn-mode="light"] .bn-xp-live-pill.is-working{
 background:#e9dfeb!important;border-color:#cbb7d0!important;color:#665078!important
}
:root[data-bn-mode="light"] .bn-daily-card .bn-live-mark,
:root[data-bn-mode="light"] .bn-streak-week-head button{color:#84679b!important}
:root[data-bn-mode="light"] .bn-quick-row .bn-quick-tier{background:#f2edf4!important}
:root[data-bn-mode="light"] .bn-xp-main-track,
:root[data-bn-mode="light"] .track,
:root[data-bn-mode="light"] .bn-vital-track,
:root[data-bn-mode="light"] .bn-studio-progress,
:root[data-bn-mode="light"] .bn-daily-card .bn-daily-track{
 background:#e2dce6!important;border-color:#d8d0dc!important;
}
/* Progress bars retain their actual percentage and game-defined tier color. */
:root[data-bn-mode="light"] .bn-vital-track .fill{background:linear-gradient(90deg,#c8aa7a,#a890bf)!important}
/* Restore light text where the component itself has deliberately strong game color. */
:root[data-bn-mode="light"] :is(.bn-project-tier-needs button.active,.primary,.bn-roster-rank-pill){
 text-shadow:none
}
/* Alert configuration: it is a separate DOM overlay, not the usual app modal. */
:root[data-bn-mode="light"] .bn-xp-notify-overlay{
 background:#39304274!important;backdrop-filter:blur(8px)
}
:root[data-bn-mode="light"] .bn-xp-notify-dialog{
 box-shadow:0 18px 65px #3e304b33!important
}
:root[data-bn-mode="light"] .bn-xp-notify-dialog :is(
 .bn-xp-notify-header,.bn-xp-notify-toolbar,.bn-xp-notify-footer,
 .bn-xp-notify-character,.bn-xp-notify-history,.bn-xp-notify-events){
 color:var(--text)!important;border-color:#d9cedc!important
}
:root[data-bn-mode="light"] .bn-xp-notify-dialog :is(
 strong,h2,h3,label,.bn-xp-notify-event-name,.bn-xp-notify-event-title,
 .bn-xp-notify-header strong){
 color:#332a3c!important
}
:root[data-bn-mode="light"] .bn-xp-notify-dialog :is(
 small,.bn-xp-notify-event-meta,.bn-xp-notify-history small){
 color:#6d6074!important
}
/* Forms, dropdowns, and selected options no longer reintroduce a dark center. */
:root[data-bn-mode="light"] :is(
 input:not([type="range"]):not([type="checkbox"]):not([type="radio"]),
 textarea,select,.bp-field,.bp-search input,.bn-xp-controls input,
 .bn-roster-controls input,.bn-roster-controls select,
 .bn-region-select,.bn-guide-filters select,.bn-stream-controls select,
 .bn-xp-sound-controls select,.bn-inventory-controls select){
 background:#fbf8fb!important;border-color:#d8cfde!important;color:#302936!important;
}
:root[data-bn-mode="light"] :is(input,textarea)::placeholder{color:#8b7e91;opacity:1}
:root[data-bn-mode="light"] :is(.bp-suggest,.bp-suggest .bp-note,
 .bp-load,.bn-rich-empty,.bn-inventory-warning,.notice,.bn-checkin-note){
 background:#eee6ef!important;border-color:#d8ccdc!important;color:#64546a!important
}
:root[data-bn-mode="light"] :is(.bp-quiet,.bn-studio-size-switch button.active,
 .bn-studio-type-list button.active,.bn-theme-menu-choice.active,
 .bn-mode-switch button.active,.bn-inv-tabs button.active){
 background:#e5d8e9!important;border-color:#c8b8cf!important;color:#4b395a!important
}
:root[data-bn-mode="light"] .bn-theme-menu-copy small{color:#6e6175!important}
/* Guide and reference content: no illegible white-on-cream, no mint panels. */
:root[data-bn-mode="light"] :is(
 .bn-guide-search,.bn-guide-filters,.bn-guide-item,.bn-guide-detail-row,
 .bn-guide-empty,.bn-citizen-toolbar,.bn-roster-controls,.bn-roster-page-head,
 .bn-compendium-detail,.bn-eq-variant-chip,.bn-gear-upgrade-row,
 .bn-market-check,.bn-biome-card,.bn-project-tier-needs,
 .bn-calc-plan-summary,.bn-calc-route,.bn-calc-clean-material,
 .bn-storage-summary,.bn-storage-tabs,.bn-inventory-panel,
 .bn-inv-tabs,.bn-inv-item,.bn-outfit-row,.bn-storage-summary-icon){
 background-color:#f3eff4!important;border-color:#ded4e0!important;
}
/* Skill/rarity colors are intentionally not replaced. */
:root[data-bn-mode="light"] .bn-insight-graph-scroll{
 background:#f6f1f7!important;border-color:#dfd6e0!important
}
:root[data-bn-mode="light"] .bn-insight-graph-scroll svg text{fill:#65576c}
:root[data-bn-mode="light"] :is(.bn-insight-table thead th,.bn-roster-matrix thead th,
 .bn-citizen-table thead,.bn-roster-matrix th.bn-matrix-person){
 background:#ece4ee!important;color:#4a3e50!important;border-color:#dcd1e0!important
}
:root[data-bn-mode="light"] .bn-roster-matrix tbody th.bn-matrix-person{
 background:#f5f0f6!important
}
:root[data-bn-mode="light"] .bn-roster-matrix .bn-level-none,
:root[data-bn-mode="light"] .bn-insight-table .bn-level-none{
 background:#f1ecf3!important;color:#746a77!important
}
/* Other non-level badges, no arbitrary green tint. */
:root[data-bn-mode="light"] .bn-guide-art,.bn-guide-art img{background:#eee7f1!important}
:root[data-bn-mode="light"] .bn-checkin-calendar .checkin-day.is-checked{
 background:#e5d6ea!important;border-color:#a887b7!important;color:#5b426c!important
}
:root[data-bn-mode="light"] .bn-checkin-hero .checkin-btn{
 background:#e7daec!important;border-color:#c9b3d0!important;color:#594363!important
}
:root[data-bn-mode="light"] .bn-checkin-hero .streak-visual{
 background:#eadfee!important;color:#74528b!important;border-color:#cdb7d6!important
}
:root[data-bn-mode="light"] .bn-checkin-hero .daily-demo{
 background:#f2eaf3!important;color:#705f75!important;border-color:#ddd0e1!important
}
:root[data-bn-mode="light"] .bn-checkin-calendar .checkin-day,
:root[data-bn-mode="light"] .bn-checkin-calendar .backfill-legend{
 color:#5e5467!important
}
@media(prefers-reduced-transparency:reduce){
 :root[data-bn-mode] .bn-theme-popover,:root[data-bn-mode] .bn-shelf-ribbon,
 :root[data-bn-mode] .bn-shelf-card,:root[data-bn-mode] .bn-settings-mode-card{
 backdrop-filter:none!important;-webkit-backdrop-filter:none!important
 }
}


/* Detail-page audit: equipment, gear, materials, projects, calculator,
   check-ins, bio guide, citizens, widgets and all popover types. */
:root[data-bn-mode="light"] :is(
 .bn-project-ring:before,.bn-project-summary-ring:before,.daily-v5 .bp-xp-ring:before,
 .widget .bn-widget-ring:before,.bn-widget-ring:before){
 background:#f8f3f9!important
}
:root[data-bn-mode="light"] :is(.bn-project-ring,.bn-project-summary-ring,
 .widget .bn-widget-ring,.daily-v5 .bp-xp-ring){
 box-shadow:0 0 0 1px #d9cedd!important
}
:root[data-bn-mode="light"] :is(.bn-project-ring span,.bn-project-summary-ring span,
 .widget .bn-widget-ring strong,.widget .bn-widget-ring small,
 .bn-daily-card .bn-daily-ring-content small,
 .bn-daily-card .bn-stat-label,.bn-daily-card .bn-stat-caption,
 .bn-daily-card .bn-stat-amount,.bn-daily-card .bn-daily-meta,
 .bn-daily-card .bn-daily-meta strong,.bn-daily-card .bn-daily-state,
 .bn-project-summary>div>b,.bn-project-summary>div>span){
 color:#5d5067!important
}
:root[data-bn-mode="light"] :is(
 .widget-size-panel,.widget-option,.widget-preview-card,.widget-preview-item,
 .widget-kind,.widget-tabs button,.bn-widget-skill,.bn-widget-xp-substats>div,
 .bn-widget-profession,.bn-widget-daily-stats,.bn-craft-ico,
 .bn-skill-card .bn-skill-tool,.bn-skill-tool-row,
 .bn-level-legend,.bn-equip-row,.bn-equip-img,.bn-equip-family,
 .bn-equip-family-variants .bn-equip-row,.bn-equip-compare,.bn-equip-compare-table,
 .bn-eq-detail-properties>div,.bn-eq-compare-item,.bn-eq-family-insight-grid,
 .bn-eq-detail-photo,.bn-eq-recipe,.bn-eq-ingredients>div,.bn-eq-market-metrics>div,
 .bn-eq-market-best,.bn-market-summary>div,.bn-market-variant,
 .bn-market-listing>div,.bn-skill-detail-overview>div,.bn-skill-detail-tool,
 .bn-calc-mode-types button,.bn-calc-extra-metrics>div,.bn-calc-gather,
 .bn-calc-plan-summary,.bn-calc-route,.bn-calc-clean-material,
 .bn-project-live,.bn-project-material,.bn-project-guide-progress,
 .bn-project-guide-recipe,.bn-project-result,.bn-project-complete-tier,
 .bn-project-resource-line,.bn-project-detail-stats>span,
 .bp-pt-group,.bp-pt-stations,.bp-pt-summary,.bp-pt-field-grid,
 .bp-pt-actions,.bp-welcome,.bp-onboard,.bp-nav-config,.bp-gear-set,
 .bn-biome-card,.bn-biome-select,.bn-inventory-tags span,
 .bn-storage-summary,.bn-storage-container,.bn-outfit-row){
 background:#f4eff6!important;border-color:#dcd3e0!important;color:#362c3b!important
}
:root[data-bn-mode="light"] :is(
 .bn-equip-main,.bn-project-material,.bn-project-resource-main,
 .bn-calc-option,.bn-eq-compare-table td,.bn-market-listing,
 .bn-eq-detail-close,.bn-modal-close,.bn-roster-overview,
 .bn-roster-person,.bn-roster-total b,.bn-roster-professions,
 .bn-project-group-head h3,.bn-project-guide-recipe b,
 .bp-pt-summary strong,.bn-skill-detail-overview strong,
 .bn-eq-detail-heading,.bn-eq-compare-warning,.bn-roster-bar span){
 color:#352d3c!important
}
:root[data-bn-mode="light"] :is(
 .bn-eq-family-legend,.bn-eq-compare-warning,.bn-project-resource-line small,
 .bn-roster-total-xp,.bn-roster-total small,.bn-roster-professions>small,
 .bn-eq-detail-properties small,.bn-project-item small,
 .bp-pt-group small,.bp-pt-station small,.bn-widget-xp-meta,
 .bn-widget-daily-stats small,.bn-widget-footer,
 .bn-widget-profession-info,.bn-widget-xp-foot,.bn-skill-card .bn-skill-rank,
 .bn-skill-card .bn-skill-foot,.bn-gear-upgrade-row small){
 color:#6f6175!important
}
:root[data-bn-mode="light"] .bn-widget-ring strong{color:#382b40!important}
:root[data-bn-mode="light"] .bn-widget-ring small{color:#756381!important}
:root[data-bn-mode="light"] .bn-studio-preview{
 background:linear-gradient(135deg,#f8f3f9,#efe8f1)!important;
 border-color:#d9cfdf!important;
 box-shadow:0 8px 25px #48304f16!important
}
:root[data-bn-mode="light"] .bn-studio-widget-label,
:root[data-bn-mode="light"] .bn-studio-quickstats,
:root[data-bn-mode="light"] .bn-studio-craft-name{color:#5a4770!important}
:root[data-bn-mode="light"] .bn-checkin-calendar{
 background:linear-gradient(145deg,#f8f4f9,#f2eaf4)!important;
}
:root[data-bn-mode="light"] .bn-checkin-calendar .checkin-day:hover{
 background:#ebdfef!important;border-color:#ae91be!important
}
:root[data-bn-mode="light"] .bn-checkin-hero .week-day i{
 background:#eee5f1!important;border-color:#cfc3d5!important;color:#6a5b73!important
}
:root[data-bn-mode="light"] .bn-checkin-hero .week-day.on i{
 background:#d9c2e2!important;border-color:#a98bbd!important;color:#4f365a!important
}
:root[data-bn-mode="light"] .bn-xp-settings-fold,
:root[data-bn-mode="light"] .bn-xp-settings-body,
:root[data-bn-mode="light"] .bn-xp-sound-controls,
:root[data-bn-mode="light"] .bn-xp-sound-controls label{
 background:transparent!important;color:#54465e!important;border-color:#d9d0df!important
}
/* Counters and navigation aren't part of an item rarity color scale. */
:root[data-bn-mode="light"] .bn-daily-refresh,
:root[data-bn-mode="light"] .bn-xp-controls button,
:root[data-bn-mode="light"] .bn-region-select,
:root[data-bn-mode="light"] .bn-refresh,
:root[data-bn-mode="light"] .bn-studio-size-switch button.active,
:root[data-bn-mode="light"] .bn-theme-menu-close,
:root[data-bn-mode="light"] .bn-xp-notify-header button{
 background:#e9dfed!important;border-color:#d1bfd7!important;color:#533f61!important
}
:root[data-bn-mode="light"] .bn-progress-foot,
:root[data-bn-mode="light"] .progress-card .progress-foot span:first-child{
 color:#766a7b!important
}
/* Consistent cross-page typography without inflating compact icon/swatch controls. */
:root .bn-guide-item strong,:root .bn-quick-info b,:root .bn-craft-item strong,
:root .bn-equip-main b,:root .bn-market-listing b{font-size:13px}
:root .bn-project-resource-main,:root .bn-calc-option,:root .bn-storage-summary,
:root .bn-outfit-row{font-size:13px}
:root .bn-roster-total small,:root .bn-roster-professions>small,
:root .bn-studio-widget-label,:root .bn-daily-card .bn-stat-label{
 font-size:10px
}
:root .bn-daily-card .bn-stat-caption,
:root .bn-daily-card .bn-daily-state,
:root .bn-daily-card .bn-daily-meta{font-size:11px}
@media(min-width:1000px){
 :root .bn-project-resource-main,:root .bn-calc-option,
 :root .bn-guide-item strong,:root .bn-market-listing b{font-size:14px}
 :root .bn-roster-total small,:root .bn-roster-professions>small{
 font-size:11px
 }
}
/* Remove green glazes in dark non-data panels, too. */
:root[data-bn-mode="dark"] :is(
 .bp-gradient,.bp-onboard,.bp-nav-config,.bn-xp-main,
 .bn-xp-goal-surface,.bn-xp-alert-launch,.bn-studio-editor,
 .bn-checkin-calendar,.bn-guide-search,.bn-guide-detail-row,
 .bn-inv-tabs,.bn-project-live,.bn-calc-gather,.bn-market-listing>div){
 background:linear-gradient(140deg,#29292a,#202223)!important;
 border-color:#504d49!important
}


/* Often-missed secondary surfaces and modal copy. */
:root[data-bn-mode="light"] .hero .meta,
:root[data-bn-mode="light"] .hero .character-meta{
 background:#eae3ed!important;
 border-color:#d8cede!important;
 color:#5d5266!important
}
:root[data-bn-mode="light"] .hero .meta .status-line,
:root[data-bn-mode="light"] .hero .character-meta .profile-hint{
 color:#655871!important
}
:root[data-bn-mode="light"] .hero-copy .rank,
:root[data-bn-mode="light"] .rank{
 background:#ebe0ef!important;border-color:#cdb9d5!important;color:#624773!important
}
:root[data-bn-mode="light"] .wallet-pill,
:root[data-bn-mode="light"] .wallet-pill .wallet-amount{
 background:#f5edf2!important;border-color:#cbb8cb!important;color:#53435d!important
}
:root[data-bn-mode="light"] .checkin-btn:disabled{
 background:#e6dce9!important;border-color:#d3bfd7!important;color:#61516c!important
}
:root[data-bn-mode="light"] .bn-compare-float,
:root[data-bn-mode="light"] .bn-compare-picker,
:root[data-bn-mode="light"] .bn-compare-picker button{
 background:#f2eaf5!important;border-color:#d6c9df!important;color:#392e45!important
}
:root[data-bn-mode="light"] .bn-eq-detail,
:root[data-bn-mode="light"] .modal .bn-eq-detail-top h2,
:root[data-bn-mode="light"] .bn-eq-detail-top p,
:root[data-bn-mode="light"] .bn-eq-detail-hero strong,
:root[data-bn-mode="light"] .bn-eq-detail-hero small,
:root[data-bn-mode="light"] .bn-eq-compare-warning,
:root[data-bn-mode="light"] .bn-eq-family-legend{
 color:#43354a!important
}
:root[data-bn-mode="light"] .modal p{color:#67576d!important}
:root[data-bn-mode="light"] .modal :is(
 .bn-project-guide-progress,.bn-project-guide-recipe,.bn-project-complete-stats>div,
 .bn-eq-detail-properties>div,.bn-eq-compare-item,.bn-eq-market-metrics>div,
 .bn-eq-recipe,.bn-eq-market-best,.bn-eq-ingredients>div){
 background:#f1ebf4!important;color:#393040!important;border-color:#d9cfdf!important
}
:root[data-bn-mode="light"] .bn-theme-menu-close,
:root[data-bn-mode="light"] .bn-modal-close,
:root[data-bn-mode="light"] .bn-eq-detail-close{
 background:#ebe0f0!important;color:#614c6f!important;border-color:#cebad6!important
}
:root[data-bn-mode="light"] .bn-studio-stat-large small,
:root[data-bn-mode="light"] .bn-studio-widget-label span,
:root[data-bn-mode="light"] .bn-guide-detail-row .bn-guide-unknown{
 color:#6f5d78!important
}
:root[data-bn-mode="light"] .bn-widget-xp-level,
:root[data-bn-mode="light"] .bn-widget-skill-top strong,
:root[data-bn-mode="light"] .bn-widget-profession-row strong{
 color:#3b2d46!important
}


/* Higher specificity than legacy palette !important rules: no old dark
   gradient can leak back into the light dashboard/widgets after theme switch. */
:root[data-bn-mode="light"][data-bn-theme] .daily-card.bn-daily-card,
:root[data-bn-mode="light"][data-bn-theme] .progress-card.bn-live-home,
:root[data-bn-mode="light"][data-bn-theme] .widget:not(.bn-streak-theme),
:root[data-bn-mode="light"][data-bn-theme] .widget.bn-streak-theme,
:root[data-bn-mode="light"][data-bn-theme] .bn-skill-card,
:root[data-bn-mode="light"][data-bn-theme] .hero,
:root[data-bn-mode="light"][data-bn-theme] .card,
:root[data-bn-mode="light"][data-bn-theme] .bp-card{
 background:radial-gradient(circle at 94% 3%,#ebdfef85,transparent 68%),#f8f4f9!important;
 border-color:#dfd5e2!important;
 color:#352d3c!important
}
:root[data-bn-mode="light"][data-bn-theme] .progress-card.bn-live-home{
 background:radial-gradient(circle at 90% 10%,color-mix(in srgb,var(--active-tier) 7%,transparent),transparent 62%),#f8f4f9!important
}
:root[data-bn-mode="light"][data-bn-theme] .daily-card.bn-daily-card .bn-daily-ring:before,
:root[data-bn-mode="light"][data-bn-theme] .widget .bn-widget-ring:before{
 background:#f8f3f9!important
}
:root[data-bn-mode="light"][data-bn-theme] .bn-daily-card .bn-daily-ring-content strong,
:root[data-bn-mode="light"][data-bn-theme] .widget .bn-widget-ring strong{
 color:#382a42!important
}
:root[data-bn-mode="light"][data-bn-theme] .bn-daily-card .bn-daily-ring-content small,
:root[data-bn-mode="light"][data-bn-theme] .widget .bn-widget-ring small{
 color:#735d7d!important
}


/* Remaining decorative green in overlays/check-in CTA is not a status color. */
:root[data-bn-mode="dark"] .bn-xp-alert-toast,
:root[data-bn-mode="dark"] .bn-xp-notify-event-icon,
:root[data-bn-mode="dark"] .bn-checkin-hero .checkin-btn,
:root[data-bn-mode="dark"] .checkin-btn:disabled{
 background:#332b3a!important;border-color:#6a546f!important;color:#ead6f2!important
}
:root[data-bn-mode="dark"] .modal-bg.show{background:#110f19c4!important}
:root[data-bn-mode="light"] .modal-bg.show{background:#41314b63!important}


/* Balance correction: neutral charcoal and stone are the foundational
   surfaces again; warm gold, mauve and game colors appear only as accents. */
:root[data-bn-mode="dark"][data-bn-theme] :is(
 .bn-vitals-card,.bn-vital,.bn-rich-skill,.bn-storage-container,
 .bn-storage-category,.bn-storage-summary,.bn-storage-summary-icon,
 .bn-outfit-row,.bn-inventory-row,.bn-quick-row,.bn-dash-item,.bn-inv-tabs,
 .bn-skill-card,.bn-guide-item,.bn-guide-detail-row,.bn-passive-item,
 .bn-studio-editor,.bn-xp-goal-surface,.bn-session-grid>div){
 background:#212324!important;
 border-color:#474846!important;
}
:root[data-bn-mode="dark"][data-bn-theme] .bn-quick-wins-card{
 background:linear-gradient(145deg,#282522,#1c1e1f 78%)!important;
 border-color:#5a4f42!important;
}
:root[data-bn-mode="dark"][data-bn-theme] .bn-inv-widget,
:root[data-bn-mode="dark"][data-bn-theme] .bn-inventory-summary{
 background:linear-gradient(155deg,#252423,#1d1e20 80%)!important;
 border-color:#4e4a43!important;
}
:root[data-bn-mode="dark"][data-bn-theme] .bn-theme-popover,
:root[data-bn-mode="dark"][data-bn-theme] .modal{
 background:linear-gradient(160deg,#252526,#1b1d1f 82%)!important;
 border-color:#504b4a!important;
}
:root[data-bn-mode="dark"][data-bn-theme] .bn-studio-editor,
:root[data-bn-mode="dark"][data-bn-theme] .bn-xp-settings-fold{
 background:linear-gradient(145deg,#282828,#1e2020 80%)!important;
}
:root[data-bn-mode="dark"][data-bn-theme] .bp-card:not(.bn-checkin-hero),
:root[data-bn-mode="dark"][data-bn-theme] .card:not(.bn-daily-card):not(.bn-streak-theme):not(.bn-quick-wins-card):not(.bn-inventory-summary){
 border-color:#4a4845;
}
:root[data-bn-mode="dark"][data-bn-theme] .bn-rich-skill{
 background:#202324!important;
}
:root[data-bn-mode="dark"][data-bn-theme] .bn-streak-strip{
 background:linear-gradient(110deg,#29241f,#1d2020)!important
}
/* Light theme should feel like stone/linen, with lilac on active controls. */
:root[data-bn-mode="light"] body{
 background:radial-gradient(circle at 9% 10%,#eae6e1,transparent 42%),
 radial-gradient(circle at 93% 83%,#eee8eb,transparent 38%),#f1efec!important
}
:root[data-bn-mode="light"] .scroll{
 background:radial-gradient(circle at 5% 2%,#ebe7e2,transparent 38%),
 radial-gradient(circle at 98% 83%,#eee9eb,transparent 38%),#f1efec!important
}
:root[data-bn-mode="light"] :is(.app-header,.bottom,.bn-desktop-sidebar){
 background:color-mix(in srgb,#f9f7f4 90%,transparent)!important;
 border-color:#dad5d1!important
}
:root[data-bn-mode="light"][data-bn-theme] :is(
 .bp-card,.card,.section-card,.hero,.progress-card,.streak-strip,
 .bn-vitals-card,.bn-inventory-summary,.bn-inv-widget,.bn-project-group,
 .bn-rich-session,.bn-rich-skill,.bn-studio-editor,.bn-quick-wins-card,
 .bn-citizen-parity .bp-card,.bn-guide-page .bp-card,
 .bn-shelf-card,.bn-shelf-ribbon,.bn-settings-mode-card){
 background:linear-gradient(148deg,#faf8f5,#f5f3f0)!important;
 border-color:#dbd7d1!important;
 color:#343335!important;
 box-shadow:0 4px 22px #3d332713,inset 0 1px 0 #ffffff90;
}
:root[data-bn-mode="light"][data-bn-theme] .daily-card.bn-daily-card{
 background:radial-gradient(circle at 91% 5%,#e9dded72,transparent 56%),#f8f6f3!important;
 border-color:#dcd5d8!important
}
:root[data-bn-mode="light"][data-bn-theme] .progress-card.bn-live-home{
 background:radial-gradient(circle at 95% 8%,color-mix(in srgb,var(--active-tier) 6%,transparent),transparent 63%),#f8f6f3!important
}
:root[data-bn-mode="light"][data-bn-theme] .widget:not(.bn-streak-theme),
:root[data-bn-mode="light"][data-bn-theme] .widget.bn-streak-theme,
:root[data-bn-mode="light"][data-bn-theme] .bn-skill-card{
 background:#f8f6f3!important;border-color:#dbd7d1!important
}
:root[data-bn-mode="light"] :is(
 .bn-vital,.bn-quick-row,.bn-inventory-row,.bn-outfit-row,.bn-storage-category,
 .bn-storage-container,.bn-session-grid>div,.bn-roster-metrics>span,
 .bn-guide-detail-row,.bn-passive-item,.bn-xp-goal-surface,
 .bn-studio-type-list button,.bn-theme-menu-choice,.bn-inv-tabs,
 .bn-project-source,.bn-project-tier-needs,.bn-checkin-calendar .checkin-day,
 .bn-xp-notify-event,.bn-xp-notify-history article){
 background:#eeece9!important;border-color:#dad6d1!important;
 color:#393638!important
}
:root[data-bn-mode="light"] :is(
 .bn-shelf-tabs button.active,.bn-mode-switch button.active,
 .bn-theme-menu-choice.active,.bn-checkin-calendar .checkin-day.is-checked){
 background:#e9e1ec!important;border-color:#c7b6cf!important;color:#65506e!important
}
:root[data-bn-mode="light"] :is(
 .bn-insight-panel h3,.bn-rich-heading h2,.bn-studio-toolbar h2,
 .bn-vital b,.bn-vital-name,.bn-guide-detail-row b,
 .bn-studio-stat-large,.bn-studio-skills b,
 .bn-xp-heading-copy h2,.bn-daily-card .daily-title,
 .bn-streak-hero-total,.bn-shelf-ribbon strong){
 color:#343335!important
}
:root[data-bn-mode="light"] :is(.bn-data-caption,.bn-data-foot,.bn-insight-explain,
 .bn-vital small,.bn-project-extra,.bn-studio-type-description,
 .bn-roster-facts span,.bn-xp-main-foot,.bn-studio-preview-note){
 color:#6b6665!important
}
/* Preserve controlled palette choices rather than tinting every component. */
:root[data-bn-mode="dark"] .bn-shelf-inline-add,
:root[data-bn-mode="dark"] .bn-shelf-add{
 background:color-mix(in srgb,var(--bn-primary) 9%,#242526);
 border-color:color-mix(in srgb,var(--bn-primary) 38%,#4b4845)
}
.bn-shelf-inline-add{
 border:1px solid color-mix(in srgb,var(--bn-primary) 42%,var(--bn-border));
 border-radius:99px;padding:7px 10px;min-height:32px;
 color:var(--bn-primary);background:color-mix(in srgb,var(--bn-primary) 9%,var(--bn-panel));
 font:750 11px var(--font-ui,system-ui);cursor:pointer;white-space:nowrap
}
.bn-shelf-inline-add:hover,.bn-shelf-add:hover{
 border-color:var(--bn-primary);
 background:color-mix(in srgb,var(--bn-primary) 17%,var(--bn-panel))
}
.bn-shelf-inline-add:focus-visible,.bn-shelf-add:focus-visible{
 outline:2px solid var(--bn-primary);outline-offset:3px
}
