/* No opacity on containers: text, signatures and status badges stay opaque. */
html:not([data-skin="classic"]) .page { padding-top:24px; }
html:not([data-skin="classic"]) :is(.panel,.table-wrap,.stat-card,.page-header,.filter-panel,.form-panel,.hp-batch-progress,.hp-invoice-form) { background-color:rgba(255,255,255,.82); }
html:not([data-skin="classic"]) .page-header { background-color:rgba(255,255,255,.76); }
html:not([data-skin="classic"]) :is(.table-wrap,.panel) table { background:transparent; }
html:not([data-skin="classic"]) :is(.table-wrap,.panel) tbody tr { background:transparent; }
html:not([data-skin="classic"]) :is(.table-wrap,.panel) thead { background:rgba(255,255,255,.66); }
html:not([data-skin="classic"]) :is(.table-wrap,.panel) tbody tr:hover { background:rgba(255,255,255,.72); }
html:not([data-skin="classic"]) :is(input,select,textarea,.signature-pad-wrap) { background-color:#fff; }
html[data-skin="goku"][data-scene="home"] .battle-art { background-image:url("../themes/goku/sparking-official.1ba898e2cc9d.jpg"); background-size:cover; background-position:center; background-color:#20242d; transform:none; animation:none; }
html[data-skin="goku"] .battle-art { animation:none!important; }
html[data-skin="goku"] .button-primary::after { animation:none!important; }
.theme-cameo { position:fixed; right:18px; bottom:90px; width:180px; height:124px; pointer-events:none; z-index:30; opacity:0; }
.theme-cameo img,.theme-cameo video { width:100%; height:100%; object-fit:contain; }
/* Supplied artwork replaces CSS imitations; labels retain their own contrast. */
html:not([data-skin="classic"]) .button-primary .object-token,
html:not([data-skin="classic"]) .main-nav .object-token {
  width:38px; height:38px; flex:0 0 38px; border:0; border-radius:0;
  background:transparent url("../themes/shared/dragon-ball.8c7211fe3b27.webp") center/contain no-repeat;
  box-shadow:none; clip-path:none; color:transparent; font-size:0;
}
html:not([data-skin="classic"]) .main-nav a {
  background:transparent; border:0; border-radius:8px;
  box-shadow:none; color:#fff; text-shadow:0 1px 2px #000;
  align-items:center; padding:4px; width:108px; height:108px; min-height:108px;
  flex:0 0 108px; display:flex; flex-direction:column; justify-content:center;
  text-align:center; font-size:12px; line-height:1.2;
}
html[data-skin="vegeta"] .main-nav a { color:#143d58; text-shadow:none; }
html:not([data-skin="classic"]) .main-nav a:hover { background:#ffffff12; color:#fff; }
html[data-skin="vegeta"] .main-nav a:hover { color:#143d58; }
html:not([data-skin="classic"]) .main-nav a:focus-visible { outline:3px solid #ffdd68; outline-offset:2px; }
html:not([data-skin="classic"]) .main-nav .object-token { width:64px; height:64px; flex-basis:64px; margin:0 0 4px; text-shadow:none; }
.saiyan-transform { display:none; position:absolute; right:0; top:0; width:auto; height:100%; max-width:100%; object-fit:contain; pointer-events:none; }
html[data-skin="saiyan"] .saiyan-transform:not([hidden]) { display:block; }
html[data-skin="saiyan"] .battle-art {
  inset:0; background:#172021 url("../themes/shared/saiyan-poster.b48c4b849ac2.webp") right center/auto 100% no-repeat;
  animation:none!important; transform:none!important;
}
@media(max-width:860px) {
  html[data-skin="saiyan"] .battle-art { background-position:center; background-size:cover; }
  .saiyan-transform { width:100%; height:100%; object-fit:cover; }
}
html:not([data-skin="classic"]) .back-to-top {
  width:88px; height:64px; min-width:88px; border:0; border-radius:0;
  background:transparent url("../themes/shared/nimbus.f795bf94f3e2.webp") center/contain no-repeat;
  box-shadow:none; color:#3f2600; font-size:28px; font-weight:800;
  padding:8px 20px 0 0; text-shadow:0 1px 2px #fff;
}
html:not([data-skin="classic"]) .back-to-top:focus-visible { outline:3px solid #095cac; outline-offset:3px; }
html:not([data-skin="classic"]) .back-to-top:not([data-scrolled]) { display:none; }
@media(hover:hover) and (prefers-reduced-motion:no-preference) {
  html[data-motion="on"] .button-primary:hover .object-token { transform:rotate(12deg) scale(1.08); }
  html[data-motion="on"] .object-token { transition:transform .2s ease; }
}
@media(max-width:860px) {
  html[data-skin="goku"][data-scene="home"] .battle-art { background-image:url("../themes/goku/wallpaper-official.416c87206c95.png"); background-size:cover; background-position:center top; }
  html:not([data-skin="classic"]) :is(.panel,.table-wrap,.stat-card) { background-color:rgba(255,255,255,.88); }
  .theme-cameo { width:110px; height:76px; right:12px; bottom:84px; }
}
@media(prefers-reduced-transparency:reduce) { html:not([data-skin="classic"]) :is(.panel,.table-wrap,.stat-card,.page-header,.filter-panel,.form-panel,.hp-batch-progress,.hp-invoice-form) { background:#fff; } }
