.dashboard-layout{display:flex;min-height:100vh}.dashboard-content{flex:1 1;margin-left:260px;padding:20px;transition:margin-left .3s}.dashboard-header{border-bottom:1px solid #eaeaea;display:flex;justify-content:flex-end;margin-bottom:20px;padding-bottom:20px}.dashboard-header-right{align-items:center;display:flex}.sidebar-collapsed+.dashboard-content{margin-left:80px}@media only screen and (max-width:768px){.dashboard-content{margin-left:0;width:100%}.sidebar.open+.dashboard-content{margin-left:260px}}.notification-info-banner{background-color:#fef2f2;border-left:4px solid #ef4444;margin-bottom:1rem;padding:.75rem 1rem}.notification-info-content{align-items:flex-start;display:flex}.notification-info-icon{flex-shrink:0;margin-right:.75rem}.notification-info-icon.warning svg{color:#ef4444;height:1.5rem;width:1.5rem}.notification-info-message{color:#6b7280;font-size:.875rem}.notification-info-message p{margin:.25rem 0}.notification-prompt{background-color:#fff;border-radius:.5rem;box-shadow:0 4px 6px #0000001a;margin-bottom:1.5rem;overflow:hidden;position:relative}.notification-prompt.provider-dashboard{border-left:4px solid #5b21b6;margin:1rem 0}.notification-prompt-container{padding:1.25rem}.notification-prompt-content{align-items:flex-start;display:flex;flex-direction:column}.notification-prompt-icon{align-items:center;background-color:#5b21b61a;border-radius:50%;display:flex;height:2.5rem;justify-content:center;margin-bottom:1rem;width:2.5rem}.notification-prompt-icon svg{color:#5b21b6;height:1.5rem;width:1.5rem}.notification-prompt-content h3{color:#1f2937;font-size:1.25rem;font-weight:600;margin-bottom:.75rem}.notification-prompt-message{color:#4b5563;margin-bottom:1.25rem}.notification-prompt-message p{margin:.5rem 0}.notification-prompt-actions{display:flex;gap:.75rem}.notification-prompt-primary{background-color:#5b21b6;border:none;border-radius:.375rem;color:#fff;cursor:pointer;font-weight:500;padding:.5rem 1rem;transition:background-color .2s}.notification-prompt-primary:hover{background-color:#4c1d95}.notification-prompt-primary:disabled{background-color:#a78bda;cursor:not-allowed}.notification-prompt-secondary{background-color:#f3f4f6;border:1px solid #d1d5db;border-radius:.375rem;color:#4b5563;cursor:pointer;font-weight:500;padding:.5rem 1rem;transition:background-color .2s}.notification-prompt-secondary:hover{background-color:#e5e7eb}@media (max-width:640px){.notification-prompt-actions{flex-direction:column}.notification-prompt-primary,.notification-prompt-secondary{width:100%}}.impersonation-banner{background-color:#ff9800;color:#fff;justify-content:space-between;padding:10px 20px;position:sticky;top:0;width:100%;z-index:1000}.impersonation-banner,.impersonation-content{align-items:center;display:flex}.impersonation-icon{font-size:1.2rem;margin-right:10px}.impersonation-button{align-items:center;background-color:#fff;border:none;border-radius:4px;color:#ff9800;cursor:pointer;display:flex;font-weight:600;gap:6px;padding:6px 12px;transition:all .2s ease}.impersonation-button:hover{background-color:#f5f5f5;box-shadow:0 2px 4px #0000001a}.dashboard-layout:has(.impersonation-banner) .dashboard-content{height:calc(100vh - 50px)}@supports not (selector(:has(.impersonation-banner))){.impersonation-banner+.dashboard-content{height:calc(100vh - 50px)}}.notification-center{display:inline-block;position:relative}.notification-toggle-btn{align-items:center;background:#0000;border:none;color:#333;cursor:pointer;display:flex;font-size:1.2rem;justify-content:center;padding:8px;position:relative;transition:color .2s}.notification-toggle-btn:hover{color:#4a89dc}.notification-badge{align-items:center;background-color:#e74c3c;border-radius:50%;color:#fff;display:flex;font-size:.7rem;height:18px;justify-content:center;position:absolute;right:0;top:0;width:18px}.notification-panel{background-color:#fff;border-radius:8px;box-shadow:0 4px 15px #00000026;display:flex;flex-direction:column;margin-top:10px;max-height:calc(100vh - 120px);max-width:90vw;overflow:hidden;position:absolute;right:-10px;top:100%;width:360px;z-index:1000}.notification-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:16px}.notification-header h3{color:#333;font-size:1.1rem;margin:0}.mark-all-read-btn{align-items:center;background:#0000;border:none;color:#4a89dc;cursor:pointer;display:flex;font-size:.85rem;gap:8px;padding:5px 10px;transition:color .2s}.mark-all-read-btn:hover{color:#2962a7}.notification-list{flex:1 1;max-height:400px;overflow-y:auto}.notification-item{align-items:flex-start;border-bottom:1px solid #f0f0f0;cursor:pointer;display:flex;justify-content:space-between;padding:12px 16px;transition:background-color .2s}.notification-item.unread{background-color:#f5f8ff}.notification-content{align-items:flex-start;display:flex;flex:1 1;padding-right:10px}.notification-icon-container{margin-right:12px;padding-top:3px}.notification-icon{font-size:1.2rem}.notification-icon.info{color:#4a89dc}.notification-icon.success{color:#5cb85c}.notification-icon.warning{color:#f0ad4e}.notification-icon.error{color:#d9534f}.notification-text{flex:1 1}.notification-text h4{color:#333;font-size:.95rem;margin:0 0 8px}.notification-text p{color:#555;font-size:.85rem;line-height:1.4;margin:0 0 8px}.notification-time{color:#888;font-size:.75rem}.delete-notification-btn{background:#0000;border:none;color:#aaa;cursor:pointer;font-size:.9rem;margin-left:5px;opacity:.6;padding:5px;transition:opacity .2s,color .2s}.delete-notification-btn:hover{color:#d9534f;opacity:1}.notification-loading{color:#777;padding:20px;text-align:center}.no-notifications{color:#777;font-style:italic;padding:30px;text-align:center}.notification-error{background-color:#fff5f5;color:#d9534f;padding:15px;text-align:center}.notification-item.info .notification-text h4{color:#4a89dc}.notification-item.success .notification-text h4{color:#5cb85c}.notification-item.warning .notification-text h4{color:#f0ad4e}.notification-item.error .notification-text h4{color:#d9534f}@media (max-width:480px){.notification-panel{border-radius:0;left:0;max-height:calc(100vh - 60px);max-width:100%;position:fixed;right:0;top:60px;width:100%}}.invitations-page{margin:0 auto;max-width:1200px;padding:24px}.invitations-page h1{align-items:center;color:#111827;display:flex;font-size:2em;gap:12px;margin-bottom:32px}.invitations-loading{align-items:center;display:flex;flex-direction:column;gap:16px;justify-content:center;min-height:400px}.spinner{animation:spin .8s linear infinite;border:4px solid #e5e7eb;border-radius:50%;border-top-color:#5b21b6;height:48px;width:48px}@keyframes spin{to{transform:rotate(1turn)}}.no-invitations{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:80px 20px;text-align:center}.no-invitations-icon{font-size:4em;margin-bottom:16px}.no-invitations h2{color:#374151;font-size:1.5em;margin-bottom:8px}.no-invitations p{color:#6b7280;font-size:1em}.invitations-section{margin-bottom:40px}.invitations-section h2{align-items:center;color:#374151;display:flex;font-size:1.5em;gap:10px;margin-bottom:20px}.invitations-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.invitation-card{background:#fff;border:2px solid #0000;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden;transition:all .3s}.invitation-card:hover{box-shadow:0 8px 24px #0000001f;transform:translateY(-4px)}.invitation-card.share-invite{border-color:#e9d5ff}.invitation-card.share-invite:hover{border-color:#c084fc}.invitation-card.transfer-invite{border-color:#fed7aa}.invitation-card.transfer-invite:hover{border-color:#fb923c}.invitation-header{align-items:center;background:linear-gradient(135deg,#f9fafb,#f3f4f6);display:flex;gap:12px;padding:20px}.invitation-avatar{align-items:center;background:linear-gradient(135deg,#5b21b6,#7c3aed);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:1.4em;font-weight:700;height:56px;justify-content:center;width:56px}.invitation-avatar.transfer{background:linear-gradient(135deg,#f59e0b,#f97316)}.invitation-info{flex:1 1}.invitation-info h3{color:#111827;font-size:1.1em;font-weight:600;margin:0 0 4px}.invitation-type{color:#6b7280;font-size:.9em;margin:0}.invitation-body{padding:20px}.invitation-detail{align-items:center;background:#f9fafb;border-radius:6px;color:#374151;display:flex;font-size:.95em;gap:8px;margin-bottom:16px;padding:10px}.invitation-detail svg{color:#5b21b6}.invitation-detail strong{color:#111827}.permissions-info{margin-bottom:16px}.permissions-info strong{color:#374151;display:block;font-size:.95em;margin-bottom:8px}.permissions-list{display:flex;flex-wrap:wrap;gap:8px}.perm-badge{background:#ede9fe;border-radius:16px;color:#5b21b6;font-size:.85em;font-weight:500;padding:6px 12px}.transfer-reason{background:#f3f4f6;border-radius:6px;margin-bottom:12px;padding:12px}.transfer-reason strong{color:#111827;display:block;font-size:.9em;margin-bottom:4px}.transfer-reason p{color:#374151;font-size:.9em;font-style:italic;line-height:1.5;margin:0}.transfer-warning{background:linear-gradient(135deg,#fef3c7,#fed7aa);border-left:3px solid #f59e0b;border-radius:6px;margin-bottom:12px;padding:12px}.transfer-warning p{color:#92400e;font-size:.9em;line-height:1.5;margin:0}.transfer-expiry{align-items:center;background:#fef3c7;border-radius:6px;color:#f59e0b;display:flex;font-size:.9em;font-weight:500;gap:6px;padding:8px}.invitation-actions{background:#f9fafb;border-top:1px solid #e5e7eb;display:flex;gap:12px;padding:16px 20px}.btn-accept,.btn-decline{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;flex:1 1;font-size:.95em;font-weight:600;gap:8px;justify-content:center;padding:12px 20px;transition:all .2s}.btn-accept{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.btn-accept:hover{background:linear-gradient(135deg,#059669,#047857);box-shadow:0 4px 12px #10b9814d;transform:translateY(-1px)}.btn-accept.transfer{background:linear-gradient(135deg,#f59e0b,#f97316)}.btn-accept.transfer:hover{background:linear-gradient(135deg,#f97316,#ea580c);box-shadow:0 4px 12px #f59e0b4d}.btn-decline{background:#fff;border:2px solid #e5e7eb;color:#6b7280}.btn-decline:hover{background:#f3f4f6;border-color:#d1d5db;color:#374151}@media (max-width:768px){.invitations-page{padding:16px}.invitations-page h1{font-size:1.5em}.invitations-grid{grid-template-columns:1fr}.invitation-actions{flex-direction:column}.btn-accept,.btn-decline{width:100%}}