body{background:#f5ebd3;margin:0}.cal{--ink:#231f1c;--muted:#5a4f45;--raised:#fbf5e8;--deep:#ead6ae;min-height:100vh;color:var(--ink);box-sizing:border-box;background:#f5ebd3;max-width:1280px;margin:0 auto;padding:0 32px;font-family:Josefin Sans,Futura,sans-serif}.cal *,.cal :before,.cal :after{box-sizing:border-box}.cal a{color:var(--ink)}.cal-titan{font-family:Titan One,sans-serif;font-weight:400}.cal-box{background:var(--raised);border:3px solid var(--ink);box-shadow:4px 4px 0 var(--ink);border-radius:12px}.cal-nav{border-bottom:3px solid var(--ink);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:20px 0;display:flex}.cal-brand{align-items:baseline;gap:10px;text-decoration:none;display:flex}.cal-brand .cal-titan{font-size:30px;line-height:1}.cal-brand b{letter-spacing:.12em;color:var(--accent);font-size:13px}.cal-links{flex-wrap:wrap;gap:8px 24px;font-size:16px;font-weight:600;display:flex}.cal-links a{text-decoration:none}.cal-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px 32px;padding-top:32px;display:flex}.cal-head h1{margin:0;font-size:56px;line-height:1.02}.cal-sub{max-width:560px;margin:10px 0 0;font-size:19px;line-height:30px}.cal-peek{flex:none;width:330px;height:160px;position:relative;overflow:hidden}.cal-bubble{width:170px;padding:10px 12px;font-size:15px;font-weight:700;line-height:20px;position:absolute;top:8px;left:0}.cal-bubble:after{content:"";border:8px solid #0000;border-left:12px solid var(--ink);position:absolute;top:26px;right:-15px}.cal-cat{width:140px;height:180px;position:absolute;top:0;right:0}.cal-cat img{width:100%;display:block;position:absolute;top:0;left:0}.cal-wave{transform-origin:72.77% 48.26%;animation:1.3s ease-in-out .6s both cal-wave}@keyframes cal-wave{0%{transform:rotate(0)}14%{transform:rotate(14deg)}30%{transform:rotate(-20deg)}46%{transform:rotate(12deg)}62%{transform:rotate(-14deg)}76%{transform:rotate(6deg)}88%{transform:rotate(-3deg)}to{transform:rotate(0)}}.cal-filters{flex-wrap:wrap;gap:10px;margin:28px 0 20px;display:flex}.cal-stamp{letter-spacing:.08em;text-transform:uppercase;background:var(--raised);min-height:44px;color:var(--ink);border:3px solid var(--ink);cursor:pointer;box-shadow:3px 3px 0 var(--ink);border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font:700 14px Josefin Sans,sans-serif;transition:transform .12s,box-shadow .12s,opacity .12s;display:inline-flex}.cal-stamp:active{box-shadow:1px 1px 0 var(--ink);transform:translate(2px,2px)}.cal-stamp[aria-pressed=false]{opacity:.45;box-shadow:none}.cal-stamp i{border:2px solid var(--ink);border-radius:50%;width:14px;height:14px}.cal-bar{justify-content:space-between;align-items:center;margin:8px 0 16px;display:flex}.cal-month{align-items:center;gap:14px;display:flex}.cal-month h2{margin:0;font-size:36px}.cal-arrow{background:var(--raised);border:3px solid var(--ink);width:44px;height:44px;box-shadow:3px 3px 0 var(--ink);border-radius:10px;place-items:center;font-size:24px;font-weight:700;text-decoration:none;display:inline-grid}.cal-layout{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:28px;padding-bottom:48px;display:grid}.cal-grid-box{overflow:hidden}.cal-dow,.cal-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.cal-dow div{letter-spacing:.14em;text-align:center;background:var(--ink);color:var(--raised);padding:10px;font-size:13px;font-weight:700}.cal-cell{text-align:left;min-height:118px;font:inherit;color:inherit;background:var(--raised);border:0;border-right:2px solid var(--ink);border-bottom:2px solid var(--ink);cursor:pointer;flex-direction:column;gap:4px;padding:8px;display:flex;position:relative}.cal-cell:nth-child(7n){border-right:0}.cal-cell.wknd{background:#f7eedb}.cal-cell.out{background:var(--deep);cursor:default}button.cal-cell:hover{background:#fff9ec}.cal-cell:focus-visible{outline:3px solid var(--accent);outline-offset:-5px}.cal-num{font-size:16px;font-weight:700}.cal-cell.today .cal-num{text-decoration:underline;text-decoration-thickness:3px;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:4px}.cal-cell.sel{outline:4px solid var(--accent);outline-offset:-4px;z-index:1}.cal-cell.sel .cal-num{background:var(--accent);width:30px;height:30px;color:var(--raised);border-radius:50%;place-items:center;margin:-4px;text-decoration:none;display:inline-grid}.cal-chip{white-space:nowrap;text-overflow:ellipsis;background:#f2e6cc;border-left:5px solid;border-radius:5px;padding:3px 6px;font-size:12.5px;font-weight:600;line-height:16px;display:block;overflow:hidden}.cal-more{color:var(--muted);font-size:12px;font-weight:700}.cal-dots{flex-wrap:wrap;justify-content:center;gap:3px;display:none}.cal-dots i{border:1.5px solid var(--ink);border-radius:50%;width:8px;height:8px}.cal-day{padding:22px;position:sticky;top:16px}.cal-day h3{margin:0 0 4px;font-size:28px;line-height:1.1}.cal-count{color:var(--muted);margin:0 0 12px;font-size:15px}.cal-ev{border-top:2px dashed #cdb98f;grid-template-columns:70px 1fr;gap:10px;padding:12px 0;text-decoration:none;display:grid}.cal-ev:hover .cal-ti{text-decoration:underline}.cal-t{font-size:14px;font-weight:700;line-height:20px}.cal-ti{font-family:Titan One,sans-serif;font-size:17px;line-height:22px;display:block}.cal-v{color:var(--muted);font-size:14px;line-height:20px;display:block}.cal-tag{letter-spacing:.12em;border:2px solid var(--ink);border-radius:5px;margin-top:6px;padding:3px 7px;font-size:11px;font-weight:700;display:inline-block}.cal-empty{overflow-wrap:anywhere;border-top:2px dashed #cdb98f;margin:0;padding:14px 0 0;font-size:16px;line-height:24px}.cal-regulars{border-top:3px solid var(--ink);padding:40px 0 64px}.cal-regulars h2{margin:0;font-size:44px;line-height:1.05}.cal-lede{max-width:620px;margin:10px 0 24px;font-size:19px;line-height:30px}.cal-rgrid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px;display:grid}.cal-rcard{flex-direction:column;gap:10px;padding:20px;text-decoration:none;display:flex}.cal-when{letter-spacing:.12em;background:var(--accent-soft);color:var(--accent-ink);border:2px solid var(--ink);border-radius:6px;align-self:flex-start;padding:6px 10px;font-size:13px;font-weight:700}.cal-name{font-family:Titan One,sans-serif;font-size:22px;line-height:1.2}.cal-where{color:var(--muted);font-size:15px;line-height:22px}.cal-ticket{border-top:2px dashed #cdb98f;margin-top:auto;padding-top:10px;font-size:14px;font-weight:700}.cal-add{box-shadow:none;background:0 0;border-style:dashed;justify-content:center}.cal-add a{font-weight:700}@media (prefers-reduced-motion:reduce){.cal-stamp{transition:none}.cal-wave{animation:none}}@media (max-width:900px){.cal-layout{grid-template-columns:minmax(0,1fr)}.cal-day{position:static}}@media (max-width:640px){.cal{padding:0 16px}.cal-links{scrollbar-width:none;flex-wrap:nowrap;max-width:100%;padding-bottom:4px;overflow-x:auto}.cal-links a{flex:none;align-items:center;min-height:44px;display:inline-flex}.cal-head h1{font-size:40px}.cal-peek{display:none}.cal-filters{scrollbar-width:none;flex-wrap:nowrap;margin:20px -16px 16px;padding:0 16px 6px;overflow-x:auto}.cal-stamp{flex:none}.cal-month h2{white-space:nowrap;font-size:24px}.cal-cell{align-items:center;min-height:58px;padding:6px 4px}.cal-chip,.cal-more{display:none}.cal-dots{display:flex}.cal-dow div{letter-spacing:.06em;padding:8px 0;font-size:11px}.cal-regulars h2{font-size:34px}}
