/* LIFE QUEST v17.3 glass themes: contrast and full-component coverage.
   Appearance only; must be loaded AFTER board-conversation.css, today-quest-focus.css,
   lq-glass-themes.css. Scoped to the user's chosen theme. */
:root[data-lq-theme]{
  --lq-f-ink:#f4f7ff;--lq-f-muted:#c7d4ed;
  --lq-f-surface:rgba(24,42,79,.80);--lq-f-elevated:rgba(41,59,102,.83);
  --lq-f-soft:rgba(87,108,162,.27);--lq-f-line:rgba(174,208,255,.35);
  --lq-f-gold:#ffe0a1;--lq-f-good:#a9f1d3;--lq-f-good-bg:rgba(31,111,88,.40);
  --lq-f-input:rgba(12,26,59,.70);--lq-f-link:#b9e7ff;
  --lq-f-chip:rgba(66,89,133,.75);--lq-f-chip-ink:#f1f5ff;
  --lq-f-shine:rgba(245,249,255,.12);
}
:root[data-lq-theme="lavender"]{
  --lq-f-surface:rgba(71,59,131,.77);--lq-f-elevated:rgba(105,87,168,.72);
  --lq-f-soft:rgba(177,157,226,.18);--lq-f-line:rgba(224,206,255,.44);
  --lq-f-chip:rgba(93,77,153,.82);--lq-f-input:rgba(53,45,105,.75);
  --lq-f-link:#e8d5ff;
}
:root[data-lq-theme="rose"]{
  --lq-f-surface:rgba(63,28,64,.86);--lq-f-elevated:rgba(101,46,83,.80);
  --lq-f-soft:rgba(194,100,153,.21);--lq-f-line:rgba(255,191,229,.37);
  --lq-f-chip:rgba(113,49,95,.78);--lq-f-input:rgba(52,21,54,.75);
  --lq-f-link:#ffcae7;
}
:root:is([data-lq-theme="sakura"],[data-lq-theme="mint"],[data-lq-theme="champagne"]){
  --lq-f-ink:#293b45;--lq-f-muted:#50616a;
  --lq-f-surface:rgba(255,255,255,.79);--lq-f-elevated:rgba(255,255,255,.88);
  --lq-f-soft:rgba(88,108,129,.095);--lq-f-line:rgba(77,102,119,.30);
  --lq-f-gold:#78521d;--lq-f-good:#176d53;--lq-f-good-bg:rgba(95,202,157,.19);
  --lq-f-input:rgba(255,255,255,.92);--lq-f-link:#235b74;
  --lq-f-chip:rgba(235,239,245,.94);--lq-f-chip-ink:#294255;
  --lq-f-shine:rgba(255,255,255,.50);
}
:root[data-lq-theme="sakura"]{
  --lq-f-ink:#442b40;--lq-f-muted:#715566;--lq-f-gold:#785022;
  --lq-f-surface:rgba(255,251,254,.85);--lq-f-elevated:rgba(255,243,250,.94);
  --lq-f-soft:rgba(215,118,165,.12);--lq-f-line:rgba(177,95,143,.31);
  --lq-f-link:#873a69;--lq-f-chip:rgba(249,225,238,.96);
}
:root[data-lq-theme="mint"]{
  --lq-f-ink:#234547;--lq-f-muted:#496668;--lq-f-gold:#715321;
  --lq-f-surface:rgba(246,255,254,.84);--lq-f-elevated:rgba(229,251,249,.92);
  --lq-f-soft:rgba(53,174,166,.11);--lq-f-line:rgba(51,137,139,.33);
  --lq-f-link:#086d73;--lq-f-chip:rgba(214,244,242,.94);
}
:root[data-lq-theme="champagne"]{
  --lq-f-ink:#45382f;--lq-f-muted:#705e4f;--lq-f-gold:#795018;
  --lq-f-surface:rgba(255,253,248,.87);--lq-f-elevated:rgba(255,245,227,.95);
  --lq-f-soft:rgba(189,135,71,.12);--lq-f-line:rgba(164,120,67,.34);
  --lq-f-link:#805028;--lq-f-chip:rgba(246,232,207,.94);
}

