/* Mobile and desktop share the same quiet glass motion. No value or layout changes. */
.zdl-ci-card {
  --ci-rgb:181,220,240; --ci-x:50%; --ci-y:50%; --ci-rx:0deg; --ci-ry:0deg;
  position:relative; isolation:isolate; cursor:pointer; user-select:text;
  transform:perspective(950px) rotateX(var(--ci-rx)) rotateY(var(--ci-ry));
  transition:transform 170ms ease-out,box-shadow 180ms ease,border-color 180ms ease;
  box-shadow:inset 0 1px rgba(239,250,255,.13),inset 0 -1px rgba(var(--ci-rgb),.16);
}
#modulePanel .zdl-ci-card{box-shadow:inset 0 1px rgba(239,250,255,.13),inset 0 -1px rgba(var(--ci-rgb),.16)}
.zdl-ci-surface {position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:-1;overflow:hidden;background:radial-gradient(ellipse at var(--ci-x) var(--ci-y),rgba(var(--ci-rgb),.025),transparent 65%);}
.zdl-ci-surface::before {content:"";position:absolute;inset:0;opacity:0;background:radial-gradient(ellipse 75% 100% at var(--ci-x) var(--ci-y),rgba(var(--ci-rgb),.19),transparent 70%);transition:opacity 180ms ease;}
.zdl-ci-surface::after {content:"";position:absolute;left:18px;right:18px;bottom:7px;height:3px;opacity:.32;background:repeating-linear-gradient(90deg,rgba(var(--ci-rgb),.75) 0 1px,transparent 1px 13px);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);}
.zdl-ci-glide{position:absolute;top:0;bottom:0;left:-45%;width:42%;opacity:0;background:linear-gradient(110deg,transparent 8%,rgba(var(--ci-rgb),.035) 29%,rgba(var(--ci-rgb),.15) 50%,rgba(var(--ci-rgb),.025) 72%,transparent 95%);transform:translate3d(-35%,0,0);pointer-events:none}
.zdl-ci-card:not(.zdl-ci-static) .zdl-ci-glide{animation:zdl-ci-glass-glide var(--ci-cycle,8.5s) cubic-bezier(.25,.1,.25,1) var(--ci-phase,0s) infinite}
.zdl-ci-card:not(.zdl-ci-static) .zdl-ci-surface::after{animation:zdl-ci-signal-breathe 6.4s ease-in-out var(--ci-phase,0s) infinite}
.zdl-ci-ripple{position:absolute;left:var(--ci-touch-x,50%);top:var(--ci-touch-y,50%);width:72px;height:72px;margin:-36px 0 0 -36px;border-radius:50%;border:1px solid rgba(var(--ci-rgb),.28);background:radial-gradient(circle,rgba(var(--ci-rgb),.28),rgba(var(--ci-rgb),.08) 58%,transparent 72%);opacity:0;transform:scale(.15);pointer-events:none}
.zdl-ci-card.zdl-ci-touch:not(.zdl-ci-static) .zdl-ci-ripple{animation:zdl-ci-contact 680ms cubic-bezier(.16,.7,.3,1) both}
.zdl-ci-card.zdl-ci-touch.zdl-ci-touch-alt:not(.zdl-ci-static) .zdl-ci-ripple{animation-name:zdl-ci-contact-alt}
@keyframes zdl-ci-glass-glide{0%,8%{transform:translate3d(-35%,0,0);opacity:0}18%{opacity:.72}48%{transform:translate3d(345%,0,0);opacity:.55}58%,100%{transform:translate3d(345%,0,0);opacity:0}}
@keyframes zdl-ci-signal-breathe{0%,100%{opacity:.25}48%{opacity:.62}}
@keyframes zdl-ci-contact{0%{transform:scale(.15);opacity:.76}68%{opacity:.25}100%{transform:scale(5);opacity:0}}
@keyframes zdl-ci-contact-alt{0%{transform:scale(.15);opacity:.76}68%{opacity:.25}100%{transform:scale(5);opacity:0}}
#modulePanel .zdl-ci-card.zdl-ci-hover,#modulePanel .zdl-ci-card.zdl-ci-selected {
  border-color:rgba(var(--ci-rgb),.54);
  box-shadow:inset 0 1px rgba(var(--ci-rgb),.42),inset 0 -1px rgba(var(--ci-rgb),.34),inset 0 0 0 1px rgba(var(--ci-rgb),.2),0 8px 20px rgba(3,13,20,.12);
}
#modulePanel .zdl-ci-card.zdl-ci-selected{box-shadow:inset 0 0 0 1px rgba(var(--ci-rgb),.66),inset 0 1px rgba(239,251,255,.55),inset 0 -2px rgba(var(--ci-rgb),.38),0 0 18px rgba(var(--ci-rgb),.12)}
.zdl-ci-card.zdl-ci-hover .zdl-ci-surface::before,.zdl-ci-card.zdl-ci-selected .zdl-ci-surface::before,.zdl-ci-card.zdl-ci-pressed .zdl-ci-surface::before{opacity:1}
.zdl-ci-card.zdl-ci-selected .zdl-ci-surface::after{opacity:.8;background-size:auto;box-shadow:0 0 8px rgba(var(--ci-rgb),.18)}
.zdl-ci-card.zdl-ci-pressed{transform:perspective(950px) rotateX(var(--ci-rx)) rotateY(var(--ci-ry)) scale(.992)}
.zdl-ci-card:focus-visible{outline:2px solid rgba(var(--ci-rgb),.9);outline-offset:3px}
#modulePanel .zdl-ci-card .zdl-ci-value {color:rgb(var(--ci-rgb));text-shadow:0 0 16px rgba(var(--ci-rgb),.12);}
.workspace .zdl-ci-card .zdl-ci-value small,.workspace .zdl-ci-card .zdl-ci-value > span{color:inherit}
@supports(-webkit-background-clip:text){
  .zdl-ci-card:not(.zdl-ci-static):is(.zdl-ci-hover,.zdl-ci-selected) .zdl-ci-value:not(.zdl-ci-negative-value){
    background-image:linear-gradient(110deg,rgb(var(--ci-rgb)) 28%,#f1ffff 45%,rgb(var(--ci-rgb)) 62%);
    background-size:260% 100%;background-position:100% 50%;background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;
    animation:zdl-ci-number-scan 1.1s ease-out 1;
  }
}
@keyframes zdl-ci-number-scan{from{background-position:100% 50%}to{background-position:-60% 50%}}
.workspace .zdl-ci-card .zdl-ci-negative-value,.workspace .zdl-ci-negative .zdl-ci-value,
.workspace .zdl-ci-card.negative strong,.workspace .zdl-ci-card.is-negative strong,.workspace .zdl-ci-card strong.negative{
  color:#efb4ae!important;-webkit-text-fill-color:#efb4ae!important;background-image:none!important;text-shadow:0 0 12px rgba(239,180,174,.1);animation:none!important;
}
.zdl-ci-card.zdl-ci-static{transform:none;transition:none}
.zdl-ci-static .zdl-ci-surface::before{transition:none}
.zdl-ci-static .zdl-ci-glide,.zdl-ci-static .zdl-ci-ripple{animation:none!important;opacity:0!important}
.zdl-ci-static .zdl-ci-surface::after{animation:none!important}
.zdl-ci-offscreen .zdl-ci-surface::before{opacity:0!important}
.zdl-ci-static .zdl-ci-value{animation:none!important;background-image:none!important;-webkit-text-fill-color:currentColor!important}

/* Shared control accents: no position change, altered hit area or idle flashing. */
.workspace .button,.masthead .button,.mobile-actions .button,#appDialog .button,.module-nav button{
  transition:box-shadow 170ms ease,border-color 170ms ease,background-color 170ms ease,color 170ms ease;
}
.workspace .button:not(:disabled):is(:hover,:focus-visible),.masthead .button:not(:disabled):is(:hover,:focus-visible),.mobile-actions .button:not(:disabled):is(:hover,:focus-visible),#appDialog .button:not(:disabled):is(:hover,:focus-visible){
  border-color:rgba(193,226,241,.65);box-shadow:inset 0 1px rgba(234,249,255,.35),inset 0 -1px rgba(179,218,236,.18),0 0 16px rgba(166,212,234,.1);
}
.workspace .button:not(:disabled):active,.masthead .button:not(:disabled):active,.mobile-actions .button:not(:disabled):active,#appDialog .button:not(:disabled):active{box-shadow:inset 0 2px 8px rgba(2,13,19,.3),inset 0 0 0 1px rgba(198,231,245,.35)}
.module-nav button:not(:disabled):is(:hover,:focus-visible){color:#e5f7ff;text-shadow:0 0 13px rgba(var(--tab-rgb,181,220,240),.6);box-shadow:inset 0 1px rgba(var(--tab-rgb,181,220,240),.38),inset 0 -1px rgba(var(--tab-rgb,181,220,240),.28)}
.module-nav button:active{background-color:rgba(var(--tab-rgb,181,220,240),.17)}
.module-panel{--ci-heading:190,222,241}
.module-panel[data-module="2"]{--ci-heading:179,232,204}
.module-panel[data-module="3"]{--ci-heading:237,215,175}
.module-panel[data-module="4"]{--ci-heading:201,214,247}
.module-panel[data-module="5"]{--ci-heading:186,220,240}
.module-panel .section-intro h2{color:rgb(var(--ci-heading));text-shadow:0 0 22px rgba(var(--ci-heading),.13);transition:text-shadow 220ms ease}
.module-panel .section-intro h2:hover{text-shadow:0 0 25px rgba(var(--ci-heading),.34)}
@media(prefers-reduced-motion:reduce){.zdl-ci-card{transform:none!important;transition:none!important}.zdl-ci-card .zdl-ci-value{animation:none!important;background-image:none!important;-webkit-text-fill-color:currentColor!important}.zdl-ci-surface::before{transition:none!important}.zdl-ci-glide,.zdl-ci-ripple{animation:none!important;opacity:0!important}.zdl-ci-surface::after{animation:none!important}}
.motion-reduced .zdl-ci-card,.report-exporting .zdl-ci-card,.paused .zdl-ci-card,.motion-paused .zdl-ci-card{transform:none!important;transition:none!important}
.motion-reduced .zdl-ci-value,.report-exporting .zdl-ci-value,.paused .zdl-ci-value,.motion-paused .zdl-ci-value{animation:none!important;background-image:none!important;-webkit-text-fill-color:currentColor!important}
.motion-reduced .zdl-ci-glide,.report-exporting .zdl-ci-glide,.paused .zdl-ci-glide,.motion-paused .zdl-ci-glide,.motion-reduced .zdl-ci-ripple,.report-exporting .zdl-ci-ripple,.paused .zdl-ci-ripple,.motion-paused .zdl-ci-ripple{animation:none!important;opacity:0!important}
.motion-reduced .zdl-ci-surface::after,.report-exporting .zdl-ci-surface::after,.paused .zdl-ci-surface::after,.motion-paused .zdl-ci-surface::after{animation:none!important}
@media print{.zdl-ci-surface{display:none!important}.zdl-ci-card{transform:none!important;box-shadow:none!important;outline:none!important}.zdl-ci-value{animation:none!important;background-image:none!important;-webkit-text-fill-color:currentColor!important}}
