
.tdc-root{--a:#fa79d0;--b:#8874ff;--c:#54bfff;position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 50% 0%,#3a1648 0%,transparent 57%),radial-gradient(ellipse at 85% 85%,#172a50 0%,transparent 52%),#080914;color:#f9f4ff;border:1px solid #cda6e51c;border-radius:18px;padding:40px 18px 28px;font-family:Inter,ui-sans-serif,system-ui,sans-serif}
.tdc-root *{box-sizing:border-box}
.tdc-root .tdc-stars{position:absolute;inset:0;pointer-events:none;opacity:.35;background-image:radial-gradient(#d9aaff77 1px,transparent 1px),radial-gradient(#91baff77 1px,transparent 1px);background-size:63px 73px,103px 97px;background-position:0 0,27px 40px}
.tdc-root .tdc-halo{position:absolute;top:78px;left:50%;width:790px;height:270px;transform:translateX(-50%) rotate(-17deg);border:1px solid #b76cd62c;border-radius:50%;box-shadow:0 0 60px #c748ac17;pointer-events:none}
.tdc-root .tdc-header{text-align:center;position:relative}
.tdc-root .tdc-kicker{font-size:10px;letter-spacing:4px;color:#d997da}
.tdc-root .tdc-header h2{font:400 clamp(32px,5vw,57px)/1.13 Georgia,serif;letter-spacing:-1.5px;margin:11px 0;background:linear-gradient(95deg,#fff,#fab5ea 65%,#a4b5ff);-webkit-background-clip:text;background-clip:text;color:transparent}
.tdc-root .tdc-header p{font-size:12px;color:#b5a8c7;margin:0}
.tdc-root .tdc-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin:25px 0 8px;position:relative}
.tdc-root button{font-family:inherit;cursor:pointer;touch-action:manipulation}
.tdc-root .tdc-toggle{border:1px solid #755386;color:#d6bde3;background:#241b32;border-radius:24px;padding:9px 13px;font-size:11px;transition:background .2s,border-color .2s,box-shadow .2s}
.tdc-root .tdc-toggle.on{border-color:#f69bda;background:#6d326f;color:#fff;box-shadow:0 0 15px #e25bba3a}
.tdc-root button:focus-visible,.tdc-root input:focus-visible{outline:2px solid #fff;outline-offset:5px}
.tdc-root .tdc-depth{display:flex;align-items:center;justify-content:center;gap:10px;margin:17px auto 0;color:#c6a9d5;font-size:10px;position:relative;letter-spacing:.6px}
.tdc-root .tdc-depth input{width:112px;accent-color:#f49bdc;cursor:pointer}
.tdc-root .tdc-depth output{font-variant-numeric:tabular-nums;min-width:33px;color:#f7c9ea}
.tdc-root .tdc-stage{max-width:1020px;margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;padding:42px 18px 55px;align-items:stretch}
/* The slot stays untransformed: pointer coordinates never chase a moving card. */
.tdc-root .tdc-slot{position:relative;min-width:0;perspective:1250px;perspective-origin:50% 50%}
.tdc-root .tdc-slot:has(.hero){z-index:3}
.tdc-root .tdc-rig{--rim:#b395ff;--aura:#8364ff;position:relative;min-width:0;height:100%;transform-style:preserve-3d;will-change:transform}
.tdc-root .tdc-rig.hero{--rim:#ffa1db;--aura:#ff63bf}
.tdc-root .tdc-slot:last-child .tdc-rig{--rim:#89c3ff;--aura:#6a8eff}
/* No overflow, opacity, filter or isolation on either 3D container. */
.tdc-root .tdc-shell{position:relative;height:100%;min-height:452px;border-radius:23px;transform-style:preserve-3d}
.tdc-root .tdc-rear{position:absolute;inset:9px -9px -10px 12px;transform:translateZ(-28px);border:2px solid var(--rim);border-radius:25px;background:linear-gradient(145deg,#a076ef47,#160e2870);box-shadow:0 0 22px var(--aura);opacity:.6;pointer-events:none}
.tdc-root .tdc-rear.rear2{inset:17px -16px -17px 20px;transform:translateZ(-60px);opacity:.28}
/* Only the surface clips its own light effects. The art/text/glass are siblings. */
.tdc-root .tdc-face{position:absolute;inset:0;border-radius:23px;background:linear-gradient(135deg,#3b2549f0,#121322f8 52%,#29213ded);border:1px solid #ffffff8a;box-shadow:inset 0 1px 2px #fff6,inset 2px 0 11px #e1b9ff24,inset -2px -2px 13px #8b7cf326,0 24px 48px #000b,0 0 32px #8364ff59;box-shadow:inset 0 1px 2px #fff6,inset 2px 0 11px #e1b9ff24,inset -2px -2px 13px #8b7cf326,0 24px 48px #000b,0 0 32px color-mix(in srgb,var(--aura),transparent 65%);overflow:hidden;transform:translateZ(0)}
.tdc-root .hero .tdc-face{background:linear-gradient(137deg,#512755f4,#1b142af7 52%,#29183feb);box-shadow:inset 0 2px 2px #ffffff8a,inset 0 0 22px #f279d03b,0 24px 48px #000b,0 0 44px #e94cad80}
.tdc-root .tdc-rim{position:absolute;inset:2px;border-radius:21px;padding:4px;background:conic-gradient(from var(--tdc-phase,0deg),transparent 0deg,#fff0 43deg,#fff 66deg,var(--rim) 78deg,transparent 113deg,transparent 190deg,#fff 212deg,var(--rim) 228deg,transparent 255deg,transparent 360deg);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;filter:drop-shadow(0 0 6px var(--rim));animation:tdc-orbit 7s linear infinite;pointer-events:none;z-index:9}
@property --tdc-phase{syntax:"<angle>";inherits:false;initial-value:0deg}
@keyframes tdc-orbit{to{--tdc-phase:360deg}}
.tdc-root .tdc-glass{position:absolute;inset:8px;border-radius:17px;border:1px solid #ffffff38;box-shadow:inset 2px 2px 3px #ffffff29,inset -2px -2px 6px #c27eff26;pointer-events:none;transform:translateZ(12px)}
.tdc-root .tdc-reflect{position:absolute;inset:-60%;background:linear-gradient(113deg,transparent 42%,#ffffff03 46%,#ffffff27 50%,#ffd0f310 53%,transparent 57%);transform:translateX(var(--shine,-35%));pointer-events:none;z-index:4}
.tdc-root .tdc-light{position:absolute;inset:0;background:radial-gradient(ellipse at var(--lx,50%) var(--ly,35%),#ffd6f02e,transparent 60%);opacity:var(--light-strength,0);pointer-events:none}
.tdc-root .tdc-spectrum{position:absolute;inset:0;background:linear-gradient(128deg,transparent 15%,#ff90dc0c 30%,#a6a4ff13 42%,#71deff0a 54%,transparent 70%);mix-blend-mode:screen;pointer-events:none}
.tdc-root .tdc-art{position:absolute;top:65px;right:-30px;width:180px;height:235px;pointer-events:none;opacity:.62;transform:translateZ(8px)}
.tdc-root .tdc-art svg{width:100%;height:100%;filter:drop-shadow(0 0 12px var(--aura))}
.tdc-root .tdc-inner{position:relative;display:flex;flex-direction:column;height:100%;min-height:452px;padding:24px 21px;transform:translateZ(24px);pointer-events:none}
.tdc-root .tdc-inner button{pointer-events:auto}
.tdc-root .tdc-planhead{display:flex;align-items:center;gap:10px}
.tdc-root .tdc-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;font-size:21px;border:1px solid #e4a9f080;background:linear-gradient(145deg,#aa5eb87c,#35244b91);box-shadow:0 0 16px #d66bde55}
.tdc-root h3{font:400 24px Georgia,serif;margin:0}
.tdc-root .tdc-desc{font-size:11px;color:#c1b0ce;margin:17px 0 0;line-height:1.5;min-height:32px}
.tdc-root .tdc-pop{font-size:9px;color:#ffe8f8;background:#a92c7d78;border:1px solid #ff91d6aa;border-radius:12px;padding:5px 9px;align-self:start;margin-top:11px}
.tdc-root .tdc-price{display:flex;align-items:baseline;gap:5px;margin:20px 0 21px}
.tdc-root .tdc-price strong{font:400 49px Georgia,serif;letter-spacing:-2px;color:#fff;text-shadow:0 0 20px #fcbcf03d}
.tdc-root .hero .tdc-price strong{color:#ffd3ee}
.tdc-root .tdc-price small{color:#bba9c8;font-size:11px}
.tdc-root ul{padding:0;margin:0;list-style:none;display:grid;gap:12px;align-content:start;flex:1}
.tdc-root li{display:flex;gap:9px;align-items:flex-start;color:#e5d8ed;font-size:11px;line-height:1.4}
.tdc-root li span{color:#ff9fda;font-size:12px}
.tdc-root .tdc-buy{margin-top:24px;width:100%;border:1px solid #bc91cc;border-radius:25px;background:#ffffff0a;padding:12px 6px;color:#fff;font-weight:600;font-size:12px;box-shadow:inset 0 1px #fff3;transition:filter .2s}
.tdc-root .hero .tdc-buy{border-color:#ffd8f0;background:linear-gradient(110deg,#ef5baf,#9974ff);box-shadow:0 0 20px #dd55c47e}
.tdc-root .tdc-buy:hover{filter:brightness(1.25)}
.tdc-root .tdc-ground{position:absolute;left:10%;bottom:-33px;width:80%;height:28px;border-radius:50%;background:var(--aura);filter:blur(25px);opacity:.52;pointer-events:none;transform:translateZ(-75px)}
.tdc-root .tdc-legend{display:flex;justify-content:center;gap:19px;flex-wrap:wrap;font-size:10px;color:#c6a9d5;padding-bottom:13px}
.tdc-root .tdc-message{text-align:center;font-size:11px;color:#e2a6d8;min-height:30px;margin:10px 0;line-height:1.6}
.tdc-root .tdc-legend b{font-size:14px;color:#ee8bd5}
.tdc-root .tdc-version{text-align:center;color:#8b789a;font-size:9px;letter-spacing:2px;margin-top:18px}
.tdc-root.paused .tdc-rim{animation-play-state:paused}
.tdc-root.paused .tdc-reflect,.tdc-root.paused .tdc-light,.tdc-root.paused .tdc-spectrum{opacity:0}
@media(prefers-reduced-motion:reduce){.tdc-root .tdc-rim{animation:none}.tdc-root button{transition:none}}

/* 3D Cards 0.3.0: all overrides are scoped to the module instance. */
.tdc-root{container-type:inline-size;container-name:tdcards;background:transparent;color:var(--tdc-outer-color,inherit);border:0;border-radius:var(--tdc-radius);padding:var(--tdc-section-padding);font-family:inherit}
.tdc-root.tdc-bg-solid{background:var(--tdc-background)}
.tdc-root.tdc-bg-cosmic{background:radial-gradient(ellipse at 50% 0%,#3a1648 0%,transparent 57%),radial-gradient(ellipse at 85% 85%,#172a50 0%,transparent 52%),var(--tdc-background)}
.tdc-root .tdc-header,.tdc-root .tdc-footer{position:relative;color:inherit}
.tdc-root .tdc-header h2{background:none;color:inherit;-webkit-text-fill-color:currentColor}
.tdc-root .tdc-header p{color:inherit}
.tdc-root .tdc-kicker{color:var(--tdc-accent)}
.tdc-root .tdc-stage{max-width:var(--tdc-max-width);grid-template-columns:repeat(var(--tdc-columns),minmax(0,1fr));gap:var(--tdc-gap);padding:42px 24px 55px}
.tdc-root .tdc-slot{perspective:var(--tdc-perspective)}
.tdc-root .tdc-rig{color:var(--tdc-text-color);font-size:var(--tdc-font-size)}
.tdc-root .tdc-shell,.tdc-root .tdc-inner{min-height:var(--tdc-min-height);border-radius:var(--tdc-radius)}
.tdc-root .tdc-inner{padding:var(--tdc-padding);pointer-events:auto}
.tdc-root .tdc-content{display:flex;flex-direction:column;flex:1;min-width:0;overflow-wrap:anywhere}
.tdc-root .tdc-content p{max-width:100%}
.tdc-root .tdc-content img{max-width:100%;height:auto}
.tdc-root .tdc-content table{max-width:100%;width:100%;table-layout:fixed}
.tdc-root .tdc-content a:not(.tdc-buy){color:var(--tdc-accent);text-decoration:underline}
.tdc-root .tdc-content a:focus-visible{outline:2px solid currentColor;outline-offset:4px}
.tdc-root .tdc-face,.tdc-root .hero .tdc-face{border-radius:var(--tdc-radius);border-color:var(--tdc-border-color);background:linear-gradient(135deg,rgb(var(--tdc-card-top) / var(--tdc-glass-opacity)),rgb(var(--tdc-card-bottom) / var(--tdc-glass-opacity)) 70%);backdrop-filter:blur(var(--tdc-blur));box-shadow:inset 0 1px 2px #fff6,inset 2px 0 11px #e1b9ff24,0 24px 48px #0008,0 0 32px rgb(from var(--aura) r g b / var(--tdc-glow))}
.tdc-root .tdc-rear{border-radius:calc(var(--tdc-radius) + 2px)}
.tdc-root .tdc-glass{border-radius:max(0px,calc(var(--tdc-radius) - 6px))}
.tdc-root .tdc-rim{border-radius:max(0px,calc(var(--tdc-radius) - 2px));animation-duration:var(--tdc-orbit-duration)}
.tdc-root .tdc-art{color:var(--rim)}
.tdc-root h3{font-size:2em;color:inherit}
.tdc-root .tdc-desc{font-size:.92em;color:var(--tdc-muted-color)}
.tdc-root .tdc-pop{font-size:.75em}
.tdc-root .tdc-price strong,.tdc-root .hero .tdc-price strong{font-size:4.08em;color:var(--tdc-text-color)}
.tdc-root .tdc-price small{font-size:.92em;color:var(--tdc-muted-color)}
.tdc-root li{font-size:.92em;color:var(--tdc-text-color)}
.tdc-root li span{color:var(--tdc-accent)}
.tdc-root .tdc-buy{display:block;text-align:center;text-decoration:none;color:var(--tdc-text-color);font-size:1em;line-height:1.4}
.tdc-root .hero .tdc-buy{background:linear-gradient(110deg,var(--tdc-accent),var(--tdc-secondary))}
.tdc-root .tdc-full-link{position:absolute;inset:0;transform:translateZ(25px);border-radius:var(--tdc-radius);display:block;text-decoration:none}
.tdc-root .tdc-full-link:focus-visible{outline:3px solid var(--tdc-text-color);outline-offset:6px}
.tdc-root.tdc-natural-height .tdc-stage{align-items:start}
.tdc-root .tdc-message{color:inherit}
.tdc-root .tdc-toggle{min-height:36px}
.tdc-root .tdc-toggle.on{background:var(--tdc-secondary);border-color:var(--tdc-accent)}
.tdc-root .tdc-depth{color:inherit}
.tdc-root .tdc-depth input{accent-color:var(--tdc-accent)}
@container tdcards (max-width:900px){.tdc-root .tdc-stage{grid-template-columns:repeat(var(--tdc-tablet-columns),minmax(0,1fr))}}
@container tdcards (max-width:580px){.tdc-root .tdc-stage{grid-template-columns:repeat(var(--tdc-mobile-columns),minmax(0,1fr));gap:max(var(--tdc-gap),40px);padding:28px 20px 45px}.tdc-featured-first .tdc-featured{order:-1}.tdc-root .tdc-kicker{letter-spacing:2px;font-size:9px}.tdc-root .tdc-art{right:-18px}}
@media(prefers-reduced-motion:reduce){.tdc-root .tdc-rim{animation:none}.tdc-root *{scroll-behavior:auto}}
.tdc-root .tdc-ground{opacity:var(--tdc-glow)}
.tdc-root .tdc-rear{box-shadow:0 0 calc(22px * var(--tdc-glow)) var(--aura)}
.tdc-root .tdc-icon{box-shadow:0 0 calc(16px * var(--tdc-glow)) var(--rim)}
.tdc-root .tdc-art svg{filter:drop-shadow(0 0 calc(12px * var(--tdc-glow)) var(--aura))}
.tdc-root .tdc-rim{filter:drop-shadow(0 0 calc(6px * var(--tdc-glow)) var(--rim))}
.tdc-root .hero .tdc-buy{box-shadow:0 0 calc(20px * var(--tdc-glow)) var(--rim)}
