/*
Theme Name: ATDT Sokbostad.se
Description: GeneratePress-barntema for sokbostad.se, Sveriges bostadssokarportal for lediga hyresratter. Arketyp A (Faltguide): versala rubriker med accentstapel, mono-etiketter, spec-kort i bordat rutnat. Koncept Trapphustavlan: rafflad svart filt med plastbokstaver, mässingsram, kalkputs och plommon. Overpass, Albert Sans och Overpass Mono. Stylar pluginet sokbostad-listings via dess --sb-tokens, utan att skriva om dess markup.
Author: Atdt AB
Template: generatepress
Version: 1.0.0
Text Domain: atdt-gp-sokbostad-se
*/

/* ===== 1. Pluginets designsystem far temats identitet =====
   Pluginet satter sina tokens pa :root i inline-stilar som kan skrivas ut
   efter temats stilmall. html:root har hogre specificitet och vinner
   oavsett ordning. Galler bara sokbostad.se, flatfinder.se har eget tema. */
html:root{--sb-paper:var(--atdt-bg);--sb-card:var(--atdt-surface);--sb-ink:var(--atdt-ink);--sb-ink-soft:var(--atdt-muted);--sb-ink-faint:var(--atdt-faint);--sb-line:var(--atdt-neutral);--sb-line-soft:#E6E0D5;--sb-brand:var(--atdt-accent);--sb-brand-700:var(--atdt-accent-700);--sb-brand-100:var(--atdt-accent-100);--sb-accent:var(--atdt-board);--sb-accent-soft:var(--atdt-brass-100);--sb-pos:var(--atdt-positive);--sb-pos-soft:#E3EFE6;--sb-radius:var(--atdt-radius);--sb-radius-sm:3px;--sb-shadow:0 1px 0 rgba(29,27,33,.06);--sb-shadow-hover:0 0 0 2px var(--atdt-brass);--sb-font:var(--atdt-font-body);--sb-display:var(--atdt-font-display)}

/* ===== 2. Grund (arketyp A, Faltguide) ===== */
body{background:var(--atdt-bg);color:var(--atdt-ink);font-family:var(--atdt-font-body);line-height:1.62}
body,button,input,select,textarea{font-family:var(--atdt-font-body)}
.entry-content{font-size:1.04rem}
h1,h2,h3,h4,.entry-title,.site-title,.main-title{font-family:var(--atdt-font-display);color:var(--atdt-ink)}
h1,.entry-title{font-weight:800;letter-spacing:-.015em;line-height:1.1}
a{color:var(--atdt-accent)}
a:hover,a:focus{color:var(--atdt-accent-700)}
/* Understrykning bara i redaktionell lopttext, aldrig i pluginets kort och knappar. */
.entry-content > p a,.entry-content > ul li a,.entry-content > ol li a,.entry-content > figure figcaption a{text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:3px}
:focus-visible{outline:3px solid var(--atdt-brass);outline-offset:2px}

/* ===== 3. Tavlan overst: namntavlan i trapphuset ===== */
.atdt-tavla{background-color:var(--atdt-board);background-image:repeating-linear-gradient(180deg,var(--atdt-board) 0 5px,var(--atdt-board-rib) 5px 7px);border-bottom:4px solid var(--atdt-brass);color:var(--atdt-board-ink)}
.atdt-tavla__inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.55rem 40px;font-family:var(--atdt-font-mono);font-size:.78rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase}
.atdt-tavla__text{color:var(--atdt-board-ink)}
.atdt-tavla__sok{color:var(--atdt-brass);text-decoration:none;white-space:nowrap}
.atdt-tavla__sok::after{content:" \2192"}
.atdt-tavla__sok:hover,.atdt-tavla__sok:focus{color:var(--atdt-board-ink);text-decoration:underline}

/* ===== 4. Sidhuvud ===== */
.site-header{background:var(--atdt-surface);border-bottom:1px solid var(--atdt-neutral)}
.inside-header{padding-top:22px;padding-bottom:22px}
.main-title{font-size:1.65rem;font-weight:900;letter-spacing:-.01em;line-height:1}
.main-title a,.main-title a:hover{color:var(--atdt-ink);text-decoration:none;display:inline-flex;align-items:center;gap:.55rem}
.main-title a::before{content:"";flex:0 0 auto;width:.95em;height:1.15em;border-radius:3px 3px 50% 50%;background:var(--atdt-brass);box-shadow:inset 0 0 0 3px var(--atdt-board),inset 0 -.32em 0 3px var(--atdt-board)}
.main-navigation,.main-navigation ul ul{background:transparent}
.main-navigation .main-nav ul li a{font-family:var(--atdt-font-mono);font-size:.82rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--atdt-ink)}
html body .main-nav .menu > .menu-item > a{text-decoration:none}
.main-navigation .main-nav ul li a:hover,.main-navigation .main-nav ul li[class*="current-menu-"] > a{color:var(--atdt-accent);box-shadow:inset 0 -3px 0 var(--atdt-brass)}
.main-navigation .menu-toggle,.mobile-menu-control-wrapper .menu-toggle{background:var(--atdt-board);color:var(--atdt-board-ink);border-radius:3px}
.main-navigation.toggled .main-nav ul ul,.main-navigation.toggled .main-nav > ul{background:var(--atdt-surface)}