/* Base palette: surfaces that formerly carried fixed navy/purple paint. */
:root[data-lq-theme] :is(
 .panel,.statbox,.quest,.quick-task,.home-quest-footprint,.roster-person,
 .skill-card,.attr-card,.lq-journal-entry,.lq-journal-summary span,
 .social-bond-reward,.today-focus-quests .today-focus-summary,
 .coop-steps,.coop-feed,.coop-feed>div,.cloud-banner,.invite-code,
 .lq-replay-row,.day-cell,.lq-member-stat-grid>div
){
 background:var(--lq-f-surface)!important;
 color:var(--lq-f-ink)!important;
 border-color:var(--lq-f-line)!important;
}
:root[data-lq-theme] :is(.quick-task,.roster-person,.home-quest-footprint,.social-bond-reward){
 box-shadow:inset 0 1px 0 var(--lq-f-shine);
}
:root[data-lq-theme] :is(.quick-task,.field,.pill,.btn-ghost,.class-option,.social-quick-posts button){
 border-color:var(--lq-f-line)!important;
}
:root[data-lq-theme] :is(.topbar,.bottom-nav,.sidebar){color:var(--lq-f-ink)!important;}
:root[data-lq-theme] :is(.page-title,.page-subtitle,.panel-title,.panel-title small,
 .today-focus-quests .today-focus-group-title,.today-focus-quests .today-focus-group-title span,
 .today-focus-quests .today-focus-summary,.today-focus-quests .today-focus-summary small,
 .roster-name,.lq-member-name-tap,.roster-person,.guild-chat-feed-header strong,
 .lq-settings-save-notice,.lq-settings-save-bottom,.guild-chat-panel .board-author){
 color:var(--lq-f-ink)!important;
}
:root[data-lq-theme] :is(.roster-status,.privacy-hint,.lq-member-profile-head p,
 .quest-meta,.quest-reward,.quest-info small,.home-quest-footprint-caption,
 .home-quest-footprint-stats,.statbox .stat-label,.attr-name,.skill-desc,
 .social-bond-head small,.social-bond-meta,.guild-chat-feed-header small,
 .xp-head,.hero-job,.form-field>span,.helper-text,.topbar-left,
 .lq-journal-entry-head span,.lq-member-stat-grid span,
 .lq-settings-save-notice small,.guild-chat-panel .board-date,
 .guild-chat-panel .board-feed-info){color:var(--lq-f-muted)!important;}
:root[data-lq-theme] :is(.roster-level,.lq-member-role,.home-quest-footprint-stats b,
 .lq-member-stat-grid strong,.lq-journal-summary strong,.level-pill,
 .guild-chat-panel .today-focus-group-title){color:var(--lq-f-gold)!important;}
:root[data-lq-theme] .home-quest-history-btn{color:var(--lq-f-link)!important;text-decoration:underline;text-underline-offset:3px;}

/* Adventure: pending quest, completed quest and their always-visible footprints. */
:root[data-lq-theme] .today-focus-quests .today-focus-pending .quick-task{
 background:var(--lq-f-elevated)!important;color:var(--lq-f-ink)!important;
 border-color:var(--lq-g-highlight)!important;
 box-shadow:inset 4px 0 0 var(--lq-g-highlight),inset 0 1px 0 var(--lq-f-shine)!important;
}
:root[data-lq-theme] .today-focus-quests .today-focus-done .quick-task.done{
 opacity:1!important;background:var(--lq-f-good-bg)!important;
 border-color:var(--lq-f-line)!important;color:var(--lq-f-ink)!important;
}
:root[data-lq-theme] .today-focus-quests :is(.quick-task b,.quick-task small,.quick-task.done small){
 color:var(--lq-f-ink)!important;
}
:root[data-lq-theme] .today-focus-quests .quick-task small{opacity:.86;}
:root[data-lq-theme] .today-focus-quests .today-focus-entry{
 border-bottom-color:var(--lq-f-line)!important;
}
:root[data-lq-theme] .today-focus-quests .today-focus-group-title span,
:root[data-lq-theme] :is(.pill,.mini-quick){
 background:var(--lq-f-chip)!important;color:var(--lq-f-chip-ink)!important;
 border-color:var(--lq-f-line)!important;
}
:root[data-lq-theme] .today-focus-quests .home-quest-footprint{
 background:var(--lq-f-soft)!important;color:var(--lq-f-ink)!important;
 border-color:var(--lq-f-line)!important;
}
:root[data-lq-theme] .today-focus-quests .today-focus-completed-group{
 border-top-color:var(--lq-f-line)!important;
}
:root[data-lq-theme] .today-focus-quests .today-focus-completed-group .today-focus-group-title,
:root[data-lq-theme] .today-focus-quests .today-focus-all-done{color:var(--lq-f-good)!important;}
:root:is([data-lq-theme="sakura"],[data-lq-theme="mint"],[data-lq-theme="champagne"]) .today-focus-quests .today-focus-all-done{
 color:#195f49!important;
}

