:root{--admin-bg:#f3f4f6;--admin-panel:#fff;--admin-ink:#15171a;--admin-muted:#6b7280;--admin-line:#e5e7eb;--admin-accent:#111827;--admin-soft:#f8fafc}
.admin-body{background:var(--admin-bg);color:var(--admin-ink)}
.admin-app{min-height:100vh;display:grid;grid-template-columns:248px minmax(0,1fr)}
.admin-sidebar{position:sticky;top:0;height:100vh;background:#111827;color:#fff;padding:24px 18px;display:flex;flex-direction:column;gap:28px}
.admin-brand{display:grid;gap:4px;color:#fff;text-decoration:none;padding:0 8px}.admin-brand span{font-size:10px;letter-spacing:.18em;font-weight:800;opacity:.6}.admin-brand strong{font-size:18px;line-height:1.15}
.admin-sidebar nav{display:grid;gap:5px}.admin-sidebar nav a{color:#cbd5e1;text-decoration:none;padding:11px 12px;border-radius:9px;font-weight:700;font-size:14px}.admin-sidebar nav a:hover,.admin-sidebar nav a.active{background:#253047;color:#fff}
.sidebar-bottom{margin-top:0;margin-bottom:auto;display:grid;gap:10px;padding:14px 8px 0;border-top:1px solid rgba(255,255,255,.12)}.sidebar-bottom span{display:grid;font-weight:700;font-size:13px}.sidebar-bottom small{font-size:11px;color:#94a3b8;text-transform:capitalize}.sidebar-bottom a{color:#cbd5e1;text-decoration:none;font-size:13px}
.admin-main{box-sizing:border-box;min-width:0;width:100%;max-width:none;padding:30px clamp(22px,2.4vw,38px) 82px;overflow-x:hidden}.admin-topbar{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px}.admin-topbar h1{margin:4px 0 0;font-size:34px;letter-spacing:-.035em}.admin-top-actions{display:flex;gap:8px}
.admin-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.admin-metric-grid.five{grid-template-columns:repeat(5,minmax(0,1fr))}.admin-metric-grid article{background:#111827;color:#fff;border-radius:14px;padding:18px;display:grid;gap:4px;min-height:126px}.admin-metric-grid article span{font-size:11px;text-transform:uppercase;letter-spacing:.09em;color:#9ca3af;font-weight:800}.admin-metric-grid article strong{font-size:36px;letter-spacing:-.04em}.admin-metric-grid article small{color:#cbd5e1}
.admin-shortcuts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.admin-shortcuts a{background:#fff;border:1px solid var(--admin-line);border-radius:14px;padding:18px;text-decoration:none;color:inherit;display:grid;gap:10px;min-height:116px}.admin-shortcuts strong{font-size:17px}.admin-shortcuts span{font-size:13px;color:var(--admin-muted);line-height:1.45}
.admin-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.admin-card{background:#fff;border:1px solid var(--admin-line);border-radius:14px;padding:20px;margin-bottom:16px;box-shadow:0 1px 1px rgba(0,0,0,.02)}.admin-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:14px}.admin-card>header h2{margin:0;font-size:19px;letter-spacing:-.02em}.admin-card>header p{margin:5px 0 0;color:var(--admin-muted);font-size:13px;line-height:1.5}.admin-card>header>a,.admin-card>header>span{font-size:12px;color:var(--admin-muted)}.admin-card-head{align-items:center!important}
.admin-list{display:grid}.admin-list>div{display:grid;gap:4px;padding:13px 0;border-top:1px solid var(--admin-line)}.admin-list strong{font-size:14px;line-height:1.35}.admin-list small{color:var(--admin-muted)}.admin-list.ranked>div{grid-template-columns:30px 1fr;align-items:start}.admin-list.ranked small{grid-column:2}.rank{font-size:20px;font-weight:900;color:#9ca3af}
.admin-card table{font-size:13px}.admin-card th{background:#fafafa}.admin-card td,.admin-card th{padding:11px 9px}.admin-card a{color:inherit}.source-actions{flex-wrap:wrap}.source-actions a,.link-button,.link-danger{font:inherit;font-size:12px;font-weight:700;background:none;border:0;padding:0;color:#374151;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.link-danger{color:#b42318}.link-button{color:#374151}.source-actions form{display:inline-flex}
.country-group{border:1px solid var(--admin-line);border-radius:11px;margin:8px 0;overflow:hidden;background:#fff}.country-group summary{cursor:pointer;list-style:none;padding:14px 15px;display:flex;justify-content:space-between;gap:15px;align-items:center;background:#fafafa}.country-group summary::-webkit-details-marker{display:none}.country-group summary span:first-child{display:flex;gap:8px;align-items:baseline}.country-group summary small{color:var(--admin-muted)}
.admin-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.admin-card textarea{width:100%;padding:13px 14px;border:1px solid var(--admin-line);border-radius:10px;background:#fff;color:var(--admin-ink);font:inherit;line-height:1.5;resize:vertical}.check-row{display:flex;grid-template-columns:none;align-items:flex-start;gap:10px}.check-row input{width:auto;margin-top:3px}.status-pill{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:800;background:#f3f4f6}.status-pill.published{background:#ecfdf3;color:#067647}.status-pill.draft{background:#fff7ed;color:#c2410c}
.mini-chart{height:230px;display:flex;align-items:flex-end;gap:8px;border-bottom:1px solid var(--admin-line);padding-top:18px}.mini-chart>div{height:100%;flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:7px;min-width:12px}.mini-chart span{display:block;width:min(28px,75%);background:#111827;border-radius:5px 5px 0 0;min-height:4px}.mini-chart small{font-size:9px;color:var(--admin-muted);white-space:nowrap}
.admin-login{min-height:100vh;display:grid;place-items:center;padding:24px}.admin-login-card{width:min(430px,100%);background:#fff;border:1px solid var(--admin-line);border-radius:18px;padding:28px;display:grid;gap:16px;box-shadow:0 18px 50px rgba(15,23,42,.08)}.admin-login-card h1{margin:0 0 5px;font-size:30px;letter-spacing:-.04em}.admin-login-card>a{font-size:13px;color:var(--admin-muted)}
@media(max-width:1150px){.admin-metric-grid.five{grid-template-columns:repeat(3,1fr)}.admin-shortcuts{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.admin-app{grid-template-columns:1fr}.admin-sidebar{position:static;height:auto;padding:14px 16px;gap:12px}.admin-sidebar nav{display:flex;overflow:auto}.admin-sidebar nav a{white-space:nowrap}.sidebar-bottom{display:none}.admin-main{padding:22px 16px 60px}.admin-metric-grid,.admin-metric-grid.five{grid-template-columns:repeat(2,1fr)}.admin-grid-2{grid-template-columns:1fr}}
@media(max-width:560px){.admin-metric-grid,.admin-metric-grid.five,.admin-shortcuts,.admin-form-grid,.twocol{grid-template-columns:1fr}.admin-topbar{align-items:flex-start}.admin-topbar h1{font-size:28px}.admin-card{padding:15px}.admin-main{padding-left:10px;padding-right:10px}.admin-card-head{align-items:flex-start!important;flex-direction:column}}

/* v18 · scan/task center */
.scan-progress{height:8px;background:#edf0f2;border-radius:999px;overflow:hidden}.scan-progress>span{display:block;height:100%;background:#111827;border-radius:inherit;transition:width .35s ease}.scan-progress.large{height:12px}.scan-progress.source{height:6px;margin:10px 0 8px}.scan-progress-meta,.task-cycle-head,.task-cycle-stats,.task-source-main,.task-source-foot{display:flex;align-items:center;justify-content:space-between;gap:12px}.scan-progress-meta{margin-top:8px;font-size:12px;color:var(--admin-muted)}.task-hero{border-color:#d8dee5}.task-cycle-head{margin:6px 0 12px}.task-cycle-head>div{display:flex;flex-direction:column;gap:2px}.task-cycle-head>div:last-child{text-align:right}.task-cycle-head span{font-size:12px;color:var(--admin-muted)}.task-cycle-stats{justify-content:flex-start;gap:22px;margin-top:13px;font-size:12px;color:var(--admin-muted)}.task-cycle-stats b{font-size:14px;color:var(--admin-ink);margin-right:4px}.task-country-groups{display:grid;gap:10px}.task-country>summary{display:block;padding:15px 17px}.task-country-title{display:grid;grid-template-columns:minmax(180px,1fr) minmax(240px,42%);align-items:center;gap:20px}.task-country-title>span{display:flex;align-items:baseline;gap:9px}.task-country-title small{color:var(--admin-muted)}.country-progress-inline{display:grid;grid-template-columns:1fr 44px;align-items:center;gap:10px}.country-progress-inline b{text-align:right;font-size:12px}.task-country-summary{display:block;margin-top:8px;font-size:11px;color:var(--admin-muted)}.task-source-list{display:grid;gap:0;border-top:1px solid var(--admin-line)}.task-source-row{padding:14px 17px;border-bottom:1px solid var(--admin-line);background:#fff}.task-source-row:last-child{border-bottom:0}.task-source-main>div{display:flex;flex-direction:column;gap:2px}.task-source-main small,.task-source-foot{font-size:11px;color:var(--admin-muted)}.task-status{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;background:#f3f4f6;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.status-running .task-status{background:#eff6ff;color:#1d4ed8}.status-running .scan-progress.source>span{background:#2563eb}.status-done .task-status{background:#ecfdf3;color:#067647}.status-done .scan-progress.source>span{background:#079455}.status-error .task-status{background:#fef3f2;color:#b42318}.status-error .scan-progress.source>span{background:#d92d20}.status-cancelled{opacity:.65}.task-source-metrics{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:11px;color:var(--admin-muted)}.task-source-metrics b{color:var(--admin-ink)}.task-error{margin:9px 0;padding:8px 10px;border-radius:8px;background:#fff1f0;color:#b42318;font-size:11px;white-space:pre-line}.task-source-foot{margin-top:9px}.scan-overview-mini .scan-progress{margin-top:3px}
@media(max-width:760px){.task-country-title{grid-template-columns:1fr;gap:9px}.task-source-main,.task-source-foot{align-items:flex-start}.task-source-metrics{gap:6px 12px}.task-cycle-head{align-items:flex-end}.task-cycle-stats{gap:12px;flex-wrap:wrap}}
.task-country-actions{padding:12px 17px 15px;border-top:1px solid var(--admin-line);background:#fafbfc}

/* v19 · live taskcenter */
.live-worker-toggle{display:grid;grid-template-columns:auto auto;align-items:center;column-gap:7px;row-gap:1px;padding:7px 10px;border:1px solid var(--admin-line);border-radius:10px;background:#fff;cursor:pointer;min-width:126px}
.live-worker-toggle input{grid-row:1/3;margin:0}.live-worker-toggle span{font-size:11px;font-weight:800}.live-worker-toggle small{font-size:9px;color:var(--admin-muted);text-transform:uppercase;letter-spacing:.05em}
.task-source-row.is-live{position:relative;overflow:hidden}.task-source-row.is-live:before{content:"";position:absolute;inset:0 auto 0 -28%;width:28%;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(37,99,235,.055),transparent);animation:taskSweep 1.8s linear infinite}
@keyframes taskSweep{to{left:100%}}
.status-running .task-status:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;display:inline-block;margin-right:5px;animation:taskPulse 1s ease-in-out infinite alternate}
@keyframes taskPulse{to{opacity:.25}}

/* v20 · discoverymotorer */
.discovery-engine-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.discovery-intro{border-left:4px solid #111827}.discovery-engine-card{position:relative;overflow:hidden}.discovery-engine-card:after{content:"";position:absolute;right:-42px;top:-42px;width:120px;height:120px;border-radius:50%;background:#f3f4f6;z-index:0}.discovery-engine-card>*{position:relative;z-index:1}.discovery-next{padding:13px 0 16px;border-top:1px solid var(--admin-line);display:grid;gap:8px}.discovery-next>span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--admin-muted);font-weight:800}.discovery-next>div{display:flex;gap:7px;flex-wrap:wrap}.discovery-next b{font-size:11px;padding:5px 8px;border-radius:999px;background:#f3f4f6}.discovery-market-table td{vertical-align:middle}.discovery-market-table small{color:var(--admin-muted)}.discovery-market-table a{text-underline-offset:3px}.country-group[data-country="DISC"]{border-color:#cfd6de;background:#f8fafc}.country-group[data-country="DISC"] summary{background:#eef2f6}.country-group[data-country="DISC"] .task-country-title strong:after{content:" · radar";font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:#64748b;margin-left:6px}
@media(max-width:900px){.discovery-engine-grid{grid-template-columns:1fr}}

/* v22 · separate Discovery Radar scheduler */
.discovery-schedule-status{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0 16px}.discovery-schedule-status>div,.discovery-mini-grid article{border:1px solid var(--admin-line);background:#fafafa;border-radius:10px;padding:11px 12px;display:grid;gap:4px}.discovery-schedule-status span,.discovery-mini-grid span{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:var(--admin-muted);font-weight:800}.discovery-schedule-status strong{font-size:13px;line-height:1.3}.discovery-mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.discovery-mini-grid article strong{font-size:14px}.discovery-mini-grid article small{color:var(--admin-muted)}
@media(max-width:760px){.discovery-schedule-status,.discovery-mini-grid{grid-template-columns:1fr}}

/* v23 · scheduler heartbeat + local time */
.scheduler-health{position:relative;overflow:hidden}.scheduler-health header{align-items:flex-start}.scheduler-health .scheduler-dot{width:11px;height:11px;border-radius:50%;background:#98a2b3;box-shadow:0 0 0 5px rgba(152,162,179,.12);margin-top:5px}.scheduler-health.scheduler-active .scheduler-dot{background:#079455;box-shadow:0 0 0 5px rgba(7,148,85,.12)}.scheduler-health.scheduler-delayed .scheduler-dot{background:#f79009;box-shadow:0 0 0 5px rgba(247,144,9,.13)}.scheduler-health.scheduler-stopped .scheduler-dot{background:#d92d20;box-shadow:0 0 0 5px rgba(217,45,32,.12)}
.scheduler-health-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.scheduler-health-grid>div{border:1px solid var(--admin-line);border-radius:10px;background:#fafafa;padding:11px 12px;display:grid;gap:4px}.scheduler-health-grid span{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:var(--admin-muted);font-weight:800}.scheduler-health-grid strong{font-size:13px}.scheduler-health-grid small{color:var(--admin-muted)}
.status-pill.active{background:#ecfdf3;color:#067647}.status-pill.delayed{background:#fff7ed;color:#b54708}.status-pill.stopped{background:#fef3f2;color:#b42318}.status-pill.unknown{background:#f2f4f7;color:#475467}
@media(max-width:760px){.scheduler-health-grid{grid-template-columns:1fr}}


/* v24 · task robustness, budgets and problem sources */
.status-timeout .task-status{background:#fff7ed;color:#b54708}.status-timeout .scan-progress.source>span{background:#f79009}
.task-status-stack{display:flex;align-items:flex-end;flex-direction:column;gap:5px}
.task-problem-badge{display:inline-flex;padding:3px 7px;border-radius:999px;background:#fef3f2;color:#b42318;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.task-source-row.is-problem{box-shadow:inset 3px 0 0 #f04438}
.task-source-actions{display:flex;align-items:center;gap:12px}.task-source-actions form{margin:0}
.link-button{border:0;background:none;padding:0;color:#b42318;font:inherit;font-size:11px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.link-button:hover{color:#7a271a}
@media(max-width:760px){.task-status-stack{align-items:flex-start}.task-source-actions{align-items:flex-start;flex-direction:column;gap:5px}}

/* v25 · complete discovery rounds */
.discovery-round-progress{border-top:1px solid var(--admin-line);border-bottom:1px solid var(--admin-line);padding:14px 0;margin:8px 0 14px}.discovery-progress-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.discovery-progress-head strong{font-size:13px}.discovery-progress-head span{font-size:12px;font-weight:800;color:var(--admin-muted)}.scan-progress.discovery{height:10px;background:#edf0f2;border-radius:999px;overflow:hidden}.scan-progress.discovery span{display:block;height:100%;background:#111827;border-radius:inherit;transition:width .35s ease}.discovery-round-metrics{display:flex;gap:14px;flex-wrap:wrap;margin-top:9px;font-size:11px;color:var(--admin-muted)}.discovery-round-metrics b{color:var(--admin-text)}.discovery-market-track{display:flex;gap:5px;flex-wrap:wrap;margin:2px 0 16px}.market-state{font-size:10px;line-height:1;padding:5px 7px;border:1px solid var(--admin-line);border-radius:999px;background:#fff;color:#8b949e;transition:.2s ease}.market-state.done{background:#eef8f1;border-color:#b9ddc3;color:#25613a}.market-state.running{background:#fff5db;border-color:#e4c66b;color:#7a5800;box-shadow:0 0 0 2px rgba(228,198,107,.12)}.market-state.next{background:#eef3ff;border-color:#b8c8ef;color:#294d94}.discovery-live-note{display:block;color:var(--admin-muted);margin-top:9px;line-height:1.4}.discovery-engine-card button[disabled]{opacity:.65;cursor:default}
.inline-date-form{display:flex;gap:.35rem;align-items:center;margin-top:.45rem}.inline-date-form input[type=date]{max-width:145px;padding:.35rem .45rem;font-size:.82rem}.status-pill.provisional,.status-pill.needs_review{background:#fff7d6;color:#725500}.status-pill.conflict{background:#ffe1e1;color:#8a1f1f}.status-pill.verified{background:#e3f7e9;color:#1d6a35}

/* v32 · freshness scheduler */
.freshness-card{border-top:3px solid var(--ink,#1d1d1b)}
.freshness-card .freshness-state{font-size:.82rem;font-weight:700;white-space:nowrap}
.freshness-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1px;background:rgba(0,0,0,.08);border:1px solid rgba(0,0,0,.08);margin-top:18px}
.freshness-grid article{background:var(--paper,#fff);padding:14px 16px;display:flex;flex-direction:column;gap:3px;min-width:0}
.freshness-grid article>span{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;opacity:.62}
.freshness-grid strong{font-size:1.45rem;line-height:1.05}
.freshness-grid small{font-size:.72rem;opacity:.6}
.scan-progress.freshness span{transition:width .35s ease}
.freshness-due-list{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:14px;font-size:.78rem}
.freshness-due-list>strong{margin-right:4px}
.freshness-due-list>span{padding:5px 8px;border:1px solid rgba(0,0,0,.12);border-radius:999px;background:rgba(0,0,0,.025)}
@media(max-width:1050px){.freshness-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){.freshness-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.freshness-card .freshness-state{white-space:normal}}

/* v35 · accelerated date verification */
.metric-side{min-width:210px;display:grid;gap:4px;text-align:right}.metric-side strong{font-size:13px}.metric-side small{color:var(--admin-muted);font-size:11px;line-height:1.35}
@media(max-width:560px){.metric-side{min-width:0;text-align:left}}

/* v48 · separate Cannabis / Hamp discovery tracks */
.discovery-manual-tracks{display:grid;grid-template-columns:1fr 1fr;gap:6px 10px;min-width:220px}
.discovery-manual-tracks form{margin:0}.discovery-manual-tracks .link-button{font-size:11px;white-space:nowrap}
.market-state.topic-cannabis{border-style:solid}.market-state.topic-hemp{border-style:dashed}
.market-state.topic-hemp.done{background:#f1f8ec;border-color:#b7d5a8;color:#456b31}
.market-state.topic-hemp.next{background:#f5f1ff;border-color:#cabceb;color:#61449a}
.market-state.topic-hemp.running{background:#fff4dd;border-color:#e6c36b;color:#7a5800}
@media(max-width:760px){.discovery-manual-tracks{grid-template-columns:1fr;min-width:160px}}

/* v65 · enklere dansk backend + mobile-first kontrolpanel */
.admin-mobile-actions{display:none}
.metric-action{margin-top:8px}.metric-action .button{width:100%}
.admin-advanced{padding:0;overflow:hidden}.admin-advanced>summary{list-style:none;cursor:pointer;display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:20px}.admin-advanced>summary::-webkit-details-marker{display:none}.admin-advanced>summary h2{margin:0;font-size:19px;letter-spacing:-.02em}.admin-advanced>summary p{margin:5px 0 0;color:var(--admin-muted);font-size:13px;line-height:1.5}.admin-advanced>summary>span{font-size:12px;color:var(--admin-muted);white-space:nowrap}.admin-advanced>summary:after{content:"Vis";font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--admin-muted)}.admin-advanced[open]>summary{border-bottom:1px solid var(--admin-line)}.admin-advanced[open]>summary:after{content:"Skjul"}.admin-advanced>.tablewrap{padding:0 14px 14px}.source-import-result{font-size:13px}
.discovery-market-table{min-width:860px}

@media(max-width:900px){
  .admin-sidebar{position:sticky;top:0;z-index:50;height:auto;padding:10px 12px 8px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px 12px;box-shadow:0 8px 20px rgba(15,23,42,.12)}
  .admin-brand{grid-column:1;padding:0 4px;align-self:center}.admin-brand span{display:none}.admin-brand strong{font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .admin-mobile-actions{grid-column:2;display:flex;align-items:center;gap:6px}.admin-mobile-actions a{color:#e5e7eb;text-decoration:none;font-size:12px;font-weight:750;padding:7px 8px;border:1px solid rgba(255,255,255,.15);border-radius:8px;white-space:nowrap}
  .admin-sidebar nav{grid-column:1/-1;display:flex;gap:6px;overflow-x:auto;padding:1px 1px 4px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.admin-sidebar nav::-webkit-scrollbar{display:none}.admin-sidebar nav a{flex:0 0 auto;padding:8px 10px;border-radius:8px;font-size:12px}
  .admin-main{padding:18px 14px 64px}
  .admin-topbar{margin-bottom:16px;align-items:center}.admin-topbar h1{font-size:30px}.admin-topbar .eyebrow{font-size:10px}.admin-top-actions .button{padding:10px 12px;font-size:13px}
  .admin-card{margin-bottom:12px}
}

@media(max-width:700px){
  .admin-main{padding-left:10px;padding-right:10px}
  .admin-topbar{align-items:flex-start}.admin-topbar h1{font-size:26px;line-height:1.05}.admin-top-actions{margin-left:auto}
  .admin-card{padding:14px;border-radius:12px}.admin-card>header,.admin-card-head{gap:10px}.admin-card>header h2,.admin-advanced>summary h2{font-size:18px}.admin-card>header p,.admin-advanced>summary p{font-size:12px}
  .admin-card-head{align-items:flex-start!important;flex-direction:column}.admin-card-head>.actions,.admin-card-head>.metric-side{width:100%}.admin-card-head>.actions{display:grid;grid-template-columns:1fr;gap:8px}.admin-card-head>.actions>form,.admin-card-head>.actions>.button{width:100%}.admin-card-head>.actions .button{width:100%}
  .metric-side{text-align:left;min-width:0}.metric-action{max-width:260px}
  .admin-shortcuts{grid-template-columns:1fr 1fr;gap:8px}.admin-shortcuts a{min-height:0;padding:14px}.admin-shortcuts strong{font-size:15px}.admin-shortcuts span{font-size:12px}
  .country-group summary{align-items:flex-start;flex-direction:column;gap:5px;padding:12px}.country-group summary>span:last-child{font-size:11px;color:var(--admin-muted)}
  .task-country>summary{padding:13px}.task-country-title{width:100%}.task-country-title>span{flex-wrap:wrap}.task-country-summary{line-height:1.45}.task-source-row{padding:13px}.task-source-main{align-items:flex-start;gap:8px}.task-source-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 10px}.task-source-metrics span{display:grid;gap:1px;padding:6px 8px;background:#f8fafc;border-radius:7px}.task-source-foot{align-items:flex-start;flex-direction:column}.task-source-actions{width:100%;flex-direction:row;flex-wrap:wrap;gap:10px 14px}
  .freshness-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.freshness-grid article{padding:11px 12px}.freshness-grid strong{font-size:1.2rem}.freshness-due-list{align-items:flex-start}
  .discovery-engine-card .button{width:100%}.discovery-market-track{max-height:128px;overflow:auto;padding-right:2px}.discovery-round-metrics{display:grid;grid-template-columns:1fr 1fr;gap:6px 10px}.discovery-round-metrics span{padding:6px 8px;background:#f8fafc;border-radius:7px}
  .admin-advanced>summary{padding:14px;display:grid;grid-template-columns:1fr auto}.admin-advanced>summary>span{grid-column:1}.admin-advanced>summary:after{grid-column:2;grid-row:1;align-self:start}.admin-advanced>.tablewrap{padding:0 10px 10px}

  .mobile-card-table,.mobile-card-table tbody,.mobile-card-table tr,.mobile-card-table td{display:block;width:100%}.mobile-card-table thead{display:none}.mobile-card-table tr{padding:11px 0;border-top:1px solid var(--admin-line)}.mobile-card-table tr:first-child{border-top:0}.mobile-card-table td{border:0!important;padding:5px 0!important;display:grid;grid-template-columns:86px minmax(0,1fr);gap:9px;align-items:start;white-space:normal!important}.mobile-card-table td:before{content:attr(data-label);font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--admin-muted);font-weight:800;padding-top:2px}.mobile-card-table td>*{min-width:0}.mobile-card-table td a{overflow-wrap:anywhere}.source-table td[data-label="Medie"]{padding-top:2px!important}.source-actions{white-space:normal;display:flex;gap:9px 14px;align-items:center}.source-actions .button.small{padding:8px 11px}.source-actions a,.source-actions .link-danger{font-size:12px}.content-admin-table .inline-date-form{display:grid;grid-template-columns:minmax(0,1fr) auto;max-width:240px}.content-admin-table .inline-date-form input{min-width:0}
  .tablewrap{max-width:100%}
  input,select,textarea{font-size:16px}
}

@media(max-width:480px){
  .admin-sidebar{padding-left:9px;padding-right:9px}.admin-mobile-actions a:first-child{display:none}
  .admin-main{padding-left:8px;padding-right:8px}.admin-topbar{gap:10px}.admin-topbar h1{font-size:24px}.admin-top-actions .button{padding:9px 10px;font-size:12px}
  .admin-metric-grid,.admin-metric-grid.five{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.admin-metric-grid article{min-height:100px;padding:13px}.admin-metric-grid article strong{font-size:28px}.admin-metric-grid article span{font-size:9px}.admin-metric-grid article small{font-size:11px}
  .admin-shortcuts{grid-template-columns:1fr}.admin-shortcuts a{display:flex;align-items:center;justify-content:space-between;gap:10px}.admin-shortcuts span{max-width:62%}
  .scheduler-health-grid{gap:7px}.scheduler-health-grid>div{padding:9px 10px}
  .freshness-grid{grid-template-columns:1fr 1fr}
  .task-source-metrics{grid-template-columns:1fr 1fr}.task-source-metrics span{font-size:10px}
  .mobile-card-table td{grid-template-columns:72px minmax(0,1fr);gap:7px}.source-actions{gap:8px 12px}
  .pagination{justify-content:space-between}.pagination .button{padding:8px 10px}
}
@media(max-width:700px){.admin-metric-grid,.admin-metric-grid.five{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:390px){.admin-metric-grid,.admin-metric-grid.five{grid-template-columns:1fr}}
.discovery-track-details{margin:0 0 14px;border:1px solid var(--admin-line);border-radius:9px;background:#fafafa}.discovery-track-details>summary{cursor:pointer;list-style:none;padding:9px 11px;font-size:11px;font-weight:800;color:var(--admin-muted)}.discovery-track-details>summary::-webkit-details-marker{display:none}.discovery-track-details>summary:after{content:" +"}.discovery-track-details[open]>summary:after{content:" −"}.discovery-track-details .discovery-market-track{padding:0 10px 10px;margin:0}

/* v66 · mobilmenu uden vandret scroll */
@media(max-width:900px){
  .admin-sidebar nav{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:6px;
    overflow:visible;
    padding:1px 0 2px;
  }
  .admin-sidebar nav a{
    min-width:0;
    width:100%;
    white-space:normal;
    text-align:center;
    line-height:1.18;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:8px 6px;
    overflow-wrap:anywhere;
  }
}
@media(max-width:660px){
  .admin-sidebar nav{grid-template-columns:repeat(3,minmax(0,1fr))}
  .admin-sidebar nav a{font-size:11px;min-height:38px}
}
@media(max-width:360px){
  .admin-sidebar nav{gap:5px}
  .admin-sidebar nav a{padding:7px 4px;font-size:10.5px}
}

/* v67 · tre enkle statusfelter til oversættelsescachen */
.admin-metric-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:900px){.admin-metric-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:390px){.admin-metric-grid.three{grid-template-columns:1fr}}


/* V97 · desktop sidebar always fully reachable */
@media(min-width:901px){
  .admin-sidebar{
    box-sizing:border-box;
    height:100dvh;
    max-height:100dvh;
    overflow-y:auto;
    overflow-x:hidden;
    overscroll-behavior:contain;
    scrollbar-gutter:stable;
    gap:18px;
    padding:18px 14px;
  }
  .admin-sidebar nav{flex:0 0 auto}
  .sidebar-bottom{flex:0 0 auto;margin-top:0;margin-bottom:auto}
}

/* V98 · live radio metrics */
.radio-admin-metrics strong{transition:opacity .15s ease}

/* Gapless backend: import-old-news.php can now be loaded into the shared admin shell,
   so its page-specific rules must also exist when the initial document is another section. */
.import-drop{border:1px dashed var(--line,#c9c9c9);border-radius:14px;padding:22px;display:grid;gap:12px;background:rgba(255,255,255,.34)}
.import-drop.is-drag{outline:2px solid currentColor;outline-offset:3px}
.import-progress{height:9px;border-radius:999px;background:rgba(0,0,0,.08);overflow:hidden}
.import-progress>span{display:block;height:100%;width:0;background:currentColor;transition:width .15s ease}
.import-file-state{display:flex;gap:10px;flex-wrap:wrap}
.import-file-state span{padding:6px 9px;border-radius:999px;background:rgba(0,0,0,.06);font-size:12px}
.import-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:14px}
.import-metric{padding:13px;border:1px solid var(--line,#ddd);border-radius:12px}
.import-metric b{display:block;font-size:22px}
.import-metric small{display:block;margin-top:3px}
.import-report{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.import-report>div{padding:14px;border-radius:12px;background:rgba(0,0,0,.04)}
@media(max-width:900px){.import-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.import-report{grid-template-columns:1fr}}
@media(max-width:520px){.import-metrics{grid-template-columns:1fr}}

/* V115 · collapsible grouped backend sidebar */
.admin-sidebar .admin-nav{display:grid;gap:6px}
.admin-sidebar .admin-nav-group{display:grid;gap:3px;min-width:0}
.admin-sidebar .admin-nav-parent{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-width:0;padding:11px 12px;border:0;border-radius:9px;background:transparent;color:#cbd5e1;font:inherit;font-size:14px;font-weight:700;letter-spacing:0;text-align:left;text-decoration:none;cursor:pointer}
.admin-sidebar .admin-nav-parent::after{content:"";flex:0 0 7px;width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .16s ease;opacity:.75}
.admin-sidebar .admin-nav-group.is-open>.admin-nav-parent::after{transform:rotate(225deg)}
.admin-sidebar .admin-nav-parent:hover,.admin-sidebar .admin-nav-parent.active,.admin-sidebar .admin-nav-group.has-active>.admin-nav-parent{background:#253047;color:#fff}
.admin-sidebar .admin-nav-parent-toggle{-webkit-appearance:none;appearance:none}
.admin-sidebar .admin-nav-sub{display:grid;gap:2px;margin:0 0 4px 12px;padding-left:10px;border-left:1px solid rgba(255,255,255,.13);min-width:0}
.admin-sidebar .admin-nav-sub[hidden]{display:none!important}
.admin-sidebar .admin-nav-sub a{min-width:0;padding:8px 10px;border-radius:8px;font-size:12.5px;font-weight:650;color:#aebbd0;line-height:1.25}
.admin-sidebar .admin-nav-sub a:hover,.admin-sidebar .admin-nav-sub a.active{background:#202b40;color:#fff}

@media(max-width:900px){
  .admin-sidebar .admin-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;overflow:visible;padding:1px 0 2px}
  .admin-sidebar .admin-nav>a{min-width:0;width:100%;white-space:normal;text-align:center;line-height:1.18;display:flex;align-items:center;justify-content:center;padding:8px 6px;overflow-wrap:anywhere}
  .admin-sidebar .admin-nav-group{grid-column:1/-1;gap:5px;padding-top:2px}
  .admin-sidebar .admin-nav-parent{padding:8px 10px;color:#cbd5e1;font-size:12px;font-weight:750;letter-spacing:0;text-transform:none}
  .admin-sidebar .admin-nav-parent::after{width:6px;height:6px;flex-basis:6px}
  .admin-sidebar .admin-nav-sub{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin:0;padding:0;border-left:0}
  .admin-sidebar .admin-nav-sub a{display:flex;align-items:center;justify-content:center;width:100%;min-width:0;min-height:38px;padding:7px 6px;text-align:center;white-space:normal;overflow-wrap:anywhere;font-size:10.5px;line-height:1.15}
}
@media(max-width:660px){
  .admin-sidebar .admin-nav-sub{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* V116 · compact sidebar groups + collapsible Settings cards */
@media(min-width:901px){
  .admin-sidebar{
    overflow:hidden;
  }
  .admin-sidebar .admin-nav{
    flex:1 1 auto;
    min-height:0;
    overflow-y:auto;
    overflow-x:hidden;
    overscroll-behavior:contain;
    scrollbar-width:thin;
  }
  .sidebar-bottom{
    flex:0 0 auto;
    margin-top:0;
    margin-bottom:auto;
  }
}

.admin-main[data-admin-section="settings"] > .admin-card.admin-settings-card{
  transition:border-color .15s ease,box-shadow .15s ease;
}
.admin-main[data-admin-section="settings"] > .admin-card.admin-settings-card > header{
  cursor:pointer;
  align-items:center;
  user-select:none;
}
.admin-main[data-admin-section="settings"] > .admin-card.admin-settings-card > header:focus-visible{
  outline:2px solid #475569;
  outline-offset:3px;
  border-radius:8px;
}
.admin-main[data-admin-section="settings"] > .admin-card.admin-settings-card > header::after{
  content:"";
  flex:0 0 8px;
  width:8px;
  height:8px;
  margin-left:auto;
  border-right:2px solid #64748b;
  border-bottom:2px solid #64748b;
  transform:rotate(45deg);
  transition:transform .16s ease;
}
.admin-main[data-admin-section="settings"] > .admin-card.admin-settings-card:not(.is-collapsed) > header::after{
  transform:rotate(225deg);
}
.admin-main[data-admin-section="settings"] > .admin-card.admin-settings-card.is-collapsed > :not(header){
  display:none!important;
}
.admin-main[data-admin-section="settings"] > .admin-card.admin-settings-card.is-collapsed{
  padding-bottom:6px;
}
.admin-main[data-admin-section="settings"] > .admin-card.admin-settings-card.is-collapsed > header{
  padding-bottom:14px;
}

/* V117 · tighter desktop sidebar without stretched grid rows */
@media(min-width:901px){
  .admin-sidebar{
    padding:16px 14px 14px;
    gap:14px;
    overflow-y:auto;
    scrollbar-gutter:auto;
  }
  .admin-brand{
    gap:2px;
  }
  .admin-sidebar .admin-nav{
    flex:0 0 auto;
    align-content:start;
    gap:3px;
    overflow:visible;
  }
  .admin-sidebar .admin-nav-group{
    gap:2px;
  }
  .admin-sidebar .admin-nav>a,
  .admin-sidebar .admin-nav-parent{
    padding:8px 10px;
    min-height:0;
    line-height:1.2;
  }
  .admin-sidebar .admin-nav-sub{
    gap:1px;
    margin-bottom:2px;
  }
  .admin-sidebar .admin-nav-sub a{
    padding:6px 9px;
  }
  .sidebar-bottom{
    margin-top:0;
    margin-bottom:auto;
    gap:6px;
    padding:10px 8px 8px;
  }
  .sidebar-bottom span{
    line-height:1.2;
  }
}

/* V93 · source monitor: fixed two-hour publisher SLA */
.source-monitor-card{border-color:#d8dee5}.source-monitor-actions{margin-top:16px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.source-monitor-actions .live-worker-toggle{margin-right:auto}.scan-engine-grid{margin-top:0}.metric-side.inline{align-items:flex-start;text-align:left}.monitor-status-running .task-status{background:#eff6ff;color:#1d4ed8}.monitor-status-running .task-status:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;display:inline-block;margin-right:5px;animation:taskPulse 1s ease-in-out infinite alternate}.monitor-status-running .scan-progress.source>span{background:#2563eb}.monitor-status-due .task-status{background:#fff4ed;color:#b54708}.monitor-status-due .scan-progress.source>span{background:#f79009}.monitor-status-warning .task-status{background:#fffaeb;color:#b54708}.monitor-status-scheduled .task-status{background:#ecfdf3;color:#067647}.monitor-status-scheduled .scan-progress.source>span{background:#079455}.source-monitor-grid article:nth-child(2) strong{font-variant-numeric:tabular-nums}
@media(max-width:760px){.source-monitor-actions{align-items:stretch}.source-monitor-actions .live-worker-toggle{width:100%;margin-right:0}.scan-engine-grid{grid-template-columns:1fr}}
