@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1)}}@layer utilities{.absolute{position:absolute}.relative{position:relative}.grid{display:grid}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}.progress-container{display:flex;flex-direction:column;gap:var(--space-2)}.progress-text{display:flex;justify-content:space-between;font-family:var(--font-helvetica);font-size:var(--text-xs);font-style:italic;color:var(--text-muted);letter-spacing:.02em;transition:color var(--duration-smooth) var(--ease-default)}.progress-percent{color:var(--accent-warm);transition:color var(--duration-smooth) var(--ease-default)}.progress-track{height:6px;border-radius:var(--radius-full);background:var(--bg-elevated);overflow:hidden;transition:background var(--duration-smooth) var(--ease-default)}.progress-fill{height:100%;border-radius:var(--radius-full);background:var(--accent-warm);min-width:0}.dropdown{position:relative}.dropdown-trigger{display:flex;align-items:center;gap:var(--space-2);font-family:var(--font-body);font-size:var(--text-base);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-elevated);color:var(--text-primary);cursor:pointer;width:100%;text-align:left;transition:background var(--duration-smooth) var(--ease-default),color var(--duration-smooth) var(--ease-default),border-color var(--duration-smooth) var(--ease-default),box-shadow var(--duration-fast) var(--ease-default)}.dropdown-trigger:hover{border-color:var(--border-strong)}.dropdown-trigger:focus{outline:none;border-color:var(--accent-warm-dim);box-shadow:0 0 0 3px var(--accent-warm-glow)}.dropdown-value{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown-chevron{width:16px;height:16px;flex-shrink:0;color:var(--text-muted)}.dropdown-menu{position:absolute;top:calc(100% + var(--space-1));left:0;right:0;z-index:50;list-style:none;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:var(--space-1);transform-origin:top center;overflow:auto;max-height:200px}.dropdown-item{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);border:none;background:transparent;color:var(--text-primary);font-family:var(--font-body);font-size:var(--text-base);text-align:left;cursor:pointer;border-radius:var(--radius-sm);transition:background var(--duration-fast) var(--ease-default)}.dropdown-item:hover{background:var(--bg-hover)}.dropdown-item.active{color:var(--accent-warm)}.dropdown-item-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown-item-right{display:flex;align-items:center;gap:2px;flex-shrink:0}.dropdown-check{width:14px;height:14px;flex-shrink:0}.dropdown-separator{height:1px;background:var(--border);margin:var(--space-1) var(--space-2)}.dropdown.compact .dropdown-trigger{font-size:var(--text-xs);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-secondary);max-width:130px;transition:background var(--duration-smooth) var(--ease-default),color var(--duration-smooth) var(--ease-default),border-color var(--duration-smooth) var(--ease-default),box-shadow var(--duration-fast) var(--ease-default)}.dropdown.compact .dropdown-trigger:hover{border-color:var(--border-focus);color:var(--text-primary)}.dropdown.compact .dropdown-chevron{width:12px;height:12px}.dropdown.compact .dropdown-menu{min-width:150px;right:auto}.dropdown.compact .dropdown-item{font-size:var(--text-xs);padding:var(--space-1) var(--space-2)}.dropdown.compact .dropdown-check{width:12px;height:12px}.calendar-dropdown{position:absolute;top:calc(100% + var(--space-1));right:0;z-index:50;width:260px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:var(--space-3);transform-origin:top right;transition:background var(--duration-smooth) var(--ease-default),border-color var(--duration-smooth) var(--ease-default)}.calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-2)}.calendar-month-label{font-family:var(--font-helvetica);font-size:var(--text-sm);font-weight:600;color:var(--text-primary);transition:color var(--duration-smooth) var(--ease-default)}.calendar-nav{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--duration-fast) var(--ease-default)}.calendar-nav:hover{color:var(--accent-warm);background:var(--bg-hover)}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:var(--space-1)}.calendar-weekday{font-family:var(--font-helvetica);font-size:var(--text-xs);color:var(--text-muted);text-align:center;padding:var(--space-1) 0;transition:color var(--duration-smooth) var(--ease-default)}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.calendar-day{display:flex;align-items:center;justify-content:center;width:32px;height:32px;margin:0 auto;border:none;background:transparent;color:var(--text-primary);font-family:var(--font-helvetica);font-size:var(--text-xs);cursor:pointer;border-radius:var(--radius-sm);transition:background var(--duration-fast) var(--ease-default),color var(--duration-fast) var(--ease-default),box-shadow var(--duration-fast) var(--ease-default)}.calendar-day.empty{cursor:default}.calendar-day:not(.empty):not(.selected):not(.past):hover{background:var(--bg-hover);color:var(--accent-warm)}.calendar-day.today:not(.selected){box-shadow:inset 0 0 0 1.5px var(--accent-warm-dim);color:var(--accent-warm)}.calendar-day.selected{background:var(--accent-warm);color:var(--bg-deep);font-weight:700}.calendar-day.past{color:var(--text-muted)}.calendar-day.past:not(.selected):hover{color:var(--error);background:var(--error-glow)}.delete-dialog-backdrop{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1100;padding:var(--space-4);will-change:opacity}.delete-dialog{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:380px;box-shadow:var(--shadow-lg);will-change:transform,opacity;overflow:hidden}.delete-dialog-header{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border)}.delete-dialog-title{font-family:var(--font-helvetica);font-size:var(--text-lg);font-weight:600;color:var(--text-primary)}.delete-dialog-content{padding:var(--space-4) var(--space-5);display:flex;flex-direction:column;gap:var(--space-4)}.delete-dialog-subtitle{font-size:var(--text-sm);color:var(--text-secondary)}.delete-dialog-options{display:flex;flex-direction:column;gap:var(--space-3)}.delete-dialog-option{display:flex;align-items:flex-start;gap:var(--space-2);cursor:pointer;font-size:var(--text-sm);color:var(--text-primary)}.delete-dialog-option input[type=radio]{margin-top:2px;accent-color:var(--accent-warm);flex-shrink:0}.delete-dialog-option-text{display:flex;flex-direction:column;gap:var(--space-1)}.delete-dialog-option-danger .delete-dialog-option-text{color:var(--error)}.delete-dialog-select{font-family:var(--font-body);font-size:var(--text-sm);padding:var(--space-1) var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated);color:var(--text-primary);cursor:pointer;max-width:180px}.delete-dialog-select:disabled{opacity:.4;cursor:not-allowed}.delete-dialog-select:focus{outline:none;border-color:var(--accent-warm-dim);box-shadow:0 0 0 2px var(--accent-warm-glow)}.delete-dialog-footer{display:flex;justify-content:flex-end;gap:var(--space-3);padding:var(--space-3) var(--space-5);border-top:1px solid var(--border);background:var(--bg-elevated);border-radius:0 0 var(--radius-lg) var(--radius-lg)}.btn-danger{font-family:var(--font-helvetica);font-size:var(--text-xs);font-weight:600;padding:var(--space-2) var(--space-4);border:none;border-radius:var(--radius-md);background:var(--error);color:var(--bg-deep);cursor:pointer;transition:all var(--duration-fast) var(--ease-default)}.btn-danger:hover{background:var(--error-hover)}.task-input-form{display:flex;align-items:center;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);transition:background var(--duration-smooth) var(--ease-default),border-color var(--duration-smooth) var(--ease-default),box-shadow var(--duration-fast) var(--ease-default)}.task-input-form:focus-within{border-color:var(--border-focus);box-shadow:0 0 0 3px var(--accent-warm-glow)}.task-input{flex:1;border:none;outline:none;font-family:var(--font-body);font-size:var(--text-base);padding:var(--space-3) var(--space-4);background:transparent;color:var(--text-primary);transition:color var(--duration-smooth) var(--ease-default)}.task-input::placeholder{color:var(--text-muted)}.task-input-actions{display:flex;align-items:center;gap:var(--space-1)}.course-input-wrapper{display:flex;align-items:center}.course-input{font-family:var(--font-body);font-size:var(--text-xs);padding:var(--space-1) var(--space-2);border:1px solid var(--accent-warm);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-primary);width:120px;outline:none;box-shadow:0 0 0 2px var(--accent-warm-glow)}.course-input::placeholder{color:var(--text-muted)}.date-picker-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--duration-fast) var(--ease-default)}.date-picker-btn:hover{color:var(--accent-warm);background:var(--bg-hover)}.date-picker-btn.has-date{width:auto;padding:0 var(--space-2);color:var(--accent-warm);background:var(--accent-warm-glow)}.calendar-icon{width:16px;height:16px}.date-display{font-family:var(--font-helvetica);font-size:var(--text-xs);font-weight:500}.date-picker-wrapper{position:relative;display:flex;align-items:center}.clear-date-btn{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-full);font-size:14px;line-height:1;transition:all var(--duration-fast) var(--ease-default)}.clear-date-btn:hover{color:var(--error);background:var(--error-glow)}.add-task-btn{margin:var(--space-1);padding:var(--space-1) var(--space-3)}.task-input-minimal{border-color:transparent;background:transparent}.task-input-minimal:focus-within{background:var(--bg-surface);border-color:var(--border-focus)}.task-input-minimal .task-input{font-size:var(--text-sm)}.course-item-actions{display:flex;align-items:center;gap:1px;opacity:0;transition:opacity var(--duration-fast) var(--ease-default)}.dropdown-item:hover .course-item-actions{opacity:1}.course-action-btn{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--duration-fast) var(--ease-default)}.course-action-btn:hover{background:var(--bg-active);color:var(--text-primary)}.course-action-btn-danger:hover{background:var(--error-glow);color:var(--error)}@media(max-width:480px){.task-input-form{flex-wrap:wrap}.task-input{width:100%;flex:1 1 100%;border-bottom:1px solid var(--border-subtle)}.task-input-actions{width:100%;padding:var(--space-2) var(--space-3);gap:var(--space-2)}}.filter-bar{display:flex;align-items:center;gap:var(--space-3)}.search-wrapper{flex:1;position:relative;display:flex;align-items:center;min-width:0}.search-icon{position:absolute;left:var(--space-3);width:14px;height:14px;color:var(--text-muted);pointer-events:none}.search-input{width:100%;font-family:var(--font-body);font-size:var(--text-sm);padding:var(--space-2) var(--space-3);padding-left:calc(var(--space-3) + 14px + var(--space-2));padding-right:var(--space-8);border:1px solid transparent;background:var(--bg-surface);color:var(--text-primary);border-radius:var(--radius-full);outline:none;transition:background var(--duration-smooth) var(--ease-default),color var(--duration-smooth) var(--ease-default),border-color var(--duration-fast) var(--ease-default),box-shadow var(--duration-fast) var(--ease-default)}.search-input::placeholder{color:var(--text-muted)}.search-input:focus{border-color:var(--accent-warm-dim);box-shadow:0 0 0 3px var(--accent-warm-glow)}.search-clear{position:absolute;right:var(--space-2);width:20px;height:20px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-full);font-size:14px;line-height:1;display:flex;align-items:center;justify-content:center;transition:all var(--duration-fast) var(--ease-default)}.search-clear:hover{color:var(--text-primary);background:var(--bg-hover)}.hide-completed-toggle{display:flex;align-items:center;gap:var(--space-2);cursor:pointer;-webkit-user-select:none;user-select:none;flex-shrink:0}.hide-completed-toggle input[type=checkbox]{-webkit-appearance:none;appearance:none;width:14px;height:14px;border:1.5px solid var(--text-muted);border-radius:3px;background:transparent;cursor:pointer;position:relative;transition:all var(--duration-fast) var(--ease-default)}.hide-completed-toggle input[type=checkbox]:checked{background:var(--accent-warm);border-color:var(--accent-warm)}.hide-completed-toggle input[type=checkbox]:checked:after{content:"";position:absolute;left:3px;top:.5px;width:5px;height:8px;border:solid var(--bg-deep);border-width:0 1.5px 1.5px 0;transform:rotate(45deg)}.toggle-label{font-family:var(--font-helvetica);font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap;transition:color var(--duration-smooth) var(--ease-default)}@media(max-width:480px){.filter-bar{flex-wrap:wrap}.search-wrapper{order:3;flex-basis:100%}}.task-item{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-subtle);transition:background var(--duration-smooth) var(--ease-default),border-color var(--duration-smooth) var(--ease-default)}.task-item:hover{background:var(--bg-elevated)}.task-item:last-child{border-bottom:none}.task-checkbox{flex-shrink:0;width:18px;height:18px;margin-top:2px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-surface);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:background var(--duration-smooth) var(--ease-default),border-color var(--duration-smooth) var(--ease-default),box-shadow var(--duration-fast) var(--ease-default),transform var(--duration-fast) var(--ease-default)}.task-checkbox:hover{border-color:var(--accent-warm-dim);box-shadow:0 0 10px var(--accent-warm-glow),0 0 4px var(--accent-warm-glow)}.task-checkbox:active{transform:scale(.9)}.task-checkbox.checked{background:var(--accent-warm);border-color:var(--accent-warm);box-shadow:0 0 8px var(--accent-warm-glow)}.task-checkbox:focus{outline:none;box-shadow:0 0 0 3px var(--accent-warm-glow)}.checkmark-svg{width:10px;height:10px}.checkmark-svg path{stroke:var(--bg-deep)}.task-content{flex:1;min-width:0}.task-text-wrapper{position:relative;-webkit-user-select:none;user-select:none}.task-text{font-family:var(--font-body);font-size:var(--text-base);color:var(--text-primary);transition:color var(--duration-smooth) var(--ease-default)}.task-item:hover .task-text:not(.completed){color:var(--accent-warm-hover)}.task-text.completed{color:var(--text-muted)}.strikethrough-line{position:absolute;left:0;right:0;top:50%;height:1px;background:var(--text-muted);transform-origin:left center}.task-delete{flex-shrink:0;width:28px;height:28px;border:none;background:transparent;color:var(--text-muted);font-size:16px;cursor:pointer;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;opacity:0;transition:all var(--duration-fast) var(--ease-default)}.task-item:hover .task-delete{opacity:1}.task-delete:hover{color:var(--error);background:var(--bg-hover)}.task-meta{display:flex;align-items:center;gap:var(--space-2);margin-top:1px;font-size:var(--text-xs)}.task-course{color:var(--text-muted);background:none;border:none;padding:0;font:inherit;transition:color var(--duration-smooth) var(--ease-default)}.task-course-editable{cursor:pointer;border-radius:var(--radius-sm);padding:0 var(--space-1);margin:0 calc(-1 * var(--space-1));transition:all var(--duration-fast) var(--ease-default)}.task-course-editable:hover{color:var(--accent-warm);background:var(--accent-warm-glow)}.course-edit-input{font-family:var(--font-body);font-size:var(--text-sm);color:var(--text-primary);background:var(--bg-deep);border:1px solid var(--border-focus);border-radius:var(--radius-sm);padding:0 var(--space-1);margin:0 calc(-1 * var(--space-1));outline:none;box-shadow:0 0 0 2px var(--accent-warm-glow);width:auto;min-width:60px;max-width:150px}.task-due{color:var(--text-secondary);transition:color var(--duration-smooth) var(--ease-default)}.task-due.due-today{color:var(--accent-warm);font-weight:500}.task-due.due-soon{color:var(--accent-warm-dim)}.task-due.overdue{color:var(--error);font-weight:500}@media(max-width:480px){.task-delete{opacity:1}}.drag-overlay-item{background:var(--bg-surface);border-radius:var(--radius-md);box-shadow:0 8px 24px #0000004d,0 2px 8px #0003;transform:scale(1.02);cursor:grabbing}.drag-overlay-item .task-item{border-bottom:none}.sortable-task-item{cursor:grab;touch-action:none}.sortable-task-item:active{cursor:grabbing}.sortable-task-item.is-dragging{opacity:.4;transform:scale(.98)}.task-list{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);overflow:hidden;transition:background var(--duration-smooth) var(--ease-default),border-color var(--duration-smooth) var(--ease-default)}.settings-backdrop{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-4);will-change:opacity}.settings-modal{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:420px;max-height:100%;box-shadow:var(--shadow-lg);will-change:transform,opacity;overflow:hidden;display:flex;flex-direction:column}.settings-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border)}.settings-title{font-family:var(--font-helvetica);font-size:var(--text-lg);font-weight:600;color:var(--text-primary)}.settings-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--duration-fast) var(--ease-default)}.settings-close:hover{background:var(--bg-hover);color:var(--text-primary)}.settings-content{padding:var(--space-4) var(--space-5);display:flex;flex-direction:column;gap:var(--space-4);overflow-y:auto}.settings-section{margin-bottom:calc(-1 * var(--space-3))}.settings-section-title{font-family:var(--font-helvetica);font-size:var(--text-sm);font-weight:600;color:var(--accent-warm);margin-bottom:var(--space-1)}.settings-section-desc{font-size:var(--text-sm);color:var(--text-secondary);line-height:1.5}.settings-field{display:flex;flex-direction:column;gap:var(--space-1)}.settings-label{font-family:var(--font-helvetica);font-size:var(--text-sm);font-weight:500;color:var(--text-primary)}.settings-input{font-family:var(--font-body);font-size:var(--text-sm);padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-elevated);color:var(--text-primary);transition:all var(--duration-fast) var(--ease-default)}.settings-input::placeholder{color:var(--text-muted)}.settings-input:focus{outline:none;border-color:var(--accent-warm-dim);box-shadow:0 0 0 3px var(--accent-warm-glow)}.settings-hint{font-size:var(--text-xs);color:var(--text-muted);line-height:1.4}.settings-footer{display:flex;justify-content:flex-end;gap:var(--space-3);padding:var(--space-3) var(--space-5);border-top:1px solid var(--border);background:var(--bg-elevated);border-radius:0 0 var(--radius-lg) var(--radius-lg)}.instances-list{display:flex;flex-direction:column;gap:var(--space-2);overflow:hidden}.instance-item{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md)}.instance-info{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.instance-name{font-family:var(--font-helvetica);font-size:var(--text-sm);font-weight:500;color:var(--text-primary)}.instance-url{font-size:var(--text-xs);color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.instance-actions{display:flex;gap:var(--space-1);flex-shrink:0}.instance-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--duration-fast) var(--ease-default)}.instance-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.instance-btn-danger:hover{background:var(--error-glow);color:var(--error)}.instance-form{display:flex;flex-direction:column;gap:var(--space-3);overflow:hidden}.form-actions{display:flex;justify-content:flex-end;align-items:center;gap:var(--space-3);margin-top:var(--space-1);padding-top:var(--space-3);border-top:1px solid var(--border)}.btn-primary{font-family:var(--font-helvetica);font-size:var(--text-xs);font-weight:600;padding:var(--space-2) var(--space-4);border:none;border-radius:var(--radius-md);background:var(--accent-warm);color:var(--bg-deep);cursor:pointer;transition:all var(--duration-fast) var(--ease-default)}.btn-primary:hover{filter:brightness(1.1)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;filter:none}.btn-ghost{font-family:var(--font-helvetica);font-size:var(--text-xs);font-weight:500;padding:var(--space-2) var(--space-3);border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);cursor:pointer;transition:all var(--duration-fast) var(--ease-default)}.btn-ghost:hover{color:var(--text-primary);background:var(--bg-hover)}.btn-outline{font-family:var(--font-helvetica);font-size:var(--text-xs);font-weight:500;padding:var(--space-2) var(--space-4);border:1px dashed var(--border);border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);cursor:pointer;width:100%;display:flex;align-items:center;justify-content:center;gap:var(--space-2);transition:all var(--duration-fast) var(--ease-default)}.btn-outline:hover{border-color:var(--accent-warm-dim);color:var(--accent-warm);background:var(--accent-warm-glow)}.settings-divider{border:none;border-top:1px solid var(--border);margin:0}.timeframe-input-row{display:flex;align-items:center;gap:var(--space-3)}.timeframe-input{width:80px;text-align:center;-moz-appearance:textfield}.timeframe-input::-webkit-outer-spin-button,.timeframe-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.timeframe-suffix{font-family:var(--font-helvetica);font-size:var(--text-sm);color:var(--text-secondary)}.settings-toggle-row{display:flex;align-items:center;justify-content:space-between}.toggle-switch{position:relative;width:44px;height:24px;border:none;border-radius:12px;background:var(--border);cursor:pointer;padding:0;transition:background var(--duration-fast) var(--ease-default);flex-shrink:0}.toggle-switch.active{background:var(--accent-warm)}.toggle-slider{position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:var(--bg-surface);box-shadow:0 1px 3px #0003;transition:transform var(--duration-fast) var(--ease-default)}.toggle-switch.active .toggle-slider{transform:translate(20px)}@media(max-width:480px){.settings-backdrop{padding:var(--space-2)}.settings-modal{max-width:none}}@theme{ --color-warm-50: #fdf8f0; --color-warm-100: #f5ead6; --color-warm-200: #e8d4ad; --color-warm-300: #dfc08a; --color-warm-400: #d4a456; --color-warm-500: #b8944d; --color-warm-600: #9a7a3e; --color-warm-700: #7a6032; --color-warm-800: #5c4826; --color-warm-900: #3e301a; --color-warm-950: #0f0d0b; }:root{--bg-deep: #0f0d0b;--bg-surface: #1a1714;--bg-elevated: #242019;--bg-hover: #2e2820;--bg-active: #3a332a;--text-primary: #e8e2d9;--text-secondary: #a69f94;--text-muted: #6b655c;--text-faint: #4a453e;--text-disabled: #3d3832;--accent-warm: #d4a456;--accent-warm-hover: #e0b366;--accent-warm-dim: #b8944d;--accent-warm-glow: rgba(212, 164, 86, .15);--accent-warm-strong: rgba(212, 164, 86, .25);--accent-cool: #9b8aa6;--accent-cool-glow: rgba(155, 138, 166, .12);--success: #7d9c73;--success-glow: rgba(125, 156, 115, .15);--error: #c47a7a;--error-hover: #d48a8a;--error-glow: rgba(196, 122, 122, .15);--border: #2e2820;--border-subtle: #1f1b17;--border-strong: #3d3530;--border-focus: var(--accent-warm-dim);--font-helvetica: "HelveticaNeue LT 55 Roman", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-body: "EB Garamond", Georgia, serif;--text-xs: .6875rem;--text-sm: .8125rem;--text-base: .9375rem;--text-md: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 2rem;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-full: 9999px;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .2);--shadow-md: 0 4px 8px rgba(0, 0, 0, .25);--shadow-lg: 0 8px 16px rgba(0, 0, 0, .3);--shadow-glow-warm: 0 0 20px var(--accent-warm-glow);--duration-fast: .1s;--duration-normal: .2s;--duration-smooth: .3s;--ease-default: cubic-bezier(.4, 0, .2, 1)}[data-theme=light]{--bg-deep: #f5f0e8;--bg-surface: #faf7f2;--bg-elevated: #ffffff;--bg-hover: #efe9de;--bg-active: #e6dfd2;--text-primary: #2c2418;--text-secondary: #6b5f50;--text-muted: #9c9184;--text-faint: #c4bbb0;--text-disabled: #d6cfc5;--accent-warm: #b8893a;--accent-warm-hover: #a67c30;--accent-warm-dim: #c9a05a;--accent-warm-glow: rgba(184, 137, 58, .12);--accent-warm-strong: rgba(184, 137, 58, .2);--accent-cool: #7a6888;--accent-cool-glow: rgba(122, 104, 136, .1);--success: #5e8450;--success-glow: rgba(94, 132, 80, .12);--error: #b85c5c;--error-hover: #a34d4d;--error-glow: rgba(184, 92, 92, .1);--border: #ddd5c8;--border-subtle: #e8e2d7;--border-strong: #c9c0b1;--border-focus: var(--accent-warm-dim);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .06);--shadow-md: 0 4px 8px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 16px rgba(0, 0, 0, .1);--shadow-glow-warm: 0 0 20px var(--accent-warm-glow)}[data-theme=light] body:before{opacity:.015}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:var(--bg-deep);color:var(--text-primary);font-family:var(--font-body);font-size:var(--text-base);line-height:1.6;min-height:100vh;transition:background var(--duration-smooth) var(--ease-default),color var(--duration-smooth) var(--ease-default)}.app,.app-header,.sync-btn,.settings-btn,.theme-toggle-btn,.minimal-toggle-btn,.setup-prompt,.due-today-section,.due-today-header,.due-today-count{transition:background var(--duration-smooth) var(--ease-default),color var(--duration-smooth) var(--ease-default),border-color var(--duration-smooth) var(--ease-default),box-shadow var(--duration-smooth) var(--ease-default)}body:before{content:"";position:fixed;inset:0;opacity:.025;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");z-index:9999}#root{min-height:100vh;display:flex;justify-content:center}.app{width:100%;max-width:560px;padding:var(--space-16) var(--space-6);display:flex;flex-direction:column;gap:var(--space-6)}.app-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.app-title{font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:var(--text-3xl);font-style:italic;font-weight:700;letter-spacing:.02em;color:var(--text-primary)}.sync-btn{flex-shrink:0;width:36px;height:36px;border:1px solid var(--border);background:var(--bg-surface);border-radius:var(--radius-md);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:all var(--duration-fast) var(--ease-default)}.sync-btn:hover:not(:disabled){border-color:var(--accent-warm-dim);color:var(--accent-warm);box-shadow:0 0 10px var(--accent-warm-glow)}.sync-btn:disabled{cursor:not-allowed;opacity:.7}.sync-icon{width:18px;height:18px}.sync-btn.syncing .sync-icon{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.header-actions{display:flex;align-items:center;gap:var(--space-2)}.settings-btn{flex-shrink:0;width:36px;height:36px;border:1px solid var(--border);background:var(--bg-surface);border-radius:var(--radius-md);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:all var(--duration-fast) var(--ease-default)}.settings-btn:hover{border-color:var(--accent-warm-dim);color:var(--accent-warm);box-shadow:0 0 10px var(--accent-warm-glow)}.settings-icon{width:18px;height:18px}.theme-toggle-btn{flex-shrink:0;width:36px;height:36px;border:1px solid var(--border);background:var(--bg-surface);border-radius:var(--radius-md);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:all var(--duration-fast) var(--ease-default)}.theme-toggle-btn:hover{border-color:var(--accent-warm-dim);color:var(--accent-warm);box-shadow:0 0 10px var(--accent-warm-glow)}.theme-icon{width:18px;height:18px}.minimal-toggle-btn{flex-shrink:0;width:36px;height:36px;border:1px solid var(--border);background:var(--bg-surface);border-radius:var(--radius-md);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:all var(--duration-fast) var(--ease-default)}.minimal-toggle-btn:hover{border-color:var(--accent-warm-dim);color:var(--accent-warm);box-shadow:0 0 10px var(--accent-warm-glow)}.minimal-toggle-btn.active{border-color:var(--accent-warm-dim);color:var(--accent-warm);background:var(--accent-warm-glow)}.minimal-icon{width:18px;height:18px}.minimal-count{font-family:var(--font-helvetica);font-size:var(--text-sm);font-weight:600;color:var(--text-muted);letter-spacing:.02em;white-space:nowrap}.header-actions-extra{display:flex;align-items:center;gap:var(--space-2);overflow:hidden}.setup-prompt{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--accent-warm-glow);border:1px solid var(--accent-warm-dim);border-radius:var(--radius-md);color:var(--accent-warm);font-size:var(--text-sm);transition:all var(--duration-fast) var(--ease-default)}.setup-prompt-content{display:flex;align-items:center;gap:var(--space-3);flex:1;cursor:pointer}.setup-prompt-content:hover{opacity:.85}.setup-prompt-close{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:transparent;color:var(--accent-warm-dim);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--duration-fast) var(--ease-default)}.setup-prompt-close:hover{color:var(--accent-warm);background:var(--accent-warm-strong)}.setup-prompt-icon{display:flex;align-items:center;justify-content:center}.sync-status{font-size:var(--text-sm);color:var(--text-muted);text-align:center;padding:var(--space-2)}.sync-error{font-size:var(--text-sm);color:var(--error);text-align:center;padding:var(--space-2);background:var(--error-glow);border-radius:var(--radius-md)}.due-today-section{background:var(--accent-warm-glow);border:1px solid var(--accent-warm-dim);border-radius:var(--radius-lg);padding:var(--space-4)}.due-today-header{font-family:var(--font-helvetica);font-size:var(--text-sm);font-weight:600;color:var(--accent-warm);margin-bottom:var(--space-3);display:flex;align-items:center;gap:var(--space-2)}.due-today-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 var(--space-2);background:var(--accent-warm);color:var(--bg-deep);font-size:var(--text-xs);font-weight:700;border-radius:var(--radius-full)}@media(max-width:480px){.app{padding:var(--space-8) var(--space-4)}.app-title{font-size:var(--text-2xl)}.sync-btn,.settings-btn,.theme-toggle-btn,.minimal-toggle-btn{width:32px;height:32px}.sync-icon,.settings-icon,.theme-icon,.minimal-icon{width:16px;height:16px}}
