/* ===== 12 Step Meeting List (Legacy UI) – dopasowanie do szaty AALondyn ===== */
body #tsml{font-family:"DM Sans",system-ui,sans-serif;color:var(--ink)}
body #tsml #meetings.container,body #tsml #meeting.container,body #tsml #location.container{max-width:1320px;width:auto;padding:24px 24px 60px}
body #tsml .page-header{border:0;margin:6px 0 18px;padding:0}
body #tsml .page-header h1{font-size:clamp(2.2rem,4.6vw,3.6rem);font-weight:700;letter-spacing:-.03em;color:var(--ink);margin:0}
body #tsml .controls{margin:0 0 18px}
body #tsml .controls>div{margin-bottom:10px}
body #tsml .btn,body #tsml .btn-default{background:var(--card);border:1.5px solid var(--line);color:var(--ink);border-radius:12px;font-weight:600;padding:10px 14px;box-shadow:none;text-shadow:none;background-image:none}
body #tsml .btn:hover,body #tsml .btn:focus{border-color:var(--ink);background:var(--card);color:var(--ink)}
body #tsml .btn.active,body #tsml .btn-default.active{background:var(--ink);border-color:var(--ink);color:#fff}
body #tsml .form-control{border:1.5px solid var(--line);border-radius:12px 0 0 12px;height:auto;padding:10px 14px;font-family:inherit;background:var(--card);box-shadow:none;color:var(--ink)}
body #tsml .input-group-btn .btn{border-radius:0 12px 12px 0;margin-left:-1.5px}
body #tsml .dropdown-menu{border-radius:14px;border:1px solid var(--line);box-shadow:0 14px 34px rgba(31,42,68,.14);padding:6px;background:#fffaf0}
body #tsml .dropdown-menu>li>a{border-radius:8px;padding:7px 12px;color:var(--ink)}
body #tsml .dropdown-menu>.active>a,body #tsml .dropdown-menu>li>a:hover,body #tsml .dropdown-menu>li>a:focus{background:var(--ink);color:#fff}
body #tsml table.table{border-collapse:separate;border-spacing:0 8px;background:none;margin-top:4px}
body #tsml table.table thead th{border:0;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);font-weight:700;padding:6px 14px}
body #tsml table.table thead th a{color:var(--ink-soft)}
body #tsml table.table tbody tr td,body #tsml table.table-striped tbody tr:nth-of-type(odd) td{background:var(--card);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px;vertical-align:middle}
body #tsml .row.title{display:block!important}
body #tsml #meetings table.table tbody tr td:first-child{border-left:5px solid var(--london)!important;border-radius:12px 0 0 12px;font-weight:700;white-space:nowrap}
body #tsml table.table tbody tr td:last-child{border-right:1px solid var(--line);border-radius:0 12px 12px 0}
body #tsml #meetings table.table tbody tr.attendance-online td:first-child{border-left-color:var(--north)!important}
body #tsml #meetings table.table tbody tr.attendance-hybrid td:first-child{border-left-color:var(--midlands)!important}
body #tsml table.table tbody tr.past td{opacity:.55}
body #tsml td.name a{color:var(--ink);font-weight:700;text-decoration:none;border-bottom:2px solid rgba(200,85,61,.35)}
body #tsml td.name a:hover{border-color:var(--london)}
body #tsml td.address,body #tsml td.region,body #tsml td.location{color:var(--ink-soft)}
body #tsml #map{border-radius:22px;overflow:hidden;border:1px solid var(--line)}
body #tsml .alert{border-radius:14px}
body #tsml .panel{background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:none}
body #tsml .panel-heading{background:none;border:0}
body #tsml .list-group-item{background:transparent;border-color:var(--line)}
body #tsml a{color:var(--ink)}