/* ===== 5. Ytor ===== */
.site-content{padding-top:0}
.separate-containers .inside-article,.separate-containers .comments-area,.separate-containers .page-header,.one-container .container,.separate-containers .paging-navigation{background:var(--atdt-surface);border:1px solid var(--atdt-neutral);border-radius:var(--atdt-radius)}
.separate-containers .site-main{margin-top:28px;margin-bottom:28px}
.entry-header .entry-title{font-size:clamp(1.9rem,3.6vw,2.7rem);padding-bottom:.45rem;background:linear-gradient(var(--atdt-brass),var(--atdt-brass)) left bottom/72px 5px no-repeat}
.entry-header .entry-meta,.entry-header .entry-meta a{font-family:var(--atdt-font-mono);font-size:.8rem;letter-spacing:.06em;color:var(--atdt-muted)}
footer.entry-meta,footer.entry-meta a{font-size:.88rem;color:var(--atdt-muted)}

/* Redaktionellt innehall (artiklar, Om, Faktabanken) */
.entry-content h2{font-family:var(--atdt-font-display);font-weight:800;text-transform:uppercase;letter-spacing:.06em;font-size:1.18rem;line-height:1.25;margin:2.3em 0 .8em;padding:.15em 0 .1em .75em;border-left:6px solid var(--atdt-accent)}
.entry-content h3{font-family:var(--atdt-font-display);font-weight:800;text-transform:uppercase;letter-spacing:.04em;font-size:1rem;margin-top:1.7em}
.entry-content blockquote{border-left:6px solid var(--atdt-brass);background:var(--atdt-brass-100);margin:1.6em 0;padding:.9em 1.15em;font-style:normal}
.entry-content figcaption,.wp-element-caption{font-family:var(--atdt-font-mono);font-size:.74rem;letter-spacing:.03em;color:var(--atdt-muted)}
.entry-content table{border-collapse:collapse;font-variant-numeric:tabular-nums;border:1px solid var(--atdt-ink)}
.entry-content thead th{background:var(--atdt-board);color:var(--atdt-board-ink);font-family:var(--atdt-font-mono);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}
.entry-content th,.entry-content td{border-color:var(--atdt-neutral)}
.entry-content tbody tr:nth-child(even){background:var(--atdt-bg)}
.wp-block-button__link,.entry-content .button,input[type="submit"],button.search-submit{background:var(--atdt-accent);color:var(--atdt-on-accent);border-radius:3px;font-family:var(--atdt-font-display);font-weight:800;letter-spacing:.04em}
.wp-block-button__link:hover,input[type="submit"]:hover{background:var(--atdt-accent-700);color:var(--atdt-on-accent)}

