@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";[data-v-35f386b4]{box-sizing:border-box}.sso-layout[data-v-35f386b4]{display:flex;height:100vh;overflow:hidden;background:#f4f6f9;font-family:Inter,system-ui,sans-serif;color:#1e293b}.sso-sidebar[data-v-35f386b4]{width:255px;background:#0a3d2e;color:#fff;display:flex;flex-direction:column;flex-shrink:0;overflow-y:auto;overflow-x:hidden;z-index:30;transition:transform .22s ease}.sidebar-backdrop[data-v-35f386b4]{display:none}.sso-brand[data-v-35f386b4]{display:flex;align-items:center;gap:12px;padding:22px 20px 18px;border-bottom:1px solid rgba(255,255,255,.08)}.sso-brand-logo[data-v-35f386b4]{width:44px;height:44px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;padding:3px}.sso-brand-logo img[data-v-35f386b4]{width:100%;height:100%;object-fit:contain;border-radius:50%}.brand-title[data-v-35f386b4]{display:block;font-size:.98rem;font-weight:700}.brand-sub[data-v-35f386b4]{display:block;font-size:.7rem;color:#ffffff8c;margin-top:2px}.sso-user-card[data-v-35f386b4]{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid rgba(255,255,255,.08)}.sso-user-avatar[data-v-35f386b4]{width:38px;height:38px;border-radius:50%;background:#f97316;color:#fff;display:grid;place-items:center;font-weight:700;font-size:.9rem;flex-shrink:0}.sso-user-name[data-v-35f386b4]{font-size:.88rem;font-weight:600}.sso-user-email[data-v-35f386b4]{font-size:.72rem;color:#ffffff80;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:155px}.sso-nav[data-v-35f386b4]{flex:1;display:flex;flex-direction:column;padding:12px 10px;gap:2px;overflow-y:auto}.sso-nav-section[data-v-35f386b4]{margin-top:12px}.sso-nav-section-label[data-v-35f386b4]{display:block;font-size:.62rem;font-weight:700;letter-spacing:.08em;color:#ffffff59;padding:4px 12px 6px;text-transform:uppercase}.sso-nav-item[data-v-35f386b4]{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;border:none;background:transparent;color:#ffffffb3;font-size:.875rem;font-weight:500;font-family:inherit;border-radius:8px;cursor:pointer;text-decoration:none;text-align:left;transition:background .15s,color .15s}.sso-nav-item[data-v-35f386b4]:hover{background:#ffffff12;color:#fff}.sso-nav-item.active[data-v-35f386b4]{background:#fff;color:#0a3d2e;font-weight:600}.sso-nav-item.sub[data-v-35f386b4]{padding-left:14px;font-size:.83rem}.nav-icon[data-v-35f386b4]{width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.nav-icon svg[data-v-35f386b4]{width:18px;height:18px;vertical-align:middle}.nav-icon-sm[data-v-35f386b4]{font-size:1rem}.website-icon-image[data-v-35f386b4]{width:20px;height:20px;object-fit:contain;border-radius:4px}.nav-badge[data-v-35f386b4]{margin-left:auto;background:#f97316;color:#fff;font-size:.65rem;font-weight:700;min-width:18px;padding:2px 5px;border-radius:999px;text-align:center}.sso-nav-footer[data-v-35f386b4]{padding:10px 10px 20px;border-top:1px solid rgba(255,255,255,.08)}.logout-btn[data-v-35f386b4]{color:#ffffff8c}.logout-btn[data-v-35f386b4]:hover{color:#f87171;background:#f871711a}.sso-main[data-v-35f386b4]{flex:1;display:flex;flex-direction:column;min-width:0;overflow:hidden}.sso-topbar[data-v-35f386b4]{height:68px;background:#fff;border-bottom:1px solid #e8ecf0;display:flex;align-items:center;justify-content:space-between;padding:0 28px;gap:16px;flex-shrink:0;box-shadow:0 1px 4px #0000000a}.topbar-left[data-v-35f386b4]{display:flex;align-items:center;gap:14px;min-width:0}.menu-btn[data-v-35f386b4]{display:none;background:transparent;border:none;padding:6px;border-radius:6px;cursor:pointer;color:#64748b;flex-shrink:0}.menu-btn[data-v-35f386b4]:hover{background:#f1f5f9}.greeting-title[data-v-35f386b4]{margin:0;font-size:1.05rem;font-weight:700;color:#0f172a;white-space:nowrap}.greeting-sub[data-v-35f386b4]{margin:2px 0 0;font-size:.75rem;color:#94a3b8;white-space:nowrap}.topbar-center[data-v-35f386b4]{flex:1;max-width:420px}.search-wrap[data-v-35f386b4]{position:relative}.search-icon[data-v-35f386b4]{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#94a3b8;pointer-events:none}.search-input[data-v-35f386b4]{width:100%;padding:9px 14px 9px 40px;border:1px solid #e2e8f0;border-radius:20px;font-size:.87rem;font-family:inherit;background:#f8fafc;color:#334155;outline:none;transition:border-color .2s,background .2s}.search-input[data-v-35f386b4]:focus{border-color:#a5b4fc;background:#fff}.search-input[data-v-35f386b4]::placeholder{color:#94a3b8}.topbar-right[data-v-35f386b4]{display:flex;align-items:center;gap:16px;flex-shrink:0}.notif-btn[data-v-35f386b4]{position:relative;background:transparent;border:none;width:38px;height:38px;display:flex;align-items:center;justify-content:center;border-radius:50%;cursor:pointer;color:#64748b;transition:background .15s}.notif-btn[data-v-35f386b4]:hover{background:#f1f5f9;color:#0f172a}.notif-dot[data-v-35f386b4]{position:absolute;top:6px;right:6px;width:9px;height:9px;background:#f97316;border-radius:50%;border:2px solid #fff}.topbar-user[data-v-35f386b4]{display:flex;align-items:center;gap:10px;cursor:pointer;position:relative}.topbar-avatar[data-v-35f386b4]{width:36px;height:36px;border-radius:50%;background:#fde68a;color:#92400e;display:grid;place-items:center;font-weight:700;font-size:.87rem}.topbar-user-info[data-v-35f386b4]{display:flex;align-items:center;gap:4px}.topbar-user-info svg[data-v-35f386b4]{transition:transform .2s ease}.topbar-user-info svg.chevron-up[data-v-35f386b4]{transform:rotate(180deg)}.topbar-name[data-v-35f386b4]{font-size:.88rem;font-weight:600;color:#1e293b}.user-dropdown[data-v-35f386b4]{position:absolute;top:calc(100% + 10px);right:0;width:260px;background:#fff;border:1px solid #e8ecf0;border-radius:12px;box-shadow:0 12px 40px #0000001f,0 2px 8px #0000000f;z-index:100;overflow:hidden}.dropdown-header[data-v-35f386b4]{display:flex;align-items:center;gap:12px;padding:16px}.dropdown-avatar[data-v-35f386b4]{width:40px;height:40px;border-radius:50%;background:#fde68a;color:#92400e;display:grid;place-items:center;font-weight:700;font-size:.9rem;flex-shrink:0}.dropdown-header strong[data-v-35f386b4]{display:block;font-size:.9rem;color:#0f172a}.dropdown-header small[data-v-35f386b4]{display:block;font-size:.75rem;color:#94a3b8;margin-top:2px}.dropdown-divider[data-v-35f386b4]{height:1px;background:#f0f4f8;margin:0}.dropdown-item[data-v-35f386b4]{display:flex;align-items:center;gap:12px;width:100%;padding:11px 16px;border:none;background:transparent;color:#475569;font-size:.87rem;font-weight:500;font-family:inherit;cursor:pointer;text-decoration:none;text-align:left;transition:background .12s,color .12s}.dropdown-item[data-v-35f386b4]:hover{background:#f8fafc;color:#0f172a}.dropdown-item svg[data-v-35f386b4]{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;color:#94a3b8}.dropdown-item:hover svg[data-v-35f386b4]{color:#64748b}.dropdown-logout[data-v-35f386b4]{color:#ef4444}.dropdown-logout[data-v-35f386b4]:hover{background:#fef2f2;color:#dc2626}.dropdown-logout svg[data-v-35f386b4]{color:#f87171}.dropdown-logout:hover svg[data-v-35f386b4]{color:#dc2626}.dropdown-enter-active[data-v-35f386b4]{animation:dropIn-35f386b4 .18s ease-out}.dropdown-leave-active[data-v-35f386b4]{animation:dropIn-35f386b4 .12s ease-in reverse}@keyframes dropIn-35f386b4{0%{opacity:0;transform:translateY(-8px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.sso-content[data-v-35f386b4]{flex:1;overflow-y:auto;padding:24px 28px 32px}.ann-strip[data-v-35f386b4]{display:flex;flex-direction:column;gap:10px;margin-bottom:24px}.ann-banner[data-v-35f386b4]{display:flex;align-items:center;gap:14px;padding:14px 18px;border-radius:10px;border-left:4px solid;background:#fff;box-shadow:0 1px 6px #0000000a}.ann-INFO[data-v-35f386b4]{border-left-color:#3b82f6}.ann-WARNING[data-v-35f386b4]{border-left-color:#f59e0b}.ann-REMINDER[data-v-35f386b4]{border-left-color:#22c55e}.ann-HOLIDAY[data-v-35f386b4]{border-left-color:#ec4899}.ann-icon-wrap[data-v-35f386b4]{width:36px;height:36px;border-radius:8px;background:#f1f5f9;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ann-icon-wrap svg[data-v-35f386b4]{width:20px;height:20px;fill:none;stroke:#64748b;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.ann-text[data-v-35f386b4]{flex:1;min-width:0}.ann-label[data-v-35f386b4]{display:block;font-size:.65rem;font-weight:700;letter-spacing:.08em;color:#94a3b8;margin-bottom:2px}.ann-text strong[data-v-35f386b4]{font-size:.9rem;color:#1e293b}.ann-detail-btn[data-v-35f386b4]{flex-shrink:0;padding:6px 14px;border:1px solid #e2e8f0;border-radius:6px;background:transparent;color:#475569;font-size:.8rem;font-weight:600;font-family:inherit;cursor:pointer;transition:border-color .15s,background .15s}.ann-detail-btn[data-v-35f386b4]:hover{border-color:#94a3b8;background:#f8fafc}.stat-grid[data-v-35f386b4]{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.stat-card[data-v-35f386b4]{background:#fff;border-radius:12px;padding:18px 20px;display:flex;align-items:center;gap:16px;box-shadow:0 1px 6px #0000000a;border:1px solid #f0f4f8}.stat-icon[data-v-35f386b4]{width:50px;height:50px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon svg[data-v-35f386b4]{width:24px;height:24px}.stat-green[data-v-35f386b4]{background:#dcfce7;color:#15803d}.stat-red[data-v-35f386b4]{background:#fee2e2;color:#dc2626}.stat-yellow[data-v-35f386b4]{background:#fef9c3;color:#a16207}.stat-blue[data-v-35f386b4]{background:#dbeafe;color:#1d4ed8}.stat-label[data-v-35f386b4]{font-size:.8rem;color:#64748b;font-weight:500;margin-bottom:4px}.stat-val[data-v-35f386b4]{font-size:1.65rem;font-weight:700;color:#0f172a;line-height:1}.stat-val.type-val[data-v-35f386b4]{font-size:1rem;margin-top:3px}.stat-sub[data-v-35f386b4]{font-size:.73rem;color:#94a3b8;margin-top:4px}.dashboard-body[data-v-35f386b4]{display:grid;grid-template-columns:1fr 340px;gap:24px;margin-bottom:24px}.panel-head[data-v-35f386b4]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:18px}.panel-title[data-v-35f386b4]{margin:0 0 4px;font-size:1rem;font-weight:700;color:#0f172a}.panel-sub[data-v-35f386b4]{margin:0;font-size:.78rem;color:#94a3b8}.see-all-btn[data-v-35f386b4]{flex-shrink:0;background:transparent;border:none;font-size:.82rem;font-weight:700;color:#0a3d2e;cursor:pointer;font-family:inherit;white-space:nowrap;padding:4px 0}.see-all-btn[data-v-35f386b4]:hover{text-decoration:underline}.apps-panel[data-v-35f386b4]{background:#fff;border-radius:14px;padding:22px;box-shadow:0 1px 6px #0000000a;border:1px solid #f0f4f8}.apps-grid[data-v-35f386b4]{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.apps-grid.full[data-v-35f386b4]{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.app-card[data-v-35f386b4]{background:#fff;border:1px solid #f0f4f8;border-radius:12px;padding:16px;cursor:pointer;position:relative;transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column;box-shadow:0 1px 4px #00000008}.app-card[data-v-35f386b4]:hover{transform:translateY(-3px);box-shadow:0 8px 24px #00000014}.app-card.is-busy[data-v-35f386b4]{opacity:.65;pointer-events:none}.fav-btn[data-v-35f386b4]{position:absolute;top:12px;right:12px;background:transparent;border:none;color:#cbd5e1;cursor:pointer;padding:4px;border-radius:50%;transition:color .15s,background .15s}.fav-btn[data-v-35f386b4]:hover{color:#64748b;background:#f1f5f9}.app-card-body[data-v-35f386b4]{display:flex;align-items:center;gap:12px;margin-bottom:14px}.app-icon-box[data-v-35f386b4]{width:48px;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.app-icon-box[data-v-35f386b4] svg{width:24px;height:24px}.app-name[data-v-35f386b4]{margin:0 0 3px;font-size:.9rem;font-weight:700;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:130px}.app-desc[data-v-35f386b4]{margin:0;font-size:.73rem;color:#64748b;line-height:1.4}.app-card-footer[data-v-35f386b4]{margin-top:auto;padding-top:12px;border-top:1px dashed #e8ecf0}.launch-text[data-v-35f386b4]{display:inline-flex;align-items:center;gap:5px;font-size:.8rem;font-weight:700}.launch-text.muted[data-v-35f386b4]{color:#94a3b8}.launch-text.maint[data-v-35f386b4]{color:#d97706}.launch-text svg[data-v-35f386b4]{transition:transform .2s}.app-card:hover .launch-text svg[data-v-35f386b4]{transform:translate(4px)}.websites-panel[data-v-35f386b4]{background:#fff;border-radius:14px;padding:22px;box-shadow:0 1px 6px #0000000a;border:1px solid #f0f4f8;display:flex;flex-direction:column;gap:10px}.website-list[data-v-35f386b4]{display:flex;flex-direction:column;gap:6px}.website-group-item[data-v-35f386b4]{display:flex;align-items:center;gap:14px;padding:12px 14px;border-radius:10px;border:1px solid #f0f4f8;text-decoration:none;color:inherit;transition:background .15s,border-color .15s;cursor:pointer}.website-group-item[data-v-35f386b4]:hover{background:#f8fafc;border-color:#e2e8f0}.website-group-icon[data-v-35f386b4]{width:42px;height:42px;border-radius:10px;background:#f1f5f9;display:flex;align-items:center;justify-content:center;font-size:1.3rem;flex-shrink:0}.website-logo-image[data-v-35f386b4]{width:100%;height:100%;object-fit:contain;border-radius:inherit}.website-group-info[data-v-35f386b4]{flex:1;min-width:0}.website-group-info strong[data-v-35f386b4]{display:block;font-size:.88rem;font-weight:600;color:#0f172a}.website-group-info span[data-v-35f386b4]{font-size:.75rem;color:#94a3b8;margin-top:2px;display:block}.website-arrow[data-v-35f386b4]{color:#94a3b8;flex-shrink:0}.help-card[data-v-35f386b4]{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:10px;background:#fffbeb;border:1px solid #fde68a;margin-top:auto}.help-icon[data-v-35f386b4]{font-size:1.4rem}.help-text[data-v-35f386b4]{flex:1}.help-text strong[data-v-35f386b4]{display:block;font-size:.85rem;font-weight:600;color:#92400e}.help-text span[data-v-35f386b4]{font-size:.75rem;color:#b45309}.help-btn[data-v-35f386b4]{flex-shrink:0;padding:7px 16px;background:#f59e0b;color:#fff;border:none;border-radius:8px;font-size:.82rem;font-weight:700;font-family:inherit;cursor:pointer;text-decoration:none;transition:background .15s}.help-btn[data-v-35f386b4]:hover{background:#d97706}.website-cards-grid[data-v-35f386b4]{display:flex;flex-direction:column;gap:10px}.website-card[data-v-35f386b4]{display:flex;align-items:center;gap:16px;padding:16px 18px;background:#fff;border:1px solid #f0f4f8;border-radius:12px;text-decoration:none;color:inherit;box-shadow:0 1px 4px #00000008;transition:transform .15s,box-shadow .15s}.website-card[data-v-35f386b4]:hover{transform:translateY(-2px);box-shadow:0 6px 18px #00000012}.website-card-icon[data-v-35f386b4]{width:48px;height:48px;border-radius:12px;background:#f1f5f9;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}.website-card-info[data-v-35f386b4]{flex:1}.website-card-info strong[data-v-35f386b4]{display:block;font-size:.95rem;font-weight:700;color:#0f172a}.website-card-info span[data-v-35f386b4]{font-size:.8rem;color:#64748b;margin-top:3px;display:block}.page-header[data-v-35f386b4]{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}.page-header h2[data-v-35f386b4]{margin:0 0 4px;font-size:1.2rem;font-weight:700;color:#0f172a}.page-header .muted[data-v-35f386b4]{margin:0;font-size:.82rem;color:#94a3b8}.panel-search-wrap[data-v-35f386b4]{position:relative}.panel-search-icon[data-v-35f386b4]{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#94a3b8}.panel-search-input[data-v-35f386b4]{padding:9px 14px 9px 36px;border:1px solid #e2e8f0;border-radius:10px;font-size:.85rem;font-family:inherit;color:#334155;background:#f8fafc;outline:none;width:220px;transition:border-color .2s}.panel-search-input[data-v-35f386b4]:focus{border-color:#a5b4fc;background:#fff}.information-list[data-v-35f386b4]{display:flex;flex-direction:column;gap:14px}.information-card[data-v-35f386b4]{padding:20px;border:1px solid #e8ecf0;border-left:4px solid #71827c;border-radius:10px;background:#fff}.information-card.type-info[data-v-35f386b4]{border-left-color:#3b82f6}.information-card.type-warning[data-v-35f386b4]{border-left-color:#f59e0b}.information-card.type-reminder[data-v-35f386b4]{border-left-color:#22c55e}.information-card.type-holiday[data-v-35f386b4]{border-left-color:#ec4899}.information-head[data-v-35f386b4]{display:flex;align-items:flex-start;gap:13px}.information-icon[data-v-35f386b4]{flex:0 0 38px;width:38px;height:38px;display:grid;place-items:center;border-radius:9px;background:#f1f5f9;color:#64748b}.information-icon svg[data-v-35f386b4]{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.information-meta[data-v-35f386b4]{display:flex;gap:6px;margin-bottom:4px}.information-meta span[data-v-35f386b4]{padding:2px 7px;border-radius:999px;background:#f1f5f9;color:#64748b;font-size:.62rem;font-weight:800;letter-spacing:.05em}.information-head h4[data-v-35f386b4]{margin:0 0 4px;color:#0f172a;font-size:.95rem;font-weight:600}.information-head small[data-v-35f386b4]{color:#94a3b8}.information-actions[data-v-35f386b4]{display:flex;justify-content:flex-end;margin-top:10px}.information-detail-btn[data-v-35f386b4]{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid #e2e8f0;border-radius:7px;background:#f8fafc;color:#475569;font-size:.8rem;font-weight:700;cursor:pointer;font-family:inherit}.information-detail-btn[data-v-35f386b4]:hover{border-color:#94a3b8;background:#f1f5f9}.information-detail-btn svg[data-v-35f386b4]{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;transition:transform .2s}.information-detail-btn svg.rotated[data-v-35f386b4]{transform:rotate(180deg)}.information-body[data-v-35f386b4]{margin:14px 0 0 51px;color:#475569;font-size:.88rem;line-height:1.65}.information-body[data-v-35f386b4] p,.information-body[data-v-35f386b4] ul,.information-body[data-v-35f386b4] ol{margin:.4rem 0}.information-body[data-v-35f386b4] ul,.information-body[data-v-35f386b4] ol{padding-left:1.4rem}.device-list[data-v-35f386b4]{display:flex;flex-direction:column;gap:12px}.device-item[data-v-35f386b4]{display:flex;align-items:center;padding:16px 20px;background:#fff;border:1px solid #f0f4f8;border-radius:10px}.device-icon[data-v-35f386b4]{font-size:1.7rem;margin-right:18px}.device-details[data-v-35f386b4]{flex:1}.device-name[data-v-35f386b4]{font-weight:600;font-size:.9rem;margin-bottom:4px}.device-ua[data-v-35f386b4]{font-size:.78rem;color:#94a3b8}.device-meta[data-v-35f386b4]{text-align:right}.device-exp[data-v-35f386b4]{font-size:.73rem;color:#94a3b8;margin-bottom:6px}.badge-active[data-v-35f386b4]{background:#dcfce7;color:#15803d;font-size:.73rem;padding:3px 10px;border-radius:12px;font-weight:600}.profile-grid[data-v-35f386b4]{display:grid;grid-template-columns:1fr 1fr;gap:20px}.prof-card[data-v-35f386b4]{background:#fff;border:1px solid #f0f4f8;border-radius:12px;padding:22px}.prof-card h4[data-v-35f386b4]{margin:0 0 16px;font-size:.95rem;color:#0f172a;border-bottom:1px solid #f0f4f8;padding-bottom:12px}.prof-row[data-v-35f386b4]{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px dashed #f0f4f8;font-size:.88rem}.prof-row[data-v-35f386b4]:last-child{border-bottom:none}.prof-row span[data-v-35f386b4]{color:#94a3b8}.prof-row strong[data-v-35f386b4]{color:#1e293b}.roles-wrap[data-v-35f386b4]{display:flex;flex-wrap:wrap;gap:8px}.role-badge[data-v-35f386b4]{background:#f1f5f9;color:#475569;padding:5px 12px;border-radius:15px;font-size:.8rem;font-weight:500}.perms-wrap[data-v-35f386b4]{display:flex;flex-wrap:wrap;gap:6px}.perm-badge[data-v-35f386b4]{background:#dbeafe;color:#1d4ed8;padding:4px 9px;border-radius:6px;font-size:.73rem;font-weight:500}.sso-footer[data-v-35f386b4]{display:flex;align-items:center;justify-content:space-between;padding:18px 0 4px;font-size:.78rem;color:#94a3b8;border-top:1px solid #e8ecf0}.footer-links[data-v-35f386b4]{display:flex;align-items:center;gap:10px}.footer-links a[data-v-35f386b4]{color:#64748b;text-decoration:none}.footer-links a[data-v-35f386b4]:hover{text-decoration:underline}.empty-state[data-v-35f386b4]{text-align:center;padding:40px 20px;color:#94a3b8}.empty-state.small[data-v-35f386b4]{padding:20px}.empty-icon[data-v-35f386b4]{font-size:2.5rem;margin-bottom:12px}.empty-state h4[data-v-35f386b4]{margin:0 0 8px;color:#64748b}.empty-state p[data-v-35f386b4]{margin:0;font-size:.85rem}.loading[data-v-35f386b4]{padding:30px;text-align:center;color:#94a3b8}.muted[data-v-35f386b4]{color:#94a3b8}@media(min-width:901px){.menu-btn[data-v-35f386b4]{display:none}}@media(max-width:1280px){.stat-grid[data-v-35f386b4]{grid-template-columns:repeat(2,1fr)}}@media(max-width:1100px){.dashboard-body[data-v-35f386b4]{grid-template-columns:1fr}.websites-panel[data-v-35f386b4]{display:none}.apps-grid[data-v-35f386b4]{grid-template-columns:repeat(2,1fr)}}@media(max-width:900px){.sso-sidebar[data-v-35f386b4]{position:fixed;inset:0 auto 0 0;width:min(270px,82vw);transform:translate(-102%);box-shadow:12px 0 40px #0003}.sso-sidebar.open[data-v-35f386b4]{transform:translate(0)}.sidebar-backdrop[data-v-35f386b4]{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;background:#0006;border:none;padding:0}.menu-btn[data-v-35f386b4]{display:flex}.sso-topbar[data-v-35f386b4]{padding:0 16px}.topbar-center[data-v-35f386b4],.greeting-sub[data-v-35f386b4]{display:none}.sso-content[data-v-35f386b4]{padding:16px 16px 28px}.stat-grid[data-v-35f386b4],.apps-grid[data-v-35f386b4]{grid-template-columns:repeat(2,1fr);gap:12px}.profile-grid[data-v-35f386b4]{grid-template-columns:1fr}.information-body[data-v-35f386b4]{margin-left:0}}@media(max-width:540px){.stat-grid[data-v-35f386b4]{grid-template-columns:repeat(2,1fr)}.apps-grid[data-v-35f386b4]{grid-template-columns:1fr}.greeting-title[data-v-35f386b4]{font-size:.95rem}.ann-banner[data-v-35f386b4]{flex-wrap:wrap}.sso-footer[data-v-35f386b4]{flex-direction:column;gap:10px;text-align:center}}.profile-page[data-v-5c088046]{padding:2rem;max-width:1100px;margin:0 auto}.profile-header[data-v-5c088046]{margin-bottom:2rem}.profile-header h1[data-v-5c088046]{font-size:1.8rem;font-weight:700;margin:.25rem 0}.eyebrow[data-v-5c088046]{font-size:.7rem;font-weight:700;letter-spacing:.12em;color:var(--accent, #6366f1);text-transform:uppercase;margin:0}.muted[data-v-5c088046]{color:var(--text-muted, #888)}.small[data-v-5c088046]{font-size:.8rem}.profile-grid[data-v-5c088046]{display:grid;grid-template-columns:1fr 1.1fr;gap:1.5rem;align-items:start}@media(max-width:768px){.profile-grid[data-v-5c088046]{grid-template-columns:1fr}}.profile-main[data-v-5c088046],.profile-sessions[data-v-5c088046]{display:flex;flex-direction:column;gap:1.25rem}.card[data-v-5c088046]{background:var(--card-bg, #fff);border:1px solid var(--border, #e5e7eb);border-radius:12px;padding:1.5rem}.profile-identity[data-v-5c088046]{display:flex;align-items:center;gap:1.25rem}.identity-avatar[data-v-5c088046]{width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-size:1.5rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.identity-info h2[data-v-5c088046]{margin:0 0 .25rem;font-size:1.2rem}.identity-info .muted[data-v-5c088046]{margin:0 0 .5rem;font-size:.85rem}.identity-badges[data-v-5c088046]{display:flex;flex-wrap:wrap;gap:.4rem}.badge[data-v-5c088046]{padding:.2rem .6rem;border-radius:999px;font-size:.72rem;font-weight:600}.badge-type[data-v-5c088046]{background:#ede9fe;color:#6d28d9}.badge-role[data-v-5c088046]{background:#dbeafe;color:#1d4ed8}.badge-local[data-v-5c088046]{background:#fef3c7;color:#92400e}.card-section-title[data-v-5c088046]{display:flex;align-items:center;gap:.5rem;font-size:.95rem;font-weight:600;margin:0 0 1rem}.profile-dl[data-v-5c088046]{display:flex;flex-direction:column}.dl-row[data-v-5c088046]{display:flex;justify-content:space-between;align-items:center;padding:.6rem 0;border-bottom:1px solid var(--border, #f0f0f0)}.dl-row[data-v-5c088046]:last-child{border-bottom:none}.dl-row dt[data-v-5c088046]{font-size:.82rem;color:var(--text-muted, #888)}.dl-row dd[data-v-5c088046]{font-size:.88rem;font-weight:500;margin:0;text-align:right}.dl-row code[data-v-5c088046]{font-size:.78rem;background:#f3f4f6;padding:.15rem .4rem;border-radius:4px;font-family:monospace}.sso-id[data-v-5c088046]{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block}.status-badge[data-v-5c088046]{padding:.2rem .6rem;border-radius:999px;font-size:.72rem;font-weight:700;background:#dcfce7;color:#15803d}.password-form[data-v-5c088046]{display:flex;flex-direction:column;gap:.75rem;margin-top:.75rem}.password-form label[data-v-5c088046]{display:flex;flex-direction:column;gap:.3rem;font-size:.85rem;font-weight:500}.password-form input[data-v-5c088046]{padding:.55rem .75rem;border:1px solid var(--border, #d1d5db);border-radius:8px;font-size:.9rem;outline:none;transition:border .2s;background:var(--input-bg, #fff);color:var(--text, #111)}.password-form input[data-v-5c088046]:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.error-msg[data-v-5c088046]{color:#dc2626;font-size:.82rem;margin:0}.success-msg[data-v-5c088046]{color:#15803d;font-size:.82rem;margin:0}.actions[data-v-5c088046]{display:flex;gap:.5rem;justify-content:flex-end}.sessions-header[data-v-5c088046]{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.session-count[data-v-5c088046]{background:#6366f1;color:#fff;border-radius:999px;font-size:.7rem;padding:.1rem .45rem;font-weight:700}.sessions-sub-title[data-v-5c088046]{font-size:.78rem;font-weight:700;color:var(--text-muted, #888);text-transform:uppercase;letter-spacing:.08em;margin:1.25rem 0 .75rem}.loading-state[data-v-5c088046],.empty-state[data-v-5c088046]{color:var(--text-muted, #888);font-size:.85rem;padding:1rem 0;text-align:center}.session-list[data-v-5c088046]{display:flex;flex-direction:column;gap:.75rem}.session-item[data-v-5c088046]{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;border-radius:10px}.active-session[data-v-5c088046]{background:#f0fdf4;border:1px solid #bbf7d0}.inactive-session[data-v-5c088046]{background:#fafafa;border:1px solid #f0f0f0}.session-icon[data-v-5c088046]{font-size:1.25rem;flex-shrink:0;padding-top:2px}.session-detail[data-v-5c088046]{flex:1;min-width:0}.session-ip[data-v-5c088046]{font-weight:600;font-size:.88rem}.session-ua[data-v-5c088046]{font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.session-time[data-v-5c088046]{font-size:.75rem;margin-top:.15rem}.badge-revoked[data-v-5c088046]{font-size:.72rem;font-weight:600;padding:.15rem .5rem;border-radius:999px;background:#f3f4f6;color:#6b7280;white-space:nowrap;flex-shrink:0}.btn-primary[data-v-5c088046]{padding:.5rem 1.1rem;background:#6366f1;color:#fff;border:none;border-radius:8px;font-weight:600;font-size:.88rem;cursor:pointer;transition:background .2s}.btn-primary[data-v-5c088046]:hover:not(:disabled){background:#4f46e5}.btn-primary[data-v-5c088046]:disabled{opacity:.6;cursor:not-allowed}.btn-secondary[data-v-5c088046]{padding:.5rem 1.1rem;background:#f3f4f6;color:#374151;border:1px solid #d1d5db;border-radius:8px;font-weight:600;font-size:.88rem;cursor:pointer}.btn-secondary[data-v-5c088046]:hover{background:#e5e7eb}.btn-ghost[data-v-5c088046]{padding:.5rem 1.1rem;background:transparent;color:#6b7280;border:1px solid #d1d5db;border-radius:8px;font-weight:500;font-size:.88rem;cursor:pointer}.btn-ghost[data-v-5c088046]:hover{background:#f3f4f6}.btn-danger-sm[data-v-5c088046]{padding:.35rem .8rem;background:#fef2f2;color:#dc2626;border:1px solid #fecaca;border-radius:8px;font-size:.78rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .2s}.btn-danger-sm[data-v-5c088046]:hover:not(:disabled){background:#fee2e2}.btn-danger-sm[data-v-5c088046]:disabled{opacity:.6;cursor:not-allowed}.btn-revoke[data-v-5c088046]{padding:.3rem .65rem;background:transparent;color:#dc2626;border:1px solid #fecaca;border-radius:6px;font-size:.75rem;font-weight:600;cursor:pointer;flex-shrink:0;transition:all .2s;margin-top:2px}.btn-revoke[data-v-5c088046]:hover:not(:disabled){background:#fef2f2}.btn-revoke[data-v-5c088046]:disabled{opacity:.5;cursor:not-allowed}.admin-stats[data-v-981f12a1]{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-card[data-v-981f12a1]{display:flex;align-items:flex-start;gap:.9rem;background:var(--card-bg, #fff);border:1px solid var(--border, #e5e7eb);border-radius:12px;padding:1.1rem 1.25rem;transition:transform .15s,box-shadow .15s}.stat-card[data-v-981f12a1]:hover{transform:translateY(-2px);box-shadow:0 4px 16px #00000012}.stat-icon-wrap[data-v-981f12a1]{width:42px;height:42px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon-wrap.green[data-v-981f12a1]{background:#dcfce7;color:#15803d}.stat-icon-wrap.purple[data-v-981f12a1]{background:#ede9fe;color:#6d28d9}.stat-icon-wrap.amber[data-v-981f12a1]{background:#fef3c7;color:#92400e}.stat-icon-wrap.blue[data-v-981f12a1]{background:#dbeafe;color:#1d4ed8}.stat-icon-wrap.red[data-v-981f12a1]{background:#fef2f2;color:#dc2626}.stat-label[data-v-981f12a1]{display:block;font-size:.78rem;color:var(--text-muted, #888);margin-bottom:.15rem}.stat-value[data-v-981f12a1]{display:block;font-size:1.8rem;font-weight:800;line-height:1;margin-bottom:.35rem}.stat-note[data-v-981f12a1]{font-size:.75rem;color:var(--text-muted, #888)}.stat-sub[data-v-981f12a1]{display:flex;gap:.4rem;flex-wrap:wrap}.pill-green[data-v-981f12a1]{font-size:.72rem;font-weight:600;background:#dcfce7;color:#15803d;padding:.1rem .45rem;border-radius:999px}.pill-gray[data-v-981f12a1]{font-size:.72rem;font-weight:600;background:#f3f4f6;color:#6b7280;padding:.1rem .45rem;border-radius:999px}.admin-panels[data-v-981f12a1]{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-bottom:1.5rem}@media(max-width:640px){.admin-panels[data-v-981f12a1]{grid-template-columns:1fr}}.panel-links[data-v-981f12a1]{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:.75rem}.secondary-link[data-v-981f12a1]{background:transparent!important;color:var(--accent, #6366f1)!important;border:1px solid var(--accent, #6366f1)!important}.recent-failures[data-v-981f12a1]{margin-top:0}.status-active[data-v-7ca50715]{background:#dcfce7;color:#15803d}.status-inactive[data-v-7ca50715]{background:#f3f4f6;color:#6b7280}.status-suspended[data-v-7ca50715]{background:#fef2f2;color:#dc2626}.btn-action[data-v-7ca50715]{padding:.35rem .8rem;border-radius:8px;font-size:.8rem;font-weight:600;cursor:pointer;border:1px solid transparent;transition:all .2s}.btn-action[data-v-7ca50715]:disabled{opacity:.5;cursor:not-allowed}.btn-activate[data-v-7ca50715]{background:#dcfce7;color:#15803d;border-color:#bbf7d0}.btn-activate[data-v-7ca50715]:hover:not(:disabled){background:#bbf7d0}.btn-deactivate[data-v-7ca50715]{background:#f3f4f6;color:#374151;border-color:#d1d5db}.btn-deactivate[data-v-7ca50715]:hover:not(:disabled){background:#e5e7eb}.btn-suspend[data-v-7ca50715]{background:#fef2f2;color:#dc2626;border-color:#fecaca}.btn-suspend[data-v-7ca50715]:hover:not(:disabled){background:#fee2e2}.toolbar[data-v-e983cac1]{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;flex-wrap:wrap}.toolbar input[data-v-e983cac1]{flex:1;min-width:180px;padding:.45rem .75rem;border:1px solid var(--border, #d1d5db);border-radius:8px;font-size:.88rem;background:var(--input-bg, #fff);color:var(--text, #111)}.toolbar button[data-v-e983cac1]{padding:.45rem .9rem;background:var(--accent, #6366f1);color:#fff;border:none;border-radius:8px;font-weight:600;font-size:.85rem;cursor:pointer}.total-label[data-v-e983cac1]{font-size:.82rem;color:var(--text-muted, #888)}.chip[data-v-e983cac1]{display:inline-block;padding:.2rem .55rem;border-radius:999px;font-size:.75rem;font-weight:600}.chip-green[data-v-e983cac1]{background:#dcfce7;color:#15803d}.chip-red[data-v-e983cac1]{background:#fef2f2;color:#dc2626}.chip-gray[data-v-e983cac1]{background:#f3f4f6;color:#6b7280}.btn-revoke[data-v-e983cac1]{padding:.25rem .6rem;background:#fef2f2;color:#dc2626;border:1px solid #fecaca;border-radius:6px;font-size:.78rem;font-weight:600;cursor:pointer;transition:background .2s;white-space:nowrap}.btn-revoke[data-v-e983cac1]:hover:not(:disabled){background:#fee2e2}.btn-revoke[data-v-e983cac1]:disabled{opacity:.5;cursor:not-allowed}.pagination[data-v-e983cac1]{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:1rem}.pagination button[data-v-e983cac1]{padding:.4rem .9rem;border:1px solid var(--border, #d1d5db);border-radius:8px;background:var(--card-bg, #fff);color:var(--text, #111);cursor:pointer;font-size:.85rem}.pagination button[data-v-e983cac1]:disabled{opacity:.4;cursor:not-allowed}.pagination span[data-v-e983cac1]{font-size:.85rem;color:var(--text-muted, #888)}.announcement-form-section[data-v-f969d998]{margin-top:22px}.announcement-form[data-v-f969d998]{width:100%;padding:26px}.form-heading[data-v-f969d998]{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:16px;border-bottom:1px solid #edf1ee}.form-heading h2[data-v-f969d998]{margin-top:4px}.form-heading .eyebrow[data-v-f969d998]{margin:0}.close-form[data-v-f969d998]{width:36px;height:36px;padding:0;border:0;border-radius:50%;background:#f0f4f2;color:#536c64;font-size:1.35rem}.announcement-form>label[data-v-f969d998]{display:grid;gap:7px;margin:16px 0;font-weight:600}.announcement-form input[data-v-f969d998]:not([type=checkbox]){width:100%;min-height:42px;padding:0 12px;border:1px solid #dce5df;border-radius:9px;background:#fbfcfb}select[data-v-f969d998]:not([multiple]){width:100%;min-height:42px;height:42px;padding:0 12px;border:1px solid #dce5df;border-radius:9px;background:#fbfcfb}textarea[data-v-f969d998],select[multiple][data-v-f969d998]{width:100%;padding:10px;border:1px solid #ddd;border-radius:6px;font-family:inherit;margin-top:5px}.content-field[data-v-f969d998]{margin:16px 0}.content-field>label[data-v-f969d998]{display:block;margin:0 0 7px;font-weight:600}.editor-toolbar[data-v-f969d998]{display:flex;flex-wrap:wrap;gap:5px;padding:6px;border:1px solid #dce5df;border-bottom:0;border-radius:8px 8px 0 0;background:#f5f8f6}.editor-toolbar button[data-v-f969d998]{display:grid;place-items:center;min-width:30px;height:30px;padding:4px 7px;border:0;border-radius:5px;background:transparent;color:#405b52;font-size:.92rem}.editor-toolbar button[data-v-f969d998]:hover{background:#e3ece7;color:#075c47}.editor-toolbar>span[data-v-f969d998]{width:1px;height:22px;align-self:center;background:#d6e0db;margin:0 2px}.rich-editor[data-v-f969d998]{min-height:150px;max-height:320px;overflow-y:auto;padding:12px;border:1px solid #dce5df;border-radius:0 0 8px 8px;background:#fff;line-height:1.55;outline:none}.rich-editor[data-v-f969d998]:focus{border-color:#08705a;box-shadow:0 0 0 2px #08705a1a}.rich-editor[data-v-f969d998]:empty:before{content:attr(data-placeholder);color:#98a59f;pointer-events:none}.badge[data-v-f969d998]{background:#fff3e0;color:#e65100;padding:2px 6px;border-radius:4px;font-size:.75rem;margin-left:8px}.danger[data-v-f969d998]{color:#d32f2f}.danger[data-v-f969d998]:hover{background:#ffebee}@media(max-width:600px){.announcement-form[data-v-f969d998]{padding:18px 14px}.announcement-form .actions[data-v-f969d998]{flex-wrap:wrap}.announcement-form .actions button[data-v-f969d998]{flex:1}}.ws-tabs[data-v-23c29363]{display:flex;gap:4px;background:#f1f5f9;border-radius:10px;padding:4px;margin-bottom:22px;width:fit-content}.ws-tab[data-v-23c29363]{display:flex;align-items:center;gap:8px;padding:9px 20px;border:none;background:transparent;font-size:.9rem;font-weight:600;font-family:inherit;border-radius:8px;cursor:pointer;color:#64748b;transition:background .15s,color .15s}.ws-tab[data-v-23c29363]:hover{background:#ffffffb3;color:#1e293b}.ws-tab.active[data-v-23c29363]{background:#fff;color:#0a3d2e;box-shadow:0 1px 4px #00000014}.tab-count[data-v-23c29363]{background:#e2e8f0;color:#64748b;font-size:.7rem;font-weight:700;padding:2px 7px;border-radius:999px;min-width:20px;text-align:center}.ws-tab.active .tab-count[data-v-23c29363]{background:#dcfce7;color:#15803d}.tab-action-row[data-v-23c29363]{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.cat-icon-cell[data-v-23c29363]{font-size:1.4rem;display:inline-flex;align-items:center}.site-icon[data-v-23c29363]{font-size:1.3rem;display:inline-flex;align-items:center}.icon-img-sm[data-v-23c29363]{width:32px;height:32px;border-radius:6px;object-fit:cover}.website-cell[data-v-23c29363]{display:flex;align-items:center;gap:12px}.icon-upload-row[data-v-23c29363]{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:6px}.icon-preview[data-v-23c29363]{width:56px;height:56px;border-radius:10px;background:#f1f5f9;border:2px dashed #cbd5e1;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.icon-preview-img[data-v-23c29363]{width:100%;height:100%;object-fit:cover;border-radius:8px}.icon-preview-emoji[data-v-23c29363]{font-size:1.6rem}.icon-upload-actions[data-v-23c29363]{display:flex;flex-direction:column;gap:6px}.upload-btn[data-v-23c29363]{display:inline-block;padding:6px 14px;background:#e2e8f0;color:#334155;border-radius:8px;font-size:.82rem;font-weight:600;cursor:pointer;transition:background .15s;text-align:center}.upload-btn[data-v-23c29363]:hover{background:#cbd5e1}.clear-icon-btn[data-v-23c29363]{background:none;border:none;color:#dc2626;font-size:.78rem;font-weight:600;cursor:pointer;padding:2px 6px;font-family:inherit}.clear-icon-btn[data-v-23c29363]:hover{text-decoration:underline}.website-cell strong[data-v-23c29363]{display:block}.website-cell small[data-v-23c29363]{display:block;color:#94a3b8;font-size:.78rem;margin-top:2px}.url-link[data-v-23c29363]{color:#3b82f6;font-size:.82rem;text-decoration:none}.url-link[data-v-23c29363]:hover{text-decoration:underline}.status[data-v-23c29363]{padding:4px 10px;border-radius:999px;font-size:.78rem;font-weight:600}.status.active[data-v-23c29363]{background:#dcfce7;color:#15803d}.status.inactive[data-v-23c29363]{background:#fee2e2;color:#dc2626}.actions[data-v-23c29363]{display:flex;gap:8px}.danger-sm[data-v-23c29363]{background:transparent;border:1px solid #fca5a5;color:#dc2626;padding:4px 10px;border-radius:6px;font-size:.8rem;font-family:inherit;cursor:pointer;transition:background .15s}.danger-sm[data-v-23c29363]:hover{background:#fee2e2}code[data-v-23c29363]{background:#f1f5f9;color:#64748b;padding:2px 6px;border-radius:4px;font-size:.82rem}.check-row[data-v-23c29363]{display:flex;align-items:center;gap:10px;font-weight:500}.check-row input[type=checkbox][data-v-23c29363]{width:16px;height:16px}:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#17342d;background:#f3f6f2;font-synthesis:none;--green:#075c47;--mint:#dff2e9;--gold:#e8ad3a;--line:#dce5df}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid var(--line);border-radius:9px;padding:.7rem 1rem;background:#fff;color:#17342d}button:disabled{opacity:.6;cursor:wait}h1,h2,h3{font-family:Inter,Segoe UI,Arial,sans-serif;margin:.2rem 0}.muted{color:#678078}.eyebrow{font-size:.75rem;letter-spacing:.16em;font-weight:700;color:#267560}header{height:68px;padding:0 max(4vw,24px);background:#fff;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.brand{font-weight:800;color:#17342d;text-decoration:none}.brand span,.logo{display:inline-grid;place-items:center;background:var(--green);color:#fff;border-radius:10px;width:38px;height:38px;margin-right:9px}header nav{display:flex;gap:1rem;align-items:center}header nav a,.link{text-decoration:none;color:#536c64;border:0}.router-link-active{color:var(--green)!important;font-weight:700}.page{max-width:1200px;margin:auto;padding:52px 28px}.hero{background:linear-gradient(125deg,#074e3e,#087054);color:#fff;padding:54px;border-radius:24px;margin-bottom:30px;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;width:300px;height:300px;border:70px solid #ffffff0c;border-radius:50%;right:-80px;top:-100px}.hero .eyebrow{color:#97d6bf}.hero h1{font-size:clamp(2rem,5vw,3.5rem)}.hero p{color:#d1e8df}.search{position:relative;z-index:1;width:min(480px,100%);padding:1rem 1.2rem;border:0;border-radius:12px;margin-top:1rem}.app-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px}.app-card,.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px;box-shadow:0 8px 30px #17342d0a}.app-card p{color:#678078;min-height:42px}.app-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:13px;background:var(--mint);font-weight:800;font-size:1.2rem;color:var(--green)}.tag{font-size:.72rem!important;min-height:auto!important;letter-spacing:.08em;font-weight:700;text-transform:uppercase;color:#9a6a0a!important}.primary{background:var(--green);border-color:var(--green);color:#fff;font-weight:600}.empty{text-align:center;padding:60px;color:#678078}.login-shell{min-height:100vh;display:grid;grid-template-columns:1.2fr 1fr;background:#073e33}.login-copy{padding:10vw;color:#fff;display:flex;flex-direction:column;justify-content:center}.login-copy .eyebrow{color:#8ed2b8}.login-copy h1{font-size:clamp(2.5rem,5vw,5rem);line-height:1.06;max-width:760px}.login-copy>p:last-child{color:#c5ddd4;font-size:1.1rem}.login-card{margin:auto;width:min(420px,calc(100% - 40px));padding:42px}.login-card h2{font-size:2rem}.login-card label,.modal-card label{display:grid;gap:7px;margin:16px 0;font-weight:600}.login-card input,.modal-card input,.modal-card select,.modal-card textarea,.toolbar input{border:1px solid var(--line);border-radius:9px;padding:.82rem;background:#fbfcfb}.login-card .primary{width:100%;margin:8px 0 18px}.login-card small{color:#789087}.error{color:#b42318;background:#fff0ee;padding:.7rem;border-radius:8px}.title-row{display:flex;align-items:end;justify-content:space-between;margin-bottom:26px}.title-row h1{font-size:2.5rem}.tabs{display:flex;gap:5px;border-bottom:1px solid var(--line);margin-bottom:28px}.tabs a{padding:12px 15px;color:#637b73;text-decoration:none;border-bottom:2px solid transparent}.tabs .router-link-exact-active{border-color:var(--green)}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px}.stats article{background:#fff;border:1px solid var(--line);padding:24px;border-radius:14px}.stats strong{font-size:2rem;display:block}.stats span{color:#678078}.toolbar{display:flex;gap:8px;margin-bottom:16px}.toolbar input{min-width:310px}.table-wrap{overflow:auto;background:#fff;border:1px solid var(--line);border-radius:14px}table{border-collapse:collapse;width:100%}th,td{text-align:left;padding:15px;border-bottom:1px solid #edf1ee}th{font-size:.78rem;color:#678078;text-transform:uppercase;letter-spacing:.07em}td small{display:block;color:#789087;margin-top:3px}.status{display:inline-block;padding:5px 8px;background:var(--mint);color:var(--green);font-size:.72rem;border-radius:999px;font-weight:700}.modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#102c2480;display:grid;place-items:center;z-index:20}.modal-card{width:min(500px,calc(100% - 32px));max-height:90vh;overflow:auto}.modal-card select{min-height:90px}.actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.compact{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.matrix th,.matrix td{text-align:center}.matrix th:first-child,.matrix td:first-child{text-align:left}.toggle{width:44px;height:24px;border:0;padding:3px;background:#ccd8d2;border-radius:20px}.toggle span{display:block;width:18px;height:18px;background:#fff;border-radius:50%;transition:.2s}.toggle.on{background:var(--green)}.toggle.on span{transform:translate(20px)}@media(max-width:760px){.login-shell{grid-template-columns:1fr}.login-copy{display:none}.login-card{margin:40px auto}.page{padding:32px 18px}.hero{padding:34px 24px}.title-row{align-items:start;gap:18px}.tabs{overflow:auto}.app-grid{grid-template-columns:1fr}header{padding:0 16px}header nav a{display:none}}.user-dashboard{display:grid;gap:26px}.user-welcome{padding:26px 34px 24px;border-radius:20px;background:linear-gradient(120deg,#074e3e,#087054);color:#fff;overflow:hidden}.welcome-main{display:flex;align-items:center;justify-content:space-between;gap:28px}.user-welcome h1{font-size:clamp(1.65rem,3vw,2.4rem);margin:.25rem 0}.user-welcome p:not(.eyebrow){color:#d1e8df;max-width:650px;margin:.45rem 0}.user-welcome .eyebrow{color:#97d6bf;margin:0}.user-welcome img{width:92px;height:92px;object-fit:contain;filter:drop-shadow(0 8px 16px #002c2280)}.user-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:20px;padding-top:18px;border-top:1px solid #ffffff2e}.user-summary article{min-width:0;border:1px solid #ffffff24;border-radius:12px;padding:11px 14px;display:flex;align-items:center;gap:11px;background:#ffffff0d}.user-summary strong{display:block;font-size:1.35rem;line-height:1.1}.user-summary small{color:#cce5db}.summary-icon{width:34px;height:34px;flex:0 0 34px;border-radius:9px;background:#ffffff1f;color:#b8ead7;display:grid;place-items:center;font-weight:800}.application-heading{display:flex;align-items:end;justify-content:space-between;gap:20px}.application-heading h2{font-size:1.8rem}.app-filters{display:flex;gap:10px;position:relative;z-index:1}.app-filters .search,.app-filters select{margin:0;border:1px solid var(--line);background:#fff;padding:.8rem 1rem;border-radius:10px}.app-filters .search{width:280px}.user-app-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:18px}.user-app-card{min-height:250px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 8px 25px #17342d08}.user-app-card h3{font-size:1.25rem;margin-top:18px}.user-app-card p{color:#678078;line-height:1.55}.user-app-top,.user-app-action{display:flex;align-items:center;justify-content:space-between;gap:12px}.user-app-action{border-top:1px solid #edf1ee;padding-top:16px}.available{font-size:.78rem;color:var(--green);font-weight:700}.empty-icon{font-size:2.5rem;color:var(--green);margin-bottom:8px}@media(max-width:760px){.user-welcome{padding:24px 20px}.user-welcome img{width:68px;height:68px}.user-summary{grid-template-columns:1fr;margin-top:16px;padding-top:14px}.user-summary article{padding:9px 11px}.application-heading{align-items:stretch;flex-direction:column}.app-filters{flex-direction:column}.app-filters .search{width:100%}.user-app-grid{grid-template-columns:1fr}}@media(max-width:480px){.user-welcome img{display:none}.user-welcome h1{font-size:1.55rem}}.app-icon img{width:100%;height:100%;object-fit:contain;border-radius:10px}.application-cell{display:flex;align-items:center;gap:12px;min-width:220px}.application-cell .app-icon{flex:0 0 42px;width:42px;height:42px}.logo-preview{display:flex;align-items:center;gap:12px;padding:12px;background:#f7faf8;border:1px solid var(--line);border-radius:10px}.logo-preview img{width:48px;height:48px;object-fit:contain;border-radius:8px}.logo-preview span{font-size:.85rem;color:#678078}.group-list{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.group-chip,.admin-chip{display:inline-block;padding:5px 9px;border-radius:999px;background:#eef4f1;color:#315f52;font-size:.75rem;font-weight:700}.admin-chip{background:#fff2d8;color:#865b09}.button-link{display:inline-block;text-decoration:none;border:1px solid var(--line);border-radius:9px;padding:.65rem .9rem;color:var(--green);font-weight:600}.access-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:18px;margin-bottom:30px}.group-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:20px 0}.group-option{display:flex;align-items:center;gap:10px;padding:13px;border:1px solid var(--line);border-radius:10px}.group-option span,.group-option small{display:block}.group-option small{color:#789087;margin-top:2px}.access-help ol{padding-left:20px;color:#536c64;line-height:1.9}.success-message{color:var(--green);background:var(--mint);padding:.7rem;border-radius:8px}.access-allow{color:var(--green)!important}.access-deny{color:#b42318!important}.section-title{display:flex;align-items:end;justify-content:space-between;margin:26px 0 14px}.section-title p{margin:.3rem 0}@media(max-width:760px){.access-layout,.group-options{grid-template-columns:1fr}}.access-role-picker{display:flex;align-items:end;justify-content:space-between;gap:24px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 22px;margin-bottom:20px}.access-role-picker label{display:grid;gap:7px;font-weight:700;min-width:280px}.access-role-picker select{padding:.8rem;border:1px solid var(--line);border-radius:9px;background:#fff}.access-role-picker div{text-align:right}.access-role-picker small,.access-role-picker strong{display:block}.access-role-picker small{color:#789087;margin-bottom:4px}.dual-access{display:grid;grid-template-columns:minmax(0,1fr) 150px minmax(0,1fr);gap:20px;align-items:center}.dual-panel{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}.dual-panel header{padding:18px 20px;background:#f7faf8;border-bottom:1px solid var(--line)}.dual-panel header h2{font-size:1.1rem}.dual-panel header p{margin:4px 0 0;color:#789087;font-size:.85rem}.dual-search{display:flex;gap:8px;padding:12px;border-bottom:1px solid var(--line)}.dual-search input{min-width:0;flex:1;padding:.7rem;border:1px solid var(--line);border-radius:8px}.dual-search button{padding:.6rem .75rem}.dual-list{height:360px;overflow:auto;padding:8px}.dual-item{display:flex;align-items:center;gap:10px;padding:10px;border-radius:9px;cursor:pointer}.dual-item:hover{background:#f2f7f4}.dual-item>input{width:17px;height:17px}.dual-item .app-icon{width:38px;height:38px;flex:0 0 38px}.dual-item .app-icon i{font-style:normal}.dual-item span:last-child,.dual-item small{display:block}.dual-item small{color:#789087;margin-top:2px}.dual-actions{display:grid;gap:12px}.dual-actions button{width:100%}.dual-empty{display:grid;place-items:center;text-align:center;color:#789087;height:280px;padding:30px}@media(max-width:900px){.dual-access{grid-template-columns:1fr}.dual-actions{display:flex;justify-content:center}.dual-actions button{width:auto}.access-role-picker{align-items:stretch;flex-direction:column}.access-role-picker div{text-align:left}}.group-table{margin-bottom:28px}.group-table tbody tr{cursor:pointer}.group-table tbody tr:hover,.group-table tbody tr.selected{background:#f0f7f3}.membership-heading{display:flex;align-items:end;justify-content:space-between;margin:12px 0}.membership-heading h2{font-size:1.7rem}.membership-heading>span{color:#678078}.user-avatar{width:38px;height:38px;flex:0 0 38px;display:grid!important;place-items:center;border-radius:50%;background:var(--mint);color:var(--green);font-weight:800}.user-dual-item span:last-child{min-width:0}.user-dual-item small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:320px}.page.user-dashboard{max-width:1560px;width:100%;padding-left:clamp(24px,3vw,52px);padding-right:clamp(24px,3vw,52px)}.user-dashboard .user-welcome{min-height:250px;padding-left:clamp(36px,5vw,76px);padding-right:clamp(36px,5vw,76px)}.user-dashboard .welcome-copy p{max-width:820px}.user-dashboard .user-summary{grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.user-dashboard .user-app-grid{grid-template-columns:repeat(auto-fill,minmax(310px,1fr));width:100%}@media(min-width:1500px){.user-dashboard .user-app-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:760px){.page.user-dashboard{padding-left:18px;padding-right:18px}.user-dashboard .user-summary,.user-dashboard .user-app-grid{grid-template-columns:1fr}.user-dashboard .user-welcome{min-height:auto;padding:30px 24px}}.app-filters{display:flex;gap:10px;position:relative;z-index:1;align-items:center}.app-filters select{padding:1rem;border:0;border-radius:12px;background:#fff}.maintenance{display:inline-block;margin:0 7px 12px 0;padding:5px 8px;background:#fff0cc;color:#875b00;font-size:.7rem;border-radius:999px;font-weight:800}.sso-button{width:100%;margin:20px 0}.separator{display:flex;align-items:center;gap:10px;color:#8a9d96;font-size:.7rem;text-transform:uppercase;margin:10px 0}.separator:before,.separator:after{content:"";height:1px;background:var(--line);flex:1}.dev-login{margin-top:8px}@media(max-width:600px){.app-filters{display:grid}.app-filters select{width:100%}}.permission-list{display:flex;gap:5px;flex-wrap:wrap}.permission-list span{font-size:.7rem;padding:4px 7px;border-radius:6px;background:#edf4f0;color:#35695b}.permission-list small{color:#789087}.role-form{width:min(720px,calc(100% - 32px))}.role-form fieldset{border:1px solid var(--line);border-radius:10px;padding:16px}.role-form legend{padding:0 7px;font-weight:700}.permission-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:15px}.permission-groups section{padding:12px;background:#f7faf8;border-radius:9px}.check-row{display:flex!important;grid-template-columns:none!important;align-items:center;gap:8px!important;margin:9px 0!important;font-weight:400!important}.check-row input{width:16px;height:16px;margin:0;padding:0}.role-form>label small{font-weight:400;color:#789087}code{font-size:.82rem;color:#075c47}.profile-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:18px;margin-top:24px}dl{display:grid;grid-template-columns:120px 1fr;gap:10px}dt{color:#789087}dd{margin:0;font-weight:600}.session-row{padding:12px 0;border-bottom:1px solid var(--line)}.session-row small{display:block;color:#789087;margin-top:4px}.error-page{min-height:80vh;display:grid;place-content:center;text-align:center;padding:30px}.error-page>strong{font:800 8rem Manrope;color:#dceae4;line-height:1}.error-page p{color:#678078;max-width:430px}.button-link{display:inline-block;text-decoration:none;margin:15px auto;padding:.8rem 1rem;border-radius:9px}.user-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.user-summary span,.user-summary strong{display:block}.user-summary span{color:#789087;font-size:.8rem}.section-title{margin-top:30px}@media(max-width:760px){.profile-grid,.user-summary{grid-template-columns:1fr}}header{height:76px;padding-inline:clamp(20px,4vw,64px);box-shadow:0 1px #0848380d}.brand{display:flex;align-items:center;gap:12px}.brand>img{width:48px;height:48px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 2px #fff,0 0 0 3px #dbe7df}.brand .brand-copy{display:flex;flex-direction:column;align-items:flex-start;width:auto;height:auto;margin:0;background:none;color:#17342d;border-radius:0;line-height:1.1}.brand-copy strong{font-size:.96rem;letter-spacing:.01em}.brand-copy small{font-size:.7rem;color:#71877f;margin-top:4px;font-weight:500}header nav{gap:6px}header nav a,header .logout-button{padding:9px 13px;border-radius:9px;font-size:.88rem}header nav a:hover{background:#f0f6f3;color:var(--green)}.logout-button{border-color:#d5e2dc;background:#fff;margin-left:6px}.logout-button:hover{border-color:#aabfb6;background:#f8fbf9}.login-shell{position:relative;isolation:isolate;grid-template-columns:minmax(0,1.18fr) minmax(430px,.82fr);min-height:100vh;background:#063f34;overflow:hidden}.login-pattern{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;opacity:.22;background-image:linear-gradient(30deg,transparent 48%,rgba(255,255,255,.055) 49%,rgba(255,255,255,.055) 51%,transparent 52%),linear-gradient(150deg,transparent 48%,rgba(255,255,255,.04) 49%,rgba(255,255,255,.04) 51%,transparent 52%);background-size:90px 156px;-webkit-mask-image:linear-gradient(90deg,#000,transparent 72%);mask-image:linear-gradient(90deg,#000,transparent 72%)}.login-shell:before{content:"";position:absolute;width:620px;height:620px;border:1px solid rgba(255,255,255,.08);border-radius:50%;left:-260px;bottom:-360px;box-shadow:0 0 0 90px #ffffff06,0 0 0 180px #ffffff05;z-index:-1}.login-copy{padding:clamp(42px,6vw,92px);justify-content:space-between;min-height:100vh}.university-lockup{display:flex;align-items:center;gap:15px}.university-lockup img{width:68px;height:68px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 2px #ffffffd9,0 8px 24px #0003}.university-lockup div{display:flex;flex-direction:column;gap:5px}.university-lockup strong{font-size:.85rem;letter-spacing:.14em;color:#fff}.university-lockup span{font-size:.78rem;color:#a9d4c5}.login-message{margin-block:auto;max-width:720px}.login-message .eyebrow{color:#68d0ad;margin-bottom:22px}.login-message h1{font-size:clamp(3.3rem,6vw,6.8rem);line-height:.94;letter-spacing:-.06em;max-width:850px}.login-message h1 em{font-style:normal;color:#f2bd42}.login-message>p{max-width:610px;font-size:clamp(1rem,1.25vw,1.18rem);line-height:1.7;color:#c8e0d7;margin:28px 0}.trust-row{display:flex;gap:26px;color:#dcece6;font-size:.82rem}.trust-row span{display:flex;align-items:center;gap:7px}.trust-row i{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#6ed3b12e;color:#7ad8b8;font-style:normal;font-size:.7rem}.login-footer{color:#81aa9c;font-size:.72rem;letter-spacing:.04em}.login-panel{display:grid;place-items:center;padding:clamp(24px,5vw,80px);background:linear-gradient(145deg,#f8faf8,#eef4f0);position:relative}.login-panel:after{content:"";position:absolute;top:22px;right:22px;bottom:22px;left:22px;border:1px solid rgba(8,92,71,.08);border-radius:28px;pointer-events:none}.login-card{position:relative;z-index:1;width:min(440px,100%);margin:0;padding:clamp(34px,4vw,52px);border:1px solid rgba(8,92,71,.12);border-radius:24px;box-shadow:0 24px 70px #0c43351f;text-align:left}.login-card-logo{width:78px;height:78px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 3px #fff,0 0 0 4px #dce8e2,0 10px 26px #084b3a29;margin-bottom:28px}.login-card>.eyebrow{margin:0 0 10px}.login-card h2{font-size:2.15rem;letter-spacing:-.04em}.login-card>.muted{line-height:1.65;margin:12px 0 24px}.login-card .sso-button{height:50px;display:flex;align-items:center;justify-content:center;gap:12px;border-radius:11px;box-shadow:0 8px 20px #075c472e}.sso-button span{font-size:1.1rem}.redirect-progress{height:5px;background:#e2ece7;border-radius:10px;overflow:hidden;margin-top:28px}.redirect-progress span{display:block;width:45%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#09775d,#e4b13f);animation:redirect-slide 1.1s ease-in-out infinite}@keyframes redirect-slide{0%{transform:translate(-110%)}to{transform:translate(330%)}}.login-help{border-top:1px solid var(--line);margin-top:30px;padding-top:20px;display:flex;justify-content:space-between;gap:12px;color:#789087;font-size:.7rem}.login-help a{color:var(--green);text-decoration:none;font-weight:700}.hero{min-height:300px;display:flex;align-items:center;padding:clamp(38px,5vw,66px);box-shadow:0 20px 45px #074e3e1f}.hero-content{position:relative;z-index:2;width:100%}.hero-seal{position:absolute;right:clamp(20px,6vw,85px);width:clamp(190px,24vw,330px);height:clamp(190px,24vw,330px);border-radius:50%;object-fit:cover;opacity:.1;filter:grayscale(1);mix-blend-mode:screen;transform:rotate(-6deg)}.app-card{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.app-card:hover{transform:translateY(-4px);box-shadow:0 18px 42px #17342d1a;border-color:#c8dad1}@media(max-width:980px){.login-shell{grid-template-columns:1fr}.login-copy{min-height:auto;padding:34px 30px 50px}.login-message{margin:70px 0 20px}.login-message h1{font-size:clamp(3rem,11vw,5rem)}.login-footer{display:none}.login-panel{padding:55px 24px}.login-panel:after{top:12px;right:12px;bottom:12px;left:12px}.trust-row{flex-wrap:wrap}.login-card{width:min(480px,100%)}}@media(max-width:640px){header{height:68px;padding-inline:14px}.brand>img{width:42px;height:42px}.brand-copy small{display:none}.brand-copy strong{font-size:.86rem}header nav{gap:0}header nav a,header .logout-button{padding:8px;font-size:.78rem}.login-copy{padding:26px 22px 40px}.university-lockup img{width:54px;height:54px}.university-lockup strong{font-size:.73rem}.login-message{margin:55px 0 5px}.login-message h1{font-size:3.2rem}.login-message>p{font-size:.95rem}.trust-row{gap:12px}.login-panel{padding:35px 16px}.login-card{padding:30px 24px;border-radius:19px}.login-card-logo{width:68px;height:68px}.login-help{display:grid}.hero-seal{right:-60px}.hero{min-height:280px}}.app-content{min-width:0}.admin-layout{height:100vh;overflow:hidden;display:grid;grid-template-columns:268px minmax(0,1fr);background:#f6f7fb}.admin-layout .app-content{grid-column:2;height:100vh;overflow-y:auto}.admin-layout header{margin:16px 28px 0;height:64px;border:0;border-radius:12px;box-shadow:0 3px 18px #20263314;padding:0 20px;position:sticky}.admin-layout header>.brand{display:none}.admin-layout header nav a{display:none}.admin-layout main{min-width:0}.admin-layout .page{max-width:1440px;padding:34px 38px 60px}.admin-layout .page>.tabs{display:none}.admin-sidebar{position:fixed;inset:0 auto 0 0;width:268px;height:100vh;overflow-y:auto;background:#fff;border-right:1px solid #e7e9ef;padding:18px 14px;z-index:20;display:flex;flex-direction:column;box-shadow:3px 0 18px #20263306}.admin-brand{display:flex;align-items:center;gap:12px;padding:0 10px 22px;text-decoration:none;color:#17342d}.admin-brand img{width:46px;height:46px;border-radius:50%;object-fit:cover}.admin-brand span{display:flex;flex-direction:column}.admin-brand strong{font-size:1.04rem}.admin-brand small{font-size:.68rem;color:#788981;margin-top:3px}.menu-label{margin:17px 12px 8px;color:#9aa5a0;font-size:.65rem;font-weight:800;letter-spacing:.12em}.side-nav{display:grid;gap:4px}.side-nav a{display:flex;align-items:center;gap:12px;padding:11px 13px;border-radius:9px;text-decoration:none;color:#52635e;font-size:.87rem;font-weight:550}.side-nav a i{display:grid;place-items:center;width:22px;font-style:normal;font-size:1.05rem;color:#71817c}.side-nav a:hover{background:#f0f5f2;color:var(--green)}.side-nav a.router-link-exact-active{background:linear-gradient(100deg,#08735a,#075c47);color:var(--gold)!important;box-shadow:0 6px 14px #075c4733}.side-nav a.router-link-exact-active i{color:var(--gold)!important}.sidebar-user{margin-top:auto;border-top:1px solid #edf0ee;padding:16px 5px 2px;display:flex;align-items:center;gap:9px}.sidebar-user>div{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:#dff2e9;color:var(--green);font-weight:800}.sidebar-user span{display:flex;flex:1;min-width:0;flex-direction:column}.sidebar-user strong{font-size:.76rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user small{font-size:.65rem;color:#899791;margin-top:2px}.sidebar-user button{border:0;padding:6px;background:transparent;font-size:1rem}.top-search{height:38px;min-width:min(430px,42vw);display:flex;align-items:center;gap:10px;color:#8b9692}.top-search>span{font-size:.82rem;flex:1}.top-search kbd{font:600 .61rem Inter;padding:4px 7px;border:1px solid #e0e5e2;border-radius:5px;background:#f7f9f8;color:#8a9691}.admin-layout .title-row{align-items:center;margin-bottom:28px}.admin-layout .title-row h1{font-size:2rem;letter-spacing:-.035em}.admin-layout .title-row .muted{margin:8px 0 0;font-size:.88rem}.date-chip{background:#fff;border:1px solid #e1e7e3;padding:9px 13px;border-radius:9px;font-size:.76rem;color:#60736c}.admin-layout .table-wrap,.admin-layout .card,.admin-layout .app-card{box-shadow:0 5px 24px #23322c0b;border-color:#e3e8e5}.admin-layout .table-wrap{border-radius:12px}.admin-layout th{background:#fafbfb}.admin-layout th,.admin-layout td{padding:16px}.admin-layout .toolbar{background:#fff;padding:14px;border:1px solid #e3e8e5;border-radius:12px}.admin-layout .toolbar input{flex:1;background:#fafbfb}.admin-stats{grid-template-columns:repeat(4,1fr);gap:18px}.admin-stats article{display:flex;align-items:center;gap:16px;padding:21px;border:0;box-shadow:0 5px 24px #23322c0e}.admin-stats article>div{display:flex;flex-direction:column}.admin-stats span{font-size:.75rem}.admin-stats strong{font-size:1.75rem;line-height:1.2;margin:4px 0}.admin-stats small{font-size:.67rem;color:#90a099}.stat-icon{flex:0 0 46px;width:46px;height:46px;display:grid;place-items:center;border-radius:12px;font-size:1.2rem!important}.stat-icon.green{background:#ddf4ea;color:#087157}.stat-icon.purple{background:#ece8ff;color:#6c5ce7}.stat-icon.amber{background:#fff0d6;color:#bd7713}.stat-icon.blue{background:#dff2fa;color:#2685aa}.admin-panels{display:grid;grid-template-columns:1.45fr 1fr;gap:18px;margin-top:20px}.welcome-panel{position:relative;overflow:hidden;min-height:260px;padding:34px;background:linear-gradient(125deg,#075c47,#098266);color:#fff!important}.welcome-panel .eyebrow{color:#8ee0c2}.welcome-panel h2{font-size:1.75rem;max-width:500px}.welcome-panel p:not(.eyebrow){color:#cbe8dd;max-width:480px}.welcome-panel .button-link{background:#fff;color:var(--green);position:relative;z-index:2}.welcome-art{position:absolute;right:30px;bottom:-70px;width:220px;height:220px;border:30px solid rgba(255,255,255,.08);border-radius:50%;display:grid;place-items:start center;padding-top:35px;font-size:5rem;font-weight:900;color:#ffffff21}.quick-panel{padding:25px}.quick-panel h2{font-size:1.15rem;margin-bottom:13px}.quick-panel>a{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:11px;padding:13px 5px;border-bottom:1px solid #edf0ee;text-decoration:none;color:#65736e}.quick-panel>a>span{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:#edf5f1;color:var(--green)}.quick-panel>a div{display:flex;flex-direction:column}.quick-panel>a strong{font-size:.78rem;color:#263b35}.quick-panel>a small{font-size:.67rem;color:#899791;margin-top:3px}@media(max-width:1100px){.admin-stats{grid-template-columns:repeat(2,1fr)}.admin-panels{grid-template-columns:1fr}.top-search{display:none}}@media(max-width:820px){.admin-layout{display:block}.admin-layout .app-content{grid-column:auto}.admin-sidebar{position:sticky;top:0;width:100%;height:auto;display:block;padding:10px 14px}.admin-brand{padding:0}.admin-brand img{width:40px;height:40px}.admin-brand small,.menu-label,.sidebar-user{display:none}.admin-sidebar .side-nav{display:flex;overflow:auto;margin-top:9px}.admin-sidebar .side-nav+.menu-label+.side-nav{display:none}.side-nav a{white-space:nowrap;padding:9px 11px}.admin-layout header{display:none}.admin-layout .page{padding:26px 18px}.admin-stats{grid-template-columns:1fr 1fr}}@media(max-width:520px){.admin-stats{grid-template-columns:1fr}.admin-layout .title-row{align-items:flex-start}.date-chip{display:none}.welcome-panel{padding:26px}.welcome-art{display:none}}.portal-layout,.portal-layout .app-content{display:block}.portal-layout main{padding:0;margin:0}.admin-nav-groups{display:contents}@media(max-width:820px){.admin-layout{display:block}.admin-layout .app-content{grid-column:auto}.admin-sidebar{position:sticky;top:0;width:100%;height:auto;display:block;padding:9px 12px;overflow:hidden}.admin-brand{padding:0 2px 8px}.admin-brand img{width:38px;height:38px}.admin-brand small,.admin-sidebar .menu-label,.admin-sidebar .sidebar-user{display:none}.admin-nav-groups{display:flex;align-items:center;gap:4px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.admin-nav-groups::-webkit-scrollbar{display:none}.admin-sidebar .side-nav{display:contents!important}.admin-sidebar .side-nav a{display:flex!important;flex:0 0 auto;white-space:nowrap;padding:9px 11px;font-size:.78rem}.admin-sidebar .side-nav a i{width:17px}.admin-layout header{display:none}.admin-layout .page{width:100%;padding:24px 16px 40px;overflow:hidden}.admin-layout .table-wrap{width:100%;overflow-x:auto}.admin-layout table{min-width:720px}.admin-layout .tabs{max-width:100%;overflow-x:auto}.admin-layout .toolbar{flex-wrap:wrap}.admin-layout .toolbar input{width:100%;min-width:0}.admin-layout .modal-card{width:calc(100% - 24px);padding:20px}.admin-layout .access-role-picker,.admin-layout .access-role-picker label{min-width:0}}@media(max-width:520px){.admin-layout .title-row{align-items:stretch;flex-direction:column}.admin-layout .title-row>button,.admin-layout .title-row>a{width:100%;text-align:center}.admin-layout .title-row h1{font-size:1.65rem}.admin-layout .page{padding:20px 12px 34px}.admin-layout .card{padding:18px 14px}.admin-layout .actions{flex-wrap:wrap}.admin-layout .actions button{flex:1}.admin-layout dl{grid-template-columns:1fr}.admin-layout dd{margin-bottom:8px}}.admin-mobile-bar,.admin-sidebar-backdrop{display:none}@media(max-width:820px){.admin-mobile-bar{position:sticky;top:0;z-index:35;height:58px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;background:#fff;border-bottom:1px solid #e1e8e4;box-shadow:0 3px 14px #16302714}.admin-mobile-bar button{display:flex;align-items:center;gap:9px;padding:8px 11px;border:0;background:#edf4f1;color:#075c47;font-size:.8rem;font-weight:700}.admin-mobile-bar button span{font-size:1.15rem}.admin-mobile-bar strong{color:#263a34;font-size:.86rem}.admin-sidebar-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:45;padding:0;border:0;border-radius:0;background:#081c1685}.admin-sidebar{position:fixed!important;inset:0 auto 0 0!important;width:min(290px,86vw)!important;height:100dvh!important;z-index:50!important;display:flex!important;flex-direction:column!important;padding:16px 13px!important;overflow-y:auto!important;transform:translate(-103%);transition:transform .22s ease;box-shadow:14px 0 36px #0003}.admin-sidebar.open{transform:translate(0)}.admin-sidebar .admin-brand{padding:0 8px 15px}.admin-sidebar .admin-brand img{width:42px;height:42px}.admin-sidebar .admin-brand small{display:block}.admin-sidebar .admin-nav-groups{display:block;overflow:visible;padding:0}.admin-sidebar .menu-label{display:block;margin:17px 12px 7px}.admin-sidebar .side-nav{display:grid!important;gap:4px}.admin-sidebar .side-nav a{display:flex!important;width:100%;padding:11px 13px;font-size:.84rem;white-space:normal}.admin-sidebar .side-nav a i{width:21px}.admin-sidebar .sidebar-user{display:flex;margin-top:auto}}
