/* Prompt Course: stilen som föll bort i runda 5, återtagen ur live 28/10 och översatt till v7:s mörka palett.
   Gamla variabelnamn pekas om till v7 här, bara inom kursen. */
.pk-hero,.pk-wrap{--gold:var(--guld);--maxw:var(--bredd);--gutter:var(--kant)}
.pk-hero{padding-top:clamp(48px,6vw,80px)!important}
@keyframes medallion-pulse{0%,100%{opacity:.75}50%{opacity:1}}


    /* ── Hero ── */
    .pk-hero {
      background: transparent;
      position: relative;
      z-index: 1;
      padding: clamp(120px, 14vw, 160px) 0 clamp(72px, 9vw, 100px);
    }
    .pk-hero-inner {
      max-width: var(--maxw);
      margin: 0 auto;
      padding: 0 var(--gutter);
    }
    .pk-pstar {
      display: flex;
      align-items: center;
      gap: 14px;
      margin-bottom: 24px;
    }
    .pk-pstar-dot {
      width: 10px; height: 10px;
      border-radius: 50%;
      background: var(--gold);
      box-shadow: 0 0 18px rgba(225,183,103,0.55), 0 0 6px rgba(225,183,103,0.88);
      animation: medallion-pulse 4s ease-in-out infinite;
      flex-shrink: 0;
    }
    .pk-pstar-line {
      height: 1px; width: 52px;
      background: linear-gradient(to right, var(--gold), transparent);
      opacity: 0.55;
    }
    .pk-eyebrow {
      display: inline-block;
      font-family: var(--mono);
      font-size: 11px;
      letter-spacing: 0.22em;
      text-transform: uppercase;
      color: var(--gold);
      margin-bottom: 20px;
    }
    .pk-h1 {
      font-family: var(--serif);
      font-weight: 400;
      font-size: clamp(40px, 6vw, 72px);
      line-height: 1.1;
      color: var(--elfenben);
      max-width: 22ch;
      margin-bottom: 24px;
    }
    .pk-lead {
      font-size: 19px;
      font-weight: 300;
      line-height: 1.75;
      color: rgba(238,235,225,0.8999999999999999);
      max-width: 58ch;
      margin-bottom: 48px;
    }

    /* ── Course Overview Cards ── */
    .pk-overview {
      display: grid;
      grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
      gap: 16px;
      max-width: 760px;
    }
    .pk-overview-card {
      border: 1px solid rgba(238,235,225,0.1);
      padding: 20px;
      background: var(--natt-2);
    }
    .pk-overview-num {
      font-family: var(--mono);
      font-size: 10px;
      letter-spacing: 0.18em;
      color: var(--gold);
      margin-bottom: 8px;
    }
    .pk-overview-title {
      font-family: var(--serif);
      font-size: 16px;
      font-weight: 400;
      color: var(--elfenben);
      margin-bottom: 8px;
      line-height: 1.3;
    }
    .pk-badge {
      display: inline-block;
      font-family: var(--mono);
      font-size: 8px;
      letter-spacing: 0.15em;
      text-transform: uppercase;
      padding: 3px 8px;
    }
    .pk-badge-open {
      color: var(--ljus);
      background: rgba(124,230,149,.10);
    }
    .pk-badge-gate {
      color: rgba(238,235,225,0.5625);
      background: rgba(238,235,225,0.05);
    }

    /* ── Layout ── */
    .pk-wrap {
      display: flex;
      align-items: flex-start;
      gap: clamp(32px, 5vw, 72px);
      max-width: var(--maxw);
      margin: 0 auto;
      padding: clamp(56px, 7vw, 80px) var(--gutter) clamp(80px, 10vw, 120px);
    }

    /* ── Sticky Progress Nav ── */
    .pk-progress {
      flex-shrink: 0;
      width: 200px;
      position: sticky;
      top: 80px;
    }
    .pk-progress-label {
      font-family: var(--mono);
      font-size: 9px;
      letter-spacing: 0.2em;
      text-transform: uppercase;
      color: rgba(238,235,225,0.4375);
      margin-bottom: 16px;
    }
    .pk-progress-item {
      display: flex;
      align-items: flex-start;
      gap: 12px;
      margin-bottom: 6px;
      cursor: pointer;
      padding: 8px 10px;
      transition: background 0.15s;
    }
    .pk-progress-item:hover { background: rgba(238,235,225,0.03); }
    .pk-progress-item.active .pk-progress-dot { background: var(--gold); }
    .pk-progress-item.active .pk-progress-text { color: var(--gold); }
    .pk-progress-dot {
      width: 8px; height: 8px;
      border-radius: 50%;
      border: 1px solid rgba(238,235,225,0.2);
      flex-shrink: 0;
      margin-top: 5px;
      transition: background 0.2s;
    }
    .pk-progress-text {
      font-family: var(--sans);
      font-size: 13px;
      font-weight: 400;
      line-height: 1.4;
      color: rgba(238,235,225,0.5625);
      transition: color 0.2s;
    }

    /* ── Content ── */
    .pk-content { flex: 1; min-width: 0; }

    /* ── Lesson ── */
    .pk-lesson {
      margin-bottom: clamp(64px, 8vw, 96px);
      scroll-margin-top: 80px;
    }
    .pk-lesson-meta {
      display: flex;
      align-items: center;
      gap: 14px;
      margin-bottom: 20px;
    }
    .pk-lesson-num {
      font-family: var(--mono);
      font-size: 10px;
      letter-spacing: 0.2em;
      color: var(--gold);
    }
    .pk-lesson-divider {
      height: 1px;
      flex: 1;
      background: rgba(238,235,225,0.1);
    }
    .pk-lesson-h2 {
      font-family: var(--serif);
      font-weight: 400;
      font-size: clamp(26px, 3.5vw, 40px);
      line-height: 1.15;
      color: var(--elfenben);
      margin-bottom: 10px;
    }
    .pk-lesson-sub {
      font-family: var(--sans);
      font-size: 14px;
      font-weight: 300;
      color: rgba(238,235,225,0.5625);
      margin-bottom: 32px;
    }

    /* ── Body text ── */
    .pk-body {
      font-size: 18px;
      font-weight: 300;
      line-height: 1.85;
      color: var(--elfenben-2);
      max-width: 680px;
    }
    .pk-body p { margin-bottom: 20px; }
    .pk-body p:last-child { margin-bottom: 0; }
    .pk-body h3 {
      font-family: var(--serif);
      font-weight: 400;
      font-size: clamp(20px, 2.5vw, 26px);
      color: var(--elfenben);
      margin: 36px 0 16px;
      line-height: 1.25;
    }
    .pk-body strong { font-weight: 500; color: var(--elfenben); }
    .pk-body ol {
      padding-left: 0;
      list-style: none;
      counter-reset: pk-ol;
      margin: 12px 0 20px;
    }
    .pk-body ol li {
      counter-increment: pk-ol;
      padding: 8px 0 8px 32px;
      position: relative;
      border-bottom: 1px solid rgba(238,235,225,0.05);
    }
    .pk-body ol li::before {
      content: counter(pk-ol);
      position: absolute;
      left: 0;
      top: 8px;
      font-family: var(--mono);
      font-size: 10px;
      color: var(--gold);
      letter-spacing: 0.1em;
    }

    /* ── Prompt Code Block ── */
    .pk-prompt {
      margin: 24px 0;
      background: rgba(225,183,103,0.04);
      border: 1px solid rgba(225,183,103,0.18);
      border-left: 3px solid var(--gold);
      padding: 24px;
      max-width: 680px;
    }
    .pk-prompt-label {
      font-family: var(--mono);
      font-size: 9px;
      letter-spacing: 0.18em;
      text-transform: uppercase;
      color: var(--gold);
      margin-bottom: 12px;
    }
    .pk-prompt pre {
      font-family: var(--mono);
      font-size: 13px;
      line-height: 1.75;
      color: var(--elfenben-2);
      white-space: pre-wrap;
      word-break: break-word;
      margin: 0;
    }

    /* ── Jämförelse block ── */
    .pk-compare {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 16px;
      margin: 24px 0;
      max-width: 680px;
    }
    .pk-compare-bad, .pk-compare-good {
      padding: 20px;
      font-family: var(--mono);
      font-size: 13px;
      line-height: 1.7;
      color: var(--elfenben-2);
    }
    .pk-compare-bad {
      background: rgba(238,235,225,0.03);
      border: 1px solid rgba(238,235,225,0.1);
    }
    .pk-compare-good {
      background: rgba(225,183,103,0.04);
      border: 1px solid rgba(225,183,103,0.18);
    }
    .pk-compare-label {
      font-family: var(--mono);
      font-size: 9px;
      letter-spacing: 0.15em;
      text-transform: uppercase;
      margin-bottom: 10px;
    }
    .pk-compare-bad .pk-compare-label { color: rgba(238,235,225,0.475); }
    .pk-compare-good .pk-compare-label { color: var(--gold); }

    /* ── Övning block ── */
    .pk-ovning {
      margin: 28px 0;
      padding: 24px 28px;
      background: var(--natt-2);
      border: 1px solid rgba(238,235,225,0.1);
      max-width: 680px;
    }
    .pk-ovning-label {
      font-family: var(--mono);
      font-size: 9px;
      letter-spacing: 0.2em;
      text-transform: uppercase;
      color: var(--gold);
      margin-bottom: 12px;
    }
    .pk-ovning p {
      font-size: 17px;
      font-weight: 300;
      line-height: 1.75;
      color: var(--elfenben-2);
      margin: 0;
    }

    /* ── Gate ── */
    .pk-gate {
      margin: 28px 0;
      padding: 36px;
      background: rgba(238,235,225,0.03);
      border: 1px dashed rgba(238,235,225,0.15);
      max-width: 680px;
      text-align: center;
    }
    .pk-gate-icon {
      font-size: 28px;
      margin-bottom: 16px;
      opacity: 0.3;
    }
    .pk-gate h3 {
      font-family: var(--serif);
      font-size: 22px;
      font-weight: 400;
      color: var(--elfenben);
      margin-bottom: 10px;
    }
    .pk-gate p {
      font-size: 16px;
      font-weight: 300;
      color: rgba(238,235,225,0.6875);
      margin-bottom: 24px;
      line-height: 1.7;
    }
    .pk-gate-form {
      display: flex;
      gap: 12px;
      max-width: 380px;
      margin: 0 auto;
    }
    .pk-gate-form input[type="email"] {
      flex: 1;
      background: var(--natt-2);
      border: 1px solid rgba(238,235,225,0.15);
      color: var(--elfenben);
      font-family: var(--sans);
      font-size: 15px;
      font-weight: 300;
      padding: 12px 16px;
      outline: none;
      transition: border-color 0.2s;
    }
    .pk-gate-form input[type="email"]:focus { border-color: var(--gold); }
    .pk-gate-form button {
      background: var(--gold);
      color: #07090c;
      font-family: var(--mono);
      font-size: 10px;
      letter-spacing: 0.18em;
      text-transform: uppercase;
      padding: 12px 20px;
      border: none;
      cursor: pointer;
      white-space: nowrap;
      transition: opacity 0.2s;
    }
    .pk-gate-form button:hover { opacity: 0.88; }
    .pk-gate-open { display: none; }

    /* ── Kursintyg ── */
    .pk-cert {
      margin: 40px 0;
      padding: 40px;
      border: 1px solid rgba(225,183,103,0.3);
      background: rgba(225,183,103,0.03);
      max-width: 680px;
    }
    .pk-cert-eyebrow {
      font-family: var(--mono);
      font-size: 10px;
      letter-spacing: 0.22em;
      text-transform: uppercase;
      color: var(--gold);
      margin-bottom: 20px;
    }
    .pk-cert-title {
      font-family: var(--serif);
      font-size: clamp(22px, 3vw, 30px);
      font-weight: 400;
      color: var(--elfenben);
      margin-bottom: 24px;
    }
    .pk-cert-items {
      list-style: none;
      padding: 0;
      margin: 0 0 28px;
    }
    .pk-cert-items li {
      font-size: 17px;
      font-weight: 300;
      line-height: 1.8;
      color: var(--elfenben-2);
      padding-left: 22px;
      position: relative;
    }
    .pk-cert-items li::before {
      content: '✓';
      position: absolute;
      left: 0;
      color: var(--gold);
      font-size: 13px;
    }
    .pk-cert-cta {
      display: inline-block;
      font-family: var(--mono);
      font-size: 11px;
      letter-spacing: 0.18em;
      text-transform: uppercase;
      color: #07090c;
      background: var(--gold);
      padding: 14px 28px;
      text-decoration: none;
      transition: opacity 0.2s;
    }
    .pk-cert-cta:hover { opacity: 0.88; }

    @media (max-width: 900px) {
      .pk-progress { display: none; }
      .pk-wrap { flex-direction: column; }
    }
    @media (max-width: 600px) {
      .pk-compare { grid-template-columns: 1fr; }
      .pk-gate-form { flex-direction: column; }
      .pk-overview { grid-template-columns: 1fr 1fr; }
    }
  /* Kursen har ingen sidospalt: ta hela bredden */
