*{margin:0;padding:0;box-sizing:border-box}body{background:#0a0a1a;color:#e0e0e0;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;min-height:100vh;overflow:hidden}.landing{width:100vw;height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#0d1b2a,#0a0a1a 70%);position:relative}.landing-header{position:absolute;top:20px;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:0 30px;z-index:1}.landing-logo{cursor:pointer}.landing-center{display:flex;flex-direction:column;align-items:center;z-index:1;gap:20px}.landing-title{font-size:4rem;font-weight:700;background:linear-gradient(135deg,#00d5ff,#a37fff,#f0f);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;cursor:pointer;transition:transform .3s ease,filter .3s ease;text-align:center;letter-spacing:.05em}.landing-title:hover{transform:scale(1.05);filter:brightness(1.2)}.landing-subtitle{font-size:1.2rem;color:#89a;letter-spacing:.1em;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.6}50%{opacity:1}}.lang-switcher{display:flex;align-items:center;gap:8px}.lang-btn{background:none;border:none;color:#678;font-size:.9rem;cursor:pointer;padding:4px 8px;border-radius:4px;transition:color .3s,background .3s}.lang-btn:hover{color:#00d5ff}.lang-btn.active{color:#00d5ff;background:#00d5ff1a}.lang-divider{color:#345}.header-lang .lang-switcher{gap:2px}.header-lang .lang-btn{font-size:.75rem;text-transform:lowercase;padding:2px 5px}.header-lang .lang-divider{font-size:.7rem}.main-container{display:flex;flex-direction:column;height:100vh;max-width:100vw;background:#000;overflow:hidden}.main-header{position:fixed;top:0;left:0;right:0;height:74px;display:flex;align-items:center;padding:0 20px;border-bottom:1px solid #333;background:#000;z-index:100}.main-logo{display:flex;align-items:center;gap:12px;font-size:24px;font-weight:700;color:#fff;flex-shrink:0}.logo-text-gradient{background:linear-gradient(135deg,#00d5ff,#a37fff,#f0f);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.header-lang{margin-left:20px;flex-shrink:0}.header-buttons{display:flex;align-items:center;gap:10px;margin-left:auto}.header-btn{padding:6px 14px;background:#111;color:#fff;text-decoration:none;border-radius:4px;font-size:13px;cursor:pointer;transition:background .3s;border:none}.header-btn:hover{background:#333}.telegram-btn{background:transparent;padding:2px;border-radius:50%;width:26px;height:26px;display:flex;align-items:center;justify-content:center;text-decoration:none;color:#fff;transition:transform .3s}.telegram-btn:hover{transform:scale(1.1)}.main-body{flex:1;display:grid;grid-template-columns:190px 1fr;grid-template-rows:min-content 1fr;gap:6px 10px;padding:5px 15px 0;margin-top:74px;min-height:0;overflow-y:auto}.main-sidebar{grid-column:1;grid-row:1;display:flex;flex-direction:column;gap:2px;padding-top:5px;overflow-y:auto;min-height:0}.menu-item{display:flex;align-items:center;justify-content:flex-start;padding:5px 8px 5px 10px;background:#111;color:#fff;text-decoration:none;border-radius:4px;cursor:pointer;transition:background .3s;font-size:11px;text-align:left;border:none;width:100%}.menu-item .menu-label{flex:1;min-width:0}.menu-item:hover,.menu-item.active{background:#333}.menu-item.has-children{justify-content:flex-start}.menu-item .arrow{font-size:10px;transition:transform .2s;margin-left:6px;flex-shrink:0}.menu-item .arrow.open{transform:rotate(90deg)}.sub-menu.level-1,.sub-menu.level-2{display:flex;flex-direction:column;gap:2px;padding-left:8px;margin-top:2px}.menu-item.sub-item{font-size:10px;padding:4px 6px 4px 10px;background:#0a0a0a;border-left:2px solid #333;border-radius:0 4px 4px 0}.menu-item.sub-item:hover,.menu-item.sub-item.active{background:#222;border-left-color:#00d5ff}.menu-item.sub-sub-item{font-size:9px;padding:3px 6px 3px 10px;background:#080808;border-left:2px solid #222;border-radius:0 4px 4px 0}.menu-item.sub-sub-item:hover,.menu-item.sub-sub-item.active{background:#1a1a1a;border-left-color:#00d5ff}.sub-menu.level-3{display:flex;flex-direction:column;gap:2px;padding-left:8px;margin-top:2px}.menu-item.sub-sub-sub-item{font-size:8.5px;padding:3px 6px 3px 10px;background:#060606;border-left:2px solid #1a1a1a;border-radius:0 4px 4px 0}.menu-item.sub-sub-sub-item:hover,.menu-item.sub-sub-sub-item.active{background:#161616;border-left-color:#00d5ff}.diagram-area{grid-column:2;grid-row:1;display:flex;justify-content:center;align-items:flex-start;position:relative}.technopolis-map{position:relative;width:560px;height:500px}.map-svg{position:absolute;top:0;left:0;z-index:1;pointer-events:none}.circle-label{fill:#777;font-size:12px;font-weight:700;letter-spacing:5px}.center-logo{position:absolute;top:250px;left:280px;transform:translate(-50%,-50%);width:160px;height:160px;animation:rotate 20s linear infinite;z-index:10;pointer-events:none}@keyframes rotate{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.map-element{position:absolute;background:#222;border:2px solid rgba(0,191,255,.35);border-radius:8px;padding:4px;cursor:pointer;transition:all .3s;font-size:9px;text-align:center;color:#fff;-webkit-user-select:none;user-select:none;display:flex;align-items:center;justify-content:center;line-height:1.2;z-index:5}.map-element:hover{background:#333;border-color:#00bfff8c;transform:scale(1.08)}.map-element.active{background:#444;border-color:#00bfffb3}.content-area{grid-column:2;grid-row:2;background:#111;border:1px solid #333;border-radius:8px;display:flex;flex-direction:column;min-height:0;overflow:hidden;margin-bottom:10px}.content-title{padding:10px 15px 6px;color:#fff;border-bottom:1px solid #333;font-size:14px;flex-shrink:0}.content-body{flex:1;overflow-y:auto;padding:8px 15px 12px}.content-body p,.content-body ul,.content-body ol{margin-bottom:8px;line-height:1.6;font-size:12px}.content-body ul,.content-body ol{padding-left:20px}.content-body li{margin-bottom:4px;line-height:1.5}.content-body li>ul,.content-body li>ol{margin-top:4px;margin-bottom:4px;padding-left:16px}.content-body ol{list-style-type:decimal}.content-body ul{list-style-type:disc}.content-body table{width:100%;border-collapse:collapse;margin:8px 0;font-size:11px}.content-body th,.content-body td{border:1px solid #444;padding:4px 8px;text-align:left}.content-body th{background:#00d5ff26;font-weight:600}.content-body strong{color:#7aa5da}.content-body a{color:#00d5ff;text-decoration:none}.content-body a:hover{text-decoration:underline}.content-area h3{margin-bottom:8px;color:#fff;border-bottom:1px solid #333;padding-bottom:6px;font-size:14px}.content-area p,.content-area ul,.content-area ol{margin-bottom:8px;line-height:1.4;font-size:12px}.content-area ul,.content-area ol{padding-left:20px}.default-content{text-align:center;color:#666;padding-top:30px}.chat-input-panel{grid-column:1;grid-row:2;display:flex;flex-direction:column;gap:6px;background:#111;border:1px solid #333;border-radius:8px;padding:10px;margin-bottom:10px}.chat-label{font-size:11px;font-weight:600;background:linear-gradient(135deg,#00d5ff,#a37fff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:.03em}.chat-label-short{display:none}.chat-label-full{display:inline}.chat-textarea{flex:1;min-height:60px;padding:8px 10px;border:1px solid #333;border-radius:6px;background:#0a0a1a;color:#e0e0e0;font-size:11px;font-family:inherit;line-height:1.5;outline:none;resize:none;transition:border-color .3s}.chat-textarea:focus{border-color:#00d5ff}.chat-textarea::placeholder{color:#555;font-size:10px}.chat-send-btn{padding:6px 0;border:none;border-radius:6px;background:linear-gradient(135deg,#00d5ff,#a37fff);color:#fff;font-size:12px;font-weight:600;cursor:pointer;transition:opacity .2s;flex-shrink:0}.chat-send-btn:disabled{opacity:.4;cursor:not-allowed}.chat-send-btn:not(:disabled):hover{opacity:.85}.chat-question{background:#00d5ff14;border-left:3px solid #00d5ff;padding:8px 12px;margin-bottom:12px;border-radius:0 6px 6px 0;font-size:12px;line-height:1.5}.chat-thinking{color:#888;font-style:italic;animation:pulse 1.5s ease-in-out infinite}.hamburger{display:none;flex-direction:column;gap:4px;background:none;border:none;cursor:pointer;padding:6px;flex-shrink:0}.hamburger span{display:block;width:22px;height:2px;background:#e0e0e0;border-radius:1px;transition:transform .3s}.sidebar-overlay{display:none}@media(max-width:1024px){.main-body{grid-template-columns:160px 1fr}.chat-textarea{font-size:10px}}@media(max-width:768px){.hamburger{display:flex}.main-header{height:52px;padding:6px 12px;gap:8px}.main-logo{gap:8px;font-size:18px}.main-logo svg{width:40px!important;height:40px!important}.header-buttons{margin-left:auto;gap:8px;justify-content:flex-end;flex-shrink:0}.header-btn{font-size:11px;padding:4px 8px}.main-sidebar{position:fixed;top:0;left:-260px;width:240px;height:100vh;z-index:200;background:#0a0a1a;border-right:1px solid #333;padding:60px 10px 10px;transition:left .3s ease;overflow-y:auto}.main-sidebar.open{left:0}.sidebar-overlay{display:block;position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:199}.main-body{display:flex;flex-direction:column;padding:5px 8px 0;margin-top:52px;min-height:0;overflow-y:auto}.chat-input-panel{flex:0 0 auto;flex-direction:row;align-items:stretch;gap:8px;margin:4px 0;max-height:60px}.chat-label{display:flex;align-items:center;font-size:12px;font-weight:700;white-space:nowrap;flex-shrink:0}.chat-label-short{display:inline}.chat-label-full{display:none}.chat-textarea{flex:1;min-height:36px;max-height:50px;font-size:12px;overflow-y:auto}.diagram-area{flex-shrink:0}.content-area{flex:1 0 250px}}@media(max-width:480px){.landing-title{font-size:2rem}.landing-subtitle{font-size:.9rem}.main-header{padding:4px 8px}.main-logo,.logo-text-gradient{font-size:16px}.header-buttons{gap:4px}.header-btn{font-size:10px;padding:3px 6px}.telegram-btn svg{width:22px!important;height:22px!important}.map-element{font-size:7px;padding:2px;border-width:1px}.content-body p,.content-body ul,.content-body ol{font-size:11px}.content-title{font-size:12px;padding:8px 10px 4px}.menu-item{font-size:10px}}
