[hidden]{display:none!important}
/* Tillegg for web-app-versjonen (bygger på style.css) */
.topbar{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.topbar .me{margin-top:0}
.topbtns{display:flex;gap:6px;flex-wrap:wrap}
.screen{margin-top:22px;display:grid;gap:12px;justify-items:start}
.screen h2{margin:0;font-family:var(--display);font-weight:800;font-size:28px;text-transform:uppercase}
.book.big{font-size:16px;padding:12px 20px}
.searchrow{display:flex;gap:8px;align-items:center}
.searchrow .search{flex:1;min-width:0}
.searchrow .book{flex:none;padding:10px 16px;font-size:14px}
.n.badge:not(:empty){background:var(--accent);color:var(--accent-ink);border-radius:999px;padding:0 6px}
.tripinfo{white-space:pre-line;font-size:14px;line-height:1.55}
.ptag.cancel{background:var(--down);color:var(--card)}
.ptag.userent{background:var(--chip);color:var(--muted)}
.ptag.notetag{background:var(--ink);color:var(--bg)}
.ev.dim{opacity:.6}
.notebox{display:grid;gap:6px}
.notebox textarea{width:100%;box-sizing:border-box;font:500 14px var(--body);padding:8px 10px;border-radius:8px;border:1.5px solid var(--line);background:var(--card);color:var(--ink);resize:vertical}
.notebox .muted{font-size:12px}
.section{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:14px;display:grid;gap:10px}
.section h4{margin:0;font-family:var(--display);font-weight:800;font-size:22px;text-transform:uppercase;letter-spacing:.02em}
.mem{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:6px 0;border-bottom:1px solid var(--line)}
.mem:last-child{border-bottom:0}
.mem img{width:28px;height:28px;border-radius:50%}
.mem .who2{flex:1;min-width:0;display:grid}
.mem .who2 span{font-size:12px;color:var(--muted);overflow-wrap:anywhere}
.inline{display:flex;gap:6px;flex-wrap:wrap}
.inline input{flex:1;min-width:12em}
input.txt,select.txt,textarea.txt,#dlg-entry input:not([type=checkbox]),#dlg-entry select,#dlg-entry textarea{font:500 14px var(--body);padding:8px 10px;border-radius:8px;border:1.5px solid var(--line);background:var(--card);color:var(--ink);box-sizing:border-box;width:100%}
.inline input.txt{width:auto}
label{display:grid;gap:4px;font-size:13px;font-weight:600}
label.check{display:flex;align-items:center;gap:8px;font-weight:500}
dialog{border:1px solid var(--line);border-radius:12px;background:var(--bg);color:var(--ink);padding:18px;max-width:min(560px,calc(100vw - 32px));width:100%;box-sizing:border-box}
dialog::backdrop{background:rgba(0,0,0,.45)}
dialog form{display:grid;gap:10px}
dialog h3{margin:0;font-family:var(--display);font-weight:800;font-size:26px;text-transform:uppercase}
fieldset{border:1px solid var(--line);border-radius:8px;padding:8px 10px;margin:0}
legend{font-size:13px;font-weight:600;padding:0 4px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.dlgbtns{display:flex;justify-content:flex-end;gap:8px}
.qcard .src{font:500 11px var(--mono);color:var(--muted)}
@media (max-width:420px){.row2{grid-template-columns:1fr}}
.rail > *, #filters > *{min-width:0}
#filters{display:grid;gap:8px;min-width:0}
.tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}
.tabs::-webkit-scrollbar{display:none}
.tabs .tab{flex:1 0 auto;white-space:nowrap;padding:9px 14px}
