:root{--bg-color:#0b0f19;--panel-bg:#14192899;--panel-border:#ffffff1a;--text-primary:#fff;--text-secondary:#94a3b8;--accent-primary:#8b5cf6;--accent-secondary:#ec4899;--danger:#ef4444;--danger-hover:#dc2626;--success:#10b981;--font-main:"Outfit", sans-serif;--shadow-glow:0 0 20px #8b5cf666}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-primary);font-family:var(--font-main);justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow-x:hidden}.bg-shape{filter:blur(80px);z-index:-1;opacity:.6;border-radius:50%;animation:20s ease-in-out infinite float;position:fixed}.shape1{background:var(--accent-primary);width:400px;height:400px;animation-delay:0s;top:-10%;left:-10%}.shape2{background:var(--accent-secondary);width:300px;height:300px;animation-delay:-5s;bottom:10%;right:-5%}.shape3{background:#3b82f6;width:250px;height:250px;animation-delay:-10s;top:40%;left:40%}@keyframes float{0%,to{transform:translate(0)scale(1)}25%{transform:translate(50px,50px)scale(1.1)}50%{transform:translateY(100px)scale(1)}75%{transform:translate(-50px,50px)scale(.9)}}.app-container{background:var(--panel-bg);-webkit-backdrop-filter:blur(16px);border:1px solid var(--panel-border);z-index:1;border-radius:24px;flex-direction:column;gap:1.5rem;width:100%;max-width:500px;padding:2rem;display:flex;box-shadow:0 25px 50px -12px #00000080}header{text-align:center}.gradient-text{background:linear-gradient(135deg, var(--accent-primary), var(--accent-secondary));-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:.5rem;font-size:2.5rem;font-weight:700}.subtitle{color:var(--text-secondary);font-size:.95rem;line-height:1.5}.tabs-nav{background:#0000004d;border-radius:12px;gap:.25rem;padding:.25rem;display:flex}.tab-btn{color:var(--text-secondary);background:0 0;border-radius:8px;flex:1;padding:.75rem 0;font-size:.9rem;font-weight:600;transition:all .3s}.tab-btn:hover{color:#fff}.tab-btn.active{color:#fff;background:#ffffff1a;box-shadow:0 4px 6px -1px #0000001a}.tab-content{animation:.3s fadeIn;display:none}.tab-content.active{flex-direction:column;gap:1.5rem;display:flex}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.input-wrapper{gap:.75rem;display:flex}input{border:1px solid var(--panel-border);color:var(--text-primary);font-family:var(--font-main);background:#0003;border-radius:12px;outline:none;flex:1;padding:1rem;font-size:1rem;transition:all .3s}input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px #8b5cf633}button{cursor:pointer;font-family:var(--font-main);border:none;transition:all .3s}.btn-primary{background:linear-gradient(135deg, var(--accent-primary), #7c3aed);color:#fff;border-radius:12px;justify-content:center;align-items:center;padding:0 1.25rem;font-weight:600;display:flex}.btn-primary:hover{box-shadow:var(--shadow-glow);transform:translateY(-2px)}.btn-primary:active{transform:translateY(0)}.btn-secondary{color:var(--text-primary);background:#ffffff1a;border-radius:12px;padding:.75rem 1.25rem;font-weight:600}.btn-secondary:hover{background:#ffffff26}.btn-glow{background:linear-gradient(135deg, var(--accent-primary), var(--accent-secondary), var(--accent-primary));background-size:200%;border-radius:16px;width:100%;padding:3px;animation:3s linear infinite shine}.btn-glow-content{background:var(--bg-color);color:#fff;border-radius:14px;padding:1rem 2rem;font-size:1.1rem;font-weight:700;transition:background .3s;display:block}.btn-glow:hover .btn-glow-content{background:0 0}@keyframes shine{to{background-position:200%}}.activities-list-section{max-height:250px;padding-right:.5rem;overflow-y:auto}.activities-list-section::-webkit-scrollbar{width:6px}.activities-list-section::-webkit-scrollbar-track{background:#0000001a;border-radius:4px}.activities-list-section::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}.activities-list{flex-direction:column;gap:.75rem;list-style:none;display:flex}.activity-item{border:1px solid var(--panel-border);background:#ffffff0d;border-radius:12px;justify-content:space-between;align-items:center;padding:1rem;transition:transform .2s,background .2s;animation:.3s cubic-bezier(.175,.885,.32,1.275) forwards slideIn;display:flex}.activity-item:hover{background:#ffffff14;transform:translate(4px)}.activity-text{word-break:break-word;font-size:1rem;transition:color .3s}.habit-left{align-items:center;gap:.75rem;display:flex}.custom-checkbox{border:2px solid var(--text-secondary);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;width:24px;height:24px;transition:all .2s;display:flex}.custom-checkbox.checked{background:var(--success);border-color:var(--success)}.custom-checkbox svg{opacity:0;color:#fff;width:16px;height:16px;transition:opacity .2s}.custom-checkbox.checked svg{opacity:1}.habit-item.completed .activity-text{color:var(--text-secondary);text-decoration:line-through}.date-header{text-align:center;color:var(--accent-primary);margin-bottom:-.5rem}.date-header h3{font-size:1.1rem;font-weight:600}.delete-btn{color:var(--text-secondary);background:0 0;border-radius:6px;padding:.25rem}.delete-btn:hover{color:var(--danger);background:#ef44441a}.empty-state{text-align:center;color:var(--text-secondary);padding:2rem 0;font-style:italic;display:none}.modal{z-index:100;opacity:0;pointer-events:none;justify-content:center;align-items:center;width:100vw;height:100vh;transition:opacity .3s;display:flex;position:fixed;top:0;left:0}.modal:not(.hidden){opacity:1;pointer-events:auto}.modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0009;width:100%;height:100%;position:absolute;top:0;left:0}.glass-panel{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:101;text-align:center;background:#141928d9;border:1px solid #fff3;border-radius:24px;width:90%;max-width:450px;padding:2.5rem;transition:transform .3s cubic-bezier(.175,.885,.32,1.275);position:relative;transform:scale(.9);box-shadow:0 25px 50px -12px #00000080,0 0 40px #8b5cf64d}.modal:not(.hidden) .glass-panel{transform:scale(1)}.close-btn{color:var(--text-secondary);background:0 0;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;display:flex;position:absolute;top:1rem;right:1rem}.close-btn:hover{color:#fff;background:#ffffff1a}.glass-panel h2{color:var(--text-secondary);margin-bottom:1.5rem;font-size:1.25rem;font-weight:400}.suggestion-highlight{background:linear-gradient(135deg,#8b5cf61a,#ec48991a);border:1px solid #ffffff1a;border-radius:16px;margin-bottom:2rem;padding:2rem 1rem}#suggested-activity-text{color:#fff;font-size:1.75rem;font-weight:700;line-height:1.3}.modal-actions{justify-content:center;gap:1rem;display:flex}#confetti-canvas{pointer-events:none;z-index:1000;width:100vw;height:100vh;position:fixed;top:0;left:0}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.report-title{text-align:center;color:var(--text-secondary);margin-bottom:.5rem;font-weight:400}.chart-container{background:#0003;border-radius:16px;justify-content:space-between;align-items:flex-end;gap:.5rem;height:200px;padding:1.5rem 1rem;display:flex}.chart-bar-wrapper{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:.5rem;height:100%;display:flex}.chart-bar{background:linear-gradient(to top, var(--accent-primary), var(--accent-secondary));border-radius:6px;width:100%;max-width:30px;transition:height 1s cubic-bezier(.175,.885,.32,1.275);box-shadow:0 0 10px #8b5cf633}.chart-label{color:var(--text-secondary);font-size:.75rem}.chart-value{color:#fff;margin-bottom:.25rem;font-size:.8rem;font-weight:600}@media (width<=480px){.app-container{min-height:100dvh;padding-top:calc(2rem + env(safe-area-inset-top,0px));padding-bottom:calc(2rem + env(safe-area-inset-bottom,0px));padding-left:calc(1.25rem + env(safe-area-inset-left,0px));padding-right:calc(1.25rem + env(safe-area-inset-right,0px));border:none;border-radius:0;justify-content:flex-start}}@media (display-mode:standalone){body{-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none}.app-container{min-height:100dvh;padding-top:calc(3.5rem + env(safe-area-inset-top,0px));padding-bottom:calc(2rem + env(safe-area-inset-bottom,0px));padding-left:calc(1.25rem + env(safe-area-inset-left,0px));padding-right:calc(1.25rem + env(safe-area-inset-right,0px));border:none;border-radius:0;justify-content:flex-start}input,.tab-btn,.btn-primary,.btn-secondary,.btn-glow{-webkit-user-select:auto;user-select:auto}}
