/* PulseDesk Phase 2: persistent environment and shared presentation components. */
body{--text-primary:var(--ink);--text-secondary:var(--muted);--text-muted:var(--muted);--text-disabled:color-mix(in srgb,var(--ink) 45%,transparent);--text-on-accent:var(--ink);--pd-glass-surface:color-mix(in srgb,var(--panel) 84%,transparent);--pd-glass-border:color-mix(in srgb,var(--accent) 22%,var(--line));--pd-glass-highlight:color-mix(in srgb,var(--panel) 70%,transparent)}
body[data-mode=dark]{--pd-glass-surface:color-mix(in srgb,var(--panel) 90%,transparent);--pd-glass-highlight:color-mix(in srgb,var(--accent2) 14%,transparent);color-scheme:dark}
#pdEnvironment,#pdEnvironment *{pointer-events:none!important;user-select:none}
#pdEnvironment{position:fixed;inset:0;z-index:1100;overflow:hidden;contain:strict;color:var(--accent);--environment-opacity:.52;--environment-size:7px}
#pdEnvironment[data-mode=dark]{--environment-opacity:.7;--environment-size:5px;color:var(--accent2)}
.pd-environment-frame{position:absolute;inset:8px;border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);border-radius:28px;box-shadow:inset 0 0 20px color-mix(in srgb,var(--accent2) 7%,transparent);mask-image:linear-gradient(135deg,#000,transparent 28%,transparent 75%,#000)}
.pd-environment-ornament{position:absolute;top:4px;right:4px;width:42px;height:42px;fill:none;stroke:currentColor;stroke-width:1;opacity:var(--environment-opacity);transform:rotate(90deg);filter:drop-shadow(0 0 3px color-mix(in srgb,var(--accent2) 35%,transparent));animation:pd-ornament-breathe 8s ease-in-out infinite alternate;transform-origin:center}
.pd-environment-particles i{position:absolute;left:calc(5px + mod(var(--i),2)*7px);top:-20px;width:var(--environment-size);height:var(--environment-size);background:currentColor;border-radius:50%;opacity:0;animation:pd-environment-drift var(--environment-duration) linear infinite;animation-delay:var(--delay);box-shadow:0 0 7px color-mix(in srgb,currentColor 45%,transparent)}
.pd-environment-particles i:nth-child(even){left:auto;right:7px}
#pdEnvironment[data-particle=petal] i{border-radius:80% 0 80% 30%;width:9px;height:6px}
#pdEnvironment[data-particle=leaf] i{border-radius:100% 0;width:10px;height:5px}
#pdEnvironment[data-particle=bubble] i{background:transparent;border:1px solid currentColor;animation-direction:reverse}
#pdEnvironment[data-particle=prism] i{border-radius:0;clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);height:12px}
#pdEnvironment[data-particle=streak] i{height:45px;width:2px;background:linear-gradient(transparent,currentColor,transparent)}
#pdEnvironment[data-particle=mist] i{height:70px;width:12px;filter:blur(6px);background:linear-gradient(transparent,currentColor,transparent)}
#pdEnvironment[data-particle=star] i,#pdEnvironment[data-particle=spark] i{clip-path:polygon(50% 0,60% 40%,100% 50%,60% 60%,50% 100%,40% 60%,0 50%,40% 40%)}
#pdEnvironment[data-particle=ember] i{width:3px;height:9px;animation-direction:reverse}
#pdEnvironment[data-mode=dark] .pd-environment-frame{box-shadow:inset 0 0 30px color-mix(in srgb,var(--accent2) 12%,transparent)}
#pdEnvironment[data-mode=dark] .pd-environment-ornament{stroke-width:.8;filter:drop-shadow(0 0 6px currentColor)}
#pdEnvironment.is-paused *{animation-play-state:paused!important}
@keyframes pd-environment-drift{0%{transform:translate3d(0,0,0) rotate(0);opacity:0}12%,70%{opacity:var(--environment-opacity)}100%{transform:translate3d(var(--drift),110vh,0) rotate(var(--spin));opacity:0}}
@keyframes pd-ornament-breathe{to{opacity:calc(var(--environment-opacity)*.65);transform:rotate(92deg)}}
@media(max-width:1000px){.pd-environment-particles i:nth-child(n+5){display:none}.pd-environment-ornament{width:48px;height:48px}.pd-environment-frame{inset:5px}}
@media(max-width:600px){.pd-environment-particles i:nth-child(n+3){display:none}.pd-environment-particles i{left:2px}.pd-environment-particles i:nth-child(even){right:2px}.pd-environment-ornament{width:27px;height:27px;top:env(safe-area-inset-top,4px);right:3px}.pd-environment-frame{inset:2px;border-radius:18px;opacity:.65}}
/* The center fade has no hitbox and never spans the sidebar or detached KPI rail. */
#pdCenterFrost{position:fixed;z-index:1090;pointer-events:none;overflow:visible}
#pdCenterFrost i{position:absolute;inset:0;pointer-events:none;opacity:var(--frost-opacity,0);transition:opacity 180ms linear;background:color-mix(in srgb,var(--panel) 12%,transparent);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);mask-image:linear-gradient(#000,transparent)}
#pdCenterFrost i:nth-child(2){bottom:30%;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);mask-image:linear-gradient(#000,transparent)}
#pdCenterFrost i:nth-child(3){bottom:55%;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);mask-image:linear-gradient(#000,transparent)}
/* Theme material aliases cure workflow surfaces without changing their geometry. */
body :is(.modal,.pd-date-popover,.time-picker,.time-picker-card,.pd-action-card,.pd-flow-dialog,.pd-flow-card,.pd-kpi-goals-card,.sup-request-detail-card,.pd-request-detail-sheet,.pd-call-detail,.pd-sanction-detail,.pd-huddle-preparation){color:var(--ink)!important;background:linear-gradient(135deg,color-mix(in srgb,var(--accent2) 5%,var(--pd-glass-surface)),var(--pd-glass-surface))!important;border-color:var(--pd-glass-border)!important;box-shadow:inset 0 1px 0 var(--pd-glass-highlight),0 22px 65px #0002;backdrop-filter:blur(28px) saturate(1.35);-webkit-backdrop-filter:blur(28px) saturate(1.35)}
body :is(.request-guide,.schedule-snapshot,.incident-window-card,.request-type-card,.pd-temp-day,.pd-date-trigger,.pd-time-trigger){background:color-mix(in srgb,var(--accent) 5%,var(--panel));color:var(--ink);border-color:var(--pd-glass-border)}
body :is(.form-input,.modal input,.modal textarea,.modal select){color:var(--ink)}
body :is(.modal,.sup-request-detail-card,.pd-date-popover,.time-picker) :is(.subtitle,.helper-text,.field-help){color:var(--muted)}
body .card{background:linear-gradient(145deg,color-mix(in srgb,var(--panel) 82%,transparent),color-mix(in srgb,var(--panel) 72%,transparent));border-color:var(--pd-glass-border);box-shadow:inset 0 1px 0 var(--pd-glass-highlight),0 8px 26px color-mix(in srgb,var(--accent) 4%,transparent)}
.pd-native-date{position:absolute!important;width:1px!important;height:1px!important;opacity:0;pointer-events:none;clip-path:inset(50%)}
.pd-date-trigger{width:100%;min-height:40px;border:1px solid var(--line);border-radius:12px;padding:10px 12px;text-align:left;font:inherit;cursor:pointer}
.pd-date-trigger:after{content:'▦';float:right;color:var(--accent)}
:is(#pdDateOverlay,#timePickerOverlay){z-index:16020!important}
:is(#pdDateOverlay,#timePickerOverlay) .icon-button{min-width:40px;min-height:40px}
.pd-calendar-day:disabled{opacity:.3;cursor:not-allowed}.pd-calendar-day.selected{background:color-mix(in srgb,var(--accent) 30%,var(--panel))!important;color:var(--ink)!important}
.pd-calendar-day.is-today{box-shadow:inset 0 0 0 1px var(--accent)}
button>svg,button>i[data-lucide],button::before,button::after{pointer-events:none}
button{touch-action:manipulation}button:disabled{cursor:not-allowed}
.pd-temp-invalid .pd-temp-count{color:var(--warning,var(--accent))}.pd-temp-day{cursor:pointer;min-height:48px}.pd-temp-day input{pointer-events:auto}
.theme-mascot svg{animation:pd-mascot-idle 7s ease-in-out infinite alternate;transform-origin:bottom center}
@keyframes pd-mascot-idle{to{transform:translateY(-2px) rotate(.5deg)}}
#pdMoodCheckin button{transition:background 180ms,box-shadow 180ms,transform 180ms}#pdMoodCheckin button[aria-pressed=true]{box-shadow:0 0 0 2px var(--accent),0 5px 18px color-mix(in srgb,var(--accent) 22%,transparent)}
/* Huddle is a distinct presentation state, entered only after preparation. */
#pdHuddlePrepare,#pdLiveHuddle{position:fixed;inset:0;z-index:15000;padding:max(20px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));color:var(--ink);box-sizing:border-box}
#pdHuddlePrepare{z-index:15010;display:grid;place-items:center;background:#0004;backdrop-filter:blur(12px)}
.pd-huddle-preparation{width:min(540px,100%);max-height:90dvh;overflow:auto;padding:30px;border-radius:26px;border:1px solid var(--pd-glass-border);background:var(--panel);box-shadow:inset 0 1px 0 var(--pd-glass-highlight),0 25px 80px #0003}
.pd-huddle-preparation h2{font-size:28px;margin:10px 0}.pd-huddle-preparation p{color:var(--muted);line-height:1.6}.pd-huddle-preparation footer{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}
#pdLiveHuddle{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:20px;background:radial-gradient(ellipse at 0 0,color-mix(in srgb,var(--accent2) 16%,transparent),transparent 55%),var(--page);overflow:hidden;isolation:isolate}
#pdLiveHuddle::before{content:'';position:absolute;inset:12px;border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);border-radius:30px;pointer-events:none;z-index:-1;box-shadow:inset 0 0 70px color-mix(in srgb,var(--accent2) 7%,transparent)}
#pdLiveHuddle>header,#pdLiveHuddle>footer{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:6px 16px}.pd-huddle-brand{font-weight:800;letter-spacing:.06em}.pd-huddle-brand small{display:block;color:var(--muted);font-size:11px;margin-top:5px;letter-spacing:0}
#pdHuddleScene{width:min(1100px,100%);margin:auto;max-height:100%;overflow:auto;padding:24px;box-sizing:border-box;scrollbar-width:thin}
#pdHuddleScene h1{font-size:clamp(30px,5vw,64px);line-height:1.08;margin:10px 0 28px;letter-spacing:-.045em}#pdHuddleScene .eyebrow{color:var(--accent);font-size:12px;letter-spacing:.18em}#pdHuddleScene .pd-scene-copy{font-size:clamp(16px,2vw,23px);line-height:1.5;color:var(--muted);max-width:760px}
.pd-live-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:20px}.pd-live-metric{padding:24px;border-radius:24px;border:1px solid var(--pd-glass-border);background:var(--pd-glass-surface);box-shadow:inset 0 1px 0 var(--pd-glass-highlight)}.pd-live-metric strong{display:block;font-size:clamp(30px,5vw,65px);font-variant-numeric:tabular-nums;letter-spacing:-.04em}.pd-live-metric small{color:var(--muted);font-size:13px}.pd-live-track{height:8px;border-radius:9px;background:color-mix(in srgb,var(--accent) 12%,transparent);margin-top:20px;overflow:hidden}.pd-live-track i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--accent2),var(--accent));border-radius:inherit;transition:width 1150ms cubic-bezier(.2,.7,.2,1)}
.pd-live-moods{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px;align-items:end}.pd-live-mood{text-align:center;min-width:0}.pd-live-mood .pd-live-track{height:180px;display:flex;align-items:flex-end;border-radius:16px}.pd-live-mood .pd-live-track i{width:100%;height:0;transition:height 1200ms cubic-bezier(.2,.7,.2,1)}.pd-live-mood b{display:block;font-size:35px;margin:12px 0}.pd-live-mood strong{font-size:25px;display:block;font-variant-numeric:tabular-nums}.pd-live-mood small{font-size:12px;color:var(--muted)}
.pd-live-list{display:grid;gap:12px}.pd-live-list article{display:flex;align-items:center;gap:18px;padding:18px 24px;border-radius:18px;background:var(--pd-glass-surface);border:1px solid var(--pd-glass-border)}.pd-live-list article>span{font-size:25px;color:var(--accent)}.pd-live-list article>div{flex:1}.pd-live-list h3{margin:0 0 4px}.pd-live-list p{margin:0;color:var(--muted)}.pd-live-list strong{font-size:24px}
.pd-huddle-progress{display:flex;gap:5px;flex:1;max-width:360px}.pd-huddle-progress i{height:4px;flex:1;background:var(--line);border-radius:5px}.pd-huddle-progress i.active{background:var(--accent)}
.pd-huddle-poll{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.pd-huddle-poll button[aria-pressed=true]{box-shadow:0 0 0 2px var(--accent)}
#pdLiveHuddle .secondary-button,#pdLiveHuddle .primary-button{min-height:44px;font-size:13px}body.pd-live-huddle{overflow:hidden!important}
.pd-scene-enter{animation:pd-scene-enter 800ms ease-out}.pd-live-list.pd-scene-enter article{animation:pd-scene-enter 900ms both;animation-delay:calc(var(--order,0)*180ms)}
@keyframes pd-scene-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
#pdEnvironment.pd-event-environment{z-index:15001}.pd-event-environment.pd-celebrating .pd-environment-ornament{animation:pd-celebrate 900ms ease-out}
@keyframes pd-celebrate{50%{opacity:1;filter:drop-shadow(0 0 14px currentColor)}100%{opacity:var(--environment-opacity)}}
@media(max-width:700px){#pdLiveHuddle{padding:12px;gap:8px}#pdLiveHuddle>header,#pdLiveHuddle>footer{padding:12px 4px}#pdHuddleScene{padding:15px}#pdHuddleScene h1{margin-bottom:22px}.pd-live-moods{gap:7px}.pd-live-mood .pd-live-track{height:130px}.pd-live-mood small{font-size:10px}.pd-live-mood b{font-size:27px}.pd-live-metrics{grid-template-columns:1fr 1fr;gap:10px}.pd-live-metric{padding:18px 14px}.pd-huddle-progress{display:none}.pd-live-list article{padding:15px;gap:10px}.pd-live-list h3{font-size:16px}.pd-live-list strong{font-size:20px}.pd-huddle-preparation{padding:22px}}
@media(prefers-reduced-motion:reduce){#pdEnvironment *,.theme-mascot svg,.pd-scene-enter,.pd-live-list article{animation:none!important}.pd-environment-particles{display:none}.pd-live-track i,#pdCenterFrost{transition:none!important}}
/* Data presentation: registered ring value transitions without changing calculated scores. */
@property --metric-progress{syntax:'<percentage>';inherits:false;initial-value:0%}
.pd-rank-podium-item .pd-rank-cylinder{filter:drop-shadow(0 12px 16px color-mix(in srgb,var(--accent) 12%,transparent))}
.pd-rank-podium-item .pd-podium-rim{border-color:color-mix(in srgb,var(--accent2) 45%,var(--line))!important;box-shadow:inset 0 1px 0 var(--pd-glass-highlight)}
.pd-rank-podium-item .pd-rank-hero-avatar{box-shadow:0 0 0 4px color-mix(in srgb,var(--panel) 80%,transparent),0 8px 28px color-mix(in srgb,var(--accent) 22%,transparent)}
.pd-rank-podium-item.place-1 .pd-rank-hero-avatar{outline:1px solid color-mix(in srgb,var(--accent) 55%,transparent)}
.pd-provider35-focus,.pd-pa-chart-card{border-color:var(--pd-glass-border);box-shadow:inset 0 1px 0 var(--pd-glass-highlight)}
/* Secondary copy keeps a readable theme-relative luminance rather than a default gray. */
body[data-theme]{color:var(--ink);--muted:color-mix(in srgb,var(--ink) 72%,var(--page))}
body :is(.modal,.pd-date-popover,.time-picker,.pd-flow-card,.pd-action-card,.sup-request-detail-card) :is(label,small,.subtitle,.form-help,.field-help){color:var(--muted)}
#pdJumpEligibility{line-height:1.6}#pdJumpEligibility dt{color:var(--muted);font-size:12px;margin-top:12px}#pdJumpEligibility dd{margin:0;font-weight:650}#pdAgentJumpChip{cursor:pointer}

/* Evaluate legacy aliases at the theme owner, not :root's initial white palette. */
body[data-theme]{--text:var(--ink);--card:var(--panel);--border:var(--line);--pd-neon:var(--accent);--pd-neon2:var(--accent2);--pd-glass-bg:color-mix(in srgb,var(--panel) 78%,transparent);--pd-glass-bg-strong:color-mix(in srgb,var(--panel) 90%,transparent);--pd-neon-soft:color-mix(in srgb,var(--accent) 15%,transparent);--pd-neon-line:color-mix(in srgb,var(--accent) 48%,transparent);--pd-neon-glow:color-mix(in srgb,var(--accent) 34%,transparent)}
body[data-theme] :is(.pd-live-chip:not(.danger),.pd-count-chip){background:var(--pd-glass-surface);color:var(--ink);border-color:var(--pd-glass-border)}
body[data-theme] :is(.pd-schedule-segments,.pd-plan,.pd-day-registered,.pd-compact-link,.pd-personal-tool,.pd-check-person){color:var(--ink);border-color:var(--pd-glass-border)}
body[data-theme] .pd-schedule-segments button{color:var(--muted)}
body[data-theme] :is(.empty-state,.empty-workforce,.pd-links-mini-empty) strong{color:var(--ink)}

/* Selected corner and its adjacent edge form one environment. Particles share that origin. */
.pd-environment-ornament{width:88px;height:88px;stroke-width:.9;opacity:.65}
.pd-ornament-fill{fill:color-mix(in srgb,currentColor 24%,transparent);stroke-width:.7}.pd-pearl{fill:color-mix(in srgb,var(--panel) 75%,var(--accent2));stroke-width:.6}
#pdEnvironment .pd-environment-particles i{left:auto;right:8px;top:34px;--drift:-4px}
#pdEnvironment[data-movement=rise] .pd-environment-ornament{top:auto;bottom:5px;transform:rotate(180deg);animation-name:pd-source-breathe}
#pdEnvironment[data-movement=rise] .pd-environment-particles i{top:auto;bottom:34px;animation-name:pd-edge-rise;animation-direction:normal}
#pdEnvironment[data-movement=glint] .pd-environment-particles i{right:calc(8px + var(--i)*9px);top:calc(8px + var(--i)*9px);animation-name:pd-edge-glint}
#pdEnvironment[data-movement=trace] .pd-environment-particles i{right:8px;width:2px;height:24px;animation-name:pd-edge-trace}
#pdEnvironment[data-edge=angular] .pd-environment-frame,#pdEnvironment[data-edge=circuit] .pd-environment-frame{border-radius:8px}
#pdEnvironment[data-edge=arch] .pd-environment-frame{border-radius:40px 18px}
#pdEnvironment[data-material=nacre] .pd-environment-frame,#pdEnvironment[data-material=iridescent] .pd-environment-frame{border-color:color-mix(in srgb,var(--accent2) 50%,transparent);box-shadow:inset 1px 1px 4px color-mix(in srgb,var(--accent2) 30%,transparent),inset -1px -1px 5px color-mix(in srgb,var(--accent) 25%,transparent)}
#pdEnvironment[data-material=forged] .pd-environment-frame,#pdEnvironment[data-material=metal] .pd-environment-frame{border-width:1.5px;border-style:double}
#pdEnvironment[data-material=stone] .pd-environment-frame{border-style:dashed}
#pdEnvironment[data-mode=dark] .pd-environment-ornament{filter:drop-shadow(0 0 5px color-mix(in srgb,currentColor 45%,transparent));opacity:.72}
#pdEnvironment[data-theme=sakura] .pd-environment-ornament,#pdEnvironment[data-theme=roseveil] .pd-environment-ornament{color:var(--accent)}
@keyframes pd-source-breathe{to{opacity:.45}}
@keyframes pd-edge-rise{0%{transform:translate3d(0,0,0);opacity:0}8%,70%{opacity:var(--environment-opacity)}100%{transform:translate3d(-4px,-100vh,0);opacity:0}}
@keyframes pd-edge-glint{0%,65%,100%{opacity:0;transform:scale(.4)}75%{opacity:.75;transform:scale(1.2)}85%{opacity:.3;transform:scale(.8)}}
@keyframes pd-edge-trace{0%{opacity:0;transform:translateY(0)}10%{opacity:.65}75%,100%{opacity:0;transform:translateY(85vh)}}
@media(max-width:1000px){.pd-environment-ornament{width:70px;height:70px}}
@media(max-width:600px){.pd-environment-ornament{width:42px;height:42px;opacity:.5}#pdEnvironment .pd-environment-particles i{right:3px;top:18px}#pdEnvironment[data-movement=rise] .pd-environment-particles i{top:auto;bottom:18px}}
/* Huddle hub: one selected session, freely entered scenes, persistent exit. */
.pd-huddle-selection{border:0;display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:18px}.pd-huddle-selection legend{font-weight:750;margin-bottom:10px}.pd-huddle-selection label{display:flex;align-items:center;gap:9px;padding:10px;border:1px solid var(--pd-glass-border);border-radius:12px;font-size:12px;cursor:pointer;background:color-mix(in srgb,var(--panel) 60%,transparent)}.pd-huddle-selection label:has(:checked){background:color-mix(in srgb,var(--accent) 13%,var(--panel));border-color:var(--accent)}.pd-huddle-selection input{accent-color:var(--accent);width:16px;height:16px}.pd-huddle-selection svg{width:17px;height:17px;color:var(--accent)}.pd-huddle-preparation .pd-prepare-warning{font-size:11px;margin-top:14px}
#pdHuddleScene[data-scene=menu]{width:min(1200px,100%);display:grid;grid-template-columns:minmax(240px,.8fr) minmax(0,1.3fr);gap:35px;align-items:center}.pd-hub-intro h1 em{font-style:normal;color:var(--accent)}#pdHuddleScene[data-scene=menu] h1{font-size:clamp(32px,4.8vw,65px)}#pdHuddleScene[data-scene=menu] .pd-scene-copy{font-size:16px}
.pd-huddle-hub{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:4px}.pd-hub-option{display:flex;align-items:center;gap:14px;min-height:106px;border:1px solid var(--pd-glass-border);border-radius:20px;padding:20px;text-align:left;color:var(--ink);background:linear-gradient(140deg,color-mix(in srgb,var(--accent2) 8%,var(--pd-glass-surface)),var(--pd-glass-surface));box-shadow:inset 0 1px 0 var(--pd-glass-highlight);cursor:pointer;transition:transform 220ms,border-color 220ms,box-shadow 220ms}.pd-hub-option>svg{width:27px;height:27px;color:var(--accent);flex-shrink:0}.pd-hub-option span{min-width:0}.pd-hub-option b,.pd-hub-option small{display:block}.pd-hub-option b{font-size:16px;line-height:1.25}.pd-hub-option small{font-size:8px;letter-spacing:.1em;color:var(--muted);margin-bottom:7px}.pd-hub-arrow{margin-left:auto;color:var(--accent);font-size:20px}.pd-hub-option:hover,.pd-hub-option:focus-visible{transform:translateY(-3px);border-color:var(--accent);box-shadow:0 10px 24px color-mix(in srgb,var(--accent) 15%,transparent)}.pd-hub-mood{grid-column:1/-1;min-height:125px}.pd-hub-mood>svg{width:58px;height:58px}.pd-hub-mood b{font-size:24px}.pd-scene-enter .pd-hub-option{animation:pd-scene-enter 700ms both;animation-delay:calc(min(var(--order),6)*100ms)}
.pd-mood-face{width:42px;height:42px;overflow:visible;vertical-align:middle}.pd-mood-face>circle{fill:color-mix(in srgb,var(--accent2) 18%,var(--panel));stroke:var(--accent);stroke-width:1.5}.pd-face-expression{fill:none;stroke:var(--ink);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.pd-mood-verdict{display:flex;align-items:center;gap:22px;margin-bottom:22px}.pd-mood-verdict>svg{width:82px;height:82px}.pd-mood-verdict span>*{display:block}.pd-mood-verdict strong{font-size:30px}.pd-mood-verdict small{font-size:12px;color:var(--muted);margin:5px 0}.pd-live-mood b .pd-mood-face{width:48px;height:48px}
#pdMoodCheckin button{width:54px;min-height:54px;display:grid;place-items:center}#pdMoodCheckin button:hover{transform:translateY(-2px)}#pdMoodCheckin button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
#pdEnvironment[data-mood=positive]{--environment-opacity:.8;filter:brightness(1.12)}#pdEnvironment[data-mood=low]{--environment-opacity:.32;filter:brightness(.9)}#pdEnvironment[data-mood=low] .pd-environment-particles i{animation-duration:45s}#pdEnvironment[data-mood=low] .pd-environment-particles i:nth-child(n+3){display:none}
.pd-performance-scene{padding:24px;border:1px solid var(--pd-glass-border);border-radius:24px;background:var(--pd-glass-surface)}#pdTeamPerformance{width:100%;min-height:200px;overflow:visible}#pdPerformanceLabels{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;color:var(--muted);font-size:12px}#pdPerformanceLabels small{display:block;font-size:10px;margin-top:5px}
@property --team-score{syntax:'<percentage>';inherits:false;initial-value:0%}
.pd-conformance-scene{display:flex;align-items:center;justify-content:center;gap:40px;flex-wrap:wrap;margin:30px auto}.pd-team-ring{--team-score:0%;width:min(330px,70vw);aspect-ratio:1;border-radius:50%;padding:15px;background:conic-gradient(var(--accent) var(--team-score),color-mix(in srgb,var(--accent) 12%,transparent) 0);transition:--team-score 1300ms ease-out;box-shadow:0 0 35px color-mix(in srgb,var(--accent) 12%,transparent)}.pd-team-ring>div{height:100%;display:grid;place-items:center;border-radius:50%;background:var(--page)}.pd-team-ring .pd-live-metric{border:0;box-shadow:none;background:none;text-align:center}
.pd-adherence-segments{display:grid;grid-template-columns:repeat(20,1fr);gap:6px;margin:30px 0}.pd-adherence-segments i{--segment-fill:0%;height:64px;border:1px solid var(--pd-glass-border);border-radius:8px;background:linear-gradient(to top,var(--accent) var(--segment-fill),color-mix(in srgb,var(--accent) 10%,transparent) 0);transition:--segment-fill 1100ms ease-out}
@property --segment-fill{syntax:'<percentage>';inherits:false;initial-value:0%}
.pd-celebration-scene article{padding:35px;background:radial-gradient(ellipse at top right,color-mix(in srgb,var(--accent2) 20%,transparent),transparent),var(--pd-glass-surface)}.pd-celebration-scene h3{font-size:clamp(23px,3vw,42px)}.pd-celebration-scene p{font-size:18px;line-height:1.6}.pd-audio-note{font-size:11px;color:var(--muted);margin-top:10px}.pd-celebration-scene+button{margin-top:20px}
.pd-huddle-notes{grid-column:1/-1}.pd-board-note{display:flex;gap:15px;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--line)}.pd-board-note b,.pd-board-note small{display:block}.pd-board-note small{color:var(--accent);font-size:10px}.pd-board-note b{font-size:14px;margin:4px 0}.pd-board-note p{font-size:12px;color:var(--muted);white-space:pre-wrap}.pd-board-note.is-done>div:first-child{opacity:.55}.pd-board-note.is-done b{text-decoration:line-through}.pd-note-actions{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.pd-note-actions button{background:var(--pd-glass-surface);border:1px solid var(--pd-glass-border);border-radius:9px;padding:8px;color:var(--ink);cursor:pointer}.pd-note-actions button:disabled{opacity:.4}.pd-notes-scene article{border-left:3px solid var(--accent)}
@media(max-width:850px){#pdHuddleScene[data-scene=menu]{grid-template-columns:1fr;gap:15px}.pd-hub-intro h1 br{display:none}.pd-hub-intro h1{margin-bottom:14px!important}.pd-hub-option{min-height:92px;padding:16px}}
@media(max-width:500px){.pd-huddle-selection{grid-template-columns:1fr}.pd-hub-option{padding:14px;gap:9px}.pd-hub-option b{font-size:14px}.pd-hub-option>svg{width:22px;height:22px}.pd-hub-mood>svg{width:40px;height:40px}.pd-hub-mood b{font-size:22px}.pd-board-note{flex-direction:column}.pd-adherence-segments{gap:3px}.pd-adherence-segments i{height:45px;border-radius:4px}.pd-live-mood b .pd-mood-face{width:34px;height:34px}#pdPerformanceLabels{font-size:9px}#pdLiveHuddle>footer{font-size:10px}.pd-hub-arrow{display:none}.pd-performance-scene{padding:8px}.pd-mood-verdict>svg{width:60px;height:60px}}
@media(prefers-reduced-motion:reduce){.pd-scene-enter .pd-hub-option{animation:none}.pd-hub-option,.pd-team-ring,.pd-adherence-segments i{transition:none}}
.pd-settings-utilities{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:stretch}.pd-settings-utilities>article{grid-column:auto!important;width:auto!important;margin:0!important;min-width:0}.pd-sound-preview{display:flex;flex-wrap:wrap;align-items:end;gap:10px;margin-top:16px}.pd-sound-preview label{flex:1;min-width:150px;font-size:12px;color:var(--muted)}.pd-sound-preview select{display:block;margin-top:7px;width:100%}.pd-sound-preview small{flex-basis:100%;color:var(--muted);font-size:11px}
@media(max-width:700px){.pd-settings-utilities{grid-template-columns:1fr}}
@media(min-width:851px){.pd-hub-intro{align-self:start;position:sticky;top:12px;padding-top:30px}}
#pdEnvironment.pd-celebrating .pd-environment-ornament{animation:pd-celebrate 1400ms ease-out}
#pdEnvironment.pd-celebrating .pd-environment-frame{animation:pd-frame-reaction 1600ms ease-out}
@keyframes pd-frame-reaction{40%{border-color:var(--accent);box-shadow:inset 0 0 28px color-mix(in srgb,var(--accent2) 20%,transparent)}}
.pd-scene-enter .pd-mood-verdict{animation:pd-scene-enter 650ms 900ms both}
@media(prefers-reduced-motion:reduce){.pd-scene-enter .pd-mood-verdict,#pdEnvironment.pd-celebrating *{animation:none!important}}
body.pd-ui-paused *{animation-play-state:paused!important}
.pd-environment-reaction i{position:absolute;right:9px;top:30px;width:7px;height:7px;border-radius:50%;background:currentColor;opacity:0;pointer-events:none}.pd-environment-reaction i:nth-child(2){right:16px}.pd-environment-reaction i:nth-child(3){right:6px}
#pdEnvironment.pd-celebrating .pd-environment-reaction i{animation:pd-frame-particle 1400ms ease-out both}#pdEnvironment.pd-celebrating .pd-environment-reaction i:nth-child(2){animation-delay:180ms}#pdEnvironment.pd-celebrating .pd-environment-reaction i:nth-child(3){animation-delay:350ms}
#pdEnvironment[data-movement=rise] .pd-environment-reaction i{top:auto;bottom:30px}#pdEnvironment[data-movement=rise].pd-celebrating .pd-environment-reaction i{animation-name:pd-frame-particle-rise}
#pdEnvironment[data-movement=glint].pd-celebrating .pd-environment-reaction i{animation-name:pd-frame-glint}
@keyframes pd-frame-particle{0%{opacity:0;transform:translateY(0) rotate(0)}20%{opacity:.8}100%{opacity:0;transform:translateY(120px) rotate(140deg)}}
@keyframes pd-frame-particle-rise{0%{opacity:0;transform:translateY(0) rotate(0)}20%{opacity:.8}100%{opacity:0;transform:translateY(-120px) rotate(90deg)}}
@keyframes pd-frame-glint{0%,100%{opacity:0;transform:scale(.3)}45%{opacity:.9;transform:scale(1.3)}}
@media(max-width:600px){.pd-environment-reaction i:nth-child(n+2){display:none}.pd-environment-reaction i{right:3px;top:18px}}
@media(prefers-reduced-motion:reduce){.pd-environment-reaction{display:none}}
body[data-theme] :is(.pd-compact-link,.pd-personal-tool) input{background:transparent!important;color:var(--ink)!important}
body[data-theme] :is(.pd-compact-link,.pd-personal-tool) input:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:5px}
#pdMoodCheckin .pd-mood-caption{font-size:9px;line-height:1.2;color:var(--muted);display:block;margin:4px 0 2px}#pdMoodCheckin button[aria-pressed=true] .pd-mood-caption{color:var(--ink)}
body[data-theme] .pd-avatar-sm{background:color-mix(in srgb,var(--accent) 13%,var(--panel));color:var(--ink)}
#pdEnvironment[data-mood=positive] .pd-environment-particles i{animation-duration:calc(var(--environment-duration)*.85)}
#pdEnvironment[data-mood=low] .pd-environment-particles i{animation-duration:calc(var(--environment-duration)*1.6)}

/* Experience refinement: one continuous atmosphere, behind translucent product surfaces. */
body{isolation:isolate;--pd-atmos-angle:135deg;--pd-atmos-depth:18%;--pd-atmos-light:12%}
body[data-theme=sakura],body[data-theme=roseveil],body[data-theme=wisteria]{--pd-atmos-angle:155deg;--pd-atmos-depth:20%;--pd-atmos-light:10%}
body[data-theme=pearl],body[data-theme=mermaid],body[data-theme=abyss],body[data-theme=sunken]{--pd-atmos-angle:175deg;--pd-atmos-depth:24%;--pd-atmos-light:18%}
body[data-theme=crystal],body[data-theme=mecha],body[data-theme=cyber]{--pd-atmos-angle:115deg;--pd-atmos-depth:16%;--pd-atmos-light:16%}
body[data-mode=dark]{--pd-atmos-depth:15%;--pd-atmos-light:8%}
#pdEnvironment,#pdEnvironment.pd-event-environment{z-index:-1!important;background:linear-gradient(var(--pd-atmos-angle),color-mix(in srgb,var(--accent) var(--pd-atmos-depth),var(--page)),var(--page) 48%,color-mix(in srgb,var(--accent2) var(--pd-atmos-light),var(--page)));filter:none!important}
#pdEnvironment::before{content:'';position:absolute;inset:-15%;background:linear-gradient(165deg,transparent 20%,color-mix(in srgb,var(--panel) 22%,transparent) 48%,transparent 78%);animation:pd-atmosphere 65s ease-in-out infinite alternate;pointer-events:none}
#pdEnvironment .pd-environment-frame,#pdEnvironment .pd-environment-particles,#pdEnvironment .pd-environment-reaction{display:none!important}
#pdEnvironment .pd-environment-ornament{width:150px;height:150px;opacity:.12!important;filter:none!important;animation:none!important;right:3%;top:6%}
body[data-theme] #agentApp,body[data-theme] #supervisorApp,body[data-theme] .main-content,body[data-theme] .supervisor-main{background:transparent!important}
body[data-theme] :is(.card,.sidebar,.supervisor-sidebar){background:color-mix(in srgb,var(--panel) 70%,transparent)!important;backdrop-filter:blur(18px) saturate(115%);-webkit-backdrop-filter:blur(18px) saturate(115%)}
@keyframes pd-atmosphere{to{transform:translate3d(3%,2%,0)}}
/* The bar itself is the glass. No detached frosting layer below it. */
body #agentApp .utility-bar,body #supervisorApp .sup-utility-bar{position:sticky!important;inset:auto!important;top:8px!important;bottom:auto!important;order:-1!important;align-self:start!important;grid-column:1/-1!important;grid-row:auto!important;transform:none!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;margin:0 0 18px!important;z-index:8000!important;background:color-mix(in srgb,var(--panel) 48%,transparent)!important;border:1px solid color-mix(in srgb,var(--line) 65%,transparent)!important;backdrop-filter:blur(22px) saturate(125%)!important;-webkit-backdrop-filter:blur(22px) saturate(125%)!important;box-shadow:0 3px 12px color-mix(in srgb,var(--ink) 5%,transparent)!important}
body #agentApp .utility-bar::before,body #supervisorApp .sup-utility-bar::before,body #agentApp .utility-bar::after,body #supervisorApp .sup-utility-bar::after{content:none!important}
body #agentApp .utility-bar.pd-bar-scrolled,body #supervisorApp .sup-utility-bar.pd-bar-scrolled{background:color-mix(in srgb,var(--panel) 65%,transparent)!important}
body :is(.utility-bar,.sup-utility-bar) :is(.utility-search,.utility-icon,.pd-profile-top,.pd-settings-gear){background:color-mix(in srgb,var(--panel) 28%,transparent)!important;box-shadow:none!important}
body[data-theme] :is(#requestsView,#supRequestsView,#supRequestAgentDetail,#pdRequestFlowModal) :is(.card,.request-card,.pd-request-lane,.search-box,.sup-request-detail-card,.pd-copy-mail-preview,.pd-admin-package,.pd-admin-table-wrap,.pd-admin-actions,.sup-request-detail-header,.sup-request-detail-footer){background:color-mix(in srgb,var(--panel) 60%,transparent)!important;border-color:color-mix(in srgb,var(--accent) 20%,var(--line))!important;backdrop-filter:blur(18px) saturate(115%);-webkit-backdrop-filter:blur(18px) saturate(115%);box-shadow:0 5px 18px color-mix(in srgb,var(--ink) 4%,transparent)!important}
body[data-theme] :is(#requestsView,#supRequestsView,#supRequestAgentDetail,#pdRequestFlowModal) :is(input,select,textarea,td,th,.pd-request-filters){background:color-mix(in srgb,var(--panel) 45%,transparent)!important;color:var(--ink)!important;border-color:var(--line)!important}
body[data-theme] #supRequestAgentDetail{background:color-mix(in srgb,var(--panel) 64%,transparent)!important;backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px)}
/* Slides: discreet chrome, readable content, finite contextual moments. */
#pdLiveHuddle{background:color-mix(in srgb,var(--page) 72%,transparent)!important;isolation:isolate}
#pdLiveHuddle>header,#pdLiveHuddle>footer{flex-shrink:0}#pdLiveHuddle>footer{justify-content:center;gap:24px}
#pdHuddleScene{position:relative;overflow-x:clip;min-height:0;isolation:isolate}
.pd-huddle-selection label{display:flex!important;gap:8px}.pd-huddle-selection label>span{flex:1}.pd-huddle-selection label>button{border:1px solid var(--line);background:transparent;color:var(--ink);border-radius:8px;min-width:30px;min-height:30px;cursor:pointer}
.pd-moment{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:4}.pd-moment i{position:absolute;display:block;color:var(--accent);font-style:normal;pointer-events:none}.pd-moment-confetti i{width:8px;height:13px;background:var(--accent);border-radius:2px}.pd-moment-confetti i:nth-child(3n){background:var(--accent2);border-radius:50%}.pd-moment-confetti i:nth-child(3n+1){background:color-mix(in srgb,var(--accent) 50%,var(--panel))}.pd-moment-happy i{font-size:32px;color:color-mix(in srgb,#dfaa38 65%,var(--accent))}.pd-moment-recognition i{font-size:34px}.pd-moment-calm i,.pd-moment-quiet i{width:90px;height:20px;border-top:2px solid var(--accent);border-radius:50%;opacity:.3}
.pd-winner-crown{position:absolute;top:0;left:calc(50% - 18px);font-size:36px;color:var(--accent);pointer-events:none;z-index:5}
.pd-rank-podium-item,.pd-presentation-podium article{position:relative}
.pd-presentation-podium{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:16px!important}
.pd-presentation-podium article{display:flex!important;flex-direction:column;text-align:center;justify-content:center;padding:30px 16px!important;min-height:190px;background:color-mix(in srgb,var(--panel) 65%,transparent);border:1px solid var(--line);border-radius:22px}
.pd-presentation-podium [data-rank-position="1"]{grid-column:2;grid-row:1;min-height:270px}.pd-presentation-podium [data-rank-position="2"]{grid-column:1;grid-row:1;min-height:225px}.pd-presentation-podium [data-rank-position="3"]{grid-column:3;grid-row:1}.pd-presentation-podium article:nth-child(n+4){grid-row:2;min-height:0;padding:12px!important;font-size:12px}.pd-presentation-podium h3{font-size:clamp(14px,2vw,26px)!important;overflow-wrap:anywhere}
@media(max-width:600px){#pdEnvironment .pd-environment-ornament{width:85px;height:85px;opacity:.08!important}#pdLiveHuddle>footer{gap:10px}#pdLiveHuddle>footer button{padding:10px;font-size:12px}.pd-presentation-podium{gap:6px!important}.pd-presentation-podium article{padding:20px 6px!important;min-height:145px}.pd-presentation-podium [data-rank-position="1"]{min-height:215px}.pd-presentation-podium [data-rank-position="2"]{min-height:180px}.pd-presentation-podium article p{font-size:11px}.pd-moment-happy i{font-size:24px}}
@media(prefers-reduced-motion:reduce){#pdEnvironment::before{animation:none}.pd-moment{display:none}}
/* The bar now occupies normal flow; remove the obsolete fixed-bar reservation. */
body #agentApp .main-content,body #supervisorApp .supervisor-main{padding-top:14px!important}
#pdHuddleScene:focus{outline:none}
/* Nested glass layers must not accumulate into an opaque white/gray slab. */
body[data-theme] #supRequestAgentDetail :is(.sup-request-detail-card,.sup-request-detail-header,.sup-request-detail-agent,.pd-admin-package){background:color-mix(in srgb,var(--panel) 32%,transparent)!important}
body[data-theme] #supRequestAgentDetail :is(.pd-copy-mail-preview,.pd-admin-table-wrap,.pd-admin-actions,td,th){background:color-mix(in srgb,var(--panel) 20%,transparent)!important}
#pdRequestBackdrop{background:color-mix(in srgb,var(--page) 35%,transparent)!important;backdrop-filter:blur(3px)!important}
body.pd-ui-paused #pdEnvironment::before{animation-play-state:paused}
.pd-rank-ambient{display:none!important}

/* Regression repair: retain the existing environment, with an explicit layer order. */
#pdEnvironment,#pdEnvironment.pd-event-environment{z-index:0!important;--pd-atmos-depth:28%;--pd-atmos-light:22%;background:linear-gradient(var(--pd-atmos-angle),color-mix(in srgb,var(--accent) var(--pd-atmos-depth),var(--page)),color-mix(in srgb,var(--accent2) 8%,var(--page)) 52%,color-mix(in srgb,var(--accent2) var(--pd-atmos-light),var(--page)))!important}
#pdEnvironment[data-mode=dark]{--pd-atmos-depth:23%;--pd-atmos-light:18%}
#agentApp,#supervisorApp,#authScreen{position:relative;z-index:1}
#pdEnvironment .pd-environment-frame{display:block!important;inset:12px;border-color:color-mix(in srgb,var(--accent) 30%,transparent);box-shadow:none!important;opacity:.65}
#pdEnvironment .pd-environment-ornament{width:230px;height:230px;opacity:.3!important;right:2%;top:8%;stroke-width:.7}
#pdEnvironment::before{background:linear-gradient(125deg,transparent 12%,color-mix(in srgb,var(--accent2) 12%,transparent) 38%,color-mix(in srgb,var(--panel) 28%,transparent) 61%,transparent 90%)}
#pdLiveHuddle>header,#pdLiveHuddle>main,#pdLiveHuddle>footer{position:relative;z-index:1}
body[data-theme] :is(.card,.sidebar,.supervisor-sidebar){background:color-mix(in srgb,var(--panel) 62%,transparent)!important}
.pd-date-trigger[hidden]{display:none!important}
.pd-rank-period-control:not(.has-custom-date){grid-template-columns:minmax(0,1fr)!important}
/* Small abstract accents stay at the edges of the slide, away from the data. */
.pd-moment-confetti i{width:5px;height:9px;opacity:.6}.pd-moment-happy i{width:14px;height:14px;border:1px solid color-mix(in srgb,var(--accent) 60%,#cca968);border-radius:50%;background:color-mix(in srgb,#dfbd65 18%,transparent)}
.pd-moment-happy i::after{content:'';position:absolute;inset:-5px;border:1px dashed color-mix(in srgb,var(--accent) 35%,#cca968);border-radius:50%}
.pd-moment-recognition i{width:8px;height:8px;background:var(--accent2);clip-path:polygon(50% 0,60% 40%,100% 50%,60% 60%,50% 100%,40% 60%,0 50%,40% 40%)}
.pd-winner-crown{width:18px;height:18px;left:calc(50% - 9px);top:7px;background:var(--accent);clip-path:polygon(50% 0,62% 37%,100% 50%,62% 63%,50% 100%,38% 63%,0 50%,38% 37%)}
@keyframes pd-scene-enter{from{opacity:.35;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(max-width:600px){#pdEnvironment .pd-environment-ornament{width:120px;height:120px;opacity:.22!important}.pd-moment-happy i{width:11px;height:11px}}
/* Responsive shell display rules must never override authentication visibility. */
body #agentApp.hidden,body #supervisorApp.hidden,body #authScreen.hidden{display:none!important;visibility:hidden!important;pointer-events:none!important}

/* Environmental frame: vector corner formations and bounded, continuous motion. */
#pdEnvironment .pd-environment-frame{inset:0;border:0;mask-image:none;opacity:1;overflow:hidden}
#pdEnvironment .pd-frame-corner,#pdEnvironment .pd-environment-ornament{position:absolute;width:clamp(190px,25vw,370px);height:clamp(190px,25vw,370px);fill:none;stroke:currentColor;stroke-width:1.1;opacity:.88!important;filter:drop-shadow(0 5px 8px color-mix(in srgb,var(--accent) 24%,transparent))!important;animation:none!important;transform-origin:center}
#pdEnvironment .pd-environment-ornament{top:-20px!important;right:-20px!important;bottom:auto!important;transform:rotate(90deg)!important}
#pdEnvironment .pd-corner-nw{top:-20px;left:-20px}
#pdEnvironment .pd-corner-sw{bottom:-32px;left:-20px;transform:rotate(-90deg)}
#pdEnvironment .pd-corner-se{bottom:-32px;right:-20px;transform:rotate(180deg)}
#pdEnvironment .pd-ornament-fill{fill:color-mix(in srgb,var(--accent) 48%,var(--panel));stroke:color-mix(in srgb,var(--accent) 80%,var(--ink));stroke-width:.5}
#pdEnvironment[data-theme=sakura] .pd-frame-corner>path,#pdEnvironment[data-theme=sakura] .pd-environment-ornament>path{stroke:color-mix(in srgb,var(--accent) 62%,var(--ink));stroke-width:1.4}
#pdEnvironment[data-theme=crystal] .pd-frame-corner,#pdEnvironment[data-theme=crystal] .pd-environment-ornament{width:clamp(220px,31vw,430px);height:clamp(220px,31vw,430px);filter:drop-shadow(0 0 15px color-mix(in srgb,var(--accent2) 60%,transparent))!important}
#pdEnvironment[data-theme=crystal] .pd-ornament-fill{fill:color-mix(in srgb,var(--accent2) 58%,transparent);stroke:var(--accent);stroke-width:.8;animation:pd-crystal-shimmer 5s ease-in-out infinite alternate}
#pdEnvironment .pd-environment-particles{display:block!important;position:absolute;inset:0;overflow:hidden}
#pdEnvironment .pd-environment-particles i,#pdEnvironmentFront i{display:block;position:absolute!important;left:var(--x)!important;right:auto!important;top:-28px!important;bottom:auto!important;width:var(--size)!important;height:calc(var(--size)*.7)!important;opacity:0;animation:pd-perimeter-fall var(--duration) linear var(--delay) infinite!important;box-shadow:none;filter:none;background:color-mix(in srgb,var(--accent) 75%,var(--panel));border:1px solid color-mix(in srgb,var(--accent) 65%,transparent);border-radius:70% 10% 70% 25%}
#pdEnvironment .pd-environment-particles i:nth-child(3n){filter:blur(1.2px);--travel:-110px}
#pdEnvironment .pd-environment-particles i:nth-child(n+29){animation-name:pd-petal-gust!important;animation-duration:19s!important}
#pdEnvironment[data-particle=prism] .pd-environment-particles i,#pdEnvironmentFront[data-particle=prism] i{height:calc(var(--size)*1.65)!important;border-radius:0;clip-path:polygon(40% 0,85% 25%,100% 78%,40% 100%,0 60%);background:linear-gradient(110deg,var(--accent) 0 43%,var(--panel) 45% 53%,var(--accent2) 56%);animation-name:pd-shard-float!important;box-shadow:0 0 14px var(--accent2)}
#pdEnvironment:not([data-particle=petal]):not([data-particle=prism]) .pd-environment-particles i{border-radius:50%;width:calc(var(--size)*.55)!important;height:calc(var(--size)*.55)!important}
#pdEnvironmentFront{position:fixed;inset:0;z-index:15002;overflow:hidden;pointer-events:none!important;contain:strict;clip-path:polygon(evenodd,0 0,100% 0,100% 100%,0 100%,0 0,18px 18px,18px calc(100% - 18px),calc(100% - 18px) calc(100% - 18px),calc(100% - 18px) 18px,18px 18px)}
#pdEnvironmentFront *{pointer-events:none!important}
#pdEnvironmentFront i{--travel:0px;filter:drop-shadow(0 1px 3px color-mix(in srgb,var(--ink) 20%,transparent))}
@keyframes pd-perimeter-fall{0%{opacity:0;transform:translate3d(0,0,0) rotate(0)}8%,85%{opacity:.85}45%{transform:translate3d(calc(var(--travel)*.35),52vh,0) rotate(calc(var(--spin)*.4))}100%{opacity:0;transform:translate3d(var(--travel),108vh,0) rotate(var(--spin))}}
@keyframes pd-petal-gust{0%,72%{opacity:0;transform:translate3d(-80px,10vh,0) rotate(0)}77%,91%{opacity:.95}100%{opacity:0;transform:translate3d(240px,106vh,0) rotate(620deg)}}
@keyframes pd-shard-float{0%{opacity:0;transform:translate3d(0,100vh,0) rotate(0)}15%,80%{opacity:.8}50%{transform:translate3d(var(--travel),50vh,0) rotate(150deg)}100%{opacity:0;transform:translate3d(0,0,0) rotate(var(--spin))}}
@keyframes pd-crystal-shimmer{0%,30%{fill:color-mix(in srgb,var(--accent2) 58%,transparent)}65%{fill:color-mix(in srgb,var(--panel) 70%,var(--accent2))}100%{fill:color-mix(in srgb,var(--accent) 65%,transparent)}}
body[data-theme] :is(.card,.sidebar,.supervisor-sidebar){backdrop-filter:blur(10px) saturate(120%);-webkit-backdrop-filter:blur(10px) saturate(120%)}
body.pd-ui-paused #pdEnvironmentFront *,#pdEnvironment.is-paused *{animation-play-state:paused!important}
@media(max-width:600px){#pdEnvironment .pd-frame-corner,#pdEnvironment .pd-environment-ornament{width:180px;height:180px;opacity:.82!important}#pdEnvironment[data-theme=crystal] .pd-frame-corner,#pdEnvironment[data-theme=crystal] .pd-environment-ornament{width:210px;height:210px}#pdEnvironment .pd-environment-particles i{display:block;width:calc(var(--size)*.8)!important}#pdEnvironment .pd-environment-particles i:nth-child(n+21){display:none}#pdEnvironment .pd-environment-particles i:nth-child(n+17):nth-child(-n+20){display:block;animation-name:pd-petal-gust!important}#pdEnvironmentFront{clip-path:polygon(evenodd,0 0,100% 0,100% 100%,0 100%,0 0,10px 10px,10px calc(100% - 10px),calc(100% - 10px) calc(100% - 10px),calc(100% - 10px) 10px,10px 10px)}}
/* Portrait fallback remains visible while a real stored photograph loads. */
.pd-presentation-avatar{position:relative;display:inline-grid!important;place-items:center;flex:0 0 auto;width:88px;height:88px;border-radius:50%;overflow:hidden;background:var(--panel);border:2px solid color-mix(in srgb,var(--accent) 65%,var(--panel));color:var(--ink);isolation:isolate;box-shadow:0 6px 18px color-mix(in srgb,var(--accent) 20%,transparent)}
.pd-presentation-avatar>svg,.pd-presentation-avatar>img{position:absolute;inset:0;display:block;width:100%!important;height:100%!important;object-fit:cover;opacity:1;visibility:visible}
.pd-presentation-avatar>svg{fill:color-mix(in srgb,var(--accent2) 25%,var(--panel));stroke:var(--accent);stroke-width:1.5}.pd-presentation-avatar>svg>path{fill:var(--accent)}.pd-presentation-avatar .pd-avatar-head{fill:var(--panel)}.pd-presentation-avatar .pd-avatar-expression{fill:none;stroke:var(--ink);stroke-width:2;stroke-linecap:round}
.pd-presentation-avatar>img[hidden]{display:none!important}.pd-presentation-avatar>small{position:absolute;bottom:0;left:0;right:0;text-align:center;font-size:10px!important;line-height:17px;background:color-mix(in srgb,var(--panel) 85%,transparent);color:var(--ink)}
#pdLiveCelebrations article,#pdLiveRecognition article{position:relative;gap:22px;padding:24px;border-radius:24px;background:color-mix(in srgb,var(--panel) 65%,transparent);border:1px solid color-mix(in srgb,var(--accent) 45%,var(--line));box-shadow:0 12px 35px color-mix(in srgb,var(--accent) 15%,transparent)}
#pdLiveCelebrations .pd-live-position,#pdLiveRecognition .pd-live-position{display:none}
#pdLiveCelebrations .pd-presentation-avatar{width:116px;height:116px}
.pd-rank-hero-avatar:has(.pd-presentation-avatar){background:transparent!important;border:0!important;box-shadow:none!important;overflow:visible}.pd-rank-hero-avatar .pd-presentation-avatar{width:48px;height:48px}.pd-rank-hero-avatar .pd-presentation-avatar small{font-size:8px!important;line-height:12px}
#pdLiveSource .pd-presentation-avatar{width:76px;height:76px}
.pd-podium-unprepared{visibility:hidden}
.pd-winner-halo{position:absolute;pointer-events:none;top:-25px;left:50%;width:220px;height:220px;border-radius:50%;background:radial-gradient(ellipse,color-mix(in srgb,var(--accent2) 48%,transparent),color-mix(in srgb,var(--accent) 20%,transparent) 35%,transparent 70%);z-index:-1;filter:blur(12px)}
.pd-winner-crown{width:32px;height:32px;left:calc(50% - 16px);top:-25px;filter:drop-shadow(0 0 12px var(--accent2))}
.pd-moment-confetti i{width:10px;height:17px;opacity:1}.pd-moment-confetti i:nth-child(4n){width:14px;height:8px}.pd-moment-happy i{width:34px;height:34px;background:#f3c85d;border:2px solid #d69c36;box-shadow:0 0 26px #f3c85d88}.pd-moment-happy i::after{inset:-12px;border:4px dashed #dfac43;border-radius:50%}.pd-moment-happy i:nth-child(3n){width:13px;height:13px}.pd-moment-happy i:nth-child(3n)::after{display:none}.pd-moment-recognition i{width:24px;height:24px;background:var(--accent2);filter:drop-shadow(0 0 9px var(--accent))}
@keyframes pd-scene-enter{from{opacity:0;transform:translateY(36px) scale(.97)}to{opacity:1;transform:none}}
#pdHuddleScene.pd-scene-enter{animation-duration:720ms}.pd-live-list.pd-scene-enter article{animation-delay:calc(min(var(--order,0),5)*140ms)}
.pd-scene-enter .pd-mood-verdict{animation:pd-scene-enter 850ms 120ms both}
@media(max-width:600px){#pdLiveCelebrations article,#pdLiveRecognition article{padding:18px;gap:14px;flex-wrap:wrap}#pdLiveCelebrations .pd-presentation-avatar{width:84px;height:84px}.pd-presentation-avatar{width:64px;height:64px}#pdLiveSource .pd-presentation-avatar{width:52px;height:52px}.pd-moment-happy i{width:24px;height:24px}.pd-winner-halo{width:150px;height:150px}}
@media(prefers-reduced-motion:reduce){#pdEnvironment .pd-environment-particles,#pdEnvironmentFront{display:none!important}#pdEnvironment *{animation:none!important}.pd-podium-unprepared{visibility:visible}.pd-moment{display:none!important}}

#pdLiveHuddle .pd-huddle-brand{padding:8px 12px;border-radius:12px;background:color-mix(in srgb,var(--panel) 78%,transparent);backdrop-filter:blur(8px)}
/* Shell-wide blur erased motifs before individual glass surfaces could show them. */
body[data-theme] #supervisorApp.supervisor-shell,body[data-theme] #agentApp .app-shell{background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
body[data-theme] #supervisorApp :is(.sup-card,.sup-stats article,.sup-hero){background:color-mix(in srgb,var(--panel) 68%,transparent)!important;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
/* A wrapped runner-up name must not make its platform taller than first place. */
.pd-presentation-podium [data-rank-position="1"]{min-height:380px;height:380px}
.pd-presentation-podium [data-rank-position="2"]{min-height:350px;height:350px}
.pd-presentation-podium [data-rank-position="3"]{min-height:320px;height:320px}
.pd-presentation-podium article:nth-child(n+4){grid-column:1/-1;grid-row:auto;flex-direction:row!important;text-align:left;min-height:0;height:auto;padding:10px 18px!important}
#pdLiveSource.pd-presentation-podium article:nth-child(n+4) .pd-presentation-avatar{width:36px;height:36px}
.pd-presentation-podium article:nth-child(n+4) h3{font-size:16px!important}
.pd-presentation-podium article:nth-child(n+4) p{font-size:11px}
@media(max-width:600px){.pd-presentation-podium [data-rank-position="1"]{min-height:330px;height:330px}.pd-presentation-podium [data-rank-position="2"]{min-height:305px;height:305px}.pd-presentation-podium [data-rank-position="3"]{min-height:280px;height:280px}.pd-presentation-podium article{gap:10px!important}}
.pd-moment-happy,.pd-moment-recognition{z-index:-1}
.pd-rank-hero-avatar .pd-presentation-avatar{width:40px;height:40px}
.pd-rank-person .pd-presentation-avatar>small{margin:0;padding:0;border:0;border-radius:0;min-height:0;line-height:10px!important}
/* The animation clock can lead its RAF cue by one frame. Reveal both together. */
:is(.pd-rank-podium-item,.pd-presentation-podium article)[data-ceremony=waiting]{visibility:hidden}
@media(prefers-reduced-motion:reduce){:is(.pd-rank-podium-item,.pd-presentation-podium article)[data-ceremony=waiting]{visibility:visible}}
/* Dark fantasy theme rules previously won the cascade and made cards opaque. */
body[data-theme][data-mode] :is(#agentApp,#supervisorApp) :is(.card,.sidebar,.supervisor-sidebar){background:color-mix(in srgb,var(--panel) 62%,transparent)!important;backdrop-filter:blur(10px) saturate(120%);-webkit-backdrop-filter:blur(10px) saturate(120%)}

/* Reference composition: two independent physical corner arrangements only. */
#pdEnvironment .pd-environment-frame{border:0!important;inset:0;mask:none;opacity:1;box-shadow:none!important}
.pd-world-corner{position:absolute;width:clamp(225px,25vw,360px);height:clamp(225px,25vw,360px);overflow:visible;pointer-events:none;filter:drop-shadow(3px 6px 4px color-mix(in srgb,var(--ink) 24%,transparent));opacity:.94}
.pd-world-nw{left:-18px;top:-18px}.pd-world-se{right:-24px;bottom:-28px;transform:rotate(180deg) scale(.88)}
#pdEnvironmentFront{clip-path:none!important;z-index:8500!important;isolation:isolate}
#pdEnvironmentFront .pd-world-corner{clip-path:polygon(0 0,100% 0,100% 8%,33% 11%,12% 32%,8% 100%,0 100%);filter:drop-shadow(2px 4px 3px color-mix(in srgb,var(--ink) 25%,transparent))}
#pdEnvironmentFront .pd-world-se{clip-path:polygon(0 0,100% 0,100% 10%,31% 12%,13% 32%,10% 100%,0 100%)}
body:has(.modal-overlay.show) #pdEnvironmentFront,body:has(.pd-flow-modal:not(.hidden)) #pdEnvironmentFront,body:has(#pdHuddlePrepare:not(.hidden)) #pdEnvironmentFront,body.modal-open #pdEnvironmentFront{visibility:hidden}
#pdEnvironment[data-mode=dark] .pd-world-corner{filter:drop-shadow(0 2px 8px color-mix(in srgb,var(--accent2) 26%,transparent));opacity:1}
#pdEnvironment .pd-environment-particles .pd-world-particle,#pdEnvironmentFront .pd-world-particle{display:block!important;position:absolute;left:var(--x)!important;right:auto!important;top:-24px!important;bottom:auto!important;width:var(--size)!important;height:var(--size)!important;opacity:0;border:0;box-shadow:none;filter:none;clip-path:none;border-radius:50%;background:var(--accent2);animation:var(--motion) var(--duration) linear var(--delay) infinite!important;transform-origin:center}
#pdEnvironment .pd-environment-particles .pd-world-particle:nth-child(3n){filter:blur(.7px)}
#pdEnvironment .pd-environment-particles .pd-world-particle:nth-child(4n){background:var(--accent)}
#pdEnvironmentFront .pd-world-particle{--x:1%;max-width:12px;max-height:18px}
#pdEnvironment .pd-environment-particles :is(.pd-particle-petal,.pd-particle-rose,.pd-particle-wisteria),#pdEnvironmentFront :is(.pd-particle-petal,.pd-particle-rose,.pd-particle-wisteria){border-radius:90% 15% 80% 25%;background:linear-gradient(130deg,var(--panel),var(--accent2) 35%,var(--accent));height:calc(var(--size)*.7)!important}
#pdEnvironment .pd-environment-particles .pd-particle-rose{border-radius:90% 75% 30% 55%;height:calc(var(--size)*.85)!important}
#pdEnvironment .pd-environment-particles .pd-particle-wisteria{border-radius:80% 80% 70% 70%;height:calc(var(--size)*1.45)!important}
#pdEnvironment .pd-environment-particles :is(.pd-particle-leaf,.pd-particle-maple),#pdEnvironmentFront :is(.pd-particle-leaf,.pd-particle-maple){border-radius:90% 0 90% 0;background:linear-gradient(45deg,var(--accent),var(--accent2));height:calc(var(--size)*1.45)!important}
#pdEnvironment .pd-environment-particles .pd-particle-maple{clip-path:polygon(50% 0,63% 25%,100% 12%,80% 55%,95% 73%,58% 80%,50% 100%,42% 80%,5% 73%,20% 55%,0 12%,37% 25%)}
#pdEnvironment .pd-environment-particles :is(.pd-particle-bubble,.pd-particle-pearl),#pdEnvironmentFront :is(.pd-particle-bubble,.pd-particle-pearl){background:radial-gradient(circle at 28% 25%,var(--panel),color-mix(in srgb,var(--accent2) 25%,transparent) 28%,transparent 65%);border:1px solid color-mix(in srgb,var(--accent2) 80%,var(--panel));box-shadow:inset -2px -2px 3px color-mix(in srgb,var(--accent) 30%,transparent)}
#pdEnvironment .pd-environment-particles .pd-particle-pearl{background:radial-gradient(circle at 30% 30%,var(--panel),var(--accent2) 70%,var(--accent))}
#pdEnvironment .pd-environment-particles :is(.pd-particle-shard,.pd-particle-prism),#pdEnvironmentFront :is(.pd-particle-shard,.pd-particle-prism){border-radius:0;clip-path:polygon(35% 0,80% 15%,100% 72%,45% 100%,0 60%);height:calc(var(--size)*1.7)!important;background:linear-gradient(105deg,var(--accent) 0 43%,var(--panel) 45% 51%,var(--accent2) 54%)}
#pdEnvironment .pd-environment-particles :is(.pd-particle-star,.pd-particle-glint,.pd-particle-spark),#pdEnvironmentFront :is(.pd-particle-star,.pd-particle-glint,.pd-particle-spark){clip-path:polygon(50% 0,61% 38%,100% 50%,61% 61%,50% 100%,39% 61%,0 50%,39% 38%);border-radius:0;background:var(--accent2)}
#pdEnvironment .pd-environment-particles .pd-particle-bolt,#pdEnvironmentFront .pd-particle-bolt{clip-path:polygon(42% 0,100% 0,65% 40%,100% 40%,18% 100%,38% 58%,0 58%);border-radius:0;height:calc(var(--size)*1.6)!important}
#pdEnvironment .pd-environment-particles :is(.pd-particle-streak,.pd-particle-dash,.pd-particle-pulse,.pd-particle-comet),#pdEnvironmentFront :is(.pd-particle-streak,.pd-particle-dash,.pd-particle-pulse,.pd-particle-comet){width:calc(var(--size)*3)!important;height:3px!important;border-radius:3px;background:linear-gradient(90deg,transparent,var(--accent2),var(--panel))}
#pdEnvironment .pd-environment-particles .pd-particle-arc{border-radius:50%;border-top:2px solid var(--accent2);background:transparent;width:22px!important;height:12px!important}
#pdEnvironment .pd-environment-particles .pd-particle-rune{border:1px solid var(--accent2);border-radius:0;background:transparent;clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}
#pdEnvironment .pd-environment-particles :is(.pd-particle-firefly,.pd-particle-ember),#pdEnvironmentFront :is(.pd-particle-firefly,.pd-particle-ember){width:5px!important;height:7px!important;background:var(--accent2);box-shadow:0 0 8px 3px color-mix(in srgb,var(--accent2) 40%,transparent)}
#pdEnvironment .pd-environment-particles :is(.pd-particle-dust,.pd-particle-mote,.pd-particle-ash,.pd-particle-air,.pd-particle-seed,.pd-particle-node){width:4px!important;height:4px!important;background:var(--accent2)}
#pdEnvironment .pd-environment-particles .pd-particle-mist,#pdEnvironmentFront .pd-particle-mist{width:32px!important;height:12px!important;filter:blur(5px);background:linear-gradient(90deg,transparent,var(--accent2),transparent);opacity:.3}
#pdEnvironment .pd-environment-particles .pd-particle-feather{clip-path:polygon(45% 0,90% 20%,85% 65%,50% 80%,30% 100%,40% 72%,10% 43%);height:24px!important;background:linear-gradient(80deg,var(--ink),var(--accent2))}
#pdEnvironment .pd-environment-particles .pd-particle-ribbon{width:66px!important;height:14px!important;background:linear-gradient(90deg,transparent,var(--accent2),var(--accent),transparent);border-radius:50%;filter:blur(2px)}
#pdEnvironment .pd-environment-particles .pd-particle-flower{clip-path:polygon(50% 0,62% 27%,95% 18%,80% 51%,95% 80%,64% 79%,50% 100%,32% 79%,5% 80%,20% 51%,5% 18%,37% 27%)}
#pdEnvironment[data-world=aurora] .pd-ribbon-band{animation:pd-aurora-ribbon 24s ease-in-out infinite alternate;transform-origin:top left}.pd-band-1{animation-delay:-8s!important}.pd-band-2{animation-delay:-17s!important}
@keyframes pd-sky-drift{0%{opacity:0;transform:translate(0,30vh)}25%,70%{opacity:.7}100%{opacity:0;transform:translate(var(--dx),70vh)}}
@keyframes pd-sakura-wind{0%{opacity:0;transform:translate(0,0) rotate(0)}10%,85%{opacity:.9}35%{transform:translate(calc(var(--dx)*.7),35vh) rotate(120deg)}65%{transform:translate(calc(var(--dx)*.15),65vh) rotate(230deg)}100%{opacity:0;transform:translate(var(--dx),110vh) rotate(var(--turn))}}
@keyframes pd-wisteria-sway{0%{opacity:0;transform:translate(0,0) rotate(-25deg)}12%,85%{opacity:.85}30%{transform:translate(-22px,32vh) rotate(30deg)}65%{transform:translate(25px,68vh) rotate(-35deg)}100%{opacity:0;transform:translate(-8px,108vh) rotate(30deg)}}
@keyframes pd-matcha-float{0%{opacity:0;transform:translate(0,10vh) rotate(-35deg)}15%,75%{opacity:.8}50%{transform:translate(var(--dx),55vh) rotate(40deg)}100%{opacity:0;transform:translate(0,100vh) rotate(130deg)}}
@keyframes pd-pearl-rise{0%{opacity:0;transform:translate(0,108vh) scale(.7)}20%,80%{opacity:.8}100%{opacity:0;transform:translate(20px,-5vh) scale(1.15)}}
@keyframes pd-striker-dash{0%,65%{opacity:0;transform:translate(-20px,25vh) rotate(-35deg)}70%{opacity:.9}85%,100%{opacity:0;transform:translate(160px,5vh) rotate(-35deg)}}
@keyframes pd-volley-serve{0%,60%{opacity:0;transform:translate(-20px,85vh) rotate(-20deg)}68%{opacity:.9}80%{transform:translate(80px,25vh) rotate(20deg)}90%,100%{opacity:0;transform:translate(140px,45vh) rotate(55deg)}}
@keyframes pd-hero-spark{0%,55%,100%{opacity:0;transform:translate(0,35vh) scale(.3)}65%{opacity:1;transform:translate(14px,30vh) scale(1.1)}82%{opacity:.7;transform:translate(30px,24vh) scale(.8)}}
@keyframes pd-mecha-hover{0%,100%{opacity:.25;transform:translate(0,40vh) rotate(-15deg)}50%{opacity:.85;transform:translate(24px,30vh) rotate(45deg)}}
@keyframes pd-moon-twinkle{0%,100%{opacity:.1;transform:translate(0,calc(var(--i)*4vh)) scale(.5)}40%{opacity:.95;transform:translate(8px,calc(var(--i)*4vh)) scale(1)}70%{opacity:.3;transform:translate(12px,calc(var(--i)*4vh)) scale(.7)}}
@keyframes pd-cyber-pulse{0%,60%{opacity:0;transform:translate(0,calc(var(--i)*4vh)) scaleX(.3)}68%{opacity:.9;transform:translate(40px,calc(var(--i)*4vh)) scaleX(1.2)}78%,100%{opacity:0;transform:translate(110px,calc(var(--i)*4vh)) scaleX(.5)}}
@keyframes pd-sorcerer-orbit{0%,100%{opacity:.1;transform:translate(0,calc(var(--i)*5vh)) rotate(0)}50%{opacity:.85;transform:translate(28px,calc(var(--i)*5vh - 25px)) rotate(180deg)}}
@keyframes pd-shinobi-wind{0%{opacity:0;transform:translate(0,100vh) rotate(-20deg)}15%,80%{opacity:.8}45%{transform:translate(24px,55vh) rotate(95deg)}100%{opacity:0;transform:translate(-10px,0) rotate(230deg)}}
@keyframes pd-noir-drift{0%,100%{opacity:0;transform:translate(0,calc(var(--i)*8vh))}50%{opacity:.45;transform:translate(38px,calc(var(--i)*8vh - 18px))}}
@keyframes pd-emerald-wisp{0%,100%{opacity:.1;transform:translate(0,80vh)}30%{opacity:.9;transform:translate(20px,55vh)}60%{opacity:.25;transform:translate(-18px,30vh)}85%{opacity:.7;transform:translate(25px,12vh)}}
@keyframes pd-abyss-rise{0%{opacity:0;transform:translate(0,110vh) scale(.55)}20%,75%{opacity:.65}50%{transform:translate(-18px,55vh) scale(.8)}100%{opacity:0;transform:translate(12px,0) scale(1.2)}}
@keyframes pd-galaxy-orbit{0%,100%{opacity:.12;transform:translate(0,calc(var(--i)*4vh)) rotate(-20deg)}40%{opacity:.9;transform:translate(24px,calc(var(--i)*4vh - 20px)) rotate(50deg)}70%{opacity:.4;transform:translate(6px,calc(var(--i)*4vh + 16px)) rotate(100deg)}}
@keyframes pd-phantom-drift{0%,100%{opacity:0;transform:translate(0,calc(var(--i)*8vh))}50%{opacity:.4;transform:translate(-24px,calc(var(--i)*8vh - 30px))}}
@keyframes pd-garden-fall{0%{opacity:0;transform:translate(0,0) rotate(0)}15%,80%{opacity:.85}50%{transform:translate(22px,50vh) rotate(95deg)}100%{opacity:0;transform:translate(-18px,110vh) rotate(200deg)}}
@keyframes pd-dragon-rise{0%{opacity:0;transform:translate(0,110vh) scale(1)}12%{opacity:1}35%{transform:translate(-18px,75vh) scale(.9)}65%{opacity:.7;transform:translate(22px,35vh) scale(.7)}100%{opacity:0;transform:translate(-10px,0) scale(.3)}}
@keyframes pd-fae-wander{0%,100%{opacity:.15;transform:translate(0,calc(var(--i)*5vh))}25%{opacity:.9;transform:translate(24px,calc(var(--i)*5vh - 16px))}60%{opacity:.2;transform:translate(-14px,calc(var(--i)*5vh - 35px))}80%{opacity:.8;transform:translate(18px,calc(var(--i)*5vh - 22px))}}
@keyframes pd-celestial-orbit{0%,100%{opacity:.15;transform:translate(0,calc(var(--i)*5vh)) rotate(0) scale(.5)}50%{opacity:1;transform:translate(18px,calc(var(--i)*5vh - 15px)) rotate(90deg) scale(1)}}
@keyframes pd-mermaid-tide{0%{opacity:0;transform:translate(0,108vh)}15%,80%{opacity:.8}33%{transform:translate(24px,70vh)}66%{transform:translate(-20px,35vh)}100%{opacity:0;transform:translate(18px,-3vh)}}
@keyframes pd-rose-drift{0%{opacity:0;transform:translate(0,0) rotate(30deg)}18%,78%{opacity:.85}50%{transform:translate(-24px,50vh) rotate(120deg)}100%{opacity:0;transform:translate(16px,108vh) rotate(240deg)}}
@keyframes pd-elven-orbit{0%,100%{opacity:.15;transform:translate(0,calc(var(--i)*5vh)) rotate(-10deg)}40%{opacity:.85;transform:translate(15px,calc(var(--i)*5vh - 25px)) rotate(30deg)}70%{opacity:.4;transform:translate(-15px,calc(var(--i)*5vh - 13px)) rotate(-30deg)}}
@keyframes pd-aurora-wave{0%,100%{opacity:.15;transform:translate(0,calc(var(--i)*8vh)) rotate(-12deg) scaleX(.7)}50%{opacity:.7;transform:translate(18px,calc(var(--i)*8vh - 22px)) rotate(12deg) scaleX(1.3)}}
@keyframes pd-aurora-ribbon{to{transform:translate(7px,12px) skewY(5deg);opacity:.6}}
@keyframes pd-sunken-rise{0%{opacity:0;transform:translate(0,108vh) scale(.8)}20%,70%{opacity:.7}100%{opacity:0;transform:translate(-20px,0) scale(1.1)}}
@keyframes pd-shrine-drift{0%{opacity:0;transform:translate(0,105vh) rotate(-10deg)}20%,80%{opacity:.8}50%{transform:translate(16px,50vh) rotate(10deg)}100%{opacity:0;transform:translate(-15px,0) rotate(-10deg)}}
@keyframes pd-crystal-float{0%,100%{opacity:.2;transform:translate(0,calc(var(--i)*5vh)) rotate(-25deg)}30%{opacity:.8;transform:translate(18px,calc(var(--i)*5vh - 18px)) rotate(25deg)}55%{opacity:1;transform:translate(8px,calc(var(--i)*5vh - 34px)) rotate(95deg)}80%{opacity:.5;transform:translate(-12px,calc(var(--i)*5vh - 16px)) rotate(160deg)}}
@keyframes pd-raven-drift{0%{opacity:0;transform:translate(0,0) rotate(-20deg)}20%,80%{opacity:.6}40%{transform:translate(20px,40vh) rotate(40deg)}75%{transform:translate(-15px,75vh) rotate(-25deg)}100%{opacity:0;transform:translate(12px,108vh) rotate(30deg)}}
@media(max-width:1000px){.pd-world-corner{width:245px;height:245px}#pdEnvironment .pd-environment-particles .pd-world-particle:nth-child(n+17){display:none!important}}
@media(max-width:600px){.pd-world-corner{width:170px;height:170px}.pd-world-nw{left:-14px;top:-18px}.pd-world-se{right:-18px;bottom:-20px}#pdEnvironment .pd-environment-particles .pd-world-particle:nth-child(n+11){display:none!important}#pdEnvironmentFront .pd-world-particle:nth-of-type(n+3){display:none!important}}
@media(prefers-reduced-motion:reduce){#pdEnvironment .pd-environment-particles,#pdEnvironmentFront .pd-world-particle{display:none!important}#pdEnvironmentFront{display:block!important}.pd-world-corner *{animation:none!important}}
@keyframes pd-sakura-gust{0%,72%{opacity:0;transform:translate(-30px,0) rotate(0)}78%,93%{opacity:.9}100%{opacity:0;transform:translate(100px,108vh) rotate(580deg)}}
/* Distinct material fragments; existing bounded particle lifetimes and motion remain. */
:is(#pdEnvironment .pd-environment-particles,#pdEnvironmentFront) .pd-particle-pitch{border-radius:0;background:transparent;border:1px solid var(--accent2);width:14px!important;height:9px!important;box-shadow:inset 4px 0 0 color-mix(in srgb,var(--accent) 35%,transparent)}
:is(#pdEnvironment .pd-environment-particles,#pdEnvironmentFront) .pd-particle-serve{border-radius:50%;border-top:2px solid var(--accent2);border-right:2px solid var(--accent);background:transparent;width:25px!important;height:14px!important}
:is(#pdEnvironment .pd-environment-particles,#pdEnvironmentFront) .pd-particle-burst{border-radius:0;clip-path:polygon(50% 0,62% 30%,95% 15%,74% 48%,100% 70%,65% 68%,50% 100%,35% 69%,0 75%,27% 47%,8% 15%,39% 29%);background:var(--accent2)}
:is(#pdEnvironment .pd-environment-particles,#pdEnvironmentFront) .pd-particle-gear{border-radius:2px;border:2px solid var(--accent);background:var(--accent2);clip-path:polygon(25% 0,75% 0,75% 25%,100% 25%,100% 75%,75% 75%,75% 100%,25% 100%,25% 75%,0 75%,0 25%,25% 25%)}
:is(#pdEnvironment .pd-environment-particles,#pdEnvironmentFront) .pd-particle-film{border-radius:0;width:8px!important;height:23px!important;border-inline:2px dotted var(--accent2);background:color-mix(in srgb,var(--ink) 35%,transparent)}
:is(#pdEnvironment .pd-environment-particles,#pdEnvironmentFront) .pd-particle-scale{background:transparent;border:2px solid var(--accent2);border-top:0;border-radius:0 0 70% 70%;height:calc(var(--size)*.7)!important}
:is(#pdEnvironment .pd-environment-particles,#pdEnvironmentFront) .pd-particle-spore{border-radius:80% 80% 25% 25%;width:9px!important;height:6px!important;background:var(--accent2);box-shadow:0 4px 0 -2px var(--accent),0 0 7px var(--accent2)}
:is(#pdEnvironment .pd-environment-particles,#pdEnvironmentFront) .pd-particle-relic{border-radius:1px;clip-path:polygon(0 0,72% 8%,100% 47%,79% 100%,12% 87%,29% 42%);background:linear-gradient(110deg,var(--accent),var(--panel));height:calc(var(--size)*1.3)!important}
