.calendar-page{background:#f6f7f2}.calendar-header{display:flex;justify-content:space-between;align-items:center;gap:22px;padding:28px 4%;background:#fff;border-bottom:1px solid var(--line)}.calendar-header h1{font-size:32px;letter-spacing:-1px;margin:10px 0 4px}.calendar-header p{margin:0;color:var(--muted)}.back-link,.setup-link{color:var(--green);text-decoration:none;font-size:12px}.calendar-header-actions,.connection-actions,.period-navigation,.calendar-options{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.calendar-header-actions a{display:inline-flex;align-items:center;text-decoration:none}.calendar-main{padding:25px 4% 50px;max-width:1900px;margin:auto}.calendar-connection{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.calendar-connection strong{font-size:15px}.calendar-connection p{font-size:12px;line-height:1.6;color:var(--muted);margin:6px 0 0}.connection-actions label,.calendar-options label{font-size:11px}.connection-actions select{min-width:180px;max-width:280px}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:16px;flex-wrap:wrap}.period-navigation h2{font-size:22px;min-width:190px;text-align:center}.period-navigation button{padding:10px 14px}.calendar-options select{min-width:110px}.calendar-options .reminder-option{display:flex;align-items:center;gap:7px;margin:0;cursor:pointer}.reminder-option input{width:auto;accent-color:var(--green)}.calendar-legend{display:flex;gap:18px;flex-wrap:wrap;font-size:11px;color:#66766e;margin-bottom:15px}.calendar-legend span{display:flex;align-items:center;gap:6px}.calendar-legend i{width:9px;height:9px;border-radius:50%}.legend-job{background:#195747}.legend-google{background:#4269ba}.legend-reminder{background:#a56a14}.calendar-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;align-items:start;gap:22px}.calendar-board{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.weekday-headings,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.weekday-headings{background:#edf1e6;border-bottom:1px solid var(--line)}.weekday-headings span{text-align:center;padding:13px;font-size:11px;font-weight:700}.calendar-day{min-width:0;min-height:128px;padding:8px 6px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}.calendar-day:nth-child(7n){border-right:0}.calendar-day.outside{background:#f7f8f4}.calendar-day.selected{background:#f0f5e6;box-shadow:inset 0 0 0 2px #7b9b6a}.calendar-day .day-number{display:flex;align-items:center;justify-content:center;width:29px;height:29px;padding:0;border:0;border-radius:50%;font-size:12px;color:var(--ink);background:transparent;margin-bottom:7px}.calendar-day.is-today .day-number{background:var(--green);color:#fff}.calendar-day.outside .day-number{color:#949d94}.calendar-event{display:block;max-width:100%;width:100%;padding:5px 6px;margin:3px 0;text-align:left;border:0;border-left:3px solid #195747;background:#e8f0e7;color:#214e3f;border-radius:4px;font-size:10px;line-height:1.35;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.calendar-event.google{background:#eaf0fd;color:#294f94;border-color:#4269ba}.calendar-event.reminder{background:#fff2d9;color:#83550e;border-color:#a56a14}.calendar-more{font-size:10px;color:#61705f;padding:4px;background:transparent;border:0}.day-agenda{background:white;padding:22px;border:1px solid var(--line);border-radius:12px}.day-agenda .eyebrow{font-size:9px}.day-agenda h2{font-size:20px;margin:9px 0 18px}.agenda-event{display:block;width:100%;text-align:left;border:1px solid var(--line);border-left:4px solid #195747;border-radius:8px;background:#fff;padding:13px;margin-bottom:12px;line-height:1.5;color:var(--ink)}.agenda-event.google{border-left-color:#4269ba}.agenda-event.reminder{border-left-color:#a56a14}.agenda-event strong,.agenda-event span{display:block}.agenda-event small{font-size:10px;color:var(--muted)}.agenda-event strong{font-size:12px;margin:5px 0}.agenda-event span{font-size:11px;overflow-wrap:anywhere}.agenda-help,.empty-day{font-size:12px;color:var(--muted);line-height:1.7}.agenda-help{margin-top:20px}.calendar-transfer{margin-top:26px;padding:24px;background:#fff;border:1px solid var(--line);border-radius:12px}.calendar-transfer h2{font-size:18px}.calendar-transfer p{font-size:12px;line-height:1.7;color:#718070;max-width:880px}.calendar-transfer form{display:flex;gap:14px;align-items:end;margin:18px 0}.calendar-transfer form label{flex:1;max-width:650px;margin:0}.calendar-transfer>p:last-child{font-size:11px}.calendar-message{padding:14px 20px;background:#e7f0df;border-radius:8px;color:#285441}.event-dialog-heading{display:flex;align-items:start;gap:14px;justify-content:space-between}.event-dialog-heading h2{font-size:21px;overflow-wrap:anywhere}.event-dialog-heading button{padding:6px 12px;font-size:21px}.confirm-dialog form{margin-top:20px}.confirm-dialog form label{font-size:12px}.confirm-dialog form button{width:100%;margin-top:10px}.confirm-dialog a{font-size:12px;color:var(--green)}.calendar-setup{max-width:850px;margin:40px auto;padding:30px;background:#fff;border:1px solid var(--line);border-radius:12px;line-height:1.8}.calendar-setup h1{font-size:29px}.calendar-setup h2{margin-top:30px}.calendar-setup li{margin-bottom:12px}.calendar-setup code{font-size:12px;overflow-wrap:anywhere}.calendar-setup pre{padding:16px;background:#edf1e6;white-space:pre-wrap;overflow-wrap:anywhere}.calendar-setup a{color:var(--green)}
@media(max-width:1100px){.calendar-layout{grid-template-columns:minmax(0,1fr) 245px}.calendar-day{min-height:105px}.calendar-main{padding-left:20px;padding-right:20px}.connection-actions select{max-width:220px}.calendar-connection{align-items:start;flex-direction:column}}
@media(max-width:780px){.calendar-layout{grid-template-columns:1fr}.calendar-header{padding:22px;align-items:start;flex-direction:column}.calendar-main{padding:20px 12px 35px}.calendar-toolbar{align-items:start;flex-direction:column}.calendar-options{justify-content:space-between;width:100%}.calendar-day{min-height:92px;padding:5px 3px}.calendar-day .day-number{width:25px;height:25px;font-size:11px}.calendar-event{font-size:9px;padding:4px 3px;border-left-width:2px}.period-navigation{gap:8px}.period-navigation h2{font-size:18px;min-width:150px}.calendar-transfer form{align-items:stretch;flex-direction:column}.day-agenda{padding:20px}.calendar-header h1{font-size:27px}.calendar-legend{gap:12px;font-size:10px}.calendar-connection{padding:18px}.connection-actions{width:100%}.calendar-setup{margin:16px;padding:22px}.weekday-headings span{padding:10px 4px}}
