*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--font-primary);background:var(--bg-primary);color:var(--text-primary);line-height:1.5;overflow:hidden;height:100vh;width:100vw;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{height:100vh;width:100vw;overflow:hidden}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.3}a{color:var(--accent);text-decoration:none;transition:color .2s ease}a:hover{color:var(--accent-hover)}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit;font-size:inherit}button:disabled{opacity:.5;cursor:not-allowed}input,textarea,select{font-family:inherit;font-size:inherit;background:var(--input-bg);border:1px solid var(--border-color);border-radius:0;color:var(--text-primary);padding:8px 12px;outline:none;transition:border-color .2s ease,box-shadow .2s ease}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 2px #2db84d33}input::placeholder,textarea::placeholder{color:var(--text-muted)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fade-in{animation:fadeIn .3s ease}.slide-up{animation:slideUp .3s ease}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.w-full{width:100%}.h-full{height:100%}.overflow-hidden{overflow:hidden}.relative{position:relative}.absolute{position:absolute}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.avatar{width:40px;height:40px;border-radius:0;clip-path:var(--octagon-clip);object-fit:cover;background:var(--bg-tertiary);display:inline-flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;color:var(--text-primary);flex-shrink:0}.avatar-lg{width:80px;height:80px;font-size:28px}.avatar-md{width:56px;height:56px;font-size:20px}.avatar-sm{width:32px;height:32px;font-size:12px}.status-dot{width:12px;height:12px;border-radius:50%;border:2px solid var(--bg-primary);position:absolute;bottom:0;right:0}.status-dot.online{background:var(--success)}.status-dot.offline{background:var(--text-muted)}.status-dot.busy{background:var(--danger)}.glass{background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow)}.spinner{width:24px;height:24px;border:2px solid var(--border-color);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.page-with-footer{display:flex;flex-direction:column;height:100vh;overflow:hidden}.page-with-footer>.main{flex:1;min-height:0}@media (max-width: 768px){html{font-size:14px}}@media (max-width: 480px){html{font-size:13px}}[data-theme=dark]{--bg-primary: #000000;--bg-secondary: #0a0d11;--bg-tertiary: #14191f;--bg-glass: rgba(30, 36, 44, .65);--bg-glass-hover: rgba(40, 48, 58, .75);--bg-hover: #252d36;--bg-active: #2d3742;--border-color: rgba(255, 255, 255, .08);--border-strong: rgba(255, 255, 255, .15);--text-primary: #f2f5f8;--text-secondary: #aeb8c4;--text-muted: #727f8d;--accent: #2db84d;--accent-hover: #34d05f;--accent-text: #ffffff;--danger: #e3422d;--danger-bg: rgba(227, 66, 45, .12);--warning: #e8a317;--info: #3b9eff;--shadow: 0 4px 24px rgba(0, 0, 0, .55);--shadow-glass: 0 8px 32px rgba(0, 0, 0, .35);--blur: 16px;--bg-overlay: rgba(0, 0, 0, .6);--success: #2db84d;--glass-bg: rgba(30, 36, 44, .65);--glass-border: rgba(255, 255, 255, .08);--glass-shadow: 0 8px 32px rgba(0, 0, 0, .35);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 4px 12px rgba(0, 0, 0, .45);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .55);--sidebar-width: 280px;--topbar-height: 56px;--input-bg: #14191f;--scrollbar-thumb: rgba(255, 255, 255, .15);--scrollbar-track: transparent;--status-online: #2db84d;--status-offline: #727f8d;--status-busy: #e3422d;--status-away: #e8a317;--octagon-clip: polygon( 30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30% );--font-primary: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-secondary: "Manrope", -apple-system, BlinkMacSystemFont, sans-serif}[data-theme=light]{--bg-primary: #f5f7fa;--bg-secondary: #ffffff;--bg-tertiary: #eef1f5;--bg-glass: rgba(255, 255, 255, .72);--bg-glass-hover: rgba(255, 255, 255, .85);--bg-hover: #e8edf2;--bg-active: #dde4ec;--border-color: rgba(0, 0, 0, .08);--border-strong: rgba(0, 0, 0, .15);--text-primary: #1a1d21;--text-secondary: #5a6573;--text-muted: #939eab;--accent: #1e9e3e;--accent-hover: #25b350;--accent-text: #ffffff;--danger: #d32f2f;--danger-bg: rgba(211, 47, 47, .08);--warning: #f57c00;--info: #1976d2;--shadow: 0 4px 24px rgba(0, 0, 0, .1);--shadow-glass: 0 8px 32px rgba(0, 0, 0, .08);--blur: 16px;--bg-overlay: rgba(0, 0, 0, .4);--success: #1e9e3e;--glass-bg: rgba(255, 255, 255, .72);--glass-border: rgba(0, 0, 0, .08);--glass-shadow: 0 8px 32px rgba(0, 0, 0, .08);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 12px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .1);--sidebar-width: 280px;--topbar-height: 56px;--input-bg: #eef1f5;--scrollbar-thumb: rgba(0, 0, 0, .2);--scrollbar-track: transparent;--status-online: #1e9e3e;--status-offline: #939eab;--status-busy: #d32f2f;--status-away: #f57c00;--octagon-clip: polygon( 30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30% );--font-primary: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-secondary: "Manrope", -apple-system, BlinkMacSystemFont, sans-serif}[data-theme=russian]{--bg-primary: #0a0c10;--bg-secondary: #141821;--bg-tertiary: #1c2230;--bg-glass: rgba(28, 34, 48, .72);--bg-glass-hover: rgba(38, 46, 64, .82);--bg-hover: #283042;--bg-active: #323c52;--border-color: rgba(255, 255, 255, .08);--border-strong: rgba(255, 215, 0, .3);--text-primary: #f4f0e8;--text-secondary: #b0b8c8;--text-muted: #727c90;--accent: #c9a227;--accent-hover: #e0b830;--accent-text: #1a1d21;--danger: #c62828;--danger-bg: rgba(198, 40, 40, .15);--warning: #ffb300;--info: #1565c0;--shadow: 0 4px 24px rgba(0, 0, 0, .5);--shadow-glass: 0 8px 32px rgba(0, 0, 0, .45);--blur: 18px;--russian-white: #ffffff;--russian-blue: #0039a6;--russian-red: #d52b1e;--gold: #d4af37;--silver: #c0c0c0;--platinum: #e5e4e2;--bg-overlay: rgba(0, 0, 0, .6);--success: #c9a227;--glass-bg: rgba(28, 34, 48, .72);--glass-border: rgba(255, 255, 255, .08);--glass-shadow: 0 8px 32px rgba(0, 0, 0, .45);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 4px 12px rgba(0, 0, 0, .45);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .5);--sidebar-width: 280px;--topbar-height: 56px;--input-bg: #1c2230;--scrollbar-thumb: rgba(255, 255, 255, .15);--scrollbar-track: transparent;--status-online: #c9a227;--status-offline: #727c90;--status-busy: #c62828;--status-away: #ffb300;--octagon-clip: polygon( 30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30% );--font-primary: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-secondary: "Manrope", -apple-system, BlinkMacSystemFont, sans-serif}[data-theme=russian] body{background:linear-gradient(45deg,#ffffff38,#0039a661,#d52b1e6b),var(--bg-primary)}.topbar{display:flex;align-items:center;height:56px;flex-shrink:0;padding:0 16px;background:var(--bg-glass);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur));border-bottom:1px solid var(--border-color);gap:12px;position:relative;z-index:100}.topbar__title{flex:1;text-align:center;font-size:16px;font-weight:600;color:var(--text-primary);cursor:pointer}.mascot{width:36px;height:36px;clip-path:var(--octagon-clip);background:linear-gradient(135deg,var(--accent),var(--accent-hover));display:flex;align-items:center;justify-content:center;font-size:18px;cursor:pointer}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:600;cursor:pointer;transition:all .15s;white-space:nowrap}.btn--primary{background:var(--accent);color:var(--accent-text)}.btn--primary:hover{background:var(--accent-hover)}.btn--secondary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-strong)}.btn--secondary:hover{background:var(--bg-hover)}.btn--tertiary{background:transparent;color:var(--text-secondary)}.btn--tertiary:hover{color:var(--text-primary);background:var(--bg-hover)}.btn--danger{background:var(--danger);color:#fff}.btn--danger:hover{opacity:.85}.btn--sm{padding:6px 14px;font-size:13px}.btn--lg{padding:14px 28px;font-size:16px}.btn--block{width:100%}.btn--icon{padding:10px}.form-group{margin-bottom:18px}.form-label{display:block;margin-bottom:6px;font-size:13px;font-weight:600;color:var(--text-secondary)}.form-input,.form-select,.form-textarea{width:100%;padding:10px 14px;background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);font-size:14px;outline:none;transition:border-color .15s}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--accent)}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-muted)}.form-textarea{resize:vertical;min-height:80px}.form-hint{font-size:12px;color:var(--text-muted);margin-top:4px}.form-checkbox{display:flex;align-items:center;gap:8px;cursor:pointer}.form-checkbox input{width:16px;height:16px;accent-color:var(--accent)}.card{background:var(--bg-glass);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur));border:1px solid var(--border-color);box-shadow:var(--shadow-glass);padding:20px}.card__title{font-size:16px;font-weight:700;color:var(--text-primary);margin-bottom:8px}.card__body{color:var(--text-secondary);font-size:14px;line-height:1.6}.auth-container{display:flex;justify-content:center;flex:1;min-height:0;padding:32px 24px;overflow-y:auto}.auth-card{margin:auto;width:100%;max-width:420px;background:var(--bg-glass);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur));border:1px solid var(--border-color);box-shadow:var(--shadow-glass);padding:32px}.auth-title{font-size:24px;font-weight:800;color:var(--text-primary);text-align:center;margin-bottom:8px}.auth-subtitle{font-size:14px;color:var(--text-secondary);text-align:center;margin-bottom:24px}.auth-oauth{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.auth-oauth-btn{display:flex;align-items:center;justify-content:center;gap:10px;padding:12px;background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);font-size:14px;font-weight:600;cursor:pointer;transition:background .15s}.auth-oauth-btn:hover{background:var(--bg-hover)}.auth-oauth-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:20px}.auth-oauth-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;aspect-ratio:1 / 1;background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);font-size:12px;font-weight:600;cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;position:relative;z-index:1}.auth-oauth-tile__icon{font-size:24px;font-weight:800;line-height:1}.auth-oauth-tile:hover{transform:scale(1.5);border-color:var(--accent);box-shadow:0 8px 24px #00000073;z-index:10}.auth-oauth-tile:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.auth-divider{display:flex;align-items:center;gap:12px;margin:16px 0;color:var(--text-muted);font-size:12px}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--border-color)}.divider{height:1px;background:var(--border-color);margin:16px 0}.avatar--xs{width:28px;height:28px;font-size:11px}.avatar--sm{width:36px;height:36px;font-size:14px}.avatar--md{width:48px;height:48px;font-size:18px}.avatar--lg{width:72px;height:72px;font-size:28px}.avatar--xl{width:120px;height:120px;font-size:48px}.avatar__inner{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.avatar__inner img{width:100%;height:100%;object-fit:cover;clip-path:var(--octagon-clip)}.avatar--bordered{padding:2px;background:var(--border-color)}.avatar--bordered .avatar__inner{padding:2px}.flex-1{flex:1}.text-center{text-align:center}.text-sm{font-size:13px}.text-xs{font-size:11px}.text-muted{color:var(--text-muted)}.text-secondary{color:var(--text-secondary)}.text-accent{color:var(--accent)}.text-danger{color:var(--danger)}.font-bold{font-weight:700}.font-semibold{font-weight:600}.mt-2{margin-top:8px}.mt-4{margin-top:16px}.mt-6{margin-top:24px}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:12px}.mb-4{margin-bottom:16px}.mb-6{margin-bottom:24px}.p-4{padding:16px}.p-6{padding:24px}.cursor-pointer{cursor:pointer}.overflow-y-auto{overflow-y:auto}.hidden{display:none}.topbar{display:flex;align-items:center;height:56px;padding:0 16px;background:var(--bg-glass);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur));border-bottom:1px solid var(--border-color);gap:12px;position:relative;z-index:100;flex-shrink:0}.topbar__logo{display:flex;align-items:center;gap:8px;font-weight:700;font-size:18px;color:var(--text-primary);cursor:pointer;position:relative}.topbar__logo-icon{width:32px;height:32px;clip-path:var(--octagon-clip);background:var(--accent);display:flex;align-items:center;justify-content:center;color:var(--accent-text);font-size:16px;font-weight:900}.topbar__dropdown{position:absolute;top:100%;left:0;min-width:240px;background:var(--bg-glass);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur));border:1px solid var(--border-strong);border-radius:0;box-shadow:var(--shadow-glass);padding:8px 0;display:none;z-index:200}.topbar__logo:hover .topbar__dropdown,.topbar__dropdown:hover{display:block}.topbar__dropdown-item{display:flex;align-items:center;gap:10px;padding:10px 16px;color:var(--text-secondary);cursor:pointer;transition:background .15s}.topbar__dropdown-item:hover{background:var(--bg-hover);color:var(--text-primary)}.topbar__dropdown-divider{height:1px;background:var(--border-color);margin:4px 0}.topbar__title{flex:1;text-align:center;font-size:16px;font-weight:600;color:var(--text-primary);cursor:pointer;position:relative}.topbar__title:hover{color:var(--accent)}.topbar__actions{display:flex;align-items:center;gap:8px;position:relative}.topbar__actions-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);cursor:pointer;transition:color .15s,background .15s}.topbar__actions-btn:hover{color:var(--text-primary);background:var(--bg-hover)}.topbar__right{display:flex;align-items:center;gap:12px}.topbar__lang,.topbar__theme{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-secondary);cursor:pointer;padding:6px 10px;transition:background .15s}.topbar__lang:hover,.topbar__theme:hover{background:var(--bg-hover);color:var(--text-primary)}.lang-switcher__code{display:none}.theme-switcher__btn{padding:6px 8px;font-size:14px}.topbar__menu-btn{width:36px;height:36px;padding:0;border:none;background:transparent;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);cursor:pointer;transition:color .15s,background .15s;font-size:18px;line-height:1}.topbar__menu-btn:hover,.topbar__menu-btn--open{color:var(--text-primary);background:var(--bg-hover)}.right-menu{position:fixed;top:56px;right:0;width:280px;max-width:100vw;max-height:calc(100vh - 56px);overflow-y:auto;background:var(--bg-glass);backdrop-filter:blur(var(--blur));-webkit-backdrop-filter:blur(var(--blur));border-left:1px solid var(--border-strong);border-bottom:1px solid var(--border-strong);box-shadow:var(--shadow-glass);z-index:300;display:none;flex-direction:column;padding:8px 0}.right-menu--open{display:flex}.right-menu__section-label{padding:10px 16px 4px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--text-muted)}.right-menu__item{display:flex;align-items:center;gap:10px;padding:10px 16px;color:var(--text-secondary);cursor:pointer;transition:background .15s,color .15s;font-size:14px;user-select:none}.right-menu__item:hover{background:var(--bg-hover);color:var(--text-primary)}.right-menu__item-icon{width:18px;text-align:center;flex-shrink:0}.right-menu__item-label{flex:1}.right-menu__item-chevron{font-size:11px;color:var(--text-muted);transition:transform .15s}.right-menu__item--active{color:var(--accent)}.right-menu__divider{height:1px;background:var(--border-color);margin:4px 0}.right-menu__submenu{display:none;flex-direction:column;background:var(--bg-secondary)}.right-menu__submenu--open{display:flex}.right-menu__subitem{display:flex;align-items:center;gap:10px;padding:9px 16px 9px 40px;color:var(--text-secondary);cursor:pointer;font-size:13px;transition:background .15s,color .15s}.right-menu__subitem:hover{background:var(--bg-hover);color:var(--text-primary)}.right-menu__subitem--active{color:var(--accent);font-weight:600}.right-menu__subitem-check{margin-left:auto;color:var(--accent);font-size:13px}.right-menu__auth-guest{display:flex;flex-direction:column;gap:8px;padding:12px 16px}.right-menu__auth-guest .btn{width:100%}.balloo-footer{flex-shrink:0;height:36px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;background:var(--bg-secondary);border-top:1px solid var(--border-color);font-size:12px;color:var(--text-muted);gap:12px;z-index:50}.balloo-footer__left{display:flex;align-items:center;gap:12px;min-width:0}.balloo-footer__copyright{cursor:pointer;transition:color .15s;white-space:nowrap}.balloo-footer__copyright:hover{color:var(--text-primary)}.balloo-footer__links{display:flex;align-items:center;gap:14px}.balloo-footer__link{cursor:pointer;transition:color .15s;white-space:nowrap;color:var(--text-muted);text-decoration:none}.balloo-footer__link:hover{color:var(--accent)}@media (max-width: 600px){.balloo-footer{height:auto;flex-direction:column;gap:4px;padding:6px 12px}.topbar{padding:0 10px;gap:8px}.topbar__logo>span{display:none}.topbar__title{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.topbar__right{gap:6px}.lang-switcher__name{display:none}.lang-switcher__code{display:inline}.theme-switcher__btn{padding:4px 5px;font-size:13px}}.topbar__dropdown-item--node{position:relative}.topbar__dropdown-item--node:after{content:"⛓";margin-left:auto;font-size:13px;color:var(--text-muted);opacity:.8}.topbar__dropdown-item--node--current:after{content:"●";color:var(--accent);font-size:10px}.topbar__dropdown-item--node--current{color:var(--accent);font-weight:600}
