/*
 * KLINT skin — Concept C translated into a responsive, data-driven UI.
 * Flat geometry only; no generated image is shipped with the site.
 */

html[data-skin="klint"] {
  --k-cream:#f3ead7;
  --k-paper:#f8f0df;
  --k-pink:#e8b5b5;
  --k-red:#cb4631;
  --k-blue:#174da4;
  --k-yellow:#e6ad16;
  --k-green:#53754b;
  --k-black:#12120f;
  --k-white:#fff9eb;
  --k-line:#181813;
  --k-soft-line:rgba(18,18,15,.24);

  --ice:var(--k-cream);
  --card:var(--k-paper);
  --line:var(--k-line);
  --line-soft:rgba(18,18,15,.16);
  --ink:var(--k-black);
  --ink-2:#4b493f;
  --ink-3:#716d5e;
  --blue:var(--k-blue);
  --blue-soft:#d9e1ed;
  --blue-deep:#123b7a;
  --good:var(--k-green);
  --good-soft:#dbe4d2;
  --good-ink:#304d2c;
  --warn:var(--k-yellow);
  --warn-soft:#f3deb0;
  --warn-ink:#684d00;
  --bad-soft:#ead8d0;
  --bad-ink:#70443b;
  --crit:var(--k-red);
  --crit-soft:#f0cbc3;
  --crit-ink:#8b2e20;
  --display:'Rajdhani',sans-serif;
  --body:'Inter',sans-serif;
  --mono:'IBM Plex Mono',monospace;
  --radius:0;
  --radius-lg:0;
  --shadow:none;
  color-scheme:light;
}

html[data-skin="klint"] body {
  color:var(--k-black);
  background:
    radial-gradient(circle at 18% 8%,rgba(255,255,255,.45),transparent 28rem),
    var(--k-cream);
}

html[data-skin="klint"] body::before {
  content:"";
  position:fixed;
  inset:0;
  z-index:999;
  pointer-events:none;
  opacity:.09;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='110' height='110'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.25'/%3E%3C/svg%3E");
  mix-blend-mode:multiply;
}

html[data-skin="klint"] .wrap {
  width:min(1540px,100%);
  max-width:none;
  padding:0 0 64px;
}

html[data-skin="klint"] .global-report-trigger { display:none; }

html[data-skin="klint"] .site-header,
html[data-skin="klint"] .action-bar,
html[data-skin="klint"] .cartoon-stage,
html[data-skin="klint"] .retro-cluster,
html[data-skin="klint"] .cs-mobile-actions {
  display:none;
}

/* =========================================================== skin switch */

html[data-skin="klint"] .skin-toggle {
  position:absolute;
  top:18px;
  right:20px;
  z-index:50;
  gap:0;
  overflow:hidden;
  border:2px solid var(--k-black);
  border-radius:0;
  background:var(--k-cream);
  box-shadow:none;
  font-family:var(--mono);
  font-size:9px;
}

html[data-skin="klint"] .skin-toggle button {
  min-height:32px;
  padding:7px 10px;
  color:var(--k-black);
  border-right:1px solid var(--k-black);
  letter-spacing:.08em;
}

html[data-skin="klint"] .skin-toggle button:last-child { border-right:0; }

html[data-skin="klint"] .skin-toggle button:hover { background:var(--k-pink); }

html[data-skin="klint"] .skin-toggle button.active {
  color:var(--k-white);
  background:var(--k-blue);
}

html[data-skin="klint"] .skin-toggle button:focus-visible,
html[data-skin="klint"] .k-system-actions button:focus-visible,
html[data-skin="klint"] details.tech > summary:focus-visible,
html[data-skin="klint"] .eval-btn:focus-visible {
  outline:4px solid var(--k-yellow);
  outline-offset:2px;
}

/* ============================================================= hero grid */

html[data-skin="klint"] .klint-stage {
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  border-top:2px solid var(--k-black);
  border-left:2px solid var(--k-black);
  background:var(--k-paper);
}

