@import "https://fonts.googleapis.com/css2?family=Gaegu:wght@400;700&display=swap";
:root{--bg:#fff8e6;--card:#fffdf7;--ink:#1d2327;--muted:#666d73;--line:#f0e2b8;--brand:#2f7d63;--brand-ink:#fff;--warn:#b4531a;--danger:#b3261e;--r-card:20px;--r-btn:16px;--r-pill:999px;--shadow:0 3px 0 #e0b80038;--btn-shadow:0 3px 0 #00000024;--accent-soft:#ffd65073;--today-bg:#ffd65059;--font:-apple-system, "Pretendard", "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", sans-serif}@media (prefers-color-scheme:dark){:root{--bg:#15191b;--card:#1e2427;--ink:#eef1f2;--muted:#9aa3a8;--line:#2f383c;--brand:#5fb39b;--brand-ink:#0e1a16;--warn:#f0a06a;--danger:#ff8a80}}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);font-family:var(--font);margin:0;font-size:17px;line-height:1.55}main{max-width:640px;margin:0 auto;padding:20px 16px 80px}h1{margin:8px 0 4px;font-size:24px}h2{margin:32px 0 12px;font-size:19px}.sub{color:var(--muted);margin:0 0 20px}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--shadow);margin-bottom:12px;padding:16px}.btn{appearance:none;border-radius:var(--r-btn);box-shadow:var(--btn-shadow);background:var(--brand);color:var(--brand-ink);cursor:pointer;border:0;width:100%;padding:14px 18px;font-size:17px;font-weight:600}.btn.ghost{color:var(--ink);border:1px solid var(--line);background:0 0}.btn.small{width:auto;padding:8px 12px;font-size:14px}.btn:disabled{opacity:.5;cursor:default}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.row>*{flex:1}label{color:var(--muted);margin:12px 0 4px;font-size:14px;display:block}input[type=text],input[type=number],input[type=date],input[type=time],input[type=password],textarea,select{width:100%;font:inherit;border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:10px;padding:10px 12px}textarea{resize:vertical;min-height:72px}.tag{background:var(--bg);border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:2px 8px;font-size:13px;display:inline-block}.dday{white-space:nowrap;border-radius:999px;padding:1px 8px;font-weight:700}.dday.week{color:var(--warn)}.dday.soon{color:var(--warn);background:#e0821e2e}.dday.today{color:#fff;background:var(--danger)}.dday.over,.dday.late{color:var(--danger);background:#b3261e24}.item h3{margin:6px 0 2px;font-size:18px}.kv{grid-template-columns:76px 1fr;gap:2px 10px;margin:10px 0 0;display:grid}.kv dt{color:var(--muted);padding-top:2px;font-size:14px}.kv dd{margin:0}.check{background:color-mix(in srgb, var(--warn) 12%, transparent);border-radius:10px;margin-top:12px;padding:10px 12px;font-size:15px}.error{color:var(--danger);margin:12px 0 0}.hint{color:var(--muted);margin-top:8px;font-size:14px}a{color:var(--brand)}.pay{border:1px solid var(--line);border-radius:10px;margin:0 0 8px;padding:10px}.sum{margin:12px 0 8px;font-size:18px}.owed{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;display:flex}.owed .big{font-size:24px;font-weight:700}.kv dd .line{display:block}.kv dd .total{margin-top:4px;font-weight:700;display:block}.kv dd .late{color:var(--warn);display:block}.cmp{border-collapse:collapse;width:100%;min-width:520px;font-size:15px}.cmp th,.cmp td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:8px 10px}.cmp thead th{font-size:14px}.cmp tbody th{width:110px;color:var(--muted);font-size:14px;font-weight:500}.cmp tr.differ td{background:color-mix(in srgb, var(--warn) 14%, transparent);font-weight:600}.privacy{color:var(--muted);border-left:3px solid var(--brand);margin:16px 0;padding-left:10px;font-size:14px}.task{border-top:1px solid var(--line);margin-top:12px;padding-top:10px}.acct,.acct .line{display:block}.acct .btn{margin:6px 0 2px}.acct .hint{display:block}.task.done{opacity:.55}.task.done strong{text-decoration:line-through}.tabs{gap:6px;margin:0 0 12px;display:flex}.tabs button{border:1px solid var(--line);border-radius:var(--r-btn);font:inherit;color:inherit;cursor:pointer;background:0 0;flex:1;padding:10px}.tabs button.on{background:var(--brand);border-color:var(--brand);color:var(--brand-ink);font-weight:700}button.compact{text-align:left;width:100%;font:inherit;color:var(--muted,#888);cursor:pointer;background:0 0;border:0;display:block}.card.item.compact{border:1px solid var(--line);background:#7f7f7f14;padding:10px 14px}.task.compact{border-top:1px solid var(--line);margin-top:10px;padding:8px 0 4px}.compact .ctitle{opacity:.7;overflow-wrap:anywhere;font-weight:600;text-decoration:line-through;display:block}.compact .cmeta{opacity:.7;margin-top:2px;font-size:13px;display:block}.cal-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.cal-head strong{text-align:center;flex:1;font-size:18px}.cal{grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;display:grid}.cal-w{text-align:center;opacity:.7;padding:4px 0;font-size:12px}.cal-w.sun,.cal-n.sun{color:var(--danger)}.cal-c{border:1px solid var(--line);border-radius:calc(var(--r-card) * .6);min-height:64px;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;flex-direction:column;gap:2px;padding:4px 3px;display:flex;overflow:hidden}.cal-c.empty{cursor:default;border:0}.cal-c.today{border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand)}.cal-c.sel{background:#2d6e5a24}.cal-n{font-size:12px;font-weight:600}.chip{background:var(--accent-soft);white-space:nowrap;text-overflow:ellipsis;border-radius:4px;padding:1px 3px;font-size:10px;line-height:1.25;overflow:hidden}.chip.late{color:var(--danger);background:#c83c2833}.chip.done{opacity:.7;background:#7f7f7f2e;text-decoration:line-through}.more{opacity:.7;font-size:10px}.card.item{position:relative}.item.done>:not(.stamp){opacity:.55}.stamp{z-index:2;border:3px double var(--brand);color:var(--brand);text-align:center;letter-spacing:2px;pointer-events:none;opacity:.9;background:#ffffff8c;border-radius:8px;padding:1px 10px 3px;font-size:19px;font-weight:900;line-height:1.1;animation:.4s cubic-bezier(.2,1.4,.4,1) both stamp-in;position:absolute;top:8px;right:14px;transform:rotate(-12deg)}.stamp small{letter-spacing:3px;font-size:10px;font-weight:700;display:block}.stamp.mini{letter-spacing:1px;border-width:2px;margin-top:-13px;padding:1px 7px;font-size:13px;animation:none;top:50%;right:12px}button.compact{position:relative}.card.item.compact .ctitle{padding-right:78px}@keyframes stamp-in{0%{opacity:0;transform:rotate(-12deg)scale(2.4)}70%{opacity:1;transform:rotate(-12deg)scale(.94)}to{opacity:.9;transform:rotate(-12deg)scale(1)}}@media (prefers-reduced-motion:reduce){.stamp{animation:none}}.item.done{opacity:1}.item.done h3{margin-top:16px}.filters{flex-wrap:wrap;gap:6px;margin:0 0 12px;display:flex}.filters button{border:1px solid var(--line);font:inherit;color:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:6px 12px;font-size:14px}.filters button.on{background:var(--brand);border-color:var(--brand);color:var(--brand-ink);font-weight:700}.filters button.hide{opacity:.85;margin-left:auto}.star{cursor:pointer;color:var(--muted);background:0 0;border:0;padding:0 2px;font-size:22px;line-height:1}.star.on{color:#e0a100}.stk{margin-right:4px}.cal-c{position:relative}.cal-c.u-soon{background:#e0821e29;border-color:#e0821e8c}.cal-c.u-today{border-color:var(--danger);background:#b3261e2e}.cal-c.u-over{background:#b3261e1a;border-color:#b3261e80}.cal-c.sel{box-shadow:inset 0 0 0 2px var(--brand)}.cal-flag{font-size:12px;line-height:1;position:absolute;top:2px;right:3px}.chip.soon{background:#e0821e47}.chip.today{color:var(--danger);background:#b3261e4d;font-weight:700}.cal-legend{opacity:.75;margin:8px 0 0;font-size:12px}.filters.kinds{margin-top:-4px}.filters .lab{opacity:.7;align-self:center;margin-right:2px;font-size:13px}.hol{color:var(--danger);white-space:nowrap;text-overflow:ellipsis;font-size:10px;font-weight:600;line-height:1.2;overflow:hidden}.hol.sub{opacity:.8}.hol-title{color:var(--danger);margin-left:8px;font-size:14px;font-weight:700}.cal-c.today{border:2px solid var(--brand);background:var(--today-bg)}.cal-c.today .cal-n{background:var(--brand);color:var(--brand-ink);border-radius:999px;align-self:flex-start;padding:1px 7px}.cal-c.today:after{content:"오늘";color:var(--brand);font-size:9px;font-weight:700;position:absolute;bottom:2px;right:4px}.ystar{color:#f5b301;text-shadow:0 0 1px #b88400;margin-right:1px}.star{color:#c9c9c9}.star.on{color:#f5b301;text-shadow:0 0 1px #b88400}.filters button.on .ystar{color:#ffd84d}.offcal h2{margin-top:26px}.cal-w.sat,.cal-n.sat{color:#2f6fd0}.offrow{padding:10px 0}.offrow:first-child{border-top:0;margin-top:0}.datepick{align-items:center;gap:8px;font-size:14px;display:flex}.datepick input{width:auto}.themes{flex-wrap:wrap;gap:6px;display:flex}.themes button{border:1px solid var(--line);border-radius:var(--r-pill);background:var(--card);font:inherit;color:inherit;cursor:pointer;padding:5px 10px;font-size:13px}.themes button.on{background:var(--brand);border-color:var(--brand);color:var(--brand-ink);font-weight:700}.mascot{background:var(--card);border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--shadow);align-items:center;gap:12px;margin:0 0 14px;padding:10px 14px;display:flex}.mascot .face{white-space:nowrap;font-size:40px;line-height:1}.mascot .say{font-weight:700}.mascot.alarm .say{color:var(--danger)}.mascot.alarm .face{animation:1.2s ease-in-out infinite wobble}.mascot.clear .face{animation:1.4s ease-in-out infinite bounce}@keyframes wobble{0%,to{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@media (prefers-reduced-motion:reduce){.mascot .face{animation:none!important}}:root[data-theme=pastel]{--bg:#fff1f6;--card:#fff;--ink:#4a3a46;--muted:#8d7a88;--line:#ffd6e6;--brand:#ff8fb4;--brand-ink:#fff;--warn:#e0703a;--danger:#e5484d;--r-card:22px;--r-btn:999px;--shadow:0 4px 0 #ffd6e6;--btn-shadow:0 3px 0 #f06c97;--accent-soft:#d9f5e6;--today-bg:#ffe3ee}:root[data-theme=pastel] h1:before{content:"🌸 "}:root[data-theme=pastel] .filters button.on,:root[data-theme=pastel] .themes button.on{box-shadow:0 2px #f06c97}:root[data-theme=pastel] .cal-c.today .cal-n{background:#ff8fb4}:root[data-theme=notebook]{--bg:#fff8dc;--card:#fffdf3;--ink:#5b4636;--muted:#8a735e;--line:#e8c872;--brand:#f4b942;--brand-ink:#4a3426;--warn:#d9480f;--danger:#d63b2f;--r-card:14px;--r-btn:10px;--shadow:2px 3px 0 #f3dfa0;--btn-shadow:0 0 0 2px #5b4636;--accent-soft:#ffe9a8;--today-bg:#ffe9a8;--font:"Gaegu", "Nanum Pen Script", "Noto Sans KR", "Malgun Gothic", sans-serif}:root[data-theme=notebook] body{font-size:19px}:root[data-theme=notebook] .card,:root[data-theme=notebook] .mascot{border-style:dashed;border-width:2px}:root[data-theme=notebook] h1:before{content:"📒 "}:root[data-theme=notebook] .stamp{border-radius:4px}:root[data-theme=bear]{--bg:#eefaf3;--card:#fff;--ink:#2f4a3c;--muted:#6a8a79;--line:#bfe8d0;--brand:#4cc38a;--brand-ink:#fff;--warn:#e8590c;--danger:#e03e3e;--r-card:20px;--r-btn:14px;--shadow:none;--btn-shadow:0 3px 0 #2b9d6a;--accent-soft:#fff1c9;--today-bg:#d8f3e4}:root[data-theme=bear] .card,:root[data-theme=bear] .mascot{border-width:2px}:root[data-theme=bear] h1:before{content:"🐻 "}.keepbox{border:1px dashed var(--line);border-radius:var(--r-card);color:var(--ink);cursor:pointer;align-items:center;gap:10px;margin:14px 0 0;padding:10px;font-size:15px;display:flex}.keepbox input{flex:none;width:22px;height:22px}.keepbox img{object-fit:cover;border:1px solid var(--line);border-radius:10px;flex:none;width:56px;height:56px}.keepbox small{color:var(--muted);margin-top:2px;font-size:12px;line-height:1.4;display:block}.lightbox{z-index:50;background:#000c;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:16px;display:flex;position:fixed;inset:0}.lightbox img{background:#fff;border-radius:10px;max-width:100%;max-height:82vh}.linkbtn{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;padding:4px;font-size:14px;text-decoration:underline}.dgroup{border:1px solid var(--line);border-radius:var(--r-card);margin:10px 0;padding:6px 10px 8px}.dgroup legend{color:var(--muted);padding:0 6px;font-size:13px}.dopt{color:var(--ink);cursor:pointer;border-radius:10px;align-items:flex-start;gap:10px;margin:4px 0;padding:8px;font-size:15px;display:flex}.dopt.on{background:var(--accent-soft)}.dopt input{flex:none;width:20px;height:20px;margin-top:2px}.dopt small{color:var(--muted);font-size:12px;display:block}.doclink{max-width:100%;font:inherit;color:var(--muted);text-align:left;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;margin:0;padding:2px 0;font-size:14px;display:block;overflow:hidden}.doclink:hover{color:var(--brand);text-decoration:underline}.editbtn{cursor:pointer;opacity:.6;background:0 0;border:0;margin-left:6px;padding:0 2px;font-size:15px}.editbtn:hover{opacity:1}.sheet{z-index:40;background:#00000073;padding:16px;position:fixed;inset:0;overflow-y:auto}.sheet-in{max-width:640px;margin:0 auto}.sheet-in>.btn{background:var(--card);margin-top:4px}.evform input[type=text],.evform textarea{width:100%;margin-bottom:8px}.evrow{align-items:center;gap:8px;margin:4px 0 8px;font-size:15px;display:flex}.evgrid{grid-template-columns:auto 1fr auto;align-items:center;gap:6px 8px;margin-bottom:10px;display:grid}.evgrid input[type=date],.evgrid input[type=time]{width:100%}.evcolors{gap:8px;margin:4px 0 10px;display:flex}.evcolors button{color:#fff;cursor:pointer;border:2px solid #0000;border-radius:999px;width:30px;height:30px;padding:0;font-weight:800}.evcolors button.on{border-color:var(--ink)}.err{color:var(--danger);margin:4px 0 0;font-size:14px}.evchip{color:#fff;white-space:nowrap;text-overflow:ellipsis;border-radius:4px;min-height:14px;padding:1px 4px;font-size:10px;line-height:1.25;overflow:hidden}.evchip.c-green{background:#3aa57a}.evchip.c-blue{background:#3b82d6}.evchip.c-red{background:#d9534f}.evchip.c-orange{background:#e8892b}.evchip.c-purple{background:#8b6bd1}.evchip.c-gray{background:#8a8f98}.evchip.mid{border-radius:0;margin:0 -4px}.evchip.start{border-top-right-radius:0;border-bottom-right-radius:0;margin-right:-4px}.evchip.end{border-top-left-radius:0;border-bottom-left-radius:0;margin-left:-4px}.evitem{border-radius:var(--r-card);border:1px solid var(--line);align-items:flex-start;gap:8px;margin-bottom:8px;padding:8px 10px;display:flex}.evitem .dot{border-radius:99px;flex:none;width:10px;height:10px;margin-top:7px}.evitem .t{flex:1;min-width:0}.evitem .t strong{display:block}.cal-add{margin-left:auto}:root:not([data-theme]) h1:before{content:"📌 "}@media (prefers-color-scheme:dark){:root:not([data-theme]){--bg:#15191b;--card:#1e2427;--line:#2f383c;--shadow:none;--accent-soft:#5fb39b38;--today-bg:#5fb39b24}}.alertbar{border-radius:var(--r-card);background:var(--accent-soft);border:2px solid var(--brand);justify-content:space-between;align-items:center;gap:8px;margin:0 0 10px;padding:10px 14px;display:flex}.evgrid select{width:100%}.sday{border-radius:var(--r-card);background:var(--card);border:1px dashed var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:6px 12px;font-size:14px;display:flex}.draftsum{background:#7f7f7f1a;border-radius:10px;flex-direction:column;gap:2px;margin:12px 0 0;padding:10px 12px;font-size:16px;display:flex}.draftsum span{color:var(--muted);font-size:15px}.actionbar{z-index:5;background:var(--card);border-top:1px solid var(--line);border-radius:0 0 var(--r-card) var(--r-card);margin:16px -16px -16px;padding:10px 16px 14px;position:sticky;bottom:0}.autosave{color:var(--muted);cursor:pointer;align-items:center;gap:8px;margin:10px 0 0;font-size:15px;display:flex}.autosave input{flex:none;width:20px;height:20px}.autolist{border-style:dashed}.autorow{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:8px 0;display:flex}.autorow>div:first-child{flex:200px;min-width:0}.autobtns{flex:none;gap:6px;display:flex}.chip.money{text-align:right;font-size:11px;font-weight:700}.rcbox{border:1px solid var(--line);border-radius:var(--r-card);margin:8px 0;padding:8px 10px}.rcrow{border-top:1px solid var(--line);text-align:left;justify-content:space-between;align-items:baseline;gap:8px;width:100%;padding:8px 0;display:flex}.rcbox .rcrow:first-of-type{border-top:0}.rcname{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.catbars{gap:6px;margin-top:10px;display:grid}.catbar{grid-template-columns:44px 1fr auto;align-items:center;gap:8px;font-size:13px;display:grid}.catbar .track{background:#7f7f7f2e;border-radius:999px;height:8px;overflow:hidden}.catbar .fill{background:var(--brand);border-radius:999px;height:100%;display:block}.topbar{justify-content:space-between;align-items:center;gap:8px;margin:0 0 8px;display:flex}.topbar h1{margin:0}.settings{gap:10px;display:grid}.mascot.compact{gap:8px;margin:0 0 10px;padding:6px 12px}.mascot.compact .say{font-size:14px}.fab{z-index:30;background:var(--brand);color:var(--brand-ink);font:inherit;cursor:pointer;border:0;border-radius:999px;padding:14px 26px;font-size:16px;font-weight:700;position:fixed;bottom:18px;left:50%;transform:translate(-50%);box-shadow:0 6px 18px #00000047}.fab:disabled{opacity:.75;cursor:progress}.filterbox{margin:12px 0}.filterbox>summary{cursor:pointer;border:1px solid var(--line);border-radius:var(--r-btn);background:var(--card);padding:10px 12px;font-weight:600;list-style:none}.filterbox>summary::-webkit-details-marker{display:none}.filterbox[open]>summary{margin-bottom:8px}main{padding-bottom:110px}.chip.money{letter-spacing:-.03em;padding:1px 2px;font-size:10px}.chip.money.long{letter-spacing:-.06em;text-overflow:clip;padding:1px;font-size:9px}:root:not([data-theme]){--bg-grad:linear-gradient(180deg, #fff3d1 0%, #fff9ec 34%, #f3f9f4 100%);--card:#fffefb;--line:#f0e1b5;--shadow:0 1px 0 #ffffffe6 inset, 0 8px 18px -10px #78580c59;--r-card:22px}:root:not([data-theme]) body{background:var(--bg-grad);background-attachment:fixed;min-height:100vh}:root:not([data-theme]) .card{border-width:1px}:root:not([data-theme]) h1{letter-spacing:-.03em;align-items:center;gap:10px;font-size:26px;font-weight:800;display:flex}:root:not([data-theme]) h1:before{content:"맞";color:#7a4b00;background:linear-gradient(160deg,#ffe27a,#ffcf3f);border-radius:5px 5px 14px;flex:none;place-items:center;width:32px;height:32px;font-size:16px;font-weight:800;display:inline-grid;transform:rotate(-7deg);box-shadow:0 3px #b0780047,0 6px 10px -4px #78500066}:root:not([data-theme]) .card:has(>.cal-head){margin-top:14px;position:relative}:root:not([data-theme]) .card:has(>.cal-head):before{content:"";background:#ffd650b3;border-radius:3px;width:84px;height:20px;position:absolute;top:-9px;left:50%;transform:translate(-50%)rotate(-2deg);box-shadow:0 2px 4px #78580c2e}:root:not([data-theme]) .cal-head strong{letter-spacing:-.02em;font-size:21px}:root:not([data-theme]) .tabs{background:#f0e1b573;border-radius:999px;padding:4px}:root:not([data-theme]) .tabs button{border:0;border-radius:999px;padding:9px;font-weight:600}:root:not([data-theme]) .tabs button.on{box-shadow:0 2px 6px -2px #00000059}:where(:root:not([data-theme])) .cal-c{background:#ffffffb3;border-color:#f0e1b5e6;transition:transform 80ms}:root:not([data-theme]) .cal-c:active{transform:scale(.96)}:root:not([data-theme]) .mascot{background:linear-gradient(#fffdf6,#fff7dc)}:root:not([data-theme]) .fab{background:linear-gradient(#3a9373,#2b7a5f)}@media (prefers-color-scheme:dark){:root:not([data-theme]){--bg-grad:linear-gradient(180deg, #1b2124, #15191b);--card:#1e2427;--line:#2f383c}:root:not([data-theme]) .mascot{background:var(--card)}:where(:root:not([data-theme])) .cal-c{border-color:var(--line);background:#ffffff08}:root:not([data-theme]) .tabs{background:#ffffff0f}}button.mascot{width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer}.mascot .go{color:var(--brand);flex:none;margin-left:auto;font-size:13px;font-weight:700}.btn.kakaopay{color:#191919;background:#fee500}.chip{background:#7f7f7f21;padding:1px 3px 1px 6px;box-shadow:inset 3px 0 #7f7f7f59}.chip.soon{background:#7f7f7f21;box-shadow:inset 3px 0 #e0821e}.chip.today,.chip.late{box-shadow:inset 3px 0 0 var(--danger);color:var(--danger);background:#7f7f7f21;font-weight:700}.chip.money{box-shadow:none;padding:1px 3px}.chip.done{box-shadow:inset 3px 0 #7f7f7f4d}.cal-c.u-soon,.cal-c.u-today,.cal-c.u-over{border-color:var(--line);background:0 0}:where(:root:not([data-theme])) .cal-c.u-soon,:where(:root:not([data-theme])) .cal-c.u-today,:where(:root:not([data-theme])) .cal-c.u-over{border-color:#f0e1b5e6}.cal-dot{border-radius:50%;width:8px;height:8px;position:absolute;top:5px;right:5px}.cal-dot.hot{background:var(--danger)}.cal-dot.warm{background:#e0821e}.lg{vertical-align:0;border-radius:50%;width:8px;height:8px;display:inline-block}.lg.hot{background:var(--danger)}.lg.warm{background:#e0821e}.hol{opacity:.85;font-weight:500}.chip.colored{box-shadow:none}.cal-fire{font-size:12px;line-height:1;position:absolute;top:3px;right:3px}.cdots{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.cdot{cursor:pointer;border:2px solid #0000;border-radius:50%;width:24px;height:24px;padding:0;box-shadow:0 0 0 1px #0000001f}.cdot.on{border-color:var(--card);box-shadow:0 0 0 2px var(--ink)}.spbar{flex-wrap:wrap;gap:6px;margin:0 0 10px;display:flex}.spchip{border:1.5px solid var(--line);background:var(--card);font:inherit;color:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:7px 12px;font-size:14px;display:inline-flex}.spchip.on{font-weight:700}.spchip.add{color:var(--muted);border-style:dashed}.spck{width:12px;font-size:12px}.spdot{border-radius:50%;flex:none;width:9px;height:9px;display:inline-block}.chip .spdot{vertical-align:1px;width:6px;height:6px;margin-right:3px}.sptag{color:var(--muted);align-items:center;gap:5px;font-size:12px;display:inline-flex}.savespace{align-items:center;gap:8px;margin:0 0 10px;font-size:14px;display:flex}.savespace select{flex:1;min-width:0}.spjoin{border:1px solid var(--line);background:var(--card,#fff);border-radius:14px;gap:8px;margin:0 0 10px;padding:12px;display:grid}@media (display-mode:standalone),(display-mode:fullscreen),(display-mode:minimal-ui){.emptypick{display:none}.fab{width:100%;padding:16px 16px calc(16px + env(safe-area-inset-bottom));border-radius:0;bottom:0;left:0;right:0;transform:none;box-shadow:0 -4px 16px #0000002e}main{padding-bottom:calc(84px + env(safe-area-inset-bottom))}}.spn{opacity:.75;margin-left:2px;font-size:12px}.spwho{color:var(--muted,#6b6b6b);flex-wrap:wrap;align-items:baseline;gap:6px;margin:0 0 8px;font-size:13px;display:flex}.spwho .spdot{flex:none}.notifybox{border:1px solid var(--line);border-radius:14px;margin:12px 0;padding:12px}.spn{cursor:pointer;background:#00000012;border-radius:10px;padding:2px 6px}.pulltip{text-align:center;color:var(--muted,#777);justify-content:center;align-items:center;font-size:13px;transition:height .15s;display:flex;overflow:hidden}@media (max-width:480px){main{padding-left:6px;padding-right:6px}.card:has(>.cal-head){padding:8px 6px}.cal-head strong{white-space:nowrap;font-size:17px}.cal{gap:2px}.cal-c{gap:1px;min-height:66px;padding:3px 1px 2px}.cal-c .chip,.chip{letter-spacing:-.04em;border-radius:3px;padding:1px 0 1px 4px;font-size:clamp(8px,2.91545vw - 2.79883px,10.5px);position:relative}.chip.money,.chip.money.long{letter-spacing:-.06em;padding:1px 0;font-size:clamp(8px,2.91545vw - 2.39067px,10px)}.chip .spdot{width:5px;height:5px;margin:0;position:absolute;top:1px;right:1px}.cal-fire{font-size:10px;top:2px;right:2px}}.savebar{margin:0 0 10px}.movesel{border-radius:10px;flex:none;max-width:150px;padding:6px 8px;font-size:13px}.fab{white-space:nowrap}.notifybox{border:0;margin:0;padding:0}.notifybox .spchip{white-space:nowrap;padding:6px 10px}.roompick{border:2px solid var(--line);width:100%;font:inherit;color:inherit;cursor:pointer;background:0 0;border-radius:14px;align-items:center;gap:10px;padding:12px 14px;display:flex}.roompick.on{font-weight:700}.tossbtn{color:#fff;background:#0064ff;border-color:#0064ff}.notifych{border:1px solid var(--line);background:#ffffff59;border-radius:10px;padding:10px}.arr{opacity:.75;margin-left:2px;font-size:.7em}.filterbox>summary:after{content:" ▶";opacity:.75;font-size:.7em}.filterbox[open]>summary:after{content:" ▼"}.task.justdone{background:#3aa57a29;border-color:#3aa57a;animation:.5s ease-out donepop}.donebanner{color:#2c8a63;margin:0 0 6px;font-weight:700}@keyframes donepop{0%{transform:scale(.97)}60%{transform:scale(1.015)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.task.justdone{animation:none}}.assignee{align-items:center;gap:8px;margin:6px 0 0;font-size:14px;display:flex}.assignee select{flex:none;width:auto;min-width:120px;padding:4px 8px}
