.fcfbc{--fcfbc-ink:#10221a;--fcfbc-muted:#5d6e67;--fcfbc-line:rgba(16, 34, 26, 0.13);--fcfbc-bg:#f4faf6;--fcfbc-panel:#fff;--fcfbc-green:#2d6a4f;--fcfbc-red:#dc2626;--fcfbc-red-bg:#fff1f2;--fcfbc-radius:8px;display:grid;grid-template-columns:minmax(0, 1.4fr) minmax(280px, 0.6fr);gap:22px;color:var(--fcfbc-ink);font-family:inherit}.fcfbc-design-clean{--fcfbc-green:#245f73;--fcfbc-bg:#f8fafc}.fcfbc-design-contrast{--fcfbc-green:#173f35;--fcfbc-bg:#fff;--fcfbc-line:rgba(0, 0, 0, 0.22)}.fcfbc[data-show-form="0"]{grid-template-columns:1fr}.fcfbc-calendar-panel,.fcfbc-form{border:1px
solid var(--fcfbc-line);border-radius:var(--fcfbc-radius);background:var(--fcfbc-panel);box-shadow:0 18px 48px rgba(16, 34, 26, 0.08)}.fcfbc-calendar-panel{padding:clamp(14px, 2vw, 24px)}.fcfbc-toolbar{display:grid;grid-template-columns:52px 1fr 52px;align-items:center;gap:12px;margin-bottom:14px}.fcfbc-toolbar
h3{margin:0;text-align:center;font-size:clamp(1.4rem, 3vw, 2rem);color:var(--fcfbc-ink)}.fcfbc-toolbar
button{width:52px;height:52px;border:1px
solid rgba(45, 106, 79, 0.22);border-radius:var(--fcfbc-radius);background:#eaf6ef;color:var(--fcfbc-green);font-size:2rem;font-weight:900}.fcfbc-toolbar button:disabled{opacity:0.35;cursor:not-allowed}.fcfbc-weekdays,.fcfbc-grid{display:grid;grid-template-columns:repeat(7, minmax(0, 1fr));gap:8px}.fcfbc-weekdays{margin-bottom:8px}.fcfbc-weekdays
span{text-align:center;color:var(--fcfbc-muted);font-size:0.82rem;font-weight:900}.fcfbc-day,.fcfbc-blank{min-height:88px;border-radius:var(--fcfbc-radius)}.fcfbc-day{display:grid;align-content:start;gap:5px;width:100%;padding:9px;border:1px
solid var(--fcfbc-line);border-top:5px solid var(--season-color, var(--fcfbc-green));background:#fff;color:var(--fcfbc-ink);text-align:left;cursor:pointer}.fcfbc-day:hover{box-shadow:0 10px 22px rgba(16, 34, 26, 0.1)}.fcfbc-day
span{font-weight:950;line-height:1}.fcfbc-day
strong{color:var(--fcfbc-green);font-size:1.05rem;line-height:1.05}.fcfbc-day
small{color:var(--fcfbc-muted);line-height:1.15}.fcfbc-day.is-disabled{opacity:0.28;cursor:not-allowed}.fcfbc-day.is-today{outline:3px
solid rgba(244, 211, 94, 0.55)}.fcfbc-day.is-range{background:#eaf6ef}.fcfbc-day.is-start,.fcfbc-day.is-end{background:var(--fcfbc-green);color:#fff;border-color:var(--fcfbc-green);border-top-color:var(--fcfbc-green)}.fcfbc-day.is-start strong,
.fcfbc-day.is-end strong,
.fcfbc-day.is-start small,
.fcfbc-day.is-end
small{color:rgba(255, 255, 255, 0.88)}.fcfbc-day.is-blocked{opacity:1;cursor:not-allowed;background:var(--fcfbc-red-bg);border-color:rgba(220, 38, 38, 0.34);border-top-color:var(--fcfbc-red)}.fcfbc-day.is-blocked strong,
.fcfbc-day.is-blocked
span{color:#991b1b}.fcfbc-day.is-blocked
small{color:#b91c1c}.fcfbc-summary{margin-top:18px;border:1px
solid var(--fcfbc-line);border-radius:var(--fcfbc-radius);overflow:hidden;background:var(--fcfbc-bg)}.fcfbc-summary>div{display:flex;justify-content:space-between;gap:18px;padding:12px
14px;border-bottom:1px solid var(--fcfbc-line)}.fcfbc-summary
span{font-weight:850}.fcfbc-summary
strong{text-align:right}.fcfbc-total-row{background:var(--fcfbc-green);color:#fff}.fcfbc-hint{margin:0;padding:12px
14px;color:var(--fcfbc-muted)}.fcfbc-hint.is-warning,.fcfbc-form-message{color:#991b1b;background:#fff1f2}.fcfbc-form{display:grid;gap:13px;align-content:start;padding:clamp(16px, 2vw, 24px)}.fcfbc-form
h3{margin:0
0 6px}.fcfbc-form
label{display:grid;gap:6px;font-weight:850}.fcfbc-form input,
.fcfbc-form
textarea{width:100%;min-height:44px;border:1px
solid var(--fcfbc-line);border-radius:var(--fcfbc-radius);padding:10px
12px;font:inherit}.fcfbc-form
button{min-height:50px;border:0;border-radius:var(--fcfbc-radius);background:var(--fcfbc-green);color:#fff;font-weight:950;font-size:1rem}.fcfbc-form-message{min-height:22px;margin:0;padding:8px
10px;border-radius:var(--fcfbc-radius);background:transparent}@media (max-width: 860px){.fcfbc{grid-template-columns:1fr}.fcfbc-weekdays,.fcfbc-grid{gap:5px}.fcfbc-day,.fcfbc-blank{min-height:70px}.fcfbc-day{padding:7px}.fcfbc-day
strong{font-size:0.88rem}.fcfbc-day
small{font-size:0.68rem}}