html[data-skin="klint"] .klint-stage > * {
  min-width:0;
  border-right:2px solid var(--k-black);
  border-bottom:2px solid var(--k-black);
}

html[data-skin="klint"] .k-masthead {
  position:relative;
  grid-column:1/-1;
  display:grid;
  grid-template-columns:3fr 5fr 4fr;
  min-height:288px;
  overflow:hidden;
  background:
    linear-gradient(90deg,var(--k-cream) 0 33.333%,var(--k-blue) 33.333% 66.666%,var(--k-pink) 66.666%);
}

html[data-skin="klint"] .k-masthead::before {
  content:"";
  position:absolute;
  top:0;
  left:33.333%;
  bottom:0;
  width:2px;
  background:var(--k-black);
  box-shadow:calc(33.333vw) 0 0 var(--k-black);
}

html[data-skin="klint"] .k-masthead::after {
  content:"";
  position:absolute;
  right:4%;
  bottom:-92px;
  width:210px;
  height:210px;
  border:2px solid var(--k-black);
  border-radius:50%;
  background:var(--k-cream);
}

html[data-skin="klint"] .k-brand {
  position:absolute;
  top:32px;
  left:28px;
  z-index:3;
  display:flex;
  align-items:center;
  gap:14px;
  text-transform:uppercase;
}

html[data-skin="klint"] .k-brand-symbol {
  position:relative;
  display:block;
  width:42px;
  height:64px;
}

html[data-skin="klint"] .k-brand-symbol i:first-child {
  position:absolute;
  top:0;
  left:7px;
  width:28px;
  height:28px;
  border-radius:50%;
  background:var(--k-black);
}

html[data-skin="klint"] .k-brand-symbol i:last-child {
  position:absolute;
  bottom:0;
  left:4px;
  width:34px;
  height:28px;
  background:var(--k-black);
  clip-path:polygon(0 0,100% 0,50% 100%);
}

html[data-skin="klint"] .k-brand strong {
  display:block;
  font-family:var(--display);
  font-size:31px;
  line-height:.86;
  letter-spacing:-.03em;
}

html[data-skin="klint"] .k-brand small {
  display:block;
  margin-top:8px;
  font-family:var(--mono);
  font-size:9px;
  letter-spacing:.16em;
}

html[data-skin="klint"] .k-sun {
  position:absolute;
  top:18px;
  left:25%;
  z-index:1;
  width:118px;
  height:118px;
  border:2px solid var(--k-black);
  border-radius:50%;
  background:var(--k-yellow);
}

html[data-skin="klint"] .k-botanical {
  position:absolute;
  left:17%;
  bottom:-3px;
  z-index:2;
  width:210px;
  height:120px;
  fill:none;
  stroke:var(--k-black);
  stroke-width:1.4;
}

html[data-skin="klint"] .k-question {
  position:relative;
  z-index:3;
  grid-column:2;
  align-self:end;
  padding:32px 42px 25px;
  color:var(--k-white);
}

html[data-skin="klint"] .k-question::before,
html[data-skin="klint"] .k-question::after {
  content:"";
  position:absolute;
  left:18%;
  width:64%;
  height:22px;
  background:var(--k-blue);
  border:2px solid var(--k-black);
  border-bottom:0;
}

html[data-skin="klint"] .k-question::before { top:-23px; }
html[data-skin="klint"] .k-question::after { top:-44px;left:30%;width:40%; }

html[data-skin="klint"] .k-question span {
  display:block;
  margin-bottom:9px;
  color:#e9c764;
  font-family:var(--mono);
  font-size:9px;
  letter-spacing:.18em;
  text-transform:uppercase;
}

html[data-skin="klint"] .k-question h1 {
  max-width:560px;
  color:var(--k-white);
  font-family:var(--display);
  font-size:clamp(39px,4vw,64px);
  font-weight:700;
  line-height:.82;
  letter-spacing:-.045em;
  text-transform:uppercase;
}

