.messenger-wrap[data-v-1efbfa0b]{display:contents}.messenger-trigger[data-v-1efbfa0b]{width:44px;height:44px;color:var(--text);cursor:pointer;background:#f1f5f9;border:none;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,color .15s,box-shadow .15s;display:inline-flex;position:relative}.messenger-trigger[data-v-1efbfa0b]:hover{color:#4338ca;background:#eef2ff}.messenger-trigger--open[data-v-1efbfa0b]{color:#4338ca;background:#eef2ff;box-shadow:inset 0 0 0 1px #c7d2fe}.messenger-badge[data-v-1efbfa0b]{color:#fff;background:linear-gradient(135deg,#4338ca,#6366f1);border:2px solid #fff;border-radius:999px;justify-content:center;align-items:center;min-width:1.1rem;height:1.1rem;padding:0 .25rem;font-size:.62rem;font-weight:800;line-height:1;display:inline-flex;position:absolute;top:4px;right:4px;box-shadow:0 2px 6px #6366f166}.messenger-overlay[data-v-1efbfa0b]{z-index:90;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a61;justify-content:flex-end;padding:0;display:flex;position:fixed;inset:0}.messenger-drawer[data-v-1efbfa0b]{border-left:1px solid #ffffff14;border-radius:16px 0 0 16px;flex-direction:column;width:min(960px,100%);height:100%;max-height:100dvh;display:flex;overflow:hidden;box-shadow:-16px 0 48px #0f172a33}@media (width<=640px){.messenger-drawer[data-v-1efbfa0b]{width:100%}}.notif-wrap[data-v-66f39d4a]{position:relative}.notif-btn[data-v-66f39d4a]{color:#334155;cursor:pointer;background:#fff;border:1.5px solid #cbd5e1;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;padding:0;transition:border-color .2s,background .2s,color .2s,box-shadow .2s,transform .15s;display:inline-flex;position:relative;overflow:visible;box-shadow:0 1px 3px #0f172a14}.notif-btn[data-v-66f39d4a]:hover{color:#1d4ed8;background:linear-gradient(#eff6ff 0%,#dbeafe 100%);border-color:#bfdbfe;box-shadow:0 4px 12px #2563eb1f}.notif-btn[data-v-66f39d4a]:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.notif-btn--open[data-v-66f39d4a],.notif-btn--open[data-v-66f39d4a]:hover{color:#fff;background:linear-gradient(135deg,#2563eb 0%,#3b82f6 100%);border-color:#93c5fd;box-shadow:0 4px 14px #2563eb47}.notif-btn--active[data-v-66f39d4a]:not(.notif-btn--open){color:#b91c1c;border-color:#fecaca}.notif-btn[data-v-66f39d4a]:active{transform:scale(.96)}.notif-head__icon svg[data-v-66f39d4a],.notif-empty__icon svg[data-v-66f39d4a]{max-width:none;display:block;width:100%!important;height:100%!important}.notif-ping[data-v-66f39d4a]{pointer-events:none;z-index:0;background:#ef444438;border-radius:50%;animation:2s ease-out infinite notif-pulse-66f39d4a;position:absolute;inset:-2px}.notif-icon[data-v-66f39d4a]{z-index:1;flex-shrink:0;justify-content:center;align-items:center;width:1.25rem;height:1.25rem;line-height:0;display:flex;position:relative}.notif-icon__svg[data-v-66f39d4a]{flex-shrink:0;min-width:1.25rem;max-width:none;min-height:1.25rem;display:block;width:1.25rem!important;height:1.25rem!important}.notif-badge[data-v-66f39d4a]{z-index:2;border:2px solid var(--surface,#fff);color:#fff;text-align:center;background:linear-gradient(135deg,#ef4444 0%,#dc2626 100%);border-radius:999px;min-width:1.125rem;height:1.125rem;padding:0 .3rem;font-size:.625rem;font-weight:800;line-height:.875rem;position:absolute;top:-3px;right:-3px;box-shadow:0 2px 6px #dc262659}.notif-btn--open .notif-badge[data-v-66f39d4a]{border-color:#2563eb}.notif-panel[data-v-66f39d4a]{z-index:100;background:#fff;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;width:min(400px,92vw);max-height:min(480px,70vh);display:flex;position:absolute;top:calc(100% + .55rem);right:0;overflow:hidden;box-shadow:0 4px 6px #0f172a0a,0 20px 48px #0f172a24}.notif-head[data-v-66f39d4a]{background:linear-gradient(#f8fafc 0%,#fff 100%);border-bottom:1px solid #e2e8f0;flex-shrink:0;justify-content:space-between;align-items:center;gap:.75rem;padding:.9rem 1rem;display:flex}.notif-head__title[data-v-66f39d4a]{align-items:center;gap:.55rem;min-width:0;display:flex}.notif-head__title strong[data-v-66f39d4a]{font-size:.95rem;display:block}.notif-head__sub[data-v-66f39d4a]{color:#64748b;margin:.1rem 0 0;font-size:.72rem;font-weight:500}.notif-head__icon[data-v-66f39d4a]{color:#2563eb;background:linear-gradient(135deg,#eff6ff 0%,#dbeafe 100%);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:2rem;height:2rem;display:inline-flex}.notif-mark-all[data-v-66f39d4a]{color:#475569;font:inherit;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:.35rem .65rem;font-size:.75rem;font-weight:600;transition:background .15s,border-color .15s,color .15s}.notif-mark-all[data-v-66f39d4a]:hover{color:#0f172a;background:#f8fafc;border-color:#cbd5e1}.notif-list[data-v-66f39d4a]{flex:1;margin:0;padding:.35rem 0;list-style:none;overflow-y:auto}.notif-item[data-v-66f39d4a]{border-left:3px solid #0000;gap:.55rem;padding:.75rem 1rem;transition:background .15s;display:flex}.notif-item.clickable[data-v-66f39d4a]{cursor:pointer}.notif-item.clickable[data-v-66f39d4a]:hover{background:#f8fafc}.notif-item.unread[data-v-66f39d4a]{background:#fafbff}.notif-item.accent-uni.unread[data-v-66f39d4a]{background:linear-gradient(90deg,#f5f3ff 0%,#fafbff 100%);border-left-color:#8b5cf6}.notif-item.accent-open.unread[data-v-66f39d4a]{background:linear-gradient(90deg,#f0fdf4 0%,#fafbff 100%);border-left-color:#22c55e}.notif-item.accent-office.unread[data-v-66f39d4a]{background:linear-gradient(90deg,#fffbeb 0%,#fafbff 100%);border-left-color:#f59e0b}.notif-item.accent-new.unread[data-v-66f39d4a]{background:linear-gradient(90deg,#eff6ff 0%,#fafbff 100%);border-left-color:#3b82f6}.notif-item.accent-default.unread[data-v-66f39d4a]{border-left-color:#94a3b8}.notif-item__dot[data-v-66f39d4a]{background:0 0;border-radius:50%;flex-shrink:0;width:.5rem;height:.5rem;margin-top:.45rem}.notif-item.unread .notif-item__dot[data-v-66f39d4a]{background:#2563eb;box-shadow:0 0 0 3px #2563eb2e}.notif-item.accent-uni.unread .notif-item__dot[data-v-66f39d4a]{background:#7c3aed;box-shadow:0 0 0 3px #7c3aed2e}.notif-item__body[data-v-66f39d4a]{flex:1;min-width:0}.notif-row[data-v-66f39d4a]{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.notif-row strong[data-v-66f39d4a]{font-size:.875rem;line-height:1.35}.notif-tag[data-v-66f39d4a]{text-transform:uppercase;letter-spacing:.05em;border-radius:999px;padding:.14rem .5rem;font-size:.62rem;font-weight:800}.notif-tag--student[data-v-66f39d4a],.notif-tag--new[data-v-66f39d4a]{color:#1d4ed8;background:#dbeafe}.notif-tag--office[data-v-66f39d4a]{color:#b45309;background:#fef3c7}.notif-tag--open[data-v-66f39d4a]{color:#15803d;background:#dcfce7}.notif-tag--uni[data-v-66f39d4a]{color:#6d28d9;background:#ede9fe}.notif-meta[data-v-66f39d4a]{background:#f8fafcd9;border:1px solid #f1f5f9;border-radius:10px;flex-direction:column;gap:.22rem;margin:.45rem 0 .35rem;padding:.55rem .65rem;font-size:.8rem;display:flex}.notif-meta-row[data-v-66f39d4a]{grid-template-columns:5.5rem 1fr;gap:.35rem;display:grid}.notif-meta__label[data-v-66f39d4a]{color:#64748b;font-weight:500}.notif-meta__value[data-v-66f39d4a]{color:#0f172a;word-break:break-word;font-weight:600}.notif-message[data-v-66f39d4a]{color:#64748b;white-space:pre-line;margin:.35rem 0;font-size:.82rem;line-height:1.45}.notif-item time[data-v-66f39d4a]{color:#94a3b8;font-size:.72rem;font-weight:500}.notif-state[data-v-66f39d4a]{color:#64748b;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:2rem 1rem;font-size:.875rem;display:flex}.notif-spinner[data-v-66f39d4a]{border:2px solid #e2e8f0;border-top-color:#2563eb;border-radius:50%;width:1.25rem;height:1.25rem;animation:.7s linear infinite notif-spin-66f39d4a}.notif-empty p[data-v-66f39d4a]{color:#334155;margin:0;font-weight:600}.notif-empty span[data-v-66f39d4a]{font-size:.8rem}.notif-empty__icon[data-v-66f39d4a]{color:#94a3b8;background:#f1f5f9;border-radius:50%;justify-content:center;align-items:center;width:3rem;height:3rem;display:flex}.notif-drop-enter-active[data-v-66f39d4a],.notif-drop-leave-active[data-v-66f39d4a]{transition:opacity .18s,transform .18s}.notif-drop-enter-from[data-v-66f39d4a],.notif-drop-leave-to[data-v-66f39d4a]{opacity:0;transform:translateY(-6px)scale(.98)}@keyframes notif-pulse-66f39d4a{0%{opacity:.7;transform:scale(.92)}70%{opacity:0;transform:scale(1.15)}to{opacity:0;transform:scale(1.15)}}@keyframes notif-spin-66f39d4a{to{transform:rotate(360deg)}}@media (width<=480px){.notif-panel[data-v-66f39d4a]{right:max(.5rem, env(safe-area-inset-right));left:auto;top:calc(3.35rem + env(safe-area-inset-top));width:min(400px,100vw - 1rem);max-height:min(480px,100dvh - 4.5rem);position:fixed}}.manual-wrap[data-v-c8978d4f]{display:contents}.manual-trigger[data-v-c8978d4f]{width:44px;height:44px;color:var(--text);cursor:pointer;background:#f1f5f9;border:none;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,color .15s,box-shadow .15s;display:inline-flex}.manual-trigger[data-v-c8978d4f]:hover{background:var(--surface-soft);color:#0f766e}.manual-trigger--open[data-v-c8978d4f]{background:var(--surface-soft);color:#0f766e;box-shadow:inset 0 0 0 1px #99f6e4}.manual-overlay[data-v-c8978d4f]{z-index:90;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a61;justify-content:flex-end;display:flex;position:fixed;inset:0}.manual-drawer[data-v-c8978d4f]{border-radius:16px 0 0 16px;flex-direction:column;width:min(1100px,100%);height:100%;max-height:100dvh;display:flex;overflow:hidden;box-shadow:-16px 0 48px #0f172a33}@media (width<=640px){.manual-drawer[data-v-c8978d4f]{border-radius:0;width:100%}}.top-header[data-v-ed05eed4] .manual-trigger,.top-header[data-v-ed05eed4] .messenger-trigger{color:#1e40af;box-shadow:none;background:#fff;border:1px solid #bfdbfe}.top-header[data-v-ed05eed4] .manual-trigger:hover,.top-header[data-v-ed05eed4] .messenger-trigger:hover{color:#1d4ed8;background:#dbeafe;border-color:#93c5fd}.top-header[data-v-ed05eed4] .manual-trigger--open,.top-header[data-v-ed05eed4] .messenger-trigger--open{color:#1d4ed8;box-shadow:none;background:#dbeafe;border-color:#60a5fa}.top-header[data-v-ed05eed4] .notif-btn{box-shadow:none;background:#fff;border-color:#bfdbfe}.top-header[data-v-ed05eed4] .notif-btn:hover{background:#dbeafe;border-color:#93c5fd}.demo-banner[data-v-a62d7544]{color:#ecfdf5;background:linear-gradient(90deg,#0f766e 0%,#0d9488 55%,#0f766e 100%);border-bottom:1px solid #0f766e59;flex-wrap:wrap;justify-content:center;align-items:center;gap:.55rem 1rem;padding:.55rem 1rem;font-size:.86rem;line-height:1.35;display:flex}.demo-banner__badge[data-v-a62d7544]{letter-spacing:.06em;text-transform:uppercase;background:#ffffff29;border:1px solid #ffffff38;border-radius:999px;flex-shrink:0;padding:.2rem .55rem;font-size:.68rem;font-weight:700}.demo-banner__text[data-v-a62d7544]{text-align:center;margin:0}.demo-banner__text strong[data-v-a62d7544]{font-weight:700}.demo-banner__cta[data-v-a62d7544]{color:#0f766e;background:#fff;border-radius:8px;flex-shrink:0;padding:.35rem .75rem;font-size:.8rem;font-weight:700;text-decoration:none;transition:background .15s,transform .15s}.demo-banner__cta[data-v-a62d7544]:hover{background:#f0fdfa;transform:translateY(-1px)}@media (width<=640px){.demo-banner[data-v-a62d7544]{text-align:center;flex-direction:column;gap:.45rem;padding:.65rem .85rem}}.plan-over-banner[data-v-1a54daa7]{color:#fef2f2;background:linear-gradient(90deg,#991b1b 0%,#dc2626 55%,#991b1b 100%);border-bottom:1px solid #7f1d1d59;flex-wrap:wrap;justify-content:center;align-items:center;gap:.55rem 1rem;padding:.55rem 1rem;font-size:.86rem;line-height:1.35;display:flex}.plan-over-banner__badge[data-v-1a54daa7]{letter-spacing:.06em;text-transform:uppercase;background:#ffffff29;border:1px solid #ffffff38;border-radius:999px;flex-shrink:0;padding:.2rem .55rem;font-size:.68rem;font-weight:700}.plan-over-banner__text[data-v-1a54daa7]{text-align:center;margin:0}.plan-over-banner__list[data-v-1a54daa7]{flex-wrap:wrap;gap:.35rem .75rem;margin:0;padding:0;font-size:.8rem;list-style:none;display:flex}.plan-over-banner__cta[data-v-1a54daa7]{color:#991b1b;background:#fff;border-radius:999px;flex-shrink:0;padding:.28rem .7rem;font-size:.78rem;font-weight:700;text-decoration:none}.plan-over-banner__cta[data-v-1a54daa7]:hover{background:#fef2f2}.app-shell{grid-template-columns:var(--sidebar-width,272px) 1fr;background:var(--bg);min-height:100dvh;display:grid}.nav-sidebar{--sidebar-accent:var(--card-hero-to,var(--card-hero-to));--sidebar-hover:#ffffff14;--sidebar-active-bg:color-mix(in srgb, var(--primary,var(--primary)) 32%, transparent);--sidebar-text:#f8fafc;--sidebar-muted:color-mix(in srgb, #94a3b8 72%, var(--card-hero-to,var(--card-hero-to)));--sidebar-ring:color-mix(in srgb, var(--card-hero-to,var(--card-hero-to)) 50%, transparent);background:linear-gradient(180deg, color-mix(in srgb, var(--card-hero-from,#0b1220) 92%, #020617) 0%, color-mix(in srgb, var(--card-hero-mid,#111827) 58%, #0f172a) 52%, color-mix(in srgb, var(--card-hero-from,#0f172a) 45%, #020617) 100%);border-right:1px solid color-mix(in srgb, var(--card-hero-to,var(--card-hero-to)) 18%, transparent);color:var(--sidebar-text);z-index:30;scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--card-hero-mid,#334155) 70%, #64748b) transparent;flex-direction:column;flex-shrink:0;align-self:start;height:100dvh;padding:.85rem .75rem;transition:background .35s,border-color .35s;display:flex;position:sticky;top:0;overflow-y:auto}.nav-sidebar::-webkit-scrollbar{width:5px}.nav-sidebar::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--card-hero-mid,#334155) 70%, #64748b);border-radius:999px}.brand{min-width:0;color:var(--sidebar-text);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;flex-direction:row;flex:1;align-items:center;gap:.75rem;margin-bottom:0;padding:.7rem .75rem;text-decoration:none;transition:border-color .15s,background .15s;display:flex}.brand:hover{border-color:var(--sidebar-ring);background:var(--sidebar-hover)}.brand-mark{flex-shrink:0}.brand-text{flex-direction:column;flex:1;align-items:flex-start;gap:.1rem;min-width:0;display:flex}.brand-name{white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:.92rem;font-weight:700;line-height:1.25;display:block;overflow:hidden}.brand-tag{color:var(--sidebar-muted);letter-spacing:.04em;text-transform:uppercase;font-size:.72rem;font-weight:600}.brand-logo{object-fit:contain;background:#fff;border:1px solid #ffffff1f;border-radius:10px;width:2.75rem;height:2.75rem;padding:.2rem;display:block}.brand-logo--fallback{background:linear-gradient(135deg, var(--card-hero-mid,#2563eb), var(--card-hero-to,#3b82f6));color:#fff;border:none;justify-content:center;align-items:center;padding:0;font-size:.85rem;font-weight:700;display:inline-flex}.nav-section-label{letter-spacing:.08em;text-transform:uppercase;color:var(--sidebar-muted);margin:0 .5rem .45rem;font-size:.68rem;font-weight:700}.nav{--nav-row-x:.65rem;--nav-chevron-x:.35rem;--nav-icon-gap:.65rem;--nav-row-y:.6rem;--nav-chevron-col:26px;flex-direction:column;flex:1;gap:.2rem;min-height:0;padding-bottom:.5rem;display:flex;overflow-y:auto}.nav-sidebar-footer{border-top:1px solid #ffffff1a;flex-shrink:0;margin-top:.5rem;padding-top:.65rem}.sidebar-user{color:var(--sidebar-text);border-radius:10px;align-items:center;gap:.65rem;padding:.55rem .65rem;text-decoration:none;transition:background .15s,box-shadow .15s;display:flex}.sidebar-user:hover,.sidebar-user.active{background:var(--sidebar-hover);box-shadow:inset 0 0 0 1px var(--sidebar-ring)}.sidebar-user-avatar{background:linear-gradient(135deg, var(--card-hero-mid,#2563eb), var(--card-hero-to,#3b82f6));color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:2.1rem;height:2.1rem;font-size:.72rem;font-weight:700;display:inline-flex}.sidebar-user-avatar--photo{background:var(--border);padding:0;overflow:hidden}.sidebar-user-avatar--photo img{object-fit:cover;width:100%;height:100%;display:block}.sidebar-user-meta{flex-direction:column;flex:1;gap:.05rem;min-width:0;display:flex}.sidebar-user-name{white-space:nowrap;text-overflow:ellipsis;font-size:.82rem;font-weight:600;line-height:1.2;overflow:hidden}.sidebar-user-role{color:var(--sidebar-muted);text-transform:capitalize;white-space:nowrap;text-overflow:ellipsis;font-size:.7rem;overflow:hidden}.sidebar-user-chevron{color:var(--sidebar-muted);opacity:0;flex-shrink:0;transition:opacity .15s,transform .15s}.sidebar-user:hover .sidebar-user-chevron,.sidebar-user.active .sidebar-user-chevron{opacity:1;transform:translate(1px)}.nav-link{padding:var(--nav-row-y) var(--nav-row-x);color:#e2e8f0;align-items:center;gap:var(--nav-icon-gap);border-radius:10px;min-height:42px;font-size:.9375rem;font-weight:500;text-decoration:none;transition:background .15s,color .15s;display:flex;position:relative}.nav-label{line-height:1.25}.nav-link .nav-icon{opacity:.85;width:1.125rem;height:1.125rem;color:inherit;flex-shrink:0}.nav-link:hover .nav-icon,.nav-link.active .nav-icon{opacity:1}.nav-link:hover{background:var(--sidebar-hover);color:#fff}.nav-link.active{background:var(--sidebar-active-bg);color:#fff;box-shadow:inset 3px 0 0 var(--sidebar-accent);font-weight:600}.nav-link.active:before{display:none}.nav-group{flex-direction:column;gap:.15rem;display:flex}.nav-group-toggle{width:100%;min-height:42px;padding:0 var(--nav-chevron-x) 0 0;color:#e2e8f0;text-align:left;background:0 0;border:none;border-radius:10px;align-items:stretch;font-family:inherit;font-size:.9375rem;font-weight:500;transition:background .15s,color .15s;display:flex}.nav-group-main{align-items:center;gap:var(--nav-icon-gap);min-width:0;padding:var(--nav-row-y) 0 var(--nav-row-y) var(--nav-row-x);color:inherit;font:inherit;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;flex:1;font-weight:500;display:flex}.nav-chevron-btn{width:var(--nav-chevron-col);color:inherit;cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-self:center;align-items:center;padding:0;display:inline-flex}.nav-group-main:hover,.nav-chevron-btn:hover,.nav-group-toggle:hover{background:var(--sidebar-hover);color:#fff}.nav-group-toggle.active,.nav-group-toggle.open{background:var(--sidebar-active-bg);color:#fff}.nav-group-toggle .nav-icon{opacity:.85;width:1.125rem;height:1.125rem;color:inherit}.nav-group-toggle:hover .nav-icon,.nav-group-toggle.active .nav-icon,.nav-group-main:hover .nav-icon{opacity:1}.nav-group-toggle.active{color:#fff;font-weight:600}.nav-chevron{opacity:.55;flex-shrink:0;transition:transform .2s}.nav-group-toggle:hover .nav-chevron,.nav-group-toggle.open .nav-chevron{opacity:.85}.nav-group-toggle.open .nav-chevron{transform:rotate(180deg)}.nav-submenu-heading{letter-spacing:.06em;text-transform:uppercase;color:var(--sidebar-muted);margin:.45rem .55rem .1rem;padding:0;font-size:.68rem;font-weight:700}.nav-submenu{border-left:2px solid #ffffff1f;flex-direction:column;gap:.05rem;margin:.05rem 0 .15rem 1.15rem;padding:.15rem 0 .25rem .45rem;display:flex}.nav-sublink{color:#cbd5e1;border-radius:8px;align-items:center;gap:.5rem;min-height:36px;padding:.45rem .6rem;font-size:.875rem;font-weight:500;line-height:1.3;text-decoration:none;transition:background .15s,color .15s;display:flex;position:relative}.nav-sublink .nav-icon{opacity:.8;width:1.2rem;height:1.2rem;color:inherit}.nav-sublink:hover .nav-icon,.nav-sublink.active .nav-icon{opacity:1}.nav-sublink:hover{background:var(--sidebar-hover);color:#fff}.nav-sublink.active{background:var(--sidebar-active-bg);color:#fff;font-weight:600}.nav-sublink.active:before{content:"";background:var(--sidebar-accent);border-radius:2px;width:2px;height:50%;position:absolute;top:50%;left:-.45rem;transform:translateY(-50%)}.content-column{flex-direction:column;min-width:0;min-height:100dvh;display:flex;position:relative;overflow-x:clip}.sidebar-overlay{display:none}.sidebar-head{align-items:flex-start;gap:.5rem;margin-bottom:.85rem;display:flex}.icon-btn.menu-toggle{display:none}.header-start{flex:1;align-items:center;gap:.65rem;min-width:0;display:flex;overflow:hidden}.account-overlay{z-index:110;opacity:0;pointer-events:none;background:#0f172a59;transition:opacity .2s;position:fixed;inset:0}.account-overlay.visible{opacity:1;pointer-events:auto}.app-topbar{z-index:40;position:sticky;top:0}.top-header{z-index:40;padding:.7rem var(--page-gutter);padding-left:max(.65rem, env(safe-area-inset-left));padding-right:max(.65rem, env(safe-area-inset-right));color:#0f172a;background:linear-gradient(135deg,#f8fbff 0%,#eff6ff 50%,#e8f1ff 100%);border-bottom:none;flex-shrink:0;justify-content:space-between;align-items:center;gap:.65rem;min-width:0;display:flex;position:relative;overflow:visible;box-shadow:0 1px #2563eb0a}[data-card-style=ivory] .top-header{background:linear-gradient(180deg, #fff 0%, var(--bg) 100%);box-shadow:0 1px 0 var(--border);color:var(--text)}.top-header:after{content:"";pointer-events:none;background:linear-gradient(90deg,#93c5fd 0%,#3b82f6 25%,#6366f1 50%,#3b82f6 75%,#93c5fd 100%) 0 0/200% 100%;height:2px;animation:3.2s linear infinite header-border-flow;position:absolute;bottom:0;left:0;right:0}@keyframes header-border-flow{0%{background-position:0%}to{background-position:200%}}@media (prefers-reduced-motion:reduce){.top-header:after{background:#93c5fd 0 0/100% 100%;animation:none}}.header-title{align-items:center;gap:.65rem;min-width:0;line-height:1.2;display:flex}.header-title strong{color:#0f172a;font-weight:700}.header-logo{object-fit:contain;background:#fff;border:1px solid #bfdbfe;border-radius:8px;flex-shrink:0;width:2rem;height:2rem}.header-title span{color:#64748b;font-size:.75rem;font-weight:500}.header-actions{flex-shrink:0;align-items:center;gap:.35rem;margin-left:auto;display:flex}.account-trigger{cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.account-trigger:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.icon-btn{color:#1e40af;cursor:pointer;background:#fff;border:1px solid #bfdbfe;border-radius:10px;justify-content:center;align-items:center;width:44px;height:44px;padding:0;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.top-header .icon-btn:hover{color:#1d4ed8;background:#dbeafe;border-color:#93c5fd}.menu-toggle--open{color:#1d4ed8;background:#dbeafe;border-color:#60a5fa}.avatar{color:#fff;background:linear-gradient(135deg,#2563eb,#3b82f6);border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:.85rem;font-weight:700;display:inline-flex}.avatar--lg{flex-shrink:0;width:52px;height:52px;font-size:1rem}.avatar--photo{background:var(--border);padding:0;overflow:hidden}.avatar--photo img{object-fit:cover;width:100%;height:100%;display:block}.main{width:100%;min-width:0;padding:var(--page-gutter);flex:1;padding-bottom:2rem}.account-drawer{z-index:115;background:var(--surface);border-left:1px solid var(--border);flex-direction:column;gap:1rem;width:min(320px,100%);height:100dvh;max-height:100dvh;padding:1rem;transition:transform .25s;display:flex;position:fixed;top:0;right:0;overflow:hidden;transform:translate(105%);box-shadow:-8px 0 30px #0f172a1f}.account-drawer.open{transform:translate(0)}.drawer-head{justify-content:space-between;align-items:center;display:flex}.drawer-head h2{margin:0;font-size:1.1rem;font-weight:700}.account-profile{align-items:center;gap:1rem;padding:1rem;display:flex}.profile-text{min-width:0}.profile-name{word-break:break-word;margin:0;font-weight:700}.profile-email{color:var(--muted);word-break:break-all;margin:.15rem 0 .5rem;font-size:.85rem}.profile-role{text-transform:capitalize;color:#1d4ed8;background:#eff6ff;border-radius:6px;padding:.2rem .55rem;font-size:.75rem;font-weight:600;display:inline-block}.account-details{flex:1;min-height:0;padding:1rem;overflow-y:auto}.account-details h3{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:0 0 .75rem;font-size:.8rem}.account-details dl{gap:.65rem;margin:0;display:grid}.detail{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.detail dt{color:var(--muted);margin:0;font-size:.85rem}.detail dd{margin:0;font-size:.9rem;font-weight:600}.status-pill{color:#b91c1c;background:#fee2e2;border-radius:999px;padding:.15rem .5rem;font-size:.75rem}.status-pill.active{color:#15803d;background:#dcfce7}.drawer-footer{padding-top:.5rem;padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--border);flex-direction:column;flex-shrink:0;gap:.5rem;margin-top:auto;display:flex}.profile-link{text-align:center;text-decoration:none}body.nav-drawer-open{overflow:hidden}@media (width<=1024px){.app-shell{--app-header-h:3.35rem;grid-template-rows:minmax(100dvh,auto);grid-template-columns:1fr}.sidebar-overlay,.nav-sidebar,.content-column{grid-area:1/1}.sidebar-overlay{top:var(--app-header-h);z-index:85;opacity:0;pointer-events:none;background:#0f172a66;transition:opacity .2s;display:block;position:fixed;bottom:0;left:0;right:0}.sidebar-overlay.visible{opacity:1;pointer-events:auto}.nav-sidebar{top:var(--app-header-h);width:min(288px,88vw);max-width:100%;height:calc(100dvh - var(--app-header-h));max-height:calc(100dvh - var(--app-header-h));padding-top:.65rem;padding-bottom:max(.85rem, env(safe-area-inset-bottom));z-index:90;transition:transform .25s;position:fixed;left:0;transform:translate(-105%);box-shadow:8px 0 32px #00000073}.nav-sidebar.open{transform:translate(0)}.icon-btn.menu-toggle{flex-shrink:0;display:inline-flex}.app-topbar{z-index:100}.top-header{padding-top:max(.65rem, env(safe-area-inset-top))}.content-column{width:100%;min-height:100dvh}.header-title strong{white-space:nowrap;text-overflow:ellipsis;max-width:min(36vw,11rem);font-size:.95rem;display:block;overflow:hidden}}@media (width<=768px){.brand{gap:.55rem;padding:.55rem .6rem}.brand-name{font-size:.85rem}.brand-tag{font-size:.65rem}.brand-logo{width:2.35rem;height:2.35rem}.nav-section-label{display:none}.sidebar-user-name{font-size:.78rem}.sidebar-user-role{font-size:.65rem}.nav-link,.nav-group-toggle{font-size:.875rem}.nav{--nav-row-x:.65rem;--nav-chevron-x:.35rem;--nav-row-y:.55rem;--nav-chevron-col:26px}.nav-link{padding:var(--nav-row-y) var(--nav-row-x)}.nav-sublink{padding:.45rem .5rem;font-size:.92rem}.header-title strong{max-width:min(42vw,9rem)}}@media (width<=480px){.header-title{display:none}.top-header{padding-top:max(.5rem, env(safe-area-inset-top));gap:.35rem;padding-bottom:.5rem}.icon-btn,.header-actions .messenger-trigger,.header-actions .notif-btn{width:40px;height:40px}.avatar{width:36px;height:36px;font-size:.78rem}}
