/* Solid emerald hardware. Every volume has front, back, sides and end caps. */
.care-art-slot .plan-hardware,
.care-art-slot .plan-solid,
.care-art-slot .plan-armor,
.care-art-slot .plan-pylon,
.care-art-slot .plan-server-bay {
  position:absolute;
  transform-style:preserve-3d;
}
.care-art-slot .plan-hardware { width:0; height:0; }
.care-art-slot .plan-solid,
.care-art-slot .plan-armor {
  width:var(--hw-w);
  height:var(--hw-h);
  left:calc(var(--hw-w) * -.5);
  top:calc(var(--hw-h) * -.5);
}
.care-art-slot .plan-solid { transform:translate3d(var(--hw-x),var(--hw-y),var(--hw-z)); }
.care-art-slot .plan-solid-face {
  position:absolute;
  display:block;
  margin:0;
  border:1px solid #087951;
  background:#03271b;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.6);
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
}
.care-art-slot .plan-solid-face--front,
.care-art-slot .plan-solid-face--back { width:var(--hw-w); height:var(--hw-h); }
.care-art-slot .plan-solid-face--front {
  transform:translateZ(calc(var(--hw-d) * .5));
  background:linear-gradient(125deg,#2d6454 0%,#0b2e22 20%,#021a11 64%,#145338 100%);
  border-top-color:#c0ffe6;
  border-left-color:#38c38b;
}
.care-art-slot .plan-solid-face--back { transform:rotateY(180deg) translateZ(calc(var(--hw-d) * .5)); background:#052d20; }
.care-art-slot .plan-solid-face--left,
.care-art-slot .plan-solid-face--right {
  left:calc((var(--hw-w) - var(--hw-d)) * .5);
  width:var(--hw-d);
  height:var(--hw-h);
}
.care-art-slot .plan-solid-face--left { transform:rotateY(-90deg) translateZ(calc(var(--hw-w) * .5)); background:linear-gradient(120deg,#052319,#03150f 72%,#124c35); }
.care-art-slot .plan-solid-face--right { transform:rotateY(90deg) translateZ(calc(var(--hw-w) * .5)); background:linear-gradient(125deg,#124a36,#007c51 65%,#0d422c); }
.care-art-slot .plan-solid-face--top,
.care-art-slot .plan-solid-face--bottom {
  top:calc((var(--hw-h) - var(--hw-d)) * .5);
  width:var(--hw-w);
  height:var(--hw-d);
}
.care-art-slot .plan-solid-face--top {
  transform:rotateX(90deg) translateZ(calc(var(--hw-h) * .5));
  border-color:#8fffd1;
  background:linear-gradient(125deg,#e0fff2 0%,#409c79 4%,#164732 34%,#08291c 66%,#28805a 96%,#81ffd0);
}
.care-art-slot .plan-solid-face--bottom { transform:rotateX(-90deg) translateZ(calc(var(--hw-h) * .5)); background:#01140c; }

/* Protection: a machined shield with a second, independently extruded armour plate. */
.care-art-slot .plan-hardware--shield {
  transform:rotateX(-13deg) rotateY(-27deg) rotateZ(-7deg);
  animation:planHardwareShield var(--plan-duration,28s) ease-in-out infinite;
}
.care-art-slot .plan-armor { transform:translateZ(var(--hw-z)); }
.care-art-slot .plan-armor-face { position:absolute; inset:0; clip-path:var(--hw-outline); backface-visibility:hidden; -webkit-backface-visibility:hidden; }
.care-art-slot .plan-armor-face--back { transform:rotateY(180deg) translateZ(calc(var(--hw-d) * .5)); background:linear-gradient(145deg,#17734e,#03170e 76%,#16c081); }
.care-art-slot .plan-armor-face--front {
  transform:translateZ(calc(var(--hw-d) * .5));
  background:linear-gradient(125deg,#edfff8 0%,#8dfaca 13%,#008853 36%,#0d3021 52%,#0aa96c 72%,#c1ffdf 100%);
}
.care-art-slot .plan-armor-face--front::before {
  content:"";
  position:absolute;
  inset:4px;
  clip-path:var(--hw-outline);
  background:linear-gradient(120deg,#416d5a,#0b3021 22%,#031910 65%,#0b4c32);
}
.care-art-slot .plan-armor-wall {
  position:absolute;
  height:var(--hw-d);
  background:linear-gradient(0deg,#071c12 0%,#175237 42%,#00b473 85%,#9bffd6);
  border-top:1px solid #159163;
  border-bottom:1px solid #c3ffe4;
  transform-origin:0 0;
  transform:translateZ(calc(var(--hw-d) * -.5)) rotateZ(var(--hw-wall-angle)) rotateX(90deg);
}
.care-art-slot .plan-armor-wall:nth-of-type(3n) { background:linear-gradient(#071c12,#0b5d3f 62%,#30d499); }
.care-art-slot .plan-armor--insert { animation:planHardwareArmor calc(var(--plan-duration,28s) * .65) cubic-bezier(.45,0,.25,1) infinite; }
.care-art-slot .plan-armor--insert .plan-armor-face--front { background:linear-gradient(135deg,#dffff0,#04df90 30%,#009359 72%,#93ffcb); }
.care-art-slot .plan-armor--insert .plan-armor-face--front::before { inset:3px; background:linear-gradient(125deg,#127a52 0%,#063b26 26%,#041f15 56%,#08764b 100%); }
.care-art-slot .plan-armor-seal {
  position:absolute;
  left:29px;
  top:34px;
  width:33px;
  height:19px;
  border-left:7px solid #effff7;
  border-bottom:7px solid #effff7;
  transform:rotate(-45deg);
  filter:drop-shadow(2px 3px 0 #00472d);
}

/* Growth: a stepped, solid architectural composition, not an animated chart. */
.care-art-slot .plan-hardware--growth {
  transform:rotateX(-21deg) rotateY(-27deg) rotateZ(-4deg);
  animation:planHardwareGrowth var(--plan-duration,28s) ease-in-out infinite;
}
.care-art-slot .plan-pylon { animation:planHardwarePylon calc(var(--plan-duration,28s) * .7) cubic-bezier(.45,0,.25,1) infinite; }
.care-art-slot .plan-pylon--2 { animation-delay:-2s; }
.care-art-slot .plan-pylon--3 { animation-delay:-4s; }
.care-art-slot .plan-solid--foundation .plan-solid-face--front { background:linear-gradient(#00f59b 0 2px,#0a3927 2px,#02190f 100%); }
.care-art-slot .plan-solid--foundation .plan-solid-face--top::after {
  content:""; position:absolute; inset:7px;
  border:1px solid rgba(0,245,155,.55);
  background:linear-gradient(90deg,transparent 32%,#0c7d50 32% 33%,transparent 33% 66%,#0c7d50 66% 67%,transparent 67%);
}
.care-art-slot .plan-solid--pylon .plan-solid-face--front::before {
  content:""; position:absolute; inset:8px 7px;
  border-top:2px solid #d4ffeb;
  border-bottom:2px solid #00f59b;
  background:linear-gradient(90deg,#007d50 0 2px,transparent 2px),linear-gradient(140deg,#183b2a,#021910);
}
.care-art-slot .plan-solid--pylon .plan-solid-face--right { background:linear-gradient(90deg,#09261a,#00452b 75%,#00ad6c); }
.care-art-slot .plan-solid--crown .plan-solid-face--top { background:linear-gradient(125deg,#e1fff1,#48edaa 12%,#008758 66%,#8affc8); }
.care-art-slot .plan-solid--crown .plan-solid-face--front { background:#00cf84; border-color:#b6ffdc; }

/* Performance: a real layered processor, with a silicon die and a lifting heat spreader. */
.care-art-slot .plan-hardware--performance {
  transform:rotateX(-25deg) rotateY(-31deg) rotateZ(-7deg);
  animation:planHardwareProcessor var(--plan-duration,28s) ease-in-out infinite;
}
.care-art-slot .plan-solid--board .plan-solid-face--top {
  background:linear-gradient(135deg,#15613d,#03251a 40%,#075031);
  border:2px solid #00b579;
  box-shadow:inset 0 0 0 4px #021b11,inset 0 0 0 5px #11744d;
}
.care-art-slot .plan-solid--board .plan-solid-face--top::before {
  content:""; position:absolute; inset:9px;
  background:repeating-linear-gradient(90deg,#43d58f 0 2px,transparent 2px 8px) top / 100% 9px no-repeat,repeating-linear-gradient(90deg,#43d58f 0 2px,transparent 2px 8px) bottom / 100% 9px no-repeat,repeating-linear-gradient(0deg,#43d58f 0 2px,transparent 2px 8px) left / 9px 100% no-repeat,repeating-linear-gradient(0deg,#43d58f 0 2px,transparent 2px 8px) right / 9px 100% no-repeat;
}
.care-art-slot .plan-solid--board .plan-solid-face--front,
.care-art-slot .plan-solid--board .plan-solid-face--right { background:linear-gradient(#afffd8 0 1px,#07462b 1px 3px,#01170d 3px 100%); }
.care-art-slot .plan-solid--socket .plan-solid-face--top { background:linear-gradient(135deg,#91cdb1,#274838 10%,#041b11 72%,#47745a); box-shadow:inset 0 0 0 5px #183c2a,inset 0 0 0 6px #59866d; }
.care-art-slot .plan-solid--socket .plan-solid-face--front,
.care-art-slot .plan-solid--socket .plan-solid-face--right { background:repeating-linear-gradient(90deg,#061b11 0 4px,#2b7652 4px 6px); border-bottom-color:#c9ffe2; }
.care-art-slot .plan-solid--die { animation:planHardwareDie calc(var(--plan-duration,28s) * .7) cubic-bezier(.45,0,.25,1) infinite; }
.care-art-slot .plan-solid--die .plan-solid-face--top {
  background:linear-gradient(135deg,#edfff5 0%,#66ffc0 18%,#00bb76 42%,#025437 74%,#d3ffe9);
  border:2px solid #c7ffe3;
  box-shadow:inset 0 0 0 4px #05a36d,inset 0 0 0 5px #a4ffd8;
}
.care-art-slot .plan-solid--die .plan-solid-face--top::after { content:""; position:absolute; inset:11px; border:1px solid #d6fff0; background:linear-gradient(135deg,#a0ffd7,#00905d 55%,#023c26); }
.care-art-slot .plan-solid--die .plan-solid-face--front { background:linear-gradient(#ceffe4,#09cb81 16%,#00633d 100%); border-color:#b1ffda; }
.care-art-slot .plan-solid--spreader { animation:planHardwareSpreader calc(var(--plan-duration,28s) * .7) cubic-bezier(.45,0,.25,1) infinite; }
.care-art-slot .plan-solid--spreader .plan-solid-face--top {
  background:linear-gradient(125deg,#e7fff3 0%,#62997d 5%,#173e2a 25%,#062618 65%,#71aa83 98%);
  box-shadow:inset 0 0 0 4px #0e3e2b,inset 0 0 0 5px #60bc8e;
}
.care-art-slot .plan-solid--spreader .plan-solid-face--top::before { content:""; position:absolute; inset:12px; border:1px solid #6fc397; background:repeating-linear-gradient(90deg,#0b3927 0 4px,#37815a 4px 5px,#061e12 5px 11px); }
.care-art-slot .plan-solid--spreader .plan-solid-face--front { background:linear-gradient(#b9ffda 0 1px,#14835a 1px 4px,#033d24 4px); }

/* Continuity: a substantial server cabinet with three independently sliding backup bays. */
.care-art-slot .plan-hardware--partner {
  transform:rotateX(-16deg) rotateY(-29deg) rotateZ(-4deg);
  animation:planHardwarePartner var(--plan-duration,28s) ease-in-out infinite;
}
.care-art-slot .plan-solid--rack-side .plan-solid-face--front { background:linear-gradient(90deg,#b8ffdf 0 1px,#088456 1px 3px,#062b1c 3px 100%); }
.care-art-slot .plan-solid--rack-side .plan-solid-face--left { background:linear-gradient(130deg,#174f36,#021d12 30%,#063d26 75%,#1b8053); }
.care-art-slot .plan-solid--rack-back .plan-solid-face--front { background:repeating-linear-gradient(0deg,#062a1b 0 4px,#0b452a 4px 5px); }
.care-art-slot .plan-solid--rack-roof .plan-solid-face--top { background:linear-gradient(125deg,#d9ffe8,#398c60 8%,#0c4025 40%,#032818 78%,#79c796); box-shadow:inset 0 0 0 5px #0b3520,inset 0 0 0 6px #357d4e; }
.care-art-slot .plan-solid--rack-base .plan-solid-face--front { background:linear-gradient(#96ffc3 0 1px,#00bb76 1px 3px,#033b22 3px 100%); }
.care-art-slot .plan-server-bay { animation:planHardwareBackup calc(var(--plan-duration,28s) * .72) cubic-bezier(.45,0,.25,1) infinite; }
.care-art-slot .plan-server-bay--2 { animation-delay:calc(var(--plan-duration,28s) * -.24); }
.care-art-slot .plan-server-bay--3 { animation-delay:calc(var(--plan-duration,28s) * -.48); }
.care-art-slot .plan-solid--server .plan-solid-face--front {
  background:linear-gradient(130deg,#26593d,#052718 30%,#031e13 70%,#155331);
  border-color:#438f62;
  border-top-color:#baffd8;
  box-shadow:inset 0 0 0 3px #02170d,inset 0 0 0 4px #1a5734;
}
.care-art-slot .plan-solid--server .plan-solid-face--front::before { content:""; position:absolute; left:9px; top:8px; width:31px; height:8px; background:repeating-linear-gradient(90deg,#03170d 0 2px,#31804c 2px 3px); border-top:1px solid #568766; }
.care-art-slot .plan-solid--server .plan-solid-face--front::after { content:""; position:absolute; right:9px; top:10px; width:4px; height:4px; border-radius:50%; background:#bcffe1; box-shadow:-7px 0 0 #00f59b; }
.care-art-slot .plan-solid--server .plan-solid-face--top { background:linear-gradient(125deg,#78b58d,#144027 13%,#062517 72%,#21663d); box-shadow:inset 0 0 0 5px #062b19,inset 0 0 0 6px #34774b; }

@keyframes planHardwareShield {
  0%,100% { transform:rotateX(-13deg) rotateY(-27deg) rotateZ(-7deg); }
  50% { transform:rotateX(-4deg) rotateY(-7deg) rotateZ(-3deg); }
}
@keyframes planHardwareArmor {
  0%,15%,100% { transform:translateZ(var(--hw-z)); }
  45%,65% { transform:translateZ(calc(var(--hw-z) + 13px)); }
}
@keyframes planHardwareGrowth {
  0%,100% { transform:rotateX(-21deg) rotateY(-27deg) rotateZ(-4deg); }
  50% { transform:rotateX(-16deg) rotateY(-16deg) rotateZ(-2deg); }
}
@keyframes planHardwarePylon {
  0%,12%,100% { transform:translateY(0); }
  45%,65% { transform:translateY(-7px); }
}
@keyframes planHardwareProcessor {
  0%,100% { transform:rotateX(-25deg) rotateY(-31deg) rotateZ(-7deg); }
  50% { transform:rotateX(-34deg) rotateY(-17deg) rotateZ(-4deg); }
}
@keyframes planHardwareDie {
  0%,15%,100% { transform:translate3d(var(--hw-x),var(--hw-y),var(--hw-z)); }
  45%,65% { transform:translate3d(var(--hw-x),calc(var(--hw-y) - 6px),var(--hw-z)); }
}
@keyframes planHardwareSpreader {
  0%,15%,100% { transform:translate3d(var(--hw-x),var(--hw-y),var(--hw-z)); }
  45%,65% { transform:translate3d(var(--hw-x),calc(var(--hw-y) - 17px),var(--hw-z)); }
}
@keyframes planHardwarePartner {
  0%,100% { transform:rotateX(-16deg) rotateY(-29deg) rotateZ(-4deg); }
  50% { transform:rotateX(-12deg) rotateY(-16deg) rotateZ(-2deg); }
}
@keyframes planHardwareBackup {
  0%,10%,65%,100% { transform:translateZ(0); }
  27%,43% { transform:translateZ(15px); }
}
.care-art-slot .spatial-art .spatial-motion { animation-play-state:var(--spatial-play,paused); }
.care-art-slot .spatial-art.spatial-is-static .spatial-motion { animation:none; }
@media(prefers-reduced-motion:reduce) { .care-art-slot .spatial-art .spatial-motion { animation:none; } }
