.ota-overlay[data-v-ad3426b1]{z-index:9999;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.ota-dialog[data-v-ad3426b1]{background:var(--bg-secondary,#fff);text-align:center;border-radius:16px;width:100%;max-width:340px;padding:32px 24px;box-shadow:0 8px 32px #0003}.ota-icon[data-v-ad3426b1]{margin-bottom:16px;font-size:48px}h3[data-v-ad3426b1]{color:var(--text-primary,#333);margin:0 0 16px;font-size:18px;font-weight:600}.ota-info p[data-v-ad3426b1]{color:var(--text-secondary,#666);margin:6px 0;font-size:14px}.ota-progress .progress-bar[data-v-ad3426b1]{background:var(--bg-primary,#eee);border-radius:4px;height:8px;margin:16px 0;overflow:hidden}.ota-progress .progress-bar .progress-fill[data-v-ad3426b1]{background:var(--color-work,#81c9d8);border-radius:4px;height:100%;transition:width .3s}.ota-progress p[data-v-ad3426b1]{color:var(--text-secondary,#666);font-size:14px}.ota-success p[data-v-ad3426b1]{color:#27ae60;font-size:15px;font-weight:500}.ota-error p[data-v-ad3426b1]{color:#e74c3c;font-size:14px}.ota-actions[data-v-ad3426b1]{gap:12px;margin-top:24px;display:flex}.ota-actions button[data-v-ad3426b1]{cursor:pointer;border:none;border-radius:10px;flex:1;padding:12px;font-size:14px;font-weight:500;transition:all .2s}.ota-actions .btn-skip[data-v-ad3426b1]{background:var(--bg-primary,#eee);color:var(--text-secondary,#666)}.ota-actions .btn-skip[data-v-ad3426b1]:hover{background:#ddd}.ota-actions .btn-update[data-v-ad3426b1]{background:var(--color-work,#81c9d8);color:#fff}.ota-actions .btn-update[data-v-ad3426b1]:hover{filter:brightness(1.1)}.fade-enter-active[data-v-ad3426b1],.fade-leave-active[data-v-ad3426b1]{transition:opacity .3s}.fade-enter-from[data-v-ad3426b1],.fade-leave-to[data-v-ad3426b1]{opacity:0}:root{--color-work:#81c9d8;--color-study:#7bc47f;--color-life:#f5a962;--color-health:#e8a0bf;--color-social:#b8a9c9;--color-other:#a8a8a8;--color-priority-high:#e74c3c;--bg-primary:#f5f7fa;--bg-secondary:#fff;--bg-card:#fff;--bg-hover:#ecf5ff;--text-primary:#303133;--text-secondary:#606266;--text-tertiary:#909399;--border-color:#e4e7ed;--shadow-sm:0 2px 4px #0000000d;--shadow-md:0 4px 12px #0000001a;--shadow-lg:0 8px 24px #00000026;--calendar-header-bg:#f0f2f5;--calendar-today-bg:#e8f4fd;--calendar-selected-bg:#d9ecff;--calendar-hour-height:60px;--calendar-cell-gap:4px;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-full:9999px;--font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-size-xs:12px;--font-size-sm:14px;--font-size-md:16px;--font-size-lg:18px;--font-size-xl:24px;--transition-fast:.15s ease;--transition-normal:.3s ease;--transition-slow:.5s ease}.dark{--bg-primary:#1e1e2e;--bg-secondary:#2d2d3d;--bg-card:#2d2d3d;--bg-hover:#3d3d4d;--text-primary:#e4e4ed;--text-secondary:#b4b4bd;--text-tertiary:#84848d;--border-color:#4c4c5c;--shadow-sm:0 2px 4px #0003;--shadow-md:0 4px 12px #0000004d;--shadow-lg:0 8px 24px #0006;--calendar-header-bg:#252535;--calendar-today-bg:#353545;--calendar-selected-bg:#454555;--color-work:#91d9e8;--color-study:#8bd48f;--color-life:#ffb972;--color-health:#f8b0cf;--color-social:#c8b9d9}*{box-sizing:border-box;margin:0;padding:0}html,body{font-family:var(--font-family);font-size:var(--font-size-md);color:var(--text-primary);background-color:var(--bg-primary);min-height:100vh;line-height:1.5;overflow-x:hidden}#app{flex-direction:column;min-height:100vh;display:flex}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}button{cursor:pointer;transition:all var(--transition-fast);border:none;outline:none;font-family:inherit}input,textarea,select{font-family:inherit;font-size:inherit;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);border-radius:var(--radius-sm);padding:var(--spacing-sm) var(--spacing-md);transition:all var(--transition-fast)}input:focus,textarea:focus,select:focus{border-color:var(--color-work);outline:none;box-shadow:0 0 0 2px #81c9d833}input:disabled,textarea:disabled,select:disabled{opacity:.6;cursor:not-allowed}.card{background:var(--bg-card);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:var(--spacing-md)}.task-block{border-radius:var(--radius-sm);padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs);white-space:nowrap;text-overflow:ellipsis;cursor:pointer;transition:all var(--transition-fast);overflow:hidden}.task-block:hover{box-shadow:var(--shadow-sm);transform:scale(1.02)}.task-block.priority-high{border-left:4px solid var(--color-priority-high)}.task-block.priority-low{opacity:.6}.task-block.completed{opacity:.5;text-decoration:line-through}.task-category-work{background-color:var(--color-work);color:#fff}.task-category-study{background-color:var(--color-study);color:#fff}.task-category-life{background-color:var(--color-life);color:#fff}.task-category-health{background-color:var(--color-health);color:#fff}.task-category-social{background-color:var(--color-social);color:#fff}.task-category-other{background-color:var(--color-other);color:#fff}.fade-enter-active,.fade-leave-active{transition:opacity var(--transition-normal)}.fade-enter-from,.fade-leave-to{opacity:0}.slide-enter-active,.slide-leave-active{transition:transform var(--transition-normal), opacity var(--transition-normal)}.slide-enter-from{opacity:0;transform:translate(20px)}.slide-leave-to{opacity:0;transform:translate(-20px)}@media (width<=768px){.hide-mobile{display:none!important}}@media (width>=769px){.hide-desktop{display:none!important}}.month-view{gap:var(--calendar-cell-gap);background:var(--bg-secondary);border-radius:var(--radius-md);grid-template-columns:repeat(7,1fr);display:grid;overflow:hidden}.month-header{background:var(--calendar-header-bg);text-align:center;font-weight:600;font-size:var(--font-size-sm);padding:var(--spacing-sm) 0;grid-template-columns:repeat(7,1fr);display:grid}.day-cell{min-height:80px;padding:var(--spacing-sm);border:1px solid var(--border-color);cursor:pointer;transition:all var(--transition-fast);border-top:none}.day-cell:hover{background:var(--bg-hover)}.day-cell.today{background:var(--calendar-today-bg)}.day-cell.today .day-number{background:var(--color-work);color:#fff;border-radius:var(--radius-full);justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex}.day-cell.selected{background:var(--calendar-selected-bg);border-color:var(--color-work)}.day-cell.other-month{opacity:.4}.day-number{font-size:var(--font-size-sm);color:var(--text-primary);font-weight:500}.day-tasks{margin-top:var(--spacing-xs);flex-direction:column;gap:2px;display:flex}.task-chip{border-radius:var(--radius-md);white-space:nowrap;text-overflow:ellipsis;color:#fff;cursor:pointer;max-width:100%;transition:all var(--transition-fast);padding:2px 6px;font-size:11px;display:inline-block;overflow:hidden}.task-chip:hover{filter:brightness(1.1)}.task-chip.completed{opacity:.5;text-decoration:line-through}.task-chip.priority-high{border-left:3px solid var(--color-priority-high)}.task-chip.priority-low{opacity:.5}.more-tasks{color:var(--text-tertiary);cursor:pointer;padding:2px 4px;font-size:11px}.more-tasks:hover{color:var(--text-secondary)}.week-view{background:var(--bg-secondary);border-radius:var(--radius-md);flex-direction:column;display:flex;overflow:hidden}.week-header{border-bottom:1px solid var(--border-color);background:var(--calendar-header-bg);display:flex}.week-header .time-column{width:60px;padding:var(--spacing-sm);font-size:var(--font-size-xs);color:var(--text-tertiary);text-align:center}.week-header .day-column-header{padding:var(--spacing-sm);text-align:center;font-weight:500;font-size:var(--font-size-sm);cursor:pointer;flex:1}.week-header .day-column-header:hover{background:var(--bg-hover)}.week-header .day-column-header.today{background:var(--calendar-today-bg);color:var(--color-work)}.week-body{max-height:70vh;display:flex;overflow-y:auto}.time-axis{background:var(--bg-primary);flex-direction:column;width:60px;display:flex}.time-axis .hour-slot{height:var(--calendar-hour-height);border-bottom:1px solid var(--border-color);font-size:var(--font-size-md);color:var(--text-secondary);padding:var(--spacing-xs);text-align:center;justify-content:center;align-items:center;font-weight:500;display:flex}.week-columns{flex:1;display:flex}.week-columns .day-column{border-left:1px solid var(--border-color);cursor:pointer;flex:1;position:relative}.week-columns .day-column:hover{background:var(--bg-hover)}.week-columns .day-column .hour-grid{flex-direction:column;display:flex;position:absolute;inset:0}.week-columns .day-column .hour-grid .hour-line{height:var(--calendar-hour-height);border-bottom:1px solid var(--border-color)}.day-view{background:var(--bg-secondary);border-radius:var(--radius-md);flex-direction:column;display:flex;overflow:hidden}.day-header{padding:var(--spacing-md);background:var(--calendar-header-bg);justify-content:space-between;align-items:center;display:flex}.day-body{max-height:70vh;display:flex;position:relative;overflow-y:auto}.time-task-block{left:70px;right:var(--spacing-sm);border-radius:var(--radius-lg);padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-md);cursor:grab;transition:all var(--transition-fast);z-index:10;position:absolute;overflow:hidden}.time-task-block:hover{z-index:20;box-shadow:var(--shadow-md);transform:scale(1.02)}.time-task-block.dragging{cursor:grabbing;opacity:.8;z-index:100}.time-task-block.priority-high{border-left:4px solid var(--color-priority-high)}.time-task-block.priority-low{opacity:.6}.time-task-block.completed{opacity:.4;text-decoration:line-through}.time-task-block.overlap{left:calc(70px + 10px * var(--overlap-index,0));right:calc(var(--spacing-sm) + 10px * var(--overlap-index,0))}.time-task-block .task-title{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.time-task-block .task-time{font-size:var(--font-size-sm);opacity:.85;margin-top:2px}.app{background:var(--bg-primary);min-height:100vh}
