:root{--bg:#f6f7f9;--surface:#fff;--border:#d9dee5;--text:#1c2430;--muted:#6b7684;--accent:#1f6f43;--danger:#a32020;--radius:6px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font:15px/1.5 system-ui,-apple-system,Segoe UI,sans-serif}h1,h2,h4{margin:0 0 .5rem}code{font-family:ui-monospace,Cascadia Mono,Menlo,monospace;font-size:.9em}.muted{color:var(--muted)}header{background:var(--surface);border-bottom:1px solid var(--border);align-items:center;gap:1rem;padding:.75rem 1.25rem;display:flex}header nav{flex:1;gap:.25rem;display:flex}header nav a{border-radius:var(--radius);color:var(--muted);padding:.35rem .75rem;text-decoration:none}header nav a.on{background:var(--bg);color:var(--text);font-weight:600}main{max-width:1200px;margin:0 auto;padding:1.25rem}main.wide{max-width:max(1200px,100% - 200px)}main.centred{justify-content:center;padding-top:12vh;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:.75rem;padding:1rem}main.centred .card{flex-direction:column;gap:.6rem;width:min(24rem,100%);display:flex}.row{flex-wrap:wrap;align-items:flex-end;gap:.6rem;display:flex}.grow{flex:1}.row.end{justify-content:flex-end}.card.expandable{padding:0}.header{cursor:pointer;border-radius:var(--radius);align-items:center;padding:1rem}.header:hover{background:var(--bg)}.header:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.caret{color:var(--muted);text-align:center;width:1rem}dialog{border:1px solid var(--border);border-radius:var(--radius);max-width:min(28rem,92vw);color:var(--text);background:var(--surface);padding:1.25rem}dialog::backdrop{background:#00000059}dialog h3{margin:0 0 .5rem}dialog p{margin:0 0 1rem}.list{margin:0;padding:0;list-style:none}label{color:var(--muted);flex-direction:column;gap:.2rem;font-size:.85rem;display:flex}input,select{font:inherit;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);padding:.4rem .5rem}button,.button{font:inherit;border-radius:var(--radius);background:var(--accent);color:#fff;cursor:pointer;border:1px solid #0000;padding:.4rem .8rem;text-decoration:none;display:inline-block}.button{align-items:center;display:inline-flex}.row input,.row select,.row button:not(.link):not(.id),.row .button{height:2.3rem}button.toggle{width:7.5rem}button:disabled{opacity:.5;cursor:default}button.secondary,.button.secondary{background:var(--surface);color:var(--text);border-color:var(--border)}button.danger{background:var(--surface);color:var(--danger);border-color:var(--border)}button.link{color:var(--accent);text-align:center;background:0 0;border:none;padding:.2rem}button.link.left{text-align:left}.divider{color:var(--muted);align-items:center;gap:.6rem;font-size:.85rem;display:flex}.divider:before,.divider:after{content:"";border-top:1px solid var(--border);flex:1}.chips{flex-wrap:wrap;gap:.4rem;margin-bottom:.75rem;display:flex}.chip{background:var(--surface);color:var(--muted);border:1px solid var(--border);border-radius:999px;padding:.2rem .7rem;font-size:.85rem}.chip.on{background:var(--accent);border-color:var(--accent);color:#fff}.alert{border-radius:var(--radius);border:1px solid var(--border);margin:0 0 .5rem;padding:.5rem .75rem}.alert.error{color:var(--danger);background:#fdecec;border-color:#f0c0c0}.alert.ok{color:var(--accent);background:#eaf6ee;border-color:#bfe0cb}.inactive{color:var(--muted);text-decoration:line-through}button.id{background:var(--bg);border-radius:var(--radius);color:var(--text);cursor:copy;border:none;padding:.2rem .4rem}button.id:hover{background:var(--border)}button.id.copied{background:var(--accent);color:#fff}.derived{color:var(--muted);flex-basis:100%;margin:0;font-size:.85rem}.badge{background:var(--bg);border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:.1rem .45rem;font-size:.75rem}.apps{border-top:1px solid var(--border);padding:.75rem 1rem .25rem}.expandable .meta{margin:0;padding:0 1rem .75rem}.expandable table,.expandable .more{margin-bottom:1rem}.expandable table{border-top:1px solid var(--border)}.more{margin-left:1rem}.scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.9rem}th,td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;min-width:110px;padding:.3rem .5rem}th.level-item,td.level-item{width:50px;min-width:0}th.event-item,td.event-item{min-width:280px}th{color:var(--muted);font-weight:600}tr.clickable{cursor:pointer}tr.clickable:hover{background:var(--bg)}.nowrap{white-space:nowrap}.message,.files{overflow-wrap:anywhere;max-width:40ch}.logs .message{width:100%;max-width:none}.level{text-transform:uppercase;letter-spacing:.03em;font-size:.7rem;font-weight:700}.level.warn{color:#9a6700}.level.error,.level.critical{color:var(--danger)}.level.debug{color:var(--muted)}.detail{background-color:#fff9;grid-template-columns:7rem 1fr;gap:.25rem 1rem;margin:0;padding:10px 10px 10px 1.5rem;display:grid}.detail dt{color:var(--muted)}.detail dd{min-width:0;margin:0}.detail pre{background:var(--bg);border-radius:var(--radius);white-space:pre-wrap;overflow-wrap:anywhere;max-height:18rem;margin:0;padding:.5rem;font-size:.8rem;overflow:auto}.datetime{gap:.3rem;display:flex}.presets{flex-basis:100%;align-items:center;gap:.5rem;font-size:.85rem;display:flex}select.unset,select option.unset{color:var(--muted);font-style:italic}select option{color:var(--text);font-style:normal}.alert.warn{color:#7a5c00;background:#fdf6e3;border-color:#e8d9a8}button.icon{border:1px solid var(--border);color:var(--muted);background:0 0;width:2.3rem;padding:0;line-height:1.2}button.icon:not(:disabled):hover{color:var(--danger);border-color:var(--danger)}.presets .export{margin-left:auto;font-size:1rem}.submit{flex:1;align-items:flex-end;gap:.4rem;min-width:9rem;display:flex}.submit button[type=submit]{flex:1}.row label>select{max-width:8.5rem}.datetime input[type=date]{width:8rem}.datetime input[type=time]{width:5.5rem}.paging{align-items:center;gap:.75rem;margin:.75rem 0 0;font-size:.85rem;display:flex}
