:root{--bg-gradient: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);--card-bg: #ffffff;--header-text: #2c3e50;--todo-text: #333333;--border-color: #f0f0f0;--input-border: #e0e0e0;--shadow: rgba(0, 0, 0, .1);--primary-color: #6c63ff;--error-color: #e74c3c;--success-color: #2ecc71;--icon-default: #7f8c8d}.dark{--bg-gradient: linear-gradient(135deg, #1a1c2c 0%, #2c3e50 100%);--card-bg: #2d3436;--header-text: #f5f7fa;--todo-text: #dfe6e9;--border-color: #3d4446;--input-border: #4a4a4a;--shadow: rgba(0, 0, 0, .4);--icon-default: #b2bec3}*{box-sizing:border-box;margin:0;padding:0;font-family:Segoe UI,Roboto,Helvetica,Arial,sans-serif;transition:background .3s ease,color .3s ease}html,body{overflow-x:hidden}body{background:var(--bg-gradient);min-height:100vh}.system-controls{position:absolute!important;top:20px;right:20px;display:flex;align-items:center;gap:12px;z-index:1000}.settings-btn,.theme-toggle-btn{background:var(--card-bg);border:2px solid var(--primary-color);color:var(--primary-color);width:45px;height:45px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:22px;box-shadow:0 4px 10px var(--shadow)}.dark .theme-toggle-btn{color:#f1c40f;border-color:#f1c40f}.settings-menu{position:absolute;top:55px;right:0;background:var(--card-bg);border:1px solid var(--primary-color);padding:15px;border-radius:12px;box-shadow:0 10px 25px var(--shadow);min-width:220px}.setting-item{display:flex;justify-content:space-between;align-items:center;padding:10px 0;color:var(--header-text);font-weight:600;border-bottom:1px solid var(--border-color)}.setting-item:last-child{border-bottom:none}.setting-item.action{cursor:pointer;border-radius:8px;transition:.2s;padding:10px}.setting-item.action:hover{background:#6c63ff1a}.setting-item.logout{color:var(--error-color)}.switch{width:42px;height:22px;background:#bdc3c7;border-radius:20px;position:relative;cursor:pointer}.switch.on{background:var(--success-color)}.switch-handle{width:18px;height:18px;background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;transition:transform .3s}.switch.on .switch-handle{transform:translate(20px)}.login-container{display:flex;justify-content:center;padding:40px 20px}.login-card-mini{background:var(--card-bg);padding:30px;border-radius:16px;box-shadow:0 4px 20px var(--shadow);text-align:center;width:100%;max-width:400px}.auth-loading-inline{margin-top:10px;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--header-text);animation:fadeIn .35s ease-out}.auth-loading-spinner{width:18px;height:18px;border-radius:50%;border:2px solid rgba(0,0,0,.1);border-top-color:var(--primary-color);animation:spin .8s linear infinite}.auth-loading-text{font-size:14px;font-weight:600}.login-options{display:flex;justify-content:center;gap:30px;margin-top:20px}.login-option-item{display:flex;flex-direction:column;align-items:center;gap:6px}.login-option-item span{font-size:13px;font-weight:600;letter-spacing:.04em;color:var(--header-text)}.dark .login-option-item span{color:#dfe6e9}.login-icon-btn{width:60px;height:60px;border-radius:50%;border:1px solid var(--border-color);background:var(--card-bg);display:flex;align-items:center;justify-content:center;font-size:1.8rem;cursor:pointer;transition:.2s}.login-icon-btn:hover{transform:translateY(-3px);box-shadow:0 5px 15px var(--shadow)}.login-icon-btn{box-shadow:0 2px 6px var(--shadow),0 0 0 2px #0000000a}.dark .login-icon-btn{background:#fff;border-color:#ffffffe6;box-shadow:0 4px 12px #00000059,0 0 0 2px #8e8cffd9}.App{display:flex;flex-direction:column;align-items:center;padding:30px 10px}.app-loading-screen{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--bg-gradient);animation:fadeIn .4s ease-out}.app-loading-spinner{width:42px;height:42px;border-radius:50%;border:3px solid rgba(255,255,255,.3);border-top-color:var(--primary-color);animation:spin .9s linear infinite;margin-bottom:12px}.app-loading-text{color:var(--header-text);font-size:15px;font-weight:700;letter-spacing:.03em}.todo-header{margin-top:55px;margin-bottom:24px;font-size:38px;font-weight:900;letter-spacing:.12em;text-align:center;background:linear-gradient(90deg,#6c63ff,#ff6ec7);-webkit-background-clip:text;background-clip:text;color:transparent;position:relative;text-shadow:0 4px 10px rgba(0,0,0,.18)}.todo-header:before{content:"";position:absolute;left:50%;bottom:-8px;transform:translate(-50%);width:140px;height:4px;border-radius:999px;background:linear-gradient(90deg,#6c63ff,#ff6ec7);box-shadow:0 4px 12px #6c63ff66}.dark .todo-header{text-shadow:0 6px 14px rgba(0,0,0,.5)}.main{width:100%;max-width:550px;min-width:0;box-sizing:border-box;background-color:var(--card-bg);padding:25px;border-radius:16px;box-shadow:0 10px 30px var(--shadow);overflow-x:clip;overflow-y:visible}.todo-input{width:100%;padding:12px 5px;border:none;background:transparent;color:var(--todo-text);border-bottom:2px solid var(--input-border);font-size:16px;margin-bottom:15px;outline:none}.dark .todo-input::placeholder{color:#b2bec3!important;opacity:.8!important}.dark .todo-input::-webkit-input-placeholder{color:#b2bec3!important}.dark .todo-input::-moz-placeholder{color:#b2bec3!important}.dark .todo-input:-ms-input-placeholder{color:#b2bec3!important}.dark .todo-input:focus{border-bottom-color:var(--primary-color);color:#fff}.todo-create-button{width:100%;padding:15px;border:none;border-radius:8px;background-color:var(--primary-color);color:#fff;font-weight:700;cursor:pointer;transition:.3s}.todo-create-button:hover{opacity:.9;transform:translateY(-1px)}.todo-create-disabled{pointer-events:none;opacity:.65}.todo-create-disabled .todo-create-button:disabled{cursor:not-allowed}.todo-create-row{display:flex;align-items:center;gap:10px;margin-bottom:12px}.todo-create-row .todo-input-text{flex:1;min-width:0;margin-bottom:0}.deadline-trigger-wrap{position:relative;flex-shrink:0;width:44px;height:44px;cursor:pointer}.deadline-input-hidden{position:absolute;left:0;top:0;width:0;height:0;opacity:0;pointer-events:none;overflow:hidden}.deadline-trigger-btn{position:absolute;left:0;top:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--input-border);border-radius:10px;background:var(--card-bg);color:var(--icon-default);pointer-events:none;transition:color .2s,border-color .2s,background .2s}.deadline-trigger-wrap:hover .deadline-trigger-btn{color:var(--primary-color);border-color:var(--primary-color);background:#6c63ff14}.deadline-trigger-icon{font-size:22px}.todo-edit-deadline .deadline-label{font-size:13px;font-weight:600;color:var(--icon-default);white-space:nowrap}.deadline-input{flex:1;min-width:0;padding:8px 10px;border:1px solid var(--input-border);border-radius:8px;background:var(--card-bg);color:var(--todo-text);font-size:14px}.deadline-css{display:block;font-size:12px;color:var(--primary-color);opacity:.9;margin-top:2px}.date-time-picker-wrap{position:relative;flex-shrink:0}.date-time-picker-trigger{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:none;background:transparent;cursor:pointer}.date-time-picker-trigger .deadline-trigger-btn{position:relative;pointer-events:none}.date-time-picker-badge{position:absolute;top:2px;right:2px;width:14px;height:14px;border-radius:50%;background:var(--primary-color);color:#fff;font-size:10px;display:flex;align-items:center;justify-content:center;line-height:1}.date-time-picker-popover{position:absolute;top:100%;right:0;margin-top:6px;z-index:1000;background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 8px 24px var(--shadow);padding:10px 12px;min-width:260px}.date-time-picker-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid var(--border-color)}.date-time-picker-title{font-size:13px;font-weight:600;color:var(--header-text);letter-spacing:.02em}.date-time-picker-header-actions{display:flex;align-items:center;gap:8px}.date-time-picker-clear,.date-time-picker-close{font-size:12px;background:none;border:none;cursor:pointer;padding:4px 8px;border-radius:6px;transition:background .2s}.date-time-picker-clear{color:var(--primary-color)}.date-time-picker-clear:hover{background:#6c63ff1f}.date-time-picker-close{color:var(--header-text);font-weight:600}.date-time-picker-close:hover{background:var(--border-color)}.date-time-picker-header-with-back{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px}.date-time-picker-back{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;font-size:13px;font-weight:600;color:var(--primary-color);background:none;border:none;border-radius:8px;cursor:pointer;transition:background .2s;justify-self:start}.date-time-picker-back:hover{background:#6c63ff1f}.date-time-picker-back-icon{font-size:18px}.date-time-picker-title-center{justify-self:center;font-size:12px;color:var(--icon-default);font-weight:500}.date-time-picker-header-with-back .date-time-picker-header-actions{justify-self:end}.date-time-picker-wrap .react-datepicker{font-family:inherit;border:none;background:transparent}.date-time-picker-wrap .react-datepicker__month-container{float:none}.date-time-picker-wrap .react-datepicker__header{background:transparent;border-bottom:none;padding-top:0;padding-bottom:10px}.date-time-picker-wrap .react-datepicker__current-month{color:var(--header-text);font-size:13px;font-weight:600;margin-bottom:8px;letter-spacing:.02em}.date-time-picker-wrap .react-datepicker__day-names{margin-bottom:2px}.date-time-picker-wrap .react-datepicker__day-name{color:var(--icon-default);font-weight:600;font-size:10px;width:1.85rem;line-height:1.6rem;margin:.15rem;text-transform:uppercase;letter-spacing:.03em}.date-time-picker-wrap .react-datepicker__month{margin:0}.date-time-picker-wrap .react-datepicker__week{display:flex;justify-content:space-between}.date-time-picker-wrap .react-datepicker__day{color:var(--todo-text);width:1.85rem;line-height:1.6rem;margin:.15rem;border-radius:8px;font-size:12px;transition:background .15s ease,color .15s ease}.date-time-picker-wrap .react-datepicker__day:hover,.date-time-picker-wrap .react-datepicker__day--keyboard-selected{background:#6c63ff33;color:var(--primary-color)}.date-time-picker-wrap .react-datepicker__day--selected,.date-time-picker-wrap .react-datepicker__day--in-selecting-range{background:var(--primary-color)!important;color:#fff!important}.date-time-picker-wrap .react-datepicker__day--outside-month{color:var(--icon-default);opacity:.4}.date-time-picker-wrap .react-datepicker__day--disabled{text-decoration:line-through;opacity:.6}.date-time-picker-wrap .react-datepicker__navigation{top:2px}.date-time-picker-wrap .react-datepicker__navigation-icon:before{border-color:var(--icon-default);border-width:2px 2px 0 0;height:8px;width:8px}.date-time-picker-wrap .react-datepicker__navigation:hover .react-datepicker__navigation-icon:before{border-color:var(--primary-color)}.date-time-picker-wrap .react-datepicker__time-container{float:none;border-left:1px solid var(--border-color);width:90px;min-width:90px;background:var(--card-bg)!important;align-self:stretch}.date-time-picker-wrap .react-datepicker__time-container .react-datepicker__time{background:var(--card-bg)!important;border:none;border-radius:0}.date-time-picker-wrap .react-datepicker__time-container .react-datepicker__time-box{width:90px;background:var(--card-bg)!important}.date-time-picker-wrap .react-datepicker__time-container .react-datepicker__time-box .react-datepicker__time-list{max-height:200px;border-radius:0;background:var(--card-bg)!important;padding:4px 0}.date-time-picker-wrap .react-datepicker__time-list::-webkit-scrollbar{width:6px}.date-time-picker-wrap .react-datepicker__time-list::-webkit-scrollbar-track{background:var(--border-color);border-radius:3px}.date-time-picker-wrap .react-datepicker__time-list::-webkit-scrollbar-thumb{background:var(--primary-color);border-radius:3px}.date-time-picker-wrap .react-datepicker-time__header{color:var(--header-text);font-size:12px;font-weight:600;padding-top:8px;letter-spacing:.03em}.date-time-picker-wrap .react-datepicker__time-list-item{color:var(--todo-text)!important;font-size:13px;padding:8px 12px;height:auto;line-height:1.3;transition:background .15s ease;background:var(--card-bg)!important}.date-time-picker-wrap .react-datepicker__time-list-item:hover{background:#6c63ff26!important}.date-time-picker-wrap .react-datepicker__time-list-item--selected,.date-time-picker-wrap .react-datepicker__time-list-item--selected:hover{background:var(--primary-color)!important;color:#fff!important}.date-time-picker-wrap .react-datepicker__time-list-item--disabled{text-decoration:line-through;opacity:.6}.date-time-picker-selected-time{display:flex;align-items:center;gap:8px;margin-bottom:8px;padding:8px 12px;border-radius:10px;background:#6c63ff1a;border:1px solid rgba(108,99,255,.25);transition:box-shadow .25s ease,transform .25s ease}.date-time-picker-selected-time-just-updated{animation:date-time-picker-pulse .5s ease}@keyframes date-time-picker-pulse{0%{box-shadow:0 0 #6c63ff66}50%{box-shadow:0 0 0 6px #6c63ff26}to{box-shadow:0 0 #6c63ff00}}.date-time-picker-selected-label{font-size:11px;font-weight:600;color:var(--icon-default);text-transform:uppercase;letter-spacing:.04em}.date-time-picker-selected-value{display:inline-flex;align-items:center;gap:6px;font-size:18px;font-weight:700;color:var(--primary-color);letter-spacing:.02em}.date-time-picker-selected-check{font-size:20px;color:var(--primary-color);flex-shrink:0}.date-time-picker-wheels{display:flex;flex-direction:column;gap:0;margin-top:8px;padding-top:8px;border-top:1px solid var(--border-color)}.date-time-picker-wheel-row{display:flex;gap:10px;justify-content:center}.date-time-picker-wheel-col{flex:1;display:flex;flex-direction:column;align-items:center;min-width:0}.date-time-picker-wheel-label{font-size:10px;font-weight:600;color:var(--icon-default);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.date-time-picker-wheel-wrap{position:relative;width:100%;max-width:56px}.date-time-picker-wheel-wrap:after{content:"";position:absolute;left:0;right:0;top:50%;height:32px;transform:translateY(-50%);pointer-events:none;border-radius:6px;background:#6c63ff26;margin:0 2px}.date-time-picker-wheel{width:100%;max-width:56px;height:140px;overflow-y:auto;overflow-x:hidden;scroll-snap-type:y mandatory;-webkit-overflow-scrolling:touch;border:1px solid var(--border-color);border-radius:10px;background:var(--card-bg)}.date-time-picker-wheel::-webkit-scrollbar{width:4px}.date-time-picker-wheel::-webkit-scrollbar-track{background:var(--border-color);border-radius:2px}.date-time-picker-wheel::-webkit-scrollbar-thumb{background:var(--primary-color);border-radius:2px}.date-time-picker-wheel-pad{scroll-snap-align:none;flex-shrink:0}.date-time-picker-wheel-item{scroll-snap-align:center;scroll-snap-stop:always;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;color:var(--todo-text);border-radius:6px;margin:0 2px;transition:background .15s,color .15s;cursor:pointer}.date-time-picker-wheel-item:hover{color:var(--primary-color)}.date-time-picker-wheel-item.is-selected{background:var(--primary-color);color:#fff!important}.date-time-picker-custom-time{margin-top:12px;padding-top:12px;border-top:1px solid var(--border-color)}.date-time-picker-custom-label{display:block;font-size:12px;font-weight:600;color:var(--header-text);margin-bottom:8px}.date-time-picker-custom-inputs{display:flex;align-items:center;gap:8px}.date-time-picker-custom-field{display:flex;flex-direction:column;gap:4px;flex:1}.date-time-picker-custom-field span{font-size:11px;color:var(--icon-default)}.date-time-picker-custom-field input{width:100%;padding:6px 8px;border:1px solid var(--input-border);border-radius:8px;background:var(--card-bg);color:var(--todo-text);font-size:14px}.date-time-picker-custom-field input:focus{outline:none;border-color:var(--primary-color)}.date-time-picker-custom-sep{font-size:18px;font-weight:600;color:var(--icon-default);align-self:flex-end;margin-bottom:6px}.date-time-picker-apply-btn{align-self:flex-end;margin-bottom:2px;padding:6px 12px;font-size:12px;font-weight:600;color:#fff;background:var(--primary-color);border:none;border-radius:8px;cursor:pointer;transition:opacity .2s}.date-time-picker-apply-btn:hover{opacity:.9}.todo-edit-deadline .date-time-picker-wrap{width:100%}.todo-edit-deadline .date-time-picker-trigger{width:100%;height:auto;min-height:44px;justify-content:flex-start;gap:8px;padding:8px 12px;border:1px solid var(--input-border);border-radius:10px;background:var(--card-bg)}.todo-edit-deadline .date-time-picker-popover{left:0;right:0;min-width:auto}.progress-container{margin:20px 0}.progress-label{display:flex;justify-content:space-between;margin-bottom:8px;font-weight:700;color:var(--header-text)}.progress-bar-background{width:100%;height:10px;background-color:var(--border-color);border-radius:10px;overflow:hidden}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#6c63ff,#a29bfe);transition:width .5s ease}.filter-wrapper{display:flex;flex-direction:column;gap:15px;margin:25px 0;min-width:0;overflow-x:clip;overflow-y:visible}.filter-container{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.filter-btn{flex:1;min-width:90px;padding:10px 8px;font-size:13px;font-weight:700;border:2px solid var(--border-color);border-radius:20px;background:transparent;color:var(--icon-default);cursor:pointer}.filter-btn.active{background-color:var(--primary-color);color:#fff;border-color:var(--primary-color)}.bulk-actions{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;min-width:0}.bulk-btn{flex:1;padding:10px;border-radius:8px;border:none;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px}.clear-completed{background:#2ecc711a;color:var(--success-color)}.clear-all{background:#e74c3c1a;color:var(--error-color)}.complete-selected{background:#3498db1f;color:#2980b9}.selection-toggle{background:#6c63ff0d;color:var(--primary-color);border:1px solid rgba(108,99,255,.3)}.selection-toggle.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.dark .selection-toggle{background:#6c63ff26;color:#dfe6ff;border-color:#6c63ff80}.dark .selection-toggle.active{background:#8e8cff;color:#fff;border-color:#8e8cff}.selection-row{margin-top:4px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}.selection-all-btn{background:#6c63ff0f;border:1px solid rgba(108,99,255,.4);color:var(--primary-color);font-size:12px;cursor:pointer;padding:4px 10px;border-radius:999px;white-space:nowrap}.dark .selection-all-btn{background:#6c63ff2e;border-color:#6c63ffb3;color:#dfe6ff}.selection-info{flex:1;min-width:0;text-align:center;font-size:14px;opacity:.85;color:var(--icon-default)}.todo-row-container{display:flex;align-items:center;gap:12px;margin-top:15px;position:relative}.todo-row-container.dropdown-open{z-index:20}.todo-check-wrap{display:flex;align-items:center;justify-content:center;min-width:28px;min-height:28px;cursor:pointer;flex-shrink:0}.todo-check-minimal{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:2px solid var(--icon-default);border-radius:50%;background:transparent;transition:background .2s,border-color .2s,color .2s}.todo-check-minimal.completed{background:var(--success-color);border-color:var(--success-color)}.todo-check-minimal-tick{color:#fff;font-size:13px;font-weight:700;line-height:1}.todo-icons.icon-restore{flex-shrink:0}@media(max-width:768px){.todo-row-container{gap:8px}.drag-handle{display:none}.todo-check-wrap{min-width:24px;min-height:24px}.todo-check-minimal{width:22px;height:22px}.todo-check-minimal-tick{font-size:12px}.todo-icons.icon-restore{font-size:26px!important}.todo-lists{padding:10px 14px}}.todo-select-checkbox{display:flex;align-items:center;justify-content:center;flex-shrink:0}.todo-select-checkbox input[type=checkbox]{width:22px;height:22px;cursor:pointer;border-radius:6px;accent-color:var(--primary-color)}.todo-swipe-wrapper{position:relative;flex:1;overflow:hidden;min-width:0;border-radius:12px}.todo-swipe-actions{position:absolute;top:0;right:0;bottom:0;width:72px;display:flex;align-items:center;justify-content:center;background:var(--error-color);z-index:0;border-radius:0 12px 12px 0;margin-right:1px}.todo-swipe-delete-btn{width:100%;height:100%;border:none;background:transparent;color:#fff;font-size:14px;font-weight:600;cursor:pointer;padding:0 8px}.todo-swipe-content-wrap{flex:1;min-width:0;position:relative;overflow:hidden}.todo-swipe-content{position:relative;z-index:1;width:100%;transition:transform .28s ease-out;touch-action:pan-y;border-radius:12px;overflow:hidden;background:var(--card-bg)}.todo-swipe-content .todo-lists{flex:1}.todo-swipe-wrapper.swipe-open .todo-swipe-content,.todo-swipe-wrapper.swipe-open .todo-swipe-content .todo-lists{border-radius:12px 0 0 12px}.todo-swipe-wrapper.swipe-open .todo-swipe-actions{top:2px;bottom:2px;right:1px;border-radius:0 10px 10px 0;z-index:2}@media(min-width:769px){.todo-swipe-actions{width:0;padding:0;overflow:hidden;pointer-events:none}}.todo-lists{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--border-color);padding:12px 18px;border-radius:12px;background-color:var(--card-bg);flex:1;box-shadow:0 2px 5px var(--shadow)}.todo-lists.editable{flex-direction:column;align-items:stretch;gap:0}.todo-edit-row{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%}.todo-edit-actions-row{display:flex;gap:10px;width:100%;margin-top:12px}.todo-edit-btn-delete,.todo-edit-btn-save{flex:1;padding:12px 16px;font-size:14px;font-weight:600;border:none;border-radius:10px;cursor:pointer;transition:opacity .2s,transform .1s}.todo-edit-btn-delete{color:#fff;background:var(--error-color)}.todo-edit-btn-delete:hover{opacity:.92}.todo-edit-btn-delete:active{transform:scale(.98)}.todo-edit-btn-save{color:#fff;background:var(--success-color)}.todo-edit-btn-save:hover{opacity:.92}.todo-edit-btn-save:active{transform:scale(.98)}.truncated-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:250px;color:var(--todo-text)}.full-text{white-space:normal!important;word-break:break-word;max-height:200px;overflow-y:auto;display:block}.todo-icons-container{display:flex;align-items:center;gap:15px}.todo-edit-actions-wrap{position:relative}.todo-edit-actions-trigger{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;font-size:13px;font-weight:600;color:var(--primary-color);background:var(--card-bg);border:2px solid var(--primary-color);border-radius:10px;cursor:pointer;transition:box-shadow .2s,background .2s}.todo-edit-actions-trigger:hover{background:#6c63ff14;box-shadow:0 2px 8px var(--shadow)}.dark .todo-edit-actions-trigger,.dark .todo-edit-actions-trigger .todo-edit-actions-chevron{color:#b2bec3}.todo-edit-actions-chevron{font-size:14px;transition:transform .2s}.todo-edit-actions-chevron.open{transform:rotate(180deg)}.todo-edit-actions-menu{position:absolute;top:100%;right:0;margin-top:6px;min-width:280px;padding:12px;background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 8px 24px var(--shadow);z-index:1050;display:flex;flex-direction:column;gap:10px}.todo-edit-actions-deadline{width:100%;padding-bottom:8px;border-bottom:1px solid var(--border-color)}.todo-edit-actions-deadline .date-time-picker-wrap{width:100%}.todo-edit-actions-deadline .date-time-picker-trigger{width:100%;min-height:44px}.todo-edit-actions-item{display:block;width:100%;padding:10px 12px;font-size:13px;font-weight:500;text-align:left;border:none;border-radius:8px;cursor:pointer;background:transparent;color:var(--todo-text);transition:background .15s}.todo-edit-actions-item:hover{background:#0000000f}.dark .todo-edit-actions-item:hover{background:#ffffff14}.todo-edit-actions-save{color:var(--success-color)}.todo-edit-actions-delete{color:var(--error-color)}.todo-icons{font-size:26px;cursor:pointer;color:var(--icon-default)}.icon-remove{color:var(--error-color)!important}.empty-text{padding:20px;border-radius:12px;border:1px dashed var(--primary-color);color:var(--icon-default);text-align:center;animation:fadeIn .5s ease}.dark .empty-text,.dark .main p,.dark .empty-state-text{color:var(--todo-text)!important;opacity:1!important}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(max-width:768px){.filter-wrapper{margin-left:0;margin-right:0}.bulk-actions{gap:8px}.bulk-btn{flex:1 1 auto;min-width:0;padding:8px 6px;font-size:12px}.bulk-btn span{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.selection-row{width:100%}.selection-all-btn{flex-shrink:0;font-size:11px;padding:4px 8px}.selection-info{font-size:12px;overflow:hidden;text-overflow:ellipsis}}@media(max-width:480px){.main{padding-left:12px;padding-right:12px}.todo-create-row{flex-wrap:wrap}.filter-btn{flex:1 1 calc(50% - 10px);min-width:110px;font-size:11px}.truncated-text{max-width:150px}.system-controls{top:10px;right:10px}.bulk-actions{gap:6px}.bulk-btn{flex:1 1 calc(50% - 5px);min-width:0;padding:8px 4px;font-size:11px;gap:4px}.bulk-btn svg{flex-shrink:0}.bulk-btn span{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.selection-toggle{flex:1 1 100%}.selection-row{gap:6px}.selection-all-btn{font-size:11px;padding:4px 8px}.selection-info{flex:1 1 100%;font-size:12px;text-align:center}.todo-lists:not(.expanded):not(.editable){max-height:90px;overflow:hidden;align-items:center}.todo-lists.expanded,.todo-lists.editable{max-height:none;overflow:visible;align-items:flex-start}.todo-swipe-content-wrap:has(.todo-lists.editable),.todo-swipe-content:has(.todo-lists.editable){overflow:visible}}.wide-toast{width:90%!important;max-width:450px!important;text-align:center;border-radius:12px!important;margin:0 auto!important;font-size:14px!important}@media(max-width:480px){.wide-toast{width:100%!important;padding:10px 15px!important}}.user-avatar-small{width:35px;height:35px;border-radius:50%;object-fit:cover}.user-avatar-small.is-guest{border:2px dashed #ccc;padding:1px}.icon-blue{color:#4285f4!important}.footer{margin-top:40px;padding:20px;text-align:center;opacity:.9;transition:color .3s ease}.footer-name{color:var(--primary-color);font-weight:800}.dark .footer{color:var(--todo-text)!important}@media(max-width:480px){.footer{margin-top:20px;padding:10px;font-size:14px}}.shake{animation:shake-animation .25s both}@keyframes shake-animation{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.App:has(.filter-btn.active[data-filter=archive]) .main{border-top:5px solid #7d5fff;box-shadow:0 15px 35px #7d5fff33}.empty-text{background:#7d5fff0d;padding:20px;border-radius:12px;border:1px dashed var(--primary-color);color:var(--icon-default);text-align:center;animation:fadeIn .5s ease}.system-controls{position:absolute;top:20px;right:20px;display:flex;align-items:center;gap:15px;z-index:1000}.user-profile-mini{display:flex;align-items:center;background:var(--card-bg);padding:2px;border-radius:50px;border:2px solid var(--primary-color);box-shadow:0 4px 10px var(--shadow);transition:all .3s ease}.user-avatar-small{width:45px;height:45px;border-radius:50%;object-fit:cover;display:block}.user-avatar-small.is-guest{border:2px dashed #ccc;background:#f9f9f9}.settings-btn,.theme-toggle-btn{width:50px;height:50px}.dark .todo-lists input,.dark .todo-lists .truncated-text,.dark .todo-lists .full-text{color:#fff!important;-webkit-text-fill-color:#ffffff!important}.dark .todo-lists input:focus{color:#fff!important;-webkit-text-fill-color:#ffffff!important;background-color:transparent!important;outline:none!important}.dark .icon-remove{color:var(--error-color)!important}.date-css{font-size:10px;font-weight:300;margin-top:4px;display:block;transition:color .3s ease}.date-css{color:#7f8c8d;opacity:.7}.dark .date-css{color:#b2bec3!important;-webkit-text-fill-color:#b2bec3!important;opacity:.7!important;font-weight:500;font-size:13px}.dark .truncated-text,.dark .full-text,.dark .todo-lists input{color:#fff!important;-webkit-text-fill-color:#ffffff!important;font-size:16px!important;font-weight:500!important;opacity:1!important}.dark .todo-lists.is-completed .truncated-text,.dark .todo-lists.is-completed .full-text{opacity:.6!important}.date-css{color:#a41ce4!important;-webkit-text-fill-color:#a41ce4!important;opacity:.7!important;font-weight:500;font-size:13px}.todo-row-container{touch-action:pan-y;cursor:grab}.todo-row-container:active{cursor:grabbing}.todo-row-container.long-press-hold{touch-action:none}.todo-swipe-content.long-press-hold{box-shadow:0 6px 16px #00000026;transition:box-shadow .15s ease}.dark .todo-swipe-content.long-press-hold{box-shadow:0 6px 16px #00000059}.drag-handle{touch-action:none;cursor:grab;color:#6c63ff}.drag-handle:active{cursor:grabbing}.dark .drag-handle{color:#ffc857}.todo-list-container{user-select:none;-webkit-user-select:none}
