/* ===========================================================
   admin.css — Admin pages (WP9): the common admin layout (.admin-page,
   VNE.adminKit in js/access.js), Access & permissions, Audit log,
   Automations, Power BI, Jira, Licence & usage, the board-pack export
   menu and the page guides (js/help.js).
   Tokens only; status colours come from the design system.
   =========================================================== */

/* ---------- common admin layout (spec §7.14) ---------- */
.admin-page{display:grid;grid-template-columns:200px minmax(0,960px);gap:28px;align-items:start}
.admin-page.is-single{grid-template-columns:minmax(0,960px)}
.adm-nav{position:sticky;top:0;display:flex;flex-direction:column;gap:2px;padding-top:2px}
.adm-nav-h{font:var(--t-caption);color:var(--muted);padding:0 10px 8px}
.adm-nav-btn{display:flex;align-items:center;gap:9px;min-height:34px;padding:6px 10px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--muted);font:500 13px/18px var(--fb);text-align:left;cursor:pointer;transition:background-color var(--dur-1),color var(--dur-1)}
.adm-nav-btn .i{flex:none;opacity:.8}
.adm-nav-btn:hover{background:var(--hover);color:var(--ink)}
.adm-nav-btn[aria-current="true"]{background:var(--card);color:var(--ink);box-shadow:inset 3px 0 0 var(--brand),0 0 0 1px var(--line)}
.adm-nav-btn[aria-current="true"] .i{opacity:1;color:var(--brand-text)}
.adm-content{display:flex;flex-direction:column;gap:20px;min-width:0}
.adm-jump-wrap{display:none;align-items:center;gap:10px}
.adm-jump-l{font:var(--t-caption);color:var(--muted);white-space:nowrap}
.adm-jump{max-width:320px}
.adm-sec{scroll-margin-top:16px}
.adm-card .card-title[tabindex="-1"]:focus{outline:none}
.adm-card-ico{display:inline-grid;place-items:center;width:28px;height:28px;margin-right:6px;border-radius:var(--radius-sm);background:var(--brand-softer);color:var(--brand-text);flex:none}
.adm-card-ico.is-danger{background:var(--red-softer);color:var(--red-text)}
.adm-card .card-caption{max-width:72ch;line-height:18px}
.adm-card.adm-danger{border-color:var(--red-line)}
.adm-card .card-body{display:flex;flex-direction:column;gap:14px}
.adm-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;container-type:inline-size}
.adm-f{display:flex;flex-direction:column;gap:6px;min-width:0}
.adm-f.is-full{grid-column:1 / -1}
.adm-f-l{font:600 12px/16px var(--fb);color:var(--muted)}
.adm-f-h{margin:0;font:400 12px/17px var(--fb);color:var(--muted)}
.adm-f .fld{width:100%}
.adm-note{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--card-2);font:400 13px/19px var(--fb);color:var(--ink-2)}
.adm-note-ico{flex:none;display:inline-flex;margin-top:1px;color:var(--muted)}
.adm-note.is-info{background:var(--brand-softer);border-color:var(--brand-line)}
.adm-note.is-info .adm-note-ico{color:var(--brand-text)}
.adm-note.is-warn{background:var(--amber-softer);border-color:var(--amber-line);color:var(--amber-text)}
.adm-note.is-warn .adm-note-ico{color:var(--amber-text)}
.adm-note.is-lock{background:var(--card-2);border-color:var(--line)}
.adm-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.adm-kv{display:grid;grid-template-columns:minmax(120px,max-content) minmax(0,1fr);gap:10px 20px;margin:0;font-size:13px}
.adm-kv dt{font:600 12px/20px var(--fb);color:var(--muted)}
.adm-kv dd{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;min-width:0;color:var(--ink);overflow-wrap:anywhere}
.adm-mono{font-family:var(--fm);font-size:12px;letter-spacing:.01em}
[data-demo-disabled]{cursor:not-allowed}
@media (max-width:1023px){
  .admin-page{grid-template-columns:minmax(0,1fr)}
  .adm-nav{display:none}
  .adm-jump-wrap{display:flex}
}
@container (max-width:560px){.adm-form{grid-template-columns:minmax(0,1fr)}}
@media (max-width:560px){.adm-form{grid-template-columns:minmax(0,1fr)}.adm-kv{grid-template-columns:minmax(0,1fr);gap:2px}.adm-kv dd{margin-bottom:8px}}

