
/* v1.3.1 — clearly differentiated visual presets */
.kdc-countdown--kdc_luxury{
--kdc-bg:#090611;--kdc-accent:#D4AF37;--kdc-number:#FFFFFF;
--kdc-panel:rgba(255,255,255,.045);--kdc-line:rgba(212,175,55,.48)
}
.kdc-countdown--hdsf_heritage{
--kdc-bg:#07181A;--kdc-accent:#D7B76A;--kdc-number:#F3E8CF;
--kdc-panel:rgba(213,183,106,.075);--kdc-line:rgba(215,183,106,.58)
}
.kdc-countdown--midnight_gold{
--kdc-bg:#070318;--kdc-accent:#F0C75E;--kdc-number:#FFFFFF;
--kdc-panel:rgba(122,72,180,.10);--kdc-line:rgba(240,199,94,.55)
}
.kdc-countdown--custom{ }

.kdc-countdown{
--kdc-bg:#080611;--kdc-accent:#D4AF37;--kdc-number:#fff;
position:relative;isolation:isolate;overflow:hidden;width:100%;max-width:var(--kdc-max);
min-height:230px;margin:18px auto;padding:28px 34px;box-sizing:border-box;color:#fff;
background:radial-gradient(circle at 78% 50%,rgba(212,175,55,.13),transparent 30%),
linear-gradient(105deg,#05040b 0%,var(--kdc-bg) 52%,#12091a 100%);
border:1px solid var(--kdc-accent);border-radius:var(--kdc-radius);
box-shadow:0 16px 45px rgba(0,0,0,.28),inset 0 0 0 1px rgba(255,255,255,.035);
font-family:Arial,Helvetica,sans-serif
}
.kdc-countdown__image{
position:absolute;inset:-2px;z-index:-5;background-size:cover;background-repeat:no-repeat;
background-position:center center;opacity:0;transition:opacity .5s ease,transform 1.2s ease;
transform-origin:center center;pointer-events:none
}
.kdc-countdown__image.is-active{opacity:var(--kdc-image-opacity,1)}
.kdc-countdown__overlay{
position:absolute;inset:0;z-index:-4;pointer-events:none;transition:background-color .4s ease
}
.kdc-countdown__glow{position:absolute;inset:-40%;z-index:-3;background:radial-gradient(circle,rgba(212,175,55,.10),transparent 45%);pointer-events:none}
.kdc-countdown__pattern-removed{
position:absolute;inset:0;z-index:-2;opacity:.14;pointer-events:none;
background:
linear-gradient(90deg,transparent 0 47%,var(--kdc-accent) 47% 53%,transparent 53%) 0 0/42px 42px,
linear-gradient(0deg,transparent 0 47%,var(--kdc-accent) 47% 53%,transparent 53%) 0 0/42px 42px;
mask-image:linear-gradient(90deg,transparent,black 18%,black 82%,transparent);
transform:rotate(0deg) scale(1.15)
}
.kdc-countdown__identity{position:relative;z-index:2;width:30%;min-width:260px}
.kdc-countdown__eyebrow{color:var(--kdc-accent);font-size:11px;font-weight:800;letter-spacing:3px;margin-bottom:7px}
.kdc-countdown h2{color:#F1E9D2;margin:0;font-size:clamp(20px,2.3vw,34px);line-height:1.05;font-weight:900;letter-spacing:.4px}
.kdc-countdown__subtitle{margin-top:8px;color:rgba(255,255,255,.68);font-size:12px;letter-spacing:1.7px;font-weight:700}
.kdc-countdown__clock{
position:absolute;left:30%;right:4%;top:50%;transform:translateY(-50%);
display:flex;align-items:center;justify-content:center;gap:18px
}
.kdc-countdown__unit{
position:relative;flex:0 1 132px;min-width:105px;text-align:center;
padding:14px 12px 11px;border:1px solid rgba(212,175,55,.42);
border-radius:12px;background:linear-gradient(180deg,var(--kdc-panel,rgba(255,255,255,.045)),rgba(0,0,0,.035));
box-shadow:inset 0 0 0 1px rgba(255,255,255,.025),0 8px 22px rgba(0,0,0,.20);
}
.kdc-countdown__unit:before,
.kdc-countdown__unit:after{
content:"";position:absolute;width:14px;height:14px;border-color:var(--kdc-accent);
opacity:.9;pointer-events:none
}
.kdc-countdown__unit:before{left:-1px;top:-1px;border-left:2px solid;border-top:2px solid;border-radius:10px 0 0 0}
.kdc-countdown__unit:after{right:-1px;bottom:-1px;border-right:2px solid;border-bottom:2px solid;border-radius:0 0 10px 0}
.kdc-countdown__unit--days:after,
.kdc-countdown__unit--seconds:before{
box-shadow:none
}
.kdc-countdown__unit+.kdc-countdown__unit:before{
content:"";position:absolute;left:-12px;top:50%;width:5px;height:5px;
border-radius:50%;background:var(--kdc-accent);box-shadow:0 0 10px rgba(212,175,55,.55);
transform:translate(-50%,-50%)
}
.kdc-countdown__value{color:var(--kdc-number);font-size:clamp(34px,4vw,62px);line-height:.95;font-weight:900;font-variant-numeric:tabular-nums;letter-spacing:-2px;text-shadow:0 0 24px rgba(212,175,55,.18)}
.kdc-countdown__label{margin-top:9px;color:var(--kdc-accent);font-size:9px;font-weight:800;letter-spacing:2px}
.kdc-countdown__meta{position:absolute;left:34px;right:34px;bottom:19px;display:flex;justify-content:space-between;gap:20px;color:rgba(255,255,255,.62);font-size:10px;letter-spacing:1px;text-transform:uppercase}
.kdc-countdown__meta span{color:var(--kdc-accent);font-weight:700}
.kdc-countdown__complete{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:linear-gradient(105deg,#05040b,var(--kdc-bg))}
.kdc-countdown__complete strong{color:var(--kdc-accent);font-size:clamp(24px,3vw,42px);letter-spacing:2px}
.kdc-countdown__complete span{margin-top:8px;font-size:13px;letter-spacing:2px;opacity:.8}
@media(max-width:800px){
.kdc-countdown{min-height:300px;padding:25px 22px}
.kdc-countdown__identity{width:100%;min-width:0;text-align:center}
.kdc-countdown__clock{left:14px;right:14px;top:54%;gap:7px}
.kdc-countdown__value{font-size:clamp(28px,8vw,48px)}
.kdc-countdown__unit{min-width:0;padding:11px 5px 9px}
.kdc-countdown__meta{left:22px;right:22px;bottom:13px;flex-direction:column;align-items:center;gap:5px;text-align:center}
.kdc-countdown__unit+.kdc-countdown__unit:before{left:-5px;width:3px;height:3px}
}
@media(max-width:480px){
.kdc-countdown{min-height:275px}
.kdc-countdown__subtitle{font-size:10px}
.kdc-countdown__label{font-size:7px;letter-spacing:1px}
}

.kdc-countdown:after{
content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
background:linear-gradient(90deg,rgba(4,3,9,.78) 0%,rgba(4,3,9,.30) 42%,rgba(4,3,9,.42) 100%),
radial-gradient(circle at 50% 50%,transparent 42%,rgba(0,0,0,.30) 100%);
border-radius:inherit
}
@media(max-width:800px){
.kdc-countdown:after{
background:linear-gradient(180deg,rgba(4,3,9,.78),rgba(4,3,9,.38) 55%,rgba(4,3,9,.72))
}
}


.kdc-countdown__logo{
position:absolute;right:5%;top:50%;width:210px;height:210px;z-index:-2;
transform:translateY(-50%);background-size:contain;background-repeat:no-repeat;
background-position:center;opacity:0;filter:grayscale(1) brightness(1.8);
transition:opacity .6s ease;pointer-events:none
}
.kdc-countdown__logo.is-active{opacity:.10}
.kdc-countdown--hdsf_heritage .kdc-countdown__logo{filter:sepia(.45) brightness(1.55)}
.kdc-countdown--midnight_gold .kdc-countdown__logo{opacity:.075}


.kdc-countdown--frame-soft .kdc-countdown__unit{
border-color:var(--kdc-line,rgba(212,175,55,.28));box-shadow:inset 0 0 0 1px rgba(255,255,255,.018),0 7px 18px rgba(0,0,0,.16)
}
.kdc-countdown--frame-medium .kdc-countdown__unit{ }
.kdc-countdown--frame-strong .kdc-countdown__unit{
border-color:color-mix(in srgb,var(--kdc-line,rgba(212,175,55,.68)) 140%,transparent);box-shadow:inset 0 0 0 1px rgba(255,255,255,.04),0 9px 24px rgba(0,0,0,.25)
}
.kdc-countdown--frame-strong .kdc-countdown__unit:before,
.kdc-countdown--frame-strong .kdc-countdown__unit:after{opacity:1}
.kdc-number-change{animation:kdcNumberChange .32s ease-out}
@keyframes kdcNumberChange{
0%{transform:translateY(3px);opacity:.55}
100%{transform:translateY(0);opacity:1}
}
@media(prefers-reduced-motion:reduce){
.kdc-number-change{animation:none}
}

@media(max-width:800px){
.kdc-countdown__logo{width:150px;height:150px;right:50%;top:44%;transform:translate(50%,-50%);opacity:.06}
}


/* Distinct preset atmospheres */
.kdc-countdown--kdc_luxury{
background:
radial-gradient(circle at 78% 48%,rgba(212,175,55,.18),transparent 28%),
radial-gradient(circle at 8% 90%,rgba(104,30,130,.18),transparent 30%),
linear-gradient(105deg,#05040B 0%,#090611 55%,#170A1E 100%)
}
.kdc-countdown--hdsf_heritage{
background:
radial-gradient(circle at 18% 45%,rgba(215,183,106,.13),transparent 28%),
linear-gradient(105deg,#041013 0%,#07181A 52%,#0E2726 100%);
border-color:#D7B76A
}
.kdc-countdown--hdsf_heritage .kdc-countdown__pattern-removed{opacity:.18}
.kdc-countdown--hdsf_heritage .kdc-countdown__eyebrow,
.kdc-countdown--hdsf_heritage .kdc-countdown__label{letter-spacing:2.6px}
.kdc-countdown--midnight_gold{
background:
radial-gradient(circle at 76% 35%,rgba(118,54,190,.24),transparent 30%),
radial-gradient(circle at 18% 80%,rgba(43,18,100,.22),transparent 34%),
linear-gradient(120deg,#02010A 0%,#080318 48%,#16062A 100%);
border-color:#F0C75E
}
.kdc-countdown--midnight_gold .kdc-countdown__pattern-removed{opacity:.20}
.kdc-countdown--midnight_gold .kdc-countdown__unit{
background:linear-gradient(180deg,rgba(110,58,180,.12),rgba(240,199,94,.035))
}
.kdc-countdown--hdsf_heritage .kdc-countdown__unit{
background:linear-gradient(180deg,rgba(215,183,106,.10),rgba(0,0,0,.04))
}

/* v1.5.0 — clean visual refinements */
.kdc-countdown__meta-line{
position:absolute;left:50%;top:-8px;width:72px;height:1px;
transform:translateX(-50%);
background:linear-gradient(90deg,transparent,var(--kdc-accent),transparent);
opacity:.55
}
.kdc-countdown__meta{position:absolute}
.kdc-countdown__identity h2{color:#F1E9D2}
.kdc-countdown--hdsf_heritage .kdc-countdown__subtitle{color:rgba(243,232,207,.76)}
.kdc-countdown--midnight_gold .kdc-countdown__subtitle{color:rgba(255,255,255,.74)}
.kdc-countdown--hdsf_heritage .kdc-countdown__meta span,
.kdc-countdown--midnight_gold .kdc-countdown__meta span{letter-spacing:1.2px}


/* v1.5.1 — functional preset overrides
   The module template supplies default CSS variables inline; !important here
   intentionally gives the selected preset control over those defaults. */
.kdc-countdown.kdc-countdown--kdc_luxury{
--kdc-bg:#090611 !important;
--kdc-accent:#D4AF37 !important;
--kdc-number:#FFFFFF !important;
--kdc-panel:rgba(255,255,255,.045) !important;
--kdc-line:rgba(212,175,55,.48) !important
}
.kdc-countdown.kdc-countdown--hdsf_heritage{
--kdc-bg:#07181A !important;
--kdc-accent:#D7B76A !important;
--kdc-number:#F3E8CF !important;
--kdc-panel:rgba(215,183,106,.075) !important;
--kdc-line:rgba(215,183,106,.58) !important
}
.kdc-countdown.kdc-countdown--midnight_gold{
--kdc-bg:#070318 !important;
--kdc-accent:#F0C75E !important;
--kdc-number:#FFFFFF !important;
--kdc-panel:rgba(110,58,180,.10) !important;
--kdc-line:rgba(240,199,94,.55) !important
}

/* Make the three presets visibly distinct beyond color variables. */
.kdc-countdown.kdc-countdown--hdsf_heritage h2{
text-shadow:0 1px 0 rgba(215,183,106,.18)
}
.kdc-countdown.kdc-countdown--midnight_gold h2{
text-shadow:0 0 18px rgba(118,54,190,.32)
}
.kdc-countdown.kdc-countdown--hdsf_heritage .kdc-countdown__unit{
border-color:rgba(215,183,106,.58) !important
}
.kdc-countdown.kdc-countdown--midnight_gold .kdc-countdown__unit{
border-color:rgba(240,199,94,.55) !important;
box-shadow:inset 0 0 0 1px rgba(118,54,190,.16),0 10px 28px rgba(42,10,70,.30)
}


/* v1.5.2 — robust Visual Preset engine
   Direct properties are used in addition to variables so the preset remains
   visible even when Joomla/template inline styles or cached assets are present. */

/* KDC LUXURY */
.kdc-countdown.kdc-countdown--kdc_luxury{
background:
radial-gradient(circle at 78% 45%,rgba(212,175,55,.18),transparent 28%) !important,
linear-gradient(105deg,#05040B 0%,#090611 55%,#170A1E 100%) !important;
border-color:#D4AF37 !important
}
.kdc-countdown.kdc-countdown--kdc_luxury h2,
.kdc-countdown.kdc-countdown--kdc_luxury .kdc-countdown__value{
color:#FFFFFF !important
}
.kdc-countdown.kdc-countdown--kdc_luxury .kdc-countdown__eyebrow,
.kdc-countdown.kdc-countdown--kdc_luxury .kdc-countdown__label,
.kdc-countdown.kdc-countdown--kdc_luxury .kdc-countdown__meta span{
color:#D4AF37 !important
}
.kdc-countdown.kdc-countdown--kdc_luxury .kdc-countdown__unit{
background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(212,175,55,.025)) !important;
border-color:rgba(212,175,55,.52) !important
}

/* HDSF HERITAGE — intentionally obvious petrol / ivory treatment */
.kdc-countdown.kdc-countdown--hdsf_heritage{
background:
radial-gradient(circle at 18% 42%,rgba(65,153,147,.24),transparent 30%) !important,
linear-gradient(105deg,#031012 0%,#072023 52%,#0B3433 100%) !important;
border-color:#D7B76A !important
}
.kdc-countdown.kdc-countdown--hdsf_heritage h2{
color:#F3E8CF !important
}
.kdc-countdown.kdc-countdown--hdsf_heritage .kdc-countdown__value{
color:#F3E8CF !important;
text-shadow:0 0 24px rgba(215,183,106,.24) !important
}
.kdc-countdown.kdc-countdown--hdsf_heritage .kdc-countdown__eyebrow,
.kdc-countdown.kdc-countdown--hdsf_heritage .kdc-countdown__label,
.kdc-countdown.kdc-countdown--hdsf_heritage .kdc-countdown__meta span{
color:#D7B76A !important
}
.kdc-countdown.kdc-countdown--hdsf_heritage .kdc-countdown__unit{
background:linear-gradient(180deg,rgba(72,164,157,.13),rgba(215,183,106,.045)) !important;
border-color:rgba(215,183,106,.65) !important;
box-shadow:inset 0 0 0 1px rgba(243,232,207,.035),0 9px 24px rgba(0,0,0,.26) !important
}
.kdc-countdown.kdc-countdown--hdsf_heritage .kdc-countdown__image{
filter:saturate(.78) sepia(.08) !important
}

/* MIDNIGHT GOLD — intentionally obvious midnight/violet treatment */
.kdc-countdown.kdc-countdown--midnight_gold{
background:
radial-gradient(circle at 78% 34%,rgba(130,62,205,.30),transparent 30%) !important,
radial-gradient(circle at 20% 82%,rgba(55,18,128,.25),transparent 34%) !important,
linear-gradient(120deg,#02010A 0%,#09031B 48%,#1B0731 100%) !important;
border-color:#F0C75E !important
}
.kdc-countdown.kdc-countdown--midnight_gold h2,
.kdc-countdown.kdc-countdown--midnight_gold .kdc-countdown__value{
color:#FFFFFF !important
}
.kdc-countdown.kdc-countdown--midnight_gold .kdc-countdown__eyebrow,
.kdc-countdown.kdc-countdown--midnight_gold .kdc-countdown__label,
.kdc-countdown.kdc-countdown--midnight_gold .kdc-countdown__meta span{
color:#F0C75E !important
}
.kdc-countdown.kdc-countdown--midnight_gold .kdc-countdown__unit{
background:linear-gradient(180deg,rgba(111,54,184,.16),rgba(240,199,94,.035)) !important;
border-color:rgba(240,199,94,.62) !important;
box-shadow:inset 0 0 0 1px rgba(132,62,205,.18),0 10px 30px rgba(43,7,72,.34) !important
}
.kdc-countdown.kdc-countdown--midnight_gold .kdc-countdown__image{
filter:saturate(1.12) hue-rotate(6deg) !important
}

/* Keep the selected preset visually apparent even with a photographic background. */
.kdc-countdown.kdc-countdown--hdsf_heritage:after{
background:
linear-gradient(90deg,rgba(2,16,18,.82),rgba(4,34,35,.32) 46%,rgba(3,22,24,.54)),
radial-gradient(circle at 50% 50%,transparent 38%,rgba(0,0,0,.30) 100%) !important
}
.kdc-countdown.kdc-countdown--midnight_gold:after{
background:
linear-gradient(90deg,rgba(5,2,18,.84),rgba(16,5,35,.34) 46%,rgba(8,2,24,.58)),
radial-gradient(circle at 50% 50%,transparent 38%,rgba(0,0,0,.32) 100%) !important
}
.kdc-countdown.kdc-countdown--kdc_luxury:after{
background:
linear-gradient(90deg,rgba(4,3,9,.78),rgba(4,3,9,.30) 42%,rgba(4,3,9,.42)),
radial-gradient(circle at 50% 50%,transparent 42%,rgba(0,0,0,.30) 100%) !important
}


/* v1.6.0 — Typography & Counter Controls
   These variables affect presentation only; established module geometry remains intact. */
.kdc-countdown h2{
font-size:var(--kdc-title-size,clamp(20px,2.3vw,34px));
letter-spacing:var(--kdc-title-spacing,0px)
}
.kdc-countdown__clock{
gap:var(--kdc-counter-gap,18px)
}
.kdc-countdown__value{
font-size:var(--kdc-number-size,clamp(34px,4vw,62px))
}
.kdc-countdown__label{
font-size:var(--kdc-label-size,9px)
}
.kdc-countdown__value{
text-shadow:0 0 calc(var(--kdc-gold-glow,18%) * .9) rgba(212,175,55,.18)
}
.kdc-countdown--hdsf_heritage .kdc-countdown__value{
text-shadow:0 0 calc(var(--kdc-gold-glow,18%) * .9) rgba(215,183,106,.24) !important
}
.kdc-countdown--midnight_gold .kdc-countdown__value{
text-shadow:0 0 calc(var(--kdc-gold-glow,18%) * .9) rgba(240,199,94,.30) !important
}


/* v1.7.0 — Event Branding & Content Controls */
.kdc-countdown__logo{
width:var(--kdc-logo-size,210px);
height:var(--kdc-logo-size,210px);
opacity:0
}
.kdc-countdown__logo.is-active{opacity:var(--kdc-logo-opacity,.10)}
.kdc-countdown--logo-left .kdc-countdown__logo{left:4%;right:auto}
.kdc-countdown--logo-center .kdc-countdown__logo{left:50%;right:auto;transform:translate(-50%,-50%)}
.kdc-countdown--logo-right .kdc-countdown__logo{right:5%;left:auto}
.kdc-countdown--align-center .kdc-countdown__identity{
text-align:center;margin-left:auto;margin-right:auto
}
.kdc-countdown--align-center .kdc-countdown__clock{
left:30%;right:4%
}
.kdc-countdown--minimal .kdc-countdown__identity .kdc-countdown__eyebrow{
margin-bottom:4px
}
.kdc-countdown--minimal .kdc-countdown__subtitle,
.kdc-countdown--minimal .kdc-countdown__meta{
display:none
}
.kdc-countdown--minimal .kdc-countdown__identity{
width:27%
}

/* v1.8.0 — Event state messaging. Geometry intentionally unchanged. */
.kdc-countdown__live,
.kdc-countdown__complete {
    grid-column: 1 / -1;
    align-self: center;
    justify-self: center;
    text-align: center;
    padding: 10px 18px;
    min-height: 72px;
    box-sizing: border-box;
}
.kdc-countdown__live strong,
.kdc-countdown__complete strong {
    display: block;
    font-size: clamp(18px, 2.2vw, 30px);
    letter-spacing: .08em;
    line-height: 1.15;
}
.kdc-countdown__live span,
.kdc-countdown__complete span {
    display: block;
    margin-top: 7px;
    font-size: 11px;
    letter-spacing: .18em;
    text-transform: uppercase;
}
.kdc-countdown--live .kdc-countdown__live strong { text-shadow: 0 0 18px rgba(212,175,55,.28); }

/* v1.9.0 — Multi-Stage Event Countdown
   Adds stage-aware messaging without changing established module geometry. */
.kdc-countdown__stage-label{
    display:block;
    margin-bottom:8px;
    color:var(--kdc-accent);
    font-size:9px;
    font-weight:800;
    letter-spacing:.18em;
    text-transform:uppercase;
}
.kdc-countdown--multistage.kdc-countdown--live .kdc-countdown__live strong{
    text-shadow:0 0 20px rgba(212,175,55,.30)
}
.kdc-countdown--hdsf_heritage.kdc-countdown--multistage .kdc-countdown__stage-label{
    color:#D7B76A
}
.kdc-countdown--midnight_gold.kdc-countdown--multistage .kdc-countdown__stage-label{
    color:#F0C75E
}


/* v2.0.0 — Background Image Control
   Opacity is independently controlled from the overlay so photographic
   backgrounds can be tuned without changing the established geometry. */
.kdc-countdown__image{opacity:0}
.kdc-countdown__image.is-active{opacity:var(--kdc-image-opacity,1)}

/* v2.0.0 — Event Intelligence presentation
   Small status treatment for stage-aware countdowns; layout remains unchanged. */
.kdc-countdown--multistage .kdc-countdown__clock{
  transition:opacity .35s ease
}
.kdc-countdown--live .kdc-countdown__live,
.kdc-countdown--complete .kdc-countdown__complete{
  z-index:3
}

/* v2.1.0 — Counter Appearance Designer. Presentation only; countdown logic is unchanged. */
.kdc-countdown__value{
  font-weight:var(--kdc-num-weight,900);
  letter-spacing:var(--kdc-num-spacing,-2px);
  transform:scaleX(var(--kdc-num-scale,1));
  transform-origin:center;
}
.kdc-number--classic .kdc-countdown__value{font-family:Arial,Helvetica,sans-serif}
.kdc-number--digital .kdc-countdown__value{font-family:"Arial Narrow","Roboto Condensed",Arial,sans-serif;font-variant-numeric:tabular-nums slashed-zero}
.kdc-number--elegant .kdc-countdown__value{font-family:Georgia,"Times New Roman",serif}
.kdc-number--bold .kdc-countdown__value{font-family:Arial Black,Arial,Helvetica,sans-serif}
.kdc-number--minimal .kdc-countdown__value{font-family:Arial,Helvetica,sans-serif;font-weight:400}
.kdc-shadow--off .kdc-countdown__value{text-shadow:none!important}
.kdc-shadow--soft .kdc-countdown__value{text-shadow:0 0 calc(8px + 20px * var(--kdc-num-glow,.18)) color-mix(in srgb,var(--kdc-accent) calc(18% + 42% * var(--kdc-num-glow,.18)),transparent)!important}
.kdc-shadow--strong .kdc-countdown__value{text-shadow:0 2px 2px rgba(0,0,0,.55),0 0 calc(12px + 30px * var(--kdc-num-glow,.18)) color-mix(in srgb,var(--kdc-accent) calc(28% + 55% * var(--kdc-num-glow,.18)),transparent)!important}

.kdc-countdown.kdc-counter--custom .kdc-countdown__unit{
  padding:var(--kdc-pad-y,14px) var(--kdc-pad-x,12px);
  border-width:var(--kdc-border-width,1px)!important;border-color:var(--kdc-border-color,#D4AF37)!important;
  border-radius:var(--kdc-counter-radius,12px)!important;
}
.kdc-counter--custom.kdc-box--solid .kdc-countdown__unit{background:color-mix(in srgb,var(--kdc-box-color) calc(var(--kdc-box-opacity)*100%),transparent)!important;box-shadow:none!important}
.kdc-counter--custom.kdc-box--glass .kdc-countdown__unit{background:color-mix(in srgb,var(--kdc-box-color) calc(var(--kdc-box-opacity)*100%),transparent)!important;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.kdc-counter--custom.kdc-box--outline .kdc-countdown__unit{background:transparent!important;box-shadow:none!important}
.kdc-counter--custom.kdc-box--minimal .kdc-countdown__unit{background:transparent!important;border-color:transparent!important;box-shadow:none!important}
.kdc-counter--custom.kdc-box--minimal .kdc-countdown__unit:before,.kdc-counter--custom.kdc-box--minimal .kdc-countdown__unit:after{display:none!important}

/* Ready-made counter presets */
.kdc-counter--kdc_gold .kdc-countdown__unit{border-radius:12px;background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(212,175,55,.025))!important;border-color:rgba(212,175,55,.58)!important}
.kdc-counter--kdc_gold .kdc-countdown__value{font-family:Arial,Helvetica,sans-serif;font-weight:900;letter-spacing:-2px}
.kdc-counter--digital_arena .kdc-countdown__unit{border-radius:5px!important;background:rgba(0,0,0,.42)!important;border:1px solid color-mix(in srgb,var(--kdc-accent) 78%,white)!important;box-shadow:inset 0 0 18px rgba(0,0,0,.6)!important}
.kdc-counter--digital_arena .kdc-countdown__value{font-family:"Arial Narrow","Roboto Condensed",Arial,sans-serif;font-weight:700;letter-spacing:1px;text-shadow:0 0 16px var(--kdc-accent)!important}
.kdc-counter--luxury_glass .kdc-countdown__unit{border-radius:18px!important;background:rgba(255,255,255,.075)!important;border:1px solid rgba(255,255,255,.20)!important;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 12px 28px rgba(0,0,0,.20)!important}
.kdc-counter--luxury_glass .kdc-countdown__value{font-family:Georgia,"Times New Roman",serif;font-weight:700;letter-spacing:-1px}
.kdc-counter--championship_bold .kdc-countdown__unit{border-radius:8px!important;background:linear-gradient(180deg,rgba(212,175,55,.16),rgba(0,0,0,.18))!important;border:2px solid var(--kdc-accent)!important;box-shadow:0 8px 24px rgba(0,0,0,.34)!important}
.kdc-counter--championship_bold .kdc-countdown__value{font-family:Arial Black,Arial,sans-serif;font-weight:900;letter-spacing:-3px;text-shadow:0 2px 2px rgba(0,0,0,.65),0 0 22px color-mix(in srgb,var(--kdc-accent) 45%,transparent)!important}
.kdc-counter--minimal_clean .kdc-countdown__unit{background:transparent!important;border-color:transparent!important;box-shadow:none!important}
.kdc-counter--minimal_clean .kdc-countdown__unit:before,.kdc-counter--minimal_clean .kdc-countdown__unit:after{display:none!important}
.kdc-counter--minimal_clean .kdc-countdown__value{font-family:Arial,Helvetica,sans-serif;font-weight:400;letter-spacing:0;text-shadow:none!important}

/* Dedicated separators: no longer coupled to counter corner decoration. */
.kdc-countdown__separator{position:relative;display:block;flex:0 0 8px;width:8px;height:34px}
.kdc-countdown__unit+.kdc-countdown__unit:before{left:-1px;top:-1px;width:14px;height:14px;border-radius:10px 0 0 0;background:transparent;box-shadow:none;transform:none}
.kdc-separator--dots .kdc-countdown__separator:before,.kdc-separator--dots .kdc-countdown__separator:after{content:"";position:absolute;left:50%;width:5px;height:5px;border-radius:50%;background:var(--kdc-accent);transform:translateX(-50%);box-shadow:0 0 9px color-mix(in srgb,var(--kdc-accent) 55%,transparent)}
.kdc-separator--dots .kdc-countdown__separator:before{top:8px}.kdc-separator--dots .kdc-countdown__separator:after{bottom:8px}
.kdc-separator--colon .kdc-countdown__separator:before{content:":";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--kdc-accent);font-size:26px;font-weight:800;line-height:1}
.kdc-separator--line .kdc-countdown__separator:before{content:"";position:absolute;left:50%;top:3px;bottom:3px;width:1px;background:linear-gradient(180deg,transparent,var(--kdc-accent),transparent)}
.kdc-separator--none .kdc-countdown__separator{display:none}
@media(max-width:800px){.kdc-countdown__separator{flex-basis:3px;width:3px}.kdc-separator--colon .kdc-countdown__separator:before{font-size:18px}}


/* v2.2.0 — Counter Layout & Individual Styling
   Additive presentation layer only. v2.1.0 counter presets and countdown logic remain intact. */
.kdc-countdown--individual .kdc-countdown__unit .kdc-countdown__value{
  font-size:var(--kdc-unit-number-size,var(--kdc-number-size,62px))!important;
  color:var(--kdc-unit-number-color,var(--kdc-number,#fff))!important;
}

/* Equal is intentionally neutral: it preserves the confirmed v2.1.0 geometry. */
.kdc-layout--equal .kdc-countdown__unit{flex:1 1 0}

/* Days Emphasis: one dominant information block, three supporting counters. */
.kdc-layout--days_emphasis .kdc-countdown__unit--days{flex:1.42 1 0;min-width:128px}
.kdc-layout--days_emphasis .kdc-countdown__unit--hours,
.kdc-layout--days_emphasis .kdc-countdown__unit--minutes,
.kdc-layout--days_emphasis .kdc-countdown__unit--seconds{flex:.92 1 0}
.kdc-layout--days_emphasis:not(.kdc-countdown--individual) .kdc-countdown__unit--days .kdc-countdown__value{
  font-size:calc(var(--kdc-number-size,62px) * 1.22)
}
.kdc-layout--days_emphasis.kdc-countdown--days-highlight .kdc-countdown__unit--days{
  border-color:var(--kdc-accent)!important;
  background:linear-gradient(180deg,color-mix(in srgb,var(--kdc-accent) 13%,transparent),rgba(0,0,0,.10))!important;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--kdc-accent) 18%,transparent),0 10px 28px rgba(0,0,0,.24)!important
}
.kdc-layout--days_emphasis.kdc-countdown--days-highlight .kdc-countdown__unit--days .kdc-countdown__label{color:var(--kdc-accent)!important}

/* Compact Digital: tighter rhythm while retaining all four time units. */
.kdc-layout--compact_digital .kdc-countdown__clock{gap:clamp(4px,calc(var(--kdc-counter-gap,18px) * .55),12px)}
.kdc-layout--compact_digital .kdc-countdown__unit{min-width:74px;padding:8px 8px!important;border-radius:6px!important}
.kdc-layout--compact_digital:not(.kdc-countdown--individual) .kdc-countdown__value{font-size:calc(var(--kdc-number-size,62px) * .82)}
.kdc-layout--compact_digital .kdc-countdown__label{letter-spacing:1.35px}
.kdc-layout--compact_digital .kdc-countdown__separator{flex-basis:4px;width:4px}

@media(max-width:800px){
  .kdc-layout--days_emphasis .kdc-countdown__unit--days{min-width:104px}
  .kdc-layout--compact_digital .kdc-countdown__unit{min-width:62px;padding:7px 5px!important}
}
@media(max-width:560px){
  .kdc-layout--days_emphasis .kdc-countdown__clock{flex-wrap:wrap}
  .kdc-layout--days_emphasis .kdc-countdown__unit--days{flex:1 0 100%;max-width:none}
  .kdc-layout--days_emphasis .kdc-countdown__unit--days + .kdc-countdown__separator{display:none}
  .kdc-layout--days_emphasis .kdc-countdown__unit--hours,
  .kdc-layout--days_emphasis .kdc-countdown__unit--minutes,
  .kdc-layout--days_emphasis .kdc-countdown__unit--seconds{flex:1 1 26%}
}

/* v2.2.2 — JA EventCamp / template-position background compatibility
   Keep all photographic layers inside a positive local stacking context so
   template module chrome cannot paint over negative-z background layers. */
.kdc-countdown{
  isolation:isolate;
}
.kdc-countdown__image{
  z-index:0;
}
.kdc-countdown__overlay{
  z-index:1;
}
.kdc-countdown__glow,
.kdc-countdown__logo{
  z-index:2;
}
.kdc-countdown:after{
  z-index:3;
}
.kdc-countdown__identity,
.kdc-countdown__clock,
.kdc-countdown__meta,
.kdc-countdown__complete,
.kdc-countdown__live{
  position:relative;
  z-index:10;
}
.kdc-countdown__clock,
.kdc-countdown__meta,
.kdc-countdown__complete,
.kdc-countdown__live{
  position:absolute;
}
