
@font-face{font-family:'Mojangles';font-weight:400;font-display:swap;src:url('data:font/woff2;base64,d09GMgABAAAAAAsoAA0AAAAAKgAAAArOAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP0ZGVE0cGh4GYACDGhEICrgApgUBNgIkA4M2C4FeAAQgBY09B4INGzofIxEmdSxH9p8gkyEGrHW/pDRtkhDRgCiRCA0OARzAGXdWBuA9FLuGC3xh0AEC32/3vtfF6D84BswBAkAAACAevsb+d+7u/Y6YZrHphESoapVhEbNozZsnPImGDs0Sz6K5f2eOktze5gpIjsAD530CrKyqMhW6ylT5R/Qx9lustE/oPyMaipZAslB4NySSaPfpKjnxBueFPuKQS24/0vO2zlJQ6QMX4DD1U8B+71JTaAj6gGT3CgtzaSnNdkpzxvJY0hZpnzRyYewKZHdZbo6f4BHjVf9fvsHJEpt739ynbYoo9JYUCdNqEL6qQl8WZi+ZbHJUAp7d/++6SQFA4fOkAECiqgRhCFSFrZHdl7negmvAcT5cBRUqlBBDKBHH//uFEMAH3voBb8Z2/cdPSjAIjEFBNIsRTrsilDLOPya4Mqrr/HlXLbDAeyAFgzeqR1nxfWMNg6dNtq1DNttVBVDa2BGnTUyNcJLqxHnk5O2lDTDBMFUEg7X447eb7njum4yzTv+53C8d6HTGqWeNtt+v9w/v3zUygCknGM+Aq4b36lD/AYB1PhRlFSVpnY8EIMKEMi6k0sY6H4RRnKRZXpRV3bRdP4zTvKzbfpzX/bxfsT8YjsaT6ezi8ur65vbu/mG+WD4+Pb+8vr1/fK6+SPmDMI71R6DGoIBhdbqJSV4rNcRmZqtajWU76SZzd/lPKYiz9Nyg9yWFw7amS8MS9u0VSuSbUS57DAqWi+wevSkW0eKBY9g099Btuc4V2oyRgY3khbFWZQ88NCbot80MOlvofGOzJL7xRqWjz+T70UHCgclgpOOCNoWbdaE3nYtADSA5mj5DWboUMkxZArWyy6ULwjUpdWaZogsrOA3HIUQ446p5LIw2i8ry4xAVlTn8eHsUR0nSnbXE8KXqk6VrJl0gCCRkqTvbtRMZ6Bs37dj11YcZMcyEVvyI8ffMl83iaHdQ0Hhx3oqR6BLjjOiwkcKBSrcUhKpjifZWysSMqEXBEHWwqoAhFKi/ELSKGVJzLQU8BsNrSygkBHP6yB+MYbiabMSMZXUSNByDUZtpY2NoaCTtmS7YwPqKgR8naU2En61IBV6TDMV8G0+SUNipG/D0UCmPETcFhV6LwnhqFWSSEiQeJBX6qYAq3bqcdLMyC722tuPjIjWYLrFkM2rFI+qTai9AbDxEpkh7Sog1G86khqFHUXxiCMb02kGSH+rGbEZdUYCgzyjDoPpnp4wlR9ph6msRBwcV6opzXlzLqhErzgb2mF4jRJ9cQcWw02avFBmJJMEc0h7qxp0YDR/jmexGWccefvZJJXtJsjUxUt2kznkYzoNQE0nxl49BTHFNZY8yGXpkQxF9tZjVpJymFKsN2VHrjBQCEdPpdjqwdVacV+0lW0okN00mTYGbZsVpcBdE2SvuMwIRZGN9aGaG9qRtkiBCVLFGqh9EogA2bkm2SyEuiKleAsVg9SXTHHXfUCistCVtiBapmQ0LlGMVGdpv4vUZ6hM1+P5H4E5GDIW3NBExmGYJeTDDZENWA2MJQL0WuJL98xhFB1mfnDFngUaZGpcTcZHwg2JfxFDxz03MLnMPMIbE0599R+lF2h9C08YulnSvhYSWFfPTL1x7RczuCWYtzU7UrEtqyYJghGjn9lNhidT0Wg6ksLjUaxe8mly6qY7P84WaZEyK4EwRk34NOMmpWxWwzIgGVpHsN0anOIXgYEuY84lQhi95o9Sy5qVJXikZnSRFwXFLMfDiqH5GftUHRdIQkVOEpl+3xODbV9C2jP6sikQpO2hFP2N/7mOQipmgNjpSxOBPMSDjkQpVwVa87QwwWhNCJZFbGhDSeMzG8wUfVgA1PoYeveK/vcOjw8HdqcltxXdF8NyD+xOHMwdXpoaLBwktqU6L8Cp27yepEgVnqZZKiULDur71dSPeYdeJKBl9KYBECX7fKlJpLJLqNlogmVNxsa5qipkIDeCmBPllaUDdp+cTe8rU2Ox6gakuL0VC7WZXiRGxo+6vRKauYGgVFjEhN22b3Al1jF4S9HJDeI57mKYah6Zd0aLJZbSAMrNyJmlz6gwCqWq5UU1Gvon00nSAkmwNrXLF0Gr7RIbHtET7nKAqMEBAZKrygpFysgr1CW1C0g6p1rCvuh27PZLh+9k0tLZIok5JlXXO7gAl70GMfNccPKYePEduZ4lKmy70C0sqipTyh3WfKwdxjl1nBdQnjeVS1uNEefC5CGpDOrUiC+1URg3yxLExLUAbF8A3UYdSvsjnm21fxYPnin6FFnjo4Dx5PeiiYmm8AlU5RdVPrJ7ka+MxorWGVhvQkoXclO5ix7T4FMQ5gfodr8l5zZfmhj6hneJSdSI36gervM6gMz1Y6y2tAyWaRhezBavJyGYB5LThU85RnnodwXS7ri4H+UsEpfCRetFu7qij7kBePd7KU40OEtIfPkcnhLzbhmyt/oC8c6xIkoURB9ii33A44I1JPrI5byLbLfSV4wySiP7KuBe/SH9+9ZskgA9/9zzE1+iki2vo/ZPZnw/I1qGr8Z/3J8cDb+JBBeLGohqJS15TkLbiBvE0RNMG3m7WVmxLFph62bBsDUQ0jY3S3MXSTOuNUxQFu/lmMxce0q4sFYUK2ukiNmNoEPjT8PIwLQ46euxES48sVCZYUfjFqhMesXTUT9ZF4jTrVsVT1uNVPGa9TpZZrE8qP1i/W+UuG3C6drNBntTGBruTlQ3xKI/eaaT5XYNhMSvA4jlXjI5ZyYzaErPuOMqca94w75QOC47FTFbY4HtWuhf/WOVMWc6iD2aQiUflC0sG7CWmvtgJidV60rs7bpRbFnSOIsewBAzsecRgK32NQKsBj8WF7w8MtnTH6IwVDPaeDK/6TdA1eJbjAFqOx7SIbAnVrvOsI21FqQfMyBokbh5qlckNRaXGAk/MicHoTOPYSNfOJ423eJlLzFrQLbNErkJUow0zVLj6IxYlruKFgYOw576jVTG54MEh9l7KqPPqKwlMYLk42WAtgjvV4GALauZmMRRG2xKjoamPZrENjCCLaHV+qGutTZvgCVcJE1wjbbilWOOwRW0+w9VL2tCh6YWjJyGzGjWot+upcvLConOOCc28ej/dwa0LuqCl7E7pzhlmXhYmqLMr9NAqgeSUGA6iMHDKatMIoD0QP6tjmdOQ9KmOsHyQ2kw/hX/t92v/8aAEnF0jeDixaIrCU2L4CP2CoGxkJ7nKR4CFHzaYXDYQQ2VkyFYbm5Rwl94riQQ8jRyWwSs9nemCTyWWe+1LUeA1WQYYiFgQs3cYHt+oVbKa2VAk1aPjFVYIaSEV5NmP2HBqTA22M4nbMcqhbataBUWR6NYZ9otibCkyio2rmYkivRZ5PV69cBAZZSWB5heQebgUdnTmgpSD+QiLGRsdSaKHL1Mcoim3TrNPnEp8PLtQKSCWARhTvzLmGHCSUfcb7fjUs7yxjnUUJbAWRBbtVlJ+TQ6LsA01ZuCfwM7glEnXzhu8ubPHmLAOjWB3xIMOwLx5l+30p2BpT52UqP/DC8LoUvU3sI8lUbXsCCMTMwsrGzsHJxc3DwKJQvPy8QsICgmLiIqJS0hCmKfwu+YJRBKZQqVJScvIyskr6OkbGBoZm5iauXDpyrUbt+7cTz6IuYWlR0+evXj15t2HTytfyF+XDl07seWXKy9ePXnuNs2xs98N2btvLFsBAAAA') format('woff2'),url('data:font/woff;base64,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') format('woff')}
@font-face{font-family:'Mojangles';font-weight:700;font-display:swap;src:url('data:font/woff2;base64,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') format('woff2'),url('data:font/woff;base64,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') format('woff')}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{--mc:'Mojangles',monospace;--mono:'JetBrains Mono',monospace}
[data-theme="dark"]{
  --sky-a:#0f0c29;--sky-b:#1a1540;--sky-c:#24205a;
  --cloud:#2a2650;--cloud-sh:#1e1a3d;
  --panel:rgba(18,14,36,0.88);--panel-border:#2e2852;
  --panel-hi:#3d3568;--panel-lo:#14102a;
  --input-bg:rgba(10,8,22,0.7);--input-brd:#2a2450;
  --text:#e0ddf0;--text-sec:#a09cc0;--text-mut:#5e587a;
  --accent:#b490ff;--accent-dk:#7c5ccc;
  --green:#55FF55;--green-dk:#00aa00;
  --gold:#FFAA00;--red:#FF5555;--aqua:#55FFFF;
  --btn-bg:#5b3daa;--btn-hi:#7b5dca;--btn-lo:#3a2580;
  --btn2-bg:#3a3458;--btn2-hi:#524c78;--btn2-lo:#24203a;
  --star-opacity:1;
}
[data-theme="light"]{
  --sky-a:#6b9bd2;--sky-b:#8cb8e0;--sky-c:#b8ddf0;
  --cloud:#fff;--cloud-sh:#c8dced;
  --panel:rgba(0,0,0,0.68);--panel-border:#3a3a4e;
  --panel-hi:#5a5a6e;--panel-lo:#1a1a2e;
  --input-bg:rgba(0,0,0,0.55);--input-brd:#333;
  --text:#fff;--text-sec:#c0c0c0;--text-mut:#888;
  --accent:#55FF55;--accent-dk:#00aa00;
  --green:#55FF55;--green-dk:#00aa00;
  --gold:#FFAA00;--red:#FF5555;--aqua:#55FFFF;
  --btn-bg:#3c8527;--btn-hi:#5cad3e;--btn-lo:#2a6018;
  --btn2-bg:#6b6b6b;--btn2-hi:#8b8b8b;--btn2-lo:#4a4a4a;
  --star-opacity:0;
}
/* Light-mode card depth: stronger border + soft drop shadow so cards lift off the sky */
[data-theme="light"] .card{
  border-color:rgba(0,0,0,0.35);
  box-shadow:0 6px 18px rgba(20,40,80,0.18),0 2px 4px rgba(20,40,80,0.12),inset 0 1px 0 rgba(255,255,255,0.04);
}
/* Light-mode: kill text-shadow on small/body text (keep it on big MC titles/buttons) */
[data-theme="light"] p,
[data-theme="light"] small,
[data-theme="light"] label,
[data-theme="light"] .field-label,
[data-theme="light"] .tool-hero-sub,
[data-theme="light"] .footer,
[data-theme="light"] .footer-privacy,
[data-theme="light"] .dz-hint,
[data-theme="light"] .dz-text,
[data-theme="light"] .skin-status,
[data-theme="light"] .check-row,
[data-theme="light"] .hint,
[data-theme="light"] .pack-hint{text-shadow:none}
/* Light mode: give hero the same dark translucent panel look as cards */
[data-theme="light"] .tool-hero{
  background:rgba(0,0,0,0.32);
  border:2px solid rgba(255,255,255,0.08);
  border-radius:8px;
  padding:2rem 1rem 1.5rem;
  backdrop-filter:blur(14px) saturate(1.1);
  -webkit-backdrop-filter:blur(14px) saturate(1.1);
  box-shadow:0 6px 18px rgba(20,40,80,0.18),0 2px 4px rgba(20,40,80,0.12),inset 0 1px 0 rgba(255,255,255,0.06);
  max-width:900px;
  margin:1rem auto;
}
html{font-size:16px;scroll-behavior:smooth;overflow-x:hidden;max-width:100vw}
/* Default desktop (mouse/hover devices) to ~115% scale. Canvas tools stay accurate via the _zr()
   zoom-correction in app.js (Safari's getBoundingClientRect ignores CSS zoom). Touch/mobile untouched. */
@media (hover:hover) and (pointer:fine){html{zoom:1.15}}
html{background:color-mix(in srgb,var(--sky-b) 90%,var(--sky-a) 10%)}body{font-family:var(--mc);color:var(--text);min-height:100vh;min-height:100dvh;overflow-x:hidden;-webkit-font-smoothing:none;transition:background .5s;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}

/* ═══ SKY ═══ */
.sky{position:fixed;inset:-50px;z-index:0;background:linear-gradient(180deg,color-mix(in srgb,var(--sky-b) 80%,var(--sky-a) 20%),var(--sky-b) 40%,var(--sky-c) 70%,color-mix(in srgb,var(--sky-b) 90%,var(--sky-a) 10%) 100%);transition:background .8s}
.stars{position:fixed;inset:-50px;z-index:0;pointer-events:none;opacity:var(--star-opacity);transition:opacity .8s}
.star{position:absolute;width:2px;height:2px;background:#fff;border-radius:50%}
.star.tw{animation:tw 3s ease-in-out infinite alternate}
@keyframes tw{0%{opacity:.3}100%{opacity:1}}
.cloud-scroll{position:fixed;inset:0;pointer-events:none;z-index:1;overflow:hidden;max-width:100vw;contain:layout paint}
.cstrip{position:absolute;display:flex;top:0;left:0;height:100%;will-change:transform}
.cs1{animation:cd 100s linear infinite}.cs2{animation:cd 140s linear infinite}.cs3{animation:cd 75s linear infinite}
@keyframes cd{0%{transform:translateX(0)}100%{transform:translateX(-3200px)}}
.c{position:absolute;width:10px;height:10px;background:transparent}
.ca{box-shadow:20px 0 0 0.5px var(--cloud),30px 0 0 0.5px var(--cloud),40px 0 0 0.5px var(--cloud),10px 10px 0 0.5px var(--cloud),20px 10px 0 0.5px var(--cloud),30px 10px 0 0.5px var(--cloud),40px 10px 0 0.5px var(--cloud),50px 10px 0 0.5px var(--cloud),0 20px 0 0.5px var(--cloud),10px 20px 0 0.5px var(--cloud),20px 20px 0 0.5px var(--cloud),30px 20px 0 0.5px var(--cloud),40px 20px 0 0.5px var(--cloud),50px 20px 0 0.5px var(--cloud),60px 20px 0 0.5px var(--cloud),0 30px 0 0.5px var(--cloud-sh),10px 30px 0 0.5px var(--cloud-sh),20px 30px 0 0.5px var(--cloud-sh),30px 30px 0 0.5px var(--cloud-sh),40px 30px 0 0.5px var(--cloud-sh),50px 30px 0 0.5px var(--cloud-sh),60px 30px 0 0.5px var(--cloud-sh)}
.cb{box-shadow:30px 0 0 0.5px var(--cloud),40px 0 0 0.5px var(--cloud),10px 10px 0 0.5px var(--cloud),20px 10px 0 0.5px var(--cloud),30px 10px 0 0.5px var(--cloud),40px 10px 0 0.5px var(--cloud),50px 10px 0 0.5px var(--cloud),60px 10px 0 0.5px var(--cloud),0 20px 0 0.5px var(--cloud),10px 20px 0 0.5px var(--cloud),20px 20px 0 0.5px var(--cloud),30px 20px 0 0.5px var(--cloud),40px 20px 0 0.5px var(--cloud),50px 20px 0 0.5px var(--cloud),60px 20px 0 0.5px var(--cloud),70px 20px 0 0.5px var(--cloud),0 30px 0 0.5px var(--cloud-sh),10px 30px 0 0.5px var(--cloud-sh),20px 30px 0 0.5px var(--cloud-sh),30px 30px 0 0.5px var(--cloud-sh),40px 30px 0 0.5px var(--cloud-sh),50px 30px 0 0.5px var(--cloud-sh),60px 30px 0 0.5px var(--cloud-sh),70px 30px 0 0.5px var(--cloud-sh)}
.cc{box-shadow:20px 0 0 0.5px var(--cloud),30px 0 0 0.5px var(--cloud),40px 0 0 0.5px var(--cloud),50px 0 0 0.5px var(--cloud),10px 10px 0 0.5px var(--cloud),20px 10px 0 0.5px var(--cloud),30px 10px 0 0.5px var(--cloud),40px 10px 0 0.5px var(--cloud),50px 10px 0 0.5px var(--cloud),60px 10px 0 0.5px var(--cloud),0 20px 0 0.5px var(--cloud),10px 20px 0 0.5px var(--cloud),20px 20px 0 0.5px var(--cloud),30px 20px 0 0.5px var(--cloud),40px 20px 0 0.5px var(--cloud),50px 20px 0 0.5px var(--cloud),60px 20px 0 0.5px var(--cloud),70px 20px 0 0.5px var(--cloud),80px 20px 0 0.5px var(--cloud),0 30px 0 0.5px var(--cloud-sh),10px 30px 0 0.5px var(--cloud-sh),20px 30px 0 0.5px var(--cloud-sh),30px 30px 0 0.5px var(--cloud-sh),40px 30px 0 0.5px var(--cloud-sh),50px 30px 0 0.5px var(--cloud-sh),60px 30px 0 0.5px var(--cloud-sh),70px 30px 0 0.5px var(--cloud-sh),80px 30px 0 0.5px var(--cloud-sh)}

/* ═══ LAYOUT ═══ */
.app{position:relative;z-index:2}.container{max-width:920px;margin:0 auto;padding:0 1rem}
.mobile-home{display:block}
.desktop-home{display:none}
.page{display:none;animation:pageIn .4s ease}.page.active{display:block}
@keyframes pageIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}

