.ic{--ic-pri:var(--color-primary,#2f3a2d);--ic-bg:var(--color-background,#f6f4ed);--ic-bd:var(--color-border,#d8d5c7);--ic-mut:var(--color-muted-foreground,#565b52);--ic-soft:var(--color-sage-soft,#dfe4d6);--ic-sec:var(--color-secondary,#eae8dd);--ic-fg:var(--color-foreground,#1b1d19);--ic-err:var(--color-destructive,#a33a2f)}.ic-card{border:1px solid var(--ic-bd);border-radius:var(--radius-lg,14px);background:var(--ic-bg);gap:1.5rem;padding:.75rem;display:grid}@media (width>=640px){.ic-card{padding:1.25rem}}@media (width>=1024px){.ic-card{grid-template-columns:minmax(0,1fr) 21.5rem;gap:2rem;padding:1.5rem}}.ic-cal{min-width:0;min-height:24rem}.ic-cal-head{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.ic-cal-title{font-family:var(--font-serif);text-align:center;flex:1;margin:0;font-size:1.35rem;font-weight:500}.ic-nav{border:1px solid var(--ic-bd);width:2.75rem;height:2.75rem;color:var(--ic-fg);cursor:pointer;background:0 0;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.ic-nav:hover:not(:disabled){background:var(--ic-sec)}.ic-nav:disabled{opacity:.35;cursor:not-allowed}.ic-card.is-error{grid-template-columns:1fr}.ic-card.is-error .ic-side,.ic-card.is-error .ic-legend,.ic-card.is-error .ic-minstay,.ic-card.is-error .ic-nav{display:none}.ic-card.is-error .ic-cal,.ic-card.is-error .ic-months{min-height:0}.ic-months{gap:1.5rem;min-height:19rem;display:grid}@media (width>=720px){.ic-months.is-two{grid-template-columns:1fr 1fr;gap:2rem}}.ic-month-h{letter-spacing:.08em;text-transform:uppercase;color:var(--ic-mut);text-align:center;margin:0 0 .35rem;font-size:.8rem;font-weight:600}.ic-grid{border-collapse:separate;border-spacing:0 2px;table-layout:fixed;width:100%}.ic-grid th{color:var(--ic-mut);text-align:center;padding:.25rem 0;font-size:.7rem;font-weight:600}.ic-grid td{padding:0}.ic-day{width:100%;min-height:3.1rem;color:var(--ic-fg);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;padding:.1rem 0;line-height:1.1;display:flex;position:relative}.ic-n{font-size:.95rem;font-weight:600}.ic-p{color:var(--ic-mut);font-variant-numeric:tabular-nums;min-height:.75rem;margin-top:.1rem;font-size:.65rem}.ic-day:hover:not([aria-disabled=true]):not([data-s=start]):not([data-s=end]){background:var(--ic-soft)}.ic-day[aria-disabled=true]{cursor:not-allowed;color:#8c9186}.ic-day[aria-disabled=true] .ic-n{font-weight:500}.ic-day[data-s=booked] .ic-n,.ic-day[data-s=past] .ic-n{text-decoration:line-through}.ic-day[data-s=past]{visibility:visible;opacity:.55}.ic-day[data-s=restricted] .ic-p{visibility:hidden}.ic-day[data-s=range],.ic-day[data-s=hover]{background:var(--ic-soft);border-radius:0}.ic-day[data-s=start],.ic-day[data-s=end]{background:var(--ic-pri);color:var(--color-primary-foreground,#f6f4ed)}.ic-day[data-s=start] .ic-p,.ic-day[data-s=end] .ic-p{color:var(--color-primary-foreground,#f6f4ed);opacity:.85}.ic-day[data-s=start].has-end{border-radius:8px 0 0 8px}.ic-day[data-s=end]{border-radius:0 8px 8px 0}.ic-day[data-s=co]{color:var(--ic-fg);outline:1px dashed var(--ic-pri);outline-offset:-3px}.ic-day:focus-visible{outline:2px solid var(--ic-pri);outline-offset:1px;z-index:1}.ic-day[data-s=start]:focus-visible,.ic-day[data-s=end]:focus-visible{outline-color:var(--ic-fg);outline-offset:2px}.ic-skel{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.ic-skel span{background:var(--ic-sec);border-radius:8px;height:3rem;animation:1.2s ease-in-out infinite ic-pulse}@keyframes ic-pulse{50%{opacity:.5}}.ic-msg{min-height:1.5rem;color:var(--ic-mut);margin:.75rem 0 0;font-size:.875rem}.ic-msg.is-warn{color:var(--ic-fg);font-weight:600}.ic-legend{color:var(--ic-mut);flex-wrap:wrap;gap:.4rem 1.25rem;margin:.5rem 0 0;padding:0;font-size:.78rem;list-style:none;display:flex}.ic-legend li{align-items:center;gap:.4rem;display:inline-flex}.ic-key{border:1px solid var(--ic-bd);border-radius:3px;width:.9rem;height:.9rem;display:inline-block}.ic-key-av{background:var(--ic-bg)}.ic-key-sel{background:var(--ic-pri);border-color:var(--ic-pri)}.ic-key-no{background:repeating-linear-gradient(135deg, #e4e1d4 0 3px, var(--ic-bg) 3px 6px)}.ic-minstay{color:var(--ic-mut);margin:.35rem 0 0;font-size:.78rem}.ic-side{border-top:1px solid var(--ic-bd);padding-top:1.25rem}@media (width>=1024px){.ic-side{border-top:0;border-left:1px solid var(--ic-bd);padding:0 0 0 2rem}}.ic-side-h{margin:0 0 .75rem;font-size:1.5rem}.ic-dates{border:1px solid var(--ic-bd);border-radius:10px;grid-template-columns:1fr 1fr;display:grid;overflow:hidden}.ic-dates>div{flex-direction:column;padding:.6rem .85rem;display:flex}.ic-dates>div+div{border-left:1px solid var(--ic-bd)}.ic-lab{letter-spacing:.08em;text-transform:uppercase;color:var(--ic-mut);font-size:.72rem;font-weight:600;display:block}.ic-val{font-size:.95rem;font-weight:600}.ic-val.is-empty{color:var(--ic-mut);font-weight:500}.ic-hint{color:var(--ic-mut);font-size:.78rem;display:block}.ic-row{border-bottom:1px solid var(--ic-bd);justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 0;display:flex}.ic-step{align-items:center;gap:.25rem;display:inline-flex}.ic-sbtn{border:1px solid var(--ic-bd);width:2.75rem;height:2.75rem;color:var(--ic-fg);cursor:pointer;background:0 0;border-radius:999px;font-size:1.25rem;line-height:1}.ic-sbtn:hover:not(:disabled){background:var(--ic-sec)}.ic-sbtn:disabled{opacity:.35;cursor:not-allowed}.ic-gval{text-align:center;min-width:2rem;font-size:1.05rem;font-weight:600}.ic-switch{border:1px solid var(--ic-bd);background:var(--ic-sec);cursor:pointer;border-radius:999px;flex:none;width:3.25rem;height:1.9rem;padding:0;transition:background-color .2s;position:relative}.ic-switch span{background:#fff;border-radius:999px;width:1.4rem;height:1.4rem;margin-top:-.7rem;transition:transform .2s;position:absolute;top:50%;left:.2rem;box-shadow:0 1px 3px #0000004d}.ic-switch[aria-checked=true]{background:var(--ic-pri);border-color:var(--ic-pri)}.ic-switch[aria-checked=true] span{transform:translate(1.3rem)}.ic-price{min-height:9.5rem;padding:1rem 0}.ic-empty,.ic-loading,.ic-err{color:var(--ic-mut);margin:0;font-size:.92rem}.ic-err{color:var(--ic-fg)}.ic-err button{font:inherit;cursor:pointer;color:var(--ic-pri);background:0 0;border:0;margin-top:.5rem;padding:0;font-weight:600;text-decoration:underline;display:inline}.ic-lines{margin:0;padding:0;list-style:none}.ic-lines li{justify-content:space-between;gap:1rem;padding:.3rem 0;font-size:.92rem;display:flex}.ic-lines li span:last-child{font-variant-numeric:tabular-nums;white-space:nowrap}.ic-lines .is-disc span:last-child{color:#2f6b3a;font-weight:600}.ic-sub{color:var(--ic-mut);font-size:.78rem;display:block}.ic-total{border-top:1px solid var(--ic-bd);justify-content:space-between;align-items:baseline;margin-top:.5rem;padding-top:.75rem;font-weight:700;display:flex}.ic-total span:last-child{font-family:var(--font-serif);font-variant-numeric:tabular-nums;font-size:1.9rem;line-height:1}.ic-extra{color:var(--ic-mut);margin:.6rem 0 0;font-size:.78rem}.ic-cta{width:100%}.ic-cta[disabled]{opacity:.5;cursor:not-allowed}.ic-cta[hidden]{display:none}.ic-coupon{color:var(--ic-pri);text-align:center;margin:.75rem 0 0;font-size:.85rem;font-weight:600}.ic-small{color:var(--ic-mut);text-align:center;margin:.5rem 0 0;font-size:.75rem}@media (prefers-reduced-motion:reduce){.ic-skel span{animation:none}.ic-switch,.ic-switch span{transition:none}}
