:root{--bg:#f6f6f4;--panel:#fff;--fg:#1a1a1a;--muted:#6b6b6b;--line:#e2e2de;--accent:#1a1a1a;--accent-fg:#fff;--badge-bg:#fff4d6;--badge-fg:#7a5200;--danger:#b3261e;--ok:#1e5c33}*{box-sizing:border-box}body{background:var(--bg);color:var(--fg);word-break:keep-all;margin:0;font-family:system-ui,-apple-system,Apple SD Gothic Neo,Malgun Gothic,sans-serif;line-height:1.5}a{color:inherit}.topbar{border-bottom:1px solid var(--line);background:var(--panel);align-items:center;gap:24px;padding:12px 32px;display:flex}.topbar .brand{font-weight:700;text-decoration:none}.topbar nav{flex:1;gap:16px;display:flex}.topbar nav a{font-size:14px;text-decoration:none}.topbar .who{color:var(--muted);font-size:14px}main{max-width:1200px;margin:0 auto;padding:32px}h1{margin:0 0 4px;font-size:22px}h2{margin:32px 0 8px;font-size:16px}h3{margin:16px 0 4px;font-size:14px}.muted{color:var(--muted);font-size:14px}.badge{background:var(--badge-bg);color:var(--badge-fg);border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}.badge-muted{background:var(--bg);color:var(--muted)}.flash{border-radius:8px;margin:12px 0;padding:10px 12px;font-size:14px}.flash-ok{color:var(--ok);background:#e7f3ea}.flash-error{color:var(--danger);background:#fbe9e7}table{border-collapse:collapse;background:var(--panel);width:100%;margin-top:8px}th,td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:8px 12px;font-size:14px}th{background:var(--bg);white-space:nowrap}.num{text-align:right;font-variant-numeric:tabular-nums}button,.button{border:1px solid var(--line);background:var(--panel);color:var(--fg);font:inherit;cursor:pointer;border-radius:6px;padding:6px 12px;font-size:14px;text-decoration:none}button.primary{border-color:var(--accent);background:var(--accent);color:var(--accent-fg)}button:disabled{color:var(--muted);cursor:default}input,select,textarea{border:1px solid var(--line);background:var(--panel);font:inherit;border-radius:6px;padding:6px 8px;font-size:14px}form.inline{align-items:center;gap:6px;display:inline-flex}.form-grid{border:1px solid var(--line);background:var(--panel);border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:16px;display:grid}.form-grid label{gap:4px;font-size:13px;font-weight:600;display:grid}.form-grid .wide{grid-column:span 2}.form-grid .actions{grid-column:1/-1}.counts{gap:12px;margin:0;padding:0;list-style:none;display:flex}.counts a{border:1px solid var(--line);background:var(--panel);border-radius:8px;padding:16px 20px;font-size:14px;text-decoration:none;display:block}.counts strong{font-size:24px;display:block}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--line);border-radius:999px;align-items:center;gap:6px;padding:2px 4px 2px 10px;font-size:13px;display:inline-flex}.chip button{color:var(--muted);background:0 0;border:0;padding:0 6px}.tag-photo{cursor:crosshair;background:linear-gradient(135deg,#eeeeea,#dcdcd6);border-radius:8px;width:100%;max-width:640px;position:relative;overflow:hidden}.tag-marker{background:var(--accent);width:26px;height:26px;color:var(--accent-fg);text-align:center;pointer-events:none;border:2px solid #fff;border-radius:50%;font-size:12px;font-weight:700;line-height:22px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 1px 4px #00000059}.tag-marker.pending{background:var(--badge-bg);color:var(--badge-fg)}.tag-picker{border:1px solid var(--line);background:var(--panel);border-radius:8px;max-width:640px;margin-top:8px;padding:12px}.tag-picker input{width:100%}.tag-picker ul{max-height:220px;margin:8px 0 0;padding:0;list-style:none;overflow-y:auto}.tag-picker li button{border:0;border-top:1px solid var(--line);text-align:left;border-radius:0;width:100%;display:block}.tag-picker li button[aria-selected=true]{background:var(--bg)}
