:root{--bg-color: #f3f4f6;--text-color: #222222;--card-bg: #ffffff;--shadow-color: rgba(0, 0, 0, .1);--border-color: #eeeeee;--input-border-color: #cccccc;--muted-text-color: #999999;--accent-green: #4CAF50;--accent-green-hover: #45a049;--accent-blue: #3498db;--accent-blue-hover: #2980b9;--accent-red: #e74c3c;--accent-red-hover: #c0392b;--drag-ghost-bg: #f0f8ff}@media(prefers-color-scheme:dark){:root{--bg-color: #020617;--text-color: #e5e7eb;--card-bg: #0b1120;--shadow-color: rgba(0, 0, 0, .7);--border-color: #1f2937;--input-border-color: #374151;--muted-text-color: #9ca3af;--accent-green: #22c55e;--accent-green-hover: #16a34a;--accent-blue: #3b82f6;--accent-blue-hover: #2563eb;--accent-red: #ef4444;--accent-red-hover: #dc2626;--drag-ghost-bg: #1f2937}}body{background:var(--bg-color);color:var(--text-color);font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.container{max-width:500px;margin:2rem auto;padding:1rem 1.5rem;border-radius:12px;box-shadow:0 2px 8px var(--shadow-color);background:var(--card-bg)}.header{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.header h1{font-size:1.5rem;margin:0;color:var(--text-color)}.header-actions{display:flex;gap:.5rem}.form{display:flex;margin:1rem 0 .5rem}.form input{flex:1;padding:.55rem .75rem;border:1px solid var(--input-border-color);border-radius:8px 0 0 8px;outline:none;font-size:1rem;box-sizing:border-box;background:var(--card-bg);color:var(--text-color)}.form input:focus{border-color:var(--accent-green)}.form button{border:1px solid var(--accent-green);border-left:none;padding:.55rem .9rem;background:var(--accent-green);color:#fff;border-radius:0 8px 8px 0;cursor:pointer;font-size:1rem;box-sizing:border-box}.form button.primary{margin-top:0!important;width:auto!important;border-radius:0 8px 8px 0!important}.form button:hover{background:var(--accent-green-hover)}.bulk-delete-bar{margin:.5rem 0;display:flex;justify-content:flex-end}.shopping-list{list-style:none;padding:0;margin:0}.shopping-list li{display:flex;justify-content:space-between;align-items:center;padding:.6rem .5rem;border-bottom:1px solid var(--border-color);gap:.5rem;color:var(--text-color)}.shopping-list li:last-child{border-bottom:none}.shopping-list li.done span{text-decoration:line-through;color:var(--muted-text-color)}button{font-family:inherit}button.secondary{background:var(--accent-red);border:none;padding:.4rem .8rem;color:#fff;border-radius:6px;cursor:pointer;font-size:.9rem}button.secondary:hover{background:var(--accent-red-hover)}button.secondary:disabled{opacity:.5;cursor:not-allowed}button.edit{background:var(--accent-blue);border:none;padding:.4rem .8rem;color:#fff;border-radius:6px;cursor:pointer;font-size:.9rem}button.edit:hover{background:var(--accent-blue-hover)}.item-main{display:flex;align-items:center;gap:.4rem}.drag-handle{cursor:grab;padding:.25rem;font-size:1.1rem;opacity:.6;-webkit-user-select:none;user-select:none}.drag-handle:active{cursor:grabbing}.item-name{word-break:break-word}.checkbox-wrapper{padding:.25rem;display:flex;align-items:center;justify-content:center}.edit-checkbox{width:20px;height:20px}.drag-ghost{background:var(--drag-ghost-bg)}.container input[type=email],.container input[type=password]{width:100%;padding:.6rem .7rem;margin-bottom:.6rem;border-radius:8px;border:1px solid var(--input-border-color);font-size:1rem;outline:none;background:var(--card-bg);color:var(--text-color)}.container input[type=email]:focus,.container input[type=password]:focus{border-color:var(--accent-blue)}.container button.primary{width:100%;margin-top:.3rem;padding:.6rem .7rem;background:var(--accent-blue);border-radius:8px;border:none}.container button.primary:hover{background:var(--accent-blue-hover)}@media(max-width:600px){.container{margin:1rem auto;padding:1rem;border-radius:10px}.header{flex-direction:column;align-items:flex-start}.header-actions{width:100%;justify-content:flex-end}.shopping-list li{padding:.65rem .4rem}}
