:root{color-scheme:dark;--bg:#101819;--panel:#192326;--line:#303f42;--text:#edf2ed;--muted:#a3b2b2;--accent:#d4edac;--gold:#e3c67d;--blue:#97b9dc;--red:#ef9c91;--radius:14px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px Tahoma,'Noto Sans Thai',system-ui,sans-serif;line-height:1.65}button,input,select{font:inherit}button,a,input,select,summary{outline-offset:4px}button{border:0;border-radius:8px;padding:11px 18px;background:var(--accent);color:#1e2a16;cursor:pointer;font-weight:600}button:hover{filter:brightness(1.09)}button:disabled{opacity:.4;cursor:not-allowed}.secondary{background:#26373a;color:var(--text);border:1px solid #415256}.quiet,.textbutton{background:transparent;color:var(--muted);font-weight:400;text-align:left;text-decoration:none}.textbutton{color:var(--accent);padding:4px}.topbar{height:78px;position:sticky;top:0;z-index:10;background:#101819f5;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:24px;padding:0 32px}.brand{font:600 19px Georgia,serif;color:var(--text);text-decoration:none;white-space:nowrap}.brand span{color:var(--accent);font-size:12px;margin-left:8px}.clock{margin-left:auto;color:var(--muted);font-size:13px}.app{display:grid;grid-template-columns:215px minmax(0,1fr);max-width:1800px;margin:auto}.sidebar{height:calc(100vh - 78px);position:sticky;top:78px;border-right:1px solid var(--line);padding:26px 18px;display:flex;flex-direction:column;justify-content:space-between;overflow:auto}.eyebrow{font-size:10px;letter-spacing:1.6px;color:var(--accent);font-weight:bold;margin:0 0 12px}.sidebar .eyebrow{letter-spacing:0;color:var(--muted);margin:0 10px 20px}nav{display:flex;flex-direction:column;gap:7px}.nav{background:none;color:var(--muted);text-align:left;display:flex;gap:12px;padding:12px 14px}.nav.active{background:#2b3c35;color:var(--accent)}.sidebottom{display:flex;flex-direction:column;gap:3px}.sidebottom .quiet{padding:7px 10px;font-size:12px}.seedlabel{font-size:9px;letter-spacing:1.5px;color:var(--muted);padding:0 10px}.sidebottom #seed{font-size:10px;color:var(--muted);overflow-wrap:anywhere;padding:0 10px;margin-bottom:15px}.file{cursor:pointer}.file input{display:none}main{padding:22px 34px;min-width:0}#status{font-size:12px;color:var(--accent);min-height:24px;margin-bottom:10px}.pageheading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:4px 0 28px}h1{font-size:30px;line-height:1.4;font-weight:600;margin:0}h2{font-size:18px;font-weight:600;margin:0 0 10px}h3{font-size:16px;margin:0 0 8px}p{margin:10px 0}.muted,.caption{color:var(--muted)}.caption{font-size:11px}.pageheading .muted{font-size:13px;margin-bottom:0}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:24px}.stat{padding:18px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);min-width:0}.stat>span{font-size:12px;color:var(--muted)}.stat strong{display:block;font-size:25px;margin-top:8px;font-weight:500;font-variant-numeric:tabular-nums}.stat:first-child strong{color:var(--accent)}.panel{padding:24px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:22px}.overviewgrid{display:grid;grid-template-columns:1.1fr 1fr;gap:22px}.sectionheading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.sectionheading h2{margin:0}.overviewgrid>.panel{min-width:0}.tablewrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px}th,td{border-bottom:1px solid var(--line);padding:12px 8px;text-align:right;white-space:nowrap}th{font-weight:400;color:var(--muted);font-size:11px}td:first-child,th:first-child{text-align:left}td:first-child{white-space:normal;min-width:110px}td .textbutton{font-size:12px;padding:0}.allocationstack{display:flex;height:8px;border-radius:8px;overflow:hidden;margin:15px 0}.legend{display:flex;flex-wrap:wrap;gap:7px 16px;font-size:11px;margin-bottom:18px;color:var(--muted)}.dot{width:7px;height:7px;display:inline-block;border-radius:50%;margin-right:6px}.linekey{display:inline-block;width:13px;height:2px;background:var(--accent);vertical-align:middle;margin:0 8px}.linekey.benchmark{background:#7b949d}#chart{width:100%;height:180px;margin:12px 0}progress{width:100%;height:5px;accent-color:var(--accent)}#cashflow{padding-top:14px;margin-top:16px;border-top:1px solid var(--line);font-size:12px}.newscards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:16px 0 24px}.news{background:var(--panel);padding:22px;border:1px solid var(--line);border-radius:12px}.news h3{font-size:16px;line-height:1.65}.news p{font-size:13px;color:var(--muted)}.news small{font-size:9px;color:var(--gold);letter-spacing:1px}.chips{display:flex;flex-wrap:wrap;gap:8px}.chips button{background:transparent;border:1px solid var(--line);color:var(--muted);padding:9px 18px;border-radius:24px;font-weight:400}.chips button.selected{background:var(--accent);border-color:var(--accent);color:#1e2a16}.markettools{display:grid;grid-template-columns:minmax(150px,1fr) 160px 140px;gap:14px;padding:20px 0 12px}.markettools label{font-size:11px;color:var(--muted)}input,select{display:block;width:100%;padding:11px 12px;margin-top:5px;color:var(--text);background:#111b1d;border:1px solid #3c4c50;border-radius:8px}.marketlayout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:24px;align-items:start}.assetgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.assetcard{width:100%;padding:18px;text-align:left;background:var(--panel);border:1px solid var(--line);color:var(--text);border-radius:12px;font-weight:400;display:flex;flex-direction:column;gap:12px;min-height:166px}.assetcard.active{border-color:var(--accent);box-shadow:inset 0 0 0 1px #d4edac55}.cardtop{display:flex;align-items:center;gap:10px}.asseticon{width:35px;height:35px;display:grid;place-items:center;border-radius:9px;background:#2f403b;color:var(--accent);font-size:14px;flex-shrink:0}.asseticon.bond{background:#243a4b;color:var(--blue)}.asseticon.gold{background:#443e29;color:var(--gold)}.asseticon.multi{background:#3a3247;color:#c3acd8}.cardtitle{font-size:13px;font-weight:600;line-height:1.5}.ticker{font-size:9px;color:var(--muted);letter-spacing:.6px}.tags{display:flex;flex-wrap:wrap;gap:5px}.tag,.badge{font-size:10px;border:1px solid #405050;padding:3px 7px;border-radius:5px;color:#c5d1cd;font-weight:400}.badge{white-space:nowrap;color:var(--muted)}.cardbottom{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:12px}.cardbottom .price{font-size:17px;font-variant-numeric:tabular-nums}.fundmeta{font-size:10px;color:var(--muted)}.detail{position:sticky;top:100px;padding:23px;max-height:calc(100vh - 125px);overflow:auto}.detail .ticker{color:var(--accent)}.detail h2{font-size:21px;margin:8px 0 12px;line-height:1.5}.quote{display:flex;align-items:baseline;gap:10px;margin:18px 0}.quote strong{font-size:30px;font-weight:400}.detailtabs{display:flex;border-bottom:1px solid var(--line);gap:8px;margin:12px 0 18px}.detailtabs button{border-radius:0;background:none;color:var(--muted);padding:9px 4px;font-size:12px;font-weight:400;flex:1}.detailtabs button.selected{border-bottom:2px solid var(--accent);color:var(--accent)}.facts{display:grid;grid-template-columns:1fr 1fr;gap:14px 12px;font-size:12px}.facts dt{color:var(--muted);font-size:10px}.facts dd{margin:4px 0 0}.facts .wide{grid-column:1/-1}.detailtext{font-size:12px;color:var(--muted);line-height:1.9}.holdingsdetail{max-height:240px;overflow:auto}.holdingsdetail table{font-size:11px}.minirows{display:grid;gap:0}.minirow{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--line);font-size:12px}.minirow span{color:var(--muted)}.orderbox{margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.orderbox .chips button{padding:6px 18px}.orderbox label{font-size:11px;color:var(--muted)}.orderfields{display:grid;grid-template-columns:1.4fr 1fr;gap:10px;margin-top:12px}.orderpreview{font-size:11px;color:var(--muted);line-height:1.9;margin:12px 0}.orderbox button[type=submit]{width:100%}.orderbox.sell button[type=submit]{background:#e7b5a4;color:#302016}.pagination{display:flex;justify-content:center;align-items:center;gap:15px;padding:24px 0}.pagination button{padding:7px 15px;background:#26373a;color:var(--text)}.empty{padding:36px 20px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:12px;grid-column:1/-1}.macro{grid-template-columns:repeat(6,1fr)}.macro .stat{padding:15px}.macro strong{font-size:22px}.lifegrid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.lifegrid .panel{margin:0}.biglife{font-size:26px;color:var(--accent);margin-bottom:12px}details{margin:14px 0}summary{cursor:pointer;color:var(--accent);font-size:12px}details p{font-size:12px;color:var(--muted)}.birthbanner{background:#273b30;border:1px solid #5f7755;border-radius:12px;padding:20px;display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px}.birthbanner h2{margin-bottom:5px}.birthbanner p{font-size:12px;margin:0;color:#bccdb9}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.warning{color:var(--gold)}.positive{color:var(--accent)}.negative{color:var(--red)}a{color:var(--accent)}footer{font-size:10px;color:var(--muted);padding:24px 0}dialog{background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:16px;padding:30px;max-width:480px;width:90vw}dialog::backdrop{background:#000a}dialog label{font-size:12px}dialog p{font-size:13px}[hidden]{display:none!important}
.quicktrade{width:100%;margin:4px 0 8px}.detail{scroll-margin-top:140px}.detailtabs button{font-size:11px;white-space:nowrap}.taxrecord{padding:16px 0;border-bottom:1px solid var(--line);margin-bottom:14px}#payTaxForm{margin-top:20px}#payTaxForm button{margin-top:10px}#view-fiscal h3{margin-top:22px}
@media(min-width:1450px){.assetgrid{grid-template-columns:repeat(3,minmax(0,1fr))}.marketlayout{grid-template-columns:minmax(0,1fr) 410px}}
@media(max-width:1150px){.app{grid-template-columns:175px minmax(0,1fr)}main{padding:20px}.marketlayout{grid-template-columns:minmax(0,1fr) 340px;gap:16px}.assetgrid{grid-template-columns:1fr}.overviewgrid{grid-template-columns:1fr}.sidebar{padding:24px 10px}.stats{gap:10px}.stat{padding:14px}.stat strong{font-size:21px}.brand span{display:none}}
@media(max-width:800px){.topbar{padding:0 16px;gap:12px;height:68px}.topbar .brand{font-size:16px}.clock{font-size:10px}.topbar #next{font-size:11px;padding:10px}.app{display:block}.sidebar{height:auto;position:sticky;top:68px;z-index:9;background:var(--bg);padding:8px 12px;border-bottom:1px solid var(--line);border-right:0}.sidebar>div>.eyebrow,.sidebottom{display:none}nav{flex-direction:row;justify-content:space-between;gap:3px}.nav{font-size:11px;gap:4px;padding:9px 10px}main{padding:18px}.pageheading{align-items:start;margin-bottom:20px}.pageheading h1{font-size:24px}.pageheading .badge{display:none}.stats{grid-template-columns:1fr 1fr}.markettools{grid-template-columns:1fr 1fr}.search{grid-column:1/-1}.marketlayout{grid-template-columns:1fr}.assetgrid{grid-template-columns:1fr 1fr}.detail{position:static;max-height:none}.newscards,.lifegrid{grid-template-columns:1fr}.macro{grid-template-columns:repeat(3,1fr)}.panel{padding:19px}.birthbanner{align-items:start;flex-direction:column}.cardtitle{font-size:12px}.assetcard{padding:14px}.sidebottom.mobile{display:flex}.pageheading .secondary{font-size:11px;padding:9px}.chips button{padding:7px 13px}.overviewgrid{gap:0}}
@media(max-width:440px){.assetgrid{grid-template-columns:1fr}.brand{font-size:13px!important}.clock{max-width:110px}.nav{padding:8px 7px}.nav span{font-size:10px}.cardbottom .price{font-size:16px}}
.brokergrid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:20px;margin:20px 0}.brokergrid label{display:block;margin:14px 0}.brokergrid input,.brokergrid select{width:100%}.chartcontrols,.chartperiods,.chartheadline,.chartsummary{display:flex;gap:10px;align-items:center;justify-content:space-between}.chartperiods button{padding:5px 9px;background:transparent;color:var(--muted,#a3b2b2)}.chartperiods button.active{background:#d4edac;color:#14231d}.chartmode{font-size:12px}.chartmode select{max-width:120px}.assetpricechart{width:100%;height:auto;display:block;margin-top:14px}.chartcursor{width:100%;accent-color:#d4edac}.chartsummary{font-size:11px;color:#a3b2b2;flex-wrap:wrap}.chartheadline{margin-top:16px;font-size:13px}.assetchart{margin:16px 0}.positive{color:#d4edac}.negative{color:#f0a998}.tablewrap{overflow-x:auto}#broker>.panel{margin-bottom:20px}#orderReviewDialog{max-width:540px}#orderReviewText{line-height:1.9}@media(max-width:900px){.brokergrid{grid-template-columns:1fr}.chartcontrols{flex-wrap:wrap}.sidebar nav{overflow-x:auto}}
