.jaikki-calendar-root{width:100%;color:#242424;font-family:inherit}.jaikki-calendar{--jc-line:#e7e7e7;background:#fff;border:1px solid var(--jc-line);border-radius:24px;overflow:hidden;box-shadow:0 8px 28px rgba(0,0,0,.045)}.jaikki-calendar__header{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;padding:16px 18px 12px}.jaikki-calendar__header h2{font:inherit;font-size:clamp(18px,2.4vw,25px);font-weight:600;letter-spacing:.04em;text-align:center;margin:0}.jaikki-calendar__nav{appearance:none;border:0;background:#f2f2f2;color:#333;width:40px;height:40px;border-radius:999px;font-size:29px;line-height:1;cursor:pointer;transition:transform .15s,background .15s}.jaikki-calendar__nav:hover{background:#e8e8e8;transform:scale(1.04)}.jaikki-calendar__weekdays,.jaikki-calendar__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.jaikki-calendar__weekdays{border-top:1px solid var(--jc-line);border-bottom:1px solid var(--jc-line);font-size:12px;font-weight:600;text-align:center}.jaikki-calendar__weekdays>div{padding:8px 2px}.jaikki-calendar .day-0{color:#b55757}.jaikki-calendar .day-6{color:#4c71a8}.jaikki-calendar__cell{min-width:0;min-height:0;padding:7px 5px;border-right:1px solid var(--jc-line);border-bottom:1px solid var(--jc-line);background:#fff}.jaikki-calendar__cell:nth-child(7n){border-right:0}.jaikki-calendar__cell.is-empty{background:#fbfbfb}.jaikki-calendar__cell.is-today{background:#fffdf4}.jaikki-calendar__date{font-size:12px;font-weight:600;line-height:1;margin:0 0 7px 3px}.jaikki-calendar__events{display:flex;flex-direction:column;gap:4px}.jaikki-calendar__event{display:flex;align-items:center;gap:4px;min-width:0;min-height:25px;padding:4px 8px;border-radius:999px;color:#23313a;background:var(--jc-normal);font-size:11px;line-height:1.3}.jaikki-calendar__event.is-live{background:var(--jc-live);color:#26351e}.jaikki-calendar__event.is-private{justify-content:center;background:var(--jc-private);color:#333;font-size:14px}.jaikki-calendar__time{flex:none;font-size:9px;font-variant-numeric:tabular-nums;opacity:.72}.jaikki-calendar__title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jaikki-calendar-error{padding:18px 20px;border-radius:999px;background:#f1f1f1;text-align:center;color:#555}.jaikki-calendar-root.is-loading{opacity:.6;pointer-events:none}
@media(max-width:700px){.jaikki-calendar{border-radius:18px}.jaikki-calendar__header{padding:12px 8px 9px}.jaikki-calendar__header h2{font-size:17px}.jaikki-calendar__nav{width:34px;height:34px;font-size:24px}.jaikki-calendar__weekdays{font-size:10px}.jaikki-calendar__weekdays>div{padding:6px 1px}.jaikki-calendar__cell{min-height:0;padding:5px 2px}.jaikki-calendar__date{font-size:10px;margin:0 0 5px 2px}.jaikki-calendar__events{gap:3px}.jaikki-calendar__event{min-height:18px;padding:3px 4px;font-size:8px;gap:2px}.jaikki-calendar__event.is-private{font-size:11px}.jaikki-calendar__time{display:none}}
.jaikki-calendar-root{height:var(--jc-fit-height,auto);max-height:720px}
.jaikki-calendar-root>.jaikki-calendar{height:100%;display:grid;grid-template-rows:auto auto minmax(0,1fr)}
.jaikki-calendar__grid{grid-template-rows:repeat(var(--jc-weeks,6),minmax(0,1fr));grid-auto-rows:0;min-height:0;overflow:hidden}
.jaikki-calendar__cell{min-height:0;overflow:hidden}
.jaikki-calendar-root{touch-action:pan-y}
.jaikki-calendar__header h2 .jaikki-calendar__updated{display:block;margin:3px 0 0;color:#242424;font-size:12px;font-weight:400;line-height:1.2;letter-spacing:0;white-space:nowrap}
@media(max-width:700px){.jaikki-calendar__header h2 .jaikki-calendar__updated{font-size:10px;margin-top:2px}}
.jaikki-calendar__title{display:block;flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.jaikki-calendar__title-track{display:inline-block;min-width:max-content;white-space:nowrap}
.jaikki-calendar__title.is-marquee{--jc-marquee-distance:0px;text-overflow:clip}
.jaikki-calendar__title.is-marquee .jaikki-calendar__title-track{animation:jaikki-calendar-marquee var(--jc-marquee-duration,10s) linear infinite;will-change:transform}
@keyframes jaikki-calendar-marquee{0%,18%{transform:translateX(0)}82%,100%{transform:translateX(var(--jc-marquee-distance))}}
@media(prefers-reduced-motion:reduce){.jaikki-calendar__title.is-marquee .jaikki-calendar__title-track{animation:none;will-change:auto}.jaikki-calendar__title.is-marquee{text-overflow:ellipsis}}
.jaikki-calendar__event.is-private{justify-content:center}
.jaikki-calendar__private-icon-wrap{display:flex;align-items:center;justify-content:center;flex:1 1 auto;min-width:0}
.jaikki-calendar__private-icon{display:block;flex:none;width:17px;height:17px;object-fit:contain;margin:0}
@media(max-width:700px){.jaikki-calendar__private-icon{width:12px;height:12px}}
.jaikki-calendar__cell{--jc-cell-x:5px;position:relative;overflow:visible}
.jaikki-calendar__event{position:relative;z-index:2}
.jaikki-calendar__event.continues-before{margin-left:calc(0px - var(--jc-cell-x) - 1px);padding-left:calc(8px + var(--jc-cell-x));border-top-left-radius:0;border-bottom-left-radius:0}
.jaikki-calendar__event.continues-after{margin-right:calc(0px - var(--jc-cell-x) - 1px);padding-right:calc(8px + var(--jc-cell-x));border-top-right-radius:0;border-bottom-right-radius:0}
.jaikki-calendar__event.continues-before>*{visibility:hidden}
@media(max-width:700px){.jaikki-calendar__cell{--jc-cell-x:2px}.jaikki-calendar__event.continues-before{padding-left:calc(4px + var(--jc-cell-x))}.jaikki-calendar__event.continues-after{padding-right:calc(4px + var(--jc-cell-x))}}
.jaikki-calendar__event.continuation-start{z-index:4}
.jaikki-calendar__event.continuation-start .jaikki-calendar__title{flex:0 0 var(--jc-continuation-label-width);width:var(--jc-continuation-label-width);max-width:none}
.jaikki-calendar__cell.has-continuation-start{z-index:4}
.jaikki-calendar__event.is-private.continuation-start{justify-content:flex-start}
.jaikki-calendar__event.continuation-start .jaikki-calendar__private-icon-wrap{flex:0 0 var(--jc-continuation-label-width);width:var(--jc-continuation-label-width);max-width:none}
.jaikki-calendar__cell{display:flex;flex-direction:column}
.jaikki-calendar__date{flex:none}
.jaikki-calendar__events{position:relative;display:block;flex:1 1 auto;min-height:0;clip-path:inset(0 -100vw 0 -100vw)}
.jaikki-calendar__events-track{position:relative;z-index:2;display:flex;flex-direction:column;gap:4px;will-change:transform}
.jaikki-calendar__events-scroller{position:absolute;inset:0;z-index:5;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(60,60,60,.38) transparent}
.jaikki-calendar__events:not(.is-scrollable) .jaikki-calendar__events-scroller{pointer-events:none;scrollbar-width:none}
.jaikki-calendar__events.is-scrollable .jaikki-calendar__events-track{pointer-events:none}
.jaikki-calendar__events-spacer{width:1px;min-height:100%;opacity:0;pointer-events:none}
.jaikki-calendar__events-scroller::-webkit-scrollbar{width:4px}
.jaikki-calendar__events-scroller::-webkit-scrollbar-track{background:transparent}
.jaikki-calendar__events-scroller::-webkit-scrollbar-thumb{background:rgba(60,60,60,.38);border-radius:999px}
@media(max-width:700px){.jaikki-calendar__events-track{gap:3px}.jaikki-calendar__events-scroller::-webkit-scrollbar{width:3px}}
