/* Scoped calendar surfaces: the rest of Work keeps its existing visual system. */
.team-calendar{color-scheme:light;background:#fafaf9;color:#1d242e;border:1px solid #dfe2e5;border-radius:10px;overflow:hidden;box-shadow:0 10px 35px #0002;font-size:13px}
.team-calendar button,.cal-drawer button,.cal-editor button{font-family:inherit;cursor:pointer}.team-calendar button:disabled{cursor:default;opacity:.35}.cal-toolbar{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding:22px 24px 14px;background:#fff}.cal-month-control{display:flex;align-items:center;gap:8px}.cal-month-control h2{margin:0 8px;font-size:22px;letter-spacing:-.04em;min-width:143px;color:#20252c;white-space:nowrap}.cal-icon{border:1px solid #e0e3e7;border-radius:5px;background:#fff;color:#38414d;width:30px;height:32px;font-size:23px;line-height:1}.cal-button,.cal-create{padding:9px 13px;border:1px solid #d8dde2;border-radius:5px;background:white;color:#354050;font-size:12px;white-space:nowrap}.cal-button:hover,.cal-icon:hover{background:#f3f4f6}.cal-create{background:#e9763a;border-color:#e9763a;color:#19120e;font-weight:700}.cal-actions{display:flex;gap:8px;margin-left:auto}.cal-filters{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.cal-filters select{font:inherit;font-size:12px;max-width:150px;border:1px solid #d8dde2;background:#fff;color:#354050;border-radius:5px;padding:8px 25px 8px 10px;min-height:34px}.cal-view-switch{display:flex;border:1px solid #d8dde2;border-radius:5px;padding:2px;background:#f5f6f7}.cal-view-switch button{border:0;border-radius:3px;background:transparent;padding:6px 10px;color:#727b87;font-size:11px}.cal-view-switch button.active{background:#fff;color:#1d2734;box-shadow:0 1px 3px #0002}.cal-meta{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 24px 17px;background:#fff}.cal-legend{display:flex;gap:8px 15px;flex-wrap:wrap}.cal-legend>span{display:inline-flex;gap:6px;align-items:center;color:#5d6570;font-size:11px}.cal-legend i{width:7px;height:7px;border-radius:2px;flex-shrink:0}.cal-sync{border:0;background:transparent;color:#86909c;font-size:10px;padding:6px 0;white-space:nowrap;text-align:right}.cal-sync.is-error{color:#b13920;white-space:normal}.cal-weekdays,.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.cal-weekdays{border-top:1px solid #e1e5e8;background:#f5f6f7;border-bottom:1px solid #e1e5e8}.cal-weekdays span{padding:12px;text-align:right;color:#7a838d;font-size:11px}.cal-weekdays span:nth-child(n+6){color:#9b827a}.cal-day{position:relative;min-width:0;min-height:143px;padding:9px 7px;background:#fff;border-right:1px solid #e6e8eb;border-bottom:1px solid #e6e8eb;cursor:cell}.cal-day:nth-child(7n){border-right:0}.cal-day.weekend{background:#f7f8fa}.cal-day.outside{background:#f2f3f5}.cal-day.outside .cal-date{color:#a5abb4}.cal-day.selected{box-shadow:inset 0 0 0 1px #d0d7e2}.cal-day.today{background:#fffaf5}.cal-day-head{display:flex;align-items:center;gap:5px;margin-bottom:8px;min-height:25px}.cal-date{background:transparent;border:0;color:#394452;font-weight:600;font-size:13px;min-width:26px;min-height:26px;border-radius:5px;padding:3px 5px}.cal-date small{font-size:9px;font-weight:400;margin-left:3px}.today .cal-date{color:#fff;background:#c65f2e}.cal-today-label{font-size:9px;color:#bc693e}.cal-day-add{margin-left:auto;border:0;background:transparent;color:#939ca7;font-size:20px;line-height:1;min-width:26px;height:26px;border-radius:4px}.cal-day .cal-day-add{opacity:0}.cal-day:hover .cal-day-add,.cal-day:focus-within .cal-day-add{opacity:1}.cal-day-add:hover{background:#e9edf1;color:#253446}.cal-day-events{display:grid;gap:5px}.cal-event{width:100%;display:flex;align-items:center;gap:4px;min-width:0;text-align:left;border:0;border-left:3px solid var(--employee-color);background:#edf1f8;background:color-mix(in srgb,var(--employee-color) 11%,white);border-radius:3px;padding:6px 5px;color:#202c3c;font-size:11px;line-height:1.45}.cal-event:hover{filter:brightness(.96)}.cal-event-name{font-weight:700;white-space:nowrap;max-width:48px;overflow:hidden;text-overflow:ellipsis}.cal-event-type{opacity:.6;white-space:nowrap;font-size:10px}.cal-event-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.cal-more{border:0;background:transparent;color:#6e7886;font-size:10px;padding:6px 5px}.cal-more:hover{color:#cc6330}.cal-bottom{padding:12px 24px;color:#929aa4;font-size:10px;background:#fbfbfc}.cal-initial{padding:70px;text-align:center;color:#77818e}.cal-agenda{background:#fff;border-top:1px solid #e4e6e9}.cal-agenda-day{display:flex;gap:14px;padding:16px 20px;border-bottom:1px solid #e8ebee;align-items:flex-start}.cal-agenda-day.today{background:#fff9f3}.cal-agenda-date{width:48px;flex-shrink:0}.cal-agenda-date .cal-date{display:flex;flex-direction:column;width:42px;gap:2px;font-size:20px;line-height:1.4}.cal-agenda-date .cal-date small{font-size:10px;margin:0}.cal-agenda-events{flex:1;min-width:0;display:grid;gap:7px}.cal-agenda .cal-event{font-size:12px;padding:10px;gap:9px}.cal-agenda .cal-event-type{font-size:11px}.cal-no-events{font-size:11px;color:#a4aab3;padding:8px 0}
.cal-drawer-back,.cal-editor-back{position:fixed;inset:0;z-index:1200;background:#0005;backdrop-filter:blur(3px);color-scheme:light}.cal-drawer{position:absolute;top:0;right:0;bottom:0;display:flex;flex-direction:column;width:min(460px,100%);background:#f5f6f8;color:#263140;box-shadow:-15px 0 60px #0003;outline:none}.cal-drawer-head{display:flex;justify-content:space-between;align-items:center;padding:29px 26px;background:white;border-bottom:1px solid #e2e5ea}.cal-drawer-head p{font-size:11px;color:#89919e;margin:0 0 7px}.cal-drawer-head h2{font-size:21px;margin:0;letter-spacing:-.03em}.cal-close{background:transparent;border:0;color:#8c949e;font-size:28px;line-height:1;padding:5px 8px;flex-shrink:0}.cal-day-cards{flex:1;overflow:auto;padding:22px;display:flex;flex-direction:column;gap:14px}.cal-detail-card{background:#fff;border:1px solid #e3e7ec;border-left:4px solid var(--employee-color);border-radius:6px;padding:18px}.cal-detail-card.highlighted{box-shadow:0 0 0 2px #edb18e}.cal-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.cal-person{display:inline-flex;align-items:center;gap:7px;font-weight:650;font-size:12px}.cal-person i{display:block;width:8px;height:8px;background:var(--employee-color);border-radius:2px}.cal-kind{font-size:10px;color:#788394;background:#f1f3f6;padding:3px 8px;border-radius:3px}.cal-detail-card h3{font-size:16px;line-height:1.6;margin:14px 0 6px;color:#202d3e;overflow-wrap:anywhere}.cal-period{font-size:11px;color:#8691a0;margin:0}.cal-notes{white-space:pre-wrap;overflow-wrap:anywhere;border-top:1px solid #edf0f3;padding-top:12px;font-size:12px;line-height:1.8;color:#647181;margin-bottom:0}.cal-detail-card footer{display:flex;gap:16px;margin-top:15px}.cal-detail-card footer button{border:0;background:transparent;padding:0;color:#415b83;font-size:11px}.cal-detail-card footer .cal-delete{color:#ae624c}.cal-day-empty{text-align:center;color:#909aaa;font-size:13px;padding:55px 10px}.cal-drawer-foot{background:#fff;border-top:1px solid #e1e6ec;padding:18px 24px}.cal-drawer .btn.primary{width:100%;background:#e9763a;border-color:#e9763a;color:#20150e}.cal-editor-back{z-index:1300;display:flex;align-items:center;justify-content:center;padding:20px}.cal-editor{background:#fff;width:min(480px,100%);max-height:90vh;overflow:auto;border:1px solid #dce1e8;border-radius:10px;padding:25px;color:#263140;box-shadow:0 20px 90px #0005}.cal-editor>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.cal-editor h2{font-size:21px;margin:0}.cal-editor-fields{display:grid;gap:17px}.cal-editor label{font-size:12px;display:grid;gap:7px;font-weight:550;color:#526070}.cal-editor label>span{display:contents;color:#9ba3ae;font-weight:400}.cal-editor .field{color-scheme:light;background:#fff;color:#253448;border:1px solid #d4dae3;min-width:0;width:100%;padding:10px 11px;font:inherit;font-size:13px;border-radius:5px;box-sizing:border-box}.cal-editor .field::placeholder{color:#a3acb8}.cal-editor .field:focus{border-color:#d88050;outline:2px solid #f9e6da;box-shadow:none}.cal-editor textarea{resize:vertical}.cal-date-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.cal-editor footer{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.cal-editor .btn{background:#fff;color:#526070;border-color:#d4dae3}.cal-editor .btn.primary{background:#e9763a;color:#24180f;border-color:#e9763a}.cal-self,.cal-help{font-size:12px;color:#8993a2;line-height:1.7;margin:0}.cal-form-error{font-size:12px;color:#b44728;margin:12px 0 0;line-height:1.6;min-height:0}.cal-form-error:empty{display:none}.cal-color-list{display:grid;gap:0;max-height:45vh;overflow:auto}.cal-color-list label{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:10px 0;border-bottom:1px solid #eef0f4}.cal-color-list input[type=color]{width:48px;height:30px;border:1px solid #dfe3e8;border-radius:4px;background:white;padding:2px;cursor:pointer}.cal-palette{display:flex;gap:6px}.cal-palette i{height:12px;flex:1;border-radius:2px}.team-calendar button:focus-visible,.cal-drawer button:focus-visible,.cal-editor button:focus-visible{outline:2px solid #d16f39;outline-offset:2px}
@media(max-width:1200px){.cal-toolbar{gap:12px}.cal-filters{order:3;width:100%}.cal-event-name{max-width:35px}.cal-event-type{display:none}.cal-day{min-height:132px}.cal-month-control h2{font-size:20px}}
@media(max-width:700px){.cal-toolbar{padding:16px 12px 12px;gap:12px}.cal-month-control{gap:4px;flex:1}.cal-month-control h2{font-size:18px;min-width:116px;margin:0 2px}.cal-icon{width:25px;height:29px}.cal-button{font-size:11px;padding:7px 9px}.cal-actions{width:100%;justify-content:flex-end;order:4}.cal-create{margin-left:auto}.cal-filters{gap:6px}.cal-filters select{flex:1;min-width:0;max-width:none;width:100px}.cal-view-switch button{padding:6px 8px}.cal-meta{padding:0 12px 12px;flex-direction:column;align-items:flex-start;gap:7px}.cal-legend{gap:6px 12px}.cal-legend span{font-size:10px}.cal-sync{text-align:left;font-size:9px}.cal-body{overflow-x:auto}.cal-weekdays,.cal-grid{min-width:680px}.cal-day .cal-day-add{opacity:1}.cal-agenda-day{padding:14px 12px;gap:10px}.cal-agenda .cal-event{font-size:11px;gap:6px;padding:9px 7px}.cal-agenda .cal-event-name{max-width:55px}.cal-agenda .cal-event-type{display:inline;font-size:10px}.cal-agenda .cal-event-title{white-space:normal;overflow-wrap:anywhere}.cal-bottom{padding:11px 12px;line-height:1.7}.cal-drawer-head{padding:25px 20px}.cal-day-cards{padding:17px}.cal-editor-back{padding:12px}.cal-editor{padding:20px;max-height:94vh}.cal-date-fields{gap:8px}.cal-editor .field{font-size:16px}.cal-editor label{font-size:12px}}
@media(max-width:700px){.shell:has(#team-calendar) .side{padding:16px 14px;gap:14px}.shell:has(#team-calendar) .brand{margin-right:72px}.shell:has(#team-calendar) .side-foot{position:absolute;top:14px;right:16px;border:0;padding:0}.shell:has(#team-calendar) .side-foot button{padding:6px 0}.shell:has(#team-calendar) .nav{scrollbar-width:none}.shell:has(#team-calendar) .nav::-webkit-scrollbar{display:none}.shell:has(#team-calendar) .nav button{padding:9px 12px}.shell:has(#team-calendar) .main{padding:24px 12px}.shell:has(#team-calendar) .heading{min-height:0;padding-bottom:18px;margin-bottom:20px}.shell:has(#team-calendar) .heading h1{font-size:25px}}
