* { margin:0; padding:0; box-sizing:border-box; }
body { background:#fff; color:#111; font-family:-apple-system,BlinkMacSystemFont,'Helvetica Neue',Arial,sans-serif; font-size:13px; line-height:1.5; }
header { background:#f7f7f7; border-bottom:1px solid #ddd; padding:12px 32px; display:flex; align-items:center; justify-content:space-between; }
.brand { font-size:11px; letter-spacing:3px; color:#999; text-transform:uppercase; font-weight:600; }
.user { font-size:12px; color:#666; }
.user a { color:#999; text-decoration:none; margin-left:14px; }
.user a:hover { color:#333; }
main { max-width:820px; margin:40px auto; padding:0 32px; }
h1 { font-size:22px; font-weight:700; color:#111; margin-bottom:4px; }
.sub { font-size:13px; color:#999; margin-bottom:28px; }
label { display:block; font-size:12px; color:#444; font-weight:500; margin-bottom:5px; margin-top:14px; }
input[type=text],input[type=url],textarea,select { width:100%; background:#fff; border:1px solid #ccc; color:#111; padding:9px 12px; border-radius:4px; font-size:13px; font-family:inherit; }
input:focus,textarea:focus,select:focus { outline:none; border-color:#555; }
textarea { resize:vertical; }
.hint { font-size:11px; color:#bbb; margin-top:3px; }
.section { margin-bottom:36px; }
.section-title { font-size:10px; letter-spacing:3px; text-transform:uppercase; color:#bbb; font-weight:600; margin-bottom:16px; padding-bottom:7px; border-bottom:1px solid #eee; }
.btn-primary { background:#111; color:#fff; padding:10px 22px; border:none; border-radius:4px; font-size:13px; font-weight:500; cursor:pointer; }
.btn-primary:hover { background:#333; }
.actions { display:flex; gap:10px; margin-bottom:28px; }
.btn-dash { background:#111; color:#fff; padding:10px 20px; border-radius:4px; text-decoration:none; font-size:13px; font-weight:500; }
.btn-dash:hover { background:#333; }
.case-list { border:1px solid #ddd; border-radius:6px; overflow:hidden; }
.case-item { padding:14px 20px; border-bottom:1px solid #eee; display:flex; align-items:center; justify-content:space-between; }
.case-item:last-child { border-bottom:none; }
.case-item:hover { background:#fafafa; }
.case-link { text-decoration:none; display:block; }
.case-id { font-size:10px; color:#ccc; font-family:monospace; margin-bottom:3px; }
.case-subject { font-size:13px; color:#111; font-weight:500; }
.badge { font-size:10px; padding:3px 8px; border-radius:3px; letter-spacing:1px; text-transform:uppercase; font-weight:600; }
.badge-draft { background:#fffbea; color:#92700a; border:1px solid #f0d060; }
.badge-verified { background:#edf7ed; color:#2e7d32; border:1px solid #a5d6a7; }
.badge-published { background:#e8f0fe; color:#1a56cc; border:1px solid #90b8f8; }
.empty { padding:48px; text-align:center; color:#ccc; font-size:13px; }
.wizard-box { background:#fafafa; border:1px solid #ddd; border-radius:6px; padding:20px; margin-bottom:28px; }
.wizard-box p { font-size:13px; color:#555; margin-bottom:14px; }
.mode-tabs { display:flex; margin-bottom:16px; gap:8px; }
.mode-tab { padding:7px 20px; font-size:12px; font-weight:500; cursor:pointer; background:#fff; color:#555; border:1px solid #ccc; border-radius:4px; }
.mode-tab.active { background:#111; color:#fff; border-color:#111; }
.seed-row { display:flex; gap:10px; }
.seed-row input { flex:1; }
.draft-status { font-size:12px; color:#999; margin-top:10px; min-height:18px; }
.draft-status.ok { color:#2e7d32; font-weight:500; }
.draft-status.err { color:#c62828; }
.login-wrap { display:flex; align-items:center; justify-content:center; min-height:100vh; background:#f5f5f5; }
.login-card { background:#fff; border:1px solid #ddd; padding:48px 40px; border-radius:6px; width:380px; text-align:center; box-shadow:0 2px 8px rgba(0,0,0,0.07); }
.login-logo { font-size:11px; letter-spacing:4px; color:#ccc; text-transform:uppercase; margin-bottom:28px; font-weight:600; }
.login-card h1 { font-size:24px; font-weight:700; color:#111; margin-bottom:8px; }
.login-card p { font-size:13px; color:#999; margin-bottom:28px; }
.btn-google { display:block; background:#111; color:#fff; padding:13px 24px; border-radius:4px; text-decoration:none; font-size:14px; font-weight:500; }
.btn-google:hover { background:#333; }
.error-box { background:#fff3f3; border:1px solid #fcc; color:#c62828; padding:10px 14px; border-radius:4px; font-size:12px; margin-bottom:20px; }
pre { background:#f7f7f7; border:1px solid #eee; padding:16px; border-radius:4px; font-size:12px; color:#333; overflow-x:auto; white-space:pre-wrap; line-height:1.6; }
