/* Diwali, 2 to 11 November. Small touches on the frame of the site only; a GR screen stays exactly as it is. */
html.festive .premium-topbar { position: relative; background-image: linear-gradient(180deg, rgba(255, 196, 110, .15), rgba(255, 196, 110, 0) 72%) !important; }
html.festive .premium-topbar::before { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 17px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='232' height='17' viewBox='0 0 232 17'%3E%3Cdefs%3E%3CradialGradient id='o' cx='42%25' cy='36%25'%3E%3Cstop offset='0' stop-color='%23ffc25a'/%3E%3Cstop offset='1' stop-color='%23ec7412'/%3E%3C/radialGradient%3E%3CradialGradient id='y' cx='42%25' cy='36%25'%3E%3Cstop offset='0' stop-color='%23ffe08a'/%3E%3Cstop offset='1' stop-color='%23f3a51c'/%3E%3C/radialGradient%3E%3ClinearGradient id='l' x1='0' x2='1'%3E%3Cstop offset='0' stop-color='%236f9a4e'/%3E%3Cstop offset='1' stop-color='%233f6d33'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M0.0 2.2Q58.0 11.6 116.0 2.2' fill='none' stroke='%23c6953c' stroke-width='.7'/%3E%3Cpath d='M116.0 2.2Q174.0 11.6 232.0 2.2' fill='none' stroke='%23c6953c' stroke-width='.7'/%3E%3Ccircle cx='23.2' cy='5.0' r='3.00' fill='url(%23o)' stroke='%23d9660c' stroke-width='1.26' stroke-dasharray='1.08 0.72'/%3E%3Ccircle cx='23.2' cy='5.0' r='1.68' fill='none' stroke='%23d9660c' stroke-opacity='.55' stroke-width='0.66' stroke-dasharray='0.60 0.60'/%3E%3Ccircle cx='23.2' cy='5.0' r='0.66' fill='%23b9500c'/%3E%3Ccircle cx='40.6' cy='6.4' r='3.00' fill='url(%23y)' stroke='%23e08a12' stroke-width='1.26' stroke-dasharray='1.08 0.72'/%3E%3Ccircle cx='40.6' cy='6.4' r='1.68' fill='none' stroke='%23e08a12' stroke-opacity='.55' stroke-width='0.66' stroke-dasharray='0.60 0.60'/%3E%3Ccircle cx='40.6' cy='6.4' r='0.66' fill='%23b9500c'/%3E%3Ccircle cx='58.0' cy='6.9' r='3.50' fill='url(%23o)' stroke='%23d9660c' stroke-width='1.47' stroke-dasharray='1.26 0.84'/%3E%3Ccircle cx='58.0' cy='6.9' r='1.96' fill='none' stroke='%23d9660c' stroke-opacity='.55' stroke-width='0.77' stroke-dasharray='0.70 0.70'/%3E%3Ccircle cx='58.0' cy='6.9' r='0.77' fill='%23b9500c'/%3E%3Ccircle cx='75.4' cy='6.4' r='3.00' fill='url(%23y)' stroke='%23e08a12' stroke-width='1.26' stroke-dasharray='1.08 0.72'/%3E%3Ccircle cx='75.4' cy='6.4' r='1.68' fill='none' stroke='%23e08a12' stroke-opacity='.55' stroke-width='0.66' stroke-dasharray='0.60 0.60'/%3E%3Ccircle cx='75.4' cy='6.4' r='0.66' fill='%23b9500c'/%3E%3Ccircle cx='92.8' cy='5.0' r='3.00' fill='url(%23o)' stroke='%23d9660c' stroke-width='1.26' stroke-dasharray='1.08 0.72'/%3E%3Ccircle cx='92.8' cy='5.0' r='1.68' fill='none' stroke='%23d9660c' stroke-opacity='.55' stroke-width='0.66' stroke-dasharray='0.60 0.60'/%3E%3Ccircle cx='92.8' cy='5.0' r='0.66' fill='%23b9500c'/%3E%3Cpath d='M0.0 4c-2.5 2.8-2.5 6.4 0 10c2.5-3.6 2.5-7.2 0-10z' fill='url(%23l)'/%3E%3Cpath d='M0.0 5v8' stroke='%232f5526' stroke-opacity='.5' stroke-width='.35'/%3E%3Ccircle cx='0.0' cy='2.6' r='1.5' fill='%23d8a443' stroke='%23a8782a' stroke-width='.4'/%3E%3Ccircle cx='139.2' cy='5.0' r='3.00' fill='url(%23o)' stroke='%23d9660c' stroke-width='1.26' stroke-dasharray='1.08 0.72'/%3E%3Ccircle cx='139.2' cy='5.0' r='1.68' fill='none' stroke='%23d9660c' stroke-opacity='.55' stroke-width='0.66' stroke-dasharray='0.60 0.60'/%3E%3Ccircle cx='139.2' cy='5.0' r='0.66' fill='%23b9500c'/%3E%3Ccircle cx='156.6' cy='6.4' r='3.00' fill='url(%23y)' stroke='%23e08a12' stroke-width='1.26' stroke-dasharray='1.08 0.72'/%3E%3Ccircle cx='156.6' cy='6.4' r='1.68' fill='none' stroke='%23e08a12' stroke-opacity='.55' stroke-width='0.66' stroke-dasharray='0.60 0.60'/%3E%3Ccircle cx='156.6' cy='6.4' r='0.66' fill='%23b9500c'/%3E%3Ccircle cx='174.0' cy='6.9' r='3.50' fill='url(%23o)' stroke='%23d9660c' stroke-width='1.47' stroke-dasharray='1.26 0.84'/%3E%3Ccircle cx='174.0' cy='6.9' r='1.96' fill='none' stroke='%23d9660c' stroke-opacity='.55' stroke-width='0.77' stroke-dasharray='0.70 0.70'/%3E%3Ccircle cx='174.0' cy='6.9' r='0.77' fill='%23b9500c'/%3E%3Ccircle cx='191.4' cy='6.4' r='3.00' fill='url(%23y)' stroke='%23e08a12' stroke-width='1.26' stroke-dasharray='1.08 0.72'/%3E%3Ccircle cx='191.4' cy='6.4' r='1.68' fill='none' stroke='%23e08a12' stroke-opacity='.55' stroke-width='0.66' stroke-dasharray='0.60 0.60'/%3E%3Ccircle cx='191.4' cy='6.4' r='0.66' fill='%23b9500c'/%3E%3Ccircle cx='208.8' cy='5.0' r='3.00' fill='url(%23o)' stroke='%23d9660c' stroke-width='1.26' stroke-dasharray='1.08 0.72'/%3E%3Ccircle cx='208.8' cy='5.0' r='1.68' fill='none' stroke='%23d9660c' stroke-opacity='.55' stroke-width='0.66' stroke-dasharray='0.60 0.60'/%3E%3Ccircle cx='208.8' cy='5.0' r='0.66' fill='%23b9500c'/%3E%3Cpath d='M116.0 4c-2.5 2.8-2.5 6.4 0 10c2.5-3.6 2.5-7.2 0-10z' fill='url(%23l)'/%3E%3Cpath d='M116.0 5v8' stroke='%232f5526' stroke-opacity='.5' stroke-width='.35'/%3E%3Ccircle cx='116.0' cy='2.6' r='1.5' fill='%23d8a443' stroke='%23a8782a' stroke-width='.4'/%3E%3Cpath d='M232 4c-2.5 2.8-2.5 6.4 0 10c2.5-3.6 2.5-7.2 0-10z' fill='url(%23l)'/%3E%3Ccircle cx='232' cy='2.6' r='1.5' fill='%23d8a443' stroke='%23a8782a' stroke-width='.4'/%3E%3C/svg%3E") repeat-x 0 0; filter: drop-shadow(0 1px 1px rgba(120, 70, 20, .16)); pointer-events: none; z-index: 1; }
html.festive .festive-mark { display: inline-flex; align-items: center; gap: 7px; margin-left: 14px; padding-left: 14px; border-left: 1px solid rgba(168, 115, 42, .28); font: 600 12.5px "Nunito Sans", sans-serif; letter-spacing: .01em; color: #8a5a1e; white-space: nowrap; vertical-align: middle; pointer-events: none; user-select: none; }
.festive-diya { flex: none; width: 24px; height: 24px; overflow: visible; }
.festive-flame { transform-box: fill-box; transform-origin: 50% 100%; animation: festive-flicker 3.2s ease-in-out infinite; }
.festive-glow { transform-box: fill-box; transform-origin: 50% 50%; animation: festive-glow 3.2s ease-in-out infinite; }
@keyframes festive-flicker { 0%, 100% { transform: scale(1, 1); } 30% { transform: scale(.95, 1.05) rotate(-1deg); } 55% { transform: scale(1.03, .97); } 78% { transform: scale(.98, 1.03) rotate(1deg); } }
@keyframes festive-glow { 0%, 100% { opacity: .8; transform: scale(1); } 45% { opacity: 1; transform: scale(1.06); } }
/* Everything done: a lit diya above the words. */
html.festive .desk-empty.is-finished { align-content: center; background: radial-gradient(420px 300px at 50% 46%, rgba(255, 201, 96, .12), rgba(255, 201, 96, 0)) #fff; }
html.festive .desk-empty.is-finished::before { content: ""; display: block; width: 72px; height: 72px; margin: 0 auto 10px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='72' viewBox='-2 -3 28 28'%3E%3Cdefs%3E%3ClinearGradient id='fd-b' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23d6913a'/%3E%3Cstop offset='1' stop-color='%2384431a'/%3E%3C/linearGradient%3E%3ClinearGradient id='fd-r' x1='0' x2='1'%3E%3Cstop offset='0' stop-color='%23a8732a'/%3E%3Cstop offset='.5' stop-color='%23f6d58a'/%3E%3Cstop offset='1' stop-color='%23a8732a'/%3E%3C/linearGradient%3E%3CradialGradient id='fd-f' cx='50%25' cy='68%25' r='62%25'%3E%3Cstop offset='0' stop-color='%23fff6c9'/%3E%3Cstop offset='.45' stop-color='%23ffc94f'/%3E%3Cstop offset='1' stop-color='%23ee7a14'/%3E%3C/radialGradient%3E%3CradialGradient id='fd-g'%3E%3Cstop offset='0' stop-color='%23ffc960' stop-opacity='.75'/%3E%3Cstop offset='1' stop-color='%23ffc960' stop-opacity='0'/%3E%3C/radialGradient%3E%3C/defs%3E%3Ccircle cx='12' cy='8.500' r='10.500' fill='url(%23fd-g)'/%3E%3Cpath d='M3 14c.4 4 4 6.6 9 6.6s8.6-2.6 9-6.6c-2.4 1-5.4 1.5-9 1.5S5.400 15 3 14z' fill='url(%23fd-b)'/%3E%3Cellipse cx='12' cy='13.900' rx='9' ry='1.500' fill='url(%23fd-r)'/%3E%3Cellipse cx='12' cy='13.900' rx='6.800' ry='.8' fill='%236e3513'/%3E%3Cpath d='M12 2.500c2.100 3 3.300 5 3.300 6.900a3.300 3.300 0 0 1-6.600 0c0-1.900 1.200-3.900 3.300-6.900z' fill='url(%23fd-f)'/%3E%3C/svg%3E") center / contain no-repeat; }
html.festive .desk-empty.is-finished::after { content: "Shubh Deepawali"; display: block; margin-top: 6px; font: 600 13px "Nunito Sans", sans-serif; letter-spacing: .01em; color: #8a5a1e; }
/* Login: one quiet line above the logo, between two fine gold rules. */
html.festive .festive-login { display: flex; align-items: center; gap: 9px; margin: 0 0 12px; font: 600 12.5px "Nunito Sans", sans-serif; letter-spacing: .01em; color: #7c4f18; white-space: nowrap; }
html.festive .festive-login::before, html.festive .festive-login::after { content: ""; flex: 1; height: 1px; background: linear-gradient(90deg, rgba(168, 115, 42, 0), rgba(168, 115, 42, .55)); }
html.festive .festive-login::after { transform: scaleX(-1); }
html.festive .festive-login i { display: block; flex: 0 0 26px; width: 26px; height: 26px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='72' viewBox='-2 -3 28 28'%3E%3Cdefs%3E%3ClinearGradient id='fd-b' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23d6913a'/%3E%3Cstop offset='1' stop-color='%2384431a'/%3E%3C/linearGradient%3E%3ClinearGradient id='fd-r' x1='0' x2='1'%3E%3Cstop offset='0' stop-color='%23a8732a'/%3E%3Cstop offset='.5' stop-color='%23f6d58a'/%3E%3Cstop offset='1' stop-color='%23a8732a'/%3E%3C/linearGradient%3E%3CradialGradient id='fd-f' cx='50%25' cy='68%25' r='62%25'%3E%3Cstop offset='0' stop-color='%23fff6c9'/%3E%3Cstop offset='.45' stop-color='%23ffc94f'/%3E%3Cstop offset='1' stop-color='%23ee7a14'/%3E%3C/radialGradient%3E%3CradialGradient id='fd-g'%3E%3Cstop offset='0' stop-color='%23ffc960' stop-opacity='.75'/%3E%3Cstop offset='1' stop-color='%23ffc960' stop-opacity='0'/%3E%3C/radialGradient%3E%3C/defs%3E%3Ccircle cx='12' cy='8.500' r='10.500' fill='url(%23fd-g)'/%3E%3Cpath d='M3 14c.4 4 4 6.6 9 6.6s8.6-2.6 9-6.6c-2.4 1-5.4 1.5-9 1.5S5.400 15 3 14z' fill='url(%23fd-b)'/%3E%3Cellipse cx='12' cy='13.900' rx='9' ry='1.500' fill='url(%23fd-r)'/%3E%3Cellipse cx='12' cy='13.900' rx='6.800' ry='.8' fill='%236e3513'/%3E%3Cpath d='M12 2.500c2.100 3 3.300 5 3.300 6.900a3.300 3.300 0 0 1-6.600 0c0-1.900 1.200-3.900 3.300-6.900z' fill='url(%23fd-f)'/%3E%3C/svg%3E") center / contain no-repeat; }
html.festive .festive-login span { flex: none; }
@media (max-width: 760px) {
  html.festive .festive-mark span { display: none; }
  html.festive .festive-mark { margin-left: 8px; padding-left: 0; border-left: 0; }
  html.festive .premium-topbar::before { height: 12px; background-size: 164px 12px; }
}
@media (prefers-reduced-motion: reduce) {
  .festive-flame, .festive-glow { animation: none; }
}
