@import "https://fonts.googleapis.com/css2?family=Outfit:wght@200;300;400;500;600;700;800&display=swap";:root{--bg-dark:#02040a;--bg-light:#0b1121;--text-primary:#fff;--text-secondary:#fff9;--text-tertiary:#fff6;--ease-spring:cubic-bezier(.175, .885, .32, 1.275);--ease-smooth:cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}body{background:radial-gradient(circle at 50% 50%, var(--bg-light), var(--bg-dark) 100%);color:var(--text-primary);-webkit-user-select:none;user-select:none;min-height:100vh;font-family:Outfit,sans-serif;overflow:hidden}.loading-screen{background:var(--bg-dark);flex-direction:column;justify-content:center;align-items:center;gap:24px;width:100vw;height:100vh;display:flex}.loading-spinner{border:2px solid #ffffff1a;border-top-color:#fff;border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loading-text{letter-spacing:3px;color:var(--text-secondary);text-transform:uppercase;font-size:.85rem;font-weight:200}.login-screen{background:radial-gradient(circle at 50% 40%, var(--bg-light), var(--bg-dark) 100%);justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:relative;overflow:hidden}.login-ambient-glow{pointer-events:none;background:radial-gradient(circle,#ff1f5a14 0%,#0000 70%);border-radius:50%;width:500px;height:500px;animation:6s ease-in-out infinite alternate loginPulse;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes loginPulse{0%{opacity:.5;transform:translate(-50%,-50%)scale(1)}to{opacity:1;transform:translate(-50%,-50%)scale(1.2)}}.login-card{z-index:2;-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);width:100%;max-width:420px;animation:cardEntry .8s var(--ease-spring) both;background:#0a0e17d9;border:1px solid #ffffff14;border-radius:32px;padding:48px 40px;position:relative;box-shadow:0 40px 100px #0009}@keyframes cardEntry{0%{opacity:0;transform:translateY(30px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.login-header{text-align:center;margin-bottom:36px}.login-logo{letter-spacing:6px;text-transform:uppercase;color:#fff;margin-bottom:8px;font-size:2.2rem;font-weight:200}.login-subtitle{color:var(--text-secondary);letter-spacing:1px;font-size:.9rem;font-weight:300}.login-error{color:#ff6b8a;text-align:center;background:#ff1f5a1a;border:1px solid #ff1f5a4d;border-radius:12px;margin-bottom:20px;padding:12px 16px;font-size:.85rem;font-weight:300}.login-form{flex-direction:column;gap:16px;display:flex}.login-field{position:relative}.login-input{color:#fff;background:#0006;border:1px solid #ffffff1a;border-radius:16px;outline:none;width:100%;padding:16px 20px;font-family:Outfit,sans-serif;font-size:1rem;font-weight:300;transition:border-color .3s,box-shadow .3s}.login-input:focus{border-color:#ff1f5a66;box-shadow:0 0 20px #ff1f5a1a}.login-input::placeholder{color:#ffffff4d}.login-submit{color:#000;cursor:pointer;letter-spacing:1px;background:#fff;border:none;border-radius:16px;width:100%;margin-top:4px;padding:16px;font-family:Outfit,sans-serif;font-size:1rem;font-weight:500;transition:all .3s}.login-submit:hover{background:#e0e0e0;transform:translateY(-1px)}.login-submit:disabled{opacity:.5;cursor:not-allowed}.login-divider{color:#fff3;align-items:center;gap:16px;margin:24px 0;font-size:.85rem;font-weight:200;display:flex}.login-divider:before,.login-divider:after{content:"";background:#ffffff14;flex:1;height:1px}.login-google{color:#fff;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff26;border-radius:16px;justify-content:center;align-items:center;gap:12px;width:100%;padding:14px;font-family:Outfit,sans-serif;font-size:.95rem;font-weight:300;transition:all .3s;display:flex}.login-google:hover{background:#ffffff1a}.login-google:disabled{opacity:.5;cursor:not-allowed}.login-toggle{text-align:center;color:var(--text-secondary);margin-top:24px;font-size:.9rem;font-weight:300}.login-toggle button{color:#fff;cursor:pointer;text-underline-offset:3px;background:0 0;border:none;margin-left:8px;font-family:Outfit,sans-serif;font-size:.9rem;font-weight:500;text-decoration:underline}.app-wrapper{z-index:1;width:100vw;height:100vh;position:relative}.top-bar{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:10;background:#0a0f19cc;border:1px solid #ffffff0d;border-radius:100px;align-items:center;gap:24px;padding:12px 32px;display:flex;position:absolute;top:40px;left:50%;transform:translate(-50%)}.top-bar-logo{letter-spacing:4px;text-transform:uppercase;color:var(--text-primary);font-size:1.15rem;font-weight:200}.idea-input-form{align-items:center;gap:12px;display:flex}.idea-input{width:250px;color:var(--text-primary);background:#0006;border:1px solid #ffffff1a;border-radius:100px;outline:none;padding:12px 24px;font-family:Outfit,sans-serif;font-weight:300}.idea-input:focus{border-color:#ffffff4d}.dual-color-picker{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:100px;align-items:center;gap:4px;padding:4px 8px;display:flex}.color-picker-input{appearance:none;cursor:pointer;width:28px;height:28px;transition:transform .2s var(--ease-spring);background-color:#0000;border:none;border-radius:50%;padding:0}.color-picker-input::-webkit-color-swatch-wrapper{padding:0}.color-picker-input::-webkit-color-swatch{border:1px solid #ffffff80;border-radius:50%}.color-picker-input::-moz-color-swatch{border:1px solid #ffffff80;border-radius:50%}.color-picker-input:hover{z-index:2;transform:scale(1.1)}.idea-add-btn{color:#000;cursor:pointer;background:#fff;border:none;border-radius:100px;margin-left:8px;padding:12px 24px;font-family:Outfit,sans-serif;font-weight:500}.archive-toggle-btn{color:#fff;cursor:pointer;background:0 0;border:1px solid #fff3;border-radius:100px;padding:12px 24px;font-family:Outfit,sans-serif;font-weight:300;transition:all .3s}.archive-toggle-btn:hover{background:#ffffff1a}.logout-btn{color:#fff6;cursor:pointer;letter-spacing:1px;background:0 0;border:1px solid #ffffff1a;border-radius:100px;padding:10px 20px;font-family:Outfit,sans-serif;font-size:.8rem;font-weight:300;transition:all .3s}.logout-btn:hover{color:#ff1f5a;border-color:#ff1f5a4d}.black-hole{width:96px;height:96px;color:var(--text-secondary);letter-spacing:2px;z-index:5;background:#0a0f19cc;border:1px solid #ffffff0a;border-radius:50%;justify-content:center;align-items:center;font-size:.75rem;font-weight:300;transition:all .3s;display:flex;position:absolute;bottom:48px;right:48px}.black-hole.active{color:#ff1f5a;background:#ff1f5a26;border-color:#ff1f5a;transform:scale(1.3);box-shadow:0 0 30px #ff1f5a4d}.bubble-drag-wrapper{cursor:grab;z-index:10;width:160px;height:160px;position:absolute}.bubble-drag-wrapper.sub-bubble{width:120px;height:120px}.bubble-drag-wrapper:active{cursor:grabbing;z-index:100!important}.bubble-node{text-align:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#02040a99;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;padding:20px;animation:8s ease-in-out infinite alternate floatOrb;display:flex;position:relative}.bubble-drag-wrapper:nth-child(2n) .bubble-node{animation-duration:9s;animation-delay:-4s}.sub-bubble .bubble-node{padding:12px}.sub-bubble .bubble-title{font-size:.7rem}.sub-bubble .bubble-progress{font-size:1.6rem}.sub-bubble .bubble-type{font-size:.45rem;bottom:18px}.sub-bubble .neon-ring-svg{width:150px;height:150px;inset:-15px}@keyframes floatOrb{0%{transform:translateY(0)}to{transform:translateY(-8px)}}.bubble-drag-wrapper:active .bubble-node{animation:none}.neon-ring-svg{pointer-events:none;width:200px;height:200px;filter:drop-shadow(0 0 35px var(--node-color));border-radius:50%;transition:all .8s;animation:15s linear infinite slowSpin;position:absolute;inset:-20px}@keyframes slowSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.neon-ring-progress{fill:none;stroke-width:1.5px;stroke-linecap:round;transition:stroke-width .8s}.neon-ring-glow{fill:none;stroke-width:12px;filter:blur(10px);opacity:.8;transition:opacity .8s}.bubble-node:before{content:"";opacity:.05;pointer-events:none;background-blend-mode:screen;background:radial-gradient(circle, var(--node-color) 0%, transparent 70%);border-radius:50%;transition:opacity .8s;position:absolute;inset:0}.bubble-node.is-completed:after{content:"";opacity:0;pointer-events:none;border:1px solid #fff;border-radius:50%;animation:4s cubic-bezier(.4,0,.2,1) infinite elegantRipple;position:absolute;inset:-20px}@keyframes elegantRipple{0%{opacity:.8;filter:drop-shadow(0 0 10px #fff);transform:scale(1)}to{opacity:0;filter:drop-shadow(0 0 20px #fff);transform:scale(1.3)}}.bubble-node.is-completed:before{opacity:.3}.bubble-node.is-completed{box-shadow:inset 0 0 40px #ffffff0d}.bubble-node.is-completed .neon-ring-progress{stroke-width:2.5px}.bubble-node.is-completed .neon-ring-svg{filter:drop-shadow(0 0 50px var(--node-color))}.bubble-title{z-index:2;color:#fffc;letter-spacing:.5px;margin-bottom:2px;font-size:.9rem;font-weight:300;line-height:1.3;transition:color .5s}.bubble-node.is-completed .bubble-title{color:#fff}.bubble-progress{letter-spacing:-1px;z-index:2;color:#fff;text-shadow:0 0 15px var(--node-color);font-variant-numeric:tabular-nums;font-size:2.2rem;font-weight:200;transition:all .5s}.bubble-node.is-completed .bubble-progress{text-shadow:0 0 20px #fff}.bubble-type{color:#ffffff4d;text-transform:uppercase;letter-spacing:2px;font-size:.55rem;font-weight:300;transition:color .5s;position:absolute;bottom:25px}.bubble-node.is-completed .bubble-type{color:#ffffffe6;letter-spacing:3px}.neural-line{transition:opacity .2s var(--ease-smooth)}.parent-child-line{animation:1.5s linear infinite dashFlow}@keyframes dashFlow{to{stroke-dashoffset:-20px}}.modal-overlay{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:200;background:#000c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal-content{background:#0a0e17;border:1px solid #ffffff1a;border-radius:24px;width:100%;max-width:560px;max-height:85vh;padding:40px;overflow-y:auto;box-shadow:0 40px 80px #000c}.modal-header{justify-content:space-between;align-items:flex-start;margin-bottom:32px;display:flex}.modal-header-content h2{letter-spacing:.5px;margin-bottom:8px;font-size:1.6rem;font-weight:300}.inline-edit-input{color:#fff;background:#ffffff0d;border:1px solid #fff3;border-radius:8px;outline:none;width:100%;padding:4px 8px;font-family:Outfit,sans-serif}.inline-edit-input.title-edit{letter-spacing:.5px;margin-bottom:8px;font-size:1.6rem;font-weight:300}.inline-edit-input.task-edit{flex:1;font-size:1rem;font-weight:300}.priority-tag{text-transform:uppercase;letter-spacing:1px;border:1px solid #ffffff1a;border-radius:100px;padding:6px 14px;font-size:.7rem;font-weight:400;display:inline-flex}.modal-close{color:#fff;cursor:pointer;background:0 0;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-weight:200;transition:all .3s;display:flex}.modal-close:hover{color:#000;background:#fff}.task-item{background:#ffffff08;border:1px solid #ffffff0d;border-radius:16px;align-items:center;gap:12px;margin-bottom:8px;padding:16px;display:flex}.task-checkbox-wrapper{justify-content:center;align-items:center;display:flex;position:relative}.task-checkbox{appearance:none;cursor:pointer;border:1px solid #ffffff4d;border-radius:50%;width:24px;height:24px;transition:all .3s}.task-checkbox:checked{background:#fff;border-color:#fff}.task-checkbox-icon{pointer-events:none;color:#000;opacity:0;font-size:12px;font-weight:600;transition:all .3s;position:absolute;transform:scale(.5)}.task-checkbox:checked+.task-checkbox-icon{opacity:1;transform:scale(1)}.task-text{color:#fff;flex:1;font-size:1rem;font-weight:300;transition:color .3s}.task-text:hover{color:#ffffffb3}.task-text.completed{color:#ffffff4d;text-decoration:line-through}.task-convert{color:#fff6;cursor:pointer;background:0 0;border:1px solid #ffffff1a;border-radius:8px;flex-shrink:0;padding:4px 8px;font-size:.85rem;transition:all .3s}.task-convert:hover{color:#00f0ff;background:#00f0ff1a;border-color:#00f0ff66}.task-delete{color:#ffffff4d;cursor:pointer;background:0 0;border:none;padding:8px;font-weight:200}.task-delete:hover{color:#ff1f5a}.add-task-row{gap:12px;margin-top:32px;display:flex}.add-task-row input{color:#fff;background:#00000080;border:1px solid #ffffff1a;border-radius:100px;outline:none;flex:1;padding:16px 24px;font-family:Outfit,sans-serif;font-weight:300}.add-task-row input:focus{border-color:#ffffff4d}.add-task-row button{color:#000;cursor:pointer;background:#fff;border:none;border-radius:100px;width:54px;font-size:1.5rem;font-weight:200}.archive-modal{max-width:600px}.empty-archive{text-align:center;color:#fff6;padding:40px;font-weight:300}.archive-list{flex-direction:column;gap:12px;display:flex}.archive-item{background:#ffffff05;border:1px solid #ffffff0d;border-radius:16px;justify-content:space-between;align-items:center;padding:16px 24px;transition:all .3s;display:flex}.archive-item:hover{background:#ffffff0d}.archive-item-info{flex-direction:column;gap:4px;display:flex}.archive-item-type{letter-spacing:2px;color:#fff6;font-size:.6rem;font-weight:600}.archive-item-title{color:#fff;font-size:1.1rem;font-weight:300}.archive-item-actions{gap:8px;display:flex}.restore-btn,.delete-perm-btn{cursor:pointer;border:none;border-radius:100px;padding:8px 16px;font-family:Outfit;font-size:.8rem;font-weight:400;transition:all .3s}.restore-btn{color:#000;background:#fff}.restore-btn:hover{background:#ccc}.delete-perm-btn{color:#fff9;background:0 0;border:1px solid #fff3}.delete-perm-btn:hover{color:#ff1f5a;background:#ff1f5a1a;border-color:#ff1f5a4d}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:10px}
