.event-description a{color:#2563eb;text-decoration:underline}.event-description a:hover{color:#1d4ed8}.chat-markdown p{margin:0 0 .5em}.chat-markdown p:last-child{margin-bottom:0}.chat-markdown ul,.chat-markdown ol{margin:.5em 0;padding-left:1.5em}.chat-markdown li{margin:.25em 0}.chat-markdown code{background-color:#f3f4f6;padding:.125em .375em;border-radius:4px;font-size:.9em;font-family:ui-monospace,monospace}.chat-markdown pre{background-color:#f3f4f6;padding:.75em 1em;border-radius:6px;overflow-x:auto;margin:.5em 0}.chat-markdown pre code{background:none;padding:0}.chat-markdown strong{font-weight:600}.chat-markdown a{color:#2563eb;text-decoration:underline}.chat-markdown a:hover{color:#1d4ed8}.chat-markdown blockquote{border-left:3px solid #d1d5db;margin:.5em 0;padding-left:1em;color:#6b7280}.chat-markdown h1,.chat-markdown h2,.chat-markdown h3{font-weight:600;margin:.75em 0 .25em}.chat-markdown h1{font-size:1.25em}.chat-markdown h2{font-size:1.125em}.chat-markdown h3{font-size:1em}.floating-mic-container{position:fixed;bottom:max(env(safe-area-inset-bottom),12px);right:24px;z-index:1000;transition:transform .3s ease}.floating-mic-container.hidden{transform:translate(calc(100% + 48px));pointer-events:none}.floating-mic{position:relative;width:64px;height:64px;border-radius:50%;border:none;background:linear-gradient(135deg,var(--accent-primary),var(--accent-primary-dark));color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #2563eb66;transition:transform .15s ease,background .15s ease;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.floating-mic:hover{transform:scale(1.05)}.floating-mic:active{transform:scale(.95)}.floating-mic.recording{background:linear-gradient(135deg,var(--accent-danger),var(--accent-danger-dark));box-shadow:0 4px 12px #dc262666}.mic-icon{width:28px;height:28px;position:relative;z-index:1}.audio-border{position:absolute;inset:-4px;border-radius:50%;border:4px solid var(--accent-danger, #ef4444);pointer-events:none;transition:opacity .05s ease-out;box-shadow:0 0 8px var(--accent-danger, #ef4444),0 0 16px #ef444480,inset 0 0 8px #ef44444d}@media(pointer:coarse){.floating-mic{width:72px;height:72px}.mic-icon{width:32px;height:32px}.audio-border{inset:-5px;border-width:5px}}.floating-todos-button{position:fixed;bottom:max(env(safe-area-inset-bottom),12px);left:24px;width:64px;height:64px;border-radius:50%;border:none;background:linear-gradient(135deg,var(--accent-primary),var(--accent-primary-dark));color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #2563eb66;transition:transform .3s ease,box-shadow .15s ease;z-index:1000;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.floating-todos-button.hidden{transform:translate(calc(-100% - 48px));pointer-events:none}.floating-todos-button:hover:not(.hidden){transform:scale(1.05)}.floating-todos-button:active:not(.hidden){transform:scale(.95)}.floating-todos-button.open{background:linear-gradient(135deg,color-mix(in srgb,var(--accent-primary) 80%,white),var(--accent-primary));box-shadow:0 4px 16px #2563eb80}.todos-icon{width:28px;height:28px}.todos-badge{position:absolute;top:-2px;right:-2px;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:#fff;color:var(--accent-primary-dark);font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px #0003;animation:badge-pop .3s ease}@keyframes badge-pop{0%{transform:scale(1)}50%{transform:scale(1.4)}to{transform:scale(1)}}.floating-todos-button.open .todos-badge{background:var(--accent-primary-dark);color:#fff}.todos-backdrop{position:fixed;inset:0;background:#00000080;z-index:999;animation:fade-in .2s ease}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.todos-drawer{position:fixed;bottom:0;left:0;right:0;max-height:70vh;background:var(--bg-primary, #0a0a0a);border-top-left-radius:20px;border-top-right-radius:20px;z-index:1001;transform:translateY(100%);transition:transform .3s ease;display:flex;flex-direction:column;padding-bottom:max(env(safe-area-inset-bottom),16px)}.todos-drawer.open{transform:translateY(0)}.todos-drawer-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 12px;border-bottom:1px solid var(--border-color, rgba(255,255,255,.1))}.todos-drawer-header h3{font-size:18px;font-weight:600;margin:0}.todos-count{font-size:14px;color:var(--text-tertiary, rgba(255,255,255,.5))}.todos-list{flex:1;overflow-y:auto;padding:12px 16px;min-height:150px}.todos-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:150px;color:var(--text-tertiary, rgba(255,255,255,.5));text-align:center}.todos-empty .hint{font-size:14px;color:var(--text-muted, rgba(255,255,255,.3));margin-top:4px}.todo-item{display:flex;align-items:center;gap:12px;padding:14px 12px;margin-bottom:8px;background:var(--bg-tertiary, rgba(255,255,255,.05));border-radius:12px;cursor:grab;transition:background .15s,transform .15s;-webkit-user-select:none;user-select:none;touch-action:none}.todo-item:active{cursor:grabbing;background:var(--bg-hover, rgba(255,255,255,.1));transform:scale(1.02)}.todo-checkbox{width:24px;height:24px;border:none;background:transparent;padding:0;cursor:pointer;flex-shrink:0}.checkbox-circle{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border:2px solid var(--text-tertiary, rgba(255,255,255,.4));border-radius:50%;transition:all .15s}.todo-checkbox:active .checkbox-circle,.todo-checkbox.completing .checkbox-circle{background:var(--accent-success, #22c55e);border-color:var(--accent-success, #22c55e)}.checkbox-circle svg{width:14px;height:14px;color:#fff;animation:checkmark-pop .2s ease}@keyframes checkmark-pop{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.todo-item.completing{opacity:.5;transform:scale(.98)}.todo-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.todo-text{font-size:15px;color:var(--text-primary, #fff);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.todo-estimate{font-size:13px;color:var(--text-muted, rgba(255,255,255,.4))}.todo-drag-hint{color:var(--text-muted, rgba(255,255,255,.3));flex-shrink:0}.todos-drawer-hint{text-align:center;font-size:13px;color:var(--text-muted, rgba(255,255,255,.3));padding:12px;border-top:1px solid var(--border-color, rgba(255,255,255,.1))}.dragging-todo-indicator{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);padding:12px 20px;background:var(--accent-primary, #3b82f6);color:#fff;border-radius:12px;font-size:15px;font-weight:500;box-shadow:0 8px 24px #0000004d;z-index:1002;pointer-events:none;animation:float-in .2s ease}@keyframes float-in{0%{opacity:0;transform:translate(-50%,-50%) scale(.9)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@media(pointer:coarse){.floating-todos-button{width:72px;height:72px}.todos-icon{width:32px;height:32px}.todo-item{padding:16px 14px}}html,body{background:var(--bg-primary, #0a0a0a)}:root{--bg-primary: #0a0a0a;--bg-secondary: #1a1a1a;--bg-tertiary: rgba(255, 255, 255, .05);--bg-hover: rgba(255, 255, 255, .1);--text-primary: #fafafa;--text-secondary: rgba(255, 255, 255, .7);--text-tertiary: rgba(255, 255, 255, .5);--text-muted: rgba(255, 255, 255, .3);--border-color: rgba(255, 255, 255, .1);--accent-primary: #3b82f6;--accent-primary-dark: #2563eb;--accent-secondary: #8b5cf6;--accent-secondary-dark: #7c3aed;--accent-success: #22c55e;--accent-danger: #ef4444;--accent-danger-dark: #dc2626;--accent-warning: #eab308;--shadow-color: rgba(0, 0, 0, .3);--card-gradient: linear-gradient(145deg, #1a1a1a, #0d0d0d);--indicator-bg: rgba(0, 0, 0, .5);--indicator-dot: rgba(255, 255, 255, .3);--indicator-active: #fff;--message-user: var(--accent-primary-dark);--message-ai: rgba(255, 255, 255, .1);--event-meeting-bg: rgba(59, 130, 246, .15);--event-meeting-border: var(--accent-primary);--event-workblock-bg: rgba(34, 197, 94, .15);--event-workblock-border: var(--accent-success)}[data-theme=light]{--bg-primary: #ffffff;--bg-secondary: #f5f5f5;--bg-tertiary: rgba(0, 0, 0, .03);--bg-hover: rgba(0, 0, 0, .06);--text-primary: #111111;--text-secondary: rgba(0, 0, 0, .7);--text-tertiary: rgba(0, 0, 0, .5);--text-muted: rgba(0, 0, 0, .3);--border-color: rgba(0, 0, 0, .1);--accent-primary: #2563eb;--accent-primary-dark: #1d4ed8;--accent-secondary: #7c3aed;--accent-secondary-dark: #6d28d9;--accent-success: #16a34a;--accent-danger: #dc2626;--accent-danger-dark: #b91c1c;--accent-warning: #ca8a04;--shadow-color: rgba(0, 0, 0, .1);--card-gradient: linear-gradient(145deg, #ffffff, #f0f0f0);--indicator-bg: rgba(255, 255, 255, .9);--indicator-dot: rgba(0, 0, 0, .2);--indicator-active: #111;--message-user: var(--accent-primary);--message-ai: rgba(0, 0, 0, .05);--event-meeting-bg: rgba(37, 99, 235, .1);--event-meeting-border: var(--accent-primary);--event-workblock-bg: rgba(22, 163, 74, .1);--event-workblock-border: var(--accent-success)}.mobile-app{height:100dvh;width:100vw;display:flex;flex-direction:column;background:var(--bg-primary);color:var(--text-primary);overflow:hidden;position:relative;font-family:system-ui,-apple-system,sans-serif}.view-indicators{position:absolute;top:max(env(safe-area-inset-top),12px);left:50%;transform:translate(-50%);display:flex;gap:8px;z-index:100;padding:8px 16px;background:var(--indicator-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:20px}.indicator{width:8px;height:8px;border-radius:50%;border:none;background:var(--indicator-dot);cursor:pointer;padding:0;transition:all .2s ease}.indicator.active{background:var(--indicator-active);width:24px;border-radius:4px}.clear-chat-btn{position:fixed;top:max(env(safe-area-inset-top),12px);right:24px;z-index:1000;width:64px;height:64px;border-radius:50%;border:none;background:var(--card-bg);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #00000026;transition:transform .15s ease,opacity .15s ease;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.clear-chat-btn:hover{transform:scale(1.05)}.clear-chat-btn:active{transform:scale(.95)}.clear-chat-btn svg{width:28px;height:28px}@media(pointer:coarse){.clear-chat-btn{width:72px;height:72px}.clear-chat-btn svg{width:32px;height:32px}}.keyboard-toggle-btn{position:fixed;bottom:max(env(safe-area-inset-bottom),12px);right:100px;z-index:1000;width:64px;height:64px;border-radius:50%;border:none;background:var(--card-bg);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #00000026;transition:transform .15s ease,background .15s ease;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.keyboard-toggle-btn:hover{transform:scale(1.05)}.keyboard-toggle-btn:active{transform:scale(.95)}.keyboard-toggle-btn.active{background:var(--bg-secondary)}@media(pointer:coarse){.keyboard-toggle-btn{width:72px;height:72px;right:108px}}.views-container{flex:1;display:flex;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.views-container::-webkit-scrollbar{display:none}.view{flex:0 0 100%;width:100%;height:100%;scroll-snap-align:start;scroll-snap-stop:always;display:flex;flex-direction:column;padding:max(env(safe-area-inset-top) + 60px,72px) 24px max(env(safe-area-inset-bottom) + 100px,112px);box-sizing:border-box;overflow-y:auto;overscroll-behavior-y:contain}.view.now-view{justify-content:center;align-items:center;text-align:center;gap:32px}.view.now-view.now-view-scrollable{justify-content:flex-start;padding:0;scroll-snap-type:y mandatory;overflow-y:auto;overscroll-behavior-y:contain}.now-card{flex:0 0 100%;min-height:100%;scroll-snap-align:start;scroll-snap-stop:always;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:max(env(safe-area-inset-top) + 60px,72px) 24px max(env(safe-area-inset-bottom) + 100px,112px);box-sizing:border-box;position:relative}.now-card-position{position:absolute;top:max(env(safe-area-inset-top) + 70px,82px);font-size:12px;color:var(--text-muted)}.now-status{font-size:14px;font-weight:600;padding:6px 16px;border-radius:20px;background:var(--bg-tertiary);color:var(--text-secondary)}.now-status.in_progress,.now-status.overdue{background:#ef444426;color:var(--accent-danger)}.now-status.starting{background:#eab30826;color:#eab308}.now-status.upcoming{background:var(--bg-tertiary);color:var(--text-tertiary)}.now-status.working{background:#22c55e26;color:var(--accent-success);animation:pulse-gentle 2s ease-in-out infinite}@keyframes pulse-gentle{0%,to{opacity:1}50%{opacity:.7}}.now-card.active .now-task{color:var(--accent-success)}.now-card.completing{animation:celebrate-fade .8s ease-out forwards}@keyframes celebrate-fade{0%{opacity:1;transform:scale(1)}40%{opacity:1;transform:scale(1.02)}to{opacity:0;transform:scale(.95)}}.now-card.completing .now-task{color:var(--accent-success)}.now-status.completed{background:#22c55e33;color:var(--accent-success);font-weight:600}.completion-checkmark{font-size:64px;color:var(--accent-success);animation:checkmark-pop .4s cubic-bezier(.175,.885,.32,1.275) forwards}@keyframes checkmark-pop{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.now-label{font-size:14px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-tertiary)}.now-task{font-size:clamp(28px,8vw,48px);font-weight:700;line-height:1.2;max-width:100%;word-wrap:break-word}.now-time{font-size:18px;color:var(--text-secondary);display:flex;flex-direction:column;gap:4px}.now-time .relative{font-size:24px;color:var(--accent-success);font-weight:600}.now-actions{display:flex;flex-direction:column;gap:12px;width:100%;max-width:300px}.now-action{padding:16px 32px;border-radius:12px;border:none;font-size:16px;font-weight:600;cursor:pointer;transition:transform .1s,opacity .1s}.now-action:active{transform:scale(.98)}.now-action.primary{background:var(--accent-success);color:#000}.now-action.primary.urgent{background:var(--accent-primary);color:#fff}.now-action.secondary{background:var(--bg-tertiary);color:var(--text-primary)}.scroll-hint-center{position:fixed;bottom:max(env(safe-area-inset-bottom) + 16px,28px);left:50%;transform:translate(-50%);color:var(--text-muted);animation:hint-breathe 4s ease-in-out infinite;z-index:999}@keyframes hint-breathe{0%,to{opacity:.25}50%{opacity:.45}}.scroll-hint-center svg{width:32px;height:32px}.view.dump-view{justify-content:flex-end;gap:16px}.dump-header{text-align:center;color:var(--text-tertiary);font-size:14px;padding-bottom:16px}.dump-messages{flex:1;display:flex;flex-direction:column;gap:12px;overflow-y:auto;min-height:0}.dump-messages:before{content:"";margin-top:auto}.dump-message{padding:12px 16px;border-radius:16px;max-width:85%;font-size:15px;line-height:1.4}.dump-message.user{background:var(--message-user);color:#fff;align-self:flex-end;border-bottom-right-radius:4px}.dump-message.ai{background:transparent;align-self:stretch;max-width:100%;padding:12px 0;color:var(--text-primary)}.dump-prompt{text-align:center;padding:32px;color:var(--text-tertiary);font-size:18px;opacity:1;transform:translateY(0);transition:opacity .2s ease-out,transform .2s ease-out;align-self:center}.dump-prompt.hidden{opacity:0;transform:translateY(-10px);pointer-events:none}.dump-prompt.recording{color:var(--accent-danger)}.dump-prompt.processing{color:var(--accent-primary)}.processing-indicator{display:flex;align-items:center;justify-content:center;gap:8px;font-size:16px}.processing-indicator:after{content:"";display:inline-block;width:16px;height:16px;border:2px solid var(--accent-primary);border-top-color:transparent;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.dump-input-area{display:grid}.dump-input-area>*{grid-area:1 / 1}.dump-text-input{display:flex;gap:8px;align-items:flex-end;padding:12px;background:var(--bg-secondary);border-radius:24px;opacity:0;transform:translateY(20px);transition:opacity .25s ease-out,transform .25s ease-out;pointer-events:none;align-self:end}.dump-text-input.visible{opacity:1;transform:translateY(0);pointer-events:auto}.dump-text-input textarea{flex:1;background:transparent;border:none;color:var(--text-primary);font-size:16px;font-family:inherit;resize:none;padding:8px 4px;min-height:24px;max-height:120px;line-height:1.4}.dump-text-input textarea::placeholder{color:var(--text-tertiary)}.dump-text-input textarea:focus{outline:none}.dump-text-input .send-btn{width:40px;height:40px;border-radius:50%;border:none;background:var(--accent-primary);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:opacity .15s ease,transform .15s ease}.dump-text-input .send-btn:disabled{opacity:.4;cursor:not-allowed}.dump-text-input .send-btn:not(:disabled):hover{transform:scale(1.05)}.dump-text-input .send-btn:not(:disabled):active{transform:scale(.95)}.dump-recovery{background:var(--bg-secondary);border-radius:12px;padding:16px;text-align:center}.dump-recovery p{margin:0 0 12px;color:var(--text-primary);font-size:14px}.dump-recovery-actions{display:flex;gap:12px;justify-content:center}.dump-recovery-actions button{padding:8px 16px;border-radius:8px;border:none;font-size:14px;cursor:pointer}.recover-btn{background:var(--accent-primary);color:#fff}.discard-btn{background:var(--bg-tertiary);color:var(--text-secondary)}.dump-error{background:#ef44441a;border:1px solid var(--accent-danger);border-radius:8px;padding:12px;text-align:center;color:var(--accent-danger);font-size:14px}.dump-empty{text-align:center;color:var(--text-muted);font-size:16px;padding:40px 20px}.recording-indicator{display:flex;align-items:center;justify-content:center;gap:8px;font-size:16px}.recording-dot{width:12px;height:12px;background:var(--accent-danger);border-radius:50%;animation:pulse 1s infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.1)}}.view.triage-view{justify-content:center;align-items:center;gap:24px}.triage-header{text-align:center}.triage-header h2{font-size:20px;font-weight:600;margin:0 0 8px}.triage-header p{font-size:14px;color:var(--text-tertiary);margin:0}.triage-card-container{position:relative;width:100%;max-width:320px;height:200px}.triage-card{position:absolute;inset:0;background:var(--card-gradient);border:1px solid var(--border-color);border-radius:20px;padding:24px;display:flex;flex-direction:column;justify-content:center;text-align:center;gap:12px;touch-action:pan-x;-webkit-user-select:none;user-select:none;transition:transform .3s ease,opacity .3s ease}.triage-card.swiping{transition:none}.triage-card .task-title{font-size:22px;font-weight:600}.triage-card .task-meta{font-size:14px;color:var(--text-tertiary)}.triage-card .was-scheduled{font-size:13px;color:var(--text-muted)}.triage-actions{display:flex;justify-content:center;gap:16px}.triage-action{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 20px;border-radius:12px;border:1px solid var(--border-color);background:transparent;color:var(--text-primary);font-size:13px;cursor:pointer;transition:all .2s}.triage-action:active{transform:scale(.95)}.triage-action.move{border-color:var(--accent-primary);color:var(--accent-primary)}.triage-action.drop{border-color:var(--accent-danger);color:var(--accent-danger)}.triage-action.done{border-color:var(--accent-success);color:var(--accent-success)}.triage-action-icon{font-size:24px}.triage-empty{text-align:center;color:var(--text-tertiary)}.triage-empty .icon{font-size:48px;margin-bottom:16px}.triage-card:nth-child(2){transform:scale(.95) translateY(10px);opacity:.5}.triage-card:nth-child(3){transform:scale(.9) translateY(20px);opacity:.3}.triage-counter{font-size:13px;color:var(--text-muted);text-align:center}.triage-card-exit{pointer-events:none}.triage-card-exit-move{animation:triage-exit-move .3s ease-out forwards}.triage-card-exit-drop{animation:triage-exit-drop .3s ease-out forwards}.triage-card-exit-done{animation:triage-exit-done .3s ease-out forwards}@keyframes triage-exit-move{to{transform:translate(100%) rotate(10deg);opacity:0}}@keyframes triage-exit-drop{to{transform:translateY(50%) scale(.8);opacity:0}}@keyframes triage-exit-done{to{transform:scale(1.1);opacity:0}}.triage-action:disabled{opacity:.5;pointer-events:none}.view.calendar-view{gap:16px;padding-top:max(env(safe-area-inset-top) + 50px,62px);user-select:none;-webkit-user-select:none}.calendar-header{display:flex;justify-content:space-between;align-items:center}.calendar-header h2{font-size:18px;font-weight:600;margin:0}.calendar-nav{display:flex;gap:8px}.calendar-nav button{width:36px;height:36px;border-radius:50%;border:1px solid var(--border-color);background:transparent;color:var(--text-primary);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center}.time-grid{flex:1;display:grid;grid-template-columns:48px 1fr;gap:0;overflow-y:auto;min-height:0}.time-labels{display:flex;flex-direction:column}.time-label{height:60px;font-size:12px;color:var(--text-muted);text-align:right;padding-right:8px;position:relative;top:-6px}.time-slots{position:relative;border-left:1px solid var(--border-color)}.time-slot-line{position:absolute;left:0;right:0;height:1px;background:var(--border-color)}.calendar-event{position:absolute;left:4px;right:4px;background:var(--event-meeting-bg);border-left:3px solid var(--event-meeting-border);border-radius:4px;padding:4px 8px;font-size:13px;overflow:hidden;cursor:grab;transition:transform .1s,opacity .1s}.calendar-event:active{cursor:grabbing;transform:scale(.98)}.calendar-event.work-block{background:var(--event-workblock-bg);border-left-color:var(--event-workblock-border)}.calendar-event .event-title{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-event .event-time{font-size:11px;color:var(--text-secondary)}.calendar-todos{background:var(--bg-tertiary);border-radius:12px;padding:12px;max-height:150px;overflow-y:auto}.calendar-todos h3{font-size:13px;font-weight:600;margin:0 0 8px;color:var(--text-secondary)}.calendar-todo{display:flex;align-items:center;gap:8px;padding:8px;font-size:14px;border-radius:8px;cursor:grab;transition:background .2s}.calendar-todo:active{cursor:grabbing;background:var(--bg-hover)}.calendar-todo .estimate{font-size:12px;color:var(--text-muted);margin-left:auto}.current-time-line{position:absolute;left:0;right:0;height:2px;background:var(--accent-danger);z-index:10}.current-time-line:before{content:"";position:absolute;left:-4px;top:-3px;width:8px;height:8px;background:var(--accent-danger);border-radius:50%}.view.settings-view{gap:24px}.settings-header h2{font-size:24px;font-weight:700;margin:0}.settings-list{display:flex;flex-direction:column;gap:24px;width:100%}.settings-group{display:flex;flex-direction:column;gap:8px}.settings-group-title{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);padding-bottom:8px;border-bottom:1px solid var(--border-color)}.settings-item{display:flex;justify-content:space-between;align-items:center;padding:12px 0}.settings-item-label{font-size:15px;color:var(--text-primary)}.settings-item-value{font-size:15px;color:var(--text-tertiary)}.settings-toggle-group{display:flex;gap:4px;background:var(--bg-tertiary);padding:4px;border-radius:10px}.settings-toggle{padding:8px 16px;border:none;border-radius:8px;background:transparent;color:var(--text-tertiary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.settings-toggle.active{background:var(--bg-primary);color:var(--text-primary);box-shadow:0 2px 4px var(--shadow-color)}.settings-button{width:100%;padding:14px;border:none;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;margin-top:8px}.settings-button.danger{background:var(--bg-tertiary);color:var(--accent-danger)}.settings-button.danger:active{background:var(--accent-danger);color:#fff}.settings-footer{margin-top:auto;font-size:12px;color:var(--text-muted);text-align:center}.touch-drag-preview{position:fixed;transform:translate(-50%,-120%);padding:10px 16px;background:var(--accent-primary);color:#fff;border-radius:10px;font-size:14px;font-weight:500;box-shadow:0 4px 16px #0000004d;z-index:2000;pointer-events:none;white-space:nowrap;max-width:200px;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:8px}.touch-drag-preview .drag-preview-time{font-size:12px;opacity:.8;flex-shrink:0}.calendar-slot{position:absolute;left:4px;right:4px;background:#3b82f614;border:1px dashed rgba(59,130,246,.4);border-radius:4px;display:flex;align-items:center;padding-left:8px;transition:all .1s ease;cursor:pointer;z-index:5}.calendar-slot:hover{background:#3b82f626;border-color:var(--accent-primary)}.calendar-slot .slot-label{font-size:10px;color:var(--accent-primary);font-weight:500;opacity:.8}.calendar-slot.active{background:#22c55e40;border-color:var(--accent-success);border-style:solid;border-width:2px}.calendar-slot.active .slot-label{color:var(--accent-success);opacity:1;font-weight:600}.mobile-app.dragging,.mobile-app.dragging *{user-select:none;-webkit-user-select:none}*{box-sizing:border-box}:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.4;font-weight:400;color:#111;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}body{margin:0}button{font-family:inherit}
