.fmcal{--cal-ink:#2c203b;--cal-muted:#776c83;--cal-line:#e7dfee;--cal-paper:#fff;--cal-bg:#faf7ff;--cal-pink:#c32170;--cal-violet:#6540bc;--cal-teal:#0c7966;--cal-rose:#b6453d;max-width:1440px;margin:0 auto;padding:34px clamp(14px,3vw,40px) 50px;color:var(--cal-ink);font-family:inherit;background:var(--cal-bg);box-sizing:border-box}.fmcal *{box-sizing:border-box}.fmcal button,.fmcal input{font:inherit}.fmcal button{cursor:pointer}.fmcal [hidden]{display:none!important}.fmcal a{text-decoration:none}.fmcal :is(button,a,input):focus-visible{outline:3px solid #168dbe;outline-offset:4px}.fmcal-hero{position:relative;display:flex;align-items:center;justify-content:space-between;gap:25px;isolation:isolate;overflow:hidden;padding:36px 40px;border:1px solid #e4d6f0;border-radius:26px;background:radial-gradient(ellipse at 92% 18%,#d9f5e8 0,transparent 42%),linear-gradient(115deg,#f1e6ff,#fff0f6 60%,#fff2d7)}.fmcal-hero:after{position:absolute;z-index:-1;right:8%;bottom:-130px;width:350px;height:350px;border:1px solid #9675b533;border-radius:50%;box-shadow:0 0 0 25px #ffffff24,0 0 0 50px #ffffff20;content:''}.fmcal-eyebrow,.fmcal-small{display:block;font-size:10px;font-weight:850;letter-spacing:.12em;color:var(--cal-violet);line-height:1.5}.fmcal h1{display:flex;align-items:center;gap:16px;margin:10px 0 14px!important;color:var(--cal-ink)!important;font-size:clamp(33px,4.3vw,58px)!important;line-height:1.04!important;letter-spacing:-.055em}.fmcal h1>span{color:var(--cal-pink);font-size:.68em}.fmcal-hero-copy>p{margin:0;font-size:15px;line-height:1.75;color:#62536d}.fmcal-hero-note{display:flex;align-items:center;gap:7px;margin-top:17px;font-size:11px;line-height:1.5;color:#6b5b72}.fmcal-hero-note>span{display:grid;place-items:center;width:19px;height:19px;background:#dbefdf;border-radius:50%;color:#236c45}.fmcal-sticker{flex:0 0 183px;display:grid;place-items:center;gap:9px;padding:25px 18px;border:1px solid #c7a1bf;border-radius:26px;background:#fff8e3;box-shadow:6px 7px 0 #d4bfdc;transform:rotate(6deg);text-align:center}.fmcal-sticker>span{font-size:9px;letter-spacing:.1em;color:#a14176;font-weight:850}.fmcal-sticker b{font-size:25px;line-height:1.13;letter-spacing:-.04em}.fmcal-sticker i{color:#c48b20;font-size:19px;font-style:normal}.fmcal-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:15px;margin:25px 0 20px}.fmcal-tabs{display:flex;gap:6px;flex-wrap:wrap}.fmcal-tabs button{display:flex;align-items:center;gap:6px;min-height:39px;padding:9px 12px;border:1px solid var(--cal-line);border-radius:100px;background:var(--cal-paper);color:var(--cal-ink);font-size:11px;font-weight:750;transition:background .15s,transform .15s}.fmcal-tabs button:hover{transform:translateY(-2px)}.fmcal-tabs button[aria-pressed=true]{background:var(--cal-ink);border-color:var(--cal-ink);color:#fff}.fmcal-tabs button>span{padding:1px 5px;border-radius:20px;background:#8b7e9220;font-size:9px}.fmcal-dot{display:inline-block;flex-shrink:0;width:7px;height:7px;border-radius:50%}.fmcal-dot.is-freebie{background:#d43b8f}.fmcal-dot.is-start{background:#11a182}.fmcal-dot.is-end{background:#de7952}.fmcal-search{position:relative;min-width:210px;flex:0 1 280px}.fmcal-search input{display:block;width:100%;min-height:42px;padding:10px 35px 10px 14px;border:1px solid var(--cal-line);border-radius:12px;background:var(--cal-paper);color:var(--cal-ink);font-size:12px}.fmcal-search>span:last-child{position:absolute;right:12px;top:5px;font-size:24px;color:var(--cal-violet)}.fmcal-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px;align-items:start}.fmcal-month-panel{min-width:0;padding:24px;border:1px solid var(--cal-line);border-radius:23px;background:var(--cal-paper);box-shadow:0 8px 30px #30103905}.fmcal-month-bar{display:flex;align-items:center;justify-content:space-between;gap:12px}.fmcal h2{font-size:26px!important;line-height:1.2!important;letter-spacing:-.035em;color:var(--cal-ink)!important;margin:6px 0 0!important}.fmcal-month-controls{display:flex;gap:6px;align-items:center}.fmcal-month-controls button{display:grid;place-items:center;min-width:35px;min-height:36px;border:1px solid var(--cal-line);border-radius:10px;background:#faf7ff;color:var(--cal-ink);font-size:17px}.fmcal-month-controls .fmcal-today{padding:9px;font-size:10px;font-weight:750}.fmcal-month-controls button:disabled{opacity:.35;cursor:default}.fmcal-month-summary{min-height:20px;font-size:11px;color:var(--cal-muted);margin:10px 0 18px}.fmcal-weekdays,.fmcal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.fmcal-weekdays span{text-align:center;padding:6px 0 11px;font-size:10px;font-weight:750;color:var(--cal-muted)}.fmcal-grid{gap:6px}.fmcal-day,.fmcal-blank{position:relative;min-width:0;min-height:105px;border:1px solid #ece5f0;border-radius:12px;padding:9px 7px;background:#fff;text-align:left;color:var(--cal-ink)}.fmcal-blank{border-color:transparent;background:#faf8fc}.fmcal-day{display:flex;flex-direction:column;gap:5px;transition:border-color .15s,box-shadow .15s,transform .15s}.fmcal-day:hover{border-color:#b896d8;transform:translateY(-2px);box-shadow:0 5px 10px #57307e0a}.fmcal-day[aria-pressed=true]{border:2px solid var(--cal-violet);padding:8px 6px;background:#f7f0ff;box-shadow:0 2px 0 #6540bc20}.fmcal-date{display:flex;align-items:center;justify-content:space-between;gap:2px;font-size:12px;font-weight:800}.fmcal-date small{font-size:7px;font-weight:800;letter-spacing:.04em;color:var(--cal-violet)}.fmcal-day.is-today .fmcal-date>b{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:var(--cal-violet);color:#fff;margin:-3px 0 -1px}.fmcal-day.is-past{background:#fcfbfd}.fmcal-day.is-past .fmcal-date{color:#a29aa9}.fmcal-preview{display:block;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:3px 4px;border-radius:4px;background:#f9e4f0;color:#9e2464;font-size:8px;font-weight:650;line-height:1.35}.fmcal-preview.is-start{background:#ddf3eb;color:#156b55}.fmcal-preview.is-end{background:#fff0e8;color:#9b492d}.fmcal-day-more{margin-top:auto;font-size:8px;font-weight:700;color:var(--cal-muted)}.fmcal-mobile-dots{display:none}.fmcal-legend{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:18px 0 14px;border-bottom:1px solid var(--cal-line)}.fmcal-legend>span{display:inline-flex;align-items:center;gap:5px;font-size:9px;color:var(--cal-muted)}.fmcal-legend .fmcal-timezone{margin-left:auto}.fmcal-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:15px}.fmcal-footer p{margin:0;max-width:44ch;font-size:10px;line-height:1.6;color:var(--cal-muted)}.fmcal-footer button{flex-shrink:0;border:0;border-radius:9px;background:#eee7f7;padding:10px 12px;font-size:10px;font-weight:800;color:var(--cal-violet)}.fmcal-day-panel{min-width:0;border:1px solid #dcd2e7;border-radius:23px;background:linear-gradient(145deg,#f1eafa,#fdf7ff);overflow:hidden}.fmcal-day-heading{padding:22px 20px 15px;border-bottom:1px solid #e1d6ec}.fmcal-day-heading h2{font-size:25px!important}.fmcal-day-heading p{font-size:11px;line-height:1.5;color:var(--cal-muted);margin:8px 0 0}.fmcal-agenda{padding:12px;display:grid;gap:9px;max-height:645px;overflow:auto;scrollbar-width:thin}.fmcal-event{position:relative;display:block;padding:14px;border:1px solid #e8dfed;border-radius:13px;background:var(--cal-paper);color:var(--cal-ink);transition:box-shadow .15s,transform .15s}.fmcal-event:hover{transform:translateY(-2px);box-shadow:0 5px 15px #3010390e}.fmcal-event-top{display:flex;justify-content:space-between;align-items:center;gap:5px;margin-bottom:9px}.fmcal-tag{display:inline-flex;align-items:center;gap:5px;padding:4px 6px;border-radius:5px;background:#f9e4f0;color:#9e2464;font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.03em}.fmcal-tag.is-start{background:#ddf3eb;color:#156b55}.fmcal-tag.is-end{background:#fff0e8;color:#9b492d}.fmcal-phase{font-size:8px;color:var(--cal-muted)}.fmcal-event-body{display:flex;align-items:start;gap:10px}.fmcal-event-body img{width:44px;height:44px;flex-shrink:0;object-fit:cover;border-radius:8px;background:#f7f3fa}.fmcal-event strong{display:block;font-size:12px;font-weight:800;line-height:1.5;color:var(--cal-ink)}.fmcal-event-time{display:block;font-size:9px;line-height:1.5;color:var(--cal-muted);margin-top:7px}.fmcal-event-link{display:flex;align-items:center;justify-content:space-between;margin-top:12px;color:var(--cal-pink);font-size:9px;font-weight:800}.fmcal-empty{padding:30px 12px;text-align:center;color:var(--cal-muted)}.fmcal-empty>span{display:block;font-size:32px;color:#a07abc;margin-bottom:8px}.fmcal-empty strong{display:block;font-size:15px;color:var(--cal-ink)}.fmcal-empty p{font-size:11px;line-height:1.7}.fmcal-upcoming{margin-top:30px}.fmcal-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:15px}.fmcal-section-heading h2{font-size:26px!important}.fmcal-section-heading p{font-size:11px;color:var(--cal-muted);margin:0}.fmcal-upcoming-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.fmcal-upcoming-list .fmcal-event{padding:18px}.fmcal-upcoming-list .fmcal-event strong{font-size:13px}.fmcal-upcoming-date{display:block;margin-bottom:10px;font-size:10px;font-weight:800;color:var(--cal-violet)}.fmcal-bottom-note{display:flex;align-items:center;gap:14px;padding:20px;margin-top:24px;border:1px dashed #cebedc;border-radius:15px}.fmcal-bottom-note>span{font-size:28px;color:var(--cal-violet)}.fmcal-bottom-note p{font-size:10px;line-height:1.7;color:var(--cal-muted);margin:0;flex:1}.fmcal-bottom-note strong{color:var(--cal-ink)}.fmcal-bottom-note a{flex-shrink:0;font-size:11px;font-weight:800;color:var(--cal-violet)}.fmcal-error{font-size:12px;color:#a32a37;background:#fff0ee;padding:14px;border-radius:10px}.fmcal[aria-busy=true] .fmcal-grid{opacity:.5;pointer-events:none}
:root[data-fm-theme=dark] .fmcal{--cal-ink:#f3edf9;--cal-muted:#bbb0c9;--cal-line:#4d3e5d;--cal-paper:#281f32;--cal-bg:#1b1523;--cal-violet:#c1a3ff;--cal-pink:#ff8fc4}:root[data-fm-theme=dark] .fmcal-hero{background:linear-gradient(115deg,#382347,#382635,#203c36);border-color:#644b70}:root[data-fm-theme=dark] .fmcal-hero-copy>p,:root[data-fm-theme=dark] .fmcal-hero-note{color:#d8c7df}:root[data-fm-theme=dark] .fmcal-sticker{background:#493847;color:#fff1cb;border-color:#9c7b99;box-shadow:6px 7px 0 #17111f}:root[data-fm-theme=dark] .fmcal-sticker>span{color:#ffc5e5}:root[data-fm-theme=dark] .fmcal-month-controls button,:root[data-fm-theme=dark] .fmcal-day{background:#281f32;border-color:#53435e}:root[data-fm-theme=dark] .fmcal-day[aria-pressed=true]{background:#403050}:root[data-fm-theme=dark] .fmcal-blank,:root[data-fm-theme=dark] .fmcal-day.is-past{background:#251d2e}:root[data-fm-theme=dark] .fmcal-day-panel{background:linear-gradient(145deg,#30253c,#281d32);border-color:#54405f}:root[data-fm-theme=dark] .fmcal-day-heading{border-color:#54405f}:root[data-fm-theme=dark] .fmcal-tabs button[aria-pressed=true]{background:#baa1de;color:#20172b;border-color:#baa1de}
@media(min-width:1250px){.fmcal-day{min-height:122px}.fmcal-layout{grid-template-columns:minmax(0,1fr) 320px}.fmcal-preview{font-size:9px}}
@media(max-width:1000px){.fmcal-layout{grid-template-columns:minmax(0,1fr)}.fmcal-day-panel{display:block}.fmcal-agenda{grid-template-columns:repeat(2,minmax(0,1fr));max-height:500px}.fmcal-upcoming-list{grid-template-columns:repeat(2,minmax(0,1fr))}.fmcal-day{min-height:100px}.fmcal-sticker{flex-basis:160px;padding:20px 14px}.fmcal-sticker b{font-size:23px}}
@media(max-width:600px){.fmcal{padding:18px 12px 30px}.fmcal-hero{padding:25px 21px;border-radius:21px;gap:0}.fmcal h1{font-size:35px!important;max-width:9ch;line-height:1.06!important;position:relative;z-index:1}.fmcal h1>span{display:none}.fmcal-hero-copy>p{font-size:12px}.fmcal-eyebrow{font-size:8px}.fmcal-hero-note{font-size:9px;max-width:28ch}.fmcal-sticker{position:absolute;right:16px;top:29px;flex-basis:auto;width:100px;padding:14px 8px;border-radius:17px;transform:rotate(8deg)}.fmcal-sticker>span{font-size:6px}.fmcal-sticker b{font-size:16px}.fmcal-sticker i{font-size:12px}.fmcal-toolbar{gap:12px;margin:19px 0 16px}.fmcal-tabs{width:100%;gap:5px}.fmcal-tabs button{font-size:9px;padding:8px 9px;gap:4px;min-height:36px}.fmcal-tabs button>span{font-size:8px;padding:1px 4px}.fmcal-search{flex-basis:100%;max-width:none}.fmcal-search input{font-size:16px;min-height:43px}.fmcal-month-panel{padding:17px 10px;border-radius:18px}.fmcal-month-bar{padding:0 4px}.fmcal-month-bar .fmcal-small{font-size:7px;max-width:26ch}.fmcal h2{font-size:24px!important}.fmcal-month-controls{gap:4px}.fmcal-month-controls button{min-width:30px;min-height:34px;font-size:16px}.fmcal-month-controls .fmcal-today{font-size:8px;padding:7px}.fmcal-month-summary{padding:0 4px;font-size:10px;margin:10px 0 14px}.fmcal-grid{gap:4px}.fmcal-weekdays span{font-size:9px}.fmcal-day,.fmcal-blank{min-height:66px;border-radius:8px;padding:7px 4px;gap:7px}.fmcal-day[aria-pressed=true]{padding:6px 3px}.fmcal-date{font-size:11px;justify-content:center}.fmcal-date small{display:none}.fmcal-day.is-today .fmcal-date>b{width:21px;height:21px}.fmcal-preview,.fmcal-day-more{display:none}.fmcal-mobile-dots{display:flex;gap:3px;justify-content:center;flex-wrap:wrap;margin-top:auto}.fmcal-mobile-dots .fmcal-dot{width:5px;height:5px}.fmcal-mobile-count{width:100%;display:block;text-align:center;font-size:8px;line-height:1;color:var(--cal-muted)}.fmcal-legend{gap:8px;padding:14px 4px}.fmcal-legend>span{font-size:8px;gap:4px}.fmcal-legend .fmcal-timezone{margin:0;flex-basis:100%}.fmcal-footer{padding:0 4px;align-items:start;gap:9px}.fmcal-footer p{font-size:9px}.fmcal-footer button{font-size:9px;padding:9px}.fmcal-agenda{grid-template-columns:minmax(0,1fr);max-height:560px;padding:11px}.fmcal-day-heading{padding:18px}.fmcal-event strong{font-size:14px}.fmcal-event-time,.fmcal-event-link{font-size:11px}.fmcal-tag,.fmcal-phase{font-size:9px}.fmcal-event-body img{width:50px;height:50px}.fmcal-upcoming{margin-top:24px}.fmcal-section-heading{display:block}.fmcal-section-heading p{margin-top:8px;font-size:11px}.fmcal-upcoming-list{grid-template-columns:minmax(0,1fr)}.fmcal-bottom-note{flex-wrap:wrap;padding:16px;gap:10px}.fmcal-bottom-note>span{display:none}.fmcal-bottom-note p{flex-basis:100%}.fmcal-bottom-note a{font-size:11px}}
@media(prefers-reduced-motion:reduce){.fmcal *{transition:none!important;scroll-behavior:auto!important}}

@media(max-width:600px){.fmcal-sticker{width:86px;right:18px;top:22px;padding:10px 7px;gap:5px}.fmcal-sticker>span{font-size:5.5px}.fmcal-sticker b{font-size:14px;line-height:1.1}.fmcal-sticker i{font-size:10px}}

@media(max-width:370px){.fmcal-sticker{display:none}.fmcal h1{max-width:none}.fmcal h1>span{display:inline}.fmcal-hero-note{max-width:none}}
