.cwp-calendar-app{color:#263e4b;background:linear-gradient(135deg,#f7f8f6 0%,#eef4f5 70%,#edf3f1 100%);min-height:100vh}.cwp-calendar-header{z-index:20;background:#fcfdfc;border-bottom:1px solid #dce5e6;align-items:center;gap:14px;height:68px;padding:0 24px;display:flex;position:sticky;top:0;box-shadow:0 2px 12px #2a444c08}.cwp-calendar-header>a{color:#38677c;display:flex}.cwp-calendar-header img{width:auto;height:38px}.cwp-calendar-header>div{flex-direction:column;display:flex}.cwp-calendar-header>div strong{font-size:16px}.cwp-calendar-header>div span,.cwp-calendar-header>small{color:#5d707b;font-size:12px}.cwp-calendar-header>small{margin-left:auto}.cwp-calendar-shell{grid-template-columns:250px 1fr;min-height:calc(100vh - 68px);display:grid}.cwp-calendar-side{background:#edf3f3;border-right:1px solid #dce5e6;flex-direction:column;gap:18px;padding:18px;display:flex}.new-event,.import-teamup{cursor:pointer;border:0;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:11px 12px;font-weight:750;display:flex}.new-event{color:#fff;background:#38677c}.import-teamup{color:#38677c;background:#fff;border:1px solid #cbd9dc}.mini-calendar-title{color:#365869;align-items:center;gap:8px;display:flex}.mini-calendar-title svg{width:18px}.calendar-list{gap:8px;display:grid}.calendar-list label{cursor:pointer;grid-template-columns:18px 14px 1fr auto;align-items:center;gap:8px;font-size:13px;display:grid}.calendar-list input{width:15px;height:15px}.calendar-list i{border-radius:50%;width:10px;height:10px}.calendar-list small{color:#82929a;font-size:10px}.calendar-list p{color:#6a7d88;font-size:12px}.calendar-help{background:#f9fbfa;border:1px solid #d9e5e6;border-radius:12px;margin-top:auto;padding:13px}.calendar-help strong{font-size:12px}.calendar-help p{color:#687d88;margin:5px 0 0;font-size:11px;line-height:1.5}.cwp-calendar-main{min-width:0;padding:18px}.calendar-toolbar{grid-template-columns:1fr minmax(230px,340px) auto;align-items:center;gap:14px;margin-bottom:15px;display:grid}.date-controls{align-items:center;gap:8px;display:flex}.date-controls button,.view-tabs button{color:#365869;cursor:pointer;background:#fff;border:1px solid #cbd9dc;border-radius:9px;height:36px;padding:0 11px}.date-controls button svg{width:16px}.date-controls h1{white-space:nowrap;margin:0 0 0 6px;font-size:24px}.calendar-search{background:#fff;border:1px solid #cbd9dc;border-radius:10px;align-items:center;gap:8px;height:38px;padding:0 10px;display:flex}.calendar-search svg{color:#6f8792;width:17px}.calendar-search input{background:0 0;width:100%;border:0!important;outline:0!important}.view-tabs{background:#e5edef;border-radius:10px;padding:3px;display:flex}.view-tabs button{background:0 0;border:0;height:32px}.view-tabs button.active{color:#31556f;background:#fff;box-shadow:0 1px 4px #24404f18}.calendar-error,.calendar-notice,.calendar-loading{border-radius:10px;margin:0 0 12px;padding:10px 12px;font-size:13px}.calendar-error{color:#9c3036;background:#fff0f0;border:1px solid #efc6c8}.calendar-notice{color:#376b4d;background:#eef8f2;border:1px solid #cfe4d6}.calendar-loading{color:#4b6776;background:#eef4f7;border:1px solid #d8e5ea}.month-grid{background:#fff;border:1px solid #dce5e6;border-radius:14px;grid-template-columns:repeat(7,minmax(130px,1fr));display:grid;overflow:hidden}.weekday{color:#5d707b;text-transform:uppercase;letter-spacing:.05em;background:#edf3f3;border-right:1px solid #dce5e6;padding:9px 10px;font-size:11px;font-weight:800}.weekday:nth-child(7){border-right:0}.month-day{border-top:1px solid #e2eaeb;border-right:1px solid #e2eaeb;min-height:142px;padding:7px;overflow:hidden}.month-day:nth-child(7n+7){border-right:0}.month-day.outside{color:#9aabb2;background:#f7f9f9}.month-day.today{box-shadow:inset 0 0 0 2px #7ca3b2}.day-number{margin-bottom:6px;font-size:12px;font-weight:800}.day-events{gap:4px;display:grid}.calendar-event{text-align:left;cursor:pointer;color:#2f4754;border:0;border-left:4px solid;border-radius:5px;grid-template-columns:auto 1fr;gap:5px;min-width:0;padding:5px 6px;font-size:10px;display:grid}.calendar-event span{color:#6b808a;font-size:9px}.calendar-event strong{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.day-events>small{color:#647a86;padding:2px 4px;font-size:10px}.week-grid{grid-template-columns:repeat(7,minmax(150px,1fr));gap:10px;display:grid}.week-grid>section{background:#fff;border:1px solid #dce5e6;border-radius:13px;min-height:610px;overflow:hidden}.week-grid>section.today{box-shadow:0 0 0 2px #7ca3b2}.week-grid>section>header{background:#edf3f3;justify-content:space-between;align-items:center;padding:12px;display:flex}.week-grid>section>header small{text-transform:uppercase;color:#627986}.week-grid>section>header strong{font-size:22px}.week-grid>section>div{gap:8px;padding:8px;display:grid}.week-event{text-align:left;cursor:pointer;background:#fff;border:1px solid;border-left-width:5px;border-radius:9px;grid-template-columns:8px 1fr;gap:5px 7px;padding:9px;display:grid}.week-event i{border-radius:50%;width:8px;height:8px;margin-top:4px}.week-event strong{font-size:12px}.week-event span{color:#637a86;grid-column:2;align-items:center;gap:5px;font-size:10px;display:flex}.week-event span svg{width:12px}.day-view{gap:10px;display:grid}.day-view h2{font-size:22px}.day-view article{cursor:pointer;background:#fff;border:1px solid #dce5e6;border-left:6px solid;border-radius:12px;padding:16px}.day-view article>div{align-items:center;gap:12px;display:flex}.day-view article>div small{color:#708690;min-width:60px}.day-view article>span{color:#5f7580;align-items:center;gap:5px;margin:10px 14px 0 0;font-size:12px;display:inline-flex}.day-view article>span svg{width:14px}.day-view article p{color:#607681;white-space:pre-wrap;font-size:12px}.agenda-view{gap:7px;display:grid}.agenda-view article{cursor:pointer;background:#fff;border:1px solid #dce5e6;border-radius:11px;grid-template-columns:58px 8px 1fr minmax(120px,220px);align-items:center;gap:12px;padding:12px 14px;display:grid}.agenda-view time{text-align:center;flex-direction:column;display:flex}.agenda-view time strong{font-size:22px}.agenda-view time span{text-transform:uppercase;color:#6d828c;font-size:10px}.agenda-view article>i{border-radius:6px;width:8px;height:38px}.agenda-view article>div{display:grid}.agenda-view article>div>strong{font-size:13px}.agenda-view article>div small{color:#71858e;font-size:10px}.agenda-view article>div span{color:#667c87;align-items:center;gap:4px;margin-top:3px;font-size:11px;display:flex}.agenda-view article>div span svg{width:12px}.agenda-view article>em{text-align:right;color:#677e89;font-size:11px;font-style:normal}.calendar-modal-backdrop{z-index:100;background:#152c3b88;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.calendar-modal{background:#fff;border-radius:18px;width:min(650px,96vw);max-height:92vh;padding:22px;overflow:auto;box-shadow:0 24px 70px #102a3d55}.calendar-modal header{justify-content:space-between;align-items:flex-start;margin-bottom:16px;display:flex}.calendar-modal header small{text-transform:uppercase;letter-spacing:.08em;color:#5f7a88;font-size:10px}.calendar-modal header h2{margin:3px 0 0;font-size:23px}.calendar-modal header>button{cursor:pointer;background:#edf3f3;border:0;border-radius:8px;place-items:center;width:34px;height:34px;display:grid}.calendar-modal label{color:#4d6673;gap:5px;margin-bottom:12px;font-size:11px;font-weight:750;display:grid}.calendar-modal input,.calendar-modal textarea,.calendar-modal select{color:#263e4b;width:100%;font:inherit;background:#fff;border:1px solid #cbd9dc;border-radius:8px;padding:10px}.event-date-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.calendar-modal .all-day-check{align-items:center;gap:8px;display:flex}.calendar-modal .all-day-check input{width:auto}.calendar-modal footer{border-top:1px solid #e2e9ea;align-items:center;gap:9px;margin-top:16px;padding-top:14px;display:flex}.calendar-modal footer span{flex:1}.calendar-modal footer button{cursor:pointer;border:0;border-radius:9px;align-items:center;gap:6px;padding:10px 14px;font-weight:750;display:inline-flex}.calendar-modal footer button svg{width:16px}.save-event{color:#fff;background:#38677c}.secondary{color:#3d5f6f;background:#edf3f3}.delete-event{color:#a63c42;background:#fff0f0}.import-modal>p{color:#5e7480;font-size:13px;line-height:1.5}@media (max-width:1100px){.cwp-calendar-shell{grid-template-columns:1fr}.cwp-calendar-side{border-bottom:1px solid #dce5e6;border-right:0;grid-template-columns:180px 1fr 190px;align-items:start;display:grid}.calendar-help{display:none}.calendar-toolbar{grid-template-columns:1fr}.week-grid{grid-template-columns:repeat(7,180px);overflow-x:auto}}@media (max-width:720px){.cwp-calendar-header{padding:0 12px}.cwp-calendar-header>div span{display:none}.cwp-calendar-shell{display:block}.cwp-calendar-side{grid-template-columns:1fr;padding:12px}.calendar-list{grid-template-columns:repeat(2,minmax(0,1fr))}.cwp-calendar-main{padding:10px}.date-controls{flex-wrap:wrap}.date-controls h1{width:100%;margin:4px 0 0}.month-grid{grid-template-columns:repeat(7,minmax(92px,1fr));overflow-x:auto}.month-day{min-height:120px}.calendar-toolbar{gap:9px}.view-tabs{overflow-x:auto}.event-date-grid{grid-template-columns:1fr}.agenda-view article{grid-template-columns:50px 7px 1fr}.agenda-view article>em{display:none}}.event-detail-modal{color:#263e4b;background:#fff;border-radius:13px;width:min(760px,96vw);max-height:94vh;padding:20px 22px;overflow:auto;box-shadow:0 24px 70px #102a3d55}.event-detail-modal>header{align-items:center;gap:12px;margin-bottom:18px;display:flex}.event-detail-modal>header h2{flex:1;margin:0;font-size:22px}.event-detail-modal>header>button{color:#7a8994;cursor:pointer;background:0 0;border:0}.event-detail-modal>header>button svg{width:21px}.event-detail-body{grid-template-columns:1fr 152px;gap:28px;display:grid}.event-detail-body>section{min-width:0}.event-detail-body>aside{align-content:start;gap:8px;display:grid}.detail-row{grid-template-columns:20px max-content 1fr;align-items:center;gap:9px;min-height:38px;font-size:13px;display:grid}.detail-row>svg{color:#81909a;width:14px}.detail-row.muted{color:#71818d}.detail-row>button{color:#0877bd;text-align:left;cursor:pointer;background:0 0;border:0;font-weight:700}.calendar-assignment{align-items:start;margin-top:8px}.calendar-tags{flex-wrap:wrap;gap:5px;display:flex}.calendar-tags b{color:#fff;border-radius:6px;padding:5px 8px;font-size:11px}.calendar-tags .person-tag{background:#111}.detail-description{margin:22px 0}.detail-description label,.detail-attachments label{color:#71818d;margin-bottom:9px;font-size:12px;font-weight:700;display:block}.detail-description p{white-space:pre-wrap;margin:0;font-size:14px;line-height:1.65}.detail-attachments>div:first-child{color:#71818d;align-items:center;gap:8px;display:flex}.detail-attachments svg{width:14px}.detail-attachments button{color:#0877bd;cursor:pointer;background:0 0;border:0;font-weight:700}.detail-attachments>a{color:#263e4b;background:#fafbfb;border-radius:8px;align-items:center;gap:12px;margin-top:7px;padding:10px;text-decoration:none;display:flex}.detail-attachments>a>span{background:#eef1f2;border-radius:5px;place-items:center;width:52px;height:52px;display:grid}.detail-attachments>a strong{font-size:12px;display:grid}.detail-attachments>a small{color:#7a8a94;margin-top:4px;font-weight:400}.event-detail-body section>footer{color:#788995;margin-top:20px;font-size:9px}.event-action{color:#243c4a;cursor:pointer;background:#edf0f2;border:0;border-radius:6px;align-items:center;gap:9px;padding:9px 12px;font-weight:750;display:flex}.event-action svg{width:15px}.event-action.edit,.event-action.save{color:#fff;background:#65ce00}.event-action.delete{color:#9b3a3e}.event-title-input{border:1px solid #ccd8dd;border-radius:6px;flex:1;padding:8px 12px;font-size:20px;font-weight:700}.edit-date-row{grid-template-columns:20px 1fr 1fr;align-items:center;gap:10px;margin-bottom:10px;display:grid}.edit-date-row>svg{color:#81909a;width:14px}.edit-date-row label,.edit-field{color:#71818d;font-size:11px;font-weight:700}.edit-date-row input,.edit-field input,.edit-field textarea{color:#263e4b;border:1px solid #ccd8dd;border-radius:7px;width:100%;margin-top:4px;padding:9px;display:block}.edit-mode .all-day-check{align-items:center;gap:8px;margin:8px 0 18px;font-size:12px;font-weight:700;display:flex}.picker-row,.calendar-picker-wrap{position:relative}.calendar-picker-button{width:100%;min-height:40px;color:#263e4b!important;text-align:left!important;background:#fff!important;border:1px solid #ccd8dd!important;border-radius:7px!important;padding:7px!important}.calendar-picker-button span{color:#71818d;margin-top:2px;font-size:10px;display:block}.calendar-picker{z-index:120;background:#fff;border:1px solid #cbd9dc;border-radius:8px;gap:3px;width:310px;max-height:350px;padding:6px;display:grid;position:absolute;top:43px;left:0;overflow:auto;box-shadow:0 10px 30px #18394a33}.calendar-picker>button{color:#fff;text-align:left;cursor:pointer;border:0;border-radius:5px;padding:6px 8px;font-weight:700}.calendar-picker>small{text-transform:uppercase;color:#758994;padding:8px 5px 3px;font-weight:800}.calendar-picker>button.engineer-choice{color:#294655;background:#f0f3f4}.edit-field{margin:15px 0;display:block}.edit-field textarea{resize:vertical}.edit-mode .detail-row{margin:8px 0}@media (max-width:650px){.event-detail-body{grid-template-columns:1fr}.event-detail-body>aside{grid-template-columns:repeat(2,1fr)}.edit-date-row{grid-template-columns:1fr}.edit-date-row>svg{display:none}.calendar-picker{width:min(310px,80vw)}}.calendar-striped{text-shadow:0 1px 1px #0008;overflow:hidden;color:#fff!important;border-radius:4px!important}.calendar-striped strong{color:#fff!important}.calendar-striped small{opacity:.92;margin-top:2px;font-size:9px;display:block;color:#fff!important}.calendar-context-menu{z-index:250;background:#fff;border:1px solid #d5dfe3;border-radius:8px;min-width:150px;padding:6px;position:fixed;box-shadow:0 12px 35px #18394a35}.calendar-context-menu button{color:#294655;text-align:left;cursor:pointer;background:#fff;border:0;border-radius:5px;align-items:center;gap:9px;width:100%;padding:8px 10px;font-size:12px;display:flex}.calendar-context-menu button:hover{background:#eef4f5}.calendar-context-menu button:disabled{opacity:.4;cursor:not-allowed}.calendar-context-menu button svg{width:15px}.calendar-context-menu hr{border:0;border-top:1px solid #e4eaec;margin:4px 0}.calendar-list label{grid-template-columns:18px 12px 1fr!important}.calendar-list label small{display:none}.calendar-list label i{border-radius:3px;width:12px;height:12px}.mini-calendar-title{margin-top:14px}.calendar-picker .engineer-choice{color:#294655!important;background:#fff!important;border:1px solid #e1e7e9!important;border-left-width:8px!important}.month-day .calendar-event{min-height:25px;padding:4px 6px}.week-event.calendar-striped{min-height:50px;padding:8px}.event-detail-modal .calendar-tags b{color:#fff;text-shadow:0 1px 1px #0005}.edit-date-row input[type=date]{font-weight:700}.calendar-help{display:none}
