@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;500;600;700&display=swap');
:root{--bg:#f6f7f9;--ink:#202a37;--muted:#8c929e;--line:#e9ecf0;--green:#446e61}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:13px 'Noto Sans KR',sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer;border:0;background:none;color:inherit}button:hover{filter:brightness(.94)}button:focus-visible,a:focus-visible{outline:2px solid #446e61;outline-offset:2px}.sidebar{position:fixed;width:236px;inset:0 auto 0 0;background:#fff;border-right:1px solid var(--line);padding:34px 25px;display:flex;flex-direction:column}.brand{font-family:Georgia,serif;font-size:40px;color:#35594e;text-decoration:none;letter-spacing:-2px}.brand span{display:block;font:8px sans-serif;letter-spacing:1.5px;margin-top:4px;color:#92999b}.workspace{display:flex;align-items:center;gap:11px;margin:35px 0 28px;padding:15px 5px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-weight:600}.workspace small{display:block;font-size:10px;color:var(--muted);font-weight:400;margin-top:5px}.avatar{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#dce8e1;color:var(--green);font-family:Georgia,serif;font-size:20px}.small{width:31px;height:31px;font-size:16px}.nav{width:100%;text-align:left;padding:12px;border-radius:7px;margin-bottom:6px;color:#8a929d}.nav.active{background:#ecf2ee;color:#426453;font-weight:600}.sideheading{font-size:10px;color:#929aa4;letter-spacing:.8px;margin:30px 0 12px;display:flex;justify-content:space-between}.sideheading button{font-size:10px}.layer,.projectFilter{display:flex;align-items:center;gap:11px;padding:10px 5px;width:100%;text-align:left;font-size:12px}.check{display:grid;place-items:center;background:#597b6a;width:15px;height:15px;color:white;border-radius:4px;font-size:10px;font-style:normal}.gray{background:#a2a6ad}.dot{width:9px;height:9px;border-radius:3px;display:inline-block;flex-shrink:0}.off{opacity:.35}.projectFilter small{margin-left:auto;color:#a5abb3}.sidebottom{margin-top:auto;padding-top:30px;color:#8d969d;font-size:11px}.sidebottom p{font-size:10px;line-height:1.9;color:#a5acb2}.people{display:inline-grid;width:25px;height:25px;place-items:center;background:#e0e9e3;border:2px solid white;border-radius:50%;color:#486558}.people.dark{background:#e9e3d9;margin-left:-7px;color:#8b7860}.sidebottom small{margin-left:6px;font-size:9px}main{margin-left:236px;padding:0 38px;max-width:1900px}header{height:81px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.crumb{font-size:11px}.crumb span{color:#a2a8b0;padding-left:12px}.headerRight{display:flex;align-items:center;gap:20px}.demo{font-size:10px;color:#929b9b}.icon{font-size:22px;color:#7e8993;padding:0 8px}.intro{display:flex;justify-content:space-between;align-items:center;padding:36px 0 32px}.eyebrow{font-size:8px;letter-spacing:2px;color:#8f9f98}.intro h1{font-size:25px;letter-spacing:-1.1px;font-weight:600;margin:10px 0}.intro h1 span{color:#648c76}.intro p{font-size:11px;color:#8b949f;margin:8px 0}.primary{background:#416655;color:#fff;padding:12px 19px;border-radius:7px;font-size:11px;white-space:nowrap}.toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}.monthtitle{display:flex;align-items:center;gap:13px}.monthtitle h2{font-size:21px;font-weight:500;margin:0;min-width:125px;text-align:center}.today{border:1px solid #dfe3e7;border-radius:5px;font-size:10px;padding:6px 12px;background:white;margin-left:4px}.views{display:flex;background:#e9edf0;padding:3px;border-radius:7px}.views button{padding:6px 17px;font-size:11px;color:#8a929d}.views .selected{background:#fff;color:#35473b;border-radius:5px;box-shadow:0 1px 3px #00000009}.legend{display:flex;gap:15px;font-size:9px;color:#9aa1aa;margin-bottom:12px}.legend span{display:flex;align-items:center;gap:5px}.legend b{width:9px;height:9px;display:inline-block;border-radius:2px}.solid{background:#8da698}.dashed{border:1px dashed #8da698}.legend .zone{margin-left:auto}.layout{display:grid;grid-template-columns:minmax(0,1fr) 295px;gap:22px;align-items:start}.calendarPanel{background:white;border:1px solid var(--line);border-radius:10px;overflow:hidden}.weekhead{display:grid;grid-template-columns:repeat(7,1fr);height:39px;border-bottom:1px solid var(--line);align-items:center;text-align:center;font-size:10px;color:#939ba4}.weekhead span:first-child{color:#c29191}.weekhead span:last-child{color:#8c9fbe}.monthgrid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr)))}.monthgrid{grid-template-columns:repeat(7,minmax(0,1fr))}.cell{min-height:112px;border-right:1px solid #f0f1f3;border-bottom:1px solid #f0f1f3;padding:9px 5px;cursor:pointer;overflow:hidden}.cell:nth-child(7n){border-right:0}.cell:hover{background:#fafbf9}.cell.active{background:#f2f6f2;box-shadow:inset 0 0 0 1px #90ab96}.date{font-size:10px;display:inline-grid;place-items:center;width:22px;height:22px;margin-bottom:4px}.date.todaydate{background:#456957;color:white;border-radius:50%}.outside .date{color:#ccd0d4}.eventchip{font-size:9px;margin:3px 0;padding:4px 5px;border-radius:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-left:2px solid var(--event);background:var(--tint);color:var(--text)}.eventchip.tentative{background:white;border:1px dashed var(--event);border-left:2px dashed var(--event);padding:3px 4px}.eventchip em{font-size:8px;font-style:normal;opacity:.7;margin-right:3px}.calendarFoot{display:flex;justify-content:space-between;padding:13px 16px;color:#a1a8ae;font-size:8px}.details{background:#fff;border:1px solid var(--line);border-radius:10px;padding:22px 19px}.detaildate{font-size:18px;font-weight:600;letter-spacing:-.6px}.detaildate small{font-size:11px;font-weight:400;color:#969ea5;margin-left:5px}.detailmeta{font-size:10px;color:#9aa2a8;margin-top:7px;margin-bottom:22px}.eventcard{border:1px solid var(--line);border-radius:7px;padding:14px;margin-bottom:12px;border-top:3px solid var(--event)}.cardtop{font-size:9px;color:var(--text);display:flex;justify-content:space-between;align-items:center}.badge{font-size:8px;background:var(--tint);padding:3px 5px;border-radius:3px}.eventcard h3{font-size:13px;margin:12px 0}.cardinfo{font-size:10px;color:#8b959f;margin:8px 0;line-height:1.8}.essential{background:#f5f7f5;border-radius:5px;padding:10px;margin-top:12px;display:flex;gap:20px}.essential small{display:block;font-size:8px;color:#959d99;margin-bottom:4px}.essential strong{font-size:14px;font-weight:500}.docbutton{display:block;width:100%;text-align:left;padding:10px 0 0;font-size:9px;color:#788c80}.subactions{display:flex;gap:10px;margin-top:12px}.subactions button{font-size:9px;color:#8e98a0;padding:0}.history{font-size:9px;line-height:1.8;color:#8d969d;border-top:1px solid var(--line);margin-top:10px;padding-top:8px}.dayadd{width:100%;border:1px dashed #dce3dc;border-radius:5px;font-size:10px;padding:12px;color:#8b9c8d}.empty{padding:25px 0;text-align:center;color:#a3aaa9;font-size:11px}.timeline{margin-top:12px;font-size:9px;line-height:1.8;color:#7c8791}.timeline div{border-top:1px solid var(--line);padding:7px 0}.timeline b{display:inline-block;width:76px;color:#5d6f63;font-weight:500}footer{display:flex;justify-content:space-between;margin:25px 0;color:#a8afb4;font-size:9px}footer span{font-size:8px;letter-spacing:2px}.yeargrid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;padding:20px}.minimonth{padding:10px;cursor:pointer;border-radius:6px}.minimonth:hover{background:#f1f5f2}.minimonth h3{font-size:12px}.miniGrid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;font-size:8px;text-align:center}.miniGrid span{padding:4px 0}.hasEvent{background:#e3ede5;border-radius:3px}.agenda{padding:20px}.agendaDay{margin-bottom:20px}.agendaDay h3{font-size:12px}.agendaEvent{display:flex;gap:15px;background:var(--tint);border-left:3px solid var(--event);padding:14px;margin:7px 0;border-radius:4px;cursor:pointer;font-size:11px}.agendaEvent small{margin-left:auto;color:#8a9297}.projectcards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.projectcard{padding:25px;background:white;border:1px solid var(--line);border-top:4px solid var(--event);border-radius:8px}.projectcard h3{font-size:18px}.projectcard p{font-size:11px;color:#919a9f;line-height:1.8}dialog{border:1px solid #e3e8e2;border-radius:14px;width:480px;max-width:calc(100% - 24px);padding:25px;box-shadow:0 20px 80px #243c3326;color:var(--ink)}dialog::backdrop{background:#1b2d2855;backdrop-filter:blur(3px)}.dialoghead{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.dialoghead h2{font-size:18px;margin:0}label{display:block;font-size:11px;margin:13px 0;color:#737f84}input,select,textarea{display:block;width:100%;border:1px solid #dfe5e1;border-radius:5px;padding:10px;margin-top:6px;background:#fff;color:#35433c}.formrow{display:grid;grid-template-columns:1fr 1fr;gap:15px}.formactions{display:flex;justify-content:space-between;margin-top:20px}.danger{color:#b77e7e;font-size:11px}.muted{color:#959da1;font-size:11px}#settings p{font-size:12px;line-height:1.9}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#345443;color:white;border-radius:8px;padding:12px 22px;font-size:12px;display:none;z-index:10}@media(min-width:1550px){.cell{min-height:138px}}@media(max-width:1200px){.sidebar{width:200px;padding:28px 20px}main{margin-left:200px;padding:0 25px}.layout{grid-template-columns:minmax(0,1fr) 260px;gap:15px}.cell{min-height:100px}.eventchip{font-size:8px;padding:4px 2px}.details{padding:18px 14px}}@media(max-width:1000px){.layout{grid-template-columns:1fr}.details{display:block}.eventcard{display:inline-block;width:calc(50% - 8px);vertical-align:top;margin-right:8px}.details .dayadd{display:block}.calendarFoot span:last-child{display:none}.projectcards{grid-template-columns:1fr 1fr}}@media(max-width:700px){.sidebar{display:none}main{margin:0;padding:0 15px}header{height:60px}.crumb{font-size:10px}.headerRight{gap:10px}.demo{font-size:8px}.intro{padding:25px 0}.eyebrow{font-size:7px}.intro h1{font-size:20px}.intro p{font-size:10px}.primary{padding:10px 12px;font-size:10px}.intro .primary{font-size:0}.intro .primary:after{content:'＋';font-size:23px;line-height:16px}.toolbar{gap:8px}.monthtitle{gap:3px}.monthtitle h2{font-size:18px;min-width:110px}.monthtitle .icon{padding:0 4px}.today{padding:5px 8px;margin-left:5px}.views button{padding:6px 10px}.cell{min-height:90px;padding:6px 2px}.date{font-size:9px;width:20px;height:20px}.eventchip{font-size:8px;padding:4px 2px;letter-spacing:-.5px}.eventchip em{display:none}.calendarFoot{font-size:8px}.details{padding:20px 15px}.eventcard{display:block;width:100%;margin-right:0}.layout{gap:16px}.yeargrid{grid-template-columns:repeat(2,1fr);padding:8px;gap:4px}.projectcards{grid-template-columns:1fr}footer{font-size:8px}.zone{font-size:8px}}
[hidden]{display:none!important}.mobileFilters{display:none}@media(max-width:700px){.mobileFilters{display:flex;gap:7px;overflow-x:auto;padding:0 0 13px}.mobileFilters button{white-space:nowrap;border:1px solid #e0e5e1;border-radius:20px;padding:6px 10px;font-size:9px;background:white}.mobileFilters button.off{opacity:.4}}

.projectColor{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:18px 0;color:#737f84}.projectColor input[type=color]{width:44px;height:32px;padding:3px;margin:0;cursor:pointer;border:1px solid #dfe5e1;border-radius:5px;background:#fff}

.projectName{cursor:text}.projectName input{font-size:inherit;font-weight:inherit;margin:0;max-width:100%}.projectDetail{background:#fff;border:1px solid var(--line);border-radius:10px;padding:26px}.projectDetailTop{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:25px}.projectSummary{border-left:4px solid var(--event);padding:10px 20px;background:var(--tint);border-radius:5px;margin-bottom:28px}.projectSummary h2{font-size:24px}.projectSummary p{font-size:12px;line-height:1.8;color:#737f84}.projectDetail h3{font-size:14px;margin-top:26px}.projectDetail h3 small{color:#8b9690;margin-left:8px}.projectEvent{display:flex;gap:20px;align-items:center;width:100%;padding:18px 0;border-bottom:1px solid var(--line);text-align:left;font-size:11px}.projectEvent span{color:#89958e}.projectEvent span:last-child{margin-left:auto}.projectEvent strong{font-weight:500}.projectMode .intro .primary{font-size:11px}.projectMode .intro .primary:after{content:none}@media(max-width:700px){.projectDetail{padding:17px}.projectEvent{flex-wrap:wrap;gap:8px}.projectEvent strong{width:100%;order:2}.projectMode .mobileFilters button:not(#mobileProjects){display:none}}

button.eventchip{display:block;width:100%;text-align:left;font-family:inherit;cursor:pointer}button.eventchip:hover{filter:brightness(.94)}button.eventchip:focus-visible{outline:2px solid #446e61;outline-offset:1px}

.activityTag{display:inline-block;font-size:9px;font-weight:400;background:#eef2ef;color:#78867c;padding:3px 6px;border-radius:4px;margin-left:6px}

#eventDialog .dialoghead{gap:12px}#eventDialog .dialoghead>.icon{margin-left:auto}.eventTypeSwitch{display:flex;padding:3px;background:#edf0ee;border-radius:7px;gap:2px}.eventTypeSwitch button{padding:6px 13px;font-size:11px;color:#8a9490;border-radius:5px}.eventTypeSwitch button.selected{background:#416655;color:white;box-shadow:0 1px 3px #00000012}.eventTypeSwitch button[data-event-type=personal].selected{background:#7d858e}@media(max-width:400px){#eventDialog .dialoghead{gap:8px}.eventTypeSwitch button{padding:6px 10px}}

.projectReorder{display:flex;align-items:center;justify-content:flex-end;gap:4px;margin:-10px -8px 10px;color:#9aa59e}.dragGrip{cursor:grab;margin-right:auto;font-size:21px;line-height:1;user-select:none}.projectReorder button{font-size:15px;padding:3px 8px;border-radius:4px}.projectReorder button:hover{background:#eef2ef}.projectcard.dragging{opacity:.4}.projectcard.dropTarget{outline:2px solid #648c76;outline-offset:4px;background:#f3f7f4}

.referenceToggle{background:#f2f5f6;border-radius:6px;padding:11px;color:#566570}.referenceToggle input{display:inline-block;width:auto;margin:0 7px 0 0;vertical-align:middle;accent-color:#657a8a}.referenceToggle small{display:block;font-size:9px;color:#8b969f;margin:7px 0 0 23px}.calendarWeek{position:relative}.referenceBars{position:absolute;top:35px;left:0;right:0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:23px;pointer-events:none}.referenceBar{pointer-events:auto;align-self:start;text-align:left;margin:0 3px;padding:3px 7px;background:#edf1f5;border:1px solid #dce3e9;color:#71818e;border-radius:3px;font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;height:20px}.calendarWeek .cell{min-height:112px}.monthgrid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}@media(max-width:700px){.calendarWeek .cell{min-height:90px}.referenceBars{top:30px}.referenceBar{font-size:8px;padding:3px 4px}}

.referenceBar{background:var(--tint,#edf1f5);color:var(--text,#71818e);border-color:var(--event,#dce3e9)}.referenceBar.tentativeBar{border-style:dashed}

.timeDialHeader{display:flex;justify-content:space-between;align-items:center;margin-top:8px;gap:4px}.timeEnabled{font-size:9px;padding:5px 7px;background:#eef2ef;border-radius:4px;color:#54705b}.ampm{display:flex;background:#eef1ef;border-radius:5px;padding:2px}.ampm button{font-size:9px;padding:4px 6px;border-radius:3px}.ampm button.selected{background:white;color:#416655}.timeWheels{position:relative;display:flex;align-items:center;border:1px solid #dfe5e1;border-radius:7px;background:#fafbf9;margin-top:7px;padding:0 10px}.timeWheel{height:108px;overflow-y:auto;overscroll-behavior:contain;scroll-snap-type:y mandatory;scrollbar-width:none;flex:1;padding:36px 0;touch-action:pan-y;z-index:1}.timeWheel::-webkit-scrollbar{display:none}.timeWheel button{display:block;width:100%;height:36px;min-height:36px;padding:0;scroll-snap-align:center;font-size:15px;color:#b0b8b2;font-weight:400}.timeWheel button.chosen{color:#355b47;font-weight:600;font-size:19px}.wheelColon{z-index:1;color:#8c9b91}.wheelFocus{position:absolute;left:5px;right:5px;top:36px;height:36px;border-radius:5px;background:#eaf0eb;pointer-events:none}.unsetTime .timeWheels{opacity:.5}.timeWheel:focus-visible{outline:2px solid #648c76;outline-offset:-2px;border-radius:5px}

.compactDial{position:relative;margin-top:6px}.compactTime{display:block;width:100%;text-align:left;background:#fff;border:1px solid #dfe5e1;border-radius:5px;padding:10px;color:#35433c;font-size:12px}.compactDial .timeDialHeader,.compactDial .timeWheels{display:none}.compactDial.dialOpen .timeDialHeader{display:flex;position:absolute;top:40px;left:0;right:0;background:#fff;border:1px solid #dfe5e1;border-bottom:0;margin:0;padding:10px 8px;border-radius:7px 7px 0 0;z-index:31;box-shadow:0 8px 18px #263e2915}.compactDial.dialOpen .timeWheels{display:flex;position:absolute;top:81px;left:0;right:0;margin:0;border-radius:0 0 7px 7px;z-index:31;box-shadow:0 10px 18px #263e2920}.compactDial.dialOpen .compactTime{border-color:#648c76;box-shadow:0 0 0 1px #648c76}

.backupSection{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0;margin:18px 0}.backupSection h3{font-size:13px}.backupSection p{font-size:11px!important}

.attachments{border-top:1px solid var(--line);padding-top:14px;margin-top:20px}.attachments h3{font-size:13px}.attachmentRow{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--line)}.attachmentRow button{color:#466c58;font-size:11px;text-align:left;overflow-wrap:anywhere}.attachmentRow small{margin-left:auto;font-size:9px;color:#98a29b;white-space:nowrap}.attachButton{display:inline-block;cursor:pointer;border:1px solid #dfe5e1;border-radius:5px;padding:9px 12px;font-size:11px;background:#f5f8f5}.attachButton input[hidden]{display:none!important}

.attachLinkButton{border:1px solid #dfe5e1;border-radius:5px;padding:9px 12px;font-size:11px;background:#f5f8f5;margin-left:6px}.linkEntry{background:#f5f7f6;padding:12px;border-radius:6px;margin:10px 0}.attachmentRow a{color:#466c58;font-size:11px;text-decoration:none;overflow-wrap:anywhere}.attachmentRow a:hover{text-decoration:underline}.attachmentRow .removeLink{margin-left:auto;white-space:nowrap;color:#9a8d8d;font-size:9px}

.cell{-webkit-touch-callout:none;user-select:none;touch-action:pan-y}

.weekBody{position:relative}.referenceStrip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:22px;background:#fafbf9;border-bottom:1px solid #edf0ed;padding:3px 0}.referenceLabel{font-size:9px;font-weight:400;text-align:left;color:var(--text,#7b8791);border:0;border-left:2px solid var(--event,#a2adb6);padding:2px 7px;margin:1px 4px;background:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-radius:0}.referenceLabel:hover{background:#edf1ee}@media(max-width:700px){.referenceLabel{font-size:8px;padding:2px 4px;margin:1px 2px}}

.datedBars{grid-auto-rows:25px}.datedBars .referenceBar{height:22px}.datedBars .contextBar{background:#fafbf9;border:1px solid #dce3df;border-left:2px solid var(--event,#a2adb6);color:var(--text,#77857c);font-weight:400}.datedBars .contextBar:hover{background:var(--tint,#eef3ef)}

.datedBars .contextBar{background:var(--tint,#f1f4f2);border:1px solid #dce3df;border-left:2px solid var(--event,#a2adb6);font-size:9px}.datedBars .contextSingle{background:transparent;border:0;color:var(--text,#77857c);padding-left:6px}.datedBars .contextSingle::before{content:'';display:inline-block;width:6px;height:6px;border:1.5px solid var(--event,#9ba7a0);border-radius:50%;margin-right:5px;vertical-align:1px}.datedBars .contextSingle:hover{background:#f3f6f3}@media(max-width:700px){.datedBars .contextBar,.datedBars .contextSingle{font-size:8px}.datedBars .contextSingle{padding-left:3px}.datedBars .contextSingle::before{width:5px;height:5px;margin-right:3px}}

.datedBars .contextBar{height:16px;margin-top:2px;padding:0 6px;line-height:14px;background:#edf5fb;border:1px solid #c6dce9;border-left:2px solid #739bb5;color:#507b99;border-radius:2px;font-size:9px}.datedBars .contextSingle{height:16px;margin-top:2px;line-height:16px;padding-top:0;padding-bottom:0;color:#507b99}.datedBars .contextSingle::before{border-color:#739bb5}.datedBars .contextBar:hover,.datedBars .contextSingle:hover{background:#e0eef8}.layer[data-layer=reference] .check{background:#739bb5}@media(max-width:700px){.datedBars .contextBar,.datedBars .contextSingle{font-size:8px}}

.cell.dateDrop{background:#e3efe6!important;box-shadow:inset 0 0 0 2px #648c76}.movingEvent{opacity:.4}button[draggable=true]{cursor:grab}button[draggable=true]:active{cursor:grabbing}

/* Compact month density: references and commitments share an 18px rhythm. */
.calendarWeek .cell{padding-top:5px;padding-bottom:5px}.calendarWeek .date{height:20px;margin-bottom:1px}.datedBars{top:27px;grid-auto-rows:18px}.datedBars .referenceBar{height:16px;line-height:14px;padding-top:0;padding-bottom:0;margin-top:0;margin-bottom:0}.datedBars .contextBar{height:14px;line-height:12px;margin-top:1px;font-size:9px}.calendarWeek .eventchip{height:18px;line-height:16px;padding:0 4px;margin:1px 0;font-size:9px}.calendarWeek .eventchip.tentative{line-height:14px;padding:0 3px}.calendarWeek .cell{min-height:108px}@media(max-width:700px){.datedBars{top:27px}.calendarWeek .cell{min-height:96px;padding-left:2px;padding-right:2px}.calendarWeek .eventchip{font-size:8px;padding-left:2px;padding-right:2px}.datedBars .contextBar{font-size:8px}}

.mobileViewTabs{display:none}@media(max-width:700px){.mobileViewTabs{display:flex;position:sticky;top:0;z-index:8;background:#edf0ee;border:1px solid #e2e8e3;border-radius:8px;padding:3px;margin:16px 0 0;gap:4px}.mobileViewTabs button{flex:1;padding:9px 12px;font-size:12px;font-weight:500;color:#8b9690;border-radius:6px}.mobileViewTabs button.selected{background:#fff;color:#365b47;box-shadow:0 1px 4px #233a2810}.mobileFilters #mobileProjects{display:none}.projectMode .mobileFilters{display:none}.intro{padding-top:20px}}

.projectFilter.sidebarDragging{opacity:.4}.projectFilter.sidebarDrop{box-shadow:inset 0 2px 0 #648c76;background:#edf3ee;border-radius:4px}

@media(max-width:700px){.mobileFilters{display:flex;align-items:center;gap:8px;overflow:visible;padding-bottom:12px;min-width:0}.mobileLayers{display:flex;gap:3px;flex-shrink:0}.mobileFilters .mobileLayers button{padding:5px 7px;font-size:9px;background:#e9efea;border-color:transparent}.filterDivider{width:1px;height:19px;background:#ccd5ce;flex-shrink:0}.mobileProjectScroll{display:flex;gap:6px;overflow-x:auto;min-width:0;flex:1;padding:4px 2px;scrollbar-width:none;overscroll-behavior-x:contain}.mobileProjectScroll::-webkit-scrollbar{display:none}.mobileProjectScroll button{padding:6px 9px;flex-shrink:0;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:pan-x}.mobileProjectScroll .chipDragging{background:#dce9e0;box-shadow:0 2px 7px #43684e33;opacity:.7}.mobileProjectScroll .chipDrop{outline:2px solid #648c76;outline-offset:-1px}.projectMode .mobileFilters{display:none}}

.sidebar{overflow-y:auto;overscroll-behavior-y:contain;scrollbar-width:thin}.sidebar>*{flex-shrink:0}.sidebar .sidebottom{padding-bottom:15px}


#viewingZone{width:auto;margin:0;border:0;padding:2px 17px 2px 3px;font-size:10px;color:#7e8c84;background:transparent}.eventZoneLabel{display:flex;align-items:center;gap:10px;font-size:10px;flex-wrap:wrap}.eventZoneLabel select{width:auto;margin:0;padding:5px 9px;font-size:10px}.eventZoneLabel small{display:block;width:100%;font-size:9px;color:#98a29b}

.calendarWeek button.eventchip.hasZoneBadge{display:flex;align-items:center;gap:3px}.chipContent{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.foreignBadge{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;background:#e0eaf8;color:#416895;border:1px solid #bacfe7;border-radius:3px;font-size:8px;font-weight:600;padding:0 3px;line-height:13px;vertical-align:middle}.eventchip .foreignBadge{margin-left:auto}#eventZoneSummary{padding:11px 12px;background:#f0f5fc;border:1px solid #d8e4f2;border-radius:6px;margin-bottom:16px;display:flex;flex-direction:column;gap:5px;font-size:10px;color:#6b7e94}#eventZoneSummary strong{font-size:11px;color:#416895}#eventZoneSummary strong .foreignBadge{margin-right:4px}

.foreignBadge{background:#e7e8e9;color:#45494e;border-color:#cdd0d3}


#viewZoneBadge{display:inline-block;white-space:nowrap;background:#e7e8e9;color:#45494e;border:1px solid #d4d7d9;border-radius:4px;padding:3px 6px;font-size:9px;font-weight:500}.legend .zone{gap:5px}#viewingZone{max-width:135px}@media(max-width:700px){#viewZoneBadge{font-size:8px;padding:3px 5px}#viewingZone{max-width:92px;font-size:9px}.legend{gap:9px}}

#viewingZone{width:63px;max-width:63px;min-width:0;padding:2px 12px 2px 3px;font-size:9px}.legend .zone{gap:4px}@media(max-width:700px){#viewingZone{width:57px;max-width:57px;padding-right:10px}}

.datedBars .contextBar{height:12px;line-height:10px;margin-top:2px}


.productionTrack{height:8px;position:relative;margin-left:-5px;margin-right:-6px}.productionLine{display:block;position:absolute;top:1px;left:0;right:0;height:2px;background:var(--production-color);padding:0;border:0;border-radius:0;cursor:pointer}.productionLine::after{content:'';position:absolute;inset:-3px 0}.productionLine.periodStart{left:7px;border-radius:2px 0 0 2px}.productionLine.periodEnd{right:7px;border-radius:0 2px 2px 0}.productionLine.periodStart::before,.productionLine.periodEnd::before{content:'';position:absolute;width:5px;height:5px;background:var(--production-color);border-radius:50%;top:-1.5px}.productionLine.periodStart::before{left:0}.productionLine.periodEnd::before{right:0}.hasProductionPeriod .datedBars{top:35px}@media(max-width:700px){.productionTrack{margin-left:-2px;margin-right:-3px}}

.productionSettings{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:20px 0;padding:6px 0 12px}.productionSettings h3{font-size:12px}.periodToggle{display:flex;align-items:center;gap:10px;cursor:pointer}.periodToggle input{position:absolute;opacity:0;width:1px;height:1px}.switchTrack{position:relative;width:32px;height:18px;background:#ccd4ce;border-radius:12px;margin-left:auto;transition:background .15s}.switchTrack:after{content:'';position:absolute;left:2px;top:2px;width:14px;height:14px;background:#fff;border-radius:50%;transition:transform .15s}.periodToggle input:checked+.switchTrack{background:#547963}.periodToggle input:checked+.switchTrack:after{transform:translateX(14px)}.periodToggle input:focus-visible+.switchTrack{outline:2px solid #446e61;outline-offset:3px}.productionSettings p{font-size:10px;line-height:1.7}.projectPeriodSummary{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:15px 0;border-bottom:1px solid var(--line);font-size:11px}.projectPeriodSummary span,.projectPeriodSummary small{color:#929d96}.projectPeriodSummary strong{font-weight:500}.projectPeriodSummary .today{margin-left:auto}

.productionGlobal{display:flex;align-items:center;gap:20px;margin-bottom:20px;padding:12px 16px;background:#fff;border:1px solid var(--line);border-radius:8px}.productionGlobal .periodToggle{margin:0;gap:14px;font-size:11px;color:#53665a}.productionGlobal small{font-size:9px;color:#98a29b}@media(max-width:700px){.productionGlobal{flex-wrap:wrap;gap:8px;padding:12px}.productionGlobal .periodToggle{width:100%}.productionGlobal small{font-size:9px}}

.weekNavigation{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:13px 15px;border-bottom:1px solid var(--line);background:#fafbf9}.weekNavigation button{border:1px solid #dce4dd;background:#fff;padding:9px 12px;border-radius:6px;font-size:11px;color:#4e6e59;min-height:38px}.weekNavigation strong{font-size:12px;font-weight:500;white-space:nowrap}@media(max-width:700px){.weekNavigation{padding:12px 10px}.weekNavigation button{padding:10px;font-size:10px}.weekNavigation strong{font-size:11px}}

.dayAllDay{padding:12px 15px;border-bottom:1px solid var(--line);display:flex;gap:6px;flex-wrap:wrap;align-items:center}.dayAllDay small{font-size:9px;color:#8d9891;margin-right:8px}.dayAllDay button{background:var(--tint);border-left:2px solid var(--event);color:var(--text);border-radius:3px;padding:5px 9px;font-size:10px}.dayGrid{max-height:650px;overflow-y:auto;overscroll-behavior:contain}.dayGridBody{position:relative;height:1440px}.hourRow{height:60px;display:flex}.hourLabel{width:63px;flex-shrink:0;font-size:9px;color:#98a29c;padding:3px 9px 0;text-align:right;border-right:1px solid var(--line)}.hourSlots{flex:1}.hourSlots>div{height:30px;border-top:1px solid #e9eeea;-webkit-touch-callout:none;user-select:none}.hourSlots>div+div{border-top:1px dashed #f0f2f0}.hourSlots>div:hover{background:#f5f8f5}.timedEventLayer{position:absolute;left:63px;right:0;top:0;bottom:0;pointer-events:none}.timedGridEvent{position:absolute;pointer-events:auto;text-align:left;overflow:hidden;padding:5px 9px;background:var(--tint);border-left:3px solid var(--event);border-radius:4px;min-height:24px;display:flex;flex-direction:column;gap:4px;color:var(--text)}.timedGridEvent strong{font-size:11px;font-weight:500}.timedGridEvent span{font-size:9px}.gridHint{font-size:9px;color:#98a29b;padding:0 15px}.agendaDay{min-height:90px;-webkit-touch-callout:none}@media(max-width:700px){.dayGrid{max-height:570px}.hourLabel{width:51px;font-size:8px}.timedEventLayer{left:51px}}

.dayGridBody{height:960px}.hourRow{height:40px}.hourSlots>div{height:20px}.timedGridEvent{min-height:18px;padding:3px 7px;gap:2px}

.dayGridBody{height:672px}.hourRow{height:28px}.hourSlots>div{height:14px}.hourLabel{padding-top:1px}.timedGridEvent{min-height:14px;padding:1px 6px;gap:1px}

@media(max-width:700px){
main{padding-left:12px;padding-right:12px}
header{height:45px}.headerRight{gap:9px}.headerRight .avatar.small{width:25px;height:25px;font-size:14px}.headerRight .icon{font-size:19px}.crumb{font-size:9px}.demo{font-size:7px}
.mobileViewTabs{margin-top:9px;padding:2px;border-radius:6px;gap:2px}.mobileViewTabs button{padding:5px 10px;font-size:11px;border-radius:4px}
.intro{padding:13px 0 12px;align-items:center}.intro .eyebrow{display:none}.intro h1{font-size:18px;margin:0;letter-spacing:-.6px}.intro p{font-size:9px;margin:5px 0 0;line-height:1.5}.intro .primary{padding:9px 11px}.intro .primary:after{font-size:21px}
.toolbar{margin-bottom:9px}.monthtitle h2{font-size:17px}.today{padding:4px 7px}.views{padding:2px}.views button{padding:5px 9px;font-size:10px}
.legend{margin-bottom:6px;font-size:8px;gap:8px}.legend b{width:7px;height:7px}#viewZoneBadge{padding:2px 4px;font-size:8px}#viewingZone{padding-top:1px;padding-bottom:1px}
.mobileFilters{padding-bottom:7px;gap:6px}.mobileFilters .mobileLayers button{padding:4px 6px;font-size:8px}.mobileProjectScroll{padding:2px 1px}.mobileProjectScroll button{padding:4px 7px;font-size:8px}.filterDivider{height:16px}
.weekNavigation{padding:8px 10px}.weekNavigation button{min-height:32px;padding:7px 9px}.weekNavigation strong{font-size:11px}
}

@media(min-width:701px){
header{height:60px}.headerRight{gap:15px}
.intro{padding:22px 0 20px}.eyebrow{font-size:7px;letter-spacing:1.6px}.intro h1{font-size:23px;margin:7px 0 6px}.intro p{margin:5px 0;font-size:10px}.intro .primary{padding:10px 17px}
.toolbar{margin-bottom:11px}.monthtitle h2{font-size:20px}.monthtitle{gap:10px}.views button{padding:5px 16px}.legend{margin-bottom:8px}
.sidebar{padding-top:25px}.brand{font-size:35px}.workspace{margin:24px 0 19px;padding:12px 5px}.nav{padding:10px;margin-bottom:4px}.sideheading{margin:22px 0 8px}.layer,.projectFilter{padding-top:8px;padding-bottom:8px}.sidebottom{padding-top:22px}
.details{padding:18px 17px}.detailmeta{margin-bottom:16px}.calendarFoot{padding-top:10px;padding-bottom:10px}.layout{gap:18px}footer{margin:18px 0}
.productionGlobal{margin-bottom:15px;padding:10px 14px}
}

.dayGridBody{height:470.4px}.hourRow{height:19.6px}.hourSlots>div{height:9.8px}.hourLabel{padding-top:0;font-size:8px}.timedGridEvent{min-height:12px;padding:0 5px;gap:0}.timedGridEvent strong{font-size:10px}

.timedGridEvent{touch-action:none;user-select:none;-webkit-touch-callout:none;cursor:grab}.timedGridEvent.timeDragging{cursor:grabbing;z-index:5;box-shadow:0 3px 12px #304b3933;outline:1px solid var(--event);opacity:.9}

#eventDialog .eventEditorHeader{display:grid;grid-template-columns:58px 1fr 58px;align-items:center;gap:8px;margin-bottom:12px;position:sticky;top:-25px;background:#fff;z-index:40;padding:12px 0;border-bottom:1px solid var(--line)}#eventDialog .eventEditorHeader h2{text-align:center;font-size:16px}.editorCancel{padding:8px 0;text-align:left;font-size:12px;color:#87928b}.editorSave{padding:8px 10px;background:#416655;color:#fff;border-radius:6px;font-size:12px;font-weight:500}.eventEditorTypeRow{display:flex;margin-bottom:16px}.eventEditorTypeRow .eventTypeSwitch{display:inline-flex}

.timedGridEvent strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;flex-shrink:0;line-height:14px}.timedGridEvent span{flex-shrink:0;line-height:12px}.timedGridEvent.compactEvent span{display:none}.timedGridEvent.compactEvent{justify-content:center}

.dayEventLine{display:flex;align-items:center;gap:7px;min-width:0;width:100%;height:14px;line-height:14px}.timedGridEvent .dayEventTime{display:inline!important;font-size:9px;white-space:nowrap;flex-shrink:0;line-height:14px}.timedGridEvent .dayEventLine strong{width:auto;min-width:0;flex:1;font-size:10px;line-height:14px}.timedGridEvent{justify-content:flex-start}.timedGridEvent.compactEvent{justify-content:center}.timedGridEvent .dayEventLine .foreignBadge{display:inline-flex;line-height:11px;font-size:8px}.agendaTime{white-space:nowrap;font-size:10px;flex-shrink:0}.agendaTitle{min-width:0;overflow-wrap:anywhere}.agendaEvent{align-items:center;gap:12px}.agendaEvent small{flex-shrink:0}@media(max-width:700px){.dayEventLine{gap:5px}.timedGridEvent .dayEventTime{font-size:8px}.agendaEvent{gap:8px}.agendaTime{font-size:9px}}

.timedGridEvent.weeklyStyleEvent{height:32px;min-height:32px;padding:7px 10px;justify-content:center;border-left-width:3px;border-radius:4px;overflow:visible;box-shadow:0 1px 2px #24372b08}.weeklyStyleEvent .dayEventLine{height:16px;line-height:16px;gap:12px}.timedGridEvent.weeklyStyleEvent .dayEventTime{font-size:10px;line-height:16px}.timedGridEvent.weeklyStyleEvent .dayEventLine strong{font-size:11px;font-weight:400;line-height:16px}.weeklyStyleEvent:hover{z-index:4}.weeklyStyleEvent.timeDragging{z-index:8}@media(max-width:700px){.timedGridEvent.weeklyStyleEvent{padding:7px 8px}.weeklyStyleEvent .dayEventLine{gap:8px}.timedGridEvent.weeklyStyleEvent .dayEventTime{font-size:9px}}

.dayEventStatus{margin-left:auto;flex-shrink:0;font-size:9px;font-weight:400;color:#8a9297;white-space:nowrap}.weeklyStyleEvent .dayEventLine{width:100%}

#viewZoneBadge{background:none;border:0;padding:0;color:#929b95;font-weight:400;font-size:9px}@media(max-width:700px){#viewZoneBadge{padding:0;font-size:8px}}

html:has(dialog[open]),body:has(dialog[open]){overflow:hidden;overscroll-behavior:none}dialog{max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain}


.datedBars .contextBar{border-left:1px solid #c6dce9;border-right:1px solid #c6dce9}.datedBars .contextBar.rangeStart{border-left:3px solid #739bb5;border-top-left-radius:3px;border-bottom-left-radius:3px}.datedBars .contextBar.rangeEnd{border-right:3px solid #739bb5;border-top-right-radius:3px;border-bottom-right-radius:3px}.datedBars .contextBar.rangeContinues{border-left:0;border-top-left-radius:0;border-bottom-left-radius:0;margin-left:0}.datedBars .contextBar.rangeContinuesAfter{border-right:0;border-top-right-radius:0;border-bottom-right-radius:0;margin-right:0}

.datedBars .contextBar.rangeContinues{margin-left:4px}.datedBars .contextBar.rangeContinuesAfter{margin-right:4px}@media(max-width:700px){.datedBars .contextBar.rangeContinues{margin-left:3px}.datedBars .contextBar.rangeContinuesAfter{margin-right:3px}}


.optionalProjectFields{margin:18px 0;border-top:1px solid var(--line);padding-top:14px}.optionalProjectFields summary{font-size:11px;color:#667b6b;cursor:pointer}.projectInformation{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 25px;margin:20px 0}.projectInformation dt{font-size:10px;color:#96a098;margin-bottom:5px}.projectInformation dd{margin:0;font-size:12px;overflow-wrap:anywhere}@media(max-width:700px){.projectInformation{gap:14px}.projectInformation dd{font-size:11px}}

#projectDialog .projectEditorHeader{display:grid;grid-template-columns:58px 1fr 58px;align-items:center;gap:8px;margin-bottom:12px;position:sticky;top:-25px;background:#fff;z-index:40;padding:12px 0;border-bottom:1px solid var(--line)}#projectDialog .projectEditorHeader h2{text-align:center;font-size:16px}

.dayGridBody{height:var(--day-total-height,470.4px)}.hourRow{height:var(--day-hour-height,19.6px)}.hourSlots>div{height:var(--day-half-height,9.8px)}.dayGrid{touch-action:pan-y}.dayGrid .timedGridEvent{touch-action:pan-y}

.timedGridEvent.weeklyStyleEvent{min-height:0;padding:0 8px;justify-content:flex-start;overflow:visible}.weeklyStyleEvent .dayEventLine{min-height:16px;flex-shrink:0;background:var(--tint);border-radius:2px}.weeklyStyleEvent .dayEventLine strong{align-self:center}

.agendaEvent{display:flex;align-items:center;line-height:18px;padding-top:12px;padding-bottom:12px;min-height:44px}.agendaEvent>.agendaTime,.agendaEvent>.agendaTitle,.agendaEvent>small{display:block;line-height:18px;margin-top:0;margin-bottom:0}.agendaEvent>small{align-self:center}
.timedGridEvent.weeklyStyleEvent{justify-content:center;padding-top:0;padding-bottom:0}.weeklyStyleEvent .dayEventLine{display:flex;align-items:center;justify-content:flex-start;height:16px;min-height:16px;line-height:16px}.timedGridEvent.weeklyStyleEvent .dayEventTime,.timedGridEvent.weeklyStyleEvent .dayEventLine strong,.weeklyStyleEvent .dayEventStatus{line-height:16px;margin-top:0;margin-bottom:0;align-self:center}.weeklyStyleEvent .dayEventLine .foreignBadge{align-self:center}

.timedGridEvent.weeklyStyleEvent{overflow:hidden}.timedGridEvent.tinyTimeEvent .dayEventLine{display:none}.timedGridEvent.tinyTimeEvent{border-radius:2px}

#compactDayAgenda{padding:10px 12px;border-bottom:1px solid var(--line);background:#fafbf9}.compactAgendaHeading{font-size:10px;color:#6d8072;margin-bottom:7px}.compactAgendaHeading span{font-size:8px;color:#9ba59d;margin-left:6px}.compactAgendaEvent{display:flex;align-items:center;gap:9px;text-align:left;width:100%;background:var(--tint);border-left:3px solid var(--event);border-radius:4px;padding:9px 8px;margin-top:5px;color:var(--text);font-size:10px}.compactAgendaEvent>span:first-child{white-space:nowrap;font-size:9px}.compactAgendaEvent strong{min-width:0;flex:1;font-size:10px;font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.compactAgendaEvent small{font-size:9px;color:#8a9297;flex-shrink:0}

.dayGridBody{box-sizing:content-box;padding-bottom:var(--day-four-hour-space,78.4px)}

.dayGridBody{box-sizing:border-box;padding-bottom:0}.dayGrid{max-height:min(650px,var(--day-visible-height,392px))}@media(max-width:700px){.dayGrid{max-height:min(570px,var(--day-visible-height,392px))}}

.dayGridBody{box-sizing:content-box;padding-bottom:23px}.midnightBoundary{position:absolute;top:var(--day-total-height,470.4px);left:0;right:0;height:23px;border-top:1px solid #dce4de;display:flex;align-items:center;gap:10px;background:#fafbf9;color:#8a988e}.midnightBoundary>span{width:63px;flex-shrink:0;padding-right:9px;text-align:right;font-size:8px}.midnightBoundary small{font-size:8px}@media(max-width:700px){.midnightBoundary>span{width:51px}}

.dayGrid{max-height:none;overflow:visible;overscroll-behavior:auto}@media(max-width:700px){.dayGrid{max-height:none;overflow:visible}}

#eventSaveError{position:sticky;top:30px;z-index:39;background:#fff0ed;border:1px solid #e9bcb2;color:#9a4f3c;font-size:11px;line-height:1.7;border-radius:6px;padding:10px 12px;margin-bottom:12px}

#eventRangeHelp{padding:10px 12px;border:1px solid #e9d4a8;border-radius:6px;background:#fffaf0;margin:12px 0;color:#8c7340}#eventRangeHelp p{font-size:11px;line-height:1.7;margin:0 0 7px}#eventRangeHelp button{margin:3px 6px 3px 0;font-size:10px}

.projectScrollHint{display:none}@media(max-width:700px){.mobileFilters{position:relative;padding-right:16px}.mobileFilters .projectScrollHint{display:flex;align-items:center;justify-content:center;position:absolute;right:0;top:0;bottom:7px;width:19px;padding:0;border:0;border-radius:0;background:linear-gradient(90deg,transparent,#f6f7f9 40%);color:#8b9a91;font-size:22px;font-weight:400;z-index:2}.mobileFilters .projectScrollHint:hover{color:#416655}}

@media(max-width:700px){.mobileFilters .projectScrollHintLeft{position:relative;left:auto;right:auto;top:auto;bottom:auto;flex-shrink:0;align-self:stretch;width:12px;margin-right:-5px;background:linear-gradient(270deg,transparent,#f6f7f9 45%)}.mobileFilters .projectScrollHintLeft[hidden]{display:none!important}}

@media(max-width:700px){
.mobileFilters .projectScrollHint{top:50%;bottom:auto;transform:translateY(calc(-50% - 3.5px));height:24px;line-height:24px;align-items:center;justify-content:center}
.mobileFilters .projectScrollHintLeft{position:relative;top:auto;bottom:auto;transform:none;align-self:center;height:24px;line-height:24px;margin-top:0;margin-bottom:0;display:flex;align-items:center;justify-content:center}
}

@media(max-width:700px){
.mobileFilters{padding-right:0}.projectScrollTrack{display:flex;align-items:center;gap:2px;flex:1;min-width:0}.projectScrollTrack .mobileProjectScroll{min-width:0;flex:1;padding:2px 1px}
.mobileFilters .projectScrollTrack .projectScrollHint,.mobileFilters .projectScrollTrack .projectScrollHintLeft{position:static;inset:auto;transform:none;align-self:center;display:flex;align-items:center;justify-content:center;width:16px;height:24px;min-width:16px;flex:0 0 16px;padding:0;margin:0;border:0;background:none;line-height:1;font-size:0}
.projectScrollHint svg{display:block;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.mobileFilters .projectScrollHint[hidden]{display:none!important}
}

.mondayStart .weekhead span:first-child{color:#939ba4}.mondayStart .weekhead span:nth-child(6){color:#8c9fbe}.mondayStart .weekhead span:last-child{color:#c29191}

.projectDetailTop{display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:12px;margin-bottom:20px}.projectBack{font-size:11px;font-weight:500;color:#435d4d;padding:9px 0;text-align:left;white-space:nowrap}.projectTopActions{display:flex;align-items:center;gap:7px;margin-left:auto}.projectAction{background:#f4f7f4;border:1px solid #cfd9d1;color:#3f594a;font-size:11px;font-weight:500;padding:8px 12px;border-radius:6px;white-space:nowrap}.projectAction:hover{background:#e8efe9}.projectBack:hover{text-decoration:underline}@media(max-width:700px){.projectDetailTop{gap:7px;margin-bottom:16px}.projectBack{font-size:10px}.projectTopActions{gap:5px}.projectAction{font-size:10px;padding:8px 9px}}

.projectBack{font-weight:700}.projectTopActions .projectAction[data-editproject]{font-size:13px;padding:9px 17px;font-weight:600;background:#e9f0ea;border-color:#b8c9bd}.projectTopActions #projectCalendar{font-size:10px;background:transparent;border-color:transparent;color:#75867a;padding:8px 5px}@media(max-width:700px){.projectBack{font-weight:700}.projectTopActions .projectAction[data-editproject]{font-size:12px;padding:8px 13px}.projectTopActions #projectCalendar{font-size:9px;padding:7px 3px}}

.projectTopActions #projectCalendar{font-weight:700;color:#435d4d}


.projectTopActions #projectCalendar:hover,.projectTopActions #projectCalendar:focus-visible{text-decoration:underline}.projectBack:focus-visible{text-decoration:underline}


#projects{overflow-anchor:none}html{scroll-behavior:auto}

#projectViewMenu{position:fixed;z-index:100;background:#fff;border:1px solid #dce4de;border-radius:8px;box-shadow:0 6px 24px #233a2925;min-width:178px;padding:6px}.projectMenuHeading{font-size:10px;color:#91a096;padding:7px 10px;border-bottom:1px solid #edf1ee;margin-bottom:4px}#projectViewMenu button{display:block;width:100%;text-align:left;padding:11px 10px;font-size:12px;border-radius:5px;color:#435e4c}#projectViewMenu button:hover{background:#eef4ef}.projectFilter{cursor:pointer}

.projectScheduleHeading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:24px;margin-bottom:12px}.projectDetail .projectScheduleHeading h3{margin:0}.projectScheduleHeading .today{margin:0;color:#42634d;border-color:#cddace;padding:7px 10px}

.projectEventRow{display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--line)}.projectEventRow .projectEvent{min-width:0;flex:1;border-bottom:0}.duplicateEventButton{flex-shrink:0;font-size:10px;color:#587661;padding:7px 9px;border:1px solid #dce5de;border-radius:5px;background:#f5f8f5}#duplicateEventNotice{font-size:10px;line-height:1.8;background:#eef4ee;color:#637c68;padding:10px 12px;border-radius:5px}

.duplicateEventButton{font-size:9px;line-height:14px;padding:2px 6px;border:0;border-radius:4px;background:#eef2ef;color:#78867c;font-weight:400}.projectEventRow{gap:6px}


@media(max-width:700px){.projectEventRow .duplicateEventButton{align-self:flex-end;margin-bottom:18px}}


.duplicateEventButton{background:transparent;border:1px solid #cddace;color:#42634d;padding:2px 6px;border-radius:5px;font-size:9px;line-height:14px}.duplicateEventButton:hover{background:#f4f7f4}


.projectEventStatus{font-size:9px;font-weight:400;color:#8a9297;margin-left:7px;white-space:nowrap}.projectEventRow .projectEvent>span:first-child{margin-left:0}.projectEventRow .projectEvent>strong{flex:1}

@media(max-width:700px){
.projectEventRow{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;column-gap:9px}
.projectEventRow .projectEvent{display:flex;flex-direction:column;align-items:flex-start;flex-wrap:nowrap;gap:8px;padding:15px 0;min-width:0;width:100%}
.projectEventRow .projectEvent>span:first-child{order:0;width:100%;margin:0;font-size:10px;line-height:16px;white-space:normal}
.projectEventRow .projectEvent>strong{display:block;order:1;width:100%;flex:none;min-width:0;line-height:21px;overflow-wrap:anywhere;font-size:11px}
.projectEventRow .projectEvent .activityTag{margin-left:6px;vertical-align:middle}.projectEventRow .projectEventStatus{display:inline-block;vertical-align:middle;margin-left:6px;line-height:18px}
.projectEventRow .duplicateEventButton{align-self:end;margin-bottom:17px}
}

.projectColor{display:flex;justify-content:flex-start;align-items:center;gap:12px;margin:16px 0 18px;font-size:11px;color:#737f84}.projectColor>span{cursor:default}.projectColor input[type=color]{flex:0 0 38px;width:38px;height:28px;margin:0}

.projectcard{padding:18px 20px}.projectcard h3{margin:10px 0 7px}.projectcard>p{margin:7px 0}.projectcard .projectReorder{margin-bottom:6px}.projectcard .projectColor{justify-content:flex-end;gap:9px;margin:10px 0 12px}.projectcard .projectColor input[type=color]{width:32px;flex-basis:32px;height:24px}.projectcard .projectColor>span{font-size:10px}.projectcard>.primary{padding:9px 13px}.projectcard>.today{padding:5px 8px}.projectcard>br{display:none}.projectcard>button[data-openproject]{display:block;margin:9px 0 0;padding-left:0;font-size:9px}.projectcards{gap:14px}@media(max-width:700px){.projectcard{padding:14px 16px}.projectcard h3{font-size:17px;margin-top:8px}.projectcard .projectColor{margin:8px 0 10px}.projectcards{gap:11px}}

.projectcard .projectColor input[type=color]{padding:0;overflow:hidden;border:1px solid #d4ddd6;border-radius:5px;background:transparent;appearance:none;-webkit-appearance:none}.projectcard .projectColor input[type=color]::-webkit-color-swatch-wrapper{padding:0}.projectcard .projectColor input[type=color]::-webkit-color-swatch{border:0;border-radius:3px}.projectcard .projectColor input[type=color]::-moz-color-swatch{border:0;border-radius:3px}

.projectcard>button[data-openproject]{width:100%;text-align:center;margin:9px 0 0;padding:6px 8px}


.projectCardControls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0 9px}.projectCardActions{display:flex;align-items:center;gap:7px;flex-shrink:0}.projectCardActions .primary{padding:9px 13px}.projectCardActions .today{margin:0;padding:7px 9px}.projectcard .projectCardControls .projectColor{margin:0;gap:7px;flex-shrink:0}.projectcard>button[data-openproject]{margin-top:0}.projectcard>p{margin-bottom:7px}@media(max-width:700px){.projectCardControls{margin-top:10px;gap:8px}.projectCardActions{gap:6px}.projectCardActions .primary{padding:9px 11px}.projectcard .projectCardControls .projectColor{gap:6px}.projectcard .projectCardControls .projectColor>span{font-size:9px}}

.productionDocument{border-top:1px solid var(--line);padding-top:12px;margin-top:18px}.productionDocument h3{font-size:12px}.originalDocumentLink{display:inline-block;color:#466c58;font-size:11px;text-decoration:none;padding:7px 0}.originalDocumentLink:hover{text-decoration:underline}.productionSummary{margin:10px 0;background:#f4f7f4;padding:12px;border-radius:6px;font-size:10px;color:#718176;line-height:1.9}.productionSummary summary{cursor:pointer;color:#486451;font-weight:500}.productionSummary p{margin:8px 0}


/* Card sizing contract: 228px controls + 40px padding + 2px border = 270px. */
#projects{container-type:inline-size;container-name:project-area}
.projectcards{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}
.projectcard{min-width:0;padding:18px 20px}
.projectcard h3,.projectcard>.badge,.projectcard>p{overflow-wrap:anywhere;max-width:100%}
.projectcard .projectCardControls{display:grid;grid-template-columns:136px 80px;justify-content:space-between;align-items:center;gap:12px;margin:12px 0 9px;min-width:0}
.projectcard .projectCardActions{display:grid;grid-template-columns:94px 36px;align-items:center;gap:6px;min-width:0;max-width:none}
.projectcard .projectCardActions .primary{width:94px;height:32px;padding:0;font-size:10px;line-height:14px;white-space:nowrap}
.projectcard .projectCardActions .today{width:36px;height:30px;margin:0;padding:0;font-size:10px;line-height:14px;white-space:nowrap}
.projectcard .projectCardControls .projectColor{display:grid;grid-template-columns:48px 26px;align-items:center;justify-content:end;gap:6px;width:80px;margin:0;min-width:0;max-width:none}
.projectcard .projectCardControls .projectColor>span{font-size:9px;line-height:14px;white-space:nowrap}
.projectcard .projectCardControls .projectColor input[type=color]{display:block;width:26px;height:24px;min-width:0;margin:0;padding:0}
@container project-area (min-width:554px){.projectcards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@container project-area (min-width:838px){.projectcards{grid-template-columns:repeat(3,minmax(0,1fr))}}
@container project-area (min-width:1122px){.projectcards{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:700px){.projectcard{padding:14px 16px}}

.projectEntryActions{display:flex;align-items:center;gap:7px;flex-shrink:0}.eventCalendarLink{background:none;border:0;padding:3px 2px;color:#587661;font-size:9px;white-space:nowrap}.eventCalendarLink:hover{text-decoration:underline}.calendarJumpHighlight{outline:2px solid #5e806c!important;outline-offset:2px;box-shadow:0 0 0 4px #73958022!important;z-index:6}@media(max-width:700px){.projectEntryActions{align-self:end;margin-bottom:17px;gap:6px}.projectEntryActions .duplicateEventButton{margin-bottom:0;align-self:center}.eventCalendarLink{font-size:9px}}

.projectEventRow .activityTag{background:transparent;padding:0;color:#8a9297;border-radius:0}.eventCalendarLink{display:inline-block;background:#eef2ef;color:#587661;border:0;border-radius:4px;padding:2px 6px;font-size:9px;line-height:14px}.eventCalendarLink:hover{background:#e3ece5;text-decoration:none}

.projectTopActions #projectCalendar{background:#fff;border:1px solid #dfe3e7;border-radius:5px;padding:7px 9px;font-size:10px;font-weight:400;color:#435d4d}.projectTopActions #projectCalendar:hover{background:#f4f7f4;text-decoration:none}@media(max-width:700px){.projectTopActions #projectCalendar{padding:7px 6px;font-size:9px}}

#eventViewDialog{width:500px}.eventViewHeader{display:grid;grid-template-columns:58px 1fr 58px;gap:8px;align-items:center;position:sticky;top:-25px;background:#fff;padding:12px 0;border-bottom:1px solid var(--line);z-index:40;margin-bottom:18px}.eventViewHeader>span{text-align:center;font-size:12px;color:#8a978e}.eventViewHero{border-left:3px solid var(--event);padding:10px 14px;background:var(--tint);border-radius:5px}.eventViewProject{font-size:10px;color:var(--text)}.eventViewHero h2{font-size:21px;line-height:1.5;margin:8px 0;color:#27362c;overflow-wrap:anywhere}.eventViewMeta{font-size:10px;color:#829087}.eventViewWhen{padding:20px 0;border-bottom:1px solid var(--line);line-height:1.8}.eventViewWhen strong{font-size:13px;font-weight:500}.eventViewWhen>div{font-size:18px;color:#405c49;margin-top:4px}.eventViewLocal{font-size:10px;color:#84918a;margin-bottom:0}.eventViewSection{padding:14px 0;border-bottom:1px solid var(--line)}.eventViewSection h3{font-size:10px;font-weight:400;color:#929c95;margin:0 0 7px}.eventViewSection p{font-size:12px;line-height:1.9;margin:0;color:#53665a;overflow-wrap:anywhere}.preserveLines{white-space:pre-wrap}.eventViewActions{display:flex;gap:20px;align-items:flex-start;border-top:1px solid var(--line);margin-top:20px;padding-top:15px}.eventViewActions summary{cursor:pointer;font-size:10px;color:#8b988f}.eventViewActions details p{font-size:10px;line-height:1.8;color:#8b988f}.eventViewActions>.duplicateEventButton{padding:5px 10px}#eventViewDocuments .attachmentList:empty{display:none}

.eventEditorTypeRow{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:end;gap:16px;margin-bottom:16px}.eventEditorTypeRow .eventTypeSwitch{align-self:end;height:35px;align-items:center}.eventTopProject{min-width:0;margin:0;font-size:10px;color:#87968c}.eventTopProject select{margin-top:5px;min-width:0;width:100%;padding:8px 10px;font-size:12px;height:35px;text-overflow:ellipsis;background:#f5f8f5;border-color:#d4dfd6}.eventEditorTypeRow .eventTypeSwitch button{white-space:nowrap}@media(max-width:700px){.eventEditorTypeRow{gap:11px;grid-template-columns:112px minmax(0,1fr)}.eventEditorTypeRow .eventTypeSwitch{width:112px;justify-content:space-between}.eventEditorTypeRow .eventTypeSwitch button{flex:1;padding:6px 8px}.eventTopProject select{font-size:11px;padding:8px}}

.compactDial.dialOpen .timeDialHeader{background:#fff;opacity:1}.compactDial.dialOpen .timeWheels,.compactDial.unsetTime.dialOpen .timeWheels{background:#fff;opacity:1}.compactDial.dialOpen .timeWheel{background:transparent}.compactDial.dialOpen .timeWheel button{color:#98a49b}.compactDial.dialOpen .timeWheel button.chosen{color:#355b47}.compactDial.dialOpen .wheelFocus{background:#e6eee8}

.eventTagField{margin:13px 0}.eventTagField>label{margin-bottom:6px}.eventTagField label small{font-size:9px;color:#a2aaa5;margin-left:5px}.tagInputRow{display:flex;align-items:center;gap:7px}.tagInputRow input{margin:0;min-width:0;font-size:11px}.tagInputRow button{border:1px solid #d7e1d9;border-radius:5px;padding:9px 11px;font-size:10px;white-space:nowrap;color:#526e5b}#eventTagChips{display:flex;gap:5px;flex-wrap:wrap}#eventTagChips:not(:empty){margin:7px 0}#eventTagChips button,.viewEventTags span{background:#eef3ef;color:#647d6b;border-radius:12px;padding:4px 9px;font-size:10px;border:0}.viewEventTags{display:flex;gap:5px;flex-wrap:wrap;margin:12px 0}.tagFilterButton{padding:2px 6px;border:1px solid #dce5de;border-radius:4px;color:#7f9185;font-size:9px}.tagFilterButton.active{background:#e5eee7;color:#42664e;border-color:#acc4b1}.tagFilterChoices{display:flex;gap:7px;flex-wrap:wrap;margin:18px 0}.tagFilterChoices button{border:1px solid #d8e2da;border-radius:15px;padding:8px 12px;font-size:11px}.tagFilterChoices button[aria-pressed=true]{background:#416655;color:white;border-color:#416655}@media(max-width:700px){.tagFilterButton{font-size:8px;padding:2px 5px}}

.timeWheels .halfDayWheel{flex:0 0 42px;border-left:1px solid #eef1ed;margin-left:4px}.timeWheels .halfDayWheel button{font-size:11px}.timeWheels .halfDayWheel button.chosen{font-size:13px}.compactDial.dialOpen .timeWheels{padding-left:5px;padding-right:5px}

.formrow.eventThreeChoices{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.eventThreeChoices label{min-width:0;white-space:nowrap}.eventThreeChoices select{min-width:0;padding:9px 6px;font-size:11px}@media(max-width:700px){.formrow.eventThreeChoices{gap:8px}.eventThreeChoices label{font-size:10px}.eventThreeChoices select{font-size:10px;padding:9px 4px}}

#mobileQuickAdd,.mobileProjectAdd{display:none}
@media(max-width:700px){
body:not(.projectDetailOpen) .intro{display:none}
.mobileViewTabs{margin-bottom:12px}
.toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto 28px;gap:6px;margin-top:0;margin-bottom:10px}
.monthtitle{gap:1px;min-width:0}.monthtitle h2{min-width:100px;font-size:16px}.monthtitle .icon{padding:0 3px}.monthtitle .today{margin-left:3px;padding:4px 6px}
.views button{padding:5px 7px}
#mobileQuickAdd{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:#416655;color:#fff;border-radius:6px;font-size:21px;line-height:1}
.productionGlobal{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:9px;padding:10px 12px}
.productionGlobal .periodToggle{width:auto;flex:1;margin:0;gap:9px;font-size:10px}
.productionGlobal .switchTrack{margin-left:0;flex-shrink:0}
.productionGlobal>small{display:none}
.productionGlobal .mobileProjectAdd{display:block;font-size:10px;padding:8px 10px;flex-shrink:0}
.projectDetailOpen .intro{padding-top:0;padding-bottom:14px}.projectDetailOpen .intro p{display:none}
}

@media(max-width:700px){.toolbar{grid-template-columns:minmax(0,1fr) auto 40px}#mobileQuickAdd{justify-self:end}}

@media(max-width:700px){
.toolbar{grid-template-columns:minmax(0,1fr) auto 28px;column-gap:12px;align-items:center}
.monthtitle{gap:0}.monthtitle h2{min-width:0;font-size:15px;white-space:nowrap}.monthtitle .icon{width:17px;flex:0 0 17px;padding:0}.monthtitle .today{margin-left:5px;padding:4px 6px;font-size:9px}
.views{gap:0}.views button{padding:5px 6px;min-width:23px}
#mobileQuickAdd{justify-self:end}
}

@media(max-width:700px){.toolbar{grid-template-columns:minmax(0,1fr) auto 34px;column-gap:12px}.monthtitle .icon{width:15px;flex-basis:15px}.monthtitle .today{margin-left:3px;padding:4px 5px}#mobileQuickAdd{justify-self:end}}

@media(max-width:700px){
.toolbar{grid-template-columns:minmax(0,1fr) auto 36px;column-gap:7px}
.monthtitle{gap:2px}.monthtitle h2{font-size:15px;min-width:0;white-space:nowrap}.monthtitle .icon{width:25px;flex:0 0 25px;height:32px;font-size:24px;padding:0}.monthtitle .today{margin-left:4px;padding:4px 6px;font-size:9px}
.views button{padding:5px 4px;min-width:20px;font-size:10px}
#mobileQuickAdd{justify-self:end;width:25px;height:28px}
}

@media(max-width:700px){.monthtitle .icon{height:28px;line-height:28px}.toolbar{margin-top:0;margin-bottom:10px}}


.monthtitle{align-items:center}.monthtitle #prev,.monthtitle #next{display:inline-flex;align-items:center;justify-content:center;line-height:1}.monthtitle #prev svg,.monthtitle #next svg{display:block;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.monthtitle h2{line-height:28px;margin-top:0;margin-bottom:0}

.timezoneSettings{border-top:1px solid var(--line);padding-top:12px;margin:18px 0}.timezoneSettings h3{font-size:13px}.timezoneSearchRow{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid var(--line);font-size:11px}.timezoneSearchRow button{border:1px solid #d8e2da;border-radius:4px;padding:5px 8px;color:#56715e;font-size:10px}.timezoneSearchRow button:disabled{opacity:.5}#timezoneSearchResults{font-size:11px;color:#7d8e82;margin-top:7px}

@media(max-width:700px){
.toolbar{grid-template-columns:minmax(0,1fr) auto 56px;column-gap:6px}
#mobileQuickAdd{width:50px;height:28px;min-width:50px;font-size:10px;line-height:14px;padding:0 6px;white-space:nowrap;justify-self:end}
}

@media(max-width:700px){.toolbar{grid-template-columns:minmax(0,1fr) auto 36px;column-gap:7px}#mobileQuickAdd{width:25px;min-width:25px;height:28px;font-size:21px;line-height:1;padding:0;justify-self:end}}

.calendarNameSettingRow{display:flex;align-items:center;gap:8px}.calendarNameSettingRow input{margin:0;min-width:0}.calendarNameSettingRow button{flex-shrink:0;padding:9px 12px}

html,.sidebar,dialog{scrollbar-width:thin;scrollbar-color:#c7cec8 transparent}
::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#c7cec8;border-radius:8px}::-webkit-scrollbar-thumb:hover{background:#a7b3aa}

.projectEventRow .projectEvent{padding-top:16px;padding-bottom:16px}
@media(max-width:700px){.projectEventRow .projectEvent{padding-top:13px;padding-bottom:13px;gap:7px}.projectEntryActions{margin-bottom:15px}}

.projectEventRow .projectEvent{padding-top:14.4px;padding-bottom:14.4px}
@media(max-width:700px){.projectEventRow .projectEvent{padding-top:11.7px;padding-bottom:11.7px;gap:6.3px}.projectEntryActions{margin-bottom:13.5px}}
