/* PSX Research Desk — shared dual-theme layer (light default, dark via data-theme) */
:root{
  --bg:#ECE4D2;--card:#FBF7EC;--card2:#F4EEDE;--ink:#20190F;--body:#574E3F;--dim:#8A8070;
  --line:#DDD1B8;--ind:#B4692E;--ind2:#C98A2E;--cream:#B8893A;--up:#2F6B4C;--down:#A83E26;--flat:#CFC4AC;
  --onacc:#FBF7EC;--shadow:0 1px 2px rgba(60,45,20,.05),0 12px 30px rgba(60,45,20,.08);--hair:rgba(120,90,40,.14);
}
:root[data-theme="dark"]{
  --bg:#15130D;--card:#211D14;--card2:#2A2318;--ink:#F8F0DD;--body:#C8BDA5;--dim:#9C927C;
  --line:#3A3122;--ind:#ECAC3E;--ind2:#E6C56E;--cream:#E6C56E;--up:#73C89A;--down:#EE8E60;--flat:#574E3C;
  --onacc:#15130D;--shadow:0 1px 0 rgba(255,245,220,.04) inset,0 14px 40px rgba(0,0,0,.4);--hair:rgba(230,197,110,.16);
}
body{background:var(--bg);color:var(--ink)}
/* finesse */
.panel,.range,.card,.market,.ec,.tile,.pf-card,.sec-fig{box-shadow:var(--shadow)}
.kick,.eyebrow{letter-spacing:.16em;text-transform:uppercase}
/* theme toggle */
#themeToggle{position:relative;width:40px;height:26px;border-radius:999px;border:1px solid var(--line);background:var(--card2);cursor:pointer;flex:none}
#themeToggle::after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:var(--ind);transition:transform .3s cubic-bezier(.2,.9,.1,1)}
:root[data-theme="dark"] #themeToggle::after{transform:translateX(14px)}

svg.brand-logo,.brand-logo{width:26px;height:26px;border-radius:7px;flex:none;vertical-align:middle;margin-right:8px;display:inline-block}
.brand,.logo{display:inline-flex;align-items:center}
/* company logo chip */
.clg{position:relative;display:inline-grid;place-items:center;width:28px;height:28px;border-radius:7px;background:var(--card2);border:1px solid var(--line);flex:none;overflow:hidden;font-variant-numeric:normal}
.clg-m{font:700 11px Figtree,sans-serif;letter-spacing:.02em}
.clg-i{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#fff;padding:3px}
/* --- theme toggle as sun/moon icon, top-right --- */
#themeToggle,.thm-toggle{appearance:none;-webkit-appearance:none;width:38px!important;height:38px!important;border-radius:10px!important;border:1px solid var(--line)!important;background-color:var(--card2)!important;background-position:center!important;background-repeat:no-repeat!important;background-size:19px 19px!important;cursor:pointer;flex:none;padding:0!important;transition:border-color .2s,background-color .2s}
#themeToggle:hover,.thm-toggle:hover{border-color:var(--gold)!important}
#themeToggle::after,#themeToggle::before,.thm-toggle::after,.thm-toggle::before,.thm-knob{display:none!important}
:root:not([data-theme="dark"]) #themeToggle,:root:not([data-theme="dark"]) .thm-toggle{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23B4692E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 12.8A9 9 0 1 1 11.2 3 7 7 0 0 0 21 12.8Z'/%3E%3C/svg%3E")!important}
:root[data-theme="dark"] #themeToggle,:root[data-theme="dark"] .thm-toggle{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E6C56E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Cpath d='M12 2v2M12 20v2M2 12h2M20 12h2M4.9 4.9l1.4 1.4M17.7 17.7l1.4 1.4M19.1 4.9l-1.4 1.4M6.3 17.7l-1.4 1.4'/%3E%3C/svg%3E")!important}
.thm-float{position:fixed!important;top:48px;right:16px;z-index:140}
