/* Stilar som lærarane kan velje mellom. «Plakat» er grunnstilen i stil.css; dei andre
   skriv over fargar, skrift og pynt. Utskrifta av oppgåvearket er lik i alle stilane. */

/* ================= Art Deco ================= */
[data-tema="deco"] {
  --papir: #f2ead8;
  --flate: #fbf7ee;
  --flate-2: #e9dfc8;
  --blekk: #16181f;
  --dempa: #5d5747;
  --linje: #cdbd94;
  --rust: #a8822f;
  --rust-mork: #7c5f1f;
  --rust-lys: #efe2bf;
  --oliven: #1f5c5a;
  --oliven-lys: #d7e6e2;
  --paa-aksent: #fff;
  --topp: rgba(22, 24, 31, .97);
  --botn: #16181f;
  --overskrift: "Limelight", "Poiret One", Georgia, serif;
  --brodtekst: "Jost", "Futura", "Century Gothic", system-ui, sans-serif;
}
[data-tema="deco"] body { background: var(--papir); }
[data-tema="deco"] h1, [data-tema="deco"] h2, [data-tema="deco"] h3 { letter-spacing: .04em; line-height: 1.05; }
[data-tema="deco"] .topp { border-bottom: 0; box-shadow: 0 3px 0 var(--rust), 0 6px 0 var(--blekk), 0 8px 0 var(--rust); }
[data-tema="deco"] .logo { color: #f2ead8; letter-spacing: .08em; font-size: 26px; }
[data-tema="deco"] .logo span { color: #d4b264; }
[data-tema="deco"] .meny a { color: #e8dcc0; }
[data-tema="deco"] .meny a.aktiv { border-bottom-color: #d4b264; color: #fff; }
[data-tema="deco"] .malval, [data-tema="deco"] .stilval, [data-tema="deco"] .las-att { color: #b9ad90; }
[data-tema="deco"] .malval button { background: transparent; color: #e8dcc0; border-color: #4a4636; }
[data-tema="deco"] .malval button.valt { background: #d4b264; border-color: #d4b264; color: var(--blekk); }
[data-tema="deco"] .stilval select { background: #22252e; color: #e8dcc0; border-color: #4a4636; }
/* Solstråler bak den store overskrifta */
[data-tema="deco"] .helt.stor h1 {
  font-size: clamp(46px, 6.8vw, 96px); line-height: 1.05;
  border-right: 0; box-shadow: 4px 0 0 var(--papir), 6px 0 0 var(--rust), 10px 0 0 var(--papir), 12px 0 0 var(--rust);
  background: repeating-conic-gradient(from 180deg at 100% 100%, rgba(168, 130, 47, .13) 0 3deg, transparent 3deg 9deg);
}
[data-tema="deco"] .helt h1 em, [data-tema="deco"] h2 em { color: var(--rust); }
[data-tema="deco"] .detalj h1 { font-size: clamp(34px, 5vw, 58px); }
[data-tema="deco"] .sokefelt input { border-bottom: 3px double var(--rust); border-bottom-width: 5px; background: var(--flate); }
[data-tema="deco"] .snarvegar button { border: 1px solid var(--rust); border-radius: 0; letter-spacing: .06em; text-transform: uppercase; font-size: 12px; font-weight: 500; }
[data-tema="deco"] .gruppe h3 { letter-spacing: .1em; font-size: 18px; border-bottom: 3px double var(--rust); }
[data-tema="deco"] .kort { border: 1px solid var(--linje); border-left: 1px solid var(--linje); outline: 1px solid var(--linje); outline-offset: 3px; margin-bottom: 18px; }
[data-tema="deco"] .kort::before { content: ""; position: absolute; left: 0; top: 0; width: 14px; height: 14px;
  background: linear-gradient(135deg, var(--rust) 0 50%, transparent 50%); }
[data-tema="deco"] .kort:hover { transform: none; outline-color: var(--rust); border-color: var(--rust); }
[data-tema="deco"] .kort h2 { font-family: var(--brodtekst); font-weight: 500; letter-spacing: .01em; }
[data-tema="deco"] .merke.type { background: var(--blekk); color: #e9d49b; }
[data-tema="deco"] .knapp { border-color: var(--blekk); letter-spacing: .16em; font-weight: 500; }
[data-tema="deco"] .knapp.hoved { background: var(--blekk); border-color: var(--blekk); color: #e9d49b; }
[data-tema="deco"] .knapp.hoved:hover { background: var(--rust); border-color: var(--rust); color: #fff; }
[data-tema="deco"] .oppgavetekst { border: 1px solid var(--linje); outline: 1px solid var(--rust); outline-offset: 5px; border-left-width: 1px; }
[data-tema="deco"] .fagblokk h2 { text-align: center; border-bottom: 0; display: flex; align-items: center; gap: 22px; }
[data-tema="deco"] .fagblokk h2::before, [data-tema="deco"] .fagblokk h2::after { content: ""; flex: 1; height: 7px;
  border-top: 1px solid var(--rust); border-bottom: 3px solid var(--rust); }
[data-tema="deco"] .eksamenkort { text-align: center; border: 1px solid var(--linje); }
[data-tema="deco"] .eksamenkort b { font-family: var(--overskrift); font-size: 26px; letter-spacing: .06em; }
[data-tema="deco"] .eksamenkort:hover { background: var(--blekk); }
[data-tema="deco"] .eksamenkort:hover b { color: #e9d49b; }
[data-tema="deco"] .samling-rad .nr { color: var(--rust); }
[data-tema="deco"] .botnlinje b { color: #e9d49b; }
[data-tema="deco"] .botnlinje .knapp.hoved { background: #d4b264; border-color: #d4b264; color: var(--blekk); }

/* ================= Høgnorsk ================= */
[data-tema="hognorsk"] {
  --papir: #efe3c8;
  --flate: #f8f0dc;
  --flate-2: #e6d6b3;
  --blekk: #2a1c10;
  --dempa: #6b5537;
  --linje: #cbb68c;
  --rust: #9b1d14;
  --rust-mork: #761209;
  --rust-lys: #f0d6c4;
  --oliven: #3e5a35;
  --oliven-lys: #dfe5cf;
  --paa-aksent: #f8f0dc;
  --topp: rgba(239, 227, 200, .96);
  --botn: #2a1c10;
  --overskrift: "UnifrakturMaguntia", "Old English Text MT", Georgia, serif;
  --brodtekst: "EB Garamond", Garamond, Georgia, "Times New Roman", serif;
}
[data-tema="hognorsk"] body {
  font-size: 19px;
  background: var(--papir) radial-gradient(ellipse at 50% 0, rgba(255, 250, 235, .7), transparent 70%) no-repeat;
}
[data-tema="hognorsk"] h1, [data-tema="hognorsk"] h2, [data-tema="hognorsk"] h3 { text-transform: none; letter-spacing: 0; line-height: 1.1; }
/* Mindre overskrifter i kapitélar; frakturen er for dei store */
[data-tema="hognorsk"] .gruppe h3, [data-tema="hognorsk"] .fagblokk h2, [data-tema="hognorsk"] .detalj h2,
[data-tema="hognorsk"] .modal-topp h2, [data-tema="hognorsk"] .eksamenkort b { font-family: "IM Fell English SC", var(--brodtekst); }
[data-tema="hognorsk"] .topp { border-bottom: 0; box-shadow: 0 1px 0 var(--blekk), 0 4px 0 var(--papir), 0 5px 0 var(--blekk); }
[data-tema="hognorsk"] .logo { font-size: 30px; text-transform: none; }
[data-tema="hognorsk"] .meny a { font-family: "IM Fell English SC", serif; text-transform: none; letter-spacing: .04em; font-size: 18px; font-weight: 400; }
[data-tema="hognorsk"] .helt.stor h1 { font-size: clamp(60px, 9vw, 128px); border-right: 0; text-align: center; padding-right: 30px;
  background: linear-gradient(var(--blekk), var(--blekk)) right 10% / 1px 80% no-repeat; }
[data-tema="hognorsk"] .helt.stor h1::after { content: "❦"; display: block; font-family: var(--brodtekst); font-size: .3em; color: var(--rust); margin-top: 10px; }
[data-tema="hognorsk"] .helt p { font-style: italic; }
[data-tema="hognorsk"] .detalj h1 { font-size: clamp(40px, 5.5vw, 70px); }
[data-tema="hognorsk"] .sokefelt input { border: 1px solid var(--blekk); box-shadow: inset 0 0 0 3px var(--flate), inset 0 0 0 4px var(--linje); font-style: italic; }
[data-tema="hognorsk"] .snarvegar button { font-family: var(--brodtekst); font-size: 16px; font-style: italic; border-color: var(--linje); }
[data-tema="hognorsk"] .gruppe h3 { font-size: 20px; text-align: center; border-bottom: 0; }
[data-tema="hognorsk"] .gruppe h3::after { content: "~ ❧ ~"; display: block; font-size: 13px; color: var(--rust); }
[data-tema="hognorsk"] .kort { border: 1px solid var(--linje); border-left: 1px solid var(--linje); box-shadow: inset 0 0 0 4px var(--flate), inset 0 0 0 5px var(--linje); padding: 24px 26px 20px; }
[data-tema="hognorsk"] .kort:hover { transform: none; border-color: var(--rust); }
[data-tema="hognorsk"] .kort h2 { font-family: var(--brodtekst); font-size: 24px; font-weight: 600; }
[data-tema="hognorsk"] .kort p.samandrag { font-style: italic; border-left: 0; padding-left: 0; }
[data-tema="hognorsk"] .merke { font-variant: small-caps; font-size: 15px; letter-spacing: .03em; background: transparent !important; border: 1px solid currentColor; padding: 0 8px; }
[data-tema="hognorsk"] .knapp { font-family: var(--brodtekst); text-transform: none; letter-spacing: .02em; font-size: 16px; font-weight: 600; border-width: 1px; }
[data-tema="hognorsk"] .knapp.hoved::after { content: "☞"; font-size: 17px; }
[data-tema="hognorsk"] .tilbake { font-family: var(--brodtekst); text-transform: none; letter-spacing: 0; font-size: 17px; font-style: italic; }
[data-tema="hognorsk"] .oppgavetekst { border: 1px solid var(--linje); border-left: 1px solid var(--linje); font-size: 20px; }
/* Raud initial i fraktur */
[data-tema="hognorsk"] .oppgavetekst > p:first-child::first-letter { font-family: "UnifrakturMaguntia", serif; color: var(--rust);
  float: left; font-size: 3.6em; line-height: .82; margin: 6px 10px 0 0; }
[data-tema="hognorsk"] .oppgavetekst > :nth-child(2) { clear: left; padding-top: 4px; }
[data-tema="hognorsk"] .fagblokk h2 { text-align: center; border-bottom: 0; font-size: 40px; }
[data-tema="hognorsk"] .fagblokk h2::after { content: "❦"; display: block; font-size: 22px; color: var(--rust); }
[data-tema="hognorsk"] .eksamenkort { text-align: center; }
[data-tema="hognorsk"] .eksamenkort b { font-size: 26px; text-transform: none; }
[data-tema="hognorsk"] .eksamenkort:hover { background: var(--rust); border-color: var(--rust); }
[data-tema="hognorsk"] .samling-rad .nr { font-family: "UnifrakturMaguntia", serif; }
[data-tema="hognorsk"] .botnlinje b { font-family: "UnifrakturMaguntia", serif; color: #e9b9a9; }

/* ================= Oleana ================= */
[data-tema="oleana"] {
  --papir: #fbf4ec;
  --flate: #fffaf5;
  --flate-2: #f4e6dc;
  --blekk: #3b1f35;
  --dempa: #7a5d6e;
  --linje: #ead3cf;
  --rust: #b0275b;
  --rust-mork: #861b44;
  --rust-lys: #f8dce6;
  --oliven: #5f7a32;
  --oliven-lys: #e4ecd3;
  --paa-aksent: #fff;
  --topp: rgba(251, 244, 236, .96);
  --botn: #4a2341;
  --overskrift: "Cormorant Garamond", Garamond, Georgia, serif;
  --brodtekst: "Mulish", "Segoe UI", system-ui, sans-serif;
  /* Selburoser i strikkebord */
  --rose: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32'%3E%3Crect width='32' height='32' fill='%23b0275b'/%3E%3Cpolygon points='16,4 18,11.2 24.5,7.5 20.8,14 28,16 20.8,18 24.5,24.5 18,20.8 16,28 14,20.8 7.5,24.5 11.2,18 4,16 11.2,14 7.5,7.5 14,11.2' fill='%23fbf4ec'/%3E%3Crect x='14.5' y='14.5' width='3' height='3' fill='%23b0275b'/%3E%3Crect x='-2' y='-2' width='4' height='4' fill='%23e8b64c' transform='rotate(45 0 0)'/%3E%3Crect x='30' y='-2' width='4' height='4' fill='%23e8b64c'/%3E%3Crect x='-2' y='30' width='4' height='4' fill='%23e8b64c'/%3E%3Crect x='30' y='30' width='4' height='4' fill='%23e8b64c'/%3E%3C/svg%3E");
}
[data-tema="oleana"] body { background: var(--papir); }
[data-tema="oleana"] h1, [data-tema="oleana"] h2, [data-tema="oleana"] h3 { text-transform: none; letter-spacing: -.01em; line-height: 1; font-weight: 700; }
[data-tema="oleana"] h1 em, [data-tema="oleana"] h2 em { font-style: italic; font-weight: 500; }
[data-tema="oleana"] .topp { border-bottom: 0; }
[data-tema="oleana"] .topp::after { content: ""; position: absolute; left: 0; right: 0; bottom: -16px; height: 16px; background: var(--rose) 0 0 / 16px 16px repeat-x; }
[data-tema="oleana"] body::after { content: ""; display: block; height: 32px; background: var(--rose) 0 0 / 32px 32px repeat-x; }
[data-tema="oleana"] main { padding-top: 52px; }
[data-tema="oleana"] .logo { text-transform: none; font-size: 30px; font-weight: 700; font-style: italic; }
[data-tema="oleana"] .logo span { font-weight: 500; }
[data-tema="oleana"] .meny a { font-family: var(--brodtekst); text-transform: none; letter-spacing: .01em; font-size: 16px; font-weight: 600; border-radius: 999px; border-bottom: 0; padding: 7px 16px; }
[data-tema="oleana"] .meny a.aktiv { background: var(--blekk); color: var(--papir); }
[data-tema="oleana"] .malval button, [data-tema="oleana"] .stilval select { border-radius: 999px; }
[data-tema="oleana"] .malval button.valt { background: var(--rust); border-color: var(--rust); }
[data-tema="oleana"] .helt.stor h1 { font-size: clamp(64px, 10vw, 146px); border-right: 0; line-height: .9; padding-right: 50px; }
[data-tema="oleana"] .helt.stor .hogre { border-left: 0; padding-left: 50px; position: relative; }
[data-tema="oleana"] .helt.stor .hogre::before { content: ""; position: absolute; left: 0; top: 30px; bottom: 20px; width: 16px;
  background: var(--rose) 0 0 / 16px 16px repeat-y; border-radius: 4px; }
[data-tema="oleana"] .detalj h1 { font-size: clamp(44px, 6vw, 80px); }
[data-tema="oleana"] .detalj h2, [data-tema="oleana"] .fagblokk h2 { font-style: italic; }
[data-tema="oleana"] .sokefelt input { border: 2px solid var(--linje); border-radius: 999px; padding: 16px 26px; }
[data-tema="oleana"] .sokefelt input:focus { border-color: var(--rust); }
[data-tema="oleana"] .snarvegar button { border-radius: 999px; border-color: var(--rust-lys); background: var(--rust-lys); color: var(--rust-mork); }
[data-tema="oleana"] .gruppe h3 { font-size: 26px; font-style: italic; border-bottom: 2px dotted var(--rust); }
[data-tema="oleana"] .kort { border: 0; border-radius: 22px; box-shadow: 0 1px 0 var(--linje), 0 10px 28px rgba(107, 39, 77, .08); padding: 22px 26px 20px; }
[data-tema="oleana"] .kort:hover { transform: translateY(-2px); box-shadow: 0 0 0 2px var(--rust-lys), 0 14px 32px rgba(107, 39, 77, .14); }
[data-tema="oleana"] .kort h2 { font-family: var(--overskrift); font-size: 27px; font-weight: 700; letter-spacing: 0; }
[data-tema="oleana"] .kort p.samandrag { border-left: 0; padding-left: 0; font-style: italic; }
[data-tema="oleana"] .merke { border-radius: 999px; }
[data-tema="oleana"] .merke.form { background: #fbe7c4; color: #7a4f08; }
[data-tema="oleana"] .knapp { border-radius: 999px; text-transform: none; letter-spacing: .01em; font-size: 15px; border-width: 2px; }
[data-tema="oleana"] .knapp.liten { font-size: 13px; }
[data-tema="oleana"] .knapp.hoved::after { content: "✿"; font-size: 15px; }
[data-tema="oleana"] .tilbake { text-transform: none; letter-spacing: 0; font-size: 16px; }
[data-tema="oleana"] .oppgavetekst { border: 0; border-radius: 22px; padding-top: 48px;
  background: var(--rose) 0 0 / 16px 16px repeat-x, var(--flate); box-shadow: 0 10px 28px rgba(107, 39, 77, .08); }
[data-tema="oleana"] .vedlegg, [data-tema="oleana"] .samling-rad, [data-tema="oleana"] .innstillingar, [data-tema="oleana"] .info { border-radius: 18px; }
[data-tema="oleana"] .fagblokk h2 { border-bottom: 0; font-size: 56px; }
[data-tema="oleana"] .fagblokk h2::after { content: ""; display: block; height: 16px; margin-top: 8px; background: var(--rose) 0 0 / 16px 16px repeat-x; border-radius: 3px; }
[data-tema="oleana"] .eksamenkort { border-radius: 18px; border: 0; box-shadow: 0 1px 0 var(--linje), 0 6px 18px rgba(107, 39, 77, .07); }
[data-tema="oleana"] .eksamenkort b { font-size: 32px; font-weight: 700; text-transform: none; }
[data-tema="oleana"] .eksamenkort:hover { background: var(--rust); color: #fff; }
[data-tema="oleana"] .eksamenkort:hover span { color: #ffd9e6; }
[data-tema="oleana"] .samling-rad .nr { font-style: italic; }
[data-tema="oleana"] .botnlinje { border-radius: 999px; padding-left: 26px; }
[data-tema="oleana"] .botnlinje b { color: #ffb7cf; }
[data-tema="oleana"] .modal { border-radius: 22px; }

/* ================= Kladdebok ================= */
[data-tema="kladdebok"] {
  --papir: #fdfdf8; --flate: #ffffff; --flate-2: #eef3fb; --blekk: #1e2a52; --dempa: #5a6585; --linje: #c9d6ea;
  --rust: #d1383d; --rust-mork: #a92429; --rust-lys: #fde2e1; --oliven: #2f7d4f; --oliven-lys: #dcf0e3;
  --paa-aksent: #fff; --topp: rgba(253, 253, 248, .95); --botn: #1e2a52;
  --overskrift: "Kalam", "Comic Sans MS", cursive; --brodtekst: "Nunito", "Segoe UI", system-ui, sans-serif;
}
[data-tema="kladdebok"] body {
  background-color: var(--papir);
  background-image: linear-gradient(90deg, transparent 54px, rgba(209, 56, 61, .55) 54px 56px, transparent 56px),
    linear-gradient(rgba(80, 130, 200, .16) 1px, transparent 1px), linear-gradient(90deg, rgba(80, 130, 200, .16) 1px, transparent 1px);
  background-size: auto, 22px 22px, 22px 22px; background-attachment: fixed;
}
[data-tema="kladdebok"] h1, [data-tema="kladdebok"] h2, [data-tema="kladdebok"] h3 { text-transform: none; letter-spacing: 0; line-height: 1.05; font-weight: 700; }
[data-tema="kladdebok"] h1 em, [data-tema="kladdebok"] h2 em { color: inherit; background: linear-gradient(transparent 52%, #fff27a 52% 92%, transparent 92%); padding: 0 .1em; }
[data-tema="kladdebok"] .logo { text-transform: none; font-size: 30px; }
[data-tema="kladdebok"] .meny a { text-transform: none; letter-spacing: 0; font-size: 16px; }
[data-tema="kladdebok"] .meny a.aktiv { border-bottom: 3px solid var(--rust); border-radius: 0 0 40% 60% / 0 0 100% 100%; }
[data-tema="kladdebok"] .helt.stor h1 { transform: rotate(-2deg); border-right: 0; font-size: clamp(60px, 9vw, 130px); }
[data-tema="kladdebok"] .sokefelt input { border: 2px solid var(--blekk); border-radius: 255px 15px 225px 15px / 15px 225px 15px 255px; }
[data-tema="kladdebok"] .snarvegar button, [data-tema="kladdebok"] .knapp { border-radius: 255px 15px 225px 15px / 15px 225px 15px 255px; text-transform: none; letter-spacing: 0; font-size: 15px; }
[data-tema="kladdebok"] .gruppe h3 { font-size: 22px; border-bottom: 2px solid var(--rust); }
[data-tema="kladdebok"] .kort { border: 1px solid var(--linje); border-left: 1px solid var(--linje); box-shadow: 2px 3px 0 rgba(30, 42, 82, .08); }
[data-tema="kladdebok"] .kort::before { content: ""; position: absolute; top: -9px; left: 46%; width: 90px; height: 22px; transform: rotate(-3deg);
  background: rgba(255, 236, 150, .75); box-shadow: 0 1px 2px rgba(0, 0, 0, .08); }
[data-tema="kladdebok"] .kort:nth-child(even)::before { transform: rotate(4deg); left: 30%; background: rgba(170, 220, 255, .7); }
[data-tema="kladdebok"] .kort:hover { transform: rotate(-.4deg); }
[data-tema="kladdebok"] .kort h2 { font-family: var(--overskrift); font-size: 24px; }
[data-tema="kladdebok"] .merke { border-radius: 3px; }
[data-tema="kladdebok"] .merke.type { background: #ffd6e7; color: #9d1d4f; }
[data-tema="kladdebok"] .merke.epoke { background: #d4f5d0; color: #23602d; }
[data-tema="kladdebok"] .merke.form { background: #fff3a8; color: #6b5800; }
[data-tema="kladdebok"] .tilbake { text-transform: none; letter-spacing: 0; font-size: 16px; }
[data-tema="kladdebok"] .oppgavetekst { border-left: 1px solid var(--linje); background: #fff repeating-linear-gradient(transparent 0 29px, rgba(80, 130, 200, .22) 29px 30px); line-height: 30px; }
[data-tema="kladdebok"] .eksamenkort b, [data-tema="kladdebok"] .fagblokk h2 { text-transform: none; }
[data-tema="kladdebok"] .fagblokk h2 { border-bottom: 3px solid var(--rust); display: inline-block; }

/* ================= Tavle ================= */
[data-tema="tavle"] {
  --papir: #2f4a3a; --flate: #35523f; --flate-2: #3e5d48; --blekk: #f1f1e8; --paa-blekk: #2f4a3a; --dempa: #b9c7b8;
  --linje: rgba(241, 241, 232, .28); --rust: #f4d35e; --rust-mork: #e8b93a; --rust-lys: rgba(244, 211, 94, .16);
  --oliven: #9ad1f0; --oliven-lys: rgba(154, 209, 240, .16); --paa-aksent: #2f4a3a; --topp: #5b3a22; --botn: #5b3a22;
  --overskrift: "Cabin Sketch", "Chalkboard SE", cursive; --brodtekst: "Patrick Hand", "Comic Sans MS", cursive;
  color-scheme: dark;
}
[data-tema="tavle"] body { font-size: 20px; background: radial-gradient(ellipse at 30% 20%, #3a5a46, transparent 60%), radial-gradient(ellipse at 80% 90%, #29402f, transparent 60%), var(--papir) fixed; }
[data-tema="tavle"] body, [data-tema="tavle"] h1, [data-tema="tavle"] h2 { text-shadow: 0 0 1px rgba(255, 255, 255, .35); }
[data-tema="tavle"] h1, [data-tema="tavle"] h2, [data-tema="tavle"] h3 { text-transform: none; letter-spacing: .01em; line-height: 1.05; font-weight: 700; }
[data-tema="tavle"] .topp { border-bottom: 6px solid #3f2715; box-shadow: inset 0 -2px 0 rgba(255, 255, 255, .08); }
[data-tema="tavle"] .logo { color: #f1f1e8; text-transform: none; font-size: 30px; }
[data-tema="tavle"] .meny a { color: #f1f1e8; text-transform: none; letter-spacing: 0; font-size: 18px; font-weight: 400; }
[data-tema="tavle"] .meny a.aktiv { border-bottom-color: var(--rust); }
[data-tema="tavle"] .malval, [data-tema="tavle"] .stilval, [data-tema="tavle"] .las-att { color: #e8d9c6; }
[data-tema="tavle"] .malval button, [data-tema="tavle"] .stilval select { background: #4a2f1a; border-color: #7a5537; color: #f1f1e8; }
[data-tema="tavle"] .malval button.valt { background: var(--rust); border-color: var(--rust); color: var(--paa-aksent); }
[data-tema="tavle"] .helt.stor h1 { border-right: 2px dashed var(--linje); font-size: clamp(60px, 9vw, 130px); }
[data-tema="tavle"] .sokefelt input { background: transparent; border: 2px solid var(--blekk); border-radius: 4px; color: var(--blekk); font-family: var(--brodtekst); font-size: 20px; }
[data-tema="tavle"] .snarvegar button { border: 2px solid var(--linje); border-radius: 4px; font-size: 17px; font-weight: 400; color: var(--blekk); }
[data-tema="tavle"] .gruppe h3 { font-size: 24px; border-bottom: 2px dashed var(--linje); }
[data-tema="tavle"] .kort { background: transparent; border: 2px solid var(--linje); border-radius: 4px; }
[data-tema="tavle"] .kort:hover { border-color: var(--rust); transform: none; }
[data-tema="tavle"] .kort h2 { font-family: var(--overskrift); font-size: 26px; }
[data-tema="tavle"] .kort p.samandrag { border-left-color: var(--rust); }
[data-tema="tavle"] .merke { background: transparent !important; border: 1.5px solid currentColor; font-weight: 400; font-size: 16px; }
[data-tema="tavle"] .merke.type { color: #f4d35e; }
[data-tema="tavle"] .merke.epoke { color: #9ad1f0; }
[data-tema="tavle"] .merke.form { color: #f1f1e8; }
[data-tema="tavle"] .knapp { border: 2px solid var(--blekk); border-radius: 4px; text-transform: none; letter-spacing: 0; font-weight: 400; font-size: 17px; }
[data-tema="tavle"] .knapp.hoved:hover, [data-tema="tavle"] .botnlinje .knapp.hoved { color: var(--paa-aksent); }
[data-tema="tavle"] .tal { color: var(--paa-aksent); }
[data-tema="tavle"] .tilbake { text-transform: none; letter-spacing: 0; font-size: 18px; color: var(--blekk); }
[data-tema="tavle"] .oppgavetekst { background: transparent; border: 2px solid var(--linje); border-left: 6px solid var(--rust); }
[data-tema="tavle"] .oppgavetekst em { color: var(--dempa); }
[data-tema="tavle"] .vedlegg, [data-tema="tavle"] .samling-rad, [data-tema="tavle"] .eksamenkort { background: transparent; border: 2px solid var(--linje); }
[data-tema="tavle"] .eksamenkort b, [data-tema="tavle"] .fagblokk h2 { text-transform: none; }
[data-tema="tavle"] .fagblokk h2 { border-bottom: 2px dashed var(--linje); }
[data-tema="tavle"] .modal { border: 8px solid #5b3a22; }

/* ================= Avis ================= */
[data-tema="avis"] {
  --papir: #f3efe4; --flate: #f8f5ec; --flate-2: #e8e2d2; --blekk: #141414; --dempa: #575449; --linje: #bdb5a1;
  --rust: #b3121b; --rust-mork: #880c13; --rust-lys: #f4d9d6; --oliven: #333; --oliven-lys: #e2ddd0;
  --paa-aksent: #fff; --topp: rgba(243, 239, 228, .97); --botn: #141414;
  --overskrift: "Playfair Display", "Times New Roman", serif; --brodtekst: "Source Serif 4", Georgia, serif;
}
[data-tema="avis"] body { font-size: 18px; }
[data-tema="avis"] h1, [data-tema="avis"] h2, [data-tema="avis"] h3 { text-transform: none; letter-spacing: -.01em; line-height: 1.02; font-weight: 900; }
[data-tema="avis"] h1 em, [data-tema="avis"] h2 em { font-style: italic; font-weight: 700; }
[data-tema="avis"] .topp { border-bottom: 0; box-shadow: 0 2px 0 var(--blekk), 0 5px 0 var(--papir), 0 6px 0 var(--blekk); }
[data-tema="avis"] .logo { font-family: "UnifrakturCook", "Old English Text MT", serif; text-transform: none; font-size: 34px; }
[data-tema="avis"] .logo span { color: var(--blekk); }
[data-tema="avis"] .meny a { font-family: var(--brodtekst); font-weight: 600; letter-spacing: .14em; font-size: 12px; }
[data-tema="avis"] .meny a.aktiv { border-bottom-color: var(--blekk); }
[data-tema="avis"] .helt.stor { border-bottom: 1px solid var(--blekk); padding-bottom: 14px; }
[data-tema="avis"] .helt.stor h1 { font-size: clamp(56px, 8.5vw, 124px); border-right: 1px solid var(--blekk); }
[data-tema="avis"] .helt.stor .hogre p:first-child::first-letter { font-family: var(--overskrift); font-weight: 900; font-size: 3.4em; float: left; line-height: .8; margin: 6px 8px 0 0; color: var(--blekk); }
[data-tema="avis"] .sokefelt input { border: 1px solid var(--blekk); border-bottom-width: 3px; font-family: var(--brodtekst); font-style: italic; }
[data-tema="avis"] .snarvegar button { font-family: var(--brodtekst); border-color: var(--blekk); font-variant: small-caps; letter-spacing: .04em; font-size: 16px; }
[data-tema="avis"] .filtre { border-right: 1px solid var(--blekk); padding-right: 22px; }
[data-tema="avis"] .gruppe h3 { font-family: var(--brodtekst); font-weight: 700; font-size: 13px; text-transform: uppercase; letter-spacing: .18em; border-bottom: 0; border-top: 3px double var(--blekk); padding-top: 6px; }
[data-tema="avis"] .kort { background: transparent; border: 0; border-top: 1px solid var(--blekk); padding: 18px 0 16px; margin: 0; }
[data-tema="avis"] .kort:hover { transform: none; background: rgba(0, 0, 0, .025); }
[data-tema="avis"] .kort .legg { top: 16px; right: 0; }
[data-tema="avis"] .kort h2 { font-family: var(--overskrift); font-weight: 700; font-size: 26px; line-height: 1.1; }
[data-tema="avis"] .kort .kjelde { text-transform: uppercase; letter-spacing: .1em; font-size: 12px; }
[data-tema="avis"] .kort p.samandrag { border-left: 0; padding-left: 0; text-align: justify; hyphens: auto; }
[data-tema="avis"] .merke { background: transparent !important; color: var(--dempa) !important; padding: 0; margin-right: 12px; font-style: italic; font-weight: 400; }
[data-tema="avis"] .merke + .merke::before { content: "· "; }
[data-tema="avis"] .knapp { border-width: 1px; font-family: var(--brodtekst); letter-spacing: .12em; font-weight: 600; }
[data-tema="avis"] .knapp.hoved { background: var(--blekk); border-color: var(--blekk); color: var(--papir); }
[data-tema="avis"] .knapp.hoved:hover { background: var(--rust); border-color: var(--rust); }
[data-tema="avis"] .detalj h1 { font-size: clamp(42px, 6vw, 76px); border-bottom: 1px solid var(--blekk); padding-bottom: 12px; }
[data-tema="avis"] .oppgavetekst { background: transparent; border: 0; padding: 0; text-align: justify; hyphens: auto; }
@media (min-width: 900px) { [data-tema="avis"] .oppgavetekst { columns: 2; column-gap: 40px; column-rule: 1px solid var(--linje); } }
[data-tema="avis"] .oppgavetekst > p:first-child::first-letter { font-family: var(--overskrift); font-weight: 900; font-size: 3.2em; float: left; line-height: .8; margin: 6px 8px 0 0; }
[data-tema="avis"] .fagblokk h2 { border-bottom: 0; border-top: 4px double var(--blekk); padding-top: 8px; }
[data-tema="avis"] .eksamenkort { background: transparent; border: 0; border-top: 1px solid var(--blekk); }
[data-tema="avis"] .eksamenkort b { font-family: var(--overskrift); font-weight: 900; text-transform: none; font-size: 28px; }

/* ================= Bauhaus ================= */
[data-tema="bauhaus"] {
  --papir: #f3efe6; --flate: #ffffff; --flate-2: #ebe5d8; --blekk: #111111; --dempa: #444; --linje: #111111;
  --rust: #e03c31; --rust-mork: #b52a21; --rust-lys: #fbd9d6; --oliven: #1f4e9c; --oliven-lys: #d6e1f5; --gul: #f2c230;
  --paa-aksent: #fff; --topp: #f2c230; --botn: #1f4e9c;
  --overskrift: "Archivo Black", "Arial Black", sans-serif; --brodtekst: "Archivo", "Helvetica Neue", Arial, sans-serif;
}
[data-tema="bauhaus"] h1, [data-tema="bauhaus"] h2, [data-tema="bauhaus"] h3 { text-transform: none; letter-spacing: -.02em; line-height: .98; }
[data-tema="bauhaus"] .helt h1, [data-tema="bauhaus"] .logo, [data-tema="bauhaus"] .meny a { text-transform: lowercase; }
[data-tema="bauhaus"] .topp { border-bottom: 4px solid var(--blekk); }
[data-tema="bauhaus"] .logo { font-size: 26px; }
[data-tema="bauhaus"] .logo span { color: var(--oliven); }
[data-tema="bauhaus"] .meny a { letter-spacing: 0; font-size: 16px; }
[data-tema="bauhaus"] .meny a.aktiv { background: var(--blekk); color: var(--gul); border-bottom-color: var(--blekk); }
[data-tema="bauhaus"] .malval button.valt { background: var(--oliven); border-color: var(--oliven); }
[data-tema="bauhaus"] .helt.stor h1 { border-right: 4px solid var(--blekk); font-size: clamp(56px, 8.5vw, 124px);
  background:
    radial-gradient(circle at 18% 24%, var(--rust) 0 74px, transparent 75px),
    linear-gradient(var(--oliven), var(--oliven)) 82% 92% / 96px 96px no-repeat,
    conic-gradient(from 150deg at 50% 0, var(--gul) 0 60deg, transparent 60deg) 8% 96% / 120px 104px no-repeat; }
[data-tema="bauhaus"] .helt h1 em { color: var(--oliven); }
[data-tema="bauhaus"] .sokefelt input { border: 4px solid var(--blekk); background: #fff; font-weight: 600; }
[data-tema="bauhaus"] .snarvegar button { border: 3px solid var(--blekk); font-weight: 700; }
[data-tema="bauhaus"] .snarvegar button:nth-child(3n+1):hover { background: var(--rust); color: #fff; }
[data-tema="bauhaus"] .snarvegar button:nth-child(3n+2):hover { background: var(--oliven); color: #fff; }
[data-tema="bauhaus"] .snarvegar button:nth-child(3n):hover { background: var(--gul); color: var(--blekk); }
[data-tema="bauhaus"] .gruppe h3 { font-size: 22px; border-bottom: 4px solid var(--blekk); }
[data-tema="bauhaus"] .kort { border: 3px solid var(--blekk); border-left: 16px solid var(--rust); }
[data-tema="bauhaus"] .kort:nth-child(3n+2) { border-left-color: var(--oliven); }
[data-tema="bauhaus"] .kort:nth-child(3n) { border-left-color: var(--gul); }
[data-tema="bauhaus"] .kort:hover { transform: translate(-3px, -3px); box-shadow: 6px 6px 0 var(--blekk); border-left-color: inherit; }
[data-tema="bauhaus"] .kort h2 { font-family: var(--overskrift); font-weight: 400; font-size: 23px; letter-spacing: -.01em; }
[data-tema="bauhaus"] .kort p.samandrag { border-left: 4px solid var(--gul); }
[data-tema="bauhaus"] .merke { border-radius: 999px; }
[data-tema="bauhaus"] .merke.form { background: var(--gul); }
[data-tema="bauhaus"] .knapp { border-width: 3px; }
[data-tema="bauhaus"] .knapp.hoved { color: #fff; }
[data-tema="bauhaus"] .knapp.hoved::after { content: "●"; font-size: 12px; }
[data-tema="bauhaus"] .oppgavetekst { border: 3px solid var(--blekk); border-left: 16px solid var(--oliven); }
[data-tema="bauhaus"] .fagblokk h2 { border-bottom: 6px solid var(--blekk); }
[data-tema="bauhaus"] .eksamenkort { border: 3px solid var(--blekk); }
[data-tema="bauhaus"] .eksamenkort b { font-family: var(--overskrift); text-transform: none; font-size: 26px; }
[data-tema="bauhaus"] .eksamenkort:nth-child(3n+1):hover { background: var(--rust); border-color: var(--rust); }
[data-tema="bauhaus"] .eksamenkort:nth-child(3n+2):hover { background: var(--oliven); border-color: var(--oliven); }
[data-tema="bauhaus"] .eksamenkort:nth-child(3n):hover { background: var(--gul); border-color: var(--gul); color: var(--blekk); }
[data-tema="bauhaus"] .botnlinje b { color: var(--gul); }
[data-tema="bauhaus"] .botnlinje .knapp.hoved { color: #fff; }

/* ================= Syttital ================= */
[data-tema="syttital"] {
  --papir: #f6e7c8; --flate: #fbf1dc; --flate-2: #efd9ad; --blekk: #4a2a17; --dempa: #7d5a3c; --linje: #e0c08a;
  --rust: #d9622b; --rust-mork: #a9441a; --rust-lys: #f7d2b6; --oliven: #6f7d22; --oliven-lys: #e6e6b8; --sennep: #e1a730;
  --paa-aksent: #fbf1dc; --paa-blekk: #f6e7c8; --topp: rgba(246, 231, 200, .97); --botn: #4a2a17;
  --overskrift: "Shrikhand", "Cooper Black", Georgia, serif; --brodtekst: "Work Sans", "Helvetica Neue", Arial, sans-serif;
}
[data-tema="syttital"] h1, [data-tema="syttital"] h2, [data-tema="syttital"] h3 { text-transform: none; letter-spacing: 0; line-height: 1.02; }
[data-tema="syttital"] .topp { border-bottom: 0; box-shadow: 0 5px 0 var(--sennep), 0 10px 0 var(--rust), 0 15px 0 var(--rust-mork), 0 20px 0 var(--blekk); margin-bottom: 20px; }
[data-tema="syttital"] .logo { text-transform: none; font-size: 28px; }
[data-tema="syttital"] .meny a { text-transform: none; letter-spacing: 0; font-size: 16px; border-radius: 999px; border-bottom: 0; }
[data-tema="syttital"] .meny a.aktiv { background: var(--rust); color: var(--paa-aksent); }
[data-tema="syttital"] .malval button, [data-tema="syttital"] .stilval select { border-radius: 999px; }
[data-tema="syttital"] .helt.stor h1 { border-right: 0; font-size: clamp(56px, 8.5vw, 122px); color: var(--blekk);
  text-shadow: 4px 4px 0 var(--sennep), 8px 8px 0 var(--rust); }
[data-tema="syttital"] .helt.stor h1 em { color: var(--oliven); }
[data-tema="syttital"] .sokefelt input { border: 3px solid var(--blekk); border-radius: 999px; padding: 16px 26px; }
[data-tema="syttital"] .snarvegar button { border-radius: 999px; border: 2px solid var(--blekk); font-weight: 600; }
[data-tema="syttital"] .snarvegar button:nth-child(4n+1) { background: var(--sennep); }
[data-tema="syttital"] .snarvegar button:nth-child(4n+2) { background: var(--rust-lys); }
[data-tema="syttital"] .snarvegar button:nth-child(4n+3) { background: var(--oliven-lys); }
[data-tema="syttital"] .gruppe h3 { font-size: 24px; border-bottom: 3px solid var(--rust); }
[data-tema="syttital"] .kort { border: 3px solid var(--blekk); border-radius: 22px; box-shadow: 7px 7px 0 var(--sennep); margin-bottom: 20px; }
[data-tema="syttital"] .kort:nth-child(3n+2) { box-shadow: 7px 7px 0 var(--rust); }
[data-tema="syttital"] .kort:nth-child(3n) { box-shadow: 7px 7px 0 var(--oliven); }
[data-tema="syttital"] .kort:hover { transform: translate(-2px, -2px); border-left-color: var(--blekk); }
[data-tema="syttital"] .kort h2 { font-family: var(--overskrift); font-weight: 400; font-size: 25px; letter-spacing: 0; }
[data-tema="syttital"] .kort p.samandrag { border-left: 0; padding-left: 0; }
[data-tema="syttital"] .merke { border-radius: 999px; border: 1.5px solid currentColor; }
[data-tema="syttital"] .knapp { border-radius: 999px; border-width: 2px; text-transform: none; letter-spacing: 0; font-size: 15px; }
[data-tema="syttital"] .knapp.hoved::after { content: "✺"; font-size: 15px; }
[data-tema="syttital"] .tilbake { text-transform: none; letter-spacing: 0; font-size: 16px; }
[data-tema="syttital"] .oppgavetekst { border: 3px solid var(--blekk); border-radius: 26px; box-shadow: 9px 9px 0 var(--sennep), 18px 18px 0 var(--rust); }
[data-tema="syttital"] .vedlegg, [data-tema="syttital"] .samling-rad, [data-tema="syttital"] .innstillingar, [data-tema="syttital"] .info, [data-tema="syttital"] .eksamenkort { border-radius: 18px; }
[data-tema="syttital"] .eksamenkort { border: 3px solid var(--blekk); }
[data-tema="syttital"] .eksamenkort b { font-family: var(--overskrift); text-transform: none; font-size: 26px; }
[data-tema="syttital"] .fagblokk h2 { border-bottom: 0; text-shadow: 3px 3px 0 var(--sennep); }
[data-tema="syttital"] .botnlinje { border-radius: 999px; }
[data-tema="syttital"] .botnlinje b { color: var(--sennep); }
[data-tema="syttital"] .botnlinje .knapp.hoved { color: var(--paa-aksent); }

/* ================= Nordlys ================= */
[data-tema="nordlys"] {
  --papir: #0b1324; --flate: #121d33; --flate-2: #1a2847; --blekk: #e8eef8; --paa-blekk: #0b1324; --dempa: #9fb0cc; --linje: #263a5e;
  --rust: #5ef2b5; --rust-mork: #33d39a; --rust-lys: rgba(94, 242, 181, .14); --oliven: #b58cff; --oliven-lys: rgba(181, 140, 255, .16);
  --paa-aksent: #0b1324; --topp: rgba(11, 19, 36, .82); --botn: #1a2847;
  --overskrift: "Syne", "Segoe UI", system-ui, sans-serif; --brodtekst: "Manrope", "Segoe UI", system-ui, sans-serif;
  color-scheme: dark;
}
[data-tema="nordlys"] body {
  background:
    radial-gradient(1.2px 1.2px at 40px 60px, rgba(255, 255, 255, .7), transparent 2px) 0 0 / 230px 170px,
    radial-gradient(1px 1px at 150px 120px, rgba(255, 255, 255, .5), transparent 2px) 0 0 / 310px 260px,
    radial-gradient(ellipse 70% 45% at 15% -5%, rgba(94, 242, 181, .28), transparent 65%),
    radial-gradient(ellipse 55% 40% at 70% -10%, rgba(127, 214, 255, .2), transparent 65%),
    radial-gradient(ellipse 50% 40% at 95% 0, rgba(181, 140, 255, .25), transparent 65%),
    var(--papir);
  background-attachment: fixed;
}
[data-tema="nordlys"] h1, [data-tema="nordlys"] h2, [data-tema="nordlys"] h3 { text-transform: none; letter-spacing: -.02em; line-height: 1; font-weight: 800; }
[data-tema="nordlys"] h1 em, [data-tema="nordlys"] h2 em { background: linear-gradient(90deg, #5ef2b5, #7fd6ff 50%, #b58cff); -webkit-background-clip: text; background-clip: text; color: transparent; }
[data-tema="nordlys"] .topp { border-bottom: 1px solid var(--linje); }
[data-tema="nordlys"] .logo { text-transform: none; font-size: 24px; letter-spacing: -.02em; }
[data-tema="nordlys"] .meny a { text-transform: none; letter-spacing: 0; font-size: 15px; }
[data-tema="nordlys"] .helt.stor h1 { font-size: clamp(40px, 5.8vw, 84px); border-right: 1px solid var(--linje); }
[data-tema="nordlys"] .sokefelt input { border: 1px solid var(--linje); border-radius: 14px; background: rgba(18, 29, 51, .8); }
[data-tema="nordlys"] .sokefelt input:focus { box-shadow: 0 0 0 3px rgba(94, 242, 181, .25); }
[data-tema="nordlys"] .snarvegar button { border-radius: 999px; border-color: var(--linje); color: var(--blekk); }
[data-tema="nordlys"] .gruppe h3 { font-size: 20px; border-bottom-color: var(--linje); }
[data-tema="nordlys"] .kort { background: rgba(18, 29, 51, .78); border: 1px solid var(--linje); border-radius: 16px; backdrop-filter: blur(4px); }
[data-tema="nordlys"] .kort:hover { transform: translateY(-2px); border-color: var(--rust); box-shadow: 0 0 28px rgba(94, 242, 181, .16); }
[data-tema="nordlys"] .kort h2 { font-family: var(--overskrift); font-size: 20px; font-weight: 600; }
[data-tema="nordlys"] .detalj h1 { font-size: clamp(32px, 4.4vw, 56px); }
[data-tema="nordlys"] .gruppe h3 { font-weight: 600; }
[data-tema="nordlys"] .kort p.samandrag { border-left-color: var(--oliven); color: #cdd8ea; }
[data-tema="nordlys"] .merke { border-radius: 999px; }
[data-tema="nordlys"] .knapp { border-radius: 12px; border-width: 1px; border-color: var(--linje); text-transform: none; letter-spacing: 0; font-size: 14px; }
[data-tema="nordlys"] .knapp.hoved { background: linear-gradient(90deg, #5ef2b5, #7fd6ff); border-color: transparent; }
[data-tema="nordlys"] .knapp.hoved:hover, [data-tema="nordlys"] .botnlinje .knapp.hoved { color: var(--paa-aksent); }
[data-tema="nordlys"] .knapp.valt { color: var(--paa-blekk); }
[data-tema="nordlys"] .tal { color: var(--paa-aksent); }
[data-tema="nordlys"] .tilbake { text-transform: none; letter-spacing: 0; font-size: 15px; color: var(--rust); }
[data-tema="nordlys"] .oppgavetekst { border: 1px solid var(--linje); border-left: 4px solid var(--rust); border-radius: 16px; background: rgba(18, 29, 51, .85); }
[data-tema="nordlys"] .oppgavetekst em { color: var(--dempa); }
[data-tema="nordlys"] .vedlegg, [data-tema="nordlys"] .samling-rad, [data-tema="nordlys"] .eksamenkort, [data-tema="nordlys"] .innstillingar, [data-tema="nordlys"] .info { border-radius: 14px; border-color: var(--linje); }
[data-tema="nordlys"] .eksamenkort b, [data-tema="nordlys"] .fagblokk h2 { text-transform: none; }
[data-tema="nordlys"] .eksamenkort b { font-family: var(--overskrift); font-size: 24px; }
[data-tema="nordlys"] .fagblokk h2 { border-bottom-color: var(--linje); }
[data-tema="nordlys"] .botnlinje { border: 1px solid var(--linje); border-radius: 16px; }

/* ================= Skrivemaskin ================= */
[data-tema="skrivemaskin"] {
  --papir: #efebe0; --flate: #faf8f1; --flate-2: #e4dfd0; --blekk: #1d1d1b; --dempa: #5e5a50; --linje: #cfc8b6;
  --rust: #c0392b; --rust-mork: #962d22; --rust-lys: #f3d8d4; --oliven: #2c4a6b; --oliven-lys: #dbe3ec;
  --paa-aksent: #faf8f1; --topp: rgba(239, 235, 224, .97); --botn: #1d1d1b;
  --overskrift: "Special Elite", "Courier New", monospace; --brodtekst: "Courier Prime", "Courier New", monospace;
}
[data-tema="skrivemaskin"] body { font-size: 17px; text-shadow: 0 0 .7px rgba(0, 0, 0, .35); }
[data-tema="skrivemaskin"] h1, [data-tema="skrivemaskin"] h2, [data-tema="skrivemaskin"] h3 { text-transform: none; letter-spacing: 0; line-height: 1.08; font-weight: 400; }
[data-tema="skrivemaskin"] .logo { text-transform: none; font-size: 24px; }
[data-tema="skrivemaskin"] .meny a { font-family: var(--brodtekst); font-size: 14px; letter-spacing: .08em; }
[data-tema="skrivemaskin"] .helt.stor h1 { font-size: clamp(50px, 7.5vw, 108px); border-right: 1px dashed var(--blekk); }
[data-tema="skrivemaskin"] .helt.stor h1::after { content: "_"; animation: blink 1.1s steps(1) infinite; color: var(--rust); }
@keyframes blink { 50% { opacity: 0; } }
[data-tema="skrivemaskin"] .sokefelt input { font-family: var(--brodtekst); border: 1px solid var(--blekk); border-bottom-width: 2px; }
[data-tema="skrivemaskin"] .snarvegar button { font-family: var(--brodtekst); border: 1px dashed var(--blekk); font-size: 14px; font-weight: 400; }
[data-tema="skrivemaskin"] .gruppe h3 { font-size: 20px; border-bottom: 1px dashed var(--blekk); }
[data-tema="skrivemaskin"] .kort { border: 1px solid var(--linje); border-left: 1px solid var(--linje); box-shadow: 3px 3px 0 var(--flate-2);
  background: var(--flate) repeating-linear-gradient(transparent 0 25px, rgba(44, 74, 107, .12) 25px 26px) 0 64px; }
[data-tema="skrivemaskin"] .kort:hover { transform: none; box-shadow: 3px 3px 0 var(--rust-lys); }
[data-tema="skrivemaskin"] .kort h2 { font-family: var(--overskrift); font-weight: 400; font-size: 22px; border-bottom: 2px solid rgba(192, 57, 43, .55); padding-bottom: 6px; }
[data-tema="skrivemaskin"] .kort p.samandrag { border-left: 0; padding-left: 0; }
[data-tema="skrivemaskin"] .merke { background: transparent !important; border: 1px solid currentColor; font-weight: 400; }
[data-tema="skrivemaskin"] .knapp { font-family: var(--brodtekst); border-width: 1px; font-weight: 700; letter-spacing: .06em; }
[data-tema="skrivemaskin"] .knapp.hoved::after { content: "↵"; font-size: 16px; }
[data-tema="skrivemaskin"] .tilbake { font-family: var(--brodtekst); letter-spacing: .06em; }
[data-tema="skrivemaskin"] .oppgavetekst { border: 1px solid var(--linje); border-left: 1px solid var(--linje); box-shadow: 4px 4px 0 var(--flate-2); font-size: 17px; }
[data-tema="skrivemaskin"] .eksamenkort b, [data-tema="skrivemaskin"] .fagblokk h2 { text-transform: none; }
[data-tema="skrivemaskin"] .eksamenkort b { font-family: var(--overskrift); font-size: 24px; }
[data-tema="skrivemaskin"] .fagblokk h2 { border-bottom: 1px dashed var(--blekk); }

@media (max-width: 820px) {
  [data-tema] .helt.stor h1 { box-shadow: none; background: none; }
  [data-tema="oleana"] .helt.stor .hogre { padding-left: 0; }
  [data-tema="oleana"] .helt.stor .hogre::before { display: none; }
}
@media print {
  [data-tema] body { background: #fff; font-size: 12pt; }
  [data-tema] body::after { display: none; }
  [data-tema] #ark, [data-tema] #ark h1, [data-tema] #ark h2 { font-family: "DM Sans", system-ui, sans-serif; font-style: normal; }
}
