/* Midnight campaign: shared game shell and investment terminal. */
:root{--bg:#08070d;--panel:#111019;--line:#292334;--text:#f0ecfa;--muted:#9991ad;--accent:#b99aff;--gold:#e5c58b;--blue:#89b5ff;--red:#fa8d9f;--radius:10px}
body{background:radial-gradient(ellipse at 85% 0,#26144266 0,transparent 43%),#08070d;color:var(--text);font-family:'Noto Sans Thai',Tahoma,system-ui,sans-serif;letter-spacing:.1px}
button{border-radius:6px;color:#140c26;transition:background .15s,border-color .15s,box-shadow .15s}button:hover{filter:brightness(1.12)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #c7acff;outline-offset:3px}button:not(:disabled):active{transform:translateY(1px)}
.topbar{height:98px;padding:0 26px;gap:24px;background:#0b0912f5;border-bottom:1px solid #4b3568;box-shadow:0 4px 32px #0008;backdrop-filter:blur(14px)}
.brand{display:flex;align-items:center;gap:10px;font:800 18px system-ui,sans-serif;letter-spacing:1px}.brandmark{display:grid;place-items:center;flex-shrink:0;font-style:normal;width:37px;height:42px;background:linear-gradient(140deg,#c9a4ff,#6b36c8);color:#10071d;clip-path:polygon(22% 0,100% 0,100% 75%,78% 100%,0 100%,0 25%);font-size:23px}.brand .brandname{margin:0;color:#eee6ff;font-size:17px;line-height:1.2}.brand small{display:block;color:#a38abf;font-size:9px;letter-spacing:3px;margin-top:5px}
.gamehud{display:flex;align-items:center;gap:28px;flex:1;min-width:0}.hudlevel{display:flex;align-items:center;gap:10px;border-left:1px solid #35283f;padding-left:24px}.levelgem{display:grid;place-items:center;width:38px;height:38px;background:#251635;border:1px solid #75539c;color:#dcc6ff;border-radius:9px;transform:rotate(-4deg);font:700 17px system-ui}.hudlabel{font-size:9px;letter-spacing:1px;display:block;color:#9b89af}.hudlevel strong{display:block;font-size:12px;font-weight:500;margin-top:3px}.hudwealth strong{font:600 17px system-ui;color:#ded2fb;display:block;margin-top:4px;white-space:nowrap}.hudquest{flex:1;max-width:220px;min-width:80px}.hudquest b{float:right;color:#d3b6ff}.xptrack{height:6px;background:#241b30;border:1px solid #443152;margin-top:9px;overflow:hidden;transform:skewX(-12deg)}.xptrack i{display:block;height:100%;background:linear-gradient(90deg,#7040b6,#d7b7ff);box-shadow:0 0 10px #b579ff}
.clock{margin-left:auto;max-width:145px;font-size:11px;color:#a89bbd;line-height:1.6}.topbar #next{background:linear-gradient(135deg,#ad80ef,#8252cf);color:#fff;border:1px solid #c3a0f5;box-shadow:0 0 22px #8640dc30;white-space:nowrap;padding:12px 18px;font-size:12px}
.app{grid-template-columns:190px minmax(0,1fr);max-width:1920px}.sidebar{height:calc(100vh - 98px);top:98px;background:#0b0911dd;border-right:1px solid #282031;padding:26px 12px}.sidebar .eyebrow{font-size:9px;letter-spacing:1px;color:#806c97}.nav{position:relative;border:1px solid transparent;border-radius:5px;font-size:12px;padding:12px 13px}.nav.active{background:linear-gradient(90deg,#3a2452,#1b1427);border-color:#4a3264;color:#ddc7ff;box-shadow:inset 3px 0 #b586fa}.nav:hover{background-color:#21172d}.sidebottom{border-top:1px solid #282031;padding-top:16px}.sidebottom .quiet{font-size:11px;color:#887a9b}.seedlabel{color:#a381c6}
main{padding:22px 28px}#status{color:#8f7ca9;font-size:10px;min-height:18px;margin-bottom:12px}.pageheading{margin-bottom:24px}.pageheading h1{font-size:28px;font-weight:700;letter-spacing:-.6px}.eyebrow{color:#a889d2;letter-spacing:2px;font-size:9px}.pageheading .muted{color:#8e829e;font-size:12px}h2{font-size:16px}.panel{background:linear-gradient(145deg,#15111e,#100e17);border-color:#2d233a;border-radius:10px;box-shadow:0 6px 24px #0002}.panel .sectionheading{border-bottom:1px solid #292033;padding-bottom:12px}.stat{position:relative;overflow:hidden;border-color:#31233e;background:linear-gradient(120deg,#1d1429,#100d17);border-radius:8px}.stat:before{content:'';position:absolute;top:0;left:0;width:32px;height:2px;background:#9063bd}.stat strong{font-family:system-ui,sans-serif;font-size:26px;font-weight:600;color:#e4d9f4}.stat:first-child{border-color:#624185;background:linear-gradient(120deg,#2a193e,#171020)}.stat:first-child strong{color:#d8baff}.secondary,.pagination button{background:#20162c;color:#c7b8d9;border:1px solid #49325f}.quiet,.textbutton{color:#b89cd6}.chips button{border-radius:5px;background:#100c17;border-color:#30253d;color:#9e8caf}.chips button.selected{background:#38234f;border-color:#8554b7;color:#e5ccff}.badge,.tag{border-color:#443052;color:#b6a0cc;background:#21152c80;border-radius:4px}.badge{font-size:9px}.news{background:linear-gradient(145deg,#16101f,#100d17);border-color:#30223d;border-radius:8px}.news small{color:#ac86d2}.news h3{font-size:15px}.news p{color:#a598b5}.birthbanner{background:linear-gradient(110deg,#2f1b45,#150f21);border-color:#6b4689;position:relative;overflow:hidden}.birthbanner:after{content:'LIFE 01';position:absolute;right:22px;top:-15px;opacity:.04;font:900 100px system-ui;pointer-events:none}.birthbanner p{color:#bca6d0}.biglife{color:#ceb1f2}.lifegrid{margin-bottom:20px}.assetcard{background:linear-gradient(145deg,#181120,#100c17);border-color:#30233c;border-radius:8px;min-height:158px;transition:border-color .15s,box-shadow .15s,transform .15s}.assetcard:hover{border-color:#755093;box-shadow:0 4px 20px #0005;filter:none;transform:translateY(-2px)}.assetcard.active{border-color:#a675d7;box-shadow:inset 0 0 0 1px #a675d733,0 0 18px #7e3eb41a}.asseticon{border-radius:6px;background:#302040;color:#d0b0f5}.asseticon.bond{background:#20263e}.asseticon.gold{background:#362b20}.asseticon.multi{background:#312044}.cardtitle{font-size:13px}.cardbottom .price{font-family:system-ui;font-weight:600;color:#e0d3f2}.ticker{color:#9277ac;font-family:system-ui;letter-spacing:1px}.markettools{padding-top:16px}.detail{top:118px;max-height:calc(100vh - 140px);border-top:2px solid #8d5ab8}.detail h2{font-size:20px}.detailtabs button{color:#9984ad}.detailtabs button.selected{color:#d8b9ff;border-color:#ae7ae1}.quote strong{font-family:system-ui;font-weight:600}.quicktrade{background:linear-gradient(110deg,#9665ce,#7041a7);color:#fff;border:1px solid #ac7de3}input,select{background:#0b0811;border-color:#3a294a;color:#e1d5ee;border-radius:5px}input:hover,select:hover{border-color:#73518d}th{color:#967daa;font-size:10px;letter-spacing:.3px}td,th{border-color:#2d2238}tbody tr:hover{background:#a86fea08}.minirow{border-color:#30213c}.positive{color:#c7a5ff}.negative{color:#fa8d9f}.linekey.benchmark{background:#7182a3}footer{color:#665574;border-top:1px solid #241a2e;margin-top:22px}
/* Chart and order ticket share one workspace; research never requires a new page. */
.terminalswitch{display:flex;align-items:center;gap:16px;padding:12px 0 18px;border-top:1px solid #2b1f37}.terminalswitch>label{width:245px;flex-shrink:0;color:#967dad;font-size:10px}.terminalstrip{display:flex;align-items:center;gap:7px;overflow:auto;min-width:0;padding:6px 0}.terminalstrip button{background:#140d1e;border:1px solid #372248;color:#ae90c7;white-space:nowrap;font:10px system-ui;padding:9px 12px}.terminalstrip button b{display:block;color:#d2bce5;margin-top:5px;font-weight:500}.terminalstrip button.selected{border-color:#9c6bd0;background:#2b193d}.terminalbalances{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}.terminalbalances .stat{padding:12px 16px;color:#a594b5;font-size:10px}.terminalbalances .stat strong{font-size:21px;margin-top:3px}.brokergrid{grid-template-columns:minmax(0,1fr) 310px;gap:16px;align-items:start;margin-top:0}.terminalmain{min-width:0}.chartpanel{padding:20px;margin-bottom:16px;background:linear-gradient(160deg,#13101d,#0d0a13)}.chartpanel h2{font:600 25px system-ui;color:#e4d1fa}.chartpanel .sectionheading>span{font:10px system-ui;color:#9979b5}.chartpanel .assetchart{margin-bottom:0}.assetpricechart{min-height:190px}.chartperiods button{border:1px solid transparent;border-radius:4px;font-size:10px;color:#a38ab8}.chartperiods button.active{background:#39204f;color:#e1bbff;border-color:#6e438c}.chartmode{color:#8f789f}.chartmode select{font-size:10px;padding:6px 10px;margin:0}.chartheadline{font:11px system-ui;color:#b7a4ca}.chartheadline strong{font-size:16px}.chartcursor{accent-color:#a573df;height:10px;padding:0;border:0;background:none;margin-bottom:18px}.chartsummary{color:#826c95;font-size:10px}.chartsummary span{border-left:1px solid #3a2949;padding-left:8px}.ticketpanel{padding:20px;position:sticky;top:116px;border-top:2px solid #b27bf0;background:linear-gradient(155deg,#21152e,#110c19);box-shadow:0 6px 30px #0004}.ticketpanel h2{font-size:15px;border-bottom:1px solid #392446;padding-bottom:12px}.ticketpanel .chips{display:grid;grid-template-columns:1fr 1fr}.ticketpanel .chips button{border-radius:5px;font-weight:600}.ticketpanel [data-broker-side=buy].selected{background:#442661;color:#e9d3ff;border-color:#ab78da}.ticketpanel [data-broker-side=sell].selected{background:#572536;color:#ffd3df;border-color:#bd6684}.ticketpanel label{font-size:11px;color:#a58ab9}.ticketpanel input,.ticketpanel select{font-size:12px}.ticketpanel button[type=submit]{width:100%;background:linear-gradient(120deg,#aa70e0,#7444b2);border:1px solid #b684e8;color:white;box-shadow:0 5px 22px #7331aa30}.orderpreview{padding:10px;background:#0d0815;border:1px solid #3d2850;border-radius:5px;color:#bba0cf}.researchpanel{padding:0;overflow:hidden}.terminaltabs{display:flex;gap:0;border-bottom:1px solid #33223f;background:#17101f}.terminaltabs button{background:transparent;color:#a185b6;border-radius:0;padding:13px 18px;font-size:11px;border-bottom:2px solid transparent}.terminaltabs button.selected{color:#ddbeff;border-color:#b17ce8;background:#41225233}.researchbody{padding:22px}.researchintro{display:flex;gap:16px;align-items:start;margin-bottom:16px}.assetemblem{width:42px;height:42px;flex-shrink:0;display:grid;place-items:center;background:#30203e;color:#d5b0f2;border:1px solid #58386b;border-radius:8px;font:700 15px system-ui}.researchintro p{font-size:12px;color:#ac96bd;line-height:1.9;margin:5px 0}.researchintro h3{font-size:15px}.researchmetrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 12px}.researchmetric{min-width:0;padding:9px 0;border-bottom:1px solid #2d2038}.researchmetric span{display:block;font-size:10px;color:#937da6}.researchmetric strong{display:block;font-size:12px;color:#ddcbed;font-weight:500;margin-top:6px;overflow-wrap:anywhere}.statementgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.statementgrid .researchmetric{display:flex;align-items:center;justify-content:space-between;gap:15px}.statementgrid .researchmetric strong{margin-top:0;font:13px system-ui}.researchheading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.researchheading h3{margin:0}.constituents{display:grid;grid-template-columns:1fr 1fr;gap:16px 24px;max-height:350px;overflow:auto}.constituent>div:first-child{display:flex;align-items:center;justify-content:space-between;font-size:11px;gap:10px}.constituent button{font-size:11px;padding:0}.weighttrack{height:4px;background:#291c36;margin-top:7px}.weighttrack i{height:100%;display:block;background:linear-gradient(90deg,#694094,#c18aec)}dialog{background:linear-gradient(145deg,#261534,#100b18);border-color:#6b4487;box-shadow:0 20px 120px #000b}dialog::backdrop{background:#050309d9;backdrop-filter:blur(5px)}
@media(min-width:1550px){.brokergrid{grid-template-columns:minmax(0,1fr) 350px}.chartpanel .assetpricechart{max-height:400px}.gamehud{gap:40px}.hudquest{max-width:300px}}
@media(max-width:1200px){.gamehud{gap:18px}.hudquest{display:none}.topbar{gap:18px}.app{grid-template-columns:165px minmax(0,1fr)}.hudlevel{padding-left:14px}.brokergrid{grid-template-columns:minmax(0,1fr) 280px}.brokergrid .panel{padding:17px}.researchmetrics{grid-template-columns:1fr 1fr}.terminaltabs button{padding:12px;font-size:10px}.pageheading h1{font-size:25px}}
@media(max-width:1000px){.hudwealth{display:none}.brokergrid{grid-template-columns:1fr}.ticketpanel{position:static;grid-row:auto}.brokergrid .ticketpanel{border:1px solid #70488d;border-top:2px solid #b27bf0}.terminalmain{display:contents}.chartpanel{grid-row:1}.ticketpanel{grid-row:2}.researchpanel{grid-row:3}.terminalswitch{flex-direction:column;align-items:stretch;gap:8px}.terminalswitch>label{width:100%}.terminalswitch select{max-width:none}.terminalstrip{padding-bottom:8px}.gamehud{flex:1}}
@media(max-width:800px){.topbar{height:85px;gap:12px;padding:0 15px}.brand .brandname{font-size:14px;display:block}.brand small{font-size:7px;letter-spacing:2px}.brandmark{width:28px;height:33px;font-size:20px}.gamehud{display:none}.clock{margin-left:auto;max-width:140px;font-size:10px}.topbar #next{padding:10px;font-size:10px}.app{display:block}.sidebar{top:85px;height:auto;padding:7px 10px;background:#0e0a16f5;backdrop-filter:blur(10px);border-bottom:1px solid #39234c}.sidebar nav{justify-content:flex-start;overflow-x:auto;gap:4px;scrollbar-width:none}.nav{flex-shrink:0;padding:9px 12px;font-size:11px;white-space:nowrap}.nav.active{box-shadow:inset 0 -2px #ba8bf1}.sidebar>div>.eyebrow{display:none}.sidebottom{display:none}main{padding:18px 15px}.pageheading h1{font-size:24px}.panel{padding:19px}.detail{position:static;max-height:none}.terminalbalances .stat{padding:10px}.terminalbalances .stat strong{font-size:17px}.terminalbalances{gap:7px}.terminaltabs button{flex:1;padding:12px 7px}.researchbody{padding:18px}.researchmetrics{grid-template-columns:1fr 1fr}.constituents{grid-template-columns:1fr}.assetgrid{grid-template-columns:1fr 1fr}.pageheading .eyebrow{letter-spacing:1px;font-size:8px}.statementgrid{gap:0 14px}.terminalstrip button{padding:9px 14px}.sidebar .nav span{font-size:11px}}
@media(max-width:450px){.brand .brandname{font-size:11px}.brand small{font-size:6px}.brand{gap:6px}.topbar{gap:9px}.clock{max-width:105px;font-size:9px}.topbar #next{padding:9px 8px;font-size:9px}.assetgrid{grid-template-columns:1fr}.terminalbalances .stat strong{font-size:15px}.terminalbalances .stat{font-size:9px;padding:9px}.researchmetrics,.statementgrid{grid-template-columns:1fr 1fr}.researchheading{align-items:start;flex-direction:column}.researchmetric strong{font-size:11px}.pageheading{gap:10px}.pageheading h1{font-size:22px}.chartcontrols{gap:6px}.chartperiods{gap:2px}.chartperiods button{padding:5px 8px}.chartmode select{max-width:95px}.hudlabel{font-size:8px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.calendarupcoming{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.calendaritem{padding:12px 0;border-bottom:1px solid var(--line);font-size:11px;display:flex;gap:10px;justify-content:space-between}.calendaritem b{font:11px system-ui;white-space:nowrap;color:#d5b5ff}.calendarupcoming .panel{padding:20px}.earningsgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.earningscard{display:flex;flex-direction:column;align-items:start;gap:7px;text-align:left;background:#1d1229;border:1px solid #4b2d60;color:#c7acd9;padding:15px;font-size:10px}.earningscard strong{font-size:12px;color:#e4d0f2}.corporatefiling{padding:10px 0;border-bottom:1px solid var(--line)}.reporttools{display:flex;gap:14px;margin:15px 0}.reporttools label{font-size:10px;color:var(--muted);flex:1}.financialtable td{font-variant-numeric:tabular-nums;font-size:11px}.financialtable td:first-child{min-width:140px}.researchbody h4{font-size:12px;color:#d2b2ed;margin:24px 0 8px}.financialtable{min-width:440px}@media(max-width:1000px){.calendarupcoming{grid-template-columns:1fr}.earningsgrid{grid-template-columns:1fr 1fr}}@media(max-width:500px){.earningsgrid{grid-template-columns:1fr}.reporttools{flex-direction:column;gap:5px}}
.retirehero{padding:34px;margin:12px 0 24px;border:1px solid #765395;background:radial-gradient(ellipse at 80% 0,#6c3b9d55,transparent 70%),linear-gradient(135deg,#21122f,#100b18);border-radius:12px;position:relative;overflow:hidden}.retirehero h2{font-size:28px;margin:12px 0}.retirehero h2 b{font:800 70px system-ui;color:#d5b1ff;letter-spacing:-3px}.retirehero>p{max-width:780px;color:#bfabcF}.retirehero>button{margin:12px 0;background:linear-gradient(130deg,#c292ff,#8b54cf);color:#1b0d2a}.retiregrid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,1fr);gap:20px}.retiregrid label{display:block;font-size:12px;color:#ae94c1;margin:12px 0}.retirementchart{width:100%;min-height:180px}.retirehero progress{height:12px;accent-color:#bd8aff;max-width:600px}.dividendpanel .researchmetrics{margin:14px 0}.dividendpanel{margin-top:15px}.retiregrid .panel{min-width:0}#retireTrade button{margin-top:12px;width:100%}#confirmRetirement{background:linear-gradient(120deg,#b17bea,#8250bc);color:white}.retiregrid .orderpreview:empty{display:none}@media(max-width:900px){.retiregrid{grid-template-columns:1fr}.retirehero{padding:24px}.retirehero h2{font-size:24px}.retirehero h2 b{font-size:54px}}@media(max-width:450px){.retirehero{padding:20px}.retirehero h2 b{font-size:44px}.retirehero h2{font-size:21px}.retiregrid{gap:0}}
.is-terminal>.pageheading,.is-terminal>#categories,.is-terminal>.markettools,.is-terminal>.marketlayout{display:none}.investmentworkspace{display:grid;grid-template-columns:190px minmax(0,1fr);gap:20px;align-items:start}.investmentworkspace>#broker{min-width:0}.workspaceassets{position:sticky;top:115px;max-height:calc(100vh - 140px);border:1px solid #372442;border-radius:8px;background:#110b19;padding:12px;overflow:hidden}.workspaceassets>label{font-size:10px;color:#aa8bbf}.workspacelist{overflow:auto;max-height:calc(100vh - 235px);margin-top:12px}.workspacelist button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:7px;text-align:left;background:none;border-bottom:1px solid #271a32;border-radius:0;color:#bda3ce;padding:11px 5px;font:11px system-ui}.workspacelist button small{display:block;font:9px Tahoma;max-width:105px;color:#8f779f;margin-top:5px}.workspacelist button b{font-size:11px;color:#dfc6f0}.workspacelist button.selected{background:#382046;color:#e3c7fb;box-shadow:inset 2px 0 #bc87ef}.investmentworkspace .brokergrid{grid-template-columns:minmax(0,1fr) 270px}.investmentworkspace .terminalswitch>label{flex:1;width:auto}.walletbalances{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:22px 0}.walletbalances span{font-size:11px;color:#ac90bd}.walletbalances strong{display:block;font:600 24px system-ui;margin-top:5px}#walletDialog{max-width:580px}#walletDialog label{display:block;margin:15px 0}.educationgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:15px 0}.educationcard{display:flex;flex-direction:column;gap:8px;text-align:left;background:#1a1025;border:1px solid #49305f;color:#c8acd9;padding:20px;font-weight:400}.educationcard strong{font-size:14px;color:#ead9f4}.educationcard span{font-size:12px}.educationcard small{font-size:11px;line-height:1.8;color:#a88eba}.educationcard.selected{border-color:#bd85ed;background:linear-gradient(140deg,#3c2253,#1c112b);box-shadow:0 0 20px #8650b622}.educationchoices>label{display:block;font-size:12px;color:#b89bce;max-width:450px}.valuationpanel{border-top:2px solid #8d5db6}.valuationpanel .researchmetrics{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:1400px){.investmentworkspace{grid-template-columns:155px minmax(0,1fr);gap:14px}.investmentworkspace .brokergrid{grid-template-columns:1fr}.investmentworkspace .terminalmain{display:contents}.investmentworkspace .chartpanel{grid-row:1}.investmentworkspace .ticketpanel{grid-row:2;position:static}.investmentworkspace .valuationpanel{grid-row:3}.investmentworkspace .researchpanel{grid-row:4}.investmentworkspace .dividendpanel{grid-row:5}.workspacelist button{flex-wrap:wrap}.workspacelist button small{max-width:125px}}@media(max-width:900px){.educationgrid{grid-template-columns:1fr}.investmentworkspace{display:block}.workspaceassets{position:static;max-height:240px;margin-bottom:20px}.workspacelist{max-height:160px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.workspacelist button{padding:9px;justify-content:space-between}.workspacelist button small{max-width:120px}.valuationpanel .researchmetrics{grid-template-columns:1fr 1fr}}@media(max-width:450px){.walletbalances strong{font-size:20px}.investmentworkspace .pageheading h1{font-size:21px}.workspacelist{grid-template-columns:1fr 1fr}.terminalbalances .stat strong{font-size:14px}.educationcard{padding:16px}}

@media(min-width:1100px){.investmentworkspace .brokergrid{display:grid;grid-template-columns:minmax(0,1fr) 285px}.investmentworkspace .terminalmain{display:block;min-width:0}.investmentworkspace .ticketpanel{position:sticky;top:20px;align-self:start;grid-row:auto}.investmentworkspace .chartpanel,.investmentworkspace .valuationpanel,.investmentworkspace .researchpanel,.investmentworkspace .dividendpanel{grid-row:auto}}

.contractterms{display:grid;grid-template-columns:minmax(150px,1fr) minmax(0,1.6fr);gap:10px 18px;font-size:12px}.contractterms dt{color:#ab94be}.contractterms dd{margin:0;color:#e7ddee}.workspaceassets{display:flex;flex-direction:column}.workspaceassets>label{display:block;flex-shrink:0}.workspaceassets select,.workspaceassets input{width:100%;margin:4px 0 9px;padding:7px;font-size:11px}.workspaceassets .workspacelist{min-height:0;overflow:auto;flex:1}@media(max-width:900px){.workspaceassets{max-height:none}.workspaceassets .workspacelist{max-height:220px;flex:auto}}@media(max-width:500px){.contractterms{grid-template-columns:1fr;gap:4px}.contractterms dd{margin-bottom:12px}}

.quote-change{display:inline-flex;align-items:baseline;gap:5px;font-variant-numeric:tabular-nums;font-size:13px;font-weight:700;white-space:nowrap}.quote-change small{font-size:10px;font-weight:400;color:#a99bb9}.quote-change.is-positive{color:#45dc99!important}.quote-change.is-negative{color:#ff7189!important}.quote-change.is-neutral,.quote-change.is-unavailable{color:#a99bb9!important}.livequote{display:flex;align-items:baseline;gap:15px;flex-wrap:wrap}.workspacelist button>b{display:flex;flex-direction:column;align-items:flex-end;gap:3px}.workspacelist .quote-change{font-size:11px}.chartheadline .quote-change{font-size:15px}.chartsummary .quote-change{font-size:12px}

/* Price and percentage share the same previous-round market direction. */
:is(.livequote,.price,.workspacelist button>b):has(>.quote-change.is-positive),.quote:has(>.quote-change.is-positive)>strong{color:#45dc99!important}
:is(.livequote,.price,.workspacelist button>b):has(>.quote-change.is-negative),.quote:has(>.quote-change.is-negative)>strong{color:#ff7189!important}

.family-pyramid{display:flex;align-items:center;flex-direction:column;gap:4px;max-width:340px;margin:20px auto}.family-tier{background:#2a2037;color:#ac9abd;padding:7px 3px;text-align:center;font-size:11px;border:1px solid #49325d;border-radius:5px}.family-tier.current{background:#70459b;color:#fff;border-color:#cf9aff;font-weight:700;box-shadow:0 0 14px #ad6ded33}

.finance-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;align-items:end;margin:18px 0}.finance-form label{display:flex;flex-direction:column;gap:6px}.finance-form .orderpreview{grid-column:1/-1;line-height:1.9}.bank-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.bank-card{border:1px solid #3a294c;border-radius:9px;padding:18px;background:#140e20}.bank-card.selected{border-color:#b080e0}.bank-card button{display:block;margin-top:10px;font-size:11px}.debt-order{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:12px 0;border-bottom:1px solid #30223f}.debt-order>span{min-width:100px}.debt-order input{width:130px}.finance-summary strong{color:#d7b4f4}.advanced-position{display:flex;flex-direction:column;gap:7px;padding:15px;border-top:1px solid #3a294c;font-size:12px}.advanced-position button{align-self:flex-start}.advanced-panel .chips{flex-wrap:wrap}.advanced-panel .chips button{font-size:11px}.advanced-panel{border-color:#694390}

/* Expandable holdings and the right-hand trading column. */
.holding-list{margin-top:18px}.holding-card{border-bottom:1px solid #392a48;background:#100c17}.holding-card summary{display:grid;grid-template-columns:minmax(0,1fr) minmax(130px,.8fr) minmax(150px,.8fr);gap:16px;align-items:center;cursor:pointer;padding:23px 16px;list-style:none}.holding-card summary::-webkit-details-marker{display:none}.holding-card summary:focus-visible{outline:2px solid #be8aff;outline-offset:-2px}.holding-card summary b{font:600 18px system-ui}.holding-card small{display:block;font-size:12px;margin-top:7px}.holding-identity small{color:#ac95bf}.holding-value,.holding-gain{text-align:right}.holding-value small{color:#ac95bf}.holding-expand{color:#ac95bf;font-size:10px!important}.holding-expanded{padding:20px;background:#1b1423;border-top:1px solid #392a48}.holding-expanded dl{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:0 0 20px}.holding-expanded dt{font-size:12px;color:#b49fc4;margin-bottom:10px}.holding-expanded dd{margin:0;font-size:19px}.holding-gain.positive{color:#59d49a}.holding-gain.negative{color:#ff5378}.holding-gain.neutral{color:#b8a9c8}.broker-sidebar{min-width:0;align-self:start;display:flex;flex-direction:column;gap:20px}.broker-sidebar .ticketpanel{position:static!important;margin:0}.broker-sidebar .advanced-panel{margin:0;padding:18px;min-width:0}.broker-sidebar .finance-form{grid-template-columns:1fr}.broker-sidebar .chips{display:flex;flex-direction:column;align-items:stretch}.broker-sidebar .chips button{white-space:normal}.broker-sidebar .advanced-panel h3{font-size:16px}.broker-sidebar .advanced-panel input,.broker-sidebar .advanced-panel select{min-width:0;width:100%}.broker-sidebar .orderpreview{overflow-wrap:anywhere}
@media(min-width:1100px){.investmentworkspace .brokergrid .terminalmain{display:block}.investmentworkspace .broker-sidebar{grid-column:2;grid-row:1}.investmentworkspace .terminalmain{grid-column:1;grid-row:1}}
@media(max-width:1099px){.investmentworkspace .brokergrid{display:flex;flex-direction:column}.investmentworkspace .terminalmain{display:block;width:100%}.investmentworkspace .broker-sidebar{width:100%;order:-1}.investmentworkspace .broker-sidebar .chips{flex-direction:row;flex-wrap:wrap}.investmentworkspace .broker-sidebar .finance-form{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.holding-card summary{grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:18px 8px;gap:12px}.holding-identity{grid-row:span 2}.holding-gain{grid-column:2}.holding-card summary b{font-size:16px}.holding-expanded dl{grid-template-columns:1fr}.investmentworkspace .broker-sidebar .finance-form{grid-template-columns:1fr}}

/* Strong entry points for derivatives; denser portfolio rows. */
.broker-sidebar #advancedPanel{border:1px solid #a66ddd;border-top:3px solid #c28bff;background:linear-gradient(145deg,#261434,#171020)}
.broker-sidebar #advancedPanel .chips button[data-advanced-mode]{background:#663a92;color:#fff;border:1px solid #bd87ec;font-size:13px;font-weight:700;line-height:1.5;min-height:46px;padding:11px 12px;box-shadow:0 3px 12px #0003}
.broker-sidebar #advancedPanel .chips button[data-advanced-mode="margin"]{background:#3e367b;border-color:#a49aef}
.broker-sidebar #advancedPanel .chips button[data-advanced-mode]:hover{background:#8350b5;border-color:#e2bcff}
.broker-sidebar #advancedPanel .chips button[data-advanced-mode].selected{background:#9955d1;border-color:#eed5ff;box-shadow:inset 3px 0 #eed5ff}
.broker-sidebar #advancedPanel .chips button:focus-visible{outline:3px solid #f0d5ff;outline-offset:3px}
.broker-sidebar #advancedPanel .chips button[data-go="finance"]{background:#261b34;color:#e1cceb;border-color:#79598d;font-size:12px}
.broker-sidebar #advancedPanel>.caption{color:#cbb6dc;line-height:1.7}
#portfolio .holding-list{margin-top:12px}
#portfolio .holding-card summary{padding:10px 12px;gap:12px;grid-template-columns:minmax(0,1fr) minmax(115px,.65fr) minmax(140px,.65fr)}
#portfolio .holding-card summary b{font-size:14px;line-height:1.4}
#portfolio .holding-card small{font-size:11px;margin-top:3px;line-height:1.45}
#portfolio .holding-identity small:first-of-type{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
#portfolio .holding-expand{display:none}
#portfolio .holding-gain{position:relative;padding-right:18px}
#portfolio .holding-gain::after{content:'⌄';position:absolute;right:0;top:3px;color:#d4b4ed;font-size:16px}
#portfolio .holding-card[open] .holding-gain::after{content:'⌃'}
#portfolio .holding-card summary:hover{background:#261a32}
#portfolio .holding-expanded{padding:14px 16px}
#portfolio .holding-expanded dl{gap:16px;margin-bottom:14px}
#portfolio .holding-expanded dd{font-size:16px}
@media(max-width:600px){#portfolio .holding-card summary{grid-template-columns:minmax(0,1fr) minmax(130px,1fr);gap:5px 10px;padding:10px 8px}#portfolio .holding-card summary b{font-size:13px}#portfolio .holding-gain{grid-column:2}#portfolio .holding-identity{grid-row:span 2}#portfolio .holding-expanded dl{grid-template-columns:1fr 1fr;gap:12px}#portfolio .holding-expanded dt{font-size:11px}#portfolio .holding-expanded dd{font-size:14px}}
.portfolio-total{display:flex;flex-direction:column;gap:7px;padding:16px 0 20px}.portfolio-total>span{font-size:13px;color:#c5b1d6}.portfolio-total>strong{font:700 29px system-ui;color:#f0e2ff}.portfolio-total small{font-size:11px;color:#bba6ce;line-height:1.6}.portfolio-deposit{display:flex;align-items:center;gap:16px;padding:14px 12px;border-bottom:1px solid #392a48;font-size:13px}.portfolio-deposit>span{flex:1}.portfolio-deposit small{display:block;color:#ac95bf;font-size:11px;margin-top:4px}.portfolio-deposit strong{font:600 14px system-ui}.portfolio-deposit button{font-size:11px}@media(max-width:600px){.portfolio-deposit{flex-wrap:wrap;gap:10px}.portfolio-total>strong{font-size:25px}}
.portfolio-total>strong{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.portfolio-total>strong .quote-change{font-size:19px}.portfolio-total>strong .quote-change small{font-size:11px}.portfolio-month-change{font:600 13px system-ui}.portfolio-month-change.positive{color:#59d49a}.portfolio-month-change.negative{color:#ff5378}.portfolio-month-change.neutral{color:#bba6ce}
.timecontrols{display:flex;flex-direction:column;gap:5px;min-width:190px}.timecontrols #skipForm{display:flex;gap:6px;align-items:center;font-size:10px;color:#cfb9e1}.timecontrols #skipForm input{width:54px;min-width:0;padding:6px;font-size:12px}.timecontrols #skipForm button{padding:7px 10px;font-size:11px}.timecontrols #skipProgress{font-size:10px;color:#dac1eb;max-width:240px}.automation-panel h3{font-size:16px}.auto-plan{display:flex;flex-direction:column;gap:7px;padding:12px 0;border-top:1px solid #49335d;font-size:12px}.auto-plan button{align-self:flex-start;font-size:11px}.automation-panel{border-color:#8a5bb1}.automation-panel form>button{background:#63378b;color:#fff;border:1px solid #b383d6}.automation-panel [hidden]{display:none!important}
