@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";.main-layout{background:var(--background-primary);min-height:100vh}.xirv-shell{background:var(--background-primary);min-height:100vh;transition:background .3s,color .3s}.xirv-shell-body{display:flex}.xirv-content{padding:var(--space-xl);flex:1;transition:background .3s,color .3s}.xirv-header{padding:var(--space-md) var(--space-xl);background:var(--header-bg);z-index:100;border-bottom:1px solid var(--header-border,#ffffff0f);justify-content:space-between;align-items:center;transition:background .3s,border-color .3s;display:flex;position:sticky;top:0;box-shadow:0 2px 8px #0000001a}[data-theme=dark] .xirv-header{border-bottom:1px solid #ffffff14;box-shadow:0 2px 20px #0006}.xirv-header-left{align-items:center;gap:var(--space-sm);color:var(--header-text);display:flex}.xirv-header-icon{color:var(--xirv-accent)}.xirv-header-username{font-weight:600;font-size:var(--text-sm);color:var(--header-text)}.xirv-header-actions{align-items:center;gap:var(--space-sm);display:flex}.xirv-header-btn{width:36px;height:36px;color:var(--header-text);cursor:pointer;background:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex}.xirv-header-btn:hover{background:#fff3;transform:scale(1.05)}.xirv-header-btn:active{transform:scale(.95)}.xirv-header-btn-logout:hover{background:#dc26264d}@media (width<=480px){.xirv-header{padding:var(--space-sm) var(--space-md)}.xirv-header-username{font-size:var(--text-xs)}.xirv-header-btn{width:32px;height:32px}.xirv-header-btn svg{width:16px;height:16px}}.xirv-sidebar{width:240px;min-height:calc(100vh - 64px);padding:var(--space-lg);background:#111827;border-right:1px solid #ffffff0f;transition:background .3s,border-color .3s}[data-theme=dark] .xirv-sidebar{border-right:1px solid #ffffff14;box-shadow:1px 0 20px #0000004d}.xirv-sidebar nav{gap:var(--space-sm);flex-direction:column;display:flex}.xirv-sidebar a{color:#fff;padding:var(--space-sm);border-radius:var(--radius-md);opacity:.7;font-size:14px;font-weight:500;text-decoration:none;transition:all .2s}.xirv-sidebar a:hover{opacity:1;background:#00e5ff1a}.xirv-sidebar a.active{color:var(--xirv-accent);border-left:3px solid var(--xirv-accent);opacity:1;background:#00e5ff26}.xirv-sidebar-org{align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);margin:0 var(--space-md) var(--space-md) var(--space-md);background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);display:flex}.xirv-sidebar-org-icon{color:var(--xirv-accent);flex-shrink:0}.xirv-sidebar-org-name{font-weight:600;font-size:var(--text-sm);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.auth-layout{min-height:100vh;padding:var(--space-xl);background:linear-gradient(135deg,#0f172a 0%,#1e293b 50%,#0f172a 100%);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.auth-layout:before{content:"";background:radial-gradient(at 30%,#00e5ff0d 0%,#0000 70%);width:200%;height:200%;animation:8s ease-in-out infinite alternate pulse;position:absolute;top:-50%;left:-50%}@keyframes pulse{0%{opacity:.5;transform:scale(1)}to{opacity:1;transform:scale(1.1)}}.auth-layout-container{z-index:1;width:100%;max-width:420px;animation:.6s slideUp;position:relative}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (width<=480px){.auth-layout{padding:var(--space-md)}.auth-layout-container{max-width:100%}}.landing-page{color:#fff;min-height:100vh;font-family:var(--font-family,"Inter", sans-serif);background:#0a0a0f;overflow-x:hidden}.landing-nav{z-index:100;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0a0a0fcc;border-bottom:1px solid #ffffff0d;padding:16px 0;position:fixed;top:0;left:0;right:0}.landing-nav-container{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:0 24px;display:flex}.landing-nav-brand{align-items:baseline;gap:4px;font-weight:700;display:flex}.landing-brand-text{color:var(--xirv-accent,#00e5ff);font-size:22px}.landing-brand-sub{color:#fff9;font-size:16px;font-weight:400}.landing-nav-links{align-items:center;gap:24px;display:flex}.landing-nav-links a{color:#fff9;font-size:14px;font-weight:500;text-decoration:none;transition:color .2s}.landing-nav-links a:hover{color:#fff}.landing-nav-login{color:#fff;cursor:pointer;background:0 0;border:1px solid #ffffff26;border-radius:8px;padding:8px 20px;font-size:14px;font-weight:500;transition:all .2s}.landing-nav-login:hover{background:#ffffff0d}.landing-nav-register{background:var(--xirv-accent,#00e5ff);color:#0a0a0f;cursor:pointer;border:none;border-radius:8px;padding:8px 24px;font-size:14px;font-weight:600;transition:all .2s}.landing-nav-register:hover{transform:translateY(-2px);box-shadow:0 8px 24px #00e5ff40}.landing-hero{text-align:center;padding:120px 24px 80px;position:relative;overflow:hidden}.landing-hero:before{content:"";background:radial-gradient(at 30%,#00e5ff14,#0000 70%);width:200%;height:200%;animation:10s ease-in-out infinite alternate heroPulse;position:absolute;top:-50%;left:-50%}@keyframes heroPulse{0%{opacity:.5;transform:scale(1)}to{opacity:1;transform:scale(1.1)}}.landing-hero-container{z-index:1;max-width:800px;margin:0 auto;position:relative}.landing-hero-badge{color:var(--xirv-accent,#00e5ff);background:#00e5ff1a;border:1px solid #00e5ff26;border-radius:9999px;align-items:center;gap:8px;margin-bottom:32px;padding:8px 20px;font-size:14px;font-weight:500;display:inline-flex}.landing-hero-title{margin:0 0 16px;font-size:60px;font-weight:700;line-height:1.1}.landing-hero-highlight{background:linear-gradient(135deg, var(--xirv-accent,#00e5ff), #f7931e);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.landing-hero-description{color:#fff9;max-width:600px;margin:0 auto 40px;font-size:20px;line-height:1.6}.landing-hero-actions{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.landing-hero-primary{background:var(--xirv-accent,#00e5ff);color:#0a0a0f;cursor:pointer;border:none;border-radius:12px;align-items:center;gap:8px;padding:14px 32px;font-size:16px;font-weight:600;transition:all .2s;display:inline-flex}.landing-hero-primary:hover{transform:translateY(-2px);box-shadow:0 8px 32px #00e5ff4d}.landing-hero-secondary{color:#fff;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff26;border-radius:12px;padding:14px 32px;font-size:16px;font-weight:500;transition:all .2s}.landing-hero-secondary:hover{background:#ffffff1a}.landing-hero-stats{border-top:1px solid #ffffff0d;justify-content:center;gap:48px;margin-top:48px;padding-top:32px;display:flex}.landing-hero-stat{flex-direction:column;display:flex}.landing-hero-stat-number{color:#fff;font-size:28px;font-weight:700}.landing-hero-stat-label{color:#fff6;font-size:14px}.landing-features{background:#111118;padding:80px 24px}.landing-features-container{max-width:1200px;margin:0 auto}.landing-features-header{text-align:center;margin-bottom:48px}.landing-features-badge{color:var(--xirv-accent,#00e5ff);text-transform:uppercase;letter-spacing:.5px;background:#00e5ff1a;border-radius:9999px;padding:4px 16px;font-size:12px;font-weight:600;display:inline-block}.landing-features-title{margin:16px 0 0;font-size:36px;font-weight:700}.landing-features-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.landing-feature-card{text-align:left;background:#1a1a24;border:1px solid #ffffff0d;border-radius:16px;padding:32px;transition:all .3s}.landing-feature-card:hover{border-color:#00e5ff33;transform:translateY(-4px);box-shadow:0 8px 32px #0000004d}.landing-feature-icon{border-radius:12px;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:16px;display:flex}.landing-feature-card h3{margin:0 0 8px;font-size:18px;font-weight:600}.landing-feature-card p{color:#ffffff80;margin:0;font-size:14px;line-height:1.6}.landing-tech{background:#0a0a0f;padding:80px 24px}.landing-tech-container{text-align:center;max-width:800px;margin:0 auto}.landing-tech-title{margin:0 0 8px;font-size:36px;font-weight:700}.landing-tech-description{color:#ffffff80;margin-bottom:40px;font-size:16px}.landing-tech-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.landing-tech-item{background:#111118;border:1px solid #ffffff0d;border-radius:12px;padding:20px;transition:all .2s}.landing-tech-item:hover{border-color:#00e5ff26}.landing-tech-name{font-size:16px;font-weight:600;display:block}.landing-tech-desc{color:#ffffff4d;margin-top:4px;font-size:12px;display:block}.landing-cta{background:linear-gradient(135deg,#0a0a0f,#111118);border-top:1px solid #ffffff0d;padding:80px 24px}.landing-cta-container{text-align:center;max-width:600px;margin:0 auto}.landing-cta-title{margin:0 0 16px;font-size:36px;font-weight:700}.landing-cta-description{color:#ffffff80;margin-bottom:32px;font-size:16px}.landing-cta-actions{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.landing-cta-primary{background:var(--xirv-accent,#00e5ff);color:#0a0a0f;cursor:pointer;border:none;border-radius:12px;align-items:center;gap:8px;padding:14px 32px;font-size:16px;font-weight:600;transition:all .2s;display:inline-flex}.landing-cta-primary:hover{transform:translateY(-2px);box-shadow:0 8px 32px #00e5ff4d}.landing-cta-secondary{color:#fff;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff26;border-radius:12px;padding:14px 32px;font-size:16px;font-weight:500;transition:all .2s}.landing-cta-secondary:hover{background:#ffffff1a}.landing-footer{border-top:1px solid #ffffff0d;padding:24px}.landing-footer-container{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;max-width:1200px;margin:0 auto;display:flex}.landing-footer p{color:#ffffff4d;margin:0;font-size:14px}.landing-footer-links{gap:24px;display:flex}.landing-footer-links a{color:#ffffff4d;font-size:14px;text-decoration:none;transition:color .2s}.landing-footer-links a:hover{color:#fff9}@media (width<=1024px){.landing-features-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.landing-nav-links{display:none}.landing-hero-title{font-size:36px}.landing-hero-description{font-size:16px}.landing-hero-stats{flex-wrap:wrap;gap:24px}.landing-features-grid{grid-template-columns:1fr}.landing-tech-grid{grid-template-columns:repeat(2,1fr)}.landing-cta-title{font-size:28px}.landing-footer-container{text-align:center;flex-direction:column}}@media (width<=480px){.landing-hero-title{font-size:28px}.landing-hero-actions{flex-direction:column;align-items:center;width:100%}.landing-hero-primary,.landing-hero-secondary{justify-content:center;width:100%}.landing-tech-grid{grid-template-columns:1fr}}.xirv-panel{background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-lg);box-shadow:0 4px 12px #0000000d}.xirv-panel h2{margin-top:0;margin-bottom:var(--space-md);color:var(--text-primary);font-size:18px}.xirv-card{background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-lg)}.card-header{margin-bottom:var(--space-md);justify-content:space-between;align-items:center;display:flex}.card-header h3{font-size:var(--text-lg);margin:0}.card-status{font-size:var(--text-sm);color:var(--text-secondary)}.card-content{color:var(--text-primary)}.status-badge{text-transform:capitalize;border-radius:999px;padding:4px 10px;font-size:12px;display:inline-block}.status-badge.active{background:color-mix(in srgb, var(--status-active) 15%, transparent);color:var(--status-warning);background:color-mix(in srgb, var(--status-warning) 15%, transparent)}.status-badge.inactive{color:#374151;background:#f3f4f6}.status-badge.warning{color:#92400e;background:#fef3c7}.activity-list{margin:0;padding:0;list-style:none}.activity-list li{align-items:flex-start;gap:var(--space-md);padding:var(--space-md) 0;border-bottom:1px solid var(--border-color);display:flex}.activity-list li:last-child{border-bottom:none}.activity-icon{background:var(--background-primary);width:32px;height:32px;color:var(--xirv-accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.activity-content{flex-direction:column;flex:1;gap:4px;display:flex}.activity-content strong{color:var(--text-primary);font-size:.95rem}.activity-time{color:var(--text-secondary);align-items:center;gap:4px;font-size:.8rem;display:flex}.activity-time svg{width:12px;height:12px}.xirv-button{padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-md);background:var(--xirv-primary);color:#fff;cursor:pointer;border:none;font-size:14px}.xirv-button:hover{opacity:.9}.dashboard-hero{justify-content:space-between;align-items:center;gap:var(--space-xl);padding:var(--space-xl);border-radius:var(--radius-lg);background:linear-gradient(135deg, var(--xirv-primary), var(--xirv-accent));color:#fff;display:flex}.dashboard-hero h1{margin:0 0 var(--space-sm);color:#fff}.dashboard-hero p{color:#ffffffe6;margin:0}.dashboard-hero>div{gap:var(--space-sm);flex-direction:column;display:flex}.quick-actions{margin-top:var(--space-xl)}.quick-actions h2{margin-bottom:var(--space-lg);color:var(--text-primary)}.quick-actions-grid{gap:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.quick-actions-grid button{align-items:center;gap:var(--space-md);padding:var(--space-lg);border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--surface);color:var(--text-primary);cursor:pointer;text-align:left;font-size:1rem;font-weight:500;transition:transform .2s,border-color .2s,box-shadow .2s;display:flex}.quick-actions-grid button svg{color:var(--xirv-accent);flex-shrink:0}.quick-actions-grid button:hover{border-color:var(--xirv-accent);transform:translateY(-2px);box-shadow:0 4px 12px #00e5ff1a}.dashboard{gap:var(--space-lg);max-width:1400px;padding:var(--space-md) 0;flex-direction:column;margin:0 auto;display:flex}.dashboard-header{margin-bottom:var(--space-xs)}.dashboard-header h1{font-size:var(--text-2xl);color:var(--text-primary);margin:0 0 var(--space-xs) 0;align-items:baseline;gap:var(--space-sm);flex-wrap:wrap;font-weight:700;display:flex}.dashboard-header .dashboard-greeting{color:var(--text-primary)}.dashboard-header .dashboard-user-name{background:linear-gradient(135deg, var(--xirv-accent,#00e5ff), var(--xirv-highlight,#f7931e));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.dashboard-header p{color:var(--text-secondary);font-size:var(--text-md);margin:0}.dashboard-metrics{gap:var(--space-lg);grid-template-columns:repeat(3,1fr);display:grid}.metric-card-content{align-items:center;gap:var(--space-md);display:flex}.metric-icon{background:var(--background-primary);width:48px;height:48px;color:var(--xirv-accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.metric-card-content h2{font-size:var(--text-xl);color:var(--text-primary);margin:0;font-weight:700}@media (width<=900px){.dashboard-metrics{grid-template-columns:1fr}.dashboard-header h1{font-size:var(--text-xl)}}@media (width<=480px){.dashboard{gap:var(--space-md)}.dashboard-header h1{font-size:var(--text-lg);flex-direction:column;gap:0}.metric-card-content{text-align:center;flex-direction:column}}.dashboard-org-card{margin-bottom:var(--space-xl);padding:var(--space-md) var(--space-lg);background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-md);border-left:4px solid var(--xirv-accent)}.dashboard-org-card-content{align-items:center;gap:var(--space-md);display:flex}.dashboard-org-card-icon{width:48px;height:48px;color:var(--xirv-accent);background:#00e5ff1a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.dashboard-org-card-info{flex:1}.dashboard-org-card-title{font-size:var(--text-sm);color:var(--text-secondary);margin:0 0 2px;font-weight:500}.dashboard-org-card-name{font-size:var(--text-lg);color:var(--text-primary);margin:0;font-weight:600}.dashboard-org-card-role{padding:2px var(--space-sm);background:var(--background-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--text-xs);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-top:4px;font-weight:500;display:inline-block}.dashboard-org-metric-card{align-items:center;gap:var(--space-md);padding:var(--space-lg);background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-md);border-left:4px solid var(--xirv-accent);transition:all .2s;display:flex}.dashboard-org-metric-card:hover{border-color:var(--xirv-accent);box-shadow:0 4px 12px #0000000d}.dashboard-org-metric-icon{width:48px;height:48px;color:var(--xirv-accent);background:#00e5ff1a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.dashboard-org-metric-info{flex:1;min-width:0}.dashboard-org-metric-label{font-size:var(--text-sm);color:var(--text-secondary);font-weight:500;display:block}.dashboard-org-metric-name{font-size:var(--text-lg);color:var(--text-primary);font-weight:700;display:block}.dashboard-org-metric-role,.metric-card-subtitle{padding:1px var(--space-sm);background:var(--background-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--text-xs);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-top:2px;font-weight:500;display:inline-block}.ai-page{padding:var(--space-xl);flex-direction:column;max-width:1200px;height:calc(100vh - 80px);margin:0 auto;display:flex}.ai-header{margin-bottom:var(--space-lg);justify-content:space-between;align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.ai-header h1{font-size:var(--text-2xl);color:var(--text-primary);margin:0;font-weight:700}.ai-header p{color:var(--text-secondary);margin:var(--space-xs) 0 0 0}.ai-actions{gap:var(--space-md);align-items:center;display:flex}.ai-document-select{padding:var(--space-sm) var(--space-md);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--text-sm);background:var(--surface);color:var(--text-primary);cursor:pointer;min-width:200px}.ai-document-select:focus{border-color:var(--xirv-accent);outline:none}.ai-process-btn{padding:var(--space-sm) var(--space-lg);background:var(--xirv-accent);color:var(--xirv-primary);border-radius:var(--radius-sm);font-weight:600;font-size:var(--text-sm);cursor:pointer;white-space:nowrap;border:none;transition:all .2s}.ai-process-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #00e5ff4d}.ai-process-btn:disabled{opacity:.6;cursor:not-allowed}.ai-chat-container{background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-md);flex-direction:column;flex:1;min-height:400px;display:flex;overflow:hidden}.ai-messages{padding:var(--space-lg);gap:var(--space-md);flex-direction:column;flex:1;display:flex;overflow-y:auto}.ai-message{gap:var(--space-md);max-width:80%;animation:.3s slideIn;display:flex}.ai-message-user{flex-direction:row-reverse;align-self:flex-end}.ai-message-assistant{align-self:flex-start}.ai-message-avatar{background:var(--background-primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;display:flex}.ai-message-user .ai-message-avatar{background:var(--xirv-accent)}.ai-message-content{background:var(--background-primary);padding:var(--space-md) var(--space-lg);border-radius:var(--radius-md);max-width:100%}.ai-message-user .ai-message-content{background:var(--xirv-accent);color:var(--xirv-primary)}.ai-message-text{font-size:var(--text-sm);white-space:pre-wrap;word-wrap:break-word;line-height:1.6}.ai-typing{gap:4px;padding:4px 0;display:flex}.ai-typing span{background:var(--text-secondary);border-radius:50%;width:8px;height:8px;animation:1.4s infinite both typing}.ai-typing span:nth-child(2){animation-delay:.2s}.ai-typing span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-8px)}}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.ai-sources{margin-top:var(--space-md);border-top:1px solid var(--border-color);padding-top:var(--space-md)}.ai-sources details{cursor:pointer}.ai-sources summary{font-weight:600;font-size:var(--text-sm);color:var(--text-secondary);padding:var(--space-xs) 0}.ai-sources summary:hover{color:var(--text-primary)}.ai-source-item{padding:var(--space-sm) var(--space-md);margin-top:var(--space-sm);background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--text-sm)}.ai-source-title{margin-bottom:var(--space-xs);color:var(--text-primary);font-weight:600}.ai-source-content{color:var(--text-secondary);margin-bottom:var(--space-xs);-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;font-size:12px;display:-webkit-box;overflow:hidden}.ai-source-similarity{color:var(--xirv-accent);font-size:11px;font-weight:500}.ai-input-form{gap:var(--space-sm);padding:var(--space-md);border-top:1px solid var(--border-color);background:var(--surface);display:flex}.ai-input{padding:var(--space-sm) var(--space-md);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--text-sm);background:var(--background-primary);color:var(--text-primary);flex:1;transition:border-color .2s}.ai-input:focus{border-color:var(--xirv-accent);outline:none}.ai-input:disabled{opacity:.6}.ai-send-btn{padding:var(--space-sm) var(--space-lg);background:var(--xirv-accent);color:var(--xirv-primary);border-radius:var(--radius-sm);font-weight:600;font-size:var(--text-sm);cursor:pointer;border:none;min-width:80px;transition:all .2s}.ai-send-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #00e5ff4d}.ai-send-btn:disabled{opacity:.6;cursor:not-allowed}@media (width<=768px){.ai-page{padding:var(--space-md);height:calc(100vh - 60px)}.ai-header{flex-direction:column;align-items:flex-start}.ai-actions{flex-direction:column;align-items:stretch;width:100%}.ai-document-select{width:100%}.ai-process-btn{text-align:center;width:100%}.ai-message{max-width:95%}.ai-message-content{padding:var(--space-sm) var(--space-md)}}@media (width<=480px){.ai-message{max-width:100%}.ai-message-avatar{width:28px;height:28px;font-size:14px}}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#00000080;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.modal-container{background:var(--surface);border-radius:var(--radius-lg);width:100%;max-width:560px;max-height:90vh;animation:.3s slideUp;overflow-y:auto;box-shadow:0 24px 48px #0003}.modal-container-large{max-width:720px}.modal-header{padding:var(--space-lg) var(--space-xl);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;display:flex}.modal-header h2{font-size:var(--text-lg);color:var(--text-primary);margin:0;font-weight:700}.modal-close-btn{color:var(--text-secondary);cursor:pointer;padding:0 var(--space-sm);background:0 0;border:none;font-size:28px;line-height:1;transition:color .2s}.modal-close-btn:hover{color:var(--text-primary)}.modal-body{padding:var(--space-xl)}.modal-footer{padding:var(--space-md) var(--space-xl);border-top:1px solid var(--border-color);gap:var(--space-md);justify-content:flex-end;display:flex}.modal-form-group{margin-bottom:var(--space-lg)}.modal-form-group label{font-size:var(--text-sm);color:var(--text-primary);margin-bottom:var(--space-xs);font-weight:600;display:block}.modal-form-group label .required{color:#ef4444;margin-left:2px}.modal-form-group .helper-text{color:var(--text-secondary);margin-top:var(--space-xs);font-size:12px}.modal-input,.modal-select,.modal-textarea{width:100%;padding:var(--space-sm) var(--space-md);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--text-sm);font-family:var(--font-family);background:var(--surface);color:var(--text-primary);transition:border-color .2s,box-shadow .2s}.modal-input:focus,.modal-select:focus,.modal-textarea:focus{border-color:var(--xirv-accent);outline:none;box-shadow:0 0 0 3px #00e5ff1a}.modal-textarea{resize:vertical;min-height:80px}.modal-file-input-wrapper{position:relative}.modal-file-input{width:100%;padding:var(--space-md);border:2px dashed var(--border-color);border-radius:var(--radius-sm);cursor:pointer;background:var(--background-primary);text-align:center;transition:all .2s}.modal-file-input:hover{border-color:var(--xirv-accent);background:#00e5ff0d}.modal-file-input input[type=file]{opacity:0;cursor:pointer;position:absolute;inset:0}.modal-file-input .file-placeholder{color:var(--text-secondary);font-size:var(--text-sm)}.modal-file-input .file-placeholder .icon{margin-bottom:var(--space-sm);font-size:32px;display:block}.modal-file-selected{padding:var(--space-sm) var(--space-md);background:var(--background-primary);border-radius:var(--radius-sm);margin-top:var(--space-sm);justify-content:space-between;align-items:center;display:flex}.modal-file-selected .file-name{font-size:var(--text-sm);color:var(--text-primary);font-weight:500}.modal-file-selected .file-size{color:var(--text-secondary);font-size:12px}.modal-error{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);color:#dc2626;font-size:var(--text-sm);margin-bottom:var(--space-md);background:#fef2f2;border:1px solid #fecaca}.modal-btn{padding:var(--space-sm) var(--space-xl);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer;border:none;font-weight:600;transition:all .2s}.modal-btn-primary{background:var(--xirv-accent);color:var(--xirv-primary)}.modal-btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #00e5ff4d}.modal-btn-secondary{background:var(--background-primary);color:var(--text-secondary);border:1px solid var(--border-color)}.modal-btn-secondary:hover{background:var(--surface);border-color:var(--text-secondary)}.modal-btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.modal-btn-danger{color:#fff;background:#ef4444}.modal-btn-danger:hover:not(:disabled){background:#dc2626}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (width<=640px){.modal-container{margin:var(--space-md);max-height:95vh}.modal-header{padding:var(--space-md) var(--space-lg)}.modal-body{padding:var(--space-lg)}.modal-footer{padding:var(--space-md) var(--space-lg);flex-direction:column}.modal-footer .modal-btn{text-align:center;width:100%}}.knowledge-page{padding:var(--space-xl);max-width:1400px;margin:0 auto}.knowledge-header{margin-bottom:var(--space-lg);justify-content:space-between;align-items:center;display:flex}.knowledge-header h1{font-size:var(--text-2xl);color:var(--text-primary);margin:0;font-weight:700}.knowledge-header p{color:var(--text-secondary);margin:var(--space-xs) 0 0 0}.upload-btn{align-items:center;gap:var(--space-sm);background:var(--xirv-accent);color:var(--xirv-primary);padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-md);cursor:pointer;font-weight:600;font-size:var(--text-sm);border:none;transition:all .2s;display:flex}.upload-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00e5ff4d}.knowledge-filters{gap:var(--space-md);margin-bottom:var(--space-lg);flex-wrap:wrap;display:flex}.knowledge-search{min-width:200px;padding:var(--space-sm) var(--space-md);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--text-sm);background:var(--surface);color:var(--text-primary);flex:1;transition:border-color .2s}.knowledge-search:focus{border-color:var(--xirv-accent);outline:none;box-shadow:0 0 0 3px #00e5ff1a}.knowledge-filter-select{padding:var(--space-sm) var(--space-md);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--text-sm);background:var(--surface);color:var(--text-primary);cursor:pointer;min-width:150px}.knowledge-filter-select:focus{border-color:var(--xirv-accent);outline:none}.knowledge-refresh-btn{padding:var(--space-sm) var(--space-lg);background:var(--background-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;font-size:var(--text-sm);transition:all .2s}.knowledge-refresh-btn:hover{background:var(--surface);border-color:var(--text-secondary)}.knowledge-stats{gap:var(--space-lg);margin-bottom:var(--space-lg);grid-template-columns:repeat(3,1fr);display:grid}.knowledge-stat-card{background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-lg)}.knowledge-stat-label{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-xs)}.knowledge-stat-value{font-size:var(--text-2xl);color:var(--text-primary);font-weight:700}.knowledge-table-container{background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.knowledge-table{border-collapse:collapse;width:100%}.knowledge-table thead{background:var(--background-primary);border-bottom:1px solid var(--border-color)}.knowledge-table th{text-align:left;padding:var(--space-md);font-size:var(--text-sm);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.knowledge-table td{padding:var(--space-md);border-bottom:1px solid var(--border-color);font-size:var(--text-sm);color:var(--text-primary)}.knowledge-table tbody tr{transition:background .15s}.knowledge-table tbody tr:hover{background:var(--background-primary)}.knowledge-table tbody tr:last-child td{border-bottom:none}.status-badge{padding:2px var(--space-sm);border-radius:9999px;align-items:center;font-size:11px;font-weight:600;display:inline-flex}.status-badge-draft{color:#92400e;background:#fef3c7}.status-badge-published{color:#065f46;background:#d1fae5}.status-badge-archived{color:#4b5563;background:#f3f4f6}.tag-list{flex-wrap:wrap;gap:4px;display:flex}.tag-item{padding:1px var(--space-sm);background:var(--background-primary);color:var(--text-secondary);border-radius:4px;font-size:11px;display:inline-flex}.action-btn{cursor:pointer;font-size:var(--text-sm);border-radius:var(--radius-sm);background:0 0;border:none;padding:4px 8px;transition:all .15s}.action-btn-view{color:#3b82f6}.action-btn-view:hover{background:#eff6ff}.action-btn-delete{color:#ef4444}.action-btn-delete:hover{background:#fef2f2}.action-btn-process{color:#8b5cf6}.action-btn-process:hover{background:#f5f3ff}.empty-state{text-align:center;padding:var(--space-xl);color:var(--text-secondary)}.empty-state-icon{margin-bottom:var(--space-md);font-size:48px}.empty-state h3{font-size:var(--text-lg);color:var(--text-primary);margin-bottom:var(--space-xs);font-weight:600}.empty-state p{font-size:var(--text-sm);margin:0}@media (width<=768px){.knowledge-page{padding:var(--space-md)}.knowledge-header{align-items:flex-start;gap:var(--space-md);flex-direction:column}.upload-btn{justify-content:center;width:100%}.knowledge-stats{grid-template-columns:1fr}.knowledge-filters{flex-direction:column}.knowledge-search{min-width:100%}.knowledge-filter-select{width:100%}.knowledge-table{font-size:12px}.knowledge-table th,.knowledge-table td{padding:var(--space-sm)}.knowledge-table .hide-mobile{display:none}}@media (width<=480px){.knowledge-table th,.knowledge-table td{padding:var(--space-xs);font-size:11px}}.analytics-page{padding:var(--space-xl);max-width:1400px;margin:0 auto}.analytics-header{margin-bottom:var(--space-lg);justify-content:space-between;align-items:center;display:flex}.analytics-header h1{font-size:var(--text-2xl);color:var(--text-primary);margin:0;font-weight:700}.analytics-header p{color:var(--text-secondary);margin:var(--space-xs) 0 0 0}.analytics-refresh-btn{padding:var(--space-sm) var(--space-lg);background:var(--xirv-accent);color:var(--xirv-primary);border-radius:var(--radius-sm);font-weight:600;font-size:var(--text-sm);cursor:pointer;border:none;transition:all .2s}.analytics-refresh-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00e5ff4d}.analytics-loading{justify-content:center;align-items:center;gap:var(--space-md);min-height:400px;color:var(--text-secondary);flex-direction:column;display:flex}.analytics-loading-spinner{border:3px solid var(--border-color);border-top-color:var(--xirv-accent);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.analytics-stats{gap:var(--space-lg);margin-bottom:var(--space-xl);grid-template-columns:repeat(4,1fr);display:grid}.analytics-stat-card{align-items:center;gap:var(--space-md);background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-lg);transition:all .2s;display:flex}.analytics-stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000000d}.analytics-stat-icon{flex-shrink:0;font-size:28px}.analytics-stat-content{flex:1}.analytics-stat-label{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-xs)}.analytics-stat-value{font-size:var(--text-xl);color:var(--text-primary);font-weight:700}.analytics-charts-row{gap:var(--space-lg);margin-bottom:var(--space-xl);grid-template-columns:1fr 1fr;display:grid}.analytics-chart-card{background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-lg)}.analytics-chart-card h3{font-size:var(--text-md);color:var(--text-primary);margin:0 0 var(--space-md) 0;font-weight:600}@media (width<=1024px){.analytics-stats{grid-template-columns:repeat(2,1fr)}.analytics-charts-row{grid-template-columns:1fr}}@media (width<=640px){.analytics-page{padding:var(--space-md)}.analytics-header{align-items:flex-start;gap:var(--space-md);flex-direction:column}.analytics-stats{grid-template-columns:1fr}.analytics-stat-card{padding:var(--space-md)}}.analytics-chart-header{margin-bottom:var(--space-md);justify-content:space-between;align-items:center;display:flex}.analytics-chart-title{align-items:center;gap:var(--space-sm);display:flex}.analytics-chart-title svg{color:var(--xirv-accent);flex-shrink:0}.analytics-chart-title h3{font-size:var(--text-md);color:var(--text-primary);margin:0;font-weight:600}.xirv-verification-badge{align-items:center;gap:var(--space-xs);padding:2px var(--space-sm);border-radius:9999px;font-weight:500;display:inline-flex}.xirv-verification-verified{color:#065f46;background:#d1fae5}.xirv-verification-verified svg{color:#059669}.xirv-verification-unverified{color:#92400e;background:#fef3c7}.xirv-verification-unverified svg{color:#d97706}.settings-page{padding:var(--space-xl);max-width:800px;margin:0 auto}.settings-header{margin-bottom:var(--space-xl)}.settings-header h1{font-size:var(--text-2xl);color:var(--text-primary);margin:0;font-weight:700}.settings-header p{color:var(--text-secondary);margin:var(--space-xs) 0 0 0}.settings-grid{gap:var(--space-xl);flex-direction:column;display:flex}.settings-card{background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-xl)}.settings-card-danger{background:#fef2f2;border-color:#fecaca}.settings-card-header{margin-bottom:var(--space-lg)}.settings-card-title{align-items:center;gap:var(--space-sm);display:flex}.settings-card-title svg{color:var(--xirv-accent)}.settings-card-title h2{font-size:var(--text-lg);color:var(--text-primary);margin:0;font-weight:600}.settings-card-title-danger svg{color:#ef4444}.settings-card-title-danger h2{color:#dc2626}.settings-form{gap:var(--space-md);flex-direction:column;display:flex}.settings-form-group{gap:var(--space-xs);flex-direction:column;display:flex}.settings-form-group label{font-size:var(--text-sm);color:var(--text-primary);font-weight:600}.settings-input-with-icon{background:var(--background-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);align-items:center;transition:border-color .2s,box-shadow .2s;display:flex}.settings-input-with-icon:focus-within{border-color:var(--xirv-accent);box-shadow:0 0 0 3px #00e5ff1a}.settings-input-with-icon svg{color:var(--text-secondary);margin:0 var(--space-sm);flex-shrink:0}.settings-input-with-icon input{padding:var(--space-sm) var(--space-sm) var(--space-sm) 0;font-size:var(--text-sm);color:var(--text-primary);font-family:var(--font-family);background:0 0;border:none;outline:none;flex:1}.settings-input-with-icon input::placeholder{color:var(--text-secondary)}.settings-password-toggle{color:var(--text-secondary);cursor:pointer;padding:var(--space-sm);background:0 0;border:none;align-items:center;display:flex}.settings-password-toggle:hover{color:var(--text-primary)}.settings-btn{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer;font-weight:600;font-family:var(--font-family);border:none;transition:all .2s;display:inline-flex}.settings-btn-primary{background:var(--xirv-accent);color:var(--xirv-primary)}.settings-btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #00e5ff4d}.settings-btn-primary:disabled{opacity:.6;cursor:not-allowed}.settings-btn-secondary{background:var(--background-primary);color:var(--text-secondary);border:1px solid var(--border-color)}.settings-btn-secondary:hover{background:var(--surface)}.settings-btn-danger{color:#fff;background:#ef4444}.settings-btn-danger:hover:not(:disabled){background:#dc2626;transform:translateY(-2px)}.settings-btn-danger:disabled{opacity:.6;cursor:not-allowed}.settings-danger-content{gap:var(--space-md);flex-direction:column;display:flex}.settings-danger-content p{color:var(--text-secondary);font-size:var(--text-sm);margin:0}.settings-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.settings-modal{background:var(--surface);border-radius:var(--radius-lg);width:100%;max-width:480px;margin:var(--space-md);box-shadow:0 24px 48px #0003}.settings-modal-header{padding:var(--space-lg) var(--space-xl);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;display:flex}.settings-modal-header h2{font-size:var(--text-lg);color:var(--text-primary);margin:0;font-weight:700}.settings-modal-close{color:var(--text-secondary);cursor:pointer;padding:0 var(--space-sm);background:0 0;border:none;font-size:28px;line-height:1}.settings-modal-close:hover{color:var(--text-primary)}.settings-modal-body{padding:var(--space-xl)}.settings-modal-body p{color:var(--text-secondary);font-size:var(--text-sm);margin:0 0 var(--space-md) 0}.settings-modal-warning{font-size:var(--text-sm);color:var(--text-primary)}.settings-modal-input{width:100%;padding:var(--space-sm) var(--space-md);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--text-sm);margin-top:var(--space-sm);font-family:var(--font-family);background:var(--surface);color:var(--text-primary)}.settings-modal-input:focus{border-color:var(--xirv-accent);outline:none}.settings-modal-footer{gap:var(--space-md);padding:var(--space-md) var(--space-xl);border-top:1px solid var(--border-color);justify-content:flex-end;display:flex}@media (width<=640px){.settings-page,.settings-card{padding:var(--space-md)}.settings-modal{margin:var(--space-md)}.settings-modal-footer{flex-direction:column}.settings-modal-footer .settings-btn{justify-content:center;width:100%}}.profile-preview{align-items:center;gap:var(--space-lg);padding:var(--space-lg);background:var(--background-primary);border-radius:var(--radius-md);margin-bottom:var(--space-lg);border:1px solid var(--border-color);display:flex}.profile-preview-avatar{flex-shrink:0}.profile-preview-avatar-img{object-fit:cover;border-radius:50%;width:80px;height:80px}.profile-preview-avatar-placeholder{background:var(--xirv-accent);width:80px;height:80px;color:var(--xirv-primary);border-radius:50%;justify-content:center;align-items:center;font-size:32px;font-weight:700;display:flex}.profile-preview-info{flex:1;min-width:0}.profile-preview-name{font-size:var(--text-lg);color:var(--text-primary);margin:0 0 2px;font-weight:700}.profile-preview-role{padding:1px var(--space-sm);background:var(--xirv-accent);color:var(--xirv-primary);border-radius:var(--radius-sm);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.5px;font-weight:600;display:inline-block}.profile-preview-details{gap:var(--space-md);margin-top:var(--space-xs);flex-wrap:wrap;display:flex}.profile-preview-detail{font-size:var(--text-sm);color:var(--text-secondary);align-items:center;gap:4px;display:inline-flex}.profile-preview-detail svg{color:var(--text-secondary)}.profile-preview-bio{align-items:flex-start;gap:var(--space-sm);margin-top:var(--space-sm);padding-top:var(--space-sm);border-top:1px solid var(--border-color);display:flex}.profile-preview-bio-icon{color:var(--text-secondary);flex-shrink:0;margin-top:2px}.profile-preview-bio p{font-size:var(--text-sm);color:var(--text-secondary);margin:0;line-height:1.5}.settings-form-row{gap:var(--space-md);grid-template-columns:1fr 1fr;display:grid}.settings-form-group-half{flex:1}.settings-textarea{padding:var(--space-sm) var(--space-sm) var(--space-sm) 0;font-size:var(--text-sm);color:var(--text-primary);font-family:var(--font-family);resize:vertical;background:0 0;border:none;outline:none;flex:1;width:100%;min-height:60px}.settings-textarea::placeholder{color:var(--text-secondary)}.settings-char-count{font-size:var(--text-xs);color:var(--text-secondary);text-align:right;margin-top:2px}@media (width<=640px){.settings-form-row{grid-template-columns:1fr}.profile-preview{text-align:center;flex-direction:column}.profile-preview-details{justify-content:center}.profile-preview-bio{text-align:left}}.auth-card{background:var(--surface);border-radius:var(--radius-lg);width:100%;max-width:420px;position:relative;overflow:hidden;box-shadow:0 24px 48px #00000026}.auth-card:before{content:"";background:linear-gradient(90deg, var(--xirv-accent), var(--xirv-highlight));height:4px;position:absolute;top:0;left:0;right:0}.auth-card-content{padding:var(--space-xl)}@media (width<=480px){.auth-card-content{padding:var(--space-lg)}}.auth-header{text-align:center;margin-bottom:var(--space-lg)}.auth-header-logo{margin-bottom:var(--space-lg);justify-content:center;align-items:baseline;gap:4px;display:flex}.auth-header-logo-text{color:var(--xirv-primary);font-size:24px;font-weight:700}.auth-header-logo-sub{color:var(--text-secondary);font-size:16px;font-weight:400}.auth-header-title{font-size:var(--text-xl);color:var(--text-primary);margin:0 0 var(--space-xs) 0;font-weight:700}.auth-header-subtitle{color:var(--text-secondary);font-size:var(--text-sm);margin:0}@media (width<=480px){.auth-header{margin-bottom:var(--space-md)}.auth-header-logo-text{font-size:20px}.auth-header-logo-sub{font-size:14px}.auth-header-title{font-size:var(--text-lg)}}.login-form{gap:var(--space-md);padding:var(--space-md) 0;flex-direction:column;display:flex}.login-form-title h2{font-size:var(--text-xl);color:var(--text-primary);margin:0 0 var(--space-xs) 0;font-weight:700}.login-form-title p{color:var(--text-secondary);font-size:var(--text-sm);margin:0}.login-error{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);color:#dc2626;font-size:var(--text-sm);background:#fef2f2;border:1px solid #fecaca;display:flex}.login-error-icon{font-size:14px;font-weight:700}.login-form-group{gap:var(--space-xs);flex-direction:column;display:flex}.login-form-group label{font-size:var(--text-sm);color:var(--text-primary);font-weight:600}.login-input-wrapper{background:var(--surface);border:1.5px solid var(--border-color);border-radius:var(--radius-sm);align-items:center;transition:all .2s;display:flex;overflow:hidden}.login-input-wrapper:focus-within{border-color:var(--xirv-accent);box-shadow:0 0 0 3px #00e5ff1a}.login-input-wrapper .login-input-icon{color:var(--text-secondary);margin:0 var(--space-sm);flex-shrink:0}.login-input-wrapper input{padding:var(--space-sm) var(--space-sm) var(--space-sm) 0;font-size:var(--text-sm);color:var(--text-primary);font-family:var(--font-family);background:0 0;border:none;outline:none;flex:1;width:100%}.login-input-wrapper input::placeholder{color:var(--text-secondary)}.login-password-toggle{color:var(--text-secondary);cursor:pointer;padding:var(--space-sm);background:0 0;border:none;flex-shrink:0;align-items:center;display:flex}.login-password-toggle:hover{color:var(--text-primary)}.login-options{font-size:var(--text-sm);justify-content:space-between;align-items:center;display:flex}.login-remember{align-items:center;gap:var(--space-xs);color:var(--text-secondary);cursor:pointer;display:flex}.login-remember input[type=checkbox]{width:16px;height:16px;accent-color:var(--xirv-accent);cursor:pointer}.login-forgot{color:var(--xirv-accent);font-weight:500;text-decoration:none;transition:opacity .2s}.login-forgot:hover{opacity:.7}.login-btn{justify-content:center;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-xl);background:var(--xirv-accent);color:var(--xirv-primary);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer;font-weight:600;font-family:var(--font-family);border:none;width:100%;min-height:48px;transition:all .2s;display:flex}.login-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 16px #00e5ff4d}.login-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.login-footer{text-align:center;font-size:var(--text-sm);color:var(--text-secondary);margin:0}.login-link{color:var(--xirv-accent);font-weight:600;text-decoration:none;transition:opacity .2s}.login-link:hover{opacity:.7}@media (width<=480px){.login-form{padding:var(--space-sm) 0}.login-options{gap:var(--space-sm);flex-direction:column;align-items:flex-start}.login-btn{min-height:44px}}.login-page{justify-content:center;align-items:center;width:100%;display:flex}.register-form{gap:var(--space-md);padding:var(--space-md) 0;flex-direction:column;display:flex}.register-form-title h2{font-size:var(--text-xl);color:var(--text-primary);margin:0 0 var(--space-xs) 0;font-weight:700}.register-form-title p{color:var(--text-secondary);font-size:var(--text-sm);margin:0}.register-error{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);color:#dc2626;font-size:var(--text-sm);background:#fef2f2;border:1px solid #fecaca;display:flex}.register-error-icon{font-size:14px;font-weight:700}.register-name-row{gap:var(--space-md);display:flex}.register-form-group-half{flex:1}.register-form-group{gap:var(--space-xs);flex-direction:column;display:flex}.register-form-group label{font-size:var(--text-sm);color:var(--text-primary);font-weight:600}.register-hint{color:var(--text-secondary);font-size:12px}.register-input-wrapper{background:var(--surface);border:1.5px solid var(--border-color);border-radius:var(--radius-sm);align-items:center;transition:all .2s;display:flex;overflow:hidden}.register-input-wrapper:focus-within{border-color:var(--xirv-accent);box-shadow:0 0 0 3px #00e5ff1a}.register-input-wrapper .register-input-icon{color:var(--text-secondary);margin:0 var(--space-sm);flex-shrink:0}.register-input-wrapper input{padding:var(--space-sm) var(--space-sm) var(--space-sm) 0;font-size:var(--text-sm);color:var(--text-primary);font-family:var(--font-family);background:0 0;border:none;outline:none;flex:1;width:100%}.register-input-wrapper input::placeholder{color:var(--text-secondary)}.register-password-toggle{color:var(--text-secondary);cursor:pointer;padding:var(--space-sm);background:0 0;border:none;flex-shrink:0;align-items:center;display:flex}.register-password-toggle:hover{color:var(--text-primary)}.register-btn{justify-content:center;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-xl);background:var(--xirv-accent);color:var(--xirv-primary);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer;font-weight:600;font-family:var(--font-family);border:none;width:100%;min-height:48px;transition:all .2s;display:flex}.register-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 16px #00e5ff4d}.register-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.register-footer{text-align:center;font-size:var(--text-sm);color:var(--text-secondary);margin:0}.register-link{color:var(--xirv-accent);font-weight:600;text-decoration:none;transition:opacity .2s}.register-link:hover{opacity:.7}@media (width<=480px){.register-form{padding:var(--space-sm) 0}.register-btn{min-height:44px}.register-name-row{gap:var(--space-sm);flex-direction:column}}.register-page{justify-content:center;align-items:center;width:100%;display:flex}.forgot-form{gap:var(--space-md);padding:var(--space-md) 0;flex-direction:column;display:flex}.forgot-form-title h2{font-size:var(--text-xl);color:var(--text-primary);margin:0 0 var(--space-xs) 0;font-weight:700}.forgot-form-title p{color:var(--text-secondary);font-size:var(--text-sm);margin:0}.forgot-form-group{gap:var(--space-xs);flex-direction:column;display:flex}.forgot-form-group label{font-size:var(--text-sm);color:var(--text-primary);font-weight:600}.forgot-input-wrapper{background:var(--surface);border:1.5px solid var(--border-color);border-radius:var(--radius-sm);align-items:center;transition:all .2s;display:flex;overflow:hidden}.forgot-input-wrapper:focus-within{border-color:var(--xirv-accent);box-shadow:0 0 0 3px #00e5ff1a}.forgot-input-wrapper .forgot-input-icon{color:var(--text-secondary);margin:0 var(--space-sm);flex-shrink:0}.forgot-input-wrapper input{padding:var(--space-sm) var(--space-sm) var(--space-sm) 0;font-size:var(--text-sm);color:var(--text-primary);font-family:var(--font-family);background:0 0;border:none;outline:none;flex:1;width:100%}.forgot-input-wrapper input::placeholder{color:var(--text-secondary)}.forgot-btn{justify-content:center;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-xl);background:var(--xirv-accent);color:var(--xirv-primary);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer;font-weight:600;font-family:var(--font-family);border:none;width:100%;min-height:48px;transition:all .2s;display:flex}.forgot-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 16px #00e5ff4d}.forgot-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.forgot-success{text-align:center;padding:var(--space-md) 0}.forgot-success-icon{color:#065f46;width:56px;height:56px;margin:0 auto var(--space-md);background:#d1fae5;border-radius:50%;justify-content:center;align-items:center;font-size:28px;font-weight:700;display:flex}.forgot-success h3{font-size:var(--text-lg);color:var(--text-primary);margin:0 0 var(--space-xs) 0;font-weight:600}.forgot-success p{color:var(--text-secondary);font-size:var(--text-sm);margin:0}.forgot-success p strong{color:var(--text-primary)}.forgot-back{justify-content:center;align-items:center;gap:var(--space-sm);color:var(--text-secondary);font-size:var(--text-sm);text-decoration:none;transition:color .2s;display:flex}.forgot-back:hover{color:var(--text-primary)}@media (width<=480px){.forgot-form{padding:var(--space-sm) 0}.forgot-btn{min-height:44px}}.forgot-password-page{justify-content:center;align-items:center;width:100%;display:flex}.verify-email-page{background:var(--background-primary);min-height:100vh;padding:var(--space-md);justify-content:center;align-items:center;display:flex}.verify-email-container{width:100%;max-width:480px;padding:var(--space-xl);background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border-color);text-align:center;box-shadow:0 4px 24px #0000000d}.verify-email-success,.verify-email-error{margin-bottom:var(--space-md);font-size:48px}.verify-email-loading{font-size:var(--text-lg);color:var(--text-secondary)}.verify-email-container p{color:var(--text-secondary);margin:var(--space-md) 0}.verify-email-btn{padding:var(--space-sm) var(--space-xl);background:var(--xirv-accent);color:var(--xirv-primary);border-radius:var(--radius-sm);margin-top:var(--space-sm);font-weight:600;text-decoration:none;transition:all .2s;display:inline-block}.verify-email-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00e5ff4d}.xirv-modal-btn-primary{color:#0f172a;background:#00e5ff}.xirv-modal-btn-primary:hover:not(:disabled){background:#00b8d4}.xirv-modal-btn-primary:disabled{opacity:.5;cursor:not-allowed}.xirv-modal-icon{justify-content:center;align-items:center;margin-bottom:1rem;display:flex}.xirv-modal-icon svg{color:#dc2626}.xirv-modal-body p{color:#334155;margin:0;font-size:1rem;line-height:1.6}.xirv-modal-hint{color:#94a3b8!important;margin-top:.5rem!important;font-size:.9rem!important}.xirv-modal-footer{justify-content:flex-end;gap:.75rem;display:flex}.xirv-modal-btn-danger{color:#fff;background:#dc2626}.xirv-modal-btn-danger:hover:not(:disabled){background:#b91c1c}.xirv-modal-btn-danger:disabled{opacity:.5;cursor:not-allowed}.xirv-workflows-page{padding:var(--space-xl);max-width:1200px;margin:0 auto}.xirv-page-header{margin-bottom:var(--space-lg);justify-content:space-between;align-items:flex-start;gap:var(--space-md);flex-wrap:wrap;display:flex}.xirv-page-subtitle{color:var(--text-secondary);margin:var(--space-xs) 0 0 0;font-size:var(--text-sm)}.xirv-header-actions{gap:var(--space-sm);flex-wrap:wrap;align-items:center;display:flex}.xirv-btn-primary{background:var(--xirv-accent);color:var(--xirv-primary);padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-md);cursor:pointer;font-weight:600;font-size:var(--text-sm);border:none;text-decoration:none;transition:all .2s;display:inline-block}.xirv-btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #00e5ff4d}.xirv-btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.xirv-btn-secondary{background:var(--background-primary);color:var(--text-secondary);border:1px solid var(--border-color);padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-md);cursor:pointer;font-weight:500;font-size:var(--text-sm);text-decoration:none;transition:all .2s;display:inline-block}.xirv-btn-secondary:hover{background:var(--surface);border-color:var(--text-secondary)}.xirv-btn-danger{color:var(--status-error);padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-md);cursor:pointer;font-weight:500;font-size:var(--text-sm);background:#dc26261a;border:1px solid #dc262633;transition:all .2s}.xirv-btn-danger:hover{background:#dc262633}.xirv-status-badge{padding:2px var(--space-sm);text-transform:uppercase;letter-spacing:.5px;border-radius:9999px;font-size:11px;font-weight:600;display:inline-block}.xirv-status-draft{color:#92400e;background:#fef3c7}.xirv-status-active{color:#065f46;background:#d1fae5}.xirv-status-paused{color:#92400e;background:#fef3c7}.xirv-status-archived{color:#4b5563;background:#f3f4f6}.xirv-status-pending{color:#92400e;background:#fef3c7}.xirv-status-running{color:#1e40af;background:#dbeafe}.xirv-status-completed{color:#065f46;background:#d1fae5}.xirv-status-failed{color:#991b1b;background:#fee2e2}.xirv-status-cancelled{color:#4b5563;background:#f3f4f6}.xirv-status-in_progress{color:#1e40af;background:#dbeafe}.xirv-status-blocked{color:#991b1b;background:#fee2e2}.xirv-workflow-list{gap:var(--space-md);flex-direction:column;display:flex}.xirv-workflow-card{background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-lg);transition:all .3s}.xirv-workflow-card:hover{border-color:var(--xirv-accent);box-shadow:0 4px 12px #0000000d}.xirv-workflow-card-header{justify-content:space-between;align-items:flex-start;gap:var(--space-md);flex-wrap:wrap;display:flex}.xirv-workflow-info h3{font-size:var(--text-lg);margin:0}.xirv-workflow-info h3 a{color:var(--text-primary);text-decoration:none;transition:color .2s}.xirv-workflow-info h3 a:hover{color:var(--xirv-accent)}.xirv-workflow-info p{margin:var(--space-xs) 0 0 0;color:var(--text-secondary);font-size:var(--text-sm)}.xirv-workflow-actions{gap:var(--space-sm);flex-wrap:wrap;align-items:center;display:flex}.xirv-workflow-card-footer{margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--border-color);gap:var(--space-lg);font-size:var(--text-sm);color:var(--text-secondary);flex-wrap:wrap;display:flex}.xirv-template-badge{background:var(--background-primary);color:var(--text-secondary);padding:1px var(--space-sm);border-radius:4px;font-size:11px}.xirv-empty-state{text-align:center;padding:var(--space-xl);color:var(--text-secondary);border:2px dashed var(--border-color);border-radius:var(--radius-md)}.xirv-empty-state h3{color:var(--text-primary);margin:0 0 var(--space-xs) 0;font-size:var(--text-lg)}.xirv-empty-state p{margin:0;max-width:400px;font-size:var(--text-sm);margin-inline:auto}.xirv-error{text-align:center;padding:var(--space-lg);color:var(--status-error);border-radius:var(--radius-md);background:#dc26260d;border:1px solid #dc26261a}.xirv-error button{margin-top:var(--space-md)}.xirv-workflow-form{max-width:800px;margin:0 auto}.xirv-form-group{margin-bottom:var(--space-lg)}.xirv-form-group label{margin-bottom:var(--space-xs);color:var(--text-primary);font-weight:600;font-size:var(--text-sm);display:block}.xirv-form-group label .required{color:var(--status-error)}.xirv-form-input,.xirv-form-select,.xirv-form-textarea{width:100%;padding:var(--space-sm) var(--space-md);background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--text-sm);font-family:inherit;transition:border-color .2s}.xirv-form-input:focus,.xirv-form-select:focus,.xirv-form-textarea:focus{border-color:var(--xirv-accent);outline:none;box-shadow:0 0 0 3px #00e5ff1a}.xirv-form-textarea{resize:vertical;font-family:Consolas,Monaco,monospace}.xirv-json-editor{font-family:Consolas,Monaco,monospace;font-size:var(--text-sm)}.xirv-json-error{border-color:var(--status-error)}.xirv-form-error{color:var(--status-error);font-size:var(--text-sm);margin-top:var(--space-xs)}.xirv-form-help{color:var(--text-secondary);font-size:var(--text-sm);margin-top:var(--space-xs)}.xirv-form-actions{margin-top:var(--space-xl)}.xirv-workflow-detail{max-width:900px;margin:0 auto}.xirv-detail-section{margin-bottom:var(--space-xl);padding-bottom:var(--space-xl);border-bottom:1px solid var(--border-color)}.xirv-detail-section:last-child{border-bottom:none}.xirv-detail-section h3{font-size:var(--text-lg);color:var(--text-primary);margin:0 0 var(--space-md) 0;font-weight:600}.xirv-detail-grid{gap:var(--space-xl);grid-template-columns:1fr 1fr;display:grid}@media (width<=640px){.xirv-detail-grid{gap:var(--space-md);grid-template-columns:1fr}}.xirv-detail-section dl{gap:var(--space-xs) var(--space-md);grid-template-columns:1fr 2fr;margin:0;display:grid}.xirv-detail-section dt{color:var(--text-secondary);font-weight:500;font-size:var(--text-sm)}.xirv-detail-section dd{color:var(--text-primary);font-size:var(--text-sm);margin:0}.xirv-json-viewer{background:var(--background-primary);padding:var(--space-md);border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--text-primary);border:1px solid var(--border-color);margin:0;font-family:Consolas,Monaco,monospace;overflow-x:auto}.xirv-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.xirv-table th{text-align:left;padding:var(--space-sm) var(--space-md);color:var(--text-secondary);border-bottom:1px solid var(--border-color);font-weight:600;font-size:var(--text-sm)}.xirv-table td{padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--border-color);color:var(--text-primary)}.xirv-table tr:hover td{background:var(--background-primary)}.xirv-filter-group{background:var(--background-primary);border-radius:var(--radius-sm);border:1px solid var(--border-color);gap:4px;padding:4px;display:flex}.xirv-filter-group button{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;font-size:var(--text-sm);background:0 0;border:none;transition:all .2s}.xirv-filter-group button:hover{color:var(--text-primary)}.xirv-filter-active{background:var(--surface);box-shadow:0 1px 3px #0000000d;color:var(--text-primary)!important}.xirv-task-grid{gap:var(--space-md);grid-template-columns:repeat(auto-fill,minmax(320px,1fr));display:grid}.xirv-task-card{background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-lg);transition:all .3s}.xirv-task-card:hover{border-color:var(--xirv-accent);box-shadow:0 4px 12px #0000000d}.xirv-task-card-header{justify-content:space-between;align-items:flex-start;gap:var(--space-sm);display:flex}.xirv-task-card-header h3{font-size:var(--text-md);color:var(--text-primary);margin:0}.xirv-task-workflow{font-size:var(--text-sm);color:var(--text-secondary)}.xirv-priority-badge{padding:1px var(--space-sm);border-radius:4px;font-size:11px;font-weight:700}.xirv-priority-1{color:#065f46;background:#d1fae5}.xirv-priority-2{color:#1e40af;background:#dbeafe}.xirv-priority-3{color:#92400e;background:#fef3c7}.xirv-priority-4{color:#9a3412;background:#fed7aa}.xirv-priority-5{color:#991b1b;background:#fee2e2}.xirv-task-description{color:var(--text-secondary);font-size:var(--text-sm);margin:var(--space-sm) 0}.xirv-task-meta{gap:var(--space-sm);margin:var(--space-sm) 0;font-size:var(--text-sm);flex-wrap:wrap;align-items:center;display:flex}.xirv-task-due,.xirv-task-assignee{color:var(--text-secondary)}.xirv-task-approvals{align-items:center;gap:var(--space-sm);margin:var(--space-sm) 0;padding:var(--space-sm);background:var(--background-primary);border-radius:var(--radius-sm);display:flex}.xirv-approval-label{font-size:var(--text-sm);color:var(--text-secondary)}.xirv-task-actions{gap:var(--space-sm);margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--border-color);display:flex}.xirv-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#00000080;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.xirv-modal{background:#fff;border:1px solid #e5e7eb;border-radius:1rem;width:100%;max-width:450px;padding:2rem;animation:.25s slideUp;box-shadow:0 20px 60px #00000026}.xirv-modal-lg{max-width:600px}.xirv-modal-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.xirv-modal-header h2{color:#0f172a;margin:0;font-size:1.25rem}.xirv-modal-close{color:#94a3b8;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:4px;transition:color .2s;display:flex}.xirv-modal-subtitle{color:#64748b;text-align:center;margin-bottom:1.5rem;font-size:1rem}.xirv-modal-subtitle strong{color:#0f172a}.xirv-modal-empty{text-align:center;color:#94a3b8;padding:2rem 0}.xirv-approval-list{flex-direction:column;gap:1rem;margin:1rem 0;display:flex}.xirv-approval-item{background:#f8fafc;border:1px solid #e5e7eb;border-radius:.75rem;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.xirv-approval-info{flex:1}.xirv-approval-requester{color:#0f172a;align-items:center;gap:6px;margin-bottom:4px;font-weight:600;display:flex}.xirv-approval-date{color:#94a3b8;align-items:center;gap:4px;font-size:.85rem;display:flex}.xirv-approval-comment{color:#64748b;background:#f1f5f9;border-radius:4px;margin-top:6px;padding:4px 8px;font-size:.9rem;font-style:italic}.xirv-approval-actions{gap:.5rem;display:flex}.xirv-approval-btn{cursor:pointer;border:none;border-radius:.5rem;align-items:center;gap:4px;padding:.4rem 1rem;font-size:.9rem;font-weight:600;transition:all .2s;display:flex}.xirv-approval-btn-approve{color:#065f46;background:#d1fae5}.xirv-approval-btn-approve:hover:not(:disabled){background:#a7f3d0}.xirv-approval-btn-approve:disabled{opacity:.5;cursor:not-allowed}.xirv-approval-btn-reject{color:#991b1b;background:#fee2e2}.xirv-approval-btn-reject:hover:not(:disabled){background:#fecaca}.xirv-approval-btn-reject:disabled{opacity:.5;cursor:not-allowed}.xirv-modal-form-group{margin-top:1.5rem}.xirv-modal-form-group label{color:#0f172a;margin-bottom:.5rem;font-size:.9rem;font-weight:600;display:block}.xirv-modal-textarea{color:#0f172a;resize:vertical;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;width:100%;min-height:60px;padding:.6rem .75rem;font-family:inherit;font-size:.95rem;transition:border-color .2s}.xirv-modal-textarea:focus{border-color:#00e5ff;outline:none;box-shadow:0 0 0 3px #00e5ff1a}.xirv-modal-textarea::placeholder{color:#94a3b8}.xirv-modal-footer{border-top:1px solid #e5e7eb;justify-content:flex-end;gap:.75rem;padding-top:1rem;display:flex}.xirv-modal-btn{cursor:pointer;border:none;border-radius:.5rem;padding:.6rem 1.5rem;font-weight:600;transition:all .2s}.xirv-modal-btn-secondary{color:#475569;background:#f1f5f9}.xirv-modal-btn-secondary:hover:not(:disabled){background:#e2e8f0}.xirv-modal-btn-secondary:disabled{opacity:.5;cursor:not-allowed}.xirv-user-table-container{background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.xirv-user-table-header{padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.xirv-user-table-search{gap:var(--space-sm);flex:1;align-items:center;display:flex}.xirv-user-table-search input{min-width:200px;padding:var(--space-sm) var(--space-md);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--text-sm);background:var(--surface);color:var(--text-primary);flex:1}.xirv-user-table-search input:focus{border-color:var(--xirv-accent);outline:none;box-shadow:0 0 0 3px #00e5ff1a}.xirv-user-count{color:var(--text-secondary);font-size:var(--text-sm);font-weight:500}.xirv-user-table-wrapper{overflow-x:auto}.xirv-user-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.xirv-user-table thead{background:var(--background-primary);border-bottom:1px solid var(--border-color)}.xirv-user-table th{text-align:left;padding:var(--space-sm) var(--space-md);color:var(--text-secondary);font-weight:600;font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.5px}.xirv-user-table td{padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--border-color);color:var(--text-primary);vertical-align:middle}.xirv-user-table tbody tr:hover{background:var(--background-primary)}.xirv-user-name{color:var(--text-primary);font-weight:600}.xirv-user-date{color:var(--text-secondary);margin-top:2px;font-size:11px}.xirv-role-user{color:#4b5563;background:#e5e7eb}.xirv-role-super{color:#92400e;background:#fef3c7}.xirv-role-select{padding:var(--space-xs) var(--space-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--text-sm);background:var(--surface);color:var(--text-primary);cursor:pointer}.xirv-role-select:disabled{opacity:.5;cursor:not-allowed}.xirv-role-select:focus{border-color:var(--xirv-accent);outline:none}.xirv-spinner{margin-left:var(--space-xs);animation:1s linear infinite spin;display:inline-block}.xirv-empty-state p{margin:0}.xirv-system-status-cards{gap:var(--space-md);margin-bottom:var(--space-xl);grid-template-columns:repeat(4,1fr);display:grid}.xirv-status-card{background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-lg);text-align:center}.xirv-status-label{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-xs);font-weight:500}.xirv-status-value{font-size:var(--text-lg);color:var(--text-primary);font-weight:700}.xirv-status-value.healthy{color:var(--status-active)}.xirv-status-value.warning{color:var(--status-warning)}.xirv-audit-logs{background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.xirv-audit-logs-header{padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;display:flex}.xirv-audit-logs-header h3{font-size:var(--text-md);color:var(--text-primary);margin:0;font-weight:600}.xirv-log-count{color:var(--text-secondary);font-size:var(--text-sm)}.xirv-audit-log-list{padding:var(--space-md)}.xirv-audit-log-item{padding:var(--space-sm) 0;border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;display:flex}.xirv-audit-log-item:last-child{border-bottom:none}.xirv-audit-log-user{color:var(--text-primary);font-weight:600}.xirv-audit-log-action{color:var(--text-secondary);margin:0 var(--space-md);flex:1}.xirv-audit-log-time{color:var(--text-secondary);font-size:var(--text-sm)}.xirv-cache-controls{background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-xl);text-align:center}.xirv-cache-controls h3{margin:0 0 var(--space-sm) 0;font-size:var(--text-lg);color:var(--text-primary);font-weight:600}.xirv-cache-controls p{color:var(--text-secondary);margin:0 0 var(--space-lg) 0;font-size:var(--text-sm)}@media (width<=768px){.xirv-system-status-cards{grid-template-columns:repeat(2,1fr)}.xirv-user-table-header{flex-direction:column;align-items:stretch}.xirv-user-table-search{flex-wrap:wrap}.xirv-audit-log-item{gap:var(--space-sm);flex-wrap:wrap}.xirv-audit-log-action{flex:100%;margin:0}}@media (width<=480px){.xirv-system-status-cards{grid-template-columns:1fr}.xirv-user-table{font-size:12px}.xirv-user-table th,.xirv-user-table td{padding:var(--space-sm)}}.xirv-team-card{background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-lg);gap:var(--space-sm);flex-direction:column;transition:all .2s;display:flex}.xirv-team-card:hover{border-color:var(--xirv-accent);box-shadow:0 4px 12px #0000000d}.xirv-team-card-header{justify-content:space-between;align-items:flex-start;gap:var(--space-sm);min-width:0;display:flex}.xirv-team-card-title{align-items:flex-start;gap:var(--space-sm);cursor:pointer;display:flex}.xirv-team-card-title>div{flex:1;min-width:0}.xirv-team-card-title h3{font-size:var(--text-md);color:var(--text-primary);word-break:break-word;margin:0;font-weight:600}.xirv-team-card-title p{color:var(--text-secondary);font-size:var(--text-sm);word-break:break-word;margin:2px 0 0}.xirv-team-card-expand{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;flex-shrink:0;margin-top:2px;padding:4px}.xirv-team-card-expand:hover{color:var(--text-primary)}.xirv-team-card-actions{align-items:center;gap:var(--space-xs);display:flex}.xirv-team-card-badge{padding:2px var(--space-sm);background:var(--background-primary);border-radius:var(--radius-sm);font-size:var(--text-xs);color:var(--text-secondary);align-items:center;gap:4px;display:inline-flex}.xirv-team-card-body{padding-top:var(--space-md);border-top:1px solid var(--border-color)}.xirv-team-card-footer{padding-top:var(--space-sm);border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;display:flex}.xirv-team-members-list{gap:var(--space-sm);flex-direction:column;display:flex}.xirv-team-members-header{justify-content:space-between;align-items:center;display:flex}.xirv-team-members-count{font-size:var(--text-sm);color:var(--text-secondary)}.xirv-team-members-empty{text-align:center;padding:var(--space-md);color:var(--text-secondary);font-size:var(--text-sm)}.xirv-team-members-empty button{margin-top:var(--space-sm)}.xirv-team-members-grid{gap:var(--space-xs);flex-direction:column;display:flex}.xirv-team-member-item{padding:var(--space-sm) var(--space-md);background:var(--background-primary);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;transition:background .2s;display:flex}.xirv-team-member-item:hover{background:var(--surface)}.xirv-team-member-info{align-items:center;gap:var(--space-sm);display:flex}.xirv-team-member-avatar{background:var(--xirv-accent);width:28px;height:28px;color:var(--xirv-primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.xirv-team-member-details{flex-direction:column;display:flex}.xirv-team-member-name{font-weight:500;font-size:var(--text-sm);color:var(--text-primary)}.xirv-team-member-email{color:var(--text-secondary);font-size:11px}.xirv-team-member-actions{align-items:center;gap:var(--space-sm);flex-shrink:0;display:flex}.xirv-team-member-role-badge{padding:1px var(--space-sm);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.3px;align-items:center;gap:3px;font-size:10px;font-weight:600;display:inline-flex}.xirv-team-member-role-badge.leader{color:#92400e;background:#fef3c7}.xirv-role-select-sm{padding:2px var(--space-sm);min-width:80px;font-size:11px}.xirv-btn-icon{min-width:auto;padding:4px}.xirv-text-muted{color:var(--text-secondary);font-size:var(--text-sm)}.xirv-modal{background:var(--surface);border-radius:var(--radius-lg);width:100%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0003}.xirv-modal-sm{max-width:400px}.xirv-modal-header{padding:var(--space-lg) var(--space-xl);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;display:flex}.xirv-modal-header h2,.xirv-modal-header h3{font-size:var(--text-lg);color:var(--text-primary);margin:0;font-weight:600}.xirv-modal-body{padding:var(--space-xl)}.xirv-modal-footer{justify-content:flex-end;gap:var(--space-sm);padding:var(--space-md) var(--space-xl);border-top:1px solid var(--border-color);display:flex}.xirv-invite-form .xirv-form-group{margin-bottom:var(--space-lg)}.xirv-invite-form label{margin-bottom:var(--space-xs);color:var(--text-primary);font-weight:600;font-size:var(--text-sm);display:block}.xirv-invite-form .xirv-form-input,.xirv-invite-form .xirv-form-select{width:100%;padding:var(--space-sm) var(--space-md);background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--text-sm);transition:border-color .2s}.xirv-invite-form .xirv-form-input:focus,.xirv-invite-form .xirv-form-select:focus{border-color:var(--xirv-accent);outline:none;box-shadow:0 0 0 3px #00e5ff1a}.xirv-btn-danger-small:disabled{opacity:.5;cursor:not-allowed}.xirv-org-grid{gap:var(--space-lg);grid-template-columns:repeat(auto-fill,minmax(320px,1fr));display:grid}@media (width<=768px){.xirv-member-controls{flex-direction:column;align-items:stretch}.xirv-member-search{min-width:auto}.xirv-team-grid{grid-template-columns:1fr}.xirv-invite-form{padding:var(--space-lg)}.xirv-team-card-header{flex-direction:column}.xirv-team-card-actions{justify-content:flex-end;width:100%}.xirv-team-member-item{gap:var(--space-sm);flex-wrap:wrap}.xirv-team-member-actions{flex-wrap:wrap}.xirv-modal{margin:var(--space-md)}.xirv-org-grid{grid-template-columns:1fr}}@media (width<=480px){.xirv-team-card,.xirv-invite-form{padding:var(--space-md)}.xirv-team-member-item{flex-direction:column;align-items:stretch}.xirv-team-member-actions{justify-content:flex-start}.xirv-org-card{padding:var(--space-lg)}}.xirv-super-admin{padding:var(--space-xl);max-width:1400px;margin:0 auto}.xirv-super-admin-hero{justify-content:space-between;align-items:center;gap:var(--space-xl);padding:var(--space-xl);border-radius:var(--radius-lg);background:linear-gradient(135deg, var(--xirv-primary), var(--xirv-accent));color:#fff;margin-bottom:var(--space-xl);display:flex}.xirv-super-admin-hero h1{margin:0 0 var(--space-sm) 0;color:#fff;font-size:var(--text-2xl);font-weight:700}.xirv-super-admin-hero p{color:#ffffffe6;margin:0}.xirv-super-admin-hero>div{gap:var(--space-sm);flex-direction:column;display:flex}.xirv-hero-btn{padding:var(--space-sm) var(--space-lg);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:var(--radius-md);color:#fff;white-space:nowrap;background:#ffffff26;border:1px solid #fff3;align-items:center;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.xirv-hero-btn:hover{background:#ffffff40;transform:translateY(-2px)}.xirv-stat-icon.users{color:#2563eb;background:#dbeafe}.xirv-stat-icon.logs{color:#d97706;background:#fef3c7}.xirv-stat-icon.system{color:#059669;background:#d1fae5}.xirv-stat-icon.cache{color:#dc2626;background:#fce4ec}.xirv-super-admin-grid{gap:var(--space-lg);grid-template-columns:repeat(4,1fr);display:grid}.xirv-super-admin-card{padding:var(--space-xl);background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);text-align:center;flex-direction:column;align-items:center;text-decoration:none;transition:all .2s;display:flex}.xirv-super-admin-card:hover{border-color:var(--xirv-accent);transform:translateY(-4px);box-shadow:0 8px 24px #00000014}.xirv-super-admin-card svg{color:var(--xirv-accent);margin-bottom:var(--space-md)}.xirv-super-admin-card h3{margin:0 0 var(--space-xs) 0;font-size:var(--text-md);font-weight:600}.xirv-super-admin-card p{margin:0 0 var(--space-md) 0;color:var(--text-secondary);font-size:var(--text-sm);flex:1}.xirv-super-admin-card:hover .xirv-card-action{transform:translate(4px)}@media (width<=1024px){.xirv-admin-stats,.xirv-super-admin-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.xirv-super-admin{padding:var(--space-md)}.xirv-super-admin-hero{text-align:center;padding:var(--space-lg);flex-direction:column}.xirv-admin-stats,.xirv-super-admin-grid{grid-template-columns:1fr}.xirv-hero-btn{justify-content:center;width:100%}}@media (width<=480px){.xirv-stat-card{padding:var(--space-md)}}.xirv-system-metrics{gap:var(--space-md);margin-bottom:var(--space-xl);grid-template-columns:repeat(4,1fr);display:grid}.xirv-system-metric-card{align-items:center;gap:var(--space-md);padding:var(--space-lg);background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-md);transition:all .2s;display:flex}.xirv-system-metric-card:hover{border-color:var(--xirv-accent);box-shadow:0 4px 12px #0000000d}.xirv-system-metric-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.xirv-system-metric-icon.status{color:#059669;background:#d1fae5}.xirv-system-metric-icon.uptime{color:#2563eb;background:#dbeafe}.xirv-system-metric-icon.node{color:#d97706;background:#fef3c7}.xirv-system-metric-icon.env{color:#7c3aed;background:#f3e8ff}.xirv-system-metric-content{flex:1;min-width:0}.xirv-system-metric-label{font-size:var(--text-sm);color:var(--text-secondary);font-weight:500;display:block}.xirv-system-metric-value{font-size:var(--text-lg);color:var(--text-primary);font-weight:700;display:block}.xirv-system-metric-value.healthy{color:var(--status-active)}.xirv-system-memory-section{background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-xl);margin-bottom:var(--space-lg)}.xirv-system-memory-section h2{font-size:var(--text-lg);color:var(--text-primary);margin:0 0 var(--space-lg) 0;font-weight:600}.xirv-system-memory-grid{gap:var(--space-md);grid-template-columns:repeat(4,1fr);display:grid}.xirv-system-memory-card{padding:var(--space-md);background:var(--background-primary);border-radius:var(--radius-sm);text-align:center}.xirv-system-memory-label{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-xs);font-weight:500;display:block}.xirv-system-memory-value{font-size:var(--text-xl);color:var(--text-primary);font-weight:700;display:block}.xirv-system-timestamp{text-align:right;font-size:var(--text-sm);color:var(--text-secondary);padding-top:var(--space-md);border-top:1px solid var(--border-color)}@media (width<=1024px){.xirv-system-metrics,.xirv-system-memory-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.xirv-system-metrics,.xirv-system-memory-grid{grid-template-columns:1fr}.xirv-system-metric-card{padding:var(--space-md)}}@media (width<=480px){.xirv-system-memory-card{padding:var(--space-sm)}.xirv-system-memory-value{font-size:var(--text-lg)}}.xirv-super-admin-page{padding:var(--space-xl);max-width:1400px;margin:0 auto}.xirv-org-grid{gap:var(--space-lg);margin-top:var(--space-xl);grid-template-columns:repeat(auto-fill,minmax(320px,1fr));display:grid}.xirv-org-card{background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-xl);transition:all .2s}.xirv-org-card:hover{border-color:var(--xirv-accent);transform:translateY(-2px);box-shadow:0 4px 12px #0000000d}.xirv-org-header{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-xs);display:flex}.xirv-org-header h3{font-size:var(--text-lg);color:var(--text-primary);margin:0;font-weight:600}.xirv-org-slug{font-size:var(--text-sm);color:var(--text-secondary);background:var(--background-primary);padding:0 var(--space-sm);border-radius:var(--radius-sm);font-family:monospace}.xirv-org-card p{color:var(--text-secondary);font-size:var(--text-sm);margin:var(--space-sm) 0 var(--space-md) 0}.xirv-org-meta{gap:var(--space-lg);padding-top:var(--space-md);border-top:1px solid var(--border-color);font-size:var(--text-sm);color:var(--text-secondary);display:flex}.xirv-org-meta span{align-items:center;gap:4px;display:flex}@media (width<=768px){.xirv-super-admin-page{padding:var(--space-md)}.xirv-org-grid{grid-template-columns:1fr}.xirv-org-card{padding:var(--space-lg)}.xirv-org-header{flex-wrap:wrap}.xirv-org-meta{gap:var(--space-sm);flex-direction:column}}@media (width<=480px){.xirv-org-card{padding:var(--space-md)}.xirv-org-header h3{font-size:var(--text-md)}}.xirv-org-actions{gap:var(--space-sm);margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--border-color);display:flex}.xirv-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.xirv-modal-container{background:var(--surface);border-radius:var(--radius-lg);padding:var(--space-xl);width:100%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0003}.xirv-modal-header{margin-bottom:var(--space-lg);justify-content:space-between;align-items:center;display:flex}.xirv-modal-header h2{font-size:var(--text-xl);color:var(--text-primary);margin:0;font-weight:700}.xirv-modal-close{color:var(--text-secondary);cursor:pointer;padding:var(--space-xs);background:0 0;border:none;transition:color .2s}.xirv-modal-close:hover{color:var(--text-primary)}.xirv-modal-body{text-align:center;padding:var(--space-md) 0}.xirv-confirm-icon{color:var(--status-error);margin-bottom:var(--space-md);font-size:48px}.xirv-confirm-text{font-size:var(--text-md);color:var(--text-primary);margin-bottom:var(--space-sm)}.xirv-confirm-hint{font-size:var(--text-sm);color:var(--text-secondary)}.xirv-modal-footer{gap:var(--space-sm);margin-top:var(--space-lg);padding-top:var(--space-md);border-top:1px solid var(--border-color);justify-content:flex-end;display:flex}.xirv-modal-footer .xirv-btn-secondary,.xirv-modal-footer .xirv-btn-primary,.xirv-modal-footer .xirv-btn-danger{padding:var(--space-sm) var(--space-xl)}.xirv-super-admin-verification-card{background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-xl);margin-bottom:var(--space-xl);transition:border-color .2s}.xirv-super-admin-verification-card:hover{border-color:#00e5ff33}.xirv-verification-header{align-items:flex-start;gap:var(--space-md);margin-bottom:var(--space-lg);padding-bottom:var(--space-md);border-bottom:1px solid var(--border-color);display:flex}.xirv-verification-icon{color:var(--xirv-accent);flex-shrink:0;margin-top:2px}.xirv-verification-header h2{font-size:var(--text-lg);color:var(--text-primary);margin:0;font-weight:600}.xirv-verification-header p{font-size:var(--text-sm);color:var(--text-secondary);margin:2px 0 0}.xirv-verification-content{align-items:center;gap:var(--space-md);padding:var(--space-sm) 0;flex-wrap:wrap;display:flex}.xirv-btn-resend:hover{border-color:var(--xirv-accent);background:#00e5ff0d}@media (width<=768px){.xirv-super-admin-verification-card{padding:var(--space-lg)}.xirv-verification-header{gap:var(--space-xs);flex-direction:column}.xirv-verification-content{align-items:flex-start;gap:var(--space-sm);flex-direction:column}.xirv-btn-resend{justify-content:center;width:100%}}@media (width<=480px){.xirv-super-admin-verification-card{padding:var(--space-md)}}.xirv-admin-dashboard{padding:var(--space-xl);max-width:1400px;margin:0 auto}.xirv-admin-hero{justify-content:space-between;align-items:center;gap:var(--space-xl);padding:var(--space-xl);border-radius:var(--radius-lg);background:linear-gradient(135deg, var(--xirv-primary), var(--xirv-secondary));color:#fff;margin-bottom:var(--space-xl);display:flex}.xirv-admin-hero h1{margin:0 0 var(--space-sm) 0;color:#fff;font-size:var(--text-2xl);font-weight:700}.xirv-admin-hero p{color:#ffffffe6;margin:0}.xirv-admin-hero>div{gap:var(--space-sm);flex-direction:column;display:flex}.xirv-admin-stats{gap:var(--space-md);margin-bottom:var(--space-xl);grid-template-columns:repeat(4,1fr);display:grid}.xirv-stat-card{align-items:center;gap:var(--space-md);padding:var(--space-lg);background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-md);transition:all .2s;display:flex}.xirv-stat-card:hover{border-color:var(--xirv-accent);box-shadow:0 4px 12px #0000000d}.xirv-stat-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.xirv-stat-icon.organization{color:#2563eb;background:#dbeafe}.xirv-stat-icon.members{color:#059669;background:#d1fae5}.xirv-stat-icon.invites{color:#d97706;background:#fef3c7}.xirv-stat-icon.role{color:#7c3aed;background:#f3e8ff}.xirv-stat-content{flex:1;min-width:0}.xirv-stat-value{font-size:var(--text-xl);color:var(--text-primary);font-weight:700;display:block}.xirv-stat-label{font-size:var(--text-sm);color:var(--text-secondary);font-weight:500;display:block}.xirv-admin-section-title{font-size:var(--text-lg);color:var(--text-primary);margin:0 0 var(--space-lg) 0;font-weight:600}.xirv-admin-grid{gap:var(--space-lg);grid-template-columns:repeat(4,1fr);display:grid}.xirv-admin-card{padding:var(--space-xl);background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);text-align:center;flex-direction:column;align-items:center;text-decoration:none;transition:all .2s;display:flex}.xirv-admin-card:hover{border-color:var(--xirv-accent);transform:translateY(-4px);box-shadow:0 8px 24px #00000014}.xirv-admin-card svg{color:var(--xirv-accent);margin-bottom:var(--space-md)}.xirv-admin-card h3{margin:0 0 var(--space-xs) 0;font-size:var(--text-md);font-weight:600}.xirv-admin-card p{margin:0 0 var(--space-md) 0;color:var(--text-secondary);font-size:var(--text-sm);flex:1}.xirv-card-action{color:var(--xirv-accent);font-weight:600;font-size:var(--text-sm);transition:transform .2s}.xirv-admin-card:hover .xirv-card-action{transform:translate(4px)}.xirv-admin-page{padding:var(--space-xl);max-width:1400px;margin:0 auto}.xirv-page-header{margin-bottom:var(--space-xl)}.xirv-page-header h1{font-size:var(--text-2xl);color:var(--text-primary);margin:0;font-weight:700}.xirv-page-header p{color:var(--text-secondary);margin:var(--space-xs) 0 0 0;font-size:var(--text-md)}.xirv-member-controls{gap:var(--space-md);margin-bottom:var(--space-lg);flex-wrap:wrap;align-items:center;display:flex}.xirv-member-search{align-items:center;gap:var(--space-sm);min-width:200px;padding:var(--space-sm) var(--space-md);background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);flex:1;display:flex}.xirv-member-search input{font-size:var(--text-sm);color:var(--text-primary);background:0 0;border:none;outline:none;flex:1}.xirv-member-table-container{background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.xirv-member-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.xirv-member-table thead{background:var(--background-primary);border-bottom:1px solid var(--border-color)}.xirv-member-table th{text-align:left;padding:var(--space-sm) var(--space-md);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:600}.xirv-member-table td{padding:var(--space-sm) var(--space-md);border-bottom:1px solid var(--border-color);color:var(--text-primary);vertical-align:middle}.xirv-member-table tbody tr:hover{background:var(--background-primary)}.xirv-member-name{font-weight:600}.xirv-owner-badge{margin-left:var(--space-sm);color:#92400e;background:#fef3c7;border-radius:4px;padding:0 8px;font-size:10px;font-weight:600;display:inline-block}.xirv-btn-danger-small{color:#dc2626;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);cursor:pointer;margin-left:var(--space-sm);background:#dc26261a;border:1px solid #dc262633;font-size:12px;transition:all .2s}.xirv-btn-danger-small:hover{background:#dc262633}.xirv-invite-container{gap:var(--space-xl);grid-template-columns:2fr 1fr;display:grid}.xirv-invite-form,.xirv-invite-info{background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-xl)}.xirv-invite-info h3{font-size:var(--text-md);color:var(--text-primary);margin:0 0 var(--space-md) 0;font-weight:600}.xirv-invite-info ol{padding-left:var(--space-lg);color:var(--text-secondary);font-size:var(--text-sm);line-height:2}.xirv-settings-form{background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-md);max-width:600px;padding:var(--space-xl)}.xirv-success-message{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);color:#065f46;margin-bottom:var(--space-lg);background:#d1fae5;border:1px solid #a7f3d0}.xirv-error-message{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);color:#991b1b;margin-bottom:var(--space-lg);background:#fee2e2;border:1px solid #fecaca}.xirv-loading{text-align:center;padding:var(--space-xl);color:var(--text-secondary);font-size:var(--text-md)}.xirv-verification-section{border-top:1px solid var(--border-color);padding-top:var(--space-lg);margin-top:var(--space-md)}.xirv-verification-header{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-md);display:flex}.xirv-verification-icon{color:var(--text-secondary)}.xirv-verification-title{font-weight:600;font-size:var(--text-sm);color:var(--text-primary)}.xirv-verification-content{align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.xirv-btn-resend{align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-md);color:var(--xirv-accent);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer;background:0 0;font-weight:500;transition:all .2s;display:inline-flex}.xirv-btn-resend:hover{background:var(--surface);border-color:var(--xirv-accent)}.xirv-btn-resend:disabled{opacity:.5;cursor:not-allowed}.xirv-spin{animation:1s linear infinite spin}.xirv-verification-message{margin-top:var(--space-sm);font-size:var(--text-sm);color:var(--text-secondary)}.xirv-verification-warning{margin-top:var(--space-sm);font-size:var(--text-sm);color:var(--status-warning)}.xirv-verification-success{margin-top:var(--space-sm);font-size:var(--text-sm);color:var(--status-active)}.xirv-settings-card{background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-xl);margin-bottom:var(--space-xl);transition:border-color .2s}.xirv-settings-card:hover{border-color:#00e5ff33}.xirv-settings-card-header{align-items:flex-start;gap:var(--space-md);margin-bottom:var(--space-lg);padding-bottom:var(--space-md);border-bottom:1px solid var(--border-color);display:flex}.xirv-settings-card-icon{color:var(--xirv-accent);flex-shrink:0;margin-top:2px}.xirv-settings-card-header h2{font-size:var(--text-lg);color:var(--text-primary);margin:0;font-weight:600}.xirv-settings-card-header p{font-size:var(--text-sm);color:var(--text-secondary);margin:2px 0 0}.xirv-invite-page-grid{gap:var(--space-xl);grid-template-columns:1fr;display:grid}.xirv-page-header-top{margin-bottom:var(--space-md);justify-content:flex-end;display:flex}.xirv-btn-sm{padding:var(--space-xs) var(--space-md);font-size:var(--text-sm)}.xirv-btn-sm svg{margin-right:6px;display:inline}.xirv-invite-page-form .xirv-settings-card,.xirv-invite-page-list .xirv-settings-card{height:100%}@media (width>=1024px){.xirv-invite-page-grid{grid-template-columns:1fr 1.5fr}}@media (width<=1024px){.xirv-invite-page-grid{grid-template-columns:1fr}}.xirv-invitation-list{margin-top:var(--space-sm)}.xirv-invitation-list-header{margin-bottom:var(--space-md)}.xirv-invitation-list-header h4{font-size:var(--text-md);color:var(--text-primary);margin:0;font-weight:600}.xirv-invitation-list-grid{gap:var(--space-md);grid-template-columns:1fr;display:grid}@media (width>=768px){.xirv-invitation-list-grid{grid-template-columns:1fr}}.xirv-invitation-card{background:var(--background-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-md);transition:all .2s}.xirv-invitation-card:hover{border-color:var(--xirv-accent);box-shadow:0 4px 12px #0000000d}.xirv-invitation-card-header{margin-bottom:var(--space-sm);justify-content:space-between;align-items:center;display:flex}.xirv-invitation-card-email{align-items:center;gap:var(--space-xs);color:var(--text-primary);font-weight:500;display:flex}.xirv-invitation-card-icon{color:var(--text-secondary)}.xirv-invitation-card-body{margin-bottom:var(--space-md)}.xirv-invitation-card-meta{gap:var(--space-md);font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-xs);flex-wrap:wrap;display:flex}.xirv-invitation-card-time,.xirv-invitation-card-expiry{align-items:center;gap:4px;display:flex}.xirv-invitation-card-inviter{font-size:var(--text-sm);color:var(--text-secondary)}.xirv-invitation-card-actions{gap:var(--space-sm);padding-top:var(--space-sm);border-top:1px solid var(--border-color);display:flex}.xirv-empty-state{text-align:center;padding:var(--space-xl);color:var(--text-secondary)}.xirv-empty-icon{margin-bottom:var(--space-md);font-size:48px}.xirv-empty-state h3{color:var(--text-primary);margin-bottom:var(--space-xs);font-size:var(--text-lg)}.xirv-empty-state p{font-size:var(--text-sm)}.xirv-role-badge{padding:2px var(--space-sm);text-transform:uppercase;letter-spacing:.5px;border-radius:9999px;font-size:11px;font-weight:600;display:inline-block}.xirv-role-owner{color:#92400e;background:#fef3c7}.xirv-role-admin{color:#1e40af;background:#dbeafe}.xirv-role-member{color:#065f46;background:#d1fae5}.xirv-role-viewer{color:#4b5563;background:#f3f4f6}@media (width<=1024px){.xirv-admin-stats,.xirv-admin-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.xirv-admin-dashboard{padding:var(--space-md)}.xirv-admin-hero{text-align:center;padding:var(--space-lg);flex-direction:column}.xirv-admin-stats,.xirv-admin-grid{grid-template-columns:1fr}.xirv-hero-btn{justify-content:center;width:100%}.xirv-admin-page{padding:var(--space-md)}.xirv-invite-container{grid-template-columns:1fr}.xirv-member-controls{flex-direction:column;align-items:stretch}.xirv-member-search{min-width:auto}.xirv-member-table{font-size:12px}.xirv-member-table th,.xirv-member-table td{padding:var(--space-sm)}.xirv-settings-form{max-width:100%}.xirv-verification-content{align-items:flex-start;gap:var(--space-sm);flex-direction:column}.xirv-settings-card{padding:var(--space-lg)}.xirv-settings-card-header{gap:var(--space-xs);flex-direction:column}.xirv-btn-resend{justify-content:center;width:100%}}@media (width<=480px){.xirv-stat-card{padding:var(--space-md)}.xirv-member-table .hide-mobile{display:none}.xirv-settings-card{padding:var(--space-md)}}.xirv-team-grid{gap:var(--space-lg);margin-top:var(--space-xl);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.xirv-team-form{background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-xl);margin-top:var(--space-lg)}@media (width<=768px){.xirv-team-grid{grid-template-columns:1fr}}.accept-invitation-page{min-height:100vh;padding:var(--space-xl);background:var(--background-primary);justify-content:center;align-items:center;display:flex}.accept-invitation-card{background:var(--surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);width:100%;max-width:480px;padding:var(--space-xl);box-shadow:0 20px 60px #0000001a}.accept-invitation-loading{align-items:center;gap:var(--space-md);padding:var(--space-xl);color:var(--text-secondary);flex-direction:column;display:flex}.accept-invitation-spinner{color:var(--xirv-accent);animation:1s linear infinite spin}.accept-invitation-header{text-align:center;margin-bottom:var(--space-xl)}.accept-invitation-logo{margin-bottom:var(--space-lg);justify-content:center;align-items:baseline;gap:4px;display:flex}.accept-invitation-logo-text{font-size:var(--text-2xl);color:var(--xirv-primary);font-weight:700}.accept-invitation-logo-sub{font-size:var(--text-md);color:var(--text-secondary);font-weight:500}.accept-invitation-header h1{font-size:var(--text-2xl);color:var(--text-primary);margin:0 0 var(--space-xs) 0;font-weight:700}.accept-invitation-header p{color:var(--text-secondary);font-size:var(--text-md);margin:0}.accept-invitation-details{gap:var(--space-md);margin-bottom:var(--space-xl);padding:var(--space-md);background:var(--background-primary);border-radius:var(--radius-md);flex-direction:column;display:flex}.accept-invitation-detail-item{align-items:flex-start;gap:var(--space-md);display:flex}.accept-invitation-detail-item svg{color:var(--text-secondary);flex-shrink:0;margin-top:2px}.accept-invitation-detail-item div{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.accept-invitation-detail-label{font-size:var(--text-xs);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-weight:500}.accept-invitation-detail-value{font-size:var(--text-sm);color:var(--text-primary);font-weight:500}.accept-invitation-role-badge{padding:2px var(--space-sm);text-transform:uppercase;letter-spacing:.5px;border-radius:9999px;font-size:11px;font-weight:600;display:inline-block}.accept-invitation-role-badge.admin{color:#1e40af;background:#dbeafe}.accept-invitation-role-badge.member{color:#065f46;background:#d1fae5}.accept-invitation-role-badge.viewer{color:#4b5563;background:#f3f4f6}.accept-invitation-actions{gap:var(--space-md);margin-bottom:var(--space-md);display:flex}.accept-invitation-actions .accept-invitation-btn{flex:1}.accept-invitation-login-notice{text-align:center;flex:1}.accept-invitation-login-notice p{color:var(--text-secondary);margin-bottom:var(--space-md)}.accept-invitation-btn{justify-content:center;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-xl);border-radius:var(--radius-md);font-weight:600;font-size:var(--text-md);cursor:pointer;border:none;text-decoration:none;transition:all .2s;display:inline-flex}.accept-invitation-btn-primary{background:var(--xirv-primary);color:#fff}.accept-invitation-btn-primary:hover{background:var(--xirv-primary-dark);color:#fff;transform:translateY(-2px)}.accept-invitation-btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.accept-invitation-btn-secondary{background:var(--surface);color:var(--text-secondary);border:1px solid var(--border-color)}.accept-invitation-btn-secondary:hover{background:var(--background-primary);color:var(--text-primary);border-color:var(--text-secondary)}.accept-invitation-success,.accept-invitation-error,.accept-invitation-rejected{text-align:center}.accept-invitation-icon{margin-bottom:var(--space-lg);justify-content:center;align-items:center;display:flex}.accept-invitation-icon.success{color:var(--status-active)}.accept-invitation-icon.error{color:var(--status-error)}.accept-invitation-icon.rejected{color:var(--status-warning)}.accept-invitation-success h2,.accept-invitation-error h2,.accept-invitation-rejected h2{color:var(--text-primary);margin:0 0 var(--space-sm) 0}.accept-invitation-success p,.accept-invitation-error p,.accept-invitation-rejected p{color:var(--text-secondary);margin:0 0 var(--space-lg) 0}.accept-invitation-success .accept-invitation-btn,.accept-invitation-error .accept-invitation-btn,.accept-invitation-rejected .accept-invitation-btn{flex:0 auto}.accept-invitation-footer{text-align:center;font-size:var(--text-xs);color:var(--text-secondary);padding-top:var(--space-md);border-top:1px solid var(--border-color);margin:0}@media (width<=480px){.accept-invitation-card{padding:var(--space-lg)}.accept-invitation-actions{flex-direction:column}.accept-invitation-actions .accept-invitation-btn{flex:none;width:100%}.accept-invitation-detail-item{gap:var(--space-sm)}.accept-invitation-header h1{font-size:var(--text-xl)}}.reset-form{gap:var(--space-md);padding:var(--space-md) 0;flex-direction:column;display:flex}.reset-error{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);color:#dc2626;font-size:var(--text-sm);background:#fef2f2;border:1px solid #fecaca;display:flex}.reset-error-icon{font-size:14px;font-weight:700}.reset-form-group{gap:var(--space-xs);flex-direction:column;display:flex}.reset-form-group label{font-size:var(--text-sm);color:var(--text-primary);font-weight:600}.reset-input-wrapper{background:var(--surface);border:1.5px solid var(--border-color);border-radius:var(--radius-sm);align-items:center;transition:all .2s;display:flex;overflow:hidden}.reset-input-wrapper:focus-within{border-color:var(--xirv-accent);box-shadow:0 0 0 3px #00e5ff1a}.reset-input-wrapper .reset-input-icon{color:var(--text-secondary);margin:0 var(--space-sm);flex-shrink:0}.reset-input-wrapper input{padding:var(--space-sm) var(--space-sm) var(--space-sm) 0;font-size:var(--text-sm);color:var(--text-primary);font-family:var(--font-family);background:0 0;border:none;outline:none;flex:1;width:100%}.reset-input-wrapper input::placeholder{color:var(--text-secondary)}.reset-password-toggle{color:var(--text-secondary);cursor:pointer;padding:var(--space-sm);background:0 0;border:none;flex-shrink:0;align-items:center;display:flex}.reset-password-toggle:hover{color:var(--text-primary)}.reset-btn{justify-content:center;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-xl);background:var(--xirv-accent);color:var(--xirv-primary);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer;font-weight:600;font-family:var(--font-family);border:none;width:100%;min-height:48px;transition:all .2s;display:flex}.reset-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 16px #00e5ff4d}.reset-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.reset-success{text-align:center;padding:var(--space-md) 0}.reset-success-icon{color:#16a34a;margin-bottom:var(--space-sm)}.reset-success h3{font-size:var(--text-lg);color:var(--text-primary);margin:0 0 var(--space-xs) 0;font-weight:600}.reset-success p{color:var(--text-secondary);font-size:var(--text-sm);margin:0}.reset-success-redirect{margin-top:var(--space-sm);font-size:var(--text-xs);color:var(--text-secondary)}@media (width<=480px){.reset-form{padding:var(--space-sm) 0}.reset-btn{min-height:44px}}.reset-password-page{justify-content:center;align-items:center;width:100%;display:flex}.auth-loading{align-items:center;gap:var(--space-md);padding:var(--space-xl);color:var(--text-secondary);flex-direction:column;display:flex}.auth-spinner{border:3px solid var(--border-color);border-top:3px solid var(--xirv-accent);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}.auth-error-box{align-items:center;gap:var(--space-sm);padding:var(--space-lg);border-radius:var(--radius-md);color:#991b1b;text-align:center;background:#fee2e2;border:1px solid #fecaca;flex-direction:column;display:flex}.auth-error-box p{margin:0}.auth-btn-primary{justify-content:center;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-xl);background:var(--xirv-primary);color:#fff;border-radius:var(--radius-sm);font-weight:600;font-size:var(--text-md);cursor:pointer;border:none;text-decoration:none;transition:all .2s;display:inline-flex}.auth-btn-primary:hover{background:var(--xirv-secondary);transform:translateY(-2px)}.auth-btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.auth-btn-full{width:100%}.auth-back-link{align-items:center;gap:var(--space-xs);color:var(--text-secondary);font-size:var(--text-sm);justify-content:center;text-decoration:none;transition:color .2s;display:inline-flex}.auth-back-link:hover{color:var(--text-primary)}:root{--font-family:"Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--text-xs:12px;--text-sm:14px;--text-md:16px;--text-lg:20px;--text-xl:28px;--text-2xl:36px;--xirv-primary:#0f172a;--xirv-secondary:#1e293b;--xirv-accent:#00e5ff;--xirv-highlight:#f7931e;--background-primary:#f8fafc;--background-secondary:#111827;--surface:#fff;--text-primary:#0f172a;--text-secondary:#64748b;--border-color:#e5e7eb;--status-active:#16a34a;--status-warning:#d97706;--status-error:#dc2626;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--header-bg:var(--xirv-primary);--header-text:#fff}[data-theme=dark]{--background-primary:#0f172a;--background-secondary:#1e293b;--surface:#1e293b;--text-primary:#f1f5f9;--text-secondary:#94a3b8;--border-color:#334155;--header-bg:#0a0f1a;--header-text:#f1f5f9}:root{color:var(--text-primary);background:var(--background-primary);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{font-family:var(--font-family);background:var(--background-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;margin:0}h1{font-size:var(--text-2xl);font-weight:700}h2{font-size:var(--text-xl);font-weight:600}p{font-size:var(--text-md);color:var(--text-secondary)}
