:root{--bg:#fff;--sf:#f4f6f9;--card:#fff;--tx:#081e34;--tx2:#5d6b7c;--line:rgba(8,30,52,.1);--blue:#2770fe;--lime:#def57d;--gray:#e3e7ed;--yel:#f4d87f;--red:#d92d20;--hd:rgba(255,255,255,.85);--fmix:#fff;--sh:0 1px 2px rgba(8,30,52,.05),0 6px 18px rgba(8,30,52,.06);--ft:"Stack Sans Text",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--fh:"Stack Sans Headline","Stack Sans Text",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);color-scheme:light}:root[data-theme=dark]{--bg:#08121f;--sf:#0f1c2d;--card:#14263c;--tx:#f2f5f9;--tx2:#9aa8ba;--line:rgba(255,255,255,.11);--gray:#2b3a4e;--red:#ff6b5e;--hd:rgba(8,18,31,.85);--fmix:#08121f;--sh:none;color-scheme:dark}html{scroll-padding-top:env(safe-area-inset-top,0px)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--tx);font:15px/1.45 var(--ft);-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);background:var(--hd);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:10}button{font-family:inherit}.bar{position:sticky;top:env(safe-area-inset-top,0px);z-index:5;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 20px;background:var(--hd);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid var(--line)}.logo{height:42px;width:auto;display:block}.logo.d{display:none}:root[data-theme=dark] .logo.l{display:none}:root[data-theme=dark] .logo.d{display:block}.right{display:flex;gap:8px;align-items:center}.btn{border:0;background:var(--blue);color:#fff;font-weight:600;font-size:14px;padding:9px 16px;border-radius:980px;cursor:pointer;white-space:nowrap}.btn.sec{background:var(--sf);color:var(--tx);border:1px solid var(--line)}.btn.del{background:transparent;color:var(--red)}.ic{width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:var(--sf);font-size:17px;cursor:pointer;line-height:1}.btn:focus-visible,.ic:focus-visible,.seg button:focus-visible,.folder:focus-visible,.card:focus-visible,.chip:focus-visible,.back:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.hero{max-width:1100px;margin:0 auto;padding:26px 20px 6px}h1{margin:0;font:600 clamp(28px,5vw,40px)/1.08 var(--fh);letter-spacing:-.025em}.sub{margin:6px 0 0;color:var(--tx2);font-size:15px}.seg{display:inline-flex;background:var(--sf);border:1px solid var(--line);border-radius:12px;padding:3px;margin-top:18px;max-width:100%;overflow-x:auto}.seg button{border:0;background:transparent;color:var(--tx2);font-size:14px;font-weight:500;padding:7px 14px;border-radius:9px;cursor:pointer;white-space:nowrap}.seg button[aria-selected=true]{background:var(--card);color:var(--tx);font-weight:600;box-shadow:0 1px 3px #081e342e}.pill{display:inline-block;min-width:18px;padding:0 6px;margin-left:5px;border-radius:9px;background:var(--red);color:#fff;font-size:11px;line-height:18px}main{max-width:1100px;margin:0 auto;padding:18px 20px 30px}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:26px}.stat{border-radius:18px;padding:16px 18px;background:var(--sf);border:1px solid var(--line)}.stat.b{background:var(--blue);color:#fff;border-color:transparent}.stat.g{background:var(--lime);color:#081e34;border-color:transparent}.stat span{display:block;font-size:13px;opacity:.8}.stat b{display:block;font:600 26px/1.2 var(--fh);letter-spacing:-.02em;margin-top:2px}.c-gray{--fc:var(--gray)}.c-blue{--fc:var(--blue)}.c-lime{--fc:var(--lime)}.c-yel{--fc:var(--yel)}.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:14px 16px;box-shadow:var(--sh);cursor:pointer;height:206px;display:flex;flex-direction:column;overflow:hidden;flex:none}.card b{display:block;font-weight:600;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card .m{font:600 20px/1.3 var(--fh);margin:4px 0 2px;letter-spacing:-.01em}.card .l,.card .last{font-size:13px;color:var(--tx2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card .last{margin-top:auto;padding-top:8px;border-top:1px solid var(--line)}.tag{display:inline-block;margin:8px 6px 0 0;padding:2px 10px;border-radius:980px;font-size:12px;font-weight:500;background:var(--sf);color:var(--tx2);border:1px solid var(--line)}.tag.red{background:#d92d201f;color:var(--red);border-color:transparent}.tag.blue{background:#2770fe24;color:var(--blue);border-color:transparent}.tag.lime{background:var(--lime);color:#081e34;border-color:transparent}.empty{grid-column:1/-1;color:var(--tx2);font-size:14px;text-align:center;padding:22px 0;margin:0}.list{max-width:720px}.list h2{font:600 20px/1.2 var(--fh);letter-spacing:-.015em;margin:22px 0 10px}.item{display:flex;align-items:center;gap:12px;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin-bottom:8px;box-shadow:var(--sh);cursor:pointer}.item .g{flex:1;min-width:0}.item b{display:block;font-weight:600}.item span{color:var(--tx2);font-size:13px}.item p{margin:4px 0 0;font-size:14px;white-space:pre-wrap}.ov{position:fixed;top:0;right:0;bottom:0;left:0;background:#081e3473;z-index:20;display:flex;align-items:flex-end;justify-content:center}.ov[hidden]{display:none}.sheet{background:var(--bg);width:100%;max-width:580px;max-height:92%;overflow:auto;border-radius:22px 22px 0 0;padding:20px;padding-bottom:calc(20px + env(safe-area-inset-bottom,0px))}@media (min-width:640px){.ov{align-items:center}.sheet{border-radius:22px;max-height:90%}}.sheet h2{margin:0 0 14px;font:600 22px/1.2 var(--fh);letter-spacing:-.02em}.sheet h3{margin:20px 0 8px;font:600 16px/1.2 var(--fh)}.grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.grid .w{grid-column:1/-1}label{display:block;font-size:12px;color:var(--tx2);margin:0 0 4px 4px}input,select,textarea{width:100%;font:inherit;color:var(--tx);background:var(--sf);border:1px solid var(--line);border-radius:10px;padding:10px 12px}input:focus,select:focus,textarea:focus{outline:2px solid var(--blue);outline-offset:0;border-color:transparent}textarea{min-height:66px;resize:vertical}.acts{display:flex;gap:8px;justify-content:flex-end;margin-top:16px;flex-wrap:wrap}.aform{display:grid;grid-template-columns:1fr;gap:8px;background:var(--sf);border:1px solid var(--line);border-radius:14px;padding:12px}.log{margin:10px 0 0;padding:0;list-style:none}.log li{display:flex;gap:10px;font-size:14px;padding:9px 0;border-top:1px solid var(--line)}.log li>span{font-size:18px;line-height:1.3}.log time{color:var(--tx2);display:block;font-size:12px}.foot{display:flex;gap:8px;justify-content:center;padding:6px 10px 24px}.foot .btn{font-size:13px;padding:7px 14px}.btn.del.sure{background:var(--red);color:#fff}.item{flex-wrap:wrap}.bt{display:flex;gap:6px;flex-wrap:wrap}.stat small{display:block;font-size:12px;opacity:.75;margin-top:2px}.wrap2 h2{font:600 20px/1.2 var(--fh);letter-spacing:-.015em;margin:28px 0 12px}.wrap2 .stats{margin-bottom:6px}.br{display:grid;grid-template-columns:minmax(120px,230px) 1fr minmax(120px,auto);gap:10px;align-items:center;margin:9px 0;font-size:14px}.bt2{background:var(--sf);border:1px solid var(--line);border-radius:980px;height:12px;overflow:hidden}.bt2 i{display:block;height:100%;min-width:3px;background:var(--blue);border-radius:980px}.bv{color:var(--tx2);font-size:13px;text-align:right}@media (max-width:560px){.br{grid-template-columns:1fr;gap:4px}.bv{text-align:left}}.board{display:flex;gap:14px;overflow-x:auto;margin:0 -20px;padding:4px 20px 18px;scroll-snap-type:x proximity;align-items:stretch}.col{flex:0 0 292px;scroll-snap-align:start;background:var(--sf);border:1px solid var(--line);border-radius:20px;padding:12px;display:flex;flex-direction:column;height:clamp(470px,calc(100vh - 360px),680px)}.col.over{outline:2px dashed var(--blue);outline-offset:2px}.col header{padding:4px 4px 12px}.ch{display:flex;justify-content:space-between;align-items:center;gap:8px}.col h3{margin:0;font:600 15px/1.25 var(--fh);letter-spacing:-.01em}.col header p{margin:3px 0 0;font-size:12px;color:var(--tx2)}.col header:after{content:"";display:block;height:3px;width:36px;border-radius:2px;background:var(--fc);margin-top:10px}.add{flex:none;width:28px;height:28px;border-radius:50%;border:0;background:var(--card);color:var(--blue);font-size:18px;line-height:1;cursor:pointer;box-shadow:var(--sh)}.col .card{margin-bottom:10px}.col .empty{padding:16px 0}.tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px;max-height:53px;overflow:hidden}.tags .tag{margin:0;white-space:nowrap}.cb{flex:1;min-height:0;overflow-y:auto}.col header{flex:none}.tools{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:20px}.tools .seg{margin-top:0}.filters{display:flex;align-items:center;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line);overflow-x:auto}.cap{font-size:12px;color:var(--tx2);margin-right:2px;white-space:nowrap}.fl{border:1px solid var(--line);background:var(--sf);color:var(--tx);border-radius:980px;padding:7px 14px;font-size:14px;cursor:pointer;white-space:nowrap}.fl[aria-selected=true]{background:var(--blue);color:#fff;border-color:transparent}.fl:focus-visible,.chip:focus-visible,.folder:focus-visible,.back:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.btn.sec[aria-pressed=true]{background:var(--blue);color:#fff;border-color:transparent}.folders{display:grid;grid-template-columns:repeat(4,1fr);gap:24px 40px}.folder{position:relative;padding-top:16px;cursor:pointer}.folder:before{content:"";position:absolute;top:0;left:0;width:46%;height:20px;background:var(--fc);border-radius:12px 12px 0 0}.folder:after{content:"›";position:absolute;right:-31px;top:calc(50% + 8px);width:22px;height:22px;margin-top:-11px;border-radius:50%;background:var(--sf);border:1px solid var(--line);color:var(--tx2);display:grid;place-items:center;font-size:15px;line-height:1}.folder:nth-child(4n):after,.folder:last-child:after{display:none}@media (max-width:900px){.folders{grid-template-columns:repeat(2,1fr);gap:22px 40px}.folder:nth-child(4n):after{display:grid}.folder:nth-child(2n):after,.folder:last-child:after{display:none}}.fback{position:relative;height:168px;background:var(--fc);border-radius:0 18px 18px;overflow:hidden}.ffront{position:absolute;left:0;right:0;bottom:0;top:30px;padding:12px 14px;border-radius:16px 16px 18px 18px;background:color-mix(in srgb,var(--fc) 60%,var(--fmix));color:var(--tx);display:flex;flex-direction:column;justify-content:space-between;transition:transform .2s}.folder:hover .ffront{transform:translateY(-3px)}.folder.over .fback{outline:3px dashed var(--blue);outline-offset:3px}:root[data-theme=dark] .folder.lt .ffront{color:#081e34}.ftop{display:flex;align-items:center;gap:8px}.num,.cnt{font-size:12px;font-weight:600;background:#fff9;color:#081e34;border-radius:980px;min-width:24px;height:24px;display:inline-grid;place-items:center;padding:0 8px}.cnt{margin-left:auto}.em{font-size:24px;line-height:1}.ffront h3{margin:0;font:600 15px/1.2 var(--fh);letter-spacing:-.01em}.ffront strong{font-size:15px;font-weight:600}.wrap .fh{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap;margin:6px 0 14px}.wrap h2{margin:0;font:600 26px/1.15 var(--fh);letter-spacing:-.02em}.back{border:0;background:none;color:var(--blue);font-size:15px;font-weight:600;cursor:pointer;padding:4px 0}.steps{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:4px 0 18px}.chev{color:var(--tx2);font-size:16px}.chip{display:inline-flex;gap:5px;align-items:center;border:1px solid var(--line);background:var(--sf);color:var(--tx);border-radius:980px;padding:5px 11px;font-size:13px;cursor:pointer}.chip b{font-weight:600;color:var(--tx2)}.chip.on{background:var(--blue);color:#fff;border-color:transparent}.chip.on b{color:#fff}.chip.over{outline:2px dashed var(--blue)}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.note{background:var(--sf);border:1px solid var(--line);border-radius:14px;padding:12px 16px;margin-bottom:18px;font-size:14px;color:var(--tx2)}.note .btn{margin:0 4px;padding:6px 12px;font-size:13px}#toast{position:fixed;left:50%;transform:translate(-50%);bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:30;background:var(--tx);color:var(--bg);padding:10px 16px;border-radius:980px;font-size:14px;max-width:90%;text-align:center}#toast[hidden],.ro #new,.ro .add,.ro [data-newin],.ro [data-done],.ro [data-kdone],.ro [data-ok],.ro [data-bk],.ro #s_ok,.ro #a_add,.ro #s_del,.ro #imp,.ro .aform{display:none}.ro .sheet input,.ro .sheet select,.ro .sheet textarea{pointer-events:none;opacity:.75}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.login{display:none;min-height:calc(100vh - 90px);place-items:center;padding:24px 20px}body.auth .login{display:grid}body.auth .hero,body.auth main,body.auth .foot,body.auth #new{display:none}.lcard{width:100%;max-width:380px;background:var(--sf);border:1px solid var(--line);border-radius:22px;padding:28px}.lcard .logo{height:52px;margin-bottom:18px}.lcard h1{font-size:26px}.lcard label{margin-top:14px}.lcard #li_msg{color:var(--red);min-height:20px;margin:10px 0 0;font-size:13px}.lbtns{display:flex;flex-direction:column;gap:8px;margin-top:14px}
