@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
/* Both palettes are neutral; every surface follows the saved theme. */
:root{color-scheme:dark;--bg:#080808;--surface:#121212;--ink:#f5f5f5;--muted:#b0b0b0;--border:#383838;--green:#f5f5f5;--soft:#1b1b1b;--red:#f5f5f5;--on-primary:#080808;--hover:#262626;--primary-hover:#d8d8d8;font-family:'DM Sans',sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none}
:root[data-theme="light"]{color-scheme:light;--bg:#f7f7f7;--surface:#fff;--ink:#111;--muted:#626262;--border:#d5d5d5;--green:#111;--soft:#efefef;--red:#111;--on-primary:#fff;--hover:#e6e6e6;--primary-hover:#333}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--border);background:var(--surface);color:var(--ink);border-radius:7px;min-height:39px;padding:9px 13px;font-size:13px;font-weight:550;cursor:pointer;transition:background .15s,border-color .15s}button:hover{background:var(--soft);border-color:var(--border)}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:var(--green);color:var(--muted);border-color:var(--green);min-height:44px;padding:11px 19px;white-space:nowrap}button.primary:hover{background:var(--soft)}:focus-visible{outline:3px solid var(--border);outline-offset:3px}a{color:inherit;text-underline-offset:3px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Manrope','DM Sans',sans-serif}h1{font-size:clamp(28px,2.6vw,39px);letter-spacing:-1.6px;font-weight:650;line-height:1.23}h2{font-size:20px;font-weight:650;letter-spacing:-.6px}h3{font-weight:650;letter-spacing:-.3px}p{line-height:1.65}small{font-size:11px}svg{flex-shrink:0}.shell{display:flex;min-height:100vh}.sidebar{width:248px;flex-shrink:0;background:var(--soft);color:var(--muted);position:fixed;inset:0 auto 0 0;padding:33px 20px 20px;display:flex;flex-direction:column;overflow-y:auto}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;padding:0 7px 36px;font-size:15px;letter-spacing:2px;font-weight:700}.brand small{display:block;font-weight:400;letter-spacing:1.25px;font-size:10px;color:var(--muted);margin-top:5px}.brand-icon{width:36px;height:40px;border:1px solid var(--border);display:grid;place-items:center;border-radius:8px;color:var(--muted)}.workspace-label{font-size:9px;letter-spacing:1.5px;color:var(--muted);margin:0 7px 17px;display:flex;justify-content:space-between;align-items:center}.workspace-label span{font-size:8px;letter-spacing:.9px;border:1px solid var(--border);padding:3px 5px;border-radius:3px}.sidebar button{background:transparent;border:0;color:var(--muted);text-align:left;justify-content:flex-start}.sidebar button:hover,.sidebar button.active{background:var(--soft);color:var(--muted)}.nav-main{width:100%;padding:13px 12px;font-size:13px}.nav-main>span{margin-left:auto;color:var(--muted);font-size:11px}.nav-label{font-size:9px;letter-spacing:1.7px;color:var(--muted);margin:33px 10px 13px}.strategy-nav{display:flex;width:100%;gap:13px;padding:14px 12px;margin:2px 0;min-height:69px}.strategy-nav>span:nth-child(2){flex:1}.strategy-nav strong{display:block;font-size:12px;color:var(--muted);letter-spacing:.5px;font-weight:550}.strategy-nav small{display:block;margin-top:5px;font-size:11px;color:var(--muted);font-weight:400}.strategy-nav>svg{opacity:.6}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--soft);flex-shrink:0}.sidebar-bottom{margin-top:auto;padding:35px 6px 0;font-size:12px}.verified{display:flex;gap:10px;border-top:1px solid var(--border);padding:22px 0 16px;color:var(--muted);font-size:11px}.verified svg{color:var(--muted)}.verified small{display:block;color:var(--muted);margin-top:4px;font-size:10px}.sidebar-bottom button{font-size:11px;padding-left:0}.sidebar-bottom>a{font-size:11px;display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--muted);margin-top:12px}main{margin-left:248px;min-width:0;flex:1}.topbar{height:68px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 40px;font-size:11px;color:var(--muted)}.topbar>span{display:flex;align-items:center;gap:11px}.topbar strong{font-weight:500;color:var(--muted)}.private-label .dot{width:5px;height:5px;background:var(--soft)}.main-content{max-width:1510px;margin:auto;padding:39px 40px 24px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:31px}.eyebrow{font-size:9px;font-weight:650;letter-spacing:1.7px;color:var(--muted);margin-bottom:10px}.lede{color:var(--muted);font-size:13px;margin-top:11px}.tabs{display:flex;gap:28px;border-bottom:1px solid var(--border);margin-bottom:23px}.tabs button{border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;font-size:12px;padding:12px 0;color:var(--muted);min-height:46px}.tabs button.active{color:var(--green);border-color:var(--green)}.tabs button:hover{color:var(--green)}.filters{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.field{display:flex;flex-direction:column;gap:7px;min-width:0}.field>span{font-size:10px;color:var(--muted);font-weight:550}.filters .field{flex:1;min-width:108px}.filters .field:nth-child(2){flex:1.25}.field input,.field select,.field textarea{border:1px solid var(--border);border-radius:6px;background:var(--soft);color:var(--ink);padding:10px 11px;min-height:40px;font-size:12px;width:100%;min-width:0}.field textarea{resize:vertical}.filters .field input,.filters .field select{font-size:11px;padding:9px;min-height:37px}.icon-button{width:38px;min-height:38px;padding:8px}.filter-caption{display:flex;justify-content:space-between;gap:15px;font-size:10px;color:var(--muted);margin:13px 0 24px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);background:var(--soft);border:1px solid var(--border);border-radius:10px;padding:25px 0;margin-bottom:31px}.metrics>div{padding:0 24px;border-right:1px solid var(--border)}.metrics>div:last-child{border:0}.metrics>div>span{font-size:9px;font-weight:550;letter-spacing:1.2px;color:var(--muted);display:flex;align-items:center;gap:6px}.metrics>div>span>small{font-size:8px;letter-spacing:.6px;padding:2px 4px;border:1px solid var(--border);border-radius:3px}.metrics strong{display:block;font-family:'Manrope',sans-serif;font-weight:600;font-size:30px;line-height:1.4;letter-spacing:-1px;margin:9px 0 4px;font-variant-numeric:tabular-nums}.metrics>div>small{font-size:10px;color:var(--muted)}.section-heading{display:flex;justify-content:space-between;gap:16px;align-items:center;margin:27px 0 16px}.section-heading h2{font-size:17px}.section-heading>span{font-size:10px;color:var(--muted)}.strategy-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.strategy-card{background:var(--surface);border:1px solid var(--border);border-radius:9px;overflow:hidden;position:relative;padding:22px 22px 0}.strategy-card:before{content:'';position:absolute;left:0;right:0;top:0;height:3px;background:var(--accent)}.card-top{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:21px}.code{font-size:9px;letter-spacing:1.2px;color:var(--muted)}.tiny-badge{font-size:8px;color:var(--muted);display:flex;align-items:center;gap:4px}.strategy-card h3{font-size:16px;line-height:1.4}.strategy-card>p{font-size:10px;color:var(--muted);margin-top:7px}.card-time{font-size:11px;color:var(--muted);margin-top:17px;background:var(--soft);border-radius:4px;padding:7px 8px;display:inline-block}.card-stat{margin:23px 0 20px;display:flex;justify-content:space-between;gap:10px;align-items:end;flex-wrap:wrap}.card-stat strong{font-size:16px;font-weight:500;color:var(--muted);letter-spacing:-.4px}.card-stat span{font-size:9px;color:var(--muted)}.strategy-card>button{width:calc(100% + 44px);margin:0 -22px;border:0;border-top:1px solid var(--border);border-radius:0;padding:12px 22px;justify-content:space-between;font-size:10px;background:var(--soft);color:var(--muted)}.note-card{padding:29px;background:var(--soft);border:1px solid var(--border);border-radius:9px;color:var(--muted);display:flex;flex-direction:column;align-items:flex-start}.note-card svg{color:var(--muted)}.note-card h3{font-size:18px;margin:15px 0 10px}.note-card p{font-size:11px;max-width:280px;color:var(--muted);line-height:1.9}.note-card>button{border:0;background:transparent;padding:20px 0 0;font-size:10px;margin-top:auto;color:var(--muted)}.ledger{background:var(--surface);border:1px solid var(--border);border-radius:9px;overflow:hidden}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;text-align:left;white-space:nowrap;font-size:11px}th{font-size:9px;color:var(--muted);font-weight:500;background:var(--soft);border-bottom:1px solid var(--border);padding:14px 19px}td{padding:16px 19px;border-bottom:1px solid var(--border);color:var(--muted)}td strong{font-size:11px;font-weight:550;display:block}td small{font-size:9px;display:block;color:var(--muted);margin-top:5px}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:var(--soft)}.numeric{font-variant-numeric:tabular-nums}.negative{color:var(--red)!important}.status{font-size:9px;padding:4px 7px;border-radius:4px;background:var(--soft);color:var(--muted)}.status.open{background:var(--soft);color:var(--muted)}.status.skipped{background:var(--soft);color:var(--muted)}.text-button{border:0;background:transparent;min-height:30px;padding:0;font-size:11px}.empty-state{padding:34px 20px 38px;text-align:center;max-width:510px;margin:auto}.empty-icon{width:45px;height:45px;border:1px solid var(--border);background:var(--soft);border-radius:11px;display:grid;place-items:center;margin:0 auto 14px;color:var(--muted)}.empty-state h3{font-size:16px}.empty-state p{font-size:11px;color:var(--muted);margin:8px auto 16px;max-width:390px}.empty-state button{font-size:10px;min-height:33px;padding:7px 12px}.data-tools{display:flex;justify-content:space-between;gap:25px;align-items:center;padding:24px 0}.data-tools h3{font-size:12px}.data-tools p{font-size:10px;color:var(--muted);max-width:450px;margin-top:5px}.actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.data-tools button{font-size:10px;white-space:nowrap;min-height:34px;padding:7px 9px;background:transparent}.alert{display:flex;align-items:center;gap:12px;border:1px solid var(--border);background:var(--soft);font-size:12px;padding:12px 15px;border-radius:7px;margin:14px 0}.alert button{margin-left:auto;border:0;background:transparent;min-height:25px}.alert.error{border-color:var(--border);background:var(--soft);color:var(--muted)}.detail-panels{display:grid;grid-template-columns:1.5fr 1fr;gap:18px}.panel{padding:24px;background:var(--soft);border:1px solid var(--border);border-radius:9px}.panel .section-heading{margin:0 0 13px}.chart-empty{height:170px;display:flex;gap:15px;align-items:center;justify-content:center;color:var(--muted)}.chart-empty p{font-size:12px}.curve{width:100%;height:170px}.chart-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;border-top:1px solid var(--border);padding-top:18px}.chart-stats>span{font-size:10px;color:var(--muted)}.chart-stats strong{display:block;font-size:18px;font-weight:550;color:var(--ink);margin-top:7px}.muted{color:var(--muted)}.small{font-size:10px;margin-top:15px}.session-panel h2{font-size:23px;margin:20px 0}.session-panel p{font-size:12px;color:var(--muted);margin:15px 0}.session-panel button{font-size:11px;margin-top:10px}.verification-banner{display:flex;gap:18px;align-items:flex-start;padding:23px;background:var(--soft);border:1px solid var(--border);border-radius:9px;margin:25px 0}.verification-banner h2{font-size:18px;margin-bottom:7px}.verification-banner p{font-size:12px;color:var(--muted);max-width:800px}.verification-banner>svg{color:var(--muted);margin-top:3px}.rule-card{background:var(--surface);border:1px solid var(--border);border-radius:9px;padding:28px;margin:20px 0}.rule-heading{display:flex;gap:15px;justify-content:space-between;align-items:center}.badge{display:inline-flex;align-items:center;gap:5px;font-size:10px;white-space:nowrap;color:var(--muted);background:var(--soft);border:1px solid var(--border);padding:6px 8px;border-radius:5px}.rule-time{font-size:14px;color:var(--muted);margin-top:19px}.rule-time span{font-size:11px;color:var(--muted)}.rule-card dl{margin:25px 0}.rule-card dl>div{display:grid;grid-template-columns:160px 1fr;gap:22px;padding:14px 0;border-top:1px solid var(--border);font-size:12px;line-height:1.8}.rule-card dt{font-weight:600;color:var(--muted)}.rule-card dd{margin:0;color:var(--muted)}.rule-notes{padding:15px 18px;background:var(--soft);border-radius:6px}.rule-notes p{font-size:11px;color:var(--muted);margin:4px 0}.rule-card details{margin-top:19px;font-size:11px;color:var(--muted)}.rule-card summary{cursor:pointer}.rule-card li{margin:13px 0}.rule-card li strong{font-size:11px;display:block;font-weight:550}.rule-card li span{font-size:10px;overflow-wrap:anywhere;display:block;margin-top:4px}.rule-card details p{font-size:10px}footer{border-top:1px solid var(--border);display:flex;justify-content:space-between;gap:20px;padding-top:22px;margin-top:15px;font-size:9px;color:var(--muted)}.footer-dot{margin:0 10px;color:var(--muted)}dialog{width:min(750px,calc(100% - 30px));max-height:92vh;border:1px solid var(--border);border-radius:14px;padding:0;background:var(--soft);color:var(--ink);box-shadow:0 25px 100px #00000055}dialog::backdrop{background:var(--soft);backdrop-filter:blur(3px)}.dialog-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);padding:23px 28px}.dialog-head h2{font-size:25px}.dialog-head .eyebrow{margin-bottom:6px}.form-body{padding:23px 28px;max-height:calc(92vh - 182px);overflow-y:auto}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.wide{grid-column:1/-1}.form-hint{font-size:10px;line-height:1.7;color:var(--muted)}.form-section{font-size:12px;border-top:1px solid var(--border);padding-top:19px;margin-top:4px}.net-preview{display:flex;align-items:center;justify-content:space-between;background:var(--soft);padding:14px 17px;border-radius:6px}.net-preview>span{font-size:10px;letter-spacing:1px;color:var(--muted)}.net-preview strong{font-size:22px;font-weight:600}.dialog-actions{border-top:1px solid var(--border);padding:18px 28px;display:flex;justify-content:space-between;align-items:center}.dialog-actions>.actions{margin-left:auto}.delete{color:var(--red);background:transparent;border:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(min-width:1600px){.main-content{padding-top:47px}.strategy-card{padding-top:26px}.strategy-card h3{font-size:19px}.strategy-card>p{font-size:12px}.card-time{font-size:12px}.card-stat{margin-top:28px;margin-bottom:25px}.strategy-card>button{font-size:11px}.note-card p{font-size:13px}}@media(max-width:1200px){.sidebar{width:215px;padding-left:14px;padding-right:14px}main{margin-left:215px}.main-content{padding:30px 25px}.topbar{padding:0 25px}.strategy-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metrics>div{padding:0 17px}.metrics strong{font-size:25px}.data-tools{align-items:flex-start;flex-direction:column;gap:14px}.detail-panels{grid-template-columns:1fr}.page-heading>button{font-size:11px}.page-heading h1{font-size:30px}}@media(max-width:800px){.shell{display:block}.sidebar{position:relative;width:100%;padding:15px 18px;display:block;overflow:visible}.brand{padding:0;font-size:13px;gap:9px}.brand-icon{height:34px;width:31px}.brand small{font-size:8px}.workspace-label,.nav-label,.sidebar-bottom{display:none}.sidebar nav{display:flex;overflow:auto;gap:6px;margin-top:16px;padding-bottom:2px}.strategy-nav{min-width:142px;margin:0;min-height:53px;padding:9px 10px}.strategy-nav small{font-size:9px}.strategy-nav strong{font-size:10px}.strategy-nav>svg{display:none}.nav-main{position:absolute;right:18px;top:17px;width:auto;font-size:10px;padding:8px 10px;min-height:34px}.nav-main>span{display:none}main{margin-left:0}.topbar{height:48px;padding:0 20px;font-size:9px}.main-content{padding:25px 20px}.page-heading{align-items:flex-start;margin-bottom:20px;gap:15px;flex-wrap:wrap}.page-heading h1{font-size:29px;letter-spacing:-1px}.lede{font-size:12px}.eyebrow{font-size:8px}.page-heading>.primary{min-height:38px;padding:9px 12px;font-size:11px}.tabs{gap:25px;margin-bottom:18px}.tabs button{font-size:11px}.filters{gap:10px}.filters .field{min-width:calc(33% - 10px)}.filters .field:nth-child(2){flex:1}.filter-caption{font-size:9px}.metrics{padding:20px 0;grid-template-columns:1fr 1fr;row-gap:22px}.metrics>div{padding:0 20px}.metrics>div:nth-child(2){border:0}.metrics strong{font-size:27px}.metrics>div>span{font-size:9px}.metrics>div>small{font-size:9px}.strategy-grid{gap:12px}.strategy-card{padding:18px 15px 0}.strategy-card>button{width:calc(100% + 30px);margin:0 -15px;padding:11px 15px;font-size:9px}.strategy-card h3{font-size:15px}.card-top{gap:4px;margin-bottom:15px}.tiny-badge{font-size:7px}.card-time{font-size:9px;padding:6px}.card-stat strong{font-size:14px}.card-stat span{font-size:8px}.note-card{padding:20px}.note-card h3{font-size:16px}.note-card p{font-size:10px}.section-heading>span{display:none}.rule-card{padding:21px 18px}.rule-heading{align-items:flex-start;flex-direction:column;gap:10px}.rule-card dl>div{grid-template-columns:1fr;gap:3px}.rule-card dl{margin:20px 0}.verification-banner{padding:20px 16px}.verification-banner h2{font-size:16px}.verification-banner p{font-size:11px}footer{flex-direction:column;gap:10px}.dialog-head,.form-body,.dialog-actions{padding-left:20px;padding-right:20px}.form-grid{gap:15px}.field input,.field select,.field textarea{font-size:16px}.filters .field input,.filters .field select{font-size:12px}.form-hint{font-size:10px}}@media(max-width:450px){.main-content{padding-left:16px;padding-right:16px}.strategy-grid{grid-template-columns:1fr}.strategy-card h3{font-size:18px}.strategy-card>p{font-size:12px}.card-top{margin-bottom:18px}.card-time{font-size:11px}.card-stat{margin:20px 0}.card-stat strong{font-size:18px}.card-stat span{font-size:10px}.strategy-card>button{font-size:11px}.tiny-badge{font-size:9px}.note-card{padding:24px}.note-card p{font-size:12px;max-width:none}.form-grid{grid-template-columns:1fr}.wide{grid-column:auto}.tabs{gap:20px}.filters .field{min-width:calc(50% - 10px)}.private-label{font-size:9px}}
.table-scroll{position:relative}.sidebar nav{position:relative}

.uk-schedule{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 20px;margin:20px 0;background:var(--soft);border:1px solid var(--border);border-radius:12px}.uk-schedule strong{font-size:14px}.uk-schedule p{margin:5px 0 0;color:var(--muted);font-size:12px}.uk-schedule .field{min-width:150px;margin:0}@media(max-width:600px){.uk-schedule{align-items:stretch;flex-direction:column;gap:12px}}

/* Monochrome accents, controls and feedback in both themes. */
body{background:var(--bg)}button{background:var(--surface)}button:hover{background:var(--hover);border-color:var(--muted)}button.primary{color:var(--on-primary)}button.primary:hover{background:var(--primary-hover)}:focus-visible{outline-color:var(--ink)}
.sidebar{background:var(--surface);color:var(--ink);border-right:1px solid var(--border)}.sidebar button.active,.sidebar button:hover{background:var(--hover);color:var(--ink)}.strategy-nav strong,.topbar strong,.card-stat strong,.rule-time,.rule-card dt,.rule-card dd{color:var(--ink)}
.dot{background:var(--ink)!important}.strategy-card:before{background:var(--ink)}.private-label .dot{background:var(--ink)}.metrics,.panel,.field input,.field select,.field textarea{background:var(--surface)}.strategy-card>button:hover{background:var(--hover)}
.alert.error{color:var(--ink);border-color:var(--ink)}.negative{font-weight:650;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:4px}.status{color:var(--ink);border:1px solid var(--border)}.status.open{border-style:dashed}.status.skipped{background:transparent}
dialog{background:var(--surface);border-color:var(--border)}dialog::backdrop{background:#00000099}.curve{color:var(--ink)}.curve path{stroke:var(--border)}.curve polyline{stroke:var(--ink)}.curve circle{fill:var(--ink)}
.topbar-actions{display:flex;align-items:center;gap:18px}.private-label{display:flex;align-items:center;gap:8px}.theme-toggle{min-height:36px;padding:7px 10px;font-size:11px;white-space:nowrap}.theme-choice{display:inline-flex;align-items:center;gap:7px}.theme-choice.to-dark{display:none}:root[data-theme="light"] .theme-choice.to-light{display:none}:root[data-theme="light"] .theme-choice.to-dark{display:inline-flex}
@media(max-width:600px){.topbar{padding:0 16px}.topbar-actions{gap:10px}.topbar-actions .private-label{display:none}.theme-toggle{font-size:10px;min-height:34px}.sidebar{border-right:0;border-bottom:1px solid var(--border)}}

/* FIELDNOTES / Aeris optical theme. Trading content remains on a steady foreground plane. */
:root, :root[data-theme="light"] {
  color-scheme: light;
  --bg: #e7edfa; --ink: #22324e; --muted: #50627f;
  --surface: #ffffff50; --soft: #ffffff26; --hover: #ffffff70;
  --border: #6d8eb529; --green: #316bdf; --red: #ae3856;
  --on-primary: #fff; --primary-hover: #295dc4;
  --glass-fill: linear-gradient(125deg,#ffffff73,#ffffff26 55%,#ffffff40);
  --glass-edge: #ffffff60; --blue: #316bdf;
  --field: #ffffff57; --focus: #2d63d0;
}
:root[data-theme="dark"] {
  color-scheme: dark;
  --bg: #10172b; --ink: #e9f1ff; --muted: #b4c6e3;
  --surface: #263e653d; --soft: #accbff0c; --hover: #a8c8ff20;
  --border: #aec9f326; --green: #92b9ff; --red: #ff9ab3;
  --on-primary: #fff; --primary-hover: #5485ec;
  --glass-fill: linear-gradient(125deg,#91b1e526,#12223e45 56%,#9391e927);
  --glass-edge: #c4dcff2c; --blue: #97bbff;
  --field: #0c1e364a; --focus: #a4c8ff;
}
html { background: var(--bg); }
body { background: transparent; }
::selection { background: #749fff55; }
.atmosphere { position: fixed; inset: 0; z-index: 0; pointer-events: none; overflow: hidden; background: linear-gradient(125deg,var(--bg),#a0bdf54d,#b8adf044); }
.shell { position: relative; z-index: 1; }
main { margin-left: 262px; }
.main-content { max-width: 1580px; padding: 39px 38px 27px; }
h1 { font-size: clamp(28px,2.4vw,38px); font-weight: 650; letter-spacing: -1.65px; }
h2,h3 { color: var(--ink); }
.eyebrow { color: var(--muted); font-size: 9px; letter-spacing: 2.15px; }
.lede { font-size: 13px; }
.page-heading { margin-bottom: 26px; }
button { border-radius: 10px; background: var(--field); border-color: var(--border); transition: background .2s,box-shadow .2s,border-color .2s; }
button:hover { background: var(--hover); border-color: var(--glass-edge); box-shadow: 0 5px 14px -8px #375c9e44; }
button.primary { background: linear-gradient(145deg,#4d88f6,#2e5fce); border: 1px solid #4580e7; color: #fff; box-shadow: inset 0 1px 0 #ffffff4d,0 5px 12px -5px #2c5fa377; border-radius: 11px; }
button.primary:hover { background: linear-gradient(145deg,#6097fc,#356bd9); box-shadow: inset 0 1px 0 #ffffff50,0 7px 17px -6px #2c5fa388; }
button:active:not(:disabled) { box-shadow: inset 0 2px 5px #24467620; }
:focus-visible { outline: 3px solid var(--focus); outline-offset: 3px; }
button:disabled { box-shadow: none; }
.glass, .sidebar, .modal {
  --rest-lift: 0px;
  position: relative; isolation: isolate;
  background: var(--glass-fill);
  border: 1px solid var(--glass-edge);
  border-radius: 22px;
  -webkit-backdrop-filter: blur(12px) saturate(140%);
  backdrop-filter: blur(12px) saturate(140%);
  transition: box-shadow .28s ease, border-color .28s ease;
}
.glass { overflow: hidden; }
.filters, .section-heading, .filter-caption, .page-heading, .data-tools, footer { position: relative; z-index: 1; }
/* One fine, broken reflection; never a thick white perimeter or masked frame. */
.glass::after { content: ''; position: absolute; left: 18%; right: 26%; top: 0; height: 1px; pointer-events: none; background: linear-gradient(90deg,transparent,#ffffff70,transparent); }
.sidebar { position: fixed; z-index: 20; left: 16px; top: 16px; bottom: 16px; width: 230px; padding: 28px 15px 19px; border-radius: 23px; background: linear-gradient(135deg,#ffffff77,#ffffff2c); }
[data-theme="dark"] .sidebar { background: linear-gradient(135deg,#49618729,#15274352); }
.brand { padding: 0 8px 34px; gap: 10px; color: var(--ink); font-size: 15px; letter-spacing: 1.35px; }
.brand small { letter-spacing: .75px; font-size: 10px; margin-top: 5px; }
.brand-icon { width: 37px; height: 40px; color: #fff; background: linear-gradient(140deg,#adceff,#649af5 45%,#3b6cce); border: 1px solid #ffffff75; border-radius: 11px; box-shadow: inset 1px 1px 1px #ffffff70,0 5px 9px -4px #4974b86b; }
.workspace-label { font-size: 9px; letter-spacing: 1.55px; margin-bottom: 19px; }
.workspace-label span { border-color: var(--border); background: var(--soft); border-radius: 5px; padding: 4px 6px; }
.nav-main { padding: 13px 12px; border-radius: 11px; }
.sidebar button { color: var(--muted); border: 1px solid transparent; }
.sidebar button.active { color: var(--blue); background: linear-gradient(115deg,#ffffff9e,#a7c4ff44); border-color: #ffffff7a; box-shadow: inset 0 1px 0 #ffffff70,0 5px 12px -7px #3a60a544; }
.sidebar button.active strong { color: var(--blue); }
.sidebar button:hover { color: var(--ink); background: var(--hover); }
[data-theme="dark"] .sidebar button.active { background: linear-gradient(115deg,#85b4ff27,#668fe412); border-color: #bed8ff2e; box-shadow: inset 0 1px 0 #cbe0ff12,0 5px 12px -7px #02091d80; }
.nav-label { margin-top: 29px; }
.strategy-nav { border-radius: 11px; min-height: 67px; gap: 11px; padding: 12px 10px; margin: 4px 0; }
.strategy-nav strong { color: var(--ink); font-size: 11px; font-weight: 600; }
.strategy-nav small { font-size: 10px; line-height: 1.4; }
.strategy-nav .dot { background: #5b8be8!important; box-shadow: 0 0 0 4px #77a5ed14; width: 6px; height: 6px; }
.strategy-nav:nth-child(2) .dot { background: #8f8de0!important; }
.strategy-nav:nth-child(3) .dot { background: #83b5f4!important; }
.strategy-nav:nth-child(4) .dot { background: #6aa5bb!important; }
.strategy-nav:nth-child(5) .dot { background: #a08fd5!important; }
.strategy-nav:nth-child(6) .dot { background: #6b97c9!important; }
.sidebar-bottom { padding-top: 22px; }
.verified { padding-top: 19px; }
.verified svg { color: var(--blue); }
.topbar { height: 76px; padding: 0 38px; border-color: #7d9bc315; background: #ffffff0b; color: var(--muted); }
.topbar strong { color: var(--ink); }
.topbar-actions { gap: 20px; }
.private-label .dot { background: #6d9af5!important; box-shadow: 0 0 0 3px #78a3ee16; }
.theme-toggle { background: var(--field); border-color: var(--glass-edge); box-shadow: inset 0 1px 0 #ffffff20; }
.tabs { display: inline-flex; gap: 4px; padding: 4px; border: 1px solid var(--glass-edge); background: var(--surface); border-radius: 12px; margin-bottom: 5px; backdrop-filter: blur(12px); }
.tabs button { min-height: 37px; padding: 8px 14px; border: 1px solid transparent; border-radius: 8px; font-size: 12px; }
.tabs button.active { color: var(--blue); border-color: var(--glass-edge); background: var(--hover); box-shadow: 0 3px 9px -5px #456dae45; }
.uk-schedule { padding: 15px 20px; margin: 18px 0 23px; border-radius: 17px; }
.uk-schedule strong { font-size: 12px; font-weight: 600; }
.uk-schedule p { font-size: 11px; margin-top: 4px; }
.uk-schedule .field { min-width: 145px; }
.field>span { font-size: 10px; font-weight: 550; color: var(--muted); }
.field input,.field select,.field textarea { border-radius: 9px; border-color: var(--border); background: var(--field); color: var(--ink); transition: background .2s, border-color .2s; }
.field input:hover,.field select:hover,.field textarea:hover { border-color: #6894cd66; }
select option { background: #f1f5ff; color: #22324e; }
[data-theme="dark"] select option { background: #172b49; color: #e9f1ff; }
.filter-caption { margin: 12px 0 21px; }
.metrics { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 17px; background: none; border: 0; border-radius: 0; padding: 0; margin-bottom: 30px; }
.metrics>div,.metrics>div:last-child,.metrics>div:nth-child(2) { padding: 23px 20px 22px; border: 1px solid var(--glass-edge); }
.metrics>div>span { font-size: 9px; letter-spacing: 1px; }
.metrics strong { font-size: clamp(25px,2.5vw,35px); letter-spacing: -1.2px; margin: 15px 0 7px; font-weight: 550; }
.metrics>div>small { line-height: 1.6; font-size: 10px; }
.metrics>div>span>small { border-color: var(--border); border-radius: 4px; }
.section-heading { margin-top: 29px; margin-bottom: 17px; }
.section-heading h2 { font-size: 17px; font-weight: 600; }
.strategy-grid { gap: 19px; }
.strategy-card { padding: 23px 23px 0; overflow: hidden; }
.strategy-card:before { display: none; }
.card-top { margin-bottom: 21px; }
.code { letter-spacing: 1.1px; font-size: 9px; color: var(--blue); }
.tiny-badge { font-size: 8px; color: var(--muted); }
.tiny-badge svg { color: var(--blue); }
.strategy-card h3 { font-size: 17px; letter-spacing: -.55px; font-weight: 600; }
.strategy-card>p { font-size: 11px; line-height: 1.7; margin-top: 7px; }
.card-time { padding: 7px 9px; border: 1px solid var(--border); border-radius: 7px; background: var(--soft); font-size: 10px; line-height: 1.6; margin-top: 18px; }
.card-stat { margin: 23px 0; }
.card-stat strong { color: var(--ink); font-size: 18px; font-weight: 550; }
.card-stat span { font-size: 10px; }
.strategy-card>button { width: calc(100% + 46px); margin: 0 -23px; padding: 14px 23px; background: #ffffff15; border-top-color: var(--border); color: var(--blue); font-size: 11px; }
.strategy-card>button:hover { background: var(--hover); }
.note-card { padding: 25px; }
.note-card>svg { color: var(--blue); }
.note-card h3 { font-size: 18px; }
.note-card p { font-size: 12px; max-width: 360px; }
.note-card>button { color: var(--blue); font-size: 11px; }
.strategy-grid>.note-card { grid-column: 1 / -1; display: grid; grid-template-columns: auto 1fr auto; column-gap: 18px; align-items: center; padding: 21px 25px; }
.strategy-grid>.note-card>svg { grid-row: 1 / 3; }
.strategy-grid>.note-card h3 { margin: 0 0 5px; font-size: 16px; }
.strategy-grid>.note-card p { max-width: none; grid-column: 2; font-size: 11px; }
.strategy-grid>.note-card button { grid-column: 3; grid-row: 1 / 3; padding: 10px 0; margin: 0; }
.ledger { overflow: hidden; }
th { background: #ffffff14; border-color: var(--border); color: var(--muted); font-size: 10px; padding-top: 17px; padding-bottom: 17px; }
td { color: var(--ink); border-color: var(--border); }
tbody tr:hover { background: var(--hover); }
.text-button { color: var(--blue); }
.negative { color: var(--red)!important; font-weight: 600; text-decoration: none; }
.status { background: #5599bf12; border: 1px solid #629fb82e; color: var(--ink); border-radius: 6px; }
.status.open { background: #659fff12; color: var(--blue); border-color: #699ce94d; }
.status.skipped { color: var(--muted); border-style: dashed; }
.empty-state { padding: 35px 24px 38px; }
.empty-icon { background: linear-gradient(140deg,#ffffff55,#a5c8ff22); color: var(--blue); border-color: var(--glass-edge); border-radius: 13px; box-shadow: 0 5px 12px -7px #3f6ba54d; }
.empty-state p { font-size: 12px; }
.empty-state button { font-size: 11px; }
.data-tools h3 { font-size: 13px; }
.data-tools p { font-size: 11px; }
.data-tools button { background: var(--field); font-size: 11px; border-radius: 9px; }
.detail-panels { grid-template-columns: 1.5fr 1fr; gap: 20px; }
.panel { padding: 25px; }
.curve { height: 195px; }
.curve-grid { stroke: var(--border); stroke-width: 1px; stroke-dasharray: 2 7; }
.curve path { stroke: var(--border); }
.curve polyline { stroke: var(--blue); filter: drop-shadow(0 3px 5px #4f85d429); }
.curve circle { fill: var(--blue); stroke: var(--surface); stroke-width: 2px; }
.chart-stats { padding-top: 20px; border-color: var(--border); }
.chart-stats strong { font-size: 20px; }
.chart-empty { height: 195px; }
.chart-empty svg { color: var(--blue); }
.session-panel h2 { font-size: 22px; line-height: 1.5; }
.session-panel button { color: var(--blue); }
.rule-card { margin-top: 22px; padding: 28px; }
.rule-card dt { color: var(--ink); }
.rule-card dd { color: var(--muted); }
.rule-time { color: var(--blue); }
.rule-notes { background: var(--soft); border: 1px solid var(--border); border-radius: 12px; }
.badge { color: var(--blue); border-color: var(--border); border-radius: 8px; background: var(--soft); }
.verification-banner { border-radius: 18px; }
.verification-banner>svg { color: var(--blue); }
.alert { background: var(--field); border-color: var(--border); border-radius: 12px; }
.alert.error { color: var(--red); border-color: #c75e793f; }
dialog.modal { position: fixed; padding: 0; background: linear-gradient(125deg,#f3f8ffe8,#dce8ffdb 55%,#e7e6ffdf); max-height: 92dvh; }
[data-theme="dark"] dialog.modal { background: linear-gradient(125deg,#172c49ed,#1b2c4ae8 55%,#303357eb); }
dialog::backdrop { background: #142b4b45; -webkit-backdrop-filter: blur(9px);
  backdrop-filter: blur(9px); }
.dialog-head { padding: 23px 28px; }
.dialog-head h2 { font-size: 25px; }
.form-body { max-height: calc(92dvh - 182px); }
.net-preview { background: var(--soft); border: 1px solid var(--border); border-radius: 10px; }
.dialog-actions { background: var(--soft); }
.form-hint { font-size: 11px; }
footer { padding-top: 23px; margin-top: 20px; font-size: 10px; }
@media(min-width:1600px) { .main-content { padding: 46px 48px 30px; } .topbar { padding: 0 48px; } .strategy-card { padding-top: 27px; } .strategy-card h3 { font-size: 19px; } }
@media(max-width:1200px) { .sidebar { width: 210px; left: 12px; } main { margin-left: 232px; } .main-content { padding: 30px 25px; } .topbar { padding: 0 25px; } .metrics { gap: 12px; } .metrics>div,.metrics>div:last-child,.metrics>div:nth-child(2) { padding: 20px 15px; } .metrics strong { font-size: 27px; } .detail-panels { grid-template-columns: 1fr; } }
@media(max-width:1100px) { .metrics { grid-template-columns: 1fr 1fr; } }
@media(max-width:800px) {
  .shell { display: block; } .sidebar { position: relative; left: auto; top: auto; bottom: auto; width: auto; margin: 12px; padding: 18px; border-radius: 20px; overflow: visible; }
  .brand { padding: 0; font-size: 14px; } .brand-icon { width: 33px; height: 36px; } .brand small { font-size: 9px; }
  .sidebar nav { margin-top: 18px; padding-bottom: 3px; } .strategy-nav { min-height: 58px; min-width: 159px; margin: 0; padding: 10px; } .strategy-nav small { font-size: 10px; }
  .nav-main { top: 19px; right: 18px; } main { margin-left: 0; } .topbar { height: 52px; padding: 0 25px; } .main-content { padding: 24px; }
  .page-heading { margin-bottom: 22px; } .page-heading h1 { font-size: 29px; } .tabs { gap: 2px; } .tabs button { font-size: 11px; padding: 9px 12px; }
  .metrics { grid-template-columns: 1fr 1fr; gap: 14px; padding: 0; } .metrics>div,.metrics>div:last-child,.metrics>div:nth-child(2) { padding: 21px; } .metrics strong { font-size: 30px; }
  .strategy-grid { gap: 15px; } .strategy-card { padding: 21px 19px 0; } .strategy-card>button { width: calc(100% + 38px); margin: 0 -19px; padding: 13px 19px; } .strategy-card h3 { font-size: 17px; }
  .strategy-grid>.note-card { padding: 23px; grid-template-columns: auto 1fr; } .strategy-grid>.note-card button { grid-column: 2; grid-row: 3; justify-self: start; padding: 14px 0 0; }
}
@media(max-width:520px) {
  .sidebar { margin: 10px; padding: 16px; } .nav-main { right: 13px; top: 17px; padding: 7px; gap: 5px; } .brand { gap: 8px; font-size: 12px; letter-spacing: 1px; }
  .main-content { padding: 22px 16px; } .topbar { padding: 0 17px; } .topbar-actions { gap: 10px; } .topbar-actions .private-label { display: none; }
  .page-heading { gap: 17px; } .page-heading h1 { font-size: 29px; } .page-heading>.primary { min-height: 42px; font-size: 12px; }
  .tabs { display: flex; width: 100%; } .tabs button { flex: 1; padding: 8px 5px; gap: 5px; font-size: 10px; } .tabs button svg { width: 14px; }
  .uk-schedule { padding: 17px; } .uk-schedule p { line-height: 1.7; } .filters .field { min-width: calc(50% - 10px); } .filter-caption { gap: 10px; line-height: 1.6; }
  .metrics { gap: 12px; margin-bottom: 26px; } .metrics>div,.metrics>div:last-child,.metrics>div:nth-child(2) { padding: 19px 15px; border-radius: 18px; } .metrics strong { font-size: 27px; } .metrics>div>span { font-size: 8px; letter-spacing: .65px; } .metrics>div>small { font-size: 9px; }
  .strategy-grid { grid-template-columns: 1fr; } .strategy-card { padding: 24px 23px 0; } .strategy-card>button { width: calc(100% + 46px); margin: 0 -23px; padding: 15px 23px; } .strategy-card h3 { font-size: 19px; }
  .section-heading { gap: 12px; align-items: start; } .section-heading>span { max-width: 130px; text-align: right; line-height: 1.6; }
  .panel { padding: 21px 18px; } .chart-stats { gap: 10px; } .chart-stats strong { font-size: 17px; } .chart-stats>span { font-size: 9px; }
  .rule-card { padding: 23px 19px; } .rule-heading { align-items: flex-start; gap: 14px; flex-direction: column; } .rule-card dl>div { grid-template-columns: 1fr; gap: 5px; } .rule-time { line-height: 1.7; } .verification-banner { padding: 20px; gap: 12px; }
  .dialog-head,.form-body { padding: 20px; } .dialog-actions { padding: 16px 20px; } .form-grid { gap: 17px; } footer { flex-direction: column; gap: 10px; line-height: 1.7; }
}
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { transition: none!important; scroll-behavior: auto!important; } }
/* Keep modal actions fixed and only the form body scrollable. */
dialog.modal { overflow: hidden; }
dialog.modal>form { display: flex; flex-direction: column; max-height: calc(92dvh - 2px); }
.dialog-head,.dialog-actions { flex-shrink: 0; }
.form-body { min-height: 0; max-height: none; flex: 1; overflow: auto; }
* { scrollbar-width: thin; scrollbar-color: #7694bd66 transparent; }
*::-webkit-scrollbar { width: 7px; height: 6px; }
*::-webkit-scrollbar-track { background: transparent; }
*::-webkit-scrollbar-thumb { background: #7694bd66; border-radius: 10px; }

/* Same Helvetica wordmark treatment as the hedge.army hero, scaled for the sidebar. */
.brand-copy { min-width: 0; }
.brand-title {
  display: block;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 30px;
  line-height: 1.1;
  letter-spacing: -.07em;
  font-weight: 200;
  white-space: nowrap;
}
.brand-title strong { font-weight: 600; }
.brand-title .brand-dot { font-weight: 200; }
.brand-title .brand-ai {
  font-size: .27em;
  letter-spacing: .04em;
  font-weight: 400;
  vertical-align: super;
  margin-left: .52em;
}
.brand-copy>small { margin-top: 4px; }
@media(max-width:520px) { .brand-title { font-size: 27px; } }

/* Same scene, displaced pixels. The foreground never enters the refraction texture. */
.atmosphere-canvas {
  display: block;
  width: 100%;
  height: 100%;
}
.glass,
.sidebar,
.workspace-switch,
.insight-note,
.modal,
.topbar {
  isolation: isolate;
}
.workspace-switch,
.topbar {
  position: relative;
}
.glass-refraction {
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  pointer-events: none;
  display: block;
  opacity: 1;
}
/* Keep the sampling plane aligned with the actual backdrop. Refraction replaces the old fake tilt. */
.glass,
.glass:hover {
  transform: translateY(var(--rest-lift)) !important;
}
.workspace-switch:hover,
.insight-note:hover {
  transform: none;
}
/* The rim is the effect now; keep specular light quiet enough to see it bend. */
.glass[data-refraction="webgl"]::before {
  opacity: 0.32 !important;
}
.glass[data-refraction="webgl"]::after {
  opacity: 0.58 !important;
}
[data-theme="dark"] .glass[data-refraction="webgl"]::before {
  opacity: 0.4 !important;
}
[data-theme="dark"] .glass[data-refraction="webgl"]::after {
  opacity: 0.72 !important;
}
@media (prefers-reduced-motion: reduce) {
  .glass, .glass:hover { transform: none !important; }
  .glass-refraction {
    display: none;
  }
}

/* The transient wave field sits behind every interface surface. */
.puddle-canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.puddle-canvas[hidden] { display: none; }

/* A short contact shadow and a wider cast shadow make the glass feel raised. */
.glass {
  box-shadow:
    inset 0 1px 0 #ffffff30,
    inset 0 -1px 0 #547db51c,
    0 3px 5px -2px #385b942b,
    0 16px 24px -12px #385b9452,
    0 32px 46px -27px #426baa3d;
}
.sidebar, .workspace-switch, .insight-note, .modal {
  box-shadow: inset 0 1px 0 #ffffff38, 0 3px 5px -3px #385b942b, 0 18px 32px -19px #385b9452;
}
[data-theme="dark"] .glass,
[data-theme="dark"] .glass:focus-within {
  box-shadow: inset 0 1px 0 #d5e8ff2b, inset 0 -1px 0 #02091966,
    0 4px 7px -3px #02091d80, 0 20px 32px -14px #02091d99;
}
[data-theme="dark"] .sidebar,
[data-theme="dark"] .workspace-switch,
[data-theme="dark"] .insight-note,
[data-theme="dark"] .modal {
  box-shadow: inset 0 1px 0 #d5e8ff20, 0 4px 8px -4px #02091d80, 0 20px 35px -18px #02091d99;
}
@media (hover: hover) and (pointer: fine) {
  .glass:hover {
    box-shadow: inset 0 1px 0 #ffffff40, inset 0 -1px 0 #547db51c,
      0 5px 8px -4px #385b9436, 0 24px 38px -17px #385b9460,
      0 40px 58px -30px #426baa38;
  }
  [data-theme="dark"] .glass:hover {
    box-shadow: inset 0 1px 0 #d5e8ff38, inset 0 -1px 0 #02091966,
      0 5px 9px -4px #02091d99, 0 26px 40px -18px #02091db3;
  }
  button.glass:active {
    box-shadow: inset 0 1px 0 #ffffff30, 0 2px 4px -2px #385b9438,
      0 8px 14px -9px #385b9452;
  }
  [data-theme="dark"] button.glass:active {
    box-shadow: inset 0 1px 0 #d5e8ff20, 0 2px 5px -2px #02091d80,
      0 8px 14px -9px #02091d99;
  }
}
@media (prefers-reduced-motion: reduce) {
  .puddle-canvas { display: none; }
}

/* Keep broad water wavefronts legible through the body of every glass panel. */
.glass {
  -webkit-backdrop-filter: blur(12px) saturate(140%);
  backdrop-filter: blur(12px) saturate(140%);
}

/* Clip diffusion to the pane itself; Safari must not diffuse the shadow's bounds. */
.glass {
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}
.glass::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -3;
  border-radius: inherit;
  pointer-events: none;
  -webkit-backdrop-filter: blur(12px) saturate(140%);
  backdrop-filter: blur(12px) saturate(140%);
}
.glass[data-refraction="webgl"]::before,
[data-theme="dark"] .glass[data-refraction="webgl"]::before { opacity: 1 !important; }
.glass { background: transparent; }
.glass::before {
  display: block;
  width: auto;
  height: auto;
  background: var(--glass-fill);
}

/* Raised glass: a defined contact edge and a soft cast shadow, never a white frame. */
.glass {
  border-color: #86a6d34a;
  border-top-color: #ffffff55;
  border-bottom-color: #6689bc59;
  box-shadow: inset 0 1px 0 #ffffff32, inset 0 -1px 0 #4b70a529,
    0 3px 5px -2px #24497745, 0 13px 22px -10px #305b9859,
    0 30px 44px -23px #4168a64f;
}
[data-theme="dark"] .glass,
[data-theme="dark"] .glass:focus-within {
  border-color: #8aafe23d;
  border-top-color: #c9e1ff3b;
  border-bottom-color: #07152d80;
  box-shadow: inset 0 1px 0 #d5e8ff24, inset 0 -1px 0 #02091970,
    0 4px 7px -3px #02091da6, 0 18px 29px -12px #02091db3,
    0 30px 42px -24px #02091d99;
}
@media (hover: hover) and (pointer: fine) {
  .glass:hover {
    box-shadow: inset 0 1px 0 #ffffff40, inset 0 -1px 0 #4b70a53d,
      inset 0 -6px 10px -7px #284d8580,
      0 5px 8px -3px #24497761, 0 24px 34px -13px #305b9878,
      0 43px 58px -27px #4168a65c;
  }
  [data-theme="dark"] .glass:hover {
    box-shadow: inset 0 1px 0 #d5e8ff32, inset 0 -1px 0 #02091980,
      inset 0 -6px 10px -7px #010714b3,
      0 6px 10px -3px #02091dc4, 0 27px 39px -15px #02091ddd,
      0 42px 56px -26px #02091db3;
  }
}

/* Three directly selectable palettes; selected state is also exposed to assistive technology. */
.theme-picker { display: inline-flex; gap: 3px; padding: 4px; border: 1px solid var(--glass-edge); border-radius: 12px; background: var(--field); box-shadow: inset 0 1px 0 #ffffff20; }
.theme-picker .theme-option { min-height: 31px; padding: 6px 9px; gap: 5px; font-size: 11px; border: 1px solid transparent; background: transparent; color: var(--muted); border-radius: 8px; box-shadow: none; }
.theme-picker .theme-option:hover { background: var(--hover); color: var(--ink); }
:root[data-theme="light"] .theme-light,
:root[data-theme="dark"] .theme-dark,
:root[data-theme="red"] .theme-red { color: var(--ink); background: var(--hover); border-color: var(--glass-edge); box-shadow: 0 3px 7px -4px #17365c40; }
:root[data-theme="red"] {
  color-scheme: dark;
  --bg: #bb003f; --ink: #fff8fa; --muted: #ffe7ee;
  --surface: #4e092f40; --soft: #ffd0df0d; --hover: #ffd5e424;
  --border: #ffd6e333; --green: #fff0e8; --red: #ffdda4;
  --on-primary: #891338; --primary-hover: #fff4f5;
  --glass-fill: linear-gradient(125deg,#4b092d33,#750b3426 55%,#590b341c);
  --glass-edge: #ffbed23d; --blue: #fff0f5;
  --field: #51032645; --focus: #ffe2a9;
}
[data-theme="red"] ::selection { background: #ffe1b355; }
[data-theme="red"] .atmosphere { background: radial-gradient(ellipse at 60% 35%,#ec0860,#d5004b 60%,#bb003f); }
[data-theme="red"] .sidebar { background: linear-gradient(135deg,#650b352b,#4c072f33); border-color: #ffc5d53d; box-shadow: inset 0 1px 0 #ffd5e52e,0 4px 7px -3px #3e082666,0 22px 35px -17px #3e082680; }
[data-theme="red"] .brand-icon { background: linear-gradient(140deg,#ffb0c7,#e75884 45%,#a61f4c); border-color: #ffe0e75c; box-shadow: inset 1px 1px 1px #ffe6ed55,0 5px 9px -4px #4d082a80; }
[data-theme="red"] .sidebar button.active { color: #fff8fa; background: linear-gradient(115deg,#ffc9db29,#f875a01f); border-color: #ffd0e13d; box-shadow: inset 0 1px 0 #ffe0e51c,0 5px 12px -7px #52052a77; }
[data-theme="red"] .sidebar button.active strong { color: #fff; }
[data-theme="red"] .strategy-nav .dot { background: #ffc5d8!important; box-shadow: 0 0 0 4px #ffc6df10; }
[data-theme="red"] .strategy-nav:nth-child(2n) .dot { background: #ffe1c5!important; }
[data-theme="red"] .private-label .dot { background: #ffdfc1!important; box-shadow: 0 0 0 3px #ffcfdf18; }
[data-theme="red"] .topbar { border-color: #ffcbd51c; background: #5e072208; }
[data-theme="red"] button:hover { box-shadow: 0 5px 14px -8px #3e062766; }
[data-theme="red"] button.primary { color: #831036; background: linear-gradient(140deg,#fff6f4,#f5ced9); border-color: #ffdee4; box-shadow: inset 0 1px 0 #ffffff88,0 5px 12px -5px #54072980; }
[data-theme="red"] button.primary:hover { background: linear-gradient(140deg,#fff,#ffe5ed); box-shadow: inset 0 1px 0 #ffffff88,0 7px 17px -6px #54072999; }
[data-theme="red"] .tabs button.active { box-shadow: 0 3px 9px -5px #49072f66; }
[data-theme="red"] .field input:hover,
[data-theme="red"] .field select:hover,
[data-theme="red"] .field textarea:hover { border-color: #ffcfdf77; }
[data-theme="red"] select option { background: #740d32; color: #fff8fa; }
[data-theme="red"] .glass,
[data-theme="red"] .glass:focus-within {
  border-color: #ffc3d63d; border-top-color: #ffdee547; border-bottom-color: #48072380;
  box-shadow: inset 0 1px 0 #ffdce52b,inset 0 -1px 0 #35051f66,
    0 4px 7px -3px #39051f80,0 18px 29px -12px #50062599,0 30px 42px -24px #43052580;
}
/* Less tint and diffusion reveal the shared water plane; foreground stays untouched. */
[data-theme="red"] .glass::before,
[data-theme="red"] .sidebar {
  -webkit-backdrop-filter: blur(7px) saturate(125%);
  backdrop-filter: blur(7px) saturate(125%);
}
[data-theme="red"] .glass::after { background: linear-gradient(90deg,transparent,#ffdde766,transparent); }
[data-theme="red"] .empty-icon { background: linear-gradient(140deg,#ffcfdf20,#9a194e22); box-shadow: 0 5px 12px -7px #3e052c66; }
[data-theme="red"] .curve { color: #fff0f5; }
[data-theme="red"] .curve stop { stop-color: #ffc2d8; }
[data-theme="red"] .curve polyline { filter: drop-shadow(0 3px 5px #57082e45); }
[data-theme="red"] .status { background: #ffcdde16; border-color: #ffdae33d; }
[data-theme="red"] .status.open { border-color: #ffd4a866; color: #ffe8c9; }
[data-theme="red"] .negative { color: #ffdda4!important; }
[data-theme="red"] .alert.error { color: #ffe0b2; border-color: #ffdc9c70; }
[data-theme="red"] dialog.modal { background: linear-gradient(125deg,#700d34f0,#a41445eb 55%,#6b1037f0); border-color: #ffd0de45; box-shadow: inset 0 1px 0 #ffd8e530,0 24px 70px -18px #36031eb3; }
[data-theme="red"] dialog::backdrop { background: #31041970; }
[data-theme="red"] * { scrollbar-color: #ffd4e266 transparent; }
[data-theme="red"] *::-webkit-scrollbar-thumb { background: #ffd4e266; }
@media (hover:hover) and (pointer:fine) {
  [data-theme="red"] .glass:hover { box-shadow: inset 0 1px 0 #ffe0e532,inset 0 -1px 0 #35051f80,
    inset 0 -6px 10px -7px #36041e99,0 6px 10px -3px #39051f99,
    0 27px 39px -15px #500625b3,0 42px 56px -26px #43052599; }
}
@media(max-width:800px) { .topbar-actions { gap: 10px; } .theme-picker .theme-option { padding: 6px 7px; font-size: 10px; } }
@media(max-width:520px) {
  .topbar { gap: 8px; } .topbar>span { flex: 1; min-width: 0; white-space: nowrap; overflow: hidden; }
  .topbar-actions { flex-shrink: 0; } .theme-picker { padding: 3px; gap: 1px; }
  .theme-picker .theme-option { padding: 6px; gap: 4px; } .theme-picker svg { width: 12px; height: 12px; }
}

.performance-chart{margin:4px 0 18px}.curve-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:4px 0 8px}.curve-summary>span{font-size:11px;color:var(--muted)}.curve-summary strong{font-size:21px;letter-spacing:-.6px}.performance-chart .curve{height:auto;display:block;overflow:visible}.curve-grid{stroke:var(--border);stroke-opacity:.65;stroke-width:1}.curve-zero{stroke:var(--muted);stroke-opacity:.5;stroke-dasharray:4 6}.curve-label{fill:var(--muted);font:12px Arial,sans-serif}.curve .performance-line{stroke:var(--blue);stroke-dasharray:1;stroke-dashoffset:0;animation:performance-reveal 1s ease-out both}.curve .performance-point{fill:var(--surface);stroke:var(--blue);stroke-width:1.6}.curve .performance-halo{fill:var(--blue);opacity:.15}.curve .performance-end{fill:var(--blue);stroke:var(--surface);stroke-width:2}@keyframes performance-reveal{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}@media(prefers-reduced-motion:reduce){.curve .performance-line{animation:none}}

/* Hedge client features use the same glass interface as the source journal. */
.sidebar .add-strategy{border:1px dashed var(--border);margin-top:16px;justify-content:center;width:100%;color:var(--ink)}
.strategy-dialog textarea{min-height:160px}.form-hint a{color:var(--blue)}
.journal-links{display:flex;gap:16px;flex-wrap:wrap;margin:0 0 22px;font-size:12px;color:var(--ink)}
.journal-links a{color:inherit;text-decoration:none;display:inline-flex;align-items:center;gap:6px}.journal-links a:hover{text-decoration:underline}
@media(max-width:800px){.sidebar .add-strategy{width:auto;display:inline-flex;margin-top:12px;min-height:36px}}

.magazine-viewer{width:98vw;max-width:1600px;height:96dvh;max-height:96dvh;padding:0;border:1px solid #ffffff30;border-radius:12px;background:#20241f;color:#eee;overflow:hidden}.magazine-viewer[open]{display:flex;flex-direction:column}.magazine-viewer::backdrop{background:#000b;backdrop-filter:blur(5px)}.magazine-viewer-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 18px;gap:12px;font:13px system-ui}.magazine-viewer-bar div{display:flex;gap:18px;align-items:center}.magazine-viewer-bar a{color:#eee;text-decoration:none}.magazine-viewer-bar button{padding:7px 12px;color:#eee;border:1px solid #ffffff40;border-radius:20px;background:transparent;cursor:pointer}.magazine-viewer iframe{border:0;width:100%;flex:1;min-height:0}.journal-links button{display:inline-flex;align-items:center;gap:7px;color:inherit;font:inherit;border:0;padding:0;background:transparent;cursor:pointer}@media(max-width:600px){.magazine-viewer-bar{padding:9px;font-size:11px}.magazine-viewer-bar div{gap:9px}}
