/*
Theme Name: SeRemo
Theme URI: https://segala.ch/
Author: Segala
Description: Schlichtes responsives WordPress-Theme mit rechter Menüspalte, weiss, rot und schwarz.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: segala-rechts
*/
:root{--red:#bc151f;--black:#171717;--white:#fff;--line:#e4e4e4}*{box-sizing:border-box}body{margin:0;background:var(--white);color:var(--black);font:16px/1.65 Arial,Helvetica,sans-serif}a{color:var(--red);text-decoration:none}a:hover,a:focus{text-decoration:underline}img{max-width:100%;height:auto}.site-header{border-bottom:4px solid var(--red);padding:24px max(24px,calc((100vw - 1180px)/2))}.site-title{margin:0;font-size:2rem;line-height:1.2;font-weight:700}.site-title a{color:var(--black)}.site-description{margin:4px 0 0;color:#666}.site-layout{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:48px;padding:38px 24px 70px}.site-main{min-width:0}.entry-title{font-size:clamp(1.55rem,3vw,2.15rem);line-height:1.25;margin:0 0 18px}.entry-title a{color:var(--black)}.entry-title a:hover{color:var(--red)}.post-item{padding-bottom:30px;margin-bottom:30px;border-bottom:1px solid var(--line)}.entry-meta{color:#666;font-size:.9rem;margin:0 0 16px}.entry-content{overflow-wrap:anywhere}.entry-content p{margin:0 0 1.2em}.entry-content h2,.entry-content h3{line-height:1.3}.sidebar{border-left:1px solid var(--line);padding-left:25px}.menu-heading{margin:0 0 14px;color:var(--red);font-size:1.05rem;text-transform:uppercase;letter-spacing:.08em}.sidebar .menu,.sidebar .sub-menu{list-style:none;margin:0;padding:0}.sidebar .menu>li{border-bottom:1px solid var(--line)}.sidebar .menu a{display:block;padding:11px 6px;color:var(--black);font-weight:600}.sidebar .menu a:hover,.sidebar .current-menu-item>a,.sidebar .current_page_item>a{color:var(--red);background:#fafafa;text-decoration:none}.sidebar .sub-menu{padding-left:16px}.sidebar .sub-menu a{font-size:.94rem;font-weight:400}.sidebar .widget{margin-top:32px}.sidebar .widget-title{font-size:1.1rem}.site-footer{border-top:1px solid var(--line);padding:22px 24px;text-align:center;font-size:.9rem;color:#555}.pagination .page-numbers{display:inline-block;margin:5px;padding:5px 11px;border:1px solid var(--line)}.pagination .current{background:var(--red);color:#fff}.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.screen-reader-text:focus{position:static;width:auto;height:auto;clip:auto}input,textarea,select{max-width:100%;padding:9px;border:1px solid #bbb}button,input[type=submit],.wp-block-button__link{background:var(--red);color:#fff;border:0;padding:10px 17px;cursor:pointer}.aligncenter{display:block;margin-left:auto;margin-right:auto}.alignright{float:right;margin-left:20px}.alignleft{float:left;margin-right:20px}@media(max-width:760px){.site-header{padding:20px}.site-layout{display:flex;flex-direction:column;padding:26px 20px 45px;gap:30px}.sidebar{border-left:0;border-top:3px solid var(--red);padding:20px 0 0}.site-title{font-size:1.7rem}}

/* Aufklappbares Menü */
.sidebar nav li.has-collapsible-menu{position:relative;}
.sidebar nav li.has-collapsible-menu>a{padding-right:40px;}
.sidebar nav .submenu-toggle{position:absolute;right:0;top:3px;width:34px;height:38px;padding:0;background:transparent;color:var(--black);border:0;border-radius:3px;cursor:pointer;font-size:1.3rem;line-height:1;}
.sidebar nav .submenu-toggle:hover,.sidebar nav .submenu-toggle:focus-visible{background:#f6e9ea;color:var(--red);}
.sidebar nav .submenu-toggle span{display:block;transition:transform .15s ease;}
.sidebar nav .submenu-toggle[aria-expanded="true"] span{transform:rotate(180deg);}
.sidebar nav [hidden]{display:none!important;}
.sidebar nav .sub-menu,.sidebar nav .children{list-style:none;padding-left:15px;margin:0;}
.sidebar nav .submenu-overview a{font-style:italic;color:#777;font-size:.85rem;}
.sidebar nav .sub-menu li.has-collapsible-menu>.submenu-toggle{top:1px;}

/* Version 1.2: genügend Platz für breite Plugin-Ansichten, z.B. Lokdatenbank. */
@media (min-width: 761px) {
  .site-layout {
    width: 100%;
    max-width: 1580px;
    grid-template-columns: minmax(0, 1fr) 240px;
    gap: 32px;
    padding-left: 24px;
    padding-right: 24px;
    align-items: start;
  }
  .site-main {
    min-width: 0;
    max-width: 100%;
    overflow-x: auto;
    position: relative;
    z-index: 0;
    isolation: isolate;
  }
  .sidebar {
    min-width: 0;
    width: 100%;
    position: relative;
    z-index: 1;
    overflow-wrap: anywhere;
    background: #fff;
  }
}
/* Lange Navigationsnamen sollen innerhalb der rechten Spalte umbrechen. */
.sidebar nav, .sidebar nav ul, .sidebar nav li { max-width: 100%; }
.sidebar nav a { overflow-wrap: anywhere; }
@media (max-width: 760px) {
  .site-main { min-width: 0; max-width: 100%; overflow-x: auto; }
}

/* Version 1.3: korrektes Seiten-Menü ohne Listenpunkte und ohne abgeschnittene Titel. */
.sidebar nav .menu, .sidebar nav .menu ul,
.sidebar nav .page-menu, .sidebar nav .page-menu ul,
.sidebar nav .children { list-style: none; margin: 0; padding: 0; }
.sidebar nav .menu li, .sidebar nav .page-menu li,
.sidebar nav .children li { list-style: none; margin: 0; padding: 0; }
.sidebar nav .menu li::marker, .sidebar nav .page-menu li::marker { content: ''; }
.sidebar nav a { display: block; font-weight: 600; color: #171717; padding: 11px 38px 11px 10px; overflow-wrap: normal; word-break: normal; hyphens: auto; line-height: 1.4; }
.sidebar nav li:not(.has-collapsible-menu)>a { padding-right: 10px; }
.sidebar nav .sub-menu, .sidebar nav .children { padding-left: 13px; }
.sidebar nav .sub-menu a, .sidebar nav .children a { font-weight: 400; font-size: .94rem; }
.sidebar nav li { border-bottom: 1px solid #ececec; }
.sidebar nav .sub-menu li, .sidebar nav .children li { border-bottom: 0; }
.sidebar nav li.has-collapsible-menu > a { padding-right: 40px; }
.sidebar nav .submenu-toggle { top: 5px; right: 2px; }
@media (min-width: 761px) {
 .site-layout { max-width: none; width: 100%; grid-template-columns: minmax(0, 1fr) 280px; column-gap: 20px; padding: 25px 24px 55px; }
 .sidebar { min-width: 0; padding-left: 16px; }
 .site-main { max-width: 100%; overflow-x: auto; }
}
@media (max-width: 760px) {
 .sidebar { width: 100%; }
 .site-main { max-width: 100%; }
}

/* Version 1.4: mobiles Hamburger-Menü rechts oben. Desktop bleibt unverändert. */
.mobile-menu-toggle { display: none; }
@media (max-width: 760px) {
  .site-header { position: relative; padding-right: 100px; min-height: 85px; }
  .mobile-menu-toggle {
    position: absolute; top: 18px; right: 18px; z-index: 10;
    display: inline-flex; align-items: center; justify-content: center; gap: 7px;
    padding: 9px 11px; border: 1px solid var(--red); border-radius: 5px;
    background: #fff; color: #171717; font: 600 14px Arial,Helvetica,sans-serif;
    cursor: pointer; min-height: 44px; min-width: 44px;
  }
  .mobile-menu-toggle:focus-visible { outline: 3px solid var(--red); outline-offset: 2px; }
  .mobile-menu-toggle[aria-expanded="true"] { background: var(--red); color: #fff; }
  .mobile-menu-bars { display: flex; flex-direction: column; justify-content: center; gap: 4px; width: 21px; }
  .mobile-menu-bars span { display: block; width: 21px; height: 2px; background: currentColor; border-radius: 2px; }
  body.segala-js .sidebar { display: none; }
  body.segala-js .sidebar.mobile-menu-open { display: block; }
  .site-layout { gap: 0; }
  .sidebar { margin-top: 24px; border-top: 3px solid var(--red); }
}

/* Version 1.5: Auf dem Smartphone öffnet das Menü ganz oben, direkt unter dem Seitenkopf. */
@media (max-width: 760px) {
  .site-layout { display: flex; flex-direction: column; padding-top: 0; }
  .sidebar { order: -1; margin: 0; padding: 14px 0 12px; border-top: 0; border-bottom: 3px solid var(--red); background: #fff; }
  .site-main { order: 0; padding-top: 24px; }
  body.segala-js .sidebar:not(.mobile-menu-open) { display: none; }
  body.segala-js .sidebar.mobile-menu-open { display: block; }
}

.seremo-counter{margin:0 auto 12px;text-align:center;font-size:14px;color:#171717}.seremo-counter *{max-width:100%}
