:root{
  --font:Verdana,Geneva,'DejaVu Sans',sans-serif;
  --paper:#EDF0EA; --paper-soft:#F5F6F2; --card:#fff; --ink:#1B241E; --ink-soft:#56635B; --ink-faint:#8A968E;
  --line:#D3D9CD; --line-strong:#B7C0AF; --accent:#2F6F5E; --accent-soft:#E4EFEA; --gold:#B9852E; --gold-soft:#F6EBD6;
  --danger:#A34C3F; --danger-soft:#FBF0EE; --radius:10px;
}
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:13px/1.55 var(--font)}
h1,h2,h3{font-family:var(--font);margin:0 0 .4em}
h2{font-size:24px} h3{font-size:17px}
.mono{font-family:var(--font)}
.muted{color:var(--ink-soft)} .faint{color:var(--ink-faint)} .small{font-size:12.5px}
.eyebrow{font:500 10.5px var(--font);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin:0 0 4px}
a{color:var(--accent)}

/* Skall */
.app{display:flex;flex-direction:column;height:100vh;min-height:560px}
.topbar{display:flex;align-items:center;gap:12px;padding:10px 18px;background:var(--paper-soft);border-bottom:1px solid var(--line);flex-wrap:wrap}
.brand{font:700 18px var(--font);margin-right:6px}
.nav{display:flex;gap:2px;background:var(--paper);border-radius:9px;padding:3px;flex-wrap:wrap}
.nav button{border:0;background:transparent;padding:7px 10px;border-radius:7px;font:600 12.5px var(--font);color:var(--ink-soft);cursor:pointer}
.nav button.on{background:var(--card);color:var(--ink);box-shadow:0 1px 2px rgba(27,36,30,.1)}
.spacer{flex:1}
.page{flex:1;overflow:auto;padding:26px 32px 80px}
.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px}
.page-head p{margin:0;color:var(--ink-soft);max-width:640px}
.split{display:grid;grid-template-columns:300px 1fr;gap:22px;align-items:start}
@media(max-width:900px){.split{grid-template-columns:1fr}}

/* Skjema og knapper */
.btn{font:600 13px var(--font);border:1px solid transparent;border-radius:8px;padding:8px 13px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;background:var(--card);color:var(--ink);border-color:var(--line-strong)}
.btn:hover{background:var(--paper-soft)} .btn:disabled{opacity:.5;cursor:not-allowed}
.btn.primary{background:var(--accent);color:#fff;border-color:var(--accent)} .btn.primary:hover{opacity:.92;background:var(--accent)}
.btn.danger{color:var(--danger);border-color:#E3C9C3;background:transparent} .btn.danger:hover{background:var(--danger-soft)}
.btn.small{padding:4px 9px;font-size:12px}
.btn.ghost{background:transparent;border-color:transparent;color:var(--ink-soft)}
.field{margin-bottom:13px} .field>label,.lbl{display:block;font-size:12px;font-weight:600;color:var(--ink-soft);margin-bottom:4px}
input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],input[type=time],select,textarea{
  width:100%;font:13.5px var(--font);padding:8px 10px;border:1px solid var(--line-strong);border-radius:7px;background:var(--paper-soft);color:var(--ink)}
textarea{min-height:70px;resize:vertical}
input:focus,select:focus,textarea:focus{outline:2px solid var(--accent-soft);border-color:var(--accent)}
fieldset{border:0;margin:0;padding:0;min-width:0}
.check{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:500;color:var(--ink);cursor:pointer}
.check input{width:auto}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px} .grid3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}
.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap} .row.between{justify-content:space-between}
.inline{display:flex;gap:6px;align-items:center} .inline>input[type=number]{width:84px}
.err{color:var(--danger);font-size:12.5px;margin:6px 0} .ok{color:var(--accent);font-size:12.5px}

