.app{display:flex;flex-direction:column;min-height:100vh}.skip-link{position:absolute;top:-40px;left:0;background:var(--color-primary);color:#fff;padding:8px 16px;z-index:1001;text-decoration:none;border-radius:0 0 var(--radius-md) 0;transition:top .2s}.skip-link:focus{top:0;outline:2px solid white;outline-offset:2px}.main{position:relative;flex-grow:1;padding:var(--space-md);padding-bottom:var(--space-lg);max-width:1400px;width:100%;margin:0 auto;display:flex;flex-direction:column;scroll-margin-top:calc(var(--header-height) + var(--space-md))}.welcome{text-align:center;padding:var(--space-lg);color:var(--color-text-muted)}.loading,.error{text-align:center;padding:var(--space-lg)}.error{color:var(--color-error);background-color:#ffebee;border-radius:var(--radius-md);margin-bottom:var(--space-sm)}.search-container,.list-toolbar{display:flex;gap:var(--space-sm);margin-bottom:var(--space-md)}.list-toolbar{justify-content:flex-end}.search-input{flex:1;min-width:0;padding:.75rem var(--space-sm);font-size:var(--font-size-body);border:2px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-card);transition:border-color .2s}.search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #0078d433}.search-input::placeholder{color:#767676}.search-autocomplete{position:relative;flex:1;min-width:0}.search-autocomplete .search-input{width:100%}.search-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:var(--color-card);border:2px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 4px 12px #00000026;z-index:100;overflow:hidden}.search-suggestions{list-style:none;padding:0;margin:0;max-height:240px;overflow-y:auto}.show-hidden-checkbox{display:flex;align-items:center;gap:.5rem;padding:.6rem var(--space-sm);font-size:var(--font-size-small);color:var(--color-text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .15s}.search-suggestions+.show-hidden-checkbox{border-top:1px solid var(--color-border)}.show-hidden-checkbox:hover{background-color:#0078d40d}.show-hidden-checkbox input[type=checkbox]{cursor:pointer;accent-color:var(--color-primary)}.suggestion-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem var(--space-sm);cursor:pointer;transition:background-color .15s}.suggestion-item:hover,.suggestion-item.selected{background-color:#0078d41a}.suggestion-label{font-weight:500}.suggestion-prefix{color:var(--color-primary);font-family:monospace}.suggestion-flag{margin:0 .25rem}.suggestion-value{color:var(--color-text)}.suggestion-description{font-size:var(--font-size-small);color:var(--color-text-muted)}.vacation-badge{display:inline-block;padding:.125rem .5rem;border-radius:10px;background-color:#fef3c7;color:#92400e;font-size:var(--font-size-small);font-weight:500;vertical-align:middle}.suggestion-label .group-badge{display:inline-block;padding:.125rem .5rem;border-radius:10px;background-color:#e8eaf6;color:#3949ab;font-size:var(--font-size-small);font-weight:500;vertical-align:middle;border:none}.department-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:.75rem}.department-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem var(--space-sm);border:2px solid;border-radius:var(--radius-md);transition:all .2s;cursor:pointer;-webkit-user-select:none;user-select:none}.department-item:hover,.department-item:focus-visible{filter:brightness(.95)}.department-item:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.department-item.active{background-color:var(--color-primary)!important;border-color:var(--color-primary)!important;color:#fff!important}.department-name{font-weight:500}.department-item.active .department-name{color:#fff!important}.department-count{font-weight:600;padding:.25rem .75rem;border-radius:12px;font-size:var(--font-size-small)}.department-item.active .department-count{background-color:#ffffff4d!important;color:#fff!important}.summary-stats{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);margin-bottom:var(--space-md);font-size:var(--font-size-small);color:var(--color-text-muted)}.select-mode-btn-small{padding:.25rem .75rem;font-size:var(--font-size-small);font-weight:500;color:var(--color-text-muted);background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;transition:all .15s}.select-mode-btn-small:hover{background:var(--color-bg);color:var(--color-text);border-color:var(--color-text-muted)}.select-mode-btn-small.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.colleagues-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-md)}.colleague-card{background:var(--color-card);border-radius:var(--radius-md);padding:var(--space-md);box-shadow:0 2px 8px #0000001a;transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column;align-items:center;text-align:center}.colleague-card:hover,.colleague-card:focus{transform:translateY(-2px);box-shadow:0 4px 12px #00000026;outline:none}.colleague-card:focus-visible{box-shadow:0 4px 12px #00000026,0 0 0 3px var(--color-primary)}.colleague-avatar{width:100px;height:100px;border-radius:var(--radius-full);overflow:hidden;margin-bottom:var(--space-sm);background-color:#e3f2fd;display:flex;align-items:center;justify-content:center}.colleague-avatar img{width:100%;height:100%;object-fit:cover}.avatar-placeholder{width:100%;height:100%;background:var(--gradient-accent);color:#fff;font-size:2.5rem;font-weight:600;display:flex;align-items:center;justify-content:center}.colleague-info{width:100%}.colleague-info h2{margin-bottom:var(--space-xs)}.job-title{color:var(--color-text-muted);margin-bottom:var(--space-xs)}.department-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:var(--font-size-small);font-weight:500;border:1px solid}.colleague-info .department-badge{margin-top:var(--space-xs)}.user-groups{display:flex;flex-wrap:wrap;justify-content:center;gap:.25rem;margin-top:var(--space-xs);max-width:100%}.group-badge{display:inline-block;padding:.125rem .5rem;border-radius:10px;font-size:.7rem;font-weight:500;background-color:#e8eaf6;color:#3949ab;border:1px solid #c5cae9;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.group-badge-more{background-color:#f5f5f5;color:#757575;border-color:#e0e0e0}.colleague-actions{display:flex;justify-content:center;align-items:center;margin-top:var(--space-sm);gap:.75rem}.action-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;text-decoration:none;border-radius:var(--radius-full);border:none;cursor:pointer;transition:all .2s;font-size:22px}.email-btn{background-color:var(--color-primary);color:#fff}.email-btn:hover,.email-btn:focus-visible{background-color:var(--color-primary-hover)}.teams-btn{background-color:#6264a7;color:#fff}.teams-btn:hover,.teams-btn:focus-visible{background-color:#5557a0}.call-btn{background-color:var(--color-success);color:#fff}.call-btn:hover,.call-btn:focus-visible{background-color:#0e6b0e}.action-btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@media(max-width:768px){.main{padding:0;padding-top:var(--space-sm);padding-bottom:var(--space-md)}.search-container,.list-toolbar,.department-list,.summary-stats{padding:0 var(--space-sm)}.colleagues-grid{grid-template-columns:1fr;padding:0 var(--space-sm)}.loading,.error,.welcome,.no-results{margin:0 var(--space-sm)}}.header{position:sticky;top:0;z-index:100;height:var(--header-height);background:#fff;border-bottom:1px solid var(--color-border)}.header-content{height:100%;max-width:1600px;margin:0 auto;padding:0 var(--space-sm);display:flex;align-items:center;gap:var(--space-sm)}.header-logo{display:flex;align-items:center;text-decoration:none;color:var(--color-text);flex-shrink:0}.header-logo-img{height:36px;width:auto}.header-search{flex:1;max-width:500px;min-width:200px}.header-search .search-autocomplete{width:100%}.header-search .search-input{width:100%;height:40px}.header-right{display:flex;align-items:center;gap:var(--space-sm);flex-shrink:0;margin-left:auto}.header-nav{display:flex;align-items:center;gap:.25rem;background:var(--color-bg);padding:.25rem;border-radius:var(--radius-md)}.header-nav-link{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);color:var(--color-text-muted);text-decoration:none;font-size:var(--font-size-small);font-weight:500;border-radius:6px;transition:all .15s}.header-nav-link svg{font-size:22px}.header-nav-link:hover,.header-nav-link:focus-visible{background:#fff;color:var(--color-text);text-decoration:none}.header-nav-link:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.header-nav-link.active{background:#fff;color:var(--color-primary);box-shadow:0 1px 3px #0000001a}.header-user{display:flex;align-items:center;gap:var(--space-xs)}.header-login-btn{padding:var(--space-xs) 1.25rem;background:var(--color-primary);border:none;border-radius:6px;color:#fff;font-size:var(--font-size-small);font-weight:600;cursor:pointer;transition:all .15s}.header-login-btn:hover,.header-login-btn:focus-visible{background:var(--color-primary-hover)}.header-login-btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.user-menu{position:relative}.user-menu-trigger{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;background:transparent;border:2px solid transparent;border-radius:var(--radius-full);cursor:pointer;transition:all .15s}.user-menu-trigger:hover,.user-menu-trigger:focus-visible{border-color:var(--color-primary)}.user-menu-trigger:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.user-menu-avatar{width:36px;height:36px;border-radius:var(--radius-full);object-fit:cover}.user-menu-avatar--placeholder{display:flex;align-items:center;justify-content:center;background:var(--gradient-accent);color:#fff;font-size:.875rem;font-weight:600}.user-menu-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:200px;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 4px 20px #00000026;overflow:hidden;z-index:200;animation:menuFadeIn .15s ease-out}@keyframes menuFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.user-menu-header{padding:var(--space-sm);border-bottom:1px solid var(--color-border);background:var(--color-bg)}.user-menu-name{font-weight:600;color:var(--color-text);font-size:var(--font-size-body);display:block}.user-menu-role{font-size:var(--font-size-small);color:var(--color-text-muted);display:block;margin-top:2px}.user-menu-role-link{color:var(--color-primary);text-decoration:none}.user-menu-role-link:hover{text-decoration:underline}.user-menu-footer{padding:var(--space-sm);border-top:1px solid var(--color-border);background:var(--color-bg)}.api-status-row{display:flex;align-items:center;gap:var(--space-xs);padding:2px 0}.api-status-dot{width:8px;height:8px;border-radius:var(--radius-full);flex-shrink:0}.api-status-dot--online{background-color:#10b981}.api-status-dot--offline{background-color:#ef4444}.api-status-dot--unknown{background-color:#9ca3af}.api-status-dot--not_configured{background-color:transparent;border:1.5px solid #d1d5db}.api-status-row--muted{opacity:.5}.api-status-label{font-size:11px;color:var(--color-text-muted)}.api-warning-banner{display:flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-sm);background:#fef3c7;border-bottom:1px solid #f59e0b;color:#92400e;font-size:var(--font-size-small);font-weight:500}.api-warning-banner svg{font-size:18px;color:#f59e0b;flex-shrink:0}.api-warning-dismiss{display:flex;align-items:center;justify-content:center;padding:4px;margin-left:auto;background:transparent;border:none;border-radius:var(--radius-sm);color:#92400e;cursor:pointer;transition:background-color .15s}.api-warning-dismiss:hover{background:#0000001a}.api-warning-dismiss svg{font-size:16px;color:inherit}.user-menu-item{display:flex;align-items:center;gap:var(--space-sm);width:100%;padding:var(--space-sm);background:transparent;border:none;color:var(--color-text);font-size:var(--font-size-body);text-decoration:none;cursor:pointer;transition:background-color .15s}.user-menu-item svg{font-size:20px;color:var(--color-text-muted)}.user-menu-item:hover,.user-menu-item:focus-visible{background:var(--color-bg)}.user-menu-item:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--color-primary)}@media(max-width:768px){.header-content{padding:0 .75rem}.header-search{min-width:120px}.header-nav-link span{display:none}.header-nav-link{padding:var(--space-xs)}}@media(max-width:500px){.header-logo-img{height:32px}.header-search{min-width:80px}.header-right{gap:var(--space-xs)}.header.search-focused .header-logo,.header.search-focused .header-right{display:none}.header.search-focused .header-search{flex:1;max-width:none;min-width:0}}.footer{background:var(--color-bg);border-top:1px solid var(--color-border);padding:var(--space-md) var(--space-sm)}.footer-content{max-width:1600px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm)}.footer-logo-link{display:flex;align-items:center}.footer-logo{height:48px;width:auto;opacity:.85;transition:opacity .2s}.footer-logo-link:hover .footer-logo,.footer-logo-link:focus .footer-logo{opacity:1}.footer-text{font-size:var(--font-size-small);color:var(--color-text-muted);margin:0}.footer-version{opacity:.7}@media(max-width:480px){.footer-content{flex-direction:column;gap:var(--space-xs);text-align:center}}.back-button{display:inline-flex;align-items:center;gap:var(--space-xs);background-color:#f0f0f0;color:var(--color-text);border:none;padding:.5rem .75rem;border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-small);font-weight:500;margin-bottom:var(--space-md);transition:background-color .2s;align-self:flex-start}.back-button:hover,.back-button:focus-visible{background-color:var(--color-border)}.back-button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.back-button svg{flex-shrink:0;font-size:22px}.back-button-icon svg{font-size:22px}.back-button-icon{display:none;position:absolute;top:var(--space-sm);left:var(--space-sm);width:44px;height:44px;padding:0;align-items:center;justify-content:center;background-color:#fff3;color:#fff;border:none;border-radius:var(--radius-full);cursor:pointer;transition:background-color .2s;z-index:1}.back-button-icon:hover,.back-button-icon:focus-visible{background-color:#ffffff4d}.back-button-icon:focus-visible{outline:2px solid white;outline-offset:2px}@media(max-width:768px){.back-button{margin-left:var(--space-sm)}.back-button-icon{display:flex}.main:has(.back-button-icon)>.back-button{display:none}}.presence-indicator{position:absolute;bottom:2%;left:2%;width:24%;height:24%;min-width:12px;min-height:12px;border-radius:50%;background-color:var(--presence-color);border:2px solid white;pointer-events:none;z-index:2;box-sizing:border-box}.presence-indicator--idle{opacity:.7}.presence-indicator--in-call{animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{box-shadow:0 0 0 0 var(--presence-color)}50%{box-shadow:0 0 0 4px color-mix(in srgb,var(--presence-color) 40%,transparent)}}.presence-indicator--with-icon{display:flex;align-items:center;justify-content:center;color:#fff}.presence-indicator--oof{background-color:#fff;border:2px solid var(--presence-color);box-shadow:0 0 0 2px #fff;display:flex;align-items:center;justify-content:center;color:var(--presence-color)}.presence-indicator__icon{width:65%;height:65%}.avatar-placeholder{width:100%;height:100%;background:var(--gradient-accent);color:#fff;font-size:2rem;font-weight:600;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full)}.colleague-avatar{height:100px;width:100px;border-radius:var(--radius-full);overflow:visible;position:relative}.colleague-avatar img{height:100%;width:100%;object-fit:cover;border-radius:var(--radius-full)}.colleague-avatar .avatar-flag-badge img{width:auto;height:auto;border-radius:0}.photo-grid-item img{width:100%;height:100%;object-fit:cover;border-radius:var(--radius-full)}.avatar-flag-badge{position:absolute;bottom:5%;right:5%;height:18%;min-height:10px;pointer-events:none;z-index:2;display:flex;align-items:center;justify-content:center}.avatar-flag-badge img,.avatar-flag-badge svg{height:100%;width:auto;border-radius:2px!important;border:2px solid white;display:block}.selection-action-bar{position:fixed;bottom:var(--space-lg);left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);padding:var(--space-sm);background:var(--color-card);border-radius:var(--radius-md);box-shadow:0 4px 20px #00000026;border:1px solid var(--color-border);z-index:100;animation:slideUp .2s ease-out}@keyframes slideUp{0%{opacity:0;transform:translate(-50%) translateY(20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.selection-count{font-weight:600;color:var(--color-text);white-space:nowrap}.selection-actions{display:flex;gap:var(--space-sm)}.selection-action-btn{display:inline-flex;align-items:center;gap:.5rem;padding:var(--space-xs) var(--space-md);border-radius:var(--radius-sm);font-weight:500;font-size:var(--font-size-body);cursor:pointer;border:none;transition:all .2s}.selection-action-btn svg{font-size:22px;flex-shrink:0}.selection-action-btn span{white-space:nowrap}.selection-action-btn.email{background-color:var(--color-primary);color:#fff}.selection-action-btn.email:hover:not(:disabled),.selection-action-btn.email:focus-visible:not(:disabled){background-color:var(--color-primary-hover)}.selection-action-btn.email:disabled{background-color:#ccc;cursor:not-allowed}.selection-action-btn.teams{background-color:#6264a7;color:#fff}.selection-action-btn.teams:hover:not(:disabled),.selection-action-btn.teams:focus-visible:not(:disabled){background-color:#5557a0}.selection-action-btn.teams:disabled{background-color:#ccc;cursor:not-allowed}.selection-action-btn.hide{background-color:#dc2626;color:#fff}.selection-action-btn.hide:hover:not(:disabled),.selection-action-btn.hide:focus-visible:not(:disabled){background-color:#b91c1c}.selection-action-btn.hide:disabled{background-color:#ccc;cursor:not-allowed}.selection-action-btn.secondary{background-color:var(--color-bg);color:var(--color-text);border:1px solid var(--color-border)}.selection-action-btn.secondary:hover,.selection-action-btn.secondary:focus-visible{background-color:var(--color-border)}.selection-action-btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.colleague-card.selection-mode{position:relative}.colleague-card.selection-mode .selection-checkbox{position:absolute;top:8px;left:8px;width:24px;height:24px;border-radius:6px;border:2px solid var(--color-border);background:var(--color-card);display:flex;align-items:center;justify-content:center;transition:all .15s;font-size:16px;z-index:3}.colleague-card.selection-mode.selected .selection-checkbox{background-color:var(--color-primary);border-color:var(--color-primary);color:#fff;box-shadow:0 1px 4px #0000001a}.colleague-card.selection-mode:hover .selection-checkbox{border-color:var(--color-primary)}.colleague-card.selection-mode.selected{outline:2px solid var(--color-primary);outline-offset:-2px}.select-mode-btn{padding:.75rem var(--space-md);border-radius:var(--radius-md);font-weight:500;font-size:var(--font-size-body);cursor:pointer;border:2px solid var(--color-border);background-color:var(--color-card);color:var(--color-text);transition:all .2s;white-space:nowrap}.select-mode-btn:hover,.select-mode-btn:focus-visible{background-color:var(--color-bg);border-color:var(--color-primary)}.select-mode-btn.active{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary)}.select-mode-btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@media(max-width:768px){.selection-action-bar{left:var(--space-sm);right:var(--space-sm);transform:none;flex-direction:row;gap:var(--space-sm)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.selection-count{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.selection-actions{flex-shrink:0}.selection-action-btn{padding:var(--space-xs);width:44px;height:44px;justify-content:center}.selection-action-btn span{display:none}}.landing-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#fff;padding:0}.landing-content{max-width:900px;width:100%;text-align:center;padding:var(--space-lg) var(--space-md)}.landing-logo-link{display:inline-block;margin-bottom:var(--space-lg)}.landing-logo{height:80px;width:auto;transition:transform .2s}.landing-logo-link:hover .landing-logo{transform:scale(1.05)}.landing-hero{margin-bottom:60px}.landing-title{font-size:3rem;font-weight:700;color:var(--color-text);margin-bottom:var(--space-sm)}.landing-subtitle{font-size:var(--font-size-h2);color:var(--color-text-muted);margin-bottom:var(--space-lg);font-weight:400}.landing-cta{display:inline-flex;align-items:center;gap:12px;padding:var(--space-sm) var(--space-lg);background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:1.1rem;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s;box-shadow:0 4px 14px #0078d44d}.landing-cta:hover,.landing-cta:focus-visible{transform:translateY(-2px);background:var(--color-primary-hover);box-shadow:0 6px 20px #0078d466}.landing-cta:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.landing-login-help{margin-top:var(--space-md);font-size:var(--font-size-small);color:var(--color-text-muted)}.landing-login-help a{color:var(--color-primary);text-decoration:none}.landing-login-help a:hover{text-decoration:underline}.landing-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-lg)}.feature-card{background:var(--color-bg);border-radius:var(--radius-md);padding:var(--space-lg) var(--space-md);text-align:center;transition:transform .2s,box-shadow .2s;border:1px solid var(--color-border)}.feature-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #00000014}.feature-icon{display:inline-flex;align-items:center;justify-content:center;width:80px;height:80px;background:var(--color-primary);border-radius:var(--radius-full);margin-bottom:var(--space-md);color:#fff;font-size:40px}.feature-title{font-size:var(--font-size-h2);font-weight:600;color:var(--color-text);margin-bottom:var(--space-xs)}.feature-description{font-size:var(--font-size-small);color:var(--color-text-muted);line-height:1.6}@media(max-width:768px){.landing-title{font-size:var(--font-size-h1)}.landing-subtitle{font-size:var(--font-size-body)}.landing-cta{padding:.875rem var(--space-md);font-size:var(--font-size-body)}.feature-icon{width:64px;height:64px}.feature-icon svg{width:32px;height:32px}}@media(max-width:480px){.landing-hero{margin-bottom:var(--space-lg)}.landing-features{gap:var(--space-sm)}}.person-details{padding-bottom:var(--space-lg);width:100%}.person-details-content{background:var(--color-card);border-radius:var(--radius-md);box-shadow:0 2px 8px #0000001a;overflow:hidden}.person-header{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-lg);color:#fff;position:relative}.person-avatar-large{width:150px;height:150px;flex-shrink:0;border-radius:var(--radius-full);overflow:visible;border:4px solid rgba(255,255,255,.3);background:#fff3;position:relative}.person-avatar-large img{width:100%;height:100%;object-fit:cover;border-radius:var(--radius-full)}.person-avatar-large .avatar-flag-badge img{width:auto;height:auto;border-radius:0}.person-avatar-large .avatar-flag-badge{bottom:8px;right:8px}.person-header-info h1{margin-bottom:0;color:#fff}.person-job-title{margin:0;font-size:var(--font-size-h2);opacity:.9}.person-header-chips{display:flex;flex-wrap:wrap;gap:var(--space-xs);margin-top:var(--space-sm)}.person-header-info .department-badge{margin-top:0}.presence-status{display:inline-flex;align-items:center;gap:var(--space-xs);padding:.25rem .75rem;background:#fff3;border:1px solid rgba(255,255,255,.3);border-radius:12px;font-size:var(--font-size-small);font-weight:500}.presence-status-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.presence-status-dot--in-call{animation:presence-pulse 2s ease-in-out infinite}@keyframes presence-pulse{0%,to{box-shadow:0 0 0 0 var(--presence-color)}50%{box-shadow:0 0 0 4px color-mix(in srgb,var(--presence-color) 40%,transparent)}}.country-chip{display:inline-flex;align-items:center;gap:var(--space-xs);padding:.25rem .75rem;background:#fff3;border:1px solid rgba(255,255,255,.3);border-radius:12px;font-size:var(--font-size-small);font-weight:500}.person-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-lg);padding:var(--space-lg)}.info-section{background:var(--color-bg);padding:var(--space-md);border-radius:var(--radius-md)}.info-section h2{margin-bottom:var(--space-md);border-bottom:2px solid var(--color-primary);padding-bottom:var(--space-xs)}.info-list{margin:0;padding:0}.info-list dd{margin:0}.info-item{margin-bottom:var(--space-md)}.info-item:last-child{margin-bottom:0}.info-item dt{display:block;font-weight:600;color:var(--color-text-muted);margin-bottom:var(--space-xs);font-size:var(--font-size-small);text-transform:uppercase;letter-spacing:.5px}.info-value{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:var(--font-size-small);font-weight:600}.status-badge.enabled{background-color:var(--color-success);color:#fff}.status-badge.disabled{background-color:var(--color-error);color:#fff}::view-transition-old(action-email),::view-transition-old(action-teams),::view-transition-old(action-call),::view-transition-new(action-email),::view-transition-new(action-teams),::view-transition-new(action-call){width:100%;height:100%;object-fit:fill}.person-actions{padding:var(--space-lg);background:var(--color-card);border-bottom:1px solid var(--color-border)}.person-actions h2{margin-bottom:var(--space-md)}.action-buttons{display:flex;gap:var(--space-sm);flex-wrap:wrap}.action-btn-large{display:inline-flex;align-items:center;gap:.75rem;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);text-decoration:none;font-weight:500;transition:all .2s;border:none;cursor:pointer}.action-btn-large svg{font-size:22px}.action-btn-large.email-btn{background-color:var(--color-primary);color:#fff}.action-btn-large.email-btn:hover,.action-btn-large.email-btn:focus-visible{background-color:var(--color-primary-hover)}.action-btn-large.teams-btn{background-color:#6264a7;color:#fff}.action-btn-large.teams-btn:hover,.action-btn-large.teams-btn:focus-visible{background-color:#5557a0}.action-btn-large.call-btn{background-color:var(--color-success);color:#fff}.action-btn-large.call-btn:hover,.action-btn-large.call-btn:focus-visible{background-color:#0e6b0e}.action-btn-large.hide-btn{background-color:var(--color-error);color:#fff}.action-btn-large.hide-btn:hover:not(:disabled),.action-btn-large.hide-btn:focus-visible:not(:disabled){background-color:#a4262c}.action-btn-large.unhide-btn{background-color:var(--color-success);color:#fff}.action-btn-large.unhide-btn:hover:not(:disabled),.action-btn-large.unhide-btn:focus-visible:not(:disabled){background-color:#0e6b0e}.action-btn-large.settings-btn{background-color:var(--color-text-muted);color:#fff}.action-btn-large.settings-btn:hover,.action-btn-large.settings-btn:focus-visible{background-color:var(--color-text)}.action-btn-large:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.action-btn-large:disabled{background-color:#ccc;cursor:not-allowed}.hide-error{margin-top:var(--space-sm);padding:.75rem var(--space-sm);background-color:#fde7e9;border:1px solid var(--color-error);border-radius:var(--radius-sm);color:#a4262c;font-size:var(--font-size-small)}.person-admin-actions{padding:var(--space-lg);background:#fff5f5;border-top:2px solid var(--color-error)}.person-admin-actions h2{margin-bottom:var(--space-xs);color:#a4262c}.admin-actions-description{margin-bottom:var(--space-md);font-size:var(--font-size-small);color:var(--color-text-muted)}@media(max-width:768px){.person-details{padding:0;margin-top:calc(-1 * var(--space-sm))}.person-details-content{border-radius:0;box-shadow:none}.person-header{flex-direction:column;text-align:center;padding:var(--space-md);padding-top:var(--space-lg)}.person-header-info{display:flex;flex-direction:column;align-items:center}.person-header-info h1,.person-header-info .person-job-title{width:auto}.person-info-grid{display:flex;flex-direction:column;gap:0;padding:0}.info-section{background:transparent;padding:var(--space-md);border-radius:0;border-bottom:1px solid var(--color-border)}.info-section:last-child{border-bottom:none}.info-section h2{margin-bottom:var(--space-sm);border-bottom:none;padding-bottom:0}.person-actions{padding:var(--space-md);background:transparent;border-bottom:1px solid var(--color-border)}.person-actions h2{margin-bottom:var(--space-sm)}.person-admin-actions{padding:var(--space-md);background:transparent;border-top:1px solid var(--color-border);border-bottom:none}.action-buttons{flex-direction:column}.action-btn-large{width:100%;justify-content:center}}.reporting-line{display:flex;flex-direction:column}.reporting-line-item{position:relative;padding-bottom:8px}.reporting-line-item:last-child{padding-bottom:0}.reporting-line-item.has-line:after{content:"";position:absolute;left:calc(var(--space-xs) + 15px);bottom:0;width:1px;height:8px;background:var(--color-primary)}.reporting-line-row{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-xs);border-radius:var(--radius-sm);text-decoration:none;color:inherit;transition:background-color .15s}.reporting-line-row:not(.current):hover{background:var(--color-card)}.reporting-line-row.current{background:var(--color-primary);color:#fff}.reporting-line-avatar{width:32px;height:32px;flex-shrink:0;overflow:hidden;border-radius:var(--radius-full)}.reporting-line-avatar .user-avatar{width:32px;height:32px}.reporting-line-avatar img,.reporting-line-avatar .avatar-placeholder{width:32px!important;height:32px!important;max-width:32px!important;max-height:32px!important;object-fit:cover;border-radius:var(--radius-full)}.reporting-line-info{display:flex;flex-direction:column;min-width:0;flex:1;line-height:1.2}.reporting-line-name{font-weight:600;font-size:var(--font-size-small);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reporting-line-title{font-size:.75rem;color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reporting-line-row.current .reporting-line-title{color:#fffc}.vacation-chip{display:inline-flex;align-items:center;gap:var(--space-xs);padding:.25rem .75rem;background:#ffc1074d;border:1px solid rgba(255,193,7,.5);border-radius:12px;font-size:var(--font-size-small);font-weight:500}.person-groups{padding:var(--space-lg);background:var(--color-card);border-bottom:1px solid var(--color-border)}.person-groups h2{margin-bottom:var(--space-md)}.groups-list-wrapper{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.group-badge-large{display:inline-flex;align-items:center;padding:.375rem .75rem;border-radius:12px;font-size:var(--font-size-small);font-weight:500;background-color:#e8eaf6;color:#3949ab;border:1px solid #c5cae9;white-space:nowrap}.group-badge-large.hidden-group{background-color:#f5f5f5;color:#9e9e9e;border-color:#e0e0e0}.group-expand-btn,.group-collapse-btn{background-color:#f5f5f5;color:#616161;border-color:#e0e0e0;cursor:pointer;transition:background-color .15s}.group-expand-btn:hover,.group-collapse-btn:hover{background-color:#eee}::view-transition-old(root),::view-transition-new(root){animation-duration:.15s;animation-timing-function:ease-out;mix-blend-mode:normal}::view-transition-group(root){animation:none}@media(max-width:768px){.person-groups{padding:var(--space-md);background:transparent;border-bottom:1px solid var(--color-border)}.person-groups h2{margin-bottom:var(--space-sm)}}.graph-node .selection-checkbox{position:absolute;top:8px;left:8px;width:24px;height:24px;border-radius:6px;border:2px solid var(--color-border);background:var(--color-card);display:flex;align-items:center;justify-content:center;font-size:16px;z-index:3}.graph-node .selection-checkbox.selected{background:var(--color-primary);border-color:var(--color-primary);color:#fff;box-shadow:0 1px 4px #0000001a}.org-chart-main{padding:0!important;max-width:100%!important;height:calc(100vh - var(--header-height))!important;margin:0!important;overflow:hidden!important}.organizational-graph{width:100%;height:100%;background:var(--color-bg);position:relative;overflow:hidden;touch-action:none}.graph-toolbar{position:absolute;top:.75rem;right:.75rem;z-index:2;pointer-events:auto}.graph-toolbar .select-mode-btn-small{background:var(--color-card);box-shadow:0 1px 4px #0000001a}.graph-toolbar .select-mode-btn-small.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.loading-screen{display:flex;justify-content:center;align-items:center;width:100%;height:100%}.loading-overlay{position:absolute;inset:0;z-index:1000;background:#f5f5f5f2;display:flex;justify-content:center;align-items:center}.loading-content{text-align:center}.loading-spinner{width:48px;height:48px;border:4px solid var(--color-border);border-top-color:var(--color-primary);border-radius:var(--radius-full);animation:spin 1s linear infinite;margin:0 auto var(--space-sm)}@keyframes spin{to{transform:rotate(360deg)}}.loading-text{color:var(--color-text)}.graph-transform-wrapper{width:100%!important;height:100%!important;cursor:grab}.graph-transform-wrapper:active{cursor:grabbing}.graph-transform-component{width:100%!important;height:100%!important}.graph-canvas{position:relative;width:100%;height:100%;contain:layout style}.graph-lines{z-index:1}.graph-connection{opacity:.4;pointer-events:none}.graph-connection.highlighted{opacity:1}.graph-node{position:absolute;left:50%;top:50%;width:100px;height:100px;cursor:pointer;z-index:2;border-radius:var(--radius-full);overflow:visible;touch-action:none;-webkit-user-select:none;user-select:none;will-change:transform;backface-visibility:hidden}.graph-node:hover,.graph-node:focus{z-index:10;filter:brightness(1.05);box-shadow:0 0 0 4px var(--color-primary);outline:none}.graph-node:focus-visible{box-shadow:0 0 0 4px var(--color-primary),0 0 0 8px #0078d44d}.graph-node:active{cursor:grabbing;filter:brightness(.95)}.graph-node .colleague-avatar,.graph-node .avatar-placeholder{width:100px!important;height:100px!important;border-radius:var(--radius-full);overflow:hidden}.graph-node img{width:100%;height:100%;object-fit:cover;border-radius:var(--radius-full);pointer-events:none}.organizational-graph *{-webkit-user-select:none;user-select:none}.graph-node--dimmed:after{content:"";position:absolute;inset:-10px;border-radius:var(--radius-full);background:color-mix(in srgb,var(--color-bg) 75%,transparent);pointer-events:none;z-index:10}.graph-node--dimmed:hover:after,.graph-node--dimmed:focus:after{display:none}.graph-node-tooltip{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:8px;padding:8px 12px;background:var(--color-card);border-radius:var(--radius-md);box-shadow:0 2px 8px #00000026;white-space:nowrap;text-align:center;pointer-events:none;opacity:0;z-index:100}.graph-node:hover .graph-node-tooltip,.graph-node:focus .graph-node-tooltip{opacity:1}.graph-node-tooltip-name{font-size:.85rem;font-weight:600;color:var(--color-text);margin-bottom:2px}.graph-node-tooltip-role{font-size:.75rem;color:var(--color-text-muted);margin-bottom:4px}.graph-node-tooltip .department-badge{font-size:.7rem;padding:2px 6px}.hierarchy-main{padding:0!important;max-width:100%!important;height:calc(100vh - var(--header-height))!important;margin:0!important;overflow:hidden!important}.hierarchy-view{position:relative;height:100%}.hierarchy-view .graph-toolbar{position:absolute;top:.75rem;right:.75rem;z-index:10;pointer-events:auto}.hierarchy-view .loading-screen{display:flex;justify-content:center;align-items:center;width:100%;height:100%}.hierarchy-view .loading-content{text-align:center}.hierarchy-view .loading-spinner{width:48px;height:48px;border:4px solid var(--color-border);border-top-color:var(--color-primary);border-radius:var(--radius-full);animation:hierarchy-spin 1s linear infinite;margin:0 auto}.hierarchy-view .loading-text{color:var(--color-text);margin-top:var(--space-md)}@keyframes hierarchy-spin{to{transform:rotate(360deg)}}.hierarchy-container{width:100%;height:100%;overflow:auto}.hierarchy-tree{display:flex;flex-direction:row;justify-content:center;gap:var(--space-md);min-width:min-content;padding:var(--space-lg);min-height:100%;box-sizing:border-box}.tree-node{display:flex;flex-direction:column;align-items:center;position:relative}.tree-children{display:flex;flex-direction:row;gap:var(--space-xs);margin-top:calc(var(--space-lg) * 2);position:relative}.tree-children:before{content:"";position:absolute;top:calc(-1 * var(--space-lg) * 2);left:50%;width:2px;height:var(--space-lg);background:var(--color-border);transform:translate(-50%)}.tree-children>.tree-node:before{content:"";position:absolute;top:calc(-1 * var(--space-lg));left:50%;width:2px;height:var(--space-lg);background:var(--color-border);transform:translate(-50%)}.tree-children>.tree-node:first-child:not(:last-child):after{content:"";position:absolute;top:calc(-1 * var(--space-lg));left:50%;right:calc(-.5 * var(--space-xs));height:2px;background:var(--color-border)}.tree-children>.tree-node:last-child:not(:first-child):after{content:"";position:absolute;top:calc(-1 * var(--space-lg));left:calc(-.5 * var(--space-xs));right:50%;height:2px;background:var(--color-border)}.tree-children>.tree-node:not(:first-child):not(:last-child):after{content:"";position:absolute;top:calc(-1 * var(--space-lg));left:calc(-.5 * var(--space-xs));right:calc(-.5 * var(--space-xs));height:2px;background:var(--color-border)}.hierarchy-node{display:flex;flex-direction:column;align-items:center;padding:var(--space-xs);background:var(--color-card);border-radius:var(--radius-lg);box-shadow:0 2px 8px #0000001a;cursor:pointer;transition:transform .2s,box-shadow .2s;width:80px;position:relative;z-index:1}.hierarchy-node:hover,.hierarchy-node:focus{transform:translateY(-2px);box-shadow:0 4px 12px #00000026;outline:none}.hierarchy-node:focus-visible{box-shadow:0 4px 12px #00000026,0 0 0 3px var(--color-primary)}.hierarchy-node--dimmed{opacity:.3}.hierarchy-node--dimmed:hover{opacity:1}.hierarchy-node--selected{border-color:var(--color-primary);background:var(--color-primary-light, #e6f2ff)}.hierarchy-node .selection-checkbox{position:absolute;top:-6px;right:-6px;width:20px;height:20px;border-radius:4px;border:2px solid var(--color-border);background:var(--color-card);display:flex;align-items:center;justify-content:center;font-size:12px;z-index:3}.hierarchy-node .selection-checkbox.selected{background:var(--color-primary);border-color:var(--color-primary);color:#fff;box-shadow:0 1px 4px #0000001a}.hierarchy-node-avatar{position:relative;width:64px;height:64px;margin-bottom:4px;flex-shrink:0}.hierarchy-node-avatar img{width:64px;height:64px;object-fit:cover;border-radius:50%}.hierarchy-node-avatar .avatar-placeholder{width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:var(--color-primary);color:#fff;font-size:1.25rem;font-weight:600;border-radius:50%}.hierarchy-node-info{text-align:center;min-width:0;width:100%}.hierarchy-node-name{font-weight:600;font-size:.75rem;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;margin-bottom:2px;word-break:break-word}.hierarchy-node-title{font-size:.7rem;color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:4px}.hierarchy-node-dept{display:inline-block;padding:2px 6px;border-radius:var(--radius-sm);font-size:.65rem;font-weight:500;border:1px solid;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:768px){.hierarchy-node{width:70px;padding:4px}.hierarchy-node-avatar,.hierarchy-node-avatar img,.hierarchy-node-avatar .avatar-placeholder{width:52px;height:52px}.hierarchy-node-name{font-size:.6rem}.hierarchy-node-title,.hierarchy-node-dept{display:none}.tree-children{gap:4px}}.settings-container{max-width:800px;margin:0 auto}.settings-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-sm);gap:var(--space-sm)}.settings-header-text{flex:1}.settings-header-text h1{margin-bottom:0}.settings-subtitle{margin:var(--space-xs) 0 0 0;color:var(--color-text-muted);font-size:var(--font-size-small)}.settings-section{padding-bottom:var(--space-md);scroll-margin-top:80px}.settings-section h2{margin-bottom:var(--space-xs)}.settings-description{color:var(--color-text-muted);margin-bottom:var(--space-sm);font-size:var(--font-size-small)}.admin-notice{background:#fff3cd;border:1px solid #ffc107;border-radius:var(--radius-md);padding:.75rem var(--space-sm);margin-bottom:var(--space-md);font-size:var(--font-size-small)}.admin-notice-link{color:inherit;text-decoration:underline}.admin-notice-link:hover{color:var(--color-primary)}.add-email-form{display:flex;gap:var(--space-xs);margin-bottom:var(--space-md)}.email-input{flex:1;padding:.75rem var(--space-sm);border:2px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-body);transition:border-color .2s}.email-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #0078d433}.add-button{padding:.75rem var(--space-lg);background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;font-weight:500;transition:background-color .2s}.add-button:hover:not(:disabled),.add-button:focus-visible:not(:disabled){background:var(--color-primary-hover)}.add-button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.add-button:disabled{background:#ccc;cursor:not-allowed}.collapsible-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.75rem var(--space-sm);background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-base);font-weight:500;color:var(--color-text);transition:background-color .15s,border-color .15s}.collapsible-header:hover{background:var(--color-bg-hover);border-color:var(--color-border-hover)}.collapsible-header:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.collapsible-header svg{font-size:20px;color:var(--color-text-muted);flex-shrink:0}.collapsible-title{text-align:left}.collapsible-content{margin-top:var(--space-sm)}.email-list{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.email-list ul{list-style:none}.email-item{display:flex;justify-content:space-between;align-items:center;gap:var(--space-xs);padding:.75rem var(--space-sm);border-bottom:1px solid var(--color-border)}.email-item:last-child{border-bottom:none}.email-text{font-family:monospace;font-size:var(--font-size-small);min-width:0;overflow:hidden;text-overflow:ellipsis;word-break:break-all}.delete-button{-webkit-user-select:none;user-select:none;display:inline-flex;align-items:center;gap:var(--space-xs);flex-shrink:0;padding:var(--space-xs) var(--space-sm);background:transparent;color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-small);font-weight:500;transition:all .2s}.delete-button svg{font-size:16px;flex-shrink:0}.delete-button:hover:not(:disabled),.delete-button:focus-visible:not(:disabled){background:var(--color-error);color:#fff;border-color:var(--color-error)}.delete-button:focus-visible{outline:2px solid var(--color-error);outline-offset:2px}.delete-button:disabled{background:#ccc;cursor:not-allowed}.no-emails,.no-groups{padding:var(--space-lg) var(--space-sm);text-align:center;color:var(--color-text-muted)}.group-list{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.group-list ul{list-style:none}.group-item{display:flex;justify-content:space-between;align-items:center;gap:var(--space-xs);padding:.75rem var(--space-sm);border-bottom:1px solid var(--color-border)}.group-item:last-child{border-bottom:none}.group-text{font-size:var(--font-size-small);min-width:0;overflow:hidden;text-overflow:ellipsis}.group-item.hidden-group{background:var(--color-bg)}.group-item.hidden-group .group-text{color:var(--color-text-muted)}.hide-button,.show-button{flex-shrink:0;padding:var(--space-xs) var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-small);font-weight:500;transition:all .2s}.hide-button{background:transparent;color:var(--color-text-muted)}.hide-button:hover:not(:disabled){background:var(--color-error);color:#fff;border-color:var(--color-error)}.show-button{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.show-button:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.hide-button:disabled,.show-button:disabled{opacity:.5;cursor:not-allowed}.group-filters{display:flex;gap:var(--space-sm);margin-bottom:var(--space-md);flex-wrap:wrap}.group-search{flex:1;min-width:200px;padding:.5rem var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-small)}.group-search:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px #0078d433}.group-filter-buttons{display:flex;gap:2px;background:var(--color-border);border-radius:var(--radius-sm);padding:2px}.filter-btn{padding:.375rem .75rem;border:none;background:transparent;font-size:var(--font-size-small);cursor:pointer;border-radius:calc(var(--radius-sm) - 2px);transition:background-color .15s,color .15s;color:var(--color-text-muted)}.filter-btn:hover{background:var(--color-bg)}.filter-btn.active{background:#fff;color:var(--color-text);font-weight:500}.settings-error{background:#fde7e9;border:1px solid var(--color-error);color:#a4262c;padding:.75rem var(--space-sm);border-radius:var(--radius-md);margin-bottom:var(--space-md)}.settings-loading{padding:var(--space-lg) var(--space-sm);text-align:center;color:var(--color-text-muted)}.settings-section+.settings-section{border-top:1px solid var(--color-border);margin-top:var(--space-md);padding-top:var(--space-md)}.add-dept-form{display:flex;gap:var(--space-xs);margin-bottom:var(--space-md)}.dept-input{flex:1;padding:.75rem var(--space-sm);border:2px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-body);transition:border-color .2s}.dept-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #0078d433}.dept-autocomplete{position:relative;flex:1}.dept-autocomplete .dept-input{width:100%}.dept-suggestions{position:absolute;top:100%;left:0;right:0;margin:0;padding:0;list-style:none;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 4px 12px #00000026;max-height:200px;overflow-y:auto;z-index:100}.dept-suggestion-item{padding:.6rem var(--space-sm);cursor:pointer}.dept-suggestion-item:hover,.dept-suggestion-item.selected{background:var(--color-bg)}.dept-suggestion-item.selected{background:color-mix(in srgb,var(--color-primary) 15%,var(--color-bg))}.color-list{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.color-item{padding:.75rem var(--space-sm);border-bottom:1px solid var(--color-border)}.color-item:last-child{border-bottom:none}.color-item-header{display:flex;justify-content:space-between;align-items:center;gap:var(--space-sm)}.department-preview{display:inline-block;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);border:2px solid;font-size:var(--font-size-small);font-weight:500}.color-actions{display:flex;gap:var(--space-xs)}.edit-button{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-small);font-weight:500;transition:background-color .2s}.edit-button svg{font-size:16px;flex-shrink:0}.edit-button:hover,.edit-button:focus-visible{background:var(--color-primary-hover)}.edit-button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.reset-button{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);background:transparent;color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-small);transition:all .2s}.reset-button svg{font-size:16px;flex-shrink:0}.reset-button:hover:not(:disabled),.reset-button:focus-visible:not(:disabled){background:var(--color-error);color:#fff;border-color:var(--color-error)}.reset-button:focus-visible{outline:2px solid var(--color-error);outline-offset:2px}.reset-button:disabled{opacity:.5;cursor:not-allowed}.color-editor{margin-top:var(--space-sm);padding-top:var(--space-sm);border-top:1px solid var(--color-border)}.hue-slider-container{margin-bottom:var(--space-sm)}.hue-slider-container label{display:flex;align-items:center;gap:var(--space-sm)}.hue-slider-container label span:first-child{min-width:40px;font-size:var(--font-size-small);color:var(--color-text-muted)}.hue-slider{flex:1;height:24px;-webkit-appearance:none;appearance:none;background:linear-gradient(to right,#e05252,#e0e052,#52e052,#52e0e0,#5252e0,#e052e0,#e05252);border-radius:var(--radius-sm);cursor:pointer}.hue-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:28px;background:#fff;border:2px solid var(--color-text);border-radius:var(--radius-sm);cursor:grab;box-shadow:0 2px 4px #0003}.hue-slider::-moz-range-thumb{width:20px;height:28px;background:#fff;border:2px solid var(--color-text);border-radius:var(--radius-sm);cursor:grab;box-shadow:0 2px 4px #0003}.hue-value{min-width:40px;text-align:right;font-size:var(--font-size-small);color:var(--color-text-muted)}.color-preview{margin-top:var(--space-sm);padding:var(--space-sm);background:var(--color-bg);border-radius:var(--radius-sm);text-align:center}.color-editor-actions{display:flex;gap:var(--space-xs);margin-top:var(--space-sm)}.save-button{padding:var(--space-xs) var(--space-sm);background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-small);font-weight:500;transition:background-color .2s}.save-button:hover:not(:disabled),.save-button:focus-visible:not(:disabled){background:var(--color-primary-hover)}.save-button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.save-button:disabled{background:#ccc;cursor:not-allowed}.cancel-button{padding:var(--space-xs) var(--space-sm);background:transparent;color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-small);transition:all .2s}.cancel-button:hover,.cancel-button:focus-visible{background:var(--color-bg)}.cancel-button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.default-button{padding:var(--space-xs) var(--space-sm);background:transparent;color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-small);transition:all .2s}.default-button:hover,.default-button:focus-visible{background:var(--color-bg)}.default-button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.no-colors{padding:var(--space-lg) var(--space-sm);text-align:center;color:var(--color-text-muted)}.language-dropdown{position:relative}.language-dropdown-trigger{display:flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-small);font-weight:500;transition:all .15s}.language-dropdown-trigger:hover{border-color:var(--color-primary)}.language-dropdown-trigger:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.language-dropdown-trigger svg:last-child{font-size:16px;color:var(--color-text-muted);transition:transform .15s}.language-dropdown-trigger svg:last-child.rotated{transform:rotate(180deg)}.language-dropdown-menu{position:absolute;top:calc(100% + 4px);right:0;min-width:100%;background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:0 4px 12px #0000001a;list-style:none;padding:var(--space-xs);z-index:100;animation:dropdownFadeIn .15s ease-out}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.language-dropdown-item{display:flex;align-items:center;gap:var(--space-xs);width:100%;padding:var(--space-xs) var(--space-sm);background:transparent;border:none;border-radius:var(--radius-xs);cursor:pointer;font-size:var(--font-size-small);font-weight:500;text-align:left;transition:background-color .15s}.language-dropdown-item:hover{background:var(--color-bg)}.language-dropdown-item:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--color-primary)}.language-dropdown-item.active{background:var(--color-bg);color:var(--color-primary)}.clear-cache-button{padding:.75rem var(--space-lg);background:var(--color-text-muted);color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;font-weight:500;transition:background-color .2s}.clear-cache-button:hover:not(:disabled),.clear-cache-button:focus-visible:not(:disabled){background:var(--color-text)}.clear-cache-button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.clear-cache-button:disabled{background:#ccc;cursor:not-allowed}.cache-cleared-message{margin-left:var(--space-sm);color:var(--color-success);font-size:var(--font-size-small);font-weight:500}@media(max-width:768px){.settings-container{padding:0 var(--space-sm)}.add-email-form,.add-dept-form{flex-direction:column}.add-button{width:100%}.color-editor-actions{flex-wrap:wrap}.color-editor-actions button{flex:1 1 auto}}@media(max-width:400px){.color-item-header{flex-direction:column;align-items:flex-start;gap:var(--space-xs)}.color-actions{width:100%}.color-actions button{flex:1;justify-content:center}.edit-button span,.reset-button span,.delete-button span{display:none}}.vt-status{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm)}.vt-status-badge{display:inline-flex;align-items:center;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);font-size:var(--font-size-small);font-weight:500}.vt-status-badge.configured{background:var(--color-success);color:#fff}.vt-status-badge.not-configured{background:var(--color-text-muted);color:#fff}.vt-form{display:flex;gap:var(--space-xs)}.vt-input{flex:1;padding:.75rem var(--space-sm);border:2px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-body);font-family:monospace;transition:border-color .2s}.vt-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #0078d433}.vt-success-message{display:block;margin-top:var(--space-sm);color:var(--color-success);font-size:var(--font-size-small);font-weight:500}.remove-button{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);background:transparent;color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-small);font-weight:500;transition:all .2s}.remove-button svg{font-size:16px;flex-shrink:0}.remove-button:hover:not(:disabled),.remove-button:focus-visible:not(:disabled){background:var(--color-error);color:#fff;border-color:var(--color-error)}.remove-button:focus-visible{outline:2px solid var(--color-error);outline-offset:2px}.remove-button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.vt-form{flex-direction:column}.vt-status{flex-direction:column;align-items:flex-start}}.feature-toggles{display:flex;flex-direction:column;gap:var(--space-sm)}.toggle-item{display:flex;align-items:center;justify-content:space-between;padding:.75rem var(--space-sm);background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:border-color .15s}.toggle-item:hover{border-color:var(--color-primary)}.toggle-label{font-size:var(--font-size-body);font-weight:500}.toggle-checkbox{position:absolute;opacity:0;width:0;height:0}.toggle-slider{position:relative;width:48px;height:26px;background:var(--color-border);border-radius:13px;transition:background-color .2s;flex-shrink:0}.toggle-slider:before{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;background:#fff;border-radius:50%;box-shadow:0 2px 4px #0003;transition:transform .2s}.toggle-checkbox:checked+.toggle-slider{background:var(--color-primary)}.toggle-checkbox:checked+.toggle-slider:before{transform:translate(22px)}.toggle-checkbox:focus-visible+.toggle-slider{outline:2px solid var(--color-primary);outline-offset:2px}.colleagues-group-current{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);padding:.75rem var(--space-sm);background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:var(--space-sm)}.colleagues-group-info{display:flex;flex-direction:column;gap:2px;min-width:0}.colleagues-group-label{font-size:var(--font-size-small);color:var(--color-text-muted)}.colleagues-group-name{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.clear-colleagues-group-button{display:inline-flex;align-items:center;gap:var(--space-xs);flex-shrink:0;padding:var(--space-xs) var(--space-sm);background:transparent;color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-small);font-weight:500;transition:all .2s}.clear-colleagues-group-button svg{font-size:16px;flex-shrink:0}.clear-colleagues-group-button:hover:not(:disabled),.clear-colleagues-group-button:focus-visible:not(:disabled){background:var(--color-error);color:#fff;border-color:var(--color-error)}.clear-colleagues-group-button:disabled{opacity:.5;cursor:not-allowed}.colleagues-group-none{padding:.75rem var(--space-sm);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:var(--space-sm);color:var(--color-text-muted);font-size:var(--font-size-small)}.colleagues-group-selector{position:relative}.colleagues-group-search{width:100%;padding:.75rem var(--space-sm);border:2px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-body);transition:border-color .2s}.colleagues-group-search:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #0078d433}.colleagues-group-search:disabled{background:var(--color-bg);cursor:not-allowed}.colleagues-group-dropdown{position:absolute;top:100%;left:0;right:0;margin:4px 0 0;padding:0;list-style:none;background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 4px 12px #00000026;max-height:250px;overflow-y:auto;z-index:100}.colleagues-group-option{padding:.75rem var(--space-sm);cursor:pointer;transition:background-color .15s}.colleagues-group-option:hover{background:var(--color-bg)}.colleagues-group-more{padding:.5rem var(--space-sm);color:var(--color-text-muted);font-size:var(--font-size-small);font-style:italic;border-top:1px solid var(--color-border)}.login-help-page{min-height:100vh;background:var(--color-bg);padding:var(--space-lg) var(--space-md)}.login-help-content{max-width:700px;margin:0 auto}.login-help-back{display:inline-flex;align-items:center;gap:var(--space-xs);color:var(--color-primary);text-decoration:none;font-weight:500;margin-bottom:var(--space-lg)}.login-help-back:hover{text-decoration:underline}.login-help-title{font-size:var(--font-size-h1);font-weight:700;color:var(--color-text);margin-bottom:var(--space-lg)}.login-help-section{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md);margin-bottom:var(--space-md)}.login-help-section h2{font-size:var(--font-size-h2);font-weight:600;color:var(--color-text);margin-bottom:var(--space-sm)}.login-help-section p{color:var(--color-text-muted);line-height:1.6;margin-bottom:var(--space-sm)}.login-help-section p:last-child{margin-bottom:0}.login-help-section ul{margin:var(--space-sm) 0;padding-left:var(--space-md);color:var(--color-text-muted)}.login-help-section li{margin-bottom:var(--space-xs);line-height:1.5}.login-help-section a{color:var(--color-primary);text-decoration:none}.login-help-section a:hover{text-decoration:underline}.login-help-issues{margin:0}.login-help-issues dt{font-weight:600;color:var(--color-text);margin-top:var(--space-sm)}.login-help-issues dt:first-child{margin-top:0}.login-help-issues dd{margin:var(--space-xs) 0 0 0;color:var(--color-text-muted);line-height:1.5}:root{--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-size-h1: 2rem;--font-size-h2: 1.25rem;--font-size-body: 1rem;--font-size-small: .875rem;--color-primary: #0078d4;--color-primary-hover: #106ebe;--color-text: #333;--color-text-muted: #555;--color-bg: #f5f5f5;--color-card: white;--color-border: #e0e0e0;--color-error: #d13438;--color-success: #107c10;--gradient-accent: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--space-xs: .5rem;--space-sm: 1rem;--space-md: 1.5rem;--space-lg: 2rem;--radius-sm: 4px;--radius-md: 8px;--radius-full: 50%;--header-height: 60px}*{margin:0;padding:0;box-sizing:border-box}html{scrollbar-gutter:stable}body{font-family:var(--font-family);font-size:var(--font-size-body);line-height:1.5;color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased}h1{font-size:var(--font-size-h1);font-weight:600}h2{font-size:var(--font-size-h2);font-weight:600}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}button:focus-visible,a:focus-visible,[role=button]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}::view-transition-group(header){z-index:1000}::view-transition-old(header),::view-transition-new(header){animation:none}
