@import "https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,400..700&family=Inter:wght@400..700&family=JetBrains+Mono:wght@400;600&display=swap";:root{--font-display:"Fraunces", "Iowan Old Style", "Palatino Linotype", Georgia, serif;--font-body:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;font-family:var(--font-body);color:#f1ebdd;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#090c12;font-weight:430;line-height:1.6}html{background-color:#090c12;background-image:radial-gradient(60% 50% at 20% 10%,#c6aa700d,#0000 70%),radial-gradient(50% 45% at 85% 20%,#647fa41a,#0000 70%),radial-gradient(45% 40% at 60% 90%,#f1ebdd08,#0000 70%),none;background-position:0 0,0 0,0 0,0 0;background-repeat:repeat,repeat,repeat,repeat;background-size:auto,auto,auto,auto;background-attachment:fixed;background-origin:padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box}body{background:0 0;min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}#root{min-height:100vh}h1,h2,h3,p{margin-top:0}:root{--bg:#090c12;--bg-deep:#06080d;--surface:#121822;--surface-2:#1a2330;--surface-3:#232f3e;--border:#cdd7e426;--border-strong:#738095;--highlight:#f1ebdd12;--text:#f1ebdd;--text-2:#c8ced7;--muted:#adb7c5;--accent:#c6aa70;--accent-hot:#ddc695;--accent-ink:#090c12;--accent-dim:#c6aa701a;--green:#8dd1ab;--amber:#dfc08a;--red:#ed9b99;--shadow-1:0 1px 0 var(--highlight) inset, 0 12px 32px -16px #0000006b;--shadow-2:0 1px 0 var(--highlight) inset, 0 30px 80px -30px #0000008c;--ease:cubic-bezier(.2, .7, .2, 1);--nav-h:64px;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px)}*{box-sizing:border-box}.app{min-height:100dvh;color:var(--text);flex-direction:column;display:flex}.exposure-row strong,.signal-meta,.log-line time{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.login-screen{place-items:center;min-height:100dvh;padding:24px;display:grid}.login-card{background:var(--surface);border:1px solid var(--border);width:min(400px,100%);box-shadow:var(--shadow-2);border-radius:20px;padding:28px 22px}.login-card h1{font-family:var(--font-display);letter-spacing:-.02em;margin:2px 0 4px;font-size:2rem;font-weight:500;line-height:1.1}.login-sub{color:var(--muted);margin:0 0 22px;font-size:.9rem}.login-error{color:var(--red);background:color-mix(in srgb, var(--red) 10%, transparent);border-radius:10px;margin:0 0 14px;padding:10px 12px;font-size:.85rem}.login-link{text-align:center;color:var(--accent);margin-top:14px;font-size:.9rem;text-decoration:none;display:block}.login-link:hover{color:var(--accent-hot)}.login-alt{width:100%;color:var(--muted);cursor:pointer;background:0 0;border:none;margin-top:10px;font-size:.82rem}.eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin:0 0 6px;font-size:11px;font-weight:600}.status-header{z-index:20;padding:calc(12px + var(--safe-top)) 16px 12px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);background:linear-gradient(#090c12fa,#090c12d1);position:sticky;top:0}.status-top{justify-content:space-between;align-items:center;display:flex}.brand{align-items:center;gap:10px;display:flex}.brand-name{font-family:var(--font-display);letter-spacing:-.01em;white-space:nowrap;font-size:1.15rem;font-weight:500}@media (width<=480px){.brand-prefix{display:none}}.status-pills{align-items:center;gap:8px;display:flex}.env-chip{letter-spacing:.1em;border-radius:6px;padding:4px 8px;font-size:10px;font-weight:700}.env-chip.demo{background:var(--accent-dim);color:var(--accent)}.env-chip.live{background:color-mix(in srgb, var(--red) 16%, transparent);color:var(--red)}.chip{letter-spacing:.08em;border:1px solid #0000;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:700}.chip-armed{background:color-mix(in srgb, var(--green) 14%, transparent);color:var(--green);border-color:color-mix(in srgb, var(--green) 40%, transparent)}.chip-safe{background:color-mix(in srgb, var(--muted) 12%, transparent);color:var(--muted)}.chip-paused{background:color-mix(in srgb, var(--red) 14%, transparent);color:var(--red)}.chip-live{background:var(--accent-dim);color:var(--accent)}.logout-btn{background:color-mix(in srgb, var(--muted) 12%, transparent);color:var(--muted);cursor:pointer;border:none;border-radius:8px;width:32px;height:32px;font-size:15px}.exposure{margin-top:12px}.exposure-row{color:var(--muted);justify-content:space-between;align-items:baseline;font-size:.85rem;display:flex}.exposure-row strong{color:var(--text);font-size:.98rem;font-weight:600}.exposure-row strong.overdue{color:var(--amber)}.exposure-row strong.muted{color:var(--muted);font-family:var(--font-body);font-weight:500}.meter{background:color-mix(in srgb, var(--muted) 14%, transparent);border-radius:999px;height:8px;margin-top:7px;overflow:hidden}.meter-fill{background:linear-gradient(90deg, var(--accent), var(--accent-hot));height:100%;transition:width .4s var(--ease);border-radius:999px}.meter-fill.warm{background:linear-gradient(90deg, #b8801e, var(--amber))}.meter-fill.hot{background:linear-gradient(90deg, #b5534f, var(--red))}.overdue-note{color:var(--amber);margin:8px 0 0;font-size:.75rem}.content{padding:16px 16px calc(var(--nav-h) + var(--safe-bottom) + 24px);flex:1}.view{flex-direction:column;gap:14px;display:flex}.card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-1);border-radius:20px;padding:16px}.card-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.card-header h2{letter-spacing:-.02em;margin:0;font-size:1.05rem;font-weight:650}.muted{color:var(--muted)}.empty{color:var(--muted);text-align:center;padding:18px 0;font-size:.9rem}.hint{color:var(--muted);text-align:center;margin:12px 0 0;font-size:.72rem}.control-card{flex-direction:column;gap:4px;display:flex}.control-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 0;display:flex}.control-row:last-child{border-bottom:none}.control-row h3{margin:0 0 2px;font-size:1rem;font-weight:600}.control-row .muted{font-size:.8rem}.toggle{background:var(--surface-3);cursor:pointer;width:58px;height:34px;transition:background .2s var(--ease);border:none;border-radius:999px;flex-shrink:0;position:relative}.toggle.on{background:var(--green)}.toggle.on.danger{background:var(--red)}.toggle-knob{background:var(--text);width:28px;height:28px;transition:transform .2s var(--ease);border-radius:50%;position:absolute;top:3px;left:3px}.toggle.on .toggle-knob{transform:translate(24px)}.env-toggle{border:1px solid var(--border-strong);color:var(--text);letter-spacing:.08em;cursor:pointer;background:0 0;border-radius:10px;padding:9px 16px;font-size:.78rem;font-weight:700}.env-toggle.live{color:var(--red);border-color:color-mix(in srgb, var(--red) 50%, transparent)}.money-switch{border:1px solid var(--border-strong);border-radius:10px;flex-shrink:0;gap:2px;padding:3px;display:inline-flex}.money-switch button{color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:7px;padding:7px 10px;font-size:.78rem;font-weight:600}.money-switch button.on{background:var(--accent-dim);color:var(--accent-hot);cursor:default}.money-switch button.on.live{background:color-mix(in srgb, var(--red) 16%, transparent);color:var(--red)}.signal-list{flex-direction:column;gap:10px;display:flex}.signal-card{background:var(--surface-2);border:1px solid var(--border);border-left:3px solid var(--border-strong);border-radius:12px;padding:13px}.signal-card.status-executed{border-left-color:var(--green)}.signal-card.status-blocked{border-left-color:var(--amber)}.signal-card.status-error{border-left-color:var(--red)}.signal-top{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.signal-top h3{margin:0;font-size:1.02rem;font-weight:600}.signal-id{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin:0 0 3px;font-size:.66rem;font-weight:600}.signal-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;font-size:.8rem;display:flex}.signal-foot{color:var(--muted);justify-content:space-between;gap:10px;margin-top:8px;font-size:.7rem;display:flex}.side-badge{text-align:center;letter-spacing:.06em;border-radius:999px;min-width:46px;padding:4px 10px;font-size:.68rem;font-weight:700}.side-badge.up{background:color-mix(in srgb, var(--green) 14%, transparent);color:var(--green)}.side-badge.down{background:color-mix(in srgb, var(--red) 14%, transparent);color:var(--red)}.tag{text-transform:uppercase;letter-spacing:.05em;border-radius:999px;padding:3px 8px;font-size:.66rem;font-weight:700}.tag-executed{background:color-mix(in srgb, var(--green) 14%, transparent);color:var(--green)}.tag-blocked{background:color-mix(in srgb, var(--amber) 14%, transparent);color:var(--amber)}.tag-error{background:color-mix(in srgb, var(--red) 14%, transparent);color:var(--red)}.tag-skipped{background:color-mix(in srgb, var(--muted) 14%, transparent);color:var(--muted)}.field-list{flex-direction:column;gap:14px;display:flex}.field{flex-direction:column;gap:7px;display:flex}.field>span{color:var(--text-2);font-size:.82rem}.field-hint{color:var(--muted);font-size:.72rem;font-style:normal}.field input{background:var(--bg-deep);border:1px solid var(--border);width:100%;color:var(--text);transition:border-color .16s var(--ease), box-shadow .16s var(--ease);border-radius:10px;padding:13px 14px;font-size:16px}.field input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim);outline:none}.field>.field-hint{line-height:1.45}.field-pair{align-items:center;gap:10px;display:flex}.field-pair em{color:var(--muted);font-size:.85rem;font-style:normal}.field-pair label{flex:1;align-items:center;gap:6px;display:flex}.field-pair b{color:var(--muted);font-weight:500}.more-options summary{cursor:pointer;letter-spacing:-.02em;justify-content:space-between;align-items:center;font-size:1.05rem;font-weight:650;list-style:none;display:flex}.more-options summary::-webkit-details-marker{display:none}.more-options summary:after{content:"+";color:var(--accent);font-size:1.3rem;font-weight:400;line-height:1}.more-options[open] summary:after{content:"–"}.more-options[open] summary{margin-bottom:14px}.seg-help{color:var(--muted);margin:10px 0 14px;font-size:.8rem}.account-list{flex-direction:column;display:flex}.account-row{border-top:1px solid var(--border);padding:12px 0}.account-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.account-top h3{align-items:center;gap:8px;margin:0 0 2px;font-size:1rem;font-weight:600;display:flex}.account-top .muted{margin:0;font-size:.8rem}.in-use{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);background:var(--accent-dim);border-radius:999px;padding:2px 7px;font-size:.62rem;font-weight:700}.dot{background:var(--border-strong);vertical-align:1px;border-radius:50%;width:7px;height:7px;margin-right:4px;display:inline-block}.dot.ok{background:var(--green)}.mini-btn{border:1px solid var(--border-strong);color:var(--text);cursor:pointer;background:0 0;border-radius:10px;flex-shrink:0;padding:8px 14px;font-size:.82rem;font-weight:600}.mini-btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.connect-form{flex-direction:column;gap:12px;margin-top:12px;display:flex}.steps{color:var(--text-2);margin:0;padding-left:18px;font-size:.82rem;line-height:1.55}.steps a{color:var(--accent)}.field textarea{width:100%;font:.78rem/1.45 var(--font-mono);resize:vertical;background:var(--bg-deep);border:1px solid var(--border);color:var(--text);border-radius:10px;padding:12px 14px}.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim);outline:none}.file-pick{color:var(--accent);cursor:pointer;margin-top:-4px;font-size:.82rem}.file-pick input{color:var(--muted);margin-top:6px;font-size:.78rem;display:block}.file-pick input::file-selector-button{border:1px solid var(--border-strong);color:var(--text);font:600 .78rem var(--font-body);cursor:pointer;background:0 0;border-radius:8px;margin-right:10px;padding:6px 12px}.form-error{color:var(--red);background:color-mix(in srgb, var(--red) 10%, transparent);border-radius:10px;margin:0;padding:10px 12px;font-size:.85rem}.form-ok{color:var(--green);background:color-mix(in srgb, var(--green) 10%, transparent);border-radius:10px;margin:12px 0 0;padding:10px 12px;font-size:.85rem}.seg{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.seg-item{background:var(--surface-2);border:1px solid var(--border);color:var(--muted);cursor:pointer;border-radius:10px;padding:11px 6px;font-size:.78rem}.seg-item.active{background:var(--accent-dim);border-color:var(--accent);color:var(--accent-hot)}.sticky-save{bottom:calc(var(--nav-h) + var(--safe-bottom) + 8px);padding-top:4px;position:sticky}.btn{letter-spacing:.01em;cursor:pointer;width:100%;min-height:48px;transition:transform .16s var(--ease), background-color .16s var(--ease), border-color .16s var(--ease);border:1px solid #0000;border-radius:10px;padding:12px 18px;font-size:.95rem;font-weight:600}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5}.btn-lg{padding:15px 18px;font-size:1rem}.btn-primary{background:var(--accent);color:var(--accent-ink);box-shadow:0 2px 8px #0000003d}.btn-primary:hover:not(:disabled){background:var(--accent-hot)}.btn-primary:disabled{opacity:1;background:var(--surface-3);color:var(--muted);box-shadow:none;cursor:not-allowed}.login-card .btn{margin-top:14px}.btn-danger{background:var(--red);color:var(--accent-ink)}.btn-ghost{color:var(--text);border-color:var(--border-strong);background:0 0}.btn-ghost:hover{border-color:var(--accent)}.log-list{flex-direction:column;gap:8px;display:flex}.log-row{background:var(--surface-2);border:1px solid var(--border);border-radius:12px;padding:11px 12px}.log-line{align-items:center;gap:9px;display:flex}.log-line strong{text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.92rem;font-weight:600;overflow:hidden}.log-line time{color:var(--muted);flex-shrink:0;font-size:.72rem}.log-detail{color:var(--muted);margin:6px 0 0;font-size:.76rem}.log-tag{text-transform:uppercase;letter-spacing:.05em;border-radius:999px;padding:3px 8px;font-size:.64rem;font-weight:700}.log-executed{background:color-mix(in srgb, var(--green) 16%, transparent);color:var(--green)}.log-error{background:color-mix(in srgb, var(--red) 16%, transparent);color:var(--red)}.log-blocked{background:color-mix(in srgb, var(--amber) 16%, transparent);color:var(--amber)}.log-skipped{background:color-mix(in srgb, var(--muted) 16%, transparent);color:var(--muted)}.log-preview{background:var(--accent-dim);color:var(--accent)}.bottom-nav{z-index:30;height:calc(var(--nav-h) + var(--safe-bottom));padding-bottom:var(--safe-bottom);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--border);background:#06080df5;grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.nav-item{color:var(--muted);cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:.68rem;display:flex}.nav-item.active{color:var(--accent)}.nav-icon{font-size:1.25rem;line-height:1}.nav-label{letter-spacing:.04em}.modal-backdrop{z-index:50;padding:16px;padding-bottom:calc(24px + var(--safe-bottom));background:#06080db3;place-items:end center;display:grid;position:fixed;inset:0}.modal-card{background:var(--surface);border:1px solid var(--border);width:min(440px,100%);box-shadow:var(--shadow-2);border-radius:20px;padding:22px;animation:.24s cubic-bezier(.32,.72,0,1) slideUp}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-card h3{font-family:var(--font-display);letter-spacing:-.01em;margin:0 0 8px;font-size:1.35rem;font-weight:500}.modal-card p{color:var(--muted);margin:0 0 18px;font-size:.9rem;line-height:1.5}.modal-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.toast{left:16px;right:16px;bottom:calc(var(--nav-h) + var(--safe-bottom) + 14px);z-index:40;background:var(--surface-3);border:1px solid var(--border);color:var(--text);box-shadow:var(--shadow-2);border-radius:12px;padding:13px 16px;font-size:.85rem;animation:.24s cubic-bezier(.32,.72,0,1) slideUp;position:fixed}@media (width>=720px){.app{border-left:1px solid var(--border);border-right:1px solid var(--border);max-width:520px;margin:0 auto}.bottom-nav{max-width:520px;margin:0 auto}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:0s!important;animation-duration:0s!important}}.gain{color:var(--green)}.loss{color:var(--red)}.pf{gap:0}.pf-hero{text-align:center;padding:18px 4px 26px}.pf-hero .eyebrow{margin-bottom:10px}.pf-total{font-family:var(--font-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin:0;font-size:3rem;font-weight:400;line-height:1}.pf-sub{color:var(--muted);margin:14px 0 0;font-size:.85rem}.pf-dot{color:var(--border-strong);margin:0 8px}.pf-note{background:color-mix(in srgb, var(--amber) 8%, transparent);border-radius:12px;margin:0 0 6px;padding:10px 12px}.pf-note summary{cursor:pointer;color:var(--amber);align-items:center;gap:8px;font-size:.82rem;font-weight:500;list-style:none;display:flex}.pf-note summary::-webkit-details-marker{display:none}.pf-note-dot{background:var(--amber);border-radius:50%;flex-shrink:0;width:6px;height:6px}.pf-note p{color:var(--text-2);margin:8px 0 2px 14px;font-size:.82rem;line-height:1.55}.pf-block{border-top:1px solid var(--border);padding:22px 4px 4px}.pf-label{letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin:0 0 14px;font-size:.68rem;font-weight:600}.pf-label span{color:var(--muted);letter-spacing:.04em;margin-left:6px}.pf-trio{grid-template-columns:repeat(3,1fr);display:grid}.pf-trio div{flex-direction:column;gap:6px;display:flex}.pf-trio span{color:var(--muted);font-size:.75rem}.pf-trio strong{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:1.1rem;font-weight:500}.pf-bar{background:color-mix(in srgb, var(--red) 55%, transparent);border-radius:999px;height:3px;margin:18px 0 0;overflow:hidden}.pf-bar span{background:var(--green);height:100%;display:block}.pf-caption{color:var(--muted);margin:10px 0 14px;font-size:.8rem}.pf-list{margin:0 0 8px;padding:0;list-style:none}.pf-list li{border-top:1px solid color-mix(in srgb, var(--border) 60%, transparent);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.pf-list li:first-child{border-top:none;padding-top:2px}.pf-name{align-items:center;gap:8px;margin:0;font-size:.95rem;font-weight:500;display:flex}.pf-meta{color:var(--muted);margin:3px 0 0;font-size:.75rem}.pf-amount{font-family:var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap;margin:0;font-size:.92rem}.pf-dir{letter-spacing:.06em;border-radius:5px;padding:2px 6px;font-size:.62rem;font-weight:700}.pf-dir.up,.pf-dir.yes{color:var(--green);background:color-mix(in srgb, var(--green) 12%, transparent)}.pf-dir.down,.pf-dir.no{color:var(--red);background:color-mix(in srgb, var(--red) 12%, transparent)}.pf-outcome{background:var(--border-strong);border-radius:50%;flex-shrink:0;width:7px;height:7px}.pf-outcome.won{background:var(--green)}.pf-outcome.lost{background:var(--red)}.alarm-banner{color:var(--red);background:color-mix(in srgb, var(--red) 12%, transparent);border:1px solid color-mix(in srgb, var(--red) 35%, transparent);border-radius:10px;margin:10px 0 0;padding:9px 12px;font-size:.8rem;line-height:1.45}
