:root{--bg: #faf8f4;--card: #ffffff;--ink: #2b2b2b;--muted: #8a8175;--line: #ece7df;--accent: #c98a3a;--accent-soft: #f6e9d6;--pending: #fff7ec;--shadow: 0 1px 2px rgba(0, 0, 0, .04), 0 1px 8px rgba(0, 0, 0, .03);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}html,body,#root{margin:0;height:100%}body{background:var(--bg);color:var(--ink)}.boot{padding:3rem;text-align:center;color:var(--muted)}.auth-wrap{min-height:100vh;display:grid;place-items:center;padding:1rem}.auth-card{background:var(--card);width:100%;max-width:340px;padding:2rem 1.75rem;border-radius:18px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:.75rem}.auth-sub{margin:0 0 .5rem;color:var(--muted);font-size:.9rem;text-align:center}.auth-card input{padding:.7rem .85rem;border:1px solid var(--line);border-radius:10px;font-size:.95rem}.auth-card button[type=submit]{padding:.7rem;border:0;border-radius:10px;background:var(--accent);color:#fff;font-weight:600;cursor:pointer;font-size:.95rem}.auth-card .link{background:none;border:0;color:var(--muted);cursor:pointer;font-size:.85rem}.auth-msg{font-size:.85rem;color:var(--accent);text-align:center}.app{max-width:720px;margin:0 auto;padding:1rem 1rem 4rem}.topbar{display:flex;align-items:center;gap:.75rem;padding:.5rem 0 1rem}.brand{font-size:1.5rem;font-weight:700;letter-spacing:-.02em}.topbar .brand{margin-right:auto}.scope{display:inline-flex;background:var(--line);border-radius:999px;padding:3px}.scope button{border:0;background:none;padding:.35rem .85rem;border-radius:999px;font-size:.85rem;color:var(--muted);cursor:pointer}.scope button.on{background:var(--card);color:var(--ink);box-shadow:var(--shadow);font-weight:600}.signout{border:0;background:none;color:var(--muted);font-size:.8rem;cursor:pointer}.composer{display:flex;align-items:center;gap:.6rem;background:var(--card);border-radius:14px;padding:.6rem .75rem;box-shadow:var(--shadow);margin-bottom:1.25rem}.composer-input{flex:1;border:0;outline:none;font-size:1rem;background:none}.composer-tags{display:flex;gap:2px}.chip{border:0;background:none;font-size:1rem;padding:.2rem .3rem;border-radius:8px;cursor:pointer;opacity:.4}.chip.on{opacity:1;background:var(--accent-soft)}.add{border:0;background:var(--accent);color:#fff;padding:.5rem 1rem;border-radius:10px;font-weight:600;cursor:pointer}.add:disabled{opacity:.4;cursor:default}.lists{display:flex;flex-direction:column;gap:1.5rem}.sec-head{display:flex;align-items:center;gap:.5rem;font-size:.95rem;font-weight:700;margin:0 0 .5rem;padding:.35rem .5rem;border-radius:10px;transition:background .12s}.sec-head.muted{color:var(--muted);font-weight:600;cursor:pointer}.sec-head.drop{background:var(--accent-soft);outline:2px dashed var(--accent)}.count{font-size:.75rem;color:var(--muted);font-weight:500}.chev{margin-left:auto;color:var(--muted)}.empty{color:var(--muted);font-size:.9rem;padding:1rem;border:1.5px dashed var(--line);border-radius:12px;text-align:center}.row{display:flex;align-items:flex-start;gap:.6rem;background:var(--card);border-radius:12px;padding:.7rem .8rem;box-shadow:var(--shadow);margin-bottom:.5rem;cursor:grab}.row.pending{background:var(--pending)}.row.done{opacity:.55}.row.done .text{text-decoration:line-through}.check{border:0;background:none;font-size:1.15rem;cursor:pointer;line-height:1;padding:0;color:var(--accent)}.check.sm{font-size:.95rem}.row-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:.3rem}.text{font-size:.98rem;line-height:1.35;word-break:break-word;cursor:text}.pin-dot{margin-right:.3rem}.edit{border:1px solid var(--line);border-radius:8px;padding:.35rem .5rem;font-size:.98rem}.subs{list-style:none;margin:.2rem 0 0;padding:0;display:flex;flex-direction:column;gap:.2rem}.sub{display:flex;align-items:center;gap:.4rem;font-size:.88rem;color:var(--ink)}.sub.done span{text-decoration:line-through;color:var(--muted)}.sub .x{margin-left:auto}.x{border:0;background:none;color:var(--muted);cursor:pointer;font-size:1rem}.sub-add{border:0;border-bottom:1px dashed var(--line);background:none;font-size:.82rem;padding:.15rem 0;outline:none;color:var(--muted);max-width:160px}.row-tools{display:flex;align-items:center;gap:.15rem;position:relative}.sender{font-size:.72rem;color:var(--muted);background:var(--line);padding:.1rem .4rem;border-radius:999px;margin-right:.3rem}.tool,.tag{border:0;background:none;cursor:pointer;font-size:.95rem;padding:.2rem;border-radius:6px;opacity:.7}.tool:hover,.tag:hover{opacity:1;background:var(--bg)}.tag-emoji{font-size:.95rem}.tag-pick{position:relative}.tag-menu{position:absolute;right:0;top:110%;background:var(--card);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);padding:.25rem;z-index:10;display:flex;flex-direction:column;min-width:130px}.tag-menu button{border:0;background:none;text-align:left;padding:.4rem .5rem;border-radius:6px;cursor:pointer;font-size:.85rem}.tag-menu button:hover{background:var(--bg)}.history{display:flex;flex-direction:column;gap:1.25rem}.hist-day{display:flex;flex-direction:column;gap:.25rem}.hist-date{display:flex;align-items:center;gap:.5rem;font-size:.8rem;font-weight:700;color:var(--muted);margin:0 0 .25rem;padding:.3rem .5rem;position:sticky;top:0;background:var(--bg);z-index:1}.hist-row{display:flex;align-items:flex-start;gap:.6rem;background:var(--card);border-radius:10px;padding:.55rem .75rem;box-shadow:var(--shadow)}.hist-row.done{opacity:.55}.hist-row.done .text{text-decoration:line-through}.hist-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:.15rem}.hist-flag{margin-right:.3rem;opacity:.7}.hist-subs{font-size:.75rem;color:var(--muted)}
