@font-face{font-family:'Vazirmatn';src:url('/font.woff2');font-weight:100 900;font-display:swap}

:root {
  --navy:#062763; --navy-deep:#031638; --navy-card:#0b214c;
  --orange:#ff4a12; --orange-light:#ff7a3d; --gold:#ffbf4d;
  --white:#f7f9ff; --gray:#8fa5c7; --gray-light:#d4def0;
  --green:#22c55e; --red:#ef4444; --blue:#0ea5e9; --purple:#7c3aed;
  --line:rgba(255,255,255,.085);
}
body.theme-dark{
  --navy:#111827;--navy-deep:#020617;--navy-card:#0b1220;
  --orange:#f97316;--orange-light:#fb923c;--gold:#fbbf24;
  --white:#f8fafc;--gray:#94a3b8;--gray-light:#cbd5e1;
  --line:rgba(148,163,184,.16);
}
*{box-sizing:border-box;margin:0;padding:0}
body{
  font-family:'Vazirmatn',Tahoma,Arial,sans-serif;
  color:var(--white); min-height:100vh; line-height:1.8;
  background:
    radial-gradient(circle at 18% 8%, rgba(255,191,77,.16), transparent 26%),
    radial-gradient(circle at 86% 12%, rgba(255,74,18,.13), transparent 24%),
    linear-gradient(135deg,var(--navy) 0%,var(--navy-deep) 74%,#010b1d 100%);
}
body.theme-dark{
  background:
    radial-gradient(circle at 16% 10%, rgba(56,189,248,.12), transparent 28%),
    radial-gradient(circle at 84% 16%, rgba(249,115,22,.13), transparent 25%),
    linear-gradient(135deg,#020617 0%,#0f172a 45%,#111827 100%);
}
body:before{
  content:'';position:fixed;inset:0;pointer-events:none;z-index:0;
  background-image:repeating-radial-gradient(circle at 0 0, transparent 0 18px, rgba(255,255,255,.038) 19px 20px);
  background-size:120px 120px;opacity:.36;
}
.login-page{position:relative;z-index:1;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}
.login-card{width:min(520px,100%);background:rgba(11,33,76,.94);border:1px solid var(--line);border-radius:24px;padding:34px;box-shadow:0 30px 90px rgba(0,0,0,.38)}
.login-logo{width:180px;height:130px;margin:0 auto 18px;display:flex;align-items:center;justify-content:center}
.login-logo img{max-width:100%;max-height:100%;object-fit:contain;filter:drop-shadow(0 18px 28px rgba(0,0,0,.45))}
.login-card h1{text-align:center;color:var(--gold);font-size:25px;margin-bottom:8px}
.login-card p{text-align:center;color:var(--gray-light);font-size:13px;margin-bottom:20px}
.login-error{display:none;margin-top:12px;background:rgba(239,68,68,.13);border:1px solid rgba(239,68,68,.35);color:#fecaca;padding:12px;border-radius:12px;text-align:center;font-weight:700;font-size:13px}
.login-success{display:none;margin-top:12px;background:rgba(34,197,94,.12);border:1px solid rgba(34,197,94,.25);color:#86efac;padding:12px;border-radius:12px;text-align:center;font-weight:700;font-size:13px}
.app{position:relative;z-index:1;min-height:100vh}
.sidebar{
  position:fixed;right:0;top:0;bottom:0;width:300px;overflow-y:auto;
  background:rgba(3,22,56,.93);border-left:1px solid var(--line);padding:20px;z-index:2;
}
.brand{display:flex;gap:12px;align-items:center;margin-bottom:22px}
.brand img{width:64px;height:64px;object-fit:contain;background:#000;border-radius:16px;padding:4px;border:1px solid rgba(255,191,77,.28)}
.brand h2{font-size:18px;color:var(--gold);line-height:1.3}
.brand span{font-size:11px;color:var(--gray-light)}
.nav-btn{
  width:100%;text-align:right;margin:5px 0;background:transparent;border:1px solid transparent;
  color:var(--gray-light);padding:11px 12px;border-radius:12px;font-family:inherit;cursor:pointer;font-weight:800;
}
.nav-btn.active,.nav-btn:hover{background:rgba(255,191,77,.10);border-color:rgba(255,191,77,.25);color:var(--gold)}
.main{margin-right:300px;padding:26px;position:relative;z-index:1}
.topbar,.card{
  background:rgba(11,33,76,.92);border:1px solid var(--line);border-radius:20px;
  box-shadow:0 20px 60px rgba(0,0,0,.25);
}
.topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px;margin-bottom:20px}
.topbar h1{font-size:25px;color:var(--gold)} .topbar p{font-size:13px;color:var(--gray-light)}
.card{padding:20px;margin-bottom:16px}
.card h3{color:var(--gold);margin-bottom:12px;font-size:17px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-bottom:16px}
.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:16px}
.kpi .value{font-size:28px;font-weight:900;color:var(--gold);direction:ltr;text-align:right}
.kpi .label{font-size:12px;color:var(--gray-light);margin-top:4px}
.section{display:none}.section.active{display:block}
.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(205px,1fr));gap:12px}
label{display:block;color:var(--gray-light);font-size:12px;font-weight:800;margin-bottom:6px}
input,select,textarea{
  width:100%;font-family:inherit;font-size:13px;color:var(--white);outline:none;
  background:rgba(3,22,56,.82);border:1px solid rgba(255,255,255,.13);
  border-radius:13px;padding:11px 12px;
}
textarea{min-height:90px;resize:vertical}
input:focus,select:focus,textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(255,191,77,.12)}
.btn{
  border:none;border-radius:13px;padding:11px 15px;font-family:inherit;font-weight:900;cursor:pointer;
  background:linear-gradient(135deg,var(--orange),var(--gold));color:#07183a;transition:.2s;
}
.btn:hover{transform:translateY(-1px);box-shadow:0 14px 30px rgba(255,74,18,.18)}
.btn.secondary{background:rgba(255,255,255,.08);color:var(--white);border:1px solid rgba(255,255,255,.12)}
.btn.danger{background:rgba(239,68,68,.12);color:#fecaca;border:1px solid rgba(239,68,68,.35)}
.btn.wa{background:linear-gradient(135deg,#22c55e,#86efac);color:#052e16}
.btn.tg{background:linear-gradient(135deg,#0ea5e9,#67e8f9);color:#082f49}
.btn.small{padding:7px 10px;border-radius:10px;font-size:11px;margin:2px}
.form-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.table-wrap{overflow:auto;margin-top:14px;border:1px solid var(--line);border-radius:15px}
table{width:100%;border-collapse:collapse;min-width:980px;background:rgba(3,22,56,.34)}
th,td{padding:10px 12px;border-bottom:1px solid rgba(255,255,255,.07);font-size:12px;text-align:right;color:var(--gray-light);vertical-align:top}
th{background:rgba(255,74,18,.12);color:var(--gold);font-weight:900;white-space:nowrap}
.badge{display:inline-block;padding:4px 9px;border-radius:999px;font-size:11px;font-weight:900;border:1px solid rgba(255,255,255,.15)}
.b-pending{background:rgba(148,163,184,.12);color:#e2e8f0}
.b-doing{background:rgba(14,165,233,.14);color:#bae6fd}
.b-review{background:rgba(251,191,36,.14);color:#fde68a}
.b-done{background:rgba(34,197,94,.14);color:#86efac}
.b-late{background:rgba(239,68,68,.14);color:#fecaca}
.p-low{background:rgba(14,165,233,.14);color:#bae6fd}.p-mid{background:rgba(251,191,36,.14);color:#fde68a}.p-high{background:rgba(239,68,68,.14);color:#fecaca}
.alert{border-radius:15px;padding:13px 15px;background:rgba(255,74,18,.12);border:1px solid rgba(255,74,18,.25);color:var(--orange-light);font-size:13px}
.checklist{display:grid;gap:8px;margin-top:10px}
.checkitem{display:flex;align-items:center;gap:10px;background:rgba(3,22,56,.48);border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:10px;color:var(--gray-light);font-size:13px}
.checkitem input{width:auto}
.progress{height:10px;background:rgba(2,6,23,.7);border-radius:999px;overflow:hidden;margin-top:8px}
.progress>i{display:block;height:100%;background:linear-gradient(90deg,var(--orange),var(--gold));width:0%}
.board{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.col{background:rgba(3,22,56,.42);border:1px solid var(--line);border-radius:16px;padding:12px;min-height:260px}
.col h4{color:var(--gold);margin-bottom:10px}
.task-card{background:rgba(11,33,76,.95);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:12px;margin-bottom:10px}
.task-card strong{color:var(--white)} .task-card p{color:var(--gray-light);font-size:12px;margin-top:6px}
.score{font-size:22px;font-weight:900;color:var(--gold)}
.approval-approved{background:rgba(34,197,94,.14);color:#86efac}
.approval-rejected{background:rgba(239,68,68,.14);color:#fecaca}
.approval-review{background:rgba(251,191,36,.14);color:#fde68a}
.deadline-yellow{color:#fde68a;font-weight:900}
.deadline-red{color:#fecaca;font-weight:900}
.employee-focus{background:linear-gradient(135deg,rgba(255,191,77,.10),rgba(255,74,18,.08));border:1px solid rgba(255,191,77,.25);border-radius:16px;padding:14px;margin-bottom:12px}

.load-ok{color:#86efac}.load-warn{color:#fde68a}.load-danger{color:#fecaca}.suggestion-box{background:rgba(14,165,233,.12);border:1px solid rgba(14,165,233,.25);color:#bae6fd;border-radius:15px;padding:13px;margin-top:12px;font-size:13px}
.project-insights{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin-bottom:16px}
.project-mini{background:rgba(3,22,56,.42);border:1px solid var(--line);border-radius:16px;padding:14px}
.project-mini h4{color:var(--gold);margin-bottom:8px}
.project-mini p{color:var(--gray-light);font-size:12px;margin:5px 0}
.timer-box{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.timer-running{color:#86efac;font-weight:900}
.reminder-urgent{background:rgba(239,68,68,.13)!important;border-color:rgba(239,68,68,.35)!important}
.role-note{font-size:12px;color:var(--gray-light);margin-top:8px}
.metric-line{display:flex;justify-content:space-between;gap:12px;margin:8px 0;color:var(--gray-light);font-size:13px}
.metric-line strong{color:var(--gold)}
.deadline-good{color:#86efac}.deadline-warn{color:#fde68a}.deadline-danger{color:#fecaca}
.empty{text-align:center;color:var(--gray);padding:20px}
.custom-package-box{display:none;margin-top:12px;background:rgba(255,191,77,.06);border:1px dashed rgba(255,191,77,.35);border-radius:15px;padding:14px}

body.theme-dark .sidebar{
  background:linear-gradient(180deg,rgba(2,6,23,.98),rgba(15,23,42,.96))!important;
  border-left:1px solid rgba(148,163,184,.16)!important;
}
body.theme-dark .topbar,
body.theme-dark .card,
body.theme-dark .login-card,
body.theme-dark .col,
body.theme-dark .task-card{
  background:linear-gradient(145deg,rgba(15,23,42,.96),rgba(2,6,23,.88))!important;
  border-color:rgba(148,163,184,.16)!important;
  box-shadow:0 24px 70px rgba(0,0,0,.34)!important;
}
body.theme-dark input,
body.theme-dark select,
body.theme-dark textarea{
  background:rgba(2,6,23,.76)!important;
  border-color:rgba(148,163,184,.18)!important;
  color:#f8fafc!important;
}
body.theme-dark input:focus,
body.theme-dark select:focus,
body.theme-dark textarea:focus{
  border-color:rgba(251,191,36,.68)!important;
  box-shadow:0 0 0 3px rgba(251,191,36,.12)!important;
}
body.theme-dark .nav-btn{color:#cbd5e1!important}
body.theme-dark .nav-btn.active,
body.theme-dark .nav-btn:hover{
  background:linear-gradient(135deg,rgba(251,191,36,.13),rgba(56,189,248,.08))!important;
  border-color:rgba(251,191,36,.30)!important;
  color:#fbbf24!important;
}
body.theme-dark table{background:rgba(2,6,23,.52)!important}
body.theme-dark th{
  background:linear-gradient(135deg,rgba(249,115,22,.18),rgba(251,191,36,.10))!important;
  color:#fbbf24!important;
}
body.theme-dark td{color:#cbd5e1!important}
body.theme-dark .table-wrap,
body.theme-dark .checkitem,
body.theme-dark .progress,
body.theme-dark .custom-package-box{
  border-color:rgba(148,163,184,.16)!important;
}
body.theme-dark .checkitem{
  background:rgba(2,6,23,.58)!important;
}
body.theme-dark .alert{
  background:linear-gradient(135deg,rgba(249,115,22,.12),rgba(2,6,23,.42))!important;
  border-color:rgba(249,115,22,.30)!important;
  color:#fdba74!important;
}
body.theme-dark .btn.secondary{
  background:rgba(15,23,42,.82)!important;
  color:#e2e8f0!important;
  border-color:rgba(148,163,184,.22)!important;
}
body.theme-dark .badge{border-color:rgba(148,163,184,.24)!important}


.profile-mini{display:flex;align-items:center;gap:10px;margin:8px 0 12px 0;padding:10px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.03)}
.avatar{width:42px;height:42px;border-radius:50%;object-fit:cover;border:2px solid rgba(245,158,11,.45);background:rgba(255,255,255,.08);display:inline-flex;align-items:center;justify-content:center;font-weight:800;color:var(--gold)}
.avatar.big{width:82px;height:82px;font-size:26px}.chat-layout{display:grid;grid-template-columns:280px 1fr;gap:14px}.chat-list{max-height:620px;overflow:auto}.chat-user{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid var(--line);border-radius:14px;margin-bottom:8px;cursor:pointer;background:rgba(255,255,255,.03)}.chat-user.active{border-color:rgba(245,158,11,.65);background:rgba(245,158,11,.10)}.chat-window{min-height:520px;display:flex;flex-direction:column}.chat-messages{flex:1;max-height:520px;overflow:auto;padding:12px;border:1px solid var(--line);border-radius:16px;background:rgba(0,0,0,.16)}.bubble{max-width:76%;padding:10px 12px;border-radius:16px;margin:8px 0;white-space:pre-wrap;line-height:1.8}.bubble.me{margin-right:auto;background:linear-gradient(135deg,rgba(245,158,11,.22),rgba(251,191,36,.10));border:1px solid rgba(245,158,11,.28)}.bubble.other{margin-left:auto;background:rgba(255,255,255,.06);border:1px solid var(--line)}.bubble small{display:block;color:var(--gray-light);font-size:11px;margin-top:4px}.chat-compose{display:flex;gap:8px;margin-top:10px}.chat-compose textarea{min-height:48px}.today-filter{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.role-kpi-note{font-size:12px;color:var(--gray-light);margin-top:6px}

.floating-chat{position:fixed;left:22px;bottom:22px;z-index:9999;direction:rtl}
.floating-chat-btn{width:60px;height:60px;border-radius:50%;border:1px solid rgba(245,158,11,.45);background:linear-gradient(135deg,var(--gold),#f97316);color:#111827;font-size:26px;box-shadow:0 18px 45px rgba(0,0,0,.35);cursor:pointer;display:flex;align-items:center;justify-content:center;position:relative}
.chat-badge{position:absolute;top:-6px;right:-6px;background:#ef4444;color:white;border-radius:999px;min-width:22px;height:22px;padding:0 6px;font-size:12px;display:flex;align-items:center;justify-content:center;border:2px solid #111827;font-weight:800}
.floating-chat-panel{display:none;width:min(390px,calc(100vw - 32px));height:min(640px,calc(100vh - 110px));background:rgba(15,23,42,.98);border:1px solid var(--line);border-radius:22px;box-shadow:0 24px 70px rgba(0,0,0,.55);overflow:hidden;margin-bottom:12px}
.floating-chat.open .floating-chat-panel{display:flex;flex-direction:column}
.floating-chat-head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.04)}
.floating-chat-body{display:grid;grid-template-columns:130px 1fr;min-height:0;flex:1}
.floating-chat-users{border-left:1px solid var(--line);overflow:auto;padding:8px;background:rgba(0,0,0,.12)}
.floating-chat-users .chat-user{padding:8px;margin-bottom:6px;border-radius:12px;font-size:12px}
.floating-chat-convo{display:flex;flex-direction:column;min-width:0;min-height:0;padding:10px}
.floating-chat-convo .chat-messages{max-height:none;flex:1;min-height:0;border-radius:14px}
.chat-attach{margin-top:8px;padding:8px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(255,255,255,.04)}
.chat-attach img{max-width:180px;max-height:140px;border-radius:10px;display:block;margin-top:6px}
.chat-file-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px;color:var(--gray-light)}
.chat-compose-vertical{display:flex;gap:8px;margin-top:8px;align-items:center}.chat-compose-vertical textarea{min-height:44px}.chat-compose-vertical input[type=file]{max-width:110px;font-size:11px}.chat-notify-pulse{animation:chatPulse 1.2s infinite}
@keyframes chatPulse{0%{box-shadow:0 0 0 0 rgba(239,68,68,.65)}70%{box-shadow:0 0 0 14px rgba(239,68,68,0)}100%{box-shadow:0 0 0 0 rgba(239,68,68,0)}}
.schedule-mode-note{margin-top:8px;color:var(--gray-light);font-size:12px;line-height:1.9}

/* V22 Professional Floating Messenger */
.floating-chat{display:none;left:24px;bottom:24px;z-index:10000;font-family:inherit}
body.chat-ready .floating-chat{display:block}
.floating-chat-btn{width:64px;height:64px;border-radius:22px;border:1px solid rgba(245,158,11,.55);background:linear-gradient(145deg,#f59e0b,#f97316 58%,#b45309);color:#111827;font-size:27px;box-shadow:0 18px 50px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.35);transition:.22s transform,.22s box-shadow}
.floating-chat-btn:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 24px 70px rgba(0,0,0,.52)}
.chat-badge{top:-8px;right:-8px;background:linear-gradient(135deg,#ef4444,#b91c1c);border:3px solid #0f172a;font-weight:900}
.floating-chat-panel{width:min(860px,calc(100vw - 40px));height:min(680px,calc(100vh - 110px));background:linear-gradient(180deg,rgba(15,23,42,.99),rgba(2,6,23,.99));border:1px solid rgba(245,158,11,.22);border-radius:28px;box-shadow:0 34px 100px rgba(0,0,0,.65);overflow:hidden;margin-bottom:14px;backdrop-filter:blur(18px)}
.floating-chat.open .floating-chat-panel{display:grid;grid-template-rows:auto 1fr}
.floating-chat-head{padding:14px 16px;border-bottom:1px solid rgba(255,255,255,.08);background:linear-gradient(135deg,rgba(245,158,11,.18),rgba(255,255,255,.035));gap:12px}
.chat-title-block{display:flex;align-items:center;gap:10px}.chat-title-dot{width:11px;height:11px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 5px rgba(34,197,94,.12)}
.floating-chat-body{display:grid;grid-template-columns:250px 1fr;min-height:0;flex:1}
.floating-chat-users{border-left:1px solid rgba(255,255,255,.08);overflow:auto;padding:12px;background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(0,0,0,.13))}
.chat-search{width:100%;margin-bottom:10px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10);border-radius:14px;padding:11px 12px;color:var(--text)}
.floating-chat-users .chat-user{padding:11px;border-radius:16px;margin-bottom:8px;border:1px solid transparent;background:transparent;transition:.18s;background-color .18s,border-color .18s,transform .18s}
.floating-chat-users .chat-user:hover{background:rgba(255,255,255,.055);transform:translateX(-2px)}
.floating-chat-users .chat-user.active{background:linear-gradient(135deg,rgba(245,158,11,.18),rgba(245,158,11,.05));border-color:rgba(245,158,11,.35)}
.chat-user-name{font-weight:800;font-size:13px}.chat-user-status{font-size:11px;color:var(--gray-light);margin-top:3px}.chat-user-unread{margin-right:auto;background:#ef4444;color:#fff;border-radius:999px;padding:2px 7px;font-size:11px;font-weight:900}
.floating-chat-convo{display:grid;grid-template-rows:auto 1fr auto;min-width:0;min-height:0;padding:0;background:radial-gradient(circle at top right,rgba(245,158,11,.08),transparent 32%),rgba(15,23,42,.38)}
.chat-convo-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.025)}
.chat-person{display:flex;align-items:center;gap:10px}.chat-person small{display:block;color:var(--gray-light);font-size:11px;margin-top:2px}
.floating-chat-convo .chat-messages{max-height:none;flex:1;min-height:0;border:0;border-radius:0;background:transparent;padding:18px;overflow:auto}
.bubble{position:relative;max-width:74%;padding:10px 13px;border-radius:18px;margin:9px 0;white-space:pre-wrap;line-height:1.75;font-size:13px;box-shadow:0 10px 24px rgba(0,0,0,.18)}
.bubble.me{margin-right:auto;background:linear-gradient(135deg,rgba(245,158,11,.34),rgba(180,83,9,.22));border:1px solid rgba(245,158,11,.30);border-bottom-right-radius:6px}
.bubble.other{margin-left:auto;background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.10);border-bottom-left-radius:6px}
.bubble strong{font-size:11px;color:rgba(255,255,255,.70);font-weight:700}.bubble small{text-align:left;color:rgba(255,255,255,.52);font-size:10.5px;margin-top:5px}
.chat-attach{margin-top:8px;padding:8px;border:1px solid rgba(255,255,255,.12);border-radius:13px;background:rgba(0,0,0,.16)}
.chat-attach img{max-width:230px;max-height:170px;border-radius:12px;display:block;margin-top:7px;object-fit:cover}
.chat-file-row a{color:#fbbf24;text-decoration:none;font-weight:700}
.chat-compose-vertical{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:end;padding:12px;border-top:1px solid rgba(255,255,255,.08);background:rgba(2,6,23,.82)}
.chat-compose-vertical textarea{min-height:46px;max-height:112px;resize:vertical;border-radius:16px;background:rgba(255,255,255,.065);border:1px solid rgba(255,255,255,.12);padding:12px;color:var(--text)}
.chat-compose-vertical input[type=file]{display:none}.chat-file-label{width:46px;height:46px;border-radius:16px;border:1px solid rgba(255,255,255,.13);display:flex;align-items:center;justify-content:center;cursor:pointer;background:rgba(255,255,255,.055);font-size:20px}.chat-file-label:hover{background:rgba(245,158,11,.12);border-color:rgba(245,158,11,.35)}
.chat-send-btn{height:46px;border-radius:16px;padding:0 18px}.chat-empty-state{display:flex;height:100%;align-items:center;justify-content:center;color:var(--gray-light);text-align:center;padding:30px}.chat-picked-file{font-size:11px;color:#fbbf24;padding:0 14px 10px;background:rgba(2,6,23,.82)}


/* V23 Profile Identity + Browser Notifications */
.topbar-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.current-user-chip{display:flex;align-items:center;gap:9px;padding:8px 10px;border:1px solid rgba(245,158,11,.22);border-radius:16px;background:linear-gradient(135deg,rgba(245,158,11,.12),rgba(255,255,255,.035));min-width:190px}
.current-user-chip .avatar{width:38px;height:38px}.current-user-chip strong{display:block;font-size:13px}.current-user-chip small{display:block;color:var(--gray-light);font-size:11px;margin-top:2px}
.person-inline{display:flex;align-items:center;gap:8px}.person-inline .avatar{width:34px;height:34px;font-size:11px}.daily-person-title{display:flex;align-items:center;gap:10px}.daily-person-title .avatar{width:46px;height:46px}
.browser-toast-root{position:fixed;left:24px;top:22px;z-index:11000;display:flex;flex-direction:column;gap:10px;pointer-events:none;direction:rtl}
.browser-toast{min-width:290px;max-width:390px;display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:12px 14px;border-radius:18px;background:linear-gradient(135deg,rgba(15,23,42,.98),rgba(30,41,59,.97));border:1px solid rgba(245,158,11,.30);box-shadow:0 24px 70px rgba(0,0,0,.48);color:var(--text);animation:toastIn .25s ease-out;pointer-events:auto}
.browser-toast .avatar{width:42px;height:42px}.browser-toast strong{font-size:13px}.browser-toast p{margin:3px 0 0;color:var(--gray-light);font-size:12px;line-height:1.55}.browser-toast button{border:0;background:rgba(255,255,255,.08);color:var(--text);border-radius:10px;padding:5px 8px;cursor:pointer}
@keyframes toastIn{from{opacity:0;transform:translateY(-8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}


/* V25 Real Presence + Notification Pro */
.presence-dot{width:9px;height:9px;border-radius:50%;display:inline-block;margin-left:5px;background:#64748b;box-shadow:0 0 0 3px rgba(100,116,139,.15)}
.presence-dot.online{background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.14)}
.presence-dot.offline{background:#64748b}
.presence-text.online{color:#22c55e}.presence-text.offline{color:#94a3b8}
.dashboard-filter{display:flex;align-items:end;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.dashboard-filter .month-picker{max-width:210px}
.chat-user-status{display:flex;align-items:center;gap:4px}

@media(max-width:720px){.floating-chat{left:10px;right:10px;bottom:10px}.floating-chat-panel{width:100%;height:calc(100vh - 92px);border-radius:22px}.floating-chat-body{grid-template-columns:1fr}.floating-chat-users{max-height:136px;border-left:none;border-bottom:1px solid rgba(255,255,255,.08);display:flex;gap:8px}.floating-chat-users .chat-user{min-width:145px}.chat-search{display:none}.bubble{max-width:88%}.chat-compose-vertical{grid-template-columns:auto 1fr auto}.chat-send-btn{padding:0 12px}}

@media(max-width:900px){.chat-layout{grid-template-columns:1fr}.bubble{max-width:92%}}

@media(max-width:1000px){.sidebar{position:relative;width:100%;border-left:none;border-bottom:1px solid var(--line)}.main{margin:0;padding:16px}.board{grid-template-columns:1fr}.topbar{flex-direction:column;align-items:flex-start}}
