:root{--color-background: #f5f5f5;--color-surface: #ffffff;--color-surface-hover: #fafafa;--color-text-primary: #1a1a1a;--color-text-secondary: #666666;--color-text-tertiary: #999999;--color-border: #e0e0e0;--color-border-hover: #d0d0d0;--color-primary: #000000;--color-primary-hover: #1565c0;--color-primary-light: #e3f2fd;--color-success: #2e7d32;--color-success-bg: #e8f5e9;--color-success-border: #c8e6c9;--color-error: #d32f2f;--color-error-bg: #ffebee;--color-error-border: #ffcdd2;--color-warning: #e65100;--color-warning-bg: #fff3e0;--color-warning-border: #ffcc80;--color-on-warning: #bf360c;--color-on-warning-muted: #4e342e;--color-on-warning-outline: rgba(0, 0, 0, .28);--color-on-warning-dismiss-hover-bg: rgba(0, 0, 0, .06);--color-button-primary-text: #ffffff;--color-button-secondary-bg: #f5f5f5;--color-button-secondary-hover: #e0e0e0;--color-button-secondary-text: #333333;--color-button-secondary-border: #cccccc;--color-disabled-bg: #f5f5f5;--color-disabled-text: #999999;--color-focus: #0066cc;--app-header-logo-fill: var(--color-text-primary);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .1);--shadow-md: 0 4px 8px rgba(0, 0, 0, .15);--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--font-size-xs: .8125rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.1rem;--font-size-xl: 1.2rem;--font-size-2xl: 1.25rem;--font-size-3xl: 1.5rem;--font-size-4xl: 2.5rem;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: .75rem;--spacing-lg: 1rem;--spacing-xl: 1.25rem;--spacing-2xl: 1.5rem;--spacing-3xl: 2rem;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-full: 16px;--transition-fast: .1s ease;--transition-base: .2s ease;--z-index-base: 1;--z-index-indicator: 999;--z-index-modal: 1000}:root[data-theme=dark]{--color-background: #1e1e1e;--color-surface: #1e1e1e;--color-surface-hover: #2a2a2a;--color-text-primary: #e0e0e0;--color-text-secondary: #b0b0b0;--color-text-tertiary: #808080;--color-border: #333333;--color-border-hover: #404040;--color-primary: #42a5f5;--color-primary-hover: #64b5f6;--color-primary-light: #1e3a5f;--color-success: #66bb6a;--color-success-bg: #1b5e20;--color-success-border: #2e7d32;--color-error: #ef5350;--color-error-bg: #b71c1c;--color-error-border: #c62828;--color-warning: #ff9800;--color-warning-bg: #e65100;--color-warning-border: #ff9800;--color-on-warning: #ffffff;--color-on-warning-muted: #f5f5f5;--color-on-warning-outline: rgba(255, 255, 255, .72);--color-on-warning-dismiss-hover-bg: rgba(255, 255, 255, .14);--color-button-primary-text: #000000;--color-button-secondary-bg: #2a2a2a;--color-button-secondary-hover: #333333;--color-button-secondary-text: #e0e0e0;--color-button-secondary-border: #404040;--color-disabled-bg: #2a2a2a;--color-disabled-text: #666666;--color-focus: #42a5f5;--app-header-logo-fill: var(--color-text-primary);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .3);--shadow-md: 0 4px 8px rgba(0, 0, 0, .4)}*{margin:0;padding:0;box-sizing:border-box}*:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}body{font-family:var(--font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--color-background);color:var(--color-text-primary)}:root[data-theme=light] body{-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto}#root{width:100%;min-height:100vh}.app{min-height:100vh;display:flex;flex-direction:column}.app-loading,.app-error{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;padding:var(--spacing-lg)}.app-loading p,.app-header p{margin:0;font-size:var(--font-size-xl);color:var(--color-text-secondary)}.app-error .error{color:var(--color-error);padding:var(--spacing-lg);background-color:var(--color-error-bg);border:1px solid var(--color-error-border);border-radius:var(--radius-sm)}.app-main{width:100%;display:flex;flex-direction:column;padding:0 var(--spacing-lg);flex:1}@media(min-width:768px){.app-main{padding:0 var(--spacing-3xl)}}.habit-list-container{width:100%;max-width:100%}.stacking-habits-selector{margin-bottom:var(--spacing-lg)}.stacking-habits-selector__label{display:block;margin-bottom:var(--spacing-sm);font-size:var(--font-size-base);font-weight:500;color:var(--color-text-primary)}.stacking-habits-selector__combobox{position:relative}.stacking-habits-selector__input-row{display:flex;align-items:center;gap:var(--spacing-sm)}.stacking-habits-selector__input-row .stacking-habits-selector__input{flex:1;min-width:0}.stacking-habits-selector__add-btn{flex-shrink:0;padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-size-base);font-family:inherit;font-weight:500;color:var(--color-text-primary);background-color:var(--color-border-hover, rgba(0, 0, 0, .06));border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;transition:border-color var(--transition-base),background-color var(--transition-base)}.stacking-habits-selector__add-btn:hover:not(:disabled){background-color:var(--color-border)}.stacking-habits-selector__add-btn:disabled{opacity:.6;cursor:not-allowed}.stacking-habits-selector__input{width:100%;padding:var(--spacing-md);font-size:var(--font-size-base);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:inherit;background-color:var(--color-surface);color:var(--color-text-primary);transition:border-color var(--transition-base)}.stacking-habits-selector__input:focus{outline:2px solid var(--color-focus);outline-offset:2px;border-color:var(--color-focus)}.stacking-habits-selector__input:disabled{opacity:.6;cursor:not-allowed}.stacking-habits-selector__listbox{position:absolute;top:100%;left:0;right:0;margin:0;padding:var(--spacing-xs);list-style:none;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);max-height:200px;overflow-y:auto;z-index:var(--z-index-dropdown, 10)}.stacking-habits-selector__option{padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;border-radius:var(--radius-sm)}.stacking-habits-selector__option:hover,.stacking-habits-selector__option--highlighted{background:var(--color-border-hover, rgba(0, 0, 0, .06))}.stacking-habits-selector__empty{position:absolute;top:100%;left:0;right:0;margin:0;padding:var(--spacing-md);font-size:var(--font-size-sm);color:var(--color-text-secondary);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);z-index:var(--z-index-dropdown, 10)}.stacking-habits-selector__empty p{margin:0 0 var(--spacing-xs) 0}.stacking-habits-selector__empty p:last-child{margin-bottom:0}.stacking-habits-selector__empty-hint{font-size:var(--font-size-xs, .75rem);opacity:.9}.stacking-habits-selector__selected{margin:var(--spacing-md) 0 0;padding:0;list-style:none}.stacking-habits-selector__selected-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) 0}.stacking-habits-selector__selected-name{font-size:var(--font-size-base);color:var(--color-text-primary)}.stacking-habits-selector__remove{padding:0 var(--spacing-xs);font-size:var(--font-size-lg);line-height:1;color:var(--color-error);background:none;border:none;cursor:pointer;border-radius:var(--radius-sm)}.stacking-habits-selector__remove:hover:not(:disabled){background:var(--color-error-bg, rgba(211, 47, 47, .08))}.stacking-habits-selector__remove:disabled{opacity:.6;cursor:not-allowed}.habit-form{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-2xl);margin:var(--spacing-3xl) 0;width:100%;max-width:800px;box-shadow:var(--shadow-sm);position:relative;z-index:var(--z-index-base)}.habit-form-title{margin:0 0 var(--spacing-lg) 0;font-size:var(--font-size-2xl);font-weight:600;color:var(--color-text-primary)}.habit-form-field{margin-bottom:var(--spacing-lg)}.habit-form-label{display:block;margin-bottom:var(--spacing-sm);font-size:var(--font-size-base);font-weight:500;color:var(--color-text-primary)}.habit-form-label .required{color:var(--color-error)}.habit-form-input,.habit-form-textarea{width:100%;padding:var(--spacing-md);font-size:var(--font-size-base);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:inherit;background-color:var(--color-surface);color:var(--color-text-primary);caret-color:var(--color-text-primary);cursor:text;transition:border-color var(--transition-base)}.habit-form-input:focus,.habit-form-textarea:focus{outline:2px solid var(--color-focus);outline-offset:2px;border-color:var(--color-focus)}.habit-form-input.error{border-color:var(--color-error)}.habit-form-input:disabled,.habit-form-textarea:disabled{background-color:var(--color-disabled-bg);color:var(--color-disabled-text);cursor:not-allowed}.habit-form-textarea{resize:none;min-height:2.5rem;max-height:200px;overflow-y:hidden;line-height:1.5;overflow-x:hidden}.habit-form-hint{margin:0 0 var(--spacing-sm);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.habit-form-goaldays{border:none;padding:0;margin:0 0 var(--spacing-lg)}.habit-form-goaldays__grid{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-top:var(--spacing-sm)}.habit-form-goaldays__day{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-secondary);background-color:var(--color-surface);transition:border-color var(--transition-base),background-color var(--transition-base),color var(--transition-base);-webkit-user-select:none;user-select:none}.habit-form-goaldays__day:hover{border-color:var(--color-primary);color:var(--color-primary)}.habit-form-goaldays__day:focus-within{outline:2px solid var(--color-focus);outline-offset:2px}.habit-form-goaldays__day--checked{border-color:var(--color-primary);background-color:var(--color-primary-light);color:var(--color-primary)}.habit-form-goaldays__checkbox{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.habit-form-error{display:block;margin-top:var(--spacing-sm);color:var(--color-error);font-size:var(--font-size-sm)}.habit-form-message{padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-sm);margin-bottom:var(--spacing-lg);font-size:var(--font-size-base)}.habit-form-error-message{background-color:var(--color-error-bg);color:var(--color-error);border:1px solid var(--color-error-border)}.habit-form-success-message{background-color:var(--color-success-bg);color:var(--color-success);border:1px solid var(--color-success-border)}.habit-form-actions{display:flex;gap:var(--spacing-md);margin-top:var(--spacing-xl);align-items:center}.habit-form-button{padding:var(--spacing-sm) var(--spacing-xl);font-size:var(--font-size-base);font-weight:500;border:none;border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--transition-base),transform var(--transition-fast);white-space:nowrap}.habit-form-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.habit-form-button:not(:disabled):hover{transform:translateY(-1px)}.habit-form-button:not(:disabled):active{transform:translateY(0)}.habit-form-button-primary{background-color:var(--color-primary);color:var(--color-button-primary-text);font-weight:700}.habit-form-button-primary:not(:disabled):hover{background-color:var(--color-primary-hover)}.habit-form-button-secondary{background-color:var(--color-button-secondary-bg);color:var(--color-button-secondary-text);border:1px solid var(--color-button-secondary-border)}.habit-form-button-secondary:not(:disabled):hover{background-color:var(--color-button-secondary-hover)}@media(max-width:600px){.habit-form{padding:var(--spacing-lg);margin:var(--spacing-lg) 0}.habit-form-title{font-size:var(--font-size-xl)}.habit-form-actions{flex-direction:column;align-items:stretch}.habit-form-button{width:100%}}.modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:var(--z-index-modal);padding:var(--spacing-lg)}.modal{background-color:var(--color-surface);border-radius:var(--radius-lg);padding:var(--spacing-2xl);max-width:500px;width:100%;box-shadow:var(--shadow-md);position:relative;animation:modalFadeIn var(--transition-base)}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal-title{margin:0 0 var(--spacing-lg) 0;font-size:var(--font-size-2xl);font-weight:600;color:var(--color-text-primary)}.modal-content{color:var(--color-text-primary)}@media(max-width:600px){.modal{padding:var(--spacing-xl);margin:var(--spacing-lg)}}.confirmation-modal-message{margin:0 0 var(--spacing-2xl) 0;font-size:var(--font-size-base);color:var(--color-text-secondary);line-height:1.5}.confirmation-modal-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end}.confirmation-modal-button{padding:var(--spacing-sm) var(--spacing-xl);font-size:var(--font-size-base);font-weight:500;border-radius:var(--radius-sm);border:1px solid transparent;cursor:pointer;transition:background-color var(--transition-base),color var(--transition-base),border-color var(--transition-base);white-space:nowrap}.confirmation-modal-button:disabled{opacity:.6;cursor:not-allowed}.confirmation-modal-button-primary{background-color:var(--color-primary);color:var(--color-button-primary-text);border-color:var(--color-primary);font-weight:700}.confirmation-modal-button-primary:hover:not(:disabled){background-color:var(--color-primary-hover)}.confirmation-modal-button-alert{background-color:var(--color-error);color:var(--color-button-primary-text);border-color:var(--color-error);font-weight:700}.confirmation-modal-button-alert:hover:not(:disabled){background-color:var(--color-error-bg)}.confirmation-modal-button-warning{background-color:var(--color-warning);color:var(--color-button-primary-text);border-color:var(--color-warning);font-weight:700}.confirmation-modal-button-warning:hover:not(:disabled){background-color:var(--color-warning-bg)}.confirmation-modal-button-success{background-color:var(--color-success);color:var(--color-button-primary-text);border-color:var(--color-success);font-weight:700}.confirmation-modal-button-success:hover:not(:disabled){background-color:var(--color-success-bg)}.confirmation-modal-button-secondary{background-color:var(--color-button-secondary-bg);color:var(--color-button-secondary-text);border-color:var(--color-button-secondary-border)}.confirmation-modal-button-secondary:hover:not(:disabled){background-color:var(--color-button-secondary-hover)}@media(max-width:600px){.confirmation-modal-actions{flex-direction:column-reverse}.confirmation-modal-button{width:100%}}.habit-stacking-accordion{margin-top:var(--spacing-lg);margin-bottom:var(--spacing-md)}.habit-stacking-accordion__trigger{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) 0;cursor:pointer;background:transparent;border:none;border-radius:var(--radius-sm);font-size:var(--font-size-base);color:var(--color-primary);transition:color var(--transition-base)}.habit-stacking-accordion__trigger:hover{color:var(--color-primary-hover)}.habit-stacking-accordion__trigger:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.habit-stacking-accordion__panel{overflow:hidden;max-height:0;opacity:0;pointer-events:none;transition:max-height .25s ease-out,opacity .2s ease-out}.habit-stacking-accordion__panel--open{max-height:2000px;opacity:1;pointer-events:auto}.habit-stacking-accordion__heading{margin:0 0 var(--spacing-md);font-size:var(--font-size-lg);font-weight:600;color:var(--color-text-primary)}.habit-stacking-accordion__list{list-style:none;padding:0;margin:0}.habit-stacking-accordion__item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) 0}.habit-stacking-accordion__remove{display:inline-flex;align-items:center;justify-content:center;margin-left:var(--spacing-sm);padding:0 var(--spacing-xs);line-height:0;color:var(--color-error);background:none;border:none;cursor:pointer;border-radius:var(--radius-sm);-webkit-appearance:none;-moz-appearance:none;appearance:none}.habit-stacking-accordion__remove-icon{flex-shrink:0;color:inherit;stroke:currentColor;fill:none}.habit-stacking-accordion__remove:hover{opacity:.85}.habit-stacking-accordion__remove:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.habit-stacking-accordion__item input[type=checkbox]{width:1.125rem;height:1.125rem;accent-color:var(--color-primary);cursor:pointer}.habit-stacking-accordion__item input[type=checkbox]:disabled{opacity:.5;cursor:not-allowed}.habit-stacking-accordion__item label{font-size:var(--font-size-base);color:var(--color-text-primary);cursor:pointer}.habit-stacking-accordion__item input[type=checkbox]:disabled+label{cursor:not-allowed;color:var(--color-text-secondary)}@media(max-width:600px){.habit-stacking-accordion{margin-top:var(--spacing-md)}.habit-stacking-accordion__trigger{padding:var(--spacing-md) 0}}.streak-badge{padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:500;white-space:nowrap;transition:transform var(--transition-base),opacity var(--transition-base)}.streak-badge-simple{background-color:var(--color-primary-light);color:var(--color-primary);border:1px solid var(--color-primary)}.streak-badge-colorful{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-success) 100%);color:var(--color-button-primary-text);border:1px solid transparent;box-shadow:var(--shadow-sm)}.streak-badge-animated{animation:streakHighlight .6s ease-out}@media(prefers-reduced-motion:reduce){.streak-badge-animated{animation:none}}@keyframes streakHighlight{0%{opacity:0;transform:scale(.8)}50%{transform:scale(1.1)}to{opacity:1;transform:scale(1)}}@media(max-width:600px){.streak-badge{font-size:var(--font-size-xs);padding:var(--spacing-xs) var(--spacing-sm)}}.goal-badge{padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:500;white-space:nowrap;background-color:var(--color-success-bg);color:var(--color-success);border:1px solid var(--color-success-border)}@media(max-width:600px){.goal-badge{font-size:var(--font-size-xs);padding:var(--spacing-xs) var(--spacing-sm)}}.habit-list-wrapper{position:relative;width:100%;max-width:600px}.habit-list__sr-announcement{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.habit-list{list-style:none;padding:0;margin:var(--spacing-3xl) 0;width:100%;max-width:600px}.habit-list>.empty-state{text-align:center;padding:var(--spacing-3xl);color:var(--color-text-secondary);font-size:var(--font-size-lg)}.habit-list>.error{color:var(--color-error);padding:var(--spacing-lg);background-color:var(--color-error-bg);border-radius:var(--radius-sm);margin:var(--spacing-lg) 0}.habit-item{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-2xl);margin-bottom:var(--spacing-lg);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-base),border-color var(--transition-base)}.habit-item:hover{box-shadow:var(--shadow-md);border-color:var(--color-border-hover)}.habit-header{display:flex;justify-content:flex-start;align-items:flex-start;margin-bottom:var(--spacing-md);flex-wrap:wrap;gap:var(--spacing-sm)}.habit-header--with-handle{align-items:center}.habit-drag-handle{flex-shrink:0;display:flex;align-items:center;justify-content:center;padding:var(--spacing-sm);margin:calc(-1 * var(--spacing-sm)) var(--spacing-sm) calc(-1 * var(--spacing-sm)) calc(-1 * var(--spacing-sm));border:none;background:transparent;color:var(--color-text-secondary);cursor:grab;border-radius:var(--radius-sm);touch-action:none}.habit-drag-handle:hover{color:var(--color-text-primary);background-color:var(--color-border-hover, rgba(0, 0, 0, .04))}.habit-drag-handle:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.habit-drag-handle:active{cursor:grabbing}.habit-item--dragging{box-shadow:var(--shadow-md)}.habit-name{margin:0;font-size:var(--font-size-3xl);font-weight:600;color:var(--color-text-primary);flex:1;min-width:200px}.completion-badge{padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:500;white-space:nowrap}.completion-badge.completed{background-color:var(--color-success-bg);color:var(--color-success)}.completion-badge.not-completed{background-color:var(--color-warning-bg);color:var(--color-warning)}.completion-toggle{padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;border:none;transition:background-color var(--transition-base),color var(--transition-base);white-space:nowrap}.completion-toggle.completed{background-color:var(--color-primary);color:var(--color-button-primary-text);font-weight:700}.completion-toggle.completed:hover{background-color:var(--color-primary-hover)}.completion-toggle.not-completed{background-color:var(--color-text-primary);color:var(--color-surface)}.completion-toggle.not-completed:hover{background-color:var(--color-text-secondary)}.completion-toggle:disabled{opacity:.6;cursor:not-allowed}.habit-description{margin:var(--spacing-sm) 0;color:var(--color-text-secondary);font-size:var(--font-size-base);line-height:1.5}.habit-actions{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:var(--spacing-md);margin-top:var(--spacing-lg);flex-wrap:wrap}.habit-edit-button{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-sm);font-weight:500;color:var(--color-primary);background-color:transparent;border:1px solid var(--color-primary);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--transition-base),color var(--transition-base);white-space:nowrap}.habit-edit-button:hover{background-color:var(--color-primary);color:var(--color-button-primary-text);font-weight:700}.habit-archive-button{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-sm);font-weight:500;color:var(--color-warning);background-color:transparent;border:1px solid var(--color-warning);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--transition-base),color var(--transition-base);white-space:nowrap}.habit-archive-button:hover:not(:disabled){background-color:var(--color-warning);color:var(--color-button-primary-text);font-weight:700}.habit-archive-button:disabled{opacity:.6;cursor:not-allowed}@media(max-width:600px){.habit-list{margin:var(--spacing-lg) 0}.habit-item{padding:var(--spacing-lg)}.habit-header{flex-direction:column;align-items:flex-start}.habit-name{font-size:var(--font-size-2xl);min-width:unset}.completion-badge{font-size:var(--font-size-xs);padding:var(--spacing-xs) var(--spacing-sm)}.completion-toggle{font-size:var(--font-size-sm);padding:var(--spacing-xs) var(--spacing-md)}.habit-actions{gap:var(--spacing-sm);margin-top:var(--spacing-md)}}@media(min-width:768px){.habit-list-wrapper{max-width:none}.habit-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));max-width:none;width:100%;gap:var(--spacing-lg);align-items:stretch}.habit-list>p{grid-column:1 / -1}.habit-item{margin-bottom:0;display:flex;flex-direction:column}.habit-item .habit-actions{margin-top:auto}}.annual-calendar{width:100%;margin:var(--spacing-lg) 0;padding:0;overflow:hidden}@media(min-width:1200px){.annual-calendar{max-width:800px;margin-left:auto;margin-right:auto}}.annual-calendar-grid{display:flex;flex-direction:column;gap:3px;width:100%;max-width:100%;align-items:flex-start}.annual-calendar-day-row{display:flex;gap:3px;width:100%;flex-wrap:nowrap;align-items:flex-start}.annual-calendar-day{flex:0 0 calc((100% - (52 * 3px)) / 53);max-width:11px;height:11px;border-radius:2px;background-color:#ebedf0;border:1px solid rgba(27,31,35,.06);cursor:pointer;transition:all .15s ease;aspect-ratio:1;flex-shrink:0}.annual-calendar-day:hover{border-color:#1b1f2333;transform:scale(1.1)}.annual-calendar-day.completed{background-color:#40c463;border-color:transparent}.annual-calendar-day.today{border:2px solid #0969da;box-sizing:border-box;position:relative}.annual-calendar-day.today.completed{background-color:#40c463;border-color:#0969da}.annual-calendar-day.other-year{opacity:.2}:root[data-theme=dark] .annual-calendar-day{background-color:#21262d;border-color:#f0f6fc1a}:root[data-theme=dark] .annual-calendar-day.completed{background-color:#26a641;border-color:transparent}:root[data-theme=dark] .annual-calendar-day.completed:hover{background-color:#39d353}:root[data-theme=dark] .annual-calendar-day.today{border-color:#58a6ff}:root[data-theme=dark] .annual-calendar-day.today.completed{background-color:#26a641;border-color:#58a6ff}@media(max-width:1200px){.annual-calendar-day{max-width:10px;height:10px;flex:0 0 calc((100% - (52 * 3px)) / 53)}}@media(max-width:900px){.annual-calendar{overflow-x:auto;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;overflow-y:hidden}.annual-calendar-day-row{min-width:max-content}.annual-calendar-day{max-width:9px;height:9px;flex:0 0 9px;min-width:9px}.annual-calendar-grid,.annual-calendar-day-row{gap:2px}}@media(max-width:600px){.annual-calendar-day{max-width:8px;height:8px;flex:0 0 8px;min-width:8px}.annual-calendar-grid,.annual-calendar-day-row{gap:2px}}@media(max-width:400px){.annual-calendar-day{max-width:7px;height:7px;flex:0 0 7px;min-width:7px}.annual-calendar-grid,.annual-calendar-day-row{gap:1px}}.offline-indicator{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-error);color:var(--color-button-primary-text);border:1px solid var(--color-error-border);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:700;position:fixed;top:calc(var(--spacing-md) + env(safe-area-inset-top));right:calc(var(--spacing-md) + env(safe-area-inset-right));z-index:var(--z-index-indicator);box-shadow:var(--shadow-md);transition:opacity var(--transition-base),transform var(--transition-base);animation:slideDown var(--transition-base) ease-out}.offline-indicator__icon{width:1.125rem;height:1.125rem;flex-shrink:0;color:var(--color-button-primary-text);stroke-width:2.5}.offline-indicator__badge{white-space:nowrap}@keyframes slideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}@media(max-width:600px){.offline-indicator{font-size:var(--font-size-xs);padding:var(--spacing-xs) var(--spacing-sm);top:calc(var(--spacing-sm) + env(safe-area-inset-top));right:calc(var(--spacing-sm) + env(safe-area-inset-right))}.offline-indicator__icon{width:1rem;height:1rem}}.install-prompt{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);background-color:var(--color-primary);color:var(--color-button-primary-text);border:none;border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-sm);font-weight:700;font-family:var(--font-family);transition:background-color var(--transition-base),box-shadow var(--transition-base);box-shadow:var(--shadow-sm)}.install-prompt:hover{background-color:var(--color-primary-hover);box-shadow:var(--shadow-md)}.install-prompt:active{transform:scale(.98)}.install-prompt:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.install-prompt__icon{width:1rem;height:1rem;flex-shrink:0}.install-prompt__text{white-space:nowrap}@media(max-width:768px){.install-prompt{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-xs)}.install-prompt__icon{width:.875rem;height:.875rem}}.sw-update-prompt{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);margin:var(--spacing-lg) 0;background-color:var(--color-warning-bg);color:var(--color-on-warning);border:1px solid var(--color-warning-border);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:700;position:fixed;top:calc(var(--spacing-md) + env(safe-area-inset-top));left:50%;transform:translate(-50%);z-index:var(--z-index-modal);box-shadow:var(--shadow-md);animation:sw-update-slideDown var(--transition-base) ease-out}.sw-update-prompt__icon{width:1.125rem;height:1.125rem;flex-shrink:0;stroke-width:2.5}.sw-update-prompt__message{white-space:nowrap}.sw-update-prompt__actions{display:flex;gap:var(--spacing-xs);margin-left:var(--spacing-xs)}.sw-update-prompt__reload{padding:var(--spacing-xs) var(--spacing-sm);background-color:var(--color-surface);color:var(--color-primary);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-xs);font-weight:700;font-family:var(--font-family);transition:background-color var(--transition-base),color var(--transition-base),border-color var(--transition-base);white-space:nowrap}.sw-update-prompt__reload:hover{background-color:var(--color-surface-hover);color:var(--color-primary-hover);border-color:var(--color-border-hover)}.sw-update-prompt__reload:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.sw-update-prompt__dismiss{padding:var(--spacing-xs) var(--spacing-sm);background-color:transparent;color:var(--color-on-warning-muted);border:1px solid var(--color-on-warning-outline);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-xs);font-family:var(--font-family);transition:background-color var(--transition-base),color var(--transition-base);white-space:nowrap}.sw-update-prompt__dismiss:hover{background-color:var(--color-on-warning-dismiss-hover-bg);color:var(--color-on-warning)}.sw-update-prompt__dismiss:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}@keyframes sw-update-slideDown{0%{opacity:0;transform:translate(-50%) translateY(-100%)}to{opacity:1;transform:translate(-50%) translateY(0)}}@media(prefers-reduced-motion:reduce){.sw-update-prompt{animation:none}}@media(max-width:600px){.sw-update-prompt{flex-wrap:wrap;justify-content:center;left:var(--spacing-sm);right:var(--spacing-sm);transform:none;top:calc(var(--spacing-sm) + env(safe-area-inset-top));font-size:var(--font-size-xs);padding:var(--spacing-xs) var(--spacing-sm)}.sw-update-prompt__icon{width:1rem;height:1rem}.sw-update-prompt__actions{margin-left:0}@keyframes sw-update-slideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}}.error-fallback{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-lg);background-color:var(--color-surface);gap:var(--spacing-md);outline:none}.error-fallback__message{font-size:var(--font-size-lg);color:var(--color-text-primary);text-align:center;margin:0;max-width:600px}.error-fallback__button{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-base);background-color:var(--color-primary);color:var(--color-text-on-primary);border:none;border-radius:var(--border-radius);cursor:pointer;transition:background-color .2s}.error-fallback__button:hover{background-color:var(--color-primary-hover)}.error-fallback__button:focus{outline:2px solid var(--color-primary);outline-offset:2px}.settings{width:100%;max-width:800px;margin:var(--spacing-3xl) auto;display:flex;flex-direction:column}.settings__header{display:flex;align-items:center;justify-content:space-between;padding:0 0 var(--spacing-xl);border-bottom:1px solid var(--color-border)}.settings__title{font-size:var(--font-size-3xl);font-weight:600;color:var(--color-text-primary);margin:0}.settings__close-button{display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;color:var(--color-text-secondary);padding:var(--spacing-sm);border-radius:var(--radius-md);transition:color var(--transition-fast),background-color var(--transition-fast)}.settings__close-button:hover{color:var(--color-text-primary);background-color:var(--color-surface-hover)}.settings__header--sub{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--spacing-md);padding:0 0 var(--spacing-xl)}.settings__back-button{display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;color:var(--color-text-secondary);padding:var(--spacing-sm);border-radius:var(--radius-md);transition:color var(--transition-fast),background-color var(--transition-fast)}.settings__back-button:hover{color:var(--color-text-primary);background-color:var(--color-surface-hover)}.settings__title--sub{margin:0;text-align:center;font-size:var(--font-size-2xl);font-weight:600;color:var(--color-text-primary)}.settings__changelog-scroll{flex:1;overflow-y:auto;min-height:0;padding:var(--spacing-lg) 0}.settings__changelog-panel{max-width:42rem;margin:0 auto}.settings__changelog-status,.settings__changelog-error{font-size:var(--font-size-base);color:var(--color-text-secondary);margin:0 0 var(--spacing-md)}.settings__changelog-error{color:var(--color-text-primary)}.settings__changelog-retry{font-family:var(--font-family);font-size:var(--font-size-base);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);border:1px solid var(--color-border);background-color:var(--color-background);color:var(--color-text-primary);cursor:pointer}.settings__changelog-retry:hover{background-color:var(--color-surface-hover)}.settings__changelog-section{margin-bottom:var(--spacing-xl)}.settings__changelog-h2{font-size:var(--font-size-lg);font-weight:600;color:var(--color-text-primary);margin:0 0 var(--spacing-sm)}.settings__changelog-prose{font-family:var(--font-family);font-size:var(--font-size-sm);line-height:1.55;color:var(--color-text-primary)}.settings__changelog-prose-h1{font-size:var(--font-size-2xl);font-weight:600;margin:0 0 var(--spacing-md);color:var(--color-text-primary)}.settings__changelog-prose h2:not(.settings__changelog-prose-h1){font-size:var(--font-size-lg);font-weight:600;margin:var(--spacing-lg) 0 var(--spacing-sm);color:var(--color-text-primary)}.settings__changelog-prose h2:not(.settings__changelog-prose-h1):first-child{margin-top:0}.settings__changelog-prose h3{font-size:var(--font-size-base);font-weight:600;margin:var(--spacing-lg) 0 var(--spacing-sm);color:var(--color-text-primary)}.settings__changelog-prose p{margin:0 0 var(--spacing-md);color:var(--color-text-primary)}.settings__changelog-prose a{color:var(--color-primary);text-decoration:underline;text-underline-offset:2px}.settings__changelog-prose a:hover{color:var(--color-primary-hover)}.settings__changelog-prose a:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.settings__changelog-prose ul,.settings__changelog-prose ol{margin:0 0 var(--spacing-md);padding-left:var(--spacing-2xl);color:var(--color-text-primary)}.settings__changelog-prose li{margin-bottom:var(--spacing-xs)}.settings__changelog-prose li:last-child{margin-bottom:0}.settings__changelog-prose code{font-family:ui-monospace,Cascadia Code,Source Code Pro,Menlo,Consolas,monospace;font-size:.9em;padding:.125rem .375rem;border-radius:var(--radius-sm);background-color:var(--color-surface-hover);border:1px solid var(--color-border);color:var(--color-text-primary)}.settings__changelog-prose>:last-child{margin-bottom:0}.settings__changelog-link-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}.settings__nav{flex:1;overflow-y:auto;padding:var(--spacing-lg) 0}.settings__list{list-style:none;padding:0;margin:0}.settings__theme-row{padding:var(--spacing-lg) 0;border-bottom:1px solid var(--color-border)}.settings__theme-fieldset{border:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--spacing-sm)}.settings__theme-legend{font-size:var(--font-size-base);font-weight:500;color:var(--color-text-primary);padding:0;margin-bottom:var(--spacing-sm)}.settings__theme-options{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.settings__theme-option{flex:1 1 0;min-width:6rem;display:flex;align-items:center;justify-content:center;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-background);color:var(--color-text-primary);cursor:pointer;transition:background-color var(--transition-fast),border-color var(--transition-fast)}.settings__theme-option:hover{background-color:var(--color-surface-hover);border-color:var(--color-border-hover)}.settings__theme-option--selected{border-color:var(--color-text-primary);background-color:var(--color-surface-hover)}.settings__theme-option:focus-within{outline:2px solid var(--color-focus);outline-offset:2px}.settings__theme-radio{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.settings__theme-option-label{font-size:var(--font-size-base)}.settings__language-row{display:flex;flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-lg) 0;border-bottom:1px solid var(--color-border)}.settings__language-label{font-size:var(--font-size-base);font-weight:500;color:var(--color-text-primary)}.settings__language-select{font-family:var(--font-family);font-size:var(--font-size-base);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);border:1px solid var(--color-border);background-color:var(--color-background);color:var(--color-text-primary);max-width:100%}.settings__item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--spacing-lg) 0;background:none;border:none;border-bottom:1px solid var(--color-border);cursor:pointer;transition:background-color var(--transition-fast);text-align:left;font-family:var(--font-family)}.settings__item:hover{background-color:var(--color-surface-hover)}.settings__item-label{font-size:var(--font-size-base);color:var(--color-text-primary)}.settings__item-icon{color:var(--color-text-tertiary)}@media(max-width:600px){.settings{margin:var(--spacing-lg) auto}.settings__title{font-size:var(--font-size-2xl)}}.app-header{width:100%;display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg) var(--spacing-2xl);padding-top:calc(var(--spacing-lg) + env(safe-area-inset-top));border-bottom:1px solid var(--color-border);background-color:#0006;position:sticky;top:0;z-index:var(--z-index-indicator);-webkit-backdrop-filter:saturate(1.8) blur(24px);backdrop-filter:saturate(1.8) blur(24px)}:root[data-theme=light] .app-header{background-color:#fff6}.app-header__menu-button{display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;background:none;border:none;border-radius:var(--radius-md);cursor:pointer;color:var(--color-text-primary);transition:background-color var(--transition-fast);flex-shrink:0}.app-header__menu-button:hover{background-color:var(--color-surface-hover)}.app-header__actions{flex-shrink:0}.app-header__logo{padding:0;font-size:inherit;font-weight:400;line-height:0;flex:1;min-width:0}.app-header__logo-link{position:relative;display:inline-flex;align-items:center;gap:0;text-decoration:none;color:inherit;border-radius:var(--radius-md);max-width:100%;transition:background-color var(--transition-fast);padding:var(--spacing-xs) var(--spacing-sm);margin:calc(-1 * var(--spacing-xs)) calc(-1 * var(--spacing-sm))}.app-header__logo-link:hover{background-color:var(--color-surface-hover)}.app-header__logo-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-header__logo-mark{display:block;width:200px;height:50px;max-width:100%;flex-shrink:0;background-color:var(--app-header-logo-fill, var(--color-text-primary));-webkit-mask-image:url(/logo.png);mask-image:url(/logo.png);-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center}@media(max-width:600px){.app-header{padding:var(--spacing-md) var(--spacing-lg);padding-top:calc(var(--spacing-md) + env(safe-area-inset-top))}.app-header__menu-button{width:40px;height:40px}}.side-menu__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0000004d;z-index:999}.side-menu{position:fixed;top:0;left:0;bottom:0;width:280px;max-width:calc(100vw - 56px);background-color:var(--color-background);border-right:1px solid var(--color-border);z-index:1000;transform:translate(-100%);transition:transform .25s ease;display:flex;flex-direction:column;padding-top:calc(var(--spacing-3xl) + env(safe-area-inset-top));padding-left:env(safe-area-inset-left)}.side-menu--open{transform:translate(0)}.side-menu__list{list-style:none;padding:0;margin:0}.side-menu__item{display:flex;align-items:center;gap:var(--spacing-lg);width:100%;padding:var(--spacing-lg) var(--spacing-2xl);background:none;border:none;border-bottom:1px solid var(--color-border);cursor:pointer;transition:background-color var(--transition-fast);text-align:left;font-family:var(--font-family);font-size:var(--font-size-base);color:var(--color-text-primary)}.side-menu__item:hover{background-color:var(--color-surface-hover)}.side-menu__item--active{background-color:var(--color-primary-light);color:var(--color-primary)}.side-menu__item--active:hover{background-color:var(--color-primary-light)}.side-menu__item-icon{flex-shrink:0;color:inherit}.side-menu__item-label{font-weight:500}:root[data-theme=dark] .side-menu__backdrop{background-color:#00000080}@media(max-width:600px){.side-menu{width:280px}.side-menu__item{padding:var(--spacing-lg)}}@media(prefers-reduced-motion:reduce){.side-menu{transition:none}}.habit-stats-card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-2xl);margin-bottom:var(--spacing-lg);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-base),border-color var(--transition-base);display:flex;flex-direction:column}.habit-stats-card>:last-child{margin-top:auto}.habit-stats-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-border-hover)}.habit-stats-card__name{margin:0 0 var(--spacing-lg);font-size:var(--font-size-3xl);font-weight:600;color:var(--color-text-primary)}.habit-stats-card__grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.habit-stats-card__stat{display:flex;flex-direction:column;gap:var(--spacing-xs)}.habit-stats-card__stat-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:500}.habit-stats-card__stat-value{font-size:var(--font-size-xl);font-weight:600;color:var(--color-text-primary)}.habit-stats-card__goal{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-bottom:var(--spacing-lg)}.habit-stats-card__progress-bar{width:100%;height:8px;background-color:var(--color-border);border-radius:4px;overflow:hidden;margin-top:var(--spacing-xs)}.habit-stats-card__progress-fill{height:100%;border-radius:4px;background-color:var(--color-primary);transition:width .3s ease;min-width:0}@media(max-width:600px){.habit-stats-card{padding:var(--spacing-lg)}.habit-stats-card__grid{grid-template-columns:1fr;gap:var(--spacing-md)}.habit-stats-card__name{font-size:var(--font-size-2xl)}.habit-stats-card__stat-value{font-size:var(--font-size-lg)}}.statistics-view{width:100%;max-width:800px;margin:var(--spacing-3xl) auto;padding:0}.statistics-view__title{font-size:var(--font-size-3xl);font-weight:600;color:var(--color-text-primary);margin:0 0 var(--spacing-2xl)}.statistics-view__empty{text-align:center;padding:var(--spacing-3xl);color:var(--color-text-secondary);font-size:var(--font-size-lg)}@media(max-width:600px){.statistics-view{margin:var(--spacing-lg) auto}.statistics-view__title{font-size:var(--font-size-2xl)}}@media(min-width:768px){.statistics-view{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));max-width:none;width:100%;margin:var(--spacing-3xl) 0;gap:var(--spacing-lg);align-items:stretch}.statistics-view__title,.statistics-view__empty{grid-column:1 / -1}.statistics-view .habit-stats-card{margin-bottom:0}}.archived-habits-view{width:100%;max-width:800px;margin:var(--spacing-3xl) auto;padding:0}.archived-habits-view__title{font-size:var(--font-size-3xl);font-weight:600;color:var(--color-text-primary);margin:0 0 var(--spacing-2xl)}.archived-habits-view__empty{text-align:center;padding:var(--spacing-3xl);color:var(--color-text-secondary);font-size:var(--font-size-lg)}.archived-habits-view__list{list-style:none;padding:0;margin:0}.archived-habits-view__item{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-2xl);margin-bottom:var(--spacing-lg);box-shadow:var(--shadow-sm)}.archived-habits-view__name{margin:0;font-size:var(--font-size-2xl);font-weight:600;color:var(--color-text-primary)}.archived-habits-view__description{margin:var(--spacing-sm) 0 0;color:var(--color-text-secondary);font-size:var(--font-size-base);line-height:1.5}.archived-habits-view__date{margin:var(--spacing-sm) 0 0;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.archived-habits-view__actions{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:var(--spacing-md);margin-top:var(--spacing-lg);flex-wrap:wrap}.archived-habits-view__restore-button{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-sm);font-weight:500;color:var(--color-primary);background-color:transparent;border:1px solid var(--color-primary);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--transition-base),color var(--transition-base);white-space:nowrap}.archived-habits-view__restore-button:hover:not(:disabled){background-color:var(--color-primary);color:var(--color-button-primary-text);font-weight:700}.archived-habits-view__restore-button:disabled{opacity:.6;cursor:not-allowed}.archived-habits-view__delete-button{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-sm);font-weight:500;color:var(--color-error);background-color:transparent;border:1px solid var(--color-error);border-radius:var(--radius-sm);cursor:pointer;transition:background-color var(--transition-base),color var(--transition-base);white-space:nowrap}.archived-habits-view__delete-button:hover:not(:disabled){background-color:var(--color-error);color:var(--color-button-primary-text);font-weight:700}.archived-habits-view__delete-button:disabled{opacity:.6;cursor:not-allowed}@media(max-width:600px){.archived-habits-view{margin:var(--spacing-lg) auto}.archived-habits-view__title{font-size:var(--font-size-2xl)}.archived-habits-view__item{padding:var(--spacing-lg)}.archived-habits-view__actions{gap:var(--spacing-sm);margin-top:var(--spacing-md)}}@media(min-width:768px){.archived-habits-view{max-width:none;width:100%;margin:var(--spacing-3xl) 0}.archived-habits-view__list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-lg);align-items:start}.archived-habits-view__item{margin-bottom:0}}
