*{box-sizing:border-box}
body{margin:0;font:15px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif;color:#1d2327;background:#f4f5f7}
header{display:flex;gap:1.5rem;align-items:center;padding:.75rem 1.5rem;background:#1d2327;color:#fff}
header nav{display:flex;gap:1rem;flex:1}
header a,header .link{color:#dfe6ee;text-decoration:none;background:none;border:0;cursor:pointer;font:inherit;padding:0}
header a:hover{color:#fff}
main{max-width:1200px;margin:0 auto;padding:1.5rem}
h1{margin-top:0}
form label{display:block;margin:.6rem 0}
form label.check{display:flex;gap:.4rem;align-items:center}
input,select,textarea{display:block;width:100%;max-width:520px;padding:.45rem;border:1px solid #c3c4c7;border-radius:4px;font:inherit;background:#fff}
input[type=checkbox],input[type=radio]{width:auto;display:inline}
table input{max-width:none}
textarea.mono{font-family:ui-monospace,Consolas,monospace;max-width:none}
button,.button{display:inline-block;padding:.45rem .9rem;border:0;border-radius:4px;background:#2271b1;color:#fff;font:inherit;cursor:pointer;text-decoration:none}
button.small{padding:.2rem .6rem;font-size:13px}
button.danger{background:#b32d2e}
button.google{background:#fff;color:#1f1f1f;border:1px solid #747775;padding:.6rem 1.2rem;font-weight:500}
fieldset{border:1px solid #dcdcde;border-radius:6px;margin:1rem 0;padding:.5rem 1rem;background:#fff}
table{border-collapse:collapse;width:100%;background:#fff;margin:.5rem 0 1rem}
th,td{text-align:left;padding:.4rem .6rem;border-bottom:1px solid #e2e4e7;vertical-align:top;word-break:break-word}
table.kv th{width:200px;background:#f6f7f7}
.filters{display:flex;flex-wrap:wrap;gap:.75rem;align-items:flex-end}
.filters label{margin:0}
.filters input,.filters select{width:auto}
.card{background:#fff;border:1px solid #dcdcde;border-radius:6px;padding:.5rem 1rem;margin:1rem 0}
.plugin-dl{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}
.stats{display:flex;flex-wrap:wrap;gap:1rem}
.stats div{background:#fff;border:1px solid #dcdcde;border-radius:6px;padding:.75rem 1rem}
.narrow{max-width:360px}
.flash{background:#edfaef;border-left:4px solid #00a32a;padding:.5rem .75rem}
.error{background:#fcf0f1;border-left:4px solid #d63638;padding:.5rem .75rem}
.ok{color:#00731a}.warn{color:#996800}.bad{color:#b32d2e;font-weight:600}.muted{color:#646970}
.journeys{display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-items:start}
.journeys section{background:#fff;border:1px solid #dcdcde;border-radius:6px;padding:.5rem .75rem;overflow-x:auto}
.journeys h2.src{font-size:1.05rem;margin:.25rem 0}
@media (max-width:900px){.journeys{grid-template-columns:1fr}}
code{font-family:ui-monospace,Consolas,monospace;background:#f0f0f1;padding:.1rem .3rem;border-radius:3px;word-break:break-all}
