/* Daily check-in: the club's amethyst palette and supplied calendar artwork. */
.daily-entry{display:flex;align-items:center;gap:18px;position:relative;overflow:hidden;margin:20px 0;padding:20px 25px;border:1px solid #c7a0e955;border-radius:23px;background:radial-gradient(ellipse at 6% 10%,#b27deb26,transparent 55%),linear-gradient(115deg,#352052,#1b162a);box-shadow:inset 0 1px #efe4f926,0 7px 28px #170c2128}
.daily-entry:after{content:'✧';position:absolute;right:22%;top:-28px;font-size:130px;color:#caa5ea0e;pointer-events:none}
.daily-entry-icon{flex:none;display:grid;place-items:center;width:52px;height:52px;border-radius:17px;color:#ede1f8;background:linear-gradient(135deg,#a465db61,#612f8d26);border:1px solid #dcc3f170;box-shadow:0 0 25px #8f42d32b,inset 0 1px 2px #f5eefb40}
.daily-logo-image{position:absolute;inset:0;display:block;width:100%;height:100%;min-width:0;min-height:0;object-fit:cover;object-position:50% 48%}.daily-entry-icon{position:relative;overflow:hidden}.daily-orb{position:relative}.daily-entry-copy{flex:1;min-width:0}
.daily-eyebrow{font-size:9px;letter-spacing:2px;color:#bea3d5;display:block}
.daily-entry h2{font-size:17px;margin:6px 0;color:#f8f3fc}.daily-entry h2 span{margin-left:12px;font-size:11px;font-weight:500;color:#dfc9f2}.daily-entry p{margin:0;font-size:11px;color:#bfabd1}
.daily-entry-button{flex:none;display:flex;align-items:center;gap:10px;padding:12px 16px;border:1px solid #e2cef499;border-radius:13px;color:#faf6fd;background:linear-gradient(120deg,#7541ad,#a06bd0);font-size:12px;cursor:pointer;box-shadow:inset 0 1px #f1e8f960,0 3px 0 #3d1d59,0 6px 18px #733aa433}
.daily-entry-button:hover{filter:brightness(1.14)}.daily-entry-button:active{transform:translateY(2px);box-shadow:inset 0 1px #f1e8f940,0 1px 0 #3d1d59}
dialog.daily-dialog{width:min(440px,calc(100vw - 24px));max-height:calc(100dvh - 36px);padding:0;border:1px solid #dcc3f180;border-radius:26px;background:radial-gradient(ellipse at 50% 5%,#66358c50,transparent 62%),linear-gradient(155deg,#2d1f40,#171222 55%,#231b34);color:#f8f3fc;box-shadow:inset 0 1px #ecdff830,0 30px 120px #0009,0 0 75px #9a55d726}
.daily-dialog::backdrop{background:#0f0816c9;backdrop-filter:blur(6px)}
.daily-dialog .modal-head{padding:17px 22px;border-bottom:1px solid #ddc5f226;background:#23152f60}.daily-dialog .modal-head h2{font-size:14px;color:#eee2f8}.daily-dialog .modal-close{color:#dac5ed;border-color:#caa8e730;background:#c097e314}.daily-dialog .modal-body{padding:0}
.daily-panel,.daily-success{text-align:center;padding:22px 25px 25px;position:relative;overflow:hidden;isolation:isolate}
.daily-panel:before,.daily-success:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(circle at 12% 17%,#ecdff870 0 1px,transparent 1.6px),radial-gradient(circle at 87% 31%,#b481e180 0 1px,transparent 1.8px),radial-gradient(circle at 20% 67%,#c49be760 0 1px,transparent 1.7px),radial-gradient(circle at 80% 81%,#dcc3f170 0 1px,transparent 1.5px),radial-gradient(ellipse at 50% 18%,#8a45c722,transparent 54%)}
.daily-date{font-size:10px;letter-spacing:1px;color:#c1afd1}
.daily-dialog .daily-orb,.daily-dialog .daily-orb.is-claimed{width:116px;height:116px;margin:8px auto 10px;border:0;background:none;box-shadow:none;transform:none}.daily-orb img{mask-image:radial-gradient(ellipse,#000 51%,transparent 73%);-webkit-mask-image:radial-gradient(ellipse,#000 51%,transparent 73%)}
.daily-orb{display:grid;place-items:center;width:66px;height:66px;margin:20px auto 19px;border:1px solid #e3cff49c;border-radius:22px;background:linear-gradient(135deg,#b785e275,#793fab4d);box-shadow:0 0 35px #9f5dd938,inset 0 1px 3px #fff6;transform:rotate(-7deg)}.daily-orb .icon{width:34px;height:34px;color:#f2e8fa;transform:rotate(7deg)}
.daily-panel h3,.daily-success h3{font-size:23px;line-height:1.5;margin:10px 0 13px;color:#f7f1fc;text-shadow:0 2px 18px #ae76df2b}
.daily-reward{display:flex;align-items:baseline;justify-content:center;gap:10px}.daily-reward strong{font-family:Georgia,serif;font-size:59px;font-weight:400;line-height:1.1;background:linear-gradient(150deg,#fff 10%,#e8d8f6 42%,#b684e2 85%);background-clip:text;-webkit-background-clip:text;color:transparent;filter:drop-shadow(0 2px 12px #a05ed930)}.daily-reward>span{font-size:12px;color:#dbc6ee}
.daily-formula{font-size:11px;color:#c5b2d6;line-height:1.7;margin:12px 0 20px}
.daily-levels{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin:18px 0 20px}.daily-levels>div{padding:10px 0;border:1px solid #c19fde2f;border-radius:10px;background:#ad74df09;display:grid;gap:7px}.daily-levels span{font-size:9px;color:#b39ec6}.daily-levels b{font-size:14px;font-weight:500;color:#e4d3f2}.daily-levels .current{border-color:#dcc4f1bb;background:linear-gradient(140deg,#975ec85c,#6c379b40);box-shadow:inset 0 1px #f3ebfa55,0 0 17px #a160da30}.daily-levels .current span,.daily-levels .current b{color:#f8f3fc}
.daily-note{padding:13px 14px;border-radius:13px;background:#c399e707;border:1px solid #c5a6e026;text-align:left}.daily-note p{display:flex;gap:8px;font-size:10px;line-height:1.75;color:#c7b6d6;margin:0}.daily-note p+p{margin-top:6px}.daily-note .icon{flex:none;width:14px;height:14px;margin-top:2px;color:#caa6ea}
.daily-message{font-size:10px;line-height:1.7;min-height:34px;margin:13px 0;color:#b49ec8}.daily-message.error{padding:10px;color:#ffd4b2;background:#f28c5f12;border:1px solid #ffc49a2e;border-radius:10px}
.daily-claim-button{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;border-radius:14px;padding:14px 10px;background:linear-gradient(110deg,#8152b7,#b27deb);color:#fbf8fd;border:1px solid #dbc2f199;box-shadow:inset 0 1px 1px #f6f0fc75,0 3px 0 #3a1a56,0 8px 24px #6f35a235;font-size:13px;font-weight:600;cursor:pointer;transition:filter .2s,transform .2s}
.daily-claim-button:hover:not(:disabled){filter:brightness(1.12)}.daily-claim-button:active:not(:disabled){transform:translateY(2px)}.daily-claim-button:disabled{cursor:default;opacity:.5;box-shadow:none}.daily-claim-button:focus-visible,.daily-entry-button:focus-visible{outline:2px solid #e1ccf3;outline-offset:4px}
.daily-footnote{display:block;font-size:9px;color:#ab96bd;line-height:1.8;margin-top:13px}.daily-success{padding-top:13px}.daily-success p{font-size:11px;line-height:1.7;color:#c9b5da;margin:17px 0 25px}
.daily-bloom{height:244px;position:relative;display:grid;place-items:center;margin:0 auto 7px}
.daily-success-logo{position:relative;width:244px;height:244px;z-index:2;filter:drop-shadow(0 0 17px #8845c22e);transform:translateY(0) scale(1);will-change:auto}
.daily-success-logo img{mask-image:radial-gradient(ellipse 51% 52% at 50% 50%,#000 59%,#000b 78%,transparent 99%);-webkit-mask-image:radial-gradient(ellipse 51% 52% at 50% 50%,#000 59%,#000b 78%,transparent 99%)}
.daily-logo-shine{position:absolute;inset:15% 18%;border-radius:24%;overflow:hidden;pointer-events:none}.daily-logo-shine:after{content:'';position:absolute;inset:-30% -80%;background:linear-gradient(110deg,transparent 43%,#efe3f970 50%,transparent 57%);transform:translateX(-60%);opacity:0}
.daily-logo-fallback{display:none;position:absolute;inset:23%;place-items:center;border:1px solid #dfcaf2;border-radius:24px;background:linear-gradient(135deg,#8b4dc1,#502c70);box-shadow:0 0 30px #9852d655}.daily-logo-fallback .icon{width:60px;height:60px;color:#f2e8fa}.daily-success-logo[data-image-error=true] img{visibility:hidden}.daily-success-logo[data-image-error=true] .daily-logo-fallback{display:grid}
.daily-ring{position:absolute;width:190px;height:190px;border-radius:50%;border:1px solid #cfadec65;box-shadow:0 0 24px #964dd524;opacity:0;pointer-events:none}.daily-ring.second{width:218px;height:218px;border-color:#e5d3f550}
.daily-bloom i{position:absolute;left:50%;top:50%;z-index:3;font-style:normal;font-size:16px;color:#e3d0f4;opacity:0;pointer-events:none}
.daily-success.playing .daily-success-logo{animation:daily-logo-arrive 1.8s cubic-bezier(.2,.8,.2,1) both;will-change:transform}.daily-success.playing .daily-logo-shine:after{animation:daily-logo-sheen 1.2s ease-in-out .3s both}.daily-success.playing .daily-ring{animation:daily-ring-bloom 1.65s ease-out both}.daily-success.playing .daily-ring.second{animation-delay:90ms}.daily-success.playing .daily-bloom i{animation:daily-spark 1.5s ease-out var(--delay) both}.daily-success.playing .daily-reward{animation:daily-points 1.8s ease both}
@keyframes daily-logo-arrive{0%{transform:translateY(17px) scale(.82);opacity:0;filter:drop-shadow(0 0 3px #9e5bd9)}28%{transform:translateY(-5px) scale(1.035);opacity:1;filter:drop-shadow(0 0 22px #9e5bd855)}60%{transform:translateY(-3px) scale(1.01)}100%{transform:translateY(0) scale(1);opacity:1;filter:drop-shadow(0 0 17px #8845c22e)}}
@keyframes daily-logo-sheen{0%{transform:translateX(-60%);opacity:0}25%{opacity:.55}75%{opacity:.45}100%{transform:translateX(60%);opacity:0}}
@keyframes daily-ring-bloom{0%{transform:scale(.65) rotateX(60deg);opacity:0}28%{opacity:.8}100%{transform:scale(1.45) rotateX(60deg);opacity:0}}
@keyframes daily-spark{0%,10%{transform:translate(-50%,-50%) rotate(var(--angle)) translateY(52px) scale(.2);opacity:0}30%{opacity:.85}100%{transform:translate(-50%,-50%) rotate(var(--angle)) translateY(calc(-1*var(--reach))) scale(.5);opacity:0}}
@keyframes daily-points{0%,15%{opacity:0;transform:translateY(9px) scale(.9)}55%{opacity:1;transform:translateY(-2px) scale(1.03)}100%{opacity:1;transform:none}}
html[data-theme=day] .daily-entry{background:linear-gradient(115deg,#f2e9fa,#faf7fd);border-color:#d0b9e4}html[data-theme=day] .daily-entry h2{color:#422759}html[data-theme=day] .daily-entry p,html[data-theme=day] .daily-entry h2 span{color:#6c4f85}html[data-theme=day] .daily-entry .daily-eyebrow{color:#82669a}html[data-theme=day] .daily-entry-icon{color:#613884}
@media(max-width:600px){.daily-entry{gap:11px;padding:15px 13px;border-radius:18px}.daily-entry-icon{width:46px;height:46px;border-radius:13px}.daily-entry-icon .icon{width:22px;height:22px}.daily-entry .daily-eyebrow{display:none}.daily-entry h2{font-size:14px;margin:0 0 6px}.daily-entry h2 span{display:block;margin:5px 0 0;font-size:10px}.daily-entry p{font-size:9px}.daily-entry-button{padding:10px;font-size:10px;gap:4px}.daily-entry-button .icon{width:14px}.daily-panel,.daily-success{padding:18px}.daily-panel h3,.daily-success h3{font-size:21px}.daily-orb{margin:15px auto}.daily-levels{gap:3px}.daily-levels b{font-size:13px}.daily-success{padding-top:7px}.daily-bloom{height:210px;margin-bottom:3px}.daily-success-logo{width:214px;height:214px}.daily-ring{width:166px;height:166px}.daily-ring.second{width:190px;height:190px}}
@media(prefers-reduced-motion:reduce){.daily-dialog *,.daily-dialog *:after{animation:none!important}.daily-claim-button{transition:none}}html[data-motion=reduced] .daily-dialog *,html[data-motion=reduced] .daily-dialog *:after{animation:none!important}
