
:root{color-scheme:dark;--bg:#050b19;--side:#081226;--panel:#09182e;--panel2:#0b1b34;--border:#263e61;--bright:#3ceade;--purple:#8f58ff;--blue:#3e91f2;--text:#eef5ff;--muted:#8aa4ca;--red:#ff6b86;--green:#40e8bd;--shadow:0 12px 32px rgba(0,0,0,.19)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:radial-gradient(ellipse at 62% -12%,#0b2360 0,transparent 48%),#050b19;color:var(--text);font:13px/1.5 Inter,"Segoe UI",system-ui,Arial,sans-serif}
button,input,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}
button:disabled{cursor:not-allowed;opacity:.45}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid #ad81ff;outline-offset:2px}
.shell{display:grid;grid-template-columns:232px minmax(0,1fr);min-height:100vh}
.sidebar{background:linear-gradient(180deg,#091127,#080f22 55%,#080e1f);border-right:1px solid #1d3453;padding:18px 13px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;z-index:9}
.brand{display:flex;align-items:center;gap:12px;padding:1px 5px 19px;border-bottom:1px solid #253956}
.brand-icon,.owner-icon{display:grid;place-items:center;flex:none;width:45px;height:45px;border:1px solid #8b6bfb;border-radius:11px;background:linear-gradient(145deg,#3f38c6,#231777 70%);box-shadow:0 0 22px #634cff70,inset 0 1px #ffffff44;color:white;font-size:20px;font-weight:800}
.brand h1{font-size:16px;line-height:1.15;margin:0;letter-spacing:.2px}.brand sup{font-size:8px}.brand small{display:block;color:#61c1e7;letter-spacing:2px;font-size:8px;font-weight:800;margin-top:5px}
.nav{display:grid;gap:5px;margin-top:17px}
.nav a{display:flex;align-items:center;gap:13px;padding:11px 12px;color:#a9bcdb;border-radius:9px;border:1px solid transparent;font-size:12px;font-weight:630;transition:.17s}
.nav a:hover{background:#182746;color:white}.nav a.active{background:linear-gradient(110deg,#4930af,#241e69);border-color:#7354e6;color:white;box-shadow:inset 0 1px #ffffff24,0 0 17px #5d46ef30}
.ico{display:inline-block;width:18px;height:18px;vertical-align:middle;flex:none;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.nav .ico{width:19px;height:19px;color:#96b7ff}
.side-bottom{margin-top:auto}
.data-card{border:1px solid #5547b5;border-radius:12px;padding:13px 11px;background:linear-gradient(146deg,#131b40,#071c30);box-shadow:inset 0 2px #796cff52,0 0 18px #4638b426}
.eyebrow{font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:1.9px;color:#56ceeb}
.data-card header{display:flex;gap:9px;align-items:center}.data-card header .ico{width:25px;height:25px;color:#4be0f0}
.data-card strong{font-size:11px;color:#6fefe0;display:block;margin:3px 0 8px}
.data-card ul{list-style:none;padding:0;margin:9px 0}.data-card li{font-size:11px;color:#bdd0ec;padding:5px 0;display:flex;justify-content:space-between}.data-card li span{color:#65e5da}
.owner{display:flex;align-items:center;gap:10px;border-top:1px solid #22365a;margin-top:16px;padding:15px 4px 0}
.owner-icon{width:34px;height:34px;font-size:13px;border-color:#563ba6}.owner b{display:block}.owner small{color:#84a4d5}
.app{min-width:0;padding:0 15px 50px;max-width:1900px;width:100%;margin:auto}
.hero{height:109px;margin:0 -15px 10px;position:relative;overflow:hidden;isolation:isolate;border-bottom:1px solid #294065;background:linear-gradient(90deg,#09152a 0,#080e29 44%,#0d1640 100%)}
.hero:before{content:"";position:absolute;inset:0;background-image:radial-gradient(#bdd4ff 1px,transparent 1.5px);background-size:29px 23px;opacity:.24;mask-image:linear-gradient(90deg,transparent 33%,black)}
.hero-text{position:relative;z-index:2;padding:12px 35px}.hero h2{margin:0;font-size:clamp(22px,2.4vw,35px);letter-spacing:-1.15px;line-height:1.15}.hero h2 em{font-style:normal;background:linear-gradient(90deg,#92a9ff,#9d5ffe,#52def4);background-clip:text;color:transparent}.hero p{margin:2px 0 0;color:#b4cbef;font-size:12px}.hero .strap{color:#7ca5df;font-size:10px;letter-spacing:.8px;margin-top:3px}
.space{position:absolute;right:4%;top:-39px;width:450px;height:190px;transform:rotate(-4deg);pointer-events:none;opacity:.95}
.globe{position:absolute;left:132px;top:0;width:182px;height:182px;border-radius:50%;border:1px solid #5ac7f4;background:radial-gradient(circle at 25% 20%,#70efff 0,#266ac0 16%,#172a79 43%,#101047 58%,#040715 78%);box-shadow:0 0 37px #236df0a6,inset 12px 10px 25px #85baf288,inset -10px -15px 18px black}
.globe:after{content:"";position:absolute;inset:22px 26px;border-left:1px solid #8d9cfc77;border-right:1px solid #46dff477;border-radius:50%;transform:rotate(34deg)}
.orbit{position:absolute;left:15px;top:48px;width:430px;height:92px;border:2px solid #8c5cfc;border-radius:50%;transform:rotate(-19deg);box-shadow:0 0 15px #a65affaa,inset 0 0 15px #ac56fb51}
.orbit.b{top:38px;left:42px;width:370px;height:110px;border-color:#26d2f4;transform:rotate(20deg);box-shadow:0 0 15px #21c9ee88}
.hero-tag{position:absolute;right:18px;top:20px;font-size:8px;letter-spacing:2.3px;line-height:2.1;color:#d4dfff;font-weight:750;text-align:right;z-index:2}
.status-grid{display:grid;grid-template-columns:1.75fr 1fr 1.05fr 1.15fr 1.15fr;gap:10px;margin-bottom:11px}
.status-card{background:linear-gradient(150deg,#0c1d33,#071426);border:1px solid #173856;border-radius:11px;padding:11px 12px;min-height:65px;display:flex;align-items:center;gap:12px;box-shadow:inset 0 1px #ffffff09}
.status-card .symbol{display:grid;place-items:center;width:36px;height:36px;flex:none;border-radius:10px;background:#092c3c;color:#18e6d3}
.status-card .symbol.purple{background:#231863;color:#965aff}.status-card .symbol.blue{background:#101e55;color:#5c9cfe}
.status-card strong{display:block;font-size:11px;line-height:1.25}.status-card small{display:block;font-size:10px;margin-top:4px;color:#85a7d6}
.status-card .num{font-size:19px;font-weight:800}.status-card .ok{color:#3ce6c5}
.dashboard{display:grid;grid-template-columns:minmax(0,1fr) 292px;gap:12px;align-items:start}
.maincol,.rightcol{min-width:0;display:grid;gap:11px}
.panel{background:linear-gradient(150deg,#09182d,#061225);border:1px solid #203959;border-radius:12px;min-width:0;box-shadow:var(--shadow)}
.panel-inner{padding:12px 14px}
.panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;min-height:20px}
.panel-head h3{font-size:10px;letter-spacing:1.75px;color:#48d8f2;font-weight:850;margin:0;text-transform:uppercase;white-space:nowrap}
.panel-head h3 .index{display:inline-grid;place-items:center;background:#082d50;border:1px solid #155a8f;color:#4bbff5;width:30px;height:30px;border-radius:7px;margin-right:10px}
.panel-head small{font-size:10px;color:#7f9cc3;margin-left:10px;font-weight:450;letter-spacing:0;text-transform:none}
.toolbar{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.btn{display:inline-flex;gap:6px;align-items:center;justify-content:center;background:#0c1c35;border:1px solid #26486d;border-radius:7px;color:#bcd3f7;padding:8px 11px;font-size:11px;font-weight:700;white-space:nowrap;transition:background .16s,box-shadow .16s,transform .16s}
.btn:hover:not(:disabled){background:#172b50;box-shadow:0 0 12px #5647db20;transform:translateY(-1px)}
.btn.primary{background:linear-gradient(110deg,#4632da,#7937ff);color:white;border-color:#9870fd;box-shadow:0 0 16px #664aff46;font-size:12px;font-weight:800}
.btn.stop{background:linear-gradient(105deg,#401526,#8a2349);border-color:#b93a69;color:#fff}
.btn.accent{border-color:#5b3cb4;background:#291b63;color:#e4dcff}
.btn.sm{font-size:10px;padding:6px 9px}
.btn.ghost{border-color:#223a5a;background:#0c1b31}
.form-grid{display:grid;grid-template-columns:1fr 1fr .68fr 1.42fr;gap:11px}
.field{display:flex;flex-direction:column;gap:5px;min-width:0}
.field>span,.field>label{color:#bdd0ea;font-size:10px;font-weight:650}
input:not([type=checkbox]),select{width:100%;min-width:0;min-height:34px;background:#09182e;border:1px solid #294266;border-radius:7px;color:#e4efff;padding:7px 10px;font-size:12px;outline:none}
input:not([type=checkbox]):focus,select:focus{border-color:#8265f9;box-shadow:0 0 0 2px #7154e833}
input[type=checkbox]{accent-color:#7954f4;cursor:pointer}
.dates{display:grid;grid-template-columns:1fr 10px 1fr;align-items:end;gap:4px}.dates .arrow{text-align:center;color:#699ce7;padding-bottom:9px}
.dates input{font-size:11px;padding:6px}
.tiny{font-size:10px;color:#81a0cf}
.symbol-chips{display:flex;gap:5px;margin-top:7px;flex-wrap:wrap}
.chip{border:1px solid #263e67;border-radius:5px;background:#101e35;color:#9bb8e6;padding:3px 8px;font-size:10px}
.chip:hover{background:#213467;color:white}
.search-wrap{position:relative}
.suggest{position:absolute;z-index:10;top:37px;left:0;right:0;background:#081629;border:1px solid #7754df;border-radius:7px;max-height:180px;overflow:auto;box-shadow:0 17px 33px #000b}
.suggest button{display:block;width:100%;text-align:left;background:transparent;border:0;border-bottom:1px solid #20365b;color:#e2edff;font-size:12px;padding:8px 11px}.suggest button:hover{background:#29245f}
.hidden{display:none!important}
.config-lower{display:grid;grid-template-columns: .94fr 1.4fr;gap:11px;margin-top:11px}
.mode-panel{display:grid;gap:6px}
.mode-buttons{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.modebtn{padding:9px 7px;border:1px solid #263f65;border-radius:7px;background:#0a1930;color:#a9bee2;text-align:left;font-size:11px;font-weight:730;line-height:1.4}
.modebtn span{display:block;color:#7f9fc9;font-size:9px;font-weight:400}
.modebtn.on{border-color:#915eff;background:linear-gradient(130deg,#4729a8,#181a5a);color:white;box-shadow:0 0 16px #6435ff4b}
.riskbox{border:1px solid #1d3857;border-radius:8px;padding:9px;background:#0a1a32}
.riskbox header{display:flex;align-items:center;gap:10px;font-size:11px;font-weight:800;color:#d7e5ff;margin-bottom:6px}
.riskbox header small{font-size:9px;color:#81a9c8;font-weight:400}
.risk-fields{display:grid;grid-template-columns:1.15fr .8fr .9fr .85fr;gap:8px}
.risk-fields .field>span{font-size:9px}.risk-fields input,.risk-fields select{min-height:30px}
.risk-note{margin:6px 0 0;font-size:9px;color:#46d5ca}
.param-layout{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}
.param-card{min-width:0;border:1px solid #1e3556;border-radius:9px;background:linear-gradient(145deg,#0d1c33,#071528);padding:10px}
.param-card h4{margin:0 0 8px;font-size:11px;display:flex;align-items:center;gap:7px;color:#dbe8fe}
.param-card h4 b{color:#8d74f7;font-size:16px}
.param-card .field{margin-bottom:7px}
.param-card select,.param-card input:not([type=checkbox]){height:31px;min-height:31px;padding:5px 6px;font-size:10px}
.checkrow{display:flex;align-items:center;gap:6px;color:#adc5e7;font-size:10px;padding:3px 0;line-height:1.3}.checkrow input{margin:0;width:14px;height:14px}
.param-actions{display:flex;gap:8px;justify-content:space-between;align-items:center;margin-top:9px;border-top:1px solid #1c3655;padding-top:9px;flex-wrap:wrap}
.action-left{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.runstat{color:#5fe6d3;font-size:10px}
.param-details{margin-top:12px;border-top:1px solid #29456a;padding-top:10px}
.param-details summary{color:#92b8ef;cursor:pointer;font-weight:700;font-size:11px}
.deep-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}
.deep-group{border:1px solid #263d5c;border-radius:9px;padding:11px;background:#08172c;display:grid;gap:8px;align-content:start}
.deep-group h4{margin:0 0 3px;color:#64d9ef;font-size:11px;text-transform:uppercase;letter-spacing:.8px}
.deep-item{display:grid;grid-template-columns:minmax(0,1fr) 98px 20px;gap:7px;align-items:center;font-size:10px;color:#a9c1e5}
.deep-item select,.deep-item input:not([type=checkbox]){min-height:30px;height:30px;font-size:10px;padding:4px}
.deep-item .axis{width:15px;height:15px}
.deep-item label{cursor:pointer}
.side-head{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:10px;letter-spacing:1.1px;color:#b7c9ff;text-transform:uppercase;font-weight:850;border-bottom:1px solid #243a58;padding-bottom:8px;margin-bottom:7px}
.side-head .ico{width:15px;height:15px;color:#a179ff}
.side-row{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #182f4a;padding:7px 0;font-size:11px;color:#acc4e8;gap:6px}.side-row:last-child{border:0}
.state{color:#4ee9cb;font-weight:750;font-size:10px}
.state.warn{color:#e0bb7f}.state.bad{color:#ff8291}
.queue-item{padding:9px 0;border-bottom:1px solid #1f3654;display:flex;justify-content:space-between;gap:9px;align-items:center}
.queue-item b{display:block;font-size:10px}.queue-item small{display:block;color:#8ba9d0;font-size:10px}
.queue-empty,.side-empty{color:#829fc5;font-size:11px;line-height:1.55;padding:8px 0}
.queue-progress{border-radius:30px;border:2px solid #8d5fff;padding:7px 4px;font-size:9px;color:#ccd6fa;min-width:41px;text-align:center}
.activity-item{display:grid;grid-template-columns:12px 1fr;gap:8px;padding:7px 0;font-size:10px}
.activity-dot{width:8px;height:8px;margin-top:5px;border-radius:50%;background:#44d8cf;box-shadow:0 0 10px #37dccc}
.activity-item small{color:#85a3d1;display:block}
.results-section{margin-top:11px}
.result-tabs{display:flex;gap:5px;flex-wrap:wrap;border-bottom:1px solid #1d3757;padding:6px 8px}
.tab{background:#0b1830;color:#9db9dc;border:1px solid #203757;border-radius:6px;padding:7px 10px;font-size:10px;font-weight:650}
.tab.on{color:#fff;background:linear-gradient(110deg,#5035c7,#7f45ed);border-color:#8166ff;box-shadow:0 0 13px #5635e14a}
.result-view{padding:10px}.result-view[hidden]{display:none}
.overview-columns{display:grid;grid-template-columns:1.06fr .99fr .71fr;gap:9px}
.result-box{min-width:0;background:#09182d;border:1px solid #1f3956;border-radius:9px;padding:10px}
.result-box h4{margin:0 0 9px;color:#4edff0;letter-spacing:1.1px;text-transform:uppercase;font-size:10px}
.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.kpi{background:#0c2035;border:1px solid #24435e;padding:7px;border-radius:7px;min-width:0}
.kpi small{display:block;color:#8cadd0;font-size:9px}.kpi strong{display:block;font-size:19px;color:white;line-height:1.4;overflow-wrap:anywhere}
.kpi .positive{color:#49e8bf}.kpi .negative{color:#ff849a}
.kpi .detail{display:block;font-size:9px;color:#8da9d3}
.chart-title{display:flex;justify-content:space-between;align-items:center;gap:6px;color:#58cbf1;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.5px;margin-bottom:3px}
.chart-area{width:100%;height:auto;min-height:109px;background:radial-gradient(ellipse at 50% 80%,#153c4a55,transparent);border:1px solid #1d3d59;border-radius:7px}
.chart-note{font-size:10px;color:#7f9fc9;margin:7px 0 0}
.curves{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}
.cal-head{display:flex;justify-content:space-between;align-items:center;gap:5px;margin-bottom:9px}
.cal-head h4{margin:0}.cal-head select{min-height:28px;height:28px;width:auto;font-size:10px}
.cal-controls{display:flex;align-items:center;gap:5px}
.cal-nav{border:1px solid #305176;background:#0d2540;color:#91b9e9;border-radius:5px;padding:2px 7px;font-size:12px}
.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}
.weekday{font-size:8px;color:#8aa2c8;text-align:center}
.day{height:36px;border:1px solid #253754;background:#101e32;border-radius:4px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2px;color:#a9bbdd;font-size:9px;min-width:0;padding:2px}
.day b{font-size:9px;font-weight:600}.day small{font-size:8px;overflow:hidden;max-width:100%;text-overflow:ellipsis;white-space:nowrap}
.day.win{background:#124636;border-color:#1f765d;color:#84f0cd}
.day.loss{background:#55232d;border-color:#7c3641;color:#ffabb7}
.day:not(:disabled):hover{border-color:#9476ff}
.day:disabled{opacity:.35}
.saved-list{display:grid;gap:6px;max-height:245px;overflow:auto}
.saved-item{background:#101f3b;border:1px solid #2d4266;border-radius:7px;padding:9px;display:flex;align-items:center;gap:7px;min-width:0}
.saved-item.current{border-color:#7e55f2;background:#251d5d}
.saved-item b{display:block;font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.saved-item small{display:block;color:#92afd7;font-size:9px}
.saved-item .details{min-width:0;flex:1}
.saved-item button{border:1px solid #395682;background:#0c1e3b;color:#c2d8ff;border-radius:4px;padding:4px 7px;font-size:9px;flex:none}
.note{font-size:10px;color:#98b4d6;line-height:1.5}
.ledger{overflow:auto;max-height:420px}.ledger table,.compare-table{border-collapse:collapse;width:100%;font-size:11px}.ledger th,.ledger td,.compare-table th,.compare-table td{text-align:left;padding:8px 10px;border-bottom:1px solid #263e60}.ledger th,.compare-table th{color:#9daff1;position:sticky;top:0;background:#0d1d35}
.inputs-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.input-tile{padding:8px;border:1px solid #253c60;background:#0a1a33;border-radius:7px;overflow-wrap:anywhere}
.input-tile small{color:#8aa9d2;display:block;font-size:9px}.input-tile b{font-size:11px}
.scroll-list{display:grid;gap:8px;max-height:360px;overflow:auto}
.compare-select{display:flex;gap:8px;align-items:center;justify-content:space-between;border:1px solid #294268;background:#0b1e3b;border-radius:8px;padding:9px}
.compare-scroll{overflow:auto;margin-top:12px}
.notification{font-size:11px;line-height:1.5;color:#c2d5ee;padding:8px 10px;border:1px solid #345073;background:#0d2139;border-radius:7px;margin-top:7px;overflow-wrap:anywhere}
.notification.good{color:#75f1d1;border-color:#236c63;background:#092d2d}.notification.bad{color:#ffacb6;border-color:#7d3447;background:#2e1724}
footer{color:#6788b1;text-align:center;font-size:10px;margin-top:18px}
@media(max-width:1500px){.dashboard{grid-template-columns:minmax(0,1fr) 250px}.form-grid{grid-template-columns:1fr 1fr .64fr 1.5fr}.param-card{padding:8px}.status-card{padding:9px;gap:7px}}
@media(max-width:1270px){.shell{grid-template-columns:195px minmax(0,1fr)}.sidebar{padding:14px 9px}.nav a{padding:11px 8px}.dashboard{grid-template-columns:minmax(0,1fr)}.rightcol{grid-template-columns:repeat(3,minmax(0,1fr))}.overview-columns{grid-template-columns:1.1fr 1fr .8fr}.hero-tag{display:none}.status-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.status-card .symbol{width:29px;height:29px}.status-card strong{font-size:10px}.status-card small{font-size:9px}.param-layout{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:940px){.shell{grid-template-columns:66px minmax(0,1fr)}.sidebar{padding:12px 5px}.brand{padding:0 4px 14px;justify-content:center}.brand h1,.brand small,.nav .nav-label,.data-card,.owner div:not(.owner-icon){display:none}.nav a{justify-content:center}.owner{justify-content:center}.brand-icon{width:42px;height:42px}.rightcol{grid-template-columns:1fr 1fr}.rightcol .panel:last-child{grid-column:1/-1}.status-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.overview-columns{grid-template-columns:1fr 1fr}.overview-columns>.result-box:last-child{grid-column:1/-1}.form-grid{grid-template-columns:1fr 1fr}.deep-groups{grid-template-columns:1fr 1fr}}
@media(max-width:660px){.shell{display:block}.sidebar{position:relative;height:auto;display:block}.brand{justify-content:start;border:0;padding:0}.brand h1,.brand small{display:block}.nav,.side-bottom{display:none}.app{padding:0 9px 35px}.hero{margin:0 -9px;height:104px}.hero-text{padding:14px 13px}.hero h2{font-size:23px}.hero p{font-size:10px}.hero .strap{font-size:9px}.space{right:-210px;opacity:.42}.status-grid{grid-template-columns:1fr 1fr;gap:6px;margin:8px 0}.status-card{min-height:55px;padding:6px}.status-card:first-child{grid-column:1/-1}.status-card strong{font-size:10px}.panel-inner{padding:10px}.panel-head{align-items:start;flex-wrap:wrap}.panel-head small{display:block;margin:4px 0}.form-grid,.config-lower,.risk-fields,.rightcol,.overview-columns,.curves{grid-template-columns:1fr 1fr}.form-grid .field:last-child{grid-column:1/-1}.config-lower,.overview-columns{grid-template-columns:1fr}.param-layout{grid-template-columns:repeat(2,minmax(0,1fr))}.param-card:last-child{grid-column:1/-1}.deep-groups,.inputs-grid{grid-template-columns:1fr 1fr}.result-tabs{overflow:auto;flex-wrap:nowrap}.tab{flex:none}.result-box{padding:8px}.day{height:37px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}html{scroll-behavior:auto}}


/* AUTO grid safety planner */
.grid-planner{margin-top:12px;border-radius:9px;border:1px solid #2d5474;background:linear-gradient(115deg,#0b273b,#111936);padding:12px}
.grid-planner-head{display:flex;align-items:center;justify-content:space-between;gap:14px}
.grid-planner-head b{font-size:12px;display:block;color:#e5f2ff}
.grid-planner-head span:not(.grid-level){display:block;font-size:10px;color:#a5bbd8;margin-top:3px}
.grid-level{font-size:10px;font-weight:800;letter-spacing:.8px;border-radius:5px;padding:4px 8px;color:#73efcf;background:#17483e}
.grid-planner.over{border-color:#a34459;background:linear-gradient(120deg,#35172b,#141731)}
.grid-planner.over .grid-level{color:#ffd5dd;background:#8c2e49}
.grid-planner.warning .grid-level{color:#ffe1a0;background:#664525}
.grid-meter{background:#061325;height:6px;border-radius:10px;margin:11px 0 10px;overflow:hidden}
.grid-meter span{display:block;height:100%;background:linear-gradient(90deg,#27d9ca,#8658ff);border-radius:10px;width:0%;transition:width .15s ease}
.grid-planner.over .grid-meter span{background:linear-gradient(90deg,#fc9e61,#ff4777)}
.grid-actions{display:flex;gap:7px;flex-wrap:wrap}
.grid-caveat{font-size:10px;color:#9fb6d3;margin:9px 0 0}


/* V2.2 simplified parameter workflow - mode-specific, readable, precise */
.simple-mode-guide{display:flex;gap:11px;align-items:center;border:1px solid #355879;border-radius:10px;padding:12px 14px;margin:1px 0 14px;background:linear-gradient(112deg,#0a2938,#121d40)}
.simple-guide-icon{flex:none;display:grid;place-items:center;border:1px solid #1e938f;border-radius:9px;color:#68f8e8;background:#0e3e48;width:32px;height:32px;font-size:18px;font-weight:800}
.simple-mode-guide>div:nth-child(2){min-width:0;flex:1}
.simple-mode-guide strong{color:#e8f6ff;font-size:13px;font-weight:800;display:block}
.simple-mode-guide p{font-size:11px;color:#a9c8e3;line-height:1.55;margin:3px 0 0}
.simple-guide-pill{font-size:10px;font-weight:850;letter-spacing:1.1px;color:#65edd4;border:1px solid #226c6d;border-radius:6px;padding:5px 8px;background:#0b3c42}
.optimisation-mode .simple-guide-pill{color:#e7d7ff;border-color:#7f5ad7;background:#362269}
.optimisation-mode .simple-mode-guide{border-color:#7052b3;background:linear-gradient(110deg,#252054,#0b1f3c)}
.auto-guided{margin-bottom:15px;padding:14px;border:1px solid #6348bb;border-radius:10px;background:linear-gradient(135deg,#151d42,#0b1d39)}
.auto-guided-heading{display:flex;justify-content:space-between;align-items:center;gap:13px;margin-bottom:12px}
.auto-guided-heading h4{font-size:13px;margin:0 0 4px;color:#e9dfff}
.auto-guided-heading p{margin:0;font-size:11px;line-height:1.5;color:#b8c4e6}
.easy-axis-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.easy-axis{border:1px solid #34496e;border-radius:9px;background:linear-gradient(145deg,#0d1d37,#0d1a2e);padding:12px;transition:border .15s,background .15s}
.easy-axis.chosen{border-color:#8e6bf2;background:linear-gradient(135deg,#232354,#141d3a);box-shadow:0 0 0 1px #8e62ed16}
.easy-axis-top{display:flex;gap:9px;align-items:start;cursor:pointer}
.easy-axis-top input{width:17px;height:17px;flex:none;margin:2px 0 0;accent-color:#9464ff}
.easy-axis-top b{display:block;color:#e9f0ff;font-size:12px;margin-bottom:3px}
.easy-axis-top small{display:block;font-size:10px;color:#9fb5d5;line-height:1.45}
.easy-footnote{margin:12px 0 0;font-size:10px;color:#a6bfdf;line-height:1.5}
.plain-help{color:#88a6cb;font-size:10px;line-height:1.45;display:block;margin-top:4px;font-weight:400}
.param-card .checkrow{flex-wrap:wrap}
.param-card .checkrow>.plain-help{width:100%;padding-left:0;line-height:1.35}
.param-card .field{margin-bottom:9px}
.param-card .field>.plain-help{font-size:9px;line-height:1.3}
.param-card .axis-explainer{font-size:11px;color:#b4c4df;line-height:1.5;margin:0 0 9px}
.axis-summary{background:#0d2a39;color:#6bdfd4;border:1px solid #27546c;font-size:10px;line-height:1.5;border-radius:6px;padding:8px;overflow-wrap:anywhere}
.optimisation-mode .axis-summary{color:#c9b6ff;background:#191d44;border-color:#544494}
.deep-item-guided{border-bottom:1px solid #294062;padding:9px 0 11px;display:flex;flex-direction:column;gap:3px}
.deep-item-guided:last-child{border-bottom:0}
.deep-item-guided .field{margin:0;display:flex;flex-direction:column;gap:4px}
.deep-item-guided .field>label,.deep-item-guided .checkrow label{color:#deebfb;font-size:11px}
.deep-item-guided>.plain-help{line-height:1.5;font-size:10px}
.deep-item-guided .advanced-name{font-size:11px;color:#e0ebff}
.deep-item-guided .checkrow{margin-bottom:3px}
.axis-toggle-wrap{display:none;align-items:center;gap:7px;margin:7px 0 0;font-size:10px;font-weight:700;color:#a8c5ed;cursor:pointer}
.axis-toggle-wrap input{width:15px;height:15px;accent-color:#9565fe}
.optimisation-mode .axis-toggle-wrap{display:flex}
.axis-values{margin-top:9px;padding:9px;border:1px solid #384e7c;background:#0d203d;border-radius:7px;display:flex;flex-direction:column;gap:7px;max-width:100%;min-width:0}
.axis-caption{font-size:10px;font-weight:600;color:#b8ccea;line-height:1.4}
.axis-values input[type=text]{min-height:32px;font-size:11px;letter-spacing:.1px;border-color:#5071a5}
.axis-option-list{display:flex;flex-wrap:wrap;gap:5px}
.axis-choice{display:inline-flex;align-items:center;gap:5px;border:1px solid #456082;border-radius:5px;background:#14294a;padding:5px 7px;font-size:10px;color:#d1e2fc;cursor:pointer}
.axis-choice:has(input:checked){background:#33245d;border-color:#8968da;color:#fff}
.axis-choice input{width:13px;height:13px;accent-color:#9466ff}
.deep-groups{align-items:start}
.review-details{margin-top:10px;border:1px solid #2b4769;border-radius:9px;background:#0b1c33;padding:10px}
.review-details summary{color:#b6d4f5;font-size:11px;cursor:pointer;font-weight:750}
.review-details .review-note{font-size:10px;color:#8facd2;margin:8px 0}
.review-columns{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:10px}
.review-item{padding:8px;background:#0d233e;border:1px solid #264363;border-radius:7px;min-width:0;overflow-wrap:anywhere}
.review-item small{display:block;font-size:9px;color:#a0bbdb}
.review-item b{display:block;font-size:11px;color:#e7efff;line-height:1.45;margin-top:3px}
.review-item.optimised{border-color:#885ceb;background:#262046}
.review-item.optimised b{color:#d9c8ff}
@media(max-width:1220px){.easy-axis-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.review-columns{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.easy-axis-grid,.review-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.auto-guided-heading{align-items:stretch;flex-direction:column}.simple-mode-guide{align-items:flex-start}.simple-guide-pill{align-self:flex-start}}
@media(max-width:490px){.easy-axis-grid,.review-columns{grid-template-columns:1fr}.simple-guide-pill{display:none}}

/* v2.3 TradingView-inspired Inputs and mobile-friendly range editors */
.legacy-previews,.auto-guided{display:none!important}
.tv-inputs{margin-top:12px;border:1px solid #415579;border-radius:11px;background:#0b1830;padding:0;overflow:hidden}
.tv-inputs>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:15px 17px;cursor:pointer;font-size:15px;font-weight:800;color:#eef5ff;list-style:none}
.tv-inputs>summary::-webkit-details-marker{display:none}
.tv-inputs>summary:after{content:'▾';color:#b69bfa;font-size:20px;transition:transform .15s}
.tv-inputs[open]>summary:after{transform:rotate(180deg)}
.tv-inputs>summary small{font-size:10px;color:#9cb6d5;font-weight:500;margin-left:auto}
.tv-inputs[open]>summary{border-bottom:1px solid #344669;background:#121e3b}
.tv-inputs-intro{color:#a6bbd9;font-size:11px;line-height:1.5;margin:12px 16px}
.tv-inputs .deep-groups{padding:0 14px 14px;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.tv-inputs .deep-group{min-width:0}
.tv-inputs .deep-group h4{font-size:12px}
.tv-inputs .axis-toggle-wrap{font-size:11px}
.axis-range-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;min-width:0}
.axis-range-fields label{display:flex;flex-direction:column;gap:5px;font-size:10px;color:#bad0ed;min-width:0}
.axis-range-fields input{width:100%;min-width:0;box-sizing:border-box;min-height:36px;border-radius:6px;background:#071830;border:1px solid #425c86;color:#edf4ff;padding:7px;font-size:13px}
.axis-preview{color:#70dccc;font-size:10px;overflow-wrap:anywhere;line-height:1.5}
.countdown-shell{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:13px 0 5px}
.countdown-shell>div{border:1px solid #315174;border-radius:9px;padding:11px;background:linear-gradient(130deg,#0c223c,#101733);min-width:0}
.countdown-shell span{display:block;color:#90a8ca;font-size:9px;letter-spacing:.8px;margin-bottom:5px}
.countdown-shell strong{display:block;color:#f1f5ff;font-size:14px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.countdown-shell #etaClock{color:#6ee6db;font-size:19px}
@media(max-width:780px){.tv-inputs .deep-groups{grid-template-columns:1fr}.countdown-shell{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.tv-inputs>summary{padding:13px}.tv-inputs>summary small{font-size:9px}.axis-range-fields{gap:5px}.axis-range-fields input{font-size:12px;padding:5px}.countdown-shell>div{padding:9px}.countdown-shell strong{font-size:12px}.countdown-shell #etaClock{font-size:17px}.param-actions .action-left{flex-wrap:wrap}.param-actions .action-left .btn{min-height:40px}}

/* PWA installation and notification toolbar */
.pwa-tools{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:10px 14px;margin:12px 0;border:1px solid #294d66;background:linear-gradient(100deg,#101a35,#11283b);border-radius:11px}
.pwa-tools-title{flex:1;min-width:180px}
.pwa-tools-title b{display:block;color:#e4f1ff;font-size:12px}
.pwa-tools-title small{display:block;color:#9cb5d3;font-size:10px;margin-top:3px;line-height:1.4}
.pwa-tools button{min-height:36px;flex:none}
@media(max-width:490px){.pwa-tools{margin:8px 0;padding:9px;gap:6px}.pwa-tools-title{flex-basis:100%}.pwa-tools button{flex:1;min-height:43px}}

.pwa-tools button[hidden]{display:none!important}