html[data-skin="klint"] .k-question h1 em {
  color:var(--k-white);
  font-style:normal;
}

html[data-skin="klint"] .k-spiral {
  position:absolute;
  top:23px;
  right:18%;
  z-index:2;
  width:118px;
  height:118px;
  border:2px solid var(--k-blue);
  border-radius:50%;
  background:
    radial-gradient(circle at 50% 50%,transparent 0 12%,var(--k-blue) 13% 14%,transparent 15% 25%,var(--k-blue) 26% 27%,transparent 28% 39%,var(--k-blue) 40% 41%,transparent 42%);
}

html[data-skin="klint"] .k-spiral::after {
  content:"";
  position:absolute;
  top:52%;
  left:50%;
  width:72px;
  height:2px;
  background:var(--k-blue);
  transform:rotate(-34deg);
  transform-origin:left;
}

/* ========================================================== panel titles */

html[data-skin="klint"] .k-panel-title {
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:40px;
  padding:8px 18px;
  border-bottom:2px solid var(--k-black);
  background:var(--k-cream);
  font-family:var(--display);
  font-size:17px;
  font-weight:700;
  letter-spacing:.045em;
  text-transform:uppercase;
}

html[data-skin="klint"] .k-panel-title span {
  font-family:var(--mono);
  font-size:8px;
  font-weight:500;
  letter-spacing:.12em;
}

/* ======================================================= live conditions */

html[data-skin="klint"] .k-live {
  grid-column:span 4;
  background:var(--k-pink);
}

html[data-skin="klint"] .k-live-row {
  display:grid;
  grid-template-columns:62px minmax(92px,.8fr) 1fr 42px;
  align-items:center;
  min-height:78px;
  border-bottom:2px solid var(--k-black);
}

html[data-skin="klint"] .k-live-row .k-icon {
  align-self:stretch;
  display:grid;
  place-items:center;
  border-right:2px solid var(--k-black);
  border-radius:0;
  background:var(--k-cream);
  font-family:var(--display);
  font-size:31px;
  font-style:normal;
}