/* ---------- Access & permissions ---------- */
.ac-enforced{display:inline-flex;align-items:center;gap:8px;font:500 13px/18px var(--fb);color:var(--muted)}
.ac-enforced .i{color:var(--st-complete-text)}
.ac-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.ac-choice{position:relative;display:flex;gap:12px;align-items:flex-start;padding:14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--card);cursor:pointer;transition:border-color var(--dur-1),box-shadow var(--dur-1)}
.ac-choice:hover{border-color:var(--line-2)}
.ac-choice.is-on{border-color:var(--brand);box-shadow:0 0 0 1px var(--brand) inset;background:var(--brand-softer)}
.ac-choice.is-locked{cursor:not-allowed}
.ac-choice.is-locked:not(.is-on){opacity:.6}
.ac-choice.is-locked:hover:not(.is-on){border-color:var(--line)}
.ac-choice-inp{position:absolute;opacity:0;width:1px;height:1px}
.ac-choice:focus-within{outline:2px solid var(--focus);outline-offset:2px}
.ac-choice-ico{flex:none;display:grid;place-items:center;width:34px;height:34px;border-radius:var(--radius-sm);background:var(--bg-2);color:var(--ink-2)}
.ac-choice.is-on .ac-choice-ico{background:var(--brand);color:var(--on-brand)}
.ac-choice-txt{display:flex;flex-direction:column;gap:4px;min-width:0}
.ac-choice-t{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font:600 14px/20px var(--fh);color:var(--ink)}
.ac-choice-d{font:400 12.5px/18px var(--fb);color:var(--muted)}
.ac-tag{font:600 11px/18px var(--fb);padding:0 8px;border-radius:var(--radius-pill);background:var(--st-complete-soft);color:var(--st-complete-text)}
.ac-sel{max-width:320px}
/* MOD-37: the matrix grows with the page (no nested scroll box cutting a row in half); its header row sticks to the
   top of the view while scrolling. Below 1024 px it scrolls sideways inside its frame. */
.ac-matrix-wrap{overflow:visible;border:1px solid var(--line);border-radius:var(--radius-sm);container-type:inline-size}
@media (max-width:1023.98px){.ac-matrix-wrap{overflow-x:auto}}
/* A narrower frame (a 1280 px laptop with the sidebar open) shows the levels as icon chips (the legend below names
   them; each keeps its word for screen readers and as a tooltip) and lets the role names wrap, so the matrix fits. */
