:root{--bg-base:#0a0a0c;--bg-surface:#111114;--bg-elevated:#1a1a1f;--bg-hover:#242429;--accent:#00d4ff;--accent-dim:#00d4ff1f;--accent-border:#00d4ff59;--accent-press:#00b8de;--accent-on:#000;--text:#f0f0f2;--text-secondary:#8a8a96;--text-muted:#4a4a55;--border:#2a2a32;--border-focus:var(--accent);--danger:#ff4d6a;--success:#2ee89a;--font:-apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", system-ui, sans-serif;--r-sm:6px;--r:12px;--r-lg:16px;--r-xl:20px;--shadow-card:0 2px 12px #00000080;--shadow-sheet:0 -4px 32px #000000b3;--sidebar-w:240px;--chat-hover-toolbar-bg:#222228;--chat-hover-toolbar-border:#3b3b45;--chat-hover-toolbar-shadow:0 4px 16px #0000008c, 0 0 0 1px #ffffff0a;--chat-hover-toolbar-icon:#b4b4be;--chat-hover-toolbar-icon-hover:#f0f0f2;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=light]{--bg-base:#f4f4f8;--bg-surface:#fff;--bg-elevated:#ebebf2;--bg-hover:#e0e0ea;--text:#0e0e14;--text-secondary:#5a5a6a;--text-muted:#9a9aaa;--border:#d0d0dc;--shadow-card:0 2px 12px #00000014;--shadow-sheet:0 -4px 32px #0000001f;--chat-hover-toolbar-bg:#fff;--chat-hover-toolbar-border:#d0d0dc;--chat-hover-toolbar-shadow:0 4px 16px #0000001f, 0 0 0 1px #0000000f;--chat-hover-toolbar-icon:#5a5a6a;--chat-hover-toolbar-icon-hover:#0e0e14;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=light] .sidebar{background:#ffffffe0;border-right:1px solid #00000014;box-shadow:2px 0 24px #00000014}[data-theme=light] .sidebar-brand{border-bottom:1px solid #00000012}[data-theme=light] .sidebar-footer{border-top:1px solid #00000012}[data-theme=light] .sidebar-link{color:#3c3c50bf}[data-theme=light] .sidebar-link:hover{color:var(--text);background:#0000000d}[data-theme=light] .topbar{background:var(--bg-surface)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg-base);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior:none;min-height:100dvh;font-size:15px;line-height:1.45}#root{flex-direction:column;min-height:100dvh;display:flex}input,textarea,select,button{font:inherit;color:inherit;background:0 0;border:none;outline:none}button{cursor:pointer;-webkit-tap-highlight-color:transparent}a{color:var(--accent);text-decoration:none}.app-layout{min-height:100dvh;display:flex}.app-main{margin-left:var(--sidebar-w);flex-direction:column;flex:1;min-height:100dvh;display:flex}@media (width<=768px){.app-main{margin-left:0}}.nav-resize-handle{display:none}@media (width>=769px){.nav-resize-handle{top:0;bottom:0;left:calc(var(--sidebar-w,240px) - 4px);z-index:45;cursor:col-resize;width:8px;display:block;position:fixed}.nav-resize-handle:hover{background:linear-gradient(90deg, transparent 35%, color-mix(in srgb, var(--accent) 35%, transparent) 50%, transparent 65%)}}.sidebar{width:var(--sidebar-w);-webkit-backdrop-filter:blur(20px)saturate(160%);z-index:40;background:#0a0a10b8;border-right:1px solid #ffffff12;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0;overflow-y:auto;box-shadow:2px 0 24px #00000073,inset -1px 0 #a855f70a}.sidebar-brand{border-bottom:1px solid #ffffff0f;padding:24px 20px 20px}.sidebar-brand h1{letter-spacing:1.5px;color:var(--text);font-size:22px;font-weight:800}.sidebar-brand p{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-top:2px;font-size:11px}.team-selector{background:var(--bg-elevated);border:1px solid var(--border);width:100%;color:var(--text);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;border-radius:8px;margin-top:6px;padding:5px 26px 5px 8px;font-size:12px;font-weight:600}.team-selector:hover{border-color:var(--accent)}.team-selector:focus{border-color:var(--accent);outline:none}.sidebar-nav{flex-direction:column;flex:1;gap:2px;padding:12px 8px;display:flex}.sidebar-link{border-radius:var(--r);color:#a0a0b9bf;align-items:center;gap:12px;padding:10px 12px;font-size:14px;font-weight:500;text-decoration:none;transition:background .15s,color .15s;display:flex}.sidebar-link svg{filter:drop-shadow(0 0 #0000);flex-shrink:0;transition:filter .15s,color .15s}.sidebar-link:hover{color:var(--text);background:#ffffff0d}.sidebar-link:hover svg{filter:drop-shadow(0 0 4px #a855f759);color:var(--text)}.sidebar-link.active{color:var(--accent);background:#a855f71a}.sidebar-link.active svg{filter:drop-shadow(0 0 6px #a855f7a6);color:var(--accent)}.sidebar-footer{border-top:1px solid #ffffff0f;align-items:center;gap:12px;padding:16px 20px;display:flex}.sidebar-footer span{color:var(--text-secondary);font-size:13px}.topbar{background:var(--bg-surface);border-bottom:1px solid var(--border);z-index:30;align-items:center;gap:12px;height:56px;padding:0 16px;display:none;position:sticky;top:0}.topbar h1{letter-spacing:1.5px;font-size:18px;font-weight:800}.hamburger{border-radius:var(--r-sm);justify-content:center;align-items:center;width:40px;height:40px;display:flex}.hamburger:hover{background:var(--bg-elevated)}.sidebar-overlay{display:none}@media (width<=768px){.sidebar{transition:transform .28s cubic-bezier(.32,.72,0,1);transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar-overlay{z-index:39;background:#00000080;animation:.2s fadeIn;display:block;position:fixed;inset:0}.topbar{display:flex}}.page{flex:1;max-width:960px;padding:24px 32px}@media (width<=768px){.page{padding:16px}}.chat-page-root.page{flex-direction:row;width:100%;max-width:none;padding:0}@media (width<=768px){.chat-page-root{height:calc(100dvh - 56px)}.chat-pane-resize{display:none}.chat-emoji-picker-portal{max-width:352px;height:360px;width:calc(100vw - 16px)!important}}@media (width>=769px){.chat-page-root{height:100dvh;max-height:100dvh}}.chat-pane-resize{cursor:col-resize;z-index:3;background:0 0;flex-shrink:0;align-self:stretch;width:8px;min-width:8px}.chat-pane-resize:hover{background:color-mix(in srgb, var(--accent) 22%, transparent)}.chat-modal-overlay{z-index:80;background:#0000008c;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.chat-sidebar-row:hover{background:var(--bg-elevated)}.chat-hover-icon-btn{color:var(--text-muted)}.chat-hover-icon-btn:hover{color:var(--text);background:var(--bg-hover)!important}.slack-msg-toolbar{background:var(--chat-hover-toolbar-bg);border:1px solid var(--chat-hover-toolbar-border);box-shadow:var(--chat-hover-toolbar-shadow);border-radius:999px;gap:1px;padding:2px 4px}.slack-msg-toolbar:after{content:"";height:8px;position:absolute;bottom:100%;left:0;right:0}.slack-toolbar-divider{background:var(--chat-hover-toolbar-border);opacity:.85;flex-shrink:0;align-self:center;width:1px;height:18px;margin:0 3px}.slack-toolbar-quick-emoji{cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;font-size:16px;line-height:1;transition:background .12s;display:flex}.slack-toolbar-quick-emoji:hover{background:#ffffff14}.slack-toolbar-icon-btn{cursor:pointer;width:30px;height:30px;color:var(--chat-hover-toolbar-icon);background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:0;transition:background .12s,color .12s;display:flex}.slack-toolbar-icon-btn:hover{color:var(--chat-hover-toolbar-icon-hover);background:#ffffff1a}.slack-toolbar-icon-btn:disabled{opacity:.35;cursor:default}.chat-emoji-picker-portal{z-index:10050;background:var(--bg-elevated);border:1px solid var(--chat-hover-toolbar-border);border-radius:10px;flex-direction:column;width:352px;height:420px;display:flex;overflow:hidden;box-shadow:0 8px 30px #00000073,0 0 0 1px #ffffff0a}.chat-emoji-picker-search{border:none;border-bottom:1px solid var(--border);width:100%;color:var(--text);font-size:14px;font-family:var(--font);background:0 0;outline:none;padding:10px 14px}.chat-emoji-picker-search:focus{border-bottom-color:var(--accent)}.chat-emoji-picker-search::placeholder{color:var(--text-muted)}.chat-emoji-picker-scroll{overscroll-behavior:contain;flex:1;overflow-y:auto}.chat-emoji-picker-cat{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;background:var(--bg-elevated);z-index:1;padding:10px 14px 6px;font-size:11px;font-weight:700;position:sticky;top:0}.chat-emoji-picker-grid{grid-template-columns:repeat(9,1fr);padding:2px 6px 4px;display:grid}.chat-emoji-picker-btn{cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;padding:0;font-size:22px;line-height:1;transition:background .1s,transform .1s;display:flex}.chat-emoji-picker-btn:hover{background:#ffffff1a;transform:scale(1.15)}.chat-context-menu-portal{z-index:10060;background:var(--bg-elevated);border:1px solid var(--chat-hover-toolbar-border);min-width:180px;box-shadow:var(--chat-hover-toolbar-shadow);border-radius:10px;flex-direction:column;padding:4px;display:flex}.chat-context-menu-item{color:var(--text);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:6px;align-items:center;gap:10px;padding:8px 12px;font-size:13px;transition:background .1s;display:flex}.chat-context-menu-item:hover{background:#ffffff14}.chat-context-menu-item--danger{color:var(--danger)}.chat-context-menu-item--danger:hover{background:color-mix(in srgb, var(--danger) 12%, transparent)}.chat-message-wrap{border-radius:var(--r-sm);transition:background-color .14s}.chat-message-wrap:hover,.chat-message-wrap.chat-message-wrap--active{background-color:color-mix(in srgb, var(--text) 5.5%, var(--bg-base))}.page-header{justify-content:space-between;align-items:center;padding:4px 0 24px;display:flex}.page-title{letter-spacing:-.5px;color:var(--text);font-size:28px;font-weight:700}.btn{border-radius:var(--r);justify-content:center;align-items:center;gap:8px;min-height:44px;padding:12px 20px;font-size:15px;font-weight:600;transition:background .15s,opacity .15s;display:inline-flex}.btn:active{opacity:.8}.btn-primary{background:var(--accent);color:var(--accent-on)}.btn-primary:hover{background:var(--accent-press)}.btn-outline{border:1px solid var(--border);color:var(--text)}.btn-outline:hover{background:var(--bg-elevated)}.btn-ghost{color:var(--accent);padding:8px 12px}.btn-danger{color:var(--danger);padding:8px 12px}.btn-danger:hover{border-radius:var(--r-sm);background:#ff4d6a1a}.card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-card);padding:16px}.card:hover{border-color:var(--bg-hover);background:var(--bg-elevated)}.field{flex-direction:column;gap:6px;display:flex}.field label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:13px;font-weight:600}.input{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--r);color:var(--text);min-height:44px;padding:12px 14px;font-size:16px;transition:border-color .15s}.input:focus{border-color:var(--border-focus)}.input::placeholder{color:var(--text-muted)}textarea.input{resize:vertical;min-height:80px}.sheet-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;background:#0009;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.sheet{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-xl);width:100%;max-width:540px;max-height:90dvh;box-shadow:var(--shadow-sheet);margin:16px;animation:.25s cubic-bezier(.32,.72,0,1) sheetIn;overflow:visible auto}.sheet-handle{display:none}.sheet-header{justify-content:space-between;align-items:center;padding:20px 24px 8px;display:flex}.sheet-header h3{font-size:18px;font-weight:700}.sheet-body{flex-direction:column;gap:16px;padding:8px 24px 24px;display:flex}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes sheetIn{0%{opacity:0;transform:scale(.95)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}.fab{background:var(--accent);width:56px;height:56px;color:var(--accent-on);z-index:10;border-radius:50%;justify-content:center;align-items:center;transition:transform .15s,box-shadow .15s;display:flex;position:fixed;bottom:24px;right:32px;box-shadow:0 4px 20px #a855f74d}.fab:hover{transform:scale(1.06);box-shadow:0 6px 28px #a855f766}.fab:active{transform:scale(.94)}.toggle-group{background:var(--bg-elevated);border-radius:var(--r);gap:2px;padding:3px;display:flex}.toggle-option{border-radius:calc(var(--r) - 3px);text-align:center;color:var(--text-secondary);flex:1;padding:8px 12px;font-size:13px;font-weight:600;transition:background .15s,color .15s}.toggle-option.active{background:var(--bg-hover);color:var(--text)}.day-picker{gap:6px;display:flex}.day-chip{background:var(--bg-elevated);width:40px;height:40px;color:var(--text-secondary);border:1px solid var(--border);border-radius:50%;justify-content:center;align-items:center;font-size:13px;font-weight:600;transition:background .15s,color .15s,border-color .15s;display:flex}.day-chip:hover{border-color:var(--text-muted)}.day-chip.selected{background:var(--accent);color:var(--accent-on);border-color:var(--accent)}.accordion{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-card);overflow:hidden}.accordion-header{text-align:left;align-items:center;gap:12px;width:100%;min-height:52px;padding:14px 16px;display:flex}.accordion-header:hover{background:var(--bg-elevated)}.accordion-chevron{color:var(--text-muted);flex-shrink:0;transition:transform .2s}.accordion-chevron.open{transform:rotate(90deg)}.accordion-body{grid-template-rows:0fr;transition:grid-template-rows .25s;display:grid}.accordion-body.open{grid-template-rows:1fr}.accordion-inner{overflow:hidden}.exercise-row{border-top:1px solid var(--border);align-items:center;gap:12px;padding:12px 16px;display:flex}.exercise-info{flex:1;min-width:0}.exercise-name{color:var(--text);font-size:15px;font-weight:600}.exercise-detail{color:var(--text-secondary);margin-top:2px;font-size:13px}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:64px 24px;display:flex}.empty-state-icon{color:var(--text-muted);margin-bottom:4px}.empty-state h3{color:var(--text);font-size:18px;font-weight:600}.empty-state p{color:var(--text-secondary);max-width:320px;font-size:14px}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}.date-range-picker{position:relative}.date-range-trigger{text-align:left;cursor:pointer;align-items:center;gap:10px;width:100%;display:flex}.date-range-trigger:hover{border-color:var(--text-muted)}.date-range-dropdown{z-index:100;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:12px;animation:.2s cubic-bezier(.32,.72,0,1) sheetIn;box-shadow:0 8px 32px #0009}.date-range-footer{border-top:1px solid var(--border);margin-top:4px;padding:4px 4px 0;display:flex}.rdp-dark{--rdp-accent-color:var(--accent);--rdp-accent-background-color:var(--accent-dim);--rdp-range_middle-background-color:var(--accent-dim);--rdp-range_middle-color:var(--text);--rdp-day_button-height:36px;--rdp-day_button-width:36px;color:var(--text);font-family:var(--font);font-size:14px}.rdp-dark .rdp-month_caption{color:var(--text);padding:0 8px 8px;font-size:15px;font-weight:600}.rdp-dark .rdp-weekday{color:var(--text-muted);font-size:12px;font-weight:500}.rdp-dark .rdp-day button{color:var(--text-secondary);border-radius:8px;font-size:13px;font-weight:500;transition:background .12s,color .12s}.rdp-dark .rdp-day button:hover{background:var(--bg-hover);color:var(--text)}.rdp-dark .rdp-selected .rdp-day_button{background:var(--accent);color:var(--accent-on);font-weight:700}.rdp-dark .rdp-range_middle .rdp-day_button{background:var(--accent-dim);color:var(--text);border-radius:0}.rdp-dark .rdp-range_start .rdp-day_button{border-radius:8px 0 0 8px}.rdp-dark .rdp-range_end .rdp-day_button{border-radius:0 8px 8px 0}.rdp-dark .rdp-range_start.rdp-range_end .rdp-day_button{border-radius:8px}.rdp-dark .rdp-outside .rdp-day_button{color:var(--text-muted);opacity:.4}.rdp-dark .rdp-today .rdp-day_button{color:var(--accent);font-weight:700}.rdp-dark .rdp-today.rdp-selected .rdp-day_button{color:var(--accent-on)}.rdp-dark .rdp-button_previous,.rdp-dark .rdp-button_next{color:var(--text-secondary);border-radius:8px;width:32px;height:32px}.rdp-dark .rdp-button_previous:hover,.rdp-dark .rdp-button_next:hover{background:var(--bg-hover);color:var(--text)}.rdp-dark .rdp-disabled .rdp-day_button{color:var(--text-muted);opacity:.3}.badge{border-radius:var(--r-sm);color:var(--accent);text-transform:capitalize;background:#a855f71f;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.badge-outline{border:1px solid var(--border);color:var(--text-secondary);background:0 0}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:.8s linear infinite spin}
