@import "https://fonts.googleapis.com/css2?family=-apple-system,BlinkMacSystemFont,SF+Pro+Display:wght@300;400;500;600;700&display=swap";body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.login-container{background:#000;justify-content:center;align-items:center;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,system-ui,sans-serif;display:flex}.login-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);text-align:center;background:#1c1c1ecc;border:1px solid #ffffff1a;border-radius:20px;width:100%;max-width:400px;padding:48px;box-shadow:0 25px 50px #00000080}.login-card h1{color:#fff;letter-spacing:-.5px;margin-bottom:8px;font-size:28px;font-weight:600}.login-card p{color:#fff9;margin-bottom:32px;font-size:15px;font-weight:400}.login-card form{flex-direction:column;gap:16px;display:flex}.login-card input{color:#fff;background:#3a3a3ccc;border:1px solid #ffffff1a;border-radius:12px;padding:16px 20px;font-family:inherit;font-size:16px;transition:all .2s}.login-card input::placeholder{color:#fff6}.login-card input:focus{background:#3a3a3c;border-color:#007aff;outline:none;box-shadow:0 0 0 3px #007aff33}.login-card button{color:#fff;cursor:pointer;background:#007aff;border:none;border-radius:12px;margin-top:8px;padding:16px 24px;font-family:inherit;font-size:16px;font-weight:600;transition:all .2s}.login-card button:hover:not(:disabled){background:#0056cc;transform:translateY(-1px);box-shadow:0 8px 25px #007aff4d}.login-card button:active{transform:translateY(0)}.login-card button:disabled{opacity:.5;cursor:not-allowed;transform:none}.error{color:#ff3b30;background:#ff3b301a;border:1px solid #ff3b304d;border-radius:10px;padding:12px 16px;font-size:14px;font-weight:500}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.offline-notification{z-index:10000;animation:.3s ease-out slideIn;position:fixed;top:20px;right:20px}@keyframes slideIn{0%{opacity:0;transform:translate(400px)}to{opacity:1;transform:translate(0)}}.offline-notification-content{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;align-items:center;gap:12px;padding:16px 24px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;display:flex;box-shadow:0 8px 32px #00000026}.offline-notification.offline .offline-notification-content{color:#fff;background:linear-gradient(135deg,#ff6b6b 0%,#ee5a6f 100%)}.offline-notification.online .offline-notification-content{color:#fff;background:linear-gradient(135deg,#51cf66 0%,#37b24d 100%)}.offline-icon{font-size:24px;font-weight:700}.offline-message{font-size:15px;font-weight:600}.offline-submessage{opacity:.9;margin-left:8px;font-size:13px}@media (max-width:768px){.offline-notification{top:10px;left:10px;right:10px}.offline-notification-content{padding:12px 16px;font-size:14px}}.skeleton{background:linear-gradient(90deg,#3a3a3ccc 0%,#4e4e50cc 20%,#3a3a3ccc 40% 100%) 0 0/200% 100%;animation:1.5s ease-in-out infinite skeleton-loading;display:inline-block}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.mb-1{margin-bottom:4px}.mb-2{margin-bottom:8px}.mt-1{margin-top:4px}.mt-2{margin-top:8px}.ml-2{margin-left:8px}.ml-10{margin-left:40px}.ml-auto{margin-left:auto}.dashboard-stat-skeleton{background:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 8px #00000014}.table-skeleton{background:#fff;border-radius:8px;width:100%;overflow:hidden}.table-skeleton-header{background:#f8f9fa;border-bottom:1px solid #e9ecef;gap:12px;padding:16px;display:flex}.table-skeleton-header-cell{flex:1}.table-skeleton-row{border-bottom:1px solid #f1f3f5;gap:12px;padding:16px;display:flex}.table-skeleton-cell{flex:1}.telegram-projects-skeleton{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;padding:20px;display:grid}.telegram-project-card-skeleton{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #00000014}.telegram-project-header-skeleton{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.telegram-project-stats-skeleton{gap:16px;margin-top:16px;display:flex}.telegram-messages-skeleton{flex-direction:column;gap:16px;padding:20px;display:flex}.telegram-message-skeleton{align-items:flex-start;gap:12px;display:flex}.telegram-message-content-skeleton{flex-direction:column;flex:1;display:flex}.task-hierarchy-skeleton{background:#2d2d2df2;border-radius:8px;width:100%;overflow:hidden}.task-row-skeleton{border-bottom:1px solid #ffffff1a;align-items:center;gap:12px;padding:12px 16px;display:flex}.task-expand-skeleton{flex-shrink:0}.task-content-skeleton{flex-direction:column;flex:1;display:flex}.task-subtasks-skeleton{background:#23232380}.task-subtask-skeleton{padding-left:48px}.media-gallery-skeleton{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;padding:20px;display:grid}.media-item-skeleton{aspect-ratio:1;position:relative}@media (prefers-color-scheme:dark){.skeleton{background:linear-gradient(90deg,#2a2a2a 0%,#3a3a3a 20%,#2a2a2a 40% 100%) 0 0/200% 100%}.dashboard-stat-skeleton,.table-skeleton,.telegram-project-card-skeleton,.task-hierarchy-skeleton{background:#1a1a1a}.table-skeleton-header{background:#2a2a2a;border-bottom-color:#3a3a3a}.table-skeleton-row{border-bottom-color:#2a2a2a}}@media (max-width:768px){.telegram-projects-skeleton{grid-template-columns:1fr;padding:12px}.media-gallery-skeleton{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;padding:12px}.task-row-skeleton{padding:8px 12px}}.main-layout{background:#2d2d2d;grid-template:"header header"48px"sidebar content"1fr/240px 1fr;height:100vh;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,system-ui,sans-serif;transition:grid-template-columns .25s;display:grid}.main-layout.sidebar-collapsed{grid-template-columns:60px 1fr}.main-layout.sidebar-collapsed .sidebar{width:60px}.main-layout.sidebar-collapsed .tab-label,.main-layout.sidebar-collapsed .soon-badge{opacity:0;visibility:hidden}.top-bar{-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);z-index:100;background:#2d2d2df2;border-bottom:.5px solid #ffffff1a;grid-area:header;justify-content:space-between;align-items:center;padding:0 20px;display:flex}.top-bar-left{align-items:center;gap:16px;display:flex}.sidebar-toggle{color:#fffc;cursor:pointer;background:#3a3a3ccc;border:none;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;transition:all .15s;display:flex}.sidebar-toggle:hover{color:#fff;background:#48484acc}.app-logo{color:#fff;align-items:center;gap:8px;font-size:17px;font-weight:600;display:flex}.app-logo-icon{object-fit:contain;width:24px;height:24px}.top-bar-center{color:#fffffff2;align-items:center;gap:12px;font-size:16px;font-weight:500;display:flex;position:absolute;left:50%;transform:translate(-50%)}.current-tab-icon{font-size:18px}.current-tab-label{font-weight:600}.external-link-btn{color:#ffffffb3;background:#3a3a3c99;border-radius:6px;justify-content:center;align-items:center;margin-left:4px;padding:4px 8px;font-size:18px;text-decoration:none;transition:all .15s;display:flex}.external-link-btn:hover{color:#fff;background:#48484acc}.top-bar-right{align-items:center;gap:16px;display:flex}.unassigned-indicator{cursor:pointer;background:#6c757d;border:none;border-radius:8px;align-items:center;gap:8px;margin-left:-200px;margin-right:auto;padding:6px 12px;transition:all .2s;display:flex;box-shadow:0 2px 8px #6c757d4d}.unassigned-indicator:hover{background:#5a6268;transform:translateY(-1px);box-shadow:0 4px 12px #6c757d80}.indicator-icon{font-size:16px;line-height:1}.indicator-label{color:#fff;font-size:13px;font-weight:600}.indicator-count{color:#6c757d;text-align:center;background:#fff;border-radius:10px;min-width:22px;padding:2px 8px;font-size:12px;font-weight:700}.user-section{color:#ffffffe6;align-items:center;gap:20px;font-size:15px;font-weight:500;display:flex}.logout-btn{color:#fff;cursor:pointer;background:#3a3a3ccc;border:none;border-radius:6px;padding:6px 12px;font-size:13px;transition:all .15s}.logout-btn:hover{background:#48484acc}.sidebar{z-index:50;background:#2d2d2de6;border-right:.5px solid #ffffff1a;grid-area:sidebar;padding:16px 8px;transition:all .25s;overflow:hidden}.tabs-nav{flex-direction:column;gap:4px;display:flex}.tab-btn{cursor:pointer;text-align:left;color:#ffffffd9;white-space:nowrap;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;min-height:44px;padding:12px;font-size:13px;transition:all .15s;display:flex}.tab-btn:hover:not(.disabled){background:#3a3a3c99}.tab-btn.active{color:#fff;background:#3a3a3ccc;font-weight:500}.tab-btn.disabled{opacity:.5;cursor:not-allowed}.tab-icon{text-align:center;flex-shrink:0;width:20px;font-size:16px}.tab-icon.bitrix-icon{background-image:url(/assets/bitrix-logo-DvKbSa90.png);background-position:50%;background-repeat:no-repeat;background-size:contain;width:20px;height:20px;display:inline-block}.tab-icon-image{object-fit:contain;width:20px;height:20px;display:block}.tab-icon-image[src*=telegram]{filter:brightness(0)invert()}.tab-icon.custom-icon{justify-content:center;align-items:center;display:flex}.tab-label{flex:1;transition:opacity .15s,visibility .15s}.soon-badge{color:#fff;background:#ff9500e6;border-radius:3px;flex-shrink:0;padding:2px 5px;font-size:9px;font-weight:600;transition:opacity .15s,visibility .15s}.main-content{background:#2d2d2d;grid-area:content;padding:0;position:relative;overflow:auto}.main-content:has(.gantt-active){overflow:hidden}.content-fade-in>*{animation:.3s ease-out contentFadeIn}@keyframes contentFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.content-loading{min-height:100%;animation:.2s ease-out skeletonFadeIn}@keyframes skeletonFadeIn{0%{opacity:0}to{opacity:1}}.recording-indicator{color:#ef4444;cursor:pointer;white-space:nowrap;background:#ef444426;border:1px solid #ef44444d;border-radius:8px;align-items:center;gap:8px;padding:8px 16px;font-size:13px;font-weight:500;transition:all .2s;display:flex}.recording-indicator:hover{color:#f87171;background:#ef444440;border-color:#ef444480}.recording-dot{background:#ef4444;border-radius:50%;flex-shrink:0;width:10px;height:10px;animation:1.5s ease-in-out infinite recording-pulse}@keyframes recording-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(.8)}}.recording-label{font-weight:600}.App{text-align:center}.App-logo{pointer-events:none;height:40vmin}@media (prefers-reduced-motion:no-preference){.App-logo{animation:20s linear infinite App-logo-spin}}.App-header{color:#fff;background-color:#282c34;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;font-size:calc(10px + 2vmin);display:flex}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