/* Party roster: retain character art and role semantics, not old dark-navy tiles. */
:root[data-lq-theme] :is(.roster-person,.party-card,.social-bond-panel,.guild-chat-panel){
 background:var(--lq-f-surface)!important;border-color:var(--lq-f-line)!important;
 color:var(--lq-f-ink)!important;
}
:root[data-lq-theme] :is(.roster-avatar,.member-bubble){background:var(--lq-f-soft)!important;border-color:var(--lq-f-line)!important;}
:root[data-lq-theme] :is(.public-goal,.cheer-btn,.lq-member-name-tap,.lq-reflection-diary-btn){
 background:var(--lq-f-chip)!important;color:var(--lq-f-chip-ink)!important;border-color:var(--lq-f-line)!important;
}
:root[data-lq-theme] .lq-member-name-tap{background:transparent!important;color:var(--lq-f-ink)!important;}
:root[data-lq-theme] :is(.public-goal.cleared,.cheer-btn[title*="応援"]){
 color:var(--lq-f-good)!important;background:var(--lq-f-good-bg)!important;
}
:root:is([data-lq-theme="sakura"],[data-lq-theme="mint"],[data-lq-theme="champagne"]) :is(.public-goal.cleared,.cheer-btn[title*="応援"]){color:#155d44!important;}
:root[data-lq-theme] :is(.social-bond-progress,.track-bar,.bar){background:var(--lq-f-soft)!important;}
:root[data-lq-theme] .social-bond-progress>span{background:linear-gradient(90deg,var(--lq-g-highlight),var(--lq-g-good))!important;}

/* Single-board conversation: strongest fix is foreground/background pairing.
   The old board stylesheet had higher specificity than the theme stylesheet. */
:root[data-lq-theme] .guild-chat-panel .guild-chat-log{
 background:var(--lq-f-elevated)!important;border-color:var(--lq-f-line)!important;
 color:var(--lq-f-ink)!important;
 box-shadow:inset 0 1px 2px var(--lq-f-soft);
}
:root[data-lq-theme] .guild-chat-panel .guild-msg,
:root[data-lq-theme] .guild-chat-panel .guild-msg.mine{
 background:transparent!important;border-bottom-color:var(--lq-f-line)!important;
}
:root[data-lq-theme] .guild-chat-panel .guild-msg-body,
:root[data-lq-theme] .guild-chat-panel .guild-msg.mine .guild-msg-body,
:root[data-lq-theme] .guild-chat-panel .social-reply .guild-msg-body{
 background:transparent!important;color:var(--lq-f-ink)!important;
 border:0!important;box-shadow:none!important;
 opacity:1!important;
}
:root[data-lq-theme] .guild-chat-panel :is(.board-author,.board-reply-meta .board-author){
 color:var(--lq-f-ink)!important;opacity:1!important;
}
:root[data-lq-theme] .guild-chat-panel :is(.guild-msg-meta,.board-reply-meta,.board-date){
 color:var(--lq-f-muted)!important;opacity:1!important;
}
:root[data-lq-theme] .guild-chat-panel .social-replies{
 border-left-color:var(--lq-g-highlight)!important;
}
:root[data-lq-theme] .guild-chat-panel .social-reply+.social-reply{
 border-top-color:var(--lq-f-line)!important;
}
:root[data-lq-theme] .guild-chat-panel .board-avatar{
 background:var(--lq-f-chip)!important;color:var(--lq-f-chip-ink)!important;
 border-color:var(--lq-f-line)!important;
}
:root[data-lq-theme] .guild-chat-panel .board-avatar.mine{
 background:var(--lq-f-good-bg)!important;color:var(--lq-f-ink)!important;
}
:root[data-lq-theme] .guild-chat-panel .board-me-tag{
 background:var(--lq-f-good-bg)!important;color:var(--lq-f-ink)!important;
}
:root[data-lq-theme] .guild-chat-panel .social-respond button,
:root[data-lq-theme] :is(.social-quick-posts button,.social-reply-form button){
 background:var(--lq-f-chip)!important;color:var(--lq-f-chip-ink)!important;
 border-color:var(--lq-f-line)!important;
}
:root[data-lq-theme] .guild-chat-panel .social-respond button[aria-pressed="true"]{
 background:var(--lq-g-btn)!important;color:var(--lq-g-btn-text)!important;
 border-color:var(--lq-g-btn)!important;
}
:root[data-lq-theme] .guild-chat-panel .social-respond button:disabled{opacity:.58!important;}
:root[data-lq-theme] .guild-chat-panel .social-reply-form{
 background:var(--lq-f-soft)!important;border-color:var(--lq-f-line)!important;
}
:root[data-lq-theme] .guild-chat-panel .social-reply-form :is(label,label small){
 color:var(--lq-f-ink)!important;
}

/* Forms, buttons and secondary panels across settings, growth, records. */
:root[data-lq-theme] :is(.field,.modal input,.modal select,.modal textarea){
 background:var(--lq-f-input)!important;color:var(--lq-f-ink)!important;
 border-color:var(--lq-f-line)!important;
}
:root[data-lq-theme] :is(.field,.modal input,.modal textarea)::placeholder{
 color:var(--lq-f-muted)!important;opacity:1!important;
}
:root[data-lq-theme] :is(.btn-ghost,.modal-close,.icon-btn,.profile-chip,.class-option){
 background:var(--lq-f-chip)!important;color:var(--lq-f-chip-ink)!important;
 border-color:var(--lq-f-line)!important;
}
:root[data-lq-theme] .btn-primary{
 background:var(--lq-g-btn)!important;color:var(--lq-g-btn-text)!important;
}
:root[data-lq-theme] .lq-journal-entry-text,
:root[data-lq-theme] .lq-journal-entry,
:root[data-lq-theme] .lq-settings-save-notice{
 background:var(--lq-f-elevated)!important;color:var(--lq-f-ink)!important;
 border-color:var(--lq-f-line)!important;
}
:root[data-lq-theme] :is(.lq-reflection-diary-btn,.lq-member-stat-grid span,.skill-card .skill-desc){
 color:var(--lq-f-muted)!important;
}
:root[data-lq-theme] .lq-glass-settings{
 background:var(--lq-f-surface)!important;border-color:var(--lq-f-line)!important;
}
:root[data-lq-theme] .lq-glass-choice{
 background:var(--lq-f-elevated)!important;color:var(--lq-f-ink)!important;
 border-color:var(--lq-f-line)!important;
}
:root[data-lq-theme] .lq-glass-choice small{color:var(--lq-f-muted)!important;}
:root[data-lq-theme] .lq-glass-choice.is-selected{border-color:var(--lq-g-highlight)!important;}
:root[data-lq-theme] .bottom-link{color:var(--lq-f-muted)!important;}
:root[data-lq-theme] .bottom-link.active{
 color:var(--lq-f-ink)!important;background:var(--lq-f-soft)!important;
}
:root[data-lq-theme] :is(.hero-panel,.boss-panel){
 border-color:var(--lq-f-line)!important;
}
:root[data-lq-theme] :is(.level-pill,.roster-level){color:var(--lq-f-gold)!important;}
/* Dark artwork/health illustrations keep their own intentional palette. */