.interior-layout:has(.pk-hero){grid-template-columns:minmax(0,1fr)}
/* G7 28/10: kursen ligger i en gammal ljus innehållsruta och fick Saira-rubriker; ge den v7:s variabler och typsnitt */
.interior .legacy-content:has(.pk-hero){
  --natt:#010b06; --natt-2:#061810; --natt-3:#0c1f15;
  --elfenben:#eeebe1; --elfenben-2:#c9c6ba; --elfenben-3:#aeab9f; --elfenben-4:#939085;
  --guld:#e1b767; --guld-ljus:#e8c47e; --ljus:#7ce695;
  --linje:rgba(225,183,103,.22); --linje-svag:rgba(238,235,225,.10); --kantlinje:rgba(108,140,122,.45);
  --serif:"Newsreader", Georgia, "Times New Roman", serif;
  --sans:"Schibsted Grotesk", system-ui, -apple-system, "Segoe UI", sans-serif;
  --mono:"Space Mono", ui-monospace, "Cascadia Mono", Consolas, monospace;
  --bredd:1360px; --kant:clamp(16px,3vw,40px);
  background:none!important;border:0!important;padding:0;font:400 16px/1.6 var(--sans);color:var(--elfenben-2)!important}
.interior .legacy-content .pk-h1{font:400 clamp(40px,5vw,68px)/1.06 "Newsreader",Georgia,serif!important;letter-spacing:-.01em;color:var(--elfenben)!important}
.interior .legacy-content .pk-lesson-h2{font:400 clamp(26px,3vw,40px)/1.15 "Newsreader",Georgia,serif!important;color:var(--elfenben)!important}
.interior .legacy-content .pk-cert-title,.interior .legacy-content .cta-title{font:400 clamp(22px,2.6vw,30px)/1.2 "Newsreader",Georgia,serif!important;color:var(--elfenben)!important}
.interior .legacy-content .pk-body h3,.interior .legacy-content .pk-gate h3{font:400 clamp(20px,2.2vw,26px)/1.25 "Newsreader",Georgia,serif!important;color:var(--elfenben)!important}
.interior .legacy-content .pk-overview{max-width:none;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.pk-pstar{display:none}
.interior .legacy-content .pk-hero{padding-bottom:clamp(32px,4vw,48px)!important}
/* G7 runda 2 (29/10): korten syns mot sidan, mindre tomrum under kortnätet */
.interior .legacy-content .pk-overview-card{border:1px solid rgba(225,183,103,.38);background:#0e2318;transition:border-color .3s}
.interior .legacy-content .pk-overview-card:hover{border-color:rgba(225,183,103,.7)}
.interior .legacy-content .pk-hero{padding-bottom:24px!important}
.interior .legacy-content .pk-wrap{padding-top:40px!important}
/* G7 runda 3 (29/10): fem kort utan tom cell, dålig/bra skiljs åt, en yta i promptrutorna */
@media(min-width:901px){.interior .legacy-content .pk-overview:has(>.pk-overview-card:nth-child(5):last-child){grid-template-columns:repeat(6,1fr)}
.interior .legacy-content .pk-overview:has(>.pk-overview-card:nth-child(5):last-child)>.pk-overview-card{grid-column:span 2}
.interior .legacy-content .pk-overview:has(>.pk-overview-card:nth-child(5):last-child)>.pk-overview-card:nth-child(n+4){grid-column:span 3}}
.interior .legacy-content .pk-compare-bad{border:1px solid rgba(238,235,225,.12);border-left:3px solid rgba(238,235,225,.28)}
.interior .legacy-content .pk-compare-good{border:1px solid rgba(225,183,103,.3);border-left:3px solid var(--guld)}
.interior .legacy-content .pk-prompt{background:#0e2318;border:1px solid rgba(225,183,103,.38);border-left:3px solid var(--guld);padding:14px 16px}
.interior .legacy-content .pk-prompt.pk-prompt-bad{background:rgba(238,235,225,.03);border-color:rgba(238,235,225,.12);border-left-color:rgba(238,235,225,.28)}
.interior .legacy-content .pk-prompt-bad .pk-prompt-label{color:var(--elfenben-3)}
.interior .legacy-content .pk-prompt pre{border:0!important;background:none!important;padding:0!important;margin:0!important;box-shadow:none!important}
/* G7 runda 4 (29/10): kursen får 1120 px som stationen, lektionstexten blir bredare och nyhetsbrevet följer samma kant */
.interior .interior-layout:has(.pk-hero):has(>.interior-aside){max-width:1120px;padding:0}
.interior .legacy-content:has(.pk-hero) .pk-wrap{max-width:none;gap:48px}
.interior .legacy-content:has(.pk-hero) #nyhetsbrev .container{padding-inline:var(--kant)}

/* tillgänglighet 29/10: knappens mörka text vinner över länkfärgen, etiketterna når 4,5:1 */
.interior a.pk-cert-cta,.interior .prose a.pk-cert-cta,.interior .legacy-content a.pk-cert-cta{color:#07090c!important;text-decoration:none!important}
.pk-progress-label{color:rgba(238,235,225,.66)!important}
.pk-compare-bad .pk-compare-label{color:rgba(238,235,225,.66)!important}

.interior .legacy-content a.pk-overview-card{display:block;color:inherit;text-decoration:none}
.interior .legacy-content a.pk-overview-card:focus-visible{outline:2px solid #e1b767;outline-offset:2px}
.interior .legacy-content .pk-lesson{scroll-margin-top:96px}
