/* Seel weekly plan: all course text and appointments come from native component fields. */
.seel-plan{font-family:'DM Sans',sans-serif;color:#1d1517}
.seel-plan .plan-hero{background:#faf7f2;padding:0 0 80px}
.seel-plan .plan-hero .crumbs{padding:40px 0 54px;margin:0}
.seel-plan h1{font-family:'Fraunces',serif;font-size:clamp(36px,4.2vw,64px);line-height:1.12;margin:22px 0}
.seel-plan h1 em{color:#b5091f;font-weight:inherit}
.seel-plan .plan-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}
.seel-plan .plan-print{background:#1d1517;color:white}
.seel-plan .plan-content{padding:50px 0 90px}
.seel-plan .plan-controls{display:flex;align-items:center;flex-wrap:wrap;gap:12px}
.seel-plan .plan-weeks{display:flex;gap:10px}
.seel-plan .plan-chip{display:inline-flex;justify-content:center;align-items:center;min-height:44px;border:1px solid #e9e0d9;border-radius:99px;background:white;color:#1d1517;font:inherit;font-size:14px;text-decoration:none;padding:10px 18px;cursor:pointer}
.seel-plan .plan-chip.current{background:#1d1517;color:white;border-color:#1d1517}
.seel-plan .plan-filter{display:flex;align-items:center;gap:8px;margin:0}
.seel-plan .plan-filter select{font:inherit;font-size:14px;min-height:44px;width:auto;max-width:200px;background:white;color:#1d1517;border:1px solid #e9e0d9;border-radius:99px;padding:8px 28px 8px 14px}
.seel-plan .plan-legend{display:flex;flex-wrap:wrap;gap:14px;list-style:none;padding:0;margin:0 0 0 auto;font-size:13px}
.seel-plan .plan-legend li{display:flex;align-items:center;gap:7px}
.seel-plan .plan-legend li span{height:14px;width:14px;border-radius:4px;background:var(--plan-color)}
.seel-plan .plan-range{display:flex;align-items:center;justify-content:center;gap:20px;margin:24px 0 18px}
.seel-plan .plan-range h2{font:600 17px 'DM Sans',sans-serif;margin:0}
.seel-plan .plan-range a{color:#1d1517;font-size:22px;min-height:44px;min-width:44px;text-align:center;line-height:44px;text-decoration:none}
.seel-plan .plan-desktop{border:1px solid #e9e0d9;border-radius:20px;overflow:hidden}
.seel-plan .plan-table{width:100%;table-layout:fixed;border-collapse:collapse;margin:0;color:inherit;font-size:13px}
.seel-plan .plan-table th,.seel-plan .plan-table td{border:1px solid #e9e0d9;padding:5px;vertical-align:top;min-width:0;background:white}
.seel-plan .plan-table thead th{background:#faf7f2;text-align:center;padding:16px 5px;font-weight:700}
.seel-plan .plan-table th small{display:block;font-weight:400;margin-top:3px;color:#7a7270}
.seel-plan .plan-table th:first-child{width:70px}
.seel-plan .plan-table tbody th{text-align:right;color:#7a7270;font-weight:400;padding:10px 7px}
.seel-plan .plan-table td{height:72px}
.seel-plan .variant-pairs,.seel-plan .variant-wedding{--plan-color:#b5091f;--plan-bg:#f9e4e8}
.seel-plan .variant-youth{--plan-color:#6250d8;--plan-bg:#ebe7fc}
.seel-plan .variant-children{--plan-color:#d89600;--plan-bg:#fff2d4}
.seel-plan .variant-solo{--plan-color:#258660;--plan-bg:#e5f3eb}
.seel-plan .plan-entry{display:flex;flex-direction:column;gap:3px;border-left:3px solid var(--plan-color);border-radius:11px;padding:9px 10px;background:var(--plan-bg);color:#1d1517;text-decoration:none;font-size:13px;line-height:1.4;overflow-wrap:anywhere;margin-bottom:5px}
.seel-plan .plan-entry strong{font-size:14px;font-weight:700}
.seel-plan .plan-note{font-style:italic}
.seel-plan .plan-entry:focus-visible,.seel-plan a:focus-visible,.seel-plan select:focus-visible,.seel-plan button:focus-visible{outline:3px solid #1d1517;outline-offset:3px}
.seel-plan .plan-entry:hover{color:#1d1517;text-decoration:underline}
.seel-plan .plan-mobile{display:none}
.seel-plan abbr[title]{text-decoration:none;border:0;cursor:inherit}
.seel-plan .plan-notice{padding:22px 26px;background:#f7ecd6;border-radius:16px;margin-top:26px;line-height:1.7;color:#6f511c}
.seel-plan .plan-empty{padding:32px;border:1px solid #e9e0d9;border-radius:16px;background:#faf7f2;line-height:1.6}
@media(max-width:900px){
 .seel-plan .plan-hero{padding-bottom:44px}
 .seel-plan .plan-hero .crumbs{padding:24px 0 34px}
 .seel-plan .plan-content{padding:30px 0 60px}
 .seel-plan .plan-desktop{display:none}
 .seel-plan .plan-mobile{display:grid;gap:12px}
 .seel-plan .plan-day{display:grid;grid-template-columns:58px minmax(0,1fr);align-items:start;gap:12px;padding:12px;border:1px solid #e9e0d9;border-radius:16px}
 .seel-plan .plan-day h3{background:#f4ebde;border-radius:12px;padding:12px 3px;text-align:center;font:600 18px 'Fraunces',serif;margin:0}
 .seel-plan .plan-day h3 small{display:block;font:12px 'DM Sans',sans-serif;margin-top:4px}
 .seel-plan .plan-day .plan-entry{background:transparent;margin-bottom:10px;padding:4px 8px}
 .seel-plan .plan-day .plan-entry:last-child{margin-bottom:0}
 .seel-plan .plan-legend{margin:8px 0 0;width:100%}
 .seel-plan .plan-filter{flex-wrap:wrap}
 .seel-plan .plan-actions .btn{flex:1 1 200px;text-align:center;justify-content:center}
 .seel-plan .plan-range{gap:6px}
 .seel-plan .plan-range h2{font-size:15px}
 .seel-plan .plan-chip{font-size:13px;padding:9px 13px}
}
@media print{
 .seel-plan .plan-actions,.seel-plan .plan-controls,.seel-plan .plan-range a,.seel-plan .crumbs{display:none}
 .seel-plan .plan-hero{padding:0;background:white}
 .seel-plan .plan-content{padding:12px 0}
 .seel-plan .plan-mobile{display:none}
 .seel-plan .plan-desktop{display:block}
 .seel-plan .wrap{width:100%;max-width:none;padding:0}
 .seel-plan .plan-entry{break-inside:avoid;font-size:10px;padding:5px}
 .seel-plan .plan-entry strong{font-size:11px}
 .seel-plan h1{font-size:28px}
 .seel-plan .plan-notice{break-inside:avoid}
}
