:root{--bg:#fafafa;--fg:#1a1a1a;--muted:#6b6b6b;--border:#e5e5e5}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--fg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:15px;line-height:1.5}main{max-width:720px;margin:0 auto;padding:48px 24px}h1{font-size:24px;margin:0 0 8px}p.muted{color:var(--muted);margin:0 0 32px}ul.chips{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}ul.chips li{padding:6px 12px;border-radius:999px;font-size:13px;font-weight:500;color:#1a1a1a}.login-form{gap:12px;max-width:320px}.login-form,.login-form label{display:flex;flex-direction:column}.login-form label{gap:4px;font-size:13px;color:var(--muted)}.login-form input[type=email]{padding:8px 10px;border:1px solid var(--border);border-radius:6px;font-size:14px}.login-form button{padding:8px 12px;border:1px solid var(--fg);background:var(--fg);color:var(--bg);border-radius:6px;font-size:14px;cursor:pointer}.login-form .ok{color:#166534;font-size:13px}.login-form .err{color:#b91c1c;font-size:13px}header.app-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:24px}header.app-header form button{background:transparent;border:1px solid var(--border);border-radius:6px;padding:4px 10px;font-size:12px;color:var(--muted);cursor:pointer}header.app-header .nav{display:flex;gap:12px;align-items:center}header.app-header .nav a{color:var(--muted);font-size:13px;text-decoration:none}header.app-header .nav a:hover{color:var(--fg)}main{max-width:960px}.filters{display:flex;flex-direction:column;gap:12px;background:white;border:1px solid var(--border);border-radius:8px;padding:16px;margin-bottom:16px}.filters fieldset{border:none;padding:0;margin:0}.filters fieldset legend{font-size:12px;color:var(--muted);margin-bottom:6px}.cat-checks{display:flex;flex-wrap:wrap;gap:6px}.cat-checks label{display:inline-flex;align-items:center;gap:4px;font-size:13px;cursor:pointer}.cat-checks label input{margin:0}.cat-checks label span{padding:2px 8px;border-radius:999px}.dates{display:flex;gap:12px}.dates label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--muted)}.dates input[type=date]{padding:6px 8px;border:1px solid var(--border);border-radius:6px;font-size:13px}.filter-actions{display:flex;gap:12px;align-items:center}.filter-actions button{padding:6px 14px;border:1px solid var(--fg);background:var(--fg);color:var(--bg);border-radius:6px;font-size:13px;cursor:pointer}.filter-actions .reset{font-size:12px;color:var(--muted);text-decoration:none}p.summary{margin:8px 0 16px}table.entries{width:100%;border-collapse:collapse;font-size:14px;background:white;border:1px solid var(--border);border-radius:8px;overflow:hidden}table.entries td,table.entries th{padding:8px 12px;text-align:left;border-bottom:1px solid var(--border)}table.entries thead th{background:#f5f5f5;font-size:12px;font-weight:600;color:var(--muted)}table.entries th a{color:inherit;text-decoration:none}table.entries .num{text-align:right;white-space:nowrap}table.entries tr:last-child td{border-bottom:none}.chip{display:inline-block;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:500}header.app-header .nav a.primary{color:var(--bg);background:var(--fg);padding:4px 10px;border-radius:6px;font-size:13px}.entry-form{gap:12px;max-width:480px;background:white;border:1px solid var(--border);border-radius:8px;padding:16px}.entry-form,.entry-form label{display:flex;flex-direction:column}.entry-form label{gap:4px;font-size:13px;color:var(--muted)}.entry-form input[type=date],.entry-form input[type=number],.entry-form input[type=text],.entry-form select,.entry-form textarea{padding:8px 10px;border:1px solid var(--border);border-radius:6px;font-size:14px;color:var(--fg);font-family:inherit}.entry-form .err{color:#b91c1c;font-size:13px;margin:0}.entry-form .form-actions button{padding:8px 14px;border:1px solid var(--fg);background:var(--fg);color:var(--bg);border-radius:6px;font-size:14px;cursor:pointer}td.row-actions-cell{text-align:right;white-space:nowrap}.row-actions{display:inline-flex;align-items:center;gap:8px;font-size:12px}.row-actions a{color:var(--muted);text-decoration:none}.row-actions a:hover{color:var(--fg)}.row-actions form{display:inline}.row-actions form button{background:transparent;border:none;color:#b91c1c;font-size:12px;cursor:pointer;padding:0}.chat{background:white;border:1px solid var(--border);border-radius:8px;display:flex;flex-direction:column;height:70vh;overflow:hidden}.chat-log{flex:1 1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:8px}.bubble{max-width:80%;padding:8px 12px;border-radius:12px;font-size:14px;white-space:pre-wrap;line-height:1.45}.bubble.user{align-self:flex-end;background:var(--fg);color:var(--bg)}.bubble.assistant{align-self:flex-start;background:#f0f0f0;color:var(--fg)}.bubble.draft{border:1px solid var(--border);background:#fffceb;max-width:90%}.draft-body{margin-bottom:8px}.draft-actions{display:flex;gap:8px}.draft-actions button{padding:4px 12px;font-size:13px;border:1px solid var(--fg);background:var(--fg);color:var(--bg);border-radius:6px;cursor:pointer}.draft-actions button.ghost{background:transparent;color:var(--fg)}.draft-actions button:disabled{opacity:.5;cursor:not-allowed}.draft-resolved{margin:0;font-size:13px;color:var(--muted)}.chat-input{display:flex;gap:8px;padding:12px;border-top:1px solid var(--border)}.chat-input input{flex:1 1;padding:8px 12px;border:1px solid var(--border);border-radius:6px;font-size:14px}.chat-input button{padding:8px 16px;border:1px solid var(--fg);background:var(--fg);color:var(--bg);border-radius:6px;font-size:14px;cursor:pointer}.chat-input button:disabled{opacity:.5;cursor:not-allowed}