/* ═══ NAVBAR ═══ */
.navbar{position:sticky;top:0;z-index:50;background:rgba(10,8,22,0.92);backdrop-filter:blur(14px);border-bottom:2px solid var(--panel-lo);box-shadow:0 1px 12px rgba(180,144,255,0.06),0 1px 0 rgba(180,144,255,0.08);padding:2px 1rem;display:flex;align-items:center;gap:0}
.nav-brand{font-size:1.1rem;font-weight:400;color:var(--accent);letter-spacing:4px;padding:8px 14px 8px 4px;cursor:pointer;text-shadow:2px 2px 0 #000;flex-shrink:0;text-decoration:none}
.nav-brand:hover{color:var(--gold)}
.nav-links{display:flex;gap:0;flex:1;justify-content:center}
.nav-link{padding:10px 14px;font-size:.62rem;color:var(--text-mut);cursor:pointer;border-bottom:2px solid transparent;transition:all .15s;text-shadow:1px 1px 0 #000;letter-spacing:1px;white-space:nowrap;text-decoration:none}
.nav-link:hover{color:var(--text-sec);background:rgba(255,255,255,.02)}
.nav-link.active{color:var(--accent);border-bottom-color:var(--accent)}
.nav-group{position:relative}
.nav-group-btn{padding:10px 14px;font-size:.7rem;color:var(--text-sec);cursor:pointer;border:none;background:none;border-bottom:2px solid transparent;transition:all .15s;text-shadow:1px 1px 0 #000;letter-spacing:1px;white-space:nowrap;font-family:var(--mc)}
.nav-group-btn:hover{color:var(--text);background:rgba(255,255,255,.04)}
.nav-group.has-active>.nav-group-btn{color:var(--accent);border-bottom-color:var(--accent);text-shadow:1px 1px 0 #000,0 0 8px rgba(180,144,255,0.3)}
.nav-group-menu{display:none;position:absolute;top:100%;left:50%;transform:translateX(-50%);background:rgba(10,8,22,0.96);border:2px solid var(--panel-border);border-top:none;z-index:100;min-width:160px;backdrop-filter:blur(12px);animation:slideDown .2s ease;-webkit-font-smoothing:subpixel-antialiased;will-change:transform;backface-visibility:hidden}
@keyframes slideDown{from{opacity:0;transform:translateX(-50%) translateY(-6px) translateZ(0)}to{opacity:1;transform:translateX(-50%) translateY(0) translateZ(0)}}
.nav-group:hover .nav-group-menu{display:block}
.nav-group-menu .nav-link{display:block;padding:10px 16px;font-size:.6rem;border-bottom:1px solid rgba(255,255,255,.06)}
.nav-right{margin-left:auto;display:flex;align-items:center;gap:6px}
.nav-btn{background:none;border:2px solid var(--panel-border);color:var(--text-mut);font-family:var(--mc);font-size:.55rem;padding:4px 8px;cursor:pointer;text-shadow:1px 1px 0 #000;transition:all .15s}
.nav-btn:hover{border-color:var(--accent);color:var(--text)}
.nav-btn.on{color:var(--green);border-color:var(--green-dk)}
.nav-discord-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:2px solid var(--panel-border);border-radius:6px;background:rgba(88,101,242,.10);color:#a8b5ff;text-decoration:none;transition:all .15s}
.nav-discord-btn svg{width:18px;height:18px;fill:currentColor}
.nav-discord-btn:hover{border-color:#5865f2;background:rgba(88,101,242,.22);color:#fff}
/* Day/night toggle - icon-only square button, same dimensions as Discord */
.nav-theme-btn{
  display:inline-flex;align-items:center;justify-content:center;
  width:32px;height:32px;
  border:2px solid var(--panel-border);border-radius:6px;
  background:rgba(0,0,0,.20);
  color:var(--gold,#FFAA00);
  line-height:1;cursor:pointer;padding:0;
  transition:border-color .15s,background .15s,color .15s,transform .15s;
}
/* Sun/moon icons use fill=currentColor (solid Heroicons), so don't force fill:none here. */
.nav-theme-btn svg{display:block;width:18px;height:18px;image-rendering:auto;pointer-events:none;flex-shrink:0}
.nav-theme-btn:hover{
  border-color:var(--accent);
  background:rgba(180,144,255,.18);
  color:#fff;
  transform:translateY(-1px);
}
.nav-theme-btn:active{transform:translateY(0)}
/* Match the subtle-tinted-background treatment the Discord button uses next door so the two
   nav icons look like a pair instead of a bright white chip next to a dark indigo chip. */
[data-theme="light"] .nav-theme-btn{color:#b490ff;background:rgba(180,144,255,.10);border-color:rgba(180,144,255,.25)}
[data-theme="light"] .nav-theme-btn:hover{color:#fff;background:rgba(180,144,255,.28);border-color:#b490ff}
.nav-tools-btn{display:none}
.nav-dropdown{display:none}

/* ═══ CARDS ═══ */
.card{background:var(--panel);border:2px solid var(--panel-border);border-top-color:var(--panel-hi);border-left-color:var(--panel-hi);border-bottom-color:var(--panel-lo);border-right-color:var(--panel-lo);padding:1.3rem;margin-bottom:1rem;backdrop-filter:blur(10px);box-shadow:inset 0 1px 0 rgba(255,255,255,0.03),0 2px 8px rgba(0,0,0,0.15)}
.card-label{font-size:.64rem;letter-spacing:2px;color:var(--accent);text-transform:uppercase;text-shadow:1px 1px 0 rgba(0,0,0,.5);margin-bottom:.8rem;padding-bottom:.35rem;border-bottom:2px solid color-mix(in srgb,var(--accent),transparent 70%)}

/* ═══ HOME ═══ */
.home-hero{text-align:center;padding:2.8rem 0 1.4rem}
.title-block{display:inline-block;background:linear-gradient(180deg,rgba(255,255,255,0.1),rgba(0,0,0,0.3));border:3px solid var(--panel-border);border-top-color:var(--panel-hi);border-left-color:var(--panel-hi);border-bottom-color:var(--panel-lo);border-right-color:var(--panel-lo);padding:12px 40px 10px;box-shadow:0 6px 0 var(--panel-lo),0 8px 28px rgba(0,0,0,0.5),0 0 24px rgba(180,144,255,0.06)}
h1.title-main,h2.section-label,h3.tool-info-title{margin:0;padding:0}
h2.section-label{margin:1.8rem 0 .6rem;padding-bottom:.4rem}
h3.tool-info-title{margin-bottom:.5rem;padding-bottom:.3rem}
.title-main{font-size:3rem;font-weight:400;letter-spacing:6px;color:var(--text);text-shadow:3px 3px 0 #000,0 0 20px rgba(180,144,255,0.12);line-height:1}
.title-sub-bar{display:inline-block;background:linear-gradient(180deg,var(--btn-bg),color-mix(in srgb,var(--btn-bg),#000 20%));border:3px solid;border-top-color:var(--btn-hi);border-left-color:var(--btn-hi);border-bottom-color:var(--btn-lo);border-right-color:var(--btn-lo);padding:7px 24px;margin-top:8px;box-shadow:0 3px 0 var(--btn-lo)}
.title-sub{font-size:0.82rem;color:#fff;letter-spacing:3px;text-shadow:2px 2px 0 rgba(0,0,0,0.6);text-transform:uppercase}
/* Tool grid - flex so the last incomplete row aligns to the section's side */
.tool-grid{display:flex;flex-wrap:wrap;gap:1rem;margin:.6rem 0 1.6rem;justify-content:flex-start}
.tool-grid.tg-left{justify-content:flex-start}
.tool-grid.tg-right{justify-content:flex-end}
.tool-grid .tool-card{flex:0 0 calc((100% - 3rem)/4)}
@media(max-width:900px){.tool-grid .tool-card{flex:0 0 calc((100% - 2rem)/3)}}
@media(max-width:600px){.tool-grid .tool-card{flex:0 0 calc((100% - 1rem)/2)}}
.featured-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem;margin:1.5rem 0}
.featured-card{background:rgba(18,14,36,0.72);border:2px solid rgba(180,144,255,0.2);padding:1.6rem 1.6rem;text-align:center;text-decoration:none;color:inherit;transition:all .3s;backdrop-filter:blur(12px);border-radius:6px;position:relative;cursor:pointer;display:block}
.featured-card:hover{border-color:rgba(180,144,255,0.5);transform:translateY(-4px) scale(1.02);box-shadow:0 8px 32px rgba(0,0,0,0.4),0 0 24px rgba(180,144,255,0.15);background:rgba(24,18,48,0.85)}
.featured-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent,#b490ff,transparent);border-radius:6px 6px 0 0}
.featured-icon{font-size:3rem;display:block;margin-bottom:.7rem}
.featured-name{font-size:.75rem;color:#e0ddf0;letter-spacing:2px;text-shadow:1px 1px 0 #000;margin-bottom:.3rem;font-weight:500}
.featured-desc{font-size:.53rem;color:#a09cc0;text-shadow:1px 1px 0 #000;line-height:1.5}
.small-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem;margin:0 0 2rem}
.small-card{background:rgba(18,14,36,0.55);border:2px solid rgba(180,144,255,0.08);padding:1.6rem 1.2rem;text-align:center;text-decoration:none;color:inherit;transition:all .3s;backdrop-filter:blur(12px);border-radius:6px;cursor:pointer;display:block}
.small-card:hover{border-color:rgba(180,144,255,0.4);transform:translateY(-3px);box-shadow:0 6px 24px rgba(0,0,0,0.35),0 0 16px rgba(180,144,255,0.1);background:rgba(24,18,48,0.75)}
.small-icon{font-size:2.2rem;display:block;margin-bottom:.5rem}
.small-name{font-size:.6rem;color:#e0ddf0;letter-spacing:1px;text-shadow:1px 1px 0 #000;margin-bottom:.2rem}
.small-desc{font-size:.48rem;color:#a09cc0;text-shadow:1px 1px 0 #000;line-height:1.4}
/* Simple translucent card - color lives only on the left-side stripe */
.tool-card{--tc-accent:#b490ff;
  background:rgba(26,21,56,0.55);
  border:2px solid #000;
  border-top-color:#3a2f6a;border-left-color:#3a2f6a;
  border-bottom-color:#000;border-right-color:#000;
  padding:1.2rem 1rem;cursor:pointer;
  transition:transform .08s steps(2),box-shadow .08s steps(2),background-color .12s;
  text-align:center;position:relative;overflow:hidden;
  box-shadow:3px 3px 0 #000;
  text-decoration:none;color:inherit;display:block}
.tool-card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--tc-accent);box-shadow:inset 1.5px 0 0 rgba(255,255,255,0.35),inset -1.5px 0 0 rgba(0,0,0,0.55)}
.tool-card:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 #000;background:rgba(36,28,74,0.65)}
.tool-card .tool-name{color:var(--tc-accent)}
/* Day mode: glassy translucent panel matching the tool-hero treatment */
[data-theme="light"] .tool-card{
  background:linear-gradient(180deg,color-mix(in srgb,var(--tc-accent) 16%,transparent) 0%,color-mix(in srgb,var(--tc-accent) 4%,rgba(255,255,255,0.18)) 100%);
  border:2px solid rgba(255,255,255,0.35);
  border-top-color:color-mix(in srgb,var(--tc-accent) 38%,rgba(255,255,255,0.6));
  border-left-color:color-mix(in srgb,var(--tc-accent) 38%,rgba(255,255,255,0.6));
  border-bottom-color:rgba(0,0,0,0.22);
  border-right-color:rgba(0,0,0,0.22);
  backdrop-filter:blur(14px) saturate(1.1);
  -webkit-backdrop-filter:blur(14px) saturate(1.1);
  box-shadow:0 6px 18px rgba(20,40,80,0.18),0 2px 4px rgba(20,40,80,0.12),inset 0 1px 0 rgba(255,255,255,0.4)
}
[data-theme="light"] .tool-card:hover{
  background:linear-gradient(180deg,color-mix(in srgb,var(--tc-accent) 24%,transparent) 0%,color-mix(in srgb,var(--tc-accent) 8%,rgba(255,255,255,0.22)) 100%);
  box-shadow:0 10px 28px rgba(20,40,80,0.22),0 3px 6px rgba(20,40,80,0.15),inset 0 1px 0 rgba(255,255,255,0.5)
}
[data-theme="light"] .tool-card .tool-name{color:#0f0a26;text-shadow:1px 1px 0 rgba(255,255,255,0.55)}
/* Tool-ability color groups (match gc-* on home gallery) */
.tc-skin{--tc-accent:#38bdf8}
.tc-pack{--tc-accent:#eab308}
.tc-cape{--tc-accent:#a855f7}
.tc-util{--tc-accent:#10b981}
.tool-card:active{transform:translateY(0)}
.tool-icon{font-size:2.5rem;margin-bottom:.6rem;display:block}
.tool-name{font-size:.85rem;color:var(--text);letter-spacing:2px;text-shadow:1px 1px 0 #000}
.tool-desc{font-size:.6rem;color:var(--text-mut);margin-top:.5rem;line-height:1.75;text-shadow:1px 1px 0 #000}
.tool-badge{position:absolute;top:8px;right:8px;font-size:.6rem;background:var(--tc-accent,var(--accent-dk));color:#fff;padding:2px 6px;letter-spacing:1px}
.section-label{font-family:var(--mc);font-size:.9rem;color:var(--accent);letter-spacing:4px;text-transform:uppercase;text-shadow:2px 2px 0 #000,0 0 8px rgba(180,144,255,0.15);margin:1.8rem 0 .6rem;padding-bottom:.4rem;border-bottom:2px solid color-mix(in srgb,var(--accent),transparent 55%);position:relative}

/* ═══ FORMS ═══ */
.field{margin-bottom:.8rem}.field:last-child{margin-bottom:0}
.field-label{display:block;font-size:.62rem;color:var(--text-sec);margin-bottom:.25rem;text-shadow:1px 1px 0 #000}
.field-hint{font-size:.5rem;color:var(--text-mut);margin-top:.15rem;text-shadow:1px 1px 0 #000}
input[type="text"],input[type="number"],input[type="color"],textarea,select{width:100%;background:var(--input-bg);border:2px solid var(--input-brd);border-radius:3px;padding:6px 9px;color:var(--text);font-family:var(--mc);font-size:.7rem;outline:none;text-shadow:1px 1px 0 #000;transition:border-color .15s,box-shadow .15s}
input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 8px rgba(180,144,255,0.15)}
input::placeholder,textarea::placeholder{color:var(--text-mut)}
textarea{resize:vertical;min-height:44px}
select{cursor:pointer}
input[type="color"]{width:40px;height:28px;padding:2px;cursor:pointer}
.version-row{display:flex;gap:.3rem}.version-row input{width:52px;text-align:center}
.version-dot{display:flex;align-items:center;color:var(--text-mut);font-size:1rem}
.row{display:flex;gap:.6rem;align-items:flex-end}.row>.field{flex:1}

/* ═══ MC COLOR CODES ═══ */
.mc-color-preview{margin-top:.3rem;padding:5px 8px;background:rgba(0,0,0,.4);border:2px solid var(--input-brd);min-height:1.8rem;font-size:.7rem;line-height:1.5;word-break:break-word;text-shadow:1px 1px 0 rgba(0,0,0,.7)}
.mc-bold{font-weight:700;text-shadow:1px 0 0 currentColor,2px 2px 0 #000,3px 2px 0 #000}
.mc-italic{font-style:italic}
.mc-under{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:2px}
.mc-strike{text-decoration:line-through;text-decoration-thickness:2px}
.mc-bold.mc-under{text-decoration:underline;text-decoration-thickness:2px}
.mc-bold.mc-strike{text-decoration:line-through;text-decoration-thickness:2px}
.mc-under.mc-strike{text-decoration:underline line-through;text-decoration-thickness:2px}
.mc-obf{animation:obf .1s steps(3) infinite}
@keyframes obf{0%{opacity:.2}50%{opacity:1}100%{opacity:.4}}
.fmt-bar{display:flex;flex-wrap:wrap;gap:2px;margin-top:.3rem}
.fmt-btn{width:24px;height:22px;border:2px solid rgba(255,255,255,.08);font-family:var(--mc);font-size:.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .1s;text-shadow:1px 1px 0 #000;flex-shrink:0}
.fmt-btn:hover{border-color:var(--accent);transform:scale(1.1)}
.fmt-btn:active{transform:scale(.95)}
.fmt-sep{width:1px;height:22px;background:rgba(255,255,255,.06);margin:0 2px;flex-shrink:0}

/* ═══ BUTTONS ═══ */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:7px 15px;font-family:var(--mc);font-size:.68rem;cursor:pointer;transition:all .15s ease;text-shadow:1px 1px 0 rgba(0,0,0,.7);border:none;border-radius:3px}
.btn:disabled{opacity:.35;cursor:not-allowed}.btn:active:not(:disabled){transform:translateY(2px)}
.btn-p{background:linear-gradient(180deg,color-mix(in srgb,var(--btn-bg),#fff 10%),var(--btn-bg));color:#fff;border:3px solid;border-top-color:var(--btn-hi);border-left-color:var(--btn-hi);border-bottom-color:var(--btn-lo);border-right-color:var(--btn-lo)}
.btn-p:hover:not(:disabled){background:linear-gradient(180deg,color-mix(in srgb,var(--btn-bg),#fff 20%),color-mix(in srgb,var(--btn-bg),#fff 5%))}
.btn-s{background:linear-gradient(180deg,color-mix(in srgb,var(--btn2-bg),#fff 8%),var(--btn2-bg));color:#fff;border:3px solid;border-top-color:var(--btn2-hi);border-left-color:var(--btn2-hi);border-bottom-color:var(--btn2-lo);border-right-color:var(--btn2-lo)}
.btn-g{background:rgba(0,0,0,.25);color:var(--text-sec);border:2px solid var(--input-brd)}
.format-toggle{opacity:.5;border:2px solid var(--panel-border);transition:all .15s}
.format-toggle.active{opacity:1;border-color:var(--accent);background:color-mix(in srgb,var(--accent),transparent 85%)}
/* Custom Music Discs - merchant type picker */
.da-merchant-pick{opacity:.55;border:2px solid var(--panel-border)!important;transition:all .15s;background:rgba(0,0,0,0.25);position:relative;cursor:pointer}
.da-merchant-pick:hover{opacity:.85;border-color:color-mix(in srgb,var(--accent) 55%,transparent)!important}
.da-merchant-pick.active{opacity:1;border-color:var(--accent)!important;background:color-mix(in srgb,var(--accent) 22%,rgba(0,0,0,0.5))!important;box-shadow:0 0 18px color-mix(in srgb,var(--accent) 45%,transparent),3px 3px 0 #000;transform:translateY(-1px)}
.da-merchant-pick.active::before{content:'✓';position:absolute;top:6px;right:8px;font-family:var(--mc);font-size:.65rem;color:var(--accent);text-shadow:1px 1px 0 #000}
.btn-g:hover:not(:disabled){background:rgba(0,0,0,.4);color:var(--text)}
.btn-forge{width:100%;padding:12px;font-size:1rem;letter-spacing:3px;background:linear-gradient(180deg,color-mix(in srgb,var(--btn-bg),#fff 12%),var(--btn-bg));color:#fff;border:4px solid;border-top-color:var(--btn-hi);border-left-color:var(--btn-hi);border-bottom-color:var(--btn-lo);border-right-color:var(--btn-lo);text-shadow:2px 2px 0 rgba(0,0,0,.6);box-shadow:0 4px 0 var(--btn-lo)}
.btn-forge:active:not(:disabled){box-shadow:0 1px 0 var(--btn-lo);transform:translateY(3px)}
.btn-row{display:flex;justify-content:space-between;gap:.5rem;margin-top:1rem}
.btn-row-r{margin-left:auto;display:flex;gap:.4rem}

/* ═══ DROPZONE ═══ */
.dz{border:3px dashed color-mix(in srgb,var(--text),transparent 80%);padding:2.8rem 1rem;text-align:center;cursor:pointer;transition:all .2s;background:rgba(0,0,0,.1);position:relative;overflow:hidden}
.dz:hover,.dz.over{border-color:var(--accent);background:color-mix(in srgb,var(--accent),transparent 94%)}
.dz input[type="file"]{position:absolute;inset:0;opacity:0;cursor:pointer}
.dz-icon{font-size:2.6rem;margin-bottom:.45rem}.dz-text{color:var(--text-sec);font-size:.7rem;text-shadow:1px 1px 0 #000}.dz-text strong{color:var(--accent)}
.dz.dz-thin{padding:.55rem .8rem;display:flex;align-items:center;justify-content:center;gap:.5rem}
.dz.dz-thin .dz-icon{font-size:1.3rem;margin-bottom:0}
.dz.dz-thin .dz-text{font-size:.62rem}
.dz-hint{color:var(--text-mut);font-size:.52rem;margin-top:.2rem;text-shadow:1px 1px 0 #000}

/* ═══ PACK STACK ═══ */
.pack-stack{margin-top:.6rem;position:relative}
.pack-card{background:rgba(0,0,0,.3);border:2px solid var(--input-brd);padding:.5rem .7rem;margin-bottom:3px;cursor:grab;transition:all .15s,box-shadow .2s;user-select:none;display:flex;align-items:center;gap:.5rem;position:relative}
.pack-card:active{cursor:grabbing}
.pack-card:hover{background:rgba(255,255,255,.03);border-color:var(--panel-hi)}
.pack-card.dragging{opacity:.3;transform:scale(.98)}
.pack-card.drag-target{border-top:3px solid var(--accent)}
.pack-card.locked{border-left:3px solid var(--gold)}
.pc-grip{color:var(--text-mut);font-size:.8rem;flex-shrink:0;width:16px;text-align:center}
.pc-rank{font-size:.55rem;color:#000;background:var(--gold);padding:1px 5px;flex-shrink:0;text-shadow:none;min-width:18px;text-align:center}
.pc-info{flex:1;min-width:0}.pc-name{font-size:.68rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:1px 1px 0 #000}
.pc-meta{font-size:.5rem;color:var(--text-mut);margin-top:1px;text-shadow:1px 1px 0 #000}
.pc-actions{display:flex;gap:3px;flex-shrink:0}
.pc-btn{background:none;border:1px solid transparent;color:var(--text-mut);cursor:pointer;font-size:.7rem;padding:2px 4px;transition:all .1s}
.pc-btn:hover{color:var(--text);border-color:var(--panel-hi)}
.pc-btn.lock-on{color:var(--gold)}
.pc-btn.rm:hover{color:var(--red)}
.pack-hint{color:var(--text-mut);font-size:.52rem;margin-top:.35rem;text-shadow:1px 1px 0 #000;display:flex;align-items:center;gap:.3rem}

/* ═══ ICON GEN ═══ */
.icon-area{display:flex;gap:1rem;align-items:flex-start;flex-wrap:wrap}
.icon-canvas-wrap{width:128px;height:128px;border:3px solid var(--input-brd);background:rgba(0,0,0,.4);display:flex;align-items:center;justify-content:center;flex-shrink:0;image-rendering:pixelated;overflow:hidden}
.icon-canvas-wrap canvas{image-rendering:pixelated}
.icon-controls{flex:1;min-width:200px}
.icon-row{display:flex;gap:.4rem;align-items:center;margin-bottom:.4rem}
.icon-row label{font-size:.55rem;color:var(--text-sec);min-width:60px;text-shadow:1px 1px 0 #000}
.icon-row input[type="range"]{flex:1;accent-color:var(--accent)}
.icon-badges{display:flex;gap:.3rem;flex-wrap:wrap;margin-top:.3rem}
.badge{font-size:.53rem;padding:2px 6px;border:1px solid var(--input-brd);color:var(--text-mut);text-shadow:1px 1px 0 #000}
.badge.g{border-color:var(--green-dk);color:var(--green)}

/* ═══ TOTEM ═══ */
.totem-flex{display:flex;align-items:center;justify-content:center;gap:1.2rem;flex-wrap:wrap;margin-top:.8rem}
.totem-col{text-align:center}
.totem-col-label{font-size:.55rem;color:var(--text-mut);text-transform:uppercase;letter-spacing:1px;margin-bottom:.3rem;text-shadow:1px 1px 0 #000}
.totem-box{width:128px;height:128px;border:3px solid var(--gold);background:rgba(0,0,0,.4);display:flex;align-items:center;justify-content:center;image-rendering:pixelated;box-shadow:0 0 16px color-mix(in srgb,var(--gold),transparent 80%)}
.totem-box canvas{image-rendering:pixelated;width:128px;height:128px}
.skin-box{width:128px;height:128px;border:2px solid var(--input-brd);background:rgba(0,0,0,.4);display:flex;align-items:center;justify-content:center;image-rendering:pixelated;overflow:hidden}
.skin-box img{image-rendering:pixelated;max-width:100%;max-height:100%}
.totem-arrow{font-size:1.3rem;color:var(--gold);text-shadow:0 0 10px var(--gold)}
.totem-result{display:none;margin-top:.8rem;padding:.8rem;background:rgba(0,0,0,.2);border:2px solid color-mix(in srgb,var(--accent),transparent 60%)}.totem-result.active{display:block}
.tm-style-btn{background:rgba(0,0,0,.25);border:3px solid var(--panel-border);border-radius:4px;padding:.4rem;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:.3rem;transition:border-color .15s,background .15s;color:var(--text)}
.tm-style-btn:hover{border-color:color-mix(in srgb,var(--accent),transparent 40%)}
.tm-style-btn.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent),transparent 85%)}
.tm-style-thumb{width:64px;height:64px;display:flex;align-items:center;justify-content:center;border-radius:3px}
.tm-style-thumb canvas{width:64px;height:64px;image-rendering:pixelated}
.tm-thumb-3d{position:relative;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 35%,#1a1530),#1a1530)}
.tm-thumb-3d-label{font-family:var(--mc);font-size:.7rem;color:var(--accent);text-shadow:0 0 8px var(--accent),1px 1px 0 #000;letter-spacing:1px}
.tm-style-label{font-family:var(--mc);font-size:.5rem;color:var(--text-sec);text-shadow:1px 1px 0 #000;text-align:center}
.tm-style-btn.active .tm-style-label{color:var(--text)}
.tm-fmt-btn:hover{filter:brightness(1.15)}
.tm-fmt-btn.active{border-color:var(--accent)!important;background:color-mix(in srgb,var(--accent),transparent 75%)!important;color:var(--text)!important}

/* ═══ COORDINATE CALCULATOR ═══ */
.coord-converter{display:flex;gap:1rem;align-items:flex-start;flex-wrap:wrap}
.coord-side{flex:1;min-width:160px;padding:.8rem;border:2px solid var(--panel-border);border-radius:4px;background:rgba(0,0,0,.15)}
.coord-side .field{margin-bottom:.4rem}
.coord-ow-side{border-left:3px solid #55FF55}
.coord-nether-side{border-left:3px solid #FF5555}
.coord-dim-label{font-family:var(--mc);font-size:.75rem;letter-spacing:2px;margin-bottom:.5rem;text-shadow:1px 1px 0 #000}
.coord-arrows{display:flex;flex-direction:column;align-items:center;justify-content:center;padding-top:2rem}

/* ═══ SKIN PACK ═══ */
.skin-list{margin-top:.6rem}
.skin-item{display:flex;align-items:center;gap:.5rem;background:rgba(0,0,0,.25);border:2px solid var(--input-brd);padding:.45rem .6rem;margin-bottom:3px;transition:all .12s}
.skin-item:hover{border-color:var(--panel-hi)}
.si-thumb{width:32px;height:32px;border:1px solid var(--input-brd);background:rgba(0,0,0,.3);image-rendering:pixelated;flex-shrink:0;overflow:hidden;display:flex;align-items:center;justify-content:center}
.si-thumb img{image-rendering:pixelated;width:100%;height:100%}
.si-info{flex:1;min-width:0}
.si-name-input{background:transparent;border:1px solid transparent;padding:2px 4px;font-size:.65rem;color:var(--text);font-family:var(--mc);width:100%;text-shadow:1px 1px 0 #000;outline:none}
.si-name-input:focus{border-color:var(--accent);background:var(--input-bg)}
.si-badges{display:flex;gap:.2rem;margin-top:1px}
.si-rm{background:none;border:none;color:var(--text-mut);cursor:pointer;font-size:.75rem;padding:2px;flex-shrink:0}.si-rm:hover{color:var(--red)}

/* ═══ CAPE BUILDER ═══ */
.cb-cape-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:.5rem;margin-top:.6rem}
.cb-cape-card{background:rgba(0,0,0,.25);border:2px solid var(--input-brd);padding:.4rem;text-align:center;position:relative;transition:all .12s}
.cb-cape-card:hover{border-color:var(--panel-hi)}
.cb-cape-thumb{width:100%;aspect-ratio:10/16;image-rendering:pixelated;object-fit:contain;background:repeating-conic-gradient(rgba(255,255,255,.08) 0% 25%,rgba(255,255,255,.15) 0% 50%) 0 0/8px 8px;display:block;margin-bottom:.3rem}
.cb-cape-name{font-size:.5rem;color:var(--text-sec);word-break:break-all;text-shadow:1px 1px 0 #000}
.cb-cape-rm{position:absolute;top:2px;right:4px;background:none;border:none;color:var(--text-mut);cursor:pointer;font-size:.55rem;padding:2px;line-height:1}.cb-cape-rm:hover{color:var(--red)}
.cb-assign-area{}
.cb-skin-section{margin-bottom:.8rem;background:rgba(0,0,0,.15);border:2px solid var(--input-brd);padding:.5rem}
.cb-skin-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.4rem}
.cb-skin-head{width:28px;height:28px;image-rendering:pixelated;border:1px solid var(--input-brd);background:rgba(0,0,0,.3)}
.cb-skin-label{font-family:var(--mc);font-size:.55rem;color:var(--text);text-shadow:1px 1px 0 #000;flex:1}
.cb-skin-badges{display:flex;gap:.2rem}
.cb-cape-toggles{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:.3rem}
.cb-cape-toggle{display:flex;align-items:center;gap:.3rem;padding:.25rem .4rem;background:rgba(0,0,0,.2);border:2px solid var(--input-brd);cursor:pointer;transition:all .12s;user-select:none}
.cb-cape-toggle:hover{border-color:var(--panel-hi)}
.cb-cape-toggle.on{border-color:var(--accent);background:color-mix(in srgb,var(--accent),transparent 90%)}
.cb-cape-toggle-thumb{width:20px;height:32px;image-rendering:pixelated;object-fit:contain;flex-shrink:0}
.cb-cape-toggle-name{font-size:.48rem;color:var(--text-mut);text-shadow:1px 1px 0 #000;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cb-cape-toggle.on .cb-cape-toggle-name{color:var(--text)}
.cb-count{font-size:.5rem;color:var(--text-mut);text-shadow:1px 1px 0 #000;margin-left:auto}
.cb-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:.4rem}
.cb-gallery-item{background:rgba(0,0,0,.2);border:2px solid var(--input-brd);padding:.3rem;text-align:center;cursor:pointer;transition:all .12s;user-select:none}
.cb-gallery-item:hover{border-color:var(--panel-hi);background:rgba(0,0,0,.35)}
.cb-gallery-item.added{border-color:var(--accent);opacity:.5;pointer-events:none}
.cb-gallery-thumb{width:100%;aspect-ratio:10/16;image-rendering:pixelated;object-fit:contain;background:repeating-conic-gradient(rgba(255,255,255,.08) 0% 25%,rgba(255,255,255,.15) 0% 50%) 0 0/8px 8px;display:block;margin-bottom:.2rem}
.cb-gallery-name{font-size:.46rem;color:var(--text-sec);text-shadow:1px 1px 0 #000;overflow:hidden;line-height:1.25;white-space:normal;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;min-height:2.5em}
/* 9/22 S9: the tiles are ~69px wide and the name used to be one nowrap line with
   an ellipsis, so "Minecon 2016" and four other capes rendered as "Minecon 20...".
   Two lines now, tile width unchanged; min-height keeps one- and two-line tiles
   the same size so the grid does not go ragged. Names still too long for two
   lines get the -long size step from tool-capebuilder.js. */
.cb-gallery-name.cb-name-long{font-size:.4rem}
#page-capebuilder .cb-gallery-name.cb-name-long{font-size:.5rem}
/* cape builder: bigger assignment text + colored quick-action buttons (Cooper) */
#page-capebuilder .cb-skin-label{font-size:.7rem}
#page-capebuilder .cb-cape-toggle-name,#page-capebuilder .cb-cape-name,#page-capebuilder .cb-gallery-name{font-size:.58rem}
#page-capebuilder .cb-count{font-size:.64rem}
#page-capebuilder #cbAssignAll{font-size:.58rem!important;color:#fff;background:linear-gradient(180deg,color-mix(in srgb,var(--accent),#fff 10%),color-mix(in srgb,var(--accent),#000 20%));border-top-color:color-mix(in srgb,var(--accent),#fff 28%);border-left-color:color-mix(in srgb,var(--accent),#fff 28%);border-bottom-color:color-mix(in srgb,var(--accent),#000 40%);border-right-color:color-mix(in srgb,var(--accent),#000 40%)}
#page-capebuilder #cbClearAll{font-size:.58rem!important;background:transparent;color:var(--accent);border:2px solid var(--accent)}

/* ═══ CAPE EDITOR ═══ */
#page-capeeditor{max-width:1200px;margin:0 auto;padding:0 1rem;font-size:1.15em}
@media(max-width:600px){#page-capeeditor{font-size:1em}}
.ce-wrap{display:flex;gap:1rem;flex-wrap:wrap}
.ce-canvas-area{flex:1;min-width:0;max-width:100%}
.ce-canvas-wrap{position:relative;background:rgba(0,0,0,0.25);border:3px solid var(--panel-border);border-top-color:var(--panel-hi);border-left-color:var(--panel-hi);border-bottom-color:var(--panel-lo);border-right-color:var(--panel-lo);overflow:hidden;cursor:crosshair;touch-action:none}
.ce-canvas-wrap canvas{display:block;image-rendering:pixelated}
.ce-canvas-wrap #ceTemplate{width:100%}
.ce-canvas-wrap #ceGrid,.ce-canvas-wrap #ceLabels,.ce-canvas-wrap #ceCvs{position:absolute;top:0;left:0;width:100%;height:100%}
.ce-sidebar{width:260px;flex-shrink:0}
.ce-tool-row{display:flex;gap:3px;flex-wrap:wrap;margin-bottom:.5rem}
.ce-tool-btn{font-family:var(--mc);font-size:.5rem;padding:4px 8px;cursor:pointer;background:rgba(0,0,0,.3);border:2px solid var(--input-brd);color:var(--text-mut);text-shadow:1px 1px 0 #000;transition:all .12s}
.ce-tool-btn:hover{border-color:var(--panel-hi);color:var(--text)}
.ce-tool-btn.active{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent),transparent 90%)}
.ce-color-area{margin-bottom:.5rem}
.ce-color-row{display:flex;align-items:center;gap:.4rem;margin-bottom:.3rem}
.ce-color-row label{font-size:.5rem;color:var(--text-sec);min-width:40px;text-shadow:1px 1px 0 #000}
.ce-color-preview{width:28px;height:28px;border:2px solid var(--input-brd);cursor:pointer}
.ce-palette{display:flex;gap:3px}
.ce-pal-swatch{width:24px;height:24px;border:2px solid var(--input-brd);cursor:pointer;transition:border-color .1s;flex-shrink:0}
.ce-pal-swatch:hover{border-color:#fff}
.ce-pal-swatch.active{border-color:var(--accent);box-shadow:0 0 4px var(--accent)}
.ce-opacity-row{display:flex;align-items:center;gap:.4rem;margin-top:.5rem}
.ce-opacity-row label{font-size:.5rem;color:var(--text-sec);text-shadow:1px 1px 0 #000;min-width:40px}
.ce-opacity-row input[type="range"]{flex:1;accent-color:var(--accent);height:4px}
.ce-alpha-val{font-size:.6rem;color:var(--text-sec);text-shadow:1px 1px 0 #000;min-width:22px;text-align:right}
.ce-layers{margin-top:.5rem}
.ce-layer{display:flex;align-items:center;gap:.3rem;padding:.25rem .4rem;background:rgba(0,0,0,.2);border:2px solid var(--input-brd);margin-bottom:2px;font-size:.5rem;color:var(--text-sec);text-shadow:1px 1px 0 #000}
.ce-layer.active{border-color:var(--accent);color:var(--text)}
.ce-layer-name{flex:1;cursor:pointer}
.ce-layer input[type="checkbox"]{accent-color:var(--accent);width:12px;height:12px}
.ce-view-toggle{display:flex;gap:4px;margin-bottom:.6rem}
.ce-view-btn{font-family:var(--mc);font-size:.5rem;padding:6px 12px;cursor:pointer;color:#fff;text-shadow:1px 1px 0 #000;transition:all .12s;background:linear-gradient(180deg,color-mix(in srgb,var(--btn2-bg),#fff 8%),var(--btn2-bg));border:2px solid;border-top-color:var(--btn2-hi);border-left-color:var(--btn2-hi);border-bottom-color:var(--btn2-lo);border-right-color:var(--btn2-lo)}
.ce-view-btn:hover{filter:brightness(1.13)}
.ce-view-btn.active{color:#fff;background:linear-gradient(180deg,color-mix(in srgb,var(--accent),#fff 12%),color-mix(in srgb,var(--accent),#000 18%));border-color:var(--accent);border-top-color:color-mix(in srgb,var(--accent),#fff 30%);border-left-color:color-mix(in srgb,var(--accent),#fff 30%);border-bottom-color:color-mix(in srgb,var(--accent),#000 42%);border-right-color:color-mix(in srgb,var(--accent),#000 42%)}
.ce-3d-wrap{position:relative;background:rgba(0,0,0,0.25);border:3px solid var(--panel-border);border-top-color:var(--panel-hi);border-left-color:var(--panel-hi);border-bottom-color:var(--panel-lo);border-right-color:var(--panel-lo);display:flex;align-items:center;justify-content:center;min-height:300px;overflow:hidden;touch-action:none}
.ce-3d-wrap canvas{display:block;max-width:100%}
.ce-3d-hint{position:absolute;bottom:6px;right:8px;font-size:.48rem;color:var(--text-mut);text-shadow:1px 1px 0 #000;pointer-events:none}
.ce-layer-list{max-height:180px;overflow-y:auto}
.ce-lyr{display:flex;align-items:center;gap:.3rem;padding:.25rem .4rem;background:rgba(0,0,0,.2);border:2px solid var(--input-brd);margin-bottom:2px;font-size:.6rem;color:var(--text-sec);text-shadow:1px 1px 0 #000;cursor:pointer;transition:all .1s}
.ce-lyr:hover{border-color:var(--panel-hi)}
.ce-lyr.active{border-color:var(--accent);color:var(--text);background:color-mix(in srgb,var(--accent),transparent 92%)}
.ce-lyr input[type="checkbox"]{accent-color:var(--accent);width:12px;height:12px;cursor:pointer}
.ce-lyr-name{flex:1}
.ce-select-overlay{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:5}
@media(max-width:600px){.ce-sidebar{width:100%}.ce-wrap{flex-direction:column}}

/* ═══ PROGRESS ═══ */
.progress-area{display:none;margin-top:.8rem}.progress-area.active{display:block}
.progress-track{width:100%;height:12px;background:rgba(0,0,0,.45);border:2px solid var(--input-brd);overflow:hidden}
.progress-fill{height:100%;width:0%;background:repeating-linear-gradient(90deg,var(--accent-dk),var(--accent-dk) 7px,var(--accent) 7px,var(--accent) 14px);background-size:14px 100%;animation:ps .4s linear infinite;transition:width .3s}
@keyframes ps{0%{background-position:0 0}100%{background-position:14px 0}}
.progress-label{font-size:.55rem;color:var(--text-sec);margin-top:.25rem;text-align:center;text-shadow:1px 1px 0 #000}
.log-area{margin-top:.3rem;max-height:90px;overflow-y:auto;display:none}.log-area.active{display:block}
.log-line{font-size:.5rem;color:var(--text-mut);padding:1px 0;text-shadow:1px 1px 0 #000}.log-line.ok{color:var(--green)}.log-line.warn{color:var(--gold)}.log-line.err{color:var(--red)}

.manifest-preview{background:rgba(0,0,0,.45);border:2px solid var(--input-brd);padding:.5rem;font-family:var(--mono);font-size:.55rem;line-height:1.5;color:var(--text-sec);overflow-x:auto;white-space:pre;max-height:180px;overflow-y:auto;-webkit-font-smoothing:auto}
.json-key{color:var(--accent)}.json-str{color:var(--gold)}.json-num{color:var(--aqua)}

.summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:.3rem;margin-bottom:.4rem}
.summary-item{background:rgba(0,0,0,.25);border:2px solid var(--input-brd);padding:.4rem}
.si-label2{font-size:.53rem;color:var(--text-mut);text-transform:uppercase;letter-spacing:1px;text-shadow:1px 1px 0 #000}
.si-value2{font-size:.68rem;word-break:break-all;text-shadow:1px 1px 0 #000}.si-value2.accent{color:var(--accent)}

.footer{text-align:center;padding:1.4rem 1rem 2.2rem;color:var(--text);font-size:.55rem;opacity:.75;text-shadow:1px 1px 2px rgba(0,0,0,.7);letter-spacing:.02em;line-height:1.6}
.toast{position:fixed;bottom:1rem;left:50%;transform:translateX(-50%) translateY(80px);background:var(--panel);border:3px solid var(--panel-hi);padding:6px 14px;font-family:var(--mc);font-size:.65rem;color:var(--text);text-shadow:1px 1px 0 #000;z-index:999;opacity:0;transition:all .3s;pointer-events:none}
.toast.show{transform:translateX(-50%) translateY(0);opacity:1}.toast.error{border-color:var(--red);color:var(--red)}

.check-row{display:flex;align-items:center;gap:.4rem;margin-top:.3rem;font-size:.6rem;color:var(--text-sec);cursor:pointer;text-shadow:1px 1px 0 #000}
.check-row input{accent-color:var(--accent);width:14px;height:14px;cursor:pointer}
.skin-status{font-size:.5rem;color:var(--text-mut);text-shadow:1px 1px 0 #000}
.skin-status.ok{color:var(--green)}.skin-status.err{color:var(--red)}

/* ═══ LOGO ═══ */
[data-theme="light"] 
/* ═══ INSTRUCTIONS ═══ */
.tool-info{margin-top:.6rem}
.tool-info-title{font-size:.62rem;color:var(--accent);letter-spacing:2px;text-transform:uppercase;margin-bottom:.5rem;text-shadow:1px 1px 0 #000;padding-bottom:.3rem;border-bottom:2px solid color-mix(in srgb,var(--accent),transparent 80%)}
.inst-step{display:flex;gap:.5rem;margin-bottom:.45rem;align-items:flex-start}
.inst-num{display:inline-flex;align-items:flex-start;background:none!important;border:none!important;min-width:0;width:auto;height:auto;padding:0;margin:0 .45rem 0 0;color:var(--accent);font-family:var(--mc);font-weight:700;font-size:.74rem;line-height:1.55;flex-shrink:0}
.inst-num::after{content:"."}
.inst-text{font-size:.62rem;color:var(--text-sec);line-height:1.7;text-shadow:1px 1px 0 #000}.inst-text strong{color:var(--accent)}.inst-text em{color:var(--gold);font-style:normal}

/* Merger steps */
.m-steps{display:flex;justify-content:center;gap:0;margin:.8rem 0;flex-wrap:wrap}
.m-tab{display:flex;align-items:center;gap:4px;padding:6px 12px;background:var(--panel);border:2px solid transparent;border-bottom:3px solid rgba(0,0,0,.4);color:var(--text-mut);font-family:var(--mc);font-size:.6rem;cursor:pointer;transition:all .12s;text-shadow:1px 1px 0 #000}
.m-tab:hover{color:var(--text-sec)}.m-tab.active{color:var(--accent);border-color:color-mix(in srgb,var(--accent),#000 22%);border-bottom-color:color-mix(in srgb,var(--accent),#000 45%)}.m-tab.done{color:var(--text-sec);border-bottom-color:color-mix(in srgb,var(--accent),#000 30%)}
.m-conn{width:14px;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.12);font-size:.6rem}.m-conn.done{color:var(--accent)}
.m-panel{display:none;animation:fu .25s ease}.m-panel.active{display:block}

@media(max-width:600px){
  .desktop-home{display:none}
  .tool-card{padding:.7rem .5rem}
  .tool-icon{font-size:1.5rem;margin-bottom:.3rem}
  .tool-name{font-size:.68rem;letter-spacing:1px}
  .tool-desc{display:none}
  .tool-badge{font-size:.55rem;padding:1px 4px}
  .title-main{font-size:1.8rem;letter-spacing:3px}.title-block{padding:8px 18px}.title-sub-bar{padding:5px 14px}.title-sub{font-size:.58rem;letter-spacing:2px}
    .m-tab{padding:5px 7px;font-size:.5rem}
  .card{padding:.7rem}.icon-area{flex-direction:column}
  .totem-flex{flex-direction:column}.totem-arrow{transform:rotate(90deg)}
  .tm-style-row{grid-template-columns:repeat(2,1fr)!important}
  .tm-fmt-btn{font-size:.55rem!important}
  .summary-grid{grid-template-columns:1fr}.row{flex-direction:column}
  .navbar{flex-wrap:wrap;position:relative}.nav-links{display:none!important}
  .nav-right{margin-left:auto;display:flex;align-items:center;gap:4px}
  .nav-tools-btn{display:block;background:none;border:2px solid var(--panel-border);color:var(--text-mut);font-family:var(--mc);font-size:.5rem;padding:4px 8px;cursor:pointer;text-shadow:1px 1px 0 #000;white-space:nowrap}
  .nav-tools-btn:hover{border-color:var(--accent);color:var(--text)}
  /* Shrink the Discord square so it visually matches the Tools button height on mobile */
  .nav-discord-btn{width:26px;height:26px;border-radius:4px}
  .nav-discord-btn svg{width:14px;height:14px}
  .nav-dropdown{position:absolute;top:100%;right:0;background:rgba(10,8,22,0.96);border:2px solid var(--panel-border);border-top:none;z-index:100;min-width:180px;backdrop-filter:blur(12px)}
  .nav-dropdown.open{display:block}
  .nav-dd-item{padding:10px 16px;font-size:.55rem;color:var(--text-mut);cursor:pointer;border-bottom:1px solid rgba(255,255,255,.04);text-shadow:1px 1px 0 #000;letter-spacing:1px;text-decoration:none;display:block}
  .nav-dd-item:hover,.nav-dd-item:active{background:rgba(255,255,255,.05);color:var(--text)}
  .nav-dd-item.active{color:var(--accent)}
  #themeBtn{display:none}
  .nav-dd-label{padding:8px 16px 4px;font-size:.48rem;color:var(--accent);letter-spacing:2px;text-transform:uppercase;text-shadow:1px 1px 0 #000;border-top:1px solid rgba(255,255,255,.08);margin-top:2px;pointer-events:none}
  .nav-dd-label:first-child{border-top:none;margin-top:0}
  /* Section dropdowns inside the mobile Tools menu - each <details> wraps a category. */
  .nav-dd-group{margin:0}
  .nav-dd-group>summary.nav-dd-label{cursor:pointer;pointer-events:auto;padding:10px 16px;font-size:.5rem;display:flex;align-items:center;justify-content:space-between;list-style:none;user-select:none}
  .nav-dd-group>summary.nav-dd-label::-webkit-details-marker{display:none}
  .nav-dd-group>summary.nav-dd-label::after{content:'▾';font-size:.55rem;opacity:.65;transition:transform .15s ease;margin-left:8px}
  .nav-dd-group[open]>summary.nav-dd-label::after{transform:rotate(180deg)}
  .nav-dd-group>summary.nav-dd-label:hover,.nav-dd-group>summary.nav-dd-label:active{background:rgba(255,255,255,.05);color:#fff}
  .nav-dd-group .nav-dd-item{padding-left:28px}
  .nav-dd-bottom{padding:10px 16px;font-size:.55rem;color:var(--text-mut);cursor:pointer;border-top:2px solid var(--panel-border);text-shadow:1px 1px 0 #000;letter-spacing:1px;margin-top:2px;text-decoration:none;display:block}
  .nav-dd-bottom:hover,.nav-dd-bottom:active{background:rgba(255,255,255,.05);color:var(--text)}
  .nav-dd-bottom.active{color:var(--accent)}
  .nav-dd-theme{padding:10px 16px;font-size:.55rem;color:var(--text-mut);cursor:pointer;text-shadow:1px 1px 0 #000;letter-spacing:1px}
  .nav-dd-theme:hover,.nav-dd-theme:active{background:rgba(255,255,255,.05);color:var(--text)}
  .container{padding:0 .5rem}
  .home-hero{padding:1.5rem 0 1rem}
  .inst-text{font-size:.55rem}
  .dz{padding:.8rem}
  .btn-row{gap:.3rem;flex-wrap:wrap}
  .btn{font-size:.55rem;padding:6px 10px}
  .fmt-bar{gap:2px}.fmt-btn{width:20px;height:20px;font-size:.48rem}
  .field-label{font-size:.56rem}
  input[type="text"],input[type="number"],textarea{font-size:.58rem;padding:6px 8px}
  .skin-item{padding:.4rem}
  .si-name-input{font-size:.52rem}
  .footer{font-size:.55rem;padding:1rem 0.5rem 1.5rem}
  .av-prev-wrap{flex-direction:column;align-items:center}
  .av-prev-wrap canvas{width:180px!important;height:180px!important}
  .av-ctrls{min-width:100%}
  .av-gallery{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}
  .pack-hint{font-size:.5rem}
  .tm-grid{grid-template-columns:1fr!important;gap:.8rem!important}

}

/* ═══ AVATAR MAKER ═══ */
.av-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:.5rem;margin:.4rem 0}
.av-thumb{cursor:pointer;border:3px solid var(--panel-border);border-radius:4px;overflow:hidden;transition:all .2s;background:repeating-conic-gradient(rgba(255,255,255,.08) 0% 25%, rgba(255,255,255,.02) 0% 50%) 0 0/10px 10px;position:relative}
.av-thumb:hover{border-color:var(--accent);transform:scale(1.03)}
.av-thumb.active{border-color:var(--accent);box-shadow:0 0 12px color-mix(in srgb,var(--accent),transparent 70%)}
.av-thumb canvas{width:100%;aspect-ratio:1;display:block;image-rendering:pixelated}
.av-thumb-label{position:absolute;bottom:0;left:0;right:0;text-align:center;font-size:.5rem;padding:10px 2px 3px;background:linear-gradient(180deg,transparent,rgba(0,0,0,.62));color:#fff;font-family:var(--mc);text-shadow:1px 1px 2px #000}
.av-drop{border:2px dashed var(--input-brd);border-radius:6px;padding:9px 8px;text-align:center;font-size:.55rem;color:var(--text-mut);cursor:pointer;background:var(--input-bg);transition:border-color .15s,color .15s;font-family:var(--mc);line-height:1.4}
.av-drop:hover,.av-drop:focus,.av-drop.drag{border-color:var(--accent);color:var(--accent);outline:none}
.av-grp-item{position:relative;width:36px;height:36px;border:2px solid var(--panel-border);border-radius:3px;overflow:hidden;background:rgba(0,0,0,.3)}
.av-grp-item img{width:100%;height:100%;image-rendering:pixelated;display:block}
.av-grp-x{position:absolute;top:-4px;right:-4px;width:14px;height:14px;border-radius:50%;background:#c33;color:#fff;font-size:9px;line-height:14px;text-align:center;cursor:pointer;font-family:var(--mc);border:1px solid #000}
.av-grp-x:hover{background:#e44}
.av-edit{display:none}
.av-edit.active{display:block}
.av-prev-wrap{display:flex;gap:1rem;align-items:flex-start;flex-wrap:wrap}
.av-prev-wrap canvas{border:2px solid var(--panel-border);border-radius:4px;background:repeating-conic-gradient(rgba(255,255,255,.08) 0% 25%, rgba(255,255,255,.02) 0% 50%) 0 0/16px 16px;flex-shrink:0}
.av-ctrls{flex:1;min-width:200px}
.av-bg-row{display:flex;gap:.4rem;align-items:center;margin:.3rem 0;flex-wrap:wrap}
.av-bg-row label{font-size:.55rem;color:var(--text-sec);min-width:55px}
.av-bg-row input[type="color"]{width:36px;height:24px;border:2px solid var(--panel-border);background:var(--input-bg);cursor:pointer;padding:1px}
.av-bg-row input[type="range"]{flex:1;accent-color:var(--accent)}
/* Systemic accent for any range slider that didn't get an explicit accent-color (e.g. #avSize/#avBorder) */
input[type="range"]{accent-color:var(--accent)}
.av-dl-row{display:flex;gap:.3rem;flex-wrap:wrap;justify-content:center;margin:.4rem 0}

/* ═══ Edition Toggle ═══ */
.edition-toggle{display:inline-flex;border-radius:3px;overflow:hidden;border:2px solid var(--panel-border);font-size:.5rem;vertical-align:middle;margin-left:.3rem}
.edition-btn{padding:3px 8px;cursor:pointer;font-family:var(--mc);border:none;transition:all .15s;color:#fff}
.edition-btn.java{background:#555}
.edition-btn.bedrock{background:#555}
.edition-btn.java.active{background:#2d8a2e}
.edition-btn.bedrock.active{background:#666}
/* ═══ CUSTOM PAINTINGS ═══ */
#ptItems{display:flex;flex-wrap:wrap;justify-content:center;gap:.7rem;margin:.5rem 0}
.pt-item{display:flex;flex-direction:column;gap:.55rem;padding:.7rem;background:var(--input-bg);border:2px solid var(--panel-border);border-radius:8px;cursor:grab;width:fit-content;max-width:280px}
.pt-item.dragging{cursor:grabbing;opacity:.85}
/* Widen the card while its inline "Replaces" panel is expanded so the
   grid of same-size candidates has room (panel reflows the card, it does
   not float over it). */
.pt-item.pt-rep-open{max-width:420px;width:420px;cursor:default}
@media(max-width:480px){.pt-item.pt-rep-open{width:100%;max-width:100%}}
/* Desktop (>=1100px): the "Replaces" panel opens to the RIGHT of the card
   instead of pushing content down. Still normal document flow (CSS grid
   reflow, not position:absolute/fixed) - Cooper explicitly rejected a
   floating popover here before ("those little pop ups are too difficult
   to get right"), so this keeps that constraint: no anchor math, no
   overflow clipping from ancestors, no z-index fights. Below 1100px the
   card stays a single column and the panel opens downward as before. */
@media(min-width:1100px){
  .pt-item.pt-rep-open{display:grid;grid-template-columns:minmax(240px,280px) minmax(340px,1fr);grid-template-rows:auto auto auto auto;align-items:start;column-gap:.85rem;max-width:900px;width:min(900px,96vw)}
  .pt-item.pt-rep-open>*{grid-column:1}
  /* Panel top edge lines up with the TOP of the card (grid row 1) - Cooper:
     "the tops of each thing need to be lined up". Spans all rows so the
     left column (head/preview/controls) sits beside it. */
  .pt-item.pt-rep-open>.pt-inline-outer{grid-column:2;grid-row:1/-1;align-self:start;width:auto;max-width:none}
  .pt-item.pt-rep-open .pt-inline-inner{height:auto}
  /* NO inner scrolling on desktop - all options render at full height and
     the page scrolls naturally (Cooper: "instead of scrolling down just
     display them all"). auto-fill columns wrap instead of overflowing
     sideways, and min-width:0 on the options stops grid blowout - both
     scrollbars gone. */
  .pt-item.pt-rep-open .pt-inline-panel{margin-top:0;max-height:none}
  .pt-item.pt-rep-open .pt-inline-body{overflow:visible;grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
  .pt-item.pt-rep-open .pt-modal-opt{min-width:0}
}
/* 1100-1300px: narrow the left (main) column so the panel keeps >=340px
   (needed by the thumbnail grid) while the whole card still fits. */
@media(min-width:1100px) and (max-width:1300px){
  .pt-item.pt-rep-open{grid-template-columns:minmax(200px,220px) minmax(340px,1fr);max-width:640px;width:min(640px,94vw)}
}
.pt-head{display:flex;align-items:center;gap:.45rem}
.pt-thumb{width:38px;height:38px;image-rendering:pixelated;border:2px solid var(--panel-border);border-radius:4px;object-fit:contain;background:repeating-conic-gradient(rgba(255,255,255,.08) 0% 25%, rgba(255,255,255,.02) 0% 50%) 0 0/8px 8px;flex-shrink:0}
.pt-name{font-family:var(--mc);font-size:.6rem;color:var(--text);text-shadow:1px 1px 0 #000;flex:1;word-break:break-word;line-height:1.25}
.pt-mini-wrap{display:flex;justify-content:center;align-items:center;padding:.4rem;background:rgba(0,0,0,.3);border-radius:5px;min-width:120px}
.pt-mini-preview{image-rendering:pixelated;border:3px solid #5a3a1e;border-radius:2px;background:#3a2a1a;box-shadow:2px 2px 6px rgba(0,0,0,.5);display:block}
.pt-controls{display:flex;gap:.4rem;flex-wrap:wrap}
.pt-select-wrap{display:flex;flex-direction:column;gap:.15rem;flex:1;min-width:110px}
.pt-select-label{font-family:var(--mc);font-size:.55rem;color:var(--text-mut);text-transform:uppercase;letter-spacing:1px;text-shadow:1px 1px 0 #000}
.pt-select{padding:6px 8px;border:2px solid var(--panel-border);border-radius:4px;background:var(--input-bg);color:var(--text);font-family:var(--mc);font-size:.6rem;cursor:pointer;text-shadow:1px 1px 0 #000;width:100%;box-sizing:border-box;line-height:1.25}
/* select elements get UA native form-control chrome (appearance:auto) that inflates
   the box beyond this declared padding, so a <select> rendered ~14px taller than the
   <button class="pt-select"> (Replaces trigger) sharing this class - misaligning the
   Size/Replaces/Resolution row. appearance:none + a drawn arrow makes select boxes
   match button boxes exactly, and matches the site's blocky pixel-art look better
   than the native OS arrow anyway. */
.pt-controls select.pt-select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--text-mut) 50%),linear-gradient(135deg,var(--text-mut) 50%,transparent 50%);background-position:calc(100% - 14px) center,calc(100% - 9px) center;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding:6px 26px 6px 8px;font-size:.6rem;min-height:0}
.pt-select:hover{border-color:color-mix(in srgb,var(--accent) 60%,var(--panel-border))}
.pt-select:focus{border-color:var(--accent);outline:none}
.pt-crop-box{display:flex;flex-direction:column;gap:.4rem;background:rgba(0,0,0,.18);padding:.55rem;border-radius:5px;border:1px solid color-mix(in srgb,var(--text-mut),transparent 70%)}
.pt-crop-row{display:flex;align-items:center;gap:.5rem}
.pt-crop-row label{font-family:var(--mc);font-size:.55rem;color:var(--text-sec);text-shadow:1px 1px 0 #000;min-width:24px;text-align:center}
.pt-crop-row input[type=range]{flex:1;height:18px;cursor:pointer}
.pt-crop-reset{padding:5px 10px;border:1px solid var(--panel-border);border-radius:4px;background:var(--btn2-bg);color:var(--text);cursor:pointer;font-size:.55rem;font-family:var(--mc);text-shadow:1px 1px 0 #000;align-self:center}
.pt-crop-reset:hover{border-color:var(--accent)}
.pt-remove{padding:4px 9px;border:1px solid var(--panel-border);border-radius:4px;background:var(--btn2-bg);color:var(--red);cursor:pointer;font-size:.65rem;flex-shrink:0;font-family:var(--mc);text-shadow:1px 1px 0 #000;line-height:1}
.pt-remove:hover{border-color:var(--red)}
.pt-preview-item{text-align:center}
.pt-preview-item canvas{image-rendering:pixelated;border:3px solid #5a3a1e;border-radius:2px;background:#3a2a1a;box-shadow:2px 2px 6px rgba(0,0,0,.4)}
.pt-preview-label{font-family:var(--mc);font-size:.55rem;color:var(--text-sec);text-shadow:1px 1px 0 #000;margin-top:.25rem}

/* ═══ 3D SKIN EDITOR ═══ */
#page-skineditor3d{max-width:none!important;padding:0!important;margin:0!important;overflow:visible}
#page-skineditor3d .se3d-wrap{display:flex;gap:0;min-height:calc(100vh - 192px);overflow:visible;margin:0;padding:0;position:relative;background:rgba(0,0,0,0.25)}
/* se3d status clip (WO 2026-08-20, site-todo #8): the old calc(100vh - 56px) ignored the desktop html zoom:1.15 and the
   tool hero above the wrap (nav 44 + hero 147 = ~192 css px), so the wrap bottom sat ~275px below the fold and the right
   panel (and its status line) could never reach the viewport. Under zoom, 100vh is NOT divided by the zoom factor.
   2026-09-20 (Cooper: "make it so people scroll the page, not the little box"): the right panel is no longer its own
   scrollport. The wrap keeps the same size on tall windows (height -> min-height) and simply grows when the panel's
   content is taller, so the DOCUMENT scrolls and nothing can be clipped off. */
@media (hover:hover) and (pointer:fine){#page-skineditor3d .se3d-wrap{min-height:calc(100vh / 1.15 - 192px)}}
#page-skineditor3d .se3d-panel{flex-shrink:0}
#page-skineditor3d .se3d-panel::-webkit-scrollbar{width:6px}
#page-skineditor3d .se3d-panel::-webkit-scrollbar-thumb{background:var(--panel-hi);border-radius:0}
#page-skineditor3d .se3d-panel::-webkit-scrollbar-track{background:var(--panel-lo)}
#page-skineditor3d .se3d-panel-main{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0;align-self:flex-start;height:calc(100vh - 192px);min-height:380px}
/* the stage keeps the height the wrap used to force, so nothing on a tall window moves; only the right panel
   extends past it and takes the document with it */
@media (hover:hover) and (pointer:fine){#page-skineditor3d .se3d-panel-main{height:calc(100vh / 1.15 - 192px)}}
#page-skineditor3d .se3d-panel-right{width:280px;padding:10px 12px 16px;overflow:visible;position:relative;background:var(--panel);border-left:3px solid var(--panel-border);border-top-color:var(--panel-hi)}
#page-skineditor3d .se3d-view-toggle{display:flex;background:var(--panel);border-bottom:3px solid var(--panel-border);border-bottom-color:var(--panel-lo);padding:8px 12px;gap:6px;align-items:center;flex-wrap:wrap}
#page-skineditor3d .se3d-view-area{flex:1;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;background:transparent}
#page-skineditor3d .se3d-view-area.hidden{display:none}
#page-skineditor3d .se3d-mini-preview{width:150px;height:150px;border:3px solid var(--panel-border);border-top-color:var(--panel-hi);border-left-color:var(--panel-hi);border-bottom-color:var(--panel-lo);border-right-color:var(--panel-lo);background:rgba(0,0,0,0.3);flex-shrink:0;display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative;overflow:hidden;margin:0 auto 6px}
#page-skineditor3d .se3d-mini-preview:hover{border-color:var(--accent)}
#page-skineditor3d .se3d-mini-preview canvas{width:100%;height:100%;object-fit:contain;image-rendering:pixelated}
#page-skineditor3d .se3d-mini-label{position:absolute;bottom:2px;right:4px;font-size:.6rem;color:var(--text-mut);letter-spacing:1px;text-shadow:1px 1px 0 #000}
#page-skineditor3d .se3d-sec-label{font-size:.6rem;letter-spacing:2px;color:var(--accent);text-transform:uppercase;text-shadow:1px 1px 0 rgba(0,0,0,.5);margin:7px 0 4px;padding-bottom:2px;border-bottom:2px solid color-mix(in srgb,var(--accent),transparent 80%)}
#page-skineditor3d #se3dCanvas3d{cursor:crosshair;image-rendering:pixelated;background:transparent}
#page-skineditor3d .se3d-canvas2d-wrap{position:relative;border:3px solid var(--panel-border);background:transparent;image-rendering:pixelated}
#page-skineditor3d #se3dCanvas2d{image-rendering:pixelated;cursor:crosshair}
#page-skineditor3d .se3d-canvas2d-info{font-size:.5rem;color:var(--text-mut);text-align:center;margin-top:4px}
#page-skineditor3d .se3d-tool-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-bottom:6px}
#page-skineditor3d .se3d-tool-btn{font-family:var(--mc);font-size:.62rem;letter-spacing:1px;padding:5px 8px;cursor:pointer;color:#fff;text-align:center;background:linear-gradient(180deg,color-mix(in srgb,var(--btn2-bg),#fff 8%),var(--btn2-bg));border:3px solid;border-top-color:var(--btn2-hi);border-left-color:var(--btn2-hi);border-bottom-color:var(--btn2-lo);border-right-color:var(--btn2-lo);text-shadow:1px 1px 0 #000;transition:all .12s}
#page-skineditor3d .se3d-tool-btn:hover{background:linear-gradient(180deg,color-mix(in srgb,var(--btn2-bg),#fff 18%),color-mix(in srgb,var(--btn2-bg),#fff 5%));color:var(--text)}
#page-skineditor3d .se3d-tool-btn.active{border-color:var(--accent);color:#fff;background:linear-gradient(180deg,color-mix(in srgb,var(--accent),#fff 10%),var(--accent));border-top-color:color-mix(in srgb,var(--accent),#fff 30%);border-left-color:color-mix(in srgb,var(--accent),#fff 30%);border-bottom-color:color-mix(in srgb,var(--accent),#000 42%);border-right-color:color-mix(in srgb,var(--accent),#000 42%)}
#page-skineditor3d .se3d-compact-row{display:flex;align-items:center;gap:8px;margin-bottom:5px;font-size:.6rem;color:var(--text-sec)}
#page-skineditor3d .se3d-color-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}
#page-skineditor3d #se3dColorInput{width:40px;height:30px;border:2px solid var(--input-brd);background:var(--input-bg);cursor:pointer;padding:0}
#page-skineditor3d #se3dHexDisplay{font-size:.65rem;color:var(--text);background:var(--input-bg);border:2px solid var(--input-brd);padding:4px 8px;width:85px;font-family:var(--mc);text-shadow:1px 1px 0 #000}
#page-skineditor3d #se3dOpacitySlider{width:70px;accent-color:var(--accent)}
#page-skineditor3d .se3d-palette{display:none;grid-template-columns:repeat(8,1fr);gap:2px;margin-bottom:6px}
#page-skineditor3d .se3d-palette.open{display:grid}
#page-skineditor3d .se3d-pal-color{width:100%;height:13px;border:2px solid transparent;cursor:pointer;transition:border-color .1s}
#page-skineditor3d .se3d-pal-color:hover{border-color:#fff}
#page-skineditor3d .se3d-pal-color.active{border-color:var(--accent);box-shadow:0 0 6px var(--accent)}
#page-skineditor3d .se3d-toggle-row{display:flex;align-items:center;gap:6px;margin-bottom:5px;font-size:.62rem;color:var(--text-sec)}
#page-skineditor3d .se3d-toggle-row input[type="checkbox"]{accent-color:var(--accent);cursor:pointer}
#page-skineditor3d .se3d-toggle-row label{cursor:pointer;flex:1}
#page-skineditor3d .se3d-layer-btns{display:flex;gap:4px;margin-bottom:8px}
/* Base/Overlay layer toggle — make it obvious */
#page-skineditor3d .se3d-layer-btn{padding:7px 16px!important;font-size:.62rem!important;letter-spacing:1px}
#page-skineditor3d .se3d-layer-btn.active{background:linear-gradient(180deg,color-mix(in srgb,var(--accent),#fff 12%),var(--accent))!important;border-color:var(--accent)!important;color:#fff!important;box-shadow:0 0 10px color-mix(in srgb,var(--accent),transparent 45%)}
#page-skineditor3d .se3d-input-row{display:flex;gap:4px;margin-bottom:8px}
#page-skineditor3d .se3d-mc-input{font-family:var(--mc);font-size:.6rem;background:var(--input-bg);border:2px solid var(--input-brd);padding:5px 8px;color:var(--text);flex:1;text-shadow:1px 1px 0 #000;outline:none}
#page-skineditor3d .se3d-mc-input:focus{border-color:var(--accent)}
#page-skineditor3d .se3d-zoom-info{font-size:.6rem;color:var(--text-mut)}
#page-skineditor3d .se3d-highlight-overlay{position:absolute;pointer-events:none;border:2px solid var(--accent);background:color-mix(in srgb,var(--accent),transparent 90%);animation:se3dpulse 1.5s ease-in-out infinite}
@keyframes se3dpulse{0%,100%{opacity:0.6}50%{opacity:1}}
#page-skineditor3d .se3d-status{display:block;font-size:.6rem;line-height:1.35;color:var(--text-mut);text-shadow:1px 1px 0 #000;margin-top:6px;min-height:1.2em;white-space:normal;overflow:visible;overflow-wrap:anywhere;max-width:100%}
#page-skineditor3d .se3d-status.ok{color:var(--green)}
#page-skineditor3d .se3d-status.err{color:var(--red)}
#page-skineditor3d .se3d-mirror-label{font-size:.5rem;color:var(--text-sec);cursor:pointer;display:flex;align-items:center;gap:4px}
#page-skineditor3d .se3d-mirror-label input{accent-color:var(--accent)}
#page-skineditor3d .se3d-grid-toggle{font-size:.6rem;color:var(--text-mut);cursor:pointer;user-select:none}
#page-skineditor3d .se3d-grid-toggle input{accent-color:var(--accent)}
#page-skineditor3d .btn.btn-s{font-size:.62rem;padding:5px 10px}
#page-skineditor3d .se3d-view-toggle .btn.btn-s{font-size:.62rem;padding:4px 8px}
#page-skineditor3d .se3d-view-toggle .btn.btn-s.active{background:linear-gradient(180deg,color-mix(in srgb,var(--accent),#fff 10%),var(--accent));border-color:var(--accent);border-top-color:color-mix(in srgb,var(--accent),#fff 30%);border-left-color:color-mix(in srgb,var(--accent),#fff 30%);border-bottom-color:color-mix(in srgb,var(--accent),#000 42%);border-right-color:color-mix(in srgb,var(--accent),#000 42%);color:#fff}
/* ── se3d UI rework: 2D wheel-zoom scroll wrap, 3D view backgrounds, overlay-part
   toggle grid, keyboard-shortcuts popup. Lives here (loaded by every page) rather than
   in per-page inline <style> so all ~22 SPA page templates get it identically. ── */
#page-skineditor3d .se3d-canvas2d-wrap{max-width:100%;overflow:auto}
/* 3D view backgrounds: WebGL canvas is alpha-transparent, so these paint BEHIND the
   model. Three unmistakable modes: dark (default) / light checker / solid light gray. */
#page-skineditor3d #se3dView3D.se3d-bg-solid{background:#b0b0b0}
#page-skineditor3d #se3dView3D.se3d-bg-checker{background-image:linear-gradient(45deg,#9a9a9a 25%,transparent 25%),linear-gradient(-45deg,#9a9a9a 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#9a9a9a 75%),linear-gradient(-45deg,transparent 75%,#9a9a9a 75%);background-size:24px 24px;background-position:0 0,0 12px,12px -12px,-12px 0;background-color:#c8c8c8}
/* Overlay-part toggle grid: 3x2 blocky buttons. Active = accent-outlined (overlay ON),
   off = muted/grayscaled. Matches the tool-btn pixel-art style. */
#page-skineditor3d .se3d-ov-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-bottom:8px}
#page-skineditor3d .se3d-ov-btn{font-family:var(--mc);font-size:.56rem;letter-spacing:.5px;padding:6px 2px;cursor:pointer;color:#fff;text-align:center;background:linear-gradient(180deg,color-mix(in srgb,var(--btn2-bg),#fff 8%),var(--btn2-bg));border:2px solid;border-top-color:var(--btn2-hi);border-left-color:var(--btn2-hi);border-bottom-color:var(--btn2-lo);border-right-color:var(--btn2-lo);text-shadow:1px 1px 0 #000;transition:all .12s}
#page-skineditor3d .se3d-ov-btn:hover{background:linear-gradient(180deg,color-mix(in srgb,var(--btn2-bg),#fff 18%),color-mix(in srgb,var(--btn2-bg),#fff 5%))}
/* 3-state cycle. State 1 (.active): full accent outline = base+overlay ON.
   State 2 (.se3d-ov-half): base ON, overlay OFF - muted border, dimmed, "no overlay" dot cue.
   State 3 (.se3d-ov-off): whole part hidden - darkest, crossed-out (pixel X) cue. */
#page-skineditor3d .se3d-ov-btn.active{border-color:var(--accent);color:#fff;background:linear-gradient(180deg,color-mix(in srgb,var(--accent),#fff 10%),var(--accent));border-top-color:color-mix(in srgb,var(--accent),#fff 30%);border-left-color:color-mix(in srgb,var(--accent),#fff 30%);border-bottom-color:color-mix(in srgb,var(--accent),#000 42%);border-right-color:color-mix(in srgb,var(--accent),#000 42%);box-shadow:0 0 7px color-mix(in srgb,var(--accent),transparent 55%)}
/* State 2: overlay off. Muted (non-accent) border, half opacity, small hollow "no overlay" square cue top-right. */
#page-skineditor3d .se3d-ov-btn.se3d-ov-half{position:relative;opacity:.62;filter:grayscale(.35);border-top-color:#8a8aa0;border-left-color:#8a8aa0;border-bottom-color:#3a3a4c;border-right-color:#3a3a4c;color:#d8d8e4;background:linear-gradient(180deg,color-mix(in srgb,var(--btn2-bg),#fff 4%),color-mix(in srgb,var(--btn2-bg),#000 20%))}
#page-skineditor3d .se3d-ov-btn.se3d-ov-half::after{content:"";position:absolute;top:2px;right:2px;width:5px;height:5px;border:1px solid #c8c8d8;background:transparent;box-sizing:border-box}
/* State 3: part hidden. Darkest, strikethrough label + pixel-X corner cue. */
#page-skineditor3d .se3d-ov-btn.se3d-ov-off{position:relative;opacity:.45;filter:grayscale(.85);color:#9a9aa8;text-decoration:line-through;border-top-color:#40404e;border-left-color:#40404e;border-bottom-color:#101018;border-right-color:#101018;background:linear-gradient(180deg,#20202c,#141420)}
#page-skineditor3d .se3d-ov-btn.se3d-ov-off::after{content:"\00d7";position:absolute;top:0;right:3px;font-size:.72rem;line-height:1;color:#ff6b6b;text-shadow:1px 1px 0 #000}
/* Keyboard shortcuts popup: absolutely-positioned card over the editor, dismissable. */
#page-skineditor3d .se3d-hk-popup{position:absolute;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.55)}
#page-skineditor3d .se3d-hk-card{background:var(--panel);border:3px solid var(--panel-border);border-top-color:var(--panel-hi);border-left-color:var(--panel-hi);box-shadow:4px 4px 0 rgba(0,0,0,.45);padding:14px 16px 16px;min-width:250px;max-width:90%;max-height:88%;overflow-y:auto;image-rendering:pixelated}
#page-skineditor3d .se3d-hk-title{font-family:var(--mc);font-size:.72rem;letter-spacing:2px;color:var(--accent);text-shadow:1px 1px 0 rgba(0,0,0,.5);border-bottom:2px solid color-mix(in srgb,var(--accent),transparent 70%);padding-bottom:8px;margin-bottom:10px;display:flex;align-items:center;justify-content:space-between;gap:10px}
#page-skineditor3d .se3d-hk-close{font-family:var(--mc);font-size:1rem;line-height:1;color:#fff;background:var(--btn2-bg);border:2px solid;border-top-color:var(--btn2-hi);border-left-color:var(--btn2-hi);border-bottom-color:var(--btn2-lo);border-right-color:var(--btn2-lo);cursor:pointer;padding:1px 8px 3px;text-shadow:1px 1px 0 #000}
#page-skineditor3d .se3d-hk-close:hover{border-color:var(--accent)}
#page-skineditor3d .se3d-hk-rows{display:flex;flex-direction:column;gap:9px}
#page-skineditor3d .se3d-hk-row{display:flex;align-items:center;gap:12px}
#page-skineditor3d .se3d-hk-keys{display:flex;align-items:center;gap:3px;flex-shrink:0;min-width:118px}
#page-skineditor3d .se3d-hk-keys kbd{font-family:var(--mc);font-size:.56rem;color:#fff;background:var(--input-bg);border:2px solid;border-top-color:var(--panel-hi);border-left-color:var(--panel-hi);border-bottom-color:var(--panel-lo);border-right-color:var(--panel-lo);padding:2px 6px;text-shadow:1px 1px 0 #000;box-shadow:1px 1px 0 rgba(0,0,0,.4)}
#page-skineditor3d .se3d-hk-act{font-size:.62rem;color:var(--text)}
@media(max-width:1100px){
  #page-skineditor3d .se3d-wrap{flex-direction:column;min-height:0;height:auto;overflow:visible}
  #page-skineditor3d .se3d-panel-main,#page-skineditor3d .se3d-panel-right{width:100%}
  #page-skineditor3d .se3d-panel-main{align-self:auto;height:auto;min-height:0}
  #page-skineditor3d .se3d-panel-right{border-left:none;border-top:3px solid var(--panel-border)}
  #page-skineditor3d .se3d-mini-preview{width:140px;height:140px}
}
@media(max-width:600px){
  #page-skineditor3d .se3d-wrap{flex-direction:column;min-height:0;height:auto;overflow:visible}
  #page-skineditor3d .se3d-panel-main,#page-skineditor3d .se3d-panel-right{width:100%}
  #page-skineditor3d .se3d-panel-main{align-self:auto;height:auto;min-height:0}
  #page-skineditor3d .se3d-panel-right{padding:8px;border-left:none;border-top:3px solid var(--panel-border);overflow:visible;max-height:none}
  #page-skineditor3d .se3d-view-area{min-height:250px;max-height:50vh}
  #page-skineditor3d #se3dCanvas3d{max-width:100%;height:auto!important}
  #page-skineditor3d .se3d-canvas2d-wrap{max-width:100%;overflow:auto}
  #page-skineditor3d .se3d-mini-preview{width:100px;height:100px}
  #page-skineditor3d .se3d-sec-label{font-size:.6rem;margin:6px 0 4px}
  #page-skineditor3d .se3d-color-row{flex-wrap:wrap}
  #page-skineditor3d .se3d-toggle-row{font-size:.6rem}
  #page-skineditor3d .se3d-body-toggles-row{display:flex;flex-wrap:wrap;gap:2px 8px}
}

/* ═══ AD SLOTS ═══ */
.ad-slot{width:100%;max-width:728px;margin:1rem auto;min-height:90px;display:none;align-items:center;justify-content:center;border-radius:8px;background:rgba(255,255,255,0.03);border:1px dashed rgba(180,144,255,0.12)}
[data-theme="light"] .ad-slot{background:rgba(0,0,0,0.02);border-color:rgba(0,0,0,0.08)}
.ad-slot:empty::after{content:'';display:block}

/* ═══ PRIVACY FOOTER ═══ */
.footer-privacy{font-size:.48rem;color:var(--text-sec);margin-top:.3rem;line-height:1.6}.footer-privacy a{text-decoration:underline}
.footer-privacy a{color:var(--accent);text-decoration:none}
.footer-privacy a:hover{text-decoration:underline}


/* === Unified tool hero band === */
.tool-hero{padding:2.5rem 1rem 1.5rem;text-align:center;margin:0 auto 1rem;max-width:900px;background:transparent;border-bottom:1px solid color-mix(in srgb,var(--tool-accent,#b490ff) 15%,transparent)}
.tool-hero-title{font-family:var(--mc);font-size:1.7rem;margin:0 0 .5rem;color:var(--tool-accent,#b490ff);text-shadow:3px 3px 0 #000,0 0 20px color-mix(in srgb,var(--tool-accent,#b490ff) 20%,transparent);line-height:1.1}.tool-hero-ic{height:1.45em;width:auto;vertical-align:-0.26em;margin-right:.5rem;object-fit:contain;image-rendering:pixelated;image-rendering:-moz-crisp-edges;filter:drop-shadow(0 3px 5px rgba(0,0,0,.45))}
.tool-hero-sub{font-size:.78rem;color:var(--text-sec);max-width:480px;margin:0 auto;text-shadow:1px 1px 0 #000;line-height:1.5}
@media(max-width:600px){.tool-hero{padding:1.8rem .8rem 1.1rem}.tool-hero-title{font-size:1.2rem}.tool-hero-sub{font-size:.5rem}}

/* Readability bump - many inline styles use .42-.48rem which is too small on most screens */
.page .card p, .page .card label, .page .card .field-label, .page .card .check-row,
.page .card .dz-hint, .page .card .dz-text, .page .inst-text,
.page .card div[style*="font-size:.4"], .page .card p[style*="font-size:.4"]{
  font-size:max(var(--inline-fs,.55rem),.55rem)!important;line-height:1.6!important
}
/* Readability bump pass 2: covers span/button/select and inline styles down to .48rem, which the
   original selector list above missed (only p/label/.field-label/.check-row/.dz-hint/.dz-text/.inst-text
   were covered - spans, buttons and selects with inline font-size were falling through). Also reaches
   elements outside .card wrappers (e.g. skin-pack dividers, cape-editor button rows). */
.page span[style*="font-size:.4"], .page span[style*="font-size:.5"],
.page button[style*="font-size:.4"], .page button[style*="font-size:.5"],
.page select[style*="font-size:.4"], .page select[style*="font-size:.5"],
.page label[style*="font-size:.4"], .page label[style*="font-size:.5"],
.page div[style*="font-size:.5"], .page a[style*="font-size:.4"], .page a[style*="font-size:.5"]{
  font-size:.6rem!important
}
.page .card .card-label{font-size:.75rem!important}@media(min-width:760px){.page .card p,.page .card label,.page .card .field-label,.page .card .check-row,.page .card .dz-hint,.page .card .dz-text,.page .inst-text,.page .card div[style*="font-size:.4"],.page .card p[style*="font-size:.4"]{font-size:.8rem!important;line-height:1.6!important}.field-hint{font-size:.7rem!important}.crumb{font-size:.68rem!important}.sf-disc{font-size:.68rem!important}.inst-note{font-size:.72rem!important}.ratio{font-size:.72rem!important}.pc-meta{font-size:.68rem!important}.pc-rank{font-size:.66rem!important}.pack-hint{font-size:.72rem!important}.badge{font-size:.66rem!important}.progress-label{font-size:.72rem!important}.log-line{font-size:.68rem!important}.manifest-preview{font-size:.66rem!important}.si-label2{font-size:.68rem!important}.skin-status{font-size:.68rem!important}.edition-btn{font-size:.62rem!important}.fmt-btn{font-size:.58rem!important}.cb-cape-name{font-size:.64rem!important}.cb-cape-toggle-name{font-size:.64rem!important}.cb-count{font-size:.64rem!important}.cb-gal-chip{font-size:.66rem!important}.cb-gallery-name{font-size:.64rem!important}.ce-3d-hint{font-size:.58rem!important}.ce-tool-btn{font-size:.65rem!important}.ce-view-btn{font-size:.65rem!important}.av-thumb-label{font-size:.58rem!important}.tm-style-label{font-size:.7rem!important}.totem-col-label{font-size:.72rem!important}}

/* Per-tool accent color tokens */
.tool-hero-merger{--tool-accent:#a855f7}
.tool-hero-skinpack{--tool-accent:#38bdf8}
.tool-hero-paintings{--tool-accent:#eab308}
.tool-hero-avatar{--tool-accent:#f59e0b}
.tool-hero-coords{--tool-accent:#b490ff}
.tool-hero-totem{--tool-accent:#eab308}
.tool-hero-capeeditor{--tool-accent:#ec4899}
.tool-hero-capebuilder{--tool-accent:#8b5cf6}
.tool-hero-musicdisc{--tool-accent:#22d3ee}
.tool-hero-skineditor3d{--tool-accent:#38bdf8}
.tool-hero-hudcustom{--tool-accent:#f43f5e}
.tool-hero-converter{--tool-accent:#10b981}
.tool-hero-armorstand{--tool-accent:#a3a3a3}
.tool-hero-colorcode{--tool-accent:#f87171}
.tool-hero-emojipack{--tool-accent:#fb923c}
.tool-hero-playerheads{--tool-accent:#22c55e}

/* Light-mode accent overrides - darker/more saturated so color reads on a light background.
   Also softens the hero text-shadow (no black drop-shadow on light bg). */
[data-theme="light"] .tool-hero-merger{--tool-accent:#7e22ce}
[data-theme="light"] .tool-hero-skinpack{--tool-accent:#0284c7}
[data-theme="light"] .tool-hero-paintings{--tool-accent:#b45309}
[data-theme="light"] .tool-hero-avatar{--tool-accent:#c2410c}
[data-theme="light"] .tool-hero-coords{--tool-accent:#7c3aed}
[data-theme="light"] .tool-hero-totem{--tool-accent:#b45309}
[data-theme="light"] .tool-hero-capeeditor{--tool-accent:#be185d}
[data-theme="light"] .tool-hero-capebuilder{--tool-accent:#6d28d9}
[data-theme="light"] .tool-hero-musicdisc{--tool-accent:#0891b2}
[data-theme="light"] .tool-hero-skineditor3d{--tool-accent:#0284c7}
[data-theme="light"] .tool-hero-hudcustom{--tool-accent:#be123c}
[data-theme="light"] .tool-hero-converter{--tool-accent:#047857}
[data-theme="light"] .tool-hero-colorcode{--tool-accent:#dc2626}
[data-theme="light"] .tool-hero-emojipack{--tool-accent:#c2410c}
[data-theme="light"] .tool-hero-playerheads{--tool-accent:#16a34a}

[data-theme="light"] .tool-hero{background:linear-gradient(180deg,color-mix(in srgb,var(--tool-accent,#7c3aed) 12%,transparent) 0%,transparent 100%);border-bottom-color:color-mix(in srgb,var(--tool-accent,#7c3aed) 30%,transparent)}
[data-theme="light"] .tool-hero-title{text-shadow:2px 2px 0 rgba(0,0,0,0.12),0 0 24px color-mix(in srgb,var(--tool-accent,#7c3aed) 15%,transparent)}
[data-theme="light"] .tool-hero-sub{color:#475569}[data-theme="light"] #page-coords .inst-note{color:#3a3560}[data-theme="light"] #page-coords .inst-note b{color:#15803d}

[data-theme="light"] #page-merger{--accent:#7e22ce}
[data-theme="light"] #page-skinpack{--accent:#0284c7}
[data-theme="light"] #page-paintings{--accent:#b45309}
[data-theme="light"] #page-avatar{--accent:#c2410c}
[data-theme="light"] #page-coords{--accent:#7c3aed}
[data-theme="light"] #page-totem{--accent:#b45309}
[data-theme="light"] #page-capeeditor{--accent:#be185d}
[data-theme="light"] #page-capebuilder{--accent:#6d28d9}
[data-theme="light"] #page-musicdisc{--accent:#0891b2}
[data-theme="light"] #page-skineditor3d{--accent:#0284c7}
[data-theme="light"] #page-hudcustom{--accent:#be123c}
[data-theme="light"] #page-converter{--accent:#047857}
[data-theme="light"] #page-colorcode{--accent:#dc2626}
[data-theme="light"] #page-emojipack{--accent:#a16207}

/* Per-page accent scoping (card borders + card-label + primary button glow) */
#page-merger{--accent:#a855f7}
#page-skinpack{--accent:#38bdf8}
#page-paintings{--accent:#eab308}
#page-avatar{--accent:#f59e0b}
#page-coords{--accent:#b490ff}
#page-totem{--accent:#eab308}
#page-capeeditor{--accent:#ec4899}
#page-capebuilder{--accent:#8b5cf6}
#page-musicdisc{--accent:#22d3ee}
#page-skineditor3d{--accent:#38bdf8}
#page-hudcustom{--accent:#f43f5e}
#page-converter{--accent:#10b981}
#page-armorstand{--accent:#a3a3a3}

/* ── armor stand size slider - MCTools brand colors (purple + gold) ─────── */
#page-armorstand input[type="range"].as-size-slider{
  -webkit-appearance:none;appearance:none;
  flex:1;height:22px;background:transparent;cursor:pointer;outline:none;padding:0;margin:0;
}
/* track (webkit) - purple fill on left of thumb, dark void on right */
#page-armorstand .as-size-slider::-webkit-slider-runnable-track{
  height:14px;border:2px solid #000;border-radius:0;
  background:
    linear-gradient(to right,
      color-mix(in srgb,var(--accent),#fff 22%) 0%,
      var(--accent) var(--as-fill,50%),
      var(--panel-lo,#14102a) var(--as-fill,50%),
      var(--panel-lo,#14102a) 100%);
  box-shadow:
    inset 0 2px 0 rgba(255,255,255,.12),
    inset 0 -2px 0 rgba(0,0,0,.45),
    0 2px 0 rgba(0,0,0,.55);
  image-rendering:pixelated;
}
/* thumb (webkit) - purple MC button: deep base, lighter top bevel, dark bottom */
#page-armorstand .as-size-slider::-webkit-slider-thumb{
  -webkit-appearance:none;appearance:none;
  width:14px;height:22px;margin-top:-6px;border-radius:0;
  background:#5b3daa;
  border:2px solid #000;
  box-shadow:
    inset 0 3px 0 #b490ff,
    inset 0 -4px 0 #3a2580,
    0 2px 0 rgba(0,0,0,.75);
  cursor:grab;transition:transform .08s ease-out;
  image-rendering:pixelated;
}
#page-armorstand .as-size-slider:hover::-webkit-slider-thumb{transform:scaleY(1.08)}
#page-armorstand .as-size-slider:active::-webkit-slider-thumb{cursor:grabbing;transform:scale(1.12)}
/* firefox track */
#page-armorstand .as-size-slider::-moz-range-track{
  height:14px;border:2px solid #000;border-radius:0;
  background:var(--panel-lo,#14102a);
  box-shadow:inset 0 2px 0 rgba(255,255,255,.12),inset 0 -2px 0 rgba(0,0,0,.45),0 2px 0 rgba(0,0,0,.55);
}
#page-armorstand .as-size-slider::-moz-range-progress{
  height:14px;background:linear-gradient(to right,color-mix(in srgb,var(--accent),#fff 22%) 0%,var(--accent) 100%);
}
#page-armorstand .as-size-slider::-moz-range-thumb{
  width:14px;height:22px;border-radius:0;
  background:#5b3daa;
  border:2px solid #000;
  box-shadow:inset 0 3px 0 #b490ff,inset 0 -4px 0 #3a2580,0 2px 0 rgba(0,0,0,.75);
  cursor:grab;
}
/* size row - flex container holding label, slider wrap, number, badge */
#page-armorstand .as-size-row{margin-top:6px;display:flex;align-items:flex-start;gap:.5rem;flex-wrap:wrap}
#page-armorstand .as-size-row .as-size-label{font-size:.55rem;color:var(--text);text-shadow:1px 1px 0 #000;min-width:42px;padding-top:8px;flex-shrink:0;font-family:var(--mc)}
#page-armorstand .as-size-row .as-size-num{width:64px;font-size:.65rem;padding:4px 8px;text-align:center;font-family:var(--mc);transition:transform .12s ease-out;flex-shrink:0}
#page-armorstand .as-size-row .as-size-badge{font-size:.65rem;color:var(--accent);text-shadow:1px 1px 0 #000;min-width:44px;font-family:var(--mc);font-weight:bold;transition:transform .12s ease-out;padding-top:8px;flex-shrink:0;text-align:right}
/* slider wrapper - track at top, tick band BELOW it so dots/labels don't overlap */
#page-armorstand .as-size-wrap{position:relative;flex:1 1 200px;height:48px;padding:0 7px;min-width:0}
#page-armorstand .as-size-slider{position:absolute;left:7px;right:7px;width:calc(100% - 14px);top:4px;z-index:2}
/* mobile: slider drops to its own row at full width so the 19-tick scale stays usable */
@media (max-width:560px){
  #page-armorstand .as-size-row .as-size-wrap{flex:1 1 100%;order:99;height:52px}
  #page-armorstand .as-size-row .as-size-label{padding-top:10px}
  #page-armorstand .as-size-row .as-size-num{width:72px;padding:8px 8px;font-size:.7rem}
  #page-armorstand .as-size-row .as-size-badge{padding-top:10px}
}
/* tick band BELOW the slider track - dots + labels live here, no overlap with track */
#page-armorstand .as-tick{
  position:absolute;top:30px;transform:translateX(-50%);
  pointer-events:none;z-index:1;border-radius:50%;
}
#page-armorstand .as-tick.minor{
  width:5px;height:5px;
  background:#b490ff;
  box-shadow:0 0 3px rgba(180,144,255,.5);
  opacity:.75;
}
#page-armorstand .as-tick.major{
  width:10px;height:10px;
  top:28px; /* slight upward nudge so it visually anchors the label below */
  background:#FFAA00;
  box-shadow:0 0 6px rgba(255,170,0,.85),inset 0 -1px 0 rgba(0,0,0,.3);
  border:1.5px solid #000;
}
#page-armorstand .as-tick-label{
  position:absolute;top:42px;transform:translateX(-50%);
  font-family:var(--mc);font-size:.65rem;font-weight:bold;color:#FFAA00;
  text-shadow:1.5px 1.5px 0 #000;pointer-events:none;z-index:1;letter-spacing:1px;
  white-space:nowrap;
}
/* Cape drop zone hover/active */
#page-armorstand .as-cape-zone:hover{
  background:rgba(180,144,255,.10) !important;
  border-color:#b490ff !important;
}
#page-armorstand .as-cape-zone.has-cape{
  background:rgba(85,255,85,.08) !important;
  border-color:#55FF55 !important;
  border-style:solid !important;
}
#page-colorcode{--accent:#f87171}
#page-emojipack{--accent:#f0b429}
[data-theme="light"] #page-playerheads{--accent:#16a34a}
#page-playerheads{--accent:#22c55e}
#page-merger .card-label,#page-skinpack .card-label,#page-paintings .card-label,#page-avatar .card-label,#page-coords .card-label,#page-totem .card-label,#page-capeeditor .card-label,#page-capebuilder .card-label,#page-musicdisc .card-label,#page-skineditor3d .card-label,#page-hudcustom .card-label,#page-converter .card-label,#page-armorstand .card-label,#page-colorcode .card-label,#page-emojipack .card-label,#page-playerheads .card-label{color:var(--accent)}
#page-merger .card,#page-skinpack .card,#page-paintings .card,#page-avatar .card,#page-coords .card,#page-totem .card,#page-capeeditor .card,#page-capebuilder .card,#page-musicdisc .card,#page-skineditor3d .card,#page-hudcustom .card,#page-converter .card,#page-armorstand .card,#page-colorcode .card,#page-emojipack .card,#page-playerheads .card{border-color:color-mix(in srgb,var(--accent) 22%,var(--panel-border,#2a2a3a))}

/* Bigger friendlier primary inputs across all tool pages */
.page input[type=text],.page input[type=number],.page input[type=search],.page input[type=email],.page select{font-size:.7rem;padding:10px 12px;min-height:36px;border-radius:8px;transition:border-color .15s ease,box-shadow .15s ease,transform .1s ease}
.page input[type=text]:focus,.page input[type=number]:focus,.page input[type=search]:focus,.page input[type=email]:focus,.page select:focus{border-color:var(--accent,#b490ff);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent,#b490ff) 20%,transparent);outline:none}
/* Keep coords inputs at their existing larger font */
#page-coords input[type=number]{font-size:1.4rem}

/* Micro-interactions */
.btn{transition:transform .08s ease,box-shadow .15s ease,filter .15s ease}
.btn:hover{filter:brightness(1.08)}
.btn:active{transform:translateY(1px)}
.btn-p:hover{box-shadow:0 4px 14px color-mix(in srgb,var(--accent,#b490ff) 35%,transparent)}
.card{transition:border-color .2s ease,box-shadow .2s ease}
.tile,.pack-item,[class*="-tile"],[class*="-card"]:not(.card){transition:transform .15s ease,box-shadow .15s ease}
.tile:hover,.pack-item:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,0.25)}




/* v3 phase-1 foundation: toasts, crumbs, related rows, icon imgs */
#page-colorcode .cc-duo{display:grid;grid-template-columns:1.1fr .9fr;gap:1rem;align-items:start}
#page-colorcode .cc-duo .card{margin-bottom:1rem}
#page-colorcode .cc-prev-card{position:sticky;top:64px}
#page-colorcode .cc-tabs{display:flex;gap:.35rem;margin:.1rem 0 .8rem}
#page-colorcode .cc-tab{font-family:var(--mc);font-size:.55rem;padding:.5rem .85rem;background:rgba(255,255,255,.05);color:var(--text-sec);border:2px solid var(--panel-border);cursor:pointer;text-shadow:1px 1px 0 #000;letter-spacing:.05em}
#page-colorcode .cc-tab:hover{border-color:var(--accent)}
#page-colorcode .cc-tab.on{background:var(--accent);color:#1a0608;text-shadow:none;border-color:#000;box-shadow:2px 2px 0 #000}
#page-colorcode .cc-cheat-card summary{cursor:pointer;list-style:none;user-select:none}
#page-colorcode .cc-cheat-card summary::-webkit-details-marker{display:none}
#page-colorcode .cc-cheat-caret{float:right;transition:transform .15s}
#page-colorcode .cc-cheat-card:not([open]) .cc-cheat-caret{transform:rotate(-90deg)}
#page-colorcode .cc-cheat-card[open] .cc-cheat{margin-top:.6rem}
@media(max-width:820px){#page-colorcode .cc-duo{grid-template-columns:1fr}#page-colorcode .cc-prev-card{position:static}}
.step-num{display:inline-block;background:none!important;border:none!important;width:auto;height:auto;padding:0;margin:0 .4rem 0 0;color:var(--accent);font-family:var(--mc);font-weight:700;font-size:.8rem;text-shadow:none;vertical-align:baseline;line-height:1}
.step-num::after{content:"."}
/* v3 phase 4: studio pages widen + workbench grids */
@media(min-width:1320px){
  #page-capeeditor,#page-avatar,#page-hudcustom{margin-inline:-150px}
}
@media(min-width:1100px){
  #page-hudcustom.active{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem;align-items:start}
  #page-hudcustom>.crumb,#page-hudcustom>.tool-hero,#page-hudcustom>.ad-slot,#page-hudcustom>.related-wrap,#page-hudcustom>.sitefooter{grid-column:1/-1}
  #page-avatar.active:has(.av-edit.active){display:grid;grid-template-columns:400px minmax(0,1fr);gap:0 1rem;align-items:start}
  #page-avatar:has(.av-edit.active)>.crumb,#page-avatar:has(.av-edit.active)>.tool-hero,#page-avatar:has(.av-edit.active)>.ad-slot,#page-avatar:has(.av-edit.active)>.related-wrap,#page-avatar:has(.av-edit.active)>.sitefooter{grid-column:1/-1}
  #page-avatar:has(.av-edit.active)>.card{grid-column:1}
  #page-avatar:has(.av-edit.active)>.av-edit{grid-column:2;grid-row:2/5;align-self:stretch;display:flex;flex-direction:column}
  #page-avatar:has(.av-edit.active)>.av-edit #pw-avatar-under-download{flex:1}
}
.builder-bar{display:none}
@media(max-width:700px){
  .builder-bar{position:fixed;left:0;right:0;bottom:0;z-index:60;display:none;align-items:center;justify-content:space-between;gap:.6rem;padding:.55rem .9rem;background:var(--panel);border-top:2px solid var(--panel-border);box-shadow:0 -3px 12px rgba(0,0,0,.4)}
  .bb-count{font-family:var(--mc);font-size:.6rem;color:var(--text-sec);text-shadow:1px 1px 0 #000}
  .bb-count b{color:var(--green,#55FF55);font-size:.85rem}
  .bb-build{font-size:.6rem;padding:8px 18px}
}
#page-coords .inst{max-width:860px;margin:0 auto;padding:0 1rem}
#page-coords .coords-duo{display:grid;grid-template-columns:1fr 56px 1fr;align-items:stretch}
#page-coords .dim.card{margin-bottom:0;position:relative}
#page-coords .dim.ow{border-top-color:color-mix(in srgb,#55FF55 55%,var(--panel-hi));border-left-color:color-mix(in srgb,#55FF55 55%,var(--panel-hi))}
#page-coords .dim.ne{border-top-color:color-mix(in srgb,#FF5555 55%,var(--panel-hi));border-left-color:color-mix(in srgb,#FF5555 55%,var(--panel-hi))}
#page-coords .dim .card-label{display:flex;align-items:center;gap:.5rem}
#page-coords .dim.ow .card-label{color:#55FF55;border-bottom-color:color-mix(in srgb,#55FF55,transparent 70%)}
#page-coords .dim.ne .card-label{color:#FF5555;border-bottom-color:color-mix(in srgb,#FF5555,transparent 70%)}
[data-theme="light"] #page-coords .dim.ow .card-label{color:#15803d}
[data-theme="light"] #page-coords .dim.ne .card-label{color:#b91c1c}
#page-coords .dim .ratio{margin-left:auto;font-size:.5rem;color:var(--text-mut);letter-spacing:1px}
#page-coords .coord-f{margin-bottom:.7rem}
#page-coords .coord-f label{display:block;font-family:var(--mc);font-size:.6rem;color:var(--text-sec);margin-bottom:.25rem;text-shadow:1px 1px 0 #000}
#page-coords .coord-f input{width:100%;background:var(--input-bg);border:2px solid var(--input-brd);color:var(--text);font-family:var(--mc);font-size:1.05rem;padding:.5rem .7rem;box-sizing:border-box}
#page-coords .coord-f input:focus{outline:none}
#page-coords .dim.ow .coord-f input:focus{border-color:#55FF55}
#page-coords .dim.ne .coord-f input:focus{border-color:#FF5555}
#page-coords .coord-f input.pulse{animation:coPulse .35s}
@keyframes coPulse{0%{background:color-mix(in srgb,#55FF55 18%,var(--input-bg))}100%{background:var(--input-bg)}}
#page-coords .swap-col{display:flex;align-items:center;justify-content:center}
#coSwapBtn{width:42px;height:42px;display:grid;place-items:center;cursor:pointer;font-size:1rem;color:var(--text);background:linear-gradient(180deg,color-mix(in srgb,var(--btn2-bg),#fff 10%),var(--btn2-bg));border:3px solid;border-top-color:var(--btn2-hi);border-left-color:var(--btn2-hi);border-bottom-color:var(--btn2-lo);border-right-color:var(--btn2-lo);transition:filter .1s;z-index:1}
#coSwapBtn:hover{filter:brightness(1.15)}
#coSwapBtn.spin{animation:coSwapSpin .4s steps(4)}
@keyframes coSwapSpin{to{transform:rotate(360deg)}}
#page-coords .btn-copy{margin-top:.2rem;width:100%;justify-content:center;color:#fff;background:linear-gradient(180deg,color-mix(in srgb,var(--accent),#fff 10%),color-mix(in srgb,var(--accent),#000 20%));border-top-color:color-mix(in srgb,var(--accent),#fff 28%);border-left-color:color-mix(in srgb,var(--accent),#fff 28%);border-bottom-color:color-mix(in srgb,var(--accent),#000 40%);border-right-color:color-mix(in srgb,var(--accent),#000 40%)}
#page-coords .inst-note{text-align:center;color:var(--text-mut);font-size:.62rem;margin:1.1rem 0 0;font-family:var(--mc);text-shadow:1px 1px 0 #000;line-height:1.8}
#page-coords .inst-note b{color:var(--green,#55FF55)}
.portal-mini{height:1.15em;width:auto;image-rendering:pixelated;vertical-align:-.2em;display:inline-block}
@media(max-width:700px){#page-coords .coords-duo{grid-template-columns:1fr}#page-coords .swap-col{padding:.5rem 0}}
.crumb{max-width:1100px;margin:1rem auto 0;padding:0 1rem;display:flex;gap:.45rem;align-items:center;font-family:var(--mc);font-size:.5rem;color:var(--text-mut);text-shadow:1px 1px 0 #000}
.crumb a{color:var(--text-mut);text-decoration:none}
.crumb a:hover{color:var(--text-sec)}
.crumb .sep{opacity:.6}
.related-wrap{margin:1.6rem auto 0}
.related-label{font-family:var(--mc);font-size:.7rem;color:var(--text);text-shadow:2px 2px 0 #000;margin:0 0 .6rem;letter-spacing:.04em}
.related-label::before{content:'\25C6  ';color:var(--accent)}
.toast-wrap{position:fixed;top:60px;right:14px;z-index:400;display:flex;flex-direction:column;gap:.5rem}
.toast{display:flex;align-items:center;gap:.7rem;min-width:250px;max-width:330px;background:var(--panel);border:2px solid #000;border-top-color:var(--gold);border-left-color:var(--gold);box-shadow:3px 3px 0 #000;padding:.65rem .9rem;backdrop-filter:blur(8px);transform:translateX(120%);transition:transform .3s steps(6)}
.toast.in{transform:translateX(0)}
.toast-ic{font-size:1.3rem;line-height:1}
.toast-tx b{display:block;font-family:var(--mc);font-size:.58rem;color:var(--gold);text-shadow:1.5px 1.5px 0 #000}
.toast-tx i{font-style:normal;font-size:.6rem;color:var(--text-sec)}
.tool-icon img.ti-img{height:46px;width:auto;max-width:74px;object-fit:contain;display:block;margin:0 auto;image-rendering:pixelated;image-rendering:crisp-edges;filter:drop-shadow(0 4px 6px rgba(0,0,0,.45))}
.ti-img.px{image-rendering:pixelated;height:42px}
.sc-caption-icon img{height:22px;width:auto;display:block;filter:drop-shadow(0 2px 3px rgba(0,0,0,.6))}
.cl-more{display:inline-block;margin-top:.8rem;font-family:var(--mc);font-size:.55rem;color:var(--accent);text-shadow:1px 1px 0 #000;text-decoration:none;letter-spacing:.04em}
.cl-more:hover{color:var(--gold)}
#page-changelog .changelog{margin:1.5rem 0 1rem;background:rgba(26,21,56,0.55);border:2px solid #000;border-top-color:var(--panel-hi);border-left-color:var(--panel-hi);padding:1.2rem 1.4rem;box-shadow:3px 3px 0 #000}
@media(prefers-reduced-motion:reduce){.toast{transition:none}}
/* per-tool name colors: --tool-c = dark-mode bright, --tool-c-light = light-mode deep */
:is(#page-home,#page-changelog) .cl-tool-armorstand{--tool-c:#a3a3a3;--tool-c-light:#525866}
:is(#page-home,#page-changelog) .cl-tool-avatar{--tool-c:#f59e0b;--tool-c-light:#c2410c}
:is(#page-home,#page-changelog) .cl-tool-capebuilder{--tool-c:#8b5cf6;--tool-c-light:#6d28d9}
:is(#page-home,#page-changelog) .cl-tool-capeeditor{--tool-c:#ec4899;--tool-c-light:#be185d}
:is(#page-home,#page-changelog) .cl-tool-colorcode{--tool-c:#f87171;--tool-c-light:#dc2626}
:is(#page-home,#page-changelog) .cl-tool-skineditor3d{--tool-c:#38bdf8;--tool-c-light:#0284c7}
:is(#page-home,#page-changelog) .cl-tool-skinpack{--tool-c:#38bdf8;--tool-c-light:#0284c7}
:is(#page-home,#page-changelog) .cl-tool-converter{--tool-c:#10b981;--tool-c-light:#047857}
:is(#page-home,#page-changelog) .cl-tool-coords{--tool-c:#b490ff;--tool-c-light:#7c3aed}
:is(#page-home,#page-changelog) .cl-tool-emojipack{--tool-c:#f0b429;--tool-c-light:#a16207}
:is(#page-home,#page-changelog) .cl-tool-ezcapes{--tool-c:#2dd4bf;--tool-c-light:#0d9488}
:is(#page-home,#page-changelog) .cl-tool-hudcustom{--tool-c:#f43f5e;--tool-c-light:#be123c}
:is(#page-home,#page-changelog) .cl-tool-mctools{--tool-c:#b490ff;--tool-c-light:#6d28d9}
:is(#page-home,#page-changelog) .cl-tool-merger{--tool-c:#a855f7;--tool-c-light:#7e22ce}
:is(#page-home,#page-changelog) .cl-tool-musicdisc{--tool-c:#22d3ee;--tool-c-light:#0891b2}
:is(#page-home,#page-changelog) .cl-tool-paintings{--tool-c:#eab308;--tool-c-light:#b45309}
:is(#page-home,#page-changelog) .cl-tool-playerheads{--tool-c:#22c55e;--tool-c-light:#16a34a}
:is(#page-home,#page-changelog) .cl-tool-totem{--tool-c:#eab308;--tool-c-light:#b45309}
:is(#page-home,#page-changelog) .cl-tool{color:var(--tool-c,#b490ff);font-weight:700}
[data-theme="light"] :is(#page-home,#page-changelog) .cl-tool{color:var(--tool-c-light,#7c3aed)}
/* colored tag pills with icons (were unstyled = flat/monochrome before) */
:is(#page-home,#page-changelog) .cl-tag{display:inline-block;font-family:var(--mc);font-weight:700;border-radius:5px;padding:2px 7px;letter-spacing:.04em;vertical-align:middle;text-shadow:none}
:is(#page-home,#page-changelog) .cl-tag.new{background:#34d058;color:#062a12}
:is(#page-home,#page-changelog) .cl-tag.fix{background:#f5b321;color:#3a2600}
:is(#page-home,#page-changelog) .cl-tag.ui{background:#9b7bff;color:#160d33}
:is(#page-home,#page-changelog) .cl-tag.tool{background:#48c7f0;color:#06283a}
:is(#page-home,#page-changelog) .cl-tag.new::before{content:"\2728  "}
:is(#page-home,#page-changelog) .cl-tag.fix::before{content:"\1F527  "}
:is(#page-home,#page-changelog) .cl-tag.ui::before{content:"\1F3A8  "}
:is(#page-home,#page-changelog) .cl-tag.tool::before{content:"\1F9F0  "}
.cl-tag.beta{background:#ff7ab6;color:#3a0a20}
.cl-tag.beta::before{content:"\1F9EA  "}
/* light mode: frosted changelog box like the cards + dark text */
[data-theme="light"] #page-changelog .changelog{background:rgba(255,255,255,0.40);border:1px solid rgba(255,255,255,0.5);border-radius:10px;-webkit-backdrop-filter:blur(22px) saturate(1.35);backdrop-filter:blur(22px) saturate(1.35);box-shadow:0 8px 24px rgba(20,40,80,0.14),0 2px 5px rgba(20,40,80,0.08);--text:#15122b;--text-sec:#3a3556;--text-mut:#5f5a7e}
[data-theme="light"] #page-changelog .cl-discord a{color:#5b3fd6}
@media(min-width:601px){
#page-home .tool-name{font-size:.82rem!important}
#page-home .tool-icon{font-size:2.9rem!important}
#page-home .tool-icon img.ti-img{height:56px!important;max-width:88px!important}
#page-home .ti-img.px{height:50px!important}
#page-home .section-label{font-size:1.15rem!important}
#page-home .gallery-label{font-size:1rem!important}
#page-home .sc-item .sc-caption-name{font-size:.8rem!important}
#page-home .tool-badge{font-size:.6rem!important}
#page-home .changelog h2{font-size:1.05rem!important}
#page-home .cl-text{font-size:.68rem!important;line-height:1.65!important}
#page-home .cl-group-date{font-size:.74rem!important}
#page-home .cl-tag{font-size:.5rem!important}
#page-home .cl-more{font-size:.66rem!important}
#page-home .title-sub{font-size:.78rem!important}
}
#page-home .showcase-carousel{position:relative;overflow:hidden;margin:.3rem 0 .6rem}
#page-home .gal-track{display:flex;align-items:flex-start;will-change:transform;transition:transform .6s cubic-bezier(.25,.8,.25,1)}
#page-home .gal-track .sc-item img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
#page-home .gal-track .sc-item{flex:0 0 78%;min-width:78%;transform:none!important;animation:none!important;margin-right:0;opacity:.13!important;transition:opacity .5s ease!important}
#page-home .gal-track .sc-item.cur{opacity:1!important}
#page-home .gal-track.no-anim{transition:none}
#page-home .gal-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:5;padding:9px 13px!important;font-size:.95rem!important;line-height:1!important;user-select:none}
#page-home .gal-arrow:active{transform:translateY(calc(-50% + 2px))}
#page-home .gal-arrow.ga-l{left:8px}
#page-home .gal-arrow.ga-r{right:8px}
@media(max-width:640px){#page-home .gal-track .sc-item{flex:0 0 88%;min-width:88%}#page-home .gal-arrow{display:none}}
@media(max-width:600px){
#page-home .tool-name{font-size:.7rem!important}
#page-home .tool-icon img.ti-img{height:44px!important}
#page-home .ti-img.px{height:40px!important}
#page-home .section-label{font-size:1rem!important}
#page-home .gallery-label{font-size:.9rem!important}
#page-home .sc-item .sc-caption-name{font-size:.62rem!important}
#page-home .cl-text{font-size:.62rem!important;line-height:1.6!important}
#page-home .cl-group-date{font-size:.68rem!important}
}
#page-changelog .cl-list{max-height:none!important;overflow:visible!important;padding-right:0!important}
#page-changelog .changelog{padding:1.5rem 1.7rem}
#page-changelog .changelog h2{font-size:1.05rem!important;margin-bottom:.4rem!important}
#page-changelog .cl-text{font-size:.78rem!important;line-height:1.75!important}
#page-changelog .cl-group-date{font-size:.88rem!important;margin:0 0 .55rem!important}
#page-changelog .cl-tag{font-size:.55rem!important;padding:3px 9px!important;margin-right:8px!important}
#page-changelog .cl-item{padding:.75rem 0!important}
#page-changelog .cl-group{padding:.75rem 0!important}
.cl-discord{font-family:var(--mc);font-size:.8rem;color:var(--text-sec);margin:.1rem 0 1rem;text-shadow:1px 1px 0 #000;line-height:1.8}
.cl-discord a{color:#7d9eff;text-decoration:none}
.cl-discord a:hover{color:var(--gold)}
@media(max-width:640px){#page-changelog .changelog{padding:1rem .9rem}#page-changelog .cl-text{font-size:.72rem!important}}



/* footer overflow (site-todo #12, 2026-09-19): the 100vw full-bleed measured 96px past both viewport edges on desktop because
   html{zoom:1.15} makes 100vw resolve to 1.15x the real viewport, and on mobile the left:50%/-50vw offsets fought the
   .container padding. The footer now sizes to its page column; background was already transparent so only the border-top line narrows. */
.sitefooter{position:relative;margin-top:2.2rem;padding:1.8rem 1.5rem 1.4rem;background:transparent;border-top:1px solid var(--panel-border);z-index:5;color:var(--text-sec)}
.sf-inner{max-width:680px;margin:0 auto;display:flex;flex-direction:column;align-items:center;text-align:center;gap:.85rem}
.sf-logo{font-family:var(--mc);font-size:1.4rem;color:var(--accent);text-shadow:2px 2px 0 #000;letter-spacing:1px;display:inline-flex;align-items:center;gap:10px}
.sf-logo::before{content:'';display:inline-block;width:30px;height:30px;background:url('/kunj_brand_logo.png') no-repeat center / contain;image-rendering:pixelated;filter:drop-shadow(0 0 8px rgba(239,68,68,0.6));vertical-align:middle;flex-shrink:0}
.sf-tag{font-size:.9rem;color:#cbc6ea;margin:.3rem auto 0;font-family:-apple-system,"Segoe UI",Arial,sans-serif;line-height:1.5;max-width:380px;text-shadow:0 1px 2px rgba(0,0,0,.6)}
.sf-social{display:flex;gap:1.7rem;justify-content:center;flex-wrap:wrap}
.sf-soc{display:inline-flex;align-items:center;gap:.55rem;font-family:-apple-system,"Segoe UI",Arial,sans-serif;font-size:1.08rem;color:#e4e0f8;text-decoration:none;text-shadow:0 1px 2px rgba(0,0,0,.55)}
.sf-soc svg{width:24px;height:24px;flex:none;transition:transform .12s}
.sf-soc:hover{color:var(--accent)}
.sf-soc:hover svg{transform:scale(1.13)}
.sf-meta{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem 1.05rem;font-family:var(--mc);font-size:.72rem;letter-spacing:.5px}
.sf-meta a{display:inline-flex;align-items:center;gap:.42rem;color:#d8d4f2;text-decoration:none;transition:color .12s;text-shadow:1px 1px 0 #000}
.sf-meta a:hover{color:var(--accent)}
.sf-meta a svg{width:16px;height:16px;flex:none;opacity:.85}
.sf-sep{color:#bcb7de;opacity:.6}
.sf-cr{color:#cbc6ea;text-shadow:1px 1px 0 #000}
.sf-disc{margin:.25rem auto 0;text-align:center;font-family:var(--mc);font-size:.55rem;color:#aaa4cf;text-shadow:1px 1px 0 #000;line-height:1.8;opacity:.82;max-width:560px;width:100%}
/* DAY MODE: light sky needs dark footer text */
[data-theme="light"] .sitefooter{border-top-color:rgba(0,0,0,.16)}
[data-theme="light"] .sf-logo{color:#3a2a86;text-shadow:1px 1px 0 rgba(255,255,255,.5)}
[data-theme="light"] .sf-tag{color:#272350;text-shadow:none}
[data-theme="light"] .sf-soc{color:#221d46;text-shadow:none}
[data-theme="light"] .sf-meta a{color:#221d46;text-shadow:none}
[data-theme="light"] .sf-soc:hover,[data-theme="light"] .sf-meta a:hover{color:#5b3fd0}
[data-theme="light"] .sf-sep{color:#221d46;opacity:.45}
[data-theme="light"] .sf-disc{color:#3a3560;text-shadow:none}
[data-theme="light"] .sf-cr{color:#2a2750;text-shadow:none}
@media(max-width:640px){.sf-meta{gap:.45rem .8rem;font-size:.88rem}.sf-logo{font-size:1.35rem}.sf-disc{font-size:.5rem}}

/* ==== TRUE LIGHT MODE (frosted cards + dark text, 2026-06-28) ==== */
/* ============================================================
   TRUE LIGHT MODE — frosted-glass cards w/ dark text (match hero)
   All rules scoped to [data-theme="light"] → dark mode untouched.
   Core trick: redefine the color custom-properties ON .card so every
   descendant using var(--text)/var(--input-bg)/etc flips automatically.
   ============================================================ */

/* Frosted-glass card shell (mirrors the hero's translucent glass) */
[data-theme="light"] .card{
  background:rgba(255,255,255,0.34);
  border:1px solid rgba(255,255,255,0.45);
  border-radius:10px;
  -webkit-backdrop-filter:blur(22px) saturate(1.35);
  backdrop-filter:blur(22px) saturate(1.35);
  box-shadow:0 8px 24px rgba(20,40,80,0.14),0 2px 5px rgba(20,40,80,0.08),inset 0 1px 0 rgba(255,255,255,0.25);
  /* flip the palette for everything inside this card */
  --panel:rgba(255,255,255,0.30);
  --panel-border:rgba(0,0,0,0.10);
  --panel-hi:rgba(255,255,255,0.6);
  --panel-lo:rgba(0,0,0,0.08);
  --text:#15122b;
  --text-sec:#3a3556;
  --text-mut:#5f5a7e;
  --input-bg:rgba(255,255,255,0.78);
  --input-brd:rgba(0,0,0,0.16);
  /* NOTE: do NOT override --accent here — light mode already sets a readable dark
     per-tool accent (#7e22ce etc); let it flow so labels/buttons match the tool color. */
}
/* legal pages (privacy/terms) — frosted card + readable purple accent (no per-tool color here) */
[data-theme="light"] .legalbox{
  background:rgba(255,255,255,0.42);
  border:1px solid rgba(255,255,255,0.5);
  -webkit-backdrop-filter:blur(22px) saturate(1.35);
  backdrop-filter:blur(22px) saturate(1.35);
  box-shadow:0 8px 24px rgba(20,40,80,0.14),0 2px 5px rgba(20,40,80,0.08);
  --panel:rgba(255,255,255,0.30);--panel-border:rgba(0,0,0,0.12);--panel-hi:rgba(255,255,255,0.6);--panel-lo:rgba(0,0,0,0.05);
  --text:#15122b;--text-sec:#3a3556;--text-mut:#5f5a7e;--accent:#6d28d9;
}
[data-theme="light"] .legal-foot{color:#5f5a7e}
/* light-mode dark accents for the 2 tools that lacked one (fall back to bright otherwise) */
[data-theme="light"] #page-armorstand{--accent:#525866}
[data-theme="light"] #page-playerheads{--accent:#16a34a}
/* primary / download / build buttons → the tool's accent color (consistent, "keep the color") */
[data-theme="light"] .btn-p,[data-theme="light"] .btn-forge,[data-theme="light"] #hudDownload{
  background:linear-gradient(180deg,color-mix(in srgb,var(--accent),#fff 10%),color-mix(in srgb,var(--accent),#000 22%))!important;
  color:#fff!important;
  border-top-color:color-mix(in srgb,var(--accent),#fff 30%)!important;
  border-left-color:color-mix(in srgb,var(--accent),#fff 30%)!important;
  border-bottom-color:color-mix(in srgb,var(--accent),#000 42%)!important;
  border-right-color:color-mix(in srgb,var(--accent),#000 42%)!important;
}
[data-theme="light"] .btn-p:disabled,[data-theme="light"] .btn-forge:disabled{filter:saturate(.4) opacity(.7)}
/* kill the green underside: btn-forge's 3D box-shadow used --btn-lo (green in light mode) - use the accent shade */
[data-theme="light"] .btn-forge{box-shadow:0 4px 0 color-mix(in srgb,var(--accent),#000 42%)!important}
[data-theme="light"] .btn-forge:active:not(:disabled){box-shadow:0 1px 0 color-mix(in srgb,var(--accent),#000 42%)!important}
/* match the top hero to the frosted-glass cards in light mode (Cooper's ask) */
[data-theme="light"] .tool-hero{
  background:rgba(255,255,255,0.34);
  border:1px solid rgba(255,255,255,0.45);
  border-radius:10px;
  -webkit-backdrop-filter:blur(22px) saturate(1.35);
  backdrop-filter:blur(22px) saturate(1.35);
  box-shadow:0 8px 24px rgba(20,40,80,0.14),0 2px 5px rgba(20,40,80,0.08),inset 0 1px 0 rgba(255,255,255,0.25);
}
/* hero sub uses the global light --text-sec (light grey) → too faint on the lighter hero; darken it */
[data-theme="light"] .tool-hero-sub{color:#3a3556}

/* keep the accent-tinted top border per tool, just lighter */
[data-theme="light"] #page-merger .card,[data-theme="light"] #page-skinpack .card,
[data-theme="light"] #page-paintings .card,[data-theme="light"] #page-avatar .card,
[data-theme="light"] #page-coords .card,[data-theme="light"] #page-totem .card,
[data-theme="light"] #page-capeeditor .card,[data-theme="light"] #page-capebuilder .card,
[data-theme="light"] #page-musicdisc .card,[data-theme="light"] #page-skineditor3d .card,
[data-theme="light"] #page-hudcustom .card,[data-theme="light"] #page-converter .card,
[data-theme="light"] #page-armorstand .card,[data-theme="light"] #page-colorcode .card,
[data-theme="light"] #page-emojipack .card,[data-theme="light"] #page-playerheads .card{
  border-color:color-mix(in srgb,var(--accent) 22%,rgba(255,255,255,0.85));
}

/* text shadows read muddy on light mode — flatten them EVERYWHERE (covers the
   ~47 inline `text-shadow:1px 1px 0 #000` divs my old element-list missed).
   !important beats inline styles. Buttons keep their bevel shadow for legibility. */
[data-theme="light"] *{text-shadow:none!important}
/* ...but keep the in-game TEXT simulations shadowed (chat preview + §-name preview) */
[data-theme="light"] .cc-preview,[data-theme="light"] .cc-preview *{text-shadow:2px 2px 0 #000!important}
[data-theme="light"] .mc-color-preview,[data-theme="light"] .mc-color-preview *{text-shadow:1px 1px 0 rgba(0,0,0,.7)!important}
/* card label = the tool's (already-dark, readable) accent */
[data-theme="light"] .card .card-label{
  color:var(--accent);
  border-bottom-color:color-mix(in srgb,var(--accent) 40%,transparent);
}

/* inputs / selects / textareas → light fields */
[data-theme="light"] .card :is(input,textarea,select){
  background:rgba(255,255,255,0.85);color:#15122b;border:1px solid rgba(0,0,0,0.18);
}
[data-theme="light"] .card ::placeholder{color:#8a85a6}

/* dropzones → light translucent */
[data-theme="light"] .card .dz{
  background:rgba(255,255,255,0.4);border-color:rgba(0,0,0,0.22);
}
[data-theme="light"] .card .dz:hover{background:rgba(255,255,255,0.6)}

/* secondary/grey button bevels read fine, but ensure their text is dark on light variants */
[data-theme="light"] .card .btn-s{color:#15122b}

/* VISIBILITY: faint white dividers/fills (rgba(255,255,255,.0x)) designed for dark
   cards go invisible on light cards — flip them to faint dark so they still read.
   (the 1px "or fetch by username" separator spans, subtle fills, etc.) */
[data-theme="light"] .card [style*="background:rgba(255,255,255"],
[data-theme="light"] .card [style*="background: rgba(255,255,255"]{background:rgba(0,0,0,.13)!important}
/* emoji pixel-draw active tool/size: white-on-faint-accent vanished on light → dark text + denser accent */
[data-theme="light"] .ep-draw-tool.active,[data-theme="light"] .ep-draw-size-btn.active{color:#15122b!important;background:color-mix(in srgb,var(--accent),transparent 55%)!important;text-shadow:none!important}

/* ───── non-.card content panels (flip these too) ───── */
/* changelog: dark wrapper → frosted glass + dark text */
[data-theme="light"] .changelog{
  background:rgba(255,255,255,0.34);
  border:1px solid rgba(255,255,255,0.45);
  border-radius:10px;
  -webkit-backdrop-filter:blur(22px) saturate(1.35);
  backdrop-filter:blur(22px) saturate(1.35);
  box-shadow:0 8px 24px rgba(20,40,80,0.14),0 2px 5px rgba(20,40,80,0.08);
}
[data-theme="light"] .changelog :is(.cl-item,.cl-text,.cl-body,p,li,span:not(.cl-tag)){
  color:#15122b;text-shadow:none;
}
[data-theme="light"] .changelog .cl-group-date{color:var(--accent-dk);text-shadow:none}

/* wizard step tabs (pack merger + converter) — filled button look (Cooper's ask) */
[data-theme="light"] .m-tab{background:linear-gradient(180deg,color-mix(in srgb,var(--btn2-bg),#fff 12%),var(--btn2-bg));color:#fff;border:2px solid;border-top-color:var(--btn2-hi);border-left-color:var(--btn2-hi);border-bottom-color:var(--btn2-lo);border-right-color:var(--btn2-lo);border-radius:4px}
[data-theme="light"] .m-tab:hover{filter:brightness(1.1)}
[data-theme="light"] .m-tab.active{background:linear-gradient(180deg,color-mix(in srgb,var(--accent),#fff 14%),color-mix(in srgb,var(--accent),#000 18%));color:#fff;border-top-color:color-mix(in srgb,var(--accent),#fff 30%);border-left-color:color-mix(in srgb,var(--accent),#fff 30%);border-bottom-color:color-mix(in srgb,var(--accent),#000 40%);border-right-color:color-mix(in srgb,var(--accent),#000 40%)}
[data-theme="light"] .m-tab.done{background:linear-gradient(180deg,color-mix(in srgb,var(--accent),#fff 4%),color-mix(in srgb,var(--accent),#000 32%));color:#fff;border-top-color:color-mix(in srgb,var(--accent),#fff 18%);border-left-color:color-mix(in srgb,var(--accent),#fff 18%);border-bottom-color:color-mix(in srgb,var(--accent),#000 45%);border-right-color:color-mix(in srgb,var(--accent),#000 45%)}

/* HUD customizer full-width download action bar */
[data-theme="light"] #page-hudcustom.active>div:has(#hudDownload){
  background:rgba(255,255,255,0.30);
  border-color:rgba(0,0,0,0.10);
  border-top-color:rgba(255,255,255,0.6);
  -webkit-backdrop-filter:blur(22px) saturate(1.35);
  backdrop-filter:blur(22px) saturate(1.35);
}

/* music disc picker tiles blend into the frosted card in light mode — give each a defining edge (box-shadow, so it doesn't fight the inline bg/active-border) */
[data-theme="light"] .md-disc-card{box-shadow:inset 0 0 0 1.5px rgba(0,0,0,0.14),0 1px 3px rgba(20,40,80,0.10)}


.av-drop.drag{outline:2px dashed var(--accent)}
/* Default stand texture zone (2026-09-19): same hover/loaded states as the cape zone */
#page-armorstand .as-default-zone:hover,#page-armorstand .as-default-zone.over{background:rgba(180,144,255,.10) !important;border-color:#b490ff !important}
#page-armorstand .as-default-zone.has-tex{background:rgba(85,255,85,.08) !important;border-color:#55FF55 !important;border-style:solid !important}

/* ── armor stand POSES card + editor (WO 2026-09-19) ─────────────────────── */
#page-armorstand .as-pose-grid{display:grid;grid-template-columns:1fr 1fr;gap:.45rem;margin-top:.6rem}
@media (max-width:560px){#page-armorstand .as-pose-grid{grid-template-columns:1fr}}
#page-armorstand .as-pose-row{display:flex;gap:.5rem;align-items:center;padding:.45rem .5rem;background:rgba(0,0,0,.2);border:1px solid var(--panel-border);border-radius:6px;min-width:0}
.as-pose-thumb{width:56px;height:72px;flex-shrink:0;image-rendering:pixelated;background:var(--panel-lo);border:2px solid var(--panel-border);border-radius:4px;object-fit:contain}
#page-armorstand .as-pose-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
#page-armorstand .as-pose-name{font-size:.6rem;color:var(--text);text-shadow:1px 1px 0 #000;font-family:var(--mc);font-weight:bold}
#page-armorstand .as-chip{display:inline-block;font-size:.42rem;color:var(--text-mut);background:rgba(255,255,255,.05);border:1px solid var(--panel-border);padding:1px 4px;border-radius:3px;margin:0 3px 2px 0;white-space:nowrap;text-shadow:1px 1px 0 #000}
#page-armorstand .as-pose-badge{display:inline-block;font-size:.42rem;padding:1px 5px;border-radius:3px;border:1px solid var(--panel-border);color:var(--text-mut);background:rgba(255,255,255,.04);text-transform:uppercase;letter-spacing:1px;align-self:flex-start;text-shadow:1px 1px 0 #000}
#page-armorstand .as-pose-badge.custom,#page-armorstand .as-pose-badge.blockbench{color:#ffaa00;background:rgba(255,170,0,.12);border-color:rgba(255,170,0,.4)}
#page-armorstand .as-pose-btns{display:flex;flex-direction:column;gap:3px;flex-shrink:0}
#page-armorstand .as-pose-btns .btn{font-size:.45rem;padding:2px 6px;min-width:52px}
.as-pose-modal{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.65);padding:1rem;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);font-family:var(--mc)}
.as-pose-panel{background:var(--panel-lo,#14102a);border:3px solid var(--panel-border);border-top-color:var(--panel-hi);border-left-color:var(--panel-hi);border-radius:8px;width:min(760px,100%);max-height:94vh;display:flex;flex-direction:column;color:var(--text);box-shadow:0 10px 40px rgba(0,0,0,.6);overflow:hidden}
.as-pose-panel-sm{width:min(520px,100%)}
.as-pose-head{display:flex;align-items:center;justify-content:space-between;padding:.7rem .9rem;border-bottom:2px solid var(--panel-border)}
.as-pose-title{font-size:.72rem;color:var(--text);text-shadow:2px 2px 0 #000}
.as-pose-x{font-size:.5rem;padding:2px 7px}
.as-pose-body{display:flex;gap:.8rem;padding:.8rem .9rem;overflow:auto;min-height:0}
.as-pose-view{flex-shrink:0;position:relative;width:280px;align-self:flex-start}
.as-pose-view canvas{width:280px;height:320px;display:block;background:rgba(0,0,0,.25);border:2px solid var(--panel-border);border-radius:6px;image-rendering:pixelated;touch-action:none;cursor:grab}
.as-pose-viewhint{position:absolute;left:0;right:0;bottom:4px;text-align:center;font-size:.42rem;color:var(--text-mut);text-shadow:1px 1px 0 #000;pointer-events:none}
.as-pose-bones{flex:1;min-width:0;display:grid;grid-template-columns:1fr 1fr;gap:.4rem .7rem;align-content:start}
.as-pose-bone{background:rgba(0,0,0,.18);border:1px solid var(--panel-border);border-radius:5px;padding:.35rem .45rem}
.as-pose-bonename{font-size:.52rem;color:var(--text);text-shadow:1px 1px 0 #000;margin-bottom:3px}
.as-pose-axis{display:flex;align-items:center;gap:.35rem;margin-top:2px}
.as-pose-axl{font-size:.5rem;color:var(--text-mut);width:10px;text-shadow:1px 1px 0 #000}
.as-pose-axis input[type="range"].as-pose-slider{-webkit-appearance:none;appearance:none;flex:1;height:18px;background:transparent;cursor:pointer;outline:none;padding:0;margin:0;min-width:0}
.as-pose-axis .as-pose-slider::-webkit-slider-runnable-track{height:10px;border:2px solid #000;border-radius:0;background:linear-gradient(to right,#b490ff 0%,#7c4dff var(--as-fill,50%),var(--panel-lo,#14102a) var(--as-fill,50%),var(--panel-lo,#14102a) 100%);box-shadow:inset 0 2px 0 rgba(255,255,255,.12),inset 0 -2px 0 rgba(0,0,0,.45)}
.as-pose-axis .as-pose-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:10px;height:16px;margin-top:-5px;border-radius:0;background:#5b3daa;border:2px solid #000;box-shadow:inset 0 2px 0 #b490ff,inset 0 -3px 0 #3a2580;cursor:grab}
.as-pose-axis .as-pose-slider::-moz-range-track{height:10px;border:2px solid #000;background:var(--panel-lo,#14102a)}
.as-pose-axis .as-pose-slider::-moz-range-progress{height:10px;background:#7c4dff}
.as-pose-axis .as-pose-slider::-moz-range-thumb{width:10px;height:16px;border-radius:0;background:#5b3daa;border:2px solid #000}
.as-pose-axis input[type="number"].as-pose-num{width:54px;font-size:.5rem;padding:2px 4px;text-align:center;flex-shrink:0}
.as-pose-adv{grid-column:1/-1}
.as-pose-adv summary{font-size:.5rem;color:var(--text-mut);cursor:pointer;text-shadow:1px 1px 0 #000;margin:.2rem 0}
.as-pose-adv .as-pose-bone{margin-top:.35rem}
.as-pose-hide{grid-column:1/-1}
.as-pose-hidenote{font-size:.42rem;color:var(--text-mut)}
.as-pose-hiderow{display:flex;flex-wrap:wrap;gap:.4rem .85rem;margin-top:3px}
.as-pose-bone.is-hidden{opacity:.45}
.as-pose-tools{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;padding:.6rem .9rem;border-top:2px solid var(--panel-border)}
.as-pose-tools .btn{font-size:.5rem;padding:5px 9px}
.as-pose-select{width:auto;font-size:.5rem;padding:4px 6px}
.as-pose-skintgl{display:inline-flex;align-items:center;gap:4px;font-size:.5rem;color:var(--text-sec);text-shadow:1px 1px 0 #000;cursor:pointer}
.as-pose-skintgl input{margin:0}
.as-pose-sheetbody{display:flex;gap:.8rem;padding:.8rem .9rem;overflow:auto}
.as-pose-field{display:flex;align-items:center;gap:.5rem;margin-bottom:.4rem}
.as-pose-field label{font-size:.5rem;color:var(--text-mut);text-shadow:1px 1px 0 #000;width:64px;flex-shrink:0}
.as-pose-report{font-size:.46rem;line-height:1.5;text-shadow:1px 1px 0 #000}
.as-pose-rep.ok{color:#86efac}.as-pose-rep.warn{color:#ffaa00}.as-pose-rep.err{color:#f87171}.as-pose-rep.mut{color:var(--text-mut)}
@media (max-width:640px){.as-pose-body{flex-direction:column}.as-pose-view{width:100%}.as-pose-view canvas{width:100%;height:320px;max-height:42vh}.as-pose-bones{grid-template-columns:1fr}}
/* poses v2 (2026-09-19): hide-baseplate option + per-pose chip */
#page-armorstand .as-pose-opt{display:flex;align-items:center;gap:.45rem;font-size:.5rem;color:var(--text-sec);text-shadow:1px 1px 0 #000;margin-top:.55rem;cursor:pointer;line-height:1.5}
#page-armorstand .as-pose-opt input{margin:0;flex-shrink:0}
#page-armorstand .as-chip-plate{color:#ffa500;border-color:rgba(255,165,0,.4);background:rgba(255,165,0,.1)}
/* 10/11 beta launch: Desktop App nav entry + Tools-menu nav for 601-900px (the full nav overflowed there) */
@media(min-width:601px) and (max-width:900px){
  .navbar{flex-wrap:wrap;position:relative}.nav-links{display:none!important}
  .nav-right{margin-left:auto;display:flex;align-items:center;gap:4px}
  .nav-tools-btn{display:block;background:none;border:2px solid var(--panel-border);color:var(--text-mut);font-family:var(--mc);font-size:.5rem;padding:4px 8px;cursor:pointer;text-shadow:1px 1px 0 #000;white-space:nowrap}
  .nav-tools-btn:hover{border-color:var(--accent);color:var(--text)}
  /* Shrink the Discord square so it visually matches the Tools button height on mobile */
  .nav-discord-btn{width:26px;height:26px;border-radius:4px}
  .nav-discord-btn svg{width:14px;height:14px}
  .nav-dropdown{position:absolute;top:100%;right:0;background:rgba(10,8,22,0.96);border:2px solid var(--panel-border);border-top:none;z-index:100;min-width:180px;backdrop-filter:blur(12px)}
  .nav-dropdown.open{display:block}
  .nav-dd-item{padding:10px 16px;font-size:.55rem;color:var(--text-mut);cursor:pointer;border-bottom:1px solid rgba(255,255,255,.04);text-shadow:1px 1px 0 #000;letter-spacing:1px;text-decoration:none;display:block}
  .nav-dd-item:hover,.nav-dd-item:active{background:rgba(255,255,255,.05);color:var(--text)}
  .nav-dd-item.active{color:var(--accent)}
  #themeBtn{display:none}
  .nav-dd-label{padding:8px 16px 4px;font-size:.48rem;color:var(--accent);letter-spacing:2px;text-transform:uppercase;text-shadow:1px 1px 0 #000;border-top:1px solid rgba(255,255,255,.08);margin-top:2px;pointer-events:none}
  .nav-dd-label:first-child{border-top:none;margin-top:0}
  /* Section dropdowns inside the mobile Tools menu - each <details> wraps a category. */
  .nav-dd-group{margin:0}
  .nav-dd-group>summary.nav-dd-label{cursor:pointer;pointer-events:auto;padding:10px 16px;font-size:.5rem;display:flex;align-items:center;justify-content:space-between;list-style:none;user-select:none}
  .nav-dd-group>summary.nav-dd-label::-webkit-details-marker{display:none}
  .nav-dd-group>summary.nav-dd-label::after{content:'▾';font-size:.55rem;opacity:.65;transition:transform .15s ease;margin-left:8px}
  .nav-dd-group[open]>summary.nav-dd-label::after{transform:rotate(180deg)}
  .nav-dd-group>summary.nav-dd-label:hover,.nav-dd-group>summary.nav-dd-label:active{background:rgba(255,255,255,.05);color:#fff}
  .nav-dd-group .nav-dd-item{padding-left:28px}
  .nav-dd-bottom{padding:10px 16px;font-size:.55rem;color:var(--text-mut);cursor:pointer;border-top:2px solid var(--panel-border);text-shadow:1px 1px 0 #000;letter-spacing:1px;margin-top:2px;text-decoration:none;display:block}
  .nav-dd-bottom:hover,.nav-dd-bottom:active{background:rgba(255,255,255,.05);color:var(--text)}
  .nav-dd-bottom.active{color:var(--accent)}
  .nav-dd-theme{padding:10px 16px;font-size:.55rem;color:var(--text-mut);cursor:pointer;text-shadow:1px 1px 0 #000;letter-spacing:1px}
  .nav-dd-theme:hover,.nav-dd-theme:active{background:rgba(255,255,255,.05);color:var(--text)}
}
.nav-app{display:inline-flex;align-items:center;gap:6px}
.nav-soon{display:inline-block;font-family:var(--mc);font-size:.4rem;letter-spacing:1px;line-height:1;padding:3px 4px 2px;background:#3cc8ff;color:#04161f;text-shadow:none;text-transform:uppercase;box-shadow:inset -1px -1px 0 rgba(0,0,0,.28),inset 1px 1px 0 rgba(255,255,255,.4);vertical-align:middle}
.nav-dd-item .nav-soon{margin-left:8px}
@media(max-width:900px){.nav-right .nav-app{display:none}}
/* 10/11 beta launch QA fixes */
.fmt-btn{color:var(--text)}  /* B/I/U/S/?/R buttons had no colour: black on near-black in dark mode */
#page-skineditor3d #se3dLoadingMsg{min-height:100vh;box-sizing:border-box}  /* reserve the editor's space: no layout shift when it swaps in */
#tmResultCard.tm-pending{display:block!important;visibility:hidden;min-height:1090px}  /* reserved until the default skin renders (CLS) */
@media(min-width:601px){#tmResultCard.tm-pending{min-height:900px}}
@media(min-width:1001px){#tmResultCard.tm-pending{min-height:700px}}
