*{margin:0;padding:0;box-sizing:border-box}@keyframes skeletonShimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{background:linear-gradient(90deg,var(--bg-tertiary, #f0f0f0) 25%,var(--bg-secondary, #e8e8e8) 50%,var(--bg-tertiary, #f0f0f0) 75%);background-size:200% 100%;animation:skeletonShimmer 1.5s ease-in-out infinite;border-radius:var(--radius-md, 8px)}.skeleton-text{height:14px;margin-bottom:8px;border-radius:4px}.skeleton-text.short{width:60%}.skeleton-text.medium{width:80%}.skeleton-text.long{width:100%}.skeleton-title{height:24px;width:40%;margin-bottom:12px}.skeleton-avatar{width:40px;height:40px;border-radius:50%;flex-shrink:0}.skeleton-card{padding:16px;border-radius:var(--radius-lg, 12px);background:var(--bg-primary, #fff);border:1px solid var(--border-subtle, #eee)}.skeleton-stat-card{display:flex;align-items:center;gap:12px;padding:16px 20px;border-radius:var(--radius-lg, 12px);background:var(--bg-primary, #fff);border:1px solid var(--border-subtle, #eee)}.skeleton-stat-icon{width:48px;height:48px;border-radius:var(--radius-md, 8px)}.skeleton-stat-content{flex:1;display:flex;flex-direction:column;gap:6px}.skeleton-stat-number{height:28px;width:50px}.skeleton-stat-label{height:14px;width:80px}.skeleton-message{display:flex;gap:12px;padding:12px 0}.skeleton-message-content{flex:1;display:flex;flex-direction:column;gap:8px}.skeleton-spreadsheet-card{padding:20px;border-radius:var(--radius-lg, 12px);background:var(--bg-primary, #fff);border:1px solid var(--border-subtle, #eee);display:flex;flex-direction:column;gap:12px}.skeleton-spreadsheet-header{display:flex;align-items:center;gap:12px}.skeleton-spreadsheet-icon{width:40px;height:40px;border-radius:var(--radius-md, 8px)}.skeleton-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.skeleton-calendar-day{aspect-ratio:1;border-radius:var(--radius-sm, 6px)}.skeleton-section{display:none}.skeleton-section.loading{display:block}.content-loading .real-content{display:none!important}.content-loading .skeleton-section{display:block}body.dark-mode .skeleton{background:linear-gradient(90deg,var(--bg-secondary, #2a2a2a) 25%,var(--bg-tertiary, #333) 50%,var(--bg-secondary, #2a2a2a) 75%);background-size:200% 100%}body.dark-mode .skeleton-card,body.dark-mode .skeleton-stat-card,body.dark-mode .skeleton-spreadsheet-card{background:var(--bg-secondary, #1e1e1e);border-color:var(--border-subtle, #333)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#0000001a;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#0003}*{scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.1) transparent}.doc-panel-body,.doc-editor-container,.spreadsheet-panel-body,.spreadsheet-table-container{scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.08) transparent}.doc-panel-body::-webkit-scrollbar,.doc-editor-container::-webkit-scrollbar,.spreadsheet-panel-body::-webkit-scrollbar,.spreadsheet-table-container::-webkit-scrollbar{width:5px;height:5px}.doc-panel-body::-webkit-scrollbar-thumb,.doc-editor-container::-webkit-scrollbar-thumb,.spreadsheet-panel-body::-webkit-scrollbar-thumb,.spreadsheet-table-container::-webkit-scrollbar-thumb{background:#00000014;border-radius:3px}.doc-panel-body::-webkit-scrollbar-thumb:hover,.doc-editor-container::-webkit-scrollbar-thumb:hover,.spreadsheet-panel-body::-webkit-scrollbar-thumb:hover,.spreadsheet-table-container::-webkit-scrollbar-thumb:hover{background:#00000026}.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.hide-scrollbar::-webkit-scrollbar{display:none}html{height:100%;overflow-y:auto;overflow-x:hidden}:root{--bottom-nav-height: 70px;--nav-bottom-gap: 8px;--nav-bottom-gap: max( calc(env(safe-area-inset-bottom, 0px) - 12px) , 8px);--nav-safe-bottom: calc(var(--bottom-nav-height) + var(--nav-bottom-gap));--keyboard-inset: 0px;--bg-body: #F5F5F7;--bg-surface: #FFFFFF;--bg-surface-soft: rgba(255, 255, 255, .82);--accent: #0070F3;--accent-soft: rgba(0, 112, 243, .12);--accent-hover: #0051CC;--text-main: #111111;--text-muted: #6E6E73;--text-light: #86868B;--border-subtle: rgba(0, 0, 0, .06);--border-medium: rgba(0, 0, 0, .12);--nav-item-active-bg: rgba(0, 0, 0, .07);--nav-item-active-bg-hover: rgba(0, 0, 0, .11);--success: #34C759;--success-soft: rgba(52, 199, 89, .12);--warning: #FF9500;--warning-soft: rgba(255, 149, 0, .12);--danger: #FF3B30;--danger-soft: rgba(255, 59, 48, .12);--info: #0070F3;--info-soft: rgba(0, 112, 243, .12);--online: #34C759;--offline: #D1D1D6;--radius-sm: 10px;--radius-md: 14px;--radius-lg: 18px;--radius-xl: 24px;--radius-nav-item: 8px;--shadow-soft: 0 18px 45px rgba(15, 23, 42, .12);--shadow-subtle: 0 8px 24px rgba(15, 23, 42, .06);--shadow-card: 0 2px 16px rgba(0, 0, 0, .08);--glass-bg: rgba(255, 255, 255, .82);--glass-border: rgba(255, 255, 255, .6);--glass-blur: 18px;--transition-fast: .15s ease-out;--transition-medium: .22s ease-out;--transition-slow: .35s ease-out;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--primary-blue: var(--accent);--primary-dark: var(--accent-hover);--white: #FFFFFF;--light-gray: var(--bg-body);--gray: var(--text-muted);--dark-gray: var(--text-main);--shadow-md: var(--shadow-card);--shadow-lg: var(--shadow-soft)}body.dark-mode{--bg-body: #000000;--bg-surface: #1C1C1E;--bg-surface-soft: rgba(28, 28, 30, .95);--text-main: #F5F5F7;--text-muted: #98989D;--text-light: #636366;--border-subtle: rgba(255, 255, 255, .1);--border-medium: rgba(255, 255, 255, .15);--nav-item-active-bg: rgba(255, 255, 255, .1);--nav-item-active-bg-hover: rgba(255, 255, 255, .15);--success: #32D74B;--success-soft: rgba(50, 215, 75, .15);--warning: #FF9F0A;--warning-soft: rgba(255, 159, 10, .15);--danger: #FF453A;--danger-soft: rgba(255, 69, 58, .15);--info: #0A84FF;--info-soft: rgba(10, 132, 255, .15);--accent: #0A84FF;--accent-soft: rgba(10, 132, 255, .15);--accent-hover: #0070F3;--offline: #3A3A3C;--shadow-soft: 0 18px 45px rgba(0, 0, 0, .6);--shadow-subtle: 0 8px 24px rgba(0, 0, 0, .5);--shadow-card: 0 2px 16px rgba(0, 0, 0, .7);--glass-bg: rgba(28, 28, 30, .95);--glass-border: rgba(255, 255, 255, .1)}body.dark-mode ::-webkit-scrollbar-thumb{background:#ffffff1a}body.dark-mode ::-webkit-scrollbar-thumb:hover{background:#ffffff2e}body.dark-mode *{scrollbar-color:rgba(255,255,255,.1) transparent}html.monochrome-mode{filter:grayscale(100%)!important}html.monochrome-mode:not(.dark-mode){--accent: #000000;--primary-blue: #000000}html.monochrome-mode:not(.dark-mode) .btn-primary,html.monochrome-mode:not(.dark-mode) .unified-btn-primary,html.monochrome-mode:not(.dark-mode) .admin-btn-primary{background:#000!important;color:#fff!important}html.monochrome-mode:not(.dark-mode) .btn-primary:hover,html.monochrome-mode:not(.dark-mode) .unified-btn-primary:hover,html.monochrome-mode:not(.dark-mode) .admin-btn-primary:hover{background:#333!important}body.dark-mode .doc-panel-body::-webkit-scrollbar-thumb,body.dark-mode .doc-editor-container::-webkit-scrollbar-thumb,body.dark-mode .spreadsheet-panel-body::-webkit-scrollbar-thumb,body.dark-mode .spreadsheet-table-container::-webkit-scrollbar-thumb{background:#ffffff0f}body.dark-mode .doc-panel-body::-webkit-scrollbar-thumb:hover,body.dark-mode .doc-editor-container::-webkit-scrollbar-thumb:hover,body.dark-mode .spreadsheet-panel-body::-webkit-scrollbar-thumb:hover,body.dark-mode .spreadsheet-table-container::-webkit-scrollbar-thumb:hover{background:#ffffff1f}body.dark-mode .doc-panel-body,body.dark-mode .doc-editor-container,body.dark-mode .spreadsheet-panel-body,body.dark-mode .spreadsheet-table-container{scrollbar-color:rgba(255,255,255,.06) transparent}body.dark-mode .week-time-slot:after{background:var(--border-subtle)}body.dark-mode .week-day-column{border-right-color:var(--border-light);background:var(--bg-surface)}body.dark-mode .week-day-header{border-bottom-color:var(--border-subtle)}body.dark-mode .week-time-cell{border-bottom-color:var(--border-light)}body.dark-mode .week-time-cell:before{background:var(--border-light)}body.dark-mode .week-time-cell:hover{background:#ffffff08}body.dark-mode .week-event-block{background:var(--bg-body);border-color:var(--border-subtle);box-shadow:0 2px 8px #0000004d}body.dark-mode .week-event-block:hover{box-shadow:0 6px 16px #0006}body.dark-mode .calendar-day:hover{background-color:#ffffff1a}body.dark-mode .calendar-day.today{background-color:var(--accent);color:#fff}body.dark-mode .week-day-column.today-column,body.dark-mode .week-day-column.today-column .week-time-cell{background:transparent}body.dark-mode .activity-icon,body.dark-mode .stat-icon,body.dark-mode .notification-icon{opacity:1}body.dark-mode input[type=text],body.dark-mode input[type=email],body.dark-mode input[type=date],body.dark-mode input[type=time],body.dark-mode input[type=number],body.dark-mode textarea,body.dark-mode select,body.dark-mode input{background:#1c1c1e;border-color:var(--border-subtle);color:var(--text-main)}body.dark-mode input:focus,body.dark-mode textarea:focus,body.dark-mode select:focus{background:#2c2c2e;border-color:var(--accent);color:var(--text-main)}body.dark-mode select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2398989D' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:12px;padding-right:36px}body.dark-mode input[type=file]{background:#1c1c1e;border-color:var(--border-subtle);color:var(--text-main)}body.dark-mode input[type=checkbox],body.dark-mode input[type=radio]{accent-color:var(--accent);background:#1c1c1e;border-color:var(--border-subtle)}body.dark-mode .custom-dropdown-selected,body.dark-mode .custom-dropdown-options,body.dark-mode .custom-dropdown-option,body.dark-mode .form-group input,body.dark-mode .form-group textarea,body.dark-mode .form-group select,body.dark-mode .modal-content input,body.dark-mode .modal-content textarea,body.dark-mode .modal-content select{background:#1c1c1e;color:var(--text-main);border-color:var(--border-subtle)}body.dark-mode .modal-content select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2398989D' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:12px;padding-right:36px}body.dark-mode .profile-avatar-large{background:var(--bg-surface);border:1px solid var(--border-subtle)}body.dark-mode input[type=text]:focus,body.dark-mode input[type=email]:focus,body.dark-mode input[type=date]:focus,body.dark-mode input[type=time]:focus,body.dark-mode input[type=number]:focus,body.dark-mode textarea:focus,body.dark-mode select:focus{background:#2c2c2e;border-color:var(--accent)}body.dark-mode .btn-secondary{background:var(--bg-body);border-color:var(--border-subtle);color:var(--text-main)}body.dark-mode .btn-secondary:hover{background:var(--bg-surface);border-color:var(--border-medium)}body.dark-mode .chat-input-container{background:#0006}body.dark-mode .chat-input{background:var(--bg-body);border-color:var(--border-subtle);color:var(--text-main)}body.dark-mode .event-item,body.dark-mode .task-item{background:var(--bg-surface);border-color:var(--border-subtle)}body.dark-mode .custom-dropdown-selected{background:var(--bg-body);border-color:var(--border-subtle)}body.dark-mode .custom-dropdown-options{background:var(--bg-surface);border-color:var(--border-subtle)}body.dark-mode .dropdown-option:hover{background:#0a84ff26}.no-animations *,.no-animations *:before,.no-animations *:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}body,button,input,textarea,select{font-family:system-ui,-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:var(--bg-body);color:var(--text-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;font-size:15px;line-height:1.5;letter-spacing:-.01em;min-height:100vh;padding:0;margin:0}.app-container{display:flex;width:100%;max-width:100%;height:100vh;margin:0;background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));overflow:hidden;position:relative}.sidebar{width:200px;background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border-right:1px solid var(--glass-border);display:flex;flex-direction:column;overflow:hidden;padding:20px 12px}.sidebar-header{padding:4px 4px 20px;margin-bottom:8px}.logo{display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:var(--radius-nav-item);text-decoration:none;color:var(--text-main);transition:background-color var(--transition-fast)}.logo:hover{background-color:var(--accent-soft)}.logo-mark{width:28px;height:28px;display:block;flex-shrink:0}.logo-wordmark{font-size:17px;font-weight:650;letter-spacing:-.02em;line-height:1;white-space:nowrap}.logo-x{color:var(--accent)}.sidebar-nav{flex:1;padding:0 4px;overflow-y:auto;display:flex;flex-direction:column;gap:4px}.nav-item{width:100%;display:flex;align-items:center;gap:12px;padding:10px 12px;border:none;background:transparent;border-radius:var(--radius-nav-item);cursor:pointer;font-size:15px;font-weight:500;color:var(--text-muted);transition:all var(--transition-fast);position:relative;letter-spacing:-.01em;-webkit-tap-highlight-color:transparent}.nav-item:hover{background-color:var(--accent-soft);color:var(--text-main);transform:translateY(-1px)}.nav-item.active{background-color:var(--nav-item-active-bg);color:var(--text-main);font-weight:600;border:none}.nav-item.active:hover{background-color:var(--nav-item-active-bg-hover);color:var(--text-main)}.nav-item .icon{width:20px;height:20px;flex-shrink:0;stroke-width:2;opacity:.85;transition:opacity var(--transition-fast),stroke-width var(--transition-fast)}.nav-item:hover .icon,.nav-item.active .icon{opacity:1}.nav-item.active .icon{stroke-width:2.25}.hide-sidebar-icons .nav-item .icon{display:none}.hide-sidebar-icons .nav-item{justify-content:flex-start;padding-left:20px}.notification-badge{margin-left:auto;background:var(--danger);color:#fff;font-size:11px;padding:3px 7px;border-radius:999px;font-weight:700;min-width:20px;text-align:center;box-shadow:0 2px 8px #ff3b304d}.sidebar-footer{padding:16px 8px 0;margin-top:16px}.team-section{flex:1;display:flex;flex-direction:column;padding:var(--spacing-md);overflow:hidden}.team-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding:12px 8px;background:var(--bg-surface-soft);border-radius:var(--radius-md);box-shadow:var(--shadow-subtle)}.team-header h3{font-size:11px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.8px}.btn-icon-small{width:32px;height:32px;border-radius:50%;border:none;background:var(--accent);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;transition:all var(--transition-fast);box-shadow:var(--shadow-subtle)}.btn-icon-small:hover{background:#06d;transform:scale(1.05);box-shadow:var(--shadow-card)}#createTeamBtn:hover{background:#06d;transform:translateY(-1px);box-shadow:var(--shadow-card)}#createTeamBtn:active{transform:translateY(0);box-shadow:0 2px 4px #0000001a}.team-list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:10px}.teammate-card{display:flex;align-items:center;gap:14px;padding:18px 20px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-subtle)}body.dark-mode .teammate-card{background:var(--bg-surface);border-color:var(--border-medium);box-shadow:0 2px 16px #00000052}body.dark-mode .teammate-card{background:var(--bg-body);border-color:var(--border-medium);box-shadow:0 2px 12px #00000052}body.dark-mode .teammate-card:hover{background:var(--bg-surface);border-color:var(--accent);box-shadow:0 2px 16px #0070f31f}.teammate-card:hover{background:var(--accent-soft);box-shadow:var(--shadow-card);border-color:#0070f333}.teammate-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#8e8e93,#636366);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:13px;flex-shrink:0;letter-spacing:.5px;box-shadow:0 2px 4px #00000014}.teammate-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.teammate-name{font-weight:600;font-size:14px;color:var(--text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:-.01em;line-height:1.2}.teammate-occupation{font-size:12px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.role-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;line-height:1}.role-badge.owner{background:#ffcc0026;color:#960;border:1px solid rgba(255,204,0,.25)}.role-badge.admin{background:var(--accent-soft);color:var(--accent);border:1px solid rgba(0,112,243,.25)}.role-badge.member{background:#8e8e931f;color:#636366;border:1px solid rgba(142,142,147,.2)}.sidebar-footer{padding:var(--spacing-md);border-top:1px solid var(--border-subtle)}.user-profile{display:flex;align-items:center;gap:var(--spacing-md)}.user-avatar{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--white);font-size:1.2rem}.avatar-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit}.user-avatar,#topBarAvatar,.profile-avatar-large,.member-avatar,.teammate-avatar,.message-avatar,.assignee-avatar,.assignee-option-avatar,.dropdown-assignee-avatar,.task-chip-avatar,.chat-intro-avatar,.chat-header-avatar,.chat-room-icon-avatar,.chat-new-member-avatar,.chat-settings-member-avatar,.chat-settings-add-avatar,.mention-item-avatar,.reaction-avatar,.collab-member-avatar,.ov-item-avatar,.ov-ann-avatar,.sr-member-avatar,.sr-member-trigger-avatar,.docsign-av{position:relative;overflow:hidden;background:var(--accent);color:#fff}.message-avatar.teamster-bot{background:var(--bg-surface-soft, #E5E5EA)}.collab-member-avatar{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:600;flex-shrink:0}.user-info{flex:1}.user-name{font-weight:600;font-size:1.05rem;margin-bottom:2px;line-height:1.2}.user-status{display:none}.status-indicator{width:8px;height:8px;border-radius:50%}.status-indicator.online{background-color:var(--online)}.main-content{flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--bg-surface);min-height:0}.top-bar{background-color:var(--bg-surface);padding:var(--spacing-md) var(--spacing-xl);display:flex;justify-content:space-between;align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);position:relative;z-index:500;overflow:visible}.search-wrapper{flex:1;max-width:600px;position:relative}.topbar-avatar{display:inline-flex;width:40px;height:40px;padding:0;border:none;border-radius:50%;background:var(--accent);color:#fff;font-weight:700;font-size:14px;align-items:center;justify-content:center;box-shadow:var(--shadow-subtle);flex-shrink:0;cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.topbar-avatar:hover{transform:translateY(-1px);box-shadow:var(--shadow-soft)}.topbar-avatar:active{transform:translateY(0) scale(.96)}.search-bar{display:flex;align-items:center;gap:12px;background:var(--bg-surface);padding:10px 18px;border-radius:999px;border:1.5px solid var(--border-subtle);transition:all var(--transition-fast)}.search-bar:focus-within{background:var(--bg-surface);border-color:var(--accent)}body.dark-mode .search-bar{background:transparent;border-color:var(--border-subtle)}body.dark-mode .search-bar:focus-within{background:transparent;border-color:var(--accent)}.search-bar i.fa-search{color:var(--text-muted);font-size:16px}.search-bar input{flex:1;border:none;background:transparent;outline:none;font-size:15px;color:var(--text-main);font-family:var(--font-family)}.search-bar input::placeholder{color:var(--text-muted)}body.dark-mode .search-bar input{color:var(--text-main)}body.dark-mode .search-bar input::placeholder{color:var(--text-muted)}.search-clear{width:24px;height:24px;border-radius:50%;border:none;background:var(--neutral-200);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);padding:0}.search-clear:hover{background:var(--neutral-300);color:var(--text-main)}.search-results{position:absolute;top:calc(100% + 8px);left:0;right:0;background:#fff;border:1px solid var(--neutral-200);border-radius:var(--radius-lg);box-shadow:0 12px 40px #00000026,0 4px 12px #0000001a;max-height:380px;overflow-y:auto;z-index:10001;opacity:0;transform:translateY(-8px);transition:opacity .15s ease,transform .15s ease;pointer-events:none}.project-context-menu{position:fixed;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:10px;box-shadow:0 8px 32px #00000026,0 2px 8px #00000014;padding:6px;min-width:160px;z-index:10000}.search-results.visible{opacity:1;transform:translateY(0);pointer-events:auto}.search-results::-webkit-scrollbar{width:6px}.search-results::-webkit-scrollbar-track{background:transparent}.search-results::-webkit-scrollbar-thumb{background:var(--neutral-300);border-radius:3px}.search-results-section{padding:12px 8px;border-bottom:1px solid var(--border-subtle)}.search-results-section:last-child{border-bottom:none}.search-section-title{font-size:11px;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;padding:0 8px;display:flex;align-items:center;gap:6px}.search-section-title i{font-size:10px}.search-result-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--radius-md);cursor:pointer;transition:all .1s ease;margin:2px 0}.search-result-item:hover,.search-result-item.active{background:var(--accent-soft)}.search-result-item.active{background:var(--accent)}.search-result-item.active .search-result-title,.search-result-item.active .search-result-description{color:#fff}.search-result-item.active .search-result-icon{background:#fff3;color:#fff}.search-result-icon{width:32px;height:32px;border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:13px;transition:all .1s ease}.search-result-item:hover .search-result-icon{background:var(--accent);color:#fff}.search-result-content{flex:1;min-width:0}.search-result-title{font-size:14px;font-weight:600;color:var(--text-main);margin-bottom:2px;display:flex;align-items:center;gap:8px;min-width:0}.search-result-title>:first-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.search-result-breadcrumb{font-weight:400;color:var(--text-muted);font-size:13px}.search-result-item.active .search-result-breadcrumb{color:#ffffffb3}.search-result-description{font-size:12px;color:var(--text-secondary);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-task-status{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;padding:4px 10px;border-radius:999px;vertical-align:middle;white-space:nowrap;box-shadow:0 1px 3px #0000001a;flex-shrink:0}.search-task-status .pill-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.search-result-tag{display:inline-block;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:var(--accent);background:#007aff1a;padding:2px 6px;border-radius:4px;margin-right:6px;vertical-align:middle}.search-result-item.active .search-result-tag{background:#fff3;color:#fff}.search-result-command .command-icon{background:linear-gradient(135deg,#007aff26,#5856d626)}.search-result-command.active .command-icon{background:#fff3}.search-result-hint{font-size:11px;color:var(--text-muted);background:var(--light-gray);padding:2px 6px;border-radius:4px;flex-shrink:0;opacity:0;transition:opacity .1s ease}.search-result-item.active .search-result-hint{opacity:1;background:#fff3;color:#fff}.search-no-results{padding:32px;text-align:center;color:var(--text-muted);font-size:14px}.search-highlight{animation:searchHighlightPulse 1.5s ease-out}@keyframes searchHighlightPulse{0%{box-shadow:0 0 #007aff66}30%{box-shadow:0 0 0 8px #007aff33}to{box-shadow:0 0 #007aff00}}body.dark-mode .search-highlight{animation:searchHighlightPulseDark 1.5s ease-out}@keyframes searchHighlightPulseDark{0%{box-shadow:0 0 #64a0ff66}30%{box-shadow:0 0 0 8px #64a0ff33}to{box-shadow:0 0 #64a0ff00}}.top-bar-actions{display:flex;gap:var(--spacing-md);align-items:center;overflow:visible}.top-bar-actions>div{overflow:visible}#notificationsBtn{overflow:visible}.icon-btn{width:40px;height:40px;border-radius:50%;border:none;background-color:transparent;color:var(--text-muted);cursor:pointer;position:relative;display:flex;align-items:center;justify-content:center;font-size:1.2rem;overflow:visible;transition:background-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.icon-btn:hover{background-color:var(--light-gray);color:var(--accent);transform:scale(1.05)}.notification-dot{position:absolute;top:8px;right:8px;width:8px;height:8px;background-color:var(--danger);border-radius:50%}.settings-dropdown{position:absolute;top:50px;right:0;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:10px;box-shadow:0 8px 32px #0000001f,0 2px 8px #0000000f;min-width:200px;padding:6px;display:none;z-index:10000;animation:slideDown .2s ease}.settings-dropdown.active{display:block}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.dropdown-item{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:6px;cursor:pointer;transition:background .15s ease;color:var(--text-main);font-size:13px;font-weight:500;background:transparent;border:none;width:100%}.dropdown-item:hover{background:var(--bg-hover, rgba(0, 0, 0, .04))}.dropdown-item i{width:18px;text-align:center;color:var(--text-muted);font-size:14px}.settings-dropdown .dropdown-item:first-child i{color:var(--accent, #0A84FF)}.settings-dropdown .dropdown-item:last-child i{color:#ef4444}.dropdown-divider{height:1px;background-color:var(--border-subtle);margin:var(--spacing-sm) 0}.notifications-dropdown{position:absolute;top:50px;right:0;background:var(--bg-surface);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-subtle);border-radius:14px;box-shadow:0 6px 20px #00000014;width:320px;max-height:380px;display:none;z-index:10000;animation:slideDown .2s ease;overflow:hidden;display:flex;flex-direction:column}.notifications-dropdown[style*="display: block"],.notifications-dropdown[style*="display:block"],.notifications-dropdown.active{display:flex!important}.notifications-header{padding:16px 20px;background-color:transparent;display:flex;justify-content:space-between;align-items:center}.notifications-header h3{font-size:17px;font-weight:700;color:var(--text-main);margin:0;letter-spacing:-.02em}.announce-composer{display:flex;gap:8px;align-items:center;padding:0 20px 12px;flex-shrink:0}.announce-composer[hidden]{display:none}.announce-input{flex:1;min-width:0;background:var(--bg-surface-soft);border:1px solid var(--border-subtle);border-radius:999px;padding:8px 14px;font-size:13px;font-family:inherit;color:var(--text-main);outline:none;transition:border-color var(--transition-fast)}.announce-input::placeholder{color:var(--text-tertiary)}.announce-input:focus{border-color:var(--accent, #3b82f6)}.announce-input:disabled{opacity:.6;cursor:default}.announce-send-btn{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:var(--accent, #3b82f6);color:#fff;font-size:12px;cursor:pointer;transition:opacity var(--transition-fast),background-color .2s ease,transform .15s ease}.announce-send-btn:hover:not(:disabled){opacity:.85}.announce-send-btn:disabled{opacity:.45;cursor:default}.announce-send-btn.sending:disabled,.announce-send-btn.success:disabled{opacity:1}.announce-send-btn.sending{cursor:wait}.announce-send-btn.success{background:var(--success, #34C759);animation:announce-send-pop .35s cubic-bezier(.34,1.56,.64,1)}@keyframes announce-send-pop{0%{transform:scale(1)}45%{transform:scale(.82)}to{transform:scale(1)}}.announce-send-btn.success i{animation:announce-check-in .3s cubic-bezier(.34,1.56,.64,1)}@keyframes announce-check-in{0%{transform:scale(.3);opacity:0}to{transform:scale(1);opacity:1}}@media(prefers-reduced-motion:reduce){.announce-send-btn,.announce-send-btn.success,.announce-send-btn.success i{animation:none;transition:background-color .2s ease}}.notifications-actions{display:flex;gap:8px;align-items:center}.filter-btn{background:var(--bg-surface-soft);border:1px solid var(--border-subtle);color:var(--text-main);font-size:12px;font-weight:600;cursor:pointer;padding:6px 14px;border-radius:999px;transition:all var(--transition-fast)}.filter-btn:hover{background-color:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.filter-btn.active{background-color:var(--accent);border-color:var(--accent);color:#fff}.mark-read-btn{background:none;border:none;color:var(--accent);font-size:12px;font-weight:600;cursor:pointer;padding:6px 12px;border-radius:var(--radius-md);transition:all var(--transition-fast);margin-left:auto}.mark-read-btn:hover{background-color:var(--accent-soft)}.notifications-list{flex:1;overflow-y:auto;min-height:0;max-height:280px}.notification-item{display:flex;gap:10px;padding:10px 14px;cursor:pointer;transition:all var(--transition-fast)}.notification-item:hover{background-color:var(--bg-surface-soft)}.notification-item.unread:hover{background:#0070f314}.notification-icon{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:13px}.notification-content{flex:1;min-width:0}.notification-text{font-size:.85rem;color:var(--text-main);line-height:1.35;display:-webkit-box;line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.notification-text strong{font-weight:600}.notification-time{font-size:.7rem;color:var(--text-muted);margin-top:2px}.notification-item{animation:notificationFadeIn var(--transition-medium) ease forwards}@keyframes notificationFadeIn{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.notification-icon.task-icon{background-color:#34c7591f;color:var(--success)}.notification-icon.message-icon{background:#0070f31f;color:var(--accent)}.notification-icon.team-icon{background-color:#ffcc001f;color:var(--warning)}.notification-icon.calendar-icon{background:#af52de1f;color:#af52de}.api-scope-presets{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:14px 0 8px}.api-scope-presets-label{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-right:4px}.api-preset-btn{background:var(--bg-surface-soft);border:1px solid var(--border-subtle);color:var(--text-main);font-size:12px;font-weight:600;padding:5px 12px;border-radius:999px;cursor:pointer;transition:all var(--transition-fast)}.api-preset-btn:hover{border-color:var(--accent, #3b82f6)}.api-scope-table{border:1px solid var(--border-subtle);border-radius:8px;overflow:hidden}.api-scope-table>*:last-child{border-bottom:none}.api-scope-table-head{display:flex;align-items:center;justify-content:space-between;padding:8px 14px;font-size:11px;font-weight:700;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.6px;background:var(--bg-surface-soft);border-bottom:1px solid var(--border-subtle)}.api-scope-group-head{padding:8px 14px;font-size:11px;font-weight:700;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.6px;background:var(--bg-surface-soft);border-bottom:1px solid var(--border-subtle)}.api-scope-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 14px;border-bottom:1px solid var(--border-subtle);transition:background var(--transition-fast)}.api-scope-row:hover{background:var(--bg-surface-soft)}.api-scope-name{font-size:13px;color:var(--text-main)}.api-scope-dropdown{flex-shrink:0}.api-scope-trigger{width:172px}.api-scope-value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.api-scope-dropdown .unified-dropdown-menu{left:auto;right:0;width:172px}.api-expiry-soon{color:var(--warning, #ff9500);font-weight:600}.api-expiry-bad{color:var(--danger, #ff3b30);font-weight:600}.api-scope-hint{padding:8px 0 0;font-size:12px;line-height:1.5;color:var(--text-tertiary)}.api-expiry-warning{display:flex;align-items:flex-start;gap:8px;margin-top:8px;padding:8px 12px;background:var(--danger-soft);color:var(--danger);border:1px solid rgba(255,59,48,.25);border-radius:8px;font-size:12px;line-height:1.5}.api-expiry-warning[hidden]{display:none}.api-expiry-warning i{margin-top:2px;flex-shrink:0}.notification-icon.announce-icon,.overview-notification-icon.announce-icon{background:#ff453a1f;color:#ff453a}.notification-icon.link-icon,.overview-notification-icon.link-icon{background:#5ac8fa1f;color:#5ac8fa}.notification-icon.project-icon,.overview-notification-icon.project-icon{background:#5856d61f;color:#5856d6}.notification-icon.milestone-icon,.overview-notification-icon.milestone-icon{background:#ff95001f;color:#ff9500}.notification-icon.doc-icon,.overview-notification-icon.doc-icon{background:#8e8e9324;color:#8e8e93}.notification-icon.sheet-icon,.overview-notification-icon.sheet-icon{background:#30b0c71f;color:#30b0c7}.notification-icon.lead-icon,.overview-notification-icon.lead-icon{background:#ff2d551f;color:#ff2d55}.notification-icon.alert-icon,.overview-notification-icon.alert-icon{background:#ff3b301f;color:#ff3b30}.notification-icon.reminder-icon,.overview-notification-icon.reminder-icon{background:#af52de1f;color:#af52de}.notification-icon.info-icon,.overview-notification-icon.info-icon{background:#0070f31f;color:var(--accent)}.notification-icon.generic-icon,.overview-notification-icon.generic-icon{background:#8e8e931a;color:var(--text-muted, #8e8e93)}.notification-content{flex:1}.notification-text{font-size:14px;color:var(--text-main);margin-bottom:6px;line-height:1.4}.notification-time{font-size:12px;color:var(--text-muted);font-weight:500}.no-notifications{padding:40px 24px;text-align:center;color:var(--text-muted);font-size:14px;font-weight:500}.notification-badge{position:absolute;top:-4px;right:-4px;background-color:var(--danger);color:#fff;font-size:10px;font-weight:700;padding:3px 7px;border-radius:999px;min-width:20px;text-align:center;box-shadow:0 2px 4px #ff3b304d;z-index:1000}.content-section{display:none;flex:1;overflow-y:auto;overflow-x:hidden;padding:var(--spacing-xl);padding-bottom:120px;min-height:0}#chat-section.content-section,#operator-section.content-section{padding:10px;overflow:hidden}.content-section.active{display:flex;flex-direction:column;animation:fadeSlideIn var(--transition-medium) ease forwards}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.section-header{margin-bottom:var(--spacing-xl);display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:var(--spacing-md)}.section-header-content{flex:1;min-width:250px}.section-header-actions{display:flex;gap:var(--spacing-sm);align-items:center}.section-header h1{font-size:2rem;color:var(--text-main);font-weight:600}.section-subtitle{color:var(--text-muted);font-size:.95rem;width:100%}@media(max-width:768px){.section-header{flex-direction:column}.nav-item{padding:8px;max-width:56px}.search-bar{padding:6px 10px;min-height:34px}.section-header-actions button{flex:1}}.activity-feed{display:flex;flex-direction:column;gap:8px}.activity-item{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--bg-surface);border-radius:var(--radius-md);transition:background .15s ease}.activity-item.activity-clickable{cursor:pointer}.activity-item.activity-clickable:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.activity-item:hover{background:var(--bg-surface-soft)}.activity-icon{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0;background:var(--accent-soft);color:var(--accent)}.activity-icon.task-icon,.activity-icon.message-icon,.activity-icon.calendar-icon,.activity-icon.team-icon,.activity-icon.sheet-icon,.activity-icon.doc-icon,.activity-icon.project-icon,.activity-icon.link-icon,.activity-icon.lead-icon,.activity-icon.announce-icon,.activity-icon.alert-icon,.activity-icon.reminder-icon,.activity-icon.info-icon,.activity-icon.generic-icon{background:var(--accent-soft);color:var(--accent)}.activity-icon.milestone-icon{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#d97706}.activity-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.activity-header{font-size:14px;font-weight:500;color:var(--text-main);line-height:1.4}.activity-time{font-size:12px;color:var(--text-muted)}.highlight{color:var(--accent);font-weight:600}.chat-container{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-subtle);display:flex;flex-direction:column;max-height:calc(100vh - 200px);min-height:400px;overflow:hidden}.unified-modal-container form{display:contents}.chat-messages{flex:1;padding:20px;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:16px}.message{display:flex;gap:12px;animation:messageSlideIn var(--transition-medium) ease}.message+.message[data-sender-changed=true]{margin-top:20px}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.message-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;font-weight:700;font-size:13px;background:var(--accent);box-shadow:0 2px 4px #00000014;letter-spacing:.5px;position:relative;overflow:hidden}.message-avatar-photo{width:100%;height:100%;object-fit:cover;border-radius:50%;position:absolute;inset:0}.message-content{flex:1;display:flex;flex-direction:column;align-items:flex-start;min-width:0;position:relative}.message-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.message-author{font-weight:600;font-size:14px;color:var(--text-main);letter-spacing:-.01em}.message-time{font-size:12px;color:var(--text-muted);font-weight:500}.message-text{background:var(--bg-surface-soft);border:2px solid var(--border-subtle);padding:12px 18px;border-radius:18px;line-height:1.5;max-width:70%;width:fit-content;word-wrap:break-word;word-break:break-word;overflow-wrap:break-word;box-shadow:0 1px 3px #0000000d;color:var(--text-main);font-size:14px}.message.sent .message-text{background:var(--accent-soft);border:none;margin-left:auto}.date-separator{display:flex;align-items:center;justify-content:center;text-align:center;margin:24px 0}.date-separator span{padding:6px 14px;background:#8e8e931f;border-radius:999px;color:var(--text-muted);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 1px 2px #0000000d}.chat-system-msg{display:flex;align-items:center;margin:14px 0;pointer-events:none;user-select:none}.chat-system-msg:before,.chat-system-msg:after{content:"";flex:1;height:1px;background:var(--border-subtle)}.chat-system-msg-text{padding:0 12px;font-size:11.5px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center;max-width:70%}.sys-msg-name{font-weight:500;color:var(--text-main);cursor:pointer;pointer-events:auto}.sys-msg-name:hover{text-decoration:underline}.chat-input-container{padding:20px 24px;border-top:1px solid var(--border-subtle);display:flex;gap:12px;background:#f5f5f799}.chat-input{flex:1;padding:14px 20px;border:1px solid var(--border-subtle);border-radius:999px;outline:none;font-size:14px;background:var(--bg-surface);color:var(--text-main);transition:all var(--transition-fast)}.chat-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #0070f31a}.send-btn{width:44px;height:44px;border-radius:50%;border:none;background:var(--accent);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:18px;transition:all var(--transition-fast);box-shadow:var(--shadow-subtle)}.send-btn:hover{background:#06d;transform:translateY(-1px);box-shadow:0 4px 12px #0070f34d}.send-btn:active{transform:translateY(0);box-shadow:var(--shadow-subtle)}.chat-emoji-btn{width:44px;height:44px;border-radius:50%;border:1px solid var(--border-subtle);background:var(--bg-surface);color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:18px;transition:all var(--transition-fast);flex-shrink:0}@media(max-width:768px){.chat-emoji-btn,.chat-emoji-popover{display:none!important}}.chat-emoji-btn:hover{background:var(--bg-surface-soft);color:var(--text-main);border-color:var(--border-medium)}.chat-emoji-btn:active{transform:scale(.95)}.chat-emoji-popover{position:absolute;bottom:100%;left:0;margin-bottom:8px;background:var(--bg-surface);border:1px solid var(--border-medium);border-radius:12px;box-shadow:0 8px 24px #00000026;width:320px;max-height:360px;z-index:10002;display:flex;flex-direction:column;overflow:hidden}body.dark-mode .chat-emoji-popover{background:var(--bg-elevated);box-shadow:0 8px 24px #0006}.chat-input-wrapper{position:relative}.typing-indicator{display:flex;align-items:flex-start;padding:4px 18px 6px;animation:fadeIn .2s ease}.typing-bubble{display:inline-flex;align-items:center;gap:8px;background:var(--bg-body);padding:10px 16px;border-radius:6px 18px 18px;box-shadow:0 1px 3px #0000000d;max-width:200px}.typing-indicator .typing-dots{display:flex;gap:3px;flex-shrink:0}.typing-indicator .typing-dots span{width:6px;height:6px;background:var(--text-muted);border-radius:50%;animation:typingBounce 1.4s infinite ease-in-out}.typing-indicator .typing-dots span:nth-child(1){animation-delay:0s}.typing-indicator .typing-dots span:nth-child(2){animation-delay:.2s}.typing-indicator .typing-dots span:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1);opacity:1}}.typing-indicator .typing-text{font-size:12px;color:var(--text-muted);font-style:italic;white-space:nowrap}body.dark-mode .typing-bubble{background:var(--bg-surface)}body.dark-mode .typing-indicator .typing-dots span{background:var(--text-light)}.chat-working{display:inline-flex;align-items:center;align-self:flex-start;padding:6px 2px}.chat-working-text{font-size:12px;font-weight:500;white-space:nowrap;background:linear-gradient(90deg,var(--text-muted) 0%,var(--text-muted) 35%,var(--text-main) 50%,var(--text-muted) 65%,var(--text-muted) 100%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:chatWorkingShine 2.2s linear infinite}@keyframes chatWorkingShine{0%{background-position:200% 0}to{background-position:-200% 0}}.chat-two-pane .message{overflow:visible}.swipe-reply-icon{position:absolute;top:50%;transform:translateY(-50%) scale(.5);width:32px;height:32px;border-radius:50%;background:var(--bg-surface-soft);display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:14px;pointer-events:none;opacity:0;transition:opacity .1s,transform .1s;z-index:1}.swipe-reply-icon.ready{color:var(--accent);background:var(--accent-ghost)}body.dark-mode .swipe-reply-icon{background:var(--bg-surface)}body.dark-mode .swipe-reply-icon.ready{color:var(--accent);background:rgba(var(--accent-rgb, 79, 70, 229),.2)}.theme-selector{display:flex;gap:6px;margin-top:8px;padding:4px;background:var(--bg-secondary);border-radius:10px;border:1px solid var(--border-subtle)}.theme-option{flex:1;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:8px;padding:10px 16px;background:transparent;border:none;border-radius:8px;cursor:pointer;transition:all .15s ease;font-size:14px;font-weight:500;color:var(--text-secondary)}.theme-option i{font-size:16px;transition:transform .15s ease}.theme-option:hover{background:var(--bg-surface);color:var(--text-main)}.theme-option:hover i{transform:scale(1.1)}.theme-option.active{border-color:var(--accent);background:var(--accent-soft, rgba(0, 120, 212, .1));color:var(--accent)}.theme-option.active i{color:var(--accent)}body.dark-mode .theme-option{background:var(--bg-surface);border-color:var(--border-subtle);color:var(--text-secondary)}body.dark-mode .theme-option:hover{border-color:var(--accent);background:var(--bg-tertiary)}body.dark-mode .theme-option.active{border-color:var(--accent);background:#64a0ff26;color:var(--accent)}.mention-dropdown{position:absolute;bottom:calc(100% + 8px);left:24px;right:24px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;box-shadow:0 8px 32px #0000001f,0 2px 8px #00000014;max-height:240px;overflow-y:auto;z-index:100}.mention-dropdown-header{padding:10px 14px;font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-subtle);background:#f5f5f780}.mention-item{display:flex;align-items:center;gap:12px;padding:10px 14px;cursor:pointer;transition:background var(--transition-fast)}.mention-item:hover,.mention-item.selected{background:#007aff14}.mention-item.selected{background:#007aff1f}.mention-item-avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:#fff;flex-shrink:0}.mention-item-info{flex:1;min-width:0}.mention-item-name{font-size:14px;font-weight:500;color:var(--text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mention-item-role{font-size:12px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mention-dropdown-empty{padding:16px 14px;text-align:center;color:var(--text-secondary);font-size:13px}.mention-pill{display:inline-block;background:#007aff26;color:var(--accent);padding:2px 10px;border-radius:999px;font-weight:500;font-size:.9em;cursor:pointer;transition:all var(--transition-fast);vertical-align:baseline}.mention-pill:hover{background:#007aff40;transform:translateY(-1px)}.mention-pill:active{transform:translateY(0)}.mention-pill.mention-me{background:#007aff38;font-weight:600}.chat-filter-toggle{display:flex;background:#0000000d;border-radius:999px;padding:3px;gap:2px}.chat-filter-toggle .filter-btn{padding:5px 14px;font-size:12px;font-weight:500;border:none;border-radius:999px;background:transparent;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.chat-filter-toggle .filter-btn:hover{color:var(--text-main)}.chat-filter-toggle .filter-btn.active{background:var(--accent);color:#fff;box-shadow:0 2px 6px #007aff4d}body.dark-mode .mention-dropdown{background:var(--bg-surface);border-color:var(--border-subtle);box-shadow:0 8px 32px #0006}body.dark-mode .mention-dropdown-header{background:#ffffff08}body.dark-mode .mention-item:hover,body.dark-mode .mention-item.selected{background:#007aff26}body.dark-mode .mention-pill{background:#007aff33}body.dark-mode .mention-pill:hover{background:#007aff4d}body.dark-mode .chat-filter-toggle{background:#ffffff14}body.dark-mode .chat-filter-toggle .filter-btn.active{background:var(--accent);color:#fff}.chat-mention-dropdown{display:none;position:fixed;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:10px;box-shadow:0 8px 32px #0000001f,0 2px 8px #0000000f;max-height:200px;max-width:240px;min-width:180px;overflow-y:auto;padding:6px;z-index:10002;animation:chatMentionIn .15s ease}@keyframes chatMentionIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.chat-mention-dropdown .mention-dropdown-header{padding:6px 10px 4px;font-size:11px;font-weight:600;color:var(--text-secondary);letter-spacing:0}.chat-mention-dropdown .mention-item{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:6px;cursor:pointer;transition:background .15s ease;border:none;width:100%}.chat-mention-dropdown .mention-item:hover,.chat-mention-dropdown .mention-item.selected{background:var(--bg-hover, rgba(0, 0, 0, .04))}.chat-mention-dropdown .mention-item-avatar{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:600;color:#fff;flex-shrink:0}.chat-mention-dropdown .mention-item-name{font-size:13px;font-weight:500;color:var(--text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-mention-dropdown .mention-dropdown-empty{padding:10px;text-align:center;color:var(--text-secondary);font-size:12px}body.dark-mode .chat-mention-dropdown{background:var(--bg-surface);border-color:var(--border-subtle);box-shadow:0 8px 32px #0006}body.dark-mode .chat-mention-dropdown .mention-item:hover,body.dark-mode .chat-mention-dropdown .mention-item.selected{background:var(--bg-hover, rgba(255, 255, 255, .06))}.reply-preview{display:flex;align-items:center;gap:12px;padding:10px 14px;background:var(--bg-surface);border-radius:16px;margin:0 12px 8px;box-shadow:0 2px 8px #0000000f;border:1px solid var(--border-subtle);animation:replySlideIn .2s ease-out}@keyframes replySlideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.reply-preview-indicator{width:3px;height:32px;background:var(--accent);border-radius:2px;flex-shrink:0}.reply-preview-info{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.reply-preview-label{font-size:11px;color:var(--text-muted);font-weight:500;text-transform:uppercase;letter-spacing:.3px}.reply-preview-name{font-size:13px;font-weight:600;color:var(--accent);line-height:1.2}.reply-preview-text{font-size:12px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3;max-width:300px}.reply-preview-close{width:26px;height:26px;border:none;background:var(--bg-surface-soft);color:var(--text-secondary);cursor:pointer;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .15s ease;flex-shrink:0;font-size:11px}.reply-preview-close:hover{background:#ff3b301a;color:#ff3b30;transform:scale(1.1)}.message-actions{position:absolute;top:0;right:0;display:flex;align-items:center;gap:4px;opacity:0;transition:opacity var(--transition-fast);z-index:5;padding:4px}.message:hover .message-actions,.message.show-actions .message-actions{opacity:1}.message-action-btn{height:26px;padding:0 8px;border:none;border-radius:6px;cursor:pointer;font-size:11px;font-weight:500;display:flex;align-items:center;justify-content:center;gap:4px;transition:all var(--transition-fast);white-space:nowrap}.message-action-btn i{font-size:10px}.message-reply-btn{background:var(--bg-surface);color:var(--text-secondary);box-shadow:0 1px 4px #00000014;border:1px solid var(--border-subtle)}.message-reply-btn:hover{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 2px 8px #007aff40}.message-reply-btn:focus{outline:2px solid var(--accent);outline-offset:2px}.reactions-bar{position:fixed;display:flex;gap:4px;padding:8px 12px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:28px;box-shadow:0 8px 32px #00000026,0 2px 8px #00000014;z-index:10001;opacity:0;transform:scale(.8) translateY(10px);transition:all .2s cubic-bezier(.34,1.56,.64,1);pointer-events:none}.reactions-bar.active{opacity:1;transform:scale(1) translateY(0);pointer-events:auto}.reaction-emoji-btn{width:36px;height:36px;border:none;background:transparent;border-radius:50%;cursor:pointer;font-size:20px;display:flex;align-items:center;justify-content:center;transition:all .15s ease;-webkit-tap-highlight-color:transparent}.reaction-emoji-btn:hover{background:var(--accent-soft);transform:scale(1.2)}.reaction-emoji-btn:active{transform:scale(.9)}.message-reactions-display{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px;min-height:0}.message-reactions-display:empty{display:none}.reaction-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;background:var(--bg-body);border:1px solid var(--border-subtle);border-radius:12px;cursor:pointer;transition:all .15s ease;font-size:12px;-webkit-tap-highlight-color:transparent}.reaction-chip:hover,.reaction-chip.user-reacted{background:var(--accent-soft);border-color:var(--accent)}.reaction-emoji{font-size:13px;line-height:1}.reaction-count{font-size:11px;font-weight:600;color:var(--text-secondary)}.reaction-chip.user-reacted .reaction-count{color:var(--accent)}@media(max-width:768px){.reactions-bar{border-radius:999px;padding:10px 16px;gap:8px}.reaction-emoji-btn{width:40px;height:40px}.message-reactions-display{gap:8px}.reaction-chip{border-radius:999px;padding:6px 12px;font-size:13px}}.message-content{position:relative}.message-reply-context{display:flex;align-items:stretch;gap:0;padding:0;background:#007aff0f;border-radius:10px;margin-bottom:8px;cursor:pointer;transition:all var(--transition-fast);overflow:hidden;max-width:100%}.message-reply-context:hover{background:#007aff1a;transform:translateY(-1px);box-shadow:0 2px 8px #007aff1f}.reply-context-bar{width:3px;background:var(--accent);flex-shrink:0;border-radius:3px 0 0 3px}.reply-context-content{flex:1;min-width:0;padding:8px 10px;display:flex;flex-direction:column;gap:2px}.reply-context-author{font-size:11px;font-weight:600;color:var(--accent);line-height:1.3;display:flex;align-items:center;gap:4px}.reply-context-author i{font-size:9px;opacity:.8}.reply-context-text{font-size:12px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.4}.reply-context-unavailable{font-style:italic;color:var(--text-tertiary)}.message.reply-highlight{animation:replyHighlightPulse 2s ease-out;border-radius:var(--radius-lg)}.message.reply-highlight .message-text{animation:replyTextHighlight 2s ease-out}.chat-two-pane .message.search-highlight .message-text{animation:chatSearchRing 2.8s ease-out forwards}.chat-two-pane .message.search-highlight .chat-ref-block,.chat-two-pane .message.search-highlight .chat-ref-chip,.chat-two-pane .message.search-highlight .chat-ref-file-tile{animation:chatSearchRing 2.8s ease-out forwards;border-radius:var(--radius-sm, 8px)}@keyframes chatSearchRing{0%{outline:2.5px solid var(--accent);outline-offset:3px;box-shadow:0 0 0 6px #0070f338}40%{outline:2.5px solid var(--accent);outline-offset:3px;box-shadow:0 0 0 3px #0070f31a}to{outline:2.5px solid transparent;outline-offset:3px;box-shadow:none}}@keyframes replyHighlightPulse{0%{background:#007aff14}20%{background:#007aff1f}to{background:transparent}}@keyframes replyTextHighlight{0%,25%{box-shadow:0 0 0 3px #007aff66,0 4px 16px #007aff33;transform:scale(1.005)}to{box-shadow:0 1px 3px #0000000d;transform:scale(1)}}body.dark-mode .reply-cancel-btn{background:#ffffff0f}body.dark-mode .reply-preview-close:hover{background:#ff3b3026}body.dark-mode .reply-preview{background:var(--bg-elevated);border-color:var(--border-subtle)}body.dark-mode .message-reply-btn{background:var(--bg-elevated);border-color:var(--border-subtle);box-shadow:0 1px 4px #0003}body.dark-mode .message-reply-context{background:#007aff1a}body.dark-mode .message-reply-context:hover{background:#007aff26}body.dark-mode .message.reply-highlight{animation:replyHighlightPulseDark 2s ease-out}body.dark-mode .chat-two-pane .message.search-highlight .message-text,body.dark-mode .chat-two-pane .message.search-highlight .chat-ref-block,body.dark-mode .chat-two-pane .message.search-highlight .chat-ref-chip,body.dark-mode .chat-two-pane .message.search-highlight .chat-ref-file-tile{animation:chatSearchRingDark 2.8s ease-out forwards}@keyframes chatSearchRingDark{0%{outline:2.5px solid var(--accent);outline-offset:3px;box-shadow:0 0 0 6px #0a84ff4d}40%{outline:2.5px solid var(--accent);outline-offset:3px;box-shadow:0 0 0 3px #0a84ff1f}to{outline:2.5px solid transparent;outline-offset:3px;box-shadow:none}}body.dark-mode .reactions-bar{background:var(--bg-elevated);border-color:var(--border-subtle);box-shadow:0 8px 32px #0006,0 2px 8px #0003}body.dark-mode .reaction-emoji-btn:hover{background:#ffffff1a}body.dark-mode .reaction-chip{background:#ffffff0f;border-color:var(--border-subtle)}body.dark-mode .reaction-chip:hover,body.dark-mode .reaction-chip.user-reacted{background:#007aff33;border-color:var(--accent)}@keyframes replyHighlightPulseDark{0%{background:#007aff1f}20%{background:#007aff2e}to{background:transparent}}@media(max-width:768px){.reply-preview{padding:8px 12px;margin:0 8px 6px;gap:10px;border-radius:12px}.reply-preview-indicator{height:28px}.reply-preview-label{font-size:10px}.reply-preview-name{font-size:12px}.reply-preview-text{font-size:11px;max-width:200px}.reply-preview-close{width:24px;height:24px}.message-actions{gap:3px;padding:3px}.message-action-btn{height:24px;padding:0 6px;font-size:10px}.message-reply-context{border-radius:8px}.reply-context-content{padding:6px 8px}.reply-context-author{font-size:10px}.reply-context-text{font-size:11px}.reactions-bar{padding:10px 16px;border-radius:999px;gap:8px}.reaction-emoji-btn{min-width:44px;height:36px;padding:0 12px;font-size:18px;border-radius:999px}.message-reactions-display{gap:8px;margin-top:6px}.reaction-chip{padding:6px 12px;border-radius:999px;font-size:13px;height:auto;line-height:1.2}.reaction-emoji{font-size:13px}.reaction-count{font-size:11px}}.chat-hide-avatars .message-avatar{display:none}.chat-hide-avatars .message{gap:0}.chat-compact .chat-messages{gap:6px}.chat-compact .message{gap:10px}.chat-compact .message+.message[data-sender-changed=true]{margin-top:12px}.chat-compact .message-avatar{width:28px;height:28px;font-size:11px;flex-shrink:0}.chat-compact .message-header{margin-bottom:3px;gap:6px}.chat-compact .message-author{font-size:13px;font-weight:600;line-height:1}.chat-compact .message-time{font-size:11px;line-height:1}.chat-compact .message-text{padding:8px 14px;font-size:13px;line-height:1.45;border-radius:14px;max-width:75%}.chat-compact .date-separator{margin:14px 0}.chat-compact .date-separator span{padding:4px 10px;font-size:10px}.chat-compact .message-content{gap:0}.chat-compact .message-actions{padding:2px;gap:3px}.chat-compact .message-action-btn{height:22px;padding:0 6px;font-size:10px}.timestamp-inline .message-time{display:inline}.timestamp-subtle .message-header{flex-direction:column;align-items:flex-start;gap:2px}.timestamp-subtle .message-time{font-size:11px;opacity:.7;margin-top:2px}.bubble-style-minimal .message-text{background:transparent;border:1px solid var(--border-subtle);box-shadow:none}.bubble-style-minimal .message.sent .message-text{background:transparent;border:1px solid var(--accent);color:var(--text-main)}.chat-two-pane{display:flex;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);box-shadow:0 4px 24px #0000000f,0 1px 4px #0000000a;flex:1;min-height:0;overflow:hidden;position:relative}.chat-sidebar{width:300px;min-width:300px;border-right:1px solid var(--border-subtle);display:flex;flex-direction:column;background:var(--bg-body)}.chat-sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px 12px}.chat-sidebar-title-row{display:flex;align-items:baseline;gap:8px}.chat-sidebar-title{font-size:24px;font-weight:700;color:var(--text-main);margin:0;letter-spacing:-.02em}.chat-new-btn{width:34px;height:34px;border-radius:50%;border:none;background:var(--border-subtle);color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;transition:all var(--transition-fast)}.chat-new-btn:hover{background:var(--border-medium);color:var(--text-main);transform:scale(1.04)}.chat-sidebar-search{padding:0 14px 10px}.chat-search-box{display:flex;align-items:center;gap:12px;background:var(--bg-surface);border:1.5px solid var(--border-subtle);border-radius:999px;padding:10px 18px;transition:all var(--transition-fast)}.chat-search-box:focus-within{border-color:var(--accent)}.chat-search-icon{font-size:14px;color:var(--text-muted);flex-shrink:0}.chat-search-input{flex:1;border:none;outline:none;background:transparent;font-size:14px;padding:0;color:var(--text-main);font-family:var(--font-family)}.chat-search-input::placeholder{color:var(--text-muted)}.chat-room-list{flex:1;overflow-y:auto;padding:4px 8px 8px;min-height:0}.chat-sidebar-tabs{display:flex;gap:4px;margin:0 14px 8px;padding:4px;border-radius:999px;background:var(--bg-body);border:1px solid var(--border-subtle);flex-shrink:0}.chat-sidebar-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:7px 12px;border:none;border-radius:999px;background:transparent;color:var(--text-muted);font-size:13px;font-weight:600;cursor:pointer;transition:background var(--transition-fast, .2s ease),color var(--transition-fast, .2s ease)}.chat-sidebar-tab:hover:not(.active){color:var(--text-main);background:var(--bg-surface)}.chat-sidebar-tab.active{background:var(--accent);color:#fff;box-shadow:0 2px 8px #0070f34d}.chat-sidebar-tab-badge{min-width:17px;height:17px;padding:0 5px;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--accent);color:#fff;font-size:10px;font-weight:700;line-height:1;font-variant-numeric:tabular-nums}.chat-sidebar-tab-badge[hidden]{display:none}.chat-sidebar-tab.active .chat-sidebar-tab-badge{background:#ffffff40;color:#fff}.chat-task-list{flex:1;overflow-y:auto;padding:4px 8px 8px;min-height:0}.chat-task-list[hidden],.chat-room-list[hidden]{display:none}.chat-room-location{margin-top:2px;font-size:11px;font-weight:500;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.85}.chat-room-list-empty-hint{margin-top:6px;font-size:12.5px;line-height:1.45;opacity:.8}.chat-slack-section-hidden{display:none!important}.chat-open-task-btn{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border:1px solid var(--border-medium);border-radius:999px;background:transparent;color:var(--text-main);font-size:12.5px;font-weight:600;white-space:nowrap;cursor:pointer;transition:background var(--transition-fast, .2s ease),border-color var(--transition-fast, .2s ease),color var(--transition-fast, .2s ease)}.chat-open-task-btn i{font-size:11px}.chat-open-task-btn:hover{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}body.dark-mode .chat-open-task-btn:hover{background:#ffffff0f}@media(max-width:768px){.chat-open-task-btn{padding:0 10px}.chat-open-task-btn{font-size:0;gap:0}.chat-open-task-btn i{font-size:13px}}.chat-slack-section{flex-shrink:0;border-top:1px solid var(--border-subtle);display:flex;flex-direction:column;max-height:42%;min-height:0}.chat-slack-header{display:flex;align-items:center;padding:10px 16px 6px;gap:8px}.chat-slack-header-actions{display:flex;align-items:center;gap:4px;margin-left:auto}.chat-slack-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);display:flex;align-items:center;gap:6px}.chat-slack-title i{font-size:13px;color:#e01e5a}.chat-slack-link-btn,.chat-slack-connect-btn,.chat-slack-disconnect-btn{width:24px;height:24px;border-radius:50%;border:none;background:var(--border-subtle);color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;transition:all var(--transition-fast);flex-shrink:0}.chat-slack-link-btn:hover{background:var(--border-medium);color:var(--text-main)}.chat-slack-connect-btn{background:#4a154b;color:#fff}.chat-slack-connect-btn:hover{opacity:.85}.chat-slack-disconnect-btn:hover{background:var(--danger-soft, #fde8ea);color:var(--danger, #e53935)}.chat-slack-userlink--connect{background:none;border:none;cursor:pointer;font-size:12px;font-weight:500;color:var(--text-muted);padding:2px 6px;font-family:inherit;transition:color .15s;display:flex;align-items:center;gap:4px}.chat-slack-userlink--connect:hover{color:var(--text-main)}.chat-slack-list{overflow-y:auto;padding:0 8px 8px}.chat-slack-channel-item{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:10px;cursor:pointer;transition:background var(--transition-fast);user-select:none;position:relative}.chat-slack-channel-item:hover{background:var(--bg-alt)}.chat-slack-channel-item.active{background:var(--accent-soft)}.chat-slack-channel-icon{width:30px;height:30px;border-radius:8px;background:#4a154b;color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;flex-shrink:0}.chat-slack-channel-name{flex:1;font-size:14px;font-weight:500;color:var(--text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-slack-channel-item.active .chat-slack-channel-name{color:var(--accent)}.chat-slack-unlink-btn{width:22px;height:22px;border-radius:50%;border:none;background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:11px;opacity:0;transition:opacity var(--transition-fast),background var(--transition-fast)}.chat-slack-channel-item:hover .chat-slack-unlink-btn{opacity:1}.chat-slack-unlink-btn:hover{background:var(--danger-soft, #fde8ea);color:var(--danger, #e53935)}.chat-slack-empty{padding:10px 12px 4px;font-size:13px;color:var(--text-muted)}.chat-slack-channels-empty{padding:20px 14px 16px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:4px}.chat-slack-empty-icon{width:40px;height:40px;border-radius:50%;background:#4a154b14;color:#4a154b;display:flex;align-items:center;justify-content:center;font-size:18px;margin-bottom:4px}body.dark-mode .chat-slack-empty-icon{background:#4a154b40;color:#c79ec9}.chat-slack-empty-title{font-size:13px;font-weight:600;color:var(--text-main)}.chat-slack-empty-desc{font-size:12px;color:var(--text-muted);margin:0;line-height:1.4;max-width:220px}.chat-slack-connect-prompt{padding:16px 12px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:6px}.chat-slack-connect-prompt strong{font-size:13px;color:var(--text-main)}.chat-slack-connect-prompt p{font-size:12px;color:var(--text-muted);margin:0;line-height:1.4}.chat-slack-cta-btn{margin-top:8px;padding:7px 16px;border-radius:20px;border:none;background:#4a154b;color:#fff;font-size:13px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:opacity .15s}.chat-slack-cta-btn:hover{opacity:.85}.chat-slack-badge{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;color:#e01e5a;background:#fce8ef;padding:2px 8px;border-radius:999px;margin-left:8px}body.dark-mode .chat-slack-badge{background:#e01e5a2e}.message.slack-msg.received .message-avatar{background:#4a154b!important}.message.slack-msg.received .message-avatar.teamster-bot{background:#fff!important}.message.slack-msg.received .message-text{background:#4a154b0d;color:var(--text-color, #1e293b);border:none}body.dark-mode .message.slack-msg.received .message-text{background:#4a154b33}.message.slack-msg.sent .message-avatar{background:var(--brand-blue, #007aff)!important}.message.slack-msg.sent .message-text{background:var(--brand-blue, #007aff);color:#fff;border:none}.slack-pick-list{display:flex;flex-direction:column;gap:4px;max-height:320px;overflow-y:auto;padding:4px 0}.slack-pick-item{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:8px;cursor:pointer;transition:background var(--transition-fast)}.slack-pick-item:hover{background:var(--bg-alt)}.slack-pick-item .slack-pick-icon{width:28px;height:28px;border-radius:6px;background:#4a154b;color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;flex-shrink:0}.slack-pick-name{flex:1;font-size:14px;font-weight:500;color:var(--text-main)}.slack-pick-meta{font-size:11px;font-weight:600;color:var(--text-secondary, #666);background:#0000000f;padding:4px 10px;border-radius:999px;display:inline-flex;align-items:center;gap:4px;border:none}body.dark-mode .slack-pick-meta{background:#ffffff1a;color:#ffffffb3}.chat-room-list-empty{padding:40px 18px;text-align:center;color:var(--text-muted);font-size:14px}.chat-search-section{border-top:1px solid var(--border-subtle);margin-top:6px;padding-top:6px}.chat-search-section-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);padding:4px 12px 6px}.chat-room-icon-search{background:var(--accent-soft);color:var(--accent)}.chat-settings-danger-zone{display:flex;flex-direction:row;gap:10px;padding-top:16px;border-top:1px solid var(--border-subtle)}.chat-icon-picker-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:20px;background:var(--bg-alt);border:1px solid var(--border-subtle);cursor:pointer;transition:all .2s ease;font-size:13px;color:var(--text-main);white-space:nowrap}.chat-icon-picker-pill:hover{border-color:var(--border-medium);background:var(--bg-surface)}.chat-icon-picker-pill.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.chat-icon-picker-pill-icon{width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;background:var(--accent-soft);color:var(--accent);flex-shrink:0}.chat-icon-picker-pill-icon svg{display:block}.chat-icon-picker-pill.active .chat-icon-picker-pill-icon{background:#fff}.chat-color-pill-swatch{width:16px;height:16px;border-radius:50%;border:1.5px solid var(--border-default);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-muted)}.chat-color-pill-swatch svg{display:block}.chat-icon-picker,.chat-color-picker{display:none;position:absolute;top:100%;left:0;margin-top:6px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:10px;padding:10px;z-index:10020;box-shadow:0 4px 12px #0000001a}.chat-icon-picker{grid-template-columns:repeat(2,1fr);gap:8px;width:100px}.chat-color-picker{grid-template-columns:repeat(2,1fr);gap:12px;place-items:center;width:100px}.chat-icon-picker.visible,.chat-color-picker.visible{display:grid}.chat-icon-emoji-grid{display:contents}.chat-icon-emoji-btn{width:28px;height:28px;border-radius:6px;border:2px solid transparent;background:var(--bg-alt);cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;transition:border-color .1s,background .1s;color:var(--text-sub);padding:0;line-height:1}.chat-icon-emoji-btn:hover{background:var(--accent-soft)}.chat-icon-emoji-btn.active{border-color:var(--accent);background:var(--accent-soft)}.chat-icon-color-row{display:contents}.chat-icon-color-swatch{width:20px;height:20px;border-radius:50%;border:none;cursor:pointer;outline:2px solid transparent;outline-offset:2px;transition:outline-color .15s,transform .1s}.chat-icon-color-swatch:hover{transform:scale(1.15)}.chat-icon-color-swatch.active{outline-color:var(--accent)}.picker-empty-state{background:transparent;color:var(--text-muted);display:flex;align-items:center;justify-content:center}.picker-empty-state:hover{color:var(--accent)}.picker-empty-state.active{outline:2px solid var(--accent)}.chat-room-icon-emoji{font-size:18px;line-height:1}.chat-connection-error{display:flex;flex-direction:column;align-items:center;text-align:center;padding:28px 18px 20px;border-bottom:1px solid var(--border-subtle);background:var(--bg-surface)}.chat-conn-title{font-size:13.5px;font-weight:600;color:var(--text-main);margin-bottom:4px}.chat-conn-sub{font-size:12px;color:var(--text-light);line-height:1.5}.chat-room-item{display:flex;align-items:center;gap:12px;padding:10px 12px;cursor:pointer;border-radius:var(--radius-md);transition:background var(--transition-fast);margin-bottom:2px}.chat-room-item:hover{background:#00000009}.chat-room-item.active{background:var(--accent-soft)}.chat-room-item.has-unread .chat-room-name{font-weight:700}.chat-room-icon{width:40px;height:40px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;font-size:15px;flex-shrink:0;position:relative}.chat-room-icon-avatar{border-radius:50%;color:#fff;font-size:12px;font-weight:700;letter-spacing:.3px;overflow:hidden}.chat-room-icon-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%}.chat-room-item.active .chat-room-icon{background:var(--accent);color:#fff}.chat-room-item.active .chat-room-icon-avatar{box-shadow:0 0 0 2px var(--accent)}.chat-room-info{flex:1;min-width:0}.chat-room-name-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.chat-room-name{font-size:14px;font-weight:500;color:var(--text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-room-time{font-size:11px;color:var(--text-light);flex-shrink:0;font-weight:400}.chat-room-item.has-unread .chat-room-time{color:var(--accent);font-weight:600}.chat-room-preview-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:3px}.chat-room-preview{font-size:12.5px;color:var(--text-light);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.chat-room-badge{background:var(--accent);color:#fff;font-size:10px;font-weight:700;padding:2px 7px;border-radius:999px;min-width:18px;text-align:center;flex-shrink:0;line-height:1.5}.chat-main-area{flex:1;display:flex;flex-direction:column;min-width:0;position:relative;background:var(--bg-surface)}.chat-main-header{display:flex;align-items:center;gap:14px;padding:14px 20px;border-bottom:1px solid var(--border-subtle);background:var(--bg-surface);z-index:2}.chat-back-btn{display:none;width:32px;height:32px;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--accent);cursor:pointer;font-size:15px;align-items:center;justify-content:center}.chat-main-header-info{flex:1;min-width:0}.chat-header-avatar{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:12px;font-weight:700;flex-shrink:0;letter-spacing:.3px;position:relative;overflow:hidden}.chat-header-avatar-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%}.chat-main-header-name{font-size:15px;font-weight:700;color:var(--text-main);display:block;letter-spacing:-.01em}.chat-main-header-meta{font-size:12px;color:var(--text-light);margin-top:1px}.chat-main-header-meta:empty{display:none}.chat-header-actions{display:flex;gap:4px}.chat-room-settings-btn{width:34px;height:34px;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--text-muted);cursor:pointer;font-size:15px;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.chat-room-settings-btn:hover{background:var(--accent-soft);color:var(--accent)}.chat-empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:48px 24px}.chat-empty-illustration{margin-bottom:12px}.chat-empty-circle{width:80px;height:80px;border-radius:50%;background:var(--accent-soft);display:flex;align-items:center;justify-content:center;font-size:32px;color:var(--accent)}.chat-empty-state h3{font-size:17px;font-weight:700;color:var(--text-main);margin:0}.chat-empty-state p{font-size:13.5px;color:var(--text-light);margin:0}.slack-empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:48px 24px;text-align:center}.slack-empty-illustration{margin-bottom:12px}.slack-empty-circle{width:80px;height:80px;border-radius:50%;background:#e8e5ff;display:flex;align-items:center;justify-content:center;font-size:32px;color:#4a154b}body.dark-mode .slack-empty-circle{background:#4a154b33;color:#d8bfd8}.slack-empty-state h3{font-size:17px;font-weight:700;color:var(--text-main);margin:0}.slack-empty-state p{font-size:13px;color:var(--text-light);margin:0;max-width:280px}.chat-intro-banner{display:flex;flex-direction:column;align-items:center;gap:4px;padding:28px 16px 18px;text-align:center}.chat-intro-avatar{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:18px;letter-spacing:.3px;margin-bottom:4px;flex-shrink:0;overflow:hidden;position:relative}.chat-intro-avatar.chat-intro-group{background:var(--accent-soft);color:var(--accent);font-size:24px}.chat-intro-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%}.chat-intro-name{font-size:16px;font-weight:700;color:var(--text-main);line-height:1.3}.chat-intro-role{font-size:13px;color:var(--text-muted);font-style:italic}.chat-msg-container{flex:1;padding:24px 24px 8px;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:4px;overscroll-behavior:contain;overflow-anchor:none}.chat-two-pane .date-separator{display:flex;align-items:center;justify-content:center;margin:18px 0 12px}.chat-two-pane .date-separator span{padding:4px 14px;background:var(--bg-body);border-radius:999px;color:var(--text-light);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.chat-two-pane .message{display:flex;padding:5px 0;animation:chatMsgIn .18s ease-out}@keyframes chatMsgIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.chat-two-pane .message-avatar{width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;font-weight:700;font-size:8px;letter-spacing:.2px;position:relative;overflow:hidden}.chat-two-pane .message-content{flex:1;display:flex;flex-direction:column;align-items:flex-start;min-width:0;position:relative;gap:0}.chat-two-pane .message-header{display:flex;flex-direction:row;align-items:center;gap:6px;margin-bottom:8px;width:fit-content}.chat-two-pane .message-author{font-weight:600;font-size:13.5px;color:var(--text-main)}.chat-two-pane .message-time{font-size:11px;color:var(--text-light);font-weight:400;margin-top:1px;display:block}.chat-two-pane .message-text{background:var(--bg-body);border:none;padding:10px 16px;border-radius:6px 18px 18px;line-height:1.55;max-width:100%;width:fit-content;word-wrap:break-word;word-break:break-word;overflow-wrap:break-word;color:var(--text-main);font-size:14px;position:relative}.chat-two-pane .message.sent .message-text{background:var(--accent);color:#fff;border-radius:18px 6px 18px 18px}.chat-two-pane .message.sent .mention-pill{background:#ffffff38;color:#fff}.chat-two-pane .message.sent .mention-pill:hover{background:#ffffff59}.chat-two-pane .message.sent .mention-pill.mention-me{background:#ffffff4d;font-weight:600}.chat-two-pane .message.sent .message-content{align-items:flex-end}.chat-two-pane.bubble-style-minimal .message-text{background:transparent;border:1.5px solid var(--border-subtle);color:var(--text-main)}.chat-two-pane.bubble-style-minimal .message.sent .message-text{background:transparent;border-color:var(--accent);color:var(--accent)}.chat-two-pane.timestamp-subtle .message-time{font-size:10px;opacity:0;transition:opacity var(--transition-fast)}.chat-two-pane.timestamp-subtle .message:hover .message-time{opacity:1}.chat-two-pane.timestamp-subtle .message-header{margin-bottom:1px}.chat-two-pane.chat-compact .message{padding:2px 0;gap:5px}.chat-two-pane.chat-compact .message-avatar{width:20px;height:20px;font-size:8px;border-radius:50%;margin-top:0}.chat-two-pane.chat-compact .message-text{padding:7px 14px;font-size:13px;border-radius:4px 14px 14px}.chat-two-pane.chat-compact .message.sent .message-text{border-radius:14px 14px 14px 4px}.chat-two-pane.chat-compact .message-header{margin-bottom:1px}.chat-two-pane.chat-compact .message-author{font-size:12px}.chat-two-pane.chat-compact .date-separator{margin:10px 0 8px}.chat-two-pane.chat-hide-avatars .message-avatar{display:none}.chat-two-pane .message-text{cursor:pointer}.chat-two-pane .message-bubble-row{display:flex;align-items:center;gap:6px;position:relative}.chat-two-pane .message.sent .message-bubble-row{flex-direction:row-reverse}.chat-two-pane .message-bubble-row.file-only{padding:0;min-height:0}.chat-two-pane .message-ref-row{display:flex;align-items:center;gap:6px}.chat-two-pane .message.sent .message-ref-row{flex-direction:row-reverse}.chat-two-pane .chat-reply-btn{width:26px;height:26px;border-radius:50%;border:1px solid var(--border-subtle);background:var(--bg-surface);color:var(--text-muted);display:flex;align-items:center;justify-content:center;font-size:11px;cursor:pointer;opacity:0;transition:opacity var(--transition-fast),background var(--transition-fast);z-index:4;box-shadow:0 1px 4px #0000000f;flex-shrink:0;padding:0}.chat-two-pane .message{position:relative}.chat-two-pane .message:hover .chat-reply-btn{opacity:1}.chat-two-pane .chat-reply-btn:hover{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.chat-msg-toolbar{position:fixed;z-index:10001;display:flex;align-items:center;gap:0;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:999px;padding:4px 6px;box-shadow:0 4px 20px #0000001f;animation:chatToolbarIn .12s ease-out}@keyframes chatToolbarIn{0%{opacity:0;transform:scale(.92) translateY(4px)}to{opacity:1;transform:scale(1) translateY(0)}}.chat-msg-toolbar-emojis{display:flex;align-items:center;gap:2px}.chat-msg-toolbar-emoji{width:32px;height:32px;border:none;background:transparent;border-radius:50%;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background var(--transition-fast),transform .1s ease}.chat-msg-toolbar-emoji:hover{background:var(--bg-body);transform:scale(1.18)}.chat-msg-toolbar-divider{width:1px;height:22px;background:var(--border-subtle);margin:0 4px;flex-shrink:0}.chat-msg-toolbar-actions{display:flex;align-items:center;gap:2px}.chat-msg-toolbar-action{width:30px;height:30px;border:none;background:transparent;border-radius:50%;color:var(--text-muted);font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.chat-msg-toolbar-action:hover{background:var(--accent-soft);color:var(--accent)}.chat-msg-toolbar-action-danger:hover{background:var(--danger-soft, rgba(239,68,68,.08));color:var(--danger, #ef4444)}body.dark-mode .chat-msg-toolbar{background:var(--bg-elevated, #1e1e1e);border-color:var(--border-subtle);box-shadow:0 4px 24px #0006}.chat-reactions-row{display:flex;flex-wrap:wrap;gap:4px;position:absolute;bottom:-12px;z-index:4}.chat-reactions-row:empty{display:none}.chat-two-pane .message:not(.sent) .chat-reactions-row{right:-10px}.chat-two-pane .message.sent .chat-reactions-row{left:-10px}.chat-two-pane .message:has(.chat-reactions-row:not(:empty)){padding-bottom:14px}.chat-reaction-badge{display:inline-flex;align-items:center;gap:3px;border-radius:999px;border:1px solid var(--border-subtle);background:var(--bg-body);font-size:14px;cursor:pointer;transition:all var(--transition-fast);line-height:1;box-shadow:0 1px 4px #0000000f;padding:0}.chat-reaction-badge.reaction-single{width:28px;height:28px;justify-content:center;padding:0}.chat-reaction-badge.reaction-single .reaction-emoji{font-size:13px}.chat-reaction-badge.reaction-multi{padding:3px 6px 3px 5px;height:26px;gap:4px}.chat-reaction-badge.reaction-multi .reaction-emoji{font-size:13px}.reaction-avatars{display:flex;align-items:center}.reaction-avatar{width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:7px;font-weight:700;color:#fff;border:1.5px solid var(--bg-body);margin-left:-4px;position:relative}.reaction-avatar:first-child{margin-left:0}.reaction-avatar-overflow{background:var(--bg-elevated, #e0e0e0);color:var(--text-muted);font-size:7px;font-weight:600}.chat-reaction-badge .chat-reaction-count{font-size:11px;font-weight:600;color:var(--text-muted)}.chat-reaction-badge:hover{border-color:var(--accent);background:var(--bg-surface);opacity:1}.chat-reaction-badge.active{border-color:var(--accent);background:#dbe9fd}.chat-reaction-badge.active .reaction-emoji{filter:none}.chat-reaction-badge.active .chat-reaction-count{color:var(--accent)}.chat-reply-preview{display:flex;align-items:center;gap:8px;padding:7px 12px;background:var(--bg-body);border-left:3px solid var(--accent);border-radius:6px 12px 12px 6px;margin-bottom:4px;font-size:12.5px;color:var(--text-muted);cursor:pointer;max-width:80%;width:fit-content;overflow:hidden;transition:all var(--transition-fast)}.chat-reply-preview:hover{background:var(--accent-soft)}.chat-reply-preview i{font-size:10px;color:var(--accent);flex-shrink:0}.chat-reply-preview-name{font-weight:600;color:var(--accent);white-space:nowrap}.chat-reply-preview-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-light)}.message.sent .chat-reply-preview{background:var(--accent-soft);border-left-color:var(--accent)}.message.sent .chat-reply-preview:hover{background:#0070f32e}.message.sent .chat-reply-preview-name{color:var(--accent)}.message.sent .chat-reply-preview-text{color:var(--text-muted)}.message.sent .chat-reply-preview i{color:var(--accent)}body.dark-mode .chat-reply-preview{background:#ffffff0f;border-left-color:var(--accent)}body.dark-mode .chat-reply-preview:hover{background:#ffffff1a}body.dark-mode .message.sent .chat-reply-preview{background:#0070f324}body.dark-mode .message.sent .chat-reply-preview:hover{background:#0070f338}body.dark-mode .chat-reaction-badge.active{background:#1a3a5c}.chat-reply-bar{display:flex;align-items:center;justify-content:space-between;padding:6px 10px 6px 14px;margin:0 18px 6px;background:var(--bg-body);border:1px solid var(--border-subtle);border-radius:999px;animation:chatToolbarIn .12s ease-out;min-width:0}.chat-reply-bar-body{display:flex;align-items:center;gap:8px;min-width:0;flex:1}.chat-reply-bar-icon{font-size:12px;color:var(--accent);flex-shrink:0}.chat-reply-bar-text{display:flex;align-items:center;gap:6px;min-width:0;font-size:12.5px}.chat-reply-bar-name{font-weight:600;color:var(--accent);white-space:nowrap}.chat-reply-bar-preview{color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-reply-bar-close{width:24px;height:24px;border:none;background:transparent;color:var(--text-muted);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;transition:all var(--transition-fast);flex-shrink:0}.chat-reply-bar-close:hover{background:var(--bg-body);color:var(--text-main)}.msg-edited{font-size:10px;color:var(--text-muted);font-style:italic;font-weight:400;letter-spacing:.1px;text-transform:none;margin-left:6px;opacity:.8;vertical-align:middle}.message.sent .msg-edited{color:#ffffffb3}.chat-inline-edit-input{width:100%;min-height:1.55em;padding:0;border:none;border-radius:0;background:transparent;color:inherit;font-size:14px;font-family:inherit;line-height:1.5;outline:none;box-shadow:none;resize:none;overflow:hidden;box-sizing:border-box}.message-text[data-editing=true]{box-shadow:0 0 0 2px var(--accent),0 1px 3px #0000000d}.message.sent .message-text[data-editing=true]{background:#fff;color:var(--text-main)}.message.sent .message-text[data-editing=true] .chat-inline-edit-input{color:var(--text-main)}.chat-composer{display:flex;flex-direction:column;padding:12px 18px 14px;background:var(--bg-surface);overflow:visible}.chat-composer-inner{display:flex;align-items:center;gap:10px;width:100%;background:var(--bg-body);border:1px solid var(--border-subtle);border-radius:999px;padding:5px 10px;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.chat-composer-inner:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #0070f314}.chat-composer-inner.multiline{border-radius:var(--radius-lg);align-items:flex-end}.chat-composer-ref-btn{width:34px;height:34px;border-radius:50%;border:none;background:transparent;color:var(--text-light);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;transition:all var(--transition-fast);flex-shrink:0}.chat-composer-ref-btn:hover{color:var(--accent);background:var(--accent-soft)}.chat-composer-input{flex:1;border:none;outline:none;background:transparent;font-size:14px;font-family:inherit;padding:8px 4px;color:var(--text-main);min-width:0;resize:none;overflow:hidden;line-height:1.55;max-height:120px;overflow-y:auto}.chat-composer-input::placeholder{color:var(--text-light)}.chat-composer-send{width:34px;height:34px;border-radius:50%;border:none;background:var(--accent);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;transition:all var(--transition-fast);flex-shrink:0}.chat-composer-send:hover{background:var(--accent-hover);transform:scale(1.06)}.chat-two-pane .chat-inpane-view{display:none;flex-direction:column;position:absolute;inset:0;z-index:10;overflow:hidden;background:var(--bg-surface)}.chat-inpane-header{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid var(--border-subtle);flex-shrink:0;background:var(--bg-surface)}.chat-inpane-title{font-size:16px;font-weight:600;color:var(--text-main);margin:0}.chat-inpane-back-btn{width:32px;height:32px;border-radius:50%;border:none;background:transparent;color:var(--text-main);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0;transition:background var(--transition-fast)}.chat-inpane-back-btn:hover{background:var(--bg-hover, rgba(0, 0, 0, .05))}.chat-inpane-body{flex:1;overflow-y:auto;padding:20px}.chat-settings-identity{display:flex;align-items:center;gap:18px;margin-bottom:4px}.chat-settings-big-avatar{width:72px;height:72px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;font-size:28px;flex-shrink:0}.chat-settings-big-avatar svg{width:34px;height:34px;flex-shrink:0}.chat-settings-identity-info{display:flex;flex-direction:column;gap:0;flex:1;min-width:0}.chat-settings-name-input{font-size:20px;font-weight:700;color:var(--text-main);background:transparent;border:none;outline:none;padding:0;width:100%;letter-spacing:-.02em}.chat-settings-name-input:focus{border-bottom:2px solid var(--accent)}.chat-inpane-footer{padding:14px 20px;border-top:1px solid var(--border-subtle);display:flex;gap:8px;justify-content:flex-end;flex-shrink:0;background:var(--bg-surface)}body.dark-mode .chat-inpane-back-btn:hover{background:var(--bg-hover, rgba(255, 255, 255, .06))}.chat-ref-block{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--accent-soft);border-radius:var(--radius-sm);margin-bottom:6px;font-size:13px;max-width:72%;cursor:pointer;transition:all var(--transition-fast);border:1px solid transparent}.chat-ref-block:hover{border-color:var(--accent);box-shadow:0 2px 8px #0070f31a}.chat-ref-block .ref-open-icon{margin-left:auto;font-size:11px;color:var(--text-light);opacity:0;transition:opacity var(--transition-fast);flex-shrink:0}.chat-ref-block:hover .ref-open-icon{opacity:1}.ref-icon{color:var(--accent);font-size:14px;flex-shrink:0}.ref-body{display:flex;flex-direction:column;gap:2px;min-width:0}.ref-title{font-weight:600;color:var(--text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ref-subtitle{font-size:12px;color:var(--text-light);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-ref-restricted{background:var(--bg-body);cursor:default;opacity:.65;border-color:transparent}.chat-ref-restricted:hover{border-color:transparent;box-shadow:none}.chat-ref-restricted .ref-icon{color:var(--text-light)}.chat-ref-restricted .ref-title{color:var(--text-light);font-style:italic}@keyframes refHighlight{0%{box-shadow:0 0 0 3px var(--accent)}to{box-shadow:0 0 0 0 transparent}}.highlighted{animation:refHighlight 2s ease-out}.chat-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10010;animation:chatOverlayIn .15s ease-out}@keyframes chatOverlayIn{0%{opacity:0}to{opacity:1}}.chat-modal-panel{background:var(--bg-surface);border-radius:var(--radius-xl);width:400px;max-width:92vw;max-height:85vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 32px 80px #0000002e,0 8px 24px #00000014;animation:chatPanelIn .2s cubic-bezier(.2,.9,.3,1)}@keyframes chatPanelIn{0%{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.chat-modal-bar{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--border-subtle)}.chat-modal-bar h3{margin:0;font-size:16px;font-weight:700;letter-spacing:-.01em}.chat-modal-close{width:30px;height:30px;border-radius:50%;border:none;background:var(--bg-body);color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:13px;transition:all var(--transition-fast)}.chat-modal-close:hover{background:var(--danger-soft);color:var(--danger)}.chat-modal-body{padding:18px 22px;overflow-y:auto;flex:1}.chat-modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:14px 22px;border-top:1px solid var(--border-subtle)}.chat-modal-footer .btn-primary,.chat-modal-footer .btn-secondary,.chat-modal-footer .btn-danger,.chat-empty-state .btn-primary,.chat-room-list-empty .btn-primary{padding:10px 22px;font-size:14px}.chat-field-label{display:block;font-size:11.5px;font-weight:600;color:var(--text-light);text-transform:uppercase;letter-spacing:.6px;margin-bottom:6px}.chat-field-input{width:100%;padding:11px 14px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);font-size:14px;background:var(--bg-body);color:var(--text-main);outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.chat-field-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #0070f314;background:var(--bg-surface)}.chat-field-input::placeholder{color:var(--text-light)}.chat-new-panel{width:420px}.chat-new-panel .chat-modal-body{padding:20px 24px;display:flex;flex-direction:column;gap:16px}.chat-new-panel .chat-field-input{border-radius:var(--radius-md);padding:12px 16px;font-size:15px}.chat-new-type-toggle{display:inline-flex;gap:4px;width:fit-content;background:var(--bg-surface);border-radius:999px;padding:4px;border:1px solid var(--border-subtle)}.chat-type-btn{display:flex;align-items:center;gap:8px;padding:8px 20px;border-radius:999px;border:none;background:transparent;color:var(--text-muted);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.chat-type-btn:hover{color:var(--text-main);background:var(--bg-body)}.chat-type-btn.active{background:var(--accent);color:#fff;box-shadow:0 2px 8px #007aff4d}.chat-new-section-label{font-size:12px;font-weight:600;color:var(--text-light);text-transform:uppercase;letter-spacing:.5px}.chat-new-members-list{display:flex;flex-direction:column;gap:0;max-height:260px;overflow-y:auto;border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-body)}.chat-new-member-item{display:flex;align-items:center;gap:12px;padding:10px 14px;cursor:pointer;transition:background var(--transition-fast);border-bottom:1px solid var(--border-subtle)}.chat-new-member-item:last-child{border-bottom:none}.chat-new-member-item:hover{background:#00000006}.chat-new-member-item input[type=checkbox]{-webkit-appearance:none;appearance:none;width:20px;height:20px;border:2px solid var(--border-medium);border-radius:50%;cursor:pointer;position:relative;transition:all var(--transition-fast);flex-shrink:0}.chat-new-member-item input[type=checkbox]:checked{background:var(--accent);border-color:var(--accent)}.chat-new-member-item input[type=checkbox]:checked:after{content:"\2713";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:11px;font-weight:700;color:#fff}.chat-new-member-avatar{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;flex-shrink:0}.chat-new-member-name{font-size:14px;font-weight:500;color:var(--text-main);flex:1}.chat-new-member-item.has-dm{width:100%;background:none;border-left:none;border-right:none;border-top:none;text-align:left;font:inherit}.chat-new-member-tick{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--accent-soft);color:var(--accent);font-size:9px}.chat-new-member-hint{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:var(--text-light);flex-shrink:0}.chat-new-member-item.has-dm:hover .chat-new-member-hint{color:var(--accent)}.chat-new-no-members{text-align:center;color:var(--text-light);font-size:13px;padding:32px 16px}.chat-ref-panel{width:380px}.chat-ref-modal-hint{font-size:13px;color:var(--text-light);margin:0 0 16px}.chat-ref-type-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.chat-ref-type-btn{display:flex;flex-direction:column;align-items:center;gap:8px;padding:18px 8px 14px;border-radius:var(--radius-md);border:1px solid var(--border-subtle);background:var(--bg-surface);cursor:pointer;font-size:12.5px;font-weight:500;color:var(--text-main);transition:all var(--transition-fast)}.chat-ref-type-btn:hover{border-color:var(--accent);background:var(--accent-soft);transform:translateY(-2px);box-shadow:0 4px 12px #0000000f}.chat-ref-type-icon{width:40px;height:40px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:16px;background:hsl(var(--ref-hue, 210) 85% 95%);color:hsl(var(--ref-hue, 210) 70% 45%)}.chat-delete-panel{width:360px}.chat-delete-hint{font-size:14px;color:var(--text-muted);line-height:1.55;margin:0}.chat-settings-panel{width:420px}.chat-settings-members{display:flex;flex-direction:column;gap:2px;margin-bottom:8px}.chat-settings-member{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius-sm);transition:background var(--transition-fast)}.chat-settings-member:hover{background:#00000008}.chat-settings-member-avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:11px;font-weight:700;flex-shrink:0}.chat-settings-member-name{flex:1;font-size:14px;color:var(--text-main)}.chat-settings-remove-btn{background:none;border:none;cursor:pointer;color:var(--text-light);font-size:13px;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;opacity:0;transition:all var(--transition-fast)}.chat-settings-member:hover .chat-settings-remove-btn{opacity:1}.chat-settings-remove-btn:hover{background:var(--danger-soft);color:var(--danger)}.chat-settings-add-members{display:flex;flex-direction:column;gap:2px;max-height:180px;overflow-y:auto}.chat-settings-add-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--radius-sm);cursor:pointer;font-size:14px;transition:background var(--transition-fast)}.chat-settings-add-item:hover{background:#00000008}.chat-settings-add-item input[type=checkbox]{-webkit-appearance:none;appearance:none;width:18px;height:18px;border:2px solid var(--border-medium);border-radius:6px;cursor:pointer;position:relative;transition:all var(--transition-fast);flex-shrink:0}.chat-settings-add-item input[type=checkbox]:checked{background:var(--accent);border-color:var(--accent)}.chat-settings-add-item input[type=checkbox]:checked:after{content:"\2713";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:11px;font-weight:700;color:#fff}.chat-settings-add-avatar{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:10px;font-weight:700;flex-shrink:0}.chat-settings-add-name{color:var(--text-main)}.chat-settings-no-add{font-size:13px;color:var(--text-light);margin:0;padding:12px 0;text-align:center}.chat-bg-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:4px}.chat-bg-option{width:100%;aspect-ratio:1.3;border-radius:var(--radius-md);border:2px solid var(--border-subtle);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--text-muted);transition:all .2s ease;position:relative;overflow:hidden;background:var(--bg-body)}.chat-bg-label{font-size:11px;font-weight:500;color:var(--text-light);pointer-events:none;text-align:center;line-height:1.3}.chat-bg-option:hover{border-color:var(--text-light);transform:scale(1.04)}.chat-bg-option.active{border-color:var(--accent);box-shadow:0 0 0 2px #0070f32e}.chat-bg-option.active:after{content:"\f00c";font-family:"Font Awesome 6 Free","Font Awesome 5 Free";font-weight:900;font-size:9px;color:#fff;position:absolute;top:5px;right:5px;width:18px;height:18px;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center;box-shadow:0 1px 4px #00000026}.chat-bg-option.chat-bg-custom{background-size:cover;background-position:center}.chat-bg-option.chat-bg-custom .chat-bg-label{color:#fff;background:#00000073;padding:2px 8px;border-radius:999px}.chat-bg-option.chat-bg-upload,.chat-bg-option.chat-bg-remove{flex-direction:column;gap:4px;border-style:dashed;background:transparent}.chat-bg-option.chat-bg-remove,.chat-bg-option.chat-bg-remove .chat-bg-label{color:var(--danger)}.chat-retention-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.chat-retention-pill{padding:7px 14px;border-radius:999px;border:1px solid var(--border-subtle);background:var(--bg-body);color:var(--text-light);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.chat-retention-pill:hover:not(:disabled){border-color:var(--text-light)}.chat-retention-pill.active{background:var(--accent);border-color:var(--accent);color:#fff}.chat-retention-pill:disabled{cursor:default;opacity:.75}.chat-retention-caption{margin:10px 0 0;font-size:12px;line-height:1.5;color:var(--text-muted)}body.dark-mode .chat-retention-pill{border-color:#ffffff1f;background:var(--bg-elevated, #1e1e1e)}body.dark-mode .chat-retention-pill.active{background:var(--accent);border-color:var(--accent)}body.dark-mode .chat-bg-option{border-color:#ffffff14;background-color:var(--bg-elevated, #1e1e1e)}body.dark-mode .chat-bg-option:hover{border-color:#fff3}body.dark-mode .chat-bg-option.active{border-color:var(--accent);box-shadow:0 0 0 2px #0a84ff40}body.dark-mode .chat-bg-option.active:after{background:var(--accent)}.chat-bg-option[data-bg=bg1]{background-image:image-set(url(/img/auth-background.webp) type("image/webp"),url(/img/auth-background.png) type("image/png"));background-size:cover;background-position:center top}.chat-bg-option[data-bg=bg1] .chat-bg-label{color:#143764e6;text-shadow:0 1px 3px rgba(255,255,255,.7);font-weight:600}.chat-main-area[data-chat-bg]{isolation:isolate}.chat-main-area[data-chat-bg]:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:-1;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,black 9%,black 88%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0%,black 9%,black 88%,transparent 100%)}.chat-main-area[data-chat-bg=bg1]:before{background-image:image-set(url(/img/auth-background.webp) type("image/webp"),url(/img/auth-background.png) type("image/png"));background-size:cover;background-position:center top;background-repeat:no-repeat}.chat-main-area[data-chat-bg=custom]:before{background-image:var(--chat-bg-image);background-size:cover;background-position:center;background-repeat:no-repeat}.chat-main-area[data-chat-bg] .chat-composer{background:transparent}body.dark-mode .chat-main-area[data-chat-bg=bg1]:before{background-image:linear-gradient(#00000061,#00000061),image-set(url(/img/auth-background.webp) type("image/webp"),url(/img/auth-background.png) type("image/png"));background-size:cover;background-position:center top;background-repeat:no-repeat}body.dark-mode .chat-main-area[data-chat-bg=custom]:before{background-image:linear-gradient(#00000061,#00000061),var(--chat-bg-image);background-size:cover;background-position:center;background-repeat:no-repeat}.chat-room-photo{width:100%;height:100%;object-fit:cover;display:block;border-radius:inherit}.chat-room-icon-photo,.chat-intro-avatar.chat-intro-photo,.chat-header-avatar.has-room-photo,.chat-settings-big-avatar.has-photo{background:none;padding:0;overflow:hidden}.chat-settings-big-avatar.is-droppable{cursor:pointer}.chat-settings-big-avatar.is-droppable.drag-over{outline:2px dashed var(--accent);outline-offset:3px}body.dark-mode .chat-sidebar{background:var(--bg-surface);border-right-color:var(--border-subtle)}body.dark-mode .chat-two-pane{box-shadow:0 4px 24px #0000004d}body.dark-mode .chat-search-box{background:transparent;border-color:var(--border-subtle)}body.dark-mode .chat-search-box:focus-within{border-color:var(--accent)}body.dark-mode .chat-room-item:hover{background:#ffffff0d}body.dark-mode .chat-room-item.active{background:var(--accent-soft)}body.dark-mode .chat-room-icon{background:#ffffff0f}body.dark-mode .chat-room-item.active .chat-room-icon{background:var(--accent);color:#fff}body.dark-mode .chat-composer-inner{background:#ffffff0a;border-color:#ffffff14}body.dark-mode .chat-two-pane .message-text{background:#ffffff0f}body.dark-mode .chat-two-pane .message.sent .message-text{background:var(--accent);color:#fff}body.dark-mode .chat-two-pane .message-actions{background:var(--bg-surface);border-color:#ffffff14}body.dark-mode .chat-empty-circle{background:#0a84ff1f}body.dark-mode .chat-modal-panel{box-shadow:0 32px 80px #00000080}body.dark-mode .chat-modal-close{background:#ffffff0f}body.dark-mode .chat-field-input{background:#ffffff0a;border-color:#ffffff14}body.dark-mode .chat-field-input:focus{background:#ffffff0f}body.dark-mode .chat-icon-picker-pill{background:#ffffff0f;border-color:#ffffff1a;color:#fffc}body.dark-mode .chat-icon-picker-pill:hover{background:#ffffff1a;border-color:#ffffff26}body.dark-mode .chat-icon-picker-pill.active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}body.dark-mode .chat-icon-picker,body.dark-mode .chat-color-picker{background:var(--bg-alt);border-color:#ffffff1a;box-shadow:0 4px 12px #0000004d}body.dark-mode .chat-new-type-toggle{background:var(--bg-surface);border-color:var(--border-subtle)}body.dark-mode .chat-type-btn.active{background:var(--accent);box-shadow:0 2px 8px #007aff4d}body.dark-mode .chat-sidebar-tabs{background:#ffffff0a;border-color:var(--border-subtle)}body.dark-mode .chat-sidebar-tab:hover:not(.active){background:#ffffff0f}body.dark-mode .chat-sidebar-tab.active{background:var(--accent);box-shadow:0 2px 8px #0a84ff59}body.dark-mode .chat-new-member-item:hover,body.dark-mode .chat-settings-member:hover,body.dark-mode .chat-settings-add-item:hover{background:#ffffff0a}body.dark-mode .chat-new-member-item input[type=checkbox],body.dark-mode .chat-settings-add-item input[type=checkbox]{border-color:#ffffff26}body.dark-mode .chat-ref-type-btn{background:#ffffff08;border-color:#ffffff14}body.dark-mode .chat-ref-type-btn:hover{background:#0a84ff1f;border-color:var(--accent)}body.dark-mode .chat-ref-type-icon{background:hsla(var(--ref-hue, 210),60%,30%,.3);color:hsl(var(--ref-hue, 210) 80% 65%)}body.dark-mode .chat-two-pane .date-separator span{background:#ffffff0f;color:var(--text-light)}body.dark-mode .chat-inline-edit-input{background:transparent}@media(max-width:768px){.chat-two-pane{max-height:calc(100vh - 80px);border-radius:var(--radius-lg)}.chat-sidebar{width:100%;min-width:unset;position:absolute;inset:0;z-index:2;transition:transform var(--transition-medium)}.chat-main-area{position:absolute;inset:0;z-index:1;background:var(--bg-surface);transform:translate(100%);transition:transform var(--transition-medium)}.chat-two-pane{position:relative;overflow:hidden}.chat-two-pane.show-main .chat-main-area{transform:translate(0);z-index:3}.chat-back-btn{display:flex}.chat-msg-container{padding:16px 14px 8px}.chat-two-pane .message-text{max-width:85%}.chat-composer-inner{padding:4px 8px;border-radius:999px}.chat-composer-input{padding:0 4px;height:34px;min-height:34px;max-height:34px;line-height:34px;overflow:hidden;font-size:16px;box-sizing:border-box}}.calendar-container{background:var(--bg-surface);border-radius:0;padding:0 0 120px;box-shadow:none;border:none;height:auto;min-height:auto;max-height:none;display:flex;flex-direction:column;flex:0 0 auto;overflow:visible}body.dark-mode .calendar-container{background:var(--bg-surface);border-color:transparent;box-shadow:none}.calendar-header{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;border-bottom:1px solid var(--border-subtle);gap:16px;background:var(--bg-surface);flex-shrink:0;width:100%;overflow:visible}.calendar-header-actions{display:flex;align-items:center;gap:10px;margin-left:auto}.calendar-title-section{display:grid;grid-template-columns:40px 1fr 40px;align-items:center;gap:12px;justify-items:center;position:relative;width:clamp(280px,32vw,360px)}.calendar-month-selector{position:relative;display:inline-block}.calendar-month-trigger{display:flex;align-items:center;gap:8px;padding:8px 16px;font-size:1.5rem;font-weight:700;border:none;background:transparent;color:var(--text-main);cursor:pointer;letter-spacing:-.02em;border-radius:8px;transition:all .15s ease}.calendar-month-trigger:hover{background:var(--light-gray)}.calendar-month-trigger i{font-size:12px;color:var(--text-muted);transition:transform .2s ease;margin-left:4px}.calendar-month-selector.open .calendar-month-trigger i{transform:rotate(180deg)}.calendar-month-dropdown{position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%);min-width:260px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;box-shadow:0 8px 24px #0000001f;z-index:2000;opacity:0;visibility:hidden;max-height:0;overflow:hidden;transition:all .2s cubic-bezier(.4,0,.2,1)}.calendar-month-selector.open .calendar-month-dropdown{opacity:1;visibility:visible;max-height:420px;overflow-y:auto}.calendar-dropdown-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:12px}.calendar-dropdown-group-title{font-size:12px;font-weight:700;color:var(--text-muted);margin-bottom:8px;text-transform:uppercase;letter-spacing:.04em;text-align:center}.calendar-month-grid{display:grid;grid-template-columns:1fr;gap:6px;max-height:320px;overflow-y:auto;padding-right:4px}.calendar-month-option,.calendar-year-option{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;font-size:.9rem;color:var(--text-main);cursor:pointer;transition:background-color .15s ease,color .15s ease;border:none;background:transparent;border-radius:10px;width:100%}.calendar-month-option:hover,.calendar-year-option:hover{background:var(--bg-hover)}.calendar-month-option i,.calendar-year-option i{font-size:10px;color:var(--accent);opacity:0;transition:opacity .15s ease;width:10px;text-align:center}.calendar-month-option.selected,.calendar-year-option.selected{background:var(--accent-soft);color:var(--accent);font-weight:600}.calendar-month-option.selected i,.calendar-year-option.selected i{opacity:1}.calendar-year-list{max-height:320px;overflow-y:auto;padding-right:4px;display:flex;flex-direction:column;gap:6px}body.dark-mode .calendar-month-trigger{color:var(--text-main)}body.dark-mode .calendar-month-trigger:hover{background:#ffffff1a}body.dark-mode .calendar-month-dropdown{background-color:#1c1c1ef2;border-color:#ffffff1a;box-shadow:0 8px 24px #0000004d}body.dark-mode .calendar-month-option:hover{background:#ffffff14}body.dark-mode .calendar-month-option.selected{background:#007aff33;color:var(--accent)}.calendar-view-toggle{display:inline-flex;width:fit-content;background:var(--bg-surface);border-radius:999px;padding:4px;gap:4px;border:1px solid var(--border-subtle)}body.dark-mode .calendar-view-toggle{background:var(--bg-surface);border-color:var(--border-subtle)}.view-toggle-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;border:none;background:transparent;color:var(--text-muted);font-size:13px;font-weight:600;border-radius:999px;cursor:pointer;transition:all .2s ease}.view-toggle-btn:hover{color:var(--text-main);background:var(--bg-body)}.view-toggle-btn.active{background:var(--accent);color:#fff;box-shadow:0 2px 8px #007aff40}body.dark-mode .view-toggle-btn.active{box-shadow:0 2px 8px #007aff4d}.calendar-nav-btn{width:32px;height:32px;border-radius:8px;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;font-size:14px}@media(max-width:768px){.calendar-header{padding:8px 12px;gap:8px;flex-wrap:nowrap}.calendar-title-section{display:grid;grid-template-columns:32px auto 32px;align-items:center;gap:8px;justify-items:center;width:clamp(240px,60vw,320px)}.calendar-month-trigger{font-size:.95rem;padding:6px 10px;cursor:default}.calendar-month-trigger i{display:none}.calendar-month-selector{pointer-events:none}.calendar-month-dropdown{display:none}.calendar-title{font-size:.95rem;margin:0;white-space:nowrap}.calendar-nav-btn{width:28px;height:28px;font-size:12px;flex-shrink:0}.calendar-view-toggle{padding:2px;gap:2px;flex-shrink:0;margin-left:auto}.view-toggle-btn{padding:7px 14px;font-size:12px;gap:3px;min-height:auto;min-width:auto}.calendar-add-btn{width:32px;height:32px;font-size:12px;flex-shrink:0}}.calendar-nav-btn:hover{background:var(--light-gray);color:var(--text-main)}.calendar-nav-btn:active{transform:scale(.95)}body.dark-mode .calendar-nav-btn{color:var(--text-secondary)}body.dark-mode .calendar-nav-btn:hover{background:#ffffff1a;color:var(--text-main)}.calendar-add-btn{width:36px;height:36px;border-radius:50px;background:var(--accent);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;transition:all var(--transition-fast)}.calendar-add-btn:hover{background:#06d;transform:scale(1.05)}.calendar-add-btn:active{transform:scale(.95)}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);flex:1;border:none;border-radius:0;overflow:visible;min-height:auto;background:transparent;gap:0px;padding-bottom:80px}body.dark-mode .calendar-grid{background:transparent;border-color:transparent}.calendar-grid:has(.week-colview),.calendar-grid:has(.week-view-scroll-container),.calendar-grid.week-view-active{display:block;border:none;background:transparent;gap:0}.calendar-grid:has(.week-colview)>.calendar-day-header,.calendar-grid:has(.week-view-scroll-container)>.calendar-day-header,.calendar-grid.week-view-active>.calendar-day-header{display:none!important}.calendar-day-header{background:var(--bg-surface);padding:12px 8px;text-align:center;font-weight:500;color:var(--text-muted);font-size:11px;text-transform:capitalize;letter-spacing:0}body.dark-mode .calendar-day-header{background:var(--bg-surface);color:var(--text-muted)}.calendar-day-header:nth-child(6),.calendar-day-header:nth-child(7){background:#00000005}body.dark-mode .calendar-day-header:nth-child(6),body.dark-mode .calendar-day-header:nth-child(7){background:#ffffff05}#calendarDays{display:contents}#calendarDays:has(.week-colview){display:block}#calendarDays>.calendar-day{display:flex;flex-direction:column;align-items:flex-end}.calendar-day{background:var(--bg-surface);min-height:100px;padding:4px 8px;cursor:pointer;transition:background .1s ease;display:flex;flex-direction:column;align-items:flex-end;border:1px solid var(--border-subtle);border-radius:0;background-clip:padding-box;overflow:hidden;position:relative}@media(max-width:900px){.calendar-container{overflow-x:auto!important;overflow-y:visible!important;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column}.calendar-header{position:sticky;top:0;left:0;width:100%;max-width:100vw;z-index:10;background:var(--bg-surface);box-sizing:border-box}.calendar-grid{display:grid!important;grid-template-columns:repeat(7,140px)!important;overflow:visible!important;width:max-content;min-width:980px;gap:4px;padding:10px 10px 60px;min-height:auto}.calendar-day-header{min-width:140px;width:140px;padding:10px;font-size:12px}.calendar-day{min-width:140px;width:140px;min-height:110px;padding:8px 10px;border-radius:10px}#calendarDays{display:contents!important}#calendarDays>.calendar-day{min-width:140px;width:140px}}.calendar-day:nth-child(7n-1),.calendar-day:nth-child(7n){background:#00000004}body.dark-mode .calendar-day:nth-child(7n-1),body.dark-mode .calendar-day:nth-child(7n){background:#ffffff04}body.dark-mode .calendar-day{background:var(--bg-surface);border-color:var(--border-subtle)}.calendar-day:hover{background:#0000000a}body.dark-mode .calendar-day:hover{background:#ffffff0d}.calendar-day.today{background:var(--bg-surface)}.calendar-day.today:nth-child(7n-1),.calendar-day.today:nth-child(7n){background:#00000004}body.dark-mode .calendar-day.today{background:var(--bg-surface)}.calendar-day.today .day-number{background:var(--accent);color:#fff;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:500;font-size:13px}.calendar-day.other-month{background:var(--bg-surface)}.calendar-day.other-month .day-number{color:var(--text-muted);opacity:.4}body.dark-mode .calendar-day.other-month{background:var(--bg-surface)}.day-number{font-weight:400;font-size:13px;color:var(--text-main);margin-bottom:4px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%}.month-events{display:flex;flex-direction:column;gap:3px;width:100%;margin-top:4px;align-items:flex-start}.month-event-item{display:flex;align-items:center;gap:5px;padding:4px 8px;background:#007aff1a;border-left:3px solid var(--accent);border-radius:3px;font-size:11px;cursor:pointer;transition:all .12s ease;overflow:hidden;width:100%;min-height:20px}.month-event-item:hover{background:#007aff2e}body.dark-mode .month-event-item{background:#0a84ff1f}body.dark-mode .month-event-item:hover{background:#0a84ff2e}.month-event-time{font-weight:600;color:var(--accent);font-size:8px;flex-shrink:0}.month-event-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-main);font-weight:500;font-size:10px;flex:1}.month-event-lock,.month-event-repeat{font-size:7px;color:var(--text-muted);opacity:.7;flex-shrink:0;margin-left:2px}.month-event-lock{color:var(--warning)}.month-event-repeat{color:var(--accent)}.month-event-more{font-size:9px;color:var(--text-muted);padding:2px 5px;cursor:pointer;font-weight:500}.month-event-more:hover{color:var(--accent)}.day-header-row{display:flex;align-items:center;gap:4px;width:100%;justify-content:flex-end}.day-header-row .day-number{order:0}.day-header-row .calendar-task-dots{order:-1;flex:1;justify-content:flex-end}.calendar-task-dots{display:flex;flex-wrap:wrap;gap:3px;padding:0;align-items:center}.cal-task-dot{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;cursor:pointer;position:relative;flex-shrink:0;transition:transform .15s ease,box-shadow .15s ease}.cal-task-dot:hover{transform:scale(1.25);box-shadow:0 2px 6px #00000040;z-index:2}.cal-task-dot-icon{display:flex;align-items:center;justify-content:center;width:10px;height:10px;color:#fff}.cal-task-dot-icon svg{width:100%;height:100%;stroke:#fff;fill:none}.cal-task-lock{position:absolute;bottom:-2px;right:-2px;font-size:6px;color:#fff;background:#0000008c;border-radius:50%;width:10px;height:10px;display:flex;align-items:center;justify-content:center;line-height:1}.cal-task-lock:before{display:flex;align-items:center;justify-content:center;transform:translateY(2px)}.cal-task-dot-overflow{font-size:8px;font-weight:600;color:var(--text-muted);padding-left:1px}.cal-task-tooltip{position:fixed;z-index:9999;pointer-events:none;background:var(--bg-surface, #fff);border:1px solid var(--border-subtle, rgba(0,0,0,.1));border-radius:10px;padding:9px 12px;min-width:150px;max-width:240px;box-shadow:0 6px 24px #00000021,0 1.5px 5px #00000012;opacity:0;transform:scale(.94) translateY(3px);transition:opacity .13s ease,transform .13s ease}.cal-task-tooltip.visible{opacity:1;transform:scale(1) translateY(0)}.cal-tooltip-title{font-size:13px;font-weight:600;color:var(--text-main);line-height:1.35;margin-bottom:5px;word-break:break-word}.cal-tooltip-meta{display:flex;align-items:center;gap:5px;margin-bottom:4px}.cal-tooltip-pri-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.cal-tooltip-pri-label{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.cal-tooltip-sheet,.cal-tooltip-due{font-size:11.5px;color:var(--text-muted);display:flex;align-items:center;gap:5px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-tooltip-sheet i,.cal-tooltip-due i{font-size:10px;flex-shrink:0;opacity:.7}body.dark-mode .cal-task-tooltip{background:#2c2c2e;border-color:#ffffff1a;box-shadow:0 6px 24px #0006,0 1.5px 5px #00000040}.cal-tooltip-color-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;vertical-align:middle;flex-shrink:0}.cal-tooltip-time{font-size:11.5px;color:var(--text-muted);display:flex;align-items:center;gap:5px;margin-bottom:3px}.cal-tooltip-time i{font-size:10px;opacity:.7;flex-shrink:0}.cal-tooltip-desc{font-size:11px;color:var(--text-muted);line-height:1.35;margin-top:3px;margin-bottom:2px;word-break:break-word;opacity:.85}.cal-tooltip-vis{font-size:11px;color:var(--text-muted);display:flex;align-items:center;gap:5px;margin-top:3px}.cal-tooltip-vis i{font-size:10px;opacity:.7;flex-shrink:0}.calendar-task-dots-week{padding:2px 0 0;gap:2px;justify-content:center}.cal-task-dot-week{width:16px;height:16px}.cal-task-dot-week .cal-task-dot-icon{width:9px;height:9px}.day-agenda-tasks-row{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--border-subtle)}.day-agenda-tasks-label{font-size:10px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.day-agenda-tasks-row .calendar-task-dots-week{padding:0}.upcoming-events{margin-top:var(--spacing-xl);padding-top:var(--spacing-xl);border-top:1px solid var(--border-subtle)}.upcoming-events h3{margin-bottom:var(--spacing-md);color:var(--text-main)}.event-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.event-item{display:flex;gap:12px;padding:12px 14px;background:var(--bg-body);border-radius:8px;border:1px solid var(--border-subtle);transition:all .12s ease}.event-item:hover{background:var(--bg-surface);box-shadow:0 2px 6px #0000000d}body.dark-mode .event-item{background:#ffffff08;border-color:var(--border-subtle)}body.dark-mode .event-item:hover{background:#ffffff0f}.event-date{text-align:center;min-width:40px}.event-day{font-size:1.25rem;font-weight:600;color:var(--accent)}.event-month{font-size:.7rem;color:var(--text-muted);text-transform:uppercase}.event-details{flex:1}.event-title{font-weight:600;margin-bottom:3px;color:var(--text-main);font-size:.9rem}.event-time{font-size:.75rem;color:var(--text-muted)}:root{--week-header-h: 60px;--week-allday-h: 44px;--week-slot-h: 48px;--week-time-col-w: 56px}@media(max-width:768px){:root{--week-header-h: 52px;--week-allday-h: 40px;--week-slot-h: 44px;--week-time-col-w: 48px}}.week-view-scroll-container{max-height:600px;overflow-y:auto;overflow-x:auto;border-radius:12px;border:1px solid var(--border-medium);background:var(--bg-surface);scrollbar-width:thin;scrollbar-color:var(--border-medium) transparent;-webkit-overflow-scrolling:touch}.week-view-scroll-container::-webkit-scrollbar{width:8px}.week-view-scroll-container::-webkit-scrollbar-track{background:transparent}.week-view-scroll-container::-webkit-scrollbar-thumb{background:var(--border-medium);border-radius:4px}.week-view-scroll-container::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}body.dark-mode .week-view-scroll-container{background:var(--bg-body);border-color:var(--border-subtle)}.week-time-header{height:var(--week-header-h);border-bottom:1px solid var(--border-medium);background:var(--bg-surface)}body.dark-mode .week-time-header{background:var(--bg-body);border-bottom-color:var(--border-subtle)}.week-day-header{height:var(--week-header-h);padding:8px 4px;text-align:center;border-bottom:1px solid var(--border-medium);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;background:var(--bg-surface);position:sticky;top:0;z-index:12}.week-day-name{font-size:11px;color:var(--text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.week-day-header.today .week-day-name{color:var(--accent)}.week-day-number{font-size:20px;font-weight:600;color:var(--text-main);line-height:1;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .12s ease}.week-day-header.today .week-day-number{background:var(--accent);color:#fff;font-size:16px;font-weight:700}.week-allday-strip{height:var(--week-allday-h);border-bottom:1px solid var(--border-medium);background:#00000003;display:flex;align-items:center;padding:4px 3px;gap:3px;overflow:visible;position:sticky;top:var(--week-header-h);z-index:11;cursor:pointer}.week-allday-strip:hover .week-task-dropdown{display:block}body.dark-mode .week-allday-strip{background:#ffffff04;border-bottom-color:var(--border-subtle)}.week-allday-task{display:inline-flex;align-items:center;gap:4px;padding:4px 9px;background:#ff95001f;border-left:2px solid var(--warning);border-radius:6px;font-size:10px;font-weight:600;color:var(--text-main);cursor:pointer;white-space:nowrap;max-width:calc(50% - 8px);overflow:hidden;text-overflow:ellipsis;transition:all .18s cubic-bezier(.4,0,.2,1);flex-shrink:0}.week-allday-task:hover{background:#ff950033;transform:translateY(-1px);box-shadow:0 2px 6px #ff950033}body.dark-mode .week-allday-task{background:#ff950026}body.dark-mode .week-allday-task:hover{background:#ff950040}.week-allday-task i{font-size:8px;color:var(--warning);flex-shrink:0}.week-allday-more{font-size:9px;font-weight:700;color:var(--accent);padding:4px 9px;background:var(--accent-soft);border-radius:10px;flex-shrink:0;transition:all .15s ease;letter-spacing:.02em}.week-task-dropdown{display:none;position:absolute;top:calc(100% + 2px);left:-10px;right:-10px;min-width:320px;background:var(--bg-surface);border:1px solid var(--border-medium);border-radius:12px;box-shadow:0 12px 32px #00000029,0 2px 8px #00000014;z-index:100;padding:8px;max-height:300px;overflow-y:auto}body.dark-mode .week-task-dropdown{background:#1e1e1efa;border-color:var(--border-subtle);box-shadow:0 12px 32px #00000080,0 2px 8px #0000004d}.week-task-dropdown-header{font-size:11px;font-weight:700;color:var(--text-muted);padding:6px 10px;margin-bottom:6px;display:flex;align-items:center;gap:8px;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-subtle)}.week-task-dropdown-header i{color:var(--accent);font-size:10px}.week-task-dropdown-item{display:flex;align-items:center;gap:10px;padding:10px;border-radius:8px;cursor:pointer;transition:all .15s ease;margin-bottom:4px}.week-task-dropdown-item:last-child{margin-bottom:0}.week-task-dropdown-item:hover{background:var(--accent-soft);transform:translate(3px)}body.dark-mode .week-task-dropdown-item:hover{background:#0a84ff26}.task-dropdown-checkbox{width:20px;height:20px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.task-dropdown-checkbox i{font-size:16px;color:var(--warning)}.task-dropdown-content{flex:1;min-width:0;display:flex;align-items:center;gap:8px}.task-dropdown-title{font-size:12px;font-weight:600;color:var(--text-main);flex:1;word-wrap:break-word;line-height:1.4}.task-dropdown-priority{padding:2px 7px;border-radius:5px;font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;flex-shrink:0}.task-dropdown-priority.priority-high{background:#ef444426;color:var(--danger)}.task-dropdown-priority.priority-medium{background:#f59e0b26;color:var(--warning)}.task-dropdown-priority.priority-low{background:#22c55e26;color:var(--success)}.task-dropdown-priority.priority-urgent{background:#af52de26;color:#8944ab}@keyframes highlight-pulse{0%{background:var(--accent-soft);box-shadow:0 0 0 0 var(--accent)}50%{background:var(--accent-soft);box-shadow:0 0 0 6px #0070f326}to{background:var(--bg-surface);box-shadow:0 0 #0070f300}}.highlight-row{animation:highlight-pulse 1.6s ease;scroll-margin-top:120px;outline:2px solid var(--accent);outline-offset:-2px}.week-time-cell{height:var(--week-slot-h);border-bottom:1px solid var(--border-light);position:relative;transition:background-color .1s ease}body.dark-mode .week-time-cell{border-bottom-color:var(--border-subtle)}.week-time-cell:hover{background:#007aff08}body.dark-mode .week-time-cell:hover{background:#ffffff06}.week-time-cell.current-hour{background:#007aff0a}body.dark-mode .week-time-cell.current-hour{background:#0a84ff14}.week-time-cell.drag-over{background:#007aff1f!important;box-shadow:inset 0 0 0 2px var(--accent)}.week-current-time-line{position:absolute;left:var(--week-time-col-w);right:0;height:2px;background:linear-gradient(90deg,#ff3b30,#ff3b30cc);z-index:20;pointer-events:none;box-shadow:0 1px 3px #ff3b304d}.week-current-time-line:before{content:attr(data-time);position:absolute;left:-56px;top:-9px;background:#ff3b30;color:#fff;padding:2px 8px;border-radius:12px;font-size:10px;font-weight:600;letter-spacing:.3px;box-shadow:0 2px 8px #ff3b3040}.week-current-time-line:after{content:"";position:absolute;left:0;top:-4px;width:10px;height:10px;background:#ff3b30;border-radius:50%;box-shadow:0 0 0 3px #ff3b3033;animation:pulse-current-time 2s ease-in-out infinite}@keyframes pulse-current-time{0%,to{box-shadow:0 0 0 3px #ff3b3033}50%{box-shadow:0 0 0 6px #ff3b301a}}body.dark-mode .week-current-time-line{background:linear-gradient(90deg,#ff453a,#ff453acc);box-shadow:0 1px 3px #ff453a66}body.dark-mode .week-current-time-line:before{background:#ff453a;box-shadow:0 2px 8px #ff453a4d}body.dark-mode .week-current-time-line:after{background:#ff453a;box-shadow:0 0 0 3px #ff453a40}.week-event-block{position:absolute;background:var(--bg-surface);border:1px solid var(--border-subtle);border-left:3px solid var(--accent);color:var(--text-main);padding:4px 6px;border-radius:6px;font-size:10px;cursor:pointer;z-index:10;transition:all .12s ease;overflow:hidden;box-shadow:0 1px 3px #0000000f}.week-event-block:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-1px);z-index:20;border-color:var(--border-medium)}.week-event-block:focus{outline:2px solid var(--accent);outline-offset:1px}body.dark-mode .week-event-block{background:#ffffff0f;border-color:#ffffff14;box-shadow:0 1px 4px #0003}body.dark-mode .week-event-block:hover{background:#ffffff1a;box-shadow:0 4px 12px #0000004d}.week-event-block.dragging{opacity:.75;cursor:grabbing;transform:scale(1.02);box-shadow:0 8px 24px #0003;z-index:100}.week-event-block.short-event{padding:2px 5px}.week-event-block.short-event .week-event-title{-webkit-line-clamp:1;line-clamp:1;margin-bottom:0;font-size:9px}.week-event-block.short-event .week-event-time{display:none}.week-event-title{font-weight:600;margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;color:var(--text-main);font-size:11px;line-height:1.3}.week-event-lock,.week-event-repeat{font-size:8px;margin-left:4px;opacity:.8}.week-event-lock{color:var(--warning)}.week-event-repeat{color:var(--accent)}.week-event-block.private-event{border-left-style:dashed}.week-event-time{font-size:9px;color:var(--text-muted);font-weight:500;display:flex;align-items:center;gap:4px}.week-event-time i{font-size:8px;opacity:.6}.week-event-tag{font-size:8px;padding:1px 4px;border-radius:3px;font-weight:600;margin-top:2px;display:inline-flex;align-items:center;gap:2px}.week-event-tag.private{background:#ff950026;color:var(--warning)}.week-event-tag.admins{background:#af52de26;color:#af52de}.week-event-tag i{font-size:7px}.week-event-pill.dragging,.week-task-badge.dragging{opacity:.5;cursor:grabbing}.week-colview{display:flex;gap:0;width:100%;min-height:960px;min-width:1044px;position:relative}.week-time-scaffold{width:64px;flex-shrink:0;border-right:1px solid var(--border-medium);background:var(--bg-surface);position:sticky;left:0;z-index:10}body.dark-mode .week-time-scaffold{background:var(--bg-body);border-right-color:var(--border-subtle)}.week-time-label{height:60px;display:flex;align-items:center;justify-content:center;font-size:11px;color:var(--text-muted);font-weight:500;border-bottom:1px solid var(--border-subtle)}.week-day-column{flex:1 0 140px;min-width:140px;position:relative;border-right:1px solid var(--border-subtle)}.week-day-column:last-child{border-right:none}.week-day-column.today-column,body.dark-mode .week-day-column.today-column{background:transparent}.week-day-header{position:sticky;top:0;z-index:9;background:var(--bg-surface);border-bottom:1px solid var(--border-medium);padding:12px 8px;text-align:center;display:flex;flex-direction:column;gap:2px}body.dark-mode .week-day-header{background:var(--bg-body);border-bottom-color:var(--border-subtle)}.week-day-header.is-today{background:#007aff14}body.dark-mode .week-day-header.is-today{background:#0a84ff1f}.week-day-name{font-size:11px;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.week-day-header.is-today .week-day-name{color:var(--accent);font-weight:600}.week-day-number{font-size:18px;font-weight:600;color:var(--text-primary)}.week-day-header.is-today .week-day-number{color:var(--accent)}.week-day-grid{position:relative;z-index:1}.week-grid-cell{height:60px;border-bottom:1px solid var(--border-subtle);cursor:pointer;position:relative;z-index:1}.week-grid-cell:hover{background:var(--accent-soft)}.week-events-container{position:absolute;top:var(--week-header-h);left:0;right:0;bottom:0;padding:0 4px;pointer-events:none;z-index:2}.week-col-event{position:absolute;width:calc(100% - 8px);background:var(--bg-surface);border-radius:6px;pointer-events:auto;padding:6px 8px;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease;overflow:hidden;box-shadow:0 1px 3px #0000001a}body.dark-mode .week-col-event{background:var(--bg-elevated);box-shadow:0 1px 3px #0000004d}.week-col-event:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000026;z-index:5}body.dark-mode .week-col-event:hover{box-shadow:0 4px 12px #0006}.week-col-event.short-event{padding:4px 6px}.week-event-content{display:flex;flex-direction:column;gap:2px}.week-event-title{font-size:13px;font-weight:500;color:var(--text-primary);line-height:1.3;word-wrap:break-word}.week-col-event.short-event .week-event-title{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.week-event-time-inline{font-size:10px;color:var(--text-muted);font-weight:500}.week-event-icons{display:flex;gap:4px;font-size:10px;color:var(--text-muted);margin-top:2px}.week-event-hover-details{display:none!important}.hover-time{font-size:11px;font-weight:500;color:var(--text-primary)}.hover-badge{font-size:9px;padding:2px 6px;border-radius:4px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.hover-badge.private-badge{background:#ff950026;color:var(--warning)}.hover-badge.admins-badge{background:#af52de26;color:#af52de}.week-now-line{position:absolute;left:0;right:0;height:2px;background:#ff3b30;z-index:8;pointer-events:none}.week-now-line:before{content:attr(data-time);position:absolute;left:4px;top:-10px;background:#ff3b30;color:#fff;font-size:9px;font-weight:600;padding:2px 6px;border-radius:4px}.day-agenda{display:flex;flex-direction:column;gap:0}.day-strip{display:flex;gap:8px;padding:12px 16px;overflow-x:auto;background:var(--bg-surface);border-bottom:1px solid var(--border-medium);scrollbar-width:none;-ms-overflow-style:none}.day-strip::-webkit-scrollbar{display:none}body.dark-mode .day-strip{background:var(--bg-body);border-bottom-color:var(--border-subtle)}.day-strip-item{flex-shrink:0;width:48px;padding:8px;border-radius:12px;text-align:center;cursor:pointer;transition:background .2s ease,transform .15s ease;background:var(--bg-body);border:1px solid var(--border-subtle)}body.dark-mode .day-strip-item{background:var(--bg-elevated)}.day-strip-item:hover{transform:translateY(-2px)}.day-strip-item.selected{background:var(--accent);border-color:var(--accent)}.day-strip-item.is-today:not(.selected){border-color:var(--accent);border-width:2px}.day-strip-name{font-size:10px;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.day-strip-item.selected .day-strip-name{color:#fff}.day-strip-number{font-size:18px;font-weight:600;color:var(--text-primary)}.day-strip-item.selected .day-strip-number{color:#fff}.day-agenda-list{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:8px}.day-agenda-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--text-muted);padding:60px 20px}.day-agenda-empty i{font-size:48px;opacity:.4}.day-agenda-empty p{font-size:14px;font-weight:500}.day-event-row{display:flex;gap:12px;padding:12px;background:var(--bg-surface);border-radius:12px;border-left:4px solid var(--accent);cursor:pointer;transition:transform .15s ease,box-shadow .15s ease;box-shadow:0 1px 3px #00000014}body.dark-mode .day-event-row{background:var(--bg-elevated);box-shadow:0 1px 3px #0003}.day-event-row:active{transform:scale(.98)}.day-event-time{flex-shrink:0;font-size:13px;font-weight:600;color:var(--accent);padding:4px 8px;background:#007aff1a;border-radius:8px;height:fit-content}body.dark-mode .day-event-time{background:#0a84ff33}.day-event-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.day-event-title{font-size:14px;font-weight:500;color:var(--text-primary);line-height:1.4}.day-event-duration{font-size:12px;color:var(--text-muted);font-weight:500}.day-event-badges{display:flex;gap:4px;align-items:center;flex-shrink:0}.event-badge{font-size:11px;padding:4px 6px;border-radius:6px;display:flex;align-items:center;justify-content:center}.event-badge.private-badge{background:#ff950026;color:var(--warning)}.event-badge.admins-badge{background:#af52de26;color:#af52de}.event-badge.repeat-badge{background:#007aff26;color:var(--accent)}@media(max-width:899px){.week-colview{display:none!important}.day-agenda{display:flex!important}.calendar-grid:has(.day-agenda){display:block;width:100%;padding:0;overflow:visible}#calendarDays:has(.day-agenda){display:block}}@media(min-width:900px){.day-agenda{display:none}.week-colview{display:flex}}.week-event-pill.dragging,.week-task-badge.dragging,.week-col-event.dragging{opacity:.4;cursor:grabbing;transform:scale(.98);box-shadow:none;z-index:1}.calendar-drag-preview{position:fixed;z-index:10000;pointer-events:none;background:var(--bg-surface);border:1px solid var(--border-subtle);border-left:3px solid var(--event-color, #007AFF);border-radius:12px;padding:12px 14px;box-shadow:0 8px 32px #0000001f,0 2px 8px #00000014;min-width:140px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.drag-preview-content{display:flex;flex-direction:column;gap:6px}.drag-preview-title{font-size:14px;font-weight:600;color:var(--text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px;letter-spacing:-.01em}.drag-preview-time{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:500;color:var(--text-muted);padding:4px 8px;background:var(--bg-body);border-radius:6px;width:fit-content}.drag-preview-time:before{content:"";width:6px;height:6px;background:var(--event-color, #007AFF);border-radius:50%;flex-shrink:0}.calendar-drag-time-indicator{position:fixed;z-index:9999;background:var(--bg-surface);border:1px solid var(--border-subtle);color:var(--text-main);font-size:11px;font-weight:600;padding:4px 10px;border-radius:6px;text-align:center;pointer-events:none;box-shadow:0 4px 12px #0000001a}.week-day-column.drag-target-column{background:#007aff0a}.week-day-column.drag-target-column .week-day-grid{background:#007aff05}.week-grid-cell.drag-target-slot{background:#007aff1f!important;border:1px dashed rgba(0,122,255,.4)}body.calendar-dragging{cursor:grabbing!important;user-select:none}body.calendar-dragging *{cursor:grabbing!important}body.dark-mode .calendar-drag-preview{background:#28282df2;border-color:#ffffff1a;box-shadow:0 8px 32px #0006,0 2px 8px #00000040}body.dark-mode .calendar-drag-time-indicator{background:#28282df2;border-color:#ffffff1a}body.dark-mode .week-day-column.drag-target-column{background:#007aff14}body.dark-mode .week-day-column.drag-target-column .week-day-grid{background:#007aff0a}body.dark-mode .week-grid-cell.drag-target-slot{background:#007aff33!important;border:1px dashed rgba(0,122,255,.5)}.week-event-resize-handle{position:absolute;left:0;right:0;height:8px;cursor:ns-resize;background:transparent;transition:background .15s ease;z-index:2}.week-event-resize-top{top:0;border-radius:6px 6px 0 0}.week-event-resize-bottom{bottom:0;border-radius:0 0 6px 6px}.week-event-resize-handle:after{content:"";position:absolute;left:50%;transform:translate(-50%);width:20px;height:3px;background:#00000026;border-radius:2px;opacity:0;transition:opacity .15s ease}.week-event-resize-top:after{top:2px}.week-event-resize-bottom:after{bottom:2px}.week-col-event:hover .week-event-resize-handle:after{opacity:1}.week-event-resize-handle:hover{background:#007aff1a}.week-event-resize-handle:hover:after{background:var(--accent);opacity:1}.week-col-event.resizing{z-index:100;box-shadow:0 8px 24px #0003;transition:none}.week-col-event.resizing .week-event-resize-handle{background:#007aff33}.week-col-event.resizing .week-event-resize-handle:after{background:var(--accent);opacity:1}.month-event-item[draggable=true]{cursor:grab}.month-event-item[draggable=true]:active{cursor:grabbing}.month-event-item.dragging{opacity:.5;transform:none;width:100%;max-width:100%}.cal-task-dot[draggable=true]{cursor:grab}.cal-task-dot[draggable=true]:active{cursor:grabbing}.cal-task-dot.dragging{opacity:.35;transform:scale(.85)}.calendar-day .month-events,.calendar-day .month-event-item:not(.dragging){pointer-events:auto}.calendar-day.drag-over *{pointer-events:none!important}.calendar-day.drag-over{background:#007aff1a!important;position:relative}.calendar-day.drag-over:after{content:"";position:absolute;inset:2px;border:2px dashed var(--accent);border-radius:6px;pointer-events:none;z-index:5}body.dark-mode .calendar-day.drag-over{background:#007aff26!important}.week-day-column.drag-over{background:#007aff14!important}.week-day-column.drag-over:after{content:"";position:absolute;inset:0;border:2px dashed var(--accent);border-radius:6px;pointer-events:none;z-index:5}.week-grid-cell.drag-over{background:#007aff26!important;position:relative}.week-grid-cell.drag-over:after{content:"";position:absolute;inset:2px;border:2px dashed var(--accent);border-radius:4px;pointer-events:none}@media(max-width:768px){.calendar-container{padding:0;border-radius:0;min-height:calc(100vh - 100px)}.calendar-header{display:flex;flex-wrap:nowrap;align-items:center;gap:8px;padding:8px 12px}.calendar-title-section{order:1;flex:0 0 auto;display:flex;width:auto}.calendar-header-actions{order:2}.calendar-title-section>div{gap:4px!important}.calendar-title{font-size:.9rem;white-space:nowrap}.calendar-title span{display:none}.calendar-nav-btn{width:24px;height:24px;font-size:10px}.calendar-view-toggle{order:2;flex-shrink:0;margin-left:auto;border-radius:999px!important;padding:2px!important;width:auto}.view-toggle-btn{padding:7px 12px;font-size:12px;border-radius:999px!important;min-height:auto;min-width:auto}.calendar-add-btn{order:3;width:28px;height:28px;flex-shrink:0}.calendar-today-btn{padding:4px 8px;font-size:10px}.calendar-day{min-height:70px;padding:4px}.day-number{font-size:11px;width:20px;height:20px}.calendar-day.today .day-number{width:20px;height:20px;font-size:10px}.month-event-item{padding:2px 4px;font-size:9px}.month-event-time{display:none}.calendar-day-header{padding:8px 4px;font-size:9px}.week-time-allday{font-size:8px}.week-day-header{height:var(--week-header-h);padding:6px 2px}.week-day-name{font-size:9px}.week-day-number{font-size:16px;width:26px;height:26px}.week-day-header.today .week-day-number{font-size:13px}.week-time-cell{height:var(--week-slot-h)}.week-allday-strip{height:var(--week-allday-h);padding:3px 2px}.week-allday-task{font-size:9px;padding:2px 6px}.week-event-block{padding:3px 4px;font-size:9px}.week-event-title{font-size:9px}.week-event-time{display:none}}@media(max-width:480px){.calendar-container{padding:12px}.calendar-day{min-height:60px}.month-events{gap:1px}.month-event-item{padding:1px 3px;border-left-width:2px}.month-event-title{font-size:9px}}.task-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.metric-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:20px 24px;box-shadow:var(--shadow-subtle)}.metric-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-weight:300;margin-bottom:8px}.metric-value{font-size:13px;color:var(--text-primary);font-weight:600;line-height:1.4;letter-spacing:-.02em}.tasks-container{overflow-x:auto}.task-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-lg);min-width:900px}.task-column{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:28px;box-shadow:var(--shadow-subtle)}.task-column-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:8px 0}.status-indicator{width:12px;height:12px;border-radius:50%}.status-indicator.status-todo{background:var(--accent)}.status-indicator.status-in-progress{background:var(--warning)}.status-indicator.status-done{background:var(--success)}.task-column-header h3{font-size:16px;font-weight:700;color:var(--text-main);letter-spacing:-.01em}.task-count{background-color:var(--text-muted);color:var(--white);font-size:.8rem;padding:2px 8px;border-radius:12px;font-weight:600}.task-list{display:flex;flex-direction:column;gap:var(--spacing-md);min-height:200px}.task-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:0;box-shadow:var(--shadow-subtle);transition:all var(--transition-fast);cursor:pointer;position:relative;overflow:hidden}.task-card:hover{box-shadow:var(--shadow-card);transform:translateY(-2px);border-color:var(--border-subtle)}.task-card.status-done{opacity:.85;background:#34c75908}.task-card.status-done .task-header h4{text-decoration:line-through;opacity:.6}.task-card.status-in-progress{background:#ffcc000a}.task-card.status-in-progress .task-status-bar{animation:progress-pulse 2s ease-in-out infinite}@keyframes progress-pulse{0%,to{opacity:1}50%{opacity:.6}}.task-status-bar{height:2px;width:100%;background:var(--border-subtle)}.task-card.status-todo .task-status-bar{background:var(--accent)}.task-card.status-in-progress .task-status-bar{background:var(--warning)}.task-card.status-done .task-status-bar{background:var(--success)}.task-header{display:flex;align-items:center;gap:12px;padding:20px 22px 14px}.task-header h4{font-size:15px;font-weight:600;color:var(--text-main);margin:0;line-height:1.4;letter-spacing:-.01em}.task-status-dropdown{padding:6px 12px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);font-size:12px;font-weight:600;cursor:pointer;background:var(--bg-surface);color:var(--text-main);transition:all var(--transition-fast);outline:none}.task-status-dropdown:hover{border-color:var(--accent);background:var(--accent-soft)}.task-status-dropdown:focus{border-color:var(--accent);box-shadow:0 0 0 3px #0070f31a}.task-actions{display:flex;gap:6px;margin-left:auto}.task-action-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:8px;border-radius:var(--radius-sm);transition:all var(--transition-fast);font-size:14px;display:flex;align-items:center;justify-content:center}.task-action-btn:hover{background:var(--accent-soft);color:var(--accent)}.task-action-btn.delete:hover{background:#ff3b301a;color:var(--danger)}.task-description{font-size:14px;color:var(--text-muted);padding:0 22px 18px;line-height:1.6}.task-description-expandable{transition:all var(--transition-fast);overflow:hidden}.task-card.expanded{box-shadow:var(--shadow-card)}.task-footer{display:flex;justify-content:space-between;align-items:center;padding:16px 22px;background:#f5f5f780;border-top:1px solid var(--border-subtle)}.task-assignee{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--text-main);font-weight:500}.task-assignee-avatar{width:32px;height:32px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px}.task-priority{padding:6px 12px;border-radius:999px;font-weight:700;font-size:10px;text-transform:uppercase;letter-spacing:.6px;display:flex;align-items:center;gap:6px}.task-priority.high{background:#ff3b3014;color:#d62a2a;border:1px solid rgba(255,59,48,.15)}.task-priority.medium{background:#ffcc0014;color:#b37700;border:1px solid rgba(255,204,0,.15)}.task-priority.low{background:#0070f314;color:#0070f3;border:1px solid rgba(0,112,243,.15)}.task-priority.urgent{background:#af52de1a;color:#8944ab;border:1px solid rgba(175,82,222,.22)}.task-due-date{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:var(--radius-md);font-size:12px;font-weight:600;margin-top:12px;background:#f5f5f7cc;color:var(--text-main);border:1px solid var(--border-subtle)}.task-due-date i{font-size:13px;opacity:.8}.task-due-date.overdue{background:#ff3b301a;color:#c91f1f;border:1px solid rgba(255,59,48,.3);animation:pulse-red 2s ease-in-out infinite}.task-due-date.due-today{background:#ffcc001a;color:#960;border:1px solid rgba(255,204,0,.3)}.task-due-date.due-soon{background:#0070f31a;color:#06d;border:1px solid rgba(0,112,243,.3)}.task-due-date.completed-task{background:#34c7591a;color:#1d7a3c;border:1px solid rgba(52,199,89,.3)}@keyframes pulse-red{0%,to{box-shadow:0 0 #fc8181b3}50%{box-shadow:0 0 0 6px #fc818100}}.task-card{cursor:grab}.task-card:active{cursor:grabbing}.task-card.dragging{opacity:.5;transform:rotate(2deg)}.task-list.drag-over{background:#0070f30d;border:2px dashed var(--accent);border-radius:var(--radius-lg)}.task-details-container{display:flex;flex-direction:column;gap:24px}.task-details-title{font-size:24px;font-weight:700;color:var(--text-main);margin:0;padding-bottom:20px;border-bottom:2px solid var(--border-subtle)}.task-details-meta{display:flex;flex-direction:column;gap:16px}.task-details-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.task-detail-item{display:flex;flex-direction:column;gap:8px}.task-detail-item.full-width{grid-column:1 / -1}.detail-label{font-size:13px;font-weight:400;color:#0006;text-transform:none;letter-spacing:0;display:flex;align-items:center;gap:6px}.detail-label i{color:#0006;width:14px}body.dark-mode .detail-label,body.dark-mode .detail-label i{color:#ffffff61}.detail-value{font-size:15px;color:var(--text-main);font-weight:500}.task-user-info{display:flex;align-items:center;gap:10px}.task-user-avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:13px}.status-badge{display:inline-block;padding:6px 14px;border-radius:20px;font-size:13px;font-weight:600;text-transform:capitalize}.status-badge.status-todo{background:#0070f31a;color:var(--accent)}.status-badge.status-inprogress{background:#ffcc001a;color:#960}.status-badge.status-done{background:#34c7591a;color:#1d7a3c}.priority-badge{display:inline-block;padding:6px 14px;border-radius:20px;font-size:13px;font-weight:600;text-transform:capitalize}.priority-badge.priority-low{background:#8e8e931a;color:#636366}.priority-badge.priority-medium{background:#ff95001a;color:#cc7a00}.priority-badge.priority-high{background:#ff3b301a;color:#d62a21}.priority-badge.priority-urgent{background:#af52de1f;color:#8944ab}.task-details-description{display:flex;flex-direction:column;gap:10px}.detail-description{font-size:15px;color:var(--text-secondary);line-height:1.6;margin:0;padding:16px;background:var(--bg-surface-soft);border-radius:var(--radius-lg);border:1px solid var(--border-subtle)}.spreadsheet-header{display:flex;align-items:flex-start;margin-bottom:28px}.header-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:16px;width:100%}.workspace-header-actions{display:flex;align-items:center;gap:8px}.doc-editor table{border-collapse:collapse;width:100%;margin:14px 0;font-size:14px}.doc-editor th,.doc-editor td{border:1px solid var(--border-medium);padding:8px 12px;text-align:left;vertical-align:top;word-break:break-word}.doc-editor thead th,.doc-editor thead td{background:var(--bg-body);font-weight:600}.doc-editor table:not(:has(thead)) tr:first-child>td{background:var(--bg-body);font-weight:600}.doc-color-menu{display:flex;gap:6px;padding:8px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;box-shadow:var(--shadow-subtle);animation:slideDown .15s ease}.doc-color-swatch{width:22px;height:22px;border-radius:6px;border:1px solid var(--border-medium);cursor:pointer;padding:0;display:inline-flex;align-items:center;justify-content:center;font-size:11px;color:var(--text-muted);transition:transform var(--transition-fast)}.doc-color-swatch:hover{transform:scale(1.12)}.doc-color-clear{background:var(--bg-surface)}.doc-cell-swatches{display:flex;gap:6px;padding:4px 4px 10px;margin-bottom:4px;border-bottom:1px solid var(--border-subtle)}.doc-editor td[data-cell-color],.doc-editor th[data-cell-color]{background-color:var(--cc-bg)!important;color:var(--cc-fg)!important}.doc-editor [data-cell-color=red]{--cc-bg:#F5B7B1;--cc-fg:#641E16}.doc-editor [data-cell-color=orange]{--cc-bg:#F8C471;--cc-fg:#7E5109}.doc-editor [data-cell-color=yellow]{--cc-bg:#F7DC6F;--cc-fg:#7D6608}.doc-editor [data-cell-color=green]{--cc-bg:#ABEBC6;--cc-fg:#186A3B}.doc-editor [data-cell-color=blue]{--cc-bg:#AED6F1;--cc-fg:#1A5276}.doc-editor [data-cell-color=purple]{--cc-bg:#D2B4DE;--cc-fg:#6C3483}.doc-editor [data-cell-color=gray]{--cc-bg:#CACFD2;--cc-fg:#424949}body.dark-mode .doc-editor [data-cell-color=red]{--cc-bg:#6E2C26;--cc-fg:#F5B7B1}body.dark-mode .doc-editor [data-cell-color=orange]{--cc-bg:#6E4A1E;--cc-fg:#F8C471}body.dark-mode .doc-editor [data-cell-color=yellow]{--cc-bg:#6B5D14;--cc-fg:#F7DC6F}body.dark-mode .doc-editor [data-cell-color=green]{--cc-bg:#1D5C38;--cc-fg:#A9DFBF}body.dark-mode .doc-editor [data-cell-color=blue]{--cc-bg:#1B4F72;--cc-fg:#AED6F1}body.dark-mode .doc-editor [data-cell-color=purple]{--cc-bg:#4A235A;--cc-fg:#D2B4DE}body.dark-mode .doc-editor [data-cell-color=gray]{--cc-bg:#424949;--cc-fg:#CACFD2}.project-back-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:20px;color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.project-back-btn:hover{background:var(--bg-hover);color:var(--text-main);border-color:var(--border-medium)}.project-back-btn i{font-size:12px}body.dark-mode .project-back-btn{background:var(--bg-tertiary);border-color:var(--border-subtle);color:var(--text-secondary)}body.dark-mode .project-back-btn:hover{background:var(--bg-hover);color:var(--text-main);border-color:var(--accent)}body.dark-mode .btn-primary{background:var(--accent);color:#fff}body.dark-mode .btn-primary:hover{background:var(--accent-hover)}.project-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;text-align:center;color:var(--text-muted);grid-column:1 / -1}.project-empty-state i{font-size:56px;margin-bottom:20px;opacity:.4;color:var(--text-muted)}.project-empty-state h4{font-size:20px;font-weight:600;color:var(--text-main);margin:0 0 8px}.project-empty-state p{font-size:14px;margin:0;color:var(--text-muted)}.spreadsheet-header-left{display:flex;flex-direction:column;gap:4px;width:100%}.spreadsheet-header h3{font-size:24px;font-weight:700;color:var(--text-main);margin:0;display:flex;align-items:center;gap:12px;letter-spacing:-.02em}.spreadsheet-header h3 i{color:var(--accent);font-size:22px}.spreadsheet-subtitle{font-size:14px;color:var(--text-muted);margin:0}#tasks-section .workspace-home-header h3{font-size:1.75rem;font-weight:600;letter-spacing:-.025em;color:var(--text-main)}#tasks-section.spreadsheet-open .workspace-board,#tasks-section.doc-open .workspace-board,#tasks-section.action-board-open .workspace-board{display:none!important}.workspace-board{position:relative;isolation:isolate}.workspace-board-glow{position:absolute;z-index:-1;top:-220px;left:-260px;width:660px;height:760px;pointer-events:none;-webkit-mask-image:linear-gradient(to right,transparent 237px,rgba(0,0,0,.35) 247px,rgba(0,0,0,.8) 255px,#000 262px);mask-image:linear-gradient(to right,transparent 237px,rgba(0,0,0,.35) 247px,rgba(0,0,0,.8) 255px,#000 262px)}.workspace-board-tile{background:var(--bg-surface);border-top-left-radius:24px}.spreadsheet-header,.docs-header{position:relative;z-index:1}@media(min-width:769px){#tasks-section.active:not(.spreadsheet-open):not(.doc-open):not(.action-board-open){overflow:hidden;padding-bottom:0}#tasks-section .workspace-home-header{padding:31px 3px 0 5px;margin-bottom:19px}#tasks-section .workspace-home-header .header-toggle-row{margin-top:4px}#tasks-section .workspace-home-header .sheets-docs-toggle{margin-left:-6px}#tasks-section .sheets-docs-toggle .toggle-btn{padding:9.5px 20px}.workspace-board{flex:1 1 0;min-height:0;display:flex;flex-direction:column;margin:0 calc(-1 * var(--spacing-xl)) 0 -9px}.workspace-board-tile{flex:1 1 auto;min-height:0;overflow-y:auto;padding:8px 33px 48px 8px}}@media(max-width:768px){#tasks-section .workspace-home-header h3{font-size:1.5rem}.workspace-board{margin:0 -10px}.workspace-board-tile{padding:10px 10px 16px}}.spreadsheet-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px}.spreadsheet-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:16px;padding:20px;cursor:pointer;transition:all .25s cubic-bezier(.25,.46,.45,.94);display:flex;flex-direction:column;gap:16px;min-height:160px;position:relative;overflow:hidden}.spreadsheet-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #0000001f;border-color:var(--border-medium)}.spreadsheet-card.create-new{border:2px dashed var(--border-subtle);background:transparent;align-items:center;justify-content:center;color:var(--text-muted);min-height:160px}.spreadsheet-card.create-new:before{display:none}.spreadsheet-card.create-new:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft);transform:translateY(-2px);box-shadow:0 8px 24px #0070f326}.spreadsheet-card-menu-btn{width:28px;height:28px;border:none;background:transparent;color:var(--text-muted);border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;opacity:0;transition:all .15s ease;position:absolute;top:12px;right:12px;z-index:5}.spreadsheet-card:hover .spreadsheet-card-menu-btn{opacity:1}.spreadsheet-card-menu-btn:hover{background:var(--bg-body);color:var(--text-main)}.card-badge-row{position:absolute;right:12px;bottom:16px;display:inline-flex;align-items:center;gap:8px;pointer-events:auto;z-index:4}.card-badge-row .spreadsheet-private-tag,.card-badge-row .doc-private-badge{position:static;margin:0}.card-pin-badge{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:#8e8e931f;color:var(--text-muted);font-size:12px;box-shadow:0 4px 12px #0000000d}.card-pin-badge i{transform:rotate(-12deg)}.card-pin-badge.pinned{color:var(--text-muted);border-color:var(--border-medium);background:var(--bg-body)}.spreadsheet-card-icon{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:22px;transition:all .2s ease}.spreadsheet-card-icon svg{width:22px;height:22px;stroke:currentColor}.spreadsheet-card.create-new .spreadsheet-card-icon{width:56px;height:56px;background:var(--bg-surface-soft);border-radius:50%;font-size:20px}.spreadsheet-card.create-new:hover .spreadsheet-card-icon{background:var(--accent);color:#fff;transform:scale(1.05)}.spreadsheet-card-content{flex:1;display:flex;flex-direction:column;gap:8px}.spreadsheet-card-title{font-size:17px;font-weight:600;color:var(--text-main);margin:0;letter-spacing:-.01em}.spreadsheet-card-meta{font-size:13px;color:var(--text-muted);display:flex;align-items:center;gap:16px}.spreadsheet-card-meta span{display:flex;align-items:center;gap:6px}.spreadsheet-card-meta i{font-size:11px;opacity:.7}.spreadsheet-card-progress{height:4px;background:var(--bg-surface-soft);border-radius:2px;overflow:hidden;margin-top:auto}#tasks-section.spreadsheet-open .spreadsheet-header,#tasks-section.spreadsheet-open .spreadsheet-cards,#tasks-section.spreadsheet-open .docs-header,#tasks-section.spreadsheet-open .doc-cards,#tasks-section.spreadsheet-open .project-view-header,#tasks-section.spreadsheet-open #projectViewHeader,#tasks-section.spreadsheet-open #projectEmptyState{display:none!important}#tasks-section.spreadsheet-open{padding:0;overflow:hidden;height:100%;min-height:calc(100vh - 80px);min-height:calc(100dvh - 80px)}.spreadsheet-panel{display:none;flex-direction:column;height:100%;min-height:calc(100vh - 80px);min-height:calc(100dvh - 80px);background:var(--bg-main);animation:panelFadeIn .25s ease;overflow:hidden}@keyframes panelFadeIn{0%{opacity:0;transform:scale(.99)}to{opacity:1;transform:scale(1)}}#tasks-section.spreadsheet-open .spreadsheet-panel{display:flex}.spreadsheet-panel-header{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);gap:12px;flex-shrink:0}.panel-header-left{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.panel-header-right{display:flex;align-items:center;gap:6px;flex-shrink:0}.panel-header-right .icon-btn{width:auto;height:36px;padding:8px 14px;border-radius:999px}.panel-header-right .icon-btn.icon-only{width:36px;padding:0;border-radius:50%}.icon-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-subtle);background:var(--bg-surface);border-radius:8px;cursor:pointer;color:var(--text-muted);transition:all .2s ease;font-size:14px;flex-shrink:0;overflow:visible;position:relative}.icon-btn:hover{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.icon-btn.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.icon-btn.primary:hover{background:var(--accent-hover)}.back-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:none;background:var(--bg-surface-soft);border-radius:8px;cursor:pointer;color:var(--text-muted);transition:all .2s ease;font-size:14px;flex-shrink:0}.back-btn:hover{background:var(--accent-soft);color:var(--accent)}.spreadsheet-title-group{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.spreadsheet-icon-preview{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:14px;background:var(--accent-soft);color:var(--accent);flex-shrink:0}.spreadsheet-icon-preview svg{width:14px;height:14px;stroke:currentColor}.spreadsheet-title-input{font-size:16px;font-weight:600;color:var(--text-main);background:transparent;border:1px solid transparent;border-radius:6px;padding:6px 10px;outline:none;transition:all .2s ease;min-width:120px;max-width:250px}.spreadsheet-title-input:hover{background:var(--bg-surface-soft)}.spreadsheet-title-input:focus{border-color:var(--accent);background:var(--bg-surface)}.filter-dropdown-container{position:relative}.filter-dropdown{display:none;position:absolute;top:calc(100% + 8px);right:0;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:14px;padding:16px;min-width:220px;box-shadow:0 10px 40px #00000026;z-index:100;animation:dropdownFadeIn .2s ease}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.filter-dropdown.active{display:block}.filter-section{margin-bottom:14px}.filter-section label{display:block;font-size:12px;font-weight:600;color:var(--text-muted);margin-bottom:6px;text-transform:uppercase;letter-spacing:.5px}.filter-section select{width:100%;padding:10px 12px;border:1px solid var(--border-subtle);border-radius:8px;background:var(--bg-surface-soft);color:var(--text-main);font-size:14px;cursor:pointer;transition:all .2s ease}.filter-section select:focus{outline:none;border-color:var(--accent)}.filter-actions{display:flex;gap:8px;margin-top:16px;padding-top:14px;border-top:1px solid var(--border-subtle)}.btn-sm{padding:8px 14px;font-size:13px}.panel-action-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border:1px solid var(--border-subtle);background:var(--bg-surface);border-radius:10px;cursor:pointer;font-size:13px;font-weight:500;color:var(--text-main);transition:all .2s ease;white-space:nowrap}.panel-action-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.panel-action-btn.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.panel-action-btn.primary:hover{background:#06d;transform:translateY(-1px);box-shadow:0 4px 12px #0070f34d}.batch-actions-bar{display:none;align-items:center;justify-content:space-between;padding:12px 24px;background:var(--accent);color:#fff;animation:slideDown .2s ease}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.batch-actions-bar.active{display:flex}.batch-info{font-size:14px;font-weight:500}.batch-buttons{display:flex;gap:8px}.batch-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;background:#fff3;border:none;border-radius:8px;color:#fff;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.batch-btn:hover{background:#ffffff4d}.batch-btn.danger:hover{background:#ff3b30}.batch-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#fff3;border:none;border-radius:8px;color:#fff;cursor:pointer;transition:all .2s ease}.batch-close:hover{background:#ffffff4d}.spreadsheet-panel-body{display:flex;flex:1;min-height:0;overflow:hidden}.column-toggle-sidebar{width:320px;background:var(--bg-surface);border-right:1px solid var(--border-subtle);display:flex;flex-direction:column;flex-shrink:0;transition:width .3s cubic-bezier(.25,1,.5,1),opacity .3s ease;overflow:hidden;margin-left:0}.column-toggle-sidebar.collapsed{width:0px;border-right-width:0px;opacity:0;overflow:hidden}.column-toggle-sidebar .sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-bottom:1px solid var(--border-subtle);background:var(--bg-surface-soft);flex-shrink:0}.column-toggle-sidebar .sidebar-header h4{font-size:10px;font-weight:700;color:var(--text-muted);margin:0;text-transform:uppercase;letter-spacing:.5px}.sidebar-toggle{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:5px;color:var(--text-muted);cursor:pointer;transition:all .15s ease;font-size:12px}.sidebar-toggle:hover{background:var(--bg-surface);color:var(--text-main)}.sidebar-section{padding:6px 4px;flex:1;overflow-y:auto;overflow-x:hidden}.sidebar-section::-webkit-scrollbar{width:4px}.sidebar-section::-webkit-scrollbar-track{background:transparent}.sidebar-section::-webkit-scrollbar-thumb{background:#00000026;border-radius:2px}.sidebar-section::-webkit-scrollbar-thumb:hover{background:#00000040}.sidebar-section-title{display:none}.column-toggle-item{display:flex;align-items:center;gap:10px;padding:8px 10px;margin:1px 0;border-radius:8px;cursor:default;transition:background .15s ease;position:relative}.column-toggle-item:hover{background:#0000000a}.column-toggle-item.active{background:#0070f30f}.column-toggle-item.dragging{opacity:.5;background:#0070f31a}.column-drag-handle{display:flex;align-items:center;justify-content:center;width:16px;color:var(--text-muted);font-size:10px;cursor:grab;opacity:0;transition:opacity .15s ease}.column-toggle-item:hover .column-drag-handle{opacity:.4}.column-drag-handle:hover{opacity:.8!important}.column-drag-handle:active{cursor:grabbing}.column-toggle-label{font-size:13px;font-weight:500;color:var(--text-main);flex:1}.column-edit-btn{background:transparent;border:none;color:var(--text-muted);font-size:14px;padding:6px;cursor:pointer;border-radius:6px;display:flex;align-items:center;justify-content:center;opacity:.5;transition:all .2s ease}.column-edit-btn:hover{opacity:1;color:var(--text-main);background:#0000000d}@media(min-width:769px){.column-edit-btn{opacity:0;pointer-events:none}.column-toggle-item:hover .column-edit-btn{opacity:.5;pointer-events:auto}.column-toggle-item:hover .column-edit-btn:hover{opacity:1}}.column-toggle-item input[type=checkbox]{display:none}.column-toggle-switch{width:34px;height:20px;background:#e0e0e0;border-radius:10px;position:relative;flex-shrink:0;transition:background .2s ease;cursor:pointer}.column-toggle-switch:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;background:#fff;border-radius:50%;box-shadow:0 1px 3px #00000026;transition:transform .2s ease}.column-toggle-item.active .column-toggle-switch{background:var(--accent)}.column-toggle-item.active .column-toggle-switch:after{transform:translate(14px)}.column-toggle-item.drag-over-top:before{content:"";position:absolute;top:-1px;left:10px;right:10px;height:2px;background:var(--accent);border-radius:1px}.column-toggle-item.drag-over-bottom:after{content:"";position:absolute;bottom:-1px;left:10px;right:10px;height:2px;background:var(--accent);border-radius:1px}.column-context-menu{position:fixed;z-index:10000;min-width:140px;background:#fff;border-radius:10px;box-shadow:0 4px 20px #00000026;padding:4px;animation:menuFadeIn .12s ease}@keyframes menuFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.column-context-menu-item{display:flex;align-items:center;gap:8px;padding:8px 12px;font-size:13px;color:var(--text-main);border-radius:6px;cursor:pointer;transition:background .1s ease}.column-context-menu-item:hover{background:#0000000d}.column-context-menu-item i{width:14px;font-size:11px;color:var(--text-muted)}.column-context-menu-item.danger,.column-context-menu-item.danger i{color:#ef4444}.column-context-menu-item.danger:hover{background:#ef444414}.column-context-menu-divider{height:1px;background:#00000014;margin:4px 6px}.column-toggle-label{font-size:13px;font-weight:500;color:var(--text-main);line-height:1.2;overflow:hidden;text-overflow:ellipsis;flex:1}.spreadsheet-table-area{position:relative;flex:1;min-width:0;min-height:0;padding:16px 20px 0;overflow:hidden;background:var(--bg-main);display:flex;flex-direction:column}.table-container{background:var(--bg-surface);border-radius:12px 12px 14px 14px;overflow-x:auto;overflow-y:auto;box-shadow:0 2px 8px #0000000a;border:1px solid var(--border-subtle);flex:1;min-height:0;margin-bottom:20px}.spreadsheet-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px;table-layout:auto;min-width:max-content}.spreadsheet-table thead{position:sticky;top:0;z-index:10;background:var(--bg-surface-soft)}.spreadsheet-table th{padding:10px 14px;text-align:center;font-weight:600;font-size:13px;color:var(--text-muted);white-space:nowrap;position:relative;user-select:none;cursor:pointer;transition:all .2s ease;border-bottom:1px solid var(--border-subtle)}.spreadsheet-table th i{font-size:13px;opacity:.7}.spreadsheet-table th:hover{background:var(--bg-surface);color:var(--text-main)}.spreadsheet-table th:hover i{opacity:1}.spreadsheet-table th .sort-icon{margin-left:4px;font-size:9px;opacity:.4;transition:all .2s ease}.spreadsheet-table th:hover .sort-icon{opacity:.8}.spreadsheet-table th.sorted .sort-icon{opacity:1;color:var(--accent)}.spreadsheet-table th.column-header-draggable{cursor:grab}.spreadsheet-table th.th-dragging{opacity:.4;cursor:grabbing}.spreadsheet-table th.th-drag-before:before,.spreadsheet-table th.th-drag-after:after{content:"";position:absolute;top:0;bottom:0;width:2px;background:var(--accent);z-index:11}.spreadsheet-table th.th-drag-before:before{left:-1px}.spreadsheet-table th.th-drag-after:after{right:-1px}.spreadsheet-table th .column-header-content{display:inline-flex;align-items:center;justify-content:center;gap:6px;max-width:100%;vertical-align:middle}.spreadsheet-table th .column-header-icon{flex:0 0 auto}.spreadsheet-table th .column-header-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.spreadsheet-table tbody tr{transition:all .15s ease}.spreadsheet-table tbody tr:nth-child(2n){background:#00000004}.spreadsheet-table tbody tr:hover{background:#0070f30f}.spreadsheet-table tbody tr.selected{background:#0070f31a}.spreadsheet-table tbody tr.selected:hover{background:#0070f324}.spreadsheet-table td{padding:14px 16px;vertical-align:middle;color:var(--text-main);border-bottom:1px solid var(--border-subtle);white-space:nowrap}.spreadsheet-table td.cell-title-editable{max-width:380px;vertical-align:middle;padding-top:12px;padding-bottom:12px}.spreadsheet-table tr.desc-open td.cell-title-editable,.spreadsheet-table td.cell-title-editable:has(.title-cell-desc:focus-within){vertical-align:top}.spreadsheet-table tbody tr:last-child td{border-bottom:none}.spreadsheet-table .cell-checkbox{width:40px;text-align:center;padding:12px 8px 12px 12px}.spreadsheet-table .cell-checkbox input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--accent);border-radius:3px}.spreadsheet-table .cell-title{font-weight:500;cursor:pointer;transition:color .2s ease;max-width:300px;min-width:150px;white-space:normal;word-wrap:break-word;overflow-wrap:break-word;line-height:1.4}.spreadsheet-table .cell-title:hover{color:var(--accent)}.spreadsheet-table .row-completed .cell-title{text-decoration:line-through;opacity:.5}.priority-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:6px;font-size:11px;font-weight:600}.priority-badge:before{content:"";width:5px;height:5px;border-radius:50%}.priority-badge.high{background:#ef44441a;color:#dc2626}.priority-badge.high:before{background:#ef4444}.priority-badge.urgent{background:#af52de1f;color:#8944ab}.priority-badge.urgent:before{background:#af52de}.priority-badge.medium{background:#f59e0b1a;color:#d97706}.priority-badge.medium:before{background:#f59e0b}.priority-badge.low{background:#6b72801a;color:#6b7280}.priority-badge.low:before{background:#9ca3af}.difficulty-badge.easy,.difficulty-icon.easy,.unified-difficulty-dot.easy{--difficulty-glyph: "\f52d"}.difficulty-badge.medium,.difficulty-icon.medium,.unified-difficulty-dot.medium{--difficulty-glyph: "\f0e7"}.difficulty-badge.hard,.difficulty-icon.hard,.unified-difficulty-dot.hard{--difficulty-glyph: "\f06d"}.difficulty-badge.complex,.difficulty-icon.complex,.unified-difficulty-dot.complex{--difficulty-glyph: "\f5dc"}.difficulty-badge:before,.difficulty-icon:before,.unified-difficulty-dot:before{content:var(--difficulty-glyph, "\f0e7");font-family:"Font Awesome 6 Free";font-weight:900;font-style:normal;line-height:1;-webkit-font-smoothing:antialiased}.difficulty-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 11px 4px 9px;border-radius:999px;border:1px solid transparent;font-size:11px;font-weight:600;line-height:1.4}.difficulty-badge:before{font-size:10px;width:11px;text-align:center;flex-shrink:0}.difficulty-badge.easy{background:#22c55e1a;border-color:#22c55e38;color:#15803d}.difficulty-badge.medium{background:#eab3081a;border-color:#eab3083d;color:#a16207}.difficulty-badge.hard{background:#f973161a;border-color:#f973163d;color:#c2410c}.difficulty-badge.complex{background:#af52de1f;border-color:#af52de42;color:#7e22ce}body.dark-mode .difficulty-badge.easy{background:#22c55e29;border-color:#22c55e4d;color:#4ade80}body.dark-mode .difficulty-badge.medium{background:#eab30829;border-color:#eab3084d;color:#facc15}body.dark-mode .difficulty-badge.hard{background:#f9731629;border-color:#f973164d;color:#fb923c}body.dark-mode .difficulty-badge.complex{background:#af52de2e;border-color:#af52de57;color:#d8a5f5}.assignee-cell{display:flex;align-items:center;gap:8px}.assignee-avatar{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:600;color:#fff;flex-shrink:0}.assignee-name{font-size:13px;color:var(--text-main);font-weight:500}.assignee-avatar-stack{display:inline-flex;align-items:center;flex-shrink:0}.assignee-avatar-stack .assignee-avatar{margin-right:-8px;box-shadow:0 0 0 2px var(--bg-surface, #fff)}.assignee-avatar-stack .assignee-avatar:last-child{margin-right:0}.assignee-avatar.assignee-stack-more{background:var(--bg-surface-soft, #E5E5EA);color:var(--text-muted, #6B7280);font-size:9px;font-weight:700}.assignee-cell .assignee-avatar-stack+.assignee-name{margin-left:8px}.progress-cell{display:flex;align-items:center;gap:8px;min-width:100px}.progress-bar-mini{flex:1;height:6px;background:var(--bg-surface-soft);border-radius:3px;overflow:hidden}.progress-bar-mini .fill{height:100%;background:linear-gradient(90deg,var(--accent),#5AC8FA);border-radius:3px;transition:width .3s ease}.progress-bar-mini .fill.complete{background:linear-gradient(90deg,#10b981,#34d399)}.progress-text{font-size:13px;font-weight:600;color:var(--text-muted);min-width:36px}.date-cell{font-size:13px;font-weight:500}.date-cell.overdue{color:#dc2626;font-weight:600}.date-cell.today{color:#d97706;font-weight:600}.budget-cell{font-weight:600;font-family:SF Mono,Menlo,monospace;font-size:13px}.row-actions{display:flex;gap:6px;opacity:0;transition:opacity .2s ease}.spreadsheet-table tbody tr:hover .row-actions{opacity:1}.row-action-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;background:var(--bg-surface-soft);border-radius:8px;cursor:pointer;color:var(--text-muted);transition:all .2s ease;font-size:13px}.row-action-btn:hover{background:var(--accent-soft);color:var(--accent);transform:translateY(-1px)}.row-action-btn.delete:hover{background:#ef44441a;color:#dc2626}.add-row-btn{display:flex;align-items:center;justify-content:center;gap:10px;padding:16px 24px;margin:20px 20px 100px;border:2px dashed var(--border-subtle);background:transparent;border-radius:12px;cursor:pointer;font-size:14px;font-weight:500;color:var(--text-muted);transition:all .2s ease}.add-row-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.spreadsheet-empty-wrapper{position:relative;min-height:400px}.empty-state-add-btn{position:absolute;top:20px;left:20px;margin:0}.spreadsheet-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:100px 40px;text-align:center}.spreadsheet-empty i{font-size:72px;color:var(--border-subtle);margin-bottom:24px}.spreadsheet-empty h4{font-size:20px;font-weight:600;color:var(--text-main);margin:0 0 10px}.spreadsheet-empty p{font-size:15px;color:var(--text-muted);margin:0 0 28px}.empty-state-icon-wrapper{width:100px;height:100px;border-radius:50%;background:linear-gradient(135deg,var(--accent-soft) 0%,rgba(0,112,243,.08) 100%);display:flex;align-items:center;justify-content:center;margin-bottom:24px;position:relative}.empty-state-icon-wrapper:before{content:"";position:absolute;inset:-4px;border-radius:50%;border:2px dashed var(--border-subtle);animation:rotate 20s linear infinite}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.empty-state-icon-wrapper i{font-size:36px;color:var(--accent)}.empty-state-cta{display:inline-flex;align-items:center;gap:12px;padding:16px 32px;background:linear-gradient(135deg,var(--accent) 0%,#0051CC 100%);color:#fff;font-size:16px;font-weight:600;border:none;border-radius:14px;cursor:pointer;transition:all var(--transition-fast);box-shadow:0 4px 16px #0070f359;position:relative;overflow:hidden}.empty-state-cta:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 0%,rgba(255,255,255,.15) 50%,transparent 100%);transform:translate(-100%);transition:transform .4s ease}.empty-state-cta:hover:before{transform:translate(100%)}.empty-state-cta:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0070f373}.empty-state-cta:active{transform:translateY(0);box-shadow:0 4px 12px #0070f359}.empty-state-cta .cta-icon{width:28px;height:28px;background:#fff3;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:14px}.empty-state-cta .cta-text{letter-spacing:-.01em}.cell-editable{position:relative}.cell-editable:hover:after{content:"";position:absolute;inset:2px;border:2px solid var(--accent);border-radius:8px;opacity:.3;pointer-events:none}.progress-cell-inline{display:flex;align-items:center;gap:10px;min-width:130px;cursor:pointer}.progress-range-slider{-webkit-appearance:none;appearance:none;flex:1;height:6px;border-radius:3px;outline:none;cursor:pointer;background:linear-gradient(to right,transparent 0%,transparent var(--progress, 0%),#e5e5ea var(--progress, 0%),#e5e5ea 100%),linear-gradient(90deg,#ff3b30,#ff9500,#fc0 66%,#34c759);background-size:100% 100%,100% 100%;touch-action:none}.progress-range-slider::-webkit-slider-container{height:6px}.progress-range-slider::-webkit-slider-runnable-track{height:6px;background:transparent;border-radius:3px}.progress-range-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;margin-top:-4px;background:#fff;border-radius:50%;cursor:pointer;box-shadow:0 1px 3px #0000004d;transition:transform .15s ease,box-shadow .15s ease;border:none}.progress-range-slider::-webkit-slider-thumb:hover{transform:scale(1.15);box-shadow:0 2px 4px #00000059}.progress-range-slider::-webkit-slider-thumb:active{background:#fff;transform:scale(1.1);box-shadow:0 2px 6px #0006}.progress-range-slider::-moz-range-thumb{width:14px;height:14px;background:#fff;border-radius:50%;border:none;cursor:pointer;box-shadow:0 1px 3px #0000004d}.progress-range-slider::-moz-range-thumb:active{background:#fff;box-shadow:0 2px 6px #0006}.progress-range-slider::-moz-range-track{height:6px;border-radius:3px;background:linear-gradient(to right,transparent 0%,transparent var(--progress, 0%),#e5e5ea var(--progress, 0%),#e5e5ea 100%),linear-gradient(90deg,#ff3b30,#ff9500,#fc0 66%,#34c759);background-size:100% 100%,100% 100%}.progress-text{font-size:12px;font-weight:600;color:var(--text-muted);min-width:32px;text-align:right}.priority-badge-inline{cursor:pointer;transition:all .15s ease}.priority-badge.priority-badge-inline{gap:6px;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500}.priority-badge.priority-badge-inline:before{width:8px;height:8px}.priority-badge.priority-badge-inline:after{content:"";width:5px;height:5px;margin:-2px 0 0 4px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);opacity:.55}.priority-badge-inline:hover{opacity:.8;transform:scale(1.02)}.priority-badge-inline:active{transform:scale(.98)}.difficulty-badge-inline{cursor:pointer;transition:opacity .15s ease}.difficulty-badge-inline:hover{opacity:.8}.difficulty-badge-inline:active{opacity:.65}.assignee-cell-inline{cursor:pointer;padding:6px 10px;border-radius:8px;margin:-6px -10px;transition:all .2s ease;display:inline-flex;align-items:center;gap:8px}.assignee-cell-inline:hover{background:var(--accent-soft);transform:translateY(-1px)}.assignee-cell-inline:active{transform:translateY(0) scale(.98)}.assignee-cell-inline:hover .avatar-circle{box-shadow:0 0 0 2px var(--accent-soft),0 2px 8px #0070f326}.inline-edit-dropdown{background:#fff;border-radius:12px;box-shadow:0 8px 32px #00000026,0 2px 8px #0000001a;border:1px solid var(--border-subtle);min-width:160px;max-height:280px;overflow-y:auto;opacity:0;transform:translateY(-8px) scale(.95);transition:all .15s ease}.inline-edit-dropdown.visible{opacity:1;transform:translateY(0) scale(1)}.inline-dropdown-option{display:flex;align-items:center;gap:10px;padding:10px 14px;cursor:pointer;transition:background .1s ease;font-size:14px;font-weight:500;color:var(--text-main)}.inline-dropdown-option:first-child{border-radius:12px 12px 0 0}.inline-dropdown-option:last-child{border-radius:0 0 12px 12px}.inline-dropdown-option:hover{background:#0070f314}.inline-dropdown-option.active{background:var(--accent-soft);color:var(--accent)}.inline-dropdown-option>i{margin-left:auto;font-size:12px;color:var(--accent)}.priority-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.priority-dot.low{background:#9ca3af}.priority-dot.medium{background:#f59e0b}.priority-dot.high{background:#ef4444}.priority-dot.urgent{background:#af52de}.difficulty-icon{display:inline-flex;align-items:center;justify-content:center;width:13px;font-size:11px;flex-shrink:0}.difficulty-icon.easy{color:#22c55e}.difficulty-icon.medium{color:#eab308}.difficulty-icon.hard{color:#f97316}.difficulty-icon.complex{color:#af52de}.assignee-option-avatar{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;color:#fff;flex-shrink:0}.assignee-option-avatar.team-avatar,.assignee-avatar.team-avatar{background:#000;border-radius:50%;box-shadow:0 6px 16px #0000002e;display:flex;align-items:center;justify-content:center}.assignee-option-avatar.team-avatar i,.assignee-avatar.team-avatar i{font-size:11px;color:#fff;margin:0;padding:0;line-height:1}.customer-dropdown{min-width:240px;max-width:320px;max-height:340px}.customer-dropdown-search{padding:8px 10px;border-bottom:1px solid var(--border-subtle);position:sticky;top:0;background:#fff;z-index:1;border-radius:12px 12px 0 0}.customer-search-input{width:100%;border:1px solid var(--border-subtle);border-radius:8px;padding:8px 12px;font-size:13px;font-weight:500;outline:none;background:var(--bg-secondary);color:var(--text-main);transition:border-color .15s ease}.customer-search-input:focus{border-color:var(--accent)}.customer-dropdown-options{max-height:260px;overflow-y:auto}.customer-company-tag{font-size:11px;color:var(--text-tertiary);font-weight:400;margin-left:auto;padding-right:4px}.customer-add-new-option{border-top:1px solid var(--border-subtle);color:var(--text-main);font-weight:500}.customer-add-new-icon{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;color:#fff;flex-shrink:0;background:var(--accent)}.customer-add-new-label{font-size:13px;color:var(--text-secondary)}.customer-add-new-label strong{color:var(--text-main);font-weight:600}body.dark-mode .customer-dropdown-search{background:var(--bg-primary)}body.dark-mode .customer-search-input{background:var(--bg-tertiary);border-color:var(--border-subtle);color:var(--text-main)}.inline-save-indicator{position:absolute;top:50%;right:8px;transform:translateY(-50%);width:20px;height:20px;background:var(--success);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:10px;opacity:0;transform:translateY(-50%) scale(.5);transition:all .2s ease;pointer-events:none}.inline-save-indicator.visible{opacity:1;transform:translateY(-50%) scale(1)}.inline-edit-input{width:100%;padding:6px 10px;font-size:13px;font-weight:500;font-family:inherit;border:2px solid var(--accent);border-radius:6px;background:#fff;color:var(--text-main);outline:none;box-shadow:0 0 0 3px #0070f326;transition:all .15s ease}.inline-edit-input:focus{border-color:var(--accent);box-shadow:0 0 0 4px #0070f333}.inline-edit-date{min-width:130px}.inline-edit-number{width:70px;min-width:50px;max-width:80px;text-align:right}.inline-edit-text{min-width:120px}.cell-editable.editing{padding:8px 10px;background:var(--accent-soft)}.cell-date-editable,.cell-budget-editable,.cell-time-editable{cursor:pointer;transition:all .15s ease}.cell-date-editable:hover,.cell-budget-editable:hover,.cell-time-editable:hover{background:#0070f30f;color:var(--accent)}.cell-title-editable{cursor:pointer}.title-cell-text{cursor:pointer;border-radius:6px;transition:background .15s ease,color .15s ease}.title-cell-text:hover{background:#0070f30f;color:var(--accent)}.cell-budget-editable,.cell-time-editable,.cell-source-editable,.cell-contact-editable,.cell-email-editable,.cell-phone-editable,.cell-notes-editable,.value-cell{max-width:220px}.cell-value-wrap{display:flex;flex-direction:column;min-width:0}.cell-value-text{display:block;overflow-x:auto;overflow-y:hidden;white-space:nowrap;text-overflow:ellipsis;scrollbar-width:thin;scrollbar-color:transparent transparent}.cell-budget-editable:hover .cell-value-text,.cell-time-editable:hover .cell-value-text,.cell-source-editable:hover .cell-value-text,.cell-contact-editable:hover .cell-value-text,.cell-email-editable:hover .cell-value-text,.cell-phone-editable:hover .cell-value-text,.cell-notes-editable:hover .cell-value-text,.value-cell:hover .cell-value-text{text-overflow:clip;scrollbar-color:var(--border-medium) transparent}.cell-value-text::-webkit-scrollbar{height:3px}.cell-value-text::-webkit-scrollbar-thumb{background:transparent;border-radius:2px}.cell-budget-editable:hover .cell-value-text::-webkit-scrollbar-thumb,.cell-time-editable:hover .cell-value-text::-webkit-scrollbar-thumb,.cell-source-editable:hover .cell-value-text::-webkit-scrollbar-thumb,.cell-contact-editable:hover .cell-value-text::-webkit-scrollbar-thumb,.cell-email-editable:hover .cell-value-text::-webkit-scrollbar-thumb,.cell-phone-editable:hover .cell-value-text::-webkit-scrollbar-thumb,.cell-notes-editable:hover .cell-value-text::-webkit-scrollbar-thumb,.value-cell:hover .cell-value-text::-webkit-scrollbar-thumb{background:var(--border-medium)}.cell-title-editable{font-weight:500;max-width:300px;min-width:150px;white-space:normal;word-wrap:break-word;overflow-wrap:break-word;line-height:1.4}body.dark-mode .inline-edit-input{background:#2c2c2e;border-color:var(--accent);color:#f5f5f7}body.dark-mode .cell-editable.editing{background:#0a84ff26}body.dark-mode .cell-date-editable:hover,body.dark-mode .cell-budget-editable:hover,body.dark-mode .cell-time-editable:hover,body.dark-mode .title-cell-text:hover{background:#0a84ff1a}body.dark-mode .progress-range-slider{background:linear-gradient(to right,transparent 0%,transparent var(--progress, 0%),#3a3a3c var(--progress, 0%),#3a3a3c 100%),linear-gradient(90deg,#ff3b30,#ff9500,#fc0 66%,#34c759)!important;background-size:100% 100%,100% 100%!important}body.dark-mode .custom-slider-range{background:linear-gradient(to right,transparent 0%,transparent var(--progress, 0%),#3a3a3c var(--progress, 0%),#3a3a3c 100%),linear-gradient(90deg,var(--slider-color, #9CA3AF) 0%,var(--slider-color, #9CA3AF) 100%)!important;background-size:100% 100%,100% 100%!important}body.dark-mode .progress-range-slider::-webkit-slider-thumb{background:#f5f5f7;box-shadow:0 1px 4px #00000080}body.dark-mode .progress-range-slider::-webkit-slider-thumb:active{background:#f5f5f7}body.dark-mode .progress-range-slider::-moz-range-thumb{background:#f5f5f7}body.dark-mode .progress-range-slider::-moz-range-track{background:linear-gradient(to right,transparent 0%,transparent var(--progress, 0%),#3a3a3c var(--progress, 0%),#3a3a3c 100%),linear-gradient(90deg,#ff3b30,#ff9500,#fc0 66%,#34c759);background-size:100% 100%,100% 100%}.mention{background:#0a84ff1a;color:#0078d4;padding:2px 6px;border-radius:4px;font-weight:500}body.dark-mode .mention{background:#0a84ff33;color:#2ea0f0}body.dark-mode .column-drag-handle{color:#fff6}body.dark-mode .column-edit-btn:hover{background:#ffffff1a}body.dark-mode .column-toggle-item:hover .column-drag-handle{color:#ffffffb3}body.dark-mode .column-toggle-item.dragging{background:#0a84ff33}body.dark-mode .inline-edit-dropdown{background:#2c2c2e;border-color:#ffffff1a;box-shadow:0 8px 32px #0006}body.dark-mode .inline-dropdown-option:hover{background:#0a84ff26}body.dark-mode .inline-dropdown-option.active{background:#0a84ff33}.spreadsheet-table tbody tr{transition:all .15s ease,transform .15s ease,box-shadow .15s ease}.spreadsheet-table tbody tr:hover{background:#0070f30d;box-shadow:0 2px 8px #0000000a;position:relative;z-index:1}body.dark-mode .spreadsheet-table tbody tr:hover{background:#0a84ff14;box-shadow:0 2px 8px #0003}@media(max-width:1100px){.panel-header-center{display:none}.spreadsheet-panel-header{flex-wrap:wrap;gap:12px}.panel-header-right{flex-wrap:wrap}}@media(max-width:900px){.column-toggle-sidebar{display:none}.spreadsheet-table-area{padding:16px}}@media(max-width:600px){.spreadsheet-panel-header{padding:8px 12px;flex-wrap:nowrap;gap:6px}.panel-header-left{gap:4px}.panel-header-right{gap:4px;flex-wrap:nowrap}.spreadsheet-icon-preview{width:24px;height:24px}.spreadsheet-icon-preview svg{width:12px;height:12px}.spreadsheet-title-input{font-size:14px;padding:4px;min-width:0;width:100%}.back-btn,.panel-header-left .icon-btn,.panel-header-right .icon-btn{width:28px;height:28px;font-size:11px;padding:0}.panel-header-right .panel-action-btn span{display:none}.spreadsheet-table-area{padding:12px}}@media(max-width:400px){.spreadsheet-icon-preview{display:none!important}.spreadsheet-panel-header{gap:4px;padding:8px}}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.progress-input-container{display:flex;align-items:center;gap:16px}.progress-slider{flex:1;height:8px;-webkit-appearance:none;appearance:none;background:var(--bg-surface-soft);border-radius:4px;outline:none;border:1px solid var(--border-subtle)}.progress-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:var(--accent);cursor:pointer;box-shadow:0 2px 6px #0070f34d;transition:transform .15s}.progress-slider::-webkit-slider-thumb:hover{transform:scale(1.1)}.progress-slider::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:var(--accent);cursor:pointer;border:none;box-shadow:0 2px 6px #0070f34d}.progress-value{font-size:14px;font-weight:600;color:var(--text-main);min-width:40px;text-align:right}.color-picker-row{display:flex;align-items:center;gap:12px}.color-picker-row input[type=color]{width:50px;height:40px;border:none;border-radius:var(--radius-sm);cursor:pointer;padding:0}.color-preview{width:40px;height:40px;border-radius:var(--radius-sm);border:2px solid var(--border-subtle)}.btn-primary{background:var(--accent);color:#fff;border:none;padding:12px 24px;border-radius:999px;font-size:15px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:all var(--transition-fast);box-shadow:var(--shadow-subtle);letter-spacing:-.01em}.btn-wave{position:absolute;border-radius:50%;transform:scale(0);opacity:.45;background:currentColor;pointer-events:none;animation:btnWave .52s cubic-bezier(.25,1,.5,1) forwards}@keyframes btnWave{to{transform:scale(1);opacity:0}}.btn-primary,.btn-secondary,.icon-btn,.toggle-btn,.modal-btn{position:relative}@media(prefers-reduced-motion:reduce){.btn-wave{animation-duration:1ms}}.btn-primary:hover{background:#06d;transform:scale(1.01);box-shadow:var(--shadow-card)}.btn-primary i,.btn-primary .fas,.btn-primary .far,.btn-primary .fab{outline:none;border:none;box-shadow:none}#projectAddBtn,#folderAddBtn,#createDocBtn,#addTaskBtn{border-radius:50%!important;padding:10px!important;width:40px!important;height:40px!important;display:flex!important;align-items:center!important;justify-content:center!important;line-height:1!important;gap:0!important}.btn-secondary{background:transparent;color:var(--text-main);border:1px solid var(--border-subtle);padding:12px 24px;border-radius:999px;font-size:15px;font-weight:600;cursor:pointer;transition:all var(--transition-fast);letter-spacing:-.01em}.btn-secondary:hover{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.btn-danger{padding:12px 24px;background:var(--danger);color:#fff;border:none;border-radius:999px;font-size:15px;font-weight:600;cursor:pointer;transition:all var(--transition-fast);display:inline-flex;align-items:center;gap:8px;box-shadow:var(--shadow-subtle);letter-spacing:-.01em}.btn-danger:hover{background:#e6342a;transform:scale(1.01);box-shadow:0 4px 12px #ff3b304d}.modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:99999;justify-content:center;align-items:center;animation:fadeIn .2s ease}.modal.active{display:flex}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:var(--radius-xl);width:90%;max-width:500px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-soft);animation:slideUp .3s ease}.modal-content::-webkit-scrollbar{width:8px}.modal-content::-webkit-scrollbar-track{background:#00000008;border-radius:10px;margin:20px 0}.modal-content::-webkit-scrollbar-thumb{background:#00000026;border-radius:10px}.modal-content::-webkit-scrollbar-thumb:hover{background:#00000040}body.dark-mode .modal-content::-webkit-scrollbar-track{background:#ffffff0d}body.dark-mode .modal-content::-webkit-scrollbar-thumb{background:#ffffff26}body.dark-mode .modal-content::-webkit-scrollbar-thumb:hover{background:#ffffff40}.modal-content-wide{max-width:700px;width:95%}.task-modal-content{max-width:480px;width:94%;max-height:90vh;background:var(--bg-surface);border-radius:16px;box-shadow:var(--shadow-soft);display:flex;flex-direction:column}body.dark-mode .task-modal-content{background:var(--bg-surface);box-shadow:var(--shadow-soft)}.task-modal-content .modal-header{padding:16px 20px;border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between}.task-modal-content .modal-header h2{font-size:17px;font-weight:600;display:flex;align-items:center;gap:8px;margin:0}.task-modal-content .modal-header h2 i{color:var(--accent);font-size:16px}.task-modal-form{padding:20px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:16px}.task-modal-form .form-group{display:flex;flex-direction:column;gap:6px}.task-modal-form label{font-size:13px;font-weight:600;color:var(--text-main)}.task-modal-form label .optional{font-weight:400;color:var(--text-muted);font-size:12px}.task-modal-form input[type=text],.task-modal-form input[type=number],.task-modal-form input[type=date],.task-modal-form select,.task-modal-form textarea{padding:10px 12px;font-size:14px;border:1px solid var(--border-subtle);border-radius:8px;background:var(--bg-surface);color:var(--text-main);transition:border-color .15s ease,box-shadow .15s ease;width:100%;box-sizing:border-box}.task-modal-form input:focus,.task-modal-form select:focus,.task-modal-form textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #0070f31a}.task-modal-form textarea{resize:vertical;min-height:60px}.form-row-2col{display:grid;grid-template-columns:1fr 1fr;gap:12px}.task-progress-input{display:flex;align-items:center;gap:12px}.task-progress-slider{-webkit-appearance:none;appearance:none;flex:1;height:6px;background:#e5e5ea;border-radius:3px;outline:none}.task-progress-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;background:var(--accent);border-radius:50%;cursor:pointer;box-shadow:0 2px 6px #0070f34d;transition:transform .15s ease}.task-progress-slider::-webkit-slider-thumb:hover{transform:scale(1.1)}.task-progress-slider::-moz-range-thumb{width:18px;height:18px;background:var(--accent);border-radius:50%;border:none;cursor:pointer}.task-progress-value{font-size:14px;font-weight:600;color:var(--accent);min-width:36px;text-align:right}.task-modal-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:8px;border-top:1px solid var(--border-subtle);margin-top:auto;flex-wrap:nowrap}.task-modal-actions .btn-primary i{margin-right:6px}body.dark-mode .task-modal-form input,body.dark-mode .task-modal-form select,body.dark-mode .task-modal-form textarea{background:#1c1c1e;border-color:#ffffff1a;color:#f5f5f7}body.dark-mode .task-progress-slider{background:#ffffff26}@media(max-width:500px){.task-modal-content{max-height:95vh;border-radius:12px 12px 0 0;margin-top:auto}.form-row-2col{grid-template-columns:1fr}}.word-counter{font-weight:400;font-size:11px;color:var(--text-muted);margin-left:8px}.word-counter.warning{color:#f59e0b}.word-counter.limit{color:#ef4444;font-weight:500}.custom-dropdown-container{position:relative;width:100%}.custom-dropdown-trigger{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:8px;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease;min-height:40px}.custom-dropdown-trigger:hover{border-color:var(--text-muted)}.custom-dropdown-trigger.active{border-color:var(--accent);box-shadow:0 0 0 3px #0070f31a}.dropdown-trigger-content{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--text-main)}.dropdown-trigger-content .dropdown-placeholder{color:var(--text-muted)}.dropdown-trigger-content .dropdown-icon{color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;font-size:12px}.dropdown-icon svg,.unified-dropdown-icon svg{width:12px;height:12px;stroke:currentColor}.unified-dropdown-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--text-muted)}.dropdown-menu-option .dropdown-icon{color:var(--text-muted)}.dropdown-menu-option.active .dropdown-icon{color:var(--accent)}.dropdown-arrow{font-size:10px;color:var(--text-muted);transition:transform .2s ease}.custom-dropdown-trigger.active .dropdown-arrow{transform:rotate(180deg)}.custom-dropdown-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border-radius:10px;box-shadow:0 8px 32px #0000001f,0 2px 8px #00000014;border:1px solid var(--border-subtle);z-index:1000;max-height:220px;overflow-y:auto;opacity:0;visibility:hidden;transform:translateY(-8px);transition:all .15s ease}.custom-dropdown-menu.visible{opacity:1;visibility:visible;transform:translateY(0)}.dropdown-menu-option{display:flex;align-items:center;gap:10px;padding:10px 14px;cursor:pointer;transition:background .1s ease;font-size:14px;color:var(--text-main)}.dropdown-menu-option:first-child{border-radius:10px 10px 0 0}.dropdown-menu-option:last-child{border-radius:0 0 10px 10px}.dropdown-menu-option:only-child{border-radius:10px}.dropdown-menu-option:hover{background:#0070f314}.dropdown-menu-option.active{background:var(--accent-soft);color:var(--accent)}.dropdown-menu-option i.fa-check{margin-left:auto;font-size:11px;color:var(--accent)}.status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.status-dot.todo{background:#8e8e93}.status-dot.inprogress{background:#0070f3}.status-dot.done{background:#34c759}.dropdown-assignee-avatar{width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff;flex-shrink:0}.dropdown-assignee-avatar.team-avatar,.assignee-option-avatar.team-avatar,.assignee-avatar.team-avatar{background:#000;border-radius:50%;display:flex;align-items:center;justify-content:center}.dropdown-assignee-avatar.team-avatar i,.assignee-option-avatar.team-avatar i,.assignee-avatar.team-avatar i{font-size:11px;color:#fff;line-height:1;margin:0;padding:0}.modal-progress-container{display:flex;align-items:center;gap:14px}.modal-progress-container .progress-range-slider{flex:1;height:10px;border-radius:5px}.modal-progress-container .progress-range-slider::-webkit-slider-thumb{width:16px;height:16px}.modal-progress-container .progress-range-slider::-moz-range-thumb{width:16px;height:16px}.modal-progress-container .progress-range-slider::-webkit-slider-runnable-track{height:10px;border-radius:5px}.modal-progress-container .progress-text{font-size:15px;font-weight:600;color:var(--accent);min-width:44px;text-align:right}body.dark-mode .custom-dropdown-trigger{background:#1c1c1e;border-color:#ffffff1a}body.dark-mode .custom-dropdown-trigger:hover{border-color:#fff3}body.dark-mode .custom-dropdown-menu{background:#2c2c2e;border-color:#ffffff1a;box-shadow:0 8px 32px #0006}body.dark-mode .dropdown-menu-option:hover{background:#0a84ff26}body.dark-mode .dropdown-menu-option.active{background:#0a84ff33}.event-modal-compact{max-width:480px;width:95%}.event-form-compact{display:flex;flex-direction:column;gap:16px}.event-form-compact .form-group{margin-bottom:0}.event-datetime-row{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:end}.event-date-group{min-width:140px}.event-date-group input[type=date]{width:100%;padding:10px 12px}.event-time-group{min-width:100px}.event-time-group label{font-size:12px}.time-input-compact{display:flex;align-items:center;gap:4px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:8px 10px;transition:all var(--transition-fast)}.time-input-compact:hover{border-color:var(--accent)}.time-input-compact:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #007aff1a}.time-input-compact input[type=number]{width:32px;height:28px;padding:2px;font-size:15px;font-weight:600;color:var(--accent);background:transparent;border:none;text-align:center;-moz-appearance:textfield;appearance:textfield}.time-input-compact input[type=number]::-webkit-outer-spin-button,.time-input-compact input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.time-input-compact input[type=number]:focus{outline:none;background:var(--accent-soft);border-radius:4px}.time-input-compact span{font-size:15px;font-weight:700;color:var(--accent)}.event-form-compact .event-color-picker{gap:8px}.event-form-compact .event-color-option{width:28px;height:28px}.auto-expand-textarea{min-height:60px;max-height:200px;resize:none;overflow-y:hidden;transition:height .15s ease}.auto-expand-textarea:focus{min-height:80px}.label-optional{font-weight:400;font-size:11px;color:var(--text-muted);margin-left:4px}@media(max-width:500px){.event-datetime-row{grid-template-columns:1fr 1fr;gap:10px}.event-date-group{grid-column:1 / -1}}.modal-form-horizontal{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg);padding:24px;flex:1;overflow-y:auto;overflow-x:hidden;align-content:start}.form-column{display:flex;flex-direction:column;min-height:0}.form-group.full-height{flex:1;display:flex;flex-direction:column}.form-group.full-height textarea{flex:1;min-height:200px;resize:vertical}.modal-actions-full{grid-column:1 / -1;display:flex;justify-content:flex-end;gap:12px;padding-top:16px;border-top:1px solid var(--border-subtle);margin-top:8px}@media(max-width:768px){.modal-form-horizontal{grid-template-columns:1fr;padding:20px}.form-group.full-height textarea{min-height:120px}.modal-actions-full{grid-column:1;flex-direction:column-reverse}.modal-actions-full button{width:100%}.form-row{grid-template-columns:1fr}.task-view-toggle{width:100%}.view-toggle-btn{flex:1;justify-content:center}.section-header-actions{flex-wrap:wrap;gap:8px}.section-header-actions button{flex:1;min-width:120px}.task-table{font-size:13px}.task-table th,.task-table td{padding:10px 12px}.col-progress,.col-budget,.col-time{display:none}.col-title{min-width:150px}.todo-list-header{flex-wrap:wrap;gap:12px}.todo-list-header-left{flex:1;min-width:200px}.task-metrics{grid-template-columns:repeat(2,1fr)}}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;flex-shrink:0;border-bottom:1px solid var(--border-subtle)}.modal-header h2{font-size:20px;font-weight:700;color:var(--text-main);letter-spacing:-.02em;margin:0}.modal-body{padding:24px;flex:1;overflow-y:auto;overflow-x:hidden}.modal-footer{padding:20px 24px;display:flex;justify-content:flex-end;gap:12px;border-top:1px solid var(--border-subtle);flex-shrink:0;background:var(--bg-surface)}.ss-edit-panel .chat-inpane-header .unified-modal-close{margin-left:auto}.ss-edit-panel{background:var(--bg-surface);border-radius:var(--radius-xl);width:460px;max-width:96vw;min-height:420px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 32px 80px #0000002e,0 8px 24px #00000014;animation:chatPanelIn .2s cubic-bezier(.2,.9,.3,1)}.ss-edit-panel .chat-inpane-body{overflow:visible;position:relative;z-index:2}.ss-edit-panel .chat-inpane-footer{position:relative;z-index:1}.ss-icon-btn{width:28px;height:28px;border-radius:6px;border:2px solid transparent;background:var(--bg-alt);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:4px;transition:border-color .1s,background .1s;color:var(--text-main)}.ss-icon-btn svg{width:100%;height:100%;display:block}.ss-icon-btn:hover{background:var(--accent-soft)}.ss-icon-btn.active{border-color:var(--accent);background:var(--accent-soft)}.ss-color-swatch{width:18px;height:18px;border-radius:50%;border:2px solid transparent;cursor:pointer;outline:2px solid transparent;outline-offset:2px;transition:outline-color .1s,transform .1s;display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.ss-color-swatch:hover{transform:scale(1.15)}.ss-color-swatch.active{outline-color:var(--accent)}.ss-icon-pill-preview{display:flex;align-items:center;justify-content:center}.ss-icon-pill-preview svg{width:12px;height:12px;display:block}.project-assign-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:12px 8px 8px}.project-assign-empty-icon{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent);margin-bottom:14px}.project-assign-empty-icon svg{width:22px;height:22px;display:block}.project-assign-empty-title{margin:0 0 6px;font-size:15px;font-weight:600}.project-assign-empty-text{margin:0 0 18px;max-width:300px;font-size:13px;line-height:1.45;color:var(--text-muted)}.project-assign-empty .unified-btn i{margin-right:6px}.ss-icon-grid{grid-template-columns:repeat(2,1fr)!important;width:auto!important}.ss-edit-panel .chat-icon-picker,#spreadsheetModal .chat-icon-picker,#createProjectModal .chat-icon-picker,#editProjectModal .chat-icon-picker{width:88px;grid-template-columns:repeat(2,1fr);place-items:center;gap:8px}.ss-edit-panel .chat-color-picker,#spreadsheetModal .chat-color-picker,#createProjectModal .chat-color-picker,#editProjectModal .chat-color-picker{width:70px;grid-template-columns:repeat(2,1fr);place-items:center;gap:10px}#spreadsheetModal .unified-modal-body{overflow:visible;position:relative;z-index:2}#spreadsheetModal .unified-modal-footer{position:relative;z-index:1}.spreadsheet-modal-content{max-width:520px}.spreadsheet-modal-content .modal-body{padding:24px}.spreadsheet-modal-content .modal-footer{padding:20px 24px}.spreadsheet-modal-content .form-group{margin-bottom:20px}.spreadsheet-modal-content .form-group:last-child{margin-bottom:0}.form-row-half{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:20px}.form-row-half .form-group{margin-bottom:0}.icon-select-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.icon-option{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border:2px solid var(--border-subtle);border-radius:10px;background:var(--bg-surface);color:var(--text-muted);cursor:pointer;transition:all .15s ease;font-size:16px}.icon-option:hover{border-color:var(--accent);color:var(--accent)}.icon-option.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.type-select-row{display:flex;gap:12px}.type-option{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;border:2px solid var(--border-subtle);border-radius:10px;background:var(--bg-surface);color:var(--text-muted);cursor:pointer;transition:all .15s ease;font-size:14px;font-weight:500}.type-option i{font-size:16px}.type-option:hover{border-color:var(--accent);color:var(--accent)}.type-option.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.color-select-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.color-option{aspect-ratio:1;border-radius:10px;border:3px solid transparent;cursor:pointer;transition:all .15s ease;position:relative}.color-option:hover{transform:scale(1.1)}.color-option.active{border-color:var(--text-main);box-shadow:0 0 0 2px var(--bg-surface)}.color-option.active:after{content:"\f00c";font-family:"Font Awesome 6 Free";font-weight:900;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:14px;text-shadow:0 1px 2px rgba(0,0,0,.3)}.modal-header-actions{display:flex;align-items:center;gap:var(--spacing-sm)}.btn-edit-grey{background:var(--text-muted);color:#fff;border:none;font-size:14px;font-weight:600;cursor:pointer;padding:10px 18px;display:flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;transition:all var(--transition-fast);box-shadow:var(--shadow-subtle)}.btn-edit-grey:hover{background:#5a5a5f;transform:scale(1.01);box-shadow:var(--shadow-card)}.btn-edit-grey i{font-size:.85rem}.modal-close{background:none;border:none;font-size:22px;color:var(--text-muted);cursor:pointer;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all var(--transition-fast)}.modal-close:hover{background:var(--accent-soft);color:var(--text-main);transform:scale(1.05)}.modal-form{padding:24px;flex:1;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column}.form-group{margin-bottom:var(--spacing-lg)}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:var(--text-main);font-size:14px;display:flex;align-items:center;gap:8px;letter-spacing:-.01em}.form-group label i{color:var(--accent);width:16px}.form-hint{display:block;font-size:12px;color:var(--text-muted);margin-top:6px;font-style:normal}.form-group input,.form-group textarea,.form-group select{width:100%;padding:12px 16px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);font-size:15px;font-family:var(--font-family);background:var(--bg-surface);color:var(--text-main);transition:all var(--transition-fast)}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #0070f31a}.time-inputs-group{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:end;margin-bottom:16px;padding:16px;background:var(--accent-soft);border:1px solid var(--border-subtle);border-radius:var(--radius-lg)}@media(max-width:500px){.time-inputs-group{grid-template-columns:1fr;gap:12px}.time-arrow{transform:rotate(90deg);padding:0;margin:-4px 0}}.time-input-wrapper{margin-bottom:0!important}.time-input-row{display:flex;align-items:center;gap:8px;background:var(--bg-surface);padding:10px 14px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);transition:all var(--transition-fast)}.time-input-row:hover{border-color:var(--accent);box-shadow:var(--shadow-subtle)}.time-input-row:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #0070f31a}.time-input-row input[type=number]{width:45px;height:36px;padding:4px;font-size:18px;font-weight:600;color:var(--accent);background:transparent;border:none;border-radius:var(--radius-sm);text-align:center;transition:all var(--transition-fast);-moz-appearance:textfield;appearance:textfield}.time-input-row input[type=number]::-webkit-outer-spin-button,.time-input-row input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.time-input-row input[type=number]:hover{background:var(--accent-soft)}.time-input-row input[type=number]:focus{outline:none;background:var(--accent-soft)}.time-input-row .time-colon{font-size:20px;font-weight:700;color:var(--accent);margin:0 -4px}.time-arrow{display:flex;align-items:center;justify-content:center;color:var(--accent);font-size:18px;padding-bottom:10px;opacity:.7}.event-color-picker{display:flex;flex-wrap:wrap;gap:10px;padding:4px 0}@media(max-width:480px){.event-color-picker{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none;padding-bottom:2px}.event-color-picker::-webkit-scrollbar{display:none}.event-color-option{width:30px;height:30px;flex-shrink:0}}.event-color-option{width:36px;height:36px;border:3px solid transparent;border-radius:50%;cursor:pointer;transition:all var(--transition-fast);position:relative;box-shadow:var(--shadow-subtle);flex-shrink:0}.event-color-option:hover{transform:scale(1.1);box-shadow:var(--shadow-card)}.event-color-option.selected{border-color:#fff;box-shadow:0 0 0 2px var(--text-main),var(--shadow-card)}.event-color-option.selected:after{content:"\f00c";font-family:"Font Awesome 6 Free";font-weight:900;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:14px;text-shadow:0 1px 3px rgba(0,0,0,.5)}.time-input-wrapper label i{margin-right:6px;color:var(--accent)}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:auto;padding-top:20px;flex-shrink:0;flex-wrap:nowrap}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--light-gray)}::-webkit-scrollbar-thumb{background:var(--text-muted);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--accent)}@media(max-width:1024px){.task-columns{grid-template-columns:1fr;min-width:auto}.sidebar{width:88px;padding:16px 10px}.sidebar-header .logo-wordmark,.nav-item span:not(.notification-badge),.user-info{display:none}.sidebar-header .logo{justify-content:center;padding:6px 0}.sidebar-nav{align-items:center;gap:4px}.nav-item{justify-content:center;align-items:center;padding:0;width:48px;height:48px;flex:0 0 48px;aspect-ratio:1 / 1;box-sizing:border-box;border-radius:var(--radius-nav-item);border:none}.nav-item.active{border:none;background:var(--nav-item-active-bg);color:var(--text-main)}.nav-item .icon{margin:0}.sidebar-footer{padding:12px 6px}.user-profile{justify-content:center}.user-avatar{margin:0 auto;width:44px;height:44px;aspect-ratio:1 / 1;border-radius:50%;object-fit:cover;flex-shrink:0}.finance-metric-sub{display:none}}@media(max-width:768px){.finance-mobile-toggle{display:inline-flex;background:var(--bg-surface);border-radius:999px;padding:3px;gap:0;border:1px solid var(--border-subtle);margin:0 auto 16px}#financeMobileToggle{display:flex;justify-content:center}.finance-mobile-toggle .toggle-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;border:none;background:transparent;color:var(--text-muted);font-size:13px;font-weight:600;border-radius:999px;cursor:pointer;transition:all .2s ease}.finance-mobile-toggle .toggle-btn:hover{color:var(--text-main);background:var(--bg-body)}.finance-mobile-toggle .toggle-btn.active[data-view=revenue]{background:#34c759;color:#fff;box-shadow:0 2px 8px #34c7594d}.finance-mobile-toggle .toggle-btn.active[data-view=expenses]{background:#ff3b30;color:#fff;box-shadow:0 2px 8px #ff3b304d}.finance-mobile-toggle .toggle-btn i{font-size:12px}.finances-columns.show-revenue .expenses-column,.finances-columns.show-expenses .revenue-column{display:none!important}.finances-columns{grid-template-columns:1fr;gap:16px}.finance-column-header{padding:12px 14px}.finance-column .column-icon{display:none}.finances-metrics-row{grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:16px}.finance-metric-card{padding:12px;gap:10px;flex-direction:column;align-items:flex-start}.finance-metric-icon{width:32px;height:32px;font-size:14px}.finance-metric-value{font-size:18px}.finance-metric-label{font-size:10px}.finance-metric-sub{display:none}.subscriptions-section{padding:12px;margin-top:16px}.subscriptions-header{margin-bottom:12px}.subscriptions-icon{width:32px;height:32px;font-size:14px}.subscriptions-title h2{font-size:15px}.subscription-row{padding:12px;gap:10px;border-radius:12px}.subscription-info{flex:1;min-width:0}.subscription-logo{width:32px;height:32px;font-size:14px}.subscription-details{flex:1;min-width:0}.subscription-name{font-size:13px}.subscription-meta{display:none}.subscription-amount-col{gap:4px}.subscription-amount{font-size:14px}.subscription-frequency{font-size:10px}.subscription-actions{margin-left:8px;gap:2px}.subscription-action-btn{width:28px;height:28px;font-size:12px}.subscription-action-btn.link{display:none}#settings-section{padding-top:16px;padding-bottom:calc(var(--nav-safe-bottom) + 20px)}.settings-container{padding:0 10px}.settings-page-layout{padding-left:16px;padding-right:16px}.app-container{flex-direction:column;overflow-x:hidden;height:100vh;height:100dvh;overflow:hidden;backdrop-filter:none;-webkit-backdrop-filter:none}body{padding:0;margin:0;overflow:hidden;position:fixed;width:100%;height:100%}.sidebar{position:fixed;bottom:0;left:0;right:0;width:100%;height:var(--nav-safe-bottom);flex-direction:row;border-right:none;border-top:1px solid var(--border-subtle);border-radius:0;padding:0;padding-bottom:var(--nav-bottom-gap);box-sizing:border-box;z-index:9000;background:var(--bg-surface-soft);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 -4px 24px #00000014;display:flex!important;transform:translateZ(0)}.sidebar .sidebar-header{display:none}.sidebar-nav{flex-direction:row;justify-content:space-around;align-items:center;padding:8px 4px;width:100%;overflow-x:auto;overflow-y:hidden;gap:0;-webkit-overflow-scrolling:touch;scrollbar-width:none}.sidebar-nav::-webkit-scrollbar{display:none}.nav-item{flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:8px 6px;min-width:48px;min-height:48px;flex:1;max-width:80px;font-size:11px;border-radius:var(--radius-nav-item);white-space:nowrap;position:relative}.nav-item .icon{width:22px;height:22px;margin:0}.nav-item span:not(.notification-badge){display:block;font-size:10px;font-weight:600;text-align:center}.nav-item.active{background-color:var(--nav-item-active-bg);color:var(--text-main);border:none}.nav-item .notification-badge{position:absolute;top:4px;right:4px;min-width:16px;height:16px;padding:0 4px;font-size:9px;line-height:16px}.sidebar-footer{display:none}.main-content{padding:0;border-radius:0;width:100%;display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;margin-bottom:0}.content-section{padding-left:10px;padding-right:10px;padding-top:calc(56px + env(safe-area-inset-top));width:100%;flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;padding-bottom:calc(var(--nav-safe-bottom) + 20px)}#calendar-section{overflow-x:hidden}.section-header{padding:16px;margin:0 0 16px;background:var(--bg-surface);flex-direction:row;align-items:flex-start}.section-header h1{font-size:24px}.section-header-actions{flex-wrap:nowrap;gap:8px;margin-left:auto;justify-content:flex-end}.search-bar{max-width:none;width:100%;height:44px;padding:0 14px}.search-wrapper{width:100%;max-width:calc(100vw - 140px)}.topbar-avatar{width:42px;height:42px}.stats-grid{grid-template-columns:1fr;gap:12px}.task-columns{grid-template-columns:1fr}.calendar-container{padding:16px;border-radius:16px}.calendar-header{margin-bottom:16px;flex-wrap:wrap;gap:12px}.calendar-title{font-size:1.25rem;flex:1 1 100%;text-align:center;order:1}.calendar-nav{display:flex;gap:8px;width:100%;justify-content:center;order:2}.calendar-nav-btn{width:40px;height:40px;font-size:18px}.calendar-grid{gap:4px;margin-bottom:20px}.calendar-day-header{font-size:11px;padding:8px 4px;font-weight:700}.calendar-day{font-size:14px;min-height:44px;aspect-ratio:1;border-radius:8px}.calendar-day.has-event:after{bottom:4px;width:4px;height:4px}.upcoming-events{margin-top:20px;padding-top:20px}.upcoming-events h3{font-size:18px;margin-bottom:12px}.event-item{padding:14px;flex-direction:column;gap:12px}.event-date{display:flex;align-items:center;gap:8px;min-width:auto;text-align:left}.event-day{font-size:1.25rem}.event-month{font-size:.8rem}.task-column{margin-bottom:20px;border-radius:16px}.task-header{padding:16px;flex-wrap:wrap;gap:8px}.task-header h4{flex:1;font-size:16px}.task-status-dropdown{font-size:11px;padding:6px 10px}.task-actions{flex:0 0 100%;margin-left:0;justify-content:flex-end;margin-top:8px}.task-list{padding:12px;gap:10px}.task-item{padding:14px;border-radius:12px}.task-item-header{flex-wrap:wrap;gap:8px}.task-title{flex:1 1 100%;font-size:14px}.task-priority,.task-assignee{font-size:11px;padding:4px 8px}.task-description{font-size:13px;line-height:1.5}.task-footer{flex-wrap:wrap;gap:8px;margin-top:10px}.task-due-date{font-size:11px}.task-item-actions{gap:6px}.week-day-header{padding:8px;font-size:12px}#calendar-section{overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;padding-bottom:120px}#calendar-section .calendar-container{overflow:hidden;height:auto;max-height:none;min-height:auto;width:100%;max-width:100vw}#calendar-section .calendar-header{width:100%;max-width:100vw;overflow:hidden;position:sticky;top:0;left:0;z-index:10;background:var(--bg-surface)}#calendar-section .calendar-grid{overflow-x:auto;-webkit-overflow-scrolling:touch}.calendar-view-toggle{margin-bottom:0;gap:2px;padding:2px}.view-toggle-btn{padding:8px 16px;font-size:13px;border-radius:999px;min-height:auto;min-width:auto}.modal-content{width:95%;max-width:95%;max-height:85vh;border-radius:20px}.modal-content-wide{max-width:95%}.modal-header{padding:16px 20px}.modal-body{padding:20px}.modal-footer{padding:16px 20px;flex-direction:column-reverse;gap:8px}.modal-footer button{width:100%}.form-group{margin-bottom:16px}.settings-container{padding:0 16px;box-sizing:border-box;width:100%}.settings-card{border-radius:14px;margin:0 0 16px}.settings-card-header,.settings-card-body{padding:20px}.chat-messages{padding:12px}.message-text{max-width:85%;font-size:14px}.chat-input-container{padding:12px 16px}.event-item,.task-item,.activity-item{padding:12px;font-size:14px}.btn-primary,.btn-secondary,.btn-danger{padding:12px 20px;font-size:14px;min-height:44px}.section-subtitle{font-size:13px}.activity-feed{border-radius:0;padding:16px;margin:0;border-left:none;border-right:none}.activity-item{margin:0 -16px;padding:16px;border-radius:0;border-left:none;border-right:none}.chat-container{border-radius:0;border-left:none;border-right:none;display:flex;flex-direction:column;height:100%;max-height:none}.calendar-container{border-radius:0;margin:0;padding:16px;border-left:none;border-right:none}.upcoming-events{padding:16px;margin:0 -16px}.team-section{padding:0}.team-header{margin:0 0 16px;padding:16px;border-radius:0}.team-list{padding:0 16px}.teammate-card{border-radius:12px}.settings-card{border-radius:14px;margin:0 0 16px;border-left:1px solid var(--border-subtle);border-right:1px solid var(--border-subtle)}.settings-card:first-child{border-top-left-radius:14px;border-top-right-radius:14px}.settings-card:last-child{border-bottom-left-radius:14px;border-bottom-right-radius:14px}.spreadsheet-header,.docs-header{flex-direction:column;gap:12px;padding:12px 16px;align-items:stretch}.spreadsheet-header.project-view-header{flex-direction:row;align-items:flex-start;justify-content:space-between;gap:10px}.project-view-header .spreadsheet-header-left{min-width:0}.project-view-header .spreadsheet-header-left h3{font-size:20px}.project-view-header .spreadsheet-subtitle{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-view-header .spreadsheet-header-right{flex-shrink:0}.spreadsheet-tabs{order:1;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:4px}.spreadsheet-controls{order:2;flex-wrap:wrap;gap:8px;justify-content:space-between}.spreadsheet-controls button,.spreadsheet-controls select{flex:1;min-width:44px;min-height:44px}.spreadsheet-wrapper{overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch;margin:0;padding:0}.spreadsheet-table{min-width:800px}.spreadsheet-empty{padding:40px 16px;margin:0;border-radius:0}#metrics .section-header{padding:16px;margin:0 0 16px}.metrics-stats-row{padding:0 16px;gap:12px}.metrics-stat-card{border-radius:12px}.metrics-section-title,.metrics-charts-container{padding:0 16px}.modal-content{width:100%;max-width:100%;max-height:100vh;border-radius:0;margin:0}.modal-header{padding:16px;position:sticky;top:0;background:var(--bg-surface);z-index:10}.modal-body{padding:16px;overflow-y:auto;-webkit-overflow-scrolling:touch}.modal-footer{padding:16px;position:sticky;bottom:0;background:var(--bg-surface);flex-direction:column-reverse;gap:8px;border-top:1px solid var(--border-subtle)}.modal-footer button{width:100%;min-height:48px}.settings-dropdown{position:fixed;inset:auto 8px 80px;max-height:60vh;border-radius:16px}.btn-primary,.btn-secondary,.btn-danger,.btn-icon,.icon-btn,.nav-item,.modal-footer button,.spreadsheet-controls button,.task-item-actions button,.event-actions button,.message-actions button{min-height:44px;min-width:44px}input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],input[type=time],textarea,select{min-height:48px;font-size:16px;padding:12px 16px}.task-item-actions,.event-actions,.message-actions{gap:8px}.task-item-actions button,.event-actions button,.message-actions button{min-width:44px;min-height:44px;padding:8px}.search-wrapper{max-width:none;width:100%}.search-results{position:fixed;top:60px;left:0;right:0;max-height:calc(100vh - 140px);border-radius:0;border-left:none;border-right:none}.top-bar-actions{gap:4px;margin-left:auto}.top-bar-actions .icon-btn,.top-bar-actions .topbar-avatar{border:none!important}.top-bar-actions .icon-btn{width:44px;height:44px}.header-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.header-toggle-row .sheets-docs-toggle{flex:0 0 auto}}@media(max-width:480px){.nav-item span:not(.notification-badge){display:none}.nav-item{padding:8px;max-width:56px}.search-bar{height:44px;padding:0 12px}.section-header h1{font-size:22px}.section-header-actions{width:100%}.section-header-actions button{flex:1}.section-header,.activity-feed,.chat-messages,.calendar-container,.team-header,.team-list{padding-left:12px;padding-right:12px}.spreadsheet-controls{flex-direction:column}.spreadsheet-controls button,.spreadsheet-controls select{width:100%}.metrics-stat-value{font-size:1.25rem}.metrics-stat-icon{width:36px;height:36px;font-size:14px}}.text-center{text-align:center}.event-details-modal{max-width:480px}.event-modal-header-clean{padding:28px 28px 24px!important;border-bottom:1px solid #f0f0f0}.event-header-text{flex:1;min-width:0}.event-header-text h2{font-size:1.5rem;font-weight:700;color:#1a1a1a;margin:0 0 6px;line-height:1.3}.event-subtitle{font-size:.9rem;color:#6b7280;margin:0;font-weight:500}.btn-icon-clean{width:38px;height:38px;border:none;background:#f3f4f6;border-radius:10px;color:#6b7280;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.btn-icon-clean:hover{background:#e5e7eb;color:#0070f3}.btn-close-clean{width:38px;height:38px;background:transparent!important;color:#9ca3af!important}.btn-close-clean:hover{background:#f3f4f6!important;color:#1a1a1a!important}.event-modal-body-clean{padding:24px 28px!important}.event-info-row-clean{display:flex;align-items:center;gap:14px;padding:16px 0;border-bottom:1px solid #f3f4f6}.event-info-row-clean:last-of-type{border-bottom:none}.event-icon-clean{width:20px;flex-shrink:0;color:#9ca3af;font-size:16px;text-align:center}.event-info-text{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.event-label-clean{font-size:.75rem;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.03em}.event-value-clean{font-size:.95rem;color:#1a1a1a;font-weight:600;line-height:1.4}.visibility-badge-clean{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;background:#f3f4f6;color:#6b7280;border-radius:12px;font-size:.8rem;font-weight:600;width:fit-content}.visibility-badge-clean i{font-size:.75rem}.event-description-clean{margin-top:24px;padding-top:24px;border-top:1px solid #f3f4f6}.event-desc-label{display:flex;align-items:center;gap:8px;font-size:.75rem;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.03em;margin-bottom:12px}.event-desc-label i{font-size:14px}.event-desc-text{padding:16px;background:#fafafa;border-radius:12px;color:#4b5563;font-size:.9rem;line-height:1.6;min-height:60px;white-space:pre-wrap}.event-desc-text:empty:before{content:"No description provided";color:#9ca3af;font-style:italic}.event-modal-footer-clean{padding:20px 28px!important;border-top:1px solid #f0f0f0;gap:12px}.event-modal-footer-clean .unified-btn,.event-modal-footer-clean .btn-clean{border-radius:999px!important;padding:10px 22px!important;font-weight:600!important;font-size:.9rem!important}.btn-clean{border-radius:12px!important;padding:10px 20px!important;font-weight:600!important;font-size:.9rem!important}body.dark-mode .event-modal-header-clean{border-bottom-color:#ffffff1a}body.dark-mode .event-header-text h2{color:#f3f4f6}body.dark-mode .event-subtitle{color:#9ca3af}body.dark-mode .btn-icon-clean{background:#ffffff14;color:#9ca3af}body.dark-mode .btn-icon-clean:hover{background:#ffffff26;color:#60a5fa}body.dark-mode .btn-close-clean{background:transparent!important}body.dark-mode .btn-close-clean:hover{background:#ffffff14!important;color:#f3f4f6!important}body.dark-mode .event-info-row-clean{border-bottom-color:#ffffff0f}body.dark-mode .event-icon-clean,body.dark-mode .event-label-clean{color:#6b7280}body.dark-mode .event-value-clean{color:#f3f4f6}body.dark-mode .visibility-badge-clean{background:#ffffff14;color:#9ca3af}body.dark-mode .event-description-clean{border-top-color:#ffffff0f}body.dark-mode .event-desc-text{background:#ffffff0a;color:#d1d5db}body.dark-mode .event-modal-footer-clean{border-top-color:#ffffff1a}.unified-modal-header-actions{display:flex;flex-direction:row;align-items:center;gap:8px;flex-shrink:0}@media(max-width:480px){.event-info-grid{grid-template-columns:1fr}.event-header-content{gap:12px}.event-color-indicator{width:40px;height:40px}}.team-overview-card{padding:32px}.team-meta-row{display:flex;align-items:center;justify-content:space-between;margin-top:16px;gap:16px;flex-wrap:wrap}.team-overview-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:28px;padding-bottom:20px;border-bottom:1px solid var(--border-subtle)}.team-name-wrapper{display:inline-flex;align-items:center;gap:10px}.team-name-text{font-size:28px;font-weight:700;color:var(--text-main);letter-spacing:-.02em;margin:0;line-height:1}.btn-edit-team-name{background:transparent;border:none;color:var(--text-muted);cursor:pointer;width:28px;height:28px;padding:0;border-radius:var(--radius-sm);transition:all var(--transition-fast);font-size:12px;opacity:0;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.team-name-wrapper:hover .btn-edit-team-name{opacity:1}.btn-edit-team-name:hover{background:var(--accent-soft);color:var(--accent)}.team-name-edit-wrapper{display:flex;align-items:center;gap:8px;margin-bottom:12px}.team-name-input{font-size:24px;font-weight:700;color:var(--text-main);background:var(--bg-surface);border:2px solid var(--accent);border-radius:var(--radius-md);padding:8px 14px;width:280px;max-width:100%;outline:none;letter-spacing:-.02em}.team-name-input:focus{box-shadow:0 0 0 3px #007aff26}.btn-save-team-name,.btn-cancel-team-name{background:transparent;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:8px 12px;cursor:pointer;transition:all var(--transition-fast);font-size:14px}.btn-save-team-name{color:var(--success);border-color:var(--success)}.btn-save-team-name:hover{background:var(--success);color:#fff}.btn-cancel-team-name{color:var(--text-muted)}.btn-cancel-team-name:hover{background:var(--light-gray);color:var(--text-main)}.btn-leave-team{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 20px;line-height:1;transition:all var(--transition-fast);border:1.5px solid var(--danger);color:var(--danger);background:transparent;border-radius:999px;font-size:13px;font-weight:600;cursor:pointer}.btn-leave-team:hover{background:#ff3b3014}.btn-leave-team i{font-size:13px;line-height:1;display:flex;align-items:center;justify-content:center}.btn-leave-team span{line-height:1}.role-info-card{background:var(--bg-surface-soft);border:1px solid var(--border-subtle);border-radius:var(--radius-xl);box-shadow:var(--shadow-subtle);margin-bottom:20px;overflow:hidden}.role-info-summary{display:flex;align-items:center;gap:10px;padding:14px 16px;cursor:pointer;font-size:14px;font-weight:600;color:var(--text-secondary);transition:all var(--transition-fast);list-style:none}.role-info-summary::-webkit-details-marker{display:none}.role-info-summary:hover{color:var(--text-main)}.role-info-summary i.fa-chevron-down{font-size:10px;transition:transform var(--transition-fast);margin-left:auto}.role-info-card[open] .role-info-summary i.fa-chevron-down{transform:rotate(180deg)}.role-info-summary i.fa-shield-alt{font-size:13px;color:var(--accent)}.role-info-card[open] .role-info-summary{border-bottom:1px solid var(--border-subtle)}.role-info-list{display:flex;flex-direction:column;gap:10px;padding:14px 16px 16px}.role-info-item{display:flex;align-items:center;gap:12px;padding:10px 12px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);transition:background var(--transition-fast),border-color var(--transition-fast)}.role-info-item:hover{background:var(--bg-surface-soft);border-color:var(--border-medium)}.role-info-icon{width:auto;height:auto;border-radius:0;display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0;background:transparent;line-height:1}.role-info-icon.owner{color:#d4a017}.role-info-icon.admin{color:var(--accent)}.role-info-icon.member{color:#8e8e93}.role-info-icon i{font-size:1em;filter:none}.role-info-content{display:flex;flex-direction:column;gap:6px;min-width:0}.role-info-name{width:fit-content}.role-info-desc{font-size:12px;color:var(--text-muted);line-height:1.3}body.dark-mode .role-info-card{background:var(--bg-surface)}body.dark-mode .role-info-item{background:#ffffff08;border-color:var(--border-medium)}body.dark-mode .role-info-item:hover{background:#ffffff14}body.dark-mode .role-info-icon.owner{color:#f5c542}body.dark-mode .role-info-icon.member{color:#a1a1aa}body.dark-mode .role-info-card[open] .role-info-summary{border-bottom-color:var(--border-medium)}body.dark-mode .team-name-input{background:var(--bg-body);color:var(--text-main)}.team-overview-info h2{font-size:28px;font-weight:700;color:var(--text-main);margin-bottom:12px;letter-spacing:-.02em}.team-meta{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.team-code-display{display:inline-flex;align-items:center;gap:8px;background:var(--bg-surface-soft, #f0f0f0);padding:8px 14px;border-radius:8px;font-weight:700;color:var(--text-main);font-size:14px;letter-spacing:.5px;border:1px solid var(--border-subtle)}.btn-copy-code{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px 6px;border-radius:var(--radius-sm);transition:all var(--transition-fast);font-size:13px}.btn-copy-code:hover{color:var(--accent)}.team-member-count{display:flex;align-items:center;gap:8px;color:var(--text-muted);font-size:14px}.team-member-count i{color:var(--accent)}.team-members-container{margin-top:24px}.section-title{display:flex;align-items:center;gap:12px;margin:30px 0 20px;font-size:20px;font-weight:600;color:var(--text-main)}.section-title .badge{background:var(--danger);color:#fff;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:700}.team-members-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px}.team-member-card{background:#fff;border:none;border-radius:14px;padding:16px;transition:all .2s ease;position:relative;box-shadow:0 2px 8px #00000014}.team-member-card:hover{box-shadow:0 4px 16px #0000001f}.member-card-menu-btn{position:absolute;top:10px;right:10px;background:none;border:none;color:var(--text-muted);cursor:pointer;width:28px;height:28px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:14px;opacity:0;transition:opacity .15s ease,background .15s ease}.team-member-card:hover .member-card-menu-btn{opacity:1}.member-card-menu-btn:hover{background:var(--bg-surface-soft, #f0f0f0);color:var(--text-main)}.member-card-dropdown{position:absolute;top:38px;right:10px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:10px;box-shadow:0 4px 16px #0000001f;z-index:100;min-width:170px;padding:4px;overflow:hidden}.member-card-dropdown-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;border:none;background:none;cursor:pointer;font-size:13px;font-weight:500;color:var(--text-main);border-radius:8px;transition:background .15s ease;text-align:left}.member-card-dropdown-item:hover{background:#f0f0f0;color:var(--text-main)}.member-card-dropdown-item:hover i{color:var(--accent)}.member-card-dropdown-item i{width:16px;text-align:center;color:var(--text-muted);font-size:13px}.member-activity-modal-content{background:var(--bg-surface);border-radius:16px;width:420px;max-width:90vw;max-height:70vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #00000026;overflow:hidden}.member-activity-modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid var(--border-subtle)}.member-activity-modal-header h3{font-size:16px;font-weight:700;color:var(--text-main);margin:0}.member-activity-close{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:16px;padding:4px;border-radius:6px;transition:background .15s ease}.member-activity-close:hover{background:var(--bg-surface-soft, #f0f0f0)}.member-activity-list{overflow-y:auto;padding:8px 12px;flex:1}.member-activity-item{display:flex;align-items:flex-start;gap:10px;padding:10px 8px;border-radius:8px;transition:background .15s ease}.member-activity-item:hover{background:var(--bg-surface-soft, #f5f5f5)}.member-activity-icon{color:var(--accent);font-size:13px;margin-top:3px;width:16px;text-align:center;flex-shrink:0}.member-activity-text{display:flex;flex-direction:column;gap:2px;min-width:0}.member-activity-desc{font-size:13px;color:var(--text-main);line-height:1.4}.member-activity-time{font-size:11px;color:var(--text-muted)}.member-header{display:flex;align-items:center;gap:10px;margin-bottom:10px}.member-avatar{width:40px;height:40px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:600;flex-shrink:0;overflow:hidden;position:relative}.member-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}.member-name{font-size:15px;font-weight:700;color:var(--text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.member-details{display:flex;flex-direction:column;gap:2px;margin-bottom:4px}.member-detail-label{font-size:12px;color:var(--text-muted);font-weight:500}.member-detail-value{font-size:14px;color:var(--text-main);font-weight:600}.member-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px;padding-top:10px;border-top:1px solid var(--border-subtle);opacity:0;transform:translateY(10px);transition:opacity .2s ease,transform .2s ease;pointer-events:none}.team-member-card:hover .member-actions{opacity:1;transform:translateY(0);pointer-events:auto}.btn-role-action{flex:1;min-width:60px;max-width:110px;padding:6px 10px;border:none;border-radius:999px;font-size:11px;font-weight:600;cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center;gap:5px}.btn-role-action:hover{opacity:.85}.btn-role-action:active{transform:scale(.97)}.btn-role-action.promote{background:#0070f31f;color:var(--accent)}.btn-role-action.promote:hover{background:#0070f333}.btn-role-action.demote{background:#ffc1072e;color:#b8860b}.btn-role-action.demote:hover{background:#ffc10747}.btn-role-action.remove{background:#ff3b301f;color:#d62a2a}.btn-role-action.remove:hover{background:#ff3b3033}.join-requests-heading{font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.join-requests-list{display:flex;flex-direction:column;gap:10px}.join-requests-toggle{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;cursor:pointer;background:none;border:none;padding:0;transition:color var(--transition-fast)}.join-requests-toggle:hover{color:var(--text-main)}.join-requests-toggle i{font-size:10px;transition:transform .2s ease}.join-requests-toggle.expanded i{transform:rotate(90deg)}.join-request-item{background:#f9f9f9;padding:14px 16px;border-radius:14px;border:1px solid var(--border-subtle);display:flex;justify-content:space-between;align-items:center;gap:16px;transition:all .2s ease;box-shadow:var(--shadow-card)}.join-request-item:hover{border-color:var(--accent);box-shadow:var(--shadow-soft);transform:translateY(-2px)}.join-request-info{display:flex;align-items:center;gap:14px;min-width:0}.join-request-avatar{width:45px;height:45px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--accent-hover));color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:600;box-shadow:0 8px 18px #0070f340}.join-request-details .name{font-weight:600;color:var(--text-main);margin-bottom:4px;font-size:15px}.join-request-details .email{font-size:13px;color:var(--text-muted)}.join-request-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.btn-accept{background:var(--success);color:#fff;border:none;padding:10px 16px;border-radius:999px;cursor:pointer;font-weight:600;font-size:13px;transition:all .2s;box-shadow:var(--shadow-card)}.btn-accept:hover{background:#0d6e0d;transform:translateY(-1px)}.btn-reject{background:var(--danger);color:#fff;border:none;padding:10px 16px;border-radius:999px;cursor:pointer;font-weight:600;font-size:13px;transition:all .2s;box-shadow:var(--shadow-card)}.btn-reject:hover{background:#b02a37;transform:translateY(-1px)}@media(max-width:768px){.join-request-item{flex-direction:column;align-items:flex-start}.join-request-actions{width:100%;justify-content:flex-end}}.no-team-card{background:#fff;border-radius:12px;padding:60px 40px;text-align:center;box-shadow:var(--shadow-md)}body.dark-mode .no-team-card{background:#1c1c1e;color:var(--text-main);box-shadow:0 4px 12px #0000004d}.no-team-illustration{font-size:120px;color:#e9ecef;margin-bottom:30px}.no-team-card h2{font-size:28px;font-weight:700;color:var(--text-main);margin-bottom:12px}.no-team-card>p{font-size:16px;color:var(--text-muted);margin-bottom:40px}.no-team-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px;margin-top:40px}.action-card{background:var(--bg-surface);padding:30px;border-radius:12px;border:2px solid #e9ecef;transition:all .3s ease}.action-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--accent)}.action-icon{font-size:48px;color:var(--accent);margin-bottom:20px}.action-card h3{font-size:20px;font-weight:700;color:var(--text-main);margin-bottom:10px}.action-card p{font-size:14px;color:var(--text-muted);margin-bottom:20px}.join-team-form{display:flex;gap:10px;margin-top:20px}.join-team-form input{flex:1;min-width:0;padding:12px 16px;border:2px solid #e9ecef;border-radius:8px;font-size:14px;font-weight:600;text-align:center;letter-spacing:1px}.join-team-form input:focus{outline:none;border-color:var(--accent)}.join-team-form button{padding:12px 24px}@media(max-width:900px){.team-members-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.team-members-grid{grid-template-columns:1fr}.team-meta-row{flex-direction:column;align-items:flex-start}}@media(max-width:768px){.no-team-actions{grid-template-columns:1fr}}.settings-container{max-width:1000px;margin:0;width:100%}.settings-card{background:var(--bg-surface-soft);border-radius:var(--radius-xl);box-shadow:var(--shadow-subtle);overflow:visible;border:1px solid var(--border-subtle)}body.dark-mode .settings-card{background:var(--bg-surface);border-color:var(--border-medium);box-shadow:0 2px 16px #00000052}body.dark-mode .settings-card-header,body.dark-mode .settings-card-body{background:transparent;border-color:var(--border-medium)}body.dark-mode .profile-preview,body.dark-mode .form-group{background:transparent;border-radius:0;border-color:var(--border-medium)}.settings-card-header{background:transparent;padding:28px 40px;border-bottom:1px solid var(--border-subtle)}.settings-card-header h2{font-size:24px;font-weight:700;color:var(--text-main);margin-bottom:8px;display:flex;align-items:center;gap:12px}.settings-card-header h2 i{color:var(--accent)}.settings-card-header p{color:var(--text-muted);font-size:14px;margin:0}.settings-card-body{padding:32px 40px;overflow:visible}.profile-preview{display:flex;align-items:center;gap:28px;padding:32px;background:var(--bg-surface);border-radius:var(--radius-lg);margin-bottom:32px;border:1px solid var(--border-subtle);box-shadow:0 1px 3px #0000000d}.profile-avatar-large{width:100px;height:100px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:40px;font-weight:700;flex-shrink:0;box-shadow:0 4px 12px #0070f34d;transition:all .3s ease}.profile-preview-info h3{font-size:24px;font-weight:700;color:var(--text-main);margin-bottom:6px}.profile-preview-info p{color:var(--text-muted);font-size:15px}.settings-form{display:flex;flex-direction:column;gap:30px}.form-section{border-bottom:1px solid var(--border-subtle);padding-bottom:30px}.form-section:last-child{border-bottom:none;padding-bottom:0}.form-section-title{font-size:18px;font-weight:700;color:var(--text-main);margin-bottom:20px;display:flex;align-items:center;gap:8px}.form-group{margin-bottom:24px;overflow:visible}.form-group:last-child{margin-bottom:0}.form-group label{display:flex;align-items:center;gap:8px;font-weight:600;color:var(--text-main);margin-bottom:8px;font-size:14px}.form-group label i{color:var(--accent);width:18px}.form-group input[type=text],.form-group input[type=email]{width:100%;padding:14px 18px;border:1px solid var(--border-subtle);background:var(--bg-surface);border-radius:var(--radius-lg);font-size:15px;transition:all var(--transition-fast);font-family:var(--font-family);color:var(--text-main)}.form-group input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #0070f314;background:var(--bg-surface)}.form-group input:disabled{background:var(--bg-body);color:var(--text-muted);cursor:not-allowed}.form-group small{display:block;color:var(--text-muted);font-size:13px;margin-top:6px}.custom-dropdown{position:relative;width:100%;overflow:visible}.custom-dropdown-selected{width:100%;padding:14px 45px 14px 16px;border:1px solid var(--border-subtle);background:var(--bg-surface);border-radius:14px;font-size:15px;font-family:var(--font-family);color:var(--text-main);cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:space-between;user-select:none;box-shadow:0 4px 12px #0000000a}.custom-dropdown-selected:hover{border-color:var(--accent);box-shadow:0 6px 16px #0000000f}.custom-dropdown.active .custom-dropdown-selected{background:var(--bg-surface);border-color:var(--accent);box-shadow:0 6px 20px #0070f31f,0 0 0 3px var(--accent-soft)}.dropdown-arrow{font-size:12px;color:var(--text-secondary);transition:transform var(--transition-fast)}.custom-dropdown.active .dropdown-arrow{transform:rotate(90deg);color:var(--accent)}.custom-dropdown-options{position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:14px;box-shadow:0 6px 20px #00000014;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all var(--transition-fast);z-index:9999;overflow:hidden;max-height:300px;overflow-y:auto}.custom-dropdown.active .custom-dropdown-options{opacity:1;visibility:visible;transform:translateY(0)}.dropdown-option{padding:12px 16px;cursor:pointer;transition:all var(--transition-fast);font-size:15px;color:var(--text-main);border-bottom:1px solid var(--border-subtle);background:var(--bg-surface)}.dropdown-option:last-child{border-bottom:none}.dropdown-option:hover{background:var(--accent-soft);color:var(--accent)}.dropdown-option.selected{background:var(--accent-soft);color:var(--accent);font-weight:600}.settings-select{width:100%;padding:14px 40px 14px 16px;border:1px solid var(--border-subtle);background:var(--bg-surface);border-radius:14px;font-size:15px;transition:all var(--transition-fast);font-family:var(--font-family);color:var(--text-main);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='%23666' d='M4 6l4 4 4-4z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.settings-select:hover{background:#fff;border-color:var(--accent)}.settings-select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #0070f314;background:#fff}.avatar-color-picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(50px,1fr));gap:14px;margin-bottom:8px}.color-option{width:50px;height:50px;border-radius:50%;cursor:pointer;transition:all var(--transition-fast);border:3px solid transparent;position:relative;z-index:1;box-shadow:0 2px 8px #0000001f,inset 0 1px 2px #ffffff4d}.color-option:hover{box-shadow:0 4px 16px #0000002e,inset 0 1px 2px #ffffff4d;z-index:2}.color-option.selected{border-color:#fff;transform:scale(1.08);z-index:2;box-shadow:0 4px 16px #0000003d,0 0 0 1px #0000001a,inset 0 1px 2px #ffffff4d}.color-option.selected:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:18px;height:18px;background:#fff;border-radius:50%;box-shadow:0 2px 6px #0000004d}.color-option.selected:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(45deg);width:5px;height:10px;border:solid rgba(0,0,0,.8);border-width:0 2px 2px 0;z-index:1;margin-top:-2px}.form-actions{display:flex;gap:12px;justify-content:flex-end;padding-top:20px;border-top:1px solid var(--border-subtle)}.form-actions button{padding:12px 28px;font-size:14px;font-weight:600;border-radius:999px;cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;gap:8px}.settings-card-compact .settings-card-body{padding:20px}.settings-form-compact{display:flex;flex-direction:column;gap:20px}.account-profile-card{display:flex;gap:24px;align-items:flex-start;padding:20px;background:var(--bg-surface-soft);border-radius:var(--radius-lg);border:1px solid var(--border-subtle)}.account-avatar-section{position:relative;flex-shrink:0}.account-avatar-section .profile-avatar-large{width:72px;height:72px;font-size:1.5rem}.avatar-upload-compact{position:absolute;bottom:-4px;right:-4px}.btn-avatar-upload{width:28px;height:28px;border-radius:50%;border:2px solid var(--bg-surface);background:var(--accent);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:11px;transition:all .15s ease;padding:0}.btn-avatar-upload:hover{background:var(--accent-hover);transform:scale(1.1)}.account-basic-info{flex:1;min-width:0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.form-group-compact{margin-bottom:0}.form-group-compact label{display:block;font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.form-group-compact input{width:100%;padding:10px 12px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);font-size:.9rem;background:var(--bg-surface);color:var(--text-main);transition:all .15s ease}.form-group-compact input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #0078d41a}.form-group-compact input:disabled{background:var(--bg-body);color:var(--text-muted);cursor:not-allowed}.form-group-email{max-width:280px}.account-color-card{padding:16px 20px;background:var(--bg-surface-soft);border-radius:var(--radius-lg);border:1px solid var(--border-subtle)}.color-card-label{display:block;font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px}.avatar-color-picker-flat{display:flex;flex-wrap:wrap;gap:10px}@media(max-width:480px){.avatar-color-picker-flat{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none;gap:7px;padding-bottom:2px;justify-content:flex-start}.avatar-color-picker-flat::-webkit-scrollbar{display:none}.avatar-color-picker-flat .color-circle{width:28px;height:28px;flex-shrink:0}}.color-circle{width:32px;height:32px;border-radius:50%;cursor:pointer;transition:all .15s ease;border:2px solid transparent}.color-circle:hover{transform:scale(1.15)}.color-circle.selected{border-color:var(--text-muted);box-shadow:0 0 0 2px var(--bg-surface)}.form-actions-compact{padding-top:16px;border-top:1px solid var(--border-subtle)}.form-actions-compact .btn-sm{padding:8px 20px;font-size:13px}body.dark-mode .account-profile-card,body.dark-mode .account-color-card{background:#ffffff08;border-color:var(--border-medium)}body.dark-mode .form-group-compact input{background:var(--bg-body);border-color:var(--border-medium)}body.dark-mode .form-group-compact input:focus{border-color:var(--accent)}body.dark-mode .color-circle.selected{border-color:var(--text-light)}.settings-page-layout{max-width:800px;margin:0 auto;padding:0 16px}.settings-main-content{padding:0}.settings-page-header{margin-bottom:32px}.settings-page-title{font-size:28px;font-weight:600;color:var(--text-main);margin:0}.settings-tabs-nav{display:flex;gap:0;border-bottom:1px solid var(--border-subtle);margin-bottom:32px}.settings-tab{padding:12px 20px;background:transparent;border:none;border-bottom:2px solid transparent;font-size:14px;font-weight:500;color:var(--text-muted);cursor:pointer;transition:color .15s;margin-bottom:-1px}.settings-tab:hover{color:var(--text-main)}.settings-tab.active{color:var(--text-main);border-bottom-color:var(--text-main)}.settings-tab-pane{display:none}.settings-tab-pane.active{display:block}.settings-minimal-form{display:flex;flex-direction:column;gap:0}.settings-profile-header{display:flex;gap:28px;align-items:flex-start;margin-bottom:32px}.settings-avatar-compact{position:relative;flex-shrink:0;cursor:pointer}.settings-avatar-compact .profile-avatar-large{width:96px;height:96px;border-radius:50%;font-size:32px}.avatar-edit-overlay{position:absolute;bottom:2px;right:2px;width:28px;height:28px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--text-muted);transition:all .15s}.settings-avatar-compact:hover .avatar-edit-overlay{background:var(--accent);border-color:var(--accent);color:#fff}.dropzone-input{position:absolute;inset:0;opacity:0;cursor:pointer}.settings-name-fields{flex:1;display:flex;flex-direction:column;gap:8px}.settings-input-minimal{width:100%;padding:12px 14px;border:1px solid var(--border-subtle);border-radius:10px;font-size:15px;color:var(--text-main);background:var(--bg-surface);transition:border-color .15s}.settings-input-minimal:focus{outline:none;border-color:var(--text-muted)}.settings-input-minimal::placeholder{color:var(--text-muted)}.settings-input-minimal.settings-input-lg{font-size:18px;font-weight:500;padding:14px 16px}.settings-input-minimal.settings-input-disabled{background:var(--bg-body);color:var(--text-muted);cursor:not-allowed}.settings-field-minimal{margin-bottom:24px}.settings-field-minimal>label{display:block;font-size:13px;font-weight:500;color:var(--text-muted);margin-bottom:10px;text-transform:uppercase;letter-spacing:.5px}.profile-badges-container{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.badges-progress{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;background:var(--bg-body);border-radius:20px;font-size:11px}.badges-progress-info{display:flex;align-items:center;gap:6px;white-space:nowrap}.badges-progress-label{color:var(--text-muted);font-weight:500}.badges-progress-count{color:var(--text-main);font-weight:600;font-feature-settings:"tnum" on}.badges-progress-bar{width:60px;height:4px;background:var(--border-subtle);border-radius:2px;overflow:hidden}.badges-progress-fill{height:100%;border-radius:2px;transition:width .4s cubic-bezier(.4,0,.2,1)}.badges-grid{display:flex;flex-wrap:wrap;gap:6px}.badge-item{display:inline-flex;align-items:center;gap:5px;padding:4px 10px 4px 4px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:20px;transition:all .15s ease}.badge-item{position:relative}.badge-item:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0000000f}.badge-tooltip{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%) translateY(4px);background:#1c1c1ef2;color:#fff;font-size:12px;font-weight:500;line-height:1.35;padding:7px 11px;border-radius:8px;white-space:normal;width:max-content;max-width:220px;text-align:center;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s ease,transform .15s ease;z-index:50}.badge-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:#1c1c1ef2}.badge-item:hover .badge-tooltip{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.badge-tooltip i{font-size:10px;opacity:.7;margin-right:2px}body.dark-mode .badge-tooltip{background:#f5f5f7;color:#111;box-shadow:0 4px 16px #00000080}body.dark-mode .badge-tooltip:after{border-top-color:#f5f5f7}.badge-icon{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:10px}.badge-name{font-size:11px;font-weight:500;color:var(--text-main);white-space:nowrap}.badges-empty{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--bg-body);border-radius:16px;color:var(--text-muted);font-size:12px}.badges-empty i{font-size:12px;opacity:.5}.badges-locked{display:flex;flex-wrap:wrap;gap:4px}.badge-item.badge-locked{opacity:.4;background:transparent;border-style:dashed;padding:3px 8px 3px 3px}.badge-item.badge-locked .badge-icon{background:var(--bg-body);color:var(--text-muted)}.badge-item[data-tooltip]:after{background:#fff!important;color:#333!important;opacity:1!important;box-shadow:0 4px 12px #00000026!important}.badge-item.badge-locked[data-tooltip]:after{background:#fff!important;color:#333!important;opacity:1!important}.achievements-hero-grid{display:flex;justify-content:space-between;align-items:center;padding:24px 0;gap:32px}.achievements-xp-section{display:flex;align-items:center;gap:16px;flex:1}.xp-info{flex:1;min-width:0}.xp-level-text{font-size:22px;font-weight:700;color:var(--text-primary);margin-bottom:8px}.level-number-blue{color:#0052cc;font-weight:700}.xp-progress-container{height:6px;background:#e0e0e0;border-radius:3px;overflow:hidden;margin-bottom:4px;width:100%}.xp-progress-bar{height:100%;background:linear-gradient(90deg,#60efff,#0061ff);border-radius:3px;transition:width .4s ease}.xp-text{font-size:13px;color:var(--text-muted);font-weight:500}.achievements-streak-section{display:flex;align-items:center;gap:12px;flex-shrink:0}.streak-fire-icon{position:relative;width:72px;height:72px;display:flex;align-items:center;justify-content:center}.streak-fire-icon i{font-size:48px;color:#ff6b35}.streak-fire-icon .streak-number{position:absolute;bottom:6px;right:6px;font-size:20px;font-weight:700;color:#fff;background:#ff6b35;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;line-height:1}.streak-info{text-align:left}.streak-label{font-size:26px;font-weight:700;color:var(--text-primary);line-height:1.1}.best-streak{font-size:14px;color:var(--text-muted);font-weight:500;margin-top:2px}@media(max-width:500px){.achievements-hero-grid{flex-direction:column;align-items:flex-start;gap:24px;position:relative}.achievements-xp-section{width:100%;position:relative;padding-right:72px}.xp-info{display:flex;flex-direction:column}.xp-progress-container{width:100%;height:8px;order:1}.xp-text{order:2;align-self:flex-start;font-size:11px;margin-top:6px}.achievements-streak-section{position:absolute;top:16px;right:0;width:auto;justify-content:flex-end}.streak-fire-icon{width:44px;height:44px}.streak-fire-icon i{font-size:30px}.streak-fire-icon .streak-number{width:20px;height:20px;font-size:13px}.streak-info{display:none}}.achievements-hero-grid{grid-template-columns:1fr}.achievements-badges-container{display:flex;flex-direction:column;gap:20px}.badge-category{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;padding:16px;margin-bottom:16px}.badge-category-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.badge-category-title{font-size:13px;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:6px}.badge-category-title i{font-size:12px;opacity:.7}.badge-category-count{font-size:12px;color:var(--text-muted);font-weight:500}.badge-category .badges-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:10px}.badge-category .badge-item{flex-direction:column;text-align:center;padding:12px 8px;border-radius:12px;gap:6px}.badge-category .badge-item .badge-icon{width:36px;height:36px;font-size:14px}.badge-category .badge-item .badge-name{font-size:10px;line-height:1.2}.badge-category .badge-item.locked .badge-icon,.badge-category .badge-item.locked .badge-name,.badge-category .badge-item.locked .badge-xp{color:var(--text-light)}.badge-xp{font-size:9px;color:var(--text-muted);font-weight:500}.badge-item.earned .badge-xp{color:#34c759}.achievements-stats-list{display:flex;flex-direction:column;gap:0}.achievement-stat-row{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:none}.achievement-stat-row .stat-label{font-size:14px;color:#666;font-weight:400}.achievement-stat-row .stat-value{font-size:14px;font-weight:500;color:var(--text-primary)}.achievements-disabled-message{text-align:center;padding:48px 24px;color:var(--text-muted)}.achievements-disabled-message i{font-size:48px;opacity:.3;margin-bottom:16px;display:block}.achievements-disabled-message p{font-size:16px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.achievements-disabled-message span{font-size:13px}.settings-row-hint{font-size:11px;color:var(--text-muted);margin-top:2px}body.dark-mode .xp-progress-container{background:#ffffff26}body.dark-mode .badge-category{background:var(--bg-elevated)}body.dark-mode .achievements-stats-list{background:transparent}body.dark-mode .achievement-stat-row .stat-label{color:#999}body.dark-mode .streak-fire-icon .streak-number{color:#fff}.streak-corner-toast{position:fixed;right:24px;bottom:24px;z-index:999998;cursor:pointer;animation:streakCornerIn .55s cubic-bezier(.34,1.56,.64,1) forwards;filter:drop-shadow(0 6px 18px rgba(0,0,0,.25))}.streak-corner-toast.closing{animation:streakCornerOut .4s ease forwards}@keyframes streakCornerIn{0%{transform:translateY(40px) scale(.3);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@keyframes streakCornerOut{0%{transform:translateY(0) scale(1);opacity:1}to{transform:translateY(24px) scale(.5);opacity:0}}.streak-celebration-fire{position:relative;width:84px;height:84px;display:flex;align-items:center;justify-content:center}.streak-celebration-fire i{font-size:56px;color:#ff6b35;position:relative;z-index:1;transform-origin:50% 85%;animation:streakFirePop .6s cubic-bezier(.34,1.56,.64,1) .15s both,streakFlicker 1.8s ease-in-out .8s infinite}@keyframes streakFirePop{0%{transform:scale(0)}70%{transform:scale(1.15)}to{transform:scale(1)}}@keyframes streakFlicker{0%,to{transform:scale(1) rotate(0)}25%{transform:scale(1.04,1.07) rotate(-1.5deg)}50%{transform:scale(.98,.96) rotate(1deg)}75%{transform:scale(1.03,1.05) rotate(-.5deg)}}.streak-celebration-fire.flare i{animation:streakFlare .5s cubic-bezier(.34,1.56,.64,1),streakFlicker 1.8s ease-in-out .5s infinite}@keyframes streakFlare{0%{transform:scale(1)}40%{transform:scale(1.25)}to{transform:scale(1)}}.streak-ember{position:absolute;bottom:18px;width:6px;height:6px;border-radius:50%;background:#ff9500;opacity:0;pointer-events:none}.streak-ember.ember-1{left:22px;animation:streakEmberRise 2s ease-out .9s infinite}.streak-ember.ember-2{left:42px;width:4px;height:4px;background:#ff6b35;animation:streakEmberRise 2.4s ease-out 1.5s infinite}.streak-ember.ember-3{left:58px;width:5px;height:5px;animation:streakEmberRise 2.2s ease-out 1.1s infinite}@keyframes streakEmberRise{0%{transform:translateY(0) scale(1);opacity:0}15%{opacity:.9}to{transform:translateY(-56px) scale(.3);opacity:0}}.streak-corner-count{position:absolute;bottom:4px;right:4px;min-width:26px;height:26px;padding:0 7px;box-sizing:border-box;border-radius:999px;background:#ff6b35;color:#fff;font-size:13px;font-weight:700;line-height:1;display:flex;align-items:center;justify-content:center;font-variant-numeric:tabular-nums;box-shadow:0 2px 8px #0000004d;z-index:2}.streak-corner-count.bump{animation:streakCountBump .5s cubic-bezier(.34,1.56,.64,1)}@keyframes streakCountBump{0%{transform:scale(1)}40%{transform:scale(1.4)}to{transform:scale(1)}}@media(max-width:768px){.streak-corner-toast{right:14px;bottom:92px}.streak-celebration-fire{width:72px;height:72px}.streak-celebration-fire i{font-size:48px}}@media(prefers-reduced-motion:reduce){.streak-celebration-fire i,.streak-celebration-fire.flare i,.streak-ember{animation:none}.streak-ember{display:none}}.settings-actions-minimal{padding-top:24px;margin-top:12px}.settings-actions-minimal.settings-actions-right{display:flex;justify-content:flex-end;align-items:center}.settings-btn-save{background:var(--accent);color:#fff;border:none;padding:12px 24px;border-radius:999px;font-size:15px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:all var(--transition-fast);box-shadow:var(--shadow-subtle);letter-spacing:-.01em}.settings-btn-save:hover{background:#06d;transform:scale(1.01);box-shadow:var(--shadow-card)}.settings-autosave-status{font-size:13px;color:var(--text-tertiary, #888);display:inline-flex;align-items:center;gap:6px;min-height:20px;opacity:0;transition:opacity var(--transition-fast)}.settings-autosave-status.is-visible{opacity:1}.settings-autosave-status.is-error{color:var(--danger, #e5484d)}.theme-selector-minimal{display:flex;flex-wrap:wrap;gap:10px}.slack-connect-btn{display:inline-flex;align-items:center;gap:10px;padding:10px 18px;background:#fff;border:1.5px solid #ddd;border-radius:8px;font-size:14px;font-weight:500;color:#1d1c1d;cursor:pointer;transition:border-color .15s,box-shadow .15s}.slack-connect-btn:hover{border-color:#aaa;box-shadow:0 2px 6px #00000014}.slack-connect-btn--linked{border-color:#2eb67d;color:#2eb67d}.slack-connect-btn--linked:hover{border-color:#27a06d;box-shadow:0 2px 6px #2eb67d26}body.dark-mode .slack-connect-btn{background:var(--bg-surface);border-color:var(--border-subtle);color:var(--text-primary)}.theme-btn{flex:0 0 auto;padding:10px 18px;background:var(--bg-surface);border:2px solid var(--border-subtle);border-radius:24px;font-size:13px;font-weight:500;color:var(--text-muted);cursor:pointer;transition:all .15s ease;display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap}.theme-btn:hover{background:var(--bg-body);border-color:var(--border-medium);color:var(--text-main)}.theme-btn.active{background:#fff;border-color:#b0b0b3;border-width:2px;color:var(--text-main);padding:10px 18px}.theme-btn.active:before{content:"\f00c";font-family:"Font Awesome 6 Free","Font Awesome 5 Free";font-weight:900;font-size:13px;color:#34c759;-webkit-text-stroke:.5px #34C759;margin-right:6px;margin-top:-2px;margin-bottom:-2px;line-height:1;order:-1}.theme-btn i{font-size:12px}.theme-selector-minimal{display:flex;gap:8px;flex-wrap:wrap}.settings-row-minimal{display:flex;align-items:center;justify-content:space-between;padding:16px 0;border-bottom:1px solid var(--border-subtle)}.settings-row-minimal:last-child{border-bottom:none}.settings-row-minimal>span{font-size:15px;color:var(--text-main)}.settings-group-label{font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin:32px 0 12px}.settings-group-label:first-child{margin-top:0}.settings-group-label.danger{color:#ff3b30}.notif-scope-caption{margin:0 0 20px;padding:10px 12px;border-radius:8px;background:var(--bg-subtle, rgba(0, 120, 212, .06));font-size:12.5px;line-height:1.45;color:var(--text-secondary, #666)}.help-faq-list{display:flex;flex-direction:column;gap:4px}.help-faq-item{border-radius:8px;background:var(--bg-secondary);overflow:hidden}.help-faq-item summary{padding:14px 16px;font-size:14px;font-weight:500;color:var(--text-primary);cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;transition:background .15s;user-select:none}.help-faq-item summary:hover{background:var(--bg-surface-soft)}.help-faq-item summary::-webkit-details-marker{display:none}.help-faq-item summary:after{content:"\f078";font-family:"Font Awesome 6 Free";font-weight:900;font-size:10px;color:var(--text-muted);transition:transform .2s;flex-shrink:0}.help-faq-item[open] summary:after{transform:rotate(180deg)}.help-faq-item p{padding:0 16px 14px;margin:0;font-size:13px;color:var(--text-secondary);line-height:1.65}.toggle-minimal{position:relative;display:inline-block;width:48px;height:26px;flex-shrink:0}.toggle-minimal input{opacity:0;width:0;height:0}.toggle-track{position:absolute;cursor:pointer;inset:0;background:#e5e5ea;transition:background .2s;border-radius:26px}.toggle-track:before{content:"";position:absolute;height:22px;width:22px;left:2px;top:2px;background:#fff;transition:transform .2s;border-radius:50%;box-shadow:0 1px 2px #00000026}.toggle-minimal input:checked+.toggle-track{background:var(--accent)}.toggle-minimal input:checked+.toggle-track:before{transform:translate(22px)}.mini-radio-group{display:flex;gap:12px}.mini-radio{display:flex;align-items:center;gap:6px;cursor:pointer}.mini-radio input{width:14px;height:14px;accent-color:var(--accent);-webkit-appearance:none;-moz-appearance:none;appearance:none;border:2px solid var(--border-subtle);border-radius:50%;background:transparent;margin:0;cursor:pointer;flex-shrink:0;position:relative}.mini-radio input:checked{border-color:var(--accent);background:var(--accent);box-shadow:inset 0 0 0 2.5px var(--bg-surface)}.mini-radio span{font-size:13px;color:var(--text-muted)}.mini-radio input:checked+span{color:var(--text-main)}.settings-select-minimal select{width:100%;padding:10px 44px 10px 14px;border:1px solid var(--border-subtle);border-radius:999px;font-size:14px;color:var(--text-main);background:var(--bg-surface);cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none;transition:all .18s ease;background-image:url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="8" viewBox="0 0 12 8"><path fill="%23808AFC" d="M1.41 0L6 4.58 10.59 0 12 1.41l-6 6-6-6z"/></svg>');background-repeat:no-repeat;background-position:right 14px center;background-size:12px}.settings-select-minimal select:focus,.settings-select-minimal select:active,.settings-select-minimal select:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 6px 20px #0070f31f,0 0 0 6px var(--accent-soft);background-color:var(--bg-base)}#metricsVisibilitySelect,#financesVisibilitySelect{padding-right:48px}.custom-select{position:relative}.custom-select-button{display:inline-flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:10px 16px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:999px;font-size:14px;color:var(--text-main);cursor:pointer}.custom-select-button .arrow{width:12px;height:12px;display:inline-block;flex-shrink:0;background-image:url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="8" viewBox="0 0 12 8"><path fill="%23808080" d="M1.41 0L6 4.58 10.59 0 12 1.41l-6 6-6-6z"/></svg>');background-repeat:no-repeat;background-size:12px}.custom-select-list{position:absolute;right:0;left:0;margin-top:8px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;box-shadow:0 8px 24px #061e3f1f;z-index:40;display:none;max-height:220px;overflow:auto}.custom-select-list.show{display:block}.custom-select-item{padding:10px 14px;font-size:14px;color:var(--text-main);cursor:pointer}.custom-select-item:hover{background:var(--bg-body)}.custom-select-item.active{background:var(--accent-soft);color:var(--accent);font-weight:600}body.dark-mode .custom-select-button,body.dark-mode .custom-select-list{background:var(--bg-body);border-color:var(--border-medium)}.settings-select-minimal select:focus{outline:none;border-color:var(--text-muted)}.settings-action-row{display:flex;align-items:center;justify-content:space-between;padding:18px 0;border-bottom:1px solid var(--border-subtle);flex-wrap:nowrap}.settings-action-row:last-child{border-bottom:none}.action-info{display:flex;flex-direction:column;gap:4px}.action-info{flex:1 1 auto;min-width:0}.action-desc{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#deleteChatHistorySection{justify-content:space-between;gap:18px;align-items:center}#deleteChatHistorySection .settings-btn-outline{order:0;margin:0;flex-shrink:0}#deleteChatHistorySection .action-info{flex:1 1 auto;min-width:0}.action-title{font-size:15px;font-weight:500;color:var(--text-main)}.action-title.danger{color:#ff3b30}.action-desc{font-size:13px;color:var(--text-muted)}.action-desc.danger{color:#ff3b30}.settings-footer{margin-top:32px;padding-top:16px;border-top:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--text-muted);font-size:14px}.settings-footer .footer-brand{display:flex;align-items:center;gap:8px}.settings-footer .heart-icon{color:#ff4d67;display:inline-flex;align-items:center;justify-content:center}.settings-footer a{color:var(--text-main);text-decoration:none;font-weight:600}.settings-footer a:hover{color:var(--accent)}.settings-footer .footer-links{display:flex;align-items:center;gap:10px}.settings-footer .footer-links a{width:36px;height:36px;border-radius:50%;border:1px solid var(--border-subtle);display:inline-flex;align-items:center;justify-content:center;background:var(--bg-surface);color:var(--text-main);transition:all .15s ease}.settings-footer .footer-links a:hover{border-color:var(--accent);color:var(--accent)}body.dark-mode .settings-footer .footer-links a{background:var(--bg-body);border-color:var(--border-medium)}.settings-footer .footer-legal{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-muted)}.settings-footer .footer-legal a{color:var(--text-muted);font-weight:400;text-decoration:none;transition:color .15s}.settings-footer .footer-legal a:hover{color:var(--accent)}.settings-footer .footer-legal-sep{opacity:.45}.settings-btn-outline{padding:10px 20px;background:transparent;border:1px solid var(--border-medium);border-radius:999px;font-size:14px;font-weight:500;color:var(--text-main);cursor:pointer;transition:all .15s}.settings-btn-outline:hover{background:var(--bg-surface-soft)}.settings-btn-outline.danger{color:#fff;background:#ff3b30;border-color:#ff3b30}.settings-btn-outline.danger:hover{background:#e02020;border-color:#e02020}.settings-btn-outline.success{color:#fff;background:#34c759;border-color:#34c759}.settings-btn-outline.success:hover{background:#30b854;border-color:#30b854}.api-section-card{background:var(--bg-surface);border:1px solid var(--border-medium);border-radius:12px;padding:20px;margin-bottom:14px}.api-section-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.api-section-icon{width:34px;height:34px;border-radius:8px;background:var(--accent-soft);display:flex;align-items:center;justify-content:center;color:var(--accent);font-size:14px;flex-shrink:0}.api-section-title{font-size:14px;font-weight:600;color:var(--text-main);line-height:1.2}.api-section-desc{font-size:12px;color:var(--text-muted);margin-top:2px}.api-field-label{display:block;font-size:12px;font-weight:600;color:var(--text-muted);margin-bottom:6px}.api-url-row{display:flex;gap:8px;align-items:center}.api-url-input{flex:1;font-family:Menlo,Monaco,Consolas,monospace;font-size:11.5px;background:var(--bg-body);border:1px solid var(--border-subtle);border-radius:8px;padding:8px 12px;color:var(--text-muted);outline:none;cursor:default;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.api-icon-btn{width:36px;height:36px;border-radius:8px;border:1px solid var(--border-subtle);background:var(--bg-body);color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:13px;flex-shrink:0;transition:background var(--transition-fast),color var(--transition-fast)}.api-icon-btn:hover{background:#0000000f;color:var(--text-main)}.api-provider-chips{display:flex;align-items:center;gap:6px;margin-top:8px;flex-wrap:wrap}.api-chip-label{font-size:11px;color:var(--text-light)}.api-chip-label code{font-family:monospace;background:var(--bg-body);padding:1px 4px;border-radius:4px;font-size:11px;color:var(--text-muted)}.api-chip{font-size:11px;font-family:monospace;padding:2px 8px;background:var(--bg-body);border:1px solid var(--border-medium);border-radius:20px;color:var(--text-muted);cursor:pointer;position:relative;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast);-webkit-appearance:none;appearance:none}.api-chip:hover{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.api-chip.active{background:var(--accent);border-color:var(--accent);color:#fff}.api-chip.active:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:#fff}.api-url-flash{animation:apiUrlFlash .55s ease-out}@keyframes apiUrlFlash{0%{background:var(--accent-soft);border-color:var(--accent)}to{background:var(--bg-body);border-color:var(--border-medium)}}.api-chip[title]:hover:after{content:attr(title);position:absolute;top:120%;left:50%;transform:translate(-50%);padding:8px 12px;background:var(--text-main);color:var(--bg-surface);border-radius:6px;font-size:11px;font-family:system-ui,-apple-system,sans-serif;font-weight:500;white-space:nowrap;pointer-events:none;z-index:1000;box-shadow:0 4px 12px #00000026;animation:tooltipFadeIn var(--transition-fast) ease-out}.api-chip[title]:hover:before{content:"";position:absolute;top:112%;left:50%;transform:translate(-50%);width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:5px solid var(--text-main);z-index:1000}@keyframes tooltipFadeIn{0%{opacity:0;transform:translate(-50%) translateY(4px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.api-keys-list{border:1px solid var(--border-subtle);border-radius:8px;overflow:hidden;margin-bottom:12px}.api-empty-state{padding:20px 16px;text-align:center;color:var(--text-light);font-size:13px}.api-key-row{display:flex;align-items:center;gap:12px;padding:11px 16px;border-bottom:1px solid var(--border-subtle)}.api-key-row:last-child{border-bottom:none}.api-key-info{flex:1;min-width:0}.api-key-name{font-size:13px;font-weight:600;color:var(--text-main)}.api-key-meta{font-size:11px;color:var(--text-light);margin-top:2px}.api-key-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.api-badge{font-size:11px;font-weight:600;padding:2px 8px;border-radius:20px}.api-badge.active{background:var(--success-soft);color:#065f46}.api-badge.revoked{background:var(--danger-soft);color:var(--danger)}.api-revoke-btn{width:28px;height:28px;border-radius:6px;border:1px solid var(--border-subtle);background:transparent;color:var(--text-light);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.api-revoke-btn:hover{background:var(--danger-soft);color:var(--danger);border-color:#ff3b3033}.api-rename-btn{width:28px;height:28px;border-radius:6px;border:1px solid var(--border-subtle);background:transparent;color:var(--text-light);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:11px;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.api-rename-btn:hover{background:var(--bg-surface-soft, rgba(0, 0, 0, .04));color:var(--text-main);border-color:var(--border-medium, var(--border-subtle))}.api-key-name-input{width:100%;font-size:13px;font-weight:600;font-family:inherit;color:var(--text-main);background:var(--bg-surface, #fff);border:1px solid var(--accent, #0070f3);border-radius:6px;padding:2px 6px;margin:-3px 0 -3px -7px;outline:none}.api-key-name-input:disabled{opacity:.6}.api-create-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.push-notif-info{display:flex;flex-direction:column;gap:2px}.push-notif-info span:first-child{color:var(--text-main)}.push-notif-status{font-size:12px;color:var(--text-muted)}#pushNotificationRow{display:flex;justify-content:space-between;align-items:center;gap:16px}#pushNotificationRow .settings-btn-outline{flex-shrink:0;padding:8px 16px;font-size:13px}#pushNotificationRow .settings-btn-outline i{margin-right:6px}body.dark-mode .settings-input-minimal{background:var(--bg-body);border-color:var(--border-medium)}body.dark-mode .theme-btn{background:#ffffff0d;border-color:#ffffff1a}body.dark-mode .theme-btn:hover{background:#ffffff14;border-color:#fff3}body.dark-mode .theme-btn.active{background:#fffffff2;border-color:#b0b0b3;color:#1c1c1e}body.dark-mode .theme-btn.active:before{color:#30d158}body.dark-mode .settings-btn-save{background:#1c1c1e;border-color:#48484a;color:#fff}body.dark-mode .toggle-track{background:#48484a}body.dark-mode .avatar-edit-overlay{background:var(--bg-body);border-color:var(--border-medium)}body.dark-mode .settings-select-minimal select{background-color:var(--bg-body);border-color:var(--border-medium);background-image:url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" width="12" height="8" viewBox="0 0 12 8"><path fill="%23EBEBF5" d="M1.41 0L6 4.58 10.59 0 12 1.41l-6 6-6-6z"/></svg>');background-repeat:no-repeat;background-position:right 12px center;background-size:12px}@media(max-width:768px){.settings-page-layout{max-width:100%}.settings-tabs-nav{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.settings-tabs-nav::-webkit-scrollbar{display:none}.settings-tab{white-space:nowrap;flex-shrink:0;padding:12px 16px;font-size:15px}.settings-profile-header{flex-direction:column;align-items:center;text-align:center}.settings-name-fields{width:100%}.settings-input-minimal{font-size:16px;padding:14px 16px}.settings-row-minimal{padding:20px 0}.theme-selector-minimal{flex-direction:row;justify-content:flex-start}.theme-btn{justify-content:center;padding:6px 12px;font-size:10px;gap:4px;border-radius:999px;flex:0 0 auto}.theme-btn.active:before{font-size:9px}.settings-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 12px}.settings-footer .footer-brand{flex:0 1 auto;min-width:0}.settings-footer .footer-brand span{font-size:12px;white-space:normal}.settings-footer .footer-links{flex-shrink:0;order:2}.settings-footer .footer-legal{flex:1 1 100%;justify-content:center;order:3}.settings-footer .footer-links a{width:32px;height:32px}.settings-section{padding-bottom:40px}}@media(max-width:600px){.account-profile-card{flex-direction:column;align-items:center;text-align:center;padding:16px}.account-avatar-section{margin-bottom:8px}.account-basic-info{width:100%}.form-row{grid-template-columns:1fr;gap:10px}.form-group-email{max-width:100%}.avatar-color-picker-flat{justify-content:center}.color-circle{width:36px;height:36px}.form-actions-compact{flex-direction:column}.form-actions-compact button{width:100%;justify-content:center}}.btn-secondary{background:transparent;color:var(--text-main);border:1px solid var(--border-subtle)}.btn-secondary:hover{background:var(--bg-surface-soft);border-color:var(--accent);transform:translateY(-1px)}.btn-danger{background:#ff3b30;color:#fff;padding:12px 24px;border:none;border-radius:var(--radius-lg);font-size:15px;font-weight:600;cursor:pointer;transition:all var(--transition-fast);display:inline-flex;align-items:center;gap:8px}.btn-danger:hover{background:#d62a21;transform:translateY(-1px);box-shadow:0 4px 12px #ff3b304d}.btn-danger:active{transform:translateY(0)}.toggle-group{margin-bottom:20px}.toggle-label{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;background:var(--light-gray);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);border:2px solid var(--neutral-200);box-shadow:0 1px 3px #0000000d}.toggle-label:hover{background:#fff;border-color:var(--accent);box-shadow:0 2px 8px #007aff1f;transform:translateY(-1px)}.toggle-label-content{flex:1;display:flex;flex-direction:column;gap:4px}.toggle-label-text{display:flex;align-items:center;gap:10px;font-weight:600;color:var(--text-main);font-size:15px}.toggle-label-text i{color:var(--accent);width:18px}.toggle-label small{color:var(--text-muted);font-size:13px;margin:0}.toggle-switch{position:relative;width:52px;height:28px;flex-shrink:0}.toggle-switch input{opacity:0;width:0;height:0;position:absolute}.toggle-slider{position:absolute;cursor:pointer;inset:0;background:#e5e5ea;transition:all .3s ease;border-radius:28px;border:none}.toggle-slider:before{position:absolute;content:"";height:22px;width:22px;left:3px;top:3px;background:#fff;transition:all .3s ease;border-radius:50%;box-shadow:0 2px 4px #0003}.toggle-switch input:checked+.toggle-slider{background:#34c759}.toggle-switch input:checked+.toggle-slider:before{transform:translate(24px)}.toggle-switch input:focus+.toggle-slider{box-shadow:0 0 0 3px #34c75940}.toggle-label:hover .toggle-slider{background:#d1d1d6}.toggle-label:hover input:checked+.toggle-slider{background:#30b855}.toggle-label.compact{padding:14px 16px;margin-bottom:0;border-radius:12px;background:var(--bg-surface);border:1px solid var(--border-subtle);box-shadow:0 3px 10px #0000000a}.toggle-label.compact .toggle-label-text{font-size:14px}.toggle-label.compact small{font-size:12px}.toggle-label.compact .toggle-switch{width:46px;height:26px}.toggle-label.compact .toggle-slider:before{height:18px;width:18px;left:4px;top:4px}.toggle-label.compact input:checked+.toggle-slider:before{transform:translate(20px)}.notification-prefs-section{background:var(--card-bg);border-radius:var(--radius-lg);border:1px solid var(--border-subtle);overflow:hidden;margin-bottom:20px}.notification-prefs-section:last-child{margin-bottom:0}.notification-prefs-header{display:flex;align-items:center;gap:10px;padding:16px 20px;background:var(--light-gray);border-bottom:1px solid var(--border-subtle);font-weight:600;font-size:15px;color:var(--text-main)}.notification-prefs-header i{color:var(--accent);width:20px;text-align:center;font-size:16px}.notification-prefs-toggles{display:flex;flex-direction:column;gap:1px;background:var(--border-subtle)}.notification-prefs-toggles .toggle-label{border:none;border-radius:0;background:var(--card-bg);box-shadow:none}.notification-prefs-toggles .toggle-label:hover{background:var(--light-gray);border:none;box-shadow:none;transform:none}body.dark-mode .notification-prefs-section{background:var(--dark-card-bg);border:none}body.dark-mode .notification-prefs-header{background:#ffffff0d;border-color:var(--dark-border)}body.dark-mode .notification-prefs-toggles{background:var(--dark-border)}body.dark-mode .notification-prefs-toggles .toggle-label{background:var(--dark-card-bg)}body.dark-mode .notification-prefs-toggles .toggle-label:hover{background:#ffffff0d}.radio-group{display:flex;flex-direction:column;gap:12px;margin-top:12px}.radio-option{display:flex;align-items:flex-start;gap:14px;padding:16px 20px;background:var(--light-gray);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);border:2px solid var(--neutral-200);box-shadow:0 1px 3px #0000000d}.radio-option:hover{background:#fff;border-color:var(--accent);box-shadow:0 2px 6px #007aff1a;transform:translate(2px)}.radio-option input[type=radio]:checked~*{color:inherit}.radio-option input[type=radio]:checked{background:var(--accent-lighter);border-color:var(--accent);box-shadow:0 2px 8px #007aff26}.radio-option input[type=radio]{display:none}.radio-custom{width:24px;height:24px;border:2px solid rgba(0,0,0,.2);border-radius:50%;position:relative;transition:all var(--transition-fast);flex-shrink:0;margin-top:1px;background:#fff;box-shadow:inset 0 1px 2px #0000000d}.radio-option:hover .radio-custom{border-color:var(--accent);box-shadow:inset 0 1px 2px #0000000d,0 0 0 2px #007aff1a}.radio-option input[type=radio]:checked+.radio-custom{border-color:var(--accent);background:var(--accent-lighter);box-shadow:0 0 0 2px #007aff33}.radio-option input[type=radio]:checked+.radio-custom:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:12px;height:12px;background:var(--accent);border-radius:50%;box-shadow:0 1px 2px #0003}.radio-label{font-weight:600;color:var(--text-main);font-size:15px;flex:1}.radio-option small{display:block;color:var(--text-muted);font-size:12px;margin-top:4px;line-height:1.4}.radio-option input[type=radio]:checked+.radio-custom+.radio-label{color:var(--accent);font-weight:700}.user-profile:hover{background:var(--accent-soft)}.user-profile{transition:all .2s;border-radius:8px;padding:8px;margin:-8px}.settings-dropdown{position:absolute;top:100%;right:0;margin-top:8px;background:#ffffffe6;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);min-width:200px;padding:8px;z-index:1000;overflow:hidden}.dropdown-divider{height:1px;background:#e9ecef;margin:4px 0}.overview-week-panel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-bottom:24px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow-subtle)}.ov-week-left{display:flex;flex-direction:column;min-width:0;min-height:0}.ov-week-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;flex-shrink:0}.ov-week-header h2{font-size:20px;font-weight:700;color:var(--text-main);margin:0}.ov-period-toggle{display:flex;background:var(--bg-surface-soft);border-radius:999px;padding:3px;border:1px solid var(--border-subtle)}.ov-period-btn{padding:5px 16px;border-radius:999px;border:none;background:transparent;font-size:13px;font-weight:600;color:var(--text-muted);cursor:pointer;transition:all .2s ease}.ov-period-btn.active{background:var(--bg-surface);color:var(--text-main);box-shadow:0 1px 3px #0000001a}.ov-period-btn:hover:not(.active){color:var(--text-main)}.ov-week-list{flex:1 1 auto;display:flex;flex-direction:column;gap:2px;min-height:0;max-height:380px;overflow-y:auto;overflow-x:hidden}.ov-item-row{display:flex;align-items:center;gap:10px;padding:9px 14px;border-radius:999px;cursor:pointer;transition:background .15s ease;outline:none;min-width:0}.ov-item-row:hover,.ov-item-row:focus-visible{background:#0000000b}.ov-dot{width:24px;height:24px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:10px;color:#fff}.ov-dot-low{background:#22c55e}.ov-dot-medium{background:#f59e0b}.ov-dot-high{background:#ef4444}.ov-dot-event{background:var(--accent)}.ov-item-title{flex:1;min-width:0;font-size:14px;font-weight:500;color:var(--text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ov-item-date{flex-shrink:0;font-size:12px;font-weight:500;color:var(--text-muted);white-space:nowrap}.ov-item-indicator{flex-shrink:0;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:8px;font-weight:700;color:#fff;overflow:hidden;letter-spacing:.3px;position:relative}.ov-item-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%}.ov-item-event-icon{background:#0000001a;color:var(--text-muted);font-size:9px;width:20px;height:20px}body.dark-mode .ov-item-event-icon{background:#ffffff1f}.ov-empty-state{text-align:center;color:var(--text-muted);padding:32px 20px;font-size:.95rem}.overview-mini-calendar{min-width:0;background:transparent;padding:0;align-self:flex-start;max-width:300px;margin:0 auto;width:100%}.ov-mini-cal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.ov-mini-cal-title{font-size:15px;font-weight:700;color:var(--text-main)}.ov-mini-cal-nav{width:28px;height:28px;border-radius:50%;border:none;background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;transition:background .15s ease,color .15s ease}.ov-mini-cal-nav:hover{background:var(--bg-surface-soft);color:var(--text-main)}.ov-mini-cal-dow{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;margin-bottom:4px}.ov-mini-cal-dow span{font-size:11px;font-weight:600;color:var(--text-muted);padding:4px 0}.ov-mini-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.ov-mini-cal-day{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;width:32px;height:32px;margin:0 auto;font-size:13px;font-weight:500;color:var(--text-main);border-radius:50%;cursor:pointer;transition:background .15s ease;user-select:none}.ov-mini-cal-day:hover{background:var(--bg-surface-soft)}.ov-mini-cal-day.ov-mini-today{background:var(--accent);color:#fff;font-weight:700}.ov-mini-cal-day.ov-mini-today:hover{background:var(--accent);opacity:.85}.ov-mini-cal-day.ov-mini-other{color:var(--text-muted);opacity:.45}.ov-mini-dot{position:absolute;bottom:2px;width:4px;height:4px;border-radius:50%;background:var(--accent)}.ov-mini-cal-day.ov-mini-today .ov-mini-dot{background:#fff}.overview-announcements{display:flex;flex-direction:column;min-width:0;min-height:0;height:100%;max-height:var(--ov-cal-h, 434px)}.ov-ann-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:16px;flex-shrink:0}.ov-ann-header h2{display:flex;align-items:center;gap:8px;font-size:20px;font-weight:700;color:var(--text-main);margin:0;min-width:0}.ov-ann-unread-dot{width:9px;height:9px;border-radius:50%;background:#ef4444;flex-shrink:0;box-shadow:0 0 0 3px #ef44442e}.ov-ann-unread-dot[hidden]{display:none}.ov-ann-markread{flex-shrink:0;border:none;background:none;color:var(--accent, #0070f3);font-family:inherit;font-size:12px;font-weight:600;cursor:pointer;padding:3px 6px;border-radius:6px}.ov-ann-markread:hover{background:var(--bg-surface-soft, rgba(0, 0, 0, .04))}.ov-ann-markread[hidden]{display:none}.ov-ann-list{flex:1;min-height:0;display:flex;flex-direction:column;gap:2px;overflow-y:auto;overflow-x:hidden;margin:0 -6px;padding:0 6px}.ov-ann-row{display:flex;align-items:flex-start;gap:10px;padding:9px 12px;border-radius:12px;cursor:pointer;outline:none;min-width:0;transition:background .15s ease}.ov-ann-row:hover,.ov-ann-row:focus-visible{background:#0000000b}.ov-ann-row.unread{background:var(--bg-surface-soft, rgba(0, 0, 0, .035))}.ov-ann-row.unread:hover,.ov-ann-row.unread:focus-visible{background:#00000013}.ov-ann-marker{flex-shrink:0;width:8px;height:8px;margin-top:10px;border-radius:50%;background:#ef4444;box-shadow:0 0 0 3px #ef444429}.ov-ann-avatar{width:26px;height:26px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:600;margin-top:1px}.ov-ann-body{min-width:0;flex:1}.ov-ann-text{font-size:13.5px;line-height:1.45;color:var(--text-main);display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.ov-ann-row.unread .ov-ann-text{font-weight:500}.ov-ann-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:3px;font-size:11.5px;color:var(--text-muted);min-width:0}.ov-ann-who{font-weight:600;color:var(--text-main);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:55%}.ov-ann-digest-icon{width:26px;height:26px;border-radius:8px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:11px;margin-top:1px}.ov-ann-digest-icon.is-chat{background:#3b82f624;color:#3b82f6}.ov-ann-digest-icon.is-task{background:#8b5cf624;color:#8b5cf6}.ov-ann-digest-count{flex-shrink:0;align-self:center;min-width:20px;padding:2px 7px;border-radius:999px;background:var(--danger, #ef4444);color:#fff;font-size:10px;font-weight:700;text-align:center}.ov-ann-sentinel{flex-shrink:0;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 0;font-size:12px;color:var(--text-muted)}.ov-ann-sentinel i{font-size:11px}.ov-ann-end{flex-shrink:0;padding:10px 0 4px;text-align:center;font-size:11px;color:var(--text-tertiary, var(--text-muted))}.ov-ann-composer{display:flex;align-items:center;gap:8px;flex-shrink:0;padding-top:12px;margin-top:8px;border-top:1px solid var(--border-subtle)}.ov-ann-composer[hidden]{display:none}.ov-ann-composer .announce-input{font-size:13px}.ov-ann-composer .announce-send-btn{width:30px;height:30px}body.dark-mode .ov-item-row:hover,body.dark-mode .ov-item-row:focus-visible{background:#ffffff12}body.dark-mode .overview-mini-calendar{background:transparent}body.dark-mode .ov-period-btn.active{background:var(--bg-surface);box-shadow:0 1px 3px #0000004d}body.dark-mode .ov-ann-row:hover,body.dark-mode .ov-ann-row:focus-visible{background:#ffffff12}body.dark-mode .ov-ann-row.unread{background:#ffffff0d}body.dark-mode .ov-ann-row.unread:hover,body.dark-mode .ov-ann-row.unread:focus-visible{background:#ffffff1a}@media(min-width:1241px){.ov-week-left{height:100%;max-height:var(--ov-cal-h, 434px)}.ov-week-list{max-height:none}}@media(max-width:1240px){.overview-week-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.ov-week-left{grid-column:1 / -1}.overview-announcements{max-height:var(--ov-cal-h, 340px)}}@media(max-width:900px){.overview-week-panel{grid-template-columns:minmax(0,1fr)}.overview-mini-calendar{width:100%;max-width:340px}.overview-announcements{height:auto;max-height:380px}}@media(max-width:600px){.ov-week-header h2,.ov-ann-header h2{font-size:17px}.overview-mini-calendar{padding:12px}.ov-mini-cal-day{height:28px;font-size:12px}.ov-week-list{max-height:none;overflow-y:visible}.overview-announcements{max-height:320px}}.overview-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px}.stat-card{background:var(--bg-surface);border:1px solid var(--border-subtle);padding:20px;border-radius:var(--radius-lg);box-shadow:var(--shadow-subtle);display:flex;align-items:center;gap:16px;transition:all var(--transition-fast)}.stat-card:hover{transform:scale(1.01);box-shadow:var(--shadow-card)}.stat-icon{width:52px;height:52px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:#fff;font-size:24px}.stat-content{flex:1}.stat-number{font-size:32px;font-weight:700;color:var(--text-main);line-height:1;letter-spacing:-.02em}.stat-label{font-size:13px;color:var(--text-muted);margin-top:4px;font-weight:500}.overview-two-col{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px;margin-bottom:20px}.overview-two-col .overview-section{margin-bottom:0}.overview-two-col .overview-card{min-height:280px;display:flex;flex-direction:column}.overview-two-col .overview-tasks,.overview-two-col .overview-events{flex:1;overflow-y:auto;max-height:320px}@media(max-width:900px){.overview-two-col{grid-template-columns:1fr}}@media(max-width:768px){.overview-two-col{max-width:100%;box-sizing:border-box}.overview-two-col .overview-card{min-height:auto;max-width:100%}.overview-two-col .overview-tasks,.overview-two-col .overview-events{overflow-y:visible;max-height:none;max-width:100%}.overview-notifications-list{overflow-y:visible;max-height:none}}.overview-section{background:var(--bg-surface);border:1px solid var(--border-subtle);padding:24px;border-radius:var(--radius-lg);margin-bottom:20px;box-shadow:var(--shadow-subtle)}.status-report-body{margin-top:4px}.status-report-section{--sr-hover: rgba(0, 0, 0, .045)}body.dark-mode .status-report-section{--sr-hover: rgba(255, 255, 255, .07)}.status-report-section .overview-section-header{border-bottom:none;padding-bottom:0;margin-bottom:24px}.status-report-section .overview-section-header h2{align-items:baseline;gap:8px;font-size:20px;font-weight:700;margin:0}.sr-range{font-size:13px;font-weight:400;color:var(--text-muted);white-space:nowrap}.sr-range:empty{display:none}.sr-stats{display:flex;flex-wrap:wrap;gap:14px 44px;margin-bottom:32px}.sr-stat{min-width:0}.sr-stat-value{font-size:22px;font-weight:600;line-height:1.1;letter-spacing:-.02em;color:var(--text-main);font-variant-numeric:tabular-nums}.sr-stat-label{margin-top:3px;font-size:12px;color:var(--text-muted);white-space:nowrap}.sr-stat-danger .sr-stat-value{color:var(--danger, #ff3b30)}.sr-col-title{font-size:13px;font-weight:500;color:var(--text-muted);margin:0 0 6px}.sr-cols{display:grid;grid-template-columns:1fr 1fr;gap:44px;margin-bottom:32px}.sr-col{min-width:0}.sr-list{display:flex;flex-direction:column;margin:0 -8px}.sr-row{display:flex;align-items:baseline;gap:16px;padding:7px 8px;border-radius:6px;cursor:pointer;transition:background .12s ease}.sr-row:hover{background:var(--sr-hover)}.sr-row:focus-visible{outline:2px solid var(--accent, #0070f3);outline-offset:-2px}.sr-row-title{flex:1 1 auto;min-width:0;font-size:14px;color:var(--text-main);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sr-row-date{flex:none;font-size:12px;color:var(--text-muted);font-variant-numeric:tabular-nums}.sr-row-overdue .sr-row-date{color:var(--danger, #ff3b30)}.sr-empty{padding:7px 8px;font-size:13px;color:var(--text-muted)}.sr-more{align-self:flex-start;padding:7px 8px;border-radius:6px;font-size:13px;color:var(--text-muted);cursor:pointer;user-select:none;transition:color .12s ease}.sr-more:hover{color:var(--text-main)}.sr-more:focus-visible{outline:2px solid var(--accent, #0070f3);outline-offset:-2px}.sr-row-hidden{display:none}.sr-list.sr-expanded .sr-row-hidden{display:flex}.sr-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.sr-member-dropdown{position:relative;display:inline-block}.sr-member-trigger{display:flex;align-items:center;gap:8px;padding:6px 10px;font-size:13px;font-weight:500;border:none;border-radius:8px;background:transparent;color:var(--text-main);cursor:pointer;max-width:220px;transition:background .15s ease}.sr-member-trigger:hover,.sr-member-dropdown.open .sr-member-trigger{background:var(--sr-hover)}.sr-member-trigger-icon{font-size:12px;color:var(--text-muted);flex:none}.sr-member-value{flex:1;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sr-member-arrow{font-size:10px;color:var(--text-muted);transition:transform .2s ease;flex:none}.sr-member-dropdown.open .sr-member-arrow{transform:rotate(180deg)}.sr-member-menu{position:absolute;top:calc(100% + 6px);right:0;min-width:200px;max-height:320px;overflow-y:auto;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;box-shadow:0 8px 24px #0000001f;z-index:1000;opacity:0;visibility:hidden;transform:translateY(-8px);transition:all .2s cubic-bezier(.4,0,.2,1);padding:4px}.sr-member-dropdown.open .sr-member-menu{opacity:1;visibility:visible;transform:translateY(0)}.sr-member-option{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;font-size:.85rem;color:var(--text-main);cursor:pointer;transition:background-color .15s ease}.sr-member-option:hover{background:var(--sr-hover)}.sr-member-option i{font-size:10px;color:var(--accent, #0070f3);opacity:0;flex:none;transition:opacity .15s ease}.sr-member-option.selected{font-weight:600}.sr-member-option.selected i{opacity:1}.sr-member-option span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sr-member-avatar{width:22px;height:22px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:600}.sr-member-avatar.sr-member-avatar-all{background:var(--sr-hover)}.sr-member-option .sr-member-avatar i{opacity:1;font-size:10px;color:var(--text-muted)}.sr-member-trigger-avatar{width:20px;height:20px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:600}.sr-board{margin-bottom:32px}.sr-board-list{display:flex;flex-direction:column;margin:0 -8px}.sr-board-row{display:grid;grid-template-columns:minmax(90px,170px) 1fr auto;align-items:center;gap:16px;padding:6px 8px;border-radius:6px;cursor:pointer;transition:background .12s ease}.sr-board-row:hover{background:var(--sr-hover)}.sr-board-row:focus-visible{outline:2px solid var(--accent, #0070f3);outline-offset:-2px}.sr-board-who{display:flex;align-items:center;gap:10px;min-width:0}.sr-board-avatar{position:relative;overflow:hidden;width:20px;height:20px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:600;background:var(--sr-hover);color:var(--text-muted)}.sr-board-name{font-size:14px;color:var(--text-main);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sr-board-bar{height:6px}.sr-board-fill{position:relative;display:block;height:100%;border-radius:999px;overflow:hidden;background:linear-gradient(90deg,#0051cc,#0070f3,#4da6ff 70%,#87cefa);background-size:100% 100%;background-position:left center}.sr-board-fill:after{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='g'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/><feColorMatrix type='saturate' values='0'/></filter><rect width='100%25' height='100%25' filter='url(%23g)'/></svg>");background-size:180px 180px;mix-blend-mode:overlay;opacity:.55}.sr-board-count{font-size:12px;color:var(--text-muted);white-space:nowrap;font-variant-numeric:tabular-nums}@media(max-width:720px){.status-report-section .overview-section-header{flex-wrap:wrap;row-gap:12px;margin-bottom:20px}.status-report-section .overview-section-header h2{flex-wrap:wrap;row-gap:2px;font-size:17px}.sr-range{flex-basis:100%}.sr-stats{gap:14px 28px;margin-bottom:28px}.sr-cols{grid-template-columns:1fr;gap:28px;margin-bottom:28px}.sr-board{margin-bottom:28px}.sr-member-trigger{max-width:160px}.sr-member-menu{min-width:170px}.sr-board-row{grid-template-columns:minmax(70px,110px) 1fr auto;gap:10px}.sr-board-count{font-size:11px}}.overview-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:14px;border-bottom:1px solid var(--border-subtle)}.overview-section-header h2{font-size:1.25rem;color:var(--text-main);display:flex;align-items:center;gap:10px}.overview-section-header h2 i{color:var(--accent)}.btn-link{background:none;border:none;color:var(--accent);font-size:.9rem;cursor:pointer;padding:5px 10px;border-radius:5px;transition:background .2s}.btn-link:hover{background:#0070f31a}.overview-notifications-section{max-height:400px;display:flex;flex-direction:column}.overview-notifications-actions{display:flex;gap:8px;align-items:center}.overview-notifications-list{flex:1;overflow-y:auto;max-height:320px;display:flex;flex-direction:column;gap:2px}.overview-notification-row{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:var(--radius-md);cursor:pointer;transition:background .15s ease;border-left:3px solid transparent}.overview-notification-row:hover{background:var(--bg-surface-soft)}.overview-notification-row.unread{background:#0070f30a;border-left-color:var(--accent)}.overview-notification-icon{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:14px}.overview-notification-icon.task-icon{background:#34c7591f;color:var(--success)}.overview-notification-icon.message-icon{background:#0070f31f;color:var(--accent)}.overview-notification-icon.team-icon{background:#ffcc001f;color:var(--warning)}.overview-notification-icon.calendar-icon{background:#af52de1f;color:#af52de}.overview-notification-content{flex:1;min-width:0}.overview-notification-text{font-size:.9rem;color:var(--text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.4}.overview-notification-text strong{font-weight:600}.overview-notification-time{font-size:.75rem;color:var(--text-muted);margin-top:2px}.notification-team-badge{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:4px;background:var(--bg-subtle, rgba(0, 120, 212, .1));color:var(--primary, #0078D4);font-size:.7rem;font-weight:600;letter-spacing:-.01em;vertical-align:middle;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.no-notifications-overview{text-align:center;color:var(--text-muted);padding:40px 20px;font-size:.95rem}body.dark-mode .overview-notification-row:hover{background:#ffffff0d}body.dark-mode .overview-notification-row.unread{background:#0070f314}.overview-tasks,.overview-events{display:flex;flex-direction:column;gap:12px;overflow-x:hidden;max-width:100%}.link-lobby-section{margin-top:24px}.link-lobby-container{display:flex;flex-direction:column;gap:16px}.link-lobby-empty{text-align:center;padding:48px 24px;background:var(--bg-surface);border:2px dashed var(--border-subtle);border-radius:var(--radius-lg)}.link-lobby-empty-icon{width:64px;height:64px;margin:0 auto 16px;background:var(--accent-soft);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--accent);font-size:24px}.link-lobby-empty h3{font-size:1.1rem;font-weight:600;color:var(--text-main);margin:0 0 8px}.link-lobby-empty p{font-size:.9rem;color:var(--text-muted);margin:0 0 20px}.link-group{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);overflow:visible;transition:all .2s ease;position:relative}.link-group:hover{box-shadow:var(--shadow-card)}.link-group.dragging{opacity:.5;transform:scale(.98)}.link-group.drag-over{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.link-group-header{display:flex;align-items:center;gap:12px;padding:16px 20px;background:var(--bg-surface-soft);border-bottom:1px solid var(--border-subtle);cursor:default}.link-group-drag-handle{cursor:grab;color:var(--text-muted);padding:4px;border-radius:4px;transition:all .15s ease;display:flex;align-items:center}.link-group-drag-handle:hover{color:var(--text-main);background:var(--bg-body)}.link-group-drag-handle:active{cursor:grabbing}.link-group-collapse-btn{width:24px;height:24px;border:none;background:transparent;color:var(--text-muted);border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;flex-shrink:0;transition:background .15s ease,color .15s ease}.link-group-collapse-btn:hover{background:var(--bg-body);color:var(--text-main)}.link-group-collapse-btn i{transition:transform .2s ease}.link-group.collapsed .link-group-collapse-btn i{transform:rotate(-90deg)}.link-group-title{flex:1;font-size:1rem;font-weight:600;color:var(--text-main);display:flex;align-items:center;gap:8px;cursor:pointer;user-select:none}.link-group-title .group-count{font-size:.75rem;font-weight:500;color:var(--text-muted);background:var(--bg-body);padding:2px 8px;border-radius:99px}.link-group-title .group-private-badge{font-size:.65rem;font-weight:600;color:var(--text-muted);background:#8080801a;padding:3px 8px;border-radius:99px;display:inline-flex;align-items:center;gap:4px}.link-group-title .group-private-badge i{font-size:.6rem}.link-group-actions{display:flex;align-items:center;gap:4px}.link-group-btn{width:28px;height:28px;border:none;background:transparent;color:var(--text-muted);border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;font-size:13px}.link-group-btn:hover{background:var(--bg-body);color:var(--text-main)}.link-group-btn.add-link-btn{color:var(--accent)}.link-group-btn.add-link-btn:hover{background:var(--accent-soft)}.link-group-menu{position:relative;z-index:10}.link-group-menu-dropdown{position:absolute;top:100%;right:0;margin-top:4px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:0 8px 32px #0003;min-width:180px;z-index:99999;opacity:0;visibility:hidden;transform:translateY(-8px) scale(.95);transition:all .15s ease;transform-origin:top right;pointer-events:none}.link-group-menu-dropdown.active{opacity:1;visibility:visible;transform:translateY(0) scale(1);pointer-events:auto}.link-group-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;border:none;background:transparent;color:var(--text-main);font-size:14px;cursor:pointer;transition:all .15s ease;text-align:left}.link-group-menu-item:hover{background:var(--accent-soft);color:var(--accent)}.link-group-menu-item.danger{color:var(--danger)}.link-group-menu-item.danger:hover{background:var(--danger-soft);color:var(--danger)}.link-group-menu-item i{width:16px;text-align:center;font-size:13px}.link-group-menu-divider{height:1px;background:var(--border-subtle);margin:4px 0}.link-group-content{padding:8px 12px 12px}.link-group.collapsed .link-group-content{display:none}.link-group.collapsed .link-group-header{border-bottom:none}.link-group-empty{text-align:center;padding:20px 16px;color:var(--text-muted);font-size:.85rem}.links-list{display:flex;flex-direction:column;gap:2px}.link-lobby-header-actions{display:flex;align-items:center;gap:8px}.upgroup-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;margin-bottom:20px}.upgroup-drop-bar{position:fixed;left:50%;bottom:calc(16px + var(--nav-safe-bottom, 0px));transform:translate(-50%);z-index:4000;display:flex;align-items:center;gap:8px;max-width:min(92vw,900px);padding:10px 12px;overflow-x:auto;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:999px;box-shadow:0 12px 40px #00000047}.upgroup-drop-bar-label{flex-shrink:0;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:var(--text-light);padding-left:4px}.upgroup-drop-chip{--upgroup-color: #0A84FF;flex-shrink:0;display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border-radius:999px;border:1px dashed var(--border-subtle);background:var(--bg-body);color:var(--text-main);font-size:.83rem;font-weight:600;white-space:nowrap;pointer-events:auto}.upgroup-drop-chip i{color:var(--upgroup-color)}.upgroup-drop-chip.upgroup-drop-active{border-style:solid;border-color:var(--upgroup-color);background:color-mix(in srgb,var(--upgroup-color) 16%,transparent);transform:scale(1.04)}.upgroup-drop-chip *{pointer-events:none}.upgroup-card{--upgroup-color: #0A84FF;position:relative;display:flex;flex-direction:column;gap:6px;padding:16px;text-align:left;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;overflow:hidden}.upgroup-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-card);border-color:var(--upgroup-color)}.upgroup-card.upgroup-drop-active{border-color:var(--upgroup-color);box-shadow:0 0 0 3px color-mix(in srgb,var(--upgroup-color) 30%,transparent);transform:translateY(-2px)}.upgroup-card-icon{width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:10px;font-size:15px;color:var(--upgroup-color);background:color-mix(in srgb,var(--upgroup-color) 14%,transparent)}.upgroup-card-title{font-size:.95rem;font-weight:650;color:var(--text-main)}.upgroup-card-desc{font-size:.78rem;color:var(--text-muted);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.upgroup-card-desc:empty{display:none}.upgroup-card-count{margin-top:auto;padding-top:6px;font-size:.72rem;font-weight:600;color:var(--text-light);text-transform:uppercase;letter-spacing:.3px}.upgroup-card-add{align-items:center;justify-content:center;flex-direction:row;gap:8px;color:var(--text-muted);font-size:.85rem;font-weight:600;background:transparent;border-style:dashed;min-height:118px}.upgroup-card-add:hover{color:var(--accent);border-color:var(--accent);transform:none;box-shadow:none}.upgroup-bar{--upgroup-color: #0A84FF;display:flex;align-items:center;gap:12px;padding:12px 14px;margin-bottom:16px;background:var(--bg-surface-soft);border:1px solid var(--border-subtle);border-radius:var(--radius-lg)}.upgroup-back-btn{width:30px;height:30px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border:none;border-radius:8px;background:var(--bg-body);color:var(--text-muted);cursor:pointer;transition:all .15s ease}.upgroup-back-btn:hover{color:var(--text-main);background:var(--border-subtle)}.upgroup-back-btn.upgroup-drop-active{background:var(--accent-soft);color:var(--accent);box-shadow:0 0 0 2px var(--accent)}.upgroup-bar-icon{width:32px;height:32px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:9px;color:var(--upgroup-color);background:color-mix(in srgb,var(--upgroup-color) 14%,transparent)}.upgroup-bar-text{flex:1;min-width:0}.upgroup-bar-title{font-size:1rem;font-weight:650;color:var(--text-main)}.upgroup-bar-desc{font-size:.78rem;color:var(--text-muted)}.upgroup-bar-actions{display:flex;align-items:center;gap:4px}.upgroup-section-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--text-light);margin:4px 0 10px}.upgroup-empty-hint{text-transform:none;letter-spacing:0;font-weight:500;font-size:.85rem;color:var(--text-muted);padding:16px;text-align:center;border:1px dashed var(--border-subtle);border-radius:var(--radius-md)}.upgroup-icon-picker{display:grid;grid-template-columns:repeat(10,1fr);gap:6px}.upgroup-icon-option{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-subtle);border-radius:8px;background:var(--bg-surface);color:var(--text-muted);cursor:pointer;font-size:13px;transition:all .12s ease}.upgroup-icon-option:hover{color:var(--text-main);border-color:var(--text-muted)}.upgroup-icon-option.selected{color:#fff;background:var(--accent);border-color:var(--accent)}.upgroup-color-picker{display:flex;flex-wrap:wrap;gap:8px}.upgroup-color-option{width:28px;height:28px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease}.upgroup-color-option:hover{transform:scale(1.1)}.upgroup-color-option.selected{box-shadow:0 0 0 2px var(--bg-surface),0 0 0 4px currentColor;border-color:#fff}.upgroup-color-none{display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1.5px dashed var(--border-medium);color:var(--text-muted);font-size:11px}.upgroup-color-none.selected{border-style:solid;border-color:var(--text-muted)}@media(max-width:640px){.upgroup-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.upgroup-icon-picker{grid-template-columns:repeat(7,1fr)}}.link-subgroup{background:var(--bg-body);border-radius:var(--radius-md);overflow:hidden;margin-bottom:8px;border:1px solid transparent;transition:border-color .15s ease,box-shadow .15s ease}.link-subgroup:last-of-type{margin-bottom:8px}.link-subgroup.drag-over{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.link-subgroup-header{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#00000005;border-bottom:1px solid var(--border-subtle);cursor:pointer;transition:background .15s ease;user-select:none}.link-subgroup-header:hover{background:#0000000a}.link-subgroup-icon{color:var(--text-muted);font-size:13px}.link-subgroup-title{flex:1;font-size:.85rem;font-weight:600;color:var(--text-main)}.link-subgroup-count{font-size:.75rem;color:var(--text-light);background:var(--bg-surface);padding:2px 8px;border-radius:99px}.link-subgroup-toggle{color:var(--text-muted);font-size:12px;transition:transform .2s ease}.link-subgroup.collapsed .link-subgroup-toggle{transform:rotate(-90deg)}.link-subgroup-content{padding:8px}.link-subgroup.collapsed .link-subgroup-content{display:none}.link-subgroup-empty{padding:12px 8px;text-align:center;font-size:.8rem;color:var(--text-muted)}.links-list.links-list-empty{min-height:12px}.link-item{display:flex;flex-direction:column;background:transparent;border-radius:var(--radius-md);transition:background .15s ease;overflow:hidden}.link-item:hover{background:var(--bg-body)}.link-item-collapsed{display:flex;align-items:center;gap:10px;padding:8px 10px;cursor:pointer;flex:1;min-width:0;transition:background .15s ease;border-radius:var(--radius-md)}.link-item-collapsed:hover{background:rgba(var(--accent-rgb),.08)}.link-item-collapsed:active{background:rgba(var(--accent-rgb),.12)}.link-item>.link-item-collapsed{flex:1}.link-item{flex-direction:row;flex-wrap:wrap;align-items:center}.link-item-drag-handle{display:flex;align-items:center;justify-content:center;width:20px;height:28px;cursor:grab;color:var(--text-muted);opacity:0;transition:opacity .15s ease,color .15s ease;flex-shrink:0;margin-left:4px}.link-item:hover .link-item-drag-handle{opacity:1}.link-item-drag-handle:hover{color:var(--text-main)}.link-item-drag-handle:active{cursor:grabbing;color:var(--accent-color)}.link-item.dragging{opacity:.5;background:var(--bg-component)}.drag-ghost{pointer-events:none;opacity:.9;box-shadow:0 6px 16px #0000002e;transform:scale(.98)}.link-item.drag-over{border-top:2px solid var(--accent-color);margin-top:-2px}.link-name{flex:1;font-size:.875rem;font-weight:500;color:var(--text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.link-favorite-indicator{color:#e8a500;font-size:11px;margin-left:4px;flex-shrink:0}.link-collapsed-star{width:26px;height:26px;border:none;background:transparent;color:var(--text-light);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;font-size:12px;flex-shrink:0;opacity:.4}.link-item:hover .link-collapsed-star{opacity:1}.link-collapsed-star:hover{color:#e8a500;background:#e8a5001a}.link-collapsed-star.active{color:#e8a500;opacity:1}.link-collapsed-star.active:hover{color:#cc9000}.link-expand-btn{width:28px;height:28px;border:none;background:transparent;color:var(--text-muted);border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;font-size:11px;flex-shrink:0;margin-right:4px}.link-expand-btn:hover{background:var(--bg-body);color:var(--text-main)}.link-expand-btn i{transition:transform .2s ease}.link-item.expanded .link-expand-btn i{transform:rotate(180deg)}.link-item-expanded{display:none;width:100%;padding:0 10px 10px;animation:linkExpandIn .2s ease}@keyframes linkExpandIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.link-item.expanded .link-item-expanded{display:block}.link-expanded-content{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;background:var(--bg-body);border-radius:var(--radius-md);border:1px solid var(--border-subtle)}.link-expanded-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.link-favicon{width:20px;height:20px;border-radius:4px;object-fit:contain;flex-shrink:0}.link-favicon-fallback{width:20px;height:20px;border-radius:4px;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;font-size:10px;flex-shrink:0}.link-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.link-label{font-size:.875rem;font-weight:500;color:var(--text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3;cursor:text;padding:2px 4px;margin:-2px -4px;border-radius:4px;transition:background .15s ease}.link-label:hover{background:#0000000d}.link-label-input{font-size:.875rem;font-weight:500;color:var(--text-main);line-height:1.3;padding:2px 6px;margin:-2px -4px;border:none;border-bottom:1.5px solid var(--accent);border-radius:2px;background:transparent;outline:none;width:auto;min-width:60px;max-width:160px}.link-domain{font-size:.7rem;color:var(--text-light);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2;padding-left:4px}.link-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.link-star-btn{width:24px;height:24px;border:none;background:transparent;color:var(--text-muted);border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color .15s ease;font-size:13px;padding:0}.link-star-btn:hover,.link-star-btn.active{color:#e8a500}.link-star-btn .fa-star{font-weight:400}.link-star-btn.active .fa-star{font-weight:900}.link-open-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:transparent;color:var(--accent);border:1px solid var(--border-subtle);border-radius:5px;font-size:11px;font-weight:500;cursor:pointer;transition:all .15s ease;text-decoration:none;white-space:nowrap}.link-open-btn:hover{background:var(--accent-soft);border-color:var(--accent)}.link-open-btn i{font-size:9px;opacity:.7}.link-delete-btn{width:24px;height:24px;border:none;background:transparent;color:var(--text-muted);border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;font-size:13px;padding:0;opacity:0}.link-item:hover .link-delete-btn{opacity:1}.link-delete-btn:hover{color:var(--danger);background:var(--danger-soft)}.link-preview{display:flex;align-items:center;gap:10px;padding:12px 14px;background:var(--bg-body);border-radius:var(--radius-md);margin-top:8px}.link-favicon-preview{width:20px;height:20px;border-radius:4px;object-fit:contain}.btn-sm{padding:8px 14px;font-size:.85rem}.checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-weight:500}.checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent);cursor:pointer}.form-hint{display:block;font-size:.8rem;color:var(--text-muted);margin-top:6px;margin-left:28px}.modal-sm{max-width:420px}body.dark-mode .link-group{background:var(--bg-surface);border-color:var(--border-medium)}body.dark-mode .link-group-header{background:#ffffff08}body.dark-mode .link-group-drag-handle:hover,body.dark-mode .link-group-btn:hover{background:#ffffff14}body.dark-mode .link-group-menu-dropdown{background:var(--bg-surface);border-color:var(--border-medium)}body.dark-mode .link-group-menu-item:hover{background:#0a84ff26}body.dark-mode .upgroup-card,body.dark-mode .upgroup-bar{background:#ffffff0a}body.dark-mode .upgroup-card-add{background:transparent}body.dark-mode .upgroup-back-btn{background:#ffffff0f}body.dark-mode .upgroup-icon-option{background:#ffffff0a}body.dark-mode .link-subgroup{background:#ffffff08}body.dark-mode .link-subgroup-header{background:#ffffff05}body.dark-mode .link-subgroup-header:hover{background:#ffffff0f}body.dark-mode .link-item:hover{background:#ffffff0d}body.dark-mode .link-item.favorite{background:transparent}body.dark-mode .link-item.favorite:hover{background:#ffffff0d}body.dark-mode .link-label:hover{background:#ffffff1a}body.dark-mode .link-label-input{background:var(--bg-body);border-color:var(--accent)}body.dark-mode .link-group-menu-dropdown{background:var(--bg-surface);box-shadow:0 8px 32px #00000080;border-color:var(--border-medium)}body.dark-mode .link-lobby-empty{background:#ffffff05;border-color:var(--border-medium)}body.dark-mode .activity-item{background:#ffffff08}body.dark-mode .activity-item:hover{background:#ffffff0f}@media(max-width:768px){.link-lobby-section{margin:0;padding:16px}.link-group-header{padding:14px 16px}.link-group-title{font-size:.95rem}.link-group-content{padding:8px}.link-item-collapsed{padding:10px 8px}.link-name,.link-label{font-size:.85rem}.link-expand-btn{width:32px;height:32px}.link-expanded-content{flex-direction:column;align-items:stretch;gap:10px}.link-actions{justify-content:flex-end}.link-open-btn{padding:6px 10px;font-size:11px}.link-group-menu-dropdown{right:-8px}}@media(max-width:480px){.link-lobby-empty{padding:32px 16px}.link-lobby-empty-icon{width:56px;height:56px;font-size:20px}.link-expanded-info .link-domain{display:none}.link-group-actions{gap:4px}.link-open-btn span{display:none}}@media(max-width:768px){.profile-preview{flex-direction:column;text-align:center}.avatar-color-picker{grid-template-columns:repeat(5,1fr)}.color-option{width:50px;height:50px}.form-actions{flex-direction:column}.form-actions button{width:100%;justify-content:center}.overview-stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:20px}.stat-card{padding:12px;gap:10px;border-radius:12px}.stat-icon{width:40px;height:40px;font-size:20px}.stat-number{font-size:24px}.stat-label{font-size:12px}}#toastContainer{position:fixed;bottom:20px;right:20px;z-index:999999;display:flex;flex-direction:column;gap:10px;max-width:400px}.toast{background:#fff;border-radius:10px;box-shadow:0 4px 16px #00000014;padding:12px 16px;display:flex;align-items:center;gap:12px;min-width:260px;max-width:380px;animation:toastSlideIn .3s ease-out;border:1px solid rgba(0,0,0,.1)}.toast.success .toast-icon{color:#22c55e}.toast.error .toast-icon{color:#ef4444}.toast.warning .toast-icon{color:#f59e0b}.toast.info .toast-icon{color:#3b82f6}.toast-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:18px}.toast-content{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.toast-title{font-weight:600;color:#1a1a1a;font-size:14px;letter-spacing:-.01em}.toast-message{font-size:13px;color:#666;line-height:1.4;letter-spacing:-.01em}.toast-action{align-self:flex-start;margin-top:6px;padding:4px 10px;background:var(--primary, #0078D4);color:#fff;border:none;border-radius:6px;font-size:12px;font-weight:600;letter-spacing:-.01em;cursor:pointer;transition:filter .15s ease}.toast-action:hover{filter:brightness(1.08)}.toast-close{background:none;border:none;font-size:18px;color:#999;cursor:pointer;padding:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .2s ease;flex-shrink:0;line-height:1;margin:0}.toast-close:hover{background-color:#0000000f;color:#666}@keyframes toastSlideIn{0%{transform:translate(100%) scale(.9);opacity:0}to{transform:translate(0) scale(1);opacity:1}}@keyframes toastSlideOut{0%{transform:translate(0) scale(1);opacity:1}to{transform:translate(100%) scale(.9);opacity:0}}.toast.closing{animation:toastSlideOut .25s cubic-bezier(.4,0,1,1) forwards}body.dark-mode .toast{background:#1f1f1f;border-color:#ffffff1f;box-shadow:0 4px 16px #0000004d}body.dark-mode .toast-title{color:#fff}body.dark-mode .toast-message{color:#a1a1aa}body.dark-mode .toast-close{color:#71717a}body.dark-mode .toast-close:hover{background-color:#ffffff1a;color:#a1a1aa}@media(max-width:768px){#toastContainer{right:12px;left:12px;bottom:12px;max-width:none}.toast{min-width:0;max-width:none;border-radius:12px}}.toast.xp{align-items:flex-start;min-width:320px;max-width:460px;padding:16px 18px}.toast.xp .toast-title{display:flex;align-items:center;gap:6px}.toast-xp-row{display:flex;align-items:center;gap:10px;margin-top:6px}.toast-xp-level{font-size:11px;font-weight:600;color:#1f2937;background:#60efff33;border:1px solid rgba(0,97,255,.2);padding:2px 6px;border-radius:999px;white-space:nowrap}.toast-xp-bar{flex:1;min-width:220px;height:5px;background:#e0e0e0;border-radius:3px;overflow:hidden}.toast-xp-bar-fill{height:100%;width:0;background:linear-gradient(90deg,#60efff,#0061ff);transition:width .7s cubic-bezier(.22,1,.36,1)}.toast-xp-amount{font-size:12px;font-weight:700;color:#3b82f6;white-space:nowrap;animation:xpAmountPulse .6s ease-out}.toast.xp.level-up .toast-title{color:#f59e0b}body.dark-mode .toast-xp-level{color:#e5e7eb;background:#60efff26;border-color:#0061ff59}body.dark-mode .toast-xp-bar{background:#ffffff26}body.dark-mode .toast-xp-amount{color:#60a5fa}@keyframes xpToastSlideIn{0%{transform:translate(100%) scale(.85);opacity:0}to{transform:translate(0) scale(1);opacity:1}}@keyframes xpToastSlideOut{0%{transform:translate(0) scale(1);opacity:1}to{transform:translate(110%) scale(.85);opacity:0}}@keyframes xpAmountPulse{0%{transform:scale(1)}40%{transform:scale(1.25)}to{transform:scale(1)}}@keyframes xpBarShine{0%{opacity:0}50%{opacity:1}to{opacity:0}}@keyframes xpLevelPop{0%{transform:scale(.6)}50%{transform:scale(1.2)}to{transform:scale(1)}}[data-tooltip]{position:relative}.trend-bar-wrapper[data-tooltip]:after{display:none}.bar-chart-v3-bar-wrap[data-tooltip]:after{display:none}.bar-chart-v4-bar-wrap[data-tooltip]:after{display:none}[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%) translateY(4px);background:#1c1c1e;color:#fff;padding:6px 10px;border-radius:6px;font-size:12px;font-weight:500;white-space:nowrap;opacity:0;visibility:hidden;transition:all .15s ease;pointer-events:none;box-shadow:0 4px 12px #0003;z-index:9999}[data-tooltip]:hover:after{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}[data-tooltip-pos=bottom]:after{bottom:auto;top:calc(100% + 6px)}.delete-confirm-popup{position:fixed;z-index:10000;animation:popupFadeIn .15s ease}.delete-popup-content{background:var(--bg-surface);border-radius:12px;padding:16px 20px;box-shadow:0 8px 32px #0003;min-width:200px}.delete-popup-content p{margin:0 0 14px;font-size:14px;color:var(--text-main)}.delete-popup-content strong{color:var(--text-main)}.delete-popup-actions{display:flex;gap:8px;justify-content:flex-end}.delete-popup-btn{padding:8px 16px;border-radius:999px;font-size:13px;font-weight:500;cursor:pointer;border:1px solid transparent;transition:all .15s ease}.delete-popup-btn.cancel{background:var(--bg-surface-soft);color:var(--text-main);border-color:var(--border-subtle)}.delete-popup-btn.cancel:hover{background:var(--bg-main);border-color:var(--border-medium)}.delete-popup-btn.confirm{background:#ff3b30;color:#fff}.delete-popup-btn.confirm:hover{background:#e0352b}@keyframes popupFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.content-section.active{animation:none;opacity:1;transform:none}.message{animation:none}.activity-item:hover{transform:none}}.spreadsheet-card-header-row{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding-right:36px}.spreadsheet-private-tag{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:#8e8e931f;color:var(--text-muted);font-size:12px;padding:0;border-radius:50%;position:static;z-index:2;box-shadow:0 4px 12px #0000000d}.spreadsheet-private-tag i{font-size:12px}body.dark-mode .spreadsheet-private-tag{background:#8e8e9333;color:var(--text-light)}.settings-dropdown{z-index:10000!important;background:var(--bg-surface)!important;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}body.dark-mode .settings-dropdown{background:#2d2d30!important;border-color:#ffffff1a}.notifications-dropdown{z-index:10000!important;background:var(--bg-surface)!important;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}body.dark-mode .notifications-dropdown{background:var(--bg-surface)!important;border-color:var(--border-medium)}body.dark-mode .search-results{background:var(--dark-card-bg);border-color:var(--dark-border);box-shadow:0 12px 40px #0006,0 4px 12px #0000004d}body.dark-mode .search-result-item:hover,body.dark-mode .search-result-item.active{background:#007aff26}body.dark-mode .search-result-item.active{background:var(--accent)}body.dark-mode .search-result-icon{background:#007aff26}body.dark-mode .search-result-hint{background:#ffffff1a}body.dark-mode .search-result-tag{background:#64a0ff33;color:#6fa8ff}body.dark-mode .search-result-item.active .search-result-tag{background:#fff3;color:#fff}body.dark-mode .search-result-command .command-icon{background:linear-gradient(135deg,#64a0ff33,#8a88ff33)}.top-bar{position:relative;z-index:500}.top-bar .icon-btn{position:relative;z-index:1}.top-bar .icon-btn:hover{z-index:1}.settings-container{max-width:1000px;margin:0;padding:0}#settings-section{padding:30px 50px;overflow-x:hidden;overflow-y:auto}#settings-section .section-header{max-width:1000px;margin:0 0 30px;padding:0}#settings-profile-section{max-width:1000px;margin:0 0 24px}.settings-card{margin-bottom:24px;overflow:visible}.settings-card-header{padding:28px 40px}.form-section{padding-bottom:32px;margin-bottom:32px}.form-group{margin-bottom:24px}#settings-profile-section{display:none!important}.avatar-upload-inline{margin-top:20px;padding-top:20px;border-top:1px solid var(--border-subtle)}.avatar-upload-inline .btn-secondary{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;background:var(--bg-surface);border:1px solid var(--border-medium);border-radius:10px;color:var(--text-main);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.avatar-upload-inline .btn-secondary:hover{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.avatar-upload-inline .btn-secondary i{font-size:14px}.avatar-upload-hint{display:block;margin-top:10px;font-size:12px;color:var(--text-muted)}.content-section{overflow:hidden}.content-section.active{overflow-x:hidden;overflow-y:auto}.spreadsheet-panel{overflow:visible}.spreadsheet-panel-header{overflow:visible;position:relative;z-index:100}.spreadsheet-table-area{overflow-x:auto;overflow-y:auto}.modal{overflow:hidden}.spreadsheet-table td,.avatar-color-picker,.form-group{overflow:visible}@media(max-width:768px){.settings-dropdown{position:fixed!important;top:60px!important;right:10px!important;left:10px!important;width:auto!important;max-width:none!important;max-height:calc(100vh - 80px)!important;overflow-y:auto!important;display:none}.settings-dropdown.active{display:block!important}.settings-container{max-width:100%;padding:0 16px}#settings-section{padding-top:20px;padding-bottom:calc(var(--nav-safe-bottom) + 20px)}.settings-container{padding-left:10px;padding-right:10px}.settings-page-layout{padding-left:16px;padding-right:16px}.settings-card-body,.settings-card-header{padding:20px}}[data-tooltip]:after{z-index:99999;pointer-events:none}.spreadsheet-panel [data-tooltip]:after{display:none}body.dark-mode .settings-dropdown,body.dark-mode .notifications-dropdown{background:#2c2c2e!important;border-color:#ffffff1a;box-shadow:0 8px 32px #00000080}body.dark-mode .dropdown-item:hover{background:#ffffff1a}body.dark-mode .notification-item:hover{background:#ffffff0d}body.dark-mode .notification-item.unread:hover{background:#0a84ff26}body.dark-mode .search-results{background:#2c2c2e!important;border-color:#ffffff1f;box-shadow:0 12px 48px #0009,0 4px 16px #0006}body.dark-mode .search-results::-webkit-scrollbar-thumb{background:#fff3}body.dark-mode .search-results-section{border-color:#ffffff14}body.dark-mode .search-section-title{color:#8e8e93}body.dark-mode .search-result-item{color:#f5f5f7}body.dark-mode .search-result-item:hover{background:#ffffff14}body.dark-mode .search-result-item.active{background:var(--accent);color:#fff}body.dark-mode .search-result-title{color:#f5f5f7}body.dark-mode .search-result-meta{color:#8e8e93}body.dark-mode .notifications-dropdown{background:#2c2c2e!important;backdrop-filter:none;-webkit-backdrop-filter:none;border-color:#ffffff1f;box-shadow:0 12px 48px #0009,0 4px 16px #0006}body.dark-mode .notifications-header{background:transparent;border-color:#ffffff14}body.dark-mode .notifications-header h3{color:#f5f5f7}body.dark-mode .filter-btn{background:#ffffff14;border-color:#ffffff1f;color:#f5f5f7}body.dark-mode .filter-btn:hover{background:#0a84ff26;border-color:var(--accent);color:var(--accent)}body.dark-mode .filter-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}body.dark-mode .mark-read-btn{color:var(--accent)}body.dark-mode .mark-read-btn:hover{background:#0a84ff26}body.dark-mode .notifications-list{background:transparent}body.dark-mode .notification-item{background:transparent;color:#f5f5f7}body.dark-mode .notification-item:hover{background:#ffffff0f}body.dark-mode .notification-content h4{color:#f5f5f7}body.dark-mode .notification-content p{color:#8e8e93}body.dark-mode .notification-time{color:#636366}body.dark-mode .team-member-card{background:#1c1c1e;box-shadow:0 2px 8px #0000004d}body.dark-mode .team-member-card:hover{box-shadow:0 4px 16px #0006}body.dark-mode .member-name{color:#f5f5f7}body.dark-mode .member-detail-label{color:#8e8e93}body.dark-mode .member-detail-value{color:#f5f5f7}body.dark-mode .team-code-display{background:#ffffff0f;color:var(--text-main);border-color:#ffffff1a}body.dark-mode .btn-copy-code{color:var(--text-muted)}body.dark-mode .btn-leave-team{border-color:#ff453a;color:#ff453a}body.dark-mode .btn-leave-team:hover{background:#ff453a1a}body.dark-mode .member-card-menu-btn:hover{background:#ffffff14}body.dark-mode .member-card-dropdown{background:#2c2c2e;border-color:#ffffff1a;box-shadow:0 4px 16px #0006}body.dark-mode .join-request-item{background:#ffffff0a}body.dark-mode .member-card-dropdown-item:hover{background:#ffffff17;color:#f5f5f7}body.dark-mode .member-card-dropdown-item:hover i{color:var(--accent)}body.dark-mode .member-activity-modal-content{background:#2c2c2e}body.dark-mode .member-activity-item:hover{background:#ffffff0d}body.dark-mode .toggle-label{background:#2c2c2e;border-color:#ffffff1a}body.dark-mode .toggle-label:hover{background:#3a3a3c;border-color:#ffffff26}body.dark-mode .toggle-label-text{color:#f5f5f7}body.dark-mode .toggle-label-text small{color:#8e8e93}body.dark-mode .toggle-slider{background:#39393d}body.dark-mode input:checked+.toggle-slider{background:#34c759}body.dark-mode .toggle-slider:before{background:#f5f5f7}body.dark-mode .toggle-label:hover .toggle-slider{background:#48484a}body.dark-mode .toggle-label:hover input:checked+.toggle-slider{background:#30b855}body.dark-mode .settings-card{background:#2c2c2e!important;border-color:#ffffff1a}body.dark-mode .settings-card-header{background:#ffffff0d;border-color:#ffffff14}body.dark-mode .settings-card-header h2{color:#f5f5f7}body.dark-mode .settings-card-header p{color:#8e8e93}body.dark-mode .settings-card-body{background:transparent}body.dark-mode .settings-dropdown{background:#2c2c2e!important;border-color:#ffffff1f;box-shadow:0 8px 32px #00000080}body.dark-mode .dropdown-item{color:#f5f5f7}body.dark-mode .dropdown-item:hover{background:#ffffff14}body.dark-mode .dropdown-item i{color:#8e8e93}body.dark-mode .notification-prefs-toggles .toggle-label{background:#2c2c2e;border-color:transparent}body.dark-mode .notification-prefs-toggles .toggle-label:hover{background:#3a3a3c}body.dark-mode .modal-content{background:#2c2c2e;border-color:#ffffff1a}body.dark-mode .modal-header{border-color:#ffffff1a}body.dark-mode .modal-header h2{color:#f5f5f7}body.dark-mode .modal-footer{background:#2c2c2e;border-color:#ffffff1a}body.dark-mode .modal-actions-full{border-color:#ffffff1a}body.dark-mode .visibility-option{background:#1c1c1e;border-color:#ffffff1a}body.dark-mode .visibility-option:hover{border-color:var(--accent)}body.dark-mode .visibility-option.active{background:#0a84ff26;border-color:var(--accent)}body.dark-mode .visibility-icon{background:#ffffff14;color:#8e8e93}body.dark-mode .visibility-option.active .visibility-icon{background:var(--accent);color:#fff}body.dark-mode .visibility-title{color:#f5f5f7}body.dark-mode .visibility-desc{color:#8e8e93}body.dark-mode .icon-option{background:#1c1c1e;border-color:#ffffff1a;color:#8e8e93}body.dark-mode .icon-option:hover{border-color:var(--accent);color:var(--accent)}body.dark-mode .icon-option.active{border-color:var(--accent);background:#0a84ff26;color:var(--accent)}body.dark-mode .spreadsheet-table tbody tr:nth-child(2n){background:#ffffff05}body.dark-mode .spreadsheet-table tbody tr:hover{background:#0a84ff1a}body.dark-mode .spreadsheet-table tbody tr.selected{background:#0a84ff26}body.dark-mode .empty-state-icon-wrapper{background:linear-gradient(135deg,#0a84ff33,#0a84ff14)}body.dark-mode .empty-state-icon-wrapper:before{border-color:#ffffff26}body.dark-mode .empty-state-cta{background:linear-gradient(135deg,#0a84ff,#06c);box-shadow:0 4px 16px #0a84ff66}body.dark-mode .empty-state-cta:hover{box-shadow:0 8px 24px #0a84ff80}body.dark-mode .cell-editable:hover:after{border-color:var(--accent)}body.dark-mode .assignee-cell-inline:hover{background:#0a84ff26}body.dark-mode .column-toggle-sidebar{background:#1c1c1e;border-color:#ffffff14}body.dark-mode .sidebar-header{border-color:#ffffff14;background:transparent}body.dark-mode .column-toggle-item:hover{background:#ffffff0f;border-color:#ffffff14}body.dark-mode .column-toggle-item.active{background:linear-gradient(135deg,#0a84ff26,#667eea1a)}body.dark-mode .column-toggle-item.locked:hover{background:#ffffff08}body.dark-mode .column-icon{color:#ffffff80}body.dark-mode .column-toggle-item.active .column-icon{color:#0a84ff}body.dark-mode .column-toggle-label{color:#f5f5f7}body.dark-mode .column-menu-btn:hover{background:#ffffff1a}body.dark-mode .column-drag-handle:hover{background:#0a84ff33;color:#0a84ff}body.dark-mode .column-toggle-switch{background:#fff3}body.dark-mode .column-toggle-switch:after{background:#2c2c2e;box-shadow:0 2px 4px #0000004d}body.dark-mode .column-toggle-item.active .column-toggle-switch{background:linear-gradient(135deg,#0a84ff,#667eea)}body.dark-mode .column-toggle-item.active .column-toggle-switch:after{background:#fff}body.dark-mode .column-context-menu{background:#2c2c2e;box-shadow:0 8px 32px #00000080}body.dark-mode .column-context-menu-item{color:#f5f5f7}body.dark-mode .column-context-menu-item:hover{background:#0a84ff26}body.dark-mode .column-context-menu-item i{color:#fff9}body.dark-mode .column-context-menu-item.danger,body.dark-mode .column-context-menu-item.danger i{color:#ff453a}body.dark-mode .column-context-menu-item.danger:hover{background:#ff453a26}body.dark-mode .column-context-menu-divider{background:#ffffff1a}body.dark-mode .sidebar-section::-webkit-scrollbar-thumb{background:#ffffff26}body.dark-mode .sidebar-section::-webkit-scrollbar-thumb:hover{background:#ffffff40}.add-column-btn{width:22px;height:22px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border-subtle);border-radius:6px;color:var(--text-muted);cursor:pointer;transition:all .15s ease;font-size:10px;flex-shrink:0}.add-column-btn:hover{background:var(--accent);border-color:var(--accent);color:#fff;transform:scale(1.05)}.add-column-btn:active{transform:scale(.95)}.custom-column-modal{max-width:480px;width:95%;max-height:85vh;background:#fff;border-radius:16px;box-shadow:0 24px 80px #0003;display:flex;flex-direction:column;overflow:hidden}.custom-column-modal .modal-header{padding:16px 20px;border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.custom-column-modal .modal-header h2{font-size:17px;font-weight:600;display:flex;align-items:center;gap:8px;margin:0}.custom-column-modal .modal-header h2 i{color:var(--accent);font-size:16px}.custom-column-form{padding:20px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:18px}.custom-column-form .form-group{display:flex;flex-direction:column;gap:8px}.custom-column-form label{font-size:13px;font-weight:600;color:var(--text-main)}.custom-column-form input[type=text],.custom-column-form input[type=number]{padding:10px 12px;font-size:14px;border:1px solid var(--border-subtle);border-radius:8px;background:var(--bg-surface);color:var(--text-main);transition:border-color .15s ease,box-shadow .15s ease;width:100%;box-sizing:border-box}.custom-column-form input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #0070f31a}.field-error{font-size:12px;color:#ef4444;min-height:16px}.input-type-selector{display:flex;gap:8px;background:var(--bg-surface-soft);padding:4px;border-radius:10px}.type-option{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 8px;background:transparent;border:none;border-radius:8px;cursor:pointer;transition:all .15s ease;color:var(--text-muted)}.type-option span{font-size:11px;font-weight:500}.type-option:hover{color:var(--text-main);background:#0070f30d}.type-option.active{background:#fff;color:var(--accent);box-shadow:0 2px 8px #00000014}.dropdown-options-group{transition:opacity .2s ease,max-height .2s ease}.dropdown-options-list{display:flex;flex-direction:column;gap:8px;margin-bottom:10px}.dropdown-option-item{display:flex;align-items:center;gap:8px}.dropdown-option-input{flex:1;padding:8px 12px!important;font-size:13px!important;min-width:0}.option-color-picker,.range-color-picker{display:flex;gap:3px;flex-shrink:0}.color-swatch{width:18px;height:18px;border-radius:4px;border:2px solid transparent;cursor:pointer;transition:all .15s ease;padding:0}.color-swatch:hover{transform:scale(1.15)}.color-swatch.active{border-color:var(--text-main);box-shadow:0 0 0 2px #0000001a}.remove-option-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border-subtle);border-radius:6px;color:var(--text-muted);cursor:pointer;transition:all .15s ease;font-size:10px;flex-shrink:0}.remove-option-btn:hover{background:#fee2e2;border-color:#ef4444;color:#ef4444}.add-option-btn,.add-range-btn{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;background:var(--bg-surface-soft);border:1px dashed var(--border-subtle);border-radius:8px;color:var(--text-muted);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.add-option-btn:hover,.add-range-btn:hover{background:#0070f30d;border-color:var(--accent);color:var(--accent)}.add-option-btn i,.add-range-btn i{font-size:10px}.slider-color-ranges{display:flex;flex-direction:column;gap:8px;margin-bottom:10px}.color-range-item{display:flex;align-items:center;gap:6px}.color-range-item .range-min-input,.color-range-item .range-max-input{width:50px;padding:6px 8px!important;font-size:12px!important;text-align:center}.range-separator{color:var(--text-muted);font-size:12px}.remove-range-btn{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border-subtle);border-radius:5px;color:var(--text-muted);cursor:pointer;transition:all .15s ease;font-size:9px;flex-shrink:0}.remove-range-btn:hover{background:#fee2e2;border-color:#ef4444;color:#ef4444}.slider-config-group{transition:opacity .2s ease}.slider-range-inputs{display:flex;gap:12px}.range-input{flex:1;display:flex;flex-direction:column;gap:4px}.range-input span{font-size:11px;color:var(--text-muted);font-weight:500}.range-input input{padding:8px 10px!important;text-align:center}.icon-picker{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.icon-option{width:100%;aspect-ratio:1;display:flex;align-items:center;justify-content:center;background:var(--bg-surface-soft);border:2px solid transparent;border-radius:8px;cursor:pointer;transition:all .15s ease;color:var(--text-muted);font-size:14px}.icon-option:hover{background:#0070f314;color:var(--accent)}.icon-option.active{background:#0070f31a;border-color:var(--accent);color:var(--accent)}.custom-column-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:12px;border-top:1px solid var(--border-subtle);margin-top:auto}.custom-dropdown-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500;background:var(--bg-surface-soft);color:var(--text-main);cursor:pointer;transition:all .15s ease}.custom-dropdown-pill .pill-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.custom-dropdown-pill:hover{filter:brightness(.95)}.custom-slider-badge{display:inline-flex;align-items:center;justify-content:center;min-width:32px;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600;color:#fff}.column-header-clickable{cursor:pointer;transition:background .15s ease}.column-header-clickable:hover{background:#0070f314}.column-header-clickable .column-header-icon{transition:transform .15s ease}.column-header-clickable:hover .column-header-icon{transform:scale(1.1);color:var(--accent)}.inline-dropdown-option .option-color-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.custom-slider-cell .custom-slider-input{--slider-color: #9CA3AF}.custom-slider-cell .progress-range-slider::-webkit-slider-thumb{background:var(--slider-color, #0070F3)}.custom-slider-cell .progress-range-slider::-moz-range-thumb{background:var(--slider-color, #0070F3)}.custom-slider-badge{display:inline-flex;align-items:center;justify-content:center;min-width:32px;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600;color:#fff;flex-shrink:0}body.dark-mode .custom-column-modal{background:#2c2c2e;box-shadow:0 24px 80px #00000080}body.dark-mode .custom-column-form input[type=text],body.dark-mode .custom-column-form input[type=number]{background:#1c1c1e;border-color:#ffffff1a;color:#f5f5f7}body.dark-mode .input-type-selector{background:#ffffff0d}body.dark-mode .type-option:hover{background:#0a84ff1a}body.dark-mode .type-option.active{background:#3a3a3c;box-shadow:0 2px 8px #0000004d}body.dark-mode .icon-option{background:#ffffff0d}body.dark-mode .icon-option:hover{background:#0a84ff26}body.dark-mode .icon-option.active{background:#0a84ff33}body.dark-mode .add-option-btn,body.dark-mode .add-range-btn{background:#ffffff08;border-color:#ffffff1a}body.dark-mode .color-swatch.active{border-color:#f5f5f7}body.dark-mode .add-option-btn:hover{background:#0a84ff1a}body.dark-mode .remove-option-btn{border-color:#ffffff1a}body.dark-mode .remove-option-btn:hover{background:#ef444433;border-color:#ef4444}body.dark-mode .add-column-btn{border-color:#ffffff26}body.dark-mode .add-column-btn:hover{background:var(--accent);border-color:var(--accent)}.custom-dropdown-cell{display:flex;align-items:center;gap:6px;padding:4px 8px;background:var(--bg-surface-soft);border-radius:6px;cursor:pointer;transition:all .15s ease;font-size:13px;min-width:80px}.custom-dropdown-cell:hover{background:#0070f314}.custom-dropdown-cell .custom-dropdown-icon{margin-left:auto;font-size:8px;color:var(--text-muted)}.custom-slider-cell{display:flex;align-items:center;gap:8px;min-width:100px}.custom-slider-cell .progress-range-slider{flex:1;height:6px}.custom-slider-cell .custom-slider-range{background:linear-gradient(to right,transparent 0%,transparent var(--progress, 0%),#e5e5ea var(--progress, 0%),#e5e5ea 100%),var(--slider-gradient, linear-gradient(90deg, var(--slider-color, #9CA3AF) 0%, var(--slider-color, #9CA3AF) 100%));background-size:100% 100%,100% 100%}.custom-slider-cell .custom-slider-value{font-size:12px;font-weight:500;color:var(--text-muted);min-width:28px;text-align:right}.custom-number-input{width:60px;padding:4px 8px;font-size:13px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text-main);text-align:center;transition:all .15s ease}.custom-number-input:hover{background:var(--bg-surface-soft);border-color:var(--border-subtle)}.custom-number-input:focus{outline:none;background:#fff;border-color:var(--accent);box-shadow:0 0 0 2px #0070f31a}body.dark-mode .custom-dropdown-cell{background:#ffffff0d}body.dark-mode .custom-dropdown-cell:hover{background:#0a84ff1f}body.dark-mode .custom-number-input:hover{background:#ffffff0d;border-color:#ffffff1a}body.dark-mode .custom-number-input:focus{background:#1c1c1e;border-color:var(--accent)}.custom-text-td{max-width:200px}.custom-text-cell{display:flex;flex-direction:column;min-width:0;padding:4px 8px;min-height:28px;border-radius:6px;cursor:text;transition:background .15s ease}.custom-text-cell:hover{background:var(--bg-surface-soft)}.custom-text-value{display:block;font-size:13px;color:var(--text-main);line-height:1.4;white-space:nowrap;overflow-x:auto;overflow-y:hidden;text-overflow:ellipsis;scrollbar-width:thin;scrollbar-color:transparent transparent}.custom-text-cell:hover .custom-text-value{text-overflow:clip;scrollbar-color:var(--border-medium) transparent}.custom-text-value::-webkit-scrollbar{height:3px}.custom-text-value::-webkit-scrollbar-thumb{background:transparent;border-radius:2px}.custom-text-cell:hover .custom-text-value::-webkit-scrollbar-thumb{background:var(--border-medium)}.custom-text-value .text-placeholder{color:var(--text-muted)}.custom-text-input{width:100%;padding:4px 8px;font-size:13px;border:1px solid var(--accent);border-radius:6px;background:#fff;color:var(--text-main);outline:none;box-shadow:0 0 0 2px #0070f31a}.custom-link-cell{display:flex;align-items:center;gap:6px;padding:2px 4px;border-radius:6px;transition:background .15s ease}.custom-link-cell:hover{background:var(--bg-surface-soft)}.custom-link-cell.empty{cursor:pointer}.custom-link-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:14px;font-size:12px;font-weight:500;color:#fff;text-decoration:none;transition:all .2s ease;max-width:150px;overflow:hidden}.custom-link-pill:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.custom-link-pill i{font-size:10px;opacity:.9}.custom-link-pill span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.link-edit-btn{display:none;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:var(--bg-surface-soft);border-radius:6px;color:var(--text-muted);cursor:pointer;transition:all .15s ease}.custom-link-cell:hover .link-edit-btn{display:flex}.link-edit-btn:hover{background:var(--accent);color:#fff}.link-placeholder{font-size:12px;color:var(--text-muted);padding:4px 8px}.link-placeholder:hover{color:var(--accent)}.link-input-popup{position:absolute;z-index:1000;background:#fff;border-radius:10px;padding:12px;box-shadow:0 8px 32px #00000026;min-width:280px}.link-input-popup input{width:100%;padding:8px 12px;font-size:13px;border:1px solid var(--border-subtle);border-radius:8px;outline:none;transition:border-color .15s ease}.link-input-popup input:focus{border-color:var(--accent);box-shadow:0 0 0 2px #0070f31a}.link-input-popup .link-input-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}.column-toggle-item.drag-over-top:before,.column-toggle-item.drag-over-bottom:after{content:"";position:absolute;left:8px;right:8px;height:3px;background:linear-gradient(90deg,var(--accent) 0%,#667eea 100%);border-radius:2px;animation:dragIndicatorPulse 1s ease-in-out infinite;box-shadow:0 0 8px #0070f380}.column-toggle-item.drag-over-top:before{top:-2px}.column-toggle-item.drag-over-bottom:after{bottom:-2px}@keyframes dragIndicatorPulse{0%,to{opacity:1;transform:scaleX(1)}50%{opacity:.7;transform:scaleX(.98)}}.column-drag-handle{display:flex;align-items:center;justify-content:center;width:20px;height:20px;color:var(--text-muted);opacity:.3;cursor:grab;transition:all .15s ease;border-radius:4px;flex-shrink:0}.column-toggle-item:hover .column-drag-handle{opacity:.7}.column-drag-handle:hover{opacity:1!important;background:var(--bg-surface-soft);color:var(--accent)}.column-toggle-item.dragging{opacity:.5;background:var(--bg-surface-soft);transform:scale(.98)}.column-toggle-switch{position:relative;width:36px;height:20px;margin-top:-4px;border-radius:10px;cursor:pointer;transition:background .2s ease;flex-shrink:0}.column-toggle-switch:after{content:"";position:absolute;left:2px;top:2px;width:16px;height:16px;background:#fff;border-radius:50%;transition:transform .2s ease;box-shadow:0 1px 3px #0003}.column-toggle-item.active .column-toggle-switch:after{transform:translate(16px)}body.dark-mode .custom-text-cell:hover{background:#ffffff0d}body.dark-mode .custom-text-input{background:#1c1c1e;border-color:var(--accent);color:#f5f5f7}body.dark-mode .custom-link-cell:hover{background:#ffffff0d}body.dark-mode .link-edit-btn{background:#ffffff1a}body.dark-mode .link-input-popup{background:#2c2c2e;box-shadow:0 8px 32px #0006}body.dark-mode .link-input-popup input{background:#1c1c1e;border-color:#ffffff1a;color:#f5f5f7}body.dark-mode .column-toggle-switch{background:#3a3a3c}body.dark-mode .column-drag-handle:hover{background:#ffffff1a}.sheets-docs-toggle{display:inline-flex;background:var(--bg-surface);border-radius:999px;padding:4px;gap:4px;border:1px solid var(--border-subtle)}.sheets-docs-toggle .toggle-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;border:none;background:transparent;color:var(--text-muted);font-size:14px;font-weight:600;border-radius:999px;cursor:pointer;transition:all .2s ease}.sheets-docs-toggle .toggle-btn:hover{color:var(--text-main);background:var(--bg-body)}.sheets-docs-toggle .toggle-btn.active{background:var(--accent);color:#fff;box-shadow:0 2px 8px #007aff40}.sheets-docs-toggle .toggle-btn i{font-size:14px}#tasks-section.spreadsheet-open .spreadsheet-header .sheets-docs-toggle,#tasks-section.spreadsheet-open .docs-header .sheets-docs-toggle,#tasks-section.doc-open .spreadsheet-header .sheets-docs-toggle,#tasks-section.doc-open .docs-header .sheets-docs-toggle{display:none}.docs-header{display:flex;align-items:flex-start;margin-bottom:28px}.docs-header-left{display:flex;flex-direction:column;gap:4px;width:100%}.docs-header h3{font-size:24px;font-weight:700;color:var(--text-main);margin:0;display:flex;align-items:center;gap:12px;letter-spacing:-.02em}.docs-header h3 i{color:var(--accent);font-size:22px}.docs-subtitle{font-size:14px;color:var(--text-muted);margin:0}#tasks-section.doc-open .docs-header{display:none}.doc-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px}#tasks-section.doc-open .doc-cards,#tasks-section.doc-open .docs-header,#tasks-section.doc-open .spreadsheet-header,#tasks-section.doc-open .spreadsheet-cards,#tasks-section.doc-open .project-view-header,#tasks-section.doc-open #projectEmptyState{display:none!important}#tasks-section.doc-open{padding:0;overflow:hidden;height:100%;min-height:calc(100vh - 80px);min-height:calc(100dvh - 80px)}.doc-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:16px;padding:20px;cursor:pointer;transition:all .25s cubic-bezier(.25,.46,.45,.94);display:flex;flex-direction:column;gap:12px;min-height:140px;position:relative;overflow:hidden}.doc-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #0000001f;border-color:var(--border-medium)}.doc-card.doc-card-skeleton{pointer-events:none;background:linear-gradient(90deg,var(--bg-surface) 25%,var(--bg-surface-soft, rgba(0,0,0,.04)) 50%,var(--bg-surface) 75%);background-size:200% 100%;animation:docSkeletonShimmer 1.4s ease-in-out infinite}@keyframes docSkeletonShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}body.dark-mode .doc-card.doc-card-skeleton{background:linear-gradient(90deg,var(--bg-surface) 25%,rgba(255,255,255,.05) 50%,var(--bg-surface) 75%);background-size:200% 100%;animation:docSkeletonShimmer 1.4s ease-in-out infinite}.doc-card.doc-card-placeholder{min-height:140px;background-image:linear-gradient(90deg,#00000009 25%,#00000014,#00000009 75%);background-size:200% 100%}body.dark-mode .doc-card.doc-card-placeholder{background-image:linear-gradient(90deg,#ffffff0a 25%,#ffffff17,#ffffff0a 75%);background-size:200% 100%}.doc-editor-skeleton{padding:4px 0;cursor:default;user-select:none}.doc-editor-skeleton .skeleton-text{margin-bottom:12px}.doc-editor-skeleton .doc-editor-skeleton-gap{height:12px}.doc-editor-skeleton .skeleton{background-image:linear-gradient(90deg,#0000000f 25%,#0000001f,#0000000f 75%);background-size:200% 100%}body.dark-mode .doc-editor-skeleton .skeleton{background-image:linear-gradient(90deg,#ffffff12 25%,#ffffff26,#ffffff12 75%);background-size:200% 100%}@media(prefers-reduced-motion:reduce){.doc-card.doc-card-skeleton,.doc-editor-skeleton .skeleton{animation:none}}.doc-card.create-new{border:2px dashed var(--border-subtle);background:transparent;align-items:center;justify-content:center;color:var(--text-muted);min-height:140px}.doc-card.create-new:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft);transform:translateY(-2px);box-shadow:0 8px 24px #0070f326}.doc-card-icon{width:48px;height:48px;border-radius:12px;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}.doc-card.create-new .doc-card-icon{background:var(--bg-surface-soft);border-radius:50%;width:56px;height:56px;color:var(--text-muted);border:none;transition:all .2s ease}.doc-card.create-new:hover .doc-card-icon{background:var(--accent);color:#fff;transform:scale(1.05)}.doc-card-content{display:flex;flex-direction:column;gap:8px;flex:1}.doc-card-title{font-size:15px;font-weight:600;color:var(--text-main);margin:0;line-height:1.4;display:-webkit-box;line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.doc-card-preview{font-size:13px;color:var(--text-muted);line-height:1.5;display:-webkit-box;line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-line}.doc-card-meta{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-muted);margin-top:auto}.doc-card-meta i{font-size:11px;opacity:.7}.doc-card-menu-btn{width:28px;height:28px;border:none;background:transparent;color:var(--text-muted);border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;opacity:0;transition:all .15s ease;position:absolute;top:12px;right:12px;z-index:5}.doc-card:hover .doc-card-menu-btn{opacity:1}.doc-card-menu-btn:hover{background:var(--bg-body);color:var(--text-main)}.item-tile{--rail-w: 40px;--rail-top: 44px;--rail-slant: 18px;--rail-ease: cubic-bezier(.32, .72, 0, 1)}.spreadsheet-card.item-tile{min-height:168px}.item-tile .spreadsheet-card-title,.item-tile .doc-card-title{font-size:16px;font-weight:500;letter-spacing:-.01em}.item-tile .spreadsheet-card-content,.item-tile .doc-card-content{padding-right:calc(var(--rail-w) - 16px)}.item-tile .spreadsheet-card-menu-btn,.item-tile .doc-card-menu-btn{top:10px;right:calc((var(--rail-w) - 28px) / 2)}.tile-rail{position:absolute;top:var(--rail-top);right:0;bottom:0;width:var(--rail-w);z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:calc(var(--rail-slant) + 4px) 0 8px;transform:translate(calc(100% + 1px));transition:transform .26s cubic-bezier(.4,0,.6,1)}.tile-rail:before{content:"";position:absolute;inset:0;z-index:-1;background:#5aaaff;border-top-left-radius:38px 36px}.item-tile:hover .tile-rail,.item-tile:has(:focus-visible) .tile-rail{transform:none;transition:transform .42s var(--rail-ease)}.tile-rail-btn{flex:0 0 28px;width:28px;height:28px;padding:0;border:0;border-radius:50%;background:transparent;color:#fff;font-size:13px;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transform:translate(10px);transition:opacity .12s ease,transform .12s ease,background-color .15s ease,color .15s ease}.item-tile:hover .tile-rail-btn,.item-tile:has(:focus-visible) .tile-rail-btn{opacity:1;transform:none;transition:opacity .2s ease calc(90ms + var(--i, 0) * 45ms),transform .42s var(--rail-ease) calc(90ms + var(--i, 0) * 45ms),background-color .15s ease,color .15s ease}.tile-rail-btn:hover,.tile-rail-btn:focus-visible,.tile-rail-btn[aria-pressed=true]{background:#ffffff4d;outline:none}.tile-rail-btn:focus-visible{box-shadow:0 0 0 2px #ffffffb3}.item-tile .card-badge-row{transition:transform .3s var(--rail-ease)}.item-tile:hover .card-badge-row,.item-tile:has(:focus-visible) .card-badge-row{transform:translate(calc(var(--rail-w) * -1 + 8px))}@media(hover:none){.tile-rail{display:none}}@media(prefers-reduced-motion:reduce){.tile-rail,.tile-rail-btn,.item-tile .card-badge-row{transition:none!important}}.doc-panel{display:none;flex-direction:column;height:100%;min-height:calc(100vh - 80px);min-height:calc(100dvh - 80px);background:var(--bg-main);animation:panelFadeIn .25s ease;overflow:hidden}#tasks-section.doc-open .doc-panel{display:flex}.doc-panel-header{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);gap:12px;flex-shrink:0}.doc-title-group{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.doc-icon-preview{width:36px;height:36px;border-radius:8px;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}.doc-title-input{flex:1;min-width:0;font-size:18px;font-weight:600;color:var(--text-main);background:transparent;border:none;padding:6px 0;outline:none}.doc-title-input:focus{border-bottom:2px solid var(--accent)}.doc-title-input::placeholder{color:var(--text-muted)}.doc-save-status{font-size:13px;color:var(--text-muted);padding:6px 12px;background:var(--bg-surface-soft);border-radius:6px;white-space:nowrap}.toolbar-spacer{flex:1}.doc-counter-wrapper{position:relative;cursor:pointer;margin-left:auto;flex-shrink:0}.doc-counter{font-size:12px;color:var(--text-muted);opacity:.7;white-space:nowrap;padding:4px 8px;border-radius:6px;transition:all .15s ease;user-select:none}.doc-counter-wrapper:hover .doc-counter{opacity:1;background:var(--bg-surface-soft)}.doc-counter.near-limit{color:#f59e0b;opacity:1}.doc-counter.over-limit{color:#ef4444;opacity:1;font-weight:600}.doc-counter-dropdown{display:none;position:absolute;top:calc(100% + 4px);right:0;background:var(--bg-surface, #ffffff);border:1px solid var(--border-subtle, rgba(0, 0, 0, .08));border-radius:10px;box-shadow:0 8px 32px #0000001f,0 2px 8px #0000000f;padding:6px;overflow:hidden;z-index:50;min-width:180px}.doc-counter-dropdown.open{display:block}.doc-counter-option{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;border:none;background:transparent;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;color:var(--text-main, #1a1a1a);text-align:left;transition:background .15s ease}.doc-counter-option:hover{background:var(--bg-hover, rgba(0, 0, 0, .04))}.doc-counter-option.active{background:var(--accent-subtle, var(--accent) + "20");color:var(--accent);font-weight:600}.doc-save-status.saving{color:var(--accent)}.doc-save-status.error{color:#ef4444}.doc-save-status.read-only{color:var(--text-muted);background:transparent}.doc-readonly-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;background:var(--accent-soft);color:var(--accent);border-radius:6px;font-size:12px;font-weight:600;white-space:nowrap}.doc-readonly-badge i{font-size:11px}.doc-editor.read-only{background:var(--bg-surface-soft);cursor:default}.doc-editor.read-only:focus{outline:none;box-shadow:none}.doc-readonly-toggle{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:var(--bg-surface-soft);border-radius:var(--radius-md);margin-top:12px}.toggle-switch-label{display:flex;align-items:flex-start;flex-direction:column;gap:4px;flex:1;min-width:0}.toggle-label-text{font-size:14px;font-weight:500;color:var(--text-main)}.toggle-label-desc{font-size:12px;color:var(--text-muted);line-height:1.4}.pill-toggle{position:relative;width:44px;height:24px;flex-shrink:0}.pill-toggle input{opacity:0;width:0;height:0;position:absolute}.pill-toggle-slider{position:absolute;cursor:pointer;inset:0;background:#e5e5ea;transition:all .3s ease;border-radius:24px}.pill-toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;top:3px;background:#fff;transition:all .3s ease;border-radius:50%;box-shadow:0 2px 4px #00000026}.pill-toggle input:checked+.pill-toggle-slider{background:var(--accent)}.pill-toggle input:checked+.pill-toggle-slider:before{transform:translate(20px)}.pill-toggle:hover .pill-toggle-slider{background:#d1d1d6}.pill-toggle:hover input:checked+.pill-toggle-slider{background:var(--accent-hover)}body.dark-mode .pill-toggle-slider{background:#48484a}body.dark-mode .pill-toggle-slider:before{background:#f5f5f5}body.dark-mode .pill-toggle:hover .pill-toggle-slider{background:#5a5a5c}.doc-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:4px;padding:10px 20px;background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);flex-shrink:0;position:sticky;top:0;z-index:30}.toolbar-group{display:flex;align-items:center;gap:2px}.toolbar-divider{width:1px;height:24px;background:var(--border-subtle);margin:0 8px}.toolbar-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--text-muted);border-radius:6px;cursor:pointer;transition:all .15s ease;font-size:14px}.toolbar-btn:hover{background:var(--bg-surface-soft);color:var(--text-main)}.toolbar-btn.active{background:var(--accent-soft);color:var(--accent)}.toolbar-btn:has(.toolbar-btn-label){width:auto;padding:0 12px;gap:6px}.toolbar-btn-label{font-size:13px;font-weight:500}.pdf-export-mode h1,.pdf-export-mode h2,.pdf-export-mode h3,.pdf-export-mode h4,.pdf-export-mode p,.pdf-export-mode li,.pdf-export-mode .doc-chip,.pdf-export-mode .chip,.pdf-export-mode .card,.pdf-export-mode blockquote,.pdf-export-mode pre,.pdf-export-mode table,.pdf-export-mode img{break-inside:avoid;page-break-inside:avoid}.pdf-export-mode h1,.pdf-export-mode h2,.pdf-export-mode h3{break-after:avoid;page-break-after:avoid}.pdf-export-mode .doc-chip{display:inline-flex;margin:2px 0}.pdf-export-mode{background:#fff!important;color:#000!important}.pdf-export-mode .toolbar-btn,.pdf-export-mode .doc-panel-toolbar,.pdf-export-mode button:not(.doc-chip){display:none!important}.export-dropdown{background:var(--bg-surface, #ffffff);border:1px solid var(--border-subtle, rgba(0, 0, 0, .08));border-radius:10px;box-shadow:0 8px 32px #0000001f,0 2px 8px #0000000f;padding:6px;min-width:180px}.export-dropdown-option{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;border:none;background:transparent;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;color:var(--text-main, #1a1a1a);text-align:left;transition:background .15s ease}.export-dropdown-option:hover{background:var(--bg-hover, rgba(0, 0, 0, .04))}.export-dropdown-option i{width:18px;text-align:center;color:var(--text-secondary, #666666);font-size:14px}.export-dropdown-option:first-child i{color:#6b7280}.export-dropdown-option:last-child i{color:#ef4444}body.dark-mode .export-dropdown{background:#2d2d30;border-color:#ffffff1a}body.dark-mode .export-dropdown-option:hover{background:#ffffff14}.doc-panel-body{position:relative;flex:1;overflow-y:auto;padding:24px;background:var(--bg-main)}.doc-editor-container{max-width:800px;margin:0 auto;background:var(--bg-surface);border-radius:12px;border:1px solid var(--border-subtle);min-height:400px;box-shadow:0 2px 8px #0000000a}.doc-editor{padding:32px 40px 60vh;min-height:400px;font-size:15px;line-height:1.75;color:var(--text-main);outline:none;word-break:break-word;overflow-wrap:anywhere}.doc-editor:empty:before{content:attr(data-placeholder);color:var(--text-muted);pointer-events:none}.doc-editor p{margin:0 0 8px}.doc-editor p:last-child{margin-bottom:0}.doc-editor h1{font-size:2em!important;font-weight:700!important;margin:24px 0 16px!important;line-height:1.3!important;color:var(--text-main)!important;letter-spacing:-.02em;display:block!important}.doc-editor h2{font-size:1.5em!important;font-weight:600!important;margin:20px 0 12px!important;line-height:1.35!important;color:var(--text-main)!important;display:block!important}.doc-editor h3{font-size:1.25em!important;font-weight:600!important;margin:16px 0 10px!important;line-height:1.4!important;color:var(--text-main)!important;display:block!important}.doc-editor h1:first-child,.doc-editor h2:first-child,.doc-editor h3:first-child{margin-top:0!important}.doc-editor ul,.doc-editor ol{margin:0 0 16px;padding-left:24px}.doc-editor li{margin-bottom:4px}.doc-editor ul ul,.doc-editor ol ol,.doc-editor ul ol,.doc-editor ol ul{margin:4px 0;padding-left:20px}.doc-editor ul{list-style-type:disc}.doc-editor ul ul{list-style-type:circle}.doc-editor ul ul ul{list-style-type:square}.doc-editor ol{list-style-type:decimal}.doc-editor ol ol{list-style-type:lower-alpha}.doc-editor ol ol ol{list-style-type:lower-roman}.doc-editor a{color:var(--accent);text-decoration:underline}.doc-editor a:hover{text-decoration:none}.doc-editor blockquote{position:relative;margin:0 0 8px;padding:0 0 0 14px}.doc-editor blockquote:before{content:"";position:absolute;left:0;top:.35em;bottom:.35em;width:2px;border-radius:1px;background:var(--text-muted)}.doc-editor blockquote>:last-child{margin-bottom:0}.doc-editor pre{margin:0 0 12px;padding:14px 16px;min-height:1.6em;box-sizing:content-box;background:#8783781f;border:1px solid var(--border-subtle);border-radius:8px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-size:13px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere;tab-size:2;color:var(--text-main)}.doc-editor code{padding:.15em .4em;border-radius:4px;background:#87837829;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-size:.88em}.doc-editor pre code{padding:0;border-radius:0;background:none;font-size:inherit}.doc-editor hr{height:0;margin:16px 0;border:0;border-top:1px solid var(--border-medium)}.doc-editor li[data-checked]{position:relative;list-style:none}.doc-editor li[data-checked]:before{content:"";position:absolute;left:-24px;top:.34em;width:16px;height:16px;box-sizing:border-box;border:1.5px solid var(--text-muted);border-radius:4px;background:var(--bg-surface);cursor:pointer;transition:background .12s ease,border-color .12s ease}.doc-editor li[data-checked=true]:before{content:"\2713";border-color:var(--accent);background:var(--accent);color:var(--bg-surface);font-size:11px;font-weight:700;line-height:13px;text-align:center}.doc-editor li[data-checked=true]{color:var(--text-muted);text-decoration:line-through}.doc-editor.read-only li[data-checked]:before{cursor:default}.doc-link-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--bg-surface);border-radius:12px;padding:20px;width:90%;max-width:400px;box-shadow:0 20px 60px #0003;z-index:10001;border:1px solid var(--border-subtle)}.doc-link-modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.doc-link-modal-header h4{margin:0;font-size:16px;font-weight:600;color:var(--text-main)}.doc-link-modal-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--text-muted);border-radius:6px;cursor:pointer}.doc-link-modal-close:hover{background:var(--bg-surface-soft);color:var(--text-main)}.doc-link-modal input{width:100%;padding:12px;border:1px solid var(--border-subtle);border-radius:8px;font-size:14px;background:var(--bg-body);color:var(--text-main);margin-bottom:16px;outline:none}.doc-link-modal input:focus{border-color:var(--accent)}.doc-link-modal-actions{display:flex;justify-content:flex-end;gap:8px}#linkModalOverlay{position:fixed;inset:0;background:#0006;z-index:10000}.doc-private-badge{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;margin:0;padding:0;background:#8e8e931f;border-radius:50%;font-size:12px;color:var(--text-muted);box-shadow:0 4px 12px #0000000d}.doc-private-badge i{font-size:10px}body.dark-mode .doc-private-badge{background:#ffffff1a}.doc-format-dropdown-wrapper{position:relative}.doc-format-trigger{display:flex!important;align-items:center;gap:4px;padding:6px 10px!important;min-width:100px;justify-content:space-between}#docFormatLabel{font-size:13px;font-weight:500}.doc-format-dropdown{position:absolute;top:100%;left:0;margin-top:4px;background:var(--bg-surface, #ffffff);border:1px solid var(--border-subtle, rgba(0, 0, 0, .08));border-radius:10px;box-shadow:0 8px 32px #0000001f,0 2px 8px #0000000f;min-width:140px;padding:6px;z-index:10000;display:none!important;text-align:left}.doc-format-dropdown.visible{display:flex!important;flex-direction:column;gap:4px}.doc-format-option{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;border:none;background:transparent;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;color:var(--text-main, #1a1a1a);text-align:left;justify-content:flex-start;transition:background .15s ease}.doc-format-option:hover{background:var(--bg-hover, rgba(0, 0, 0, .04))}.doc-format-option.active{background:var(--bg-hover, rgba(0, 0, 0, .04));font-weight:600}.doc-format-option.active:before{content:"\f00c";font-family:"Font Awesome 6 Free","Font Awesome 5 Free";font-weight:900;font-size:12px;color:#34c759;margin-right:8px;-webkit-text-stroke:.5px #34C759}.doc-format-option span{color:var(--text-primary);font-weight:500;font-size:13px}body.dark-mode .doc-format-dropdown{background:#2d2d30;border-color:#ffffff1a;box-shadow:0 8px 32px #0000001f,0 2px 8px #0000000f}body.dark-mode .doc-format-option:hover,body.dark-mode .doc-format-option.active{background:#ffffff14}body.dark-mode .doc-format-option.active{background:var(--accent-soft);border-color:var(--accent)}.doc-command-popover{position:fixed;background:var(--bg-surface);border:1px solid var(--border-medium);border-radius:10px;box-shadow:0 8px 24px #00000026;min-width:280px;padding:4px;z-index:10001}.doc-command-popover .command-list{max-height:min(380px,60vh);overflow-y:auto;overscroll-behavior:contain}.command-group-label{padding:8px 12px 4px;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}body.dark-mode .doc-command-popover{background:var(--bg-elevated);box-shadow:0 8px 24px #0006}.command-option{display:flex;align-items:center;gap:12px;padding:7px 12px;cursor:pointer;border-radius:8px}.command-option.active{background:var(--accent-soft)}.command-option i{font-size:16px;color:var(--accent);width:20px;text-align:center}.command-option-text{display:flex;flex-direction:column;gap:2px}.command-option-title{font-size:13px;font-weight:500;color:var(--text-primary)}.command-option-desc{font-size:11px;color:var(--text-muted)}.doc-emoji-popover{position:fixed;background:var(--bg-surface);border:1px solid var(--border-medium);border-radius:12px;box-shadow:0 8px 24px #00000026;width:320px;max-height:360px;z-index:10002;display:flex;flex-direction:column;overflow:hidden}body.dark-mode .doc-emoji-popover{background:var(--bg-elevated);box-shadow:0 8px 24px #0006}.emoji-popover-header{padding:10px 12px;border-bottom:1px solid var(--border-subtle)}.emoji-search-input{width:100%;padding:8px 12px;border:1px solid var(--border-subtle);border-radius:8px;background:var(--bg-input);font-size:13px;color:var(--text-main);outline:none;transition:border-color .2s ease}.emoji-search-input:focus{border-color:var(--accent)}.emoji-search-input::placeholder{color:var(--text-muted)}.emoji-category-tabs{display:flex;gap:4px;padding:8px 12px;border-bottom:1px solid var(--border-subtle);overflow-x:auto;scrollbar-width:none}.emoji-category-tabs::-webkit-scrollbar{display:none}.emoji-tab{padding:6px 8px;border:none;background:transparent;border-radius:6px;font-size:18px;cursor:pointer;opacity:.5;transition:all .15s ease;flex-shrink:0}.emoji-tab:hover{background:var(--bg-surface-soft);opacity:.8}.emoji-tab.active{background:var(--accent-soft);opacity:1}.emoji-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:2px;padding:10px;overflow-y:auto;flex:1;max-height:220px}.emoji-item{width:34px;height:34px;display:flex;align-items:center;justify-content:center;font-size:20px;border-radius:6px;cursor:pointer;transition:background .15s ease}.emoji-item:hover{background:var(--accent-soft);transform:scale(1.1)}.emoji-grid-label{grid-column:1 / -1;font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;padding:8px 4px 4px;letter-spacing:.5px}.emoji-grid-label:first-child{padding-top:0}.doc-chip{display:inline;align-items:center;gap:4px;padding:4px 10px;border-radius:16px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease;vertical-align:baseline;margin:0 2px;user-select:text;white-space:nowrap;line-height:1.4}.doc-chip[data-chip-type=task]{background:#34c7591f;color:#34c759;border:1px solid rgba(52,199,89,.2)}.doc-chip[data-chip-type=sheet]{background:#007aff1f;color:#007aff;border:1px solid rgba(0,122,255,.2)}.doc-chip[data-chip-type=link]{background:#fff;color:var(--text-main);border:1px solid rgba(0,0,0,.08);text-decoration:none;padding:4px 10px;border-radius:16px;display:inline;vertical-align:baseline}.doc-chip[data-chip-type=link] .chip-favicon{width:14px;height:14px;object-fit:contain;vertical-align:middle;margin-right:4px}body.dark-mode .doc-chip[data-chip-type=link]{background:#ffffff14;border-color:#ffffff1f;color:var(--text-main)}.doc-chip:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.doc-chip[data-chip-type=link]:hover{background:#f8f8f8;border-color:#0000001f;transform:translateY(-1px);box-shadow:0 2px 8px #00000014}body.dark-mode .doc-chip[data-chip-type=link]:hover{background:#ffffff1f;border-color:#ffffff2e}body.dark-mode .doc-chip[data-chip-type=task]{background:#34c7592e;border-color:#34c7594d}body.dark-mode .doc-chip[data-chip-type=sheet]{background:#0a84ff2e;border-color:#0a84ff4d}.chip-icon{font-size:11px;display:inline-flex;align-items:center;justify-content:center}.chip-icon svg{width:12px;height:12px;stroke:currentColor}.chip-status-dot{width:6px;height:6px;border-radius:50%}.chip-status-dot.todo{background:#8e8e93}.chip-status-dot.done{background:#34c759}.chip-status-dot.in-progress{background:#ff9500}.doc-chip.unavailable{background:#8e8e931f;color:var(--text-muted);border-color:var(--border-subtle);cursor:not-allowed}.doc-chip{position:relative}.doc-chip:focus,.doc-chip.selected{outline:2px solid var(--accent);outline-offset:1px}.doc-chip .chip-delete-btn{display:none;position:absolute;top:-6px;right:-6px;width:16px;height:16px;padding:0;border:none;border-radius:50%;background:#ff3b30;color:#fff;font-size:10px;cursor:pointer;align-items:center;justify-content:center;z-index:1}.doc-chip:hover .chip-delete-btn{display:flex}.doc-chip[draggable=true]{cursor:grab}.doc-chip[draggable=true]:active{cursor:grabbing}.doc-chip.dragging{opacity:.4;cursor:grabbing}.chip-drop-indicator{display:inline-block;width:2px;height:1.2em;background:var(--accent, #007AFF);vertical-align:middle;margin:0 1px;border-radius:1px;pointer-events:none}@keyframes chip-drop-blink{0%,to{opacity:1}50%{opacity:.3}}.doc-embed{position:relative;margin:16px auto;max-width:420px;border:1px solid var(--border-subtle);border-radius:16px;overflow:hidden;background:var(--bg-surface);box-shadow:0 2px 8px #0000000a}.doc-embed:focus,.doc-embed.selected{outline:2px solid var(--accent);outline-offset:2px}.doc-embed .embed-delete-btn{display:none;position:absolute;top:8px;right:8px;width:24px;height:24px;padding:0;border:none;border-radius:50%;background:var(--danger);color:#fff;font-size:11px;cursor:pointer;align-items:center;justify-content:center;z-index:10;box-shadow:0 2px 6px #00000026;transition:transform .15s ease}.doc-embed .embed-delete-btn:hover{transform:scale(1.1)}.doc-embed:hover .embed-delete-btn{display:flex}.doc-embed-header,.doc-embed-header-compact{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--bg-body);border-bottom:1px solid var(--border-subtle)}.doc-embed-title{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--text-primary)}.doc-embed-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--accent)}.doc-embed-icon svg{width:12px;height:12px;stroke:currentColor}.doc-embed-title i{font-size:12px;color:var(--accent)}.doc-embed-open-btn{padding:6px 14px;font-size:12px;font-weight:600;color:var(--accent);background:var(--accent-soft);border:none;border-radius:999px;cursor:pointer;transition:all .15s ease}.doc-embed-open-btn:hover{background:var(--accent);color:#fff}.doc-embed-footer{display:flex;justify-content:center;padding:12px 16px;background:var(--bg-body);border-top:1px solid var(--border-subtle)}.doc-embed-see-all{display:flex;align-items:center;gap:6px;padding:6px 14px;font-size:12px;font-weight:600;color:var(--text-muted);background:transparent;border:1px solid var(--border-subtle);border-radius:999px;cursor:pointer;transition:all .15s ease}.doc-embed-see-all:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.doc-embed-see-all i{font-size:10px}.doc-embed-table-wrapper,.doc-embed-table-wrapper-compact{max-height:220px;overflow:auto}.doc-embed-table,.doc-embed-table-compact{width:100%;border-collapse:collapse;font-size:12px}.doc-embed-table th,.doc-embed-table td,.doc-embed-table-compact th,.doc-embed-table-compact td{padding:10px 14px;text-align:left;border-bottom:1px solid var(--border-subtle)}.doc-embed-table th,.doc-embed-table-compact th{background:var(--bg-surface);font-weight:600;font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;position:sticky;top:0;z-index:1}.doc-embed-table td,.doc-embed-table-compact td{color:var(--text-main)}.doc-embed-table tr:last-child td,.doc-embed-table-compact tr:last-child td{border-bottom:none}.doc-embed-table tr:hover td,.doc-embed-table-compact tr:hover td{background:var(--bg-body)}.embed-status-pill{display:inline-block;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:600;text-transform:capitalize}.embed-status-todo{background:#8e8e9326;color:#8e8e93}.embed-status-in-progress{background:#007aff1f;color:var(--accent)}.embed-status-done,.embed-status-complete{background:#34c7591f;color:#34c759}.embed-priority-pill{display:inline-block;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:600;text-transform:capitalize}.embed-priority-high{background:#ff3b301f;color:#ff3b30}.embed-priority-medium{background:#ff95001f;color:#ff9500}.embed-priority-low{background:#34c7591f;color:#34c759}.embed-priority-none{background:transparent;color:var(--text-muted)}.doc-embed.unavailable{padding:32px 20px;text-align:center;color:var(--text-muted)}.doc-embed.unavailable i{font-size:28px;margin-bottom:10px;opacity:.4}body.dark-mode .doc-embed{background:var(--bg-elevated);border-color:var(--border-medium)}body.dark-mode .doc-embed-header,body.dark-mode .doc-embed-header-compact{background:var(--bg-surface)}.doc-main-layout{display:flex;gap:20px}.doc-editor-container{flex:1;min-width:0}.reference-picker-search{position:relative;margin-bottom:16px}.reference-picker-search i{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-muted);font-size:14px}.reference-picker-search input{width:100%;padding:10px 12px 10px 36px;border:1px solid var(--border-medium);border-radius:8px;font-size:14px;background:var(--bg-body);color:var(--text-primary);outline:none}.reference-picker-search input:focus{border-color:var(--accent)}.reference-picker-list{max-height:400px;overflow-y:auto;display:flex;flex-direction:column;gap:6px;padding:4px}.reference-picker-item{padding:12px 16px;background:var(--bg-surface);border:2px solid var(--border-subtle);border-radius:24px;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;gap:10px}.reference-picker-item:hover{background:var(--bg-body);border-color:var(--border-medium)}.reference-picker-item.active{background:#fff;border-color:#b0b0b3}.reference-picker-item.active:before{content:"\f00c";font-family:"Font Awesome 6 Free","Font Awesome 5 Free";font-weight:900;font-size:12px;color:#34c759;-webkit-text-stroke:.5px #34C759}body.dark-mode .reference-picker-item{background:var(--bg-surface);border-color:var(--border-subtle)}body.dark-mode .reference-picker-item:hover{background:var(--bg-body);border-color:var(--border-medium)}body.dark-mode .reference-picker-item.active{background:var(--accent-soft);border-color:var(--accent)}.reference-item-title{font-size:13px;font-weight:600;color:var(--text-primary);flex:1}.reference-item-meta{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--text-muted)}.reference-item-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:6px;font-size:12px;flex-shrink:0}.reference-item-icon svg{width:12px;height:12px;stroke:currentColor}.reference-item-icon.task{background:#34c7591f;color:#34c759}.reference-item-icon.sheet{background:#007aff1f;color:#007aff}.task-conversion-preview{background:var(--bg-body);border:1px solid var(--border-subtle);border-radius:8px;padding:12px;max-height:300px;overflow-y:auto;margin-bottom:16px}.task-conversion-item{padding:10px;background:var(--bg-surface);border-radius:6px;margin-bottom:8px;display:flex;align-items:flex-start;gap:10px}.task-conversion-item:last-child{margin-bottom:0}.task-conversion-checkbox{margin-top:2px}.task-conversion-input{flex:1;border:none;background:none;font-size:13px;color:var(--text-primary);outline:none}.task-conversion-input-mode{display:flex;flex-direction:column;gap:12px}.task-conversion-hint{font-size:13px;color:var(--text-muted);margin:0}.task-conversion-textarea{width:100%;padding:12px;border:1px solid var(--border-medium);border-radius:8px;background:var(--bg-surface);color:var(--text-primary);font-size:13px;font-family:inherit;resize:vertical;min-height:120px}.task-conversion-textarea:focus{outline:none;border-color:var(--accent)}.task-conversion-parse-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;background:var(--accent);color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:background .15s ease;align-self:flex-start}.task-conversion-parse-btn:hover{background:var(--accent-hover)}body.dark-mode .task-conversion-textarea{background:var(--bg-elevated);border-color:var(--border-subtle)}.toggle-option{display:flex;align-items:center;gap:10px;cursor:pointer;user-select:none}.toggle-option input[type=checkbox]{width:18px;height:18px;cursor:pointer}.toggle-option span{font-size:14px;color:var(--text-primary)}body.dark-mode .task-conversion-preview{background:var(--bg-surface)}body.dark-mode .task-conversion-item{background:var(--bg-elevated)}@media(max-width:768px){.sheets-docs-toggle{width:auto;flex-shrink:0;padding:3px;border-radius:999px}.sheets-docs-toggle .toggle-btn{padding:10px 20px;font-size:14px;border-radius:999px;min-height:auto;min-width:auto}.doc-cards{grid-template-columns:1fr}.doc-panel-header{padding:12px 16px}.doc-toolbar{padding:8px 12px;gap:2px}.toolbar-btn{width:32px;height:32px;font-size:13px}.toolbar-divider{display:none}.doc-counter{font-size:11px;padding:3px 6px}.doc-counter-dropdown{min-width:110px}.doc-panel-body{padding:16px 16px 100px}.doc-editor-container{border-radius:8px}.doc-editor{padding:20px}.doc-title-input{font-size:16px}}@media(max-width:480px){.doc-toolbar{padding:6px 8px;gap:1px}.toolbar-btn{width:28px;height:28px;font-size:12px;border-radius:4px}.toolbar-btn .toolbar-btn-label{display:none}.toolbar-btn:has(.toolbar-btn-label){width:28px;padding:0;gap:0}.doc-counter{font-size:10px;padding:2px 4px}}body.dark-mode .sheets-docs-toggle{background:var(--bg-elevated);border-color:var(--border-medium)}body.dark-mode .sheets-docs-toggle .toggle-btn:hover{background:var(--bg-surface)}body.dark-mode .sheets-docs-toggle .toggle-btn.active{background:var(--accent);color:#fff}body.dark-mode .finance-mobile-toggle{background:var(--bg-elevated);border-color:var(--border-medium)}body.dark-mode .finance-mobile-toggle .toggle-btn:hover{background:var(--bg-surface)}body.dark-mode .doc-card{background:#2a2a2c;border-color:#3a3a3c}body.dark-mode .doc-card:hover{border-color:#4a4a4c}body.dark-mode .doc-panel-header,body.dark-mode .doc-toolbar,body.dark-mode .doc-editor-container{background:#2a2a2c;border-color:#3a3a3c}body.dark-mode .toolbar-btn:hover{background:#3a3a3c}body.dark-mode .doc-counter-dropdown{background:#2d2d30;border-color:#ffffff1a}body.dark-mode .doc-counter-option:hover{background:#ffffff14}body.dark-mode .doc-link-modal{background:#2a2a2c;border-color:#3a3a3c}body.dark-mode .doc-link-modal input{background:#1c1c1e;border-color:#3a3a3c}#metrics-section{background:transparent}#metrics-section .section-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:16px;margin-bottom:32px}#metrics-section .section-header h1{font-size:1.75rem;font-weight:600;letter-spacing:-.025em;color:var(--text-main)}#metrics-section .section-subtitle{font-size:.95rem;color:var(--text-muted);font-weight:400;margin-top:4px}.metrics-layout{display:flex;flex-direction:column;gap:28px}.metrics-card{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:16px;padding:20px;box-shadow:0 4px 24px #0000000a;transition:all .3s cubic-bezier(.4,0,.2,1);animation:metricsCardFadeIn .4s ease-out forwards;opacity:0;position:relative;z-index:1}.metrics-card.settings-open{z-index:50}.metrics-card:has(.graph-menu-dropdown.active),.metrics-card:has(.metrics-dropdown.open),.metrics-card:has(.dropdown-menu.show){z-index:100}.metrics-card.edit-mode .metrics-edit-container{position:relative;overflow:visible}@keyframes metricsCardFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.metrics-card:nth-child(1){animation-delay:.05s}.metrics-card:nth-child(2){animation-delay:.1s}.metrics-card:nth-child(3){animation-delay:.15s}.metrics-card:nth-child(4){animation-delay:.2s}.metrics-card:nth-child(5){animation-delay:.25s}.metrics-card:hover{box-shadow:0 8px 32px #0000000f;transform:translateY(-2px)}.metrics-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--border-subtle)}.metrics-card-header h3{font-size:.8rem;font-weight:600;color:var(--text-muted);display:flex;align-items:center;gap:8px;margin:0;letter-spacing:.4px}.metrics-card-header h3 i{color:#0a84ff;font-size:.75rem;opacity:.9}.metrics-card-header-value{font-size:.95rem;font-weight:700;color:var(--text-main);margin-left:auto;margin-right:8px;white-space:nowrap}} .metrics-card-body{padding-top:4px;overflow:visible}.metrics-placeholder-state{grid-column:1 / -1;text-align:center;padding:80px 32px;background:var(--glass-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:24px}.metrics-placeholder-icon{width:72px;height:72px;margin:0 auto 24px;background:var(--accent-soft);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--accent);font-size:28px}.metrics-placeholder-state h3{font-size:1.25rem;font-weight:600;color:var(--text-main);margin:0 0 12px;letter-spacing:-.02em}.metrics-placeholder-state p{color:var(--text-muted);max-width:380px;margin:0 auto;line-height:1.6;font-size:.95rem}.nav-item.hidden{display:none!important}@media(max-width:768px){.metrics-layout{gap:20px}.metrics-card{padding:20px;border-radius:16px}#metrics-section .section-header h1{font-size:1.5rem}}@media(max-width:480px){.metrics-card{padding:16px;border-radius:14px}.metrics-placeholder-state{padding:48px 20px}.metrics-placeholder-icon{width:56px;height:56px;font-size:22px}}body.dark-mode .metrics-card{background:#1c1c1ed9;border-color:#ffffff14;box-shadow:0 4px 24px #0000004d}body.dark-mode .metrics-card:hover{box-shadow:0 8px 32px #0006}body.dark-mode .metrics-placeholder-state{background:#1c1c1ed9;border-color:#ffffff14}.metrics-section-title{display:flex;align-items:center;gap:10px;font-size:.7rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.6px;margin:0 0 16px;padding:0;border-bottom:none}.metrics-section-title i{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#0a84ff1f;color:#0a84ff;border-radius:6px;font-size:.65rem}.metrics-section-title-team{margin-top:8px}.metrics-section-title-team i{background:#34c7591f;color:var(--success)}.metrics-section-header{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-bottom:8px;position:relative;height:0;overflow:visible}.metrics-section-subheading{font-size:.65rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;flex:1}.section-visibility-toggle{width:24px;height:24px;border-radius:6px;border:1px solid var(--border-subtle);background:var(--bg-surface);color:var(--text-muted);font-size:11px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;opacity:.5;position:absolute;right:0;top:-8px;z-index:5}.section-visibility-toggle:hover{opacity:1;background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.section-visibility-toggle.section-hidden{background:#ff95001a;border-color:#ff95004d;color:var(--warning);opacity:.8}.section-visibility-toggle.section-hidden:hover{opacity:1;background:#ff950026}.metrics-charts-row{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:24px}.metrics-charts-row .metrics-switchable-graph{margin-bottom:0}.metrics-empty-state-mini{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:32px 16px;color:var(--text-muted);font-size:.8rem;text-align:center;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;min-height:200px}.metrics-empty-state-mini i{font-size:24px;opacity:.5}.metrics-stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.metrics-stat-card{position:relative;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:14px;padding:16px 18px;display:flex;align-items:center;gap:14px;transition:all .25s cubic-bezier(.4,0,.2,1);animation:statCardFadeIn .35s ease-out forwards;opacity:0}@keyframes statCardFadeIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.metrics-stats-row .metrics-stat-card:nth-child(1){animation-delay:.08s}.metrics-stats-row .metrics-stat-card:nth-child(2){animation-delay:.12s}.metrics-stats-row .metrics-stat-card:nth-child(3){animation-delay:.16s}.metrics-stats-row .metrics-stat-card:nth-child(4){animation-delay:.2s}.metrics-stat-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000000f;border-color:#0070f326}.metrics-stat-card-large{padding:24px 28px;grid-column:span 1}.metrics-stat-icon{width:38px;height:38px;border-radius:10px;background:var(--accent-soft);display:flex;align-items:center;justify-content:center;color:var(--accent);font-size:15px;flex-shrink:0;transition:transform .2s ease}.metrics-stat-card:hover .metrics-stat-icon{transform:scale(1.05)}.metrics-stat-card.success .metrics-stat-icon{background:var(--success-soft);color:var(--success)}.metrics-stat-card.warning .metrics-stat-icon{background:var(--warning-soft);color:var(--warning)}.metrics-stat-card.danger .metrics-stat-icon{background:var(--danger-soft);color:var(--danger)}.metrics-stat-content{flex:1;min-width:0}.metrics-stat-value{font-size:1.5rem;font-weight:700;color:var(--text-main);line-height:1.1;letter-spacing:-.03em;font-feature-settings:"tnum" on,"lnum" on}.metrics-stat-label{font-size:.75rem;color:var(--text-muted);margin-top:3px;font-weight:500;letter-spacing:.01em}.metrics-stat-subtitle{font-size:.65rem;color:var(--text-light);margin-top:4px;opacity:.7}.metrics-stat-card-success .metrics-stat-icon{background:#34c7591f;color:#34c759}.metrics-stat-card-warning .metrics-stat-icon{background:#ff9f0a1f;color:#ff9f0a}.metrics-stat-card-danger .metrics-stat-icon{background:#ff3b301f;color:#ff3b30}.metrics-sparkline{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center}.metrics-sparkline svg{display:block}.metrics-stat-card.has-sparkline{gap:12px}body.dark-mode .metrics-stat-card-success .metrics-stat-icon{background:#30d15826;color:#30d158}body.dark-mode .metrics-stat-card-warning .metrics-stat-icon{background:#ffd60a26;color:#ffd60a}body.dark-mode .metrics-stat-card-danger .metrics-stat-icon{background:#ff453a26;color:#ff453a}.metrics-progress-ring-container{position:relative;width:60px;height:60px;flex-shrink:0}.progress-ring{transform:rotate(-90deg)}.progress-ring-bg{stroke:var(--border-subtle);fill:none;stroke-width:4}.progress-ring-progress{fill:none;stroke-width:4;stroke-linecap:round;transition:stroke-dashoffset .8s cubic-bezier(.4,0,.2,1)}.progress-ring-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.85rem;font-weight:700;color:#0a84ff;letter-spacing:-.02em}.progress-ring-text .progress-ring-unit{font-size:.55rem;font-weight:500;opacity:.7;margin-left:1px}.bar-chart-clean{display:flex;flex-direction:column;gap:10px;padding:6px 4px}.bar-row-clean{display:flex;align-items:center;gap:12px}.bar-label-clean{width:120px;min-width:120px;font-size:.78rem;font-weight:600;color:var(--text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0}.bar-track-clean{flex:1;height:12px;background:var(--border-subtle);border-radius:6px;overflow:hidden;min-width:90px;border:1px solid var(--border-card)}.bar-fill-clean{height:100%;border-radius:6px}.bar-value-clean{width:60px;min-width:60px;text-align:right;font-size:.8rem;font-weight:700;color:var(--text-main);flex-shrink:0;font-feature-settings:"tnum" on}[data-theme=dark] .bar-track-clean{background:#ffffff14;border-color:#ffffff14}.bar-chart-toggle{display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:500;color:var(--text-muted);cursor:pointer;padding:4px 10px;background:#8e8e9326;border-radius:10px;transition:all .15s ease;margin:4px 0;align-self:flex-start}.bar-chart-toggle:hover{background:#8e8e9340;color:var(--text-main)}.bar-chart-extra{display:none;flex-direction:column;gap:10px}.bar-chart-clean[data-expanded=true] .bar-chart-extra{display:flex}.bar-chart-clean[data-expanded=true] .bar-chart-toggle-text{display:none}.bar-chart-clean[data-expanded=true] .bar-chart-toggle:after{content:"Show less"}body.dark-mode .bar-chart-toggle,[data-theme=dark] .bar-chart-toggle{background:#ffffff1f}body.dark-mode .bar-chart-toggle:hover,[data-theme=dark] .bar-chart-toggle:hover{background:#ffffff2e}.chart-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 16px;gap:12px;min-height:100px}.chart-empty-ring{position:relative;display:flex;align-items:center;justify-content:center}.chart-empty-ring svg{opacity:.6}.chart-empty-ring svg circle:first-child{animation:emptyRingRotate 20s linear infinite;transform-origin:center}@keyframes emptyRingRotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.chart-empty-icon{position:absolute;display:flex;align-items:center;justify-content:center;color:var(--text-muted);opacity:.5;font-size:1.1rem}.chart-empty-text{font-size:.75rem;color:var(--text-muted);font-weight:500;text-align:center}[data-theme=dark] .chart-empty-ring svg circle:first-child{stroke:var(--border-card)}[data-theme=dark] .chart-empty-ring svg circle:last-child{fill:var(--bg-body)}.bar-chart-v3{display:grid;grid-template-columns:auto 1fr;grid-template-rows:1fr auto;gap:0;height:240px;width:100%;position:relative}.bar-chart-v3.tall{height:320px}.bar-chart-v3-y-axis{grid-column:1;grid-row:1;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-end;padding-right:8px;min-width:36px}.bar-chart-v3-y-label{font-size:.72rem;font-weight:600;color:var(--text-secondary);font-feature-settings:"tnum" on;line-height:1;height:0;display:flex;align-items:center}.bar-chart-v3-area{grid-column:2;grid-row:1;position:relative;overflow:visible}.bar-chart-v3-grid{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;pointer-events:none}.bar-chart-v3-grid-line{height:1px;background:var(--border-card, rgba(0, 0, 0, .08));width:100%}.bar-chart-v3-bars{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:space-evenly;padding:0 8px;gap:4px}.bar-chart-v3-bar-wrap{flex:1;max-width:48px;min-width:6px;height:100%;display:flex;align-items:flex-end;justify-content:center;cursor:pointer;position:relative}.bar-chart-v3-bar{width:100%;max-width:32px;min-width:4px;background:#2563eb;border-radius:4px 4px 0 0;transition:height .4s cubic-bezier(.34,1.56,.64,1),opacity .2s ease;min-height:0}.bar-chart-v3-bar.zero{height:3px!important;border:none;min-height:3px}.bar-chart-v3-bar-wrap:hover .bar-chart-v3-bar{opacity:.85}.bar-chart-v3-x-axis{grid-column:2;grid-row:2;display:flex;justify-content:space-evenly;padding:6px 8px 0;gap:4px}.bar-chart-v3-x-label{flex:1;max-width:48px;min-width:6px;text-align:center;font-size:.68rem;font-weight:600;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bar-chart-v3-x-label.hidden{visibility:hidden}.bar-chart-v3-tooltip{position:absolute;background:#fff;border:1px solid var(--border-subtle);border-radius:8px;padding:6px 10px;font-size:.75rem;font-weight:500;color:var(--text-primary);white-space:nowrap;pointer-events:none;z-index:100;box-shadow:0 4px 12px #00000026;transform:translate(-50%,-100%);margin-top:-8px;opacity:0;transition:opacity .15s ease;backdrop-filter:none;-webkit-backdrop-filter:none}body.dark-mode .bar-chart-v3-tooltip{background:#1c1c1e}.bar-chart-v3-tooltip.visible{opacity:1}.bar-chart-v4{display:grid;grid-template-columns:auto 1fr;grid-template-rows:1fr auto;gap:0;height:240px;width:100%;position:relative}.bar-chart-v4.tall{height:320px}.bar-chart-v4-y-axis{grid-column:1;grid-row:1;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-end;padding-right:8px;min-width:36px}.bar-chart-v4-y-label{font-size:.72rem;font-weight:600;color:var(--text-secondary);font-feature-settings:"tnum" on;line-height:1;height:0;display:flex;align-items:center}.bar-chart-v4-area{grid-column:2;grid-row:1;position:relative;overflow:visible}.bar-chart-v4-grid{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;pointer-events:none}.bar-chart-v4-grid-line{height:1px;background:var(--border-card, rgba(0, 0, 0, .08));width:100%}.bar-chart-v4-bars{position:absolute;inset:0;display:grid;align-items:flex-end;padding:0 2% 0 5%;gap:2px}.bar-chart-v4-bar-wrap{height:100%;display:flex;align-items:flex-end;justify-content:center;cursor:pointer;position:relative}.bar-chart-v4-bar{width:100%;max-width:32px;min-width:3px;background:#2563eb;border-radius:10px 10px 0 0;transition:height .4s cubic-bezier(.34,1.56,.64,1),opacity .2s ease}.bar-chart-v4-bar.zero{height:3px!important;min-height:3px}.bar-chart-v4-bar-wrap:hover .bar-chart-v4-bar{opacity:.85}.bar-chart-x-axis-v2{grid-column:2;grid-row:2;display:flex;flex-direction:column;padding:4px 0 0;gap:0}.bar-chart-x-row-segments{height:10px;align-items:center}.bar-chart-x-segment{display:block;height:6px;width:100%;background:var(--segment-color-1, rgba(0,0,0,.18));border-radius:999px;margin:0;box-shadow:inset 0 0 0 1px var(--bg-surface, #fff)}.bar-chart-x-segment-spacer{visibility:hidden}.bar-chart-x-row{display:grid;gap:0;width:100%}.bar-chart-x-row-top{font-size:.7rem}.bar-chart-x-row-bottom{font-size:.64rem}.bar-chart-x-cell{text-align:center;font-size:inherit;font-weight:600;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3;padding:0;margin:0}.bar-chart-x-cell.hidden{visibility:hidden}.bar-chart-x-group-label{font-size:.64rem;font-weight:700;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.03em}.bar-chart-v4[data-view-mode=allTime] .bar-chart-x-row-bottom .bar-chart-x-group-label,.line-chart-axis-wrap[data-view-mode=allTime] .bar-chart-x-row-bottom .bar-chart-x-group-label{text-transform:none;letter-spacing:.02em}.bar-chart-v4[data-view-mode=allTime] .bar-chart-x-row-bottom .bar-chart-x-group-label-text,.line-chart-axis-wrap[data-view-mode=allTime] .bar-chart-x-row-bottom .bar-chart-x-group-label-text{background:#00000014;color:var(--text-secondary);padding:2px 8px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;line-height:1.2}body.dark-mode .bar-chart-v4[data-view-mode=allTime] .bar-chart-x-row-bottom .bar-chart-x-group-label-text,body.dark-mode .line-chart-axis-wrap[data-view-mode=allTime] .bar-chart-x-row-bottom .bar-chart-x-group-label-text{background:#ffffff1f}.bar-chart-v4[data-view-mode=last7days] .bar-chart-x-row-bottom .bar-chart-x-group-label-text,.bar-chart-v4[data-view-mode=last30days] .bar-chart-x-row-bottom .bar-chart-x-group-label-text,.line-chart-axis-wrap[data-view-mode=last7days] .bar-chart-x-row-bottom .bar-chart-x-group-label-text,.line-chart-axis-wrap[data-view-mode=last30days] .bar-chart-x-row-bottom .bar-chart-x-group-label-text{background:#00000014;color:var(--text-secondary);padding:2px 8px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;line-height:1.2}body.dark-mode .bar-chart-v4[data-view-mode=last7days] .bar-chart-x-row-bottom .bar-chart-x-group-label-text,body.dark-mode .bar-chart-v4[data-view-mode=last30days] .bar-chart-x-row-bottom .bar-chart-x-group-label-text,body.dark-mode .line-chart-axis-wrap[data-view-mode=last7days] .bar-chart-x-row-bottom .bar-chart-x-group-label-text,body.dark-mode .line-chart-axis-wrap[data-view-mode=last30days] .bar-chart-x-row-bottom .bar-chart-x-group-label-text{background:#ffffff1f}.line-chart-v2{display:grid;grid-template-columns:1fr;gap:0}.line-chart-v2 svg{width:100%;height:auto}.line-chart-axis-wrap{margin-top:0}.line-chart-axis-wrap .bar-chart-x-axis-v2{grid-column:auto;grid-row:auto;padding:4px 0}.line-chart-axis-wrap .bar-chart-x-row-top{display:grid}.line-chart-y-labels text,.line-chart-y-labels.secondary text{font-size:.72rem;font-weight:600;fill:var(--text-secondary);font-feature-settings:"tnum" on}.bar-chart-x-group-spacer{visibility:hidden}@media(max-width:768px){.bar-chart-v4{height:200px}.bar-chart-v4.tall{height:280px}.bar-chart-v4-y-axis{min-width:28px;padding-right:6px}.bar-chart-v4-y-label{font-size:.65rem}.bar-chart-x-cell{font-size:.6rem}.bar-chart-x-group-label{font-size:.56rem}}@media(max-width:480px){.bar-chart-v4{height:160px}.bar-chart-v4.tall{height:220px}.bar-chart-v4-y-axis{min-width:24px;padding-right:4px}.bar-chart-v4-y-label{font-size:.58rem}.bar-chart-x-cell{font-size:.52rem}.bar-chart-x-group-label{font-size:.48rem}}@media(max-width:768px){.bar-chart-v3{height:200px}.bar-chart-v3.tall{height:280px}.bar-chart-v3-y-axis{min-width:28px;padding-right:6px}.bar-chart-v3-y-label{font-size:.65rem}.bar-chart-v3-x-label{font-size:.6rem}.bar-chart-v3-bar-wrap{max-width:36px}.bar-chart-v3-bar{max-width:24px}}@media(max-width:480px){.bar-chart-v3{height:160px}.bar-chart-v3.tall{height:220px}.bar-chart-v3-y-axis{min-width:24px;padding-right:4px}.bar-chart-v3-y-label{font-size:.58rem}.bar-chart-v3-x-label{font-size:.52rem}.bar-chart-v3-bars{padding:0 4px;gap:2px}.bar-chart-v3-x-axis{padding:4px 4px 0;gap:2px}.bar-chart-v3-bar-wrap{max-width:24px}.bar-chart-v3-bar{max-width:16px;border-radius:2px 2px 0 0}}.metrics-trend-chart{display:flex;align-items:flex-end;justify-content:space-between;height:100px;gap:6px;padding:8px 0}.metrics-trend-bar-wrapper{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;gap:8px;min-width:0}.metrics-trend-bar{width:100%;max-width:32px;background:linear-gradient(180deg,var(--accent) 0%,rgba(0,112,243,.5) 100%);border-radius:6px 6px 2px 2px;transition:height .5s cubic-bezier(.4,0,.2,1),opacity .3s ease;min-height:3px;margin-top:auto;opacity:.85}.metrics-trend-bar:hover{opacity:1;transform:scaleX(1.1)}.metrics-trend-label{font-size:.65rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px;font-weight:500}[data-theme=dark] .trend-grid-lines .grid-line{background:#ffffff14}[data-theme=dark] .pie-segment{filter:brightness(1.05)}.graph-menu-container{position:relative}.graph-menu-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:8px;color:var(--text-muted);cursor:pointer;transition:all .2s ease}.graph-menu-btn:hover{background:var(--bg-hover);color:var(--text-main)}.graph-menu-btn i{font-size:.9rem}.graph-menu-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:160px;background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:14px;box-shadow:0 8px 32px #0000001f,0 2px 8px #0000000f;padding:8px;opacity:0;visibility:hidden;transform:translateY(-8px) scale(.96);transition:all .2s cubic-bezier(.4,0,.2,1);z-index:100}.graph-menu-dropdown.active{opacity:1;visibility:visible;transform:translateY(0) scale(1)}.graph-menu-title{font-size:.7rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;padding:6px 10px 10px;border-bottom:1px solid var(--border-subtle);margin-bottom:6px}.graph-menu-option{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;background:transparent;border:none;border-radius:8px;color:var(--text-main);font-size:.85rem;font-weight:500;cursor:pointer;transition:all .15s ease;text-align:left}.graph-menu-option:hover{background:var(--bg-hover)}.graph-menu-option.active{background:var(--accent-soft);color:var(--accent)}.graph-menu-option i{font-size:.9rem;width:18px;text-align:center;opacity:.7}.graph-menu-option.active i{opacity:1}.graph-menu-option.disabled,.graph-menu-option:disabled{opacity:.4;cursor:not-allowed;pointer-events:auto}.graph-menu-option.disabled:hover,.graph-menu-option:disabled:hover{background:transparent}.graph-header-actions{display:flex;align-items:center;gap:4px}.graph-settings-toggle{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--accent-soft);border:none;border-radius:8px;color:var(--accent);cursor:pointer;transition:all .2s ease}.graph-settings-toggle:hover{background:var(--accent);color:#fff}.graph-settings-toggle i{font-size:.85rem}.graph-settings-panel{background:var(--glass-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:16px;margin-top:16px;overflow:hidden;max-height:0;opacity:0;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative}.graph-settings-panel.open{max-height:2000px;opacity:1;overflow:visible;z-index:100}.graph-settings-header{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-bottom:1px solid var(--border-subtle)}.graph-settings-title{display:flex;align-items:center;gap:8px;font-size:.8rem;font-weight:600;color:var(--text-main)}.graph-settings-title i{color:var(--accent);font-size:.9rem}.graph-settings-close{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:8px;color:var(--text-muted);cursor:pointer;transition:all .15s ease}.graph-settings-close:hover{background:var(--bg-hover);color:var(--text-main)}.graph-settings-content{padding:16px 16px 120px;display:flex;flex-direction:column;gap:16px;overflow:visible}.settings-section{display:flex;flex-direction:column;gap:8px;overflow:visible}.settings-subsection{position:relative;overflow:visible}.settings-section-title{font-size:.7rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.settings-row{display:flex;gap:12px}.settings-field{flex:1;display:flex;flex-direction:column;gap:4px}.settings-field label{font-size:.7rem;font-weight:500;color:var(--text-muted)}.settings-input{width:100%;padding:8px 10px;background:var(--bg-body);border:1px solid var(--border-subtle);border-radius:8px;font-size:.8rem;font-weight:500;color:var(--text-main);transition:all .2s ease;font-family:inherit}.settings-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.settings-input::placeholder{color:var(--text-muted);opacity:.6}.color-options{display:flex;gap:10px;flex-wrap:wrap}.color-option{width:32px;height:32px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:transform .15s}.color-option:hover{transform:scale(1.15)}.color-option.active{border-color:var(--text-main)}.graph-settings-footer{padding:12px 16px;border-top:1px solid var(--border-subtle);display:flex;justify-content:flex-end}.settings-reset-btn{display:flex;align-items:center;gap:6px;padding:8px 14px;background:transparent;border:1px solid var(--border-subtle);border-radius:8px;font-size:.75rem;font-weight:500;color:var(--text-muted);cursor:pointer;transition:all .15s ease}.settings-reset-btn:hover{background:var(--bg-hover);border-color:var(--text-muted);color:var(--text-main)}.settings-reset-btn i{font-size:.7rem}.metrics-card.edit-mode{border:2px solid var(--accent-soft)}.metrics-card.edit-mode .metrics-card-header h3:after{content:"Editable";margin-left:8px;font-size:.6rem;font-weight:600;color:var(--accent);background:var(--accent-soft);padding:2px 8px;border-radius:4px;text-transform:uppercase;letter-spacing:.5px}.settings-section-title{display:flex;align-items:center;justify-content:space-between;font-size:.7rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.scale-mode-toggle{margin-top:8px;margin-bottom:12px;width:fit-content}.scale-mode-toggle .toggle-btn{padding:6px 14px;font-size:.7rem}.y-axis-inputs.disabled{opacity:.5;pointer-events:none}.y-axis-inputs.disabled .settings-input{background:var(--bg-hover)}.settings-subsection{margin-top:8px}.settings-label-small{display:block;font-size:.65rem;font-weight:500;color:var(--text-muted);margin-bottom:6px}.density-toggle{width:100%}.density-toggle .view-toggle-btn{flex:1;padding:6px 10px;font-size:.7rem;text-align:center;justify-content:center}.palette-options{display:flex;flex-direction:column;gap:6px}.palette-option{display:flex;align-items:center;gap:10px;padding:8px 10px;background:var(--bg-body);border:1px solid var(--border-subtle);border-radius:8px;cursor:pointer;transition:all .15s ease}.palette-option:hover{border-color:var(--accent)}.palette-option.active{background:var(--accent-soft);border-color:var(--accent)}.palette-preview{display:flex;gap:3px}.palette-dot{width:12px;height:12px;border-radius:3px}.palette-label{font-size:.75rem;font-weight:500;color:var(--text-main)}.palette-option.active .palette-label{color:var(--accent)}.graph-type-options{display:flex;gap:8px;flex-wrap:wrap}.graph-type-option{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;padding:10px 16px;background:var(--bg-surface);border:2px solid var(--border-subtle);border-radius:24px;cursor:pointer;transition:all .15s ease;font-size:13px;font-weight:500;color:var(--text-muted)}.graph-type-option:hover{background:var(--bg-body);border-color:var(--border-medium);color:var(--text-main)}.graph-type-option.active{background:#fff;border-color:#b0b0b3;color:var(--text-main)}.graph-type-option.active:before{content:"\f00c";font-family:"Font Awesome 6 Free","Font Awesome 5 Free";font-weight:900;font-size:14px;color:#34c759;-webkit-text-stroke:.5px #34C759}.graph-type-option i{font-size:14px;color:var(--text-muted);transition:color .15s ease}.graph-type-option:hover i,.graph-type-option.active i{color:var(--accent)}.graph-type-option span{font-size:.75rem;font-weight:600;color:inherit;text-transform:uppercase;letter-spacing:.3px}.graph-type-option.active span{color:var(--accent)}body.dark-mode .graph-type-option{background:#ffffff0d;border-color:#ffffff1a}body.dark-mode .graph-type-option:hover{background:#ffffff14;border-color:#fff3}body.dark-mode .graph-type-option.active{background:#fffffff2;border-color:#b0b0b3;color:#1c1c1e}.settings-select{width:100%;padding:10px 40px 10px 14px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:10px;font-size:.85rem;font-weight:500;color:var(--text-main);cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238E8E93' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;box-shadow:0 1px 2px #0000000a}.settings-select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft),0 1px 2px #0000000a}.settings-select:hover{border-color:var(--accent);background-color:var(--bg-body)}.settings-select option{padding:12px 16px;background:var(--bg-surface);color:var(--text-main);font-size:.85rem;font-weight:500}.settings-select option:hover,.settings-select option:focus{background:var(--accent-soft);color:var(--accent)}.settings-select option:checked{background:var(--accent);color:#fff}.graph-settings-panel .settings-select{background:var(--bg-body);border-radius:8px;padding:8px 12px;font-size:.8rem}.graph-settings-panel .settings-select option{padding:10px 14px;font-size:.8rem}.settings-hint{font-size:.65rem;color:var(--text-muted);margin-top:6px;line-height:1.4;opacity:.8}[data-theme=dark] .graph-settings-panel{background:#1e1e23f2}[data-theme=dark] .settings-input{background:#0000004d}[data-theme=dark] .color-option.active{border-color:#fff;box-shadow:0 0 0 2px #1e1e23f2,0 0 0 4px #fff}[data-theme=dark] .settings-select option{background:var(--bg-elevated);color:var(--text-main)}[data-theme=dark] .settings-select option:checked{background:var(--accent);color:#fff}[data-theme=dark] .graph-type-option,[data-theme=dark] .palette-option,[data-theme=dark] .settings-select{background:#0000004d}.line-chart-v2{position:relative;display:grid;grid-template-columns:1fr;gap:0}.line-chart-v2 svg{width:100%;height:auto;display:block;overflow:visible}.line-chart-grid line{stroke:var(--border-light);stroke-width:.5;stroke-dasharray:0;opacity:.4}.line-chart-y-labels text{font-size:9px;fill:var(--text-muted);font-weight:500;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Roboto,sans-serif;letter-spacing:.2px}.line-chart-y-labels.secondary text{fill:#34c759}.line-chart-x-labels text{font-size:9px;fill:var(--text-muted);font-weight:500;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Roboto,sans-serif;text-transform:uppercase;letter-spacing:.3px}.line-chart-segment-bar{fill:var(--border-strong, rgba(0,0,0,.18))}.line-chart-area-v2{opacity:1;transition:opacity .3s ease}.line-chart-stroke{fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 2px 6px rgba(131,58,180,.35))}.line-chart-stroke.secondary{stroke-width:1.5;stroke-dasharray:6 3;opacity:.85}.line-chart-dots .line-dot{opacity:0;transition:all .2s ease;cursor:pointer;pointer-events:all}.line-chart-v2:hover .line-dot{opacity:1}.line-dot:hover{r:5;filter:drop-shadow(0 2px 8px rgba(0,112,243,.4))}.line-dot.secondary:hover{r:4;filter:drop-shadow(0 2px 8px rgba(52,199,89,.4))}.line-chart-v2,.line-dot[data-tooltip]{position:relative}.line-chart-tooltip{position:absolute;background:#fff;border:1px solid var(--border-subtle);border-radius:8px;padding:6px 10px;font-size:.75rem;font-weight:500;color:var(--text-primary);white-space:nowrap;pointer-events:none;z-index:100;box-shadow:0 4px 12px #00000026;transform:translate(-50%,-100%);margin-top:-8px;opacity:0;transition:opacity .15s ease;backdrop-filter:none;-webkit-backdrop-filter:none}body.dark-mode .line-chart-tooltip{background:#1c1c1e}.line-chart-tooltip.visible{opacity:1}.line-chart-legend{display:flex;justify-content:center;gap:20px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border-subtle)}.legend-item{display:flex;align-items:center;gap:6px;font-size:.75rem;color:var(--text-muted);font-weight:500}.legend-dot{width:8px;height:8px;border-radius:50%}body.dark-mode .line-chart-grid line{stroke:var(--border-card);opacity:.2}body.dark-mode .line-chart-y-labels text,body.dark-mode .line-chart-x-labels text{fill:var(--text-muted)}body.dark-mode .line-chart-stroke{filter:drop-shadow(0 1px 4px rgba(0,0,0,.3))}body.dark-mode .line-dot:hover{filter:drop-shadow(0 2px 10px rgba(0,122,255,.5))}.metrics-line-chart{position:relative;padding-bottom:24px}.metrics-line-chart svg{width:100%;height:100px;overflow:visible}.line-chart-area{opacity:1}.line-chart-line{stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 2px 4px rgba(0,112,243,.2))}.line-chart-dot{opacity:0;transition:all .2s ease;cursor:pointer}.metrics-line-chart:hover .line-chart-dot{opacity:1}.line-chart-dot:hover{r:4;filter:drop-shadow(0 2px 6px rgba(0,112,243,.4))}.line-chart-labels{position:relative;height:20px;margin-top:8px}.line-chart-label{position:absolute;transform:translate(-50%);font-size:.65rem;color:var(--text-muted);white-space:nowrap}.metrics-pie-chart{display:flex;align-items:center;gap:24px}.metrics-pie-chart svg{width:120px;height:120px;flex-shrink:0}.pie-segment{opacity:0;animation:pieSegmentIn .5s cubic-bezier(.4,0,.2,1) forwards;cursor:pointer;transition:filter .25s ease,opacity .2s ease,transform .25s cubic-bezier(.34,1.56,.64,1);transform-origin:center;transform-box:view-box}@keyframes pieSegmentIn{0%{opacity:0}to{opacity:1}}.pie-segment:hover{filter:brightness(1.1)}.metrics-pie-chart:has(.pie-segment:hover) .pie-segment:not(:hover){opacity:.6;filter:brightness(.92)}.pie-total{font-size:.9rem;font-weight:700;fill:var(--text-main)}.pie-legend-item{display:flex;align-items:center;gap:8px;padding:3px 6px;border-radius:6px;cursor:pointer;transition:background .15s ease;outline:none!important;border:none!important;box-shadow:none!important}.pie-legend-item:hover,.pie-legend-item:focus,.pie-legend-item:focus-visible,.pie-legend-item.highlighted{background:var(--bg-hover, rgba(0,0,0,.04));outline:none!important;border:none!important;box-shadow:none!important}.pie-legend-color{width:8px;height:8px;border-radius:50%;flex-shrink:0}.pie-legend-label{flex:1;font-size:.75rem;color:var(--text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pie-legend-value{font-size:.75rem;font-weight:600;color:var(--text-muted);font-feature-settings:"tnum" on}.pie-legend-more{font-size:.75rem;color:var(--text-muted);font-style:italic;padding-top:4px}.pie-legend-extra{display:none;flex-direction:column;gap:6px}.pie-legend[data-expanded=true] .pie-legend-extra{display:flex}.pie-legend{position:relative;max-height:400px;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;flex:1;display:flex;flex-direction:column;gap:6px;min-width:0}.pie-legend::-webkit-scrollbar{width:4px}.pie-legend::-webkit-scrollbar-thumb{background:var(--border-medium);border-radius:2px}.pie-legend-toggle{position:sticky;top:0;left:0;z-index:5;display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:500;color:var(--text-muted);cursor:pointer;padding:4px 8px;background:#8e8e9326;border-radius:10px;transition:all .15s ease;margin:4px auto 4px 0;box-shadow:0 0 8px 6px #fff,0 0 16px 10px #fff}.pie-legend-toggle:hover{background:#8e8e9340;color:var(--text-main)}.pie-legend[data-expanded=true] .pie-legend-toggle-text{display:none}.pie-legend[data-expanded=true] .pie-legend-toggle:after{content:"Less"}body.dark-mode .pie-legend-toggle{background:#ffffff1f;box-shadow:0 0 8px 6px var(--bg-surface),0 0 16px 10px var(--bg-surface)}body.dark-mode .pie-legend-toggle:hover{background:#ffffff2e}.graph-content{transition:opacity .15s ease,transform .15s ease}body.dark-mode .graph-menu-dropdown{background:#28282df2;border-color:#ffffff1a;box-shadow:0 8px 32px #0006}body.dark-mode .graph-menu-btn:hover,body.dark-mode .graph-menu-option:hover{background:#ffffff14}body.dark-mode .graph-menu-option.active{background:#0a84ff33}body.dark-mode .line-chart-line{filter:drop-shadow(0 2px 4px rgba(10,132,255,.3))}body.dark-mode .line-chart-stroke{filter:drop-shadow(0 2px 4px rgba(10,132,255,.35))}body.dark-mode .line-chart-grid line{stroke:#ffffff14}body.dark-mode .bar-chart-v3-grid-line{background:#ffffff1a}body.dark-mode .bar-track-clean{background:#ffffff14}@media(max-width:768px){.metrics-pie-chart{flex-direction:column;align-items:flex-start}.metrics-pie-chart svg{margin:0 auto}.pie-legend{width:100%;flex-direction:row;flex-wrap:wrap;gap:12px}.pie-legend-item{flex:0 0 auto}.line-chart-v2 svg{min-height:120px}.bar-chart-label{width:70px;font-size:.75rem}}@media(max-width:480px){.graph-menu-dropdown{min-width:140px}.graph-menu-option{padding:8px 10px;font-size:.8rem}.line-chart-v2 svg{min-height:100px}.line-chart-y-labels text,.line-chart-x-labels text{font-size:9px}.bar-label-clean{width:70px;min-width:70px;font-size:.7rem}.bar-value-clean{width:40px;min-width:40px;font-size:.75rem}.line-chart-legend{gap:12px}.legend-item{font-size:.7rem}.metrics-charts-row{grid-template-columns:1fr}}.metrics-no-access{text-align:center;padding:100px 32px;background:var(--glass-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:24px}.metrics-no-access-icon{width:72px;height:72px;margin:0 auto 24px;background:var(--bg-body);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:28px;border:2px solid var(--border-subtle)}.metrics-no-access h3{font-size:1.2rem;font-weight:600;color:var(--text-main);margin:0 0 12px;letter-spacing:-.02em}.metrics-no-access p{color:var(--text-muted);max-width:360px;margin:0 auto;line-height:1.6;font-size:.9rem}@media(max-width:768px){.metrics-stats-row{grid-template-columns:repeat(2,1fr);gap:12px}.metrics-stat-card{padding:16px 18px;border-radius:14px}.metrics-stat-card-large{grid-column:1 / -1}.metrics-stat-value{font-size:1.5rem}.metrics-stat-icon{width:40px;height:40px;font-size:16px}.bar-label-clean{width:80px;min-width:80px;font-size:.75rem}.metrics-trend-chart{height:80px}.metrics-progress-ring-container{width:56px;height:56px}.progress-ring-text{font-size:.85rem}}@media(max-width:480px){.metrics-stats-row{grid-template-columns:1fr}.metrics-stat-card{padding:14px 16px}.bar-chart-clean{gap:10px}.bar-label-clean{width:70px;min-width:70px}.metrics-trend-chart{height:64px;gap:4px}}body.dark-mode .metrics-stat-card{background:#1c1c1ed9;border-color:#ffffff14}body.dark-mode .metrics-stat-card:hover{border-color:#0a84ff4d;box-shadow:0 8px 24px #0006}body.dark-mode .metrics-bar-container{background:#ffffff0f}body.dark-mode .metrics-trend-bar{background:linear-gradient(180deg,var(--accent) 0%,rgba(10,132,255,.4) 100%)}body.dark-mode .metrics-no-access{background:#1c1c1ed9;border-color:#ffffff14}body.dark-mode .metrics-no-access-icon{background:#ffffff0d;border-color:#ffffff1a}.radio-group-vertical{display:flex;flex-direction:column;gap:12px;margin-top:12px}.radio-option{display:flex;align-items:flex-start;gap:12px;padding:16px;background:var(--bg-main);border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.radio-option:hover{background:var(--bg-hover);border-color:var(--accent)}.radio-option input[type=radio]{margin-top:3px;width:18px;height:18px;accent-color:var(--accent);cursor:pointer;flex-shrink:0}.radio-option-content{display:flex;flex-direction:column;gap:4px}.radio-option-title{font-weight:600;color:var(--text-main);font-size:.95rem}.radio-option-desc{font-size:.85rem;color:var(--text-muted);line-height:1.4}.radio-option:has(input:checked){border-color:var(--accent);background:#0078d40d}body.dark-mode .radio-option{background:#ffffff08;border-color:#ffffff1a}body.dark-mode .radio-option:hover{background:#ffffff0f}body.dark-mode .radio-option:has(input:checked){background:#0078d426;border-color:var(--accent)}.metrics-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:100px 24px;gap:24px}.metrics-loading-spinner{width:40px;height:40px;border:3px solid var(--border-subtle);border-top-color:var(--accent);border-radius:50%;animation:metricsSpinner .7s linear infinite}@keyframes metricsSpinner{to{transform:rotate(360deg)}}.metrics-loading-text{font-size:.9rem;color:var(--text-muted);font-weight:500}.metrics-empty-state{text-align:center;padding:48px 28px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:18px;margin:16px 0;animation:metricsEmptyFadeIn .4s ease-out forwards;opacity:0}@keyframes metricsEmptyFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.metrics-empty-icon{width:56px;height:56px;margin:0 auto 18px;background:var(--accent-soft);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--accent);font-size:22px}.metrics-empty-title{font-size:1rem;font-weight:600;color:var(--text-main);margin:0 0 8px;letter-spacing:-.01em}.metrics-empty-desc{font-size:.85rem;color:var(--text-muted);max-width:280px;margin:0 auto;line-height:1.5}body.dark-mode .metrics-empty-state{background:#1c1c1eb3;border-color:#ffffff14}body.dark-mode .metrics-empty-icon{background:#0a84ff26}.metrics-controls{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-bottom:24px;padding:0}.metrics-time-filter{display:flex;align-items:center;gap:10px}.metrics-time-filter-label{font-size:.8rem;color:var(--text-muted);font-weight:500}.metrics-time-dropdown{position:relative;display:inline-block}.metrics-time-dropdown-trigger{display:flex;align-items:center;gap:8px;padding:8px 14px;font-size:.85rem;font-weight:500;border:1px solid var(--border-subtle);border-radius:99px;background:var(--bg-surface);color:var(--text-main);cursor:pointer;min-width:130px;transition:all .2s ease}.metrics-time-dropdown-trigger:hover{border-color:var(--accent);background-color:var(--bg-body)}.metrics-time-dropdown.open .metrics-time-dropdown-trigger{border-color:var(--accent);box-shadow:0 0 0 3px #0070f31a}.metrics-time-dropdown-value{flex:1;text-align:left}.metrics-time-dropdown-arrow{font-size:10px;color:var(--text-muted);transition:transform .2s ease}.metrics-time-dropdown.open .metrics-time-dropdown-arrow{transform:rotate(180deg)}.metrics-time-dropdown-menu{position:absolute;top:calc(100% + 6px);left:0;min-width:160px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;box-shadow:0 8px 24px #0000001f;z-index:1000;opacity:0;visibility:hidden;transform:translateY(-8px);transition:all .2s cubic-bezier(.4,0,.2,1);overflow:hidden}.metrics-time-dropdown.open .metrics-time-dropdown-menu{opacity:1;visibility:visible;transform:translateY(0)}.metrics-time-dropdown-option{display:flex;align-items:center;gap:10px;padding:10px 14px;font-size:.85rem;color:var(--text-main);cursor:pointer;transition:background-color .15s ease}.metrics-time-dropdown-option:hover{background:var(--bg-hover)}.metrics-time-dropdown-option i{font-size:10px;color:var(--accent);opacity:0;transition:opacity .15s ease}.metrics-time-dropdown-option.selected i{opacity:1}.metrics-time-dropdown-option.selected{background:var(--accent-soft);color:var(--accent);font-weight:500}body.dark-mode .metrics-time-dropdown-trigger{background-color:#1c1c1ed9;border-color:#ffffff1a}body.dark-mode .metrics-time-dropdown-trigger:hover{background-color:#262628f2;border-color:var(--accent)}body.dark-mode .metrics-time-dropdown-menu{background-color:#1c1c1ef2;border-color:#ffffff1a;box-shadow:0 8px 24px #0000004d}body.dark-mode .metrics-time-dropdown-option:hover{background:#ffffff14}body.dark-mode .metrics-time-dropdown-option.selected{background:#007aff33}.metrics-stat-card[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%) translateY(4px);padding:8px 14px;background:var(--text-main);color:var(--bg-surface);font-size:.75rem;font-weight:500;border-radius:10px;white-space:nowrap;opacity:0;visibility:hidden;transition:all .2s cubic-bezier(.4,0,.2,1);z-index:100;pointer-events:none;box-shadow:0 4px 16px #00000026}.metrics-stat-card[data-tooltip]:before{content:"";position:absolute;bottom:calc(100% + 4px);left:50%;transform:translate(-50%) translateY(4px);border:5px solid transparent;border-top-color:var(--text-main);opacity:0;visibility:hidden;transition:all .2s cubic-bezier(.4,0,.2,1);z-index:100}.metrics-stat-card[data-tooltip]:hover:after,.metrics-stat-card[data-tooltip]:hover:before{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}body.dark-mode .metrics-stat-card[data-tooltip]:after{background:#f0f0f0;color:#1a1a1a}body.dark-mode .metrics-stat-card[data-tooltip]:before{border-top-color:#f0f0f0}@media(max-width:768px){.metrics-controls{flex-direction:row;justify-content:flex-end}.metrics-stat-card[data-tooltip]:after{font-size:.7rem;padding:6px 10px;max-width:180px;white-space:normal;text-align:center}}@media(max-width:480px){.metrics-loading{padding:60px 16px}.metrics-empty-state{padding:36px 16px}.metrics-empty-icon{width:44px;height:44px;font-size:18px}.metrics-empty-title{font-size:.95rem}.metrics-empty-desc{font-size:.8rem}}.metrics-edit-btn-header{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:99px;color:var(--text-muted);font-size:.8rem;font-weight:500;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1)}.metrics-edit-btn-header:hover{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.metrics-edit-btn-header.active{background:var(--accent);border-color:var(--accent);color:#fff}.metrics-edit-btn-header i{font-size:.75rem}.metrics-edit-badge{display:inline-block;padding:2px 8px;background:var(--accent);color:#fff;font-size:.65rem;font-weight:600;border-radius:99px;text-transform:uppercase;letter-spacing:.3px;margin-left:8px;animation:metricsBadgePulse 2s ease-in-out infinite}@keyframes metricsBadgePulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(.98)}}.metrics-section-title-custom{margin-top:20px}.metrics-section-title-custom i{background:#af52de1f;color:#af52de}.custom-metric-card{position:relative;transition:all .25s cubic-bezier(.4,0,.2,1)}.custom-metric-card.edit-mode{border:2px dashed var(--accent);cursor:default}.custom-metric-card.edit-mode:hover{transform:none;box-shadow:0 4px 16px #0000000a}.metric-edit-overlay{position:absolute;top:10px;right:10px;display:flex;gap:4px;z-index:10}.metric-edit-actions{display:flex;gap:4px}.metric-edit-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:8px;color:var(--text-muted);cursor:pointer;transition:all .2s ease;font-size:.7rem}.metric-edit-btn:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent);color:var(--accent);transform:scale(1.05)}.metric-edit-btn:disabled{opacity:.3;cursor:not-allowed}.metric-edit-btn.danger:hover:not(:disabled){background:#ff3b301a;border-color:#ff3b30;color:#ff3b30}.metric-edit-btn.hidden-state{background:#ff95001a;border-color:#ff95004d;color:#ff9500}.metric-edit-btn.hidden-state:hover:not(:disabled){background:#ff950033;border-color:#ff9500}.custom-metric-card.metric-hidden,.metrics-card.metric-hidden{opacity:.5;filter:grayscale(.3);position:relative}.custom-metric-card.metric-hidden:before,.metrics-card.metric-hidden:before{content:"Hidden";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#000000b3;color:#fff;padding:4px 10px;border-radius:6px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;z-index:5;pointer-events:none}.metric-graph-hide-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:8px;color:var(--text-muted);cursor:pointer;transition:all .2s ease;font-size:.7rem}.metric-graph-hide-btn:hover{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);transform:scale(1.05)}.metric-graph-hide-btn.hidden-state{background:#ff95001a;border-color:#ff95004d;color:#ff9500}.metric-graph-hide-btn.hidden-state:hover{background:#ff950033;border-color:#ff9500}.metric-display-toggle{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:#0a84ff1a;border:1px solid rgba(10,132,255,.3);border-radius:8px;color:#0a84ff;cursor:pointer;transition:all .2s ease;font-size:.7rem}.metric-display-toggle:hover{background:#0a84ff33;border-color:#0a84ff;transform:scale(1.05)}.metrics-add-metric-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:18px 24px;margin-top:20px;background:var(--bg-surface);border:2px dashed var(--border-subtle);border-radius:18px;color:var(--text-muted);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1)}.metrics-add-metric-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft);transform:translateY(-2px)}.metrics-add-metric-btn i{font-size:1rem}.add-metric-list{display:flex;flex-direction:column;gap:10px}.add-metric-option{display:flex;align-items:center;gap:14px;padding:16px 18px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:14px;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1)}.add-metric-option:hover{background:var(--accent-soft);border-color:var(--accent);transform:translate(4px)}.add-metric-option-icon{width:42px;height:42px;display:flex;align-items:center;justify-content:center;background:var(--accent-soft);border-radius:12px;color:var(--accent);font-size:1rem;flex-shrink:0;transition:all .2s ease}.add-metric-option:hover .add-metric-option-icon{background:var(--accent);color:#fff;transform:scale(1.05)}.add-metric-option-content{flex:1;min-width:0}.add-metric-option-name{font-weight:600;color:var(--text-main);font-size:.9rem;margin-bottom:3px;letter-spacing:-.01em}.add-metric-option-desc{font-size:.75rem;color:var(--text-muted);line-height:1.4}.add-metric-option-action{width:30px;height:30px;display:flex;align-items:center;justify-content:center;background:var(--bg-body);border:1px solid var(--border-subtle);border-radius:50%;color:var(--text-muted);font-size:.8rem;transition:all .2s ease;flex-shrink:0}.add-metric-option:hover .add-metric-option-action{background:var(--accent);border-color:var(--accent);color:#fff}.custom-metrics-empty{border-style:dashed;border-color:var(--border-subtle)}.custom-metrics-empty:hover{border-color:var(--accent)}.custom-metrics-row{gap:14px}body.metrics-edit-mode .custom-metrics-row .metrics-stat-card[data-metric-id],body.metrics-edit-mode .metrics-charts-row .metrics-drag-item[data-metric-id]{cursor:grab;touch-action:none}.metrics-drag-placeholder{border:2px dashed var(--accent);border-radius:16px;background:var(--accent-soft);opacity:.5;flex-shrink:0;transition:all .15s ease;box-sizing:border-box}.metrics-drag-preview{border-radius:16px;cursor:grabbing;will-change:transform;backface-visibility:hidden;filter:brightness(1.03)}body.metrics-dragging{cursor:grabbing!important;user-select:none;-webkit-user-select:none}body.metrics-dragging *{cursor:grabbing!important}.metrics-drag-item{display:contents}.metrics-charts-row .metrics-drag-item{display:block;flex:1;min-width:0}.metrics-charts-row .metrics-drag-item .metrics-card{height:100%}body.dark-mode .metrics-edit-btn-header{background:#ffffff0d;border-color:#ffffff1a}body.dark-mode .metrics-edit-btn-header:hover{background:#0a84ff26}body.dark-mode .metrics-edit-btn-header.active{background:var(--accent);border-color:var(--accent)}body.dark-mode .metric-edit-btn{background:#ffffff0d;border-color:#ffffff1a}body.dark-mode .metric-edit-btn:hover:not(:disabled){background:#0a84ff33}body.dark-mode .metrics-add-metric-btn{background:#ffffff05;border-color:#ffffff1f}body.dark-mode .metrics-add-metric-btn:hover{background:#0a84ff1a}body.dark-mode .add-metric-option{background:#ffffff08;border-color:#ffffff14}body.dark-mode .add-metric-option:hover{background:#0a84ff1f}body.dark-mode .add-metric-option-action{background:#ffffff0d;border-color:#ffffff1a}@media(max-width:768px){.metrics-edit-btn-header span{display:none}.metrics-edit-btn-header{padding:10px;width:40px;height:40px;justify-content:center}.metrics-edit-btn-header i,.metrics-edit-btn-header svg{margin:0}.metric-edit-actions{flex-direction:column}.metrics-add-metric-btn{padding:14px 16px;font-size:.85rem}}@media(max-width:480px){.add-metric-option{padding:12px}.add-metric-option-icon{width:36px;height:36px;font-size:.9rem}.add-metric-option-name{font-size:.85rem}}@media(max-width:768px){.spreadsheet-panel{position:fixed;top:0;left:0;right:0;bottom:var(--nav-safe-bottom);z-index:900;border-radius:0}.spreadsheet-panel-header{padding:12px 16px;gap:12px;flex-wrap:wrap}.panel-header-left{flex:1;gap:8px}.spreadsheet-title-input{font-size:16px;max-width:150px}.panel-header-right{gap:8px}.back-btn,.icon-btn{min-width:auto;min-height:auto}.batch-actions-bar{flex-wrap:wrap;padding:12px 16px;gap:12px}.batch-buttons{flex-wrap:wrap;gap:8px;width:100%;justify-content:space-between}.batch-btn{flex:1;min-height:44px;font-size:13px}.column-toggle-sidebar{position:fixed;top:60px;bottom:var(--nav-safe-bottom);left:0;right:auto;width:280px;max-width:80vw;border-radius:0 16px 16px 0;transform:translate(-100%);transition:transform .3s cubic-bezier(.25,1,.5,1);z-index:10000;display:block!important;background:var(--bg-surface);box-shadow:2px 0 10px #0003;margin-left:0!important}body.dark-mode .column-toggle-sidebar{box-shadow:2px 0 10px #0009}.column-toggle-sidebar:not(.collapsed){transform:translate(0)}.column-toggle-sidebar.collapsed{margin-left:0;width:280px;opacity:1;transform:translate(-100%)}.spreadsheet-table-area{padding:0;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-container{border-radius:0;border-left:none;border-right:none;overflow-x:auto}.spreadsheet-table{min-width:600px}.spreadsheet-table td,.spreadsheet-table th{padding:12px;font-size:13px}.spreadsheet-empty{padding:48px 24px;border-radius:0;margin:0}.team-section{padding:0}.team-header{border-radius:0;margin:0;padding:16px}.team-list{padding:0 16px 16px}.teammate-card{padding:16px;min-height:72px}.teammate-avatar{width:48px;height:48px;font-size:14px}#activity{padding:0}#activity .section-header{padding:16px;margin:0 0 16px;background:var(--bg-surface)}.activity-feed{border-radius:0;margin:0;padding:16px;border-left:none;border-right:none}.activity-item{border-radius:12px;margin:0 0 12px;padding:16px}#chat{padding:0}.chat-container{border-radius:0;border:none;max-height:calc(100vh - 160px);min-height:calc(100vh - 200px)}.chat-messages{padding:12px 16px}.message{gap:10px}.message-avatar{width:32px;height:32px;font-size:11px}.message-text{max-width:calc(100% - 50px);padding:10px 14px}.chat-input-container{padding:12px 16px;gap:10px}.chat-input{padding:12px 16px;font-size:16px}.send-btn{width:48px;height:48px}.mention-dropdown{left:16px;right:16px;bottom:calc(100% + 4px);max-height:200px}#calendar{padding:0}#calendar .section-header{padding:16px;margin:0;flex-wrap:wrap;gap:12px}.calendar-container{border-radius:0;border-left:none;border-right:none;margin:0;padding:12px;overflow:hidden}.calendar-header{padding:0;margin-bottom:12px;flex-wrap:nowrap;gap:8px}.calendar-title{font-size:.95rem}.calendar-title span{display:none}.calendar-view-toggle{order:2;width:auto;padding:2px}.view-toggle-btn{padding:8px 16px;font-size:13px;border-radius:999px;min-height:auto;min-width:auto}.calendar-grid{overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--border-subtle) transparent;padding-bottom:8px;margin:0;width:100%}.calendar-container{overflow-x:auto;overflow-y:visible}.calendar-grid::-webkit-scrollbar{height:4px}.calendar-grid::-webkit-scrollbar-track{background:transparent}.calendar-grid::-webkit-scrollbar-thumb{background:var(--border-subtle);border-radius:2px}.calendar-grid:has(.calendar-day-header){min-width:560px;gap:4px}.calendar-day-header{padding:8px 4px;font-size:11px;min-width:75px}.calendar-day{font-size:12px;min-height:80px;min-width:75px;padding:8px}.day-number{font-size:13px}.calendar-day.today .day-number{width:24px;height:24px;font-size:12px}.month-events{gap:2px;margin-top:4px}.month-event-item{padding:3px 6px;font-size:9px;border-left-width:2px}.month-event-time{font-size:8px}.month-event-title{font-size:9px}.month-event-more{font-size:8px;padding:2px 4px}.cal-task-dot{width:14px;height:14px}.cal-task-dot-icon{width:8px;height:8px}.cal-task-lock{width:8px;height:8px;font-size:5px}.calendar-task-dots{gap:2px}.week-day-number{font-size:16px}.week-day-header.today .week-day-number{width:28px;height:28px;font-size:14px}.week-time-slot{font-size:9px;padding:0 4px;height:50px}.week-time-cell{height:50px}.week-event-block{padding:4px 6px;font-size:10px;left:2px;right:2px;border-left-width:2px}.week-event-title{font-size:10px;-webkit-line-clamp:1;line-clamp:1}.week-event-time{font-size:9px}.calendar-container:after{content:"";position:absolute;top:0;right:0;bottom:0;width:30px;background:linear-gradient(to left,var(--bg-surface),transparent);pointer-events:none;opacity:.8}.calendar-container{position:relative}#settings-section{padding:0}#settings-section .section-header{padding:16px;margin:0 0 8px}.settings-container{padding:0}.settings-card{border-radius:0;border-left:none;border-right:none;margin:0 0 8px}.settings-card-header,.settings-card-body{padding:16px}.avatar-color-picker{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;justify-items:center}.color-option{width:44px;height:44px}#metrics-section{padding:0}#metrics-section .section-header{padding:16px;margin:0 0 16px}.metrics-layout{padding:0 16px 16px}.metrics-stats-row{padding:0;gap:12px}.metrics-section-title{padding:0;margin-bottom:12px}.form-group{margin-bottom:16px}.form-group label{font-size:14px;margin-bottom:8px}.form-row{grid-template-columns:1fr;gap:16px}.notifications-dropdown{position:fixed!important;inset:auto 0 0!important;width:100%!important;max-width:100%!important;max-height:70vh!important;border-radius:20px 20px 0 0!important;border:none!important;border-top:1px solid var(--border-subtle)!important;box-shadow:0 -8px 32px #0003!important;animation:slideUpMobile .25s ease-out!important}@keyframes slideUpMobile{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.notifications-list{max-height:calc(70vh - 80px);overflow-y:auto;-webkit-overflow-scrolling:touch}.notification-item{padding:16px}.notifications-header{padding:20px;border-bottom:1px solid var(--border-subtle)}}@media(max-width:400px){.nav-item{padding:8px 4px;max-width:50px}.nav-item .icon{width:20px;height:20px}.section-header h1{font-size:20px}.teammate-card{padding:12px;gap:10px}.teammate-avatar{width:40px;height:40px}.teammate-name{font-size:13px}.btn-primary,.btn-secondary{padding:10px 16px;font-size:13px}.activity-item{padding:12px}.activity-icon{width:36px;height:36px;font-size:16px}}@media(max-width:900px){.notifications-dropdown{position:fixed!important;top:64px!important;left:8vw!important;right:8vw!important;bottom:auto!important;width:auto!important;max-width:84vw!important;max-height:calc(100vh - 88px)!important;overflow-y:auto!important;border-radius:14px!important;box-shadow:0 10px 28px #0003!important;transform:none!important;display:none!important;z-index:10001!important}.notifications-dropdown.active,.notifications-dropdown[style*="display:block"],.notifications-dropdown[style*="display: block"]{display:flex!important}.notifications-header{position:sticky;top:0;background:var(--bg-surface);z-index:2;border-bottom:1px solid var(--border-subtle);padding:12px 16px!important}.notifications-header h3{font-size:15px!important;margin:0!important}.mark-read-btn{padding:4px 8px!important;font-size:11px!important;border-radius:16px!important}.notifications-list{max-height:calc(min(70vh,520px) - 80px);overflow-y:auto;-webkit-overflow-scrolling:touch}.settings-dropdown{position:fixed!important;top:64px!important;left:8vw!important;right:8vw!important;bottom:auto!important;width:auto!important;max-width:84vw!important;max-height:calc(100vh - 88px)!important;overflow-y:auto!important;border-radius:14px!important;box-shadow:0 10px 28px #0003!important;transform:none!important;display:none!important}.settings-dropdown.active,.settings-dropdown[style*="display:block"],.settings-dropdown[style*="display: block"]{display:block!important}}.spreadsheet-context-menu,.doc-context-menu{position:fixed;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:10px;box-shadow:0 8px 32px #00000026,0 2px 8px #00000014;padding:6px;min-width:160px;z-index:10000;opacity:0;transform:scale(.95) translateY(-4px);transform-origin:top left;transition:opacity .15s ease,transform .15s ease;pointer-events:none}.spreadsheet-context-menu.visible,.doc-context-menu.visible{opacity:1;transform:scale(1) translateY(0);pointer-events:auto}.context-menu-item{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:6px;font-size:13px;font-weight:500;color:var(--text-main);cursor:pointer;transition:background .15s ease}.context-menu-item:hover{background:var(--accent-soft);color:var(--accent)}.context-menu-item:hover i{color:var(--accent);opacity:1}.context-menu-item i{width:16px;text-align:center;font-size:13px;opacity:.7;transition:opacity .15s ease,color .15s ease}.context-menu-item.danger{color:#ff3b30}.context-menu-item.danger:hover{background:#ff3b301a}.context-menu-item.danger:hover i{color:#ff3b30;opacity:1}.project-context-menu .context-menu-item.danger:hover,.project-context-menu .context-menu-item.danger:hover i{color:#ff3b30}.context-menu-divider{height:1px;background:var(--border-subtle);margin:4px 0}body.dark-mode .spreadsheet-context-menu,body.dark-mode .doc-context-menu,body.dark-mode .project-context-menu{background:#2c2c2e;border-color:#ffffff1a;box-shadow:0 8px 32px #0006}body.dark-mode .context-menu-item:hover{background:var(--accent-soft);color:var(--accent)}body.dark-mode .context-menu-item:hover i{color:var(--accent);opacity:1}body.dark-mode .context-menu-item.danger:hover{background:#ff3b3026}.selection-context-menu{min-width:220px}.selection-context-menu .context-menu-item span:last-child{opacity:.5}body.dark-mode .selection-context-menu{background:#2c2c2e;border-color:#ffffff1a;box-shadow:0 8px 32px #0006}body.dark-mode .context-menu-item.danger:hover i{color:#ff3b30;opacity:1}.task-progress-control{display:flex;align-items:center;gap:12px}.task-progress-track{flex:1;height:6px;background:var(--bg-surface-soft);border-radius:3px;overflow:hidden}.task-progress-fill{height:100%;width:0%;background:var(--accent);border-radius:3px;transition:width .2s ease}.task-progress-value{display:flex;align-items:center;gap:2px;min-width:56px}.task-progress-value input{width:40px;padding:6px 8px;font-size:13px;font-weight:600;text-align:right;border:1px solid var(--border-subtle);border-radius:6px;background:var(--bg-surface);color:var(--text-main);transition:border-color .15s ease;-moz-appearance:textfield;appearance:textfield}.task-progress-value input::-webkit-inner-spin-button,.task-progress-value input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.task-progress-value input:focus{outline:none;border-color:var(--accent)}.task-progress-value span{font-size:13px;font-weight:500;color:var(--text-muted)}body.dark-mode .task-progress-track{background:#ffffff14}body.dark-mode .task-progress-value input{background:#1c1c1e;border-color:#ffffff1a}.unified-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#0006;z-index:100000;justify-content:center;align-items:center;padding:20px;box-sizing:border-box}body.dark-mode .unified-modal{background:#0009}.unified-modal.active{display:flex}.unified-modal-container{background:var(--bg-surface);border-radius:14px;width:100%;max-width:540px;max-height:calc(100vh - 40px);display:flex;flex-direction:column;box-shadow:var(--shadow-soft);overflow:hidden}.unified-modal-container.modal-sm{max-width:420px}.unified-modal-container.modal-lg{max-width:640px}.unified-modal-container.modal-form-wide{max-width:720px}.task-modal-compact{max-width:600px;overflow:visible}@media(max-width:600px){.task-modal-compact{max-width:100%;width:100%;border-radius:14px!important;overflow:hidden!important}.task-modal-compact .unified-modal-footer{margin:0!important;border-radius:0 0 14px 14px!important}}.task-modal-compact .unified-modal-header{border-radius:14px 14px 0 0;background:var(--bg-surface)}.task-modal-compact .unified-modal-footer{border-radius:0 0 14px 14px;background:var(--bg-surface)}.task-modal-body{display:flex;flex-direction:column;gap:14px;padding:16px 20px!important;background:var(--bg-surface);overflow-x:hidden!important;overflow-y:auto!important;max-height:none!important;min-height:480px;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}@media(max-width:600px),(max-height:720px){.task-modal-body{min-height:0;flex:1 1 auto}}.task-modal-compact .task-title-input{background:transparent!important;border:none!important;border-bottom:2px solid var(--border-subtle)!important;border-radius:0!important;padding:8px 2px!important;box-shadow:none!important;font-size:18px!important;font-weight:600!important}.task-modal-compact .task-title-input:focus{border-bottom-color:var(--accent)!important;box-shadow:none!important;transform:none!important}.task-modal-compact .task-title-input:hover{box-shadow:none!important;transform:none!important}.task-modal-compact .task-desc-input{min-height:34px!important;max-height:120px!important;border-radius:10px!important;padding:8px 12px!important;font-size:13.5px!important;box-shadow:none!important;background:transparent!important;resize:none!important;line-height:1.5!important}.task-modal-compact .task-desc-input:hover{box-shadow:none!important;transform:none!important}.task-modal-compact .task-desc-input:focus{box-shadow:none!important;transform:none!important}.task-modal-compact .task-date-hidden{pointer-events:none!important;z-index:-1!important}.task-modal-compact .task-option-toggle{display:inline-flex!important;text-transform:none!important;letter-spacing:0!important;font-size:12px!important;font-weight:500!important;color:var(--text-light)!important;margin-bottom:0!important}.task-modal-compact .task-chip,.task-modal-compact .task-field-btn,.task-modal-compact .task-option-btn{box-shadow:none!important}.task-modal-compact .task-chip:hover,.task-modal-compact .task-field-btn:hover,.task-modal-compact .task-option-btn:hover{transform:none!important;box-shadow:none!important}.task-title-input{width:100%;font-family:inherit;outline:none;transition:border-color .2s ease;box-sizing:border-box}.task-title-input::placeholder{color:var(--text-muted);font-weight:500;opacity:.6}body.dark-mode .task-title-input{color:#fff!important}body.dark-mode .task-title-input::placeholder{color:#ffffff59}.task-desc-input{width:100%;font-family:inherit;color:var(--text-main);outline:none;transition:border-color .2s ease;box-sizing:border-box}.task-desc-input:focus{border-color:var(--accent)!important}.task-desc-input::placeholder{color:var(--text-muted);opacity:.6}body.dark-mode .task-desc-input{color:#fff!important;border-color:var(--border-subtle)!important}.task-quick-row{display:grid;grid-template-columns:repeat(2,1fr);gap:12px 16px;align-items:start;padding:2px 0}.task-labeled-field{display:flex;flex-direction:column;gap:5px;min-width:0}.task-field-label{font-size:11px;font-weight:600;letter-spacing:.01em;color:var(--text-muted);opacity:.75;padding-left:2px;user-select:none;white-space:nowrap}.task-labeled-field .task-option-btn{width:100%;justify-content:flex-start}.task-list-field-row{display:flex;align-items:center;gap:6px}.task-list-field-row .task-option-item{flex:1;min-width:0}.task-goto-sheet-btn{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;font-size:12px;color:var(--text-light);background:transparent;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:all .15s ease}.task-goto-sheet-btn:hover{background:var(--bg-body);border-color:var(--border-subtle);color:var(--accent)}.task-chip-field{position:relative}.task-field-btn,.task-chip{display:inline-flex;align-items:center;gap:7px;padding:9px 13px;font-size:13px;font-family:inherit;font-weight:500;color:var(--text-secondary);background:#fff;border:1.5px solid rgba(0,112,243,.12);border-radius:12px;cursor:pointer;transition:all .18s ease;white-space:nowrap;line-height:1;width:100%;justify-content:flex-start;height:38px;box-sizing:border-box}.task-chip-arrow{font-size:9px;color:var(--text-muted);margin-left:auto;opacity:.6;transition:opacity .15s ease,transform .15s ease}.task-field-btn:hover .task-chip-arrow,.task-chip:hover .task-chip-arrow{opacity:1;color:var(--accent)}.task-field-btn i{font-size:12px;color:var(--text-muted);transition:color .18s ease}.task-chip .unified-priority-dot,.task-chip .unified-status-dot{width:8px;height:8px;flex-shrink:0}.task-chip i{font-size:12px}.task-field-btn:hover,.task-chip:hover{background:#0070f30a;border-color:#0070f32e;color:var(--text-main)}.task-field-btn:hover i{color:var(--text-secondary)}.task-field-btn.has-value,.task-chip.has-value{background:#0070f30a;border-color:#0070f32e;color:var(--text-main);font-weight:500}.task-field-btn.has-value i{color:var(--text-secondary)}body.dark-mode .task-field-btn,body.dark-mode .task-chip{background:#ffffff0f;border-color:#0a84ff40;color:var(--text-muted)}body.dark-mode .task-field-btn i{color:var(--text-muted)}body.dark-mode .task-chip-arrow{color:#ffffff4d}.task-chip-avatar{width:20px;height:20px;border-radius:50%;font-size:9px;font-weight:700;color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;line-height:1}.task-date-chip-field{position:relative}.task-date-hidden{position:absolute;top:0;left:0;width:0;height:0;opacity:0;pointer-events:none;overflow:hidden;z-index:-1}.task-chip-field .unified-dropdown-menu{top:calc(100% + 4px);left:0;min-width:200px;z-index:100001}.task-options-row{display:grid;grid-template-columns:2fr 1fr 1fr;gap:10px;align-items:start;padding-top:12px;border-top:1px solid var(--border-subtle)}.task-option-item{position:relative}.task-option-btn{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;font-size:12px;font-family:inherit;font-weight:500;color:var(--text-light);background:transparent;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:all .15s ease;white-space:nowrap}.task-option-btn:hover{background:var(--bg-body);border-color:var(--border-subtle);color:var(--text-main)}.task-option-btn i:first-child{font-size:11px;color:var(--accent)}.task-option-arrow{font-size:8px!important;color:var(--text-light)!important;margin-left:2px}body.dark-mode .task-option-btn:hover{background:#ffffff0f}.task-option-toggle{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;font-size:12px;font-weight:500;color:var(--text-light);cursor:pointer;border-radius:8px;transition:all .15s ease;white-space:nowrap}.task-option-toggle:hover{background:var(--bg-body);color:var(--text-main)}.task-toggle-text{font-size:12px;color:var(--text-secondary)}.task-option-toggle .mini-toggle{transform:scale(.8);margin:-2px 0}.task-option-item .unified-dropdown-menu{top:calc(100% + 4px);left:0;min-width:180px;z-index:100001}.task-word-count{font-size:11px;color:var(--text-light);font-weight:500;font-variant-numeric:tabular-nums}.task-word-count.warning{color:var(--warning)}.task-word-count.limit{color:var(--danger, #ef4444)}.task-modal-body .recurrence-hint{font-size:11.5px;color:var(--text-muted);display:flex;align-items:center;gap:6px}@media(max-width:540px){.task-modal-compact{max-width:100%;margin:0 8px}.task-quick-row{gap:6px}.task-chip{padding:5px 10px;font-size:12px}.task-field-btn{padding:5px 10px;font-size:11.5px;gap:5px}.task-field-btn i{font-size:10px}.task-chip-avatar{width:18px;height:18px;font-size:8px}.task-chip-label{display:none}.task-field-btn.has-value .task-chip-label{display:inline}.task-chip .task-chip-value{display:inline!important}.task-options-row{gap:4px}.task-option-btn>span,.task-option-toggle>span{display:none}}body.dark-mode .unified-modal-container{background:var(--bg-surface);box-shadow:var(--shadow-soft)}.unified-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 24px 12px!important;border-bottom:1px solid var(--border-subtle);flex-shrink:0;background:var(--bg-surface);box-sizing:border-box!important;width:100%}body.dark-mode .unified-modal-header{background:var(--bg-surface);border-bottom-color:var(--border-subtle)}.unified-modal-title{display:flex;flex-direction:column;gap:2px}.unified-modal-title h2{font-size:17px;font-weight:600;color:var(--text-main);margin:0;display:flex;align-items:center;gap:10px;letter-spacing:-.01em}body.dark-mode .unified-modal-title h2{color:var(--text-main)}.unified-modal-title h2 i,.unified-modal-title .subtitle{display:none}.unified-modal-close{width:28px;height:28px;border-radius:50%;border:none;background:var(--bg-body);color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:13px;transition:opacity .15s ease;flex-shrink:0}.unified-modal-close:hover{opacity:.7}body.dark-mode .unified-modal-close{background:var(--bg-surface-soft);color:var(--text-muted)}.unified-modal-body{padding:24px!important;box-sizing:border-box!important;flex:1;overflow-y:auto;overflow-x:hidden;max-height:calc(100vh - 180px);width:100%}.unified-modal-body::-webkit-scrollbar{width:6px}.unified-modal-body::-webkit-scrollbar-track{background:transparent}.unified-modal-body::-webkit-scrollbar-thumb{background:#0000001a;border-radius:3px}body.dark-mode .unified-modal-body::-webkit-scrollbar-thumb{background:#ffffff1a}.create-item-content{width:100%;max-width:400px;background:var(--bg-surface);border-radius:16px;overflow:hidden;box-shadow:var(--shadow-soft)}.create-item-body{display:flex;flex-direction:column;gap:12px;padding:20px 24px}.create-item-option{display:flex;align-items:center;gap:16px;padding:16px 20px;background:#0000000a;border:1px solid var(--border-subtle);border-radius:12px;cursor:pointer;transition:all .2s ease;text-align:left}.create-item-option:hover{background:var(--bg-hover);border-color:var(--accent);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.create-item-icon{width:48px;height:48px;border-radius:12px;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}.create-item-text{display:flex;flex-direction:column;gap:4px}.create-item-title{font-size:16px;font-weight:600;color:var(--text-main)}.create-item-subtitle{font-size:13px;color:var(--text-muted)}body.dark-mode .create-item-content{background:var(--bg-surface);border:1px solid var(--border-subtle)}body.dark-mode .create-item-option{background:var(--bg-tertiary);border-color:var(--border-subtle)}body.dark-mode .create-item-option:hover{background:var(--bg-hover);border-color:var(--accent);box-shadow:0 4px 12px #0000004d}body.dark-mode .create-item-icon{background:var(--accent);color:#fff}body.dark-mode .create-item-title{color:var(--text-main)}body.dark-mode .create-item-subtitle{color:var(--text-muted)}.unified-input.duration-display{background:#f0f0f2;color:#00000080;cursor:default}body.dark-mode .unified-input.duration-display{background:#ffffff0d;color:#ffffff80}.unified-modal-footer{display:flex;justify-content:flex-end;align-items:center;gap:10px;padding:16px 24px;border-top:1px solid rgba(0,0,0,.06);flex-shrink:0}#transactionModal .unified-modal-footer{align-items:center;padding-bottom:24px}body.dark-mode .unified-modal-footer{border-top-color:#ffffff14}.unified-form-grid{display:flex;flex-direction:column;gap:12px}.unified-form-grid.two-col{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.unified-form-field.full-width{grid-column:1 / -1}.unified-form-field{display:flex;flex-direction:column;gap:4px}.unified-form-label{font-size:13px;font-weight:500;color:#0006;display:flex;align-items:center;gap:4px;text-transform:none;letter-spacing:0}body.dark-mode .unified-form-label{color:#ffffff61}.unified-form-label i{display:none}.unified-form-label .required{color:#ff3b30;font-weight:500}.unified-form-label .optional{color:#0000004d;font-weight:400;font-size:12px}body.dark-mode .unified-form-label .optional{color:#ffffff4d}.unified-input,.unified-select,.unified-textarea{width:100%;padding:14px 16px;font-size:15px;font-family:inherit;color:var(--text-main);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:14px;box-shadow:0 4px 12px #0000000a;transition:all .18s ease;box-sizing:border-box;outline:none}.unified-input:hover,.unified-select:hover,.unified-textarea:hover{border-color:var(--border-medium);box-shadow:0 6px 16px #0000000f;transform:translateY(-1px)}.unified-input:focus,.unified-select:focus,.unified-textarea:focus{border-color:var(--accent);box-shadow:0 6px 20px #0070f31f,0 0 0 3px var(--accent-soft);transform:translateY(-1px)}.unified-input::placeholder,.unified-textarea::placeholder{color:var(--text-muted);opacity:.7}body.dark-mode .unified-input,body.dark-mode .unified-select,body.dark-mode .unified-textarea{background:var(--bg-surface);border-color:var(--border-subtle);color:#fff}body.dark-mode .unified-input:hover,body.dark-mode .unified-select:hover,body.dark-mode .unified-textarea:hover{border-color:var(--border-medium);box-shadow:0 6px 16px #00000026}body.dark-mode .unified-input:focus,body.dark-mode .unified-select:focus,body.dark-mode .unified-textarea:focus{border-color:var(--accent);box-shadow:0 6px 20px #0a84ff33,0 0 0 3px #0a84ff26}body.dark-mode .unified-input::placeholder,body.dark-mode .unified-textarea::placeholder{color:#ffffff59}.unified-textarea{resize:vertical;min-height:72px}.unified-select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}.unified-select option{padding:12px 16px;background:var(--bg-surface);color:var(--text-main);font-size:14px;font-weight:500;border:none}.unified-select option:hover,.unified-select option:focus,.unified-select option:checked{background:var(--accent-soft);color:var(--accent)}body.dark-mode .unified-select option{background:#2c2c2e;color:#fff}body.dark-mode .unified-select option:hover,body.dark-mode .unified-select option:focus,body.dark-mode .unified-select option:checked{background:#007aff40;color:var(--accent)}.unified-input-group{display:flex;align-items:stretch}.unified-input-group .input-addon{display:flex;align-items:center;padding:0 14px;background:#fff;border:1px solid var(--border-subtle);border-right:none;color:var(--text-muted);font-size:14px;font-weight:500}body.dark-mode .unified-input-group .input-addon{background:#2c2c2e;border-color:var(--border-subtle);color:#ffffff80}.unified-input-group .input-addon:first-child{border-radius:8px 0 0 8px}.unified-input-group .input-addon:last-child{border-radius:0 8px 8px 0}.unified-input-group .unified-input{border-radius:0;flex:1}.unified-input-group .unified-input:first-child{border-radius:8px 0 0 8px}.unified-input-group .unified-input:last-child{border-radius:0 8px 8px 0}#transactionCategory{appearance:none;-webkit-appearance:none;-moz-appearance:none;width:100%;padding:14px 40px 14px 16px;font-size:15px;font-family:inherit;color:var(--text-main);background:#fff;border:1px solid var(--border-subtle);border-radius:10px;box-shadow:0 4px 20px #00000014;cursor:pointer;transition:all .15s ease;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center}#transactionCategory:hover{border-color:var(--border-medium);box-shadow:0 6px 24px #0000001a}#transactionCategory:focus{border-color:var(--accent);box-shadow:0 6px 24px #007aff26;outline:none}#transactionCategory option{padding:10px 12px;font-size:15px;color:#000;background:#fff}#transactionCategory optgroup{font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);padding:8px 0 4px}body.dark-mode #transactionCategory{background:#2c2c2e;border-color:var(--border-subtle);color:#fff;box-shadow:0 4px 20px #0000004d;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E")}body.dark-mode #transactionCategory:hover{border-color:var(--border-medium);box-shadow:0 6px 24px #0006}body.dark-mode #transactionCategory:focus{border-color:var(--accent);box-shadow:0 6px 24px #0a84ff33}body.dark-mode #transactionCategory option{background:#2c2c2e;color:#fff}body.dark-mode #transactionCategory optgroup{color:#ffffff80}.unified-dropdown{position:relative}.unified-dropdown.compact .unified-dropdown-trigger{display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:6px;font-size:12px;font-weight:500;color:var(--text-primary);cursor:pointer;background:transparent;border:1px solid var(--border-subtle);box-shadow:none;min-height:auto;transition:all .15s}.unified-dropdown.compact .unified-dropdown-trigger:hover{background:var(--bg-surface-hover, #f5f5f5);border-color:var(--border-medium)}body.dark-mode .unified-dropdown.compact .unified-dropdown-trigger:hover{background:var(--bg-surface-hover, #2c2c2e)}.unified-dropdown.compact .unified-dropdown-value{font-size:12px;color:var(--text-primary)}body.dark-mode .unified-dropdown.compact .unified-dropdown-value{color:#fff}.unified-dropdown.compact .unified-dropdown-arrow{font-size:10px;opacity:.6}.unified-dropdown.collab-menu .unified-dropdown-menu{border-radius:8px;border:1px solid var(--border-subtle);box-shadow:0 4px 16px #0000001f;padding:4px;background:var(--bg-surface, #fff);top:calc(100% + 4px);right:0;left:auto;width:140px}body.dark-mode .unified-dropdown.collab-menu .unified-dropdown-menu{background:var(--bg-surface, #2c2c2e);border-color:var(--border-subtle)}.unified-dropdown.collab-menu .unified-dropdown-option{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-radius:6px;font-size:13px;cursor:pointer;color:var(--text-primary);transition:background .1s}.unified-dropdown.collab-menu .unified-dropdown-option:first-child,.unified-dropdown.collab-menu .unified-dropdown-option:last-child{border-radius:6px}.unified-dropdown.collab-menu .unified-dropdown-option:hover{background:var(--bg-surface-hover, #f5f5f5);color:var(--text-primary)}body.dark-mode .unified-dropdown.collab-menu .unified-dropdown-option:hover{background:var(--bg-surface-hover, #2c2c2e);color:#fff}.unified-dropdown.collab-menu .unified-dropdown-option.selected{background:#007aff14}body.dark-mode .unified-dropdown.collab-menu .unified-dropdown-option.selected{background:#007aff33}.team-switcher{flex-shrink:0}.team-switcher .unified-dropdown-trigger{max-width:220px}.team-switcher .unified-dropdown-value{display:flex;align-items:center;gap:6px;min-width:0}.team-switcher #teamSwitcherLabel{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-switcher .unified-dropdown-value i{opacity:.6;flex-shrink:0}.team-switcher .unified-dropdown-menu{left:0;right:auto;min-width:260px;max-height:340px;padding:6px;border:1px solid var(--border-subtle)}.team-switcher-option{justify-content:space-between;border-radius:8px}.team-switcher-option-main{display:flex;flex-direction:column;gap:1px;min-width:0}.team-switcher-option-name{font-size:13px;font-weight:500;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-switcher-option-meta{font-size:11px;color:var(--text-muted)}.team-switcher-option-check{flex-shrink:0;font-size:11px;color:var(--primary, #0078D4);opacity:0}.team-switcher-option.selected .team-switcher-option-check{opacity:1}.team-switcher-option:hover,.team-switcher-action:hover{background:var(--bg-surface-hover, #f5f5f5)}body.dark-mode .team-switcher-option:hover,body.dark-mode .team-switcher-action:hover{background:var(--bg-surface-hover, #3a3a3c)}.team-switcher-option.selected{background:#007aff14}body.dark-mode .team-switcher-option.selected{background:#007aff33}.team-switcher-divider{height:1px;margin:6px 4px;background:var(--border-subtle)}.team-switcher-action{border-radius:8px;font-size:13px;color:var(--text-secondary, #666)}.team-switcher-action i{width:14px;font-size:11px;opacity:.7}.unified-dropdown-trigger{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:14px;box-shadow:0 4px 12px #0000000a;cursor:pointer;transition:all .18s ease;min-height:48px}.unified-dropdown-trigger:hover{background:var(--accent-soft);border-color:var(--accent);box-shadow:0 6px 16px #0000000f}body.dark-mode .unified-dropdown-trigger{background:var(--bg-surface);border-color:var(--border-subtle)}body.dark-mode .unified-dropdown-trigger:hover{background:#0a84ff1f;border-color:var(--accent)}.unified-dropdown-value{display:flex;align-items:center;gap:8px;font-size:15px;color:var(--text-main)}body.dark-mode .unified-dropdown-value{color:#fff}.unified-dropdown-arrow{color:var(--text-muted);font-size:12px;transition:transform .18s ease,color .18s ease}body.dark-mode .unified-dropdown-arrow{color:#fff6}.unified-dropdown-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border-radius:10px;box-shadow:0 4px 20px #00000026;z-index:1000;max-height:200px;overflow-y:auto;opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .15s ease,visibility .15s ease,transform .15s ease}.unified-dropdown-menu.visible,.unified-dropdown.open .unified-dropdown-menu{opacity:1;visibility:visible;transform:translateY(0)}body.dark-mode .unified-dropdown-menu{background:#2c2c2e;box-shadow:0 4px 20px #0006}.unified-dropdown-option{display:flex;align-items:center;gap:8px;padding:10px 12px;cursor:pointer;transition:background .1s ease;font-size:15px;color:#000}body.dark-mode .unified-dropdown-option{color:#fff}.unified-dropdown-option:first-child{border-radius:9px 9px 0 0}.unified-dropdown-option:last-child{border-radius:0 0 9px 9px}.unified-dropdown-option:hover{background:#0000000a}body.dark-mode .unified-dropdown-option:hover{background:#ffffff14}.unified-dropdown-option.selected{background:#007aff14}body.dark-mode .unified-dropdown-option.selected{background:#007aff33}.unified-dropdown-option .check-icon{margin-left:auto;color:#007aff;opacity:0;font-size:12px}.unified-dropdown-option.selected .check-icon{opacity:1}.unified-status-dot,.unified-priority-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.unified-difficulty-dot{display:inline-flex;align-items:center;justify-content:center;width:13px;font-size:11px;flex-shrink:0}.unified-status-dot.todo{background:#8e8e93}.unified-status-dot.inprogress{background:#ff9500}.unified-status-dot.done{background:#34c759}.unified-status-dot.new{background:#007aff}.unified-status-dot.contacted{background:#5856d6}.unified-status-dot.qualified{background:#ff9500}.unified-status-dot.won{background:#34c759}.unified-status-dot.lost{background:#ff3b30}.unified-priority-dot.low{background:#34c759}.unified-priority-dot.medium{background:#ff9500}.unified-priority-dot.high{background:#ff3b30}.unified-priority-dot.urgent{background:#af52de}.unified-difficulty-dot.easy{color:#22c55e}.unified-difficulty-dot.medium{color:#eab308}.unified-difficulty-dot.hard{color:#f97316}.unified-difficulty-dot.complex{color:#af52de}.unified-assignee-avatar{width:28px;height:28px;border-radius:50%;background:#007aff;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;flex-shrink:0}.unified-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 18px;font-size:14px;font-weight:500;font-family:inherit;border-radius:999px;border:none;cursor:pointer;transition:opacity .15s ease;white-space:nowrap}.unified-btn:disabled{opacity:.4;cursor:not-allowed}.unified-btn-primary{background:#007aff;color:#fff}.unified-btn-primary:hover:not(:disabled){opacity:.85}.unified-btn-secondary{background:#0000000d;color:#000}body.dark-mode .unified-btn-secondary{background:#ffffff1a;color:#fff}.unified-btn-secondary:hover:not(:disabled){opacity:.7}.unified-btn-danger{background:#ff3b30;color:#fff}.unified-btn-danger:hover:not(:disabled){opacity:.85}.unified-btn-warning{background:#ff95001f;color:#c77800}body.dark-mode .unified-btn-warning{color:#ffb340}.unified-btn-warning:hover:not(:disabled){opacity:.7}.unified-color-grid-wrapper{display:flex;align-items:flex-start;gap:8px}.unified-color-grid{display:flex;gap:8px;flex-wrap:wrap;flex:1;transition:all .3s cubic-bezier(.4,0,.2,1)}.unified-color-grid[data-expanded=false] .unified-color-extra{display:none}.unified-color-expand-btn{width:28px;height:28px;border-radius:8px;background:var(--bg-surface);border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;font-size:11px;flex-shrink:0}.unified-color-expand-btn:hover{background:var(--bg-body);color:var(--text-main);border-color:var(--border-medium)}.unified-color-expand-btn i{transition:transform .3s cubic-bezier(.4,0,.2,1)}.unified-color-grid[data-expanded=true]+.unified-color-expand-btn i{transform:rotate(180deg)}.unified-color-option{width:28px;height:28px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative;box-sizing:border-box}.unified-color-option:hover{transform:scale(1.1);border-color:#00000026;box-shadow:0 2px 8px #00000026}body.dark-mode .unified-color-option:hover{border-color:#fff3;box-shadow:0 2px 8px #0006}.unified-color-option.selected{border-color:#0006;transform:scale(1.05);box-shadow:0 0 0 3px #00000014,0 2px 8px #00000026}body.dark-mode .unified-color-option.selected{border-color:#fff9;box-shadow:0 0 0 3px #ffffff14,0 2px 8px #0006}.unified-color-option.selected:after{display:none}.visibility-selector{display:flex;gap:12px}.visibility-option{flex:1;display:flex;align-items:center;gap:10px;padding:14px 16px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:14px;box-shadow:0 4px 12px #0000000a;cursor:pointer;transition:all var(--transition-fast)}.visibility-option input[type=radio]{display:none}.visibility-option:hover{background:var(--accent-soft);border-color:var(--accent);box-shadow:0 6px 16px #0000000f;transform:translateY(-1px)}.visibility-option.selected{background:var(--accent-soft);border-color:var(--accent);box-shadow:0 6px 20px #0070f31f}.visibility-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--accent-soft);border-radius:var(--radius-sm);color:var(--accent);font-size:14px;flex-shrink:0}.visibility-icon.admins{background:#ff3b301f;color:var(--danger)}.visibility-icon.private{background:#ff95001f;color:var(--warning)}.visibility-text{display:flex;flex-direction:column;gap:4px;min-width:0}.visibility-name{font-size:.95rem;font-weight:600;color:var(--text-main)}.visibility-desc{font-size:.85rem;color:var(--text-muted);white-space:nowrap;text-transform:none}body.dark-mode .visibility-option{background:var(--bg-surface);border-color:var(--border-subtle)}body.dark-mode .visibility-option:hover{background:#ffffff14;border-color:var(--accent)}body.dark-mode .visibility-option.selected{background:#0a84ff26;border-color:var(--accent)}@media(max-width:600px){.visibility-selector{flex-direction:column}.visibility-option{padding:10px 12px}.visibility-desc{display:none}}.repeat-selector{width:100%}.repeat-grid{display:flex;flex-wrap:wrap;gap:8px}.repeat-chip{display:inline-flex;align-items:center;gap:8px;padding:10px 12px;background:#f5f5f7;border:1px solid var(--border-subtle);border-radius:12px;cursor:pointer;transition:all .15s ease;font-size:13px;font-weight:600;color:var(--text-muted)}.repeat-chip input[type=radio]{display:none}.repeat-chip:hover{background:#ebebed;color:var(--text-main);border-color:var(--border-medium)}.repeat-chip.selected{background:#007aff;border-color:#007aff;color:#fff;box-shadow:0 6px 18px #007aff2e}.repeat-chip-icon{width:26px;height:26px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:#fff;color:#007aff;font-size:13px}.repeat-chip.selected .repeat-chip-icon{background:#ffffff29;color:#fff}.repeat-chip-title{font-weight:600;color:inherit;font-size:13px;line-height:1.2}.repeat-helper{margin-top:10px;padding:10px 12px;background:var(--accent-soft);border-radius:12px;display:flex;align-items:center;gap:8px;font-size:12px;color:var(--accent);line-height:1.4;box-shadow:var(--shadow-subtle)}.repeat-helper i{flex-shrink:0}body.dark-mode .repeat-chip{background:#ffffff0f;color:#ffffffbf}body.dark-mode .repeat-chip:hover{background:#ffffff1f;border-color:var(--border-medium)}body.dark-mode .repeat-chip.selected{background:#007aff47;border-color:#007affe6;color:#fff}body.dark-mode .repeat-chip-icon{background:#ffffff14;color:#fff}body.dark-mode .repeat-chip.selected .repeat-chip-icon{background:#fff3}body.dark-mode .repeat-helper{background:#007aff29}@media(max-width:640px){.repeat-grid{gap:6px}.repeat-chip{flex:1 1 calc(50% - 6px);justify-content:center}}.unified-icon-grid{display:flex;gap:6px;flex-wrap:wrap}.unified-icon-option{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:8px;border:none;background:#f5f5f7;color:#00000080;cursor:pointer;transition:all .15s ease;font-size:14px}body.dark-mode .unified-icon-option{background:#ffffff14;color:#ffffff80}.unified-icon-option:hover{background:#ebebed;color:#000000b3}body.dark-mode .unified-icon-option:hover{background:#ffffff1f;color:#ffffffb3}.unified-icon-option.selected{background:#00000014;border:1.5px solid rgba(0,0,0,.2);color:#000}body.dark-mode .unified-icon-option.selected{background:#ffffff1f;border:1.5px solid rgba(255,255,255,.3);color:#fff}.unified-progress-control{display:flex;align-items:center;gap:12px}.unified-progress-slider{flex:1;height:6px;-webkit-appearance:none;appearance:none;background:#00000014;border-radius:3px;outline:none;cursor:pointer}body.dark-mode .unified-progress-slider{background:#ffffff1a}.unified-progress-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:#007aff;cursor:grab;box-shadow:0 2px 6px #007aff4d;transition:transform .15s ease,box-shadow .15s ease}.unified-progress-slider::-webkit-slider-thumb:hover{transform:scale(1.1);box-shadow:0 2px 10px #007aff80}.unified-progress-slider::-webkit-slider-thumb:active{cursor:grabbing;transform:scale(.95)}.unified-progress-slider::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:#007aff;cursor:grab;border:none;box-shadow:0 2px 6px #007aff4d}.unified-progress-slider::-moz-range-thumb:hover{transform:scale(1.1)}.unified-progress-slider::-moz-range-track{height:6px;background:transparent;border-radius:3px}.unified-progress-value{display:flex;align-items:center;gap:2px;min-width:50px}.unified-progress-value input{width:36px;padding:6px 4px;font-size:13px;font-weight:500;text-align:right;border:none;border-radius:6px;background:#f5f5f7;color:#000;-moz-appearance:textfield;appearance:textfield}body.dark-mode .unified-progress-value input{background:#ffffff14;color:#fff}.unified-progress-value input::-webkit-inner-spin-button,.unified-progress-value input::-webkit-outer-spin-button{-webkit-appearance:none}.unified-progress-value input:focus{outline:none;background:#ebebed}body.dark-mode .unified-progress-value input:focus{background:#ffffff1f}.unified-progress-value span{font-size:13px;font-weight:500;color:#0006}body.dark-mode .unified-progress-value span{color:#fff6}.unified-time-input{display:flex;align-items:center;gap:2px;background:#f5f5f7;border-radius:8px;padding:4px}body.dark-mode .unified-time-input{background:#ffffff14}.unified-time-input input{width:36px;padding:6px 2px;font-size:14px;font-weight:500;text-align:center;border:none;background:transparent;color:#000;-moz-appearance:textfield;appearance:textfield}body.dark-mode .unified-time-input input{color:#fff}.unified-time-input input::-webkit-inner-spin-button,.unified-time-input input::-webkit-outer-spin-button{-webkit-appearance:none}.unified-time-input input:focus{outline:none;background:#0000000a;border-radius:4px}body.dark-mode .unified-time-input input:focus{background:#ffffff14}.unified-time-input span{font-size:14px;font-weight:600;color:#0000004d}body.dark-mode .unified-time-input span{color:#ffffff4d}.time-picker-wrapper{position:relative;width:100%}.time-picker-display{display:flex;align-items:center;gap:2px;background:#f5f5f7;border-radius:10px;padding:10px 14px;cursor:pointer;transition:all .2s ease;border:1px solid var(--border-subtle);width:100%}.time-picker-display .unified-input{width:36px!important;min-width:0!important;padding:0!important;text-align:center;background:transparent!important;border:none!important;box-shadow:none!important;font-weight:600}.time-picker-display .unified-select{width:48px!important;min-width:0!important;padding:0!important;background:transparent!important;border:none!important;box-shadow:none!important;font-weight:600}.time-picker-display .time-colon{font-weight:600;color:#0006;margin:0 4px}body.dark-mode .time-picker-display .time-colon{color:#fff6}.time-picker-display:hover{background:#ebebed}.time-picker-wrapper.open .time-picker-display{border-color:var(--accent);background:#fff;box-shadow:0 0 0 3px #007aff1f}body.dark-mode .time-picker-display{background:#ffffff14}body.dark-mode .time-picker-display:hover{background:#ffffff1f}body.dark-mode .time-picker-wrapper.open .time-picker-display{background:#ffffff1a}.time-input-field{width:28px;padding:0;font-size:15px;font-weight:600;text-align:center;border:none;background:transparent;color:#000;outline:none}.time-input-field::placeholder{color:#00000059}body.dark-mode .time-input-field{color:#fff}body.dark-mode .time-input-field::placeholder{color:#ffffff59}.time-separator{font-size:15px;font-weight:600;color:#0006;margin:0 2px}body.dark-mode .time-separator{color:#fff6}.time-picker-arrow{font-size:10px;color:#00000059;margin-left:8px;transition:transform .2s ease}.time-picker-wrapper.open .time-picker-arrow{transform:rotate(180deg)}body.dark-mode .time-picker-arrow{color:#ffffff59}.time-picker-dropdown{position:absolute;top:calc(100% + 6px);left:0;right:0;background:#fff;border-radius:12px;box-shadow:0 10px 40px #00000026,0 0 0 1px #0000000d;z-index:1000;opacity:0;visibility:hidden;transform:translateY(-8px);transition:all .2s ease}.time-picker-wrapper.open .time-picker-dropdown{opacity:1;visibility:visible;transform:translateY(0)}body.dark-mode .time-picker-dropdown{background:#2c2c2e;box-shadow:0 10px 40px #0006,0 0 0 1px #ffffff14}.time-picker-columns{display:flex;gap:0}.time-picker-column{flex:1;border-right:1px solid rgba(0,0,0,.06)}.time-picker-column:last-child{border-right:none}body.dark-mode .time-picker-column{border-right-color:#ffffff14}.time-picker-column-header{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#0006;padding:10px 8px 6px;text-align:center}body.dark-mode .time-picker-column-header{color:#fff6}.time-picker-options{max-height:200px;overflow-y:auto;padding:0 4px 8px}.time-picker-option{padding:8px 12px;font-size:14px;font-weight:500;text-align:center;border-radius:8px;cursor:pointer;transition:all .15s ease;color:#000}.time-picker-option:hover{background:#0000000d}.time-picker-option.selected{background:var(--accent);color:#fff}body.dark-mode .time-picker-option{color:#fff}body.dark-mode .time-picker-option:hover{background:#ffffff1a}body.dark-mode .time-picker-option.selected{background:var(--accent)}.repeat-pills{display:flex;flex-wrap:wrap;gap:8px}.repeat-pill{display:inline-flex;align-items:center;padding:10px 18px;background:var(--bg-surface);border:2px solid var(--border-subtle);border-radius:24px;cursor:pointer;transition:all .15s ease;font-size:13px;font-weight:500;color:var(--text-muted);white-space:nowrap}.repeat-pill input[type=radio]{display:none}.repeat-pill:hover{background:var(--bg-body);border-color:var(--border-medium);color:var(--text-main)}.repeat-pill.selected{background:#fff;color:var(--text-main);border-color:#b0b0b3}.repeat-pill.selected:before{content:"\f00c";font-family:"Font Awesome 6 Free","Font Awesome 5 Free";font-weight:900;font-size:14px;color:#34c759;margin-right:8px;-webkit-text-stroke:.5px #34C759}body.dark-mode .repeat-pill{background:#ffffff0d;border-color:#ffffff1a;color:var(--text-muted)}body.dark-mode .repeat-pill:hover{background:#ffffff14;border-color:#fff3}body.dark-mode .repeat-pill.selected{background:#fffffff2;border-color:#b0b0b3;color:#1c1c1e}.unified-form-field.full-width:has(label.inline-toggle-row){margin-top:8px;padding-top:16px;border-top:1px solid var(--border-subtle)}.unified-form-field label.inline-toggle-row{display:inline-flex!important;flex-direction:row;align-items:center!important;gap:12px;width:100%;padding:0;margin:0;background:transparent;cursor:pointer}.unified-form-field label.inline-toggle-row:hover,body.dark-mode .unified-form-field label.inline-toggle-row,body.dark-mode .unified-form-field label.inline-toggle-row:hover{background:transparent}.inline-toggle-label{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:500;color:var(--text-main);flex:1}.inline-toggle-label i{font-size:14px;color:var(--accent)}.inline-toggle-row .mini-toggle{margin-left:auto}.mini-toggle{position:relative;width:44px;height:24px;flex-shrink:0}.mini-toggle input{opacity:0;width:0;height:0;position:absolute}.mini-toggle-track{position:absolute;inset:0;background:#e5e5ea;border-radius:24px;transition:background .25s ease;cursor:pointer}.mini-toggle-track:before{content:"";position:absolute;height:20px;width:20px;left:2px;bottom:2px;background:#fff;border-radius:50%;transition:transform .25s ease;box-shadow:0 2px 4px #0003}.mini-toggle input:checked+.mini-toggle-track{background:var(--accent)}.mini-toggle input:checked+.mini-toggle-track:before{transform:translate(20px)}body.dark-mode .mini-toggle-track{background:#fff3}body.dark-mode .mini-toggle input:checked+.mini-toggle-track{background:var(--accent)}.visibility-modal-content{position:relative;background:var(--bg-surface);border-radius:24px;padding:28px;width:340px;max-width:90vw;box-shadow:0 20px 60px #0003;text-align:left}.visibility-modal-close{position:absolute;top:16px;right:16px;width:28px;height:28px;border:none;background:var(--bg-body);color:var(--text-muted);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;transition:all .15s ease}.visibility-modal-close:hover{background:var(--bg-surface-soft);color:var(--text-main)}.visibility-modal-title{font-size:18px;font-weight:700;color:var(--text-main);margin:0 0 4px}.visibility-modal-subtitle{font-size:13px;color:var(--text-muted);margin:0 0 20px}.visibility-segment{position:relative;display:grid;grid-template-columns:repeat(2,1fr);align-items:stretch;background:#f2f3f7;border-radius:14px;padding:4px;height:36px;gap:4px;box-shadow:inset 0 1px #fff9;overflow:hidden}.visibility-segment .segment-indicator{position:absolute;top:4px;left:4px;height:calc(100% - 8px);width:calc(50% - 4px);background:var(--bg-surface);border-radius:12px;box-shadow:0 6px 18px #00000014;transition:transform var(--transition-medium),width var(--transition-fast);pointer-events:none}.segment-option{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 10px;border-radius:10px;font-size:13px;font-weight:700;color:var(--text-muted);cursor:pointer;transition:color var(--transition-fast);user-select:none;white-space:nowrap}.segment-option input[type=radio]{display:none}.segment-option i{font-size:13px}.segment-option.selected{color:var(--text-main)}body.dark-mode .visibility-segment{background:#ffffff14;box-shadow:inset 0 1px #ffffff0d}body.dark-mode .visibility-segment .segment-indicator{background:var(--bg-surface);box-shadow:0 10px 24px #00000059}.doc-readonly-section{margin-top:20px}.doc-readonly-divider{height:1px;background:var(--border-subtle);margin-bottom:16px}.doc-readonly-label{display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;flex-wrap:nowrap}.doc-readonly-info{flex:1;min-width:0}.doc-readonly-text{font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:4px;text-transform:none}.doc-readonly-text i{color:var(--text-muted);margin-right:6px}.doc-readonly-desc{font-size:12px;color:var(--text-muted);text-transform:none}.visibility-modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}body.dark-mode .visibility-modal-content{background:var(--bg-surface);border:1px solid var(--border-subtle);box-shadow:var(--shadow-soft)}.create-doc-modal-content{position:relative;background:var(--bg-surface);border-radius:24px;padding:32px;width:360px;max-width:90vw;box-shadow:0 24px 80px #0003;text-align:left}.create-doc-close{position:absolute;top:16px;right:16px;width:32px;height:32px;border:none;background:var(--bg-body);color:var(--text-muted);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:13px;transition:all .15s ease}.create-doc-close:hover{background:var(--bg-surface-soft);color:var(--text-main)}.create-doc-header{display:flex;align-items:center;gap:12px;margin-bottom:20px}.create-doc-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--accent-soft);border-radius:12px;font-size:18px;color:var(--accent);flex-shrink:0}.create-doc-title{font-size:20px;font-weight:700;color:var(--text-primary);margin:0}.create-doc-input{width:100%;padding:14px 18px;border:1.5px solid var(--border-subtle);border-radius:999px;font-size:15px;color:var(--text-primary);background:var(--bg-body);outline:none;transition:all .2s ease;text-align:center}.create-doc-input:focus{border-color:var(--accent);background:var(--bg-surface)}.create-doc-input::placeholder{color:var(--text-muted)}.create-doc-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:24px}.create-doc-input-wrap{position:relative;padding-right:40px}.create-doc-import-btn{position:absolute;right:2px;top:50%;transform:translateY(-50%);width:34px;height:34px;border:none;border-radius:50%;background:transparent;color:var(--text-muted);font-size:15px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s ease,color .15s ease}.create-doc-input-wrap .create-doc-import-btn{overflow:visible;text-overflow:clip}.create-doc-import-btn:hover{background:var(--bg-body, rgba(0, 0, 0, .05));color:var(--accent, #007aff)}.create-doc-import-btn:active{transform:translateY(-50%) scale(.92)}body.dark-mode .create-doc-import-btn:hover{background:#ffffff1a}body.dark-mode .create-doc-modal-content{background:var(--bg-elevated);opacity:1}body.dark-mode .create-doc-input{background:var(--bg-surface)}.unified-checkbox-label{display:flex;align-items:flex-start;gap:10px;cursor:pointer;padding:12px;background:#f5f5f7;border-radius:10px;transition:background .15s ease}body.dark-mode .unified-checkbox-label{background:#ffffff14}.unified-checkbox-label:hover{background:#ebebed}body.dark-mode .unified-checkbox-label:hover{background:#ffffff1f}.unified-checkbox-label input[type=checkbox]{width:18px;height:18px;border-radius:4px;border:1.5px solid rgba(0,0,0,.2);appearance:none;cursor:pointer;transition:all .15s ease;flex-shrink:0;margin-top:1px;background:transparent}body.dark-mode .unified-checkbox-label input[type=checkbox]{border-color:#ffffff4d}.unified-checkbox-label input[type=checkbox]:checked{background:#007aff;border-color:#007aff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center}.unified-checkbox-content{display:flex;flex-direction:column;gap:1px}.unified-checkbox-title{font-size:13px;font-weight:500;color:#000}body.dark-mode .unified-checkbox-title{color:#fff}.unified-checkbox-desc{font-size:11px;color:#0006;text-transform:none}body.dark-mode .unified-checkbox-desc{color:#fff6}.unified-segmented{display:flex;background:#f5f5f7;border-radius:8px;padding:2px;gap:2px}body.dark-mode .unified-segmented{background:#ffffff14}.unified-segmented-option{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;font-size:13px;font-weight:500;color:#00000080;background:transparent;border:none;border-radius:6px;cursor:pointer;transition:all .15s ease}body.dark-mode .unified-segmented-option{color:#ffffff80}.unified-segmented-option:hover{color:#000000b3}body.dark-mode .unified-segmented-option:hover{color:#ffffffb3}.unified-segmented-option.active{background:#fff;color:#000;box-shadow:0 1px 3px #00000014}body.dark-mode .unified-segmented-option.active{background:#ffffff26;color:#fff}#typeSelectRow{display:inline-flex;width:fit-content;background:var(--bg-surface);border-radius:999px;padding:4px;gap:4px;border:1px solid var(--border-subtle)}body.dark-mode #typeSelectRow{background:var(--bg-surface);border-color:var(--border-subtle)}#typeSelectRow .unified-segmented-option{display:flex;align-items:center;gap:8px;padding:8px 16px;border:none;background:transparent;color:var(--text-muted);font-size:13px;font-weight:600;border-radius:999px;cursor:pointer;transition:all .2s ease}#typeSelectRow .unified-segmented-option:hover{color:var(--text-main);background:var(--bg-body)}#typeSelectRow .unified-segmented-option.active{background:#b7b7b7;color:#fff;box-shadow:0 2px 8px #007aff40}body.dark-mode #typeSelectRow .unified-segmented-option.active{background:var(--accent);box-shadow:0 2px 8px #007aff4d}.unified-confirm-box{display:flex;gap:14px;padding:16px;background:#f5f5f7;border-radius:10px;align-items:flex-start}body.dark-mode .unified-confirm-box{background:#ffffff0f}.unified-confirm-box.danger{background:#ff3b300f}.unified-confirm-box.warning{background:#ff95000f}.unified-confirm-box.info{background:#007aff0f}.unified-confirm-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:10px;font-size:16px;flex-shrink:0}.unified-confirm-box.danger .unified-confirm-icon{background:#ff3b301a;color:#ff3b30}.unified-confirm-box.warning .unified-confirm-icon{background:#ff95001a;color:#ff9500}.unified-confirm-box.info .unified-confirm-icon{background:#007aff1a;color:#007aff}.unified-confirm-content{flex:1}.unified-confirm-content h3{font-size:14px;font-weight:600;color:#000;margin:0 0 4px}body.dark-mode .unified-confirm-content h3{color:#fff}.unified-confirm-content p{font-size:13px;color:#00000080;margin:0;line-height:1.4}body.dark-mode .unified-confirm-content p{color:#ffffff80}.unified-confirm-text{font-size:13px;color:#00000080;margin:0;line-height:1.4}body.dark-mode .unified-confirm-text{color:#ffffff80}.unified-confirm-text.mt-sm{margin-top:8px}.unified-confirm-text.danger{font-weight:600;color:#ff3b30}.unified-confirm-title{font-size:15px;font-weight:500;color:#000;margin:0 0 4px}body.dark-mode .unified-confirm-title{color:#fff}.unified-warning-box{display:flex;gap:14px;padding:16px;background:#ff95000f;border-radius:10px;align-items:flex-start}body.dark-mode .unified-warning-box{background:#ff95001a}.unified-warning-box i{font-size:18px;color:#ff9500;flex-shrink:0;margin-top:2px}.unified-warning-box p{font-size:13px;color:#0009;margin:0;line-height:1.4}body.dark-mode .unified-warning-box p{color:#fff9}.unified-info-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.unified-info-list li{display:flex;align-items:center;gap:8px;font-size:13px;color:#0009;padding:8px 12px;background:#f5f5f7;border-radius:8px}body.dark-mode .unified-info-list li{background:#ffffff0f;color:#fff9}.unified-info-list li i{font-size:12px;color:#0000004d;width:16px;text-align:center}body.dark-mode .unified-info-list li i{color:#ffffff4d}.unified-info-list li strong{font-weight:500;color:#000}body.dark-mode .unified-info-list li strong{color:#fff}.unified-feature-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.unified-feature-list li{display:flex;align-items:center;gap:8px;font-size:13px;color:#000}body.dark-mode .unified-feature-list li{color:#fff}.unified-feature-list li i{font-size:11px;width:14px;text-align:center}.unified-feature-list li i.fa-check{color:#34c759}.unified-feature-list li i.fa-times{color:#0000004d}body.dark-mode .unified-feature-list li i.fa-times{color:#ffffff4d}.unified-feature-list li.muted{color:#0006}body.dark-mode .unified-feature-list li.muted{color:#fff6}@media(max-width:600px){.unified-modal-container{width:100%!important;max-width:100%;max-height:80vh!important;border-radius:24px 24px 0 0!important;margin-top:auto;margin-bottom:0!important;margin-left:0!important;margin-right:0!important;position:relative;transition:transform .3s cubic-bezier(.25,1,.5,1);overscroll-behavior-y:none}.unified-modal-container:before{content:"";position:absolute;top:8px;left:50%;transform:translate(-50%);width:40px;height:5px;background:var(--border-medium, rgba(0,0,0,.2));border-radius:3px;z-index:10;pointer-events:none}body.dark-mode .unified-modal-container:before{background:#ffffff4d}.unified-modal-container.modal-form-wide{max-width:100%}.unified-modal{align-items:flex-end;padding:0}.unified-form-grid.two-col{grid-template-columns:1fr}.unified-form-field.full-width{grid-column:1}.unified-modal-header{padding:24px 24px 16px!important;box-sizing:border-box!important}.unified-modal-body{padding:24px!important;box-sizing:border-box!important;flex:1 1 auto;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}.unified-modal-footer{padding:16px 24px 24px!important;box-sizing:border-box!important}.unified-modal-title h2{font-size:16px}.unified-btn{padding:12px 16px}}.finances-metrics-row{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.finance-metric-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;padding:16px 20px;display:flex;align-items:flex-start;gap:14px;transition:all .2s ease}.finance-metric-card:hover{border-color:var(--accent);box-shadow:0 4px 12px #0000000f}.finance-metric-icon{width:42px;height:42px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}.finance-metric-icon.mrr{background:#a855f726;color:#a855f7}.finance-metric-icon.ytd{background:#22c55e26;color:#22c55e}.finance-metric-icon.net{background:#3b82f626;color:#3b82f6}.finance-metric-icon.customer{background:#fbbf2426;color:#f59e0b}.finance-metric-content{display:flex;flex-direction:column;gap:2px;min-width:0}.finance-metric-label{font-size:12px;color:var(--text-muted);font-weight:500;letter-spacing:.5px}.finance-metric-value{font-size:22px;font-weight:700;color:var(--text-primary);font-variant-numeric:tabular-nums;line-height:1.2}.finance-metric-value.income{color:#22c55e}.finance-metric-value.customer-name{font-size:16px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.finance-metric-sub{font-size:11px;color:var(--text-muted)}.finance-mobile-toggle{display:none!important}@media(max-width:768px){.finance-mobile-toggle{display:inline-flex!important}}.finances-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.finance-column{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:14px;display:flex;flex-direction:column;min-width:0;min-height:180px}.revenue-column,.expenses-column{flex:1;max-width:100%}.finance-column-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border-subtle);background:transparent}.column-title{display:flex;align-items:center;gap:10px}.column-title h2{font-size:16px;font-weight:600;color:var(--text-primary);margin:0}.column-icon{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:12px}.column-icon.income{background:#22c55e26;color:#22c55e}.column-icon.expense{background:#ef444426;color:#ef4444}.column-total{font-size:14px;font-weight:700;color:#22c55e;font-variant-numeric:tabular-nums;padding:4px 10px;background:#22c55e1a;border-radius:999px}.column-total.expense{color:#ef4444;background:#ef44441a}.btn-add-transaction{width:36px;height:36px;border:none;border-radius:50%;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.column-header-actions{display:flex;align-items:center;gap:6px}.btn-filter-recurring{width:30px;height:30px;border:none;border-radius:50%;font-size:11px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;background:#ef44441f;color:#ef4444}.btn-filter-recurring i{transition:transform .3s ease}.btn-filter-recurring:hover{background:#ef444438;transform:scale(1.05)}.btn-filter-recurring.active{background:#ef4444;color:#fff}.btn-filter-recurring.active i{transform:rotate(180deg)}.btn-filter-recurring.income{background:#22c55e1f;color:#22c55e}.btn-filter-recurring.income:hover{background:#22c55e38}.btn-filter-recurring.income.active{background:#22c55e;color:#fff}.transaction-cancel-link{color:var(--accent);text-decoration:none;font-size:13px;word-break:break-all}.transaction-cancel-link:hover{text-decoration:underline}.btn-add-transaction.income{background:#22c55e;color:#fff}.btn-add-transaction.income:hover{background:#16a34a;transform:scale(1.05)}.btn-add-transaction.expense{background:#ef4444;color:#fff}.btn-add-transaction.expense:hover{background:#dc2626;transform:scale(1.05)}.transactions-column-list{padding:12px;display:flex;flex-direction:column;gap:6px;max-height:none;overflow:visible}.transactions-column-list.expanded{max-height:none;overflow:visible}.see-all-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:10px 16px;margin-top:4px;background:transparent;border:1px dashed var(--border-subtle);border-radius:8px;color:var(--text-muted);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.see-all-btn:hover{background:var(--bg-body);border-color:var(--accent);color:var(--accent)}.see-all-btn.active{border-style:solid;background:var(--accent-soft);color:var(--accent)}.see-all-btn i{font-size:10px;transition:transform .2s ease}.see-all-btn.active i{transform:rotate(180deg)}.finance-column-footer{padding:8px 12px 12px;border-top:1px solid var(--border-subtle)}.transaction-row{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:14px;margin:6px 0;box-shadow:0 4px 12px #0000000a;transition:all .18s ease}.transaction-row:hover{border-color:var(--border-medium);box-shadow:0 10px 26px #00000014;transform:translateY(-1px)}.transaction-row.expanded{border-color:var(--border-medium);box-shadow:0 12px 30px #0000001a}.transaction-row-main{display:flex;align-items:center;gap:12px;padding:12px 14px;cursor:pointer;background:transparent;border:none;border-radius:14px;transition:all .18s ease}.transaction-col-amount{display:flex;align-items:center;gap:6px;min-width:90px}.transaction-badge{display:inline-flex;align-items:center;padding:4px 8px;background:#007aff1f;color:#0a84ff;border-radius:999px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.02em}.transaction-row-subscription{border-style:dashed}.transaction-row-subscription.paused .transaction-amount{color:var(--text-muted);text-decoration:line-through;text-decoration-thickness:1px}.transaction-row-subscription.paused .transaction-from-to{color:var(--text-muted)}.transaction-col-from-to .paused-badge,.transaction-col-from-to .private-badge{margin-left:8px;flex-shrink:0;font-size:10px;padding:2px 6px;border-radius:4px;font-weight:700;text-transform:uppercase;letter-spacing:.4px}.transaction-col-from-to .paused-badge{background:var(--warning-soft);color:var(--warning)}.transaction-col-from-to .private-badge{background:#8b5cf61f;color:#8b5cf6}.transaction-row-subscription.private-sub .transaction-amount{color:var(--text-muted)}.transaction-col-from-to{display:flex;flex-direction:row;align-items:center;min-width:0;flex:1}.transaction-from-to{font-size:13px;font-weight:400;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.transaction-col-actions{display:flex;align-items:center;gap:6px;margin-left:auto}.transaction-date{font-size:12px;color:var(--text-muted);white-space:nowrap;min-width:85px}.transaction-description{font-size:14px;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}.transaction-party{font-size:12px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.transaction-party:before{content:"\2022";margin-right:8px;opacity:.5}.transaction-amount{font-size:14px;font-weight:600;font-variant-numeric:tabular-nums;text-align:left}.transaction-amount.income{color:#22c55e}.transaction-amount.expense{color:#ef4444}.transaction-recurring-indicator{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;background:transparent;color:#a855f7;border-radius:3px;font-size:9px;opacity:.8}.transaction-recurring-badge{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:#a855f726;color:#a855f7;border-radius:6px;font-size:11px}.transaction-actions{display:none}.transaction-row.expanded .transaction-col-actions .transaction-actions{display:flex;gap:6px}.transaction-action-btn{width:28px;height:28px;border:none;background:#8080801a;color:var(--text-muted);border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;transition:all .2s ease}.transaction-action-btn:hover{background:var(--primary);color:#fff}.transaction-action-btn.delete:hover{background:#ef4444}.expand-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:12px;transition:transform .2s ease}.transaction-row.expanded .expand-icon i{transform:rotate(180deg)}.transaction-row-details{display:none;padding:0 14px 12px;border-top:1px solid var(--border-subtle);background:transparent;animation:slideDown .2s ease}.transaction-row.expanded .transaction-row-details{display:block}.transaction-row.expanded .transaction-row-details .transaction-detail-grid{background:transparent;border:none;border-radius:0;padding:10px 0;margin:0;box-shadow:none}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.transaction-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding-top:12px}.transaction-action-btn{min-width:32px;height:32px;padding:0 10px;border:1px solid var(--border-subtle);background:var(--bg-surface);color:var(--text-muted);border-radius:999px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;font-size:12px;font-weight:600;transition:all .2s ease}.transaction-action-btn:hover{background:var(--accent);border-color:var(--accent);color:#fff}.transaction-action-btn.delete:hover{background:#ef4444;border-color:#ef4444;color:#fff}.transaction-row-actions{display:flex;gap:8px;padding-top:10px;margin-top:10px;padding-bottom:4px;border-top:1px solid var(--border-subtle);justify-content:flex-end}.transaction-row-actions .btn-sm{padding:8px 16px;font-size:12px;border-radius:999px;border:none;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .2s ease}.transaction-row-actions .btn-pause{background:var(--warning-soft);color:var(--warning);border:1px solid var(--warning)}.transaction-row-actions .btn-pause:hover{background:var(--warning);color:#fff}.transaction-row-actions .btn-edit{background:var(--accent-soft);color:var(--accent);border:1px solid var(--accent)}.transaction-row-actions .btn-edit:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.transaction-row-actions .btn-delete{background:#ef44441f;color:#ef4444;border:1px solid rgba(239,68,68,.35)}.transaction-row-actions .btn-delete:hover{background:#ef4444;color:#fff;border-color:#ef4444}.recurring-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;background:#a855f726;color:#a855f7;border-radius:4px;font-size:10px;font-weight:600}.column-empty-state{flex:1;display:none;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center;color:var(--text-muted)}.column-empty-state i{font-size:36px;margin-bottom:12px;opacity:.5}.column-empty-state p{font-size:14px;margin-bottom:16px}.btn-text{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border:2px dashed var(--border-subtle);background:transparent;border-radius:12px;cursor:pointer;font-size:14px;font-weight:500;color:var(--text-muted);transition:all .2s ease}.btn-text i{font-size:16px;line-height:1}.btn-text.income{color:#22c55e;border-color:#22c55e66}.btn-text.income:hover{border-color:#22c55e;background:#22c55e14}.btn-text.expense{color:#ef4444;border-color:#ef444466}.btn-text.expense:hover{border-color:#ef4444;background:#ef444414}.finances-placeholder-state{display:none;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:60px 20px;background:var(--bg-surface);border:1px dashed var(--border-subtle);border-radius:12px;margin-top:24px}.finances-placeholder-icon{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,#6366f11a,#a855f71a);display:flex;align-items:center;justify-content:center;font-size:32px;color:var(--primary);margin-bottom:20px}.finances-placeholder-state h3{font-size:18px;font-weight:600;color:var(--text-primary);margin-bottom:8px}.finances-placeholder-state p{color:var(--text-muted);margin-bottom:20px;max-width:300px}.placeholder-actions{display:flex;gap:12px}.placeholder-actions .btn-primary.income{background:#22c55e}.placeholder-actions .btn-primary.income:hover{background:#16a34a}.placeholder-actions .btn-secondary.expense{color:#ef4444;border-color:#ef4444}.placeholder-actions .btn-secondary.expense:hover{background:#ef44441a}.transaction-type-toggle{display:inline-flex;background:var(--bg-surface);border-radius:999px;padding:3px;gap:0;border:1px solid var(--border-subtle);margin:0 auto;width:fit-content}.transaction-type-toggle .type-btn{display:flex;align-items:center;gap:6px;padding:10px 20px;border:none;background:transparent;color:var(--text-muted);font-size:14px;font-weight:600;border-radius:999px;cursor:pointer;transition:all .2s ease}.transaction-type-toggle .type-btn:hover{color:var(--text-main);background:var(--bg-body)}.transaction-type-toggle .type-btn.active[data-type=income]{background:#34c759;color:#fff;box-shadow:0 2px 8px #34c7594d}.transaction-type-toggle .type-btn.active[data-type=expense]{background:#ff3b30;color:#fff;box-shadow:0 2px 8px #ff3b304d}.transaction-type-toggle .type-btn i{font-size:12px}.amount-input-wrapper{position:relative;display:flex;align-items:center}.amount-input-wrapper .currency-symbol{position:absolute;left:14px;padding-left:2px;font-size:16px;font-weight:600;color:var(--text-muted)}.amount-input-wrapper .amount-input{flex:1;padding-left:20px;font-size:18px;font-weight:600}.toggle-switch-wrapper{display:flex;align-items:center;gap:12px}.toggle-label-form{font-size:14px;color:var(--text-secondary)}body.dark-mode .finance-metric-card,body.dark-mode .finance-column{background:var(--bg-surface)}body.dark-mode .transaction-row{background:#ffffff0d}body.dark-mode .transaction-row-details{background:transparent}@media(max-width:640px){.transaction-row-main{grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:8px 12px;padding:12px 14px}.transaction-col-amount{grid-column:1;grid-row:1}.transaction-amount{font-size:15px;min-width:auto}.transaction-col-date{grid-column:2;grid-row:1}.transaction-date-short{font-size:12px}.transaction-col-from-to{grid-column:1 / -1;grid-row:2}.transaction-from-to{font-size:13px}.transaction-desc-sub{font-size:11px}.transaction-col-actions{grid-column:2;grid-row:1;gap:4px}.transaction-actions{opacity:1}.transaction-action-btn{width:26px;height:26px;font-size:11px}.expand-icon{width:20px;height:20px;font-size:10px}.transaction-detail-grid{grid-template-columns:1fr;gap:10px}.transaction-detail-item.full-width{grid-column:span 1}}@media(max-width:400px){.transaction-row-main{padding:10px 12px}.transaction-amount{font-size:14px}.transaction-from-to{font-size:12px}}body.dark-mode .transaction-type-toggle{background:var(--bg-elevated);border-color:var(--border-medium)}body.dark-mode .transaction-type-toggle .type-btn{background:transparent}body.dark-mode .transaction-type-toggle .type-btn:hover{background:var(--bg-surface)}body.dark-mode .toggle-slider{background:#ffffff1a}@media(max-width:1024px){.finances-metrics-row{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.finances-metrics-row{grid-template-columns:1fr 1fr;gap:12px}.finance-metric-card{padding:14px 16px}.finance-metric-value{font-size:18px}.finances-columns{grid-template-columns:1fr;gap:16px;display:flex;flex-direction:column}.revenue-column{order:1}.expenses-column{order:2}.finance-column{min-height:auto;width:100%}.finance-column-header{padding:12px 16px}.column-title h2{font-size:14px}.finance-column-header .column-total-label,.finance-column-header .date-range{display:none}.transactions-column-list{max-height:none}.transaction-row-main{grid-template-columns:1fr auto;padding:12px 14px}.transaction-row-main .transaction-date,.transaction-row-main .transaction-category{display:none}.transaction-row.expanded .transaction-row-main .transaction-date,.transaction-row.expanded .transaction-row-main .transaction-category{display:flex}.transaction-row-actions{flex-wrap:wrap}}@media(max-width:480px){.finances-metrics-row{grid-template-columns:1fr}.finance-metric-card{flex-direction:row;align-items:center}.transaction-type-toggle{flex-direction:column}.placeholder-actions{flex-direction:column;width:100%}.placeholder-actions button{width:100%}}.subscription-type-toggle{display:inline-flex;background:var(--bg-surface);border-radius:999px;padding:4px;gap:4px;border:1px solid var(--border-subtle)}.subscription-type-toggle .type-btn{flex:1;padding:10px 20px;border:none;background:transparent;color:var(--text-muted);font-size:14px;font-weight:600;border-radius:999px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s ease}.subscription-type-toggle .type-btn:hover{color:var(--text-main);background:var(--bg-body)}.subscription-type-toggle .type-btn.active[data-type=company]{background:var(--accent);color:#fff;box-shadow:0 2px 8px #007aff40}.subscription-type-toggle .type-btn.active[data-type=private]{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;box-shadow:0 2px 8px #3b82f64d}.form-field-hint{font-size:12px;color:var(--text-muted);margin-top:6px}body.dark-mode .subscription-type-toggle{background:var(--bg-surface)}.customers-section{margin-top:40px;padding:0}.customers-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding:0 4px}.customers-title{display:flex;align-items:center;gap:12px}.customers-icon{width:36px;height:36px;border-radius:10px;background:var(--accent-soft);display:flex;align-items:center;justify-content:center;color:var(--accent);font-size:16px}.customers-title h2{font-size:17px;font-weight:600;color:var(--text-main);margin:0}.customers-count{background:var(--accent-soft);color:var(--accent);font-size:12px;font-weight:700;padding:3px 9px;border-radius:999px;min-width:24px;text-align:center}.btn-add-customer{width:36px;height:36px;border-radius:50%;background:var(--accent);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;transition:all var(--transition-fast);flex-shrink:0}.btn-add-customer:hover{background:#06d;transform:scale(1.05)}.customers-search-row{margin-bottom:12px}.customers-search-wrapper{position:relative;display:flex;align-items:center}.customers-search-wrapper i{position:absolute;left:12px;color:var(--text-muted);font-size:13px;pointer-events:none}.customers-search-input{width:100%;padding:9px 12px 9px 36px;border:1px solid var(--border-subtle);border-radius:10px;font-size:13px;background:var(--bg-body);color:var(--text-main);transition:border-color var(--transition-fast);outline:none}.customers-search-input:focus{border-color:var(--accent)}.customers-list{display:flex;flex-direction:column;gap:6px}.customer-row{display:flex;flex-direction:column;padding:14px 16px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:14px;cursor:pointer;transition:all .18s ease;position:relative;box-shadow:0 4px 12px #0000000a}.customer-row:hover{border-color:var(--border-medium);box-shadow:0 10px 26px #00000014;transform:translateY(-1px)}.customer-row-header{display:flex;align-items:center;gap:12px;width:100%}.customer-row-info{flex:1;min-width:0}.customer-row-name{font-size:15px;font-weight:700;color:var(--text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.customer-row-meta{display:flex;align-items:center;gap:8px;margin-top:2px;font-size:12px;color:var(--text-muted)}.customer-row-meta span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.customer-row-meta .customer-meta-dot{width:3px;height:3px;border-radius:50%;background:var(--text-muted);flex-shrink:0;opacity:.5}.customer-row-revenue{text-align:right;flex-shrink:0}.customer-revenue-amount{font-size:14px;font-weight:600;color:#22c55e}.customer-revenue-label{font-size:11px;color:var(--text-muted);margin-top:1px}.customer-row-source{font-size:10px;font-weight:600;padding:2px 7px;border-radius:999px;flex-shrink:0;text-transform:uppercase;letter-spacing:.5px}.customer-row-source.source-lead{background:#a855f71a;color:#a855f7}.customer-row-source.source-manual{background:var(--accent-soft);color:var(--accent)}.customer-row-source.source-transaction{background:#22c55e1a;color:#22c55e}.customer-row-details{display:none;width:100%;padding-top:10px;margin-top:10px;border-top:1px solid var(--border-subtle)}.customer-row.expanded .customer-row-details{display:block}.customer-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px}.customer-detail-item{display:flex;flex-direction:column;gap:2px}.customer-detail-item.full-width{grid-column:1 / -1}.customer-detail-item .detail-label{font-size:11px;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.customer-detail-item .detail-value{font-size:13px;color:var(--text-main);word-break:break-word}.customer-row-actions{display:flex;gap:8px;margin-top:10px;justify-content:flex-end}.customer-row-actions .btn-sm{padding:8px 16px;font-size:12px;border-radius:999px;border:none;cursor:pointer;display:flex;align-items:center;gap:6px;font-weight:500;transition:all .2s ease}.customer-row-actions .btn-edit{background:var(--accent-soft);color:var(--accent);border:1px solid var(--accent)}.customer-row-actions .btn-edit:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.customer-row-actions .btn-delete{background:#ef44441f;color:#ef4444;border:1px solid rgba(239,68,68,.35)}.customer-row-actions .btn-delete:hover{background:#ef4444;color:#fff;border-color:#ef4444}.customers-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center;color:var(--text-muted)}.customers-empty-state i{font-size:32px;margin-bottom:12px;opacity:.4}.customers-empty-state p{font-size:14px;font-weight:500;margin:0 0 6px;color:var(--text-main)}.customers-empty-hint{font-size:12px;color:var(--text-muted);margin-bottom:14px;max-width:300px}body.dark-mode .customers-section{background:var(--bg-surface);border-color:var(--border-subtle)}body.dark-mode .customer-row{background:var(--bg-base)}body.dark-mode .customers-search-input{background:var(--bg-base);border-color:var(--border-subtle);color:var(--text-main)}.accent-color-picker{display:flex;gap:12px;flex-wrap:wrap;padding:8px 0}.accent-color-option{width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;background:transparent;border:2px solid transparent}.accent-color-option:hover{transform:scale(1.08)}.accent-color-option.selected{border-color:var(--text-muted)}.accent-color-swatch{width:32px;height:32px;border-radius:50%;box-shadow:0 2px 8px #00000026}body.dark-mode .accent-color-option.selected{border-color:#fff6}body.dark-mode .accent-color-swatch{box-shadow:0 2px 8px #0006}.date-chip{display:inline-flex;align-items:center;padding:3px 10px;border-radius:12px;font-size:.82rem;font-weight:600;white-space:nowrap;transition:all .15s ease}.date-chip-overdue{background:#ff3b301f;color:#dc2626;border:1px solid rgba(255,59,48,.25)}.date-chip-today{background:#ff3b301f;color:#ff3b30;border:1px solid rgba(255,59,48,.3)}.date-chip-tomorrow{background:#ff95001f;color:#d97706;border:1px solid rgba(255,149,0,.3)}.date-chip-soon{background:#ffcc0026;color:#a16207;border:1px solid rgba(255,204,0,.35)}body.dark-mode .date-chip-overdue,body.dark-mode .date-chip-today{background:#ff453a2e;color:#ff6b6b;border-color:#ff453a59}body.dark-mode .date-chip-tomorrow{background:#ff9f0a2e;color:#ffb347;border-color:#ff9f0a59}body.dark-mode .date-chip-soon{background:#ffd60a2e;color:#ffd93d;border-color:#ffd60a59}#eventColorHex{background:transparent!important;border:none!important;border-radius:0!important;box-shadow:none!important;padding:0!important;font:600 15px/1 -apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,sans-serif!important;letter-spacing:.4px!important;text-transform:uppercase!important;color:#000!important;width:auto!important;height:auto!important;outline:none!important}#eventColorHex:focus{background:transparent!important;border:none!important;box-shadow:none!important}.unified-modal input[type=text]:not(#eventColorHex),.unified-modal input[type=email],.unified-modal input[type=password],.unified-modal input[type=number],.unified-modal input[type=tel],.unified-modal input[type=url],.unified-modal input[type=date],.unified-modal input[type=time],.unified-modal input[type=datetime-local],.unified-modal input[type=month],.unified-modal input[type=week],.unified-modal input[type=search],.unified-modal select,.unified-modal textarea,.modal-overlay input[type=text],.modal-overlay input[type=email],.modal-overlay input[type=password],.modal-overlay input[type=number],.modal-overlay input[type=tel],.modal-overlay input[type=url],.modal-overlay input[type=date],.modal-overlay input[type=time],.modal-overlay input[type=datetime-local],.modal-overlay select,.modal-overlay textarea{background:var(--bg-surface)!important;border:1px solid var(--border-subtle)!important;border-radius:14px!important;box-shadow:0 4px 12px #0000000a!important;padding:14px 16px!important;font-size:15px!important;color:var(--text-main)!important;transition:all .18s ease!important;outline:none!important;width:100%!important;box-sizing:border-box!important}.unified-modal input:hover,.unified-modal select:hover,.unified-modal textarea:hover,.modal-overlay input:hover,.modal-overlay select:hover,.modal-overlay textarea:hover{border-color:var(--border-medium)!important;box-shadow:0 6px 16px #0000000f!important;transform:translateY(-1px)!important}.unified-modal input:focus,.unified-modal select:focus,.unified-modal textarea:focus,.modal-overlay input:focus,.modal-overlay select:focus,.modal-overlay textarea:focus{border-color:var(--accent)!important;box-shadow:0 6px 20px #0070f31f,0 0 0 3px var(--accent-soft)!important;transform:translateY(-1px)!important}.unified-modal input::placeholder,.unified-modal textarea::placeholder,.modal-overlay input::placeholder,.modal-overlay textarea::placeholder{color:var(--text-muted)!important;opacity:.7!important}.unified-modal select,.modal-overlay select{appearance:none!important;-webkit-appearance:none!important;-moz-appearance:none!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 14px center!important;background-size:16px!important;padding-right:44px!important;cursor:pointer!important}.unified-modal select:focus,.modal-overlay select:focus{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%233b82f6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E")!important}.unified-modal textarea,.modal-overlay textarea{min-height:100px!important;resize:vertical!important;line-height:1.6!important}body.dark-mode .unified-modal input,body.dark-mode .unified-modal select,body.dark-mode .unified-modal textarea,body.dark-mode .modal-overlay input,body.dark-mode .modal-overlay select,body.dark-mode .modal-overlay textarea{background:var(--bg-surface)!important;border-color:var(--border-subtle)!important;color:#fff!important}body.dark-mode .unified-modal input:hover,body.dark-mode .unified-modal select:hover,body.dark-mode .unified-modal textarea:hover,body.dark-mode .modal-overlay input:hover,body.dark-mode .modal-overlay select:hover,body.dark-mode .modal-overlay textarea:hover{border-color:var(--border-medium)!important;box-shadow:0 6px 16px #00000026!important}body.dark-mode .unified-modal input:focus,body.dark-mode .unified-modal select:focus,body.dark-mode .unified-modal textarea:focus,body.dark-mode .modal-overlay input:focus,body.dark-mode .modal-overlay select:focus,body.dark-mode .modal-overlay textarea:focus{border-color:var(--accent)!important;box-shadow:0 6px 20px #0a84ff33,0 0 0 3px #0a84ff26!important}body.dark-mode .unified-modal select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%239ca3af' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E")!important}.unified-modal .unified-form-label,.unified-modal label,.modal-overlay label{display:block!important;font-size:13px!important;font-weight:500!important;color:#0006!important;margin-bottom:8px!important;text-transform:none!important;letter-spacing:0!important}body.dark-mode .unified-modal .unified-form-label,body.dark-mode .unified-modal label,body.dark-mode .modal-overlay label{color:#ffffff61!important}.unified-modal .unified-form-group,.unified-modal .form-group,.modal-overlay .form-group{margin-bottom:18px!important}.unified-modal input[type=date]::-webkit-calendar-picker-indicator,.unified-modal input[type=time]::-webkit-calendar-picker-indicator,.unified-modal input[type=datetime-local]::-webkit-calendar-picker-indicator,.modal-overlay input[type=date]::-webkit-calendar-picker-indicator,.modal-overlay input[type=time]::-webkit-calendar-picker-indicator,.modal-overlay input[type=datetime-local]::-webkit-calendar-picker-indicator{cursor:pointer!important;filter:opacity(.6)!important;transition:filter .15s ease!important}.unified-modal input[type=date]:hover::-webkit-calendar-picker-indicator,.unified-modal input[type=time]:hover::-webkit-calendar-picker-indicator,.unified-modal input[type=datetime-local]:hover::-webkit-calendar-picker-indicator,.modal-overlay input[type=date]:hover::-webkit-calendar-picker-indicator,.modal-overlay input[type=time]:hover::-webkit-calendar-picker-indicator,.modal-overlay input[type=datetime-local]:hover::-webkit-calendar-picker-indicator{filter:opacity(1)!important}body.dark-mode .unified-modal input[type=date]::-webkit-calendar-picker-indicator,body.dark-mode .unified-modal input[type=time]::-webkit-calendar-picker-indicator,body.dark-mode .unified-modal input[type=datetime-local]::-webkit-calendar-picker-indicator,body.dark-mode .modal-overlay input[type=date]::-webkit-calendar-picker-indicator,body.dark-mode .modal-overlay input[type=time]::-webkit-calendar-picker-indicator,body.dark-mode .modal-overlay input[type=datetime-local]::-webkit-calendar-picker-indicator{filter:invert(1) opacity(.6)!important}body.dark-mode .unified-modal input[type=date]:hover::-webkit-calendar-picker-indicator,body.dark-mode .unified-modal input[type=time]:hover::-webkit-calendar-picker-indicator,body.dark-mode .unified-modal input[type=datetime-local]:hover::-webkit-calendar-picker-indicator,body.dark-mode .modal-overlay input[type=date]:hover::-webkit-calendar-picker-indicator,body.dark-mode .modal-overlay input[type=time]:hover::-webkit-calendar-picker-indicator,body.dark-mode .modal-overlay input[type=datetime-local]:hover::-webkit-calendar-picker-indicator{filter:invert(1) opacity(1)!important}.unified-modal input[type=checkbox],.unified-modal input[type=radio],.modal-overlay input[type=checkbox],.modal-overlay input[type=radio]{width:20px!important;height:20px!important;padding:0!important;border:2px solid var(--border-medium)!important;border-radius:6px!important;background:var(--bg-surface)!important;cursor:pointer!important;box-shadow:none!important;transform:none!important;accent-color:var(--accent)!important}.unified-modal input[type=radio],.modal-overlay input[type=radio]{border-radius:50%!important}.unified-modal input[type=checkbox]:checked,.unified-modal input[type=radio]:checked,.modal-overlay input[type=checkbox]:checked,.modal-overlay input[type=radio]:checked{background:var(--accent)!important;border-color:var(--accent)!important}.unified-modal input[type=color],.modal-overlay input[type=color]{padding:6px!important;height:52px!important;cursor:pointer!important}.unified-modal input[type=color]::-webkit-color-swatch-wrapper,.modal-overlay input[type=color]::-webkit-color-swatch-wrapper{padding:4px!important}.unified-modal input[type=color]::-webkit-color-swatch,.modal-overlay input[type=color]::-webkit-color-swatch{border-radius:8px!important;border:none!important}.unified-modal input[type=file],.modal-overlay input[type=file]{padding:12px!important;cursor:pointer!important}.unified-modal input[type=file]::file-selector-button,.modal-overlay input[type=file]::file-selector-button{background:linear-gradient(135deg,var(--accent),var(--accent-hover))!important;color:#fff!important;border:none!important;padding:8px 16px!important;border-radius:8px!important;font-weight:500!important;cursor:pointer!important;margin-right:12px!important;transition:all .18s ease!important}.unified-modal input[type=file]::file-selector-button:hover,.modal-overlay input[type=file]::file-selector-button:hover{transform:scale(1.02)!important;box-shadow:0 4px 12px var(--accent-soft)!important}.unified-modal input:disabled,.unified-modal select:disabled,.unified-modal textarea:disabled,.modal-overlay input:disabled,.modal-overlay select:disabled,.modal-overlay textarea:disabled{opacity:.6!important;cursor:not-allowed!important;background:var(--bg-muted)!important;transform:none!important}.unified-modal input.error,.unified-modal select.error,.unified-modal textarea.error,.unified-modal .has-error input,.unified-modal .has-error select,.unified-modal .has-error textarea,.modal-overlay input.error,.modal-overlay select.error,.modal-overlay textarea.error{border-color:#ef4444!important;box-shadow:0 4px 12px #ef444414,0 0 0 3px #ef44441a!important}.unified-modal input.success,.unified-modal select.success,.unified-modal textarea.success,.modal-overlay input.success,.modal-overlay select.success,.modal-overlay textarea.success{border-color:#22c55e!important;box-shadow:0 4px 12px #22c55e14,0 0 0 3px #22c55e1a!important}.unified-modal .input-with-icon,.modal-overlay .input-with-icon{position:relative!important}.unified-modal .input-with-icon input,.modal-overlay .input-with-icon input{padding-left:44px!important}.unified-modal .input-with-icon .input-icon,.modal-overlay .input-with-icon .input-icon{position:absolute!important;left:16px!important;top:50%!important;transform:translateY(-50%)!important;color:var(--text-muted)!important;pointer-events:none!important;z-index:1!important}.unified-modal .input-row,.unified-modal .form-row,.modal-overlay .input-row,.modal-overlay .form-row{display:flex!important;gap:12px!important}.unified-modal .input-row>*,.unified-modal .form-row>*,.modal-overlay .input-row>*,.modal-overlay .form-row>*{flex:1!important}.unified-modal label.required:after,.modal-overlay label.required:after{content:" *"!important;color:#ef4444!important}.unified-modal .form-hint,.unified-modal .helper-text,.modal-overlay .form-hint,.modal-overlay .helper-text{font-size:12px!important;color:var(--text-muted)!important;margin-top:6px!important}.unified-modal .form-error,.unified-modal .error-message,.modal-overlay .form-error,.modal-overlay .error-message{font-size:12px!important;color:#ef4444!important;margin-top:6px!important;display:flex!important;align-items:center!important;gap:4px!important}@keyframes modalInputFocus{0%{box-shadow:0 4px 12px #0000000a,0 0 0 0 var(--accent-soft)}50%{box-shadow:0 6px 20px #0070f31f,0 0 0 4px var(--accent-soft)}to{box-shadow:0 6px 20px #0070f31f,0 0 0 3px var(--accent-soft)}}.unified-modal input:focus,.unified-modal select:focus,.unified-modal textarea:focus{animation:modalInputFocus .3s ease forwards!important}.btn-primary,.btn-secondary,.btn-danger,.btn,button[class*=btn],.panel-action-btn,.modal-btn,.batch-btn,.empty-state-cta{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:768px){.btn-primary,.btn-secondary,.btn-danger{padding:10px 16px;font-size:13px;gap:6px}.section-header-actions{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;gap:8px;padding-bottom:4px}.section-header-actions button{flex:0 0 auto;min-width:auto;white-space:nowrap}.modal-actions,.task-modal-actions,.unified-modal-footer{flex-wrap:nowrap;gap:8px}.modal-actions button,.task-modal-actions button,.unified-modal-footer button{flex:1;min-width:0;padding:10px 14px;font-size:13px}.task-footer-spacer{flex:0 0 0!important;width:0}.panel-action-btn{padding:8px 12px;font-size:12px}.batch-btn{padding:6px 10px;font-size:11px}.metrics-add-metric-btn{padding:10px 14px;font-size:12px}.metrics-edit-btn-header{padding:8px 12px;font-size:12px}.finance-add-btn,.add-transaction-btn,.subscription-add-btn{padding:8px 14px;font-size:12px}.calendar-add-btn{width:36px;height:36px}.view-toggle-btn{padding:8px 16px;font-size:13px;min-height:auto;min-width:auto}.empty-state-cta{padding:10px 16px;font-size:13px}.toast-close{padding:4px;min-width:24px}.mobile-icon-only span:not(.sr-only){display:none}.mobile-icon-only{padding:10px;gap:0}}@media(max-width:480px){.btn-primary,.btn-secondary,.btn-danger{padding:8px 12px;font-size:12px;gap:4px}.section-header{gap:12px}.section-header-actions{flex-direction:column;width:100%}.section-header-actions button{width:100%;justify-content:center}.modal-actions,.task-modal-actions{flex-direction:column}.modal-actions button,.task-modal-actions button{width:100%}.filter-btn,.view-toggle-btn{padding:7px 12px;font-size:12px;min-height:auto;min-width:auto}.teammate-actions{gap:4px}.teammate-actions button{padding:6px 8px;font-size:11px}}button i+span,button span+i,.btn i+span,.btn span+i{white-space:nowrap}.pending-requests-btn{white-space:nowrap;padding:8px 12px}@media(max-width:768px){.pending-requests-btn{font-size:12px;padding:6px 10px}.pending-requests-btn span{display:none}.pending-requests-btn:after{content:attr(data-count)}}.settings-section button{white-space:nowrap}@media(max-width:768px){.settings-row{flex-direction:column;align-items:flex-start;gap:8px}.settings-row button{width:100%;justify-content:center}}.team-action-btn{white-space:nowrap}@media(max-width:768px){.team-code-section,.join-team-section{flex-direction:column}.team-code-section button,.join-team-section button{width:100%}}@media(max-width:768px){.modal{z-index:99999;padding-bottom:calc(var(--nav-safe-bottom) + 16px)}.modal-content,.task-modal-content{max-height:calc(100vh - var(--bottom-nav-height) - env(safe-area-inset-bottom) - 32px);margin-bottom:auto}.unified-modal-container{width:100%!important;max-height:80vh!important;border-radius:24px 24px 0 0!important;margin-bottom:0!important;margin-left:0!important;margin-right:0!important;animation:bottomSheetSlideUp .3s cubic-bezier(.25,1,.5,1)}.unified-modal-container.closing{animation:bottomSheetSlideDown .25s cubic-bezier(.25,1,.5,1) forwards}@keyframes bottomSheetSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes bottomSheetSlideDown{0%{transform:translateY(0)}to{transform:translateY(100%)}}.modal-actions,.task-modal-actions,.unified-modal-footer,.modal-footer{position:sticky;bottom:0;background:var(--bg-surface);padding:12px 16px;margin:0 -16px -16px;border-top:1px solid var(--border-subtle);z-index:10}body.modal-open .sidebar{display:none!important}.overview-stats{gap:10px;margin-bottom:16px}.stat-card{padding:12px;gap:10px;border-radius:12px}.stat-icon{width:36px;height:36px;font-size:16px}.stat-number{font-size:20px}.stat-label{font-size:11px}.overview-two-col{grid-template-columns:1fr;gap:16px}.overview-section{padding:14px}.overview-section-header h3{font-size:15px}.activity-item{padding:12px;gap:10px}.activity-icon{width:36px;height:36px;font-size:14px}.activity-content{font-size:13px}.activity-time{font-size:11px}.teammate-card{padding:12px;gap:10px}.teammate-avatar{width:36px;height:36px;font-size:14px}.teammate-name{font-size:14px}.teammate-role{font-size:11px}.chat-message{padding:10px 12px;max-width:85%}.chat-message-content{font-size:14px}.chat-input-container{padding:10px 12px}.calendar-container{padding:12px}.calendar-day{min-height:40px;font-size:13px}.event-item{padding:10px;gap:8px}.spreadsheet-panel-header{padding:12px}.sheet-title-input{font-size:16px}.settings-card{padding:16px}.settings-card-header h3{font-size:15px}.form-group label{font-size:13px}.form-group input,.form-group select,.form-group textarea{font-size:14px;padding:10px 12px}.transaction-row{padding:10px 12px}.transaction-info{gap:8px}.transaction-icon{width:32px;height:32px;font-size:12px}.transaction-name{font-size:13px}.transaction-date{font-size:11px}.transaction-amount{font-size:14px}body.modal-open{overflow:hidden!important;overscroll-behavior-y:none}}@media(max-width:480px){.content-section{overflow-y:auto!important;overflow-x:hidden;max-width:100%;height:auto;min-height:0;padding-left:10px;padding-right:10px}.overview-section,.overview-two-col{max-width:100%;overflow:visible;height:auto;max-height:none}.calendar-container,.calendar-grid,.week-view-container{max-width:100%;overflow-x:auto}.main-content{overflow-x:hidden;overflow-y:visible}.overview-stats{grid-template-columns:1fr 1fr;gap:8px}.stat-card{padding:10px}.stat-icon{width:32px;height:32px;font-size:14px}.stat-number{font-size:18px}.overview-section{padding:12px}.overview-section-header{margin-bottom:10px}.overview-section-header h2,.overview-section-header h3{font-size:14px}.task-list{padding:8px;gap:6px}.task-item{padding:10px}.task-title{font-size:13px}.upcoming-events{padding:8px}.event-item{padding:8px;gap:6px}.event-date{min-width:36px}.event-day{font-size:16px}.event-month{font-size:10px}.event-title{font-size:13px}.calendar-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.calendar-grid{min-width:320px;overflow-x:auto}.calendar-day{min-height:50px;min-width:44px;padding:2px}.calendar-day-header{min-width:44px}.day-number{font-size:10px;width:18px;height:18px}.month-event-item{padding:1px 3px;font-size:8px}.calendar-day-header{padding:6px 2px;font-size:9px}.week-view-container{margin:0;width:100%;max-width:100%;overflow-x:auto}.week-time-col{width:35px;min-width:35px}.week-time-label{font-size:9px}.finances-metrics-row{grid-template-columns:1fr 1fr;gap:8px}.finance-metric-card{padding:10px}.finance-metric-value{font-size:16px}.subscription-row{padding:10px}.subscription-logo{width:28px;height:28px;font-size:12px}.subscription-name{font-size:12px}.subscription-amount{font-size:13px}.activity-item{padding:10px;gap:8px}.activity-icon{width:32px;height:32px;font-size:12px}.activity-content{font-size:12px}.teammate-card{padding:10px}.teammate-avatar{width:32px;height:32px}.teammate-name{font-size:13px}.chat-message{padding:8px 10px;max-width:90%}.chat-message-content{font-size:13px}.doc-item{padding:10px}.doc-icon{width:32px;height:32px}.spreadsheet-card{padding:12px}.section-header h1{font-size:20px}.section-subtitle{font-size:12px}.search-wrapper{width:auto;max-width:none}.search-bar{width:40px;height:40px;padding:0;border-radius:50%;justify-content:center;align-items:center;overflow:hidden;transition:width .3s ease,border-radius .3s ease,padding .3s ease;cursor:pointer;position:relative}.search-bar i.fa-search{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);margin:0}.search-bar.expanded i.fa-search{position:static;transform:none}.search-bar input{width:0;opacity:0;transition:width .3s ease,opacity .3s ease}.search-bar .search-clear{display:none}.search-bar.expanded{width:200px;border-radius:999px;padding:0 14px;cursor:text}.search-bar.expanded input{width:100%;opacity:1}.search-bar.expanded .search-clear{display:flex}}@media(max-width:900px){.calendar-container{overflow-x:auto!important;overflow-y:visible!important;-webkit-overflow-scrolling:touch!important}.calendar-grid{display:grid!important;grid-template-columns:repeat(7,140px)!important;grid-auto-rows:auto!important;gap:4px!important;padding:6px!important;width:max-content!important;min-width:992px!important}.calendar-day-header{min-width:140px!important;width:140px!important;padding:6px!important}#calendarDays{display:contents!important}#calendarDays>.calendar-day{min-width:140px!important;width:140px!important;min-height:140px!important;height:140px!important;border-radius:12px!important;padding:8px!important}.calendar-grid:has(.day-agenda){display:block!important;width:100%!important;min-width:100%!important;padding:0!important;overflow:visible!important}#calendarDays:has(.day-agenda){display:block!important;width:100%!important}.day-agenda{display:flex!important;flex-direction:column!important;width:100%!important;min-height:60vh!important}.week-colview{display:none!important}}.calendar-grid:has(.day-agenda),.calendar-grid:has(.week-colview),.calendar-grid:has(.week-view-scroll-container){display:block!important;width:100%!important;padding:0!important;overflow:visible!important}#calendarDays:has(.day-agenda),#calendarDays:has(.week-colview),#calendarDays:has(.week-view-scroll-container){display:block!important;width:100%!important}.week-view-scroll-container{width:100%!important;max-height:70vh!important;overflow:auto!important}.day-agenda{width:100%}@media(max-width:480px){.calendar-grid{grid-template-columns:repeat(7,100px)!important}.calendar-day-header{min-width:100px!important;width:100px!important}#calendarDays>.calendar-day{min-width:100px!important;width:100px!important;min-height:100px!important;height:100px!important}}.project-tile-wrapper{grid-column:span 1}.spreadsheet-card.project-tile-card,.doc-card.project-tile-card{min-height:160px;height:auto;max-height:none;overflow:visible;padding-bottom:44px}.spreadsheet-card.project-tile-card:hover,.doc-card.project-tile-card:hover{transform:none!important;box-shadow:none!important;border-color:var(--border-subtle)!important}.project-tile{display:flex;flex-direction:column;gap:4px;padding:20px 20px 44px;min-height:160px;height:auto;max-height:none;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:16px;transition:all .25s cubic-bezier(.25,.46,.45,.94);position:relative}.project-tile:hover{transform:none!important;box-shadow:none!important;border-color:var(--border-subtle)!important}.project-tile-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.project-tile-title{font-size:15px;font-weight:600;color:var(--text-primary);margin:0}.project-tile-add{display:inline-flex;align-items:center;justify-content:center;gap:0;width:28px;height:28px;padding:0;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:50%;color:var(--text-muted);cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1)}.project-tile-add:hover{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.project-tile-add svg{width:12px;height:12px;stroke:currentColor;stroke-width:2.5}.project-tile-list{display:flex;overflow:hidden;flex:1;min-height:0;margin-left:-6px;touch-action:pan-y;cursor:grab}.project-tile-list:active{cursor:grabbing}.project-tile-page{display:none;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto;gap:6px;width:100%;flex-shrink:0}.project-tile-page.active{display:grid}.doc-card.project-tile-card .project-tile-page{gap:10px}.project-tile-nav{position:absolute;left:0;right:0;bottom:10px;display:flex;align-items:center;justify-content:center;gap:8px;padding-top:0;margin-top:0}.project-tile-nav-btn{width:24px;height:24px;border:none;background:transparent;color:var(--text-muted);border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.project-tile-nav-btn:hover:not(:disabled){background:var(--accent-soft);color:var(--accent)}.project-tile-nav-btn:disabled{opacity:.3;cursor:default}.project-tile-nav-btn svg{width:14px;height:14px}.project-tile-nav-dots{display:flex;gap:4px}.project-tile-dot{width:6px;height:6px;border-radius:50%;background:var(--border-medium);transition:all .15s ease}.project-tile-dot.active{background:var(--accent);width:12px;border-radius:3px}.project-tile-empty{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:8px 0}.project-tile-empty-text{font-size:13px;color:var(--text-muted);margin:0}.project-tile-create-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:#007aff;color:#fff;border:none;border-radius:999px;font-size:13px;font-weight:500;cursor:pointer;transition:opacity .15s ease}.project-tile-create-btn:hover{opacity:.85}.project-tile-create-btn svg{width:14px;height:14px;stroke:currentColor}.project-badge{--project-color: #007aff;display:flex;flex-direction:row;align-items:center;gap:6px;padding:6px 8px;background:transparent;border:none;border-radius:10px;cursor:pointer;transition:background .15s ease;text-align:left;width:100%;max-width:none;justify-self:start;min-height:0}.project-badge:hover{background:#0000000a}.project-badge.active{background:color-mix(in srgb,var(--project-color) 12%,transparent)}.project-badge-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0;border-radius:6px;background:color-mix(in srgb,var(--project-color) 15%,transparent);color:var(--project-color)}.project-badge-icon svg{width:10px;height:10px;stroke:currentColor}.project-badge-name{font-size:13px;font-weight:500;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;max-width:100%}.project-badge.active .project-badge-name{color:var(--project-color);font-weight:600}.project-badge-lock{font-size:10px;color:var(--text-tertiary);margin-left:2px;flex-shrink:0}.project-badge-check{display:none}.project-badge.project-overflow{justify-content:center}.project-badge.project-overflow .project-badge-name{font-size:11px;color:var(--text-muted)}.project-overflow-menu{position:absolute;z-index:1000;min-width:180px;max-width:240px;padding:6px;background:#fff;border:1px solid var(--border-subtle);border-radius:12px;box-shadow:0 4px 24px #0000001f}.project-overflow-item{--project-color: #007aff;display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;background:transparent;border:none;border-radius:8px;cursor:pointer;transition:background .15s ease;text-align:left}.project-overflow-item:hover{background:#0000000a}.project-overflow-item.active{background:color-mix(in srgb,var(--project-color) 12%,transparent)}.project-overflow-item .project-badge-icon{width:22px;height:22px}.project-overflow-item .project-badge-icon svg{width:11px;height:11px}.project-overflow-item .project-badge-name{font-size:13px}.project-overflow-item.active .project-badge-name{color:var(--project-color);font-weight:600}.project-modal{position:fixed;inset:0;z-index:100000;display:none;align-items:center;justify-content:center;padding:20px;background:#0006}.project-modal.active{display:flex}.project-modal-content{width:100%;max-width:480px;background:#fff;border-radius:14px;box-shadow:0 4px 24px #0000001f;overflow:hidden}.project-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid rgba(0,0,0,.06)}.project-modal-title{font-size:17px;font-weight:600;color:#000;margin:0}.project-modal-close{width:28px;height:28px;border-radius:50%;border:none;background:#0000000d;color:#00000080;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:opacity .15s ease}.project-modal-close:hover{opacity:.7}.project-modal-close svg{width:14px;height:14px;stroke:currentColor}.project-modal-body{padding:20px 24px;display:flex;flex-direction:column;gap:20px;overflow:visible;position:relative;z-index:2}.project-form-group{display:flex;flex-direction:column;gap:8px}.project-form-label{font-size:13px;font-weight:500;color:var(--text-secondary)}.project-form-input{width:100%;padding:12px 14px;background:#f5f5f7;border:1px solid transparent;border-radius:10px;font-size:15px;color:var(--text-primary);transition:all .15s ease;outline:none}.project-form-input::placeholder{color:var(--text-muted)}.project-form-input:focus{background:#fff;border-color:#007aff;box-shadow:0 0 0 3px #007aff1a}.project-icon-grid{display:flex;flex-wrap:wrap;gap:8px}.project-icon-option{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#0000000a;border:2px solid transparent;border-radius:10px;cursor:pointer;transition:all .15s ease;color:var(--text-secondary)}.project-icon-option svg{width:18px;height:18px;stroke:currentColor}.project-icon-option:hover{background:#007aff14;color:#007aff}.project-icon-option.selected{background:#007aff1a;border-color:#007aff;color:#007aff}.project-color-grid{display:flex;flex-wrap:wrap;gap:10px}.project-color-swatch{width:28px;height:28px;border-radius:50%;border:2px solid transparent;background:var(--swatch-color);cursor:pointer;transition:transform .1s ease}.project-color-swatch:hover{transform:scale(1.1)}.project-color-swatch.selected{border-color:var(--text-primary);box-shadow:0 0 0 2px var(--bg-surface)}.project-modal .unified-modal-footer{position:relative;z-index:1}.project-modal-footer{display:flex;justify-content:flex-end;align-items:center;gap:10px;padding:16px 24px;border-top:1px solid rgba(0,0,0,.06);position:relative;z-index:1}.project-modal-footer .modal-footer-spacer{flex:1}.unified-btn-danger-outline{background:transparent;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.unified-btn-danger-outline:hover{background:#ef444414;border-color:#ef444480}.project-edit-btn{background:transparent;border:none;width:32px;height:32px;border-radius:6px;cursor:pointer;color:var(--text-muted, #666666);transition:all .15s ease;display:inline-flex;align-items:center;justify-content:center}.project-edit-btn i{font-size:14px!important;color:inherit!important;transition:color .15s ease}.project-edit-btn:hover{background:#0000000f;color:var(--text-main, #333333)}.project-edit-btn:hover i{color:var(--text-main, #333333)!important}body.dark-mode .project-edit-btn{color:var(--text-muted, #999999)}body.dark-mode .project-edit-btn i{color:inherit!important}body.dark-mode .project-edit-btn:hover{background:#ffffff1a;color:var(--text-main, #ffffff)}body.dark-mode .project-edit-btn:hover i{color:inherit!important}.project-title-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;background:var(--project-color, var(--accent));color:#fff;margin-right:10px}.project-title-icon i{font-size:14px}.project-title-icon svg{width:14px;height:14px;fill:none;stroke:currentColor}.project-title-text{vertical-align:middle}.project-back-btn.icon-only{background:transparent;border:none;color:var(--text-muted);font-size:16px;cursor:pointer;width:32px;height:32px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;transition:all .15s ease}.project-back-btn.icon-only:hover{background:var(--bg-hover, rgba(0, 0, 0, .05));color:var(--text-main)}#projectViewTitle{display:flex;align-items:center}.project-icon-mini{width:18px;height:18px;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.project-icon-mini svg{width:10px;height:10px;fill:#fff}#projectAssignModal .calendar-view-toggle{display:flex;width:100%}#projectAssignModal .view-toggle-btn{flex:1;justify-content:center}.input-type-toggle{display:flex;flex-wrap:wrap;width:100%;margin-left:0}.input-type-toggle .view-toggle-btn{flex:1 1 auto;min-width:fit-content;padding:8px 12px;font-size:12px;justify-content:center;text-align:center}.input-type-toggle .view-toggle-btn i{font-size:11px}.input-type-toggle .view-toggle-btn span{font-size:12px}@media(max-width:600px){.input-type-toggle{gap:4px}.input-type-toggle .view-toggle-btn{padding:6px 10px;font-size:11px}.input-type-toggle .view-toggle-btn span{display:none}.input-type-toggle .view-toggle-btn i{margin:0}}.dark-mode .project-tile{background:var(--bg-surface);border-color:var(--border-subtle)}.dark-mode .project-badge:hover{background:#ffffff0f}.dark-mode .project-badge.active,.dark-mode .project-badge-icon{background:color-mix(in srgb,var(--project-color) 20%,transparent)}.dark-mode .project-badge-name,.dark-mode .project-overflow-item .project-badge-name{color:var(--text-main)}.dark-mode .project-overflow-menu{background:#1c1c1e;border-color:#ffffff1a}.dark-mode .project-modal-content{background:#1c1c1e}.dark-mode .project-modal-header,.dark-mode .project-modal-footer{border-color:#ffffff14}.dark-mode .project-modal-title{color:#fff}.dark-mode .project-modal-close{background:#ffffff1a;color:#fff9}.dark-mode .project-form-input{background:#ffffff14;color:#fff}.dark-mode .project-form-input:focus{background:#ffffff1f}.dark-mode .project-icon-option{background:#ffffff14}.dark-mode .project-color-swatch.selected{border-color:#fff}@media(max-width:768px){.project-modal-content{max-width:100%;margin:10px}.project-modal-body{padding:16px 20px}.project-modal-footer{padding:14px 20px}}.transaction-category-dropdown{position:relative;width:100%}body.dark-mode .transaction-category-dropdown .custom-dropdown-trigger{background:var(--bg-surface);border-color:var(--border-subtle)}body.dark-mode .transaction-category-dropdown .custom-dropdown-menu{background:#2c2c2e;border-color:var(--border-medium)}.transaction-party-menu{min-width:100%}.party-menu-search{padding:8px 10px;border-bottom:1px solid var(--border-subtle);position:sticky;top:0;background:#fff;z-index:1;border-radius:10px 10px 0 0}body.dark-mode .party-menu-search{background:#2c2c2e;border-color:var(--border-medium)}.party-search-input{width:100%;border:1px solid var(--border-subtle);border-radius:6px;padding:6px 10px;font-size:13px;font-weight:500;outline:none;background:var(--bg-secondary);color:var(--text-main);box-sizing:border-box;transition:border-color .15s ease}.party-search-input:focus{border-color:var(--accent)}body.dark-mode .party-search-input{background:var(--bg-tertiary);border-color:var(--border-subtle);color:var(--text-main)}.color-picker-inline{display:flex;align-items:center;gap:12px;padding:6px 12px 6px 0;background:var(--bg-surface);border:2px solid var(--border-medium);border-radius:50px;width:fit-content;height:48px;box-sizing:border-box}.color-picker-inner-pill{display:flex;align-items:center;gap:8px;padding:0 10px;background:none;border:2px solid var(--border-subtle);border-radius:50px;position:relative;height:100%;box-sizing:border-box;min-height:48px}.color-picker-current-swatch{width:28px;height:28px;border-radius:50%;flex-shrink:0;box-shadow:0 1px 3px #00000026;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.color-picker-current-swatch:hover{transform:scale(1.05);box-shadow:0 2px 8px #0003}.color-picker-native{position:absolute;left:6px;top:50%;transform:translateY(-50%);width:28px;height:28px;opacity:0;cursor:pointer;border:none;padding:0}.color-picker-recent{display:flex;align-items:center;gap:8px}.color-picker-recent-btn{width:28px;height:28px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:all .15s ease;box-shadow:0 1px 3px #0000001f;padding:0}.color-picker-recent-btn:hover{box-shadow:0 3px 10px #0003}.color-picker-recent-btn:active{transform:scale(1.05)}.color-picker-recent-btn.selected{border-color:var(--text-main)}body.dark-mode .color-picker-inline{background:var(--bg-surface);border-color:var(--border-medium)}body.dark-mode .color-picker-inner-pill{background:#0003;border-color:var(--border-medium)}body.dark-mode .color-picker-current-swatch{box-shadow:0 1px 3px #0000004d}body.dark-mode .color-picker-current-swatch:hover{box-shadow:0 2px 8px #0006}body.dark-mode .color-picker-recent-btn{box-shadow:0 1px 3px #0000004d}body.dark-mode .color-picker-recent-btn:hover{box-shadow:0 3px 10px #0006}.color-picker-inline.narrow{width:100%;max-width:100%}.color-picker-inline.narrow .color-picker-inner-pill{min-width:88px;padding:0 8px;gap:6px}.color-picker-inline.wide .color-picker-inner-pill{min-width:120px;padding:0 16px}.color-picker-inline.preset-only{width:fit-content}.color-picker-inline.preset-only .color-picker-inner-pill{min-width:40px;padding:0 10px;gap:0}@media(max-width:480px){.color-picker-inline{flex-wrap:nowrap;border-radius:50px;padding:4px 10px 4px 4px;gap:6px;height:44px;overflow:hidden;width:100%;box-sizing:border-box}.color-picker-inner-pill{flex-shrink:0;height:36px;min-height:36px;padding:0 8px}.color-picker-current-swatch{width:22px;height:22px}.color-picker-recent{flex:1;min-width:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none;flex-wrap:nowrap;gap:5px}.color-picker-recent::-webkit-scrollbar{display:none}.color-picker-recent-btn{width:22px;height:22px;flex-shrink:0}}.icon-picker-inline{position:relative;display:inline-flex;box-sizing:border-box}.icon-picker-trigger{display:inline-flex;align-items:center;gap:10px;padding:8px 14px;background:var(--bg-surface);border:2px solid var(--border-medium);border-radius:50px;height:48px;box-sizing:border-box;cursor:pointer;color:var(--text-main);transition:border-color .15s ease}.icon-picker-trigger:hover{border-color:var(--accent, #007aff)}.icon-picker-chevron{font-size:11px;color:var(--text-muted, #6E6E73);transition:transform .18s ease}.icon-picker-trigger[aria-expanded=true] .icon-picker-chevron{transform:rotate(180deg)}.icon-picker-selected{width:24px;height:24px;display:flex;align-items:center;justify-content:center;color:var(--text-main)}.icon-picker-selected svg{width:20px;height:20px;stroke:currentColor}.icon-picker-selected i{font-size:18px}.icon-picker-options{display:none;position:absolute;top:calc(100% + 8px);left:0;z-index:1000;width:320px;grid-template-columns:repeat(8,1fr);justify-items:center;gap:4px;padding:10px;background:var(--bg-surface, #fff);border:1px solid var(--border-subtle, #e5e5ea);border-radius:14px;box-shadow:0 14px 36px #0000002e;max-height:248px;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-gutter:stable}.icon-picker-options.open{display:grid}.icon-picker-options::-webkit-scrollbar{width:8px}.icon-picker-options::-webkit-scrollbar-thumb{background:var(--border-medium);border-radius:8px}.icon-picker-option{border:none;background:transparent;cursor:pointer;transition:background .12s ease,color .12s ease;display:inline-flex;align-items:center;justify-content:center;color:var(--text-secondary);width:32px;height:32px;border-radius:8px}.icon-picker-option svg{width:16px;height:16px;stroke:currentColor}.icon-picker-option i{font-size:18px}.icon-picker-option:hover{color:var(--accent, #007aff);background:var(--bg-surface-soft, rgba(0, 0, 0, .06))}.icon-picker-option.selected,.icon-picker-option.active{color:#fff;background:var(--accent, #007aff)}body.dark-mode .icon-picker-trigger,body.dark-mode .icon-picker-options{background:var(--bg-surface);border-color:var(--border-medium)}body.dark-mode .icon-picker-option{background:transparent}body.dark-mode .icon-picker-option:hover{background:#ffffff14;color:#fff}body.dark-mode .icon-picker-option.selected,body.dark-mode .icon-picker-option.active{background:var(--accent, #0a84ff);color:#fff}@media(max-width:480px){.icon-picker-trigger{height:44px}.icon-picker-options{grid-template-columns:repeat(6,1fr);width:min(86vw,320px)}}#iconPicker.icon-picker-inline{gap:10px;padding:8px 12px 8px 0}#iconPicker .icon-picker-inner-pill{margin-left:0}#iconPicker .icon-picker-selected,#iconPicker .icon-picker-option{color:var(--text-muted)}#iconPicker .icon-picker-option:hover{color:var(--accent, #007aff);background:var(--bg-surface-soft, rgba(0, 0, 0, .06))}#iconPicker .icon-picker-option.selected,#iconPicker .icon-picker-option.active{color:#fff;background:var(--accent, #007aff)}body.dark-mode #iconPicker .icon-picker-option{background:transparent}body.dark-mode #iconPicker .icon-picker-option:hover{background:#ffffff14;color:#fff}body.dark-mode #iconPicker .icon-picker-option.selected,body.dark-mode #iconPicker .icon-picker-option.active{background:var(--accent, #0a84ff);color:#fff}.action-board-tile{position:relative;overflow:visible}.action-board-tile .spreadsheet-card-icon{width:44px;height:44px;min-width:44px;border-radius:50%;background:var(--accent);color:#fff;font-size:18px;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 4px #0a84ff26;transition:box-shadow .25s ease,transform .25s ease}.action-board-tile:hover .spreadsheet-card-icon{box-shadow:0 0 0 6px #0a84ff40;transform:scale(1.06)}#tasks-section.action-board-open .spreadsheet-header,#tasks-section.action-board-open .spreadsheet-cards,#tasks-section.action-board-open .docs-header,#tasks-section.action-board-open .doc-cards,#tasks-section.action-board-open .project-view-header,#tasks-section.action-board-open #projectViewHeader,#tasks-section.action-board-open #projectEmptyState{display:none!important}#tasks-section.action-board-open{padding:0;overflow:hidden;height:100%}.action-board-panel{display:none;flex-direction:column;height:calc(100vh - 80px);height:calc(100dvh - 80px);max-height:calc(100vh - 80px);max-height:calc(100dvh - 80px);background:var(--bg-body);animation:panelFadeIn .25s ease;overflow:visible}#tasks-section.action-board-open .action-board-panel{display:flex}.ab-panel-header{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);gap:12px;flex-shrink:0}.ab-header-left{display:flex;align-items:center;gap:14px}.ab-header-right{display:flex;align-items:center;gap:10px}.ab-panel-title{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:600;color:var(--text-main)}.ab-panel-title i{color:var(--accent);font-size:15px}.ab-save-status{font-size:12px;color:var(--text-light);padding:4px 10px;border-radius:999px;background:var(--bg-body)}.ab-save-status.saving{color:var(--warning)}.ab-save-status.saved{color:var(--success)}.ab-today-btn{display:flex;align-items:center;gap:6px;padding:6px 14px;border:1px solid var(--border-subtle);background:var(--bg-surface);color:var(--text-muted);border-radius:999px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease;height:34px;box-sizing:border-box;white-space:nowrap;flex-shrink:0}.ab-today-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.ab-body{display:grid;grid-template-columns:1fr 1fr;flex:1;overflow:auto;min-height:0;gap:20px;padding:20px 24px;position:relative;background:#fff}body.dark-mode .ab-body{background:#1c1c1e}.ab-body:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;background-image:var(--random-dots-bg);background-repeat:repeat;background-size:var(--random-dots-size, 400px 400px)}.ab-body>*{position:relative;z-index:1}.ab-tasks-col,.ab-notes-col{display:flex;flex-direction:column;overflow:hidden;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:16px}.ab-col-header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;flex-shrink:0;border-bottom:1px solid var(--border-subtle);height:58px;box-sizing:border-box}.ab-col-header h4{font-size:14px;font-weight:600;color:var(--text-main);margin:0;display:flex;align-items:center;gap:8px}.ab-col-header h4 i{color:var(--text-muted);font-size:14px}.ab-task-count{font-size:12px;font-weight:600;color:var(--text-muted);background:var(--bg-body);padding:3px 10px;border-radius:999px}.ab-task-input-row{padding:14px 16px;flex-shrink:0;border-bottom:1px solid var(--border-subtle)}.ab-task-input{width:100%;padding:10px 16px;border:1.5px solid var(--border-subtle);border-radius:12px;background:var(--bg-body);color:var(--text-main);font-size:14px;font-family:inherit;transition:all .2s ease;outline:none;box-sizing:border-box}.ab-task-input::placeholder{color:var(--text-light)}.ab-task-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);background:#fff}.ab-task-list{list-style:none;margin:0;padding:6px 8px;flex:1;overflow-y:auto;overscroll-behavior:contain}.ab-task-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;transition:background .15s ease;position:relative;margin-bottom:2px}.ab-task-item:hover{background:var(--bg-body)}.ab-task-item.done{opacity:.5}.ab-task-checkbox{width:20px;height:20px;border-radius:50%;border:2px solid var(--border-medium);background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s ease;padding:0;color:transparent;font-size:10px}.ab-task-checkbox:hover{border-color:var(--accent);background:var(--accent-soft)}.ab-task-item.done .ab-task-checkbox{border-color:var(--success);background:var(--success);color:#fff}.ab-task-title{flex:1;font-size:14px;color:var(--text-main);line-height:1.4;min-width:0;word-break:break-word;cursor:text;border-radius:4px;padding:1px 4px;margin:-1px -4px;transition:background .15s ease}.ab-task-title:hover{background:#0000000a}.ab-task-edit-input{width:100%;font-size:14px;font-family:inherit;color:var(--text-main);background:var(--bg-surface);border:1.5px solid var(--accent);border-radius:4px;padding:2px 6px;outline:none;line-height:1.4}body.dark-mode .ab-task-title:hover{background:#ffffff0d}.ab-task-item.done .ab-task-title{text-decoration:line-through;color:var(--text-muted)}.ab-task-actions{display:flex;align-items:center;gap:2px;opacity:0;transition:opacity .15s ease;flex-shrink:0}.ab-task-item:hover .ab-task-actions{opacity:1}.ab-task-action-btn{width:28px;height:28px;border:none;background:transparent;color:var(--text-light);border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;transition:all .15s ease;padding:0}.ab-task-action-btn:hover{background:var(--bg-body);color:var(--text-main)}.ab-task-action-btn.convert-btn{background:transparent;color:var(--text-muted);border-radius:50%}.ab-task-action-btn.convert-btn:hover{background:var(--accent-soft);color:var(--accent);transform:none;box-shadow:none}.ab-task-action-btn.delete-btn:hover{background:#ff3b301a;color:#ff3b30}.ab-task-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;color:var(--text-light);text-align:center;gap:10px;flex:1}.ab-task-empty i{font-size:32px;opacity:.3}.ab-task-empty p{font-size:13px;margin:0}.ab-notes-toolbar{display:flex;align-items:center;gap:2px}.ab-convert-doc-btn{width:28px;height:28px;border:none;background:var(--accent);color:#fff;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;margin-left:6px;transition:transform .15s ease,box-shadow .15s ease;padding:0;flex-shrink:0}.ab-convert-doc-btn:hover{transform:scale(1.1);box-shadow:0 2px 8px #0a84ff59}.ab-convert-preview{margin-top:4px}.ab-convert-preview-card{pointer-events:auto;cursor:default}.ab-convert-title-input{width:100%;border:none;background:transparent;font-size:15px;font-weight:600;font-family:inherit;color:var(--text-main);padding:0;margin:0 0 4px;outline:none;line-height:1.4}.ab-convert-title-input::placeholder{color:var(--text-light);font-weight:500}.ab-convert-title-input:focus{border-bottom:1.5px solid var(--accent);padding-bottom:2px}.ab-fmt-btn{width:30px;height:30px;border:none;background:transparent;color:var(--text-muted);border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:13px;transition:all .15s ease;padding:0}.ab-fmt-btn:hover{background:var(--bg-body);color:var(--text-main)}.ab-fmt-btn.active{background:var(--accent-soft);color:var(--accent)}.ab-notes-editor{flex:1;padding:20px;font-size:14px;line-height:1.7;color:var(--text-main);overflow-y:auto;overscroll-behavior:contain;outline:none;min-height:200px}.ab-notes-editor:empty:before{content:attr(data-placeholder);color:var(--text-light);pointer-events:none;font-style:italic}.ab-notes-editor p{margin:0 0 8px}.ab-notes-editor ul,.ab-notes-editor ol{margin:0 0 8px;padding-left:24px}.ab-notes-editor li{margin-bottom:4px}.ab-notes-editor b,.ab-notes-editor strong{font-weight:600}body.dark-mode .ab-notes-col{background:var(--bg-surface)}body.dark-mode .ab-notes-editor{color:var(--text-main);background:transparent;caret-color:var(--text-main)}body.dark-mode .ab-notes-editor *{color:inherit!important;background:transparent!important}body.dark-mode .ab-task-input:focus{background:var(--bg-body)}body.dark-mode .ab-task-action-btn.delete-btn:hover{background:#ff453a26}body.dark-mode .ab-task-item:hover{background:#ffffff0a}body.dark-mode .ab-task-count{background:#ffffff14}body.dark-mode .ab-date-popover,body.dark-mode .ab-time-popover{background:var(--bg-surface);border-color:var(--border-medium);box-shadow:0 8px 32px #00000080}body.dark-mode .ab-body:before{background-image:radial-gradient(circle,rgba(10,132,255,.38) .6px,transparent .6px),radial-gradient(circle,rgba(10,132,255,.3) 2.4px,transparent 2.4px),radial-gradient(circle,rgba(10,132,255,.42) 1px,transparent 1px),radial-gradient(circle,rgba(10,132,255,.25) 2.8px,transparent 2.8px),radial-gradient(circle,rgba(10,132,255,.35) .8px,transparent .8px),radial-gradient(circle,rgba(10,132,255,.28) 1.6px,transparent 1.6px),radial-gradient(circle,rgba(10,132,255,.44) 1.3px,transparent 1.3px),radial-gradient(circle,rgba(10,132,255,.22) 3.2px,transparent 3.2px),radial-gradient(circle,rgba(10,132,255,.33) .5px,transparent .5px),radial-gradient(circle,rgba(10,132,255,.4) 1.8px,transparent 1.8px),radial-gradient(circle,rgba(10,132,255,.26) 2.1px,transparent 2.1px),radial-gradient(circle,rgba(10,132,255,.35) .9px,transparent .9px);background-size:37px 41px,97px 89px,53px 47px,113px 107px,31px 29px,79px 67px,43px 59px,127px 121px,23px 19px,71px 73px,61px 53px,83px 97px;background-position:0 0,23px 17px,7px 31px,53px 43px,13px 5px,41px 19px,3px 47px,67px 11px,17px 37px,59px 29px,11px 61px,47px 53px}.custom-dp-trigger{display:flex;align-items:center;justify-content:space-between;cursor:pointer;width:100%;text-align:left;gap:8px;background:var(--bg-surface);border:1.5px solid var(--border-subtle);border-radius:10px;padding:10px 14px;font-size:14px;font-family:inherit;color:var(--text-main);transition:border-color .2s ease,box-shadow .2s ease;line-height:1.4;min-height:44px;box-sizing:border-box}.custom-dp-trigger:hover{border-color:var(--accent)}.custom-dp-trigger:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #0a84ff26}.custom-dp-trigger .custom-dp-label{flex:1;color:var(--text-light);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.custom-dp-trigger.has-value .custom-dp-label{color:var(--text-main)}.custom-dp-trigger .custom-dp-icon{color:var(--accent);font-size:14px;flex-shrink:0}#universalDatePopover{position:fixed;z-index:200000}.ab-date-picker-wrapper{position:relative;display:inline-block}.ab-date-popover{position:absolute;top:calc(100% + 8px);right:0;width:280px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:14px;box-shadow:0 8px 32px #00000024;z-index:3000;padding:14px;opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .18s ease,visibility .18s ease,transform .18s ease}.ab-date-popover.open{opacity:1;visibility:visible;transform:translateY(0)}.ab-dp-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.ab-dp-month{font-size:14px;font-weight:600;color:var(--text-main)}.ab-dp-nav{width:28px;height:28px;border:none;background:transparent;color:var(--text-muted);border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:11px;transition:all .15s ease;padding:0}.ab-dp-nav:hover{background:var(--bg-body);color:var(--text-main)}.ab-dp-weekdays{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;margin-bottom:4px}.ab-dp-weekdays span{font-size:11px;font-weight:600;color:var(--text-light);padding:4px 0;text-transform:uppercase;letter-spacing:.03em}.ab-dp-days{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.ab-dp-day{width:100%;aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:500;color:var(--text-main);border:none;background:transparent;border-radius:50%;cursor:pointer;transition:all .12s ease;padding:0;position:relative}.ab-dp-day:hover{background:var(--accent-soft);color:var(--accent)}.ab-dp-day.today{background:var(--accent);color:#fff;font-weight:700}.ab-dp-day.selected{outline:2px solid var(--accent);outline-offset:-2px}.ab-dp-day.today.selected{outline:2px solid #fff;outline-offset:-2px}.ab-dp-day.other-month{color:var(--text-light);opacity:.5}.ab-dp-day.future{opacity:.25;pointer-events:none;cursor:default}.ab-dp-day.has-board:after{content:"";position:absolute;bottom:2px;width:4px;height:4px;border-radius:50%;background:#aab0b8}.ab-dp-day.today.has-board:after{background:#ffffffb3}.ab-dp-day.selected.has-board:after{background:var(--accent)}.ab-dp-today-link{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;margin-top:10px;padding:8px 0;border:none;background:transparent;color:#fff;text-shadow:0 1px 3px rgba(0,60,160,.55);font-size:13px;font-weight:500;cursor:pointer;border-radius:8px;transition:background .15s ease}.ab-dp-today-link:hover{background:var(--accent-soft)}.ab-time-popover{position:fixed;z-index:200000;width:160px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:14px;box-shadow:0 8px 32px #00000024;padding:10px;opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .18s ease,visibility .18s ease,transform .18s ease}.ab-time-popover.open{opacity:1;visibility:visible;transform:translateY(0)}.ab-tp-columns{display:flex;gap:8px}.ab-tp-col{flex:1;max-height:220px;overflow-y:auto;display:flex;flex-direction:column;gap:2px;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none}.ab-tp-col::-webkit-scrollbar{display:none}.ab-tp-option{border:none;background:transparent;color:var(--text-main);font-size:13px;font-weight:500;padding:7px 0;border-radius:8px;cursor:pointer;text-align:center;transition:all .12s ease}.ab-tp-option:hover{background:var(--accent-soft);color:var(--accent)}.ab-tp-option.selected{background:var(--accent);color:#fff;font-weight:700}.ab-timers-section{display:flex;justify-content:center;padding:10px 14px;border-top:1px solid var(--border-subtle);flex-shrink:0}.ab-timer-widget{display:flex;flex-direction:row;align-items:center;gap:18px;width:100%}.ab-timer-ring-wrap{position:relative;width:90px;height:90px;min-width:90px;display:flex;align-items:center;justify-content:center}.ab-timer-ring{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}.ab-timer-track{fill:none;stroke:#0000000f;stroke-width:6}.ab-timer-progress{fill:none;stroke:#7c3aed;stroke-width:6;stroke-linecap:round;stroke-dasharray:553;stroke-dashoffset:0;transition:stroke-dashoffset .4s ease}.ab-timer-time{position:relative;z-index:1;font-family:SF Mono,Menlo,Consolas,Courier New,monospace;font-size:18px;font-weight:600;letter-spacing:-.5px;line-height:1;color:var(--text-main);user-select:none;font-variant-numeric:tabular-nums}@keyframes abTimerPulse{0%,to{opacity:1}50%{opacity:.4}}.ab-timer-widget.finished .ab-timer-time{animation:abTimerPulse 1s ease-in-out infinite}.ab-timer-widget.running .ab-timer-ring-wrap{filter:drop-shadow(0 0 8px rgba(124,58,237,.25))}.ab-timer-widget[data-mode=stopwatch] .ab-timer-ring{display:none}.ab-timer-widget[data-mode=stopwatch] .ab-timer-ring-wrap{background:none;width:auto;height:auto;min-width:0}.ab-timers-section:has(.ab-timer-widget[data-mode=stopwatch]){padding-top:6px;padding-bottom:6px}.ab-timer-right{display:flex;flex-direction:row;align-items:center;gap:10px;flex:1;min-width:0;flex-wrap:wrap}.ab-timer-mode-toggle{display:inline-flex;width:fit-content;background:var(--bg-surface);border-radius:999px;padding:3px;gap:3px;border:1px solid var(--border-subtle)}.ab-timer-mode-btn{display:flex;align-items:center;gap:6px;padding:6px 14px;border:none;background:transparent;color:var(--text-muted);font-size:12px;font-weight:600;font-family:inherit;border-radius:999px;cursor:pointer;transition:all .2s ease;min-height:auto;min-width:auto;white-space:nowrap}.ab-timer-mode-btn i{font-size:10px}.ab-timer-mode-btn:hover{color:var(--text-main);background:var(--bg-body)}.ab-timer-mode-btn.active{background:#b7b7b7;color:#fff;box-shadow:0 2px 8px #0000001a}.ab-timer-input-row{display:flex;align-items:center;gap:4px}.ab-timer-widget[data-mode=stopwatch] .ab-timer-input-row{display:none}.ab-timer-input{width:52px;padding:6px 8px;border:1px solid var(--border-subtle);border-radius:10px;background:var(--bg-body);color:var(--text-main);font-family:SF Mono,Menlo,Consolas,Courier New,monospace;font-size:15px;font-weight:600;text-align:center;outline:none;transition:border-color .2s ease;-moz-appearance:textfield;appearance:textfield;min-height:auto;min-width:auto}.ab-timer-input::-webkit-outer-spin-button,.ab-timer-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ab-timer-input:focus{border-color:#7c3aed;box-shadow:0 0 0 2px #7c3aed1f}.ab-timer-input-sep{font-family:SF Mono,Menlo,Consolas,Courier New,monospace;font-size:18px;font-weight:700;color:var(--text-muted);user-select:none;padding:0 1px}.ab-timer-widget.running .ab-timer-input-row{opacity:.35;pointer-events:none}.ab-timer-controls{display:flex;gap:6px;align-items:center}.ab-timer-ctrl{border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease;min-height:auto;min-width:auto;position:relative;background:none}.ab-timer-start{width:30px;height:30px;border-radius:50%;font-size:12px;background:none;color:#7c3aed;box-shadow:none}.ab-timer-start:hover{background:#7c3aed1a;box-shadow:none;transform:none}.ab-timer-start:active{transform:none;box-shadow:none;background:#7c3aed2e}.ab-timer-reset{width:26px;height:26px;border-radius:50%;font-size:11px;color:var(--text-muted);background:none}.ab-timer-reset:hover{background:#0000000f;color:var(--text-main);transform:none}.ab-timer-reset:active{transform:none}.ab-timer-widget.running .ab-timer-start{color:#7c3aed;background:none;box-shadow:none}.ab-timer-widget.running .ab-timer-start:hover{background:#7c3aed1a;box-shadow:none;transform:translateY(-1px)}body.dark-mode .ab-timer-mode-toggle{background:var(--bg-surface);border-color:var(--border-subtle)}body.dark-mode .ab-timer-mode-btn:hover{background:var(--bg-body)}body.dark-mode .ab-timer-mode-btn.active{background:var(--accent);box-shadow:0 2px 8px #007aff4d}body.dark-mode .ab-timer-track{stroke:#ffffff14}body.dark-mode .ab-timer-progress{stroke:#8b5cf6}body.dark-mode .ab-timer-widget.running .ab-timer-ring-wrap{filter:drop-shadow(0 0 10px rgba(139,92,246,.28))}body.dark-mode .ab-timer-input{background:var(--bg-surface);border-color:var(--border-subtle);color:var(--text-main)}body.dark-mode .ab-timer-input:focus{border-color:#8b5cf6;box-shadow:0 0 0 2px #8b5cf626}body.dark-mode .ab-timer-reset{background:#ffffff0f}body.dark-mode .ab-timer-reset:hover{background:#ffffff1f;color:var(--text-main)}body.dark-mode .ab-timer-start{background:#8b5cf6;box-shadow:0 2px 8px #8b5cf659}body.dark-mode .ab-timer-start:hover{background:#7c3aed;box-shadow:0 4px 14px #8b5cf673}body.dark-mode .ab-timer-widget.running .ab-timer-start{background:#8b5cf626;color:#8b5cf6;box-shadow:none}body.dark-mode .ab-timer-widget.running .ab-timer-start:hover{background:#8b5cf640}@media(max-width:1024px){.ab-body{grid-template-columns:1fr;grid-template-rows:auto auto;padding:16px;gap:16px;overflow-y:auto;-webkit-overflow-scrolling:touch}.ab-tasks-col{max-height:45vh}.ab-notes-col{min-height:40vh;overflow:hidden}.ab-timers-section{padding:8px 10px;flex-shrink:0}.ab-timer-widget{gap:14px}.ab-timer-ring-wrap{width:80px;height:80px;min-width:80px}.ab-timer-time{font-size:16px}}@media(max-width:768px){.ab-panel-header{padding:10px 14px}.ab-body{padding:12px;gap:12px;overflow-y:auto;-webkit-overflow-scrolling:touch}.ab-col-header{padding:12px 14px}.ab-task-input-row{padding:10px 12px}.ab-task-item{padding:9px 10px}.ab-notes-editor{padding:14px}.ab-task-actions{opacity:1}.ab-task-checkbox{width:20px!important;height:20px!important;min-width:20px!important;min-height:20px!important;max-width:20px!important;max-height:20px!important}.ab-date-popover{right:-20px;width:260px}.ab-timers-section{display:none}.ab-timer-widget{gap:8px;flex-wrap:nowrap}.ab-timer-ring-wrap{width:54px;height:54px;min-width:54px}.ab-timer-ring .ab-timer-track,.ab-timer-ring .ab-timer-progress{stroke-width:8}.ab-timer-time{font-size:12px}.ab-timer-right{gap:6px;flex-wrap:wrap}.ab-timer-mode-toggle{padding:2px;gap:2px}.ab-timer-mode-btn{padding:3px 8px;font-size:10px;gap:4px}.ab-timer-mode-btn i{font-size:9px}.ab-timer-input{width:32px;padding:3px 4px;font-size:11px}.ab-timer-controls{gap:2px}.ab-timer-start{width:26px;height:26px;font-size:10px}.ab-timer-reset{width:22px;height:22px;font-size:9px}.ab-timer-input-sep{font-size:12px}}.help-bug-card{position:relative;display:flex;gap:16px;align-items:flex-start;padding:18px;margin-bottom:8px;background:var(--bg-surface, var(--bg-primary, #FFFFFF));border:1px solid var(--border-subtle, var(--border-color, rgba(0,0,0,.06)));border-radius:12px;box-shadow:0 1px 2px #0000000a,0 4px 12px -8px #00000014;transition:border-color .15s ease,box-shadow .15s ease}.help-bug-card:hover{border-color:var(--border-medium, rgba(0,0,0,.12));box-shadow:0 1px 2px #0000000d,0 8px 20px -10px #0000001a}.help-bug-card-glow,.help-bug-card-inner{all:unset;display:contents}.help-bug-icon{flex-shrink:0;width:36px;height:36px;border-radius:10px;background:var(--accent-soft, rgba(0,112,243,.12));color:var(--accent, #0070F3);display:flex;align-items:center;justify-content:center;font-size:15px}.help-bug-body{flex:1;min-width:0}.help-bug-title{font-size:15px;font-weight:600;letter-spacing:-.01em;color:var(--text-main, var(--text-primary));margin-bottom:4px}.help-bug-desc{margin:0 0 14px;font-size:13px;line-height:1.5;color:var(--text-muted, var(--text-secondary))}.help-bug-actions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.help-bug-cta{display:inline-flex;align-items:center;gap:7px;padding:7px 14px;border-radius:8px;border:0;background:var(--accent, #0070F3);color:#fff;font-size:13px;font-weight:500;letter-spacing:-.01em;cursor:pointer;transition:background .12s ease}.help-bug-cta:hover,.help-bug-cta:active{background:var(--accent-hover, #0051CC)}.help-bug-cta i{font-size:11px}.help-bug-secondary{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:8px;background:transparent;color:var(--text-muted, var(--text-secondary));font-size:13px;font-weight:500;text-decoration:none;border:1px solid var(--border-subtle, var(--border-color, rgba(0,0,0,.08)));transition:color .15s,border-color .15s,background .15s}.help-bug-secondary:hover{color:var(--text-main, var(--text-primary));border-color:var(--border-medium, rgba(0,0,0,.12));background:var(--bg-surface-soft, rgba(0,0,0,.02))}.help-bug-secondary i{font-size:11px}.help-bug-meta{display:flex;flex-wrap:wrap;gap:6px}.help-bug-pill{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:6px;background:transparent;color:var(--text-light, var(--text-tertiary, #86868B));font-size:11px;font-weight:500;border:1px solid var(--border-subtle, var(--border-color, rgba(0,0,0,.06)))}.help-bug-pill i{font-size:9px;opacity:.7}body.dark-mode .help-bug-card,.dark-mode .help-bug-card{background:var(--bg-surface, #1C1C1E)}.admin-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--border-subtle)}.admin-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:12px;font-weight:600}.admin-whoami{font-size:12px;color:var(--text-muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.admin-section{margin-bottom:22px}.admin-section-title{font-size:15px;font-weight:600;color:var(--text-main);margin-bottom:4px}.admin-section-desc{font-size:13px;color:var(--text-muted);margin-bottom:14px}.admin-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.admin-select,.admin-status-select,.admin-input{height:34px;padding:0 32px 0 10px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:8px;color:var(--text-main);font-size:13px;transition:border-color .15s,box-shadow .15s;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23999' d='M1.41 0L6 4.58 10.59 0 12 1.41l-6 6-6-6z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:10px;cursor:pointer}.admin-input{min-width:220px;flex:1;background-image:none;padding-right:12px;cursor:text}.admin-select{min-width:130px}.admin-status-select{height:30px;font-size:12px;min-width:110px}.admin-select:focus,.admin-status-select:focus,.admin-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.admin-btn{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 14px;border-radius:8px;border:1px solid var(--border-subtle);background:var(--bg-surface);color:var(--text-main);font-size:13px;font-weight:500;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.admin-btn:hover{border-color:var(--accent);color:var(--accent)}.admin-btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.admin-btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:#fff}.admin-btn-danger{width:34px;padding:0;justify-content:center;color:var(--text-muted)}.admin-btn-danger:hover{border-color:#dc2626;color:#dc2626}.admin-tasks-list{border:1px solid var(--border-subtle);border-radius:10px;overflow:hidden;background:var(--bg-surface)}.admin-task-row{display:flex;align-items:flex-start;gap:14px;padding:14px 16px;border-bottom:1px solid var(--border-subtle)}.admin-task-row:last-child{border-bottom:none}.admin-task-row:hover{background:var(--bg-body)}.admin-task-main{flex:1;min-width:0}.admin-task-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:6px}.admin-task-title{font-size:14px;font-weight:500;color:var(--text-main);word-break:break-word}.admin-task-desc{margin-top:6px;display:grid;grid-template-columns:max-content 1fr;gap:2px 10px;font-size:12px;line-height:1.5}.admin-desc-key{color:var(--text-muted);font-weight:500;white-space:nowrap}.admin-desc-val{color:var(--text-main);word-break:break-word}.admin-desc-fullrow{grid-column:1 / -1;color:var(--text-muted);word-break:break-word}.admin-severity-pill{display:inline-block;padding:1px 9px;border-radius:99px;font-size:11.5px;font-weight:600;text-transform:capitalize;line-height:1.8}.admin-severity-unknown{background:var(--bg-body);color:var(--text-muted);border:1px solid var(--border-subtle)}.admin-task-time{font-size:11px;color:var(--text-muted);margin-left:auto;font-variant-numeric:tabular-nums}.admin-task-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.admin-source-tag,.admin-status-tag,.admin-ws-tag{display:inline-flex;align-items:center;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;text-transform:lowercase}.admin-source-tag{background:var(--bg-body);color:var(--text-muted);border:1px solid var(--border-subtle)}.admin-source-tally{color:#ec4899;border-color:#ec48994d}.admin-source-slack{color:#4a154b;border-color:#4a154b4d}.admin-source-github{color:var(--text-main)}.admin-source-sentry{color:#7c3aed;border-color:#7c3aed4d}.admin-source-discord{color:#5865f2;border-color:#5865f24d}.admin-source-google{color:#ea4335;border-color:#ea43354d}.admin-status-tag{border:1px solid transparent}.admin-status-triage{background:#0070f31a;color:var(--accent)}.admin-status-todo{background:var(--bg-body);color:var(--text-muted);border-color:var(--border-subtle)}.admin-status-inprogress{background:#eab3081f;color:#b45309}.admin-status-done{background:#22c55e1f;color:#16a34a}.admin-status-cancelled{background:var(--bg-body);color:var(--text-muted);border-color:var(--border-subtle);text-decoration:line-through}.admin-ws-tag{background:var(--bg-body);color:var(--text-muted);text-transform:none;font-family:inherit;font-weight:500}.admin-loading,.admin-empty{padding:36px 16px;text-align:center;color:var(--text-muted)}.admin-empty-icon{font-size:28px;color:var(--text-tertiary);margin-bottom:10px}.admin-empty-title{font-size:14px;font-weight:600;color:var(--text-main);margin-bottom:4px}.admin-empty-desc{font-size:12.5px}.admin-error{display:flex;align-items:center;gap:10px;padding:14px 16px;border-radius:10px;background:#dc26260f;border:1px solid rgba(220,38,38,.2);color:#b91c1c;font-size:13px}body.dark-mode .admin-status-inprogress{color:#fbbf24}body.dark-mode .admin-status-done{color:#4ade80}body.dark-mode .admin-error{background:#dc26261f;color:#fca5a5}.project-badge[draggable=true]{cursor:grab}.project-badge-icon,.project-badge-name,.project-badge-folder-count,.project-badge-lock{pointer-events:none}.project-badge.project-badge-dragging{opacity:.45;cursor:grabbing}.project-badge.drop-nest{box-shadow:inset 0 0 0 2px var(--accent, #0070f3);background:var(--accent-soft, rgba(0,112,243,.12))}.project-badge.drop-before,.project-badge.drop-after{position:relative}.project-badge.drop-before:before,.project-badge.drop-after:after{content:"";position:absolute;top:12%;bottom:12%;width:3px;border-radius:3px;background:var(--accent, #0070f3)}.project-badge.drop-before:before{left:-3px}.project-badge.drop-after:after{right:-3px}.project-badge.is-folder{position:relative}.project-badge-folder-count{position:absolute;top:6px;right:6px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:var(--accent, #0070f3);color:#fff;font-size:10px;font-weight:600;line-height:16px;text-align:center}.custom-currency-cell,.custom-percent-cell{display:flex;align-items:center;gap:4px;min-width:0}.custom-currency-cell{cursor:text;min-height:26px;padding:2px 4px;border-radius:6px;transition:background .12s ease}.custom-currency-cell:hover{background:var(--bg-surface-soft, rgba(0,0,0,.04))}.custom-currency-td{max-width:150px}.custom-currency-value-wrap{display:flex;flex-direction:column;min-width:0;flex:1 1 auto}.custom-currency-value{display:block;font-variant-numeric:tabular-nums;color:var(--text-main);white-space:nowrap;overflow-x:auto;overflow-y:hidden;text-overflow:ellipsis;scrollbar-width:thin;scrollbar-color:transparent transparent}.custom-currency-cell:hover .custom-currency-value{text-overflow:clip;scrollbar-color:var(--border-medium) transparent}.custom-currency-value::-webkit-scrollbar{height:3px}.custom-currency-value::-webkit-scrollbar-thumb{background:transparent;border-radius:2px}.custom-currency-cell:hover .custom-currency-value::-webkit-scrollbar-thumb{background:var(--border-medium)}.custom-currency-cell .custom-affix,.custom-percent-cell .custom-affix{color:var(--text-muted, #6E6E73);font-size:13px;flex:none}.custom-currency-cell .custom-number-input,.custom-percent-cell .custom-number-input{flex:1 1 auto;min-width:0}.custom-checkbox-cell{display:flex;align-items:center;justify-content:center;cursor:pointer;padding:4px 0}.custom-checkbox-input{appearance:none;-webkit-appearance:none;width:18px;height:18px;margin:0;flex:none;border-radius:5px;border:2px solid var(--border-medium, #d2d2d7);background:var(--bg-surface, #fff);cursor:pointer;position:relative;transition:background .15s ease,border-color .15s ease}.custom-checkbox-input:hover{border-color:var(--accent, #0070f3)}.custom-checkbox-input:checked{background-color:var(--accent, #0070f3);border-color:var(--accent, #0070f3);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");background-size:13px;background-position:center;background-repeat:no-repeat}body.dark-mode .custom-checkbox-input{background:var(--bg-surface, #1c1c1e);border-color:var(--border-medium, #48484a)}body.dark-mode .custom-checkbox-input:checked{background-color:var(--accent, #0070f3);border-color:var(--accent, #0070f3);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");background-size:13px;background-position:center;background-repeat:no-repeat}.sheet-filter-wrap{position:relative;display:inline-flex;margin-right:4px}#sheetFilterBtn{position:relative}.filter-count-badge{position:absolute;top:-4px;right:-4px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--accent, #0070f3);color:#fff;font-size:10px;font-weight:700;line-height:16px;text-align:center;pointer-events:none;z-index:10}.sheet-filter-popover{position:absolute;top:calc(100% + 8px);right:0;z-index:1000;min-width:244px;max-width:300px;max-height:360px;overflow-y:auto;background:var(--bg-surface, #fff);border:1px solid var(--border-subtle, #e5e5ea);border-radius:12px;box-shadow:0 12px 32px #00000029;padding:8px}.sheet-filter-header{display:flex;align-items:center;justify-content:space-between;padding:4px 8px 8px;border-bottom:1px solid var(--border-subtle, #e5e5ea);margin-bottom:6px}.sheet-filter-title{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted, #6E6E73)}.sheet-filter-clear{border:none;background:none;color:var(--accent, #0070f3);font-size:12px;font-weight:600;cursor:pointer;padding:2px 4px;border-radius:6px}.sheet-filter-clear:hover{background:var(--bg-surface-soft, rgba(0,0,0,.04))}.sheet-filter-list{display:flex;flex-direction:column;gap:2px}.sheet-filter-item{display:flex;align-items:center;gap:10px;padding:7px 8px;border-radius:8px;cursor:pointer;font-size:14px;color:var(--text-main)}.sheet-filter-item:hover{background:var(--bg-surface-soft, rgba(0,0,0,.04))}.sheet-filter-item input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent, #0070f3);cursor:pointer;flex:none}.sheet-filter-item .sheet-filter-pill,.sheet-filter-item .priority-badge,.sheet-filter-item .difficulty-badge,.sheet-filter-item .sheet-filter-member{pointer-events:none;min-width:0}.sheet-filter-item .sheet-filter-pill{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sheet-filter-item .sheet-filter-pill:hover{filter:none}.sheet-filter-member{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--text-main);overflow:hidden}.sheet-filter-member-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sheet-filter-avatar{width:20px;height:20px;font-size:9px}.custom-rating-cell{display:inline-flex;gap:3px;cursor:pointer}.custom-rating-cell .rating-star{color:var(--accent, #0070f3);font-size:14px;transition:transform .12s ease-out}.custom-rating-cell .rating-star.far{color:var(--border-subtle, #d2d2d7)}.custom-rating-cell .rating-star:hover{transform:scale(1.15)}.custom-multiselect-cell{display:flex;align-items:center;justify-content:space-between;gap:6px;cursor:pointer;min-height:28px}.custom-multiselect-pills{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.custom-date-input{border:none;background:transparent;color:inherit;font:inherit;width:100%;cursor:pointer}.spreadsheet-card[draggable=true],.doc-card[draggable=true]{cursor:grab}.spreadsheet-card.card-dragging,.doc-card.card-dragging{opacity:.5;cursor:grabbing}.spreadsheet-card.drop-before,.spreadsheet-card.drop-after{position:relative}.spreadsheet-card.drop-before{box-shadow:inset 4px 0 0 0 var(--accent, #0070f3)}.spreadsheet-card.drop-after{box-shadow:inset -4px 0 0 0 var(--accent, #0070f3)}#spreadsheetCards .spreadsheet-card.project-card,#spreadsheetCards .spreadsheet-card.project-card:hover,#docCards .doc-card.project-card,#docCards .doc-card.project-card:hover{border-color:var(--project-color, var(--accent, #0070f3))}.spreadsheet-card.project-card.drop-nest,.doc-card.project-card.drop-nest{box-shadow:inset 0 0 0 2px var(--project-color, var(--accent, #0070f3))}.spreadsheet-card.project-drop-placeholder,.doc-card.project-drop-placeholder{border:2px dashed var(--accent, #0070f3);background:var(--accent-soft, rgba(0, 112, 243, .12));box-shadow:none;cursor:grabbing;pointer-events:none;animation:projectDropPulse 1.2s ease-in-out infinite}@keyframes projectDropPulse{0%,to{opacity:.55}50%{opacity:1}}@media(prefers-reduced-motion:reduce){.spreadsheet-card.project-drop-placeholder,.doc-card.project-drop-placeholder{animation:none;opacity:.8}}.project-tile-card{cursor:pointer}@media(max-width:600px){.hide-mobile-text{display:none}}#addTaskPanelBtn{width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;border-radius:50%!important;flex:0 0 auto!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important;aspect-ratio:1/1!important;box-sizing:border-box!important}@media(max-width:600px){#addTaskPanelBtn{width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important}}.customer-autocomplete-results{position:absolute;top:calc(100% + 4px);left:0;width:100%;max-height:240px;overflow-y:auto;background:var(--bg-surface, #fff);border:1px solid var(--border-subtle, #e5e5ea);border-radius:8px;box-shadow:0 4px 12px #0000001a;z-index:1000;display:flex;flex-direction:column}.customer-autocomplete-item{padding:10px 12px;cursor:pointer;border-bottom:1px solid var(--border-subtle, #e5e5ea);display:flex;align-items:center;justify-content:space-between}.customer-autocomplete-item:last-child{border-bottom:none}.customer-autocomplete-item:hover{background:var(--bg-surface-hover, #f5f5f5)}body.dark-mode .customer-autocomplete-item:hover{background:var(--bg-surface-hover, #2c2c2e)}.customer-autocomplete-item-main{display:flex;flex-direction:column}.customer-autocomplete-item-title{font-weight:500;font-size:14px;color:var(--text-main, #000)}.customer-autocomplete-item-sub{font-size:12px;color:var(--text-muted, #8e8e93);margin-top:2px}.customer-autocomplete-badge{font-size:11px;padding:2px 6px;border-radius:4px;background:var(--bg-surface-hover, #f5f5f5);color:var(--text-muted, #8e8e93);white-space:nowrap}.customer-autocomplete-badge.lead{background:var(--accent-soft, rgba(0, 112, 243, .1));color:var(--accent, #0070f3)}.customer-autocomplete-badge.finance{background:#e8f5e9;color:#2e7d32}body.dark-mode .customer-autocomplete-badge.finance{background:#2e7d3233;color:#81c784}.collab-multiselect-container{position:relative;width:100%}.collab-multiselect-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:40px;padding:6px 12px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;font-size:13px;color:var(--text-primary);transition:all .2s}.collab-multiselect-trigger:hover{border-color:var(--primary-color)}.collab-multiselect-trigger.active{border-color:var(--primary-color);box-shadow:0 0 0 2px #6366f11a}.collab-multiselect-summary{display:flex;flex-wrap:wrap;gap:4px;flex:1}.collab-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;background:var(--bg-body);border-radius:12px;font-size:12px;color:var(--text-muted);border:1px solid var(--border-subtle)}.collab-chip.collab-chip-edit{background:var(--accent-soft);color:var(--accent);border-color:var(--accent-soft)}.collab-chip .role-badge{font-size:10px;text-transform:uppercase;font-weight:600}.collab-multiselect-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--bg-surface, #ffffff);border:1px solid var(--border-subtle, var(--border-color));border-radius:12px;box-shadow:0 12px 32px #00000029;z-index:999999;max-height:250px;overflow-y:auto;display:none;padding:8px}.collab-multiselect-dropdown.show{display:block}.collab-heading{font-size:12px;font-weight:500;margin-bottom:8px;color:var(--text-main)}.collab-inline-menu{margin-top:8px;max-height:250px;overflow-y:auto;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:8px}.collab-dropdown-item{display:flex;align-items:center;padding:7px 8px;border-radius:8px;transition:background .1s;gap:12px;margin-bottom:2px}.collab-dropdown-item:last-child{margin-bottom:0}.collab-dropdown-item:hover{background:var(--bg-surface-hover, #f5f5f5)}.collab-item-checkbox{width:16px;height:16px;cursor:pointer;accent-color:var(--accent)}body.dark-mode .collab-item-checkbox{color-scheme:dark}.collab-item-info{flex:1;display:flex;flex-direction:column}.collab-item-name{font-size:13px;font-weight:500;color:var(--text-main)}.collab-item-email{font-size:11px;color:var(--text-muted)}.collab-item-role-select{width:90px;padding:4px;font-size:12px;border-radius:4px;border:1px solid var(--border-subtle);background:var(--bg-body);color:var(--text-main);cursor:pointer}.collab-item-role-select:focus{border-color:var(--accent);outline:none}.collab-role-btn{display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:6px;font-size:12px;font-weight:500;color:var(--text-main);cursor:pointer;background:transparent;border:1px solid var(--border-subtle);transition:all .15s}.collab-role-btn:hover{background:var(--bg-surface-hover, #f5f5f5);border-color:var(--border-medium)}.collab-role-dropdown{position:absolute;top:calc(100% + 4px);right:0;width:130px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:8px;box-shadow:0 4px 16px #0000001f;z-index:100;display:none;flex-direction:column;padding:4px}.collab-role-dropdown.show{display:flex}.collab-role-option{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-radius:6px;font-size:13px;cursor:pointer;color:var(--text-main);transition:background .1s}.collab-role-option:hover{background:var(--bg-surface-hover, #f5f5f5)}body.dark-mode .collab-role-option:hover,body.dark-mode .collab-dropdown-item:hover,body.dark-mode .collab-role-btn:hover{background:var(--bg-surface-hover, #2c2c2e)}@media(max-width:768px){#chat-section.content-section,#operator-section.content-section{padding-bottom:calc(var(--bottom-nav-height, 70px) + max(calc(env(safe-area-inset-bottom,0px) - 12px),8px));padding-top:calc(56px + env(safe-area-inset-top,0px))}body.keyboard-open #chat-section,body.keyboard-open #operator-section{padding-bottom:var(--keyboard-inset)}body.keyboard-open .sidebar{transform:translateY(100%);transition:transform .2s ease-out}body.keyboard-open .chat-composer{padding-bottom:max(8px,env(safe-area-inset-bottom))}}.docsign-warn{display:flex;gap:8px;align-items:flex-start;background:var(--accent-soft);color:var(--text-main);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:10px 12px;font-size:13px;line-height:1.5;margin-bottom:14px}.docsign-warn i{margin-top:2px;color:var(--accent);flex:0 0 auto}.docsign-warn span{flex:1 1 auto;min-width:0}.docsign-field-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:var(--text-muted);margin-bottom:10px}.docsign-signer-list{display:flex;flex-direction:column;max-height:300px;overflow-y:auto;border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.unified-modal label.docsign-signer-row,label.docsign-signer-row{display:flex!important;align-items:center!important;gap:12px!important;margin:0!important;padding:12px 14px!important;font-size:15px!important;font-weight:500!important;color:var(--text-main)!important;text-transform:none!important;letter-spacing:0!important;border-bottom:1px solid var(--border-subtle);cursor:pointer;transition:background var(--transition-fast)}body.dark-mode .unified-modal label.docsign-signer-row{color:var(--text-main)!important}.docsign-signer-row:last-child{border-bottom:none}.docsign-signer-row:hover{background:var(--bg-hover)}.docsign-signer-cb{width:18px;height:18px;accent-color:var(--accent);cursor:pointer;flex:0 0 auto;margin:0}.docsign-signer-row .docsign-av{width:32px;height:32px;font-size:13px}.docsign-signer-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.docsign-you{color:var(--text-muted);font-weight:400;font-size:13px}.docsign-av{width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;color:#fff;overflow:hidden;flex:0 0 auto}.docsign-av img{width:100%;height:100%;object-fit:cover}.docsign-modal .unified-modal-container{max-width:500px;width:min(500px,calc(100vw - 32px))}.docsign-modal .unified-modal-footer{flex-wrap:wrap;justify-content:flex-end;row-gap:8px}.docsign-modal .unified-modal-footer .btn,.docsign-modal .unified-modal-footer button{flex:0 1 auto;min-width:max-content;overflow:visible;text-overflow:clip;white-space:nowrap}@media(max-width:768px){.docsign-modal .unified-modal-footer .btn,.docsign-modal .unified-modal-footer button{flex:1 1 auto;min-width:max-content}}.docsign-pad-tabs{display:flex;gap:6px;margin-bottom:10px}.docsign-tab{flex:1;padding:8px;border:1px solid var(--border-subtle);background:var(--bg-surface);color:var(--text-muted);border-radius:var(--radius-sm);font-size:13px;font-weight:600;cursor:pointer}.docsign-tab.active{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.docsign-pad-wrap{border:1px dashed var(--border-medium);border-radius:var(--radius-md);background:#fff}.docsign-canvas{display:block;width:100%;height:200px;touch-action:none;cursor:crosshair;border-radius:var(--radius-md)}.docsign-type-input{width:100%;height:200px;border:none;background:transparent;text-align:center;font-family:Segoe Script,Brush Script MT,Snell Roundhand,cursive;font-size:40px;color:#111}.docsign-pad-hint{margin-top:10px;font-size:12px;color:var(--text-muted)}.docsign-panel{max-width:820px;margin:8px auto 40px;padding:0 20px}.docsign-panel-head{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:12px}.docsign-official{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:13px;color:var(--accent);background:var(--accent-soft);border-radius:999px;padding:4px 12px}.docsign-status,.docsign-integrity{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;border-radius:999px;padding:4px 10px;background:var(--bg-surface-soft)}.docsign-status.pending{color:var(--warning)}.docsign-status.complete{color:var(--success)}.docsign-integrity.ok{color:var(--success);background:transparent}.docsign-integrity.bad{color:var(--danger)}.docsign-table{width:100%;border-collapse:collapse;border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:hidden}.docsign-table th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);background:var(--bg-surface-soft);padding:8px 12px;border-bottom:1px solid var(--border-subtle)}.docsign-table td{padding:10px 12px;border-bottom:1px solid var(--border-subtle);vertical-align:middle}.docsign-table tr:last-child td{border-bottom:none}.docsign-name-cell{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--text-main);white-space:nowrap}.docsign-table td{padding:14px 12px}.docsign-table .docsign-name-cell{font-size:16px;gap:12px;font-weight:500}.docsign-table .docsign-av{width:40px;height:40px;font-size:15px}.docsign-cell.awaiting{color:var(--text-muted);font-style:italic;font-size:13px}.docsign-cell.signed{display:flex;flex-direction:column;gap:2px}.docsign-img{max-height:60px;max-width:260px;object-fit:contain;background:#fff;border-radius:4px}.docsign-meta{font-size:11px;color:var(--text-muted)}.docsign-panel-foot{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.docsign-panel-foot .btn,.docsign-sign-btn{padding:6px 12px;font-size:13px;white-space:nowrap}.docsign-vote-list,.docsign-cert-list{display:flex;flex-direction:column;border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:hidden}.docsign-vote-row{display:flex;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--border-subtle);font-size:14px;color:var(--text-main)}.docsign-vote-row:last-child{border-bottom:none}.docsign-vote-row .voted{color:var(--success);font-weight:600}.docsign-vote-row .novote{color:var(--text-muted)}.docsign-cert-title{font-weight:700;margin-bottom:10px;color:var(--text-main)}.docsign-cert-row{display:grid;grid-template-columns:1fr auto;gap:2px 12px;padding:8px 12px;border-bottom:1px solid var(--border-subtle);font-size:13px}.docsign-cert-row:last-child{border-bottom:none}.docsign-cert-when{color:var(--text-muted)}.docsign-cert-what{font-weight:600;color:var(--text-main);text-align:right}.docsign-cert-who{grid-column:1 / -1;font-size:12px;color:var(--text-muted)}.docsign-loading,.docsign-empty{padding:24px;text-align:center;color:var(--text-muted);font-size:14px}.doc-card .docsign-card-badge{position:absolute;top:14px;right:12px;z-index:4;display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:600;line-height:1;color:var(--accent);background:var(--accent-soft);border-radius:999px;padding:4px 8px;transition:right .15s ease;pointer-events:none}.doc-card:hover .docsign-card-badge{right:44px}.doc-card .docsign-card-badge.complete{color:var(--success)}.docsign-panel .btn,.docsign-strip .btn{overflow:visible;text-overflow:clip;white-space:nowrap}.docsign-strip{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 14px;border:1px solid var(--border-subtle);background:var(--accent-soft);border-radius:var(--radius-md);padding:12px 14px;margin-bottom:14px}.docsign-strip.mode{border-color:var(--warning);background:#ff950014}.docsign-strip.outdated{border-color:var(--danger)}.docsign-strip-text{display:flex;gap:8px;align-items:flex-start;font-size:13px;line-height:1.5;color:var(--text-main);flex:1 1 260px;min-width:0}.docsign-strip-text i{margin-top:2px;color:var(--accent);flex:0 0 auto}.docsign-strip.mode .docsign-strip-text i{color:var(--warning)}.docsign-strip.outdated .docsign-strip-text i{color:var(--danger)}.docsign-strip-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.docsign-strip-note{display:block;margin-top:3px;font-size:12px;color:var(--text-muted)}.doc-editor.docsign-suggesting{outline:2px dashed var(--warning);outline-offset:10px;border-radius:4px}.doc-editor ins.docsign-diff-ins{background:#30d15838;text-decoration:none;border-radius:3px;padding:0 2px}.doc-editor del.docsign-diff-del{background:#ff453a29;color:inherit;text-decoration:line-through;border-radius:3px;padding:0 2px}body.dark-mode .doc-editor ins.docsign-diff-ins{background:#30d1584d}body.dark-mode .doc-editor del.docsign-diff-del{background:#ff453a47}.collab-message-row{margin-top:10px}.collab-message-label{display:block;font-size:12px;font-weight:500;margin-bottom:6px;color:var(--text-color, var(--text-main))}.collab-message-label span{font-weight:400;color:var(--text-muted)}.collab-message-input{width:100%;box-sizing:border-box;padding:8px 10px;font:inherit;font-size:13px;line-height:1.4;color:var(--text-main);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);resize:vertical;min-height:52px;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.collab-message-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.collab-message-input::placeholder{color:var(--text-light)}@media(max-width:768px){.ov-period-btn,.view-toggle-btn{min-height:36px;display:inline-flex;align-items:center;justify-content:center}#ovMiniCalPrev,#ovMiniCalNext{width:36px;height:36px;min-width:36px;min-height:36px}.footer-legal a,.footer-brand a{display:inline-flex;align-items:center;min-height:44px;padding:0 4px}}.sheet-row-drag{cursor:grab;touch-action:none;display:inline-flex;align-items:center;justify-content:center}.sheet-row-drag:active{cursor:grabbing}@media(hover:none){.spreadsheet-table .row-actions{opacity:.6}}.sheet-drag-placeholder-row td{background:var(--accent-soft, rgba(0, 112, 243, .08));border:1.5px dashed var(--border-medium, #c7c7cc);border-radius:10px}body.sheet-row-dragging{cursor:grabbing}body.sheet-row-dragging *{user-select:none;-webkit-user-select:none}.sheet-drag-preview{background:var(--bg-surface, #fff);border-radius:10px;box-shadow:0 16px 48px #00000040,0 0 0 1px #ffffff14;transform:scale(1.01)}.sheet-drag-preview td{border-bottom:none}#sheetSortBtn{position:relative}.sort-active-dot{position:absolute;top:-2px;right:-2px;width:8px;height:8px;border-radius:50%;background:var(--accent, #0070f3);box-shadow:0 0 0 2px var(--bg-surface, #fff);pointer-events:none;z-index:10}.sheet-sort-popover{min-width:260px;max-height:420px}.sheet-sort-header{padding:4px 8px 8px;border-bottom:1px solid var(--border-subtle, #e5e5ea);margin-bottom:6px;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted, #6E6E73)}.sheet-sort-sections{display:flex;flex-direction:column;gap:4px}.sheet-sort-section+.sheet-sort-section{border-top:1px solid var(--border-subtle, #e5e5ea);padding-top:4px}.sheet-sort-section-title{padding:6px 8px 2px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted, #6E6E73)}.sheet-sort-option{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:none;background:none;border-radius:8px;cursor:pointer;text-align:left;font-size:13px;color:var(--text-primary, #1d1d1f);transition:background .1s ease}.sheet-sort-option:hover{background:var(--bg-hover, rgba(0, 0, 0, .04))}.sheet-sort-option.active{background:var(--accent-soft, rgba(0, 112, 243, .1));color:var(--accent, #0070f3);font-weight:600}.sheet-sort-option>i:first-child{width:14px;flex:none;font-size:12px;color:var(--text-muted, #6E6E73);text-align:center}.sheet-sort-option.active>i:first-child{color:var(--accent, #0070f3)}.sheet-sort-option-label{flex:1}.sheet-sort-option-hint{font-size:11px;font-weight:400;color:var(--text-muted, #6E6E73)}.sheet-sort-check{flex:none;font-size:11px;color:var(--accent, #0070f3)}.title-cell{min-width:0}.title-cell-text{white-space:nowrap;overflow-x:auto;overflow-y:hidden;text-overflow:ellipsis;scrollbar-width:thin;scrollbar-color:transparent transparent;padding-bottom:2px}td.cell-title-editable:hover .title-cell-text{text-overflow:clip;scrollbar-color:var(--border-medium) transparent}.title-cell-text::-webkit-scrollbar{height:3px}.title-cell-text::-webkit-scrollbar-thumb{background:transparent;border-radius:2px}td.cell-title-editable:hover .title-cell-text::-webkit-scrollbar-thumb{background:var(--border-medium)}.title-cell-desc{display:grid;grid-template-rows:0fr;transition:grid-template-rows .2s cubic-bezier(.2,.8,.2,1)}tr.desc-open .title-cell-desc,.title-cell-desc:focus-within{grid-template-rows:1fr}.title-cell-desc-inner{min-height:0;overflow:hidden}.title-cell-desc-text{margin:0;padding:6px 6px 10px 2px;font-size:12.5px;font-weight:400;line-height:1.5;color:var(--text-muted, #6E6E73)!important;cursor:text;border-radius:6px;max-height:min(200px,30vh);overflow-y:auto;overscroll-behavior:contain;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}.title-cell-desc-text:empty:before{content:"Add description\2026";opacity:.6;font-style:italic}.title-cell-desc-text:hover{background:#00000008}body.dark-mode .title-cell-desc-text:hover{background:#ffffff0a}.spreadsheet-table tbody tr.row-completed .title-cell-desc-text{opacity:.6}.title-cell-desc-text.is-clipped{-webkit-mask-image:linear-gradient(to bottom,#000 calc(100% - 26px),transparent);mask-image:linear-gradient(to bottom,#000 calc(100% - 26px),transparent)}.title-cell-desc-text.editing{padding:0;cursor:auto}.title-cell-desc-text.editing:hover{background:none}.title-cell-desc-text textarea.inline-edit-textarea{display:block;width:100%;min-height:52px;max-height:min(200px,30vh);resize:vertical;font-size:12.5px;font-weight:400;line-height:1.5;white-space:pre-wrap;border-radius:min(6px,20%)}td.cell-title-editable:hover:after,.title-cell-text:hover:after,.title-cell-desc-text:hover:after{display:none}.title-cell-text.editing,.title-cell-desc-text.editing,.title-cell-text .inline-edit-input{border-radius:min(6px,20%)}.row-peek-toggle{opacity:0;transition:opacity .2s ease,background .2s ease,color .2s ease}.spreadsheet-table tbody tr:hover .row-peek-toggle,.row-peek-toggle[aria-expanded=true],.row-peek-toggle:focus-visible{opacity:1}.row-peek-toggle[aria-expanded=true]{background:var(--accent-soft);color:var(--accent)}.title-desc-indicator{display:none;flex:0 0 auto;align-items:center;justify-content:center;width:20px;height:20px;margin-left:4px;padding:0;border:none;background:transparent;color:var(--text-light);border-radius:6px;font-size:10px;cursor:pointer;transition:background .15s ease,color .15s ease}body:not(.task-desc-always-open) tr:not(.desc-open):has(.title-cell-desc-text:not(:empty):not(.editing)) .title-desc-indicator{display:inline-flex}.title-desc-indicator:hover,.title-desc-indicator:focus-visible{background:var(--accent-soft);color:var(--accent)}body.task-desc-always-open tr:has(.title-cell-desc-text:not(:empty)) .title-cell-desc{grid-template-rows:1fr}body.task-desc-always-open tr:has(.title-cell-desc-text:not(:empty)) .row-peek-toggle{display:none}body.sheet-row-dragging .title-cell-desc,body.mw-dragging .title-cell-desc{grid-template-rows:0fr!important;transition:none!important}@media(hover:none){.row-peek-toggle,.row-actions{opacity:1}.title-cell-desc-text{max-height:min(180px,40vh)}}@media(prefers-reduced-motion:reduce){.title-cell-desc{transition:none!important}}@media(forced-colors:active){.title-cell-desc-text{outline:1px solid transparent}td.cell-title-editable:focus-within .title-cell-desc,tr.desc-open .title-cell-desc{outline:1px solid CanvasText}}@media print{.title-cell-desc{grid-template-rows:1fr!important}.title-cell-desc-text{max-height:none;overflow:visible}.row-peek-toggle,.title-desc-indicator{display:none!important}}.spreadsheet-table td.row-tools{white-space:nowrap}.spreadsheet-table td.row-tools>.row-actions{display:inline-flex;vertical-align:middle}.spreadsheet-table td.row-tools>.row-peek-toggle{display:inline-flex;vertical-align:middle;margin-inline-end:6px}.doc-file-badge{display:inline-block;padding:1px 6px;border-radius:4px;background:var(--bg-subtle, rgba(127, 127, 127, .12));border:1px solid var(--border-subtle);color:var(--text-secondary);font-size:10px;font-weight:700;letter-spacing:.04em}.doc-file-download-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--border-subtle);border-radius:8px;background:var(--bg-surface);color:var(--text-secondary);cursor:pointer}.doc-file-download-btn:hover{color:var(--text-primary);border-color:var(--accent)}.doc-file-viewer{max-width:900px;margin:0 auto}.doc-panel:not(.doc-panel-file-mode) .doc-file-viewer,.doc-panel:not(.doc-panel-file-mode) .doc-file-download-btn{display:none}.doc-panel-file-mode .doc-file-viewer{margin-bottom:20px}.doc-panel-file-mode .doc-main-layout{max-width:900px;margin:0 auto}.doc-panel-file-mode .doc-editor-container{max-width:none;min-height:0}.doc-panel-file-mode .doc-editor-container:before{content:"Notes";display:block;padding:16px 24px 0;color:var(--text-muted);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.doc-panel-file-mode .doc-editor{position:relative;min-height:96px;padding:10px 24px 24px}.doc-panel-file-mode .doc-editor.doc-notes-blank:before{content:"Add notes about this file\2026";position:absolute;top:10px;left:24px;color:var(--text-muted);pointer-events:none}.doc-panel-notes-hidden .doc-toolbar,.doc-panel-notes-hidden .doc-main-layout{display:none}@media(max-width:768px){.doc-panel-file-mode .doc-editor-container:before{padding:14px 16px 0}.doc-panel-file-mode .doc-editor{padding:8px 16px 20px}.doc-panel-file-mode .doc-editor.doc-notes-blank:before{top:8px;left:16px}}.doc-file-view{display:flex;flex-direction:column;gap:12px;min-width:0}.doc-file-state{display:flex;flex-direction:column;align-items:center;gap:12px;padding:56px 24px;text-align:center;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px}.doc-file-state h3{margin:0;font-size:16px;color:var(--text-primary);overflow-wrap:anywhere}.doc-file-state p{margin:0;max-width:40ch;color:var(--text-secondary);font-size:13px}.doc-file-state-icon{font-size:40px;color:var(--text-tertiary, var(--text-secondary))}.doc-file-note{margin:0;color:var(--text-secondary);font-size:12px}.doc-file-pdf{display:flex;flex-direction:column;gap:16px}.doc-file-pdf-page{min-height:60vh;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:8px;overflow:hidden}.doc-file-pdf-page canvas{display:block;width:100%;height:auto}.doc-file-image{display:flex;justify-content:center;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;padding:12px;overflow:auto}.doc-file-image img{max-width:100%;height:auto;cursor:zoom-in}.doc-file-image img.zoomed{max-width:none;cursor:zoom-out}.doc-file-sheet-tabs{display:flex;gap:4px;overflow-x:auto;padding-bottom:2px}.doc-file-sheet-tab{flex:0 0 auto;padding:5px 12px;border:1px solid var(--border-subtle);border-radius:6px;background:var(--bg-surface);color:var(--text-secondary);font-size:12px;cursor:pointer}.doc-file-sheet-tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.doc-file-table-wrap{overflow-x:auto;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:8px}.doc-file-table{border-collapse:collapse;font-size:13px;min-width:100%}.doc-file-table th,.doc-file-table td{padding:6px 10px;border-right:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);text-align:left;white-space:nowrap;color:var(--text-primary)}.doc-file-table th{position:sticky;top:0;background:var(--bg-main);font-weight:600}.doc-file-text,.doc-file-rich{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;padding:24px 28px;color:var(--text-primary)}.doc-file-text{margin:0;overflow-x:auto;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.6}.doc-file-rich img{max-width:100%;height:auto}.doc-file-rich table{display:block;overflow-x:auto}.doc-file-frame-wrap{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;overflow:hidden}.doc-file-frame{display:block;width:100%;height:70vh;border:0;background:#fff}.import-choice-modal .modal-body{display:flex;flex-direction:column;gap:10px}.import-choice{display:flex;align-items:flex-start;gap:14px;width:100%;padding:16px;border:1px solid var(--border-subtle);border-radius:12px;background:var(--bg-surface);text-align:left;cursor:pointer}.import-choice:hover{border-color:var(--accent);background:var(--bg-hover, var(--bg-surface))}.import-choice>i{flex:0 0 auto;margin-top:2px;font-size:18px;color:var(--accent)}.import-choice strong{display:block;margin-bottom:3px;color:var(--text-primary);font-size:14px}.import-choice span{color:var(--text-secondary);font-size:12px;line-height:1.45}.import-choice-filename{overflow-wrap:anywhere}@media(max-width:768px){.doc-file-pdf-page{min-height:40vh}.doc-file-frame{height:60vh}.doc-file-state{padding:40px 16px}.doc-file-text,.doc-file-rich{padding:16px}}@media(max-width:768px){body.panel-fullscreen .top-bar{display:none}body.panel-fullscreen .spreadsheet-panel-header,body.panel-fullscreen .doc-panel-header,body.panel-fullscreen .ab-panel-header{padding-top:calc(12px + env(safe-area-inset-top,0px))}#tasks-section.spreadsheet-open,#tasks-section.doc-open,#tasks-section.action-board-open{box-sizing:border-box;padding:0 0 calc(var(--bottom-nav-height, 70px) + max(calc(env(safe-area-inset-bottom,0px) - 12px),8px)) 0;display:flex;flex-direction:column;flex:1 1 auto;height:auto;min-height:0;overflow:hidden}#tasks-section.spreadsheet-open .spreadsheet-panel,#tasks-section.doc-open .doc-panel,#tasks-section.action-board-open .action-board-panel{position:static;inset:auto;z-index:auto;display:flex;flex-direction:column;flex:1 1 auto;height:auto;max-height:none;min-height:0;border-radius:0}#tasks-section.spreadsheet-open .skeleton-section,#tasks-section.doc-open .skeleton-section,#tasks-section.action-board-open .skeleton-section{display:none!important}#tasks-section.spreadsheet-open .spreadsheet-panel-header,#tasks-section.spreadsheet-open .batch-actions-bar,#tasks-section.doc-open .doc-panel-header,#tasks-section.doc-open .doc-toolbar,#tasks-section.action-board-open .ab-panel-header{flex-shrink:0}#tasks-section.doc-open .doc-panel-body{padding-bottom:24px;min-height:0}#tasks-section.spreadsheet-open .column-toggle-sidebar{top:calc(60px + env(safe-area-inset-top,0px));bottom:calc(var(--bottom-nav-height, 70px) + max(calc(env(safe-area-inset-bottom,0px) - 12px),8px));max-height:none}.spreadsheet-panel-header .back-btn,.spreadsheet-panel-header .icon-btn,.doc-panel-header .back-btn,.doc-panel-header .icon-btn,.ab-panel-header .back-btn{position:relative;width:36px;height:36px;min-width:36px;min-height:36px;padding:0;font-size:14px}.spreadsheet-panel-header .panel-header-right .icon-btn.icon-only{width:36px}#addTaskPanelBtn{width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important}.spreadsheet-panel-header .back-btn:after,.spreadsheet-panel-header .icon-btn:after,.doc-panel-header .back-btn:after,.doc-panel-header .icon-btn:after,.ab-panel-header .back-btn:after{content:"";position:absolute;top:50%;left:50%;width:44px;height:44px;transform:translate(-50%,-50%)}.spreadsheet-panel-header,.panel-header-left,.panel-header-right,.doc-panel-header,.ab-panel-header,.ab-header-left,.ab-header-right{flex-wrap:nowrap}.spreadsheet-title-group,.doc-title-group,.ab-panel-title{flex:1 1 auto;min-width:0}.spreadsheet-title-input,.doc-title-input{min-width:0;width:100%;max-width:none;text-overflow:ellipsis}}.ptr-indicator{position:fixed;top:calc(4px + env(safe-area-inset-top,0px));left:50%;transform:translate(-50%);z-index:8500;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--bg-surface);box-shadow:0 2px 10px #0000001f;opacity:0;pointer-events:none;transition:transform .25s cubic-bezier(.25,1,.5,1),opacity .2s ease}.ptr-spinner{width:16px;height:16px;border-radius:50%;border:2px solid var(--border-subtle);border-top-color:var(--accent);transition:transform .2s ease}.ptr-indicator.ptr-armed .ptr-spinner{transform:rotate(180deg);border-top-color:var(--accent)}.ptr-indicator.ptr-refreshing .ptr-spinner{animation:ptrSpin .7s linear infinite}@keyframes ptrSpin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.ptr-indicator{transition:opacity .2s ease}.ptr-indicator.ptr-refreshing .ptr-spinner{animation:none;border-color:var(--accent);border-top-color:var(--border-subtle)}}
