:root{--bg-panel: rgba(15, 23, 42, .92);--bg-panel-light: rgba(30, 41, 59, .95);--border-gold: #eab308;--border-subtle: rgba(148, 163, 184, .28);--accent-green: #22c55e;--accent-amber: #f59e0b;--text-main: #f8fafc;--text-muted: #94a3b8}*{box-sizing:border-box;margin:0;padding:0;-webkit-user-select:none;user-select:none}body,html{width:100%;height:100%;overflow:hidden;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background:#0f172a;color:var(--text-main)}#app{display:flex;flex-direction:column;width:100vw;height:100vh}.top-menubar{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(90deg,#0f172a,#1e293b);border-bottom:2px solid var(--border-gold);padding:6px 14px;gap:12px;z-index:30}.brand-logo{display:flex;align-items:center;gap:8px;font-weight:800;font-size:16px;color:#facc15;letter-spacing:.5px}.menu-actions{display:flex;flex-wrap:wrap;gap:6px}.menu-btn{background:#334155;color:#f8fafc;border:1px solid var(--border-subtle);padding:5px 10px;border-radius:6px;font-size:12.5px;font-weight:600;cursor:pointer;transition:all .15s}.menu-btn:hover{background:#475569;border-color:#facc15}.menu-btn.danger:hover{background:#991b1b;border-color:#f87171}.hud-strip{display:flex;align-items:center;justify-content:space-between;background:#0f172ae0;border-bottom:1px solid var(--border-subtle);padding:6px 16px;font-size:13px;z-index:25}.hud-stats{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.hud-pill{background:#1e293be6;padding:4px 10px;border-radius:6px;border:1px solid var(--border-subtle);font-weight:600}.speed-controls{display:flex;align-items:center;gap:4px}.spd-btn{background:#1e293b;color:#cbd5e1;border:1px solid var(--border-subtle);padding:4px 9px;border-radius:5px;cursor:pointer;font-size:12px;font-weight:700}.spd-btn.active{background:#16a34a;color:#fff;border-color:#4ade80}.workspace{position:relative;flex:1;display:flex;overflow:hidden}.left-toolbar{width:205px;background:var(--bg-panel);border-right:1px solid var(--border-subtle);padding:10px;display:flex;flex-direction:column;gap:6px;z-index:20;overflow-y:auto}.toolbar-title{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--text-muted);margin-bottom:2px;font-weight:700}.tool-btn{display:flex;align-items:center;gap:9px;width:100%;text-align:left;padding:8px 10px;background:#1e293b;color:#f1f5f9;border:1px solid var(--border-subtle);border-radius:7px;cursor:pointer;font-size:13px;font-weight:600;transition:all .15s}.tool-btn:hover{background:#334155;border-color:#94a3b8}.tool-btn.active{background:linear-gradient(135deg,#15803d,#166534);border-color:#4ade80;box-shadow:0 0 10px #4ade8040}.tool-icon{font-size:17px}.tool-submenu{position:absolute;left:215px;top:12px;width:440px;max-height:calc(100vh - 130px);background:var(--bg-panel-light);border:2px solid var(--border-gold);border-radius:10px;padding:12px;z-index:40;box-shadow:0 16px 40px #000000a6;overflow-y:auto}.hidden{display:none!important}.sub-header{display:flex;justify-content:space-between;align-items:center;font-weight:700;font-size:14px;color:#facc15;margin-bottom:10px;padding-bottom:6px;border-bottom:1px solid var(--border-subtle)}.sub-close{background:transparent;border:none;color:#cbd5e1;font-size:16px;cursor:pointer}.sub-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.sub-item{display:flex;align-items:center;gap:8px;background:#0f172a;border:1px solid var(--border-subtle);border-radius:7px;padding:8px;color:#f8fafc;text-align:left;cursor:pointer;transition:all .12s}.sub-item:hover{background:#1e293b;border-color:#facc15}.sub-item.in-season{border-color:#4ade808c}.sub-icon{font-size:22px}.sub-info{display:flex;flex-direction:column;gap:2px}.sub-info strong{font-size:12.5px}.sub-info small{font-size:11px;color:var(--text-muted)}.viewport-container{position:relative;flex:1;height:100%;overflow:hidden;cursor:crosshair}#iso-canvas{display:block;width:100%;height:100%}.viewport-overlay-bottom{position:absolute;left:14px;bottom:12px;display:flex;gap:10px;align-items:center;pointer-events:none}.active-tool-badge{background:#0f172ae6;border:1px solid #facc15;color:#facc15;padding:6px 12px;border-radius:6px;font-size:12.5px;font-weight:700}.controls-hint{background:#0f172acc;color:#cbd5e1;padding:6px 10px;border-radius:6px;font-size:11.5px}.right-sidebar{width:280px;background:var(--bg-panel);border-left:1px solid var(--border-subtle);padding:10px;display:flex;flex-direction:column;gap:10px;z-index:20;overflow-y:auto}.panel-card{background:#1e293b;border:1px solid var(--border-subtle);border-radius:8px;padding:9px}.panel-card h4{font-size:12px;text-transform:uppercase;color:#facc15;margin-bottom:7px;letter-spacing:.5px}#minimap-canvas{width:100%;height:155px;background:#0f172a;border:1px solid var(--border-subtle);border-radius:5px;cursor:pointer;image-rendering:pixelated}.minimap-Quickbtns{display:flex;gap:6px;margin-top:6px}.minimap-Quickbtns button{flex:1;font-size:11px;padding:4px;background:#334155;color:#fff;border:1px solid var(--border-subtle);border-radius:4px;cursor:pointer}.insp-row{display:flex;justify-content:space-between;font-size:12px;padding:3px 0;border-bottom:1px dashed rgba(148,163,184,.15)}.insp-crop-box{margin-top:6px;padding:6px;background:#0f172a99;border-radius:5px;font-size:12px;line-height:1.4}.forecast-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;text-align:center}.fc-day{background:#0f172a;padding:5px 2px;border-radius:5px;display:flex;flex-direction:column;gap:2px;font-size:11px}.news-ticker-list{display:flex;flex-direction:column;gap:5px;max-height:190px;overflow-y:auto;font-size:11.5px}.news-item{padding:5px 7px;border-radius:5px;background:#0f172a;border-left:3px solid #38bdf8;line-height:1.35}.news-item.good{border-left-color:#4ade80}.news-item.warn{border-left-color:#facc15}.news-item.danger{border-left-color:#ef4444;background:#7f1d1d59}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#020617c2;display:flex;align-items:center;justify-content:center;z-index:100;padding:20px}.modal-window{width:880px;max-width:95vw;max-height:86vh;background:#0f172a;border:2px solid var(--border-gold);border-radius:12px;display:flex;flex-direction:column;box-shadow:0 20px 60px #000c;overflow:hidden}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:12px 18px;background:#1e293b;border-bottom:1px solid var(--border-subtle)}.modal-header h3{color:#facc15;font-size:16px}.modal-body{padding:18px;overflow-y:auto;display:flex;flex-direction:column;gap:14px}.modal-subtitle{color:var(--text-muted);font-size:13.5px}.scenario-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.scenario-card{background:#1e293b;border:1px solid var(--border-subtle);border-radius:8px;padding:12px;display:flex;flex-direction:column;justify-content:space-between;gap:9px}.scenario-card.current{border-color:#4ade80}.sc-head{display:flex;align-items:center;gap:10px}.sc-icon{font-size:28px}.sc-meta{display:flex;flex-wrap:wrap;gap:8px;font-size:11.5px;color:#cbd5e1}.btn-primary{background:#16a34a;color:#fff;border:none;padding:8px 12px;border-radius:6px;font-weight:700;cursor:pointer}.btn-primary:hover{background:#15803d}.btn-sm{background:#2563eb;color:#fff;border:none;padding:5px 10px;border-radius:5px;font-size:12px;font-weight:600;cursor:pointer}.btn-sm.secondary{background:#475569}.market-summary{display:flex;justify-content:space-between;background:#1e293b;padding:10px 14px;border-radius:8px;font-size:13.5px}.contracts-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}.contract-card{background:#1e293b;border:1px solid #eab308;border-radius:7px;padding:10px;display:flex;flex-direction:column;gap:6px;font-size:12.5px}.sim-table{width:100%;border-collapse:collapse;font-size:13px}.sim-table th,.sim-table td{padding:8px 10px;border-bottom:1px solid var(--border-subtle);text-align:left}.bank-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.bank-box{background:#1e293b;padding:14px;border-radius:8px;display:flex;flex-direction:column;gap:8px}.ledger-row{display:flex;justify-content:space-between;font-size:13.5px}.loan-actions{display:flex;gap:10px;margin-top:10px}.fair-banner{background:linear-gradient(135deg,#1e3a8a,#1e293b);padding:14px;border-radius:8px;border:1px solid #60a5fa}.fair-result{background:#14532d;border:1px solid #4ade80;padding:12px;border-radius:8px}
