*{margin:0;padding:0;box-sizing:border-box}.calendar-container{width:100vw;height:100vh;display:flex;flex-direction:column;padding:2vh 2vw;overflow:hidden}.task-list-container{background:#ffffffbf;border-radius:24px;padding:2.5rem;max-width:450px;margin:0;animation:fadeIn .3s ease-out;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 20px 60px #0000001f,0 8px 20px #00000014,0 2px 8px #0000000a;border:1px solid rgba(255,255,255,.9)}.header-with-counter{display:flex;align-items:center;justify-content:center;gap:1rem;margin-bottom:1.5rem}.task-list-title{color:#1a1a1a;font-size:clamp(1.75rem,3.5vw,2.5rem);margin:0;text-align:center;font-weight:800;letter-spacing:-.5px;background:linear-gradient(135deg,#1a1a1a,#4a4a4a);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.completion-counter{font-size:clamp(1.5rem,3vw,2rem);font-weight:700;color:#1a1a1a;animation:fadeIn .5s ease-out}.task-list{display:flex;flex-direction:column;gap:1rem}.task-item{display:flex;align-items:center;gap:1.25rem;padding:1.25rem 1.5rem;background:#ffffffb3;border-radius:16px;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #00000014,0 1px 2px #0000000f;position:relative;overflow:visible;border:1px solid rgba(0,0,0,.04)}.task-item:hover{transform:translateY(-3px);box-shadow:0 10px 25px #0000001a,0 4px 10px #00000014;border-color:#10b98133}.task-checkbox{width:28px;height:28px;border:2.5px solid #d1d5db;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .25s cubic-bezier(.4,0,.2,1);flex-shrink:0;position:relative;background:#fff}.task-checkbox:hover{border-color:#10b981;transform:scale(1.1)}.task-checkbox.checked{background:linear-gradient(135deg,#10b981,#059669);border-color:#10b981;animation:checkboxPop .4s cubic-bezier(.68,-.55,.265,1.55);box-shadow:0 2px 8px #10b9814d}@keyframes checkboxPop{0%{transform:scale(1)}50%{transform:scale(1.3) rotate(5deg)}to{transform:scale(1) rotate(0)}}.task-checkmark{width:16px;height:16px;animation:checkmarkDraw .3s ease-in-out .1s both}@keyframes checkmarkDraw{0%{stroke-dasharray:0 50;opacity:0}to{stroke-dasharray:50 0;opacity:1}}.task-text{font-size:clamp(1.05rem,2vw,1.25rem);color:#1f2937;font-weight:500;line-height:1.5;letter-spacing:-.01em;transition:all .3s ease;flex:1}.task-text.completed{text-decoration:line-through;color:#9ca3af;opacity:.7}.task-complete-message{margin-top:1.5rem;padding:1rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border-radius:12px;text-align:center;font-size:clamp(1rem,2vw,1.2rem);font-weight:600;animation:fadeIn .5s ease-out}.completion-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;display:flex;align-items:center;justify-content:center;z-index:1000;pointer-events:none;animation:fadeIn .3s ease-in-out;background:#00000080;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.completion-gif{max-width:80vw;max-height:80vh;min-width:50vw;min-height:50vh;object-fit:contain;filter:drop-shadow(0 0 20px rgba(255,255,255,.5));border-radius:20px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.settings-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;background:linear-gradient(135deg,#667eea,#764ba2);overflow-y:auto}.settings-card{background:#fffffff2;border-radius:20px;padding:2rem;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.settings-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #eee}.settings-header h1{margin:0;font-size:2rem;color:#333}.back-link{color:#667eea;text-decoration:none;font-weight:500;padding:.5rem 1rem;border-radius:8px;transition:background-color .2s}.back-link:hover{background-color:#667eea1a}.settings-content{display:flex;flex-direction:column;gap:2rem}.info-box{padding:1rem;background:#e0f2fe;border-left:4px solid #667eea;border-radius:8px;color:#1e40af;font-size:.9rem}.info-box code{background:#667eea33;padding:.2rem .4rem;border-radius:4px;font-family:Courier New,monospace;font-size:.85rem}.setting-group{display:flex;flex-direction:column;gap:.75rem}.setting-group label{font-weight:600;color:#555;font-size:1rem}.setting-select{padding:.75rem;border:2px solid #ddd;border-radius:8px;font-size:1rem;background:#fff;cursor:pointer;transition:border-color .2s}.setting-select:hover{border-color:#667eea}.setting-select:focus{outline:none;border-color:#667eea}.setting-row{display:flex;gap:.75rem;align-items:center}.setting-row .setting-select{flex:1}.preview-button{padding:.75rem 1.5rem;background:#667eea;color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:500;transition:background-color .2s;white-space:nowrap}.preview-button:hover{background:#5568d3}.preview-box{margin-top:.5rem;border:2px solid #eee;border-radius:8px;overflow:hidden;background:#f9f9f9}.preview-image{width:100%;height:200px;object-fit:cover;display:block}.preview-gif{width:100%;max-height:200px;object-fit:contain;display:block;background:#000}.settings-actions{margin-top:1rem;display:flex;justify-content:center}.save-button{padding:1rem 3rem;background:#667eea;color:#fff;border:none;border-radius:10px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 4px 15px #667eea4d}.save-button:hover{background:#5568d3;transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.save-button:active{transform:translateY(0)}.add-custom-form{display:flex;flex-direction:column;gap:.5rem;margin-top:1rem;padding:1rem;background:#f9f9f9;border-radius:8px;border:2px dashed #ddd}.custom-input{padding:.75rem;border:2px solid #ddd;border-radius:8px;font-size:.95rem;transition:border-color .2s}.custom-input:focus{outline:none;border-color:#667eea}.add-button{padding:.75rem;background:#10b981;color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:500;transition:background-color .2s}.add-button:hover{background:#059669}.custom-list{margin-top:.75rem;padding:.75rem;background:#f0f0f0;border-radius:8px}.custom-list small{display:block;margin-bottom:.5rem;font-weight:600;color:#666}.custom-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem;background:#fff;border-radius:6px;margin-bottom:.5rem}.custom-item:last-child{margin-bottom:0}.custom-item span{flex:1;font-size:.9rem}.delete-btn{background:#ef4444;color:#fff;border:none;border-radius:4px;padding:.25rem .5rem;cursor:pointer;font-weight:700;transition:background-color .2s}.delete-btn:hover{background:#dc2626}@media (max-width: 600px){.settings-container{padding:1rem}.settings-card{padding:1.5rem}.settings-header{flex-direction:column;align-items:flex-start;gap:1rem}.setting-row{flex-direction:column}.setting-row .setting-select{width:100%}}.todo-manager-container{width:100vw;height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem}.todo-manager-content{background:#fffffff2;border-radius:20px;padding:2rem;max-width:800px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.todo-header{display:flex;align-items:center;gap:1rem;margin-bottom:2rem}.back-button{background:#667eea33;border:none;color:#667eea;font-size:1rem;padding:.5rem 1rem;border-radius:10px;cursor:pointer;transition:all .3s ease;font-weight:600}.back-button:hover{background:#667eea4d;transform:translate(-2px)}.todo-title{color:#333;font-size:clamp(1.5rem,4vw,2.5rem);font-weight:700;margin:0}.add-task-section{display:flex;gap:1rem;margin-bottom:2rem}.task-input{flex:1;padding:1rem;font-size:1rem;border:2px solid #e0e0e0;border-radius:10px;outline:none;transition:all .3s ease}.task-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.add-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff;font-size:1rem;padding:1rem 2rem;border-radius:10px;cursor:pointer;transition:all .3s ease;font-weight:600;white-space:nowrap}.add-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.add-button:active{transform:translateY(0)}.tasks-section{display:flex;flex-direction:column;gap:1rem}.no-tasks{text-align:center;color:#999;font-size:1.2rem;padding:2rem}.task-item-edit{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:#fff;border:2px solid #e0e0e0;border-radius:10px;transition:all .3s ease}.task-item-edit:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea1a}.task-text-edit{flex:1;font-size:1.1rem;color:#333;font-weight:500}.edit-input{flex:1;padding:.5rem;font-size:1.1rem;border:2px solid #667eea;border-radius:8px;outline:none;margin-right:1rem}.button-group{display:flex;gap:.5rem}.edit-button,.delete-button,.save-button,.cancel-button{background:transparent;border:none;font-size:1.5rem;cursor:pointer;transition:all .3s ease;padding:.5rem;border-radius:8px}.edit-button:hover{background:#667eea1a;transform:scale(1.1)}.delete-button:hover{background:#ef44441a;transform:scale(1.1)}.save-button{color:#10b981;font-size:1.8rem;font-weight:700}.save-button:hover{background:#10b9811a;transform:scale(1.1)}.cancel-button{color:#ef4444;font-size:1.8rem;font-weight:700}.cancel-button:hover{background:#ef44441a;transform:scale(1.1)}@media (max-width: 768px){.todo-manager-content{padding:1.5rem}.add-task-section{flex-direction:column}.task-item-edit{flex-direction:column;align-items:flex-start;gap:1rem}.button-group{width:100%;justify-content:flex-end}}body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden}#root{width:100vw;height:100vh;overflow:hidden}
