:root{--btn-color:#22c55e;--bg-color:#ffffff;--text-color:#111111;--btn-rgb:34,197,94}body{background:var(--bg-color);min-height:100vh;margin:0;display:flex;flex-direction:column;padding:0;-webkit-tap-highlight-color:transparent}a,button{-webkit-tap-highlight-color:transparent}.lk-page-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 28px;width:100%;box-sizing:border-box;background:rgba(255,255,255,.65);-webkit-backdrop-filter:saturate(180%) blur(22px);backdrop-filter:saturate(180%) blur(22px);border-bottom:1px solid rgba(0,0,0,.06);box-shadow:0 1px 0 rgba(255,255,255,.6) inset}.lk-brand{display:inline-flex;align-items:center;gap:12px;font-weight:800;font-size:19px;letter-spacing:-.3px;color:var(--text-color);text-decoration:none;cursor:default}.lk-brand-icon{width:38px;height:38px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#7c3aed 0,#a855f7 60%,#ec4899 100%);color:#fff;box-shadow:0 6px 16px rgba(124,58,237,.35),inset 0 1px 0 rgba(255,255,255,.45),inset 0 -2px 6px rgba(0,0,0,.12)}.lk-brand-icon svg{width:20px;height:20px;filter:drop-shadow(0 1px 1px rgba(0,0,0,.2))}.lk-cta{display:inline-flex;align-items:center;gap:7px;padding:10px 18px 10px 15px;font-size:15px;font-weight:700;letter-spacing:-.1px;color:#fff;text-decoration:none;background:linear-gradient(135deg,#7c3aed 0,#a855f7 60%,#ec4899 100%);border-radius:999px;box-shadow:0 6px 16px rgba(124,58,237,.32),inset 0 1px 0 rgba(255,255,255,.35),inset 0 -2px 6px rgba(0,0,0,.1);transition:transform .15s ease,box-shadow .2s ease,filter .2s ease}.lk-cta svg{width:16px;height:16px}.lk-cta:hover{transform:translateY(-1px);filter:brightness(1.05);box-shadow:0 10px 22px rgba(124,58,237,.4),inset 0 1px 0 rgba(255,255,255,.4)}.lk-cta:active{transform:translateY(0)}.lk-main{flex:1;display:flex;align-items:center;justify-content:center;padding:20px}.lk-page-footer{width:100%;text-align:center;padding:22px 24px calc(22px + env(safe-area-inset-bottom));font-size:14.5px;color:#64748b;background:rgba(255,255,255,.65);-webkit-backdrop-filter:saturate(180%) blur(22px);backdrop-filter:saturate(180%) blur(22px);border-top:1px solid rgba(0,0,0,.06);box-sizing:border-box}.lk-page-footer a{color:#7c3aed;text-decoration:none;font-weight:600;cursor:default}@media (prefers-color-scheme:dark){.lk-page-footer,.lk-page-header{background:rgba(20,20,22,.6);border-color:rgba(255,255,255,.08)}.lk-page-footer{color:#94a3b8}}@media (max-width:480px){.lk-page-header{padding:14px 18px}.lk-brand{font-size:17px;gap:10px}.lk-brand-icon{width:34px;height:34px;border-radius:11px}.lk-brand-icon svg{width:18px;height:18px}.lk-cta{padding:9px 14px 9px 12px;font-size:13.5px}.lk-cta svg{width:14px;height:14px}.lk-cta span{display:inline}.lk-main{padding:14px}.lk-page-footer{padding:18px 18px calc(18px + env(safe-area-inset-bottom));font-size:13px}}.container{width:100%;max-width:490px;border-radius:var(--r-3xl);padding:36px 28px 32px;animation:slideUpSpring .5s var(--ease-spring) both}.lk-header{text-align:center;margin-bottom:28px;animation:slideUp .4s var(--ease-out) both}.lk-title{font-size:22px;font-weight:800;letter-spacing:-.5px;color:var(--text-color);line-height:1.25}.lk-subtitle{font-size:14px;color:rgba(107,114,128,.85);margin-top:6px;font-weight:500}.tasks-wrap{display:flex;flex-direction:column;gap:10px;margin-bottom:18px}.task-btn{display:flex;align-items:center;width:100%;padding:0 18px;height:60px;border-radius:20px;border:none;cursor:pointer;color:#fff;position:relative;overflow:hidden;font-family:inherit;background:var(--task-color);border:1.5px solid rgba(255,255,255,.3);box-shadow:0 6px 28px rgba(var(--task-rgb),.32),0 2px 8px rgba(0,0,0,.1),0 1px 0 rgba(255,255,255,.4) inset,0 -1px 0 rgba(0,0,0,.08) inset;transition:transform .15s var(--ease-spring),box-shadow .15s var(--ease),opacity .2s var(--ease);animation:staggerIn .35s var(--ease-out) both}.task-btn::before{content:'';position:absolute;inset:0;background:linear-gradient(170deg,rgba(255,255,255,.3) 0,rgba(255,255,255,.12) 30%,transparent 58%);border-radius:18px;pointer-events:none}.task-btn::after{content:'';position:absolute;inset:55% 0 0 0;background:linear-gradient(180deg,transparent,rgba(0,0,0,.06));border-radius:0 0 18px 18px;pointer-events:none}.task-btn:hover{transform:translateY(-2px);box-shadow:0 10px 36px rgba(var(--task-rgb),.35),0 3px 12px rgba(0,0,0,.09),0 1px 0 rgba(255,255,255,.75) inset,0 -1px 0 rgba(0,0,0,.05) inset}.task-btn:active{transform:scale(.976);box-shadow:0 2px 12px rgba(var(--task-rgb),.22),0 1px 0 rgba(255,255,255,.65) inset}.task-btn.state-disabled{cursor:not-allowed;opacity:.48;pointer-events:none}.task-btn.state-waiting{cursor:not-allowed;pointer-events:none;animation:none}.task-btn.state-waiting::before{background:linear-gradient(90deg,transparent 0,rgba(255,255,255,.15) 50%,transparent 100%);background-size:200% 100%;animation:shimmer 1.6s infinite var(--ease);inset:0;border-radius:20px}.task-btn.state-done{cursor:default;pointer-events:none;animation:taskDone .4s var(--ease-spring) both;background:rgba(var(--task-rgb),.45);backdrop-filter:blur(20px) saturate(1.8) brightness(1.1);-webkit-backdrop-filter:blur(20px) saturate(1.8) brightness(1.1);border-color:rgba(255,255,255,.5);box-shadow:0 2px 12px rgba(var(--task-rgb),.15),0 1px 0 rgba(255,255,255,.7) inset;color:#fff}.task-btn.state-done .task-icon{background:rgba(var(--task-rgb),.15)}.task-btn.state-done .task-icon svg{fill:var(--task-color);stroke:none}.task-btn.state-done .task-status svg{stroke:var(--task-color)}.task-btn:first-child{animation-delay:.05s}.task-btn:nth-child(2){animation-delay:.1s}.task-btn:nth-child(3){animation-delay:.15s}.task-btn:nth-child(4){animation-delay:.2s}.task-btn:nth-child(5){animation-delay:.25s}.task-icon{width:34px;height:34px;flex-shrink:0;background:rgba(255,255,255,.22);border-radius:11px;display:flex;align-items:center;justify-content:center;margin-right:12px;position:relative;z-index:1;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 1px 0 rgba(255,255,255,.35) inset,0 1px 4px rgba(0,0,0,.1);border:1px solid rgba(255,255,255,.25)}.task-icon svg{width:18px;height:18px;fill:#fff}.task-label{flex:1;text-align:center;font-size:15px;font-weight:700;letter-spacing:-.1px;position:relative;z-index:1}.task-status{width:30px;flex-shrink:0;display:flex;align-items:center;justify-content:center;position:relative;z-index:1}.task-status svg{width:18px;height:18px}.check-svg{stroke-dasharray:28;stroke-dashoffset:28;animation:checkDraw .4s var(--ease-out) .05s both}.progress-wrap{margin-bottom:14px}.progress-text{text-align:center;font-size:12px;font-weight:600;color:var(--t3,#6b7280);margin-bottom:8px;letter-spacing:.2px}.progress-bar{height:10px;background:rgba(0,0,0,.07);border-radius:99px;overflow:hidden}.progress-fill{height:100%;border-radius:99px;background:repeating-linear-gradient(-45deg,var(--btn-color) 0,var(--btn-color) 10px,rgba(var(--btn-rgb),.35) 10px,rgba(var(--btn-rgb),.35) 20px);background-size:28px 28px;transition:width .6s linear;animation:progressStripes .8s linear infinite;position:relative}.progress-fill::after{display:none}.unlock-btn{display:flex;align-items:center;width:100%;padding:0 18px;height:60px;border-radius:20px;border:none;cursor:pointer;background:var(--btn-color);color:#fff;font-family:inherit;box-shadow:0 4px 20px rgba(var(--btn-rgb),.35),0 1px 0 rgba(255,255,255,.25) inset;transition:transform .18s var(--ease-spring),box-shadow .18s var(--ease),opacity .2s;position:relative;overflow:hidden}.unlock-btn::before{content:'';position:absolute;inset:0 0 52% 0;background:linear-gradient(180deg,rgba(255,255,255,.2),transparent);border-radius:20px 20px 0 0;pointer-events:none}.unlock-btn:hover{transform:translateY(-1px);box-shadow:0 6px 28px rgba(var(--btn-rgb),.45),0 1px 0 rgba(255,255,255,.25) inset}.unlock-btn:active{transform:scale(.975)}.unlock-btn.locked{opacity:.48;cursor:not-allowed;pointer-events:none;background:#86efac;box-shadow:none}.unlock-btn.active-pop{animation:unlockPop .5s var(--ease-spring) both}.unlock-icon{width:34px;height:34px;flex-shrink:0;background:rgba(255,255,255,.18);border-radius:11px;display:flex;align-items:center;justify-content:center;margin-right:12px;position:relative;z-index:1;box-shadow:0 1px 0 rgba(255,255,255,.2) inset}.unlock-icon svg{width:18px;height:18px;stroke:#fff;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.unlock-label{flex:1;text-align:center;font-size:16px;font-weight:800;letter-spacing:-.2px;position:relative;z-index:1}.unlock-end{width:30px;flex-shrink:0;display:flex;align-items:center;justify-content:center;position:relative;z-index:1}.unlock-end svg{width:18px;height:18px;stroke:rgba(255,255,255,.72);fill:none;stroke-width:2.5;stroke-linecap:round}.branding{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:22px;font-size:13px;color:#9ca3af;font-weight:500}.branding-logo{width:20px;height:20px;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:6px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px rgba(99,102,241,.3)}.branding-logo svg{width:11px;height:11px;fill:#fff}.branding a{color:var(--accent,#6366f1);font-weight:700;text-decoration:none}.page-state{text-align:center;padding:48px 24px}.page-state-icon{width:64px;height:64px;border-radius:22px;display:flex;align-items:center;justify-content:center;margin:0 auto 18px}.page-state h2{font-size:19px;font-weight:800;color:var(--text-color,#1c1c1e);letter-spacing:-.3px;margin-bottom:8px}.page-state p{font-size:14px;color:var(--t3,#6b7280)}@media (max-width:480px){.container{padding:28px 20px 26px;border-radius:var(--r-2xl)}.task-btn{height:56px}.task-label{font-size:14px}.unlock-btn{height:56px}}.lk-banner-wrap{width:100%;display:flex;justify-content:center;padding:0;box-sizing:border-box;overflow:hidden;max-height:0;animation:bannerWrapExpand 0s ease 2s forwards}@keyframes bannerWrapExpand{to{max-height:400px}}.lk-banner-link{display:block;position:relative;width:230px;max-width:230px;margin:30px auto;cursor:pointer;line-height:0;overflow:hidden;box-shadow:0 4px 14px rgba(0,0,0,.1);transition:box-shadow .18s ease;opacity:0;animation:bannerShow 0s ease 2s forwards}@keyframes bannerShow{to{opacity:1}}.lk-banner-img{width:230px;max-width:230px;display:block;object-fit:cover}.lk-banner-link::after{display:none}.lk-banner-label{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:rgba(0,0,0,.55);color:#fff;font-family:Nunito,sans-serif;font-size:15px;font-weight:800;letter-spacing:.4px;padding:7px 16px;border-radius:999px;white-space:nowrap;line-height:1;display:inline-flex;align-items:center;gap:6px;animation:bannerBlink 1.1s ease-in-out infinite;pointer-events:none}@keyframes bannerBlink{0%,100%{opacity:1;transform:translate(-50%,-50%) scale(1)}50%{opacity:.4;transform:translate(-50%,-50%) scale(.96)}}.lk-banner-link:hover{box-shadow:0 8px 22px rgba(0,0,0,.16)}