.fw-ics-instance{position:relative}
.fw-ics-instance.is-loading::after{content:"";position:absolute;inset:0;background:rgba(255,255,255,.62);z-index:9;border-radius:16px}
.fw-ics-wrap{font-family:inherit;width:100%;max-width:none;margin:0;background:var(--fw-bg,#fff);border:1px solid var(--fw-border-color,#d9e1ea);border-radius:calc(var(--fw-radius,10px) + 4px);padding:12px;box-shadow:var(--fw-shadow,none);overflow:visible}
.fw-ics-header,.fw-ics-toolbar{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.fw-ics-header{margin-bottom:8px;padding:0 0 6px;border-bottom:1px solid var(--fw-border-color,#eef2f6)}
.fw-ics-period-wrap{display:flex;align-items:center}
.fw-ics-period-label{font-size:1.55rem;line-height:1.1;font-weight:800;color:var(--fw-accent,#0f172a)}
.fw-ics-month-title{display:inline-block}
.fw-ics-period-label span{font-size:.9rem;font-weight:600;color:#64748b}
.fw-ics-controls{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.fw-ics-nav,.fw-ics-icon-btn,.fw-ics-mini-action,.fw-ics-copy,.fw-ics-print{border:1px solid var(--fw-border-color,#d6deea);background:var(--fw-card-bg,#fff);color:var(--fw-head-color,#0f172a);border-radius:9px;padding:0 10px;cursor:pointer;transition:transform .15s ease,opacity .15s ease,text-decoration .15s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;font-size:.85rem;line-height:1;min-height:34px}
.fw-ics-icon-btn{width:34px;padding:0;font-size:.95rem}
.fw-ics-mini-action{width:28px;min-height:28px;padding:0;border-radius:999px;font-size:.8rem;color:#334155}
.fw-ics-copy{padding:7px 9px;white-space:nowrap}
.fw-ics-nav:hover,.fw-ics-icon-btn:hover,.fw-ics-mini-action:hover,.fw-ics-print:hover,.fw-ics-copy:hover{transform:translateY(-1px);opacity:.96;color:var(--fw-head-color,#0f172a);background:#f8fafc}
.fw-ics-month-select,.fw-ics-date-select,.fw-ics-search,.fw-ics-modal-link-wrap input{border:1px solid var(--fw-border-color,#d6deea);border-radius:9px;padding:7px 11px;background:var(--fw-card-bg,#fff);box-shadow:none;font-size:.9rem;min-height:36px}
.fw-ics-month-select{min-width:150px}
.fw-ics-search{min-width:220px;max-width:260px}
.fw-ics-badge{background:#e8edf3;border-radius:999px;padding:6px 10px;color:#334155;font-weight:600;font-size:.84rem}
.fw-ics-toolbar{margin:0 0 8px;padding:0;background:transparent;border:0;border-radius:0;justify-content:flex-start}
.fw-ics-toolbar:empty{display:none}
.fw-ics-grid{display:grid;grid-template-columns:28px repeat(7,minmax(0,1fr));gap:0;margin-top:8px;.fw-ics-grid{display:grid;grid-template-columns:28px repeat(7,minmax(0,1fr));gap:var(--fw-cell-gap,0px);margin-top:8px;background:var(--fw-border-color,#d9e1ea);border:1px solid var(--fw-border-color,#d9e1ea);border-radius:var(--fw-radius,10px);overflow:hidden}}
.fw-ics-weeknum-head,.fw-ics-day-head{font-weight:700;padding:8px 5px;var(--fw-head-color,#0f172a);text-transform:uppercase;font-size:.73rem;letter-spacing:.02em;text-align:center;var(--fw-head-bg,#eef2f6)}
.fw-ics-weeknum-head{border-right:1px solid var(--fw-border-color,#d7dee6)}
.fw-ics-weeknum{display:flex;align-items:flex-start;justify-content:center;padding-top:10px;var(--fw-head-bg,#eef2f6);border-right:1px solid var(--fw-border-color,#d9e1ea);border-bottom:1px solid var(--fw-border-color,#d9e1ea);font-size:.72rem;font-weight:700;color:#334155}
.fw-ics-cell{min-height:var(--fw-cell-min-h,92px);border-right:1px solid var(--fw-border-color,#d9e1ea);border-bottom:1px solid var(--fw-border-color,#d9e1ea);padding:3px 5px 4px;background:var(--fw-card-bg,#fff);display:flex;flex-direction:column}
.fw-ics-cell.is-other{var(--fw-head-bg,#eef2f6);color:#64748b}
.fw-ics-date{font-weight:700;margin-bottom:4px;var(--fw-head-color,#0f172a);font-size:.82rem;align-self:flex-end}
.fw-ics-events,.fw-ics-week-events,.fw-ics-day-view{display:flex;flex-direction:column;gap:4px;min-width:0}
.fw-ics-event{appearance:none;border:1px solid #d9deea;width:100%;text-align:left;background:color-mix(in srgb, var(--fw-accent,#2f6fb3) 12%, white);border-left:3px solid var(--fw-event,var(--fw-accent,#1e73be));border-radius:calc(var(--fw-radius,10px) - 4px);padding:4px 7px;cursor:pointer;transition:background .15s ease;min-height:0;box-shadow:none}
.fw-ics-event:hover{background:color-mix(in srgb, var(--fw-accent,#2f6fb3) 18%, white)}
.fw-ics-event-time{display:block;font-size:var(--fw-event-time-font,10px);font-weight:700;color:#26415f;margin-bottom:2px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fw-ics-event-title{display:block;font-weight:700;color:#17324f;font-size:var(--fw-event-font,11px);line-height:1.15;word-break:normal;overflow-wrap:anywhere;hyphens:none}
.fw-ics-event.is-hidden,.fw-ics-filter-group.is-hidden,.fw-ics-list-item-wrap.is-hidden,.fw-ics-day-item.is-hidden{display:none!important}
.fw-ics-week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-top:10px}
.fw-ics-week-col,.fw-ics-day-item{border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;background:var(--fw-card-bg,#fff);box-shadow:none}
.fw-ics-week-head{padding:8px;background:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex;flex-direction:column;gap:2px;font-size:.84rem}
.fw-ics-week-events,.fw-ics-day-item{padding:8px;min-height:120px}
.fw-ics-empty-day,.fw-ics-empty{color:#64748b;padding:8px;font-size:.9rem}
.fw-ics-list{display:flex;flex-direction:column;gap:8px;margin-top:10px}
.fw-ics-list-item-wrap{display:grid;grid-template-columns:minmax(0,1fr) 110px 90px 150px;gap:8px;align-items:center}
.fw-ics-list-date,.fw-ics-list-time,.fw-ics-list-feed{color:#64748b;font-weight:500;font-size:.88rem}
.fw-ics-legend-bottom{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px;align-items:center}
.fw-ics-filter-group{display:flex;align-items:center;gap:6px}
.fw-ics-filter-icons{display:flex;align-items:center;gap:4px}
.fw-ics-filter-item{display:inline-flex;align-items:center;gap:7px;background:var(--fw-card-bg,#fff);border:1px solid #dbe2ea;padding:5px 9px;border-radius:999px;font-size:.88rem}
.fw-ics-color{width:9px;height:9px;border-radius:50%;display:inline-block;background:var(--fw-color,#1e73be);box-shadow:0 0 0 3px color-mix(in srgb,var(--fw-color,#1e73be) 16%, white)}
.fw-ics-modal[hidden]{display:none}
.fw-ics-modal{position:fixed;inset:0;z-index:9999}
.fw-ics-modal-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.58);backdrop-filter:blur(3px)}
.fw-ics-modal-box{position:relative;max-width:620px;margin:6vh auto;background:var(--fw-card-bg,#fff);border-radius:18px;padding:20px;z-index:1;box-shadow:0 20px 54px rgba(0,0,0,.24);border-top:4px solid #2563eb;max-height:88vh;overflow:auto}
.fw-ics-modal-box h3{margin:0 42px 12px 0;font-size:1.25rem;var(--fw-head-color,#0f172a)}.fw-ics-close{position:absolute;right:12px;top:12px;border:0;background:#f1f5f9;border-radius:999px;width:32px;height:32px;cursor:pointer;font-size:18px}
.fw-ics-modal-meta{margin:7px 0;padding-bottom:7px;border-bottom:1px solid #eef2f7;color:#334155;font-size:.93rem}
.fw-ics-modal-link-wrap{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.fw-ics-modal-link-wrap input{flex:1;min-width:180px}.fw-ics-modal-actions{margin-top:12px;display:flex;gap:8px;flex-wrap:wrap}.fw-ics-modal-desc{margin-top:12px;white-space:pre-wrap;line-height:1.5;var(--fw-head-color,#0f172a);font-size:.94rem}
.fw-ics-debug-box{margin:10px 0 12px;padding:10px 12px;border:1px solid #fbbf24;background:var(--fw-card-bg,#fff)beb;color:#92400e;border-radius:12px}.fw-ics-debug-box ul{margin:8px 0 8px 18px}.fw-ics-debug-meta{font-size:13px;color:#78350f;margin-top:4px}
@media (max-width: 1180px){.fw-ics-wrap{max-width:none}.fw-ics-grid{grid-template-columns:repeat(2,minmax(0,1fr));background:transparent;gap:8px}.fw-ics-grid .fw-ics-day-head,.fw-ics-grid .fw-ics-weeknum,.fw-ics-grid .fw-ics-weeknum-head{display:none}.fw-ics-week-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fw-ics-cell,.fw-ics-week-events{min-height:auto;border:1px solid #d7dee6}.fw-ics-list-item-wrap{grid-template-columns:1fr 1fr}.fw-ics-list-feed{grid-column:1/-1}}
@media (max-width: 820px){.fw-ics-wrap{padding:12px;border-radius:14px}.fw-ics-period-label{font-size:1rem}.fw-ics-grid,.fw-ics-week-grid,.fw-ics-list-item-wrap{grid-template-columns:1fr}.fw-ics-controls,.fw-ics-toolbar{width:100%}.fw-ics-month-select,.fw-ics-date-select,.fw-ics-search{width:100%;max-width:none}.fw-ics-nav{flex:0 0 auto}.fw-ics-modal-box{margin:3vh 12px;padding:18px;border-radius:16px}.fw-ics-modal-link-row strong{display:block;margin-bottom:8px}}
.fw-ics-subscribe-link{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}

.fw-ics-footer-tools{margin-top:10px}
.fw-ics-reset-filters{border:1px solid var(--fw-border-color,#d6deea);background:var(--fw-card-bg,#fff);border-radius:999px;padding:6px 10px;font-size:.85rem;cursor:pointer}
.fw-ics-filter-group.is-disabled{opacity:.55}
.fw-ics-filter-icons .fw-ics-mini-action{text-decoration:none}
.fw-ics-controls .fw-ics-icon-btn{font-size:.88rem;width:36px;min-height:36px;padding:0}
.fw-ics-controls .fw-ics-pdf{font-size:.86rem}
.fw-ics-toolbar input[type="search"]{display:block}


/* v2.2.1 layout refinement */
.fw-ics-wrap{
  width:var(--fw-wrap-width,100%);
  max-width:var(--fw-wrap-max,100%);
  margin:0 auto 18px;
  padding:20px 22px 16px;
  background:var(--fw-card-bg,#fff);
  border:1px solid #d9e1ea;
  border-radius:20px;
  box-shadow:0 10px 28px rgba(15,23,42,.06);
}
.fw-ics-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}
.fw-ics-period-wrap{display:flex;align-items:flex-start;min-width:0}
.fw-ics-period-label{font-size:2rem;line-height:1.1;font-weight:800;color:#10213f;letter-spacing:-.02em}
.fw-ics-controls{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.fw-ics-month-select,.fw-ics-date-select{min-width:172px;height:40px;padding:0 14px;border:1px solid #d5dee8;border-radius:12px;background:var(--fw-card-bg,#fff);color:#21314d}
.fw-ics-nav,.fw-ics-icon-btn{width:38px;height:38px;border-radius:12px;border:1px solid #d5dee8;background:var(--fw-card-bg,#fff);color:#10213f;display:inline-flex;align-items:center;justify-content:center;box-shadow:none}
.fw-ics-icon-btn{font-size:.9rem}
.fw-ics-toolbar{margin:0 0 10px;padding:0;display:flex;justify-content:flex-start}
.fw-ics-search{width:min(280px,100%);height:42px;padding:0 14px;border:1px solid #d5dee8;border-radius:12px;background:var(--fw-card-bg,#fff)}
.fw-ics-grid{border:1px solid #d5dee8;border-radius:18px;overflow:hidden;background:#f8fbff}
.fw-ics-grid-head{background:#eef3f8}
.fw-ics-day-head,.fw-ics-week-head{padding:10px 8px;font-size:.84rem;letter-spacing:.04em}
.fw-ics-grid-cell{background:var(--fw-card-bg,#fff);min-height:var(--fw-cell-min-h);padding:28px 8px 8px}
.fw-ics-day-number{top:8px;right:10px;font-size:.96rem;font-weight:700}
.fw-ics-event{border-radius:10px;padding:6px 8px;border:1px solid #d7e2ef;background:#f5f8fc;box-shadow:none;align-items:flex-start}
.fw-ics-event:before{width:4px;border-radius:calc(var(--fw-radius,10px) - 4px)}
.fw-ics-event-time{font-size:var(--fw-event-time-font);margin-bottom:2px;color:#49617f}
.fw-ics-event-title{font-size:var(--fw-event-font);line-height:1.15;font-weight:700}
.fw-ics-footer-tools{margin-top:12px}
.fw-ics-filter-caption{margin:0 0 8px;font-size:.86rem;font-weight:700;color:#42556f}
.fw-ics-legend-bottom{display:flex;flex-wrap:wrap;gap:10px 12px;align-items:center}
.fw-ics-filter-group{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border:1px solid #d5dee8;border-radius:999px;background:var(--fw-card-bg,#fff)}
.fw-ics-filter-item{display:inline-flex;align-items:center;gap:7px;margin:0;font-size:.95rem}
.fw-ics-filter-icons{display:inline-flex;align-items:center;gap:5px}
.fw-ics-mini-action{width:28px;height:28px;border:1px solid #d5dee8;border-radius:999px;background:var(--fw-card-bg,#fff);display:inline-flex;align-items:center;justify-content:center;font-size:.82rem;color:#24364f;text-decoration:none}
.fw-ics-reset-filters{height:34px;padding:0 12px;border-radius:999px}
.fw-ics-modal-box{max-width:720px;border-radius:22px;border:1px solid #d7e1eb;box-shadow:0 24px 80px rgba(15,23,42,.18)}
@media (max-width: 900px){
 .fw-ics-wrap{padding:16px 14px}
 .fw-ics-period-label{font-size:1.55rem}
 .fw-ics-header{flex-direction:column;align-items:stretch}
 .fw-ics-controls{justify-content:flex-start}
}

.fw-ics-mini-action.is-active,.fw-ics-notify-modal{background:var(--fw-card-bg,#fff)1f2;border-color:#fecdd3;color:#be123c}


/* v2.4.2 refinements */
.fw-ics-event{background:color-mix(in srgb,var(--fw-event,#1e73be) 12%, #fff);border-color:color-mix(in srgb,var(--fw-event,#1e73be) 22%, #d7e2ef)}
.fw-ics-event:hover{background:color-mix(in srgb,var(--fw-event,#1e73be) 18%, #fff)}
.fw-ics-filter-group{padding:4px 8px;gap:6px;border-color:#dde5ee;background:var(--fw-card-bg,#fff)}
.fw-ics-filter-item{font-size:.88rem;gap:6px;color:#24364f}
.fw-ics-filter-item input{margin-right:0}
.fw-ics-reset-filters{height:30px;padding:0 10px;font-size:.8rem;font-weight:600;color:#24364f;border-color:#cfd9e5;background:#f8fafc}
.fw-ics-reset-filters:hover{background:#eef4f8}
.fw-ics-footer-tools{margin-top:8px}
.fw-ics-filter-caption{display:none}
.fw-ics-mini-action{color:#42556f;background:#f8fafc}
.fw-ics-mini-action:hover{background:#eef4f8}
.fw-ics-filter-icons .fw-ics-mini-action{font-size:.75rem}
.fw-ics-modal-box{border-top-color:var(--fw-modal-color,#2563eb)}
.fw-ics-modal-actions .fw-ics-print{min-height:32px;padding:0 12px;font-size:.84rem}
.fw-ics-modal-link-row[hidden]{display:none !important}
.fw-ics-toolbar{margin-bottom:6px}
.fw-ics-legend-bottom{gap:8px 10px}


/* v2.4.8 frontend color/filter refinements */
.fw-ics-weeknum-head,.fw-ics-day-head{background:#dfe8f1;color:#19324d;border-bottom:1px solid #c7d4e2}
.fw-ics-weeknum{background:#e7eef5;color:#27415c;font-weight:800}
.fw-ics-grid{background:#cfd8e3;border-color:#cfd8e3}
.fw-ics-cell{background:var(--fw-card-bg,#fff)}
.fw-ics-cell.is-other{background:#eef4f8}
.fw-ics-filter-group{padding:2px;border:0;background:transparent;gap:4px}
.fw-ics-filter-item-color{padding:0;margin:0;background:transparent;border:0;display:inline-flex;align-items:center}
.fw-ics-filter-item-color input{position:absolute;opacity:0;pointer-events:none}
.fw-ics-color-box{width:20px;height:20px;border-radius:calc(var(--fw-radius,10px) - 4px);display:inline-flex;align-items:center;justify-content:center;background:var(--fw-color,#1e73be);border:1px solid color-mix(in srgb,var(--fw-color,#1e73be) 70%, #0f172a 30%);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(15,23,42,.12);cursor:pointer}
.fw-ics-filter-check{font-size:11px;line-height:1;color:#fff;opacity:1;font-weight:800}
.fw-ics-filter-item-color input:not(:checked) + .fw-ics-color-box{opacity:.32;filter:saturate(.7)}
.fw-ics-filter-item-color input:not(:checked) + .fw-ics-color-box .fw-ics-filter-check{opacity:0}
.fw-ics-filter-icons{gap:3px}
.fw-ics-mini-action{width:22px;height:22px;min-height:22px;font-size:.68rem;border-radius:999px}
.fw-ics-reset-filters{height:24px;padding:0 8px;font-size:.72rem;border-radius:999px;color:#17324c;border-color:#c9d6e3;background:#f8fbff}
.fw-ics-reset-filters:hover{background:#edf4fa}
.fw-ics-close{position:absolute;right:12px;top:12px;border:1px solid #cfd8e3;background:var(--fw-card-bg,#fff);color:var(--fw-head-color,#0f172a);border-radius:999px;width:34px;height:34px;cursor:pointer;font-size:22px;line-height:1;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(15,23,42,.08)}
.fw-ics-close:hover{background:#f8fafc;var(--fw-head-color,#0f172a)}
.fw-ics-modal-box{border-top-color:var(--fw-modal-color,#2563eb)}
.fw-ics-event{border-left:4px solid var(--fw-event,#1e73be);background:color-mix(in srgb,var(--fw-event,#1e73be) 12%, #ffffff);border-color:color-mix(in srgb,var(--fw-event,#1e73be) 26%, #cfd8e3)}
.fw-ics-event:hover{background:color-mix(in srgb,var(--fw-event,#1e73be) 18%, #ffffff)}


/* v2.4.9 frontend compact color/filter refinements */
.fw-ics-weeknum-head,.fw-ics-day-head{background:#d7e2ee !important;color:#233b55 !important;border-bottom:1px solid #bcccdc !important;font-weight:800}
.fw-ics-weeknum{background:#dbe5ef !important;color:#294863 !important;font-weight:800;border-right:1px solid #c2d0de}
.fw-ics-event{background:color-mix(in srgb,var(--fw-event,#1e73be) 18%, #fff) !important;border-color:color-mix(in srgb,var(--fw-event,#1e73be) 42%, #cfd8e3) !important;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--fw-event,#1e73be) 18%, #ffffff) !important}
.fw-ics-event:hover{background:color-mix(in srgb,var(--fw-event,#1e73be) 24%, #fff) !important}
.fw-ics-legend-bottom{gap:8px;align-items:center}
.fw-ics-filter-group{padding:0 !important;border:0 !important;background:transparent !important;gap:0 !important}
.fw-ics-filter-item-color{padding:0 !important;border:0 !important;background:transparent !important}
.fw-ics-color-box{width:18px !important;height:18px !important;border-radius:4px !important}
.fw-ics-filter-icons{display:none !important}
.fw-ics-reset-filters{height:28px !important;padding:0 10px !important;font-size:.78rem !important;color:#16324d !important;background:var(--fw-card-bg,#fff) !important;border:1px solid #c9d6e3 !important}
.fw-ics-close{background:#0f172a !important;color:#ffffff !important;border-var(--fw-head-color,#0f172a) !important;opacity:1 !important;z-index:5}
.fw-ics-close:hover{background:#1e293b !important;color:#fff !important}
.fw-ics-modal-box{overflow:visible}
.fw-ics-modal-actions{display:flex;gap:8px;flex-wrap:wrap}
.fw-ics-add-apple,.fw-ics-add-google{display:inline-flex;align-items:center;gap:6px}


/* Sidebar Termine */
.fw-ics-sidebar-shortcode{display:block;--fw-sidebar-gap:8px;--fw-sidebar-py:10px;--fw-sidebar-px:12px;--fw-sidebar-title-font:14px;--fw-sidebar-meta-font:12px}.fw-ics-sidebar-title{margin:0 0 12px;font-size:1.1rem}.fw-ics-sidebar-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--fw-sidebar-gap)}.fw-ics-sidebar-shortcode.has-divider .fw-ics-sidebar-list>li+li{border-top:1px solid #e5e7eb;padding-top:var(--fw-sidebar-gap)}.fw-ics-sidebar-item{display:block;padding:var(--fw-sidebar-py) var(--fw-sidebar-px);border:1px solid color-mix(in srgb, var(--fw-sidebar-accent,#1e73be) 22%, #d9e2ec);border-radius:14px;background:var(--fw-sidebar-bg,rgba(30,115,190,.06));text-decoration:none;var(--fw-head-color,#0f172a);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.fw-ics-sidebar-item.is-link:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(15,23,42,.06);border-color:var(--fw-sidebar-accent,#1e73be)}.fw-ics-sidebar-shortcode.is-compact .fw-ics-sidebar-item{padding:calc(var(--fw-sidebar-py) - 1px) calc(var(--fw-sidebar-px) - 1px);border-radius:12px}.fw-ics-sidebar-shortcode.is-ultra-compact .fw-ics-sidebar-list{gap:max(0px,calc(var(--fw-sidebar-gap) - 4px))}.fw-ics-sidebar-shortcode.is-ultra-compact.has-divider .fw-ics-sidebar-list>li+li{padding-top:max(0px,calc(var(--fw-sidebar-gap) - 4px))}.fw-ics-sidebar-shortcode.is-ultra-compact .fw-ics-sidebar-item{padding:max(5px,calc(var(--fw-sidebar-py) - 4px)) max(8px,calc(var(--fw-sidebar-px) - 4px));border-radius:10px}.fw-ics-sidebar-shortcode.is-ultra-compact .fw-ics-sidebar-item-title{line-height:1.2}.fw-ics-sidebar-shortcode.is-ultra-compact .fw-ics-sidebar-item-meta{margin-top:2px;line-height:1.2}.fw-ics-sidebar-item-title{font-weight:700;line-height:1.35;padding-right:4px;font-size:var(--fw-sidebar-title-font)}.fw-ics-sidebar-item-meta{margin-top:4px;font-size:var(--fw-sidebar-meta-font);opacity:.84;line-height:1.35}.fw-ics-sidebar-empty{opacity:.8}

.fw-ics-sidebar-toggle{display:none;width:100%;margin:0 0 10px;padding:10px 14px;border-radius:12px;border:1px solid #d7deea;background:var(--fw-card-bg,#fff);font-weight:600;cursor:pointer}
.fw-ics-sidebar-load-more{margin-top:10px;padding:9px 14px;border-radius:12px;border:1px solid #d7deea;background:var(--fw-card-bg,#fff);font-weight:600;cursor:pointer}
.fw-ics-sidebar-shortcode.is-slider .fw-ics-sidebar-list{display:flex;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:6px}
.fw-ics-sidebar-shortcode.is-slider .fw-ics-sidebar-list>li{min-width:min(280px,85vw);scroll-snap-align:start;flex:0 0 auto}
.fw-ics-sidebar-shortcode.is-collapsible .fw-ics-sidebar-collapsible-body[hidden]{display:none!important}
.fw-ics-sidebar-shortcode.is-collapsible.collapse-always .fw-ics-sidebar-toggle{display:block}
@media (max-width: 782px){.fw-ics-sidebar-shortcode.is-collapsible.collapse-mobile .fw-ics-sidebar-toggle{display:block}}

/* v2.4.25 mobile layout refinement */
.fw-ics-grid-scroll{width:100%}
.fw-ics-list-item-wrap{padding:10px 12px;border:1px solid #d9e2ec;border-radius:14px;background:var(--fw-card-bg,#fff);box-shadow:0 2px 10px rgba(15,23,42,.03)}
.fw-ics-list-item-wrap .fw-ics-event{margin:0}
.fw-ics-list-date,.fw-ics-list-time,.fw-ics-list-feed{font-size:.84rem;line-height:1.35}
@media (max-width: 820px){
  .fw-ics-wrap{padding:14px 12px 12px;border-radius:16px}
  .fw-ics-header{gap:10px;margin-bottom:10px}
  .fw-ics-period-label{font-size:1.15rem}
  .fw-ics-controls{display:grid;grid-template-columns:36px minmax(0,1fr) 36px;align-items:center;gap:8px;width:100%}
  .fw-ics-controls .fw-ics-icon-btn,.fw-ics-controls .fw-ics-nav{width:36px;height:36px;min-height:36px;border-radius:10px}
  .fw-ics-controls .fw-ics-month-select,.fw-ics-controls .fw-ics-date-select{min-width:0;width:100%;height:36px;padding:0 12px;border-radius:10px;font-size:.95rem}
  .fw-ics-controls .fw-ics-icon-btn.fw-ics-pdf,.fw-ics-controls .fw-ics-icon-btn.fw-ics-print{grid-column:auto}
  .fw-ics-toolbar{margin-bottom:8px}
  .fw-ics-search{height:38px;font-size:.92rem}
  .fw-ics-grid-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:2px}
  .fw-ics-grid{grid-template-columns:28px repeat(7,minmax(72px,1fr)) !important;min-width:584px;gap:0;border-radius:14px}
  .fw-ics-grid .fw-ics-day-head,.fw-ics-grid .fw-ics-weeknum,.fw-ics-grid .fw-ics-weeknum-head{display:flex !important}
  .fw-ics-day-head{font-size:.64rem;padding:7px 3px}
  .fw-ics-weeknum{font-size:.62rem;padding-top:8px}
  .fw-ics-cell{min-height:72px !important;padding:3px 4px 4px}
  .fw-ics-date{font-size:.74rem;margin-bottom:3px}
  .fw-ics-event{padding:4px 5px;border-radius:8px}
  .fw-ics-event-time{font-size:10px;margin-bottom:1px;display:block}
  .fw-ics-event-title{font-size:11px;line-height:1.15;word-break:break-word}
  .fw-ics-list{gap:8px}
  .fw-ics-list-item-wrap{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4px 8px;padding:10px 10px;border-radius:12px}
  .fw-ics-list-item-wrap .fw-ics-list-item{grid-column:1 / -1}
  .fw-ics-list-date,.fw-ics-list-time{font-size:.8rem;color:#42556f}
  .fw-ics-list-feed{grid-column:1 / -1;font-size:.78rem;color:#64748b}
  .fw-ics-week-grid{grid-template-columns:1fr;gap:8px}
  .fw-ics-week-head{padding:8px 10px}
  .fw-ics-week-events,.fw-ics-day-item{padding:8px;min-height:auto}
  .fw-ics-modal-box{margin:5vh 10px;padding:16px;border-radius:18px;max-height:90vh}
}
@media (max-width: 480px){
  .fw-ics-wrap{padding:12px 10px 10px;border-radius:14px}
  .fw-ics-header{gap:8px}
  .fw-ics-period-label{font-size:1.05rem}
  .fw-ics-controls{grid-template-columns:34px minmax(0,1fr) 34px;gap:6px}
  .fw-ics-controls .fw-ics-month-select,.fw-ics-controls .fw-ics-date-select{height:34px;font-size:.9rem;padding:0 10px}
  .fw-ics-grid{min-width:540px}
  .fw-ics-cell{min-height:66px !important;padding:2px 3px 3px}
  .fw-ics-date{font-size:.7rem}
  .fw-ics-event{padding:3px 4px;border-radius:7px}
  .fw-ics-event-time{font-size:9px}
  .fw-ics-event-title{font-size:10px}
  .fw-ics-list-item-wrap{grid-template-columns:1fr;gap:3px;padding:9px 9px}
  .fw-ics-list-date,.fw-ics-list-time,.fw-ics-list-feed{font-size:.76rem}
}


.fw-admin-subnav{margin:10px 0 16px;}
.fw-ics-mobile-list{display:none;}
.fw-ics-mobile-list-item{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:var(--fw-mobile-py,12px) var(--fw-mobile-px,14px);margin:0 0 var(--fw-mobile-gap,8px);border:1px solid #d7e0eb;border-radius:var(--fw-mobile-radius,14px);background:var(--fw-card-bg,#fff);color:#12213f;text-align:left;box-shadow:0 1px 2px rgba(15,23,42,.04);}
.fw-ics-mobile-date{font-size:var(--fw-mobile-date,12px);color:#5b6b84;font-weight:600;}
.fw-ics-mobile-title{font-size:var(--fw-mobile-title,15px);font-weight:700;line-height:1.3;}
.fw-ics-mobile-meta{font-size:var(--fw-mobile-meta,13px);color:#334155;}
.fw-mobile-list-compact .fw-ics-mobile-list-item{gap:2px;box-shadow:none;}
@media (max-width: 768px){
  .fw-mobile-list-enabled .fw-ics-grid-scroll,
  .fw-mobile-list-enabled .fw-ics-week-grid,
  .fw-mobile-list-enabled .fw-ics-day-view{display:none;}
  .fw-mobile-list-enabled .fw-ics-mobile-list{display:block;}
  .fw-mobile-list-enabled .fw-ics-controls{display:flex;flex-wrap:nowrap;gap:8px;align-items:center;width:100%;justify-content:space-between;}
  .fw-mobile-list-enabled .fw-ics-month-select{flex:1;min-width:0;}
  .fw-mobile-list-enabled .fw-ics-period-label{font-size:clamp(24px,8vw,38px);}
  .fw-mobile-list-enabled .fw-ics-toolbar{margin-bottom:10px;}
  .fw-mobile-list-enabled.fw-mobile-list-compact .fw-ics-period-label{font-size:clamp(22px,7vw,32px);}
}


/* v2.4.28 clean full-width layout */
.fw-ics-instance{width:100%}
.fw-ics-wrap .fw-ics-toolbar,.fw-ics-wrap .fw-ics-legend-bottom,.fw-ics-wrap .fw-ics-header,.fw-ics-wrap .fw-ics-empty,.fw-ics-wrap .fw-ics-debug-box{padding-left:0;padding-right:0}
.fw-ics-wrap .fw-ics-grid-scroll{margin:0}
@media (max-width: 820px){.fw-ics-wrap{padding-top:2px}.fw-ics-grid-scroll{margin:0 -2px}}


/* v2.4.31 clean layout + stable version badge */
.fw-ics-wrap{background:transparent !important;border:0 !important;box-shadow:none !important;padding:12px 0 0 !important;border-radius:0 !important;}
.fw-ics-header{padding:0 0 8px !important;margin-bottom:10px !important;}
.fw-ics-grid{margin-top:6px !important;}
.fw-ics-event{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:2px;padding:4px 6px !important;min-width:0;}
.fw-ics-event-time{order:1;white-space:nowrap;}
.fw-ics-event-title{order:2;display:block;white-space:normal;word-break:normal;overflow-wrap:anywhere;}
.fw-ics-admin-wrap .fw-admin-hero{display:flex;justify-content:space-between;align-items:center;}
.fw-ics-admin-wrap .fw-admin-hero .fw-card-title-row{width:100%;display:flex;justify-content:space-between;align-items:center;}
@media (max-width: 820px){.fw-ics-wrap{padding-top:8px !important;}.fw-ics-event{padding:4px 5px !important;}.fw-ics-event-title{font-size:10px !important;line-height:1.15 !important;}}

.fw-push-test-form .fw-design-grid{margin-top:8px}
.fw-push-test-form select[multiple]{min-height:140px}


/* v2.4.42 popup clarity, multiday and hover preview */
.fw-ics-modal-backdrop{background:rgba(15,23,42,.45) !important;backdrop-filter:none !important;-webkit-backdrop-filter:none !important}
.fw-ics-modal-box{filter:none !important;transform:none !important;opacity:1 !important}
.fw-ics-event{overflow:hidden}
.fw-ics-event.fw-ics-segment{border-left-width:0 !important;border-radius:0 !important;margin-inline:0 !important}
.fw-ics-event.fw-ics-segment-start,.fw-ics-event.fw-ics-segment-single{border-top-left-radius:10px !important;border-bottom-left-radius:10px !important;border-top-right-radius:10px !important;border-bottom-right-radius:10px !important;border-left:4px solid var(--fw-event,#1e73be) !important}
.fw-ics-event.fw-ics-segment-start{border-top-right-radius:4px !important;border-bottom-right-radius:4px !important}
.fw-ics-event.fw-ics-segment-middle{border-radius:4px !important}
.fw-ics-event.fw-ics-segment-end{border-top-left-radius:4px !important;border-bottom-left-radius:4px !important;border-top-right-radius:10px !important;border-bottom-right-radius:10px !important}
.fw-ics-event-title{display:block;line-height:1.18}
.fw-ics-event-time{font-weight:700;letter-spacing:.01em}
.fw-ics-event[title]{cursor:pointer}

.fw-ics-mini-link{display:inline-flex;align-items:center;gap:4px;margin-left:8px;font-size:12px;color:var(--fw-accent);text-decoration:none;border:1px solid var(--fw-border-color);border-radius:999px;padding:2px 8px;background:#fff}
.fw-ics-mini-link:hover{background:#f8fafc}


/* v2.5.2 font size controls */
.fw-ics-period-label{font-size:var(--fw-month-font,32px)}
.fw-ics-day-head,.fw-ics-weeknum-head{font-size:var(--fw-weekday-font,13px)}
.fw-ics-weeknum{font-size:var(--fw-weeknum-font,12px)}
.fw-ics-date,.fw-ics-day-number{font-size:var(--fw-date-font,15px)}
.fw-ics-event-title{font-size:var(--fw-event-font,13px)}
.fw-ics-event-time{font-size:var(--fw-event-time-font,12px)}
.fw-ics-month-select,.fw-ics-date-select,.fw-ics-search,.fw-ics-nav,.fw-ics-icon-btn,.fw-ics-print,.fw-ics-copy,.fw-ics-reset-filters,.fw-ics-filter-item{font-size:var(--fw-control-font,14px)}
.fw-ics-modal-box h3{font-size:var(--fw-popup-title-font,20px)}
.fw-ics-modal-meta{font-size:var(--fw-popup-meta-font,15px)}
.fw-ics-modal-desc{font-size:var(--fw-popup-desc-font,15px)}
