:root{color-scheme:dark;--bg-root: linear-gradient(135deg, #060410 0%, #0f0a18 50%, #060a10 100%);--bg-body: #060410;--bg-card: #181728;--bg-section: #121124;--bg-alt: #1e1d3a;--bg-header: linear-gradient(90deg, #1a0e30 0%, #120a22 100%);--bg-input: #201f3a;--accent: #a855f7;--accent-hover: #9333ea;--accent-dark: #7c3aed;--accent-rgb: 168, 85, 247;--brand-color: #a855f7;--text-primary: #e8e6f0;--text-secondary: #c4c2d0;--text-muted: #8a88a0;--text-faint: #6a6880;--border-primary: #353355;--border-secondary: #454365;--border-tertiary: #555375;--border-header: rgba(255, 255, 255, .08);--border-header-light: rgba(255, 255, 255, .05);--progress-bg: #2d2b45;--color-number: #818cf8;--btn-secondary-bg: #2d2b45;--btn-secondary-color: #c4c2d0;--btn-danger-bg: rgba(220, 38, 38, .15);--btn-danger-color: #f87171;--btn-delete-color: #4d4b65;--shadow: rgba(0, 0, 0, .3);--shadow-heavy: rgba(0, 0, 0, .4);--tab-hover: rgba(255, 255, 255, .06);--celebration-color: #c084fc;--celebration-shadow: rgba(192, 132, 252, .4);--scrollbar-thumb: #3d3b55;--dropdown-bg: #1c1b2e;--dropdown-hover: #1f1e33;--dropdown-selected-bg: rgba(124, 58, 237, .1);--dropdown-selected-color: #7c3aed;--dropdown-shadow: 0 4px 20px rgba(0, 0, 0, .4), 0 0 0 1px rgba(255, 255, 255, .05);--color-danger: #ef4444;--color-danger-hover: #dc2626;--color-danger-bg: rgba(239, 68, 68, .1);--color-danger-rgb: 239, 68, 68;--color-warning: #d97706;--color-warning-bg: rgba(217, 119, 6, .12);--color-warning-text: #f59e0b;--color-warning-rgb: 217, 119, 6;--color-success: #22c55e;--color-success-rgb: 34, 197, 94;--color-zebra: rgba(168, 85, 247, .05);--color-priority-urgent: rgba(239, 68, 68, .06);--color-priority-important: rgba(245, 158, 11, .06);--color-priority-blue: rgba(59, 130, 246, .08);--color-priority-urgent-hover: rgba(239, 68, 68, .14);--color-priority-important-hover: rgba(245, 158, 11, .14);--color-priority-blue-hover: rgba(59, 130, 246, .16);--color-stat-fact: #fbbf24;--color-stat-plan: #c084fc;--color-stat-xp: #fbbf24;--color-stat-xp-rgb: 251, 191, 36;--color-stat-ap: #a78bfa;--color-stat-ap-rgb: 167, 139, 250;--color-stat-score: #fb923c;--color-stat-percent: #818cf8}[data-theme=light]{color-scheme:light;--bg-root: linear-gradient(135deg, #f5f3ff 0%, #f5f6f7 50%, #faf5ff 100%);--bg-body: #f5f6f7;--bg-card: #fff;--bg-section: #f3f4f6;--bg-alt: #e5e7eb;--bg-header: linear-gradient(90deg, #ede9fe 0%, #f5f3ff 50%, #faf5ff 100%);--bg-input: #fff;--accent: #8b5cf6;--accent-hover: #7c3aed;--accent-dark: #6d28d9;--accent-rgb: 139, 92, 246;--brand-color: #a855f7;--text-primary: #1f2937;--text-secondary: #374151;--text-muted: #6b7280;--text-faint: #9ca3af;--border-primary: #d1d5db;--border-secondary: #c5c9d0;--border-tertiary: #c5c9d0;--border-header: rgba(0, 0, 0, .12);--border-header-light: rgba(0, 0, 0, .06);--progress-bg: #e5e7eb;--color-number: #7c3aed;--btn-secondary-bg: #f3f4f6;--btn-secondary-color: #374151;--btn-danger-bg: rgba(220, 38, 38, .08);--btn-danger-color: #dc2626;--btn-delete-color: #9ca3af;--shadow: rgba(0, 0, 0, .12);--shadow-heavy: rgba(0, 0, 0, .2);--tab-hover: rgba(0, 0, 0, .06);--celebration-color: #8b5cf6;--celebration-shadow: rgba(139, 92, 246, .4);--scrollbar-thumb: #d1d5db;--dropdown-bg: #fff;--dropdown-hover: #f3f4f6;--dropdown-selected-bg: rgba(139, 92, 246, .1);--dropdown-selected-color: #7c3aed;--dropdown-shadow: 0 4px 20px rgba(0, 0, 0, .18), 0 0 0 1px rgba(0, 0, 0, .08);--color-danger: #ef4444;--color-danger-hover: #dc2626;--color-danger-bg: rgba(239, 68, 68, .1);--color-danger-rgb: 239, 68, 68;--color-warning: #d97706;--color-warning-bg: rgba(217, 119, 6, .12);--color-warning-text: #f59e0b;--color-warning-rgb: 217, 119, 6;--color-success: #22c55e;--color-success-rgb: 34, 197, 94;--color-zebra: rgba(139, 92, 246, .04);--color-priority-urgent: rgba(239, 68, 68, .06);--color-priority-important: rgba(245, 158, 11, .06);--color-priority-blue: rgba(59, 130, 246, .08);--color-priority-urgent-hover: rgba(239, 68, 68, .14);--color-priority-important-hover: rgba(245, 158, 11, .14);--color-priority-blue-hover: rgba(59, 130, 246, .16);--color-stat-fact: #fbbf24;--color-stat-plan: #c084fc;--color-stat-xp: #d97706;--color-stat-xp-rgb: 217, 119, 6;--color-stat-ap: #7c3aed;--color-stat-ap-rgb: 124, 58, 237;--color-stat-score: #fb923c;--color-stat-percent: #818cf8}body,.gagarin-header,.gagarin-root{transition:background .25s ease,color .25s ease,border-color .25s ease}@media(prefers-color-scheme:light){:root:not([data-theme]){color-scheme:light;--bg-root: linear-gradient(135deg, #f5f3ff 0%, #f5f6f7 50%, #faf5ff 100%);--bg-body: #f5f6f7;--bg-card: #fff;--bg-section: #f3f4f6;--bg-alt: #e5e7eb;--bg-header: linear-gradient(90deg, #ede9fe 0%, #f5f3ff 50%, #faf5ff 100%);--bg-input: #fff;--accent: #8b5cf6;--accent-hover: #7c3aed;--accent-dark: #6d28d9;--accent-rgb: 139, 92, 246;--brand-color: #a855f7;--text-primary: #1f2937;--text-secondary: #374151;--text-muted: #6b7280;--text-faint: #9ca3af;--border-primary: #d1d5db;--border-secondary: #c5c9d0;--border-tertiary: #c5c9d0;--border-header: rgba(0, 0, 0, .12);--border-header-light: rgba(0, 0, 0, .06);--progress-bg: #e5e7eb;--color-number: #7c3aed;--btn-secondary-bg: #f3f4f6;--btn-secondary-color: #374151;--btn-danger-bg: rgba(220, 38, 38, .08);--btn-danger-color: #dc2626;--btn-delete-color: #9ca3af;--shadow: rgba(0, 0, 0, .12);--shadow-heavy: rgba(0, 0, 0, .2);--tab-hover: rgba(0, 0, 0, .06);--celebration-color: #8b5cf6;--celebration-shadow: rgba(139, 92, 246, .4);--scrollbar-thumb: #d1d5db;--dropdown-bg: #fff;--dropdown-hover: #f3f4f6;--dropdown-selected-bg: rgba(139, 92, 246, .1);--dropdown-selected-color: #7c3aed;--dropdown-shadow: 0 4px 20px rgba(0, 0, 0, .18), 0 0 0 1px rgba(0, 0, 0, .08);--color-danger: #ef4444;--color-danger-hover: #dc2626;--color-danger-bg: rgba(239, 68, 68, .1);--color-danger-rgb: 239, 68, 68;--color-warning: #d97706;--color-warning-bg: rgba(217, 119, 6, .12);--color-warning-text: #f59e0b;--color-warning-rgb: 217, 119, 6;--color-success: #22c55e;--color-success-rgb: 34, 197, 94;--color-zebra: rgba(139, 92, 246, .04);--color-priority-urgent: rgba(239, 68, 68, .12);--color-priority-important: rgba(245, 158, 11, .12);--color-priority-blue: rgba(59, 130, 246, .08);--color-priority-urgent-hover: rgba(239, 68, 68, .22);--color-priority-important-hover: rgba(245, 158, 11, .22);--color-priority-blue-hover: rgba(59, 130, 246, .16);--color-stat-fact: #fbbf24;--color-stat-plan: #c084fc;--color-stat-xp: #d97706;--color-stat-xp-rgb: 217, 119, 6;--color-stat-ap: #7c3aed;--color-stat-ap-rgb: 124, 58, 237;--color-stat-score: #fb923c;--color-stat-percent: #818cf8}}.gagarin-root{position:relative}.gagarin-root:before{content:"";position:fixed;inset:0;background:url(/bg-gagarin.jpg) center/cover no-repeat;opacity:.04;pointer-events:none;z-index:0}.gagarin-root>*{position:relative;z-index:1}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Montserrat,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow:hidden;background:var(--bg-body);color:var(--text-primary)}#root{width:100vw;height:100vh;overflow-y:auto}input[type=checkbox]{accent-color:var(--accent)}.gagarin-tabs::-webkit-scrollbar{display:none}.gagarin-tab:hover:not(.gagarin-tab-active){background:var(--tab-hover)}.gagarin-tab[draggable=true]{cursor:grab}.gagarin-tab[draggable=true]:active{cursor:grabbing}.gagarin-project-tag:hover{filter:brightness(.85)}@keyframes searchExpand{0%{width:40px;opacity:.5}to{width:240px;opacity:1}}@keyframes timerPulse{0%,to{background:rgba(var(--accent-rgb),.06)}50%{background:rgba(var(--accent-rgb),.16)}}@keyframes fadeIn{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes celebrationPop{0%{transform:scale(0);opacity:0}20%{transform:scale(1.3);opacity:1}40%{transform:scale(1)}to{transform:scale(1);opacity:0}}.gagarin-stats-row{transition:max-height .2s ease,opacity .15s ease,padding .2s ease;overflow:hidden}.gagarin-stats-row.open{max-height:60px;opacity:1}.gagarin-stats-row.closed{max-height:0;opacity:0;padding-top:0!important;padding-bottom:0!important;border-top-color:transparent!important}@keyframes lpbPulse{0%,to{opacity:1}50%{opacity:.5}}.lpb-pulse{animation:lpbPulse 1.5s ease-in-out infinite}@keyframes elephantDoneBlink{0%,to{box-shadow:0 0 rgba(var(--accent-rgb),0)}50%{box-shadow:0 0 0 5px rgba(var(--accent-rgb),.4)}}.elephant-done-blink{animation:elephantDoneBlink 1.2s ease-in-out infinite;border-radius:3px}.elephant-resize-handle{background:transparent;transition:background .15s}.elephant-resize-handle:hover,.elephant-resize-handle:active{background:var(--accent);opacity:.4;border-radius:2px}.kanban-dismiss:hover{color:var(--color-danger)!important;background:var(--color-danger-bg)!important}.gagarin-table-wrap{overflow:visible}.gagarin-table td,.gagarin-table th{border-right:1px solid var(--border-primary)}.gagarin-table thead tr:first-child th:first-child{border-top-left-radius:11px}.gagarin-table thead tr:first-child th:last-child{border-top-right-radius:11px}.gagarin-table tbody tr:last-child td{border-bottom:none!important}.gagarin-table tbody tr:last-child td:first-child{border-bottom-left-radius:11px}.gagarin-table tbody tr:last-child td:last-child{border-bottom-right-radius:11px}.gagarin-table tbody tr:hover .tr-delete-cross{opacity:1!important}.gagarin-table th:first-child,.gagarin-table td:first-child{border-right:none}.gagarin-table th:last-child,.gagarin-table td:last-child{border-right:none!important}.gagarin-add-btn:hover{background:rgba(var(--accent-rgb),.05)!important}.gagarin-add-btn--primary:hover span{background:rgba(var(--accent-rgb),.22)}.gagarin-add-btn--secondary:hover span{border-color:var(--text-muted);color:var(--text-secondary)}.gagarin-add-btn:first-child:last-child{border-bottom-left-radius:11px;border-bottom-right-radius:11px}.gagarin-add-btn:first-child:not(:last-child){border-bottom-left-radius:11px}.gagarin-add-btn:last-child:not(:first-child){border-bottom-right-radius:11px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center}.empty-state__icon{font-size:52px;margin-bottom:12px;line-height:1;filter:grayscale(.3);opacity:.8}.empty-state__title{font-size:16px;font-weight:600;color:var(--text-secondary);margin-bottom:6px}.empty-state__description{font-size:13px;color:var(--text-muted);max-width:280px;line-height:1.5}.empty-state__action{margin-top:16px;padding:8px 20px;border:none;border-radius:8px;background:var(--accent);color:#fff;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .15s}.empty-state__action:hover{background:var(--accent-hover)}.elephant-group-top td{border-top:2px solid var(--accent)!important}.elephant-group-bot td{border-bottom:2px solid var(--accent)!important}.elephant-group-top td:first-child,.elephant-group-mid td:first-child,.elephant-group-bot td:first-child{box-shadow:-2px 0 0 var(--accent)!important}.elephant-group-top td:last-child,.elephant-group-mid td:last-child,.elephant-group-bot td:last-child{box-shadow:2px 0 0 var(--accent)!important}.task-table tbody tr:has(+.elephant-group-top) td{border-bottom:none!important}.elephant-group-bot+tr td{border-top:none!important}.task-table thead tr th:first-child{border-top-left-radius:11px}.task-table thead tr th:last-child{border-top-right-radius:11px}.task-table tbody tr:last-child td:first-child{border-bottom-left-radius:11px}.task-table tbody tr:last-child td:last-child{border-bottom-right-radius:11px}@media(max-width:768px){.gagarin-root{background-image:none!important;background:var(--bg-body)!important}.gagarin-header{padding:6px 10px!important}.gagarin-stats-row{gap:4px!important;padding:4px 8px!important}.gagarin-tabs{padding:0 4px!important}.gagarin-tabs button{padding:6px 8px!important;font-size:10px!important;min-height:44px}button,[role=combobox],[role=option],input[type=checkbox]{min-height:44px;min-width:44px}input[type=text],input[type=number],input[type=date],input[type=time],select,textarea{min-height:44px}}@media(min-width:769px)and (max-width:1024px){.gagarin-header{padding:8px 12px}.gagarin-tabs button{padding:6px 10px;font-size:11px}}.dropdown-backdrop{position:fixed;inset:0;z-index:10002}.dropdown-menu{position:fixed;z-index:10003;background:var(--dropdown-bg);border-radius:8px;box-shadow:0 4px 20px var(--shadow-heavy),0 0 0 1px var(--border-header-light);padding:4px;animation:dropdownFadeIn .15s ease-out;max-height:280px;overflow-y:auto;overflow-x:hidden}.dropdown-menu.dropdown-up{animation:dropdownFadeInUp .15s ease-out}.dropdown-item{padding:6px 10px;border-radius:6px;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:12px;white-space:nowrap;transition:background .1s;color:var(--text-secondary)}.dropdown-item:hover{background:var(--dropdown-hover)}.dropdown-item.selected{background:var(--dropdown-selected-bg);color:var(--dropdown-selected-color);font-weight:500}.dropdown-item.focused{outline:2px solid var(--accent);outline-offset:-2px}.dropdown-trigger{cursor:pointer;display:inline-flex;align-items:center}.dropdown-chevron{font-size:14px;color:var(--text-faint);margin-left:4px;line-height:1;flex-shrink:0}.dropdown-trigger-form{height:32px;padding:0 10px;border:1px solid var(--border-secondary);border-radius:6px;font-size:13px;font-family:inherit;background:var(--bg-input);box-sizing:border-box;gap:4px;transition:border-color .15s;color:var(--text-secondary)}.dropdown-trigger-form:hover{border-color:var(--text-faint)}.dropdown-trigger-filter{padding:4px 6px;background:var(--bg-input);border:1px solid var(--border-secondary);border-radius:4px;font-size:12px;font-family:inherit;height:26px;box-sizing:border-box;gap:4px;transition:border-color .15s;color:var(--text-secondary)}.dropdown-trigger-filter:hover{border-color:var(--text-faint)}.dropdown-menu.dropdown-grid-wrap{display:flex;flex-direction:column;width:288px;max-height:260px;padding:0;overflow:hidden}.dropdown-grid-items{display:grid;grid-template-columns:repeat(8,1fr);gap:2px;padding:6px;overflow-y:auto;overscroll-behavior:contain;flex:1;min-height:0}.dropdown-grid-items .dropdown-item{justify-content:center;padding:6px;font-size:20px;border-radius:6px;aspect-ratio:1}.dropdown-grid-items .dropdown-item.selected{background:rgba(var(--accent-rgb),.2);box-shadow:inset 0 0 0 2px var(--accent)}.dropdown-grid-nav{display:flex;align-items:center;justify-content:center;height:22px;cursor:pointer;color:var(--text-faint);font-size:10px;border:none;background:transparent;flex-shrink:0;transition:color .15s,background .15s;font-family:inherit}.dropdown-grid-nav:hover{background:var(--dropdown-hover);color:var(--text-secondary)}.dropdown-grid-nav.disabled{opacity:.15;pointer-events:none}.dropdown-grid-items::-webkit-scrollbar{width:4px}.dropdown-grid-items::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:2px}.dropdown-menu::-webkit-scrollbar{width:4px}.dropdown-menu::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:2px}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes dropdownFadeInUp{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.ds-trigger{display:flex;align-items:center;gap:2px}.ds-date-text{font-size:12px;font-family:inherit;cursor:pointer;padding:2px 4px;border-radius:4px;border:none;background:transparent;transition:background .15s}.ds-date-text:hover{background:rgba(var(--accent-rgb),.1)}.ds-today-btn{border:none;background:transparent;cursor:pointer;padding:1px;line-height:1;font-size:11px;color:var(--text-muted);opacity:.5;flex-shrink:0}.ds-today-btn:hover{opacity:1}.ds-popup{position:fixed;z-index:10002;background:var(--bg-card);border:1px solid var(--border-secondary);border-radius:8px;box-shadow:0 12px 32px var(--shadow-heavy);padding:10px;width:252px;-webkit-user-select:none;user-select:none}.ds-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.ds-header-title{font-size:13px;font-weight:600;color:var(--text-primary);cursor:default}.ds-nav-btn{border:none;background:transparent;cursor:pointer;font-size:14px;color:var(--text-muted);padding:2px 6px;border-radius:4px;line-height:1}.ds-nav-btn:hover{background:var(--bg-alt);color:var(--text-primary)}.ds-weekdays{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:2px}.ds-weekday{font-size:10px;font-weight:600;color:var(--text-muted);text-align:center;padding:2px 0}.ds-weekday--weekend{color:var(--color-danger);opacity:.6}.ds-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px}.ds-day{width:32px;height:28px;display:flex;align-items:center;justify-content:center;font-size:12px;border-radius:6px;cursor:pointer;color:var(--text-secondary);border:none;background:transparent;font-family:inherit;padding:0;transition:background .1s}.ds-day:hover{background:rgba(var(--accent-rgb),.12)}.ds-day--other{color:var(--text-faint);opacity:.4}.ds-day--other:hover{opacity:.7}.ds-day--weekend{color:var(--color-danger);opacity:.7}.ds-day--today{font-weight:700;color:var(--accent);box-shadow:inset 0 0 0 1.5px var(--accent)}.ds-day--selected{background:var(--accent)!important;color:#fff!important;font-weight:600;opacity:1!important}.ds-quick{display:flex;gap:4px;margin-top:6px;padding-top:6px;border-top:1px solid var(--border-primary)}.ds-quick-btn{flex:1;padding:4px 0;border:none;background:var(--bg-alt);color:var(--text-secondary);font-size:11px;font-family:inherit;border-radius:4px;cursor:pointer;transition:background .15s,color .15s}.ds-quick-btn:hover{background:rgba(var(--accent-rgb),.15);color:var(--accent)}.ds-quick-btn--reset{color:var(--color-danger)}.ds-quick-btn--reset:hover{background:#ef44441a;color:var(--color-danger)}.dts-trigger{display:flex;align-items:center;gap:2px;min-width:0}.dts-date-text{font-size:12px;font-family:inherit;cursor:pointer;padding:2px 3px;border-radius:4px;white-space:nowrap;background:transparent;transition:background .15s;flex-shrink:0}.dts-date-text:hover{background:rgba(var(--accent-rgb),.1)}.dts-time-badge{font-size:10px;color:var(--text-muted);cursor:pointer;padding:1px 3px;border-radius:3px;white-space:nowrap;flex-shrink:0;transition:color .15s,background .15s}.dts-time-badge:hover{color:var(--text-secondary);background:rgba(var(--accent-rgb),.08)}.dts-today-btn{border:none;background:transparent;cursor:pointer;padding:1px;line-height:1;font-size:11px;color:var(--text-muted);opacity:.5;flex-shrink:0;transition:opacity .15s}.dts-today-btn:hover{opacity:1}.dts-deadline-dot{width:5px;height:5px;border-radius:50%;background:var(--text-muted);opacity:.4;cursor:pointer;flex-shrink:0;transition:opacity .15s}.dts-deadline-dot:hover{opacity:.9}.dts-deadline-dot--past{background:var(--color-danger);opacity:.75}.dts-deadline-dot--past:hover{opacity:1}.dts-copy-btn{border:none;background:transparent;cursor:pointer;padding:1px;line-height:1;flex-shrink:0;opacity:0;color:var(--text-muted);filter:grayscale(1);transition:opacity .15s,filter .15s}tr:hover .dts-copy-btn{opacity:.4}.dts-copy-btn:hover{opacity:1!important;filter:none}.dts-popup{position:fixed;z-index:10002;background:var(--bg-card);border:1px solid var(--border-secondary);border-radius:8px;box-shadow:0 12px 32px var(--shadow-heavy);padding:10px;width:260px;-webkit-user-select:none;user-select:none}.dts-tabs{display:flex;gap:4px;margin-bottom:8px}.dts-tab{flex:1;padding:4px 6px;font-size:11px;font-family:inherit;border:1px solid var(--border-primary);border-radius:5px;background:transparent;color:var(--text-muted);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:background .15s,color .15s,border-color .15s}.dts-tab:hover{background:var(--bg-alt);color:var(--text-secondary)}.dts-tab--active{background:rgba(var(--accent-rgb),.12);color:var(--accent);border-color:rgba(var(--accent-rgb),.3)}.dts-tab--deadline-active{background:#ef44441a;color:var(--color-danger);border-color:#ef44444d}.dts-tab--deadline-past{color:var(--color-danger)}.dts-cal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.dts-cal-title{font-size:13px;font-weight:600;color:var(--text-primary)}.dts-nav-btn{border:none;background:transparent;cursor:pointer;font-size:14px;color:var(--text-muted);padding:2px 6px;border-radius:4px;line-height:1}.dts-nav-btn:hover{background:var(--bg-alt);color:var(--text-primary)}.dts-weekdays{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:2px}.dts-weekday{font-size:10px;font-weight:600;color:var(--text-muted);text-align:center;padding:2px 0}.dts-weekday--weekend{color:var(--color-danger);opacity:.6}.dts-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px}.dts-day{width:32px;height:26px;display:flex;align-items:center;justify-content:center;font-size:12px;border-radius:5px;cursor:pointer;color:var(--text-secondary);border:none;background:transparent;font-family:inherit;padding:0;transition:background .1s}.dts-day:hover{background:rgba(var(--accent-rgb),.12)}.dts-day--other-month{color:var(--text-faint);opacity:.4}.dts-day--other-month:hover{opacity:.7}.dts-day--weekend{color:var(--color-danger);opacity:.7}.dts-day--today{font-weight:700;color:var(--accent);box-shadow:inset 0 0 0 1.5px var(--accent)}.dts-day--selected{background:var(--accent)!important;color:#fff!important;font-weight:600;opacity:1!important}.dts-day--cross-ref{box-shadow:inset 0 0 0 1px rgba(var(--accent-rgb),.35)}.dts-quick{display:flex;gap:4px;margin-top:6px;padding-top:6px;border-top:1px solid var(--border-primary)}.dts-quick-btn{flex:1;padding:4px 0;border:none;background:var(--bg-alt);color:var(--text-secondary);font-size:11px;font-family:inherit;border-radius:4px;cursor:pointer;transition:background .15s,color .15s}.dts-quick-btn:hover{background:rgba(var(--accent-rgb),.15);color:var(--accent)}.dts-quick-btn--reset{color:var(--color-danger)}.dts-quick-btn--reset:hover{background:#ef44441a;color:var(--color-danger)}.dts-section{margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid var(--border-primary);display:flex;flex-direction:column;gap:5px}.dts-time-row{display:flex;align-items:center;gap:6px}.dts-time-label{font-size:11px;color:var(--text-muted);width:58px;flex-shrink:0}.dts-time-input{flex:1;font-size:12px;font-family:inherit;border:1px solid var(--border-primary);border-radius:4px;background:var(--bg-section);color:var(--text-primary);padding:3px 6px;outline:none;transition:border-color .15s}.dts-time-input:focus{border-color:var(--accent)}.dts-time-clear{border:none;background:transparent;cursor:pointer;font-size:10px;color:var(--text-muted);padding:2px;flex-shrink:0;transition:color .15s}.dts-time-clear:hover{color:var(--color-danger)}.tr-settings-popup{position:fixed;z-index:9999;background:var(--bg-card);border:1px solid var(--border-secondary);border-radius:8px;box-shadow:0 12px 32px var(--shadow-heavy);padding:12px;width:360px;isolation:isolate}.tr-settings-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;padding-bottom:6px;border-bottom:1px solid var(--border-primary)}.tr-settings-title{font-size:12px;font-weight:700;color:var(--text-primary)}.tr-settings-close{border:none;background:transparent;cursor:pointer;color:var(--text-muted);font-size:12px;padding:2px 4px;line-height:1;border-radius:4px}.tr-settings-close:hover{color:var(--text-primary);background:var(--bg-section)}.tr-settings-tabs{display:flex;border-bottom:1px solid var(--border-primary);margin:0 -12px 8px;padding:0 4px}.tr-settings-tab{flex:1;padding:6px 4px;font-size:11px;font-weight:600;border:none;background:transparent;cursor:pointer;color:var(--text-muted);font-family:inherit}.tr-settings-tab--active{color:var(--accent);border-bottom:2px solid var(--accent);margin-bottom:-1px}.tr-settings-body{display:flex;flex-direction:column}.tr-settings-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}.tr-settings-label{font-size:11px;color:var(--text-muted);min-width:80px;flex-shrink:0}.tr-settings-input{flex:1;padding:4px 8px;border:1px solid var(--border-secondary);border-radius:4px;font-size:12px;font-family:inherit;background:var(--bg-input);color:var(--text-primary);outline:none}.tr-settings-input:focus{border-color:var(--accent)}.tr-settings-textarea{width:100%;resize:vertical;min-height:60px;padding:6px 8px;border:1px solid var(--border-secondary);border-radius:4px;font-size:12px;font-family:inherit;background:var(--bg-input);color:var(--text-primary);outline:none;box-sizing:border-box}.tr-settings-textarea:focus{border-color:var(--accent)}.tr-settings-repeat{display:flex;gap:3px;flex-wrap:wrap;flex:1}.tr-settings-repeat-btn{padding:2px 7px;font-size:11px;border-radius:4px;border:1px solid var(--border-secondary);background:var(--bg-alt);color:var(--text-muted);cursor:pointer;font-family:inherit}.tr-settings-repeat-btn--active{background:rgba(var(--accent-rgb),.12);color:var(--accent);border-color:var(--accent)}.tr-sessions-list{margin-bottom:10px}.tr-sessions-empty{font-size:13px;color:var(--text-muted);margin-bottom:10px;text-align:center;padding:12px 0}.tr-session-row{display:flex;align-items:center;gap:6px;padding:5px 8px;border-radius:6px;background:var(--bg-section);border:1px solid var(--border-primary);margin-bottom:4px}.tr-session-row:hover{background:var(--bg-alt)}.tr-session-date{font-size:12px;color:var(--text-secondary);cursor:pointer;min-width:52px;flex-shrink:0}.tr-session-date:hover{color:var(--accent);text-decoration:underline dotted}.tr-session-clock{font-size:11px;color:var(--text-muted);flex:1}.tr-session-time{font-size:13px;font-weight:600;color:var(--text-primary);cursor:pointer;flex-shrink:0;min-width:32px;text-align:right}.tr-session-time:hover{color:var(--accent);text-decoration:underline dotted}.tr-session-badge{font-size:12px;flex-shrink:0}.tr-session-edit-input{padding:2px 5px;border:1px solid var(--accent);border-radius:4px;font-size:12px;font-family:inherit;background:var(--bg-input);color:var(--text-primary);outline:none;width:52px}.tr-session-edit-input--date{width:90px}.tr-session-delete{border:none;background:transparent;color:var(--border-secondary);cursor:pointer;font-size:11px;padding:2px;line-height:1;flex-shrink:0}.tr-session-delete:hover{color:var(--color-danger)}.tr-session-total{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--text-secondary);margin-top:6px;border-top:1px dashed var(--border-secondary);padding-top:6px}.tr-manual{display:flex;align-items:center;gap:4px;margin-top:4px}.tr-manual-input{width:54px;padding:4px 6px;border:1px solid var(--border-primary);border-radius:4px;font-size:12px;font-family:inherit;text-align:center;background:var(--bg-input);color:var(--text-secondary)}.tr-manual-input:focus{border-color:var(--accent);outline:none}.tr-manual-btn{padding:4px 10px;border:none;background:var(--color-warning);color:#fff;border-radius:4px;font-size:12px;cursor:pointer;font-family:inherit;white-space:nowrap}tr.task-row-hover:hover:not(:focus-within){background:var(--row-hover-bg)!important}.tr-drag-handle{cursor:grab;font-size:14px;color:var(--border-secondary);line-height:1;-webkit-user-select:none;user-select:none;padding:4px 0;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s}tr:hover .tr-drag-handle{opacity:.65}.tr-drag-handle:hover{opacity:1!important}.tr-drag-handle:active{cursor:grabbing}.tr-play-btn{opacity:0;transition:opacity .15s}tr:hover .tr-play-btn{opacity:1}.tr-play-btn--has-time{opacity:.5}tr:hover .tr-play-btn--has-time{opacity:1}.tr-copy-btn{border:none;background:transparent;cursor:pointer;padding:1px;line-height:1;font-size:10px;flex-shrink:0;opacity:0;transition:opacity .15s;filter:grayscale(1)}tr:hover .tr-copy-btn{opacity:.4}.tr-copy-btn:hover{opacity:1!important;filter:none}.tr-project-arrow{font-size:14px;color:var(--border-secondary);line-height:1;flex-shrink:0}.tr-task-text{font-size:13px;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:all .2s ease}.tr-task-text--done{text-decoration:line-through;color:var(--text-muted)}.tr-deadline-badge{font-size:10px;font-weight:800;color:var(--color-danger);background:var(--color-danger-bg);border-radius:4px;padding:0 4px;flex-shrink:0;line-height:16px;cursor:default}.tr-check-count{font-size:9px;color:var(--text-muted);flex-shrink:0;display:flex;align-items:center;gap:3px}.tr-comment-btn{border:none;background:transparent;cursor:pointer;padding:2px;line-height:1;flex-shrink:0;font-size:12px}.tr-comment-btn--empty{color:var(--text-muted);opacity:0}tr:hover .tr-comment-btn--empty{opacity:.65}.tr-comment-btn--empty:hover{opacity:1!important}.tr-comment-btn--filled{color:var(--accent);opacity:1}.tr-settings-btn{border:none;background:transparent;cursor:pointer;padding:2px;line-height:1;flex-shrink:0;font-size:12px;color:var(--text-muted);opacity:0;filter:grayscale(1);transition:opacity .15s,filter .15s}tr:hover .tr-settings-btn{opacity:.65}.tr-settings-btn:hover{opacity:1!important;filter:none}.tr-settings-btn--active{opacity:.8!important;filter:none;color:var(--accent)}.tr-comment-popup{position:fixed;z-index:9999;background:var(--bg-card);border:1px solid var(--border-secondary);border-radius:8px;box-shadow:0 12px 32px var(--shadow-heavy);padding:10px;min-width:320px;max-width:480px;isolation:isolate}.tr-comment-preview{font-size:12px;color:var(--text-primary);line-height:1.5;white-space:pre-wrap;word-break:break-word;margin-bottom:8px;padding:6px 8px;background:var(--bg-section);border-radius:4px;border:1px solid var(--border-primary)}.tr-comment-preview a{color:var(--accent);text-decoration:underline;word-break:break-all}.tr-comment-preview a:hover{opacity:.8}.tr-comment-textarea{width:100%;resize:both;border:1px solid var(--border-secondary);border-radius:4px;padding:6px 8px;font-size:12px;font-family:inherit;background:var(--bg-input);color:var(--text-primary);outline:none;box-sizing:border-box}.tr-fact-running{font-size:13px;color:var(--accent);font-weight:600}.tr-fact-paused{font-size:13px;color:var(--color-warning);font-weight:600}.tr-fact-display{font-size:13px;font-weight:500}.tr-time-input{opacity:.4;transition:opacity .15s}tr:hover .tr-time-input{opacity:1}.tr-time-input:focus{opacity:1}.tr-xp{font-size:13px;font-weight:500;color:var(--text-secondary)}.tr-xp--zero{font-weight:400;color:var(--border-secondary)}.tr-checklist{display:flex;flex-direction:column;gap:3px;flex:1;max-width:400px}.tr-checklist-item{display:flex;align-items:center;gap:6px;font-size:12px}.tr-checklist-text{flex:1;min-width:0}.tr-checklist-text--done{text-decoration:line-through;color:var(--text-muted)}.tr-checklist-text--active{color:var(--text-secondary)}.tr-checklist-delete{border:none;background:transparent;color:var(--border-secondary);cursor:pointer;font-size:10px;padding:2px;flex-shrink:0;width:16px;text-align:center}.tr-checklist-add{display:flex;align-items:center;gap:6px;margin-top:2px}.tr-checklist-input{flex:1;min-width:0;padding:3px 6px;border:1px solid var(--border-primary);border-radius:4px;font-size:11px;font-family:inherit;background:var(--bg-input);color:var(--text-secondary)}.tr-checklist-add-btn{padding:3px 6px;border:none;background:var(--accent);color:#fff;border-radius:4px;font-size:10px;cursor:pointer;flex-shrink:0}.elephant-row{background:var(--bg-card);border-top:1px solid var(--border-secondary)}.elephant-row.drop-hover{border-top:3px solid var(--accent)}.elephant-row.drop-bind{background:rgba(var(--accent-rgb),.25);box-shadow:inset 0 0 0 2px var(--accent)}.elephant-row__handle-cell{width:24px;padding:0;text-align:center;position:relative;overflow:visible}.elephant-row__date{font-size:10px;color:var(--text-muted);vertical-align:middle}.elephant-row__project-wrap{display:flex;align-items:center;gap:3px;cursor:pointer}.elephant-row__project-tag{font-size:11px;font-weight:600;padding:1px 6px;border-radius:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:18px;flex:1;min-width:0}.elephant-row__project-chevron{font-size:14px;color:var(--border-secondary);line-height:1;flex-shrink:0}.elephant-row__main-wrap{display:flex;align-items:center;gap:4px}.elephant-row__expand-btn{border:none;cursor:pointer;flex-shrink:0;width:18px;height:18px;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;font-size:14px;line-height:1;background:transparent;transition:opacity .15s}.elephant-row__expand-btn.collapsed{opacity:.6}.elephant-row__play-btn{opacity:0;transition:opacity .15s}.elephant-row:hover .elephant-row__play-btn{opacity:1}.elephant-row__name{flex:1;min-width:60px;font-weight:700;font-size:13px}.elephant-row__count{font-size:10px;color:var(--text-muted);flex-shrink:0}.elephant-row__progress-bar{width:40px;flex-shrink:0}.elephant-row__settings-btn{border:none;background:transparent;cursor:pointer;padding:2px 4px;flex-shrink:0;line-height:1;color:var(--text-muted);font-size:12px;opacity:0;transition:opacity .15s}.elephant-row:hover .elephant-row__settings-btn{opacity:.65}.elephant-row__settings-btn:hover{opacity:1!important}.elephant-row__date-popup{position:fixed;background:var(--bg-card);border:1px solid var(--border-primary);border-radius:6px;padding:12px;box-shadow:0 4px 12px #00000026;z-index:9999;min-width:200px}.elephant-row__date-popup-group{margin-bottom:8px}.elephant-row__date-popup-group:last-child{margin-bottom:0}.elephant-row__date-popup-label{display:block;font-size:11px;color:var(--text-muted);margin-bottom:4px}.elephant-row__time-input{font-size:12px;font-family:inherit;border:1px solid var(--border-primary);border-radius:4px;background:var(--bg-section);color:var(--text-primary);padding:3px 6px;outline:none;width:100%;transition:border-color .15s}.elephant-row__time-input:focus{border-color:var(--accent)}.elephant-row__agg-cell{text-align:center;font-size:12px;color:var(--text-muted)}.elephant-row__agg-cell.plan{border-left:1px solid var(--border-secondary)}.elephant-row__agg-empty{color:var(--text-faint)}.elephant-row__xp-cell{color:var(--text-muted)}.timer-rocket__pip-btn{padding:0 5px;height:22px;border:none;background:none;color:var(--text-muted);font-size:14px;cursor:pointer;opacity:.4;transition:opacity .15s,color .15s;border-radius:4px;line-height:1;display:flex;align-items:center}.timer-rocket__pip-btn:hover{opacity:1;color:var(--accent);background:rgba(var(--accent-rgb),.1)}.timer-rocket{border-radius:8px;padding:5px 10px;min-width:200px;max-width:480px;position:relative;transition:background .3s,border-color .3s}.timer-rocket--running{background:linear-gradient(135deg,#0f172a,#1e293b);border:1px solid #334155}.timer-rocket--overtime{background:linear-gradient(135deg,#1a0a0a,#2d1010);border:1px solid #7f1d1d}.timer-rocket--paused,.timer-rocket--idle{background:var(--bg-alt);border:1px solid var(--border-secondary)}.timer-rocket__row{display:flex;align-items:center;gap:6px}.timer-rocket__controls{display:flex;align-items:center;gap:4px;flex-shrink:0}.timer-rocket__mode-btn{background:none;border:none;cursor:pointer;font-size:13px;opacity:.4;padding:0 2px;transition:opacity .2s;flex-shrink:0;line-height:1}.timer-rocket__mode-btn:hover{opacity:1}.timer-rocket__mode-btn--active{opacity:.85}.timer-rocket__task-picker{display:flex;align-items:center;gap:3px;padding:2px 8px;border:1px dashed var(--border-secondary);border-radius:10px;background:none;color:var(--text-muted);font-size:10px;cursor:pointer;transition:border-color .2s,color .2s;flex-shrink:0}.timer-rocket__task-picker:hover{border-color:var(--accent);color:var(--accent)}.timer-rocket__btn{width:22px;height:22px;border-radius:50%;border:none;color:#fff;font-size:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .2s,transform .1s}.timer-rocket__btn:hover{transform:scale(1.1)}.timer-rocket__btn--play,.timer-rocket__btn--pause{background:var(--accent)}.timer-rocket__btn--overtime{background:var(--color-danger-hover)}.timer-rocket__btn--idle{background:var(--text-muted)}.timer-rocket__btn--stop{background:var(--color-danger-hover);width:18px;height:18px;font-size:8px}.timer-rocket__btn--disabled{background:var(--border-primary);color:var(--text-muted);cursor:default}.timer-rocket__time{font-weight:700;font-size:14px;font-family:monospace;transition:color .3s;flex-shrink:0}.timer-rocket__time--running{color:var(--accent)}.timer-rocket__time--overtime{color:var(--btn-danger-color)}.timer-rocket__time--paused{color:var(--text-muted)}.timer-rocket__plan{font-size:11px;opacity:.5;font-family:monospace;flex-shrink:0}.timer-rocket__plan--running,.timer-rocket__plan--paused{color:var(--text-faint)}.timer-rocket__dropdown-btn{font-size:10px;padding:2px 4px;background:none;border:none;cursor:pointer;display:flex;align-items:center;border-radius:3px;transition:background .15s;flex-shrink:0}.timer-rocket__dropdown-btn--dark{color:var(--text-faint)}.timer-rocket__dropdown-btn--dark:hover{background:#ffffff1a}.timer-rocket__dropdown-btn--light{color:var(--text-muted)}.timer-rocket__dropdown-btn--light:hover{background:var(--border-header-light)}.timer-rocket__track{position:relative;height:22px;flex:1;min-width:60px;border-radius:11px;overflow:hidden}.timer-rocket__track--running{background:linear-gradient(90deg,#0f172a,#1e1b4b,#0f172a)}.timer-rocket__track--overtime{background:linear-gradient(90deg,#1a0a0a,#450a0a 60%,#7f1d1d)}.timer-rocket__track--paused{background:var(--border-primary)}.timer-rocket__progress{position:absolute;top:0;left:0;height:100%;border-radius:11px;transition:width 1s linear}.timer-rocket__progress--normal{background:linear-gradient(90deg,#38bdf81a,#38bdf833)}.timer-rocket__progress--overtime{background:linear-gradient(90deg,#ef44441a,#ef444440)}.timer-rocket__progress--paused{background:#ffffff08}.timer-rocket__stars{position:absolute;inset:0;overflow:hidden}.timer-rocket__star{position:absolute;width:2px;height:2px;border-radius:50%;background:#fff;animation:rocketStarTwinkle 3s ease-in-out infinite}.timer-rocket__star:nth-child(2){animation-delay:.5s}.timer-rocket__star:nth-child(3){animation-delay:1.1s}.timer-rocket__star:nth-child(4){animation-delay:1.8s}.timer-rocket__star:nth-child(5){animation-delay:2.3s}.timer-rocket__star:nth-child(6){animation-delay:.3s}.timer-rocket__star:nth-child(7){animation-delay:1.5s}.timer-rocket__star:nth-child(8){animation-delay:2s}.timer-rocket__rocket{position:absolute;top:50%;transform:translateY(calc(-50% - 2px)) rotate(45deg);font-size:12px;z-index:3;transition:left 1s linear;filter:drop-shadow(0 0 4px rgba(251,191,36,.6))}.timer-rocket__rocket--running{animation:rocketWobble 2s ease-in-out infinite}.timer-rocket__rocket--overtime{animation:none;filter:drop-shadow(0 0 4px rgba(251,191,36,.4))}.timer-rocket__rocket--paused{filter:grayscale(.6) opacity(.7)}.timer-rocket__fire{position:absolute;top:50%;transform:translateY(-50%);z-index:2;display:flex;gap:1px;transition:left 1s linear}.timer-rocket__fire-particle{width:4px;height:4px;border-radius:50%;animation:rocketFireTrail .6s ease-out infinite}.timer-rocket__fire-particle:nth-child(1){background:#fbbf24;animation-delay:0s}.timer-rocket__fire-particle:nth-child(2){background:#f97316;width:3px;height:3px;animation-delay:.15s}.timer-rocket__fire-particle:nth-child(3){background:#ef4444;width:2px;height:2px;animation-delay:.3s}.timer-rocket__planet{position:absolute;right:2px;top:50%;transform:translateY(-50%);font-size:14px;z-index:3;line-height:1}.timer-rocket__planet--near{animation:rocketPlanetPulse 1.5s ease-in-out infinite}.timer-rocket__planet--overtime{filter:drop-shadow(0 0 4px rgba(74,222,128,.6));animation:none}.timer-rocket__planet--paused{filter:grayscale(.6) opacity(.5)}.timer-rocket__explosion{position:absolute;right:-2px;top:50%;transform:translateY(-50%);width:26px;height:26px;z-index:6;pointer-events:none;animation:explosionFadeOut 3s ease-out forwards}.timer-rocket__explosion-ring{position:absolute;inset:0;border-radius:50%;border:2px solid #fbbf24;opacity:0;animation:explosionPulse 1.2s ease-out forwards}.timer-rocket__explosion-ring--2{border-color:#f97316;animation-delay:.4s}.timer-rocket__explosion-ring--3{border-color:#ef4444;animation-delay:.8s}.timer-rocket__explosion-ring--4{border-color:#fbbf24;border-width:1px;animation-delay:1.2s}.timer-rocket__rocket--drifting{animation:rocketDrift 4s ease-in-out infinite}.timer-rocket__pomo-inline{display:flex;align-items:center;gap:3px;flex-shrink:0;font-size:11px}.timer-rocket__pomo-time-inline{font-weight:600;color:var(--accent);font-variant-numeric:tabular-nums;min-width:32px;font-family:monospace}.timer-rocket__pomo-btn-inline{border:none;background:transparent;cursor:pointer;color:var(--text-muted);font-size:10px;padding:1px 2px;border-radius:2px;transition:color .15s}.timer-rocket__pomo-btn-inline:hover{color:var(--accent)}.timer-rocket__pomo-btn-inline--reset:hover{color:var(--color-danger)}.timer-rocket__pomo-start-inline{border:none;background:transparent;cursor:pointer;font-size:13px;opacity:.35;padding:0;flex-shrink:0;transition:opacity .2s;line-height:1}.timer-rocket__pomo-start-inline:hover{opacity:.8}.timer-rocket__task-inline{font-size:11px;max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;color:var(--text-muted);flex-shrink:0;transition:color .2s}.timer-rocket__task-inline:hover{color:var(--text-primary)}.timer-rocket__task-inline--dark{color:#ffffff80}.timer-rocket__task-inline--dark:hover{color:#ffffffe6}@keyframes rocketWobble{0%,to{transform:translateY(calc(-50% - 3px)) rotate(45deg) translate(0)}25%{transform:translateY(calc(-50% - 4px)) rotate(45deg) translate(.5px)}75%{transform:translateY(calc(-50% - 2px)) rotate(45deg) translate(-.5px)}}@keyframes rocketFireTrail{0%{opacity:1;transform:translateY(-50%) scale(1)}to{opacity:0;transform:translateY(-50%) scale(.3)}}@keyframes rocketStarTwinkle{0%,to{opacity:.3}50%{opacity:1}}@keyframes rocketPlanetPulse{0%,to{transform:translateY(-50%) scale(1);filter:drop-shadow(0 0 2px rgba(var(--accent-rgb),.4))}50%{transform:translateY(-50%) scale(1.15);filter:drop-shadow(0 0 6px rgba(var(--accent-rgb),.8))}}@keyframes rocketDrift{0%,to{transform:translateY(calc(-50% - 3px)) rotate(45deg) translate(0)}50%{transform:translateY(calc(-50% - 5px)) rotate(45deg) translate(2px)}}@keyframes explosionPulse{0%{transform:scale(.2);opacity:.9}50%{opacity:.6}to{transform:scale(3);opacity:0}}@keyframes explosionFadeOut{0%,80%{opacity:1}to{opacity:0}}.profile-trigger-btn{width:28px;height:28px;border-radius:50%;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.profile-overlay{position:fixed;inset:0;z-index:99}.profile-menu{position:fixed;background:var(--bg-card);border-radius:8px;box-shadow:var(--dropdown-shadow);padding:4px;min-width:260px;z-index:100;border:1px solid var(--border-primary)}.profile-item{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:6px;cursor:pointer}.profile-item.active{background:rgba(var(--accent-rgb),.08)}.profile-item:hover:not(.active){background:var(--bg-alt)}.profile-item-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.profile-item-name{flex:1;font-size:12px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-item-name.current{font-weight:600}.profile-item-check{font-size:10px;color:var(--accent)}.profile-edit-input{flex:1;padding:2px 6px;border:1px solid var(--border-secondary);border-radius:4px;font-size:12px;font-family:inherit;outline:none;background:var(--bg-input);color:var(--text-primary)}.profile-icon-btn{border:none;background:transparent;cursor:pointer;font-size:10px;padding:2px}.profile-icon-btn.edit{color:var(--text-faint)}.profile-icon-btn.delete{color:var(--border-secondary)}.profile-icon-btn:hover{opacity:.8}.profile-section{border-top:1px solid var(--border-primary);margin-top:4px}.profile-create-form{padding:8px}.profile-create-input{width:100%;padding:6px 8px;border:1px solid var(--border-secondary);border-radius:4px;font-size:12px;font-family:inherit;outline:none;box-sizing:border-box;margin-bottom:6px;background:var(--bg-input);color:var(--text-primary)}.profile-color-picker{display:flex;gap:4px;margin-bottom:8px}.profile-color-btn{width:20px;height:20px;border-radius:50%;cursor:pointer;padding:0}.profile-create-actions{display:flex;gap:4px}.profile-btn-primary{flex:1;padding:6px;border:none;border-radius:4px;background:var(--accent);color:#fff;font-size:11px;font-weight:600;cursor:pointer;font-family:inherit}.profile-btn-secondary{padding:6px 10px;border:none;border-radius:4px;background:var(--bg-alt);color:var(--text-muted);font-size:11px;cursor:pointer;font-family:inherit}.profile-new-btn{padding:8px 10px;cursor:pointer;font-size:12px;color:var(--text-muted);display:flex;align-items:center;gap:6px}.profile-new-btn:hover{background:var(--bg-alt)}.profile-theme-btn{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:none;background:none;border-radius:6px;cursor:pointer;font-size:12px;color:var(--text-primary);font-family:inherit}.profile-theme-btn:hover{background:var(--bg-alt)}.profile-user-section{padding:8px 10px}.profile-user-email{font-size:10px;color:var(--text-faint);margin-bottom:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-logout-btn{width:100%;padding:6px;border:none;border-radius:4px;background:rgba(var(--color-danger-rgb),.1);color:var(--color-danger);font-size:11px;font-weight:500;cursor:pointer;font-family:inherit}.profile-logout-btn:hover{background:rgba(var(--color-danger-rgb),.2)}.profile-priority-mults{padding:4px 0 2px}.profile-mult-row{display:flex;align-items:center;gap:8px;padding:3px 0}.profile-mult-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.profile-mult-label{flex:1;font-size:12px;color:var(--text-secondary)}.profile-mult-input{width:52px;padding:2px 6px;border:1px solid var(--border-secondary);border-radius:4px;font-size:12px;font-family:inherit;text-align:center;background:var(--bg-input);color:var(--text-primary)}.profile-mult-input:focus{outline:none;border-color:var(--accent)}.gagarin-header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;padding:6px 12px;gap:12px;border-bottom:1px solid var(--border-header);background:var(--bg-header);position:relative;z-index:60}.header-left{display:flex;align-items:center;gap:8px}.header-logo{font-size:16px;font-weight:800;letter-spacing:2px;color:var(--brand-color);cursor:default;-webkit-user-select:none;user-select:none;white-space:nowrap}.header-undo-redo{display:flex;align-items:center;gap:2px}.header-undo-btn{padding:4px 6px;font-size:11px;border:none;border-radius:4px;background:var(--bg-alt);color:var(--text-secondary);cursor:pointer;line-height:1}.header-undo-btn:disabled{background:transparent;color:var(--border-secondary);cursor:not-allowed}.header-center{display:flex;align-items:center;justify-content:center;min-width:0}.header-right{display:flex;align-items:center;gap:8px}.header-mini-stat{display:flex;align-items:center;gap:4px;padding:4px 10px;border-radius:6px;background:rgba(var(--accent-rgb),.1);white-space:nowrap;cursor:pointer;transition:background .15s}.header-mini-stat--active{background:rgba(var(--accent-rgb),.22)}.header-mini-stat__icon{font-size:12px;line-height:1}.header-mini-stat__value{font-size:13px;font-weight:700;color:var(--accent)}.header-mini-stat__label{font-size:10px;color:var(--text-muted)}.header-date-nav{display:flex;align-items:center;gap:2px;padding:2px 4px;border-radius:6px;background:rgba(var(--accent-rgb),.08);transition:background .15s,border-color .15s;border:1px solid transparent}.header-date-nav--active{background:rgba(var(--accent-rgb),.18);border-color:rgba(var(--accent-rgb),.3)}.header-date-nav--active .header-date-nav__label{color:var(--accent);font-weight:700}.header-date-nav__arrow{border:none;background:none;color:var(--accent);font-size:16px;font-weight:700;line-height:1;cursor:pointer;padding:2px 4px;border-radius:4px;transition:background .15s}.header-date-nav__arrow:hover{background:rgba(var(--accent-rgb),.15)}.header-date-nav__label{font-size:12px;font-weight:600;color:var(--text-primary);cursor:pointer;padding:2px 4px;border-radius:4px;white-space:nowrap;-webkit-user-select:none;user-select:none}.header-date-nav__label:hover{background:rgba(var(--accent-rgb),.12)}.header-date-nav__reset{border:none;background:none;color:var(--text-muted);font-size:14px;line-height:1;cursor:pointer;padding:2px 4px;border-radius:4px;transition:color .15s,background .15s}.header-date-nav__reset:hover{color:var(--color-danger);background:var(--color-danger-bg)}.header-mini-stat--xp{background:rgba(var(--color-stat-xp-rgb),.12)}.header-mini-stat--xp .header-mini-stat__text-icon,.header-mini-stat--xp .header-mini-stat__value{color:var(--color-stat-xp)}.header-mini-stat--xp.header-mini-stat--active{background:rgba(var(--color-stat-xp-rgb),.22)}.header-mini-stat--ap{background:rgba(var(--color-stat-ap-rgb),.12)}.header-mini-stat--ap .header-mini-stat__text-icon,.header-mini-stat--ap .header-mini-stat__value{color:var(--color-stat-ap)}.header-mini-stat--ap.header-mini-stat--active{background:rgba(var(--color-stat-ap-rgb),.22)}.header-mini-stat--balance{background:#22c55e1a}.header-mini-stat--balance .header-mini-stat__value{color:var(--color-success)}.header-mini-stat__text-icon{font-weight:800;font-size:12px;letter-spacing:-.5px}.header-mini-stat__pct{font-size:10px;color:var(--text-muted);margin-left:2px}.header-mini-stat__bar{width:40px;height:4px;border-radius:2px;background:var(--progress-bg);overflow:hidden}.header-mini-stat__bar-fill{height:100%;border-radius:2px;background:var(--accent);transition:width .3s}.header-profile-wrap{position:relative}.header-astronaut-btn{font-size:20px;line-height:1;cursor:pointer;-webkit-user-select:none;user-select:none;border:none;background:none;padding:2px 4px;border-radius:6px}.header-astronaut-btn:hover{background:rgba(var(--accent-rgb),.12)}.header-profile-backdrop{position:fixed;inset:0;z-index:99}.header-profile-menu{position:absolute;right:0;top:calc(100% + 6px);z-index:100;background:var(--bg-section);border:1px solid var(--border-primary);border-radius:8px;box-shadow:var(--shadow-heavy);min-width:180px;padding:4px}.header-profile-menu__item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;border:none;background:none;border-radius:6px;cursor:pointer;font-size:13px;color:var(--text-primary);white-space:nowrap}.header-profile-menu__item:hover{background:rgba(var(--accent-rgb),.1)}.header-profile-menu__icon{font-size:14px;line-height:1}.header-stat-popup-backdrop{position:fixed;inset:0;z-index:99}.header-stat-popup{position:fixed;z-index:100;background:var(--bg-section);border:1px solid var(--border-primary);border-radius:10px;box-shadow:var(--shadow-heavy);min-width:220px;overflow:hidden}.header-stat-popup__title{padding:10px 14px;font-size:13px;font-weight:700;color:var(--text-primary);border-bottom:1px solid var(--border-primary);background:var(--bg-alt)}.header-stat-popup__row{display:flex;justify-content:space-between;align-items:center;padding:8px 14px;font-size:12px;border-bottom:1px solid var(--border-primary)}.header-stat-popup__row:last-child{border-bottom:none}.header-stat-popup__period{color:var(--text-secondary)}.header-stat-popup__val{font-weight:700;color:var(--accent);font-variant-numeric:tabular-nums}@media(max-width:1024px){.header-undo-redo{display:none}.header-mini-stat{padding:3px 7px}.header-mini-stat__value{font-size:12px}.header-mini-stat__icon{font-size:11px}.header-mini-stat__bar{width:30px}}@media(max-width:768px){.gagarin-header{padding:4px 8px;gap:6px}.header-logo-text,.header-mini-stat,.header-date-nav,.header-undo-redo{display:none}}.landing{min-height:100vh;background:var(--bg-body);color:var(--text-primary);overflow-x:hidden}.landing-hero{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px 20px;position:relative;background:var(--bg-root)}.landing-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 600px 400px at 30% 20%,rgba(168,85,247,.08) 0%,transparent 70%),radial-gradient(ellipse 500px 300px at 70% 60%,rgba(99,102,241,.06) 0%,transparent 70%);pointer-events:none}.landing-hero>*{position:relative;z-index:1}.landing-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 16px;border-radius:20px;background:#a855f71a;border:1px solid rgba(168,85,247,.2);font-size:12px;font-weight:600;color:var(--accent);letter-spacing:1px;text-transform:uppercase;margin-bottom:24px}.landing-logo{font-size:72px;margin-bottom:16px;line-height:1}.landing-title{font-size:clamp(40px,8vw,72px);font-weight:800;letter-spacing:8px;margin:0 0 12px;background:linear-gradient(135deg,#e8e6f0,#a855f7,#6366f1);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.landing-tagline{font-size:clamp(16px,3vw,22px);color:var(--text-muted);margin:0 0 40px;max-width:560px;line-height:1.5}.landing-cta{display:inline-flex;align-items:center;gap:8px;padding:16px 40px;border:none;border-radius:12px;background:linear-gradient(135deg,var(--accent) 0%,#6366f1 100%);color:#fff;font-size:17px;font-weight:700;font-family:inherit;cursor:pointer;transition:transform .2s,box-shadow .2s;text-decoration:none;box-shadow:0 4px 24px #a855f74d}.landing-cta:hover{transform:translateY(-2px);box-shadow:0 8px 32px #a855f766}.landing-scroll-hint{position:absolute;bottom:32px;font-size:12px;color:var(--text-faint);letter-spacing:2px;text-transform:uppercase;animation:landing-bounce 2s infinite}@keyframes landing-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}.landing-features{padding:80px 20px;max-width:1100px;margin:0 auto}.landing-section-title{text-align:center;font-size:clamp(24px,4vw,36px);font-weight:800;margin:0 0 8px;color:var(--text-primary)}.landing-section-sub{text-align:center;font-size:15px;color:var(--text-muted);margin:0 0 48px}.landing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.landing-card{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:16px;padding:28px 24px;transition:border-color .2s,transform .2s}.landing-card:hover{border-color:var(--accent);transform:translateY(-2px)}.landing-card-icon{font-size:32px;margin-bottom:12px}.landing-card h3{font-size:17px;font-weight:700;margin:0 0 8px;color:var(--text-primary)}.landing-card p{font-size:14px;color:var(--text-muted);margin:0;line-height:1.5}.landing-spheres{padding:60px 20px 80px;max-width:900px;margin:0 auto}.landing-sphere-list{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.landing-sphere-pill{padding:10px 20px;border-radius:24px;font-size:14px;font-weight:600;border:1px solid var(--border-primary);background:var(--bg-section);color:var(--text-secondary);transition:border-color .2s}.landing-sphere-pill:hover{border-color:var(--accent)}.landing-bottom{padding:60px 20px 80px;text-align:center;background:var(--bg-section);border-top:1px solid var(--border-primary)}.landing-bottom-title{font-size:clamp(22px,4vw,32px);font-weight:800;margin:0 0 8px}.landing-bottom-sub{font-size:15px;color:var(--text-muted);margin:0 0 32px}.landing-footer{padding:24px 20px;text-align:center;font-size:12px;color:var(--text-faint);border-top:1px solid var(--border-primary)}@media(max-width:600px){.landing-hero{padding:32px 16px}.landing-logo{font-size:56px}.landing-cta{width:100%;justify-content:center;padding:14px 24px}.landing-grid{grid-template-columns:1fr}}.login-wrapper{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-root);padding:20px}.login-card{width:100%;max-width:380px;background:var(--bg-card);border-radius:16px;padding:40px 32px;text-align:center;border:1px solid var(--border-primary);box-shadow:0 8px 32px #0006}.login-logo{font-size:48px;margin-bottom:8px}.login-title{font-size:28px;font-weight:800;color:var(--accent);margin:0 0 4px;letter-spacing:4px;font-family:inherit}.login-subtitle{font-size:13px;color:var(--text-muted);margin:0 0 28px}.login-form{display:flex;flex-direction:column;gap:12px}.login-input{width:100%;padding:12px 16px;border:1px solid var(--border-secondary);border-radius:8px;font-size:15px;font-family:inherit;outline:none;background:var(--bg-input);color:var(--text-primary);box-sizing:border-box;transition:border-color .2s}.login-input:focus{border-color:var(--accent)}.login-button{width:100%;padding:12px 16px;border:none;border-radius:8px;background:var(--accent);color:#fff;font-size:15px;font-weight:600;cursor:pointer;font-family:inherit;transition:opacity .2s}.login-button:hover{opacity:.9}.login-button:disabled{opacity:.6;cursor:not-allowed}.login-otp-row{display:flex;gap:8px;justify-content:center}.login-otp-input{width:44px;height:52px;text-align:center;font-size:22px;font-weight:700;font-family:monospace;border:2px solid var(--border-secondary);border-radius:10px;background:var(--bg-input);color:var(--text-primary);outline:none;transition:border-color .2s}.login-otp-input:focus{border-color:var(--accent)}.login-otp-input.filled{border-color:var(--accent)}.login-back-link{background:none;border:none;color:var(--text-muted);font-size:12px;cursor:pointer;font-family:inherit;padding:4px 0}.login-back-link:hover{color:var(--text-secondary)}.login-error{margin-top:12px;font-size:13px;color:var(--color-danger);font-weight:500}.login-hint{margin-top:24px;font-size:11px;color:var(--text-faint)}.login-hint code{background:var(--bg-alt);padding:2px 6px;border-radius:4px;font-size:11px;font-family:monospace}
