/* CAL3D (31.10.2026): 3D calendar artwork for the floating dock (site, mirrors, /tg/app). Only the calendar slot.
   Behaviour and target stay with cl1 / floating-dock63. Layer wgfix44: important rules here outrank the unlayered dock rules. */
@layer wgfix44{
html body .wfd63.wfd63 [data-wfd-item="calendar"]{--wfd-icon:44px;--wfd-font:9.5px;--wfd-line:12px;--c3-w:var(--wfd-icon);--c3-r:calc(var(--c3-w)*.24);perspective:260px;filter:none!important}
html body .wfd63.wfd63 [data-wfd-item="calendar"].wfd-attention{filter:none!important}
@media(hover:hover) and (pointer:fine){html body .wfd63.wfd63 [data-wfd-item="calendar"]:hover{filter:brightness(1.06)!important}}
html body .wfd63.wfd63 [data-wfd-item="calendar"]:active{filter:brightness(1.04)!important}

/* card body: paper with a page-stack edge */
html body .wfd63.wfd63 [data-wfd-item="calendar"] .c3-art{position:relative!important;z-index:1;display:block!important;overflow:visible!important;box-sizing:border-box!important;padding:0!important;border:0!important;border-radius:var(--c3-r)!important;
 background:linear-gradient(162deg,#fff 0%,#fdf7ef 42%,#f1e4d1 100%)!important;
 box-shadow:0 1px 0 #eadcc7,0 2px 0 #dccab0,0 3px 0 #c9b496,0 3.5px 0 #9c856c,inset 0 -2px 4px rgba(122,78,48,.14),inset 0 1px 0 #fff!important;
 filter:none!important;transform-style:preserve-3d;backface-visibility:hidden;will-change:translate,rotate;
 animation:c3float 5.2s ease-in-out infinite}
/* red header with month */
html body .wfd63.wfd63 [data-wfd-item="calendar"] .c3-art>i{position:absolute!important;inset:0 0 auto 0!important;display:flex!important;align-items:flex-end;justify-content:center;width:auto!important;height:37%!important;margin:0!important;padding:0 0 calc(var(--c3-w)*.04)!important;box-sizing:border-box;border-radius:var(--c3-r) var(--c3-r) 0 0;
 background:radial-gradient(circle at 20% 30%,rgba(52,0,18,.9) 0 calc(var(--c3-w)*.042),transparent calc(var(--c3-w)*.05)),radial-gradient(circle at 80% 30%,rgba(52,0,18,.9) 0 calc(var(--c3-w)*.042),transparent calc(var(--c3-w)*.05)),linear-gradient(180deg,#ff5d7e 0%,#ed174d 46%,#a90f39 100%)!important;
 box-shadow:inset 0 1px 0 rgba(255,255,255,.5),inset 0 -1.5px 0 rgba(244,210,126,.85),0 1px 2px rgba(90,8,30,.35);
 color:#fff!important;font:800 max(6.5px,calc(var(--c3-w)*.19))/1 var(--wg-font-ui,Arimo),Arial,sans-serif!important;font-style:normal!important;letter-spacing:.07em!important;text-transform:uppercase;text-align:center;text-shadow:0 1px 0 rgba(105,0,28,.55);white-space:nowrap;overflow:hidden}
/* big number */
html body .wfd63.wfd63 [data-wfd-item="calendar"] .c3-art>b{position:absolute!important;inset:37% 0 0 0!important;display:grid!important;place-items:center;margin:0!important;padding:0 0 calc(var(--c3-w)*.03)!important;box-sizing:border-box;
 color:#3f1f2d!important;font:800 calc(var(--c3-w)*.56)/1 var(--wg-font-ui,Arimo),Arial,sans-serif!important;letter-spacing:-.03em;text-shadow:0 1px 0 #fff,0 2px 2px rgba(80,30,40,.12)}
/* metal binder rings */
html body .wfd63.wfd63 .c3-art>.c3-rings{position:absolute;z-index:4;inset:calc(var(--c3-w)*-.1) 0 auto 0;height:calc(var(--c3-w)*.19);pointer-events:none}
html body .wfd63.wfd63 .c3-art>.c3-rings>u{position:absolute;top:0;width:max(3px,calc(var(--c3-w)*.085));height:100%;border-radius:99px;text-decoration:none;
 background:linear-gradient(90deg,#5d5862 0%,#cfcad3 22%,#fffefe 42%,#bdb6c1 62%,#f4d27e 82%,#6a5b4e 100%);box-shadow:0 1px 1px rgba(0,0,0,.5),inset 0 -1px 0 rgba(0,0,0,.25)}
html body .wfd63.wfd63 .c3-art>.c3-rings>u:first-child{left:calc(20% - max(1.5px,calc(var(--c3-w)*.0425)))}
html body .wfd63.wfd63 .c3-art>.c3-rings>u:last-child{left:calc(80% - max(1.5px,calc(var(--c3-w)*.0425)))}
/* gloss */
html body .wfd63.wfd63 .c3-art>.c3-gloss{position:absolute;z-index:3;inset:0;border-radius:inherit;pointer-events:none;
 background:linear-gradient(128deg,rgba(255,255,255,.6) 0%,rgba(255,255,255,.16) 26%,rgba(255,255,255,0) 40%,rgba(255,255,255,0) 74%,rgba(255,255,255,.14) 100%)}
/* tear-off leaf: shown only while the press animation runs */
html body .wfd63.wfd63 .c3-art>.c3-leaf{position:absolute;z-index:2;inset:37% 0 0 0;display:grid;place-items:center;border-radius:0 0 var(--c3-r) var(--c3-r);opacity:0;pointer-events:none;transform-origin:50% 0;backface-visibility:hidden;
 background:linear-gradient(180deg,#fffaf3,#efe1cc);box-shadow:0 -1px 0 rgba(0,0,0,.08);color:#3f1f2d;font:800 calc(var(--c3-w)*.56)/1 var(--wg-font-ui,Arimo),Arial,sans-serif;letter-spacing:-.03em}
html body .wfd63.wfd63 .c3-art>.c3-leaf::before{content:attr(data-day)}
/* ground shadow, breathes with the float */
html body .wfd63.wfd63 [data-wfd-item="calendar"]>.c3-shadow{position:absolute;z-index:0;left:50%;top:calc(var(--wfd-pad,3px) + var(--c3-w)*.98);width:calc(var(--c3-w)*.84);height:calc(var(--c3-w)*.16);margin-left:calc(var(--c3-w)*-.42);border-radius:50%;pointer-events:none;
 background:radial-gradient(closest-side,rgba(0,0,0,.55),rgba(0,0,0,0));will-change:transform,opacity;animation:c3shadow 5.2s ease-in-out infinite}
/* caption */
html body .wfd63.wfd63 [data-wfd-item="calendar"]>.wfd-label{display:block!important;position:relative;z-index:2;color:#f5e6c8!important;text-shadow:0 1px 2px rgba(0,0,0,.8),0 0 3px rgba(0,0,0,.7);overflow:visible!important}
/* today badge: red dot on the card corner with a soft ripple */
html body .wfd63.wfd63 [data-wfd-item="calendar"]>.wfd-attention-badge{top:calc(var(--wfd-pad,3px) - 4px)!important;right:calc((var(--wfd-slot) - var(--c3-w))/2 - 5px)!important;width:12px!important;min-width:12px!important;height:12px!important;padding:0!important;border:2px solid #1b1016!important;border-radius:50%!important;
 background:radial-gradient(circle at 35% 30%,#ff7d97,#ed174d 55%,#b10d3a)!important;box-shadow:0 0 6px rgba(243,35,104,.7)!important;font-size:0!important;overflow:visible!important;animation:none!important}
html body .wfd63.wfd63 [data-wfd-item="calendar"]>.wfd-attention-badge::after{content:"";position:absolute;inset:-2px;border-radius:50%;border:2px solid #ed174d;opacity:0;pointer-events:none}
html body .wfd63.wfd63 [data-wfd-item="calendar"].wfd-attention>.wfd-attention-badge::after{animation:c3ping 1.9s cubic-bezier(.2,.6,.3,1) infinite}
html body .wfd63.wfd63 [data-wfd-item="calendar"].wfd-attention>.wfd-attention-badge{animation:c3dot 1.9s ease-in-out infinite!important}
html body .wfd63.wfd63 [data-wfd-item="calendar"]>.wfd-attention-badge[hidden]{display:none!important}

/* light theme (site data-theme, Mini App data-scheme) */
html[data-theme="light"] body .wfd63 [data-wfd-item="calendar"]>.wfd-label,html[data-scheme="light"] body .wfd63 [data-wfd-item="calendar"]>.wfd-label{color:#301a26!important;text-shadow:0 0 3px rgba(255,255,255,.95),0 1px 0 rgba(255,255,255,.9)}
html[data-theme="light"] body .wfd63 [data-wfd-item="calendar"]>.c3-shadow,html[data-scheme="light"] body .wfd63 [data-wfd-item="calendar"]>.c3-shadow{background:radial-gradient(closest-side,rgba(70,20,40,.32),rgba(70,20,40,0))}
html[data-theme="light"] body .wfd63 [data-wfd-item="calendar"]>.wfd-attention-badge,html[data-scheme="light"] body .wfd63 [data-wfd-item="calendar"]>.wfd-attention-badge{border-color:#fffafd!important}
html[data-theme="light"] body .wfd63 [data-wfd-item="calendar"] .c3-art,html[data-scheme="light"] body .wfd63 [data-wfd-item="calendar"] .c3-art{box-shadow:0 1px 0 #eadcc7,0 2px 0 #dccab0,0 3px 0 #c9b496,0 3.5px 0 #a58c72,0 0 0 1px rgba(96,53,70,.12),inset 0 -2px 4px rgba(122,78,48,.14),inset 0 1px 0 #fff!important}

/* phone and short screens: same 48px slot as the dock */
@media(max-width:820px),(max-height:560px){
 html body .wfd63.wfd63 [data-wfd-item="calendar"]{--wfd-icon:32px;--wfd-font:9px;--wfd-line:11px;perspective:200px}
 html body .wfd63.wfd63 [data-wfd-item="calendar"]>.wfd-attention-badge{width:10px!important;min-width:10px!important;height:10px!important;right:calc((var(--wfd-slot) - var(--c3-w))/2 - 4px)!important}
}
}
@keyframes c3float{0%,100%{translate:0 0;rotate:.45 1 0 -9deg}50%{translate:0 calc(var(--c3-w)*-.07);rotate:-.45 1 0 9deg}}
@keyframes c3shadow{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(.8);opacity:.6}}
@keyframes c3ping{0%{transform:scale(1);opacity:.75}80%,100%{transform:scale(2.3);opacity:0}}
@keyframes c3dot{0%,100%{transform:scale(1)}50%{transform:scale(1.14)}}
@media(prefers-reduced-motion:reduce){@layer wgfix44{
 html body .wfd63.wfd63 [data-wfd-item="calendar"] .c3-art,html body .wfd63.wfd63 [data-wfd-item="calendar"]>.c3-shadow,html body .wfd63.wfd63 [data-wfd-item="calendar"]>.wfd-attention-badge,html body .wfd63.wfd63 [data-wfd-item="calendar"]>.wfd-attention-badge::after{animation:none!important}
 html body .wfd63.wfd63 [data-wfd-item="calendar"] .c3-art{rotate:.45 1 0 -7deg;will-change:auto}
}}