/* Kort og lister */
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:18px 20px;box-shadow:0 1px 2px rgba(27,36,30,.04);margin-bottom:16px}
.list{display:flex;flex-direction:column;gap:4px}
.item{padding:10px 12px;border-radius:var(--radius);cursor:pointer;border:1px solid transparent}
.item:hover{background:var(--accent-soft)} .item.on{background:var(--card);border-color:var(--line-strong);box-shadow:0 1px 2px rgba(27,36,30,.06)}
.item .t{font:600 14.5px var(--font);display:flex;align-items:center;gap:8px}
.item .s{font-size:11.5px;color:var(--ink-faint)}
.pill{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:600;padding:2px 9px;border-radius:20px;background:var(--paper);color:var(--ink-soft);border:1px solid var(--line)}
.pill.accent{background:var(--accent-soft);color:var(--accent);border-color:transparent}
.pill.gold{background:var(--gold-soft);color:#7A5A1E;border-color:transparent}
.pill.danger{background:var(--danger-soft);color:var(--danger);border-color:transparent}
.chan{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:600;padding:2px 9px;border-radius:20px;color:#fff}
.logo{height:26px;width:auto;max-width:62px;border-radius:5px;object-fit:contain;flex-shrink:0;background:#fff;border:1px solid var(--line);padding:1px}
.dot{width:10px;height:10px;border-radius:50%;display:inline-block;flex-shrink:0}
.swatches{display:flex;gap:7px;flex-wrap:wrap} .sw{width:24px;height:24px;border-radius:50%;cursor:pointer;border:2px solid transparent} .sw.on{border-color:var(--ink)}
.tabs{display:flex;gap:4px;margin-bottom:12px} .tabs button{border:1px solid var(--line);background:var(--card);padding:5px 11px;border-radius:20px;font:600 12px var(--font);cursor:pointer;color:var(--ink-soft)} .tabs button.on{background:var(--accent);color:#fff;border-color:var(--accent)}
table{width:100%;border-collapse:collapse;font-size:13px} th{font:600 11.5px var(--font);color:var(--ink-soft);text-align:left;padding:7px 8px;border-bottom:1px solid var(--line-strong)} td{padding:8px;border-bottom:1px solid var(--line);vertical-align:top}
.empty{color:var(--ink-faint);padding:20px 4px}
.grid-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
.thumb{max-width:100%;border:1px solid var(--line);border-radius:8px;display:block}

/* Steg */
.step{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-soft);margin-bottom:10px}
.step-head{display:flex;align-items:center;gap:10px;padding:10px 12px;cursor:pointer;flex-wrap:wrap}
.step-head .n{font:500 12px var(--font);color:var(--ink-faint);width:22px}
.step-body{padding:6px 14px 14px;border-top:1px solid var(--line);background:var(--card);border-radius:0 0 var(--radius) var(--radius)}
.trigger-box{background:var(--paper-soft);border:1px dashed var(--line-strong);border-radius:8px;padding:10px 12px;margin-bottom:13px}

/* Opplasting */
.drop{border:1.5px dashed var(--line-strong);border-radius:8px;padding:14px;text-align:center;font-size:12.5px;color:var(--ink-faint);cursor:pointer;background:var(--paper-soft)}
.drop:hover,.drop:focus{border-color:var(--accent);background:var(--accent-soft);outline:none}
.preview{position:relative;display:inline-block} .preview img{max-width:100%;max-height:170px;border-radius:8px;border:1px solid var(--line);display:block}
.preview button{position:absolute;top:6px;right:6px;border:0;background:rgba(20,26,22,.7);color:#fff;border-radius:50%;width:22px;height:22px;cursor:pointer}

/* Dialog og varsler */
.overlay{position:fixed;inset:0;background:rgba(20,26,22,.42);display:flex;align-items:flex-start;justify-content:center;padding:5vh 18px;overflow:auto;z-index:50}
.modal{background:var(--card);border-radius:14px;width:100%;max-width:560px;padding:24px 26px;box-shadow:0 20px 50px rgba(20,26,22,.25)} .modal.wide{max-width:760px}
.lightbox{position:fixed;inset:0;background:rgba(10,14,11,.86);display:flex;align-items:center;justify-content:center;z-index:70;padding:30px;cursor:zoom-out} .lightbox img{max-width:100%;max-height:100%;border-radius:6px}
.toasts{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;gap:8px;z-index:90}
.toast{background:var(--ink);color:#fff;padding:10px 16px;border-radius:8px;font-size:13px} .toast.err{background:var(--danger);color:#fff;margin:0}

/* Innlogging */
.auth{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}
.auth .box{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:30px;width:100%;max-width:400px;box-shadow:0 20px 50px rgba(20,26,22,.12)}
.qr{display:block;margin:10px auto;border:1px solid var(--line);border-radius:8px}
.codes{display:grid;grid-template-columns:1fr 1fr;gap:6px;font:500 14px var(--font);background:var(--paper-soft);border:1px solid var(--line);border-radius:8px;padding:12px;margin:10px 0}

/* Tidslinje */
.tl-wrap{display:grid;grid-template-columns:210px 1fr;border:1px solid var(--line);border-radius:var(--radius);background:var(--card);overflow:hidden}
.tl-labels{border-right:1px solid var(--line);background:var(--card)}
.tl-label{height:36px;padding:0 10px;display:flex;align-items:center;gap:7px;font-size:12.5px;font-weight:600;border-bottom:1px solid var(--line);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.tl-label.head{height:46px;background:var(--paper-soft);font-size:11px;color:var(--ink-faint)}
.tl-scroll{overflow-x:auto}
.legend{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:var(--ink-soft);margin:10px 0}
.conf{display:flex;gap:10px;align-items:flex-start;padding:8px 0;border-bottom:1px solid var(--line);font-size:13px}
.warnbox{background:var(--gold-soft);border:1px solid #E8D5A8;color:#6B4E18;border-radius:8px;padding:8px 12px;margin-bottom:8px;font-size:12.5px}

button,input,select,textarea{font-family:inherit}

.chan-picker{display:flex;flex-wrap:wrap;gap:6px}
.chan-opt{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:20px;border:1.5px solid var(--line-strong);background:var(--paper-soft);color:var(--ink-soft);font:600 12px var(--font);cursor:pointer}
.chan-opt:hover:not(:disabled){background:var(--accent-soft)} .chan-opt.on{color:#fff}
.chan-opt:disabled{opacity:.6;cursor:not-allowed}

/* Stegtabell */
.steps-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius)}
table.steps{min-width:640px;table-layout:fixed;border-collapse:collapse;width:100%;font-size:12px}
table.steps td{overflow-wrap:anywhere}
table.steps .c-n{width:30px} table.steps .c-steg{width:16%} table.steps .c-kanal{width:15%} table.steps .c-trig{width:17%} table.steps .c-inn{width:24%} table.steps .c-prio{width:18%} table.steps .c-act{width:128px}
table.steps .btn,table.steps .pill{white-space:nowrap}
table.steps th{background:var(--paper-soft);font-size:11px;padding:8px 10px;white-space:nowrap}
table.steps td{padding:9px 10px;border-bottom:1px solid var(--line);vertical-align:top}
table.steps tr.srow{cursor:pointer} table.steps tr.srow:hover td{background:var(--accent-soft)} table.steps tr.srow.open td{background:var(--paper-soft)}
table.steps td.num{color:var(--ink-faint);width:30px}
table.steps .stack>*+*{margin-top:3px}
table.steps .clip{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--ink-soft)}
table.steps tr.editor>td{background:var(--card);padding:6px 16px 16px;border-bottom:2px solid var(--line-strong)}
.org-chips{display:flex;flex-wrap:wrap;gap:6px}
.org-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:20px;border:1.5px solid var(--line-strong);background:var(--paper-soft);font:600 12px var(--font);color:var(--ink-soft);cursor:pointer}
.org-chip.on{background:var(--accent);border-color:var(--accent);color:#fff} .org-chip:disabled{opacity:.6;cursor:not-allowed}

.split>*{min-width:0}
.org-chip.on, .org-chip.on:hover{background:var(--accent);border-color:var(--accent);color:#fff}
.org-chip.on *{color:#fff}

/* RCS */
.rcs-layout{display:grid;grid-template-columns:minmax(0,1fr) 392px;gap:20px;align-items:start}
@media(max-width:1180px){.rcs-layout{grid-template-columns:minmax(0,1fr)}}
.rcs-sticky{position:sticky;top:12px}
.seg{display:inline-flex;border:1.5px solid var(--line-strong);border-radius:20px;overflow:hidden;background:var(--paper-soft)}
.seg button{border:0;background:none;padding:6px 14px;font:600 12px var(--font);color:var(--ink-soft);cursor:pointer}
.seg button.on{background:var(--accent);color:#fff}
.kind-pick{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}
.kind-pick button{border:1.5px solid var(--line-strong);background:var(--paper-soft);border-radius:var(--radius);padding:10px;font:600 12px var(--font);color:var(--ink-soft);cursor:pointer;text-align:left}
.kind-pick button small{display:block;font-weight:400;color:var(--ink-faint);margin-top:3px}
.kind-pick button.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}
.sug-row{border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;margin-bottom:8px;background:var(--paper-soft)}
.cnt{font-weight:400;color:var(--ink-faint);font-size:11px;margin-left:6px} .cnt.over{color:#B3361F;font-weight:700}
.card-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.card-tabs button{border:1.5px solid var(--line-strong);background:var(--paper-soft);border-radius:16px;padding:5px 11px;font:600 12px var(--font);color:var(--ink-soft);cursor:pointer}
.card-tabs button.on{background:var(--accent);border-color:var(--accent);color:#fff}
.issues .iss{display:flex;gap:8px;padding:5px 0;font-size:12px;border-bottom:1px solid var(--line)} .issues .iss:last-child{border:0}
.issues .lvl{flex:none;font-weight:700;font-size:11px;border-radius:10px;padding:1px 8px;height:fit-content}
.issues .lvl.feil{background:#F7DDD7;color:#B3361F} .issues .lvl.advarsel{background:#F5E9C8;color:#7A5A12}

.phone{width:372px;max-width:100%;background:#17191c;border-radius:40px;padding:12px;box-shadow:0 14px 40px rgba(20,26,22,.28);margin:0 auto}
.phone-screen{background:#fff;border-radius:30px;overflow:hidden;height:640px;display:flex;flex-direction:column;color:#202124}
.phone-status{display:flex;justify-content:space-between;padding:9px 20px 2px;font-size:10.5px;font-weight:700}
.phone-bar{display:flex;align-items:center;gap:10px;padding:8px 14px 10px;border-bottom:1px solid #E8EAED}
.phone-avatar{width:34px;height:34px;border-radius:50%;background:#E8EAED;object-fit:cover;display:flex;align-items:center;justify-content:center;font-weight:700;color:#5F6368;flex:none}
.phone-name{font-size:13px;font-weight:700;display:flex;align-items:center;gap:5px}
.phone-sub{font-size:10.5px;color:#5F6368}
.phone-thread{flex:1;overflow-y:auto;padding:12px 10px;display:flex;flex-direction:column;gap:8px;background:#fff}
.phone-day{align-self:center;font-size:10.5px;color:#5F6368}
.phone-note{align-self:center;font-size:10.5px;color:#5F6368;background:#F1F3F4;border-radius:10px;padding:3px 10px;text-align:center;max-width:92%}
.phone-input{border-top:1px solid #E8EAED;padding:10px 14px}
.phone-input span{display:block;background:#F1F3F4;border-radius:20px;padding:8px 14px;font-size:12px;color:#80868B}
.bub{max-width:84%;padding:9px 13px;border-radius:18px;font-size:12.5px;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}
.bub.agent{background:#F1F3F4;align-self:flex-start;border-bottom-left-radius:6px}
.bub.user{background:#1A73E8;color:#fff;align-self:flex-end;border-bottom-right-radius:6px}
.rcs-card{background:#fff;border:1px solid #DADCE0;border-radius:16px;overflow:hidden;max-width:100%;flex:none}
.rcs-card .media{background:#E8EAED;display:flex;align-items:center;justify-content:center;color:#80868B;font-size:11px;overflow:hidden}
.rcs-card .media img{width:100%;height:100%;object-fit:cover;display:block}
.rcs-card .body{padding:12px 14px}
.rcs-card .t{font-size:13.5px;font-weight:700;margin-bottom:4px;overflow-wrap:anywhere}
.rcs-card .d{font-size:12px;color:#5F6368;white-space:pre-wrap;overflow-wrap:anywhere}
.rcs-card .acts{border-top:1px solid #E8EAED}
.rcs-btn{display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 12px;color:#1A73E8;font:600 12px var(--font);border:0;border-top:1px solid #E8EAED;background:none;width:100%;cursor:pointer}
.rcs-btn:first-child{border-top:0} .rcs-btn:hover,.rcs-chip:hover{background:#F1F6FE}
.rcs-chips{display:flex;flex-wrap:wrap;gap:6px;align-self:flex-start;max-width:98%}
.rcs-chip{display:inline-flex;align-items:center;gap:5px;border:1px solid #DADCE0;border-radius:18px;padding:7px 12px;color:#1A73E8;background:#fff;font:600 11.5px var(--font);cursor:pointer}
.rcs-carousel{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;align-self:stretch;scroll-snap-type:x mandatory}
.rcs-carousel .rcs-card{scroll-snap-align:start}

.phone-thread>*{flex-shrink:0}

/* Mosaikk i registeret */
.mosaic-h{margin:6px 0 10px;font-size:15px}
.mosaic{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:16px;margin-bottom:24px}
.org-tile{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;cursor:pointer;display:flex;flex-direction:column;transition:box-shadow .15s,transform .15s,border-color .15s}
.org-tile:hover,.org-tile:focus-visible{box-shadow:0 8px 24px rgba(20,26,22,.13);transform:translateY(-2px);border-color:var(--accent);outline:none}
.org-tile .logo-box{height:132px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:center;padding:18px}
.org-tile .logo-box img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block}
.org-tile .logo-box .initials{font-size:36px;font-weight:700;color:#fff;letter-spacing:1px}
.org-tile .tile-body{padding:13px 15px 14px;display:flex;flex-direction:column;gap:9px;flex:1}
.org-tile .tile-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}
.org-tile .tile-head strong{font-size:14.5px;overflow-wrap:anywhere}
.org-tile .tile-flags{display:flex;gap:5px;flex-wrap:wrap}
.org-tile .kpis{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:6px;border-top:1px solid var(--line);padding-top:9px}
.org-tile .kpi b{display:block;font-size:20px;line-height:1.1}
.org-tile .kpi span{display:block;font-size:10.5px;color:var(--ink-faint);margin-top:2px}
.org-tile .tile-meta{font-size:11px;color:var(--ink-soft);min-height:15px}
.org-tile .tile-chans{display:flex;gap:9px;align-items:center;min-height:18px;margin-top:auto}

@media(max-width:1500px){.topbar .who{display:none}}

.org-tile .tile-num{font-size:11px;color:var(--ink-soft);margin-top:-4px}
.org-tile.strategic{border-color:#B9852E;box-shadow:inset 0 3px 0 #B9852E}
.pill.star{background:#F5E9C8;color:#7A5A12;font-weight:700}

/* Aktivitetsruter: logoene til organisasjonene som bruker aktiviteten */
.org-tile .logo-box.multi{flex-wrap:wrap;gap:12px 16px;align-content:center;padding:14px}
.org-tile .logo-box.multi img{max-height:44px;max-width:112px;width:auto;height:auto;object-fit:contain}
.org-tile .logo-box.multi .mini{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:15px}
.org-tile .logo-box.multi .more{font-weight:700;color:var(--ink-faint);font-size:13px}
.org-tile .tile-desc{font-size:11.5px;color:var(--ink-soft);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

.org-tile .logo-box.multi{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px;align-content:center;justify-items:stretch;padding:12px 18px}
.org-tile .logo-box.multi .cell{height:46px;min-width:0;display:flex;align-items:center;justify-content:center}
.org-tile .logo-box.multi .cell img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.org-tile .logo-box.multi .cell.more{font-weight:700;color:var(--ink-faint);font-size:14px}

/* Fallback-kjede */
.fb-chain{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:4px 0 10px}
.fb-node{display:inline-flex;align-items:center;gap:5px;border:1.5px solid var(--line-strong);border-radius:14px;padding:3px 9px;font:600 11.5px var(--font);background:#fff;color:var(--ink)}
.fb-chain .arrow{color:var(--ink-faint);font-weight:700}
.fb-chain.small{margin:4px 0 0} .fb-chain.small .fb-node{padding:1px 7px;font-size:10.5px}

/* Faste plasser i rutene, så linjene står likt på tvers av alle ruter i samme rad */
.org-tile .tile-head{min-height:40px;align-items:flex-start}
.org-tile .tile-head strong{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;line-height:1.35}
.org-tile .tile-num{height:15px;margin-top:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.org-tile .tile-flags{min-height:24px;align-content:flex-start}
.org-tile .kpis{align-items:start}
.org-tile .kpi span{min-height:27px}
.org-tile .tile-meta{min-height:30px;line-height:1.35}
.org-tile .tile-desc{min-height:32px;line-height:1.4}
.org-tile .tile-chans{min-height:20px}
.org-h{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:10px 0 12px}
.org-h .sec-logo{height:30px;max-width:110px;width:auto;object-fit:contain;background:#fff;border:1px solid var(--line);border-radius:6px;padding:3px 6px}
.org-h .sec-mini{width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:12px}

.org-tile .tile-meta{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}

.org-tile .tile-num{height:18px;line-height:18px}
.org-tile .tile-chans{height:20px;min-height:20px;overflow:hidden;line-height:20px}
.org-tile .tile-chans>span{display:inline-flex;align-items:center;height:20px}

.facts{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:5px 16px;margin:10px 0;font-size:12px}
.facts dt{color:var(--ink-faint)} .facts dd{margin:0;overflow-wrap:anywhere}
.clip3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;color:var(--ink-soft);margin-top:4px}

/* Stort skjermbilde ved hover i tidslinjen */


/* Tidslinjen i fullskjerm (møter og demo) */

.tl-label.tall{flex-direction:column;align-items:flex-start;justify-content:center;gap:5px;white-space:normal;font-size:13px;line-height:1.2}
.tl-label.tall .logo{max-width:160px !important}


/* Innboks: mapper, kompakte rader og samlet behandling */
.folders{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.folder{display:inline-flex;align-items:center;gap:7px;border:1.5px solid var(--line-strong);background:var(--card);border-radius:20px;padding:6px 12px;font:600 12.5px var(--font);color:var(--ink-soft);cursor:pointer}
.folder .n{background:var(--paper-soft);border-radius:10px;padding:1px 8px;font-size:11px;color:var(--ink)} .folder:hover{background:var(--accent-soft)}
.folder.on{background:var(--accent);border-color:var(--accent);color:#fff} .folder.on .n{background:rgba(255,255,255,.22);color:#fff}
.folder.alert:not(.on){border-color:#D9B15A;background:#FBF1D6;color:#7A5A12} .folder.alert .n{background:#F0DA9C}
.folder.quiet:not(.on){opacity:.75}
.inbox-split{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(360px,1fr);gap:18px;align-items:start}
@media(max-width:1100px){.inbox-split{grid-template-columns:minmax(0,1fr)}}
.inbox-pane{position:sticky;top:10px;max-height:calc(100vh - 20px);overflow:auto}
.inbox-tools{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:10px}
.infobar{background:#E7EFE9;border:1px solid var(--line);border-radius:var(--radius);padding:8px 12px;font-size:12px;margin-bottom:8px}
.linklike{border:0;background:none;color:var(--accent);font:600 12px var(--font);text-decoration:underline;cursor:pointer;padding:0}
.msgs{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);overflow:hidden}
.grp-h{display:flex;align-items:center;gap:10px;padding:9px 12px;background:var(--paper-soft);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:2}
.grp-h.alert{background:#FBF1D6}
.grp-t{display:flex;align-items:center;gap:8px;border:0;background:none;font:600 13px var(--font);color:var(--ink);cursor:pointer;padding:0;text-align:left}
.grp-t .chev{color:var(--ink-faint);width:12px}
.msg-row{display:grid;grid-template-columns:22px 26px minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 12px;border-bottom:1px solid var(--line);cursor:pointer}
.msg-row:last-child{border-bottom:0} .msg-row:hover{background:var(--accent-soft)} .msg-row.open{background:#EEF3EF;box-shadow:inset 3px 0 0 var(--accent)} .msg-row.sel{background:#E3EEE7}
.mr-ch{width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center}
.mr-subj{font-weight:700;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mr-sub{font-size:11px;color:var(--ink-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mr-tags{display:flex;gap:5px;align-items:center;justify-content:flex-end;flex-wrap:wrap;max-width:260px}
.mr-tags .shot{color:var(--ink-faint);font-size:14px}
.bulk .org-chips{max-height:200px;overflow:auto;margin-bottom:10px}

/* Handlinger rett på raden: arkiver og slett */
.mr-right{display:flex;align-items:center;gap:8px;justify-content:flex-end}
.mr-act{display:flex;gap:2px;opacity:.55;transition:opacity .12s}
.msg-row:hover .mr-act,.msg-row:focus-within .mr-act,.msg-row.sel .mr-act,.msg-row.open .mr-act{opacity:1}
.icon-btn{border:0;background:transparent;border-radius:8px;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;color:var(--ink-soft);cursor:pointer;padding:0}
.icon-btn:hover,.icon-btn:focus-visible{background:#fff;color:var(--accent);box-shadow:0 0 0 1px var(--line-strong);outline:none}
.icon-btn.danger:hover,.icon-btn.danger:focus-visible{color:#B3361F}

/* Mottatte meldinger på tidslinjen: valgliste og bildetekst */
.msg-pick{display:flex;flex-direction:column;max-height:320px;overflow:auto;border:1px solid var(--line);border-radius:var(--radius);margin-top:8px}
.msg-pick-row{display:grid;grid-template-columns:56px minmax(0,1fr) auto auto;gap:10px;align-items:center;text-align:left;border:0;border-bottom:1px solid var(--line);background:var(--card);padding:8px 12px;font:inherit;cursor:pointer}
.msg-pick-row:last-child{border-bottom:0} .msg-pick-row:hover{background:var(--accent-soft)}
.msg-pick-row .mp-s{font-weight:700;font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}


/* Skjermbildet er standard visning av en melding, tekst er et alternativ */
.shot-main{display:block;width:100%;max-width:760px;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:zoom-in}
.text-box{white-space:pre-wrap;background:var(--paper-soft);border:1px solid var(--line);border-radius:8px;padding:12px;max-height:420px;overflow:auto;overflow-wrap:anywhere}
.recv-date{margin:2px 0}

.mp-thumb{width:56px;height:40px;object-fit:cover;object-position:top;border-radius:5px;border:1px solid var(--line);background:#fff}
.mp-none{display:inline-flex;align-items:center;justify-content:center;background:var(--paper-soft)}

/* Tidslinjen i fullskjerm: dra, zoom, miniatyrkart og detaljrute */
.tl-present{position:fixed;inset:0;z-index:60;background:var(--paper);display:flex;flex-direction:column;gap:8px;padding:12px 20px 10px;overflow:hidden}
.tp-top{display:flex;align-items:center;gap:10px 18px;flex-wrap:wrap}
.tp-title .eyebrow{margin:0} .tp-title h2{margin:0;font-size:24px}
.tp-controls{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;flex:1;min-width:280px}
.tp-member{display:flex;align-items:center;gap:6px} .tp-member select{width:auto;min-width:200px}
.tp-nav{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center}
.tp-range{font-weight:700;font-size:13px;min-width:250px}
.tp-main{flex:1 1 0;min-height:0;display:flex;gap:14px}
.tp-chartcol{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:8px}
.tp-chart{flex:none;position:relative;overflow-x:hidden;overflow-y:auto}
.tp-scale{transform-origin:0 0}
.tp-mini{flex:none} .tp-mini svg{display:block;touch-action:none;cursor:pointer}
.tp-hint{font-size:11.5px;color:var(--ink-faint);text-align:center;transition:opacity .5s} .tp-hint.quiet{opacity:.5}
.tp-drawer{flex:none;width:0;overflow:hidden;display:flex;flex-direction:column}
.tp-drawer.open{width:clamp(380px,32vw,560px);animation:drIn .18s ease-out}
.tp-drawer-nav{flex:none;display:flex;align-items:center;gap:8px;padding-bottom:8px}
.tp-drawer-count{min-width:64px;text-align:center}
.tp-drawer-body{flex:1 1 0;min-height:0;overflow:auto;padding-right:2px}
.tp-drawer .card .row.between>button.ghost:last-child{display:none}
.tp-legend .legend{font-size:13px;margin:0;justify-content:center}
@keyframes drIn{from{opacity:0;transform:translateX(24px)}to{opacity:1;transform:none}}
.tl-scroll.pan{overflow:hidden;cursor:grab;touch-action:pan-y;user-select:none;-webkit-user-select:none}
.tl-scroll.pan.grabbing{cursor:grabbing}
.tp-menu{position:relative}
.tp-menu-pop{display:none;position:absolute;z-index:80;top:calc(100% + 6px);left:0;min-width:230px;background:var(--card);border:1px solid var(--line-strong);border-radius:12px;box-shadow:0 12px 32px rgba(20,30,25,.2);padding:12px;flex-direction:column;gap:8px}
.tp-menu-pop.open{display:flex}

/* Forhåndsvisning ved hover: et kort ved siden av markøren som du kan klikke i */
.hovercard{position:fixed;z-index:75;background:var(--card);border:1px solid var(--line-strong);border-radius:14px;box-shadow:0 18px 50px rgba(15,25,20,.28);padding:12px;overflow:auto;display:flex;flex-direction:column;gap:8px;animation:hcIn .12s ease-out}
.hovercard::before{content:'';position:absolute;left:0;right:0;height:16px}
.hovercard.below::before{top:-16px} .hovercard.above::before{bottom:-16px}
.hc-head{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;font-size:13px}
.hc-grid{display:grid;gap:10px}
.hc-item{display:flex;flex-direction:column;gap:4px;text-align:left;border:1px solid var(--line);border-radius:10px;background:var(--card);padding:8px;cursor:pointer;font:inherit;color:inherit;min-width:0}
.hc-item:hover,.hc-item:focus-visible{border-color:var(--accent);box-shadow:0 0 0 2px rgba(47,111,94,.2);outline:none}
.hc-item:disabled{opacity:.55;cursor:default;box-shadow:none}
.hc-thumb{display:block;height:84px;border-radius:7px;overflow:hidden;background:var(--paper-soft);border:1px solid var(--line)}
.hc-item.big .hc-thumb{height:190px}
.hc-thumb img{width:100%;height:100%;object-fit:cover;object-position:top;display:block}
.hc-ph{display:flex;align-items:center;justify-content:center;color:var(--ink-faint);padding:8px}
.hc-snip{font-size:11px;line-height:1.35;color:var(--ink-soft);display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden;text-align:left}
.hc-title{font-weight:700;font-size:12.5px;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.hc-meta{font-size:11px;color:var(--ink-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hc-all{align-self:flex-end;border:0;background:none;color:var(--accent);font:600 12px var(--font);cursor:pointer;padding:2px 0}
.hc-all:hover{text-decoration:underline}
.hc-foot{text-align:center}
@keyframes hcIn{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.hovercard,.tp-drawer.open{animation:none}}
.hc-grid.dense .hc-thumb{height:58px}

/* «I utsnittet»: listen under tidslinjen i fullskjerm */
.tp-agenda{flex:1 1 0;min-height:0;overflow:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--card);padding:10px 12px}
.ag-head{display:flex;align-items:baseline;gap:10px;margin-bottom:8px;position:sticky;top:-10px;background:var(--card);padding:2px 0 4px;z-index:1}
.ag-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:6px 10px}
.ag-item{display:grid;grid-template-columns:54px 32px minmax(0,1fr) auto;gap:10px;align-items:center;text-align:left;border:1px solid var(--line);border-radius:10px;background:var(--card);padding:6px 10px;cursor:pointer;font:inherit;color:inherit;min-width:0}
.ag-item:hover,.ag-item:focus-visible{border-color:var(--accent);background:var(--accent-soft);outline:none}
.ag-item.sel{border-color:var(--accent);box-shadow:0 0 0 2px rgba(47,111,94,.25);background:#EEF3EF}
.ag-date{font-size:11.5px;font-weight:700;color:var(--ink-soft);white-space:nowrap}
.ag-text{display:flex;flex-direction:column;min-width:0}
.ag-title{font-weight:700;font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ag-sub{font-size:11px;color:var(--ink-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ag-empty{padding:8px 2px}

/* Utsender: forbundet selv, LOfavør på vegne av forbundet, eller leverandør */
.party-dot{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;color:#fff;font-weight:800;flex:none;line-height:1}
.party-pill{display:inline-flex;align-items:center;gap:5px;border:1.5px solid var(--pc);color:var(--pc);background:#fff;border-radius:20px;padding:1px 9px 1px 2px;font-size:11px;font-weight:700;white-space:nowrap}
.tl-label.banded{position:relative}
.band-tag{display:inline-flex;align-items:center;gap:4px;font-size:9px;font-weight:800;letter-spacing:.02em;text-transform:uppercase;line-height:1.1;white-space:normal}
.tl-label.banded{flex-direction:column;align-items:flex-start;justify-content:center;gap:2px}
.lbl-main{display:flex;align-items:center;gap:7px;max-width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tl-label.tall .lbl-main{flex-direction:column;align-items:flex-start;gap:5px;white-space:normal}
.party-seg button{display:inline-flex;align-items:center;gap:5px}
.party-seg button:not(.on){opacity:.55}
.party-seg button:disabled{opacity:.35;cursor:default}
.party-seg .faint{font-size:10.5px}

/* Konflikter */
.conf-nav{display:inline-flex;align-items:center;gap:6px}
.conf-chip{display:inline-flex;align-items:center;gap:6px;border:1.5px solid #A34C3F;background:#FBEBE7;color:#7D2E22;border-radius:20px;padding:4px 12px;font:700 12px var(--font);cursor:pointer}
.conf-chip:hover{background:#F6DAD3}
.conf-chip.ok{border-color:#9DC2B2;background:#E7F2EC;color:#1F5F4B;cursor:default}
.conf.cross{background:#FBF1EE;border-radius:8px}
.confbox{border:1.5px solid #E7B9AE;background:#FBF1EE;border-radius:10px;padding:8px 10px;margin:8px 0;display:flex;flex-direction:column;gap:6px}
.conf-link{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center;text-align:left;border:0;background:none;font:inherit;cursor:pointer;padding:2px 0;color:inherit}
.conf-link:hover .small{text-decoration:underline}
.msg-pick-row.conf-row{grid-template-columns:22px minmax(0,1fr) auto}
.mp-two{display:flex;flex-direction:column;min-width:0}
.hc-warn{font-size:11.5px;font-weight:700;color:#8B3326;background:#FBEBE7;border-radius:8px;padding:3px 8px}
.ag-party{display:inline-flex;vertical-align:middle;margin-right:5px}
@keyframes cfPulse{0%,100%{stroke-opacity:1}50%{stroke-opacity:.2}}
circle.pulse{animation:cfPulse 1.1s ease-in-out infinite}
@media (prefers-reduced-motion:reduce){circle.pulse{animation:none}}

table.steps .c-steg{width:15%} table.steps .c-kanal{width:13%} table.steps .c-trig{width:16%} table.steps .c-inn{width:21%} table.steps .c-prio{width:11%} table.steps .c-send{width:13%}

/* Reisekart */
.jm{position:relative;border:1px solid var(--line);border-radius:var(--radius);background:#FBFCF9;overflow:hidden}
.jm svg{display:block;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none;outline:none}
.jm.grabbing svg{cursor:grabbing}
.jm.fs{position:fixed;inset:0;z-index:60;border-radius:0;border:0;height:auto}
.jm-bar{position:absolute;top:10px;left:10px;right:10px;display:flex;gap:8px;align-items:center;z-index:2;pointer-events:none}
.jm-bar>*{pointer-events:auto}
.jm-zoom{background:#fff;border:1px solid var(--line);border-radius:12px;padding:2px 8px}
.jm-empty{display:flex;height:100%;align-items:center;justify-content:center;color:var(--ink-faint)}
.jm-node{cursor:pointer;outline:none}
.jm-node:hover .jm-card,.jm-node:focus-visible .jm-card{stroke:#2F6F5E;stroke-width:2.4}
.jm-legend{margin-top:8px;font-size:12px;display:flex;flex-wrap:wrap;gap:6px 18px;align-items:center}
.jm-note-key{display:inline-block;width:14px;height:12px;background:#FFF1A0;border:1px solid #E6D26A;vertical-align:-2px}
.editor-below{border:1px solid var(--line);border-radius:var(--radius);padding:14px;background:var(--card)}
.ag-ch{width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex:none;box-shadow:0 0 0 2px #fff,0 0 0 3px rgba(0,0,0,.08)}
.ag-sub strong{font-weight:700;color:var(--ink-soft)}

/* Reisekart: filtre */
.fchips{display:flex;flex-wrap:wrap;gap:6px}
.fchip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:#fff;border-radius:999px;padding:3px 10px 3px 4px;font:inherit;font-size:12.5px;cursor:pointer;color:var(--ink)}
.fchip:hover{border-color:var(--accent)}
.fchip.on{background:var(--accent-soft,#E3EFE9);border-color:var(--accent);font-weight:700}
.fchip-ic{width:20px;height:20px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:10px;font-weight:800;flex:none}
.pickbox{position:relative}
.pickbox>summary{list-style:none;cursor:pointer}
.pickbox>summary::-webkit-details-marker{display:none}
.pickbox-pop{position:absolute;z-index:20;top:calc(100% + 6px);left:0;min-width:340px;max-width:min(520px,90vw);max-height:340px;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 8px 24px rgba(20,30,25,.14);padding:10px}
.pick-row{display:flex;align-items:center;gap:8px;padding:4px 2px;cursor:pointer;font-size:13px}
.pick-row:hover{background:#F4F6F1}
.pick-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pick-ch{display:inline-flex;gap:3px}
.pick-dot{width:10px;height:10px;border-radius:50%;display:inline-block}
.jm-mark{cursor:pointer;outline:none}
.jm-mark:hover .jm-mark-c,.jm-mark:focus-visible .jm-mark-c{stroke:#1B241E}

/* Reisekart i fullskjerm: valgene (filtrene) som panel øverst */
.jm-fspanel{position:absolute;top:52px;left:10px;right:10px;z-index:3;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;box-shadow:0 6px 18px rgba(20,30,25,.14)}
.jm.fs .pickbox-pop{max-height:50vh}