@container (max-width:800px){
  .ac-matrix thead th,.ac-matrix td,.ac-matrix tbody th{padding-left:8px;padding-right:8px}
  .ac-matrix .ac-lvl{width:24px;padding:0;justify-content:center}
  .ac-matrix .ac-lvl-t{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
  .ac-matrix .ac-role,.ac-matrix .ac-role-sum{white-space:normal}
}
.ac-matrix{width:100%;border-collapse:separate;border-spacing:0;font-size:13px}
.ac-matrix thead th{position:sticky;top:0;z-index:2;background:var(--card-2);border-bottom:1px solid var(--line);padding:10px 12px;vertical-align:bottom;text-align:left;font:600 12px/16px var(--fb);color:var(--muted)}
.ac-matrix thead th.is-center{text-align:center}
.ac-matrix th.is-sticky{position:sticky;left:0;z-index:1;background:var(--card);text-align:left;font:500 13px/18px var(--fb);color:var(--ink);white-space:nowrap}
.ac-matrix thead th.is-sticky{z-index:3;background:var(--card-2);color:var(--muted);font:600 12px/16px var(--fb)}
.ac-matrix td,.ac-matrix tbody th{padding:8px 12px;border-bottom:1px solid var(--line-soft)}
.ac-matrix tbody tr:last-child td,.ac-matrix tbody tr:last-child th{border-bottom:0}
.ac-matrix tbody tr:hover td,.ac-matrix tbody tr:hover th{background:var(--hover)}
.ac-matrix td.is-center{text-align:center}
.ac-role{display:block;color:var(--ink);font-weight:600;white-space:nowrap}
.ac-role-sum{display:block;font-weight:400;font-size:11px;white-space:nowrap}
.ac-lvl{display:inline-flex;align-items:center;gap:5px;height:22px;padding:0 8px;border-radius:var(--radius-pill);font:600 11.5px/1 var(--fb);white-space:nowrap;border:1px solid transparent}
.ac-lvl.is-compact{width:22px;padding:0;justify-content:center}
.ac-lvl.is-admin{background:var(--seq-6);color:var(--seq-ink-6)}
.ac-lvl.is-edit{background:var(--seq-3);color:var(--seq-ink-3)}
.ac-lvl.is-read{background:var(--seq-1);color:var(--ink-2);border-color:var(--seq-2)}
.ac-lvl.is-none{background:transparent;color:var(--faint);border:1px dashed var(--line-2)}
.ac-legend{display:flex;flex-wrap:wrap;gap:6px 16px;font:var(--t-caption);color:var(--muted)}
.ac-legend-i{display:inline-flex;align-items:center;gap:6px}
.ac-where-list{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius-sm);overflow:hidden}
.ac-where{border-top:1px solid var(--line-soft)}
.ac-where:first-child{border-top:0}
.ac-where summary{display:flex;align-items:center;gap:10px;min-height:42px;padding:8px 12px;cursor:pointer;list-style:none;font:500 13px/18px var(--fb);color:var(--ink)}
.ac-where summary::-webkit-details-marker{display:none}
.ac-where summary:hover{background:var(--hover)}
.ac-where summary .i{color:var(--muted);transition:transform var(--dur-1)}
.ac-where[open] summary .i{transform:rotate(90deg)}
.ac-where-t{flex:1 1 auto;min-width:0}
.ac-where ul{margin:0;padding:2px 16px 12px 46px;display:flex;flex-direction:column;gap:4px;font-size:12.5px;line-height:18px;color:var(--ink-2)}
.ac-test-card{border:1px solid var(--line);border-radius:var(--radius-sm);padding:12px 14px;background:var(--card-2)}
.ac-test-h{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;font:600 13px/20px var(--fb);color:var(--ink);margin-bottom:8px}
.ac-test-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 16px;font-size:13px}
.ac-test-list li{display:flex;align-items:center;gap:8px}
.ac-test-list li.is-yes{color:var(--ink)}
.ac-test-list li.is-yes .i{color:var(--st-complete)}
.ac-test-list li.is-no{color:var(--muted)}
.ac-test-list li.is-no .i{color:var(--faint)}
@media (max-width:767px){.ac-choices,.ac-test-list{grid-template-columns:minmax(0,1fr)}}

