.my-availability-page,.team-schedule-page{padding:var(--space-6);max-width:1400px;margin:0 auto;min-height:100%;animation:fadeIn .3s ease-out}.availability-page-header{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:var(--space-4);margin-bottom:var(--space-6);padding-bottom:var(--space-5);border-bottom:1px solid var(--color-border)}.availability-title-section h1{font-family:var(--font-family-display);font-size:var(--font-3xl);font-weight:var(--weight-extrabold);margin:0 0 var(--space-2);color:var(--color-text);letter-spacing:-.03em;line-height:1.1}.availability-title-section p{font-family:var(--font-family-display);color:var(--color-text-secondary);font-size:var(--font-md);margin:0;line-height:1.5}.availability-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-sm)}.availability-card-title{font-family:var(--font-family-display);font-size:var(--font-lg);font-weight:var(--weight-bold);letter-spacing:-.01em;color:var(--color-text);margin:0 0 var(--space-4)}.my-availability-content{display:grid;grid-template-columns:400px 1fr;grid-gap:var(--space-6);gap:var(--space-6);align-items:start}@media (max-width:960px){.my-availability-content{grid-template-columns:1fr}}.availability-block-form{display:flex;flex-direction:column;gap:var(--space-4)}.availability-block-form-hint{display:flex;gap:var(--space-2);align-items:flex-start;margin:0;padding:var(--space-3);background:var(--color-info-subtle);border:1px solid color-mix(in srgb,var(--color-info) 25%,transparent);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:var(--font-xs);line-height:1.5}.availability-block-form-hint svg{flex-shrink:0;color:var(--color-info);margin-top:1px}.availability-block-form-notice{margin:0;padding:var(--space-3);background:var(--color-warning-subtle);border:1px solid color-mix(in srgb,var(--color-warning) 28%,transparent);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:var(--font-xs);line-height:1.5}.availability-block-form-row{display:flex;gap:var(--space-3)}.availability-block-form-reason,.availability-block-form-row label{display:flex;flex-direction:column;gap:var(--space-1);flex:1 1;min-width:0}.availability-block-form label>span{font-size:var(--font-xs);font-weight:var(--weight-medium);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.availability-block-form input,.availability-block-form select,.availability-block-form textarea{padding:var(--space-2) var(--space-3);border:1.5px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-family:var(--font-family);font-size:var(--font-sm);line-height:1.5;min-height:38px;width:100%;transition:border-color var(--duration-fast) var(--ease-default),box-shadow var(--duration-fast) var(--ease-default)}.availability-block-form textarea{resize:vertical;min-height:72px}.availability-block-form input:hover:not(:disabled),.availability-block-form select:hover:not(:disabled),.availability-block-form textarea:hover:not(:disabled){border-color:var(--color-border-hover)}.availability-block-form input:focus,.availability-block-form select:focus,.availability-block-form textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-subtle)}.availability-block-form-actions{display:flex;gap:var(--space-2);margin-top:var(--space-1)}.my-availability-list-header{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4)}.my-availability-list-header .availability-card-title{margin-bottom:0}.my-availability-count{color:var(--color-text-secondary);font-size:var(--font-sm);font-weight:var(--weight-medium);white-space:nowrap}.my-availability-filters{margin-bottom:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border)}.my-availability-filters .filter-tabs{margin-bottom:var(--space-2)}.my-availability-filter-fields{align-items:flex-end}.my-availability-filter-field{display:flex;flex-direction:column;gap:var(--space-1);min-width:160px}.my-availability-filter-field span{color:var(--color-text-secondary);font-size:var(--font-xs);font-weight:var(--weight-medium)}.my-availability-pagination{margin-top:var(--space-4)}.availability-block-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.availability-block-list-item{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4);background:var(--color-surface);transition:border-color var(--duration-fast) var(--ease-default),box-shadow var(--duration-fast) var(--ease-default)}.availability-block-list-item:hover{border-color:var(--color-border-hover);box-shadow:var(--shadow-sm)}.availability-block-list-main{display:flex;gap:var(--space-2) var(--space-3);align-items:center;flex-wrap:wrap}.availability-type-badge{display:inline-flex;align-items:center;gap:var(--space-2);padding:2px var(--space-3);border-radius:var(--radius-full);font-size:var(--font-xs);font-weight:var(--weight-semibold);color:var(--badge-color,var(--color-text-secondary));background:color-mix(in srgb,var(--badge-color,var(--color-text-secondary)) 12%,transparent);border:1px solid color-mix(in srgb,var(--badge-color,var(--color-text-secondary)) 28%,transparent);white-space:nowrap}.availability-type-badge:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--badge-color,var(--color-text-secondary));flex-shrink:0}.availability-block-list-date{font-size:var(--font-sm);font-weight:var(--weight-semibold);color:var(--color-text)}.availability-block-list-time{font-size:var(--font-sm);color:var(--color-text-secondary)}.availability-block-list-company-hint{color:var(--color-text-tertiary);font-size:var(--font-xs)}.availability-block-list-reason{margin:var(--space-2) 0 0;font-size:var(--font-sm);color:var(--color-text-secondary);line-height:1.5}.availability-recurrence-row{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3)}.availability-occurrence-count,.availability-recurrence-label{display:inline-flex;align-items:center;min-height:24px;padding:2px var(--space-2);border-radius:var(--radius-sm);font-size:var(--font-xs);font-weight:var(--weight-medium)}.availability-recurrence-label{background:var(--color-primary-subtle);color:var(--color-primary)}.availability-occurrence-count,.availability-occurrence-list{background:var(--color-bg-muted);color:var(--color-text-secondary)}.availability-occurrence-list{margin:var(--space-3) 0 0;padding:var(--space-3) var(--space-3) var(--space-3) var(--space-6);border-radius:var(--radius-md);font-size:var(--font-xs)}.availability-occurrence-list li{padding:2px 0}.availability-occurrence-list li span+span{margin-left:var(--space-2);color:var(--color-text-tertiary)}.availability-block-list-actions{margin-top:var(--space-3);display:flex;gap:var(--space-2);align-items:center}.availability-delete-confirm-text{font-size:var(--font-sm);font-weight:var(--weight-medium);color:var(--color-negative)}.availability-block-list-empty{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-10) var(--space-6);border:1.5px dashed var(--color-border);border-radius:var(--radius-md);text-align:center}.availability-block-list-empty svg{color:var(--color-text-tertiary);margin-bottom:var(--space-2)}.availability-block-list-empty-title{font-size:var(--font-sm);font-weight:var(--weight-semibold);color:var(--color-text-secondary)}.availability-block-list-empty-caption{font-size:var(--font-xs);color:var(--color-text-muted)}.team-schedule-controls{display:flex;gap:var(--space-3);align-items:center;flex-wrap:wrap}.team-schedule-date-input{padding:var(--space-2) var(--space-3);border:1.5px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-family:var(--font-family);font-size:var(--font-sm);min-height:38px;transition:border-color var(--duration-fast) var(--ease-default),box-shadow var(--duration-fast) var(--ease-default)}.team-schedule-date-input:hover{border-color:var(--color-border-hover)}.team-schedule-date-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-subtle)}.team-schedule-view-tabs{display:inline-flex;gap:2px;padding:3px;background:var(--color-bg-muted);border:1px solid var(--color-border);border-radius:var(--radius-md)}.team-schedule-view-tab{padding:var(--space-1) var(--space-4);min-height:30px;border:none;background:transparent;border-radius:calc(var(--radius-md) - 3px);font-family:var(--font-family);font-size:var(--font-sm);font-weight:var(--weight-medium);color:var(--color-text-secondary);cursor:pointer;transition:all var(--duration-fast) var(--ease-default)}.team-schedule-view-tab:hover{color:var(--color-text)}.team-schedule-view-tab.active{background:var(--color-surface);color:var(--color-primary);font-weight:var(--weight-semibold);box-shadow:var(--shadow-sm)}.team-schedule-loading{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-16) var(--space-6);color:var(--color-text-muted);font-size:var(--font-sm)}.team-schedule-loading:before{content:"";width:28px;height:28px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:availability-spin .8s linear infinite}@keyframes availability-spin{to{transform:rotate(1turn)}}.team-schedule-error{justify-content:center;gap:var(--space-3);padding:var(--space-4);background:var(--color-negative-subtle);border:1px solid color-mix(in srgb,var(--color-negative) 30%,transparent);border-radius:var(--radius-md);color:var(--color-negative);font-size:var(--font-sm);font-weight:var(--weight-medium)}.team-schedule-error,.team-schedule-filter-row{display:flex;align-items:center;margin-bottom:var(--space-4)}.team-schedule-filter-row{flex-wrap:wrap;gap:var(--space-2) var(--space-4)}.team-schedule-busy-toggle{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-surface);font-size:var(--font-xs);font-weight:var(--weight-medium);color:var(--color-text-secondary);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:all var(--duration-fast) var(--ease-default)}.team-schedule-busy-toggle:hover{border-color:var(--color-border-hover)}.team-schedule-busy-toggle.active{border-color:var(--color-primary);background:var(--color-primary-subtle);color:var(--color-primary)}.team-schedule-busy-toggle input{accent-color:var(--color-primary);margin:0}.team-schedule-filter{position:relative;display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2)}.team-schedule-filter-chip{display:inline-flex;align-items:center;border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-surface);overflow:hidden;transition:border-color var(--duration-fast) var(--ease-default)}.team-schedule-filter-chip:hover{border-color:var(--color-border-hover)}.team-schedule-filter-chip.active{border-color:var(--color-primary);background:var(--color-primary-subtle)}.team-schedule-filter-chip-apply{border:none;background:transparent;padding:var(--space-1) var(--space-2) var(--space-1) var(--space-3);font-family:var(--font-family);font-size:var(--font-xs);font-weight:var(--weight-semibold);color:var(--color-text-secondary);cursor:pointer}.team-schedule-filter-chip.active .team-schedule-filter-chip-apply{color:var(--color-primary)}.team-schedule-filter-chip-delete{border:none;background:transparent;padding:var(--space-1) var(--space-2) var(--space-1) 0;font-size:var(--font-sm);line-height:1;color:var(--color-text-tertiary);cursor:pointer}.team-schedule-filter-chip-delete:hover{color:var(--color-negative)}.team-schedule-filter-panel{position:absolute;top:calc(100% + var(--space-2));left:0;z-index:var(--z-dropdown);width:300px;display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg)}.team-schedule-filter-input{width:100%;padding:var(--space-1) var(--space-2);border:1.5px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font-family:var(--font-family);font-size:var(--font-sm);min-height:32px}.team-schedule-filter-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-subtle)}.team-schedule-filter-list{max-height:280px;overflow-y:auto;display:flex;flex-direction:column}.team-schedule-filter-option{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:var(--font-sm);color:var(--color-text);cursor:pointer}.team-schedule-filter-option:hover{background:var(--color-bg-muted)}.team-schedule-filter-option input{accent-color:var(--color-primary)}.team-schedule-filter-no-match{padding:var(--space-3);text-align:center;font-size:var(--font-xs);color:var(--color-text-muted)}.team-schedule-filter-footer{display:flex;gap:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--color-border)}.team-schedule-filter-empty{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-10) var(--space-6);border:1.5px dashed var(--color-border);border-radius:var(--radius-lg);color:var(--color-text-muted);font-size:var(--font-sm)}.availability-legend{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-5);align-items:center;padding:var(--space-3) var(--space-4);margin-bottom:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);font-size:var(--font-xs);color:var(--color-text-secondary)}.availability-legend-blocks,.availability-legend-types{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4)}.availability-legend-item{display:inline-flex;align-items:center;gap:var(--space-2);font-weight:var(--weight-medium);white-space:nowrap}.availability-legend-item strong{color:var(--color-text);font-weight:var(--weight-bold)}.availability-legend-swatch{width:10px;height:10px;border-radius:3px;display:inline-block;flex-shrink:0;box-shadow:inset 0 0 0 1px rgba(0,0,0,.08)}.availability-legend-note{width:100%;font-style:italic}.availability-company-time-label,.availability-legend-note{color:var(--color-text-muted);font-weight:var(--weight-medium)}.availability-company-time-label{display:inline-flex;align-items:center;gap:var(--space-2);margin-left:auto;padding:var(--space-1) var(--space-3);background:var(--color-bg-muted);border-radius:var(--radius-full);white-space:nowrap}.availability-company-time-label svg{flex-shrink:0}.availability-grid-card{--name-col:200px;--availability-gridline:var(--color-border);--availability-day-divider:#64748b;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.dark .availability-grid-card{--availability-day-divider:#71717a}.availability-day-header-name,.availability-month-header-name,.availability-week-header-name{display:flex;align-items:flex-end;padding:var(--space-2) var(--space-3);font-size:var(--font-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-tertiary)}.availability-employee-cell{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);min-width:0}.availability-employee-avatar{width:26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:10px;font-weight:var(--weight-bold);letter-spacing:.02em;flex-shrink:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.availability-employee-name{font-size:var(--font-sm);font-weight:var(--weight-medium);color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.availability-tooltip{position:fixed;z-index:var(--z-popover);pointer-events:none;background:#1e293b;color:#f8fafc;padding:var(--space-3);border-radius:var(--radius-md);font-size:var(--font-xs);line-height:1.45;min-width:180px;max-width:280px;box-shadow:var(--shadow-lg)}.dark .availability-tooltip{background:#27272a;border:1px solid var(--color-border)}.availability-tooltip-date{font-size:10px;font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.05em;color:#94a3b8;padding-bottom:var(--space-2);margin-bottom:var(--space-2);border-bottom:1px solid hsla(0,0%,100%,.15);white-space:nowrap}.availability-tooltip-item+.availability-tooltip-item{margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid hsla(0,0%,100%,.15)}.availability-tooltip-employee,.availability-tooltip-label{font-weight:var(--weight-semibold)}.availability-tooltip-employee{color:#f8fafc}.availability-tooltip-employee+.availability-tooltip-label{margin-top:2px}.availability-tooltip-time{color:#cbd5e1;margin-top:1px}.availability-tooltip-reason{color:#94a3b8;margin-top:2px}.availability-day-header,.availability-day-row{display:grid;grid-template-columns:var(--name-col) 1fr;align-items:stretch}.availability-day-header{background:var(--color-bg-muted);border-bottom:1px solid var(--color-border)}.availability-day-header-slots{display:grid;grid-template-columns:repeat(9,1fr);align-items:end}.availability-day-header-slot{font-size:var(--font-xs);font-weight:var(--weight-medium);color:var(--color-text-tertiary);padding:var(--space-2) 0 var(--space-2) var(--space-2);border-left:1px solid var(--availability-gridline);white-space:nowrap;overflow:hidden}.availability-day-row{transition:background var(--duration-fast) var(--ease-default)}.availability-day-row+.availability-day-row{border-top:1px solid var(--availability-gridline)}.availability-day-row:hover{background:var(--color-row-hover)}.availability-day-row-track{position:relative;min-height:44px;background-image:linear-gradient(to right,var(--availability-gridline) 1px,transparent 1px);background-size:calc(100% / 9) 100%}.availability-block{position:absolute;top:0;bottom:0;border-radius:0;cursor:pointer;min-width:4px;box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.2);transition:filter var(--duration-fast) var(--ease-default),box-shadow var(--duration-fast) var(--ease-default)}.availability-block:hover{filter:brightness(1.08) saturate(1.05);box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.35),var(--shadow-md);z-index:5}.availability-week-header,.availability-week-row{display:grid;grid-template-columns:var(--name-col) repeat(var(--day-count,6),1fr);align-items:stretch}.availability-week-header{background:var(--color-bg-muted);border-bottom:1px solid var(--color-border)}.availability-week-header-date{display:flex;flex-direction:column;justify-content:flex-end;border-left:1px solid var(--availability-day-divider);padding-top:var(--space-2)}.availability-week-header-weekday{text-align:center;font-size:var(--font-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary)}.availability-week-header-day{text-align:center;font-size:var(--font-xs);color:var(--color-text-tertiary);margin-bottom:var(--space-1)}.availability-week-header-blocks{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px dashed var(--availability-gridline)}.availability-week-header-block-key{text-align:center;padding:2px 0;font-size:10px;font-weight:var(--weight-medium);color:var(--color-text-tertiary)}.availability-week-row{transition:background var(--duration-fast) var(--ease-default)}.availability-week-row+.availability-week-row{border-top:1px solid var(--availability-gridline)}.availability-week-row:hover{background:var(--color-row-hover)}.availability-week-cell{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid var(--availability-day-divider)}.availability-week-mini-timeline{position:relative;min-height:42px}.availability-week-mini-timeline+.availability-week-mini-timeline{border-left:1px dashed var(--availability-gridline)}.availability-week-segment{position:absolute;top:0;bottom:0;border-radius:0;min-width:3px;box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.2)}.availability-month-view{--month-cols:27}.availability-month-header,.availability-month-row{display:grid;grid-template-columns:var(--name-col) repeat(var(--month-cols),minmax(22px,1fr));align-items:stretch}.availability-month-header{background:var(--color-bg-muted);border-bottom:1px solid var(--color-border)}.availability-month-header-day{display:flex;align-items:flex-end;justify-content:center;padding:var(--space-2) 0;font-size:var(--font-xs);font-weight:var(--weight-medium);color:var(--color-text-tertiary);border-left:1px solid var(--availability-gridline)}.availability-month-row{transition:background var(--duration-fast) var(--ease-default)}.availability-month-row+.availability-month-row{border-top:1px solid var(--availability-gridline)}.availability-month-row:hover{background:var(--color-row-hover)}.availability-month-row .availability-employee-avatar{width:20px;height:20px;font-size:9px}.availability-month-cell{position:relative;min-height:36px;border-left:1px solid var(--availability-gridline);background:var(--color-bg)}.availability-month-cell.is-blocked{background:#fecaca}.dark .availability-month-cell.is-blocked{background:rgba(127,29,29,.45)}.availability-month-cell.is-week-start,.availability-month-header-day.is-week-start{border-left-color:var(--availability-day-divider)}.availability-month-cell-dots{position:absolute;bottom:3px;left:0;right:0;display:flex;justify-content:center;gap:3px;pointer-events:none}.availability-month-cell-dots i{width:5px;height:5px;border-radius:50%;box-shadow:0 0 0 1px hsla(0,0%,100%,.65)}.team-time-grid-wrap{display:flex;flex-direction:column;gap:var(--space-4);min-width:860px}.team-time-edge-chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}.team-time-edge-day{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-muted);font-size:var(--font-xs)}.team-time-edge-date{font-weight:700;color:var(--color-text-primary)}.team-time-edge-chip,.team-time-edge-more{padding:2px 6px;border-radius:999px;background:var(--color-bg);color:var(--color-text-secondary)}.team-time-grid{display:grid;grid-template-columns:86px repeat(var(--day-count),minmax(180px,1fr));grid-template-rows:52px repeat(18,34px);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;background:var(--color-bg)}.team-time-corner,.team-time-day-head,.team-time-slot-label{background:var(--color-bg-muted)}.team-time-corner{grid-column:1;border-right:1px solid var(--color-border)}.team-time-corner,.team-time-day-head{grid-row:1;border-bottom:1px solid var(--color-border)}.team-time-day-head{display:flex;flex-direction:column;justify-content:center;gap:2px;padding:0 var(--space-3);border-left:1px solid var(--availability-day-divider)}.team-time-day-head span{font-size:var(--font-xs);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em}.team-time-day-head strong{font-size:var(--font-sm);color:var(--color-text-primary)}.team-time-slot-label{display:flex;align-items:flex-start;justify-content:flex-end;padding:4px var(--space-2) 0 0;border-right:1px solid var(--color-border);color:var(--color-text-tertiary);font-size:var(--font-xs)}.team-time-slot-label.is-hour{color:var(--color-text-secondary)}.team-time-day-column{display:grid;grid-template-rows:repeat(18,34px);border-left:1px solid var(--availability-day-divider)}.team-time-slot{min-height:34px;border-bottom:1px solid var(--color-border-subtle);background:var(--color-bg)}.team-time-slot.is-hour{border-top:1px solid var(--color-border)}.team-time-block{align-self:stretch;justify-self:start;z-index:2;min-width:0;margin:2px 0 2px 2px;padding:4px 6px;border:0;border-radius:var(--radius-sm);color:#fff;cursor:default;overflow:hidden;text-align:left;box-shadow:0 1px 3px rgba(15,23,42,.2)}.team-time-block.is-merged{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:4px 8px;text-align:center}.team-time-block-label,.team-time-block-name{display:block;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-time-block-name{font-size:var(--font-xs);font-weight:700}.team-time-block-label{margin-top:1px;font-size:11px;opacity:.9}.team-time-month{display:flex;flex-direction:column;gap:var(--space-2)}.team-time-month-grid,.team-time-month-weekdays{display:grid;grid-template-columns:repeat(6,minmax(140px,1fr));grid-gap:var(--space-2);gap:var(--space-2)}.team-time-month-weekdays span{color:var(--color-text-secondary);font-size:var(--font-xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em}.team-time-month-day{min-height:132px;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text-primary);text-align:left;cursor:pointer}.team-time-month-day:hover{border-color:var(--color-primary);background:var(--color-bg-muted)}.team-time-month-day:disabled{cursor:default;opacity:.42}.team-time-month-day.is-today{box-shadow:inset 0 0 0 2px var(--color-primary)}.team-time-month-day-number{display:block;font-weight:800}.team-time-month-busy-count{display:block;margin-top:2px;color:var(--color-text-secondary);font-size:var(--font-xs)}.team-time-month-previews{display:flex;flex-direction:column;gap:4px;margin-top:var(--space-2)}.team-time-month-preview{display:grid;grid-template-columns:7px auto 1fr;align-items:center;grid-gap:5px;gap:5px;min-width:0;color:var(--color-text-secondary);font-size:var(--font-xs)}.team-time-month-preview i{width:7px;height:7px;border-radius:999px}.team-time-month-preview strong{min-width:0;overflow:hidden;color:var(--color-text-primary);text-overflow:ellipsis;white-space:nowrap}.team-time-month-more{color:var(--color-primary);font-size:var(--font-xs);font-weight:700}.team-time-dialog-backdrop{position:fixed;inset:0;z-index:var(--z-modal-backdrop);display:flex;align-items:center;justify-content:center;padding:var(--space-4);background:rgba(15,23,42,.5);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:team-time-dialog-fade var(--duration-normal) var(--ease-default)}.team-time-dialog{display:flex;flex-direction:column;width:min(760px,100%);max-height:min(820px,92vh);overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-xl);animation:team-time-dialog-rise var(--duration-normal) var(--ease-default)}@keyframes team-time-dialog-fade{0%{opacity:0}to{opacity:1}}@keyframes team-time-dialog-rise{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.team-time-dialog-header{display:flex;flex-shrink:0;align-items:flex-start;justify-content:space-between;gap:var(--space-4);padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-border)}.team-time-dialog-heading h2{margin:0;font-family:var(--font-family-display);font-size:var(--font-xl);font-weight:var(--weight-bold);letter-spacing:-.01em}.team-time-dialog-meta{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-2)}.team-time-dialog-pill{display:inline-flex;align-items:center;padding:2px 10px;border-radius:var(--radius-full);background:var(--color-primary-subtle);color:var(--color-primary);font-size:var(--font-xs);font-weight:var(--weight-semibold)}.team-time-dialog-pill.is-muted{background:var(--color-bg-muted);color:var(--color-text-secondary)}.team-time-dialog-pill.is-free{background:var(--color-positive-subtle);color:var(--color-positive)}.team-time-dialog-close{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;flex-shrink:0;padding:0;border:1.5px solid var(--color-border-hover);border-radius:var(--radius-full);background:var(--color-surface);color:var(--color-text);cursor:pointer;line-height:0;box-shadow:var(--shadow-sm);transition:background var(--duration-fast) var(--ease-default),border-color var(--duration-fast) var(--ease-default),box-shadow var(--duration-fast) var(--ease-default),color var(--duration-fast) var(--ease-default)}.team-time-dialog-close svg{width:18px;height:18px;color:var(--color-text);stroke:currentColor}.team-time-dialog-close:focus-visible,.team-time-dialog-close:hover{background:var(--color-bg-muted);border-color:var(--color-text-secondary);color:var(--color-text);box-shadow:var(--shadow-md)}.team-time-dialog-outside{display:flex;flex-shrink:0;flex-wrap:wrap;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border-bottom:1px solid var(--color-border);background:var(--color-bg-muted)}.team-time-dialog-outside-label{color:var(--color-text-muted);font-size:var(--font-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.04em}.team-time-dialog-outside-chip{display:inline-flex;align-items:center;gap:var(--space-2);padding:2px 10px;border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-surface);color:var(--color-text-secondary);font-size:var(--font-xs)}.team-time-dialog-outside-chip i{width:8px;height:8px;border-radius:var(--radius-full)}.team-time-dialog-body{overflow-y:auto;padding:var(--space-5) var(--space-6) var(--space-6)}.team-time-dialog-grid{display:grid;grid-template-columns:64px 1fr;min-height:560px}.team-time-dialog-hours{position:relative}.team-time-dialog-hours span{position:absolute;right:var(--space-3);transform:translateY(-50%);color:var(--color-text-muted);font-size:var(--font-xs);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.team-time-dialog-canvas{position:relative;border-left:1px solid var(--color-border)}.team-time-dialog-halfline,.team-time-dialog-hourline{position:absolute;right:0;left:0;pointer-events:none}.team-time-dialog-hourline{border-top:1px solid var(--color-border)}.team-time-dialog-halfline{border-top:1px dashed color-mix(in srgb,var(--color-border) 55%,transparent)}.team-time-dialog-event{position:absolute;display:flex;flex-direction:column;gap:1px;min-height:26px;margin-left:3px;padding:var(--space-1) var(--space-2) var(--space-1) 10px;overflow:hidden;border:1px solid color-mix(in srgb,var(--event-color) 35%,transparent);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--event-color) 12%,var(--color-surface));box-shadow:var(--shadow-sm);font-size:var(--font-xs);line-height:1.35;transition:box-shadow var(--duration-fast) var(--ease-default),transform var(--duration-fast) var(--ease-default)}.team-time-dialog-event:before{content:"";position:absolute;top:0;bottom:0;left:0;width:4px;background:var(--event-color)}.team-time-dialog-event:hover{z-index:2;transform:translateY(-1px);box-shadow:var(--shadow-md)}.team-time-dialog-event strong{overflow:hidden;color:var(--color-text);font-weight:var(--weight-semibold);text-overflow:ellipsis;white-space:nowrap}.team-time-dialog-event-time{color:var(--color-text-secondary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.team-time-dialog-event-label{overflow:hidden;color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap}.team-time-dialog-event.is-compact{flex-direction:row;gap:var(--space-2);align-items:center}.team-time-dialog-event.is-compact .team-time-dialog-event-label{display:none}.team-time-dialog-now{position:absolute;right:0;left:0;z-index:3;border-top:2px solid var(--color-negative);pointer-events:none}.team-time-dialog-now i{position:absolute;top:-5px;left:-4px;width:8px;height:8px;border-radius:var(--radius-full);background:var(--color-negative)}.team-time-dialog-empty{display:flex;flex-direction:column;gap:var(--space-1);align-items:center;justify-content:center;min-height:320px;color:var(--color-text-secondary);text-align:center}.team-time-dialog-empty-icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;margin-bottom:var(--space-2);border-radius:var(--radius-full);background:var(--color-positive-subtle);color:var(--color-positive)}.team-time-dialog-empty-icon svg{width:24px;height:24px}.team-time-dialog-empty strong{color:var(--color-text);font-size:var(--font-md)}@media (max-width:900px){.availability-grid-card{overflow-x:auto}.availability-day-view,.availability-week-view{min-width:720px}.availability-month-view{min-width:900px}.availability-page-header,.team-schedule-controls{flex-direction:column;align-items:stretch}.availability-block-form-row{flex-direction:column}}.my-profile-page{padding:var(--space-6);max-width:1400px;margin:0 auto;min-height:100%;animation:fadeIn .3s ease-out}.my-profile-header-person{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4) var(--space-2) var(--space-2);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.my-profile-avatar{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-hover));color:var(--color-primary-contrast);font-family:var(--font-family-display);font-size:var(--font-sm);font-weight:var(--weight-bold);letter-spacing:.02em;flex-shrink:0}.my-profile-header-identity{display:flex;flex-direction:column;gap:1px;color:var(--color-text);font-size:var(--font-sm);font-weight:var(--weight-semibold);line-height:1.3;min-width:0}.my-profile-header-identity small{color:var(--color-text-secondary);font-size:var(--font-xs);font-weight:var(--weight-medium)}.my-profile-form{display:flex;flex-direction:column;gap:var(--space-5)}.my-profile-form-hint{display:flex;gap:var(--space-2);align-items:flex-start;margin:0;padding:var(--space-3);background:var(--color-info-subtle);border:1px solid color-mix(in srgb,var(--color-info) 25%,transparent);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:var(--font-sm);line-height:1.5}.my-profile-form-hint svg{flex-shrink:0;color:var(--color-info);margin-top:2px}.my-profile-card{display:flex;flex-direction:column;gap:var(--space-5)}.my-profile-card-header{display:flex;align-items:flex-start;gap:var(--space-3);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border)}.my-profile-card-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-md);background:var(--color-primary-subtle);color:var(--color-primary);flex-shrink:0}.my-profile-card .availability-card-title{margin-bottom:0}.my-profile-card-caption{margin:2px 0 0;color:var(--color-text-secondary);font-size:var(--font-sm);line-height:1.4}.my-profile-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--space-4);gap:var(--space-4)}.my-profile-form-grid--thirds{grid-template-columns:repeat(3,minmax(0,1fr))}.my-profile-field{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.my-profile-field--full{grid-column:1/-1}.my-profile-field--reveal{animation:fadeIn .25s ease-out}.my-profile-field>span{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--font-xs);font-weight:var(--weight-medium);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.my-profile-field-lock{color:var(--color-text-muted)}.my-profile-field input,.my-profile-field select,.my-profile-field textarea{width:100%;min-height:38px;padding:var(--space-2) var(--space-3);border:1.5px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-family:var(--font-family);font-size:var(--font-sm);line-height:1.5;transition:border-color var(--duration-fast) var(--ease-default),box-shadow var(--duration-fast) var(--ease-default)}.my-profile-field input::placeholder,.my-profile-field textarea::placeholder{color:var(--color-text-muted)}.my-profile-field input[readonly]{background:var(--color-bg-muted);color:var(--color-text-secondary)}.my-profile-field textarea{min-height:88px;resize:vertical}.my-profile-field input:hover:not(:disabled):not([readonly]),.my-profile-field select:hover:not(:disabled),.my-profile-field textarea:hover:not(:disabled):not([readonly]){border-color:var(--color-border-hover)}.my-profile-field input:focus,.my-profile-field select:focus,.my-profile-field textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-subtle)}.my-profile-field input[aria-invalid=true],.my-profile-field select[aria-invalid=true],.my-profile-field textarea[aria-invalid=true]{border-color:var(--color-negative)}.my-profile-field-error{color:var(--color-negative);font-size:var(--font-xs);line-height:1.4}.my-profile-fieldset{display:flex;flex-direction:column;gap:var(--space-3);margin:0;padding:0;border:none;min-width:0}.my-profile-fieldset+.my-profile-fieldset{border-top:1px solid var(--color-border);padding-top:var(--space-4)}.my-profile-legend{display:flex;align-items:center;gap:var(--space-2);padding:0;color:var(--color-text);font-size:var(--font-md);font-weight:var(--weight-semibold)}.my-profile-optional-pill{padding:1px var(--space-2);border-radius:var(--radius-full,999px);background:var(--color-bg-muted);color:var(--color-text-secondary);font-size:var(--font-xs);font-style:normal;font-weight:var(--weight-medium);text-transform:uppercase;letter-spacing:.05em}.my-profile-actions{position:-webkit-sticky;position:sticky;bottom:var(--space-3);z-index:5;display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-6);padding:var(--space-3) var(--space-4);background:color-mix(in srgb,var(--color-surface) 92%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.my-profile-actions-status{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--color-text-secondary);font-size:var(--font-sm);min-height:1em}.my-profile-dirty-dot{width:8px;height:8px;border-radius:50%;background:var(--color-warning);animation:my-profile-pulse 1.6s ease-in-out infinite}@keyframes my-profile-pulse{0%,to{opacity:1}50%{opacity:.4}}.my-profile-actions-buttons{display:flex;gap:var(--space-2)}.my-profile-loading{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-16) var(--space-6);color:var(--color-text-muted);font-size:var(--font-sm)}.my-profile-loading:before{content:"";width:28px;height:28px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:my-profile-spin .8s linear infinite}@keyframes my-profile-spin{to{transform:rotate(1turn)}}.my-profile-empty-state{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text-secondary);padding:var(--space-6);box-shadow:var(--shadow-sm)}@media (max-width:960px){.my-profile-form-grid,.my-profile-form-grid--thirds{grid-template-columns:1fr}.my-profile-header-person{align-self:stretch}.my-profile-actions{flex-direction:column-reverse;align-items:stretch}.my-profile-actions-status{justify-content:center}.my-profile-actions-buttons{flex-direction:column-reverse;align-items:stretch}}