/* PVPRP tools: Minecraft-native polish. Pixel icons, dropped-item blocks, blocky horizon.
   Shared by /tools and the tool pages. Decorative only (aria-hidden), hidden under 1100px except the horizon. */
.tmc-ico svg,.tmc-ico{shape-rendering:crispEdges;}
.tw-subnav-ico.tmc-ico{width:16px;height:16px;}
.tlf-tic.tmc-ico svg{width:32px;height:32px;}
.tlf-card .tlf-tic.tmc-ico{width:48px;height:48px;}
.tr-tool-icon.tmc-ico svg{width:16px;height:16px;}

/* blocky horizon along the bottom of every tools masthead */
.tmc-horizon{position:absolute;left:0;bottom:0;width:100%;height:clamp(60px,8.5vw,118px);pointer-events:none;z-index:0;shape-rendering:crispEdges;}
.tmc-horizon .tmc-far{fill:rgba(96,140,230,0.075);}
.tmc-horizon .tmc-near{fill:#080b10;}
.tmc-horizon .tmc-edge{fill:none;stroke:rgba(140,175,255,0.17);stroke-width:2;}
.tw-mast .tw-mast-inner{z-index:1;}

/* dropped-item blocks: bob + slow spin, like items lying in the world */
.tmc-stage{position:absolute;z-index:1;pointer-events:none;}
.tmc-drop{position:absolute;width:var(--s);height:var(--s);}
.tmc-bob{position:absolute;inset:0;perspective:640px;animation:tmcBob 3.4s ease-in-out var(--bd,0s) infinite;}
.tmc-cube{position:absolute;inset:0;transform-style:preserve-3d;transform:rotateX(-24deg) rotateY(-36deg);animation:tmcSpin var(--spin,14s) linear var(--sd,0s) infinite;}
.tmc-f{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:rgb(var(--ac));background-color:#0f1522;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAAAAAA6mKC9AAAAnUlEQVR42gXBoYHEMBAEwX6ZCA4UXGi4IRheWBei4MGBhgMFv+rvi1JRiB/XrquwsjbH5VdhFE+xuyxUxqOyCexSUKERyZEJIZKutTSnNe9Ix5PR2XFTNkIwlHKb7ScAXK3it1Tl25a5HgLz8BpN6GFFBRYOZI+OFCTTLqqv+6w3S3mF/Lavz4H7d9CaZyoMMChCiYFRerBbZald/AOMvlu2l3e0KwAAAABJRU5ErkJggg==),linear-gradient(rgba(var(--ac),0.36),rgba(var(--ac),0.20));background-size:100% 100%;background-blend-mode:overlay,normal;image-rendering:pixelated;box-shadow:inset 0 0 0 2px rgba(var(--ac),0.85),inset 0 0 0 4px rgba(0,0,0,0.28);backface-visibility:hidden;-webkit-backface-visibility:hidden;}
.tmc-f svg{width:50%;height:50%;shape-rendering:crispEdges;filter:drop-shadow(0 0 6px rgba(var(--ac),0.75));}
.tmc-fr{transform:translateZ(calc(var(--s) / 2));}
.tmc-bk{transform:rotateY(180deg) translateZ(calc(var(--s) / 2));}
.tmc-lf{transform:rotateY(-90deg) translateZ(calc(var(--s) / 2));filter:brightness(0.8);}
.tmc-rt{transform:rotateY(90deg) translateZ(calc(var(--s) / 2));filter:brightness(0.8);}
.tmc-tp{transform:rotateX(90deg) translateZ(calc(var(--s) / 2));filter:brightness(1.3);}
.tmc-bt{transform:rotateX(-90deg) translateZ(calc(var(--s) / 2));filter:brightness(0.5);}
.tmc-txt{color:#fff;font-size:calc(var(--s) * 0.3);line-height:1;letter-spacing:.02em;text-shadow:0 0 8px rgba(var(--ac),0.9),2px 2px 0 rgba(0,0,0,0.45);}
.tmc-shadow{position:absolute;left:14%;right:14%;top:calc(100% + var(--s) * 0.22);height:calc(var(--s) * 0.16);border-radius:50%;background:radial-gradient(closest-side,rgba(0,0,0,0.62),transparent);animation:tmcShade 3.4s ease-in-out var(--bd,0s) infinite;}
.tmc-ghost .tmc-f{background:rgba(255,255,255,0.025);box-shadow:none;border:1px dashed rgba(255,255,255,0.34);color:rgba(255,255,255,0.55);}
.tmc-split .tmc-f{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAAAAAA6mKC9AAAAnUlEQVR42gXBoYHEMBAEwX6ZCA4UXGi4IRheWBei4MGBhgMFv+rvi1JRiB/XrquwsjbH5VdhFE+xuyxUxqOyCexSUKERyZEJIZKutTSnNe9Ix5PR2XFTNkIwlHKb7ScAXK3it1Tl25a5HgLz8BpN6GFFBRYOZI+OFCTTLqqv+6w3S3mF/Lavz4H7d9CaZyoMMChCiYFRerBbZald/AOMvlu2l3e0KwAAAABJRU5ErkJggg==),linear-gradient(90deg,rgba(66,133,244,0.40) 50%,rgba(127,224,163,0.34) 50%);box-shadow:inset 0 0 0 2px rgba(150,205,230,0.8),inset 0 0 0 4px rgba(0,0,0,0.28);}
.tmc-sky .tmc-f{background-color:#0a0f24;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAR0lEQVR42mNgIBGcvfb/BMMoGAVDHYwmZKLB////p42Gwmg0jObrwZQWno3G9WiQj5Z0o9FF05ITFoyjlc+wT3ijOWYUoAMAsXQzR8BQ3UcAAAAASUVORK5CYII=),linear-gradient(180deg,#0a0f26,#1b2150 70%,#2f3170);background-size:50% 50%,100% 100%;background-blend-mode:normal;box-shadow:inset 0 0 0 2px rgba(var(--ac),0.7);}
.tmc-sky .tmc-tp{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAR0lEQVR42mNgIBGcvfb/BMMoGAVDHYwmZKLB////p42Gwmg0jObrwZQWno3G9WiQj5Z0o9FF05ITFoyjlc+wT3ijOWYUoAMAsXQzR8BQ3UcAAAAASUVORK5CYII=),linear-gradient(#070a1a,#0c1230);}
.tmc-sky .tmc-bt{background-image:linear-gradient(#2a2d66,#3b3574);}
.tmc-sky .tmc-f svg{width:34%;height:34%;color:#e8ecff;filter:drop-shadow(0 0 8px rgba(200,210,255,0.8));}
.tmc-arrow{position:absolute;width:40px;height:40px;color:rgba(110,160,255,0.85);animation:tmcNudge 1.8s ease-in-out infinite;}
.tmc-arrow svg{width:100%;height:100%;shape-rendering:crispEdges;filter:drop-shadow(0 0 6px rgba(66,133,244,0.6));}
.tmc-plus{position:absolute;color:rgba(255,255,255,0.5);font-size:22px;line-height:1;}
.tmc-tag{position:absolute;padding:4px 7px;font-size:10px;letter-spacing:.08em;color:rgb(var(--ac));background:rgba(8,12,18,0.82);border:1px solid rgba(var(--ac),0.5);white-space:nowrap;}
.tmc-brackets{position:absolute;inset:0;}
.tmc-brackets i{position:absolute;width:18px;height:18px;border:0 solid rgba(var(--ac),0.75);}
.tmc-brackets i:nth-child(1){left:0;top:0;border-left-width:3px;border-top-width:3px;}
.tmc-brackets i:nth-child(2){right:0;top:0;border-right-width:3px;border-top-width:3px;}
.tmc-brackets i:nth-child(3){left:0;bottom:0;border-left-width:3px;border-bottom-width:3px;}
.tmc-brackets i:nth-child(4){right:0;bottom:0;border-right-width:3px;border-bottom-width:3px;}
.tmc-scan{position:absolute;left:6%;right:6%;top:8%;height:3px;will-change:transform;background:linear-gradient(90deg,transparent,rgba(var(--ac),0.95),transparent);box-shadow:0 0 12px rgba(var(--ac),0.7);animation:tmcScan 3.2s ease-in-out infinite;}
.tmc-match{animation:tmcMatch 3.2s ease-in-out infinite;}
@keyframes tmcSpin{from{transform:rotateX(-24deg) rotateY(0deg);}to{transform:rotateX(-24deg) rotateY(360deg);}}
@keyframes tmcBob{0%,100%{transform:translateY(0);}50%{transform:translateY(-10px);}}
@keyframes tmcShade{0%,100%{transform:scale(1);opacity:.95;}50%{transform:scale(.78);opacity:.55;}}
@keyframes tmcNudge{0%,100%{transform:translateX(0);opacity:.65;}50%{transform:translateX(6px);opacity:1;}}
@keyframes tmcScan{0%{transform:translateY(0);opacity:0;}12%{opacity:1;}50%{transform:translateY(144px);opacity:1;}62%{opacity:0;}100%{transform:translateY(144px);opacity:0;}}
@keyframes tmcMatch{0%,48%{opacity:0;transform:translateY(4px);}58%,88%{opacity:1;transform:none;}100%{opacity:0;}}
@media (prefers-reduced-motion: reduce){.tmc-bob,.tmc-cube,.tmc-shadow,.tmc-arrow,.tmc-scan,.tmc-match{animation:none!important;}.tmc-match{opacity:1;}.tmc-scan{transform:translateY(72px);}}
/* the masthead is off screen: stop every decorative animation in it (set by a small IntersectionObserver) */
.tmc-paused .tw-mast *,.tmc-paused .tw-mast:before,.tmc-paused .tw-mast:after{animation-play-state:paused!important;}
@media (max-width:1100px){.tmc-stage{display:none;}}

/* per-page stage placement: bottom-right of the masthead, under the headline, beside the intro text */
.tmc-stage-conv,.tmc-stage-merge,.tmc-stage-sky,.tmc-stage-find{right:7%;bottom:4.2vh;width:300px;height:170px;}
.tmc-stage-sky{width:200px;height:190px;}
.tmc-stage-find{width:190px;height:180px;--ac:47,191,155;}
@media (max-width:1279px){.tmc-stage-conv,.tmc-stage-merge,.tmc-stage-sky,.tmc-stage-find{display:none;}}
.tmc-on .tw-mast:after,.tmc-on .tw-mast-reticle,.tmc-on .tw-mast-moon,.tmc-on .tw-mast-merge{display:none!important;}

/* phones + tablets (where the big stage is hidden): one small floating tool block at the right of the breadcrumb
   (hub: in the gap under the logo); replaces the old faint squares there. No layout change. */
.tmc-mobile{display:none;position:absolute;right:0;top:-12px;width:38px;height:38px;z-index:1;pointer-events:none;}
.tools-hub .tmc-mobile{top:-50px;}
.tmc-mobile .tmc-shadow{display:none;}
.tmc-mobile .tmc-f svg{width:56%;height:56%;}
@media (max-width:1279px){.tmc-mobile{display:block;}.tmc-m .tw-mast-orbs{display:none;}}
@media (min-width:1100px){.tools-hub .tmc-mobile{display:none;}}
@media (max-width:700px){
  .tmc-m .tmc-horizon{height:72px;}
  .tmc-m .tmc-horizon .tmc-far{fill:rgba(96,140,230,0.11);}
  .tmc-m .tmc-horizon .tmc-edge{stroke:rgba(150,185,255,0.26);}
}
@media (max-width:600px){.tmc-m .tw-spec .tw-spec-num{font-size:min(1.28em,4.6vw);}}   /* long stats (JAVA + BEDROCK) fit their cell */
