/* WALYN Pastel Intelligence Design System — RC12.5.1
   Upgrade, not replacement: preserves WALYN's soft cream / lavender / mint / peach / sky identity,
   while tightening hierarchy, contrast, spacing and interaction for a premium Personal Intelligence OS. */
:root{
 --walyn-bg:#fbf9fc;
 --walyn-bg-warm:#fffaf7;
 --walyn-surface:#fffefe;
 --walyn-surface-soft:#faf7fc;
 --walyn-ink:#454258;
 --walyn-ink-strong:#353246;
 --walyn-muted:#777386;
 --walyn-line:#e8e1ed;
 --walyn-purple:#8b78c6;
 --walyn-purple-strong:#7562b1;
 --walyn-lilac:#ded2f4;
 --walyn-lilac-soft:#f3eefb;
 --walyn-mint:#bfe8d0;
 --walyn-mint-soft:#edf8f1;
 --walyn-peach:#ffd4b8;
 --walyn-peach-soft:#fff3ea;
 --walyn-rose:#f4a9bf;
 --walyn-rose-soft:#fff0f5;
 --walyn-sky:#c7def7;
 --walyn-sky-soft:#f0f6fd;
 --walyn-success:#56866a;
 --walyn-warning:#b77b42;
 --walyn-danger:#b55e69;
 --walyn-radius-sm:12px;
 --walyn-radius:18px;
 --walyn-radius-lg:26px;
 --walyn-shadow:0 12px 32px rgba(88,72,120,.055);
 --walyn-shadow-float:0 18px 44px rgba(88,72,120,.085);
}
body{
 background:
  radial-gradient(circle at 8% 6%,rgba(244,169,191,.09),transparent 23%),
  radial-gradient(circle at 93% 14%,rgba(191,232,208,.12),transparent 24%),
  radial-gradient(circle at 72% 92%,rgba(199,222,247,.11),transparent 25%),
  linear-gradient(135deg,var(--walyn-bg-warm) 0%,var(--walyn-bg) 44%,#f6fbfd 100%)!important;
 color:var(--walyn-ink)!important;
}
body:before{display:none!important}
header{background:rgba(255,252,254,.88)!important;border-color:rgba(139,120,198,.10)!important;box-shadow:0 1px 0 rgba(139,120,198,.035)!important;backdrop-filter:blur(18px)}
aside{background:linear-gradient(180deg,#5b5576 0%,#5f587f 52%,#514b6c 100%)!important;border-color:rgba(255,255,255,.08)!important}
.panel,.card,.metric-card{background:rgba(255,255,255,.82)!important;border:1px solid rgba(122,111,151,.10)!important;box-shadow:var(--walyn-shadow)!important;backdrop-filter:blur(10px);border-radius:var(--walyn-radius)!important}
.panel:hover,.card:hover,.metric-card:hover{transform:none!important;box-shadow:var(--walyn-shadow)!important}
.btn-primary{background:linear-gradient(135deg,var(--walyn-purple),#829fd1)!important;box-shadow:0 7px 18px rgba(126,112,178,.16)!important;border-radius:12px!important}
.btn-primary:hover{filter:saturate(1.03) brightness(.985);transform:translateY(-1px)!important}
.btn-secondary{background:#f7f3fb!important;color:#5d5772!important;border:1px solid var(--walyn-line)!important;border-radius:12px!important}
.tag{background:var(--walyn-lilac-soft)!important;color:#725da8!important}
.page-title span{color:var(--walyn-purple)!important}.page-title h2{color:var(--walyn-ink-strong)!important}
.progress>div{background:linear-gradient(90deg,#a98fd8,#8dbdd2,#8dc9a7)!important}
.nav-btn.active{background:linear-gradient(90deg,rgba(255,255,255,.19),rgba(255,255,255,.09))!important;box-shadow:inset 3px 0 0 #e9c3d2!important}

/* WALYN Home / Brief */
.walyn-home-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:10px 2px 4px}
.walyn-kicker,.walyn-section-head span,.walyn-context-card>span{font:700 10px/1.2 var(--walyn-font-latin);letter-spacing:.16em;color:var(--walyn-purple);text-transform:uppercase}
.walyn-home-head h1{font-size:clamp(2rem,4vw,3.25rem);line-height:1.03;letter-spacing:-.042em;font-weight:650;margin:.45rem 0 .5rem;color:var(--walyn-ink-strong)}
.walyn-home-head p{font-size:.82rem;color:var(--walyn-muted)}
.walyn-home-actions{display:flex;gap:8px;flex-wrap:wrap}
.walyn-brief-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,.82fr);gap:18px}
.walyn-brief-main,.walyn-pulse{background:rgba(255,255,255,.84);border:1px solid rgba(122,111,151,.11);border-radius:var(--walyn-radius-lg);padding:24px;box-shadow:var(--walyn-shadow)}
.walyn-brief-main{position:relative;overflow:hidden}
.walyn-brief-main:before{content:"";position:absolute;width:210px;height:210px;border-radius:50%;right:-105px;top:-120px;background:radial-gradient(circle,rgba(222,210,244,.42),rgba(222,210,244,0) 70%);pointer-events:none}
.walyn-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;position:relative;z-index:1}
.walyn-section-head h2{font-size:1.12rem;font-weight:700;letter-spacing:-.02em;margin-top:5px;color:var(--walyn-ink-strong)}
.walyn-section-head p{font-size:.72rem;color:var(--walyn-muted);margin-top:4px}.walyn-section-head.compact{margin-bottom:14px}
.walyn-private-chip{display:inline-flex!important;align-items:center;gap:6px;letter-spacing:0!important;text-transform:none!important;background:var(--walyn-mint-soft);color:#55745f!important;padding:7px 10px;border:1px solid #d7eddf;border-radius:999px;white-space:nowrap}
.walyn-brief-items{display:grid;gap:8px;position:relative;z-index:1}
.walyn-brief-summaryline{position:relative;z-index:1;margin:-2px 0 15px;padding:11px 13px;border-left:3px solid var(--user-primary);border-radius:0 12px 12px 0;background:rgba(var(--user-primary-rgb),.055);color:var(--walyn-text-secondary,#443c4c);font-size:.88rem;font-weight:600;line-height:1.62}
.dark .walyn-brief-summaryline{background:rgba(var(--user-primary-rgb),.12);color:#eee9f2!important;border-left-color:var(--user-accent-ink-dark)}
@media(max-width:600px){.walyn-brief-summaryline{font-size:.84rem;padding:10px 11px;margin-bottom:12px}}
.walyn-intel-card{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;padding:16px;border-top:1px solid var(--walyn-line);background:transparent}
.walyn-intel-card:first-child{border-top:0}
.walyn-intel-card.primary{background:linear-gradient(135deg,#fcf9ff 0%,#f5f0fb 54%,#f2f8fb 100%);border:1px solid #e7ddf1;border-radius:18px;box-shadow:0 9px 26px rgba(107,88,143,.045)}
.walyn-intel-index{font:600 11px var(--walyn-font-latin);color:#aaa4b3;padding-top:2px}
.walyn-intel-meta{font:700 9px var(--walyn-font-latin);letter-spacing:.12em;color:var(--walyn-purple);text-transform:uppercase}
.walyn-intel-body h3{font-size:.9rem;font-weight:700;margin:4px 0;color:var(--walyn-ink-strong)}
.walyn-intel-body p{font-size:.75rem;color:#696578;line-height:1.55}
.walyn-evidence{margin-top:10px;font-size:.68rem;color:var(--walyn-muted);display:flex;gap:8px;align-items:flex-start}
.walyn-evidence span{font-weight:700;color:var(--walyn-ink)}
.walyn-intel-body button,.walyn-context-card button,.walyn-text-action{margin-top:12px;font-size:.68rem;font-weight:700;color:#6e5aa5;display:inline-flex;align-items:center;gap:6px}
.walyn-pulse-list{display:grid;gap:4px}.walyn-pulse-item{display:flex;gap:11px;align-items:flex-start;padding:12px 0;border-top:1px solid var(--walyn-line)}.walyn-pulse-item:first-child{border-top:0}
.walyn-status{width:8px;height:8px;border-radius:50%;margin-top:5px;background:#b8b2bd}.walyn-status.good{background:#78ad8b}.walyn-status.attention{background:#d29a62}
.walyn-pulse-item b{display:block;font-size:.75rem;color:var(--walyn-ink-strong)}.walyn-pulse-item small{display:block;color:var(--walyn-muted);font-size:.66rem;margin-top:2px}
.walyn-text-action{width:100%;justify-content:space-between;border-top:1px solid var(--walyn-line);padding-top:14px}
.walyn-context-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.walyn-context-card{background:rgba(255,255,255,.42);border:1px solid rgba(122,111,151,.09);border-radius:18px;padding:18px}
.walyn-context-card:nth-child(1){background:linear-gradient(145deg,rgba(255,255,255,.72),rgba(237,248,241,.72))}
.walyn-context-card:nth-child(2){background:linear-gradient(145deg,rgba(255,255,255,.72),rgba(240,246,253,.75))}
.walyn-context-card h3{font-size:.88rem;font-weight:700;margin:7px 0;color:var(--walyn-ink-strong)}
.walyn-context-card p{font-size:.72rem;color:var(--walyn-muted);line-height:1.55;max-width:70ch}

/* Keep domain accents pastel, but use them sparingly */
.metric-mint{background:linear-gradient(145deg,#fcfffd,var(--walyn-mint-soft))!important}.metric-sky{background:linear-gradient(145deg,#fdfefe,var(--walyn-sky-soft))!important}.metric-peach{background:linear-gradient(145deg,#fffefd,var(--walyn-peach-soft))!important}.metric-lilac{background:linear-gradient(145deg,#fefeff,var(--walyn-lilac-soft))!important}.metric-rose{background:linear-gradient(145deg,#fffdfd,var(--walyn-rose-soft))!important}

/* Dark mode keeps the same lavender DNA instead of switching to neon/cyber */
.dark body{background:linear-gradient(145deg,#191724,#1d1b2a 55%,#182126)!important;color:#eeeaf4!important}
.dark header{background:rgba(27,25,39,.9)!important;border-color:#38334a!important}
.dark .panel,.dark .card,.dark .metric-card,.dark .walyn-brief-main,.dark .walyn-pulse{background:rgba(35,32,49,.9)!important;border-color:#3f3953!important;color:#eeeaf4!important;box-shadow:none!important}
.dark .walyn-home-head h1,.dark .walyn-section-head h2,.dark .walyn-intel-body h3,.dark .walyn-pulse-item b,.dark .walyn-context-card h3{color:#f5f1fa}
.dark .walyn-intel-card.primary{background:linear-gradient(135deg,#302b43,#28303f);border-color:#4a4260}
.dark .walyn-intel-body p,.dark .walyn-home-head p,.dark .walyn-section-head p,.dark .walyn-context-card p,.dark .walyn-pulse-item small{color:#b9b2c5}
.dark .btn-secondary{background:#2d293e!important;color:#ece6f5!important;border-color:#413b54!important}
.dark .walyn-context-card{background:#29263a;border-color:#3f3953}

@media(max-width:960px){.walyn-brief-layout{grid-template-columns:1fr}.walyn-pulse{order:2}.walyn-context-row{grid-template-columns:1fr}.walyn-home-head{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.walyn-brief-main,.walyn-pulse{padding:17px;border-radius:22px}.walyn-home-head h1{font-size:2.2rem}.walyn-section-head{flex-direction:column}.walyn-private-chip{align-self:flex-start}.walyn-intel-card{grid-template-columns:30px 1fr;padding:14px 8px}.walyn-intel-card.primary{padding:14px}.walyn-home-actions{width:100%}.walyn-home-actions button{flex:1}}


/* RC12.6 — Product-wide Intelligence Consistency */
:root{
 --walyn-space-1:4px;--walyn-space-2:8px;--walyn-space-3:12px;--walyn-space-4:16px;--walyn-space-5:20px;--walyn-space-6:24px;--walyn-space-8:32px;
 --walyn-focus:0 0 0 3px rgba(139,120,198,.20);
}
.tab-content{max-width:1320px;margin-inline:auto}.tab-content.space-y-6>:not([hidden])~:not([hidden]){margin-top:1.25rem!important}
.page-title{padding:6px 2px 2px;align-items:center!important}.page-title h2{font-size:clamp(1.25rem,2vw,1.65rem)!important;letter-spacing:-.026em!important}.page-title p{font-size:.76rem!important;line-height:1.55;max-width:72ch}.page-title>div>span{font-size:.59rem!important;letter-spacing:.16em!important}
.panel{padding:1.2rem!important}.panel-head{margin-bottom:1rem!important;padding-bottom:.8rem!important}.panel-head h3{font-size:.84rem!important}.panel-head p{font-size:.68rem!important;line-height:1.45}
.metric-card{min-height:96px!important;justify-content:space-between}.metric-card strong{font-size:1rem!important;letter-spacing:-.015em}.metric-card span{font-size:.64rem!important}.metric-card small{font-size:.6rem!important}
.data-table{font-size:.7rem!important}.data-table th{font-size:.59rem!important;letter-spacing:.035em;text-transform:none!important}.data-table th,.data-table td{padding:.72rem .75rem!important}.data-table tbody tr:hover{background:rgba(222,210,244,.10)}
.input{border-color:var(--walyn-line)!important;background:rgba(255,255,255,.82)!important}.input:focus{box-shadow:var(--walyn-focus)!important;border-color:#b39ddd!important}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:none!important;box-shadow:var(--walyn-focus)!important}
.empty,.empty-state{border:1px dashed var(--walyn-line);border-radius:16px;background:rgba(255,255,255,.38);padding:1.35rem!important;color:var(--walyn-muted)!important}
.filter-btn{background:#f8f5fa!important;color:#696274!important;border:1px solid var(--walyn-line)}.filter-btn.active{background:var(--walyn-lilac-soft)!important;color:#6f5ba2!important;border-color:#d9ccec!important}

/* A compact intelligence layer on every major domain page */
.walyn-page-context{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:-2px!important}
.walyn-context-signal{display:flex;gap:11px;align-items:flex-start;padding:13px 14px;border:1px solid rgba(122,111,151,.09);border-radius:15px;background:rgba(255,255,255,.48)}
.walyn-context-signal.primary{background:linear-gradient(145deg,rgba(255,255,255,.78),rgba(243,238,251,.72));border-color:#e6dbf0}
.walyn-context-icon{width:30px;height:30px;border-radius:10px;background:var(--walyn-lilac-soft);display:grid;place-items:center;color:var(--walyn-purple);flex:0 0 30px;font-size:.72rem}
.walyn-context-signal b{display:block;font:700 9px/1.3 var(--walyn-font-latin);letter-spacing:.12em;color:#85799a}.walyn-context-signal p{font-size:.68rem;line-height:1.48;color:#676273;margin-top:3px}

/* Traceable, user-controlled recommendations */
.walyn-why{margin-top:9px}.walyn-why summary{cursor:pointer;font-size:.64rem;font-weight:650;color:#7b6a99;list-style:none;display:inline-flex;align-items:center;gap:5px}.walyn-why summary::-webkit-details-marker{display:none}.walyn-why summary:before{content:'+';font-weight:800}.walyn-why[open] summary:before{content:'–'}
.walyn-recommendation-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.walyn-dismiss{color:#9992a0!important;font-weight:550!important}.walyn-muted-card{opacity:.48;filter:saturate(.65);transition:.2s}

/* Home: make intelligence dominant, legacy dashboard supportive */
#tab-dashboard .daily-hero{margin-top:28px!important;box-shadow:none!important;background:linear-gradient(135deg,rgba(255,255,255,.60),rgba(243,238,251,.68),rgba(240,246,253,.62))!important;border-color:rgba(122,111,151,.08)!important}
#tab-dashboard .daily-hero .hero-blob{display:none!important}#tab-dashboard .hero-score-card{background:rgba(255,255,255,.58)!important;box-shadow:none!important;border-color:rgba(122,111,151,.09)!important}#tab-dashboard .hero-score-card:hover{transform:none!important}
#tab-dashboard .daily-play-grid{gap:10px!important}#tab-dashboard .daily-play-card{box-shadow:none!important;border-color:rgba(122,111,151,.09)!important}#tab-dashboard .daily-play-card:hover{transform:translateY(-1px)!important}
#tab-dashboard .growth-grid{gap:10px!important}

/* Navigation = product architecture, not module dump */
.nav-group-btn{font-size:.61rem!important;letter-spacing:.13em!important;text-transform:uppercase;color:#bab3c7!important}.nav-btn{font-size:.79rem!important;padding:.66rem .72rem!important}.nav-btn.active{box-shadow:inset 2px 0 0 #e7bfd0!important}.nav-group{margin-bottom:.78rem!important}

/* Modal + destructive action consistency */
.modal{background:rgba(36,31,48,.58)!important;backdrop-filter:blur(10px)!important}.modal-card{border:1px solid rgba(255,255,255,.22);border-radius:22px!important;box-shadow:0 30px 70px rgba(45,35,65,.24)!important}.modal-head{background:linear-gradient(135deg,#5c5576,#655c82)!important;padding:1rem 1.2rem!important}.btn-danger{background:#fff0f2!important;color:#a65360!important;border:1px solid #f4d6dc!important}

/* Mobile is a primary surface */
#mobileNav{background:rgba(55,49,74,.94)!important;border-color:rgba(255,255,255,.08)!important;backdrop-filter:blur(18px)}.mobile-bottom{min-height:46px;justify-content:center}.mobile-bottom span{font-size:.56rem}.mobile-bottom i{font-size:.86rem}.mobile-bottom.text-blue-400{color:#f1d6e2!important}
@media(max-width:960px){.walyn-page-context{grid-template-columns:1fr}.page-title{align-items:flex-start!important}.page-title>button,.page-title>.flex{max-width:100%}}
@media(max-width:600px){main#mainContent{padding:18px 14px 92px!important}.tab-content.space-y-6>:not([hidden])~:not([hidden]){margin-top:1rem!important}.page-title{gap:.8rem!important}.page-title h2{font-size:1.28rem!important}.page-title p{font-size:.7rem!important}.panel{padding:1rem!important;border-radius:17px!important}.metric-card{min-height:86px!important}.walyn-page-context{gap:7px}.walyn-context-signal{padding:11px 12px}.data-table{font-size:.66rem!important}.walyn-home-head{padding-top:0}.walyn-home-head h1{font-size:2rem!important}}

/* Dark mode retains pastel DNA with readable hierarchy */
.dark .walyn-context-signal{background:rgba(42,38,57,.78);border-color:#413a55}.dark .walyn-context-signal.primary{background:linear-gradient(145deg,#302b43,#29303d)}.dark .walyn-context-signal p{color:#b9b2c5}.dark .walyn-context-icon{background:#39314e;color:#d9c7ef}.dark .input{background:#272438!important;border-color:#443e57!important}.dark .data-table tbody tr:hover{background:rgba(222,210,244,.05)}.dark .empty,.dark .empty-state{background:rgba(37,34,51,.5);border-color:#413b54}.dark .filter-btn{background:#2b283b!important;color:#cfc8da!important;border-color:#413b54!important}.dark .filter-btn.active{background:#3a3251!important;color:#eee8f5!important}


/* RC12.7 — Experience Refinement (extends RC12.6; does not replace pastel DNA) */
.walyn-date-first{font-size:.72rem!important;color:var(--walyn-muted)!important;margin:0 0 .55rem!important;font-weight:500;letter-spacing:.01em}
.walyn-home-support{max-width:62ch}
.walyn-context-row-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.walyn-followup-card{background:linear-gradient(145deg,rgba(255,255,255,.74),rgba(255,243,234,.72))!important}
.walyn-brief-empty{display:flex;align-items:flex-start;gap:12px;padding:18px;border:1px dashed #dcd3e5;border-radius:18px;background:rgba(255,255,255,.42);color:var(--walyn-muted)}
.walyn-brief-empty>i{width:32px;height:32px;display:grid;place-items:center;border-radius:11px;background:var(--walyn-mint-soft);color:var(--walyn-success);flex:none}
.walyn-brief-empty b{display:block;font-size:.78rem;color:var(--walyn-ink-strong)}.walyn-brief-empty p{font-size:.7rem;line-height:1.5;margin-top:3px}
.walyn-pulse-summary{padding:13px 14px 14px;border-radius:16px;background:linear-gradient(145deg,var(--walyn-mint-soft),rgba(255,255,255,.6));border:1px solid #dcece2;margin-bottom:8px}
.walyn-pulse-summary span{font:700 9px/1.2 var(--walyn-font-latin);letter-spacing:.12em;color:#758078;text-transform:uppercase}.walyn-pulse-summary b{display:block;font-size:.9rem;margin-top:5px;color:var(--walyn-ink-strong)}.walyn-pulse-summary small{display:block;font-size:.64rem;line-height:1.45;color:var(--walyn-muted);margin-top:3px}
#tab-dashboard .hero-score-card:first-child{min-width:0}#tab-dashboard .hero-score-card:first-child #lifeScore{font-size:1.2rem;line-height:1.25;display:block;margin-top:.25rem}
.dark .walyn-followup-card{background:linear-gradient(145deg,#332d3b,#302b35)!important}.dark .walyn-brief-empty{background:rgba(42,38,57,.55);border-color:#4a4359}.dark .walyn-pulse-summary{background:linear-gradient(145deg,#27392f,#2b3038);border-color:#3d4a43}.dark .walyn-brief-empty b,.dark .walyn-pulse-summary b{color:#f5f1fa}
@media(max-width:1100px){.walyn-context-row-3{grid-template-columns:1fr 1fr}.walyn-context-row-3 .walyn-followup-card{grid-column:1/-1}}
@media(max-width:720px){.walyn-context-row-3{grid-template-columns:1fr}.walyn-context-row-3 .walyn-followup-card{grid-column:auto}.walyn-home-support{font-size:.74rem!important}}


/* RC12.9 — Typography Refinement: Anuphan + Manrope */
:root{
 --walyn-font-ui:'Anuphan','Leelawadee UI',Tahoma,'Segoe UI',system-ui,sans-serif;
 --walyn-font-latin:'Manrope','Anuphan','Segoe UI Variable Text','Segoe UI',system-ui,sans-serif;
 --walyn-font-display:'Manrope','Anuphan','Segoe UI Variable Display','Segoe UI',system-ui,sans-serif;
}
body{font-family:var(--walyn-font-ui)!important;font-optical-sizing:auto;font-synthesis:none;text-rendering:optimizeLegibility}
h1,h2,h3,.page-title h2,.panel-head h3,.modal-head h3,.walyn-home-head h1,.walyn-section-head h2{font-family:var(--walyn-font-display)!important}
.eyebrow,.tag,.nav-group-label,.walyn-kicker,.walyn-intel-meta,.walyn-intel-index,.walyn-pulse-summary span{font-family:var(--walyn-font-latin)!important}
.metric-card strong,.hero-score-card .text-xl,.text-2xl,.text-3xl{font-variant-numeric:tabular-nums}


/* RC12.9 — WALYN type rhythm */
html[lang="th"] body{line-height:1.62;letter-spacing:0}
body{font-weight:400}
button,input,select,textarea{font-family:var(--walyn-font-ui)!important}
.nav-btn,.header-profile-name,.panel p,.walyn-intel-body p,.walyn-context-card p{letter-spacing:0}
h1,h2,h3,.page-title h2,.panel-head h3,.modal-head h3,.walyn-home-head h1,.walyn-section-head h2{font-family:var(--walyn-font-display)!important;font-feature-settings:"kern" 1,"liga" 1}
.walyn-home-head h1{font-weight:600;letter-spacing:-.035em}
.page-title h2{font-weight:600!important;letter-spacing:-.02em!important}
.panel-head h3,.walyn-section-head h2,.walyn-intel-body h3{font-weight:600!important}
.metric-card strong,.hero-score-card .text-xl,.text-2xl,.text-3xl{font-family:var(--walyn-font-latin)!important;font-weight:600!important;font-variant-numeric:tabular-nums lining-nums}
.eyebrow,.tag,.nav-group-label,.walyn-kicker,.walyn-intel-meta,.walyn-intel-index,.walyn-pulse-summary span{font-family:var(--walyn-font-latin)!important}
.sidebar-label .text-white{font-family:var(--walyn-font-latin)!important;letter-spacing:.075em}
@media(max-width:600px){.walyn-home-head h1{letter-spacing:-.025em}}


/* RC12.11 — Readability + Theme-aware Contrast
   Keeps the approved RC12.9 visual layout. Improves legibility and derives readable
   accent/action text from the user's selected appearance theme. */
:root{
 --walyn-text-primary:#3f3b4c;
 --walyn-text-secondary:#5d586a;
 --walyn-text-muted:#716b7d;
 --walyn-text-subtle:#817a8a;
 --user-accent-ink:#66539b;
 --user-accent-ink-soft:#66539b;
 --user-accent-ink-dark:#d7c8ef;
 --user-action-primary:#8b78c6;
 --user-action-secondary:#86c6d9;
 --user-on-action:#272331;
 --user-on-soft:#3f3b4c;
}
html{font-size:16px}
body{font-size:15px!important;color:var(--walyn-text-primary)!important}
p,li,td,button,input,select,textarea{line-height:1.55}

/* Minimum readable type rhythm — compact, but no 9–10px critical copy. */
.page-title p{font-size:.84rem!important;color:var(--walyn-text-secondary)!important}
.page-title>div>span,.walyn-kicker,.walyn-section-head>div>span,.walyn-context-card>span{font-size:.69rem!important}
.panel-head h3{font-size:.9rem!important}.panel-head p{font-size:.78rem!important;color:var(--walyn-text-muted)!important}
.metric-card span{font-size:.75rem!important;color:var(--walyn-text-secondary)!important}.metric-card strong{font-size:1.03rem!important}.metric-card small{font-size:.71rem!important;color:var(--walyn-text-muted)!important}
.data-table{font-size:.78rem!important}.data-table th{font-size:.71rem!important;color:var(--walyn-text-secondary)!important}.data-table td{line-height:1.5}
.label{font-size:.78rem!important;color:var(--walyn-text-secondary)!important}.input{font-size:.875rem!important;color:var(--walyn-text-primary)!important}
.btn-primary,.btn-secondary,.btn-danger,.filter-btn{font-size:.79rem!important}
.tag{font-size:.69rem!important}
.nav-group-btn{font-size:.69rem!important;color:#d0c9d9!important}.nav-btn{font-size:.84rem!important}
.mobile-bottom span{font-size:.68rem!important}
.mini span{font-size:.7rem!important;color:var(--walyn-text-muted)!important}.mini b{font-size:.78rem!important}
.empty,.empty-state{font-size:.78rem!important;color:var(--walyn-text-muted)!important}
.walyn-home-head p{font-size:.86rem!important;color:var(--walyn-text-secondary)!important}
.walyn-section-head p{font-size:.8rem!important;color:var(--walyn-text-muted)!important}
.walyn-intel-meta{font-size:.68rem!important}.walyn-intel-index{font-size:.72rem!important}
.walyn-intel-body h3{font-size:.94rem!important}.walyn-intel-body p{font-size:.82rem!important;color:var(--walyn-text-secondary)!important;line-height:1.6}
.walyn-evidence{font-size:.75rem!important;color:var(--walyn-text-muted)!important}
.walyn-intel-body button,.walyn-context-card button,.walyn-text-action,.walyn-why summary{font-size:.76rem!important}
.walyn-pulse-item b{font-size:.82rem!important}.walyn-pulse-item small{font-size:.74rem!important;color:var(--walyn-text-muted)!important}
.walyn-context-card h3{font-size:.92rem!important}.walyn-context-card p{font-size:.8rem!important;color:var(--walyn-text-secondary)!important}
.walyn-context-signal b{font-size:.69rem!important}.walyn-context-signal p{font-size:.78rem!important;color:var(--walyn-text-secondary)!important}
.walyn-date-first{font-size:.78rem!important;color:var(--walyn-text-muted)!important}
.walyn-brief-empty b{font-size:.84rem!important}.walyn-brief-empty p{font-size:.78rem!important}.walyn-pulse-summary span{font-size:.68rem!important}.walyn-pulse-summary small{font-size:.74rem!important}
.checkin-banner span{font-size:.69rem!important}.checkin-banner b{font-size:.9rem!important}.checkin-banner small{font-size:.75rem!important}.insight-card b{font-size:.8rem!important}.insight-card small{font-size:.74rem!important}.rhythm-day{font-size:.69rem!important}
[class~="text-[9px]"],[class~="text-[10px]"]{font-size:.7rem!important;line-height:1.45!important}
[class~="text-[11px]"]{font-size:.75rem!important;line-height:1.5!important}
.text-xs{font-size:.78rem!important;line-height:1.5!important}

/* Semantic text colors: neutral copy stays high contrast; theme color is reserved for accents. */
.text-slate-400{color:#777181!important}.text-slate-500{color:#696373!important}.text-slate-600{color:#595363!important}.text-slate-700{color:#494451!important}
.page-title h2,.panel-head h3,.walyn-intel-body h3,.walyn-context-card h3,.walyn-pulse-item b{color:var(--walyn-text-primary)!important}
.page-title span,.tag,.walyn-kicker,.walyn-intel-meta,.walyn-text-action,.walyn-intel-body button,.walyn-context-card button,.walyn-why summary,.filter-btn.active{color:var(--user-accent-ink)!important}
.tag{background:rgba(var(--user-primary-rgb),.12)!important}.filter-btn.active{background:rgba(var(--user-primary-rgb),.10)!important;border-color:rgba(var(--user-primary-rgb),.22)!important}
.btn-primary{background:linear-gradient(135deg,var(--user-action-primary),var(--user-action-secondary))!important;color:var(--user-on-action)!important;text-shadow:none!important}
.daily-hero,.appearance-preview{color:var(--user-on-soft)!important}.appearance-preview .tag{color:var(--user-accent-ink-soft)!important}
.theme-preset{font-size:.72rem!important;color:#625c6e!important}

/* Dark theme: raise low-contrast secondary text without making everything pure white. */
.dark{--walyn-text-primary:#f2eef6;--walyn-text-secondary:#d5cedd;--walyn-text-muted:#b9b1c1;--walyn-text-subtle:#aaa2b2}
.dark body{color:var(--walyn-text-primary)!important}
.dark .text-slate-400{color:#b8b0c2!important}.dark .text-slate-500{color:#c5bdcf!important}.dark .text-slate-600,.dark .text-slate-700{color:#d4cddd!important}
.dark .page-title p,.dark .panel-head p,.dark .metric-card span,.dark .metric-card small,.dark .walyn-intel-body p,.dark .walyn-context-card p,.dark .walyn-context-signal p,.dark .walyn-pulse-item small,.dark .walyn-evidence,.dark .empty,.dark .empty-state{color:var(--walyn-text-muted)!important}
.dark .page-title span,.dark .tag,.dark .walyn-kicker,.dark .walyn-intel-meta,.dark .walyn-text-action,.dark .walyn-intel-body button,.dark .walyn-context-card button,.dark .walyn-why summary,.dark .filter-btn.active{color:var(--user-accent-ink-dark)!important}
.dark .tag{background:rgba(var(--user-primary-rgb),.19)!important}.dark .filter-btn.active{background:rgba(var(--user-primary-rgb),.16)!important;border-color:rgba(var(--user-primary-rgb),.34)!important}
.dark .theme-preset{color:#d1c9da!important}.dark .appearance-preview{color:var(--user-on-soft)!important}.dark .appearance-preview .tag{color:var(--user-accent-ink-soft)!important}

@media(max-width:600px){
 body{font-size:15px!important}.page-title p{font-size:.82rem!important}.panel-head p{font-size:.77rem!important}.data-table{font-size:.76rem!important}.mobile-bottom span{font-size:.68rem!important}
 button,.btn-primary,.btn-secondary,.btn-danger,.filter-btn{font-size:.8rem!important}
 input,select,textarea,.input{font-size:16px!important}
}

/* RC12.12 — High Clarity Typography
   User feedback: RC12.11 was still too soft. This layer deliberately prioritizes
   reading comfort over pastel-text styling while preserving the selected theme
   for surfaces, accents, borders and focus states. */
:root{
 --walyn-text-primary:#2f2936;
 --walyn-text-secondary:#433b4b;
 --walyn-text-muted:#584f61;
 --walyn-text-subtle:#665d70;
}
html{font-size:16px!important}
body{font-size:16px!important;color:var(--walyn-text-primary)!important;font-weight:400}

/* Stronger hierarchy */
.page-title h2,.walyn-home-head h1{color:#29232f!important;font-weight:700!important}
.page-title p,.walyn-home-head p{color:#443c4c!important;font-size:.92rem!important;line-height:1.65!important}
.panel-head h3,.walyn-section-head h2,.walyn-intel-body h3,.walyn-context-card h3{color:#302a37!important;font-weight:700!important}
.panel-head p,.walyn-section-head p,.walyn-intel-body p,.walyn-context-card p,.walyn-context-signal p,.walyn-pulse-item small,.walyn-evidence,.empty,.empty-state{color:var(--walyn-text-muted)!important}

/* Do not render critical copy below a comfortable reading size. */
[class~="text-[9px]"],[class~="text-[10px]"]{font-size:.78rem!important;line-height:1.55!important}
[class~="text-[11px]"]{font-size:.81rem!important;line-height:1.55!important}
.text-xs{font-size:.82rem!important;line-height:1.55!important}
.text-sm{line-height:1.55!important}
.page-title>div>span,.walyn-kicker,.walyn-section-head>div>span,.walyn-context-card>span{font-size:.75rem!important;font-weight:700!important}
.panel-head h3{font-size:.98rem!important}.panel-head p{font-size:.84rem!important}
.metric-card span{font-size:.81rem!important}.metric-card strong{font-size:1.12rem!important}.metric-card small{font-size:.78rem!important}
.data-table{font-size:.84rem!important}.data-table th{font-size:.78rem!important;font-weight:700!important}.data-table td{line-height:1.58!important}
.label{font-size:.84rem!important;font-weight:650!important}.input{font-size:.94rem!important}
.btn-primary,.btn-secondary,.btn-danger,.filter-btn{font-size:.84rem!important;font-weight:650!important}
.tag{font-size:.75rem!important;font-weight:700!important}
.nav-group-btn{font-size:.75rem!important;color:#dcd5e4!important;font-weight:700!important}.nav-btn{font-size:.9rem!important;font-weight:650!important}
.sidebar-label .text-white{font-size:1.02rem!important}.sidebar-label .text-\[10px\]{font-size:.75rem!important;color:#d8d0e0!important}
.mobile-bottom span,.mobile-bottom button span{font-size:.74rem!important}
.mini span{font-size:.77rem!important}.mini b{font-size:.84rem!important}
.walyn-intel-meta{font-size:.74rem!important}.walyn-intel-index{font-size:.78rem!important}
.walyn-intel-body h3{font-size:1rem!important}.walyn-intel-body p{font-size:.88rem!important;line-height:1.68!important}
.walyn-evidence{font-size:.81rem!important;line-height:1.58!important}
.walyn-intel-body button,.walyn-context-card button,.walyn-text-action,.walyn-why summary{font-size:.82rem!important}
.walyn-pulse-item b{font-size:.9rem!important}.walyn-pulse-item small{font-size:.8rem!important}
.walyn-context-card h3{font-size:.98rem!important}.walyn-context-card p{font-size:.86rem!important;line-height:1.65!important}
.walyn-context-signal b{font-size:.77rem!important}.walyn-context-signal p{font-size:.84rem!important}
.walyn-date-first{font-size:.84rem!important}.walyn-brief-empty b{font-size:.92rem!important}.walyn-brief-empty p{font-size:.84rem!important}
.walyn-pulse-summary span{font-size:.74rem!important}.walyn-pulse-summary small{font-size:.8rem!important}
.checkin-banner span{font-size:.75rem!important}.checkin-banner b{font-size:.96rem!important}.checkin-banner small{font-size:.81rem!important}.insight-card b{font-size:.87rem!important}.insight-card small{font-size:.8rem!important}.rhythm-day{font-size:.75rem!important}

/* Neutral text must stay neutral and high contrast. Theme colors no longer carry body copy. */
.text-slate-300{color:#655d6d!important}.text-slate-400{color:#625969!important}.text-slate-500{color:#574e60!important}.text-slate-600{color:#473f50!important}.text-slate-700{color:#37313e!important}
.text-gray-400,.text-gray-500{color:#5b5263!important}

/* Raise text opacity where utility classes made copy unnecessarily faint. */
p.opacity-60,span.opacity-60,small.opacity-60,.appearance-preview .opacity-60{opacity:.88!important}
p.opacity-70,span.opacity-70,small.opacity-70{opacity:.92!important}

/* Theme colors are still visible as accents, but readable accent variables are used for text. */
.page-title span,.tag,.walyn-kicker,.walyn-intel-meta,.walyn-text-action,.walyn-intel-body button,.walyn-context-card button,.walyn-why summary,.filter-btn.active{font-weight:700!important}

/* Dark mode: intentionally brighter than RC12.11. */
.dark{
 --walyn-text-primary:#fcfafd;
 --walyn-text-secondary:#eee9f2;
 --walyn-text-muted:#d9d2df;
 --walyn-text-subtle:#cbc3d1;
}
.dark body{color:var(--walyn-text-primary)!important}
.dark .page-title h2,.dark .walyn-home-head h1,.dark .panel-head h3,.dark .walyn-section-head h2,.dark .walyn-intel-body h3,.dark .walyn-context-card h3,.dark .walyn-pulse-item b{color:#fff!important}
.dark .page-title p,.dark .walyn-home-head p{color:#e8e2ed!important}
.dark .text-slate-300{color:#ded7e4!important}.dark .text-slate-400{color:#d3cbd9!important}.dark .text-slate-500{color:#ddd6e3!important}.dark .text-slate-600,.dark .text-slate-700{color:#ebe6ef!important}
.dark .text-gray-400,.dark .text-gray-500{color:#d8d0df!important}
.dark .nav-group-btn{color:#d8d0e0!important}.dark .nav-child{color:#eee8f3!important}.dark .nav-btn{color:#f3eef6!important}
.dark .sidebar-label .text-\[10px\]{color:#ddd5e5!important}
.dark .panel-head p,.dark .metric-card span,.dark .metric-card small,.dark .walyn-intel-body p,.dark .walyn-context-card p,.dark .walyn-context-signal p,.dark .walyn-pulse-item small,.dark .walyn-evidence,.dark .empty,.dark .empty-state{color:#d8d1de!important}

@media(max-width:600px){
 body{font-size:16px!important}.page-title p{font-size:.88rem!important}.panel-head p{font-size:.83rem!important}.data-table{font-size:.82rem!important}.mobile-bottom span{font-size:.74rem!important}
 button,.btn-primary,.btn-secondary,.btn-danger,.filter-btn{font-size:.85rem!important}
 input,select,textarea,.input{font-size:16px!important}
}