/* ===== Mój kalendarz (My Calendar) ===== */
.mc-main,.mc-main *{font-family:"DM Sans",system-ui,sans-serif!important}
.mc-main{color:var(--ink)}
.mc-main .my-calendar-header,.mc-main .mc_bottomnav{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin:10px 0}
.mc-main h2.heading,.mc-main .heading.my-calendar-month{font-size:1.6rem!important;font-weight:700!important;color:var(--ink)!important;text-align:left!important}
.mc-main table.my-calendar-table{border-collapse:separate!important;border-spacing:6px!important;background:none!important;border:0!important;width:100%}
.mc-main .my-calendar-table th{background:none!important;color:var(--ink-soft)!important;border:0!important;font-weight:700!important;text-transform:uppercase;font-size:.78rem!important;letter-spacing:.06em;padding:6px!important}
.mc-main .my-calendar-table td{background:var(--card)!important;border:1px solid var(--line)!important;border-radius:12px;vertical-align:top;height:96px;padding:6px!important}
.mc-main .my-calendar-table td.past-day{opacity:.5}
.mc-main .my-calendar-table td.current-day{border:2px solid var(--london)!important}
.mc-main .mc-date,.mc-main .mc-date span{background:none!important;color:var(--ink)!important;font-weight:700!important}
.mc-main .calendar-event .event-title button,.mc-main .calendar-event .event-title a{border-radius:8px!important;font-weight:600!important;font-size:.78rem!important;padding:4px 6px!important;border:0!important;text-align:left;white-space:normal}
.mc-main button,.mc-main .mc-navigation a,.mc-main input[type=submit],.mc-main select,.mc-main .my-calendar-nav a{border-radius:999px!important;border:1.5px solid var(--line)!important;background:var(--card)!important;color:var(--ink)!important;font-weight:600!important;padding:8px 14px!important;box-shadow:none!important}
.mc-main .my-calendar-nav a:hover,.mc-main button:hover{border-color:var(--ink)!important}
.mc-main .mc-navigation a.mcajax,.mc-main .my-calendar-nav li{background:none!important}
.mc-note{margin-top:20px}
/* poprawki po podglądzie */
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}
.page-content:has(.mc-main){max-width:1180px}
.mc-main .my-calendar-table td.current-day .mc-date span{color:var(--london)!important}
.mc-main .category-icon{width:14px;height:14px;vertical-align:-2px;margin-right:4px}
.mc-main .mc-key ul,.mc-main .category-key ul{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:8px 0}
.mc-main .category-key li a{border-radius:999px;padding:4px 10px;display:inline-block}
.mc-main .calendar-event .event-title a{display:block;text-decoration:none!important;hyphens:none!important;word-break:normal!important;overflow-wrap:anywhere;line-height:1.3}
.mc-main .my-calendar-table td.current-day .mc-date,.mc-main .my-calendar-table td.current-day .mc-date-container{background:none!important}
.mc-main .my-calendar-table td .mc-date,.mc-main .my-calendar-table td .mc-date *{border:0!important;font-style:normal!important;box-shadow:none!important}
/* główny przełącznik Na żywo / Online */
#tsml .aal-mode{display:inline-flex;gap:4px;padding:5px;background:var(--card);border:1.5px solid var(--line);border-radius:999px;margin:0 0 18px}
#tsml .aal-mode a{padding:11px 22px;border-radius:999px;font-weight:700;font-size:1.05rem;color:var(--ink);text-decoration:none}
#tsml .aal-mode a:hover{background:#efe6d8}
#tsml .aal-mode a[aria-current]{background:var(--ink);color:#fff}
@media(max-width:600px){#tsml .aal-mode{display:flex}#tsml .aal-mode a{flex:1;text-align:center;padding:10px 8px;font-size:.95rem}}
/* strona mityngu online: nasza grafika zamiast zdjęcia wtyczki */
body #tsml .panel-online::after{background:#fffaf0 url(online.svg) center/contain no-repeat!important;opacity:1!important;filter:none!important}
body #tsml .page-header h1 .aal-sub{display:block;font-size:clamp(1.05rem,1.8vw,1.35rem);font-weight:500;letter-spacing:0;color:var(--ink-soft);margin-top:8px}
#tsml .aal-pl{margin:-6px 0 18px;color:var(--ink-soft)}
#tsml .aal-pl a{color:var(--ink);font-weight:700}
/* widok Online: bez pustych kolumn adresu i regionu */
#tsml.aal-online th.address,#tsml.aal-online td.address,#tsml.aal-online th.region,#tsml.aal-online td.region,#tsml.aal-online th.district,#tsml.aal-online td.district{display:none!important}
/* Lista mityngów na telefonie: każdy mityng jako karta na całą szerokość */
@media (max-width:767px){
 body #tsml #meetings table.table{display:block;width:100%;border-spacing:0}
 body #tsml #meetings table.table thead{display:none}
 body #tsml #meetings table.table tbody{display:block}
 body #tsml #meetings table.table tbody tr{display:block;background:var(--card);border:1px solid var(--line);border-left:5px solid var(--london);border-radius:12px;margin:0 0 10px;padding:10px 14px}
 body #tsml #meetings table.table tbody tr.attendance-online{border-left-color:var(--north)}
 body #tsml #meetings table.table tbody tr.attendance-hybrid{border-left-color:var(--midlands)}
 body #tsml #meetings table.table tbody tr td,body #tsml #meetings table.table tbody tr td:first-child,body #tsml #meetings table.table tbody tr td:last-child{border:0!important;border-radius:0!important;padding:2px 0!important;background:none!important;white-space:normal;width:auto;max-width:100%;overflow-wrap:anywhere}
 body #tsml #meetings table.table tbody tr td.time{position:static!important;font-weight:700;color:var(--ink)}
 body #tsml #meetings table.table tbody tr td{white-space:normal!important;text-overflow:clip!important;overflow:visible!important}
 body #tsml #meetings table.table tbody tr td.address{display:none!important}
 body #tsml #meetings table.table tbody tr.past{opacity:.6}body #tsml #meetings table.table tbody tr.past td{opacity:1}
}
/* strona pojedynczego wydarzenia: blok z godziną i datą w kolorach strony */
.mc-main .time-block,.single-mc-events .time-block{background:var(--card)!important;border:1px solid var(--line);border-left:5px solid var(--midlands);border-radius:12px;color:var(--ink)!important;padding:12px 16px!important}
.mc-main .time-block *,.single-mc-events .time-block *{color:var(--ink)!important}