/* ---------- Licence & usage (js/licence-ui.js) ---------- */
.lic-context{font:var(--t-caption);color:var(--muted)}
.lic-hero{display:flex;align-items:flex-start;gap:14px;padding:14px 16px;border-radius:var(--radius);background:linear-gradient(135deg,var(--brand-softer),var(--card) 70%);border:1px solid var(--brand-line)}
.lic-hero.is-unlicensed{background:var(--card-2);border-color:var(--line)}
.lic-hero-ico{flex:none;display:grid;place-items:center;width:44px;height:44px;border-radius:var(--radius);background:var(--brand);color:var(--on-brand)}
.lic-hero.is-unlicensed .lic-hero-ico{background:var(--bg-2);color:var(--ink-2)}
.lic-hero-t{flex:1 1 auto;min-width:0}
.lic-hero-h{margin:0;font:600 18px/26px var(--fh);letter-spacing:-.01em;color:var(--ink)}
.lic-hero-sub{font:500 14px/20px var(--fb);color:var(--muted)}
.lic-hero-d{margin:4px 0 0;font:400 13px/19px var(--fb);color:var(--ink-2);max-width:68ch}
.lic-days{font-variant-numeric:tabular-nums;font-weight:600}
.lic-days.is-warn{color:var(--amber-text)}
.lic-days.is-bad{color:var(--red-text)}
.lic-seats{display:flex;flex-direction:column;gap:10px;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--card)}
.lic-seats-top{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 10px}
.lic-seats-v{font:var(--t-value);font-family:var(--fh);color:var(--ink)}
.lic-seats-of{font:500 13px/18px var(--fb);color:var(--muted)}
.lic-seats-note{margin:0;font:400 12px/17px var(--fb);color:var(--muted)}
.lic-seats .ui-bullet{width:100%}
.lic-tiles.kpi-row{margin:0}
.lic-chart{min-height:240px}
.lic-feats{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.lic-feat{display:flex;align-items:center;gap:10px;min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--card)}
.lic-feat-ico{flex:none;display:grid;place-items:center;width:28px;height:28px;border-radius:var(--radius-sm);background:var(--bg-2);color:var(--ink-2)}
.lic-feat-t{flex:1 1 auto;min-width:0;font:500 13px/18px var(--fb);color:var(--ink)}
.lic-feat-s{display:inline-flex;align-items:center;gap:5px;font:500 12px/16px var(--fb);white-space:nowrap}
.lic-feat.is-on .lic-feat-s{color:var(--st-complete-text)}
.lic-feat.is-off{background:var(--card-2)}
.lic-feat.is-off .lic-feat-s,.lic-feat.is-off .lic-feat-t{color:var(--muted)}
.lic-token{font-family:var(--fm);font-size:12px;resize:vertical;min-height:88px}
.lic-err{margin:0;font:600 12.5px/18px var(--fb);color:var(--red-text)}
.adm-f .fld[aria-invalid="true"]{border-color:var(--red);box-shadow:0 0 0 1px var(--red) inset}
.lic-banner{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 16px;padding:10px 14px;border-radius:var(--radius);border:1px solid var(--amber-line);background:var(--amber-softer);color:var(--amber-text);font:500 13px/19px var(--fb)}
.lic-banner.is-delayed,.lic-banner.is-blocked{border-color:var(--red-line);background:var(--red-softer);color:var(--red-text)}
.lic-banner-ico{display:inline-flex;flex:none}
.lic-banner-t{flex:1 1 280px;min-width:0}
.lic-banner-go{font-weight:600}
.lic-banner-x{display:grid;place-items:center;width:28px;height:28px;border:0;border-radius:var(--radius-sm);background:transparent;color:inherit;cursor:pointer}
.lic-banner-x:hover{background:rgba(15,23,42,.06)}
.lic-chip{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border-radius:var(--radius-pill);background:var(--card-2);border:1px solid var(--line);font:600 12px/1 var(--fb);color:var(--ink-2);font-variant-numeric:tabular-nums;white-space:nowrap}
.lic-chip.is-over{background:var(--red-softer);border-color:var(--red-line);color:var(--red-text)}
.lic-card{display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.lic-card .muted{margin:0}
.lic-card-line{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-height:24px}
@media (max-width:767px){.lic-feats{grid-template-columns:minmax(0,1fr)}}

/* ---------- Audit log (js/logs.js) ---------- */
.logs-range{font:var(--t-caption);color:var(--muted);white-space:nowrap}
.logs-kpis{margin-bottom:20px}
.logs-kpis .kpi.is-active{border-color:var(--brand);box-shadow:0 0 0 1px var(--brand) inset;background:var(--brand-softer)}
.logs-activity{margin-bottom:20px}
.logs-chart{min-height:200px}
.logs-card{display:flex;flex-direction:column;gap:12px}
.logs-filters{display:flex;align-items:center;justify-content:space-between;gap:10px 16px;flex-wrap:wrap}
.logs-filter-r{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}
.logs-filter-r .search-field,.logs-filter-r .sf{min-width:220px}
.logs-sel{width:auto;max-width:190px}
.logs-pills:empty{display:none}
.logs-wrap{border:1px solid var(--line);border-radius:var(--radius-sm)}
.logs-grid{width:100%;border-collapse:separate;border-spacing:0}
.logs-grid thead th{position:sticky;top:0;z-index:1;background:var(--card-2);text-align:left;font:600 12px/16px var(--fb);color:var(--muted);padding:9px 12px;border-bottom:1px solid var(--line)}
.logs-grid td{padding:8px 12px;border-bottom:1px solid var(--line-soft);vertical-align:middle;font:400 13px/19px var(--fb);color:var(--ink)}
.logs-grid tr.logs-row:hover td{background:var(--hover)}
.logs-grid tr.logs-day th{padding:14px 12px 6px;background:var(--card);text-align:left;font:600 12px/16px var(--fb);color:var(--muted);border-bottom:1px solid var(--line)}
.logs-grid tr.is-fail td{background:var(--red-softer)}
.logs-c-time{white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--muted);width:64px}
.logs-c-acts{width:76px}
.logs-act{display:inline-flex;align-items:center;gap:5px;height:22px;padding:0 8px;border-radius:var(--radius-pill);background:var(--bg-2);color:var(--ink-2);font:600 11.5px/1 var(--fb);white-space:nowrap}
.logs-act.is-bad{background:var(--st-delayed-soft);color:var(--st-delayed-text)}
.logs-rec{font-weight:500;max-width:220px;overflow-wrap:anywhere}
.logs-change{max-width:440px;overflow-wrap:anywhere}
.logs-change .i{vertical-align:-2px;margin:0 4px;color:var(--faint)}
.logs-field{font-weight:600;margin-right:6px}
.logs-field::after{content:":"}
.logs-from{color:var(--muted);text-decoration:line-through;text-decoration-color:var(--line-3)}
.logs-to{color:var(--ink)}
.logs-edited{display:inline-flex;align-items:center;gap:3px;margin-left:8px;font:500 11px/1 var(--fb);color:var(--brand-text);white-space:nowrap}
.logs-acts{white-space:nowrap;text-align:right}
.logs-acts .btn{opacity:.55}
.logs-row:hover .logs-acts .btn,.logs-acts .btn:focus-visible{opacity:1}
.logs-more{margin:0;padding:10px 12px;font:var(--t-caption);color:var(--muted)}
.logs-pager-host:empty{display:none}
.logs-pager{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.logs-pager .spacer{flex:1 1 auto}
.logs-pager-t{font:var(--t-caption);color:var(--muted);font-variant-numeric:tabular-nums}
.adm-modal{display:flex;flex-direction:column;gap:12px}
.adm-modal-h{margin:0;font:600 18px/26px var(--fh);color:var(--ink);padding-right:28px}
.adm-modal-lead{margin:0;font:400 13px/19px var(--fb);color:var(--ink-2)}
.adm-modal .modal-actions{display:flex;justify-content:flex-end;gap:8px}
@media (hover:none){.logs-acts .btn{opacity:1}}

/* ---------- Power BI and Jira (js/powerbi.js, js/jira.js) ---------- */
.pbi-context{font:var(--t-caption);color:var(--muted)}
.pbi-lead{margin:0;max-width:72ch;font:400 14px/22px var(--fb);color:var(--ink-2)}
.pbi-facts{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 20px}
.pbi-facts li{display:inline-flex;align-items:center;gap:8px;font:500 13px/18px var(--fb);color:var(--ink-2)}
.pbi-facts .i{color:var(--brand-text)}
.pbi-token{display:flex;align-items:center;gap:10px;min-height:44px;padding:8px 8px 8px 14px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--card-2)}
.pbi-token.is-empty{border-style:dashed;color:var(--muted);font-size:13px;padding:10px 14px}
.pbi-token-v{flex:1 1 auto;min-width:0;overflow-wrap:anywhere;color:var(--ink)}
.pbi-feed{display:flex;align-items:flex-start;gap:10px;min-width:0}
.pbi-feed-ico{flex:none;display:grid;place-items:center;width:28px;height:28px;border-radius:var(--radius-sm);background:var(--bg-2);color:var(--ink-2)}
.pbi-feed-t{display:flex;flex-direction:column;gap:2px;min-width:0}
.pbi-feed-n{font:600 13px/18px var(--fb);color:var(--ink)}
.pbi-feed-d{font:400 12px/17px var(--fb);color:var(--muted);white-space:normal;max-width:44ch}
.pbi-row{display:flex;align-items:center;gap:6px;min-width:240px}
.pbi-url{flex:1 1 auto;min-width:0;font-family:var(--fm);font-size:11.5px;line-height:16px;word-break:break-all;color:var(--ink-2);background:var(--card-2);border:1px solid var(--line);border-radius:var(--radius-sm);padding:6px 8px;white-space:normal}
.pbi-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;counter-reset:none}
.pbi-steps li{display:flex;gap:12px;align-items:flex-start;font:400 13.5px/21px var(--fb);color:var(--ink-2)}
.pbi-step-n{flex:none;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--brand-soft);color:var(--brand-text);font:600 12px/1 var(--fb);margin-top:-1px}
.pbi-step-t strong{color:var(--ink);font-weight:600}
.pbi-code{font-family:var(--fm);font-size:12px;padding:1px 5px;border-radius:4px;background:var(--bg-2);color:var(--ink)}
.jira-test{display:inline-flex;align-items:center;gap:6px;font:500 12.5px/18px var(--fb);color:var(--muted)}
.jira-test.is-ok{color:var(--st-complete-text)}
.jira-test.is-bad{color:var(--st-delayed-text)}
.jira-map{display:flex;flex-direction:column;gap:8px}
.jira-map-row{display:grid;grid-template-columns:minmax(180px,1fr) minmax(0,1.2fr) minmax(0,.8fr);align-items:center;gap:10px;padding:8px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--card)}
.jira-map-kind{display:inline-flex;align-items:center;gap:8px;font:600 13px/18px var(--fb);color:var(--ink)}
.jira-map-kind .i{color:var(--muted)}
.jira-sync-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.jira-sync{display:flex;flex-direction:column;gap:10px;padding:14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--card)}
.jira-sync-head{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.jira-sync-t{display:inline-flex;align-items:center;gap:8px;font:600 14px/20px var(--fh);color:var(--ink)}
.jira-sync-meta{margin:0;font:var(--t-caption);color:var(--muted)}
.jira-linklist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.jira-link{display:flex;align-items:center;gap:8px;min-height:32px;font-size:12.5px;border-top:1px solid var(--line-soft)}
.jira-key{font:600 12px/1 var(--fm);color:var(--brand-text);text-decoration:none;white-space:nowrap}
.jira-key:hover{text-decoration:underline}
.jira-link-sum{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}
.jira-more{padding-top:6px;font:var(--t-caption);color:var(--muted)}
@media (max-width:767px){.jira-map-row{grid-template-columns:minmax(0,1fr)}}

/* ---------- Automations (js/automation.js) ---------- */
.auto-context{font:var(--t-caption);color:var(--muted);max-width:52ch}
.auto-list{display:flex;flex-direction:column;gap:12px}
.auto-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);padding:14px 16px;transition:border-color var(--dur-1),box-shadow var(--dur-1)}
.auto-card:hover{border-color:var(--line-2)}
.auto-card.is-open{border-color:var(--brand-line);box-shadow:var(--shadow-sm)}
.auto-card.is-off .auto-card-main{opacity:.62}
.auto-card-head{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.auto-card-ico{flex:none;display:grid;place-items:center;width:36px;height:36px;border-radius:var(--radius-sm);background:var(--brand-softer);color:var(--brand-text)}
.auto-card.is-off .auto-card-ico{background:var(--bg-2);color:var(--muted)}
.auto-card-main{flex:1 1 320px;min-width:0;display:flex;flex-direction:column;gap:4px}
.auto-card-name{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.auto-card-t{font:600 14px/20px var(--fh);color:var(--ink)}
.auto-chip{display:inline-flex;align-items:center;height:20px;padding:0 8px;border-radius:var(--radius-pill);background:var(--bg-2);color:var(--ink-2);font:500 11.5px/1 var(--fb);white-space:nowrap}
.auto-chip.is-example{background:var(--brand-soft);color:var(--brand-text)}
.auto-sum{display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px;font:400 13px/19px var(--fb);color:var(--muted)}
.auto-sum>.i{color:var(--faint)}
.auto-sum-acts{display:inline-flex;flex-wrap:wrap;gap:6px}
.auto-act{display:inline-flex;align-items:center;gap:5px;height:22px;padding:0 8px;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--card);color:var(--ink-2);font:500 12px/1 var(--fb)}
.auto-card-side{display:flex;align-items:center;gap:10px;margin-left:auto}
.auto-runs{font:400 12px/16px var(--fb);color:var(--muted);white-space:nowrap}
.auto-runs b{font-weight:600;color:var(--ink);font-variant-numeric:tabular-nums}
.auto-en{position:relative;display:inline-flex;align-items:center;gap:8px;cursor:pointer;font:500 13px/18px var(--fb);color:var(--ink)}
.auto-switch-inp{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.auto-switch-ui{position:relative;width:36px;height:20px;border-radius:var(--radius-pill);background:var(--line-3);flex:none;transition:background-color var(--dur-1)}
.auto-switch-ui::after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#FFFFFF;box-shadow:0 1px 2px rgba(15,23,42,.3);transition:transform var(--dur-1)}
.auto-switch-inp:checked+.auto-switch-ui{background:var(--brand)}
.auto-switch-inp:checked+.auto-switch-ui::after{transform:translateX(16px)}
.auto-switch-inp:focus-visible+.auto-switch-ui{outline:2px solid var(--focus);outline-offset:2px}
.auto-switch-inp:disabled+.auto-switch-ui{opacity:.55}
.auto-editor{margin-top:14px;padding-top:14px;border-top:1px solid var(--line-soft);display:flex;flex-direction:column;gap:14px}
.auto-grid{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:flex-end}
.auto-grid .auto-f{flex:1 1 220px}
.auto-step{display:flex;flex-direction:column;gap:8px}
.auto-step-h{display:flex;align-items:center;gap:8px}
.auto-step-n{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--brand-soft);color:var(--brand-text);font:600 11.5px/1 var(--fb)}
.auto-step-t{font:600 13px/18px var(--fb);color:var(--ink)}
.auto-step-s{font:400 12px/16px var(--fb);color:var(--muted)}
.auto-step-b{display:flex;flex-direction:column;gap:8px;align-items:flex-start;padding-left:30px}
.auto-rows{display:flex;flex-direction:column;gap:8px;align-self:stretch}
.auto-row{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end;background:var(--card-2);border:1px solid var(--line-soft);border-radius:var(--radius-sm);padding:10px 12px}
.auto-row.trig{background:var(--brand-softer);border-color:var(--brand-line);align-self:stretch}
.auto-row .fld{width:auto;min-width:150px}
.auto-row textarea.fld{min-width:260px}
.auto-when{font:500 12px/32px var(--fb);color:var(--muted);min-width:44px}
.auto-inline{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end}
.auto-f{display:flex;flex-direction:column;gap:4px}
.auto-l{font:600 12px/16px var(--fb);color:var(--muted)}
.auto-editor-acts{display:flex;justify-content:flex-end;gap:8px}
@media (max-width:767px){.auto-card-side{margin-left:0;width:100%;justify-content:flex-start}.auto-step-b{padding-left:0}.auto-row .fld,.auto-row textarea.fld{min-width:0;width:100%}}

/* ---------- board pack export (js/boardpack.js exportControl) ---------- */
.bp-export-btn{display:inline-flex;align-items:center;gap:6px}

/* ---------- page guides (js/help.js) — opened as a right-hand drawer ---------- */
.help-doc{max-width:680px;color:var(--ink);font:var(--t-body)}
.help-head{padding-bottom:16px;border-bottom:1px solid var(--line)}
.help-kicker{font:var(--t-kicker);letter-spacing:.06em;text-transform:uppercase;color:var(--brand-text)}
.help-doc .help-title{margin:4px 0 8px;font:600 22px/30px var(--fh,var(--fb));letter-spacing:-.015em;color:var(--ink)}
.help-intro{margin:0;font:400 14.5px/24px var(--fb);color:var(--ink-2)}
.help-toc{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
.help-toc-b{height:28px;padding:0 11px;border:1px solid var(--line-2);border-radius:var(--radius-pill);background:var(--card);color:var(--ink-2);font:500 12.5px/26px var(--fb);cursor:pointer;transition:background-color var(--dur-1),border-color var(--dur-1),color var(--dur-1)}
.help-toc-b:hover{background:var(--brand-softer);border-color:var(--brand-line);color:var(--brand-text)}
.help-toc-b:focus-visible,.help-demo-link:focus-visible{outline:2px solid var(--focus,var(--brand));outline-offset:2px}
.help-demo{display:flex;align-items:flex-start;gap:10px;margin:16px 0 0;padding:10px 12px;border:1px solid var(--brand-line);border-radius:var(--radius-sm);background:var(--brand-softer);font:400 13px/20px var(--fb);color:var(--ink-2)}
.help-demo-ico{flex:none;display:inline-flex;margin-top:2px;color:var(--brand-text)}
.help-demo-t{flex:1;min-width:0}
.help-demo-t b{font-weight:600;color:var(--ink)}
.help-demo-link{flex:none;display:inline-flex;align-items:center;gap:4px;border:0;background:none;padding:0;color:var(--brand-text);font:600 13px/20px var(--fb);cursor:pointer;white-space:nowrap}
.help-demo-link:hover{text-decoration:underline}
.help-sec{padding-top:20px;scroll-margin-top:12px}
.help-doc .help-h{display:flex;align-items:center;gap:8px;margin:0 0 10px;font:600 14px/20px var(--fb);letter-spacing:0;text-transform:none;color:var(--ink)}
.help-h-ico{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:7px;background:var(--brand-soft);color:var(--brand-text);flex:none}
.help-plain{padding:12px 14px;border-radius:var(--radius-sm);background:var(--card-2);border:1px solid var(--line-soft)}
.help-plain p{margin:0 0 10px;font:400 14px/23px var(--fb);color:var(--ink-2)}
.help-plain p:last-child{margin:0}
.help-dl{display:grid;grid-template-columns:minmax(120px,176px) minmax(0,1fr);margin:0;border-top:1px solid var(--line-soft)}
.help-dl dt,.help-dl dd{margin:0;padding:9px 0;border-bottom:1px solid var(--line-soft);font:400 13px/20px var(--fb)}
.help-dl dt{padding-right:16px;font-weight:600;color:var(--ink)}
.help-dl dd{color:var(--muted)}
.help-dl.is-controls{grid-template-columns:minmax(120px,200px) minmax(0,1fr)}
.help-ctl{display:inline-block;max-width:100%;padding:1px 8px;border:1px solid var(--line-2);border-radius:6px;background:var(--card);box-shadow:0 1px 0 var(--line-2);font:600 12.5px/20px var(--fb);color:var(--ink-2);overflow-wrap:anywhere}
.help-ex{margin:0 0 10px;padding:12px 14px;border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--card)}
.help-ex:last-child{margin-bottom:0}
.help-ex-t{margin:0 0 4px;font:600 13.5px/20px var(--fb);color:var(--ink)}
.help-ex-b{margin:0;font:400 13px/21px var(--fb);color:var(--muted)}
.help-tips{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.help-tips li{display:flex;gap:9px;font:400 13px/20px var(--fb);color:var(--ink-2)}
.help-tip-ico{flex:none;display:inline-flex;margin-top:3px;color:var(--st-complete-text,var(--brand-text))}
@media (max-width:640px){
  .help-dl,.help-dl.is-controls{grid-template-columns:1fr}
  .help-dl dt{padding:9px 0 0;border-bottom:0}
  .help-dl dd{padding:2px 0 9px}
  .help-doc .help-title{font-size:20px;line-height:28px}
  .help-demo{flex-wrap:wrap}
}
.help-doc .help-title:focus{outline:none}
/* MOD-30: operator set-up details, collapsed */
.adm-howto{margin-top:10px;border-top:1px solid var(--line-soft);padding-top:8px}
.adm-howto>summary{display:inline-flex;align-items:center;gap:6px;cursor:pointer;font:600 12.5px/1.2 var(--fb);color:var(--ink-2);list-style:none}
.adm-howto>summary::-webkit-details-marker{display:none}
.adm-howto[open]>summary{margin-bottom:6px}
.adm-howto-b{display:flex;flex-direction:column;gap:4px}
