.personal-calendar{--calendar-ink:#163b49;--calendar-muted:#4b6975;--calendar-line:#3f697930;color:var(--calendar-ink);font-family:var(--font-sans), sans-serif}.personal-calendar *,.personal-calendar :before,.personal-calendar :after{box-sizing:border-box}.personal-calendar :is(.personal-calendar__header,.personal-calendar__notice,.personal-calendar__layout) button,.personal-calendar input,.personal-calendar textarea{font:inherit}.personal-calendar :is(.personal-calendar__header,.personal-calendar__notice,.personal-calendar__layout) button{cursor:pointer;color:inherit;border:1px solid var(--calendar-line);background:#ffffff94;border-radius:12px;min-height:44px;padding:9px 12px;transition:background .15s}.personal-calendar :is(.personal-calendar__header,.personal-calendar__notice,.personal-calendar__layout) button:hover:enabled{background:#fff}.personal-calendar :is(.personal-calendar__header,.personal-calendar__notice,.personal-calendar__layout) button:disabled{cursor:default;opacity:.5}.personal-calendar :is(.personal-calendar__header,.personal-calendar__notice,.personal-calendar__layout) button:focus-visible,.personal-calendar input:focus-visible,.personal-calendar textarea:focus-visible{outline-offset:3px;outline:3px solid #137987}.personal-calendar h1,.personal-calendar h2,.personal-calendar h3,.personal-calendar p{margin:0}.personal-calendar h1{letter-spacing:-.04em;font-size:clamp(28px,3vw,42px);line-height:1.15}.personal-calendar h2{letter-spacing:-.02em;font-size:20px;line-height:1.3}.personal-calendar h3{font-size:15px;line-height:1.45}.personal-calendar p{color:var(--calendar-muted);font-size:14px;line-height:1.65}.personal-calendar__header{justify-content:space-between;align-items:flex-end;gap:20px;margin:0 0 24px;display:flex}.personal-calendar__header h1{margin:8px 0 12px}.personal-calendar__page-title,.personal-calendar__panel-heading--icon,.personal-calendar__month-title,.personal-calendar__editor-title{align-items:center;gap:10px;min-width:0;display:flex}.personal-calendar__page-title>div:last-child,.personal-calendar__panel-heading--icon>div:last-child,.personal-calendar__month-title>div:last-child{min-width:0}.personal-calendar__page-title h1{margin:3px 0 7px}.personal-calendar .personal-calendar__back{background:0 0;border:0;margin-bottom:12px;padding-left:0}.personal-calendar .personal-calendar__eyebrow{letter-spacing:.16em;color:#3d737a;font-size:10px;font-weight:800}.personal-calendar__save{color:var(--calendar-muted);max-width:240px;font-size:12px;line-height:1.5}.personal-calendar__layout{grid-template-columns:224px minmax(380px,1fr) 290px;align-items:start;gap:16px;display:grid}.personal-calendar__center{flex-direction:column;gap:16px;min-width:0;display:flex}.personal-calendar__templates,.personal-calendar__month,.personal-calendar__details{background:#f7fdfdb3;border:1px solid #ffffffdb;border-radius:22px;box-shadow:0 12px 35px #244d5d0f}.personal-calendar__templates,.personal-calendar__details{padding:20px}.personal-calendar__panel-heading{margin-bottom:14px}.personal-calendar__panel-heading h2{margin-top:7px}.personal-calendar__panel-heading--icon h2{margin-top:3px}.personal-calendar .personal-calendar__hint{font-size:12px;line-height:1.6}.personal-calendar__template-list{flex-direction:column;gap:7px;margin-top:8px;display:flex}.personal-calendar .personal-calendar__template{text-align:left;border-radius:13px;align-items:center;gap:9px;width:100%;padding:11px 9px;display:flex}.personal-calendar__template strong{font-size:12px;font-weight:700;line-height:1.45;display:block}.personal-calendar__template small{color:var(--calendar-muted);margin-top:3px;font-size:10px;display:block}.personal-calendar__drag{color:#7e9ba3;flex-shrink:0;font-size:20px}.personal-calendar__template-icon{color:#176d79;background:#e2f1f0;border-radius:10px;flex:0 0 32px;place-items:center;width:32px;height:32px;display:grid}.personal-calendar .personal-calendar__template--own{background:#d7f1e6bf;margin-top:14px}.personal-calendar .personal-calendar__template.is-selected{background:#d4ede9;border-color:#2b8584;box-shadow:0 0 0 1px #2b8584}.personal-calendar .personal-calendar__limit{margin-top:16px}.personal-calendar__month{padding:22px 16px 14px;overflow:hidden}.personal-calendar__month-heading{justify-content:space-between;align-items:center;gap:10px;padding:0 5px 12px;display:flex}.personal-calendar__month-heading p{margin-top:5px;font-size:11px}.personal-calendar__editor-title h3{font-size:16px}.personal-calendar__month-tools{align-items:center;gap:5px;display:flex}.personal-calendar__month-tools button{padding:8px;font-size:12px}.personal-calendar__month-tools button:first-child,.personal-calendar__month-tools button:last-child{width:44px;padding:0;font-size:24px}.personal-calendar .personal-calendar__selection{min-height:44px;padding:0 5px 10px;font-size:11px}.personal-calendar__weekdays,.personal-calendar__grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.personal-calendar__weekdays{color:var(--calendar-muted);text-align:center;padding-bottom:10px;font-size:11px;font-weight:700}.personal-calendar__grid{gap:5px}.personal-calendar .personal-calendar__day{text-align:left;background:#ffffff85;border-radius:11px;flex-direction:column;justify-content:flex-start;align-items:stretch;min-width:0;min-height:112px;padding:9px 6px;display:flex}.personal-calendar .personal-calendar__day--empty{background:#a6c7cd0f;border:1px solid #3f69790f}.personal-calendar .personal-calendar__day.is-selected{background:#dfefeb;border-color:#2b8584;box-shadow:inset 0 0 0 1px #2b8584}.personal-calendar__day-number{border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:14px;font-weight:700;display:inline-flex}.personal-calendar__day.is-today .personal-calendar__day-number{color:#fff;background:#236f77}.personal-calendar__day-events{flex-direction:column;gap:4px;margin-top:7px;display:flex}.personal-calendar__event{overflow-wrap:anywhere;background:#d8ede8;border-radius:5px;align-items:flex-start;gap:4px;min-width:0;padding:4px;font-size:10px;font-weight:600;line-height:1.3;display:flex;overflow:hidden}.personal-calendar__event>span:last-child{-webkit-line-clamp:2;-webkit-box-orient:vertical;min-width:0;display:-webkit-box;overflow:hidden}.personal-calendar__event i{margin-right:3px;font-style:normal}.personal-calendar__event.is-done{color:#52676d;background:#e4e9e9}.personal-calendar__more{color:var(--calendar-muted);font-size:10px}.personal-calendar .personal-calendar__footnote{padding:14px 5px 0;font-size:11px;line-height:1.6}.personal-calendar__agenda{flex-direction:column;gap:12px;margin-bottom:16px;display:flex}.personal-calendar__agenda-item{border-bottom:1px solid var(--calendar-line);overflow-wrap:anywhere;padding-bottom:16px}.personal-calendar__agenda-item h3{margin-bottom:5px}.personal-calendar__agenda-title{align-items:center;gap:7px;margin-bottom:5px;display:flex}.personal-calendar__agenda-title h3{margin:0}.personal-calendar__agenda-item p{font-size:11px}.personal-calendar .personal-calendar__note{white-space:pre-wrap;margin:9px 0;font-size:12px}.personal-calendar .personal-calendar__state{color:#256b61;margin:8px 0;font-weight:700}.personal-calendar__event-actions,.personal-calendar__editor-actions{flex-wrap:wrap;gap:6px;display:flex}.personal-calendar__event-actions button{padding:7px 8px;font-size:11px}.personal-calendar__editor{border-top:1px solid var(--calendar-line);flex-direction:column;gap:15px;margin-top:20px;padding-top:18px;display:flex}.personal-calendar__editor label{flex-direction:column;gap:7px;font-size:12px;font-weight:600;display:flex}.personal-calendar__editor input:not([type=checkbox]),.personal-calendar__editor textarea{width:100%;min-width:0;color:var(--calendar-ink);background:#fffc;border:1px solid #a4bfc5;border-radius:10px;min-height:44px;padding:10px;font-size:13px}.personal-calendar__editor textarea{resize:vertical;line-height:1.6}.personal-calendar__editor label small{text-align:right;color:var(--calendar-muted);font-size:10px;font-weight:400}.personal-calendar__date-fields{flex-direction:column;gap:14px;display:flex}.personal-calendar__editor .personal-calendar__checkbox{flex-direction:row;align-items:center;gap:10px;min-height:44px;font-weight:400;line-height:1.5}.personal-calendar__checkbox input{accent-color:#236f77;flex-shrink:0;width:20px;height:20px}.personal-calendar .personal-calendar__primary{color:#fff;background:#246f73;border-color:#246f73;font-size:12px;font-weight:700}.personal-calendar .personal-calendar__primary:hover:enabled{background:#185c61}.personal-calendar__notice{background:#f3f4dd;border:1px solid #c8ce96;border-radius:14px;margin-bottom:16px;padding:16px}.personal-calendar__notice p{color:#3f503f;margin-bottom:10px}.personal-calendar__notice button{margin-right:8px;font-size:12px}.personal-calendar__notice--error{background:#fff0e8;border-color:#e4b7a3}.personal-calendar .personal-calendar__form-error{color:#a13c2a;font-size:12px}.personal-calendar__delete{padding-top:12px}.personal-calendar__delete button{margin-top:8px;font-size:11px}@media (width<=1240px){.personal-calendar__layout{grid-template-columns:190px minmax(0,1fr)}.personal-calendar__details{grid-column:2}.personal-calendar__templates{grid-row:1/span 2}.personal-calendar__day{min-height:106px}.personal-calendar__date-fields{flex-direction:row}.personal-calendar__date-fields label{flex:1;min-width:0}}@media (width<=760px){.personal-calendar__header{display:block}.personal-calendar__save{margin-top:12px}.personal-calendar__layout{flex-direction:column;display:flex}.personal-calendar__layout>*{width:100%}.personal-calendar__center{order:0}.personal-calendar__month{padding:18px 10px 12px}.personal-calendar__details{order:1}.personal-calendar__templates{order:2}.personal-calendar__template-list{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.personal-calendar__grid{gap:3px}.personal-calendar .personal-calendar__day{min-height:82px;padding:6px 3px}.personal-calendar__day-number{width:23px;height:23px;font-size:12px}.personal-calendar__event{padding:3px;font-size:9px}.personal-calendar__month-heading{align-items:flex-start}.personal-calendar__month-heading h2{font-size:18px}.personal-calendar__month-tools button{padding:7px}.personal-calendar__date-fields{flex-direction:column}}@media (prefers-reduced-motion:reduce){.personal-calendar :is(.personal-calendar__header,.personal-calendar__notice,.personal-calendar__layout) button{transition:none}}.personal-calendar__reminders{min-width:0}