:root{--bg:#050505;--panel:#111;--panel2:#0a0a0a;--border:#262626;--text:#f5f5f5;--muted:#8a8a8a;--green:#22c55e;--green-dim:rgba(34,197,94,.1);--red:#ef4444;--red-dim:rgba(239,68,68,.1);--accent:#b91c1c;--accent-dim:rgba(185,28,28,.15);--link:#d4d4d4;--gold:#d97706;--mono:"JetBrains Mono","Cascadia Code",Consolas,monospace}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--text);font:14px/1.5 -apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif}a{color:var(--link);text-decoration:none;border-bottom:1px solid var(--accent)}.btn,.cal a,.sidebar nav a{border-bottom:none}h1,h2,h3{font-weight:600}h1{font-size:20px}h2{font-size:16px}h3{font-size:14px}.layout{display:flex;min-height:100vh}.sidebar{width:200px;flex-shrink:0;background:var(--panel2);border-right:1px solid var(--border);padding:20px 12px;position:-webkit-sticky;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}.brand{padding:0 10px 18px;border-bottom:1px solid var(--border);margin-bottom:14px}.brand .l1{font-weight:800;font-size:15px;letter-spacing:.14em;color:#fff}.brand .l2{font-weight:700;font-size:9px;letter-spacing:.22em;color:var(--accent);margin-top:3px}.brand .l2 span{color:#dc2626}.brand .vm{display:inline-block;margin-top:10px;padding:2px 8px;font-size:9px;font-weight:700;letter-spacing:.12em;color:var(--gold);border:1px solid rgba(217,119,6,.5);border-radius:3px}.brand .trust{margin-top:6px;font-size:9px;letter-spacing:.08em;color:var(--muted);line-height:1.6}.sidebar nav a{display:block;padding:9px 10px;border-radius:8px;color:var(--muted);margin-bottom:2px;font-weight:500}.sidebar nav a.active,.sidebar nav a:hover{background:var(--panel);color:var(--text)}.sidebar nav a.active{border-left:2px solid var(--accent)}.main{flex:1 1;padding:24px 28px;max-width:1500px}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));grid-gap:12px;gap:12px;margin:16px 0}.card{background:var(--panel);border:1px solid var(--border);border-radius:4px;padding:14px 16px;transition:border-color .15s ease,transform .15s ease;animation:rise .25s ease both}.card:hover{border-color:var(--accent)}.card .label{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.card .value{font-family:var(--mono);font-size:20px;font-weight:600;margin-top:4px}.card .sub{color:var(--muted);font-size:11px;margin-top:2px}.panel{background:var(--panel);border:1px solid var(--border);border-radius:4px;padding:18px;margin:16px 0;animation:rise .25s ease both}@keyframes rise{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.panel h2{margin:0 0 12px}.grid2{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}@media (max-width:1100px){.grid2{grid-template-columns:1fr}}.pos{color:var(--green)}.neg{color:var(--red)}.flat{color:var(--muted)}.mono{font-family:var(--mono)}table.data{width:100%;border-collapse:collapse;font-size:13px}table.data th{text-align:left;color:var(--muted);font-weight:500;font-size:11px;text-transform:uppercase;letter-spacing:.06em}table.data td,table.data th{padding:8px 10px;border-bottom:1px solid var(--border)}table.data tr:last-child td{border-bottom:none}table.data tr.clickable:hover{background:var(--panel2);cursor:pointer}.badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600}.badge.long{background:var(--green-dim);color:var(--green)}.badge.short{background:var(--red-dim);color:var(--red)}.badge.open{background:rgba(234,179,8,.15);color:var(--gold)}.badge.manual{background:rgba(91,157,255,.15);color:var(--accent)}.badge.warn{background:rgba(234,179,8,.15);color:var(--gold)}.btn,button{background:var(--panel2);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:7px 14px;cursor:pointer;font-size:13px;font-weight:500}.btn:hover,button:hover{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent-dim)}button.primary{background:var(--accent);border-color:var(--accent);color:#fff}button.danger{color:var(--red)}button:disabled{opacity:.5;cursor:default}input,select,textarea{background:var(--panel2);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:8px 10px;font-size:13px;width:100%;font-family:inherit}textarea{min-height:64px;resize:vertical}label.field{display:block;margin-bottom:12px}label.field .name{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px}.dropzone{border:2px dashed var(--border);border-radius:4px;padding:28px;text-align:center;color:var(--muted);transition:all .15s;cursor:pointer}.dropzone.over{border-color:var(--green);background:var(--green-dim);color:var(--text)}.cal{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:6px;gap:6px}.cal .head{text-align:center;color:var(--muted);font-size:11px;text-transform:uppercase;padding:4px}.cal .day{min-height:84px;border-radius:4px;border:1px solid var(--border);background:var(--panel2);padding:8px;position:relative}.cal .day.green{background:var(--green-dim);border-color:rgba(34,197,94,.4)}.cal .day.red{background:var(--red-dim);border-color:rgba(239,68,68,.4)}.cal .day.trading{cursor:pointer}.cal .day.trading:hover{border-color:var(--accent)}.cal .day .num{color:var(--muted);font-size:11px}.cal .day .pnl{font-family:var(--mono);font-weight:600;font-size:13px;margin-top:6px}.cal .day .n{color:var(--muted);font-size:11px}.cal .day .jdot{position:absolute;top:8px;right:8px;width:6px;height:6px;border-radius:50%;background:var(--accent)}.finding{border-left:3px solid var(--border);padding:10px 14px;margin-bottom:10px;background:var(--panel2);border-radius:0 8px 8px 0}.finding.bad{border-left-color:var(--red)}.finding.warn{border-left-color:var(--gold)}.finding.good{border-left-color:var(--green)}.finding.info{border-left-color:var(--accent)}.finding .t{font-weight:600;margin-bottom:3px}.finding .v{color:var(--muted);font-size:13px}.coach-list{margin:6px 0 14px;padding-left:18px}.coach-list li{margin-bottom:5px}.rule{background:var(--green-dim);border:1px solid rgba(34,197,94,.35);border-radius:10px;padding:14px 16px;font-weight:600;margin-top:12px}.fills{background:var(--panel2);border-radius:8px;margin:4px 0 10px;padding:8px 12px;font-size:12px}.shots{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.shots .shot{width:180px}.shots img{width:100%;border-radius:8px;border:1px solid var(--border)}.notice{padding:10px 14px;border-radius:8px;margin:10px 0;font-size:13px}.notice.warn{background:rgba(234,179,8,.1);border:1px solid rgba(234,179,8,.3);color:var(--gold)}.notice.ok{background:var(--green-dim);border:1px solid rgba(34,197,94,.3);color:var(--green)}.muted{color:var(--muted)}.row,.spread{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.spread{justify-content:space-between}.validation-banner{background:rgba(234,179,8,.12);border:1px solid rgba(234,179,8,.45);color:var(--gold);border-radius:8px;padding:8px 14px;margin-bottom:16px;font-weight:600;font-size:12px;letter-spacing:.05em}.help{display:inline-block;margin-left:6px;width:14px;height:14px;line-height:13px;text-align:center;border:1px solid var(--border);border-radius:50%;color:var(--muted);font-size:10px;cursor:help}.verdict{display:flex;gap:22px;align-items:center;flex-wrap:wrap}.verdict .score{font-family:var(--mono);font-size:52px;font-weight:800;line-height:1}.verdict .rating{font-size:12px;letter-spacing:.18em;font-weight:700;text-transform:uppercase}.verdict .headline{font-size:17px;font-weight:600}.scorebar{display:grid;grid-template-columns:130px 1fr 34px;grid-gap:10px;gap:10px;align-items:center;margin-bottom:10px}.scorebar .track{height:7px;background:var(--panel2);border:1px solid var(--border);border-radius:2px;overflow:hidden}.scorebar .fill{height:100%;transition:width .4s ease}.scorewhy{color:var(--muted);font-size:11.5px;margin:-6px 0 12px 140px}.badgebig{display:inline-block;padding:6px 14px;border-radius:3px;font-weight:700;letter-spacing:.06em;font-size:13px;border:1px solid}.milestone{display:flex;gap:12px;padding:8px 0;border-bottom:1px solid var(--border)}.milestone:last-child{border-bottom:none}.milestone .dot{width:10px;height:10px;border-radius:50%;margin-top:4px;flex-shrink:0}.milestone .date{font-family:var(--mono);color:var(--muted);font-size:11px;min-width:84px}.coachmsg{border-left:3px solid var(--accent);background:var(--panel2);padding:14px 16px;border-radius:0 4px 4px 0;font-size:14px;line-height:1.65}.mc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));grid-gap:10px;gap:10px}