/* 2025 · Camp Sabeti — night campsite drawn in CSS + the cover assembled from cut-out pieces. All selectors under .in-camp. */
.in-camp .ck-sky{position:absolute;inset:0;z-index:0;will-change:opacity;
  background-image:
    radial-gradient(rgba(255,255,255,.95) .9px,transparent 1.5px),
    radial-gradient(rgba(255,255,255,.55) .8px,transparent 1.4px),
    radial-gradient(rgba(230,213,173,.75) 1.2px,transparent 1.9px),
    radial-gradient(rgba(190,205,235,.6) .7px,transparent 1.3px),
    linear-gradient(180deg,#081120 0%,#122543 48%,#1c3556 78%,#213a5e 100%);
  background-size:233px 197px,149px 131px,367px 311px,97px 89px,100% 100%;
  background-position:13px 27px,71px 53px,190px 40px,29px 67px,0 0}
.in-camp .ck-moon{position:absolute;z-index:0;width:54px;height:54px;border-radius:50%;background:radial-gradient(circle at 40% 38%,#fbf6e8,#e6d5ad 75%);
  box-shadow:0 0 34px 12px rgba(243,236,221,.18),0 0 110px 44px rgba(230,213,173,.07);transform:translate(-50%,-50%);opacity:0;will-change:opacity}
.in-camp .ck-trees{position:absolute;bottom:2.5%;height:100%;width:54%;z-index:0;pointer-events:none;will-change:transform}
.in-camp .ck-trees.l{left:0}.in-camp .ck-trees.r{right:0}
.in-camp .ck-trees i{position:absolute;bottom:0;aspect-ratio:.6;background:#0b1a30;
  clip-path:polygon(50% 0%,63% 20%,57% 20%,74% 44%,66% 44%,86% 70%,76% 70%,100% 100%,0% 100%,24% 70%,14% 70%,34% 44%,26% 44%,43% 20%,37% 20%)}
.in-camp .ck-trees.near i{background:#040d1b}
/* Bigfoot: a silhouette between the far and near pines — two walking poses and a head that turns to look back */
.in-camp .ck-bigfoot{position:absolute;z-index:0;opacity:0;transform-origin:50% 100%;will-change:transform,opacity;pointer-events:none}
.in-camp .ck-bf{position:absolute;inset:0;background:#08132a;will-change:opacity}
.in-camp .ck-bf.a{clip-path:polygon(40% 20%,60% 20%,74% 27%,85% 37%,89% 50%,87% 62%,83% 72%,88% 82%,93% 92%,97% 99%,97% 100%,80% 100%,77% 94%,72% 86%,68% 76%,62% 68%,55% 76%,48% 86%,42% 95%,38% 100%,16% 100%,18% 96%,29% 93%,37% 84%,43% 72%,40% 60%,36% 54%,26% 62%,15% 66%,11% 60%,17% 52%,25% 42%,29% 32%,33% 24%)}
.in-camp .ck-bf.b{opacity:0;clip-path:polygon(40% 20%,60% 20%,74% 27%,85% 37%,89% 50%,87% 62%,84% 72%,84% 82%,86% 92%,88% 99%,88% 100%,72% 100%,70% 94%,68% 86%,66% 76%,60% 70%,56% 78%,53% 88%,50% 96%,48% 100%,30% 100%,33% 96%,42% 92%,46% 84%,45% 72%,41% 60%,37% 54%,31% 64%,26% 70%,20% 72%,18% 66%,22% 58%,27% 44%,29% 32%,33% 24%)}
.in-camp .ck-bf-head{position:absolute;left:27%;top:0;width:42%;height:28%;background:#08132a;transform-origin:50% 60%;will-change:transform;
  clip-path:polygon(40.5% 0,71.4% 0,90.5% 21.4%,95.2% 53.6%,83.3% 75%,69% 92.9%,40.5% 96.4%,21.4% 82.1%,4.8% 57.1%,9.5% 28.6%,23.8% 7.1%)}
/* ground: a dark band with an irregular grass fringe (clip-path built in JS: short blades, tall tufts by the tent and fire) */
.in-camp .ck-ground{position:absolute;left:-2%;right:-2%;bottom:0;height:14%;z-index:1;background:linear-gradient(180deg,#060f1e,#02060e 60%);will-change:transform}
/* tent: canvas with a lit face, a glowing doorway and a pool of light on the grass */
.in-camp .ck-tent{position:absolute;bottom:4%;z-index:1;will-change:transform}
.in-camp .ck-tent-body{position:absolute;inset:0;clip-path:polygon(50% 0,100% 100%,0 100%);background:linear-gradient(104deg,#41597f 0 50%,#25385a 50.5%)}
.in-camp .ck-tent-door{position:absolute;left:50%;bottom:0;width:24%;height:50%;transform:translateX(-50%);clip-path:polygon(50% 0,100% 100%,0 100%);
  background:linear-gradient(180deg,#fbf5e4,#e6d5ad);filter:drop-shadow(0 0 12px rgba(243,236,221,.75))}
.in-camp .ck-tent-light{position:absolute;left:50%;bottom:-14%;width:150%;height:36%;transform:translateX(-50%);background:radial-gradient(ellipse at 50% 50%,rgba(230,213,173,.32),transparent 70%)}
/* campfire: crossed logs, three tongues of pale gold flame, a wide glow, drifting embers */
.in-camp .ck-fire{position:absolute;bottom:4%;z-index:1;will-change:transform}
.in-camp .ck-glow{position:absolute;left:50%;bottom:24%;width:900%;height:900%;transform:translate(-50%,50%);pointer-events:none;will-change:opacity;
  background:radial-gradient(circle,rgba(230,213,173,.42) 0%,rgba(230,213,173,.17) 22%,rgba(230,213,173,.05) 42%,transparent 60%)}
.in-camp .ck-log{position:absolute;left:50%;bottom:8%;width:84%;height:13%;border-radius:40%;background:linear-gradient(90deg,#3a2c22,#211812 30%,#211812 70%,#3a2c22)}
.in-camp .ck-log.a{transform:translateX(-50%) rotate(-13deg)}.in-camp .ck-log.b{transform:translateX(-50%) rotate(15deg)}
.in-camp .ck-flame{position:absolute;left:50%;bottom:20%;transform-origin:50% 100%;will-change:transform}
.in-camp .ck-flame b{position:absolute;left:0;top:0;width:100%;height:100%;transform:rotate(-45deg);transform-origin:50% 50%;border-radius:0 55% 50% 55%;filter:blur(.6px)}
.in-camp .ck-flame.f1{width:48%;height:48%;bottom:18%}.in-camp .ck-flame.f1 b{background:linear-gradient(135deg,#f8efd6,#e6d5ad 55%,#c9ab6d)}
.in-camp .ck-flame.f2{width:32%;height:32%;bottom:22%}.in-camp .ck-flame.f2 b{background:linear-gradient(135deg,#fffaf0,#f3e6c4 60%,#e0c98f)}
.in-camp .ck-flame.f3{width:16%;height:16%;bottom:26%}.in-camp .ck-flame.f3 b{background:#fffdf7}
.in-camp .ck-ember{position:absolute;left:50%;bottom:48%;width:4px;height:4px;margin-left:-2px;border-radius:50%;background:#f8efd6;box-shadow:0 0 6px 2px rgba(230,213,173,.55);opacity:0;will-change:transform,opacity}
/* the cover: a wrapper with the card's aspect; children are positioned in card fractions */
.in-camp .ck-cover{position:absolute;left:0;top:0;z-index:2;transform-origin:50% 50%;will-change:transform}
.in-camp .ck-page{position:absolute;inset:0;z-index:1;border-radius:2.6%/2%;opacity:0;will-change:transform;
  background:
    radial-gradient(ellipse at 50% 30%,rgba(255,255,255,.07),transparent 65%),
    repeating-linear-gradient(45deg,rgba(255,255,255,.035) 0 1px,transparent 1px 3px),
    repeating-linear-gradient(-45deg,rgba(0,0,0,.10) 0 1px,transparent 1px 3px),
    linear-gradient(180deg,#1d4b7e 0%,#143d6c 55%,#0f3159 100%);
  box-shadow:0 40px 90px -30px rgba(0,0,0,.75),inset 0 0 0 5px #0c2545,inset 0 0 70px rgba(0,0,0,.35)}
.in-camp .ck-pol{position:absolute;opacity:0;will-change:transform,opacity;transform-origin:50% 50%}
.in-camp .ck-pol img{position:absolute;left:0;top:0;width:100%;height:100%;display:block}
.in-camp .ck-sh{position:absolute;left:50%;top:50%;background:rgba(0,0,0,.65);filter:blur(9px);border-radius:3px;opacity:0;will-change:transform,opacity}
.in-camp .ck-tape{position:absolute;opacity:0;will-change:transform,opacity;
  background:linear-gradient(180deg,rgba(238,226,186,.78),rgba(216,199,152,.74));box-shadow:0 1px 2px rgba(0,0,0,.18);
  clip-path:polygon(0 10%,2% 0,98% 3%,100% 14%,99% 88%,97% 100%,3% 97%,0 86%)}
.in-camp .ck-stk{position:absolute;opacity:0;will-change:transform,opacity;transform-origin:50% 50%;filter:drop-shadow(0 4px 6px rgba(0,0,0,.4))}
.in-camp .ck-stk img{width:100%;height:100%;display:block}
.in-camp .ck-stk.badge{filter:drop-shadow(0 6px 10px rgba(0,0,0,.45))}
.in-camp .ck-ring{position:absolute;z-index:30;border:2px solid rgba(243,236,221,.9);border-radius:50%;opacity:0;will-change:transform,opacity;pointer-events:none;
  box-shadow:0 0 14px rgba(243,236,221,.35),inset 0 0 14px rgba(243,236,221,.25)}
