:root{--bg: #fafafa;--bg-card: #ffffff;--bg-elevated: #ffffff;--bg-tertiary: #f5f5f7;--bg-input: #ffffff;--bg-hover: rgba(99, 102, 241, .06);--bg-active: rgba(99, 102, 241, .1);--text: #18181b;--text-primary: #18181b;--text-secondary: #52525b;--text-tertiary: #a1a1aa;--accent: #6366f1;--accent-soft: #eef2ff;--accent-vivid: #4f46e5;--accent-light: rgba(99, 102, 241, .12);--accent-glow: transparent;--border: #e4e4e7;--border-light: #f4f4f5;--success: #22c55e;--success-soft: #dcfce7;--warning: #f59e0b;--warning-soft: #fef3c7;--error: #ef4444;--error-soft: #fee2e2;--blue: #3b82f6;--blue-soft: #dbeafe;--purple: #8b5cf6;--purple-soft: #ede9fe;--pink: #ec4899;--pink-soft: #fce7f3;--yellow: #eab308;--yellow-soft: #fef9c3;--teal: #14b8a6;--teal-soft: #ccfbf1;--indigo: #6366f1;--indigo-soft: #e0e7ff;--gray: #6b7280;--gray-soft: #f3f4f6;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .05);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .08), 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .08), 0 2px 4px -1px rgba(0, 0, 0, .04);--shadow-lg: 0 10px 25px -5px rgba(0, 0, 0, .1), 0 8px 10px -6px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 40px -10px rgba(0, 0, 0, .15);--radius-xs: 4px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--ease-out: cubic-bezier(.33, 1, .68, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--ease-bounce: cubic-bezier(.34, 1.56, .64, 1);--ease-spring: cubic-bezier(.175, .885, .32, 1.1);--duration-fast: .15s;--duration-base: .25s;--duration-slow: .4s;--transition-fast: var(--duration-fast) var(--ease-out);--transition-base: var(--duration-base) var(--ease-out);--transition-slow: var(--duration-slow) var(--ease-out);--transition-bounce: .5s var(--ease-bounce);--app-max-width: 520px;--app-gutter: clamp(14px, 4vw, 22px);--sheet-padding-x: clamp(16px, 4vw, 24px);--z-base: 1;--z-dropdown: 100;--z-sticky: 200;--z-overlay: 300;--z-modal: 400;--z-toast: 500;--z-tour: 600}.dark{--bg: #09090b;--bg-card: #18181b;--bg-elevated: #1f1f23;--bg-tertiary: #27272a;--bg-input: #18181b;--bg-hover: rgba(129, 140, 248, .1);--bg-active: rgba(129, 140, 248, .15);--text: #fafafa;--text-primary: #fafafa;--text-secondary: #a1a1aa;--text-tertiary: #71717a;--accent: #818cf8;--accent-soft: rgba(99, 102, 241, .15);--accent-vivid: #a5b4fc;--accent-light: rgba(129, 140, 248, .18);--accent-glow: transparent;--border: #27272a;--border-light: #1f1f23;--success-soft: rgba(34, 197, 94, .15);--warning-soft: rgba(245, 158, 11, .15);--error-soft: rgba(239, 68, 68, .15);--blue-soft: rgba(59, 130, 246, .15);--purple-soft: rgba(139, 92, 246, .15);--indigo-soft: rgba(99, 102, 241, .18);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .3);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .4), 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 8px -1px rgba(0, 0, 0, .4), 0 2px 4px -1px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 30px -5px rgba(0, 0, 0, .5), 0 8px 10px -6px rgba(0, 0, 0, .4);--shadow-xl: 0 25px 50px -12px rgba(0, 0, 0, .6)}@media(min-width:900px){:root{--app-max-width: 1200px}}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}*{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}html{height:100%;height:-webkit-fill-available;-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}body{font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.5;color:var(--text);background:var(--bg);min-height:100%;min-height:-webkit-fill-available;overflow:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;box-shadow:0 0 0 4px var(--accent-glow)}:focus:not(:focus-visible){outline:none}*:focus-visible{transition:outline-offset .15s ease,box-shadow .15s ease}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}button,[role=button],[role=switch],.btn,.icon-btn,.task-card,.day-btn,.project-card,.subtask,.checkbox,.voice-btn{-webkit-user-select:none;user-select:none;touch-action:manipulation}input,textarea{-webkit-user-select:text;user-select:text;touch-action:manipulation}@media(hover:none){button:hover,.btn:hover,.icon-btn:hover,.task-card:hover,.project-card:hover{transform:none;background:inherit}}.app{display:flex;flex-direction:column;width:100%;max-width:var(--app-max-width);height:100vh;height:100dvh;margin:0 auto;background:var(--bg);overflow:hidden}.status-bar{height:var(--safe-top);min-height:var(--space-3);background:var(--bg);flex-shrink:0}.header{position:relative;padding:var(--space-2) var(--app-gutter) var(--space-3);background:var(--bg);flex-shrink:0;z-index:var(--z-sticky)}.header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-2)}.logo{font-size:24px;font-weight:800;letter-spacing:-1px;position:relative}.logo:after{content:".";color:var(--accent)}.header-actions{display:flex;gap:var(--space-2)}.header-menu{position:absolute;top:100%;right:var(--app-gutter);margin-top:var(--space-2);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:160px;z-index:var(--z-dropdown);overflow:hidden}.header-menu.hidden{display:none}.header-menu-item{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);border:none;background:transparent;font-family:inherit;font-size:14px;color:var(--text);cursor:pointer;transition:background var(--transition-fast);text-align:left}.header-menu-item:hover{background:var(--bg-hover)}.header-menu-item svg{width:18px;height:18px;flex-shrink:0}.icon-btn{width:42px;height:42px;border-radius:var(--radius-full);background:var(--bg-card);border:1px solid var(--border);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);color:var(--text-secondary);box-shadow:var(--shadow-xs)}.icon-btn:hover{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);box-shadow:var(--shadow-sm)}.icon-btn:active{transform:scale(.9);transition:transform .1s var(--ease-bounce)}.icon-btn svg{width:20px;height:20px;stroke-width:1.75;transition:transform var(--transition-fast)}.icon-btn:hover svg{transform:scale(1.05)}.icon-btn.active{background:var(--accent);border-color:transparent;color:#fff}.account-btn{position:relative}.account-initial{font-size:13px;font-weight:700;letter-spacing:-.2px}.icon-badge{position:absolute;top:-2px;right:-2px;min-width:18px;height:18px;padding:0 5px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;background:var(--error);color:#fff;border:2px solid var(--bg)}.greeting{display:none}.date-line{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-2);width:100%;border:none;background:transparent;padding:0;text-align:left;cursor:pointer;font-family:inherit;color:inherit;transition:transform var(--transition-fast)}.date-line:active{transform:scale(.99)}.date-chevron{width:16px;height:16px;color:var(--text-tertiary);margin-left:auto}.today-badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--accent);background:var(--accent-soft);padding:5px 12px;border-radius:var(--radius-full);box-shadow:0 1px 4px var(--accent-glow)}.date-text{font-size:13px;color:var(--text-tertiary)}.app.scrolled .header{padding-bottom:var(--space-2)}.app.scrolled .header-row{margin-bottom:var(--space-2)}.app.scrolled .date-line{margin-top:0}.banner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin:var(--space-2) var(--app-gutter) 0;padding:var(--space-3);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.banner-text{font-size:13px;color:var(--text);line-height:1.4}.banner-btn{flex:none;padding:var(--space-2) var(--space-3);border-radius:var(--radius-full);border:none;background:var(--accent);color:var(--bg);font-size:13px;font-weight:500;font-family:inherit;cursor:pointer;transition:all var(--transition-fast)}.banner-btn:active{transform:scale(.97)}.days-container{padding:0 var(--app-gutter);margin-bottom:var(--space-1);flex-shrink:0}.days-strip{position:relative;margin:0 calc(-1 * var(--app-gutter));padding-left:var(--app-gutter);padding-right:var(--app-gutter)}.days-scroll{display:flex;gap:var(--space-2);overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scroll-snap-type:x proximity;padding:var(--space-1) 0;touch-action:pan-x;-webkit-transform:translateZ(0);transform:translateZ(0)}.days-scroll::-webkit-scrollbar{display:none}.days-edge{position:absolute;top:0;bottom:0;width:46px;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:var(--z-base);opacity:0;transition:opacity var(--transition-fast);color:var(--text-tertiary);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.days-edge svg{width:18px;height:18px;stroke-width:2.5}.days-edge-left{left:0;background:linear-gradient(to right,var(--bg) 55%,transparent)}.days-edge-right{right:0;background:linear-gradient(to left,var(--bg) 55%,transparent)}.days-scroll.is-scrollable~.days-edge{opacity:.9}.days-scroll.at-start~.days-edge-left,.days-scroll.at-end~.days-edge-right{opacity:0}.day-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:52px;height:50px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--bg-card);border:1px solid var(--border);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0;position:relative;scroll-snap-align:center;box-shadow:var(--shadow-xs)}.day-month{position:absolute;top:6px;left:7px;font-size:9px;font-weight:700;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.25px}.day-name{font-size:9px;font-weight:500;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.3px;margin-bottom:2px}.day-num{font-size:16px;font-weight:600;color:var(--text)}.day-btn.active{background:var(--accent);border-color:transparent;color:#fff}.day-btn.active .day-month,.day-btn.active .day-name,.day-btn.active .day-num{color:#fff}.day-btn.today:not(.active){border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent-glow)}.day-btn.today:not(.active) .day-num{color:var(--accent);font-weight:700}.day-btn.has-tasks:after{content:attr(data-task-count);position:absolute;top:4px;right:4px;min-width:18px;height:18px;border-radius:9px;background:var(--accent);color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 5px}.day-btn.active.has-tasks:after{background:#fff;color:var(--accent)}.project-chips{display:flex;align-items:center;gap:var(--space-2);overflow-x:auto;scrollbar-width:none;padding:2px 0 var(--space-3);margin:0 calc(-1 * var(--app-gutter));padding-left:var(--app-gutter);padding-right:var(--app-gutter);-webkit-overflow-scrolling:touch;touch-action:pan-x}.project-chips::-webkit-scrollbar{display:none}.project-chip{flex:none;padding:8px 14px;border-radius:var(--radius-full);border:1px solid var(--border);background:var(--bg-card);color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;font-family:inherit;box-shadow:var(--shadow-xs)}.project-chip:hover{border-color:var(--accent);color:var(--accent)}.project-chip:active{transform:scale(.96)}.project-chip.active{background:var(--accent);border-color:transparent;color:#fff}.project-chip.add{padding:7px 10px;font-weight:700}.chip-shared{display:inline-flex;align-items:center;justify-content:center;margin-left:var(--space-2)}.chip-shared svg{width:14px;height:14px;stroke-width:2;opacity:.9}.main-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;will-change:scroll-position;position:relative;-webkit-transform:translateZ(0);transform:translateZ(0);background:var(--bg)}.main-scroll::-webkit-scrollbar{display:none}.main-content{padding:var(--space-2) var(--app-gutter);padding-bottom:var(--space-6);min-height:100%;background:var(--bg)}.section{margin-bottom:var(--space-6)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-3);padding:0 2px}.section-header-actions{margin-bottom:var(--space-4)}.section-title{font-size:13px;font-weight:600;color:var(--text-secondary)}.section-meta{font-size:11px;font-weight:500;color:var(--text-tertiary);background:var(--accent-soft);padding:2px 8px;border-radius:var(--radius-full)}.stats-bar{display:flex;gap:var(--space-3);margin-bottom:var(--space-5)}.stat-card{flex:1;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-3);text-align:center}.stat-value{font-size:22px;font-weight:700;line-height:1;margin-bottom:2px}.stat-label{font-size:10px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;font-weight:500}.task-list{display:flex;flex-direction:column;gap:var(--space-2)}@media(min-width:900px){.task-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}}.task-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);cursor:pointer;transition:all var(--transition-base);position:relative;overflow:hidden;box-shadow:var(--shadow-xs)}.task-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:transparent;transition:background var(--transition-fast);border-radius:0 2px 2px 0}.task-card.priority-high{background:linear-gradient(135deg,#ef444408,#ef44440f)}.task-card.priority-high:before{background:linear-gradient(180deg,var(--error) 0%,#dc2626 100%)}.task-card.priority-medium{background:linear-gradient(135deg,#f59e0b08,#f59e0b0f)}.task-card.priority-medium:before{background:linear-gradient(180deg,var(--warning) 0%,#d97706 100%)}.task-card.priority-low{background:linear-gradient(135deg,#3b82f608,#3b82f60f)}.task-card.priority-low:before{background:linear-gradient(180deg,var(--blue) 0%,#2563eb 100%)}.task-card:hover{border-color:var(--accent);box-shadow:var(--shadow-sm)}.task-card:active{transform:scale(.98) translateY(0);box-shadow:var(--shadow-xs)}.task-card.completed{opacity:.5}.task-card.completed .task-title{text-decoration:line-through}.task-card.completing{animation:taskComplete .5s var(--ease-out)}@keyframes taskComplete{0%{transform:scale(1);box-shadow:var(--shadow-xs)}20%{transform:scale(.97);background:var(--success-soft);box-shadow:0 0 0 3px #22c55e33}50%{transform:scale(1.01);box-shadow:0 0 20px #22c55e4d}to{transform:scale(1);box-shadow:var(--shadow-xs)}}.task-top{display:flex;gap:var(--space-3);align-items:flex-start}.task-body{flex:1;min-width:0}.task-title-row{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3)}.task-title{font-size:15px;font-weight:500;line-height:1.4;margin:0;word-wrap:break-word}.task-badges{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.task-time{font-size:12px;font-weight:600;color:var(--accent);background:var(--accent-soft);border-radius:var(--radius-full);padding:2px 8px;white-space:nowrap;font-variant-numeric:tabular-nums}.task-subtasks-badge{font-size:11px;font-weight:600;color:var(--text-tertiary);background:var(--bg-tertiary);border-radius:var(--radius-full);padding:2px 6px;white-space:nowrap}.checkbox{width:28px;height:28px;border-radius:50%;border:2px solid var(--border);flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);margin-top:2px;background:transparent;padding:0;cursor:pointer;appearance:none;-webkit-appearance:none;position:relative}.checkbox:after{content:"";position:absolute;inset:-4px;border-radius:50%;background:var(--success-soft);opacity:0;transform:scale(.8);transition:all var(--transition-fast);z-index:-1}.checkbox:hover{border-color:var(--success)}.checkbox:hover:after{opacity:1;transform:scale(1)}.checkbox:active{transform:scale(.88);transition:transform .1s var(--ease-bounce)}.checkbox svg{width:13px;height:13px;stroke:#fff;stroke-width:3;opacity:0;transform:scale(.3) rotate(-45deg);transition:all .25s var(--ease-bounce)}.task-card.completed .checkbox{background:var(--success);border-color:transparent}.task-card.completed .checkbox svg{opacity:1;transform:scale(1) rotate(0)}@media(pointer:coarse){.checkbox{width:36px;height:36px}.checkbox svg{width:15px;height:15px}}.card-subtasks{margin-top:var(--space-3);border-top:1px solid var(--border);padding-top:var(--space-3)}.card-subtasks .subtasks-header{padding:var(--space-2) var(--space-2);min-height:36px;border:none;background:var(--bg-tertiary);border-radius:var(--radius-sm)}.card-subtasks .subtasks-header:hover{background:var(--bg-hover)}.card-subtasks .subtask-list{padding-top:var(--space-2)}.card-subtasks .subtask{padding:var(--space-2) var(--space-2);min-height:40px;border-radius:var(--radius-sm)}.card-subtasks .subtask:hover{background:var(--bg-tertiary)}.card-subtasks .subtask-check{width:16px;height:16px}.card-subtasks .subtask-check svg{width:10px;height:10px}.card-subtasks .subtask-text{font-size:12px}.task-meta{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-2)}.task-meta .meta,.tag{display:inline-flex;align-items:center;font-size:11px;font-weight:500;padding:3px 8px;border-radius:var(--radius-full);border:1px solid var(--border);background:transparent;color:var(--text-tertiary)}.task-meta .meta.duration,.tag.duration{background:var(--blue-soft);border-color:transparent;color:var(--blue)}.dark .task-meta .meta.duration,.dark .tag.duration{color:#60a5fa}.task-meta .meta.section,.tag.section,.task-meta .meta.deadline,.tag.deadline{background:var(--warning-soft);border-color:transparent;color:var(--warning)}.task-meta .meta.deadline.overdue,.tag.deadline.overdue{background:var(--error-soft);color:var(--error)}.task-meta .meta.repeat,.tag.repeat{background:var(--purple-soft);border-color:transparent;color:var(--purple)}.dark .task-meta .meta.repeat,.dark .tag.repeat{color:#a78bfa}.task-meta .meta.calendar,.tag.calendar{background:var(--blue-soft);border-color:transparent;color:var(--blue)}.dark .task-meta .meta.calendar,.dark .tag.calendar{color:#60a5fa}.task-meta .meta.project,.task-meta .meta.assignee,.tag.project{background:var(--bg-tertiary);border-color:transparent;color:var(--text-secondary)}.tag.time,.tag.date{background:var(--accent-soft);color:var(--accent)}.tag.project.project-new{background:transparent;border:1px dashed var(--border)}.task-meta .meta.project:before,.tag.project:before,.project-option:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:6px;flex:none}.project-option.no-project:before{display:none}.tag.project{padding-left:6px}.tag.project:before{margin-right:5px;vertical-align:middle}.color-green:before,.project-card.color-green:before{background:var(--success)!important}.color-blue:before,.project-card.color-blue:before{background:var(--blue)!important}.color-purple:before,.project-card.color-purple:before{background:var(--purple)!important}.color-orange:before,.project-card.color-orange:before{background:var(--warning)!important}.color-red:before,.project-card.color-red:before{background:var(--error)!important}.color-pink:before,.project-card.color-pink:before{background:var(--pink)!important}.color-yellow:before,.project-card.color-yellow:before{background:var(--yellow)!important}.color-teal:before,.project-card.color-teal:before{background:var(--teal)!important}.color-indigo:before,.project-card.color-indigo:before{background:var(--indigo)!important}.color-gray:before,.project-card.color-gray:before{background:var(--gray)!important}.project-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:transparent}.projects-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-3);margin-bottom:var(--space-6)}@media(min-width:900px){.projects-grid{grid-template-columns:repeat(3,1fr)}}.project-card-wrapper{position:relative}.project-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-4);cursor:pointer;transition:all var(--transition-base);position:relative;overflow:hidden;display:block;width:100%;text-align:left;font-family:inherit;color:var(--text);appearance:none;-webkit-appearance:none;box-shadow:var(--shadow-xs)}.project-card:hover{border-color:var(--accent);box-shadow:var(--shadow-sm)}.project-card:active{transform:scale(.98) translateY(0)}.project-card.selected{border-color:var(--accent);box-shadow:var(--shadow-md)}.project-card.selected:after{content:"✓";position:absolute;top:12px;right:12px;width:22px;height:22px;display:grid;place-items:center;border-radius:var(--radius-full);background:var(--accent);color:var(--bg);font-size:12px;font-weight:700}.project-icon{font-size:28px;margin-bottom:var(--space-3)}.project-name{font-size:14px;font-weight:600;color:var(--text);margin-bottom:var(--space-1)}.project-count{font-size:12px;color:var(--text-tertiary)}.project-sharing-badge{display:inline-flex;align-items:center;justify-content:center;margin-top:var(--space-3);padding:4px 10px;border-radius:var(--radius-full);border:1px solid var(--border);background:var(--bg-elevated);font-size:11px;font-weight:600;color:var(--text-tertiary);width:fit-content}.project-sharing-badge.shared{background:var(--accent-soft);border-color:transparent;color:var(--accent)}.project-share-btn{position:absolute;top:10px;right:10px;width:36px;height:36px;border-radius:var(--radius-full);border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-secondary);display:grid;place-items:center;cursor:pointer;transition:all var(--transition-fast);padding:0}.project-share-btn:hover{background:var(--accent-soft);border-color:transparent;color:var(--accent)}.project-share-btn:active{transform:scale(.92)}.project-share-btn svg{width:18px;height:18px;stroke-width:2}.project-card.add-new{border-style:dashed;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-tertiary);min-height:120px}.project-card.add-new:hover{background:var(--bg-hover);border-color:var(--text-tertiary)}.project-card.add-new svg{width:24px;height:24px;margin-bottom:var(--space-2);stroke-width:1.5}.notes-view{display:flex;flex-direction:column;min-height:100%}.notes-header{position:sticky;top:0;z-index:10;background:var(--bg);padding-bottom:var(--space-3)}.notes-header-top{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) 0;margin-bottom:var(--space-2)}.notes-back-btn{display:flex;align-items:center;gap:var(--space-1);background:none;border:none;color:var(--accent);font-size:15px;font-weight:500;cursor:pointer;padding:var(--space-2);margin-left:calc(var(--space-2) * -1);border-radius:var(--radius-md);transition:opacity var(--transition-base)}.notes-back-btn:hover{opacity:.7}.notes-back-btn svg{stroke-width:2.5}.notes-title{font-size:17px;font-weight:600;color:var(--text);margin:0;position:absolute;left:50%;transform:translate(-50%)}.notes-new-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-full);background:var(--accent);border:none;color:#fff;cursor:pointer;transition:all var(--transition-base);box-shadow:var(--shadow-sm)}.notes-new-btn:hover{transform:scale(1.05);box-shadow:var(--shadow-md)}.notes-new-btn:active{transform:scale(.95)}.notes-search-container{position:relative;margin-bottom:var(--space-2)}.notes-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-tertiary);pointer-events:none}.notes-search-input{width:100%;height:36px;padding:0 var(--space-3) 0 38px;font-size:15px;color:var(--text);background:var(--bg-tertiary);border:none;border-radius:10px;outline:none;transition:all var(--transition-base)}.notes-search-input::placeholder{color:var(--text-tertiary)}.notes-search-input:focus{background:var(--bg-card);box-shadow:0 0 0 2px var(--accent-light)}.notes-count{font-size:12px;color:var(--text-tertiary);padding:0 var(--space-1);font-weight:500}.notes-list{display:flex;flex-direction:column;gap:var(--space-4);padding-bottom:var(--space-6)}.notes-group{display:flex;flex-direction:column}.notes-group-header{font-size:13px;font-weight:600;color:var(--text-secondary);padding:var(--space-2) var(--space-1);text-transform:uppercase;letter-spacing:.5px}.notes-group-list{display:flex;flex-direction:column;background:var(--bg-card);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-xs)}.note-card{display:flex;align-items:flex-start;gap:var(--space-3);text-align:left;background:transparent;border:none;border-bottom:1px solid var(--border-light);padding:var(--space-3) var(--space-4);cursor:pointer;transition:background var(--transition-base);font-family:inherit;color:var(--text);width:100%}.note-card:last-child{border-bottom:none}.note-card:hover{background:var(--bg-hover)}.note-card:active{background:var(--bg-active)}.note-card--pinned{background:linear-gradient(135deg,var(--accent-light) 0%,transparent 100%)}.note-card-emoji{font-size:28px;line-height:1;flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);border-radius:var(--radius-md)}.note-card-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.note-card-header{display:flex;align-items:center;gap:var(--space-2)}.note-title{font-size:16px;font-weight:600;line-height:1.3;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.note-pin-badge{font-size:12px;flex-shrink:0}.note-preview{display:flex;flex-direction:column;gap:1px;margin-top:2px}.note-preview-line{font-size:14px;color:var(--text-secondary);line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.note-meta{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-1);font-size:12px;color:var(--text-tertiary)}.note-date{font-weight:500}.note-time{opacity:.7}.note-checkbox-count{display:inline-flex;align-items:center;gap:2px;background:var(--bg-tertiary);padding:2px 6px;border-radius:var(--radius-sm);font-size:11px;font-weight:600}.note-checkbox-count:before{content:"☑";font-size:10px}.notes-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-8) var(--space-4);text-align:center}.notes-empty-icon{font-size:48px;margin-bottom:var(--space-3);opacity:.5}.notes-empty-title{font-size:18px;font-weight:600;color:var(--text);margin-bottom:var(--space-2)}.notes-empty-subtitle{font-size:14px;color:var(--text-secondary);line-height:1.5;max-width:260px}#noteSheet{--sheet-max-height: 95vh}#noteSheet .sheet-scroll{padding-bottom:var(--space-3)}#noteSheet .sheet-header{border-bottom:1px solid var(--border-light);padding-bottom:var(--space-3)}.note-editor-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3)}.note-emoji-btn{width:48px;height:48px;font-size:28px;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);border:2px dashed var(--border);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base);flex-shrink:0}.note-emoji-btn:hover{border-color:var(--accent);background:var(--bg-hover)}.note-emoji-btn:empty:after{content:"😀";opacity:.3}.note-emoji-btn.has-emoji{border-style:solid;border-color:var(--border)}.note-editor-title-wrap{flex:1;min-width:0}.note-editor-title{width:100%;font-size:22px;font-weight:700;letter-spacing:-.5px;border:none;padding:0;background:transparent;color:var(--text);outline:none}.note-editor-title::placeholder{color:var(--text-tertiary);font-weight:500}.note-editor-meta{font-size:12px;color:var(--text-tertiary);margin-top:var(--space-1)}.note-toolbar{display:flex;align-items:center;gap:var(--space-1);padding:var(--space-2) 0;margin-bottom:var(--space-2);border-bottom:1px solid var(--border-light);overflow-x:auto;-webkit-overflow-scrolling:touch;touch-action:pan-x}.note-toolbar::-webkit-scrollbar{display:none}.note-toolbar-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:transparent;color:var(--text-secondary);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);flex-shrink:0}.note-toolbar-btn:hover{background:var(--bg-tertiary);color:var(--text)}.note-toolbar-btn:active{transform:scale(.92)}.note-toolbar-btn.active{background:var(--accent-light);color:var(--accent)}.note-toolbar-divider{width:1px;height:24px;background:var(--border);margin:0 var(--space-1);flex-shrink:0}.note-editor-body{min-height:300px;line-height:1.7;font-size:16px;white-space:pre-wrap;border:none;padding:var(--space-2) 0;background:transparent;resize:none}.note-editor-body:focus{outline:none}.note-editor-body::placeholder{color:var(--text-tertiary)}.note-checklist-item{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2) 0}.note-checklist-checkbox{width:20px;height:20px;border:2px solid var(--border);border-radius:var(--radius-sm);flex-shrink:0;cursor:pointer;transition:all var(--transition-base);display:flex;align-items:center;justify-content:center;margin-top:2px}.note-checklist-checkbox.checked{background:var(--accent);border-color:var(--accent);color:#fff}.note-checklist-checkbox.checked:after{content:"✓";font-size:12px;font-weight:700}.note-checklist-text{flex:1;min-width:0}.note-checklist-text.completed{text-decoration:line-through;color:var(--text-tertiary)}.note-actions{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) 0;border-top:1px solid var(--border-light);margin-top:var(--space-3)}.note-action-btn{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:none;background:var(--bg-tertiary);color:var(--text-secondary);border-radius:var(--radius-md);cursor:pointer;font-size:13px;font-weight:500;transition:all var(--transition-base)}.note-action-btn:hover{background:var(--bg-hover);color:var(--text)}.note-action-btn.danger{color:var(--danger)}.note-action-btn.danger:hover{background:var(--danger-light)}.note-pin-btn.active{background:var(--accent-light);color:var(--accent)}.note-kb-heading{font-size:11px;font-weight:650;text-transform:uppercase;letter-spacing:.8px;color:var(--text-tertiary);margin-bottom:var(--space-2)}.note-kb-links{display:flex;flex-wrap:wrap;gap:var(--space-2)}.note-kb-backlinks{display:flex;flex-direction:column;gap:var(--space-2)}.note-link-chip{border:1px solid var(--border);background:var(--bg-tertiary);color:var(--text);padding:6px 10px;border-radius:var(--radius-full);cursor:pointer;font-size:12px;font-family:inherit}.note-link-chip:active{transform:scale(.97)}.note-backlink{width:100%;text-align:left;border:1px solid var(--border);background:var(--bg-tertiary);color:var(--text);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);cursor:pointer;font-size:13px;font-family:inherit}.note-backlink:active{transform:scale(.99)}.note-kb-empty{font-size:13px;color:var(--text-secondary);line-height:1.4}.note-kb-empty code{background:var(--bg-tertiary);padding:2px 6px;border-radius:6px;border:1px solid var(--border);font-size:12px}.context-menu{position:fixed;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--space-1);min-width:180px;z-index:var(--z-dropdown);opacity:0;transform:scale(.95) translateY(-4px);transition:all var(--transition-fast);pointer-events:none}.context-menu.show{opacity:1;transform:scale(1) translateY(0);pointer-events:auto}.context-menu-item{width:100%;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);border:none;background:transparent;color:var(--text-primary);font-size:14px;font-family:inherit;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);text-align:left}.context-menu-item:hover{background:var(--bg-hover)}.context-menu-item.danger{color:var(--error)}.context-menu-item.danger:hover{background:var(--error-soft)}.context-menu-item svg{width:18px;height:18px;flex-shrink:0}.subtasks-section{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border)}.subtasks-header{display:grid;grid-template-columns:1fr auto auto;grid-template-rows:auto auto;column-gap:var(--space-3);row-gap:var(--space-2);margin-bottom:var(--space-3);cursor:pointer;background:var(--bg);border:1px solid var(--border);padding:var(--space-3);width:100%;text-align:left;font-family:inherit;color:inherit;appearance:none;-webkit-appearance:none;border-radius:var(--radius-md);touch-action:manipulation;transition:all var(--transition-fast)}.subtasks-header:hover{border-color:var(--text-tertiary)}.subtasks-header:active{transform:scale(.99);background:var(--bg-hover)}.subtasks-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.6px;color:var(--text-tertiary);grid-column:1;grid-row:1}.progress-track{grid-column:1 / -1;grid-row:2;height:6px;background:var(--bg-tertiary);border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:var(--success);border-radius:4px;transition:width .4s var(--ease-out)}.progress-label{font-size:11px;color:var(--text-tertiary);font-weight:600;grid-column:2;grid-row:1;font-variant-numeric:tabular-nums;align-self:center}.subtasks-chevron{width:18px;height:18px;stroke-width:2.5;color:var(--text-tertiary);grid-column:3;grid-row:1;align-self:center;justify-self:end;transform:rotate(0);transition:transform var(--transition-fast)}.subtasks-section.expanded .subtasks-chevron{transform:rotate(90deg)}.subtask-list{display:flex;flex-direction:column;gap:var(--space-2);max-height:0;overflow:hidden;transition:max-height var(--transition-base)}.subtasks-section.expanded .subtask-list{max-height:500px}.subtask{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-2);min-height:44px;cursor:pointer;background:transparent;border:none;width:100%;text-align:left;font-family:inherit;color:inherit;appearance:none;-webkit-appearance:none;border-radius:var(--radius-sm);touch-action:manipulation;transition:all var(--transition-fast)}.subtask:hover{background:var(--bg-hover)}.subtask:active{transform:scale(.995)}.subtask-check{width:18px;height:18px;border-radius:4px;border:1.5px solid var(--border);flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.subtask-check svg{width:11px;height:11px;stroke:#fff;stroke-width:3;opacity:0;transition:opacity var(--transition-fast)}.subtask.done .subtask-check{background:var(--success);border-color:var(--success)}.subtask.done .subtask-check svg{opacity:1}.subtask-text{font-size:13px;color:var(--text-secondary)}.subtask.done .subtask-text{text-decoration:line-through;opacity:.5}.empty-state{text-align:center;padding:var(--space-10) var(--space-8)}.empty-icon{width:80px;height:80px;margin:0 auto var(--space-5);background:linear-gradient(135deg,var(--accent-soft) 0%,var(--bg-tertiary) 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;position:relative;animation:emptyIconFloat 3s ease-in-out infinite}.empty-icon:before{content:"";position:absolute;inset:-2px;border-radius:50%;background:linear-gradient(135deg,var(--accent) 0%,transparent 60%);opacity:.2;animation:emptyIconPulse 2s ease-in-out infinite}@keyframes emptyIconFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes emptyIconPulse{0%,to{transform:scale(1);opacity:.2}50%{transform:scale(1.1);opacity:.1}}.empty-icon svg{width:32px;height:32px;color:var(--accent);stroke-width:1.5}.empty-title{font-size:18px;font-weight:700;margin-bottom:var(--space-2);letter-spacing:-.3px}.empty-desc{font-size:14px;color:var(--text-secondary);line-height:1.6;max-width:260px;margin:0 auto}.input-area{flex-shrink:0;z-index:var(--z-dropdown);background:var(--bg)}.input-wrapper{max-width:var(--app-max-width);margin:0 auto;padding:var(--space-3) var(--app-gutter) calc(var(--space-3) + var(--safe-bottom));background:var(--bg);border-top:1px solid var(--border)}.input-hints{display:flex;gap:var(--space-2);margin-bottom:var(--space-3);overflow-x:auto;scrollbar-width:none;padding-bottom:2px;-webkit-overflow-scrolling:touch;touch-action:pan-x}.input-hints::-webkit-scrollbar{display:none}.hint-chip{font-size:12px;font-weight:500;padding:var(--space-2) var(--space-3);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-full);color:var(--text-secondary);white-space:nowrap;cursor:pointer;transition:all var(--transition-fast);flex-shrink:0;font-family:inherit}.hint-chip:hover{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.hint-chip:active{transform:scale(.96)}.input-box{display:flex;align-items:center;gap:var(--space-3);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xl);padding:5px 5px 5px 16px;box-shadow:var(--shadow-sm);transition:all var(--transition-base)}.input-box:focus-within{border-color:var(--accent);box-shadow:var(--shadow-md)}.input-field{flex:1;border:none;background:transparent;font-size:16px;font-family:inherit;color:var(--text);outline:none;min-width:0}.input-field::placeholder{color:var(--text-tertiary)}.voice-btn{width:40px;height:40px;border-radius:50%;background:var(--accent);border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);flex-shrink:0;color:#fff;position:relative;overflow:visible}.voice-btn:hover{background:var(--accent-vivid)}.voice-btn:active{transform:scale(.92);transition:transform .1s var(--ease-bounce)}.voice-btn svg{width:20px;height:20px;stroke-width:2;position:absolute;transition:all var(--transition-fast)}.voice-btn .icon-mic{opacity:1;transform:scale(1)}.voice-btn .icon-send,.voice-btn.send-mode .icon-mic{opacity:0;transform:scale(.5)}.voice-btn.send-mode .icon-send{opacity:1;transform:scale(1)}.voice-btn.recording{background:linear-gradient(135deg,var(--error) 0%,#dc2626 100%);box-shadow:0 4px 14px #ef444466}.voice-btn.recording:before{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid var(--error);animation:ripple 1s infinite}.voice-btn.recording:after{content:"";position:absolute;inset:-12px;border-radius:50%;border:1px solid var(--error);animation:ripple 1s .3s infinite;opacity:.5}@keyframes ripple{0%{transform:scale(1);opacity:.6}to{transform:scale(1.4);opacity:0}}.recording-indicator{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--bg-elevated);border-radius:var(--radius-xl);padding:var(--space-6);width:min(360px,calc(100vw - 48px));text-align:center;box-shadow:var(--shadow-xl);z-index:var(--z-modal);opacity:0;visibility:hidden;transition:all var(--transition-base)}.recording-indicator.active{opacity:1;visibility:visible}.recording-waves{display:flex;align-items:center;justify-content:center;gap:4px;height:36px;margin-bottom:var(--space-4)}.wave-bar{width:4px;height:16px;background:var(--blue);border-radius:2px;animation:wave .8s ease-in-out infinite}.recording-indicator.processing .wave-bar{background:var(--accent)}.recording-indicator.error .wave-bar{background:var(--error)}.wave-bar:nth-child(1){animation-delay:0s}.wave-bar:nth-child(2){animation-delay:.1s}.wave-bar:nth-child(3){animation-delay:.2s}.wave-bar:nth-child(4){animation-delay:.3s}.wave-bar:nth-child(5){animation-delay:.4s}@keyframes wave{0%,to{height:10px}50%{height:32px}}.recording-text{font-size:14px;color:var(--text-secondary)}.recording-subtext{margin-top:var(--space-2);font-size:13px;color:var(--text);line-height:1.4;word-break:break-word}.overlay{position:fixed;inset:0;background:#0006;backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%);z-index:var(--z-overlay);opacity:0;visibility:hidden;transition:all var(--transition-base)}.overlay.active{opacity:1;visibility:visible;touch-action:none}body.sheet-open .app{pointer-events:none}body.sheet-open .overlay,body.sheet-open .sheet{pointer-events:auto}.sheet{position:fixed;bottom:0;left:0;right:0;width:100%;max-width:var(--app-max-width);margin:0 auto;background:linear-gradient(180deg,var(--bg-elevated) 0%,var(--bg-card) 100%);border-radius:var(--radius-xl) var(--radius-xl) 0 0;z-index:calc(var(--z-overlay) + 1);transform:translateY(100%);transition:transform .4s cubic-bezier(.32,.72,0,1);max-height:92vh;max-height:92dvh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 -8px 40px #00000026,var(--shadow-xl)}.sheet.active{transform:translateY(0)}.sheet-handle{width:40px;height:5px;background:linear-gradient(90deg,var(--border) 0%,var(--text-tertiary) 50%,var(--border) 100%);border-radius:3px;margin:var(--space-3) auto;flex-shrink:0;opacity:.6}.sheet-scroll{flex:1;min-height:0;overflow-y:auto;padding:var(--space-2) var(--sheet-padding-x);padding-bottom:calc(var(--space-6) + var(--safe-bottom));-webkit-overflow-scrolling:touch;touch-action:pan-y;overscroll-behavior-y:contain;position:relative;-webkit-transform:translateZ(0);transform:translateZ(0)}.sheet-header{position:sticky;top:0;z-index:var(--z-base);margin:calc(-1 * var(--space-2)) calc(-1 * var(--sheet-padding-x)) var(--space-4);padding:var(--space-2) var(--sheet-padding-x) var(--space-3);background:linear-gradient(180deg,var(--bg-elevated) 0%,rgba(255,255,255,.9) 100%);border-bottom:1px solid var(--border);border-radius:var(--radius-xl) var(--radius-xl) 0 0;backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);display:flex;justify-content:space-between;align-items:center}.dark .sheet-header{background:linear-gradient(180deg,var(--bg-elevated) 0%,rgba(31,31,35,.95) 100%)}.sheet-title{font-size:18px;font-weight:600;flex:1;min-width:0;margin-right:var(--space-3)}.sheet-body{display:flex;flex-direction:column;gap:0;min-width:0}.sheet-section{padding:var(--space-4) 0;border-top:1px solid var(--border)}.sheet-section:first-child{padding-top:0;border-top:none}.sheet-section:last-child{padding-bottom:0}.sheet-footer{padding:var(--space-3) var(--sheet-padding-x) calc(var(--space-3) + var(--safe-bottom));border-top:1px solid var(--border);background:var(--bg-elevated)}.sheet-footer .btn-group{margin-top:var(--space-3)}#taskSheet .sheet-scroll{padding-bottom:var(--space-3)}.sheet-task{--task-section-gap: var(--space-5)}.task-edit-body{display:flex;flex-direction:column;gap:0}.task-edit-hero{padding:var(--space-2) 0 var(--space-4)}.task-edit-title-input{width:100%;padding:var(--space-3) 0;border:none;border-bottom:2px solid var(--border);border-radius:0;font-size:20px;font-weight:600;font-family:inherit;color:var(--text);background:transparent;outline:none;transition:border-color var(--transition-fast)}.task-edit-title-input:focus{border-color:var(--accent)}.task-edit-title-input::placeholder{color:var(--text-tertiary);font-weight:400}.task-edit-section{padding:var(--space-4) 0;border-top:1px solid var(--border-light)}.task-edit-section:first-of-type{border-top:none}.task-edit-section-header{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3)}.task-edit-section-icon{width:16px;height:16px;stroke-width:2;color:var(--text-tertiary);flex-shrink:0}.task-edit-section-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary)}.task-date-quick{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-2)}.task-date-chip{display:flex;flex-direction:column;align-items:center;gap:var(--space-1);padding:var(--space-3) var(--space-2);border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg);font-size:12px;font-weight:500;font-family:inherit;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.task-date-chip svg{width:18px;height:18px;stroke-width:2}.task-date-chip:hover{border-color:var(--text-tertiary);background:var(--bg-hover)}.task-date-chip.selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.task-date-chip.selected svg{color:var(--accent)}.task-date-chip-custom.selected span{font-weight:600}.task-date-input{margin-top:var(--space-3)}.task-time-row{display:flex;align-items:flex-end;gap:var(--space-3);margin-top:var(--space-3);padding:var(--space-3);background:var(--bg-tertiary);border-radius:var(--radius-md)}.task-time-field{flex:1;min-width:0}.task-time-label{display:block;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary);margin-bottom:var(--space-1)}.task-time-input{padding:var(--space-2) var(--space-3)}.task-time-sep{color:var(--text-tertiary);font-size:14px;padding-bottom:var(--space-2);flex-shrink:0}.task-priority-selector{display:flex;gap:var(--space-2)}.task-priority-chip{flex:1;display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg);font-size:12px;font-weight:500;font-family:inherit;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.task-priority-chip:hover{border-color:var(--text-tertiary)}.task-priority-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.task-priority-high .task-priority-dot{background:var(--error)}.task-priority-medium .task-priority-dot{background:var(--warning)}.task-priority-low .task-priority-dot{background:var(--info)}.task-priority-chip.selected{border-width:2px}.task-priority-high.selected{border-color:var(--error);background:#ef444414;color:var(--error)}.task-priority-medium.selected{border-color:var(--warning);background:#f59e0b14;color:#b45309}.dark .task-priority-medium.selected{color:var(--warning)}.task-priority-low.selected{border-color:var(--info);background:#3b82f614;color:var(--info)}.task-priority-none.selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}@media(max-width:420px){.task-priority-selector{flex-wrap:wrap}.task-priority-chip{flex:1 1 calc(50% - var(--space-1))}}.task-edit-textarea{resize:none;min-height:60px;transition:min-height var(--transition-base)}.task-edit-textarea:focus{min-height:100px}.task-edit-advanced{border-top:1px solid var(--border-light)}.task-advanced-toggle{width:100%;display:flex;align-items:center;gap:var(--space-2);padding:var(--space-4) 0;background:transparent;border:none;cursor:pointer;font-family:inherit;font-size:13px;font-weight:500;color:var(--text-secondary);text-align:left;transition:color var(--transition-fast)}.task-advanced-toggle:hover{color:var(--text)}.task-advanced-icon{width:16px;height:16px;stroke-width:2;flex-shrink:0}.task-advanced-summary{margin-left:auto;display:flex;align-items:center;gap:var(--space-1);font-size:12px;font-weight:400;color:var(--text-tertiary)}.summary-item{display:inline-flex;align-items:center;gap:2px}.summary-icon{width:12px;height:12px;stroke-width:2;flex-shrink:0}.summary-sep{opacity:.5;margin:0 2px}.task-advanced-chevron{width:16px;height:16px;stroke-width:2;color:var(--text-tertiary);transition:transform var(--transition-fast);flex-shrink:0}.task-edit-advanced.expanded .task-advanced-chevron{transform:rotate(180deg)}.task-advanced-content{max-height:0;overflow:hidden;opacity:0;transition:max-height var(--transition-base),opacity var(--transition-fast)}.task-edit-advanced.expanded .task-advanced-content{max-height:800px;opacity:1;padding-bottom:var(--space-3)}.task-inline-field{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) 0;border-bottom:1px solid var(--border-light)}.task-inline-field:last-child{border-bottom:none}.task-inline-label{display:flex;align-items:center;gap:var(--space-2);font-size:13px;font-weight:500;color:var(--text-secondary)}.task-inline-label svg{width:14px;height:14px;stroke-width:2;color:var(--text-tertiary)}.task-inline-input{max-width:200px}.task-chips-row{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.task-mini-input{width:80px;flex-shrink:0}.task-repeat-selector{flex-wrap:wrap}.task-edit-subtasks{border-top:1px solid var(--border-light)}.task-subtasks-toggle{width:100%;display:flex;align-items:center;gap:var(--space-2);padding:var(--space-4) 0;background:transparent;border:none;cursor:pointer;font-family:inherit;font-size:13px;font-weight:500;color:var(--text-secondary);text-align:left;transition:color var(--transition-fast)}.task-subtasks-toggle:hover{color:var(--text)}.task-subtasks-icon{width:16px;height:16px;stroke-width:2;flex-shrink:0}.task-subtasks-badge{margin-left:auto;padding:2px 8px;border-radius:var(--radius-full);background:var(--accent-soft);font-size:11px;font-weight:600;color:var(--accent)}.task-subtasks-badge:empty{display:none}.task-subtasks-chevron{width:16px;height:16px;stroke-width:2;color:var(--text-tertiary);transition:transform var(--transition-fast);flex-shrink:0}.task-edit-subtasks.expanded .task-subtasks-chevron{transform:rotate(180deg)}.task-subtasks-content{max-height:0;overflow:hidden;opacity:0;transition:max-height var(--transition-base),opacity var(--transition-fast)}.task-edit-subtasks.expanded .task-subtasks-content{max-height:500px;opacity:1;padding-bottom:var(--space-3)}.subtask-add-row{display:flex;gap:var(--space-2);margin-top:var(--space-3)}.subtask-input{flex:1;min-width:0}.subtask-add-row .btn svg{width:16px;height:16px;stroke-width:2}.task-edit-danger{padding:var(--space-5) 0 var(--space-3);margin-top:var(--space-2);border-top:1px solid var(--border-light)}.task-delete-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);border:1px solid var(--error);background:transparent;font-size:13px;font-weight:500;font-family:inherit;color:var(--error);cursor:pointer;transition:all var(--transition-fast)}.task-delete-btn svg{width:16px;height:16px;stroke-width:2}.task-delete-btn:hover{background:var(--error);color:#fff}.task-delete-btn:active{transform:scale(.98)}.task-save-btn{display:flex;align-items:center;justify-content:center;gap:var(--space-2)}.task-save-btn svg{width:18px;height:18px;stroke-width:2.5}@media(max-width:420px){.task-date-quick{grid-template-columns:repeat(2,1fr)}.task-time-row{flex-direction:column;align-items:stretch}.task-time-sep{text-align:center;padding:var(--space-1) 0}.task-inline-input{max-width:100%}.task-chips-row{flex-direction:column;align-items:stretch}.task-mini-input{width:100%}}.confirm-message{font-size:14px;color:var(--text-secondary);line-height:1.6;white-space:pre-line}.sheet-confirm .btn-group{margin-top:var(--space-5)}.close-btn{width:32px;height:32px;border-radius:50%;background:var(--bg-tertiary);border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-secondary);transition:all var(--transition-fast);flex-shrink:0}.close-btn:hover{background:var(--border);color:var(--text)}.close-btn svg{width:16px;height:16px;stroke-width:2}@media(min-width:900px){.sheet{position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%) scale(.95);width:90%;max-width:600px;max-height:85vh;border-radius:var(--radius-lg);opacity:0;visibility:hidden;transition:all var(--transition-base)}.sheet.active{transform:translate(-50%,-50%) scale(1);opacity:1;visibility:visible}.sheet-handle{display:none}.sheet-header{border-radius:var(--radius-lg) var(--radius-lg) 0 0}}#calendarSheet .sheet-scroll{padding-bottom:calc(var(--space-5) + var(--safe-bottom))}.calendar-sheet-toolbar{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3)}.calendar-nav-btn{width:40px;height:40px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-card);color:var(--text);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);flex:none}.calendar-nav-btn:hover{border-color:var(--text-tertiary)}.calendar-nav-btn:active{transform:scale(.98)}.calendar-nav-btn svg{width:18px;height:18px;stroke-width:2.25}.calendar-sheet-month{flex:1;min-width:0;height:40px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-card);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);font-family:inherit;color:var(--text)}.calendar-sheet-month:hover{border-color:var(--text-tertiary)}.calendar-sheet-month:active{transform:scale(.98)}#calendarSheetMonthLabel{font-size:14px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-sheet-today{flex:none;height:40px;padding:0 var(--space-3);border-radius:var(--radius-md);border:1px solid var(--border);background:transparent;color:var(--text-secondary);font-size:13px;font-weight:600;cursor:pointer;transition:all var(--transition-fast);font-family:inherit}.calendar-sheet-today:hover{background:var(--bg-hover)}.calendar-sheet-today:active{transform:scale(.98)}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:var(--space-2);margin:var(--space-2) 0 var(--space-3);padding:0 2px}.calendar-weekdays span{font-size:11px;font-weight:700;color:var(--text-tertiary);text-align:center;text-transform:uppercase;letter-spacing:.25px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:var(--space-2)}.calendar-day{aspect-ratio:1;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-card);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);position:relative;font-family:inherit;color:var(--text)}.calendar-day:hover{border-color:var(--text-tertiary)}.calendar-day:active{transform:scale(.98)}.calendar-day.outside{opacity:.4}.calendar-day.today{border-color:#22c55e8c;background:var(--success-soft)}.calendar-day.selected{background:var(--accent);border-color:var(--accent);color:var(--bg)}.calendar-day-num{font-size:14px;font-weight:700;line-height:1}.calendar-dots{position:absolute;bottom:4px;left:50%;transform:translate(-50%);display:flex;gap:2px;align-items:center}.calendar-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.calendar-dot--night{background:#8b5cf6}.calendar-dot--morning{background:#f97316}.calendar-dot--day{background:#eab308}.calendar-dot--evening{background:#ec4899}.calendar-dot--anytime{background:#6b7280}.calendar-day.selected .calendar-dot{box-shadow:0 0 0 1px var(--bg)}.calendar-day.outside .calendar-dots{opacity:.5}.calendar-jump{margin-top:var(--space-4)}.ai-modal{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);opacity:0;visibility:hidden;transition:all var(--transition-base)}.ai-modal.active{opacity:1;visibility:visible}.ai-backdrop{position:absolute;inset:0;background:#00000080;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.ai-card{position:relative;background:var(--bg-elevated);border-radius:var(--radius-xl);padding:var(--space-6) var(--space-8);padding-top:var(--space-10);text-align:center;box-shadow:var(--shadow-xl);max-width:420px;width:90%;max-height:90vh;overflow-y:auto;transform:scale(.9) translateY(20px);transition:transform var(--transition-bounce);margin:var(--space-5);-webkit-overflow-scrolling:touch;touch-action:pan-y;overscroll-behavior-y:contain}.ai-modal.active .ai-card{transform:scale(1) translateY(0)}@media(max-width:600px){.ai-card{padding:var(--space-6) var(--space-5);padding-top:var(--space-10);width:calc(100% - 32px);margin:var(--space-4);max-height:85vh}}.ai-close-btn{position:absolute;top:var(--space-3);right:var(--space-3)}.ai-modal.ai-loading .ai-card{background-image:radial-gradient(260px circle at 20% 20%,rgba(0,0,0,.06),transparent 60%),radial-gradient(300px circle at 80% 85%,rgba(0,0,0,.04),transparent 60%),linear-gradient(var(--bg-elevated),var(--bg-elevated));background-size:160% 160%,160% 160%,100% 100%;background-position:0% 0%,100% 100%,0 0;background-repeat:no-repeat;animation:aiCardGlow 4.2s ease-in-out infinite}.dark .ai-modal.ai-loading .ai-card{background-image:radial-gradient(260px circle at 20% 20%,rgba(255,255,255,.05),transparent 60%),radial-gradient(300px circle at 80% 85%,rgba(255,255,255,.04),transparent 60%),linear-gradient(var(--bg-elevated),var(--bg-elevated))}@keyframes aiCardGlow{0%{background-position:0% 0%,100% 100%,0 0}50%{background-position:100% 20%,0% 80%,0 0}to{background-position:0% 0%,100% 100%,0 0}}.ai-dots{position:relative;width:56px;height:56px;margin:0 auto var(--space-4)}.ai-dots:after{content:"";position:absolute;inset:10px;border-radius:50%;box-shadow:inset 0 0 0 1px #0000000f}.ai-dots:before{content:"";position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 90deg,transparent,rgba(0,0,0,.12),rgba(0,0,0,.08),transparent);filter:blur(10px);opacity:0;transition:opacity var(--transition-base)}.dark .ai-dots:before{background:conic-gradient(from 90deg,transparent,rgba(255,255,255,.12),rgba(255,255,255,.08),transparent)}.dark .ai-dots:after{box-shadow:inset 0 0 0 1px #ffffff14}.ai-dot{position:absolute;top:50%;left:50%;width:12px;height:12px;background:transparent;transform:translate(-50%,-50%) rotate(var(--ai-angle)) translate(18px);z-index:var(--z-base)}.ai-dot:after{content:"";position:absolute;inset:2px;border-radius:50%;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-vivid) 100%);opacity:.8}.ai-dot:nth-child(1){--ai-angle: 0deg;--ai-delay: 0s}.ai-dot:nth-child(2){--ai-angle: 120deg;--ai-delay: .12s}.ai-dot:nth-child(3){--ai-angle: 240deg;--ai-delay: .24s}.ai-dots.analyzing{animation:aiOrbit 1.25s linear infinite;will-change:transform}.ai-dots.analyzing:before{opacity:.65}.ai-dots.analyzing .ai-dot:after{opacity:.85;animation:aiDotBreath 1.4s ease-in-out infinite;animation-delay:var(--ai-delay)}@keyframes aiOrbit{to{transform:rotate(360deg)}}@keyframes aiDotBreath{0%,to{transform:scale(.78);opacity:.45}50%{transform:scale(1);opacity:1}}.ai-title{font-size:16px;font-weight:600;margin-bottom:var(--space-1)}.ai-subtitle{font-size:13px;color:var(--text-tertiary)}.ai-modal.ai-loading .ai-subtitle{animation:aiSubtitleBreath 1.8s ease-in-out infinite}.ai-modal.ai-loading .ai-subtitle:after{content:"";display:inline-block;width:8px;height:14px;margin-left:6px;border-radius:8px;background:currentColor;opacity:.35;animation:aiCaretBlink 1s steps(2,end) infinite;vertical-align:-2px}@keyframes aiSubtitleBreath{0%,to{opacity:.75}50%{opacity:1}}@keyframes aiCaretBlink{0%,50%{opacity:.35}50.01%,to{opacity:0}}.ai-preview{margin-top:var(--space-5);padding:var(--space-4);background:var(--bg-tertiary);border-radius:var(--radius-md);text-align:left;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(10px);transition:all var(--transition-base)}.ai-preview.show{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.ai-preview-title{font-size:14px;font-weight:600;margin-bottom:var(--space-2)}.ai-preview-tags{display:flex;flex-wrap:wrap;gap:var(--space-2)}.ai-variant-switch{margin-top:var(--space-3);display:flex;gap:var(--space-3)}.ai-variant-btn{flex:1;text-align:left;padding:var(--space-3);border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg);color:var(--text);cursor:pointer;transition:all var(--transition-fast);font-family:inherit}.ai-variant-btn:hover{border-color:var(--text-tertiary)}.ai-variant-btn.selected{border-color:var(--indigo);background:var(--indigo-soft)}.ai-variant-title{font-size:13px;font-weight:600;margin-bottom:2px}.ai-variant-subtitle{font-size:12px;color:var(--text-tertiary)}.ai-preview-drafts{margin-top:var(--space-3);display:flex;flex-direction:column;gap:var(--space-3);max-height:260px;overflow:auto;padding-right:var(--space-1);-webkit-overflow-scrolling:touch;touch-action:pan-y;overscroll-behavior-y:contain}.ai-draft-item{display:flex;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);background:var(--bg-hover);border:1px solid var(--border);align-items:flex-start;transition:all var(--transition-fast)}.ai-draft-item.selected{border-color:var(--indigo);box-shadow:0 0 0 3px #6366f11f}.ai-draft-check{width:24px;height:24px;border-radius:8px;background:var(--bg-elevated);border:1px solid var(--border);color:var(--bg);display:flex;align-items:center;justify-content:center;flex:none;cursor:pointer;transition:all var(--transition-fast)}.ai-draft-check.on{background:var(--accent);border-color:var(--accent)}.ai-draft-check svg{width:16px;height:16px;stroke-width:3}.ai-draft-main{flex:1;text-align:left;border:none;background:transparent;padding:0;cursor:pointer}.ai-draft-title{font-size:14px;font-weight:600;line-height:1.25;margin-bottom:var(--space-2)}.ai-draft-tags{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-2)}.ai-draft-subtasks{display:flex;flex-direction:column;gap:var(--space-1);font-size:12px;color:var(--text-tertiary)}.ai-draft-subtask{display:flex;gap:var(--space-2);align-items:baseline}.ai-draft-subtask-dot{width:6px;height:6px;border-radius:50%;background:var(--text-tertiary);flex:none;transform:translateY(-1px)}.ai-actions{display:flex;gap:var(--space-3);margin-top:var(--space-5);opacity:0;visibility:hidden;pointer-events:none;transition:all var(--transition-base)}.ai-actions.show{opacity:1;visibility:visible;pointer-events:auto}.ai-btn{flex:1;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:14px;font-weight:500;font-family:inherit;cursor:pointer;transition:all var(--transition-fast);border:none}.ai-btn-secondary{background:var(--bg-tertiary);color:var(--text)}.ai-btn-primary{background:var(--accent);color:var(--bg)}.ai-btn:active{transform:scale(.96)}.field{margin-bottom:var(--space-5)}.field-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.8px;color:var(--text-tertiary);margin-bottom:var(--space-2);display:block}.field-input{width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:16px;font-family:inherit;color:var(--text);background:var(--bg-input);outline:none;transition:all var(--transition-fast)}.field-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #0000000d}.dark .field-input:focus{box-shadow:0 0 0 3px #ffffff14}.field-input[readonly]{cursor:pointer}.field-static{padding:var(--space-4)}.field-textarea{resize:none;min-height:80px}.field-row{display:flex;gap:var(--space-3)}.field-row .field{flex:1}@media(max-width:420px){.field-row{flex-direction:column}}.field-hint{font-size:12px;color:var(--text-tertiary);margin-top:var(--space-2)}.time-range{display:flex;align-items:center;gap:var(--space-2)}.time-range .field-input{flex:1;min-width:0}.time-range-sep{color:var(--text-tertiary);flex:none;-webkit-user-select:none;user-select:none}.duration-row{display:flex;align-items:center;gap:var(--space-3)}.duration-input{flex:none;width:110px}.duration-chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}.duration-chip{padding:var(--space-2) var(--space-3);border-radius:var(--radius-full);border:1px solid var(--border);background:var(--bg);font-size:13px;font-family:inherit;cursor:pointer;transition:all var(--transition-fast);color:var(--text)}.duration-chip:hover{border-color:var(--text-tertiary)}.duration-chip.selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}@media(max-width:420px){.duration-row{flex-direction:column;align-items:stretch}.duration-input{width:100%}}.section-selector{display:flex;flex-wrap:wrap;gap:var(--space-2)}.section-option{padding:var(--space-2) var(--space-3);border-radius:var(--radius-full);border:1px solid var(--border);background:var(--bg);font-size:13px;font-family:inherit;cursor:pointer;transition:all var(--transition-fast);color:var(--text)}.section-option:hover{border-color:var(--text-tertiary)}.section-option.selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.section-option:disabled{opacity:.55;cursor:not-allowed}.repeat-options{display:flex;flex-direction:column;gap:var(--space-2)}.repeat-option{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);width:100%;text-align:left;font-family:inherit;color:var(--text);appearance:none;-webkit-appearance:none}.repeat-option:hover{border-color:var(--text-tertiary)}.repeat-option.selected{border-color:var(--accent);background:var(--accent-soft)}.repeat-radio{width:18px;height:18px;border-radius:50%;border:2px solid var(--border);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all var(--transition-fast)}.repeat-option.selected .repeat-radio{border-color:var(--accent)}.repeat-radio:after{content:"";width:8px;height:8px;border-radius:50%;background:var(--accent);opacity:0;transform:scale(0);transition:all var(--transition-fast)}.repeat-option.selected .repeat-radio:after{opacity:1;transform:scale(1)}.repeat-label{flex:1}.repeat-label-main{font-size:14px;font-weight:500}.repeat-label-sub{font-size:12px;color:var(--text-tertiary);margin-top:2px}.repeat-icon{color:var(--text-tertiary)}.repeat-icon svg{width:18px;height:18px;stroke-width:1.75}.week-days{display:flex;gap:var(--space-2);margin-top:var(--space-3);padding:var(--space-3);background:var(--bg);border-radius:var(--radius-sm)}.week-day{flex:1;aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--bg-tertiary);border:none;font-size:12px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);font-family:inherit}.week-day:hover{background:var(--bg-hover)}.week-day.selected{background:var(--accent);color:var(--bg)}.project-selector{display:flex;flex-wrap:wrap;gap:var(--space-2)}.project-option{padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);border:1px solid var(--border);background:var(--bg);font-size:13px;font-family:inherit;cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;gap:var(--space-2);color:var(--text)}.project-option:hover{border-color:var(--text-tertiary)}.project-option.selected{border-color:var(--accent);background:var(--accent-soft)}.project-add{padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);border:1px dashed var(--border);background:transparent;font-size:13px;font-family:inherit;cursor:pointer;transition:all var(--transition-fast);color:var(--text-tertiary)}.project-add:hover{border-color:var(--text-tertiary);background:var(--bg-hover);color:var(--text-secondary)}.project-add:active{transform:scale(.98)}.priority-selector{display:flex;gap:var(--space-2)}.priority-option{flex:1;padding:var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg);font-size:12px;font-weight:500;font-family:inherit;cursor:pointer;transition:all var(--transition-fast);text-align:center}.priority-option.high{color:var(--error)}.priority-option.medium{color:var(--warning)}.priority-option.low{color:var(--blue)}.priority-option.none{color:var(--text-tertiary)}.priority-option:hover,.priority-option.selected{border-color:currentColor}.priority-option.selected.high{background:var(--error-soft)}.priority-option.selected.medium{background:var(--warning-soft)}.priority-option.selected.low{background:var(--blue-soft)}@media(max-width:420px){.priority-selector{flex-wrap:wrap}.priority-option{flex:1 1 calc(50% - var(--space-1))}}.subtasks-editor{display:flex;flex-direction:column;gap:var(--space-3)}.subtask-add-row{display:flex;gap:var(--space-3);align-items:center;margin-top:var(--space-3)}.subtask-add-row .field-input{flex:1}.subtask-edit-row{display:flex;gap:var(--space-3);align-items:center;padding:var(--space-3);background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-md)}.subtask-edit-row input[type=text]{flex:1;border:none;background:transparent;color:var(--text);font-size:14px;font-family:inherit;outline:none;padding:var(--space-2) 0}.subtask-edit-row input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--success)}.subtask-remove{width:32px;height:32px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;flex:none;transition:all var(--transition-fast)}.subtask-remove:hover{background:var(--error-soft);border-color:var(--error);color:var(--error)}.sheet-section.collapsible{padding:0}.collapsible-header{width:100%;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) 0;background:transparent;border:none;cursor:pointer;font-family:inherit;text-align:left;color:var(--text);transition:all var(--transition-fast)}.collapsible-header:active{transform:scale(.99)}.collapsible-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.8px;color:var(--text-tertiary);flex:none}.collapsible-summary{font-size:13px;color:var(--text-secondary);margin-left:auto;text-align:right;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.collapsible-icon{width:18px;height:18px;stroke-width:2;color:var(--text-tertiary);transition:transform var(--transition-fast);flex-shrink:0}.sheet-section.collapsible.expanded .collapsible-icon{transform:rotate(180deg)}.collapsible-content{max-height:0;overflow:hidden;visibility:hidden;pointer-events:none;transition:max-height var(--transition-base)}.sheet-section.collapsible.expanded .collapsible-content{max-height:2000px;padding-bottom:var(--space-4);visibility:visible;pointer-events:auto}.share-list{display:flex;flex-direction:column;gap:var(--space-3)}.share-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-card)}.share-main{min-width:0;display:flex;flex-direction:column;gap:2px}.share-title{font-size:14px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.share-subtitle{font-size:12px;color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.share-actions{display:flex;align-items:center;gap:var(--space-2);flex:none;flex-wrap:wrap;justify-content:flex-end}.share-actions .btn{flex:none;padding:var(--space-2) var(--space-3);font-size:13px}.share-mini{height:34px;padding:0 var(--space-3);border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-elevated);color:var(--text);font-size:13px;font-family:inherit}.share-mini:disabled{opacity:.6}.btn-group{display:flex;gap:var(--space-3);margin-top:var(--space-6)}.btn{flex:1;padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;transition:all var(--transition-fast);border:none;display:flex;align-items:center;justify-content:center;gap:var(--space-2);position:relative;overflow:hidden}.btn:after{content:"";position:absolute;inset:0;background:linear-gradient(rgba(255,255,255,.1),transparent);opacity:0;transition:opacity var(--transition-fast)}.btn:hover:after{opacity:1}.btn:active{transform:scale(.96);transition:transform .1s var(--ease-bounce)}.btn-compact{flex:none;padding:var(--space-3) var(--space-4)}.btn-full{width:100%}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-vivid)}.btn-secondary{background:var(--bg-tertiary);color:var(--text)}.btn-secondary:hover{background:var(--border)}.btn-danger{background:var(--error-soft);color:var(--error)}.btn-danger:hover{background:var(--error);color:#fff}.btn-calendar{background:var(--blue-soft);color:var(--blue)}.dark .btn-calendar{color:#60a5fa}.btn svg{width:18px;height:18px;stroke-width:2}.toggle{width:50px;height:28px;background:var(--bg-tertiary);border-radius:14px;position:relative;cursor:pointer;transition:all var(--transition-base);border:none;padding:0;flex-shrink:0;appearance:none;-webkit-appearance:none}.toggle.on{background:var(--accent)}.toggle:after{content:"";position:absolute;width:22px;height:22px;background:#fff;border-radius:50%;top:3px;left:3px;transition:all .25s var(--ease-bounce);box-shadow:var(--shadow-sm)}.toggle.on:after{transform:translate(22px)}.toggle:active:after{width:26px}.settings-list{list-style:none;padding:0;margin:0}.settings-item{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--border)}.settings-item:last-child{border-bottom:none}.settings-label{font-size:15px;font-weight:600}.settings-text{display:flex;flex-direction:column;gap:2px;min-width:0}.settings-hint{font-size:12px;color:var(--text-tertiary)}.settings-hero{margin:var(--space-1) 0 var(--space-5);padding:var(--space-4);border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--bg-card)}.settings-hero-title{font-size:17px;font-weight:600;margin-bottom:var(--space-2)}.settings-hero-subtitle{font-size:13px;color:var(--text-secondary)}.settings-section{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-5)}.settings-section:last-child{margin-bottom:0}.settings-card-list{display:flex;flex-direction:column;gap:var(--space-3)}.settings-card-list .settings-item{padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-card);box-shadow:var(--shadow-xs)}.settings-card-list .settings-item:last-child{border-bottom:1px solid var(--border)}.crouton-hero{margin:var(--space-1) 0 var(--space-5);padding:var(--space-4);border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--bg-card)}.crouton-hero-title{font-size:17px;font-weight:600;margin-bottom:var(--space-2)}.crouton-hero-subtitle{font-size:13px;color:var(--text-secondary)}.crouton-status{margin-top:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-card);font-size:13px;color:var(--text-secondary)}.crouton-results-actions{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-3)}.crouton-suggestions{display:flex;flex-direction:column;gap:var(--space-3)}.crouton-suggestion{border:1px solid var(--border);background:var(--bg-card);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4);box-shadow:var(--shadow-xs)}.crouton-suggestion-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-2)}.crouton-suggestion-title{font-size:14px;font-weight:600;line-height:1.2}.crouton-suggestion-subtitle{font-size:12px;color:var(--text-tertiary);margin-top:var(--space-1)}.crouton-suggestion-meta{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end}.crouton-chip{display:inline-flex;align-items:center;gap:var(--space-2);padding:4px 8px;border-radius:var(--radius-full);border:1px solid var(--border);background:var(--bg);font-size:11px;color:var(--text-secondary);-webkit-user-select:none;user-select:none}.crouton-chip.danger{border-color:#ef444459;background:var(--error-soft);color:var(--error)}.crouton-change-list{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-3)}.crouton-change{display:flex;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg)}.crouton-change.danger{border-color:#ef444459;background:var(--error-soft)}.crouton-change input[type=checkbox]{margin-top:2px;accent-color:var(--success)}.crouton-change-main{min-width:0;display:flex;flex-direction:column;gap:2px}.crouton-change-summary{font-size:13px;color:var(--text)}.crouton-change-diff{font-size:12px;color:var(--text-tertiary);white-space:pre-wrap;word-break:break-word}.crouton-apply-actions{margin-top:var(--space-4)}.crouton-undo{margin-top:var(--space-3);display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.crouton-undo-hint{font-size:12px;color:var(--text-tertiary)}.sheet-auth .sheet-scroll{padding-top:var(--space-1)}.auth-hero{margin-bottom:var(--space-4);padding:var(--space-4);border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--bg-card);display:flex;flex-direction:column;gap:var(--space-3)}.auth-hero-title{font-size:18px;font-weight:600}.auth-hero-subtitle{font-size:13px;color:var(--text-secondary)}.auth-hero-tags{display:flex;flex-wrap:wrap;gap:var(--space-2)}.auth-tag{font-size:11px;font-weight:600;letter-spacing:.4px;text-transform:uppercase;padding:4px 10px;border-radius:var(--radius-full);border:1px solid var(--border);color:var(--text-secondary);background:var(--bg-elevated)}.auth-status-card{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-card);box-shadow:var(--shadow-xs);margin-bottom:var(--space-4)}.auth-status-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.8px;color:var(--text-tertiary)}.auth-status-value{font-size:14px;font-weight:600;color:var(--text-primary);text-align:right;max-width:70%;word-break:break-word;line-height:1.4}.auth-section-header{margin-bottom:var(--space-3)}.auth-helper{margin-top:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--border);background:var(--accent-soft);color:var(--text-secondary)}.auth-helper-title{font-size:11px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:var(--space-2)}.auth-helper-text{font-size:13px;color:var(--text-secondary)}.auth-divider{display:flex;align-items:center;gap:var(--space-3);margin:var(--space-5) 0 var(--space-3);font-size:11px;font-weight:600;letter-spacing:.6px;text-transform:uppercase;color:var(--text-tertiary)}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--border)}.btn-group.auth-primary{margin-top:var(--space-4)}.btn-group.auth-sync{margin-top:var(--space-3)}.btn-group.auth-social{flex-direction:column;margin-top:var(--space-3)}.btn-group.auth-social .btn{flex:none;justify-content:space-between;padding:var(--space-3) var(--space-4)}.btn-group.auth-logout{margin-top:var(--space-5)}.btn-tag{font-size:10px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;padding:3px 8px;border-radius:var(--radius-full);border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-tertiary)}.btn.btn-soon{color:var(--text-secondary)}@media(max-width:420px){.auth-status-card{flex-direction:column;align-items:flex-start}.auth-status-value{max-width:100%;text-align:left}.btn-group.auth-primary{flex-direction:column}.btn-group.auth-primary .btn{flex:none}}.emoji-picker{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-xl);padding:var(--space-2);max-width:280px}.emoji-picker-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:var(--space-1);max-height:240px;overflow-y:auto;-webkit-overflow-scrolling:touch;touch-action:pan-y;overscroll-behavior-y:contain}.emoji-picker-item{width:32px;height:32px;border:none;background:transparent;border-radius:var(--radius-xs);font-size:20px;cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center}.emoji-picker-item:hover{background:var(--bg-hover);transform:scale(1.1)}.emoji-picker-item:active{transform:scale(.95)}.emoji-picker-clear{width:100%;padding:var(--space-2);margin-top:var(--space-2);border:none;border-top:1px solid var(--border);background:transparent;color:var(--text-secondary);font-size:13px;cursor:pointer;transition:all var(--transition-base)}.emoji-picker-clear:hover{background:var(--bg-hover);color:var(--text)}.toast{position:fixed;bottom:110px;left:50%;transform:translate(-50%) translateY(20px) scale(.95);background:linear-gradient(135deg,var(--accent) 0%,var(--accent-vivid) 100%);color:#fff;padding:var(--space-3) var(--space-6);border-radius:var(--radius-full);font-size:14px;font-weight:600;box-shadow:0 8px 30px var(--accent-glow),var(--shadow-lg);z-index:var(--z-toast);opacity:0;visibility:hidden;transition:all .3s var(--ease-bounce);white-space:nowrap;max-width:calc(100vw - 32px);text-align:center}.toast.visible{opacity:1;visibility:visible;transform:translate(-50%) translateY(0) scale(1)}.toast.success{background:linear-gradient(135deg,var(--success) 0%,#16a34a 100%);box-shadow:0 8px 30px #22c55e59,var(--shadow-lg)}.toast.error{background:linear-gradient(135deg,var(--error) 0%,#dc2626 100%);box-shadow:0 8px 30px #ef444459,var(--shadow-lg)}.tour-overlay{position:fixed;inset:0;display:flex;align-items:flex-end;justify-content:center;padding:var(--space-4);padding-bottom:calc(var(--space-4) + var(--safe-bottom));background:#00000080;opacity:0;pointer-events:none;transition:opacity var(--transition-base);z-index:var(--z-tour)}.tour-overlay.active{opacity:1;pointer-events:auto}.tour-card{width:min(520px,calc(100vw - 32px));background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);padding:var(--space-4)}.tour-title{font-weight:700;font-size:16px;margin-bottom:var(--space-2)}.tour-text{color:var(--text-secondary);font-size:14px;line-height:1.4}.tour-actions{display:flex;gap:var(--space-2);justify-content:flex-end;margin-top:var(--space-4)}.tour-highlight{position:relative;z-index:calc(var(--z-tour) + 1);box-shadow:0 0 0 3px #3b82f673,0 0 0 8px #3b82f62e;border-radius:var(--radius-md)}.fade-up{animation:fadeUp .4s var(--ease-out) forwards}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px);filter:blur(4px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}.stagger-1{animation-delay:.05s;opacity:0}.stagger-2{animation-delay:.1s;opacity:0}.stagger-3{animation-delay:.15s;opacity:0}.stagger-4{animation-delay:.2s;opacity:0}.stagger-5{animation-delay:.25s;opacity:0}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary);border:2px solid transparent;background-clip:padding-box}*{scrollbar-width:thin;scrollbar-color:var(--border) transparent}.hidden{display:none!important}.task-tags{display:flex;flex-wrap:wrap;gap:var(--space-2)}
