@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap";@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-orange-500:oklch(70.5% .213 47.604);--color-amber-400:oklch(82.8% .189 84.429);--color-amber-500:oklch(76.9% .188 70.08);--color-amber-700:oklch(55.5% .163 48.998);--color-yellow-500:oklch(79.5% .184 86.047);--color-green-400:oklch(79.2% .209 151.711);--color-green-500:oklch(72.3% .219 149.579);--color-green-600:oklch(62.7% .194 149.214);--color-green-700:oklch(52.7% .154 150.069);--color-emerald-400:oklch(76.5% .177 163.223);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-600:oklch(59.6% .145 163.225);--color-emerald-700:oklch(50.8% .118 165.612);--color-teal-500:oklch(70.4% .14 182.503);--color-teal-600:oklch(60% .118 184.704);--color-cyan-500:oklch(71.5% .143 215.221);--color-cyan-600:oklch(60.9% .126 221.723);--color-blue-400:oklch(70.7% .165 254.624);--color-blue-500:oklch(62.3% .214 259.815);--color-blue-600:oklch(54.6% .245 262.881);--color-blue-700:oklch(48.8% .243 264.376);--color-indigo-500:oklch(58.5% .233 277.117);--color-purple-400:oklch(71.4% .203 305.504);--color-purple-500:oklch(62.7% .265 303.9);--color-purple-600:oklch(55.8% .288 302.321);--color-rose-400:oklch(71.2% .194 13.428);--color-rose-500:oklch(64.5% .246 16.439);--color-rose-700:oklch(51.4% .222 16.935);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-800:oklch(27.8% .033 256.848);--color-gray-900:oklch(21% .034 264.665);--color-gray-950:oklch(13% .028 261.692);--color-zinc-400:oklch(70.5% .015 286.067);--color-zinc-500:oklch(55.2% .016 285.938);--color-zinc-700:oklch(37% .013 285.805);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-md:28rem;--container-lg:32rem;--container-xl:36rem;--container-3xl:48rem;--container-4xl:56rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--text-3xl:1.875rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-widest:.1em;--leading-tight:1.25;--leading-relaxed:1.625;--radius-xs:.125rem;--radius-sm:calc(var(--radius) - 4px);--radius-md:calc(var(--radius) - 2px);--radius-lg:var(--radius);--radius-xl:calc(var(--radius) + 4px);--radius-2xl:calc(var(--radius) + 8px);--radius-3xl:calc(var(--radius) + 12px);--radius-4xl:calc(var(--radius) + 16px);--shadow-sm:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--ease-in:cubic-bezier(.4,0,1,1);--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-spin:spin 1s linear infinite;--animate-ping:ping 1s cubic-bezier(0,0,.2,1)infinite;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--animate-bounce:bounce 1s infinite;--blur-sm:8px;--blur-xl:24px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-background:var(--background);--color-foreground:var(--foreground);--color-card:var(--card);--color-card-foreground:var(--card-foreground);--color-popover:var(--popover);--color-popover-foreground:var(--popover-foreground);--color-primary:var(--primary);--color-primary-foreground:var(--primary-foreground);--color-secondary:var(--secondary);--color-secondary-foreground:var(--secondary-foreground);--color-muted:var(--muted);--color-muted-foreground:var(--muted-foreground);--color-accent:var(--accent);--color-accent-foreground:var(--accent-foreground);--color-destructive:var(--destructive);--color-border:var(--border);--color-input:var(--input);--color-ring:var(--ring);--color-chart-1:var(--chart-1);--color-chart-2:var(--chart-2);--color-chart-3:var(--chart-3);--color-chart-4:var(--chart-4);--color-chart-5:var(--chart-5);--color-sidebar:var(--sidebar);--color-sidebar-foreground:var(--sidebar-foreground);--color-sidebar-primary:var(--sidebar-primary);--color-sidebar-primary-foreground:var(--sidebar-primary-foreground);--color-sidebar-accent:var(--sidebar-accent);--color-sidebar-accent-foreground:var(--sidebar-accent-foreground);--color-sidebar-border:var(--sidebar-border);--color-sidebar-ring:var(--sidebar-ring)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--border);outline-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){*{outline-color:color-mix(in oklab,var(--ring)50%,transparent)}}body{background-color:var(--background);color:var(--foreground)}}@layer components{*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;color-scheme:dark;height:100dvh;overflow:hidden}body{font-family:var(--font-sans);background:var(--bg-0);color:var(--text-0);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;height:100dvh;max-height:100dvh;font-size:13px;line-height:1.5;overflow:hidden}#root{height:100dvh;max-height:100dvh;overflow:hidden}body.landing-page-active,body.landing-page-active #root{height:auto;min-height:100dvh;max-height:none;overflow:visible auto}html:has(body.landing-page-active){height:auto;min-height:100dvh;overflow:visible auto}button:not([data-slot]):not([class*=bg-]):not([class*=rounded-]),[role=button]:not([data-slot]):not([class*=bg-]):not([class*=rounded-]){-webkit-tap-highlight-color:transparent;touch-action:manipulation;cursor:pointer;font-family:inherit}button:not([data-slot]) svg{flex-shrink:0;display:block}:focus-visible:not([data-slot]):not([class*=ring-]):not([class*="focus-visible:"]){outline:2px solid var(--focus);outline-offset:1px}::selection{background:var(--accent-muted);color:var(--text)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}*{scrollbar-width:thin;scrollbar-color:var(--border)transparent}.ui-btn{font-family:var(--font-sans);font-size:var(--text-sm);border-radius:var(--radius);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;-webkit-user-select:none;user-select:none;border:1px solid #0000;justify-content:center;align-items:center;gap:6px;padding:9px 14px;font-weight:500;line-height:1;display:inline-flex}.ui-btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.ui-btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.ui-btn svg{flex-shrink:0;width:14px;height:14px}.ui-btn--primary{background:var(--accent-0);color:#fff;border-color:var(--accent-0)}.ui-btn--primary:hover:not(:disabled){background:var(--accent-1);border-color:var(--accent-1)}.ui-btn--primary:active:not(:disabled){background:#5b626e}.ui-btn--secondary{background:var(--bg-2);color:var(--text-0);border-color:var(--stroke-1)}.ui-btn--secondary:hover:not(:disabled){background:var(--bg-3);border-color:var(--stroke-2)}.ui-btn--secondary:active:not(:disabled){background:var(--bg-3)}.ui-btn--ghost{color:var(--text-1);background:0 0;border-color:#0000}.ui-btn--ghost:hover:not(:disabled){background:var(--bg-2);color:var(--text-0)}.ui-btn--ghost:active:not(:disabled){background:var(--bg-3)}.ui-btn--danger{background:var(--danger);color:#fff;border-color:var(--danger)}.ui-btn--danger:hover:not(:disabled){background:#dc2626;border-color:#dc2626}.ui-btn--danger:active:not(:disabled){background:#b91c1c}.ui-btn--sm{font-size:var(--text-xs);gap:4px;padding:5px 8px}.ui-btn--sm svg{width:12px;height:12px}.ui-icon-btn{border-radius:var(--radius-md);width:32px;height:32px;color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0;display:inline-flex;position:relative}.ui-icon-btn:hover:not(:disabled){background:var(--bg-2);color:var(--text-0)}.ui-icon-btn:active:not(:disabled){background:var(--bg-3)}.ui-icon-btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.ui-icon-btn:disabled{opacity:.5;cursor:not-allowed}.ui-icon-btn svg{width:16px;height:16px}.ui-icon-btn--sm{width:28px;height:28px}.ui-icon-btn--sm svg{width:14px;height:14px}.ui-icon-btn--bordered{border-color:var(--stroke-1)}.ui-icon-btn--bordered:hover:not(:disabled){border-color:var(--stroke-2)}.ui-input{width:100%;font-family:var(--font-sans);font-size:var(--text-sm);background:var(--background);border:1px solid var(--input);border-radius:var(--radius);color:var(--foreground);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);padding:9px 12px;line-height:1.5;display:block}.ui-input::placeholder{color:var(--text-2)}.ui-input:hover:not(:disabled):not(:focus){border-color:var(--stroke-2)}.ui-input:focus{border-color:var(--ring);box-shadow:0 0 0 2px var(--ring);outline:none}@supports (color:color-mix(in lab,red,red)){.ui-input:focus{box-shadow:0 0 0 2px color-mix(in srgb,var(--ring)20%,transparent)}}.ui-input:disabled{opacity:.5;cursor:not-allowed;background:var(--bg-2)}.ui-input--sm{font-size:var(--text-xs);padding:6px 8px}.ui-textarea{width:100%;font-family:var(--font-sans);font-size:var(--text-sm);background:var(--background);border:1px solid var(--input);border-radius:var(--radius);color:var(--foreground);resize:vertical;min-height:80px;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);padding:10px 12px;line-height:1.5;display:block}.ui-textarea::placeholder{color:var(--text-2)}.ui-textarea:hover:not(:disabled):not(:focus){border-color:var(--stroke-2)}.ui-textarea:focus{border-color:var(--ring);box-shadow:0 0 0 2px var(--ring);outline:none}@supports (color:color-mix(in lab,red,red)){.ui-textarea:focus{box-shadow:0 0 0 2px color-mix(in srgb,var(--ring)20%,transparent)}}.ui-textarea:disabled{opacity:.5;cursor:not-allowed;background:var(--bg-2)}.ui-chip{font-family:var(--font-sans);font-size:var(--text-xs);background:var(--bg-2);border:1px solid var(--stroke-0);border-radius:var(--radius-full);color:var(--text-1);white-space:nowrap;transition:all var(--transition-fast);align-items:center;gap:4px;padding:4px 8px;font-weight:500;line-height:1;display:inline-flex}.ui-chip svg{flex-shrink:0;width:12px;height:12px}.ui-chip--selectable{cursor:pointer;-webkit-user-select:none;user-select:none}.ui-chip--selectable:hover{background:var(--bg-3);border-color:var(--stroke-1);color:var(--text-0)}.ui-chip--selectable:focus-visible{box-shadow:var(--focus-ring);outline:none}.ui-chip--selected{background:var(--accent-2);border-color:var(--accent-0);color:var(--text-0)}.ui-chip--selected:hover{background:#6b728040}.ui-chip--danger{background:var(--danger-muted);color:var(--danger);border-color:#0000}.ui-chip--warning{background:var(--warning-muted);color:var(--warning);border-color:#0000}.ui-chip--success{background:var(--success-muted);color:var(--success);border-color:#0000}.ui-chip--info{background:var(--info-muted);color:var(--info);border-color:#0000}.ui-card{background:var(--card);border:1px solid var(--stroke-1);border-radius:var(--radius);padding:var(--space-4);transition:border-color var(--transition-fast)}.ui-card--elevated{background:var(--bg-2);border-color:var(--stroke-1)}.ui-card--interactive{cursor:pointer}.ui-card--interactive:hover{border-color:var(--stroke-1);background:var(--bg-2)}.ui-card__header{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;display:flex}.ui-card__title{font-size:var(--text-sm);color:var(--text-0);font-weight:600}.ui-card__subtitle{font-size:var(--text-xs);color:var(--text-2);margin-top:2px}.ui-card__body{color:var(--text-1);font-size:var(--text-sm)}.ui-card__footer{align-items:center;gap:var(--space-2);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--stroke-0);display:flex}.ui-modal-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:3000;opacity:0;visibility:hidden;transition:opacity var(--transition-base),visibility var(--transition-base);background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.ui-modal-overlay.is-open{opacity:1;visibility:visible}.ui-modal{background:var(--card);border:1px solid var(--stroke-1);border-radius:calc(var(--radius)*1.5);box-shadow:var(--shadow-lg);width:90%;max-width:480px;max-height:85vh;transition:transform var(--transition-base);flex-direction:column;display:flex;overflow:hidden;transform:scale(.95)translateY(10px)}.ui-modal-overlay.is-open .ui-modal{transform:scale(1)translateY(0)}.ui-modal__header{padding:var(--space-4);border-bottom:1px solid var(--stroke-0);justify-content:space-between;align-items:center;display:flex}.ui-modal__title{font-size:var(--text-md);color:var(--text-0);font-weight:600}.ui-modal__close{border-radius:var(--radius-md);width:28px;height:28px;color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.ui-modal__close:hover{background:var(--bg-2);color:var(--text-0)}.ui-modal__close svg{width:16px;height:16px}.ui-modal__body{padding:var(--space-4);flex:1;overflow-y:auto}.ui-modal__footer{justify-content:flex-end;align-items:center;gap:var(--space-2);padding:var(--space-4);border-top:1px solid var(--stroke-0);display:flex}.ui-modal--sm{max-width:360px}.ui-modal--lg{max-width:640px}.ui-tooltip{display:inline-flex;position:relative}.ui-tooltip__content{background:var(--bg-3);border:1px solid var(--stroke-1);border-radius:var(--radius-md);font-size:var(--text-xs);color:var(--text-0);white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;transition:opacity var(--transition-fast),visibility var(--transition-fast);z-index:2000;padding:6px 10px;position:absolute;bottom:100%;left:50%;transform:translate(-50%)translateY(-4px)}.ui-tooltip__content:after{content:"";border:5px solid #0000;border-top-color:var(--stroke-1);position:absolute;top:100%;left:50%;transform:translate(-50%)}.ui-tooltip:hover .ui-tooltip__content,.ui-tooltip:focus-within .ui-tooltip__content{opacity:1;visibility:visible}.ui-tooltip--bottom .ui-tooltip__content{top:100%;bottom:auto;transform:translate(-50%)translateY(4px)}.ui-tooltip--bottom .ui-tooltip__content:after{border-top-color:#0000;border-bottom-color:var(--stroke-1);top:auto;bottom:100%}.ui-tooltip--left .ui-tooltip__content{inset:50% 100% auto auto;transform:translateY(-50%)translate(-4px)}.ui-tooltip--left .ui-tooltip__content:after{border:5px solid #0000;border-left-color:var(--stroke-1);top:50%;left:100%;transform:translateY(-50%)}.ui-tooltip--right .ui-tooltip__content{top:50%;bottom:auto;left:100%;transform:translateY(-50%)translate(4px)}.ui-tooltip--right .ui-tooltip__content:after{border:5px solid #0000;border-right-color:var(--stroke-1);top:50%;left:auto;right:100%;transform:translateY(-50%)}.ui-toast-container{bottom:var(--space-4);gap:var(--space-2);z-index:4000;pointer-events:none;flex-direction:column;display:flex;position:fixed;left:50%;transform:translate(-50%)}.ui-toast{align-items:center;gap:var(--space-3);padding:var(--space-3)var(--space-4);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);pointer-events:auto;min-width:280px;max-width:420px;animation:toastSlideIn var(--transition-base)ease-out;display:flex}@keyframes toastSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.ui-toast.is-hiding{animation:toastSlideOut var(--transition-fast)ease-in forwards}@keyframes toastSlideOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(10px)}}.ui-toast__icon{width:18px;height:18px;color:var(--text-1);flex-shrink:0}.ui-toast__content{flex:1;min-width:0}.ui-toast__title{font-size:var(--text-sm);color:var(--text-0);font-weight:500}.ui-toast__message{font-size:var(--text-xs);color:var(--text-1);margin-top:2px}.ui-toast__action{font-size:var(--text-xs);color:var(--accent-1);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast);background:0 0;border:none;flex-shrink:0;padding:4px 8px;font-weight:500}.ui-toast__action:hover{background:var(--accent-2)}.ui-toast__close{border-radius:var(--radius-sm);width:20px;height:20px;color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.ui-toast__close:hover{background:var(--bg-3);color:var(--text-0)}.ui-toast__close svg{width:14px;height:14px}.ui-toast--success .ui-toast__icon{color:var(--success)}.ui-toast--warning .ui-toast__icon{color:var(--warning)}.ui-toast--danger .ui-toast__icon{color:var(--danger)}.ui-toast--info .ui-toast__icon{color:var(--info)}.ui-separator{background:var(--stroke-0);height:1px;margin:var(--space-3)0;border:none}.ui-separator--strong{background:var(--stroke-1)}.ui-separator--vertical{width:1px;height:auto;margin:0 var(--space-3);align-self:stretch}.ui-separator--spaced{margin:var(--space-4)0}.ui-form-group{margin-bottom:var(--space-4)}.ui-form-group:last-child{margin-bottom:0}.ui-label{font-size:var(--text-xs);color:var(--text-1);margin-bottom:var(--space-1);font-weight:500;display:block}.ui-helper-text{font-size:var(--text-xs);color:var(--text-2);margin-top:var(--space-1)}.ui-helper-text--error{color:var(--danger)}.app-layout{background:var(--bg-0);height:100dvh;max-height:100dvh;display:flex;overflow:hidden}.sidebar{width:var(--sidebar-width);min-width:var(--sidebar-width);background:var(--bg-0);z-index:200;height:100dvh;max-height:100dvh;transition:transform var(--transition-base);flex-direction:column;display:flex;position:fixed;top:0;left:0;overflow:hidden}.sidebar__header{padding:var(--space-3);border-bottom:none}.sidebar__controls{justify-content:space-between;align-items:center;gap:3px;display:flex}.sidebar__actions{align-items:center;gap:var(--space-1);margin-right:calc(-1*var(--space-1));flex-shrink:0;display:flex}.sidebar__profile{align-items:center;gap:var(--space-2);padding:var(--space-1)var(--space-2);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast);text-align:left;background:0 0;border:none;min-width:0;display:flex;overflow:hidden}.sidebar__profile:hover{background:var(--bg-2)}.sidebar__profile:focus-visible{box-shadow:var(--focus-ring);outline:none}.sidebar__profile-avatar{border-radius:var(--radius-md);background:var(--accent-2);flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;display:flex;overflow:hidden}.sidebar__profile-avatar img{object-fit:cover;width:100%;height:100%}.sidebar__profile-avatar-fallback{font-size:var(--text-xs);color:var(--accent-1);text-transform:uppercase;font-weight:600}.sidebar__profile-info{flex:1;min-width:0}.sidebar__profile-name{align-items:center;gap:var(--space-1);font-size:var(--text-sm);color:var(--text-0);white-space:nowrap;text-overflow:ellipsis;font-weight:500;display:flex;overflow:hidden}.sidebar__profile-email{display:none}.sidebar__profile-wrapper{position:relative}.sidebar__profile.is-active{background:var(--bg-2)}.sidebar__profile-chevron{color:var(--text-2);transition:transform var(--transition-fast);flex-shrink:0}.sidebar__profile-chevron.is-open{transform:rotate(180deg)}.sidebar__profile-menu{background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-md);min-width:160px;padding:var(--space-1);z-index:300;position:absolute;top:calc(100% + 4px);left:0;right:0;box-shadow:0 4px 12px #0000004d}.sidebar__profile-menu-item{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2)var(--space-2);border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);text-align:left;background:0 0;border:none;display:flex}.sidebar__profile-menu-item:hover{background:var(--bg-2);color:var(--text-0)}.sidebar__profile-menu-item svg{opacity:.7;flex-shrink:0;width:16px;height:16px}.sidebar__profile-menu-item--danger{color:var(--red)}.sidebar__profile-menu-item--danger:hover{background:var(--red)}@supports (color:color-mix(in lab,red,red)){.sidebar__profile-menu-item--danger:hover{background:color-mix(in srgb,var(--red)15%,var(--bg-1))}}.sidebar__profile-menu-item--danger:hover{color:var(--red)}.sidebar__profile-menu-item--danger svg{opacity:1}.sidebar__profile-menu-divider{background:var(--stroke-0);height:1px;margin:var(--space-1)0}.sidebar__profile-menu-row{gap:var(--space-1);padding:var(--space-1)var(--space-2);display:flex}.sidebar__profile-menu-icon-btn{background:var(--bg-2);border:1px solid var(--stroke-0);border-radius:var(--radius-sm);width:32px;height:32px;color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex}.sidebar__profile-menu-icon-btn:hover{background:var(--bg-3);color:var(--text-0)}.sidebar__profile-menu-icon-btn svg{width:16px;height:16px}.sidebar__profile-menu-icon-btn--danger{color:var(--red)}@supports (color:color-mix(in lab,red,red)){.sidebar__profile-menu-icon-btn--danger:hover{background:color-mix(in srgb,var(--red)25%,var(--bg-1))}}@supports (color:color-mix(in lab,red,red)){.sidebar__profile-menu-icon-btn--danger:hover{border-color:color-mix(in srgb,var(--red)40%,var(--stroke-0))}}.sidebar__ctrl-btn{background:var(--bg-2);border:1px solid var(--stroke-0);border-radius:var(--radius-md);width:28px;height:28px;color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;display:flex}.sidebar__ctrl-btn:hover{background:var(--bg-3);border-color:var(--stroke-1);color:var(--text-0);border-radius:10px}.sidebar__ctrl-btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.sidebar__ctrl-btn svg{width:16px;height:16px}.sidebar__nav{padding:var(--space-2)0;scrollbar-width:none;-ms-overflow-style:none;flex:1;position:relative;overflow:hidden auto}.sidebar__active-indicator{left:var(--space-2);right:var(--space-2);background:var(--bg-2);border-radius:var(--radius-md);pointer-events:none;z-index:0;transition:top .2s cubic-bezier(.4,0,.2,1),height .2s cubic-bezier(.4,0,.2,1),opacity .15s;position:absolute}.sidebar__nav::-webkit-scrollbar{display:none}.sidebar__dashboard-btn{padding:var(--space-2);margin-bottom:var(--space-2)}.sidebar__item--dashboard{background:linear-gradient(135deg,var(--accent-2)0%,transparent 100%);border:1px solid var(--accent-0)}.sidebar__item--dashboard:hover,.sidebar__item--dashboard.is-active{background:var(--accent-2);border-color:var(--accent-1)}.sidebar__section{margin-bottom:var(--space-3);padding:0 var(--space-2)}.sidebar__section--collapsed{margin-bottom:var(--space-1)}.sidebar__section--collapsed .sidebar__section-content{display:none}.sidebar__section-header{padding:var(--space-2)var(--space-2);color:var(--text-2);text-transform:capitalize;letter-spacing:.02em;border-bottom:none;font-family:Inter Variable,SF Pro Display,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,Linear Thai,sans-serif;font-size:12px;font-weight:600}.sidebar__section-content{background:0 0;border:none;border-radius:0;overflow:hidden}.sidebar__view-toggle{background:var(--bg-2);border-radius:var(--radius-md);margin:0 auto var(--space-3)auto;max-width:200px;width:calc(100% - var(--space-4));padding:3px;display:flex;position:relative}.sidebar__view-toggle-bg{background:var(--bg-0);border-radius:var(--radius-sm);width:calc(50% - 3px);height:calc(100% - 6px);transition:transform .2s cubic-bezier(.4,0,.2,1);position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #0000000d}.sidebar__view-toggle-btn{border-radius:var(--radius-sm);cursor:pointer;color:var(--text-2);z-index:1;background:0 0;border:none;flex:1;justify-content:center;align-items:center;gap:6px;padding:6px 8px;font-size:12px;font-weight:500;transition:color .15s;display:flex;position:relative}.sidebar__view-toggle-btn:hover{color:var(--text-1)}.sidebar__view-toggle-btn.is-active{color:var(--text-0)}.sidebar__view-toggle-btn svg{flex-shrink:0}.sidebar__category{margin-top:var(--space-1)}.sidebar__category-header{padding:var(--space-2)var(--space-3);color:var(--text-3);text-transform:uppercase;letter-spacing:.05em;border-top:none;font-size:10px;font-weight:600}.sidebar__category:first-child .sidebar__category-header{border-top:none}.sidebar__category .sidebar__item{padding-left:var(--space-4)}.sidebar__item{align-items:center;gap:var(--space-2);width:calc(100% - 8px);padding:var(--space-2)var(--space-3);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--text-1);cursor:pointer;transition:color var(--transition-fast),background var(--transition-fast);text-align:left;z-index:1;background:0 0;border:none;margin:0 4px;text-decoration:none;display:flex;position:relative}.sidebar__item:hover{color:var(--text-0);border-radius:var(--radius-md);background:0 0}.sidebar__item:focus-visible{border-radius:var(--radius-md);background:0 0;outline:none}.sidebar__item.is-active{color:var(--text-0);border-radius:var(--radius-md);background:0 0}.sidebar__item-icon{opacity:.8;flex-shrink:0;width:16px;height:16px}.sidebar__item.is-active .sidebar__item-icon{opacity:1}.sidebar__item-label{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.sidebar__footer{padding:var(--space-2);gap:var(--space-2);border-top:1px solid var(--stroke-0);flex-direction:row;flex-shrink:0;display:flex}.sidebar__footer-item{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);text-align:left;background:0 0;border:none;text-decoration:none;display:flex}.sidebar__footer-item:hover,.sidebar__footer-item.is-active{background:var(--bg-2);color:var(--text-0)}.sidebar__footer-item:focus-visible{box-shadow:var(--focus-ring);outline:none}.sidebar__footer-item svg{opacity:.8;flex-shrink:0;width:16px;height:16px}.sidebar__privacy-link{border-radius:var(--radius-md);width:32px;height:32px;color:var(--text-2);justify-content:center;align-items:center;text-decoration:none;transition:all .15s;display:flex}.sidebar__privacy-link:hover,.sidebar__privacy-link.active{color:var(--text-1);background:var(--bg-2)}.sidebar__privacy-link svg{width:16px;height:16px}.sidebar.is-collapsed{pointer-events:none;transform:translate(-100%)}.app-layout.sidebar-collapsed .main-area{margin-left:0}.sidebar-hover-zone{display:none}@media(min-width:769px){.sidebar-hover-zone{z-index:300;width:12px;height:100vh;display:block;position:fixed;top:0;left:0}.sidebar-hover-zone .sidebar--floating{left:0;top:var(--space-3);bottom:var(--space-3);width:var(--sidebar-width);background:var(--bg-0);border-radius:var(--radius-lg);border:1px solid var(--stroke-1);height:auto;transform:translate(calc(-100% - var(--space-3)));opacity:0;pointer-events:none;z-index:301;flex-direction:column;transition:transform .25s cubic-bezier(.4,0,.2,1),opacity .2s;display:flex;position:fixed;overflow:hidden;box-shadow:0 8px 32px #00000040,0 2px 8px #00000026}.sidebar-hover-zone:hover .sidebar--floating,.sidebar-hover-zone .sidebar--floating:hover{transform:translate(var(--space-3));opacity:1;pointer-events:auto}}.sidebar-floating-toolbar{bottom:var(--space-4);right:var(--space-4);padding:var(--space-1);background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);z-index:250;align-items:center;display:flex;position:fixed;box-shadow:0 4px 16px #0003}.sidebar-floating-toolbar__expanded{align-items:center;gap:var(--space-1);opacity:0;max-width:0;padding-right:0;transition:max-width .25s,opacity .2s,padding .25s;display:flex;overflow:hidden}.sidebar-floating-toolbar:hover .sidebar-floating-toolbar__expanded{opacity:1;max-width:100px;padding-right:var(--space-1)}.sidebar-floating-toolbar__toggle{flex-shrink:0}.history-entry{transition:all .15s}.history-entry:hover{background:var(--bg-2)!important;border-color:var(--stroke-2)!important}.main-area{margin-left:var(--sidebar-width);background:var(--bg-0);height:100dvh;max-height:100dvh;transition:margin-left var(--transition-base);flex-direction:column;flex:1;display:flex;overflow:hidden}.main-header{display:none}@media(max-width:768px){.main-header{padding:var(--space-2)var(--space-3);background:var(--bg-0);border-bottom:1px solid var(--stroke-0);z-index:100;justify-content:space-between;align-items:center;height:40px;min-height:40px;display:flex;position:sticky;top:0}.main-header__title{display:none}}.main-header__left{align-items:center;gap:var(--space-3);display:flex}.main-header__title{font-size:var(--text-lg);color:var(--text-0);font-weight:600}.main-header__actions{align-items:center;gap:var(--space-2);display:flex}.main-body{padding:var(--space-4);flex-direction:column;flex:1;align-items:stretch;min-height:0;display:flex;overflow:hidden}.content-container{background:var(--bg-0);border:1px solid var(--stroke-0);border-radius:var(--radius-lg);scrollbar-width:thin;scrollbar-color:var(--stroke-1)transparent;flex-direction:column;flex:auto;min-height:0;display:flex;overflow:hidden}.content-container::-webkit-scrollbar{width:6px;height:6px}.content-container::-webkit-scrollbar-thumb{background:var(--stroke-1);border-radius:var(--radius-full)}.content-container__inner{padding:var(--space-4);scrollbar-width:none;-ms-overflow-style:none;flex-direction:column;flex:auto;min-height:0;display:flex;overflow:hidden auto}.content-container__inner::-webkit-scrollbar{display:none}.page-view{height:100%;display:none;overflow:hidden}.page-view.is-active{flex-direction:column;flex:1;min-height:0;display:flex}.placeholder-page{max-width:600px;margin:var(--space-8)auto}.placeholder-page .ui-card{text-align:center;padding:var(--space-8)}.placeholder-page__icon{width:48px;height:48px;margin:0 auto var(--space-4);color:var(--text-2)}.placeholder-page__title{font-size:var(--text-xl);color:var(--text-0);margin-bottom:var(--space-2);font-weight:600}.placeholder-page__description{font-size:var(--text-sm);color:var(--text-1)}.not-found-page{min-height:60vh;padding:var(--space-8);justify-content:center;align-items:center;display:flex}.not-found-content{text-align:center;max-width:400px}.not-found-icon{color:var(--text-2);margin-bottom:var(--space-4)}.not-found-title{color:var(--text-0);margin-bottom:var(--space-2);font-size:72px;font-weight:700;line-height:1}.not-found-subtitle{font-size:var(--text-xl);color:var(--text-0);margin-bottom:var(--space-3);font-weight:600}.not-found-description{font-size:var(--text-sm);color:var(--text-1);margin-bottom:var(--space-6)}.not-found-btn{align-items:center;gap:var(--space-2);padding:var(--space-3)var(--space-5);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-md);color:var(--text-0);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast);font-weight:500;display:inline-flex}.not-found-btn:hover{background:var(--bg-3);border-color:var(--stroke-2)}.cmdk-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:3500;opacity:0;visibility:hidden;transition:opacity var(--transition-fast),visibility var(--transition-fast);background:#0009;justify-content:center;align-items:flex-start;padding-top:15vh;display:flex;position:fixed;inset:0}.cmdk-overlay.is-open{opacity:1;visibility:visible}.cmdk-modal{background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-xl);width:90%;max-width:560px;box-shadow:var(--shadow-lg);transition:transform var(--transition-base);overflow:hidden;transform:scale(.95)translateY(-10px)}.cmdk-overlay.is-open .cmdk-modal{transform:scale(1)translateY(0)}.cmdk-search{align-items:center;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--stroke-0);display:flex}.cmdk-search-icon{width:18px;height:18px;color:var(--text-2);flex-shrink:0}.cmdk-input{font-family:var(--font-sans);font-size:var(--text-md);color:var(--text-0);background:0 0;border:none;outline:none;flex:1}.cmdk-input::placeholder{color:var(--text-2)}.cmdk-shortcut{font-size:var(--text-xs);color:var(--text-2);background:var(--bg-2);border-radius:var(--radius-sm);border:1px solid var(--stroke-0);padding:2px 6px}.cmdk-results{max-height:320px;padding:var(--space-2);overflow-y:auto}.cmdk-group-title{padding:var(--space-2)var(--space-2);font-size:var(--text-xs);color:var(--text-2);text-transform:uppercase;letter-spacing:.5px;font-weight:500}.cmdk-item{align-items:center;gap:var(--space-3);padding:var(--space-2)var(--space-3);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast);display:flex}.cmdk-item:hover,.cmdk-item.is-selected{background:var(--bg-2)}.cmdk-item-icon{width:16px;height:16px;color:var(--text-1)}.cmdk-item-label{font-size:var(--text-sm);color:var(--text-0);flex:1}.cmdk-item-hint{font-size:var(--text-xs);color:var(--text-2)}.cmdk-footer{align-items:center;gap:var(--space-4);padding:var(--space-3)var(--space-4);border-top:1px solid var(--stroke-0);font-size:var(--text-xs);color:var(--text-2);display:flex}.cmdk-footer kbd{background:var(--bg-2);border:1px solid var(--stroke-0);border-radius:var(--radius-xs);min-width:18px;height:18px;font-family:var(--font-sans);color:var(--text-1);justify-content:center;align-items:center;padding:0 4px;font-size:10px;display:inline-flex}.cmdk-no-results{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-6);color:var(--text-2);text-align:center;flex-direction:column;display:flex}.cmdk-no-results svg{opacity:.5}.cmdk-no-results p{font-size:var(--text-sm)}.cmdk-task--completed .cmdk-item-label{opacity:.6;text-decoration:line-through}.cmdk-task--high .cmdk-item-icon,.cmdk-task--urgent .cmdk-item-icon{color:var(--priority-high)}.cmdk-task--medium .cmdk-item-icon{color:var(--priority-medium)}.cmdk-task--low .cmdk-item-icon{color:var(--priority-low)}.task-modal-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:3000;background:#0009;justify-content:center;align-items:flex-start;padding-top:10vh;display:flex;position:fixed;inset:0;overflow-y:auto}.task-modal{background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);flex-direction:column;width:90%;max-width:560px;margin-bottom:10vh;display:flex;overflow:visible}@media(min-width:769px)and (max-width:1100px){.task-modal-overlay{padding-left:calc(var(--sidebar-width)/2)}.task-modal{max-width:500px}}@media(max-width:768px){.task-modal-overlay{align-items:flex-start;padding-top:0;padding-left:0;padding-right:0}.task-modal{border-radius:0;width:100%;max-width:100%;min-height:100dvh;margin-bottom:0}}.task-modal__header{padding:var(--space-3)var(--space-4);border-bottom:1px solid var(--stroke-0);background:var(--bg-1);border-radius:var(--radius-xl)var(--radius-xl)0 0;justify-content:space-between;align-items:center;display:flex}.task-modal__header-left{align-items:center;gap:var(--space-2);display:flex}.task-modal__type-label{font-size:var(--text-xs);color:var(--text-2);text-transform:uppercase;letter-spacing:.03em;font-weight:500}.task-modal__header-btn--danger:hover{color:#ef4444;background:#ef44441a}.task-modal__close svg{width:16px;height:16px}.task-modal__body{padding:var(--space-4);gap:var(--space-3);background:var(--bg-1);flex-direction:column;display:flex}.task-modal__title-input{font-family:var(--font-sans);font-size:var(--text-xl);padding:var(--space-2)0;color:var(--text-0);resize:none;width:100%;box-shadow:none;background:0 0;border:none;outline:none;font-weight:600;line-height:1.4}.task-modal__description{font-family:var(--font-sans);font-size:var(--text-sm);padding:var(--space-2)0;color:var(--text-1);resize:none;width:100%;min-height:80px;box-shadow:none;background:0 0;border:none;outline:none;line-height:1.6}.task-modal__description:focus,.task-modal__description:focus-visible{box-shadow:none;border:none;outline:none}.task-modal__description::placeholder{color:var(--text-2)}.task-modal__properties{gap:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--stroke-0);flex-wrap:wrap;display:flex}.task-chip{font-family:var(--font-sans);font-size:var(--text-xs);background:var(--bg-2);border:1px solid var(--stroke-0);border-radius:var(--radius-full);color:var(--text-1);cursor:pointer;-webkit-user-select:none;user-select:none;transition:all var(--transition-fast);align-items:center;gap:5px;padding:6px 10px;font-weight:500;line-height:1;display:inline-flex;position:relative}.task-chip:hover{background:var(--bg-3);border-color:var(--stroke-1);color:var(--text-0)}.task-chip svg{flex-shrink:0;width:12px;height:12px}.task-chip--has-value{background:var(--accent-2);color:var(--text-0);border-color:#6b72804d}.task-chip--status-backlog{background:var(--bg-2);color:var(--text-1)}.task-chip--status-todo{color:#3b82f6;background:#3b82f626;border-color:#3b82f64d}.task-chip--status-in-progress{color:#f59e0b;background:#f59e0b26;border-color:#f59e0b4d}.task-chip--status-done{color:#22c55e;background:#22c55e26;border-color:#22c55e4d}.task-chip--priority-low{color:#3b82f6;background:#3b82f626;border-color:#3b82f64d}.task-chip--priority-medium{color:#f59e0b;background:#f59e0b26;border-color:#f59e0b4d}.task-chip--priority-high{color:#ef4444;background:#ef444426;border-color:#ef44444d}.task-chip--priority-urgent{color:#ef4444;background:#ef444440;border-color:#ef444480}.chip-dropdown{background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);min-width:160px;box-shadow:var(--shadow-lg);padding:var(--space-1);z-index:100;opacity:0;visibility:hidden;transition:all var(--transition-fast);position:absolute;top:calc(100% + 4px);left:0;transform:translateY(-4px)}.chip-dropdown.is-open{opacity:1;visibility:visible;transform:translateY(0)}.chip-dropdown__item{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);font-size:var(--text-sm);color:var(--text-1);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);display:flex}.chip-dropdown__item:hover{background:var(--bg-3);color:var(--text-0)}.chip-dropdown__item.is-selected{background:var(--accent-2);color:var(--text-0)}.chip-dropdown__item svg{flex-shrink:0;width:14px;height:14px}.chip-dropdown__dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.chip-dropdown__date-input{width:100%;font-family:var(--font-sans);font-size:var(--text-sm);padding:var(--space-2);background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-md);color:var(--text-0);outline:none}.chip-dropdown__date-input:focus{border-color:var(--focus)}.chip-dropdown--attachments{min-width:220px;max-width:280px;padding:var(--space-2)}.chip-dropdown__attachments-list{max-height:150px;overflow-y:auto}.chip-dropdown__attachments-list:empty{display:none}.chip-dropdown__attachment-item{padding:var(--space-2);font-size:var(--text-xs);color:var(--text-1);background:var(--bg-1);border-radius:var(--radius-md);margin-bottom:var(--space-1);justify-content:space-between;align-items:center;display:flex}.chip-dropdown__attachment-item:last-child{margin-bottom:var(--space-2)}.chip-dropdown__attachment-name{text-overflow:ellipsis;white-space:nowrap;margin-right:var(--space-2);flex:1;overflow:hidden}.chip-dropdown__attachment-remove{color:var(--text-2);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:2px;font-size:14px;line-height:1}.chip-dropdown__attachment-remove:hover{color:var(--danger);background:#ef44441a}.chip-dropdown__add-btn{justify-content:center;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2)var(--space-3);font-size:var(--text-xs);color:var(--text-1);background:var(--bg-1);border:1px dashed var(--stroke-1);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);font-weight:500;display:flex}.chip-dropdown__add-btn:hover{background:var(--bg-3);border-color:var(--stroke-2);color:var(--text-0)}.chip-dropdown__add-btn svg{width:12px;height:12px}.chip-dropdown--notes{min-width:260px;max-width:320px;padding:0;overflow:hidden}.chip-dropdown__search{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);border-bottom:1px solid var(--stroke-0);background:var(--bg-1);display:flex}.chip-dropdown__search svg{color:var(--text-2);flex-shrink:0}.chip-dropdown__search-input{font-size:var(--text-sm);color:var(--text-0);background:0 0;border:none;outline:none;flex:1}.chip-dropdown__search-input::placeholder{color:var(--text-2)}.chip-dropdown__notes-list{max-height:180px;padding:var(--space-1);overflow-y:auto}.chip-dropdown__notes-list:empty:after{content:"No notes found";padding:var(--space-3);text-align:center;color:var(--text-2);font-size:var(--text-xs);display:block}.chip-dropdown__note-item{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);font-size:var(--text-sm);color:var(--text-1);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);display:flex}.chip-dropdown__note-item:hover{background:var(--bg-3);color:var(--text-0)}.chip-dropdown__note-item.is-linked{background:var(--accent-2);color:var(--text-0)}.chip-dropdown__note-item svg{width:14px;height:14px;color:var(--text-2);flex-shrink:0}.chip-dropdown__note-item.is-linked svg{color:var(--accent)}.chip-dropdown__note-title{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.chip-dropdown__linked-notes{border-top:1px solid var(--stroke-0);padding:var(--space-2);background:var(--bg-1)}.chip-dropdown__linked-notes:empty{display:none}.chip-dropdown__linked-header{font-size:var(--text-xs);color:var(--text-2);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-1);padding:0 var(--space-1);font-weight:500}.chip-dropdown__linked-item{padding:var(--space-1)var(--space-2);font-size:var(--text-xs);color:var(--text-1);background:var(--bg-2);border-radius:var(--radius-sm);margin-top:var(--space-1);justify-content:space-between;align-items:center;display:flex}.chip-dropdown__linked-item-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.chip-dropdown__linked-item-remove{color:var(--text-2);cursor:pointer;border-radius:var(--radius-sm);margin-left:var(--space-2);background:0 0;border:none;padding:2px;font-size:12px;line-height:1}.chip-dropdown__linked-item-remove:hover{color:var(--danger)}.input-popup-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:5000;opacity:0;visibility:hidden;transition:opacity var(--transition-base),visibility var(--transition-base);background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.input-popup-overlay.is-open{opacity:1;visibility:visible}.input-popup{background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);width:90%;max-width:400px;transition:transform var(--transition-base);transform:scale(.95)translateY(-10px)}.input-popup-overlay.is-open .input-popup{transform:scale(1)translateY(0)}.input-popup__header{padding:var(--space-3)var(--space-4);border-bottom:1px solid var(--stroke-0);justify-content:space-between;align-items:center;display:flex}.input-popup__title{font-size:var(--text-base);color:var(--text-0);margin:0;font-weight:600}.input-popup__close{color:var(--text-2);cursor:pointer;padding:var(--space-1);border-radius:var(--radius-md);transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.input-popup__close:hover{background:var(--bg-3);color:var(--text-0)}.input-popup__body{padding:var(--space-4)}.input-popup__message{font-size:var(--text-sm);color:var(--text-1);margin:0 0 var(--space-3)0;line-height:1.5}.input-popup__message:empty{display:none}.input-popup__fields{gap:var(--space-3);flex-direction:column;display:flex}.input-popup__field{gap:var(--space-1);flex-direction:column;display:flex}.input-popup__label{font-size:var(--text-xs);color:var(--text-2);text-transform:uppercase;letter-spacing:.05em;font-weight:500}.input-popup__input{width:100%;padding:var(--space-2)var(--space-3);font-size:var(--text-sm);font-family:var(--font-sans);color:var(--text-0);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-md);transition:border-color var(--transition-fast);outline:none}.input-popup__input:focus{border-color:var(--focus)}.input-popup__input::placeholder{color:var(--text-2)}.input-popup__footer{justify-content:flex-end;align-items:center;gap:var(--space-2);padding:var(--space-3)var(--space-4);border-top:1px solid var(--stroke-0);background:var(--bg-1);border-radius:0 0 var(--radius-xl)var(--radius-xl);display:flex}.input-popup-overlay[data-type=alert] .input-popup__footer #inputPopupCancelBtn{display:none}.calendar-picker{background:var(--bg-2);border-radius:var(--radius-lg);width:280px;padding:var(--space-3);-webkit-user-select:none;user-select:none}.calendar-picker__header{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;display:flex}.calendar-picker__month-year{font-size:var(--text-sm);color:var(--text-0);cursor:pointer;padding:var(--space-1)var(--space-2);border-radius:var(--radius-sm);font-weight:600;transition:background .15s}.calendar-picker__month-year:hover{background:var(--bg-3)}.calendar-picker__nav{gap:var(--space-1);display:flex}.calendar-picker__nav-btn{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-1);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:all .15s;display:flex}.calendar-picker__nav-btn:hover{background:var(--bg-3);color:var(--text-0)}.calendar-picker__nav-btn svg{width:16px;height:16px}.calendar-picker__weekdays{margin-bottom:var(--space-1);grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.calendar-picker__weekday{color:var(--text-3);text-transform:uppercase;text-align:center;padding:var(--space-1)0;font-size:10px;font-weight:600}.calendar-picker__days{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.calendar-picker__day{aspect-ratio:1;font-size:var(--text-xs);color:var(--text-1);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;font-weight:500;transition:all .15s;display:flex}.calendar-picker__day:hover:not(.calendar-picker__day--disabled):not(.calendar-picker__day--empty){background:var(--bg-3);color:var(--text-0)}.calendar-picker__day--today{background:var(--bg-3);color:var(--accent-0);font-weight:600}.calendar-picker__day--selected{background:var(--accent-0)!important;color:#fff!important}.calendar-picker__day--other-month{color:var(--text-3)}.calendar-picker__day--disabled{color:var(--text-3);opacity:.4;cursor:not-allowed}.calendar-picker__day--empty{visibility:hidden}.calendar-picker__shortcuts{gap:var(--space-1);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--stroke-0);flex-wrap:wrap;display:flex}.calendar-picker__shortcut{color:var(--text-2);background:var(--bg-3);border-radius:var(--radius-sm);padding:var(--space-1)var(--space-2);cursor:pointer;border:none;font-size:11px;font-weight:500;transition:all .15s}.calendar-picker__shortcut:hover,.calendar-picker__shortcut--active{background:var(--accent-0);color:#fff}.modal-date-picker-wrapper{position:relative}.modal-date-picker-wrapper .modal-input{cursor:pointer}.modal-date-picker-wrapper .calendar-picker{z-index:100;display:none;position:absolute;top:calc(100% + 4px);left:0;box-shadow:0 8px 32px #0006}.modal-date-picker-wrapper .calendar-picker.is-open{display:block}.calendar-picker__year-grid,.calendar-picker__month-grid{gap:var(--space-2);padding:var(--space-2)0;grid-template-columns:repeat(4,1fr);display:grid}.calendar-picker__year-btn,.calendar-picker__month-btn{padding:var(--space-2);font-size:var(--text-xs);color:var(--text-1);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;font-weight:500;transition:all .15s}.calendar-picker__year-btn:hover,.calendar-picker__month-btn:hover{background:var(--bg-3);color:var(--text-0)}.calendar-picker__year-btn--selected,.calendar-picker__month-btn--selected{background:var(--accent-0);color:#fff}.date-input-display{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-md);cursor:pointer;transition:all .15s;display:flex}.date-input-display:hover{border-color:var(--stroke-2)}.date-input-display:focus-within{border-color:var(--accent-0)}.date-input-display__icon{width:16px;height:16px;color:var(--text-2)}.date-input-display__text{font-size:var(--text-sm);color:var(--text-0);flex:1}.date-input-display__text--placeholder{color:var(--text-3)}.date-input-display__clear{width:16px;height:16px;color:var(--text-3);cursor:pointer;opacity:0;background:0 0;border:none;justify-content:center;align-items:center;transition:all .15s;display:flex}.date-input-display:hover .date-input-display__clear{opacity:1}.date-input-display__clear:hover{color:var(--text-0)}.task-modal__footer{padding:var(--space-3)var(--space-4);border-top:1px solid var(--stroke-0);background:var(--bg-1);border-radius:0 0 var(--radius-xl)var(--radius-xl);justify-content:space-between;align-items:center;display:flex}.task-modal__footer-left,.task-modal__footer-right{align-items:center;gap:var(--space-2);display:flex}.task-modal__header-right{align-items:center;gap:var(--space-1);display:flex}.task-modal__action-btn{border-radius:var(--radius-md);width:28px;height:28px;color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.task-modal__action-btn:hover{background:var(--bg-2);color:var(--text-0)}.task-modal__action-btn--danger:hover{color:#ef4444;background:#ef44441a}.task-modal__action-btn svg{width:16px;height:16px}.task-modal__section{margin-top:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--stroke-0)}.task-modal__section-header{align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--text-2);text-transform:uppercase;letter-spacing:.03em;margin-bottom:var(--space-2);font-weight:500;display:flex}.task-modal__section-header svg{color:var(--text-2)}.task-modal__attachments,.task-modal__linked-notes{gap:var(--space-2);margin-bottom:var(--space-2);flex-wrap:wrap;display:flex}.task-modal__attachment-item,.task-modal__note-item{align-items:center;gap:var(--space-2);padding:var(--space-1)var(--space-2);background:var(--bg-2);border:1px solid var(--stroke-0);border-radius:var(--radius-md);font-size:var(--text-xs);color:var(--text-1);display:flex}.task-modal__attachment-item:hover,.task-modal__note-item:hover{border-color:var(--stroke-1)}.task-modal__item-remove{width:16px;height:16px;color:var(--text-2);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.task-modal__item-remove:hover{color:#ef4444;background:#ef44441a}.task-modal__add-btn{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);border:1px dashed var(--stroke-1);border-radius:var(--radius-md);font-size:var(--text-xs);color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);background:0 0;display:inline-flex}.task-modal__add-btn:hover{background:var(--bg-2);border-color:var(--text-2);color:var(--text-1)}.task-modal__add-btn svg{width:14px;height:14px}.create-more-toggle{align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--text-2);cursor:pointer;-webkit-user-select:none;user-select:none;display:flex}.create-more-toggle input{width:14px;height:14px;accent-color:var(--accent-0);cursor:pointer}.create-more-toggle:hover{color:var(--text-1)}.chip-dropdown--labels{min-width:200px;max-height:240px;overflow-y:auto}.chip-dropdown__label-item{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);font-size:var(--text-sm);color:var(--text-1);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);display:flex}.chip-dropdown__label-item:hover{background:var(--bg-3);color:var(--text-0)}.chip-dropdown__label-check{border:1px solid var(--stroke-2);width:14px;height:14px;transition:all var(--transition-fast);border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.chip-dropdown__label-item.is-selected .chip-dropdown__label-check{background:var(--accent-0);border-color:var(--accent-0)}.chip-dropdown__label-item.is-selected .chip-dropdown__label-check svg{color:#fff}.chip-dropdown__label-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.create-modal-overlay{display:none}.tasks-page{flex-direction:column;height:100%;min-height:0;display:flex}.tasks-filter-bar{align-items:center;gap:var(--space-3);padding:var(--space-3)var(--space-4);border-bottom:1px solid var(--stroke-0);flex-wrap:wrap;display:flex}.tasks-search{flex:1;min-width:200px;max-width:320px;position:relative}.tasks-search__input{width:100%;font-family:var(--font-sans);font-size:var(--text-sm);padding:var(--space-2)var(--space-3);background:var(--bg-2);border:1px solid var(--stroke-0);border-radius:var(--radius-md);color:var(--text-0);transition:border-color var(--transition-fast);outline:none;padding-left:32px}.tasks-search__input:focus{border-color:var(--focus)}.tasks-search__input::placeholder{color:var(--text-2)}.tasks-search__icon{width:14px;height:14px;color:var(--text-2);pointer-events:none;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.tasks-filters{align-items:center;gap:var(--space-2);display:flex}.filter-chip{font-family:var(--font-sans);font-size:var(--text-xs);background:var(--bg-2);border:1px solid var(--stroke-0);border-radius:var(--radius-full);color:var(--text-1);cursor:pointer;-webkit-user-select:none;user-select:none;transition:all var(--transition-fast);align-items:center;gap:4px;padding:5px 10px;font-weight:500;display:inline-flex;position:relative}.filter-chip:hover{background:var(--bg-3);border-color:var(--stroke-1);color:var(--text-0)}.filter-chip.is-active{background:var(--accent-2);color:var(--text-0);border-color:#6b72804d}.filter-chip svg{width:12px;height:12px}.filter-dropdown{background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);min-width:140px;box-shadow:var(--shadow-lg);padding:var(--space-1);z-index:100;opacity:0;visibility:hidden;transition:all var(--transition-fast);position:absolute;top:calc(100% + 4px);left:0;transform:translateY(-4px)}.filter-dropdown.is-open{opacity:1;visibility:visible;transform:translateY(0)}.filter-dropdown__item{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);font-size:var(--text-sm);color:var(--text-1);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);display:flex}.filter-dropdown__item:hover{background:var(--bg-3);color:var(--text-0)}.filter-dropdown__item.is-selected{background:var(--accent-2);color:var(--text-0)}.filter-dropdown--wide{min-width:180px}.filter-dropdown__section{padding:var(--space-1)0}.filter-dropdown__header{padding:var(--space-1)var(--space-3);color:var(--text-3);text-transform:uppercase;letter-spacing:.05em;font-size:10px;font-weight:600}.filter-dropdown__divider{background:var(--stroke-0);height:1px;margin:var(--space-1)0}.filter-chip__chevron{width:12px;height:12px;transition:transform .15s}.filter-chip.is-open .filter-chip__chevron{transform:rotate(180deg)}.filter-chip.is-open .filter-dropdown{opacity:1;visibility:visible;transform:translateY(0)}.tasks-search__clear{background:var(--bg-3);border-radius:var(--radius-full);width:20px;height:20px;color:var(--text-2);cursor:pointer;border:none;justify-content:center;align-items:center;transition:all .15s;display:none;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.tasks-search__clear:hover{background:var(--stroke-1);color:var(--text-0)}.tasks-search__clear svg{width:12px;height:12px}.tasks-search--has-value .tasks-search__clear{display:flex}.tasks-search--has-value .tasks-search__input{padding-right:32px}.filter-clear-btn{align-items:center;gap:var(--space-1);font-family:var(--font-sans);font-size:var(--text-xs);color:var(--text-2);border-radius:var(--radius-full);cursor:pointer;background:0 0;border:1px solid #0000;padding:5px 10px;font-weight:500;transition:all .15s;display:none}.filter-clear-btn:hover{color:var(--danger);background:#ef44441a}.filter-clear-btn svg{width:12px;height:12px}.filter-clear-btn.is-visible{display:flex}.tasks-list-container{padding:var(--space-2)0;flex:1;overflow-y:auto}.task-row{align-items:center;gap:var(--space-3);padding:var(--space-2)var(--space-4);border-bottom:1px solid var(--stroke-0);cursor:pointer;transition:background var(--transition-fast);display:flex}.task-row:hover{background:var(--bg-2)}.task-row.is-selected,.task-row.task-row--selected{background:var(--accent-muted)}.task-row__select{flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.task-row__checkbox{border:1.5px solid var(--stroke-1);width:18px;height:18px;transition:all var(--transition-fast);cursor:pointer;background:0 0;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.task-row:hover .task-row__checkbox{border-color:var(--stroke-2)}.task-row__checkbox:hover{border-color:var(--accent-0)}.task-row.is-selected .task-row__checkbox,.task-row.task-row--selected .task-row__checkbox,.task-row__checkbox--checked{background:var(--accent-0);border-color:var(--accent-0)}.task-row__checkbox svg{color:#fff;width:12px;height:12px}.task-row__checkbox--checked svg{display:block}.task-row__content{gap:var(--space-1);flex-direction:column;flex:1;min-width:0;display:flex}.task-row__meta{align-items:center;gap:var(--space-1);flex-wrap:wrap;display:flex}.task-row__title{font-size:var(--text-sm);color:var(--text-0);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-weight:500;overflow:hidden}.task-row.is-completed .task-row__title{color:var(--text-2);text-decoration:line-through}.task-row__props{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.task-mini-chip{font-size:var(--text-xs);border-radius:var(--radius-sm);white-space:nowrap;align-items:center;gap:3px;padding:2px 6px;font-weight:500;display:inline-flex}.task-mini-chip--date{background:var(--bg-3);color:var(--text-1)}.task-mini-chip--date.is-overdue{background:var(--danger-muted);color:var(--danger)}.task-mini-chip--date.is-today{background:var(--info-muted);color:var(--info)}.task-mini-chip--priority-low{color:#3b82f6;background:#3b82f626}.task-mini-chip--priority-medium{color:#f59e0b;background:#f59e0b26}.task-mini-chip--priority-high{color:#ef4444;background:#ef444426}.task-mini-chip--priority-urgent{color:#ef4444;background:#ef444440}.task-mini-chip--status-backlog{background:var(--bg-3);color:var(--text-2)}.task-mini-chip--status-todo{color:#3b82f6;background:#3b82f626}.task-mini-chip--status-in-progress{color:#f59e0b;background:#f59e0b26}.task-mini-chip--status-done{color:#22c55e;background:#22c55e26}.task-mini-chip--not-started{background:var(--bg-3);color:var(--text-2)}.task-mini-chip--in-progress{color:#3b82f6;background:#3b82f626}.task-mini-chip--completed{color:#22c55e;background:#22c55e26}.task-mini-chip--urgent{color:#ef4444;background:#ef444440}.task-mini-chip--high{color:#f97316;background:#f9731626}.task-mini-chip--medium{color:#eab308;background:#eab30826}.task-mini-chip--low{color:#22c55e;background:#22c55e26}.task-mini-chip--label{background:var(--bg-3);color:var(--text-1)}.task-row__date{font-size:var(--text-xs);color:var(--text-2);white-space:nowrap;flex-shrink:0}.bulk-bar{bottom:var(--space-4);align-items:center;gap:var(--space-3);padding:var(--space-3)var(--space-4);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);z-index:500;opacity:0;visibility:hidden;transition:all var(--transition-base);display:flex;position:fixed;left:50%;transform:translate(-50%)translateY(100px)}.bulk-bar--visible{opacity:1;visibility:visible;transform:translate(-50%)translateY(0)}.bulk-bar__left{align-items:center;gap:var(--space-2);padding-right:var(--space-3);border-right:1px solid var(--stroke-1);display:flex}.bulk-bar__count{font-size:var(--text-sm);color:var(--text-0);font-weight:500}.bulk-bar__actions{align-items:center;gap:var(--space-2);display:flex}.bulk-bar__btn{font-family:var(--font-sans);font-size:var(--text-xs);border-radius:var(--radius-md);color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:1px solid #0000;align-items:center;gap:4px;padding:6px 10px;font-weight:500;display:inline-flex}.bulk-bar__btn:hover{background:var(--bg-3);color:var(--text-0)}.bulk-bar__btn svg{width:14px;height:14px}.bulk-bar__btn--danger:hover{background:var(--danger-muted);color:var(--danger)}.bulk-bar__action{font-family:var(--font-sans);font-size:var(--text-xs);border-radius:var(--radius-md);color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:1px solid #0000;align-items:center;gap:4px;padding:6px 10px;font-weight:500;display:inline-flex;position:relative}.bulk-bar__action:hover{background:var(--bg-3);color:var(--text-0)}.bulk-bar__action svg{width:14px;height:14px}.bulk-bar__action--danger:hover{background:var(--danger-muted);color:var(--danger)}.bulk-dropdown{background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);min-width:140px;padding:var(--space-1);box-shadow:var(--shadow-lg);opacity:0;visibility:hidden;transition:all var(--transition-fast);z-index:510;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.bulk-bar__action--open .bulk-dropdown{opacity:1;visibility:visible}.bulk-dropdown__item{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);font-size:var(--text-sm);color:var(--text-1);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);display:flex}.bulk-dropdown__item:hover{background:var(--bg-3);color:var(--text-0)}.bulk-dropdown__input{width:100%;padding:var(--space-2)var(--space-3);margin-bottom:var(--space-1);background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--text-0);outline:none}.bulk-dropdown__input:focus{border-color:var(--accent-1)}.bulk-dropdown__date{width:100%;padding:var(--space-2)var(--space-3);margin-bottom:var(--space-1);background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--text-0);color-scheme:dark;outline:none}.bulk-dropdown__date:focus{border-color:var(--accent-1)}.bulk-bar__close{border-radius:var(--radius-md);width:24px;height:24px;color:var(--text-2);cursor:pointer;margin-left:var(--space-2);transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.bulk-bar__close:hover{background:var(--bg-3);color:var(--text-0)}.bulk-bar__close svg{width:14px;height:14px}.tasks-empty{padding:var(--space-8)var(--space-4);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.tasks-empty svg{width:48px;height:48px;color:var(--text-2);margin-bottom:var(--space-4);flex-shrink:0}.tasks-empty p{font-size:var(--text-md);color:var(--text-0);margin:0 0 var(--space-2)0;font-weight:600}.tasks-empty span{font-size:var(--text-sm);color:var(--text-2)}.tasks-empty__icon{width:48px;height:48px;color:var(--text-2);margin-bottom:var(--space-4)}.tasks-empty__title{font-size:var(--text-md);color:var(--text-0);margin-bottom:var(--space-2);font-weight:600}.tasks-empty__desc{font-size:var(--text-sm);color:var(--text-2)}.sidebar-overlay,.mobile-menu-btn{display:none}@media(max-width:768px){.sidebar{transition:transform var(--transition-base);transform:translate(-100%)}.app-layout.sidebar-open .sidebar{transform:translate(0)}.main-area{width:100%;margin-left:0}.sidebar-overlay{z-index:199;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000080;display:block;position:fixed;inset:0}.mobile-menu-btn{border-radius:var(--radius-md);width:36px;height:36px;color:var(--text-1);cursor:pointer;margin-right:var(--space-2);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.mobile-menu-btn:hover{background:var(--bg-2);color:var(--text-0)}.mobile-menu-btn svg{width:20px;height:20px}.main-header__title{font-size:var(--text-lg)}.sidebar__actions .sidebar__ctrl-btn:first-child{display:none}.sidebar__actions{gap:var(--space-2);margin-right:0}}#originalViews .header,#originalViews .tab-bar,#originalViews .day-picker,#originalViews .mobile-bottom-nav,#originalViews .mobile-view-selector,#originalViews .mobile-schedule,#originalViews .mobile-more-panel,#originalViews .mobile-controls-dropdown{display:none!important}#originalViews .desktop-views{max-width:none;height:auto;max-height:none;margin:0;padding:0;display:block}#originalViews .desktop-views .view{max-height:calc(100vh - 140px);padding:0}#pageViews{display:none}body.signed-out{overflow:hidden}.auth-screen{background:var(--bg);z-index:4000;justify-content:center;align-items:center;display:none;position:fixed;inset:0}body.signed-out .auth-screen{display:flex}body.signed-out .app-shell{display:none}.app-shell{flex-direction:column;min-height:100vh;padding:0;display:flex}.app-shell.auth-pending{visibility:hidden;opacity:0}.app-shell.auth-ready{visibility:visible;opacity:1;transition:opacity .2s}.header{background:var(--bg);border-bottom:1px solid var(--border);z-index:100;min-height:var(--header-height);justify-content:space-between;align-items:center;padding:8px 16px;display:flex;position:sticky;top:0}.header-left{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.header-center{flex:2;justify-content:center;max-width:320px;display:flex}.header-right,.header-actions{flex:1;justify-content:flex-end;align-items:center;gap:6px;display:flex}.header-title{font-weight:600;font-size:var(--text-md);color:var(--text);letter-spacing:-.01em}.back-btn,.settings-btn,.mobile-header-btn{color:var(--text-secondary);border-radius:var(--radius-md);cursor:pointer;width:28px;height:28px;transition:all var(--transition-base);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:flex}.back-btn:hover,.settings-btn:hover,.mobile-header-btn:hover{background:var(--bg-hover);color:var(--text)}.back-btn:active,.settings-btn:active,.mobile-header-btn:active{transform:scale(.95)}.mobile-header-btn.active{background:var(--accent-muted);color:var(--accent)}.back-btn svg,.settings-btn svg,.mobile-header-btn svg{width:16px;height:16px}.action-bar-compact{font-size:var(--text-xs);color:var(--text-muted);background:var(--bg-elevated);border-radius:var(--radius-full);border:1px solid var(--border);align-items:center;gap:6px;padding:4px 10px;display:flex}.ab-item{align-items:center;gap:3px;display:flex}.ab-dot{color:var(--border-strong);font-size:8px}.web-search-form{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);width:100%;transition:all var(--transition-base);align-items:center;gap:8px;padding:6px 12px;display:flex}.web-search-form:focus-within{border-color:var(--accent);background:var(--bg-hover)}.web-search-form svg{color:var(--text-muted);flex-shrink:0;width:14px;height:14px}.web-search-input{color:var(--text);font-size:var(--text-sm);background:0 0;border:none;outline:none;width:100%}.web-search-input::placeholder{color:var(--text-muted)}@media(max-width:640px){.header-center{display:none}}.timer-toolbar{border-radius:var(--radius-full);border:1px solid var(--accent-muted);background:var(--accent-muted);color:var(--text);font-size:var(--text-xs);cursor:pointer;transition:all var(--transition-base);align-items:center;gap:6px;padding:6px 12px;font-weight:500;display:inline-flex}.timer-toolbar.is-hidden{display:none}.timer-toolbar:hover{background:#f2665933}.timer-toolbar:active{transform:scale(.95)}.timer-toolbar-label{color:var(--accent);font-weight:600}.timer-toolbar-time{font-variant-numeric:tabular-nums}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.day-picker{background:var(--bg);border-bottom:1px solid var(--border);width:100%;padding:12px 0}.day-picker-header{justify-content:space-between;align-items:center;padding:0 16px 10px;display:flex}.day-picker-nav{align-items:center;gap:8px;display:flex}.day-picker-nav button{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-md);font-size:var(--text-xs);transition:all var(--transition-base);padding:6px 12px;font-weight:500}.day-picker-nav button:hover{background:var(--bg-hover)}.week-nav-btn{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-muted);cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-base);align-items:center;padding:6px;display:flex}.day-picker-days{grid-template-columns:repeat(7,1fr);gap:6px;padding:0 12px;display:grid}.day-picker-day{cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-base);flex-direction:column;align-items:center;padding:8px 4px;display:flex;position:relative}.day-picker-day:hover{background:var(--bg-hover)}.day-picker-day:active{transform:scale(.95)}.day-picker-day.active{background:var(--accent);box-shadow:0 2px 8px #f266594d}.day-picker-day.active .day-letter,.day-picker-day.active .day-date{color:#fff}.day-picker-day.today:not(.active):after{content:"";background:var(--accent);border-radius:var(--radius-full);width:4px;height:4px;position:absolute;bottom:4px}.day-picker-day.today .day-date{color:var(--accent);font-weight:600}.day-picker-day.active.today .day-date{color:#fff}.day-letter{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px;font-size:9px;font-weight:500}.day-date{color:var(--text);font-size:14px;font-weight:600}.tab-bar{background:var(--bg);border-bottom:1px solid var(--border);max-width:var(--max-content-width);align-items:center;gap:4px;width:100%;margin:0 auto;padding:6px 16px;display:none}@media(min-width:769px){.tab-bar{display:flex}.header{border-bottom:1px solid var(--border)}}.tab-btn{color:var(--text-secondary);cursor:pointer;font-size:var(--text-sm);border-radius:var(--radius-md);transition:all var(--transition-base);background:0 0;border:none;padding:8px 14px;font-weight:500}.tab-btn:hover,.tab-btn.active{color:var(--text);background:var(--bg-hover)}.tab-spacer{flex:1}.tab-controls{align-items:center;gap:6px;display:flex}.search-bar-inline{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);align-items:center;gap:6px;padding:4px 10px;display:flex}.search-bar-inline svg{color:var(--text-muted);flex-shrink:0;width:12px;height:12px}.search-input-inline{color:var(--text);font-size:var(--text-sm);background:0 0;border:none;outline:none;flex:1;width:120px}.search-input-inline::placeholder{color:var(--text-muted)}.smart-search-bar{width:180px;transition:width var(--transition-base);position:relative}.smart-search-bar:focus-within{width:240px}.search-mode-toggle{cursor:pointer;color:var(--text-muted);border-radius:var(--radius-sm);transition:all var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:4px;display:flex}.search-mode-toggle:hover{color:var(--text);background:var(--bg-hover)}.search-mode-toggle .mode-icon{display:none}.search-mode-toggle .mode-add{color:var(--accent);display:block}.search-mode-toggle.search-mode .mode-add{display:none}.search-mode-toggle.search-mode .mode-search{display:block}.smart-voice-btn{cursor:pointer;color:var(--text-muted);border-radius:var(--radius-sm);transition:all var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:4px;display:flex}.smart-voice-btn:hover{color:var(--text);background:var(--bg-hover)}.smart-voice-btn.recording{color:#ef4444;animation:1s infinite pulse-recording}@keyframes pulse-recording{0%,to{opacity:1}50%{opacity:.5}}.smart-search-hint{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--text-xs);color:var(--text-secondary);opacity:0;visibility:hidden;transition:all var(--transition-fast);z-index:100;white-space:nowrap;box-shadow:var(--shadow-md);padding:6px 10px;position:absolute;top:calc(100% + 4px);left:0;right:0;transform:translateY(-2px)}.smart-search-hint.visible{opacity:1;visibility:visible;transform:translateY(0)}.filter-dropdown-wrapper{position:relative}.filter-dropdown-btn{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-secondary);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-xs);transition:all var(--transition-base);align-items:center;gap:6px;padding:6px 10px;font-weight:500;display:flex}.filter-dropdown-btn:hover{background:var(--bg-hover)}.filter-dropdown-btn.active{background:var(--accent-muted);border-color:var(--accent);color:var(--accent)}.filter-dropdown-menu{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:1000;min-width:160px;padding:4px;animation:.15s dropdownFadeIn;display:none;position:absolute;top:calc(100% + 4px);left:0}@keyframes dropdownFadeIn{0%{opacity:0;transform:translate(-50%)translateY(4px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.filter-dropdown-menu.open{display:block}.filter-dropdown-item{cursor:pointer;font-size:var(--text-sm);color:var(--text-secondary);border-radius:var(--radius-md);transition:all var(--transition-base);align-items:center;gap:8px;padding:8px 10px;font-weight:500;display:flex}.filter-dropdown-item:hover{background:var(--bg-hover);color:var(--text)}.filter-dropdown-item input[type=checkbox]{width:14px;height:14px;accent-color:var(--accent);cursor:pointer}.filter-dropdown-item svg{color:var(--text-muted);flex-shrink:0;width:12px;height:12px}.date-dropdown-menu{background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:10000;min-width:180px;padding:4px;animation:.15s dropdownFadeIn;display:none;position:fixed}.date-dropdown-menu.active{display:block}.date-dropdown-item{cursor:pointer;font-size:var(--text-sm);color:var(--text-1);border-radius:var(--radius-md);transition:all var(--transition-base);align-items:center;gap:10px;padding:8px 12px;font-weight:500;display:flex}.date-dropdown-item:hover{background:var(--bg-3);color:var(--text-0)}.date-dropdown-item.is-disabled{opacity:.4;pointer-events:none;cursor:not-allowed}.date-dropdown-item svg{flex-shrink:0;width:16px;height:16px}.date-dropdown-divider{background:var(--stroke-0);height:1px;margin:4px 0}.edit-mode-btn{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-secondary);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);justify-content:center;align-items:center;padding:6px;display:flex}.edit-mode-btn:hover{background:var(--bg-hover);color:var(--text)}.edit-mode-btn.active{background:var(--accent-muted);border-color:var(--accent);color:var(--accent)}.edit-mode-btn svg{width:12px;height:12px}.add-btn-inline{background:var(--bg-hover);border:1px solid var(--border);color:var(--text);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-xs);transition:all var(--transition-base);align-items:center;gap:4px;padding:6px 12px;font-weight:500;display:flex}.add-btn-inline:hover{background:var(--border)}.add-btn-inline svg{width:12px;height:12px}.mobile-controls-dropdown{top:calc(var(--header-height) + 8px);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:150;flex-direction:column;gap:8px;min-width:220px;padding:8px;display:none;position:fixed;right:8px}.mobile-controls-dropdown.open{display:flex}.mobile-dropdown-row{gap:6px;display:flex}.mobile-dropdown-actions{justify-content:flex-end}.search-bar-mobile{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);flex:1;align-items:center;gap:8px;padding:6px 10px;display:flex}.search-bar-mobile svg{color:var(--text-muted);width:14px;height:14px}.search-input-mobile{color:var(--text);font-size:var(--text-sm);background:0 0;border:none;outline:none;flex:1}.main-content{max-width:var(--max-content-width);flex:1;width:100%;margin:0 auto;padding:16px}.mobile-schedule{padding:0 16px}.schedule-container{max-width:var(--max-content-width);margin:0 auto}.schedule-view{flex-direction:column;gap:12px;display:flex}.task-list{flex-direction:column;display:flex}.tasks-loading-state{color:var(--text-2);font-size:var(--text-sm);justify-content:center;align-items:center;gap:12px;padding:40px 20px;display:flex}.tasks-loading-spinner{border:2px solid var(--stroke-1);border-top-color:var(--accent-0);border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin}.task-item{border-radius:var(--radius-md);transition:all var(--transition-base);cursor:pointer;border-bottom:1px solid var(--border-light);align-items:center;gap:10px;padding:10px 12px;display:flex}.task-item:last-child{border-bottom:none}.task-item:hover{background:var(--bg-hover)}.task-item.completed{opacity:.5}.task-item.completed .task-text{color:var(--text-muted);text-decoration:line-through}.task-checkbox{border-radius:var(--radius-sm);border:1.5px solid var(--border-strong);cursor:pointer;width:16px;height:16px;transition:all var(--transition-base);background:0 0;flex-shrink:0;justify-content:center;align-items:center;display:flex}.task-checkbox:hover{border-color:var(--accent);background:var(--accent-muted)}.task-checkbox.checked{background:var(--status-completed);border-color:var(--status-completed)}.task-checkbox.checked svg{color:#fff;width:10px;height:10px}.task-strikethrough-btn{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--text-3);cursor:pointer;opacity:0;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;transition:all .15s;display:flex}.task-item:hover .task-strikethrough-btn{opacity:1}.task-strikethrough-btn:hover{background:var(--bg-3);color:var(--text-0)}.task-strikethrough-btn svg{width:14px;height:14px}.task-strikethrough-btn.is-struck{color:var(--success);opacity:1}.task-strikethrough-btn.is-struck:hover{color:var(--text-0)}.task-item.completed .task-name{color:var(--text-3);text-decoration:line-through}.task-item.completed .task-meta{opacity:.5}.task-delete-btn{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--text-3);cursor:pointer;opacity:0;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;transition:all .15s;display:flex}.task-item:hover .task-delete-btn{opacity:1}.task-delete-btn:hover{color:#ef4444;background:#ef44441a}.task-content{flex:1;min-width:0}.task-text{font-size:var(--text-md);color:var(--text);margin-bottom:2px;font-weight:500}.task-meta{font-size:var(--text-xs);color:var(--text-muted);align-items:center;gap:8px;display:flex}.task-time{align-items:center;gap:3px;display:flex}.task-priority-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.task-priority-dot.high{background:var(--priority-high)}.task-priority-dot.medium{background:var(--priority-medium)}.task-priority-dot.low{background:var(--priority-low)}.mini-tag{border-radius:var(--radius-sm);background:var(--surface-alt);color:var(--text-muted);flex-shrink:0;justify-content:center;align-items:center;padding:2px 4px;font-size:9px;line-height:1;display:inline-flex}.mini-tag svg{width:10px;height:10px}.location-tag{background:var(--primary-bg);color:var(--primary)}.task-color-indicator{border-radius:var(--radius-full);flex-shrink:0;width:3px;height:100%;margin-right:6px}.desktop-views{max-width:var(--max-content-width);flex-direction:column;flex:1;min-height:0;margin:0 auto;padding:16px;display:none;overflow:hidden}@media(min-width:769px){.desktop-views{display:flex}.mobile-schedule,.day-picker{display:none}}.view{flex-direction:column;flex:1;min-height:0;display:none;overflow:hidden}.view.active{flex-direction:column;display:flex}.week-header{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;padding:0;display:flex}.week-header__left{align-items:center;gap:var(--space-2);display:flex}.week-header__title{font-size:var(--text-lg);color:var(--text-0);margin:0;font-weight:600}.week-header__year{font-weight:700}.week-header__today{border:1px solid var(--stroke-1);border-radius:var(--radius-sm);font-family:var(--font-sans);color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);background:0 0;padding:4px 10px;font-size:11px;font-weight:500}.week-header__today:hover{background:var(--bg-2);color:var(--text-0)}.week-header__right{align-items:center;gap:var(--space-2);display:flex}.week-header__nav{align-items:center;gap:2px;display:flex}.chip-filter-wrapper{position:relative}.week-header__filter-btn{border:1px solid var(--stroke-0);border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);background:0 0;justify-content:center;align-items:center;padding:0;display:flex}.week-header__filter-btn:hover,.week-header__filter-btn.active{background:var(--bg-2);border-color:var(--stroke-1);color:var(--text-0)}.chip-filter-dropdown{background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-md);z-index:100;min-width:140px;padding:6px;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 4px 12px #00000040}.chip-filter-dropdown__title{color:var(--text-3);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--stroke-0);margin-bottom:4px;padding:4px 8px 6px;font-size:10px;font-weight:600}.chip-filter-dropdown__item{border-radius:var(--radius-sm);width:100%;font-family:var(--font-sans);color:var(--text-1);cursor:pointer;transition:background var(--transition-fast);text-align:left;background:0 0;border:none;align-items:center;gap:8px;padding:6px 8px;font-size:12px;display:flex}.chip-filter-dropdown__item:hover{background:var(--bg-2)}.chip-filter-dropdown__check{border:1px solid var(--stroke-1);width:14px;height:14px;color:var(--accent-0);border-radius:3px;justify-content:center;align-items:center;display:flex}.week-nav-btn{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.week-nav-btn:hover{background:var(--bg-2);color:var(--text-0)}.week-nav-btn svg{width:16px;height:16px}.week-spans{margin-bottom:8px;padding:0 1px}.week-spans__grid{grid-template-columns:repeat(7,1fr);gap:4px;padding:4px 0;display:grid}.week-span-task{border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);text-align:left;border:none;align-items:center;gap:8px;padding:6px 10px;display:flex;overflow:hidden}.week-span-task:hover{filter:brightness(1.1);transform:translateY(-1px)}.week-span-task__text{color:#fff;white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:12px;font-weight:500;overflow:hidden}.week-span-task__time{color:#fffc;flex-shrink:0;font-size:10px}.week-grid{background:var(--stroke-0);border-radius:var(--radius-lg);border:1px solid var(--stroke-1);flex:1;grid-template-columns:repeat(7,1fr);gap:1px;min-height:0;display:grid;overflow:hidden}.day-column{background:var(--bg-1);transition:background var(--transition-fast);flex-direction:column;display:flex;overflow:hidden}.day-column.is-dragover{background:var(--accent-0)}@supports (color:color-mix(in lab,red,red)){.day-column.is-dragover{background:color-mix(in srgb,var(--accent-0)12%,var(--bg-1))}}.day-column.is-dragover{box-shadow:inset 0 0 0 2px var(--accent-0)}.day-column.is-dragover .day-column__header{background:var(--accent-0)}@supports (color:color-mix(in lab,red,red)){.day-column.is-dragover .day-column__header{background:color-mix(in srgb,var(--accent-0)20%,var(--bg-2))}}.day-column.is-dragover .day-column__tasks{background:var(--accent-0)}@supports (color:color-mix(in lab,red,red)){.day-column.is-dragover .day-column__tasks{background:color-mix(in srgb,var(--accent-0)5%,transparent)}}.day-column__header{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-2);border-bottom:1px solid var(--stroke-0);background:var(--bg-2);flex-shrink:0;display:flex}.day-column__name{color:var(--text-2);text-transform:uppercase;letter-spacing:.04em;font-size:10px;font-weight:600}.day-column__date{font-size:var(--text-base);color:var(--text-0);font-weight:600}.day-column__date-btn{color:var(--text-0);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;padding:2px 6px;font-size:13px;font-weight:600}.day-column__date-btn:hover{background:var(--bg-3)}.day-column.is-today .day-column__date-btn{color:#fff;background:#ef4444;border-radius:6px}.day-column.is-today .day-column__date-btn:hover{background:var(--bg-3);color:var(--text-0)}.day-column__count{color:var(--text-3);margin-left:auto;font-size:9px;font-weight:500}.day-column__tasks-wrapper{flex-direction:column;flex:1;min-height:0;display:flex;position:relative;overflow:hidden}.day-column__tasks{padding:var(--space-2);-webkit-overflow-scrolling:touch;touch-action:pan-y;flex-direction:column;flex:1;gap:6px;min-height:0;display:flex;overflow-y:auto}.day-column__scroll-indicator{pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;bottom:4px;left:0;right:0}.day-column__scroll-indicator svg{color:var(--text-1);background:var(--bg-2);box-sizing:content-box;border-radius:50%;width:14px;height:14px;padding:4px;box-shadow:0 1px 3px #00000026}.day-column__spanning-tasks{z-index:10;flex-direction:column;gap:2px;margin-bottom:4px;margin-left:-4px;margin-right:-4px;display:flex;position:relative}.weekly-task--spanning{z-index:10;background:var(--task-color,var(--accent-0));cursor:pointer;box-sizing:border-box;border:none;border-radius:0;justify-content:flex-start;align-items:center;width:100%;height:22px;min-height:22px;margin-left:0;margin-right:0;padding:0 8px;display:flex;position:relative}.weekly-task--spanning .weekly-task__color-indicator{display:none}.weekly-task--spanning.is-start{border-radius:var(--radius-sm)0 0 var(--radius-sm);margin-left:4px;margin-right:0}.weekly-task--spanning.is-end{border-radius:0 var(--radius-sm)var(--radius-sm)0;margin-left:0;margin-right:4px}.weekly-task--spanning.is-middle{border-radius:0;margin-left:0;margin-right:0}.weekly-task--spanning.is-middle .weekly-task__title{opacity:0}.weekly-task--spanning .weekly-task__title{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:10px;font-weight:500;line-height:1;overflow:hidden}.weekly-task--spanning .weekly-task__content{align-items:center;min-width:0;height:100%;display:flex}.weekly-task--spanning:hover{filter:brightness(1.1)}.weekly-day{background:var(--bg-1);min-height:200px;transition:background var(--transition-fast);flex-direction:column;display:flex}.weekly-day--dragover{background:var(--accent-muted)}.weekly-day-header{text-align:center;padding:var(--space-3);border-bottom:1px solid var(--stroke-0);background:var(--bg-2);flex-shrink:0}.weekly-day-name{color:var(--text-2);text-transform:uppercase;letter-spacing:.06em;font-size:10px;font-weight:500}.weekly-day-date{font-size:var(--text-lg);color:var(--text-0);cursor:pointer;border-radius:var(--radius-full);width:28px;height:28px;transition:all var(--transition-fast);justify-content:center;align-items:center;margin-top:2px;font-weight:600;display:inline-flex}.weekly-day-date:hover{background:var(--bg-3)}.weekly-day--today .weekly-day-date{color:var(--accent-1);background:var(--accent-muted)}.weekly-day--today .weekly-day-date:hover{background:#6b728040}.weekly-day--today .weekly-day-header{background:var(--accent-muted)}.weekly-tasks{gap:var(--space-1);padding:var(--space-2);flex-direction:column;flex:1;min-height:100px;display:flex;overflow-y:auto}.weekly-task{background:var(--bg-2);border-radius:var(--radius-sm);cursor:grab;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;touch-action:manipulation;-webkit-touch-callout:none;border:1px solid #0000;flex-direction:row;align-items:center;gap:4px;min-height:24px;padding:4px 6px;display:flex;position:relative;overflow:hidden}.weekly-task__color-indicator{border-radius:var(--radius-xs)0 0 var(--radius-xs);width:2px;position:absolute;top:0;bottom:0;left:0}.weekly-task:hover{background:var(--bg-3);border-color:var(--stroke-1)}.weekly-task--dragging{opacity:.5;transform:scale(.98)}.weekly-task--completed{opacity:.6}.weekly-task__title{color:var(--text-0);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:11px;font-weight:500;line-height:1.3;overflow:hidden}.weekly-task--completed .weekly-task__title{color:var(--text-2);text-decoration:line-through}.weekly-task__content{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.weekly-task__title-row{align-items:center;gap:4px;min-width:0;padding-left:4px;display:flex}.weekly-task__time{color:var(--text-0);white-space:nowrap;flex-shrink:0;font-size:11px;font-weight:500}.weekly-task__range{color:var(--text-3);flex-shrink:0;align-items:center;gap:2px;margin-left:auto;font-size:9px;display:inline-flex}.weekly-task__range svg{opacity:.7;width:8px;height:8px}.weekly-task__tags{flex-wrap:wrap;gap:2px;padding-left:4px;display:flex}.weekly-task__tag{background:var(--bg-3);color:var(--text-2);border-radius:var(--radius-full);padding:1px 4px;font-size:8px;font-weight:500}.weekly-task.has-range{position:relative}.weekly-task.has-range:after{content:"";background:var(--accent-0);border-radius:50%;width:4px;height:4px;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.weekly-task__chips{flex-wrap:nowrap;flex-shrink:0;align-items:center;gap:2px;display:flex}.weekly-task__chip{border-radius:var(--radius-xs);background:var(--bg-3);width:14px;height:14px;color:var(--text-2);justify-content:center;align-items:center;display:inline-flex}.weekly-task__chip svg{width:9px;height:9px}.weekly-task__chip.chip--tag{border-radius:var(--radius-full);width:auto;height:14px;padding:1px 4px;font-size:8px;font-weight:500}.weekly-task__chip.chip--priority-urgent{background:var(--danger-muted);color:var(--danger)}.weekly-task__chip.chip--priority-high{color:#f97316;background:#f9731626}.weekly-task__chip.chip--priority-medium{color:#eab308;background:#eab30826}.weekly-task__chip.chip--priority-low,.weekly-task__chip.chip--status-completed{color:#22c55e;background:#22c55e26}.weekly-task__chip.chip--status-in-progress{color:#3b82f6;background:#3b82f626}.weekly-task__chip.chip--status-not-started{background:var(--bg-3);color:var(--text-3)}.weekly-task__chip.chip--status-blocked{color:#ef4444;background:#ef444426}.weekly-day__empty{font-size:var(--text-xs);color:var(--text-3);padding:var(--space-4);text-align:center;flex:1;justify-content:center;align-items:center;display:flex}.weekly-task__icons{flex-shrink:0;align-items:center;gap:4px;display:flex}.weekly-task__icon{justify-content:center;align-items:center;width:14px;height:14px;display:flex}.weekly-task__icon svg{width:12px;height:12px}.weekly-task__icon--priority-urgent svg{color:var(--danger)}.weekly-task__icon--priority-high svg{color:#f97316}.weekly-task__icon--priority-medium svg{color:#eab308}.weekly-task__icon--priority-low svg{color:#22c55e}.weekly-task__icon--status-completed svg{color:var(--success)}.weekly-task__icon--status-in-progress svg{color:var(--info)}.weekly-task__icon--status-not-started svg{color:var(--text-3)}.weekly-task__header{justify-content:space-between;align-items:flex-start;gap:var(--space-1);display:flex}.weekly-task__time{color:var(--text-3);white-space:nowrap;font-size:9px}@media(min-width:1400px){.desktop-views{max-width:calc(100% - 48px)}.weekly-task{padding:5px 7px}.weekly-task__title{font-size:12px}}@media(min-width:1800px){.desktop-views{max-width:calc(100% - 64px)}}@media(max-width:900px){.week-grid{flex:none;grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);min-height:400px}.weekly-day:nth-child(7){grid-area:3/1}.weekly-day-header{padding:var(--space-2)}.weekly-day-name{font-size:9px}.weekly-day-date{font-size:var(--text-base)}}@media(max-width:768px){.content-container{overflow:hidden}.content-container__inner{padding-bottom:var(--space-4);-webkit-overflow-scrolling:touch;overflow:hidden auto}.content-container__inner::-webkit-scrollbar{display:none}.content-container__inner{scrollbar-width:none;-ms-overflow-style:none}.main-body{padding:var(--space-2);overflow:hidden}.week-grid{flex:none;grid-template-rows:repeat(7,1fr);grid-template-columns:1fr;height:auto;min-height:500px}.weekly-day:nth-child(7){grid-area:7/1}.weekly-day{min-height:0}}@media(max-width:600px){.week-grid{grid-template-rows:repeat(7,1fr);grid-template-columns:1fr;min-height:450px}.weekly-day:nth-child(7){grid-area:7/1}.weekly-task{padding:4px 6px}.weekly-task__title{-webkit-line-clamp:1;font-size:10px}.weekly-task__meta,.weekly-task__chips{display:none}}@media(max-width:768px){.main-area:has(.mobile-weekly-view) .main-header{display:none}.main-body:has(.mobile-weekly-view){height:100%;max-height:100dvh;padding:0;overflow:hidden}.main-body:has(.mobile-weekly-view) .content-container{background:var(--bg-1);border:none;border-radius:0;height:100%;max-height:100%;overflow:hidden}.main-body:has(.mobile-weekly-view) .content-container__inner{height:100%;max-height:100%;padding:0;overflow:hidden}}.mobile-weekly-view{flex-direction:column;flex:1;height:100%;min-height:0;max-height:100dvh;display:flex;position:relative;overflow:hidden}.mobile-weekly-header{padding:var(--space-3)var(--space-4);z-index:200;background:var(--bg-1);border-bottom:1px solid var(--stroke-0);-webkit-backdrop-filter:blur(8px);flex-shrink:0;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.mobile-weekly-header__sidebar-btn{border-radius:var(--radius-md);width:36px;height:36px;color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.mobile-weekly-header__sidebar-btn:hover,.mobile-weekly-header__sidebar-btn:active{background:var(--bg-2);color:var(--text-0)}.mobile-weekly-header__icon{color:var(--text-1)}.mobile-weekly-header__left{align-items:center;gap:var(--space-3);display:flex}.mobile-weekly-header__title{font-size:var(--text-lg);color:var(--text-0);margin:0;font-weight:600}.mobile-weekly-header__today{background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--text-xs);color:var(--text-0);cursor:pointer;transition:all var(--transition-fast);align-items:center;padding:6px 12px;font-weight:500;display:inline-flex}.mobile-weekly-header__today:hover,.mobile-weekly-header__today:active{background:var(--bg-3);border-color:var(--stroke-2)}.mobile-weekly-header__nav{align-items:center;gap:var(--space-1);display:flex}.mobile-week-nav-btn{border:1px solid var(--stroke-1);border-radius:var(--radius-md);width:36px;height:36px;color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);background:0 0;justify-content:center;align-items:center;padding:0;display:flex}.mobile-week-nav-btn:hover,.mobile-week-nav-btn:active{background:var(--bg-2);border-color:var(--stroke-2);color:var(--text-0)}.mobile-weekly-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:none;-ms-overflow-style:none;flex:1;min-height:0;padding-bottom:80px;overflow:hidden auto}.mobile-weekly-scroll::-webkit-scrollbar{display:none}.mobile-day-section{flex-direction:column;flex-shrink:0;min-height:fit-content;display:flex;position:relative}.mobile-day-section:last-child{min-height:calc(100vh - 52px);padding-bottom:100px}.mobile-day-header{align-items:center;gap:var(--space-3);padding:var(--space-2)var(--space-4);z-index:50;background:var(--bg-1);border-bottom:1px solid var(--stroke-0);-webkit-backdrop-filter:blur(8px);flex-direction:row;display:flex;position:sticky;top:52px}.mobile-day-header.is-today{background:var(--bg-1)}.mobile-day-header__weekday{color:var(--text-2);text-transform:uppercase;letter-spacing:.02em;min-width:32px;font-size:13px;font-weight:600}.mobile-day-header.is-today .mobile-day-header__weekday{color:#ef4444}.mobile-day-header__date{color:var(--text-0);cursor:pointer;border-radius:var(--radius-full);width:32px;height:32px;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-family:inherit;font-size:18px;font-weight:600;line-height:1;display:flex}.mobile-day-header__date:hover{background:var(--bg-2)}.mobile-day-header__date.is-today{color:#fff;background:#ef4444}.mobile-day-header__date.is-today:hover{background:#dc2626}.mobile-day-tasks{padding:var(--space-3)var(--space-4);flex-direction:column;flex:1 0 auto;gap:8px;min-width:0;min-height:fit-content;display:flex}.mobile-task-card{border-radius:var(--radius-md);cursor:pointer;text-align:left;width:100%;height:auto;min-height:44px;transition:transform var(--transition-fast),opacity var(--transition-fast);background:0 0;border:none;flex-direction:column;flex-shrink:0;padding:10px 12px;display:flex;position:relative;overflow:visible}.mobile-task-card__bg{border-radius:var(--radius-md);opacity:.9;z-index:0;position:absolute;inset:0}.mobile-task-card.is-completed .mobile-task-card__bg{opacity:1;background:var(--bg-2)!important}.mobile-task-card__content{z-index:1;flex-direction:column;gap:2px;display:flex;position:relative}.mobile-task-card__title{color:#fff;text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;font-weight:500;line-height:1.35;display:-webkit-box;overflow:hidden}.mobile-task-card.is-completed .mobile-task-card__title{color:var(--text-2);text-decoration:line-through}.mobile-task-card__time{color:#fffc;font-size:11px;font-weight:500}.mobile-task-card.is-completed .mobile-task-card__time{color:var(--text-3)}.mobile-task-card:active{transform:scale(.98)}.mobile-task-card.is-dragging{opacity:.5;transform:scale(.95)}.mobile-day-empty{align-items:center;gap:var(--space-2);padding:var(--space-3);border:1px dashed var(--stroke-1);border-radius:var(--radius-md);color:var(--text-3);cursor:pointer;transition:all var(--transition-fast);background:0 0;width:100%;font-size:13px;display:flex}.mobile-day-empty:hover,.mobile-day-empty:active{border-color:var(--stroke-2);color:var(--text-2);background:var(--bg-1)}.mobile-add-task-btn{width:32px;height:32px;margin-top:var(--space-1);border-radius:var(--radius-full);background:var(--bg-2);color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);border:none;justify-content:center;align-items:center;display:flex}.mobile-add-task-btn:hover,.mobile-add-task-btn:active{background:var(--bg-3);color:var(--text-0)}.mobile-drag-overlay{min-height:52px;padding:var(--space-2)var(--space-3);border-radius:var(--radius-md);flex-direction:column;display:flex;overflow:hidden;box-shadow:0 10px 40px -10px #00000080}.mobile-drag-overlay__color{border-radius:var(--radius-md);opacity:.9;position:absolute;inset:0}.mobile-drag-overlay__content{z-index:1;flex-direction:column;gap:2px;display:flex;position:relative}.mobile-drag-overlay__title{color:#fff;font-size:14px;font-weight:500;line-height:1.3}.mobile-drag-overlay__time{color:#ffffffd9;font-size:12px;font-weight:500}:root{--mobile-task-completed-bg:var(--bg-3)}.mobile-weekly-header__month-btn{align-items:center;gap:var(--space-2);padding:var(--space-1)var(--space-2);cursor:pointer;border-radius:var(--radius-md);transition:background var(--transition-fast);background:0 0;border:none;display:flex}.mobile-weekly-header__month-btn:hover,.mobile-weekly-header__month-btn:active{background:var(--bg-2)}.mobile-weekly-header__chevron{color:var(--text-2);transition:transform var(--transition-fast)}.mobile-weekly-header__chevron.is-open{transform:rotate(90deg)}.mobile-date-picker-overlay{z-index:999;background:#0000004d;position:fixed;inset:0}.mobile-date-picker{top:60px;left:var(--space-3);right:var(--space-3);background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);padding:var(--space-4);z-index:1000;max-width:320px;margin:0 auto;animation:.15s ease-out slideDownFade;position:fixed;box-shadow:0 8px 32px -8px #00000080}@keyframes slideDownFade{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.mobile-date-picker__header{margin-bottom:var(--space-4);justify-content:space-between;align-items:center;display:flex}.mobile-date-picker__month-year{font-size:var(--text-md);color:var(--text-0);text-align:center;flex:1;font-weight:600}.mobile-date-picker__nav-btn{border-radius:var(--radius-md);background:var(--bg-2);width:32px;height:32px;color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);border:none;justify-content:center;align-items:center;display:flex}.mobile-date-picker__nav-btn:hover,.mobile-date-picker__nav-btn:active{background:var(--bg-3);color:var(--text-0)}.mobile-date-picker__day-names{margin-bottom:var(--space-2);grid-template-columns:repeat(7,1fr);display:grid}.mobile-date-picker__day-name{text-align:center;color:var(--text-3);text-transform:uppercase;padding:var(--space-1);font-size:11px;font-weight:500}.mobile-date-picker__grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.mobile-date-picker__day{aspect-ratio:1;border-radius:var(--radius-md);width:100%;color:var(--text-1);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;font-weight:500;display:flex}.mobile-date-picker__day:hover:not(:disabled):not(.empty),.mobile-date-picker__day:active:not(:disabled):not(.empty){background:var(--bg-2);color:var(--text-0)}.mobile-date-picker__day.empty{cursor:default}.mobile-date-picker__day.is-today{background:var(--accent);color:#fff;font-weight:600}.mobile-date-picker__day.is-today:hover,.mobile-date-picker__day.is-today:active{background:var(--accent);opacity:.9}.mobile-fab{bottom:calc(var(--space-6) + env(safe-area-inset-bottom,0px));right:var(--space-4);border-radius:var(--radius-full);background:var(--accent);color:#fff;cursor:pointer;z-index:100;width:56px;height:56px;transition:all var(--transition-fast);border:none;justify-content:center;align-items:center;display:flex;position:fixed;box-shadow:0 4px 16px -4px #0000004d}.mobile-fab:hover,.mobile-fab:active{transform:scale(1.05);box-shadow:0 6px 20px -4px #0006}.mobile-fab:active{transform:scale(.95)}.mobile-day-empty-spacer{min-height:40px;color:var(--text-3);font-size:var(--text-sm);padding-left:var(--space-1);align-items:center;display:flex}.month-header{margin-bottom:var(--space-4);padding:0 var(--space-1);justify-content:space-between;align-items:center;display:flex}.month-header__left{align-items:center;gap:var(--space-3);display:flex}.month-header__title{font-size:var(--text-xl);color:var(--text-0);margin:0;font-weight:600}.month-header__today{padding:var(--space-1)var(--space-3);border:1px solid var(--stroke-1);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--text-xs);color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);background:0 0;align-items:center;font-weight:500;display:inline-flex}.month-header__today:hover{background:var(--bg-2);border-color:var(--stroke-2);color:var(--text-0)}.month-header__nav{align-items:center;gap:var(--space-1);display:flex}.month-nav-btn{border:1px solid var(--stroke-1);border-radius:var(--radius-md);width:32px;height:32px;color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);background:0 0;justify-content:center;align-items:center;padding:0;display:flex}.month-nav-btn:hover{background:var(--bg-2);border-color:var(--stroke-2);color:var(--text-0)}.month-nav-btn svg{width:16px;height:16px}.month-calendar{border:1px solid var(--stroke-1);border-radius:var(--radius-lg);background:var(--stroke-0);flex-direction:column;height:calc(100vh - 180px);max-height:calc(100vh - 180px);display:flex;overflow:hidden}.month-weekdays{background:var(--bg-2);border-bottom:1px solid var(--stroke-0);grid-template-columns:repeat(7,1fr);display:grid}.month-weekday{padding:var(--space-2)var(--space-3);font-size:var(--text-xs);color:var(--text-2);text-transform:uppercase;letter-spacing:.05em;text-align:center;font-weight:500}.month-grid{background:var(--stroke-0);flex:1;grid-template-rows:repeat(6,1fr);grid-template-columns:repeat(7,1fr);gap:1px;min-height:0;display:grid}.month-day{background:var(--bg-1);min-height:0;transition:background var(--transition-fast);flex-direction:column;display:flex;overflow:hidden}.month-day--other{opacity:.5}.month-day--dragover{background:var(--accent-muted)}.month-day__header{padding:var(--space-2);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.month-day__number{font-size:var(--text-sm);color:var(--text-1);cursor:pointer;width:24px;height:24px;transition:background var(--transition-fast);border-radius:50%;justify-content:center;align-items:center;font-weight:500;display:flex}.month-day__number:hover{background:var(--bg-3)}.month-day-btn{background:0 0;border:none;padding:0;font-family:inherit}.month-day--today .month-day__number{background:var(--accent-1);color:var(--bg-0);font-weight:600}.month-day--today .month-day__number:hover{background:var(--accent-2)}.month-day__tasks{padding:0 var(--space-2)var(--space-2);flex-direction:column;flex:1;gap:2px;min-height:60px;display:flex;overflow:hidden}.month-task{background:var(--bg-2);border-radius:var(--radius-sm);cursor:grab;transition:all var(--transition-fast);align-items:center;gap:4px;padding:3px 6px;display:flex;overflow:hidden}.month-task:hover{background:var(--bg-3)}.month-task:active{cursor:grabbing}.month-task--dragging{opacity:.5}.month-task--completed{opacity:.6}.month-task__dot{background:var(--text-2);border-radius:50%;flex-shrink:0;width:6px;height:6px}.month-task__dot--priority-urgent{background:var(--danger)}.month-task__dot--priority-high{background:#f97316}.month-task__dot--priority-medium{background:#eab308}.month-task__dot--priority-low{background:#22c55e}.month-task__title{color:var(--text-0);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:11px;font-weight:500;overflow:hidden}.month-task--completed .month-task__title{color:var(--text-2);text-decoration:line-through}.month-day__more{color:var(--text-2);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);background:0 0;border:none;align-items:center;margin-top:2px;padding:2px 6px;font-family:inherit;font-size:10px;font-weight:500;display:inline-flex}.month-day__more:hover{background:var(--bg-2);color:var(--accent-1)}.month-day__popover{z-index:100;background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--space-2);max-height:200px;display:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.month-day__popover--open{flex-direction:column;gap:2px;display:flex}.month-day--has-popover{position:relative}@media(min-width:1400px){.month-grid{grid-template-rows:repeat(6,minmax(100px,1fr))}}@media(max-width:900px){.month-grid{grid-template-rows:repeat(6,minmax(80px,1fr));grid-template-columns:repeat(7,1fr)}.month-day__number{width:20px;height:20px;font-size:12px}.month-task__title{font-size:10px}}@media(max-width:600px){.month-grid{grid-template-rows:repeat(6,minmax(60px,1fr));grid-template-columns:repeat(7,1fr)}.month-day__header{padding:var(--space-1)}.month-day__tasks{gap:1px;padding:0 2px 2px}.month-task{padding:2px 4px}.month-task__title,.month-day__more{font-size:9px}}.productivity-view{flex-direction:column;gap:16px;display:flex}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;display:grid}.dashboard-card{background:var(--bg-elevated);border-radius:var(--radius-lg);border:1px solid var(--border);padding:16px}.dashboard-card-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.dashboard-card-title{font-size:var(--text-sm);color:var(--text);font-weight:600}.dashboard-card-value{color:var(--text);font-size:24px;font-weight:600}.dashboard-card-subtitle{font-size:var(--text-xs);color:var(--text-muted);margin-top:4px}.dashboard{gap:var(--space-5);flex-direction:column;display:flex}.dashboard__header{justify-content:space-between;align-items:flex-start;display:flex}.dashboard__header-left{gap:var(--space-1);flex-direction:column;display:flex}.dashboard__title{color:var(--text-0);margin:0;font-size:24px;font-weight:600}.dashboard__subtitle{color:var(--text-2);margin:0;font-size:14px}.dashboard__customize-btn{background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-md);width:36px;height:36px;color:var(--text-1);cursor:pointer;transition:all var(--transition-base);justify-content:center;align-items:center;display:flex}.dashboard__customize-btn:hover{background:var(--bg-3);color:var(--text-0)}.dashboard__customize-btn svg{width:18px;height:18px}.dashboard__widgets{gap:var(--space-4);grid-template-columns:repeat(3,1fr);grid-auto-rows:minmax(120px,auto);display:grid}@media(max-width:1200px){.dashboard__widgets{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.dashboard__widgets{grid-template-columns:1fr}}.dashboard-widget:hover{border-color:var(--stroke-2)}.widget-header__title{font-size:var(--text-sm);color:var(--text-1);text-transform:uppercase;letter-spacing:.03em;font-weight:600}.widget-header__count{font-size:var(--text-xs);color:var(--text-2);background:var(--bg-2);border-radius:var(--radius-full);padding:2px 8px}.widget-refresh-btn,.widget-expand-btn{width:24px;height:24px;color:var(--text-2);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-base);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.widget-refresh-btn:hover,.widget-expand-btn:hover{background:var(--bg-3);color:var(--text-0)}.widget-refresh-btn svg,.widget-expand-btn svg{width:14px;height:14px}.dashboard-widget--datetime{background:linear-gradient(135deg,var(--accent-2)0%,var(--bg-1)100%);border-color:var(--accent-0);grid-column:span 1;justify-content:center;align-items:center}.widget-datetime{text-align:center}.widget-datetime__time{color:var(--text-0);font-variant-numeric:tabular-nums;font-size:48px;font-weight:700;line-height:1}.widget-datetime__date{font-size:var(--text-md);color:var(--text-1);margin-top:var(--space-2)}.dashboard-widget--weather{grid-column:span 1}.widget-weather{flex-direction:column;flex:1;justify-content:center;display:flex}.widget-weather__loading{color:var(--text-2);font-size:var(--text-sm);justify-content:center;align-items:center;gap:8px;display:flex}.widget-weather__content{align-items:center;gap:var(--space-4);display:flex}.widget-weather__icon{font-size:48px}.widget-weather__info{flex:1}.widget-weather__temp{color:var(--text-0);font-size:32px;font-weight:600}.widget-weather__desc{font-size:var(--text-sm);color:var(--text-1);text-transform:capitalize}.widget-weather__location{font-size:var(--text-xs);color:var(--text-2);margin-top:var(--space-1)}.widget-weather__details{gap:var(--space-4);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--stroke-0);display:flex}.widget-weather__detail{font-size:var(--text-xs);color:var(--text-2)}.dashboard-widget--tasks{grid-area:span 2/span 1}.widget-tasks{gap:var(--space-2);flex-direction:column;flex:1;max-height:300px;display:flex;overflow-y:auto}.widget-tasks__empty{color:var(--text-2);font-size:var(--text-sm);flex:1;justify-content:center;align-items:center;display:flex}.widget-task-item{align-items:center;gap:var(--space-2);padding:var(--space-2);background:var(--bg-2);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);display:flex}.widget-task-item:hover{background:var(--bg-3)}.widget-task-item__color{border-radius:2px;flex-shrink:0;width:4px;height:24px}.widget-task-item__content{flex:1;min-width:0}.widget-task-item__name{font-size:var(--text-sm);color:var(--text-0);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.widget-task-item__time{font-size:var(--text-xs);color:var(--text-2)}.dashboard-widget--quickadd{grid-column:span 1}.widget-quickadd{gap:var(--space-2);display:flex}.widget-quickadd__input{padding:var(--space-2)var(--space-3);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-md);color:var(--text-0);font-size:var(--text-sm);transition:all var(--transition-base);outline:none;flex:1}.widget-quickadd__input:focus{border-color:var(--accent-0)}.widget-quickadd__input::placeholder{color:var(--text-2)}.widget-quickadd__btn{background:var(--accent-0);border-radius:var(--radius-md);color:#fff;cursor:pointer;width:36px;height:36px;transition:all var(--transition-base);border:none;justify-content:center;align-items:center;display:flex}.widget-quickadd__btn:hover{background:var(--accent-1)}.widget-quickadd__btn svg{width:18px;height:18px}.dashboard-widget--spotify{grid-column:span 1}.widget-spotify{flex:1;justify-content:center;align-items:center;display:flex}.widget-spotify__connect{text-align:center}.widget-spotify__connect p{font-size:var(--text-sm);color:var(--text-2);margin-bottom:var(--space-3)}.widget-spotify__connect-btn{padding:var(--space-2)var(--space-4);border-radius:var(--radius-md);color:#fff;font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-base);background:#1db954;border:none;font-weight:500}.widget-spotify__connect-btn:hover{background:#1ed760}.widget-spotify__player{align-items:center;gap:var(--space-3);width:100%;display:flex}.widget-spotify__album{border-radius:var(--radius-sm);background:var(--bg-3);flex-shrink:0;width:48px;height:48px}.widget-spotify__album img{object-fit:cover;border-radius:var(--radius-sm);width:100%;height:100%}.widget-spotify__info{flex:1;min-width:0}.widget-spotify__track{font-size:var(--text-sm);color:var(--text-0);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.widget-spotify__artist{font-size:var(--text-xs);color:var(--text-2)}.dashboard-widget--stats{grid-column:span 1}.widget-stats{align-items:center;gap:var(--space-4);flex:1;display:flex}.widget-stats__ring{flex-shrink:0;width:80px;height:80px;position:relative}.widget-stats__ring svg{width:100%;height:100%;transform:rotate(-90deg)}.widget-stats__ring-bg{stroke:var(--stroke-1)}.widget-stats__ring-fill{stroke:var(--success);stroke-linecap:round;transition:stroke-dasharray .5s}.widget-stats__percent{font-size:var(--text-lg);color:var(--text-0);font-weight:600;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.widget-stats__info{gap:var(--space-1);flex-direction:column;display:flex}.widget-stats__completed{font-size:var(--text-sm);color:var(--success)}.widget-stats__remaining{font-size:var(--text-sm);color:var(--text-2)}.apps-header{margin-bottom:var(--space-6)}.apps-header__title{color:var(--text-0);margin:0 0 var(--space-2)0;font-size:24px;font-weight:600}.apps-header__subtitle{color:var(--text-2);margin:0;font-size:14px}.apps-grid{gap:var(--space-4);grid-template-columns:repeat(1,1fr);display:grid}@media(min-width:640px){.apps-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.apps-grid{grid-template-columns:repeat(3,1fr)}}@media(min-width:1280px){.apps-grid{grid-template-columns:repeat(4,1fr)}}.app-card{background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);padding:var(--space-5);gap:var(--space-4);flex-direction:column;transition:all .15s;display:flex}.app-card:hover{background:var(--bg-2);border-color:var(--stroke-2)}.app-card__icon{border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.app-card__icon svg{width:24px;height:24px}.app-card__icon--gmail{color:#ea4335;background:#ea433526}.app-card__icon--spotify{color:#1db954;background:#1db95426}.app-card__icon--news{color:#3b82f6;background:#3b82f626}.app-card__icon--calendar{color:#4285f4;background:#4285f426}.app-card__icon--smarthome{color:#fbbf24;background:#fbbf2426}.app-card__icon--weather{color:#0ea5e9;background:#0ea5e926}.app-card__content{flex:1;min-width:0}.app-card__name{color:var(--text-0);margin:0 0 var(--space-1)0;font-size:15px;font-weight:600}.app-card__description{color:var(--text-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:13px;line-height:1.4;display:-webkit-box;overflow:hidden}.app-card__action{align-items:center;gap:var(--space-1);border:1px solid var(--stroke-1);border-radius:var(--radius-md);padding:var(--space-2)var(--space-3);color:var(--text-1);cursor:pointer;background:0 0;align-self:flex-start;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex}.app-card__action:hover{background:var(--accent-0);border-color:var(--accent-1);color:var(--accent-2)}.app-card__action svg{width:14px;height:14px}.integration-page{gap:var(--space-5);flex-direction:column;height:100%;max-height:100%;display:flex;overflow:hidden}.integration-header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);flex-wrap:wrap;display:flex}.integration-header__left{align-items:center;gap:var(--space-4);display:flex}.integration-header__icon{border-radius:var(--radius-lg);flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.integration-header__icon svg{width:24px;height:24px}.integration-header__icon--gmail{color:#ea4335;background:#ea433526}.integration-header__icon--spotify{color:#1db954;background:#1db95426}.integration-header__icon--news{color:#3b82f6;background:#3b82f626}.integration-header__icon--bookmarks{color:#a855f7;background:#a855f726}.integration-header__icon--tools{color:#22c55e;background:#22c55e26}.integration-header__icon--smarthome{color:#f97316;background:#f9731626}.bookmarks-page{width:100%;max-width:700px;padding:0 var(--space-4);margin-left:auto;margin-right:auto}.bookmarks-header{margin-bottom:var(--space-8);justify-content:space-between;align-items:center;display:flex}.bookmarks-header__left{align-items:center;gap:var(--space-4);display:flex}.bookmarks-group-picker{position:relative}.bookmarks-group-picker__button{border-radius:var(--radius-md);color:var(--text-0);font-size:var(--text-sm);cursor:pointer;transition:background var(--transition-fast);background:0 0;border:none;align-items:center;gap:6px;padding:6px 10px;font-weight:500;display:inline-flex}.bookmarks-group-picker__button:hover{background:var(--bg-2)}.bookmarks-group-picker__dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.bookmarks-group-picker__label{font-weight:500}.bookmarks-group-dropdown{background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);min-width:180px;padding:var(--space-2);box-shadow:var(--shadow-lg);z-index:100;animation:.15s fadeIn;position:absolute;top:calc(100% + 4px);left:0}.bookmarks-group-options{max-height:200px;overflow-y:auto}.bookmarks-group-option{border-radius:var(--radius-md);width:100%;color:var(--text-0);font-size:var(--text-sm);text-align:left;cursor:pointer;transition:background var(--transition-fast);background:0 0;border:none;align-items:center;gap:8px;padding:8px 10px;display:flex}.bookmarks-group-option:hover{background:var(--bg-2)}.bookmarks-group-option.is-active{background:0 0}.bookmarks-group-option__dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.bookmarks-group-option__name{flex:1}.bookmarks-group-option__check{color:var(--text-2);flex-shrink:0}.bookmarks-group-divider{background:var(--stroke-0);height:1px;margin:var(--space-2)0}.bookmarks-group-actions-secondary{margin-top:var(--space-1);padding-top:var(--space-1);border-top:1px solid var(--stroke-0)}.bookmarks-group-action{border-radius:var(--radius-md);width:100%;color:var(--text-1);font-size:var(--text-sm);text-align:left;cursor:pointer;transition:background var(--transition-fast);background:0 0;border:none;align-items:center;gap:8px;padding:8px 10px;display:flex}.bookmarks-group-action:hover{background:var(--bg-2);color:var(--text-0)}.bookmarks-group-action--danger{color:var(--error)}.bookmarks-group-action--danger:hover{background:var(--error-bg)}.bookmarks-search-container{margin-bottom:var(--space-6)}.bookmarks-search-wrapper{border:1px solid var(--stroke-1);background:0 0;border-radius:999px;align-items:center;gap:10px;padding:10px 14px;display:flex}.bookmarks-search-wrapper:focus-within{border-color:var(--stroke-2)}.bookmarks-add-btn{border-radius:var(--radius-xs);width:16px;height:16px;color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;flex-shrink:0;place-items:center;display:grid}.bookmarks-add-btn:hover{color:var(--text-0)}.bookmarks-search-input{font-size:var(--text-sm);color:var(--text-0);background:0 0;border:none;flex:1;padding:0}.bookmarks-search-input::placeholder{color:var(--text-2)}.bookmarks-search-input:focus{outline:none}.bookmarks-shortcut{font-size:var(--text-xs);color:var(--text-2);flex-shrink:0;align-items:center;gap:4px;display:flex}.bookmarks-shortcut kbd{border-radius:var(--radius-xs);font-family:var(--font-sans);background:0 0;justify-content:center;align-items:center;padding:2px 5px;font-size:10px;display:inline-flex}.bookmarks-clear-btn{border-radius:var(--radius-xs);width:24px;height:24px;color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;place-items:center;display:grid}.bookmarks-clear-btn:hover{color:var(--text-0)}.bookmarks-section{background:0 0}.bookmarks-table-header{padding:var(--space-3)var(--space-3);font-size:var(--text-xs);color:var(--text-2);border-bottom:1px solid var(--stroke-0);justify-content:space-between;align-items:center;display:flex}.bookmarks-table-header__title{flex:1}.bookmarks-table-header__date{text-align:right;min-width:90px}.bookmarks-section__header{padding:var(--space-2)var(--space-3);text-transform:uppercase;font-size:var(--text-xs);letter-spacing:.05em;color:var(--text-2);border-bottom:1px solid var(--stroke-0);justify-content:space-between;display:flex}.bookmarks-section__title{font-weight:500}.bookmarks-list{margin:0;padding:0;list-style:none}.bookmark-row{padding:10px var(--space-3);justify-content:space-between;align-items:center;gap:var(--space-4);cursor:pointer;transition:background var(--transition-fast);border-bottom:1px solid var(--stroke-0);border-radius:0;display:flex}.bookmark-row:last-child{border-bottom:none}.bookmark-row:hover{background:var(--bg-2)}.bookmark-row__right{align-items:center;gap:var(--space-2);justify-content:flex-end;min-width:90px;display:flex}.bookmark-row__date{font-size:var(--text-sm);color:var(--text-2);white-space:nowrap;transition:opacity var(--transition-fast)}.bookmark-row:hover .bookmark-row__date{opacity:0;width:0;overflow:hidden}.bookmark-row__main{align-items:center;gap:var(--space-3);flex:1;min-width:0;display:flex}.bookmark-row__icon{border-radius:var(--radius-xs);width:18px;height:18px;color:var(--text-2);flex-shrink:0;place-items:center;display:grid;overflow:hidden}.bookmark-row__icon img{object-fit:contain;width:100%;height:100%}.bookmark-row__content{flex:1;align-items:baseline;gap:8px;min-width:0;display:flex}.bookmark-row__title{font-size:var(--text-sm);color:var(--text-0);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.bookmark-row__domain{font-size:var(--text-sm);color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;overflow:hidden}.bookmark-row__meta{align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--text-2);flex-shrink:0;display:flex}.bookmark-row__url{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.bookmark-row__tag{border-radius:999px;flex-shrink:0;padding:2px 6px;font-size:10px;font-weight:500}.bookmark-row__actions{gap:var(--space-1);opacity:0;transition:opacity var(--transition-fast);display:flex}.bookmark-row:hover .bookmark-row__actions{opacity:1}.bookmark-row__action{border-radius:var(--radius-xs);cursor:pointer;width:24px;height:24px;color:var(--text-2);transition:all var(--transition-fast);background:0 0;border:none;place-items:center;display:grid}.bookmark-row__action:hover{background:var(--bg-3);color:var(--text-0)}.bookmarks-empty{padding:var(--space-8);text-align:center;color:var(--text-2)}.bookmarks-modal{background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);width:100%;max-width:480px;max-height:90vh;box-shadow:var(--shadow-lg);flex-direction:column;animation:.15s slideUp;display:flex;overflow:hidden}.bookmarks-modal--small{max-width:380px}.bookmarks-modal__header{padding:var(--space-4);border-bottom:1px solid var(--stroke-0);justify-content:space-between;align-items:center;display:flex}.bookmarks-modal__title{font-size:var(--text-md);color:var(--text-0);margin:0;font-weight:600}.bookmarks-modal__subtitle{display:none}.bookmarks-modal__close{border-radius:var(--radius-sm);cursor:pointer;width:28px;height:28px;color:var(--text-2);transition:all var(--transition-fast);background:0 0;border:none;place-items:center;display:grid}.bookmarks-modal__close:hover{background:var(--bg-2);color:var(--text-0)}.bookmarks-modal__body{padding:var(--space-4);overflow-y:auto}.bookmarks-modal__text{font-size:var(--text-sm);color:var(--text-1);margin:0 0 var(--space-3)}.bookmarks-modal__actions{gap:var(--space-2);margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--stroke-0);display:flex}.bookmarks-form-group{margin-bottom:var(--space-4)}.bookmarks-form-label{font-size:var(--text-xs);color:var(--text-2);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-2);font-weight:500;display:block}.bookmarks-form-input,.bookmarks-form-textarea{width:100%;padding:var(--space-3);border-radius:var(--radius-md);border:1px solid var(--stroke-0);background:var(--bg-2);font-size:var(--text-sm);color:var(--text-0);resize:none;transition:border-color var(--transition-fast)}.bookmarks-form-input:focus,.bookmarks-form-textarea:focus{border-color:var(--accent-0);outline:none}.bookmarks-form-input::placeholder,.bookmarks-form-textarea::placeholder{color:var(--text-2)}.bookmarks-form-actions{gap:var(--space-2);margin-top:var(--space-2);display:flex}.bookmarks-form-grid{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.bookmarks-ghost-btn{padding:var(--space-1)var(--space-2);border-radius:var(--radius-sm);border:1px solid var(--stroke-0);font-size:var(--text-xs);color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);background:0 0}.bookmarks-ghost-btn:hover{color:var(--text-0);background:#ffffff1f}.bookmarks-ghost-btn--muted{color:var(--text-2)}.bookmarks-combo-field{position:relative}.bookmarks-combo-trigger{width:100%;padding:var(--space-3);border-radius:var(--radius-md);border:1px solid var(--stroke-0);background:var(--bg-2);font-size:var(--text-sm);color:var(--text-0);text-align:left;cursor:pointer;transition:border-color var(--transition-fast);justify-content:space-between;align-items:center;display:flex}.bookmarks-combo-trigger:hover{border-color:var(--stroke-1)}.bookmarks-combo-panel{background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:101;animation:.1s fadeIn;position:absolute;top:calc(100% + 4px);left:0;right:0}.bookmarks-combo-search{width:100%;padding:var(--space-3);border:none;border-bottom:1px solid var(--stroke-0);font-size:var(--text-sm);color:var(--text-0);background:0 0}.bookmarks-combo-search:focus{outline:none}.bookmarks-combo-options{max-height:180px;padding:var(--space-1);overflow-y:auto}.bookmarks-combo-option{width:100%;padding:var(--space-2)var(--space-3);align-items:center;gap:var(--space-2);border-radius:var(--radius-sm);color:var(--text-1);font-size:var(--text-sm);text-align:left;cursor:pointer;transition:background var(--transition-fast);background:0 0;border:none;display:flex}.bookmarks-combo-option:hover,.bookmarks-combo-option.is-selected{background:var(--bg-2);color:var(--text-0)}.bookmarks-combo-option__dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.bookmarks-combo-empty{padding:var(--space-3);text-align:center;color:var(--text-2);font-size:var(--text-sm)}.bookmarks-color-picker{align-items:center;gap:var(--space-3);display:flex}.bookmarks-color-picker input[type=color]{border-radius:var(--radius-md);cursor:pointer;background:0 0;border:none;width:48px;height:40px;padding:0}.bookmarks-color-picker input[type=color]::-webkit-color-swatch-wrapper{padding:0}.bookmarks-color-picker input[type=color]::-webkit-color-swatch{border:1px solid var(--stroke-0);border-radius:var(--radius-md)}.bookmarks-btn-primary{padding:var(--space-2)var(--space-4);border-radius:var(--radius-md);background:var(--accent-0);font-size:var(--text-sm);color:#fff;cursor:pointer;transition:all var(--transition-fast);border:none;font-weight:500}.bookmarks-btn-primary:hover{background:var(--accent-1)}.bookmarks-btn-secondary{padding:var(--space-2)var(--space-4);border-radius:var(--radius-md);border:1px solid var(--stroke-1);font-size:var(--text-sm);color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);background:0 0;font-weight:500}.bookmarks-btn-secondary:hover{background:var(--bg-2);color:var(--text-0)}.bookmarks-btn-danger{padding:var(--space-2)var(--space-4);border-radius:var(--radius-md);background:var(--error);font-size:var(--text-sm);color:#fff;cursor:pointer;transition:all var(--transition-fast);border:none;font-weight:500}.bookmarks-btn-danger:hover{opacity:.9}@media(max-width:640px){.bookmarks-header__left{align-items:flex-start;gap:var(--space-2);flex-direction:column}.bookmarks-section__header span:last-child{display:none}.bookmark-row{align-items:flex-start;gap:var(--space-2);flex-direction:column}.bookmark-row__right{justify-content:flex-start;width:100%}.bookmark-row__date{font-size:var(--text-xs)}.bookmark-row:hover .bookmark-row__date{opacity:1;width:auto}.bookmarks-form-grid{grid-template-columns:1fr}}.bookmark-form{gap:var(--space-4);flex-direction:column;display:flex}.bookmark-form .form-group{gap:var(--space-2);flex-direction:column;display:flex}.bookmark-form .form-group label{font-size:var(--text-sm);color:var(--text-1);font-weight:500}.bookmark-form .form-group input{padding:var(--space-2)var(--space-3);border:1px solid var(--stroke-1);border-radius:var(--radius-md);background:var(--bg-1);color:var(--text-0);font-size:var(--text-sm)}.bookmark-form .form-group input:focus{border-color:var(--accent-1);outline:none}.bookmark-form-actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-2);display:flex}.tools-grid{gap:var(--space-4);margin-top:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));display:grid}.tool-card{background:var(--bg-1);border:1px solid var(--stroke-0);border-radius:var(--radius-lg);padding:var(--space-5);text-align:center;align-items:center;gap:var(--space-3);transition:all var(--transition-fast);cursor:pointer;flex-direction:column;display:flex}.tool-card:hover{background:var(--bg-2);border-color:var(--stroke-1);transform:translateY(-2px)}.tool-card__icon{border-radius:var(--radius-md);background:var(--bg-2);width:48px;height:48px;color:var(--text-1);justify-content:center;align-items:center;display:flex}.tool-card__icon svg{width:24px;height:24px}.tool-card__title{font-size:var(--text-sm);color:var(--text-0);font-weight:600}.tool-card__description{font-size:var(--text-xs);color:var(--text-2)}.tool-card:focus,.tool-card:focus-visible{outline:none}.smarthome-devices{gap:var(--space-4);margin-top:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.integration-header__info{flex-direction:column;gap:2px;display:flex}.integration-header__title{color:var(--text-0);margin:0;font-size:20px;font-weight:600}.integration-header__subtitle{color:var(--text-2);margin:0;font-size:14px}.integration-header__actions{align-items:center;gap:var(--space-3);display:flex}.integration-status{color:var(--text-2);padding:var(--space-1)var(--space-3);background:var(--bg-1);border-radius:var(--radius-full);font-size:13px}.integration-status--connected{color:#22c55e;background:#22c55e1a}.integration-btn{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-4);border-radius:var(--radius-md);border:1px solid var(--stroke-1);background:var(--bg-1);color:var(--text-1);cursor:pointer;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex}.integration-btn:hover{background:var(--bg-2);border-color:var(--stroke-2)}.integration-btn svg{width:16px;height:16px}.integration-btn--primary{background:var(--accent-0);border-color:var(--accent-1);color:var(--accent-2)}.integration-btn--primary:hover{background:var(--accent-1)}.integration-btn--spotify{color:#1db954;background:#1db95426;border-color:#1db9544d}.integration-btn--spotify:hover{background:#1db95440}.integration-btn--secondary{background:0 0}.integration-btn:focus,.integration-btn:focus-visible{outline:none}.integration-icon-btn{border-radius:var(--radius-md);border:1px solid var(--stroke-1);background:var(--bg-1);width:36px;height:36px;color:var(--text-2);cursor:pointer;justify-content:center;align-items:center;transition:all .15s;display:flex}.integration-icon-btn:hover{background:var(--bg-2);color:var(--text-1)}.integration-icon-btn svg{width:18px;height:18px}.integration-icon-btn:focus,.integration-icon-btn:focus-visible{outline:none}.integration-content{gap:var(--space-4);flex-direction:column;flex:1;max-width:100%;min-height:0;display:flex;overflow-x:hidden}.integration-tabs{gap:var(--space-1);border-bottom:1px solid var(--stroke-0);padding-bottom:var(--space-1);display:flex}.integration-tabs--scrollable{scrollbar-width:none;overflow-x:auto}.integration-tabs--scrollable::-webkit-scrollbar{display:none}.integration-tab{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);color:var(--text-2);border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;background:0 0;border:none;font-size:13px;font-weight:500;transition:all .15s;display:flex}.integration-tab:hover{background:var(--bg-1);color:var(--text-1)}.integration-tab.is-active{background:var(--bg-2);color:var(--text-0)}.integration-tab:focus,.integration-tab:focus-visible{outline:none}.integration-tab svg{flex-shrink:0;width:16px;height:16px}.integration-tab__badge{background:var(--accent-0);color:var(--accent-2);border-radius:var(--radius-full);padding:2px 6px;font-size:11px;font-weight:600}.integration-toolbar{align-items:center;gap:var(--space-3);display:flex}.integration-toolbar__actions{gap:var(--space-2);display:flex}.integration-search{align-items:center;gap:var(--space-2);max-width:400px;padding:var(--space-2)var(--space-3);background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-md);flex:1;display:flex}.integration-search svg{width:16px;height:16px;color:var(--text-3);flex-shrink:0}.integration-search__input{color:var(--text-0);background:0 0;border:none;outline:none;flex:1;font-size:13px}.integration-search__input::placeholder{color:var(--text-3)}.integration-search--sm{max-width:200px;padding:var(--space-1)var(--space-2)}.integration-search--sm svg{width:14px;height:14px}.integration-search--sm .integration-search__input{font-size:12px}.integration-panel{background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);overflow:hidden}.integration-panel__header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3)var(--space-4);border-bottom:1px solid var(--stroke-0);display:flex}.integration-panel__header h3{align-items:center;gap:var(--space-2);color:var(--text-1);margin:0;font-size:13px;font-weight:600;display:flex}.integration-panel__header h3 svg{width:16px;height:16px;color:var(--text-2)}.integration-grid{gap:var(--space-4);grid-template-columns:repeat(2,1fr);display:grid}@media(max-width:768px){.integration-grid{grid-template-columns:1fr}}.integration-panel--wide{grid-column:span 2}@media(max-width:768px){.integration-panel--wide{grid-column:span 1}}.integration-chip{padding:var(--space-1)var(--space-3);color:var(--text-2);background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-full);cursor:pointer;align-items:center;font-size:12px;font-weight:500;transition:all .15s;display:inline-flex}.integration-chip:hover{background:var(--bg-2);color:var(--text-1)}.integration-chip.is-active{background:var(--accent-0);border-color:var(--accent-1);color:var(--accent-2)}.integration-toggle{align-items:center;gap:var(--space-2);cursor:pointer;display:flex}.integration-toggle input{width:16px;height:16px;accent-color:var(--accent-2)}.integration-toggle__label{color:var(--text-1);font-size:13px}.integration-settings-row{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3)var(--space-4);background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);display:flex}.integration-view-toggle{background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-md);display:flex;overflow:hidden}.integration-view-btn{width:36px;height:32px;color:var(--text-2);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:all .15s;display:flex}.integration-view-btn:hover{background:var(--bg-2);color:var(--text-1)}.integration-view-btn.is-active{background:var(--bg-2);color:var(--text-0)}.integration-view-btn svg{width:18px;height:18px}.integration-empty{justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-10);text-align:center;flex-direction:column;display:flex}.integration-empty svg{width:48px;height:48px;color:var(--text-3)}.integration-empty h3{color:var(--text-1);margin:0;font-size:15px;font-weight:600}.integration-empty p{color:var(--text-2);margin:0;font-size:13px}.integration-empty-sm{padding:var(--space-6);text-align:center}.integration-empty-sm p,.integration-empty-sm__text{color:var(--text-3);margin:0;font-size:13px}.gmail-email-list{max-height:none;overflow-y:auto}.gmail-message-item{align-items:flex-start;gap:var(--space-3);padding:var(--space-3)var(--space-4);border-bottom:1px solid var(--stroke-0);cursor:pointer;transition:background .15s;display:flex}.gmail-message-item:hover{background:var(--bg-2)}.gmail-message-item.unread{background:#3b82f60d}.gmail-message-item.unread .gmail-subject{color:var(--text-0);font-weight:600}.gmail-star-btn{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-3);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.gmail-star-btn:hover{background:var(--bg-3);color:#fbbf24}.gmail-star-btn.starred{color:#fbbf24}.gmail-message-content{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.gmail-message-header{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.gmail-sender{font-size:var(--text-sm);color:var(--text-0);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.gmail-date{font-size:var(--text-xs);color:var(--text-2);white-space:nowrap;flex-shrink:0}.gmail-subject{font-size:var(--text-sm);color:var(--text-1);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.gmail-snippet{font-size:var(--text-xs);color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.gmail-message-actions{align-items:center;gap:var(--space-1);opacity:0;transition:opacity var(--transition-fast);flex-shrink:0;display:flex}.gmail-message-item:hover .gmail-message-actions{opacity:1}.gmail-action-btn{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.gmail-empty{padding:var(--space-8);color:var(--text-2);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.gmail-empty svg{margin-bottom:var(--space-3);opacity:.5}.gmail-empty p{font-size:var(--text-sm);color:var(--text-2)}.gmail-email-item{align-items:center;gap:var(--space-3);padding:var(--space-3)var(--space-4);border-bottom:1px solid var(--stroke-0);cursor:pointer;transition:background .15s;display:flex}.gmail-email-item:hover{background:var(--bg-2)}.gmail-email-item--unread{background:var(--bg-1)}.gmail-email-item--unread .gmail-email-item__subject{font-weight:600}.gmail-email-item__checkbox{width:16px;height:16px;accent-color:var(--accent-2)}.gmail-email-item__star{width:20px;height:20px;color:var(--text-3);cursor:pointer;background:0 0;border:none}.gmail-email-item__star:hover,.gmail-email-item__star--active{color:#fbbf24}.gmail-email-item__star svg{width:16px;height:16px}.gmail-email-item__content{flex:1;min-width:0}.gmail-email-item__sender{color:var(--text-0);margin-bottom:2px;font-size:13px;font-weight:500}.gmail-email-item__subject{color:var(--text-1);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.gmail-email-item__snippet{color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.gmail-email-item__date{color:var(--text-2);white-space:nowrap;font-size:12px}.gmail-panel{background:var(--bg-0);border-left:1px solid var(--stroke-1);z-index:1000;flex-direction:column;width:400px;max-width:100%;height:100vh;transition:transform .3s;display:flex;position:fixed;top:0;right:0;transform:translate(100%)}.gmail-panel.active{transform:translate(0)}.gmail-panel-header{padding:var(--space-3)var(--space-4);border-bottom:1px solid var(--stroke-1);justify-content:space-between;align-items:center;display:flex}.gmail-panel-title{align-items:center;gap:var(--space-2);color:var(--text-0);font-size:14px;font-weight:600;display:flex}.gmail-panel-title svg{width:20px;height:20px;color:var(--text-1)}.gmail-panel-actions{gap:var(--space-1);display:flex}.gmail-header-btn{border-radius:var(--radius-md);width:32px;height:32px;color:var(--text-2);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:all .15s;display:flex}.gmail-header-btn:hover{background:var(--bg-2);color:var(--text-0)}.gmail-folders{gap:var(--space-1);padding:var(--space-2)var(--space-3);border-bottom:1px solid var(--stroke-0);display:flex;overflow-x:auto}.gmail-folder-btn{padding:var(--space-1)var(--space-3);color:var(--text-2);border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;background:0 0;border:none;font-size:12px;font-weight:500;transition:all .15s}.gmail-folder-btn:hover{background:var(--bg-1);color:var(--text-1)}.gmail-folder-btn.active{background:var(--bg-2);color:var(--text-0)}.gmail-list-view{flex:1;overflow-y:auto}.gmail-message-list{padding:var(--space-2)}.gmail-empty{padding:var(--space-8)var(--space-4);text-align:center;color:var(--text-2);flex-direction:column;justify-content:center;align-items:center;display:flex}.gmail-empty svg{width:48px;height:48px;color:var(--text-3);margin-bottom:var(--space-3)}.gmail-empty p{margin:0;font-size:13px}.gmail-viewer{flex-direction:column;flex:1;display:flex;overflow-y:auto}.gmail-viewer-header{padding:var(--space-3)var(--space-4);border-bottom:1px solid var(--stroke-0);justify-content:space-between;align-items:center;display:flex}.gmail-back-btn{align-items:center;gap:var(--space-2);padding:var(--space-1)var(--space-2);color:var(--text-1);border-radius:var(--radius-md);cursor:pointer;background:0 0;border:none;font-size:13px;transition:all .15s;display:flex}.gmail-back-btn:hover{background:var(--bg-1);color:var(--text-0)}.gmail-viewer-actions{gap:var(--space-2);display:flex}.gmail-action-btn{border-radius:var(--radius-md);width:32px;height:32px;color:var(--text-2);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:all .15s;display:flex}.gmail-action-btn:hover{background:var(--bg-1);color:var(--text-0)}.gmail-reply-btn{align-items:center;gap:var(--space-1);padding:var(--space-1)var(--space-3);color:var(--text-0);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-md);cursor:pointer;font-size:12px;font-weight:500;transition:all .15s;display:flex}.gmail-reply-btn:hover{background:var(--bg-3)}.gmail-viewer-meta{padding:var(--space-4);border-bottom:1px solid var(--stroke-0)}.gmail-viewer-subject{color:var(--text-0);margin-bottom:var(--space-3);font-size:16px;font-weight:600}.gmail-viewer-from,.gmail-viewer-to{gap:var(--space-2);margin-bottom:var(--space-1);font-size:13px;display:flex}.gmail-viewer-from span:first-child,.gmail-viewer-to span:first-child{color:var(--text-2)}.gmail-viewer-from span:last-child,.gmail-viewer-to span:last-child{color:var(--text-1)}.gmail-viewer-date{color:var(--text-3);margin-top:var(--space-2);font-size:12px}.gmail-viewer-body{padding:var(--space-4);color:var(--text-1);flex:1;font-size:14px;line-height:1.6}.gmail-compose-modal{z-index:1100;opacity:0;visibility:hidden;background:#0009;justify-content:flex-end;align-items:flex-end;transition:all .2s;display:flex;position:fixed;inset:0}.gmail-compose-modal.active{opacity:1;visibility:visible}.gmail-compose-dialog{background:var(--bg-0);border-radius:var(--radius-lg)var(--radius-lg)0 0;width:500px;max-width:100%;max-height:80vh;margin:0 var(--space-4)0 0;flex-direction:column;display:flex}.gmail-compose-header{padding:var(--space-3)var(--space-4);background:var(--bg-1);border-radius:var(--radius-lg)var(--radius-lg)0 0;justify-content:space-between;align-items:center;display:flex}.gmail-compose-header span{color:var(--text-0);font-size:14px;font-weight:500}.gmail-compose-close{border-radius:var(--radius-md);width:28px;height:28px;color:var(--text-2);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:all .15s;display:flex}.gmail-compose-close:hover{background:var(--bg-2);color:var(--text-0)}.gmail-compose-body{padding:var(--space-4);flex:1;overflow-y:auto}.gmail-compose-field{margin-bottom:var(--space-3)}.gmail-compose-field label{color:var(--text-2);margin-bottom:var(--space-1);font-size:12px;font-weight:500;display:block}.gmail-compose-field input,.gmail-compose-field textarea{width:100%;padding:var(--space-2)var(--space-3);color:var(--text-0);background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-md);outline:none;font-size:13px;transition:border-color .15s}.gmail-compose-field input:focus,.gmail-compose-field textarea:focus{border-color:var(--accent-0)}.gmail-compose-field textarea{resize:vertical;min-height:200px}.gmail-compose-body-field .compose-editor{min-height:200px;padding:var(--space-3);background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-md);color:var(--text-0);outline:none;font-size:14px;line-height:1.5}.gmail-compose-body-field .compose-editor:focus{border-color:var(--accent-0)}.gmail-compose-body-field .compose-editor:empty:before{content:attr(data-placeholder);color:var(--text-3)}.compose-toolbar{gap:var(--space-1);padding:var(--space-2);background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-md)var(--radius-md)0 0;border-bottom:none;margin-bottom:-1px;display:flex}.compose-toolbar-btn{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-2);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:all .15s;display:flex}.compose-toolbar-btn:hover{background:var(--bg-2);color:var(--text-0)}.compose-toolbar-divider{background:var(--stroke-0);width:1px;margin:0 var(--space-1)}.compose-cc-toggle{align-items:center;gap:var(--space-2);display:flex}.compose-cc-btn{color:var(--text-2);cursor:pointer;background:0 0;border:none;font-size:11px;transition:color .15s}.compose-cc-btn:hover{color:var(--text-0)}.contact-suggestions{background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-md);z-index:10;max-height:200px;display:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.contact-suggestions.active{display:block}.gmail-compose-footer{padding:var(--space-3)var(--space-4);border-top:1px solid var(--stroke-0);justify-content:space-between;align-items:center;display:flex}.gmail-send-btn{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-4);color:var(--text-0);background:var(--accent-0);border-radius:var(--radius-md);cursor:pointer;border:none;font-size:13px;font-weight:500;transition:all .15s;display:flex}.gmail-send-btn:hover{background:var(--accent-1)}.gmail-discard-btn{padding:var(--space-2)var(--space-3);color:var(--text-2);cursor:pointer;background:0 0;border:none;font-size:13px;transition:color .15s}.gmail-discard-btn:hover{color:var(--danger)}.smart-home-panel{background:var(--bg-0);border-left:1px solid var(--stroke-1);z-index:1000;flex-direction:column;width:400px;max-width:100%;height:100vh;transition:transform .3s;display:flex;position:fixed;top:0;right:0;transform:translate(100%)}.smart-home-panel.active{transform:translate(0)}.smart-home-header{padding:var(--space-3)var(--space-4);border-bottom:1px solid var(--stroke-1);justify-content:space-between;align-items:center;display:flex}.smart-home-title{align-items:center;gap:var(--space-2);color:var(--text-0);font-size:14px;font-weight:600;display:flex}.smart-home-title svg{width:20px;height:20px;color:var(--text-1)}.smart-home-content{padding:var(--space-4);flex:1;overflow-y:auto}.smart-home-empty{padding:var(--space-8)var(--space-4);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.smart-home-empty svg{width:48px;height:48px;color:var(--text-3);margin-bottom:var(--space-3)}.smart-home-empty p{color:var(--text-1);margin:0 0 var(--space-1)0;font-size:14px}.smart-home-empty-hint{color:var(--text-3);font-size:12px}.smart-home-connect-btn{margin-top:var(--space-4);padding:var(--space-2)var(--space-4);color:var(--text-0);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-md);cursor:pointer;font-size:13px;font-weight:500;transition:all .15s}.smart-home-connect-btn:hover{background:var(--bg-3)}.spotify-page-player{background:linear-gradient(135deg,#1db9541a 0%,var(--bg-1)100%);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);padding:var(--space-6);align-items:center;gap:var(--space-4);flex-direction:column;display:flex}.spotify-page-player__art{border-radius:var(--radius-lg);background:var(--bg-2);width:180px;height:180px;position:relative;overflow:hidden}.spotify-page-player__art img{object-fit:cover;width:100%;height:100%}.spotify-page-player__placeholder{color:var(--text-3);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.spotify-page-player__placeholder svg{width:48px;height:48px}.spotify-page-player__art img:not([src=""])+.spotify-page-player__placeholder{display:none}.spotify-page-player__info{text-align:center}.spotify-page-player__track{color:var(--text-0);margin:0 0 var(--space-1)0;font-size:18px;font-weight:600}.spotify-page-player__artist{color:var(--text-2);margin:0;font-size:14px}.spotify-page-player__progress{align-items:center;gap:var(--space-3);width:100%;max-width:400px;display:flex}.spotify-page-player__time{color:var(--text-3);min-width:40px;font-size:12px}.spotify-page-player__slider{appearance:none;background:var(--bg-3);cursor:pointer;border-radius:2px;flex:1;height:4px}.spotify-page-player__slider::-webkit-slider-thumb{appearance:none;cursor:pointer;background:#1db954;border-radius:50%;width:12px;height:12px}.spotify-page-player__controls{align-items:center;gap:var(--space-2);display:flex}.spotify-page-ctrl{width:40px;height:40px;color:var(--text-1);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;transition:all .15s;display:flex}.spotify-page-ctrl:hover{background:var(--bg-2);color:var(--text-0)}.spotify-page-ctrl svg{width:20px;height:20px}.spotify-page-ctrl--primary{color:#000;background:#1db954;width:56px;height:56px}.spotify-page-ctrl--primary:hover{background:#1ed760;transform:scale(1.05)}.spotify-page-ctrl--primary svg{width:24px;height:24px}.spotify-page-ctrl--primary .spotify-icon-pause,.spotify-page-ctrl--primary.is-playing .spotify-icon-play{display:none}.spotify-page-ctrl--primary.is-playing .spotify-icon-pause{display:block}.spotify-page-player__volume{align-items:center;gap:var(--space-2);display:flex}.spotify-page-vol-btn{width:32px;height:32px;color:var(--text-2);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:flex}.spotify-page-vol-btn svg{width:18px;height:18px}.spotify-page-player__vol-value{color:var(--text-3);min-width:24px;font-size:12px}.spotify-page-devices,.spotify-page-playlists,.spotify-page-tracks{padding:var(--space-2);max-height:300px;overflow-y:auto}.spotify-page-filters{gap:var(--space-2);padding:var(--space-2)var(--space-4);border-bottom:1px solid var(--stroke-0);display:flex}.spotify-page-device,.spotify-page-playlist,.spotify-page-track{align-items:center;gap:var(--space-3);padding:var(--space-2)var(--space-3);border-radius:var(--radius-md);cursor:pointer;transition:background .15s;display:flex}.spotify-page-device:hover,.spotify-page-playlist:hover,.spotify-page-track:hover{background:var(--bg-2)}.spotify-page-device.is-active,.spotify-page-playlist.is-active{background:#1db95426}.spotify-page-device__icon,.spotify-page-playlist__icon{background:var(--bg-2);border-radius:var(--radius-md);width:32px;height:32px;color:var(--text-2);justify-content:center;align-items:center;display:flex}.spotify-page-device__icon svg,.spotify-page-playlist__icon svg{width:16px;height:16px}.spotify-page-device__info,.spotify-page-playlist__info,.spotify-page-track__info{flex:1;min-width:0}.spotify-page-device__name,.spotify-page-playlist__name,.spotify-page-track__name{color:var(--text-0);font-size:13px;font-weight:500}.spotify-page-device__type,.spotify-page-playlist__count,.spotify-page-track__artist{color:var(--text-3);font-size:12px}.tools-library{max-width:var(--max-content-width);margin:0 auto;padding:16px}.tools-section-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.tools-section-title{font-size:var(--text-sm);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.tools-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;display:grid}.tool-card{background:var(--bg-elevated);border-radius:var(--radius-md);border:1px solid var(--border);cursor:pointer;transition:all var(--transition-base);align-items:center;gap:10px;padding:12px;display:flex}.tool-card:hover{background:var(--bg-hover);border-color:var(--border-strong)}.tool-icon{border-radius:var(--radius-md);background:var(--accent-muted);flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.tool-icon svg{width:16px;height:16px;color:var(--accent)}.tool-description{font-size:var(--text-xs);color:var(--text-muted);display:none}.tool-card{position:relative}.tool-card:hover .tool-card-arrow{opacity:1!important}.presentations-page{flex-direction:column;height:100%;padding:0;display:flex}.presentations-header{align-items:center;gap:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--border);margin-bottom:var(--space-4);display:flex}.presentations-header h1{font-size:var(--text-xl);flex:1;font-weight:600}.presentations-actions{gap:var(--space-2);display:flex}.presentations-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.presentation-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base);overflow:hidden}.presentation-card:hover{border-color:var(--border-strong);transform:translateY(-2px)}.presentation-thumbnail{aspect-ratio:16/9;background:var(--bg-0);color:var(--text-muted);justify-content:center;align-items:center;display:flex}.presentation-thumbnail img{object-fit:cover;width:100%;height:100%}.presentation-info{padding:var(--space-3)}.presentation-title{font-size:var(--text-sm);color:var(--text);margin-bottom:var(--space-1);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.presentation-meta{font-size:var(--text-xs);color:var(--text-muted)}.presentation-actions{gap:var(--space-1);padding:var(--space-2)var(--space-3);border-top:1px solid var(--border);justify-content:flex-end;display:flex}.presentation-upload-modal{width:500px;max-width:95vw}.upload-dropzone{border:2px dashed var(--border);border-radius:var(--radius-lg);padding:var(--space-8);text-align:center;cursor:pointer;transition:all var(--transition-base);margin-top:var(--space-3)}.upload-dropzone:hover,.upload-dropzone.active{border-color:var(--accent);background:var(--accent-muted)}.upload-dropzone svg{color:var(--text-muted);margin-bottom:var(--space-3)}.upload-dropzone p{color:var(--text);margin-bottom:var(--space-1);font-weight:500}.upload-hint{font-size:var(--text-xs);color:var(--text-muted)}.upload-files-list{text-align:left;width:100%}.upload-file-item{align-items:center;gap:var(--space-2);padding:var(--space-2);background:var(--bg-0);border-radius:var(--radius-sm);margin-bottom:var(--space-2);display:flex}.upload-file-item svg{color:var(--accent);flex-shrink:0}.upload-file-name{font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.upload-add-more{font-size:var(--text-xs);color:var(--text-muted);text-align:center;margin-top:var(--space-2)}.upload-progress{margin-top:var(--space-4)}.upload-progress-bar{background:var(--bg-0);border-radius:2px;height:4px;overflow:hidden}.upload-progress-fill{background:var(--accent);height:100%;transition:width .3s}.upload-progress-text{font-size:var(--text-xs);color:var(--text-muted);margin-top:var(--space-1);display:block}.presentation-editor{flex-direction:column;height:calc(100vh - 60px);display:flex}.presentation-editor-header{align-items:center;gap:var(--space-4);padding:var(--space-3)0;border-bottom:1px solid var(--border);display:flex}.presentation-editor-title{font-size:var(--text-lg);flex:1;font-weight:600}.presentation-editor-actions{gap:var(--space-2);display:flex}.present-menu-container{position:relative}.present-menu{margin-top:var(--space-1);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-2);z-index:100;min-width:280px;position:absolute;top:100%;right:0;box-shadow:0 10px 40px #0000004d}.present-menu-item{align-items:flex-start;gap:var(--space-3);padding:var(--space-3);text-align:left;border-radius:var(--radius-md);width:100%;transition:background var(--transition-base);cursor:pointer;color:var(--text);background:0 0;border:none;display:flex}.present-menu-item:hover{background:var(--bg-hover)}.present-menu-item svg{color:var(--accent);margin-top:2px}.present-menu-item-title{font-weight:500;font-size:var(--text-sm);display:block}.present-menu-item-desc{font-size:var(--text-xs);color:var(--text-muted);margin-top:2px;display:block}.presentation-editor-content{gap:var(--space-4);min-height:0;padding:var(--space-4)0;flex:1;grid-template-columns:180px 1fr 300px;display:grid}.slide-navigator{background:var(--bg-elevated);border-radius:var(--radius-lg);flex-direction:column;display:flex;overflow:hidden}.slide-navigator-header{padding:var(--space-3);border-bottom:1px solid var(--border);font-size:var(--text-sm);justify-content:space-between;align-items:center;font-weight:600;display:flex}.slide-count{background:var(--bg-0);border-radius:var(--radius-sm);font-size:var(--text-xs);color:var(--text-muted);padding:2px 8px}.slide-thumbnails{padding:var(--space-2);flex:1;overflow-y:auto}.slide-thumbnail{width:100%;margin-bottom:var(--space-2);cursor:pointer;border-radius:var(--radius-sm);transition:border-color var(--transition-base);background:0 0;border:2px solid #0000;padding:0;position:relative;overflow:hidden}.slide-thumbnail:hover{border-color:var(--border-strong)}.slide-thumbnail.active{border-color:var(--accent)}.slide-thumbnail img{width:100%;display:block}.slide-number{border-radius:var(--radius-xs);font-size:var(--text-xs);color:#fff;background:#000000b3;padding:2px 6px;position:absolute;top:4px;left:4px}.slide-has-notes{background:var(--accent);border-radius:50%;width:8px;height:8px;position:absolute;bottom:4px;right:4px}.slide-main{gap:var(--space-4);flex-direction:column;display:flex}.slide-preview{background:var(--bg-0);border-radius:var(--radius-lg);flex:1;justify-content:center;align-items:center;display:flex;overflow:hidden}.slide-preview img{object-fit:contain;max-width:100%;max-height:100%}.slide-controls{justify-content:center;align-items:center;gap:var(--space-4);display:flex}.slide-position{font-size:var(--text-sm);color:var(--text-muted);text-align:center;min-width:60px}.notes-panel{background:var(--bg-elevated);border-radius:var(--radius-lg);flex-direction:column;display:flex;overflow:hidden}.notes-panel-header{align-items:center;gap:var(--space-2);padding:var(--space-3);border-bottom:1px solid var(--border);font-size:var(--text-sm);font-weight:600;display:flex}.notes-panel-header .btn{margin-left:auto}.notes-editor{padding:var(--space-3);resize:none;font-family:inherit;font-size:var(--text-sm);color:var(--text);background:0 0;border:none;flex:1;line-height:1.6}.notes-editor:focus{outline:none}.notes-editor::placeholder{color:var(--text-muted)}.presentation-viewer{z-index:9999;background:#000;flex-direction:column;display:flex;position:fixed;inset:0}.presentation-viewer.loading,.presentation-viewer.ended{justify-content:center;align-items:center;gap:var(--space-4);color:#fff;flex-direction:column;display:flex}.viewer-controls{padding:var(--space-4);z-index:10;background:linear-gradient(#000000b3,#0000);transition:opacity .3s;position:absolute;top:0;left:0;right:0}.viewer-controls.hidden{opacity:0;pointer-events:none}.viewer-controls-top{justify-content:space-between;align-items:center;display:flex}.slide-indicator{color:#fff;font-size:var(--text-sm);padding:var(--space-1)var(--space-3);border-radius:var(--radius-sm);background:#ffffff1a}.viewer-controls-right{gap:var(--space-2);display:flex}.viewer-controls .btn-icon{color:#fff;background:#ffffff1a}.viewer-controls .btn-icon:hover{background:#fff3}.slide-container{cursor:pointer;flex:1;justify-content:center;align-items:center;display:flex;position:relative}.slide-image{object-fit:contain;max-width:100%;max-height:100%}.click-zones{pointer-events:none;display:flex;position:absolute;inset:0}.click-zone{flex:1}.click-zone.left{cursor:w-resize}.click-zone.right{cursor:e-resize}.laser-pointer{pointer-events:none;z-index:100;position:absolute;transform:translate(-50%,-50%)}.laser-dot{background:red;border-radius:50%;width:12px;height:12px;box-shadow:0 0 10px red,0 0 20px red}.laser-glow{background:radial-gradient(circle,#ff00004d,#0000 70%);width:30px;height:30px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.drawing-canvas{cursor:crosshair;position:absolute;inset:0}.presenter-view{background:var(--bg-0);flex-direction:column;height:100vh;display:flex}.presenter-view.loading{justify-content:center;align-items:center;display:flex}.presenter-header{padding:var(--space-3)var(--space-4);background:var(--bg-elevated);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.presenter-header-left,.presenter-header-right{align-items:center;gap:var(--space-3);display:flex}.session-code{align-items:center;gap:var(--space-2);background:var(--bg-0);padding:var(--space-2)var(--space-3);border-radius:var(--radius-md);display:flex}.session-code-label{font-size:var(--text-xs);color:var(--text-muted)}.session-code-value{font-size:var(--text-lg);letter-spacing:.1em;font-family:monospace;font-weight:700}.presenter-timer{align-items:center;gap:var(--space-2);font-size:var(--text-lg);color:var(--text);font-family:monospace;font-weight:600;display:flex}.presenter-content{flex:1;grid-template-columns:1fr 350px;min-height:0;display:grid}.presenter-main{padding:var(--space-4);gap:var(--space-4);flex-direction:column;display:flex}.presenter-slide{background:var(--bg-1);border-radius:var(--radius-lg);flex:1;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.presenter-slide.laser-mode{cursor:none}.presenter-slide img{object-fit:contain;max-width:100%;max-height:100%}.laser-indicator{bottom:var(--space-2);right:var(--space-2);color:#fff;padding:var(--space-1)var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-xs);background:#f00c;position:absolute}.presenter-bottom{gap:var(--space-4);align-items:center;display:flex}.next-slide-preview{background:var(--bg-1);border-radius:var(--radius-md);width:180px;overflow:hidden}.next-slide-label{padding:var(--space-1)var(--space-2);font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;display:block}.next-slide-preview img{width:100%;display:block}.next-slide-end{padding:var(--space-4);text-align:center;font-size:var(--text-xs);color:var(--text-muted)}.presenter-controls{flex:1;justify-content:space-between;align-items:center;display:flex}.slide-navigation{align-items:center;gap:var(--space-3);display:flex}.slide-navigation .slide-position{font-size:var(--text-lg);color:var(--text);font-weight:600}.presenter-tools{gap:var(--space-2);display:flex}.presenter-tools .btn-icon.active{background:var(--accent);color:#fff}.presenter-notes{background:var(--bg-elevated);border-left:1px solid var(--border);flex-direction:column;display:flex}.presenter-notes-header{padding:var(--space-3)var(--space-4);border-bottom:1px solid var(--border);font-weight:600}.presenter-notes-content{padding:var(--space-4);flex:1;overflow-y:auto}.notes-text{font-size:var(--text-sm);white-space:pre-wrap;line-height:1.8}.notes-empty{color:var(--text-muted);font-style:italic}.join-session-modal{width:400px;max-width:95vw}.join-session-description{color:var(--text-muted);font-size:var(--text-sm);margin-bottom:var(--space-4)}.session-code-input{font-size:var(--text-xl);text-align:center;letter-spacing:.2em;text-transform:uppercase;font-family:monospace}.session-code-input.error{border-color:var(--danger)}.form-error{color:var(--danger);font-size:var(--text-xs);margin-top:var(--space-1);display:block}.session-found{align-items:center;gap:var(--space-2);color:var(--success);font-size:var(--text-sm);margin-top:var(--space-3);display:flex}.session-found-indicator{background:var(--success);border-radius:50%;width:8px;height:8px;animation:1.5s infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.spin{animation:1s linear infinite spin}.upload-info-box{gap:var(--space-3);background:var(--bg-0);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-3);margin-top:var(--space-3);display:flex}.upload-info-box svg{color:var(--accent);flex-shrink:0;margin-top:2px}.upload-info-content{font-size:var(--text-xs);color:var(--text-muted)}.upload-info-content strong{color:var(--text);margin-bottom:var(--space-1);display:block}.upload-info-content ul{padding-left:var(--space-4);margin:0}.upload-info-content li{margin:var(--space-1)0}@media(max-width:768px){.presentations-header{gap:var(--space-3);flex-direction:column;align-items:stretch}.presentations-header h1{font-size:var(--text-lg);text-align:center}.presentations-actions{gap:var(--space-2);flex-direction:column}.presentations-actions .btn{justify-content:center;width:100%}.presentations-grid{grid-template-columns:1fr}.presentation-editor-content{gap:var(--space-3);padding:var(--space-2)0;grid-template-columns:1fr}.presentation-editor-header{gap:var(--space-2);padding:var(--space-2)0;flex-wrap:wrap}.presentation-editor-title{width:100%;font-size:var(--text-base);order:1}.presentation-editor-actions{flex-wrap:wrap;order:2;justify-content:center;width:100%}.presentation-editor-actions .btn{min-width:100px;font-size:var(--text-xs);padding:var(--space-2);flex:1}.presentation-editor-actions .btn span{display:none}.slide-navigator{border-radius:var(--radius-md);max-height:120px}.slide-navigator-list{padding:var(--space-2);gap:var(--space-2);flex-direction:row;overflow-x:auto}.slide-thumb{flex-shrink:0;width:100px}.notes-editor{border-radius:var(--radius-md);max-height:150px}.presenter-view{overflow-y:auto}.presenter-header{gap:var(--space-2);padding:var(--space-2);flex-direction:column}.presenter-header-left,.presenter-header-right{justify-content:center;width:100%}.session-code{padding:var(--space-1)var(--space-2)}.session-code-label{display:none}.session-code-value,.presenter-timer{font-size:var(--text-base)}.presenter-timer span{min-width:60px}.presenter-content{grid-template-columns:1fr}.presenter-main{padding:var(--space-2);gap:var(--space-2)}.presenter-slide{border-radius:var(--radius-md);min-height:200px}.presenter-bottom{gap:var(--space-2);flex-direction:column}.next-slide-preview{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2);display:flex}.next-slide-label{white-space:nowrap;padding:0}.next-slide-preview img{border-radius:var(--radius-sm);width:80px}.presenter-controls{gap:var(--space-2);flex-direction:column;width:100%}.slide-navigation{justify-content:center;width:100%}.slide-navigation .btn-icon.btn-lg{padding:var(--space-3)}.presenter-tools{justify-content:center;width:100%}.presenter-notes{border-left:none;border-top:1px solid var(--border);max-height:200px}.presenter-notes-content,.viewer-controls-top{padding:var(--space-2)}.slide-indicator{font-size:var(--text-sm);padding:var(--space-1)var(--space-2)}.click-zones{display:none}.presentation-upload-modal{width:100%;max-height:90vh;margin:var(--space-2)}.upload-dropzone{padding:var(--space-4)}.upload-dropzone svg{width:32px;height:32px}.upload-dropzone p{font-size:var(--text-sm)}.upload-info-box{gap:var(--space-2);flex-direction:column}.upload-info-content ul{padding-left:var(--space-3)}.join-session-modal{width:100%;margin:var(--space-2)}.session-code-input{font-size:var(--text-lg)}}@media(max-width:480px){.presenter-header-right .btn span{display:none}.presenter-header-right .btn-danger{padding:var(--space-2)}.presenter-slide{min-height:150px}.presentation-card{margin:0}.slide-navigation .slide-position{font-size:var(--text-base)}}.section-divider{background:var(--border);border:none;height:1px;margin:16px 0}.library{max-width:var(--max-content-width);margin:0 auto;padding:0 16px 16px}.library-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.library-title{font-size:var(--text-sm);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.library-actions{align-items:center;gap:6px;display:flex}.library-search{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-xs);color:var(--text);width:140px;transition:all var(--transition-base);outline:none;padding:6px 10px}.library-search:focus{border-color:var(--accent)}.library-search::placeholder{color:var(--text-muted)}.library-edit-btn,.library-add-btn{border-radius:var(--radius-md);background:var(--bg-elevated);border:1px solid var(--border);width:28px;height:28px;color:var(--text-muted);transition:all var(--transition-base);justify-content:center;align-items:center;display:flex}.library-edit-btn:hover,.library-add-btn:hover{background:var(--bg-hover);color:var(--text)}.library-edit-btn.active{color:#ef4444;background:#ef44441a;border-color:#ef4444}.library-edit-btn svg,.library-add-btn svg{width:14px;height:14px}.library-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px;display:grid}.link-card,.app-card{background:var(--bg-elevated);border-radius:var(--radius-md);border:1px solid var(--border);cursor:pointer;transition:all var(--transition-base);align-items:center;gap:10px;padding:10px 12px;display:flex;position:relative}.link-card:hover,.app-card:hover{background:var(--bg-hover);border-color:var(--border-strong)}.link-icon,.app-icon{border-radius:var(--radius-md);background:var(--bg);flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex;overflow:hidden}.link-icon img,.app-icon img{object-fit:contain;width:18px;height:18px}.link-details,.app-details{flex:1;min-width:0}.link-name,.app-name{font-size:var(--text-sm);color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.link-url,.app-subtitle{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.link-delete-btn{border-radius:var(--radius-sm);color:#ef4444;cursor:pointer;width:20px;height:20px;transition:all var(--transition-base);background:#ef44441a;border:1px solid #ef444433;justify-content:center;align-items:center;display:none;position:absolute;top:4px;right:4px}.link-delete-btn:hover{background:#ef444433}.library-grid.library-edit-mode .link-delete-btn{display:flex}.link-delete-btn svg{width:12px;height:12px}.tool-modal{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0009;justify-content:center;align-items:center;padding:16px;display:none;position:fixed;inset:0}.tool-modal.active{display:flex}.tool-modal-content{background:var(--bg-elevated);border-radius:var(--radius-lg);border:1px solid var(--border);width:min(420px,100%);max-height:calc(100vh - 32px);box-shadow:var(--shadow-lg);flex-direction:column;padding:0;animation:.2s modalFadeIn;display:flex;overflow:hidden}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.98)translateY(4px)}to{opacity:1;transform:scale(1)translateY(0)}}.tool-modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.tool-modal-title{font-size:var(--text-md);color:var(--text);align-items:center;gap:8px;font-weight:600;display:flex}.tool-modal-title svg{color:var(--accent);width:16px;height:16px}.tool-modal-close{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-base);background:0 0;border:none;padding:4px;font-size:16px;line-height:1}.tool-modal-close:hover{background:var(--bg-hover);color:var(--text)}.tool-modal-body{flex:1;padding:16px;overflow-y:auto}.modal{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0009;justify-content:center;align-items:center;padding:16px;display:none;position:fixed;inset:0}.modal.active{display:flex}.modal-content{background:var(--bg-elevated);border-radius:var(--radius-lg);border:1px solid var(--border);width:min(400px,100%);max-height:calc(100vh - 32px);box-shadow:var(--shadow-lg);flex-direction:column;padding:16px;animation:.2s modalFadeIn;display:flex;overflow-y:auto}.modal-content:before{display:none}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;display:flex}.modal-header-text{font-size:var(--text-lg);color:var(--text);font-weight:600}.modal-close-btn{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-base);background:0 0;border:none;padding:4px}.modal-close-btn:hover{background:var(--bg-hover);color:var(--text)}.modal-close-btn svg{width:16px;height:16px}.modal-fields-container{flex:1;overflow:hidden auto}.modal-field{margin-bottom:14px}.modal-label{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;font-weight:500;display:block}.modal-input,.modal-textarea,.modal-select{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);width:100%;font-size:var(--text-sm);color:var(--text);transition:all var(--transition-base);padding:10px 12px}.modal-input:focus,.modal-textarea:focus,.modal-select:focus{border-color:var(--accent);background:var(--bg-hover);outline:none}.modal-input::placeholder,.modal-textarea::placeholder{color:var(--text-muted)}.modal-textarea{resize:vertical;min-height:80px}.modal-select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;background-size:14px;padding-right:36px}.time-inputs-row{align-items:center;gap:8px;display:flex}.time-input-group{flex:1;position:relative}.time-text-input{width:100%}.time-native-input{opacity:0;cursor:pointer;position:absolute;inset:0}.time-separator{color:var(--text-muted);font-weight:500;font-size:var(--text-xs)}.duration-inputs-row{align-items:center;gap:6px;display:flex}.duration-input{text-align:center;width:56px}.duration-label{color:var(--text-muted);font-size:var(--text-xs)}.color-picker{gap:6px;display:flex}.color-option{border-radius:var(--radius-sm);cursor:pointer;width:24px;height:24px;transition:all var(--transition-base);border:2px solid #0000}.color-option:hover{transform:scale(1.1)}.color-option.selected{border-color:var(--text)}.color-option.grey{background:var(--color-grey)}.color-option.rose{background:var(--color-rose)}.color-option.purple{background:var(--color-purple)}.color-option.amber{background:var(--color-amber)}.color-option.sky{background:var(--color-sky)}.color-option.emerald{background:var(--color-emerald)}.modal-tags{flex-wrap:wrap;gap:6px;display:flex}.modal-tag{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-full);font-size:var(--text-xs);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-base);align-items:center;gap:4px;padding:6px 10px;font-weight:500;display:inline-flex}.modal-tag:hover{background:var(--bg-hover);color:var(--text)}.modal-tag.selected{background:var(--accent-muted);border-color:var(--accent);color:var(--accent)}.modal-tag svg{width:10px;height:10px}.description-wrapper{position:relative}.voice-memo-btn{background:var(--bg-hover);border:1px solid var(--border);color:var(--text-muted);border-radius:var(--radius-md);cursor:pointer;width:28px;height:28px;transition:all var(--transition-base);justify-content:center;align-items:center;display:flex;position:absolute;top:8px;right:8px}.voice-memo-btn:hover{color:var(--accent);border-color:var(--accent)}.voice-memo-btn svg{width:14px;height:14px}.voice-memos-container{flex-direction:column;gap:6px;margin-top:8px;display:flex}.custom-tags-container{flex-wrap:wrap;gap:4px;margin-bottom:8px;display:flex}.custom-tag{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-full);color:var(--text-secondary);align-items:center;gap:4px;padding:4px 8px;font-size:10px;display:inline-flex}.custom-tag-remove{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0;line-height:1}.custom-tag-remove:hover{color:#ef4444}.custom-tag-input-row{gap:6px;display:flex}.custom-tag-input{flex:1;padding:8px 10px}.custom-tag-add-btn{background:var(--bg-hover);border:1px solid var(--border);color:var(--text);border-radius:var(--radius-md);cursor:pointer;width:32px;transition:all var(--transition-base);font-weight:600}.custom-tag-add-btn:hover{background:var(--border)}.subtasks-field{margin-top:8px}.subtasks-header{margin-bottom:8px}.subtasks-toggle-btn{color:var(--text-secondary);cursor:pointer;font-size:var(--text-sm);background:0 0;border:none;align-items:center;gap:4px;padding:4px 0;font-weight:500;display:flex}.subtasks-toggle-btn:hover{color:var(--text)}.subtasks-toggle-btn svg{width:14px;height:14px;transition:transform var(--transition-base)}.subtasks-toggle-btn.collapsed svg{transform:rotate(-90deg)}.subtasks-container{flex-direction:column;gap:4px;margin-bottom:8px;display:flex}.subtask-item{background:var(--bg);border-radius:var(--radius-sm);align-items:center;gap:8px;padding:6px 8px;display:flex}.subtask-checkbox{border-radius:var(--radius-xs);border:1.5px solid var(--border-strong);cursor:pointer;background:0 0;flex-shrink:0;width:14px;height:14px}.subtask-checkbox.checked{background:var(--status-completed);border-color:var(--status-completed)}.subtask-text{font-size:var(--text-sm);color:var(--text);flex:1}.subtask-item.completed .subtask-text{color:var(--text-muted);text-decoration:line-through}.subtask-delete{color:var(--text-muted);cursor:pointer;opacity:0;transition:opacity var(--transition-base);background:0 0;border:none;padding:2px}.subtask-item:hover .subtask-delete{opacity:1}.subtask-delete:hover{color:#ef4444}.subtask-input-row{gap:6px;display:flex}.subtask-input{flex:1;padding:8px 10px}.subtask-add-btn{background:var(--bg-hover);border:1px solid var(--border);color:var(--text);border-radius:var(--radius-md);cursor:pointer;width:32px;transition:all var(--transition-base);font-weight:600}.subtask-add-btn:hover{background:var(--border)}.attachments-field{margin-top:var(--space-3)}.attachments-container{gap:var(--space-2);margin-bottom:var(--space-2);flex-wrap:wrap;display:flex}.attachment-item{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);background:var(--bg-2);border:1px solid var(--stroke-0);border-radius:var(--radius-md);font-size:var(--text-xs);color:var(--text-1);max-width:200px;display:flex}.attachment-item__name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.attachment-item__size{color:var(--text-2);font-size:10px}.attachment-item__remove{color:var(--text-2);cursor:pointer;border-radius:var(--radius-xs);background:0 0;border:none;justify-content:center;align-items:center;padding:2px;display:flex}.attachment-item__remove:hover{color:var(--danger);background:#ef44441a}.attachments-upload-row{align-items:center;gap:var(--space-2);display:flex}.attachment-upload-btn{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);background:var(--bg-2);border:1px dashed var(--stroke-1);border-radius:var(--radius-md);color:var(--text-1);font-size:var(--text-xs);cursor:pointer;transition:all var(--transition-fast);display:flex}.attachment-upload-btn:hover{background:var(--bg-3);border-color:var(--accent-0);color:var(--text-0)}.attachment-size-hint{color:var(--text-2);font-size:10px}.linked-notes-field{margin-top:var(--space-3)}.linked-notes-container{gap:var(--space-2);margin-bottom:var(--space-2);flex-wrap:wrap;display:flex}.linked-note-item{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);background:var(--bg-2);border:1px solid var(--stroke-0);border-radius:var(--radius-md);font-size:var(--text-xs);color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);display:flex}.linked-note-item:hover{background:var(--bg-3);border-color:var(--accent-0)}.linked-note-item__icon{width:14px;height:14px;color:var(--text-2)}.linked-note-item__name{text-overflow:ellipsis;white-space:nowrap;max-width:150px;overflow:hidden}.linked-note-item__remove{color:var(--text-2);cursor:pointer;border-radius:var(--radius-xs);background:0 0;border:none;justify-content:center;align-items:center;padding:2px;display:flex}.linked-note-item__remove:hover{color:var(--danger);background:#ef44441a}.link-note-btn{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);background:var(--bg-2);border:1px dashed var(--stroke-1);border-radius:var(--radius-md);color:var(--text-1);font-size:var(--text-xs);cursor:pointer;transition:all var(--transition-fast);display:flex}.link-note-btn:hover{background:var(--bg-3);border-color:var(--accent-0);color:var(--text-0)}.smart-reminders-container{flex-direction:column;gap:8px;display:flex}.smart-reminder-btn{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--text-xs);cursor:pointer;transition:all var(--transition-base);align-items:center;gap:6px;padding:8px 12px;display:flex}.smart-reminder-btn:hover{background:var(--bg-hover);color:var(--text)}.smart-reminder-btn.active{border-color:var(--accent);color:var(--accent)}.smart-reminder-btn svg{width:14px;height:14px}.location-reminder-settings,.context-reminder-settings{background:var(--bg);border-radius:var(--radius-md);margin-top:6px;padding:10px}.smart-reminder-note{color:var(--text-muted);margin-bottom:8px;font-size:10px}.radius-row{align-items:center;gap:6px;display:flex}.radius-label{font-size:var(--text-xs);color:var(--text-secondary)}.radius-input{text-align:center;width:70px}.radius-unit{font-size:var(--text-xs);color:var(--text-muted)}.context-url-input{margin-top:6px}.location-input-wrapper{position:relative}.location-suggestions{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:100;max-height:160px;display:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.location-suggestions.open{display:block}.location-suggestion{font-size:var(--text-sm);cursor:pointer;transition:background var(--transition-base);padding:8px 12px}.location-suggestion:hover{background:var(--bg-hover)}.modal-buttons{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:8px;margin-top:16px;padding-top:16px;display:flex}.modal-buttons-left,.modal-buttons-right{gap:8px;display:flex}.modal-btn{border-radius:var(--radius-md);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-base);border:1px solid #0000;padding:10px 16px;font-weight:500}.modal-btn-cancel{background:var(--bg);border-color:var(--border);color:var(--text-secondary)}.modal-btn-cancel:hover{background:var(--bg-hover);color:var(--text)}.modal-btn-save{background:var(--accent);color:#fff}.modal-btn-save:hover{background:var(--accent-hover)}.modal-btn-icon{flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;padding:0;display:flex}.modal-btn-icon svg{width:18px;height:18px}.modal-btn-delete{color:#ef4444;background:#ef44441a;border-color:#ef444433}.modal-btn-delete:hover{background:#ef444433}.modal-btn-copy{background:var(--bg);border-color:var(--border);color:var(--text-secondary)}.modal-btn-copy:hover{background:var(--bg-hover);color:var(--text-0)}.day-tasks-modal{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0009;justify-content:center;align-items:center;padding:16px;display:none;position:fixed;inset:0}.day-tasks-modal.active{display:flex}.day-tasks-modal-content{background:var(--bg-elevated);border-radius:var(--radius-lg);border:1px solid var(--border);width:min(360px,100%);max-height:calc(100vh - 32px);box-shadow:var(--shadow-lg);flex-direction:column;animation:.2s modalFadeIn;display:flex;overflow:hidden}.day-tasks-modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.day-tasks-modal-title{font-size:var(--text-md);color:var(--text);font-weight:600}.day-tasks-modal-close{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-base);background:0 0;border:none;padding:4px}.day-tasks-modal-close:hover{background:var(--bg-hover);color:var(--text)}.day-tasks-modal-body{flex:1;padding:12px;overflow-y:auto}.tag-popup{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:1100;min-width:160px;padding:8px;animation:.15s dropdownFadeIn;position:fixed}.tag-popup-item{cursor:pointer;border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-secondary);transition:all var(--transition-base);align-items:center;gap:8px;padding:8px 10px;display:flex}.tag-popup-item:hover{background:var(--bg-hover);color:var(--text)}.tag-menu{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:1100;min-width:180px;padding:8px;display:none;position:fixed}.tag-menu.open{animation:.15s dropdownFadeIn;display:block}.toast{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text);box-shadow:var(--shadow-lg);opacity:0;visibility:hidden;z-index:2000;padding:10px 16px;transition:all .2s;position:fixed;bottom:24px;left:50%;transform:translate(-50%)translateY(20px)}.toast.visible{opacity:1;visibility:visible;transform:translate(-50%)translateY(0)}.toast.success{border-color:var(--status-completed)}.toast.error{border-color:#ef4444}.mobile-bottom-nav{background:var(--bg);border-top:1px solid var(--border);z-index:100;padding:8px 16px;display:none;position:fixed;bottom:0;left:0;right:0}@media(max-width:768px){.mobile-bottom-nav{justify-content:space-around;align-items:center;display:flex}body{padding-bottom:64px}}.mobile-nav-item{color:var(--text-muted);cursor:pointer;transition:color var(--transition-base);border-radius:var(--radius-md);background:0 0;border:none;flex-direction:column;align-items:center;gap:2px;padding:6px 12px;display:flex}.mobile-nav-item:hover{color:var(--text-secondary)}.mobile-nav-item.active{color:var(--accent)}.mobile-nav-item svg{width:20px;height:20px}.mobile-nav-item span{font-size:10px;font-weight:500}.mobile-nav-add{background:var(--accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;padding:0;display:flex;box-shadow:0 2px 8px #f266594d}.mobile-nav-add:hover{background:var(--accent-hover);color:#fff}.mobile-nav-add svg{width:20px;height:20px}.mobile-nav-add span{display:none}.mobile-view-selector,.mobile-board-selector{z-index:200;display:none;position:fixed;inset:0}.mobile-view-selector.open,.mobile-board-selector.open{display:block}.mobile-view-selector-backdrop,.mobile-board-selector-backdrop{background:#00000080;position:absolute;inset:0}.mobile-view-selector-content,.mobile-board-selector-content{background:var(--bg-elevated);border-radius:var(--radius-lg)var(--radius-lg)0 0;max-height:70vh;animation:.2s slideUp;position:absolute;bottom:0;left:0;right:0;overflow-y:auto}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.mobile-view-selector-header,.mobile-board-selector-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.mobile-view-selector-title,.mobile-board-selector-title{font-size:var(--text-md);color:var(--text);font-weight:600}.mobile-view-selector-close,.mobile-board-selector-close{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:4px}.mobile-view-selector-close:hover,.mobile-board-selector-close:hover{color:var(--text)}.mobile-view-selector-close svg,.mobile-board-selector-close svg{width:20px;height:20px}.mobile-view-options,.mobile-board-options{padding:8px}.mobile-view-option,.mobile-board-option{border-radius:var(--radius-md);cursor:pointer;width:100%;transition:background var(--transition-base);text-align:left;background:0 0;border:none;align-items:center;gap:12px;padding:12px;display:flex}.mobile-view-option:hover,.mobile-board-option:hover{background:var(--bg-hover)}.mobile-view-option.active{background:var(--accent-muted)}.mobile-view-option-icon{border-radius:var(--radius-md);background:var(--bg);flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.mobile-view-option-icon svg{width:18px;height:18px;color:var(--text-secondary)}.mobile-view-option.active .mobile-view-option-icon svg{color:var(--accent)}.mobile-view-option-text{flex:1}.mobile-view-option-name{font-size:var(--text-sm);color:var(--text);font-weight:500;display:block}.mobile-view-option-desc{font-size:var(--text-xs);color:var(--text-muted)}.mobile-board-option-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.mobile-board-option-dot.notstarted{background:var(--status-not-started)}.mobile-board-option-dot.started{background:var(--status-started)}.mobile-board-option-dot.progress{background:var(--status-progress)}.mobile-board-option-dot.completed{background:var(--status-completed)}.mobile-board-option-name{font-size:var(--text-sm);color:var(--text);flex:1;font-weight:500}.mobile-board-option-count{font-size:var(--text-xs);color:var(--text-muted);background:var(--bg);border-radius:var(--radius-full);padding:2px 8px}.mobile-board-option svg{width:16px;height:16px;color:var(--text-muted)}.mobile-board-detail-header{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:12px 16px;display:flex}.mobile-board-back-btn{color:var(--text-secondary);cursor:pointer;font-size:var(--text-sm);background:0 0;border:none;align-items:center;gap:4px;display:flex}.mobile-board-back-btn:hover{color:var(--text)}.mobile-board-back-btn svg{width:16px;height:16px}.mobile-board-detail-title{font-size:var(--text-md);color:var(--text);font-weight:600}.mobile-board-detail-list{padding:8px}.mobile-tools-panel{background:var(--bg);z-index:200;flex-direction:column;display:none;position:fixed;inset:0}.mobile-tools-panel.open{display:flex}.mobile-tools-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.mobile-tools-title{font-size:var(--text-lg);color:var(--text);font-weight:600}.mobile-tools-close{color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:4px}.mobile-tools-close:hover{color:var(--text)}.mobile-tools-close svg{width:20px;height:20px}.mobile-tools-search{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);align-items:center;gap:8px;margin:12px 16px;padding:8px 12px;display:flex}.mobile-tools-search svg{width:16px;height:16px;color:var(--text-muted)}.mobile-tools-search input{color:var(--text);font-size:var(--text-sm);background:0 0;border:none;outline:none;flex:1}.mobile-tools-search input::placeholder{color:var(--text-muted)}.mobile-tools-grid{flex:1;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));align-content:start;gap:8px;padding:0 16px 16px;display:grid;overflow-y:auto}.mobile-tool-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);flex-direction:column;align-items:center;gap:6px;padding:12px;display:flex}.mobile-tool-card:hover{background:var(--bg-hover)}.mobile-tool-card svg{width:20px;height:20px;color:var(--accent)}.mobile-tool-card span{font-size:var(--text-xs);color:var(--text);text-align:center}.mobile-more-menu{z-index:200;display:none;position:fixed;inset:0}.mobile-more-menu.open{display:block}.mobile-more-backdrop{background:#00000080;position:absolute;inset:0}.mobile-more-content{background:var(--bg-elevated);border-radius:var(--radius-lg)var(--radius-lg)0 0;animation:.2s slideUp;position:absolute;bottom:0;left:0;right:0}.mobile-more-header{border-bottom:1px solid var(--border);padding:12px 16px}.mobile-more-title{font-size:var(--text-md);color:var(--text);font-weight:600}.mobile-more-options{padding:8px}.mobile-more-option{border-radius:var(--radius-md);cursor:pointer;width:100%;font-size:var(--text-sm);color:var(--text);transition:background var(--transition-base);background:0 0;border:none;align-items:center;gap:12px;padding:12px;display:flex}.mobile-more-option:hover{background:var(--bg-hover)}.mobile-more-option svg{width:18px;height:18px;color:var(--text-secondary)}.mobile-more-logout,.mobile-more-logout svg{color:#ef4444}.mobile-more-divider{background:var(--border);border:none;height:1px;margin:4px 12px}#settingsModal .tool-modal-content{width:min(480px,100%)}.settings-tabs{border-bottom:1px solid var(--border);background:var(--bg);gap:4px;padding:8px 16px;display:flex}.settings-tab{color:var(--text-secondary);font-size:var(--text-sm);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);background:0 0;border:none;padding:8px 14px;font-weight:500}.settings-tab:hover,.settings-tab.active{background:var(--bg-hover);color:var(--text)}.settings-panel{display:none}.settings-panel.active{display:block}.settings-section{border-bottom:1px solid var(--border);padding:16px}.settings-section:last-child{border-bottom:none}.settings-section-title{font-size:var(--text-sm);color:var(--text);margin-bottom:12px;font-weight:600}.settings-row{justify-content:space-between;align-items:center;padding:8px 0;display:flex}.settings-label{font-size:var(--text-sm);color:var(--text-secondary)}.settings-control{align-items:center;gap:8px;display:flex}.toggle-switch{width:36px;height:20px;position:relative}.toggle-slider{cursor:pointer;background:var(--border-strong);border-radius:var(--radius-full);transition:all var(--transition-base);position:absolute;inset:0}.toggle-slider:before{content:"";width:16px;height:16px;transition:all var(--transition-base);background:#fff;border-radius:50%;position:absolute;bottom:2px;left:2px}.toggle-switch input:checked+.toggle-slider{background:var(--accent)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(16px)}.calculator{width:100%}.calc-display{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);text-align:right;color:var(--text);font-variant-numeric:tabular-nums;margin-bottom:12px;padding:16px;font-size:24px;font-weight:600}.calc-buttons{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.calc-btn{font-size:var(--text-md);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text);cursor:pointer;transition:all var(--transition-base);padding:14px;font-weight:500}.calc-btn.operator{color:var(--accent)}.calc-btn.clear{color:#ef4444}.calc-btn.equals{background:var(--accent);color:#fff}.calc-btn.equals:hover{background:var(--accent-hover)}.emoji-picker{width:100%}.emoji-search{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);width:100%;font-size:var(--text-sm);color:var(--text);outline:none;margin-bottom:12px;padding:10px 12px}.emoji-search:focus{border-color:var(--accent)}.emoji-search::placeholder{color:var(--text-muted)}.emoji-grid{grid-template-columns:repeat(8,1fr);gap:4px;max-height:240px;display:grid;overflow-y:auto}.emoji-btn{border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-base);background:0 0;border:none;padding:8px;font-size:20px}.emoji-btn:hover{background:var(--bg-hover)}.emoji-copied{text-align:center;font-size:var(--text-sm);color:var(--status-completed);opacity:0;transition:opacity var(--transition-base);padding:8px}.emoji-copied.visible{opacity:1}.timer-card{width:100%}.timer-toggle{background:var(--bg);border-radius:var(--radius-md);gap:4px;margin-bottom:16px;padding:4px;display:flex}.timer-toggle-btn{color:var(--text-secondary);font-size:var(--text-sm);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-base);background:0 0;border:none;flex:1;padding:8px 12px;font-weight:500}.timer-toggle-btn:hover{color:var(--text)}.timer-toggle-btn.active{background:var(--bg-elevated);color:var(--text)}.timer-display{text-align:center;color:var(--text);font-variant-numeric:tabular-nums;margin-bottom:16px;font-size:48px;font-weight:600}.timer-panel{display:none}.timer-panel.active{display:block}.timer-inputs{gap:12px;margin-bottom:12px;display:flex}.timer-inputs-compact{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.timer-label{font-size:var(--text-xs);color:var(--text-secondary);flex-direction:column;gap:4px;display:flex}.timer-input{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-md);color:var(--text);outline:none;width:100%;padding:8px 12px}.timer-input:focus{border-color:var(--accent)}.timer-presets{gap:6px;margin-bottom:16px;display:flex}.timer-preset-btn{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--text-xs);cursor:pointer;transition:all var(--transition-base);flex:1;padding:8px;font-weight:500}.timer-preset-btn:hover{background:var(--bg-hover);color:var(--text)}.timer-toggle-row{font-size:var(--text-sm);color:var(--text-secondary);align-items:center;gap:8px;margin-bottom:12px;display:flex}.timer-toggle-row input[type=checkbox]{width:14px;height:14px;accent-color:var(--accent)}.timer-session{background:var(--bg);border-radius:var(--radius-md);justify-content:space-between;align-items:center;margin-bottom:16px;padding:8px 12px;display:flex}.timer-session-count{font-size:var(--text-xs);color:var(--text-muted)}.timer-controls{gap:8px;display:flex}.timer-btn{border-radius:var(--radius-md);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-base);border:1px solid #0000;flex:1;padding:12px;font-weight:500}.timer-btn-start{background:var(--accent);color:#fff}.timer-btn-start:hover{background:var(--accent-hover)}.timer-btn-pause{background:var(--bg);border-color:var(--border);color:var(--text)}.timer-btn-pause:hover{background:var(--bg-hover)}.timer-btn-reset{background:var(--bg);border-color:var(--border);color:var(--text-secondary)}.timer-btn-reset:hover{background:var(--bg-hover);color:var(--text)}.notes-modal-content{width:min(600px,100%);height:min(500px,80vh)}.notes-header{padding:12px 16px}.notes-title-input{font-size:var(--text-lg);color:var(--text);background:0 0;border:none;outline:none;width:100%;font-weight:600}.notes-title-input::placeholder{color:var(--text-muted)}.notes-toolbar{border-bottom:1px solid var(--border);background:var(--bg);align-items:center;gap:2px;padding:8px 16px;display:flex}.notes-toolbar-btn{color:var(--text-secondary);font-size:var(--text-sm);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-base);background:0 0;border:none;padding:6px 10px;font-weight:500}.notes-toolbar-btn:hover{background:var(--bg-hover);color:var(--text)}.notes-toolbar-btn svg{fill:none;stroke:currentColor;stroke-width:2px;width:14px;height:14px}.notes-toolbar-spacer{flex:1}.notes-char-count{font-size:var(--text-xs);color:var(--text-muted)}.notes-editor-container{flex:1;padding:16px;overflow-y:auto}.notes-editor-content{min-height:200px;font-size:var(--text-md);color:var(--text);outline:none;line-height:1.6}.notes-editor-content:empty:before{content:attr(data-placeholder);color:var(--text-muted)}.quick-light-buttons{gap:4px;display:flex}.quick-light-btn{border-radius:var(--radius-sm);background:var(--bg-elevated);border:1px solid var(--border);cursor:pointer;width:24px;height:24px;transition:all var(--transition-base);justify-content:center;align-items:center;display:flex}.quick-light-btn:hover{background:var(--bg-hover)}.quick-light-btn.on{background:var(--accent-muted);border-color:var(--accent)}.quick-light-btn svg{width:12px;height:12px;color:var(--text-secondary)}.quick-light-btn.on svg{color:var(--accent)}@media(min-width:769px){.mobile-only{display:none!important}.mobile-schedule,.day-picker{display:none}}@media(max-width:768px){.desktop-only{display:none!important}.desktop-views,.tab-bar{display:none}}.board-view{max-width:100%;padding:16px;overflow-x:auto}.kanban-board{gap:12px;min-width:max-content;display:flex}.kanban-column{background:var(--bg-elevated);border-radius:var(--radius-lg);border:1px solid var(--border);flex-direction:column;min-width:260px;max-width:300px;max-height:calc(100vh - 160px);display:flex}.kanban-column-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.kanban-column-title{font-weight:600;font-size:var(--text-sm);color:var(--text);align-items:center;gap:8px;display:flex}.kanban-status-dot{border-radius:50%;width:8px;height:8px}.kanban-column-count{background:var(--bg);border-radius:var(--radius-full);color:var(--text-muted);padding:2px 6px;font-size:10px;font-weight:600}.kanban-column-body{flex:1;padding:8px;overflow-y:auto}.kanban-card{background:var(--bg);border-radius:var(--radius-md);border:1px solid var(--border);cursor:pointer;transition:all var(--transition-base);margin-bottom:6px;padding:10px 12px}.kanban-card:hover{background:var(--bg-hover);border-color:var(--border-strong)}.kanban-card-title{font-weight:500;font-size:var(--text-sm);color:var(--text);margin-bottom:4px}.kanban-card-meta{color:var(--text-muted);align-items:center;gap:8px;font-size:10px;display:flex}.kanban-card-date{align-items:center;gap:3px;display:flex}.board-divider{background:var(--border);border:none;height:1px;margin:16px 0}.board-section{max-width:100%;padding:16px;overflow-x:auto}.board-grid{gap:12px;min-width:max-content;display:flex}.board-column{background:var(--bg-elevated);border-radius:var(--radius-lg);border:1px solid var(--border);flex-direction:column;min-width:260px;max-width:300px;max-height:calc(100vh - 200px);display:flex}.board-col-header{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:12px 14px;display:flex}.board-col-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.board-col-dot.notstarted{background:var(--status-not-started)}.board-col-dot.started{background:var(--status-started)}.board-col-dot.progress{background:var(--status-progress)}.board-col-dot.completed{background:var(--status-completed)}.board-col-name{font-weight:600;font-size:var(--text-sm);color:var(--text);flex:1}.board-col-count{background:var(--bg);border-radius:var(--radius-full);color:var(--text-muted);padding:2px 8px;font-size:10px;font-weight:600}.board-list{flex-direction:column;flex:1;gap:6px;padding:8px;display:flex;overflow-y:auto}.board-card{background:var(--bg);border-radius:var(--radius-md);border:1px solid var(--border);cursor:pointer;transition:all var(--transition-base);padding:10px 12px}.board-card:hover{background:var(--bg-hover);border-color:var(--border-strong)}.board-card-title{font-weight:500;font-size:var(--text-sm);color:var(--text);margin-bottom:4px}.board-card-meta{color:var(--text-muted);align-items:center;gap:8px;font-size:10px;display:flex}.spotify-tool-icon{background:#1db95426!important}.spotify-tool-icon svg{color:#1db954!important}.gcal-tool-icon{background:#4285f426!important}.gcal-tool-icon svg{color:#4285f4!important}.gmail-tool-card{position:relative}.gmail-tool-icon{position:relative;background:#ea433526!important}.gmail-tool-icon svg{color:#ea4335!important}.gmail-unread-badge{color:#fff;border-radius:var(--radius-full);background:#ea4335;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:600;display:flex;position:absolute;top:-4px;right:-4px}.settings-toggle-row{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.settings-toggle-label{flex-direction:column;flex:1;gap:2px;display:flex}.settings-toggle-text{font-size:var(--text-sm);color:var(--text);font-weight:500}.settings-toggle-desc{font-size:var(--text-xs);color:var(--text-muted)}.settings-toggle-switch{background:var(--border-strong);border-radius:var(--radius-full);width:36px;height:20px;transition:background var(--transition-base);flex-shrink:0;position:relative}.settings-toggle-switch:after{content:"";width:16px;height:16px;transition:transform var(--transition-base);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px}.settings-toggle-row input[type=checkbox]{display:none}.settings-toggle-row input[type=checkbox]:checked+.settings-toggle-switch{background:var(--accent)}.settings-toggle-row input[type=checkbox]:checked+.settings-toggle-switch:after{transform:translate(16px)}.settings-section-desc{font-size:var(--text-xs);color:var(--text-muted);margin-bottom:12px}.settings-option-row{justify-content:space-between;align-items:center;gap:16px;padding:10px 0;display:flex}.settings-option-label{flex-direction:column;flex:1;gap:2px;display:flex}.settings-select{width:auto;min-width:140px}.settings-calendar-options{border-left:2px solid var(--border);margin-top:8px;padding-left:16px}.settings-location-group{flex-direction:column;gap:16px;display:flex}.settings-location-item{background:var(--bg);border-radius:var(--radius-md);padding:12px}.settings-location-header{font-weight:500;font-size:var(--text-sm);color:var(--text);align-items:center;gap:8px;margin-bottom:10px;display:flex}.settings-location-header svg{color:var(--accent)}.settings-location-fields{flex-direction:column;gap:8px;display:flex}.settings-location-address-wrapper{position:relative}.settings-location-input{width:100%}.places-suggestions{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:100;max-height:200px;display:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.places-suggestions.open{display:block}.places-suggestion{font-size:var(--text-sm);cursor:pointer;transition:background var(--transition-base);padding:8px 12px}.places-suggestion:hover{background:var(--bg-hover)}.settings-location-time-row{gap:12px;display:flex}.settings-location-time-row label{font-size:var(--text-xs);color:var(--text-muted);flex-direction:column;flex:1;gap:4px;display:flex}.settings-time-input{font-size:var(--text-sm);padding:6px 10px}.settings-modal-content{width:min(500px,100%)}.stopwatch-card{width:100%}.stopwatch-display{text-align:center;color:var(--text);font-variant-numeric:tabular-nums;font-size:48px;font-weight:600;font-family:var(--font-mono);margin-bottom:16px}.stopwatch-controls{gap:8px;margin-bottom:16px;display:flex}.stopwatch-laps{flex-direction:column;gap:4px;max-height:200px;display:flex;overflow-y:auto}.stopwatch-lap{background:var(--bg);border-radius:var(--radius-sm);font-size:var(--text-sm);justify-content:space-between;padding:8px 12px;display:flex}.stopwatch-lap-number{color:var(--text-muted)}.stopwatch-lap-time{font-variant-numeric:tabular-nums;font-family:var(--font-mono)}.timer-meta{background:var(--bg);border-radius:var(--radius-md);font-size:var(--text-sm);justify-content:space-between;align-items:center;margin-bottom:12px;padding:8px 12px;display:flex}.timer-meta-label{color:var(--text-muted)}.timer-meta-value{color:var(--text);font-variant-numeric:tabular-nums;font-weight:500}.timer-btn-primary{background:var(--accent);color:#fff;border:none}.timer-btn-primary:hover{background:var(--accent-hover)}.converter-card{width:100%}.converter-type-selector{background:var(--bg);border-radius:var(--radius-md);gap:4px;margin-bottom:16px;padding:4px;display:flex}.converter-type-btn{color:var(--text-secondary);font-size:var(--text-xs);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-base);background:0 0;border:none;flex:1;padding:8px 12px;font-weight:500}.converter-type-btn:hover{color:var(--text)}.converter-type-btn.active{background:var(--bg-elevated);color:var(--text)}.converter-inputs{flex-direction:column;align-items:center;gap:12px;display:flex}.converter-input-group{gap:8px;width:100%;display:flex}.converter-input{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-md);color:var(--text);outline:none;flex:1;padding:10px 12px}.converter-input:focus{border-color:var(--accent)}.converter-select{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text);cursor:pointer;min-width:100px;padding:10px 12px}.converter-swap{justify-content:center;display:flex}.converter-swap-btn{background:var(--bg-elevated);border:1px solid var(--border);cursor:pointer;width:36px;height:36px;transition:all var(--transition-base);color:var(--text-secondary);border-radius:50%;justify-content:center;align-items:center;display:flex}.converter-swap-btn:hover{background:var(--bg-hover);color:var(--accent)}.color-picker-card{width:100%}.color-preview-large{border-radius:var(--radius-md);background:#6366f1;width:100%;height:100px;margin-bottom:16px}.color-input-row{gap:8px;margin-bottom:16px;display:flex}.color-native-input{border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;background:0 0;width:44px;height:36px;padding:2px}.color-hex-input{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text);font-family:var(--font-mono);outline:none;flex:1;padding:8px 12px}.color-hex-input:focus{border-color:var(--accent)}.color-sliders{flex-direction:column;gap:8px;display:flex}.color-slider-label{font-size:var(--text-sm);color:var(--text-secondary);align-items:center;gap:10px;display:flex}.color-slider-label span:first-child{width:16px;font-weight:600}.color-slider-label input[type=range]{appearance:none;background:var(--border);border-radius:var(--radius-full);outline:none;flex:1;height:6px}.color-slider-label input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--accent);cursor:pointer;border-radius:50%;width:16px;height:16px}.color-slider-value{text-align:right;font-variant-numeric:tabular-nums;width:32px;font-family:var(--font-mono);font-size:var(--text-xs)}.color-palette{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.color-swatch{border-radius:var(--radius-sm);cursor:pointer;width:28px;height:28px;transition:all var(--transition-base);border:2px solid #0000}.color-swatch:hover{transform:scale(1.1)}.color-swatch.selected{border-color:var(--text)}.color-formats{flex-direction:column;gap:8px;display:flex}.color-format{background:var(--bg);border-radius:var(--radius-sm);font-size:var(--text-sm);justify-content:space-between;padding:8px 12px;display:flex}.color-format-label{color:var(--text-muted);font-weight:500}.color-format-value{font-family:var(--font-mono);color:var(--text)}.image-editor-container{width:100%}.image-editor-upload{border:2px dashed var(--border);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:48px 24px;display:flex}.image-editor-upload:hover{border-color:var(--accent);background:var(--bg-hover)}.image-editor-upload svg{color:var(--text-muted)}.image-editor-upload p{color:var(--text-secondary);font-size:var(--text-sm)}.image-editor-workspace{flex-direction:column;gap:16px;display:flex}#imageEditorCanvas{border-radius:var(--radius-md);background:var(--bg);max-width:100%}.image-editor-toolbar{flex-direction:column;gap:12px;display:flex}.image-editor-filters{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px;display:grid}.image-editor-filters label{font-size:var(--text-xs);color:var(--text-secondary);flex-direction:column;gap:4px;display:flex}.image-editor-filters input[type=range]{width:100%}.image-editor-actions{flex-wrap:wrap;gap:6px;display:flex}.password-generator{width:100%}.password-display input{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-md);font-family:var(--font-mono);color:var(--text);outline:none;flex:1;padding:12px}.password-copy-btn{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;color:var(--text-secondary);transition:all var(--transition-base);padding:12px}.password-copy-btn:hover{background:var(--bg-hover);color:var(--text)}.password-options{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.password-options label{font-size:var(--text-sm);color:var(--text-secondary);cursor:pointer;align-items:center;gap:8px;display:flex}.password-options input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent)}.password-options input[type=range]{flex:1;margin-left:8px}.password-strength{border-radius:var(--radius-md);font-size:var(--text-sm);text-align:center;margin-top:12px;padding:8px 12px}.world-clock-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;margin-bottom:16px;display:grid}.world-clock-item{background:var(--bg);border-radius:var(--radius-md);text-align:center;padding:12px;position:relative}.world-clock-city{font-size:var(--text-sm);color:var(--text);margin-bottom:4px;font-weight:500}.world-clock-time{font-size:var(--text-xl);color:var(--text);font-variant-numeric:tabular-nums;font-weight:600;font-family:var(--font-mono)}.world-clock-date{font-size:var(--text-xs);color:var(--text-muted)}.world-clock-remove{color:var(--text-muted);cursor:pointer;opacity:0;transition:opacity var(--transition-base);background:0 0;border:none;padding:4px;position:absolute;top:4px;right:4px}.world-clock-item:hover .world-clock-remove{opacity:1}.world-clock-remove:hover{color:#ef4444}.world-clock-add{gap:8px;display:flex}.world-clock-add select{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text);flex:1;padding:8px 12px}.qr-code-generator{width:100%}.qr-code-generator textarea{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);width:100%;font-size:var(--text-sm);color:var(--text);resize:vertical;outline:none;margin-bottom:12px;padding:12px}.qr-code-generator textarea:focus{border-color:var(--accent)}.qr-code-options{margin-bottom:12px}.qr-code-options label{font-size:var(--text-sm);color:var(--text-secondary);align-items:center;gap:8px;display:flex}.qr-code-options select{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text);padding:6px 10px}.qr-code-display{justify-content:center;margin-top:12px;padding:16px;display:flex}.qr-code-display canvas,.qr-code-display img{border-radius:var(--radius-md);background:#fff}.habit-tracker{width:100%}.habit-add{gap:8px;margin-bottom:16px;display:flex}.habit-add input{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text);outline:none;flex:1;padding:10px 12px}.habit-add input:focus{border-color:var(--accent)}.habit-list{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.habit-item{background:var(--bg);border-radius:var(--radius-md);align-items:center;gap:12px;padding:10px 12px;display:flex}.habit-checkbox{border-radius:var(--radius-sm);border:2px solid var(--border-strong);cursor:pointer;width:20px;height:20px;transition:all var(--transition-base);justify-content:center;align-items:center;display:flex}.habit-checkbox.checked{background:var(--status-completed);border-color:var(--status-completed)}.habit-name{font-size:var(--text-sm);color:var(--text);flex:1}.habit-streak{font-size:var(--text-xs);color:var(--accent);font-weight:500}.habit-delete{color:var(--text-muted);cursor:pointer;opacity:0;transition:opacity var(--transition-base);background:0 0;border:none}.habit-item:hover .habit-delete{opacity:1}.habit-delete:hover{color:#ef4444}.habit-stats{background:var(--bg);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-secondary);padding:12px}.breathing-exercise{flex-direction:column;align-items:center;gap:24px;padding:16px 0;display:flex}.breathing-circle{background:var(--accent-muted);border:3px solid var(--accent);border-radius:50%;justify-content:center;align-items:center;width:180px;height:180px;transition:transform 4s ease-in-out;display:flex}.breathing-circle.inhale{transform:scale(1.3)}.breathing-circle.exhale{transform:scale(1)}.breathing-text{font-size:var(--text-xl);color:var(--accent);font-weight:600}.breathing-controls{gap:8px;width:100%;display:flex}.breathing-controls select{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text);flex:1;padding:10px 12px}.breathing-timer{font-size:var(--text-2xl);color:var(--text);font-variant-numeric:tabular-nums;font-weight:600;font-family:var(--font-mono)}.quick-note-card{width:100%}.quick-note-input{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);width:100%;min-height:150px;font-size:var(--text-sm);color:var(--text);resize:vertical;outline:none;margin-bottom:12px;padding:12px;font-family:inherit}.quick-note-input:focus{border-color:var(--accent)}.quick-note-actions{gap:8px;display:flex}.quick-note-status{font-size:var(--text-xs);color:var(--status-completed);text-align:center;margin-top:8px}.spotify-modal-content{width:min(700px,100%)}.spotify-modal-title{align-items:center;gap:8px;display:flex}.spotify-dot{background:#1db954;border-radius:50%;width:8px;height:8px}.spotify-modal-actions{align-items:center;gap:8px;display:flex}.spotify-status-indicator{font-size:var(--text-xs);color:var(--text-muted)}.spotify-header-btn,.spotify-primary-btn{color:#fff;border-radius:var(--radius-md);font-size:var(--text-xs);cursor:pointer;transition:all var(--transition-base);background:#1db954;border:none;padding:6px 12px;font-weight:500}.spotify-header-btn:hover,.spotify-primary-btn:hover{background:#1ed760}.spotify-icon-btn{color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-base);background:0 0;border:none;justify-content:center;align-items:center;padding:6px;display:flex}.spotify-icon-btn:hover{background:var(--bg-hover);color:var(--text)}.spotify-now-playing-card{background:var(--bg);border-radius:var(--radius-lg);margin-bottom:16px;padding:16px}.spotify-album-art-large{aspect-ratio:1;border-radius:var(--radius-md);background:var(--bg-elevated);justify-content:center;align-items:center;width:100%;max-width:200px;margin:0 auto 16px;display:flex;overflow:hidden}.spotify-album-art-large img{object-fit:cover;width:100%;height:100%}.spotify-album-placeholder{color:var(--text-muted);font-size:48px}.spotify-now-playing-info{text-align:center;margin-bottom:12px}.spotify-track-title{font-size:var(--text-md);color:var(--text);margin-bottom:4px;font-weight:600}.spotify-track-artist{font-size:var(--text-sm);color:var(--text-secondary)}.spotify-progress-bar{align-items:center;gap:8px;margin-bottom:16px;display:flex}.spotify-progress-time{color:var(--text-muted);font-variant-numeric:tabular-nums;min-width:32px;font-size:10px}.spotify-progress-bar input[type=range]{appearance:none;background:var(--border);border-radius:var(--radius-full);flex:1;height:4px}.spotify-progress-bar input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;cursor:pointer;background:#1db954;border-radius:50%;width:12px;height:12px}.spotify-main-controls{justify-content:center;align-items:center;gap:12px;margin-bottom:12px;display:flex}.spotify-ctrl-btn{color:var(--text-secondary);cursor:pointer;transition:all var(--transition-base);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:8px;display:flex}.spotify-ctrl-btn:hover{color:var(--text)}.spotify-ctrl-btn svg{width:20px;height:20px}.spotify-ctrl-primary{color:#fff;background:#1db954;padding:12px}.spotify-ctrl-primary:hover{color:#fff;background:#1ed760}.spotify-ctrl-primary svg{width:24px;height:24px}.spotify-toggle-btn .spotify-icon-pause,.spotify-toggle-btn.playing .spotify-icon-play{display:none}.spotify-toggle-btn.playing .spotify-icon-pause{display:block}.spotify-shuffle-btn.active,.spotify-repeat-btn.active{color:#1db954}.spotify-volume-row{align-items:center;gap:8px;display:flex}.spotify-vol-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:4px}.spotify-vol-btn svg{width:18px;height:18px}.spotify-volume-row input[type=range]{appearance:none;background:var(--border);border-radius:var(--radius-full);flex:1;height:4px}.spotify-volume-row input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--text);cursor:pointer;border-radius:50%;width:12px;height:12px}.spotify-vol-value{font-size:var(--text-xs);color:var(--text-muted);min-width:24px}.spotify-panels-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.spotify-panel{background:var(--bg);border-radius:var(--radius-md);padding:12px}.spotify-panel-wide{grid-column:span 2}@media(max-width:640px){.spotify-panel-wide{grid-column:span 1}}.spotify-panel-header{margin-bottom:8px}.spotify-panel-header h3{font-size:var(--text-sm);color:var(--text);align-items:center;gap:6px;font-weight:600;display:flex}.spotify-panel-header svg{color:var(--text-muted)}.spotify-device-list,.spotify-list{flex-direction:column;gap:4px;max-height:150px;display:flex;overflow-y:auto}.spotify-device-item,.spotify-playlist-item,.spotify-track-item{border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-base);align-items:center;gap:8px;padding:8px;display:flex}.spotify-device-item:hover,.spotify-playlist-item:hover,.spotify-track-item:hover{background:var(--bg-hover)}.spotify-device-item.active,.spotify-playlist-item.active{background:#1db95426}.spotify-helper{font-size:var(--text-xs);color:var(--text-muted);text-align:center;padding:8px}.spotify-panel-footer{border-top:1px solid var(--border);margin-top:8px;padding-top:8px}.spotify-mini-setting{font-size:var(--text-xs);color:var(--text-secondary);cursor:pointer;align-items:center;gap:6px;margin-bottom:8px;display:flex}.spotify-mini-setting input{accent-color:#1db954}.spotify-secondary-btn,.spotify-mini-toggle-btn{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-secondary);border-radius:var(--radius-md);font-size:var(--text-xs);cursor:pointer;transition:all var(--transition-base);justify-content:center;align-items:center;gap:6px;width:100%;padding:6px 10px;display:flex}.spotify-secondary-btn:hover,.spotify-mini-toggle-btn:hover{background:var(--bg-hover);color:var(--text)}.spotify-list-search{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);align-items:center;gap:6px;margin-bottom:8px;padding:6px 8px;display:flex}.spotify-list-search svg{color:var(--text-muted);flex-shrink:0}.spotify-input{color:var(--text);font-size:var(--text-sm);background:0 0;border:none;outline:none;flex:1}.spotify-track-filters{flex-wrap:wrap;gap:4px;margin-bottom:8px;display:flex}.spotify-filter-btn{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-secondary);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-base);padding:4px 8px;font-size:10px}.spotify-filter-btn:hover{background:var(--bg-hover)}.spotify-filter-btn.active{color:#fff;background:#1db954;border-color:#1db954}.gcal-modal-content{width:min(500px,100%)}.gcal-modal-title{align-items:center;gap:8px;display:flex}.gcal-dot{background:#4285f4;border-radius:50%;width:8px;height:8px}.gcal-modal-actions{align-items:center;gap:8px;display:flex}.gcal-status-indicator{font-size:var(--text-xs);color:var(--text-muted)}.gcal-header-btn,.gcal-sync-btn{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-secondary);border-radius:var(--radius-md);font-size:var(--text-xs);cursor:pointer;transition:all var(--transition-base);align-items:center;gap:4px;padding:6px 10px;display:flex}.gcal-header-btn:hover,.gcal-sync-btn:hover{background:var(--bg-hover);color:var(--text)}.gcal-sync-card{background:var(--bg);border-radius:var(--radius-md);margin-bottom:16px;padding:16px}.gcal-sync-status{align-items:center;gap:12px;margin-bottom:12px;display:flex}.gcal-sync-icon{color:#4285f4}.gcal-sync-info{flex:1}.gcal-sync-title{font-size:var(--text-md);color:var(--text);font-weight:600}.gcal-sync-desc{font-size:var(--text-sm);color:var(--text-muted)}.gcal-sync-actions{flex-wrap:wrap;gap:8px;display:flex}.gcal-action-btn{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-secondary);border-radius:var(--radius-md);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-base);align-items:center;gap:6px;padding:8px 12px;display:flex}.gcal-action-btn:hover{background:var(--bg-hover);color:var(--text)}.gcal-action-btn-primary{color:#fff;background:#4285f4;border-color:#4285f4}.gcal-action-btn-primary:hover{color:#fff;background:#3367d6}.gcal-panel{background:var(--bg);border-radius:var(--radius-md);margin-bottom:12px;padding:12px}.gcal-panel-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.gcal-panel-header h3{font-size:var(--text-sm);color:var(--text);align-items:center;gap:6px;font-weight:600;display:flex}.gcal-panel-header svg{color:var(--text-muted)}.gcal-toggle-all-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:4px}.gcal-toggle-all-btn:hover{color:var(--text)}.gcal-calendar-list,.gcal-event-list,.gcal-upcoming-list{flex-direction:column;gap:4px;max-height:200px;display:flex;overflow-y:auto}.gcal-calendar-item,.gcal-event-item{border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-base);align-items:center;gap:8px;padding:8px;display:flex}.gcal-calendar-item:hover,.gcal-event-item:hover{background:var(--bg-hover)}.gcal-event-count{font-size:var(--text-xs);color:var(--text-muted);background:var(--bg-elevated);border-radius:var(--radius-full);padding:2px 8px}.gcal-empty-state{text-align:center;font-size:var(--text-sm);color:var(--text-muted);padding:16px}.gcal-quick-actions{justify-content:center;display:flex}.gcal-quick-btn{background:var(--bg);border:1px solid var(--border);color:var(--text-secondary);border-radius:var(--radius-md);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-base);align-items:center;gap:6px;padding:8px 16px;display:flex}.gcal-quick-btn:hover{background:var(--bg-hover);color:var(--text)}.labels-page{flex-direction:column;max-width:640px;height:100%;margin:0 auto;padding:16px 20px;display:flex}.labels-page__header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.labels-page__title-group{align-items:center;gap:12px;display:flex}.labels-page__title{color:var(--text-0);margin:0;font-size:15px;font-weight:600}.labels-page__status{color:var(--text-2);background:var(--bg-1);border-radius:100px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;display:flex}.labels-page__actions{align-items:center;gap:6px;display:flex}.labels-page__btn{cursor:pointer;border:none;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:500;transition:all .15s;display:inline-flex}.labels-page__btn--ghost{color:var(--text-2);background:0 0}.labels-page__btn--ghost:hover{background:var(--bg-1);color:var(--text-1)}.labels-page__btn--primary{background:var(--accent-0);color:#fff}.labels-page__btn--primary:hover{background:var(--accent-1)}.labels-page__content{flex:1;overflow-y:auto}.labels-page__groups{flex-direction:column;gap:16px;display:flex}.labels-page__empty{color:var(--text-3);text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:48px 24px;display:flex}.labels-page__empty svg{opacity:.4;margin-bottom:12px}.labels-page__empty p{color:var(--text-2);margin:0 0 4px;font-size:13px;font-weight:500}.labels-page__empty span{margin-bottom:16px;font-size:12px}.labels-page__empty-btn{color:#fff;background:var(--accent-0);cursor:pointer;border:none;border-radius:6px;align-items:center;gap:6px;padding:8px 14px;font-size:12px;font-weight:500;transition:background .15s;display:inline-flex}.labels-page__empty-btn:hover{background:var(--accent-1)}.labels-group{background:var(--bg-0);border:1px solid var(--stroke-0);border-radius:10px;overflow:hidden}.labels-group__header{background:var(--bg-1);border-bottom:1px solid var(--stroke-0);align-items:center;gap:8px;padding:10px 12px;display:flex}.labels-group__toggle{width:20px;height:20px;color:var(--text-2);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;transition:all .15s;display:flex}.labels-group__toggle:hover{background:var(--bg-2);color:var(--text-1)}.labels-group__name{color:var(--text-1);flex:1;font-size:12px;font-weight:600}.labels-group__name--muted{color:var(--text-2);font-weight:500}.labels-group__count{color:var(--text-3);background:var(--bg-2);border-radius:4px;padding:2px 6px;font-size:11px}.labels-group__actions{opacity:0;align-items:center;gap:2px;transition:opacity .15s;display:flex}.labels-group__header:hover .labels-group__actions{opacity:1}.labels-group__btn{width:24px;height:24px;color:var(--text-2);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;transition:all .15s;display:flex}.labels-group__btn:hover{background:var(--bg-2);color:var(--text-1)}.labels-group__btn--danger:hover{color:#ef4444;background:#ef44441a}.labels-group__items{flex-direction:column;display:flex}.labels-group__empty{color:var(--text-3);text-align:center;padding:16px;font-size:12px}.labels-item{align-items:center;gap:10px;padding:10px 12px;transition:background .15s;animation:.2s labels-slide-in;display:flex}.labels-item:hover{background:var(--bg-1)}.labels-item__dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.labels-item__content{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.labels-item__name{color:var(--text-0);font-size:13px;font-weight:500}.labels-item__desc{color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.labels-item__count{color:var(--text-3);background:var(--bg-1);border-radius:4px;flex-shrink:0;padding:2px 8px;font-size:11px}.labels-item__actions{opacity:0;align-items:center;gap:2px;transition:opacity .15s;display:flex}.labels-item:hover .labels-item__actions{opacity:1}.labels-item__btn{width:28px;height:28px;color:var(--text-2);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;transition:all .15s;display:flex}.labels-item__btn:hover{background:var(--bg-2);color:var(--text-1)}.labels-item__menu-wrapper{position:relative}.labels-item__dropdown{background:var(--bg-0);border:1px solid var(--stroke-0);z-index:50;border-radius:8px;min-width:120px;margin-top:4px;padding:4px;animation:.15s labels-fade-in;position:absolute;top:100%;right:0;box-shadow:0 4px 12px #00000026}.labels-item__dropdown-btn{width:100%;color:var(--text-1);cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;padding:8px 10px;font-size:12px;transition:background .15s;display:flex}.labels-item__dropdown-btn:hover{background:var(--bg-1)}.labels-item__dropdown-btn--danger:hover{color:#ef4444;background:#ef44441a}.labels-modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:20px;animation:.15s labels-fade-in;display:flex;position:fixed;inset:0}.labels-modal{background:var(--bg-0);border:1px solid var(--stroke-0);border-radius:12px;flex-direction:column;width:100%;max-width:380px;max-height:80vh;animation:.2s labels-scale-in;display:flex;overflow:hidden}.labels-modal__header{border-bottom:1px solid var(--stroke-0);justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.labels-modal__header h2{color:var(--text-0);margin:0;font-size:14px;font-weight:600}.labels-modal__close{width:28px;height:28px;color:var(--text-2);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;transition:all .15s;display:flex}.labels-modal__close:hover{background:var(--bg-1);color:var(--text-1)}.labels-modal__body{flex-direction:column;gap:14px;padding:16px;display:flex;overflow-y:auto}.labels-modal__preview{background:var(--bg-1);border-radius:8px;justify-content:center;padding:12px;display:flex}.labels-modal__preview-badge{color:#fff;border-radius:100px;align-items:center;padding:4px 10px;font-size:12px;font-weight:500;display:inline-flex}.labels-modal__field{flex-direction:column;gap:6px;display:flex}.labels-modal__field label{color:var(--text-2);font-size:12px;font-weight:500}.labels-modal__optional{color:var(--text-3);font-weight:400}.labels-modal__field input,.labels-modal__field select{color:var(--text-0);background:var(--bg-1);border:1px solid var(--stroke-0);border-radius:8px;padding:10px 12px;font-size:13px;transition:border-color .15s}.labels-modal__field input:focus,.labels-modal__field select:focus{border-color:var(--accent-0);outline:none}.labels-modal__hint{color:var(--text-3);font-size:11px}.labels-modal__colors{flex-wrap:wrap;gap:6px;display:flex}.labels-modal__color{cursor:pointer;color:#fff;border:2px solid #0000;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;transition:all .15s;display:flex}.labels-modal__color:hover{transform:scale(1.1)}.labels-modal__color--selected{border-color:var(--text-0);box-shadow:0 0 0 2px var(--bg-0)}.labels-modal__submit{color:#fff;background:var(--accent-0);cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;margin-top:4px;padding:10px 16px;font-size:13px;font-weight:500;transition:background .15s;display:flex}.labels-modal__submit:hover{background:var(--accent-1)}.labels-modal__submit:disabled{opacity:.5;cursor:not-allowed}@keyframes labels-fade-in{0%{opacity:0}to{opacity:1}}@keyframes labels-scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes labels-slide-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media(max-width:640px){.labels-page{padding:12px 16px}.labels-page__header{flex-direction:column;align-items:flex-start;gap:12px}.labels-page__actions{justify-content:flex-end;width:100%}.labels-item__actions,.labels-group__actions{opacity:1}.labels-modal{max-width:none;margin:0 10px}}.templates-page{gap:var(--space-5);flex-direction:column;height:100%;display:flex}.templates-header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.templates-header__left{flex-direction:column;gap:2px;display:flex}.templates-header__title{color:var(--text-0);margin:0;font-size:20px;font-weight:600}.templates-header__subtitle{color:var(--text-2);margin:0;font-size:14px}.templates-header__btn{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-4);background:var(--accent-1);border-radius:var(--radius-md);color:var(--bg-0);cursor:pointer;border:none;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex}.templates-header__btn:hover{background:var(--accent-2)}.templates-header__btn svg{width:16px;height:16px}.templates-content{flex:1;min-height:0}.templates-table-wrapper{background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);overflow:hidden}.templates-table{border-collapse:collapse;width:100%}.templates-table__th{padding:var(--space-3)var(--space-4);text-align:left;color:var(--text-2);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--stroke-1);background:var(--bg-1);font-size:12px;font-weight:600}.templates-table__th--status{width:48px}.templates-table__th--title{min-width:200px}.templates-table__th--recurrence{width:160px}.templates-table__th--next{width:140px}.templates-table__th--actions{width:100px}.templates-table__td{padding:var(--space-3)var(--space-4);color:var(--text-1);border-bottom:1px solid var(--stroke-0);vertical-align:middle;font-size:14px}.templates-table tbody tr:hover{background:var(--bg-2)}.templates-table tbody tr:last-child .templates-table__td{border-bottom:none}.template-toggle{width:36px;height:20px;position:relative}.template-toggle input{opacity:0;width:0;height:0}.template-toggle__slider{cursor:pointer;background:var(--bg-3);border-radius:10px;transition:all .15s;position:absolute;inset:0}.template-toggle__slider:before{content:"";background:var(--bg-0);border-radius:50%;width:14px;height:14px;transition:all .15s;position:absolute;bottom:3px;left:3px}.template-toggle input:checked+.template-toggle__slider{background:var(--accent-1)}.template-toggle input:checked+.template-toggle__slider:before{transform:translate(16px)}.template-title-cell{flex-direction:column;gap:2px;display:flex}.template-title{color:var(--text-0);font-weight:500}.template-description{color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;max-width:300px;font-size:12px;overflow:hidden}.template-recurrence{align-items:center;gap:var(--space-1);padding:var(--space-1)var(--space-2);background:var(--bg-2);border-radius:var(--radius-sm);color:var(--text-1);font-size:12px;display:inline-flex}.template-recurrence svg{width:12px;height:12px;color:var(--text-2)}.template-next-run{color:var(--text-2);font-size:13px}.template-next-run--soon{color:var(--accent-2)}.template-next-run--disabled{color:var(--text-3);font-style:italic}.template-actions{gap:var(--space-1);display:flex}.template-action-btn{border-radius:var(--radius-md);width:32px;height:32px;color:var(--text-2);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:all .15s;display:flex}.template-action-btn:hover{background:var(--bg-2);color:var(--text-0)}.template-action-btn--run:hover{color:var(--accent-2)}.template-action-btn--delete:hover{color:var(--danger)}.template-action-btn svg{width:16px;height:16px}.templates-empty{justify-content:center;align-items:center;gap:var(--space-4);padding:var(--space-12);text-align:center;flex-direction:column;display:flex}.templates-empty svg{width:64px;height:64px;color:var(--text-3)}.templates-empty h3{color:var(--text-1);margin:0;font-size:18px;font-weight:600}.templates-empty p{color:var(--text-2);margin:0;font-size:14px}.templates-empty__btn{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-4);background:var(--accent-1);border-radius:var(--radius-md);color:var(--bg-0);cursor:pointer;border:none;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex}.templates-empty__btn:hover{background:var(--accent-2)}.templates-empty__btn svg{width:16px;height:16px}.modal-overlay{z-index:1000;background:#0009;justify-content:center;align-items:center;animation:.15s ease-out modal-overlay-in;display:flex;position:fixed;inset:0}.modal-overlay .modal,.modal-overlay .template-modal{background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);animation:.15s ease-out modal-content-in}.modal-overlay.closing .modal,.modal-overlay.closing .template-modal{animation:.15s ease-out forwards modal-content-out}.modal__close{border-radius:var(--radius-md);width:28px;height:28px;color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:0;font-size:24px;line-height:1;display:flex}.modal__form{padding:var(--space-5);gap:var(--space-4);flex-direction:column;max-height:70vh;display:flex;overflow-y:auto}.modal__field{gap:var(--space-2);flex-direction:column;display:flex}.modal__label{font-size:var(--text-sm);color:var(--text-1);font-weight:500}.modal__input,.modal__select,.modal__textarea{width:100%;padding:var(--space-2)var(--space-3);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-0);transition:all var(--transition-fast)}.modal__input:focus,.modal__select:focus,.modal__textarea:focus{border-color:var(--accent-1);box-shadow:0 0 0 2px var(--accent-1-alpha);outline:none}.modal__textarea{resize:vertical;min-height:60px}.modal__btn{padding:var(--space-2)var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast);font-weight:500}.modal__btn--secondary{border:1px solid var(--stroke-1);color:var(--text-1);background:0 0}.modal__btn--secondary:hover{background:var(--bg-2)}.modal__btn--primary{background:var(--accent-1);border:1px solid var(--accent-1);color:#fff}.modal__btn--primary:hover{background:var(--accent-1-hover)}.modal__actions{justify-content:flex-end;align-items:center;gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--stroke-0);margin-top:var(--space-2);display:flex}.template-modal{width:100%;max-width:520px}.modal__section{padding:var(--space-4);background:var(--bg-2);border-radius:var(--radius-md);margin-bottom:var(--space-4)}.modal__section-title{color:var(--text-1);margin:0 0 var(--space-3)0;font-size:13px;font-weight:600}.modal__row{gap:var(--space-4);display:flex}.modal__field--half{flex:1}.modal__input-group{align-items:center;display:flex}.modal__input-group .modal__input{border-radius:var(--radius-md)0 0 var(--radius-md);border-right:none}.modal__input-suffix{padding:var(--space-2)var(--space-3);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:0 var(--radius-md)var(--radius-md)0;color:var(--text-2);white-space:nowrap;font-size:13px}.modal__field--inline{align-items:center;gap:var(--space-3);display:flex}.modal__toggle{width:44px;height:24px;display:inline-block;position:relative}.modal__toggle input{opacity:0;width:0;height:0}.modal__toggle-slider{cursor:pointer;background:var(--bg-3);border-radius:12px;transition:all .15s;position:absolute;inset:0}.modal__toggle-slider:before{content:"";background:var(--bg-0);border-radius:50%;width:18px;height:18px;transition:all .15s;position:absolute;bottom:3px;left:3px}.modal__toggle input:checked+.modal__toggle-slider{background:var(--accent-1)}.modal__toggle input:checked+.modal__toggle-slider:before{transform:translate(20px)}.modal__toggle-label{color:var(--text-1);font-size:14px}.template-days-picker{gap:var(--space-2);flex-wrap:wrap;display:flex}.template-day{cursor:pointer;justify-content:center;align-items:center;display:flex}.template-day input{display:none}.template-day span{padding:var(--space-2)var(--space-3);background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-md);color:var(--text-2);font-size:12px;font-weight:500;transition:all .15s}.template-day:hover span{background:var(--bg-2);color:var(--text-1)}.template-day input:checked+span{background:var(--accent-0);border-color:var(--accent-1);color:var(--accent-2)}.confirm-modal-overlay{z-index:1010;opacity:0;visibility:hidden;transition:all var(--transition-base);background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.confirm-modal-overlay--open{opacity:1;visibility:visible}.confirm-modal{background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-xl);width:100%;max-width:360px;box-shadow:var(--shadow-xl);padding:var(--space-6);text-align:center;transition:transform var(--transition-base);transform:scale(.95)}.confirm-modal-overlay--open .confirm-modal{transform:scale(1)}.confirm-modal__icon{width:48px;height:48px;margin:0 auto var(--space-4);background:var(--danger-muted);border-radius:50%;justify-content:center;align-items:center;display:flex}.confirm-modal__icon svg{width:24px;height:24px;color:var(--danger)}.confirm-modal__title{font-size:var(--text-lg);color:var(--text-0);margin:0 0 var(--space-2);font-weight:600}.confirm-modal__message{font-size:var(--text-sm);color:var(--text-2);margin:0 0 var(--space-5)}.confirm-modal__actions{justify-content:center;align-items:center;gap:var(--space-3);display:flex}.confirm-modal__btn{padding:var(--space-2)var(--space-5);font-family:var(--font-sans);font-size:var(--text-sm);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;font-weight:500;display:inline-flex}.confirm-modal__btn--secondary{border:1px solid var(--stroke-1);color:var(--text-1);background:0 0}.confirm-modal__btn--secondary:hover{background:var(--bg-2);color:var(--text-0)}.confirm-modal__btn--danger{background:var(--danger);border:1px solid var(--danger);color:#fff}.confirm-modal__btn--danger:hover{background:#dc2626;border-color:#dc2626}.spotlight-overlay{z-index:2000;opacity:0;visibility:hidden;transition:all var(--transition-fast);background:#000000b3;justify-content:center;align-items:flex-start;padding-top:15vh;display:flex;position:fixed;inset:0}.spotlight-overlay--open{opacity:1;visibility:visible}.spotlight-modal{background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-xl);width:100%;max-width:560px;box-shadow:var(--shadow-xl),0 0 0 1px #ffffff0d;transition:transform var(--transition-fast);overflow:hidden;transform:scale(.98)translateY(-10px)}.spotlight-overlay--open .spotlight-modal{transform:scale(1)translateY(0)}.spotlight-header{align-items:center;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--stroke-0);display:flex}.spotlight-header__icon{width:20px;height:20px;color:var(--text-2);flex-shrink:0}.spotlight-input{font-family:var(--font-sans);font-size:var(--text-base);color:var(--text-0);background:0 0;border:none;outline:none;flex:1;padding:0}.spotlight-input::placeholder{color:var(--text-3)}.spotlight-kbd{background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-sm);min-width:24px;height:22px;font-family:var(--font-mono);color:var(--text-2);text-transform:uppercase;justify-content:center;align-items:center;padding:0 6px;font-size:11px;display:inline-flex}.spotlight-results{max-height:360px;padding:var(--space-2)0;overflow-y:auto}.spotlight-section{padding:var(--space-1)0}.spotlight-section__title{padding:var(--space-2)var(--space-4);font-size:var(--text-xs);color:var(--text-2);text-transform:uppercase;letter-spacing:.05em;font-weight:500}.spotlight-items{flex-direction:column;display:flex}.spotlight-item{align-items:center;gap:var(--space-3);padding:var(--space-2)var(--space-4);cursor:pointer;transition:background var(--transition-fast);display:flex}.spotlight-item:hover,.spotlight-item--active{background:var(--bg-2)}.spotlight-item--active{background:var(--accent-muted)}.spotlight-item__icon{width:18px;height:18px;color:var(--text-2);flex-shrink:0}.spotlight-item--active .spotlight-item__icon{color:var(--accent-1)}.spotlight-item__text{font-size:var(--text-sm);color:var(--text-0);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.spotlight-item__hint{font-size:var(--text-xs);color:var(--text-3)}.spotlight-item__meta{align-items:center;gap:var(--space-2);display:flex}.spotlight-item__date{font-size:var(--text-xs);color:var(--text-3)}.spotlight-item__chip{border-radius:var(--radius-full);background:var(--bg-3);color:var(--text-2);align-items:center;padding:2px 6px;font-size:10px;font-weight:500;display:inline-flex}.spotlight-item__chip--completed{background:var(--success-muted);color:var(--success)}.spotlight-empty{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-8)var(--space-4);text-align:center;flex-direction:column;display:flex}.spotlight-empty svg{width:32px;height:32px;color:var(--text-3)}.spotlight-empty p{font-size:var(--text-sm);color:var(--text-2);margin:0}.spotlight-footer{justify-content:center;align-items:center;gap:var(--space-4);padding:var(--space-3)var(--space-4);border-top:1px solid var(--stroke-0);background:var(--bg-2);display:flex}.spotlight-footer__hint{align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--text-3);display:flex}.spotlight-footer__hint kbd{background:var(--bg-3);border:1px solid var(--stroke-1);border-radius:var(--radius-sm);min-width:18px;height:18px;font-family:var(--font-mono);color:var(--text-2);justify-content:center;align-items:center;padding:0 4px;font-size:10px;display:inline-flex}@media print{body{color:#000;background:#fff}.header,.tab-bar,.mobile-bottom-nav,.modal,.tool-modal,.toast{display:none!important}.task-item{border-color:#ddd}}.notes-page{flex-direction:column;height:100%;display:flex}.notes-page__header{padding:var(--space-4);border-bottom:1px solid var(--stroke-0);justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.notes-breadcrumb{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-1);display:flex}.notes-breadcrumb__item{cursor:pointer;padding:var(--space-1)var(--space-2);border-radius:var(--radius-sm);transition:all var(--transition-fast)}.notes-breadcrumb__item:hover{background:var(--bg-2);color:var(--text-0)}.notes-breadcrumb__item--active{color:var(--text-0);font-weight:500}.notes-breadcrumb__separator{color:var(--text-2)}.notes-page__actions{gap:var(--space-2);display:flex}.notes-action-btn{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);background:var(--bg-2);border:1px solid var(--stroke-0);border-radius:var(--radius-md);color:var(--text-1);font-size:var(--text-xs);cursor:pointer;transition:all var(--transition-fast);display:flex}.notes-action-btn:hover{background:var(--bg-3);color:var(--text-0);border-color:var(--stroke-1)}.notes-action-btn--primary{background:var(--accent-0);border-color:var(--accent-0);color:#fff}.notes-action-btn--primary:hover{background:var(--accent-1);border-color:var(--accent-1)}.notes-page__content{padding:var(--space-4);flex:1;overflow-y:auto}.notes-list-view{max-width:900px;margin:0 auto}.notes-section-header{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-2);margin-bottom:var(--space-3);font-weight:500}.notes-folders-section{margin-bottom:var(--space-6)}.notes-folders-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(180px,1fr));display:grid}.notes-folder-item{align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--bg-2);border:1px solid var(--stroke-0);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);display:flex}.notes-folder-item:hover{background:var(--bg-3);border-color:var(--stroke-1)}.notes-folder-item__icon{background:var(--bg-3);border-radius:var(--radius-md);width:32px;height:32px;color:var(--text-1);justify-content:center;align-items:center;display:flex}.notes-folder-item__info{flex:1;min-width:0}.notes-folder-item__name{font-size:var(--text-sm);color:var(--text-0);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.notes-folder-item__count{font-size:var(--text-xs);color:var(--text-2)}.notes-folder-card{align-items:center;gap:var(--space-2);padding:var(--space-4);background:var(--bg-2);border:1px solid var(--stroke-0);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);flex-direction:column;display:flex;position:relative}.notes-folder-card:hover{background:var(--bg-3);border-color:var(--stroke-1)}.notes-folder-card__icon{justify-content:center;align-items:center;width:40px;height:40px;display:flex}.notes-folder-card__name{font-size:var(--text-sm);color:var(--text-0);text-align:center;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-weight:500;overflow:hidden}.notes-folder-card__count{font-size:var(--text-xs);color:var(--text-2)}.notes-folder-card__delete{top:var(--space-2);right:var(--space-2);border-radius:var(--radius-sm);width:24px;height:24px;color:var(--text-2);cursor:pointer;opacity:0;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute}.notes-folder-card:hover .notes-folder-card__delete{opacity:1}.notes-folder-card__delete:hover{color:#ef4444;background:#ef44441a}.note-linked-tasks{align-items:center;gap:var(--space-2);padding:var(--space-2)0;flex-wrap:wrap;display:flex}.note-linked-tasks__label{font-size:var(--text-xs);color:var(--text-2)}.note-linked-task-chip{padding:var(--space-1)var(--space-2);background:var(--bg-3);border-radius:var(--radius-sm);font-size:var(--text-xs);color:var(--text-1);align-items:center;display:inline-flex}.notes-items-list{flex-direction:column;display:flex}.notes-item{align-items:center;gap:var(--space-3);padding:var(--space-2)var(--space-4);border-bottom:1px solid var(--stroke-0);cursor:pointer;transition:background var(--transition-fast);display:flex}.notes-item:hover{background:var(--bg-2)}.notes-item__icon{width:18px;height:18px;color:var(--text-2);flex-shrink:0;justify-content:center;align-items:center;display:flex}.notes-item__content{gap:var(--space-1);flex-direction:column;flex:1;min-width:0;display:flex}.notes-item__title-row{align-items:center;gap:var(--space-2);display:flex}.notes-item__star{color:#fbbf24;font-size:var(--text-sm)}.notes-item__title{font-size:var(--text-sm);color:var(--text-0);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-weight:500;overflow:hidden}.notes-item__preview{font-size:var(--text-xs);color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.notes-item__meta{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.notes-item__date{font-size:var(--text-xs);color:var(--text-2);white-space:nowrap}.notes-item__linked,.notes-item__attachments{background:var(--bg-3);border-radius:var(--radius-sm);color:var(--text-2);align-items:center;gap:4px;padding:2px 6px;font-size:11px;display:flex}.notes-item__priority{border-radius:var(--radius-sm);text-transform:uppercase;align-items:center;padding:2px 6px;font-size:10px;font-weight:500;display:inline-flex}.notes-item__priority--low{background:var(--info-muted);color:var(--info)}.notes-item__priority--medium{background:var(--warning-muted);color:var(--warning)}.notes-item__priority--high,.notes-item__priority--urgent{background:var(--danger-muted);color:var(--danger)}.notes-linked-badges{align-items:center;gap:2px;display:flex}.notes-empty-state{padding:var(--space-12);text-align:center;color:var(--text-2);background:var(--bg-1);border:2px dashed var(--stroke-0);border-radius:var(--radius-xl);margin-top:var(--space-4);flex-direction:column;justify-content:center;align-items:center;display:flex}.notes-empty-state svg{margin-bottom:var(--space-4);opacity:.4;color:var(--accent-0)}.notes-empty-state h3{font-size:var(--text-lg);color:var(--text-0);margin-bottom:var(--space-2);font-weight:600}.notes-empty-state p{font-size:var(--text-sm);color:var(--text-2);max-width:300px}.note-detail-view{max-width:800px;height:100%;padding-top:var(--space-2);flex-direction:column;margin:0 auto;display:flex;position:relative}.notes-page__content:has(.note-detail-view[style*=flex]){padding-top:var(--space-2)}.note-detail__topbar{padding:var(--space-2)0;margin-bottom:var(--space-3);border-bottom:1px solid var(--stroke-0);justify-content:space-between;align-items:center;display:flex}.note-detail__topbar-left,.note-detail__topbar-right{align-items:center;gap:var(--space-2);display:flex}.note-detail__back-btn{border-radius:var(--radius-md);width:28px;height:28px;color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.note-detail__back-btn:hover{background:var(--bg-3);color:var(--text-0)}.note-detail__breadcrumb{align-items:center;gap:var(--space-1);font-size:var(--text-sm);display:flex}.note-detail__breadcrumb-item{color:var(--text-2);cursor:pointer;transition:color var(--transition-fast)}.note-detail__breadcrumb-item:hover{color:var(--text-0)}.note-detail__breadcrumb-item--current{color:var(--text-0);text-overflow:ellipsis;white-space:nowrap;max-width:200px;font-weight:500;overflow:hidden}.note-detail__breadcrumb-sep{color:var(--text-2)}.note-detail__page-nav{align-items:center;gap:var(--space-1);padding:var(--space-1)var(--space-2);background:var(--bg-2);border-radius:var(--radius-md);border:1px solid var(--stroke-0);display:flex}.note-detail__page-btn{border-radius:var(--radius-sm);width:22px;height:22px;color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.note-detail__page-btn:hover:not(:disabled){background:var(--bg-3);color:var(--text-0)}.note-detail__page-btn:disabled{opacity:.3;cursor:not-allowed}.note-detail__page-indicator{font-size:var(--text-xs);color:var(--text-1);text-align:center;min-width:40px}.note-detail__star-btn{border-radius:var(--radius-md);width:32px;height:32px;color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.note-detail__star-btn:hover{background:var(--bg-3);color:#f59e0b}.note-detail__star-btn.is-starred{color:#f59e0b}.note-detail__star-btn.is-starred svg{fill:#f59e0b}.note-detail__menu-wrapper{position:relative}.note-detail__menu-btn{border-radius:var(--radius-md);width:32px;height:32px;color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.note-detail__menu-btn:hover{background:var(--bg-3);color:var(--text-0)}.note-detail__menu-dropdown{background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);min-width:200px;box-shadow:var(--shadow-lg);padding:var(--space-1);z-index:100;opacity:0;visibility:hidden;transition:all var(--transition-fast);position:absolute;top:calc(100% + 4px);right:0;transform:translateY(-4px)}.note-detail__menu-dropdown.is-open,.note-detail__menu-dropdown.note-detail__menu-dropdown--open{opacity:1;visibility:visible;transform:translateY(0)}.note-detail__menu-item{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2)var(--space-3);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-1);cursor:pointer;text-align:left;transition:all var(--transition-fast);background:0 0;border:none;display:flex}.note-detail__menu-item:hover{background:var(--bg-3);color:var(--text-0)}.note-detail__menu-item--danger:hover{color:var(--danger);background:#ef44441a}.note-detail__menu-divider{background:var(--stroke-0);height:1px;margin:var(--space-1)0}.note-detail__title-wrapper{margin-bottom:var(--space-3)}.note-detail__title{width:100%;color:var(--text-0);padding:var(--space-1)0;background:0 0;border:none;outline:none;font-size:2rem;font-weight:700}.note-detail__title::placeholder{color:var(--text-2)}.note-detail__properties{gap:var(--space-2);margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--stroke-0);flex-wrap:wrap;display:flex}.note-detail__property{align-items:center;gap:var(--space-2);padding:var(--space-1)var(--space-2);background:var(--bg-2);border:1px solid var(--stroke-0);border-radius:var(--radius-md);font-size:var(--text-xs);color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);display:flex}.note-detail__property:hover{background:var(--bg-3);color:var(--text-0)}.note-detail__property--set{border-color:var(--stroke-1)}.note-detail__property--priority-low{color:#22c55e;border-color:#22c55e4d}.note-detail__property--priority-medium{color:#3b82f6;border-color:#3b82f64d}.note-detail__property--priority-high{color:#f97316;border-color:#f973164d}.note-detail__property--priority-urgent{color:#ef4444;border-color:#ef44444d}.note-detail__editor{flex:1;min-height:300px;position:relative}.note-detail__blocks{margin-bottom:var(--space-2)}.note-detail__content{min-height:200px;font-size:var(--text-base);color:var(--text-0);outline:none;line-height:1.7}.note-detail__content:empty:before{content:attr(data-placeholder);color:var(--text-2)}.note-detail__content h1{color:var(--text-0);border-bottom:2px solid var(--stroke-0);margin:1.5rem 0 .75rem;padding-bottom:.3rem;font-size:2rem;font-weight:700;line-height:1.3}.note-detail__content h2{color:var(--text-0);margin:1.25rem 0 .5rem;font-size:1.5rem;font-weight:600;line-height:1.4}.note-detail__content h3{color:var(--text-0);margin:1rem 0 .5rem;font-size:1.25rem;font-weight:600;line-height:1.4}.note-detail__content p{margin:.5rem 0}.note-detail__content blockquote{border-left:4px solid var(--accent-0);background:var(--bg-2);border-radius:0 var(--radius-md)var(--radius-md)0;color:var(--text-1);margin:1rem 0;padding:.75rem 1rem;font-style:italic}.note-detail__content pre{background:var(--bg-3);border:1px solid var(--stroke-0);border-radius:var(--radius-md);white-space:pre-wrap;word-wrap:break-word;margin:1rem 0;padding:1rem;font-family:SF Mono,Fira Code,Monaco,Consolas,monospace;font-size:.875rem;line-height:1.5;overflow-x:auto}.note-detail__content code{background:var(--bg-3);border-radius:var(--radius-sm);color:var(--accent-0);padding:.15rem .4rem;font-family:SF Mono,Fira Code,Monaco,Consolas,monospace;font-size:.875em}.note-detail__content pre code{color:var(--text-0);background:0 0;padding:0}.note-detail__content ul,.note-detail__content ol{margin:.75rem 0;padding-left:1.5rem}.note-detail__content ul{list-style-type:disc}.note-detail__content ol{list-style-type:decimal}.note-detail__content li{margin:.25rem 0;padding-left:.25rem}.note-detail__content li::marker{color:var(--text-2)}.note-detail__content ul ul{list-style-type:circle}.note-detail__content ul ul ul{list-style-type:square}.note-detail__content hr{background:linear-gradient(90deg,var(--stroke-0),var(--stroke-1),var(--stroke-0));border:none;border-radius:1px;height:2px;margin:1.5rem 0}.note-detail__content a{color:var(--accent-0);text-underline-offset:2px;text-decoration:underline}.note-detail__content a:hover{color:var(--accent-1)}.note-detail__content strong,.note-detail__content b{color:var(--text-0);font-weight:600}.note-detail__content em,.note-detail__content i{font-style:italic}.note-detail__content u{text-underline-offset:2px;text-decoration:underline}.note-detail__content s,.note-detail__content strike{color:var(--text-2);text-decoration:line-through}.note-detail__content mark{background:#facc154d;border-radius:2px;padding:.1rem .2rem}.note-detail__content table{border-collapse:collapse;border:1px solid var(--stroke-0);border-radius:var(--radius-md);width:100%;margin:1rem 0;overflow:hidden}.note-detail__content th,.note-detail__content td{border:1px solid var(--stroke-0);text-align:left;padding:.5rem .75rem}.note-detail__content th{background:var(--bg-2);color:var(--text-0);font-weight:600}.note-detail__content tr:nth-child(2n){background:var(--bg-1)}.note-block{border-radius:var(--radius-md);align-items:flex-start;gap:0;margin:0 -32px;padding:2px 8px 2px 32px;transition:background .15s;display:flex;position:relative}.note-block__handle{opacity:0;cursor:grab;width:24px;height:24px;color:var(--text-2);border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;align-items:center;transition:all .15s;display:flex;position:absolute;top:50%;left:4px;transform:translateY(-50%)}.note-drag-handle{cursor:grab;width:20px;height:24px;color:var(--text-2);border-radius:var(--radius-sm);z-index:10;opacity:.6;justify-content:center;align-items:center;transition:all .15s;display:flex;position:absolute}.note-drag-handle:hover{opacity:1;background:var(--bg-3);color:var(--text-1)}.note-drag-handle:active{cursor:grabbing}.note-drag-handle svg{width:14px;height:14px}.note-detail__content .is-dragging{opacity:.5;background:var(--bg-2)}.note-detail__content .drag-over{border-top:2px solid var(--primary);margin-top:-2px}.note-block__content{outline:none;flex:1;min-width:0}.note-block__add-btn{opacity:0;cursor:pointer;width:24px;height:24px;color:var(--text-2);background:var(--bg-1);border:1px solid var(--stroke-0);border-radius:var(--radius-sm);z-index:10;justify-content:center;align-items:center;transition:all .15s;display:flex;position:absolute;bottom:-12px;left:4px}.note-block:hover .note-block__add-btn{opacity:0}.note-block__add-btn:hover{background:var(--bg-2);color:var(--text-0);border-color:var(--stroke-1);opacity:1!important}.note-slash-menu{background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:1000;width:280px;max-height:400px;position:absolute;overflow:hidden}.note-slash-menu__search{padding:var(--space-2)var(--space-3);border-bottom:1px solid var(--stroke-0)}.note-slash-menu__input{width:100%;font-size:var(--text-sm);color:var(--text-0);background:0 0;border:none;outline:none}.note-slash-menu__input::placeholder{color:var(--text-2)}.note-slash-menu__items{max-height:350px;padding:var(--space-1);overflow-y:auto}.note-slash-menu__section{padding:var(--space-2)var(--space-3);font-size:var(--text-xs);color:var(--text-2);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.note-slash-menu__item{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2)var(--space-3);border-radius:var(--radius-md);cursor:pointer;text-align:left;transition:all var(--transition-fast);background:0 0;border:none;display:flex}.note-slash-menu__item:hover,.note-slash-menu__item.is-selected{background:var(--bg-3)}.note-slash-menu__icon{background:var(--bg-1);border:1px solid var(--stroke-0);border-radius:var(--radius-md);width:32px;height:32px;font-size:var(--text-sm);color:var(--text-1);justify-content:center;align-items:center;display:flex}.note-slash-menu__info{flex-direction:column;display:flex}.note-slash-menu__desc{font-size:var(--text-xs);color:var(--text-2)}.note-detail__attachments{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--stroke-0)}.note-detail__attachment-item{align-items:center;gap:var(--space-3);padding:var(--space-2)var(--space-3);background:var(--bg-2);border:1px solid var(--stroke-0);border-radius:var(--radius-md);margin-bottom:var(--space-2);cursor:pointer;transition:all var(--transition-fast);display:flex}.note-detail__attachment-item:hover{background:var(--bg-3);border-color:var(--stroke-1)}.note-detail__attachment-icon{background:var(--bg-1);border-radius:var(--radius-md);width:32px;height:32px;color:var(--text-1);justify-content:center;align-items:center;display:flex}.note-detail__attachment-info{flex:1;min-width:0}.note-detail__attachment-name{font-size:var(--text-sm);color:var(--text-0);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.note-detail__attachment-size{font-size:var(--text-xs);color:var(--text-2)}.note-detail__attachment-remove{color:var(--text-2);cursor:pointer;padding:var(--space-1);border-radius:var(--radius-sm);background:0 0;border:none}.note-detail__attachment-remove:hover{color:var(--danger);background:#ef44441a}.note-attachments__header{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-1);margin-bottom:var(--space-3);font-weight:500;display:flex}.note-attachments__list{gap:var(--space-2);flex-direction:column;display:flex}.note-attachment{align-items:center;gap:var(--space-3);padding:var(--space-2)var(--space-3);background:var(--bg-2);border:1px solid var(--stroke-0);border-radius:var(--radius-md);transition:all var(--transition-fast);display:flex}.note-attachment:hover{background:var(--bg-3);border-color:var(--stroke-1)}.note-attachment__icon{flex-shrink:0;font-size:20px}.note-attachment__info{flex:1;min-width:0}.note-attachment__name{font-size:var(--text-sm);color:var(--text-0);white-space:nowrap;text-overflow:ellipsis;font-weight:500;display:block;overflow:hidden}.note-attachment__size{font-size:var(--text-xs);color:var(--text-2);display:block}.note-attachment__view,.note-attachment__delete{color:var(--text-2);cursor:pointer;padding:var(--space-1);border-radius:var(--radius-sm);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.note-attachment__view:hover{color:var(--primary);background:#6366f11a}.note-attachment__delete:hover{color:var(--danger);background:#ef44441a}.note-todo-item{align-items:flex-start;gap:var(--space-2);padding:var(--space-1)0;display:flex}.note-todo-checkbox{cursor:pointer;margin-top:3px}.note-todo-text{outline:none;flex:1}.note-doc-link{color:var(--primary);cursor:pointer;border-radius:var(--radius-sm);font-size:var(--text-sm);background:#6366f11a;padding:2px 6px;text-decoration:none}.note-doc-link:hover{background:#6366f133}.note-inline-image{margin:var(--space-2)0;border-radius:var(--radius-md);max-width:100%;display:block}.note-inline-image:hover{outline:2px solid var(--primary)}.note-selection-toolbar{align-items:center;gap:var(--space-1);padding:var(--space-1);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:1001;position:absolute;display:none!important}.note-selection-toolbar.is-visible{display:flex!important}@keyframes toolbarFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.note-selection-toolbar__group{align-items:center;gap:2px;display:flex}.note-selection-toolbar__divider{background:var(--stroke-1);width:1px;height:20px;margin:0 var(--space-1)}.note-selection-toolbar__btn{min-width:28px;height:28px;padding:0 var(--space-1);border-radius:var(--radius-md);color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;gap:4px;display:flex;position:relative}.note-selection-toolbar__btn:hover{background:var(--bg-3);color:var(--text-0)}.note-selection-toolbar__btn.is-active{background:var(--primary);color:#fff}.note-selection-toolbar__btn svg{flex-shrink:0}.note-selection-toolbar__btn--turn-into{padding:0 var(--space-2);font-size:var(--text-xs);font-weight:500}.note-selection-toolbar__btn--turn-into span{margin:0 2px}.note-selection-toolbar__color-dropdown{padding:var(--space-2);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:10;flex-wrap:wrap;gap:4px;width:130px;margin-top:4px;display:none;position:absolute;top:100%;left:50%;transform:translate(-50%)}.note-selection-toolbar__btn--highlight:hover .note-selection-toolbar__color-dropdown,.note-selection-toolbar__btn--textcolor:hover .note-selection-toolbar__color-dropdown{display:flex}.note-selection-toolbar__color{border-radius:var(--radius-sm);border:1px solid var(--stroke-0);cursor:pointer;width:24px;height:24px;transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex}.note-selection-toolbar__color:hover{border-color:var(--stroke-1);transform:scale(1.1)}.note-selection-toolbar__turninto-dropdown{min-width:160px;padding:var(--space-1);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:10;flex-direction:column;margin-top:4px;display:none;position:absolute;top:100%;left:0}.note-selection-toolbar__btn--turn-into:hover .note-selection-toolbar__turninto-dropdown{display:flex}.note-selection-toolbar__turninto-item{align-items:center;gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-sm);color:var(--text-0);text-align:left;transition:background var(--transition-fast);background:0 0;border:none;display:flex}.note-selection-toolbar__turninto-item:hover{background:var(--bg-3)}.note-selection-toolbar__turninto-icon{background:var(--bg-1);border:1px solid var(--stroke-0);border-radius:var(--radius-sm);width:24px;height:24px;font-size:var(--text-xs);color:var(--text-1);justify-content:center;align-items:center;font-weight:600;display:flex}.note-link-popup{align-items:center;gap:var(--space-1);padding:var(--space-2);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:1002;position:absolute;display:none!important}.note-link-popup.is-visible{display:flex!important}.note-link-popup__input{width:280px;padding:var(--space-2);background:var(--bg-1);border:1px solid var(--stroke-0);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-0);outline:none}.note-link-popup__input:focus{border-color:var(--primary)}.note-link-popup__input::placeholder{color:var(--text-2)}.note-link-popup__btn{background:var(--primary);border-radius:var(--radius-md);color:#fff;cursor:pointer;width:32px;height:32px;transition:all var(--transition-fast);border:none;justify-content:center;align-items:center;display:flex}.note-link-popup__btn:hover{background:var(--primary-hover)}.note-link-popup__btn--cancel{background:var(--bg-3);color:var(--text-1)}.note-link-popup__btn--cancel:hover{background:var(--bg-4);color:var(--text-0)}.note-image-wrapper{margin:var(--space-2)0;display:inline-block;position:relative}.note-image-wrapper.is-selected{outline:2px solid var(--primary);outline-offset:2px}.note-image-wrapper img{border-radius:var(--radius-md);max-width:100%;display:block}.note-image-resize-handle{background:var(--primary);cursor:nwse-resize;opacity:0;width:10px;height:10px;transition:opacity var(--transition-fast);z-index:10;border:2px solid #fff;border-radius:50%;position:absolute}.note-image-wrapper:hover .note-image-resize-handle,.note-image-wrapper.is-selected .note-image-resize-handle{opacity:1}.note-image-resize-handle--nw{cursor:nwse-resize;top:-5px;left:-5px}.note-image-resize-handle--ne{cursor:nesw-resize;top:-5px;right:-5px}.note-image-resize-handle--sw{cursor:nesw-resize;bottom:-5px;left:-5px}.note-image-resize-handle--se{cursor:nwse-resize;bottom:-5px;right:-5px}.note-image-resize-handle--e{cursor:ew-resize;top:50%;right:-5px;transform:translateY(-50%)}.note-image-resize-handle--w{cursor:ew-resize;top:50%;left:-5px;transform:translateY(-50%)}.note-image-toolbar{top:var(--space-2);right:var(--space-2);gap:var(--space-1);padding:var(--space-1);border-radius:var(--radius-md);opacity:0;transition:opacity var(--transition-fast);background:#000000b3;display:flex;position:absolute}.note-image-wrapper:hover .note-image-toolbar{opacity:1}.note-image-toolbar__btn{border-radius:var(--radius-sm);color:#fff;cursor:pointer;width:28px;height:28px;transition:background var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.note-image-toolbar__btn:hover{background:#fff3}.note-block{padding:var(--space-1)0;border-radius:var(--radius-md);transition:background var(--transition-fast);align-items:flex-start;margin-left:-32px;padding-left:32px;display:flex;position:relative}.note-block:hover{background:var(--bg-2)}.note-block.is-dragging{opacity:.5;background:var(--bg-3)}.note-block.drag-over{border-top:2px solid var(--primary)}.note-block.drag-over-below{border-bottom:2px solid var(--primary)}.note-block__handle{opacity:0;cursor:grab;width:20px;height:24px;color:var(--text-2);border-radius:var(--radius-sm);transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex;position:absolute;top:50%;left:4px;transform:translateY(-50%)}.note-block:hover .note-block__handle{opacity:1}.note-block__handle:hover{background:var(--bg-3);color:var(--text-0)}.note-block__handle:active{cursor:grabbing}.note-block__handle svg{width:14px;height:14px}.note-block__content{flex:1;min-width:0}.note-block-add{background:var(--bg-1);border:1px solid var(--stroke-0);width:24px;height:24px;color:var(--text-2);cursor:pointer;opacity:0;transition:all var(--transition-fast);z-index:5;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;bottom:-14px;left:4px}.note-block:hover .note-block-add{opacity:0}.note-block-add:hover{background:var(--primary);border-color:var(--primary);color:#fff;opacity:1!important}.note-slash-menu__item.is-selected{background:var(--bg-3)}.note-slash-menu__item:focus{background:var(--bg-3);outline:none}.note-slash-menu__shortcut{font-size:var(--text-xs);color:var(--text-2);font-family:var(--font-mono);margin-left:auto}.note-block-drop-indicator{background:var(--primary);pointer-events:none;z-index:100;border-radius:1px;height:2px;position:absolute;left:32px;right:8px}.note-block-drop-indicator:before,.note-block-drop-indicator:after{content:"";background:var(--primary);border-radius:50%;width:6px;height:6px;position:absolute;top:50%;transform:translateY(-50%)}.note-block-drop-indicator:before{left:-3px}.note-block-drop-indicator:after{right:-3px}.note-detail__content code{background:var(--bg-3);border-radius:var(--radius-sm);font-family:var(--font-mono,"SF Mono","Monaco","Inconsolata","Fira Code",monospace);color:var(--primary);padding:2px 6px;font-size:.9em}.note-detail__content a{color:var(--primary);text-underline-offset:2px;-webkit-text-decoration:underline #6366f166;text-decoration:underline #6366f166}.note-detail__content a:hover{-webkit-text-decoration-color:var(--primary);text-decoration-color:var(--primary)}.note-detail__content mark,.note-detail__content span[style*=background]{border-radius:2px;padding:1px 2px}.note-selection-toolbar__btn[title]:after{content:attr(title);background:var(--bg-4);border-radius:var(--radius-sm);white-space:nowrap;opacity:0;pointer-events:none;z-index:10;padding:2px 6px;font-size:10px;transition:opacity .15s;position:absolute;bottom:-24px;left:50%;transform:translate(-50%)}.note-selection-toolbar__btn:hover[title]:after{opacity:1}.note-toggle{margin:var(--space-2)0;border-radius:var(--radius-md)}.note-toggle__summary{align-items:center;gap:var(--space-2);padding:var(--space-2);cursor:pointer;border-radius:var(--radius-md);transition:background var(--transition-fast);font-weight:500;display:flex}.note-toggle__summary:hover{background:var(--bg-2)}.note-toggle__summary::marker{color:var(--text-2)}.note-toggle__summary::-webkit-details-marker{color:var(--text-2)}.note-toggle__content{padding:var(--space-2)var(--space-4);color:var(--text-1)}.note-callout--info{border-left-color:var(--primary);background:#6366f11a}.note-callout__icon{flex-shrink:0;font-size:20px}.note-table{width:100%;margin:var(--space-3)0;border-collapse:collapse;border-radius:var(--radius-md);border:1px solid var(--stroke-0);overflow:hidden}.note-table th,.note-table td{padding:var(--space-2)var(--space-3);border:1px solid var(--stroke-0);text-align:left;outline:none}.note-table th{background:var(--bg-2);color:var(--text-0);font-weight:600}.note-table td{background:var(--bg-1)}.note-table tr:hover td{background:var(--bg-2)}.note-table td:focus,.note-table th:focus{outline:2px solid var(--primary);outline-offset:-2px}.note-slash-menu__icon svg{stroke:currentColor;width:16px;height:16px}.doc-viewer-overlay{z-index:5000;background:#000c;justify-content:center;align-items:center;display:none;position:fixed;inset:0}.doc-viewer{background:var(--bg-1);border-radius:var(--radius-xl);flex-direction:column;width:90%;max-width:1000px;height:85vh;animation:.2s ease-out fadeInScale;display:flex;overflow:hidden}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.doc-viewer__header{padding:var(--space-3)var(--space-4);border-bottom:1px solid var(--stroke-0);justify-content:space-between;align-items:center;display:flex}.doc-viewer__header-left{align-items:center;gap:var(--space-2);display:flex}.doc-viewer__title{font-size:var(--text-base);color:var(--text-0);font-weight:500}.doc-viewer__header-right{align-items:center;gap:var(--space-2);display:flex}.doc-viewer__download-btn,.doc-viewer__close-btn{border-radius:var(--radius-md);width:36px;height:36px;color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.doc-viewer__download-btn:hover,.doc-viewer__close-btn:hover{background:var(--bg-3);color:var(--text-0)}.doc-viewer__body{background:var(--bg-2);flex:1;justify-content:center;align-items:center;display:flex;overflow:auto}.doc-viewer__loading{align-items:center;gap:var(--space-3);color:var(--text-1);flex-direction:column;display:flex}.doc-viewer__spinner{border:3px solid var(--stroke-1);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}.doc-viewer__iframe{border:none;width:100%;height:100%}.doc-viewer__image{object-fit:contain;max-width:100%;max-height:100%}.doc-viewer__unsupported{align-items:center;gap:var(--space-3);color:var(--text-2);text-align:center;flex-direction:column;display:flex}.note-props-overlay,.move-folder-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:5000;background:#0009;justify-content:center;align-items:center;display:none;position:fixed;inset:0}.note-props,.move-folder{background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-xl);width:90%;max-width:400px;box-shadow:var(--shadow-lg);animation:.2s ease-out fadeInScale}.note-props__header,.move-folder__header{padding:var(--space-3)var(--space-4);border-bottom:1px solid var(--stroke-0);justify-content:space-between;align-items:center;display:flex}.note-props__title,.move-folder__title{font-size:var(--text-base);color:var(--text-0);margin:0;font-weight:600}.note-props__close,.move-folder__close{color:var(--text-2);cursor:pointer;padding:var(--space-1);border-radius:var(--radius-md);background:0 0;border:none;display:flex}.note-props__close:hover,.move-folder__close:hover{background:var(--bg-3);color:var(--text-0)}.note-props__body,.move-folder__body{padding:var(--space-4)}.note-props__field{margin-bottom:var(--space-3)}.note-props__label{font-size:var(--text-xs);color:var(--text-2);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-1);font-weight:500;display:block}.note-props__input,.note-props__select{width:100%;padding:var(--space-2)var(--space-3);font-size:var(--text-sm);color:var(--text-0);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-md);outline:none}.note-props__input:focus,.note-props__select:focus{border-color:var(--focus)}.note-props__labels{gap:var(--space-2);flex-direction:column;max-height:200px;display:flex;overflow-y:auto}.note-props__label-item{align-items:center;gap:var(--space-2);padding:var(--space-1)var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--text-1);cursor:pointer;transition:background var(--transition-fast);display:flex}.note-props__label-item:hover{background:var(--bg-3)}.note-props__label-item input[type=checkbox]{cursor:pointer;margin:0}.note-props__label-color{border-radius:50%;flex-shrink:0;width:12px;height:12px}.note-props__no-labels{font-size:var(--text-sm);color:var(--text-2);padding:var(--space-2)}.note-props__footer{justify-content:flex-end;gap:var(--space-2);padding:var(--space-3)var(--space-4);border-top:1px solid var(--stroke-0);display:flex}.move-folder__item{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);display:flex}.move-folder__item:hover{background:var(--bg-3);color:var(--text-0)}.move-folder__item.is-selected{background:var(--accent-2);color:var(--text-0)}.move-folder__list{margin-top:var(--space-2);max-height:300px;overflow-y:auto}@media(max-width:768px){.notes-page__header{padding:var(--space-3)}.notes-breadcrumb{font-size:var(--text-xs)}.notes-page__content{padding:var(--space-3)}.notes-folders-grid{grid-template-columns:1fr}.note-detail__header{flex-direction:column;align-items:stretch}.note-detail__actions{justify-content:flex-end}}.sidebar__header{padding:var(--space-3);align-items:center;gap:var(--space-2);border-bottom:none;display:flex}.sidebar__avatar{border-radius:var(--radius-md);background:var(--accent-2);width:28px;height:28px;font-size:var(--text-xs);color:var(--text-1);flex-shrink:0;justify-content:center;align-items:center;font-weight:600;display:flex;overflow:hidden}.sidebar__avatar img{object-fit:cover;width:100%;height:100%}.sidebar__user-info{flex:1;min-width:0}.sidebar__user-name{font-size:var(--text-sm);color:var(--text-0);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.sidebar__user-email{font-size:var(--text-xs);color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sidebar__new-task-btn{border-radius:var(--radius-md);background:var(--accent-0);cursor:pointer;width:28px;height:28px;transition:background var(--transition-fast),transform var(--transition-fast);color:#fff;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.sidebar__new-task-btn:hover{background:var(--accent-1)}.sidebar__new-task-btn:active{transform:scale(.95)}.form-group{margin-bottom:var(--space-4)}.form-label{font-size:var(--text-sm);color:var(--text-1);margin-bottom:var(--space-2);font-weight:500;display:block}.form-input,.form-select{width:100%;font-family:var(--font-sans);font-size:var(--text-sm);background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-md);color:var(--text-0);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);padding:8px 10px;line-height:1.5;display:block}.form-input::placeholder{color:var(--text-2)}.form-input:hover:not(:disabled):not(:focus),.form-select:hover:not(:disabled):not(:focus){border-color:var(--stroke-2)}.form-input:focus,.form-select:focus{border-color:var(--focus);outline:none;box-shadow:0 0 0 3px #9ca3af26}.btn{font-family:var(--font-sans);font-size:var(--text-sm);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;-webkit-user-select:none;user-select:none;border:1px solid #0000;justify-content:center;align-items:center;gap:6px;padding:8px 12px;font-weight:500;line-height:1;display:inline-flex}.btn svg{flex-shrink:0;width:14px;height:14px}.btn-primary{background:var(--accent-0);color:#fff;border-color:var(--accent-0)}.btn-primary:hover:not(:disabled){background:var(--accent-1);border-color:var(--accent-1)}.btn-secondary{background:var(--bg-2);color:var(--text-0);border-color:var(--stroke-1)}.btn-secondary:hover:not(:disabled){background:var(--bg-3);border-color:var(--stroke-2)}.btn-danger{background:var(--danger);color:#fff;border-color:var(--danger)}.btn-danger:hover:not(:disabled){background:#dc2626;border-color:#dc2626}.btn-icon{border-radius:var(--radius-md);width:32px;height:32px;color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0;display:inline-flex}.btn-icon:hover:not(:disabled){background:var(--bg-2);color:var(--text-0)}.btn-icon.active{background:var(--spotify-green);color:#fff;border-color:var(--spotify-green)}.btn-icon.active:hover:not(:disabled){background:var(--spotify-green-hover);color:#fff}.spinner{border:2px solid var(--stroke-1);border-top-color:var(--accent-0);border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin}.spinner.lg{border-width:3px;width:32px;height:32px}.pl{width:6em;height:6em}.pl__ring{animation:2s linear infinite ringA}.pl__ring--a{stroke:#3a3a3a}.pl__ring--b{stroke:#5c5c5c;animation-name:ringB}.pl__ring--c{stroke:#7e7e7e;animation-name:ringC}.pl__ring--d{stroke:#a0a0a0;animation-name:ringD}@keyframes ringA{0%,4%{stroke-dasharray:0 660;stroke-width:20px;stroke-dashoffset:-330px}12%{stroke-dasharray:60 600;stroke-width:30px;stroke-dashoffset:-335px}32%{stroke-dasharray:60 600;stroke-width:30px;stroke-dashoffset:-595px}40%,54%{stroke-dasharray:0 660;stroke-width:20px;stroke-dashoffset:-660px}62%{stroke-dasharray:60 600;stroke-width:30px;stroke-dashoffset:-665px}82%{stroke-dasharray:60 600;stroke-width:30px;stroke-dashoffset:-925px}90%,to{stroke-dasharray:0 660;stroke-width:20px;stroke-dashoffset:-990px}}@keyframes ringB{0%,12%{stroke-dasharray:0 220;stroke-width:20px;stroke-dashoffset:-110px}20%{stroke-dasharray:20 200;stroke-width:30px;stroke-dashoffset:-115px}40%{stroke-dasharray:20 200;stroke-width:30px;stroke-dashoffset:-195px}48%,62%{stroke-dasharray:0 220;stroke-width:20px;stroke-dashoffset:-220px}70%{stroke-dasharray:20 200;stroke-width:30px;stroke-dashoffset:-225px}90%{stroke-dasharray:20 200;stroke-width:30px;stroke-dashoffset:-305px}98%,to{stroke-dasharray:0 220;stroke-width:20px;stroke-dashoffset:-330px}}@keyframes ringC{0%{stroke-dasharray:0 440;stroke-width:20px;stroke-dashoffset:0}8%{stroke-dasharray:40 400;stroke-width:30px;stroke-dashoffset:-5px}28%{stroke-dasharray:40 400;stroke-width:30px;stroke-dashoffset:-175px}36%,58%{stroke-dasharray:0 440;stroke-width:20px;stroke-dashoffset:-220px}66%{stroke-dasharray:40 400;stroke-width:30px;stroke-dashoffset:-225px}86%{stroke-dasharray:40 400;stroke-width:30px;stroke-dashoffset:-395px}94%,to{stroke-dasharray:0 440;stroke-width:20px;stroke-dashoffset:-440px}}@keyframes ringD{0%,8%{stroke-dasharray:0 440;stroke-width:20px;stroke-dashoffset:0}16%{stroke-dasharray:40 400;stroke-width:30px;stroke-dashoffset:-5px}36%{stroke-dasharray:40 400;stroke-width:30px;stroke-dashoffset:-175px}44%,50%{stroke-dasharray:0 440;stroke-width:20px;stroke-dashoffset:-220px}58%{stroke-dasharray:40 400;stroke-width:30px;stroke-dashoffset:-225px}78%{stroke-dasharray:40 400;stroke-width:30px;stroke-dashoffset:-395px}86%,to{stroke-dasharray:0 440;stroke-width:20px;stroke-dashoffset:-440px}}.loading-screen{justify-content:center;align-items:center;min-height:200px;display:flex}.skeleton{background:var(--bg-2);border-radius:var(--radius-sm)}.skeleton--text{border-radius:var(--radius-sm)}.skeleton--circular{border-radius:50%}.skeleton--rectangular{border-radius:var(--radius-md)}.skeleton--pulse{animation:1.5s ease-in-out infinite skeleton-pulse}.skeleton--wave{position:relative;overflow:hidden}.skeleton--wave:after{content:"";background:linear-gradient(90deg,#0000,#ffffff0a,#0000);animation:1.5s ease-in-out infinite skeleton-wave;position:absolute;inset:0;transform:translate(-100%)}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes skeleton-wave{to{transform:translate(100%)}}.skeleton-task-list{gap:var(--space-2);flex-direction:column;display:flex}.skeleton-task-item{align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--bg-1);border-radius:var(--radius-md);border:1px solid var(--stroke-0);display:flex}.skeleton-task-content{gap:var(--space-1);flex-direction:column;flex:1;display:flex}.skeleton-card{background:var(--bg-1);border-radius:var(--radius-lg);border:1px solid var(--stroke-0);overflow:hidden}.skeleton-card__content{padding:var(--space-3);gap:var(--space-2);flex-direction:column;display:flex}.skeleton-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));display:grid}.skeleton-table{gap:var(--space-1);flex-direction:column;display:flex}.skeleton-table__header,.skeleton-table__row{gap:var(--space-4);padding:var(--space-3);display:flex}.skeleton-table__header{border-bottom:1px solid var(--stroke-0)}.skeleton-table__row{background:var(--bg-1);border-radius:var(--radius-md)}.skeleton-monthly{gap:var(--space-4);padding:var(--space-4);flex-direction:column;display:flex}.skeleton-monthly__header{align-items:center;gap:var(--space-4);display:flex}.skeleton-monthly__nav{gap:var(--space-2);display:flex}.skeleton-monthly__weekdays{gap:var(--space-2);padding:var(--space-2)0;grid-template-columns:repeat(7,1fr);display:grid}.skeleton-monthly__grid{gap:var(--space-2);grid-template-columns:repeat(7,1fr);display:grid}.skeleton-monthly__day{min-height:100px;padding:var(--space-2);background:var(--bg-1);border-radius:var(--radius-md);border:1px solid var(--stroke-0);gap:var(--space-2);flex-direction:column;display:flex}.skeleton-weekly{gap:var(--space-4);padding:var(--space-4);flex-direction:column;display:flex}.skeleton-weekly__header{align-items:center;gap:var(--space-4);display:flex}.skeleton-weekly__nav{gap:var(--space-2);display:flex}.skeleton-weekly__days{gap:var(--space-3);grid-template-columns:repeat(7,1fr);display:grid}.skeleton-weekly__day{gap:var(--space-2);flex-direction:column;display:flex}.skeleton-weekly__day-header{align-items:center;gap:var(--space-1);flex-direction:column;display:flex}.skeleton-weekly__tasks{gap:var(--space-2);flex-direction:column;display:flex}.skeleton-dashboard{gap:var(--space-6);padding:var(--space-4);flex-direction:column;display:flex}.skeleton-dashboard__header{justify-content:space-between;align-items:flex-start;display:flex}.skeleton-dashboard__widgets{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(250px,1fr));display:grid}.skeleton-dashboard__widget{padding:var(--space-4);background:var(--bg-1);border-radius:var(--radius-lg);border:1px solid var(--stroke-0);gap:var(--space-3);flex-direction:column;display:flex}.skeleton-notes{gap:var(--space-4);grid-template-columns:250px 1fr;height:100%;display:grid}.skeleton-notes__sidebar{gap:var(--space-3);padding:var(--space-3);background:var(--bg-1);border-radius:var(--radius-lg);border:1px solid var(--stroke-0);flex-direction:column;display:flex}.skeleton-notes__list{gap:var(--space-2);flex-direction:column;display:flex}.skeleton-notes__item{gap:var(--space-1);padding:var(--space-2);flex-direction:column;display:flex}.skeleton-notes__content{gap:var(--space-3);padding:var(--space-4);flex-direction:column;display:flex}.modal-overlay{z-index:1000;padding:var(--space-4);background:#000000b3;justify-content:center;align-items:center;animation:.15s ease-out modal-overlay-in;display:flex;position:fixed;inset:0}.modal-overlay.closing{animation:.15s ease-out forwards modal-overlay-out}.modal{background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);width:100%;max-width:400px;max-height:90vh;box-shadow:var(--shadow-lg);flex-direction:column;animation:.15s ease-out modal-content-in;display:flex;overflow:hidden}.modal-overlay.closing .modal{animation:.15s ease-out forwards modal-content-out}.modal--lg{max-width:500px}.modal--xl{max-width:640px}.modal__header{padding:var(--space-4);border-bottom:1px solid var(--stroke-0);justify-content:space-between;align-items:center;display:flex}.modal__title{font-size:var(--text-md);color:var(--text-0);margin:0;font-weight:600}.modal__close{border-radius:var(--radius-md);width:28px;height:28px;color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.modal__close:hover{background:var(--bg-2);color:var(--text-0)}.modal__body{padding:var(--space-4);flex:1;overflow-y:auto}.modal__footer{justify-content:flex-end;align-items:center;gap:var(--space-2);padding:var(--space-4);border-top:1px solid var(--stroke-0);display:flex}.toast-container{bottom:var(--space-4);right:var(--space-4);z-index:1100;gap:var(--space-2);flex-direction:column;display:flex;position:fixed}.toast{align-items:center;gap:var(--space-3);padding:var(--space-3)var(--space-4);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-md);color:var(--text-0);font-size:var(--text-sm);box-shadow:var(--shadow-md);animation:.2s slideIn;display:flex}@keyframes slideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.toast--success{border-color:var(--success)}.toast--error{border-color:var(--danger)}.toast--warning{border-color:var(--warning)}.toast.reminder{border-color:var(--accent-0);background:linear-gradient(135deg,var(--bg-0)0%,rgba(var(--accent-rgb,99,102,241),.1)100%)}.toast.reminder .toast-icon{color:var(--accent-0)}.empty-state{padding:var(--space-12)var(--space-4);text-align:center;color:var(--text-2);flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-state svg{width:48px;height:48px;margin-bottom:var(--space-4);opacity:.5}.empty-state-title{font-size:var(--text-lg);color:var(--text-1);margin-bottom:var(--space-2);font-weight:500}.empty-state-description{font-size:var(--text-sm);color:var(--text-2)}.empty-state__icon{background:var(--bg-2);border:1px solid var(--stroke-0);border-radius:var(--radius-md);width:48px;height:48px;color:var(--text-2);margin-bottom:var(--space-4);justify-content:center;align-items:center;display:flex}.empty-state__icon svg{opacity:1;width:24px;height:24px;margin:0}.empty-state__title{font-size:var(--text-md);color:var(--text-0);margin-bottom:var(--space-2);font-weight:600}.empty-state__description{font-size:var(--text-sm);color:var(--text-2);max-width:280px;margin-bottom:var(--space-5)}.empty-state__actions{gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.empty-state__btn{padding:var(--space-2)var(--space-4);font-size:var(--text-sm);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);font-weight:500;font-family:var(--font-sans)}.empty-state__btn--primary{background:var(--text-0);color:var(--bg-0);border:none}.empty-state__btn--primary:hover{opacity:.9}.empty-state__btn--primary:disabled{opacity:.5;cursor:not-allowed}.empty-state__btn--secondary{color:var(--text-0);border:1px solid var(--stroke-1);background:0 0}.empty-state__btn--secondary:hover{background:var(--bg-2)}.empty-state__link{font-size:var(--text-sm);color:var(--text-2);align-items:center;gap:var(--space-1);transition:color var(--transition-fast);text-decoration:none;display:flex}.empty-state__link:hover{color:var(--text-0)}.templates-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));display:grid}.template-card{background:var(--bg-1);border:1px solid var(--stroke-0);border-radius:var(--radius-lg);padding:var(--space-4)}.template-header{margin-bottom:var(--space-3);justify-content:space-between;align-items:flex-start;display:flex}.template-info{flex:1;min-width:0}.template-title{color:var(--text-0);margin-bottom:var(--space-1);font-weight:500}.template-recurrence{font-size:var(--text-sm);color:var(--text-2)}.template-toggle{background:var(--bg-3);cursor:pointer;width:36px;height:20px;transition:background var(--transition-fast);border:none;border-radius:10px;position:relative}.template-toggle:after{content:"";width:16px;height:16px;transition:transform var(--transition-fast);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px}.template-toggle.enabled{background:var(--brand)}.template-toggle.enabled:after{transform:translate(16px)}.template-actions{gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--stroke-0);display:flex}.home-page-view{flex-direction:column;flex:1;min-height:0;display:flex}.view-slide-in-from-right{animation:.3s cubic-bezier(.4,0,.2,1) forwards slideInFromRight}.view-slide-in-from-left{animation:.3s cubic-bezier(.4,0,.2,1) forwards slideInFromLeft}@keyframes slideInFromRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInFromLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}.calendar-page{background:var(--bg-1);height:100%;min-height:0;margin:calc(var(--space-4)*-1);flex:1;gap:0;display:flex}.calendar-page__left-panel{border-right:1px solid var(--stroke-0);background:var(--bg-1);width:260px;padding:var(--space-3);gap:var(--space-3);flex-direction:column;flex-shrink:0;display:flex;overflow-y:auto}.calendar-page__main{background:var(--bg-1);flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.calendar-page__header{padding:var(--space-2)var(--space-3);background:var(--bg-1);justify-content:space-between;align-items:center;gap:var(--space-4);flex-shrink:0;display:flex}.calendar-page__nav{align-items:center;gap:var(--space-2);display:flex}.calendar-page__today-btn{font-size:var(--text-sm);color:var(--text-1);border:1px solid var(--stroke-1);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);background:0 0;padding:6px 14px;font-weight:500}.calendar-page__today-btn:hover{background:var(--bg-2);border-color:var(--stroke-2);color:var(--text-0)}.calendar-page__nav-btn{border-radius:var(--radius-md);width:32px;height:32px;color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.calendar-page__nav-btn:hover{background:var(--bg-2);color:var(--text-0)}.calendar-page__title{font-size:var(--text-lg);color:var(--text-0);letter-spacing:-.01em;font-weight:500}.calendar-page__view-toggle{background:var(--bg-2);border-radius:var(--radius-md);gap:2px;padding:2px;display:flex}.calendar-page__view-btn{align-items:center;gap:var(--space-1-5);font-size:var(--text-sm);color:var(--text-2);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;padding:6px 12px;font-weight:500;display:flex}.calendar-page__view-btn:hover{color:var(--text-1)}.calendar-page__view-btn.active{background:var(--bg-0);color:var(--text-0);box-shadow:0 1px 2px #0000000d}.calendar-page__content{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.calendar-page__content .monthly-view,.calendar-page__content .time-grid-container{background:var(--bg-1)}.calendar-page__content .monthly-grid{border-bottom:none;border-left:none;border-right:none;border-radius:0}.mini-calendar{background:0 0;padding:0}.mini-calendar__header{margin-bottom:var(--space-2);justify-content:space-between;align-items:center;display:flex}.mini-calendar__title{font-size:var(--text-sm);color:var(--text-0);font-weight:600}.mini-calendar__nav-btn{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.mini-calendar__nav-btn:hover{background:var(--bg-2);color:var(--text-0)}.mini-calendar__weekdays{margin-bottom:var(--space-1);grid-template-columns:repeat(7,1fr);display:grid}.mini-calendar__weekday{color:var(--text-2);text-align:center;text-transform:uppercase;padding:4px 0;font-size:10px;font-weight:500}.mini-calendar__grid{grid-template-columns:repeat(7,1fr);gap:1px;display:grid}.mini-calendar__day{aspect-ratio:1;width:100%;color:var(--text-1);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;font-size:12px;font-weight:400;display:flex;position:relative}.mini-calendar__day:hover{background:var(--bg-2)}.mini-calendar__day.other-month{color:var(--text-3)}.mini-calendar__day.today{background:var(--accent);color:#fff;font-weight:600}.mini-calendar__day.today:hover{background:var(--accent-hover)}.mini-calendar__day.selected:not(.today){background:var(--bg-3);color:var(--text-0);font-weight:500}.mini-calendar__day.selected.today{background:var(--accent);color:#fff}.mini-calendar__day.has-tasks:after{content:"";background:var(--accent);border-radius:50%;width:4px;height:4px;position:absolute;bottom:2px}.mini-calendar__day.today.has-tasks:after{background:#fff}.day-tasks-panel{flex-direction:column;flex:1;min-height:0;display:flex}.day-tasks-panel__title{font-size:var(--text-sm);color:var(--text-0);margin-bottom:var(--space-3);font-weight:600}.day-tasks-panel__content{flex:1;overflow-y:auto}.day-tasks-panel__empty{font-size:var(--text-sm);color:var(--text-2);padding:var(--space-4)0}.day-tasks-panel__list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.day-tasks-panel__item{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-2-5);background:var(--bg-0);border:1px solid var(--stroke-0);border-radius:var(--radius-md);font-size:var(--text-sm);display:flex}.day-tasks-panel__item.completed{opacity:.6}.day-tasks-panel__item.completed .day-tasks-panel__text{text-decoration:line-through}.day-tasks-panel__color{border-radius:50%;flex-shrink:0;width:8px;height:8px}.day-tasks-panel__text{color:var(--text-0);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.day-tasks-panel__time{font-size:var(--text-xs);color:var(--text-2);flex-shrink:0}@media(max-width:900px){.calendar-page__left-panel{display:none}.calendar-page{margin:calc(var(--space-4)*-1)}}.monthly-view{background:var(--bg-1);flex-direction:column;flex:1;min-height:0;display:flex}.monthly-header{align-items:center;gap:var(--space-4);padding:var(--space-3)0;flex-shrink:0;display:flex}.monthly-nav{align-items:center;gap:var(--space-1);display:flex}.monthly-today-btn{font-size:var(--text-sm);color:var(--text-1);border:1px solid var(--stroke-1);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);background:0 0;padding:6px 14px;font-weight:500}.monthly-today-btn:hover{background:var(--bg-2);border-color:var(--stroke-2);color:var(--text-0)}.monthly-nav-btn{border-radius:var(--radius-md);width:32px;height:32px;color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.monthly-nav-btn:hover{background:var(--bg-2);color:var(--text-0)}.monthly-title{font-size:var(--text-lg);color:var(--text-1);letter-spacing:-.01em;font-weight:500}.monthly-grid{border:1px solid var(--stroke-0);border-radius:var(--radius-md);flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.monthly-header-row{border-bottom:1px solid var(--stroke-0);flex-shrink:0;grid-template-columns:repeat(7,1fr);display:grid}.monthly-day-header{padding:var(--space-2)var(--space-3);font-size:var(--text-xs);color:var(--text-3);text-align:left;font-weight:500}.monthly-week-row{border-bottom:1px solid var(--stroke-0);flex:1;grid-template-rows:1fr;grid-template-columns:repeat(7,1fr);min-height:0;display:grid}.monthly-week-row:last-child{border-bottom:none}.monthly-week-row>.monthly-day{min-height:80px}.monthly-day{padding:var(--space-2);border-right:1px solid var(--stroke-0);flex-direction:column;display:flex;overflow:hidden}.monthly-day:last-child,.monthly-day:nth-child(7n){border-right:none}.monthly-day.other-month .monthly-day-number{color:var(--text-3)}.monthly-day.today .monthly-day-number{color:#fff;background:#ef4444;border-radius:6px}.monthly-day.today .monthly-day-number:hover{background:var(--bg-3);color:var(--text-0)}.monthly-day-number{font-size:var(--text-sm);margin-bottom:var(--space-1);cursor:pointer;color:var(--text-1);transition:all var(--transition-fast);background:0 0;border:1.5px solid #0000;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;padding:0;font-weight:400;display:inline-flex}.monthly-day-number:hover{background:var(--bg-2)}.monthly-tasks-wrapper{flex-direction:column;flex:1;min-height:0;display:flex;position:relative;overflow:hidden}.monthly-tasks{flex-direction:column;flex:1;gap:2px;min-height:0;display:flex;overflow:hidden}.monthly-tasks--scrollable{-webkit-overflow-scrolling:touch;touch-action:pan-y;scrollbar-width:none;-ms-overflow-style:none;overscroll-behavior:contain;overflow-y:auto}.monthly-tasks--scrollable::-webkit-scrollbar{display:none}.monthly-scroll-indicator{display:none}.monthly-task-pill{background:var(--bg-2);border-radius:var(--radius-sm);cursor:grab;width:100%;transition:all var(--transition-fast);text-align:left;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;border:none;flex-direction:column;gap:3px;padding:5px 8px;display:flex}.monthly-task-pill.has-meta{padding:6px 8px}.monthly-task-pill:hover{background:var(--bg-3)}.monthly-task-pill.completed{opacity:.5}.monthly-task-pill.completed .monthly-task-text{color:var(--text-3);text-decoration:line-through}.monthly-task-pill__main{align-items:center;gap:6px;width:100%;display:flex}.monthly-task-pill__meta{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.monthly-task-color{border-radius:2px;flex-shrink:0;width:3px;height:14px}.monthly-task-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.monthly-task-chip{background:var(--bg-3);border-radius:var(--radius-xs);color:var(--text-2);align-items:center;gap:3px;padding:2px 5px;font-size:9px;display:inline-flex}.monthly-task-chip--time{color:var(--text-2)}.monthly-task-chip--status{padding:2px 4px}.monthly-task-chip--priority-high{background:#ef444426}.monthly-task-chip--priority-medium{background:#f59e0b26}.monthly-task-chip--priority-low{background:#3b82f626}.monthly-task-chip--spanning{color:#8b5cf6;background:#8b5cf626}.monthly-task-pill--spanning{z-index:10;background:var(--task-color,var(--accent-0));border:none;border-radius:0;justify-content:flex-start;align-items:center;height:20px;min-height:20px;margin-left:0;margin-right:0;padding:3px 6px;display:flex;position:relative}.monthly-task-pill--spanning .monthly-task-color{display:none}.monthly-task-pill--spanning.is-start{border-radius:var(--radius-sm)0 0 var(--radius-sm);margin-left:0;margin-right:0}.monthly-task-pill--spanning.is-end{border-radius:0 var(--radius-sm)var(--radius-sm)0;margin-left:0;margin-right:0}.monthly-task-pill--spanning.is-middle{border-radius:0;margin-left:0;margin-right:0}.monthly-task-pill--spanning.is-middle .monthly-task-text{opacity:0}.monthly-task-pill--spanning .monthly-task-text{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:10px;font-weight:500;line-height:20px;overflow:hidden}.monthly-task-pill--spanning .monthly-task-pill__main{align-items:center;min-width:0;height:100%;display:flex}.monthly-task-pill--spanning:hover{filter:brightness(1.1)}.monthly-task-pill--spanning.is-row-start{border-radius:var(--radius-sm)0 0 var(--radius-sm);margin-left:0}.monthly-task-pill--spanning.is-row-end{border-radius:0 var(--radius-sm)var(--radius-sm)0;margin-right:0}.monthly-calendar-event{cursor:pointer;background:#4285f426;border:1px solid #4285f44d}.monthly-calendar-event:hover{background:#4285f440;border-color:#4285f480}.monthly-calendar-event .monthly-task-color{background-color:var(--event-color,#4285f4)!important}.status-icon{flex-shrink:0}.status-icon--not-started{color:var(--text-3)}.status-icon--progress{color:#0ea5e9}.status-icon--done{color:#10b981}.priority-icon{flex-shrink:0}.priority-icon--high{color:#ef4444}.priority-icon--medium{color:#f59e0b}.priority-icon--low{color:#3b82f6}.monthly-task-text{color:var(--text-1);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:11px;font-weight:450;overflow:hidden}.monthly-task-time{color:var(--text-1);white-space:nowrap;flex-shrink:0;margin-left:4px;font-size:11px;font-weight:450}@media(max-width:768px){.monthly-header{padding:var(--space-2)0;gap:var(--space-2)}.monthly-title{font-size:var(--text-base)}.monthly-day-header{padding:var(--space-1);font-size:10px}.monthly-day{padding:var(--space-1)}.monthly-week-row>.monthly-day{min-height:70px}.monthly-day-number{font-size:var(--text-xs);width:24px;height:24px}.monthly-task-pill{gap:2px;padding:3px 6px}.monthly-task-pill__meta{display:none}.monthly-task-text{font-size:10px}.monthly-task-color{width:2px;height:12px}.monthly-task-dot{width:6px;height:6px}}@media(min-width:1400px){.monthly-week-row>.monthly-day{min-height:140px}.monthly-day{padding:var(--space-3)}.monthly-task-pill{gap:4px;padding:6px 10px}.monthly-task-text{font-size:12px}}.monthly-day.drag-over{background:var(--accent-0)}@supports (color:color-mix(in lab,red,red)){.monthly-day.drag-over{background:color-mix(in srgb,var(--accent-0)8%,var(--bg-0))}}.monthly-day.drag-over{box-shadow:inset 0 0 0 1px var(--accent-0)}.monthly-drag-overlay{background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);cursor:grabbing;flex-direction:column;gap:3px;padding:6px 10px;display:flex}.monthly-drag-overlay.has-meta{padding:6px 10px}.day-tasks-modal-overlay{z-index:9999;padding:var(--space-4);background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.day-tasks-modal{background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);flex-direction:column;width:100%;max-width:360px;max-height:80vh;display:flex;overflow:hidden}.day-tasks-modal__header{padding:var(--space-3)var(--space-4);border-bottom:1px solid var(--stroke-0);justify-content:space-between;align-items:center;display:flex}.day-tasks-modal__title{font-size:var(--text-base);color:var(--text-0);margin:0;font-weight:500}.day-tasks-modal__close{border-radius:var(--radius-md);width:28px;height:28px;color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.day-tasks-modal__close:hover{background:var(--bg-2);color:var(--text-0)}.day-tasks-modal__content{padding:var(--space-2);flex-direction:column;flex:1;gap:2px;display:flex;overflow-y:auto}.day-tasks-modal__task{background:var(--bg-2);border-radius:var(--radius-md);cursor:pointer;width:100%;transition:all var(--transition-fast);text-align:left;border:none;flex-direction:column;gap:6px;padding:10px 12px;display:flex}.day-tasks-modal__task:hover{background:var(--bg-3)}.day-tasks-modal__task.completed{opacity:.6}.day-tasks-modal__task.completed .day-tasks-modal__task-text{color:var(--text-3);text-decoration:line-through}.day-tasks-modal__task-main{align-items:center;gap:8px;width:100%;display:flex}.day-tasks-modal__task-meta{align-items:center;gap:6px;padding-left:11px;display:flex}.day-tasks-modal__task-text{font-size:var(--text-sm);color:var(--text-1);white-space:nowrap;text-overflow:ellipsis;flex:1;font-weight:450;overflow:hidden}.day-tasks-modal__task-time{font-size:var(--text-xs);color:var(--text-3);flex-shrink:0}.day-tasks-modal__add{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3);margin:var(--space-2);border:1px dashed var(--stroke-1);border-radius:var(--radius-md);color:var(--text-2);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast);background:0 0;display:flex}.day-tasks-modal__add:hover{background:var(--bg-2);border-color:var(--stroke-2);color:var(--text-1)}.date-context-menu{background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);min-width:180px;box-shadow:var(--shadow-lg);padding:var(--space-1);z-index:9999}.date-context-menu__item{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2)var(--space-3);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);text-align:left;background:0 0;border:none;display:flex}.date-context-menu__item:hover:not(:disabled){background:var(--bg-2);color:var(--text-0)}.date-context-menu__item:disabled{opacity:.4;cursor:not-allowed}.date-context-menu__item svg{width:14px;height:14px;color:var(--text-2)}.date-context-menu__item:hover:not(:disabled) svg{color:var(--text-1)}.date-context-menu__item--danger,.date-context-menu__item--danger svg{color:var(--danger)}.date-context-menu__item--danger:hover:not(:disabled){background:var(--danger-muted);color:var(--danger)}.date-context-menu__divider{background:var(--stroke-0);height:1px;margin:var(--space-1)0}.date-context-menu__badge{background:var(--accent-2);border-radius:var(--radius-full);color:var(--accent-0);margin-left:auto;padding:2px 6px;font-size:10px;font-weight:500}.task-tooltip{z-index:10000;background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);width:280px;box-shadow:var(--shadow-xl);animation:.15s ease-out tooltipFadeIn;position:fixed;overflow:hidden}.task-tooltip.is-closing{animation:.12s ease-in forwards tooltipFadeOut}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes tooltipFadeOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-4px)}}.task-tooltip__header{border-bottom:1px solid var(--stroke-0);background:var(--bg-2);justify-content:flex-end;align-items:center;gap:4px;padding:6px 10px;display:flex}.task-tooltip__action{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.task-tooltip__action:hover{background:var(--bg-3);color:var(--text-0)}.task-tooltip__content{padding:var(--space-3);gap:var(--space-3);flex-direction:column;display:flex}.task-tooltip__title-row{align-items:flex-start;gap:var(--space-2);display:flex}.task-tooltip__color{border-radius:var(--radius-sm);flex-shrink:0;width:16px;height:16px;margin-top:2px}.task-tooltip__title{font-size:var(--text-base);color:var(--text-0);margin:0;font-weight:600;line-height:1.3}.task-tooltip__title.completed{color:var(--text-2);text-decoration:line-through}.task-tooltip__info{gap:var(--space-2);flex-direction:column;display:flex}.task-tooltip__info-row{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-1);display:flex}.task-tooltip__info-row svg{color:var(--text-3);flex-shrink:0}.task-tooltip__tags{flex-wrap:wrap;gap:4px;display:flex}.task-tooltip__tag{background:var(--bg-3);border-radius:var(--radius-sm);color:var(--text-2);padding:2px 6px;font-size:10px}.task-tooltip__priority,.task-tooltip__status{align-items:center;gap:4px;display:inline-flex}.task-tooltip__priority--high{color:#ef4444}.task-tooltip__priority--medium{color:#f59e0b}.task-tooltip__priority--low{color:#3b82f6}.task-tooltip__status--not-started{color:var(--text-2)}.task-tooltip__status--in-progress{color:#f59e0b}.task-tooltip__status--done{color:#22c55e}.task-tooltip__description{font-size:var(--text-sm);color:var(--text-2);padding-top:var(--space-2);border-top:1px solid var(--stroke-0);text-overflow:ellipsis;-webkit-line-clamp:3;-webkit-box-orient:vertical;max-height:60px;margin:0;line-height:1.5;display:-webkit-box;overflow:hidden}@media(max-width:640px){.task-tooltip{border-radius:var(--radius-xl)var(--radius-xl)0 0;width:100%;max-width:100%;animation:.2s ease-out slideUpSheet;position:fixed;bottom:0;right:0;top:auto!important;left:0!important}.task-tooltip__action{width:36px;height:36px}.task-tooltip__action svg{width:18px;height:18px}}.priority-high{color:var(--priority-high)}.priority-medium{color:var(--priority-medium)}.priority-low{color:var(--priority-low)}.task-item.is-dragging{opacity:.5;box-shadow:var(--shadow-lg)}.calendar-event-tooltip{z-index:10000;background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);width:280px;box-shadow:var(--shadow-xl);animation:.15s ease-out tooltipFadeIn;position:fixed;overflow:hidden}.calendar-event-tooltip.is-closing{animation:.12s ease-in forwards tooltipFadeOut}.calendar-event-tooltip__header{border-bottom:1px solid var(--stroke-0);background:var(--bg-2);justify-content:flex-end;align-items:center;gap:4px;padding:6px 10px;display:flex}.calendar-event-tooltip__action{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.calendar-event-tooltip__action:hover{background:var(--bg-3);color:var(--text-0)}.calendar-event-tooltip__content{padding:var(--space-3);gap:var(--space-3);flex-direction:column;display:flex}.calendar-event-tooltip__title-row{align-items:flex-start;gap:var(--space-2);display:flex}.calendar-event-tooltip__color{border-radius:var(--radius-sm);flex-shrink:0;width:16px;height:16px;margin-top:2px}.calendar-event-tooltip__title{font-size:var(--text-base);color:var(--text-0);margin:0;font-weight:600;line-height:1.3}.calendar-event-tooltip__info{gap:var(--space-2);flex-direction:column;display:flex}.calendar-event-tooltip__info-row{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-1);display:flex}.calendar-event-tooltip__info-row svg{color:var(--text-3);flex-shrink:0}.calendar-event-tooltip__calendar-name{color:var(--text-2)}.calendar-event-tooltip__source{align-items:center;gap:var(--space-1);color:var(--text-3);padding-top:var(--space-2);border-top:1px solid var(--stroke-0);font-size:11px;display:flex}.calendar-event-tooltip__source svg{color:#4285f4}@media(max-width:640px){.calendar-event-tooltip{border-radius:var(--radius-xl)var(--radius-xl)0 0;width:100%;max-width:100%;animation:.2s ease-out slideUpSheet;position:fixed;bottom:0;right:0;top:auto!important;left:0!important}.calendar-event-tooltip__action{width:36px;height:36px}.calendar-event-tooltip__action svg{width:18px;height:18px}}@keyframes searchOverlayIn{0%{opacity:0}to{opacity:1}}@keyframes searchOverlayOut{0%{opacity:1}to{opacity:0}}@keyframes searchModalIn{0%{opacity:0;transform:scale(.96)translateY(-10px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes searchModalOut{0%{opacity:1;transform:scale(1)translateY(0)}to{opacity:0;transform:scale(.96)translateY(-10px)}}@keyframes searchResultIn{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.search-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:2000;background:#0009;justify-content:center;align-items:flex-start;padding-top:12vh;animation:.15s ease-out searchOverlayIn;display:flex;position:fixed;inset:0}.search-overlay.is-closing{animation:.15s ease-in forwards searchOverlayOut}.search-modal{background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-xl);width:100%;max-width:580px;animation:.2s cubic-bezier(.16,1,.3,1) searchModalIn;overflow:hidden;box-shadow:0 0 0 1px #ffffff0d,0 20px 50px -10px #00000080,0 10px 30px -5px #0000004d}.search-modal.is-closing{animation:.15s ease-in forwards searchModalOut}.search-modal__input-wrapper{align-items:center;gap:var(--space-3);padding:var(--space-4)var(--space-5);border-bottom:1px solid var(--stroke-0);background:var(--bg-1);display:flex}.search-modal__search-icon{color:var(--text-2);flex-shrink:0}.search-modal__input{font-size:var(--text-base);color:var(--text-0);background:0 0;border:none;outline:none;flex:1;min-width:0;font-weight:500}.search-modal__input::placeholder{color:var(--text-3);font-weight:400}.search-modal__clear{background:var(--bg-3);border-radius:var(--radius-sm);width:24px;height:24px;color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);border:none;justify-content:center;align-items:center;display:flex}.search-modal__clear:hover{background:var(--bg-4);color:var(--text-0)}.search-modal__shortcut{align-items:center;gap:4px;display:flex}.search-modal__shortcut kbd,.search-modal__footer kbd{background:var(--bg-3);border:1px solid var(--stroke-1);min-width:22px;height:22px;font-family:var(--font-sans);color:var(--text-2);border-radius:4px;justify-content:center;align-items:center;padding:0 6px;font-size:11px;font-weight:500;display:inline-flex;box-shadow:0 1px 2px #0003}.search-modal__content{max-height:380px;padding:var(--space-2)0;overflow-y:auto}.search-modal__section{padding:var(--space-2)0}.search-modal__section-title{padding:var(--space-2)var(--space-5);text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);align-items:center;gap:6px;font-size:11px;font-weight:600;display:flex}.search-modal__section-title svg{width:12px;height:12px}.search-modal__action{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3)var(--space-5);cursor:pointer;transition:all var(--transition-fast);text-align:left;background:0 0;border:none;display:flex}.search-modal__action:hover,.search-modal__action.is-selected{background:var(--bg-2)}.search-modal__action.is-selected{background:var(--accent-2)}.search-modal__action-icon{color:var(--text-2);flex-shrink:0}.search-modal__action.is-selected .search-modal__action-icon{color:var(--accent-0)}.search-modal__action-label{font-size:var(--text-sm);color:var(--text-1);flex:1;font-weight:500}.search-modal__action.is-selected .search-modal__action-label{color:var(--text-0)}.search-modal__action-arrow{color:var(--text-3);opacity:0;transition:all var(--transition-fast);transform:translate(-4px)}.search-modal__action:hover .search-modal__action-arrow,.search-modal__action.is-selected .search-modal__action-arrow{opacity:1;transform:translate(0)}.search-modal__result{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3)var(--space-5);cursor:pointer;transition:all var(--transition-fast);text-align:left;background:0 0;border:none;animation:.2s ease-out both searchResultIn;display:flex}.search-modal__result:hover,.search-modal__result.is-selected{background:var(--bg-2)}.search-modal__result.is-selected{background:var(--accent-2)}.search-modal__result-color{border-radius:2px;flex-shrink:0;width:4px;height:36px}.search-modal__result-content{flex:1;min-width:0}.search-modal__result-title{font-size:var(--text-sm);color:var(--text-0);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.search-modal__result.is-completed .search-modal__result-title{color:var(--text-2);text-decoration:line-through}.search-modal__result-meta{align-items:center;gap:var(--space-3);margin-top:2px;display:flex}.search-modal__result-date,.search-modal__result-status,.search-modal__result-match{color:var(--text-2);align-items:center;gap:4px;font-size:11px;display:inline-flex}.search-modal__result-status{color:var(--success)}.search-modal__result-match{color:var(--accent-1)}.search-modal__result-arrow{color:var(--text-3);opacity:0;transition:all var(--transition-fast);flex-shrink:0;transform:translate(-4px)}.search-modal__result:hover .search-modal__result-arrow,.search-modal__result.is-selected .search-modal__result-arrow{opacity:1;transform:translate(0)}.search-highlight{color:var(--accent-1);background:#6366f14d;border-radius:2px;padding:0 2px}.search-modal__empty{padding:var(--space-8)var(--space-4);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.search-modal__empty-icon{color:var(--text-3);margin-bottom:var(--space-4);opacity:.5}.search-modal__empty-title{font-size:var(--text-base);color:var(--text-1);margin-bottom:var(--space-1);font-weight:500}.search-modal__empty-subtitle{font-size:var(--text-sm);color:var(--text-2)}.search-modal__hint{padding:var(--space-4)var(--space-5);text-align:center;font-size:var(--text-xs);color:var(--text-3);border-top:1px solid var(--stroke-0)}.search-modal__section--web{border-top:1px solid var(--stroke-0);padding-top:var(--space-2);margin-top:var(--space-2)}.search-modal__web-search{align-items:center;gap:var(--space-3);width:100%;padding:10px var(--space-4);border-radius:var(--radius-md);text-align:left;cursor:pointer;transition:background var(--transition-fast);background:0 0;border:none;display:flex}.search-modal__web-search:hover,.search-modal__web-search.is-selected{background:var(--bg-2)}.search-modal__web-search-icon{color:var(--text-2);flex-shrink:0}.search-modal__web-search.is-selected .search-modal__web-search-icon{color:var(--accent-0)}.search-modal__web-search-text{font-size:var(--text-sm);color:var(--text-1);flex:1}.search-modal__web-search-text strong{color:var(--text-0);font-weight:500}.search-modal__web-search-arrow{color:var(--text-2);opacity:0;transition:opacity var(--transition-fast)}.search-modal__web-search:hover .search-modal__web-search-arrow,.search-modal__web-search.is-selected .search-modal__web-search-arrow{opacity:1}.search-modal__result-icon{width:16px;height:16px;color:var(--text-2);flex-shrink:0}.search-modal__result-star{color:var(--warning);flex-shrink:0;margin-left:6px}.search-modal__footer{justify-content:flex-end;align-items:center;gap:var(--space-5);padding:var(--space-3)var(--space-5);background:var(--bg-0);border-top:1px solid var(--stroke-0);display:flex}.search-modal__footer-hint{color:var(--text-3);align-items:center;gap:6px;font-size:11px;display:flex}.search-modal__footer-hint kbd{min-width:18px;height:18px;padding:0 4px;font-size:10px}.search-modal__footer-hint kbd svg{width:10px;height:10px}.weekly-nav{gap:var(--space-2);display:flex}.auth-page{background:var(--bg-0);min-height:100vh;padding:var(--space-6);justify-content:center;align-items:center;display:flex}.auth-container{flex-direction:column;align-items:center;width:100%;max-width:360px;display:flex}.auth-logo{background:var(--text-0);width:40px;height:40px;margin-bottom:var(--space-6);border-radius:50%}.auth-title{color:var(--text-0);margin-bottom:var(--space-6);text-align:center;font-size:24px;font-weight:600}.auth-subtitle{font-size:var(--text-sm);color:var(--text-1);text-align:center;margin-bottom:var(--space-4)}.auth-error{width:100%;padding:var(--space-3);background:var(--danger-muted);border:1px solid var(--danger);border-radius:var(--radius-md);color:var(--danger);font-size:var(--text-sm);margin-bottom:var(--space-4);text-align:center}.auth-social-btn{justify-content:center;align-items:center;gap:var(--space-3);width:100%;padding:12px var(--space-4);background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-md);color:var(--text-0);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast);font-weight:500;display:flex}.auth-social-btn:hover{background:var(--bg-2);border-color:var(--stroke-2)}.auth-divider{align-items:center;gap:var(--space-4);width:100%;margin:var(--space-5)0;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--stroke-1);flex:1;height:1px}.auth-divider span{font-size:var(--text-xs);color:var(--text-2);text-transform:uppercase;letter-spacing:.5px}.auth-form{gap:var(--space-4);flex-direction:column;width:100%;display:flex}.auth-field{gap:var(--space-2);flex-direction:column;display:flex}.auth-field label{font-size:var(--text-sm);color:var(--text-0);font-weight:500}.auth-field input{width:100%;padding:12px var(--space-3);background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-md);color:var(--text-0);font-size:var(--text-sm);transition:all var(--transition-fast)}.auth-field input::placeholder{color:var(--text-2)}.auth-field input:focus{border-color:var(--text-1);background:var(--bg-2);outline:none}.auth-submit-btn{width:100%;padding:12px var(--space-4);background:var(--text-0);border-radius:var(--radius-md);color:var(--bg-0);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast);margin-top:var(--space-2);border:none;font-weight:600}.auth-submit-btn:hover:not(:disabled){background:var(--text-1)}.auth-submit-btn:disabled{opacity:.5;cursor:not-allowed}.auth-captcha{justify-content:center;min-height:65px;display:flex}.auth-footer{margin-top:var(--space-5);font-size:var(--text-sm);color:var(--text-1);text-align:center}.auth-footer a{color:var(--text-0);font-weight:500;text-decoration:none}.auth-footer a:hover{text-decoration:underline}.auth-link-btn{color:var(--text-0);font-size:var(--text-sm);cursor:pointer;background:0 0;border:none;padding:0;font-weight:500}.auth-link-btn:hover{text-decoration:underline}.auth-code-inputs{gap:var(--space-2);margin-bottom:var(--space-4);justify-content:center;display:flex}.auth-code-input{text-align:center;background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-md);width:48px;height:56px;color:var(--text-0);transition:all var(--transition-fast);font-size:20px;font-weight:600}.auth-code-input:focus{border-color:var(--text-0);background:var(--bg-2);outline:none}.auth-layout{background:var(--bg-0);min-height:100vh;padding:var(--space-4);justify-content:center;align-items:center;display:flex}.auth-card{width:100%;max-width:400px}@media(max-width:480px){.auth-page{padding:var(--space-4)}.auth-title{font-size:20px}.auth-code-input{width:42px;height:50px;font-size:18px}}.loading-screen{background:var(--bg-0);justify-content:center;align-items:center;gap:var(--space-4);flex-direction:column;min-height:100vh;display:flex}.loading-text{color:var(--text-2);font-size:var(--text-sm)}.onboarding-page{background:var(--bg-0);min-height:100vh;padding:var(--space-6);justify-content:center;align-items:center;display:flex}.onboarding-content{flex-direction:column;align-items:flex-start;width:100%;max-width:600px;display:flex}.onboarding-logo{background:var(--text-0);width:32px;height:32px;margin-bottom:var(--space-4);border-radius:50%}.onboarding-title{color:var(--text-0);margin-bottom:var(--space-6);font-size:28px;font-weight:600;line-height:1.3}.onboarding-options{gap:var(--space-2);margin-bottom:var(--space-8);flex-wrap:wrap;display:flex}.onboarding-option{font-size:var(--text-sm);color:var(--text-0);border:1px solid var(--stroke-1);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;background:0 0;align-items:center;padding:10px 16px;font-weight:500;display:inline-flex}.onboarding-option:hover{background:var(--bg-2);border-color:var(--stroke-2)}.onboarding-option.selected{background:var(--text-0);color:var(--bg-0);border-color:var(--text-0)}.onboarding-nav{align-items:center;gap:var(--space-4);width:100%;margin-top:var(--space-4);display:flex}.onboarding-back{font-size:var(--text-sm);color:var(--text-0);cursor:pointer;padding:var(--space-2)0;transition:color var(--transition-fast);background:0 0;border:none;font-weight:500}.onboarding-back:hover{color:var(--text-1)}.onboarding-progress{flex:1;justify-content:center;align-items:center;gap:6px;display:flex}.onboarding-dot{background:var(--stroke-1);width:6px;height:6px;transition:all var(--transition-fast);border-radius:50%}.onboarding-dot.active{border-radius:var(--radius-full);background:var(--text-0);width:24px}.onboarding-dot.completed{background:var(--text-2)}.onboarding-submit{font-size:var(--text-sm);color:var(--bg-0);background:var(--text-0);border:1px solid var(--text-0);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);align-items:center;padding:10px 20px;font-weight:500;display:inline-flex}.onboarding-submit:hover:not(:disabled){background:var(--text-1);border-color:var(--text-1)}.onboarding-submit:disabled{opacity:.5;cursor:not-allowed}@media(max-width:640px){.onboarding-page{padding:var(--space-4)}.onboarding-title{font-size:22px}.onboarding-option{font-size:var(--text-xs);padding:8px 14px}}.onboarding-page.fade-in{animation:.8s ease-out forwards fadeInPage}@keyframes fadeInPage{0%{opacity:0}to{opacity:1}}.onboarding-intro{text-align:center;opacity:0;flex-direction:column;align-items:center;max-width:400px;transition:opacity .5s ease-out,transform .5s ease-out;display:flex;transform:translateY(20px)}.onboarding-intro.visible{opacity:1;transform:translateY(0)}.onboarding-welcome-icon{background:linear-gradient(135deg,var(--bg-1)0%,var(--bg-2)100%);width:80px;height:80px;margin-bottom:var(--space-6);color:var(--text-0);border-radius:50%;justify-content:center;align-items:center;animation:2s ease-in-out infinite pulseIcon;display:flex}@keyframes pulseIcon{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.onboarding-feature-icon{border-radius:var(--radius-lg);background:var(--bg-1);width:72px;height:72px;margin-bottom:var(--space-6);color:var(--text-0);justify-content:center;align-items:center;display:flex}.onboarding-intro-title{color:var(--text-0);margin-bottom:var(--space-3);font-size:32px;font-weight:600;line-height:1.2}.onboarding-intro-title.welcome{font-size:36px}.onboarding-intro-subtitle{font-size:var(--text-base);color:var(--text-1);margin-bottom:var(--space-8);line-height:1.6}.onboarding-continue{font-size:var(--text-base);color:var(--bg-0);background:var(--text-0);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);border:none;justify-content:center;align-items:center;min-width:160px;padding:14px 32px;font-weight:500;display:inline-flex}.onboarding-continue:hover{background:var(--text-1);transform:translateY(-1px)}.onboarding-intro-progress{margin-top:var(--space-8);align-items:center;gap:6px;display:flex}@media(max-width:640px){.onboarding-intro-title{font-size:26px}.onboarding-intro-title.welcome{font-size:28px}.onboarding-intro-subtitle{font-size:var(--text-sm)}.onboarding-continue{font-size:var(--text-sm);padding:12px 28px}}@keyframes modal-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes modal-overlay-out{0%{opacity:1}to{opacity:0}}@keyframes modal-content-in{0%{opacity:0;transform:scale(.98)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes modal-content-out{0%{opacity:1;transform:scale(1)translateY(0)}to{opacity:0;transform:scale(.98)translateY(8px)}}.task-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:5000;padding:var(--space-4);background:#0009;justify-content:center;align-items:center;animation:.15s ease-out modal-overlay-in;display:flex;position:fixed;inset:0}.task-modal-overlay.closing{animation:.15s ease-out forwards modal-overlay-out}.task-modal{background:var(--card);border:1px solid var(--stroke-1);border-radius:calc(var(--radius)*1.2);width:100%;max-width:520px;box-shadow:var(--shadow-lg);flex-direction:column;animation:.15s ease-out modal-content-in;display:flex;position:relative;overflow:visible}.task-modal-overlay.closing .task-modal{animation:.15s ease-out forwards modal-content-out}.task-modal__header{padding:var(--space-4)var(--space-4)var(--space-3);border-bottom:none;justify-content:space-between;align-items:center;display:flex}.task-modal__label{color:var(--text-3);letter-spacing:.5px;text-transform:uppercase;font-size:11px;font-weight:500}.task-modal__header-actions{align-items:center;gap:var(--space-1);display:flex}.task-modal__header-btn{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-3);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.task-modal__header-btn:hover{background:var(--bg-2);color:var(--text-1)}.task-modal__header-btn--danger:hover{background:var(--danger-muted);color:var(--danger)}.task-modal__close{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.task-modal__close:hover{background:var(--bg-2);color:var(--text-0)}.task-modal__body{padding:var(--space-4);gap:var(--space-4);flex-direction:column;display:flex;overflow:visible}.task-modal__title-input{width:100%;font-size:var(--text-lg);color:var(--text-0);box-shadow:none;background:0 0;border:none;outline:none;padding:0;font-weight:500}.task-modal__title-input:focus,.task-modal__title-input:focus-visible{box-shadow:none;border:none;outline:none}.task-modal__title-input::placeholder{color:var(--text-2)}.task-modal__description-input{width:100%;font-size:var(--text-sm);color:var(--text-1);resize:none;box-shadow:none;background:0 0;border:none;outline:none;padding:0;font-family:inherit;line-height:1.5}.task-modal__description-input:focus,.task-modal__description-input:focus-visible{box-shadow:none;border:none;outline:none}.task-modal__description-input::placeholder{color:var(--text-3)}.task-modal__chips{gap:var(--space-2);flex-wrap:wrap;display:flex;position:relative}.task-modal__chip-wrapper{position:relative}.task-modal__chip{border:1px solid var(--stroke-0);border-radius:var(--radius-full);font-size:var(--text-xs);color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);background:0 0;align-items:center;gap:6px;padding:6px 12px;font-weight:500;display:inline-flex}.task-modal__chip:hover{background:var(--bg-2);border-color:var(--stroke-1);color:var(--text-0)}.task-modal__chip svg{width:14px;height:14px}.task-modal__chip--status svg{color:#6b7280}.task-modal__chip--priority svg{color:#f59e0b}.task-modal__chip--labels svg{color:#8b5cf6}.task-modal__chip--date svg{color:#3b82f6}.task-modal__chip--attachments svg{color:#10b981}.task-modal__chip--notes svg{color:#6366f1}.task-modal__chip--disabled{cursor:not-allowed;opacity:.5}.task-modal__chip--disabled:hover{background:var(--bg-2);border-color:var(--stroke-0);color:var(--text-1)}.task-modal__dropdown{background:var(--bg-0);border:1px solid var(--stroke-1);border-radius:var(--radius-md);z-index:10000;min-width:160px;max-height:200px;position:absolute;top:calc(100% + 4px);left:0;overflow-y:auto;box-shadow:0 10px 40px #0006}.task-modal__dropdown--wide{min-width:220px}.task-modal__dropdown-item{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2)var(--space-3);font-size:var(--text-sm);color:var(--text-1);cursor:pointer;transition:background var(--transition-fast);text-align:left;background:0 0;border:none;display:flex}.task-modal__dropdown-item:hover{background:var(--bg-2);color:var(--text-0)}.task-modal__dropdown-item.is-active{background:var(--accent-2);color:var(--text-0)}.task-modal__dropdown-input{width:100%;padding:var(--space-2)var(--space-3);font-size:var(--text-sm);color:var(--text-0);background:0 0;border:none;outline:none}.task-modal__dropdown-input::placeholder{color:var(--text-2)}.task-modal__status-dot,.task-modal__priority-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.task-modal__dropdown--labels{flex-direction:column;min-width:240px;max-height:320px;display:flex}.task-modal__label-search{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);border-bottom:1px solid var(--stroke-0);display:flex}.task-modal__label-search svg{color:var(--text-3);flex-shrink:0}.task-modal__label-search input{font-size:var(--text-sm);color:var(--text-0);background:0 0;border:none;outline:none;flex:1}.task-modal__label-search input::placeholder{color:var(--text-3)}.task-modal__label-list{flex:1;max-height:180px;overflow-y:auto}.task-modal__label-item{justify-content:flex-start!important}.task-modal__label-item.is-selected{background:var(--accent-2)}.task-modal__label-color{border-radius:3px;flex-shrink:0;width:10px;height:10px}.task-modal__label-name{text-align:left;flex:1}.task-modal__label-item svg{color:var(--accent-0);flex-shrink:0}.task-modal__label-empty{padding:var(--space-3);text-align:center;color:var(--text-3);font-size:var(--text-xs)}.task-modal__label-add{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);border-top:1px solid var(--stroke-0);display:flex}.task-modal__label-add input{font-size:var(--text-xs);color:var(--text-0);background:0 0;border:none;outline:none;flex:1}.task-modal__label-add input::placeholder{color:var(--text-3)}.task-modal__label-add button{background:var(--bg-2);border-radius:var(--radius-sm);width:20px;height:20px;color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);border:none;justify-content:center;align-items:center;display:flex}.task-modal__label-add button:hover:not(:disabled){background:var(--accent-2);color:var(--text-0)}.task-modal__label-add button:disabled{opacity:.4;cursor:not-allowed}.task-modal__date-picker{min-width:260px;padding:var(--space-2)}.task-modal__date-header{padding:var(--space-2);justify-content:space-between;align-items:center;display:flex}.task-modal__date-nav{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.task-modal__date-nav:hover{background:var(--bg-2);color:var(--text-0)}.task-modal__date-title{font-size:var(--text-sm);color:var(--text-0);font-weight:600}.task-modal__date-days-header{padding:var(--space-1)0;grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.task-modal__date-day-name{color:var(--text-3);text-align:center;text-transform:uppercase;font-size:10px;font-weight:500}.task-modal__date-grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.task-modal__date-day{border-radius:var(--radius-sm);width:32px;height:32px;font-size:var(--text-sm);color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.task-modal__date-day:hover:not(:disabled):not(.empty){background:var(--bg-2);color:var(--text-0)}.task-modal__date-day.empty{cursor:default}.task-modal__date-day.is-today{color:var(--accent-0);font-weight:600}.task-modal__date-day.is-selected{background:var(--accent-0);color:#fff}.task-modal__date-day.is-selected.is-today{color:#fff}.task-modal__date-shortcuts{gap:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--stroke-0);margin-top:var(--space-2);display:flex}.task-modal__date-shortcuts button{background:var(--bg-2);border-radius:var(--radius-sm);color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);border:none;flex:1;padding:6px 8px;font-size:10px;font-weight:500}.task-modal__date-shortcuts button:hover{background:var(--bg-3);color:var(--text-0)}.task-modal__date-picker-new{background:var(--card);border-radius:var(--radius);border:1px solid var(--stroke-1);z-index:10000;min-width:290px;max-width:320px;max-height:calc(100vh - 100px);padding:0;position:absolute;top:calc(100% + 4px);left:0;overflow:hidden auto;box-shadow:0 8px 24px #00000026}.task-modal__date-picker-new.position-above{top:auto;bottom:calc(100% + 4px)}.date-picker__header-input{background:var(--muted);border-bottom:1px solid var(--stroke-1);border-radius:var(--radius)var(--radius)0 0;padding:12px 14px}.date-picker__datetime-row{align-items:center;gap:8px;display:flex}.date-picker__date-display{color:var(--text-0);font-size:14px;font-weight:500}.date-picker__datetime-divider{color:var(--text-3);font-weight:300}.date-picker__time-inline{background:var(--bg-2);border:1px solid var(--stroke-0);border-radius:var(--radius-sm);color:var(--text-0);width:85px;padding:4px 8px;font-family:inherit;font-size:13px}.date-picker__time-inline:focus{border-color:var(--ring);outline:none}.date-picker__time-to{color:var(--text-3);font-size:12px}.date-picker__time-add,.date-picker__time-remove{background:var(--bg-2);border:1px solid var(--stroke-0);border-radius:var(--radius-sm);width:22px;height:22px;color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;margin-left:auto;display:flex}.date-picker__time-add:hover,.date-picker__time-remove:hover{background:var(--bg-3);color:var(--text-0)}.date-picker__time-remove{color:var(--text-3)}.date-picker__time-remove:hover{color:#ef4444;border-color:#ef4444}.date-picker__header{justify-content:space-between;align-items:center;padding:12px 12px 8px;display:flex}.date-picker__month-year{color:var(--text-1);font-size:13px;font-weight:500}.date-picker__nav-buttons{gap:4px;display:flex}.date-picker__nav{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.date-picker__nav--now{width:auto;color:var(--text-2);margin-right:4px;padding:0 8px;font-size:12px;font-weight:500}.date-picker__nav:hover{background:var(--bg-2);color:var(--text-0)}.date-picker__nav--now:hover{color:var(--text-0)}.date-picker__day-names{grid-template-columns:repeat(7,1fr);gap:0;padding:4px 8px;display:grid}.date-picker__day-name{color:var(--text-3);text-align:center;padding:4px;font-size:11px;font-weight:500}.date-picker__grid{grid-template-columns:repeat(7,1fr);gap:2px 0;padding:0 8px 12px;display:grid}.date-picker__day{width:36px;height:36px;color:var(--text-1);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast);background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;font-size:14px;display:flex;position:relative}.date-picker__day:hover:not(:disabled):not(.empty):not(.is-start):not(.is-end):not(.is-today):not(.in-range){background:var(--bg-2);color:var(--text-0)}.date-picker__day.empty{cursor:default}.date-picker__day.is-today{color:#fff;background:#ef4444;border-radius:50%;font-weight:600}.date-picker__day.is-today:hover:not(.is-start):not(.is-end){background:#dc2626}.date-picker__day.is-start,.date-picker__day.is-end{color:#fff;z-index:1;background:#3b82f6;border-radius:8px;position:relative}.date-picker__day.in-range{color:var(--text-0);background:#3b82f640;border-radius:0}.date-picker__day.is-start:not(.is-end){border-radius:8px 0 0 8px}.date-picker__day.is-start:not(.is-end):after{content:"";z-index:-1;background:#3b82f640;position:absolute;inset:0 -2px 0 50%}.date-picker__day.is-end:not(.is-start){border-radius:0 8px 8px 0}.date-picker__day.is-end:not(.is-start):before{content:"";z-index:-1;background:#3b82f640;position:absolute;inset:0 50% 0 -2px}.date-picker__day.is-start.is-end{border-radius:8px}.date-picker__day.is-start.is-end:before,.date-picker__day.is-start.is-end:after{display:none}.date-picker__day.is-start:hover,.date-picker__day.is-end:hover{background:#2563eb}.date-picker__day.in-range:hover{background:#3b82f659}.date-picker__day.is-today.is-start,.date-picker__day.is-today.is-end{background:#3b82f6;border-radius:8px}.date-picker__day.is-today.in-range{color:var(--text-0);background:#3b82f640}.date-picker__options{border-top:1px solid var(--stroke-1);background:var(--background);padding:8px 16px 12px}.date-picker__option-row{border-bottom:1px solid var(--stroke-0);justify-content:space-between;align-items:center;padding:12px 0;display:flex}.date-picker__option-row:last-of-type{border-bottom:none}.date-picker__option-row--clickable{cursor:pointer;position:relative}.date-picker__option-row--clickable:hover{background:var(--bg-1);margin:0 -12px;padding:10px 12px}.date-picker__option-label{color:var(--text-1);font-size:13px}.date-picker__toggle{cursor:pointer;background:0 0;border:none;padding:0}.date-picker__toggle-track{background:var(--input);border:1px solid var(--stroke-1);border-radius:var(--radius-full);width:40px;height:22px;transition:all var(--transition-fast);display:block;position:relative}.date-picker__toggle.is-active .date-picker__toggle-track{background:var(--primary);border-color:var(--primary)}.date-picker__toggle-thumb{background:var(--background);width:16px;height:16px;transition:transform var(--transition-fast);border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #0003}.date-picker__toggle.is-active .date-picker__toggle-thumb{transform:translate(18px)}.date-picker__time-section{padding:8px 0 0}.date-picker__time-row{align-items:center;gap:8px;display:flex}.date-picker__time-icon{color:var(--text-2);flex-shrink:0}.date-picker__time-input{background:var(--background);border:1px solid var(--input);border-radius:var(--radius);color:var(--foreground);flex:1;padding:8px 12px;font-family:inherit;font-size:13px}.date-picker__time-input:focus{border-color:var(--ring);box-shadow:0 0 0 2px var(--ring);outline:none}@supports (color:color-mix(in lab,red,red)){.date-picker__time-input:focus{box-shadow:0 0 0 2px color-mix(in srgb,var(--ring)20%,transparent)}}.date-picker__time-separator{color:var(--text-2);font-size:12px}.date-picker__end-time-toggle{background:var(--bg-2);border:1px solid var(--stroke-0);border-radius:var(--radius-sm);width:24px;height:24px;color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;font-size:14px;font-weight:500;display:flex}.date-picker__end-time-toggle:hover{background:var(--bg-3);border-color:var(--stroke-1);color:var(--text-0)}.date-picker__end-time-toggle.is-active{background:var(--accent-0);border-color:var(--accent-0);color:#fff}.date-picker__end-time-toggle.is-active:hover{background:var(--accent-1);border-color:var(--accent-1)}.date-picker__reminder-wrapper{position:relative}.date-picker__reminder-value{color:var(--text-2);align-items:center;gap:4px;font-size:13px;display:flex}.date-picker__reminder-value svg{opacity:.6;transition:transform var(--transition-fast)}.date-picker__reminder-value svg.rotated{transform:rotate(90deg)}.date-picker__reminder-menu{background:var(--popover);border:1px solid var(--stroke-1);border-radius:var(--radius);z-index:10001;opacity:0;visibility:hidden;min-width:180px;transition:all var(--transition-fast);padding:4px;position:absolute;bottom:calc(100% + 4px);right:0;transform:translateY(4px);box-shadow:0 4px 16px #0003}.date-picker__reminder-menu.is-visible{opacity:1;visibility:visible;transform:translateY(0)}.date-picker__reminder-option{border-radius:calc(var(--radius) - 2px);width:100%;color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:space-between;align-items:center;padding:10px 12px;font-size:13px;display:flex}.date-picker__reminder-option:hover{background:var(--bg-2);color:var(--foreground)}.date-picker__reminder-option.is-active{color:var(--foreground);background:var(--bg-2)}.date-picker__reminder-option:first-child,.date-picker__reminder-option:last-child{border-radius:calc(var(--radius) - 2px)}.date-picker__custom-reminder{border-top:1px solid var(--stroke-0);align-items:center;gap:8px;padding:8px 12px;display:flex}.date-picker__custom-reminder-input{background:var(--bg-2);border:1px solid var(--stroke-0);border-radius:var(--radius-sm);width:60px;color:var(--text-1);text-align:center;padding:4px 8px;font-size:12px}.date-picker__custom-reminder-input:focus{border-color:var(--accent-0);outline:none}.date-picker__custom-reminder-label{color:var(--text-2);font-size:12px}.date-picker__clear-btn{width:100%;color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;margin-top:8px;padding:8px;font-size:13px}.date-picker__clear-btn:hover{color:var(--text-0)}.date-picker__range-selector{align-items:center;gap:8px;margin-bottom:4px;padding:8px 0;display:flex}.date-picker__range-btn{background:var(--bg-1);border:1px solid var(--stroke-0);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);flex-direction:column;flex:1;align-items:center;gap:2px;padding:8px 12px;display:flex}.date-picker__range-btn:hover{background:var(--bg-2)}.date-picker__range-btn.is-active{background:var(--accent-0);border-color:var(--accent-0)}.date-picker__range-btn-label{text-transform:uppercase;letter-spacing:.03em;color:var(--text-2);font-size:10px;font-weight:500}.date-picker__range-btn.is-active .date-picker__range-btn-label{color:#fffc}.date-picker__range-btn-date{color:var(--text-0);font-size:13px;font-weight:600}.date-picker__range-btn.is-active .date-picker__range-btn-date{color:#fff}.date-picker__range-arrow{color:var(--text-3);font-size:14px}.task-modal__chip--color svg{color:#a855f7}.task-modal__color-preview{border-radius:3px;flex-shrink:0;width:12px;height:12px}.task-modal__dropdown--colors{min-width:140px}.task-modal__color-option{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2)var(--space-3);font-size:var(--text-sm);color:var(--text-1);cursor:pointer;transition:background var(--transition-fast);text-align:left;background:0 0;border:none;display:flex}.task-modal__color-option:hover{background:var(--bg-2);color:var(--text-0)}.task-modal__color-option.is-selected{background:var(--accent-2);color:var(--text-0)}.task-modal__color-option svg{color:var(--accent-0);margin-left:auto}.task-modal__color-swatch{border-radius:4px;flex-shrink:0;width:14px;height:14px}.task-modal__footer{padding:var(--space-4);border-top:1px solid var(--stroke-0);background:0 0;justify-content:space-between;align-items:center;display:flex}.task-modal__footer-left{align-items:center;gap:var(--space-3);display:flex}.task-modal__footer-right{align-items:center;gap:var(--space-2);display:flex}.task-modal__create-more{align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--text-2);cursor:pointer;display:flex}.task-modal__create-more input[type=checkbox]{width:14px;height:14px;accent-color:var(--accent-0)}.task-modal__delete-btn{border:1px solid var(--stroke-0);border-radius:var(--radius-md);font-size:var(--text-xs);color:var(--danger);cursor:pointer;transition:all var(--transition-fast);background:0 0;align-items:center;gap:6px;padding:6px 10px;font-weight:500;display:inline-flex}.task-modal__delete-btn:hover{background:var(--danger-muted);border-color:var(--danger)}.task-modal__cancel-btn{border:1px solid var(--stroke-1);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);background:0 0;padding:8px 14px;font-weight:500}.task-modal__cancel-btn:hover{background:var(--bg-2);border-color:var(--stroke-2);color:var(--text-0)}.task-modal__submit-btn{background:var(--accent-0);border-radius:var(--radius-md);font-size:var(--text-sm);color:#fff;cursor:pointer;transition:all var(--transition-fast);border:none;padding:8px 14px;font-weight:500}.task-modal__submit-btn:hover{background:var(--accent-1)}.task-modal__complete-btn{border-radius:var(--radius-md);font-size:var(--text-sm);color:#fff;cursor:pointer;transition:all var(--transition-fast);background:#22c55e;border:none;align-items:center;gap:6px;padding:8px 14px;font-weight:500;display:flex}.task-modal__complete-btn:hover{background:#16a34a}.weekly-task{background:var(--bg-2);border-radius:var(--radius-sm);cursor:grab;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;flex-direction:column;gap:2px;padding:4px 6px;display:flex}.weekly-task:hover{background:var(--bg-3)}.weekly-task:active{cursor:grabbing}.weekly-task.is-dragging{opacity:.3;border:1px dashed var(--stroke-2);background:var(--bg-2);transform:scale(.98)}.drag-overlay-task{gap:var(--space-2);padding:var(--space-2)var(--space-3);background:var(--bg-2);border:1px solid var(--accent-0);border-radius:var(--radius-md);box-shadow:0 8px 24px #0006,0 0 0 1px var(--accent-0);cursor:grabbing;min-width:180px;max-width:280px;animation:.15s ease-out dragPickup;display:flex;transform:rotate(2deg)}@keyframes dragPickup{0%{transform:rotate(0)scale(1);box-shadow:0 2px 4px #0003}to{box-shadow:0 8px 24px #0006,0 0 0 1px var(--accent-0);transform:rotate(2deg)scale(1.02)}}.drag-overlay-task__color{border-radius:var(--radius-full);flex-shrink:0;width:4px;min-height:100%}.drag-overlay-task__content{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.drag-overlay-task__title{font-size:var(--text-sm);color:var(--text-0);text-overflow:ellipsis;white-space:nowrap;font-weight:500;line-height:1.3;overflow:hidden}.drag-overlay-task__time{font-size:var(--text-xs);color:var(--text-2)}.drag-overlay-task__priority{border-radius:var(--radius-sm);text-transform:capitalize;width:fit-content;padding:2px 6px;font-size:10px;font-weight:600}.drag-overlay-task__priority.priority-high{background:var(--danger-muted);color:var(--danger)}.drag-overlay-task__priority.priority-medium{background:var(--warning-muted);color:var(--warning)}.drag-overlay-task__priority.priority-low{background:var(--info-muted);color:var(--info)}.weekly-task.completed{opacity:.5}.weekly-task.completed .weekly-task__title{color:var(--text-3);text-decoration:line-through}.tasks-page{padding:var(--space-6);max-width:900px;margin:0 auto}.tasks-page__header{margin-bottom:var(--space-6);justify-content:space-between;align-items:center;display:flex}.tasks-page__title{font-size:var(--text-2xl);color:var(--text-0);font-weight:600}.tasks-page__filters{align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--stroke-0);display:flex}.tasks-page__filter-btn{border:1px solid var(--stroke-0);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);background:0 0;align-items:center;gap:6px;padding:6px 12px;display:inline-flex}.tasks-page__filter-btn:hover,.tasks-page__filter-btn.is-active{background:var(--bg-2);border-color:var(--stroke-1);color:var(--text-0)}.tasks-page__list{gap:var(--space-2);flex-direction:column;display:flex}.tasks-page__empty{text-align:center;padding:var(--space-8);color:var(--text-2)}.task-list-item{align-items:center;gap:var(--space-3);padding:var(--space-3)var(--space-4);background:var(--bg-1);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);display:flex}.task-list-item:hover{background:var(--bg-2)}.task-list-item__complete{border:1.5px solid var(--stroke-2);cursor:pointer;width:20px;height:20px;transition:all var(--transition-fast);background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;display:flex}.task-list-item__complete svg{opacity:0;color:var(--text-2);width:12px;height:12px;transition:opacity var(--transition-fast)}.task-list-item__complete:hover{border-color:var(--success)}.task-list-item__complete:hover svg{opacity:.5;color:var(--success)}.task-list-item__complete.is-checked{background:var(--success);border-color:var(--success)}.task-list-item__complete.is-checked svg{opacity:1;color:#fff}.task-list-item__color{border-radius:2px;flex-shrink:0;width:4px;height:24px}.task-list-item__content{flex:1;min-width:0}.task-list-item__title{font-size:var(--text-sm);color:var(--text-0);font-weight:500}.task-list-item.is-completed .task-list-item__title{color:var(--text-2);text-decoration:line-through}.task-list-item__subtitle{font-size:var(--text-xs);color:var(--text-2);margin-top:2px}.task-list-item__meta{align-items:center;gap:var(--space-2);display:flex}.task-list-item__date{font-size:var(--text-xs);color:var(--text-2)}.task-list-item__priority{text-transform:uppercase;border-radius:3px;padding:2px 6px;font-size:10px;font-weight:600}.task-list-item__priority.priority-high{color:var(--priority-high);background:#ef444426}.task-list-item__priority.priority-medium{color:var(--priority-medium);background:#f59e0b26}.task-list-item__priority.priority-low{color:var(--priority-low);background:#3b82f626}.task-list-item__select{width:16px;height:16px;accent-color:var(--accent-0);cursor:pointer;opacity:0;transition:opacity var(--transition-fast);flex-shrink:0}.task-list-item:hover .task-list-item__select,.task-list-item.is-selected .task-list-item__select,.task-list-item__select:checked{opacity:1}.task-list-item.is-selected{background:var(--bg-2)}.bulk-action-bar{bottom:var(--space-6);align-items:center;gap:var(--space-3);padding:var(--space-3)var(--space-4);background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);z-index:100;animation:.2s ease-out bulkBarSlideUp;display:flex;position:fixed;left:50%;transform:translate(-50%)}@keyframes bulkBarSlideUp{0%{opacity:0;transform:translate(-50%)translateY(20px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.bulk-action-bar__left{align-items:center;gap:var(--space-2);padding-right:var(--space-3);border-right:1px solid var(--stroke-0);display:flex}.bulk-action-bar__count{font-size:var(--text-sm);color:var(--text-0);white-space:nowrap;font-weight:600}.bulk-action-bar__select-all{font-size:var(--text-xs);color:var(--primary);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:0}.bulk-action-bar__select-all:hover{text-decoration:underline}.bulk-action-bar__actions{align-items:center;gap:var(--space-2);display:flex}.bulk-action-bar__close{border-radius:var(--radius-md);width:32px;height:32px;color:var(--text-2);cursor:pointer;margin-left:var(--space-1);transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.bulk-action-bar__close:hover{background:var(--bg-2);color:var(--text-0)}.bulk-action-btn{background:var(--bg-2);border:1px solid var(--stroke-0);border-radius:var(--radius-md);font-size:var(--text-xs);color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;align-items:center;gap:6px;padding:6px 12px;font-weight:500;display:inline-flex}.bulk-action-btn:hover{background:var(--bg-3);border-color:var(--stroke-1);color:var(--text-0)}.bulk-action-btn--danger{color:var(--danger)}.bulk-action-btn--danger:hover{border-color:var(--danger);background:#ef44441a}.bulk-action-dropdown{position:relative}.bulk-action-dropdown__menu{background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);min-width:140px;box-shadow:var(--shadow-lg);padding:var(--space-1);z-index:10;animation:.15s ease-out dropdownFadeIn;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.bulk-action-dropdown__menu--input{align-items:center;gap:var(--space-2);padding:var(--space-2);min-width:180px;display:flex}.bulk-action-dropdown__item{width:100%;padding:var(--space-2)var(--space-3);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-1);text-align:left;cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;display:block}.bulk-action-dropdown__item:hover{background:var(--bg-2);color:var(--text-0)}.bulk-action-dropdown__input{padding:var(--space-2);background:var(--bg-0);border:1px solid var(--stroke-0);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-0);outline:none;flex:1}.bulk-action-dropdown__input:focus{border-color:var(--primary)}.bulk-action-dropdown__apply{padding:var(--space-2)var(--space-3);background:var(--primary);border-radius:var(--radius-md);font-size:var(--text-xs);color:#fff;cursor:pointer;transition:all var(--transition-fast);border:none;font-weight:500}.bulk-action-dropdown__apply:hover{background:var(--primary-hover)}.notes-page{height:calc(100vh - var(--header-height,0px));display:flex;overflow:hidden}.notes-sidebar{background:var(--bg-0);border-right:1px solid var(--stroke-0);flex-direction:column;width:240px;min-width:240px;display:flex;overflow:hidden}.notes-content{padding:var(--space-4);flex:1;overflow-y:auto}.notes-header{align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.notes-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.note-card{background:var(--bg-1);border:1px solid var(--stroke-0);border-radius:var(--radius-lg);padding:var(--space-4);gap:var(--space-3);transition:all var(--transition-fast);flex-direction:column;display:flex}.note-card:hover{border-color:var(--stroke-1);background:var(--bg-2)}.note-card-header{justify-content:space-between;align-items:flex-start;gap:var(--space-2);display:flex}.note-card-title{font-size:var(--text-md);color:var(--text-0);margin:0;font-weight:600;line-height:1.3}.note-card-content{font-size:var(--text-sm);color:var(--text-1);flex:1;line-height:1.5}.note-card-footer{padding-top:var(--space-3);border-top:1px solid var(--stroke-0);justify-content:space-between;align-items:center;display:flex}.note-card-date{font-size:var(--text-xs);color:var(--text-2)}.note-card-actions{align-items:center;gap:var(--space-1);opacity:0;transition:opacity var(--transition-fast);display:flex}.note-card:hover .note-card-actions{opacity:1}.notes-folders{padding:var(--space-2);flex:1;overflow-y:auto}.notes-folder-item{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);border-radius:var(--radius-md);color:var(--text-1);cursor:pointer;text-align:left;width:100%;font-size:var(--text-sm);transition:all var(--transition-fast);background:0 0;border:none;display:flex}.notes-folder-item:hover{background:var(--bg-2);color:var(--text-0)}.notes-folder-item.active{background:var(--accent-2);color:var(--text-0)}.notes-folder-item svg{flex-shrink:0}.notes-folder-item span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.notes-folder-count{font-size:var(--text-xs);color:var(--text-2);background:var(--bg-3);border-radius:var(--radius-full);padding:2px 6px}.notes-folders-header{padding:var(--space-3)var(--space-3)var(--space-2);font-size:var(--text-xs);color:var(--text-2);text-transform:uppercase;letter-spacing:.5px;justify-content:space-between;align-items:center;font-weight:600;display:flex}.notes-folder-wrapper{align-items:center;display:flex;position:relative}.notes-folder-wrapper .notes-folder-item{flex:1}.notes-folder-actions{align-items:center;gap:var(--space-1);padding-right:var(--space-2);display:none}.notes-folder-wrapper:hover .notes-folder-actions{display:flex}.starred{color:var(--warning)}.notes-page-v2{height:calc(100vh - var(--header-height,0px));display:flex;overflow:hidden}.notes-sidebar-v2{background:var(--bg-0);border-right:1px solid var(--stroke-0);flex-direction:column;width:220px;min-width:220px;display:flex}.notes-sidebar-v2__header{padding:var(--space-3)}.notes-new-btn{justify-content:center;align-items:center;gap:var(--space-2);width:100%;padding:10px var(--space-3);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-md);color:var(--text-0);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast);font-weight:500;display:flex}.notes-new-btn:hover{background:var(--bg-3);border-color:var(--stroke-2)}.notes-sidebar-view-toggle{padding:0 var(--space-3)var(--space-2);background:var(--bg-2);border-radius:var(--radius-md);margin:0 var(--space-3)var(--space-2);gap:2px;display:flex}.notes-sidebar-view-btn{border-radius:var(--radius-sm);color:var(--text-2);font-size:var(--text-xs);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;flex:1;padding:6px 8px;font-weight:500}.notes-sidebar-view-btn:hover{color:var(--text-1);background:var(--bg-3)}.notes-sidebar-view-btn.active{background:var(--bg-0);color:var(--text-0);box-shadow:0 1px 2px #0000001a}.notes-nav-cache-badge{background:var(--accent-subtle);width:16px;height:16px;color:var(--accent);border-radius:50%;justify-content:center;align-items:center;margin-left:auto;font-size:9px;font-weight:600;display:inline-flex}.notes-nav{padding:var(--space-2);flex:1;overflow-y:auto}.notes-nav-item{align-items:center;gap:var(--space-2);border-radius:var(--radius-md);width:100%;color:var(--text-1);font-size:var(--text-sm);cursor:pointer;text-align:left;transition:all var(--transition-fast);background:0 0;border:none;padding:8px 10px;display:flex}.notes-nav-item:hover{background:var(--bg-2);color:var(--text-0)}.notes-nav-item.active{background:var(--accent-2);color:var(--text-0)}.notes-nav-item svg{flex-shrink:0}.notes-nav-item span{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.notes-nav-count{font-size:var(--text-xs);color:var(--text-2);background:var(--bg-3);border-radius:var(--radius-full);padding:2px 6px}.notes-nav-divider{background:var(--stroke-0);height:1px;margin:var(--space-2)var(--space-2)}.notes-nav-section-header{align-items:center;gap:var(--space-1);width:100%;color:var(--text-2);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.5px;cursor:pointer;background:0 0;border:none;padding:8px 10px;font-weight:600;display:flex}.notes-nav-section-header span{text-align:left;flex:1}.notes-add-folder-btn{border-radius:var(--radius-sm);width:20px;height:20px;color:var(--text-2);cursor:pointer;opacity:0;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.notes-nav-section-header:hover .notes-add-folder-btn{opacity:1}.notes-add-folder-btn:hover{background:var(--bg-2);color:var(--text-0)}.notes-folders-list{padding-left:var(--space-2)}.notes-folder-row{align-items:center;display:flex}.notes-folder-row .notes-nav-item{flex:1}.notes-folder-row .notes-folder-actions{opacity:0;transition:opacity var(--transition-fast)}.notes-folder-row:hover .notes-folder-actions{opacity:1}.notes-folders-empty{padding:var(--space-3)var(--space-4);font-size:var(--text-xs);color:var(--text-2)}.notes-main-v2{flex-direction:column;flex:1;display:flex;overflow:hidden}.notes-main-header{align-items:center;gap:var(--space-3);padding:var(--space-3)var(--space-4);border-bottom:1px solid var(--stroke-0);display:flex}.notes-search-wrapper{flex:1;max-width:320px;position:relative}.notes-search-icon{color:var(--text-2);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.notes-search-input{background:var(--bg-1);border:1px solid var(--stroke-0);border-radius:var(--radius-md);width:100%;color:var(--text-0);font-size:var(--text-sm);transition:all var(--transition-fast);outline:none;padding:8px 12px 8px 36px}.notes-search-input:focus{border-color:var(--stroke-2);background:var(--bg-2)}.notes-search-input::placeholder{color:var(--text-2)}.notes-header-actions{align-items:center;gap:var(--space-2);display:flex}.notes-sort-select{align-items:center;gap:var(--space-2);background:var(--bg-1);border:1px solid var(--stroke-0);border-radius:var(--radius-md);color:var(--text-1);padding:6px 10px;display:flex}.notes-sort-select select{color:var(--text-1);font-size:var(--text-xs);cursor:pointer;background:0 0;border:none;outline:none}.notes-view-toggle{background:var(--bg-1);border:1px solid var(--stroke-0);border-radius:var(--radius-md);display:flex;overflow:hidden}.notes-view-btn{width:32px;height:32px;color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.notes-view-btn:hover{color:var(--text-1)}.notes-view-btn.active{background:var(--bg-2);color:var(--text-0)}.notes-empty-state{justify-content:center;align-items:center;gap:var(--space-3);color:var(--text-2);padding:var(--space-8);flex-direction:column;flex:1;display:flex}.notes-empty-state svg{color:var(--text-2);opacity:.5}.notes-empty-state h3{font-size:var(--text-md);color:var(--text-1);margin:0;font-weight:600}.notes-empty-state p{font-size:var(--text-sm);margin:0}.notes-grid-v2{padding:var(--space-4);gap:var(--space-3);flex:1;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));align-content:start;display:grid;overflow-y:auto}.note-card-v2{background:var(--bg-1);border:1px solid var(--stroke-0);border-radius:var(--radius-lg);padding:var(--space-4);cursor:pointer;transition:all var(--transition-fast);flex-direction:column;min-height:140px;display:flex;position:relative}.note-card-v2:hover{border-color:var(--stroke-1);background:var(--bg-2)}.note-card-v2__content{flex:1}.note-card-v2__title{font-size:var(--text-sm);color:var(--text-0);margin:0 0 var(--space-2)0;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.note-card-v2__preview{font-size:var(--text-xs);color:var(--text-2);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;line-height:1.5;display:-webkit-box;overflow:hidden}.note-card-v2__footer{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--stroke-0);justify-content:space-between;align-items:center;display:flex}.note-card-v2__date{font-size:var(--text-xs);color:var(--text-2)}.note-card-v2__actions{gap:var(--space-1);opacity:0;transition:opacity var(--transition-fast);display:flex}.note-card-v2:hover .note-card-v2__actions{opacity:1}.btn-icon-sm{border-radius:var(--radius-sm);width:26px;height:26px;color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.btn-icon-sm:hover{background:var(--bg-3);color:var(--text-0)}.btn-icon-sm.starred{color:var(--warning)}.note-card-menu{top:100%;right:var(--space-2);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:100;min-width:120px;margin-top:4px;position:absolute;overflow:hidden}.note-card-menu button{width:100%;color:var(--text-1);font-size:var(--text-sm);text-align:left;cursor:pointer;transition:background var(--transition-fast);background:0 0;border:none;padding:8px 12px;display:block}.note-card-menu button:hover{background:var(--bg-3);color:var(--text-0)}.note-card-menu button.danger{color:var(--danger)}.note-card-menu button.danger:hover{background:#ef44441a}.notes-menu-overlay{z-index:50;position:fixed;inset:0}.notes-list-v2{padding:var(--space-4);flex:1;overflow-y:auto}.notes-list-group{margin-bottom:var(--space-4)}.notes-list-group-header{font-size:var(--text-xs);color:var(--text-2);text-transform:uppercase;letter-spacing:.5px;padding:var(--space-2)0;margin-bottom:var(--space-2);border-bottom:1px solid var(--stroke-0);font-weight:600}.note-list-item{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3)var(--space-2);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast);display:flex}.note-list-item:hover{background:var(--bg-1)}.note-list-item__main{flex:1;min-width:0}.note-list-item__title{font-size:var(--text-sm);color:var(--text-0);white-space:nowrap;text-overflow:ellipsis;margin:0;font-weight:500;overflow:hidden}.note-list-item__preview{font-size:var(--text-xs);color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;margin:4px 0 0;overflow:hidden}.note-list-item__meta{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.note-list-item__date{font-size:var(--text-xs);color:var(--text-2)}.folder-colors{gap:var(--space-2);display:flex}.folder-color-btn{border-radius:var(--radius-full);cursor:pointer;width:28px;height:28px;transition:all var(--transition-fast);border:2px solid #0000}.folder-color-btn:hover{transform:scale(1.1)}.folder-color-btn.active{border-color:var(--text-0);box-shadow:0 0 0 2px var(--bg-0)}@media(max-width:768px){.notes-sidebar-v2{display:none}.notes-main-header{flex-wrap:wrap}.notes-search-wrapper{order:2;width:100%;max-width:100%}.notes-header-actions{order:1;margin-left:auto}.notes-grid-v2{grid-template-columns:1fr}}.dashboard-page{padding:var(--space-4);max-width:1200px;margin:0 auto}.dashboard-header{margin-bottom:var(--space-4);justify-content:space-between;align-items:flex-start;gap:var(--space-4);flex-wrap:wrap;display:flex}.dashboard-greeting h1{font-size:var(--text-xl);color:var(--text-0);margin:0 0 var(--space-1)0;font-weight:600}.dashboard-date{font-size:var(--text-sm);color:var(--text-2)}.dashboard-header-right{align-items:center;gap:var(--space-3);display:flex}.dashboard-time{font-size:var(--text-xl);color:var(--text-1);font-weight:500}.dashboard-edit-btn{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);background:var(--bg-2);border:1px solid var(--stroke-0);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);font-weight:500;display:flex}.dashboard-edit-btn:hover{background:var(--bg-3);color:var(--text-0)}.dashboard-edit-btn.is-active{background:var(--accent-0);border-color:var(--accent-0);color:#fff}.dashboard-edit-bar{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3);background:var(--bg-1);border:1px solid var(--stroke-0);border-radius:var(--radius-md);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.edit-bar-left{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.edit-bar-label{font-size:var(--text-sm);color:var(--text-2)}.edit-bar-widgets{gap:var(--space-2);flex-wrap:wrap;display:flex}.add-widget-btn{align-items:center;gap:var(--space-1);padding:var(--space-1)var(--space-2);background:var(--bg-2);border:1px solid var(--stroke-0);border-radius:var(--radius-sm);font-size:var(--text-xs);color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);display:flex}.add-widget-btn:hover{background:var(--bg-3);border-color:var(--stroke-1);color:var(--text-0)}.reset-widgets-btn{padding:var(--space-2)var(--space-3);border:1px solid var(--stroke-1);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);background:0 0}.reset-widgets-btn:hover{background:var(--bg-2);color:var(--text-1)}.dashboard-grid{gap:var(--space-3);grid-template-columns:repeat(4,1fr);display:grid}.dashboard-widget{background:var(--bg-1);border:1px solid var(--stroke-0);border-radius:var(--radius-lg);padding:var(--space-3);transition:all var(--transition-fast);flex-direction:column;display:flex}.dashboard-widget.is-editing{border-color:var(--accent-0);border-style:dashed}.dashboard-widget.size-small{grid-column:span 1}.dashboard-widget.size-medium{grid-column:span 2}.dashboard-widget.size-large{grid-column:span 4}.widget-header{margin-bottom:var(--space-2);justify-content:space-between;align-items:center;display:flex}.widget-title{color:var(--text-2);text-transform:uppercase;letter-spacing:.03em;margin:0;font-size:11px;font-weight:600}.widget-controls{gap:var(--space-1);display:flex}.widget-size-btn,.widget-remove-btn{background:var(--bg-2);border-radius:var(--radius-sm);width:24px;height:24px;color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);border:none;justify-content:center;align-items:center;display:flex}.widget-size-btn:hover{background:var(--bg-3);color:var(--text-0)}.widget-remove-btn:hover{background:var(--danger-muted);color:var(--danger)}.widget-body{flex-direction:column;flex:1;display:flex}.widget-loading,.widget-empty{padding:var(--space-4);color:var(--text-2);font-size:var(--text-sm);justify-content:center;align-items:center;display:flex}.weather-widget__content{align-items:center;gap:var(--space-3);display:flex}.weather-icon{color:var(--text-1)}.weather-temp{font-size:var(--text-xl);color:var(--text-0);font-weight:600}.weather-desc{font-size:var(--text-sm);color:var(--text-1)}.weather-location{font-size:var(--text-xs);color:var(--text-2)}.stats-widget__content{align-items:center;gap:var(--space-3);display:flex}.stats-ring{flex-shrink:0;width:70px;height:70px;position:relative}.stats-ring svg{width:100%;height:100%}.stats-center{justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.stats-percent{font-size:var(--text-md);color:var(--text-0);font-weight:600}.stats-info{flex:1}.stats-label{font-size:var(--text-sm);color:var(--text-0);font-weight:500}.stats-detail{font-size:var(--text-xs);color:var(--text-1)}.stats-week{font-size:var(--text-xs);color:var(--text-2);margin-top:var(--space-1)}.quick-add-widget__content{flex-direction:column;display:flex}.quick-add-input{gap:var(--space-2);display:flex}.quick-add-input input{padding:var(--space-2)var(--space-3);background:var(--bg-2);border:1px solid var(--stroke-0);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-0);outline:none;flex:1}.quick-add-input input:focus{border-color:var(--accent-0)}.quick-add-btn{background:var(--accent-0);border-radius:var(--radius-md);color:#fff;cursor:pointer;width:36px;height:36px;transition:all var(--transition-fast);border:none;justify-content:center;align-items:center;display:flex}.quick-add-btn:hover:not(:disabled){background:var(--accent-0)}@supports (color:color-mix(in lab,red,red)){.quick-add-btn:hover:not(:disabled){background:color-mix(in srgb,var(--accent-0)85%,black)}}.quick-add-btn:disabled{opacity:.5;cursor:not-allowed}.upcoming-widget__content{flex-direction:column;display:flex}.upcoming-list{gap:var(--space-1);flex-direction:column;display:flex}.upcoming-task{align-items:center;gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius-md);transition:background var(--transition-fast);display:flex}.upcoming-task:hover{background:var(--bg-2)}.task-checkbox{border:1.5px solid var(--stroke-2);cursor:pointer;width:18px;height:18px;color:var(--text-3);transition:all var(--transition-fast);background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.task-checkbox:hover{border-color:var(--accent-0);color:var(--accent-0)}.upcoming-task-info{flex:1;min-width:0}.upcoming-task-text{font-size:var(--text-sm);color:var(--text-0);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.upcoming-task-date{color:var(--text-2);font-size:10px}.upcoming-task-color{border-radius:2px;flex-shrink:0;width:3px;height:16px}.focus-timer-widget__content{align-items:center;gap:var(--space-2);padding:var(--space-2)0;flex-direction:column;display:flex}.timer-display{font-size:var(--text-2xl);color:var(--text-0);font-family:monospace;font-weight:600}.timer-display.focus{color:var(--success)}.timer-display.break{color:var(--info)}.timer-label{font-size:var(--text-xs);color:var(--text-2)}.timer-controls{gap:var(--space-2);margin-top:var(--space-2);display:flex}.timer-btn{padding:var(--space-1)var(--space-3);background:var(--accent-0);border-radius:var(--radius-sm);font-size:var(--text-xs);color:#fff;cursor:pointer;transition:all var(--transition-fast);border:none;font-weight:500}.timer-btn:hover{background:var(--accent-0)}@supports (color:color-mix(in lab,red,red)){.timer-btn:hover{background:color-mix(in srgb,var(--accent-0)85%,black)}}.timer-btn--secondary{background:var(--bg-3);color:var(--text-1)}.timer-btn--secondary:hover{background:var(--bg-4,var(--bg-3));color:var(--text-0)}.streak-widget__content{justify-content:center;align-items:center;gap:var(--space-1);padding:var(--space-2)0;flex-direction:column;display:flex}.streak-icon{color:#f97316}.streak-count{font-size:var(--text-2xl);color:var(--text-0);font-weight:700}.streak-label{font-size:var(--text-xs);color:var(--text-2)}.labels-widget__content{flex-direction:column;display:flex}.label-item{align-items:center;gap:var(--space-2);padding:var(--space-1);font-size:var(--text-xs);display:flex}.label-item svg{color:var(--text-2)}.label-name{color:var(--text-1);flex:1}.label-count{color:var(--text-2);font-weight:500}.week-overview-widget__content{padding:var(--space-2)0;justify-content:center;align-items:flex-end;display:flex}.week-bars{align-items:flex-end;gap:var(--space-2);height:60px;display:flex}.week-bar-container{align-items:center;gap:var(--space-1);flex-direction:column;display:flex}.week-bar-container.is-today .week-bar-label{color:var(--accent-0);font-weight:600}.week-bar{background:var(--bg-3);border-radius:var(--radius-sm);align-items:flex-end;width:24px;height:40px;display:flex;overflow:hidden}.week-bar-fill{background:var(--success);border-radius:var(--radius-sm);width:100%;transition:height .3s}.week-bar-label{color:var(--text-2);text-transform:uppercase;font-size:9px}@media(max-width:1024px){.dashboard-grid{grid-template-columns:repeat(2,1fr)}.dashboard-widget.size-large{grid-column:span 2}}@media(max-width:640px){.dashboard-page{padding:var(--space-3)}.dashboard-grid{grid-template-columns:1fr}.dashboard-widget.size-small,.dashboard-widget.size-medium,.dashboard-widget.size-large{grid-column:span 1}.dashboard-header{flex-direction:column}.dashboard-header-right{justify-content:space-between;width:100%}.dashboard-edit-bar{flex-direction:column;align-items:flex-start}}.settings-page{padding:var(--space-6);max-width:700px;margin:0 auto}.settings-section{margin-bottom:var(--space-6)}.settings-section__header{align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);color:var(--text-1);display:flex}.settings-section__title{font-size:var(--text-md);color:var(--text-0);margin:0;font-weight:600}.settings-card{background:var(--bg-1);border:1px solid var(--stroke-0);border-radius:var(--radius-lg);overflow:hidden}.settings-row{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4);border-bottom:1px solid var(--stroke-0);display:flex}.settings-row:last-child{border-bottom:none}.settings-row__info{flex:1;min-width:0}.settings-row__label{font-size:var(--text-sm);color:var(--text-0);font-weight:500}.settings-row__description{font-size:var(--text-xs);color:var(--text-2);margin-top:2px}.settings-row__content{flex-shrink:0}.settings-row--danger{border-top:1px solid var(--danger-muted);margin-top:var(--space-2);padding-top:var(--space-4)}.settings-row--danger .settings-row__label{color:var(--danger)}.delete-confirm-modal{text-align:center;padding:var(--space-6)}.storage-usage{align-items:center;gap:var(--space-3);width:100%;display:flex}.storage-bar{background:var(--bg-2);border-radius:var(--radius-full);flex:1;height:8px;overflow:hidden}.storage-bar__fill{background:var(--accent);border-radius:var(--radius-full);height:100%;transition:width var(--transition-base)}.storage-bar__fill--warning{background:var(--warning)}.storage-bar__fill--danger{background:var(--danger)}.storage-bar__label{font-size:var(--text-sm);color:var(--text-2);text-align:right;min-width:40px}.storage-warning{align-items:center;gap:var(--space-2);padding:var(--space-3);background:var(--danger-muted);border:1px solid var(--danger);border-radius:var(--radius-md);color:var(--danger);font-size:var(--text-sm);display:flex}.storage-limit-modal{max-width:420px}.storage-limit-modal__icon{width:80px;height:80px;margin:0 auto var(--space-4);background:var(--danger-muted);border-radius:var(--radius-full);color:var(--danger);justify-content:center;align-items:center;display:flex}.storage-limit-modal__message{text-align:center;color:var(--text-1);font-size:var(--text-md);margin-bottom:var(--space-4);line-height:1.5}.storage-limit-modal__usage{margin-bottom:var(--space-4)}.storage-limit-modal__tips{background:var(--bg-1);border-radius:var(--radius-md);padding:var(--space-4)}.storage-limit-modal__tips h4{font-size:var(--text-sm);color:var(--text-0);margin-bottom:var(--space-2);font-weight:600}.storage-limit-modal__tips ul{padding-left:var(--space-4);font-size:var(--text-sm);color:var(--text-1);margin:0}.storage-limit-modal__tips li{margin-bottom:var(--space-1)}.calendar-list{gap:var(--space-1);background:var(--bg-2);border-radius:var(--radius-md);padding:var(--space-2);flex-direction:column;display:flex}.calendar-list__item{align-items:center;display:flex}.calendar-list__label{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast);display:flex}.calendar-list__label:hover{background:var(--bg-hover)}.calendar-list__label input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent);cursor:pointer}.calendar-list__color{border-radius:var(--radius-sm);flex-shrink:0;width:12px;height:12px}.calendar-list__name{font-size:var(--text-sm);color:var(--text-1);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.calendar-list__primary{font-size:var(--text-xs);color:var(--text-2)}.delete-confirm-modal__icon{width:64px;height:64px;margin:0 auto var(--space-4);background:var(--danger-muted);border-radius:var(--radius-full);color:var(--danger);justify-content:center;align-items:center;display:flex}.delete-confirm-modal__title{font-size:var(--text-xl);color:var(--text-0);margin-bottom:var(--space-3);font-weight:600}.delete-confirm-modal__text{font-size:var(--text-sm);color:var(--text-1);margin-bottom:var(--space-5);line-height:1.5}.delete-confirm-modal__input{margin-bottom:var(--space-5)}.delete-confirm-modal__input label{font-size:var(--text-sm);color:var(--text-1);margin-bottom:var(--space-2);display:block}.delete-confirm-modal__input input{width:100%;padding:var(--space-3);background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-md);color:var(--text-0);font-size:var(--text-sm);text-align:center}.delete-confirm-modal__input input:focus{border-color:var(--danger);outline:none}.delete-confirm-modal__actions{gap:var(--space-3);justify-content:center;display:flex}.delete-confirm-modal__actions .btn{flex:1;max-width:140px}.tool-icon{background:var(--accent-2);border-radius:var(--radius-md);width:48px;height:48px;color:var(--accent-1);justify-content:center;align-items:center;display:flex}.tool-name{font-size:var(--text-sm);color:var(--text-0);font-weight:500}.tool-description{font-size:var(--text-xs);color:var(--text-2)}.tool-modal{background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);min-width:320px;max-width:400px}.tool-header{padding:var(--space-3)var(--space-4);border-bottom:1px solid var(--stroke-0);justify-content:space-between;align-items:center;display:flex}.tool-header h3{font-size:var(--text-md);color:var(--text-0);margin:0;font-weight:600}.calculator{padding:var(--space-4)}.calculator-display{background:var(--bg-2);padding:var(--space-4);text-align:right;font-size:var(--text-2xl);color:var(--text-0);border-radius:var(--radius-md);margin-bottom:var(--space-3);font-weight:500;font-family:var(--font-mono)}.calculator-buttons{gap:var(--space-2);grid-template-columns:repeat(4,1fr);display:grid}.calc-btn{padding:var(--space-3);background:var(--bg-2);border-radius:var(--radius-md);font-size:var(--text-lg);color:var(--text-0);cursor:pointer;transition:background var(--transition-fast);border:none;font-weight:500}.calc-btn:hover{background:var(--bg-3)}.calc-btn-clear{color:var(--danger)}.calc-btn-op{background:var(--accent-2);color:var(--accent-1)}.calc-btn-op:hover,.calc-btn-eq{background:var(--accent-0);color:#fff}.calc-btn-eq:hover{background:var(--accent-1)}.calc-btn-zero{grid-column:span 2}.timer,.stopwatch{padding:var(--space-4);text-align:center}.timer-display,.stopwatch-display{font-size:48px;font-weight:600;font-family:var(--font-mono);color:var(--text-0);margin-bottom:var(--space-4)}.timer-input{gap:var(--space-2);margin-bottom:var(--space-3);display:flex}.timer-input input{flex:1}.timer-controls,.stopwatch-controls{gap:var(--space-2);justify-content:center;display:flex}.password-gen{padding:var(--space-4)}.password-display{gap:var(--space-2);margin-bottom:var(--space-4);display:flex}.password-display input{font-family:var(--font-mono);flex:1}.password-options{gap:var(--space-3);margin-bottom:var(--space-4);flex-direction:column;display:flex}.checkbox-label{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-1);cursor:pointer;display:flex}.checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent-0)}.sync-board{flex-direction:column;max-width:640px;height:100%;margin:0 auto;padding:16px 20px;display:flex;position:relative}.sync-board__drag-overlay{background:rgba(var(--accent-rgb,99,102,241),.08);border:2px dashed var(--accent-0);z-index:100;border-radius:12px;justify-content:center;align-items:center;animation:.15s sync-fade-in;display:flex;position:absolute;inset:0}.sync-board__drag-content{color:var(--accent-0);flex-direction:column;align-items:center;gap:8px;font-size:13px;font-weight:500;display:flex}.sync-board__header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.sync-board__title-group{align-items:center;gap:12px;display:flex}.sync-board__title{color:var(--text-0);margin:0;font-size:15px;font-weight:600}.sync-board__status{color:var(--text-2);background:var(--bg-1);border-radius:100px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;display:flex}.sync-board__status-dot{background:var(--green,#22c55e);border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite sync-pulse}.sync-board__actions{align-items:center;gap:6px;display:flex}.sync-board__btn{cursor:pointer;border:none;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:500;transition:all .15s;display:inline-flex}.sync-board__btn--ghost{color:var(--text-2);background:0 0}.sync-board__btn--ghost:hover{background:var(--bg-1);color:var(--text-1)}.sync-board__btn--danger:hover{color:#ef4444;background:#ef44441a}.sync-board__input-card{background:var(--bg-1);border:1px solid var(--stroke-0);border-radius:10px;margin-bottom:12px;padding:4px;transition:border-color .15s,box-shadow .15s}.sync-board__input-card:focus-within{border-color:var(--accent-0);box-shadow:0 0 0 3px rgba(var(--accent-rgb,99,102,241),.1)}.sync-board__input-row{align-items:flex-end;gap:4px;display:flex}.sync-board__input{color:var(--text-0);resize:none;background:0 0;border:none;flex:1;min-height:36px;max-height:120px;padding:8px;font-size:13px;line-height:1.5}.sync-board__input::placeholder{color:var(--text-3)}.sync-board__input:focus{outline:none}.sync-board__input-action{width:32px;height:32px;color:var(--text-2);cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;transition:all .15s;display:flex}.sync-board__input-action:hover{background:var(--bg-2);color:var(--text-1)}.sync-board__input-action:disabled{opacity:.5;cursor:not-allowed}.sync-board__input-submit{background:var(--bg-2);width:32px;height:32px;color:var(--text-3);cursor:not-allowed;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;transition:all .15s;display:flex}.sync-board__input-submit--active{background:var(--accent-0);color:#fff;cursor:pointer}.sync-board__input-submit--active:hover{background:var(--accent-1)}.sync-board__spinner{animation:1s linear infinite sync-spin}.sync-board__quick-actions{gap:8px;margin-bottom:20px;display:flex}.sync-board__quick-btn{color:var(--text-2);background:var(--bg-1);border:1px solid var(--stroke-0);cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:500;transition:all .15s;display:inline-flex}.sync-board__quick-btn:hover{background:var(--bg-2);border-color:var(--stroke-1);color:var(--text-1)}.sync-board__quick-btn:disabled{opacity:.5;cursor:not-allowed}.sync-board__items{flex-direction:column;flex:1;gap:2px;display:flex;overflow-y:auto}.sync-board__empty{color:var(--text-3);text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:48px 24px;display:flex}.sync-board__empty svg{opacity:.4;margin-bottom:12px}.sync-board__empty p{color:var(--text-2);margin:0 0 4px;font-size:13px;font-weight:500}.sync-board__empty span{font-size:12px}.sync-board__item{background:var(--bg-0);border-radius:8px;align-items:flex-start;gap:10px;padding:10px 12px;transition:background .15s;animation:.2s sync-slide-in;display:flex}.sync-board__item:hover{background:var(--bg-1)}.sync-board__item-icon{background:var(--bg-1);width:28px;height:28px;color:var(--text-2);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.sync-board__item:hover .sync-board__item-icon{background:var(--bg-2)}.sync-board__item-content{flex:1;min-width:0;padding-top:4px}.sync-board__item-text{color:var(--text-1);white-space:pre-wrap;word-break:break-word;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:13px;line-height:1.5;display:-webkit-box;overflow:hidden}.sync-board__item-file{align-items:center;gap:10px;display:flex}.sync-board__item-thumb{object-fit:cover;background:var(--bg-2);border-radius:6px;width:40px;height:40px}.sync-board__item-file-info{flex-direction:column;gap:2px;min-width:0;display:flex}.sync-board__item-filename{color:var(--text-1);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.sync-board__item-filesize{color:var(--text-3);font-size:11px}.sync-board__item-time{color:var(--text-3);flex-shrink:0;padding-top:6px;font-size:11px}.sync-board__item-actions{opacity:0;flex-shrink:0;align-items:center;gap:2px;transition:opacity .15s;display:flex}.sync-board__item:hover .sync-board__item-actions{opacity:1}.sync-board__item-btn{width:28px;height:28px;color:var(--text-2);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;transition:all .15s;display:flex}.sync-board__item-btn:hover{background:var(--bg-2);color:var(--text-1)}.sync-board__item-btn--success{color:var(--green,#22c55e)}.sync-board__item-menu-wrapper{position:relative}.sync-board__item-dropdown{background:var(--bg-0);border:1px solid var(--stroke-0);z-index:50;border-radius:8px;min-width:140px;margin-top:4px;padding:4px;animation:.15s sync-fade-in;position:absolute;top:100%;right:0;box-shadow:0 4px 12px #00000026}.sync-board__item-dropdown-btn{width:100%;color:var(--text-1);cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;padding:8px 10px;font-size:12px;text-decoration:none;transition:background .15s;display:flex}.sync-board__item-dropdown-btn:hover{background:var(--bg-1)}.sync-board__item-dropdown-btn--danger:hover{color:#ef4444;background:#ef44441a}.sync-modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:20px;animation:.15s sync-fade-in;display:flex;position:fixed;inset:0}.sync-modal{background:var(--bg-0);border:1px solid var(--stroke-0);border-radius:12px;flex-direction:column;width:100%;max-width:380px;max-height:80vh;animation:.2s sync-scale-in;display:flex;overflow:hidden}.sync-modal--wide{max-width:480px}.sync-modal__header{border-bottom:1px solid var(--stroke-0);justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.sync-modal__header h2{color:var(--text-0);margin:0;font-size:14px;font-weight:600}.sync-modal__close{width:28px;height:28px;color:var(--text-2);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;transition:all .15s;display:flex}.sync-modal__close:hover{background:var(--bg-1);color:var(--text-1)}.sync-modal__body{flex-direction:column;gap:14px;padding:16px;display:flex;overflow-y:auto}.sync-modal__preview{background:var(--bg-1);border-radius:8px;align-items:center;gap:12px;padding:12px;display:flex}.sync-modal__preview-icon{background:var(--bg-2);width:36px;height:36px;color:var(--text-2);border-radius:8px;justify-content:center;align-items:center;display:flex}.sync-modal__preview-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.sync-modal__preview-type{text-transform:uppercase;letter-spacing:.5px;color:var(--text-3);font-size:10px;font-weight:600}.sync-modal__preview-name{color:var(--text-1);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.sync-modal__field{flex-direction:column;gap:6px;display:flex}.sync-modal__field label{color:var(--text-2);font-size:12px;font-weight:500}.sync-modal__field input,.sync-modal__field select{color:var(--text-0);background:var(--bg-1);border:1px solid var(--stroke-0);border-radius:8px;padding:10px 12px;font-size:13px;transition:border-color .15s}.sync-modal__field input:focus,.sync-modal__field select:focus{border-color:var(--accent-0);outline:none}.sync-modal__toggle{background:var(--bg-1);border-radius:8px;gap:4px;padding:4px;display:flex}.sync-modal__toggle--sm{padding:2px}.sync-modal__toggle-btn{color:var(--text-2);cursor:pointer;background:0 0;border:none;border-radius:6px;flex:1;justify-content:center;align-items:center;gap:6px;padding:8px 12px;font-size:12px;font-weight:500;transition:all .15s;display:inline-flex}.sync-modal__toggle-btn:hover{color:var(--text-1)}.sync-modal__toggle-btn--active{background:var(--bg-0);color:var(--text-0);box-shadow:0 1px 3px #0000001a}.sync-modal__toggle--sm .sync-modal__toggle-btn{padding:6px 10px}.sync-modal__submit{color:#fff;background:var(--accent-0);cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;margin-top:4px;padding:10px 16px;font-size:13px;font-weight:500;transition:background .15s;display:flex}.sync-modal__submit:hover{background:var(--accent-1)}.sync-modal__success{text-align:center;flex-direction:column;align-items:center;padding:24px 16px;display:flex}.sync-modal__success-icon{color:#22c55e;background:#22c55e1a;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:12px;display:flex}.sync-modal__success p{color:var(--text-0);margin:0 0 16px;font-size:14px;font-weight:500}.sync-modal__link-row{gap:8px;width:100%;margin-bottom:16px;display:flex}.sync-modal__link-row input{color:var(--text-1);background:var(--bg-1);border:1px solid var(--stroke-0);border-radius:8px;flex:1;padding:10px 12px;font-size:12px}.sync-modal__copy-btn{background:var(--bg-1);border:1px solid var(--stroke-0);width:38px;color:var(--text-2);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;transition:all .15s;display:flex}.sync-modal__copy-btn:hover{background:var(--bg-2);color:var(--text-1)}.sync-modal__copy-btn--copied{color:#22c55e;background:#22c55e1a;border-color:#0000}.sync-modal__done{color:var(--text-1);background:var(--bg-1);border:1px solid var(--stroke-0);cursor:pointer;border-radius:8px;padding:10px 24px;font-size:13px;font-weight:500;transition:all .15s}.sync-modal__done:hover{background:var(--bg-2)}.sync-modal__empty{color:var(--text-3);flex-direction:column;align-items:center;padding:32px 16px;display:flex}.sync-modal__empty svg{opacity:.5;margin-bottom:12px}.sync-modal__empty p{color:var(--text-2);margin:0;font-size:13px}.sync-shares-list{flex-direction:column;gap:2px;display:flex}.sync-share-item{border-radius:8px;align-items:center;gap:10px;padding:10px 12px;transition:background .15s;display:flex}.sync-share-item:hover{background:var(--bg-1)}.sync-share-item__icon{background:var(--bg-1);width:28px;height:28px;color:var(--text-2);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.sync-share-item:hover .sync-share-item__icon{background:var(--bg-2)}.sync-share-item__info{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.sync-share-item__title{color:var(--text-1);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.sync-share-item__meta{align-items:center;gap:8px;display:flex}.sync-share-item__badge,.sync-share-item__stat{color:var(--text-3);align-items:center;gap:4px;font-size:10px;display:inline-flex}.sync-share-item__actions{opacity:0;align-items:center;gap:2px;transition:opacity .15s;display:flex}.sync-share-item:hover .sync-share-item__actions{opacity:1}.sync-share-item__btn{width:28px;height:28px;color:var(--text-2);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;transition:all .15s;display:flex}.sync-share-item__btn:hover{background:var(--bg-2);color:var(--text-1)}.sync-share-item__btn--danger:hover{color:#ef4444;background:#ef44441a}.sync-share-item__edit{flex-direction:column;flex:1;gap:8px;display:flex}.sync-share-item__edit input{color:var(--text-0);background:var(--bg-1);border:1px solid var(--stroke-0);border-radius:6px;padding:8px 10px;font-size:13px}.sync-share-item__edit input:focus{border-color:var(--accent-0);outline:none}.sync-share-item__edit-row{justify-content:space-between;align-items:center;display:flex}.sync-share-item__edit-actions{gap:4px;display:flex}.sync-share-item__edit-btn{background:var(--bg-1);width:28px;height:28px;color:var(--text-2);cursor:pointer;border:none;border-radius:6px;justify-content:center;align-items:center;transition:all .15s;display:flex}.sync-share-item__edit-btn:hover{background:var(--bg-2);color:var(--text-1)}@keyframes sync-fade-in{0%{opacity:0}to{opacity:1}}@keyframes sync-scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes sync-slide-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes sync-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes sync-pulse{0%,to{opacity:1}50%{opacity:.5}}@media(max-width:640px){.sync-board{padding:12px 16px}.sync-board__header{flex-direction:column;align-items:flex-start;gap:12px}.sync-board__actions{justify-content:flex-end;width:100%}.sync-board__item-actions,.sync-share-item__actions{opacity:1}.sync-modal{max-width:none;margin:0 10px}}.shared-item-page{min-height:100vh;padding:var(--space-4);background:var(--bg-0);justify-content:center;align-items:center;display:flex}.shared-item-page__loading,.shared-item-page__error{text-align:center;color:var(--text-2);justify-content:center;align-items:center;gap:var(--space-4);flex-direction:column;display:flex}.shared-item-page__error h2{color:var(--text-0);font-size:20px;font-weight:600}.shared-item-page__error p{max-width:300px;font-size:14px}.shared-item-page__home-link{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-4);background:var(--accent-0);border-radius:var(--radius-md);color:#fff;font-size:14px;font-weight:500;text-decoration:none;transition:all .15s;display:flex}.shared-item-page__home-link:hover{background:var(--accent-1)}.shared-item-page__container{background:var(--bg-1);border:1px solid var(--stroke-0);border-radius:var(--radius-lg);width:100%;max-width:640px;box-shadow:var(--shadow-lg);overflow:hidden}.shared-item-page__header{align-items:flex-start;gap:var(--space-4);padding:var(--space-5);border-bottom:1px solid var(--stroke-0);display:flex}.shared-item-page__icon{background:var(--accent-0);border-radius:var(--radius-md);color:#fff;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.shared-item-page__title-section{flex:1;min-width:0}.shared-item-page__title{color:var(--text-0);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:18px;font-weight:600;overflow:hidden}.shared-item-page__meta{gap:var(--space-4);margin-top:var(--space-2);color:var(--text-2);font-size:13px;display:flex}.shared-item-page__date,.shared-item-page__views{align-items:center;gap:var(--space-1);display:flex}.shared-item-page__content{padding:var(--space-5)}.shared-item-page__text-content{background:var(--bg-2);border-radius:var(--radius-md);padding:var(--space-4);max-height:400px;overflow-y:auto}.shared-item-page__text-content pre{white-space:pre-wrap;word-wrap:break-word;color:var(--text-0);margin:0;font-family:inherit;font-size:14px;line-height:1.6}.shared-item-page__image-content{align-items:center;gap:var(--space-3);flex-direction:column;display:flex}.shared-item-page__image{object-fit:contain;border-radius:var(--radius-md);max-width:100%;max-height:400px}.shared-item-page__file-info{gap:var(--space-2);color:var(--text-2);font-size:13px;display:flex}.shared-item-page__file-size{color:var(--text-3)}.shared-item-page__file-content{align-items:center;gap:var(--space-4);padding:var(--space-6);background:var(--bg-2);border-radius:var(--radius-md);color:var(--text-2);flex-direction:column;display:flex}.shared-item-page__file-details{align-items:center;gap:var(--space-1);text-align:center;flex-direction:column;display:flex}.shared-item-page__filename{color:var(--text-0);font-size:16px;font-weight:500}.shared-item-page__file-type{color:var(--text-2);font-size:12px}.shared-item-page__actions{gap:var(--space-3);padding:0 var(--space-5)var(--space-5);display:flex}.shared-item-page__btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);cursor:pointer;flex:1;font-size:14px;font-weight:500;text-decoration:none;transition:all .15s;display:flex}.shared-item-page__btn--copy{background:var(--bg-2);border:1px solid var(--stroke-0);color:var(--text-0)}.shared-item-page__btn--copy:hover{background:var(--bg-3)}.shared-item-page__btn--copy.copied{background:var(--green-0);border-color:var(--green-0);color:#fff}.shared-item-page__btn--download{background:var(--accent-0);color:#fff;border:none}.shared-item-page__btn--download:hover{background:var(--accent-1)}.shared-item-page__footer{padding:var(--space-4)var(--space-5);border-top:1px solid var(--stroke-0);background:var(--bg-2);justify-content:space-between;align-items:center;display:flex}.shared-item-page__footer p{color:var(--text-2);margin:0;font-size:13px}.shared-item-page__cta{color:var(--accent-0);font-size:13px;font-weight:500;text-decoration:none}.shared-item-page__cta:hover{text-decoration:underline}@media(max-width:640px){.shared-item-page__header{flex-direction:column}.shared-item-page__meta{gap:var(--space-1);flex-direction:column}.shared-item-page__actions{flex-direction:column}.shared-item-page__footer{gap:var(--space-2);text-align:center;flex-direction:column}}.toggle-switch{width:44px;height:24px;display:inline-block;position:relative}.toggle-switch input{opacity:0;width:0;height:0}.toggle-switch__slider{cursor:pointer;background-color:var(--bg-3);border:1px solid var(--stroke-1);border-radius:var(--radius-full);transition:all .3s;position:absolute;inset:0}.toggle-switch__slider:before{content:"";background-color:#fff;border-radius:50%;width:18px;height:18px;transition:all .3s;position:absolute;bottom:2px;left:2px}.toggle-switch input:checked+.toggle-switch__slider{background-color:var(--accent-0);border-color:var(--accent-0)}.toggle-switch input:checked+.toggle-switch__slider:before{transform:translate(20px)}.toggle-switch input:focus+.toggle-switch__slider{box-shadow:0 0 0 2px var(--focus)}.sidebar-customizer{gap:var(--space-4);grid-template-columns:repeat(2,1fr);display:grid}@media(max-width:640px){.sidebar-customizer{grid-template-columns:1fr}}.sidebar-section-reorder{background:var(--bg-2);border:1px solid var(--stroke-0);border-radius:var(--radius-md);padding:var(--space-3)}.sidebar-section-reorder__header{text-transform:uppercase;letter-spacing:.05em;color:var(--text-2);margin-bottom:var(--space-2);font-size:10px;font-weight:600}.sidebar-section-reorder__items{gap:var(--space-1);flex-direction:column;display:flex}.sortable-sidebar-item{align-items:center;gap:var(--space-2);padding:var(--space-2);background:var(--bg-1);border:1px solid var(--stroke-0);border-radius:var(--radius-sm);cursor:default;transition:all var(--transition-fast);display:flex}.sortable-sidebar-item:hover{background:var(--bg-3);border-color:var(--stroke-1)}.sortable-sidebar-item__drag{width:20px;height:20px;color:var(--text-3);cursor:grab;border-radius:var(--radius-sm);transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex}.sortable-sidebar-item__drag:hover{color:var(--text-1);background:var(--bg-3)}.sortable-sidebar-item__drag:active{cursor:grabbing}.sortable-sidebar-item__label{font-size:var(--text-sm);color:var(--text-1);flex:1}.sortable-sidebar-item__visibility{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.sortable-sidebar-item__visibility:hover{background:var(--bg-3);color:var(--text-0)}.sortable-sidebar-item--hidden{opacity:.6}.sortable-sidebar-item--hidden .sortable-sidebar-item__label{color:var(--text-2);text-decoration:line-through}.sortable-sidebar-item--hidden .sortable-sidebar-item__visibility{color:var(--text-3)}.note-detail-view{max-width:900px;height:100%;padding:var(--space-4);flex-direction:column;margin:0 auto;display:flex}.note-detail-view--loading,.note-detail-view--not-found{justify-content:center;align-items:center;gap:var(--space-4);color:var(--text-2);flex-direction:column;display:flex}.note-detail-view__header{padding-bottom:var(--space-3);margin-bottom:var(--space-4);border-bottom:1px solid var(--stroke-0);justify-content:space-between;align-items:center;display:flex}.note-detail-view__header-left{align-items:center;gap:var(--space-3);display:flex}.note-detail-view__header-right{align-items:center;gap:var(--space-2);display:flex}.note-detail-view__save-status{align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--text-2);display:flex}.note-detail-view__save-icon{animation:1s linear infinite spin}.note-detail-view__date{font-size:var(--text-xs);color:var(--text-2)}.note-detail-view__content{flex-direction:column;flex:1;display:flex;overflow-y:auto}.note-detail-view__title{width:100%;color:var(--text-0);margin-bottom:var(--space-4);letter-spacing:-.02em;background:0 0;border:none;outline:none;padding:0;font-size:2rem;font-weight:700}.note-detail-view__title::placeholder{color:var(--text-2)}.note-detail-view__editor{flex:1}.note-editor{flex-direction:column;flex:1;display:flex;position:relative}.note-editor--loading{justify-content:center;align-items:center;min-height:200px;display:flex}.note-editor__wrapper{flex:1}.note-editor__placeholder{color:var(--text-2)}.note-editor__content{outline:none;min-height:300px}.note-editor__content>*+*{margin-top:.75em}.note-editor__content p{margin:0;line-height:1.65}.note-editor__content h1{letter-spacing:-.02em;margin-top:1.5rem;margin-bottom:.5rem;font-size:1.75rem;font-weight:700;line-height:1.2}.note-editor__content h2{letter-spacing:-.01em;margin-top:1.25rem;margin-bottom:.5rem;font-size:1.375rem;font-weight:600;line-height:1.25}.note-editor__content h3{margin-top:1rem;margin-bottom:.5rem;font-size:1.125rem;font-weight:600;line-height:1.3}.note-editor__content p.is-empty:before,.note-editor__content .is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--text-2);pointer-events:none;height:0}.note-editor__content ul,.note-editor__content ol{margin:.5rem 0;padding-left:1.5rem}.note-editor__content li{margin:.25rem 0}.note-editor__content li p{margin:0}.note-editor__content ul[data-type=taskList]{padding-left:0;list-style:none}.note-editor__content ul[data-type=taskList] li{align-items:flex-start;gap:var(--space-2);display:flex}.note-editor__content ul[data-type=taskList] li>label{flex-shrink:0;margin-top:.25rem}.note-editor__content ul[data-type=taskList] li>label input[type=checkbox]{cursor:pointer;width:16px;height:16px;accent-color:var(--primary)}.note-editor__content ul[data-type=taskList] li>div{flex:1}.note-editor__content ul[data-type=taskList] li[data-checked=true]>div{color:var(--text-2);text-decoration:line-through}.note-editor__content blockquote{border-left:3px solid var(--stroke-2);padding-left:var(--space-4);margin:var(--space-3)0;color:var(--text-1);font-style:italic}.note-editor__content code{background:var(--bg-2);border-radius:var(--radius-sm);color:var(--text-0);padding:.15em .3em;font-family:JetBrains Mono,Fira Code,monospace;font-size:.9em}.note-editor__content pre{background:var(--bg-2);border-radius:var(--radius-md);padding:var(--space-4);margin:var(--space-3)0;overflow-x:auto}.note-editor__content pre code{background:0 0;padding:0;font-size:.875rem;line-height:1.5}.note-code-block{background:var(--bg-2);border-radius:var(--radius-md);padding:var(--space-4);margin:var(--space-3)0;font-family:JetBrains Mono,Fira Code,monospace;font-size:.875rem;line-height:1.5;overflow-x:auto}.note-code-block code{background:0 0;padding:0}.note-editor__content a,.note-link{color:var(--primary);cursor:pointer;text-decoration:none}.note-editor__content a:hover,.note-link:hover{text-decoration:underline}.note-editor__content hr{border:none;border-top:1px solid var(--stroke-1);margin:var(--space-4)0}.note-editor__content mark{background:#f59e0b4d;border-radius:2px;padding:.1em 0}.note-editor__content s{color:var(--text-2)}.note-callout{gap:var(--space-3);padding:var(--space-3)var(--space-4);margin:var(--space-3)0;border-radius:var(--radius-md);background:var(--bg-2);border-left:3px solid var(--primary);display:flex}.note-callout--info{background:#6366f11a;border-left-color:#6366f1}.note-callout--tip{background:#22c55e1a;border-left-color:#22c55e}.note-callout--warning{background:#f59e0b1a;border-left-color:#f59e0b}.note-callout--error{background:#ef44441a;border-left-color:#ef4444}.note-callout--success{background:#22c55e1a;border-left-color:#22c55e}.note-callout__icon{flex-shrink:0;font-size:1.25rem;line-height:1.4}.note-callout__content{outline:none;flex:1;min-width:0}.note-formatting-toolbar{background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-1);z-index:1000;animation:.15s ease-out fadeIn;position:absolute}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.note-formatting-toolbar__buttons{align-items:center;gap:2px;display:flex}.note-formatting-toolbar__btn{border-radius:var(--radius-md);width:32px;height:32px;color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.note-formatting-toolbar__btn:hover{background:var(--bg-3);color:var(--text-0)}.note-formatting-toolbar__btn--active{background:var(--primary);color:#fff}.note-formatting-toolbar__btn--active:hover{background:var(--primary);filter:brightness(1.1)}.note-formatting-toolbar__link-input{align-items:center;gap:var(--space-1);padding:var(--space-1);display:flex}.note-formatting-toolbar__input{background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-md);width:200px;padding:var(--space-2);font-size:var(--text-sm);color:var(--text-0);outline:none}.note-formatting-toolbar__input:focus{border-color:var(--primary)}.note-formatting-toolbar__input::placeholder{color:var(--text-2)}.note-slash-menu{background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:1000;width:280px;max-height:400px;animation:.15s ease-out fadeIn;position:absolute;overflow:hidden}.note-slash-menu__header{padding:var(--space-2)var(--space-3);font-size:var(--text-xs);color:var(--text-2);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--stroke-0);font-weight:600}.note-slash-menu__list{max-height:350px;padding:var(--space-1);overflow-y:auto}.note-slash-menu__item{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2)var(--space-3);border-radius:var(--radius-md);cursor:pointer;text-align:left;transition:all var(--transition-fast);color:var(--text-0);background:0 0;border:none;display:flex}.note-slash-menu__item:hover,.note-slash-menu__item--selected{background:var(--bg-3)}.note-slash-menu__icon{background:var(--bg-1);border:1px solid var(--stroke-0);border-radius:var(--radius-md);width:32px;height:32px;color:var(--text-1);flex-shrink:0;justify-content:center;align-items:center;display:flex}.note-slash-menu__content{flex-direction:column;min-width:0;display:flex}.note-slash-menu__name{font-size:var(--text-sm);color:var(--text-0);font-weight:500}.note-slash-menu__description{font-size:var(--text-xs);color:var(--text-2)}.note-card{cursor:pointer;transition:all var(--transition-fast)}.note-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.note-block-handle{z-index:10;align-items:center;gap:2px;transition:opacity .15s;display:flex}.note-block-handle__btn{border-radius:var(--radius-sm);width:20px;height:20px;color:var(--text-2);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:all .15s;display:flex}.note-block-handle__btn:hover{background:var(--bg-3);color:var(--text-0)}.note-block-handle__drag{cursor:grab}.note-block-handle__drag:active{cursor:grabbing}.note-block-menu{background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:1000;width:240px;max-height:400px;padding:var(--space-1);animation:.15s ease-out fadeIn;overflow-y:auto}.note-block-menu__item-wrapper{position:relative}.note-block-menu__item{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2)var(--space-3);border-radius:var(--radius-md);cursor:pointer;text-align:left;color:var(--text-0);font-size:var(--text-sm);background:0 0;border:none;transition:all .1s;display:flex}.note-block-menu__item:hover,.note-block-menu__item--active{background:var(--bg-3)}.note-block-menu__icon{width:20px;height:20px;color:var(--text-1);flex-shrink:0;justify-content:center;align-items:center;display:flex}.note-block-menu__label{flex:1}.note-block-menu__arrow{color:var(--text-2)}.note-block-menu__divider{background:var(--stroke-0);height:1px;margin:var(--space-1)0}.note-block-menu__color-swatch{border-radius:var(--radius-sm);flex-shrink:0;width:18px;height:18px}.note-block-menu__submenu{background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:200px;max-height:350px;padding:var(--space-1);z-index:1001;margin-left:4px;position:absolute;top:0;left:100%;overflow-y:auto}.note-formatting-toolbar__content{flex-direction:column;display:flex}.note-formatting-toolbar__divider{background:var(--stroke-1);width:1px;height:20px;margin:0 var(--space-1)}.note-formatting-toolbar__color-menu{border-top:1px solid var(--stroke-0);padding:var(--space-2);margin-top:var(--space-1)}.note-formatting-toolbar__color-label{font-size:var(--text-xs);color:var(--text-2);margin-bottom:var(--space-2);font-weight:500}.note-formatting-toolbar__color-grid{grid-template-columns:repeat(5,1fr);gap:4px;display:grid}.note-formatting-toolbar__color-btn{border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:28px;height:28px;padding:0;transition:all .1s;display:flex}.note-formatting-toolbar__color-btn:hover{background:var(--bg-3);transform:scale(1.1)}.note-formatting-toolbar__color-swatch{border-radius:var(--radius-sm);justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;font-weight:600;display:flex}.note-formatting-toolbar__color-swatch--bg{border:2px dashed var(--stroke-1)}.note-toggle-list{gap:var(--space-2);margin:var(--space-2)0;padding-left:var(--space-1);display:flex}.note-toggle-list__toggle{border-radius:var(--radius-sm);cursor:pointer;width:20px;height:20px;color:var(--text-2);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:flex-start;margin-top:2px;padding:0;transition:all .2s;display:flex}.note-toggle-list__toggle:hover{background:var(--bg-3);color:var(--text-0)}.note-toggle-list__toggle svg{transition:transform .2s}.note-toggle-list--open .note-toggle-list__toggle svg{transform:rotate(90deg)}.note-toggle-list__content{flex:1;min-width:0}.note-toggle-list:not(.note-toggle-list--open) .note-toggle-list__content>:not(:first-child){display:none}.note-image{border-radius:var(--radius-md);max-width:100%;height:auto;margin:var(--space-3)0;cursor:pointer;transition:box-shadow .2s}.note-image:hover{box-shadow:0 0 0 2px var(--primary)}.note-image.ProseMirror-selectednode{box-shadow:0 0 0 3px var(--primary)}.note-detail-view{max-width:1000px}.note-editor{padding-left:48px}.note-editor__content{line-height:1.7}.insights-page{padding:var(--space-6);max-width:1400px}.insights-settings-panel{margin-bottom:var(--space-6);border:1px solid var(--stroke-0)}.insights-settings__item-info{flex:1;min-width:0}.insights-settings__item-desc{font-size:var(--text-xs);color:var(--text-2);margin-top:2px;display:block}.insights-settings__item-toggle--active{color:var(--success)}.insights-card{background:var(--bg-1);border:1px solid var(--stroke-0);border-radius:var(--radius-lg);overflow:hidden}.insights-card--overview,.insights-card--trend{grid-column:span 2}.insights-card__header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--stroke-0);display:flex}.insights-card__title{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-0);font-weight:600;display:flex}.insights-card__title svg{color:var(--text-2)}.insights-card__body{padding:var(--space-4)}.insights-card__body--centered{text-align:center;flex-direction:column;align-items:center;display:flex}.insights-overview-grid{gap:var(--space-4);padding:var(--space-4);grid-template-columns:repeat(3,1fr);display:grid}.insights-overview-stat{text-align:center;padding:var(--space-3)}.insights-overview-stat__value{font-size:var(--text-3xl);color:var(--text-0);font-weight:700;line-height:1}.insights-overview-stat__label{font-size:var(--text-sm);color:var(--text-1);margin-top:var(--space-1);font-weight:500}.insights-overview-stat__sub{font-size:var(--text-xs);color:var(--text-2);margin-top:var(--space-1)}.completion-stats{gap:var(--space-2);flex-direction:column;width:100%;display:flex}.completion-stat{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-1);display:flex}.streak-icon{background:var(--bg-2);width:64px;height:64px;color:var(--text-3);margin-bottom:var(--space-2);border-radius:50%;justify-content:center;align-items:center;display:flex}.streak-icon--active{color:#f59e0b;background:#f59e0b1a}.streak-value{color:var(--text-0);font-size:40px;font-weight:700;line-height:1}.streak-label{font-size:var(--text-sm);color:var(--text-2);margin-top:var(--space-1)}.streak-hint{font-size:var(--text-xs);color:var(--text-2);margin-top:var(--space-3);max-width:200px;margin-bottom:0}.best-day-value{font-size:var(--text-2xl);color:var(--text-0);font-weight:700}.best-day-stats{margin-top:var(--space-1);margin-bottom:var(--space-4);flex-direction:column;gap:2px;display:flex}.best-day-rate{font-size:var(--text-sm);color:var(--success);font-weight:500}.best-day-count{font-size:var(--text-xs);color:var(--text-2)}.day-breakdown{gap:var(--space-2);width:100%;height:60px;padding:0 var(--space-2);align-items:flex-end;display:flex}.day-bar{align-items:center;gap:var(--space-1);flex-direction:column;flex:1;height:100%;display:flex}.day-bar__fill{background:var(--bg-3);border-radius:2px 2px 0 0;width:100%;min-height:4px;transition:all .3s}.day-bar--highlight .day-bar__fill{background:var(--success)}.day-bar__label{color:var(--text-2);font-size:10px}.consistency-score{font-size:48px;font-weight:700;line-height:1}.consistency-score--excellent{color:var(--success)}.consistency-score--good{color:#22c55e}.consistency-score--fair{color:#f59e0b}.consistency-score--needs-work{color:var(--danger)}.consistency-label{font-size:var(--text-sm);color:var(--text-1);margin-top:var(--space-1);font-weight:500}.consistency-hint{font-size:var(--text-xs);color:var(--text-2);margin-top:var(--space-3);max-width:220px;margin-bottom:0}.breakdown-bar{background:var(--bg-2);height:8px;margin-bottom:var(--space-4);border-radius:4px;display:flex;overflow:hidden}.breakdown-bar__segment{transition:width .3s}.breakdown-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.breakdown-item{align-items:center;gap:var(--space-2);font-size:var(--text-sm);display:flex}.breakdown-item__dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.breakdown-item__label{color:var(--text-1);flex:1}.breakdown-item__value{color:var(--text-0);font-weight:600}.breakdown-item__pct{color:var(--text-2);font-size:var(--text-xs);min-width:40px}.trend-chart{justify-content:space-between;align-items:flex-end;gap:var(--space-3);height:120px;padding:0 var(--space-2);display:flex}.trend-bar-group{align-items:center;gap:var(--space-2);flex-direction:column;flex:1;height:100%;display:flex}.trend-bars{flex:1;justify-content:center;align-items:flex-end;gap:4px;width:100%;display:flex;position:relative}.trend-bar{border-radius:3px 3px 0 0;width:40%;min-height:4px;transition:height .3s;position:relative}.trend-bar__tooltip{background:var(--bg-0);border:1px solid var(--stroke-1);border-radius:var(--radius-sm);white-space:nowrap;z-index:10;margin-bottom:4px;padding:4px 8px;font-size:11px;display:none;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.trend-bar:hover .trend-bar__tooltip{display:block}.trend-bar--total{background:var(--bg-3)}.trend-bar--completed{background:var(--success)}.trend-label{color:var(--text-2);font-size:11px}.trend-legend{justify-content:center;gap:var(--space-4);margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--stroke-0);display:flex}.trend-legend__item{align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--text-2);display:flex}.trend-legend__color{border-radius:2px;width:10px;height:10px}.trend-legend__color--total{background:var(--bg-3)}.trend-legend__color--completed{background:var(--success)}.labels-grid{gap:var(--space-2);flex-direction:column;display:flex}.label-item{align-items:center;gap:var(--space-2);padding:var(--space-2);background:var(--bg-2);border-radius:var(--radius-md);display:flex}.label-item__rank{font-size:var(--text-xs);color:var(--text-2);width:24px;font-weight:600}.label-item__name{font-size:var(--text-sm);color:var(--text-0);flex:1;font-weight:500}.label-item__count{font-size:var(--text-xs)}.overdue-list{gap:var(--space-2);flex-direction:column;display:flex}.overdue-item{align-items:center;gap:var(--space-2);padding:var(--space-2);background:var(--bg-2);border-radius:var(--radius-md);display:flex}.overdue-item__text{font-size:var(--text-sm);color:var(--text-0);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.overdue-item__date{font-size:var(--text-xs);color:var(--danger);flex-shrink:0}.overdue-more{font-size:var(--text-xs);color:var(--text-2);text-align:center;padding:var(--space-2)}.monthly-progress{width:100%}.monthly-progress__header{margin-bottom:var(--space-2);justify-content:space-between;align-items:center;display:flex}.monthly-progress__month{font-size:var(--text-sm);color:var(--text-0);font-weight:500}.monthly-progress__pct{font-size:var(--text-lg);color:var(--success);font-weight:700}.monthly-progress__bar{background:var(--bg-2);border-radius:4px;height:8px;overflow:hidden}.monthly-progress__fill{background:var(--success);border-radius:4px;height:100%;transition:width .3s}.monthly-progress__stats{margin-top:var(--space-2);font-size:var(--text-xs);color:var(--text-2);justify-content:space-between;display:flex}.daily-avg-value{color:var(--text-0);font-size:48px;font-weight:700;line-height:1}.daily-avg-label{font-size:var(--text-sm);color:var(--text-2);margin-top:var(--space-1)}.daily-avg-hint{font-size:var(--text-xs);color:var(--text-2);margin-top:var(--space-3);margin-bottom:0}.insights-empty-state{align-items:center;gap:var(--space-2);padding:var(--space-6);color:var(--text-2);flex-direction:column;display:flex}.insights-empty-state svg{opacity:.5}.insights-empty-state--success{color:var(--success)}.insights-empty-state--success svg{opacity:1}.insights-page__header{margin-bottom:var(--space-6);justify-content:space-between;align-items:flex-start;display:flex}.insights-page__title{font-size:var(--text-2xl);color:var(--text-0);margin:0 0 var(--space-1)0;font-weight:600}.insights-page__subtitle{font-size:var(--text-sm);color:var(--text-2);margin:0}.insights-summary{gap:var(--space-4);margin-bottom:var(--space-6);grid-template-columns:repeat(4,1fr);display:grid}.insights-summary__card{align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--bg-1);border:1px solid var(--stroke-0);border-radius:var(--radius-lg);display:flex}.insights-summary__icon{background:var(--bg-2);border-radius:var(--radius-md);width:40px;height:40px;color:var(--accent-0);justify-content:center;align-items:center;display:flex}.insights-summary__content{flex:1}.insights-summary__value{font-size:var(--text-xl);color:var(--text-0);font-weight:600}.insights-summary__label{font-size:var(--text-xs);color:var(--text-2)}.insights-summary__change{font-size:var(--text-xs);border-radius:var(--radius-sm);align-items:center;gap:4px;padding:4px 8px;font-weight:500;display:flex}.insights-summary__change.positive{color:var(--success);background:#22c55e1a}.insights-summary__change.negative{color:var(--danger);background:#ef44441a}.insights-settings{background:var(--bg-1);border:1px solid var(--stroke-0);border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-6)}.insights-settings__header{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;display:flex}.insights-settings__header h3{font-size:var(--text-sm);color:var(--text-0);margin:0;font-weight:600}.insights-settings__list{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.insights-settings__item{align-items:center;gap:var(--space-3);padding:var(--space-2)var(--space-3);background:var(--bg-2);border-radius:var(--radius-md);color:var(--text-1);display:flex}.insights-settings__item-drag{cursor:grab;color:var(--text-2)}.insights-settings__item-drag:active{cursor:grabbing}.insights-settings__item-label{font-size:var(--text-sm);flex:1}.insights-settings__item-toggle{cursor:pointer;color:var(--text-2);border-radius:var(--radius-sm);transition:all var(--transition-fast);background:0 0;border:none;padding:4px}.insights-settings__item-toggle:hover{background:var(--bg-3);color:var(--text-0)}.insights-widgets{gap:var(--space-4);grid-template-columns:repeat(3,1fr);display:grid}.insights-widget{background:var(--bg-1);border:1px solid var(--stroke-0);border-radius:var(--radius-lg);padding:var(--space-4)}.insights-widget--large{grid-column:span 2}.insights-widget__header{align-items:center;gap:var(--space-2);margin-bottom:var(--space-4);color:var(--text-2);display:flex}.insights-widget__header h3{font-size:var(--text-sm);color:var(--text-0);flex:1;margin:0;font-weight:600}.insights-widget__badge{align-items:center;display:flex}.insights-widget__badge .badge{border-radius:var(--radius-sm);align-items:center;gap:4px;padding:4px 8px;font-size:11px;font-weight:500;display:inline-flex}.insights-widget__badge .badge--success{color:var(--success);background:#22c55e1a}.insights-widget__badge .badge--danger{color:var(--danger);background:#ef44441a}.insights-widget__content{min-height:100px}.insights-widget__stats{gap:var(--space-4);margin-top:var(--space-4);justify-content:center;display:flex}.insights-stat{text-align:center}.insights-stat__value{font-size:var(--text-lg);color:var(--text-0);font-weight:600;display:block}.insights-stat__label{font-size:var(--text-xs);color:var(--text-2)}.insights-widget__empty{text-align:center;color:var(--text-2);font-size:var(--text-sm);padding:var(--space-4)}.completion-ring{width:120px;height:120px;margin:0 auto;position:relative}.completion-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.completion-ring__text{text-align:center;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.completion-ring__value{font-size:var(--text-2xl);color:var(--text-0);font-weight:600}.status-bars,.priority-bars{gap:var(--space-3);flex-direction:column;display:flex}.status-bar,.priority-bar{gap:var(--space-1);flex-direction:column;display:flex}.status-bar__header,.priority-bar__header{font-size:var(--text-xs);justify-content:space-between;display:flex}.status-bar__label,.priority-bar__label{color:var(--text-1)}.status-bar__count,.priority-bar__count{color:var(--text-2);font-weight:500}.status-bar__track,.priority-bar__track{background:var(--bg-2);border-radius:3px;height:6px;overflow:hidden}.status-bar__fill,.priority-bar__fill{border-radius:3px;height:100%;transition:width .3s}.weekly-chart{padding-top:var(--space-2)}.weekly-chart__bars{justify-content:space-between;align-items:flex-end;gap:var(--space-2);height:140px;display:flex}.weekly-chart__bar-group{align-items:center;gap:var(--space-2);flex-direction:column;flex:1;display:flex}.weekly-chart__bar-wrapper{flex:1;align-items:flex-end;width:100%;display:flex;position:relative}.weekly-chart__bar{border-radius:4px 4px 0 0;width:60%;transition:height .3s;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.weekly-chart__bar--total{background:var(--bg-3);width:80%}.weekly-chart__bar--completed{background:var(--success);z-index:1;width:60%}.weekly-chart__label{color:var(--text-2);font-size:11px}.weekly-chart__legend{justify-content:center;gap:var(--space-4);margin-top:var(--space-4);display:flex}.weekly-chart__legend-item{align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--text-2);display:flex}.weekly-chart__legend-color{border-radius:2px;width:10px;height:10px}.weekly-chart__legend-color--total{background:var(--bg-3)}.weekly-chart__legend-color--completed{background:var(--success)}.streak-display{text-align:center;padding:var(--space-2)0}.streak-display__icon{margin-bottom:var(--space-2);color:var(--text-2)}.streak-display__icon .streak-active{color:#f59e0b;animation:1.5s ease-in-out infinite flameGlow}@keyframes flameGlow{0%,to{filter:drop-shadow(0 0 4px #f59e0b80)}50%{filter:drop-shadow(0 0 8px #f59e0bcc)}}.streak-display__value{color:var(--text-0);font-size:48px;font-weight:700;line-height:1}.streak-display__label{font-size:var(--text-sm);color:var(--text-2);margin-top:var(--space-1)}.streak-display__hint{font-size:var(--text-xs);color:var(--text-2);margin-top:var(--space-3);margin-bottom:0}.labels-list{gap:var(--space-2);flex-direction:column;display:flex}.labels-list__item{align-items:center;gap:var(--space-2);padding:var(--space-2);background:var(--bg-2);border-radius:var(--radius-md);display:flex}.labels-list__rank{font-size:var(--text-xs);color:var(--text-2);width:20px;font-weight:600}.labels-list__name{font-size:var(--text-sm);color:var(--text-0);flex:1}.labels-list__count{font-size:var(--text-xs);color:var(--text-2);background:var(--bg-3);border-radius:var(--radius-sm);padding:2px 8px;font-weight:500}.insights-empty{text-align:center;padding:var(--space-12)var(--space-4);color:var(--text-2)}.insights-empty svg{margin-bottom:var(--space-4);opacity:.5}.insights-empty h3{font-size:var(--text-lg);color:var(--text-1);margin:0 0 var(--space-2)0;font-weight:600}.insights-empty p{font-size:var(--text-sm);margin:0}@media(max-width:1200px){.insights-widgets{grid-template-columns:repeat(2,1fr)}.insights-widget--large,.insights-card--overview,.insights-card--trend{grid-column:span 2}}@media(max-width:900px){.insights-summary{grid-template-columns:repeat(2,1fr)}.insights-overview-grid{grid-template-columns:repeat(3,1fr)}.insights-settings__list{grid-template-columns:1fr}}@media(max-width:768px){.insights-page{padding:var(--space-4)}.insights-page__header{gap:var(--space-3);flex-direction:column}.insights-summary,.insights-widgets{grid-template-columns:1fr}.insights-widget--large,.insights-card--overview,.insights-card--trend{grid-column:span 1}.insights-overview-grid{gap:var(--space-2);grid-template-columns:1fr}.insights-overview-stat{padding:var(--space-2)}.insights-overview-stat__value{font-size:var(--text-2xl)}}@media(max-width:640px){.task-modal-overlay{padding:var(--space-4);justify-content:center;align-items:center;overflow:hidden}.task-modal{width:calc(100% - var(--space-4));max-width:400px;height:auto;max-height:calc(100vh - var(--space-8) - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));border-radius:var(--radius-lg);flex-direction:column;margin:0;animation:.2s ease-out modalFadeIn;display:flex;overflow:hidden}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.task-modal__header{padding:var(--space-3);flex-shrink:0}.task-modal__body{padding:var(--space-3);-webkit-overflow-scrolling:touch;flex:1;padding-top:0;overflow:hidden auto}.task-modal__footer{background:var(--bg-1);border-top:1px solid var(--stroke-0);padding:var(--space-3);padding-bottom:calc(var(--space-3) + env(safe-area-inset-bottom,0px));flex-shrink:0;position:relative}.task-modal__chips{gap:var(--space-2)}.task-modal__chip{font-size:var(--text-sm);padding:10px 14px}.task-modal__dropdown{min-width:200px;max-height:200px;max-width:calc(100vw - var(--space-8));border-radius:var(--radius);z-index:10000;animation:.15s ease-out dropdownFadeIn;position:absolute;top:calc(100% + 4px);left:0;right:auto;overflow-y:auto}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.task-modal__dropdown--labels{min-width:220px;max-height:240px}.task-modal__date-picker-new{min-width:280px;max-width:calc(100vw - var(--space-8));-webkit-overflow-scrolling:touch;max-height:400px;position:absolute;top:calc(100% + 4px);left:0;right:auto;overflow:hidden auto}.task-modal__date-picker-new.position-above{top:auto;bottom:calc(100% + 4px)}.date-picker__header{padding:12px 12px 8px}.date-picker__nav{width:32px;height:32px}.date-picker__grid{gap:2px;padding:0 6px 10px}.date-picker__day{border-radius:8px;width:100%;height:38px;font-size:13px}.date-picker__header-input{padding:10px 12px}.date-picker__datetime-row{flex-wrap:wrap;gap:6px}.date-picker__time-inline{width:80px;font-size:12px}.date-picker__day-names{padding:4px 6px}.date-picker__options{padding:10px 12px 12px}.date-picker__option-row{min-height:44px;padding:12px 0}.date-picker__range-selector{flex-wrap:nowrap;gap:8px}.date-picker__range-btn{flex:1;min-width:0;padding:8px 10px}.date-picker__range-arrow{flex-shrink:0}.date-picker__time-row{flex-wrap:wrap;gap:8px}.date-picker__time-input{flex:1;min-width:90px;padding:10px 12px}.date-picker__reminder-menu{max-height:200px;position:absolute;inset:calc(100% + 4px) 0 auto auto;overflow-y:auto}.task-modal__dropdown--colors{gap:var(--space-1);padding:var(--space-3);grid-template-columns:repeat(3,1fr);max-height:240px;display:grid}.task-modal__color-option{gap:var(--space-1);padding:var(--space-2);text-align:center;font-size:var(--text-xs);flex-direction:column}.task-modal__color-swatch{width:28px;height:28px}}@media(min-width:641px)and (max-width:900px){.task-modal__date-picker-new{max-height:70vh;top:auto;bottom:calc(100% + 4px);overflow-y:auto}}@media(min-height:0)and (max-height:700px)and (min-width:641px){.task-modal__date-picker-new{max-height:60vh;top:auto;bottom:calc(100% + 4px);overflow-y:auto}}@media(max-width:640px){.bulk-action-bar{left:var(--space-3);right:var(--space-3);bottom:var(--space-3);padding:var(--space-2)var(--space-3);gap:var(--space-2);flex-wrap:wrap;transform:none}.bulk-action-bar__left{padding-right:var(--space-2);border-right:none;flex:1}.bulk-action-bar__count{font-size:var(--text-xs)}.bulk-action-bar__select-all{display:none}.bulk-action-bar__actions{gap:var(--space-1);flex-wrap:wrap}.bulk-action-btn{padding:6px 8px;font-size:11px}.bulk-action-btn span{display:none}.bulk-action-btn svg{width:16px;height:16px}.bulk-action-bar__close{width:28px;height:28px}.bulk-action-dropdown__menu{bottom:70px;left:var(--space-3);right:var(--space-3);min-width:auto;max-height:50vh;position:fixed;overflow-y:auto;transform:none}.bulk-action-dropdown__menu--input{padding:var(--space-3)}.bulk-action-dropdown__input{font-size:16px}}.tasks-page__select-mode-btn{background:var(--bg-2);border:1px solid var(--stroke-0);border-radius:var(--radius-md);font-size:var(--text-xs);color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);align-items:center;gap:6px;padding:6px 12px;font-weight:500;display:none}.tasks-page__select-mode-btn:hover{background:var(--bg-3);border-color:var(--stroke-1);color:var(--text-0)}.tasks-page__select-mode-btn.is-active{background:var(--accent-2);border-color:var(--accent-0);color:var(--accent-0)}.tasks-page__select-mode-btn svg{width:14px;height:14px}@media(max-width:640px){.tasks-page__select-mode-btn{display:inline-flex}.tasks-page.selection-mode .task-list-item__select{opacity:1}.tasks-page.selection-mode .task-list-item__meta{display:none}.task-list-item{padding:var(--space-2)var(--space-3)}.task-list-item__content{min-width:0}.task-list-item__title{font-size:var(--text-sm);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.task-list-item__subtitle{display:none}.task-list-item__meta{flex-shrink:0}.task-list-item__date{display:none}.task-list-item__complete{width:24px;height:24px}.tasks-page__header{gap:var(--space-2);flex-wrap:wrap}.tasks-page__filters{padding-bottom:var(--space-2);-webkit-overflow-scrolling:touch;scrollbar-width:none;overflow-x:auto}.tasks-page__filters::-webkit-scrollbar{display:none}.tasks-page__filter-btn{white-space:nowrap;flex-shrink:0}.task-modal__chip-wrapper:before{content:"";z-index:9999;background:#0000004d;display:none;position:fixed;inset:0}.task-modal__chip-wrapper:has(.task-modal__dropdown):before{display:block}}.gmail-page{flex-direction:column;height:100%;display:flex}.gmail-page--loading,.gmail-page--not-connected{justify-content:center;align-items:center;min-height:400px;display:flex}.gmail-page__header{margin-bottom:var(--space-4);justify-content:space-between;align-items:center;display:flex}.gmail-page__header h1{font-size:var(--text-2xl);font-weight:600}.gmail-page__content{gap:var(--space-4);flex:1;min-height:0;display:flex}.gmail-page__sidebar{flex-shrink:0;width:200px}.gmail-page__main{flex:1;min-width:0}.gmail-connection-card{text-align:center;padding:var(--space-8)var(--space-4);flex-direction:column;justify-content:center;align-items:center;min-height:400px;display:flex}.gmail-connection-card__icon{border-radius:var(--radius-xl);color:#fff;width:96px;height:96px;margin-bottom:var(--space-6);background:linear-gradient(135deg,#ea4335,#c5221f);justify-content:center;align-items:center;display:flex}.gmail-connection-card__title{font-size:var(--text-2xl);color:var(--text-0);margin-bottom:var(--space-2);font-weight:600}.gmail-connection-card__description{font-size:var(--text-md);color:var(--text-2);max-width:400px;margin-bottom:var(--space-6);line-height:1.6}.gmail-connection-card__button{justify-content:center;align-items:center;gap:var(--space-2);display:inline-flex}.btn-gmail{color:#fff;font-size:var(--text-md);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);background:#ea4335;border:none;padding:12px 24px;font-weight:500}.btn-gmail:hover{background:#c5221f}.btn-gmail:disabled{opacity:.6;cursor:not-allowed}.gmail-folder-nav{gap:var(--space-1);flex-direction:column;display:flex}.gmail-folder-nav__item{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);border-radius:var(--radius-md);color:var(--text-1);font-size:var(--text-sm);cursor:pointer;text-align:left;background:0 0;border:none;width:100%;transition:all .15s;display:flex}.gmail-folder-nav__item:hover{background:var(--bg-2);color:var(--text-0)}.gmail-folder-nav__item--active{background:var(--bg-3);color:var(--text-0)}.gmail-folder-nav__icon{color:var(--text-2);display:flex}.gmail-folder-nav__item--active .gmail-folder-nav__icon{color:var(--text-1)}.gmail-folder-nav__label{flex:1}.gmail-folder-nav__badge{background:var(--accent);color:#fff;font-size:var(--text-xs);border-radius:var(--radius-full);padding:1px 6px;font-weight:500}.gmail-inbox{flex-direction:column;height:100%;display:flex}.gmail-inbox--loading{justify-content:center;align-items:center;min-height:200px;display:flex}.gmail-inbox__header{justify-content:space-between;align-items:center;gap:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--border);display:flex}.gmail-inbox__search{align-items:center;gap:var(--space-2);max-width:400px;padding:var(--space-2)var(--space-3);background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-2);flex:1;display:flex}.gmail-inbox__search:focus-within{border-color:var(--accent)}.gmail-inbox__search input{font-size:var(--text-sm);color:var(--text-0);background:0 0;border:none;outline:none;flex:1}.gmail-inbox__search input::placeholder{color:var(--text-2)}.gmail-inbox__search-clear{cursor:pointer;color:var(--text-2);border-radius:var(--radius-sm);background:0 0;border:none;justify-content:center;align-items:center;padding:2px;display:flex}.gmail-inbox__search-clear:hover{background:var(--bg-3);color:var(--text-0)}.gmail-inbox__list{flex:1;overflow-y:auto}.gmail-inbox__empty{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-8);color:var(--text-2);flex-direction:column;display:flex}.gmail-message-row{align-items:flex-start;gap:var(--space-3);padding:var(--space-3);border-bottom:1px solid var(--border-light);cursor:pointer;transition:background .15s;display:flex}.gmail-message-row:hover,.gmail-message-row--unread{background:var(--bg-2)}.gmail-message-row--unread .gmail-message-row__sender,.gmail-message-row--unread .gmail-message-row__subject{color:var(--text-0);font-weight:600}.gmail-message-row__avatar{border-radius:var(--radius-full);background:var(--accent-muted);width:36px;height:36px;color:var(--accent);font-size:var(--text-sm);flex-shrink:0;justify-content:center;align-items:center;font-weight:500;display:flex}.gmail-message-row__content{flex:1;min-width:0}.gmail-message-row__header{justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:2px;display:flex}.gmail-message-row__sender{font-size:var(--text-sm);color:var(--text-1);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.gmail-message-row__meta{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.gmail-message-row__attachment{color:var(--text-2)}.gmail-message-row__date{font-size:var(--text-xs);color:var(--text-2);white-space:nowrap}.gmail-message-row__subject{font-size:var(--text-sm);color:var(--text-0);white-space:nowrap;text-overflow:ellipsis;margin-bottom:2px;overflow:hidden}.gmail-message-row__snippet{font-size:var(--text-xs);color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.gmail-message-row__star{padding:var(--space-1);color:var(--text-2);cursor:pointer;background:0 0;border:none;flex-shrink:0;transition:color .15s}.gmail-message-row__star:hover,.gmail-message-row__star--active{color:var(--warning)}.gmail-message-row__actions{align-items:center;gap:var(--space-1);flex-shrink:0;display:flex}.gmail-message-row__delete{padding:var(--space-1);color:var(--text-2);cursor:pointer;opacity:0;background:0 0;border:none;flex-shrink:0;transition:color .15s,opacity .15s}.gmail-message-row:hover .gmail-message-row__delete{opacity:1}.gmail-message-row__delete:hover{color:var(--danger)}.gmail-detail-view{flex-direction:column;height:100%;display:flex}.gmail-detail-view--loading{justify-content:center;align-items:center;min-height:300px;display:flex}.gmail-detail-view__header{padding-bottom:var(--space-4);border-bottom:1px solid var(--border);margin-bottom:var(--space-4);justify-content:space-between;align-items:center;display:flex}.gmail-detail-view__header-left,.gmail-detail-view__header-right{align-items:center;gap:var(--space-2);display:flex}.gmail-detail-view__content{flex:1;overflow-y:auto}.gmail-detail-view__subject{font-size:var(--text-xl);margin-bottom:var(--space-4);font-weight:600}.gmail-detail-view__meta{margin-bottom:var(--space-3);justify-content:space-between;align-items:flex-start;display:flex}.gmail-detail-view__sender{align-items:center;gap:var(--space-3);display:flex}.gmail-detail-view__sender-avatar{border-radius:var(--radius-full);background:var(--accent-muted);width:40px;height:40px;color:var(--accent);font-size:var(--text-base);justify-content:center;align-items:center;font-weight:500;display:flex}.gmail-detail-view__sender-info{flex-direction:column;gap:2px;display:flex}.gmail-detail-view__sender-name{font-weight:500}.gmail-detail-view__sender-email{font-size:var(--text-xs);color:var(--text-2)}.gmail-detail-view__date{font-size:var(--text-sm);color:var(--text-2)}.gmail-detail-view__recipients{font-size:var(--text-sm);color:var(--text-1);margin-bottom:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--border-light)}.gmail-detail-view__recipients-label{color:var(--text-2)}.gmail-detail-view__body{font-size:var(--text-sm);line-height:1.6}.gmail-detail-view__body--loading{align-items:center;gap:var(--space-2);color:var(--text-2);padding:var(--space-4);display:flex}.gmail-detail-view__body--html{background:var(--bg-1);padding:var(--space-4);border-radius:var(--radius-md);border:1px solid var(--border-light)}.gmail-detail-view__body--html img{max-width:100%;height:auto}.gmail-detail-view__body--light{color:#1a1a1a!important;background:#fff!important}.gmail-detail-view__body--light *{color:inherit}.gmail-detail-view__body--light a{color:#1a73e8}.gmail-detail-view__body--text{white-space:pre-wrap;font-family:inherit}.gmail-detail-view__more-actions{position:relative}.gmail-detail-view__more-menu{margin-top:var(--space-1);background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:100;min-width:160px;position:absolute;top:100%;right:0;overflow:hidden}.gmail-detail-view__more-menu button{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2)var(--space-3);cursor:pointer;font-size:var(--text-sm);color:var(--text-1);text-align:left;background:0 0;border:none;transition:background .15s;display:flex}.gmail-detail-view__more-menu button:hover{background:var(--bg-2)}.gmail-contact-picker{width:100%;position:relative}.gmail-contact-picker__selected{gap:var(--space-1);padding:var(--space-1);background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius-md);flex-wrap:wrap;min-height:36px;display:flex}.gmail-contact-picker__chip{background:var(--bg-3);border-radius:var(--radius-full);font-size:var(--text-xs);color:var(--text-0);align-items:center;gap:4px;padding:2px 8px;display:inline-flex}.gmail-contact-picker__chip-remove{cursor:pointer;color:var(--text-2);background:0 0;border:none;padding:0;display:flex}.gmail-contact-picker__chip-remove:hover{color:var(--danger)}.gmail-contact-picker__input{min-width:100px;font-size:var(--text-sm);color:var(--text-0);padding:var(--space-1);background:0 0;border:none;outline:none;flex:1}.gmail-contact-picker__dropdown{margin-top:var(--space-1);background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:100;max-height:200px;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.gmail-contact-picker__loading,.gmail-contact-picker__empty{padding:var(--space-3);text-align:center;color:var(--text-2);font-size:var(--text-sm);justify-content:center;align-items:center;gap:var(--space-2);display:flex}.gmail-contact-picker__option{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2)var(--space-3);cursor:pointer;text-align:left;background:0 0;border:none;transition:background .15s;display:flex}.gmail-contact-picker__option:hover{background:var(--bg-2)}.gmail-contact-picker__option-avatar{border-radius:var(--radius-full);background:var(--accent-muted);width:28px;height:28px;color:var(--accent);font-size:var(--text-xs);justify-content:center;align-items:center;font-weight:500;display:flex;overflow:hidden}.gmail-contact-picker__option-avatar img{object-fit:cover;width:100%;height:100%}.gmail-contact-picker__option-info{flex:1;min-width:0}.gmail-contact-picker__option-name{font-size:var(--text-sm);color:var(--text-0);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.gmail-contact-picker__option-email{font-size:var(--text-xs);color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.gmail-contact-picker__add-new{color:var(--accent);cursor:pointer;font-size:var(--text-sm);background:0 0;border:none}.gmail-contact-picker__add-new:hover{text-decoration:underline}.gmail-compose{background:var(--bg-1);border-radius:var(--radius-xl);border:1px solid var(--border);width:100%;max-width:600px;max-height:80vh;box-shadow:var(--shadow-xl);flex-direction:column;display:flex}.gmail-compose--minimized{bottom:var(--space-4);right:var(--space-4);border-radius:var(--radius-md);z-index:1000;width:280px;position:fixed}.gmail-compose__minimized-header{padding:var(--space-2)var(--space-3);cursor:pointer;background:var(--bg-2);border-radius:var(--radius-md);justify-content:space-between;align-items:center;display:flex}.gmail-compose__minimized-header span{font-size:var(--text-sm);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.gmail-compose__minimized-actions{gap:var(--space-1);display:flex}.gmail-compose__header{padding:var(--space-3)var(--space-4);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.gmail-compose__header h2{font-size:var(--text-base);font-weight:500}.gmail-compose__header-actions{gap:var(--space-1);display:flex}.gmail-compose__recipients{align-items:flex-start;gap:var(--space-2);padding:var(--space-2)var(--space-4);border-bottom:1px solid var(--border-light);display:flex}.gmail-compose__recipients label{font-size:var(--text-sm);color:var(--text-2);padding-top:var(--space-2);flex-shrink:0;width:30px}.gmail-compose__recipients .gmail-contact-picker{flex:1}.gmail-compose__cc-bcc-toggles{gap:var(--space-1);flex-shrink:0;display:flex}.gmail-compose__cc-toggle{color:var(--text-2);font-size:var(--text-sm);cursor:pointer;padding:var(--space-2);background:0 0;border:none;flex-shrink:0}.gmail-compose__cc-toggle:hover{color:var(--text-1)}.gmail-compose__subject{padding:var(--space-2)var(--space-4);border-bottom:1px solid var(--border-light)}.gmail-compose__subject input{width:100%;font-size:var(--text-sm);color:var(--text-0);padding:var(--space-1)0;background:0 0;border:none;outline:none}.gmail-compose__body{padding:var(--space-3)var(--space-4);flex:1;min-height:200px;overflow-y:auto}.gmail-compose__body textarea{width:100%;height:100%;min-height:180px;font-size:var(--text-sm);color:var(--text-0);resize:none;background:0 0;border:none;outline:none;font-family:inherit;line-height:1.6}.gmail-compose__footer{align-items:center;gap:var(--space-3);padding:var(--space-3)var(--space-4);border-top:1px solid var(--border);display:flex}.gmail-compose__shortcut{font-size:var(--text-xs);color:var(--text-2)}.gmail-compose__toolbar{align-items:center;gap:var(--space-1);padding:var(--space-2)var(--space-4);border-bottom:1px solid var(--border);background:var(--bg-1);flex-wrap:wrap;display:flex}.gmail-compose__toolbar-btn{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--text-1);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:all .15s;display:flex}.gmail-compose__toolbar-btn:hover{background:var(--bg-2);color:var(--text-0)}.gmail-compose__toolbar-btn:active{background:var(--bg-3)}.gmail-compose__toolbar-divider{background:var(--border);width:1px;height:20px;margin:0 var(--space-1)}.gmail-compose__toolbar-btn--dropdown{width:auto;padding:0 var(--space-1);gap:2px}.gmail-compose__toolbar-btn--dropdown svg:last-child{opacity:.5}.gmail-compose__toolbar-dropdown{position:relative}.gmail-compose__dropdown-menu{z-index:1000;min-width:100px;padding:var(--space-1);background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);position:absolute;top:100%;left:0}.gmail-compose__dropdown-item{width:100%;padding:var(--space-2)var(--space-3);color:var(--text-0);font-size:var(--text-sm);text-align:left;border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;display:block}.gmail-compose__dropdown-item:hover{background:var(--bg-2)}.gmail-compose__color-picker{padding:var(--space-2);grid-template-columns:repeat(5,1fr);gap:4px;min-width:140px;display:grid}.gmail-compose__color-swatch{border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;width:24px;height:24px;transition:transform .15s,box-shadow .15s}.gmail-compose__color-swatch:hover{transform:scale(1.15);box-shadow:0 2px 8px #0003}.gmail-compose__color-swatch--none{background:var(--bg-2);color:var(--text-2);justify-content:center;align-items:center;display:flex}.gmail-compose__editor{width:100%;min-height:180px;font-size:var(--text-sm);color:var(--text-0);outline:none;line-height:1.6}.gmail-compose__editor:empty:before{content:attr(data-placeholder);color:var(--text-2);pointer-events:none}.gmail-compose__editor img{border-radius:var(--radius-sm);max-width:100%;height:auto;margin:var(--space-2)0}.gmail-compose__editor a{color:var(--primary);text-decoration:underline}.gmail-compose__editor ul,.gmail-compose__editor ol{margin:var(--space-2)0;padding-left:var(--space-5)}.gmail-compose__editor li{margin:var(--space-1)0}.gmail-compose__attachments{gap:var(--space-2);padding:var(--space-3)var(--space-4);border-top:1px solid var(--border);flex-wrap:wrap;display:flex}.gmail-compose__attachment{align-items:center;gap:var(--space-2);padding:var(--space-2);background:var(--bg-1);border:1px solid var(--border);border-radius:var(--radius-md);max-width:200px;display:flex}.gmail-compose__attachment-preview{object-fit:cover;border-radius:var(--radius-sm);width:40px;height:40px}.gmail-compose__attachment-icon{background:var(--bg-2);border-radius:var(--radius-sm);width:40px;height:40px;color:var(--text-1);justify-content:center;align-items:center;display:flex}.gmail-compose__attachment-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.gmail-compose__attachment-name{font-size:var(--text-xs);color:var(--text-0);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.gmail-compose__attachment-size{color:var(--text-2);font-size:10px}.gmail-compose__attachment-remove{border-radius:var(--radius-sm);color:var(--text-2);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:4px;transition:all .15s;display:flex}.gmail-compose__attachment-remove:hover{background:var(--bg-2);color:var(--danger)}.spinning{animation:1s linear infinite spin}.btn-icon.starred{color:var(--warning)}@media(max-width:768px){.gmail-page__content{flex-direction:column}.gmail-page__sidebar{width:100%}.gmail-folder-nav{gap:var(--space-2);padding-bottom:var(--space-2);flex-direction:row;overflow-x:auto}.gmail-folder-nav__item{padding:var(--space-2);flex-shrink:0}.gmail-folder-nav__label{display:none}.gmail-compose{max-width:100%;margin:var(--space-2)}}.whiteboard-page{background:var(--bg-1);-webkit-user-select:none;user-select:none;touch-action:none;-webkit-touch-callout:none;flex-direction:column;width:100%;height:100%;display:flex;position:relative;overflow:hidden}.whiteboard-toolbar{padding:var(--space-2)var(--space-3);background:var(--bg-1);border-bottom:1px solid var(--stroke-0);z-index:100;justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.whiteboard-toolbar--top{flex-wrap:wrap}.whiteboard-toolbar--bottom{bottom:var(--space-4);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);background:var(--bg-2);padding:var(--space-2);gap:var(--space-2);box-shadow:var(--shadow-lg);position:absolute;left:50%;transform:translate(-50%)}.whiteboard-toolbar__section{align-items:center;gap:var(--space-1);display:flex}.whiteboard-toolbar__section--center{flex:none}.whiteboard-toolbar__section--right{margin-left:auto}.whiteboard-toolbar__divider{background:var(--stroke-1);width:1px;height:20px;margin:0 var(--space-2)}.whiteboard-toolbar__tools{background:var(--bg-2);border-radius:var(--radius-md);border:1px solid var(--stroke-0);align-items:center;gap:2px;padding:2px;display:flex}.whiteboard-toolbar__menu-btn{background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-md);width:36px;height:36px;color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;display:none}.whiteboard-toolbar__menu-btn:hover{background:var(--bg-3);color:var(--text-0)}.whiteboard-tool-btn{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.whiteboard-tool-btn:hover:not(:disabled){background:var(--bg-3);color:var(--text-0)}.whiteboard-tool-btn:disabled{opacity:.4;cursor:not-allowed}.whiteboard-tool-btn.is-active{background:var(--accent-0);color:#fff}.whiteboard-tool-btn.is-active:hover{background:var(--accent-1)}.whiteboard-zoom-level{font-size:var(--text-xs);color:var(--text-1);text-align:center;min-width:48px;font-weight:500}.whiteboard-color-picker{position:relative}.whiteboard-color-btn{border:2px solid var(--stroke-1);border-radius:var(--radius-md);cursor:pointer;width:32px;height:32px;transition:all var(--transition-fast);color:#ffffffb3;justify-content:center;align-items:center;display:flex}.whiteboard-color-btn:hover{border-color:var(--stroke-2);transform:scale(1.05)}.whiteboard-color-dropdown{margin-top:var(--space-2);padding:var(--space-3);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:200;min-width:200px;position:absolute;top:100%;left:50%;transform:translate(-50%)}.whiteboard-color-grid{margin-bottom:var(--space-3);grid-template-columns:repeat(8,1fr);gap:4px;display:grid}.whiteboard-color-grid--small{grid-template-columns:repeat(9,1fr);margin-bottom:0}.whiteboard-color-swatch{border-radius:var(--radius-sm);cursor:pointer;width:20px;height:20px;transition:all var(--transition-fast);color:var(--text-2);border:2px solid #0000;justify-content:center;align-items:center;display:flex}.whiteboard-color-swatch:hover{border-color:#ffffff4d;transform:scale(1.15)}.whiteboard-color-swatch.is-active{box-shadow:0 0 0 2px var(--accent-0);border-color:#fff}.whiteboard-color-section{padding-top:var(--space-2);border-top:1px solid var(--stroke-0);margin-top:var(--space-2)}.whiteboard-color-label{font-size:var(--text-xs);color:var(--text-2);margin-bottom:var(--space-2);text-transform:uppercase;letter-spacing:.5px;display:block}.whiteboard-stroke-options{align-items:center;gap:var(--space-2);display:flex}.whiteboard-stroke-btn{background:var(--bg-3);border-radius:var(--radius-sm);cursor:pointer;width:32px;height:32px;color:var(--text-1);transition:all var(--transition-fast);border:1px solid #0000;justify-content:center;align-items:center;display:flex}.whiteboard-stroke-btn:hover{background:var(--bg-3);border-color:var(--stroke-2)}.whiteboard-stroke-btn.is-active{border-color:var(--accent-0);color:var(--text-0)}.whiteboard-canvas-container{touch-action:none;flex:1;position:relative;overflow:hidden}.whiteboard-canvas{cursor:crosshair;touch-action:none;-webkit-tap-highlight-color:transparent;width:100%;height:100%;display:block}.whiteboard-text-input{font-family:var(--font-sans);z-index:50;background:0 0;border:none;outline:none;min-width:100px;padding:0;position:absolute}.whiteboard-text-input::placeholder{color:var(--text-3)}.whiteboard-mobile-menu{background:var(--bg-2);border-bottom:1px solid var(--stroke-1);padding:var(--space-3);z-index:150;animation:.15s ease-out slideDown;position:absolute;top:52px;left:0;right:0}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.whiteboard-mobile-menu__tools{gap:var(--space-2);grid-template-columns:repeat(5,1fr);display:grid}.whiteboard-mobile-tool{align-items:center;gap:var(--space-1);padding:var(--space-2);background:var(--bg-3);border:1px solid var(--stroke-0);border-radius:var(--radius-md);color:var(--text-1);font-size:var(--text-xs);cursor:pointer;transition:all var(--transition-fast);flex-direction:column;display:flex}.whiteboard-mobile-tool:hover{background:var(--bg-3);color:var(--text-0);border-color:var(--stroke-1)}.whiteboard-mobile-tool.is-active{background:var(--accent-0);color:#fff;border-color:var(--accent-0)}@media(max-width:768px){.whiteboard-toolbar__tools{display:none}.whiteboard-toolbar__menu-btn{display:flex}.whiteboard-toolbar__section--center{margin-top:var(--space-2);flex:100%;order:3;justify-content:center}.whiteboard-toolbar--bottom{left:var(--space-2);right:var(--space-2);justify-content:center;transform:none}.whiteboard-color-dropdown{top:auto;bottom:80px;left:var(--space-2);right:var(--space-2);max-width:none;position:fixed;transform:none}.whiteboard-mobile-menu__tools{grid-template-columns:repeat(5,1fr)}}@media(max-width:480px){.whiteboard-toolbar{padding:var(--space-2)}.whiteboard-mobile-menu__tools{grid-template-columns:repeat(4,1fr)}.whiteboard-toolbar--bottom{bottom:var(--space-2)}}.whiteboard-canvas[data-tool=select]{cursor:default}.whiteboard-canvas[data-tool=pan]{cursor:grab}.whiteboard-canvas[data-tool=pan]:active{cursor:grabbing}.whiteboard-canvas[data-tool=text]{cursor:text}.whiteboard-canvas[data-tool=eraser]{cursor:crosshair}.landing-page{background:var(--bg-0);min-height:100vh;overflow-x:hidden}.landing-nav{z-index:100;padding:var(--space-4)var(--space-6);transition:all var(--transition-base);position:fixed;top:0;left:0;right:0}.landing-nav.scrolled{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--stroke-0);background:#0d0d0dcc}.landing-nav__inner{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;display:flex}.landing-logo{align-items:center;gap:var(--space-3);text-decoration:none;display:flex}.landing-logo__icon{background:var(--text-0);border-radius:50%;width:32px;height:32px}.landing-logo__text{font-size:var(--text-lg);color:var(--text-0);font-weight:600}.landing-nav__actions{align-items:center;gap:var(--space-4);display:flex}.landing-nav__link{font-size:var(--text-sm);color:var(--text-1);transition:color var(--transition-fast);font-weight:500;text-decoration:none}.landing-nav__link:hover{color:var(--text-0)}.landing-nav__btn{align-items:center;gap:var(--space-2);background:var(--text-0);color:var(--bg-0);font-size:var(--text-sm);border-radius:var(--radius-md);transition:all var(--transition-fast);padding:10px 16px;font-weight:500;text-decoration:none;display:inline-flex}.landing-nav__btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #ffffff26}.hero-section{min-height:100vh;padding:120px var(--space-6)60px;flex-direction:column;justify-content:flex-start;align-items:center;display:flex;position:relative;overflow:hidden}.hero-section__bg{pointer-events:none;position:absolute;inset:0}.hero-glow{filter:blur(100px);opacity:.4;border-radius:50%;position:absolute}.hero-glow--1{background:radial-gradient(#6b72804d,#0000 70%);width:600px;height:400px;top:-20%;left:50%;transform:translate(-50%)}.hero-glow--2{background:radial-gradient(#3b82f626,#0000 70%);width:400px;height:400px;top:30%;right:-10%}.hero-grid{background-image:linear-gradient(#ffffff05 1px,#0000 1px),linear-gradient(90deg,#ffffff05 1px,#0000 1px);background-size:60px 60px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(60% 50% at 50% 30%,#000,#0000);mask-image:radial-gradient(60% 50% at 50% 30%,#000,#0000)}.hero-content{z-index:1;text-align:center;opacity:0;max-width:800px;transition:all .8s cubic-bezier(.16,1,.3,1);position:relative;transform:translateY(20px)}.hero-content.visible{opacity:1;transform:translateY(0)}.hero-badge{align-items:center;gap:var(--space-2);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-full);font-size:var(--text-xs);color:var(--text-1);margin-bottom:var(--space-6);padding:6px 14px;font-weight:500;animation:3s ease-in-out infinite badge-glow;display:inline-flex}@keyframes badge-glow{0%,to{box-shadow:0 0 #6b728000}50%{box-shadow:0 0 20px #6b72801a}}.hero-badge svg{color:var(--warning)}.hero-title{color:var(--text-0);letter-spacing:-.02em;margin-bottom:var(--space-5);font-size:56px;font-weight:600;line-height:1.1}.hero-title__accent{background:linear-gradient(135deg,var(--text-0)0%,var(--text-1)100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.hero-description{font-size:var(--text-lg);color:var(--text-1);margin-bottom:var(--space-8);line-height:1.6}.hero-actions{justify-content:center;align-items:center;gap:var(--space-4);margin-bottom:var(--space-8);display:flex}.hero-btn{align-items:center;gap:var(--space-2);font-size:var(--text-sm);border-radius:var(--radius-md);transition:all var(--transition-base);padding:14px 24px;font-weight:500;text-decoration:none;display:inline-flex}.hero-btn--primary{background:var(--text-0);color:var(--bg-0)}.hero-btn--primary:hover{transform:translateY(-2px);box-shadow:0 8px 24px #ffffff26}.hero-btn--secondary{background:var(--bg-2);color:var(--text-0);border:1px solid var(--stroke-1)}.hero-btn--secondary:hover{background:var(--bg-3);border-color:var(--stroke-2)}.hero-stats{justify-content:center;align-items:center;gap:var(--space-6);display:flex}.hero-stat{flex-direction:column;align-items:center;gap:2px;display:flex}.hero-stat__value{font-size:var(--text-lg);color:var(--text-0);font-weight:600}.hero-stat__label{font-size:var(--text-xs);color:var(--text-2)}.hero-stat__divider{background:var(--stroke-1);width:1px;height:32px}.hero-preview{z-index:1;width:100%;max-width:1000px;margin-top:var(--space-8);opacity:0;transition:all 1s cubic-bezier(.16,1,.3,1) .2s;position:relative;transform:translateY(40px)scale(.95)}.hero-preview.visible{opacity:1;transform:translateY(0)scale(1)}.app-preview{position:relative}.app-preview__window{background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 20px 60px #0006,inset 0 0 0 1px #ffffff0d}.app-preview__header{padding:var(--space-3)var(--space-4);background:var(--bg-2);border-bottom:1px solid var(--stroke-0);align-items:center;display:flex}.app-preview__dots{gap:6px;display:flex}.app-preview__dots span{background:var(--stroke-2);border-radius:50%;width:10px;height:10px}.app-preview__dots span:first-child{background:#ff5f57}.app-preview__dots span:nth-child(2){background:#ffbd2e}.app-preview__dots span:nth-child(3){background:#28c840}.app-preview__title{text-align:center;font-size:var(--text-xs);color:var(--text-2);flex:1}.app-preview__spacer{width:52px}.app-preview__content{min-height:400px;display:flex}.app-preview__sidebar{width:160px;padding:var(--space-3);background:var(--bg-1);border-right:1px solid var(--stroke-0)}.preview-nav-item{align-items:center;gap:var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-xs);color:var(--text-2);cursor:default;transition:all var(--transition-fast);margin-bottom:2px;padding:8px 10px;display:flex}.preview-nav-item.active{background:var(--bg-2);color:var(--text-0)}.app-preview__main{padding:var(--space-4);background:var(--bg-0);flex:1}.preview-header{margin-bottom:var(--space-4)}.preview-date{font-size:var(--text-md);color:var(--text-0);font-weight:600}.preview-days{gap:var(--space-2);grid-template-columns:repeat(7,1fr);display:grid}.preview-day{padding:var(--space-2);background:var(--bg-1);border:1px solid var(--stroke-0);border-radius:var(--radius-sm);min-height:200px}.preview-day.today{border-color:var(--text-2)}.preview-day__name{font-size:var(--text-xs);color:var(--text-2);margin-bottom:var(--space-2);font-weight:500;display:block}.preview-day.today .preview-day__name{color:var(--text-0)}.preview-tasks{flex-direction:column;gap:4px;display:flex}.preview-task{background:var(--bg-2);border-radius:var(--radius-xs);opacity:0;align-items:center;gap:6px;padding:6px 8px;animation:.5s forwards task-fade-in;display:flex}.preview-task:first-child{animation-delay:.5s}.preview-task:nth-child(2){animation-delay:.7s}.preview-task:nth-child(3){animation-delay:.9s}@keyframes task-fade-in{to{opacity:1}}.preview-task.completed{opacity:.6}.preview-task.completed .preview-task__text{color:var(--text-2);text-decoration:line-through}.preview-task__indicator{border-radius:50%;flex-shrink:0;width:6px;height:6px}.preview-task__text{color:var(--text-1);white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.app-preview__reflection{background:linear-gradient(to bottom,var(--bg-1)0%,transparent 100%);opacity:.1;pointer-events:none;height:60%;position:absolute;bottom:-60%;left:0;right:0;transform:scaleY(-1);-webkit-mask-image:linear-gradient(#000,#0000);mask-image:linear-gradient(#000,#0000)}.features-section{padding:100px var(--space-6);max-width:1200px;margin:0 auto}.features-header{text-align:center;margin-bottom:60px}.features-title{color:var(--text-0);margin-bottom:var(--space-4);font-size:36px;font-weight:600}.features-subtitle{font-size:var(--text-md);color:var(--text-1)}.features-grid{gap:var(--space-6);grid-template-columns:repeat(3,1fr);display:grid}.feature-card{padding:var(--space-6);background:var(--bg-1);border:1px solid var(--stroke-0);border-radius:var(--radius-lg);opacity:0;transition:all .5s cubic-bezier(.16,1,.3,1);transform:translateY(20px)}.feature-card.visible{opacity:1;transform:translateY(0)}.feature-card:hover{border-color:var(--stroke-1);transform:translateY(-4px)}.feature-card__icon{background:var(--bg-2);border-radius:var(--radius-md);width:48px;height:48px;color:var(--text-1);margin-bottom:var(--space-4);justify-content:center;align-items:center;display:flex}.feature-card__title{font-size:var(--text-md);color:var(--text-0);margin-bottom:var(--space-2);font-weight:600}.feature-card__description{font-size:var(--text-sm);color:var(--text-1);line-height:1.5}.bento-section{padding:60px var(--space-6)100px;max-width:1200px;margin:0 auto}.bento-grid{gap:var(--space-4);opacity:0;grid-template-rows:auto auto;grid-template-columns:repeat(4,1fr);transition:all .8s cubic-bezier(.16,1,.3,1);display:grid;transform:translateY(20px)}.bento-grid.visible{opacity:1;transform:translateY(0)}.bento-card{background:var(--bg-1);border:1px solid var(--stroke-0);border-radius:var(--radius-lg);padding:var(--space-5);transition:all var(--transition-base);flex-direction:column;display:flex;overflow:hidden}.bento-card:hover{border-color:var(--stroke-1);transform:translateY(-2px)}.bento-card--large{grid-area:span 2/span 2}.bento-card--medium{grid-column:span 1}.bento-card--wide{grid-column:span 2}.bento-card__content{flex:1}.bento-card__icon{background:var(--bg-2);border-radius:var(--radius-md);width:40px;height:40px;color:var(--text-1);margin-bottom:var(--space-4);justify-content:center;align-items:center;display:flex}.bento-card__title{font-size:var(--text-md);color:var(--text-0);margin-bottom:var(--space-2);font-weight:600}.bento-card__text{font-size:var(--text-sm);color:var(--text-1);line-height:1.5}.bento-card__visual{margin-top:var(--space-4)}.mini-calendar{height:120px;padding:var(--space-3);background:var(--bg-2);border-radius:var(--radius-md);justify-content:space-between;align-items:flex-end;display:flex}.mini-day{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;height:100%;display:flex}.mini-day__bar{background:linear-gradient(to top,var(--success),var(--success-muted));border-radius:var(--radius-xs);transform-origin:bottom;width:70%;animation:1s forwards bar-grow;transform:scaleY(0)}@keyframes bar-grow{to{transform:scaleY(1)}}.mini-day:first-child .mini-day__bar{animation-delay:.1s}.mini-day:nth-child(2) .mini-day__bar{animation-delay:.2s}.mini-day:nth-child(3) .mini-day__bar{animation-delay:.3s}.mini-day:nth-child(4) .mini-day__bar{animation-delay:.4s}.mini-day:nth-child(5) .mini-day__bar{animation-delay:.5s}.mini-day:nth-child(6) .mini-day__bar{animation-delay:.6s}.mini-day:nth-child(7) .mini-day__bar{animation-delay:.7s}.mini-timer{background:var(--bg-2);border-radius:var(--radius-md);justify-content:center;align-items:center;height:80px;display:flex}.mini-timer span{font-size:28px;font-weight:600;font-family:var(--font-mono);color:var(--text-0)}.mini-chart{justify-content:center;align-items:center;height:80px;display:flex}.mini-chart__ring{width:72px;height:72px;position:relative}.mini-chart__ring svg{width:100%;height:100%;transform:rotate(-90deg)}.mini-chart__ring span{font-size:var(--text-md);color:var(--text-0);justify-content:center;align-items:center;font-weight:600;display:flex;position:absolute;inset:0}.mini-editor{padding:var(--space-3);background:var(--bg-2);border-radius:var(--radius-md)}.mini-editor__line{font-size:var(--text-xs);color:var(--text-1);border-radius:var(--radius-xs);margin-bottom:4px;padding:4px 8px}.mini-editor__line.heading{font-size:var(--text-sm);color:var(--text-0);margin-bottom:8px;font-weight:600}.mini-editor__line.checkbox{align-items:center;gap:8px;display:flex}.mini-editor__line.checkbox:before{content:"";border:1px solid var(--stroke-2);border-radius:3px;width:12px;height:12px}.mini-editor__line.checkbox.checked:before{background:var(--success);border-color:var(--success)}.bento-header{text-align:center;margin-bottom:48px}.bento-title{color:var(--text-0);margin-bottom:var(--space-3);font-size:36px;font-weight:600}.bento-subtitle{font-size:var(--text-md);color:var(--text-1)}.mini-week-view{background:var(--bg-2);border-radius:var(--radius-md);padding:var(--space-3);height:200px}.mini-week-header{gap:var(--space-2);margin-bottom:var(--space-3);grid-template-columns:repeat(5,1fr);display:grid}.mini-week-day{text-align:center;padding:var(--space-2);border-radius:var(--radius-sm)}.mini-week-day.today{background:var(--bg-3)}.mini-week-day__name{font-size:var(--text-xs);color:var(--text-2);display:block}.mini-week-day__num{font-size:var(--text-sm);color:var(--text-0);font-weight:600;display:block}.mini-week-day.today .mini-week-day__name{color:var(--text-0)}.mini-week-tasks{gap:var(--space-2);row-gap:var(--space-2);grid-template-columns:repeat(5,1fr);display:grid}.mini-week-task{border-radius:var(--radius-xs);color:var(--text-0);white-space:nowrap;text-overflow:ellipsis;padding:6px 8px;font-size:10px;overflow:hidden}.mini-timer{background:var(--bg-2);border-radius:var(--radius-md);height:100px;padding:var(--space-3);flex-direction:column;justify-content:center;align-items:center;display:flex}.mini-timer__display{text-align:center}.mini-timer__time{font-size:28px;font-weight:600;font-family:var(--font-mono);color:var(--text-0);display:block}.mini-timer__label{font-size:var(--text-xs);color:var(--text-2);margin-top:2px;display:block}.mini-timer__controls{margin-top:var(--space-2)}.mini-timer__btn{background:var(--bg-3);border-radius:var(--radius-sm);font-size:var(--text-xs);color:var(--text-1);padding:4px 12px}.bento-card__icon--flame{color:#f59e0b;background:#f59e0b26}.mini-streak{background:var(--bg-2);border-radius:var(--radius-md);height:100px;padding:var(--space-3);flex-direction:column;justify-content:center;align-items:center;display:flex}.mini-streak__number{color:#f59e0b;font-size:36px;font-weight:700;line-height:1}.mini-streak__label{font-size:var(--text-xs);color:var(--text-2);margin-top:2px}.mini-streak__dots{margin-top:var(--space-2);gap:4px;display:flex}.mini-streak__dot{background:var(--bg-3);border-radius:50%;width:8px;height:8px}.mini-streak__dot.active{background:#f59e0b}.mini-dashboard{gap:var(--space-2);background:var(--bg-2);border-radius:var(--radius-md);padding:var(--space-3);grid-template-columns:repeat(2,1fr);display:grid}.mini-widget{background:var(--bg-3);border-radius:var(--radius-sm);padding:var(--space-2)}.mini-widget--greeting{grid-column:span 2}.mini-widget__text{font-size:var(--text-xs);color:var(--text-0);font-weight:600}.mini-widget__sub{color:var(--text-2);font-size:10px}.mini-widget--weather{align-items:center;gap:var(--space-2);display:flex}.mini-widget__icon{font-size:18px}.mini-widget__temp{font-size:var(--text-sm);color:var(--text-0);font-weight:600}.mini-widget--stats{justify-content:center;align-items:center;gap:var(--space-2);display:flex}.mini-widget__ring{border:3px solid var(--success);border-right-color:#0000;border-radius:50%;width:24px;height:24px}.mini-widget__percent{font-size:var(--text-xs);color:var(--success);font-weight:600}.mini-widget--tasks{flex-direction:column;gap:4px;display:flex}.mini-widget__task{background:var(--stroke-1);border-radius:2px;height:8px}.mini-widget__task:first-child{width:80%}.mini-widget__task:nth-child(2){width:60%}.mini-widget__task:last-child{width:40%}.mini-insights{background:var(--bg-2);border-radius:var(--radius-md);padding:var(--space-3);height:100px}.mini-insights__bars{justify-content:space-between;align-items:flex-end;gap:4px;height:60px;display:flex}.mini-insights__bar{background:linear-gradient(to top,var(--info),var(--info-muted));transform-origin:bottom;border-radius:2px;flex:1;animation:.8s forwards bar-grow;transform:scaleY(0)}.mini-insights__bar:first-child{animation-delay:.1s}.mini-insights__bar:nth-child(2){animation-delay:.15s}.mini-insights__bar:nth-child(3){animation-delay:.2s}.mini-insights__bar:nth-child(4){animation-delay:.25s}.mini-insights__bar:nth-child(5){animation-delay:.3s}.mini-insights__bar:nth-child(6){animation-delay:.35s}.mini-insights__bar:nth-child(7){animation-delay:.4s}.mini-insights__labels{margin-top:var(--space-2);color:var(--text-2);justify-content:space-between;font-size:10px;display:flex}.mini-labels{gap:var(--space-2);background:var(--bg-2);border-radius:var(--radius-md);padding:var(--space-3);flex-wrap:wrap;display:flex}.mini-label{border-radius:var(--radius-full);padding:4px 10px;font-size:10px;font-weight:500}.mini-notes-editor{background:var(--bg-2);border-radius:var(--radius-md);padding:var(--space-3);height:180px}.mini-note__title{font-size:var(--text-sm);color:var(--text-0);margin-bottom:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--stroke-0);font-weight:600}.mini-note__content{flex-direction:column;gap:6px;display:flex}.mini-note__line{font-size:var(--text-xs);color:var(--text-1)}.mini-note__check{font-size:var(--text-xs);color:var(--text-1);align-items:center;gap:8px;display:flex}.mini-note__check:before{content:"";border:1px solid var(--stroke-2);border-radius:3px;flex-shrink:0;width:12px;height:12px}.mini-note__check.checked:before{background:var(--success);border-color:var(--success)}.mini-note__check.checked{color:var(--text-2);text-decoration:line-through}.mini-note__code{font-family:var(--font-mono);color:var(--info);background:var(--bg-3);border-radius:var(--radius-xs);margin-top:4px;padding:6px 8px;font-size:10px}.mini-bookmarks{gap:var(--space-2);background:var(--bg-2);border-radius:var(--radius-md);padding:var(--space-3);flex-direction:column;display:flex}.mini-bookmark{align-items:center;gap:var(--space-2);background:var(--bg-3);border-radius:var(--radius-sm);font-size:var(--text-xs);color:var(--text-1);padding:6px 8px;display:flex}.mini-bookmark__favicon{border-radius:3px;width:14px;height:14px}.mini-integrations{gap:var(--space-3);background:var(--bg-2);border-radius:var(--radius-md);padding:var(--space-4);justify-content:center;display:flex}.mini-integration{background:var(--bg-3);border-radius:var(--radius-md);width:40px;height:40px;color:var(--text-1);transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex}.mini-integration:hover{transform:scale(1.1)}.mini-integration--spotify{color:#1db954}@media(max-width:1024px){.bento-title{font-size:28px}.mini-week-view{height:160px}.mini-week-header{grid-template-columns:repeat(3,1fr)}.mini-week-day:nth-child(4),.mini-week-day:nth-child(5){display:none}.mini-week-tasks{grid-template-columns:repeat(3,1fr)}.mini-week-task:nth-child(4),.mini-week-task:nth-child(5){display:none}}@media(max-width:768px){.bento-header{margin-bottom:32px}.bento-title{font-size:24px}.mini-notes-editor{height:140px}}.cta-section{padding:100px var(--space-6);background:linear-gradient(to bottom,var(--bg-0),var(--bg-1))}.cta-content{text-align:center;max-width:600px;margin:0 auto}.cta-title{color:var(--text-0);margin-bottom:var(--space-4);font-size:36px;font-weight:600}.cta-description{font-size:var(--text-md);color:var(--text-1);margin-bottom:var(--space-6)}.cta-btn{align-items:center;gap:var(--space-2);background:var(--text-0);color:var(--bg-0);font-size:var(--text-md);border-radius:var(--radius-md);transition:all var(--transition-base);padding:16px 32px;font-weight:500;text-decoration:none;display:inline-flex}.cta-btn:hover{transform:translateY(-2px);box-shadow:0 8px 24px #ffffff26}.landing-footer{padding:var(--space-6);border-top:1px solid var(--stroke-0)}.landing-footer__inner{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;display:flex}.landing-footer__logo{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-0);font-weight:600;display:flex}.landing-footer__logo .landing-logo__icon{width:24px;height:24px}.landing-footer__links{gap:var(--space-4);display:flex}.landing-footer__links a{font-size:var(--text-sm);color:var(--text-1);transition:color var(--transition-fast);text-decoration:none}.landing-footer__links a:hover{color:var(--text-0)}.landing-footer__copy{font-size:var(--text-xs);color:var(--text-2)}@media(max-width:1024px){.features-grid,.bento-grid{grid-template-columns:repeat(2,1fr)}.bento-card--large{grid-area:span 1/span 2}.app-preview__sidebar{display:none}.preview-days{grid-template-columns:repeat(5,1fr)}.preview-day:nth-child(6),.preview-day:nth-child(7){display:none}}@media(max-width:768px){.hero-section{padding:100px var(--space-4)40px}.hero-title{font-size:36px}.hero-description{font-size:var(--text-md)}.hero-actions{flex-direction:column;width:100%}.hero-btn{justify-content:center;width:100%}.hero-stats{gap:var(--space-4);flex-wrap:wrap}.hero-stat__divider{display:none}.features-grid{grid-template-columns:1fr}.features-title{font-size:28px}.bento-grid{grid-template-columns:1fr}.bento-card--large,.bento-card--wide{grid-column:span 1}.preview-days{grid-template-columns:repeat(3,1fr)}.preview-day:nth-child(4),.preview-day:nth-child(5){display:none}.landing-footer__inner{gap:var(--space-4);text-align:center;flex-direction:column}.cta-title{font-size:28px}}@media(max-width:480px){.landing-nav__actions{gap:var(--space-2)}.landing-nav__link{display:none}.landing-nav__btn{font-size:var(--text-xs);padding:8px 12px}.hero-title{font-size:28px}.app-preview__content{min-height:300px}.preview-days{grid-template-columns:repeat(2,1fr)}.preview-day:nth-child(3){display:none}}:root{--spotify-green:#1db954;--spotify-green-hover:#1ed760;--spotify-dark:#191414}.btn-spotify{background:var(--spotify-green);color:#fff;border-radius:var(--radius-lg);font-weight:600;font-size:var(--text-md);align-items:center;gap:var(--space-2);cursor:pointer;transition:all var(--transition-base);border:none;padding:12px 24px;display:flex}.btn-spotify:hover:not(:disabled){background:var(--spotify-green-hover);transform:translateY(-1px)}.btn-spotify:disabled{opacity:.6;cursor:not-allowed}.spotify-mini-player{background:var(--bg-0);border:1px solid var(--stroke-1);border-radius:var(--radius);z-index:9999;cursor:grab;width:280px;transition:all .2s;position:fixed;bottom:16px;left:240px;overflow:hidden;box-shadow:0 4px 20px #00000026}.spotify-mini-player.collapsed{border-radius:var(--radius-full);cursor:pointer;width:44px;height:44px}.spotify-mini-player.dragging{cursor:grabbing;box-shadow:0 8px 32px #0003,0 0 0 2px var(--spotify-green)}.spotify-mini-player__progress{background:var(--stroke-0);height:2px;position:absolute;top:0;left:0;right:0}.spotify-mini-player__progress-fill{background:var(--spotify-green);height:100%;transition:width 1s linear}.spotify-mini-player__content{align-items:center;gap:10px;padding:10px 10px 8px;display:flex}.spotify-mini-player__art{border-radius:var(--radius-sm);background:var(--bg-2);flex-shrink:0;width:36px;height:36px;position:relative;overflow:hidden}.spotify-mini-player__art img{object-fit:cover;width:100%;height:100%}.spotify-mini-player__art-placeholder{width:100%;height:100%;color:var(--text-3);justify-content:center;align-items:center;display:flex}.spotify-mini-player__info{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex;overflow:hidden}.spotify-mini-player__track{color:var(--text-0);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:500;line-height:1.3;overflow:hidden}.spotify-mini-player__artist{color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;font-size:11px;line-height:1.3;overflow:hidden}.spotify-mini-player__time{color:var(--text-3);font-variant-numeric:tabular-nums;text-align:right;padding:0 10px 6px;font-size:9px}.spotify-mini-player__controls{flex-shrink:0;align-items:center;gap:2px;display:flex}.spotify-mini-player__control{border-radius:var(--radius-full);width:24px;height:24px;color:var(--text-2);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:all .15s;display:flex}.spotify-mini-player__control:hover:not(:disabled){color:var(--text-0)}.spotify-mini-player__control:disabled{opacity:.4;cursor:not-allowed}.spotify-mini-player__control--play{background:var(--spotify-green);color:#fff;width:28px;height:28px}.spotify-mini-player__control--play:hover:not(:disabled){background:var(--spotify-green-hover);transform:scale(1.05)}.spotify-mini-player__control--volume{width:22px;height:22px;color:var(--text-3)}.spotify-mini-player__control--volume:hover:not(:disabled){color:var(--text-1)}.spotify-mini-player__actions{flex-shrink:0;align-items:center;gap:2px;display:flex}.spotify-mini-player__action{border-radius:var(--radius-sm);width:20px;height:20px;color:var(--text-3);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:all .15s;display:flex}.spotify-mini-player__action:hover{color:var(--text-1)}.spotify-mini-player__collapsed{cursor:pointer;justify-content:center;align-items:center;width:44px;height:44px;display:flex;position:relative}.spotify-mini-player__collapsed-art{border-radius:var(--radius-sm);background:var(--bg-2);width:32px;height:32px;color:var(--text-3);justify-content:center;align-items:center;display:flex;overflow:hidden}.spotify-mini-player__collapsed-art img{object-fit:cover;width:100%;height:100%}.spotify-mini-player__playing-indicator{background:var(--spotify-green);border:1px solid var(--bg-0);border-radius:50%;width:6px;height:6px;animation:2s infinite pulse;position:absolute;bottom:6px;right:6px}@keyframes slideOutLeft{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-12px)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}@keyframes slideOutRight{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(12px)}}@keyframes slideInRight{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}.spotify-mini-player__art.slide-left,.spotify-mini-player__info.slide-left,.spotify-mini-player__collapsed-art.slide-left{animation:.15s ease-out forwards slideOutLeft,.15s ease-out .15s forwards slideInLeft}.spotify-mini-player__art.slide-right,.spotify-mini-player__info.slide-right,.spotify-mini-player__collapsed-art.slide-right{animation:.15s ease-out forwards slideOutRight,.15s ease-out .15s forwards slideInRight}.spotify-page{padding:var(--space-6);flex-direction:column;max-width:800px;height:100%;margin:0 auto;display:flex;overflow:hidden}.spotify-page>.empty-state{flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:0;display:flex}.spotify-recent,.spotify-playlists,.spotify-devices,.spotify-now-playing{flex:1;min-height:0;overflow:hidden auto}.spotify-connect{text-align:center;padding:var(--space-8)var(--space-4);flex-direction:column;justify-content:center;align-items:center;min-height:400px;display:flex}.spotify-connect__icon{border-radius:var(--radius-xl);background:linear-gradient(135deg,var(--spotify-green)0%,#1aa34a 100%);color:#fff;width:96px;height:96px;margin-bottom:var(--space-6);justify-content:center;align-items:center;display:flex}.spotify-connect__icon--error{background:linear-gradient(135deg,var(--warning)0%,#d97706 100%)}.spotify-connect__title{font-size:var(--text-2xl);color:var(--text-0);margin-bottom:var(--space-2);font-weight:600}.spotify-connect__description{font-size:var(--text-md);color:var(--text-2);max-width:400px;margin-bottom:var(--space-6);line-height:1.6}.spotify-connect__note{font-size:var(--text-xs);color:var(--text-3);margin-top:var(--space-4)}.spotify-header{margin-bottom:var(--space-6);padding-bottom:var(--space-4);border-bottom:1px solid var(--stroke-0);justify-content:space-between;align-items:center;display:flex}.spotify-header__user{align-items:center;gap:var(--space-3);display:flex}.spotify-header__avatar{border-radius:var(--radius-full);object-fit:cover;width:48px;height:48px}.spotify-header__avatar-placeholder{border-radius:var(--radius-full);background:var(--bg-2);width:48px;height:48px;color:var(--text-2);justify-content:center;align-items:center;display:flex}.spotify-header__info{flex-direction:column;gap:2px;display:flex}.spotify-header__name{color:var(--text-0);font-weight:600}.spotify-header__badge{font-size:var(--text-xs);color:var(--spotify-green);font-weight:500}.spotify-header__actions{gap:var(--space-2);display:flex}.spotify-header__actions .btn.active{background:var(--spotify-green);color:#fff;border-color:var(--spotify-green)}.spotify-tabs{gap:var(--space-1);margin-bottom:var(--space-6);border-bottom:1px solid var(--stroke-0);padding-bottom:var(--space-2);display:flex}.spotify-tab{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);border-radius:var(--radius-md);color:var(--text-2);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;font-weight:500;display:flex}.spotify-tab:hover{background:var(--bg-1);color:var(--text-0)}.spotify-tab.active{background:var(--bg-2);color:var(--text-0)}.spotify-now-playing{align-items:center;gap:var(--space-4);padding:var(--space-4);flex-direction:column;display:flex}.spotify-now-playing__art{border-radius:var(--radius-lg);width:280px;min-width:280px;height:280px;min-height:280px;box-shadow:var(--shadow-lg);background:var(--bg-2);flex-shrink:0;overflow:hidden}.spotify-now-playing__art img{object-fit:cover;width:100%;height:100%}.spotify-now-playing__art-placeholder{width:100%;height:100%;color:var(--text-3);justify-content:center;align-items:center;display:flex}.spotify-now-playing__info{text-align:center}.spotify-now-playing__track{font-size:var(--text-xl);color:var(--text-0);margin-bottom:var(--space-1);font-weight:600}.spotify-now-playing__artist{font-size:var(--text-md);color:var(--text-1);margin-bottom:var(--space-1)}.spotify-now-playing__album{font-size:var(--text-sm);color:var(--text-2)}.spotify-now-playing__progress{align-items:center;gap:var(--space-3);width:100%;max-width:400px;display:flex}.spotify-now-playing__time{font-size:var(--text-xs);color:var(--text-2);font-variant-numeric:tabular-nums;min-width:40px}.spotify-now-playing__progress-slider{appearance:none;background:var(--bg-2);border-radius:var(--radius-full);cursor:pointer;flex:1;height:4px}.spotify-now-playing__progress-slider::-webkit-slider-thumb{appearance:none;background:var(--spotify-green);cursor:pointer;border-radius:50%;width:12px;height:12px}.spotify-now-playing__controls{align-items:center;gap:var(--space-3);display:flex}.spotify-control{border-radius:var(--radius-full);width:40px;height:40px;color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.spotify-control:hover:not(:disabled){color:var(--text-0);transform:scale(1.05)}.spotify-control:disabled{opacity:.5;cursor:not-allowed}.spotify-control.active{color:var(--spotify-green)}.spotify-control--play{background:var(--spotify-green);color:#fff;width:56px;height:56px}.spotify-control--play:hover:not(:disabled){background:var(--spotify-green-hover);color:#fff;transform:scale(1.08)}.spotify-now-playing__volume{align-items:center;gap:var(--space-2);width:100%;max-width:200px;display:flex}.spotify-now-playing__volume-slider{appearance:none;background:var(--bg-2);border-radius:var(--radius-full);cursor:pointer;flex:1;height:4px}.spotify-now-playing__volume-slider::-webkit-slider-thumb{appearance:none;background:var(--text-0);cursor:pointer;border-radius:50%;width:12px;height:12px}.spotify-now-playing__volume-value{font-size:var(--text-xs);color:var(--text-2);text-align:right;min-width:32px}.spotify-now-playing__device{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-2);padding:var(--space-2)var(--space-3);background:var(--bg-1);border-radius:var(--radius-md);display:flex}.spotify-now-playing__empty{justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-8);color:var(--text-2);flex-direction:column;display:flex}.spotify-now-playing__empty h3{font-size:var(--text-lg);color:var(--text-1);font-weight:500}.spotify-now-playing__empty p{font-size:var(--text-sm)}.spotify-track-list{gap:var(--space-1);flex-direction:column;display:flex}.spotify-track-item{align-items:center;gap:var(--space-3);padding:var(--space-2)var(--space-3);border-radius:var(--radius-md);transition:background var(--transition-fast);display:flex}.spotify-track-item:hover{background:var(--bg-1)}.spotify-track-item__art{border-radius:var(--radius-sm);background:var(--bg-2);width:40px;height:40px;color:var(--text-3);flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}.spotify-track-item__art img{object-fit:cover;width:100%;height:100%}.spotify-track-item__info{flex:1;min-width:0}.spotify-track-item__name{font-size:var(--text-sm);color:var(--text-0);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.spotify-track-item__artist{font-size:var(--text-xs);color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.spotify-track-item__duration{font-size:var(--text-xs);color:var(--text-2);font-variant-numeric:tabular-nums}.spotify-playlist-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(160px,1fr));display:grid}.spotify-playlist-card{background:var(--bg-1);border-radius:var(--radius-lg);padding:var(--space-3);cursor:pointer;transition:all var(--transition-base)}.spotify-playlist-card:hover{background:var(--bg-2);transform:translateY(-2px)}.spotify-playlist-card__art{aspect-ratio:1;border-radius:var(--radius-md);background:var(--bg-2);width:100%;color:var(--text-3);margin-bottom:var(--space-3);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.spotify-playlist-card__art img{object-fit:cover;width:100%;height:100%}.spotify-playlist-card__play{bottom:var(--space-2);right:var(--space-2);border-radius:var(--radius-full);background:var(--spotify-green);color:#fff;opacity:0;width:40px;height:40px;transition:all var(--transition-base);box-shadow:var(--shadow-md);justify-content:center;align-items:center;display:flex;position:absolute;transform:translateY(8px)}.spotify-playlist-card:hover .spotify-playlist-card__play{opacity:1;transform:translateY(0)}.spotify-playlist-card__info{flex-direction:column;gap:2px;display:flex}.spotify-playlist-card__name{font-size:var(--text-sm);color:var(--text-0);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.spotify-playlist-card__meta{font-size:var(--text-xs);color:var(--text-2)}.spotify-playlist-detail{gap:var(--space-4);flex-direction:column;display:flex}.spotify-playlist-detail__header{align-items:center;display:flex}.spotify-playlist-detail__back{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);color:var(--text-1);font-size:var(--text-sm);cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-base);background:0 0;border:none;display:flex}.spotify-playlist-detail__back:hover{background:var(--bg-2);color:var(--text-0)}.spotify-playlist-detail__info{gap:var(--space-4);padding:var(--space-4);background:var(--bg-1);border-radius:var(--radius-lg);border:1px solid var(--stroke-0);display:flex}.spotify-playlist-detail__art{border-radius:var(--radius-md);background:var(--bg-2);width:120px;height:120px;color:var(--text-3);flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}.spotify-playlist-detail__art img{object-fit:cover;width:100%;height:100%}.spotify-playlist-detail__meta{gap:var(--space-2);flex-direction:column;justify-content:center;display:flex}.spotify-playlist-detail__name{font-size:var(--text-xl);color:var(--text-0);margin:0;font-weight:600}.spotify-playlist-detail__count{font-size:var(--text-sm);color:var(--text-2);margin:0}.spotify-track-item--clickable{cursor:pointer;position:relative}.spotify-track-item--clickable:hover{background:var(--bg-2)}.spotify-track-item__number{width:24px;font-size:var(--text-sm);color:var(--text-3);text-align:center;flex-shrink:0}.spotify-track-item--clickable:hover .spotify-track-item__number{visibility:hidden}.spotify-track-item__play-icon{color:var(--text-0);opacity:0;transition:opacity var(--transition-base);position:absolute;top:50%;left:12px;transform:translateY(-50%)}.spotify-track-item--clickable:hover .spotify-track-item__play-icon{opacity:1}.spotify-device-list{gap:var(--space-2);flex-direction:column;display:flex}.spotify-device-item{align-items:center;gap:var(--space-3);padding:var(--space-3)var(--space-4);background:var(--bg-1);border:1px solid var(--stroke-0);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);display:flex}.spotify-device-item:hover:not(.active){background:var(--bg-2);border-color:var(--stroke-1)}.spotify-device-item.active{border-color:var(--spotify-green);cursor:default}.spotify-device-item__icon{border-radius:var(--radius-md);background:var(--bg-2);width:40px;height:40px;color:var(--text-1);justify-content:center;align-items:center;display:flex}.spotify-device-item.active .spotify-device-item__icon{background:var(--spotify-green);color:#fff}.spotify-device-item__info{flex:1}.spotify-device-item__name{font-size:var(--text-sm);color:var(--text-0);font-weight:500}.spotify-device-item__type{font-size:var(--text-xs);color:var(--text-2);text-transform:capitalize}.spotify-device-item__status{align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--spotify-green);display:flex}.spotify-device-item__active-dot{background:var(--spotify-green);border-radius:50%;width:8px;height:8px;animation:2s infinite pulse}.spotify-device-item__arrow{color:var(--text-2)}.spotify-empty{justify-content:center;align-items:center;gap:var(--space-3);padding:var(--space-8);color:var(--text-2);text-align:center;flex-direction:column;display:flex}.spotify-empty__hint{font-size:var(--text-xs);color:var(--text-3)}.spotify-loading{padding:var(--space-8);justify-content:center;align-items:center;display:flex}.spotify-callback{min-height:100vh;padding:var(--space-6);justify-content:center;align-items:center;display:flex}.spotify-callback__content{align-items:center;gap:var(--space-4);text-align:center;flex-direction:column;display:flex}.spotify-callback__icon{margin-bottom:var(--space-2)}.spotify-callback__music-icon{color:var(--spotify-green);animation:1s infinite bounce}.spotify-callback__success-icon{color:var(--success)}.spotify-callback__error-icon{color:var(--danger)}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.spotify-callback__title{font-size:var(--text-xl);color:var(--text-0);font-weight:600}.spotify-callback__text{font-size:var(--text-sm);color:var(--text-2)}.spotify-callback__hint{font-size:var(--text-xs);color:var(--text-3)}@media(max-width:768px){.spotify-mini-player{width:260px;right:auto;left:16px!important}.spotify-mini-player.collapsed,.spotify-mini-player__collapsed{width:40px;height:40px}.spotify-mini-player__collapsed-art{width:28px;height:28px}.spotify-mini-player__content{gap:8px;padding:8px 8px 6px}.spotify-mini-player__art{width:32px;height:32px}.spotify-mini-player__control--volume{display:none}.spotify-mini-player__time{padding:0 8px 4px}.spotify-header{gap:var(--space-4);flex-direction:column;align-items:flex-start}.spotify-header__actions{justify-content:flex-start;width:100%}.spotify-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:none;overflow-x:auto}.spotify-tabs::-webkit-scrollbar{display:none}.spotify-now-playing__art{width:200px;height:200px}.spotify-playlist-grid{grid-template-columns:repeat(2,1fr)}}.admin-page{padding:var(--space-6);max-width:1400px;margin:0 auto}.admin-page__loading{justify-content:center;align-items:center;gap:var(--space-4);padding:var(--space-16);color:var(--text-2);flex-direction:column;display:flex}.admin-page__header{margin-bottom:var(--space-8)}.admin-page__title{align-items:center;gap:var(--space-3);color:var(--text-0);margin-bottom:var(--space-2);display:flex}.admin-page__title h1{font-size:var(--text-2xl);margin:0;font-weight:600}.admin-page__title svg{color:var(--accent-1)}.admin-page__subtitle{color:var(--text-2);font-size:var(--text-sm);margin:0}.admin-page__stats{gap:var(--space-4);margin-bottom:var(--space-8);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.admin-stat{align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);display:flex}.admin-stat__icon{background:var(--accent-1);border-radius:var(--radius-md);width:40px;height:40px;color:var(--bg-0);justify-content:center;align-items:center;display:flex}.admin-stat__content{flex:1}.admin-stat__value{font-size:var(--text-xl);color:var(--text-0);font-weight:600}.admin-stat__label{font-size:var(--text-xs);color:var(--text-2)}.admin-page__grid{gap:var(--space-6);grid-template-columns:repeat(2,1fr);display:grid}.admin-panel{background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);overflow:hidden}.admin-panel--wide{grid-column:span 2}.admin-panel__header{align-items:center;gap:var(--space-2);padding:var(--space-4);background:var(--bg-2);border-bottom:1px solid var(--stroke-1);display:flex}.admin-panel__header svg{color:var(--accent-1)}.admin-panel__header h2{font-size:var(--text-sm);color:var(--text-0);margin:0;font-weight:600}.admin-panel__content{padding:var(--space-4);max-height:400px;overflow-y:auto}.admin-panel__empty{color:var(--text-3);font-size:var(--text-sm);text-align:center;padding:var(--space-4)}.admin-panel__note{margin-top:var(--space-4);padding:var(--space-3);background:var(--bg-2);border-radius:var(--radius-md);font-size:var(--text-xs);color:var(--text-2)}.admin-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.admin-list__item{padding:var(--space-2)var(--space-3);background:var(--bg-2);border-radius:var(--radius-md);justify-content:space-between;align-items:center;display:flex}.admin-list__email{font-size:var(--text-sm);color:var(--text-1)}.admin-list__email--mono{font-family:var(--font-mono);font-size:var(--text-xs)}.admin-list__date,.admin-list__value{font-size:var(--text-xs);color:var(--text-2)}.admin-activity{gap:var(--space-2);flex-direction:column;display:flex}.admin-activity__item{padding:var(--space-3);background:var(--bg-2);border-radius:var(--radius-md)}.admin-activity__action{align-items:center;gap:var(--space-2);margin-bottom:var(--space-1);display:flex}.admin-activity__badge{font-size:var(--text-xs);border-radius:var(--radius-sm);text-transform:uppercase;padding:2px 6px;font-weight:500}.admin-activity__badge--create{color:#22c55e;background:#22c55e33}.admin-activity__badge--update{color:#3b82f6;background:#3b82f633}.admin-activity__badge--delete{color:#ef4444;background:#ef444433}.admin-activity__type{font-size:var(--text-xs);color:var(--text-2)}.admin-activity__name{font-size:var(--text-sm);color:var(--text-0);margin-bottom:var(--space-1);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.admin-activity__meta{align-items:center;gap:var(--space-3);font-size:var(--text-xs);color:var(--text-3);display:flex}.admin-activity__user{font-family:var(--font-mono)}.sidebar__section--admin{padding-top:var(--space-4);border-top:1px solid var(--stroke-1);margin-top:auto}.sidebar__item--admin{color:var(--accent-1)}.sidebar__item--admin.is-active{background:rgba(var(--accent-1-rgb),.1)}@media(max-width:1024px){.admin-page__grid{grid-template-columns:1fr}.admin-panel--wide{grid-column:span 1}}@media(max-width:768px){.admin-page{padding:var(--space-4)}.admin-page__stats{grid-template-columns:repeat(2,1fr)}}.time-grid-container{background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);--scrollbar-width:0px;flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.time-grid-day-labels{padding-right:var(--scrollbar-width,0px);flex-shrink:0;display:flex}.time-grid-day-labels__gutter{flex-shrink:0;width:60px}.time-grid-day-label{padding:6px var(--space-1);cursor:pointer;transition:background var(--transition-fast);background:0 0;border:none;flex:1;justify-content:center;align-items:center;gap:6px;font-family:inherit;display:flex}.time-grid-day-label:hover{background:var(--bg-2);border-radius:var(--radius-sm)}.time-grid-day-label__name{color:var(--text-2);letter-spacing:.02em;font-size:11px;font-weight:500}.time-grid-day-label.is-today .time-grid-day-label__name{color:var(--text-1)}.time-grid-day-label.is-weekend .time-grid-day-label__name{color:var(--text-3)}.time-grid-day-label__date{color:var(--text-0);border-radius:6px;justify-content:center;align-items:center;min-width:24px;height:24px;font-size:14px;font-weight:600;display:flex}.time-grid-day-label__date.is-today{color:#fff;background:#ef4444}.time-grid-day-label.is-weekend .time-grid-day-label__date{color:var(--text-2)}.time-grid-day-label.is-weekend .time-grid-day-label__date.is-today{color:#fff}.all-day-ribbons{border-bottom:1px solid var(--stroke-1);background:var(--bg-1);padding-right:var(--scrollbar-width,0px);flex-shrink:0;min-height:36px;display:flex}.all-day-ribbons__gutter{border-right:1px solid var(--stroke-0);flex-shrink:0;justify-content:center;align-items:flex-start;width:60px;padding:8px 0;display:flex}.all-day-ribbons__toggle{background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-sm);width:24px;height:24px;color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex}.all-day-ribbons__toggle:hover{background:var(--bg-3);color:var(--text-1);border-color:var(--stroke-2)}.all-day-ribbons__column{border-right:1px solid var(--stroke-0);scrollbar-width:thin;scrollbar-color:var(--stroke-1)transparent;flex-direction:column;flex:1;gap:4px;min-height:24px;max-height:120px;padding:6px 4px;display:flex;overflow-y:auto}.all-day-ribbons__column::-webkit-scrollbar{width:3px}.all-day-ribbons__column::-webkit-scrollbar-track{background:0 0}.all-day-ribbons__column::-webkit-scrollbar-thumb{background:var(--stroke-1);border-radius:2px}.all-day-ribbons__column:last-child{border-right:none}.all-day-ribbons__column.is-weekend{background:var(--bg-1)}@supports (color:color-mix(in lab,red,red)){.all-day-ribbons__column.is-weekend{background:color-mix(in srgb,var(--bg-1)90%,var(--bg-2)10%)}}.all-day-ribbons--collapsed{min-height:auto}.all-day-ribbons--collapsed .all-day-ribbons__column{flex-direction:column;align-items:stretch;gap:2px;max-height:none;padding:4px;overflow:visible}.all-day-ribbons__collapsed-row{flex-direction:column;align-items:stretch;gap:2px;width:100%;display:flex}.all-day-mini-card{border-radius:var(--radius-xs);cursor:pointer;flex-shrink:0;align-items:center;width:100%;min-width:0;padding:2px 6px;display:flex;overflow:hidden}.all-day-mini-card:hover{filter:brightness(1.1)}.all-day-mini-card__title{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:10px;font-weight:500;overflow:hidden}.all-day-mini-card.is-start{border-radius:var(--radius-xs)0 0 var(--radius-xs);margin-right:-2px}.all-day-mini-card.is-end{border-radius:0 var(--radius-xs)var(--radius-xs)0;margin-left:-2px}.all-day-mini-card.is-middle{border-radius:0;min-width:8px;margin-left:-2px;margin-right:-2px}.all-day-more-count{color:var(--text-3);white-space:nowrap;cursor:pointer;flex-shrink:0;font-size:9px}.all-day-more-count:hover{color:var(--text-2)}.all-day-ribbon{border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0;align-items:flex-start;gap:4px;padding:4px 6px;display:flex}.all-day-ribbon:hover{filter:brightness(1.1)}.all-day-ribbon.completed{opacity:.6}.all-day-ribbon__title{color:#fff;word-break:break-word;flex:1;font-size:11px;font-weight:500;line-height:1.3}.all-day-ribbon__check{color:#fff;opacity:.9;flex-shrink:0}.all-day-ribbon.is-start{border-radius:var(--radius-sm)0 0 var(--radius-sm);margin-right:-4px;padding-right:8px}.all-day-ribbon.is-end{border-radius:0 var(--radius-sm)var(--radius-sm)0;margin-left:-4px;padding-left:8px}.all-day-ribbon.is-middle{border-radius:0;min-width:20px;margin-left:-4px;margin-right:-4px}.all-day-ribbon--event{border-left:3px solid #fff6}.time-grid-body{scrollbar-width:thin;scrollbar-color:var(--stroke-1)transparent;flex:1;min-height:0;display:flex;overflow:hidden auto}.time-grid-body::-webkit-scrollbar{width:6px}.time-grid-body::-webkit-scrollbar-track{background:0 0}.time-grid-body::-webkit-scrollbar-thumb{background:var(--stroke-1);border-radius:3px}.time-grid-body::-webkit-scrollbar-thumb:hover{background:var(--stroke-2)}.time-grid-times{border-right:1px solid var(--stroke-0);flex-shrink:0;width:60px;height:1152px;position:relative}.time-grid-times__hour{box-sizing:border-box;position:relative}.time-grid-times__label{color:var(--text-3);background:var(--bg-1);padding:0 2px;font-size:10px;position:absolute;top:-8px;right:8px}.time-grid-times__hour:first-child .time-grid-times__label{display:none}.time-grid-days{flex:1;display:flex;position:relative}.time-grid-day{border-right:1px solid var(--stroke-0);flex:1;height:1152px;position:relative}.time-grid-day:last-child{border-right:none}.time-grid-day.is-today{background:var(--bg-1)}@supports (color:color-mix(in lab,red,red)){.time-grid-day.is-today{background:color-mix(in srgb,var(--bg-1)85%,var(--bg-2)15%)}}.time-grid-day.is-weekend{background:var(--bg-1)}@supports (color:color-mix(in lab,red,red)){.time-grid-day.is-weekend{background:color-mix(in srgb,var(--bg-1)90%,var(--bg-2)10%)}}.time-grid-day.is-weekend.is-today{background:var(--bg-1)}@supports (color:color-mix(in lab,red,red)){.time-grid-day.is-weekend.is-today{background:color-mix(in srgb,var(--bg-1)80%,var(--bg-2)20%)}}.time-grid-day__hour-line{background:var(--stroke-0);height:1px;position:absolute;left:0;right:0}.time-grid-current-time{z-index:20;pointer-events:none;position:absolute;left:0;right:0}.time-grid-current-time__dot{background:#ef4444;border-radius:50%;width:10px;height:10px;position:absolute;top:-5px;left:-5px}.time-grid-current-time__line{background:#ef4444;height:2px;position:absolute;left:0;right:0}.time-grid-task{border-radius:var(--radius-sm);cursor:pointer;transition:filter var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast);z-index:10;border-left:4px solid #ffffff59;position:absolute;overflow:hidden}.time-grid-task:hover{filter:brightness(1.08);transform:scale(1.02);box-shadow:0 4px 16px #00000040;z-index:50!important}.time-grid-task.is-selected{filter:brightness(1.1);box-shadow:0 6px 20px #00000059;z-index:100!important}.time-grid-task.completed{opacity:.6}.time-grid-task--stacked{box-shadow:-1px 0 4px #0003}.time-grid-task--stacked:hover{box-shadow:-1px 0 8px #0000004d;z-index:100!important}.time-grid-task__content{flex-direction:column;gap:1px;height:100%;min-height:0;padding:4px 6px;display:flex;overflow:hidden}.time-grid-task__title{color:#fff;white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;font-size:11px;font-weight:600;line-height:1.25;overflow:hidden}.time-grid-task__time{color:#ffffffd9;white-space:nowrap;text-overflow:ellipsis;flex-shrink:1;align-items:center;gap:3px;font-size:10px;display:flex;overflow:hidden}.time-grid-task__time svg{flex-shrink:0}.calendar-event-item{border-radius:var(--radius-sm);cursor:pointer;transition:filter var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast);z-index:5;opacity:.9;border-left:4px solid #ffffff59;position:absolute;overflow:hidden}.calendar-event-item:hover{filter:brightness(1.08);opacity:1;transform:scale(1.02);box-shadow:0 4px 16px #00000040;z-index:50!important}.calendar-event-item.is-selected{filter:brightness(1.1);opacity:1;box-shadow:0 6px 20px #00000059;z-index:100!important}.calendar-event-item--stacked{box-shadow:-1px 0 4px #0003}.calendar-event-item--stacked:hover{box-shadow:-1px 0 8px #0000004d;z-index:100!important}.calendar-event-item__content{flex-direction:column;gap:1px;height:100%;min-height:0;padding:4px 6px;display:flex;overflow:hidden}.calendar-event-item__title{color:#fff;white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;font-size:11px;font-weight:600;line-height:1.25;overflow:hidden}.calendar-event-item__time{color:#ffffffd9;white-space:nowrap;text-overflow:ellipsis;flex-shrink:1;align-items:center;gap:3px;font-size:10px;display:flex;overflow:hidden}.calendar-event-item__time svg{flex-shrink:0}@media(max-width:1200px){.time-grid-day-labels__gutter,.all-day-ribbons__gutter,.time-grid-times{width:50px}.time-grid-day-label__date{min-width:22px;height:22px;font-size:13px}.time-grid-task__title{font-size:10px}.time-grid-task__time{font-size:9px}.all-day-ribbon__title{font-size:10px}}@media(max-width:1024px){.time-grid-day-labels__gutter,.all-day-ribbons__gutter,.time-grid-times{width:45px}.time-grid-times__label{font-size:9px}.all-day-ribbon{padding:3px 5px}.all-day-ribbon__title{font-size:10px}.time-grid-day-label__name{font-size:9px}.time-grid-day-label__date{min-width:20px;height:20px;font-size:12px}.time-grid-day-label{gap:4px}}@media(min-width:769px){.home-page-view:has(.time-grid-container){margin-left:calc(-1*var(--space-4));margin-right:calc(-1*var(--space-4));margin-bottom:calc(-1*var(--space-4))}.home-page-view:has(.time-grid-container) .week-header{padding-left:var(--space-4);padding-right:var(--space-4)}.home-page-view:has(.time-grid-container) .time-grid-container{border-bottom:none;border-left:none;border-right:none;border-radius:0}.home-page-view:has(.monthly-view){margin-left:calc(-1*var(--space-4));margin-right:calc(-1*var(--space-4));margin-bottom:calc(-1*var(--space-4))}.home-page-view:has(.monthly-view) .monthly-header{padding-left:var(--space-4);padding-right:var(--space-4)}.home-page-view:has(.monthly-view) .monthly-grid{border-bottom:none;border-left:none;border-right:none;border-radius:0}}.sidebar__section-header--expandable{width:100%;font-size:var(--text-xs);color:var(--text-2);text-transform:uppercase;letter-spacing:.04em;transition:color var(--transition-fast);background:0 0;border:none;justify-content:space-between;align-items:center;margin:0;padding:0;font-weight:600;display:flex}.sidebar__section-header--expandable:hover{color:var(--text-1)}.sidebar__section-header--expandable.is-active{color:var(--text-0)}.sidebar__section-header-toggle{cursor:pointer;padding:var(--space-2)var(--space-3);padding-right:var(--space-1);font-size:var(--text-xs);color:inherit;text-transform:uppercase;letter-spacing:.04em;background:0 0;border:none;flex:1;justify-content:space-between;align-items:center;margin:0;font-weight:600;display:flex}.sidebar__section-header-add{width:24px;height:24px;margin-right:var(--space-2);border-radius:var(--radius-sm);color:var(--text-2);cursor:pointer;opacity:0;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.sidebar__section-header--expandable:hover .sidebar__section-header-add{opacity:1}.sidebar__section-header-add:hover{background:var(--bg-2);color:var(--text-0)}.sidebar__section-header-left{align-items:center;gap:var(--space-2);display:flex}.sidebar__section-header-icon{opacity:.8}.sidebar__section-header-right{align-items:center;gap:var(--space-2);display:flex}.sidebar__chevron{color:var(--text-2);transition:transform var(--transition-fast)}.sidebar__chevron.is-open{transform:rotate(180deg)}.sidebar__badge{background:var(--danger);color:#fff;border-radius:var(--radius-full);text-align:center;min-width:18px;padding:2px 6px;font-size:10px;font-weight:600}.sidebar__item-badge{background:var(--danger);color:#fff;border-radius:var(--radius-full);text-align:center;min-width:16px;margin-left:auto;padding:1px 5px;font-size:10px;font-weight:600}.sidebar__item--add{color:var(--text-2);cursor:pointer;text-align:left;background:0 0;border:none}.sidebar__item--add:hover{color:var(--text-0);background:var(--bg-2)}.sidebar__item--loading,.sidebar__item--empty{cursor:default}.sidebar__item--loading:hover,.sidebar__item--empty:hover{background:0 0}.sidebar__item-label--muted{color:var(--text-3);font-style:italic}.sidebar__item-icon--channel{color:#fff;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;display:flex}.channels-page{background:var(--bg-0);flex-direction:column;height:100%;display:flex}.channels-page__empty,.channels-page__select,.channels-page__loading{text-align:center;height:100%;padding:var(--space-8);flex-direction:column;justify-content:center;align-items:center;display:flex}.channels-page__empty-icon,.channels-page__select-icon{border-radius:var(--radius-xl);background:var(--bg-2);width:80px;height:80px;color:var(--text-2);margin-bottom:var(--space-4);justify-content:center;align-items:center;display:flex}.channels-page__empty h2,.channels-page__select h2{font-size:var(--text-lg);color:var(--text-0);margin-bottom:var(--space-2);font-weight:600}.channels-page__empty p,.channels-page__select p{color:var(--text-2);margin-bottom:var(--space-4)}.channels-page__loading-spinner{border:3px solid var(--stroke-1);border-top-color:var(--accent-0);width:32px;height:32px;margin-bottom:var(--space-3);border-radius:50%;animation:1s linear infinite spin}.chat-view{background:var(--bg-0);flex-direction:column;height:100%;display:flex}.chat-view--loading,.chat-view--empty{justify-content:center;align-items:center;display:flex}.chat-view__empty-state{text-align:center;color:var(--text-2)}.chat-view__messages{padding:var(--space-4);flex:1;overflow-y:auto}.chat-view__messages-loading{justify-content:center;align-items:center;height:100%;display:flex}.channel-header{padding:var(--space-3)var(--space-4);border-bottom:1px solid var(--stroke-0);background:var(--bg-1);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.channel-header__info{align-items:center;gap:var(--space-3);display:flex}.channel-header__icon{border-radius:var(--radius-md);color:#fff;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.channel-header__details{flex-direction:column;gap:2px;display:flex}.channel-header__name{font-size:var(--text-md);color:var(--text-0);font-weight:600}.channel-header__members{align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--text-2);display:flex}.channel-header__actions{align-items:center;gap:var(--space-2);display:flex}.channel-header__invite-btn{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-md);color:var(--text-1);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast);display:flex}.channel-header__invite-btn:hover{background:var(--bg-3);color:var(--text-0)}.channel-header__members{align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--text-2);cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none;padding:0;display:flex}.channel-header__members:hover{color:var(--text-1)}.channel-header__menu-wrapper{position:relative}.channel-header__menu-btn{border-radius:var(--radius-md);width:32px;height:32px;color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:flex}.channel-header__menu-btn:hover,.channel-header__menu-btn.is-active{background:var(--bg-2);color:var(--text-0)}.channel-header__menu-btn:focus{outline:none}.channel-header__menu-btn:focus:not(.is-active):not(:hover){background:0 0}.channel-header__dropdown{background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-md);min-width:180px;box-shadow:var(--shadow-md);z-index:100;padding:4px;position:absolute;top:calc(100% + 4px);right:0}.channel-header__dropdown-item{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2)var(--space-3);border-radius:var(--radius-sm);color:var(--text-1);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast);text-align:left;background:0 0;border:none;display:flex}.channel-header__dropdown-item:hover{background:var(--bg-3);color:var(--text-0)}.channel-header__dropdown-item--danger{color:var(--danger)}.channel-header__dropdown-item--danger:hover{background:var(--danger-muted);color:var(--danger)}.channel-header__dropdown-divider{background:var(--stroke-1);height:1px;margin:4px 0}.channel-member-modal__overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.channel-member-modal{background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);width:100%;max-width:400px;max-height:80vh;box-shadow:var(--shadow-lg);flex-direction:column;display:flex}.channel-member-modal__header{padding:var(--space-4);border-bottom:1px solid var(--stroke-0);justify-content:space-between;align-items:center;display:flex}.channel-member-modal__header h3{font-size:var(--text-md);color:var(--text-0);font-weight:600}.channel-member-modal__close{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.channel-member-modal__close:hover{background:var(--bg-2);color:var(--text-0)}.channel-member-modal__list{padding:var(--space-2);flex:1;overflow-y:auto}.channel-member-modal__item{padding:var(--space-2)var(--space-3);border-radius:var(--radius-md);transition:background var(--transition-fast);justify-content:space-between;align-items:center;display:flex}.channel-member-modal__item:hover{background:var(--bg-2)}.channel-member-modal__info{align-items:center;gap:var(--space-3);display:flex}.channel-member-modal__avatar{border-radius:var(--radius-md);background:var(--accent-2);width:36px;height:36px;font-size:var(--text-sm);color:var(--text-1);flex-shrink:0;justify-content:center;align-items:center;font-weight:600;display:flex}.channel-member-modal__avatar--img{object-fit:cover}.channel-member-modal__email{font-size:var(--text-xs);color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;max-width:200px;overflow:hidden}.channel-member-modal__details{flex-direction:column;gap:2px;display:flex}.channel-member-modal__name{align-items:center;gap:var(--space-1);font-size:var(--text-sm);color:var(--text-0);font-weight:500;display:flex}.channel-member-modal__badge{margin-left:4px}.channel-member-modal__badge--owner{color:#f59e0b}.channel-member-modal__badge--admin{color:#3b82f6}.channel-member-modal__role{font-size:var(--text-xs);color:var(--text-3);text-transform:capitalize}.channel-member-modal__kick{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-3);cursor:pointer;transition:all var(--transition-fast);opacity:0;background:0 0;border:none;justify-content:center;align-items:center;display:flex}.channel-member-modal__item:hover .channel-member-modal__kick{opacity:1}.channel-member-modal__kick:hover{background:var(--danger-muted);color:var(--danger)}.message-list{gap:var(--space-1);flex-direction:column;display:flex}.message-list--empty{justify-content:center;align-items:center;height:100%;display:flex}.message-list__empty-state{text-align:center}.message-list__empty-state p{color:var(--text-2)}.message-list__empty-hint{font-size:var(--text-sm);color:var(--text-3)}.message-item{gap:var(--space-3);padding:var(--space-2)0;display:flex;position:relative}.message-item__avatar{border-radius:var(--radius-md);background:var(--accent-2);flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex;overflow:hidden}.message-item__avatar img{object-fit:cover;width:100%;height:100%}.message-item__avatar-fallback{font-size:var(--text-sm);color:var(--text-1);font-weight:600}.message-item__content{flex:1;min-width:0}.message-item__header{align-items:center;gap:var(--space-2);margin-bottom:2px;display:flex}.message-item__author{font-size:var(--text-sm);color:var(--text-0);font-weight:600}.message-item__time{font-size:var(--text-xs);color:var(--text-3)}.message-item__text{font-size:var(--text-sm);color:var(--text-1);word-break:break-word;white-space:pre-wrap;line-height:1.5}.message-item--system{padding:var(--space-2)0;justify-content:center}.message-item--system:hover{padding:var(--space-2)0;background:0 0;margin:0}.message-item--system .message-item__text{font-size:var(--text-xs);color:var(--text-3);text-align:center;font-style:italic}.message-item__actions{right:var(--space-2);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);z-index:10;align-items:center;gap:2px;padding:2px;display:flex;position:absolute;top:0;transform:translateY(-50%)}.message-item__action-btn{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.message-item__action-btn:hover{background:var(--bg-3);color:var(--text-0)}.message-item__reactions-popup{background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);gap:2px;padding:4px;display:flex;position:absolute;bottom:calc(100% + 4px);left:0}.message-item__reaction-btn{border-radius:var(--radius-sm);cursor:pointer;width:32px;height:32px;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;font-size:18px;display:flex}.message-item__reaction-btn:hover{background:var(--bg-3);transform:scale(1.2)}.message-item__more-menu{background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-md);min-width:160px;box-shadow:var(--shadow-md);z-index:20;padding:4px;position:absolute;top:calc(100% + 4px);right:0}.message-item__menu-item{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2)var(--space-3);border-radius:var(--radius-sm);color:var(--text-1);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast);text-align:left;background:0 0;border:none;display:flex}.message-item__menu-item:hover{background:var(--bg-3);color:var(--text-0)}.message-item__menu-item--danger{color:var(--danger)}.message-item__menu-item--danger:hover{background:var(--danger-muted);color:var(--danger)}.message-item__menu-divider{background:var(--stroke-1);height:1px;margin:4px 0}.message-input-wrapper{padding:var(--space-3)var(--space-4);border-top:1px solid var(--stroke-0);background:var(--bg-1);flex-shrink:0}.message-input{align-items:flex-end;gap:var(--space-2);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-xl);padding:var(--space-2);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);display:flex}.message-input:focus-within{border-color:var(--accent-0);box-shadow:0 0 0 3px #6b72801a}.message-input__toolbar{padding-left:var(--space-1);align-items:center;gap:2px;display:flex}.message-input__tool-btn{border-radius:var(--radius-md);width:32px;height:32px;color:var(--text-3);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.message-input__tool-btn:hover:not(:disabled){background:var(--bg-3);color:var(--text-1)}.message-input__tool-btn:disabled{opacity:.5;cursor:not-allowed}.message-input__file-input{display:none}.message-input__textarea{min-height:36px;max-height:120px;padding:var(--space-2)var(--space-2);color:var(--text-0);font-family:var(--font-sans);font-size:var(--text-sm);resize:none;background:0 0;border:none;flex:1;line-height:1.5}.message-input__textarea:focus{outline:none}.message-input__textarea::placeholder{color:var(--text-3)}.message-input__send{background:var(--bg-3);border-radius:var(--radius-md);width:36px;height:36px;color:var(--text-3);cursor:pointer;transition:all var(--transition-fast);border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.message-input__send--active{color:#fff;background:#f97316}.message-input__send--active:hover:not(:disabled){background:#ea580c}.message-input__send:disabled{opacity:.5;cursor:not-allowed}.message-input__attachments{gap:var(--space-2);padding:0 var(--space-1)var(--space-2);flex-wrap:wrap;display:flex}.message-input__attachment{align-items:center;gap:var(--space-2);padding:var(--space-2);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-md);max-width:200px;display:flex}.message-input__attachment-preview{border-radius:var(--radius-sm);object-fit:cover;width:48px;height:48px}.message-input__attachment-file{border-radius:var(--radius-sm);background:var(--bg-3);width:48px;height:48px;color:var(--text-2);justify-content:center;align-items:center;display:flex}.message-input__attachment-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.message-input__attachment-name{font-size:var(--text-xs);color:var(--text-1);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.message-input__attachment-size{color:var(--text-3);font-size:10px}.message-input__attachment-remove{border-radius:var(--radius-sm);width:20px;height:20px;color:var(--text-3);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.message-input__attachment-remove:hover{background:var(--danger-muted);color:var(--danger)}.message-item__attachments{gap:var(--space-2);margin-top:var(--space-2);flex-direction:column;display:flex}.message-attachment{border-radius:var(--radius-md);overflow:hidden}.message-attachment--image{max-width:400px}.message-attachment--image img{border-radius:var(--radius-md);cursor:pointer;width:100%;height:auto;transition:opacity var(--transition-fast)}.message-attachment--image img:hover{opacity:.9}.message-attachment--file{align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--bg-2);border:1px solid var(--stroke-1);cursor:pointer;transition:background var(--transition-fast);max-width:300px;display:flex}.message-attachment--file:hover{background:var(--bg-3)}.message-attachment__icon{border-radius:var(--radius-md);background:var(--bg-3);width:40px;height:40px;color:var(--text-2);flex-shrink:0;justify-content:center;align-items:center;display:flex}.message-attachment__info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.message-attachment__name{font-size:var(--text-sm);color:var(--text-0);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.message-attachment__size{font-size:var(--text-xs);color:var(--text-3)}.message-attachment__download{border-radius:var(--radius-sm);width:32px;height:32px;color:var(--text-2);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.message-attachment__download:hover{background:var(--bg-3);color:var(--text-0)}.invite-modal__icon{border-radius:var(--radius-lg);background:var(--bg-2);width:48px;height:48px;color:var(--text-1);margin:0 auto var(--space-4);justify-content:center;align-items:center;display:flex}.invite-modal__description{color:var(--text-2);margin-bottom:var(--space-4);text-align:center}.invite-modal__link-box{gap:var(--space-2);display:flex}.invite-modal__link-box .ui-input{font-family:var(--font-mono);font-size:var(--text-xs);flex:1}.invite-modal__create{gap:var(--space-4);flex-direction:column;display:flex}.invite-modal__option{gap:var(--space-2);flex-direction:column;display:flex}.invite-modal__label{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-1);font-weight:500;display:flex}.invite-modal__manage-btn{justify-content:center;align-items:center;gap:var(--space-2);margin-top:var(--space-4);padding:var(--space-2)var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-1);font-size:var(--text-sm);cursor:pointer;background:0 0;width:100%;transition:all .15s;display:flex}.invite-modal__manage-btn:hover{background:var(--bg-2);border-color:var(--text-2)}.invite-modal__back-btn{align-items:center;gap:var(--space-1);padding:var(--space-2)0;color:var(--text-2);font-size:var(--text-sm);cursor:pointer;margin-bottom:var(--space-4);background:0 0;border:none;display:inline-flex}.invite-modal__back-btn:hover{color:var(--text-0)}.invite-modal__list{gap:var(--space-2);flex-direction:column;max-height:300px;display:flex;overflow-y:auto}.invite-modal__item{justify-content:space-between;align-items:flex-start;gap:var(--space-3);padding:var(--space-3);background:var(--bg-2);border-radius:var(--radius-md);border:1px solid var(--border);display:flex}.invite-modal__item--inactive{opacity:.6}.invite-modal__item-info{flex:1;min-width:0}.invite-modal__item-code{font-family:var(--font-mono);font-size:var(--text-sm);background:var(--bg-3);padding:var(--space-1)var(--space-2);border-radius:var(--radius-sm);color:var(--text-0)}.invite-modal__item-meta{align-items:center;gap:var(--space-2);margin-top:var(--space-2);font-size:var(--text-xs);color:var(--text-2);flex-wrap:wrap;display:flex}.invite-modal__item-status{padding:var(--space-1)var(--space-2);border-radius:var(--radius-sm);font-weight:500}.invite-modal__item-status--expired{background:var(--red)}@supports (color:color-mix(in lab,red,red)){.invite-modal__item-status--expired{background:color-mix(in srgb,var(--red)15%,transparent)}}.invite-modal__item-status--expired{color:var(--red)}.invite-modal__item-status--maxed{background:var(--orange)}@supports (color:color-mix(in lab,red,red)){.invite-modal__item-status--maxed{background:color-mix(in srgb,var(--orange)15%,transparent)}}.invite-modal__item-status--maxed{color:var(--orange)}.invite-modal__item-expires{color:var(--text-2)}.invite-modal__item-uses{align-items:center;gap:var(--space-1);display:flex}.invite-modal__item-joined{margin-top:var(--space-2);font-size:var(--text-xs);color:var(--text-2);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.invite-modal__item-actions{gap:var(--space-1);flex-shrink:0;display:flex}.invite-modal__empty{text-align:center;color:var(--text-2);padding:var(--space-4)}.create-channel__preview{align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--bg-2);border-radius:var(--radius-lg);margin-bottom:var(--space-4);display:flex}.create-channel__preview-icon{border-radius:var(--radius-md);color:#fff;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.create-channel__preview-name{font-size:var(--text-md);color:var(--text-0);font-weight:600}.create-channel__colors{gap:var(--space-2);flex-wrap:wrap;display:flex}.create-channel__color{border-radius:var(--radius-md);cursor:pointer;width:28px;height:28px;transition:transform var(--transition-fast),border-color var(--transition-fast);border:2px solid #0000}.create-channel__color:hover{transform:scale(1.1)}.create-channel__color.is-selected{border-color:var(--text-0)}.label-modal__preview{padding:var(--space-5);background:var(--bg-2);border-radius:var(--radius-lg);margin-bottom:var(--space-4);justify-content:center;align-items:center;display:flex}.label-modal__preview-badge{font-size:var(--text-sm);color:#fff;border-radius:var(--radius-full);text-shadow:0 1px 2px #0003;align-items:center;padding:6px 12px;font-weight:500;display:inline-flex}.label-modal__colors{gap:var(--space-2);flex-wrap:wrap;display:flex}.label-modal__color{border-radius:var(--radius-full);cursor:pointer;width:28px;height:28px;transition:transform var(--transition-fast),border-color var(--transition-fast);border:2px solid #0000}.label-modal__color:hover{transform:scale(1.1)}.label-modal__color.is-selected{border-color:var(--text-0);box-shadow:0 0 0 2px var(--bg-1)}.template-modal__preview{align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--bg-2);border-radius:var(--radius-lg);margin-bottom:var(--space-4);display:flex}.template-modal__preview-color{border-radius:var(--radius-full);flex-shrink:0;width:4px;height:40px}.template-modal__preview-content{flex-direction:column;gap:4px;min-width:0;display:flex}.template-modal__preview-title{font-size:var(--text-sm);color:var(--text-0);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.template-modal__preview-meta{font-size:var(--text-xs);color:var(--text-2);align-items:center;gap:6px;display:flex}.template-modal__preview-meta svg{width:12px;height:12px}.template-modal__recurrence{align-items:center;gap:var(--space-2);display:flex}.template-modal__recurrence-label{font-size:var(--text-sm);color:var(--text-1)}.template-modal__recurrence-input{text-align:center;width:64px!important}.template-modal__recurrence-select{width:120px!important}.template-modal__days{gap:var(--space-2);flex-wrap:wrap;display:flex}.template-modal__day{min-width:44px;font-size:var(--text-xs);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-md);color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);padding:8px 12px;font-weight:500}.template-modal__day:hover{background:var(--bg-3);border-color:var(--stroke-2)}.template-modal__day.is-selected{background:var(--accent-0);border-color:var(--accent-0);color:#fff}.template-modal__row{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.template-modal__colors{gap:var(--space-2);flex-wrap:wrap;display:flex}.template-modal__color{border-radius:var(--radius-full);cursor:pointer;width:28px;height:28px;transition:transform var(--transition-fast),border-color var(--transition-fast);border:2px solid #0000}.template-modal__color:hover{transform:scale(1.1)}.template-modal__color.is-selected{border-color:var(--text-0);box-shadow:0 0 0 2px var(--bg-1)}.invite-page{background:var(--bg-0);min-height:100vh;padding:var(--space-4);justify-content:center;align-items:center;display:flex}.invite-page__card{background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-xl);padding:var(--space-8);text-align:center;width:100%;max-width:400px}.invite-page__channel-avatar{border-radius:var(--radius-lg);color:#fff;width:72px;height:72px;margin:0 auto var(--space-4);justify-content:center;align-items:center;display:flex}.invite-page__subtitle{font-size:var(--text-sm);color:var(--text-2);margin-bottom:var(--space-2)}.invite-page__channel-name{font-size:var(--text-xl);color:var(--text-0);margin-bottom:var(--space-6);font-weight:600}.invite-page__error-icon{border-radius:var(--radius-lg);background:var(--bg-2);width:72px;height:72px;color:var(--danger);margin:0 auto var(--space-4);justify-content:center;align-items:center;display:flex}.invite-page__error-text{color:var(--text-2);margin-bottom:var(--space-4)}.invite-page__error-message{color:var(--danger);padding:var(--space-3);border-radius:var(--radius-md);margin-bottom:var(--space-4);font-size:var(--text-sm);background:#ef44441a}.invite-page__back-link{align-items:center;gap:var(--space-1);color:var(--text-2);font-size:var(--text-sm);margin-top:var(--space-4);transition:color var(--transition-fast);display:inline-flex}.invite-page__back-link:hover{color:var(--text-0)}.ui-btn--lg{padding:var(--space-3)var(--space-5);font-size:var(--text-md)}@media(max-width:768px){.channel-header{padding:var(--space-2)var(--space-3)}.channel-header__icon{width:32px;height:32px}.channel-header__name{font-size:var(--text-sm)}.channel-header__invite-btn span{display:none}.channel-header__invite-btn{padding:var(--space-2)}.message-input{padding:var(--space-2)var(--space-3)}.chat-view__messages{padding:var(--space-3)}.message-item__avatar{width:32px;height:32px}.invite-page__card{padding:var(--space-6)}}.upgrade-modal{background:var(--bg-1);border:1px solid var(--stroke-1);max-width:340px;position:relative;overflow:visible}.upgrade-modal .modal__close{top:var(--space-3);right:var(--space-3);z-index:10;position:absolute}.upgrade-modal__content{padding:var(--space-6);text-align:center;align-items:center;gap:var(--space-3);flex-direction:column;display:flex}.upgrade-modal__icon{background:var(--bg-2);border:1px solid var(--stroke-0);border-radius:var(--radius-md);width:48px;height:48px;color:var(--text-2);justify-content:center;align-items:center;display:flex}.upgrade-modal__title{font-size:var(--text-md);color:var(--text-0);margin:0;font-weight:600}.upgrade-modal__subtitle{font-size:var(--text-sm);color:var(--text-2);max-width:280px;margin:0;line-height:1.5}.upgrade-modal__error{padding:var(--space-2)var(--space-3);border-radius:var(--radius-md);color:var(--danger);font-size:var(--text-sm);background:#ef44441a;border:1px solid #ef44444d;width:100%}.upgrade-modal__actions{gap:var(--space-3);margin-top:var(--space-2);display:flex}.upgrade-modal__btn{padding:var(--space-2)var(--space-4);font-size:var(--text-sm);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);font-weight:500;font-family:var(--font-sans)}.upgrade-modal__btn--primary{background:var(--text-0);color:var(--bg-0);border:none}.upgrade-modal__btn--primary:hover{opacity:.9}.upgrade-modal__btn--primary:disabled{opacity:.5;cursor:not-allowed}.upgrade-modal__btn--secondary{color:var(--text-0);border:1px solid var(--stroke-1);background:0 0}.upgrade-modal__btn--secondary:hover{background:var(--bg-2)}.upgrade-modal__status{font-size:var(--text-sm);color:var(--text-2);padding:var(--space-2)var(--space-4)}.upgrade-modal__link{font-size:var(--text-sm);color:var(--text-2);align-items:center;gap:var(--space-1);transition:color var(--transition-fast);margin-top:var(--space-2);text-decoration:none;display:flex}.upgrade-modal__link:hover{color:var(--text-0)}.sidebar__profile-menu-item--upgrade{margin-bottom:var(--space-1);background:linear-gradient(135deg,#6366f11a,#8b5cf61a);border:1px solid #6366f133}.sidebar__profile-menu-item--upgrade svg,.sidebar__profile-menu-item--pro,.sidebar__profile-menu-item--pro svg{color:var(--accent-0)}.context-menu{z-index:5000;background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);min-width:200px;max-width:280px;box-shadow:var(--shadow-lg),0 0 0 1px #0000001a;padding:var(--space-1);animation:.15s ease-out contextMenuFadeIn;position:fixed;overflow:hidden}@keyframes contextMenuFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.context-menu__section{padding:var(--space-1)0}.context-menu__section:first-child{padding-top:0}.context-menu__section:last-child{padding-bottom:0}.context-menu__separator{background:var(--stroke-0);height:1px;margin:var(--space-1)calc(var(--space-2)*-1);margin-left:calc(var(--space-1)*-1);margin-right:calc(var(--space-1)*-1)}.context-menu__item{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2)var(--space-3);border-radius:var(--radius-md);color:var(--text-0);font-family:var(--font-sans);font-size:var(--text-sm);text-align:left;cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;font-weight:400;display:flex}.context-menu__item:hover{background:var(--bg-2)}.context-menu__item:active{background:var(--bg-3)}.context-menu__item:focus{background:var(--bg-2);outline:none}.context-menu__item--danger{color:var(--danger)}.context-menu__item--danger:hover{background:var(--danger-muted)}.context-menu__item--disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.context-menu__item-icon{width:16px;height:16px;color:var(--text-1);flex-shrink:0;justify-content:center;align-items:center;display:flex}.context-menu__item:hover .context-menu__item-icon{color:var(--text-0)}.context-menu__item--danger .context-menu__item-icon{color:var(--danger)}.context-menu__item-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.context-menu__item-shortcut{font-size:var(--text-xs);color:var(--text-2);background:var(--bg-2);border-radius:var(--radius-xs);font-family:var(--font-sans);flex-shrink:0;padding:2px 4px}.ui-toggle{background:var(--bg-3);border:1px solid var(--stroke-1);border-radius:var(--radius-full);cursor:pointer;width:36px;height:20px;transition:all var(--transition-fast);display:inline-flex;position:relative}.ui-toggle:hover{background:var(--stroke-2)}.ui-toggle--checked{background:var(--text-0);border-color:var(--text-0)}.ui-toggle--checked:hover{background:var(--text-1);border-color:var(--text-1)}.ui-toggle__thumb{background:var(--text-0);border-radius:var(--radius-full);width:14px;height:14px;transition:transform var(--transition-fast);position:absolute;top:2px;left:2px}.ui-toggle--checked .ui-toggle__thumb{background:var(--bg-0);transform:translate(16px)}.ui-checkbox{border:1px solid var(--stroke-2);border-radius:var(--radius-xs);cursor:pointer;width:16px;height:16px;transition:all var(--transition-fast);background:0 0;justify-content:center;align-items:center;display:inline-flex;position:relative}.ui-checkbox:hover{border-color:var(--text-1)}.ui-checkbox--checked{background:var(--text-0);border-color:var(--text-0)}.ui-checkbox--checked:hover{background:var(--text-1);border-color:var(--text-1)}.ui-checkbox__icon{color:var(--bg-0);opacity:0;transition:all var(--transition-fast);transform:scale(.8)}.ui-checkbox--checked .ui-checkbox__icon{opacity:1;transform:scale(1)}.ui-checkbox__icon svg{width:12px;height:12px}.ui-radio{border:1px solid var(--stroke-2);border-radius:var(--radius-full);cursor:pointer;width:16px;height:16px;transition:all var(--transition-fast);background:0 0;justify-content:center;align-items:center;display:inline-flex;position:relative}.ui-radio:hover{border-color:var(--text-1)}.ui-radio--checked{border-color:var(--text-0)}.ui-radio__dot{background:var(--text-0);border-radius:var(--radius-full);opacity:0;width:8px;height:8px;transition:all var(--transition-fast);transform:scale(0)}.ui-radio--checked .ui-radio__dot{opacity:1;transform:scale(1)}.ui-select{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--text-0);cursor:pointer;transition:all var(--transition-fast);min-width:120px;display:inline-flex;position:relative}.ui-select:hover{border-color:var(--stroke-2)}.ui-select:focus{border-color:var(--focus);outline:none;box-shadow:0 0 0 3px #9ca3af26}.ui-select__value{flex:1}.ui-select__icon{color:var(--text-2);flex-shrink:0}.ui-select__icon svg{width:14px;height:14px}.ui-slider{align-items:center;width:100%;height:20px;display:flex;position:relative}.ui-slider__track{background:var(--bg-3);border-radius:var(--radius-full);width:100%;height:4px;position:relative}.ui-slider__range{background:var(--text-0);border-radius:var(--radius-full);height:100%;position:absolute}.ui-slider__thumb{background:var(--text-0);border:2px solid var(--bg-0);border-radius:var(--radius-full);cursor:grab;width:16px;height:16px;transition:transform var(--transition-fast);position:absolute;transform:translate(-50%)}.ui-slider__thumb:hover{transform:translate(-50%)scale(1.1)}.ui-slider__thumb:active{cursor:grabbing;transform:translate(-50%)scale(1.05)}.ui-badge{font-size:var(--text-xs);border-radius:var(--radius-full);background:var(--bg-2);color:var(--text-1);border:1px solid var(--stroke-0);align-items:center;gap:4px;padding:2px 8px;font-weight:500;display:inline-flex}.ui-badge--primary{background:var(--accent-2);color:var(--text-0);border-color:#0000}.ui-badge--success{background:var(--success-muted);color:var(--success);border-color:#0000}.ui-badge--warning{background:var(--warning-muted);color:var(--warning);border-color:#0000}.ui-badge--danger{background:var(--danger-muted);color:var(--danger);border-color:#0000}.ui-badge--info{background:var(--info-muted);color:var(--info);border-color:#0000}.ui-avatar{border-radius:var(--radius-full);background:var(--bg-2);border:1px solid var(--stroke-0);flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex;position:relative;overflow:hidden}.ui-avatar--sm{width:24px;height:24px}.ui-avatar--lg{width:40px;height:40px}.ui-avatar--xl{width:56px;height:56px}.ui-avatar__image{object-fit:cover;width:100%;height:100%}.ui-avatar__fallback{font-size:var(--text-sm);color:var(--text-1);text-transform:uppercase;font-weight:500}.ui-avatar--sm .ui-avatar__fallback{font-size:var(--text-xs)}.ui-avatar--lg .ui-avatar__fallback{font-size:var(--text-md)}.ui-progress{background:var(--bg-3);border-radius:var(--radius-full);width:100%;height:4px;position:relative;overflow:hidden}.ui-progress__bar{background:var(--text-0);border-radius:var(--radius-full);height:100%;transition:width var(--transition-slow)}.ui-progress--success .ui-progress__bar{background:var(--success)}.ui-progress--warning .ui-progress__bar{background:var(--warning)}.ui-progress--danger .ui-progress__bar{background:var(--danger)}.ui-tabs{background:var(--bg-2);border-radius:var(--radius-md);align-items:center;gap:2px;padding:2px;display:flex}.ui-tabs__tab{padding:var(--space-2)var(--space-3);border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--text-1);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;font-weight:500}.ui-tabs__tab:hover{color:var(--text-0)}.ui-tabs__tab--active{background:var(--bg-1);color:var(--text-0);box-shadow:var(--shadow-sm)}.ui-divider{align-items:center;gap:var(--space-3);color:var(--text-2);font-size:var(--text-xs);display:flex}.ui-divider:before,.ui-divider:after{content:"";background:var(--stroke-0);flex:1;height:1px}.ui-alert{gap:var(--space-3);padding:var(--space-3)var(--space-4);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);display:flex}.ui-alert__icon{width:16px;height:16px;color:var(--text-1);flex-shrink:0}.ui-alert__content{flex:1;min-width:0}.ui-alert__title{font-size:var(--text-sm);color:var(--text-0);margin-bottom:2px;font-weight:500}.ui-alert__description{font-size:var(--text-sm);color:var(--text-1)}.ui-alert--success{background:var(--success-muted);border-color:#0000}.ui-alert--success .ui-alert__icon{color:var(--success)}.ui-alert--warning{background:var(--warning-muted);border-color:#0000}.ui-alert--warning .ui-alert__icon{color:var(--warning)}.ui-alert--danger{background:var(--danger-muted);border-color:#0000}.ui-alert--danger .ui-alert__icon{color:var(--danger)}.ui-alert--info{background:var(--info-muted);border-color:#0000}.ui-alert--info .ui-alert__icon{color:var(--info)}.ui-dropdown{display:inline-flex;position:relative}.ui-dropdown__trigger{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--text-0);cursor:pointer;transition:all var(--transition-fast);display:inline-flex}.ui-dropdown__trigger:hover{background:var(--bg-3);border-color:var(--stroke-2)}.ui-dropdown__content{background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);min-width:180px;box-shadow:var(--shadow-lg);padding:var(--space-1);z-index:1000;opacity:0;visibility:hidden;transition:all var(--transition-fast);position:absolute;top:calc(100% + 4px);left:0;transform:translateY(-4px)}.ui-dropdown.is-open .ui-dropdown__content{opacity:1;visibility:visible;transform:translateY(0)}.ui-dropdown__item{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2)var(--space-3);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--text-sm);color:var(--text-0);cursor:pointer;transition:all var(--transition-fast);text-align:left;background:0 0;border:none;display:flex}.ui-dropdown__item:hover{background:var(--bg-2)}.ui-dropdown__item-icon{width:14px;height:14px;color:var(--text-1)}.ui-dropdown__separator{background:var(--stroke-0);height:1px;margin:var(--space-1)0}@supports (height:100dvh){.app-layout{height:100dvh;min-height:100dvh}}@media(max-width:768px){html,body{overscroll-behavior:none}.app-layout{position:fixed;inset:0;overflow:hidden}.main-body{-webkit-overflow-scrolling:touch;overflow:auto}}.sidebar__section--collapsed,.sidebar__section--collapsed .sidebar__section-header,.sidebar__section--collapsed .sidebar__section-header--expandable,.sidebar__section--collapsed .sidebar__section-header-toggle,.sidebar__section--collapsed .sidebar__item,.sidebar__section--collapsed .sidebar__item.is-active{box-shadow:none!important;background:0 0!important}.sidebar__section-header--expandable,.sidebar__section-header--expandable.is-active{background:0 0}.sidebar__section-content{overflow:hidden}.sidebar__section:not(.sidebar__section--collapsed) .sidebar__section-content{animation:.15s ease-out channelDropdownFadeIn}@keyframes channelDropdownFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.sidebar__profile-menu-item--upgrade{background:var(--bg-2);border:1px solid var(--stroke-1)}.sidebar__profile-menu-item--upgrade:hover{background:var(--bg-3);border-color:var(--stroke-2)}.sidebar__profile-menu-icon-btn--danger:hover{background:var(--danger)}@supports (color:color-mix(in lab,red,red)){.sidebar__profile-menu-icon-btn--danger:hover{background:color-mix(in srgb,var(--danger)15%,var(--bg-1))}}.sidebar__profile-menu-icon-btn--danger:hover{border-color:var(--danger)}@supports (color:color-mix(in lab,red,red)){.sidebar__profile-menu-icon-btn--danger:hover{border-color:color-mix(in srgb,var(--danger)30%,var(--stroke-1))}}.sidebar__profile-menu-icon-btn--danger:hover,.sidebar__profile-menu-icon-btn--danger:hover svg{color:var(--danger)}.sidebar__profile-menu-row{justify-content:center;gap:var(--space-2);padding:var(--space-2);display:flex}.sidebar__profile-menu-icon-btn{flex:1;width:auto;max-width:48px;height:28px}.notion-connect-prompt{min-height:100%;padding:var(--space-6);background:var(--bg-1);justify-content:center;align-items:center;display:flex}.notion-connect-card{width:100%;max-width:480px;padding:var(--space-8);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-xl);text-align:center}.notion-connect-logo{margin-bottom:var(--space-6)}.notion-connect-logo svg{width:64px;height:64px}.notion-connect-title{font-size:var(--text-2xl);margin-bottom:var(--space-3);color:var(--text-1);font-weight:600}.notion-connect-description{font-size:var(--text-base);color:var(--text-2);margin-bottom:var(--space-8);line-height:1.6}.notion-connect-features{gap:var(--space-4);margin-bottom:var(--space-8);text-align:left;grid-template-columns:repeat(2,1fr);display:grid}.notion-connect-feature{gap:var(--space-3);padding:var(--space-3);background:var(--bg-1);border-radius:var(--radius-lg);display:flex}.notion-connect-feature-icon{background:var(--bg-3);border-radius:var(--radius-md);width:36px;height:36px;color:var(--text-1);flex-shrink:0;justify-content:center;align-items:center;display:flex}.notion-connect-feature-text h3{font-size:var(--text-sm);margin-bottom:var(--space-1);color:var(--text-1);font-weight:600}.notion-connect-feature-text p{font-size:var(--text-xs);color:var(--text-2);line-height:1.4}.notion-connect-btn{justify-content:center;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-3)var(--space-6);font-size:var(--text-base);color:#fff;border-radius:var(--radius-lg);cursor:pointer;background:#000;border:none;font-weight:500;transition:background-color .2s;display:inline-flex}.notion-connect-btn:hover{background:#333}.notion-connect-btn svg{width:20px;height:20px}.notion-connect-note{margin-top:var(--space-4);font-size:var(--text-xs);color:var(--text-3);line-height:1.5}.notion-connect-help{align-items:center;gap:var(--space-1);margin-top:var(--space-4);font-size:var(--text-sm);color:var(--accent);text-decoration:none;display:inline-flex}.notion-connect-help:hover{text-decoration:underline}.notion-callback-page{min-height:100vh;padding:var(--space-6);background:var(--bg-1);justify-content:center;align-items:center;display:flex}.notion-callback-card{width:100%;max-width:400px;padding:var(--space-8);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-xl);text-align:center}.notion-callback-card h2{font-size:var(--text-xl);margin-top:var(--space-4);margin-bottom:var(--space-2);color:var(--text-1);font-weight:600}.notion-callback-card p{font-size:var(--text-base);color:var(--text-2);margin-bottom:var(--space-4)}.notion-callback-icon{border-radius:var(--radius-full);justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto;display:flex}.notion-callback-icon.success{background:var(--success)}@supports (color:color-mix(in lab,red,red)){.notion-callback-icon.success{background:color-mix(in srgb,var(--success)15%,var(--bg-1))}}.notion-callback-icon.success{color:var(--success)}.notion-callback-icon.error{background:var(--danger)}@supports (color:color-mix(in lab,red,red)){.notion-callback-icon.error{background:color-mix(in srgb,var(--danger)15%,var(--bg-1))}}.notion-callback-icon.error{color:var(--danger)}.notion-callback-redirect{font-size:var(--text-sm);color:var(--text-3)}.notion-workspace-info{padding:var(--space-2)var(--space-3)}.notion-workspace-badge{align-items:center;gap:var(--space-2);padding:var(--space-2);background:var(--bg-1);border-radius:var(--radius-md);display:flex}.notion-workspace-icon{border-radius:var(--radius-sm);object-fit:cover;width:24px;height:24px}.notion-workspace-icon-placeholder{color:#fff;border-radius:var(--radius-sm);width:24px;height:24px;font-size:var(--text-sm);background:#000;justify-content:center;align-items:center;font-weight:600;display:flex}.notion-workspace-name{font-size:var(--text-sm);color:var(--text-1);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.notes-nav-actions{padding:var(--space-2)}.notes-nav-actions .notes-nav-item{font-size:var(--text-sm);color:var(--text-2)}.notes-search-spinner{color:var(--text-3);animation:1s linear infinite spin}.note-icon-emoji{font-size:16px;line-height:1}.note-card-v2__title-row,.note-list-item__title-row{align-items:center;gap:var(--space-2);display:flex}.note-card-v2__database-badge,.note-list-item__database-badge{align-items:center;gap:var(--space-1);padding:var(--space-1)var(--space-2);font-size:var(--text-xs);color:var(--text-3);background:var(--bg-1);border-radius:var(--radius-sm);margin-top:var(--space-2);display:inline-flex}.note-list-item__link{padding:var(--space-1);color:var(--text-3);border-radius:var(--radius-sm);justify-content:center;align-items:center;transition:color .15s,background-color .15s;display:flex}.note-list-item__link:hover{color:var(--text-1);background:var(--bg-3)}.note-card-menu-item{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2)var(--space-3);font-size:var(--text-sm);color:var(--text-1);cursor:pointer;text-align:left;background:0 0;border:none;text-decoration:none;transition:background-color .15s;display:flex}.note-card-menu-item:hover{background:var(--bg-3)}.note-card-menu-item.danger{color:var(--danger)}.note-card-menu-item.danger:hover{background:var(--danger)}@supports (color:color-mix(in lab,red,red)){.note-card-menu-item.danger:hover{background:color-mix(in srgb,var(--danger)10%,var(--bg-2))}}.notion-detail-view .note-detail-view__content{max-width:800px;margin:0 auto}.notion-page-header{align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.notion-page-icon-wrapper{position:relative}.notion-page-icon-btn{background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-md);cursor:pointer;justify-content:center;align-items:center;width:48px;height:48px;transition:border-color .15s,background-color .15s;display:flex}.notion-page-icon-btn:hover{background:var(--bg-3);border-color:var(--stroke-2)}.notion-page-icon{font-size:28px;line-height:1}.notion-page-icon-placeholder{color:var(--text-3)}.notion-page-title{flex:1;font-size:var(--text-2xl)!important}.notion-emoji-picker{z-index:100;width:240px;padding:var(--space-3);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);margin-top:var(--space-2);position:absolute;top:100%;left:0}.notion-emoji-grid{gap:var(--space-1);grid-template-columns:repeat(6,1fr);display:grid}.notion-emoji-option{border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:32px;height:32px;font-size:18px;transition:background-color .15s;display:flex}.notion-emoji-option:hover{background:var(--bg-3)}.notion-emoji-remove{width:100%;margin-top:var(--space-2);padding:var(--space-2);font-size:var(--text-sm);color:var(--danger);border:1px solid var(--stroke-1);border-radius:var(--radius-md);cursor:pointer;background:0 0;transition:background-color .15s}.notion-emoji-remove:hover{background:var(--danger)}@supports (color:color-mix(in lab,red,red)){.notion-emoji-remove:hover{background:color-mix(in srgb,var(--danger)10%,var(--bg-2))}}.notion-emoji-overlay{z-index:99;position:fixed;inset:0}.database-view{flex-direction:column;height:100%;display:flex;overflow:hidden}.database-view--loading,.database-view--error,.database-view--not-found{justify-content:center;align-items:center;min-height:300px;display:flex}.database-view__header{padding:var(--space-4);border-bottom:1px solid var(--stroke-1)}.database-view__title-row{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.database-view__title{font-size:var(--text-lg);color:var(--text-0);font-weight:600}.database-view__actions{align-items:center;gap:var(--space-2);display:flex}.database-view__view-switcher{position:relative}.database-view__view-btn{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);font-size:var(--text-sm);color:var(--text-1);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-md);cursor:pointer;transition:all .15s;display:flex}.database-view__view-btn:hover{background:var(--bg-3);color:var(--text-0)}.database-view__view-menu{z-index:50;min-width:120px;margin-top:var(--space-1);padding:var(--space-1);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);position:absolute;top:100%;left:0}.database-view__view-option{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2)var(--space-3);font-size:var(--text-sm);color:var(--text-1);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;transition:all .15s;display:flex}.database-view__view-option:hover,.database-view__view-option.active{background:var(--bg-3);color:var(--text-0)}.database-view__action-btn{align-items:center;gap:var(--space-1);padding:var(--space-2)var(--space-3);font-size:var(--text-sm);color:var(--text-1);border-radius:var(--radius-md);cursor:pointer;background:0 0;border:1px solid #0000;transition:all .15s;display:flex}.database-view__action-btn:hover{background:var(--bg-2);color:var(--text-0)}.database-view__action-btn.active{background:var(--accent-muted);border-color:var(--accent-0);color:var(--accent-1)}.database-view__filter-count,.database-view__sort-count{min-width:18px;height:18px;padding:0 var(--space-1);font-size:var(--text-xs);color:var(--bg-0);background:var(--accent-0);border-radius:var(--radius-full);justify-content:center;align-items:center;font-weight:600;display:flex}.database-view__clear-btn{color:var(--danger)}.database-view__clear-btn:hover{background:var(--danger-muted)}.database-view__content{flex:1;overflow:auto}.database-view__overlay{z-index:40;position:fixed;inset:0}.database-table{padding:var(--space-4)}.database-table__wrapper{border:1px solid var(--stroke-1);border-radius:var(--radius-lg);overflow-x:auto}.database-table__table{border-collapse:collapse;width:100%}.database-table__th{padding:var(--space-3)var(--space-4);font-size:var(--text-sm);color:var(--text-2);text-align:left;background:var(--bg-2);border-bottom:1px solid var(--stroke-1);font-weight:500}.database-table__th-content{align-items:center;gap:var(--space-2);display:flex}.database-table__th-type{font-size:var(--text-xs);color:var(--text-3);text-transform:capitalize}.database-table__th--actions{width:40px}.database-table__row{cursor:pointer;transition:background-color .15s}.database-table__row:hover{background:var(--bg-2)}.database-table__td{padding:var(--space-3)var(--space-4);font-size:var(--text-sm);color:var(--text-1);border-bottom:1px solid var(--stroke-0)}.database-table__td--actions{padding:var(--space-2)}.database-table__title-cell{align-items:center;gap:var(--space-2);display:flex}.database-table__icon{font-size:14px}.database-table__title{color:var(--text-0);font-weight:500}.database-table__external-link{width:28px;height:28px;color:var(--text-3);border-radius:var(--radius-sm);justify-content:center;align-items:center;transition:all .15s;display:flex}.database-table__external-link:hover{color:var(--text-1);background:var(--bg-3)}.database-table__empty-cell{color:var(--text-3)}.database-table__select,.database-table__status{padding:var(--space-1)var(--space-2);font-size:var(--text-xs);border-radius:var(--radius-sm);display:inline-flex}.database-table__multi-select{gap:var(--space-1);flex-wrap:wrap;display:flex}.database-table__more{font-size:var(--text-xs);color:var(--text-2)}.database-table__number{font-family:var(--font-mono)}.database-table__date{white-space:nowrap}.database-table__checkbox{color:var(--success)}.database-table__url,.database-table__email,.database-table__phone{color:var(--info);text-decoration:none}.database-table__url:hover,.database-table__email:hover,.database-table__phone:hover{text-decoration:underline}.database-table__relation{color:var(--text-2);font-size:var(--text-xs)}.database-table__load-more{padding:var(--space-4);justify-content:center;display:flex}.database-table__empty{text-align:center;padding:var(--space-8);color:var(--text-2)}.database-board{height:100%;padding:var(--space-4)}.database-board__columns{gap:var(--space-4);height:100%;padding-bottom:var(--space-4);display:flex;overflow-x:auto}.database-board__column{flex-direction:column;flex-shrink:0;width:280px;max-height:100%;display:flex}.database-board__column-header{align-items:center;gap:var(--space-2);padding:var(--space-3);margin-bottom:var(--space-2);display:flex}.database-board__column-color{border-radius:var(--radius-full);width:8px;height:8px}.database-board__column-name{font-size:var(--text-sm);color:var(--text-1);flex:1;font-weight:500}.database-board__column-count{font-size:var(--text-xs);color:var(--text-3)}.database-board__cards{gap:var(--space-2);padding:var(--space-1);flex-direction:column;flex:1;display:flex;overflow-y:auto}.database-board__card{padding:var(--space-3);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-md);cursor:pointer;transition:all .15s}.database-board__card:hover{background:var(--bg-3);border-color:var(--stroke-2)}.database-board__card-header{align-items:flex-start;gap:var(--space-2);display:flex}.database-board__card-icon{font-size:14px}.database-board__card-title{font-size:var(--text-sm);color:var(--text-0);word-break:break-word;flex:1;font-weight:500}.database-board__card-menu{width:24px;height:24px;color:var(--text-3);border-radius:var(--radius-sm);cursor:pointer;opacity:0;background:0 0;border:none;justify-content:center;align-items:center;margin:-4px -4px 0 0;transition:all .15s;display:flex}.database-board__card:hover .database-board__card-menu{opacity:1}.database-board__card-menu:hover{color:var(--text-1);background:var(--bg-3)}.database-board__card-properties{gap:var(--space-2);margin-top:var(--space-3);flex-direction:column;display:flex}.database-board__prop{align-items:center;gap:var(--space-2);font-size:var(--text-xs);display:flex}.database-board__prop-name{color:var(--text-3)}.database-board__prop-text{color:var(--text-1)}.database-board__prop-tags{gap:var(--space-1);flex-wrap:wrap;display:flex}.database-board__prop-tag{padding:0 var(--space-1);font-size:var(--text-xs);border-radius:var(--radius-xs)}.database-board__empty{padding:var(--space-4);text-align:center;font-size:var(--text-xs);color:var(--text-3)}.database-board__no-group-message{padding:var(--space-4);text-align:center;color:var(--text-2);font-size:var(--text-sm)}.database-calendar{flex-direction:column;height:100%;display:flex}.database-calendar--no-date{justify-content:center;align-items:center}.database-calendar__no-date-message{text-align:center;color:var(--text-2)}.database-calendar__header{align-items:center;gap:var(--space-4);padding:var(--space-4);border-bottom:1px solid var(--stroke-1);display:flex}.database-calendar__nav{gap:var(--space-1);display:flex}.database-calendar__nav-btn{width:32px;height:32px;color:var(--text-1);border:1px solid var(--stroke-1);border-radius:var(--radius-md);cursor:pointer;background:0 0;justify-content:center;align-items:center;transition:all .15s;display:flex}.database-calendar__nav-btn:hover{background:var(--bg-2);color:var(--text-0)}.database-calendar__month-title{font-size:var(--text-lg);color:var(--text-0);flex:1;font-weight:600}.database-calendar__today-btn{padding:var(--space-2)var(--space-3);font-size:var(--text-sm);color:var(--text-1);border:1px solid var(--stroke-1);border-radius:var(--radius-md);cursor:pointer;background:0 0;transition:all .15s}.database-calendar__today-btn:hover{background:var(--bg-2);color:var(--text-0)}.database-calendar__content{flex:1;display:flex;overflow:hidden}.database-calendar__grid{padding:var(--space-4);flex-direction:column;flex:1;display:flex}.database-calendar__day-headers{margin-bottom:var(--space-2);grid-template-columns:repeat(7,1fr);display:grid}.database-calendar__day-header{padding:var(--space-2);font-size:var(--text-xs);color:var(--text-2);text-align:center;font-weight:500}.database-calendar__days{background:var(--stroke-0);border:1px solid var(--stroke-1);border-radius:var(--radius-md);flex:1;grid-template-columns:repeat(7,1fr);grid-auto-rows:minmax(80px,1fr);gap:1px;display:grid;overflow:hidden}.database-calendar__day{padding:var(--space-2);background:var(--bg-1);cursor:pointer;transition:background-color .15s}.database-calendar__day:hover{background:var(--bg-2)}.database-calendar__day--other-month{background:var(--bg-0)}.database-calendar__day--other-month .database-calendar__day-number{color:var(--text-3)}.database-calendar__day--today .database-calendar__day-number{background:var(--accent-0);width:24px;height:24px;color:var(--bg-0);border-radius:var(--radius-full);justify-content:center;align-items:center;display:flex}.database-calendar__day--selected{background:var(--accent-muted)}.database-calendar__day-number{font-size:var(--text-sm);color:var(--text-1);margin-bottom:var(--space-1);font-weight:500}.database-calendar__day-events{flex-direction:column;gap:2px;display:flex}.database-calendar__event-dot{padding:2px var(--space-1);font-size:var(--text-xs);background:var(--accent-muted);border-radius:var(--radius-xs);text-overflow:ellipsis;white-space:nowrap;cursor:pointer;overflow:hidden}.database-calendar__event-dot:hover{background:var(--accent-0);color:var(--bg-0)}.database-calendar__more-events{font-size:var(--text-xs);color:var(--text-2)}.database-calendar__selected-panel{width:280px;padding:var(--space-4);border-left:1px solid var(--stroke-1);overflow-y:auto}.database-calendar__selected-title{font-size:var(--text-sm);color:var(--text-0);margin-bottom:var(--space-3);font-weight:500}.database-calendar__no-events{font-size:var(--text-sm);color:var(--text-2)}.database-calendar__selected-events{gap:var(--space-2);flex-direction:column;display:flex}.database-calendar__selected-event{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-3);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-md);cursor:pointer;transition:all .15s;display:flex}.database-calendar__selected-event:hover{background:var(--bg-3);border-color:var(--stroke-2)}.database-calendar__selected-event-icon{font-size:16px}.database-calendar__selected-event-title{font-size:var(--text-sm);color:var(--text-0)}.database-gallery{padding:var(--space-4)}.database-gallery__grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(240px,1fr));display:grid}.database-gallery__card{background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);cursor:pointer;transition:all .15s;overflow:hidden}.database-gallery__card:hover{border-color:var(--stroke-2);box-shadow:var(--shadow-md);transform:translateY(-2px)}.database-gallery__card-cover{background:var(--bg-3);height:140px}.database-gallery__card-image{object-fit:cover;width:100%;height:100%}.database-gallery__card-placeholder{width:100%;height:100%;color:var(--text-3);justify-content:center;align-items:center;display:flex}.database-gallery__card-content{padding:var(--space-3)}.database-gallery__card-header{align-items:flex-start;gap:var(--space-2);display:flex}.database-gallery__card-icon{font-size:16px}.database-gallery__card-title{font-size:var(--text-sm);color:var(--text-0);word-break:break-word;flex:1;font-weight:500}.database-gallery__card-properties{gap:var(--space-2);margin-top:var(--space-3);flex-direction:column;display:flex}.database-gallery__prop{align-items:center;gap:var(--space-2);font-size:var(--text-xs);display:flex}.database-gallery__prop-name{color:var(--text-3)}.database-gallery__prop-text{color:var(--text-1)}.database-gallery__prop-select,.database-gallery__prop-status{padding:0 var(--space-1);border-radius:var(--radius-xs)}.database-gallery__prop-date{color:var(--text-2)}.database-gallery__prop-tags{gap:var(--space-1);flex-wrap:wrap;display:flex}.database-gallery__prop-tag{padding:0 var(--space-1);font-size:var(--text-xs);border-radius:var(--radius-xs)}.database-gallery__load-more{padding:var(--space-4);justify-content:center;display:flex}.database-gallery__empty{align-items:center;gap:var(--space-3);padding:var(--space-8);color:var(--text-2);flex-direction:column;display:flex}.filter-bar{padding:var(--space-3)var(--space-4);background:var(--bg-2);border-top:1px solid var(--stroke-1)}.filter-bar__filters{gap:var(--space-2);margin-bottom:var(--space-3);flex-direction:column;display:flex}.filter-bar__filter{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.filter-bar__select{padding:var(--space-2)var(--space-3);font-size:var(--text-sm);color:var(--text-0);background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-md);min-width:120px}.filter-bar__select--operator{min-width:140px}.filter-bar__input{padding:var(--space-2)var(--space-3);font-size:var(--text-sm);color:var(--text-0);background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-md);min-width:120px}.filter-bar__remove{width:28px;height:28px;color:var(--text-2);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:all .15s;display:flex}.filter-bar__remove:hover{color:var(--danger);background:var(--danger-muted)}.filter-bar__actions{gap:var(--space-2);display:flex}.filter-bar__add{align-items:center;gap:var(--space-1);padding:var(--space-2)var(--space-3);font-size:var(--text-sm);color:var(--text-1);border:1px dashed var(--stroke-1);border-radius:var(--radius-md);cursor:pointer;background:0 0;transition:all .15s;display:flex}.filter-bar__add:hover{background:var(--bg-3);border-color:var(--stroke-2);color:var(--text-0)}.filter-bar__apply{padding:var(--space-2)var(--space-3);font-size:var(--text-sm);color:var(--bg-0);background:var(--accent-0);border-radius:var(--radius-md);cursor:pointer;border:none;transition:all .15s}.filter-bar__apply:hover{background:var(--accent-1)}.sort-menu{z-index:50;width:280px;margin-top:var(--space-1);padding:var(--space-2);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);position:absolute;top:100%;right:0}.sort-menu__current{margin-bottom:var(--space-3)}.sort-menu__label{padding:var(--space-2);font-size:var(--text-xs);color:var(--text-2);text-transform:uppercase;font-weight:500}.sort-menu__sort{align-items:center;gap:var(--space-2);padding:var(--space-2);background:var(--bg-3);border-radius:var(--radius-sm);margin-bottom:var(--space-1);display:flex}.sort-menu__sort-property{font-size:var(--text-sm);color:var(--text-0);flex:1}.sort-menu__sort-direction{align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--text-2);display:flex}.sort-menu__sort-remove{width:20px;height:20px;color:var(--text-3);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:color .15s;display:flex}.sort-menu__sort-remove:hover{color:var(--danger)}.sort-menu__add{border-top:1px solid var(--stroke-1);padding-top:var(--space-2)}.sort-menu__property{padding:var(--space-2);border-radius:var(--radius-sm);align-items:center;transition:background-color .15s;display:flex}.sort-menu__property:hover{background:var(--bg-3)}.sort-menu__property-name{font-size:var(--text-sm);color:var(--text-1);flex:1}.sort-menu__property-actions{gap:var(--space-1);display:flex}.sort-menu__direction-btn{width:24px;height:24px;color:var(--text-2);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:all .15s;display:flex}.sort-menu__direction-btn:hover{color:var(--text-0);background:var(--bg-3)}.sort-menu__empty{padding:var(--space-3);text-align:center;color:var(--text-2);font-size:var(--text-sm)}.sort-menu__footer{border-top:1px solid var(--stroke-1);padding-top:var(--space-2);margin-top:var(--space-2)}.sort-menu__close{width:100%;padding:var(--space-2);font-size:var(--text-sm);color:var(--text-1);background:var(--bg-3);border-radius:var(--radius-md);cursor:pointer;border:none;transition:all .15s}.sort-menu__close:hover{background:var(--stroke-1);color:var(--text-0)}.page-tree{flex-direction:column;height:100%;display:flex}.page-tree--loading{justify-content:center;align-items:center}.page-tree__loading{font-size:var(--text-sm);color:var(--text-2)}.page-tree__header{padding:var(--space-3);border-bottom:1px solid var(--stroke-0);justify-content:space-between;align-items:center;display:flex}.page-tree__title{font-size:var(--text-sm);color:var(--text-2);font-weight:500}.page-tree__add-btn{width:24px;height:24px;color:var(--text-2);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:all .15s;display:flex}.page-tree__add-btn:hover{color:var(--text-0);background:var(--bg-2)}.page-tree__list{padding:var(--space-2)0;flex:1;overflow-y:auto}.page-tree__empty{align-items:center;gap:var(--space-3);padding:var(--space-6);text-align:center;flex-direction:column;display:flex}.page-tree__empty p{font-size:var(--text-sm);color:var(--text-2)}.page-tree__create-btn{align-items:center;gap:var(--space-1);padding:var(--space-2)var(--space-3);font-size:var(--text-sm);color:var(--text-1);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-md);cursor:pointer;transition:all .15s;display:flex}.page-tree__create-btn:hover{background:var(--bg-3);color:var(--text-0)}.page-tree__footer{padding:var(--space-3);border-top:1px solid var(--stroke-0)}.page-tree__refresh-btn{width:100%;padding:var(--space-2);font-size:var(--text-sm);color:var(--text-2);border:1px solid var(--stroke-1);border-radius:var(--radius-md);cursor:pointer;background:0 0;transition:all .15s}.page-tree__refresh-btn:hover{background:var(--bg-2);color:var(--text-0)}.page-tree__item-wrapper{position:relative}.page-tree__item{align-items:center;gap:var(--space-1);padding:var(--space-2);cursor:pointer;transition:background-color .15s;display:flex}.page-tree__item:hover{background:var(--bg-2)}.page-tree__item--selected{background:var(--accent-muted)}.page-tree__toggle{width:18px;height:18px;color:var(--text-3);border-radius:var(--radius-xs);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:all .15s;display:flex}.page-tree__toggle:hover{color:var(--text-1);background:var(--bg-3)}.page-tree__toggle-spacer{width:18px}.page-tree__icon{width:18px;height:18px;color:var(--text-2);justify-content:center;align-items:center;display:flex}.page-tree__icon-emoji{font-size:14px}.page-tree__item-title{font-size:var(--text-sm);color:var(--text-1);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.page-tree__item--selected .page-tree__item-title{color:var(--text-0)}.page-tree__item-actions{opacity:0;transition:opacity .15s}.page-tree__item:hover .page-tree__item-actions{opacity:1}.page-tree__item-action{width:24px;height:24px;color:var(--text-3);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:all .15s;display:flex}.page-tree__item-action:hover{color:var(--text-1);background:var(--bg-3)}.page-tree__menu{top:100%;right:var(--space-2);z-index:100;min-width:160px;padding:var(--space-1);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);position:absolute}.page-tree__menu-item{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2)var(--space-3);font-size:var(--text-sm);color:var(--text-1);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;text-decoration:none;transition:all .15s;display:flex}.page-tree__menu-item:hover{background:var(--bg-3);color:var(--text-0)}.page-tree__menu-item--danger{color:var(--danger)}.page-tree__menu-item--danger:hover{background:var(--danger-muted)}.page-tree__menu-overlay{z-index:99;position:fixed;inset:0}.notion-settings-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.notion-settings{background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);width:100%;max-width:520px;max-height:90vh;box-shadow:var(--shadow-lg);flex-direction:column;display:flex;overflow:hidden}.notion-settings__header{padding:var(--space-4);border-bottom:1px solid var(--stroke-1);justify-content:space-between;align-items:center;display:flex}.notion-settings__header-title{align-items:center;gap:var(--space-2);display:flex}.notion-settings__header-title h2{font-size:var(--text-lg);color:var(--text-0);font-weight:600}.notion-settings__close{width:32px;height:32px;color:var(--text-2);border-radius:var(--radius-md);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:all .15s;display:flex}.notion-settings__close:hover{color:var(--text-0);background:var(--bg-2)}.notion-settings__content{padding:var(--space-4);flex:1;overflow-y:auto}.notion-settings__section{margin-bottom:var(--space-6)}.notion-settings__section:last-child{margin-bottom:0}.notion-settings__section--danger{padding-top:var(--space-4);border-top:1px solid var(--stroke-1)}.notion-settings__section-title{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-0);margin-bottom:var(--space-3);font-weight:600;display:flex}.notion-settings__status{gap:var(--space-3);flex-direction:column;display:flex}.notion-settings__status-indicator{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-1);display:flex}.notion-settings__status-icon--connected{color:var(--success)}.notion-settings__status-icon--disconnected{color:var(--danger)}.notion-settings__workspace{padding:var(--space-3);background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-md)}.notion-settings__workspace-info{align-items:center;gap:var(--space-3);display:flex}.notion-settings__workspace-icon{border-radius:var(--radius-md);object-fit:cover;width:40px;height:40px}.notion-settings__workspace-icon-placeholder{width:40px;height:40px;font-size:var(--text-lg);color:var(--text-0);background:var(--accent-muted);border-radius:var(--radius-md);justify-content:center;align-items:center;font-weight:600;display:flex}.notion-settings__workspace-details{gap:var(--space-1);flex-direction:column;display:flex}.notion-settings__workspace-name{font-size:var(--text-sm);color:var(--text-0);font-weight:500}.notion-settings__workspace-email{font-size:var(--text-xs);color:var(--text-2)}.notion-settings__permissions{gap:var(--space-3);flex-direction:column;display:flex}.notion-settings__permissions-description{font-size:var(--text-sm);color:var(--text-2);line-height:1.5}.notion-settings__permission-list{gap:var(--space-2);flex-direction:column;display:flex}.notion-settings__permission{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-1);display:flex}.notion-settings__permission svg{color:var(--success)}.notion-settings__permission-actions{gap:var(--space-2);margin-top:var(--space-2);display:flex}.notion-settings__permissions-help{font-size:var(--text-xs);color:var(--text-3);line-height:1.5}.notion-settings__cache{gap:var(--space-3);flex-direction:column;display:flex}.notion-settings__cache-description{font-size:var(--text-sm);color:var(--text-2);line-height:1.5}.notion-settings__disconnect{gap:var(--space-3);flex-direction:column;display:flex}.notion-settings__disconnect-description{font-size:var(--text-sm);color:var(--text-2);line-height:1.5}.notion-settings__btn{align-items:center;gap:var(--space-2);padding:var(--space-2)var(--space-4);font-size:var(--text-sm);border-radius:var(--radius-md);cursor:pointer;text-decoration:none;transition:all .15s;display:inline-flex}.notion-settings__btn--primary{color:var(--bg-0);background:var(--accent-0);border:none}.notion-settings__btn--primary:hover{background:var(--accent-1)}.notion-settings__btn--secondary{color:var(--text-1);background:var(--bg-2);border:1px solid var(--stroke-1)}.notion-settings__btn--secondary:hover{background:var(--bg-3);color:var(--text-0)}.notion-settings__btn--danger{color:#fff;background:var(--danger);border:none}.notion-settings__btn--danger:hover{background:var(--danger)}@supports (color:color-mix(in lab,red,red)){.notion-settings__btn--danger:hover{background:color-mix(in srgb,var(--danger)80%,#000)}}.notion-settings__btn:disabled{opacity:.5;cursor:not-allowed}.animate-spin{animation:1s linear infinite spin}.content-container__inner:has(.chat-page){padding:0}.content-container:has(.chat-page){background:var(--bg-0)}.chat-page{background:var(--bg-0);width:100%;height:100%;display:flex}.chat-sidebar{background:var(--bg-0);border-right:1px solid var(--stroke-0);border-top-left-radius:var(--radius-lg);border-bottom-left-radius:var(--radius-lg);flex-direction:column;width:260px;transition:transform .2s,width .2s;display:flex}.chat-sidebar--hidden{width:0;overflow:hidden;transform:translate(-100%)}.chat-sidebar__header{border-bottom:1px solid var(--stroke-0);justify-content:space-between;align-items:center;padding:16px;display:flex}.chat-sidebar__title{font-size:var(--text-md);color:var(--text-0);font-weight:600}.chat-sidebar__list{flex:1;padding:8px;overflow-y:auto}.chat-sidebar__item{border-radius:var(--radius-md);width:100%;color:var(--text-1);font-size:var(--text-sm);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:10px;padding:10px 12px;transition:all .15s;display:flex}.chat-sidebar__item:hover{background:var(--bg-2);color:var(--text-0)}.chat-sidebar__item--active{background:var(--bg-3);color:var(--text-0)}.chat-sidebar__item-title{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.chat-sidebar__item-delete{opacity:0;border-radius:var(--radius-sm);color:var(--text-2);padding:4px;transition:all .15s}.chat-sidebar__item:hover .chat-sidebar__item-delete{opacity:1}.chat-sidebar__item-delete:hover{background:var(--danger-muted);color:var(--danger)}.chat-sidebar__empty{text-align:center;color:var(--text-2);font-size:var(--text-sm);padding:20px}.chat-sidebar__usage{border-top:1px solid var(--stroke-0);padding:12px 16px}.chat-sidebar__usage-bar{background:var(--bg-3);border-radius:var(--radius-full);height:4px;margin-bottom:6px;overflow:hidden}.chat-sidebar__usage-fill{background:var(--accent-0);height:100%;transition:width .3s}.chat-sidebar__usage-text{font-size:var(--text-xs);color:var(--text-2)}.chat-main{flex-direction:column;flex:1;min-width:0;display:flex;position:relative}.chat-main--animating{animation:.3s chatFadeIn}@keyframes chatFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.chat-header--mobile{border-bottom:1px solid var(--stroke-0);align-items:center;gap:12px;padding:12px 16px;display:none}.chat-header__title{font-size:var(--text-md);color:var(--text-0);text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:500;overflow:hidden}.chat-landing{flex:1;justify-content:center;align-items:center;padding:24px;display:flex}.chat-landing__content{flex-direction:column;align-items:center;width:100%;max-width:600px;animation:.4s chatLandingFadeIn;display:flex}@keyframes chatLandingFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.chat-landing__icon{background:linear-gradient(135deg,var(--accent-0),#8b5cf6);border-radius:var(--radius-xl);color:#fff;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:16px;display:flex}.chat-landing__logo{justify-content:center;align-items:center;width:160px;height:160px;margin-bottom:24px;display:flex}.chat-landing__title{color:var(--text-0);margin-bottom:8px;font-size:24px;font-weight:600}.chat-landing__subtitle{font-size:var(--text-md);color:var(--text-1);margin-bottom:32px}.chat-landing__input-wrapper{width:100%;margin-bottom:24px}.chat-landing__prompts{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:24px;display:flex}.chat-landing__prompt{background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-full);color:var(--text-1);font-size:var(--text-sm);cursor:pointer;align-items:center;gap:8px;padding:10px 16px;transition:all .15s;display:flex}.chat-landing__prompt:hover{background:var(--bg-3);color:var(--text-0)}.chat-prompt-chip{background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-full);color:var(--text-1);font-size:var(--text-sm);cursor:pointer;align-items:center;gap:8px;padding:10px 16px;transition:all .15s;display:inline-flex}.chat-prompt-chip:hover{background:var(--bg-3);color:var(--text-0);border-color:var(--stroke-2)}.chat-prompt-chip:disabled{opacity:.5;cursor:not-allowed}.chat-landing__limit{background:var(--warning-muted);border-radius:var(--radius-md);color:var(--warning);font-size:var(--text-sm);margin-top:16px;padding:10px 16px}.chat-input{background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-lg);flex-direction:column;transition:border-color .15s;display:flex;overflow:hidden}.chat-input:focus-within{border-color:var(--accent-0)}.chat-input__main{flex:1;max-height:200px;overflow-y:auto}.chat-input__textarea{width:100%;min-height:48px;max-height:200px;color:var(--text-0);font-size:var(--text-md);resize:none;background:0 0;border:none;outline:none;padding:12px 16px}.chat-input__textarea::placeholder{color:var(--text-2)}.chat-input__attachments{flex-wrap:wrap;gap:6px;padding:0 12px 8px;display:flex}.chat-input__attachment{background:var(--bg-2);border-radius:var(--radius-sm);font-size:var(--text-xs);color:var(--text-1);align-items:center;gap:6px;padding:4px 10px;display:flex}.chat-input__attachment button{color:var(--text-2);padding:2px;transition:color .15s;display:flex}.chat-input__attachment button:hover{color:var(--danger)}.chat-input__actions{justify-content:flex-end;align-items:center;gap:8px;padding:8px 12px;display:flex}.chat-input-container{width:100%}.chat-input-card{background:var(--bg-1);border:1px solid var(--stroke-1);border-radius:var(--radius-xl);flex-direction:column;transition:border-color .2s,box-shadow .2s;display:flex;overflow:hidden}.chat-input-card:focus-within{border-color:var(--accent-0);box-shadow:0 0 0 3px #8b5cf626}.chat-input-textarea-wrapper{padding:16px 16px 8px}.chat-input-textarea{width:100%;min-height:48px;max-height:200px;color:var(--text-0);font-size:var(--text-md);resize:none;background:0 0;box-shadow:none!important;border:none!important;outline:none!important}.chat-input-textarea::placeholder{color:var(--text-2)}.chat-input-attachments{flex-wrap:wrap;gap:8px;padding:0 16px 8px;display:flex}.chat-input-attachment-chip{background:var(--bg-2);border:1px solid var(--stroke-1);border-radius:var(--radius-full);font-size:var(--text-xs);color:var(--text-1);align-items:center;gap:6px;padding:6px 12px;display:inline-flex}.chat-input-attachment-name{text-overflow:ellipsis;white-space:nowrap;max-width:150px;overflow:hidden}.chat-input-attachment-remove{color:var(--text-2);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:2px;transition:color .15s;display:flex}.chat-input-attachment-remove:hover{color:var(--danger)}.chat-input-actions{border-top:1px solid var(--stroke-0);justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.chat-input-model{border-radius:var(--radius-sm);background:var(--bg-2);align-items:center;gap:6px;padding:4px 8px;display:flex}.chat-input-buttons{align-items:center;gap:4px;display:flex}.chat-active{flex-direction:column;flex:1;min-height:0;display:flex}.chat-active__limit-banner{background:var(--warning-muted);color:var(--warning);font-size:var(--text-sm);text-align:center;border-bottom:1px solid var(--stroke-0);padding:10px 16px}.chat-messages{flex-direction:column;flex:1;gap:16px;padding:24px;display:flex;overflow-y:auto}.chat-message{gap:8px;max-width:85%;animation:.2s messageSlideIn;display:flex}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.chat-message--user{flex-direction:row-reverse;align-self:flex-end}.chat-message--assistant{align-self:flex-start}.chat-message__avatar{border-radius:var(--radius-full);width:32px;height:32px;font-size:var(--text-xs);flex-shrink:0;justify-content:center;align-items:center;font-weight:500;display:flex}.chat-message__avatar--user{background:var(--accent-0);color:#fff}.chat-message__avatar--assistant{background:linear-gradient(135deg,var(--accent-0),#8b5cf6);color:#fff}.chat-message__body{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.chat-message__content{border-radius:var(--radius-lg);font-size:var(--text-md);padding:12px 16px;line-height:1.5}.chat-message--user .chat-message__content{background:var(--accent-0);color:#fff}.chat-message--assistant .chat-message__content{background:var(--bg-2);color:var(--text-0)}.chat-message__text{white-space:pre-wrap;word-break:break-word}.chat-message__markdown{line-height:1.6}.chat-message__markdown p{margin-bottom:12px}.chat-message__markdown p:last-child{margin-bottom:0}.chat-message__markdown ul,.chat-message__markdown ol{margin:12px 0;padding-left:20px}.chat-message__markdown li{margin-bottom:4px}.chat-message__markdown code{background:var(--bg-3);border-radius:var(--radius-sm);font-size:var(--text-sm);font-family:var(--font-mono);padding:2px 6px}.chat-message__markdown pre{background:var(--bg-0);border:1px solid var(--stroke-1);border-radius:var(--radius-md);margin:12px 0;padding:12px;overflow-x:auto}.chat-message__markdown pre code{font-size:var(--text-sm);background:0 0;padding:0}.chat-message__markdown strong{color:var(--text-0);font-weight:600}.chat-message__markdown em{font-style:italic}.chat-message__markdown a{color:var(--info);text-decoration:underline}.chat-message__markdown blockquote{border-left:3px solid var(--accent-0);color:var(--text-1);margin:12px 0;padding-left:12px}.chat-message__actions{opacity:0;align-self:flex-end;gap:4px;padding-bottom:8px;transition:opacity .15s;display:flex}.chat-message:hover .chat-message__actions{opacity:1}.chat-message__action{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--text-2);justify-content:center;align-items:center;transition:all .15s;display:flex}.chat-message__action:hover{background:var(--bg-2);color:var(--text-0)}.chat-message__loading{color:var(--text-1);font-size:var(--text-sm);align-items:center;gap:8px;padding:8px 0;display:flex}.chat-message__loading-dots{align-items:center;gap:4px;display:flex}.chat-message__loading-dots span{background:var(--text-2);border-radius:50%;width:8px;height:8px;animation:1.4s ease-in-out infinite both loadingDotBounce}.chat-message__loading-dots span:first-child{animation-delay:-.32s}.chat-message__loading-dots span:nth-child(2){animation-delay:-.16s}.chat-message__loading-dots span:nth-child(3){animation-delay:0s}@keyframes loadingDotBounce{0%,80%,to{opacity:.5;transform:scale(.6)}40%{opacity:1;transform:scale(1)}}.chat-message__edit{flex-direction:column;gap:8px;display:flex}.chat-message__edit-input{background:var(--bg-0);border:1px solid var(--stroke-1);border-radius:var(--radius-md);min-height:60px;color:var(--text-0);font-size:var(--text-md);resize:vertical;padding:8px 12px}.chat-message__edit-actions{gap:8px;display:flex}.chat-message__attachments{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.chat-message__attachment{background:var(--bg-0);border-radius:var(--radius-sm);font-size:var(--text-xs);color:var(--text-1);padding:4px 10px}.chat-active__input{background:var(--bg-0);max-width:48rem;margin:0 auto;padding:16px 24px 24px}.chat-sidebar-backdrop{z-index:99;opacity:0;pointer-events:none;background:#00000080;transition:opacity .2s;display:none;position:fixed;inset:0}.chat-sidebar-backdrop--visible{opacity:1;pointer-events:auto}@media(max-width:768px){.chat-page{position:relative;overflow:hidden}.chat-sidebar-backdrop{display:block}.chat-sidebar{z-index:100;box-shadow:var(--shadow-lg);width:280px;transition:transform .25s;position:fixed;top:0;bottom:0;left:0}.chat-sidebar--hidden{transform:translate(-100%)}.chat-main{width:100%;margin-left:0}.chat-header--mobile{display:flex}.chat-message{max-width:95%}.chat-messages{padding:16px}.chat-active__input{padding:12px 16px 16px}}@keyframes webSearchPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(.95)}}@keyframes webSearchScan{0%{opacity:0;transform:translateY(-100%)}20%{opacity:1}80%{opacity:1}to{opacity:0;transform:translateY(100%)}}@keyframes webSearchDot{0%,80%,to{opacity:.5;transform:scale(.8)}40%{opacity:1;transform:scale(1.2)}}.web-search-indicator{animation:2s ease-in-out infinite webSearchPulse}.web-search-indicator:before{content:"";background:linear-gradient(#0000,#3b82f64d,#0000);animation:1.5s ease-in-out infinite webSearchScan;position:absolute;inset:0}.web-search-dot-1{animation:1.4s ease-in-out infinite webSearchDot}.web-search-dot-2{animation:1.4s ease-in-out .2s infinite webSearchDot}.web-search-dot-3{animation:1.4s ease-in-out .4s infinite webSearchDot}}@layer utilities{.\@container\/card-header{container:card-header/inline-size}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing)*0)}.inset-x-0{inset-inline:calc(var(--spacing)*0)}.inset-y-0{inset-block:calc(var(--spacing)*0)}.end-0{inset-inline-end:calc(var(--spacing)*0)}.-top-12{top:calc(var(--spacing)*-12)}.top-1\/2{top:50%}.top-2{top:calc(var(--spacing)*2)}.top-4{top:calc(var(--spacing)*4)}.top-7{top:calc(var(--spacing)*7)}.top-\[50\%\]{top:50%}.-right-12{right:calc(var(--spacing)*-12)}.right-2{right:calc(var(--spacing)*2)}.right-4{right:calc(var(--spacing)*4)}.-bottom-12{bottom:calc(var(--spacing)*-12)}.bottom-0{bottom:calc(var(--spacing)*0)}.bottom-4{bottom:calc(var(--spacing)*4)}.bottom-8{bottom:calc(var(--spacing)*8)}.-left-12{left:calc(var(--spacing)*-12)}.left-1\/2{left:50%}.left-2{left:calc(var(--spacing)*2)}.left-3{left:calc(var(--spacing)*3)}.left-\[50\%\]{left:50%}.z-2{z-index:2}.z-3{z-index:3}.z-20{z-index:20}.z-50{z-index:50}.z-\[9999\]{z-index:9999}.z-\[10000\]{z-index:10000}.z-\[10001\]{z-index:10001}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.row-start-1{grid-row-start:1}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.m-0{margin:calc(var(--spacing)*0)}.m-4{margin:calc(var(--spacing)*4)}.-mx-0\.5{margin-inline:calc(var(--spacing)*-.5)}.-mx-1{margin-inline:calc(var(--spacing)*-1)}.-mx-px{margin-inline:-1px}.mx-2{margin-inline:calc(var(--spacing)*2)}.mx-4{margin-inline:calc(var(--spacing)*4)}.my-1{margin-block:calc(var(--spacing)*1)}.my-2{margin-block:calc(var(--spacing)*2)}.my-3{margin-block:calc(var(--spacing)*3)}.-mt-4{margin-top:calc(var(--spacing)*-4)}.mt-0\.5{margin-top:calc(var(--spacing)*.5)}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-3{margin-top:calc(var(--spacing)*3)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-8{margin-top:calc(var(--spacing)*8)}.mt-auto{margin-top:auto}.mr-1{margin-right:calc(var(--spacing)*1)}.mr-2{margin-right:calc(var(--spacing)*2)}.mr-4{margin-right:calc(var(--spacing)*4)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-6{margin-bottom:calc(var(--spacing)*6)}.mb-8{margin-bottom:calc(var(--spacing)*8)}.-ml-2{margin-left:calc(var(--spacing)*-2)}.-ml-4{margin-left:calc(var(--spacing)*-4)}.ml-0\.5{margin-left:calc(var(--spacing)*.5)}.ml-1{margin-left:calc(var(--spacing)*1)}.ml-2{margin-left:calc(var(--spacing)*2)}.ml-\[38px\]{margin-left:38px}.ml-auto{margin-left:auto}.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-row{display:table-row}.size-2{width:calc(var(--spacing)*2);height:calc(var(--spacing)*2)}.size-3\.5{width:calc(var(--spacing)*3.5);height:calc(var(--spacing)*3.5)}.size-4{width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.size-6{width:calc(var(--spacing)*6);height:calc(var(--spacing)*6)}.size-8{width:calc(var(--spacing)*8);height:calc(var(--spacing)*8)}.size-9{width:calc(var(--spacing)*9);height:calc(var(--spacing)*9)}.size-10{width:calc(var(--spacing)*10);height:calc(var(--spacing)*10)}.size-16{width:calc(var(--spacing)*16);height:calc(var(--spacing)*16)}.size-32{width:calc(var(--spacing)*32);height:calc(var(--spacing)*32)}.size-full{width:100%;height:100%}.h-1\.5{height:calc(var(--spacing)*1.5)}.h-2{height:calc(var(--spacing)*2)}.h-2\.5{height:calc(var(--spacing)*2.5)}.h-3{height:calc(var(--spacing)*3)}.h-3\.5{height:calc(var(--spacing)*3.5)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-6{height:calc(var(--spacing)*6)}.h-7{height:calc(var(--spacing)*7)}.h-8{height:calc(var(--spacing)*8)}.h-9{height:calc(var(--spacing)*9)}.h-10{height:calc(var(--spacing)*10)}.h-12{height:calc(var(--spacing)*12)}.h-16{height:calc(var(--spacing)*16)}.h-24{height:calc(var(--spacing)*24)}.h-\[14px\]{height:14px}.h-\[44px\]{height:44px}.h-\[60vh\]{height:60vh}.h-\[80vh\]{height:80vh}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-auto{height:auto}.h-fit{height:fit-content}.h-full{height:100%}.h-px{height:1px}.max-h-\(--radix-dropdown-menu-content-available-height\){max-height:var(--radix-dropdown-menu-content-available-height)}.max-h-\(--radix-select-content-available-height\){max-height:var(--radix-select-content-available-height)}.max-h-32{max-height:calc(var(--spacing)*32)}.max-h-\[80vh\]{max-height:80vh}.max-h-\[258px\]{max-height:258px}.max-h-\[300px\]{max-height:300px}.max-h-\[400px\]{max-height:400px}.max-h-\[700px\]{max-height:700px}.min-h-0{min-height:calc(var(--spacing)*0)}.min-h-\[40px\]{min-height:40px}.min-h-\[48\.4px\]{min-height:48.4px}.min-h-\[60px\]{min-height:60px}.min-h-\[80px\]{min-height:80px}.min-h-screen{min-height:100vh}.w-2{width:calc(var(--spacing)*2)}.w-2\.5{width:calc(var(--spacing)*2.5)}.w-3{width:calc(var(--spacing)*3)}.w-3\.5{width:calc(var(--spacing)*3.5)}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-6{width:calc(var(--spacing)*6)}.w-7{width:calc(var(--spacing)*7)}.w-8{width:calc(var(--spacing)*8)}.w-9{width:calc(var(--spacing)*9)}.w-10{width:calc(var(--spacing)*10)}.w-12{width:calc(var(--spacing)*12)}.w-16{width:calc(var(--spacing)*16)}.w-48{width:calc(var(--spacing)*48)}.w-64{width:calc(var(--spacing)*64)}.w-72{width:calc(var(--spacing)*72)}.w-\[140px\]{width:140px}.w-\[160px\]{width:160px}.w-fit{width:fit-content}.w-full{width:100%}.w-px{width:1px}.max-w-3xl{max-width:var(--container-3xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-\[60px\]{max-width:60px}.max-w-\[95\%\]{max-width:95%}.max-w-\[120px\]{max-width:120px}.max-w-\[150px\]{max-width:150px}.max-w-\[calc\(42rem-5rem\)\]{max-width:37rem}.max-w-\[calc\(100\%-2rem\)\]{max-width:calc(100% - 2rem)}.max-w-full{max-width:100%}.max-w-md{max-width:var(--container-md)}.max-w-none{max-width:none}.max-w-prose{max-width:65ch}.max-w-xl{max-width:var(--container-xl)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:calc(var(--spacing)*0)}.min-w-5{min-width:calc(var(--spacing)*5)}.min-w-8{min-width:calc(var(--spacing)*8)}.min-w-52{min-width:calc(var(--spacing)*52)}.min-w-\[8rem\]{min-width:8rem}.min-w-\[200px\]{min-width:200px}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.grow-0{flex-grow:0}.basis-full{flex-basis:100%}.table-fixed{table-layout:fixed}.caption-bottom{caption-side:bottom}.border-collapse{border-collapse:collapse}.origin-\(--radix-dropdown-menu-content-transform-origin\){transform-origin:var(--radix-dropdown-menu-content-transform-origin)}.origin-\(--radix-hover-card-content-transform-origin\){transform-origin:var(--radix-hover-card-content-transform-origin)}.origin-\(--radix-select-content-transform-origin\){transform-origin:var(--radix-select-content-transform-origin)}.origin-\(--radix-tooltip-content-transform-origin\){transform-origin:var(--radix-tooltip-content-transform-origin)}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-\[-50\%\]{--tw-translate-x:-50%;translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-\[3px\]{--tw-translate-y: -3px ;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-y-\[-50\%\]{--tw-translate-y:-50%;translate:var(--tw-translate-x)var(--tw-translate-y)}.scale-0{--tw-scale-x:0%;--tw-scale-y:0%;--tw-scale-z:0%;scale:var(--tw-scale-x)var(--tw-scale-y)}.scale-75{--tw-scale-x:75%;--tw-scale-y:75%;--tw-scale-z:75%;scale:var(--tw-scale-x)var(--tw-scale-y)}.scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x)var(--tw-scale-y)}.scale-125{--tw-scale-x:125%;--tw-scale-y:125%;--tw-scale-z:125%;scale:var(--tw-scale-x)var(--tw-scale-y)}.rotate-0{rotate:none}.rotate-90{rotate:90deg}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-bounce{animation:var(--animate-bounce)}.animate-in{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.animate-ping{animation:var(--animate-ping)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-none{resize:none}.scroll-my-1{scroll-margin-block:calc(var(--spacing)*1)}.scroll-py-1{scroll-padding-block:calc(var(--spacing)*1)}.scroll-py-2{scroll-padding-block:calc(var(--spacing)*2)}.auto-rows-min{grid-auto-rows:min-content}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-rows-\[auto_auto\]{grid-template-rows:auto auto}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.place-content-center{place-content:center}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0{gap:calc(var(--spacing)*0)}.gap-0\.5{gap:calc(var(--spacing)*.5)}.gap-1{gap:calc(var(--spacing)*1)}.gap-1\.5{gap:calc(var(--spacing)*1.5)}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}.gap-6{gap:calc(var(--spacing)*6)}.gap-\[6px\]{gap:6px}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1.5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1.5)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*3)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-x-2>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*2)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-x-reverse)))}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px*var(--tw-divide-y-reverse));border-bottom-width:calc(1px*calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-border>:not(:last-child)){border-color:var(--border)}.self-end{align-self:flex-end}.self-start{align-self:flex-start}.justify-self-end{justify-self:flex-end}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.overflow-y-hidden{overflow-y:hidden}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:calc(var(--radius) + 8px)}.rounded-\[4px\]{border-radius:4px}.rounded-\[12px\]{border-radius:12px}.rounded-\[calc\(1rem-6px\)\]{border-radius:calc(1rem - 6px)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-none{border-radius:0}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-xl{border-radius:calc(var(--radius) + 4px)}.rounded-xs{border-radius:var(--radius-xs)}.rounded-e-md{border-start-end-radius:calc(var(--radius) - 2px);border-end-end-radius:calc(var(--radius) - 2px)}.rounded-t-md{border-top-left-radius:calc(var(--radius) - 2px);border-top-right-radius:calc(var(--radius) - 2px)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-none{--tw-border-style:none;border-style:none}.border-amber-500\/50{border-color:#f99c0080}@supports (color:color-mix(in lab,red,red)){.border-amber-500\/50{border-color:color-mix(in oklab,var(--color-amber-500)50%,transparent)}}.border-blue-500{border-color:var(--color-blue-500)}.border-blue-500\/30{border-color:#3080ff4d}@supports (color:color-mix(in lab,red,red)){.border-blue-500\/30{border-color:color-mix(in oklab,var(--color-blue-500)30%,transparent)}}.border-border,.border-border\/20{border-color:var(--border)}@supports (color:color-mix(in lab,red,red)){.border-border\/20{border-color:color-mix(in oklab,var(--border)20%,transparent)}}.border-border\/30{border-color:var(--border)}@supports (color:color-mix(in lab,red,red)){.border-border\/30{border-color:color-mix(in oklab,var(--border)30%,transparent)}}.border-border\/50{border-color:var(--border)}@supports (color:color-mix(in lab,red,red)){.border-border\/50{border-color:color-mix(in oklab,var(--border)50%,transparent)}}.border-destructive\/30{border-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.border-destructive\/30{border-color:color-mix(in oklab,var(--destructive)30%,transparent)}}.border-destructive\/50{border-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.border-destructive\/50{border-color:color-mix(in oklab,var(--destructive)50%,transparent)}}.border-emerald-500\/20{border-color:#00bb7f33}@supports (color:color-mix(in lab,red,red)){.border-emerald-500\/20{border-color:color-mix(in oklab,var(--color-emerald-500)20%,transparent)}}.border-gray-700\/50{border-color:#36415380}@supports (color:color-mix(in lab,red,red)){.border-gray-700\/50{border-color:color-mix(in oklab,var(--color-gray-700)50%,transparent)}}.border-green-500{border-color:var(--color-green-500)}.border-green-500\/30{border-color:#00c7584d}@supports (color:color-mix(in lab,red,red)){.border-green-500\/30{border-color:color-mix(in oklab,var(--color-green-500)30%,transparent)}}.border-input{border-color:var(--input)}.border-muted{border-color:var(--muted)}.border-muted-foreground\/40{border-color:var(--muted-foreground)}@supports (color:color-mix(in lab,red,red)){.border-muted-foreground\/40{border-color:color-mix(in oklab,var(--muted-foreground)40%,transparent)}}.border-primary{border-color:var(--primary)}.border-primary-foreground\/20{border-color:var(--primary-foreground)}@supports (color:color-mix(in lab,red,red)){.border-primary-foreground\/20{border-color:color-mix(in oklab,var(--primary-foreground)20%,transparent)}}.border-purple-500\/30{border-color:#ac4bff4d}@supports (color:color-mix(in lab,red,red)){.border-purple-500\/30{border-color:color-mix(in oklab,var(--color-purple-500)30%,transparent)}}.border-red-500\/20{border-color:#fb2c3633}@supports (color:color-mix(in lab,red,red)){.border-red-500\/20{border-color:color-mix(in oklab,var(--color-red-500)20%,transparent)}}.border-red-500\/30{border-color:#fb2c364d}@supports (color:color-mix(in lab,red,red)){.border-red-500\/30{border-color:color-mix(in oklab,var(--color-red-500)30%,transparent)}}.border-transparent{border-color:#0000}.border-yellow-500\/30{border-color:#edb2004d}@supports (color:color-mix(in lab,red,red)){.border-yellow-500\/30{border-color:color-mix(in oklab,var(--color-yellow-500)30%,transparent)}}.border-t-transparent{border-top-color:#0000}.bg-\[\#0d1117\]{background-color:#0d1117}.bg-\[\#27c93f\]{background-color:#27c93f}.bg-\[\#161b22\]{background-color:#161b22}.bg-\[\#161b22\]\/50{background-color:#161b2280}.bg-\[\#ff5f56\]{background-color:#ff5f56}.bg-\[\#ffbd2e\]{background-color:#ffbd2e}.bg-accent\/10{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.bg-accent\/10{background-color:color-mix(in oklab,var(--accent)10%,transparent)}}.bg-accent\/20{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.bg-accent\/20{background-color:color-mix(in oklab,var(--accent)20%,transparent)}}.bg-accent\/50{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.bg-accent\/50{background-color:color-mix(in oklab,var(--accent)50%,transparent)}}.bg-amber-500\/15{background-color:#f99c0026}@supports (color:color-mix(in lab,red,red)){.bg-amber-500\/15{background-color:color-mix(in oklab,var(--color-amber-500)15%,transparent)}}.bg-amber-500\/20{background-color:#f99c0033}@supports (color:color-mix(in lab,red,red)){.bg-amber-500\/20{background-color:color-mix(in oklab,var(--color-amber-500)20%,transparent)}}.bg-background,.bg-background\/50{background-color:var(--background)}@supports (color:color-mix(in lab,red,red)){.bg-background\/50{background-color:color-mix(in oklab,var(--background)50%,transparent)}}.bg-background\/80{background-color:var(--background)}@supports (color:color-mix(in lab,red,red)){.bg-background\/80{background-color:color-mix(in oklab,var(--background)80%,transparent)}}.bg-background\/95{background-color:var(--background)}@supports (color:color-mix(in lab,red,red)){.bg-background\/95{background-color:color-mix(in oklab,var(--background)95%,transparent)}}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black)50%,transparent)}}.bg-black\/60{background-color:#0009}@supports (color:color-mix(in lab,red,red)){.bg-black\/60{background-color:color-mix(in oklab,var(--color-black)60%,transparent)}}.bg-blue-500{background-color:var(--color-blue-500)}.bg-blue-500\/5{background-color:#3080ff0d}@supports (color:color-mix(in lab,red,red)){.bg-blue-500\/5{background-color:color-mix(in oklab,var(--color-blue-500)5%,transparent)}}.bg-blue-500\/10{background-color:#3080ff1a}@supports (color:color-mix(in lab,red,red)){.bg-blue-500\/10{background-color:color-mix(in oklab,var(--color-blue-500)10%,transparent)}}.bg-blue-500\/15{background-color:#3080ff26}@supports (color:color-mix(in lab,red,red)){.bg-blue-500\/15{background-color:color-mix(in oklab,var(--color-blue-500)15%,transparent)}}.bg-blue-500\/20{background-color:#3080ff33}@supports (color:color-mix(in lab,red,red)){.bg-blue-500\/20{background-color:color-mix(in oklab,var(--color-blue-500)20%,transparent)}}.bg-blue-600{background-color:var(--color-blue-600)}.bg-border{background-color:var(--border)}.bg-card{background-color:var(--card)}.bg-current{background-color:currentColor}.bg-destructive,.bg-destructive\/10{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.bg-destructive\/10{background-color:color-mix(in oklab,var(--destructive)10%,transparent)}}.bg-destructive\/20{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.bg-destructive\/20{background-color:color-mix(in oklab,var(--destructive)20%,transparent)}}.bg-emerald-500{background-color:var(--color-emerald-500)}.bg-emerald-500\/5{background-color:#00bb7f0d}@supports (color:color-mix(in lab,red,red)){.bg-emerald-500\/5{background-color:color-mix(in oklab,var(--color-emerald-500)5%,transparent)}}.bg-emerald-500\/10{background-color:#00bb7f1a}@supports (color:color-mix(in lab,red,red)){.bg-emerald-500\/10{background-color:color-mix(in oklab,var(--color-emerald-500)10%,transparent)}}.bg-emerald-500\/15{background-color:#00bb7f26}@supports (color:color-mix(in lab,red,red)){.bg-emerald-500\/15{background-color:color-mix(in oklab,var(--color-emerald-500)15%,transparent)}}.bg-gray-700{background-color:var(--color-gray-700)}.bg-gray-800\/50{background-color:#1e293980}@supports (color:color-mix(in lab,red,red)){.bg-gray-800\/50{background-color:color-mix(in oklab,var(--color-gray-800)50%,transparent)}}.bg-gray-900\/50{background-color:#10182880}@supports (color:color-mix(in lab,red,red)){.bg-gray-900\/50{background-color:color-mix(in oklab,var(--color-gray-900)50%,transparent)}}.bg-gray-950{background-color:var(--color-gray-950)}.bg-green-500\/10{background-color:#00c7581a}@supports (color:color-mix(in lab,red,red)){.bg-green-500\/10{background-color:color-mix(in oklab,var(--color-green-500)10%,transparent)}}.bg-green-500\/20{background-color:#00c75833}@supports (color:color-mix(in lab,red,red)){.bg-green-500\/20{background-color:color-mix(in oklab,var(--color-green-500)20%,transparent)}}.bg-green-600{background-color:var(--color-green-600)}.bg-muted,.bg-muted\/50{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.bg-muted\/50{background-color:color-mix(in oklab,var(--muted)50%,transparent)}}.bg-popover{background-color:var(--popover)}.bg-primary{background-color:var(--primary)}.bg-primary-foreground\/10{background-color:var(--primary-foreground)}@supports (color:color-mix(in lab,red,red)){.bg-primary-foreground\/10{background-color:color-mix(in oklab,var(--primary-foreground)10%,transparent)}}.bg-primary\/5{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.bg-primary\/5{background-color:color-mix(in oklab,var(--primary)5%,transparent)}}.bg-primary\/20{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.bg-primary\/20{background-color:color-mix(in oklab,var(--primary)20%,transparent)}}.bg-purple-500{background-color:var(--color-purple-500)}.bg-purple-500\/10{background-color:#ac4bff1a}@supports (color:color-mix(in lab,red,red)){.bg-purple-500\/10{background-color:color-mix(in oklab,var(--color-purple-500)10%,transparent)}}.bg-purple-500\/20{background-color:#ac4bff33}@supports (color:color-mix(in lab,red,red)){.bg-purple-500\/20{background-color:color-mix(in oklab,var(--color-purple-500)20%,transparent)}}.bg-red-500\/10{background-color:#fb2c361a}@supports (color:color-mix(in lab,red,red)){.bg-red-500\/10{background-color:color-mix(in oklab,var(--color-red-500)10%,transparent)}}.bg-red-500\/20{background-color:#fb2c3633}@supports (color:color-mix(in lab,red,red)){.bg-red-500\/20{background-color:color-mix(in oklab,var(--color-red-500)20%,transparent)}}.bg-rose-500\/15{background-color:#ff235726}@supports (color:color-mix(in lab,red,red)){.bg-rose-500\/15{background-color:color-mix(in oklab,var(--color-rose-500)15%,transparent)}}.bg-secondary{background-color:var(--secondary)}.bg-transparent{background-color:#0000}.bg-transparent\!{background-color:#0000!important}.bg-white{background-color:var(--color-white)}.bg-yellow-500\/20{background-color:#edb20033}@supports (color:color-mix(in lab,red,red)){.bg-yellow-500\/20{background-color:color-mix(in oklab,var(--color-yellow-500)20%,transparent)}}.bg-zinc-500{background-color:var(--color-zinc-500)}.bg-zinc-500\/15{background-color:#71717b26}@supports (color:color-mix(in lab,red,red)){.bg-zinc-500\/15{background-color:color-mix(in oklab,var(--color-zinc-500)15%,transparent)}}.bg-gradient-to-b{--tw-gradient-position:to bottom in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-r{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-t{--tw-gradient-position:to top in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.from-\[\#0d1117\]{--tw-gradient-from:#0d1117;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-accent\/30{--tw-gradient-from:var(--accent)}@supports (color:color-mix(in lab,red,red)){.from-accent\/30{--tw-gradient-from:color-mix(in oklab,var(--accent)30%,transparent)}}.from-accent\/30{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-amber-500\/10{--tw-gradient-from:#f99c001a}@supports (color:color-mix(in lab,red,red)){.from-amber-500\/10{--tw-gradient-from:color-mix(in oklab,var(--color-amber-500)10%,transparent)}}.from-amber-500\/10{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-blue-500{--tw-gradient-from:var(--color-blue-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-blue-500\/10{--tw-gradient-from:#3080ff1a}@supports (color:color-mix(in lab,red,red)){.from-blue-500\/10{--tw-gradient-from:color-mix(in oklab,var(--color-blue-500)10%,transparent)}}.from-blue-500\/10{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-emerald-500{--tw-gradient-from:var(--color-emerald-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-emerald-500\/10{--tw-gradient-from:#00bb7f1a}@supports (color:color-mix(in lab,red,red)){.from-emerald-500\/10{--tw-gradient-from:color-mix(in oklab,var(--color-emerald-500)10%,transparent)}}.from-emerald-500\/10{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-foreground{--tw-gradient-from:var(--foreground);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-gray-900{--tw-gradient-from:var(--color-gray-900);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-orange-500{--tw-gradient-from:var(--color-orange-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-purple-500{--tw-gradient-from:var(--color-purple-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.via-gray-800{--tw-gradient-via:var(--color-gray-800);--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-via)var(--tw-gradient-via-position),var(--tw-gradient-to)var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.via-muted-foreground{--tw-gradient-via:var(--muted-foreground);--tw-gradient-via-stops:var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-via)var(--tw-gradient-via-position),var(--tw-gradient-to)var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-accent\/10{--tw-gradient-to:var(--accent)}@supports (color:color-mix(in lab,red,red)){.to-accent\/10{--tw-gradient-to:color-mix(in oklab,var(--accent)10%,transparent)}}.to-accent\/10{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-blue-500\/5{--tw-gradient-to:#3080ff0d}@supports (color:color-mix(in lab,red,red)){.to-blue-500\/5{--tw-gradient-to:color-mix(in oklab,var(--color-blue-500)5%,transparent)}}.to-blue-500\/5{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-cyan-500{--tw-gradient-to:var(--color-cyan-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-emerald-500\/5{--tw-gradient-to:#00bb7f0d}@supports (color:color-mix(in lab,red,red)){.to-emerald-500\/5{--tw-gradient-to:color-mix(in oklab,var(--color-emerald-500)5%,transparent)}}.to-emerald-500\/5{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-foreground{--tw-gradient-to:var(--foreground);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-gray-900{--tw-gradient-to:var(--color-gray-900);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-indigo-500{--tw-gradient-to:var(--color-indigo-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-orange-500\/10{--tw-gradient-to:#fe6e001a}@supports (color:color-mix(in lab,red,red)){.to-orange-500\/10{--tw-gradient-to:color-mix(in oklab,var(--color-orange-500)10%,transparent)}}.to-orange-500\/10{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-red-500{--tw-gradient-to:var(--color-red-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-teal-500{--tw-gradient-to:var(--color-teal-500);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.bg-\[length\:200\%_100\%\]{background-size:200% 100%}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.fill-amber-400{fill:var(--color-amber-400)}.fill-current{fill:currentColor}.object-cover{object-fit:cover}.p-0{padding:calc(var(--spacing)*0)}.p-1{padding:calc(var(--spacing)*1)}.p-1\.5{padding:calc(var(--spacing)*1.5)}.p-2{padding:calc(var(--spacing)*2)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.p-6{padding:calc(var(--spacing)*6)}.p-8{padding:calc(var(--spacing)*8)}.px-0\.5{padding-inline:calc(var(--spacing)*.5)}.px-1{padding-inline:calc(var(--spacing)*1)}.px-1\.5{padding-inline:calc(var(--spacing)*1.5)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-2\.5{padding-inline:calc(var(--spacing)*2.5)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-6{padding-inline:calc(var(--spacing)*6)}.px-\[6px\]{padding-inline:6px}.py-0{padding-block:calc(var(--spacing)*0)}.py-0\.5{padding-block:calc(var(--spacing)*.5)}.py-0\.5\!{padding-block:calc(var(--spacing)*.5)!important}.py-1{padding-block:calc(var(--spacing)*1)}.py-1\.5{padding-block:calc(var(--spacing)*1.5)}.py-2{padding-block:calc(var(--spacing)*2)}.py-2\.5{padding-block:calc(var(--spacing)*2.5)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.py-6{padding-block:calc(var(--spacing)*6)}.py-8{padding-block:calc(var(--spacing)*8)}.pe-9{padding-inline-end:calc(var(--spacing)*9)}.pt-2{padding-top:calc(var(--spacing)*2)}.pt-3{padding-top:calc(var(--spacing)*3)}.pt-4{padding-top:calc(var(--spacing)*4)}.pt-6{padding-top:calc(var(--spacing)*6)}.pr-1{padding-right:calc(var(--spacing)*1)}.pr-2{padding-right:calc(var(--spacing)*2)}.pr-8{padding-right:calc(var(--spacing)*8)}.pb-1{padding-bottom:calc(var(--spacing)*1)}.pb-2{padding-bottom:calc(var(--spacing)*2)}.pl-2{padding-left:calc(var(--spacing)*2)}.pl-3{padding-left:calc(var(--spacing)*3)}.pl-4{padding-left:calc(var(--spacing)*4)}.pl-8{padding-left:calc(var(--spacing)*8)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-middle{vertical-align:middle}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.9em\]{font-size:.9em}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[13px\]{font-size:13px}.text-\[15px\]{font-size:15px}.text-\[16px\]{font-size:16px}.leading-\[1\.7\]{--tw-leading:1.7;line-height:1.7}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-balance{text-wrap:balance}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.text-amber-400{color:var(--color-amber-400)}.text-amber-500{color:var(--color-amber-500)}.text-amber-500\/80{color:#f99c00cc}@supports (color:color-mix(in lab,red,red)){.text-amber-500\/80{color:color-mix(in oklab,var(--color-amber-500)80%,transparent)}}.text-amber-700{color:var(--color-amber-700)}.text-blue-400{color:var(--color-blue-400)}.text-blue-500{color:var(--color-blue-500)}.text-blue-700{color:var(--color-blue-700)}.text-card-foreground{color:var(--card-foreground)}.text-current{color:currentColor}.text-cyan-500{color:var(--color-cyan-500)}.text-destructive,.text-destructive\/80{color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.text-destructive\/80{color:color-mix(in oklab,var(--destructive)80%,transparent)}}.text-destructive\/90{color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.text-destructive\/90{color:color-mix(in oklab,var(--destructive)90%,transparent)}}.text-emerald-500{color:var(--color-emerald-500)}.text-emerald-600{color:var(--color-emerald-600)}.text-emerald-700{color:var(--color-emerald-700)}.text-foreground,.text-foreground\/90{color:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.text-foreground\/90{color:color-mix(in oklab,var(--foreground)90%,transparent)}}.text-gray-300{color:var(--color-gray-300)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-green-400{color:var(--color-green-400)}.text-green-500{color:var(--color-green-500)}.text-green-600{color:var(--color-green-600)}.text-muted-foreground,.text-muted-foreground\/50{color:var(--muted-foreground)}@supports (color:color-mix(in lab,red,red)){.text-muted-foreground\/50{color:color-mix(in oklab,var(--muted-foreground)50%,transparent)}}.text-muted-foreground\/60{color:var(--muted-foreground)}@supports (color:color-mix(in lab,red,red)){.text-muted-foreground\/60{color:color-mix(in oklab,var(--muted-foreground)60%,transparent)}}.text-muted-foreground\/80{color:var(--muted-foreground)}@supports (color:color-mix(in lab,red,red)){.text-muted-foreground\/80{color:color-mix(in oklab,var(--muted-foreground)80%,transparent)}}.text-orange-500{color:var(--color-orange-500)}.text-popover-foreground{color:var(--popover-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-purple-400{color:var(--color-purple-400)}.text-purple-500{color:var(--color-purple-500)}.text-purple-600{color:var(--color-purple-600)}.text-red-400{color:var(--color-red-400)}.text-red-500{color:var(--color-red-500)}.text-red-600{color:var(--color-red-600)}.text-rose-700{color:var(--color-rose-700)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-transparent{color:#0000}.text-white{color:var(--color-white)}.text-yellow-500{color:var(--color-yellow-500)}.text-zinc-700{color:var(--color-zinc-700)}.capitalize{text-transform:capitalize}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.opacity-0{opacity:0}.opacity-30{opacity:.3}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-xs{--tw-shadow:0 1px 2px 0 var(--tw-shadow-color,#0000000d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-0{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(0px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-offset-background{--tw-ring-offset-color:var(--background)}.outline-hidden{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.outline-0{outline-style:var(--tw-outline-style);outline-width:0}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.backdrop-blur{--tw-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.backdrop-blur-xl{--tw-backdrop-blur:blur(var(--blur-xl));-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[color\,border-color\,box-shadow\]{transition-property:color,border-color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[color\,box-shadow\]{transition-property:color,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[padding\]{transition-property:padding;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-none{transition-property:none}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-500{--tw-duration:.5s;transition-duration:.5s}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.fade-in-0{--tw-enter-opacity:0}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.zoom-in-95{--tw-enter-scale:.95}.\[cite\:0\,1\]{cite:0,1}.fade-in{--tw-enter-opacity:0}.slide-in-from-left-2{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.slide-in-from-top-2{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}@media(hover:hover){.group-hover\:text-foreground:is(:where(.group):hover *){color:var(--foreground)}.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}}.group-data-\[disabled\=true\]\:pointer-events-none:is(:where(.group)[data-disabled=true] *){pointer-events:none}.group-data-\[disabled\=true\]\:opacity-50:is(:where(.group)[data-disabled=true] *){opacity:.5}.group-\[\.is-assistant\]\:leading-\[1\.7\]:is(:where(.group).is-assistant *){--tw-leading:1.7;line-height:1.7}.group-\[\.is-assistant\]\:text-foreground:is(:where(.group).is-assistant *){color:var(--foreground)}.group-\[\.is-user\]\:ml-auto:is(:where(.group).is-user *){margin-left:auto}.group-\[\.is-user\]\:rounded-2xl:is(:where(.group).is-user *){border-radius:calc(var(--radius) + 8px)}.group-\[\.is-user\]\:bg-primary:is(:where(.group).is-user *){background-color:var(--primary)}.group-\[\.is-user\]\:px-4:is(:where(.group).is-user *){padding-inline:calc(var(--spacing)*4)}.group-\[\.is-user\]\:py-3:is(:where(.group).is-user *){padding-block:calc(var(--spacing)*3)}.group-\[\.is-user\]\:text-primary-foreground:is(:where(.group).is-user *){color:var(--primary-foreground)}.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\:opacity-50:is(:where(.peer):disabled~*){opacity:.5}.selection\:bg-primary ::selection{background-color:var(--primary)}.selection\:bg-primary::selection{background-color:var(--primary)}.selection\:text-primary-foreground ::selection{color:var(--primary-foreground)}.selection\:text-primary-foreground::selection{color:var(--primary-foreground)}.file\:inline-flex::file-selector-button{display:inline-flex}.file\:h-7::file-selector-button{height:calc(var(--spacing)*7)}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\:text-foreground::file-selector-button{color:var(--foreground)}.placeholder\:text-muted-foreground::placeholder{color:var(--muted-foreground)}@media(hover:hover){.hover\:border-border:hover{border-color:var(--border)}.hover\:bg-accent:hover,.hover\:bg-accent\/50:hover{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-accent\/50:hover{background-color:color-mix(in oklab,var(--accent)50%,transparent)}}.hover\:bg-blue-500\/20:hover{background-color:#3080ff33}@supports (color:color-mix(in lab,red,red)){.hover\:bg-blue-500\/20:hover{background-color:color-mix(in oklab,var(--color-blue-500)20%,transparent)}}.hover\:bg-blue-700:hover{background-color:var(--color-blue-700)}.hover\:bg-destructive\/10:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-destructive\/10:hover{background-color:color-mix(in oklab,var(--destructive)10%,transparent)}}.hover\:bg-destructive\/30:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-destructive\/30:hover{background-color:color-mix(in oklab,var(--destructive)30%,transparent)}}.hover\:bg-destructive\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab,var(--destructive)90%,transparent)}}.hover\:bg-gray-600:hover{background-color:var(--color-gray-600)}.hover\:bg-green-700:hover{background-color:var(--color-green-700)}.hover\:bg-muted:hover,.hover\:bg-muted\/30:hover{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-muted\/30:hover{background-color:color-mix(in oklab,var(--muted)30%,transparent)}}.hover\:bg-muted\/50:hover{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-muted\/50:hover{background-color:color-mix(in oklab,var(--muted)50%,transparent)}}.hover\:bg-muted\/80:hover{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-muted\/80:hover{background-color:color-mix(in oklab,var(--muted)80%,transparent)}}.hover\:bg-primary-foreground\/20:hover{background-color:var(--primary-foreground)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary-foreground\/20:hover{background-color:color-mix(in oklab,var(--primary-foreground)20%,transparent)}}.hover\:bg-primary\/20:hover{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/20:hover{background-color:color-mix(in oklab,var(--primary)20%,transparent)}}.hover\:bg-primary\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,var(--primary)90%,transparent)}}.hover\:bg-secondary\/80:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab,var(--secondary)80%,transparent)}}.hover\:bg-white\/10:hover{background-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.hover\:bg-white\/10:hover{background-color:color-mix(in oklab,var(--color-white)10%,transparent)}}.hover\:from-blue-600:hover{--tw-gradient-from:var(--color-blue-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.hover\:from-emerald-600:hover{--tw-gradient-from:var(--color-emerald-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.hover\:to-cyan-600:hover{--tw-gradient-to:var(--color-cyan-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.hover\:to-teal-600:hover{--tw-gradient-to:var(--color-teal-600);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.hover\:text-accent-foreground:hover{color:var(--accent-foreground)}.hover\:text-destructive:hover{color:var(--destructive)}.hover\:text-foreground:hover{color:var(--foreground)}.hover\:text-primary:hover{color:var(--primary)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-80:hover{opacity:.8}.hover\:opacity-100:hover{opacity:1}}.focus\:z-10:focus{z-index:10}.focus\:bg-accent:focus{background-color:var(--accent)}.focus\:text-accent-foreground:focus{color:var(--accent-foreground)}.focus\:ring-0:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(0px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-1:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-ring:focus{--tw-ring-color:var(--ring)}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus\:outline-hidden:focus{--tw-outline-style:none;outline-style:none}@media(forced-colors:active){.focus\:outline-hidden:focus{outline-offset:2px;outline:2px solid #0000}}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:border-ring:focus-visible{border-color:var(--ring)}.focus-visible\:ring-0:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(0px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-1:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-\[2px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(3px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:color-mix(in oklab,var(--destructive)20%,transparent)}}.focus-visible\:ring-ring\/20:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){.focus-visible\:ring-ring\/20:focus-visible{--tw-ring-color:color-mix(in oklab,var(--ring)20%,transparent)}}.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab,red,red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab,var(--ring)50%,transparent)}}.focus-visible\:ring-offset-0:focus-visible{--tw-ring-offset-width:0px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.has-\[\>svg\]\:px-1\.5:has(>svg){padding-inline:calc(var(--spacing)*1.5)}.has-\[\>svg\]\:px-2\.5:has(>svg){padding-inline:calc(var(--spacing)*2.5)}.has-\[\>svg\]\:px-3:has(>svg){padding-inline:calc(var(--spacing)*3)}.has-\[\>svg\]\:px-4:has(>svg){padding-inline:calc(var(--spacing)*4)}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--destructive)}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab,var(--destructive)20%,transparent)}}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true]{pointer-events:none}.data-\[disabled\=true\]\:opacity-50[data-disabled=true]{opacity:.5}.data-\[inset\]\:pl-8[data-inset]{padding-left:calc(var(--spacing)*8)}.data-\[placeholder\]\:text-muted-foreground[data-placeholder]{color:var(--muted-foreground)}.data-\[selected\=true\]\:bg-accent[data-selected=true]{background-color:var(--accent)}.data-\[selected\=true\]\:text-accent-foreground[data-selected=true]{color:var(--accent-foreground)}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:calc(var(--spacing)*1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x:calc(var(--spacing)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:calc(var(--spacing)*1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:calc(var(--spacing)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}.data-\[size\=default\]\:h-9[data-size=default]{height:calc(var(--spacing)*9)}.data-\[size\=sm\]\:h-8[data-size=sm]{height:calc(var(--spacing)*8)}:is(.\*\*\:data-\[slot\=command-input-wrapper\]\:h-12 *)[data-slot=command-input-wrapper]{height:calc(var(--spacing)*12)}:is(.\*\*\:data-\[slot\=command-input-wrapper\]\:h-auto *)[data-slot=command-input-wrapper]{height:auto}:is(.\*\*\:data-\[slot\=command-input-wrapper\]\:grow *)[data-slot=command-input-wrapper]{flex-grow:1}:is(.\*\*\:data-\[slot\=command-input-wrapper\]\:border-0 *)[data-slot=command-input-wrapper]{border-style:var(--tw-border-style);border-width:0}:is(.\*\*\:data-\[slot\=command-input-wrapper\]\:px-0 *)[data-slot=command-input-wrapper]{padding-inline:calc(var(--spacing)*0)}:is(.\*\:data-\[slot\=select-value\]\:line-clamp-1>*)[data-slot=select-value]{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}:is(.\*\:data-\[slot\=select-value\]\:flex>*)[data-slot=select-value]{display:flex}:is(.\*\:data-\[slot\=select-value\]\:items-center>*)[data-slot=select-value]{align-items:center}:is(.\*\:data-\[slot\=select-value\]\:gap-2>*)[data-slot=select-value]{gap:calc(var(--spacing)*2)}.data-\[state\=checked\]\:translate-x-4[data-state=checked]{--tw-translate-x:calc(var(--spacing)*4);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[state\=checked\]\:border-primary[data-state=checked]{border-color:var(--primary)}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:var(--primary)}.data-\[state\=checked\]\:text-primary-foreground[data-state=checked]{color:var(--primary-foreground)}.data-\[state\=closed\]\:animate-out[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.data-\[state\=closed\]\:slide-out-to-bottom-2[data-state=closed]{--tw-exit-translate-y:calc(2*var(--spacing))}.data-\[state\=closed\]\:slide-out-to-top-2[data-state=closed]{--tw-exit-translate-y:calc(2*var(--spacing)*-1)}.data-\[state\=closed\]\:zoom-out-\[0\.98\][data-state=closed]{--tw-exit-scale:.98}.data-\[state\=open\]\:animate-in[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:var(--accent)}.data-\[state\=open\]\:text-accent-foreground[data-state=open]{color:var(--accent-foreground)}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:var(--muted-foreground)}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}.data-\[state\=open\]\:slide-in-from-bottom-2[data-state=open]{--tw-enter-translate-y:calc(2*var(--spacing))}.data-\[state\=open\]\:slide-in-from-top-2[data-state=open]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}.data-\[state\=open\]\:zoom-in-\[0\.98\][data-state=open]{--tw-enter-scale:.98}.data-\[state\=selected\]\:bg-muted[data-state=selected]{background-color:var(--muted)}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked]{--tw-translate-x:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[state\=unchecked\]\:bg-input[data-state=unchecked]{background-color:var(--input)}.data-\[variant\=destructive\]\:text-destructive[data-variant=destructive]{color:var(--destructive)}.data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant=destructive]:focus{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant=destructive]:focus{background-color:color-mix(in oklab,var(--destructive)10%,transparent)}}.data-\[variant\=destructive\]\:focus\:text-destructive[data-variant=destructive]:focus{color:var(--destructive)}@supports ((-webkit-backdrop-filter:var(--tw)) or (backdrop-filter:var(--tw))){.supports-\[backdrop-filter\]\:bg-background\/60{background-color:var(--background)}@supports (color:color-mix(in lab,red,red)){.supports-\[backdrop-filter\]\:bg-background\/60{background-color:color-mix(in oklab,var(--background)60%,transparent)}}}@media not all and (min-width:40rem){.max-sm\:bottom-5{bottom:calc(var(--spacing)*5)}.max-sm\:h-10{height:calc(var(--spacing)*10)}.max-sm\:px-2{padding-inline:calc(var(--spacing)*2)}}@media(min-width:40rem){.sm\:flex{display:flex}.sm\:inline{display:inline}.sm\:inline-flex{display:inline-flex}.sm\:w-64{width:calc(var(--spacing)*64)}.sm\:max-w-lg{max-width:var(--container-lg)}.sm\:max-w-md{max-width:var(--container-md)}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:justify-end{justify-content:flex-end}.sm\:text-left{text-align:left}}@media(min-width:48rem){.md\:flex-row{flex-direction:row}.md\:border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.md\:border-b-0{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}.dark\:border-input:is(.dark *){border-color:var(--input)}.dark\:bg-amber-500\/10:is(.dark *){background-color:#f99c001a}@supports (color:color-mix(in lab,red,red)){.dark\:bg-amber-500\/10:is(.dark *){background-color:color-mix(in oklab,var(--color-amber-500)10%,transparent)}}.dark\:bg-blue-500\/10:is(.dark *){background-color:#3080ff1a}@supports (color:color-mix(in lab,red,red)){.dark\:bg-blue-500\/10:is(.dark *){background-color:color-mix(in oklab,var(--color-blue-500)10%,transparent)}}.dark\:bg-destructive\/60:is(.dark *){background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-destructive\/60:is(.dark *){background-color:color-mix(in oklab,var(--destructive)60%,transparent)}}.dark\:bg-emerald-500\/10:is(.dark *){background-color:#00bb7f1a}@supports (color:color-mix(in lab,red,red)){.dark\:bg-emerald-500\/10:is(.dark *){background-color:color-mix(in oklab,var(--color-emerald-500)10%,transparent)}}.dark\:bg-input\/30:is(.dark *){background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:bg-input\/30:is(.dark *){background-color:color-mix(in oklab,var(--input)30%,transparent)}}.dark\:bg-muted:is(.dark *){background-color:var(--muted)}.dark\:bg-rose-500\/10:is(.dark *){background-color:#ff23571a}@supports (color:color-mix(in lab,red,red)){.dark\:bg-rose-500\/10:is(.dark *){background-color:color-mix(in oklab,var(--color-rose-500)10%,transparent)}}.dark\:bg-zinc-500\/10:is(.dark *){background-color:#71717b1a}@supports (color:color-mix(in lab,red,red)){.dark\:bg-zinc-500\/10:is(.dark *){background-color:color-mix(in oklab,var(--color-zinc-500)10%,transparent)}}.dark\:text-amber-400:is(.dark *){color:var(--color-amber-400)}.dark\:text-blue-400:is(.dark *){color:var(--color-blue-400)}.dark\:text-emerald-400:is(.dark *){color:var(--color-emerald-400)}.dark\:text-green-400:is(.dark *){color:var(--color-green-400)}.dark\:text-purple-400:is(.dark *){color:var(--color-purple-400)}.dark\:text-red-400:is(.dark *){color:var(--color-red-400)}.dark\:text-rose-400:is(.dark *){color:var(--color-rose-400)}.dark\:text-zinc-400:is(.dark *){color:var(--color-zinc-400)}@media(hover:hover){.dark\:hover\:bg-accent\/50:is(.dark *):hover{background-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-accent\/50:is(.dark *):hover{background-color:color-mix(in oklab,var(--accent)50%,transparent)}}.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:color-mix(in oklab,var(--input)50%,transparent)}}}.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:color-mix(in oklab,var(--destructive)40%,transparent)}}.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab,var(--destructive)40%,transparent)}}.dark\:data-\[state\=checked\]\:bg-primary:is(.dark *)[data-state=checked]{background-color:var(--primary)}.dark\:data-\[state\=unchecked\]\:bg-input\/80:is(.dark *)[data-state=unchecked]{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.dark\:data-\[state\=unchecked\]\:bg-input\/80:is(.dark *)[data-state=unchecked]{background-color:color-mix(in oklab,var(--input)80%,transparent)}}.dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20:is(.dark *)[data-variant=destructive]:focus{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20:is(.dark *)[data-variant=destructive]:focus{background-color:color-mix(in oklab,var(--destructive)20%,transparent)}}.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading]{padding-inline:calc(var(--spacing)*2)}.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading]{padding-block:calc(var(--spacing)*1.5)}.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading]{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading]{color:var(--muted-foreground)}.\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group]{padding-inline:calc(var(--spacing)*2)}.\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0 [cmdk-group]:not([hidden])~[cmdk-group]{padding-top:calc(var(--spacing)*0)}.\[\&_\[cmdk-input-wrapper\]_svg\]\:h-5 [cmdk-input-wrapper] svg{height:calc(var(--spacing)*5)}.\[\&_\[cmdk-input-wrapper\]_svg\]\:w-5 [cmdk-input-wrapper] svg{width:calc(var(--spacing)*5)}.\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input]{height:calc(var(--spacing)*12)}.\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item]{padding-inline:calc(var(--spacing)*2)}.\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item]{padding-block:calc(var(--spacing)*3)}.\[\&_\[cmdk-item\]_svg\]\:h-5 [cmdk-item] svg{height:calc(var(--spacing)*5)}.\[\&_\[cmdk-item\]_svg\]\:w-5 [cmdk-item] svg{width:calc(var(--spacing)*5)}.\[\&_a\]\:text-primary a{color:var(--primary)}.\[\&_a\]\:underline a{text-decoration-line:underline}.\[\&_a\]\:decoration-primary\/40 a{-webkit-text-decoration-color:var(--primary);text-decoration-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.\[\&_a\]\:decoration-primary\/40 a{-webkit-text-decoration-color:color-mix(in oklab,var(--primary)40%,transparent);text-decoration-color:color-mix(in oklab,var(--primary)40%,transparent)}}.\[\&_a\]\:underline-offset-2 a{text-underline-offset:2px}.\[\&_a\:hover\]\:decoration-primary a:hover{-webkit-text-decoration-color:var(--primary);text-decoration-color:var(--primary)}.\[\&_blockquote\]\:my-4 blockquote{margin-block:calc(var(--spacing)*4)}.\[\&_blockquote\]\:border-l-2 blockquote{border-left-style:var(--tw-border-style);border-left-width:2px}.\[\&_blockquote\]\:border-primary\/30 blockquote{border-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.\[\&_blockquote\]\:border-primary\/30 blockquote{border-color:color-mix(in oklab,var(--primary)30%,transparent)}}.\[\&_blockquote\]\:pl-4 blockquote{padding-left:calc(var(--spacing)*4)}.\[\&_blockquote\]\:text-muted-foreground blockquote{color:var(--muted-foreground)}.\[\&_blockquote\]\:italic blockquote{font-style:italic}.\[\&_code\]\:font-mono code{font-family:var(--font-mono)}.\[\&_code\]\:text-\[13px\] code{font-size:13px}.\[\&_em\]\:italic em{font-style:italic}.\[\&_h1\]\:mt-6 h1{margin-top:calc(var(--spacing)*6)}.\[\&_h1\]\:mb-3 h1{margin-bottom:calc(var(--spacing)*3)}.\[\&_h1\]\:text-\[22px\] h1{font-size:22px}.\[\&_h1\]\:leading-tight h1{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.\[\&_h1\]\:font-semibold h1{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.\[\&_h1\]\:text-foreground h1{color:var(--foreground)}.\[\&_h2\]\:mt-5 h2{margin-top:calc(var(--spacing)*5)}.\[\&_h2\]\:mb-2\.5 h2{margin-bottom:calc(var(--spacing)*2.5)}.\[\&_h2\]\:text-\[19px\] h2{font-size:19px}.\[\&_h2\]\:leading-tight h2{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.\[\&_h2\]\:font-semibold h2{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.\[\&_h2\]\:text-foreground h2{color:var(--foreground)}.\[\&_h3\]\:mt-4 h3{margin-top:calc(var(--spacing)*4)}.\[\&_h3\]\:mb-2 h3{margin-bottom:calc(var(--spacing)*2)}.\[\&_h3\]\:text-\[17px\] h3{font-size:17px}.\[\&_h3\]\:font-semibold h3{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.\[\&_h3\]\:text-foreground h3{color:var(--foreground)}.\[\&_h4\]\:mt-3 h4{margin-top:calc(var(--spacing)*3)}.\[\&_h4\]\:mb-1\.5 h4{margin-bottom:calc(var(--spacing)*1.5)}.\[\&_h4\]\:text-\[15px\] h4{font-size:15px}.\[\&_h4\]\:font-semibold h4{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.\[\&_h4\]\:text-foreground h4{color:var(--foreground)}.\[\&_h5\]\:mt-3 h5{margin-top:calc(var(--spacing)*3)}.\[\&_h5\]\:mb-1 h5{margin-bottom:calc(var(--spacing)*1)}.\[\&_h5\]\:text-\[15px\] h5{font-size:15px}.\[\&_h5\]\:font-medium h5{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.\[\&_h5\]\:text-foreground h5{color:var(--foreground)}.\[\&_h6\]\:mt-2 h6{margin-top:calc(var(--spacing)*2)}.\[\&_h6\]\:mb-1 h6{margin-bottom:calc(var(--spacing)*1)}.\[\&_h6\]\:text-\[14px\] h6{font-size:14px}.\[\&_h6\]\:font-medium h6{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.\[\&_h6\]\:text-muted-foreground h6{color:var(--muted-foreground)}.\[\&_hr\]\:my-6 hr{margin-block:calc(var(--spacing)*6)}.\[\&_hr\]\:border-border\/50 hr{border-color:var(--border)}@supports (color:color-mix(in lab,red,red)){.\[\&_hr\]\:border-border\/50 hr{border-color:color-mix(in oklab,var(--border)50%,transparent)}}.\[\&_img\]\:my-4 img{margin-block:calc(var(--spacing)*4)}.\[\&_img\]\:max-w-full img{max-width:100%}.\[\&_img\]\:rounded-lg img{border-radius:var(--radius)}.\[\&_input\[type\=checkbox\]\]\:mr-2 input[type=checkbox]{margin-right:calc(var(--spacing)*2)}.\[\&_input\[type\=checkbox\]\]\:accent-primary input[type=checkbox]{accent-color:var(--primary)}.\[\&_li\]\:leading-\[1\.7\] li{--tw-leading:1.7;line-height:1.7}.\[\&_li\]\:text-foreground\/90 li{color:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.\[\&_li\]\:text-foreground\/90 li{color:color-mix(in oklab,var(--foreground)90%,transparent)}}.\[\&_li_ol\]\:mt-2 li ol,.\[\&_li_ul\]\:mt-2 li ul{margin-top:calc(var(--spacing)*2)}.\[\&_li\>p\]\:my-1 li>p{margin-block:calc(var(--spacing)*1)}.\[\&_ol\]\:my-3 ol{margin-block:calc(var(--spacing)*3)}.\[\&_ol\]\:list-decimal ol{list-style-type:decimal}:where(.\[\&_ol\]\:space-y-2 ol>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}.\[\&_ol\]\:pl-5 ol{padding-left:calc(var(--spacing)*5)}.\[\&_ol_ol\]\:my-1\.5 ol ol,.\[\&_ol_ul\]\:my-1\.5 ol ul{margin-block:calc(var(--spacing)*1.5)}.\[\&_p\]\:my-3 p{margin-block:calc(var(--spacing)*3)}.\[\&_p\]\:leading-\[1\.7\] p{--tw-leading:1.7;line-height:1.7}.\[\&_p\]\:text-foreground\/90 p{color:var(--foreground)}@supports (color:color-mix(in lab,red,red)){.\[\&_p\]\:text-foreground\/90 p{color:color-mix(in oklab,var(--foreground)90%,transparent)}}.\[\&_p\:first-child\]\:mt-0 p:first-child{margin-top:calc(var(--spacing)*0)}.\[\&_p\:last-child\]\:mb-0 p:last-child{margin-bottom:calc(var(--spacing)*0)}.\[\&_strong\]\:font-semibold strong{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.\[\&_strong\]\:text-foreground strong{color:var(--foreground)}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:calc(var(--spacing)*3);height:calc(var(--spacing)*3)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.\[\&_svg\:not\(\[class\*\=\'text-\'\]\)\]\:text-muted-foreground svg:not([class*=text-]){color:var(--muted-foreground)}.\[\&_table\]\:my-4 table{margin-block:calc(var(--spacing)*4)}.\[\&_table\]\:w-full table{width:100%}.\[\&_table\]\:border-collapse table{border-collapse:collapse}.\[\&_table\]\:text-\[14px\] table{font-size:14px}.\[\&_td\]\:border td{border-style:var(--tw-border-style);border-width:1px}.\[\&_td\]\:border-border\/50 td{border-color:var(--border)}@supports (color:color-mix(in lab,red,red)){.\[\&_td\]\:border-border\/50 td{border-color:color-mix(in oklab,var(--border)50%,transparent)}}.\[\&_td\]\:px-3 td{padding-inline:calc(var(--spacing)*3)}.\[\&_td\]\:py-2 td{padding-block:calc(var(--spacing)*2)}.\[\&_th\]\:border th{border-style:var(--tw-border-style);border-width:1px}.\[\&_th\]\:border-border\/50 th{border-color:var(--border)}@supports (color:color-mix(in lab,red,red)){.\[\&_th\]\:border-border\/50 th{border-color:color-mix(in oklab,var(--border)50%,transparent)}}.\[\&_th\]\:bg-muted\/30 th{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.\[\&_th\]\:bg-muted\/30 th{background-color:color-mix(in oklab,var(--muted)30%,transparent)}}.\[\&_th\]\:px-3 th{padding-inline:calc(var(--spacing)*3)}.\[\&_th\]\:py-2 th{padding-block:calc(var(--spacing)*2)}.\[\&_th\]\:text-left th{text-align:left}.\[\&_th\]\:font-semibold th{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.\[\&_tr\]\:border-b tr{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.\[\&_tr\:hover\]\:bg-muted\/20 tr:hover{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.\[\&_tr\:hover\]\:bg-muted\/20 tr:hover{background-color:color-mix(in oklab,var(--muted)20%,transparent)}}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-style:var(--tw-border-style);border-width:0}.\[\&_ul\]\:my-3 ul{margin-block:calc(var(--spacing)*3)}.\[\&_ul\]\:list-disc ul{list-style-type:disc}:where(.\[\&_ul\]\:space-y-2 ul>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}.\[\&_ul\]\:pl-5 ul{padding-left:calc(var(--spacing)*5)}.\[\&_ul_ol\]\:my-1\.5 ul ol,.\[\&_ul_ul\]\:my-1\.5 ul ul{margin-block:calc(var(--spacing)*1.5)}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:calc(var(--spacing)*0)}.\[\.border-b\]\:pb-6.border-b{padding-bottom:calc(var(--spacing)*6)}.\[\.border-t\]\:pt-6.border-t{padding-top:calc(var(--spacing)*6)}:is(.\*\:\[span\]\:last\:flex>*):is(span):last-child{display:flex}:is(.\*\:\[span\]\:last\:items-center>*):is(span):last-child{align-items:center}:is(.\*\:\[span\]\:last\:gap-2>*):is(span):last-child{gap:calc(var(--spacing)*2)}:is(.data-\[variant\=destructive\]\:\*\:\[svg\]\:\!text-destructive[data-variant=destructive]>*):is(svg){color:var(--destructive)!important}.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox]{--tw-translate-y:2px;translate:var(--tw-translate-x)var(--tw-translate-y)}.\[\&\>pre\]\:m-0>pre{margin:calc(var(--spacing)*0)}.\[\&\>pre\]\:bg-transparent\!>pre{background-color:#0000!important}.\[\&\>pre\]\:p-4>pre{padding:calc(var(--spacing)*4)}.\[\&\>pre\]\:text-sm>pre{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.\[\&\>pre\]\:leading-relaxed>pre{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.\[\&\>svg\]\:pointer-events-none>svg{pointer-events:none}.\[\&\>svg\]\:size-3>svg{width:calc(var(--spacing)*3);height:calc(var(--spacing)*3)}.\[\&\>tr\]\:last\:border-b-0>tr:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}[data-slot=tooltip-content] .\[\[data-slot\=tooltip-content\]_\&\]\:bg-background\/20{background-color:var(--background)}@supports (color:color-mix(in lab,red,red)){[data-slot=tooltip-content] .\[\[data-slot\=tooltip-content\]_\&\]\:bg-background\/20{background-color:color-mix(in oklab,var(--background)20%,transparent)}}[data-slot=tooltip-content] .\[\[data-slot\=tooltip-content\]_\&\]\:text-background{color:var(--background)}[data-slot=tooltip-content] .dark\:\[\[data-slot\=tooltip-content\]_\&\]\:bg-background\/10:is(.dark *){background-color:var(--background)}@supports (color:color-mix(in lab,red,red)){[data-slot=tooltip-content] .dark\:\[\[data-slot\=tooltip-content\]_\&\]\:bg-background\/10:is(.dark *){background-color:color-mix(in oklab,var(--background)10%,transparent)}}[data-state=open] .\[\[data-state\=open\]_\&\]\:rotate-180{rotate:180deg}@media(hover:hover){a.\[a\&\]\:hover\:bg-accent:hover{background-color:var(--accent)}a.\[a\&\]\:hover\:bg-destructive\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){a.\[a\&\]\:hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab,var(--destructive)90%,transparent)}}a.\[a\&\]\:hover\:bg-primary\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){a.\[a\&\]\:hover\:bg-primary\/90:hover{background-color:color-mix(in oklab,var(--primary)90%,transparent)}}a.\[a\&\]\:hover\:bg-secondary\/90:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab,red,red)){a.\[a\&\]\:hover\:bg-secondary\/90:hover{background-color:color-mix(in oklab,var(--secondary)90%,transparent)}}a.\[a\&\]\:hover\:text-accent-foreground:hover{color:var(--accent-foreground)}a.\[a\&\]\:hover\:underline:hover{text-decoration-line:underline}}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}:root{--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px);--vh:100vh;--canvas-top:max(44px,calc(var(--safe-top) + 36px));--canvas-bottom:max(64px,calc(var(--safe-bottom) + 56px));--canvas-margin:8px;--panel-collapsed-width:0px;--panel-icon-width:48px;--panel-expanded-width:180px;--dock-height:56px;--island-height:28px;--tab-bar-height:56px;--radius:.625rem;--bg-0:#fff;--bg-1:#fafafa;--bg-2:#f1f3f4;--bg-3:#e8eaed;--bg:var(--bg-0);--bg-elevated:var(--bg-1);--bg-hover:var(--bg-2);--bg-active:var(--bg-3);--bg-card:var(--bg-0);--stroke-0:#e8eaed;--stroke-1:#dadce0;--stroke-2:#bdc1c6;--border:oklch(92.2% 0 0);--border-light:var(--stroke-0);--border-strong:var(--stroke-2);--text-0:#202124;--text-1:#5f6368;--text-2:#80868b;--text-3:#9aa0a6;--text:var(--text-0);--text-secondary:var(--text-1);--text-muted:var(--text-2);--text-hint:var(--text-3);--accent-0:#6b7280;--accent-1:#9ca3af;--accent-2:#6b728026;--accent:oklch(97% 0 0);--accent-hover:var(--accent-1);--accent-muted:var(--accent-2);--accent-bg:var(--bg-2);--danger:#ef4444;--danger-muted:#ef444426;--warning:#f59e0b;--warning-muted:#f59e0b26;--success:#22c55e;--success-muted:#22c55e26;--info:#3b82f6;--info-muted:#3b82f626;--focus:#5f6368;--focus-ring:0 0 0 2px var(--bg-0),0 0 0 4px var(--focus);--color-grey:#6b7280;--color-rose:#f43f5e;--color-purple:#a855f7;--color-amber:#f59e0b;--color-sky:#0ea5e9;--color-emerald:#10b981;--status-not-started:#6b7280;--status-started:#3b82f6;--status-progress:#f59e0b;--status-completed:#22c55e;--priority-high:#ef4444;--priority-medium:#f59e0b;--priority-low:#3b82f6;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--radius-xs:3px;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:10px;--radius-full:9999px;--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;--font-mono:"SF Mono","Fira Code",monospace;--text-xs:11px;--text-sm:12px;--text-base:13px;--text-md:14px;--text-lg:15px;--text-xl:16px;--text-2xl:18px;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 12px #0006;--shadow-lg:0 8px 24px #00000080;--transition-fast:.1s ease;--transition-base:.15s ease;--transition-slow:.2s ease;--header-height:48px;--max-content-width:1200px;--sidebar-width:209px;--sidebar-collapsed-width:56px;--background:oklch(100% 0 0);--foreground:oklch(14.5% 0 0);--card:oklch(100% 0 0);--card-foreground:oklch(14.5% 0 0);--popover:oklch(100% 0 0);--popover-foreground:oklch(14.5% 0 0);--primary:oklch(20.5% 0 0);--primary-foreground:oklch(98.5% 0 0);--secondary:oklch(97% 0 0);--secondary-foreground:oklch(20.5% 0 0);--muted:oklch(97% 0 0);--muted-foreground:oklch(55.6% 0 0);--accent-foreground:oklch(20.5% 0 0);--destructive:oklch(57.7% .245 27.325);--destructive-foreground:#fff;--input:oklch(92.2% 0 0);--ring:oklch(55.6% 0 0);--chart-1:oklch(64.6% .222 41.116);--chart-2:oklch(60% .118 184.704);--chart-3:oklch(39.8% .07 227.392);--chart-4:oklch(82.8% .189 84.429);--chart-5:oklch(76.9% .188 70.08);--sidebar:oklch(98.5% 0 0);--sidebar-foreground:oklch(14.5% 0 0);--sidebar-primary:oklch(20.5% 0 0);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(97% 0 0);--sidebar-accent-foreground:oklch(20.5% 0 0);--sidebar-border:oklch(92.2% 0 0);--sidebar-ring:oklch(70.8% 0 0)}[data-theme=light]{--bg-0:#fff;--bg-1:#fafafa;--bg-2:#f1f3f4;--bg-3:#e8eaed;--stroke-0:#e8eaed;--stroke-1:#dadce0;--stroke-2:#bdc1c6;--text-0:#202124;--text-1:#5f6368;--text-2:#80868b;--text-3:#9aa0a6;--focus:#5f6368;--focus-ring:0 0 0 2px var(--bg-0),0 0 0 4px var(--focus);--shadow-sm:0 1px 2px #0000001a;--shadow-md:0 4px 12px #00000026;--shadow-lg:0 8px 24px #0003;--background:var(--bg-0);--foreground:var(--text-0);--card:var(--bg-0);--card-foreground:var(--text-0);--popover:var(--bg-1);--popover-foreground:var(--text-0);--primary:var(--text-0);--primary-foreground:var(--bg-0);--secondary:var(--bg-2);--secondary-foreground:var(--text-0);--muted:var(--bg-2);--muted-foreground:var(--text-2);--accent-bg:var(--bg-2);--accent-foreground:var(--text-0);--input:var(--stroke-1);--ring:var(--focus);--sidebar:var(--bg-0);--sidebar-foreground:var(--text-0)}.dark{--bg-0:#0f0f0f;--bg-1:#141414;--bg-2:#1c1c1c;--bg-3:#252525;--stroke-0:#1f1f1f;--stroke-1:#2e2e2e;--stroke-2:#404040;--text-0:#ebebeb;--text-1:#a0a0a0;--text-2:#666;--text-3:#4a4a4a;--focus:#9ca3af;--background:var(--bg-0);--foreground:var(--text-0);--card:var(--bg-0);--card-foreground:var(--text-0);--popover:var(--bg-1);--popover-foreground:var(--text-0);--primary:oklch(92.2% 0 0);--primary-foreground:var(--bg-0);--secondary:var(--bg-2);--secondary-foreground:var(--text-0);--muted:var(--bg-2);--muted-foreground:var(--text-1);--accent:var(--bg-2);--accent-foreground:var(--text-0);--destructive:oklch(70.4% .191 22.216);--border:var(--stroke-0);--input:var(--stroke-1);--ring:oklch(70.8% 0 0);--chart-1:oklch(48.8% .243 264.376);--chart-2:oklch(69.6% .17 162.48);--chart-3:oklch(76.9% .188 70.08);--chart-4:oklch(62.7% .265 303.9);--chart-5:oklch(64.5% .246 16.439);--sidebar:var(--bg-0);--sidebar-foreground:var(--text-0);--sidebar-primary:oklch(48.8% .243 264.376);--sidebar-primary-foreground:var(--text-0);--sidebar-accent:var(--bg-2);--sidebar-accent-foreground:var(--text-0);--sidebar-border:var(--stroke-0);--sidebar-ring:oklch(55.6% 0 0)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.animate-shimmer{animation:2s linear infinite shimmer}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}@keyframes pulse{50%{opacity:.5}}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:none}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}
