/* Each theme owns its scene; menu artwork follows the independently selected card theme. */
body .hero .hero-art{background-image:var(--theme-image);filter:none;background-position:center 52%}
.hero-vignette{background:linear-gradient(90deg,#0d1518ed 0%,#10191bba 33%,#111a1925 65%,#0e15160d 100%),linear-gradient(0deg,var(--bg),transparent 30%)}
.login-wrap{background-image:linear-gradient(#121c18d9,#121c18ed),var(--theme-image)}
.theme-option .theme-preview{background-image:linear-gradient(0deg,#080e1540,transparent 70%),var(--preview-image);background-size:cover;background-position:72% center;height:140px;border:1px solid #ffffff12;position:relative}
.theme-preview>span{position:absolute;bottom:9px;left:9px;font:22px var(--serif);color:var(--swatch);background:#111a1be6;border:1px solid #ffffff30;border-radius:50%;width:36px;height:36px;display:grid;place-items:center;text-shadow:none}
.theme-preview-link{font-size:10px;color:var(--accent);display:inline-block;margin:13px 3px 0;padding:4px 0;border-bottom:1px solid var(--line)}
.theme-preview-link:hover{color:var(--text)}
.menu-board{overflow:hidden}
.menu-board-top{margin:-43px -48px 0;padding:42px 48px 35px;background-image:linear-gradient(90deg,#101915bf,#10191582),linear-gradient(0deg,var(--menu-bg),transparent 90%),var(--menu-image);background-size:cover;background-position:center 58%;border-bottom:1px solid color-mix(in srgb,var(--menu-accent) 35%,transparent);min-height:236px;display:flex;flex-direction:column;justify-content:center}
.menu-board-top h3{color:#fff7e6;text-shadow:0 2px 14px #000a}
.menu-board-top .eyebrow{color:#f2d9a6;text-shadow:0 1px 5px #000}
.menu-board-top p{color:#eee7d6;text-shadow:0 1px 8px #000}
.menu-medallion{color:#f2d9a6;text-shadow:0 1px 10px #000}
.menu-board:before,.menu-board:after{z-index:1;color:#f2d9a6;opacity:.85}
.invitation{background-image:linear-gradient(90deg,color-mix(in srgb,var(--bg) 95%,transparent),color-mix(in srgb,var(--bg) 72%,transparent),color-mix(in srgb,var(--bg) 94%,transparent)),var(--theme-image);background-size:cover;background-position:center 60%;border-block:1px solid var(--line);padding:55px 25px;margin-block:64px}
.invitation p{color:#f8eedf;text-shadow:0 2px 15px #000}
.invitation em{color:#e1d9c9}
.preview-notice{background:#27362b;border-bottom:1px solid var(--accent);color:#e6e9d9;padding:12px 28px;display:flex;justify-content:space-between;gap:15px;align-items:center;font-size:12px}
.preview-notice a{color:var(--accent);white-space:nowrap}
@media(max-width:1000px){.menu-board-top{margin-inline:-32px;padding-inline:32px}.hero .hero-vignette{background:linear-gradient(90deg,#0d1518eb,#10191b99 55%,#111a1920),linear-gradient(0deg,var(--bg),transparent 35%)}}
@media(max-width:700px){body .hero .hero-art{background-position:68% center}.hero .hero-vignette{background:linear-gradient(90deg,#0d1518d1,#10191b85),linear-gradient(0deg,var(--bg),transparent 100%)}.menu-board-top{margin:-32px -23px 0;padding:37px 24px 30px;min-height:240px;background-position:68% center}.menu-board-top h3{font-size:26px}.theme-option .theme-preview{height:113px}.theme-preview>span{width:29px;height:29px;font-size:18px}.theme-preview-link{font-size:9px}.preview-notice{font-size:11px;align-items:flex-start;flex-direction:column;padding:13px 20px}.invitation{margin-block:40px;padding:40px 20px}}

.menu-theme-dracheninseln{border-radius:30px 30px 4px 4px;border-width:2px;background-image:repeating-linear-gradient(60deg,transparent 0 84px,#80cec307 85px 88px)}
.menu-theme-dracheninseln:before,.menu-theme-dracheninseln:after{content:'⟐'}
.menu-theme-blutelfisch{border-radius:60px 60px 3px 3px;border-color:#e5c07988;background-image:radial-gradient(ellipse at top,#8e274721,transparent 70%)}
.menu-theme-blutelfisch:before,.menu-theme-blutelfisch:after{content:'❖';top:34px}
.menu-theme-draenei{clip-path:polygon(25px 0,calc(100% - 25px) 0,100% 25px,100% calc(100% - 25px),calc(100% - 25px) 100%,25px 100%,0 calc(100% - 25px),0 25px);background-image:repeating-linear-gradient(120deg,transparent 0 90px,#c6b0ef08 91px 94px)}
.menu-theme-draenei:before,.menu-theme-draenei:after{content:'◇'}
.menu-theme-goblin{border-width:3px;border-style:double;background-image:repeating-linear-gradient(0deg,transparent 0 54px,#b4d67b07 55px 57px)}
.menu-theme-goblin:before,.menu-theme-goblin:after{content:'⚙'}
.card-edit-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:15px}.card-edit-heading h2{margin:0}.card-edit-heading .button{margin:0;font-size:10px;min-height:38px;padding:8px 12px}

.menu-theme-winterhauch{border-radius:10px;border-color:#b8d4e888;background-image:radial-gradient(ellipse at top,#91bde512,transparent 65%)}
.menu-theme-winterhauch:before,.menu-theme-winterhauch:after{content:'❄';color:#daeaf3}
.menu-theme-schlotternaechte{border-radius:44px 44px 4px 4px;border-color:#e6ab7088;background-image:radial-gradient(ellipse at top,#9550b21c,transparent 70%)}
.menu-theme-schlotternaechte:before,.menu-theme-schlotternaechte:after{content:'☽';color:#edb673}
.menu-theme-nobelgarten{border-radius:50px 50px 12px 12px;border-color:#c9dba188;background-image:radial-gradient(ellipse at top,#b2cb7b12,transparent 70%)}
.menu-theme-nobelgarten:before,.menu-theme-nobelgarten:after{content:'❀';color:#efcadb}
.menu-theme-sonnenwende{border-width:3px;border-style:double;background-image:radial-gradient(ellipse at top,#e276281a,transparent 70%)}
.menu-theme-sonnenwende:before,.menu-theme-sonnenwende:after{content:'☼';color:#ffd088}

/* Braufest: purple festival cloth, brass edging and tankard ornaments. */
.theme-braufest .season-label{border-color:#e4b75e99;background:#382039d9;color:#ffe1a0}
.theme-braufest .hero .hero-vignette{background:linear-gradient(90deg,#21121cea,#251622a8 36%,#21121c15 70%),linear-gradient(0deg,var(--bg),transparent 30%)}
.theme-braufest .invitation{border-color:#e4b75e66}
.menu-theme-braufest{border:3px double #e4b75e99;border-radius:18px 18px 4px 4px;background-image:repeating-linear-gradient(90deg,#6a37630c 0 48px,transparent 48px 96px)}
.menu-theme-braufest .menu-board-top{border-bottom:4px double #e4b75e88}
.menu-theme-braufest .menu-bottom{border-top:1px solid #e4b75e55;background:linear-gradient(90deg,transparent,#753d701c,transparent)}
.menu-theme-braufest:before,.menu-theme-braufest:after{content:'';width:30px;height:32px;background:#f4d08a;mask:url('braufest-tankard.svg') center/contain no-repeat;opacity:.9}
.menu-theme-braufest .menu-medallion,.theme-braufest .season-label>span,.preview-braufest>span{font-size:0}
.menu-theme-braufest .menu-medallion:before,.theme-braufest .season-label>span:before,.preview-braufest>span:before{content:'';display:inline-block;width:30px;height:32px;vertical-align:middle;background:currentColor;mask:url('braufest-tankard.svg') center/contain no-repeat}
.theme-braufest .season-label>span:before{width:20px;height:22px}
.preview-braufest>span:before{width:23px;height:25px}
@media(max-width:700px){.theme-braufest .hero .hero-vignette{background:linear-gradient(90deg,#21121cdb,#25162270),linear-gradient(0deg,var(--bg),transparent 90%)}.menu-theme-braufest:before,.menu-theme-braufest:after{width:23px;height:26px}}

/* Ratschet: sea-green shadows, weathered timber, brass and Horde-red canvas. */
.theme-ratschet .season-label{background:#672d28dd;border-color:#ceaa70;color:#ffe4b8}
.theme-ratschet .hero .hero-vignette{background:linear-gradient(90deg,#102224ed 0%,#13272aaa 35%,#14282b14 72%),linear-gradient(0deg,var(--bg),transparent 33%)}
.theme-ratschet .button:not(.secondary){background:#843b32;border-color:#d6ab71;color:#fff0d7}
.theme-ratschet .button:not(.secondary):hover{background:#a24b3e}
.theme-ratschet .invitation{border-block:3px double #b8996580;background-position:center 56%}
.menu-theme-ratschet{border:3px double #b89965a8;border-radius:5px;background-image:repeating-linear-gradient(0deg,#a7794007 0 63px,#0c1b1b30 64px 66px)}
.menu-theme-ratschet .menu-board-top{border-bottom:5px solid #7d3931;background-position:center 55%}
.menu-theme-ratschet:before,.menu-theme-ratschet:after{content:'⚓';color:#dfb77b}
.menu-theme-ratschet .menu-bottom{border-top:2px solid #7d393180}
@media(max-width:700px){.theme-ratschet .hero .hero-vignette{background:linear-gradient(90deg,#102224df,#13272a80),linear-gradient(0deg,var(--bg),transparent 90%)}body.theme-ratschet .hero .hero-art{background-position:65% center}}

/* Three categories; long lists use the full card width instead of leaving blank columns. */
.menu-columns{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.menu-column{min-width:0}
.menu-column-heading{display:block}
.menu-column-heading h4{font-size:24px}
.menu-column-heading>span{display:block;margin-top:5px}
.menu-column+.menu-column:before{display:none}
.menu-columns-expanded{grid-template-columns:repeat(2,minmax(0,1fr))}
.menu-column-wide{grid-column:1/-1;order:2}
.menu-column-wide .menu-category-items{column-count:3;column-gap:32px;column-rule:1px solid color-mix(in srgb,var(--menu-accent) 18%,transparent)}
.menu-category-items .menu-item{break-inside:avoid;page-break-inside:avoid}
@media(min-width:701px) and (max-width:1050px){.menu-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.menu-column-wide .menu-category-items{column-count:2}}
@media(max-width:700px){.menu-columns{grid-template-columns:minmax(0,1fr);gap:28px}.menu-column-wide .menu-category-items{column-count:1}.menu-column-heading h4{font-size:24px}}

/* Winterquell: violet snow forest, soft frost and silver edging. */
.theme-winterquell .season-label{background:#36304dd9;border-color:#cbbdf28c;color:#e5dcff}
.theme-winterquell .hero .hero-vignette{background:linear-gradient(90deg,#181a30eb,#24243ca8 37%,#24243c14 72%),linear-gradient(0deg,var(--bg),transparent 35%)}
.theme-winterquell .invitation{border-color:#cbbdf255;background-position:center 60%}
.menu-theme-winterquell{border:2px solid #b7acd480;border-radius:28px 28px 5px 5px;background-image:radial-gradient(ellipse at top,#aaa0e51c,transparent 65%)}
.menu-theme-winterquell .menu-board-top{border-bottom:3px double #d7cef29c}
.menu-theme-winterquell:before,.menu-theme-winterquell:after{content:'❄';color:#e0d8ff}
/* Nordend: glacier blue, dark timber and angular iron-bound edges. */
.theme-nordend .season-label{background:#163646df;border-color:#9fd7e799;color:#d1f2ff}
.theme-nordend .hero .hero-vignette{background:linear-gradient(90deg,#0c1a28ef,#122a38ac 37%,#122a3814 72%),linear-gradient(0deg,var(--bg),transparent 35%)}
.theme-nordend .invitation{border-block:3px double #83b4c866;background-position:center 56%}
.menu-theme-nordend{border:3px double #88b6c9a0;border-radius:3px;background-image:repeating-linear-gradient(0deg,transparent 0 66px,#091a2729 67px 69px)}
.menu-theme-nordend .menu-board-top{border-bottom:4px double #9fd7e780}
.menu-theme-nordend:before,.menu-theme-nordend:after{content:'◇';color:#c7edfa}
@media(max-width:700px){.theme-winterquell .hero .hero-vignette{background:linear-gradient(90deg,#181a30de,#24243c80),linear-gradient(0deg,var(--bg),transparent 90%)}.theme-nordend .hero .hero-vignette{background:linear-gradient(90deg,#0c1a28df,#122a3880),linear-gradient(0deg,var(--bg),transparent 90%)}}

/* Westfall: golden fields, river blue and weathered farm timber. */
.theme-westfall .season-label{background:#47412ade;border-color:#dfc18488;color:#f6dfae}
.theme-westfall .hero .hero-vignette{background:linear-gradient(90deg,#23261bed,#2a2c20a6 37%,#292b2010 72%),linear-gradient(0deg,var(--bg),transparent 33%)}
.theme-westfall .invitation{border-color:#dfc18466;background-position:center 56%}
.menu-theme-westfall{border:3px double #c6ac72a0;border-radius:5px;background-image:repeating-linear-gradient(0deg,transparent 0 64px,#171c1720 65px 67px)}
.menu-theme-westfall .menu-board-top{border-bottom:3px double #c6ac7280;background-position:center 52%}
.menu-theme-westfall:before,.menu-theme-westfall:after{content:'☼';color:#ead39c}
@media(max-width:700px){body.theme-westfall .hero .hero-art{background-position:66% center}.theme-westfall .hero .hero-vignette{background:linear-gradient(90deg,#23261bd9,#2a2c2078),linear-gradient(0deg,var(--bg),transparent 90%)}}

/* Grizzlyhügel: giant conifers, river reflections and warm log timber. */
.theme-grizzlyhuegel .season-label{background:#413a29e0;border-color:#d9b17a88;color:#f0d4a8}
.theme-grizzlyhuegel .hero .hero-vignette{background:linear-gradient(90deg,#14221bea,#1e3024a8 37%,#1e302410 72%),linear-gradient(0deg,var(--bg),transparent 34%)}
.theme-grizzlyhuegel .invitation{border-block:3px double #ad8a5e70;background-position:center 57%}
.menu-theme-grizzlyhuegel{border:3px double #b49060a0;border-radius:18px 18px 5px 5px;background-image:repeating-linear-gradient(0deg,transparent 0 68px,#14231b28 69px 72px)}
.menu-theme-grizzlyhuegel .menu-board-top{border-bottom:4px double #d9b17a80;background-position:center 55%}
.menu-theme-grizzlyhuegel:before,.menu-theme-grizzlyhuegel:after{content:'◇';color:#e4c89b}
@media(max-width:700px){body.theme-grizzlyhuegel .hero .hero-art{background-position:66% center}.theme-grizzlyhuegel .hero .hero-vignette{background:linear-gradient(90deg,#14221bdb,#1e302478),linear-gradient(0deg,var(--bg),transparent 90%)}}

/* Lightforged: ivory stone, gilded facets and warm crystal light. */
.theme-lichtgeschmiedet .season-label{background:#544328e8;border-color:#efd69c99;color:#fff0c9}
.theme-lichtgeschmiedet .hero .hero-vignette{background:linear-gradient(90deg,#241e16ed,#302519a6 36%,#38291810 73%),linear-gradient(0deg,var(--bg),transparent 36%)}
.theme-lichtgeschmiedet .hero h1{color:#fff4d7;text-shadow:0 2px 24px #20160980}
.theme-lichtgeschmiedet .invitation{border-block:3px double #efd69c80;background-position:center 44%;box-shadow:inset 0 0 48px #e9bd3910}
.menu-theme-lichtgeschmiedet{border:3px double #e7c784b0;border-radius:32px 8px 32px 8px;background-image:linear-gradient(135deg,#eed18d12,transparent 38%),repeating-linear-gradient(120deg,transparent 0 95px,#efd69c08 96px 98px);box-shadow:0 18px 55px #0003,inset 0 0 38px #f0d18b0a}
.menu-theme-lichtgeschmiedet .menu-board-top{border-bottom:3px double #f0d18b90;background-position:center 40%}
.menu-theme-lichtgeschmiedet:before,.menu-theme-lichtgeschmiedet:after{content:'⟡';color:#ffe3a0;text-shadow:0 0 14px #eec66b80}
.menu-theme-lichtgeschmiedet .menu-bottom{border-top:1px solid #f0d18b44}
.theme-lichtgeschmiedet .tavern-opening{border-color:#ffe2a0;background:linear-gradient(125deg,#32281cf5,#514024f5,#29231cf5)}
.theme-lichtgeschmiedet .opening-particles i{background:#fff0bb;color:#ffe29a;border-radius:0;box-shadow:0 0 12px #ffe19bcc}
@media(max-width:700px){body.theme-lichtgeschmiedet .hero .hero-art{background-position:66% center}.theme-lichtgeschmiedet .hero .hero-vignette{background:linear-gradient(90deg,#241e16e3,#352a1c80),linear-gradient(0deg,var(--bg),transparent 90%)}}
