:root{--bg:#0b1110;--sidebar:#0e1513;--card:#151d1a;--card2:#19221e;--line:#26322b;--text:#e9eee9;--muted:#93a198;--dim:#6d7d72;--accent:#b5d38e;--accent-dark:#182519;--red:#e18d85;--green:#a9d894;--yellow:#e6c788;--radius:16px;font-family:var(--font-ui);color:var(--text);background:var(--bg);font-synthesis:none}
*{box-sizing:border-box}body{margin:0;min-width:340px}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}.shell{display:flex;min-height:100vh}.sidebar{width:248px;flex:none;background:var(--sidebar);border-right:1px solid var(--line);display:flex;flex-direction:column;padding:var(--space-32) var(--space-16) var(--space-20);position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:var(--space-12);padding:var(--space-4) var(--space-12) 35px;letter-spacing:.12em}.brandmark{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:var(--accent);color:#162115;font-size:var(--icon-23);font-weight:var(--weight-bold);letter-spacing:0}.brand strong{font-size:var(--type-label);display:block}.brand small{display:block;color:var(--dim);font-size:var(--type-caption);margin-top:var(--space-4)}.navlabel,.eyebrow,.micro{font-size:var(--type-caption);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);color:var(--dim)}.navlabel{padding:0 var(--space-12) var(--space-12)}.sidebar nav{display:grid;gap:var(--space-4)}.sidebar nav button{border:0;background:none;color:#a5b0a7;text-align:left;border-radius:10px;padding:var(--space-12) var(--space-16);display:flex;align-items:center;gap:var(--space-12);font-size:var(--type-label)}.sidebar nav button:hover,.sidebar nav button.active{background:#202c23;color:var(--accent)}.navicon{font-size:var(--icon-19);line-height:16px;width:19px;text-align:center}.sidebar-bottom{display:flex;gap:var(--space-8);align-items:flex-start;margin-top:auto;padding:var(--space-16) var(--space-12);border-top:1px solid var(--line);color:#bdc9bc;font-size:var(--type-caption);line-height:var(--leading-body)}.sidebar-bottom small{color:var(--dim)}.status-dot{width:7px;height:7px;background:var(--accent);border-radius:50%;margin-top:var(--space-4);box-shadow:0 0 8px var(--accent)}.main{min-width:0;flex:1}.topbar{height:68px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-40);background:#0e1512}.breadcrumbs{font-size:var(--type-caption);letter-spacing:var(--tracking-label);color:var(--dim);font-weight:var(--weight-semibold)}.breadcrumbs span{padding:0 var(--space-12);color:#405248}.breadcrumbs strong{color:#cbd9c6}.topactions{display:flex;align-items:center;gap:var(--space-16)}.sourcebadge{font-size:var(--type-caption);color:var(--dim);white-space:nowrap}.content{max-width:1500px;margin:auto;padding:33px var(--space-40) var(--space-72)}.pagehead{display:flex;justify-content:space-between;align-items:flex-end;margin:0 0 var(--space-24)}.pagehead h1{font-size:var(--type-hero);margin:var(--space-8) 0 var(--space-8);letter-spacing:var(--tracking-heading);font-weight:var(--weight-semibold)}.pagehead p{margin:0;color:var(--muted);font-size:var(--type-label)}.datechip{font-size:var(--type-caption);letter-spacing:var(--tracking-label);border:1px solid var(--line);border-radius:8px;padding:var(--space-12) var(--space-12);color:var(--muted);text-transform:capitalize}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius)}.filters{padding:var(--space-20) var(--space-20);margin-bottom:var(--space-24)}.filterhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-16);font-size:var(--type-caption)}.filtergrid{display:grid;grid-template-columns:repeat(6,minmax(110px,1fr)) 1.6fr;gap:var(--space-12)}.filtergrid label,form label,.sessionform label{display:grid;gap:var(--space-8);color:var(--dim);font-size:var(--type-caption);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase}input,select,textarea{min-width:0;width:100%;background:#101713;color:var(--text);border:1px solid #314035;border-radius:8px;padding:var(--space-12) var(--space-12);outline:none;font-size:var(--type-caption);letter-spacing:0;text-transform:none}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 2px #b5d38e22}input::placeholder,textarea::placeholder{color:#68796b}textarea{resize:vertical;min-height:88px;line-height:var(--leading-body)}.linkbutton{border:0;background:none;color:var(--accent);font-size:var(--type-caption);padding:var(--space-4)}.primary{background:var(--accent);color:#152017;border:0;border-radius:9px;padding:var(--space-12) var(--space-16);font-weight:var(--weight-bold);font-size:var(--type-caption);white-space:nowrap}.primary:hover{background:#c7e3a6}.primary.small{padding:var(--space-12) var(--space-16)}.secondary{border:1px solid #3d4e3e;background:#202b22;color:#caddc2;border-radius:9px;padding:var(--space-12) var(--space-16);font-size:var(--type-caption)}.secondary:hover{border-color:var(--accent)}.metricgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-16);margin-bottom:var(--space-24)}.metric{padding:var(--space-20) var(--space-20);min-height:125px;position:relative;overflow:hidden}.metric:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:#344b35}.metric.featured:before{background:var(--accent)}.metric .label{display:flex;justify-content:space-between;color:var(--muted);font-size:var(--type-caption)}.metric .symbol{color:#637565;font-size:var(--type-body)}.metric .value{font-size:var(--type-title);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-heading);margin:var(--space-20) 0 var(--space-4)}.metric .hint{color:var(--dim);font-size:var(--type-caption)}.positive{color:var(--green)!important}.negative{color:var(--red)!important}.neutral{color:var(--yellow)!important}.row2{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:var(--space-16);margin-bottom:var(--space-24)}.panel{padding:var(--space-20)}.panelhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-20);gap:var(--space-12)}.panelhead h2,.section-title{font-size:var(--type-body);margin:0;font-weight:var(--weight-semibold)}.panelhead small{color:var(--dim);font-size:var(--type-caption)}.chart{width:100%;height:230px}.chart line{stroke:#2c3b30}.chart text{fill:#758578;font-size:var(--type-caption)}.chart .area{fill:url(#areaGradient)}.chart .line{fill:none;stroke:var(--accent);stroke-width:2.5}.chart .zero{stroke:#60745e;stroke-dasharray:4 4}.legend{display:flex;gap:var(--space-16);margin-top:var(--space-8);color:var(--muted);font-size:var(--type-caption)}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:var(--space-8);background:var(--accent)}.donut-wrap{display:flex;align-items:center;justify-content:center;gap:var(--space-20);min-height:200px}.donut{width:155px;height:155px;flex:none}.donut .center-big{fill:var(--text);font-size:var(--type-title);font-weight:var(--weight-semibold)}.donut .center-small{fill:var(--dim);font-size:var(--type-caption)}.donut-legend{display:grid;gap:var(--space-12);color:var(--muted);font-size:var(--type-caption)}.donut-legend strong{color:var(--text);float:right;margin-left:var(--space-16)}.sectionbar{display:flex;justify-content:space-between;align-items:center;margin:var(--space-24) 0 var(--space-12)}.sectionbar h2{font-size:var(--type-section);margin:0}.tablewrap{overflow:auto}.table{width:100%;border-collapse:collapse;font-size:var(--type-caption)}.table th{text-align:left;color:var(--dim);font-size:var(--type-caption);text-transform:uppercase;letter-spacing:var(--tracking-label);font-weight:var(--weight-semibold);background:#18211c;border-bottom:1px solid var(--line);padding:var(--space-12) var(--space-16);white-space:nowrap}.table td{padding:var(--space-12) var(--space-16);border-bottom:1px solid #28332c;vertical-align:middle}.table tr:last-child td{border-bottom:0}.table tbody tr{cursor:pointer}.table tbody tr:hover{background:#202c23}.table .titlecell{max-width:310px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.numberpill{border:1px solid #43533f;color:var(--accent);border-radius:5px;padding:var(--space-4) var(--space-8);font-size:var(--type-caption);font-weight:var(--weight-semibold)}.pill{border-radius:5px;padding:var(--space-4) var(--space-8);background:#273329;color:#bed5b9;font-size:var(--type-caption);white-space:nowrap}.pill.no{background:#372825;color:#e3a9a1}.pill.parcial{background:#3a3425;color:#e1ce91}.pill.si{background:#2a3927;color:#b6d9a5}.pnl{font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums;white-space:nowrap}.muted{color:var(--muted)}.empty{padding:52px;text-align:center;color:var(--muted);font-size:var(--type-label)}.empty strong{display:block;color:var(--text);margin-bottom:var(--space-8)}.bars{display:grid;gap:var(--space-12)}.barrow{display:grid;grid-template-columns:118px 1fr 73px;align-items:center;gap:var(--space-12);font-size:var(--type-caption)}.barrow .track{height:8px;border-radius:10px;background:#2a332c;overflow:hidden}.barrow .fill{height:100%;border-radius:10px;background:var(--accent)}.barrow .fill.loss{background:var(--red)}.barrow .amount{text-align:right;font-variant-numeric:tabular-nums}.small-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-16)}.insight{padding:var(--space-20)}.insight p{font-size:var(--type-caption);color:var(--muted);line-height:var(--leading-body)}.callout{padding:var(--space-12) var(--space-16);border:1px solid #3c5237;border-radius:9px;background:#1c2a1c;color:#d4e4c9;font-size:var(--type-caption);line-height:var(--leading-body)}.calendar-controls{display:flex;align-items:center;gap:var(--space-12)}.calendar-controls button{border:1px solid var(--line);background:#1b251e;color:var(--text);border-radius:7px;width:29px;height:29px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:var(--space-8)}.weekday{text-align:center;color:var(--dim);font-size:var(--type-caption);font-weight:var(--weight-semibold);padding:var(--space-8)}.day{min-height:100px;background:#141d18;border:1px solid var(--line);border-radius:9px;padding:var(--space-12);text-align:left;color:var(--text)}.day.hastrade{border-color:#3b513b}.day:hover{background:#202c23}.day .daynum{font-size:var(--type-caption);color:var(--muted)}.day .daypnl{font-weight:var(--weight-semibold);font-size:var(--type-body);margin-top:var(--space-16)}.day .daycount{font-size:var(--type-caption);color:var(--dim);margin-top:var(--space-4)}.day.blank{background:transparent;border:0;pointer-events:none}.overlay{position:fixed;inset:0;background:#020805b9;z-index:20;display:flex;justify-content:flex-end}.overlay.hidden,.hidden{display:none!important}.drawer{width:min(820px,100%);height:100vh;background:#111a15;border-left:1px solid #3d503d;overflow:auto;padding:34px 37px var(--space-64);position:relative;box-shadow:-20px 0 80px #0007}.close{position:absolute;top:23px;right:28px;width:34px;height:34px;border:1px solid var(--line);border-radius:8px;background:#1c281f;color:var(--muted);font-size:var(--icon-23);line-height:25px}.drawer h2{font-size:var(--type-number);max-width:650px;line-height:var(--leading-heading);margin:var(--space-12) 0}.drawer .sub{color:var(--muted);font-size:var(--type-caption)}.drawer .detailgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-12);margin:var(--space-24) 0}.detailbox{background:#1b261e;border:1px solid var(--line);border-radius:9px;padding:var(--space-12)}.detailbox small{display:block;color:var(--dim);font-size:var(--type-caption);text-transform:uppercase;letter-spacing:var(--tracking-label);margin-bottom:var(--space-8)}.detailbox strong{font-size:var(--type-label)}.field-section{padding:var(--space-20) 0;border-top:1px solid var(--line)}.field-section h3{margin:0 0 var(--space-12);font-size:var(--type-caption);text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--accent)}.field-section p{color:#d2dad1;font-size:var(--type-label);line-height:var(--leading-body);margin:var(--space-8) 0;white-space:pre-wrap}.field-section p small{display:block;color:var(--dim);font-size:var(--type-caption);text-transform:uppercase;letter-spacing:var(--tracking-label);margin-bottom:var(--space-4)}.attachments{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-8)}.attachment{display:block;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#1b251d;color:var(--text);text-decoration:none;font-size:var(--type-caption)}.attachment img{width:100%;height:100px;object-fit:cover;display:block}.attachment span{display:block;padding:var(--space-8);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment.pdf{padding:var(--space-16) var(--space-12);color:var(--accent)}.drawer-actions{display:flex;gap:var(--space-8);margin:var(--space-20) 0;flex-wrap:wrap}.formgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-16);margin:var(--space-20) 0}.formgrid .span2{grid-column:span 2}.formgrid .span3{grid-column:span 3}.form-section{margin:var(--space-24) 0;border-top:1px solid var(--line);padding-top:var(--space-16)}.form-section h3{font-size:var(--type-caption);color:var(--accent);letter-spacing:var(--tracking-label);text-transform:uppercase}.form-actions{display:flex;gap:var(--space-12);justify-content:flex-end;position:sticky;bottom:-60px;background:#111a15;padding:var(--space-16) 0 var(--space-32)}.sessionform{display:grid;gap:var(--space-12)}.sessionform textarea{min-height:70px}.toast{position:fixed;bottom:22px;right:25px;background:#27392a;color:#e6f2e0;border:1px solid #62855c;border-radius:9px;padding:var(--space-12) var(--space-16);font-size:var(--type-caption);z-index:40;box-shadow:0 12px 40px #0008}.downloadgrid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-16)}.downloadcard{padding:var(--space-24)}.downloadcard h3{font-size:var(--type-body);margin:0 0 var(--space-12)}.downloadcard p{color:var(--muted);font-size:var(--type-caption);line-height:var(--leading-body);min-height:57px}.downloadcard a{display:inline-block;text-decoration:none}.hinttext{color:var(--dim);font-size:var(--type-caption);line-height:var(--leading-body)}.reviewlist{display:grid;gap:var(--space-8)}.reviewitem{padding:var(--space-12) var(--space-16);border:1px solid var(--line);border-radius:8px;background:#18211c;display:flex;justify-content:space-between;gap:var(--space-12);font-size:var(--type-caption);cursor:pointer}.reviewitem:hover{background:#202c23}.reviewitem span{color:var(--muted)}@media(max-width:1180px){.filtergrid{grid-template-columns:repeat(4,1fr)}.metricgrid{grid-template-columns:repeat(2,1fr)}}@media(max-width:840px){.sidebar{width:70px;padding-left:var(--space-8);padding-right:var(--space-8)}.brand{padding-left:var(--space-8)}.brand strong,.brand small,.navlabel,.sidebar-bottom span,.sidebar nav button{font-size:0}.sidebar nav button{justify-content:center;padding:var(--space-12)}.navicon{font-size:var(--icon-20)}.content{padding:var(--space-24) var(--space-20)}.topbar{padding:0 var(--space-20)}.row2{grid-template-columns:1fr}.filtergrid{grid-template-columns:repeat(3,1fr)}}@media(max-width:600px){.sidebar{width:53px}.brandmark{width:31px;height:31px}.content{padding:var(--space-20) var(--space-12)}.topbar{padding:0 var(--space-12)}.sourcebadge{display:none}.pagehead{align-items:flex-start}.datechip{display:none}.pagehead h1{font-size:var(--type-title)}.filtergrid{grid-template-columns:repeat(2,1fr)}.searchfield{grid-column:span 2}.metricgrid{gap:var(--space-8)}.metric{padding:var(--space-16);min-height:109px}.metric .value{font-size:var(--type-number)}.small-grid,.downloadgrid{grid-template-columns:1fr}.day{min-height:60px;padding:var(--space-4)}.day .daypnl{font-size:var(--type-caption);margin-top:var(--space-8)}.day .daycount{display:none}.drawer{padding:var(--space-24) var(--space-16)}.formgrid{grid-template-columns:repeat(2,1fr)}.formgrid .span3{grid-column:span 2}.attachments{grid-template-columns:repeat(2,1fr)}}@media print{.sidebar,.topbar,.pagehead,.filters,.drawer-actions,.close,.form-actions,.attachment-upload{display:none!important}.shell{display:block}.content{padding:0}.drawer{width:100%;height:auto;overflow:visible;border:0;box-shadow:none}.overlay{position:static;display:block;background:white}.drawer,.overlay{color:#111;background:white}.field-section p,.drawer h2,.detailbox strong{color:#111}.detailbox{background:white;border-color:#ddd}.field-section{border-color:#ddd}.field-section h3{color:#333}.attachment img{height:auto;max-height:180px}body{background:white}}