html[data-skin="klint"] .k-live-row .k-gust { background:var(--k-yellow); }
html[data-skin="klint"] .k-live-row .k-dir { background:var(--k-green); }
html[data-skin="klint"] .k-live-row .k-temp { background:#aec8df; }

html[data-skin="klint"] .k-live-row > span {
  padding-left:18px;
  font-family:var(--display);
  font-size:18px;
  font-weight:700;
  text-transform:uppercase;
}

html[data-skin="klint"] .k-live-row strong {
  font-family:var(--mono);
  font-size:clamp(25px,3.5vw,50px);
  font-weight:400;
  line-height:1;
  font-variant-numeric:tabular-nums;
}

html[data-skin="klint"] .k-live-row small {
  font-family:var(--mono);
  font-size:11px;
  text-transform:uppercase;
}

html[data-skin="klint"] .k-live-stamp {
  min-height:34px;
  padding:10px 18px;
  background:var(--k-cream);
  font-family:var(--mono);
  font-size:8px;
  letter-spacing:.06em;
  text-transform:uppercase;
}

/* =============================================================== totem */

html[data-skin="klint"] .k-verdict {
  position:relative;
  grid-column:span 4;
  display:flex;
  min-height:468px;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:var(--k-red);
}

html[data-skin="klint"] .k-verdict::before {
  content:"";
  position:absolute;
  inset:24px 15%;
  border:2px solid var(--k-black);
  border-radius:50% 50% 42% 42%;
  background:var(--k-cream);
}

html[data-skin="klint"] .k-verdict-disc {
  position:relative;
  z-index:3;
  width:78%;
  text-align:center;
}

html[data-skin="klint"] .k-verdict-disc > span,
html[data-skin="klint"] .k-verdict-disc > small {
  display:block;
  font-family:var(--display);
  font-size:16px;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}

html[data-skin="klint"] .k-verdict-disc > strong {
  display:block;
  margin:8px 0 12px;
  font-family:var(--mono);
  font-size:clamp(28px,3.4vw,50px);
  font-weight:500;
  letter-spacing:-.05em;
}

html[data-skin="klint"] .k-verdict-disc > i {
  display:block;
  width:62%;
  height:2px;
  margin:0 auto 13px;
  background:var(--k-black);
}

html[data-skin="klint"] .k-verdict-disc > i::after {
  content:"";
  display:block;
  width:22px;
  height:22px;
  margin:-10px auto 0;
  border:2px solid var(--k-black);
  border-radius:50%;
  background:linear-gradient(90deg,var(--k-black) 50%,var(--k-cream) 50%);
}

html[data-skin="klint"] .k-verdict-disc > b {
  display:block;
  margin:4px 0 0;
  color:var(--k-blue);
  font-family:var(--display);
  font-size:clamp(62px,7vw,106px);
  font-weight:700;
  line-height:.85;
  letter-spacing:-.055em;
  font-variant-numeric:tabular-nums;
}

html[data-skin="klint"] .k-verdict-disc > em {
  display:inline-block;
  margin-top:12px;
  padding:5px 10px 4px;
  color:var(--k-white);
  background:var(--k-green);
  font-family:var(--mono);
  font-size:10px;
  font-style:normal;
  letter-spacing:.12em;
}

html[data-skin="klint"] .k-verdict-disc > p {
  max-width:300px;
  margin:12px auto 0;
  font-family:var(--mono);
  font-size:8px;
  line-height:1.5;
  text-transform:uppercase;
}

html[data-skin="klint"] .k-totem-top,
html[data-skin="klint"] .k-totem-base {
  position:absolute;
  left:50%;
  z-index:2;
  width:46%;
  height:82px;
  transform:translateX(-50%);
}

html[data-skin="klint"] .k-totem-top { top:0; }
html[data-skin="klint"] .k-totem-base { bottom:0; transform:translateX(-50%) rotate(180deg); }

html[data-skin="klint"] .k-totem-top i,
html[data-skin="klint"] .k-totem-base i {
  position:absolute;
  bottom:0;
  height:22px;
  border:2px solid var(--k-black);
  border-bottom:0;
  background:var(--k-blue);
}

html[data-skin="klint"] .k-totem-top i:nth-child(1),
html[data-skin="klint"] .k-totem-base i:nth-child(1) { left:0;width:100%; }
html[data-skin="klint"] .k-totem-top i:nth-child(2),
html[data-skin="klint"] .k-totem-base i:nth-child(2) { left:15%;bottom:20px;width:70%; }
html[data-skin="klint"] .k-totem-top i:nth-child(3),
html[data-skin="klint"] .k-totem-base i:nth-child(3) { left:32%;bottom:40px;width:36%; }

html[data-skin="klint"] .klint-stage[data-tier="marginal"] .k-verdict { background:var(--k-yellow); }
html[data-skin="klint"] .klint-stage[data-tier="unlikely"] .k-verdict { background:var(--k-pink); }
html[data-skin="klint"] .klint-stage[data-tier="unlikely"] .k-verdict-disc > em { background:var(--k-red); }

/* ======================================================== hourly matrix */

html[data-skin="klint"] .k-hours-panel {
  grid-column:span 4;
  background:var(--k-paper);
}

html[data-skin="klint"] .k-hours {
  display:flex;
  flex-direction:column;
}

html[data-skin="klint"] .k-hour {
  display:grid;
  grid-template-columns:54px 28px 1fr 1fr 58px 34px;
  align-items:center;
  min-height:41px;
  border-bottom:1px solid var(--k-black);
  font-family:var(--mono);
  font-size:9px;
}

html[data-skin="klint"] .k-hour > * {
  display:flex;
  min-width:0;
  height:100%;
  align-items:center;
  justify-content:center;
  border-right:1px solid var(--k-black);
}

html[data-skin="klint"] .k-hour > *:last-child { border-right:0; }

html[data-skin="klint"] .k-hour > span:not(.k-hour-arrow) {
  flex-direction:column;
  gap:1px;
}

html[data-skin="klint"] .k-hour b { font-size:13px; }
html[data-skin="klint"] .k-hour small { color:#696454;font-size:6px;text-transform:uppercase; }
html[data-skin="klint"] .k-hour strong { font-size:11px; }
html[data-skin="klint"] .k-hour em { font-size:8px;font-style:normal; }
html[data-skin="klint"] .k-hour-arrow { color:var(--k-black);font-size:12px;transform:rotate(45deg); }
html[data-skin="klint"] .k-hour.good { background:#e8c64d; }
html[data-skin="klint"] .k-hour.marginal { background:#efdca6; }
html[data-skin="klint"] .k-hour.selected { box-shadow:inset 7px 0 0 var(--k-blue); }

html[data-skin="klint"] .k-empty {
  padding:24px;
  font-family:var(--mono);
  font-size:9px;
  text-transform:uppercase;
}

/* =================================================== observed + outlook */

html[data-skin="klint"] .k-observed {
  grid-column:span 4;
  min-height:280px;
  background:var(--k-cream);
}

html[data-skin="klint"] .k-observed svg {
  display:block;
  width:100%;
  height:220px;
  padding:12px 14px 0;
  overflow:visible;
}

html[data-skin="klint"] .k-chart-grid line { stroke:rgba(18,18,15,.22);stroke-dasharray:3 3; }
html[data-skin="klint"] .k-chart-grid text { fill:var(--k-black);font:8px var(--mono); }
html[data-skin="klint"] .k-chart-wind { fill:none;stroke:var(--k-blue);stroke-width:3; }
html[data-skin="klint"] .k-chart-gust { fill:none;stroke:var(--k-red);stroke-width:2.2;stroke-dasharray:7 5; }
html[data-skin="klint"] .k-observed svg > text { fill:var(--k-black);font:10px var(--mono); }

html[data-skin="klint"] .k-observed p {
  padding:0 20px 14px;
  font-family:var(--mono);
  font-size:8px;
  letter-spacing:.06em;
  text-transform:uppercase;
}

html[data-skin="klint"] .k-days-panel {
  position:relative;
  grid-column:span 8;
  overflow:hidden;
  background:var(--k-paper);
}

html[data-skin="klint"] .k-days-panel::after {
  content:"";
  position:absolute;
  right:-55px;
  bottom:-70px;
  width:210px;
  height:210px;
  border:2px solid var(--k-black);
  border-radius:50%;
  background:var(--k-pink);
}

html[data-skin="klint"] .k-days {
  position:relative;
  z-index:2;
  width:calc(100% - 120px);
}

html[data-skin="klint"] .k-day {
  display:grid;
  grid-template-columns:48px 90px 1fr 1fr 70px;
  align-items:center;
  min-height:47px;
  border-bottom:1px solid var(--k-black);
  font-family:var(--mono);
  font-size:10px;
}

html[data-skin="klint"] .k-day > * {
  display:grid;
  height:100%;
  place-items:center;
  border-right:1px solid var(--k-black);
}

html[data-skin="klint"] .k-day > *:last-child { border-right:0; }

html[data-skin="klint"] .k-day > i {
  width:22px;
  height:22px;
  justify-self:center;
  border:0;
  border-radius:50%;
  background:var(--k-yellow);
}

html[data-skin="klint"] .k-day:nth-child(2) > i { background:var(--k-red); }
html[data-skin="klint"] .k-day:nth-child(3) > i { background:var(--k-blue); }
html[data-skin="klint"] .k-day:nth-child(4) > i { background:var(--k-green); }
html[data-skin="klint"] .k-day:nth-child(5) > i { background:var(--k-pink); }

/* ======================================================== system strip */

html[data-skin="klint"] .k-system {
  grid-column:1/-1;
  background:var(--k-cream);
}

html[data-skin="klint"] .k-system-items {
  display:grid;
  grid-template-columns:1fr 1fr 1fr 1.35fr;
}

html[data-skin="klint"] .k-system-items > div {
  display:grid;
  grid-template-columns:58px 1fr;
  min-height:86px;
  align-content:center;
  padding:12px 18px;
  border-right:2px solid var(--k-black);
}

html[data-skin="klint"] .k-system-items > div:last-child { border-right:0; }

html[data-skin="klint"] .k-system-items i {
  grid-row:1/4;
  display:grid;
  width:44px;
  height:44px;
  place-items:center;
  border:1px solid var(--k-black);
  border-radius:50%;
  background:#8cab81;
  font-size:20px;
  font-style:normal;
}

html[data-skin="klint"] .k-system-items span {
  font-family:var(--display);
  font-size:14px;
  font-weight:700;
  text-transform:uppercase;
}

html[data-skin="klint"] .k-system-items strong {
  color:var(--k-green);
  font-family:var(--mono);
  font-size:12px;
}

html[data-skin="klint"] .k-system-items small {
  font-family:var(--mono);
  font-size:8px;
  text-transform:uppercase;
}

html[data-skin="klint"] .k-system-items .k-system-actions {
  grid-template-columns:1fr 1fr;
  gap:10px;
}

/* KLINT hides `.action-bar`, so the SESSIONS control rides the system-actions
   block here rather than being invisible in this skin. */
html[data-skin="klint"] .k-system-actions .sessions-link {
  grid-column:1/-1;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  border:2px solid var(--k-black);
  background:var(--k-white);
  color:var(--k-black);
  font-family:var(--mono);
  font-size:9px;
  font-weight:600;
  letter-spacing:.08em;
  text-transform:uppercase;
  text-decoration:none;
}

html[data-skin="klint"] .k-system-actions button {
  min-height:48px;
  padding:10px;
  border:2px solid var(--k-black);
  border-radius:0;
  background:var(--k-blue);
  color:var(--k-white);
  font-family:var(--mono);
  font-size:9px;
  font-weight:600;
  letter-spacing:.08em;
  text-transform:uppercase;
  cursor:pointer;
}

html[data-skin="klint"] .k-system-actions button:last-child {
  color:var(--k-black);
  background:var(--k-yellow);
}

html[data-skin="klint"] .k-system-actions button:hover { background:var(--k-red); }

/* ======================================================== detail console */

html[data-skin="klint"] .dashboard-console {
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:0;
  border-left:2px solid var(--k-black);
}

html[data-skin="klint"] .dashboard-console > * {
  min-width:0;
  margin-top:0;
}

html[data-skin="klint"] .panel-forecast,
html[data-skin="klint"] .panel-day-wind,
html[data-skin="klint"] .panel-history,
html[data-skin="klint"] .panel-meteoswiss,
html[data-skin="klint"] .panel-health,
html[data-skin="klint"] .panel-reference,
html[data-skin="klint"] .panel-viz,
html[data-skin="klint"] .panel-tech {
  grid-column:span 12;
}

html[data-skin="klint"] .panel-summary { grid-column:span 7; }
html[data-skin="klint"] .panel-outlook { grid-column:span 5; }
html[data-skin="klint"] .panel-water { grid-column:span 4; }
html[data-skin="klint"] .panel-live { grid-column:span 8; }
html[data-skin="klint"] .panel-eval { grid-column:span 7; }
html[data-skin="klint"] .panel-ablation { grid-column:span 5; }

html[data-skin="klint"] .card,
html[data-skin="klint"] details.tech {
  padding:22px;
  border:0;
  border-right:2px solid var(--k-black);
  border-bottom:2px solid var(--k-black);
  border-radius:0;
  background:var(--k-paper);
  box-shadow:none;
}

html[data-skin="klint"] .card:nth-of-type(4n+1) { background:#f0d1cd; }
html[data-skin="klint"] .card:nth-of-type(4n+2) { background:#e3e8d7; }

html[data-skin="klint"] .section-head {
  margin:-22px -22px 18px;
  padding:11px 18px;
  border-bottom:2px solid var(--k-black);
  background:var(--k-cream);
}

html[data-skin="klint"] .section-head h2 {
  font-family:var(--display);
  font-size:18px;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
}

html[data-skin="klint"] .section-head .hint,
html[data-skin="klint"] .hint {
  color:#5b574c;
  font-family:var(--mono);
  font-size:8px;
  letter-spacing:.08em;
  text-transform:uppercase;
}

html[data-skin="klint"] .forecast-grid {
  grid-template-columns:repeat(5,minmax(110px,1fr));
  gap:8px;
}

html[data-skin="klint"] .fc-card {
  border:2px solid var(--k-black);
  border-radius:0;
  background:var(--k-cream);
}

html[data-skin="klint"] .fc-card.recommended {
  color:var(--k-black);
  border-color:var(--k-black);
  background:var(--k-yellow);
  box-shadow:inset 0 7px 0 var(--k-blue);
}

html[data-skin="klint"] .fc-card.recommended .fc-time,
html[data-skin="klint"] .fc-card.recommended .fc-pct-label,
html[data-skin="klint"] .fc-card.recommended .fc-wind { color:var(--k-black); }

html[data-skin="klint"] .fc-badge { border-radius:0; }
html[data-skin="klint"] .recommendation,
html[data-skin="klint"] .observed-callout,
html[data-skin="klint"] .qs-card,
html[data-skin="klint"] .meteo-hour,
html[data-skin="klint"] .frozen-banner,
html[data-skin="klint"] .provisional-note { border-radius:0; }

html[data-skin="klint"] .chart-box,
html[data-skin="klint"] .viz-box,
html[data-skin="klint"] .day-wind-chart {
  border:1px solid var(--k-black);
  background:rgba(255,249,235,.54);
}

html[data-skin="klint"] .eval-btn {
  border:2px solid var(--k-black);
  border-radius:0;
  background:var(--k-blue);
  box-shadow:none;
  font-family:var(--mono);
  font-size:10px;
  letter-spacing:.06em;
  text-transform:uppercase;
}

html[data-skin="klint"] details.tech { padding:0; }
html[data-skin="klint"] details.tech > summary { background:var(--k-blue);color:var(--k-white); }
html[data-skin="klint"] .tech-body { background:var(--k-paper); }

html[data-skin="klint"] footer {
  margin:0;
  padding:22px;
  color:var(--k-black);
  border-right:2px solid var(--k-black);
  border-bottom:2px solid var(--k-black);
  border-left:2px solid var(--k-black);
  background:var(--k-yellow);
  font-family:var(--mono);
  font-size:9px;
}

/* ============================================================ responsive */

@media (max-width:1050px) {
  html[data-skin="klint"] .k-live { grid-column:span 5; }
  html[data-skin="klint"] .k-verdict { grid-column:span 7; }
  html[data-skin="klint"] .k-hours-panel { grid-column:span 12; }
  html[data-skin="klint"] .k-hours { display:grid;grid-template-columns:1fr 1fr; }
  html[data-skin="klint"] .k-hour:nth-child(odd) { border-right:1px solid var(--k-black); }
  html[data-skin="klint"] .k-observed { grid-column:span 5; }
  html[data-skin="klint"] .k-days-panel { grid-column:span 7; }
  html[data-skin="klint"] .k-system-items { grid-template-columns:1fr 1fr; }
  html[data-skin="klint"] .k-system-items > div:nth-child(2) { border-right:0; }
  html[data-skin="klint"] .k-system-items > div:nth-child(-n+2) { border-bottom:2px solid var(--k-black); }
  html[data-skin="klint"] .panel-summary,
  html[data-skin="klint"] .panel-outlook,
  html[data-skin="klint"] .panel-water,
  html[data-skin="klint"] .panel-live,
  html[data-skin="klint"] .panel-eval,
  html[data-skin="klint"] .panel-ablation { grid-column:span 12; }
}

@media (max-width:760px) {
  html[data-skin="klint"] .wrap { padding-top:50px; }

  html[data-skin="klint"] .skin-toggle {
    position:absolute;
    top:8px;
    right:8px;
    left:8px;
    overflow-x:auto;
  }

  html[data-skin="klint"] .skin-toggle button {
    flex:1 0 auto;
    min-height:34px;
    padding:6px 8px;
    font-size:8px;
  }

  html[data-skin="klint"] .k-masthead {
    grid-template-columns:1fr;
    min-height:410px;
    background:
      linear-gradient(180deg,var(--k-cream) 0 35%,var(--k-blue) 35% 78%,var(--k-pink) 78%);
  }

  html[data-skin="klint"] .k-masthead::before { display:none; }
  html[data-skin="klint"] .k-brand { top:24px;left:20px; }
  html[data-skin="klint"] .k-brand strong { font-size:26px; }
  html[data-skin="klint"] .k-sun { top:14px;right:18px;left:auto;width:88px;height:88px; }
  html[data-skin="klint"] .k-botanical { left:-15px;bottom:-2px;width:160px; }
  html[data-skin="klint"] .k-question { grid-column:1;align-self:center;padding:140px 24px 50px; }
  html[data-skin="klint"] .k-question::before,
  html[data-skin="klint"] .k-question::after { display:none; }
  html[data-skin="klint"] .k-question h1 { font-size:clamp(42px,13vw,62px); }
  html[data-skin="klint"] .k-spiral { right:25px;bottom:14px;top:auto;width:76px;height:76px; }
  html[data-skin="klint"] .k-masthead::after { display:none; }

  html[data-skin="klint"] .k-live,
  html[data-skin="klint"] .k-verdict,
  html[data-skin="klint"] .k-hours-panel,
  html[data-skin="klint"] .k-observed,
  html[data-skin="klint"] .k-days-panel { grid-column:span 12; }

  html[data-skin="klint"] .k-live-row { grid-template-columns:54px 116px minmax(88px,1fr) 34px; }
  html[data-skin="klint"] .k-live-row > span { padding-left:14px;font-size:16px; }
  html[data-skin="klint"] .k-live-row strong { justify-self:end;padding-right:8px;font-size:28px; }
  html[data-skin="klint"] .k-verdict { min-height:500px; }
  html[data-skin="klint"] .k-verdict-disc { width:86%; }
  html[data-skin="klint"] .k-hours { display:flex; }
  html[data-skin="klint"] .k-hour:nth-child(odd) { border-right:0; }
  html[data-skin="klint"] .k-hour { grid-template-columns:52px 28px 1fr 1fr 58px 32px; }
  html[data-skin="klint"] .k-days { width:100%; }
  html[data-skin="klint"] .k-days-panel::after { display:none; }
  html[data-skin="klint"] .k-day { grid-template-columns:40px 68px 1fr 1fr 62px; }
  html[data-skin="klint"] .k-system-items { grid-template-columns:1fr; }
  html[data-skin="klint"] .k-system-items > div { border-right:0;border-bottom:2px solid var(--k-black); }
  html[data-skin="klint"] .k-system-items > div:last-child { border-bottom:0; }
  html[data-skin="klint"] .forecast-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (prefers-reduced-motion:reduce) {
  html[data-skin="klint"] *,
  html[data-skin="klint"] *::before,
  html[data-skin="klint"] *::after {
    animation:none;
    transition:none;
    scroll-behavior:auto;
  }
}

@media (forced-colors:active) {
  html[data-skin="klint"] .klint-stage,
  html[data-skin="klint"] .klint-stage > *,
  html[data-skin="klint"] .card,
  html[data-skin="klint"] details.tech,
  html[data-skin="klint"] .k-live-row,
  html[data-skin="klint"] .k-hour,
  html[data-skin="klint"] .k-day {
    border-color:CanvasText;
    background:Canvas;
    color:CanvasText;
  }
}
