button{appearance:none;-webkit-appearance:none;-moz-appearance:none;background:none;border:none;color:inherit;cursor:pointer;font-family:inherit;font-size:inherit;line-height:inherit;margin:0;outline:none;padding:0;text-align:inherit}button:disabled{cursor:not-allowed}input{appearance:none;-webkit-appearance:none;-moz-appearance:none;background:none;border:none;color:inherit;font-family:inherit;font-size:inherit;line-height:inherit;margin:0;outline:none;padding:0}*{box-sizing:border-box}body,html{margin:0;padding:0}:focus{outline:none}:focus-visible{outline:2px solid #26527e;outline:2px solid var(--color-border-focused,#26527e);outline-offset:2px}ol,ul{list-style:none;margin:0;padding:0}a{color:inherit;text-decoration:none}h1,h2,h3,h4,h5,h6,p{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}fieldset{border:none;margin:0}fieldset,legend{padding:0}img{display:block;height:auto;max-width:100%}::selection{background:#328adb;background:var(--color-state-selected,#328adb);color:#fff;color:var(--color-text-on-dark-default,#fff)}:root{--spacing-4px:4px;--spacing-6px:6px;--spacing-8px:8px;--spacing-12px:12px;--spacing-16px:16px;--spacing-24px:24px;--spacing-32px:32px;--spacing-40px:40px;--black-alpha-50:#25292f0a;--black-alpha-100:#25292f0f;--black-alpha-200:#25292f14;--black-alpha-300:#25292f29;--black-alpha-400:#25292f3d;--black-alpha-500:#25292f5c;--black-alpha-600:#25292f7a;--black-alpha-700:#25292fa3;--black-alpha-800:#25292fcc;--black-alpha-900:#25292feb;--white-alpha-50:#ffffff0a;--white-alpha-100:#ffffff0f;--white-alpha-200:#ffffff14;--white-alpha-300:#ffffff29;--white-alpha-400:#ffffff3d;--white-alpha-500:#ffffff5c;--white-alpha-600:#ffffff7a;--white-alpha-700:#ffffffa3;--white-alpha-800:#fffc;--white-alpha-900:#ffffffeb;--mono-0:#fff;--mono-50:#f4f5f6;--mono-100:#e9ebee;--mono-200:#d7dbe0;--mono-300:#c1c8d0;--mono-400:#a1acb8;--mono-500:#8c9aa8;--mono-600:#7b8896;--mono-700:#606a75;--mono-800:#48515a;--mono-900:#373e45;--mono-1000:#25292f;--red-50:#fdf2f1;--red-100:#fce5e4;--red-200:#facfcc;--red-300:#f8b3af;--red-400:#f78481;--red-500:#f65d61;--red-600:#ea3b47;--red-700:#b4353b;--red-800:#872c2e;--red-900:#642627;--red-1000:#411c1c;--yellow-50:#fbf4e7;--yellow-100:#fce9c6;--yellow-200:#fad690;--yellow-300:#f6bd42;--yellow-400:#d8a534;--yellow-500:#c5962c;--yellow-600:#b08833;--yellow-700:#876a2d;--yellow-800:#675227;--yellow-900:#4c3d21;--yellow-1000:#451a03;--green-50:#e7fceb;--green-100:#cefcd9;--green-200:#9afbb5;--green-300:#4ff48e;--green-400:#3ed478;--green-500:#35c26c;--green-600:#3cae66;--green-700:#348450;--green-800:#2d663f;--green-900:#274c32;--green-1000:#1c3122;--blue-50:#eff6fd;--blue-100:#dfedfc;--blue-200:#c4defa;--blue-300:#a2ccf8;--blue-400:#6ab0f6;--blue-500:#3d9df5;--blue-600:#328adb;--blue-700:#2d6ca8;--blue-800:#26527e;--blue-900:#213f5d;--blue-1000:#192a3c;--color-bg-app:var(--mono-50);--color-bg-overlay:var(--black-alpha-800);--color-surface-default:var(--mono-0);--color-surface-default-alpha:var(--white-alpha-900);--color-surface-light:var(--black-alpha-50);--color-surface-middle:var(--black-alpha-400);--color-surface-dark:var(--black-alpha-900);--color-surface-primary:var(--blue-600);--color-surface-success:var(--green-500);--color-surface-success-light:var(--green-50);--color-surface-alert:var(--red-500);--color-surface-alert-light:var(--red-50);--color-surface-caution:var(--yellow-300);--color-surface-caution-light:var(--yellow-50);--color-state-normal-hover:var(--black-alpha-100);--color-state-normal-pressed:var(--black-alpha-200);--color-state-on-dark-hover:var(--white-alpha-300);--color-state-on-dark-pressed:var(--white-alpha-400);--color-state-selected:var(--blue-600);--color-text-default:var(--mono-900);--color-text-sub:var(--mono-700);--color-text-light:var(--mono-500);--color-text-weak:var(--mono-300);--color-text-disabled:var(--mono-400);--color-text-on-dark-default:var(--mono-0);--color-text-on-dark-sub:var(--white-alpha-800);--color-text-on-dark-light:var(--white-alpha-700);--color-text-on-dark-weak:var(--white-alpha-200);--color-text-primary:var(--blue-500);--color-text-error:var(--red-600);--color-object-default:var(--mono-800);--color-object-sub-text:var(--mono-600);--color-object-disabled:var(--mono-400);--color-object-on-dark-default:var(--mono-0);--color-object-error:var(--red-600);--color-object-primary:var(--blue-500);--color-border-default:var(--mono-300);--color-border-strong:var(--mono-500);--color-border-selected:var(--blue-500);--color-border-focused:var(--blue-800);--font-family-base:"Noto Sans JP",-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell",sans-serif;--font-weight-regular:400;--font-weight-medium:500;--font-weight-bold:700;--font-size-xsmall:12px;--font-size-small:14px;--font-size-medium:16px;--font-size-large:18px;--font-size-xlarge:24px;--font-size-2xlarge:32px;--letter-spacing-default:0.02em;--radius-2px:2px;--radius-4px:4px;--radius-8px:8px;--radius-16px:16px;--radius-24px:24px;--radius-full:9999px;--border-width-thin:1px;--border-width-default:2px;--border-width-bold:4px;--shadow-sm:0 1px 2px 0 var(--black-alpha-100);--shadow-base:0 1px 3px 0 var(--black-alpha-200),0 1px 2px 0 var(--black-alpha-100);--shadow-md:0 4px 6px -1px var(--black-alpha-200),0 2px 4px -1px var(--black-alpha-100);--shadow-lg:0 10px 15px -3px var(--black-alpha-200),0 4px 6px -2px var(--black-alpha-100);--shadow-xl:0 20px 25px -5px var(--black-alpha-200),0 10px 10px -5px var(--black-alpha-100);--transition-fast:150ms ease;--transition-normal:300ms ease;--transition-slow:500ms ease;--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070;--calendar-day-size:40px;--calendar-day-border-radius:var(--border-radius-sm);--calendar-day-gap:var(--spacing-1);--calendar-header-padding:var(--spacing-4);--todo-item-padding:var(--spacing-4);--todo-item-gap:var(--spacing-3);--todo-item-border-radius:var(--border-radius-base);--todo-checkbox-size:20px}@media (prefers-color-scheme:dark) and (max-width:0px){:root{--color-bg-app:var(--mono-900);--color-surface-default:var(--mono-800);--color-surface-light:var(--white-alpha-50);--color-surface-middle:var(--white-alpha-400);--color-surface-dark:var(--white-alpha-900);--color-text-default:var(--mono-0);--color-text-sub:var(--mono-300);--color-text-weak:var(--mono-600);--color-text-disabled:var(--mono-500);--color-border-default:var(--mono-700);--color-border-strong:var(--mono-600);--color-object-default:var(--mono-0);--color-object-sub-text:var(--mono-400);--shadow-sm:0 1px 2px 0 #0000004d;--shadow-base:0 1px 3px 0 #0006,0 1px 2px 0 #0003;--shadow-md:0 4px 6px -1px #0006,0 2px 4px -1px #0003;--shadow-lg:0 10px 15px -3px #0006,0 4px 6px -2px #0003;--shadow-xl:0 20px 25px -5px #0006,0 10px 10px -5px #0003}}.text-body-large{font-weight:400;font-weight:var(--font-weight-regular)}.text-body-large,.text-body-large-bold{font-family:Noto Sans JP,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;font-family:var(--font-family-base);font-size:18px;font-size:var(--font-size-large);letter-spacing:.02em;letter-spacing:var(--letter-spacing-default);line-height:1.5}.text-body-large-bold{font-weight:500;font-weight:var(--font-weight-medium)}.text-body-medium{font-weight:400;font-weight:var(--font-weight-regular)}.text-body-medium,.text-body-medium-bold{font-family:Noto Sans JP,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;font-family:var(--font-family-base);font-size:16px;font-size:var(--font-size-medium);letter-spacing:.02em;letter-spacing:var(--letter-spacing-default);line-height:1.5}.text-body-medium-bold{font-weight:500;font-weight:var(--font-weight-medium)}.text-body-small{font-weight:400;font-weight:var(--font-weight-regular)}.text-body-small,.text-body-small-bold{font-family:Noto Sans JP,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;font-family:var(--font-family-base);font-size:14px;font-size:var(--font-size-small);letter-spacing:.02em;letter-spacing:var(--letter-spacing-default);line-height:1.5}.text-body-small-bold{font-weight:500;font-weight:var(--font-weight-medium)}.text-body-xsmall{font-weight:400;font-weight:var(--font-weight-regular)}.text-body-xsmall,.text-body-xsmall-bold{font-family:Noto Sans JP,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;font-family:var(--font-family-base);font-size:12px;font-size:var(--font-size-xsmall);letter-spacing:.02em;letter-spacing:var(--letter-spacing-default);line-height:1.4}.text-body-xsmall-bold{font-weight:500;font-weight:var(--font-weight-medium)}.text-heading-xlarge{font-family:Noto Sans JP,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;font-family:var(--font-family-base);font-size:32px;font-size:var(--font-size-2xlarge);font-weight:700;font-weight:var(--font-weight-bold);letter-spacing:.02em;letter-spacing:var(--letter-spacing-default);line-height:1.2}.text-heading-large{font-size:24px;font-size:var(--font-size-xlarge);line-height:1.3}.text-heading-large,.text-heading-medium{font-family:Noto Sans JP,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;font-family:var(--font-family-base);font-weight:500;font-weight:var(--font-weight-medium);letter-spacing:.02em;letter-spacing:var(--letter-spacing-default)}.text-heading-medium{font-size:18px;font-size:var(--font-size-large);line-height:1.4}.text-heading-small{font-size:16px;font-size:var(--font-size-medium);line-height:1.4}.text-heading-small,.text-single-xlarge{font-family:Noto Sans JP,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;font-family:var(--font-family-base);font-weight:500;font-weight:var(--font-weight-medium);letter-spacing:.02em;letter-spacing:var(--letter-spacing-default)}.text-single-xlarge{font-size:18px;font-size:var(--font-size-large);line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-single-large{font-size:16px;font-size:var(--font-size-medium)}.text-single-large,.text-single-medium{font-family:Noto Sans JP,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;font-family:var(--font-family-base);font-weight:500;font-weight:var(--font-weight-medium);letter-spacing:.02em;letter-spacing:var(--letter-spacing-default);line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-single-medium{font-size:14px;font-size:var(--font-size-small)}.text-single-small{font-family:Noto Sans JP,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;font-family:var(--font-family-base);font-size:12px;font-size:var(--font-size-xsmall);font-weight:500;font-weight:var(--font-weight-medium);letter-spacing:.02em;letter-spacing:var(--letter-spacing-default);line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-primary{color:#3d9df5;color:var(--color-text-primary)}.text-secondary{color:#606a75;color:var(--color-text-sub)}.text-muted{color:#c1c8d0;color:var(--color-text-weak)}.text-disabled{color:#a1acb8;color:var(--color-text-disabled)}.text-error{color:#ea3b47;color:var(--color-text-error)}.text-on-dark{color:#fff;color:var(--color-text-on-dark-default)}@media (max-width:768px){.text-heading-xlarge{font-size:24px;font-size:var(--font-size-xlarge);line-height:1.3}.text-heading-large{font-size:18px;font-size:var(--font-size-large)}.text-body-large,.text-body-large-bold{font-size:16px;font-size:var(--font-size-medium)}}html{-webkit-overflow-scrolling:touch}body,html{overscroll-behavior:none}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:var(--font-family-base);margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.tooltip{pointer-events:none;position:absolute;z-index:1070;z-index:var(--z-tooltip,1070)}.tooltip--top-left{bottom:56px;right:0}.tooltip--top-center{bottom:56px;left:50%;transform:translateX(-50%)}.tooltip--top-right{bottom:56px;left:0}.tooltip--bottom-left{right:0;top:56px}.tooltip--bottom-center{left:50%;top:56px;transform:translateX(-50%)}.tooltip--bottom-right{left:0;top:56px}.tooltip--left{right:56px}.tooltip--left,.tooltip--right{top:50%;transform:translateY(-50%)}.tooltip--right{left:56px}.tooltip__content{align-items:center;background:#25292feb;background:var(--color-surface-dark,#25292feb);border-radius:var(--radius-4px);box-sizing:border-box;display:flex;flex-direction:row;justify-content:center;padding:4px 8px}.tooltip__text{color:#fff;color:var(--color-text-on-dark-default,#fff);flex-shrink:0;margin:0;text-align:left;white-space:nowrap}.app-nav{box-sizing:border-box;display:flex;flex-direction:column;flex-shrink:0;gap:var(--spacing-24px);min-height:100vh;padding:var(--spacing-40px) var(--spacing-16px);width:80px}.app-nav-button{align-items:center;background:#0000;border:none;border-radius:var(--radius-8px);color:var(--color-text-on-dark-default);cursor:pointer;display:flex;justify-content:center;padding:var(--spacing-12px);position:relative;transition:background-color var(--transition-fast)}.app-nav-button:hover{background-color:var(--color-state-on-dark-hover)}.app-nav-button:active{background-color:var(--color-state-on-dark-pressed)}.app-nav-button.active{background-color:var(--white-alpha-300)}.app-nav-tooltip{background-color:var(--color-surface-dark);border-radius:var(--radius-4px);color:var(--color-text-on-dark-default);left:52px;opacity:0;padding:var(--spacing-4px) var(--spacing-8px);pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);transition:opacity var(--transition-fast)}.app-nav-button:hover .app-nav-tooltip{opacity:1}@media (max-width:768px){.app-nav{display:none}}.todo-calendar-date{align-items:flex-start;background:none;border:none;border-radius:var(--radius-8px);box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;height:100%;justify-content:flex-start;overflow:hidden;padding:0;position:relative;width:100%}.todo-calendar-date__container{background:var(--color-surface-light);box-sizing:border-box;flex:1 1;flex-direction:column;padding:0}.todo-calendar-date__container,.todo-calendar-date__state{align-items:center;border-radius:var(--radius-8px);display:flex;justify-content:center;min-height:1px;min-width:1px;position:relative;width:100%}.todo-calendar-date__state{flex:1 1;flex-direction:row}.todo-calendar-date__content{align-items:center;box-sizing:border-box;display:flex;flex-direction:row;gap:var(--spacing-4px);height:100%;justify-content:center;padding:var(--spacing-12px);position:relative;width:100%}.todo-calendar-date__text{color:var(--color-text-default);flex-shrink:0;position:relative}.todo-calendar-date__badge{border-radius:var(--radius-full);bottom:var(--spacing-4px);height:8px;pointer-events:none;position:absolute;right:var(--spacing-4px);width:8px;z-index:10}.todo-calendar-date__badge--has-todo{background-color:var(--color-surface-middle)}.todo-calendar-date__badge--has-expired-todo{background-color:var(--color-surface-caution)}.todo-calendar-date__badge--has-todo-on-selected{background-color:var(--color-surface-default)}.todo-calendar-date--other-month .todo-calendar-date__container{background:none}.todo-calendar-date--other-month .todo-calendar-date__text{color:var(--color-text-weak)}.todo-calendar-date--other-month .todo-calendar-date__badge--has-todo{background-color:var(--color-text-weak)}.todo-calendar-date--other-month .todo-calendar-date__badge--has-expired-todo{background-color:var(--color-surface-caution);opacity:.7}.todo-calendar-date--today .todo-calendar-date__container:before{border:var(--border-width-default) solid var(--color-border-strong);border-radius:var(--radius-8px);content:"";inset:0;pointer-events:none;position:absolute}.todo-calendar-date--selected .todo-calendar-date__state{background:var(--color-state-selected)}.todo-calendar-date--selected .todo-calendar-date__text{color:var(--color-text-on-dark-default)}.todo-calendar-date--hover .todo-calendar-date__state,.todo-calendar-date--today.todo-calendar-date--hover .todo-calendar-date__state,.todo-calendar-date--today:hover:not(.todo-calendar-date--disabled) .todo-calendar-date__state,.todo-calendar-date:hover:not(.todo-calendar-date--disabled) .todo-calendar-date__state{background:var(--color-state-normal-hover)}.todo-calendar-date--selected.todo-calendar-date--hover .todo-calendar-date__state,.todo-calendar-date--selected:hover:not(.todo-calendar-date--disabled) .todo-calendar-date__state{background:var(--color-state-selected)}.todo-calendar-date--active .todo-calendar-date__state,.todo-calendar-date--today.todo-calendar-date--active .todo-calendar-date__state{background:var(--color-state-normal-pressed)}.todo-calendar-date--selected.todo-calendar-date--active .todo-calendar-date__state{background:var(--color-state-selected)}.todo-calendar-date--focused .todo-calendar-date__state:before{border:var(--border-width-default) solid var(--color-border-focused);border-radius:var(--radius-8px);content:"";inset:0;pointer-events:none;position:absolute}.todo-calendar-date--today.todo-calendar-date--focused .todo-calendar-date__state:before{border:var(--border-width-default) solid var(--color-border-focused)}.todo-calendar-date--disabled{cursor:default;pointer-events:none}.todo-calendar-date--disabled .todo-calendar-date__state{opacity:.2}@media (max-width:768px){.todo-calendar-date__content{padding:var(--spacing-8px)}.todo-calendar-date__badge{height:6px;width:6px}}.icon-button-container{display:inline-block;position:relative}.icon-button{align-items:flex-start;background:none;border:none;border-radius:var(--radius-8px);cursor:pointer;display:flex;flex-direction:column;justify-content:flex-start;overflow:hidden;padding:0;position:relative;transition:all .2s ease}.icon-button:disabled{cursor:not-allowed}.icon-button:focus-visible{outline:2px solid var(--color-border-focused);outline-offset:2px}.icon-button__variable{align-items:flex-start;border-radius:var(--radius-8px);display:flex;flex-direction:column;flex-shrink:0;gap:var(--spacing-6px);justify-content:flex-start;padding:0}.icon-button--primary .icon-button__variable{background:#328adb;background:var(--color-surface-primary,#328adb)}.icon-button--ghost .icon-button__variable{background:#0000}.icon-button__state{align-items:center;border-radius:var(--radius-8px);display:flex;flex-direction:row;flex-shrink:0;gap:var(--spacing-4px);justify-content:center;padding:var(--spacing-12px);transition:background-color .2s ease}.icon-button--ghost:hover:not(.icon-button--disabled) .icon-button__state{background:#25292f0f}.icon-button--ghost:active:not(.icon-button--disabled) .icon-button__state{background:#25292f14}.icon-button--primary:hover:not(.icon-button--disabled) .icon-button__state{background:#ffffff29}.icon-button--primary:active:not(.icon-button--disabled) .icon-button__state{background:#ffffff3d}.icon-button--primary{color:#fff;color:var(--color-text-on-dark-default,#fff)}.icon-button--ghost{color:var(--color-object-sub-text)}.icon-button--disabled .icon-button__variable{opacity:.3}.calendar{max-width:400px;position:relative;width:100%}.calendar-container{box-sizing:border-box;display:flex;flex-direction:column;gap:var(--spacing-24px);height:100%;width:100%}.calendar-header{align-items:center;display:flex;justify-content:space-between;padding:0;width:100%}.month-year{color:var(--color-text-default);margin:0;white-space:nowrap}.calendar-body{display:flex;flex-direction:column}.calendar-body,.week-header{gap:var(--spacing-8px);width:100%}.week-header{grid-gap:var(--spacing-8px);box-sizing:border-box;color:var(--color-text-default);display:grid;grid-template-columns:repeat(7,1fr);text-align:center}.day-header{align-items:center;display:flex;height:32px;justify-content:center}.calendar-grid{grid-gap:var(--spacing-8px);box-sizing:border-box;display:grid;gap:var(--spacing-8px);grid-template-columns:repeat(7,1fr);width:100%}.calendar-date-wrapper{aspect-ratio:1;box-sizing:border-box;min-width:0;width:100%}@media (max-width:768px){.calendar-container{gap:var(--spacing-16px);padding:var(--spacing-16px)}.nav-button{height:40px;width:40px}}.todo-tag-list{display:flex;flex-direction:column;gap:var(--spacing-4px);overflow-y:scroll}.todo-tag-item-state-layer{align-items:center;border-radius:var(--radius-8px);color:var(--color-text-default);cursor:pointer;display:flex;gap:var(--spacing-8px);justify-content:space-between;padding:var(--spacing-12px) var(--spacing-16px);transition:background-color .2s}.todo-tag-item-state-layer:hover{background-color:var(--color-state-normal-hover)}.selected .todo-tag-item-state-layer{background-color:var(--color-state-selected);color:var(--color-text-on-dark-default)}.todo-tag-item-content{align-items:center;cursor:pointer;display:flex;flex:1 1;justify-content:space-between}.todo-tag-item-left{align-items:center;display:flex;flex:1 1;gap:var(--spacing-8px)}.todo-tag-count{color:var(--color-text-sub);margin-left:auto;margin-right:8px}.selected .todo-tag-count{color:var(--color-text-on-dark-sub)}.todo-tag-item-menu{align-items:center;display:flex;opacity:0;transition:opacity .2s}.todo-tag-item.selected .todo-tag-item-menu,.todo-tag-item:hover .todo-tag-item-menu{opacity:1}.todo-tag-item.drag-over-after,.todo-tag-item.drag-over-before{position:relative;z-index:1}.todo-tag-item.drag-over-before:before{top:-4px}.todo-tag-item.drag-over-after:after,.todo-tag-item.drag-over-before:before{background:var(--color-surface-primary);content:"";height:4px;left:0;opacity:.64;pointer-events:none;position:absolute;right:0;z-index:2}.todo-tag-item.drag-over-after:after{bottom:-4px}.todo-tag-item.dragging{opacity:.35}.todo-habit-list{display:flex;flex-direction:column;gap:var(--spacing-4px);overflow-y:scroll}.todo-habit-item-state-layer{align-items:center;border-radius:var(--radius-8px);color:var(--color-text-default);cursor:pointer;display:flex;gap:var(--spacing-8px);justify-content:space-between;padding:var(--spacing-12px) var(--spacing-16px)}.todo-habit-item-state-layer:hover{background-color:var(--color-state-normal-hover)}.selected .todo-habit-item-state-layer{background-color:var(--color-state-selected);color:var(--color-text-on-dark-default)}.todo-habit-item-content{align-items:center;cursor:pointer;display:flex;flex:1 1;justify-content:space-between}.todo-habit-item-left{align-items:center;display:flex;flex:1 1;gap:8px}.todo-habit-count{color:var(--color-text-sub);margin-left:auto;margin-right:8px}.selected .todo-habit-count{color:var(--color-text-on-dark-sub)}.todo-habit-item-menu{align-items:center;display:flex;opacity:0;transition:opacity .2s}.todo-habit-item.selected .todo-habit-item-menu,.todo-habit-item:hover .todo-habit-item-menu{opacity:1}.todo-habit-item.drag-over-after,.todo-habit-item.drag-over-before{position:relative;z-index:1}.todo-habit-item.drag-over-before:before{top:-4px}.todo-habit-item.drag-over-after:after,.todo-habit-item.drag-over-before:before{background:var(--color-surface-primary);content:"";height:4px;left:0;opacity:.64;pointer-events:none;position:absolute;right:0;z-index:2}.todo-habit-item.drag-over-after:after{bottom:-4px}.todo-habit-item.dragging{opacity:.35}.input-text{background-color:var(--color-surface-default);box-sizing:border-box;display:flex;flex-direction:column}.input-text,.input-text__state-layer{border-radius:var(--radius-8px);position:relative;width:100%}.input-text__state-layer{border:var(--border-width-default) solid var(--color-border-default);transition:all var(--transition-fast)}.input-text__container{align-items:center;box-sizing:border-box;display:flex;flex-direction:row;gap:var(--spacing-8px);min-height:48px;padding:var(--spacing-12px) var(--spacing-16px)}.input-text__icon{align-items:center;color:var(--color-object-sub-text);display:flex;flex-shrink:0;height:24px;justify-content:center;width:24px}.input-text__input{background:#0000;border:none;color:var(--color-text-default);flex:1 1;min-width:0;outline:none}.input-text__input::placeholder{color:var(--color-text-weak)}.input-text:hover:not(.input-text--disabled):not(.input-text--error) .input-text__state-layer{background-color:var(--color-state-normal-hover);border-color:var(--color-border-strong)}.input-text__input:focus-visible{outline:none}.input-text:has(.input-text__input:focus) .input-text__state-layer,.input-text__input:focus+* .input-text__state-layer{border-color:var(--color-border-focused)}.input-text--error .input-text__state-layer{border-color:var(--color-object-error)}.input-text--error:hover:not(.input-text--disabled) .input-text__state-layer{background-color:var(--color-state-normal-hover);border-color:var(--color-object-error)}.input-text--disabled{pointer-events:none}.input-text--disabled .input-text__state-layer{border-color:var(--color-border-default);opacity:.3}.input-text--disabled .input-text__input{color:var(--color-text-disabled);cursor:not-allowed}.input-text--disabled .input-text__icon{color:var(--color-object-disabled)}.input-text:focus-within:focus-visible{outline:var(--border-width-default) solid var(--color-border-focused);outline-offset:2px}@media (prefers-contrast:high){.input-text__state-layer{border-width:var(--border-width-bold)}}@media (prefers-reduced-motion:reduce){.input-text__state-layer{transition:none}}@media (max-width:768px){.input-text__container{min-height:44px;padding:var(--spacing-12px)}.input-text__input{font-size:var(--font-size-medium)}}.input-text__input[readonly]{background-color:var(--color-surface-light);color:var(--color-text-sub)}.input-text__input:focus::placeholder{opacity:.5}.todo-menu{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:var(--color-surface-default-alpha);border-radius:var(--radius-16px);display:flex;flex-direction:column;gap:var(--spacing-24px);max-height:calc(100% - var(--spacing-40px));padding:var(--spacing-24px);width:100%}.todo-menu-tabs{border:var(--border-width-default) solid var(--color-border-default);border-radius:var(--radius-8px);display:flex;flex-shrink:0;overflow:hidden}.todo-menu-tab{align-items:center;background:var(--color-surface-default);border:none;border-left:var(--border-width-default) solid var(--color-border-default);cursor:pointer;display:flex;flex:1 1;justify-content:center;min-height:48px;padding:var(--spacing-12px) var(--spacing-8px);transition:background-color var(--transition-fast)}.todo-menu-tab:first-child{border-left:none}.todo-menu-tab:hover:not(.active){background:var(--color-state-normal-hover)}.todo-menu-tab.active{background:var(--color-state-selected);color:var(--color-text-on-dark-default)}.todo-menu-tab Icon,.todo-menu-tab svg{color:currentColor}.todo-menu-content{display:flex;flex:1 1;flex-direction:column;overflow:hidden}.todo-habit-content,.todo-tag-content{display:flex;flex-direction:column;gap:var(--spacing-12px);height:100%;min-height:0}.todo-habit-content>.todo-habit-list,.todo-tag-content>.todo-tag-list{flex:1 1;min-height:0}.todo-menu-placeholder{align-items:center;color:var(--color-text-weak);display:flex;justify-content:center;padding:var(--spacing-24px)}.todo-menu-content .calendar{height:100%;padding:0;width:100%}.todo-item{align-items:center;background:var(--color-surface-default-alpha);cursor:pointer;flex-direction:row}.todo-item,.todo-item__variable{border-radius:var(--radius-16px);box-sizing:border-box;display:flex;justify-content:flex-start;padding:0;position:relative;width:100%}.todo-item__variable{align-items:flex-start;border:var(--border-width-thin) solid var(--color-border-default);flex:1 1;flex-direction:column;min-height:1px;min-width:1px}.todo-item__state{align-items:flex-start;border-radius:var(--radius-16px);box-sizing:border-box;gap:var(--spacing-16px);padding:var(--spacing-16px);position:relative;width:100%}.todo-item__checkbox,.todo-item__state{display:flex;flex-direction:row;justify-content:flex-start}.todo-item__checkbox{align-items:center;flex-shrink:0}.todo-item__text{align-items:flex-start;flex:1 1;flex-direction:column;justify-content:center;min-height:1px;min-width:1px}.todo-item__text,.todo-item__title{display:flex;gap:var(--spacing-4px)}.todo-item__title{align-items:center;color:var(--color-text-default);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.todo-item__habit-icon{align-items:center;color:var(--color-object-default);display:flex;flex-shrink:0;justify-content:center}.todo-item__title-text{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.todo-item__description{color:var(--color-text-sub)}.todo-item__description,.todo-item__habit{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.todo-item__habit{color:var(--color-text-accent)}.todo-item__time{align-items:center;color:var(--color-text-sub);display:flex;flex-direction:row;gap:var(--spacing-4px);justify-content:flex-start;padding-top:var(--spacing-4px);width:100%}.todo-item__time-assistive,.todo-item__time-display{flex-shrink:0;white-space:nowrap}.todo-item--expired:not(.todo-item--completed) .todo-item__variable{background:var(--color-surface-caution-light)}.todo-item--completed .todo-item__title-text{opacity:.6;text-decoration:line-through}.todo-item--completed .todo-item__habit-icon{opacity:.6}.todo-item--completed .todo-item__description,.todo-item--completed .todo-item__habit{opacity:.6;text-decoration:line-through}.todo-item--expired:hover .todo-item__state,.todo-item:hover .todo-item__state{background:var(--color-state-normal-hover)}.todo-item--expired:active .todo-item__state,.todo-item:active .todo-item__state{background:var(--color-state-normal-pressed)}.todo-item:focus-visible{border-radius:var(--radius-16px);outline:2px solid var(--color-border-focused);outline-offset:2px}.todo-item--selected{outline:2px solid var(--color-border-focused);outline-offset:2px;outline-width:2px}@media (max-width:768px){.todo-item__state{gap:var(--spacing-12px);padding:var(--spacing-12px)}}.checkbox-container{align-items:center;display:flex;flex-direction:row;justify-content:flex-start;padding:0;position:relative}.checkbox__base{align-items:center;display:inline-flex}.checkbox__state-layer{align-items:center;border-radius:var(--radius-4px);display:flex;flex:1 1;flex-direction:row;height:100%;justify-content:center;min-height:1px;min-width:1px;padding:var(--spacing-12px);position:relative}.checkbox__boxicon{align-items:flex-start;align-items:center;background:#f4f5f6;background:var(--Background-App,#f4f5f6);border:1px solid #c1c8d0;border:1px solid var(--Border-Default,#c1c8d0);border-radius:4px;border-radius:var(--4px,4px);display:flex;gap:10px;height:24px;justify-content:center;padding:4px;width:24px}.checkbox__boxicon--checked{background:var(--color-surface-primary);border-color:var(--color-surface-primary);color:var(--color-object-on-dark-default)}.checkbox--checked .checkbox__checkmark{color:var(--color-text-on-dark-default)}.checkbox--disabled{cursor:not-allowed;opacity:.5}.checkbox--disabled .checkbox__base{background:var(--color-bg-disabled);border-color:var(--color-border-disabled)}.checkbox--disabled:active .checkbox__state-layer,.checkbox--disabled:hover .checkbox__state-layer{background:none!important}.checkbox:hover .checkbox__state-layer{background:var(--color-state-normal-hover)}.checkbox:active .checkbox__state-layer{background:var(--color-state-normal-pressed)}.checkbox:focus-visible{border-radius:var(--radius-8px);outline:2px solid var(--color-border-focused);outline-offset:2px}@media (max-width:768px){.checkbox__base{height:20px;width:20px}}.dropdown-menu{background-color:var(--color-surface-default);border-radius:var(--radius-8px);box-shadow:0 0 8px 0 #25292f14,0 4px 4px 0 #25292f14;padding:var(--spacing-8px)}.menu-item{cursor:pointer}.menu-item.menu-item--disabled{cursor:not-allowed}.menu-item__state-layer{display:flex;gap:var(--spacing-4px);padding:var(--spacing-8px)}.menu-item__state-layer:hover{background:var(--color-state-normal-hover)}.menu-item--destructive span{color:var(--color-text-error)}.menu-item--destructive .leftIcon,.menu-item--destructive .rightIcon{color:var(--color-object-error)}.button{align-items:center;background:none;border:none;cursor:pointer;display:inline-flex;font-family:inherit;justify-content:center;margin:0;outline:none;padding:0;position:relative;text-decoration:none;transition:all .2s ease-in-out}.button__variable{overflow:hidden}.button__state-layer,.button__variable{align-items:center;border-radius:var(--radius-8px);display:flex;justify-content:center;width:100%}.button__state-layer{flex-direction:row;gap:var(--spacing-4px);padding:var(--spacing-12px);position:relative}.button__left-icon,.button__right-icon{align-items:center;display:flex;flex-shrink:0;justify-content:center}.button__text{align-items:center;display:flex}.button--primary .button__variable{background:var(--color-surface-primary)}.button--primary .button__left-icon,.button--primary .button__right-icon,.button--primary .button__text{color:var(--color-text-on-dark-default)}.button--secondary .button__variable{background:var(--color-surface-light);border:var(--border-width-default) solid var(--color-border-default)}.button--secondary .button__left-icon,.button--secondary .button__right-icon,.button--secondary .button__text{color:var(--color-text-default)}.button--small .button__state-layer{gap:var(--spacing-4px);padding:var(--spacing-8px) var(--spacing-12px)}.button--medium .button__state-layer{gap:var(--spacing-4px);padding:var(--spacing-12px)}.button--large .button__state-layer{gap:var(--spacing-4px);padding:var(--spacing-16px) var(--spacing-24px)}.button:hover:not(.button--disabled):not(.button--loading) .button__state-layer{background:var(--color-state-on-dark-hover)}.button--secondary:hover:not(.button--disabled):not(.button--loading) .button__state-layer{background:var(--color-state-normal-hover)}.button:active:not(.button--disabled):not(.button--loading) .button__state-layer{background:var(--color-state-on-dark-pressed)}.button--secondary:active:not(.button--disabled):not(.button--loading) .button__state-layer{background:var(--color-state-normal-pressed)}.button:focus-visible{border-radius:var(--radius-8px);outline:2px solid var(--color-border-focused);outline-offset:2px}.button--disabled{cursor:not-allowed;opacity:.5}.button--disabled .button__variable{background:#f5f5f5;background:var(--color-surface-disabled,#f5f5f5)}.button--disabled .button__left-icon,.button--disabled .button__right-icon,.button--disabled .button__text{color:#999;color:var(--color-text-disabled,#999)}.button--loading{cursor:wait}.button__loading-icon{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.button--done .button__variable{background:#10b981;background:var(--color-surface-success,#10b981)}.button--done .button__left-icon,.button--done .button__right-icon,.button--done .button__text{color:var(--color-text-on-dark-default)}@media (max-width:768px){.button--large .button__state-layer{padding:var(--spacing-12px) var(--spacing-16px)}}.todo-list{background:var(--color-surface-default-alpha);border:var(--border-width-thin) solid var(--color-border-default);border-radius:var(--radius-16px);box-shadow:var(--shadow-md);height:fit-content;min-height:400px;padding:var(--spacing-24px)}.todo-list-header{margin-bottom:var(--spacing-24px)}.todo-list-header-content{align-items:flex-start;display:flex;gap:var(--spacing-16px);justify-content:space-between}.todo-list-header-left{display:flex;flex:1 1;flex-direction:column;gap:var(--spacing-4px)}.todo-list-header-right{align-items:flex-start;display:flex;flex:0 0 auto;gap:var(--spacing-8px)}.todo-list-header h2{color:var(--color-text-default)}.empty-state,.todo-count{color:var(--color-text-sub)}.empty-state{padding:var(--spacing-40px) var(--spacing-16px);text-align:center}.empty-icon{font-size:var(--font-size-2xlarge);margin-bottom:var(--spacing-16px)}.empty-state h3{color:var(--color-text-default);margin:0 0 var(--spacing-8px) 0}.empty-state p{color:var(--color-text-weak);margin:0}.todo-sections{gap:var(--spacing-24px)}.todo-section,.todo-sections{display:flex;flex-direction:column}.todo-section{gap:var(--spacing-12px)}.section-title{color:var(--color-text-default);margin:0 0 var(--spacing-4) 0}.todo-items{display:flex;flex-direction:column;gap:var(--spacing-12px)}@media (max-width:768px){.todo-list{min-height:300px;padding:var(--spacing-16px)}.todo-list-header-content{align-items:flex-start;flex-direction:column;gap:var(--spacing-12px)}.todo-list-header-right{justify-content:flex-start;width:100%}}.date-picker{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background-color:var(--color-surface-default-alpha);border-radius:var(--radius-16px);box-shadow:var(--shadow-lg);overflow:hidden}.date-picker__content{box-sizing:border-box;display:flex;flex-direction:column;gap:var(--spacing-24px);padding:var(--spacing-24px);width:100%}.date-picker__header{align-items:center;display:flex;flex-direction:row;justify-content:space-between;width:100%}.date-picker__nav-button{align-items:center;background:#0000;border:none;border-radius:var(--radius-8px);box-sizing:border-box;color:var(--color-object-default);cursor:pointer;display:flex;height:48px;justify-content:center;padding:var(--spacing-12px);transition:all var(--transition-fast);width:48px}.date-picker__nav-button:hover{background-color:var(--color-state-normal-hover)}.date-picker__nav-button:focus-visible{outline:var(--border-width-default) solid var(--color-border-focused);outline-offset:2px}.date-picker__title{color:var(--color-text-default);margin:0;text-align:center}.date-picker__body{flex-direction:column}.date-picker__body,.date-picker__weekdays{display:flex;gap:var(--spacing-8px);width:100%}.date-picker__weekdays{flex-direction:row}.date-picker__weekday{align-items:center;color:var(--color-text-default);display:flex;flex:1 1;justify-content:center;min-height:20px;min-width:40px;text-align:center}.date-picker__weeks{flex-direction:column}.date-picker__week,.date-picker__weeks{display:flex;gap:var(--spacing-8px);width:100%}.date-picker__week{flex-direction:row}.date-picker__date-cell{align-items:flex-start;aspect-ratio:1;background:none;border:none;border-radius:var(--radius-8px);box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;justify-content:flex-start;min-height:40px;min-width:40px;overflow:hidden;padding:0;position:relative;width:100%}.date-picker__date-cell__container{background:var(--color-surface-light);box-sizing:border-box;flex:1 1;flex-direction:column;padding:0}.date-picker__date-cell__container,.date-picker__date-cell__state{align-items:center;border-radius:var(--radius-8px);display:flex;justify-content:center;min-height:1px;min-width:1px;position:relative;width:100%}.date-picker__date-cell__state{flex:1 1;flex-direction:row}.date-picker__date-cell__content{align-items:center;box-sizing:border-box;display:flex;flex-direction:row;gap:var(--spacing-4px);height:100%;justify-content:center;padding:var(--spacing-12px);position:relative;width:100%}.date-picker__date-cell__text{color:var(--color-text-default);flex-shrink:0;position:relative}.date-picker__date-cell--other-month .date-picker__date-cell__container{background:none}.date-picker__date-cell--other-month .date-picker__date-cell__text{color:var(--color-text-weak)}.date-picker__date-cell--today .date-picker__date-cell__container:before{border:var(--border-width-default) solid var(--color-border-strong);border-radius:var(--radius-8px);content:"";inset:0;pointer-events:none;position:absolute}.date-picker__date-cell--selected .date-picker__date-cell__state{background:var(--color-state-selected)}.date-picker__date-cell--selected .date-picker__date-cell__text{color:var(--color-text-on-dark-default)}.date-picker__date-cell--today:hover:not(:disabled) .date-picker__date-cell__state,.date-picker__date-cell:hover:not(:disabled) .date-picker__date-cell__state{background:var(--color-state-normal-hover)}.date-picker__date-cell--selected:hover:not(:disabled) .date-picker__date-cell__state{background:var(--color-state-selected)}.date-picker__date-cell--today:active .date-picker__date-cell__state,.date-picker__date-cell:active .date-picker__date-cell__state{background:var(--color-state-normal-pressed)}.date-picker__date-cell--selected:active .date-picker__date-cell__state{background:var(--color-state-selected)}.date-picker__date-cell:focus-visible{outline:var(--border-width-default) solid var(--color-border-focused);outline-offset:2px}@media (prefers-contrast:high){.date-picker__date-cell-content{border:1px solid var(--color-border-default)}.date-picker__date-cell--selected .date-picker__date-cell-content{border:var(--border-width-default) solid var(--color-state-selected)}}@media (prefers-reduced-motion:reduce){.date-picker__date-cell,.date-picker__nav-button{transition:none}}@media (max-width:768px){.date-picker__content{gap:var(--spacing-16px);padding:var(--spacing-16px)}.date-picker__nav-button{height:40px;padding:var(--spacing-8px);width:40px}.date-picker__date-cell{min-height:32px;min-width:32px}.date-picker__date-cell-content{padding:var(--spacing-8px)}}@media (hover:none) and (pointer:coarse){.date-picker__date-cell,.date-picker__nav-button{min-height:44px;min-width:44px}}.input-date{background-color:var(--color-surface-default);box-sizing:border-box;display:flex;flex-direction:column}.input-date,.input-date__state-layer{border-radius:var(--radius-8px);position:relative;width:100%}.input-date__state-layer{border:var(--border-width-default) solid var(--color-border-default);transition:all var(--transition-fast)}.input-date__container{align-items:center;box-sizing:border-box;display:flex;flex-direction:row;gap:var(--spacing-8px);min-height:48px;padding:var(--spacing-12px) var(--spacing-16px);width:fit-content}.input-date__icon{align-items:center;background:#0000;border:none;border-radius:var(--radius-4px);color:var(--color-object-sub-text);cursor:pointer;display:flex;flex-shrink:0;height:24px;justify-content:center;padding:0;transition:all var(--transition-fast);width:24px}.input-date__icon:hover:not(:disabled){background-color:var(--color-state-normal-hover);color:var(--color-object-default)}.input-date__icon:focus-visible{outline:var(--border-width-default) solid var(--color-border-focused);outline-offset:2px}.input-date__fields{align-items:center;display:flex;flex:1 1;flex-direction:row;gap:var(--spacing-4px);min-width:0}.input-date__field{background:#0000;border:none;color:var(--color-text-default);outline:none;text-align:center;transition:all var(--transition-fast)}.input-date__field::placeholder{color:var(--color-text-weak);font-size:var(--font-size-small)}.input-date__field:focus{outline:none}.input-date__field:focus-visible{outline:none}.input-date__separator{color:var(--color-text-default);flex-shrink:0;-webkit-user-select:none;user-select:none}.input-date__calendar{animation:slideDown var(--transition-fast);left:0;min-width:320px;position:absolute;top:calc(100% - 1px);z-index:var(--z-dropdown)}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.input-date:hover:not(.input-date--disabled):not(.input-date--error) .input-date__state-layer{background-color:var(--color-state-normal-hover);border-color:var(--color-border-strong)}.input-date--error .input-date__state-layer{border-color:var(--color-object-error)}.input-date--error:hover:not(.input-date--disabled) .input-date__state-layer{background-color:var(--color-state-normal-hover);border-color:var(--color-object-error)}.input-date--disabled{pointer-events:none}.input-date--disabled .input-date__state-layer{border-color:var(--color-border-default);opacity:.3}.input-date--disabled .input-date__field{color:var(--color-text-disabled);cursor:not-allowed}.input-date--disabled .input-date__icon{color:var(--color-object-disabled);cursor:not-allowed}.input-date--disabled .input-date__separator{color:var(--color-text-disabled)}.input-date:focus-within:focus-visible{outline:var(--border-width-default) solid var(--color-border-focused);outline-offset:2px}@media (prefers-contrast:high){.input-date__calendar,.input-date__state-layer{border-width:var(--border-width-bold)}}@media (prefers-reduced-motion:reduce){.input-date__calendar-close,.input-date__field,.input-date__icon,.input-date__state-layer{transition:none}.input-date__calendar{animation:none}}@media (max-width:768px){.input-date__container{min-height:44px;padding:var(--spacing-12px)}.input-date__field{font-size:var(--font-size-medium)}.input-date__calendar{left:50%;max-width:calc(100vw - 32px);min-width:calc(100vw - 32px);transform:translateX(-50%)}}.input-date__field::-webkit-inner-spin-button,.input-date__field::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.input-date__field[type=number]{-moz-appearance:textfield}@media (hover:none) and (pointer:coarse){.input-date__field{min-height:32px;padding:var(--spacing-4px) var(--spacing-8px)}.input-date__icon{min-height:32px;min-width:32px}}.input-time{background-color:var(--color-surface-default);box-sizing:border-box;display:flex;flex-direction:column}.input-time,.input-time__state-layer{border-radius:var(--radius-8px);position:relative;width:100%}.input-time__state-layer{border:var(--border-width-default) solid var(--color-border-default);transition:all var(--transition-fast)}.input-time__container{align-items:center;box-sizing:border-box;display:flex;flex-direction:row;gap:var(--spacing-8px);min-height:48px;padding:var(--spacing-12px) var(--spacing-16px);width:fit-content}.input-time__icon{align-items:center;color:var(--color-object-sub-text);display:flex;flex-shrink:0;height:24px;justify-content:center;width:24px}.input-time__fields{align-items:center;display:flex;flex-direction:row;gap:var(--spacing-4px);width:fit-content}.input-time__field{background:#0000;border:none;color:var(--color-text-default);outline:none;text-align:center;transition:all var(--transition-fast)}.input-time__field::placeholder{color:var(--color-text-weak);font-size:var(--font-size-small)}.input-time__field:focus{outline:none}.input-time__field:focus-visible{outline:none}.input-time__separator{color:var(--color-text-default);flex-shrink:0;-webkit-user-select:none;user-select:none}.input-time:hover:not(.input-time--disabled):not(.input-time--error) .input-time__state-layer{background-color:var(--color-state-normal-hover);border-color:var(--color-border-strong)}.input-time--focused .input-time__state-layer{border-color:var(--color-border-focused)}.input-time--error .input-time__state-layer{border-color:var(--color-object-error)}.input-time--error:hover:not(.input-time--disabled) .input-time__state-layer{background-color:var(--color-state-normal-hover);border-color:var(--color-object-error)}.input-time--disabled{pointer-events:none}.input-time--disabled .input-time__state-layer{border-color:var(--color-border-default);opacity:.3}.input-time--disabled .input-time__field{color:var(--color-text-disabled);cursor:not-allowed}.input-time--disabled .input-time__icon{color:var(--color-object-disabled)}.input-time--disabled .input-time__separator{color:var(--color-text-disabled)}.input-time:focus-within:focus-visible{outline:var(--border-width-default) solid var(--color-border-focused);outline-offset:2px}@media (prefers-contrast:high){.input-time__state-layer{border-width:var(--border-width-bold)}}@media (prefers-reduced-motion:reduce){.input-time__field,.input-time__state-layer{transition:none}}@media (max-width:768px){.input-time__container{min-height:44px;padding:var(--spacing-12px)}.input-time__field{font-size:var(--font-size-medium)}}.input-time__field::-webkit-inner-spin-button,.input-time__field::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.input-time__field[type=number]{-moz-appearance:textfield}@media (hover:none) and (pointer:coarse){.input-time__field{min-height:32px;padding:var(--spacing-4px) var(--spacing-8px)}.input-time__icon{min-height:32px;min-width:32px}}.input-time__field:invalid:not(:placeholder-shown){background-color:var(--color-surface-alert-light)}.input-time__field:focus{select:all}.input-time__field:focus::selection{background-color:var(--color-state-selected);color:var(--color-text-on-dark-default)}.save-status-feedback{align-items:center;border-radius:4px;display:inline-flex;min-height:24px;padding:4px 8px;transition:all .2s ease-in-out}.save-status-feedback__text{white-space:nowrap}.save-status-feedback--success{background-color:#e8f5e8;background-color:var(--color-success-bg,#e8f5e8);border:1px solid #c3e6c3;border:1px solid var(--color-success-border,#c3e6c3);color:#2d5a2d;color:var(--color-success-text,#2d5a2d)}.save-status-feedback--error{background-color:#fdeaea;background-color:var(--color-error-bg,#fdeaea);border:1px solid #f5c6c6;border:1px solid var(--color-error-border,#f5c6c6);color:#d32f2f;color:var(--color-error-text,#d32f2f)}.save-status-feedback--retrying{animation:pulse 1.5s ease-in-out infinite;background-color:#fff4e6;background-color:var(--color-warning-bg,#fff4e6);border:1px solid #ffcc80;border:1px solid var(--color-warning-border,#ffcc80);color:#e65100;color:var(--color-warning-text,#e65100)}.save-status-feedback--saving{animation:pulse 1s ease-in-out infinite;background-color:#e3f2fd;background-color:var(--color-info-bg,#e3f2fd);border:1px solid #90caf9;border:1px solid var(--color-info-border,#90caf9);color:#1565c0;color:var(--color-info-text,#1565c0)}.save-status-feedback--dirty{background-color:#f5f5f5;background-color:var(--color-neutral-bg,#f5f5f5);border:1px solid #d0d0d0;border:1px solid var(--color-neutral-border,#d0d0d0);color:#666;color:var(--color-neutral-text,#666)}@keyframes pulse{0%{opacity:1}50%{opacity:.7}to{opacity:1}}:root{--color-success-bg:#e8f5e8;--color-success-text:#2d5a2d;--color-success-border:#c3e6c3;--color-error-bg:#fdeaea;--color-error-text:#d32f2f;--color-error-border:#f5c6c6;--color-warning-bg:#fff4e6;--color-warning-text:#e65100;--color-warning-border:#ffcc80;--color-info-bg:#e3f2fd;--color-info-text:#1565c0;--color-info-border:#90caf9;--color-neutral-bg:#f5f5f5;--color-neutral-text:#666;--color-neutral-border:#d0d0d0}.input-number{background-color:var(--color-surface-default);box-sizing:border-box}.input-number,.input-number__state-layer{border-radius:var(--radius-8px);position:relative;width:100%}.input-number__state-layer{border:var(--border-width-default) solid var(--color-border-default);transition:all var(--transition-fast)}.input-number__container{align-items:center;box-sizing:border-box;display:flex;flex-direction:row;gap:var(--spacing-8px);min-height:48px;padding:var(--spacing-12px) var(--spacing-16px)}.input-number__icon{align-items:center;color:var(--color-object-sub-text);display:flex;flex-shrink:0;height:24px;justify-content:center;width:24px}.input-number__input{background:#0000;border:none;color:var(--color-text-default);outline:none;width:100%}.input-number__input::placeholder{color:var(--color-text-weak)}.input-number:hover:not(.input-number--disabled):not(.input-number--error) .input-number__state-layer{background-color:var(--color-state-normal-hover);border-color:var(--color-border-strong)}.input-number--error .input-number__state-layer{border-color:var(--color-object-error)}.input-number--disabled{pointer-events:none}.input-number--disabled .input-number__state-layer{border-color:var(--color-border-default);opacity:.3}.input-number--disabled .input-number__input{color:var(--color-text-disabled);cursor:not-allowed}.input-number--no-spinner .input-number__input::-webkit-inner-spin-button,.input-number--no-spinner .input-number__input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.input-number--no-spinner .input-number__input[type=number]{-moz-appearance:textfield}.input-todo-title__container{align-items:flex-start;display:flex;flex:1 1;position:relative}.input-todo-title__habit-icon{align-items:center;color:var(--color-object-sub-text);display:flex;justify-content:center;left:var(--spacing-12px);pointer-events:none;position:absolute;top:var(--spacing-12px);z-index:1}.input-todo-title__textarea{background:var(--color-surface-default);border:var(--border-width-thin) solid var(--color-border-default);border-radius:var(--radius-8px);box-sizing:border-box;color:var(--color-text-default);min-height:48px;overflow-y:hidden;padding:var(--spacing-12px) var(--spacing-16px);resize:none;transition:border-color var(--transition-fast),height var(--transition-fast);width:100%}.input-todo-title__textarea:focus{border-color:var(--color-border-focus);box-shadow:0 0 0 2px var(--color-border-focus-alpha);outline:none}.input-todo-title__textarea--readonly{background:var(--color-surface-disabled);color:var(--color-text-default);cursor:default}.input-todo-title__textarea--with-habit-icon{padding-left:calc(var(--spacing-16px) + 24px + var(--spacing-4px))}.input-todo-title__habit-clear-button{align-items:center;background:#0000;border:none;border-radius:var(--radius-4px);color:var(--color-text-subtle);cursor:pointer;display:flex;height:24px;justify-content:center;position:absolute;right:var(--spacing-12px);top:var(--spacing-12px);transition:background-color var(--transition-fast);width:24px}.input-todo-title__habit-clear-button:hover{background:var(--color-surface-hover);color:var(--color-text-default)}.input-todo-title__habit-dropdown{background:var(--color-surface-default);border:var(--border-width-thin) solid var(--color-border-default);border-radius:var(--radius-8px);box-shadow:var(--shadow-medium);left:0;margin-top:var(--spacing-4px);max-height:200px;overflow:hidden;overflow-y:auto;position:absolute;right:0;top:100%;z-index:var(--z-dropdown)}.input-todo-title__habit-add-new,.input-todo-title__habit-item{align-items:center;background:#0000;border:none;color:var(--color-text-default);cursor:pointer;display:flex;gap:var(--spacing-8px);padding:var(--spacing-12px) var(--spacing-16px);text-align:left;transition:background-color var(--transition-fast);width:100%}.input-todo-title__habit-add-new:hover,.input-todo-title__habit-item:hover{background:var(--color-surface-hover)}.input-todo-title__habit-add-new{border-top:var(--border-width-thin) solid var(--color-border-default);color:var(--color-text-accent)}.input-todo-tags{position:relative;width:100%}.input-todo-tags__container{display:flex;flex-direction:column;gap:4px}.input-todo-tags__input-area{align-items:center;background:var(--color-surface-default);border:1px solid var(--color-border-default);border-radius:8px;cursor:text;display:flex;flex-wrap:wrap;gap:6px;min-height:40px;padding:8px 12px;transition:border-color .2s ease}.input-todo-tags__input-area:focus-within{border-color:var(--color-primary-default)}.input-todo-tags__selected-chips{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.input-todo-tags__chip{align-items:center;background:var(--color-primary-subtle);border-radius:16px;color:var(--color-primary-emphasis);display:inline-flex;gap:4px;max-width:120px;padding:4px 6px 4px 8px}.input-todo-tags__chip-text{flex-shrink:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.input-todo-tags__chip-remove{align-items:center;background:#0000;border:none;border-radius:50%;color:var(--color-primary-emphasis);cursor:pointer;display:flex;flex-shrink:0;height:16px;justify-content:center;transition:background-color .2s ease;width:16px}.input-todo-tags__chip-remove:hover{background:var(--color-primary-muted)}.input-todo-tags__search-input{background:#0000;border:none;color:var(--color-text-default);flex:1 1;min-width:120px;outline:none}.input-todo-tags__search-input::placeholder{color:var(--color-text-muted)}.input-todo-tags__dropdown{left:0;position:absolute;top:calc(100% + 4px);width:100%;z-index:10}.input-todo-tags__dropdown-list{background:var(--color-surface-default);border:1px solid var(--color-border-default);border-radius:8px;box-shadow:0 4px 12px #0000001a;max-height:200px;overflow:hidden;overflow-y:auto}.input-todo-tags__dropdown-item{align-items:center;cursor:pointer;display:flex;gap:8px;padding:8px 12px;transition:background-color .2s ease}.input-todo-tags__dropdown-item:hover{background:var(--color-surface-hover)}.input-todo-tags__dropdown-item-title{color:var(--color-text-default);flex:1 1}.input-todo-tags__add-new{align-items:center;background:#0000;border:none;border-top:1px solid var(--color-border-subtle);color:var(--color-primary-default);cursor:pointer;display:flex;gap:8px;padding:8px 12px;transition:background-color .2s ease;width:100%}.input-todo-tags__add-new:hover{background:var(--color-surface-hover)}.input-todo-tags__dropdown-list::-webkit-scrollbar{width:6px}.input-todo-tags__dropdown-list::-webkit-scrollbar-track{background:#0000}.input-todo-tags__dropdown-list::-webkit-scrollbar-thumb{background:var(--color-border-default);border-radius:3px}.input-todo-tags__dropdown-list::-webkit-scrollbar-thumb:hover{background:var(--color-border-emphasis)}.drawer-todo-detail{bottom:0;left:0;opacity:0;pointer-events:none;position:fixed;right:0;top:0;transition:opacity var(--transition-normal);z-index:var(--z-modal)}.drawer-todo-detail--open{opacity:1;pointer-events:none}.drawer-todo-detail__drawer{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:var(--color-surface-default-alpha);bottom:0;box-shadow:-4px 0 8px 0 #25292f0d;display:flex;flex-direction:column-reverse;overflow:hidden;padding:16px 24px 0;padding:var(--Spacing-16px,16px) var(--Spacing-24px,24px) 0 var(--Spacing-24px,24px);pointer-events:auto;position:absolute;right:0;top:0;transform:translateX(100%);transition:transform var(--transition-normal);width:min(680px,90vw)}.drawer-todo-detail--open .drawer-todo-detail__drawer{transform:translateX(0)}.drawer-todo-detail__tags{margin-bottom:16px;margin-top:16px}.drawer-todo-detail__functions{align-items:center;display:flex;flex-direction:row;flex-shrink:0;justify-content:space-between;order:4}.drawer-todo-detail__manipulate-drawer{align-items:center;display:flex;flex-direction:row;gap:var(--spacing-12px)}.drawer-todo-detail__close-section{align-items:center;border-right:1px solid var(--color-border-default);display:flex;flex-direction:row;padding-right:var(--spacing-12px)}.drawer-todo-detail__middle-section{gap:0}.drawer-todo-detail__manipulate-todo,.drawer-todo-detail__middle-section{align-items:center;display:flex;flex-direction:row}.drawer-todo-detail__header{border-bottom:1px solid var(--color-border-default);flex-shrink:0;order:3;padding:var(--spacing-16px) 0}.drawer-todo-detail__inputs{display:flex;flex-direction:column;gap:var(--spacing-8px)}.drawer-todo-detail__title-input{width:100%}.drawer-todo-detail__title-with-checkbox{align-items:center;display:flex;gap:var(--spacing-12px);width:100%}.drawer-todo-detail__title-with-checkbox .input-text{flex:1 1}.drawer-todo-detail__datetime-row{align-items:flex-start;display:flex;flex-direction:row;justify-content:space-between;width:100%}.drawer-todo-detail__datetime-inputs{align-items:center;display:flex;flex-direction:row;gap:var(--spacing-8px);width:fit-content}.drawer-todo-detail__date-input,.drawer-todo-detail__time-input{width:fit-content}.drawer-todo-detail__tag-functions{align-items:center;display:flex;flex-direction:row;gap:var(--spacing-8px)}.drawer-todo-detail__content{align-items:flex-start;display:flex;flex:1 1;flex-direction:row;justify-content:flex-start;order:1;overflow-x:hidden;overflow-y:auto;width:100%}.drawer-todo-detail__markdown-content{align-items:flex-start;display:flex;flex:1 1;flex-direction:column;gap:var(--spacing-4px);height:100%;justify-content:flex-start;padding:var(--spacing-16px) 0 var(--spacing-32px) 0}.drawer-todo-detail__body-textarea{background:var(--color-surface-default);border:1px solid var(--color-border-default);border-radius:var(--radius-8px);box-sizing:border-box;color:var(--color-text-default);flex:1 1;height:100%;min-height:200px;outline:none;padding:var(--spacing-12px);resize:none;width:100%}.drawer-todo-detail__body-textarea:focus{border-color:var(--color-border-focused);box-shadow:0 0 0 2px var(--color-border-focused-alpha)}.drawer-todo-detail__body-textarea::placeholder{color:var(--color-text-sub);opacity:.7}.drawer-todo-detail__shopping-list{align-items:flex-start;display:flex;flex:1 1;flex-direction:column;gap:var(--spacing-16px);height:100%;justify-content:flex-start;padding:var(--spacing-16px) 0 var(--spacing-32px) 0}.drawer-todo-detail__shopping-search{background:var(--color-surface-default);border:1px solid var(--color-border-default);border-radius:var(--radius-8px);box-sizing:border-box;color:var(--color-text-default);outline:none;padding:var(--spacing-12px) var(--spacing-16px);width:100%}.drawer-todo-detail__shopping-search:focus{border-color:var(--color-border-focused);box-shadow:0 0 0 2px var(--color-border-focused-alpha)}.drawer-todo-detail__shopping-search::placeholder{color:var(--color-text-sub);opacity:.7}.drawer-todo-detail__shopping-search-wrapper{position:relative;width:100%}.drawer-todo-detail__shopping-dropdown{background:var(--color-surface-default);border:1px solid var(--color-border-default);border-radius:var(--radius-8px);box-shadow:0 4px 12px #25292f1a;left:0;margin-top:var(--spacing-4px);max-height:300px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:9999}.drawer-todo-detail__shopping-item{align-items:flex-start;border-bottom:1px solid var(--color-border-default);cursor:pointer;display:flex;flex-direction:column;gap:var(--spacing-4px);padding:var(--spacing-12px) var(--spacing-16px);transition:background-color var(--transition-fast)}.drawer-todo-detail__shopping-item:hover{background:var(--color-state-normal-hover)}.drawer-todo-detail__shopping-item:last-child{border-bottom:none}.drawer-todo-detail__shopping-item-title{color:var(--color-text-default)}.drawer-todo-detail__shopping-item-body{color:var(--color-text-sub)}.drawer-todo-detail__shopping-item-body.text-error{color:var(--color-text-error)}.drawer-todo-detail__shopping-item-body-row{align-items:baseline;display:flex;gap:var(--spacing-4px)}.drawer-todo-detail__shopping-group:not(:first-child){padding-top:var(--spacing-32px)}.drawer-todo-detail__shopping-group+.drawer-todo-detail__shopping-group{border-top:1px solid var(--color-border-default)}.drawer-todo-detail__shopping-group-title{align-items:center;border-bottom:1px solid var(--color-border-default);color:var(--color-text-sub);display:flex;gap:var(--spacing-4px);padding:var(--spacing-8px) var(--spacing-16px)}.drawer-todo-detail__shopping-add-new{align-items:center;background:var(--color-surface-weak);border-top:1px solid var(--color-border-default);color:var(--color-primary);cursor:pointer;display:flex;gap:var(--spacing-8px);padding:var(--spacing-12px) var(--spacing-16px);transition:background-color var(--transition-fast)}.drawer-todo-detail__shopping-add-new:hover{background:var(--color-state-normal-hover)}.drawer-todo-detail__selected-stocks{display:flex;flex-direction:column;gap:var(--spacing-8px);margin-top:var(--spacing-16px);width:100%}.drawer-todo-detail__selected-stock-item{align-items:center;background:var(--color-surface-default);border:var(--border-width-default) solid var(--color-border-default);border-radius:var(--radius-8px);display:flex;gap:var(--spacing-12px);padding:var(--spacing-12px);transition:background-color var(--transition-fast)}.drawer-todo-detail__selected-stock-item:hover{background:var(--color-state-normal-hover)}.drawer-todo-detail__selected-stock-content{align-items:flex-start;display:flex;flex:1 1;flex-direction:column;gap:var(--spacing-4px)}.drawer-todo-detail__selected-stock-title{color:var(--color-text-default)}.drawer-todo-detail__selected-stock-body{color:var(--color-text-sub)}.drawer-todo-detail__selected-stock-body.text-error{color:var(--color-text-error)}.drawer-todo-detail__selected-stock-body-row{align-items:baseline;display:flex;gap:var(--spacing-4px)}.drawer-todo-detail__selected-stock-body-row__number-to-buy{align-items:center;display:flex;gap:var(--spacing-8px);margin:0 var(--spacing-24px)}.drawer-todo-detail__selected-stock-actions{align-items:center;display:flex;flex-shrink:0}.drawer-todo-detail__empty-content{color:var(--color-text-weak);font-family:var(--font-family-base);font-size:var(--font-size-small);padding:var(--spacing-24px);text-align:center;width:100%}.drawer-todo-detail__checklist{display:flex;flex-direction:column;gap:var(--spacing-4px);margin:var(--spacing-4px) 0;padding:var(--spacing-4px) 0}@media (max-width:768px){.drawer-todo-detail__drawer{width:100vw}.drawer-todo-detail__functions,.drawer-todo-detail__header{padding:var(--spacing-12px) var(--spacing-16px)}.drawer-todo-detail__content{padding:0 var(--spacing-8px)}.drawer-todo-detail__datetime-inputs{align-items:flex-start;flex-direction:column;gap:var(--spacing-8px)}.drawer-todo-detail__date-input,.drawer-todo-detail__time-input{width:100%}.drawer-todo-detail__datetime-row{align-items:flex-start;flex-direction:column;gap:var(--spacing-12px)}}@media (prefers-reduced-motion:reduce){.drawer-todo-detail,.drawer-todo-detail__drawer,.drawer-todo-detail__overlay{transition:none}}@media (prefers-contrast:high){.drawer-todo-detail__drawer{backdrop-filter:none;-webkit-backdrop-filter:none;background-color:var(--color-surface-default);box-shadow:-4px 0 12px 0 #25292f33}.drawer-todo-detail__functions,.drawer-todo-detail__header{border-bottom-width:var(--border-width-bold)}}.drawer-todo-detail__drawer:focus{outline:none}.drawer-todo-detail__content{scrollbar-color:var(--color-border-default) #0000;scrollbar-width:thin}.drawer-todo-detail__content::-webkit-scrollbar{width:8px}.drawer-todo-detail__content::-webkit-scrollbar-track{background:#0000}.drawer-todo-detail__content::-webkit-scrollbar-thumb{background-clip:content-box;background-color:var(--color-border-default);border:2px solid #0000;border-radius:var(--radius-4px)}.drawer-todo-detail__content::-webkit-scrollbar-thumb:hover{background-color:var(--color-border-strong)}.input-textarea{background-color:var(--color-surface-default);box-sizing:border-box;display:flex;flex-direction:column}.input-textarea,.input-textarea__state-layer{border-radius:var(--radius-8px);position:relative;width:100%}.input-textarea__state-layer{border:var(--border-width-default) solid var(--color-border-default);transition:all var(--transition-fast)}.input-textarea__container{align-items:flex-start;box-sizing:border-box;display:flex;flex-direction:row;gap:var(--spacing-8px);min-height:48px;padding:var(--spacing-12px) var(--spacing-16px)}.input-textarea__icon{align-items:center;color:var(--color-object-sub-text);display:flex;flex-shrink:0;height:24px;justify-content:center;margin-top:2px;width:24px}.input-textarea__textarea{background:#0000;border:none;color:var(--color-text-default);flex:1 1;min-height:60px;min-width:0;outline:none;resize:vertical}.input-textarea__textarea::placeholder{color:var(--color-text-weak)}.input-textarea:hover:not(.input-textarea--disabled):not(.input-textarea--error) .input-textarea__state-layer{background-color:var(--color-state-normal-hover);border-color:var(--color-border-strong)}.input-textarea__textarea:focus-visible{outline:none}.input-textarea:has(.input-textarea__textarea:focus) .input-textarea__state-layer,.input-textarea__textarea:focus+* .input-textarea__state-layer{border-color:var(--color-border-focused)}.input-textarea--error .input-textarea__state-layer{border-color:var(--color-object-error)}.input-textarea--error:hover:not(.input-textarea--disabled) .input-textarea__state-layer{background-color:var(--color-state-normal-hover);border-color:var(--color-object-error)}.input-textarea--disabled{pointer-events:none}.input-textarea--disabled .input-textarea__state-layer{border-color:var(--color-border-default);opacity:.3}.input-textarea--disabled .input-textarea__textarea{color:var(--color-text-disabled);cursor:not-allowed}.input-textarea--disabled .input-textarea__icon{color:var(--color-object-disabled)}.input-textarea:focus-within:focus-visible{outline:var(--border-width-default) solid var(--color-border-focused);outline-offset:2px}@media (prefers-contrast:high){.input-textarea__state-layer{border-width:var(--border-width-bold)}}@media (prefers-reduced-motion:reduce){.input-textarea__state-layer{transition:none}}@media (max-width:768px){.input-textarea__container{min-height:44px;padding:var(--spacing-12px)}.input-textarea__textarea{font-size:var(--font-size-medium)}}.input-textarea__textarea[readonly]{background-color:var(--color-surface-light);color:var(--color-text-sub)}.input-textarea__textarea:focus::placeholder{opacity:.5}.drawer-tag-detail{bottom:0;left:0;opacity:0;pointer-events:none;position:fixed;right:0;top:0;transition:opacity var(--transition-normal);z-index:var(--z-modal)}.drawer-tag-detail--open{opacity:1;pointer-events:none}.drawer-tag-detail__drawer{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:var(--color-surface-default-alpha);bottom:0;box-shadow:-4px 0 8px 0 #25292f0d;display:flex;flex-direction:column;overflow:hidden;pointer-events:auto;position:absolute;right:0;top:0;transform:translateX(100%);transition:transform var(--transition-normal);width:min(680px,90vw)}.drawer-tag-detail--open .drawer-tag-detail__drawer{transform:translateX(0)}.drawer-tag-detail__header{border-bottom:1px solid var(--color-border-default);flex-direction:row;flex-shrink:0;gap:var(--spacing-16px);justify-content:space-between;padding:var(--spacing-16px) var(--spacing-24px)}.drawer-tag-detail__header,.drawer-tag-detail__header-left{align-items:center;display:flex}.drawer-tag-detail__header-center{align-items:center;display:flex;flex:1 1;justify-content:center}.drawer-tag-detail__header-right{align-items:center;display:flex}.drawer-tag-detail__content{display:flex;flex:1 1;flex-direction:column;gap:var(--spacing-16px);overflow-x:hidden;overflow-y:auto;padding:var(--spacing-24px)}.drawer-tag-detail__field{width:100%}@media (max-width:768px){.drawer-tag-detail__panel{width:100vw}.drawer-tag-detail__header{padding:var(--spacing-12px) var(--spacing-16px)}.drawer-tag-detail__content{padding:var(--spacing-16px)}}@media (prefers-reduced-motion:reduce){.drawer-tag-detail,.drawer-tag-detail__panel{transition:none}}.drawer-habit-detail{bottom:0;left:0;opacity:0;pointer-events:none;position:fixed;right:0;top:0;transition:opacity var(--transition-normal);z-index:var(--z-modal)}.drawer-habit-detail--open{opacity:1;pointer-events:none}.drawer-habit-detail__drawer{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:var(--color-surface-default-alpha);bottom:0;box-shadow:-4px 0 8px 0 #25292f0d;display:flex;flex-direction:column;overflow:hidden;pointer-events:auto;position:absolute;right:0;top:0;transform:translateX(100%);transition:transform var(--transition-normal);width:min(680px,90vw)}.drawer-habit-detail--open .drawer-habit-detail__drawer{transform:translateX(0)}.drawer-habit-detail__header{border-bottom:1px solid var(--color-border-default);flex-direction:row;flex-shrink:0;gap:var(--spacing-16px);justify-content:space-between;padding:var(--spacing-16px) var(--spacing-24px)}.drawer-habit-detail__header,.drawer-habit-detail__header-left{align-items:center;display:flex}.drawer-habit-detail__header-center{align-items:center;display:flex;flex:1 1;justify-content:center}.drawer-habit-detail__header-right{align-items:center;display:flex}.drawer-habit-detail__content{display:flex;flex:1 1;flex-direction:column;gap:var(--spacing-16px);overflow-x:hidden;overflow-y:auto;padding:var(--spacing-24px)}.drawer-habit-detail__field{width:100%}@media (max-width:768px){.drawer-habit-detail__header{padding:var(--spacing-12px) var(--spacing-16px)}.drawer-habit-detail__content{padding:var(--spacing-16px)}}@media (prefers-reduced-motion:reduce){.drawer-habit-detail,.drawer-habit-detail__drawer{transition:none}}.icons-page{margin:0 auto;max-width:1200px;padding:var(--spacing-24px)}.icons-page__header{border-bottom:1px solid var(--color-border-default);margin-bottom:var(--spacing-32px);padding-bottom:var(--spacing-24px)}.icons-page__title{color:var(--color-text-default);margin:0 0 var(--spacing-8px) 0}.icons-page__description{color:var(--color-text-weak);margin:0 0 var(--spacing-24px) 0}.icons-page__controls{align-items:flex-end;display:flex;flex-wrap:wrap;gap:var(--spacing-24px)}.icons-page__control{display:flex;flex-direction:column;gap:var(--spacing-8px)}.icons-page__control label{color:var(--color-text-default)}.icons-page__size-slider{appearance:none;background:var(--color-surface-weak);border-radius:var(--radius-4px);cursor:pointer;height:4px;outline:none;width:200px}.icons-page__size-slider::-webkit-slider-thumb{appearance:none;background:var(--color-surface-primary);border-radius:50%;box-shadow:0 2px 4px #0000001a;cursor:pointer;height:20px;width:20px}.icons-page__size-slider::-moz-range-thumb{background:var(--color-surface-primary);border:none;border-radius:50%;box-shadow:0 2px 4px #0000001a;cursor:pointer;height:20px;width:20px}.icons-page__search{background:var(--color-surface-default);border:1px solid var(--color-border-default);border-radius:var(--radius-8px);color:var(--color-text-default);outline:none;padding:var(--spacing-12px) var(--spacing-16px);transition:border-color var(--transition-fast);width:300px}.icons-page__search:focus{border-color:var(--color-border-focused)}.icons-page__search::placeholder{color:var(--color-text-weak)}.icons-page__content{margin-bottom:var(--spacing-48px)}.icons-page__grid{grid-gap:var(--spacing-16px);display:grid;gap:var(--spacing-16px);grid-template-columns:repeat(auto-fill,minmax(180px,1fr));margin-bottom:var(--spacing-24px)}.icons-page__no-results{color:var(--color-text-weak);padding:var(--spacing-48px);text-align:center}.icon-card{align-items:center;background:var(--color-surface-default);border:1px solid var(--color-border-default);border-radius:var(--radius-8px);cursor:pointer;display:flex;flex-direction:column;gap:var(--spacing-12px);justify-content:center;min-height:120px;padding:var(--spacing-20px);position:relative;transition:all var(--transition-fast)}.icon-card:hover{background:var(--color-surface-weak);border-color:var(--color-border-strong);box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.icon-card:active{box-shadow:0 2px 6px #0000001a;transform:translateY(0)}.icon-card__visual{align-items:center;color:var(--color-object-sub-text);display:flex;flex-shrink:0;justify-content:center}.icon-card__info{text-align:center;width:100%}.icon-card__name{color:var(--color-text-default);word-break:break-word}.icon-card__copied{animation:fadeInOut 2s ease-in-out;background:var(--color-surface-success);border-radius:var(--radius-4px);color:var(--color-text-on-dark-default);padding:var(--spacing-4px) var(--spacing-8px);position:absolute;right:var(--spacing-8px);top:var(--spacing-8px)}@keyframes fadeInOut{0%{opacity:0;transform:scale(.8)}20%{opacity:1;transform:scale(1)}80%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}.icons-page__usage{border-top:1px solid var(--color-border-default);padding-top:var(--spacing-24px)}.icons-page__usage h2{color:var(--color-text-default);margin:0 0 var(--spacing-16px) 0}.icons-page__code-example{background:var(--color-surface-weak);border:1px solid var(--color-border-default);border-radius:var(--radius-8px);color:var(--color-text-default);font-family:Monaco,Menlo,Ubuntu Mono,monospace;margin:0;overflow-x:auto;padding:var(--spacing-16px)}@media (max-width:768px){.icons-page{padding:var(--spacing-16px)}.icons-page__controls{align-items:stretch;flex-direction:column;gap:var(--spacing-16px)}.icons-page__search,.icons-page__size-slider{width:100%}.icons-page__grid{gap:var(--spacing-12px);grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.icon-card{min-height:100px;padding:var(--spacing-16px)}}@media (max-width:480px){.icons-page__grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.icon-card{min-height:80px;padding:var(--spacing-12px)}}.stock-menu{display:flex;flex-direction:column;gap:var(--spacing-4px);overflow-y:auto}.stock-menu-item{border-radius:var(--radius-8px)}.stock-menu-item-content{align-items:center;border-radius:var(--radius-8px);color:var(--color-text-default);display:flex;gap:var(--spacing-8px);justify-content:space-between;padding:var(--spacing-12px) var(--spacing-16px)}.stock-menu-left{align-items:center;display:inline-flex;gap:var(--spacing-8px);min-width:0}.stock-menu-item:hover .stock-menu-item-content{background-color:var(--color-state-normal-hover);cursor:pointer}.stock-menu-item.selected .stock-menu-item-content{background-color:var(--color-state-selected);color:var(--color-text-on-dark-default)}.stock-menu-count{color:var(--color-text-sub)}.stock-menu-item.selected .stock-menu-count{color:var(--color-text-on-dark-sub)}.stock-menu-item.drag-over-after,.stock-menu-item.drag-over-before{position:relative;z-index:1}.stock-menu-item.drag-over-before:before{top:-4px}.stock-menu-item.drag-over-after:after,.stock-menu-item.drag-over-before:before{background:var(--color-surface-primary);content:"";height:4px;left:0;opacity:.64;pointer-events:none;position:absolute;right:0;z-index:2}.stock-menu-item.drag-over-after:after{bottom:-4px}.stock-menu-item.dragging{opacity:.35}.stock-list{display:flex;flex-direction:column;gap:var(--spacing-12px)}.stock-row{background-color:var(--color-surface-default);border:1px solid var(--color-border-default);border-radius:var(--radius-16px);cursor:pointer}.stock-row.drag-over-after,.stock-row.drag-over-before{position:relative;z-index:1}.stock-row.drag-over-before:before{top:-9px}.stock-row.drag-over-after:after,.stock-row.drag-over-before:before{background:var(--color-surface-primary);content:"";height:4px;left:0;opacity:.64;pointer-events:none;position:absolute;right:0;z-index:2}.stock-row.drag-over-after:after{bottom:-9px}.stock-row.dragging{opacity:.35}.stock-row__state{align-items:center;border-radius:var(--radius-16px);display:flex;gap:var(--spacing-16px);min-height:113px;padding:var(--spacing-16px) var(--spacing-24px)}.stock-row:hover .stock-row__state{background:var(--color-state-normal-hover)}.stock-row__icon{align-items:center;color:var(--color-object-default);display:flex;flex-shrink:0;justify-content:center}.stock-row__text{flex:1 1;gap:var(--spacing-8px);min-width:0}.stock-row__meta,.stock-row__text{display:flex;flex-direction:column}.stock-row__meta{align-items:flex-start;gap:var(--spacing-4px);justify-content:space-between}.stock-row__place{min-width:0}.stock-row__count,.stock-row__place{align-items:center;color:var(--color-text-sub);display:flex;gap:var(--spacing-4px)}.stock-row__scock-manager{display:none}.stock-row:hover .stock-row__scock-manager{display:block}.stock-row__actions{flex-shrink:0}.stock-row__title{color:var(--color-text-default)}.stock-row__desc,.stock-row__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stock-row__desc{color:var(--color-text-sub)}.stock-list-empty{color:var(--color-text-light)}.input-select{background-color:var(--color-surface-default);box-sizing:border-box}.input-select,.input-select__state-layer{border-radius:var(--radius-8px);position:relative;width:100%}.input-select__state-layer{border:var(--border-width-default) solid var(--color-border-default);transition:all var(--transition-fast)}.input-select__container{align-items:center;box-sizing:border-box;display:flex;flex-direction:row;gap:var(--spacing-8px);min-height:48px;padding:var(--spacing-12px) var(--spacing-16px);position:relative}.input-select__container--combobox{position:relative}.input-select__icon{align-items:center;color:var(--color-object-sub-text);display:flex;flex-shrink:0;height:24px;justify-content:center;width:24px}.input-select__select{appearance:none;-webkit-appearance:none;-moz-appearance:none}.input-select__input,.input-select__select{background:#0000;border:none;color:var(--color-text-default);outline:none;width:100%}.input-select__chevron{align-items:center;color:var(--color-object-sub-text);display:flex;pointer-events:none;position:absolute;right:var(--spacing-12px)}.input-select__dropdown{background:var(--color-surface-default);border:1px solid var(--color-border-default);border-radius:var(--radius-8px);box-shadow:0 4px 12px #00000014;left:0;max-height:240px;overflow-y:auto;position:absolute;right:0;top:calc(100% + 4px);z-index:1000;z-index:var(--z-popover,1000)}.input-select__option{cursor:pointer;padding:var(--spacing-8px) var(--spacing-12px)}.input-select__option:hover{background:var(--color-state-normal-hover)}.input-select__option--active{background:var(--color-state-pressed)}.input-select__option--add{color:var(--color-text-default);color:var(--color-object-accent,var(--color-text-default));font-weight:600}.input-select:hover:not(.input-select--disabled):not(.input-select--error) .input-select__state-layer{background-color:var(--color-state-normal-hover);border-color:var(--color-border-strong)}.input-select--error .input-select__state-layer{border-color:var(--color-object-error)}.input-select--disabled{pointer-events:none}.input-select--disabled .input-select__state-layer{border-color:var(--color-border-default);opacity:.3}.input-select--disabled .input-select__select{color:var(--color-text-disabled);cursor:not-allowed}.drawer-stock-detail{bottom:0;left:0;opacity:0;pointer-events:none;position:fixed;right:0;top:0;transition:opacity var(--transition-normal);z-index:var(--z-modal)}.drawer-stock-detail--open{opacity:1}.drawer-stock-detail__drawer{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:var(--color-surface-default-alpha);bottom:0;box-shadow:-4px 0 8px 0 #25292f0d;display:flex;flex-direction:column;overflow:hidden;pointer-events:auto;position:absolute;right:0;top:0;transform:translateX(100%);transition:transform var(--transition-normal);width:min(680px,90vw)}.drawer-stock-detail--open .drawer-stock-detail__drawer{transform:translateX(0)}.drawer-stock-detail__header{align-items:center;border-bottom:1px solid var(--color-border-default);display:flex;flex-direction:row;flex-shrink:0;gap:var(--spacing-16px);justify-content:space-between;padding:var(--spacing-16px) var(--spacing-24px)}.drawer-stock-detail__header-left{align-items:center;display:flex;gap:var(--spacing-8px)}.drawer-stock-detail__header-center{align-items:center;display:flex;flex:1 1;justify-content:center}.drawer-stock-detail__header-right{align-items:center;display:flex}.drawer-stock-detail__content{display:flex;flex:1 1;flex-direction:column;gap:var(--spacing-16px);overflow-x:hidden;overflow-y:auto;padding:var(--spacing-24px)}.drawer-stock-detail__field{display:flex;gap:var(--spacing-8px);width:100%}.drawer-stock-detail__field__scock-manager{align-items:center;display:inline-flex;gap:var(--spacing-4px);margin-left:var(--spacing-4px);opacity:0;pointer-events:none;transition:opacity var(--transition-fast)}.drawer-stock-detail__field:hover .drawer-stock-detail__field__scock-manager{opacity:1;pointer-events:auto}@media (max-width:768px){.drawer-stock-detail__header{padding:var(--spacing-12px) var(--spacing-16px)}.drawer-stock-detail__content{padding:var(--spacing-16px)}}@media (prefers-reduced-motion:reduce){.drawer-stock-detail,.drawer-stock-detail__drawer,.drawer-stock-detail__field__scock-manager{transition:none}}.stock-nav{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;flex-direction:column;gap:var(--spacing-24px);max-height:calc(100% - var(--spacing-40px));width:100%}.stock-nav,.stock-panel{background:var(--color-surface-default-alpha);border-radius:var(--radius-16px);padding:var(--spacing-24px)}.stock-panel{border:var(--border-width-thin) solid var(--color-border-default);box-shadow:var(--shadow-md);min-height:400px}.stock-panel-header{margin-bottom:var(--spacing-24px)}.stock-panel-header-content{align-items:flex-start;display:flex;gap:var(--spacing-16px);justify-content:space-between}.stock-panel-title{color:var(--color-text-default)}.page-auth{align-items:center;background:var(--color-surface-on-dark);justify-content:center;min-height:100vh}.page-auth,.page-auth__card{display:flex;padding:var(--spacing-24px)}.page-auth__card{background:var(--color-surface-default);border-radius:var(--radius-16px);flex-direction:column;gap:var(--spacing-16px);width:min(520px,100%)}.page-auth__fields{flex-direction:column}.page-auth__actions,.page-auth__fields{display:flex;gap:var(--spacing-12px)}.page-auth__error{color:var(--color-text-error)}.app{background:linear-gradient(60.9454deg,#966af6,#3d84f5);color:var(--color-text-default);flex-direction:row;font-family:var(--font-family-base)}.app,.app-main{display:flex;height:100vh;overflow:hidden}.app-main{align-items:center;flex:1 1;flex-direction:column;min-width:0;padding:0 var(--spacing-40px)}.content-area{display:flex;flex-direction:row;gap:var(--spacing-40px);height:100%;max-width:1280px;overflow:hidden;width:100%}.content-nav{flex:0 0 400px;overflow-y:auto;padding-top:var(--spacing-40px);width:400px}.content-main{-ms-overflow-style:none;flex:1 1;height:100%;min-width:0;overflow-y:auto;padding:40px 0;scrollbar-width:none}.content-main::-webkit-scrollbar{display:none}@media (max-width:1200px){.app-main{padding:var(--spacing-32px) var(--spacing-24px)}.content-area{gap:var(--spacing-32px)}.content-nav{flex:0 0 360px;width:360px}}@media (max-width:968px){.content-area{flex-direction:column;gap:var(--spacing-24px);overflow-y:auto}.content-nav{flex:0 0 auto;overflow-y:visible;width:100%}.content-main{flex:1 0 auto;overflow-y:visible}}@media (max-width:768px){.app{flex-direction:column}.app-main{padding:var(--spacing-24px) var(--spacing-16px)}.content-area{gap:var(--spacing-16px)}}
/*# sourceMappingURL=main.52a771e9.css.map*/