@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";
*,:before,:after{box-sizing:border-box;margin:0;padding:0}[data-theme=light]{--bg-primary:#fff;--bg-secondary:#f5f5f7;--bg-tertiary:#eaeaed;--bg-elevated:#fff;--bg-hover:#0000000a;--bg-active:#0000000f;--text-primary:#1a1a2e;--text-secondary:#65657a;--text-muted:#9999ad;--text-inverse:#fff;--border-primary:#e0e0e6;--border-secondary:#ececf0;--border-focus:#5865f2;--sidebar-bg:#f0f0f4;--sidebar-hover:#0000000d;--sidebar-active:#5865f21a;--sidebar-text:#4a4a5e;--card-bg:#fff;--card-shadow:0 1px 3px #00000014,0 1px 2px #0000000f;--card-shadow-hover:0 4px 12px #0000001f,0 2px 4px #00000014;--modal-backdrop:#0006;--modal-bg:#fff;--input-bg:#f5f5f7;--input-border:#dddde3;--input-focus-bg:#fff;--scrollbar-track:#f0f0f4;--scrollbar-thumb:#c8c8d0;--skeleton-bg:#e8e8ed;--skeleton-shine:#f5f5f7}[data-theme=dark]{--bg-primary:#2b2d31;--bg-secondary:#232428;--bg-tertiary:#1e1f23;--bg-elevated:#313338;--bg-hover:#ffffff0a;--bg-active:#ffffff0f;--text-primary:#f2f3f5;--text-secondary:#b5bac1;--text-muted:#6d6f78;--text-inverse:#1a1a2e;--border-primary:#3f4147;--border-secondary:#35373c;--border-focus:#5865f2;--sidebar-bg:#1e1f23;--sidebar-hover:#ffffff0a;--sidebar-active:#5865f226;--sidebar-text:#949ba4;--card-bg:#313338;--card-shadow:0 2px 8px #0000004d;--card-shadow-hover:0 4px 16px #0006;--modal-backdrop:#0009;--modal-bg:#313338;--input-bg:#1e1f23;--input-border:#3f4147;--input-focus-bg:#232428;--scrollbar-track:#2b2d31;--scrollbar-thumb:#4a4b52;--skeleton-bg:#3a3b40;--skeleton-shine:#44454a}[data-theme=onyx]{--bg-primary:#1e1f22;--bg-secondary:#18191c;--bg-tertiary:#111214;--bg-elevated:#252629;--bg-hover:#ffffff08;--bg-active:#ffffff0d;--text-primary:#dbdee1;--text-secondary:#949ba4;--text-muted:#5c5e66;--text-inverse:#111214;--border-primary:#2e2f34;--border-secondary:#27282c;--border-focus:#5865f2;--sidebar-bg:#111214;--sidebar-hover:#ffffff08;--sidebar-active:#5865f21f;--sidebar-text:#80848e;--card-bg:#252629;--card-shadow:0 2px 8px #00000080;--card-shadow-hover:0 4px 16px #0009;--modal-backdrop:#000000b3;--modal-bg:#252629;--input-bg:#18191c;--input-border:#2e2f34;--input-focus-bg:#1e1f22;--scrollbar-track:#1e1f22;--scrollbar-thumb:#3a3b40;--skeleton-bg:#2e2f34;--skeleton-shine:#38393e}[data-theme=midnight]{--bg-primary:#0d1117;--bg-secondary:#0a0e14;--bg-tertiary:#060a10;--bg-elevated:#161b22;--bg-hover:#88c6ff0a;--bg-active:#88c6ff0f;--text-primary:#e6edf3;--text-secondary:#8b949e;--text-muted:#484f58;--text-inverse:#0d1117;--border-primary:#21262d;--border-secondary:#1a1f26;--border-focus:#58a6ff;--sidebar-bg:#060a10;--sidebar-hover:#88c6ff0a;--sidebar-active:#58a6ff1f;--sidebar-text:#7d8590;--card-bg:#161b22;--card-shadow:0 2px 8px #00000080;--card-shadow-hover:0 4px 16px #0009;--modal-backdrop:#000000b3;--modal-bg:#161b22;--input-bg:#0a0e14;--input-border:#21262d;--input-focus-bg:#0d1117;--scrollbar-track:#0d1117;--scrollbar-thumb:#2d333b;--skeleton-bg:#21262d;--skeleton-shine:#2d333b}:root{--color-primary:#5865f2;--color-primary-hover:#4752c4;--color-primary-active:#3c45a5;--color-primary-light:#5865f226;--color-success:#57f287;--color-success-bg:#57f2871f;--color-warning:#fee75c;--color-warning-bg:#fee75c1f;--color-danger:#ed4245;--color-danger-bg:#ed42451f;--color-danger-hover:#d83c3f;--color-accent:#eb459e;--color-accent-bg:#eb459e1f;--color-info:#58a6ff;--color-info-bg:#58a6ff1f;--status-idea:#9b59b6;--status-scripting:#3498db;--status-filming:#e67e22;--status-editing:#f39c12;--status-review:#e91e63;--status-ready:#57f287;--status-published:#5865f2;--priority-high:#ed4245;--priority-medium:#fee75c;--priority-low:#57f287;--space-xs:4px;--space-sm:8px;--space-md:12px;--space-lg:16px;--space-xl:24px;--space-2xl:32px;--space-3xl:48px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-full:9999px;--transition-fast:.15s ease;--transition-base:.2s ease;--transition-slow:.3s ease;--shadow-sm:0 1px 2px #0000001a;--shadow-md:0 4px 12px #00000026;--shadow-lg:0 8px 24px #0003;--z-sidebar:100;--z-topbar:200;--z-dropdown:300;--z-modal:400;--z-toast:500;--sidebar-width:260px;--sidebar-collapsed-width:64px;--topbar-height:56px;--font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}html{font-family:var(--font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px;line-height:1.5}body{background:var(--bg-primary);color:var(--text-primary);min-height:100vh;transition:background var(--transition-slow),color var(--transition-slow)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}::selection{background:var(--color-primary);color:#fff}a{color:var(--color-primary);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--color-primary-hover)}.btn{justify-content:center;align-items:center;gap:var(--space-sm);padding:var(--space-sm)var(--space-lg);font-family:var(--font-family);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;-webkit-user-select:none;user-select:none;border:none;font-size:.875rem;font-weight:500;line-height:1.5;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:0 4px 12px #5865f266}.btn-primary:active:not(:disabled){background:var(--color-primary-active);transform:translateY(0)}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-primary)}.btn-secondary:hover:not(:disabled){background:var(--bg-hover);border-color:var(--text-muted)}.btn-danger{background:var(--color-danger);color:#fff}.btn-danger:hover:not(:disabled){background:var(--color-danger-hover)}.btn-ghost{color:var(--text-secondary);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.btn-icon{padding:var(--space-sm);width:36px;height:36px}.btn-sm{padding:var(--space-xs)var(--space-sm);font-size:.8125rem}.btn-lg{padding:var(--space-md)var(--space-xl);font-size:1rem}.input,.textarea,.select{width:100%;padding:var(--space-sm)var(--space-md);font-family:var(--font-family);color:var(--text-primary);background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--radius-md);transition:all var(--transition-fast);outline:none;font-size:.875rem}.input:focus,.textarea:focus,.select:focus{background:var(--input-focus-bg);border-color:var(--border-focus);box-shadow:0 0 0 3px var(--color-primary-light)}.input::placeholder,.textarea::placeholder{color:var(--text-muted)}.textarea{resize:vertical;min-height:100px;line-height:1.6}.select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236d6f78' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:32px}.input-group{gap:var(--space-xs);flex-direction:column;display:flex}.input-group label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:.8125rem;font-weight:600}.badge{align-items:center;gap:var(--space-xs);padding:2px var(--space-sm);border-radius:var(--radius-full);white-space:nowrap;text-transform:uppercase;letter-spacing:.03em;font-size:.6875rem;font-weight:600;display:inline-flex}.badge-idea{color:#b474d0;background:#9b59b626}.badge-scripting{color:#5dade2;background:#3498db26}.badge-filming{color:#f0a35c;background:#e67e2226}.badge-editing{color:#f5b748;background:#f39c1226}.badge-review{color:#ef5287;background:#e91e6326}.badge-ready{color:#57f287;background:#57f28726}.badge-published{color:#7983f5;background:#5865f226}.badge-high{background:var(--color-danger-bg);color:var(--color-danger)}.badge-medium{background:var(--color-warning-bg);color:#d4a800}.badge-low{background:var(--color-success-bg);color:#3dba6b}.card{background:var(--card-bg);border-radius:var(--radius-lg);box-shadow:var(--card-shadow);transition:all var(--transition-base);overflow:hidden}.card:hover{box-shadow:var(--card-shadow-hover)}.modal-backdrop{background:var(--modal-backdrop);z-index:var(--z-modal);animation:fadeIn var(--transition-fast);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--modal-bg);border-radius:var(--radius-xl);width:90vw;max-width:600px;max-height:85vh;box-shadow:var(--shadow-lg);animation:slideUp var(--transition-slow);overflow-y:auto}.modal-header{padding:var(--space-xl);border-bottom:1px solid var(--border-primary);justify-content:space-between;align-items:center;display:flex}.modal-header h2{font-size:1.125rem;font-weight:600}.modal-body{padding:var(--space-xl)}.modal-footer{justify-content:flex-end;gap:var(--space-sm);padding:var(--space-lg)var(--space-xl);border-top:1px solid var(--border-primary);display:flex}.slide-panel-backdrop{background:var(--modal-backdrop);z-index:var(--z-modal);animation:fadeIn var(--transition-fast);position:fixed;inset:0}.slide-panel{background:var(--modal-bg);width:640px;max-width:90vw;height:100vh;z-index:var(--z-modal);animation:slideInRight var(--transition-slow);position:fixed;top:0;right:0;overflow-y:auto;box-shadow:-8px 0 32px #0000004d}.empty-state{padding:var(--space-3xl);text-align:center;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-state svg{width:80px;height:80px;margin-bottom:var(--space-xl);opacity:.4}.empty-state h3{margin-bottom:var(--space-sm);color:var(--text-secondary);font-size:1.125rem;font-weight:600}.dropdown{display:inline-block;position:relative}.dropdown-menu{background:var(--bg-elevated);border:1px solid var(--border-primary);border-radius:var(--radius-md);min-width:180px;box-shadow:var(--shadow-md);z-index:var(--z-dropdown);animation:fadeInScale var(--transition-fast);position:absolute;top:calc(100% + 4px);right:0;overflow:hidden}.dropdown-item{align-items:center;gap:var(--space-sm);width:100%;padding:var(--space-sm)var(--space-md);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);text-align:left;font-size:.875rem;font-family:var(--font-family);background:0 0;border:none;display:flex}.dropdown-item:hover{background:var(--bg-hover);color:var(--text-primary)}.dropdown-divider{background:var(--border-primary);height:1px;margin:var(--space-xs)0}.tooltip{position:relative}.tooltip:after{content:attr(data-tooltip);color:#fff;border-radius:var(--radius-sm);white-space:nowrap;opacity:0;pointer-events:none;transition:all var(--transition-fast);background:#111;padding:4px 10px;font-size:.75rem;font-weight:500;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)scale(.9)}.tooltip:hover:after{opacity:1;transform:translate(-50%)scale(1)}.app-layout{min-height:100vh;display:flex}.app-main{margin-left:var(--sidebar-width);padding-top:var(--topbar-height);transition:margin-left var(--transition-slow);flex:1;min-width:0}.app-main.sidebar-collapsed{margin-left:var(--sidebar-collapsed-width)}.content-area{padding:var(--space-xl);min-height:calc(100vh - var(--topbar-height))}.auth-page{background:var(--bg-secondary);min-height:100vh;padding:var(--space-xl);justify-content:center;align-items:center;display:flex}.auth-container{width:100%;max-width:400px}.auth-card{background:var(--card-bg);border-radius:var(--radius-xl);padding:var(--space-2xl);box-shadow:var(--card-shadow)}.auth-logo{text-align:center;margin-bottom:var(--space-2xl)}.auth-logo h1{background:linear-gradient(135deg,var(--color-primary),var(--color-accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:1.75rem;font-weight:700}.auth-logo p{color:var(--text-muted);margin-top:var(--space-xs);font-size:.875rem}.auth-form{gap:var(--space-lg);flex-direction:column;display:flex}.auth-form .btn{margin-top:var(--space-sm);padding:var(--space-md)}.auth-footer{text-align:center;margin-top:var(--space-xl);color:var(--text-muted);font-size:.875rem}.auth-footer a{color:var(--color-primary);font-weight:500}.auth-error{background:var(--color-danger-bg);color:var(--color-danger);padding:var(--space-sm)var(--space-md);border-radius:var(--radius-md);text-align:center;font-size:.8125rem}.sidebar{width:var(--sidebar-width);background:var(--sidebar-bg);border-right:1px solid var(--border-primary);height:100vh;z-index:var(--z-sidebar);transition:width var(--transition-slow);flex-direction:column;display:flex;position:fixed;top:0;left:0;overflow:hidden}.sidebar.collapsed{width:var(--sidebar-collapsed-width)}.sidebar-header{align-items:center;gap:var(--space-md);padding:var(--space-lg);height:var(--topbar-height);border-bottom:1px solid var(--border-secondary);display:flex}.sidebar-logo{background:linear-gradient(135deg,var(--color-primary),var(--color-accent));-webkit-text-fill-color:transparent;white-space:nowrap;-webkit-background-clip:text;background-clip:text;font-size:1.25rem;font-weight:700}.sidebar-toggle{color:var(--sidebar-text);cursor:pointer;padding:var(--space-xs);border-radius:var(--radius-sm);transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;margin-left:auto;display:flex}.sidebar-toggle:hover{background:var(--sidebar-hover);color:var(--text-primary)}.sidebar-nav{padding:var(--space-md);gap:var(--space-xs);flex-direction:column;flex:1;display:flex}.sidebar-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;padding:var(--space-md)var(--space-sm)var(--space-xs);white-space:nowrap;font-size:.6875rem;font-weight:700;overflow:hidden}.sidebar-item{align-items:center;gap:var(--space-md);padding:var(--space-sm)var(--space-md);color:var(--sidebar-text);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;text-align:left;width:100%;font-size:.875rem;font-family:var(--font-family);background:0 0;border:none;display:flex;overflow:hidden}.sidebar-item:hover{background:var(--sidebar-hover);color:var(--text-primary)}.sidebar-item.active{background:var(--sidebar-active);color:var(--color-primary);font-weight:500}.sidebar-item svg,.sidebar-item .icon{flex-shrink:0;width:20px;height:20px}.sidebar-footer{padding:var(--space-md);border-top:1px solid var(--border-secondary)}.topbar{top:0;left:var(--sidebar-width);height:var(--topbar-height);background:var(--bg-primary);border-bottom:1px solid var(--border-primary);z-index:var(--z-topbar);padding:0 var(--space-xl);align-items:center;gap:var(--space-lg);transition:left var(--transition-slow);display:flex;position:fixed;right:0}.topbar.sidebar-collapsed{left:var(--sidebar-collapsed-width)}.topbar-search{flex:1;max-width:480px;position:relative}.topbar-search input{width:100%;padding:var(--space-sm)var(--space-md)var(--space-sm)36px;background:var(--input-bg);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-family);transition:all var(--transition-fast);border:1px solid #0000;outline:none;font-size:.875rem}.topbar-search input:focus{background:var(--input-focus-bg);border-color:var(--border-focus);box-shadow:0 0 0 3px var(--color-primary-light)}.topbar-search input::placeholder{color:var(--text-muted)}.topbar-search .search-icon{color:var(--text-muted);pointer-events:none;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.topbar-actions{align-items:center;gap:var(--space-sm);margin-left:auto;display:flex}.topbar-user{align-items:center;gap:var(--space-sm);padding:var(--space-xs)var(--space-sm);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);display:flex}.topbar-user:hover{background:var(--bg-hover)}.avatar{border-radius:var(--radius-full);background:linear-gradient(135deg,var(--color-primary),var(--color-accent));color:#fff;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.8125rem;font-weight:600;display:flex}.kanban-board{gap:var(--space-lg);padding-bottom:var(--space-xl);min-height:calc(100vh - var(--topbar-height) - 48px);display:flex;overflow-x:auto}.kanban-column{flex-direction:column;flex-shrink:0;min-width:280px;max-width:320px;display:flex}.kanban-column-header{align-items:center;gap:var(--space-sm);padding:var(--space-md);margin-bottom:var(--space-sm);border-radius:var(--radius-md);background:var(--bg-secondary);display:flex}.kanban-column-dot{border-radius:var(--radius-full);flex-shrink:0;width:10px;height:10px}.kanban-column-title{text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);font-size:.8125rem;font-weight:600}.kanban-column-count{color:var(--text-muted);background:var(--bg-tertiary);border-radius:var(--radius-full);margin-left:auto;padding:1px 8px;font-size:.75rem}.kanban-cards{gap:var(--space-sm);min-height:60px;padding:var(--space-xs);border-radius:var(--radius-md);transition:background var(--transition-fast);flex-direction:column;flex:1;display:flex}.kanban-cards.drag-over{background:var(--color-primary-light);outline:2px dashed var(--color-primary);outline-offset:-2px;border-radius:var(--radius-md)}.kanban-card{background:var(--card-bg);border-radius:var(--radius-md);padding:var(--space-md);cursor:pointer;transition:all var(--transition-base);border:1px solid var(--border-secondary)}.kanban-card:hover{box-shadow:var(--card-shadow-hover);border-color:var(--border-primary);transform:translateY(-1px)}.kanban-card.dragging{opacity:.5;transform:rotate(2deg)}.kanban-card-thumbnail{aspect-ratio:16/9;border-radius:var(--radius-sm);width:100%;margin-bottom:var(--space-sm);background:var(--bg-tertiary);overflow:hidden}.kanban-card-thumbnail img{object-fit:cover;width:100%;height:100%}.kanban-card-title{color:var(--text-primary);margin-bottom:var(--space-xs);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.875rem;font-weight:600;line-height:1.4;display:-webkit-box;overflow:hidden}.kanban-card-meta{align-items:center;gap:var(--space-sm);margin-top:var(--space-sm);flex-wrap:wrap;display:flex}.kanban-card-date{color:var(--text-muted);align-items:center;gap:4px;font-size:.75rem;display:flex}.grid-view{gap:var(--space-lg);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));display:grid}.grid-card{background:var(--card-bg);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base);border:1px solid var(--border-secondary);overflow:hidden}.grid-card:hover{box-shadow:var(--card-shadow-hover);border-color:var(--border-primary);transform:translateY(-3px)}.grid-card-thumbnail{aspect-ratio:16/9;background:var(--bg-tertiary);width:100%;position:relative;overflow:hidden}.grid-card-thumbnail img{object-fit:cover;width:100%;height:100%;transition:transform var(--transition-slow)}.grid-card:hover .grid-card-thumbnail img{transform:scale(1.05)}.grid-card-status{top:var(--space-sm);left:var(--space-sm);position:absolute}.grid-card-priority{top:var(--space-sm);right:var(--space-sm);position:absolute}.grid-card-body{padding:var(--space-lg)}.grid-card-title{color:var(--text-primary);margin-bottom:var(--space-xs);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:1rem;font-weight:600;line-height:1.4;display:-webkit-box;overflow:hidden}.grid-card-desc{color:var(--text-muted);-webkit-line-clamp:2;margin-bottom:var(--space-md);-webkit-box-orient:vertical;font-size:.8125rem;line-height:1.5;display:-webkit-box;overflow:hidden}.grid-card-footer{margin-top:var(--space-sm);justify-content:space-between;align-items:center;display:flex}.grid-card-tags{gap:var(--space-xs);flex-wrap:wrap;display:flex}.tag{background:var(--bg-tertiary);color:var(--text-secondary);border-radius:var(--radius-full);padding:2px 8px;font-size:.6875rem;font-weight:500}.list-view{background:var(--card-bg);border-radius:var(--radius-lg);border:1px solid var(--border-secondary);overflow:hidden}.list-header{gap:var(--space-md);padding:var(--space-md)var(--space-lg);background:var(--bg-secondary);border-bottom:1px solid var(--border-primary);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);grid-template-columns:2fr 1fr .8fr .8fr 1fr .5fr;font-size:.75rem;font-weight:600;display:grid}.list-header-cell{align-items:center;gap:var(--space-xs);cursor:pointer;-webkit-user-select:none;user-select:none;transition:color var(--transition-fast);display:flex}.list-header-cell:hover{color:var(--text-primary)}.list-header-cell.sorted{color:var(--color-primary)}.list-row{gap:var(--space-md);padding:var(--space-md)var(--space-lg);border-bottom:1px solid var(--border-secondary);cursor:pointer;transition:background var(--transition-fast);grid-template-columns:2fr 1fr .8fr .8fr 1fr .5fr;align-items:center;display:grid}.list-row:hover{background:var(--bg-hover)}.list-row:last-child{border-bottom:none}.list-row-title{align-items:center;gap:var(--space-md);display:flex}.list-row-thumb{border-radius:var(--radius-sm);background:var(--bg-tertiary);flex-shrink:0;width:48px;height:27px;overflow:hidden}.list-row-thumb img{object-fit:cover;width:100%;height:100%}.list-row-name{color:var(--text-primary);-webkit-line-clamp:1;-webkit-box-orient:vertical;font-weight:500;display:-webkit-box;overflow:hidden}.list-row-date{color:var(--text-muted);font-size:.8125rem}.list-row-actions{justify-content:flex-end;align-items:center;display:flex}.calendar-view{background:var(--card-bg);border-radius:var(--radius-lg);border:1px solid var(--border-secondary);overflow:hidden}.calendar-header{padding:var(--space-lg)var(--space-xl);border-bottom:1px solid var(--border-primary);justify-content:space-between;align-items:center;display:flex}.calendar-header h3{font-size:1.125rem;font-weight:600}.calendar-weekdays{background:var(--bg-secondary);border-bottom:1px solid var(--border-primary);grid-template-columns:repeat(7,1fr);display:grid}.calendar-weekday{padding:var(--space-sm);text-align:center;color:var(--text-muted);text-transform:uppercase;font-size:.75rem;font-weight:600}.calendar-grid{grid-template-columns:repeat(7,1fr);display:grid}.calendar-day{min-height:100px;padding:var(--space-xs);border-right:1px solid var(--border-secondary);border-bottom:1px solid var(--border-secondary);transition:background var(--transition-fast)}.calendar-day:nth-child(7n){border-right:none}.calendar-day:hover{background:var(--bg-hover)}.calendar-day.other-month{opacity:.3}.calendar-day.today{background:var(--color-primary-light)}.calendar-date{color:var(--text-secondary);padding:var(--space-xs);font-size:.8125rem;font-weight:500}.calendar-day.today .calendar-date{color:var(--color-primary);font-weight:700}.calendar-event{border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;transition:all var(--transition-fast);margin:1px 2px;padding:2px 6px;font-size:.6875rem;font-weight:500;overflow:hidden}.calendar-event:hover{filter:brightness(1.1)}.filter-bar{align-items:center;gap:var(--space-sm);padding:var(--space-md)0;flex-wrap:wrap;display:flex}.filter-chip{align-items:center;gap:var(--space-xs);padding:var(--space-xs)var(--space-md);background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-full);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);font-size:.8125rem;font-family:var(--font-family);display:inline-flex}.filter-chip:hover{border-color:var(--color-primary);color:var(--color-primary)}.filter-chip.active{background:var(--color-primary-light);border-color:var(--color-primary);color:var(--color-primary)}.filter-chip-remove{color:inherit;cursor:pointer;opacity:.7;background:0 0;border:none;align-items:center;margin-left:2px;padding:0;display:inline-flex}.filter-chip-remove:hover{opacity:1}.detail-header{padding:var(--space-xl);border-bottom:1px solid var(--border-primary);justify-content:space-between;align-items:center;display:flex}.detail-header-actions{gap:var(--space-sm);display:flex}.detail-thumbnail{aspect-ratio:16/9;background:var(--bg-tertiary);width:100%;position:relative;overflow:hidden}.detail-thumbnail img{object-fit:cover;width:100%;height:100%}.detail-thumbnail-overlay{opacity:0;transition:opacity var(--transition-fast);cursor:pointer;background:#0006;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.detail-thumbnail:hover .detail-thumbnail-overlay{opacity:1}.detail-body{padding:var(--space-xl);gap:var(--space-xl);flex-direction:column;display:flex}.detail-title{color:var(--text-primary);width:100%;font-size:1.5rem;font-weight:700;font-family:var(--font-family);padding:var(--space-xs)0;transition:border-color var(--transition-fast);background:0 0;border:none;border-bottom:2px solid #0000;outline:none}.detail-title:focus{border-bottom-color:var(--color-primary)}.detail-meta{gap:var(--space-md);grid-template-columns:1fr 1fr;display:grid}.detail-section{gap:var(--space-sm);flex-direction:column;display:flex}.detail-section-title{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:.75rem;font-weight:600}.checklist{gap:var(--space-xs);flex-direction:column;display:flex}.checklist-item{align-items:center;gap:var(--space-sm);padding:var(--space-xs)var(--space-sm);border-radius:var(--radius-sm);transition:background var(--transition-fast);display:flex}.checklist-item:hover{background:var(--bg-hover)}.checklist-checkbox{border:2px solid var(--border-primary);border-radius:var(--radius-sm);cursor:pointer;width:18px;height:18px;transition:all var(--transition-fast);background:0 0;flex-shrink:0;justify-content:center;align-items:center;display:flex}.checklist-checkbox.checked{background:var(--color-primary);border-color:var(--color-primary)}.checklist-checkbox.checked svg{color:#fff}.checklist-text{color:var(--text-primary);font-size:.875rem;font-family:var(--font-family);background:0 0;border:none;outline:none;flex:1}.checklist-text.done{color:var(--text-muted);text-decoration:line-through}.checklist-remove{opacity:0;color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;padding:2px}.checklist-item:hover .checklist-remove{opacity:1}.checklist-remove:hover{color:var(--color-danger)}.checklist-add{align-items:center;gap:var(--space-sm);padding:var(--space-xs)var(--space-sm);color:var(--text-muted);cursor:pointer;transition:color var(--transition-fast);font-size:.875rem;font-family:var(--font-family);background:0 0;border:none;display:flex}.checklist-add:hover{color:var(--color-primary)}.links-list{gap:var(--space-xs);flex-direction:column;display:flex}.link-item{align-items:center;gap:var(--space-sm);padding:var(--space-xs)var(--space-sm);border-radius:var(--radius-sm);transition:background var(--transition-fast);display:flex}.link-item:hover{background:var(--bg-hover)}.link-item input{color:var(--color-primary);font-size:.875rem;font-family:var(--font-family);background:0 0;border:none;outline:none;flex:1}.image-upload{aspect-ratio:16/9;border:2px dashed var(--border-primary);border-radius:var(--radius-lg);justify-content:center;align-items:center;gap:var(--space-sm);cursor:pointer;width:100%;transition:all var(--transition-fast);background:var(--bg-secondary);color:var(--text-muted);flex-direction:column;display:flex}.image-upload:hover{border-color:var(--color-primary);background:var(--color-primary-light);color:var(--color-primary)}.image-upload.drag-over{border-color:var(--color-primary);background:var(--color-primary-light)}.image-upload svg{width:40px;height:40px}.image-upload p{font-size:.875rem;font-weight:500}.image-upload span{color:var(--text-muted);font-size:.75rem}.theme-switcher{gap:var(--space-xs);padding:var(--space-xs);background:var(--bg-secondary);border-radius:var(--radius-md);display:flex}.theme-option{border-radius:var(--radius-full);cursor:pointer;width:24px;height:24px;transition:all var(--transition-fast);border:2px solid #0000;position:relative}.theme-option:hover{transform:scale(1.15)}.theme-option.active{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-light)}.theme-light{background:#fff;border-color:#e0e0e6}.theme-dark{background:#2b2d31}.theme-onyx{background:#1e1f22}.theme-midnight{background:#0d1117}.channel-switcher{padding:0 var(--space-sm);margin-bottom:var(--space-sm);position:relative}.channel-switcher-btn{align-items:center;gap:var(--space-sm);width:100%;padding:var(--space-sm)var(--space-md);background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);color:var(--text-primary);font-size:.875rem;font-weight:600;font-family:var(--font-family);display:flex}.channel-switcher-btn:hover{background:var(--bg-hover);border-color:var(--color-primary)}.channel-switcher-avatar{border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:1rem;display:flex}.channel-switcher-name{text-align:left;text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.channel-switcher-arrow{color:var(--text-muted);flex-shrink:0;font-size:.625rem}.channel-dropdown{top:calc(100% + 4px);left:var(--space-sm);right:var(--space-sm);background:var(--bg-elevated);border:1px solid var(--border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:100;padding:var(--space-xs);animation:fadeInScale var(--transition-fast)ease-out;max-height:320px;position:absolute;overflow-y:auto}.channel-dropdown-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);padding:var(--space-xs)var(--space-sm);margin-bottom:var(--space-xxs);font-size:.6875rem;font-weight:600}.channel-dropdown-item{align-items:center;gap:var(--space-sm);padding:var(--space-sm)var(--space-sm);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast);color:var(--text-primary);width:100%;font-size:.8125rem;font-family:var(--font-family);background:0 0;border:none;display:flex}.channel-dropdown-item:hover{background:var(--bg-hover)}.channel-dropdown-item.active{background:var(--color-primary-light);color:var(--color-primary)}.channel-dropdown-avatar{border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:.85rem;display:flex}.channel-dropdown-name{text-align:left;text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.channel-check{color:var(--color-primary);font-size:.875rem;font-weight:700}.channel-edit-btn{opacity:0;cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);background:0 0;border:none;padding:2px 4px;font-size:.8rem}.channel-dropdown-item:hover .channel-edit-btn{opacity:1}.channel-edit-btn:hover{background:var(--bg-tertiary)}.channel-dropdown-divider{background:var(--border-primary);height:1px;margin:var(--space-xs)0}.channel-new-btn{font-weight:500;color:var(--color-primary)!important}.channel-new-btn:hover{background:var(--color-primary-light)!important}.channel-modal{background:var(--bg-elevated);border:1px solid var(--border-primary);border-radius:var(--radius-xl);width:480px;max-width:90vw;box-shadow:var(--shadow-lg);animation:fadeInScale var(--transition-normal)ease-out;flex-direction:column;display:flex}.channel-modal-header{padding:var(--space-lg)var(--space-xl);border-bottom:1px solid var(--border-primary);justify-content:space-between;align-items:center;display:flex}.channel-modal-header h2{color:var(--text-primary);margin:0;font-size:1.125rem;font-weight:700}.channel-modal-body{padding:var(--space-xl);gap:var(--space-lg);flex-direction:column;display:flex}.channel-modal-error{border-radius:var(--radius-md);padding:var(--space-sm)var(--space-md);color:var(--color-danger);background:#ef44441a;border:1px solid #ef44444d;font-size:.8125rem}.channel-modal-footer{justify-content:flex-end;align-items:center;gap:var(--space-sm);padding:var(--space-md)var(--space-xl);border-top:1px solid var(--border-primary);display:flex}.channel-preview{align-items:center;gap:var(--space-md);padding:var(--space-md);background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-primary);display:flex}.channel-preview-avatar{border-radius:var(--radius-lg);flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.5rem;display:flex}.channel-preview-name{color:var(--text-primary);font-size:1.125rem;font-weight:600}.channel-field{gap:var(--space-xs);flex-direction:column;display:flex}.channel-field label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:.75rem;font-weight:600}.emoji-picker{gap:var(--space-xs);flex-wrap:wrap;display:flex}.emoji-option{border-radius:var(--radius-md);cursor:pointer;background:var(--bg-secondary);width:40px;height:40px;transition:all var(--transition-fast);border:2px solid #0000;justify-content:center;align-items:center;font-size:1.25rem;display:flex}.emoji-option:hover{background:var(--bg-hover);transform:scale(1.1)}.emoji-option.active{border-color:var(--color-primary);background:var(--color-primary-light);box-shadow:0 0 0 2px var(--color-primary-light)}.color-swatches{gap:var(--space-sm);flex-wrap:wrap;display:flex}.color-swatch{border-radius:var(--radius-full);cursor:pointer;width:32px;height:32px;transition:all var(--transition-fast);border:3px solid #0000}.color-swatch:hover{transform:scale(1.15)}.color-swatch.active{border-color:var(--text-primary);box-shadow:0 0 0 2px var(--bg-primary),0 0 0 4px currentColor}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes slideInLeft{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes bounceIn{0%{opacity:0;transform:scale(.8)}50%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}.skeleton{background:linear-gradient(90deg,var(--skeleton-bg)25%,var(--skeleton-shine)50%,var(--skeleton-bg)75%);border-radius:var(--radius-md);background-size:200% 100%;animation:1.5s ease-in-out infinite shimmer}@media (max-width:768px){.sidebar{transform:translate(-100%)}.sidebar.mobile-open{width:var(--sidebar-width);box-shadow:var(--shadow-lg);transform:translate(0)}.app-main{margin-left:0}.topbar{left:0}.slide-panel{width:100vw;max-width:100vw}.grid-view{grid-template-columns:1fr}.list-header,.list-row{grid-template-columns:2fr 1fr 1fr}.list-header-cell:nth-child(n+4),.list-row>:nth-child(n+4){display:none}.detail-meta{grid-template-columns:1fr}.kanban-board{padding-left:var(--space-sm)}}@media (max-width:480px){.auth-card{padding:var(--space-lg)}.content-area{padding:var(--space-md)}}
