:root{--bg: #f6f7f5;--surface: #ffffff;--text: #1c1e1b;--muted: #7a8078;--border: #e3e6e0;--accent: #16a34a;--accent-soft: #e3f5ea;--danger: #dc2626}@media(prefers-color-scheme:dark){:root{--bg: #141613;--surface: #1e211c;--text: #eef0ec;--muted: #9aa196;--border: #2e332b;--accent: #29c261;--accent-soft: #1c3326}}*{box-sizing:border-box;margin:0}html{-webkit-text-size-adjust:100%}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text)}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer;padding:0}input,select{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:.55rem .75rem;min-width:0}input:focus,select:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:transparent}.app{max-width:560px;margin:0 auto;padding:0 .75rem calc(2rem + env(safe-area-inset-bottom))}.loading,.empty{text-align:center;color:var(--muted);padding:3rem 1rem}.header{display:flex;align-items:center;justify-content:space-between;padding:.9rem 0 .6rem}.header h1{font-size:1.15rem}.header-right{display:flex;align-items:center;gap:.6rem}.dot{width:9px;height:9px;border-radius:50%;background:var(--muted)}.dot.on{background:var(--accent)}.user-badge{background:var(--accent-soft);color:var(--accent);font-weight:600;padding:.3rem .75rem;border-radius:999px}.tabs{display:flex;gap:.4rem;overflow-x:auto;padding-bottom:.6rem;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tab{flex-shrink:0;padding:.4rem .9rem;border-radius:999px;background:var(--surface);border:1px solid var(--border);color:var(--muted);font-weight:500}.tab.active{background:var(--accent);border-color:var(--accent);color:#fff}.tab.ghost{color:var(--muted)}.addbar{position:sticky;top:0;z-index:5;background:var(--bg);padding:.4rem 0 .6rem}.addbar-row{display:flex;gap:.4rem}.addbar-name{flex:1}.addbar-note{width:4.5rem}.addbar-submit{background:var(--accent);color:#fff;border-radius:10px;width:2.7rem;font-size:1.2rem;flex-shrink:0}.addbar-submit:disabled{opacity:.4}.addbar-row2{margin-top:.4rem}.addbar-row2 select{width:100%}.chips{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.5rem}.chip{background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:.3rem .8rem;font-size:.9rem}.chip:active{background:var(--accent-soft)}.chip.removable{color:var(--muted)}.group{margin-top:1rem}.group h3{font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);display:flex;align-items:center;gap:.5rem;margin-bottom:.4rem}.count{background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:0 .5rem;font-size:.75rem}.group ul{list-style:none;padding:0;background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden}.item{display:flex;align-items:center;gap:.5rem;padding:.15rem .6rem;border-bottom:1px solid var(--border)}.item:last-child{border-bottom:none}.item-main{flex:1;display:flex;align-items:center;gap:.6rem;padding:.55rem 0;cursor:pointer;min-width:0}.item-main input[type=checkbox]{width:1.2rem;height:1.2rem;accent-color:var(--accent);flex-shrink:0}.item-name{overflow-wrap:anywhere}.item-note{color:var(--muted);font-size:.85rem}.item-by{color:var(--muted);font-size:.72rem;flex-shrink:0}.item-del{color:var(--muted);padding:.4rem;flex-shrink:0}.item-del:hover{color:var(--danger)}.item.checked .item-name{text-decoration:line-through;color:var(--muted)}.done-group{opacity:.85}.clear-btn{margin-left:auto;color:var(--danger);font-size:.75rem;text-transform:none;letter-spacing:normal;font-weight:600}.who{max-width:340px;margin:0 auto;padding:4rem 1rem;text-align:center;display:flex;flex-direction:column;gap:1.2rem}.who h1{font-size:3rem}.who-list{display:flex;flex-direction:column;gap:.6rem}.who-btn{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:.85rem;font-size:1.05rem;font-weight:600}.who-btn:active{background:var(--accent-soft)}.who-form{display:flex;gap:.4rem}.who-form input{flex:1}.who-form button{background:var(--accent);color:#fff;border-radius:10px;padding:0 1rem;font-weight:600}.who-form button:disabled{opacity:.4}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:10;display:flex;align-items:flex-end;justify-content:center}.panel{background:var(--bg);width:100%;max-width:560px;max-height:85vh;overflow-y:auto;border-radius:16px 16px 0 0;padding:1rem 1rem calc(1.5rem + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:.7rem}.panel-head{display:flex;justify-content:space-between;align-items:center}.panel h3{font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-top:.5rem}.manage-list{list-style:none;padding:0;background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden}.manage-list li{display:flex;justify-content:space-between;align-items:center;padding:.6rem .8rem;border-bottom:1px solid var(--border)}.manage-list li:last-child{border-bottom:none}.manage-actions{display:flex;gap:.3rem}.manage-actions button{color:var(--muted);padding:.3rem .5rem}.toast{position:fixed;bottom:1.2rem;left:50%;transform:translate(-50%);background:var(--danger);color:#fff;padding:.6rem 1.1rem;border-radius:10px;font-size:.9rem;z-index:20;max-width:90vw}
