:root{--bg:#0f1040;--bg-deep:#0a0b2e;--surface:#181a5a;--card:#2a2d7d;--card-soft:#1b1e62;--card-hi:#3a3fa3;--border:#ffffff12;--text:#f4f3ff;--muted:#8d90c9;--lilac:#b08be8;--lilac-soft:#8f6fd0;--periwinkle:#6068c4;--ok:#7ee0cf;--warn:#f4c26b;--bad:#ff8aa1;color:var(--text);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:Poppins,Outfit,system-ui,sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}body{background:radial-gradient(600px 400px at 85% -5%, #b08be847, transparent 70%), radial-gradient(500px 500px at -10% 100%, #6068c440, transparent 70%), linear-gradient(180deg, var(--bg) 0%, #14125a 60%, #221a6b 100%);background-attachment:fixed;min-height:100dvh;margin:0}body:before{content:"";pointer-events:none;opacity:.55;background-image:radial-gradient(1.5px 1.5px at 12% 18%,#fff,#0000),radial-gradient(1px 1px at 78% 12%,#fff,#0000),radial-gradient(1.5px 1.5px at 90% 40%,#d9ccff,#0000),radial-gradient(1px 1px at 30% 62%,#fff,#0000),radial-gradient(1.5px 1.5px at 62% 80%,#d9ccff,#0000),radial-gradient(1px 1px at 8% 88%,#fff,#0000),radial-gradient(1px 1px at 45% 30%,#fff,#0000);animation:5s ease-in-out infinite alternate twinkle;position:fixed;inset:0}h1,h2,h3,p{margin:0}h1{font-size:1.15rem;font-weight:600}h2{font-size:1.3rem;font-weight:600}h3{color:var(--muted);font-size:.95rem;font-weight:500}code{background:var(--card-soft);border-radius:6px;padding:2px 6px}input{font:inherit;color:var(--text);background:var(--card-soft);border:1px solid var(--border);border-radius:16px;outline:none;min-width:0;padding:14px 16px;font-size:.95rem;transition:border-color .2s,box-shadow .2s}input::placeholder{color:var(--muted)}input:focus{border-color:var(--lilac);box-shadow:0 0 0 3px #b08be838}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}.primary{background:linear-gradient(135deg, var(--periwinkle), var(--lilac-soft));color:#fff;border-radius:16px;padding:14px 20px;font-weight:500;transition:transform .15s,filter .2s;box-shadow:0 8px 20px #6068c459}.primary:hover{filter:brightness(1.1)}.primary:active{transform:scale(.96)}.primary:disabled{opacity:.6}.ghost{color:var(--muted);border-radius:12px;padding:6px 12px;font-size:.85rem}.ghost:hover{background:var(--card-soft);color:var(--text)}.icon{color:var(--muted);border-radius:10px;padding:8px 10px}.icon:hover{color:var(--bad);background:#ffffff0d}.center{place-items:center;min-height:100dvh;padding:20px;display:grid;position:relative}.card{text-align:center;background:linear-gradient(160deg, var(--card), var(--card-soft));border:1px solid var(--border);border-radius:28px;flex-direction:column;gap:14px;width:min(380px,100%);padding:32px 26px;animation:.5s both rise;display:flex;position:relative;overflow:hidden}.card:before,.card:after,.hero:before,.hero:after{content:"";pointer-events:none;background:#b08be829;border-radius:50%;position:absolute}.card:before{width:180px;height:180px;top:-70px;right:-60px}.card:after{background:#6068c440;width:140px;height:140px;bottom:-60px;left:-50px}.card>*{z-index:1;position:relative}.card img{align-self:center}.muted{color:var(--muted)}.error{color:var(--bad);font-size:.9rem}.late{color:var(--bad)}.app{flex-direction:column;max-width:640px;min-height:100dvh;margin:0 auto;display:flex;position:relative}.top{padding:calc(env(safe-area-inset-top) + 20px) 20px 8px;align-items:center;gap:12px;display:flex}.avatar{background:linear-gradient(135deg, var(--lilac), var(--periwinkle));border-radius:50%;place-items:center;width:44px;height:44px;font-size:1.3rem;display:grid}.greet{flex:1;line-height:1.25}.greet small{color:var(--muted);font-size:.75rem;display:block}.greet strong{font-size:1rem;font-weight:600}.content{flex:1;padding:8px 20px 120px;animation:.4s both rise}.week{gap:8px;margin:12px 0 18px;display:flex}.week div{text-align:center;background:var(--card-soft);color:var(--muted);border-radius:12px;flex:1;padding:8px 0;font-size:.7rem;line-height:1.3}.week div b{color:var(--text);font-size:.95rem;font-weight:500;display:block}.week .today{color:#5a52a8;background:#f4f3ff}.week .today b{color:#14125a;font-weight:700}.hero{background:linear-gradient(145deg, var(--card), #23266f);border:1px solid var(--border);border-radius:26px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;padding:22px 24px;display:flex;position:relative;overflow:hidden}.hero:before{width:170px;height:170px;top:-70px;right:-40px}.hero:after{background:#6068c44d;width:120px;height:120px;bottom:-80px;right:50px}.hero>*{z-index:1;position:relative}.hero small{color:var(--muted);font-size:.78rem}.hero h2{margin-top:4px;font-size:1.1rem}.hero .big{letter-spacing:-1px;font-size:3.6rem;font-weight:600;line-height:1}.hero .legend{color:var(--muted);flex-direction:column;gap:4px;margin-top:10px;font-size:.75rem;display:flex}.hero .dot{border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.tabs{padding:10px 16px calc(env(safe-area-inset-bottom) + 10px);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid var(--border);background:#0a0b2eeb;border-radius:24px 24px 0 0;justify-content:center;gap:4px;display:flex;position:fixed;bottom:0;left:0;right:0}.tabs button{max-width:120px;color:var(--muted);border-radius:16px;flex-direction:column;flex:1;align-items:center;gap:4px;padding:8px;font-size:.68rem;transition:color .2s,background .2s;display:flex}.tabs button svg{stroke:currentColor;fill:none;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:24px;height:24px}.tabs button.active{color:var(--lilac);background:#b08be81f}.row-between{justify-content:space-between;align-items:center;margin:18px 0 12px;display:flex}.row-between:first-child{margin-top:4px}.add{gap:8px;margin-bottom:16px;display:flex}.add input:first-child{flex:1}.add .date{width:140px;padding:14px 10px}.list{flex-direction:column;gap:10px;margin:0 0 8px;padding:0;list-style:none;display:flex}.list li{background:linear-gradient(135deg, var(--card), #25287a);border-radius:20px;justify-content:space-between;align-items:center;padding:2px 8px 2px 16px;animation:.3s both rise;display:flex;position:relative;overflow:hidden}.list li:after{content:"";pointer-events:none;background:#b08be81f;border-radius:50%;width:110px;height:110px;position:absolute;top:-40px;right:-30px}.list li>*{z-index:1;position:relative}.list li label{cursor:pointer;flex:1;align-items:center;gap:14px;padding:14px 0;font-size:.95rem;display:flex}.list input[type=checkbox]{appearance:none;border:2px solid var(--lilac-soft);cursor:pointer;background:0 0;border-radius:8px;flex-shrink:0;place-items:center;width:24px;height:24px;padding:0;display:grid}.list input[type=checkbox]:checked{background:var(--lilac);border-color:var(--lilac);box-shadow:none}.list input[type=checkbox]:checked:after{content:"✓";color:#1a1560;font-size:14px;font-weight:700}.list.done li{background:var(--card-soft)}.list.done li:after{display:none}.list.done span{color:var(--muted);text-decoration:line-through}.list .empty{color:var(--muted);border:1px dashed var(--periwinkle);background:0 0;justify-content:center;padding:24px}.list .empty:after{display:none}.badge{background:var(--card-soft);border-radius:999px;padding:4px 10px;font-size:.72rem}.badge.ok{color:var(--ok)}.badge.wait{color:var(--warn)}.badge.off{color:var(--bad)}.tag{background:var(--lilac);color:#1a1560;border-radius:12px 12px 12px 0;align-items:center;gap:4px;padding:4px 12px;font-size:.7rem;font-weight:500;display:inline-flex}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes twinkle{0%{opacity:.35}to{opacity:.7}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
