@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
:root{font-family:Manrope,system-ui,sans-serif;color:#273a33;background:#f6f7f4;font-synthesis:none;--green:#285c4b;--line:#e3e8e1;--muted:#7d8980}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:1px solid var(--line);background:white;border-radius:9px;padding:10px 16px;color:inherit;font-weight:600}button:hover{background:#edf2ec}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #a2c9b8;outline-offset:3px}[hidden]{display:none!important}.app{display:grid;grid-template-columns:254px 1fr;min-height:100vh}aside{padding:36px 25px;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit;font-size:21px;font-weight:800;letter-spacing:-.6px}.brand small{display:block;font-size:8px;letter-spacing:1.3px;margin-top:4px;color:var(--muted)}.logo{background:var(--green);color:white;border-radius:14px;padding:3px 12px 8px;font-size:30px}.primary{background:var(--green);color:#fff;border-color:var(--green)}.primary:hover{background:#1e493b}.create{margin:36px 0 30px;padding:14px}.sidebar-label,.eyebrow{font-size:10px;letter-spacing:1.5px;font-weight:800;color:var(--muted)}.nav{border:0;background:none;text-align:left;width:100%;margin-top:8px;padding:12px 10px;font-size:12px}.nav span{float:right}.nav.active{background:#edf4ef;color:var(--green)}.calendars{margin-top:36px}.sidebar-label button{float:right;padding:0 5px;border:0;font-size:20px;margin-top:-7px}.muted{color:var(--muted);font-size:12px;line-height:1.8}.calendar-option{display:flex;align-items:center;gap:10px;padding:10px 0;font-size:12px;word-break:break-word}.calendar-option input{accent-color:var(--green)}.side-bottom{margin-top:auto;padding-top:40px}.tip{font-size:17px;line-height:1.6;font-weight:700;border-top:1px solid var(--line);padding-top:24px}.tip p{font-size:11px;font-weight:400;color:var(--muted);line-height:1.9}main{padding:36px 42px 26px;min-width:0;max-width:1700px;width:100%;margin:auto}header .eyebrow{color:var(--green)}.headline{display:flex;gap:12px;align-items:center;margin-top:8px}.headline>div{flex:1}h1{font-size:30px;letter-spacing:-1.2px;margin:0;font-weight:800}header p{font-size:12px;color:var(--muted);margin:9px 0 0}.google{display:flex;align-items:center;gap:10px;font-size:12px;white-space:nowrap;padding:12px 17px}.g{color:#4285f4;font-size:19px;font-weight:800}.notice{display:flex;gap:15px;align-items:center;margin:29px 0 30px;border:1px solid #d8e5d7;background:#edf3e9;padding:18px 21px;border-radius:12px}.notice-icon{font-size:22px;color:var(--green);padding:10px;background:#dfeadd;border-radius:10px}.notice strong{font-size:12px}.notice p{font-size:11px;color:#71806e;margin:5px 0 0;line-height:1.7}.notice button{margin-left:auto;background:none;border:0;font-size:11px;white-space:nowrap}.toolbar{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:20px}.period{display:flex;gap:7px;align-items:center}.period button{padding:7px 11px;font-size:12px}.period h2{font-size:19px;letter-spacing:-.5px;margin:0 14px 0 8px;min-width:150px}.view-switch{display:flex;background:#e9ede6;border-radius:9px;padding:3px}.view-switch button{background:none;border:0;font-size:11px;padding:7px 12px}.view-switch .selected{background:white;box-shadow:0 1px 4px #0001}.calendar-shell{background:white;border:1px solid var(--line);border-radius:13px;overflow:hidden}.days-header,.month-grid,.week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.days-header{border-bottom:1px solid var(--line);font-size:10px;font-weight:700;color:var(--muted);text-align:right;background:#fafbf9}.days-header div{padding:14px}.cell{min-height:112px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:9px 7px;position:relative;cursor:pointer}.cell:nth-child(7n){border-right:0}.cell:hover{background:#fafcf8}.cell.weekend{background:#fbfcfa}.cell.outside{color:#b7bfb6;background:#fafbf9}.date-number{display:flex;align-items:center;justify-content:center;width:25px;height:25px;margin:0 0 7px auto;font-size:11px;font-weight:700}.is-today .date-number{background:var(--green);color:#fff;border-radius:50%}.event{display:block;width:100%;padding:5px 6px;margin:4px 0;border:0;border-left:3px solid var(--event-color,#649883);border-radius:4px;background:#edf4ef;text-align:left;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:10px;font-weight:600}.event time{font-size:9px;opacity:.75;margin-right:4px}.more{font-size:10px;display:block;color:var(--muted);padding:3px;border:0;background:none}.week-grid .cell{min-height:365px}.week-grid .event{white-space:normal;padding:9px 6px;line-height:1.8}footer{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:9px;margin:13px 2px 29px}.dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#9ba99b;margin-right:5px}.upcoming{display:grid;grid-template-columns:220px 1fr;gap:20px;padding:24px;background:#fff;border:1px solid var(--line);border-radius:13px}.upcoming h2{font-size:18px;letter-spacing:-.4px}.empty{font-size:12px;color:var(--muted);padding:18px 0;line-height:1.8}.upcoming-item,.agenda-item{display:flex;align-items:center;gap:13px;padding:12px 8px;border-bottom:1px solid var(--line);cursor:pointer}.upcoming-item:last-child{border-bottom:0}.date-badge{background:#f1f4ed;border-radius:9px;min-width:43px;padding:7px;text-align:center;font-size:17px;font-weight:800}.date-badge small{display:block;font-size:8px;color:var(--muted);text-transform:uppercase}.item-title{font-size:12px;font-weight:700}.item-meta{font-size:10px;color:var(--muted);margin-top:4px}.agenda{padding:15px 25px}.agenda-item{width:100%;background:white;border:0;border-bottom:1px solid var(--line);border-radius:0;text-align:left}.agenda .empty{padding:45px 0}dialog{border:1px solid var(--line);border-radius:18px;width:min(520px,calc(100% - 28px));padding:26px;color:inherit;box-shadow:0 20px 100px #1233}dialog::backdrop{background:#1c302966;backdrop-filter:blur(3px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.dialog-heading h2{font-size:21px;margin:0}.dialog-heading button{border:0;padding:3px 10px;font-size:25px}label{display:block;font-size:11px;font-weight:700;margin:13px 0}input,select,textarea{display:block;border:1px solid #dce3db;border-radius:8px;padding:11px;width:100%;margin-top:7px;background:#fafbf9;color:inherit}input[type=checkbox]{width:auto;margin:0}.check{display:flex;gap:8px;align-items:center}.fields{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.actions button{font-size:11px}.danger{color:#a64b4b;margin-right:auto}.error{color:#a44141;font-size:12px}dialog p{font-size:12px;line-height:1.8}code{font-size:11px;overflow-wrap:anywhere}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#293e34;color:white;padding:15px 23px;border-radius:12px;z-index:50;font-size:12px;max-width:90vw;box-shadow:0 8px 30px #0002}
@media(min-width:1500px){.cell{min-height:132px}}@media(max-width:1100px){aside{padding:28px 18px}.app{grid-template-columns:210px 1fr}main{padding:30px 24px}.headline{flex-wrap:wrap}h1{font-size:25px}.notice button{display:none}.period h2{font-size:17px;min-width:0}.toolbar{flex-wrap:wrap}.cell{min-height:100px}.event{font-size:9px}.upcoming{grid-template-columns:180px 1fr}}@media(max-width:760px){.app{display:block}aside{padding:17px 20px;border-right:0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:12px}.brand{font-size:17px}.brand small{font-size:7px}.logo{font-size:24px}.create{margin:0;padding:10px;font-size:11px}.calendars{margin:0;grid-column:1/-1}.calendars>.sidebar-label{display:none}#calendarList{display:flex;flex-wrap:wrap;gap:4px 14px}#calendarList .muted{margin:0;font-size:10px}.calendar-option{padding:3px 0}.side-bottom{padding:0;margin:0;grid-column:1/-1}.side-bottom .tip,.side-bottom>small,aside>.nav,aside>.sidebar-label{display:none}.side-bottom .nav{margin:0;padding:0;font-size:10px;color:var(--muted)}main{padding:23px 15px}.headline{gap:15px}.headline>div{flex-basis:100%}h1{font-size:24px}.google{padding:9px 12px}.notice{padding:13px;margin:20px 0;gap:10px}.notice-icon{display:none}.period{width:100%}.period h2{flex:1;font-size:17px;margin-right:3px}.toolbar{gap:12px}.days-header div{padding:12px 5px}.cell{padding:6px 2px;min-height:85px}.date-number{font-size:10px;width:22px;height:22px}.event{padding:3px 2px;font-size:8px;border-left-width:2px}.event time{display:none}.more{font-size:8px;padding:2px}footer{font-size:8px}.upcoming{display:block;padding:18px}.upcoming h2{margin:6px 0}.week-grid .cell{min-height:240px}.week-grid .event{font-size:8px;padding:6px 2px}.week-grid .event time{display:block}.actions{flex-wrap:wrap}}

.calendar-row{display:flex;align-items:center;gap:6px;width:100%}.calendar-row .calendar-option{flex:1;min-width:0;margin:0}.calendar-row .calendar-option>span:last-child{overflow-wrap:anywhere}.hide-calendar{padding:5px 6px;font-size:9px;color:#7d8980;border:0;background:none;flex-shrink:0}.hide-calendar:hover{color:#285c4b;background:#edf4ef}.hidden-calendars-link{font-size:10px;color:#285c4b;background:none;border:0;text-align:left;padding:10px 0;width:100%}.hidden-calendar-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 0;border-bottom:1px solid #e3e8e1;font-size:12px}.hidden-calendar-row>span{overflow-wrap:anywhere;min-width:0}.hidden-calendar-row button{font-size:11px;flex-shrink:0}@media(max-width:760px){.calendar-row{width:auto;max-width:100%}.calendar-row .calendar-option{padding:5px 0}.hidden-calendars-link{padding:6px 0}}

.calendar-style-button{padding:5px 4px;border:0;background:none;color:#7d8980;font-size:13px}.event small{display:block;font-size:9px;overflow:hidden;text-overflow:ellipsis}.compact-event{padding-top:3px!important;padding-bottom:3px!important}.week-scroll{max-height:70vh;overflow:auto}.hour-line{display:grid;grid-template-columns:56px repeat(7,minmax(120px,1fr));min-width:900px;align-items:stretch}.week-heading{position:sticky;top:0;z-index:2;background:#f8faf6;box-shadow:0 1px 0 #e3e8e1}.week-day{padding:15px 8px;text-align:center;font-size:11px;font-weight:700;border-left:1px solid #e3e8e1}.hour-label{background:#f8faf6;color:#7d8980;font-size:10px;padding:12px 5px;text-align:center;border-bottom:1px solid #e3e8e1;position:sticky;left:0;z-index:1}.hour-cell{min-height:58px;padding:5px 6px;border-left:1px solid #e3e8e1;border-bottom:1px solid #e3e8e1;cursor:pointer;min-width:0}.hour-cell:hover{background:#f8faf6}.hour-cell .event{display:block;white-space:normal;width:100%;min-height:25px;padding:6px 7px;font-size:10px;line-height:1.4;margin:3px 0}.hour-cell .event time{display:block;margin-bottom:3px;font-size:9px}.hour-cell .event span{display:block;overflow-wrap:anywhere}.all-day-line .hour-cell{min-height:42px;background:#fbfcfa}.today-heading{background:#edf4ef;color:#285c4b}.today-hour{background:#f8fcf9}input[type=color]{height:44px;padding:5px}.calendar-row{gap:3px}
