/* Sinom för phpBB Sverige: shared seasonal decorations, owned by Utseende. */
.headerbar { position:relative; }
.se-header-season { position:absolute; top:0; right:0; width:min(46%,420px); height:100%; max-height:132px; overflow:hidden; pointer-events:none; border-top-right-radius:inherit; z-index:1; }
.se-header-season img { position:absolute; right:0; top:0; width:420px; height:132px; max-width:none; }
.headerbar .inner { position:relative; z-index:2; }
/* Christmas is a temporary presentation layer. Saved palettes/backgrounds are never overwritten. */
body.se-christmas { --se-primary:#702438; --se-link:#81402a; --se-surface:#fffdf8; --se-alt:#f3f6ef; --se-text:#26392f; --se-muted:#4b6253; --se-border:#cdd9ca; --se-page:#102c28; background-color:#102c28; background-image:linear-gradient(90deg,#102c28ed,#102c28b3),url('./bilder/julheader.png'); background-position:center,center top; background-size:cover; background-attachment:fixed; }
.se-christmas:not(.se-custom-background)>.se-season { display:none; }
.se-christmas.se-custom-background>.se-season { z-index:0; }
.se-christmas .wrap { position:relative; z-index:1; background:var(--se-surface); border-color:#c8b481; box-shadow:0 16px 60px #04161370; }
/* Keep the original photograph proportional, fading its left edge into the header. */
.se-christmas .headerbar { --se-christmas-height:132px; height:var(--se-christmas-height); padding:14px 20px; border:1px solid #ae8e4b; border-bottom:0; background:linear-gradient(110deg,#4b1020,#760d22 72%,#510715); }
.se-christmas .headerbar::before { content:""; position:absolute; inset:0 0 0 auto; width:calc(var(--se-christmas-height) * 3); background:url('./bilder/julheader.png') right top / auto 100% no-repeat; mask-image:linear-gradient(90deg,transparent 0%,#000 48%); pointer-events:none; z-index:0; }
.se-christmas .site-description { position:relative; z-index:3; }
.se-christmas #phpbb-main-menu { background:linear-gradient(180deg,#245640,#103628); border-bottom-color:#c3a65a; }
.se-christmas #phpbb-main-menu { border-radius:0 0 11px 11px; }
.se-christmas #phpbb-main-menu .main-menu { background:transparent; border-radius:0 0 11px 11px; }
.se-christmas .main-menu>li>a { color:#fff9e8; }
.se-christmas .forabg li.header,.se-christmas .forumbg li.header { background:linear-gradient(180deg,#23523d,#143c2d); border-bottom-color:#c3a65a; }
.se-christmas .forabg li.header dt,.se-christmas .forabg li.header dd,.se-christmas .forumbg li.header dt,.se-christmas .forumbg li.header dd,.se-christmas .forabg li.header a,.se-christmas .forumbg li.header a { color:#fff9e8; }
.se-christmas .se-portal .sep-actions a,.se-christmas .sep-download-card { background:linear-gradient(140deg,#25563f,#113a2a); border-color:#c2a064; }
.se-christmas .sep-welcome { border-color:#cbb47e; background-color:#fff9ee; background-image:linear-gradient(90deg,#fff9eefc 0%,#fff9eef0 54%,#fff9ee66 100%),url('./bilder/julheader.png'); background-position:center,right center; background-size:cover; }
.se-christmas .sep-welcome::after { background:none; }
.se-christmas .sep-welcome h2 { color:#6b2231; }
.se-christmas .sep-welcome .sep-intro,.se-christmas .sep-welcome .sep-eyebrow { color:#4b503b; }
.se-christmas .sep-badge { color:#6b2231; background:#faf0dc; border-color:#d6be8a; }
.se-christmas .sep-section-head { background:#edf3e9; }
.se-christmas .se-mobile-nav { background:#173d2d; border-top-color:#c4a55c; }
.se-christmas .se-mobile-nav a,.se-christmas .se-mobile-nav button { color:#fff9e8; }
.se-christmas .se-online-ribbon { background:#24563e; }
.se-christmas .se-header-particles { display:none; }
/* Small geometric lights sit above the wordmark; decorative layers never intercept links. */
.se-christmas-header { position:absolute; inset:0; z-index:4; pointer-events:none; overflow:hidden; border-radius:inherit; }
.se-christmas-lights { position:absolute; left:19px; top:0; width:280px; height:34px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='280' height='30' viewBox='0 0 280 30'%3E%3Cpath d='M0 4Q140 26 280 4' fill='none' stroke='%239c8657' stroke-width='1.2'/%3E%3C/svg%3E") center top / 100% 30px no-repeat; }
.se-christmas-lights span { position:absolute; left:calc(2% + var(--bulb) * 10.65%); top:calc(5px + var(--drop) * 1px); width:6px; height:10px; border-radius:45% 45% 50% 50%; background:#ffe8ad; box-shadow:0 2px 8px 2px #ffc96d70; }
.se-christmas-lights span::before { content:""; position:absolute; left:1px; top:-3px; width:4px; height:3px; background:#8b7844; }
.se-christmas-lights span:nth-child(3n) { background:#ffd186; box-shadow:0 2px 9px 2px #e9a94b70; }
.se-christmas .headerbar::after { content:""; position:absolute; left:0; right:0; bottom:0; height:10px; z-index:5; pointer-events:none; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='600' height='10' viewBox='0 0 600 10'%3E%3Cpath d='M0 6Q35 3 70 5T140 5Q180 1 215 4T290 5Q330 2 375 4T450 5Q490 1 530 4T600 6V10H0Z' fill='%23f6fbff'/%3E%3Cpath d='M0 9H600' stroke='%23d9e8ed' stroke-width='1'/%3E%3C/svg%3E") left bottom / 600px 10px repeat-x; }
/* Background snowfall stays behind the opaque forum wrapper; header snowfall is clipped locally. */
.se-christmas-background { position:fixed; inset:0; z-index:0; pointer-events:none; overflow:hidden; }
.se-christmas-snow { position:absolute; inset:0; overflow:hidden; }
.se-christmas-snow { --snow-distance:calc(100vh + 24px); }
.se-christmas-snow span { position:absolute; top:-12px; left:var(--x); width:var(--size); height:var(--size); border-radius:50%; background:#fff; opacity:var(--alpha); animation:se-christmas-snowfall var(--duration) linear infinite; animation-delay:var(--delay); }
.se-christmas-header .se-christmas-snow { --snow-distance:calc(var(--se-christmas-height) + 24px); }
@keyframes se-christmas-snowfall {
 0% { transform:translate3d(0,0,0); }
 35% { transform:translate3d(var(--wind1),calc(var(--snow-distance) * .35),0); }
 70% { transform:translate3d(var(--wind2),calc(var(--snow-distance) * .7),0); }
 100% { transform:translate3d(var(--drift),var(--snow-distance),0); }
}
.se-christmas-elves { position:absolute; left:64%; bottom:-3px; width:245px; height:122px; object-fit:contain; transform:translateX(-50%); }
.se-christmas-greeting { margin:18px 0 5px; padding:17px 20px; text-align:center; color:#6c2435; background:#fff4d9; border:1px solid #ccb26b; border-radius:10px; font-size:16px; font-weight:650; }
.se-christmas-greeting .icon { color:#9e6d22; padding:0 10px; }
@media(max-width:700px) {
 .se-header-season { width:34%; opacity:.7; }.se-header-season img { width:300px; height:auto; }
 .se-christmas-elves { display:none; }
 .se-christmas-lights { left:15px; width:min(250px,calc(100% - 35px)); top:-3px; }
 .se-christmas .site_logo { max-width:100%; }
 .se-christmas .headerbar { --se-christmas-height:106px; padding:11px 16px; }
 .se-christmas .headerbar::before { mask-image:linear-gradient(90deg,transparent 0%,#000 70%); }
 .se-christmas-snow span:nth-child(2n) { display:none; }
 .se-christmas-greeting { font-size:13px; padding:12px; }
 .se-christmas-greeting .icon { padding:0 3px; }
 .se-christmas { background-attachment:scroll; }
}
@media(prefers-reduced-motion:reduce) { .se-christmas-snow span { animation:none; top:var(--rest); transform:none; } }
@media print { .se-header-season,.se-christmas-header,.se-christmas-background,.se-christmas-greeting { display:none; } body.se-christmas { background:#fff; } }
/* Keep the selected mobile destination readable against its light gold tile. */
.se-christmas .se-mobile-nav [aria-current="page"] { color:#5f2431; background:#fff2cb; }
