:root{--sky:#DCEFFF;--sky2:#F3FAFF;--soil:#4A2E1F;--soil2:#6B4430;--root:#C9925E;--moss:#2E6B3A;--leaf:#5DBB46;--leaf2:#8EDC6A;--sun:#FFC83D;--petal:#FF7AA2;--berry:#7B4FD8;--bg:#EEF7F0;--surface:#FFFFFF;--surface2:#F5FAF3;--text:#1C2B20;--muted:#5E6E62;--line:#D7E6D9;--danger:#C2362B;--danger-text:#B3261E;--shadow:0 2px 0 rgba(46,107,58,.18);--r1:12px;--r2:20px;--r3:28px;--display:"Fredoka","Trebuchet MS",system-ui,sans-serif;--body:"Nunito",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--sky:#1B2B44;--sky2:#22355A;--soil:#2A1A12;--soil2:#3D271C;--root:#A87447;--bg:#101A14;--surface:#18251C;--surface2:#1E2E23;--text:#E9F5EC;--muted:#9DB3A3;--line:#2D4033;--moss:#7BCB82;--danger-text:#FF8A80;--shadow:0 2px 0 rgba(0,0,0,.35)}}:root[data-theme=dark]{--sky:#1B2B44;--sky2:#22355A;--soil:#2A1A12;--soil2:#3D271C;--root:#A87447;--bg:#101A14;--surface:#18251C;--surface2:#1E2E23;--text:#E9F5EC;--muted:#9DB3A3;--line:#2D4033;--moss:#7BCB82;--danger-text:#FF8A80;--shadow:0 2px 0 rgba(0,0,0,.35)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{height:100%;scroll-padding-top:env(safe-area-inset-top,0px)}body{min-height:100%;background:var(--bg);color:var(--text);font-family:var(--body);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;overscroll-behavior-y:none}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;touch-action:manipulation}:focus-visible{outline:3px solid var(--sun);outline-offset:2px;border-radius:8px}svg{display:block;max-width:100%}.app{max-width:560px;margin:0 auto;padding:0 14px 110px}h1,h2,h3{font-family:var(--display);font-weight:600;line-height:1.15}h2{font-size:1.35rem}h3{font-size:1.1rem}.muted{color:var(--muted)}.small{font-size:.875rem}.stack{display:flex;flex-direction:column;gap:14px}.row{display:flex;gap:10px;align-items:center}.row>*{min-width:0}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.hero{margin:10px -14px 0;position:relative}.scene{width:100%;height:auto;border-radius:0 0 var(--r3) var(--r3);overflow:hidden}.hud{position:absolute;left:14px;right:14px;top:12px;display:flex;justify-content:space-between;align-items:flex-start;gap:8px;pointer-events:none}.pill{background:#ffffffe0;color:#1c2b20;border-radius:999px;padding:6px 12px;font-weight:800;font-size:.85rem;box-shadow:0 2px 6px #00000014}.pill .small{max-width:46vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.daybig{font-family:var(--display);font-size:1.6rem;line-height:1;font-weight:700}.daybig small{font-size:.9rem;font-weight:600;opacity:.75}.xpbar{margin:12px 0 4px;background:var(--line);height:12px;border-radius:999px;overflow:hidden}.xpbar i{display:block;height:100%;background:linear-gradient(90deg,var(--leaf),var(--sun));border-radius:999px;transition:width .6s cubic-bezier(.2,.8,.2,1)}.card{background:var(--surface);border:2px solid var(--line);border-radius:var(--r2);padding:16px;box-shadow:var(--shadow)}.card.quest{border-color:var(--leaf);background:linear-gradient(180deg,var(--surface),var(--surface2))}.card.reset{border-color:var(--berry)}.card.boss{border-color:var(--danger)}.kicker{font-weight:800;font-size:.8rem;color:var(--moss);letter-spacing:.02em}.tag{display:inline-flex;align-items:center;gap:4px;font-size:.78rem;font-weight:800;padding:3px 10px;border-radius:999px;background:var(--surface2);border:1.5px solid var(--line)}.btn{min-height:48px;padding:0 18px;border-radius:14px;border:0;background:var(--leaf);color:#0f2412;font-weight:800;font-size:1rem;box-shadow:0 4px 0 var(--moss);transition:transform .08s,box-shadow .08s;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn:active{transform:translateY(3px);box-shadow:0 1px 0 var(--moss)}.btn.sec{background:var(--surface2);color:var(--text);border:2px solid var(--line);box-shadow:0 3px 0 var(--line)}.btn.sun{background:var(--sun);box-shadow:0 4px #c98f00}.btn.berry{background:var(--berry);color:#fff;box-shadow:0 4px #4e2c99}.btn.danger{background:var(--danger);color:#fff;box-shadow:0 4px #8e2a21}.btn.block{width:100%}.btn[disabled]{opacity:.5;pointer-events:none}.link{background:none;border:0;color:var(--moss);font-weight:800;min-height:44px;padding:0 4px;text-decoration:underline;text-underline-offset:3px}input.f,textarea.f,select.f{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;width:100%;min-width:0;min-height:48px;padding:10px 14px;border-radius:12px;border:2px solid var(--line);background:var(--surface2);font-size:16px}textarea.f{min-height:80px;resize:vertical}label.l{font-weight:800;font-size:.9rem;display:block;margin-bottom:6px}.chips{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.chip{min-height:64px;border-radius:16px;border:2px solid var(--line);background:var(--surface2);display:flex;align-items:center;gap:10px;padding:8px 12px;text-align:left;font-weight:800;transition:transform .15s}.chip .ico{font-size:1.5rem;width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:var(--surface);flex:none}.chip small{display:block;font-weight:600;color:var(--muted);font-size:.78rem;line-height:1.25}.chip.on{background:var(--leaf2);border-color:var(--leaf);color:#0f2412}.chip.on small{color:#24452a}.chip.on .ico{background:#fff}.pop{animation:pop .45s cubic-bezier(.3,1.6,.5,1)}@keyframes pop{0%{transform:scale(.9)}60%{transform:scale(1.06)}to{transform:scale(1)}}.ringwrap{display:grid;place-items:center;position:relative;margin:6px auto}.ringtxt{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.ringtxt b{font-family:var(--display);font-size:2.6rem;line-height:1;font-variant-numeric:tabular-nums}.urge{min-height:48px;border-radius:14px;border:2px dashed var(--petal);background:transparent;font-weight:800;color:var(--text);padding:0 14px}.faces{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.face{min-height:56px;border-radius:14px;border:2px solid var(--line);background:var(--surface2);font-size:1.6rem}.face.on{border-color:var(--sun);background:#fff3c9;transform:scale(1.06)}.weekrow{margin-bottom:12px}.weekrow h4{font-family:var(--display);font-weight:600;font-size:.95rem;margin-bottom:6px;display:flex;justify-content:space-between}.cells{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.cell{aspect-ratio:1;min-height:44px;border-radius:12px;border:2px solid var(--line);background:var(--surface);display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:800;font-size:.95rem;position:relative;padding:0;line-height:1}.cell small{font-size:.62rem;font-weight:700;color:var(--muted);margin-top:2px}.cell .ic{position:absolute;top:-6px;right:-4px;font-size:.8rem}.cell.done{background:var(--leaf2);border-color:var(--leaf);color:#0f2412}.cell.done small{color:#24452a}.cell.part{background:#e6f6d9;border-color:#b5e39a;color:#1c2b20}.cell.miss{background:var(--surface2);border-style:dashed;color:var(--muted)}.cell.today{border-color:var(--sun);box-shadow:0 0 0 3px #ffc83d80}.cell.lock{background:var(--surface2);border-color:var(--line);color:var(--muted);border-style:dotted}.cell.blank{visibility:hidden}.weed{display:flex;gap:12px;align-items:center}.dots{display:flex;gap:4px}.dots i{width:12px;height:12px;border-radius:50%;background:var(--line)}.dots i.on{background:var(--leaf)}.hp{height:14px;border-radius:999px;background:var(--line);overflow:hidden}.hp i{display:block;height:100%;background:linear-gradient(90deg,#ff5f5f,var(--danger));transition:width .5s}.check{display:flex;align-items:center;gap:10px;min-height:48px;padding:6px 4px;border-radius:12px}.check input{width:24px;height:24px;accent-color:var(--leaf);flex:none}.check.done span{text-decoration:line-through;color:var(--muted)}.lockcard{text-align:center;padding:22px 16px}.lockcard .big{font-size:2rem}.stats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.stat{background:var(--surface2);border-radius:16px;padding:12px;border:2px solid var(--line)}.stat b{font-family:var(--display);font-size:1.6rem;display:block;font-variant-numeric:tabular-nums}.badges{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.badge{text-align:center;padding:10px 6px;border-radius:16px;background:var(--surface2);border:2px solid var(--line);font-size:.78rem;font-weight:800}.badge .e{font-size:1.8rem;display:block;filter:grayscale(1);opacity:.4}.badge.got{border-color:var(--sun);background:#fff6d6;color:#3a2a00}.badge.got .e{filter:none;opacity:1}.idcard{border-radius:var(--r3);padding:18px;background:linear-gradient(160deg,#2e6b3a,#174124);color:#fff;position:relative;overflow:hidden}.idcard h3{font-size:1.4rem}.idcard .st{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.idcard .st div{background:#ffffff1f;border-radius:12px;padding:8px;text-align:center;font-size:.78rem}.idcard .st b{display:block;font-family:var(--display);font-size:1.3rem}.tabs{position:fixed;left:0;right:0;bottom:0;z-index:20;background:var(--surface);border-top:2px solid var(--line);padding:6px 8px calc(6px + env(safe-area-inset-bottom,0px))}.tabs .in{max-width:560px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.tab{min-height:56px;border:0;background:none;border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:800;font-size:.75rem;color:var(--muted);gap:2px}.tab span{font-size:1.35rem;line-height:1}.tab.on{background:var(--surface2);color:var(--moss)}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a140c8c;z-index:40;display:flex;align-items:flex-end;justify-content:center;animation:fade .2s}.sheet{background:var(--surface);width:100%;max-width:560px;max-height:92%;overflow:auto;border-radius:var(--r3) var(--r3) 0 0;padding:18px 16px calc(22px + env(safe-area-inset-bottom,0px));animation:up .28s cubic-bezier(.2,.9,.3,1)}.grab{width:44px;height:5px;border-radius:9px;background:var(--line);margin:0 auto 12px}@keyframes up{0%{transform:translateY(40px);opacity:0}}@keyframes fade{0%{opacity:0}}.steps{display:flex;gap:4px;margin-bottom:14px}.steps i{flex:1;height:6px;border-radius:9px;background:var(--line)}.steps i.on{background:var(--berry)}.hold{position:relative;overflow:hidden;user-select:none;-webkit-user-select:none}.hold .fill{position:absolute;left:0;top:0;bottom:0;width:0;background:#ffffff59}.toast{position:fixed;left:50%;bottom:96px;transform:translate(-50%);z-index:60;background:var(--text);color:var(--bg);padding:12px 18px;border-radius:14px;font-weight:800;box-shadow:0 8px 24px #00000040;max-width:90%;text-align:center;animation:up .25s}.confetti{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:70;overflow:hidden}.confetti i{position:absolute;top:-20px;width:10px;height:14px;border-radius:3px;animation:fall 1.6s ease-in forwards}@keyframes fall{to{transform:translateY(105vh) rotate(720deg);opacity:.6}}.sunrays{transform-origin:318px 40px;animation:spin 30s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.sway{transform-origin:180px 180px;animation:sway 6s ease-in-out infinite}@keyframes sway{50%{transform:rotate(1.2deg)}}.flick{animation:flick 1.8s ease-in-out infinite}@keyframes flick{0%,to{transform:scale(1)}30%{transform:scale(.94,1.06)}60%{transform:scale(1.04,.96)}}.blink{animation:blink 4s infinite}@keyframes blink{0%,92%,to{transform:scaleY(1)}95%{transform:scaleY(.1)}}.banner{background:#fff3c9;color:#3a2a00;border:2px solid var(--sun);border-radius:16px;padding:10px 14px;font-weight:700}.coach{background:var(--surface2);border-left:4px solid var(--berry);border-radius:12px;padding:10px 12px;white-space:pre-wrap}.sync{font-size:.75rem;font-weight:700;color:var(--muted)}.cpbar{display:flex;align-items:center;gap:12px;width:100%;margin-top:12px;padding:10px 14px;border-radius:18px;border:2px solid var(--line);background:var(--surface);box-shadow:var(--shadow);min-height:64px;color:var(--text)}.cpbar:active{transform:translateY(2px)}.cpi{font-size:1.6rem;width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:var(--surface2);flex:none}.cpprog{display:block;height:8px;border-radius:999px;background:var(--line);overflow:hidden;margin-top:6px}.cpprog i{display:block;height:100%;background:linear-gradient(90deg,var(--leaf),var(--sun));border-radius:999px;transition:width 1.2s cubic-bezier(.2,.8,.2,1)}.cpprog.big{height:14px}.opening{position:fixed;top:0;right:0;bottom:0;left:0;z-index:55;background:var(--bg);overflow:auto;padding:calc(18px + env(safe-area-inset-top,0px)) 16px calc(24px + env(safe-area-inset-bottom,0px));animation:fade .3s}.opening.out{opacity:0;transition:opacity .25s}.op-in{max-width:520px;margin:0 auto;text-align:center}.op-in>*{animation:rise .6s cubic-bezier(.2,.9,.3,1) both}.op-in>*:nth-child(2){animation-delay:.08s}.op-in>*:nth-child(3){animation-delay:.16s}.op-in>*:nth-child(4){animation-delay:.22s}.op-in>*:nth-child(5){animation-delay:.3s}.op-in>*:nth-child(6){animation-delay:.38s}.op-in>*:nth-child(7){animation-delay:.46s}@keyframes rise{0%{opacity:0;transform:translateY(14px)}}.op-greet{font-weight:800;color:var(--moss);font-size:1.05rem}.op-scene{margin:10px 0 12px;border-radius:var(--r3);overflow:hidden}.op-scene .scene{border-radius:var(--r3)}.op-big{font-size:2.4rem;line-height:1.05}.trail{width:100%;height:auto;overflow:visible}.splash-scene{border-radius:var(--r3);overflow:hidden;animation:rise .8s cubic-bezier(.2,.9,.3,1) both}@media (min-width:720px){.app{padding-bottom:120px}.hero{margin:14px 0 0}.scene{border-radius:var(--r3)}}:root[data-skin=holo]{--sky:#06122A;--sky2:#0B1F45;--soil:#050A1C;--soil2:#0A1430;--root:#43E8FF;--moss:#45F0D0;--leaf:#2FE6C8;--leaf2:rgba(47,230,200,.18);--sun:#7DF9FF;--petal:#FF4FD8;--berry:#A86BFF;--bg:#03040C;--surface:rgba(16,26,58,.55);--surface2:rgba(30,48,96,.35);--text:#E4F6FF;--muted:#8EAFD6;--line:rgba(110,210,255,.22);--danger:#FF4F7A;--danger-text:#FF8AA3;--shadow:0 0 0 1px rgba(110,210,255,.12),0 10px 30px -12px rgba(0,180,255,.35);--display:"Chakra Petch","Trebuchet MS",system-ui,sans-serif;--body:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;--holo:linear-gradient(115deg,#43E8FF,#A86BFF 35%,#FF4FD8 60%,#45F0D0 85%,#43E8FF)}[data-skin=holo] body{background:radial-gradient(1200px 600px at 50% -10%,rgba(80,120,255,.25),transparent 60%),radial-gradient(800px 500px at 100% 100%,rgba(255,79,216,.12),transparent 60%),var(--bg);background-attachment:fixed}[data-skin=holo] body:before{content:"";position:fixed;left:-50%;right:-50%;bottom:-10%;height:55vh;z-index:-1;pointer-events:none;background-image:linear-gradient(rgba(67,232,255,.22) 1px,transparent 1px),linear-gradient(90deg,rgba(67,232,255,.22) 1px,transparent 1px);background-size:44px 44px;transform:perspective(380px) rotateX(62deg);transform-origin:bottom;mask-image:linear-gradient(to top,#000,transparent 85%);-webkit-mask-image:linear-gradient(to top,#000,transparent 85%);animation:gridmove 6s linear infinite}@keyframes gridmove{to{background-position:0 44px,0 0}}[data-skin=holo] body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:80;background:repeating-linear-gradient(0deg,rgba(255,255,255,.025) 0 1px,transparent 1px 3px);mix-blend-mode:overlay}[data-skin=holo] h1,[data-skin=holo] h2,[data-skin=holo] h3{letter-spacing:.02em;text-shadow:0 0 18px rgba(67,232,255,.35)}[data-skin=holo] .card,[data-skin=holo] .cpbar,[data-skin=holo] .stat,[data-skin=holo] .badge,[data-skin=holo] .chip,[data-skin=holo] .face,[data-skin=holo] .cell{background:var(--surface)!important;color:var(--text)!important;border:1px solid var(--line)!important;backdrop-filter:blur(14px) saturate(1.3);-webkit-backdrop-filter:blur(14px) saturate(1.3)}[data-skin=holo] .card,[data-skin=holo] .cpbar{position:relative;box-shadow:var(--shadow);border-radius:18px;overflow:hidden}[data-skin=holo] .card:before,[data-skin=holo] .cpbar:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;padding:1px;background:var(--holo);background-size:300% 100%;animation:iri 8s linear infinite;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.55;pointer-events:none}[data-skin=holo] .card:after{content:"";position:absolute;top:0;bottom:0;width:40%;left:-60%;background:linear-gradient(100deg,transparent,rgba(160,230,255,.1),transparent);animation:sheen 7s ease-in-out infinite;pointer-events:none}@keyframes iri{to{background-position:300% 0}}@keyframes sheen{0%,70%{left:-60%}to{left:130%}}[data-skin=holo] .card *{color:inherit}[data-skin=holo] .card .muted,[data-skin=holo] .muted{color:var(--muted)!important}[data-skin=holo] .kicker{color:var(--sun)!important;letter-spacing:.08em;font-family:var(--display);text-transform:uppercase;font-size:.72rem}[data-skin=holo] .tag{background:#43e8ff14;border-color:#43e8ff59;color:var(--sun)!important;font-family:var(--display)}[data-skin=holo] .btn{background:linear-gradient(135deg,#43e8ff40,#a86bff40)!important;color:#e9fbff!important;border:1px solid rgba(110,220,255,.55)!important;box-shadow:0 0 18px #43e8ff59,inset 0 0 12px #43e8ff26!important;font-family:var(--display);letter-spacing:.04em;border-radius:12px}[data-skin=holo] .btn:active{transform:scale(.98);box-shadow:0 0 30px #43e8ff99!important}[data-skin=holo] .btn.sec{background:#ffffff0a!important;box-shadow:none!important;border-color:var(--line)!important}[data-skin=holo] .btn.danger{background:#ff4f7a2e!important;border-color:#ff4f7a99!important;box-shadow:0 0 16px #ff4f7a59!important}[data-skin=holo] .btn.sun{background:linear-gradient(135deg,#7df9ff59,#45f0d059)!important}[data-skin=holo] .chip.on,[data-skin=holo] .face.on,[data-skin=holo] .cell.done{background:linear-gradient(135deg,#2fe6c838,#43e8ff2e)!important;border-color:#45f0d0b3!important;box-shadow:0 0 16px #45f0d059;color:#e9fffa!important}[data-skin=holo] .chip.on small,[data-skin=holo] .cell.done small{color:#b9f7ea!important}[data-skin=holo] .chip .ico{background:#ffffff0f}[data-skin=holo] .cell.today{box-shadow:0 0 0 2px var(--sun),0 0 18px #7df9ff99!important}[data-skin=holo] .cell.part{background:#2fe6c814!important}[data-skin=holo] .badge.got{background:linear-gradient(135deg,#a86bff40,#ff4fd82e)!important;border-color:#ff4fd899!important;box-shadow:0 0 16px #ff4fd84d}[data-skin=holo] .banner{background:#7df9ff14;color:var(--text);border:1px solid rgba(125,249,255,.45)}[data-skin=holo] input.f,[data-skin=holo] textarea.f,[data-skin=holo] select.f{background:#050c2099;border:1px solid var(--line);color:var(--text)}[data-skin=holo] input.f:focus,[data-skin=holo] textarea.f:focus{outline:none;border-color:var(--sun);box-shadow:0 0 0 3px #7df9ff2e}[data-skin=holo] .xpbar,[data-skin=holo] .cpprog,[data-skin=holo] .hp{background:#ffffff0f}[data-skin=holo] .xpbar i,[data-skin=holo] .cpprog i{background:var(--holo);background-size:200% 100%;animation:iri 4s linear infinite;box-shadow:0 0 12px #43e8ff99}[data-skin=holo] .tabs{background:#060a1abf;border-top:1px solid var(--line);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}[data-skin=holo] .tab.on{background:#43e8ff1f;color:var(--sun);box-shadow:inset 0 -2px 0 var(--sun)}[data-skin=holo] .idcard{background:linear-gradient(140deg,#43e8ff38,#a86bff40 50%,#ff4fd833)!important;border:1px solid rgba(160,220,255,.4);box-shadow:0 0 40px #7878ff59}[data-skin=holo] .sheet{background:#080e24eb;border-top:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);color:var(--text)}[data-skin=holo] .opening{background:transparent}[data-skin=holo] .opening:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(900px 500px at 50% 0%,rgba(80,120,255,.3),transparent 60%),var(--bg);z-index:-1}[data-skin=holo] .toast{background:#0a1432eb;color:var(--sun);border:1px solid rgba(125,249,255,.5);box-shadow:0 0 24px #43e8ff66}[data-skin=holo] .coach{background:#a86bff1a}[data-skin=holo] .hero,[data-skin=holo] .op-scene,[data-skin=holo] .splash-scene{position:relative}[data-skin=holo] .scene{filter:saturate(1.2) drop-shadow(0 0 14px rgba(67,232,255,.45));border-radius:22px;animation:holoflick 5s infinite steps(1)}@keyframes holoflick{0%,96%,to{opacity:1}97%{opacity:.82}98%{opacity:1}99%{opacity:.9}}[data-skin=holo] .hero:after,[data-skin=holo] .op-scene:after,[data-skin=holo] .splash-scene:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:22px;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(67,232,255,.07) 0 2px,transparent 2px 5px),linear-gradient(180deg,transparent 0%,rgba(67,232,255,.12) 50%,transparent 52%);background-size:100% 100%,100% 300%;animation:scan 4s linear infinite;mix-blend-mode:screen}@keyframes scan{0%{background-position:0 0,0 -100%}to{background-position:0 0,0 200%}}[data-skin=holo] .hero:before{content:"";position:absolute;left:12%;right:12%;bottom:-14px;height:28px;border-radius:50%;background:radial-gradient(closest-side,rgba(67,232,255,.55),transparent);filter:blur(4px);pointer-events:none}[data-skin=holo] .pill{background:#060e24b3;color:var(--text);border:1px solid rgba(125,249,255,.4);box-shadow:0 0 14px #43e8ff4d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}[data-skin=holo] .daybig small{opacity:.7}[data-skin=holo] .trail text{fill:var(--muted)}[data-skin=holo] .skinpick .chip.on{box-shadow:0 0 18px #a86bff80}@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}:root[data-skin=candy]{--sky:#7FD4FF;--sky2:#D9F1FF;--soil:#6B3A24;--soil2:#8B4D2E;--root:#E8A15A;--moss:#1F6B2A;--leaf:#3FD04B;--leaf2:#9BF06A;--sun:#FFD21F;--petal:#FF4FA3;--berry:#8645E6;--bg:#4B1E8A;--surface:#FFF8FC;--surface2:#FFE9F4;--text:#FFFFFF;--muted:#EBDDFF;--line:#FFB3DA;--danger:#B3123F;--danger-text:#FFC2DD;--shadow:0 5px 0 rgba(90,20,110,.45);--display:"Baloo 2","Fredoka","Trebuchet MS",system-ui,sans-serif;--body:"Nunito",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;--r1:14px;--r2:24px;--r3:32px}[data-skin=candy] body{background:linear-gradient(180deg,#6a2cc4,#4b1e8a 55%,#37146b);background-attachment:fixed;color:var(--text)}[data-skin=candy] body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background-image:radial-gradient(circle,rgba(255,255,255,.55) 0 2px,transparent 3px),radial-gradient(circle,rgba(255,210,31,.5) 0 2px,transparent 3px),radial-gradient(circle,rgba(255,79,163,.45) 0 3px,transparent 4px);background-size:120px 120px,170px 170px,230px 230px;background-position:10px 20px,70px 90px,130px 40px;animation:twinkle 5s ease-in-out infinite}@keyframes twinkle{50%{opacity:.45}}[data-skin=candy] :is(.card,.cpbar,.stat,.badge,.chip,.face,.cell,.sheet,.banner,.coach,.tag,.check,.pill,.toast,input.f,textarea.f,select.f){--text:#3A1850;--muted:#6B4A85;--moss:#1F6B2A;--danger-text:#B3123F;color:var(--text)}[data-skin=candy] h1{color:#fff;text-shadow:0 3px 0 rgba(60,10,90,.55);letter-spacing:.01em}[data-skin=candy] h2,[data-skin=candy] h3{letter-spacing:.01em}[data-skin=candy] .card,[data-skin=candy] .cpbar{background:linear-gradient(180deg,#fff,#fff1f8);border:3px solid #FFB3DA;border-radius:var(--r2);box-shadow:var(--shadow),inset 0 3px #ffffffe6}[data-skin=candy] .card.quest{border-color:#7de06a;background:linear-gradient(180deg,#fff,#f1ffe9)}[data-skin=candy] .card.reset{border-color:#b48cf5}[data-skin=candy] .card.boss{border-color:#ff6a8e}[data-skin=candy] .kicker{font-family:var(--display);font-weight:800;font-size:.85rem}[data-skin=candy] .tag{background:#fff1a8;border:2px solid #F2C300;color:#4a2a00}[data-skin=candy] .btn{font-family:var(--display);font-weight:800;font-size:1.05rem;border-radius:18px;border:3px solid #1D7A2A;color:#0e3d12;background:linear-gradient(180deg,#8cf36a,#2fc53a);box-shadow:0 5px #145a1f,inset 0 3px #fff9;text-shadow:0 1px 0 rgba(255,255,255,.45)}[data-skin=candy] .btn:active{transform:translateY(4px);box-shadow:0 1px #145a1f,inset 0 3px #fff9}[data-skin=candy] .btn.sec{background:linear-gradient(180deg,#fff,#ffe3f1);border-color:#ffb3da;color:#5b1f8a;box-shadow:0 4px #e08dbb,inset 0 3px #ffffffe6}[data-skin=candy] .btn.sun{background:linear-gradient(180deg,#fff08a,#ffb300);border-color:#c77b00;color:#4a2a00;box-shadow:0 5px #a86400,inset 0 3px #ffffffa6}[data-skin=candy] .btn.berry{background:linear-gradient(180deg,#8645e6,#6b22d1);border-color:#4a139b;color:#fff;text-shadow:0 1px 0 rgba(0,0,0,.25);box-shadow:0 5px #3a0f7a,inset 0 3px #ffffff59}[data-skin=candy] .btn.danger{background:linear-gradient(180deg,#d92b6a,#b3123f);border-color:#7e0b2d;color:#fff;text-shadow:0 1px 0 rgba(0,0,0,.25);box-shadow:0 5px #6b0a27,inset 0 3px #ffffff4d}[data-skin=candy] .link{color:#fff;text-decoration-thickness:2px}[data-skin=candy] :is(.card,.sheet,.banner,.coach) .link{color:#6b22d1}[data-skin=candy] input.f,[data-skin=candy] textarea.f,[data-skin=candy] select.f{background:#fff;border:3px solid #FFB3DA;border-radius:16px;color:#3a1850}[data-skin=candy] input.f:focus,[data-skin=candy] textarea.f:focus{outline:none;border-color:#8645e6;box-shadow:0 0 0 4px #8645e640}[data-skin=candy] .chip,[data-skin=candy] .face{background:linear-gradient(180deg,#fff,#ffeaf5);border:3px solid #FFB3DA;border-radius:18px;box-shadow:0 4px #e8a0c8}[data-skin=candy] .chip .ico{background:#ffe3f1}[data-skin=candy] .chip.on,[data-skin=candy] .face.on{background:linear-gradient(180deg,#fff6a8,#ffd21f);border-color:#e0a800;color:#4a2a00;box-shadow:0 4px #b88700,inset 0 3px #ffffffb3}[data-skin=candy] .chip.on small{color:#6b4a00}[data-skin=candy] .chip.on .ico{background:#fff}[data-skin=candy] .cell{background:linear-gradient(180deg,#fff,#fff0f8);border:3px solid #FFB3DA;border-radius:14px;box-shadow:0 3px #e8a0c8}[data-skin=candy] .cell.done{background:linear-gradient(180deg,#b8f79a,#5bdb4b);border-color:#2fa82e;color:#0e3d12;box-shadow:0 3px #1d7a2a}[data-skin=candy] .cell.done small{color:#14501a}[data-skin=candy] .cell.part{background:linear-gradient(180deg,#f0ffe4,#cff5b5);border-color:#9bdb6a}[data-skin=candy] .cell.miss{background:#fff8fc;border-style:dashed}[data-skin=candy] .cell.today{border-color:#ffb300;box-shadow:0 0 0 4px #ffd21fbf,0 3px #c77b00}[data-skin=candy] .cell.lock{background:#efe3fa;border:3px dotted #C9B3E8;box-shadow:none;color:#6b4a85}[data-skin=candy] .xpbar,[data-skin=candy] .cpprog{background:#ffffff47;border:3px solid #fff;box-shadow:inset 0 2px #3c0a5a40}[data-skin=candy] .xpbar{height:18px}[data-skin=candy] .xpbar i,[data-skin=candy] .cpprog i{background:repeating-linear-gradient(45deg,#ff4fa3 0,#ff4fa3 10px,#ff9ad0 10px,#ff9ad0 20px);background-size:28px 28px;animation:stripes 1.2s linear infinite}@keyframes stripes{to{background-position:28px 0}}[data-skin=candy] .hp{background:#fff6;border:2px solid #fff}[data-skin=candy] .pill{background:#fff;border:3px solid #FFB3DA;box-shadow:0 3px #5a146e59}[data-skin=candy] .scene{border:4px solid #fff;border-radius:28px;box-shadow:0 6px #3c0a5a73}[data-skin=candy] .hero{margin-left:0;margin-right:0}[data-skin=candy] .badge{background:linear-gradient(180deg,#fff,#f4ecff);border:3px solid #D9C2F5;border-radius:18px}[data-skin=candy] .badge.got{background:linear-gradient(180deg,#fff6a8,#ffd21f);border-color:#e0a800;color:#4a2a00}[data-skin=candy] .stat{background:linear-gradient(180deg,#fff,#f4ecff);border:3px solid #D9C2F5;border-radius:18px}[data-skin=candy] .banner{background:#fff3c9;border:3px solid #FFD21F;color:#3a2a00}[data-skin=candy] .coach{background:#f4ecff;border-left:6px solid #8645E6}[data-skin=candy] .idcard{background:linear-gradient(145deg,#ff4fa3,#8645e6 60%,#4b1e8a);border:4px solid #fff;box-shadow:0 6px #3c0a5a73;color:#fff}[data-skin=candy] .tabs{background:linear-gradient(180deg,#7a3fc9,#4b1e8a);border-top:4px solid #FFB3DA;box-shadow:0 -4px #3c0a5a59}[data-skin=candy] .tab{color:#ebddff;font-family:var(--display);font-size:.8rem;border-radius:18px}[data-skin=candy] .tab.on{background:linear-gradient(180deg,#fff08a,#ffb300);color:#4a2a00;box-shadow:0 4px #a86400,inset 0 3px #ffffffa6}[data-skin=candy] .sheet{background:linear-gradient(180deg,#fff,#fff1f8);border-top:5px solid #FFB3DA;color:#3a1850}[data-skin=candy] .scrim{background:#280a4699}[data-skin=candy] .toast{background:#3a1850;color:#fff;border:3px solid #FFB3DA;box-shadow:0 6px #0000004d}[data-skin=candy] .opening{background:linear-gradient(180deg,#6a2cc4,#4b1e8a 60%,#37146b)}[data-skin=candy] .op-greet{color:#ffe45a}[data-skin=candy] .steps i{background:#ffffff59}[data-skin=candy] .steps i.on{background:#ffd21f}[data-skin=candy] .urge{border:3px dashed #FF4FA3;color:#3a1850;border-radius:18px;background:#fff}[data-skin=candy] .trail text{fill:#fff}[data-skin=candy] .daybig small{opacity:.8}
