:root { --ink:#11130f; --navy:#111827; --paper:#f4f2ea; --card:#fffef9; --line:#d8d5ca; --lime:#ccff38; --orange:#ff6542; --green:#16845b; --muted:#777970; }
* { box-sizing:border-box; }
html, body { min-height:100%; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Arial, Helvetica, sans-serif; background-image:radial-gradient(circle at 80% 5%,rgba(204,255,56,.09),transparent 24%); }
button, input, select { font:inherit; }
[hidden] { display:none !important; }
.kicker, small, th, .metric-grid span, .bot-facts span, .mode-line span, .engine-strip span { font-size:9px; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.button { border:1px solid var(--ink); background:transparent; padding:13px 17px; font-size:10px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; cursor:pointer; transition:.18s; }
.button:hover { transform:translateY(-2px); box-shadow:4px 4px 0 var(--ink); }
.button.primary { background:var(--lime); }
.button.danger { background:var(--orange); }
.button.ghost { background:transparent; }
.button.soft { background:#e9e6dc; border-color:#cbc7ba; }
.button.delete { color:#a72e27; border-color:#d7aaa5; }
.button.small { padding:10px 12px; flex:1; }
.button.wide { width:100%; margin-top:8px; }
.button:disabled { opacity:.45; cursor:wait; transform:none; box-shadow:none; }

.login-screen { min-height:100vh; display:grid; grid-template-columns:1fr 1fr; background:#f3f2f2; color:#201e1d; }
.login-brand { padding:44px 40px; display:flex; flex-direction:column; align-items:flex-start; justify-content:flex-start; position:relative; overflow:hidden; background:#ec3013; color:#f3f2f2; }
.login-brand::after { content:"A"; position:absolute; right:-3vw; bottom:-15vw; font-family:Georgia, serif; font-size:45vw; color:rgba(255,255,255,.025); }
.login-source-kicker { display:flex; align-items:center; gap:12px; font-size:11px; font-weight:800; letter-spacing:.14em; text-transform:uppercase; z-index:1; }
.login-logo-tile { display:grid; place-items:center; width:54px; height:54px; padding:8px; background:#f3f2f2; }
.login-logo-tile img { display:block; width:100%; height:100%; }
.login-brand h1 { font-family:Arial, Helvetica, sans-serif; font-weight:800; font-size:clamp(34px,5vw,52px); line-height:1.04; letter-spacing:-.02em; margin:auto 0 22px; max-width:22ch; z-index:1; }
.login-copy { width:min(560px,100%); color:#f3f2f2; line-height:1.6; font-size:14.5px; margin:0; z-index:1; }
.login-facts { display:flex; gap:0; flex-wrap:wrap; width:100%; margin-top:36px; border-top:2px solid rgba(243,242,242,.45); padding-top:20px; z-index:1; }
.login-facts > div { flex:1 1 120px; padding-right:16px; }
.login-facts strong { display:block; font-size:24px; line-height:1.1; }
.login-facts span { display:block; font-size:12px; line-height:1.45; margin-top:5px; opacity:.9; }
.login-card { width:min(510px,calc(100% - 40px)); margin:0; background:transparent; color:#201e1d; padding:44px 40px; box-shadow:none; display:grid; gap:20px; align-self:center; }
.login-card h2 { font-family:Arial, Helvetica, sans-serif; font-size:40px; line-height:1.1; font-weight:800; letter-spacing:-.02em; margin:10px 0 0; }
.login-card p { color:#605d5d; font-size:14.5px; line-height:1.55; margin:10px 0 0; }
.login-rule { width:100%; border:0; border-top:1px solid rgba(32,30,29,.4); margin:2px 0 0; }
.login-steps { display:flex; align-items:center; gap:22px; border-top:1px solid rgba(32,30,29,.22); padding-top:20px; font-size:12px; color:#605d5d; }
.login-steps strong { color:#201e1d; }
.login-steps strong::before, .login-steps span::before { content:""; display:inline-block; width:13px; height:13px; margin-right:9px; vertical-align:-2px; background:#d7d3d3; }
.login-steps strong::before { background:#ec3013; }
.login-note { font-size:12.5px !important; margin-top:4px !important; }
label { display:grid; gap:8px; font-size:10px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
input, select { border:1px solid var(--line); background:white; padding:13px; outline:none; min-width:0; }
input:focus, select:focus { border-color:var(--ink); box-shadow:0 0 0 2px var(--lime); }
.form-error { color:#c53b30 !important; min-height:18px; margin:0 !important; }

/* Console d'administration v2 : grille claire et navigation Modernist. */
.app-shell { grid-template-columns:246px 1fr; background:#f3f2f2; color:#201e1d; }
.sidebar { width:246px; background:#f3f2f2; color:#201e1d; padding:0; border-right:2px solid rgba(32,30,29,.4); }
.logo { display:block; padding:24px 20px 20px; border-bottom:2px solid rgba(32,30,29,.4); letter-spacing:0; }
.archive-brand { height:auto; }
.prototype-brand-kicker { color:#ec3013; font-size:11px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.prototype-brand strong { display:block; color:#201e1d; font-size:22px; line-height:1.1; letter-spacing:-.015em; margin-top:8px; }
.prototype-brand em { display:block; color:#605d5d; font-size:12px; line-height:1.5; font-style:normal; margin-top:8px; }
.sidebar nav { gap:0; padding:0; overflow-y:auto; }
.nav-item { border:0; border-bottom:1px solid #d7d3d3; border-left:4px solid transparent; color:#201e1d; background:transparent; padding:13px 16px; font-size:14px; }
.nav-item span { color:#605d5d; }
.nav-item:hover, .nav-item.active { color:#201e1d; background:#eae9e9; box-shadow:none; border-left-color:#ec3013; }
.sidebar-bottom { padding:18px 20px 22px; border-top:2px solid rgba(32,30,29,.4); }
.security-state { border:0; padding:0; }
.security-state small { color:#605d5d; }
.security-state strong { color:#201e1d; }
.profile { border:0; border-radius:0; background:transparent; padding:12px 0 0; }
.profile > span { background:#201e1d; color:#f3f2f2; border-radius:0; }
.profile strong { color:#201e1d; }
.workspace { grid-column:2; width:100%; padding:0 30px 44px; }
.workspace-head { height:auto; min-height:130px; padding:26px 0 20px; border-bottom:2px solid rgba(32,30,29,.4); }
.workspace-head h2 { font-family:Arial,Helvetica,sans-serif; font-size:32px; font-weight:800; line-height:1.12; letter-spacing:-.015em; }
.view { padding-top:24px; }

.app-shell { min-height:100vh; display:grid; grid-template-columns:230px 1fr; }
.sidebar { position:fixed; inset:0 auto 0 0; width:248px; background:var(--navy); color:white; display:flex; flex-direction:column; padding:24px 14px; border-right:1px solid rgba(148,163,184,.16); }
.logo { display:flex; align-items:center; gap:11px; padding:0 8px 38px; letter-spacing:.2em; }
.logo span { width:34px; height:34px; display:grid; place-items:center; background:var(--lime); color:var(--ink); font-family:Georgia,serif; font-size:22px; }
.logo small { margin-left:auto; padding:5px 7px; border:1px solid rgba(204,255,56,.45); border-radius:6px; color:var(--lime); font-size:9px; letter-spacing:.08em; }
.sidebar nav { display:grid; gap:4px; overflow-y:auto; padding:4px 0 14px; scrollbar-width:thin; scrollbar-color:#334155 transparent; }
.nav-section-label { margin:18px 10px 2px; padding-top:10px; border-top:1px solid #2b3548; color:#68758a; font-size:9px; font-weight:700; letter-spacing:2px; }
.nav-section-label.alpha-label { color:var(--lime); }
.nav-section-label.listings-label { color:#ff9a7f; }
.nav-section-toggle { width:100%; border-left:0; border-right:0; background:transparent; text-align:left; cursor:pointer; }
.nav-section-toggle::after { content:"⌄"; float:right; font-size:12px; transition:transform .2s; }
.nav-section-toggle[aria-expanded="false"]::after { transform:rotate(-90deg); }
.nav-group { display:grid; gap:3px; margin-top:4px; }
.nav-group-body { display:grid; gap:3px; }
.nav-item { display:flex; align-items:center; gap:14px; width:100%; border:0; color:#9ea6b3; background:transparent; padding:14px 13px; text-align:left; cursor:pointer; font-size:12px; }
.nav-item span { color:#5f6878; font-size:9px; }
.nav-item:hover, .nav-item.active { color:white; background:#20293a; }
.nav-item.active { box-shadow:inset 3px 0 0 var(--lime); }
.sidebar-bottom { margin-top:auto; display:grid; gap:12px; padding-top:14px; border-top:1px solid rgba(148,163,184,.16); }
.app-version { color:#8b96a8; font-size:9px; letter-spacing:.12em; text-transform:uppercase; }
.security-state { display:flex; align-items:center; padding:13px; border:1px solid #2d3747; }
.security-state div, .profile div { display:grid; gap:3px; }
.security-state small, .profile small { color:#7f8998; }
.profile { display:flex; gap:10px; align-items:center; padding:12px 10px; border:1px solid rgba(148,163,184,.2); border-radius:12px; background:rgba(255,255,255,.045); }
.profile > span { width:35px; height:35px; display:grid; place-items:center; border-radius:50%; background:#293448; color:var(--lime); font-weight:bold; }
.profile strong { font-size:12px; }

.workspace { grid-column:2; width:min(1500px,100%); min-width:0; padding:0 42px 60px; }
.workspace-head { height:106px; border-bottom:1px solid var(--ink); display:flex; justify-content:space-between; align-items:center; }
.workspace-head h2 { font-family:Georgia,serif; font-size:32px; font-weight:400; margin:5px 0 0; }
.workspace-head .kicker b { color:var(--orange); }
.head-actions { display:flex; align-items:center; gap:10px; }
.current-date { color:var(--muted); font-size:10px; text-transform:capitalize; margin-right:8px; }
.icon-button { width:42px; height:42px; border:1px solid var(--ink); background:transparent; font-size:18px; cursor:pointer; }
.feedback { position:fixed; right:30px; top:116px; z-index:20; margin:0; background:var(--navy); color:white; padding:12px 16px; font-size:12px; opacity:0; transform:translateY(-5px); pointer-events:none; transition:.2s; }
.feedback:not(:empty) { opacity:1; transform:none; }
.feedback.error { background:#a72e27; }
.view { display:none; }
.view.active { display:block; }
.welcome { min-height:300px; display:grid; grid-template-columns:1fr minmax(390px,.7fr); gap:55px; align-items:center; border-bottom:1px solid var(--ink); }
.welcome h3 { font-family:Georgia,serif; font-size:64px; font-weight:400; letter-spacing:-.05em; margin:10px 0; }
.welcome p, .hero-head p { color:var(--muted); font-size:13px; }
.welcome-copy > p { max-width:520px; line-height:1.55; }
.welcome-actions { display:flex; gap:9px; margin-top:25px; }
.system-card { background:var(--navy); color:white; box-shadow:9px 9px 0 var(--lime); }
.system-card-head { display:flex; justify-content:space-between; align-items:center; padding:14px 17px; border-bottom:1px solid #303a4a; font-size:8px; letter-spacing:.13em; }
.system-card-head span { color:#aeb6c2; }
.system-card-head i { display:inline-block; width:7px; height:7px; margin-right:7px; border-radius:50%; background:var(--lime); box-shadow:0 0 0 4px rgba(204,255,56,.08); }
.system-card-head strong { color:var(--lime); }
.system-main { min-height:130px; display:flex; align-items:center; gap:18px; padding:20px; }
.system-glyph { width:64px; height:64px; display:grid; place-items:center; flex:0 0 auto; border:1px solid #445064; color:var(--lime); font-family:Georgia,serif; font-size:42px; }
.system-main div { display:grid; gap:6px; }
.system-main small { color:#778296; }
.system-main strong { font-family:Georgia,serif; font-size:24px; font-weight:400; }
.system-main p { color:#8f99a9; font-size:10px; margin:0; }
.system-foot { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid #303a4a; }
.system-foot div { padding:13px; border-right:1px solid #303a4a; }
.system-foot div:last-child { border:0; }
.system-foot span { display:block; color:#707b8b; font-size:7px; letter-spacing:.11em; margin-bottom:5px; }
.system-foot strong { font-size:10px; }
.system-foot .locked { color:var(--orange); }
.metric-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); border-bottom:1px solid var(--ink); }
.metric-grid article { padding:25px 18px; border-right:1px solid var(--line); }
.metric-grid article { position:relative; overflow:hidden; transition:.2s; }
.metric-grid article:hover { background:rgba(255,255,255,.48); }
.metric-top { display:flex; justify-content:space-between; align-items:center; }
.metric-top i { font-family:Georgia,serif; color:#b2afa5; font-size:15px; font-style:normal; }
.metric-line { position:absolute; left:18px; right:18px; bottom:0; height:2px; background:#d8d4c9; }
.metric-line.active { background:var(--green); }
.metric-grid article:last-child { border:0; }
.metric-grid strong { display:block; font-family:Georgia,serif; font-weight:400; font-size:42px; margin:8px 0 4px; }
.metric-grid small { color:var(--muted); letter-spacing:0; text-transform:none; font-weight:400; }
.section-head { display:flex; justify-content:space-between; align-items:end; padding:38px 0 22px; }
.section-head > div { display:flex; gap:12px; align-items:baseline; flex-wrap:wrap; }
.section-no { color:var(--orange); font-size:10px; font-weight:bold; }
.section-head h3, .dialog-card h3 { font-family:Georgia,serif; font-size:32px; font-weight:400; margin:0; }
.section-head p { width:100%; margin:3px 0 0 26px; }
.text-button { border:0; background:transparent; font-weight:bold; cursor:pointer; }
.hero-head { min-height:160px; border-bottom:1px solid var(--ink); }
.bot-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.bot-card { min-height:325px; background:var(--card); border:1px solid var(--line); border-top:3px solid var(--navy); padding:20px; display:flex; flex-direction:column; justify-content:space-between; transition:.18s; box-shadow:0 8px 22px rgba(17,24,39,.035); }
.bot-market-section { margin:26px 0; }
.bot-market-section h4 { margin:0 0 12px; color:var(--muted); font-size:11px; letter-spacing:.16em; text-transform:uppercase; }
.alpha-profile-section { margin:22px 0; }
.alpha-profile-section h4 { margin:0 0 10px; color:var(--muted); font-size:11px; letter-spacing:.16em; text-transform:uppercase; }
.alpha-profile-summary { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin:18px 0 26px; }
.alpha-profile-summary > div { padding:18px 20px; background:var(--navy); border:1px solid var(--navy); color:#fff; }
.alpha-profile-summary h4 { margin:0 0 9px; color:var(--lime); font-size:11px; letter-spacing:.14em; text-transform:uppercase; }
.alpha-profile-summary p { margin:0; color:#e5e7eb; font-size:14px; }
.alpha-profile-summary strong { color:#fff; }
.alpha-profile-summary strong.gain, #alpha-result.gain, #alpha-result-page.gain { color:var(--green); }
.alpha-profile-summary strong.loss, #alpha-result.loss, #alpha-result-page.loss { color:#c0392b; }
.bot-card:hover { border-color:var(--ink); transform:translateY(-4px); box-shadow:0 14px 30px rgba(17,24,39,.08); }
.bot-card-head { display:flex; justify-content:space-between; }
.bot-icon { width:32px; height:32px; display:grid; place-items:center; background:var(--navy); color:var(--lime); font-family:Georgia,serif; }
.status { display:flex; align-items:center; gap:6px; font-size:9px; font-weight:bold; text-transform:uppercase; }
.status i, .legend i { width:7px; height:7px; border-radius:50%; background:#9fa198; display:inline-block; }
.status.running i, .legend i.running { background:var(--green); }
.status.paused i, .legend i.paused { background:#e2a631; }
.status.stopped i { background:var(--orange); }
.bot-card h4 { font-family:Georgia,serif; font-size:29px; font-weight:400; margin:8px 0 0; }
.bot-card small { color:var(--muted); letter-spacing:.08em; }
.bot-market { display:inline-flex; width:max-content; margin-top:8px; padding:4px 7px; border:1px solid #b9b5a9; background:#f0eee6; font-size:8px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.bot-market-futures { color:#315d8e; background:#e7eff8; border-color:#a9c2de; }
.bot-market-alpha { color:#795c08; background:#fff3b7; border-color:#e2c85e; }
.bot-facts { display:grid; grid-template-columns:repeat(3,1fr); border-block:1px solid var(--line); padding:16px 0; }
.bot-facts div { border-right:1px solid var(--line); padding-left:11px; }
.bot-facts div:first-child { padding-left:0; }
.bot-facts div:last-child { border:0; }
.bot-facts strong { display:block; font-size:12px; margin-top:6px; }
.mode-line { display:flex; justify-content:space-between; color:var(--muted); }
.mode-line strong { font-size:10px; color:var(--green); }
.mode-line .mode-manual { color:#b06d00; }
.mode-line .mode-hybrid { color:var(--green); }
.mode-line .mode-automatic { color:var(--orange); }
.connection-line { display:flex; align-items:center; gap:8px; min-height:29px; padding:8px 10px; background:#f0eee4; color:var(--muted); font-size:10px; }
.connection-line i { width:7px; height:7px; border-radius:50%; background:#aaa; }
.connection-line.verified i { background:var(--green); }
.connection-line.verified { color:var(--green); }
.connection-line .text-button { margin-left:auto; font-size:9px; }
.manual-actions { display:grid; grid-template-columns:1fr 1fr; gap:7px; }
.button.trade { border:1px solid var(--ink); font-size:10px; }
.button.trade.buy { background:var(--lime); }
.button.trade.sell { background:#fff0ed; color:var(--orange); }
.button:disabled { opacity:.42; cursor:not-allowed; box-shadow:none; }
.bot-actions { display:flex; gap:7px; flex-wrap:wrap; }
.empty-card { grid-column:1/-1; padding:55px; border:1px dashed var(--line); text-align:center; color:var(--muted); }
.filter-row { display:flex; justify-content:space-between; align-items:center; padding:18px 0; font-size:11px; color:var(--muted); }
.bot-filters { display:flex; gap:8px; }
.bot-filters select { min-width:150px; padding:10px 12px; font-size:11px; }
.search-field { position:relative; display:block; }
.search-field span { position:absolute; left:12px; top:9px; color:var(--muted); font-size:18px; }
.search-field input { width:230px; padding:10px 12px 10px 35px; font-size:11px; text-transform:none; letter-spacing:0; }
.legend { display:flex; gap:8px; align-items:center; }
.legend i { margin-left:12px; }

.engine-strip { display:grid; grid-template-columns:repeat(4,1fr); background:var(--navy); color:white; margin:26px 0; }
.engine-strip div { padding:20px; border-right:1px solid #303a4a; }
.engine-strip strong { display:block; color:var(--lime); margin-top:8px; font-size:14px; }
.engine-strip strong b { font:inherit; }
.market-hero { min-height:270px; margin-top:26px; display:grid; grid-template-columns:1.15fr .85fr; background:var(--navy); color:white; border:1px solid var(--navy); overflow:hidden; position:relative; }
.market-hero::after { content:""; position:absolute; width:330px; height:330px; border:1px solid rgba(204,255,56,.13); border-radius:50%; right:-165px; top:-165px; box-shadow:0 0 0 70px rgba(204,255,56,.025),0 0 0 140px rgba(204,255,56,.018); pointer-events:none; }
.market-intro { padding:35px 40px; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; border-right:1px solid #303a4a; z-index:1; }
.market-eyebrow { color:var(--lime); font-size:9px; font-weight:900; letter-spacing:.18em; }
.market-eyebrow i { display:inline-block; width:7px; height:7px; background:var(--lime); border-radius:50%; margin-right:8px; box-shadow:0 0 0 5px rgba(204,255,56,.08); }
.market-intro h3 { font-family:Georgia,serif; font-size:46px; font-weight:400; letter-spacing:-.04em; margin:16px 0 10px; }
.market-intro p { max-width:580px; color:#aeb6c2; font-size:12px; line-height:1.6; margin:0 0 22px; }
.market-intro .button:hover { box-shadow:4px 4px 0 white; }
.market-pulse { display:grid; grid-template-columns:repeat(3,1fr); align-content:stretch; z-index:1; }
.market-pulse > div { padding:30px 20px; display:flex; flex-direction:column; justify-content:center; border-right:1px solid #303a4a; }
.market-pulse > div:last-child { border:0; }
.market-pulse span { color:#8c97a8; font-size:8px; font-weight:900; letter-spacing:.15em; }
.market-pulse strong { color:var(--lime); font-family:Georgia,serif; font-size:48px; font-weight:400; margin:10px 0 4px; }
.market-pulse small { color:#7d8797; font-size:8px; line-height:1.4; letter-spacing:0; text-transform:none; }
.market-engine-strip { margin:0 0 20px; background:#20293a; }
.market-engine-strip div { padding:16px 20px; }
.market-engine-strip strong { font-size:12px; }
.market-trade-bridge { display:grid; grid-template-columns:auto minmax(230px,1fr) minmax(230px,.7fr) minmax(200px,.8fr) auto; gap:16px; align-items:center; padding:17px 18px; margin-bottom:4px; background:var(--card); border:1px solid var(--line); border-left:3px solid #b8b9b2; }
.market-trade-bridge.ready { border-left-color:var(--green); }
.bridge-icon { width:38px; height:38px; display:grid; place-items:center; background:var(--navy); color:var(--lime); font-family:Georgia,serif; font-size:25px; }
.bridge-copy { display:grid; gap:4px; }
.bridge-copy > span { color:var(--green); font-size:8px; font-weight:900; letter-spacing:.14em; }
.bridge-copy strong { font-family:Georgia,serif; font-size:16px; font-weight:400; }
.bridge-copy p { color:var(--muted); font-size:9px; margin:0; }
.market-trade-bridge label { font-size:8px; }
.market-trade-bridge select { padding:10px; font-size:10px; }
.bridge-status { display:flex; align-items:center; gap:8px; color:var(--muted); font-size:9px; line-height:1.4; }
.bridge-status i { width:8px; height:8px; flex:0 0 auto; border-radius:50%; background:#b8b9b2; }
.market-trade-bridge.ready .bridge-status { color:var(--green); }
.market-trade-bridge.ready .bridge-status i { background:var(--green); box-shadow:0 0 0 4px rgba(22,132,91,.08); }
.market-trade-bridge .button { padding:11px 13px; white-space:nowrap; }
.market-toolbar { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:17px 0; }
.market-toolbar > div:first-child { display:grid; gap:4px; }
.market-toolbar > div:first-child strong { font-family:Georgia,serif; font-size:21px; font-weight:400; }
.market-toolbar > div:first-child span { color:var(--muted); font-size:10px; }
.market-filters { display:flex; gap:8px; }
.market-filters select { min-width:160px; padding:10px 12px; color:var(--ink); font-size:10px; }
.market-filters .search-field input { width:190px; }
.market-table { overflow-x:hidden; }
.market-table table { width:100%; min-width:0; table-layout:fixed; }
.market-table .market-col-symbol { width:16%; }
.market-table .market-col-change { width:7%; }
.market-table .market-col-score { width:8%; }
.market-table .market-col-decision { width:9%; }
.market-table .market-col-probability { width:11%; }
.market-table .market-col-validation { width:9%; }
.market-table .market-col-amount { width:9%; }
.market-table .market-col-protection { width:20%; }
.market-table .market-col-action { width:11%; }
.market-table th { background:#ece9df; padding:12px 10px; white-space:normal; }
.market-table td { min-width:0; padding:14px 10px; vertical-align:middle; overflow-wrap:anywhere; }
.market-change { white-space:nowrap; font-size:13px; }
.market-change-muted { color:var(--muted); }
.signal-row { position:relative; }
.signal-row td:first-child { border-left:3px solid transparent; }
.signal-row.signal-buy td:first-child { border-left-color:var(--lime); }
.signal-row.signal-sell td:first-child { border-left-color:var(--orange); }
.signal-row.position-open { background:#edf7f3; }
.signal-row.position-open:hover { background:#e5f3ed; }
.signal-row.position-open td:first-child { border-left-color:var(--green); }
.market-name { display:grid; gap:5px; min-width:105px; }
.market-name span { font-weight:900; font-size:13px; }
.market-name small { margin:0; font-size:7px; letter-spacing:.13em; text-transform:uppercase; }
.holding-badge { width:max-content; padding:4px 7px; background:#d8eee5; color:#126845; border:1px solid #a8d3c1; font-style:normal; font-size:7px; font-weight:bold; text-transform:uppercase; letter-spacing:.65px; }
.score-meter { width:78px; display:grid; grid-template-columns:25px 1fr; align-items:center; gap:8px; }
.score-meter strong { font-family:Georgia,serif; font-size:18px; white-space:nowrap; }
.score-meter > i, .probability > i { display:block; height:4px; background:#e0ddd2; overflow:hidden; }
.score-meter > i b, .probability > i b { display:block; height:100%; background:var(--navy); }
.probability { min-width:95px; display:grid; grid-template-columns:36px 1fr; align-items:center; gap:8px; }
.probability span { font-weight:bold; }
.probability > i b { background:var(--green); }
.decision { display:inline-flex; min-width:66px; justify-content:center; text-transform:uppercase; }
.decision.hold { color:#6d6f68; background:#f1efe7; }
.context-badge { display:inline-flex; align-items:center; gap:6px; font-size:10px; font-weight:bold; }
.context-badge::before { content:""; width:7px; height:7px; border-radius:50%; background:#b0b1ab; }
.context-confirm::before { background:var(--green); }
.context-reduce::before { background:#e2a631; }
.context-reject::before { background:var(--orange); }
.allocation-value { white-space:nowrap; font-size:11px; }
.protection-cell { min-width:220px; display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.protection-cell > span { display:grid; grid-template-columns:23px 1fr; gap:2px 7px; align-items:center; }
.protection-cell i { grid-row:1/3; width:23px; height:23px; display:grid; place-items:center; font-size:7px; font-style:normal; font-weight:900; }
.stop-tag { color:#a72e27; background:#fff0ed; }
.target-tag { color:#08734c; background:#e8f5ec; }
.protection-cell strong { font-size:10px; }
.protection-cell small { margin:0; font-size:8px; letter-spacing:0; text-transform:none; }
.market-disclaimer { margin:14px 0 0; color:var(--muted); font-size:9px; line-height:1.5; }
.market-buy-action { border:1px solid var(--ink); background:var(--lime); padding:9px 11px; font-size:8px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; cursor:pointer; white-space:nowrap; }
.market-buy-action:hover:not(:disabled) { box-shadow:3px 3px 0 var(--ink); transform:translateY(-1px); }
.market-buy-action:disabled { border-color:var(--line); background:#f0eee7; color:#aaa; cursor:not-allowed; }
.market-position-action { min-width:105px; padding:9px 10px; border:1px solid var(--green); background:#e3f5ed; color:#126845; cursor:pointer; font-size:8px; font-weight:900; letter-spacing:.06em; text-transform:uppercase; white-space:nowrap; }
.market-position-action:hover { background:#ccebdd; }
.alpha-hero { margin-top:26px; min-height:230px; display:grid; grid-template-columns:1fr 300px; color:white; background:linear-gradient(125deg,#101827 0%,#17253b 66%,#203347 100%); border:1px solid var(--navy); overflow:hidden; }
.alpha-hero > div { padding:38px 42px; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; }
.alpha-hero h3 { margin:14px 0 10px; font:400 43px/1 Georgia,serif; letter-spacing:-.04em; }
.alpha-hero p { max-width:680px; margin:0 0 22px; color:#aeb8c7; font-size:12px; line-height:1.6; }
.alpha-hero aside { padding:32px; display:flex; flex-direction:column; justify-content:center; background:rgba(204,255,56,.06); border-left:1px solid #334153; }
.alpha-hero aside span { color:#8f9bad; font-size:8px; font-weight:900; letter-spacing:.16em; }
.alpha-hero aside strong { margin:13px 0 7px; color:var(--lime); font:400 30px Georgia,serif; }
.alpha-hero aside small { color:#8f9bad; font-size:9px; }
.alpha-engine-strip { margin-bottom:20px; }
.alpha-validation { display:grid; grid-template-columns:repeat(6,1fr); margin:0 0 18px; border:1px solid var(--line); background:var(--card); }
.alpha-validation > div { min-height:90px; padding:18px 20px; display:flex; flex-direction:column; justify-content:center; border-right:1px solid var(--line); }
.alpha-validation > div:nth-child(6) { border-right:0; }
.alpha-validation span { color:var(--muted); font-size:8px; font-weight:900; letter-spacing:.12em; }
.alpha-validation strong { margin-top:8px; font:400 27px Georgia,serif; }
.alpha-validation small { margin-top:4px; color:var(--muted); font-size:8px; }
.alpha-learning-card { margin:0 0 18px; padding:18px 20px; border:1px solid var(--line); background:var(--card); }
.alpha-learning-card .card-title { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; }
.alpha-learning-card h4 { margin:5px 0 0; font:400 24px Georgia,serif; }
.alpha-learning-card .card-title > strong { color:var(--green); font-size:10px; letter-spacing:.08em; text-transform:uppercase; }
.alpha-learning-card > p { color:var(--muted); font-size:12px; margin:14px 0; }
.alpha-learning-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.learning-page-card .alpha-learning-grid { grid-template-columns:repeat(3,1fr); }
.alpha-learning-grid > div > span { color:var(--muted); font-size:9px; font-weight:900; letter-spacing:.14em; }
.alpha-learning-rows { margin-top:8px; border-top:1px solid var(--line); }
.alpha-learning-row { display:grid; grid-template-columns:80px 1fr 60px; gap:10px; padding:8px 0; border-bottom:1px solid var(--line); font-size:11px; }
.alpha-learning-row span { color:var(--muted); }
.alpha-learning-row b { text-align:right; color:var(--green); }
.alpha-table { overflow-x:hidden; }
.alpha-table table { width:100%; table-layout:fixed; }
.alpha-table th:nth-child(1) { width:13%; } .alpha-table th:nth-child(2) { width:8%; } .alpha-table th:nth-child(3) { width:9%; } .alpha-table th:nth-child(4) { width:11%; } .alpha-table th:nth-child(5) { width:13%; } .alpha-table th:nth-child(6) { width:14%; } .alpha-table th:nth-child(7) { width:21%; } .alpha-table th:nth-child(8) { width:11%; }
.alpha-table td { padding:14px 12px; vertical-align:middle; overflow-wrap:anywhere; }
.alpha-row.alpha-confirmed { box-shadow:inset 3px 0 0 var(--lime); }
.alpha-row.alpha-reject { box-shadow:inset 3px 0 0 #ff6547; }
.alpha-token, .alpha-market-data, .alpha-dynamics, .alpha-risk { display:grid; gap:5px; }
.alpha-token strong { font-size:13px; }
.alpha-token span, .alpha-token small, .alpha-market-data span, .alpha-risk span, .alpha-risk small { color:var(--muted); font-size:8px; line-height:1.35; }
.alpha-dynamics span, .alpha-market-data span { display:flex; justify-content:space-between; gap:5px; }
.alpha-decision { display:inline-block; padding:7px 8px; border:1px solid var(--line); font-size:7px; font-weight:900; letter-spacing:.05em; text-transform:uppercase; }
.alpha-decision.confirmed { background:var(--lime); border-color:var(--ink); }
.alpha-decision.watch { background:#f3eedf; color:#85621b; }
.alpha-decision.reject { background:#fff0ec; color:#b33722; }
.alpha-table td > small { display:block; margin-top:5px; color:var(--muted); font-size:7px; }
.alpha-risk strong { color:var(--green); font-size:9px; }
.alpha-risk.alert strong { color:#d7472c; }
.alpha-disabled-action { width:100%; padding:9px 6px; border:1px solid var(--line); background:#f0eee7; color:#aaa; font-size:7px; font-weight:900; text-transform:uppercase; }
.alpha-error { min-height:16px; margin:10px 0 0; color:#d7472c; font-size:9px; }
.listings-hero { background:linear-gradient(125deg,#101827 0%,#18302e 64%,#244137 100%); }
.listings-table { overflow-x:hidden; }
.listings-table table { width:100%; table-layout:fixed; }
.listings-table th:nth-child(1) { width:12%; } .listings-table th:nth-child(2) { width:8%; } .listings-table th:nth-child(3) { width:7%; } .listings-table th:nth-child(4) { width:7%; } .listings-table th:nth-child(5) { width:9%; } .listings-table th:nth-child(6) { width:12%; } .listings-table th:nth-child(7) { width:23%; } .listings-table th:nth-child(8) { width:14%; } .listings-table th:nth-child(9) { width:8%; }
.listings-table td { padding:13px 10px; vertical-align:top; overflow-wrap:anywhere; }
.listing-market { width:max-content; padding:3px 6px; border:1px solid var(--line); font-size:7px !important; font-weight:900; letter-spacing:.09em; }
.listing-alpha { color:#795c08 !important; background:#fff3b7; border-color:#e2c85e; }
.listing-spot { color:#126845 !important; background:#e3f5ed; border-color:#9bcbb7; }
.listing-futures { color:#315d8e !important; background:#e7eff8; border-color:#a9c2de; }
.listing-news { display:grid; gap:5px; }
.listing-news strong { font-size:10px; }
.listing-news span { color:var(--muted); font-size:8px; }
.listing-news.positive strong { color:var(--green); }
.listing-news.alert strong { color:#c0392b; }
.listing-news ul { margin:2px 0 0; padding-left:14px; color:var(--muted); font-size:8px; line-height:1.4; }
.listing-news li { margin-top:3px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.listing-source { display:inline-grid; place-items:center; text-decoration:none; color:var(--ink); background:#eef5dc; border-color:#b5c78b; }
.listing-launch-grid { display:grid; gap:16px; }
.listing-launch-card { background:var(--card); border:1px solid #d4d0c5; border-left:4px solid #d4d0c5; }
.listing-launch-card.auto-ready { border-left-color:var(--lime); box-shadow:0 0 0 1px #b6dc64 inset; }
.listing-launch-card > header { display:flex; justify-content:space-between; align-items:flex-start; gap:20px; padding:18px 20px; border-bottom:1px solid var(--line); }
.listing-launch-card .alpha-token { display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
.listing-launch-card .alpha-token strong { font-size:18px; }
.listing-launch-card .alpha-token small { flex-basis:100%; }
.launch-timer { text-align:right; display:grid; gap:3px; }
.launch-timer span, .launch-metrics span { color:var(--muted); font-size:8px; font-weight:bold; letter-spacing:1.2px; }
.launch-timer strong { color:var(--green); font-family:Georgia,serif; font-size:21px; font-variant-numeric:tabular-nums; }
.launch-timer small { color:var(--muted); font-size:8px; }
.launch-visual { display:grid; grid-template-columns:minmax(260px,1fr) auto; gap:22px; align-items:stretch; padding:18px 20px; background:#f5f3eb; }
.launch-chart { width:100%; height:105px; overflow:visible; }
.launch-chart polyline { stroke-width:2; stroke:var(--green); }
.launch-chart.loss polyline { stroke:var(--orange); }
.launch-chart-empty { min-height:105px; display:grid; place-items:center; border:1px dashed #c9c5b9; color:var(--muted); font-size:10px; }
.launch-prices { min-width:190px; display:grid; grid-template-columns:1fr 1fr; gap:10px 18px; align-content:center; }
.launch-prices span { color:var(--muted); font-size:9px; display:grid; gap:4px; }
.launch-prices b { color:var(--ink); font-size:13px; }
.launch-prices b.gain { color:var(--green); } .launch-prices b.loss { color:#c0392b; }
.launch-metrics { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.launch-metrics > div { padding:15px 20px; display:grid; gap:6px; border-right:1px solid var(--line); }
.launch-metrics > div:last-child { border-right:0; }
.launch-metrics strong { font-size:14px; }
.launch-metrics strong small { display:inline; font-size:8px; color:var(--muted); }
.launch-metrics > div > small { color:var(--muted); font-size:8px; line-height:1.4; }
.listing-launch-card > footer { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:16px; padding:15px 20px; }
.listing-launch-card > footer p { margin:0; color:var(--muted); font-size:10px; line-height:1.45; }
.table-card { background:var(--card); border:1px solid var(--line); overflow:auto; }
.table-card.market-table { overflow-x:hidden; }
.market-table .market-name,
.market-table .score-meter,
.market-table .probability,
.market-table .protection-cell { width:100%; min-width:0; }
.market-table .market-name span { overflow-wrap:anywhere; }
.market-table .score-meter { grid-template-columns:34px minmax(18px, 1fr); gap:6px; }
.market-table .probability { grid-template-columns:32px minmax(20px, 1fr); gap:6px; }
.market-table .protection-cell { gap:6px; }
.market-table .protection-cell > span { grid-template-columns:21px minmax(0, 1fr); gap:2px 5px; }
.market-table .protection-cell i { width:21px; height:21px; }
.market-table .market-buy-action,
.market-table .market-position-action { width:100%; min-width:0; padding-inline:6px; white-space:normal; }
table { width:100%; border-collapse:collapse; }
th { position:sticky; top:0; z-index:1; background:var(--card); text-align:left; color:var(--muted); border-bottom:1px solid var(--ink); padding:13px; }
td { padding:15px 13px; border-bottom:1px solid var(--line); font-size:12px; }
tbody tr { transition:.15s; }
tbody tr:hover { background:#f6f4eb; }
td small { display:block; color:var(--muted); margin-top:4px; }
.score { display:grid; place-items:center; width:36px; height:29px; background:var(--lime); border:1px solid var(--ink); font-weight:bold; }
.decision { padding:5px 8px; border:1px solid var(--line); font-size:9px; font-weight:bold; }
.decision.buy { background:var(--lime); border-color:var(--ink); }
.decision.sell { background:var(--orange); border-color:var(--ink); }
.empty { text-align:center; color:var(--muted); padding:30px; }
.admin-grid { display:grid; grid-template-columns:1.6fr .7fr; gap:18px; margin-top:25px; }
.card-title { display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid var(--ink); padding:18px; }
.card-title h4 { font-family:Georgia,serif; font-size:22px; font-weight:400; margin:0; }
.role { font-size:8px; font-weight:bold; padding:4px 6px; background:#ece9df; }
.active-label { color:var(--green); font-size:10px; font-weight:bold; }
.active-label.inactive { color:var(--orange); }
.table-actions { display:flex; gap:10px; }
.text-button.destructive { color:var(--orange); }
.audit-card { background:var(--navy); color:white; }
.audit-card .card-title { border-color:#3a4453; }
.audit-card .card-title span { color:#8993a2; font-size:9px; }
.audit-row { display:flex; gap:12px; padding:15px 18px; border-bottom:1px solid #303a4a; }
.audit-row > i { width:7px; height:7px; border:1px solid var(--lime); border-radius:50%; margin-top:4px; }
.audit-row div { display:grid; gap:5px; }
.audit-row strong { font-size:10px; }
.audit-row span { color:#8e98a7; font-size:9px; }

.position-summary { display:grid; grid-template-columns:repeat(4,1fr); margin:24px 0; background:var(--navy); color:white; }
.position-summary article { padding:20px 22px; border-right:1px solid #303a4a; display:grid; gap:8px; }
.position-summary article:last-child { border-right:0; }
.position-summary span { color:#a4adba; font-size:9px; font-weight:bold; letter-spacing:1.4px; }
.position-summary strong { color:var(--lime); font-family:Georgia,serif; font-size:25px; font-weight:400; }
.position-summary small { color:#8f99a8; font-size:9px; }
.position-summary article.negative strong, .position-summary article.negative small { color:#ff8b72; }
.position-summary article.positive strong, .position-summary article.positive small { color:var(--lime); }
.account-summary { display:grid; grid-template-columns:repeat(4,1fr); margin:-10px 0 24px; border:1px solid #d4d0c5; background:var(--card); }
.account-summary article { padding:18px 22px; border-right:1px solid #d4d0c5; display:grid; gap:7px; }
.account-summary article:last-child { border-right:0; }
.account-summary span, .performance-strip span { color:var(--muted); font-size:8px; font-weight:bold; letter-spacing:1.2px; }
.account-summary strong { font-family:Georgia,serif; font-size:21px; font-weight:400; }
.account-summary small { color:var(--muted); font-size:9px; }
.account-summary article.positive strong, .account-summary article.positive small { color:var(--green); }
.account-summary article.negative strong, .account-summary article.negative small { color:#c0392b; }
.position-alert { display:flex; gap:12px; align-items:center; padding:12px 15px; margin-bottom:10px; background:#fff0ed; border-left:3px solid var(--orange); color:#8b2e1d; font-size:11px; }
.position-alert span { color:#934c3f; }
.positions-table td { vertical-align:top; min-width:120px; }
.positions-table td:first-child { min-width:210px; }
.positions-table td:nth-child(6) { min-width:245px; }
.position-name { display:grid; gap:4px; }
.position-name strong { font-size:14px; }
.position-name span { color:var(--muted); font-size:9px; text-transform:uppercase; letter-spacing:.7px; }
.position-name small, .cell-sub { color:var(--muted); font-size:9px; line-height:1.45; }
.position-pnl.gain, .cell-sub.gain { color:var(--green); }
.position-pnl.loss, .cell-sub.loss { color:#c0392b; }
.positions-table strong.gain { color:var(--green); }
.positions-table strong.loss { color:#c0392b; }
#alpha-transactions strong.gain { color:var(--green); }
#alpha-transactions strong.loss { color:#c0392b; }
.position-mode { display:inline-block; padding:2px 6px; border-radius:2px; font-size:9px; font-style:normal; font-weight:700; letter-spacing:.08em; }
.position-mode.simulation { color:#705900; background:#fff1b8; }
.position-mode.réel { color:#176947; background:#dff6e9; }
.position-group-heading td { padding:14px 16px 8px; background:#f2f0e8; color:var(--muted); font-size:11px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; }
.stats-summary strong.gain, #stats-rows .gain { color:var(--green); }
.stats-summary strong.loss, #stats-rows .loss { color:#c0392b; }
.position-protection { display:grid; gap:5px; }
.protection-ok, .protection-missing { display:flex; align-items:center; gap:6px; font-size:10px; font-weight:bold; }
.protection-ok { color:var(--green); }
.protection-missing { color:#c0392b; }
.protection-ok i, .protection-missing i { width:7px; height:7px; border-radius:50%; background:currentColor; }
.target-progress { display:grid; gap:6px; min-width:125px; }
.target-progress > i { height:5px; background:#dfddd4; overflow:hidden; }
.target-progress > i b { display:block; height:100%; background:var(--green); }
.recommendation { display:grid; gap:5px; padding-left:10px; border-left:3px solid var(--line); }
.recommendation strong { font-size:11px; }
.recommendation span { color:var(--muted); font-size:10px; line-height:1.4; }
.recommendation small { font-size:8px; text-transform:uppercase; letter-spacing:.5px; }
.recommendation-hold_tp, .recommendation-hold { border-color:var(--green); }
.recommendation-secure { border-color:#dba52a; }
.recommendation-sell, .recommendation-urgent { border-color:var(--orange); }
.position-sell { border-color:var(--orange); color:#a43120; background:#fff7f4; }
.transaction-head { margin-top:48px; }
.performance-strip { display:grid; grid-template-columns:repeat(6,1fr); background:#ece9df; border:1px solid #d4d0c5; margin:20px 0; }
.performance-strip div { padding:15px 18px; border-right:1px solid #d4d0c5; display:grid; gap:6px; }
.performance-strip div:last-child { border-right:0; }
.performance-strip strong { font-size:15px; }
.transactions-table td { vertical-align:top; min-width:120px; }
.transactions-table td:first-child { min-width:170px; }
.exit-badge { display:inline-flex; align-items:center; padding:5px 7px; border:1px solid #c8c4b8; background:#f5f2e9; font-size:8px; font-weight:900; letter-spacing:.06em; text-transform:uppercase; }
.exit-badge.take_profit { color:var(--green); border-color:#9bcbb7; background:#edf7f3; }
.exit-badge.stop_loss, .exit-badge.trailing_stop { color:#b13220; border-color:#efb5aa; background:#fff1ee; }
.exit-badge.break_even_stop { color:#9a6910; border-color:#e6c77d; background:#fff8e7; }
.exit-badge.open { color:#8a6500; border-color:#dfc77e; background:#fff9e8; }
.transaction-value { display:grid; gap:4px; }
.transaction-value strong.gain { color:var(--green); }
.transaction-value strong.loss { color:#c0392b; }
.transaction-value small { color:var(--muted); font-size:9px; }

dialog { border:0; padding:0; background:transparent; }
dialog::backdrop { background:rgba(8,12,18,.72); backdrop-filter:blur(3px); }
.dialog-card { width:min(620px,calc(100vw - 30px)); background:var(--card); padding:35px; position:relative; display:grid; gap:17px; box-shadow:12px 12px 0 var(--lime); }
.dialog-card > p { color:var(--muted); font-size:12px; margin:0; }
.dialog-close { position:absolute; right:16px; top:13px; border:0; background:transparent; font-size:27px; cursor:pointer; }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:15px; }
.dialog-heading { display:flex; align-items:center; gap:15px; }
.dialog-heading > div { display:grid; gap:6px; }
.dialog-icon { width:45px; height:45px; display:grid; place-items:center; flex:0 0 auto; background:var(--navy); color:var(--lime); font-family:Georgia,serif; font-size:26px; }
.info-banner { display:flex; align-items:flex-start; gap:10px; padding:12px 14px; background:#f0eee4; border-left:3px solid var(--lime); }
.info-banner i { width:7px; height:7px; margin-top:4px; border-radius:50%; background:var(--green); }
.info-banner p { margin:0; color:var(--muted); font-size:11px; line-height:1.5; }
.warning-banner, .danger-notice { padding:13px 15px; border-left:3px solid var(--orange); background:#fff0ed; color:#8b2e1d; }
.warning-banner p { margin:5px 0 0; font-size:11px; }
.danger-notice { font-size:11px; font-weight:bold; }
.automation-note { padding:10px 12px; border:1px dashed var(--line); color:var(--muted); font-size:10px !important; }
.managed-position-option { display:flex !important; flex-direction:row !important; align-items:center; gap:10px; margin-top:10px; font-size:11px; text-transform:none; letter-spacing:0; }
.managed-position-option input { width:auto; min-width:auto; padding:0; accent-color:var(--green); }
.check-line { display:flex; align-items:center; gap:10px; }
.check-line input { width:auto; }
.confirm-card { width:min(470px,calc(100vw - 30px)); text-align:center; justify-items:center; }
.confirm-icon { width:54px; height:54px; display:grid; place-items:center; border-radius:50%; background:#fff0ed; color:var(--orange); border:1px solid #f0b5a9; font-family:Georgia,serif; font-size:30px; }
.confirm-card > p { max-width:360px; line-height:1.55; white-space:pre-line; }
.confirm-actions { width:100%; display:grid; grid-template-columns:1fr 1fr; gap:9px; margin-top:8px; }

@media (max-width:1050px) { .welcome { grid-template-columns:1fr; gap:25px; padding:45px 0; } .system-card { width:100%; } .bot-grid { grid-template-columns:1fr 1fr; } .admin-grid { grid-template-columns:1fr; } .position-summary, .account-summary, .performance-strip { grid-template-columns:1fr 1fr; } .position-summary article:nth-child(2), .account-summary article:nth-child(2), .performance-strip div:nth-child(2) { border-right:0; } .market-hero, .alpha-hero { grid-template-columns:1fr; } .alpha-hero aside { border-left:0; border-top:1px solid #334153; } .alpha-validation { grid-template-columns:1fr 1fr; } .alpha-validation > div:nth-child(2) { border-right:0; } .market-intro { border-right:0; border-bottom:1px solid #303a4a; } .market-pulse { min-height:150px; } .market-trade-bridge { grid-template-columns:auto 1fr 1fr; } .market-trade-bridge .bridge-status { grid-column:2; } .market-toolbar { align-items:flex-start; flex-direction:column; } .market-filters { width:100%; flex-wrap:wrap; } .alpha-table, .listings-table { overflow:auto; } .alpha-table table { min-width:1100px; } .listings-table table { min-width:1250px; } }
@media (max-width:760px) {
  .login-screen { grid-template-columns:1fr; }
  .login-brand { padding:45px 25px; min-height:46vh; }
  .login-brand h1 { font-size:55px; margin:25px 0; }
  .login-card { margin:0; padding:42px 25px; width:100%; }
  .app-shell { display:block; }
  .sidebar { position:static; width:100%; min-height:auto; padding:14px; }
  .sidebar .logo, .sidebar-bottom { display:none; }
  .sidebar nav { display:flex; overflow:auto; }
  .nav-item { white-space:nowrap; }
  .workspace { padding:0 16px 40px; }
  .workspace-head { height:90px; }
  .workspace-head .kicker, #page-title { display:none; }
  .current-date { display:none; }
  .welcome { min-height:220px; }
  .welcome h3 { font-size:45px; }
  .metric-grid { grid-template-columns:1fr 1fr; }
  .position-summary, .account-summary, .performance-strip { grid-template-columns:1fr; }
  .position-summary article, .account-summary article, .performance-strip div { border-right:0; border-bottom:1px solid #d4d0c5; }
  .bot-grid { grid-template-columns:1fr; }
  .engine-strip { grid-template-columns:1fr 1fr; }
  .market-hero { margin-top:16px; }
  .market-intro { padding:28px 24px; }
  .market-intro h3 { font-size:37px; }
  .market-pulse { grid-template-columns:1fr; }
  .market-pulse > div { padding:16px 24px; border-right:0; border-bottom:1px solid #303a4a; display:grid; grid-template-columns:1fr auto; align-items:center; }
  .market-pulse strong { grid-row:1/3; grid-column:2; margin:0; font-size:38px; }
  .market-filters { flex-direction:column; }
  .market-trade-bridge { grid-template-columns:auto 1fr; }
  .market-trade-bridge label, .market-trade-bridge .bridge-status, .market-trade-bridge .button { grid-column:1/-1; width:100%; }
  .market-filters .search-field, .market-filters .search-field input, .market-filters select { width:100%; }
  .market-table { overflow:auto; }
  .alpha-hero > div { padding:28px 24px; }
  .alpha-hero h3 { font-size:35px; }
  .alpha-validation { grid-template-columns:1fr; }
  .alpha-validation > div { border-right:0; border-bottom:1px solid var(--line); }
  .filter-row { align-items:flex-start; gap:14px; flex-direction:column; }
  .bot-filters { width:100%; flex-direction:column; }
  .search-field input, .bot-filters select { width:100%; }
  .system-foot { grid-template-columns:1fr; }
  .system-foot div { border-right:0; border-bottom:1px solid #303a4a; }
  .form-grid { grid-template-columns:1fr; }
  .launch-visual { grid-template-columns:1fr; }
  .launch-prices { min-width:0; }
  .launch-metrics { grid-template-columns:1fr 1fr; }
  .launch-metrics > div:nth-child(2) { border-right:0; }
  .listing-launch-card > footer { grid-template-columns:1fr; }
}
.multi-market-card { margin: 24px 0; padding: 22px 24px; border: 1px solid var(--line, #d8d5c8); background: #f8f7ef; display: grid; grid-template-columns: 1fr auto; gap: 18px 28px; }
.multi-market-card h4 { margin: 6px 0 4px; font: 28px Georgia, serif; }
.multi-market-card p { margin: 0; color: #73736c; }
.multi-market-meta { text-align: right; display: flex; flex-direction: column; gap: 6px; color: #16875f; }
.multi-market-meta strong { letter-spacing: .12em; font-size: 12px; }
.multi-market-meta span { color: #74746e; font-size: 12px; }
.multi-market-table { grid-column: 1 / -1; overflow-x: auto; }
.multi-market-table table { width: 100%; border-collapse: collapse; }
.multi-market-table th, .multi-market-table td { padding: 11px 12px; border-top: 1px solid #dedbd0; text-align: left; font-size: 13px; }
.multi-market-table th { color: #78776f; font-size: 10px; letter-spacing: .15em; }
.multi-market-table .gain { color: #16875f; }
.multi-market-table .loss { color: #d24c3e; }
.multi-price { font-weight: 800; }
.multi-price.gain { color: #16875f; }
.multi-price.loss { color: #d24c3e; }
.multi-progression { display: block; margin-top: 3px; color: #16875f; font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
@media (max-width: 760px) { .multi-market-card { grid-template-columns: 1fr; } .multi-market-meta { text-align: left; } }

/* Argos modern dashboard layer */
:root { --modern-radius:14px; --modern-shadow:0 10px 28px rgba(15,23,42,.07); }
body { background:linear-gradient(135deg,#f7f8f5 0%,#f1f3ef 100%); }
.app-shell { gap:18px; }
.sidebar { border-radius:0 var(--modern-radius) var(--modern-radius) 0; box-shadow:var(--modern-shadow); background:linear-gradient(180deg,#111a2b 0%,#0b1220 100%); }
.workspace { max-width:1480px; }
.welcome, .system-card, .metric-grid article, .table-card, .audit-card, .bot-card, .hero-card { border-radius:var(--modern-radius); box-shadow:var(--modern-shadow); }
.welcome { padding:28px; border:1px solid var(--line); background:rgba(255,255,255,.72); }
.system-card { border:0; }
.metric-grid { gap:14px; border:0; }
.metric-grid article { border:1px solid var(--line); background:rgba(255,255,255,.8); }
.metric-grid article:hover { transform:translateY(-2px); box-shadow:var(--modern-shadow); }
.workspace-scope { margin:24px 0 32px; padding:20px 22px; border:1px solid var(--line); border-radius:var(--modern-radius); background:rgba(255,255,255,.74); box-shadow:var(--modern-shadow); }
.scope-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; margin-bottom:16px; }
.scope-heading h4 { margin:5px 0 0; font:24px Georgia,serif; }
.scope-badge { padding:8px 11px; border-radius:999px; background:rgba(22,132,91,.1); color:var(--green); font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.scope-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; overflow:hidden; border:1px solid var(--line); border-radius:10px; background:var(--line); }
.scope-grid > div { min-height:84px; padding:15px 16px; background:rgba(255,255,255,.86); }
.scope-grid span, .scope-grid small { display:block; color:var(--muted); font-size:9px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.scope-grid strong { display:block; margin:7px 0 4px; color:var(--ink); font-size:16px; }
.scope-grid small { font-size:10px; letter-spacing:0; font-weight:500; text-transform:none; }
.table-card, .audit-card { border-color:rgba(148,163,184,.32); }
.view > .section-head.hero-head { margin-top:24px; padding:24px 26px; border:1px solid var(--line); border-radius:var(--modern-radius); background:rgba(255,255,255,.7); box-shadow:var(--modern-shadow); }
.view > .section-head.hero-head h3 { font-size:34px; }
.view > .section-head.hero-head p { color:var(--muted); }
.performance-strip { border:1px solid var(--line); border-radius:var(--modern-radius); background:rgba(255,255,255,.72); box-shadow:var(--modern-shadow); overflow:hidden; }
.performance-strip div { border-right-color:var(--line); }
.info-banner { border:1px solid var(--line); border-left:4px solid var(--lime); border-radius:10px; background:rgba(255,255,255,.72); box-shadow:var(--modern-shadow); }
.market-toolbar { padding:15px 18px; border:1px solid var(--line); border-radius:12px; background:rgba(255,255,255,.72); box-shadow:var(--modern-shadow); }
.button { border-radius:9px; transition:transform .18s ease, box-shadow .18s ease; }
.button:hover { transform:translateY(-1px); box-shadow:0 6px 14px rgba(15,23,42,.12); }
.nav-item { border-radius:10px; margin:3px 8px; border:1px solid transparent; transition:background .18s ease, border-color .18s ease, transform .18s ease; }
.nav-item:hover { background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.08); transform:translateX(2px); }
.nav-item.active { background:rgba(203,255,45,.12); border-color:rgba(203,255,45,.32); box-shadow:inset 3px 0 var(--lime); }
.nav-item.nav-action { color:var(--lime); border:1px dashed rgba(203,255,45,.45); margin-top:10px; }
.nav-item.nav-action span { color:var(--lime); font-size:18px; }
#admin-nav { margin-bottom:12px; border-bottom:1px solid rgba(148,163,184,.22); border-radius:9px 9px 0 0; }
#admin-nav.nav-primary { color:#201e1d; background:transparent; border-color:#d7d3d3; }
#admin-nav.nav-primary.active { color:#201e1d; background:#ffe0d9; border-left-color:#ec3013; }
.admin-timezones { display:grid; grid-template-columns:repeat(5,1fr); gap:1px; margin:22px 0; background:var(--line); border:1px solid var(--line); border-radius:var(--modern-radius); overflow:hidden; box-shadow:var(--modern-shadow); }
.admin-timezones div { padding:16px 18px; background:rgba(255,255,255,.82); }
.admin-timezones span { display:block; color:var(--muted); font-size:9px; font-weight:800; letter-spacing:.14em; }
.admin-timezones strong { display:block; margin-top:7px; font:24px Georgia,serif; }
.admin-timezones small { grid-column:1/-1; padding:10px 18px; color:var(--muted); background:#f5f6f1; }
.admin-subnav { display:flex; gap:8px; flex-wrap:wrap; margin:22px 0 16px; padding:6px; border:1px solid var(--line); border-radius:12px; background:rgba(255,255,255,.62); }
.admin-tab { border:0; border-radius:8px; padding:10px 14px; color:var(--muted); background:transparent; font-weight:800; font-size:11px; letter-spacing:.08em; text-transform:uppercase; cursor:pointer; }
.admin-tab:hover { background:rgba(15,23,42,.06); color:var(--ink); }
.admin-tab.active { color:var(--ink); background:var(--lime); box-shadow:0 4px 12px rgba(15,23,42,.1); }
.admin-role-matrix td:nth-child(2) { color:var(--green); font-weight:800; }
.admin-role-matrix td:nth-child(3) { color:var(--muted); }
@media (max-width:700px) { .welcome { padding:20px; } .metric-grid { gap:10px; } .metric-grid article { padding:18px 14px; } }
@media (max-width:700px) { .admin-timezones { grid-template-columns:repeat(2,1fr); } .admin-timezones div:last-of-type { grid-column:1/-1; } }
@media (max-width:700px) { .scope-grid { grid-template-columns:1fr 1fr; } .scope-heading { flex-direction:column; } }

/* ZIP interface migration: console multi-utilisateur */
body { background:#fff; color:#201e1d; background-image:none; font-family:Arial, Helvetica, sans-serif; }
.app-shell { grid-template-columns:246px 1fr; gap:0; }
.sidebar { width:246px; padding:0; border-radius:0; border-right:2px solid rgba(32,30,29,.4); box-shadow:none; background:#fff; color:#201e1d; }
.archive-brand { display:flex; align-items:flex-start; gap:12px; padding:24px 20px 20px; border-bottom:2px solid rgba(32,30,29,.4); letter-spacing:0; }
.argos-logo-mark { width:42px; height:42px; flex:0 0 42px; }
.archive-brand > div { display:grid; gap:0; }
.archive-brand .brand-line { display:grid; gap:0; min-width:0; }
.archive-brand .brand-line small { color:#ec3013; font-size:12px; letter-spacing:.1em; white-space:nowrap; }
.archive-brand .brand-line strong { margin-top:2px; color:#ec3013; font-size:12px; letter-spacing:.1em; }
.archive-brand .brand-line em { margin-top:7px; color:#605d5d; font-size:10px; white-space:nowrap; }
.archive-brand small { color:var(--orange); font-size:11px; font-weight:800; letter-spacing:.1em; }
.archive-brand strong { margin-top:8px; color:#201e1d; font-family:Arial,Helvetica,sans-serif; font-size:22px; line-height:1.1; letter-spacing:-.015em; }
.archive-brand em { margin-top:8px; color:#605d5d; font-size:12px; font-style:normal; letter-spacing:0; }
.prototype-brand { display:grid; gap:0; }
.prototype-brand-kicker { color:#ec3013; font-size:11px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.prototype-brand strong { margin-top:8px; color:#201e1d; font-family:Arial,Helvetica,sans-serif; font-size:22px; line-height:1.1; letter-spacing:-.015em; }
.prototype-brand em { margin-top:8px; color:#605d5d; font-size:12px; font-style:normal; line-height:1.45; letter-spacing:0; }
.sidebar nav { gap:0; padding:0; overflow-y:auto; }
.nav-item { width:100%; margin:0; padding:13px 16px; border:0; border-bottom:1px solid #d7d3d3; border-left:4px solid transparent; border-radius:0; color:#201e1d; background:transparent; font-size:14px; font-weight:600; letter-spacing:0; }
.nav-item span { color:#605d5d; font-size:12px; font-weight:400; }
.nav-item:hover { color:#201e1d; background:#ffe0d9; border-color:#d7d3d3; transform:none; }
.nav-item.active { color:#201e1d; background:#ffe0d9; border-color:#ec3013; box-shadow:none; }
.nav-group { margin:0; gap:0; }
.nav-section-label { margin:0; padding:13px 16px; border-top:0; border-bottom:1px solid #d7d3d3; color:#605d5d; font-size:11px; letter-spacing:.09em; background:#eae9e9; }
.nav-section-toggle::after { color:#605d5d; }
.nav-group-body { gap:0; }
.nav-item.nav-action { margin:0; border:0; border-bottom:1px solid #d7d3d3; color:#ae1800; background:transparent; }
.nav-item.nav-action span { color:#ec3013; }
.sidebar-bottom { gap:12px; padding:18px 20px 22px; border-top:2px solid rgba(32,30,29,.4); }
.security-state { padding:0; border:0; display:block; }
.security-state i { background:#ec3013; }
.security-state small { color:#605d5d; }
.security-state strong { color:#201e1d; }
.profile { padding:12px 0 0; border:0; border-top:1px solid #d7d3d3; border-radius:0; background:transparent; }
.profile > span { background:#201e1d; color:#f3f2f2; }
.profile strong { color:#201e1d; }
.profile small { color:#605d5d; }
.workspace { padding:0 30px 44px; max-width:none; }
.workspace-head { height:auto; min-height:116px; padding:26px 0 20px; border-bottom:2px solid rgba(32,30,29,.4); }
.workspace-head h2 { color:#201e1d; font-family:Arial,Helvetica,sans-serif; font-size:32px; font-weight:800; letter-spacing:-.015em; }
.section-head h3, .dialog-card h3 { font-family:Arial,Helvetica,sans-serif; font-weight:800; color:#201e1d; }
.section-head.hero-head, .welcome, .workspace-scope, .table-card, .audit-card, .bot-card, .hero-card, .performance-strip, .info-banner, .market-toolbar { border-radius:0; box-shadow:none; }
.section-head.hero-head { background:transparent; border:0; border-bottom:2px solid rgba(32,30,29,.4); padding:26px 0 20px; }
.metric-grid article, .position-summary article, .account-summary article { border-radius:0; box-shadow:none; }
.button { border-radius:0; box-shadow:none; }
.button:hover { box-shadow:none; transform:none; background:#ffe0d9; }
.market-hero, .alpha-hero { border-radius:0; box-shadow:none; }
.table-card, .audit-card { border-color:rgba(32,30,29,.4); }
.table-card table th { color:#605d5d; }
.admin-note-panel { max-width:900px; padding:24px; }
.admin-note-panel p { max-width:760px; color:#605d5d; line-height:1.6; }
.admin-model-grid, .admin-deploy-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; margin-top:20px; background:#d7d3d3; border:1px solid #d7d3d3; }
.admin-model-grid span, .admin-deploy-steps span { padding:14px; background:#fff; color:#444141; font-size:12px; font-weight:700; }
.admin-deploy-steps span { border-left:3px solid #ec3013; }
.admin-create-head { display:flex; justify-content:space-between; align-items:flex-start; gap:24px; padding:26px 0 22px; border-bottom:2px solid rgba(32,30,29,.4); }
.admin-kicker, .admin-form-index, .admin-server-card h5, .admin-db-note > span { color:#605d5d; font-size:12px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.admin-create-head h4 { margin:8px 0 6px; color:#201e1d; font-size:34px; line-height:1.05; }
.admin-create-head p { max-width:720px; margin:0; color:#605d5d; line-height:1.55; }
.admin-create-actions { display:flex; align-items:center; gap:12px; white-space:nowrap; }
.server-status { display:inline-flex; align-items:center; gap:9px; padding:12px 15px; border:1px solid #201e1d; font-size:13px; font-weight:700; }
.server-status i { width:9px; height:9px; display:inline-block; background:#ec3013; }
.admin-create-layout { display:grid; grid-template-columns:minmax(0,1fr) 350px; gap:30px; padding-top:30px; }
.admin-form-panel { min-width:0; }
.admin-form-section { padding:0 0 24px; margin-bottom:26px; border-bottom:1px solid #aaa5a5; }
.admin-form-section > .admin-form-index { display:block; margin-bottom:16px; }
.admin-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 22px; }
.admin-form-grid label, .admin-check-grid label { color:#201e1d; font-size:12px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.admin-form-grid input { width:100%; margin-top:8px; padding:13px 14px; border:1px solid #8d8989; border-radius:0; background:#fff; color:#201e1d; font-size:16px; box-sizing:border-box; }
.admin-role-options { display:grid; gap:2px; }
.admin-role-option { display:flex; align-items:flex-start; gap:14px; padding:18px 20px; border-left:4px solid transparent; background:#fff; cursor:pointer; }
.admin-role-option:hover { background:#f6efed; }
.admin-role-option:has(input:checked) { border-left-color:#ec3013; background:#eae9e9; }
.admin-role-option input { margin-top:4px; accent-color:#ec3013; }
.admin-role-option span { display:grid; gap:5px; }
.admin-role-option strong { color:#201e1d; font-size:18px; }
.admin-role-option small { color:#605d5d; font-size:14px; line-height:1.4; }
.admin-check-grid { display:grid; gap:12px; margin-top:22px; }
.admin-check-grid label { display:flex; align-items:center; gap:10px; letter-spacing:0; text-transform:none; font-size:14px; font-weight:600; }
.admin-check-grid input { accent-color:#ec3013; }
.admin-form-actions { display:flex; justify-content:flex-end; gap:12px; }
.admin-server-card { align-self:start; padding:27px 25px; border:1px solid #201e1d; background:#fff; }
.admin-server-card h5 { margin:0 0 16px; }
.admin-server-card ul { list-style:none; padding:0; margin:0; }
.admin-server-card li { position:relative; padding:14px 0 14px 35px; border-bottom:1px solid #d7d3d3; color:#605d5d; font-size:14px; line-height:1.35; }
.admin-server-card li::before { content:'○'; position:absolute; left:0; top:11px; color:#ec3013; font-size:20px; }
.admin-server-card li.checked::before { content:'✓'; color:#201e1d; font-weight:800; }
.admin-db-note { margin-top:28px; padding-top:20px; border-top:1px solid #aaa5a5; }
.admin-db-note p { margin:10px 0 0; color:#605d5d; font-size:13px; line-height:1.55; }
.nav-item.nav-action { padding-left:34px; border-left:4px solid #ec3013; background:#f6efed; }
@media (max-width:900px) { .admin-create-layout { grid-template-columns:1fr; } .admin-server-card { order:-1; } }
@media (max-width:650px) { .admin-create-head { flex-direction:column; } .admin-create-actions { flex-wrap:wrap; } .admin-form-grid { grid-template-columns:1fr; } }
@media (max-width:760px) { .sidebar { width:100%; border-right:0; border-bottom:2px solid rgba(32,30,29,.4); } .archive-brand { display:none; } .sidebar-bottom { display:none; } .workspace { padding:0 16px 40px; } }

/* v2 admin overrides (kept last so they win over the legacy shell rules). */
.app-shell { grid-template-columns:246px 1fr; background:#f3f2f2; color:#201e1d; }
.sidebar { width:246px; background:#f3f2f2; color:#201e1d; padding:0; border-right:2px solid rgba(32,30,29,.4); }
.logo { display:block; padding:24px 20px 20px; border-bottom:2px solid rgba(32,30,29,.4); letter-spacing:0; }
.archive-brand { height:auto; }
.prototype-brand-kicker { color:#ec3013; font-size:11px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.prototype-brand strong { display:block; color:#201e1d; font-size:22px; line-height:1.1; letter-spacing:-.015em; margin-top:8px; }
.prototype-brand em { display:block; color:#605d5d; font-size:12px; line-height:1.5; font-style:normal; margin-top:8px; }
.sidebar nav { gap:0; padding:0; overflow-y:auto; }
.nav-item { border:0; border-bottom:1px solid #d7d3d3; border-left:4px solid transparent; color:#201e1d; background:transparent; padding:13px 16px; font-size:14px; }
.nav-item span { color:#605d5d; }
.nav-item:hover, .nav-item.active { color:#201e1d; background:#eae9e9; box-shadow:none; border-left-color:#ec3013; }
.sidebar-bottom { padding:18px 20px 22px; border-top:2px solid rgba(32,30,29,.4); }
.security-state { border:0; padding:0; }
.security-state small { color:#605d5d; }
.security-state strong { color:#201e1d; }
.profile { border:0; border-radius:0; background:transparent; padding:12px 0 0; }
.profile > span { background:#201e1d; color:#f3f2f2; border-radius:0; }
.profile strong { color:#201e1d; }
.workspace { grid-column:2; width:100%; padding:0 30px 44px; }
.workspace-head { height:auto; min-height:130px; padding:26px 0 20px; border-bottom:2px solid rgba(32,30,29,.4); }
.workspace-head h2 { font-family:Arial,Helvetica,sans-serif; font-size:32px; font-weight:800; line-height:1.12; letter-spacing:-.015em; }
.view { padding-top:24px; }
