/* Adapt the existing visual design to server-rendered links and native forms. */
.guild-nav{display:grid;gap:4px;margin-top:16px}.nav-group{border-top:1px solid var(--trim);margin-top:5px;padding-top:5px}.nav-group summary{min-height:46px;padding:13px 10px;color:var(--gold);cursor:pointer;font-size:14px}.nav-group.current-group>summary{font-weight:700}.nav-group-links{padding:2px 0 6px 12px;border-left:1px solid var(--trim);margin-left:12px}.nav-group-links .nav-link{font-size:13px}.guild-nav summary:focus-visible,.guild-nav a:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.personal-home{margin-top:0!important}.personal-home .adventure-grid{margin-top:18px}.personal-home .adventure-image{display:none}.adventure-card{height:100%;display:flex;flex-direction:column}.adventure-copy{display:flex;flex-direction:column;flex:1;min-width:0}.adventure-copy h3{overflow-wrap:anywhere}.card-date{font-size:13px;color:var(--gold);font-weight:700;margin-bottom:10px}.card-facts{display:flex;gap:8px 14px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin:10px 0 14px}.card-location{overflow-wrap:anywhere}.adventure-copy .adventure-bottom{margin-top:auto;padding-top:16px;gap:12px}.adventure-copy .event-labels{margin-bottom:14px;flex-wrap:wrap}.signup-badge{border-color:var(--gold);color:var(--gold)}.member-hero{min-height:220px!important;height:260px;margin-top:24px}.member-hero .hero-content{padding:24px;max-width:68%}.member-hero h2{font-size:28px;line-height:1.2}.member-hero .hero-content p{font-size:13px;margin:12px 0}.member-hero .horde-banner{height:210px;top:10px}.member-hero .hero-caption{font-size:9px}.plan-extras{border:1px solid var(--trim);border-radius:6px;margin:16px 0}.plan-extras>summary{padding:18px;cursor:pointer;color:var(--gold);font-weight:700}.plan-extras>summary span{display:block;font-weight:400;font-size:12px;color:var(--muted);margin:8px 0 0 18px}.plan-extras-content{padding:0 18px 18px;display:grid;gap:18px}.plan-submit{display:grid;gap:10px}.mobile-member-actions{display:none}#event-signup{scroll-margin-top:90px}@media(max-width:760px){.has-member-actions main{padding-bottom:90px}.mobile-member-actions{display:grid;grid-template-columns:1fr 1fr 1.3fr;position:fixed;bottom:0;left:0;right:0;z-index:40;background:var(--sidebar);border-top:2px ridge var(--trim);padding:8px 10px calc(8px + env(safe-area-inset-bottom));gap:6px;box-shadow:0 -4px 18px #0006}.mobile-member-actions a{display:flex;align-items:center;justify-content:center;min-height:44px;font-size:12px;text-align:center;border:1px solid var(--trim);border-radius:4px;padding:8px}.mobile-member-actions .mobile-primary{background:var(--accent-soft);color:var(--gold);border-color:var(--gold)}.page-heading{align-items:flex-start;gap:16px;flex-wrap:wrap}.page-heading>.button{width:100%;justify-content:center}.section-heading{gap:12px;flex-wrap:wrap}.button,input:not([type=checkbox]):not([type=hidden]),select{min-height:44px}.account-form input:not([type=checkbox]),.account-form textarea,.account-form select{font-size:16px;max-width:100%}.php-form-row{grid-template-columns:1fr!important}.php-plan .plan-submit{position:sticky;bottom:0;padding:12px;background:var(--sidebar);border:1px solid var(--trim);z-index:10}.php-plan .plan-submit .button{width:100%}.member-hero{height:220px;min-height:220px!important}.member-hero .hero-content{max-width:100%;padding:18px}.member-hero h2{font-size:25px}.member-hero .hero-content p,.member-hero .hero-kicker,.member-hero .hero-caption{display:none}.member-hero .horde-banner{display:none}.personal-home .adventure-grid{grid-template-columns:1fr}.plan-extras-content{padding:0 12px 12px}.breadcrumb{min-width:0}.breadcrumb strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-right .timezone{display:none}.menu-is-open .mobile-member-actions{visibility:hidden}}
.discovery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:20px;margin:22px 0}.discovery-card{padding:24px;min-width:0}.discovery-card-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.discovery-card h2{margin:14px 0;overflow-wrap:anywhere}.companion-list{list-style:none;padding:0;margin:18px 0}.companion-list li{padding:12px 0;border-top:1px solid var(--trim)}.companion-list span{display:block;color:var(--muted);font-size:14px;margin-top:5px;overflow-wrap:anywhere}.companion-list a{color:var(--gold)}.discovery-card .button{white-space:normal}.discovery-intro .php-filters{margin-top:22px}.personal-adventures{border-top:3px solid var(--gold);background:linear-gradient(135deg,var(--accent-soft),var(--surface))}.personal-adventures .section-heading{gap:16px;flex-wrap:wrap}.matching-list{display:grid;gap:12px;margin-top:20px}.matching-event{display:flex;gap:18px;align-items:center;padding:18px;border:1px solid var(--trim);background:var(--surface);border-radius:6px}.matching-event:hover,.matching-event:focus-visible{border-color:var(--gold);background:var(--surface-high)}.matching-date{min-width:72px;text-align:center;flex-shrink:0;color:var(--gold)}.matching-date strong,.matching-date span{display:block}.matching-date strong{font:24px Georgia,serif}.matching-date span{font-size:12px;margin-top:5px}.matching-copy{min-width:0;flex:1}.matching-copy h3{font-size:19px;margin:6px 0;overflow-wrap:anywhere}.matching-copy p{font-size:13px;color:var(--muted);overflow-wrap:anywhere;margin:8px 0}.matching-copy .event-labels{gap:14px;color:var(--muted);font-size:12px;flex-wrap:wrap}.matching-arrow{color:var(--gold);font-size:24px}.matching-empty{padding:18px 0 4px}.matching-empty p{max-width:65ch;margin:12px 0}.account-form .check-label{align-items:flex-start;line-height:1.5}.account-form .check-label input{margin-top:4px;flex-shrink:0}@media(max-width:520px){.matching-event{gap:12px;padding:14px 10px}.matching-date{min-width:55px}.matching-date strong{font-size:20px}.matching-arrow{display:none}.discovery-card{padding:18px}.personal-adventures .section-heading h2{font-size:24px}}
.member-guide summary{cursor:pointer;color:var(--gold);font-size:18px;min-height:44px;padding:10px 0}.member-guide-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:18px;margin-top:18px}.member-guide-grid article{padding:16px;border:1px solid var(--trim);background:var(--accent-soft);min-width:0}.member-guide-grid h3{margin:10px 0}.member-guide-grid p{margin-bottom:16px}.member-guide-grid .button{white-space:normal}.event-planning-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:16px;margin:20px 0}.event-planning-summary>div,.schedule-conflicts{padding:16px;border:1px solid var(--trim);background:var(--accent-soft)}.event-planning-summary strong,.schedule-conflicts h4{color:var(--gold)}.event-planning-summary p,.schedule-conflicts p{margin-top:8px}.schedule-conflicts{margin:18px 0;border-left:4px solid var(--gold)}.schedule-conflicts ul{padding-left:22px;margin:12px 0}.schedule-conflicts li{margin:10px 0;overflow-wrap:anywhere}.schedule-conflicts a{text-decoration:underline}
.php-event-actions,.php-calendar-switch{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}.php-event-actions .button{white-space:normal}
.php-month{padding:18px}.php-month>.muted{margin:12px 0}.php-weekdays,.php-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.php-weekdays{color:var(--gold);text-align:center;padding:10px 0}.php-month-grid{border-top:1px solid var(--trim);border-left:1px solid var(--trim)}.php-month-day{min-height:130px;padding:8px;border-right:1px solid var(--trim);border-bottom:1px solid var(--trim);min-width:0}.php-month-day>time{font-family:Georgia,serif;color:var(--gold)}.php-month-day.outside{background:#0003}.php-month-day.outside>time{color:var(--muted)}.php-month-day.today{box-shadow:inset 0 0 0 2px var(--accent)}.php-calendar-event{display:block;background:var(--accent-soft);border-left:3px solid var(--accent);margin-top:8px;padding:7px;font-size:12px;overflow-wrap:anywhere}.php-calendar-event span,.php-calendar-event strong,.php-calendar-event small{display:block}.php-calendar-event span{font-size:10px;color:var(--muted)}.php-calendar-event.cancelled{border-left-color:var(--muted);background:var(--bg)}.php-calendar-event.cancelled strong{text-decoration:line-through}.php-calendar-event:hover{background:var(--surface-high)}
@media(max-width:600px){.php-month{padding:10px}.php-month .section-heading h2{font-size:18px}.php-month-day{padding:3px;min-height:88px}.php-calendar-event{padding:4px 2px;font-size:10px;border-left-width:2px}.php-calendar-event span{font-size:9px}.php-weekdays{font-size:12px}}
nav .nav-link{display:flex;align-items:center;gap:12px;width:100%;padding:10px;border:1px solid transparent;border-radius:2px;color:var(--muted);font-size:14px;min-height:44px}
nav .nav-link.active{color:var(--gold);border-color:var(--trim);background:linear-gradient(90deg,var(--accent-soft),var(--sidebar));box-shadow:inset 3px 0 var(--accent)}
nav .nav-link:hover{background:var(--surface-high);color:var(--text);border-color:var(--border)}
.race-sidebar-image img{position:absolute;width:100%;height:100%;inset:0}
.adventure-image>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.adventure-card{display:block}.php-section{padding:24px;margin:22px 0}.php-section>h2,.php-section>h3{margin-bottom:14px}.php-section>p{margin:10px 0}.php-section>.button{margin:10px 10px 10px 0}
.php-login{max-width:520px;margin:24px auto;padding:32px}.php-login>p{margin:14px 0}.php-login form{margin-top:24px}
.php-form-row{display:flex;gap:16px;flex-wrap:wrap}.php-form-row>label{flex:1;min-width:120px}
.php-plan{max-width:760px}.clock-fields{display:flex;align-items:end;gap:10px}.clock-fields label{max-width:110px}.clock-fields>span{padding-bottom:10px}.account-form fieldset{padding:14px}.account-form details[open]>label{display:grid;gap:8px;margin:16px 0}.account-form input[type=checkbox]{width:auto}
.php-filters{display:flex;gap:14px;flex-wrap:wrap;align-items:end;margin:20px 0}.php-filters label{display:grid;gap:6px;flex:1;min-width:160px}
.theme-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}.php-theme{overflow:hidden;padding-bottom:18px}.php-theme>a>img{width:100%;height:180px;object-fit:cover}.php-theme h2,.php-theme form{margin:16px}.php-theme .button{white-space:normal}
.php-member-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.php-member{display:flex;align-items:center;gap:16px;padding:24px}.php-member .avatar{width:56px;height:56px}.php-member h2{font-size:20px}.php-member-grid .php-section{margin:0}
.php-roster-row{display:flex;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid var(--border)}.php-roster-row small{display:block;color:var(--muted)}.php-roster-row form{display:grid;gap:10px;min-width:160px}.event-detail>h3{margin-top:18px}.event-detail details>summary{cursor:pointer;color:var(--gold);padding:10px 0}
.form-feedback:empty{display:none}.form-feedback{white-space:pre-wrap;overflow-wrap:anywhere}.form-feedback.error{color:#f2a69a}.php-menu-scrim[hidden]{display:none}.php-menu-scrim{position:fixed;inset:0;background:#000b;z-index:29}.mobile-close{display:none}.sidebar-user form{margin-left:auto}.sidebar-user .avatar{object-fit:cover}body.menu-is-open{overflow:hidden}
@media(max-width:760px){.mobile-close{display:block;align-self:flex-end;min-width:44px;min-height:44px}.sidebar.open{transform:translateX(0)}.php-section{padding:18px}.php-roster-row{flex-direction:column}.php-login{padding:22px}.php-filters{flex-direction:column;align-items:stretch}.php-filters label{width:100%}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.banner-canvas{display:none!important}.banner-static{opacity:1!important}}

.availability-week{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin:24px 0}.availability-day{min-width:0;border:1px solid var(--line,#67513a);padding:14px;border-radius:8px}.availability-day legend{font-weight:700;padding:0 6px}.availability-slot{display:flex;gap:8px;align-items:end;margin-bottom:12px}.availability-slot label{flex:1;min-width:0}.availability-slot select{width:100%;min-height:44px}.availability-slot button{min-height:44px}.availability-day>button{width:100%}

.avatar-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:16px;margin:20px 0}.avatar-choice{display:flex;flex-direction:column;align-items:center;gap:8px;width:100%;padding:12px;border:1px solid var(--line,#67513a);background:rgba(20,15,12,.5);color:inherit;border-radius:8px;cursor:pointer}.avatar-choice img{width:96px;height:96px;object-fit:cover;border-radius:50%}.avatar-choice:hover,.avatar-choice:focus-visible{outline:2px solid #d8b578;outline-offset:3px}.profile-avatar{width:96px;height:96px}
/* Supplied warlock artwork: softly blended into the Forsaken profile. */
.forsaken-profile { display:grid; grid-template-columns:minmax(180px,.8fr) minmax(0,1.5fr); align-items:center; gap:20px; padding:20px 24px; margin:0 0 24px; background:radial-gradient(ellipse at 70% 45%,#44304d66,transparent 70%),linear-gradient(115deg,#16121e,#211a2966); border-block:1px solid #77608455; }
.forsaken-profile-copy h2 { margin:12px 0; color:#e1d1ec; font:clamp(24px,3vw,38px)/1.2 Georgia,serif; }
.forsaken-profile-copy p { color:#c8bdcf; line-height:1.7; }
.forsaken-profile-sigil { display:block; margin-top:20px; color:#b394c6; font-size:24px; }
.forsaken-portraits { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.forsaken-portraits figure { min-width:0; margin:0; text-align:center; }
.forsaken-portraits img { display:block; width:100%; height:auto; aspect-ratio:4/5; object-fit:cover; mask-image:linear-gradient(transparent,#000 8%,#000 85%,transparent); -webkit-mask-image:linear-gradient(transparent,#000 8%,#000 85%,transparent); }
.forsaken-portraits figcaption { margin-top:-9px; position:relative; color:#d3c2dd; font:13px/1.5 Georgia,serif; }
@media(max-width:700px) { .forsaken-profile { grid-template-columns:1fr; padding:18px 12px; gap:6px; } .forsaken-profile-copy { text-align:center; } .forsaken-profile-copy h2 br { display:none; } .forsaken-profile-sigil { display:none; } .forsaken-portraits { max-width:460px; width:100%; margin-inline:auto; } }
/* Selected artwork fills the extra space on wide screens without covering controls. */
.warlock-desktop-art { display:none; }
.forsaken-portraits form { margin-top:14px; }
.forsaken-portraits .button { width:100%; white-space:normal; }
@media(min-width:1700px) {
 .has-warlock-art { --portrait-rail:clamp(430px,29vw,900px); --content-side-gap:max(0px,calc((100vw - 246px - var(--race-banner-rail) - var(--portrait-rail) - 1640px)/2)); }
 .has-warlock-art .main-shell { margin-right:var(--portrait-rail); }
 .has-warlock-art .main-shell main#main-content { max-width:1640px; }
 .warlock-desktop-art { display:flex; position:fixed; right:0; top:24px; bottom:12px; width:calc(var(--portrait-rail) + var(--content-side-gap)); padding-inline:12px; align-items:center; justify-content:center; pointer-events:none; }
 .warlock-desktop-art img { width:min(100%,900px); height:100%; object-fit:contain; object-position:center; filter:drop-shadow(0 0 25px #8a548333); mask-image:linear-gradient(to bottom,transparent,#000 7%,#000 90%,transparent),linear-gradient(to right,transparent,#000 8%,#000 94%,transparent); mask-composite:intersect; -webkit-mask-image:linear-gradient(to bottom,transparent,#000 7%,#000 90%,transparent),linear-gradient(to right,transparent,#000 8%,#000 94%,transparent); -webkit-mask-composite:source-in; }
}
.motif-mirrored>img,.motif-mirrored>picture>img{transform:scaleX(-1)}.motif-orientation{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px}.motif-orientation>div{min-width:0}.orientation-example{flex:0 0 180px}.orientation-example img{display:block;width:180px;height:225px;object-fit:contain}@media(max-width:600px){.motif-orientation{flex-direction:column;align-items:stretch}.orientation-example{flex:auto;align-self:center}}
.appearance-status { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:20px; padding:22px; margin-bottom:26px; }
.appearance-status h2 { margin:8px 0; }
.appearance-status p { margin:8px 0; }
.appearance-preview-note { flex:1 1 350px; padding:16px; border-left:3px solid var(--accent); background:var(--accent-soft); }
.appearance-preview-note .button { margin:4px 4px 0 0; }
.appearance-grid { grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr)); align-items:stretch; }
.appearance-grid .php-theme { display:flex; flex-direction:column; padding-bottom:0; }
.appearance-preview-link { display:block; position:relative; }
.appearance-preview-label { position:absolute; inset:auto 0 0; padding:24px 14px 12px; background:linear-gradient(transparent,#000d); color:#fff; font-size:13px; }
.appearance-card-copy { padding:16px 16px 0; flex:1; }
.appearance-card-copy h3 { margin:0 0 12px; }
.appearance-grid .button { width:100%; }
.appearance-selected { outline:2px solid var(--accent); outline-offset:2px; }
.appearance-warlock-heading { margin-top:36px; }
.portrait-preview { display:block; position:relative; }
.portrait-preview span { display:block; color:#dfcbee; font-size:13px; margin:0 0 15px; }
.portrait-selected { background:linear-gradient(#4d335133,transparent); box-shadow:inset 0 2px #c2a1ef; border-radius:3px; }
.portrait-selected .button:disabled,.appearance-selected .button:disabled { opacity:1; cursor:default; }
.forsaken-portraits img { max-height:430px; object-fit:contain; }
@media(max-width:420px) { .forsaken-portraits { grid-template-columns:1fr; max-width:300px; gap:24px; } .appearance-status { padding:16px; } .appearance-preview-note { min-width:0; flex-basis:100%; } .appearance-preview-note .button { width:100%; margin-inline:0; } }
.guild-empty { margin-block:20px; padding:24px; }
.guild-empty h3 { margin:10px 0; font:24px/1.3 Georgia,serif; color:var(--gold); }
.guild-empty p { max-width:680px; margin:12px auto 18px; line-height:1.7; }
.empty-actions { display:flex; flex-wrap:wrap; gap:12px; justify-content:center; }
.board-chronicle .guild-empty { padding:0; text-align:left; }
.board-chronicle .guild-empty p { margin-left:0; }
@media(max-width:480px) { .guild-empty { padding:18px 14px; } .empty-actions { flex-direction:column; } .empty-actions .button { width:100%; } }

.member-profile-heading{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap}.member-profile-heading h2{overflow-wrap:anywhere}.member-biography{white-space:pre-wrap;overflow-wrap:anywhere;max-width:70ch}.member-character{padding:1rem;border:1px solid var(--border,#574433);border-radius:8px;background:rgba(0,0,0,.16)}.member-character h3{overflow-wrap:anywhere}.php-member>div{min-width:0}.php-member h2{overflow-wrap:anywhere}

.goal-editor{margin:16px 0}.goal-editor summary{cursor:pointer;color:var(--gold);padding:12px 0;min-height:44px}.goal-editor[open]{border-top:1px solid var(--trim)}.goal-editor .account-form{margin-top:10px}
/* Ambient loops are staggered so the jungle never has a long shared idle phase. */
.forsaken-sky,.forsaken-ground{position:absolute;inset:0;width:100%;height:100%;overflow:hidden;pointer-events:none}.forsaken-ground{z-index:3}.forsaken-mist{animation:forsaken-mist-drift 27s ease-in-out infinite alternate;opacity:.4}.forsaken-mist-far{animation-duration:36s;animation-delay:-18s;animation-direction:alternate-reverse}@keyframes forsaken-mist-drift{0%{transform:translate(-100px,14px);opacity:.32}50%{opacity:.6}100%{transform:translate(120px,-16px);opacity:.42}}
.forsaken-weatherlight{opacity:0;animation:forsaken-weatherlight 37s ease-in-out -23s infinite}.forsaken-weatherlight-distant{animation-duration:53s;animation-delay:-9s}@keyframes forsaken-weatherlight{0%,72%,88%,100%{opacity:0}77%{opacity:.65}81%{opacity:.35}}
.forsaken-raven{opacity:0;animation:forsaken-raven-flight 29s linear infinite}.forsaken-raven-1{animation-delay:-1s;--raven-height:18px}.forsaken-raven-2{animation-delay:-2s;--raven-height:-12px}.forsaken-raven-3{animation-delay:-17s;animation-duration:39s;--raven-height:32px}.forsaken-raven-wings{transform-box:fill-box;transform-origin:center bottom;animation:forsaken-wingbeat 4.2s ease-in-out infinite}.forsaken-raven-1 .forsaken-raven-wings{animation-delay:-.6s}.forsaken-raven-2 .forsaken-raven-wings{animation-delay:-1.2s}@keyframes forsaken-wingbeat{0%,22%,44%{transform:scaleY(1)}11%,33%{transform:scaleY(-.45)}57%,90%{transform:scaleY(.4)}100%{transform:scaleY(1)}}@keyframes forsaken-raven-flight{0%{opacity:0;transform:translate(380px,calc(190px + var(--raven-height,0px))) scale(.6)}8%{opacity:.9}38%{opacity:.9;transform:translate(830px,calc(100px + var(--raven-height,0px))) scale(.72)}69%{opacity:.8;transform:translate(1110px,calc(60px + var(--raven-height,0px))) scale(.55)}78%,100%{opacity:0;transform:translate(1220px,calc(25px + var(--raven-height,0px))) scale(.45)}}
.forsaken-spiders{position:absolute;inset:0;width:100%;height:100%;z-index:2;overflow:hidden;pointer-events:none}
.forsaken-spider{opacity:0;animation:forsaken-spider-left 39s linear -9s infinite;filter:drop-shadow(0 1px 1px #a2a99355)}
.forsaken-spider>svg{overflow:visible;fill:#0d0c11}
.spider-legs,.spider-palps{fill:none;stroke:#17141c;stroke-width:1.05;stroke-linecap:round;stroke-linejoin:round}
.spider-legs{transform-origin:39px 30px;animation:forsaken-spider-step .3s ease-in-out infinite alternate}
.spider-legs-b{animation-direction:alternate-reverse}
.forsaken-spider-1{animation-delay:-7s}.forsaken-spider-2{animation-delay:-5s}
.forsaken-spider-3,.forsaken-spider-4,.forsaken-spider-5{animation-name:forsaken-spider-right;animation-duration:47s;animation-delay:-25s}
.forsaken-spider-4{animation-delay:-23s}.forsaken-spider-5{animation-delay:-21s}
.forsaken-spider-6,.forsaken-spider-7,.forsaken-spider-8{animation-name:forsaken-spider-ridge;animation-duration:53s;animation-delay:-4s}
.forsaken-spider-7{animation-delay:-2s}.forsaken-spider-8{animation-delay:0s}
.forsaken-spider:nth-child(3n+2)>svg{transform:translate(-8px,7px) scale(.85)}
.forsaken-spider:nth-child(3n)>svg{transform:translate(-12px,-6px) scale(.92)}
.forsaken-spider:nth-child(3n+2) .spider-legs{animation-duration:.34s;animation-delay:-.17s}
.forsaken-spider:nth-child(3n) .spider-legs{animation-duration:.27s;animation-delay:-.1s}
@keyframes forsaken-spider-step{from{transform:rotate(-5deg) scaleY(.95)}to{transform:rotate(5deg) scaleY(1.05)}}
/* Waypoints follow the left scree, right rock slope and lower foreground ridge. */
@keyframes forsaken-spider-left{0%{opacity:0;transform:translate(100px,520px) rotate(30deg)}5%{opacity:.85}12%{transform:translate(190px,577px) rotate(25deg)}24%{transform:translate(285px,625px) rotate(18deg)}36%{transform:translate(395px,658px) rotate(12deg)}48%{opacity:.85;transform:translate(505px,694px) rotate(20deg)}60%,100%{opacity:0;transform:translate(610px,727px) rotate(12deg)}}
@keyframes forsaken-spider-right{0%{opacity:0;transform:translate(1670px,778px) rotate(-12deg)}5%{opacity:.85}12%{transform:translate(1725px,765px) rotate(-20deg)}24%{transform:translate(1785px,743px) rotate(-12deg)}36%{transform:translate(1840px,719px) rotate(-32deg)}48%{opacity:.85;transform:translate(1895px,684px) rotate(-28deg)}60%,100%{opacity:0;transform:translate(1955px,645px) rotate(-35deg)}}
@keyframes forsaken-spider-ridge{0%{opacity:0;transform:translate(620px,718px) rotate(8deg)}5%{opacity:.85}12%{transform:translate(710px,734px) rotate(12deg)}24%{transform:translate(800px,747px) rotate(-3deg)}36%{transform:translate(885px,754px) rotate(14deg)}48%{opacity:.85;transform:translate(980px,774px) rotate(7deg)}60%,100%{opacity:0;transform:translate(1080px,790px) rotate(8deg)}}
.ambient-paused .forsaken-sky *,.ambient-paused .forsaken-ground *,.ambient-paused .forsaken-spiders *{animation-play-state:paused!important}@media(prefers-reduced-motion:reduce){.forsaken-sky,.forsaken-ground,.forsaken-spiders{display:none}.forsaken-sky *,.forsaken-ground *,.forsaken-spiders *{animation:none!important}}
/* Architectural details stay aligned with the image; ash drifts in the foreground. */
.forsaken-gate-light{opacity:.2;animation:forsaken-gate-breathe 23s ease-in-out -8s infinite}
@keyframes forsaken-gate-breathe{0%,100%{opacity:.2}19%{opacity:.42}37%{opacity:.28}62%{opacity:.72}79%{opacity:.38}}
.forsaken-window-shadow{fill:#08080d;opacity:0;animation:forsaken-window-pass 61s linear -15s infinite}
.forsaken-window-shadow-second{animation-duration:79s;animation-delay:-49s}
@keyframes forsaken-window-pass{0%,73%{opacity:0;transform:translateX(-12px)}76%{opacity:.8}81%{opacity:.85;transform:translateX(1px)}85%,100%{opacity:0;transform:translateX(13px)}}
.forsaken-ash{position:absolute;inset:0;z-index:4;overflow:hidden;pointer-events:none}
.forsaken-ash-flake{position:absolute;left:12%;top:25%;opacity:0;animation:forsaken-ash-fall 31s linear -8s infinite}
.forsaken-ash-flake i{display:block;width:2px;height:3px;background:#c0bbb3;border-radius:60% 20% 50% 30%;animation:forsaken-ash-turn 7s ease-in-out infinite alternate}
.forsaken-ash-1{left:23%;top:48%;animation-duration:37s;animation-delay:-24s}
.forsaken-ash-2{left:89%;top:17%;animation-duration:41s;animation-delay:-14s}
.forsaken-ash-3{left:96%;top:46%;animation-duration:33s;animation-delay:-27s}
.forsaken-ash-4{left:79%;top:65%;animation-duration:43s;animation-delay:-6s}
.forsaken-ash-5{left:33%;top:12%;animation-duration:39s;animation-delay:-30s}
.forsaken-ash-6{left:8%;top:72%;animation-duration:29s;animation-delay:-17s}
.forsaken-ash-7{left:93%;top:74%;animation-duration:47s;animation-delay:-35s}
.forsaken-ash-flake:nth-child(even) i{width:1.5px;height:2px;animation-duration:9s}
@keyframes forsaken-ash-fall{0%{opacity:0;transform:translate(0,-15px)}12%{opacity:.45}35%{transform:translate(-18px,45px)}65%{opacity:.35;transform:translate(12px,110px)}88%,100%{opacity:0;transform:translate(-10px,170px)}}
@keyframes forsaken-ash-turn{from{transform:rotate(-30deg) scaleX(.5)}to{transform:rotate(80deg) scaleX(1)}}
.ambient-paused .forsaken-ash *{animation-play-state:paused!important}
@media(prefers-reduced-motion:reduce){.forsaken-ash{display:none}.forsaken-ash *{animation:none!important}}
.jungle-atmosphere{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:hidden}
.jungle-eyes{opacity:0;animation:jungle-eye-pulse 19s ease-in-out infinite}.jungle-eyes-temple{animation-delay:-4s}.jungle-eyes-gate{animation-duration:23s;animation-delay:-12s}.jungle-eyes-stairs{animation-duration:21s;animation-delay:-7s}.jungle-eyes-edge{animation-duration:27s;animation-delay:-18s}
@keyframes jungle-eye-pulse{0%,38%,100%{opacity:0}54%{opacity:.9}63%{opacity:.75}76%{opacity:.22}89%{opacity:0}}
.jungle-bird{opacity:0;animation:jungle-bird-flight 23s linear infinite}.jungle-bird-two{animation-delay:-.7s;--bird-lane:14px}.jungle-bird-three{animation-delay:-1.4s;--bird-lane:-12px}.jungle-bird-four,.jungle-bird-five,.jungle-bird-six{animation-name:jungle-bird-return;animation-duration:29s;animation-delay:-13s}.jungle-bird-five{animation-delay:-13.8s;--bird-lane:12px}.jungle-bird-six{animation-delay:-14.6s;--bird-lane:-9px}
@keyframes jungle-bird-flight{0%{opacity:0;transform:translate(470px,calc(185px + var(--bird-lane,0px)))}6%{opacity:.8}35%{opacity:.8;transform:translate(950px,calc(105px + var(--bird-lane,0px)))}68%{opacity:.7;transform:translate(1350px,calc(85px + var(--bird-lane,0px)))}76%,100%{opacity:0;transform:translate(1470px,calc(95px + var(--bird-lane,0px)))}}
@keyframes jungle-bird-return{0%{opacity:0;transform:translate(1520px,calc(68px + var(--bird-lane,0px)))}7%{opacity:.65}38%{opacity:.7;transform:translate(1050px,calc(150px + var(--bird-lane,0px)))}68%{opacity:.6;transform:translate(610px,calc(120px + var(--bird-lane,0px)))}77%,100%{opacity:0;transform:translate(490px,calc(110px + var(--bird-lane,0px)))}}
.jungle-wings{transform-box:fill-box;transform-origin:center bottom;animation:jungle-wingbeat 4.6s ease-in-out infinite}.jungle-bird-two .jungle-wings,.jungle-bird-five .jungle-wings{animation-delay:-.6s}.jungle-bird-three .jungle-wings,.jungle-bird-six .jungle-wings{animation-delay:-1.3s}
@keyframes jungle-wingbeat{0%,20%,40%{transform:scaleY(1)}10%,30%{transform:scaleY(-.4)}52%,88%{transform:scaleY(.45)}100%{transform:scaleY(1)}}
.jungle-ground-effects{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none;overflow:hidden}.jungle-mist{opacity:.4;animation:jungle-mist-drift 22s ease-in-out infinite alternate}.jungle-mist-far{animation-duration:29s;animation-delay:-14s;animation-direction:alternate-reverse}@keyframes jungle-mist-drift{0%{transform:translate(-110px,18px);opacity:.3}50%{opacity:.55}100%{transform:translate(130px,-18px);opacity:.48}}
.jungle-fireflies{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden}.jungle-firefly{position:absolute;width:4px;height:4px;opacity:0;animation:jungle-firefly-drift var(--spark-duration,13s) ease-in-out var(--spark-delay,0s) infinite}@keyframes jungle-firefly-drift{0%,100%{opacity:0;transform:translate(0,0)}25%{opacity:1;transform:translate(7px,-8px)}50%{opacity:.4;transform:translate(-5px,-18px)}72%{opacity:.85;transform:translate(10px,-25px)}90%{opacity:0;transform:translate(13px,-32px)}}
.jungle-firefly-0{left:16%;top:69%;--spark-delay:0.0s;--spark-duration:11s}.jungle-firefly-1{left:20.5%;top:84%;--spark-delay:-2.3s;--spark-duration:12s}.jungle-firefly-2{left:87.5%;top:65%;--spark-delay:-4.6s;--spark-duration:13s}.jungle-firefly-3{left:94.5%;top:79%;--spark-delay:-6.9s;--spark-duration:14s}.jungle-firefly-4{left:97.5%;top:48%;--spark-delay:-9.2s;--spark-duration:15s}.jungle-firefly-5{left:80.5%;top:88%;--spark-delay:-11.5s;--spark-duration:16s}.jungle-firefly-6{left:32%;top:91%;--spark-delay:-13.8s;--spark-duration:17s}
.firefly-light{display:block;width:3px;height:3px;border-radius:50%;background:#fffce0;box-shadow:0 0 3px 1px #efffb2b3,0 0 9px 3px #bfed654d;animation:firefly-shimmer 3.7s ease-in-out var(--spark-delay,0s) infinite}.jungle-firefly:nth-child(even) .firefly-light{width:2px;height:2px;animation-duration:4.9s;box-shadow:0 0 3px 1px #caffb6a6,0 0 7px 2px #94d56d40}@keyframes firefly-shimmer{0%,100%{opacity:.65;transform:scale(.85)}42%{opacity:1;transform:scale(1.12)}72%{opacity:.8;transform:scale(.95)}}
.ambient-paused .jungle-fireflies *,.ambient-paused .jungle-atmosphere *,.ambient-paused .jungle-ground-effects *{animation-play-state:paused!important}@media(prefers-reduced-motion:reduce){.jungle-atmosphere,.jungle-ground-effects,.jungle-fireflies{display:none}.jungle-atmosphere *,.jungle-ground-effects *,.jungle-fireflies *{animation:none!important}}

body{isolation:isolate;--race-banner-rail:0px}.world-backdrop{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;background:var(--bg)}.world-backdrop>picture>img{width:100%;height:100%;object-fit:cover;object-position:center;opacity:.72}.world-backdrop::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#08070b55,#08070b20 45%,#08070b55),linear-gradient(#08070b35,#08070b90)}.main-shell main#main-content{background:linear-gradient(90deg,transparent,#100e14a6 5%,#100e14a6 95%,transparent)}.race-desktop-banner{display:none}.has-warlock-art{--content-side-gap:max(0px,calc((100vw - 246px - var(--race-banner-rail) - var(--portrait-rail) - 1640px)/2))}
@media(min-width:1900px){body{--race-banner-rail:clamp(220px,12vw,380px)}.main-shell{margin-left:calc(246px + var(--race-banner-rail))}.race-desktop-banner{display:flex;position:fixed;left:246px;top:60px;bottom:24px;width:var(--race-banner-rail);align-items:center;justify-content:center;pointer-events:none}.race-desktop-banner .horde-banner{position:relative;inset:auto;width:min(100%,calc((100vh - 100px)*.6667));padding:4px}.has-warlock-art{--content-side-gap:max(0px,calc((100vw - 246px - var(--race-banner-rail) - var(--portrait-rail) - 1640px)/2))}}
@media(max-width:760px){.world-backdrop>picture>img{opacity:.45}.world-backdrop::after{background:#08070b70}}
.appearance-base-designs{margin-bottom:26px}.appearance-base-designs>summary{cursor:pointer;font:22px Georgia,serif;color:var(--gold);padding:16px 0;min-height:44px}.motif-gallery-intro{margin-top:26px;scroll-margin-top:20px}.motif-gallery-intro .php-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));align-items:end}.motif-gallery-intro label{min-width:0}.motif-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:20px}.motif-card{display:flex;flex-direction:column;overflow:hidden;min-width:0}.motif-image{position:relative;display:block;background:#0d0c11}.motif-image img{display:block;width:100%;height:310px;object-fit:contain}.motif-image>span{display:block;text-align:center;color:var(--gold);padding:12px;min-height:44px}.motif-copy{padding:16px;flex:1}.motif-copy h3{font:20px/1.4 Georgia,serif;margin:10px 0;overflow-wrap:anywhere}.motif-card form{padding:0 16px 16px}.motif-card .button{width:100%;white-space:normal;min-height:44px}.motif-pagination{display:flex;align-items:center;justify-content:center;gap:18px;margin:24px 0;flex-wrap:wrap}.profile-motif-link{display:flex;align-items:center;justify-content:space-between;gap:20px}.profile-motif-link img{width:120px;height:150px;object-fit:contain}@media(max-width:480px){.motif-gallery-grid{grid-template-columns:1fr}.profile-motif-link{flex-wrap:wrap}}
.availability-overview{padding:16px;border:1px solid var(--trim);background:var(--accent-soft);margin:18px 0}.availability-overview h3{color:var(--gold);margin:0 0 12px}.availability-saved-slots{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:12px}.availability-saved-slots span{display:block;margin-top:6px;line-height:1.6}.availability-exceptions{margin:18px 0}.availability-exceptions summary{cursor:pointer;padding:12px 0;color:var(--gold);min-height:44px}.availability-exceptions li{padding:8px 0}.availability-exceptions a{text-decoration:underline}
.directory-characters{list-style:none;padding:0;margin:14px 0}.directory-characters li{padding:10px 0;border-top:1px solid var(--trim);overflow-wrap:anywhere}.directory-characters span{display:block;color:var(--muted);font-size:13px;line-height:1.6;margin-top:4px}
.plan-content-help{padding:14px;border-left:3px solid var(--gold);background:var(--accent-soft)}.plan-content-help p{margin:0;line-height:1.6}.plan-content-help .button{margin-top:12px}.plan-content-help [hidden]{display:none!important}
.character-activity{margin:18px 0}.character-next-round{margin-top:16px;padding:14px;border:1px solid var(--trim);border-left:3px solid var(--gold);background:var(--accent-soft)}.character-next-round h3{margin:10px 0;overflow-wrap:anywhere}.character-next-round a{text-decoration:underline}.character-next-round p{font-size:14px;line-height:1.6}#character-create{scroll-margin-top:24px}
.goal-notice{padding:18px;margin-top:18px;border:1px solid var(--trim)}.goal-notice.is-unread{border-left:3px solid var(--gold);background:var(--accent-soft)}.goal-notice h3{overflow-wrap:anywhere}.goal-notice-events{list-style:none;padding:0;margin:12px 0}.goal-notice-events a{display:block;padding:12px 0;overflow-wrap:anywhere;min-height:44px}.goal-notice-events li+li{border-top:1px solid var(--trim)}
.notification-status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:16px;margin:20px 0}.notification-status-grid article{border:1px solid var(--trim);background:var(--accent-soft);padding:16px;min-width:0;overflow-wrap:anywhere}.notification-status-grid h3{font-size:18px;margin:0 0 12px}.notification-status-grid strong{color:var(--gold)}.notification-status-grid p{line-height:1.6}.notification-status-grid a{display:inline-block;padding:10px 0;min-height:44px}#event-notifications,#notification-pause,#reminders{scroll-margin-top:24px}
.discovery-intro .php-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));align-items:end}.discovery-intro .php-filters label{min-width:0}.discovery-intro .php-filters .check-label{align-self:center;min-height:44px}.discovery-own-goal{color:var(--gold);border-left:3px solid var(--gold);padding-left:10px;margin:12px 0}.discovery-result-count{margin:18px 0;line-height:1.6}
.goal-status-filters{margin-top:24px}.goal-mail-hint{font-size:14px;line-height:1.6}.goal-matches{margin:18px 0;padding:14px;border:1px solid var(--trim);background:var(--accent-soft)}.goal-matches h3{color:var(--gold);margin:0 0 8px}.goal-matches ul{list-style:none;margin:0;padding:0}.goal-matches li+li{border-top:1px solid var(--trim)}.goal-matches a{display:block;padding:12px 0;overflow-wrap:anywhere}.goal-matches a span{display:block;color:var(--muted);margin-top:6px;font-size:14px}
.event-at-a-glance{margin:20px 0;border:1px solid var(--trim);border-left:3px solid var(--gold);padding:18px;background:var(--accent-soft)}.event-end{margin:0}.event-end span{display:block;margin-top:8px;color:var(--muted);line-height:1.6}.event-personal-state{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:18px;padding-top:18px;border-top:1px solid var(--trim)}.event-personal-state h3{margin:8px 0;color:var(--gold)}.event-personal-state>div{min-width:0;overflow-wrap:anywhere}.event-jump-links{display:flex;flex-wrap:wrap;gap:10px}.event-jump-links .button{min-height:44px;white-space:normal;text-align:center}#event-signup,#event-roster{scroll-margin-top:24px}.php-roster-row>div{min-width:0;overflow-wrap:anywhere}.php-roster-row small a{text-decoration:underline}@media(max-width:760px){.event-personal-state{align-items:stretch;flex-direction:column}.event-jump-links .button{flex:1}.event-at-a-glance{padding:14px}.event-detail h2{overflow-wrap:anywhere}}
.event-scopes{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}.event-scopes .button{min-height:44px;text-align:center}.event-reset{padding:12px 0;align-self:end}.event-result-count{margin:18px 0;line-height:1.6}@media(max-width:600px){.event-scopes{display:grid;grid-template-columns:1fr}.php-filters{grid-template-columns:1fr!important}.php-calendar-switch .button{flex:1;text-align:center;min-height:44px}.event-reset{text-align:center}}

.hero.hero-with-banner.member-hero{grid-template-columns:100px minmax(0,1fr) 100px;padding:10px 12px 28px}.hero.hero-with-banner.member-hero .hero-content{padding:12px 6px}.hero.hero-with-banner.member-hero .horde-banner{height:190px;max-height:190px;top:auto}.hero.hero-with-banner.member-hero .hero-content h2{font-size:28px}.hero.hero-with-banner.member-hero .hero-content p{font-size:13px}@media(max-width:760px){.hero.hero-with-banner.member-hero{grid-template-columns:1fr;height:190px;min-height:190px!important;padding:12px}.hero.hero-with-banner.member-hero .hero-content{grid-column:1;grid-row:1}.hero.hero-with-banner.member-hero .horde-banner{display:none}.hero.hero-with-banner.member-hero .hero-content h2{font-size:25px}}

/* Stimmen der Erde: quiet, image-bound landscape motion. */
.tauren-atmosphere,.tauren-seeds{position:absolute;inset:0;width:100%;height:100%;overflow:hidden;pointer-events:none}.tauren-atmosphere{z-index:1}.tauren-seeds{z-index:2}
.tauren-sunlight{opacity:.3;animation:tauren-sunlight 37s ease-in-out -12s infinite}@keyframes tauren-sunlight{0%,100%{opacity:.25}32%{opacity:.65}64%{opacity:.35}82%{opacity:.5}}
.tauren-valley-mist{opacity:.5;animation:tauren-valley-mist 31s ease-in-out -9s infinite alternate}.tauren-valley-mist-far{animation-duration:43s;animation-delay:-25s;animation-direction:alternate-reverse}@keyframes tauren-valley-mist{from{transform:translate(-27px,4px);opacity:.35}to{transform:translate(31px,-6px);opacity:.7}}
.tauren-smoke-source{--smoke-duration:18s;--smoke-drift:16px}.tauren-smoke-source-1{--smoke-duration:21s;--smoke-drift:22px}.tauren-smoke-source-2{--smoke-duration:24s;--smoke-drift:12px}.tauren-smoke-source-3{--smoke-duration:20s;--smoke-drift:14px}
.tauren-smoke-puff{opacity:0;transform-origin:0 0;animation:tauren-smoke-rise var(--smoke-duration,18s) linear infinite}.tauren-smoke-puff-1{animation-delay:calc(var(--smoke-duration,18s) * -.1667)}.tauren-smoke-puff-2{animation-delay:calc(var(--smoke-duration,18s) * -.3333)}.tauren-smoke-puff-3{animation-delay:calc(var(--smoke-duration,18s) * -.5)}.tauren-smoke-puff-4{animation-delay:calc(var(--smoke-duration,18s) * -.6667)}.tauren-smoke-puff-5{animation-delay:calc(var(--smoke-duration,18s) * -.8333)}
@keyframes tauren-smoke-rise{0%{opacity:0;transform:translate(0,0) scale(.3) rotate(-8deg)}12%{opacity:.72;transform:translate(1px,-9px) scale(.55) rotate(0deg)}35%{opacity:.58;transform:translate(-3px,-29px) scale(.95) rotate(13deg)}65%{opacity:.28;transform:translate(7px,-56px) scale(1.45) rotate(-5deg)}100%{opacity:0;transform:translate(var(--smoke-drift,16px),-92px) scale(2.1) rotate(18deg)}}
.tauren-eagle{opacity:0;animation:tauren-eagle-flight 53s linear -11s infinite}.tauren-eagle-1{animation-duration:61s;animation-delay:-29s}.tauren-eagle-2{animation-duration:71s;animation-delay:-44s}.tauren-eagle-wings{transform-origin:0 0;animation:tauren-eagle-wing 9s ease-in-out infinite}.tauren-eagle-1 .tauren-eagle-wings{animation-delay:-3s}.tauren-eagle-2 .tauren-eagle-wings{animation-delay:-6s}@keyframes tauren-eagle-wing{0%,12%,24%,100%{transform:scaleY(1)}6%,18%{transform:scaleY(.35)}35%,88%{transform:scaleY(.8)}}
@keyframes tauren-eagle-flight{0%{opacity:0;transform:translate(440px,215px) scale(.5) rotate(-8deg)}8%{opacity:.8}25%{transform:translate(750px,123px) scale(.65) rotate(-3deg)}45%{transform:translate(1080px,66px) scale(.55) rotate(5deg)}65%{opacity:.7;transform:translate(1420px,64px) scale(.45) rotate(8deg)}82%,100%{opacity:0;transform:translate(1710px,131px) scale(.35) rotate(12deg)}}
.tauren-seed{position:absolute;left:12%;top:70%;opacity:0;animation:tauren-seed-drift 33s linear -8s infinite}.tauren-seed i{display:block;width:3px;height:2px;background:#ebd8a0;border-radius:70% 30%;box-shadow:0 0 4px #ead39933;animation:tauren-seed-turn 8s ease-in-out infinite alternate}.tauren-seed i::after{content:"";position:absolute;left:-3px;top:-2px;width:5px;height:4px;border-top:1px solid #eee1bb77;border-radius:50%}
.tauren-seed-1{left:20%;top:88%;animation-duration:41s;animation-delay:-26s}.tauren-seed-2{left:79%;top:67%;animation-duration:37s;animation-delay:-17s}.tauren-seed-3{left:91%;top:84%;animation-duration:43s;animation-delay:-32s}.tauren-seed-4{left:5%;top:47%;animation-duration:39s;animation-delay:-21s}.tauren-seed-5{left:86%;top:42%;animation-duration:47s;animation-delay:-9s}.tauren-seed-6{left:30%;top:79%;animation-duration:35s;animation-delay:-13s}.tauren-seed-7{left:96%;top:60%;animation-duration:49s;animation-delay:-38s}
@keyframes tauren-seed-drift{0%{opacity:0;transform:translate(-25px,10px)}15%{opacity:.65}40%{transform:translate(25px,-16px)}70%{opacity:.45;transform:translate(70px,-8px)}93%,100%{opacity:0;transform:translate(110px,-32px)}}@keyframes tauren-seed-turn{from{transform:rotate(-20deg)}to{transform:rotate(100deg)}}
.ambient-paused .tauren-atmosphere *,.ambient-paused .tauren-seeds *{animation-play-state:paused!important}@media(prefers-reduced-motion:reduce){.tauren-atmosphere,.tauren-seeds{display:none}.tauren-atmosphere *,.tauren-seeds *{animation:none!important}}

.tauren-cliff-mist{opacity:.26;animation:tauren-cliff-drift 37s ease-in-out -13s infinite alternate}.tauren-cliff-mist-1{animation-duration:43s;animation-delay:-31s;animation-direction:alternate-reverse}.tauren-cliff-mist-2{animation-duration:47s;animation-delay:-19s}.tauren-cliff-mist-3{animation-duration:41s;animation-delay:-27s;animation-direction:alternate-reverse}
@keyframes tauren-cliff-drift{0%{opacity:.18;transform:translate(-18px,8px)}45%{opacity:.38}100%{opacity:.23;transform:translate(24px,-12px)}}

/* Blut und Eisen: image-bound fires, smoke, dust and distant flight traffic. */
.orc-atmosphere{position:absolute;inset:0;width:100%;height:100%;z-index:1;overflow:hidden;pointer-events:none}
.orc-gate-glow{opacity:.3;animation:orc-gate-glow 19s ease-in-out -7s infinite}@keyframes orc-gate-glow{0%,100%{opacity:.3}28%{opacity:.55}53%{opacity:.35}79%{opacity:.65}}
.orc-fire-halo{opacity:.4;animation:orc-fire-halo 5.7s ease-in-out -2s infinite}.orc-fire-source-1 .orc-fire-halo{animation-duration:7.3s;animation-delay:-4s}@keyframes orc-fire-halo{0%,100%{opacity:.38}23%{opacity:.65}47%{opacity:.45}71%{opacity:.58}}
.orc-flame-tongue{transform-origin:0 0;animation:orc-flame-tongue 1.7s ease-in-out -.4s infinite}.orc-flame-tongue-1{animation-duration:2.3s;animation-delay:-1.5s}.orc-flame-tongue-2{animation-duration:1.3s;animation-delay:-.8s}.orc-flame-tongue-3{animation-duration:1.9s;animation-delay:-1.2s}.orc-flame-tongue-4{animation-duration:1.1s;animation-delay:-.3s}.orc-fire-source-1 .orc-flames{transform:scaleX(-1)}.orc-fire-source-1 .orc-flame-tongue{animation-direction:reverse}
@keyframes orc-flame-tongue{0%,100%{transform:skewX(-5deg) scale(.9,.8);opacity:.75}21%{transform:skewX(4deg) scale(.8,1.08);opacity:.9}48%{transform:skewX(-2deg) scale(1,.88);opacity:.8}73%{transform:skewX(7deg) scale(.85,1.16);opacity:.85}}
.orc-fire-heart{transform-origin:0 0;animation:orc-fire-heart 3.1s ease-in-out -1s infinite}.orc-fire-source-1 .orc-fire-heart{animation-delay:-2.3s}@keyframes orc-fire-heart{0%,100%{transform:scale(.9,.85);opacity:.65}45%{transform:scale(1,1.1);opacity:.85}75%{transform:scale(.85,.95);opacity:.7}}
.orc-ember{opacity:0;animation:orc-ember 7s linear infinite}.orc-ember-1{animation-delay:-1.7s;--ember-drift:-9px}.orc-ember-2{animation-delay:-3.5s;--ember-drift:13px}.orc-ember-3{animation-delay:-5.2s;--ember-drift:3px}.orc-fire-source-1 .orc-ember{animation-duration:9s}@keyframes orc-ember{0%{opacity:0;transform:translate(0,0)}15%{opacity:.8}60%{opacity:.45}100%{opacity:0;transform:translate(var(--ember-drift,7px),-58px)}}
.orc-smoke-source{--orc-smoke-time:21s}.orc-smoke-source-1{--orc-smoke-time:25s}.orc-smoke-source-2{--orc-smoke-time:29s}.orc-smoke-puff{opacity:0;animation:orc-smoke-rise var(--orc-smoke-time,21s) linear infinite}.orc-smoke-puff-1{animation-delay:calc(var(--orc-smoke-time,21s) * -.1667)}.orc-smoke-puff-2{animation-delay:calc(var(--orc-smoke-time,21s) * -.3333)}.orc-smoke-puff-3{animation-delay:calc(var(--orc-smoke-time,21s) * -.5)}.orc-smoke-puff-4{animation-delay:calc(var(--orc-smoke-time,21s) * -.6667)}.orc-smoke-puff-5{animation-delay:calc(var(--orc-smoke-time,21s) * -.8333)}@keyframes orc-smoke-rise{0%{opacity:0;transform:translate(0,0) scale(.35)}16%{opacity:.7}40%{opacity:.5;transform:translate(9px,-30px) scale(1)}70%{opacity:.25;transform:translate(25px,-57px) scale(1.5)}100%{opacity:0;transform:translate(42px,-86px) scale(2)}}
.orc-ground-dust{opacity:0;animation:orc-dust-drift 37s ease-in-out -12s infinite}.orc-ground-dust-far{animation-duration:49s;animation-delay:-31s}@keyframes orc-dust-drift{0%{opacity:0;transform:translate(-55px,7px)}25%{opacity:.5}60%{opacity:.3;transform:translate(20px,-4px)}90%,100%{opacity:0;transform:translate(70px,-8px)}}
.orc-bird{opacity:0;animation:orc-bird-glide 51s linear -9s infinite}.orc-bird-1{animation-duration:63s;animation-delay:-27s}.orc-bird-2{animation-duration:71s;animation-delay:-42s}@keyframes orc-bird-glide{0%{opacity:0;transform:translate(270px,135px) scale(.45)}10%{opacity:.65}40%{transform:translate(520px,83px) scale(.55) rotate(-6deg)}70%{opacity:.55;transform:translate(760px,70px) scale(.4) rotate(7deg)}88%,100%{opacity:0;transform:translate(940px,105px) scale(.3)}}
.orc-flight-arrival{opacity:0;animation:orc-arrival-west 83s linear -18s infinite}.orc-flight-arrival-1{animation-name:orc-arrival-east;animation-duration:109s;animation-delay:-64s}.orc-wyvern-wings{transform-origin:0 0;animation:orc-wyvern-wing 8.4s ease-in-out infinite}.orc-flight-arrival-1 .orc-wyvern-wings{animation-delay:-1.8s}@keyframes orc-wyvern-wing{0%,16%,32%,100%{transform:scaleY(1)}8%,24%{transform:scaleY(-.35)}44%,86%{transform:scaleY(.7)}}
@keyframes orc-arrival-west{0%{opacity:0;transform:translate(420px,170px) scale(.65) rotate(-4deg)}6%{opacity:.7}14%{transform:translate(635px,153px) scale(.6) rotate(0deg)}25%{transform:translate(841px,178px) scale(.48) rotate(9deg)}35%{opacity:.6;transform:translate(980px,225px) scale(.32) rotate(12deg)}41%{opacity:.3;transform:translate(1030px,236px) scale(.22) rotate(0deg)}44%,100%{opacity:0;transform:translate(1050px,239px) scale(.15)}}
@keyframes orc-arrival-east{0%{opacity:0;transform:translate(1920px,50px) scale(-.5,.5) rotate(-6deg)}6%{opacity:.65}16%{transform:translate(1760px,57px) scale(-.45,.45) rotate(-4deg)}28%{transform:translate(1580px,102px) scale(-.35,.35) rotate(-10deg)}37%{opacity:.5;transform:translate(1485px,153px) scale(-.25,.25)}43%,100%{opacity:0;transform:translate(1450px,175px) scale(-.15,.15)}}
.ambient-paused .orc-atmosphere *{animation-play-state:paused!important}@media(prefers-reduced-motion:reduce){.orc-atmosphere{display:none}.orc-atmosphere *{animation:none!important}}

.orc-wind-drift{animation:orc-shared-wind 32s ease-in-out -8s infinite}@keyframes orc-shared-wind{0%,100%{transform:translateX(0)}24%{transform:translateX(3px)}43%{transform:translateX(12px)}60%{transform:translateX(5px)}78%{transform:translateX(9px)}}
.orc-stone-light{mix-blend-mode:screen}
.orc-flight-arrival-2{animation-name:orc-departure;animation-duration:127s;animation-delay:-91s}
@keyframes orc-departure{0%,12%{opacity:0;transform:translate(1050px,239px) scale(-.15,.15)}16%{opacity:.4;transform:translate(1037px,233px) scale(-.2,.2)}22%{opacity:.65;transform:translate(1000px,210px) scale(-.28,.28) rotate(12deg)}32%{transform:translate(895px,160px) scale(-.38,.38) rotate(8deg)}45%{opacity:.65;transform:translate(720px,100px) scale(-.5,.5) rotate(3deg)}59%,100%{opacity:0;transform:translate(460px,65px) scale(-.6,.6)}}
.atmosphere-settings{margin-bottom:24px;padding:20px}.atmosphere-settings select{max-width:260px}.atmosphere-settings label{display:grid;gap:8px}.atmosphere-settings p{color:var(--muted);line-height:1.6}
html:not([data-atmosphere]) .world-backdrop>svg,html:not([data-atmosphere]) .world-backdrop>div,html[data-atmosphere="off"] .world-backdrop>svg,html[data-atmosphere="off"] .world-backdrop>div{display:none!important}
html[data-atmosphere="off"] .world-backdrop *{animation-play-state:paused!important}
html[data-atmosphere="subtle"] .world-backdrop>svg,html[data-atmosphere="subtle"] .world-backdrop>div{opacity:.55}
html[data-atmosphere="subtle"] :is(.orc-flight-arrival-1,.orc-flight-arrival-2,.forsaken-spider-3,.forsaken-spider-4,.forsaken-spider-5,.forsaken-spider-6,.forsaken-spider-7,.forsaken-spider-8,.tauren-eagle-2,.jungle-bird-four,.jungle-bird-five,.jungle-bird-six){display:none}

.orc-brazier-smoke{--brazier-cycle:13s}.orc-fire-source-1 .orc-brazier-smoke{--brazier-cycle:16s}
.orc-brazier-wisp{opacity:0;animation:orc-brazier-rise var(--brazier-cycle,13s) linear infinite}.orc-brazier-wisp-1{animation-delay:calc(var(--brazier-cycle,13s) * -.2)}.orc-brazier-wisp-2{animation-delay:calc(var(--brazier-cycle,13s) * -.4)}.orc-brazier-wisp-3{animation-delay:calc(var(--brazier-cycle,13s) * -.6)}.orc-brazier-wisp-4{animation-delay:calc(var(--brazier-cycle,13s) * -.8)}
@keyframes orc-brazier-rise{0%{opacity:0;transform:translate(0,-15px) scale(.35)}18%{opacity:.5;transform:translate(1px,-29px) scale(.65)}42%{opacity:.4;transform:translate(5px,-49px) scale(1.05)}70%{opacity:.2;transform:translate(13px,-75px) scale(1.6)}100%{opacity:0;transform:translate(25px,-109px) scale(2.2)}}

.cursor-settings{padding:20px;margin-bottom:24px}.cursor-settings label{display:grid;gap:8px}.cursor-settings select{max-width:300px}.cursor-settings p{color:var(--muted);line-height:1.6}.cursor-previews{display:flex;flex-wrap:wrap;gap:20px;margin:18px 0}.cursor-previews figure{margin:0;display:grid;justify-items:center;gap:7px}.cursor-previews figcaption{font-size:13px}.cursor-try-link{display:inline-block;padding:10px 0;text-decoration:underline}
@media (hover:hover) and (pointer:fine) and (forced-colors:none){
html[data-theme="horde"]{--guild-cursor:url("/art/cursors/horde-default.svg") 6 3,default;--guild-link-cursor:url("/art/cursors/horde-link.svg") 6 3,pointer}
html[data-theme="orc"]{--guild-cursor:url("/art/cursors/orc-default.svg") 6 3,default;--guild-link-cursor:url("/art/cursors/orc-link.svg") 6 3,pointer}
html[data-theme="undead"]{--guild-cursor:url("/art/cursors/undead-default.svg") 6 3,default;--guild-link-cursor:url("/art/cursors/undead-link.svg") 6 3,pointer}
html[data-theme="tauren"]{--guild-cursor:url("/art/cursors/tauren-default.svg") 6 3,default;--guild-link-cursor:url("/art/cursors/tauren-link.svg") 6 3,pointer}
html[data-theme="troll"]{--guild-cursor:url("/art/cursors/troll-default.svg") 6 3,default;--guild-link-cursor:url("/art/cursors/troll-link.svg") 6 3,pointer}
html[data-cursor="fantasy"],html[data-cursor="fantasy"] body{cursor:var(--guild-cursor,default)}
html[data-cursor="fantasy"] :is(a[href],button,summary,select,label[for],input[type="button"],input[type="submit"],input[type="reset"],input[type="checkbox"],input[type="radio"],[role="button"]),html[data-cursor="fantasy"] :is(a[href],button,summary,[role="button"]) *{cursor:var(--guild-link-cursor,pointer)}
html[data-cursor="fantasy"] :is(textarea,[contenteditable="true"],input:not([type]),input[type="text"],input[type="email"],input[type="password"],input[type="search"],input[type="url"],input[type="tel"],input[type="number"]){cursor:text}
html[data-cursor="fantasy"] input[type="range"]{cursor:ew-resize}
html[data-cursor="fantasy"] :is(button:disabled,input:disabled,select:disabled,textarea:disabled,[aria-disabled="true"]),html[data-cursor="fantasy"] :is(button:disabled,[aria-disabled="true"]) *{cursor:not-allowed}
}

/* Horde fortress: distant dragons and restrained volcanic glow. */
.horde-atmosphere{position:absolute;inset:0;width:100%;height:100%;z-index:1;overflow:hidden;pointer-events:none}
.horde-lava{opacity:.25;animation:horde-lava-pulse 17s ease-in-out -5s infinite}.horde-lava-1{animation-duration:23s;animation-delay:-13s}.horde-lava-2{animation-duration:19s;animation-delay:-9s}.horde-lava-3{animation-duration:29s;animation-delay:-21s}@keyframes horde-lava-pulse{0%,100%{opacity:.22}28%{opacity:.52}57%{opacity:.3}78%{opacity:.6}}
.horde-vent{--vent-cycle:26s}.horde-vent-1{--vent-cycle:31s}.horde-vent-2{--vent-cycle:29s}.horde-vent-3{--vent-cycle:24s}.horde-vent-glow{opacity:.5;animation:horde-lava-pulse 21s ease-in-out -9s infinite}
.horde-smoke-puff{opacity:0;animation:horde-smoke-rise var(--vent-cycle,26s) linear infinite}.horde-smoke-puff-1{animation-delay:calc(var(--vent-cycle,26s) * -.1667)}.horde-smoke-puff-2{animation-delay:calc(var(--vent-cycle,26s) * -.3333)}.horde-smoke-puff-3{animation-delay:calc(var(--vent-cycle,26s) * -.5)}.horde-smoke-puff-4{animation-delay:calc(var(--vent-cycle,26s) * -.6667)}.horde-smoke-puff-5{animation-delay:calc(var(--vent-cycle,26s) * -.8333)}
@keyframes horde-smoke-rise{0%{opacity:0;transform:translate(0,0) scale(.8,.5)}16%{opacity:.8}40%{opacity:.72;transform:translate(-19px,-25px) scale(1.65,.95)}70%{opacity:.45;transform:translate(-48px,-52px) scale(2.5,1.25)}100%{opacity:0;transform:translate(-82px,-83px) scale(3.3,1.6)}}
.horde-ember{filter:drop-shadow(0 0 2px #b83a20);opacity:0;animation:horde-ember-rise 13s linear -3s infinite}.horde-ember-1{animation-duration:17s;animation-delay:-11s;--horde-spark-x:-19px}.horde-ember-2{animation-duration:21s;animation-delay:-7s;--horde-spark-x:9px}@keyframes horde-ember-rise{0%{opacity:0;transform:translate(0,0) scale(.8)}12%{opacity:1}48%{opacity:.85}70%{opacity:.5}92%,100%{opacity:0;transform:translate(var(--horde-spark-x,-10px),-135px) scale(.45)}}
.horde-dragon{opacity:0;animation:horde-dragon-flight 89s linear -16s infinite}.horde-dragon-1{animation-name:horde-dragon-return;animation-duration:113s;animation-delay:-61s}.horde-dragon-2{animation-duration:137s;animation-delay:-99s}.horde-dragon-wings{transform-origin:0 0;animation:horde-dragon-wing 11s ease-in-out infinite}.horde-dragon-1 .horde-dragon-wings{animation-delay:-4s}.horde-dragon-2 .horde-dragon-wings{animation-delay:-7s}@keyframes horde-dragon-wing{0%,20%,100%{transform:scaleY(1)}10%{transform:scaleY(-.4)}34%,87%{transform:scaleY(.65)}}
@keyframes horde-dragon-flight{0%{opacity:0;transform:translate(240px,188px) scale(.55) rotate(-4deg)}8%{opacity:.75}23%{transform:translate(460px,146px) scale(.48) rotate(-2deg)}40%{opacity:.7;transform:translate(700px,132px) scale(.38) rotate(3deg)}57%,100%{opacity:0;transform:translate(910px,151px) scale(.25) rotate(5deg)}}
@keyframes horde-dragon-return{0%{opacity:0;transform:translate(1230px,115px) scale(-.32,.32)}8%{opacity:.65}25%{transform:translate(1000px,84px) scale(-.4,.4) rotate(-3deg)}43%{opacity:.65;transform:translate(745px,110px) scale(-.46,.46) rotate(-4deg)}61%,100%{opacity:0;transform:translate(450px,155px) scale(-.5,.5)}}
html[data-atmosphere="subtle"] :is(.horde-dragon-1,.horde-dragon-2,.horde-ember-2){display:none}
.ambient-paused .horde-atmosphere *{animation-play-state:paused!important}@media(prefers-reduced-motion:reduce){.horde-atmosphere{display:none}.horde-atmosphere *{animation:none!important}}

.horde-ember-1{fill:#ce4f2b}.horde-ember-2{fill:#f08040}

.horde-vent-4{--vent-cycle:22s}.horde-vent-5{--vent-cycle:27s}

/* Tower plumes follow the painted smoke up and right, independently of ground fog. */
.horde-vent-4 .horde-smoke-puff{animation-name:horde-tower-smoke-west}.horde-vent-5 .horde-smoke-puff{animation-name:horde-tower-smoke-east}
@keyframes horde-tower-smoke-west{0%{opacity:0;transform:translate(0,-4px) scale(.4)}20%{opacity:.7;transform:translate(7px,-27px) scale(.7)}45%{opacity:.6;transform:translate(26px,-56px) scale(1.05)}70%{opacity:.35;transform:translate(53px,-88px) scale(1.4)}100%{opacity:0;transform:translate(88px,-116px) scale(1.8)}}
@keyframes horde-tower-smoke-east{0%{opacity:0;transform:translate(0,-4px) scale(.45)}20%{opacity:.7;transform:translate(9px,-30px) scale(.8)}45%{opacity:.6;transform:translate(29px,-66px) scale(1.2)}70%{opacity:.35;transform:translate(62px,-109px) scale(1.65)}100%{opacity:0;transform:translate(96px,-150px) scale(2.1)}}

.appearance-toolbar{position:sticky;top:76px;z-index:15;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 20px;padding:15px 18px;margin-bottom:24px;background:var(--sidebar,#171419);box-shadow:0 5px 20px #0006;border:1px solid var(--trim)}.appearance-current{display:grid;gap:4px;min-width:0}.appearance-current strong,.appearance-current>span:last-child{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.appearance-current>span:last-child{font-size:13px;color:var(--muted)}.appearance-toolbar form{display:flex;align-items:center;gap:10px;flex-wrap:wrap;max-width:340px}.appearance-toolbar .form-feedback:empty{display:none}.appearance-toolbar nav{grid-column:1/-1;display:flex;gap:6px;flex-wrap:wrap;border-top:1px solid var(--trim);padding-top:8px}.appearance-toolbar nav a{padding:6px 10px;font-size:13px;border-radius:4px}.appearance-toolbar nav a:hover{background:var(--accent-soft)}
.appearance-section{padding:20px;margin-bottom:24px}.appearance-section>summary{cursor:pointer;font:20px Georgia,serif;color:var(--gold);padding:4px 0}.appearance-section>p{line-height:1.6;color:var(--muted)}.appearance-section .atmosphere-settings,.appearance-section .cursor-settings{margin:18px 0 0}.appearance-section[id],.appearance-motifs,#motif-gallery{scroll-margin-top:245px}.favorite-save{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:20px 0}.favorite-save label,.favorite-edit label{display:grid;gap:8px;flex:1;min-width:0}.favorite-save input{width:100%;max-width:460px}.favorite-save .form-feedback{flex-basis:100%;margin:0}.appearance-favorite-list{display:grid;gap:12px}.appearance-favorite{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;border-top:1px solid var(--trim);padding-top:16px}.appearance-favorite h3{margin:0;overflow-wrap:anywhere}.appearance-favorite p{font-size:13px;color:var(--muted);overflow-wrap:anywhere}.favorite-edit{grid-column:1/-1}.favorite-edit>summary{cursor:pointer;color:var(--gold);padding:8px 0}.favorite-edit form{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:12px 0}.favorite-edit .form-feedback{flex-basis:100%}
@media(max-width:760px){.appearance-toolbar{top:64px;padding:10px;gap:8px;grid-template-columns:minmax(0,1fr) auto}.appearance-toolbar .eyebrow{font-size:9px}.appearance-toolbar strong{font-size:14px}.appearance-toolbar .button{padding:9px;font-size:12px}.appearance-toolbar form{max-width:145px}.appearance-toolbar .text-link{font-size:12px}.appearance-toolbar nav{justify-content:space-between;gap:0}.appearance-toolbar nav a{padding:8px 5px}.appearance-section{padding:14px}.appearance-section[id],.appearance-motifs,#motif-gallery{scroll-margin-top:260px}.favorite-save{display:grid}.favorite-save input{max-width:none}.appearance-favorite{grid-template-columns:1fr}.appearance-favorite>form .button{width:100%}.menu-is-open .appearance-toolbar{visibility:hidden}}

/* Picture wrappers retain the existing decorative geometry. */
.world-backdrop>picture,.warlock-desktop-art>picture,.banner-cloth>picture{display:contents}

.hero>.hero-landscape{display:contents}
/* Optional quest objectives keep event planning compact on mobile and desktop. */
.plan-quest-objectives{border:1px solid rgba(188,152,94,.3);border-radius:10px;padding:14px 16px;background:rgba(10,12,12,.28)}
.plan-quest-objectives>summary{cursor:pointer;font-weight:700;color:var(--text,#eee2cb)}
.plan-quest-objectives>summary span{font-size:.8rem;font-weight:400;color:var(--muted,#baad97);margin-left:10px}
.plan-quest-content{display:grid;gap:12px;margin-top:14px}
.plan-quest-content p{margin:0}
.plan-quest-list{display:grid;gap:6px;max-height:320px;overflow-y:auto;overscroll-behavior:contain}
.plan-quest-list .plan-quest-option{display:flex;align-items:flex-start;gap:10px;padding:10px;border:1px solid transparent;border-radius:7px;cursor:pointer}
.plan-quest-list .plan-quest-option:has(input:checked){border-color:rgba(188,152,94,.45);background:rgba(188,152,94,.1)}
.plan-quest-list .plan-quest-option input{width:auto;flex-shrink:0;margin-top:3px}
.plan-quest-option span{min-width:0;overflow-wrap:anywhere}
.plan-quest-option strong{font-size:.92rem;font-weight:600}.plan-quest-option small{display:block;color:var(--muted,#baad97);font-size:.78rem;margin-top:3px}
.plan-quest-objectives[hidden],.plan-quest-list .plan-quest-option[hidden]{display:none}
.event-quest-objectives{padding:16px;border:1px solid rgba(188,152,94,.3);border-radius:10px;margin:18px 0;background:rgba(10,12,12,.25)}
.event-quest-objectives h3{margin:0 0 10px}.event-quest-objectives ul{padding-left:20px;display:grid;gap:8px}.event-quest-objectives .muted{margin-bottom:0}

.retail-picture-preview{object-fit:contain;max-width:100%;background:#17151a;border:1px solid #79603d;border-radius:6px;margin:12px 0}
.character-quest-matches{border:1px solid var(--trim);background:var(--surface);border-radius:8px;padding:18px;margin:18px 0}.character-quest-matches ul{list-style:none;padding:0;margin:12px 0}.character-quest-matches li+li{border-top:1px solid var(--trim);margin-top:10px;padding-top:10px}.character-quest-matches a{display:grid;gap:5px;color:var(--gold);text-decoration:none}.character-quest-matches a:hover strong{text-decoration:underline}.character-quest-matches a span{font-size:.85rem;color:var(--muted)}
.character-questbook{margin:20px 0;padding:18px;border:1px solid var(--trim);border-radius:8px;background:linear-gradient(135deg,rgba(167,127,66,.08),transparent)}.character-book-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.character-book-heading h3{margin:0;color:var(--gold)}.character-questbook ul{padding:0;margin:14px 0 0;list-style:none}.character-questbook li{padding:12px 0;border-top:1px solid var(--trim)}.character-quest-title{display:block;font-weight:600;color:var(--gold);line-height:1.5;overflow-wrap:anywhere}.character-quest-actions{margin-top:6px;font-size:.85rem}.character-quest-actions a{display:inline-flex;align-items:center;min-height:36px}.character-questbook>p{line-height:1.65}.quest-card:target{scroll-margin-top:24px;outline:2px solid var(--gold);outline-offset:3px}

/* Erben des Windes: original Skyborn fan-art theme. */
html[data-theme=skyborn]{--bg:#0e181c;--sidebar:#132126;--surface:#192a2e;--surface-high:#20353a;--border:#3c5557;--text:#e5eeea;--muted:#a8babb;--accent:#a8cec6;--accent-bright:#c4e5dc;--accent-soft:#233e42;--button:#3d6768;--trim:#887c5b;--gold:#d5c194;--radius:4px;--banner-filter:none;--guild-cursor:url("/art/cursors/skyborn-default.svg") 6 3,default;--guild-link-cursor:url("/art/cursors/skyborn-link.svg") 6 3,pointer}
.skyborn-atmosphere{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:hidden}
.skyborn-cloud{animation:skyborn-cloud-drift 48s linear infinite;transform-origin:center}.skyborn-cloud-far{animation-duration:65s;animation-delay:-23s}
.skyborn-wind{opacity:0;stroke-dasharray:75 580;animation:skyborn-wind-pass 23s linear infinite}.skyborn-wind-second{animation-duration:31s;animation-delay:-12s}
.skyborn-leaf{opacity:0;animation:skyborn-leaf-pass 29s linear infinite}.skyborn-leaf-second{animation-delay:-16s;animation-duration:37s}
@keyframes skyborn-cloud-drift{0%{transform:translateX(-35px);opacity:0}18%,78%{opacity:1}100%{transform:translateX(45px);opacity:0}}
@keyframes skyborn-wind-pass{0%,65%,100%{opacity:0;stroke-dashoffset:0}70%{opacity:.24}89%{opacity:.12}95%{opacity:0;stroke-dashoffset:-560}}
@keyframes skyborn-leaf-pass{0%,62%{opacity:0;transform:translate(150px,360px) rotate(-10deg)}66%{opacity:.5}88%{opacity:.35}100%{opacity:0;transform:translate(1180px,635px) rotate(220deg)}}
html.ambient-paused .skyborn-atmosphere *{animation-play-state:paused!important}
html[data-atmosphere=subtle] .skyborn-leaf{display:none}
@media(prefers-reduced-motion:reduce){.skyborn-atmosphere{display:none}}

/* Shared prevailing wind: left to right; gentle illumination only on the scenery. */
html[data-theme=skyborn] .world-backdrop>picture>img{opacity:.86;filter:brightness(1.08)}
html[data-theme=skyborn] .campfire-page .world-backdrop>picture>img{opacity:1;filter:brightness(1.08)}
.race-sidebar-art-skyborn .race-sidebar-image::after{content:"";position:absolute;left:32%;top:16%;width:38%;height:35%;border-radius:50%;pointer-events:none;background:radial-gradient(ellipse,#bdeee545,#83d5cf18 45%,transparent 70%);opacity:.12;animation:skyborn-crystal-light 7s ease-in-out infinite alternate}
@keyframes skyborn-crystal-light{from{opacity:.1}to{opacity:.42}}
html[data-atmosphere=off] .race-sidebar-art-skyborn .race-sidebar-image::after{display:none}
html[data-atmosphere=subtle] .race-sidebar-art-skyborn .race-sidebar-image::after{animation-duration:11s}
html.ambient-paused .race-sidebar-art-skyborn .race-sidebar-image::after{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.race-sidebar-art-skyborn .race-sidebar-image::after{animation:none;opacity:.1}}
@media(max-width:760px){html[data-theme=skyborn] .world-backdrop>picture>img{opacity:.62}html[data-theme=skyborn] .campfire-page .world-backdrop>picture>img{opacity:1}}

/* Compact section links: override the global vertical navigation direction. */
.appearance-toolbar nav{flex-direction:row;flex-wrap:nowrap;gap:4px}
.appearance-toolbar nav a{display:flex;align-items:center;justify-content:center;min-height:44px;white-space:nowrap;border:1px solid transparent}
.appearance-toolbar nav a:focus-visible{outline:2px solid var(--gold);outline-offset:1px}
.appearance-toolbar nav a[aria-current=location]{background:var(--accent-soft);border-color:var(--trim);color:var(--gold)}
@media(max-width:760px){.appearance-toolbar nav a{flex:1;font-size:12px;padding:6px 3px}.appearance-section[id],.appearance-motifs,#motif-gallery{scroll-margin-top:230px}}
/* Small accents follow painted scenery, with no additional image downloads. */
.skyborn-lantern{opacity:.5;animation:skyborn-lantern-flicker 6.7s ease-in-out infinite}
.skyborn-lantern-second{animation-duration:8.3s;animation-delay:-3s}.skyborn-lantern-third{animation-duration:5.9s;animation-delay:-4s}
@keyframes skyborn-lantern-flicker{0%,100%{opacity:.4}19%{opacity:.64}27%{opacity:.47}43%{opacity:.58}61%{opacity:.38}78%{opacity:.62}}
.skyborn-water{opacity:.5;stroke-dasharray:13 31 7 43;animation:skyborn-water-flow 3.8s linear infinite}
.skyborn-water-second{opacity:.3;animation-duration:4.9s;animation-delay:-2s}
@keyframes skyborn-water-flow{to{stroke-dashoffset:-94}}
.skyborn-spray{opacity:.25;animation:skyborn-spray-drift 13s ease-in-out infinite}
.skyborn-spray-second{animation-duration:17s;animation-delay:-8s}
@keyframes skyborn-spray-drift{0%,100%{opacity:.15;transform:translate(-3px,2px)}50%{opacity:.55;transform:translate(8px,-5px)}}
html[data-atmosphere=subtle] .skyborn-water{opacity:.25;animation-duration:6s}
html[data-atmosphere=subtle] .skyborn-lantern{animation-duration:12s}
html[data-atmosphere=subtle] .skyborn-spray{display:none}

/* Locally hosted destination medallions keep tiny calendar entries recognizable. */
.event-destination-icon{width:32px;height:32px;object-fit:contain;flex:none;vertical-align:middle}
.php-calendar-event .event-destination-icon{display:block;margin:0 0 5px}
.adventure-copy h3 .event-destination-icon{margin:0 8px 4px 0}
.php-calendar-event.cancelled .event-destination-icon{filter:grayscale(1);opacity:.65}
.dungeon-directory{padding:18px;margin-bottom:22px}
.dungeon-directory>summary{cursor:pointer;font-family:Georgia,serif;font-size:20px;color:var(--gold);padding:5px 0}
.dungeon-directory>p{margin:14px 0;font-size:14px;line-height:1.6}
.dungeon-directory-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}
.dungeon-destination{display:flex;gap:12px;align-items:center;padding:12px;border:1px solid var(--trim);border-radius:5px;background:var(--surface);min-width:0}
.dungeon-destination img{flex:none}.dungeon-destination span{min-width:0}.dungeon-destination strong,.dungeon-destination small{display:block;overflow-wrap:anywhere}.dungeon-destination small{font-size:12px;color:var(--muted);margin-top:4px}
.dungeon-destination:hover{background:var(--accent-soft)}.dungeon-destination:focus-visible,.dungeon-directory>summary:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.dungeon-destination.dungeon-level-match{border-color:var(--gold);background:var(--accent-soft)}
.dungeon-level-match .dungeon-level-status{color:var(--gold);font-weight:700}
@media(max-width:600px){.php-calendar-event .event-destination-icon{width:24px;height:24px}.dungeon-directory-grid{grid-template-columns:1fr}}

/* Stratholme's supplied square artwork remains readable at calendar size. */
.event-destination-icon[src*="/stratholme.webp"],.dungeon-destination img[src*="/stratholme.webp"]{border-radius:6px;border:1px solid var(--trim);object-fit:cover}


/* Dungeon artwork sits beside the time and title on roomy calendar cells. */
.php-calendar-event:has(.event-destination-preview){display:grid;grid-template-columns:minmax(0,44%) minmax(0,1fr);gap:4px 8px;padding:6px;align-content:start}
.php-calendar-event .event-destination-preview{grid-column:1;grid-row:1/4;display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:5px;margin:0}
.php-calendar-event:has(.event-destination-preview)>span,.php-calendar-event:has(.event-destination-preview)>strong,.php-calendar-event:has(.event-destination-preview)>small{grid-column:2;min-width:0}
.php-calendar-event:has(.event-destination-preview) strong{font-size:13px;line-height:1.4}
@media(max-width:760px){.php-calendar-event:has(.event-destination-preview){grid-template-columns:minmax(0,1fr);gap:4px;padding:2px}.php-calendar-event .event-destination-preview{grid-column:1;grid-row:auto}.php-calendar-event:has(.event-destination-preview)>span,.php-calendar-event:has(.event-destination-preview)>strong,.php-calendar-event:has(.event-destination-preview)>small{grid-column:1}.php-calendar-event:has(.event-destination-preview) strong{font-size:10px}}

/* Keep all seven days visible; artwork adapts to the actual cell width. */
.calendar-scroll{max-width:100%;min-width:0}
.calendar-scroll:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.calendar-scroll .php-weekdays,.calendar-scroll .php-month-grid{min-width:0;width:100%}
.calendar-scroll .php-month-day{container-type:inline-size;container-name:calendar-day}
.calendar-scroll .php-calendar-event:has(.event-destination-preview){grid-template-columns:minmax(0,44%) minmax(0,1fr);gap:4px 8px;padding:6px}
.calendar-scroll .php-calendar-event .event-destination-preview{width:100%;max-width:164px;height:auto;aspect-ratio:1;grid-column:1;grid-row:1/4}
.calendar-scroll .php-calendar-event:has(.event-destination-preview)>span,.calendar-scroll .php-calendar-event:has(.event-destination-preview)>strong,.calendar-scroll .php-calendar-event:has(.event-destination-preview)>small{grid-column:2}
.calendar-scroll .php-calendar-event:has(.event-destination-preview) strong{font-size:13px}
@container calendar-day (max-width:180px){
 .calendar-scroll .php-calendar-event:has(.event-destination-preview){grid-template-columns:minmax(0,1fr);gap:4px;padding:3px}
 .calendar-scroll .php-calendar-event .event-destination-preview{grid-column:1;grid-row:auto;max-width:164px}
 .calendar-scroll .php-calendar-event:has(.event-destination-preview)>span,.calendar-scroll .php-calendar-event:has(.event-destination-preview)>strong,.calendar-scroll .php-calendar-event:has(.event-destination-preview)>small{grid-column:1}
 .calendar-scroll .php-calendar-event:has(.event-destination-preview) strong{font-size:11px}
}

.event-destination-icon[src*=".webp"],.dungeon-destination img[src*=".webp"]{border-radius:6px;object-fit:cover}

/* Weekly agenda avoids the horizontal month grid on small screens. */
.php-calendar-switch{flex-wrap:wrap}
.week-calendar{padding:22px}.week-calendar .section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.week-calendar .section-heading h2{font-size:22px;text-align:center}
.week-toolbar{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:18px 0;color:var(--muted);font-size:13px}
.week-day{border-top:1px solid var(--trim);padding:20px 0}.week-day h3{margin:0 0 12px;color:var(--gold);font-size:18px}.week-day.is-today{border-top:2px solid var(--gold)}.week-empty{font-size:13px;margin:0}
.week-events{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:12px}
.week-event{display:grid;gap:18px;align-items:start;padding:15px;border:1px solid var(--trim);border-radius:6px;background:var(--surface);min-width:0}.week-event.has-art{grid-template-columns:164px minmax(0,1fr)}
.week-event img{width:164px;height:164px;object-fit:cover;border-radius:5px}.week-event img.week-quest-icon{object-fit:contain;padding:42px;background:var(--bg)}
.week-event h4{font-size:21px;margin:8px 0;overflow-wrap:anywhere}.week-event p{font-size:14px;margin:7px 0;color:var(--muted);overflow-wrap:anywhere}.week-event strong{font-size:13px}.week-event-action{display:block;margin-top:14px;font-size:13px;color:var(--gold)}
.week-event:hover{background:var(--accent-soft)}.week-event:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.week-event.is-cancelled img{filter:grayscale(1);opacity:.65}.week-event.is-cancelled h4{text-decoration:line-through}
.event-destination-heading{margin-bottom:22px}.event-destination-heading.has-art{display:grid;grid-template-columns:clamp(164px,25vw,280px) minmax(0,1fr);gap:24px;align-items:center}.event-destination-heading>img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:7px;border:1px solid var(--trim)}.event-destination-heading h2{overflow-wrap:anywhere}.event-destination-heading p{margin:12px 0}.event-destination-heading .button{margin-top:8px}
@media(max-width:600px){.week-calendar{padding:14px}.week-calendar .section-heading h2{font-size:16px}.week-event{padding:10px;gap:12px}.week-event.has-art{grid-template-columns:104px minmax(0,1fr)}.week-event img{width:104px;height:104px}.week-event img.week-quest-icon{padding:26px}.week-event h4{font-size:18px}.week-event p{font-size:12px}.event-destination-heading.has-art{grid-template-columns:1fr;gap:16px}.event-destination-heading>img{width:min(100%,280px);justify-self:center}}
/* Mobile month overview: one compact day target, details below. */
.calendar-day-link,.calendar-day-agenda{display:none}
@media(max-width:760px){
 .calendar-scroll .php-month-day{padding:2px;min-height:84px;container-type:normal}
 .calendar-scroll .php-month-day>time,.calendar-scroll .php-month-day>.php-calendar-event{display:none}
 .calendar-day-link{display:flex;flex-direction:column;align-items:center;gap:3px;min-height:78px;padding:3px 1px;text-decoration:none;border-radius:4px;position:relative}
 .calendar-day-link>span{font-family:Georgia,serif;color:var(--gold)}
 .calendar-day-link img{width:100%;max-width:40px;height:auto;aspect-ratio:1;object-fit:cover;border-radius:3px}
 .calendar-day-link small{font-size:11px;line-height:1.3;color:var(--text);background:var(--accent-soft);border-radius:8px;padding:1px 5px}
 .calendar-day-link .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .calendar-day-link.selected{outline:2px solid var(--gold);outline-offset:-2px;background:var(--accent-soft)}
 .calendar-day-link:focus-visible{outline:2px solid var(--gold);outline-offset:-2px}
 .calendar-day-agenda{display:block;margin-top:16px;padding:18px;scroll-margin-top:20px}
 .calendar-day-agenda h2{font-size:21px;margin:8px 0 12px}
 .calendar-day-event{display:flex;align-items:flex-start;gap:12px;padding:20px 0;border-top:1px solid var(--trim)}
 .calendar-day-event>img{width:80px;height:80px;object-fit:cover;border-radius:5px;flex:none}
 .calendar-day-event>div{min-width:0;flex:1}.calendar-day-event h3{font-size:18px;margin:8px 0;overflow-wrap:anywhere}
 .calendar-day-event p{margin:8px 0;overflow-wrap:anywhere}.calendar-day-event small{color:var(--muted)}
 .calendar-day-event.cancelled h3{text-decoration:line-through}
 .calendar-day-event .button{font-size:13px;padding:10px;white-space:normal}
}

.calendar-day-navigation{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.calendar-day-navigation .button{min-width:44px;min-height:44px}

.calendar-signup-status{display:block;color:var(--gold);margin-top:6px;font-weight:600;white-space:normal}.calendar-day-event .signup-badge{white-space:normal}

.adventure-image.has-dungeon-art{background:#0b1110}.adventure-image.has-dungeon-art>img{object-fit:contain}.adventure-image.has-dungeon-art .adventure-category{background:rgba(9,14,13,.9)}

.event-calendar-export{display:flex;align-items:center;gap:18px;padding:16px;border:1px solid var(--trim);margin:20px 0}.event-calendar-export .button{flex-shrink:0}.event-calendar-export p{margin:0;font-size:13px;line-height:1.6}.calendar-download-link{display:block;padding:12px 0;min-height:44px;font-size:13px}.calendar-download-note{font-size:12px;line-height:1.6;margin:16px 0}@media(max-width:760px){.event-calendar-export{flex-direction:column;align-items:stretch}.event-calendar-export .button{text-align:center;white-space:normal}}

.raid-directory{padding:24px;margin-bottom:24px}.raid-directory>p{margin:14px 0;line-height:1.6}.raid-destination-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:20px 0}.raid-destination{overflow:hidden;border:1px solid var(--trim);background:var(--accent-soft);min-width:0;display:flex;flex-direction:column}.raid-destination>img{display:block;width:100%;height:auto;aspect-ratio:1}.raid-destination>div{padding:16px;display:flex;flex-direction:column;flex:1;gap:12px}.raid-destination h3,.raid-destination p{margin:0}.raid-destination .button{margin-top:auto;white-space:normal;text-align:center}@media(max-width:760px){.raid-destination-grid{grid-template-columns:1fr}.raid-directory{padding:18px}}

.plan-destination-preview{display:flex;align-items:center;gap:16px;padding:16px;border:1px solid var(--trim);background:var(--accent-soft);margin:14px 0}.plan-destination-preview[hidden]{display:none}.plan-destination-preview>img{width:112px;height:112px;object-fit:contain;flex-shrink:0;border-radius:4px}.plan-destination-preview>div{min-width:0;overflow-wrap:anywhere}.plan-destination-preview strong{color:var(--gold)}.plan-destination-preview p{margin:8px 0}.plan-destination-preview small{display:block;line-height:1.6;color:var(--muted)}@media(max-width:480px){.plan-destination-preview{gap:12px;padding:12px;align-items:flex-start}.plan-destination-preview>img{width:72px;height:72px}}

.plan-target-filters{border-bottom:1px solid var(--trim);padding-bottom:14px;margin-bottom:14px}.plan-target-filters[hidden]{display:none}.plan-target-level{display:flex;align-items:end;gap:16px;margin:12px 0}.plan-target-level>label:first-child{max-width:130px}.plan-target-filters p{font-size:12px;line-height:1.6;margin:10px 0}.plan-target-level .check-label{padding-bottom:8px}.plan-target-filters button{min-height:44px}

.raid-directory>summary{cursor:pointer;min-height:44px;align-content:center;font-size:20px;color:var(--gold)}.raid-directory>summary span{font:13px/1.6 system-ui;color:var(--muted)}.raid-directory>summary:focus-visible{outline:2px solid var(--gold);outline-offset:5px}.calendar-recruitment{display:block;color:var(--gold);font-size:12px;line-height:1.5;white-space:normal;margin:8px 0}.calendar-day-event .calendar-recruitment+small{display:block;margin-bottom:12px}@media(max-width:760px){.raid-directory>summary span{display:block;margin-top:6px}}

.catalog-sources{margin:14px 0;font-size:13px}.catalog-sources>summary{cursor:pointer;color:var(--muted);min-height:36px;align-content:center}.catalog-sources p{line-height:1.8;margin:10px 0}

[data-activity-feedback]:empty{display:none}

/* Member coordination */
.poll-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.poll-slot{min-width:0;margin:0;padding:1rem;border:1px solid #b89a5a44;border-radius:12px;background:#14161580}.poll-slot h3{margin-top:0}.poll-slot label{display:grid;gap:.4rem;margin-top:.8rem}.poll-slot input,.poll-slot select{width:100%;min-width:0}.poll-counts{display:flex;flex-wrap:wrap;gap:.4rem;margin:1rem 0}.poll-person{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.poll-voters{list-style:none;padding:0}.poll-voters li{padding:.6rem 0;border-bottom:1px solid #b89a5a22}.poll-voters span,.poll-list-item small{display:block;color:#bfb8a6;font-size:.85rem}.poll-list-item{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0;border-bottom:1px solid #b89a5a33;text-decoration:none}.event-comment{padding:1.2rem 0;border-top:1px solid #b89a5a33;overflow-wrap:anywhere}.event-comment header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.6rem}.event-comments{margin-top:1.5rem}.poll-slot details{margin-top:1rem}@media(max-width:760px){.poll-slots,.poll-person{grid-template-columns:1fr}.poll-list-item{align-items:flex-start}.poll-list-item strong{overflow-wrap:anywhere}}

.poll-form{max-width:none}.poll-slots{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}

[data-connection-status][hidden],[data-app-install][hidden],[data-samsung-install-help][hidden]{display:none!important}
