:root{--color-primary: #646cff;--color-primary-hover: #535bf2;--color-primary-light: #747bff;--color-primary-dark: #4a51cc;--color-primary-rgb: 100, 108, 255;--color-success-rgb: 34, 197, 94;--color-error-rgb: 239, 68, 68;--color-warning-rgb: 245, 158, 11;--color-primary-alpha-1: rgba(100, 108, 255, .1);--color-primary-alpha-2: rgba(100, 108, 255, .2);--color-primary-alpha-3: rgba(100, 108, 255, .3);--color-primary-alpha-5: rgba(100, 108, 255, .5);--color-success: #22c55e;--color-success-dark: #16a34a;--color-success-light: #4ade80;--color-success-bright: #44ff44;--color-warning: #f59e0b;--color-warning-dark: #d97706;--color-warning-light: #fbbf24;--color-error: #ef4444;--color-error-dark: #dc2626;--color-error-light: #f87171;--color-error-bright: #ff4444;--color-danger: #ef4444;--color-info: #3b82f6;--color-info-dark: #2563eb;--color-info-light: #60a5fa;--color-purple: #8b5cf6;--color-pink: #ec4899;--color-error-alpha-1: rgba(239, 68, 68, .1);--color-error-alpha-3: rgba(239, 68, 68, .3);--color-success-alpha-1: rgba(34, 197, 94, .1);--color-success-alpha-2: rgba(34, 197, 94, .2);--color-bg-primary: #1a1a1a;--color-bg-secondary: #242424;--color-bg-tertiary: #2a2a2a;--color-bg-darker: #111118;--color-bg-elevated: #333333;--color-bg-hover: #3a3a3a;--color-bg-active: #444444;--color-bg-input: #2a2a2a;--color-bg-card: #242424;--color-bg-overlay: rgba(0, 0, 0, .7);--color-white: #ffffff;--color-black: #000000;--color-text-primary: rgba(255, 255, 255, .92);--color-text-secondary: #a0a0a0;--color-text-muted: #707070;--color-text-disabled: #505050;--color-text-inverse: #1a1a1a;--color-text-on-primary: #ffffff;--color-gray-50: #fafafa;--color-gray-100: #f5f5f5;--color-gray-200: #e5e5e5;--color-gray-300: #d4d4d4;--color-gray-400: #a3a3a3;--color-gray-500: #737373;--color-gray-600: #525252;--color-gray-700: #404040;--color-gray-800: #262626;--color-gray-900: #171717;--color-border: #333333;--color-border-light: #404040;--color-border-dark: #222222;--color-border-focus: var(--color-primary);--shadow-color: 0, 0, 0;--shadow-sm: 0 1px 2px rgba(var(--shadow-color), .2);--shadow-md: 0 4px 6px rgba(var(--shadow-color), .25);--shadow-lg: 0 10px 15px rgba(var(--shadow-color), .3);--shadow-xl: 0 20px 25px rgba(var(--shadow-color), .35);--font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, sans-serif;--font-family-mono: "SF Mono", "Fira Code", "Fira Mono", Menlo, Monaco, Consolas, monospace;--font-size-xs: .75rem;--font-size-xs-plus: .8125rem;--font-size-sm: .875rem;--font-size-sm-plus: .9375rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--spacing-2xs: .125rem;--spacing-xs: .25rem;--spacing-xs-plus: .375rem;--spacing-sm-minus: .4375rem;--spacing-sm: .5rem;--spacing-md: .75rem;--spacing-lg: 1rem;--spacing-lg-plus: 1.25rem;--spacing-xl: 1.5rem;--spacing-2xl: 2rem;--spacing-3xl: 3rem;--spacing-4xl: 4rem;--radius-xs: 2px;--radius-sm: 4px;--radius-sm-plus: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 24px;--radius-full: 9999px;--transition-fast: .15s ease;--transition-normal: .2s ease;--transition-slow: .3s ease;--z-dropdown: 100;--z-sticky: 200;--z-fixed: 250;--z-modal-backdrop: 290;--z-modal: 300;--z-popover: 350;--z-tooltip: 400;--z-notification: 500;--header-height: 56px;--footer-height: 48px;--sidebar-width: 280px;--max-content-width: 1200px;--breakpoint-xs: 480px;--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--header-bg: var(--color-bg-darker);--header-text: var(--color-text-primary);--header-border: var(--color-border-dark);--card-bg: var(--color-bg-card);--card-border: var(--color-border);--card-shadow: var(--shadow-md);--btn-primary-bg: var(--color-primary);--btn-primary-text: var(--color-white);--btn-primary-hover: var(--color-primary-hover);--btn-secondary-bg: transparent;--btn-secondary-text: var(--color-text-primary);--btn-secondary-border: var(--color-border-light);--btn-secondary-hover-bg: var(--color-bg-hover);--input-bg: var(--color-bg-input);--input-text: var(--color-text-primary);--input-border: var(--color-border-light);--input-border-focus: var(--color-primary);--input-placeholder: var(--color-text-muted);--modal-bg: var(--color-bg-secondary);--modal-border: var(--color-border);--modal-overlay: var(--color-bg-overlay);--table-header-bg: var(--color-bg-tertiary);--table-row-hover: var(--color-bg-hover);--table-border: var(--color-border);--badge-bg: var(--color-bg-tertiary);--badge-text: var(--color-text-secondary)}*,*:before,*:after{box-sizing:border-box}html{font-family:var(--font-family);line-height:var(--line-height-normal);font-weight:var(--font-weight-normal);color-scheme:light dark;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;padding:0;min-width:320px;min-height:100vh;color:var(--color-text-primary);background-color:var(--color-bg-primary)}#root{width:100%}h1,h2,h3,h4,h5,h6{margin:0;font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}h1{font-size:var(--font-size-4xl);line-height:var(--line-height-tight)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}h4{font-size:var(--font-size-lg)}p{margin:0}a{font-weight:var(--font-weight-medium);color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover:not(.btn){color:var(--color-primary-hover)}button{font-family:inherit;cursor:pointer;border:none;background:none}button:focus,button:focus-visible{outline:none}input,textarea,select{font-family:inherit;font-size:inherit;color:var(--color-text-primary)}input::placeholder,textarea::placeholder{color:var(--input-placeholder)}img{max-width:100%;height:auto;display:block}ul,ol{margin:0;padding:0;list-style:none}.loading{display:flex;justify-content:center;align-items:center;min-height:50vh;font-size:var(--font-size-lg);color:var(--color-text-secondary)}.error{color:var(--color-error);text-align:center;padding:var(--spacing-xl)}.error-retry-btn{margin-top:var(--spacing-lg)}.modal-error{color:var(--color-error);margin-top:var(--spacing-lg);text-align:center}.clickable{cursor:pointer;color:var(--color-primary)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.text-muted{color:var(--color-text-muted)}.text-secondary{color:var(--color-text-secondary)}.text-error{color:var(--color-error)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.play-button-large{width:100px;height:100px;border-radius:var(--radius-full);background:var(--color-primary-alpha-2);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-3xl);color:var(--color-primary);transition:all var(--transition-normal);box-shadow:0 0 20px var(--color-primary-alpha-3)}.play-button-large:hover{transform:scale(1.1);background:var(--color-primary-alpha-3);box-shadow:0 0 30px var(--color-primary-alpha-5)}.preview-toolbar-btn{background:var(--color-bg-tertiary);border:1px solid var(--color-border-light);color:var(--color-text-secondary);padding:var(--spacing-sm-minus) var(--spacing-md);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-base);line-height:1;transition:all var(--transition-fast)}.preview-toolbar-btn:hover{background:var(--color-bg-hover);border-color:var(--color-primary);color:var(--color-text-primary)}.preview-toolbar-btn:active{transform:scale(.95)}.preview-toolbar-btn:disabled{opacity:.4;cursor:not-allowed}.preview-toolbar-btn.play{background:rgba(var(--color-success-rgb),.15);border-color:var(--color-success);color:var(--color-success)}.preview-toolbar-btn.play:hover{background:rgba(var(--color-success-rgb),.25)}.preview-toolbar-btn.stop{background:rgba(var(--color-error-rgb),.15);border-color:var(--color-error);color:var(--color-error)}.preview-toolbar-btn.stop:hover{background:rgba(var(--color-error-rgb),.25)}.preview-toolbar-btn.pause{background:rgba(var(--color-warning-rgb),.15);border-color:var(--color-warning);color:var(--color-warning)}.preview-toolbar-btn.pause:hover{background:rgba(var(--color-warning-rgb),.25)}.flex-center{display:flex;align-items:center;justify-content:center}.flex-center-col{display:flex;flex-direction:column;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.flex-gap-sm{gap:var(--spacing-sm)}.flex-gap-md{gap:var(--spacing-md)}.flex-gap-lg{gap:var(--spacing-lg)}.modal-overlay{position:fixed;inset:0;background:var(--color-bg-overlay);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal)}.modal-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;margin-top:var(--spacing-xl)}.modal-actions .btn{min-width:100px}.confirm-modal{max-width:420px;text-align:center}.confirm-modal .modal-title{margin-bottom:var(--spacing-lg)}.confirm-message{color:var(--color-text-secondary);line-height:var(--line-height-relaxed);margin-bottom:var(--spacing-xl)}.confirm-actions{display:flex;gap:var(--spacing-md);justify-content:center}.confirm-actions .btn{min-width:120px}.preview-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;background:var(--color-bg-darker);cursor:pointer;transition:background var(--transition-normal)}.preview-placeholder:hover{background:var(--color-bg-tertiary)}.preview-placeholder:hover .play-button-large{transform:scale(1.1);background:var(--color-primary-alpha-3);box-shadow:0 0 30px var(--color-primary-alpha-5)}.preview-placeholder p{margin-top:var(--spacing-xl);color:var(--color-text-secondary);font-size:var(--font-size-base)}.card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-md);box-shadow:var(--card-shadow)}.card-header{padding:var(--spacing-lg);border-bottom:1px solid var(--color-border)}.card-body{padding:var(--spacing-lg)}.card-footer{padding:var(--spacing-lg);border-top:1px solid var(--color-border)}.badge{display:inline-flex;align-items:center;padding:var(--spacing-2xs) var(--spacing-sm);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);background:var(--badge-bg);color:var(--badge-text)}.badge-primary{background:var(--color-primary-alpha-2);color:var(--color-primary)}.badge-success{background:var(--color-success-alpha-1);color:var(--color-success)}.badge-error{background:var(--color-error-alpha-1);color:var(--color-error)}.badge-warning{background:rgba(var(--color-warning-rgb),.15);color:var(--color-warning)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg-secondary)}::-webkit-scrollbar-thumb{background:var(--color-border-light);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}::selection{background:var(--color-primary-alpha-3);color:var(--color-text-primary)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}[disabled]{opacity:.5;cursor:not-allowed}.oauth-buttons{margin-top:var(--spacing-xl)}.oauth-divider{display:flex;align-items:center;margin-bottom:var(--spacing-lg)}.oauth-divider:before,.oauth-divider:after{content:"";flex:1;height:1px;background:var(--color-bg-hover)}.oauth-divider span{padding:0 var(--spacing-lg);color:var(--color-text-secondary);font-size:var(--font-size-sm)}.oauth-button{display:flex;align-items:center;justify-content:center;gap:var(--spacing-md);width:100%;padding:var(--spacing-md) var(--spacing-lg);border:1px solid var(--color-border-light);border-radius:var(--radius-md);background:var(--color-bg-secondary);color:var(--color-white);font-size:var(--font-size-base);cursor:pointer;transition:all .2s ease}.oauth-button:hover:not(:disabled){background:var(--color-bg-primary);border-color:var(--color-text-muted)}.oauth-button:disabled{opacity:.6;cursor:not-allowed}.oauth-button svg{flex-shrink:0}.oauth-button-yandex:hover:not(:disabled){border-color:var(--color-error)}.honeypot-field{position:absolute;left:-9999px;top:-9999px;width:1px;height:1px;opacity:0;overflow:hidden;pointer-events:none}.activity-modal-backdrop{position:fixed;inset:0;z-index:var(--z-modal-backdrop)}.activity-modal{position:fixed;top:60px;right:var(--spacing-lg);width:400px;max-width:calc(100vw - var(--spacing-lg) * 2);max-height:calc(100vh - 80px);background:var(--color-bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:var(--z-modal);display:flex;flex-direction:column;overflow:hidden;animation:slideDown .15s ease-out}.activity-modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border)}.activity-modal-header h3{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.activity-modal-close{background:none;border:none;font-size:var(--font-size-xl);color:var(--color-text-muted);cursor:pointer;padding:var(--spacing-xs);line-height:1;transition:color var(--transition-fast)}.activity-modal-close:hover{color:var(--color-text-primary)}.activity-modal-content{flex:1;overflow-y:auto;padding:var(--spacing-sm) 0}.activity-modal-section{padding:0 var(--spacing-sm)}.activity-modal-section+.activity-modal-section{margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--color-border)}.activity-modal .activity-item{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);transition:background-color var(--transition-fast)}.activity-modal .activity-item:hover{background-color:var(--color-bg-secondary)}.activity-modal .activity-icon{font-size:var(--font-size-lg);line-height:1;flex-shrink:0}.activity-modal .activity-content{flex:1;min-width:0}.activity-modal .activity-message{margin:0;font-size:var(--font-size-sm);line-height:1.4;word-wrap:break-word}.activity-modal .activity-time{display:block;font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:var(--spacing-xs)}.activity-modal .actor-link,.activity-modal .creative-link{color:var(--color-primary);text-decoration:none;font-weight:var(--font-weight-medium)}.activity-modal .actor-link:hover,.activity-modal .creative-link:hover{text-decoration:underline}.activity-modal .deleted-creative{color:var(--color-text-muted);font-style:italic}.activity-modal .friend-request-item{background-color:var(--color-bg-tertiary)}.activity-modal .friend-request-actions{display:flex;gap:var(--spacing-xs);flex-shrink:0}.activity-modal .btn-small{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs)}.activity-modal-loading,.activity-modal-empty{display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl);color:var(--color-text-muted);font-size:var(--font-size-sm)}.activity-modal-footer{padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--color-border);display:flex;justify-content:center}.activity-modal-footer .btn{width:100%;text-align:center}@media(max-width:480px){.activity-modal{right:var(--spacing-sm);left:var(--spacing-sm);width:auto;max-width:none}}.messages-modal-backdrop{position:fixed;inset:0;z-index:var(--z-modal-backdrop)}.messages-modal{position:fixed;top:60px;right:var(--spacing-lg);width:360px;max-width:calc(100vw - var(--spacing-lg) * 2);max-height:calc(100vh - 80px);background:var(--color-bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:var(--z-modal);display:flex;flex-direction:column;overflow:hidden;animation:slideDown .15s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.messages-modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border)}.messages-modal-header h3{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.messages-modal-close{background:none;border:none;font-size:var(--font-size-xl);color:var(--color-text-muted);cursor:pointer;padding:var(--spacing-xs);line-height:1;transition:color var(--transition-fast)}.messages-modal-close:hover{color:var(--color-text-primary)}.messages-modal-content{flex:1;overflow-y:auto;padding:var(--spacing-sm) 0}.messages-modal-section{padding:0}.messages-modal-section-header{padding:var(--spacing-xs) var(--spacing-lg);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;background:var(--color-bg-secondary)}.messages-modal-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);cursor:pointer;transition:background var(--transition-fast);border:none;background:none;width:100%;text-align:left;color:inherit}.messages-modal-item:hover{background:var(--color-bg-secondary)}.messages-modal-avatar{width:44px;height:44px;border-radius:var(--radius-full);background:var(--color-bg-hover);overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-semibold);color:var(--color-text-secondary)}.messages-modal-avatar img{width:100%;height:100%;object-fit:cover}.messages-modal-info{flex:1;min-width:0}.messages-modal-username{font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);color:var(--color-text-primary)}.messages-modal-preview{font-size:var(--font-size-sm);color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.messages-modal-meta{display:flex;flex-direction:column;align-items:flex-end;gap:var(--spacing-xs)}.messages-modal-time{font-size:var(--font-size-xs);color:var(--color-text-muted)}.messages-modal-badge{background:var(--color-primary);color:#fff;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);padding:2px 6px;border-radius:var(--radius-full);min-width:18px;text-align:center}.messages-modal-loading,.messages-modal-empty{display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl);color:var(--color-text-muted);font-size:var(--font-size-sm)}.messages-modal-footer{padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--color-border);display:flex;justify-content:center}.messages-modal-footer .btn{width:100%;text-align:center}@media(max-width:480px){.messages-modal{right:var(--spacing-sm);left:var(--spacing-sm);width:auto;max-width:none}}.chat-windows-container{position:fixed;bottom:0;right:var(--spacing-lg);display:flex;flex-direction:row-reverse;gap:var(--spacing-md);z-index:var(--z-fixed);pointer-events:none}.chat-window{width:328px;height:455px;background:var(--color-bg-primary);border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;overflow:hidden;pointer-events:auto;animation:chatWindowSlideUp .2s ease-out}@keyframes chatWindowSlideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.chat-window.minimized{height:auto}.chat-window.minimized .chat-window-body,.chat-window.minimized .chat-window-input{display:none}.chat-window-header{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);cursor:pointer;-webkit-user-select:none;user-select:none;min-height:48px}.chat-window-header:hover{background:var(--color-bg-tertiary)}.chat-window-avatar{width:32px;height:32px;border-radius:var(--radius-full);background:var(--color-bg-hover);overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.chat-window-avatar img{width:100%;height:100%;object-fit:cover}.chat-window-user-info{flex:1;min-width:0}.chat-window-username{font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--color-text-primary)}.chat-window-typing{font-size:var(--font-size-xs);color:var(--color-text-muted);font-style:italic}.chat-window-actions{display:flex;gap:var(--spacing-xs)}.chat-window-action{background:none;border:none;color:var(--color-text-secondary);cursor:pointer;padding:var(--spacing-xs);border-radius:var(--radius-sm);line-height:1;font-size:var(--font-size-lg);transition:color var(--transition-fast),background var(--transition-fast)}.chat-window-action:hover{color:var(--color-text-primary);background:var(--color-bg-hover)}.chat-window-body{flex:1;overflow-y:auto;padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-sm);background:var(--color-bg-primary)}.chat-window-loading{display:flex;align-items:center;justify-content:center;height:100%;color:var(--color-text-muted);font-size:var(--font-size-sm)}.chat-window-empty{display:flex;align-items:center;justify-content:center;height:100%;color:var(--color-text-muted);font-size:var(--font-size-sm);text-align:center;padding:var(--spacing-lg)}.chat-window .cw-message{max-width:85%;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-lg);font-size:var(--font-size-sm);line-height:1.4;word-wrap:break-word}.chat-window .cw-message.sent{align-self:flex-end;background:var(--color-primary);color:#fff;border-bottom-right-radius:var(--radius-sm)}.chat-window .cw-message.received{align-self:flex-start;background:var(--color-bg-elevated);color:var(--color-text-primary);border-bottom-left-radius:var(--radius-sm)}.chat-window .cw-message-time{font-size:var(--font-size-xs);opacity:.7;margin-top:var(--spacing-xs)}.chat-window .cw-typing-indicator{align-self:flex-start;background:var(--color-bg-elevated);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-lg);border-bottom-left-radius:var(--radius-sm)}.chat-window .cw-typing-dots{display:flex;gap:4px}.chat-window .cw-typing-dots span{width:8px;height:8px;background:var(--color-text-muted);border-radius:var(--radius-full);animation:chatTypingBounce 1.4s infinite ease-in-out}.chat-window .cw-typing-dots span:nth-child(1){animation-delay:0s}.chat-window .cw-typing-dots span:nth-child(2){animation-delay:.2s}.chat-window .cw-typing-dots span:nth-child(3){animation-delay:.4s}@keyframes chatTypingBounce{0%,80%,to{transform:translateY(0)}40%{transform:translateY(-6px)}}.chat-window-input{display:flex;gap:var(--spacing-xs);padding:var(--spacing-sm);border-top:1px solid var(--color-border);background:var(--color-bg-secondary)}.chat-window-input input{flex:1;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border-light);border-radius:var(--radius-xl);background:var(--color-bg-primary);color:var(--color-text-primary);font-size:var(--font-size-sm)}.chat-window-input input:focus{outline:none;border-color:var(--color-primary)}.chat-window-input input::placeholder{color:var(--color-text-muted)}.chat-window-input button{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-xl);font-size:var(--font-size-sm)}.chat-window-unread{background:var(--color-primary);color:#fff;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);padding:2px 6px;border-radius:var(--radius-full);min-width:18px;text-align:center}@media(max-width:768px){.chat-windows-container{display:none}}@media(max-width:1024px)and (min-width:769px){.chat-windows-container{right:var(--spacing-sm)}.chat-window{width:280px;height:400px}}.user-search{position:relative}.search-input-wrapper{display:flex;align-items:center;background:#ffffff1a;border:1px solid var(--color-border-light);border-radius:var(--radius-sm);transition:border-color .2s ease}.search-input-wrapper:focus-within{border-color:var(--color-primary)}.search-icon{padding-left:var(--spacing-sm);font-size:var(--font-size-sm);opacity:.7}.user-search-input{background:transparent;border:none;padding:var(--spacing-sm-minus) var(--spacing-sm);color:var(--color-white);font-size:var(--font-size-sm);width:160px;transition:width .2s ease}.user-search-input:focus{outline:none;width:200px}.user-search-input::placeholder{color:var(--color-text-secondary)}.search-button{background:var(--color-primary);color:var(--color-white);border:none;padding:var(--spacing-sm-minus) var(--spacing-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);border-radius:0 var(--radius-sm) var(--radius-sm) 0;cursor:pointer;transition:background-color .2s ease;white-space:nowrap}.search-button:hover:not(:disabled){background:var(--color-primary-hover)}.search-button:disabled{opacity:.5;cursor:not-allowed}.user-search-dropdown{position:absolute;top:100%;left:0;right:0;min-width:300px;background:var(--color-bg-primary);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);margin-top:4px;max-height:400px;overflow-y:auto;z-index:1000;box-shadow:0 4px 12px #00000080}.search-result-item{display:flex;align-items:center;padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--color-border)}.search-result-item:last-child{border-bottom:none}.search-result-item:hover{background:var(--color-bg-elevated)}.search-result-link{display:flex;align-items:center;flex:1;text-decoration:none;color:inherit;gap:var(--spacing-md)}.search-result-avatar{width:36px;height:36px;border-radius:var(--radius-full);background:var(--color-primary);display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--color-white);overflow:hidden;flex-shrink:0}.search-result-avatar img{width:100%;height:100%;object-fit:cover}.search-result-info{display:flex;flex-direction:column;min-width:0}.search-result-username{color:var(--color-text-primary);font-weight:500}.search-result-fullname{color:var(--color-text-secondary);font-size:var(--font-size-xs-plus);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-result-action{flex-shrink:0;margin-left:var(--spacing-sm)}.btn-small{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs)}.friend-status{font-size:var(--font-size-xs);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm)}.friend-status.accepted{color:var(--color-success);background:#22c55e1a}.friend-status.pending{color:var(--color-warning);background:#f59e0b1a}.search-loading,.search-no-results{padding:var(--spacing-lg);text-align:center;color:var(--color-text-secondary)}.search-section{border-bottom:1px solid var(--color-border)}.search-section:last-child{border-bottom:none}.search-section-header{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;background:var(--color-bg-secondary)}.search-result-creative{text-decoration:none;color:inherit}.search-result-icon{width:36px;height:36px;border-radius:var(--radius-sm);background:var(--color-bg-secondary);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-lg);flex-shrink:0}.search-result-title{color:var(--color-text-primary);font-weight:500}.search-result-meta{display:flex;gap:var(--spacing-sm);color:var(--color-text-secondary);font-size:var(--font-size-xs-plus);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-result-tags{color:var(--color-primary)}.search-show-all{display:block;width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-secondary);border:none;color:var(--color-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-align:center;cursor:pointer;transition:background-color .2s ease}.search-show-all:hover{background:var(--color-bg-elevated)}.layout{min-height:100vh;display:flex;flex-direction:column}.header{background:var(--header-bg);height:var(--header-height);display:flex;align-items:center;position:sticky;top:0;z-index:var(--z-sticky);width:100%;border-bottom:1px solid var(--header-border)}.nav{width:100%;padding:0 var(--spacing-2xl);display:flex;justify-content:space-between;align-items:center}.logo{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--header-text);text-decoration:none}.logo:hover{color:var(--header-text);opacity:.9}.nav-links{display:flex;gap:var(--spacing-lg);align-items:center}.nav-link{color:var(--header-text);text-decoration:none;padding:var(--spacing-xs) var(--spacing-md);background:none;border:none;font-size:var(--font-size-sm-plus);cursor:pointer;transition:color var(--transition-fast)}.nav-link:hover{color:var(--color-primary-light)}.admin-link{color:var(--color-warning-light);font-weight:var(--font-weight-semibold)}.admin-link:hover{color:var(--color-warning)}.activity-link,.chat-link{position:relative;display:flex;align-items:center;gap:var(--spacing-xs)}.activity-badge{background:var(--color-error);color:var(--color-white);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);padding:var(--spacing-2xs) .4rem;border-radius:var(--radius-full);min-width:18px;text-align:center}.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-sm);border:none;cursor:pointer;font-size:var(--font-size-sm-plus);font-weight:var(--font-weight-medium);text-decoration:none;transition:all var(--transition-fast)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--btn-primary-bg);color:var(--btn-primary-text)}.btn-primary:hover:not(:disabled){background:var(--btn-primary-hover)}.btn-secondary{background:var(--btn-secondary-bg);color:var(--header-text);border:1px solid var(--header-text)}.btn-secondary:hover:not(:disabled){background:#ffffff26}.btn-danger{background:var(--color-error);color:var(--color-white)}.btn-danger:hover:not(:disabled){background:var(--color-error-dark)}.btn-success{background:var(--color-success);color:var(--color-white)}.btn-success:hover:not(:disabled){background:var(--color-success-dark)}.btn-outline{background:transparent;color:var(--color-text-primary);border:1px solid var(--color-border-light)}.btn-outline:hover:not(:disabled){background:var(--color-bg-hover);border-color:var(--color-primary)}.btn-ghost{background:transparent;color:var(--color-text-secondary)}.btn-ghost:hover:not(:disabled){background:var(--color-bg-hover);color:var(--color-text-primary)}.main{flex:1;padding:var(--spacing-2xl);max-width:var(--max-content-width);margin:0 auto;width:100%}.main:has(.full-width){max-width:none;padding:var(--spacing-lg) var(--spacing-xl)}.footer{background:var(--header-bg);color:var(--color-text-secondary);text-align:center;height:var(--footer-height);display:flex;align-items:center;justify-content:center;width:100%;border-top:1px solid var(--header-border)}.modal-content{background:var(--modal-bg);padding:var(--spacing-2xl);border-radius:var(--radius-md);border:1px solid var(--modal-border);width:100%;max-width:400px;position:relative;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl)}.modal-content.modal-large{max-width:600px}.modal-close{position:absolute;top:var(--spacing-lg);right:var(--spacing-lg);background:none;border:none;color:var(--color-text-muted);font-size:var(--font-size-2xl);cursor:pointer;padding:0;line-height:1;transition:color var(--transition-fast)}.modal-close:hover{color:var(--color-text-primary)}.modal-content h2{margin:0 0 var(--spacing-xl);text-align:center;color:var(--color-text-primary)}.modal-content .form-group{margin-bottom:var(--spacing-lg)}.modal-content .form-group label{display:block;margin-bottom:var(--spacing-sm);color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.modal-content .form-group input,.modal-content .form-group select{width:100%;padding:var(--spacing-md);border:1px solid var(--input-border);border-radius:var(--radius-sm);background:var(--input-bg);color:var(--input-text);font-size:var(--font-size-base);box-sizing:border-box;transition:border-color var(--transition-fast)}.modal-content .form-group input:focus,.modal-content .form-group select:focus,.modal-content .form-group textarea:focus{outline:none;border-color:var(--input-border-focus)}.modal-content .form-group input::placeholder,.modal-content .form-group textarea::placeholder{color:var(--input-placeholder)}.modal-content .form-group textarea{width:100%;padding:var(--spacing-md);border:1px solid var(--input-border);border-radius:var(--radius-sm);background:var(--input-bg);color:var(--input-text);font-size:var(--font-size-base);box-sizing:border-box;resize:vertical;font-family:inherit;min-height:80px}.modal-content .form-hint{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-top:calc(-1 * var(--spacing-xs))}.modal-actions{display:flex;gap:var(--spacing-md);margin-top:var(--spacing-xl)}.modal-actions .btn{flex:1;margin-top:0}.modal-content .btn{width:100%;padding:var(--spacing-md);margin-top:var(--spacing-lg)}.modal-switch{text-align:center;margin-top:var(--spacing-lg);color:var(--color-text-secondary)}.modal-switch button{background:none;border:none;color:var(--color-primary);cursor:pointer;font-size:var(--font-size-base)}.modal-switch button:hover{text-decoration:underline}.error-message{background:var(--color-error-alpha-1);border:1px solid var(--color-error);color:var(--color-error);padding:var(--spacing-md);border-radius:var(--radius-sm);margin-bottom:var(--spacing-lg);text-align:center}.success-message{background:var(--color-success-alpha-1);border:1px solid var(--color-success);color:var(--color-success);padding:var(--spacing-md);border-radius:var(--radius-sm);margin-bottom:var(--spacing-lg);text-align:center}.modal-tabs{display:flex;gap:0;margin-bottom:var(--spacing-xl);border-bottom:1px solid var(--color-border)}.modal-tab{flex:1;padding:var(--spacing-md) var(--spacing-lg);background:none;border:none;color:var(--color-text-secondary);cursor:pointer;font-size:var(--font-size-base);border-bottom:2px solid transparent;margin-bottom:-1px;transition:all var(--transition-fast)}.modal-tab:hover{color:var(--color-text-primary)}.modal-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.task-indicator{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-md);background:rgba(var(--color-primary-rgb),.2);border-radius:var(--radius-sm);color:var(--color-primary-light);text-decoration:none;font-size:var(--font-size-sm);margin-left:auto;margin-right:var(--spacing-lg);transition:background var(--transition-fast)}.task-indicator:hover{background:rgba(var(--color-primary-rgb),.3);color:var(--color-primary-light)}.task-indicator-spinner{width:14px;height:14px;border:2px solid rgba(var(--color-primary-rgb),.3);border-top-color:var(--color-primary-light);border-radius:50%;animation:task-spin 1s linear infinite}@keyframes task-spin{to{transform:rotate(360deg)}}.task-indicator-text{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-notification{position:fixed;top:calc(var(--header-height) + var(--spacing-lg));right:var(--spacing-lg);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md);display:flex;align-items:center;gap:var(--spacing-md);z-index:var(--z-notification);box-shadow:var(--shadow-lg);animation:task-notification-slide-in .3s ease-out}@keyframes task-notification-slide-in{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.task-notification-success{background:var(--color-success);color:var(--color-white)}.task-notification-error{background:var(--color-error);color:var(--color-white)}.task-notification-text{max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-notification-link{color:var(--color-white);text-decoration:underline;font-weight:var(--font-weight-semibold)}.task-notification-link:hover{opacity:.9;color:var(--color-white)}.task-notification-close{background:none;border:none;color:var(--color-white);font-size:var(--font-size-xl);cursor:pointer;padding:0;line-height:1;opacity:.8;transition:opacity var(--transition-fast)}.task-notification-close:hover{opacity:1}@media(max-width:768px){.nav{padding:0 var(--spacing-lg)}.nav-links{gap:var(--spacing-sm)}.nav-link{padding:var(--spacing-xs);font-size:var(--font-size-sm)}.main{padding:var(--spacing-lg)}.task-indicator{display:none}.task-indicator-text{max-width:100px}}
