/* ===== SPLIT LAYOUT ===== */ .layout { display: flex; height: calc(100vh - 100px); width: 100%; margin: 0; padding: 0; } /* панели */ .panel { height: 100%; overflow-y: auto; overflow-x: hidden; } /* LEFT */ .left { flex: 1 1 auto; min-width: 300px; padding: 10px; } /* RIGHT */ .right { flex: 0 0 40%; min-width: 0; background: black; position: relative; overflow: hidden; } .right.hidden { flex: 0 0 0 !important; width: 0 !important; min-width: 0 !important; opacity: 0; pointer-events: none; } /* ===== RESIZER ===== */ .resizer { width: 8px; min-width: 8px; cursor: col-resize; background: #00ff88; opacity: 0.3; flex-shrink: 0; z-index: 10; } .resizer:hover { opacity: 0.8; } .resizer.hidden { width: 0 !important; min-width: 0 !important; opacity: 0; pointer-events: none; } /* ===== GRID ===== */ .grid { display: grid; grid-template-columns: 1fr; gap: 12px; align-items: stretch; } @media (min-width: 900px) { .grid { grid-template-columns: 1fr 1fr; } .wide { grid-column: span 2; } }