/* ===== 6. Pluginets markup: bara komposition, aldrig ny text ===== */
/* Startsidans huvud blir en namntavla med mässingsram. */
.sb-root .sokbostad-overview__header{background-color:var(--atdt-board);background-image:repeating-linear-gradient(180deg,var(--atdt-board) 0 6px,var(--atdt-board-rib) 6px 8px);border:8px solid var(--atdt-brass);border-radius:6px;box-shadow:inset 0 0 0 2px #8E6A1F,0 2px 0 rgba(29,27,33,.12);padding:46px 28px 58px}
.sb-root .sokbostad-overview__header::before{display:none}
.sb-root .sokbostad-overview__title{font-family:var(--atdt-font-mono);font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:clamp(22px,3.3vw,38px);line-height:1.2;color:var(--atdt-board-ink)}
.sb-root .sokbostad-overview__subtitle{font-family:var(--atdt-font-mono);font-size:.92rem;letter-spacing:.04em;color:var(--atdt-board-dim)}
.sb-root .sokbostad-overview__total{color:var(--atdt-brass)}
.sb-root .sokbostad-overview__search-input{border-radius:3px;border:2px solid var(--atdt-board)!important;box-shadow:0 10px 0 -4px rgba(29,27,33,.14)}
.sb-root .sokbostad-overview__search-input:focus{border-color:var(--atdt-accent)!important;box-shadow:0 0 0 3px var(--atdt-brass)}
.sb-root .sokbostad-overview__filter-submit,.sb-btn,.sokbostad-search__submit{border-radius:3px;font-family:var(--atdt-font-display);font-weight:800;letter-spacing:.03em}

/* Etiketter i mono, som tavlans bokstaver. */
.sb-root [class*="__label"],.sb-root [class*="filter-label"],.sb-card__title,.sokbostad-listing [class*="__label"]{font-family:var(--atdt-font-mono);letter-spacing:.08em}

/* Lan och kommuner: spec-kort i bordat rutnat. */
.sb-root .sokbostad-accordion{border:1px solid var(--atdt-ink);border-radius:var(--atdt-radius);overflow:hidden}
.sb-root .sokbostad-accordion__item{border-color:var(--atdt-neutral)}
.sb-root .sokbostad-accordion__lan-name{font-family:var(--atdt-font-display);font-weight:800;letter-spacing:.01em}
.sb-root .sokbostad-accordion__stats,.sb-root .sokbostad-accordion__kommun-count{font-family:var(--atdt-font-mono);font-size:.78rem;color:var(--atdt-faint)}

/* Staplarna i fordelningen per rumsstorlek: plommon, utan pluginets gröna slut. */
.sb-root .sokbostad-area__room-fill{background:var(--atdt-accent)}

/* Annonskort och nyckeltal: fyrkantigare, med mässingskant vid hovring. */
.sb-card,.sokbostad-listing .sb-card{border-radius:var(--atdt-radius)}
.sb-root img,.sokbostad-listing img{border-radius:0}
.sokbostad-listing__breadcrumbs,.sokbostad-listing__breadcrumbs a{font-family:var(--atdt-font-mono);font-size:12.5px;letter-spacing:.04em}

/* ===== 7. Sidfot: tavlan igen ===== */
.site-footer{background:var(--atdt-footer-bg);color:var(--atdt-footer-ink)}
.atdt-artiklar{background-color:var(--atdt-footer-bg);background-image:repeating-linear-gradient(180deg,var(--atdt-footer-bg) 0 6px,var(--atdt-board-rib) 6px 8px);border-top:4px solid var(--atdt-brass);color:var(--atdt-footer-ink)}
.atdt-artiklar__inner{padding:38px 40px 30px}
.atdt-artiklar__rubrik{font-family:var(--atdt-font-mono);font-size:.82rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--atdt-brass);margin:0 0 1rem}
.atdt-artiklar__lista{list-style:none;margin:0 0 1.2rem;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:0 2rem}
.atdt-artiklar__lista li{border-top:1px solid #3A3D45;padding:.6rem 0}
.atdt-artiklar__lista a{color:var(--atdt-footer-ink);text-decoration:none;font-weight:600;line-height:1.35}
.atdt-artiklar__lista a:hover,.atdt-artiklar__lista a:focus{color:var(--atdt-brass);text-decoration:underline}
.atdt-artiklar__alla{font-family:var(--atdt-font-mono);font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--atdt-brass)}
.atdt-artiklar__alla:hover{color:var(--atdt-footer-ink)}
.site-info{background:var(--atdt-footer-bg);color:var(--atdt-footer-dim);border-top:1px solid #3A3D45;font-size:.88rem}
.site-info .inside-site-info{background:transparent;padding:20px 40px}
.site-info a,.site-info .footer-bar a{color:var(--atdt-brass)}
.site-info a:hover{color:var(--atdt-footer-ink)}
.site-info .footer-bar .widget{background:transparent;padding:0;color:var(--atdt-footer-dim)}
.site-info .footer-bar .widget_nav_menu li a{font-family:var(--atdt-font-mono);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;text-decoration:none}
.atdt-sidfotsmeny ul{list-style:none;margin:0 0 .6rem;padding:0;display:flex;flex-wrap:wrap;gap:.4rem 1.2rem}
.atdt-sidfot__rad{color:var(--atdt-footer-dim)}

/* ===== 8. Mobil ===== */
@media (max-width:768px){
	.atdt-tavla__inner{padding:.5rem 16px;font-size:.68rem;letter-spacing:.12em}
	.inside-header{padding-left:16px;padding-right:16px}
	.separate-containers .inside-article{padding:22px 16px}
	.main-title{font-size:1.35rem}
	.entry-header .entry-title{font-size:1.75rem}
	.atdt-artiklar__inner,.site-info .inside-site-info{padding-left:16px;padding-right:16px}
	.sb-root .sokbostad-overview__header{border-width:5px;padding:34px 16px 50px}
	.entry-content table{table-layout:fixed;width:100%;font-size:.8rem}
	.entry-content th,.entry-content td{word-break:break-word;overflow-wrap:anywhere}
}
@media (max-width:420px){.atdt-tavla__text{display:none}.atdt-tavla__inner{justify-content:flex-end}}
