/* ========================================================================== 
   KARLSTABO LIVE 2026
   Full public-site design system. Loaded last by karlstabo-live-2026-loader.php.
   ========================================================================== */
:root{
  --ks26-ink:#082f2b;
  --ks26-green:#0b453d;
  --ks26-green-2:#12675b;
  --ks26-green-3:#e9f2ee;
  --ks26-green-4:#f3f7f5;
  --ks26-orange:#ff5b24;
  --ks26-orange-2:#ff7a45;
  --ks26-gold:#f7bb43;
  --ks26-cream:#f7f4ed;
  --ks26-paper:#fff;
  --ks26-text:#153f3a;
  --ks26-muted:#657a76;
  --ks26-line:#dfe7e3;
  --ks26-line-dark:#c9d6d1;
  --ks26-shadow:0 16px 40px rgba(9,52,46,.09);
  --ks26-shadow-lg:0 25px 70px rgba(9,52,46,.14);
  --ks26-radius:18px;
  --ks26-radius-lg:25px;
  --shell:min(1230px,calc(100% - 38px));
  --ink:var(--ks26-ink);--green:var(--ks26-green-2);--green-2:var(--ks26-green);--green-3:var(--ks26-green-3);
  --sun:var(--ks26-orange);--sun-2:var(--ks26-orange-2);--sun-soft:#fff0e9;--cream:var(--ks26-cream);--paper:#fff;
  --muted:var(--ks26-muted);--line:var(--ks26-line);--line-2:var(--ks26-line-dark);
  --shadow:var(--ks26-shadow);--shadow-lg:var(--ks26-shadow-lg);--radius:var(--ks26-radius);--radius-lg:var(--ks26-radius-lg);
}
html{background:var(--ks26-cream)}
body{background:var(--ks26-cream);color:var(--ks26-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;letter-spacing:-.005em}
body:before{opacity:.4;background-image:radial-gradient(circle at 8% 4%,rgba(247,187,67,.12),transparent 20%),radial-gradient(circle at 95% 18%,rgba(11,69,61,.06),transparent 22%)}
h1,h2,h3,h4{color:var(--ks26-ink);letter-spacing:-.045em}
main{min-height:58vh}
.shell{width:var(--shell)}
::selection{background:#cfe8df;color:var(--ks26-ink)}

/* Header ------------------------------------------------------------------ */
.site-header.ks2026-header{position:sticky;top:0;z-index:90;background:rgba(255,255,255,.96);border-bottom:0;box-shadow:0 1px 0 rgba(8,47,43,.1);backdrop-filter:blur(18px)}
.ks2026-header-row{height:70px;display:flex;align-items:center;gap:18px}
.ks2026-brand img{width:185px;max-height:44px}
.ks2026-nav{margin-left:auto;display:flex;align-items:center;gap:2px;min-width:0}
.ks2026-nav>a,.ks2026-more>summary{position:relative;display:flex;align-items:center;min-height:38px;padding:8px 10px;border-radius:9px;color:#46615d;font-size:12.5px;font-weight:780;cursor:pointer;list-style:none;white-space:nowrap}
.ks2026-more>summary::-webkit-details-marker{display:none}.ks2026-more>summary span{margin-left:4px;font-size:11px}
.ks2026-nav>a:hover,.ks2026-more>summary:hover,.ks2026-more[open]>summary{background:#f2f6f4;color:var(--ks26-ink)}
.ks2026-nav>a.active{background:transparent;color:var(--ks26-ink)}
.ks2026-nav>a.active:after{content:"";position:absolute;left:10px;right:10px;bottom:2px;height:2px;border-radius:5px;background:var(--ks26-green-2)}
.ks2026-legacy-nav-token{display:none!important}
.ks2026-more{position:relative}
.ks2026-more-menu{position:absolute;right:0;top:46px;width:410px;padding:10px;display:grid;grid-template-columns:1fr 1fr;gap:5px;background:#fff;border:1px solid var(--ks26-line);border-radius:18px;box-shadow:var(--ks26-shadow-lg);z-index:100}
.ks2026-more-menu a{display:grid;grid-template-columns:34px 1fr;grid-template-rows:auto auto;column-gap:8px;padding:10px;border-radius:12px}
.ks2026-more-menu a:hover{background:var(--ks26-green-4)}
.ks2026-more-menu a>span{grid-row:1/3;width:32px;height:32px;display:grid;place-items:center;background:var(--ks26-green-3);border-radius:10px;font-size:16px}
.ks2026-more-menu b{font-size:12px;line-height:1.2}.ks2026-more-menu small{font-size:9.5px;color:var(--ks26-muted);line-height:1.3;margin-top:2px}
.ks2026-header-actions{gap:6px}.ks2026-header-actions .icon-btn,.ks2026-header-actions .notify-btn{width:37px;height:37px;border-radius:10px;border-color:var(--ks26-line);box-shadow:none;font-size:18px}
.ks2026-header-actions .profile-chip{min-height:38px;border-radius:10px;border-color:var(--ks26-line);padding-right:9px}.ks2026-header-actions .profile-chip b{font-size:11px}
.ks2026-header-actions .login-btn{min-height:36px;border-radius:9px;padding:7px 12px;font-size:11px}
.ks2026-header-actions .add-primary{min-height:36px;border-radius:9px;padding:7px 12px;background:var(--ks26-green);box-shadow:none;font-size:11px}

.ks2026-livebar-wrap{background:var(--ks26-green);color:#fff;border-top:1px solid rgba(255,255,255,.08)}
.ks2026-livebar{min-height:40px;display:flex;align-items:center;gap:12px;overflow:hidden}
.ks2026-live-label{display:flex;align-items:center;gap:6px;flex:0 0 auto;padding:5px 10px 5px 7px;border-radius:999px;background:#fff;color:var(--ks26-green);font-size:10px;font-weight:950;letter-spacing:.05em}
.ks2026-live-label i{width:7px;height:7px;border-radius:50%;background:#46d17e;box-shadow:0 0 0 4px rgba(70,209,126,.15);animation:ks26Pulse 1.8s infinite}
@keyframes ks26Pulse{50%{box-shadow:0 0 0 8px rgba(70,209,126,0)}}
.ks2026-live-items{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));flex:1;min-width:0;height:100%}
.ks2026-live-items a{display:flex;align-items:center;gap:7px;min-width:0;padding:7px 14px;border-left:1px solid rgba(255,255,255,.14);color:#ecf6f3;font-size:10px;font-weight:680}
.ks2026-live-items a span:last-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ks2026-live-items a>span:first-child{color:var(--ks26-gold);font-size:13px}
.ks2026-live-items a:hover{background:rgba(255,255,255,.07)}
.ks2026-live-arrow{font-size:22px;line-height:1;padding:0 4px;color:#fff}
.search-panel{background:#fff;border-top:1px solid var(--ks26-line);box-shadow:0 20px 40px rgba(8,47,43,.1)}
.search-box input,.search-panel input{border-color:var(--ks26-line);border-radius:12px;background:#f8faf9}

/* Core surfaces ------------------------------------------------------------ */
.btn{border-radius:10px;min-height:39px;padding:9px 14px;font-size:12px;box-shadow:none!important}
.btn-primary{background:var(--ks26-green);color:#fff}.btn-primary:hover{background:#073b35}.btn-sun{background:var(--ks26-orange);color:#fff}.btn-sun:hover{background:#e94c18}.btn-ghost{background:#fff;border-color:var(--ks26-line)}
.btn-light{background:#fff;color:var(--ks26-green)}
.eyebrow{color:var(--ks26-green-2);font-size:9px;letter-spacing:.13em}
.pill{font-size:9px}.pill.sun{background:#fff0e8;color:#b84318}.pill.success{background:#eaf5ef;color:#256b48}
.section{padding:38px 0}.section-tint{background:#f0f4f1;border-color:#e0e8e4}
.section-head{margin-bottom:13px}.section-head h2{font-family:Georgia,"Times New Roman",serif;font-size:29px;letter-spacing:-.045em}.section-head p{font-size:12px}.section-head>a{font-size:11px;color:var(--ks26-green-2)}
.content-card,.business-card,.talk-row,.poll-list-card,.form-card,.profile-block,.side-card,.account-block,.weather-card,.local-news-card,.ksg-card,.ksg-form,.admin-panel{border-color:var(--ks26-line)!important;box-shadow:0 7px 22px rgba(8,47,43,.045)!important}
.content-card,.business-card,.poll-list-card,.form-card,.profile-block,.side-card,.account-block,.ksg-card{border-radius:14px!important}
.content-card:hover,.business-card:hover,.poll-list-card:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(8,47,43,.09)!important;border-color:#cbd9d4!important}
.card-body{padding:12px 13px}.card-body h3{font-size:15px;line-height:1.15;margin:6px 0}.card-body p{font-size:11px;line-height:1.45;color:var(--ks26-muted)}
.card-media{border-radius:13px 13px 0 0;overflow:hidden}.card-media img{transition:transform .28s ease}.content-card:hover .card-media img{transform:scale(1.018)}
.card-meta,.card-foot{font-size:9px}.card-foot b{color:var(--ks26-green-2)}
.date-tile{border-radius:9px!important;background:#fff!important;color:var(--ks26-ink)!important;box-shadow:0 4px 15px rgba(0,0,0,.16)}.date-tile small{color:var(--ks26-orange)!important}
.event-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.offer-grid{gap:11px}.market-grid{gap:11px}
.empty{border-radius:16px;border-color:var(--ks26-line);background:#fff}
.filterbar{padding:11px!important;border:1px solid var(--ks26-line)!important;border-radius:13px!important;background:#fff!important;box-shadow:0 5px 18px rgba(8,47,43,.035)!important}
.filterbar label{font-size:9px!important;color:var(--ks26-muted)}.filterbar input,.filterbar select{min-height:38px!important;border-radius:9px!important;border-color:var(--ks26-line)!important;background:#f9fbfa!important;font-size:11px!important}
.time-tabs{gap:6px}.time-tabs a{border-radius:999px!important;font-size:10px!important;padding:8px 11px!important;background:#fff!important;border:1px solid var(--ks26-line)!important}.time-tabs a.active{background:var(--ks26-green)!important;color:#fff!important;border-color:var(--ks26-green)!important}
.listing-head{margin:18px 0 11px}.listing-head h2{font-family:Georgia,"Times New Roman",serif;font-size:24px}

/* Karlstabo LIVE homepage -------------------------------------------------- */
body.page-home .hero-proud,body.page-home .ks445-legacy-hero-hidden{display:none!important}
body.page-home #ks43-live-home{width:var(--shell);margin:18px auto 30px!important;display:block!important}
#ks43-live-home .ks43-live-hero{padding:0!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;color:var(--ks26-text)!important;overflow:visible!important}
#ks43-live-home .ks43-live-brand{display:flex!important;align-items:end!important;justify-content:space-between!important;gap:14px!important;margin-bottom:10px!important}
#ks43-live-home .ks43-live-brand>div{display:contents}
#ks43-live-home .ks43-live-badge{order:1;align-self:center;background:#eaf3ef!important;border:1px solid #d7e7e0!important;color:var(--ks26-green)!important;padding:6px 9px!important;border-radius:999px!important;font-size:9px!important}
#ks43-live-home .ks43-live-brand h1{order:0;margin:0!important;font:700 clamp(30px,3.4vw,47px)/1 Georgia,"Times New Roman",serif!important;color:var(--ks26-ink)!important;letter-spacing:-.055em!important}
#ks43-live-home .ks43-live-brand p{order:2;margin:0 0 3px!important;color:var(--ks26-muted)!important;font-size:12px!important}
#ks43-live-home .ks43-live-nav{display:none!important}
#ks43-live-home .ks43-live-ticker{display:none!important}
#ks43-live-home .ks43-live-layout{display:grid!important;grid-template-columns:minmax(0,1.7fr) minmax(280px,.7fr)!important;gap:12px!important;align-items:start!important}
#ks43-live-home .ks43-panel{margin:0!important;padding:15px!important;border:1px solid var(--ks26-line)!important;border-radius:16px!important;background:#fff!important;box-shadow:0 9px 28px rgba(8,47,43,.055)!important;min-width:0!important}
#ks43-live-home .ks43-section-head{margin-bottom:10px!important}.ks43-section-title{gap:8px!important}.ks43-section-icon{width:27px!important;height:27px!important;border-radius:8px!important;background:#eef4f1!important;font-size:13px!important}.ks43-section-title h2{font-family:Georgia,"Times New Roman",serif!important;font-size:20px!important;letter-spacing:-.035em!important}.ks43-section-title p{font-size:9.5px!important;color:var(--ks26-muted)!important}
#ks43-live-home .ks43-now-panel{grid-column:1/2!important;grid-row:1/3!important;padding:10px!important}
.ks2026-feature-layout{display:grid;grid-template-columns:minmax(0,1fr) 170px;gap:10px;min-height:350px}
.ks2026-feature-event{position:relative;min-height:350px;border-radius:14px;overflow:hidden;background:linear-gradient(145deg,#163f39,#092f2b);color:#fff;display:block}
.ks2026-feature-event:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 15%,rgba(5,32,29,.2) 45%,rgba(4,25,23,.9) 100%);z-index:1}
.ks2026-feature-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ks2026-feature-shade{position:absolute;inset:auto 0 0;z-index:2;padding:24px 23px 22px;color:#fff}
.ks2026-feature-shade h2{max-width:640px;margin:9px 0 7px;color:#fff!important;font:700 clamp(30px,3.6vw,48px)/.98 Georgia,"Times New Roman",serif!important;letter-spacing:-.055em!important;text-wrap:balance}
.ks2026-feature-shade p{max-width:600px;margin:0 0 14px;color:rgba(255,255,255,.86);font-size:12px;line-height:1.45}.ks2026-feature-meta{display:flex;gap:9px;align-items:center;font-size:9px;font-weight:800;color:#fff}.ks2026-feature-badge{display:inline-flex;background:var(--ks26-orange);padding:6px 9px;border-radius:999px;color:#fff;font-weight:950;letter-spacing:.04em}.ks2026-feature-link{display:inline-flex;padding:8px 11px;border-radius:9px;background:var(--ks26-orange);font-size:10px;color:#fff}
.ks2026-feature-empty{background-image:linear-gradient(135deg,rgba(6,49,43,.82),rgba(6,49,43,.55)),url('/assets/premium-karlstad-river.svg');background-size:cover;background-position:center}
.ks2026-feature-side{display:grid;grid-template-columns:1fr;gap:7px}
#ks43-live-home .ks2026-feature-side .ks43-quick-card{min-height:80px;padding:10px!important;border:1px solid var(--ks26-line)!important;border-radius:11px!important;background:#f8faf9!important;box-shadow:none!important}
#ks43-live-home .ks2026-feature-side .ks43-quick-icon{width:30px!important;height:30px!important;flex-basis:30px!important;border-radius:9px!important;font-size:15px!important;background:#fff!important}.ks2026-feature-side .ks43-quick-label{font-size:8px!important}.ks2026-feature-side strong{font-size:15px!important}.ks2026-feature-side small{font-size:8px!important}
#ks43-live-home .ks43-panel:nth-child(2){grid-column:2/3!important;grid-row:1!important}
#ks43-live-home .ks43-panel:nth-child(3){grid-column:1/2!important}
#ks43-live-home .ks43-panel:nth-child(4){grid-column:2/3!important}
#ks43-live-home .ks4436-local-live{grid-column:2/3!important;grid-row:2!important}
#ks43-live-home .ks43-awards{grid-column:1/3!important}
#ks43-live-home .ks43-mine{grid-column:1/3!important}
#ks43-live-home .ks43-snack-row,#ks43-live-home .ks43-hot-row{border-radius:9px!important;padding:8px!important;border-bottom:0!important;background:#fafbfb!important;margin-bottom:5px}.ks43-snack-copy h3{font-size:12px!important}.ks43-snack-copy p{font-size:9px!important;display:none}.ks43-snack-copy small,.ks43-snack-top{font-size:8.5px!important}.ks43-avatar{width:29px!important;height:29px!important;min-width:29px!important}
#ks43-live-home .ks43-discover-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}.ks43-discover-item{border-radius:10px!important;padding:9px!important;font-size:10px!important;background:#f9fbfa!important}.ks43-discover-item span{font-size:15px!important}
#ks43-live-home .ks43-award-card{border-radius:13px!important;background:var(--ks26-green)!important}.ks43-award-card h3{font-family:Georgia,"Times New Roman",serif!important}.ks43-vote{border-radius:9px!important;font-size:10px!important}
#ks43-live-home .ks43-actions{gap:6px!important}.ks43-btn{border-radius:9px!important;font-size:9.5px!important;padding:8px 10px!important}.ks43-btn-sun{background:var(--ks26-orange)!important;color:#fff!important}

/* Home sections underneath LIVE */
body.page-home .pulse-rail{display:none!important}
body.page-home .local-now-section{padding-top:0}.local-now-grid{gap:12px}.weather-card,.local-news-card{border-radius:16px!important;background:#fff!important;padding:16px!important}.weather-card h2,.local-news-card h2{font-family:Georgia,"Times New Roman",serif!important;font-size:22px!important}
body.page-home .first-section{padding-top:18px}.ks445-home-event-grid,.ks443-home-event-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
body.page-home .contribution-section{padding-bottom:45px}
body.page-home .ksg-home-shell{border-radius:16px!important;border-color:var(--ks26-line)!important;box-shadow:none!important;background:#fff!important}

/* Page heroes -------------------------------------------------------------- */
.page-hero,.area-profile-hero,.account-hero{background:transparent!important;color:var(--ks26-text)!important;padding:24px 0 0!important;border:0!important;overflow:visible!important}
.page-hero>.shell,.area-profile-hero>.shell,.account-hero>.shell{position:relative;min-height:180px;padding:26px 30px;border-radius:19px;overflow:hidden;background:linear-gradient(90deg,rgba(7,52,46,.94),rgba(7,52,46,.78)),url('/assets/premium-karlstad-river.svg') center/cover no-repeat;color:#fff;box-shadow:var(--ks26-shadow)}
.page-hero>.shell:after,.area-profile-hero>.shell:after,.account-hero>.shell:after{content:"";position:absolute;right:-20px;bottom:-42px;width:260px;height:130px;background:url('/assets/premium-karlstad-skyline.svg') center bottom/contain no-repeat;opacity:.18;filter:brightness(0) invert(1);pointer-events:none}
.page-hero h1,.area-profile-hero h1,.account-hero h1{color:#fff!important;font:700 clamp(35px,4.4vw,55px)/.98 Georgia,"Times New Roman",serif!important;letter-spacing:-.055em!important;margin:6px 0 8px!important;max-width:760px}.page-hero p,.area-profile-hero p,.account-hero p{color:rgba(255,255,255,.82)!important;font-size:13px!important;max-width:720px}.page-hero .eyebrow,.area-profile-hero .eyebrow,.account-hero .eyebrow{color:#ffd18f!important}.hero-mini-art{opacity:.8!important;font-size:34px!important}.hero-mini-art span{color:var(--ks26-gold)}
.page-events .page-hero>.shell{background-image:linear-gradient(90deg,rgba(7,52,46,.94),rgba(7,52,46,.66)),url('/assets/premium-karlstad-river.svg')}.page-discussions .page-hero>.shell{background-image:linear-gradient(90deg,rgba(7,52,46,.94),rgba(7,52,46,.7)),url('/assets/premium-karlstad-skyline.svg')}.page-businesses .page-hero>.shell{background-image:linear-gradient(90deg,rgba(7,52,46,.93),rgba(7,52,46,.62)),url('/assets/premium-karlstad-river.svg')}

/* Event/listing pages ------------------------------------------------------ */
.page-events .listing-section{padding-top:14px}.page-events .time-tabs{margin-bottom:9px}.page-events .filterbar{margin-bottom:12px}
.page-businesses .section,.page-discussions .section,.page-polls .section,.page-marketplace .section,.page-areas .section,.page-search .section{padding-top:14px}
.business-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}.business-card{padding:13px!important;background:#fff!important}.business-logo{border-radius:12px!important}.business-name h3{font-size:14px!important}.business-card p{font-size:10px!important}.business-card-stats{font-size:9px}
.discussion-tools{align-items:center!important}.talk-list.roomy{gap:7px!important}.talk-row{padding:10px 12px!important;border:1px solid var(--ks26-line)!important;border-radius:11px!important;background:#fff!important}.talk-kicker{font-size:8px!important}.talk-main h3{font-size:13px!important;margin:2px 0!important}.talk-main p{font-size:9px!important}.talk-stats{font-size:9px!important}.talk-stats b{font-size:15px!important}
.poll-list{gap:8px!important}.poll-list-card{background:#fff!important;padding:14px!important}.poll-list-card h3{font-family:Georgia,"Times New Roman",serif;font-size:18px!important}.poll-list-card p{font-size:10px!important}

/* Detail templates --------------------------------------------------------- */
.detail-hero,.business-profile,.discussion-page{padding:24px 0 38px!important;background:transparent!important}
.detail-grid,.discussion-layout{gap:14px!important}
.detail-media,.detail-placeholder,.business-cover{border-radius:18px!important;overflow:hidden!important;box-shadow:var(--ks26-shadow)!important}
.detail-content{padding:20px!important;border:1px solid var(--ks26-line)!important;border-radius:18px!important;background:#fff!important;box-shadow:var(--ks26-shadow)!important}.detail-content h1{font:700 clamp(32px,4vw,48px)/1 Georgia,"Times New Roman",serif!important;letter-spacing:-.05em!important}.detail-content .prose{font-size:13px!important;color:#405d58!important}.price-box,.terms-box,.contact-box,.seller{border-radius:12px!important}
.business-cover{min-height:210px!important;background-color:var(--ks26-green)!important}.business-profile-head{background:#fff!important;border:1px solid var(--ks26-line)!important;border-radius:0 0 18px 18px!important;padding:18px!important;box-shadow:var(--ks26-shadow)!important}.business-name.huge h1{font:700 clamp(30px,4vw,46px)/1 Georgia,"Times New Roman",serif!important}.business-content{gap:12px!important}.profile-block{padding:17px!important;background:#fff!important}
.thread-card,.comment,.reply-box{border-radius:14px!important}.discussion-layout{grid-template-columns:minmax(0,1fr) 290px!important}.discussion-page .thread-main{min-width:0}.discussion-page h1{font:700 clamp(31px,4vw,46px)/1.02 Georgia,"Times New Roman",serif!important}.prose.large{font-size:13px!important;line-height:1.65!important}.comments-title h2{font-family:Georgia,"Times New Roman",serif!important}

/* Account / auth / forms --------------------------------------------------- */
.account-hero>.shell{display:flex!important;align-items:center!important}.profile-grid{gap:14px!important}.account-main{min-width:0}.account-tabs,.business-manage-tabs{background:#fff!important;border:1px solid var(--ks26-line)!important;border-radius:12px!important;padding:5px!important;gap:3px!important}.account-tabs a,.business-manage-tabs a{border-radius:8px!important;font-size:10px!important}.account-tabs a.active,.business-manage-tabs a.active{background:var(--ks26-green)!important;color:#fff!important}
.form-card{background:#fff!important;padding:19px!important}.form-card h1,.form-card h2{font-family:Georgia,"Times New Roman",serif!important}.field label{font-size:10px!important}.field input,.field textarea,.field select,input,textarea,select{border-color:var(--ks26-line)!important;border-radius:9px!important}.auth-page{width:var(--shell)!important;max-width:1060px!important;margin:30px auto 55px!important;border-radius:20px!important;overflow:hidden!important;background:#fff!important;box-shadow:var(--ks26-shadow-lg)!important}.auth-art{background:linear-gradient(145deg,var(--ks26-green),#17675d)!important}.auth-art h2{font-family:Georgia,"Times New Roman",serif!important;color:#fff!important}.auth-card{border:0!important;box-shadow:none!important;border-radius:0!important}.auth-card h1{font-family:Georgia,"Times New Roman",serif!important;font-size:37px!important}
.create-page,.edit-page{padding-top:25px!important}

/* Growth pages: Jobb, Student, Lokalt, Helgen ----------------------------- */
.ksg-page{padding:22px 0 55px!important}.ksg-hero{border-radius:19px!important;padding:28px!important;background:linear-gradient(90deg,rgba(7,52,46,.95),rgba(7,52,46,.72)),url('/assets/premium-karlstad-river.svg') center/cover!important;box-shadow:var(--ks26-shadow)!important}.ksg-hero:after{display:none!important}.ksg-hero h1{font:700 clamp(35px,4.5vw,55px)/.98 Georgia,"Times New Roman",serif!important;letter-spacing:-.055em!important}.ksg-hero p{font-size:13px!important;line-height:1.5!important}.ksg-hero-card,.ksg-student-card{border-radius:14px!important;box-shadow:0 12px 30px rgba(0,0,0,.15)!important}.ksg-section{margin-top:18px!important}.ksg-section-head h2{font-family:Georgia,"Times New Roman",serif!important;font-size:25px!important}.ksg-section-head p{font-size:11px!important}.ksg-grid{gap:9px!important}.ksg-card{padding:14px!important;background:#fff!important}.ksg-card h3{font-size:14px!important}.ksg-card p{font-size:10px!important}.ksg-meta,.ksg-source{font-size:9px!important}.ksg-feed-filters{gap:5px!important}.ksg-feed-filters button{font-size:9px!important;border-radius:999px!important}.ksg-student-actions{gap:6px!important}.ksg-student-actions a{border-radius:10px!important;font-size:10px!important;padding:10px!important}
body.page-jobb .ksg-hero,body.page-student .ksg-hero{min-height:215px}.page-student .ksg-student-card{background:#fff!important;color:var(--ks26-ink)!important}.page-student .ksg-student-card .number{color:var(--ks26-orange)!important}

/* Special injected Upptäck / Rösta pages --------------------------------- */
[class^="ks447-"],[class*=" ks447-"],[class^="ks448-"],[class*=" ks448-"]{--green:var(--ks26-green-2);--ink:var(--ks26-ink);--cream:var(--ks26-cream);--line:var(--ks26-line)}
.ks447-hero,.ks448-hero{border-radius:19px!important;box-shadow:var(--ks26-shadow)!important}.ks447-card,.ks448-card,.ks448-section,.ks447-section{border-radius:14px!important}.ks448-kicker,.ks447-kicker{color:var(--ks26-orange)!important}

/* Footer ------------------------------------------------------------------ */
.ks2026-community-cta{background:var(--ks26-green);color:#fff;padding:18px 0;margin-top:28px}.ks2026-community-cta .shell{display:flex;align-items:center;justify-content:space-between;gap:20px}.ks2026-community-cta .shell>div{display:flex;align-items:center;gap:12px}.ks2026-cta-icon{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.12);color:#ff9c76}.ks2026-community-cta b{font-family:Georgia,"Times New Roman",serif;font-size:18px}.ks2026-community-cta p{margin:2px 0 0;color:#cfe1dc;font-size:10px}
.ks2026-footer{margin:0!important;background:#fff!important;border-top:0!important;color:var(--ks26-text)!important}.ks2026-footer-grid{display:grid!important;grid-template-columns:1.8fr repeat(4,1fr)!important;gap:26px!important;padding:34px 0 24px!important}.ks2026-footer-grid h3{font-size:11px!important;margin:0 0 10px!important;text-transform:uppercase;letter-spacing:.08em}.ks2026-footer-grid>div>a,.ks2026-footer-grid .link-button{display:block!important;margin:7px 0!important;font-size:10px!important;color:#5c716d!important}.ks2026-footer-grid>div>a:hover{color:var(--ks26-green)!important}.ks2026-footer-brand img{width:175px!important}.ks2026-footer-brand p{font-size:10px;color:var(--ks26-muted);max-width:285px}.ks2026-footer-brand>span{font-family:Georgia,"Times New Roman",serif;font-style:italic;color:var(--ks26-green);font-size:12px}.ks2026-footer-bottom{display:flex;justify-content:space-between;padding:13px 0 18px!important;border-top:1px solid var(--ks26-line)!important;color:#7a8d89;font-size:9px!important}

/* Admin keeps functionality, gets only the calmer shell ------------------- */
.page-admin .ks2026-community-cta{display:none}.page-admin .admin-control{padding-top:18px}.page-admin .admin-workspace h1{font-family:Georgia,"Times New Roman",serif}

/* Mobile ------------------------------------------------------------------ */
.ks2026-menu-toggle{display:none!important}
.ks2026-menu-bars{width:18px;height:14px;display:grid;align-content:space-between}
.ks2026-menu-bars i{display:block;height:2px;border-radius:999px;background:var(--ks26-green);transition:transform .18s ease,opacity .18s ease}
.ks2026-menu-toggle[aria-expanded="true"] .ks2026-menu-bars i:nth-child(1){transform:translateY(6px) rotate(45deg)}
.ks2026-menu-toggle[aria-expanded="true"] .ks2026-menu-bars i:nth-child(2){opacity:0}
.ks2026-menu-toggle[aria-expanded="true"] .ks2026-menu-bars i:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.ks2026-mobile-menu{position:fixed;inset:64px 0 0;z-index:115;background:rgba(8,47,43,.34);backdrop-filter:blur(8px);overflow:auto;overscroll-behavior:contain}
.ks2026-mobile-menu[hidden]{display:none!important}
.ks2026-mobile-menu-inner{margin-top:8px;margin-bottom:86px;padding:18px;background:#fff;border:1px solid var(--ks26-line);border-radius:0 0 20px 20px;box-shadow:0 24px 60px rgba(8,47,43,.22)}
.ks2026-mobile-menu-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-bottom:12px;border-bottom:1px solid var(--ks26-line)}
.ks2026-mobile-menu-head h2{margin:3px 0 0;font:700 25px/1.05 Georgia,"Times New Roman",serif}
.ks2026-mobile-menu-close{width:36px;height:36px;border:1px solid var(--ks26-line);border-radius:10px;background:#fff;color:var(--ks26-green);font-size:24px;line-height:1;cursor:pointer}
.ks2026-mobile-menu-primary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:14px 0}
.ks2026-mobile-menu-primary a{display:grid;grid-template-columns:34px 1fr;grid-template-rows:auto auto;column-gap:9px;align-items:center;padding:10px;border:1px solid var(--ks26-line);border-radius:13px;background:#fff;color:var(--ks26-text)}
.ks2026-mobile-menu-primary a>span{grid-row:1/3;width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:var(--ks26-green-3);color:var(--ks26-green);font-size:17px;font-weight:900}
.ks2026-mobile-menu-primary a b{font-size:12px}.ks2026-mobile-menu-primary a small{font-size:8.5px;color:var(--ks26-muted);margin-top:1px}
.ks2026-mobile-menu-primary a.active{border-color:#b9d1c8;background:var(--ks26-green-4)}
.ks2026-mobile-menu-primary a.active>span{background:var(--ks26-green);color:#fff}
.ks2026-mobile-menu-more{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:12px 0;border-top:1px solid var(--ks26-line)}
.ks2026-mobile-menu-more a{display:flex;align-items:center;gap:7px;min-height:42px;padding:8px;border-radius:10px;background:#f7f9f8;color:#49645f;font-size:10px;font-weight:800}
.ks2026-mobile-menu-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding-top:5px}.ks2026-mobile-menu-actions .btn{justify-content:center}
body.ks2026-mobile-menu-open{overflow:hidden}
.ks2026-mobile-nav{background:rgba(255,255,255,.97)!important;border-top:1px solid var(--ks26-line)!important;box-shadow:0 -10px 35px rgba(8,47,43,.08)!important}.ks2026-mobile-nav a{color:#687d79!important}.ks2026-mobile-nav a.active{color:var(--ks26-green)!important}.ks2026-mobile-nav .add span{background:var(--ks26-orange)!important;color:#fff!important;box-shadow:0 7px 20px rgba(255,91,36,.25)!important}

@media(max-width:1120px){
  .ks2026-nav>a,.ks2026-more>summary{padding-inline:7px;font-size:11.5px}.ks2026-header-actions .add-primary{display:none!important}
  #ks43-live-home .ks43-live-layout{grid-template-columns:minmax(0,1.45fr) minmax(250px,.7fr)!important}
  .event-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.business-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:900px){
  .ks2026-menu-toggle{display:grid!important;place-items:center}.mobile-nav.ks2026-mobile-nav{display:grid!important;visibility:visible!important;opacity:1!important}
  .ks2026-header-row{height:64px}.ks2026-brand img{width:168px}.ks2026-nav{display:none!important}.ks2026-header-actions{margin-left:auto}.ks2026-header-actions .login-btn{display:flex!important}
  .ks2026-livebar{min-height:38px}.ks2026-live-items{display:flex;overflow-x:auto;scrollbar-width:none}.ks2026-live-items a{min-width:max-content;padding-inline:12px}.ks2026-live-items::-webkit-scrollbar{display:none}.ks2026-live-arrow{display:none}
  #ks43-live-home .ks43-live-layout{grid-template-columns:1fr!important}.ks43-panel,.ks43-now-panel,.ks4436-local-live,#ks43-live-home .ks43-panel:nth-child(n){grid-column:1!important;grid-row:auto!important}.ks2026-feature-layout{grid-template-columns:1fr!important}.ks2026-feature-side{grid-template-columns:repeat(4,minmax(0,1fr))}.ks2026-feature-event{min-height:330px}
  .event-grid,.ks445-home-event-grid,.ks443-home-event-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.discussion-layout{grid-template-columns:1fr!important}.discussion-layout>aside{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .ks2026-footer-grid{grid-template-columns:1.7fr repeat(2,1fr)!important}.ks2026-footer-grid>div:nth-child(4),.ks2026-footer-grid>div:nth-child(5){padding-top:6px}
}
@media(max-width:680px){
  :root{--shell:min(100% - 22px,1230px)}
  .ks2026-mobile-menu{inset:58px 0 0}.ks2026-mobile-menu-inner{width:100%;margin-top:0;border-left:0;border-right:0;border-radius:0 0 18px 18px}.ks2026-mobile-menu-more{grid-template-columns:1fr 1fr}
  body{padding-bottom:70px}.site-header.ks2026-header{top:0}.ks2026-header-row{height:58px;gap:8px}.ks2026-brand img{width:146px}.ks2026-header-actions .icon-btn,.ks2026-header-actions .notify-btn{width:34px;height:34px}.ks2026-header-actions .profile-chip b,.ks2026-header-actions .login-btn{display:none!important}.ks2026-header-actions .profile-chip{padding:3px;border:0;background:transparent}.profile-chip span{width:32px;height:32px}
  .ks2026-livebar-wrap{border-radius:0}.ks2026-livebar{width:100%;padding:0 10px;gap:7px}.ks2026-live-label{font-size:8px;padding:4px 7px}.ks2026-live-items a{font-size:8.5px;padding:7px 9px}.ks2026-live-items a:nth-child(n+3){display:none}
  body.page-home #ks43-live-home{width:calc(100% - 18px);margin-top:12px!important}.ks43-live-brand{display:block!important}#ks43-live-home .ks43-live-brand h1{font-size:30px!important}#ks43-live-home .ks43-live-brand p{font-size:10px!important;margin-top:4px!important}#ks43-live-home .ks43-live-badge{display:none!important}
  #ks43-live-home .ks43-panel{padding:11px!important;border-radius:13px!important}.ks2026-feature-layout{min-height:0}.ks2026-feature-event{min-height:300px}.ks2026-feature-shade{padding:18px 16px}.ks2026-feature-shade h2{font-size:32px!important}.ks2026-feature-shade p{font-size:10px}.ks2026-feature-side{grid-template-columns:1fr 1fr}.ks2026-feature-side .ks43-quick-card{min-height:72px!important}
  #ks43-live-home .ks43-discover-grid{grid-template-columns:1fr 1fr!important}
  .section{padding:28px 0}.section-head{align-items:end}.section-head h2{font-size:24px}.section-head p{font-size:10px}.section-head>a{font-size:9px}
  .event-grid,.ks445-home-event-grid,.ks443-home-event-grid,.business-grid{grid-template-columns:1fr 1fr!important;gap:7px!important}.card-body{padding:10px}.card-body h3{font-size:13px}.card-body p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:9.5px}.card-foot{font-size:8px}.content-card{border-radius:12px!important}.card-media{border-radius:11px 11px 0 0}.date-tile{transform:scale(.85);transform-origin:top left}
  .page-hero,.area-profile-hero,.account-hero{padding-top:12px!important}.page-hero>.shell,.area-profile-hero>.shell,.account-hero>.shell{min-height:155px;padding:20px;border-radius:15px}.page-hero h1,.area-profile-hero h1,.account-hero h1{font-size:37px!important}.page-hero p,.area-profile-hero p,.account-hero p{font-size:11px!important}.hero-mini-art{display:none!important}
  .filterbar{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important}.filterbar .grow{grid-column:1/-1}.filterbar .btn{grid-column:1/-1}.time-tabs{overflow-x:auto;display:flex;scrollbar-width:none}.time-tabs::-webkit-scrollbar{display:none}.time-tabs a{white-space:nowrap}
  .detail-hero,.business-profile,.discussion-page{padding-top:12px!important}.detail-grid{grid-template-columns:1fr!important}.detail-content{padding:15px!important}.detail-content h1{font-size:34px!important}.business-profile-head{padding:14px!important}.business-profile-head{display:block!important}.business-profile-actions{margin-top:10px}.discussion-layout>aside{display:block}
  .auth-page{width:calc(100% - 18px)!important;margin:14px auto 35px!important;border-radius:15px!important}.auth-art{padding:24px!important}.auth-card{padding:22px!important}.auth-card h1{font-size:31px!important}
  .ksg-page{padding-top:12px!important}.ksg-hero{border-radius:15px!important;padding:21px!important;margin-inline:0!important}.ksg-hero h1{font-size:37px!important}.ksg-hero p{font-size:11px!important}.ksg-grid{grid-template-columns:1fr!important}.ksg-student-actions{grid-template-columns:1fr 1fr!important}
  .ks2026-community-cta{margin-top:12px;padding:15px 0}.ks2026-community-cta .shell{display:block}.ks2026-community-cta .btn{margin-top:11px}.ks2026-community-cta p{font-size:9px}.ks2026-footer-grid{grid-template-columns:1fr 1fr!important;gap:20px!important;padding:27px 0 20px!important}.ks2026-footer-brand{grid-column:1/-1}.ks2026-footer-bottom{display:block;text-align:center}.ks2026-footer-bottom span{display:block;margin:3px}
}
@media(max-width:430px){
  .event-grid,.ks445-home-event-grid,.ks443-home-event-grid,.business-grid{grid-template-columns:1fr!important}.ks2026-feature-side{grid-template-columns:1fr 1fr}.ks2026-feature-event{min-height:280px}.ks2026-feature-shade h2{font-size:29px!important}.filterbar{grid-template-columns:1fr!important}.filterbar .grow,.filterbar .btn{grid-column:1}.ks2026-footer-grid{grid-template-columns:1fr 1fr!important}
}

@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}


/* v4.4.57 — wide desktop density + homepage flow/contrast fixes ---------- */
@media (min-width:1400px){
  :root{--shell:min(1360px,calc(100% - 44px))}
  .ks2026-nav{margin-left:28px;flex:1;justify-content:flex-end}
  .ks2026-nav>a,.ks2026-more>summary{padding-inline:9px;font-size:12px}
  .ks2026-wide-nav{display:flex!important}
}
@media (min-width:1700px){
  :root{--shell:min(1480px,calc(100% - 64px))}
  .ks2026-nav>a,.ks2026-more>summary{padding-inline:11px;font-size:12.5px}
}
@media (max-width:1399px){.ks2026-wide-nav{display:none!important}}

/* Keep the LIVE dashboard compact instead of reserving an empty shared row. */
@media (min-width:901px){
  #ks43-live-home .ks43-live-layout{grid-auto-flow:row!important;align-items:start!important}
  #ks43-live-home .ks43-now-panel{grid-column:1/2!important;grid-row:1!important}
  #ks43-live-home .ks43-panel:nth-child(2){grid-column:2/3!important;grid-row:1!important}
  #ks43-live-home .ks43-panel:nth-child(3){grid-column:1/2!important;grid-row:2!important}
  #ks43-live-home .ks43-panel:nth-child(4){grid-column:1/2!important;grid-row:3!important}
  #ks43-live-home .ks4436-local-live,#ks43-live-home .ks443-local-live,#ks43-live-home [data-ks-local-live]{grid-column:2/3!important;grid-row:2/4!important;align-self:start!important}
  #ks43-live-home .ks43-awards{grid-column:1/3!important;grid-row:4!important}
  #ks43-live-home .ks43-mine{grid-column:1/3!important;grid-row:5!important}
}

/* Wide home event row: one more event fits comfortably on desktop. */
@media (min-width:1200px){
  body.page-home .event-grid,
  body.page-home .ks445-home-event-grid,
  body.page-home .ks443-home-event-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}

/* Contrast corrections on dark/gradient cards. */
body.page-home .pride-card h2,body.page-home .pride-card h3{color:#fff!important;text-shadow:0 1px 1px rgba(0,0,0,.08)}
body.page-home .pride-card p{color:#e4f2ef!important}
body.page-home .photo-section .section-head h2,body.page-home .photo-section .section-head h3{color:#fff!important}
body.page-home .photo-section .section-head p{color:#d7e9e5!important}
body.page-home .photo-section .section-head>a{color:#ffd28a!important}
body.page-home .photo-section .section-kicker,body.page-home .photo-section .eyebrow{color:#ffcf78!important}


/* v4.4.58 — mobile menu overlay and z-index fix ------------------------ */
.site-header.ks2026-header{isolation:isolate}
@media (max-width:900px){
  .site-header.ks2026-header{z-index:1300!important}
  .ks2026-mobile-menu{position:fixed!important;top:64px;right:0;bottom:0;left:0;z-index:1320!important;background:rgba(247,244,237,.985)!important;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);overflow:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
  .ks2026-mobile-menu-inner{position:relative;z-index:1;width:min(100%,980px);min-height:calc(100dvh - 64px);margin:0 auto;padding:14px 12px 86px;background:transparent;border:0;border-radius:0;box-shadow:none}
  body.ks2026-mobile-menu-open main,body.ks2026-mobile-menu-open .site-footer{pointer-events:none;user-select:none}
}
@media (max-width:680px){
  .ks2026-mobile-menu{top:58px!important}
  .ks2026-mobile-menu-inner{min-height:calc(100dvh - 58px);padding:12px 10px 82px}
}

/* v4.4.60 — mobile viewport containment + bottom navigation fix ----------- */
@media (max-width:900px){
  html,body{max-width:100%!important;overflow-x:hidden!important}

  /* Full-screen menu must never inherit a shell width or protrude sideways. */
  #ks2026-mobile-menu.ks2026-mobile-menu{
    left:0!important;right:0!important;width:auto!important;max-width:none!important;
    margin:0!important;padding:0!important;box-sizing:border-box!important;
  }
  #ks2026-mobile-menu .ks2026-mobile-menu-inner,
  #ks2026-mobile-menu .ks2026-mobile-menu-inner.shell{
    width:100%!important;max-width:100%!important;margin:0!important;
    padding-left:14px!important;padding-right:14px!important;box-sizing:border-box!important;
  }
  .ks2026-mobile-menu-primary{grid-template-columns:repeat(2,minmax(0,1fr))!important;min-width:0}
  .ks2026-mobile-menu-primary a,.ks2026-mobile-menu-more a{min-width:0;overflow:hidden}
  .ks2026-mobile-menu-primary a b,.ks2026-mobile-menu-primary a small{min-width:0;overflow:hidden;text-overflow:ellipsis}
  .ks2026-mobile-menu-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important;min-width:0}
  .ks2026-mobile-menu-actions .btn{min-width:0;width:100%;padding-inline:8px}

  /* Bottom nav: exactly five equal columns inside the visible viewport. */
  nav.mobile-nav.ks2026-mobile-nav{
    left:0!important;right:0!important;bottom:0!important;width:100%!important;max-width:100%!important;
    min-width:0!important;margin:0!important;box-sizing:border-box!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    column-gap:0!important;overflow:visible!important;
    padding-left:max(4px,env(safe-area-inset-left))!important;
    padding-right:max(4px,env(safe-area-inset-right))!important;
  }
  nav.mobile-nav.ks2026-mobile-nav>a{
    min-width:0!important;width:auto!important;max-width:100%!important;
    padding-left:1px!important;padding-right:1px!important;
    overflow:visible!important;text-align:center;white-space:nowrap;
  }
  nav.mobile-nav.ks2026-mobile-nav>a:not(.add){font-size:9.5px!important}
  nav.mobile-nav.ks2026-mobile-nav>a>span{line-height:1}
  nav.mobile-nav.ks2026-mobile-nav .add span{margin-left:auto!important;margin-right:auto!important}
}
@media (max-width:430px){
  #ks2026-mobile-menu .ks2026-mobile-menu-inner,
  #ks2026-mobile-menu .ks2026-mobile-menu-inner.shell{padding-left:10px!important;padding-right:10px!important}
  nav.mobile-nav.ks2026-mobile-nav>a:not(.add){font-size:9px!important}
}
