/*
Theme Name: Datasenterpause
Theme URI: https://datasenterpause.no
Author: Datasenterpause
Description: Skreddersydd responsivt tema for Datasenterpause. Oppropet i sentrum, kompakt desktop-portal, mørke 3D-paneler og tydelig binært dataregn.
Version: 1.0.8
Text Domain: datasenterpause
*/
:root{--bg:#030604;--panel:rgba(7,14,10,.86);--panel2:rgba(10,23,15,.82);--ink:#f4f1e8;--muted:#b8c1b9;--green:#6cff85;--green2:#22dc5b;--line:rgba(108,255,133,.23);--max:1440px;--mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{margin:0;background:transparent;color:var(--ink);font-family:"EB Garamond",Garamond,"Times New Roman",serif;font-size:16px;line-height:1.38;min-height:100vh}a{color:var(--green);text-underline-offset:3px}.wrap{width:min(var(--max),calc(100% - 48px));margin:auto}.binary-global{position:fixed;inset:0;width:100%;height:100%;z-index:-2;background:#030604}.global-shade{position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(circle at 48% 20%,rgba(0,0,0,.02),rgba(0,0,0,.25) 68%,rgba(0,0,0,.48))}
.site-header{position:sticky;top:0;z-index:50;background:rgba(2,6,4,.78);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);box-shadow:0 8px 28px rgba(0,0,0,.28)}.header-inner{height:54px;display:flex;align-items:center;gap:24px}.brand{font-size:21px;font-weight:700;color:var(--ink);text-decoration:none;letter-spacing:.02em}.nav{margin-left:auto;display:flex;gap:16px;align-items:center;font-size:13px}.nav a{color:var(--ink);text-decoration:none;white-space:nowrap}.nav a:hover{color:var(--green)}.nav .cta{border:1px solid var(--green);padding:6px 10px;color:var(--green);box-shadow:0 0 14px rgba(108,255,133,.08)}
main{min-height:70vh}.hero{padding:18px 0 12px;min-height:calc(100svh - 54px);display:flex;align-items:center}.hero-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(440px,.8fr);gap:18px;align-items:stretch}.panel{background:linear-gradient(145deg,rgba(9,18,12,.92),rgba(3,8,5,.83));border:1px solid rgba(108,255,133,.24);box-shadow:0 18px 42px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.045),0 0 24px rgba(34,220,91,.035);border-radius:3px}.hero-copy{padding:24px 30px;min-height:340px;display:flex;flex-direction:column;justify-content:center}.eyebrow{font-family:var(--mono);text-transform:uppercase;letter-spacing:.16em;color:var(--green);font-size:10px;font-weight:700}.hero h1{font-size:clamp(52px,5.7vw,88px);line-height:.76;margin:.13em 0 .15em;letter-spacing:-.05em}.hero h1 span{display:block}.hero h2{font-size:clamp(21px,1.9vw,31px);line-height:1;margin:0 0 13px;max-width:760px}.hero p{max-width:790px;font-size:15px;margin:0 0 18px;color:#e2e5df}.button{display:inline-block;border:1px solid var(--green);background:var(--green);color:#031007;text-decoration:none;padding:9px 13px;font-family:var(--mono);font-size:11px;font-weight:800;letter-spacing:.06em}.button.secondary{background:rgba(0,0,0,.28);color:var(--green);margin-left:7px}.portal{padding:22px}.portal-title{font-size:24px;margin:3px 0 13px}.portal-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.portal-card{display:block;min-height:91px;padding:13px;background:rgba(4,10,6,.72);border:1px solid rgba(108,255,133,.2);text-decoration:none;color:var(--ink);box-shadow:inset 0 1px 0 rgba(255,255,255,.03),0 8px 18px rgba(0,0,0,.32);transition:transform .16s,border-color .16s,background .16s}.portal-card:hover{transform:translateY(-2px);border-color:var(--green);background:rgba(11,29,17,.84)}.portal-card strong{display:block;font-size:18px;line-height:1.05;margin-bottom:4px}.portal-card small{font-family:var(--mono);font-size:9px;color:var(--green);letter-spacing:.08em}.portal-card p{font-size:12px;color:var(--muted);margin:5px 0 0;line-height:1.25}
.dashboard{padding:0 0 26px}.dash-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.dash{padding:18px 20px;min-height:132px}.dash h3{font-size:22px;margin:4px 0 7px}.dash p{font-size:13px;margin:0;color:#d8ddd8}.dash .num{font-size:34px;color:var(--green);line-height:1;margin:4px 0 7px}.dash small{font:9px/1.35 var(--mono);color:var(--muted)}
.section{padding:18px 0}.section.compact{padding:10px 0}.section-shell{padding:21px 26px}.section h1,.section h2{font-size:clamp(31px,3vw,44px);line-height:.96;margin:4px 0 13px}.lede{font-size:15px;max-width:940px;color:#e0e4df;margin:0 0 16px}.timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:16px}.event{padding:16px;background:rgba(3,9,5,.63);border:1px solid rgba(108,255,133,.16);box-shadow:0 9px 20px rgba(0,0,0,.28)}.event time{font:10px var(--mono);color:var(--green)}.event h3{font-size:19px;line-height:1.05;margin:7px 0 6px}.event p{font-size:12px;margin:0;color:#d6dcd6}.campaign-position{border-left:2px solid var(--green);padding:13px 16px;background:linear-gradient(90deg,rgba(108,255,133,.11),rgba(0,0,0,.18));margin-top:12px;font-size:13px}.placeholder{border:1px dashed rgba(108,255,133,.38);background:linear-gradient(135deg,rgba(10,35,17,.65),rgba(2,7,4,.7));padding:25px;text-align:center;color:var(--muted);margin-top:14px;box-shadow:inset 0 0 34px rgba(34,220,91,.05)}.source-list{font:11px/1.45 system-ui,sans-serif;color:var(--muted);display:grid;gap:5px;margin-top:15px}.source-list a{overflow-wrap:anywhere}.status{display:inline-flex;align-items:center;gap:7px;font:10px var(--mono);color:var(--green)}.dot{width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 12px var(--green)}
.page-intro{margin-bottom:14px}.content-panel{padding:26px 30px}.content-panel :where(p,li){max-width:900px}.site-footer{padding:20px 0 28px;color:var(--muted);font:11px system-ui,sans-serif;border-top:1px solid var(--line);background:rgba(2,5,3,.7)}.footer-grid{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
@media(min-width:1100px) and (min-height:700px){.home .hero-grid{width:100%}}
@media(max-width:1099px){.hero-grid{grid-template-columns:1fr}.hero-copy{min-height:auto}.portal-grid{grid-template-columns:repeat(4,1fr)}.portal-card{min-height:100px}.dash-grid{grid-template-columns:1fr 1fr}.timeline{grid-template-columns:1fr 1fr}}
@media(max-width:760px){body{font-size:17px;line-height:1.48}.wrap{width:min(100% - 26px,var(--max))}.header-inner{height:58px}.brand{font-size:19px}.nav{gap:8px}.nav a:not(.cta){display:none}.nav .cta{font-size:12px}.hero{padding:18px 0}.hero-grid{display:block}.hero-copy{padding:28px 21px;min-height:65vh}.hero h1{font-size:clamp(52px,19vw,82px);line-height:.79}.hero h2{font-size:29px}.hero p{font-size:18px}.portal{margin-top:12px;padding:18px}.portal-grid{grid-template-columns:1fr 1fr}.portal-card{min-height:112px;padding:13px}.portal-card strong{font-size:19px}.portal-card p{font-size:13px}.dashboard{padding-bottom:16px}.dash-grid{grid-template-columns:1fr}.dash{min-height:0;padding:18px}.section{padding:16px 0}.section-shell,.content-panel{padding:23px 20px}.section h1,.section h2{font-size:38px}.lede{font-size:18px}.timeline{grid-template-columns:1fr}.event h3{font-size:22px}.event p{font-size:15px}.campaign-position{font-size:15px}.site-footer{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.binary-global{opacity:.25}.dot{box-shadow:none}.portal-card{transition:none}}

/* v0.3 data-underlag */
.split{display:grid;grid-template-columns:1.5fr .7fr;gap:18px;align-items:start}.data-note{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:12px;background:rgba(0,0,0,.28);border:1px solid var(--line);font:10px/1.3 var(--mono)}.data-note strong{grid-column:1/-1;color:var(--green);margin-bottom:3px}.data-note span{padding:6px;border:1px solid rgba(108,255,133,.12)}.fine{font:10px/1.45 system-ui,sans-serif;color:var(--muted);margin:10px 0 0}.mini-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.mini{padding:12px;background:rgba(3,9,5,.68);border:1px solid rgba(108,255,133,.16)}.mini strong{display:block;font-size:16px;line-height:1.05;margin-bottom:5px}.mini span{font:11px/1.35 system-ui,sans-serif;color:var(--muted)}.metric-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px}.metric-row>div{padding:14px;border:1px solid rgba(108,255,133,.18);background:rgba(2,8,4,.66)}.metric-row b{display:block;color:var(--green);font-size:31px;line-height:1}.metric-row span{font:10px/1.3 var(--mono);color:var(--muted)}.table-wrap{overflow:auto;border:1px solid rgba(108,255,133,.18);margin-top:10px}table{border-collapse:collapse;width:100%;min-width:680px;background:rgba(2,8,4,.62);font:11px/1.3 system-ui,sans-serif}th,td{text-align:left;padding:9px 11px;border-bottom:1px solid rgba(108,255,133,.11)}th{font-family:var(--mono);font-size:9px;letter-spacing:.05em;color:var(--green);background:rgba(108,255,133,.055)}.map-prototype{margin-top:10px;border:1px solid rgba(108,255,133,.24);background:rgba(1,7,3,.7);box-shadow:inset 0 0 60px rgba(34,220,91,.05)}.map-layers{display:flex;gap:5px;padding:8px;border-bottom:1px solid rgba(108,255,133,.16);flex-wrap:wrap}.map-layers button{font:9px var(--mono);color:var(--muted);background:#061009;border:1px solid rgba(108,255,133,.17);padding:6px 8px}.map-layers button.active{color:#041007;background:var(--green)}.map-stage{height:300px;position:relative;display:grid;place-items:center;overflow:hidden;background:radial-gradient(ellipse at center,rgba(35,130,58,.12),transparent 62%)}.map-word{font:700 clamp(58px,12vw,150px)/1 var(--mono);letter-spacing:.12em;color:rgba(108,255,133,.055);transform:rotate(-8deg)}.map-hint{position:absolute;left:18px;bottom:15px;max-width:420px;font:10px/1.4 var(--mono);color:var(--muted)}.hover-card{position:absolute;right:18px;top:18px;width:250px;padding:13px;background:rgba(4,14,8,.94);border:1px solid var(--green);box-shadow:0 16px 40px rgba(0,0,0,.6),0 0 24px rgba(108,255,133,.08);display:grid;gap:4px}.hover-card small{font:8px var(--mono);color:var(--green)}.hover-card strong{font-size:18px}.hover-card span{font:10px var(--mono);color:var(--muted)}
@media(max-width:760px){.split,.mini-grid,.metric-row{grid-template-columns:1fr}.map-stage{height:360px}.hover-card{position:relative;right:auto;top:auto;width:calc(100% - 28px);margin:auto}.map-word{position:absolute;top:45px}.map-hint{bottom:12px;right:14px}.section.compact{padding:8px 0}.hero{min-height:auto}.hero-copy{min-height:62vh}}


/* v0.4 — tydelig binær identitet og oppropet i sentrum */
body{position:relative;background:#030604}
.binary-global{z-index:0;background:#030604;opacity:1}
.global-shade{z-index:1;background:radial-gradient(circle at 50% 12%,rgba(0,0,0,.01),rgba(0,0,0,.12) 58%,rgba(0,0,0,.28));}
.site-header,main,.site-footer{position:relative;z-index:2}
.site-header{background:rgba(2,6,4,.84)}
.panel{background:linear-gradient(145deg,rgba(7,15,10,.90),rgba(2,7,4,.86));border-color:rgba(108,255,133,.32);box-shadow:0 18px 48px rgba(0,0,0,.62),inset 0 1px 0 rgba(255,255,255,.06),0 0 26px rgba(34,220,91,.045)}
.hero{min-height:auto;align-items:start;padding:14px 0 8px}
.hero-grid{grid-template-columns:minmax(0,1.25fr) minmax(410px,.75fr);gap:12px}
.hero-copy{padding:20px 26px;min-height:0;justify-content:flex-start}
.hero h1{font-size:clamp(48px,5.2vw,78px);line-height:.78;margin:.10em 0 .12em}
.hero h2{font-size:clamp(20px,1.65vw,27px);margin-bottom:10px}
.petition-lead{margin:2px 0 12px;padding:11px 14px 12px;border-left:3px solid var(--green);background:rgba(0,0,0,.38);box-shadow:inset 0 0 24px rgba(0,0,0,.22),0 8px 22px rgba(0,0,0,.28)}
.petition-label{display:block;font:800 9px/1.2 var(--mono);letter-spacing:.13em;color:var(--green);margin-bottom:5px}
.petition-lead p{font-size:14px;line-height:1.34;margin:0;max-width:900px;color:#f1f1ea}
.hero-actions,.petition-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-top:2px}
.button.big{padding:11px 16px;font-size:11px;box-shadow:0 8px 22px rgba(0,0,0,.35)}
.sign-button{background:var(--green);border:2px solid #a7ffb6;color:#020a04;box-shadow:0 0 0 2px rgba(108,255,133,.12),0 0 24px rgba(108,255,133,.25),0 10px 24px rgba(0,0,0,.45)!important}
.sign-button:hover{filter:brightness(1.08);transform:translateY(-1px)}
.hero-fact{display:flex;gap:10px;align-items:baseline;margin-top:12px;padding-top:9px;border-top:1px solid rgba(108,255,133,.18);font:10px/1.3 var(--mono);color:var(--muted)}
.hero-fact strong{font:700 22px/1 "EB Garamond",Garamond,serif;color:var(--green)}
.portal{padding:17px}.portal-title{font-size:21px;margin:2px 0 9px}.portal-grid{gap:6px}.portal-card{min-height:76px;padding:10px}.portal-card strong{font-size:16px}.portal-card p{font-size:10px;margin-top:3px}
.dashboard{padding:0 0 12px}.dash-grid{gap:8px}.dash{padding:14px 17px;min-height:112px}.section.compact{padding:6px 0}.section-shell{padding:17px 22px}.section h1,.section h2{font-size:clamp(28px,2.55vw,39px);margin-bottom:9px}.lede{font-size:14px;margin-bottom:11px}.timeline{margin-top:10px;gap:7px}.event{padding:12px}.campaign-position{margin-top:8px;padding:10px 13px}.mini-grid,.metric-row{gap:6px}.mini{padding:10px}.table-wrap{margin-top:7px}
.petition-panel{border-color:rgba(108,255,133,.55);box-shadow:0 20px 55px rgba(0,0,0,.65),0 0 34px rgba(108,255,133,.07)}
.petition-full{margin:10px 0 14px;padding:14px 17px;border-left:3px solid var(--green);background:rgba(0,0,0,.38);font-size:17px;line-height:1.38;color:#f5f3eb}
.petition-actions{margin-bottom:9px}.compact-placeholder{padding:13px;margin-top:7px}.is-pending{cursor:pointer}
@media(min-width:1100px){.home .hero-grid{min-height:0}.home .hero{min-height:calc(100svh - 54px);align-items:center}.home .hero-grid{max-height:calc(100svh - 78px)}.home .hero-copy,.home .portal{align-self:center}}
@media(max-width:1099px){.hero-grid{grid-template-columns:1fr}.home .hero{min-height:auto}.portal-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:760px){.global-shade{background:rgba(0,0,0,.16)}.hero{padding-top:10px}.hero-copy{padding:22px 18px;min-height:auto}.hero h1{font-size:clamp(48px,18vw,76px)}.hero h2{font-size:26px}.petition-lead p{font-size:16px}.hero-actions,.petition-actions{display:grid;grid-template-columns:1fr}.button.big{text-align:center;padding:13px 12px;font-size:12px}.hero-fact{align-items:flex-start;flex-direction:column;gap:4px}.portal{padding:15px}.portal-grid{grid-template-columns:1fr 1fr}.portal-card{min-height:96px}.portal-card p{font-size:12px}.section.compact{padding:6px 0}.section-shell{padding:19px 17px}.petition-full{font-size:18px}}
@media(prefers-reduced-motion:reduce){.binary-global{opacity:.52}}


/* v0.5 — kart, sterkere opprop og ferdigfylt binærregn */
:root{--amber:#f2b84b;--cyan:#4de7e7;--queue:#ffd95a;--planned:#ff9f43;--grid:#e7edf0}
@media(min-width:1100px){.home .hero{min-height:auto;padding-top:28px}.home .hero-grid{max-height:none;align-self:start}}
.petition-lead{border-left-color:var(--amber);background:linear-gradient(90deg,rgba(242,184,75,.075),rgba(0,0,0,.36))}.petition-label{color:var(--amber)}.petition-lead p{color:var(--amber);font-size:clamp(17px,1.18vw,20px);line-height:1.32;font-weight:600}.petition-full{border-left-color:var(--amber);color:var(--amber);font-size:clamp(19px,1.5vw,23px)}
.map-shell{overflow:hidden}.map-v05{border-color:rgba(231,237,240,.25);background:rgba(1,5,3,.78)}.map-toolbar{display:flex;gap:7px;flex-wrap:wrap;padding:11px;border-bottom:1px solid rgba(231,237,240,.15)}.map-toggle{min-height:38px;display:inline-flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid rgba(231,237,240,.24);background:#050907;color:#dce5df;font:800 9px/1.1 var(--mono);letter-spacing:.04em;cursor:pointer}.map-toggle:hover,.map-toggle:focus-visible{border-color:#fff;outline:none}.map-toggle.active{background:rgba(255,255,255,.09);border-color:#fff;color:#fff}.legend-dot{width:12px;height:12px;border-radius:50%;display:inline-block}.legend-dot.drift{background:var(--green);box-shadow:0 0 10px rgba(108,255,133,.6)}.legend-dot.tildelt{background:transparent;border:3px solid var(--cyan)}.legend-diamond{width:11px;height:11px;display:inline-block;transform:rotate(45deg);background:var(--queue)}.legend-triangle{width:0;height:0;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:13px solid var(--planned);display:inline-block}.legend-line{width:19px;height:3px;background:var(--grid);display:inline-block;box-shadow:0 0 5px rgba(255,255,255,.35)}
.map-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,.55fr);min-height:480px}.norway-map{display:grid;place-items:center;min-height:480px;background:radial-gradient(circle at 50% 50%,rgba(108,255,133,.07),transparent 56%);border-right:1px solid rgba(231,237,240,.12)}.norway-map svg{width:min(92%,560px);height:450px;overflow:visible}.norway-shape{fill:rgba(12,31,19,.72);stroke:rgba(231,237,240,.64);stroke-width:2;filter:drop-shadow(0 12px 18px rgba(0,0,0,.55))}.schematic-label{fill:#9ca8a1;font:700 10px var(--mono);letter-spacing:.09em}.grid-line{fill:none;stroke:var(--grid);stroke-width:4;opacity:0;stroke-dasharray:7 8}.grid-line.thin{stroke-width:2}.mark{opacity:0;transition:opacity .18s}.layer-drift{fill:var(--green);stroke:#d9ffe0;stroke-width:2}.layer-tildelt{fill:rgba(0,0,0,.45);stroke:var(--cyan);stroke-width:4}.layer-ko{fill:var(--queue);stroke:#fff1a8;stroke-width:1}.layer-plan{fill:var(--planned);stroke:#ffd0a1;stroke-width:1}.map-v05[data-active-layer="drift"] .layer-drift,.map-v05[data-active-layer="tildelt"] .layer-tildelt,.map-v05[data-active-layer="ko"] .layer-ko,.map-v05[data-active-layer="plan"] .layer-plan,.map-v05[data-active-layer="grid"] .layer-grid{opacity:1}.map-side{padding:18px;display:flex;flex-direction:column;gap:14px;background:rgba(0,0,0,.24)}.map-card,.map-source{padding:16px;border:1px solid rgba(231,237,240,.18);background:rgba(2,9,5,.76)}.map-card small{display:block;color:var(--green);font:800 9px var(--mono);letter-spacing:.1em;margin-bottom:6px}.map-card strong{display:block;font-size:25px;line-height:1;margin-bottom:8px}.map-card p{font:13px/1.45 system-ui,sans-serif;color:#d7dfda;margin:0}.map-source{display:grid;gap:7px;font:10px/1.35 var(--mono);color:#aebbb3}.map-source b{color:#f2f5f2;font-size:11px}.map-source span:before{content:'↳ ';color:var(--green)}.map-legend-note{padding:11px 14px;border-top:1px solid rgba(231,237,240,.14);font:10px/1.45 system-ui,sans-serif;color:#bac5be}.map-legend-note strong{color:#f3f5f3}
.footer-contact{display:flex;gap:12px;flex-wrap:wrap}.footer-contact a{color:var(--ink)}
@media(max-width:760px){.petition-lead p{font-size:18px}.map-toolbar{display:grid;grid-template-columns:1fr 1fr}.map-toggle{width:100%;justify-content:flex-start}.map-layout{grid-template-columns:1fr}.norway-map{min-height:390px;border-right:0;border-bottom:1px solid rgba(231,237,240,.12)}.norway-map svg{height:370px}.map-side{padding:12px}.map-card strong{font-size:23px}}

/* v0.5.1 — ekte geografisk grunnkart + tydelig kampanjehierarki */
.campaign-kicker{font:900 clamp(15px,1.25vw,20px)/1 var(--mono);letter-spacing:.16em;color:var(--amber);margin-bottom:5px}.petition-to{font:900 11px/1.2 var(--mono);letter-spacing:.16em;color:var(--green);margin:-2px 0 8px}.map-real-shell{max-width:1500px}.map-v051{margin-top:14px}.map-real-layout{display:grid;grid-template-columns:minmax(0,2.4fr) minmax(290px,.6fr);min-height:760px}.geo-map{position:relative;min-height:760px;overflow:hidden;background:radial-gradient(circle at 48% 48%,rgba(108,255,133,.06),transparent 54%);border-right:1px solid rgba(231,237,240,.12)}.geo-map>img{position:absolute;inset:18px;width:calc(100% - 36px);height:calc(100% - 36px);object-fit:contain;opacity:.95}.geo-points{position:absolute;inset:18px}.dc-point{--x:calc((var(--lon) + 10) / 45 * 100%);--y:calc((72.4 - var(--lat)) / 15.2 * 100%);position:absolute;left:var(--x);top:var(--y);width:30px;height:30px;margin:-15px 0 0 -15px;border:0;background:transparent;display:none;place-items:center;cursor:pointer;z-index:4}.dc-point span{display:block;width:13px;height:13px;border-radius:50%;background:var(--green);border:2px solid #e6ffea;box-shadow:0 0 0 4px rgba(108,255,133,.12),0 0 15px rgba(108,255,133,.55)}.dc-point.construction span{width:0;height:0;border-radius:0;background:transparent;border-left:8px solid transparent;border-right:8px solid transparent;border-bottom:15px solid var(--planned);border-top:0;box-shadow:none}.map-v051[data-active-layer="drift"] .dc-point.drift,.map-v051[data-active-layer="construction"] .dc-point.construction,.map-v051[data-active-layer="capacity"] .dc-point[data-mw]{display:grid}.dc-point:hover span,.dc-point:focus-visible span,.dc-point.selected span{filter:brightness(1.35);transform:scale(1.35)}.dc-point:focus-visible{outline:2px solid #fff;outline-offset:3px}.map-scale-note{position:absolute;left:30px;bottom:24px;padding:8px 10px;background:rgba(0,0,0,.72);border:1px solid rgba(255,255,255,.16);font:800 9px/1.35 var(--mono);letter-spacing:.08em;color:#e5ece7}.map-scale-note small{font-weight:500;color:#aebbb3;letter-spacing:0}.map-detail dl{display:grid;gap:7px;margin:13px 0}.map-detail dl div{display:grid;grid-template-columns:80px 1fr;gap:8px;border-top:1px solid rgba(255,255,255,.09);padding-top:7px}.map-detail dt{font:800 9px var(--mono);color:#9eaaa2}.map-detail dd{margin:0;font:11px/1.35 var(--mono);color:#edf2ee}.map-detail-note{margin-top:10px!important;color:#cbd4ce!important}.map-source-link{display:inline-block;margin-top:12px;color:var(--green);font:900 9px var(--mono);letter-spacing:.06em;text-decoration:none;border-bottom:1px solid rgba(108,255,133,.4);padding-bottom:2px}.map-toggle:disabled{opacity:.42;cursor:not-allowed}.map-toggle:disabled:hover{border-color:rgba(231,237,240,.24)}
@media(max-width:900px){.map-real-layout{grid-template-columns:1fr;min-height:0}.geo-map{min-height:650px;border-right:0;border-bottom:1px solid rgba(231,237,240,.12)}.map-side{min-height:auto}}
@media(max-width:600px){.campaign-kicker{font-size:14px}.petition-to{font-size:10px}.geo-map{min-height:560px}.geo-map>img,.geo-points{inset:10px}.map-scale-note{left:18px;bottom:16px}.dc-point{width:36px;height:36px;margin:-18px 0 0 -18px}.map-real-layout{min-height:0}}


/* v0.5.2 — lesbare måleenheter, etiketter og kartlag */
.map-v051{--mw10:14px;--mw50:22px;--mw100:30px;--mw250:42px}.map-toolbar{align-items:center}.map-toggle[data-layer="all"]{border-color:rgba(255,255,255,.42)}
.dc-point .point-label{position:absolute;left:25px;top:4px;white-space:nowrap;padding:3px 5px;background:rgba(0,0,0,.78);border:1px solid rgba(255,255,255,.13);color:#f1f5f2;font:800 9px/1 var(--mono);letter-spacing:.02em;pointer-events:none;text-shadow:0 1px 2px #000}.dc-point .point-label em{font-style:normal;color:var(--green);margin-left:4px}.dc-point.construction .point-label em{color:var(--planned)}
.map-v051[data-active-layer="all"] .dc-point{display:grid}.map-v051[data-active-layer="capacity"] .dc-point[data-mw-value]{display:grid}.map-v051[data-active-layer="capacity"] .dc-point[data-mw-value] span{width:var(--mw-size,18px);height:var(--mw-size,18px);background:rgba(57,224,255,.22);border:3px solid var(--cyan);box-shadow:0 0 0 4px rgba(57,224,255,.08),0 0 18px rgba(57,224,255,.42)}.map-v051[data-active-layer="capacity"] .dc-point .point-label em{color:var(--cyan)}
.mw-scale{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap;padding:11px 14px;border-top:1px solid rgba(255,255,255,.12);background:rgba(0,0,0,.18)}.mw-scale b{font:900 9px var(--mono);color:#eef3ef;letter-spacing:.06em;margin-right:4px}.mw-scale span{display:inline-flex;align-items:center;gap:5px;font:9px var(--mono);color:#aebbb3}.mw-scale i{display:inline-block;border-radius:50%;border:2px solid var(--cyan);background:rgba(57,224,255,.18)}.mw-scale .s10{width:10px;height:10px}.mw-scale .s50{width:15px;height:15px}.mw-scale .s100{width:20px;height:20px}.mw-scale .s250{width:27px;height:27px}.unit-key{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.unit-key div{padding:9px;border:1px solid rgba(255,255,255,.11);background:rgba(0,0,0,.22)}.unit-key b{display:block;color:#fff;font:900 10px var(--mono)}.unit-key span{display:block;color:#aebbb3;font:10px/1.35 system-ui,sans-serif;margin-top:3px}.map-detail .data-type{display:inline-block;margin-top:5px;padding:3px 5px;border:1px solid rgba(255,255,255,.15);font:800 8px var(--mono);color:var(--amber)}
@media(max-width:700px){.dc-point .point-label{display:none}.unit-key{grid-template-columns:1fr}.mw-scale{gap:10px}.map-toolbar{grid-template-columns:1fr 1fr}}


/* v0.5.3 — typografi, kartforklaring og skarpere datavisning */
:root{--reading:"EB Garamond",Garamond,"Adobe Garamond Pro","Times New Roman",serif}
body{font-family:var(--reading);font-size:18px;line-height:1.48}
.nav{font-size:15px}.eyebrow{font-size:12px}.hero p{font-size:18px;line-height:1.45}.button{font-size:12px;padding:11px 15px}
.portal-card strong{font-size:20px}.portal-card small{font-size:11px}.portal-card p{font-family:var(--reading);font-size:16px;line-height:1.32}
.dash p{font-size:16px}.dash small{font-size:11px}.lede{font-size:19px;line-height:1.45}.event time{font-size:11px}.event h3{font-size:22px}.event p{font-size:16px;line-height:1.4}.campaign-position{font-size:17px;line-height:1.45}
.fine{font-family:var(--reading);font-size:15px;line-height:1.45}.mini span{font-family:var(--reading);font-size:15px}.metric-row span{font-size:11px}table{font-family:var(--reading);font-size:15px;line-height:1.35}th{font-size:11px}.source-list{font-family:var(--reading);font-size:15px;line-height:1.5}.site-footer{font-family:var(--reading);font-size:15px}
.map-toggle{font-size:11px}.map-card small{font-size:11px}.map-card strong{font-size:29px}.map-card p{font-family:var(--reading);font-size:17px;line-height:1.45}.map-source{font-size:11px;line-height:1.45}.map-source b{font-size:12px}.map-legend-note{font-family:var(--reading);font-size:16px;line-height:1.45}.map-detail dt{font-size:11px}.map-detail dd{font-size:13px}.map-source-link{font-size:11px}.map-scale-note{font-size:10px}.dc-point .point-label{font-size:11px;padding:4px 6px}.mw-scale b,.mw-scale span{font-size:11px}.unit-key b{font-size:11px}.unit-key span{font-family:var(--reading);font-size:15px;line-height:1.4}
.capacity-definition{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start;margin-top:10px;padding:13px 15px;border:1px solid rgba(255,183,77,.35);background:rgba(255,153,51,.07)}.capacity-definition i{margin-top:3px}.capacity-definition b{display:block;font:900 12px var(--mono);color:var(--planned);letter-spacing:.04em}.capacity-definition span{display:block;margin-top:4px;font:16px/1.4 var(--reading);color:#dce2dd}
.map-v051[data-active-layer="all"] .dc-point .point-label{opacity:.9}.map-v051[data-active-layer="capacity"] .dc-point .point-label{opacity:1}
@media(max-width:760px){body{font-size:18px}.eyebrow{font-size:11px}.portal-card p{font-size:16px}.dash p{font-size:16px}.fine,.source-list{font-size:15px}.map-card p{font-size:16px}.map-legend-note{font-size:15px}.unit-key span{font-size:15px}}

/* v0.5.4 – intuitive capacity comparison */
.queue-visual{display:grid;gap:16px;margin:22px 0 18px}.queue-row{display:grid;grid-template-columns:minmax(150px,190px) minmax(180px,1fr) 64px;align-items:center;gap:16px}.queue-label{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.queue-label b{font:900 12px var(--mono);letter-spacing:.08em;color:#f3f6f4}.queue-label span{font:700 17px var(--reading);color:var(--amber)}.queue-track{height:24px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.035);position:relative;overflow:hidden}.queue-track i{display:block;width:var(--w);height:100%;background:linear-gradient(90deg,rgba(108,255,133,.42),rgba(108,255,133,.9));box-shadow:0 0 18px rgba(108,255,133,.18)}.queue-row:nth-child(2) .queue-track i{background:linear-gradient(90deg,rgba(57,224,255,.35),rgba(57,224,255,.85))}.queue-row:nth-child(3) .queue-track i{background:linear-gradient(90deg,rgba(255,193,79,.35),rgba(255,193,79,.9))}.queue-row>strong{font:900 17px var(--mono);color:#fff}.mw-intuition{display:grid;grid-template-columns:190px 1fr;gap:16px;padding:15px 17px;margin:12px 0 18px;border:1px solid rgba(255,193,79,.3);background:rgba(255,193,79,.055)}.mw-intuition b{font:900 12px var(--mono);letter-spacing:.08em;color:var(--amber)}.mw-intuition span{font:17px/1.45 var(--reading);color:#e6ebe7}@media(max-width:700px){.queue-row{grid-template-columns:1fr 54px;gap:8px}.queue-label{grid-column:1/-1}.queue-track{height:20px}.mw-intuition{grid-template-columns:1fr;gap:6px}}
\n/* v0.5.5 — shared Mercator projection and collision-aware labels */
.geo-map>img,.geo-points{inset:18px;width:calc(100% - 36px);height:calc(100% - 36px)}
.geo-map>img{object-fit:fill}
.geo-points{pointer-events:none}
.dc-point{left:var(--x);top:var(--y);pointer-events:auto}
.dc-point .point-label{left:var(--label-x,25px);top:var(--label-y,4px);font-size:12px;line-height:1.08;padding:5px 7px;z-index:8}
.dc-point .point-label:before{content:"";position:absolute;width:18px;height:1px;background:rgba(225,238,230,.42);left:-18px;top:50%}
.map-scale-note{font-size:11px;line-height:1.45}
@media(max-width:900px){.dc-point .point-label{font-size:11px}}
@media(max-width:700px){.dc-point .point-label{display:none}.geo-map>img,.geo-points{inset:10px;width:calc(100% - 20px);height:calc(100% - 20px)}}

/* v0.5.6 – kartpresisjon: samme Mercator-projeksjon i SVG og punktlag */
.map-real-layout{display:block;min-height:0}
.geo-map{min-height:880px;border-right:0;border-bottom:1px solid rgba(231,237,240,.12);background:radial-gradient(circle at 46% 48%,rgba(108,255,133,.055),transparent 58%)}
.geo-map>img,.geo-points{inset:10px;width:calc(100% - 20px);height:calc(100% - 20px)}
.geo-map>img{object-fit:fill}
.map-side{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:16px;padding:16px 18px;min-height:0}
.map-source{align-content:start;padding-top:4px}
.dc-point .point-label{font-size:13px;line-height:1.08;padding:5px 8px;background:rgba(0,0,0,.88);border-color:rgba(255,255,255,.18)}
.dc-point .point-label:before{width:var(--leader-w,20px);left:var(--leader-left,-20px);background:rgba(225,238,230,.58)}
/* spre etiketter rundt den tette Østlands-klyngen; punktet står urørt */
.dc-point[data-name="AQ-OSL1"]{--label-x:-155px;--label-y:-48px;--leader-w:30px;--leader-left:100%}
.dc-point[data-name="STACK OSL01"]{--label-x:45px;--label-y:-88px;--leader-w:34px;--leader-left:-34px}
.dc-point[data-name="STACK OSL02"]{--label-x:48px;--label-y:76px;--leader-w:37px;--leader-left:-37px}
.dc-point[data-name="STACK OSL03"]{--label-x:52px;--label-y:-43px;--leader-w:41px;--leader-left:-41px}
.dc-point[data-name="STACK OSL04"]{--label-x:52px;--label-y:96px;--leader-w:41px;--leader-left:-41px}
.dc-point[data-name="Blix BDC Oslo"]{--label-x:-154px;--label-y:42px;--leader-w:30px;--leader-left:100%}
.dc-point[data-name="Bulk OS-IX"]{--label-x:-154px;--label-y:12px;--leader-w:30px;--leader-left:100%}
.dc-point[data-name="OSL-Enebakk"]{--label-x:54px;--label-y:26px;--leader-w:43px;--leader-left:-43px}
.dc-point[data-name="OSL-Hamar"]{--label-x:38px;--label-y:-30px;--leader-w:27px;--leader-left:-27px}
@media(max-width:1100px){.geo-map{min-height:760px}.map-side{grid-template-columns:1fr}}
@media(max-width:700px){.geo-map{min-height:620px}.dc-point .point-label{display:none}.map-side{display:block}.geo-map>img,.geo-points{inset:6px;width:calc(100% - 12px);height:calc(100% - 12px)}}


/* v0.5.7 — Kartverket + Leaflet interactive map */
.dp-leaflet-map{height:min(78vh,900px);min-height:680px;width:100%;background:#07110c;border-top:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12);font-family:var(--mono)}
.dp-leaflet-map .leaflet-tile-pane{filter:grayscale(.72) brightness(.43) contrast(1.18) sepia(.18) hue-rotate(75deg) saturate(.7)}
.dp-leaflet-map .leaflet-control-zoom a{background:#08110c;color:#dfffe5;border-color:rgba(108,255,133,.3);font:700 22px/30px var(--mono)}
.dp-leaflet-map .leaflet-control-attribution{background:rgba(0,0,0,.78);color:#b8c6bd;font-size:11px}.dp-leaflet-map .leaflet-control-attribution a{color:#7dff96}
.dc-leaflet-icon{background:transparent;border:0}.dc-marker-core{display:block;width:14px;height:14px;border-radius:50%;background:var(--green);border:2px solid #edfff0;box-shadow:0 0 0 5px rgba(108,255,133,.13),0 0 18px rgba(108,255,133,.72)}
.dc-leaflet-icon.construction .dc-marker-core{width:0;height:0;border-radius:0;background:transparent;border-left:9px solid transparent;border-right:9px solid transparent;border-bottom:17px solid var(--planned);border-top:0;box-shadow:none}
.dc-leaflet-label{background:rgba(0,0,0,.88);border:1px solid rgba(255,255,255,.18);box-shadow:none;color:#f4f7f5;font:800 12px/1.15 var(--mono);padding:5px 7px;white-space:nowrap}.dc-leaflet-label:before{border-right-color:rgba(255,255,255,.18)!important}.dc-leaflet-label em{font-style:normal;color:var(--green);margin-left:4px}.dc-leaflet-label.construction em{color:var(--planned)}
.map-leaflet-wrap{position:relative}.map-map-note{position:absolute;left:16px;bottom:28px;z-index:500;max-width:360px;padding:8px 10px;background:rgba(0,0,0,.78);border:1px solid rgba(255,255,255,.15);font:800 10px/1.35 var(--mono);color:#e5ece7;pointer-events:none}.map-map-note small{font-weight:500;color:#b5c1ba}
.map-side.leaflet-side{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:12px;margin-top:12px}.map-toolbar .map-toggle:not(:disabled){cursor:pointer}.map-toolbar .map-toggle.active{border-color:var(--green);box-shadow:inset 0 0 0 1px rgba(108,255,133,.28);color:#fff}
@media(max-width:900px){.dp-leaflet-map{height:72vh;min-height:620px}.map-side.leaflet-side{grid-template-columns:1fr}.dc-leaflet-label{font-size:11px}}
@media(max-width:600px){.dp-leaflet-map{height:68vh;min-height:540px}.dc-leaflet-label{display:none}.map-map-note{left:8px;right:8px;bottom:26px;max-width:none}}

/* v0.5.8 – clearer national view and progressive labels */
.dp-leaflet-map{height:min(82vh,940px);min-height:720px;background:#06100b}
.dp-leaflet-map:before{content:"";position:absolute;inset:0;z-index:200;pointer-events:none;background:rgba(0,12,7,.10);mix-blend-mode:multiply}
.dp-leaflet-map .leaflet-tile-pane{filter:grayscale(.55) brightness(.62) contrast(1.32) sepia(.08) hue-rotate(72deg) saturate(.72)}
.dp-leaflet-map .leaflet-overlay-pane,.dp-leaflet-map .leaflet-marker-pane,.dp-leaflet-map .leaflet-tooltip-pane,.dp-leaflet-map .leaflet-control-container{z-index:400}
.map-v051[data-zoom="national"] .dc-marker-core{transform:scale(.92)}
.map-v051[data-zoom="regional"] .dc-marker-core,.map-v051[data-zoom="detail"] .dc-marker-core{transform:scale(1.04)}
.dc-leaflet-label{font-size:13px;padding:6px 8px;letter-spacing:.01em}
.map-map-note{background:rgba(0,0,0,.86);font-size:11px}
@media(max-width:900px){.dp-leaflet-map{height:76vh;min-height:650px}}
@media(max-width:600px){.dp-leaflet-map{height:70vh;min-height:560px}.dp-leaflet-map:before{background:rgba(0,10,6,.07)}}


/* v0.5.11 — robust clustering; no external cluster plugin */
.dp-cluster-icon{background:transparent!important;border:0!important}
.dp-cluster-badge{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:rgba(5,19,10,.94);border:2px solid #dfffe5;color:#f5fff7;font:900 15px/1 var(--mono);box-shadow:0 0 0 6px rgba(108,255,133,.14),0 0 26px rgba(108,255,133,.55)}
.dp-cluster-badge small{display:block;font-size:7px;letter-spacing:.05em;color:var(--green);margin-top:-5px}
.map-v051[data-zoom="national"] .dc-leaflet-label{display:none}
.map-statusline{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:8px 0 0;font:10px/1.3 var(--mono);color:#c7d1ca}.map-statusline b{color:var(--green)}
@media(max-width:600px){.dp-cluster-badge{width:34px;height:34px;font-size:14px}}

/* v0.5.12 — kartomfang og tydeligere klynger */
.map-scope-note{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:stretch;margin:12px 0 14px;padding:15px 16px;background:linear-gradient(110deg,rgba(108,255,133,.075),rgba(2,8,4,.58));border:1px solid rgba(108,255,133,.28);box-shadow:inset 3px 0 0 rgba(108,255,133,.72)}
.map-scope-note b{font:800 11px/1.2 var(--mono);letter-spacing:.1em;color:var(--green)}
.map-scope-note p{font-size:16px;line-height:1.42;margin:7px 0 0;color:#e3e8e2;max-width:920px}.map-scope-note p strong{color:#fff}
.map-scope-stats{display:grid;grid-template-columns:1fr 1fr;gap:7px}.map-scope-stats span{display:flex;flex-direction:column;justify-content:center;min-height:76px;padding:9px 11px;border:1px solid rgba(108,255,133,.19);background:rgba(0,0,0,.28)}.map-scope-stats small{font:8px/1.25 var(--mono);letter-spacing:.07em;color:var(--muted)}.map-scope-stats strong{font:700 31px/1 Garamond,Georgia,serif;color:var(--green);margin-top:3px}.map-scope-stats em{grid-column:1/-1;font:9px/1.25 var(--mono);font-style:normal;color:var(--muted);text-align:right}
.dp-cluster-icon{background:transparent!important;border:0!important}.dp-cluster-badge{width:46px!important;height:46px!important;font-size:17px!important;border-width:2px!important;box-shadow:0 0 0 5px rgba(108,255,133,.10),0 0 24px rgba(108,255,133,.42)!important}
@media(max-width:760px){.map-scope-note{grid-template-columns:1fr;padding:14px}.map-scope-note p{font-size:17px}.map-scope-stats strong{font-size:34px}}

/* v0.5.13 — tydelig retur til nasjonalt kartutsnitt */
.dp-home-control{margin-top:8px!important;box-shadow:0 0 0 1px rgba(87,255,197,.22),0 5px 18px rgba(0,0,0,.35)!important}
.dp-home-control a.dp-home-button{width:auto!important;min-width:118px!important;height:34px!important;display:flex!important;align-items:center;gap:7px;padding:0 10px!important;background:rgba(5,19,17,.92)!important;color:#dfffee!important;border:1px solid rgba(116,255,207,.38)!important;text-decoration:none!important;font:700 10px/1 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace!important;letter-spacing:.08em;white-space:nowrap}
.dp-home-control a.dp-home-button:hover,.dp-home-control a.dp-home-button:focus{background:rgba(12,46,37,.97)!important;color:#fff!important;outline:2px solid rgba(111,255,205,.55);outline-offset:1px}
.dp-home-button span{font:700 20px/1 Georgia,serif;color:#72ffd0;margin-top:-2px}.dp-home-button b{font:inherit}
@media(max-width:700px){.dp-home-control a.dp-home-button{min-width:34px!important;width:34px!important;padding:0!important;justify-content:center}.dp-home-button b{display:none}}

/* v0.5.14 — utvidet kildekontrollert datasett; kapasitet ukjent vises eksplisitt */

/* v0.5.15 — utvidet Midt-/Nord-Norge og rikere kildefelt i detaljkort */
.map-detail dl{margin-top:15px}.map-detail dl div{grid-template-columns:92px 1fr}.map-detail [data-map-capacity-type],.map-detail [data-map-source-date]{color:#cbd6cf}

/* v0.5.16 — kildekontrollert utvidelse i Nord-Norge: Tromsø og Stokmarknes */

/* v0.5.17 — richer, source-first map detail card; map engine unchanged */
.map-detail{position:relative;overflow:hidden}.map-detail:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--green);opacity:.75}.map-detail[data-status="construction"]:before{background:var(--planned)}.map-detail-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px}.map-detail-evidence{font:900 9px/1 var(--mono);letter-spacing:.08em;color:#aebbb3;border:1px solid rgba(255,255,255,.14);padding:5px 7px;background:rgba(0,0,0,.2)}.map-detail-place{margin-top:5px!important;color:#d9e1dc!important}.map-detail dl{gap:0!important;border-top:1px solid rgba(255,255,255,.11);margin-bottom:12px!important}.map-detail dl div{grid-template-columns:112px 1fr!important;padding:9px 0!important;border-top:0!important;border-bottom:1px solid rgba(255,255,255,.08)}.map-detail dt{line-height:1.25}.map-detail dd{font-family:var(--reading);font-size:15px!important;line-height:1.35!important}.map-detail-explain{padding:10px 11px;border:1px solid rgba(108,255,133,.16);background:rgba(108,255,133,.035);margin-top:8px}.map-detail-explain>b{font:900 9px/1 var(--mono);letter-spacing:.1em;color:var(--green)}.map-detail-explain .map-detail-note{margin:5px 0 0!important;font-size:15px!important;line-height:1.42!important}.map-detail-caveat{font-size:12px!important;line-height:1.35!important;color:#8f9b94!important;margin-top:12px!important}.map-source-link{margin-top:13px!important;padding:7px 9px!important;border:1px solid rgba(108,255,133,.28)!important;background:rgba(108,255,133,.04);text-decoration:none!important}.map-source-link:hover,.map-source-link:focus-visible{background:rgba(108,255,133,.11);border-color:var(--green)!important}.dc-leaflet-icon.is-selected .dc-marker-core{transform:scale(1.45);filter:brightness(1.45);box-shadow:0 0 0 6px rgba(108,255,133,.18),0 0 22px rgba(108,255,133,.8)}

/* v0.5.19 — clearer pedagogical county production layer */
.power-county-card{display:none;padding:13px 15px;border-top:1px solid rgba(255,178,71,.35);background:rgba(8,8,5,.76);font-family:var(--reading);font-size:16px;line-height:1.4}.map-v051[data-active-layer="power"] .power-county-card{display:block}.power-county-card .power-card-kicker{font:900 10px var(--mono);letter-spacing:.09em;color:var(--amber)}.power-county-card h3{margin:4px 0 8px;font-size:25px}.power-county-card strong{color:var(--amber)}.power-county-card small{display:block;margin-top:7px;color:#c9c3b6}.power-legend{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:7px;font:800 10px var(--mono);color:#d8d1c3}.power-legend i{display:inline-block;border-radius:50%;background:rgba(255,178,71,.72);border:2px solid rgba(255,255,255,.86);vertical-align:middle;margin-right:5px}.power-legend .s{width:16px;height:16px}.power-legend .m{width:28px;height:28px}.power-legend .l{width:42px;height:42px}.dp-power-bubble{font-size:11px!important}.dp-power-label{font-size:11px!important;line-height:1.35!important}

/* v0.5.20 — clean single-root WordPress package; no nested theme copy */

/* v0.5.21 – kraftkort og metodisk bro til årsbalanse */
.power-county-card{display:none!important}.map-v051[data-active-layer="power"] .power-county-card{display:block!important}.power-county-card{padding:16px 18px;border-top:1px solid rgba(255,178,71,.42);background:linear-gradient(90deg,rgba(42,25,7,.88),rgba(8,9,6,.82));font-size:17px}.power-county-card h3{font-size:28px;margin:4px 0 10px}.power-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:8px 0 10px}.power-card-grid span{padding:10px 12px;border:1px solid rgba(255,178,71,.28);background:rgba(0,0,0,.24)}.power-card-grid small{display:block;font:800 9px var(--mono);letter-spacing:.08em;color:#d9b474}.power-card-grid strong{display:block;margin-top:3px;color:#ffb247;font-size:18px}.power-county-card p{margin:8px 0;max-width:1000px}.map-toggle:disabled{opacity:.48;cursor:not-allowed}@media(max-width:700px){.power-card-grid{grid-template-columns:1fr}.power-county-card{font-size:16px}}

/* v0.5.23 annual county balance */
.power-card-grid strong.is-positive{color:#9cffb4}.power-card-grid strong.is-negative{color:#ffb36b}.power-card-grid strong.is-loading{opacity:.72}.dp-balance-icon{background:transparent!important;border:0!important}.dp-balance-bubble{display:flex;align-items:center;justify-content:center;border-radius:50%;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:800;font-size:11px;line-height:1;text-align:center;box-sizing:border-box;box-shadow:0 0 0 2px rgba(0,0,0,.65),0 0 18px rgba(0,0,0,.3);backdrop-filter:blur(2px)}.dp-balance-icon.positive .dp-balance-bubble{background:rgba(22,110,62,.86);border:2px solid #9cffb4;color:#fff}.dp-balance-icon.negative .dp-balance-bubble{background:rgba(151,75,14,.9);border:2px solid #ffc27d;color:#fff}.dp-balance-label{font-family:Garamond,Georgia,serif}.balance-layer-note{display:none;padding:7px 12px;border-top:1px solid rgba(156,255,180,.22);border-bottom:1px solid rgba(156,255,180,.22);font-size:14px}.map-shell[data-active-layer="balance"] .balance-layer-note{display:block}.map-shell[data-active-layer="balance"] .power-layer-note{display:none}.balance-layer-note b{color:#9cffb4;margin-right:8px}.balance-key{display:flex;gap:14px;flex-wrap:wrap;margin-top:6px;font-size:12px}.balance-key i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:5px}.balance-key .pos{background:#58dc85}.balance-key .neg{background:#e59a52}

/* v0.6.1 — petition engine and test-mode UI */
.petition-section{padding:34px 0}.petition-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:18px;align-items:stretch}.petition-copy,.petition-form-card{padding:26px}.petition-copy{border-color:rgba(255,178,71,.38);background:linear-gradient(145deg,rgba(55,30,6,.76),rgba(4,12,8,.86))}.petition-copy h2{font-size:clamp(34px,5vw,58px);margin:5px 0 15px}.petition-fulltext{font-size:20px;line-height:1.48;color:#fff}.petition-privacy{margin:20px 0;padding:14px 15px;border:1px solid rgba(255,178,71,.35);background:rgba(255,178,71,.06)}.petition-privacy b{font:900 10px/1.2 var(--mono);letter-spacing:.09em;color:var(--amber)}.petition-privacy p{margin:7px 0 0;font-size:15px;line-height:1.45}.petition-counter{display:flex;gap:12px;align-items:baseline;margin-top:22px;border-top:1px solid rgba(255,255,255,.12);padding-top:16px}.petition-counter strong{font-size:48px;color:var(--amber)}.petition-counter span{font-size:16px;color:#d8d1c3}.petition-form{display:grid;gap:14px}.petition-form label{display:grid;gap:6px;font-weight:700;font-size:17px}.petition-form label small{font:10px/1.3 var(--mono);color:#9ca8a0}.petition-form input[type=text],.petition-form input[type=email]{width:100%;box-sizing:border-box;padding:13px 14px;background:rgba(0,0,0,.42);border:1px solid rgba(108,255,133,.25);color:#fff;font:17px var(--reading);border-radius:2px}.petition-form input:focus{outline:2px solid rgba(108,255,133,.55);outline-offset:2px}.petition-form .check{grid-template-columns:22px 1fr;align-items:start;font-weight:400;font-size:15px;line-height:1.4;padding:11px;border:1px solid rgba(255,255,255,.11);background:rgba(0,0,0,.18)}.petition-form .check input{margin-top:4px}.petition-form .optional{border-color:rgba(255,178,71,.22)}.form-fine{font-size:13px;line-height:1.4;color:#aeb7b1}.hp{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}.petition-notice,.petition-test-link{padding:12px 14px;margin-bottom:14px;border:1px solid rgba(108,255,133,.32);background:rgba(108,255,133,.07);font-size:15px}.petition-notice.invalid,.petition-notice.rate,.petition-notice.expired{border-color:rgba(255,178,71,.4);background:rgba(255,178,71,.07)}.petition-test-link b{font:900 10px var(--mono);letter-spacing:.08em;color:var(--green)}.petition-test-link p{margin:7px 0 12px}.petition-test-link .button{display:inline-block}.petition-form-card:before{content:"TEST";float:right;font:900 10px var(--mono);letter-spacing:.12em;color:var(--amber);border:1px solid rgba(255,178,71,.35);padding:5px 7px}@media(max-width:850px){.petition-grid{grid-template-columns:1fr}.petition-form-card{padding:20px}.petition-fulltext{font-size:18px}}


/* v0.6.5 — privacy draft; withdrawal moved out of the signing surface */
.privacy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}.privacy-card{padding:16px;border:1px solid rgba(108,255,133,.18);background:rgba(0,0,0,.2)}.privacy-card h3{margin:0 0 7px;font-size:22px}.privacy-card p{margin:0;font-size:16px;line-height:1.45}.privacy-warning{margin-top:16px;padding:14px;border:1px solid rgba(255,178,71,.32);background:rgba(255,178,71,.055)}.petition-manage{padding:14px;margin-bottom:14px;border:1px solid rgba(255,178,71,.38);background:rgba(255,178,71,.06)}.petition-manage b{font:900 10px var(--mono);letter-spacing:.08em;color:var(--amber)}.petition-manage form{margin-top:10px}.petition-manage button{cursor:pointer}.privacy-link{font-weight:700}.launch-check{margin:14px 0;padding:14px;border-left:3px solid #d39b45;background:#fff}.launch-check li{margin:5px 0}@media(max-width:760px){.privacy-grid{grid-template-columns:1fr}}

/* 0.6.3: self-service signature management */
.petition-manage-request{margin-top:14px;border:1px solid rgba(134,255,190,.28);padding:12px 14px;background:rgba(2,20,14,.42)}
.petition-manage-request summary{cursor:pointer;font-weight:700;color:#dfffe9}
.petition-manage-request p{margin:.65rem 0;font-size:.92rem}
.petition-manage-request form{display:grid;gap:10px}
.petition-manage-request .button{width:100%}

/* v0.6.5 evidence blocks */
.use-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:22px 0}.use-card{padding:16px;border:1px solid rgba(255,181,75,.28);background:rgba(3,18,14,.56);min-height:180px}.use-card>b,.known-box>b{display:block;font:700 11px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em;color:#ffb54b;margin-bottom:8px}.use-card>strong{display:block;font-size:19px;margin-bottom:9px}.use-card p{margin:0;font-size:15px;line-height:1.45}.use-card.unknown{border-style:dashed}.evidence-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0 18px}.evidence-strip span{padding:14px;border:1px solid rgba(255,255,255,.18);background:rgba(0,0,0,.24)}.evidence-strip small,.need-total small{display:block;font:700 10px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.08em;color:#ffb54b}.evidence-strip strong{display:block;font-size:28px;margin:4px 0}.evidence-strip em{font-size:12px;opacity:.72}.need-flow{display:grid;grid-template-columns:240px 38px 1fr;align-items:center;gap:12px;margin:22px 0}.need-total{padding:20px;border:1px solid rgba(255,181,75,.5);background:rgba(85,47,4,.18)}.need-total strong{display:block;font-size:44px;color:#ffbf5f;margin:5px 0}.need-total span{font-size:14px}.need-arrow{text-align:center;font-size:30px;color:#ffb54b}.need-questions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.need-questions article{padding:13px;border:1px solid rgba(255,181,75,.24);background:rgba(3,18,14,.5)}.need-questions b{display:block;font-size:14px;margin-bottom:5px}.need-questions strong{font-size:15px;color:#ffcf80}.known-box{margin:15px 0;padding:16px 18px;border-left:3px solid #ffb54b;background:rgba(3,18,14,.55)}.known-box p{margin:0;line-height:1.5}@media(max-width:900px){.use-grid{grid-template-columns:1fr 1fr}.use-card.unknown{grid-column:1/-1}.need-flow{grid-template-columns:1fr}.need-arrow{transform:rotate(0deg)}.evidence-strip{grid-template-columns:1fr}.need-questions{grid-template-columns:1fr}}@media(max-width:560px){.use-grid{grid-template-columns:1fr}.use-card.unknown{grid-column:auto}}

/* v0.6.7 — redaksjonell palett: Garamond + oransje. Grønt beholdes bare der det bærer databetydning i kartet. */
:root{--accent:#e7a640;--accent2:#ffbd59;--line:rgba(231,166,64,.28);--reading:Garamond,Georgia,"Times New Roman",serif}
body{font-family:var(--reading)}
a{color:var(--accent)}
.nav a:hover,.nav .cta,.eyebrow,.portal-card small,.dash .num,.event time,.status,.data-note strong,.metric-row b,th,.petition-label,.petition-test-link b,.use-card>b,.known-box>b,.evidence-strip small,.need-total small,.need-arrow{color:var(--accent)}
.nav .cta,.button,.portal-card,.panel,.event,.data-note,.mini,.metric-row>div,.table-wrap,.privacy-card,.use-card,.need-questions article,.known-box{border-color:rgba(231,166,64,.28)}
.button{background:var(--accent);border-color:var(--accent);color:#160d02;font-family:var(--reading);font-size:15px;letter-spacing:.02em}
.button.secondary{background:rgba(0,0,0,.28);color:var(--accent)}
.portal-card:hover{border-color:var(--accent);background:rgba(31,20,7,.84)}
.portal-card small,.eyebrow,.event time,.status,.petition-label,.use-card>b,.known-box>b,.evidence-strip small,.need-total small{font-family:var(--reading);letter-spacing:.04em;font-size:12px}
.dot{background:var(--accent);box-shadow:0 0 12px var(--accent)}
.campaign-position,.petition-lead,.known-box{border-left-color:var(--accent)}
.campaign-position{background:linear-gradient(90deg,rgba(231,166,64,.11),rgba(0,0,0,.18))}
.sign-button{background:var(--accent)!important;border-color:#ffd18a!important;color:#160d02!important;box-shadow:0 0 0 2px rgba(231,166,64,.12),0 0 24px rgba(231,166,64,.22),0 10px 24px rgba(0,0,0,.45)!important}
.hero-fact strong{color:var(--accent);font-family:var(--reading)}
.petition-full{border-left-color:var(--accent)}
.petition-form label,.petition-form input[type=text],.petition-form input[type=email],.petition-fulltext,.petition-counter span,.privacy-card p,.use-card p,.known-box p{font-family:var(--reading)}
.petition-form input[type=text],.petition-form input[type=email]{border-color:rgba(231,166,64,.28)}
.petition-form input:focus{outline-color:rgba(231,166,64,.58)}
.petition-notice,.petition-test-link{border-color:rgba(231,166,64,.34);background:rgba(231,166,64,.07)}
.use-card,.need-questions article,.known-box{background:rgba(28,18,6,.46)}
.need-arrow{color:var(--accent)}
/* Kartets statusfarger er semantiske: grønt = i drift/positiv balanse. De endres ikke. */

/* v0.6.7: krafttall bruker varm oransje for bedre kontrast mot kartet */
.dp-power-bubble{color:#ffb247!important;font-family:Garamond,Georgia,serif!important;font-weight:800!important;text-shadow:0 1px 2px #000,0 0 5px rgba(0,0,0,.9)!important}
.dp-power-label,.dp-power-label b,.dp-power-label strong{color:#ffb247!important;font-family:Garamond,Georgia,serif!important;font-weight:700!important}

/* v0.7.2: separate documented project geography from operating/building sites */
.dc-leaflet-icon.planned .dc-marker-core{width:13px;height:13px;border-radius:1px;background:rgba(255,178,71,.10);border:2px solid var(--amber);box-shadow:0 0 0 3px rgba(255,178,71,.10),0 0 12px rgba(255,178,71,.38);transform:rotate(45deg)}
.dc-leaflet-label.planned{border-color:rgba(255,178,71,.55)!important}
.map-detail[data-status="planned"]{border-color:rgba(255,178,71,.42)}

/* v0.7.4: expanded documented project geography */

/* v0.8.0: map expansion and orange editorial accents */


/* v0.9.1 — neutral parliamentary path */
.storting-road{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:24px 0}.storting-road>div{border:1px solid rgba(222,126,49,.48);background:rgba(23,16,10,.62);padding:16px;min-height:135px}.storting-road b{display:inline-grid;place-items:center;width:30px;height:30px;border:1px solid #df843c;border-radius:50%;color:#f0a35f;font-family:Garamond,Georgia,serif;font-size:18px}.storting-road strong{display:block;color:#f0a35f;font-family:Garamond,Georgia,serif;font-size:17px;margin:12px 0 6px}.storting-road span{font-family:Garamond,Georgia,serif;color:#f3e7dc;font-size:16px;line-height:1.35}.source-caveat{border-left:3px solid #d8782d;padding-left:14px;color:#ead8c9}@media(max-width:900px){.storting-road{grid-template-columns:1fr}.storting-road>div{min-height:0}}

/* v0.9.1 — launch readiness */
.dp-launch-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0}.dp-launch-card{padding:16px;border:1px solid rgba(255,181,75,.3);background:rgba(0,0,0,.22)}.dp-launch-card strong{display:block;color:var(--amber);font:700 18px/1.2 var(--reading);margin-bottom:6px}.dp-launch-card p{margin:0;font-size:15px;line-height:1.45}.privacy-warning a{color:var(--amber)}@media(max-width:800px){.dp-launch-grid{grid-template-columns:1fr}}


/* v0.9.2 — map scope clarity + release-candidate readiness */
.map-count-explainer{margin-top:12px;padding:14px 16px;border:1px solid rgba(231,166,64,.32);background:rgba(231,166,64,.055);font-family:var(--reading);font-size:16px;line-height:1.45}.map-count-explainer strong{color:var(--amber)}.map-count-breakdown{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.map-count-breakdown span{padding:6px 9px;border:1px solid rgba(231,166,64,.25);background:rgba(0,0,0,.22);font-family:var(--reading);color:var(--ink)}

/* v0.9.4 — launch checklist: explicit SPF/DKIM/DMARC/inbox verification; retention cleanup correction. */

/* v0.9.7 privacy document */
.dp-privacy-document{max-width:980px}.dp-privacy-document h1{font-size:clamp(38px,5vw,64px);margin:.15em 0 .25em}.dp-privacy-document h2{font-size:28px;margin:1.2em 0 .25em;color:var(--orange,#e6a23c)}.dp-privacy-document p{font-size:18px;line-height:1.55}.dp-privacy-document a{color:var(--orange,#e6a23c)}


/* v0.9.10 — dokumenterte framskrivninger */
.outlook-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.outlook-grid article{padding:18px;border:1px solid rgba(108,255,133,.18);background:rgba(2,8,4,.68);display:flex;flex-direction:column;gap:6px}.outlook-grid small{font:900 10px var(--mono);letter-spacing:.08em;color:var(--green)}.outlook-grid strong{font-size:34px;line-height:1;color:var(--green)}.outlook-grid span{font-size:16px;line-height:1.4}.outlook-grid em{font:11px/1.35 var(--mono);color:var(--muted);font-style:normal}.forecast-note{margin:12px 0;padding:15px 17px;border-left:2px solid var(--amber);background:rgba(255,193,79,.055)}.forecast-note b{font:900 11px var(--mono);color:var(--amber)}.forecast-note p{margin:5px 0 0;font-size:16px}.balance-graphic{display:grid;gap:10px;margin:16px 0}.balance-graphic>div{display:grid;grid-template-columns:minmax(150px,220px) minmax(150px,1fr) 70px;gap:12px;align-items:center}.balance-graphic span{font:11px var(--mono);color:#e7ece8}.balance-graphic i{display:block;width:var(--w);height:22px;background:linear-gradient(90deg,rgba(108,255,133,.38),rgba(108,255,133,.9));border:1px solid rgba(108,255,133,.28)}.balance-graphic b{font:900 15px var(--mono);color:#fff}@media(max-width:760px){.outlook-grid{grid-template-columns:1fr}.balance-graphic>div{grid-template-columns:1fr 58px}.balance-graphic span{grid-column:1/-1}.balance-graphic i{height:18px}}

/* v0.9.12 — fylkesmatrise */
.county-matrix-section{scroll-margin-top:70px}.matrix-callout{display:grid;grid-template-columns:220px 1fr;gap:14px;padding:12px 14px;margin:10px 0;border:1px solid rgba(108,255,133,.2);background:rgba(3,12,6,.72);font:11px/1.45 system-ui,sans-serif}.matrix-callout b{font:10px/1.35 var(--mono);color:var(--green)}.county-matrix-wrap{max-height:620px;overflow:auto}.county-matrix{min-width:1050px}.county-matrix thead th{position:sticky;top:0;z-index:2;background:#07130b}.county-matrix tbody th{position:sticky;left:0;z-index:1;background:#061009;color:#f4f1e8;font-size:12px}.county-matrix td:nth-child(2),.county-matrix td:nth-child(3),.county-matrix td:nth-child(5){font-family:var(--mono);white-space:nowrap}.county-matrix td:nth-child(4){font-weight:700}.county-matrix .county-consumption{color:var(--muted);font-style:italic}.matrix-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:9px}.matrix-notes p{margin:0;padding:10px 12px;border:1px solid rgba(108,255,133,.12);background:rgba(2,8,4,.55);font:10px/1.45 system-ui,sans-serif;color:var(--muted)}.matrix-notes b{color:var(--ink)}
@media(max-width:760px){.matrix-callout{grid-template-columns:1fr}.county-matrix-wrap{margin-left:-8px;margin-right:-8px}.county-matrix{min-width:900px}.matrix-notes{grid-template-columns:1fr}}

/* v0.9.13 — dagens datasenterforbruk */
.county-matrix{min-width:1220px}.county-matrix .dc-current{font-family:var(--mono);white-space:nowrap}.county-matrix .dc-current:not(:has(*)){color:var(--muted)}.matrix-notes{grid-template-columns:repeat(4,1fr)}
@media(max-width:760px){.county-matrix{min-width:1080px}.matrix-notes{grid-template-columns:1fr}}

/* v1.0.1 — mobile hero containment */
@media(max-width:760px){
  .hero-copy{min-width:0;overflow:hidden}
  .hero h1{font-size:clamp(42px,15vw,64px);line-height:.82;letter-spacing:-.055em;max-width:100%;overflow-wrap:normal}
  .hero h1 span{max-width:100%}
}

/* v1.0.3 — controlled three-line mobile title */
@media(min-width:761px){
  .hero h1 .dp-title-data,.hero h1 .dp-title-senter{display:inline}
  .hero h1 .dp-title-pause{display:block}
}
@media(max-width:760px){
  .hero h1 .dp-title-data,.hero h1 .dp-title-senter,.hero h1 .dp-title-pause{display:block}
  .hero h1{font-size:clamp(52px,18vw,76px);line-height:.76;max-width:100%}
}


/* v1.0.4 — national data-centre capacity scenario */
.hero-national-scenario{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(150px,.45fr);gap:10px 18px;align-items:end;margin:12px 0 18px;padding:16px 18px;border:1px solid rgba(231,166,64,.42);background:linear-gradient(135deg,rgba(231,166,64,.10),rgba(0,0,0,.30));box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 10px 30px rgba(0,0,0,.25)}
.hero-national-number strong{display:block;color:var(--accent);font:800 clamp(48px,6.4vw,96px)/.82 var(--reading);letter-spacing:-.045em;white-space:nowrap}
.hero-national-number span{display:block;margin-top:10px;max-width:680px;font:700 16px/1.18 var(--reading);color:#fff}
.hero-national-compare{padding-left:16px;border-left:1px solid rgba(231,166,64,.34)}
.hero-national-compare b{display:block;color:var(--accent);font:800 34px/1 var(--reading)}
.hero-national-compare span{display:block;margin-top:5px;font:14px/1.25 var(--reading);color:#e7ded3}
.hero-national-scenario>p{grid-column:1/-1;margin:2px 0 0!important;max-width:none!important;font:12px/1.35 system-ui,sans-serif!important;color:#cfc8be!important}
.hero-national-scenario>p b{color:#fff}
@media(max-width:760px){
 .hero-national-scenario{grid-template-columns:1fr;margin:14px 0 18px;padding:15px 14px;gap:12px}
 .hero-national-number strong{font-size:clamp(45px,15vw,68px);white-space:normal;line-height:.86}
 .hero-national-number span{font-size:16px}
 .hero-national-compare{padding:11px 0 0;border-left:0;border-top:1px solid rgba(231,166,64,.28)}
 .hero-national-compare b{font-size:31px}
 .hero-national-scenario>p{font-size:11px!important;line-height:1.4!important}
}
