/* Shared watercolor palette. Loaded last on every public page. */
html[data-theme="light"] body.t-lux {
 --navy:#fffaf5;--plum:#f4f5ec;--ivory:#624e48;--mist:#806b64;--champ:#a75443;--rose:#a75443;
 --ink:#624e48;--muted:#806b64;--card:#fffdf8;--hair:#e6d7c6;
 --shadow:0 3px 0 rgba(112,85,61,.04),0 10px 24px rgba(112,85,61,.06);
 background:#fffaf5;color:var(--ink);
}
html[data-theme="light"] .t-lux main.page {
 background:radial-gradient(ellipse at 8% 0%,#f9eae488,transparent 42%),radial-gradient(ellipse at 95% 20%,#edf2e688,transparent 40%),#fffaf5;
}
html[data-theme="light"] .t-lux main.page::before{display:none}
html[data-theme="light"] .t-lux .top.solid,html[data-theme="light"] .t-lux .top.open{background:#fffaf5f5;border-color:var(--hair);box-shadow:0 2px 10px #70553d09}
html[data-theme="light"] .t-lux .foot{background:#f4f5ec;border-color:var(--hair);color:var(--mist)}
html[data-theme="light"] .t-lux :is(h1,h2,h3,.content h1,.auth-card h1){color:#754d43}
html[data-theme="light"] .t-lux .grad{background:none;color:#a75443;-webkit-text-fill-color:currentColor}
html[data-theme="light"] .t-lux :is(.btn,.nav a.btn:not(.ghost)){background:#a75443;color:#fffdf8;box-shadow:0 5px 12px #a7544320;border-color:transparent}
html[data-theme="light"] .t-lux :is(.btn.ghost,.btn.white,.nav a.btn.ghost){background:#fffdf8;color:#624e48;border:1px solid #d9c9b6;box-shadow:none}
html[data-theme="light"] .t-lux :is(.tabs,.lang-sw,.theme-sw){border-color:#d9c9b6}
html[data-theme="light"] .t-lux .tabs{background:#fffdf8}
html[data-theme="light"] .t-lux :is(.tabs button.on,.lang-sw button.on,.srv-ch span.on,.boss-badge,.bc-modes i.on,.pod.r1 .medal){background:#6c8066;color:white;border-color:transparent}
html[data-theme="light"] .t-lux :is(.panel,.boss-tile,.pod,.tbl-wrap,.auth-card,.side,.mini,.crow,.pack,.main-char,.bs,.run,.latest li,.bd-runs li,.hof,.bd-first,.hof-mem.big,.bd-hero){background:#fffdf8;border:1px solid #e6d7c6;box-shadow:var(--shadow);border-radius:18px}
html[data-theme="light"] .t-lux :is(.pod.r1,.bd-first,.hof){background:linear-gradient(135deg,#f7f1df,#fffdf8 65%);border-color:#d9c8a4}
html[data-theme="light"] .t-lux :is(.bd-runs li.m1,.run.top1){background:linear-gradient(90deg,#f4f5ec,#fffdf8 60%);border-color:#ced7c5}
html[data-theme="light"] .t-lux :is(input[type=text],input:not([type]),input[type=password],input[type=email],input[type=search],select,.job-pick select,.acct>button,.acct .menu){background:#fffdf8;color:#624e48;border-color:#d9c9b6}
html[data-theme="light"] .t-lux :is(input,select,button,a):focus-visible{outline:2px solid #6c8066;outline-offset:3px}
html[data-theme="light"] .t-lux :is(.bchip,.jobc,.feat code,.guide code,.addr,.bar){background:#f2eee5}
html[data-theme="light"] .t-lux :is(tbody tr:hover td,.rank-list tr.top td,table.bonus tr.today td){background:#f4f5ec}
html[data-theme="light"] .t-lux .auth-art{background:radial-gradient(ellipse,#f5e6d8,#f4f5ec);box-shadow:none;border-radius:24px}
html[data-theme="light"] .t-lux .side nav a.on{background:#edf2e6;color:#52684e!important}
html[data-theme="light"] .t-lux :is(.side hr,.side .who,th,td){border-color:#e6d7c6}
html[data-theme="light"] .t-lux .bar i{background:linear-gradient(90deg,#a9b99a,#6c8066)}
.rank-mascot{object-fit:contain}
@media(max-width:620px){
 .t-lux .rank-list tr{grid-template-columns:36px minmax(0,1fr);grid-template-areas:"rank name" "rank job" "rank val";gap:5px 10px}
 .t-lux .rank-list td.c-val{text-align:left;min-width:0}
 .t-lux .rank-list td.c-name,.t-lux .rank-list td.c-job{min-width:0;overflow-wrap:anywhere}
 html[data-theme="light"] .t-lux .rank-list tr.top td{background:none}
}

/* Readability pass: consistent contrast, static galleries, both saved theme states. */
html[data-theme="light"] body.t-lux{--ivory:#493b35;--ink:#493b35;--mist:#66574e;--muted:#66574e;--champ:#914534;--rose:#914534;--hair:#d6c6b6}
body.t-lux{font-weight:400;line-height:1.75}
html[data-theme="light"] .t-lux :is(.muted,.page-head p,.bd-stats small,.bd-chr small,.bd-meta,.bd-side small,.faq p,.pack span,.cdetail){color:#66574e}
html[data-theme="light"] .t-lux :is(.rank-list .sub,.bc-n,.bc.kawaii-art .bc-n){color:#66574e;font-size:14px}
html[data-theme="light"] .t-lux :is(.bd-chr b,.bd-meta b,.bd-side .t){color:#493b35}
.t-lux :is(.rank-list .sub,.small,.faq p,.pay-info small){font-size:14px}
.t-lux :is(.btn,.tabs button,.job-pick select){min-height:44px}
.t-lux .nav a{white-space:nowrap}
.t-lux main.page{padding-top:132px}
.t-lux .page-head{margin-bottom:18px}
.t-lux .tabs.big{margin-bottom:16px}
.t-lux .guide p,.t-lux .panel p{line-height:1.85}
.home2{color-scheme:light;--c-ink:#493b35;--c-muted:#66574e;--c-kick:#705744}
.home2 .h2-table :is(th,small),.home2 .h2-ranks small{color:#66574e;font-size:14px}
.home2 .h2-bstrip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));max-width:1180px;margin:auto;padding:8px 24px 24px;overflow:visible;scroll-snap-type:none;gap:18px}
.home2 .h2-bcard{width:100%;max-width:none;min-width:0;transform:none}
.home2 .cute-boss-name{font-size:16px}
.home2 .h2-jobs{padding:24px 0;overflow:visible;background:#f3ede3}
.home2 .h2-marq{display:block;width:auto;max-width:1180px;margin:auto;padding:0 24px;animation:none;transform:none;overflow:visible}
.home2 .h2-marq :is(.job-preview,.job-all){display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.home2 .h2-marq span{padding:8px;white-space:normal;color:#493b35;font-size:14px;line-height:1.45;min-width:0}
.home2 .h2-marq img{flex-shrink:0;object-fit:contain}
.home2 .h2-marq .job-more{margin-top:16px}
.home2 .job-more summary{width:fit-content;margin:auto;padding:10px 20px;border:1px solid #bca991;border-radius:24px;cursor:pointer;color:#493b35;font-weight:500}
.home2 .job-more summary span{display:inline;padding:0}
.home2 .job-all{margin-top:16px}
/* Home intentionally keeps its illustrated light palette; inner pages support dark mode. */
html[data-theme="dark"] .boss-watercolor.t-lux{background:#251e1c;color:#f4e9dc;--ivory:#f4e9dc;--ink:#f4e9dc;--mist:#d7c7b6;--muted:#d7c7b6;--champ:#efbf9a;--hair:#675548}
html[data-theme="dark"] .boss-watercolor.t-lux main.page{background:#251e1c}
html[data-theme="dark"] .boss-watercolor.t-lux :is(.bc.kawaii-art,.bd-hero.kawaii-art,.bd-first,.bd-runs>li,.empty.panel,.hof){background:#342a25;border-color:#675548;color:#f4e9dc}
html[data-theme="dark"] .boss-watercolor.t-lux :is(.page-head h1,.bc.kawaii-art .bc-name,.bd-info h2,.bd-h,.bd-first h3,.bd-meta b,.bd-side .t,.back,.bd-stats b){color:#f4e9dc}
html[data-theme="dark"] .boss-watercolor.t-lux :is(.muted,.bc.kawaii-art .bc-n,.bc.kawaii-art.none .bc-n,.bd-stats small,.bd-chr b,.bd-chr small,.bd-meta,.bd-side small){color:#d7c7b6}
html[data-theme="dark"] .boss-watercolor.t-lux .tabs button{background:#342a25;color:#f4e9dc}
html[data-theme="dark"] .boss-watercolor.t-lux .tabs button.on{background:#c6d8b7;color:#24351f}
html[data-theme="dark"] .boss-watercolor.t-lux .bc-foot{border-color:#675548}
@media(max-width:1000px){.home2 .h2-bstrip{grid-template-columns:repeat(3,minmax(0,1fr))}.home2 .h2-marq :is(.job-preview,.job-all){grid-template-columns:repeat(4,minmax(0,1fr))}.t-lux .nav{gap:12px}.t-lux .top-in{padding-inline:18px}}
@media(max-width:760px){.t-lux main.page{padding-top:88px}.home2 .h2-bstrip{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding-inline:14px}.home2 .h2-bcard{padding:5px;border-radius:16px}.home2 .cute-boss-name{font-size:14px;padding:8px 3px;gap:5px;min-height:54px}.home2 .cute-boss-name b{flex-basis:24px;height:24px}.home2 .h2-marq{padding-inline:14px}.home2 .h2-marq :is(.job-preview,.job-all){grid-template-columns:repeat(2,minmax(0,1fr))}.t-lux .page-head h1{font-size:30px;line-height:1.4}}
html[data-theme="dark"] .boss-watercolor.t-lux .grad{background:none;-webkit-text-fill-color:#efbf9a;color:#efbf9a}
html[data-theme="dark"] .boss-watercolor.t-lux .bc.kawaii-art{box-shadow:0 5px 16px #0003}
html[data-theme="light"] .t-lux .badge:not(.on):not(.gm){background:#eee7dc;color:#514238;font-size:14px}
html[data-theme="light"] .t-lux .badge.gm{background:#e4ebef;color:#23465c;font-size:12px}
/* Static class grid must grow in reduced-motion mode too (old marquee capped it at 58px). */
.home2 .h2-jobs{height:auto;max-height:none;overflow:visible}
html[data-lang="en"] .home2 .job-more [lang="th"],html[data-lang="th"] .home2 .job-more [lang="en"]{display:none}

/* Footer and bilingual legal pages */
.t-lux .foot .foot-in{display:flex;flex-wrap:wrap;align-items:center;gap:20px;padding-block:26px}
.t-lux .foot a.footer-discord{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:10px 18px;border:1px solid #d7d6ee;border-radius:14px;background:#eeedf9;color:#444b92;font-size:15px;font-weight:500;text-decoration:none}
.t-lux .foot a.footer-discord .dc-ico{width:22px;height:22px;color:#5865f2}
.t-lux .foot a.footer-discord:hover{background:#e1dff5;border-color:#aca9d8}
.t-lux .footer-legal{display:flex;flex-wrap:wrap;gap:6px 20px;align-items:center}
.t-lux .footer-legal a{font-size:14px;padding:10px 0;text-decoration:underline;text-underline-offset:4px;color:var(--mist,#66574e)}
html[data-theme="dark"] .t-lux:not(.home2) .foot a.footer-discord{background:#35314c;color:#eeedff;border-color:#615a82}
.t-lux .legal-wrap{max-width:900px}
.t-lux .legal-copy{padding:28px 34px;border:1px solid var(--hair);border-radius:22px;background:var(--card,var(--plum));margin-bottom:30px}
.t-lux .legal-copy h1{font-size:34px;line-height:1.4;margin:0 0 8px}
.t-lux .legal-copy h2{font-size:22px;margin:0 0 10px}
.t-lux .legal-copy section{padding-top:26px;margin-top:24px;border-top:1px solid var(--hair)}
.t-lux .legal-copy p{line-height:1.9;margin:8px 0;font-size:16px}
.t-lux .legal-kicker{font-size:12px!important;letter-spacing:1.5px;color:var(--mist)}
html[data-lang="en"] .legal-copy[lang="th"],html[data-lang="th"] .legal-copy[lang="en"]{display:none}
@media(max-width:700px){.t-lux .foot .foot-in{gap:14px}.t-lux .foot .sp{display:none}.t-lux .footer-legal{width:100%;gap:8px 18px}.t-lux .foot a.footer-discord{margin-left:auto}.t-lux .legal-copy{padding:22px 18px}.t-lux .legal-copy h1{font-size:27px}.t-lux .legal-copy h2{font-size:20px}}
/* Override legacy night-theme legal text colours in both palettes. */
.t-lux .legal .legal-copy p,.t-lux .legal .legal-copy li{color:var(--ink)}
.t-lux .legal .legal-copy .muted,.t-lux .legal .legal-copy .legal-kicker{color:var(--mist)}
