@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--primary-sky: #0ea5e9;--primary-sky-dark: #0284c7;--primary-teal: #14b8a6;--primary-teal-dark: #0d9488;--bg-deepest: #020617;--bg-primary: #0f172a;--bg-secondary: #1e293b;--bg-hover: #334155;--bg-app: #0f172a;--bg-sidebar: #020617;--bg-card: rgba(255, 255, 255, .03);--bg-card-hover: rgba(255, 255, 255, .06);--border-subtle: rgba(51, 65, 85, .5);--border-primary: rgba(14, 165, 233, .2);--border-active: rgba(14, 165, 233, .4);--border-color: rgba(14, 165, 233, .15);--text-primary: #f8fafc;--text-secondary: #cbd5e1;--text-muted: #94a3b8;--text-dimmed: #64748b;--accent-primary: #0ea5e9;--accent-secondary: #14b8a6;--accent-violet: #8b5cf6;--accent-cyan: #06b6d4;--accent-glow: rgba(14, 165, 233, .25);--success: #14b8a6;--error: #ef4444;--warning: #f59e0b;--info: #0ea5e9;--gradient-primary: linear-gradient(135deg, #0ea5e9 0%, #14b8a6 100%);--gradient-hover: linear-gradient(135deg, #0284c7 0%, #0d9488 100%);--gradient-subtle: linear-gradient(135deg, rgba(14, 165, 233, .15) 0%, rgba(20, 184, 166, .15) 100%);--glow-primary: rgba(14, 165, 233, .25);--glow-secondary: rgba(20, 184, 166, .25);--font-main: "Inter", system-ui, -apple-system, sans-serif;--glass: blur(12px) saturate(180%);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-glow: 0 0 20px var(--accent-glow)}[data-theme=light]{--bg-app: #ffffff;--bg-sidebar: #f8fafc;--bg-card: #ffffff;--bg-card-hover: #f1f5f9;--border-color: #e2e8f0;--text-primary: #0f172a;--text-secondary: #64748b;--text-muted: #94a3b8;--accent-primary: #0ea5e9;--accent-glow: rgba(14, 165, 233, .2);--bg-column: #f1f5f9;--bg-task: #ffffff;--text-task: #1e293b;--shadow-task: 0 1px 3px rgba(0, 0, 0, .1)}[data-theme=dark]{--bg-app: #0f172a;--bg-sidebar: #020617;--bg-card: rgba(255, 255, 255, .03);--bg-card-hover: rgba(255, 255, 255, .06);--border-color: rgba(14, 165, 233, .15);--text-primary: #f8fafc;--text-secondary: #cbd5e1;--text-muted: #94a3b8;--accent-primary: #0ea5e9;--accent-glow: rgba(14, 165, 233, .25);--bg-column: #121216;--bg-task: #1e1e23;--text-task: #e4e4e7;--shadow-task: 0 4px 6px -1px rgba(0, 0, 0, .3)}[data-theme=tokyo-night]{--bg-app: #1a1b26;--bg-sidebar: #16161e;--bg-card: #24283b;--bg-card-hover: #2f334d;--border-color: #292e42;--text-primary: #c0caf5;--text-secondary: #9aa5ce;--text-muted: #565f89;--accent-primary: #0ea5e9;--accent-glow: rgba(14, 165, 233, .25);--bg-column: #16161e;--bg-task: #24283b;--text-task: #c0caf5;--shadow-task: 0 4px 6px -1px rgba(0, 0, 0, .2)}[data-theme=dracula]{--bg-app: #282a36;--bg-sidebar: #21222c;--bg-card: #44475a;--bg-card-hover: #52556a;--border-color: #44475a;--text-primary: #f8f8f2;--text-secondary: #e2e2e2;--text-muted: #6272a4;--accent-primary: #0ea5e9;--accent-glow: rgba(14, 165, 233, .25);--bg-column: #21222c;--bg-task: #44475a;--text-task: #f8f8f2;--shadow-task: 0 4px 6px -1px rgba(0, 0, 0, .3)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-app);color:var(--text-primary);font-family:var(--font-main);font-size:.9rem;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;height:100vh;overflow:hidden;transition:background-color .3s ease}#root{height:100%}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:99px}::-webkit-scrollbar-thumb:hover{background:#fff3}.glass-panel{background:var(--bg-card);-webkit-backdrop-filter:var(--glass);backdrop-filter:var(--glass);border:1px solid var(--border-color);border-radius:var(--radius-md)}.text-gradient{background:linear-gradient(135deg,#0ea5e9,#14b8a6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.btn-primary{background:var(--accent-primary);color:#fff;border:none;padding:.5rem 1rem;border-radius:var(--radius-sm);font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 0 10px var(--accent-glow)}.btn-primary:hover{box-shadow:0 0 20px var(--accent-glow);transform:translateY(-1px);filter:brightness(1.1)}.btn-ghost{background:transparent;color:var(--text-secondary);border:none;padding:.5rem;border-radius:var(--radius-sm);cursor:pointer;transition:all .2s}.btn-ghost:hover{background:var(--bg-card-hover);color:var(--text-primary)}.animate-fade-in{animation:fadeIn .5s ease-out forwards}.flex{display:flex}.flex-col{display:flex;flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.w-full{width:100%}.h-full{height:100%}.mt-auto{margin-top:auto}.loading-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;width:100vw;background-color:var(--bg-app);gap:1rem}.loading-screen p{color:var(--text-secondary);font-size:.9rem}.loading-spinner{width:40px;height:40px;border:3px solid var(--border-color);border-top-color:var(--accent-primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}:root{--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px}.hide-mobile{display:block}.show-mobile{display:none}@media(max-width:768px){.hide-mobile{display:none!important}.show-mobile{display:block!important}body{overflow:auto}}@media(max-width:768px){button,.btn-primary,.btn-ghost{min-height:44px;min-width:44px}}.toast-container{position:fixed;bottom:1.5rem;right:1.5rem;display:flex;flex-direction:column;gap:.75rem;z-index:9999;pointer-events:none}.toast{display:flex;align-items:flex-start;gap:.75rem;padding:1rem 1.25rem;background:var(--bg-sidebar);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:0 10px 25px -5px #0000004d;pointer-events:auto;animation:slideIn .3s ease-out;max-width:360px}.toast.toast-success{border-left:3px solid #22c55e}.toast.toast-error{border-left:3px solid #ef4444}.toast.toast-warning{border-left:3px solid #f59e0b}.toast.toast-info{border-left:3px solid #3b82f6}.toast-icon{flex-shrink:0;margin-top:2px}.toast-content{flex:1}.toast-title{font-weight:600;font-size:.9rem;color:var(--text-primary);margin-bottom:.25rem}.toast-message{font-size:.85rem;color:var(--text-secondary)}.toast-close{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:.25rem;margin-left:.5rem;transition:color .2s}.toast-close:hover{color:var(--text-primary)}@keyframes slideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@media(max-width:480px){.toast-container{left:1rem;right:1rem;bottom:1rem}.toast{max-width:100%}}.confirm-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .2s ease-out}.confirm-dialog{background:var(--bg-sidebar);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.5rem;max-width:400px;width:calc(100% - 2rem);box-shadow:0 25px 50px -12px #00000080;animation:scaleIn .2s ease-out}.confirm-dialog h3{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.confirm-dialog p{font-size:.9rem;color:var(--text-secondary);margin-bottom:1.5rem;line-height:1.5}.confirm-actions{display:flex;gap:.75rem;justify-content:flex-end}.confirm-actions button{padding:.625rem 1.25rem;border-radius:var(--radius-sm);font-weight:500;font-size:.9rem;cursor:pointer;transition:all .2s}.confirm-cancel{background:transparent;border:1px solid var(--border-color);color:var(--text-secondary)}.confirm-cancel:hover{background:var(--bg-card-hover);color:var(--text-primary)}.confirm-action{border:none;color:#fff}.confirm-action.danger{background:#ef4444}.confirm-action.danger:hover{background:#dc2626}.confirm-action.warning{background:#f59e0b}.confirm-action.warning:hover{background:#d97706}.confirm-action.info{background:var(--accent-primary)}.confirm-action.info:hover{filter:brightness(1.1)}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.project-modal{max-width:800px!important;width:90%!important}.form-sections-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:1.5rem}.input-with-icon{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:1rem;color:var(--text-muted);pointer-events:none}.input-with-icon .modal-input{padding-left:3rem}.modal-textarea{width:100%;padding:.75rem 1rem;background:var(--bg-app);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-family:inherit;font-size:.95rem;min-height:120px;resize:none;transition:all .2s}.modal-textarea:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-glow)}.color-swatches-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem}.color-swatch{height:40px;border-radius:8px;border:2px solid transparent;cursor:pointer;transition:all .2s}.color-swatch:hover{transform:scale(1.05)}.color-swatch.active{border-color:var(--text-primary);box-shadow:0 0 0 2px var(--bg-card),0 0 0 4px var(--accent-primary)}.templates-stack{display:flex;flex-direction:column;gap:.75rem}.template-option{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--bg-app);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all .2s}.template-option:hover{background:var(--bg-card-hover);border-color:var(--accent-primary)}.template-option.active{background:var(--accent-glow);border-color:var(--accent-primary)}.template-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--bg-card);border-radius:10px;color:var(--accent-primary)}.template-info{flex:1}.template-name{font-weight:600;color:var(--text-primary);font-size:.95rem}.template-desc{font-size:.8rem;color:var(--text-muted)}@media(max-width:768px){.form-sections-grid{grid-template-columns:1fr;gap:1rem}}.sidebar{width:240px;height:100vh;background-color:var(--bg-sidebar);border-right:1px solid var(--border-color);display:flex;flex-direction:column;padding:1.25rem 1rem;flex-shrink:0}.brand{display:flex;align-items:center;gap:.5rem;margin-bottom:1.5rem;padding-left:.25rem}.logo{width:28px;height:28px;background:linear-gradient(135deg,var(--accent-primary),#0ea5e9);border-radius:6px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;box-shadow:0 0 12px #00bfbf4d}.brand-name{font-size:1.25rem;font-weight:800;letter-spacing:-.5px}.premium-text{background:linear-gradient(to right,var(--text-primary) 30%,var(--accent-primary) 50%,var(--text-primary) 70%);background-size:200% auto;color:transparent;-webkit-background-clip:text;background-clip:text;animation:shine 3s linear infinite;font-weight:900}@keyframes shine{to{background-position:200% center}}.nav-menu{display:flex;flex-direction:column;gap:.125rem;flex:1}.nav-item{display:flex;align-items:center;gap:.625rem;padding:.5rem .75rem;border-radius:8px;color:var(--text-secondary);text-decoration:none;transition:all .2s ease;font-weight:500;font-size:.85rem;border:1px solid transparent}.nav-item svg{width:18px;height:18px}.nav-item:hover{background-color:var(--bg-card-hover);color:var(--text-primary)}.nav-item.active{background-color:var(--bg-card);color:var(--text-primary);border-color:var(--border-color)}.nav-item.active svg{color:var(--accent-primary);filter:drop-shadow(0 0 5px var(--accent-glow))}.active-section{color:var(--text-primary);background:#ffffff08}.project-nav-item{margin-left:1.25rem;padding:.4rem .75rem;font-size:.8rem;gap:.5rem}.project-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.user-info{display:flex;align-items:center;gap:.625rem;padding:.625rem;margin-bottom:.75rem;background:var(--bg-card);border-radius:10px;border:1px solid var(--border-color)}.user-avatar,.user-avatar-placeholder{width:32px;height:32px;border-radius:8px}.user-name{font-size:.8rem;font-weight:600}.user-email{font-size:.65rem}.sidebar-footer{margin-top:auto;padding-top:.75rem;border-top:1px solid var(--border-color)}.sidebar-link{display:flex;align-items:center;gap:.625rem;padding:.5rem .75rem;font-size:.85rem;border-radius:8px;color:var(--text-secondary);text-decoration:none;transition:all .2s;background:transparent;border:none;cursor:pointer;width:100%}.logout-link{margin-top:.25rem}.sidebar-link svg{width:18px;height:18px}.sidebar-link:hover{background:var(--bg-card-hover);color:var(--text-primary)}.icon-btn-subtle{background:transparent!important;border:none;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:4px;border-radius:50%;transition:all .2s;opacity:.7}.icon-btn-subtle:hover{background:#ffffff14!important;color:var(--text-primary);opacity:1}.nav-item-actions{display:flex;align-items:center;gap:4px;margin-left:auto}.project-delete-btn{opacity:0;margin-left:auto;padding:2px;border-radius:4px;color:var(--text-muted);background:transparent;border:none;cursor:pointer;transition:all .2s ease}.project-nav-item:hover .project-delete-btn{opacity:.6}.project-delete-btn:hover{opacity:1!important;background:#ff55551a;color:#f55}.custom-scrollbar::-webkit-scrollbar{width:3px}@media(max-width:768px){.sidebar{width:240px}}.theme-switcher{position:relative;z-index:1000;display:flex;align-items:center}.theme-btn{width:32px;height:32px;border-radius:50%;background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s cubic-bezier(.2,.8,.2,1);flex-shrink:0}.theme-btn:hover{background:var(--bg-card-hover);color:var(--text-primary);transform:scale(1.05);box-shadow:0 4px 12px #00000026}.theme-dropdown{position:absolute;top:50%;right:56px;transform:translateY(-50%) scale(.9);display:flex;align-items:center;gap:24px;background:var(--bg-sidebar);padding:10px 16px;border-radius:999px;border:1px solid var(--border-color);box-shadow:0 4px 20px -5px #0000004d,0 0 0 1px #ffffff0d;opacity:0;pointer-events:none;visibility:hidden;transition:all .2s cubic-bezier(.2,.8,.2,1)}.theme-switcher .theme-dropdown{opacity:1;pointer-events:auto;visibility:visible;right:60px;transform:translateY(-50%) scale(1)}.theme-option{width:16px;height:16px;padding:0;border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .2s}.theme-option:hover{transform:scale(1.15)}.theme-preview{width:12px;height:12px;border-radius:50%;box-shadow:inset 0 0 0 1px #0000001a;flex-shrink:0;display:block}.theme-option.active .theme-preview{transform:scale(1.2);box-shadow:0 0 0 2px var(--bg-sidebar),0 0 0 4px var(--accent-primary)}[data-theme=light] .theme-dropdown{background:#fff;border-color:#e2e8f0;box-shadow:0 4px 15px #0000001a}[data-theme=light] .theme-option.active .theme-preview{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--accent-primary)}.mobile-menu-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;z-index:1000;opacity:0;visibility:hidden;transition:all .3s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.mobile-menu-overlay.active{opacity:1;visibility:visible}.mobile-menu-content{position:fixed;top:0;left:-280px;width:280px;height:100%;background-color:var(--sidebar-bg, #ffffff);z-index:1001;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;box-shadow:4px 0 10px #0000001a}.mobile-menu-content.active{left:0}.mobile-menu-header{padding:1.5rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border-color, #e5e7eb)}.mobile-logo{display:flex;align-items:center;gap:.75rem;font-weight:700;font-size:1.25rem;color:var(--text-color, #1f2937)}.mobile-logo-icon{width:32px;height:32px;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:1.1rem}.mobile-close-btn{background:none;border:none;color:var(--text-muted, #6b7280);cursor:pointer;padding:.5rem;border-radius:8px;transition:background-color .2s}.mobile-close-btn:hover{background-color:var(--hover-color, #f3f4f6);color:var(--text-color, #1f2937)}.mobile-nav-links{padding:1rem;display:flex;flex-direction:column;gap:.5rem;overflow-y:auto}.mobile-nav-item{display:flex;align-items:center;gap:1rem;padding:.875rem 1rem;border-radius:10px;color:var(--text-muted, #6b7280);text-decoration:none;transition:all .2s;font-weight:500}.mobile-nav-item:hover{background-color:var(--hover-color, #f3f4f6);color:var(--primary-color, #3b82f6)}.mobile-nav-item.active{background-color:var(--active-bg, #eff6ff);color:var(--primary-color, #3b82f6)}.mobile-nav-icon{display:flex;align-items:center}[data-theme=dark] .mobile-menu-content{background-color:#1a1c23;color:#e5e7eb}[data-theme=dark] .mobile-menu-header{border-color:#2d2f39}[data-theme=dark] .mobile-nav-item:hover{background-color:#2d2f39}[data-theme=dark] .mobile-nav-item.active{background-color:#3b82f626}.trial-badge{position:fixed;bottom:20px;right:20px;background:#3b82f61a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(59,130,246,.2);padding:6px 14px;border-radius:20px;color:#3b82f6;font-size:.8rem;font-weight:600;z-index:1000;animation:fadeIn .5s ease-out}.trial-banner{background:linear-gradient(90deg,#3b82f6,#2563eb);color:#fff;padding:10px 20px;display:flex;align-items:center;justify-content:center;gap:20px;z-index:1001;font-size:.9rem;font-weight:500}.trial-banner.urgent{background:linear-gradient(90deg,#ef4444,#dc2626)}.banner-content{display:flex;align-items:center;gap:8px}.banner-btn{background:#fff;color:#2563eb;border:none;padding:4px 12px;border-radius:6px;font-weight:600;font-size:.8rem;cursor:pointer;transition:transform .2s}.trial-banner.urgent .banner-btn{color:#dc2626}.banner-btn:hover{transform:scale(1.05)}.trial-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000d9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .3s ease-out}.trial-modal{background:var(--card-bg, #1a1c23);border:1px solid var(--border-color, #2d2f39);padding:40px;border-radius:24px;max-width:400px;width:90%;text-align:center;box-shadow:0 25px 50px -12px #00000080}.trial-icon{width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 24px}.trial-icon.error{background:#ef44441a;color:#ef4444}.trial-modal h2{font-size:1.5rem;margin-bottom:12px;color:var(--text-color, #ffffff)}.trial-modal p{color:var(--text-muted, #94a3b8);margin-bottom:32px;line-height:1.6}.trial-actions{display:flex;flex-direction:column;gap:12px}.premium-btn{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border:none;padding:14px;border-radius:12px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:all .2s}.premium-btn:hover{transform:translateY(-2px);box-shadow:0 10px 20px -5px #d9770666}.logout-btn{background:transparent;border:1px solid var(--border-color, #2d2f39);color:var(--text-muted, #94a3b8);padding:12px;border-radius:12px;cursor:pointer;transition:all .2s}.logout-btn:hover{background:#ffffff0d;color:var(--text-color, #ffffff)}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.layout{display:flex;height:100vh;width:100vw;background-color:var(--bg-app);position:relative}.sidebar-wrapper{flex-shrink:0}.main-content{flex:1;overflow:hidden;position:relative;background-image:radial-gradient(circle at 10% 20%,rgba(139,92,246,.05) 0%,transparent 25%),radial-gradient(circle at 90% 80%,rgba(59,130,246,.05) 0%,transparent 25%)}.theme-switcher-wrapper{position:absolute;top:1rem;right:1rem;z-index:100}.page-container{height:100%;padding:0;overflow:hidden;display:flex;flex-direction:column}.page-header{margin-bottom:2rem;display:flex;justify-content:space-between;align-items:center}.page-title{font-size:1.875rem;font-weight:700;color:var(--text-primary)}.mobile-menu-btn{position:fixed;top:1rem;left:1rem;z-index:1001;width:44px;height:44px;border-radius:var(--radius-sm);background:var(--bg-sidebar);border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;display:none;align-items:center;justify-content:center;transition:all .2s}.mobile-menu-btn:hover{background:var(--bg-card-hover)}.mobile-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:999;display:none;animation:fadeIn .2s ease-out}@media(max-width:768px){.mobile-menu-btn{display:flex}.mobile-overlay{display:block}.sidebar-wrapper{position:fixed;left:0;top:0;bottom:0;z-index:1000;transform:translate(-100%);transition:transform .3s ease}.sidebar-wrapper.open{transform:translate(0)}.page-container{padding:4.5rem 1rem 1rem}.page-title{font-size:1.5rem}.page-header{flex-direction:column;align-items:flex-start;gap:1rem}}@media(max-width:480px){.page-container{padding:4rem .75rem .75rem}.page-title{font-size:1.25rem}}.mobile-header{display:none;align-items:center;justify-content:space-between;padding:.75rem 1rem;background-color:var(--sidebar-bg, #ffffff);border-bottom:1px solid var(--border-color, #e5e7eb);position:sticky;top:0;z-index:900}.mobile-logo-minimal{display:flex;align-items:center;gap:.5rem;font-weight:700;cursor:pointer}.logo-box{width:24px;height:24px;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:.8rem}.mobile-toggle-btn{background:none;border:none;color:var(--text-color, #1f2937);padding:.5rem;cursor:pointer;border-radius:8px}@media(max-width:768px){.show-mobile{display:flex}.hide-mobile{display:none!important}.mobile-header{display:flex}.layout{flex-direction:column}.main-content{padding-top:0}.page-container{padding:1rem}}.login-page{position:relative;width:100vw;height:100vh;overflow:hidden;background:linear-gradient(135deg,#0a0a0a,#1a1a1a,#0f0f0f);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff}.bg-orb{position:absolute;border-radius:50%;filter:blur(100px);opacity:.25;animation:floatOrb 25s infinite ease-in-out;z-index:0}.orb-1{width:500px;height:500px;background:radial-gradient(circle,#0ea5e9 0%,#0284c7 40%,transparent 70%);top:-150px;left:-100px;animation-delay:0s}.orb-2{width:600px;height:600px;background:radial-gradient(circle,#14b8a6 0%,#0d9488 40%,transparent 70%);bottom:-200px;right:-150px;animation-delay:-10s}.orb-3{width:400px;height:400px;background:radial-gradient(circle,#06b6d4 0%,#0284c7 40%,transparent 70%);top:40%;right:15%;opacity:.2;animation-delay:-18s}@keyframes floatOrb{0%,to{transform:translate(0) scale(1)}25%{transform:translate(50px,-50px) scale(1.1)}50%{transform:translate(-30px,30px) scale(.95)}75%{transform:translate(40px,20px) scale(1.05)}}.login-glass-card{position:relative;z-index:10;width:440px;padding:3rem 2.5rem;background:#141414b3;backdrop-filter:blur(30px) saturate(120%);-webkit-backdrop-filter:blur(30px) saturate(120%);border:1px solid rgba(14,165,233,.15);border-radius:24px;box-shadow:0 8px 32px #0009,0 20px 40px -15px #0ea5e91a,inset 0 0 0 1px #ffffff08;text-align:center;display:flex;flex-direction:column;gap:2rem;opacity:0;transform:translateY(30px) scale(.95);animation:fadeInCard 1s cubic-bezier(.16,1,.3,1) forwards}@keyframes fadeInCard{to{opacity:1;transform:translateY(0) scale(1)}}.logo-section{position:relative;width:70px;height:70px;display:flex;align-items:center;justify-content:center;margin-bottom:1rem;margin-left:auto;margin-right:auto}.logo-icon{position:relative;z-index:2;filter:drop-shadow(0 0 8px rgba(14,165,233,.4)) drop-shadow(0 0 12px rgba(20,184,166,.3))}.login-header{display:flex;flex-direction:column;align-items:center;gap:.5rem;margin-bottom:1rem}.brand-name{font-size:2rem;font-weight:700;background:linear-gradient(135deg,#0ea5e9,#14b8a6);-webkit-background-clip:text;background-clip:text;color:transparent;letter-spacing:-.5px;margin:0}.brand-tagline{font-size:.875rem;color:#a3a3a3;margin:0;font-weight:400}.login-content{display:flex;flex-direction:column;gap:1.25rem}.feature-pill{display:inline-flex;align-items:center;gap:.4rem;align-self:center;padding:.4rem .875rem;border-radius:100px;background:#0ea5e91a;border:1px solid rgba(14,165,233,.25);color:#0ea5e9;font-size:.7rem;font-weight:600;transition:all .25s ease}.feature-pill:hover{background:#0ea5e926;border-color:#0ea5e959;transform:translateY(-1px)}.feature-pills{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap}.sparkle-icon{color:#fca5a5}.auth-section{display:flex;flex-direction:column;gap:1.25rem}.welcome-text{font-size:1.5rem;font-weight:600;margin:0;color:#fff;letter-spacing:-.3px}.welcome-sub{font-size:.875rem;color:#737373;margin:0;margin-top:-.25rem;font-weight:400}.btn-google-primary{display:flex;align-items:center;justify-content:center;gap:.75rem;width:100%;padding:.875rem 1rem;background:#fffffff2;color:#171717;border:1px solid rgba(255,255,255,.1);border-radius:12px;font-family:inherit;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .25s ease;box-shadow:0 2px 8px #00000026}.btn-google-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000040;background:#fff}.btn-google-primary:active{transform:translateY(0)}.google-icon-wrapper{display:flex;align-items:center;justify-content:center}.google-icon-wrapper img{width:18px;height:18px}.btn-text{text-align:center}.btn-arrow{color:#737373;transition:all .25s ease}.btn-google-primary:hover .btn-arrow{transform:translate(3px);color:#171717}.language-switcher{position:absolute;bottom:6.5rem;display:flex;gap:.5rem;z-index:10}.lang-btn{padding:.5rem 1rem;background:#ffffff08;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#737373;font-family:inherit;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .25s ease;letter-spacing:.5px}.lang-btn:hover{background:#ffffff0d;border-color:#0ea5e94d;color:#a3a3a3;transform:translateY(-1px)}.lang-btn.active{background:linear-gradient(135deg,#0ea5e926,#14b8a626);border-color:#0ea5e966;color:#0ea5e9;box-shadow:0 0 12px #0ea5e933}.lang-btn.active:hover{background:linear-gradient(135deg,#0ea5e933,#14b8a633);border-color:#0ea5e980;color:#0284c7}.login-footer-links{position:absolute;bottom:3.5rem;display:flex;justify-content:center;gap:.75rem;font-size:.8rem;color:#475569;z-index:10}.login-footer-links a{color:#737373;text-decoration:none;transition:color .2s}.login-footer-links a:hover{color:#a3a3a3;text-decoration:underline}.dot{color:#404040}.footer-credit{position:absolute;bottom:1.5rem;font-size:.75rem;color:#404040;z-index:10}.auth-divider{display:flex;align-items:center;gap:1rem;color:#737373;font-size:.85rem;margin:.5rem 0}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:#ffffff1a}.email-form{display:flex;flex-direction:column;gap:.875rem}.input-group{position:relative;display:flex;align-items:center}.input-group input{width:100%;padding:.875rem 1rem .875rem 2.5rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:10px;color:#fff;font-family:inherit;font-size:.9rem;transition:all .25s ease}.input-group input:focus{outline:none;border-color:#0ea5e9;background:#ffffff14;box-shadow:0 0 0 2px #0ea5e926}.input-group input::placeholder{color:#64748b}.input-group input:disabled{opacity:.6;cursor:not-allowed}.input-icon{position:absolute;left:.875rem;color:#64748b;pointer-events:none}.password-toggle{position:absolute;right:.75rem;background:none;border:none;color:#64748b;cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;transition:color .2s}.password-toggle:hover{color:#94a3b8}.btn-email-submit{width:100%;padding:.875rem 1rem;background:linear-gradient(135deg,#0ea5e9,#14b8a6);border:none;border-radius:10px;color:#fff;font-family:inherit;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .25s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:0 2px 8px #0ea5e94d}.btn-email-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #0ea5e966;background:linear-gradient(135deg,#0284c7,#0d9488)}.btn-email-submit:active:not(:disabled){transform:translateY(0)}.btn-email-submit:disabled{opacity:.6;cursor:not-allowed}.auth-mode-switch{display:flex;justify-content:center;align-items:center;gap:.5rem;font-size:.85rem;color:#737373}.auth-mode-switch p{margin:0;display:flex;align-items:center;gap:.5rem}.auth-mode-switch button{background:none;border:none;color:#0ea5e9;font-family:inherit;font-size:.85rem;font-weight:600;cursor:pointer;padding:0;transition:all .2s ease;text-decoration:underline;text-underline-offset:2px}.auth-mode-switch button:hover{color:#f59e0b}.auth-mode-switch button:disabled{opacity:.5;cursor:not-allowed}.link-btn{background:none;border:none;color:#94a3b8;font-family:inherit;font-size:.85rem;cursor:pointer;padding:.25rem;transition:color .2s}.link-btn:hover{color:#fff}.link-btn strong{color:#fbbf24}.link-btn.forgot{font-size:.8rem;color:#64748b;text-decoration:none;margin-top:.75rem}.error-message,.error-message-box{padding:.75rem 1rem;background:#ef444426;border:1px solid rgba(239,68,68,.3);border-radius:12px;color:#fca5a5;font-size:.85rem;text-align:center;display:flex;align-items:center;justify-content:center;gap:.5rem}.success-message{padding:.75rem 1rem;background:#22c55e26;border:1px solid rgba(34,197,94,.3);border-radius:12px;color:#86efac;font-size:.85rem;text-align:center}.demo-badge{display:inline-flex;align-items:center;gap:.5rem;align-self:center;padding:.4rem 1rem;border-radius:100px;background:#fbbf2426;border:1px solid rgba(251,191,36,.3);color:#fcd34d;font-size:.75rem;font-weight:600}.spinning{animation:spin 1s linear infinite}.btn-google-primary:disabled{opacity:.7;cursor:not-allowed;transform:none}@media(max-width:480px){.login-glass-card{width:calc(100% - 2rem);margin:1rem;padding:2rem 1.5rem;border-radius:24px}.brand-name{font-size:1.875rem}.brand-tagline{font-size:.85rem}.logo-wrapper{width:64px;height:64px;margin-bottom:1rem}.logo-icon{width:32px;height:32px}.welcome-text{font-size:1.25rem}.welcome-sub{font-size:.85rem}.btn-google-primary,.btn-email-submit{padding:.75rem .875rem;font-size:.9rem}.input-group input{padding:.75rem 1rem .75rem 2.5rem;font-size:.9rem}.footer-credit{bottom:1rem;font-size:.7rem}.bg-orb.orb-1{width:250px;height:250px}.bg-orb.orb-2{width:300px;height:300px}.bg-orb.orb-3{width:200px;height:200px}}@media(max-width:360px){.login-glass-card{padding:1.5rem 1rem}.feature-pill,.demo-badge{font-size:.7rem;padding:.35rem .75rem}.auth-mode-switch{font-size:.8rem}}.notification-dropdown{position:absolute;top:calc(100% + 12px);right:0;width:360px;background:#141418d9;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border:1px solid rgba(255,255,255,.08);border-radius:20px;box-shadow:0 20px 40px #0006;z-index:1000;overflow:hidden;animation:dropdownPop .3s cubic-bezier(.34,1.56,.64,1);transform-origin:top right}@keyframes dropdownPop{0%{opacity:0;transform:scale(.95) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}.notifications-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.05)}.notifications-header h3{font-size:1rem;font-weight:700;color:#fff;margin:0}.mark-all-btn{background:none;border:none;color:var(--accent-primary);font-size:.75rem;font-weight:600;cursor:pointer;padding:4px 8px;border-radius:6px;transition:background .2s}.mark-all-btn:hover{background:#0ea5e91a}.notifications-list{max-height:400px;overflow-y:auto;padding:.5rem}.notifications-list::-webkit-scrollbar{width:4px}.notifications-list::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:10px}.notification-item{display:flex;gap:1rem;padding:1rem;border-radius:12px;cursor:pointer;transition:all .2s;position:relative}.notification-item:hover{background:#ffffff0a}.notification-item.unread:after{content:"";position:absolute;top:1.25rem;right:1.25rem;width:6px;height:6px;background:var(--accent-primary);border-radius:50%;box-shadow:0 0 10px var(--accent-primary)}.notif-icon-wrapper{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.notif-icon-wrapper.deadline{background:#ef444426;color:#ef4444}.notif-icon-wrapper.warning{background:#f59e0b26;color:#f59e0b}.notif-icon-wrapper.success{background:#10b98126;color:#10b981}.notif-icon-wrapper.info{background:#0ea5e926;color:#0ea5e9}.notif-content{flex:1}.notif-content h4{font-size:.85rem;font-weight:600;color:#fff;margin:0 0 .25rem}.notif-content p{font-size:.75rem;color:var(--text-secondary);margin:0 0 .5rem;line-height:1.4}.notif-time{font-size:.65rem;color:var(--text-muted);font-weight:500}.empty-notifications{padding:3rem 2rem;display:flex;flex-direction:column;align-items:center;gap:1rem;color:var(--text-muted)}.empty-notifications p{font-size:.85rem;margin:0}.notifications-footer{padding:.75rem;border-top:1px solid rgba(255,255,255,.05);display:flex;justify-content:center}.clear-all-btn{background:none;border:none;color:var(--text-muted);font-size:.7rem;font-weight:500;cursor:pointer;transition:color .2s}.clear-all-btn:hover{color:#ef4444}.bell-wrapper{position:relative;display:inline-block}.notification-badge{position:absolute;top:-4px;right:-4px;background:#ef4444;color:#fff;font-size:.6rem;font-weight:800;min-width:18px;height:18px;padding:0 4px;border-radius:9px;display:flex;align-items:center;justify-content:center;border:2px solid #0f1115;animation:badgePulse 2s infinite}@keyframes badgePulse{0%{transform:scale(1);box-shadow:0 0 #ef4444b3}70%{transform:scale(1.1);box-shadow:0 0 0 8px #ef444400}to{transform:scale(1);box-shadow:0 0 #ef444400}}.bell-btn.has-unread svg{animation:bellSwing 1s ease-in-out infinite alternate}@keyframes bellSwing{0%{transform:rotate(-15deg)}to{transform:rotate(15deg)}}.dashboard-wrapper{padding:2rem 2.5rem;height:100%;overflow-y:auto;display:flex;flex-direction:column;gap:2.5rem;background:radial-gradient(circle at top right,rgba(14,165,233,.05),transparent 400px),radial-gradient(circle at bottom left,rgba(20,184,166,.05),transparent 400px)}.dashboard-topbar{display:flex;justify-content:space-between;align-items:flex-end}.welcome-segment h1{font-size:2.25rem;font-weight:800;margin:0;letter-spacing:-.03em}.time-chip{font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:.5rem}.topbar-actions{display:flex;gap:1rem}.btn-secondary{background:#ffffff08;border:1px solid rgba(255,255,255,.05);color:var(--text-secondary);width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:#ffffff14;color:var(--text-primary)}.btn-primary-glow{background:linear-gradient(135deg,var(--accent-primary) 0%,#0284c7 100%);border:none;color:#fff;padding:0 1.5rem;height:44px;border-radius:12px;font-weight:600;font-size:.9rem;display:flex;align-items:center;gap:.75rem;cursor:pointer;transition:all .3s;box-shadow:0 8px 16px #0ea5e940}.btn-primary-glow:hover{transform:translateY(-2px);box-shadow:0 12px 20px #0ea5e959}.bento-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:auto auto;gap:1.5rem;grid-template-areas:"hero hero projects activity" "hero hero tasks activity" "active active active quick"}.bento-item{background:#14141866;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.04);border-radius:24px;padding:1.5rem;position:relative;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1)}.bento-item:hover{background:#ffffff0a;border-color:#ffffff1a;transform:translateY(-4px)}.stat-hero{grid-area:hero;background:linear-gradient(135deg,#0ea5e91a,#14b8a61a);border:1px solid rgba(14,165,233,.2);display:flex;align-items:center}.hero-content{position:relative;z-index:2;max-width:340px}.hero-label{font-size:.85rem;font-weight:600;color:var(--accent-primary);text-transform:uppercase;letter-spacing:.05em}.hero-value{font-size:4.5rem;font-weight:900;color:#fff;line-height:1;margin:.5rem 0 1.5rem;letter-spacing:-.04em}.hero-progress-bg{width:100%;height:10px;background:#ffffff0d;border-radius:99px;margin-bottom:1.5rem;overflow:hidden}.hero-progress-fill{height:100%;background:linear-gradient(90deg,var(--accent-primary),var(--accent-secondary));border-radius:99px;box-shadow:0 0 20px #0ea5e966}.hero-content p{color:var(--text-secondary);font-size:.95rem;line-height:1.6;margin:0}.hero-icon-bg{position:absolute;right:-20px;bottom:-20px;opacity:.05;color:#fff;z-index:1;transform:rotate(-10deg)}.projects-count{grid-area:projects}.tasks-count{grid-area:tasks}.stat-mini{display:flex;flex-direction:column;justify-content:space-between}.mini-icon{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff}.mini-info{display:flex;flex-direction:column}.mini-value{font-size:2rem;font-weight:800;color:#fff}.mini-label{font-size:.8rem;color:var(--text-muted);font-weight:600}.recent-activity-bento{grid-area:activity;display:flex;flex-direction:column}.item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem}.item-header h3{font-size:1rem;font-weight:700;color:#fff;margin:0}.activity-scroll{display:flex;flex-direction:column;gap:1rem;overflow-y:auto}.activity-row{display:flex;gap:1rem;align-items:center;padding:.75rem;background:#ffffff05;border-radius:16px}.activity-row .dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.activity-row .details p{margin:0;font-size:.8rem;color:var(--text-secondary)}.activity-row .details span{font-size:.7rem;color:var(--text-muted)}.active-projects-bento{grid-area:active}.projects-scroll-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.project-compact-card{background:#ffffff05;border:1px solid rgba(255,255,255,.03);border-radius:16px;padding:1rem;cursor:pointer;transition:all .2s}.project-compact-card:hover{background:#ffffff0f;border-color:var(--accent-primary)}.p-header{display:flex;gap:.75rem;align-items:center}.p-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:.9rem}.p-info h4{margin:0;font-size:.85rem;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.p-meta{display:flex;align-items:center;gap:.25rem;color:var(--text-muted);font-size:.7rem}.quick-actions-bento{grid-area:quick;display:flex;flex-direction:column;justify-content:space-between}.actions-stack{display:flex;flex-direction:column;gap:.75rem}.glass-action-btn{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#ffffff08;border:1px solid rgba(255,255,255,.05);border-radius:12px;color:var(--text-secondary);font-family:inherit;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s}.glass-action-btn:hover{background:#ffffff14;color:var(--text-primary);transform:translate(4px)}.link-btn{background:none;border:none;color:var(--accent-primary);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;padding:4px 8px}.empty-state-full{grid-column:span 4;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;color:var(--text-muted);border:2px dashed rgba(255,255,255,.03);border-radius:20px;cursor:pointer}.empty-state-full:hover{background:#ffffff03;border-color:var(--accent-primary);color:var(--text-secondary)}@media(max-width:1400px){.projects-scroll-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:1100px){.bento-grid{grid-template-columns:repeat(2,1fr);grid-template-areas:"hero hero" "projects tasks" "activity quick" "active active"}}@media(max-width:600px){.bento-grid{grid-template-columns:1fr;grid-template-areas:"hero" "projects" "tasks" "activity" "quick" "active"}}.board-layout{height:100%;flex:1;display:flex;flex-direction:column;overflow:hidden;background-color:#0b0c10}.board-header{padding:1.5rem 2rem;display:flex;justify-content:space-between;align-items:center}.board-container{display:flex;flex-direction:row;flex:1;overflow-x:auto;overflow-y:hidden;gap:1.5rem;padding:0 1.5rem 1.5rem;align-items:stretch}.kanban-column{min-width:300px;max-width:400px;flex:1 0 auto;height:100%;background:#12121666;border-radius:12px;border:1px solid rgba(255,255,255,.04);display:flex;flex-direction:column;position:relative}.column-header{padding:1rem 1.25rem;display:flex;justify-content:space-between;align-items:center;background:#ffffff0f;border-bottom:1px solid rgba(255,255,255,.08);border-radius:11px 11px 0 0}.column-info{display:flex;align-items:center;gap:.75rem}.column-title{font-weight:600;color:#f1f5f9;font-size:.95rem}.column-count{background:#ffffff14;padding:.125rem .5rem;border-radius:99px;font-size:.75rem;color:#94a3b8}.task-list{padding:1rem;flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:1rem}.kanban-task{background:#141418;padding:1rem;border-radius:10px;border:1px solid rgba(255,255,255,.03);cursor:grab;transition:background .2s,box-shadow .2s;position:relative;overflow:hidden;box-shadow:0 4px 6px -1px #0003}.kanban-task:before{content:"";position:absolute;left:0;top:5px;bottom:5px;width:3px;background:var(--task-color, #3b82f6);opacity:.8;border-radius:0 4px 4px 0}.kanban-task:hover:not(.dragging){background:#1c1c22;box-shadow:0 10px 15px -3px #0000004d}.kanban-column.dragging-over{background:#ffffff0d;border-color:#ffffff1a}.kanban-task.dragging{z-index:9999;transform:scale(1.02);box-shadow:0 20px 25px -5px #00000080}.task-tags{display:flex;gap:.5rem;margin-bottom:.75rem}.task-tag{font-size:.65rem;padding:.125rem .5rem;border-radius:4px;background:#8b5cf626;color:#c4b5fd;font-weight:600;text-transform:uppercase}.task-title{font-size:.95rem;font-weight:500;color:#fff;margin-bottom:.75rem;line-height:1.4}.task-footer{display:flex;justify-content:space-between;align-items:center;color:#64748b;font-size:.75rem}.column-add-task-btn{margin:1rem;padding:.75rem;border:1px dashed rgba(255,255,255,.05);border-radius:8px;background:transparent;color:#475569;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:.5rem}.column-add-task-btn:hover{border-color:#ffffff26;color:#94a3b8;background:#ffffff05}.column-menu{background:#1e1e24;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:.5rem;min-width:120px;box-shadow:0 10px 25px #00000080}.column-menu button{width:100%;text-align:left;padding:.5rem;background:none;border:none;color:#cbd5e1;display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.85rem;border-radius:4px}.column-menu button:hover{background:#ffffff0d;color:#fff}.column-menu button.delete{color:#ef4444}.column-menu button.delete:hover{background:#ef44441a}.icon-btn{background:none;border:none;color:#64748b;cursor:pointer;padding:4px;border-radius:4px;transition:all .2s}.icon-btn:hover{background:#ffffff0d;color:#f1f5f9}.modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:9999}.modal-card{width:100%;max-width:480px;background:#141419d9;-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(255,255,255,.08);border-radius:24px;padding:2rem;position:relative;box-shadow:0 25px 50px -12px #00000080,0 0 0 1px #ffffff0d;overflow:hidden}.modal-card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--accent-primary),transparent);opacity:.5}.modal-close-btn{position:absolute;top:1.5rem;right:1.5rem;background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:.25rem;border-radius:50%;transition:all .2s;display:flex;align-items:center;justify-content:center}.modal-close-btn:hover{background:#ffffff1a;color:#fff}.modal-header{display:flex;gap:1rem;margin-bottom:2rem;align-items:flex-start}.icon-wrapper{background:#ffffff08;border:1px solid rgba(255,255,255,.05);width:48px;height:48px;border-radius:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.modal-title{font-size:1.5rem;font-weight:700;color:#fff;margin-bottom:.25rem;letter-spacing:-.02em}.modal-subtitle{font-size:.9rem;color:var(--text-muted)}.modal-form{display:flex;flex-direction:column;gap:1.5rem}.form-label{font-size:.85rem;font-weight:500;color:var(--text-secondary);margin-left:.25rem}.input-wrapper{position:relative;border-radius:12px;background:#0003;border:1px solid rgba(255,255,255,.08);transition:all .2s ease}.input-wrapper:focus-within{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-glow);background:#0000004d}.modal-input{width:100%;background:transparent;border:none;color:#fff;padding:1rem;font-size:1rem;outline:none}.modal-input::placeholder{color:#fff3}.tags-grid{display:flex;flex-wrap:wrap;gap:.5rem}.tag-chip{background:#ffffff08;border:1px solid rgba(255,255,255,.08);color:var(--text-secondary);padding:.5rem 1rem;border-radius:100px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.25rem}.tag-chip:hover{background:#ffffff14;transform:translateY(-1px)}.tag-chip.active{color:#000;background:var(--tag-color);color:#000c;border-color:transparent;font-weight:600;box-shadow:0 4px 12px #0003}.modal-footer{margin-top:1rem;display:flex;justify-content:flex-end;gap:1rem;align-items:center}.btn-cancel{background:transparent;border:none;color:var(--text-muted);font-size:.95rem;font-weight:500;cursor:pointer;padding:.75rem 1rem;border-radius:8px;transition:color .2s}.btn-cancel:hover{color:#fff;background:#ffffff08}.btn-create{background:var(--accent-primary);color:#fff;border:none;padding:.75rem 2rem;border-radius:12px;font-weight:600;font-size:.95rem;cursor:pointer;box-shadow:0 4px 15px var(--accent-glow);transition:all .2s}.btn-create:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.btn-create:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px var(--accent-glow);filter:brightness(1.1)}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes scaleIn{0%{transform:scale(.95) translateY(10px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}@keyframes scaleOut{0%{transform:scale(1) translateY(0);opacity:1}to{transform:scale(.95) translateY(10px);opacity:0}}.fade-in{animation:fadeIn .3s ease-out forwards}.fade-out{animation:fadeOut .3s ease-out forwards}.scale-in{animation:scaleIn .3s cubic-bezier(.16,1,.3,1) forwards}.scale-out{animation:scaleOut .3s ease-in forwards}.roadmap-container{display:flex;height:100%;gap:2rem;overflow:hidden}.roadmap-chat{flex:1;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);display:flex;flex-direction:column;overflow:hidden;max-width:450px}.chat-header{padding:1.5rem;border-bottom:1px solid var(--border-color);background:#ffffff05}.chat-messages{flex:1;padding:1.5rem;overflow-y:auto;display:flex;flex-direction:column;gap:1.5rem}.message{display:flex;gap:1rem;animation:slideIn .3s ease-out}.message.user{flex-direction:row-reverse}.message-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.25rem;flex-shrink:0}.message.ai .message-avatar{background:linear-gradient(135deg,var(--accent-primary),#3b82f6);box-shadow:0 0 15px #8b5cf64d}.message.user .message-avatar{background:var(--bg-card-hover);border:1px solid var(--border-color)}.message-bubble{background:#ffffff0d;padding:1rem;border-radius:var(--radius-md);border-top-left-radius:0;max-width:85%;line-height:1.5;color:var(--text-primary);font-size:.95rem}.message.user .message-bubble{background:var(--accent-primary);color:#fff;border-top-left-radius:var(--radius-md);border-top-right-radius:0}.chat-input-area{padding:1.5rem;border-top:1px solid var(--border-color);display:flex;gap:1rem}.chat-input{flex:1;background:#0003;border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:.75rem 1rem;color:var(--text-primary);font-family:var(--font-main);outline:none;transition:all .2s}.chat-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 2px #8b5cf633}.roadmap-view{flex:2;background:#0003;border-radius:var(--radius-md);padding:2rem;overflow-y:auto;position:relative}.roadmap-timeline{position:relative;padding-left:2rem}.roadmap-timeline:before{content:"";position:absolute;left:0;top:1rem;bottom:0;width:2px;background:linear-gradient(to bottom,var(--accent-primary),transparent)}.timeline-item{position:relative;margin-bottom:2.5rem;opacity:0;animation:fadeIn .5s ease-out forwards}.timeline-dot{position:absolute;left:-2.4rem;top:.25rem;width:1rem;height:1rem;background:var(--bg-app);border:2px solid var(--accent-primary);border-radius:50%;box-shadow:0 0 10px var(--accent-glow)}.timeline-content{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1.5rem;transition:transform .2s}.timeline-content:hover{transform:translate(5px);border-color:var(--accent-primary)}.timeline-phase{font-size:.8rem;text-transform:uppercase;letter-spacing:1px;color:var(--accent-primary);margin-bottom:.5rem;font-weight:600}.timeline-title{font-size:1.25rem;font-weight:700;margin-bottom:.75rem}.timeline-desc{color:var(--text-secondary);font-size:.95rem;line-height:1.6}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.modal-overlay{position:fixed;inset:0;background:#000000b3;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.calendar-event-modal{background:var(--bg-primary);border:1px solid rgba(14,165,233,.15);border-radius:16px;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #00000080,0 0 40px #0ea5e91a;animation:slideUp .3s ease}@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:1.5rem;border-bottom:1px solid rgba(14,165,233,.1)}.modal-header h2{margin:0;font-size:1.5rem;font-weight:700;background:linear-gradient(135deg,#0ea5e9,#14b8a6);-webkit-background-clip:text;background-clip:text;color:transparent}.close-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:.5rem;border-radius:8px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.close-btn:hover{background:#ef44441a;color:#ef4444}.modal-form{padding:1.5rem;display:flex;flex-direction:column;gap:1.25rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{display:flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:600;color:var(--text-secondary)}.form-group input,.form-group textarea{width:100%;padding:.75rem 1rem;background:#0ea5e90d;border:1px solid rgba(14,165,233,.15);border-radius:10px;color:var(--text-primary);font-family:inherit;font-size:.95rem;transition:all .2s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#0ea5e966;background:#0ea5e91a;box-shadow:0 0 0 3px #0ea5e91a}.form-group textarea{resize:vertical;min-height:100px}.date-display{background:#0ea5e91a!important;cursor:default;font-weight:500}.color-picker{display:flex;gap:.75rem;flex-wrap:wrap}.color-option{width:36px;height:36px;border-radius:8px;border:2px solid transparent;cursor:pointer;transition:all .2s ease;position:relative}.color-option:hover{transform:scale(1.1);box-shadow:0 4px 12px #0000004d}.color-option.active{border-color:#fff;transform:scale(1.15);box-shadow:0 0 0 3px #fff3}.color-option.active:after{content:"✓";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1rem;font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,.3)}.modal-actions{display:flex;gap:.75rem;margin-top:.5rem}.modal-actions button{flex:1;padding:.875rem 1.5rem;border:none;border-radius:10px;font-family:inherit;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .25s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}.btn-primary{background:linear-gradient(135deg,#0ea5e9,#14b8a6);color:#fff;box-shadow:0 4px 12px #0ea5e94d}.btn-primary:hover{background:linear-gradient(135deg,#0284c7,#0d9488);box-shadow:0 6px 20px #0ea5e966;transform:translateY(-2px)}.btn-secondary{background:#0ea5e91a;border:1px solid rgba(14,165,233,.3)!important;color:var(--accent-primary)}.btn-secondary:hover{background:#0ea5e933;border-color:#0ea5e966}.calendar-event-modal::-webkit-scrollbar{width:8px}.calendar-event-modal::-webkit-scrollbar-track{background:#0ea5e90d;border-radius:4px}.calendar-event-modal::-webkit-scrollbar-thumb{background:#0ea5e94d;border-radius:4px}.calendar-event-modal::-webkit-scrollbar-thumb:hover{background:#0ea5e980}.holiday-badge{display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:8px;font-weight:700;font-size:.75rem;box-shadow:0 3px 8px #0000004d;animation:pulse-subtle 2s ease-in-out infinite;white-space:normal;line-height:1.3;max-width:100%;word-wrap:break-word}@keyframes pulse-subtle{0%,to{opacity:1}50%{opacity:.85}}.holiday-national{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.holiday-religious{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.holiday-size-small{font-size:.7rem;padding:5px 8px}.holiday-size-medium{font-size:.8rem;padding:6px 12px}.holiday-size-large{font-size:.9rem;padding:8px 14px}.half-day-indicator{opacity:.8;font-size:.6em;margin-left:2px}.holiday-badge.half-day{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.holiday-name{line-height:1}.calendar-container{padding:1.5rem;height:100%;display:flex;flex-direction:column;overflow:hidden}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.calendar-title{font-size:1.5rem;font-weight:700;color:var(--text-primary)}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);flex:1;gap:1px;background:var(--border-color);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.calendar-day-header{background:var(--bg-card);padding:10px;text-align:center;font-weight:600;color:var(--text-secondary);font-size:.9rem}.calendar-cell{background:var(--bg-app);padding:8px;min-height:100px;display:flex;flex-direction:column;gap:4px;transition:background .2s;cursor:pointer}.calendar-tasks-list{flex:1;display:flex;flex-direction:column;gap:4px;min-height:100%}.calendar-cell:hover{background:var(--bg-card)}.calendar-cell.today{background:rgba(var(--accent-primary),.05);background:var(--bg-card-hover);box-shadow:inset 0 0 0 1px var(--accent-primary)}.calendar-cell-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.day-number{font-size:.85rem;color:var(--text-muted)}.calendar-cell.today .day-number{color:var(--accent-primary);font-weight:700}.add-event-btn{background:#0ea5e91a;border:none;border-radius:4px;padding:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--accent-primary);opacity:0;transition:all .2s ease}.calendar-cell:hover .add-event-btn{opacity:1}.add-event-btn:hover{background:#0ea5e933;transform:scale(1.1)}.calendar-task{font-size:.75rem;padding:4px 6px;border-radius:4px;background:var(--accent-glow);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-left:3px solid var(--accent-primary)}.deadline-day{background:linear-gradient(135deg,var(--bg-card) 0%,rgba(255,85,85,.05) 100%)!important;border:2px dashed rgba(255,85,85,.3)!important}.deadline-badge{background:#f55;color:#fff;font-size:.65rem;padding:2px 6px;border-radius:4px;display:flex;align-items:center;gap:4px;box-shadow:0 4px 8px #ff55554d;font-weight:700;margin-bottom:4px}.calendar-events-list{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.calendar-event{font-size:.75rem;padding:6px 8px;border-radius:6px;cursor:pointer;transition:all .2s ease;position:relative;display:flex;justify-content:space-between;align-items:flex-start;gap:4px}.calendar-event:hover{transform:translate(2px);box-shadow:0 2px 8px #0003}.event-content{flex:1;display:flex;flex-direction:column;gap:2px}.event-time{display:flex;align-items:center;gap:3px;font-size:.65rem;color:var(--text-muted);font-weight:600}.event-title{color:var(--text-primary);font-weight:500;line-height:1.2;word-break:break-word}.event-note-indicator{display:inline-flex;align-items:center;color:var(--text-muted);margin-top:2px}.delete-event-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:2px;border-radius:4px;opacity:0;transition:all .2s ease;display:flex;align-items:center;justify-content:center;flex-shrink:0}.calendar-event:hover .delete-event-btn{opacity:1}.delete-event-btn:hover{background:#ef44441a;color:#ef4444}.tl-container{font-size:12px;--space-1: 2px;--space-2: 4px;--space-3: 8px;--space-4: 12px;--space-5: 16px;--space-6: 20px;--space-7: 28px;--space-8: 32px;--space-9: 64px;--space-10: 72px;--radius-0: 2px;--radius-1: 4px;--radius-2: 6px;--radius-3: 9px;--radius-4: 11px;--layer-canvas-hidden: -999999;--layer-canvas-background: 100;--layer-canvas-grid: 150;--layer-canvas-shapes: 300;--layer-canvas-overlays: 500;--layer-canvas-blocker: 10000;--layer-overlays-collaborator-scribble: 10;--layer-overlays-collaborator-brush: 20;--layer-overlays-collaborator-shape-indicator: 30;--layer-overlays-user-scribble: 40;--layer-overlays-user-brush: 50;--layer-overlays-user-indicator-selected: 60;--layer-overlays-user-indicator-hovered: 70;--layer-overlays-user-handles: 80;--layer-overlays-user-snapline: 90;--layer-overlays-selection-fg: 100;--layer-overlays-user-indicator-hint: 110;--layer-overlays-collaborator-cursor-hint: 120;--layer-overlays-collaborator-cursor: 130;--layer-text-container: 1;--layer-text-content: 3;--layer-text-editor: 4;--layer-error-overlay: 1;--layer-error-canvas: 2;--layer-error-canvas-after: 3;--layer-error-content: 4;--tl-zoom: 1;--tl-cursor-none: none;--tl-cursor-default: url("data:image/svg+xml,<svg height='32' width='32' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg' style='color: black;'><defs><filter id='shadow' y='-40%' x='-40%' width='180px' height='180%' color-interpolation-filters='sRGB'><feDropShadow dx='1' dy='1' stdDeviation='1.2' flood-opacity='.5'/></filter></defs><g fill='none' transform='rotate(0 16 16)' filter='url(%23shadow)'><path d='m12 24.4219v-16.015l11.591 11.619h-6.781l-.411.124z' fill='white'/><path d='m21.0845 25.0962-3.605 1.535-4.682-11.089 3.686-1.553z' fill='white'/><path d='m19.751 24.4155-1.844.774-3.1-7.374 1.841-.775z' fill='black'/><path d='m13 10.814v11.188l2.969-2.866.428-.139h4.768z' fill='black'/></g></svg>") 12 8, default;--tl-cursor-pointer: url("data:image/svg+xml,<svg height='32' width='32' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg' style='color: black;'><defs><filter id='shadow' y='-40%' x='-40%' width='180px' height='180%' color-interpolation-filters='sRGB'><feDropShadow dx='1' dy='1' stdDeviation='1.2' flood-opacity='.5'/></filter></defs><g fill='none' transform='rotate(0 16 16)' filter='url(%23shadow)'><path d='m13.3315 21.3799c-.284-.359-.629-1.093-1.243-1.984-.348-.504-1.211-1.453-1.468-1.935-.223-.426-.199-.617-.146-.97.094-.628.738-1.117 1.425-1.051.519.049.959.392 1.355.716.239.195.533.574.71.788.163.196.203.277.377.509.23.307.302.459.214.121-.071-.496-.187-1.343-.355-2.092-.128-.568-.159-.657-.281-1.093-.129-.464-.195-.789-.316-1.281-.084-.348-.235-1.059-.276-1.459-.057-.547-.087-1.439.264-1.849.275-.321.906-.418 1.297-.22.512.259.803 1.003.936 1.3.239.534.387 1.151.516 1.961.164 1.031.466 2.462.476 2.763.024-.369-.068-1.146-.004-1.5.058-.321.328-.694.666-.795.286-.085.621-.116.916-.055.313.064.643.288.766.499.362.624.369 1.899.384 1.831.086-.376.071-1.229.284-1.584.14-.234.497-.445.687-.479.294-.052.655-.068.964-.008.249.049.586.345.677.487.218.344.342 1.317.379 1.658.015.141.074-.392.293-.736.406-.639 1.843-.763 1.898.639.025.654.02.624.02 1.064 0 .517-.012.828-.04 1.202-.031.4-.117 1.304-.242 1.742-.086.301-.371.978-.652 1.384 0 0-1.074 1.25-1.191 1.813-.118.562-.079.566-.102.965-.023.398.121.922.121.922s-.802.104-1.234.035c-.391-.063-.875-.841-1-1.079-.172-.328-.539-.265-.682-.023-.225.383-.709 1.07-1.051 1.113-.668.084-2.054.031-3.139.02 0 0 .185-1.011-.227-1.358-.305-.259-.83-.784-1.144-1.06z' fill='white'/><g stroke='black' stroke-linecap='round' stroke-width='.75'><path d='m13.3315 21.3799c-.284-.359-.629-1.093-1.243-1.984-.348-.504-1.211-1.453-1.468-1.935-.223-.426-.199-.617-.146-.97.094-.628.738-1.117 1.425-1.051.519.049.959.392 1.355.716.239.195.533.574.71.788.163.196.203.277.377.509.23.307.302.459.214.121-.071-.496-.187-1.343-.355-2.092-.128-.568-.159-.657-.281-1.093-.129-.464-.195-.789-.316-1.281-.084-.348-.235-1.059-.276-1.459-.057-.547-.087-1.439.264-1.849.275-.321.906-.418 1.297-.22.512.259.803 1.003.936 1.3.239.534.387 1.151.516 1.961.164 1.031.466 2.462.476 2.763.024-.369-.068-1.146-.004-1.5.058-.321.328-.694.666-.795.286-.085.621-.116.916-.055.313.064.643.288.766.499.362.624.369 1.899.384 1.831.086-.376.071-1.229.284-1.584.14-.234.497-.445.687-.479.294-.052.655-.068.964-.008.249.049.586.345.677.487.218.344.342 1.317.379 1.658.015.141.074-.392.293-.736.406-.639 1.843-.763 1.898.639.025.654.02.624.02 1.064 0 .517-.012.828-.04 1.202-.031.4-.117 1.304-.242 1.742-.086.301-.371.978-.652 1.384 0 0-1.074 1.25-1.191 1.813-.118.562-.079.566-.102.965-.023.398.121.922.121.922s-.802.104-1.234.035c-.391-.063-.875-.841-1-1.079-.172-.328-.539-.265-.682-.023-.225.383-.709 1.07-1.051 1.113-.668.084-2.054.031-3.139.02 0 0 .185-1.011-.227-1.358-.305-.259-.83-.784-1.144-1.06z' stroke-linejoin='round'/><path d='m21.5664 21.7344v-3.459'/><path d='m19.5508 21.7461-.016-3.473'/><path d='m17.5547 18.3047.021 3.426'/></g></g></svg>") 14 10, pointer;--tl-cursor-cross: url("data:image/svg+xml,<svg height='32' width='32' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg' style='color: black;'><defs><filter id='shadow' y='-40%' x='-40%' width='180px' height='180%' color-interpolation-filters='sRGB'><feDropShadow dx='1' dy='1' stdDeviation='1.2' flood-opacity='.5'/></filter></defs><g fill='none' transform='rotate(0 16 16)' filter='url(%23shadow)'><path d='m25 16h-6.01v-6h-2.98v6h-6.01v3h6.01v6h2.98v-6h6.01z' fill='white'/><path d='m23.9902 17.0103h-6v-6.01h-.98v6.01h-6v.98h6v6.01h.98v-6.01h6z' fill='%23231f1f'/></g></svg>") 16 16, crosshair;--tl-cursor-move: url("data:image/svg+xml,<svg height='32' width='32' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg' style='color: black;'><defs><filter id='shadow' y='-40%' x='-40%' width='180px' height='180%' color-interpolation-filters='sRGB'><feDropShadow dx='1' dy='1' stdDeviation='1.2' flood-opacity='.5'/></filter></defs><g fill='none' transform='rotate(0 16 16)' filter='url(%23shadow)'><path d='m19 14h1v1h-1zm1 6h-1v-1h1zm-5-5h-1v-1h1zm0 5h-1v-1h1zm2-10.987-7.985 7.988 5.222 5.221 2.763 2.763 7.984-7.985z' fill='white'/><g fill='black'><path d='m23.5664 16.9971-2.557-2.809v1.829h-4.009-4.001v-1.829l-2.571 2.809 2.572 2.808-.001-1.808h4.001 4.009l-.001 1.808z'/><path d='m17.9873 17h.013v-4.001l1.807.001-2.807-2.571-2.809 2.57h1.809v4.001h.008v4.002l-1.828-.001 2.807 2.577 2.805-2.576h-1.805z'/></g></g></svg>") 16 16, move;--tl-cursor-grab: url("data:image/svg+xml,<svg height='32' width='32' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg' style='color: black;'><defs><filter id='shadow' y='-40%' x='-40%' width='180px' height='180%' color-interpolation-filters='sRGB'><feDropShadow dx='1' dy='1' stdDeviation='1.2' flood-opacity='.5'/></filter></defs><g fill='none' transform='rotate(0 16 16)' filter='url(%23shadow)'><path d='m13.5557 17.5742c-.098-.375-.196-.847-.406-1.552-.167-.557-.342-.859-.47-1.233-.155-.455-.303-.721-.496-1.181-.139-.329-.364-1.048-.457-1.44-.119-.509.033-.924.244-1.206.253-.339.962-.49 1.357-.351.371.13.744.512.916.788.288.46.357.632.717 1.542.393.992.564 1.918.611 2.231l.085.452c-.001-.04-.043-1.122-.044-1.162-.035-1.029-.06-1.823-.038-2.939.002-.126.064-.587.084-.715.078-.5.305-.8.673-.979.412-.201.926-.215 1.401-.017.423.173.626.55.687 1.022.014.109.094.987.093 1.107-.013 1.025.006 1.641.015 2.174.004.231.003 1.625.017 1.469.061-.656.094-3.189.344-3.942.144-.433.405-.746.794-.929.431-.203 1.113-.07 1.404.243.285.305.446.692.482 1.153.032.405-.019.897-.02 1.245 0 .867-.021 1.324-.037 2.121-.001.038-.015.298.023.182.094-.28.188-.542.266-.745.049-.125.241-.614.359-.859.114-.234.211-.369.415-.688.2-.313.415-.448.668-.561.54-.235 1.109.112 1.301.591.086.215.009.713-.028 1.105-.061.647-.254 1.306-.352 1.648-.128.447-.274 1.235-.34 1.601-.072.394-.234 1.382-.359 1.82-.086.301-.371.978-.652 1.384 0 0-1.074 1.25-1.192 1.812-.117.563-.078.567-.101.965-.024.399.121.923.121.923s-.802.104-1.234.034c-.391-.062-.875-.841-1-1.078-.172-.328-.539-.265-.682-.023-.225.383-.709 1.07-1.051 1.113-.668.084-2.054.03-3.139.02 0 0 .185-1.011-.227-1.358-.305-.26-.83-.784-1.144-1.06l-.832-.921c-.284-.36-.629-1.093-1.243-1.985-.348-.504-1.027-1.085-1.284-1.579-.223-.425-.331-.954-.19-1.325.225-.594.675-.897 1.362-.832.519.05.848.206 1.238.537.225.19.573.534.75.748.163.195.203.276.377.509.23.307.302.459.214.121' fill='white'/><g stroke='black' stroke-linecap='round' stroke-width='.75'><path d='m13.5557 17.5742c-.098-.375-.196-.847-.406-1.552-.167-.557-.342-.859-.47-1.233-.155-.455-.303-.721-.496-1.181-.139-.329-.364-1.048-.457-1.44-.119-.509.033-.924.244-1.206.253-.339.962-.49 1.357-.351.371.13.744.512.916.788.288.46.357.632.717 1.542.393.992.564 1.918.611 2.231l.085.452c-.001-.04-.043-1.122-.044-1.162-.035-1.029-.06-1.823-.038-2.939.002-.126.064-.587.084-.715.078-.5.305-.8.673-.979.412-.201.926-.215 1.401-.017.423.173.626.55.687 1.022.014.109.094.987.093 1.107-.013 1.025.006 1.641.015 2.174.004.231.003 1.625.017 1.469.061-.656.094-3.189.344-3.942.144-.433.405-.746.794-.929.431-.203 1.113-.07 1.404.243.285.305.446.692.482 1.153.032.405-.019.897-.02 1.245 0 .867-.021 1.324-.037 2.121-.001.038-.015.298.023.182.094-.28.188-.542.266-.745.049-.125.241-.614.359-.859.114-.234.211-.369.415-.688.2-.313.415-.448.668-.561.54-.235 1.109.112 1.301.591.086.215.009.713-.028 1.105-.061.647-.254 1.306-.352 1.648-.128.447-.274 1.235-.34 1.601-.072.394-.234 1.382-.359 1.82-.086.301-.371.978-.652 1.384 0 0-1.074 1.25-1.192 1.812-.117.563-.078.567-.101.965-.024.399.121.923.121.923s-.802.104-1.234.034c-.391-.062-.875-.841-1-1.078-.172-.328-.539-.265-.682-.023-.225.383-.709 1.07-1.051 1.113-.668.084-2.054.03-3.139.02 0 0 .185-1.011-.227-1.358-.305-.26-.83-.784-1.144-1.06l-.832-.921c-.284-.36-.629-1.093-1.243-1.985-.348-.504-1.027-1.085-1.284-1.579-.223-.425-.331-.954-.19-1.325.225-.594.675-.897 1.362-.832.519.05.848.206 1.238.537.225.19.573.534.75.748.163.195.203.276.377.509.23.307.302.459.214.121' stroke-linejoin='round'/><path d='m20.5664 21.7344v-3.459'/><path d='m18.5508 21.7461-.016-3.473'/><path d='m16.5547 18.3047.021 3.426'/></g></g></svg>") 16 16, grab;--tl-cursor-grabbing: url("data:image/svg+xml,<svg height='32' width='32' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg' style='color: black;'><defs><filter id='shadow' y='-40%' x='-40%' width='180px' height='180%' color-interpolation-filters='sRGB'><feDropShadow dx='1' dy='1' stdDeviation='1.2' flood-opacity='.5'/></filter></defs><g fill='none' transform='rotate(0 16 16)' filter='url(%23shadow)'><path d='m13.5732 12.0361c.48-.178 1.427-.069 1.677.473.213.462.396 1.241.406 1.075.024-.369-.024-1.167.137-1.584.117-.304.347-.59.686-.691.285-.086.62-.116.916-.055.313.064.642.287.765.499.362.623.368 1.899.385 1.831.064-.272.07-1.229.283-1.584.141-.235.497-.445.687-.479.294-.052.656-.068.964-.008.249.049.586.344.677.487.219.344.342 1.316.379 1.658.016.141.074-.393.293-.736.406-.639 1.844-.763 1.898.639.026.654.02.624.02 1.064 0 .516-.012.828-.04 1.202-.03.399-.116 1.304-.241 1.742-.086.301-.371.978-.653 1.384 0 0-1.074 1.25-1.191 1.812-.117.563-.078.567-.102.965-.023.399.121.923.121.923s-.801.104-1.234.034c-.391-.062-.875-.84-1-1.078-.172-.328-.539-.265-.682-.023-.224.383-.709 1.07-1.05 1.113-.669.084-2.055.03-3.14.02 0 0 .185-1.011-.227-1.358-.305-.26-.83-.784-1.144-1.06l-.832-.921c-.283-.36-1.002-.929-1.243-1.985-.213-.936-.192-1.395.037-1.77.232-.381.67-.589.854-.625.208-.042.692-.039.875.062.223.123.313.159.488.391.23.307.312.456.213.121-.076-.262-.322-.595-.434-.97-.109-.361-.401-.943-.38-1.526.008-.221.103-.771.832-1.042' fill='white'/><g stroke='black' stroke-width='.75'><path d='m13.5732 12.0361c.48-.178 1.427-.069 1.677.473.213.462.396 1.241.406 1.075.024-.369-.024-1.167.137-1.584.117-.304.347-.59.686-.691.285-.086.62-.116.916-.055.313.064.642.287.765.499.362.623.368 1.899.385 1.831.064-.272.07-1.229.283-1.584.141-.235.497-.445.687-.479.294-.052.656-.068.964-.008.249.049.586.344.677.487.219.344.342 1.316.379 1.658.016.141.074-.393.293-.736.406-.639 1.844-.763 1.898.639.026.654.02.624.02 1.064 0 .516-.012.828-.04 1.202-.03.399-.116 1.304-.241 1.742-.086.301-.371.978-.653 1.384 0 0-1.074 1.25-1.191 1.812-.117.563-.078.567-.102.965-.023.399.121.923.121.923s-.801.104-1.234.034c-.391-.062-.875-.84-1-1.078-.172-.328-.539-.265-.682-.023-.224.383-.709 1.07-1.05 1.113-.669.084-2.055.03-3.14.02 0 0 .185-1.011-.227-1.358-.305-.26-.83-.784-1.144-1.06l-.832-.921c-.283-.36-1.002-.929-1.243-1.985-.213-.936-.192-1.395.037-1.77.232-.381.67-.589.854-.625.208-.042.692-.039.875.062.223.123.313.159.488.391.23.307.312.456.213.121-.076-.262-.322-.595-.434-.97-.109-.361-.401-.943-.38-1.526.008-.221.103-.771.832-1.042z' stroke-linejoin='round'/><path d='m20.5664 19.7344v-3.459' stroke-linecap='round'/><path d='m18.5508 19.7461-.016-3.473' stroke-linecap='round'/><path d='m16.5547 16.3047.021 3.426' stroke-linecap='round'/></g></g></svg>") 16 16, grabbing;--tl-cursor-text: url("data:image/svg+xml,<svg height='32' width='32' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg' style='color: black;'><defs><filter id='shadow' y='-40%' x='-40%' width='180px' height='180%' color-interpolation-filters='sRGB'><feDropShadow dx='1' dy='1' stdDeviation='1.2' flood-opacity='.5'/></filter></defs><g fill='none' transform='rotate(0 16 16)' filter='url(%23shadow)'><path fill='white' d='M7.94 0a5.25 5.25 0 0 0-3.47 1.17A5.27 5.27 0 0 0 1 0H0v3h1c1.41 0 1.85.7 2 1v3.94H2v3h1v3c-.13.3-.57 1-2 1H0v3h1a5.27 5.27 0 0 0 3.47-1.17c.98.8 2.21 1.21 3.47 1.17h1v-3h-1c-1.41 0-1.85-.7-2-1v-3H7v-3H6V4c.13-.3.57-1 2-1h1V0H7.94z'/><path fill='black' d='M7.94 2V1a4 4 0 0 0-3.47 1.64A4 4 0 0 0 1 1v1c1.3-.17 2.56.6 3 1.84v5.1H3v1h1v4.16c-.45 1.24-1.7 2-3 1.84v1a4.05 4.05 0 0 0 3.47-1.63 4.05 4.05 0 0 0 3.47 1.63v-1A2.82 2.82 0 0 1 5 14.1V9.93h1v-1H5V3.85A2.81 2.81 0 0 1 7.94 2z'/></g></svg>") 4 10, text;--tl-cursor-zoom-in: url("data:image/svg+xml,<svg height='32' width='32' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg' style='color: black;'><defs><filter id='shadow' y='-40%' x='-40%' width='180px' height='180%' color-interpolation-filters='sRGB'><feDropShadow dx='1' dy='1' stdDeviation='1.2' flood-opacity='.5'/></filter></defs><g fill='none' transform='rotate(0 16 16)' filter='url(%23shadow)'><path d='m20.5 15c0 3.038-2.462 5.5-5.5 5.5s-5.5-2.462-5.5-5.5 2.462-5.5 5.5-5.5 5.5 2.462 5.5 5.5' fill='white'/><path d='m20.5 15c0 3.038-2.462 5.5-5.5 5.5s-5.5-2.462-5.5-5.5 2.462-5.5 5.5-5.5 5.5 2.462 5.5 5.5z' stroke='black'/><g fill='black'><path d='m18 14h-2v-2h-2v2h-2v1.98h2v2.02h2v-2.02h2z'/><path d='m23.5859 25 1.414-1.414-5.449-5.449-1.414 1.414z'/></g></g></svg>") 16 16, zoom-in;--tl-cursor-zoom-out: url("data:image/svg+xml,<svg height='32' width='32' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg' style='color: black;'><defs><filter id='shadow' y='-40%' x='-40%' width='180px' height='180%' color-interpolation-filters='sRGB'><feDropShadow dx='1' dy='1' stdDeviation='1.2' flood-opacity='.5'/></filter></defs><g fill='none' transform='rotate(0 16 16)' filter='url(%23shadow)'><path d='m20.5 15c0 3.038-2.462 5.5-5.5 5.5s-5.5-2.462-5.5-5.5 2.462-5.5 5.5-5.5 5.5 2.462 5.5 5.5' fill='white'/><path d='m20.5 15c0 3.038-2.462 5.5-5.5 5.5s-5.5-2.462-5.5-5.5 2.462-5.5 5.5-5.5 5.5 2.462 5.5 5.5z' stroke='black'/><g fill='black'><path d='m18 16h-5.98v-1.98h5.98z'/><path d='m23.5859 25 1.414-1.414-5.449-5.449-1.414 1.414z'/></g></g></svg>") 16 16, zoom-out;--tl-cursor: var(--tl-cursor-default);--tl-cursor-resize-edge: ew-resize;--tl-cursor-resize-corner: nesw-resize;--tl-cursor-ew-resize: ew-resize;--tl-cursor-ns-resize: ns-resize;--tl-cursor-nesw-resize: nesw-resize;--tl-cursor-nwse-resize: nwse-resize;--tl-cursor-rotate: pointer;--tl-cursor-nwse-rotate: pointer;--tl-cursor-nesw-rotate: pointer;--tl-cursor-senw-rotate: pointer;--tl-cursor-swne-rotate: pointer;--tl-scale: calc(1 / var(--tl-zoom));--tl-font-draw: "tldraw_draw", sans-serif;--tl-font-sans: "tldraw_sans", sans-serif;--tl-font-serif: "tldraw_serif", serif;--tl-font-mono: "tldraw_mono", monospace;--a: calc(min(.5, 1 / var(--tl-zoom))*2px) ;--b: calc(min(.5, 1 / var(--tl-zoom))*-2px) ;--tl-text-outline-reference: 0 var(--b) 0 var(--color-background), 0 var(--a) 0 var(--color-background), var(--b) var(--b) 0 var(--color-background), var(--a) var(--b) 0 var(--color-background), var(--a) var(--a) 0 var(--color-background), var(--b) var(--a) 0 var(--color-background);--tl-text-outline: var(--tl-text-outline-reference);position:relative;inset:0;height:100%;width:100%;overflow:clip}.tl-theme__light{--color-accent: hsl(0, 76%, 60%);--color-background: hsl(210, 20%, 98%);--color-brush-fill: hsl(0, 0%, 56%, 10.2%);--color-brush-stroke: hsl(0, 0%, 56%, 25.1%);--color-grid: hsl(0, 0%, 43%);--color-low: hsl(204, 16%, 94%);--color-low-border: hsl(204, 16%, 92%);--color-culled: hsl(204, 14%, 93%);--color-muted-none: hsl(0, 0%, 0%, 0%);--color-muted-0: hsl(0, 0%, 0%, 2%);--color-muted-1: hsl(0, 0%, 0%, 10%);--color-muted-2: hsl(0, 0%, 0%, 4.3%);--color-hint: hsl(0, 0%, 0%, 5.5%);--color-overlay: hsl(0, 0%, 0%, 20%);--color-divider: hsl(0, 0%, 91%);--color-panel-contrast: hsl(0, 0%, 100%);--color-panel-overlay: hsl(0, 0%, 100%, 82%);--color-panel: hsl(0, 0%, 99%);--color-focus: hsl(214, 100%, 29%);--color-selected: hsl(214, 84%, 56%);--color-selected-contrast: hsl(0, 0%, 100%);--color-selection-fill: hsl(210, 100%, 56%, 24%);--color-selection-stroke: hsl(214, 84%, 56%);--color-text-0: hsl(0, 0%, 11%);--color-text-1: hsl(0, 0%, 18%);--color-text-3: hsl(220, 2%, 65%);--color-text-shadow: hsl(0, 0%, 100%);--color-primary: hsl(214, 84%, 56%);--color-success: hsl(123, 46%, 34%);--color-info: hsl(201, 98%, 41%);--color-warning: hsl(27, 98%, 47%);--color-error: hsl(0, 65%, 51%);--color-warn: hsl(0, 90%, 43%);--color-text: hsl(0, 0%, 0%);--color-laser: hsl(0, 100%, 50%);--shadow-1: 0px 1px 2px hsl(0, 0%, 0%, 25%), 0px 1px 3px hsl(0, 0%, 0%, 9%);--shadow-2: 0px 0px 2px hsl(0, 0%, 0%, 16%), 0px 2px 3px hsl(0, 0%, 0%, 24%), 0px 2px 6px hsl(0, 0%, 0%, .1), inset 0px 0px 0px 1px var(--color-panel-contrast);--shadow-3: 0px 1px 2px hsl(0, 0%, 0%, 28%), 0px 2px 6px hsl(0, 0%, 0%, 14%), inset 0px 0px 0px 1px var(--color-panel-contrast);--shadow-4: 0px 0px 3px hsl(0, 0%, 0%, 19%), 0px 5px 4px hsl(0, 0%, 0%, 16%), 0px 2px 16px hsl(0, 0%, 0%, 6%), inset 0px 0px 0px 1px var(--color-panel-contrast)}.tl-theme__dark{--color-accent: hsl(0, 76%, 60%);--color-background: hsl(240, 5%, 6.5%);--color-brush-fill: hsl(0, 0%, 71%, 5.1%);--color-brush-stroke: hsl(0, 0%, 71%, 25.1%);--color-grid: hsl(0, 0%, 40%);--color-low: hsl(260, 4.5%, 10.5%);--color-low-border: hsl(207, 10%, 10%);--color-culled: hsl(210, 11%, 19%);--color-muted-none: hsl(0, 0%, 100%, 0%);--color-muted-0: hsl(0, 0%, 100%, 2%);--color-muted-1: hsl(0, 0%, 100%, 10%);--color-muted-2: hsl(0, 0%, 100%, 5%);--color-hint: hsl(0, 0%, 100%, 7%);--color-overlay: hsl(0, 0%, 0%, 50%);--color-divider: hsl(240, 9%, 22%);--color-panel-contrast: hsl(245, 12%, 23%);--color-panel: hsl(235, 6.8%, 13.5%);--color-panel-overlay: hsl(210, 10%, 24%, 82%);--color-focus: hsl(217, 76%, 80%);--color-selected: hsl(217, 89%, 61%);--color-selected-contrast: hsl(0, 0%, 100%);--color-selection-fill: hsl(209, 100%, 57%, 20%);--color-selection-stroke: hsl(214, 84%, 56%);--color-text-0: hsl(0, 9%, 94%);--color-text-1: hsl(0, 0%, 85%);--color-text-3: hsl(210, 6%, 45%);--color-text-shadow: hsl(210, 13%, 18%);--color-primary: hsl(214, 84%, 56%);--color-success: hsl(123, 38%, 57%);--color-info: hsl(199, 92%, 56%);--color-warning: hsl(36, 100%, 57%);--color-error: hsl(4, 90%, 58%);--color-warn: hsl(0, 81%, 66%);--color-text: hsl(210, 17%, 98%);--color-laser: hsl(0, 100%, 50%);--shadow-1: 0px 1px 2px hsl(0, 0%, 0%, 16.1%), 0px 1px 3px hsl(0, 0%, 0%, 22%), inset 0px 0px 0px 1px var(--color-panel-contrast);--shadow-2: 0px 1px 3px hsl(0, 0%, 0%, 66.6%), 0px 2px 6px hsl(0, 0%, 0%, 33%), inset 0px 0px 0px 1px var(--color-panel-contrast);--shadow-3: 0px 1px 3px hsl(0, 0%, 0%, 50%), 0px 2px 12px hsl(0, 0%, 0%, 50%), inset 0px 0px 0px 1px var(--color-panel-contrast)}.tl-counter-scaled{transform:scale(var(--tl-scale));transform-origin:top left;width:calc(100% * var(--tl-zoom));height:calc(100% * var(--tl-zoom))}.tl-container,.tl-container *{-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;scrollbar-highlight-color:transparent;-webkit-user-select:none;user-select:none;box-sizing:border-box;outline:none}.tl-container a{-webkit-touch-callout:initial}.tl-container__focused{outline:1px solid var(--color-low)}input,*[contenteditable],*[contenteditable] *{-webkit-user-select:text}.tl-canvas{position:absolute;inset:0;height:100%;width:100%;color:var(--color-text);cursor:var(--tl-cursor);overflow:clip;content-visibility:auto;touch-action:none;contain:strict}.tl-shapes{position:relative;z-index:var(--layer-canvas-shapes)}.tl-overlays{position:absolute;top:0;left:0;height:100%;width:100%;contain:strict;pointer-events:none;z-index:var(--layer-canvas-overlays)}.tl-overlays__item{position:absolute;top:0;left:0;overflow:visible;pointer-events:none;transform-origin:top left}.tl-svg-context{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.tl-background__wrapper{z-index:var(--layer-canvas-background);position:absolute;inset:0;height:100%;width:100%}.tl-background{background-color:var(--color-background);width:100%;height:100%}.tl-grid{position:absolute;inset:0;width:100%;height:100%;touch-action:none;pointer-events:none;z-index:var(--layer-canvas-grid);contain:strict}.tl-grid-dot{fill:var(--color-grid)}.tl-html-layer{position:absolute;top:0;left:0;width:1px;height:1px;contain:layout style size}.tl-brush{stroke-width:calc(var(--tl-scale) * 1px);contain:size layout}.tl-brush__default{stroke:var(--color-brush-stroke);fill:var(--color-brush-fill)}.tl-scribble{stroke-linejoin:round;stroke-linecap:round;pointer-events:none;contain:size layout}.tl-shape{position:absolute;pointer-events:none;overflow:visible;transform-origin:top left;contain:size layout}.tl-svg-container{position:absolute;inset:0;height:100%;width:100%;pointer-events:none;stroke-linecap:round;stroke-linejoin:round;transform-origin:top left;overflow:visible}.tl-html-container{position:absolute;inset:0;height:100%;width:100%;pointer-events:none;stroke-linecap:round;stroke-linejoin:round;transform-origin:top left;color:inherit}.tl-collaborator__scribble{z-index:var(--layer-overlays-collaborator-scribble)}.tl-collaborator__brush{z-index:var(--layer-overlays-collaborator-brush)}.tl-collaborator__shape-indicator{z-index:var(--layer-overlays-collaborator-shape-indicator)}.tl-user-scribble{z-index:var(--layer-overlays-user-scribble)}.tl-user-brush{z-index:var(--layer-overlays-user-brush)}.tl-user-indicator__selected{z-index:var(--layer-overlays-user-indicator-selected)}.tl-user-indicator__hovered{z-index:var(--layer-overlays-user-indicator-hovered)}.tl-user-handles{z-index:var(--layer-overlays-user-handles)}.tl-user-snapline{z-index:var(--layer-overlays-user-snapline)}.tl-selection__fg{pointer-events:none;z-index:var(--layer-overlays-selection-fg)}.tl-user-indicator__hint{z-index:var(--layer-overlays-user-indicator-hint);stroke-width:calc(2.5px * var(--tl-scale))}.tl-collaborator__cursor-hint{z-index:var(--layer-overlays-collaborator-cursor-hint)}.tl-collaborator__cursor{z-index:var(--layer-overlays-collaborator-cursor)}.tl-cursor{overflow:visible}.tl-shape-indicator{transform-origin:top left;fill:none;stroke-width:calc(1.5px * var(--tl-scale));contain:size layout}.tl-selection__bg{position:absolute;top:0;left:0;transform-origin:top left;background-color:transparent;pointer-events:all}.tl-selection__fg__outline{fill:none;pointer-events:none;stroke:var(--color-selection-stroke);stroke-width:calc(1.5px * var(--tl-scale))}.tl-corner-handle{pointer-events:none;stroke:var(--color-selection-stroke);fill:var(--color-background);stroke-width:calc(1.5px * var(--tl-scale))}.tl-text-handle{pointer-events:none;fill:var(--color-selection-stroke)}.tl-corner-crop-handle,.tl-corner-crop-edge-handle{pointer-events:none;fill:none;stroke:var(--color-selection-stroke)}.tl-mobile-rotate__bg{pointer-events:all;cursor:var(--tl-cursor-grab)}.tl-mobile-rotate__fg{pointer-events:none;stroke:var(--color-selection-stroke);fill:var(--color-background);stroke-width:calc(1.5px * var(--tl-scale))}.tl-transparent{fill:transparent;stroke:transparent}.tl-handle{pointer-events:all}.tl-handle__bg{fill:transparent;stroke:transparent;pointer-events:all}.tl-handle__fg{fill:var(--color-selected-contrast);stroke:var(--color-selection-stroke);stroke-width:calc(1.5px * var(--tl-scale));pointer-events:none}.tl-handle__create{opacity:0}.tl-handle__clone>.tl-handle__fg{fill:var(--color-selection-stroke);stroke:none}.tl-handle__bg:active{fill:none}@media(pointer:coarse){.tl-handle__bg:active{fill:var(--color-selection-fill)}.tl-handle__create{opacity:1}}.tl-image,.tl-video{object-fit:cover;background-size:cover;width:100%;height:100%}.tl-video-container,.tl-image-container,.tl-embed-container{width:100%;height:100%;pointer-events:all;display:flex;justify-content:center;align-items:center}.tl-image__tg{--scale: min(2, var(--tl-scale)) ;position:absolute;top:calc(var(--scale) * 8px);right:calc(var(--scale) * 8px);font-size:10px;transform-origin:top right;background-color:var(--color-background);padding:2px 4px;border-radius:var(--radius-1)}.tl-flip-x{transform:scaleX(-1)}.tl-flip-y{transform:scaleY(-1)}.tl-flip-xy{transform:scale(-1)}.tl-collaborator-cursor{position:absolute}.tl-nametag{top:16px;left:13px;width:fit-content;height:fit-content;max-width:120px;padding:3px 6px;white-space:nowrap;position:absolute;overflow:hidden;text-overflow:ellipsis;font-size:12px;font-family:var(--font-body);border-radius:var(--radius-2);color:var(--color-selected-contrast)}.tl-nametag-title{top:-2px;left:13px;width:fit-content;height:fit-content;padding:0 6px;max-width:120px;white-space:nowrap;position:absolute;overflow:hidden;text-overflow:ellipsis;font-size:12px;font-family:var(--font-body);text-shadow:var(--tl-text-outline);color:var(--color-selected-contrast)}.tl-nametag-chat{top:16px;left:13px;width:fit-content;height:fit-content;color:var(--color-selected-contrast);white-space:nowrap;position:absolute;padding:3px 6px;font-size:12px;font-family:var(--font-body);opacity:1;border-radius:var(--radius-2)}.tl-cursor-chat{position:absolute;color:var(--color-selected-contrast);white-space:nowrap;padding:3px 6px;font-size:12px;font-family:var(--font-body);pointer-events:none;z-index:var(--layer-cursor);margin-top:16px;margin-left:13px;opacity:1;border:none;-webkit-user-select:text;user-select:text;border-radius:var(--radius-2)}.tl-cursor-chat .tl-cursor-chat__bubble{padding-right:12px}.tl-cursor-chat::selection{background:var(--color-selected);color:var(--color-selected-contrast);text-shadow:none}.tl-cursor-chat-fade{opacity:.0001;transition:opacity 5s ease-in-out}.tl-cursor-chat::placeholder{color:var(--color-selected-contrast);opacity:.7}@keyframes spinner{to{transform:rotate(360deg)}}.tl-text-shape-label{position:relative;font-weight:400;min-width:1px;padding:0;margin:0;border:none;width:fit-content;height:fit-content;font-variant:normal;font-style:normal;pointer-events:all;white-space:pre-wrap;overflow-wrap:break-word;text-shadow:var(--tl-text-outline)}.tl-text-wrapper[data-font=draw]{font-family:var(--tl-font-draw)}.tl-text-wrapper[data-font=sans]{font-family:var(--tl-font-sans)}.tl-text-wrapper[data-font=serif]{font-family:var(--tl-font-serif)}.tl-text-wrapper[data-font=mono]{font-family:var(--tl-font-mono)}.tl-text-wrapper[data-align=start],.tl-text-wrapper[data-align=start-legacy]{text-align:left}.tl-text-wrapper[data-align=middle],.tl-text-wrapper[data-align=middle-legacy]{text-align:center}.tl-text-wrapper[data-align=end],.tl-text-wrapper[data-align=end-legacy]{text-align:right}.tl-text-wrapper[data-isediting=true] .tl-text-content{opacity:0}.tl-text{margin:0;padding:0;appearance:auto;background:none;border-image:none;border:0px;caret-color:var(--color-text);color:inherit;column-count:initial!important;display:inline-block;font-family:inherit;font-feature-settings:normal;font-kerning:auto;font-optical-sizing:auto;font-size:inherit;font-stretch:100%;font-style:inherit;font-variant:inherit;font-variation-settings:normal;font-weight:inherit;letter-spacing:inherit;line-height:inherit;outline:none;overflow-wrap:break-word;text-align:inherit;text-indent:0px;text-rendering:auto;text-shadow:inherit;text-transform:none;white-space:pre-wrap;word-spacing:0px;word-wrap:break-word;writing-mode:horizontal-tb!important}.tl-text-measure{position:absolute;z-index:var(--layer-canvas-hidden);top:0;left:0;opacity:0;width:max-content;box-sizing:border-box;pointer-events:none;line-break:normal;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word;resize:none;border:none;user-select:none;contain:style paint;-webkit-user-select:none}.tl-text-input,.tl-text-content{position:absolute;inset:0;height:100%;width:100%;min-width:1px;min-height:1px;overflow:visible;outline:none}.tl-text-content__wrapper{position:relative;width:fit-content;height:fit-content;display:flex;align-items:center;justify-content:center;pointer-events:none;min-height:auto}.tl-text-content{pointer-events:none}.tl-text-input{resize:none;user-select:all;-webkit-user-select:text;overflow:hidden;cursor:var(--tl-cursor-text)}.tl-text-wrapper[data-isediting=false] .tl-text-input,.tl-arrow-label[data-isediting=false] .tl-text-input{opacity:0;cursor:var(--tl-cursor-default)}.tl-text-input::selection{background:var(--color-selected);color:var(--color-selected-contrast);text-shadow:none}.tl-snap-indicator,.tl-snap-point{stroke:var(--color-accent);stroke-width:calc(1px * var(--tl-scale));fill:none}.tl-group{stroke:var(--color-text);stroke-width:calc(1px * var(--tl-scale));opacity:.5}.tl-bookmark__container{width:100%;height:100%;position:relative;border:1px solid var(--color-panel-contrast);background-color:var(--color-panel);border-radius:var(--radius-2);display:flex;flex-direction:column;overflow:hidden}.tl-bookmark__image_container{flex:1 1 100%;overflow:hidden;border-top-left-radius:var(--radius-1);border-top-right-radius:var(--radius-1);width:100%;height:100%;display:flex;justify-content:flex-end;align-items:flex-start}.tl-bookmark__image_container>.tl-hyperlink-button:after{background-color:var(--color-panel)}.tl-bookmark__placeholder{width:100%;height:100%;background-color:var(--color-muted-2);border-bottom:1px solid var(--color-muted-2)}.tl-bookmark__image{width:100%;height:100%;object-fit:cover;object-position:center;border-bottom:1px solid var(--color-muted-2)}.tl-bookmark__copy_container{background-color:var(--color-muted);padding:var(--space-4);pointer-events:all;display:flex;flex-direction:column;justify-content:space-between;flex:1}.tl-bookmark__heading,.tl-bookmark__description,.tl-bookmark__link{margin:0;width:100%;font-family:inherit}.tl-bookmark__heading{font-size:16px;line-height:1.5;font-weight:700;padding-bottom:var(--space-2);overflow:hidden;max-height:48px;-webkit-box-orient:vertical;-webkit-line-clamp:2;text-overflow:ellipsis;display:-webkit-box}.tl-bookmark__description{font-size:12px;line-height:1.5;overflow:hidden;max-height:54px;-webkit-box-orient:vertical;-webkit-line-clamp:3;text-overflow:ellipsis;display:-webkit-box;color:var(--color-text-2);margin:var(--space-2) 0px}.tl-bookmark__heading+.tl-bookmark__link,.tl-bookmark__description+.tl-bookmark__link{margin-top:var(--space-3)}.tl-bookmark__link{font-size:12px;pointer-events:all;display:flex;color:var(--color-text-2);align-items:center;cursor:var(--tl-cursor-pointer);width:fit-content;max-width:100%}.tl-bookmark__link>span{flex-shrink:0px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tl-bookmark__link>.tl-hyperlink__icon{margin-right:8px;flex-shrink:0}.tl-bookmark__link>.tl-bookmark__favicon{margin-right:8px;width:16px;height:16px;flex-shrink:0}.tl-hyperlink-button{background:none;margin:0;position:absolute;top:0;right:0;height:44px;width:44px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:400;color:var(--color-text-1);padding:13px;cursor:var(--tl-cursor-pointer);border:none;outline:none;pointer-events:all}.tl-hyperlink-button:after{content:"";z-index:-1;position:absolute;right:6px;bottom:6px;display:block;width:calc(100% - 12px);height:calc(100% - 12px);border-radius:var(--radius-1);background-color:var(--color-background);pointer-events:none}.tl-hyperlink-button:focus-visible{color:var(--color-selected)}.tl-hyperlink__icon{width:16px;height:16px;background-color:currentColor;pointer-events:none}.tl-hyperlink-button__hidden{display:none}.tl-text-label{display:flex;justify-content:center;align-items:center;color:var(--color-text);text-shadow:var(--tl-text-outline);line-height:inherit;position:absolute;inset:0;height:100%;width:100%}.tl-text-label[data-hastext=false][data-isediting=false]>.tl-text-label__inner{width:40px;height:40px}.tl-text-label[data-hastext=true][data-isediting=false] .tl-text-content{pointer-events:all}.tl-text-wrapper .tl-text-content{pointer-events:all;z-index:var(--layer-text-content)}.tl-text-label__inner>.tl-text-content{position:relative;top:0;left:0;padding:inherit;height:fit-content;width:fit-content;border-radius:var(--radius-1);max-width:100%}.tl-text-label__inner>.tl-text-input{position:absolute;inset:0;height:100%;width:100%;padding:inherit}.tl-text-wrapper[data-isselected=true] .tl-text-input{z-index:var(--layer-text-editor);pointer-events:all}.tl-canvas:is([data-iseditinganything=true],[data-isselectinganything=true]) .tl-shape:not([data-shape-type=arrow],[data-shape-type=draw],[data-shape-type=line],[data-shape-type=highlight],[data-shape-is-filled=false]){pointer-events:all}.tl-text-label[data-textwrap=true]>.tl-text-label__inner{max-width:100%}.tl-text-label[data-isediting=true]{background-color:transparent;min-height:auto}.tl-text-label[data-isediting=true] p{opacity:0}.tl-arrow-hint{stroke:var(--color-text-1);fill:none;stroke-linecap:round;overflow:visible}.tl-arrow-label{position:absolute;top:-1px;left:-1px;width:2px;height:2px;padding:0;display:flex;justify-content:center;align-items:center;text-align:center;color:var(--color-text);text-shadow:var(--tl-text-outline)}.tl-arrow-label[data-isediting=true] p{opacity:0}.tl-arrow-label[data-isediting=true]>.tl-arrow-label__inner{background-color:var(--color-background)}.tl-arrow-label__inner{border-radius:var(--radius-1);box-sizing:content-box;position:relative;height:max-content;width:max-content;pointer-events:none;display:flex;justify-content:center;align-items:center}.tl-arrow-label .tl-arrow{position:relative;height:max-content;padding:inherit;overflow:visible}.tl-arrow-label textarea{padding:inherit;min-width:4px}.tl-note__container{position:relative;width:100%;height:100%;pointer-events:all;opacity:1;z-index:var(--layer-text-container);border-radius:1px}.tl-note__container>.tl-text-label{text-shadow:none;color:currentColor}.tl-loading{background-color:var(--color-background);color:var(--color-text-1);height:100%;width:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:var(--space-2);font-size:14px;font-weight:500;opacity:0;animation:fade-in .2s ease-in-out forwards;animation-delay:.2s}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.tl-frame__body{stroke-width:calc(1px * var(--tl-scale))}.tl-frame__creating{stroke:var(--color-selected);fill:none}.tl-frame-heading{display:flex;align-items:center;position:absolute;transform-origin:0% 100%;overflow:hidden;max-width:100%;min-width:32px;height:auto;font-size:12px;padding-bottom:4px;pointer-events:all}.tl-frame-heading-hit-area{pointer-events:all;transform-origin:0% 100%;display:flex;height:100%;width:100%;align-items:center;border-radius:var(--radius-1);background-color:var(--color-background)}.tl-frame-label{pointer-events:all;overflow:hidden;text-overflow:ellipsis;padding:var(--space-3) var(--space-3);position:relative;font-size:inherit;white-space:pre;border:1px solid transparent}.tl-frame-label__editing{color:transparent;white-space:pre;width:auto;overflow:visible;background-color:var(--color-panel);border-radius:var(--radius-1);border-color:var(--color-selected)}.tl-frame-name-input{position:absolute;border:none;background:none;outline:none;padding:var(--space-3) var(--space-3);inset:0;height:100%;font-size:inherit;font-family:inherit;font-weight:inherit;width:100%;color:var(--color-text-1);border-radius:var(--radius-1);user-select:all;-webkit-user-select:text;white-space:pre;cursor:var(--tl-cursor-text)}@media(max-width:600px){.tl-frame-heading{font-size:16px}}.tl-embed{border:none;border-radius:var(--radius-2)}.tl-shape-error-boundary{width:100%;height:100%;background-color:var(--color-muted-1);border-width:calc(1px * var(--tl-scale));border-color:var(--color-muted-1);border-style:solid;border-radius:calc(var(--radius-1) * var(--tl-scale));display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:left;position:relative;pointer-events:all;overflow:hidden;padding:var(--space-2)}.tl-shape-error-boundary:before{transform:scale(var(--tl-scale));content:"Error";font-size:12px;font-family:inherit;color:var(--color-text-0)}.tl-error-boundary{width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:var(--space-4);background-color:var(--color-background);color:var(--color-text-1);position:absolute}.tl-error-boundary__overlay{position:absolute;inset:0;height:100%;width:100%;z-index:var(--layer-error-overlay);background-color:var(--color-overlay)}.tl-error-boundary__content *{user-select:all;-webkit-user-select:text;pointer-events:all}.tl-error-boundary__canvas{pointer-events:none;position:absolute;inset:0;height:100%;width:100%;z-index:var(--layer-error-canvas)}.tl-error-boundary__canvas:after{content:" ";display:block;position:absolute;inset:0;height:100%;width:100%;z-index:var(--layer-error-canvas-after);pointer-events:all}.tl-error-boundary__content{width:fit-content;height:fit-content;max-width:100%;width:400px;max-height:100%;background-color:var(--color-panel);padding:16px;border-radius:16px;box-shadow:var(--shadow-2);font-size:14px;font-weight:400;display:flex;flex-direction:column;overflow:auto;z-index:var(--layer-error-content);gap:12px}.tl-error-boundary__content__expanded{width:600px}.tl-error-boundary__content h2{font-size:16px;margin:0;font-weight:500}.tl-error-boundary__content h4{border:1px solid var(--color-low-border);margin:-6px 0 0;padding:var(--space-5);border-radius:var(--radius-2);font-weight:400}.tl-error-boundary__content p{line-height:1.5;margin:0}.tl-error-boundary__content pre{background-color:var(--color-muted-2);margin-top:0;padding:var(--space-5);border-radius:var(--radius-2);overflow:auto;font-size:12px;max-height:320px}.tl-error-boundary__content button{background:none;border:none;font-family:inherit;font-size:14px;font-weight:500;padding:var(--space-4);border-radius:var(--radius-3);cursor:var(--tl-cursor-pointer);color:inherit;background-color:transparent}.tl-error-boundary__content a{color:var(--color-text-1);font-weight:500;text-decoration:none}.tl-error-boundary__content__error{position:relative;margin:-6px 0 0}.tl-error-boundary__content__error button{position:absolute;top:var(--space-2);right:var(--space-2);font-size:12px;padding:var(--space-2) var(--space-3);background-color:var(--color-panel);border-radius:var(--radius-1)}.tl-error-boundary__content__actions{display:flex;justify-content:space-between;gap:var(--space-4);margin:0 0 0 -4px}.tl-error-boundary__content__actions__group{display:flex;gap:var(--space-4)}.tl-error-boundary__content .tl-error-boundary__reset{color:var(--color-warn)}.tl-error-boundary__content .tl-error-boundary__refresh{background-color:var(--color-primary);color:var(--color-selected-contrast)}.tl-hidden{opacity:0;pointer-events:none}.debug__ui-logger{position:absolute;top:62px;left:16px;color:#555;font-size:12px;font-family:monospace}.tl-hit-test-blocker{position:absolute;z-index:var(--layer-canvas-blocker);inset:0;width:100%;height:100%;pointer-events:all}.tl-hit-test-blocker__hidden{display:none}@media(hover:hover){.tl-handle__create:hover{opacity:1}.tl-handle__bg:hover{cursor:var(--tl-cursor-grab);fill:var(--color-selection-fill)}.tl-bookmark__link:hover,.tl-hyperlink-button:hover{color:var(--color-selected)}.tl-error-boundary__content button:hover{background-color:var(--color-low)}.tl-error-boundary__content a:hover{color:var(--color-text-1)}.tl-error-boundary__content .tl-error-boundary__refresh:hover{background-color:var(--color-primary);opacity:.9}.tl-canvas[data-iseditinganything=true] .tl-text-wrapper:hover .tl-text-input{z-index:var(--layer-text-editor);pointer-events:all}}.tl-container{--layer-above: 1;--layer-focused-input: 10;--layer-panels: 300;--layer-menus: 400;--layer-canvas-overlays: 500;--layer-toasts: 650;--layer-cursor: 700;--layer-header-footer: 999;--layer-following-indicator: 1000}.tlui-button{position:relative;height:40px;min-width:40px;padding:0 12px;display:flex;align-items:center;justify-content:center;background-color:transparent;border:transparent;color:currentColor;cursor:pointer;pointer-events:all;font-weight:inherit;font-family:inherit;line-height:inherit;text-rendering:optimizeLegibility;font-size:12px;gap:0px;color:var(--color-text-1)}.tlui-button:disabled{color:var(--color-text-3);text-shadow:none;cursor:default}.tlui-button:disabled .tlui-kbd{color:var(--color-text-3)}.tlui-button>*{position:relative;z-index:var(--layer-above)}.tlui-button__label{flex-grow:2;text-align:left}.tlui-button:focus-visible:not(:hover){outline:1px solid var(--color-selected);outline-offset:-4px;border-radius:var(--radius-3)}.tlui-button:after{display:block;content:"";position:absolute;inset:4px;background-color:transparent;border-radius:var(--radius-2)}.tlui-button[aria-expanded=true]:after{background-color:var(--color-muted-0);opacity:1}.tlui-button__icon+.tlui-button__label{margin-left:var(--space-2)}.tlui-button[data-state=hinted]:after{background-color:var(--color-hint);opacity:1}.tlui-button[data-state=hinted]:not(:disabled,:focus-visible):active:after{background:var(--color-hint);opacity:1}@media(hover:hover){.tlui-button:after{background-color:var(--color-muted-2);opacity:0}.tlui-button:not(:disabled):hover:after{opacity:1}}.tlui-button__low{border-radius:var(--radius-3);background-color:var(--color-low)}@media(hover:hover){.tlui-button__low:after{background-color:var(--color-muted-2)}}.tlui-button__primary{color:var(--color-primary)}.tlui-button__danger{color:var(--color-warn);text-shadow:none}@media(hover:hover){.tlui-button__primary:not(:disabled,:focus-visible):hover{color:var(--color-primary)}.tlui-button__danger:not(:disabled,:focus-visible):hover{color:var(--color-warn);text-shadow:none}}.tlui-button__panel{position:relative}.tlui-button__menu{height:40px;min-height:40px;width:100%;gap:8px;margin:-4px 0}.tlui-button__menu:nth-child(1){margin-top:0}.tlui-button__menu:nth-last-child(1){margin-bottom:0}@media(hover:hover){.tlui-button__menu:after{inset:4px;border-radius:var(--radius-2)}}.tlui-button__checkbox{padding-left:8px}.tlui-button__checkbox__indicator{width:15px;height:15px}.tlui-toolbar__lock-button{position:absolute;top:4px;right:0;pointer-events:all;height:40px;width:40px;min-width:0px;border-radius:var(--radius-2)}.tlui-toolbar__lock-button:after{inset:4px}.tlui-button__tool{position:relative;height:48px;width:48px;margin-left:-2px;margin-right:-2px}.tlui-button__tool:nth-of-type(1){margin-left:0}.tlui-button__tool:nth-last-of-type(1){margin-right:0}@media(hover:hover){.tlui-button__tool:after{inset:4px;border-radius:8px}.tlui-button__tool[aria-checked=true]:not(:disabled,:focus-visible):hover{color:var(--color-selected-contrast)}}.tlui-button__tool[aria-checked=true]{color:var(--color-selected-contrast)}.tlui-button__tool[aria-checked=true]:not(:disabled,:focus-visible):active{color:var(--color-selected-contrast)}.tlui-button__tool[aria-checked=true]:not(:disabled):after{background:var(--color-selected);opacity:1}.tlui-layout__mobile .tlui-button__tool{height:48px;width:44px}.tlui-layout__mobile .tlui-button__tool>.tlui-icon{height:16px;width:16px}.tlui-button__help{height:32px;width:32px;padding:0;min-width:32px;border-radius:100%;background-color:var(--color-low);border:1px solid var(--color-low-border)}@media(hover:hover){.tlui-button__help:after{background-color:var(--color-muted-2);border-radius:100%;inset:4px}}.tlui-buttons__horizontal{display:flex;flex-direction:row}.tlui-buttons__horizontal>*{margin-left:-2px;margin-right:-2px}.tlui-buttons__horizontal>*:nth-child(1){margin-left:0}.tlui-buttons__horizontal>*:nth-last-child(1){margin-right:0}.tlui-buttons__horizontal>*:only-child{width:56px}.tlui-buttons__grid{display:grid;grid-template-columns:repeat(4,auto);grid-auto-flow:row;overflow:hidden}.tlui-buttons__grid>.tlui-button{margin:-2px}.tlui-buttons__grid>.tlui-button:nth-of-type(4n){margin-right:0}.tlui-buttons__grid>.tlui-button:nth-of-type(4n-3){margin-left:0}.tlui-buttons__grid>.tlui-button:nth-of-type(-n+4){margin-top:0}.tlui-buttons__grid>.tlui-button:nth-last-of-type(-n+4){margin-bottom:0}.tlui-zoom-menu__button__pct{width:60px;min-width:60px;text-align:center}.tlui-layout{position:relative;display:grid;grid-template-columns:1fr;grid-template-rows:minmax(0px,1fr) auto;grid-auto-rows:auto;height:100%;max-height:100%;overflow:clip;pointer-events:none;-webkit-user-select:none;user-select:none;contain:strict;z-index:var(--layer-panels);-webkit-transform:translate3d(0,0,0);--sab: env(safe-area-inset-bottom);font-weight:500;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-smooth:antialiased;text-rendering:optimizeLegibility}.tlui-layout__top{grid-column:1;grid-row:1;display:flex;min-width:0px;justify-content:space-between}.tlui-layout__top__left{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;width:100%;height:100%;flex:0 1 0}.tlui-layout__top__right{display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-start;height:100%;flex:0 0 auto;min-width:0px}.scrollable,.scrollable *{pointer-events:all;touch-action:auto;overscroll-behavior:none}.tlui-helper-buttons{position:relative;display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;width:min-content;gap:var(--space-3);margin:var(--space-2) var(--space-3);white-space:nowrap;pointer-events:none;z-index:var(--layer-panels)}.tlui-icon{flex-shrink:0;width:18px;height:18px;background-color:currentColor}.tlui-icon__placeholder{flex-shrink:0;width:18px;height:18px;background-color:transparent}.tlui-icon__small{width:15px;height:15px}.tlui-slider{position:relative;display:flex;align-items:center;-webkit-user-select:none;user-select:none;touch-action:none}.tlui-slider__container{width:100%;padding:0px var(--space-4)}.tlui-slider__track{position:relative;flex-grow:1;height:44px;cursor:pointer}.tlui-slider__track:after{display:block;position:absolute;top:calc(50% - 2px);content:"";height:3px;width:100%;background-color:var(--color-muted-1);border-radius:14px}.tlui-slider__range{position:absolute;top:calc(50% - 2px);left:0;height:3px;background-color:var(--color-selected);border-radius:14px}.tlui-slider__thumb{all:unset;cursor:grab;display:block;width:18px;height:18px;position:relative;top:-1px;background-color:var(--color-panel);border-radius:999px;box-shadow:inset 0 0 0 2px var(--color-text-1)}.tlui-slider__thumb:active{cursor:grabbing;box-shadow:inset 0 0 0 2px var(--color-text-1),var(--shadow-1)}.tlui-slider__thumb:focus-visible{box-shadow:inset 0 0 0 2px var(--color-focus)}.tlui-kbd{font-family:inherit;font-size:11px;line-height:11px;display:grid;justify-items:center;grid-auto-flow:column;grid-template-columns:auto;grid-auto-columns:minmax(1em,auto);align-self:bottom;color:var(--color-text-1);margin-left:var(--space-4)}.tlui-kbd>span{width:100%;text-align:center;display:inline;margin:0;padding:2px;border-radius:2px}.tlui-kbd>span:last-child{padding-right:0}.tlui-kbd:not(:last-child){margin-right:var(--space-2)}.tlui-focus-button{z-index:var(--layer-panels);pointer-events:all}.tlui-popover{position:relative;display:flex;align-content:stretch}.tlui-popover__content{position:relative;max-height:75vh;margin:0;border:none;border-radius:var(--radius-3);background-color:var(--color-panel);box-shadow:var(--shadow-3);z-index:var(--layer-menus);overflow:hidden;overflow-y:auto;touch-action:auto;overscroll-behavior:none;scrollbar-width:none;-ms-overflow-style:none}.tlui-debug-panel{background-color:var(--color-low);width:100%;display:grid;align-items:center;grid-template-columns:1fr auto auto auto;justify-content:space-between;padding-left:var(--space-4);border-top:1px solid var(--color-background);font-size:12px;color:var(--color-text-1);z-index:var(--layer-panels);pointer-events:all}.tlui-debug-panel__current-state{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.tlui-debug-panel__fps{margin-right:8px}.tlui-debug-panel__fps__slow{font-weight:700;color:var(--color-warn)}.tlui-menu-zone{position:relative;z-index:var(--layer-panels);width:fit-content;border-right:2px solid var(--color-background);border-bottom:2px solid var(--color-background);border-bottom-right-radius:var(--radius-4);background-color:var(--color-low)}.tlui-menu-zone *[data-state=open]:after{background:linear-gradient(180deg,rgba(144,144,144,0) 0%,var(--color-muted-2) 100%)}.tlui-style-panel__wrapper{box-shadow:var(--shadow-2);border-radius:var(--radius-3);pointer-events:all;background-color:var(--color-panel);height:fit-content;max-height:100%;margin:4px 8px 8px;touch-action:auto;overscroll-behavior:none;overflow-y:auto;overflow-x:hidden;color:var(--color-text)}.tlui-style-panel__wrapper:only-child{margin-top:8px}.tlui-style-panel{position:relative;z-index:var(--layer-panels);pointer-events:all;width:148px;max-width:148px}.tlui-style-panel::-webkit-scrollbar{display:none}.tlui-style-panel .tlui-button.select{width:100%}.tlui-style-panel__section{display:flex;position:relative;flex-direction:column}.tlui-style-panel__section:nth-of-type(n+2):not(:last-child){border-bottom:1px solid var(--color-divider)}.tlui-style-panel__section:empty{display:none}.tlui-style-panel__section__common:not(:only-child){margin-bottom:7px;border-bottom:1px solid var(--color-divider)}.tlui-style-panel__row{display:flex}.tlui-style-panel__row__extra-button{margin-left:-2px}.tlui-style-panel__double-select-picker{display:flex;grid-template-columns:1fr auto;align-items:center;padding-left:var(--space-4);color:var(--color-text-1);font-size:12px}.tlui-style-panel__double-select-picker-label{text-overflow:ellipsis;overflow:hidden;white-space:nowrap;flex-grow:2;max-width:100%}.tlui-style-panel__section *[data-state=open]:after{background:var(--color-muted-0)}.tlui-input{background:none;margin:0;position:relative;z-index:var(--layer-above);height:40px;max-height:40px;display:flex;align-items:center;justify-content:center;font-family:inherit;font-size:12px;font-weight:inherit;color:var(--color-text-1);padding:var(--space-4);padding-left:0;border:none;outline:none;text-overflow:ellipsis;width:100%;user-select:all;text-rendering:optimizeLegibility;-webkit-user-select:auto!important}.tlui-input__wrapper{width:100%;height:44px;display:flex;align-items:center;gap:var(--space-4);color:var(--color-text)}.tlui-input__wrapper>.tlui-icon{flex-shrink:0}@media(max-width:600px){@supports (-webkit-touch-callout: none){.tlui-input{font-size:16px}}}.tlui-dialog__overlay{position:absolute;top:0;left:0;width:100%;height:100%;z-index:var(--layer-canvas-overlays);background-color:var(--color-overlay);pointer-events:all;animation:fadeIn .12s ease-out;display:grid;place-items:center;overflow-y:auto}.tlui-dialog__content{display:flex;flex-direction:column;position:relative;cursor:default;background-color:var(--color-panel);box-shadow:var(--shadow-3);border-radius:var(--radius-3);font-size:12px;overflow:hidden;min-width:300px;max-width:80%;max-height:80%}.tlui-dialog__header{position:relative;display:flex;align-items:center;flex:0;z-index:var(--layer-header-footer);padding-left:var(--space-4);color:var(--color-text);height:44px}.tlui-dialog__header__title{flex:1;font-weight:inherit;font-size:12px;margin:0;color:var(--color-text-1)}.tlui-dialog__header__close{justify-self:flex-end}.tlui-dialog__body{padding:var(--space-4) var(--space-4);flex:0 1;overflow-y:auto;overflow-x:hidden;color:var(--color-text-1);user-select:all;-webkit-user-select:text}.tlui-dialog__footer{position:relative;z-index:var(--layer-header-footer)}.tlui-dialog__footer__actions{display:flex;align-items:center;justify-content:flex-end}.tlui-dialog__footer__actions>.tlui-button:nth-last-child(n+2){margin-right:-4px}.tlui-toolbar{grid-column:1 / span 3;grid-row:1;display:flex;align-items:center;justify-content:center;flex-grow:2;padding-bottom:calc(var(--space-3) + var(--sab))}.tlui-toolbar__inner{position:relative;width:fit-content;display:flex;gap:var(--space-3);align-items:flex-end}.tlui-toolbar__left{width:fit-content}.tlui-toolbar__extras{position:relative;z-index:var(--layer-above);width:100%;pointer-events:none;top:6px;height:48px}.tlui-toolbar__extras:empty{display:none}.tlui-toolbar__extras__controls{display:flex;position:relative;flex-direction:row;z-index:var(--layer-above);background-color:var(--color-low);border-top-left-radius:var(--radius-4);border-top-right-radius:var(--radius-4);border:2px solid var(--color-background);margin-left:8px;margin-right:0;pointer-events:all;width:fit-content}.tlui-toolbar__tools{display:flex;flex-direction:row;align-items:center;background-color:var(--color-low);border-radius:var(--radius-4);z-index:var(--layer-panels);pointer-events:all;position:relative;background:var(--color-panel);box-shadow:var(--shadow-2)}.tlui-toolbar__tools__list{display:flex;flex-direction:row;align-items:center}.tlui-toolbar__overflow{width:40px}.tlui-layout__mobile .tlui-toolbar__overflow{width:32px;padding:0}.tlui-layout__mobile .tlui-toolbar *[data-state=open]:after{background:linear-gradient(0deg,rgba(144,144,144,0) 0%,var(--color-muted-2) 100%)}.tlui-help-menu{pointer-events:all;position:absolute;bottom:var(--space-2);right:var(--space-2);z-index:var(--layer-panels);border:2px solid var(--color-background);border-radius:100%}.tlui-context-menu__move-to-page__name{max-width:min(300px,35vw);overflow:hidden;text-overflow:ellipsis}.tlui-context-menu__move-to-page__name[data-disabled]{color:var(--color-text-3);pointer-events:none}.tlui-menu:empty{display:none}.tlui-menu{z-index:var(--layer-menus);height:fit-content;width:fit-content;max-height:80vh;border-radius:var(--radius-3);pointer-events:all;touch-action:auto;overflow-y:auto;overscroll-behavior:none;background-color:var(--color-panel);box-shadow:var(--shadow-3)}.tlui-menu::-webkit-scrollbar{display:none}.tlui-menu__arrow{position:relative;top:-1px;fill:var(--color-panel);stroke:var(--color-panel-contrast);stroke-width:1px}.tlui-menu__group{width:100%}.tlui-menu__group:empty{display:none}.tlui-menu__group{border-bottom:1px solid var(--color-divider)}.tlui-menu__group:nth-last-of-type(1){border-bottom:none}.tlui-menu__submenu__trigger[data-state=open]:not(:hover):after{border-radius:var(--radius-1);background:linear-gradient(90deg,rgba(144,144,144,0) 0%,var(--color-muted-2) 100%)}.tlui-menu__submenu__trigger[data-direction=left][data-state=open]:not(:hover):after{border-radius:var(--radius-1);background:linear-gradient(270deg,rgba(144,144,144,0) 0%,var(--color-muted-2) 100%)}.tlui-menu[data-size=large]>.tlui-menu__group{min-width:initial}.tlui-menu[data-size=medium]>.tlui-menu__group{min-width:144px}.tlui-menu[data-size=small]>.tlui-menu__group{min-width:96px}.tlui-menu[data-size=tiny]>.tlui-menu__group{min-width:0px}.tlui-actions-menu{max-height:calc(100vh - 150px)}.tlui-toast__viewport{position:absolute;inset:0;margin:0;display:flex;align-items:flex-end;justify-content:flex-end;flex-direction:column;gap:var(--space-3);pointer-events:none;padding:0px var(--space-3) 64px 0px;z-index:var(--layer-toasts)}.tlui-toast__viewport>*{pointer-events:all}.tlui-toast__icon{padding-top:11px;padding-left:var(--space-4);color:var(--color-text-1)}.tlui-toast__container{min-width:200px;display:flex;flex-direction:row;background-color:var(--color-panel);box-shadow:var(--shadow-2);border-radius:var(--radius-3);font-size:12px}.tlui-toast__container[data-severity=success] .tlui-icon{color:var(--color-success)}.tlui-toast__container[data-severity=info] .tlui-icon{color:var(--color-info)}.tlui-toast__container[data-severity=warning] .tlui-icon{color:var(--color-warning)}.tlui-toast__container[data-severity=error] .tlui-icon{color:var(--color-error)}.tlui-toast__main{flex-grow:2;max-width:280px}.tlui-toast__content{padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.tlui-toast__title{font-weight:700;color:var(--color-text-1);line-height:16px}.tlui-toast__description{color:var(--color-text-1);padding:var(--space-3);margin:0;padding:0}.tlui-toast__icon+.tlui-toast__main>.tlui-toast__actions{padding-left:0}.tlui-toast__actions{display:flex;flex-direction:row;justify-content:flex-start;margin-left:0}.tlui-toast__close{align-self:flex-end;flex-shrink:0}@media(prefers-reduced-motion:no-preference){.tlui-toast__container[data-state=open]{animation:slide-in .2s cubic-bezier(.785,.135,.15,.86)}.tlui-toast__container[data-state=closed]{animation:hide .1s ease-in}.tlui-toast__container[data-swipe=move]{transform:translate(var(--radix-toast-swipe-move-x))}.tlui-toast__container[data-swipe=cancel]{transform:translate(0);transition:transform .2s ease-out}.tlui-toast__container[data-swipe=end]{animation:swipe-out .1s ease-out}}.tlui-layout__bottom{grid-row:2}.tlui-layout__bottom__main{width:100%;position:relative;display:flex;align-items:flex-end;justify-content:center}.tlui-navigation-panel{display:flex;width:min-content;flex-direction:column;z-index:var(--layer-panels);pointer-events:all;position:absolute;left:0;bottom:0}.tlui-navigation-panel:before{content:"";display:block;position:absolute;z-index:-1;inset:-2px -2px 0 0;border-radius:0;border-top:2px solid var(--color-background);border-right:2px solid var(--color-background);border-top-right-radius:var(--radius-4);background-color:var(--color-low)}.tlui-navigation-panel__toggle .tlui-icon{opacity:.24}.tlui-navigation-panel__toggle:active .tlui-icon{opacity:1}@media(hover:hover){.tlui-navigation-panel__toggle:hover .tlui-icon{opacity:1}}.tlui-minimap{width:100%;height:96px;min-height:96px;overflow:hidden;padding:var(--space-3);padding-top:0}.tlui-minimap__canvas{position:relative;width:100%;height:100%}@keyframes hide{0%{opacity:1}to{opacity:0}}@keyframes slide-in{0%{transform:translate(calc(100% + var(--space-3)))}to{transform:translate(0)}}@keyframes swipe-out{0%{transform:translate(var(--radix-toast-swipe-end-x))}to{transform:translate(calc(100% + var(--space-3)))}}.tlui-page-menu__wrapper{position:relative;display:flex;flex-direction:column;width:260px;height:fit-content;max-height:50vh}.tlui-page-menu__trigger{width:128px}.tlui-page-menu__header{display:flex;flex-direction:row;align-items:center;width:100%;height:40px;padding-left:var(--space-4);border-bottom:1px solid var(--color-divider)}.tlui-page-menu__header>.tlui-button:nth-of-type(1){margin-right:-4px}.tlui-page-menu__header__title{color:var(--color-text);font-size:12px;flex-grow:2}.tlui-page-menu__name{flex-grow:2;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tlui-page-menu__list{position:relative;flex-direction:column;max-height:100%;overflow-x:hidden;overflow-y:auto;touch-action:auto}.tlui-page-menu__item{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:0px}.tlui-page-menu__item:nth-of-type(n+2){margin-top:-4px}.tlui-page-menu__item__button{width:100%}.tlui-page-menu__item__button:not(:only-child){flex-grow:2;margin-right:-2px}.tlui-page-menu__item__button>span{display:block;flex-grow:2;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tlui-page-menu__item__button__checkbox{padding-left:35px}.tlui-page-menu__item__button__check{position:absolute;left:0;width:24px;padding-left:10px;display:inline-flex;align-items:center;justify-content:center;color:var(--color-text)}.tlui-page_menu__item__sortable{position:absolute;top:0;left:0;width:100%;height:fit-content;display:flex;flex-direction:row;align-items:center;overflow:hidden;z-index:var(--layer-above)}.tlui-page_menu__item__sortable__title{flex:1}.tlui-page_menu__item__sortable__title>.tlui-input__wrapper{height:100%}.tlui-page_menu__item__sortable:focus-within{z-index:var(--layer-focused-input)}.tlui-page_menu__item__sortable__handle{touch-action:none;width:32px;min-width:0px;height:40px;cursor:grab;color:var(--color-text-3);flex-shrink:0;margin-right:-9px}.tlui-page_menu__item__sortable__handle:active{cursor:grabbing}.tlui-page-menu__item__input{margin-left:12px;height:100%}.tlui-page_menu__item__submenu{pointer-events:all;flex:0;cursor:pointer;display:none;margin:0 0 0 -2px}.tlui-page_menu__item__submenu[data-isediting=true]{display:block;opacity:1}.tlui-page_menu__item__submenu>.tlui-button{opacity:0}@media(any-pointer:coarse){.tlui-page_menu__item__submenu>.tlui-button{opacity:1}}.tlui-page-menu__item__button .tlui-button__icon{margin-right:4px}@media(hover:hover){.tlui-page_menu__item__submenu{display:block}.tlui-page_menu__item__submenu[data-isediting=true]>.tlui-button{opacity:0}.tlui-page_menu__item__submenu>.tlui-button[data-state=open],.tlui-page_menu__item__submenu:hover>.tlui-button,.tlui-page_menu__item__sortable:focus-within>.tlui-page_menu__item__submenu>.tlui-button{opacity:1}}.tlui-edit-link-dialog{display:flex;flex-direction:column;gap:var(--space-4);color:var(--color-text)}.tlui-edit-link-dialog__input{background-color:var(--color-muted-2);flex-grow:2;border-radius:var(--radius-2);padding:0px var(--space-4)}.tlui-embed__spacer{flex-grow:2;min-height:0px;margin-left:calc(-1 * var(--space-4));margin-top:calc(-1 * var(--space-4));pointer-events:none}.tlui-embed-dialog__list{display:flex;flex-direction:column;padding-bottom:var(--space-5)}.tlui-embed-dialog__item__image{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background-size:contain;background-repeat:no-repeat;background-position:center center}.tlui-embed-dialog__enter{display:flex;flex-direction:column;gap:var(--space-4);color:var(--color-text-1)}.tlui-embed-dialog__input{background-color:var(--color-muted-2);flex-grow:2;border-radius:var(--radius-2);padding:0px var(--space-4)}.tlui-embed-dialog__warning{color:var(--color-warn);text-shadow:none}.tlui-embed-dialog__instruction__link{display:flex;gap:var(--space-1);margin-top:var(--space-4)}.tlui-embed-dialog__enter a{color:var(--color-text-1)}.tlui-following-indicator{display:block;position:absolute;inset:0;border-width:2px;border-style:solid;z-index:var(--layer-following-indicator);pointer-events:none}.tlui-offline-indicator{display:flex;flex-direction:row;gap:var(--space-3);color:var(--color-text);background-color:var(--color-low);border:3px solid var(--color-background);padding:0px var(--space-5);height:42px;align-items:center;justify-content:center;border-radius:99px;opacity:0;animation:fade-in;animation-duration:.12s;animation-delay:2s;animation-fill-mode:forwards}.tlui-shortcuts-dialog__header{border-bottom:1px solid var(--color-divider)}.tlui-shortcuts-dialog__body{position:relative;columns:3;column-gap:var(--space-9);pointer-events:all;touch-action:auto;overflow-x:auto}.tlui-shortcuts-dialog__body__tablet{columns:2}.tlui-shortcuts-dialog__body__mobile{columns:1}.tlui-shortcuts-dialog__group{break-inside:avoid-column;padding-bottom:var(--space-6)}.tlui-shortcuts-dialog__group__title{font-size:inherit;font-weight:inherit;margin:0;color:var(--color-text-3);height:32px;display:flex;align-items:center}.tlui-shortcuts-dialog__group__content{display:flex;flex-direction:column;color:var(--color-text-1)}.tlui-shortcuts-dialog__key-pair{display:flex;gap:var(--space-4);align-items:center;justify-content:space-between;height:32px}.tlui-shortcuts-dialog__key-pair__key{flex:1;font-size:12px}.tlui-share-zone{padding:2px 4px 0 0;display:flex;flex-direction:row;justify-content:flex-end;z-index:var(--layer-panels);align-items:center}.tlui-people-menu__avatars-button{display:flex;align-items:center;justify-content:flex-end;background:none;border:none;cursor:pointer;pointer-events:all;border-radius:var(--radius-1);padding-right:1px;height:36px}.tlui-people-menu__avatars{display:flex;flex-direction:row}.tlui-people-menu__avatar{height:28px;width:28px;border:2px solid var(--color-background);background-color:var(--color-low);border-radius:100%;display:flex;align-items:center;justify-content:center;position:relative;font-size:10px;font-weight:700;color:var(--color-selected-contrast);z-index:2}.tlui-people-menu__avatar:nth-of-type(n+2){margin-left:-12px}.tlui-people-menu__avatars-button[data-state=open]{opacity:1}@media(hover:hover){.tlui-people-menu__avatars-button:hover .tlui-people-menu__avatar{border-color:var(--color-low)}}.tlui-people-menu__more{min-width:0px;font-size:11px;font-weight:600;color:var(--color-text-1);font-family:inherit;padding:0 4px;letter-spacing:1.5}.tlui-people-menu__more:after{border-radius:var(--radius-2);inset:0}.tlui-people-menu__wrapper{position:relative;display:flex;flex-direction:column;width:220px;height:fit-content;max-height:50vh}.tlui-people-menu__section{position:relative;flex-direction:column;max-height:100%;overflow-x:hidden;overflow-y:auto;touch-action:auto}.tlui-people-menu__section:not(:last-child){border-bottom:1px solid var(--color-divider)}.tlui-people-menu__user{display:flex;justify-content:flex-start;align-items:center}.tlui-people-menu__user__color{flex-shrink:0}.tlui-people-menu__user__name{text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:var(--color-text-1);max-width:100%;flex-grow:1;flex-shrink:100}.tlui-people-menu__user__label{text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:var(--color-text-3);flex-grow:100;flex-shrink:0;margin-left:4px}.tlui-people-menu__user__input{flex-grow:2;height:100%;padding:0;margin:0}.tlui-people-menu__user>.tlui-input__wrapper{width:auto;display:flex;align-items:auto;flex-grow:2;gap:8px;height:100%;padding:0}.tlui-people-menu__item{display:flex;justify-content:flex-start;width:100%}.tlui-people-menu__item__button{padding:0 11px}.tlui-people-menu__item>.tlui-button__menu{width:auto;display:flex;align-items:auto;justify-content:flex-start;flex-grow:2;gap:11px}.tlui-people-menu__item__follow{min-width:44px}.tlui-people-menu__item__follow[data-active=true] .tlui-icon{opacity:1}.tlui-people-menu__item__follow:focus-visible .tlui-icon{opacity:1}@media(hover:hover){.tlui-people-menu__item__follow .tlui-icon{opacity:0}.tlui-people-menu__item__follow:hover .tlui-icon{opacity:1}}.draw-container{height:100%;width:100%;overflow:hidden;background:var(--bg-app);position:relative;z-index:1}.tldraw-wrapper{position:absolute;inset:0;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--border-color)}.notes-container{height:100%;width:100%;position:relative;overflow:hidden;background-image:radial-gradient(var(--border-color) 1px,transparent 0);background-size:20px 20px}.notes-header{position:absolute;top:2rem;left:2rem;z-index:10}.add-note-btn{background:var(--accent-primary);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:99px;font-weight:600;cursor:pointer;box-shadow:0 4px 15px #8b5cf666;transition:all .2s;display:flex;align-items:center;gap:.5rem}.add-note-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #8b5cf699}.sticky-note{position:absolute;width:250px;min-height:250px;padding:1.5rem;border-radius:var(--radius-sm);box-shadow:0 10px 30px #0000004d;display:flex;flex-direction:column;transition:transform .1s,box-shadow .2s;cursor:grab;animation:popIn .3s cubic-bezier(.175,.885,.32,1.275);resize:both;overflow:hidden;min-width:200px;min-height:200px}.sticky-note:active{box-shadow:0 15px 40px #0006;z-index:100!important}.note-header{display:flex;justify-content:space-between;margin-bottom:.5rem;opacity:.6;transition:opacity .2s;cursor:grab;padding:.25rem 0}.note-header:active{cursor:grabbing}.sticky-note:hover .note-header{opacity:1}.delete-note{background:transparent;border:none;cursor:pointer;color:inherit;padding:4px;border-radius:4px}.delete-note:hover{background:#0000001a}.note-content{flex:1;background:transparent;border:none;resize:none;outline:none;font-family:Inter,sans-serif;font-size:1.1rem;line-height:1.5;color:inherit;width:100%}@keyframes popIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.notebook-container{display:flex;height:100vh;width:100%;background-color:var(--bg-app);overflow:hidden;color:var(--text-primary)}.sidebar{width:280px;background-color:var(--bg-sidebar);border-right:1px solid var(--border-color);display:flex;flex-direction:column;transition:margin-left .3s cubic-bezier(.4,0,.2,1);z-index:10}.sidebar.closed{margin-left:-280px}.sidebar-header{padding:1.5rem 1rem 1rem;border-bottom:1px solid var(--border-color)}.search-bar{display:flex;align-items:center;background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:99px;padding:.75rem 1.25rem;gap:.6rem;margin-top:1rem;transition:.2s ease}.search-bar:focus-within{border-color:var(--accent-primary);background-color:var(--bg-card-hover);box-shadow:0 0 0 4px var(--accent-glow)}.search-bar input{background:transparent;border:none;color:var(--text-primary);width:100%;outline:none;font-size:.9rem}.note-list{flex:1;overflow-y:auto;padding:1.5rem 1rem}.note-group{margin-bottom:2rem}.group-title{display:block;font-size:.75rem;font-weight:700;color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase;margin-bottom:.75rem;padding-left:.75rem}.note-item{background:transparent;padding:1rem 1.25rem;border-radius:18px;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);border:1px solid transparent;margin-bottom:.8rem}.note-item:hover{background-color:var(--bg-card-hover)}.note-item.active{background-color:var(--bg-card)!important;border:1px solid var(--border-color)!important;box-shadow:0 4px 20px #0000001a;transform:scale(1.02)}[data-theme=dark] .note-item.active,[data-theme=tokyo-night] .note-item.active,[data-theme=dracula] .note-item.active{box-shadow:0 4px 20px #0006}.note-title{font-size:.95rem;font-weight:600;color:var(--text-primary);margin-bottom:.35rem}.note-preview{font-size:.8rem;color:var(--text-secondary);margin-bottom:.75rem;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.note-date{font-size:.7rem;color:var(--text-muted);font-weight:500}.delete-item-btn{position:absolute;right:12px;top:12px;opacity:0;background:var(--bg-card);border-radius:8px;padding:6px;border:none;color:#ef4444;cursor:pointer;transition:.2s}.note-item:hover .delete-item-btn{opacity:1}.delete-item-btn:hover{background:#fee2e2;color:#b91c1c}[data-theme=dark] .delete-item-btn:hover{background:#450a0a;color:#fca5a5}.editor-area{flex:1;display:flex;flex-direction:column;background-color:var(--bg-app);position:relative}.editor-top-bar{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 3rem;height:80px}.last-edited{font-size:.75rem;color:var(--text-muted);background:var(--bg-card);padding:.35rem 1rem;border-radius:20px;border:1px solid var(--border-color)}.editor-controls{display:flex;gap:.75rem}.btn-icon{width:42px;height:42px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;transition:.2s}.btn-icon:hover{background:var(--bg-card-hover);color:var(--text-primary);border-color:var(--text-muted)}.btn-icon.active{color:#facc15;background:#facc151a;border-color:#facc1533}.btn-icon.danger:hover{color:#ef4444;background:#ef44441a;border-color:#ef444433}.btn-icon.primary{background:var(--accent-primary);color:#fff;border:none}.btn-icon.primary:hover{filter:brightness(1.1);box-shadow:0 0 15px var(--accent-glow)}.editor-toolbar{display:flex;align-items:center;gap:.5rem;padding:0 3rem;margin-bottom:2rem}.editor-toolbar button{width:36px;height:36px;border-radius:8px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.2s}.editor-toolbar button:hover{background:var(--bg-card-hover);color:var(--text-primary)}.editor-toolbar .divider{width:1px;height:24px;background:var(--border-color);margin:0 .5rem}.editor-content{flex:1;padding:0 3rem 3rem;overflow-y:auto;display:flex;flex-direction:column}.note-title-input{background:transparent;border:none;color:var(--text-primary);font-size:2.5rem;font-weight:800;margin-bottom:2rem;width:100%;outline:none;line-height:1.2}.note-title-input::placeholder{color:var(--text-muted);opacity:.4}.editor-layer-container{position:relative;width:100%;min-height:200px;line-height:1.6;font-size:1.1rem;font-family:JetBrains Mono,Fira Code,Consolas,monospace}.note-body-input,.highlight-layer{font-family:JetBrains Mono,Fira Code,Consolas,monospace!important;font-size:1.1rem!important;line-height:1.6!important;padding:0!important;margin:0!important;border:none!important;background:transparent!important;white-space:pre-wrap!important;word-wrap:break-word!important;width:100%!important;box-sizing:border-box!important;display:block!important}.editor-layer-container{position:relative;width:100%;min-height:1.6em}.note-body-input{position:absolute;top:0;left:0;width:100%;height:100%!important;color:transparent!important;caret-color:var(--text-primary)!important;z-index:2;resize:none;outline:none;overflow:hidden;margin:0}.highlight-layer{position:relative;z-index:1;color:var(--text-primary);pointer-events:none;visibility:visible}.hl-heading{color:var(--text-primary);font-weight:800}.hl-marker{color:var(--text-muted);font-weight:400;opacity:.5}.hl-quote-wrapper{border-left:3px solid var(--border-color);padding-left:10px;display:inline-block;width:100%;color:var(--text-secondary);font-style:italic}.hl-text-quote{color:var(--text-secondary)}.hl-string{color:#4ade80}.hl-code{color:var(--accent-primary);background:var(--bg-card-hover);border-radius:4px;padding:0 4px;font-size:.9em}.hl-char{color:#facc15}.hl-tag{color:#fb923c}.hl-check-box{color:var(--accent-primary);font-weight:700}.hl-check-done{color:#4ade80;font-weight:700}.hl-text-done{text-decoration:line-through;opacity:.5;color:var(--text-muted)}.hl-list-bullet{color:#f87171;font-weight:700}.hl-list-number{color:#38bdf8;font-weight:700}.image-segment{position:relative;margin:1rem 0;width:fit-content;max-width:100%;border-radius:8px;overflow:hidden;border:2px solid transparent;transition:.2s}.image-segment:hover{border-color:var(--border-color)}.image-segment img{display:block;border-radius:6px;max-width:100%}.resize-handle{position:absolute;right:0;bottom:0;width:16px;height:16px;background:var(--accent-primary);cursor:nwse-resize;border-top-left-radius:4px;opacity:0;transition:.2s}.image-segment:hover .resize-handle{opacity:1}.delete-image-btn{position:absolute;top:8px;right:8px;background:#0009;color:#fff;padding:6px;border-radius:6px;border:none;cursor:pointer;opacity:0;transition:.2s}.image-segment:hover .delete-image-btn{opacity:1}.delete-image-btn:hover{background:#ef4444}.no-selection{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-muted);opacity:.5}.custom-scrollbar::-webkit-scrollbar{width:6px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.custom-scrollbar::-webkit-scrollbar-thumb{background-color:var(--border-color);border-radius:20px}.wiki-container{height:100%;display:flex;gap:1.5rem;overflow:hidden}.wiki-sidebar{width:280px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);display:flex;flex-direction:column;overflow:hidden}.wiki-sidebar-header{padding:1.25rem;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.wiki-title{font-weight:600;color:var(--text-primary)}.add-page-btn{background:var(--bg-card-hover);border:none;color:var(--text-primary);width:32px;height:32px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.add-page-btn:hover,.add-page-btn.active{background:var(--accent-primary);color:#fff}.dropdown-menu{position:absolute;top:100%;right:0;margin-top:.5rem;width:160px;background:var(--accent-teal);color:#fff;border:none;width:28px;height:28px;border-radius:6px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #00bfbf4d}.add-page-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00bfbf66;filter:brightness(1.1)}.wiki-nav{flex:1;overflow-y:auto;padding:1rem .5rem}.wiki-page-link{display:flex;align-items:center;padding:.6rem .75rem;border-radius:8px;cursor:pointer;margin-bottom:2px;color:var(--text-secondary);transition:all .2s;font-size:.9rem;border:1px solid transparent}.wiki-page-link:hover{background:var(--bg-card-hover);color:var(--text-main)}.wiki-page-link.active{background:#00bfbf1a;color:var(--accent-teal);border-color:#00bfbf33;font-weight:500}.page-icon{margin-right:.75rem;opacity:.7}.wiki-page-link.active .page-icon{color:var(--accent-teal);opacity:1}.folder-icon{color:var(--accent-teal);opacity:.8}.wiki-editor-area{flex:1;display:flex;flex-direction:column;background:var(--bg-app)}.editor-toolbar{height:56px;padding:0 1.5rem;display:flex;align-items:center;border-bottom:1px solid var(--border-color);background:var(--bg-sidebar);gap:.5rem}.document-title-input{background:transparent;border:none;color:var(--text-primary);font-weight:600;font-size:1.1rem;outline:none;width:100%}.toolbar-btn{background:transparent;border:none;color:var(--text-secondary);width:32px;height:32px;border-radius:6px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.toolbar-btn:hover{background:var(--bg-card-hover);color:var(--text-primary)}.toolbar-btn.active{background:#00bfbf1a;color:var(--accent-teal)}.toolbar-divider{width:1px;height:20px;background:var(--border-color);margin:0 .5rem}.split-view-container{flex:1;display:flex;overflow:hidden}.editor-pane,.preview-pane{flex:1;display:flex;flex-direction:column;overflow:hidden}.editor-pane{border-right:1px solid var(--border-color);background:var(--bg-app)}.content-textarea{flex:1;background:transparent;border:none;color:var(--text-primary);padding:2rem;font-family:Fira Code,Monaco,Consolas,monospace;font-size:.95rem;line-height:1.6;resize:none;outline:none}.preview-pane{background:var(--bg-app)}.markdown-preview{padding:2.5rem 3.5rem;overflow-y:auto;height:100%;color:var(--text-primary);line-height:1.7;font-size:1rem}.markdown-preview h1{font-size:2.2rem;margin-bottom:1.5rem;border-bottom:1px solid var(--border-color);padding-bottom:.5rem;color:var(--accent-teal)}.markdown-preview h2{font-size:1.6rem;margin-top:2rem;margin-bottom:1rem}.markdown-preview p{margin-bottom:1.25rem}.markdown-preview ul,.markdown-preview ol{margin-bottom:1.25rem;padding-left:1.5rem}.markdown-preview code{background:var(--bg-card-hover);padding:.2rem .4rem;border-radius:4px;font-family:monospace;font-size:.9em;color:var(--accent-teal)}.markdown-preview pre{background:var(--bg-card);padding:1.25rem;border-radius:12px;overflow-x:auto;margin:1.5rem 0;border:1px solid var(--border-color)}.markdown-preview pre code{background:transparent;padding:0;color:inherit;font-size:.9rem}.markdown-preview a{color:var(--accent-primary);text-decoration:none}.markdown-preview a:hover{text-decoration:underline}.markdown-preview hr{border:none;border-top:1px solid var(--border-color);margin:2rem 0}@media print{.wiki-sidebar,.editor-toolbar,.editor-pane{display:none!important}.wiki-container,.wiki-editor-area,.split-view-container,.preview-pane{display:block!important;height:auto!important;overflow:visible!important}.preview-pane{padding:0!important}body{background:#fff!important;color:#000!important}.markdown-preview{color:#000!important}}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--text-muted);gap:1rem}.profile-photo-uploader{background:#14141499;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(14,165,233,.1);border-radius:16px;padding:2rem;max-width:400px;margin:0 auto}.uploader-content{display:flex;flex-direction:column;align-items:center;gap:1.5rem}.photo-preview-section{width:160px;height:160px;position:relative}.photo-preview,.current-photo,.no-photo{width:100%;height:100%;border-radius:50%;overflow:hidden;position:relative;border:3px solid rgba(14,165,233,.3);box-shadow:0 4px 16px #0000004d}.photo-preview img,.current-photo img{width:100%;height:100%;object-fit:cover}.photo-overlay{position:absolute;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s ease;cursor:pointer}.current-photo:hover .photo-overlay{opacity:1}.photo-overlay svg{color:#fff}.no-photo{background:#0ea5e91a;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;color:var(--text-muted)}.no-photo svg{color:var(--accent-primary)}.no-photo span{font-size:.85rem;font-weight:500}.preview-cancel-btn{position:absolute;top:8px;right:8px;background:#ef4444e6;border:none;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;color:#fff;z-index:10}.preview-cancel-btn:hover:not(:disabled){background:#dc2626;transform:scale(1.1)}.preview-cancel-btn:disabled{opacity:.5;cursor:not-allowed}.uploader-actions{display:flex;flex-direction:column;gap:.75rem;width:100%}.file-input-hidden{display:none}.upload-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem 1.5rem;border:none;border-radius:12px;font-family:inherit;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .25s ease;width:100%}.upload-btn.primary{background:linear-gradient(135deg,#0ea5e9,#14b8a6);color:#fff;box-shadow:0 4px 12px #0ea5e94d}.upload-btn.primary:hover:not(:disabled){background:linear-gradient(135deg,#0284c7,#0d9488);box-shadow:0 6px 20px #0ea5e966;transform:translateY(-2px)}.upload-btn.secondary{background:#0ea5e91a;border:1px solid rgba(14,165,233,.3);color:var(--accent-primary)}.upload-btn.secondary:hover:not(:disabled){background:#0ea5e933;border-color:#0ea5e966;transform:translateY(-2px)}.upload-btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.spinner{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.upload-error{width:100%;padding:.75rem 1rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#ef4444;font-size:.85rem;text-align:center}.upload-info{display:flex;flex-direction:column;gap:.25rem;text-align:center}.upload-info p{margin:0;font-size:.8rem;color:var(--text-dimmed)}.settings-container{padding:1.5rem;max-width:100%;margin:0;color:var(--text-primary)}.settings-header{margin-bottom:1rem;text-align:left}.page-title{font-size:2rem;font-weight:700;background:linear-gradient(135deg,#fff,#cbd5e1);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:.5rem}.page-subtitle{font-size:1rem;color:var(--text-muted)}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:1.5rem;align-items:start}.profile-card{grid-column:1 / -1}.profile-content{display:flex;flex-direction:row;gap:2rem;align-items:flex-start}.profile-photo-section{flex:0 0 200px;display:flex;flex-direction:column;align-items:center;gap:1rem;padding-top:.5rem}.profile-form{flex:1;max-width:500px}.settings-extras{flex:1;display:flex;flex-direction:column;padding-left:2rem;border-left:1px solid rgba(255,255,255,.1);min-width:300px}.extra-section{display:flex;flex-direction:column;gap:1rem;padding-bottom:1.5rem;margin-bottom:1.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.extra-section:last-child{border-bottom:none;padding-bottom:0;margin-bottom:0}.extra-title{font-size:1rem;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:.5rem;margin:0}.extra-title.text-danger{color:#ef4444}@media(max-width:1024px){.profile-content{flex-wrap:wrap}.settings-extras{width:100%;border-left:none;border-top:1px solid rgba(255,255,255,.1);padding-left:0;padding-top:2rem}}@media(max-width:768px){.settings-grid{grid-template-columns:1fr}.profile-content{flex-direction:column;align-items:center;gap:2rem}.profile-form{width:100%;max-width:100%}.profile-photo-section{width:100%}}.settings-card{background:#14141899;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:1.5rem;box-shadow:0 8px 32px #0003;transition:transform .2s,box-shadow .2s}.settings-card:hover{box-shadow:0 12px 40px #0000004d;border-color:#ffffff1f}.card-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid rgba(255,255,255,.05)}.card-header h2{font-size:1.1rem;font-weight:600;margin:0;color:var(--text-primary)}.section-desc{font-size:.9rem;color:var(--text-secondary);margin-bottom:1.5rem}.profile-photo-section{display:flex;flex-direction:column;align-items:center;gap:.75rem}.photo-hint{font-size:.75rem;color:var(--text-muted)}.form-group{margin-bottom:1.25rem}.form-group label{display:block;font-size:.85rem;font-weight:500;color:var(--text-secondary);margin-bottom:.5rem}.form-input{width:100%;background:#0000004d;border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:.75rem 1rem;color:#fff;font-size:.95rem;transition:all .2s}.form-input:focus{border-color:var(--accent-primary);background:#0006;outline:none;box-shadow:0 0 0 3px rgba(var(--accent-primary-rgb),.1)}.input-with-icon{display:flex;align-items:center;gap:.75rem;background:#ffffff08;border:1px solid rgba(255,255,255,.05);border-radius:10px;padding:.75rem 1rem;color:var(--text-muted)}.input-with-icon.disabled{cursor:not-allowed;opacity:.7}.input-with-icon input{background:transparent;border:none;color:var(--text-muted);font-size:.95rem;width:100%;outline:none}.input-hint{display:block;font-size:.7rem;color:var(--text-muted);margin-top:.4rem;font-style:italic}.btn-primary,.btn-secondary,.btn-danger-outline{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:10px;font-weight:500;font-size:.95rem;cursor:pointer;transition:all .2s;border:none}.btn-full{width:100%}.btn-primary{background:var(--accent-primary);color:#fff}.btn-primary:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px)}.btn-primary:disabled{opacity:.7;cursor:wait}.btn-secondary{background:#ffffff0d;color:var(--text-primary);border:1px solid rgba(255,255,255,.1)}.btn-secondary:hover:not(:disabled){background:#ffffff1a}.btn-danger-outline{background:transparent;border:1px solid rgba(239,68,68,.3);color:#ef4444;width:100%}.btn-danger-outline:hover{background:#ef44441a;border-color:#ef4444}.appearance-inline{display:flex;flex-direction:row;align-items:center;gap:1rem;flex-wrap:wrap}.theme-inline-list{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.theme-inline-option{width:32px;height:32px;border-radius:50%;border:2px solid transparent;padding:2px;background:transparent;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.theme-inline-option:hover{transform:scale(1.1)}.theme-inline-option.active{border-color:var(--accent-primary);box-shadow:0 0 0 2px rgba(var(--accent-primary-rgb),.2)}.theme-color-dot{width:100%;height:100%;border-radius:50%;box-shadow:0 2px 4px #0003}.toggles-list{display:flex;flex-direction:column;gap:1.5rem}.toggle-item{display:flex;justify-content:space-between;align-items:center;gap:1rem}.toggle-info{display:flex;flex-direction:column;gap:.25rem}.toggle-label{font-weight:500;font-size:.95rem;color:var(--text-primary)}.toggle-desc{font-size:.8rem;color:var(--text-muted)}.switch{position:relative;display:inline-block;width:44px;height:24px;flex-shrink:0}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:#ffffff1a;transition:.4s;border-radius:34px}.slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.4s;border-radius:50%}input:checked+.slider{background-color:var(--accent-primary)}input:focus+.slider{box-shadow:0 0 1px var(--accent-primary)}input:checked+.slider:before{transform:translate(20px)}.message-banner{margin-top:1rem;padding:.75rem;border-radius:8px;font-size:.85rem;text-align:center;animation:fadeIn .3s ease}.message-banner.success{background:#10b98126;color:#10b981;border:1px solid rgba(16,185,129,.2)}.message-banner.error{background:#ef444426;color:#ef4444;border:1px solid rgba(239,68,68,.2)}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
