/* LESiM Online – independent platform and mission editor, Alpha 5.19 */
:root{color-scheme:dark;--bg:#0d1110;--surface:#171e1a;--raised:#202a22;--line:#364539;--text:#f0f5ed;--muted:#a0b19f;--lime:#d3e69a;--fire:#ed9b86;--med:#86cbb1;--pol:#8bafdd}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}
.top{height:77px;display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid var(--line);background:#121814;padding:0 max(22px,calc((100vw - 1320px)/2));position:sticky;top:0;z-index:20}
.logo{display:inline-flex;gap:12px;align-items:center;font-weight:900;letter-spacing:-.04em;font-size:20px}.logo-emblem{display:grid;place-items:center;width:43px;height:43px;border-radius:11px;background:var(--lime);color:#18231a;font-size:23px}.logo small{display:block;color:var(--muted);font-size:10px;letter-spacing:.12em;font-weight:700;margin-top:3px}
.nav{display:flex;align-items:center;gap:18px}.nav a{font-size:12px;font-weight:750;color:#b5c7b3}.nav a:hover,.nav a.active{color:var(--lime)}
.pill{display:inline-flex;align-items:center;gap:7px;border:1px solid #526b49;border-radius:30px;background:#243528;color:#d9edcd;padding:9px 12px;font-size:11px;font-weight:850}.pill.dot:before{content:'';width:7px;height:7px;border-radius:50%;background:#b3e69f}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid #526849;border-radius:7px;padding:12px 17px;background:#293b2b;color:#e0f0d6;font-weight:800;font-size:12px;min-height:42px}.btn:hover{border-color:#a7c68b}.btn.primary{background:var(--lime);border-color:var(--lime);color:#1a241b}.btn.ghost{background:transparent}.btn.warn{border-color:#8f5a48;color:#eab39a;background:#422e26}
.container{max-width:1320px;margin:0 auto;padding:32px 23px 60px}.eyebrow{font-size:11px;font-weight:850;letter-spacing:.14em;color:#accb9d}.hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(310px,.85fr);gap:38px;align-items:center;padding:52px 0 50px}.hero h1{font-size:clamp(35px,5vw,66px);letter-spacing:-.065em;line-height:1.07;margin:15px 0}.hero h1 em{font-style:normal;color:var(--lime)}.hero p{max-width:650px;color:#a5b7a7;font-size:16px;line-height:1.75}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.hero .btn{min-height:52px;padding:15px 22px}.hero-art{min-height:320px;border:1px solid #3c5740;border-radius:18px;padding:21px;background:radial-gradient(circle at 76% 16%,#3b5b3b 0,#202f27 25%,#172019 65%);display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 25px 70px #0004}.hero-art .bar{display:flex;justify-content:space-between;color:#b9d7ac;font-size:10px;font-weight:800;letter-spacing:.1em}.hero-art .big{font-size:52px;font-weight:900;letter-spacing:-.06em}.hero-art .big small{display:block;font-size:13px;color:#b3c6ab;letter-spacing:.02em;font-weight:650}.signal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.signal-grid>div{border:1px solid #496149;background:#273a2c;border-radius:7px;padding:13px;font-size:10px;color:#a9c1a7}.signal-grid b{font-size:23px;display:block;margin-top:8px;color:white}
.heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:23px 0 17px}.heading h2{font-size:25px;letter-spacing:-.04em;margin:0}.heading small{color:#91a590}.tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.tile{border:1px solid #3b4a3c;background:#1a231d;border-radius:12px;padding:24px;display:flex;flex-direction:column;gap:12px;min-height:250px}.tile small{color:#b2c9a9;font-size:10px;letter-spacing:.12em;font-weight:850}.tile h3{font-size:23px;letter-spacing:-.04em;margin:0}.tile p{font-size:13px;line-height:1.65;color:#a5b6a4;margin:0;flex:1}.tile .btn{align-self:start}.tile .symbol{display:grid;place-items:center;background:#334831;border-radius:12px;height:49px;width:49px;color:#d8e9ae;font-weight:900;font-size:24px}.tile.disabled{opacity:.7}.tile.disabled .btn{pointer-events:none}
.footer{border-top:1px solid var(--line);padding:20px max(23px,calc((100vw - 1320px)/2));display:flex;flex-wrap:wrap;justify-content:space-between;gap:15px;color:#869e89;font-size:11px}
.note{border:1px solid #476049;border-radius:9px;background:#223127;color:#bcd4b6;font-size:12px;line-height:1.65;padding:15px 17px}
.editor-head{display:flex;align-items:start;justify-content:space-between;gap:15px;margin-bottom:20px}.editor-head h1{letter-spacing:-.055em;font-size:36px;margin:8px 0}.editor-head p{color:#99b09e;font-size:13px}.editor-actions{display:flex;gap:7px;flex-wrap:wrap}
.editor-layout{display:grid;grid-template-columns:245px minmax(0,1fr) 285px;gap:13px;align-items:start}.panel{border:1px solid #3c4c40;background:var(--surface);border-radius:10px;overflow:hidden;min-width:0}.panel-head{padding:17px;border-bottom:1px solid #3b4a3f}.panel-head strong{font-size:13px}.panel-head small{display:block;margin-top:5px;color:#9bad9e;font-size:11px}.panel-content{padding:16px}.draft-list{display:flex;flex-direction:column;gap:7px}.draft{display:flex;flex-direction:column;gap:5px;width:100%;padding:12px;border:1px solid #3c5540;border-radius:6px;background:#233028;color:#e9f3e7;text-align:left;font-size:12px}.draft.active{border-color:var(--lime);background:#354632}.draft small{color:#b1c6ad;font-size:10px}.row-buttons{display:flex;gap:7px;flex-wrap:wrap;padding:14px;border-top:1px solid var(--line)}.row-buttons .btn{font-size:10px;padding:9px}
.editor-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:flex;flex-direction:column;gap:7px;color:#a9bca8;font-size:11px;font-weight:750}.field.wide{grid-column:1/-1}.field input,.field select,.field textarea{min-height:43px;padding:11px;border:1px solid #4c614f;border-radius:6px;background:#202e24;color:#f2f6ed;outline:none;width:100%;font-size:12px}.field textarea{min-height:95px;resize:vertical;line-height:1.5}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--lime)}
.section-title{margin:27px 0 13px;font-size:15px;letter-spacing:-.02em}.requirements{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.requirement{display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid #3d5442;background:#24352a;border-radius:6px;padding:10px}.requirement span{font-size:11px;font-weight:850}.requirement small{display:block;color:#91a99b;font-size:9px;margin-top:5px}.requirement input{width:62px;border:1px solid #607357;border-radius:5px;padding:8px;background:#19281e;color:#fff}
.inspector{padding:19px}.inspector h3{font-size:15px;margin:8px 0}.inspector p{font-size:12px;line-height:1.6;color:#a7b9a6}.inspector dl{display:grid;grid-template-columns:1fr 1fr;gap:10px}.inspector dt{font-size:10px;color:#9caf9e}.inspector dd{font-size:14px;margin:5px 0 0;font-weight:800}.inspector .btn{width:100%;margin:7px 0}.status{font-size:11px;color:#c5e0b3;min-height:20px}.test-panel{background:#1c2a21;border:1px solid #4e654c;border-radius:8px;padding:14px;margin-top:12px}.test-steps{display:flex;flex-direction:column;gap:9px;margin-top:12px}.test-step{padding:11px;border:1px solid #465d48;border-radius:6px;background:#28372a;font-size:11px}.test-step.done{border-color:#92b781;color:#c9e6b7}.test-step.active{border-color:#c6d999}.test-step strong{display:block;font-size:10px;margin-bottom:5px;color:#f0f5e7}
.overlay{position:fixed;inset:0;background:#000b;display:grid;place-items:center;z-index:100;padding:20px}.overlay[hidden]{display:none}.dialog{background:#1a241d;border:1px solid #567255;border-radius:13px;max-width:650px;width:100%;max-height:85vh;overflow:auto;padding:24px}.dialog h2{margin:0 0 10px}.dialog p{color:#a5b9a5;font-size:13px;line-height:1.6}.dialog-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
@media(max-width:1150px){.editor-layout{grid-template-columns:220px minmax(0,1fr)}.editor-layout>.panel:last-child{grid-column:2}.hero{grid-template-columns:1fr 1fr}}
@media(max-width:780px){.top{padding:0 16px}.nav{gap:9px}.nav a{font-size:10px}.hero{grid-template-columns:1fr;padding:23px 0}.hero-art{min-height:220px}.tiles{grid-template-columns:1fr}.editor-layout{grid-template-columns:1fr}.editor-layout>.panel:last-child{grid-column:1}.editor-head{flex-direction:column}.editor-fields{grid-template-columns:1fr}.requirements{grid-template-columns:1fr}.container{padding:20px 13px}.editor-head h1{font-size:26px}}
