:root{--bg: #faf8f4;--surface: #ffffff;--surface-2: #f4f1ea;--surface-sunken: #efebe2;--ink: #211f1c;--ink-2: #6b655d;--ink-3: #9b958c;--line: #ece7df;--line-2: #e2dcd1;--brand: #ff6b4a;--brand-press: #ed5436;--brand-soft: #ffe9e2;--brand-ink: #b53d22;--ai: #5a63e8;--ai-press: #474fd1;--ai-soft: #eceeff;--ai-ink: #3a41b0;--done: #1fb47c;--done-soft: #e2f6ee;--warn: #e8a23d;--danger: #e5484d;--danger-soft: #fdeceb;--r-sm: 10px;--r: 14px;--r-lg: 20px;--r-xl: 26px;--r-pill: 999px;--shadow-sm: 0 1px 2px rgba(60, 45, 30, .05), 0 1px 3px rgba(60, 45, 30, .04);--shadow-md: 0 6px 20px rgba(60, 45, 30, .09);--shadow-lg: 0 18px 50px rgba(50, 38, 25, .18);--font-display: "Bricolage Grotesque", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;--font-body: "Hanken Grotesk", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;--safe-b: env(safe-area-inset-bottom, 0px);--tabbar-h: 68px}@media (max-width: 480px){:root{--tabbar-h: 72px;--r-lg: 16px;--r-xl: 20px}}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font-body);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overscroll-behavior-y:none}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}input,textarea{font-family:inherit}.app-canvas{position:relative;min-height:100dvh;background:radial-gradient(120% 60% at 100% 0%,rgba(255,107,74,.06),transparent 60%),radial-gradient(90% 50% at 0% 8%,rgba(90,99,232,.05),transparent 55%),var(--bg)}.kbd-pill{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 10px;border-radius:var(--r-pill);font-size:12px;font-weight:600;line-height:1}.chip-time{color:var(--brand-ink);background:var(--brand-soft)}.chip-cat{color:var(--ink-2);background:var(--surface-2)}.chip-ai{color:var(--ai-ink);background:var(--ai-soft)}.sparkle{display:inline-block}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 18px;border-radius:var(--r-pill);font-weight:600;font-size:15px;transition:transform .12s ease,background .15s ease,box-shadow .15s ease}.btn:active{transform:scale(.96)}.btn-brand{background:var(--brand);color:#fff;box-shadow:0 6px 16px #ff6b4a47}.btn-brand:disabled{background:var(--line-2);color:var(--ink-3);box-shadow:none}.btn-ai{background:linear-gradient(135deg,var(--ai),#6f78ff);color:#fff;box-shadow:0 6px 18px #5a63e84d}.btn-ghost{background:var(--surface-2);color:var(--ink)}.check{width:24px;height:24px;border-radius:50%;border:2px solid var(--line-2);display:grid;place-items:center;flex:none;transition:all .15s ease;background:var(--surface)}.check[data-prio=high]{border-color:var(--danger)}.check[data-prio=low]{border-color:var(--ink-3)}.check[data-done=true]{background:var(--done);border-color:var(--done)}@keyframes riseIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.rise{animation:riseIn .42s cubic-bezier(.2,.7,.2,1) both}@keyframes sheetUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes slideInLeft{0%{transform:translate(-100%)}to{transform:translate(0)}}.spinner{width:16px;height:16px;border-radius:50%;border:2px solid currentColor;border-top-color:transparent;animation:spin .7s linear infinite}@keyframes pulse{0%,to{opacity:.3}50%{opacity:1}}.think-dot{width:6px;height:6px;border-radius:50%;background:var(--ai);animation:pulse 1.1s ease-in-out infinite}.think-dot:nth-child(2){animation-delay:.18s}.think-dot:nth-child(3){animation-delay:.36s}.ai-mark{color:var(--ai)}.mic-button{flex:none;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-size:18px;background:var(--surface-2);color:var(--ink-2);transition:transform .12s ease,background .15s ease;touch-action:none}.mic-button:active{transform:scale(.92)}.mic-button--recording{background:var(--brand-soft);box-shadow:0 0 0 4px #ff6b4a2e}::-webkit-scrollbar{width:0;height:0}.desktop-grid{display:grid;grid-template-columns:64px 240px 1fr 360px;grid-template-areas:"rail sidebar center detail";height:100dvh;background:var(--bg)}.desktop-grid.no-list-nav{grid-template-columns:64px 1fr 0;grid-template-areas:"rail center detail"}.desktop-grid.no-list-nav .desktop-detail{display:none}.desktop-grid>.icon-rail{grid-area:rail}.desktop-grid>.sidebar{grid-area:sidebar}.desktop-center{grid-area:center;overflow-y:auto;border-left:1px solid var(--line);border-right:1px solid var(--line);padding:18px 20px}.desktop-detail{grid-area:detail;overflow:hidden;background:var(--surface)}.desktop-wide{grid-area:center / center / detail / detail;overflow-y:auto;border-left:1px solid var(--line);padding:18px 24px}.desktop-single{grid-area:center / center / detail / detail;overflow-y:auto;border-left:1px solid var(--line);padding:24px}@keyframes paneFadeIn{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:none}}.desktop-wide,.desktop-single,.desktop-center{animation:paneFadeIn .12s ease-out}.icon-rail{display:flex;flex-direction:column;align-items:center;padding:12px 0;height:100dvh;background:var(--surface-sunken);border-right:1px solid var(--line);gap:4px}.icon-rail-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--r-lg);color:var(--ink-3);background:transparent;cursor:pointer;transition:background .12s,color .12s;text-decoration:none}.icon-rail-btn:hover{background:var(--surface-2);color:var(--ink-2)}.icon-rail-btn.is-active{background:var(--brand-soft);color:var(--brand)}.icon-rail-spacer{flex:1}.icon-rail-divider{width:28px;height:1px;background:var(--line);margin:6px 0}.sidebar{display:flex;flex-direction:column;padding:18px 10px 16px;height:100dvh;overflow-y:auto;background:var(--surface-2)}.sidebar-assistant{display:inline-flex;align-items:center;gap:7px;margin:12px 4px 4px;padding:9px 14px;border-radius:var(--r-pill);background:var(--ai-soft);color:var(--ai-ink);font-weight:600;font-size:14px;align-self:flex-start}.sidebar-item{position:relative;display:flex;align-items:center;gap:9px;padding:7px 12px;margin:1px 0;border-radius:var(--r-sm);font-size:14px;font-weight:500;color:var(--ink-2);text-decoration:none;transition:background .12s ease}.sidebar-item:hover{background:#00000009}.sidebar-item.is-active{background:var(--brand-soft);color:var(--brand-ink);font-weight:600}.sidebar-count{font-size:12px;font-weight:600;color:var(--ink-3);flex:none}.sidebar-item.is-active .sidebar-count{color:var(--brand-ink)}.sidebar-item.is-active:before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:3px;border-radius:2px;background:var(--brand, var(--brand-ink))}.task-card .task-card-more{opacity:0;transition:opacity .12s ease}.task-card:hover .task-card-more,.task-card .task-card-more:focus-visible{opacity:1}@media (hover: none){.task-card .task-card-more{opacity:1}}@media (max-width: 480px){.card{border-radius:var(--r-lg);box-shadow:0 1px 2px #3c2d1e0a;border-color:var(--line)}.btn{height:48px;font-size:15px}input,textarea{font-size:16px!important}}@media (min-width: 481px) and (max-width: 1023px){:root{--tabbar-h: 68px}}[data-theme=dida]{--bg: #f5f6f7;--surface: #ffffff;--surface-2: #f0f1f3;--surface-sunken: #ebecee;--ink: #1f1f1f;--ink-2: #595959;--ink-3: #8c8c8c;--line: #e8e8e8;--line-2: #d9d9d9;--brand: #4772fa;--brand-press: #3759d8;--brand-soft: #e8efff;--brand-ink: #2849b8;--ai: var(--brand);--ai-press: var(--brand-press);--ai-soft: var(--brand-soft);--ai-ink: var(--brand-ink);--done: #4caf50;--done-soft: #e8f5e9;--warn: #fb8c00;--warn-soft: #fff3e0;--danger: #f04438;--danger-soft: #fde7e7;--priority-1: #ff6b6b;--priority-2: #ffa940;--priority-3: #4772fa;--priority-0: transparent;--tag-bg: #f0f1f3;--tag-ink: #595959;--r-sm: 4px;--r: 6px;--r-lg: 8px;--r-xl: 12px;--r-pill: 999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 2px 8px rgba(0, 0, 0, .06);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .08);--font-display: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", system-ui, sans-serif;--font-body: var(--font-display);--fs-sm: 13px;--fs: 14px;--fs-md: 15px;--fs-lg: 16px;--fs-xl: 20px;--fs-2xl: 26px}[data-theme=dida-dark]{--bg: #1c1c1e;--surface: #2c2c2e;--surface-2: #3a3a3c;--surface-sunken: #232326;--ink: #f5f5f7;--ink-2: #c7c7cc;--ink-3: #8e8e93;--line: #3a3a3c;--line-2: #4a4a4c;--brand: #5a8ffe;--brand-press: #4877eb;--brand-soft: rgba(90, 143, 254, .15);--brand-ink: #80a8ff;--ai: var(--brand);--ai-press: var(--brand-press);--ai-soft: var(--brand-soft);--ai-ink: var(--brand-ink);--done: #4caf50;--done-soft: rgba(76, 175, 80, .18);--warn: #fb8c00;--warn-soft: rgba(251, 140, 0, .18);--danger: #f04438;--danger-soft: rgba(240, 68, 56, .18);--priority-1: #ff6b6b;--priority-2: #ffa940;--priority-3: #5a8ffe;--priority-0: transparent;--tag-bg: #3a3a3c;--tag-ink: #c7c7cc;--r-sm: 4px;--r: 6px;--r-lg: 8px;--r-xl: 12px;--r-pill: 999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 2px 8px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .55);--font-display: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", system-ui, sans-serif;--font-body: var(--font-display);--fs-sm: 13px;--fs: 14px;--fs-md: 15px;--fs-lg: 16px;--fs-xl: 20px;--fs-2xl: 26px}[data-theme=dida] .app-canvas,[data-theme=dida-dark] .app-canvas{background:var(--bg)}[data-theme=dida] body,[data-theme=dida-dark] body{background:var(--bg);color:var(--ink);font-family:var(--font-body)}[data-theme=dida] .btn-ai,[data-theme=dida-dark] .btn-ai{background:linear-gradient(135deg,var(--brand),var(--brand-press));color:#fff;box-shadow:var(--shadow-sm)}[data-theme=dida] .chip-ai,[data-theme=dida-dark] .chip-ai{color:var(--brand-ink);background:var(--brand-soft)}[data-theme=dida] .think-dot,[data-theme=dida-dark] .think-dot{background:var(--brand)}[data-theme=dida] .ai-mark,[data-theme=dida-dark] .ai-mark{color:var(--brand)}[data-theme=dida] .sidebar-assistant,[data-theme=dida-dark] .sidebar-assistant{background:var(--brand-soft);color:var(--brand-ink)}
