@font-face{font-family:"Readex Pro";src:url("../fonts/ReadexPro-400.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Readex Pro";src:url("../fonts/ReadexPro-500.ttf") format("truetype");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Readex Pro";src:url("../fonts/ReadexPro-600.ttf") format("truetype");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Readex Pro";src:url("../fonts/ReadexPro-700.ttf") format("truetype");font-weight:700;font-style:normal;font-display:swap}
:root{
  --navy:#0F1E3F;--navy-2:#172A52;--navy-3:#21365F;--brand:#068189;--brand-2:#2A8563;
  --mint:#2A8563;--sky:#3C7FA3;--amber:#D6A449;--red:#B64B5A;--paper:#F5F5F5;--card:#fff;
  --ink:#172033;--muted:#68758A;--line:#E2E7EC;--soft:#F8FAFB;--shadow:0 18px 50px rgba(15,30,63,.08);
  --radius:16px;--sidebar:278px;--font:"Readex Pro",Arial,sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:14px;line-height:1.6}button,input,select,textarea{font:inherit}a{color:inherit}.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 0 0 auto;width:var(--sidebar);height:100vh;background:linear-gradient(180deg,var(--navy),#11152d);color:#fff;padding:24px 18px;display:flex;flex-direction:column;z-index:50;overflow-y:auto}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;padding:3px 8px 25px}.brand-symbol{width:47px;height:47px;display:grid;place-items:center;border-radius:16px;color:#fff;font-weight:900;font-size:26px;background:linear-gradient(145deg,#7367f0,#9c6ff0);box-shadow:0 12px 28px #0b0d1c88,inset 0 1px #ffffff55}.brand>span:last-child{display:flex;flex-direction:column;min-width:0}.brand strong{font-size:20px;line-height:1.2}.brand small{color:#aab1cc;font-size:11px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-list{display:flex;flex-direction:column;gap:3px}.nav-caption{color:#7f88ab;font-size:10px;font-weight:800;letter-spacing:.12em;padding:7px 14px;text-transform:uppercase}.nav-link{display:flex;align-items:center;gap:11px;text-decoration:none;color:#bfc5dd;padding:10px 12px;border-radius:12px;transition:.2s;font-weight:600}.nav-link:hover{background:#ffffff0b;color:#fff;transform:translateX(-2px)}.nav-link.active{color:#fff;background:linear-gradient(90deg,#655eea33,#8b67ef19);box-shadow:inset -3px 0 #8270ef}.nav-icon{width:29px;height:29px;border-radius:9px;display:grid;place-items:center;background:#ffffff09;color:#b4bce0;font-size:16px;font-weight:800}.nav-link.active .nav-icon{background:#7568ee;color:#fff;box-shadow:0 7px 18px #0a0d22aa}.sidebar-footer{margin-top:auto;border-top:1px solid #ffffff12;padding-top:14px}.install-button{width:100%;border:1px dashed #ffffff31;background:#ffffff09;color:#dce0f1;padding:9px;border-radius:11px;cursor:pointer;margin-bottom:12px}.user-mini{display:flex;align-items:center;gap:10px;text-decoration:none;padding:8px;border-radius:12px}.user-mini:hover{background:#ffffff0a}.avatar{width:39px;height:39px;display:grid;place-items:center;border-radius:13px;background:linear-gradient(145deg,#20b99a,#2f9fe8);color:#fff;font-weight:900}.user-mini>span:last-child{display:flex;flex-direction:column;min-width:0}.user-mini strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-mini small{font-size:10px;color:#9ba3c3}.main-area{margin-right:var(--sidebar);min-height:100vh}.topbar{height:76px;background:#ffffffd9;backdrop-filter:blur(18px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;padding:0 30px}.topbar-start,.topbar-actions{display:flex;align-items:center;gap:12px}.topbar-start>div{display:flex;gap:5px;flex-direction:column}.today-label{font-size:10px;color:var(--muted)}.topbar-start strong{font-size:12px}.icon-button,.notification-button{width:39px;height:39px;display:grid;place-items:center;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);text-decoration:none;cursor:pointer;position:relative}.icon-button:hover,.notification-button:hover{border-color:#cbc9f7;color:var(--brand);background:#fafaff}.notification-button b{position:absolute;top:-6px;left:-6px;min-width:18px;height:18px;border-radius:999px;background:var(--red);color:#fff;border:2px solid #fff;display:grid;place-items:center;font-size:9px}.quick-create{height:39px;padding:0 15px;display:flex;gap:8px;align-items:center;border-radius:12px;background:var(--navy);color:#fff;text-decoration:none}.quick-create span{font-size:20px}.quick-create b{font-size:12px}.logout-form{margin:0}.menu-toggle{display:none}.content-area{padding:26px 30px 90px;max-width:1700px;margin:auto}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:2px 0 22px}.page-title h1{margin:0;font-size:25px;letter-spacing:-.02em}.page-title p{margin:3px 0 0;color:var(--muted)}.page-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.button{border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);padding:9px 15px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700;cursor:pointer;min-height:40px}.button:hover{border-color:#c7c8e9;color:var(--brand)}.button.primary{color:#fff;border-color:transparent;background:linear-gradient(135deg,var(--brand),var(--brand-2));box-shadow:0 11px 24px #5b5ce22d}.button.dark{background:var(--navy);color:#fff;border-color:var(--navy)}.button.danger{color:#c93b4b;background:#fff7f7;border-color:#f5d5da}.button.ghost{background:transparent}.button.small{padding:6px 10px;min-height:32px;font-size:11px}.button.large{min-height:49px}.button.full{width:100%}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:18px}.stat-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:18px;display:flex;align-items:center;gap:14px;box-shadow:0 8px 24px rgba(28,35,70,.035)}.stat-icon{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;font-size:19px;font-weight:900;background:#eeefff;color:var(--brand)}.stat-card:nth-child(2) .stat-icon{background:#e6f8f4;color:#079578}.stat-card:nth-child(3) .stat-icon{background:#e9f5fe;color:#187fbe}.stat-card:nth-child(4) .stat-icon{background:#fff0f2;color:#ce3446}.stat-card span:last-child{display:flex;flex-direction:column}.stat-card strong{font-size:25px;line-height:1.2}.stat-card small{color:var(--muted)}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr);gap:18px}.stack{display:flex;flex-direction:column;gap:18px}.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 8px 26px rgba(28,35,70,.035)}.panel-head{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid var(--line)}.panel-head h2{font-size:16px;margin:0}.panel-head p{margin:2px 0 0;color:var(--muted);font-size:12px}.panel-link{color:var(--brand);font-size:12px;font-weight:700;text-decoration:none}.panel-body{padding:18px 20px}.event-list,.task-list{display:flex;flex-direction:column}.event-row{display:grid;grid-template-columns:57px minmax(0,1fr) auto;gap:13px;align-items:center;padding:13px 0;border-bottom:1px solid var(--line);text-decoration:none}.event-row:last-child,.task-row:last-child{border-bottom:0}.date-tile{height:57px;border-radius:14px;background:var(--soft);display:grid;place-items:center;align-content:center;border:1px solid var(--line)}.date-tile strong{font-size:19px;line-height:1}.date-tile small{font-size:9px;color:var(--muted)}.event-row:hover .date-tile{background:#eeefff;border-color:#d5d5fa;color:var(--brand)}.row-copy{min-width:0}.row-copy h3{margin:0;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row-meta{display:flex;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:10px;margin-top:5px}.row-meta span{display:flex;align-items:center;gap:4px}.status-badge,.type-badge,.priority-badge{display:inline-flex;align-items:center;white-space:nowrap;padding:5px 9px;border-radius:999px;font-size:10px;font-weight:800;background:#eef0f5;color:#5f687f}.status-approved,.status-done,.status-active,.status-available{background:#e3f8f1;color:#087e67}.status-pending,.status-review{background:#fff3df;color:#9f6518}.status-draft,.status-todo{background:#eef0f5;color:#60697e}.status-rejected,.status-cancelled,.status-blocked,.status-suspended{background:#ffeaed;color:#b52f41}.status-in_progress{background:#e8f4fd;color:#1974ae}.priority-urgent{background:#ffeaed;color:#bd3042}.priority-high{background:#fff2df;color:#a4600b}.priority-medium{background:#ececff;color:#5553b8}.priority-low{background:#e8f8f4;color:#16816d}.task-row{display:grid;grid-template-columns:minmax(0,1fr) 90px;align-items:center;gap:15px;padding:13px 0;border-bottom:1px solid var(--line)}.task-row h3{font-size:12px;margin:0}.progress{height:6px;background:#edf0f5;border-radius:999px;overflow:hidden;margin-top:9px}.progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--brand),var(--mint))}.mini-progress{display:flex;align-items:center;gap:7px;font-size:10px;color:var(--muted)}.mini-progress .progress{flex:1;margin:0}.welcome-card{background:linear-gradient(135deg,var(--navy-2),#2a285d);color:#fff;border-radius:var(--radius);padding:24px;position:relative;overflow:hidden;min-height:170px}.welcome-card:after{content:"";position:absolute;width:190px;height:190px;border-radius:50%;background:linear-gradient(135deg,#755eea,#21b99a);filter:blur(2px);opacity:.25;left:-45px;top:-70px}.welcome-card>*{position:relative;z-index:1}.welcome-card .eyebrow{color:#9fe6d8;font-size:10px;font-weight:800}.welcome-card h2{font-size:22px;line-height:1.4;margin:8px 0}.welcome-card p{color:#c5cae0;max-width:480px;margin:0 0 16px}.week-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.week-day{text-align:center;border-radius:12px;background:var(--soft);border:1px solid var(--line);padding:9px 4px}.week-day.today{background:var(--navy);color:#fff;border-color:var(--navy)}.week-day small{display:block;font-size:9px;color:var(--muted)}.week-day.today small{color:#b7bdd7}.week-day strong{font-size:13px}.week-day i{display:block;width:5px;height:5px;border-radius:50%;background:var(--mint);margin:5px auto 0}.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;background:#fff;border:1px solid var(--line);padding:12px;border-radius:15px;margin-bottom:16px}.toolbar .search{position:relative;flex:1;min-width:220px}.search input{padding-right:38px}.search:before{content:"⌕";position:absolute;right:13px;top:9px;color:var(--muted);font-size:19px}.field,.toolbar label{display:flex;flex-direction:column;gap:6px}.field>span,.toolbar label>span{font-size:11px;font-weight:800;color:#515b72}.input,select,textarea,input[type=text],input[type=email],input[type=password],input[type=url],input[type=number],input[type=datetime-local],input[type=date]{width:100%;border:1px solid #dfe3ed;background:#fbfcfe;border-radius:11px;padding:10px 12px;outline:none;color:var(--ink);transition:.2s}textarea{resize:vertical;min-height:105px}.input:focus,select:focus,textarea:focus,input:focus{border-color:#9e9ce8;box-shadow:0 0 0 4px #5b5ce212;background:#fff}.toolbar select{width:auto;min-width:145px}.data-panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.table-scroll{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;min-width:760px}.data-table th{text-align:right;background:#fafbfe;color:#687188;font-size:10px;text-transform:uppercase;letter-spacing:.04em;padding:12px 15px;border-bottom:1px solid var(--line)}.data-table td{padding:14px 15px;border-bottom:1px solid var(--line);vertical-align:middle}.data-table tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:#fbfbfe}.table-title{display:flex;align-items:center;gap:10px;min-width:200px}.color-dot{width:9px;height:9px;border-radius:50%;flex:0 0 auto}.table-title strong{display:block;font-size:12px}.table-title small{display:block;color:var(--muted);font-size:10px}.actions{display:flex;gap:6px;justify-content:flex-end}.icon-link{width:30px;height:30px;border-radius:9px;border:1px solid var(--line);display:grid;place-items:center;text-decoration:none;background:#fff;cursor:pointer}.icon-link:hover{border-color:#c4c5e7;color:var(--brand)}.cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.item-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:18px;position:relative}.item-card:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.item-card h3{margin:10px 0 4px;font-size:15px}.item-card p{color:var(--muted);margin:0;font-size:12px}.item-card-foot{border-top:1px solid var(--line);margin-top:16px;padding-top:12px;display:flex;justify-content:space-between;align-items:center}.form-shell{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;align-items:start}.form-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px}.form-card h2{font-size:16px;margin:0 0 18px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.field.wide{grid-column:1/-1}.field small{color:var(--muted);font-size:10px}.form-section{padding-bottom:22px;margin-bottom:22px;border-bottom:1px solid var(--line)}.form-section:last-child{border-bottom:0;margin-bottom:0}.checkbox-row{display:flex;gap:9px;align-items:center}.checkbox-row input{width:17px;height:17px}.form-aside{position:sticky;top:96px;display:flex;flex-direction:column;gap:14px}.hint-card{background:#f0f0ff;border:1px solid #ddddfb;border-radius:15px;padding:16px}.hint-card strong{display:block;color:#4c49af}.hint-card p{font-size:11px;color:#6d70a2;margin:7px 0 0}.error-list{background:#fff0f1;border:1px solid #f6d4d8;color:#a92e3c;border-radius:13px;padding:12px 16px;margin-bottom:18px}.error-list ul{margin:4px 0}.toast{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 15px;margin-bottom:15px;box-shadow:var(--shadow);animation:slideIn .25s ease}.toast>span{width:25px;height:25px;display:grid;place-items:center;border-radius:50%;font-weight:900}.toast.success>span{background:#e3f8f1;color:#087e67}.toast.error>span{background:#ffeaed;color:#b52f41}.toast p{margin:0;flex:1}.toast button{border:0;background:transparent;font-size:18px;color:var(--muted);cursor:pointer}.empty-state{text-align:center;padding:45px 24px;color:var(--muted)}.empty-state.large{background:#fff;border:1px solid var(--line);border-radius:var(--radius);max-width:680px;margin:60px auto;padding:65px 30px}.empty-state h1,.empty-state h2{color:var(--ink);margin:12px 0 6px}.empty-icon{width:70px;height:70px;border-radius:23px;display:grid;place-items:center;margin:auto;background:#eeefff;color:var(--brand);font-size:22px;font-weight:900}.detail-hero{border-radius:22px;background:linear-gradient(135deg,var(--navy),#2d2b65);color:#fff;padding:26px;position:relative;overflow:hidden;margin-bottom:18px}.detail-hero:after{content:"";position:absolute;width:230px;height:230px;border-radius:50%;background:var(--brand);opacity:.18;left:-60px;top:-100px}.detail-hero>*{position:relative;z-index:1}.detail-hero h1{font-size:27px;margin:10px 0}.detail-meta{display:flex;gap:18px;flex-wrap:wrap;color:#c6cbe0;font-size:12px}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px}.timeline{display:flex;flex-direction:column}.timeline-item{display:grid;grid-template-columns:30px 1fr;gap:10px;padding:9px 0}.timeline-dot{width:28px;height:28px;border-radius:9px;background:#eeefff;color:var(--brand);display:grid;place-items:center}.timeline-copy h4{margin:0;font-size:12px}.timeline-copy p{margin:2px 0;color:var(--muted);font-size:10px}.comment{display:flex;gap:10px;padding:12px 0;border-bottom:1px solid var(--line)}.comment:last-child{border:0}.comment-copy{flex:1}.comment-copy strong{font-size:11px}.comment-copy small{color:var(--muted);margin-right:8px}.comment-copy p{margin:4px 0;font-size:12px}.kanban{display:grid;grid-template-columns:repeat(5,minmax(230px,1fr));gap:13px;overflow-x:auto;padding-bottom:10px}.kanban-col{background:#eef1f7;border-radius:16px;padding:10px;min-height:350px}.kanban-head{display:flex;justify-content:space-between;align-items:center;padding:6px 6px 12px;font-weight:800;font-size:11px}.kanban-head b{min-width:23px;height:23px;border-radius:8px;background:#fff;display:grid;place-items:center}.task-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:13px;margin-bottom:9px;box-shadow:0 5px 16px #1c234609}.task-card h3{font-size:12px;margin:8px 0 4px}.task-card p{font-size:10px;color:var(--muted);margin:0}.task-card-meta{display:flex;justify-content:space-between;margin-top:11px;padding-top:9px;border-top:1px solid var(--line);font-size:9px;color:var(--muted)}.calendar-shell{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.calendar-toolbar{display:flex;justify-content:space-between;align-items:center;padding:17px;border-bottom:1px solid var(--line)}.calendar-toolbar h2{margin:0;font-size:17px}.calendar-controls{display:flex;gap:6px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-weekday{background:#fafbfe;color:var(--muted);font-size:10px;font-weight:800;padding:10px;border-bottom:1px solid var(--line);text-align:center}.calendar-day{min-height:125px;border-left:1px solid var(--line);border-bottom:1px solid var(--line);padding:8px;position:relative}.calendar-day:nth-child(7n){border-left:0}.calendar-day.muted{background:#fbfcfe;color:#aab0c0}.calendar-day.today{background:#f7f7ff}.calendar-day-number{width:27px;height:27px;border-radius:9px;display:grid;place-items:center;font-size:11px;font-weight:800}.calendar-day.today .calendar-day-number{background:var(--brand);color:#fff}.calendar-event{display:block;border-right:3px solid var(--brand);background:#f0f0ff;color:#44449d;padding:4px 6px;border-radius:6px;margin-top:5px;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-decoration:none}.calendar-event.pending{background:#fff4e4;color:#9a651c}.notification-list{display:flex;flex-direction:column}.notification-item{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:start;padding:15px 0;border-bottom:1px solid var(--line)}.notification-item.unread{background:linear-gradient(90deg,transparent,#f7f7ff)}.notification-icon{width:41px;height:41px;border-radius:13px;background:#eeefff;color:var(--brand);display:grid;place-items:center;font-weight:900}.notification-copy h3{font-size:12px;margin:0}.notification-copy p{font-size:11px;color:var(--muted);margin:3px 0}.notification-copy small{font-size:9px;color:#a2a8b8}.permission-group{border:1px solid var(--line);border-radius:14px;margin-bottom:12px;overflow:hidden}.permission-head{display:flex;justify-content:space-between;align-items:center;background:#fafbfe;padding:11px 14px;font-weight:800}.permission-grid{display:grid;grid-template-columns:1fr 1fr;padding:10px 14px}.permission-item{display:flex;align-items:center;gap:8px;padding:7px}.permission-item input{width:16px;height:16px}.report-bars{display:flex;align-items:flex-end;gap:9px;height:170px;padding:18px 0 0}.bar-item{flex:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:6px}.bar{width:min(32px,80%);background:linear-gradient(180deg,var(--brand),#8e75ed);border-radius:8px 8px 3px 3px;min-height:3px}.bar-item small{font-size:8px;color:var(--muted)}.donut-wrap{display:flex;align-items:center;gap:25px}.donut{width:130px;height:130px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--brand) 0 32%,var(--mint) 32% 58%,var(--sky) 58% 78%,var(--amber) 78% 90%,var(--red) 90%)}.donut:after{content:"";width:78px;height:78px;border-radius:50%;background:#fff}.legend{display:flex;flex-direction:column;gap:8px}.legend span{display:flex;align-items:center;gap:7px;font-size:10px}.legend i{width:8px;height:8px;border-radius:3px}.mobile-nav{display:none}.sidebar-backdrop{display:none}.connection-banner{position:fixed;bottom:15px;left:15px;background:var(--navy);color:#fff;padding:10px 15px;border-radius:11px;z-index:100;font-size:11px}.auth-body{background:#eef0f7}.auth-shell{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr}.auth-story{background:linear-gradient(145deg,#151a37,#242454);color:#fff;padding:46px 6vw;position:relative;overflow:hidden;display:flex;flex-direction:column}.auth-brand{padding:0;position:relative;z-index:2}.auth-copy{margin:auto 0;max-width:650px;position:relative;z-index:2}.auth-copy .eyebrow{color:#8fe0d0;font-size:11px;font-weight:800}.auth-copy h1{font-size:clamp(38px,4.5vw,67px);line-height:1.22;letter-spacing:-.035em;margin:16px 0}.auth-copy h1 em{font-style:normal;color:#9c8af6}.auth-copy p{font-size:16px;color:#c1c7dc;line-height:2;max-width:570px}.auth-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;position:relative;z-index:2}.auth-stats div{border-top:1px solid #ffffff1f;padding-top:13px;display:flex;flex-direction:column}.auth-stats strong{font-size:18px}.auth-stats span{font-size:10px;color:#adb4d0}.orb{position:absolute;border-radius:50%;filter:blur(2px)}.orb-one{width:360px;height:360px;background:#735ee8;opacity:.18;left:-100px;top:-110px}.orb-two{width:230px;height:230px;background:#21b99a;opacity:.14;right:35%;bottom:-120px}.auth-panel{display:grid;place-items:center;padding:35px;background:radial-gradient(circle at 100% 0,#e3e0ff,transparent 32%),#f5f6fb}.login-card{width:min(430px,100%);background:#fff;border:1px solid #fff;border-radius:27px;padding:38px;box-shadow:0 30px 80px #252c5017}.login-kicker{color:var(--brand);font-size:11px;font-weight:800}.login-card h2{font-size:30px;margin:7px 0 3px}.login-card>p{color:var(--muted);margin:0 0 26px}.login-card .field{margin-bottom:16px}.password-wrap{position:relative}.password-wrap input{padding-left:45px}.password-wrap button{position:absolute;left:5px;top:5px;width:35px;height:35px;border:0;background:transparent;color:var(--muted);cursor:pointer}.form-alert{display:flex;gap:9px;align-items:center;background:#fff0f2;border:1px solid #f4d3d8;color:#a62d3a;padding:11px 13px;border-radius:12px;margin-bottom:16px;font-size:11px}.form-alert span{width:23px;height:23px;border-radius:8px;background:#ffdce1;display:grid;place-items:center;font-weight:900}.login-foot{text-align:center;color:var(--muted);font-size:10px;margin-top:18px}.login-foot span{margin-left:4px}@keyframes slideIn{from{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:none}}
@media(max-width:1180px){.stats-grid{grid-template-columns:1fr 1fr}.cards-grid{grid-template-columns:1fr 1fr}.detail-grid{grid-template-columns:1fr}.auth-shell{grid-template-columns:1fr}.auth-story{min-height:390px}.auth-panel{padding:50px 25px}.auth-stats{max-width:550px}.form-shell{grid-template-columns:1fr}.form-aside{position:static}}
@media(max-width:860px){:root{--sidebar:278px}.sidebar{transform:translateX(105%);transition:.25s;box-shadow:-30px 0 60px #12163242}.sidebar.open{transform:none}.sidebar-backdrop{position:fixed;inset:0;background:#10152d73;z-index:45}.sidebar.open~.main-area+.mobile-nav+.sidebar-backdrop,.sidebar-backdrop.show{display:block}.main-area{margin-right:0}.menu-toggle{display:grid}.content-area{padding:20px 18px 100px}.topbar{padding:0 18px}.mobile-nav{position:fixed;bottom:0;right:0;left:0;height:70px;background:#ffffffed;backdrop-filter:blur(18px);border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-around;z-index:40;padding-bottom:env(safe-area-inset-bottom)}.mobile-nav a{width:19%;display:flex;flex-direction:column;align-items:center;text-decoration:none;color:var(--muted);font-size:17px}.mobile-nav a small{font-size:9px}.mobile-nav a.active{color:var(--brand)}.mobile-nav .mobile-create span{width:43px;height:43px;border-radius:15px;background:linear-gradient(135deg,var(--brand),var(--brand-2));color:#fff;display:grid;place-items:center;margin-top:-24px;box-shadow:0 10px 23px #5b5ce245}.mobile-nav .mobile-create small{margin-top:2px}.dashboard-grid{grid-template-columns:1fr}.calendar-day{min-height:95px}.calendar-event{font-size:0;height:7px;width:7px;padding:0;border:0;border-radius:50%;display:inline-block;margin:4px 2px 0}.page-head{align-items:flex-start}.auth-story{padding:35px 25px}.auth-copy h1{font-size:38px}.auth-copy{margin:55px 0}.quick-create b{display:none}.quick-create{width:39px;padding:0;justify-content:center}.today-label{display:none}}
@media(max-width:580px){.stats-grid{grid-template-columns:1fr 1fr;gap:10px}.stat-card{padding:13px;gap:10px}.stat-icon{width:39px;height:39px;border-radius:12px}.stat-card strong{font-size:20px}.stat-card small{font-size:9px}.cards-grid{grid-template-columns:1fr}.page-head{flex-direction:column}.page-actions{width:100%}.page-actions .button{flex:1}.form-grid,.permission-grid{grid-template-columns:1fr}.field.wide{grid-column:auto}.form-card{padding:17px}.content-area{padding-right:12px;padding-left:12px}.topbar{height:66px;padding:0 12px}.topbar-start>div{display:none}.topbar-actions{gap:7px}.icon-button,.notification-button,.quick-create{width:36px;height:36px}.calendar-toolbar{align-items:flex-start;gap:10px}.calendar-day{min-height:72px;padding:4px}.calendar-day-number{width:23px;height:23px}.calendar-weekday{font-size:8px;padding:8px 2px}.detail-hero{padding:20px}.detail-hero h1{font-size:22px}.auth-story{min-height:340px}.auth-copy{margin:36px 0}.auth-copy h1{font-size:32px}.auth-copy p{font-size:13px}.auth-stats{gap:7px}.auth-panel{padding:22px 12px}.login-card{padding:26px 20px}.week-strip{gap:3px}.week-day{padding:7px 2px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* National Institute identity — v2 */
.ui-icon{width:1.15em;height:1.15em;display:block;flex:0 0 auto}.button .ui-icon,.panel-link .ui-icon{width:17px;height:17px}.icon-button .ui-icon,.notification-button .ui-icon,.icon-link .ui-icon{width:18px;height:18px}.sidebar{background:linear-gradient(180deg,#0F1E3F 0%,#071831 100%);padding:20px 16px}.institute-brand{display:block;padding:5px 5px 22px;border-bottom:1px solid #ffffff12;margin-bottom:13px}.institute-brand img{display:block;width:100%;height:auto;max-height:94px;object-fit:contain}.nav-caption{color:#8FA6C2;letter-spacing:0;padding:8px 12px 5px}.admin-caption{margin-top:14px;padding-top:15px;border-top:1px solid #ffffff12}.nav-link{color:#C4D0DE;padding:9px 11px;border-radius:10px;font-size:12px}.nav-link:hover{background:#ffffff0c;color:#fff}.nav-link.active{background:#0681892c;box-shadow:inset -3px 0 #D6A449;color:#fff}.nav-icon{background:transparent;color:#9DB0C8;width:27px;height:27px}.nav-link.active .nav-icon{background:#068189;color:#fff;box-shadow:none}.nav-count{margin-right:auto;background:#D6A449;color:#0F1E3F;border-radius:99px;min-width:21px;height:21px;display:grid;place-items:center;font-size:9px}.install-button{display:flex;align-items:center;justify-content:center;gap:8px}.install-button .ui-icon{width:16px}.user-mini{gap:9px}.user-mini.light{color:var(--ink);padding:8px 0}.user-mini.light small{color:var(--muted)}.rank-emblem{width:52px;height:52px;border-radius:15px;display:grid;place-items:center;color:var(--rank-color);background:color-mix(in srgb,var(--rank-color) 12%,white);border:1px solid color-mix(in srgb,var(--rank-color) 24%,white)}.rank-emblem .ui-icon{width:25px;height:25px}.rank-emblem.compact{width:38px;height:38px;border-radius:11px;background:color-mix(in srgb,var(--rank-color) 20%,#0F1E3F);border-color:color-mix(in srgb,var(--rank-color) 45%,#0F1E3F);color:#fff}.rank-emblem.compact .ui-icon{width:19px;height:19px}.topbar{height:72px;padding:0 28px}.quick-create{background:#068189;border-radius:10px}.quick-create .ui-icon{width:17px}.content-area{padding-top:24px}.page-kicker{display:block;color:var(--brand);font-size:10px;font-weight:700;margin-bottom:3px}.page-title h1{font-size:24px}.button{border-radius:10px}.button.primary{background:#068189;box-shadow:0 9px 20px #06818925}.button.primary:hover{background:#046167;color:#fff}.button.dark{background:#172A52;color:#fff;border-color:#172A52}.button.danger{color:#A33F4D;border-color:#EBC9CF;background:#FFF8F9}.button.danger:hover{background:#A33F4D;color:#fff}.button:disabled{opacity:.42;cursor:not-allowed}.panel,.data-panel,.form-card{border-color:#E1E6EA;box-shadow:0 6px 22px #0F1E3F08}.panel-head{padding:16px 18px}.panel-body{padding:17px 18px}.stat-card{border-radius:14px;padding:16px}.stat-icon{background:#E7F4F3;color:#068189}.stat-icon.teal{background:#E2F1F0;color:#068189}.stat-icon.gold{background:#FBF3E3;color:#A87924}.stat-icon.navy{background:#E9EDF4;color:#172A52}.stat-icon.green{background:#E8F3EC;color:#2A8563}.stat-icon.red{background:#F8E9EC;color:#B64B5A}.stat-icon .ui-icon{width:22px;height:22px}.clean-stats{margin-bottom:18px}.simple-dashboard{grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr)}.event-row .ui-icon,.row-meta .ui-icon,.appointment-meta .ui-icon,.detail-meta .ui-icon{width:14px;height:14px}.date-tile{background:#F1F6F7;border-color:#DDE9E9}.event-row:hover .date-tile{background:#E3F1F0;border-color:#BFDAD8;color:#046167}.week-day.today{background:#172A52;border-color:#172A52}.week-day>span{display:block;margin-top:5px;font-size:9px;color:var(--brand);font-weight:700}.week-day.today>span{color:#A9EEE5}.progress span{background:linear-gradient(90deg,#068189,#2A8563)}.progress-value{font-size:11px;color:var(--muted)}.task-title-line{display:flex;gap:7px;align-items:center}.search:before{display:none}.search input{padding-right:12px}.field>span,.toolbar label>span{color:#46546A}.input,select,textarea,input[type=text],input[type=email],input[type=password],input[type=url],input[type=number],input[type=datetime-local],input[type=date],input[type=search]{border-color:#DCE3E8;background:#FBFCFC;border-radius:9px}.input:focus,select:focus,textarea:focus,input:focus{border-color:#068189;box-shadow:0 0 0 4px #06818912}.section-title{display:flex;gap:11px;align-items:flex-start;margin-bottom:17px}.section-title>span{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:#E6F2F1;color:#068189}.section-title>span .ui-icon{width:19px;height:19px}.section-title h2{margin:0!important;font-size:15px}.section-title p{margin:2px 0 0;color:var(--muted);font-size:10px}.identity-hint{display:flex;gap:10px;background:#EEF5F5;border-color:#D5E7E5}.identity-hint>.ui-icon{color:#068189;width:20px;height:20px;margin-top:2px}.identity-hint strong{color:#172A52}.identity-hint p{color:#64738A}.password-reset-box{background:#FBF8F0;border:1px solid #EADAB8!important;border-radius:12px;padding:15px!important;margin:0!important}.password-reset-box .checkbox-row{align-items:flex-start}.password-reset-box .checkbox-row>span{display:flex;flex-direction:column}.credentials-card{background:linear-gradient(135deg,#0F1E3F,#172A52);color:#fff;border-radius:16px;padding:20px;margin-bottom:18px;box-shadow:0 14px 34px #0F1E3F22}.credentials-head{display:flex;align-items:center;gap:12px;margin-bottom:16px}.credentials-icon{width:43px;height:43px;border-radius:12px;background:#068189;display:grid;place-items:center}.credentials-icon .ui-icon{width:21px}.credentials-head strong{font-size:15px}.credentials-head p{margin:2px 0 0;color:#C6D3E1;font-size:11px}.credentials-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.credentials-grid label{background:#ffffff0c;border:1px solid #ffffff18;border-radius:11px;padding:11px}.credentials-grid label>span{display:block;font-size:9px;color:#9FB3C8;margin-bottom:6px}.credentials-grid label>div{display:flex;align-items:center;gap:8px}.credentials-grid code{flex:1;color:#fff;font-family:inherit;font-weight:600;word-break:break-word}.copy-button{display:flex;align-items:center;gap:5px;border:1px solid #ffffff24;background:#ffffff10;color:#fff;border-radius:8px;padding:7px 9px;font:inherit;font-size:10px;cursor:pointer}.copy-button:hover{background:#068189}.copy-button .ui-icon{width:14px;height:14px}.rank-label{display:inline-flex;align-items:center;gap:7px;color:var(--rank-color);font-size:11px;font-weight:700}.rank-label i{width:29px;height:29px;border-radius:9px;background:color-mix(in srgb,var(--rank-color) 12%,white);display:grid;place-items:center}.rank-label i .ui-icon{width:16px;height:16px}.rank-label.full{width:100%;padding:9px;border:1px solid color-mix(in srgb,var(--rank-color) 20%,white);border-radius:10px;margin-bottom:7px;background:color-mix(in srgb,var(--rank-color) 7%,white)}.avatar.initials{background:#068189}.rank-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.rank-card{background:#fff;border:1px solid #E0E6EA;border-top:3px solid var(--rank-color);border-radius:15px;padding:18px;box-shadow:0 7px 24px #0F1E3F08}.rank-card-head{display:flex;align-items:flex-start;justify-content:space-between}.rank-card h3{font-size:16px;margin:14px 0 4px}.rank-card>p{color:var(--muted);margin:0;min-height:40px}.rank-metrics{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}.rank-metrics span{background:#F7F9FA;border-radius:10px;padding:9px;display:flex;align-items:baseline;gap:5px}.rank-metrics strong{font-size:16px;color:var(--rank-color)}.rank-metrics small{color:var(--muted);font-size:9px}.rank-actions{display:flex;gap:8px;margin-top:13px}.rank-actions form{margin:0}.protected-note{margin-top:13px;display:flex;align-items:center;gap:6px;color:var(--muted);font-size:10px}.protected-note .ui-icon{width:14px}.rank-identity-editor{display:grid;grid-template-columns:1fr 150px;gap:14px;align-items:end}.rank-preview{display:flex;align-items:center;gap:11px;border:1px solid #E1E6EA;background:#FAFBFC;border-radius:13px;padding:12px}.rank-preview div{display:flex;flex-direction:column}.rank-preview small{color:var(--muted);font-size:9px}.color-field input{height:45px;padding:5px}.icon-picker{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:14px}.icon-picker label{cursor:pointer}.icon-picker input{position:absolute;opacity:0;pointer-events:none}.icon-picker label>span{height:68px;border:1px solid #DFE5E9;border-radius:11px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#627087}.icon-picker .ui-icon{width:21px;height:21px}.icon-picker small{font-size:8px}.icon-picker input:checked+span{border-color:#068189;background:#E9F5F4;color:#046167;box-shadow:0 0 0 2px #06818918}.audience-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.audience-tabs label{cursor:pointer}.audience-tabs input{position:absolute;opacity:0;pointer-events:none}.audience-tabs label>span{min-height:102px;border:1px solid #DEE5E9;border-radius:12px;padding:12px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;color:#637086}.audience-tabs label>span>.ui-icon{width:23px;height:23px;margin-bottom:2px}.audience-tabs strong{font-size:11px;color:#27364B}.audience-tabs small{font-size:9px}.audience-tabs input:checked+span{border-color:#068189;background:#EBF5F4;color:#068189;box-shadow:0 0 0 2px #06818912}.audience-panel{margin-top:14px;border:1px solid #E2E7EA;background:#FAFBFC;border-radius:13px;padding:13px}.selection-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.selection-grid>label{position:relative;display:flex;align-items:center;gap:8px;border:1px solid #E1E6EA;background:#fff;border-radius:10px;padding:9px;cursor:pointer;min-width:0}.selection-grid input{position:absolute;opacity:0}.selection-grid>label>i{margin-right:auto;color:#fff;width:21px;height:21px;border-radius:50%;display:grid;place-items:center;background:#068189;opacity:0}.selection-grid>label>i .ui-icon{width:13px}.selection-grid>label:has(input:checked){border-color:#068189;background:#EFF7F6}.selection-grid>label:has(input:checked)>i{opacity:1}.user-selection>label>span:nth-of-type(2){display:flex;flex-direction:column;min-width:0}.user-selection strong{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-selection small{font-size:8px;color:var(--muted)}.target-search{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #DEE5E9;border-radius:9px;padding:0 10px;margin-bottom:10px}.target-search .ui-icon{width:16px;color:var(--muted)}.target-search input{border:0;box-shadow:none!important;background:transparent}.reminder-field{max-width:340px}.appointment-list{display:flex;flex-direction:column;gap:10px}.appointment-card{display:grid;grid-template-columns:74px minmax(0,1fr) auto;gap:15px;align-items:center;background:#fff;border:1px solid #E1E6EA;border-right:4px solid var(--event-color);border-radius:14px;padding:13px 15px;box-shadow:0 5px 18px #0F1E3F06}.appointment-card:hover{border-color:#CFDADD;box-shadow:0 10px 26px #0F1E3F0D;transform:translateY(-1px)}.appointment-date{height:66px;border-radius:12px;background:#F3F6F7;display:grid;place-items:center;align-content:center;line-height:1.1}.appointment-date strong{font-size:22px;color:#172A52}.appointment-date span{font-size:10px;color:#068189;font-weight:700}.appointment-date small{font-size:8px;color:var(--muted);margin-top:3px}.appointment-title-line{display:flex;align-items:center;gap:8px}.appointment-title-line h2{font-size:14px;margin:0}.appointment-title-line h2 a{text-decoration:none}.appointment-title-line h2 a:hover{color:#068189}.appointment-meta{display:flex;flex-wrap:wrap;gap:12px;margin-top:7px;color:var(--muted);font-size:9px}.appointment-meta span{display:flex;align-items:center;gap:4px}.appointment-side{display:flex;align-items:center;gap:12px}.advanced-toolbar{align-items:end}.advanced-toolbar label{min-width:135px}.detail-hero{background:linear-gradient(135deg,#0F1E3F,#172A52);border-top:4px solid var(--event-color);border-radius:17px;padding:23px}.detail-hero-head{display:flex;justify-content:space-between;align-items:start;gap:15px;flex-wrap:wrap}.detail-meta span{display:flex;align-items:center;gap:5px}.event-description{white-space:pre-line;line-height:2;margin-top:0}.comment-form{display:flex;gap:9px;margin-bottom:12px}.muted-center{color:var(--muted);text-align:center}.decision-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.audience-summary{display:flex;flex-direction:column}.audience-all{display:flex;align-items:center;gap:11px}.audience-all p{color:var(--muted);font-size:10px;margin:2px 0}.back-link{display:inline-flex;align-items:center;gap:5px}.report-filter{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr)) auto;gap:10px;background:#fff;border:1px solid #E1E6EA;border-radius:14px;padding:13px;margin-bottom:16px;align-items:end}.report-filter label{display:flex;flex-direction:column;gap:5px}.report-filter label>span{font-size:9px;color:var(--muted);font-weight:700}.report-layout{display:grid;grid-template-columns:1.35fr .8fr .85fr;gap:14px;margin-bottom:14px}.modern-bars{height:220px}.modern-bars .bar{width:min(42px,75%);background:#D9E9E8;position:relative;overflow:hidden}.modern-bars .bar i{position:absolute;bottom:0;right:0;left:0;background:#068189}.chart-note{display:flex;gap:14px;justify-content:center;margin-top:10px;font-size:9px;color:var(--muted)}.chart-note span{display:flex;align-items:center;gap:5px}.chart-note i{width:9px;height:9px;border-radius:3px;background:#D9E9E8}.chart-note i.done{background:#068189}.status-breakdown{display:flex;flex-direction:column;gap:12px}.status-line>div:first-child{display:flex;align-items:center;gap:7px;margin-bottom:5px}.status-line strong{font-size:10px}.status-line b{margin-right:auto;font-size:10px}.status-line .progress{margin:0}.type-summary{display:grid;grid-template-columns:1fr 1fr;gap:9px}.type-summary>div{display:flex;align-items:center;gap:8px;border:1px solid #E5E9EC;border-radius:10px;padding:9px}.type-icon{width:30px;height:30px;border-radius:8px;background:#E9F4F3;color:#068189;display:grid;place-items:center}.type-icon .ui-icon{width:16px}.type-summary>div>span:last-child{display:flex;flex-direction:column}.type-summary strong{font-size:9px}.type-summary small{font-size:8px;color:var(--muted)}.report-section{margin-bottom:14px}.rank-report-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:16px}.rank-report-grid article{display:flex;align-items:center;gap:9px;background:#FAFBFC;border:1px solid #E4E8EB;border-radius:11px;padding:10px}.rank-report-grid article>div{display:flex;flex-direction:column;min-width:0}.rank-report-grid article>div strong{font-size:10px}.rank-report-grid article>div small{font-size:8px;color:var(--muted)}.rank-report-grid article>b{margin-right:auto;color:var(--rank-color);font-size:16px;white-space:nowrap}.rank-report-grid article>b small{font-size:8px;color:var(--muted)}.report-tables{grid-template-columns:1.2fr .8fr}.compact-event-list{display:flex;flex-direction:column}.compact-event-list>a{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:9px;align-items:center;padding:9px 0;border-bottom:1px solid #E7EBEE;text-decoration:none}.compact-event-list>a:last-child{border:0}.compact-event-list>a>span:nth-child(2){display:flex;flex-direction:column;min-width:0}.compact-event-list>a>span:nth-child(2) strong{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.compact-event-list>a>span:nth-child(2) small{font-size:8px;color:var(--muted)}.date-tile.small{width:44px;height:44px;border-radius:9px}.date-tile.small strong{font-size:14px}.notifications-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:15px;align-items:start}.broadcast-card{position:sticky;top:90px}.broadcast-card .field{margin-bottom:11px}.cron-status{display:flex;align-items:center;gap:11px;border-radius:12px;padding:13px}.cron-status>span{width:37px;height:37px;border-radius:10px;display:grid;place-items:center}.cron-status.is-active{background:#EAF5EF;color:#256D4A}.cron-status.is-active>span{background:#D4ECDF}.cron-status.is-waiting{background:#FBF3E3;color:#956B21}.cron-status.is-waiting>span{background:#F4E4C2}.cron-status strong{font-size:11px}.cron-status p{font-size:9px;margin:2px 0}.cron-command{word-break:break-all;background:#fff;border:1px solid #DCE5E6;border-radius:8px;padding:7px;font-size:9px;color:#172A52!important}.auth-story{background:linear-gradient(145deg,#071831,#172A52);padding:42px 6vw}.auth-brand-logo{width:min(430px,90%);position:relative;z-index:2}.auth-brand-logo img{display:block;width:100%;height:auto}.auth-copy .eyebrow{color:#A9EEE5}.auth-copy h1{font-size:clamp(35px,4vw,58px);letter-spacing:-.02em}.auth-copy h1 em{color:#D6A449}.auth-copy p{color:#CED8E4}.auth-stats{gap:10px}.auth-stats>div{border:1px solid #ffffff12;background:#ffffff07;border-radius:12px;padding:12px;display:flex;flex-direction:row;align-items:center;gap:9px}.auth-stats>div>.ui-icon{width:22px;height:22px;color:#A9EEE5}.auth-stats>div>span{display:flex;flex-direction:column}.auth-stats strong{font-size:10px}.auth-stats small{font-size:8px;color:#9DB0C8}.auth-panel{background:radial-gradient(circle at 100% 0,#DCEFEB,transparent 34%),#F5F5F5}.login-card{border-radius:20px;box-shadow:0 24px 70px #0F1E3F18}.login-kicker{color:#068189}.input-with-icon{position:relative;display:flex;align-items:center}.input-with-icon>.ui-icon{position:absolute;right:12px;width:17px;color:#7C8999;z-index:1}.input-with-icon input{padding-right:39px}.password-wrap input{padding-left:45px}.password-wrap button{z-index:2}.form-alert{align-items:center}.form-alert>.ui-icon{width:19px;flex:0 0 auto}.form-alert>span{width:auto;height:auto;background:transparent;display:block}.login-foot{display:flex;justify-content:center;align-items:center;gap:5px}.login-foot .ui-icon{width:13px}.mobile-nav a>.ui-icon{width:19px;height:19px}.mobile-nav .mobile-create span .ui-icon{width:22px;height:22px}
@media(max-width:1180px){.rank-grid{grid-template-columns:repeat(2,1fr)}.report-layout{grid-template-columns:1fr 1fr}.report-trend{grid-column:1/-1}.report-filter{grid-template-columns:repeat(2,1fr)}.report-filter .button{align-self:end}.rank-report-grid{grid-template-columns:repeat(2,1fr)}.simple-dashboard{grid-template-columns:1fr}.notifications-layout{grid-template-columns:1fr}.broadcast-card{position:static}}
@media(max-width:860px){.institute-brand img{max-height:84px}.appointment-card{grid-template-columns:62px minmax(0,1fr)}.appointment-side{grid-column:2;justify-content:space-between}.selection-grid{grid-template-columns:repeat(2,1fr)}.report-tables{grid-template-columns:1fr}.report-filter{grid-template-columns:1fr 1fr}.credentials-grid{grid-template-columns:1fr}.auth-brand-logo{max-width:340px}.auth-stats{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:580px){.rank-grid,.rank-report-grid{grid-template-columns:1fr}.rank-identity-editor{grid-template-columns:1fr}.icon-picker{grid-template-columns:repeat(3,1fr)}.audience-tabs{grid-template-columns:1fr}.audience-tabs label>span{min-height:72px;align-items:flex-start;text-align:right;padding-right:45px;position:relative}.audience-tabs label>span>.ui-icon{position:absolute;right:14px;top:22px}.selection-grid{grid-template-columns:1fr}.appointment-card{grid-template-columns:52px minmax(0,1fr);gap:10px;padding:10px}.appointment-date{height:56px}.appointment-title-line{align-items:flex-start;flex-direction:column;gap:4px}.appointment-meta{gap:7px;flex-direction:column}.appointment-side{grid-column:1/-1}.advanced-toolbar label{width:100%}.report-filter{grid-template-columns:1fr}.report-layout{grid-template-columns:1fr}.report-trend{grid-column:auto}.type-summary{grid-template-columns:1fr 1fr}.rank-report-grid{padding:11px}.comment-form{flex-direction:column}.auth-story{min-height:410px}.auth-copy{margin:30px 0}.auth-copy h1{font-size:29px}.auth-stats{grid-template-columns:1fr}.auth-stats>div{padding:8px}.login-card{border-radius:16px}.credentials-card{padding:15px}.credentials-grid label>div{align-items:flex-start;flex-direction:column}.copy-button{width:100%;justify-content:center}}
@media print{.sidebar,.topbar,.mobile-nav,.page-actions,.report-filter,.connection-banner{display:none!important}.main-area{margin:0}.content-area{padding:0}.panel,.stat-card{box-shadow:none;break-inside:avoid}.report-layout{grid-template-columns:1fr 1fr}.report-trend{grid-column:1/-1}body{background:#fff}}

@media(max-width:860px){.mobile-nav .mobile-create span{background:#068189;box-shadow:0 10px 23px #06818945}}

/* Identity-safe fallbacks for shared components */
.button:hover,.icon-link:hover{border-color:#9CC7C5;color:#046167}.hint-card{background:#EEF5F5;border-color:#D5E7E5}.hint-card strong{color:#172A52}.hint-card p{color:#64738A}.empty-icon,.timeline-dot,.notification-icon{background:#E7F3F2;color:#068189}.calendar-event{background:#E7F3F2;color:#075F65}.calendar-event.pending{background:#FBF3E3;color:#8A611D}.priority-medium{background:#EFEAF7;color:#3C2A6F}
.report-print-brand{display:none}
.cron-status.is-late{background:#F8E9EC;color:#9A3544}.cron-status.is-late>span{background:#F1D5DB}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #D6A449;outline-offset:2px}.icon-link{width:34px;height:34px}.appointment-meta{font-size:10px}
@media print{.report-print-brand{display:flex;align-items:center;gap:16px;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #172A52}.report-print-logo{width:230px;background:#0F1E3F;border-radius:10px;padding:8px 10px}.report-print-logo img{display:block;width:100%;height:auto}.report-print-brand>div:last-child{display:flex;flex-direction:column}.report-print-brand strong{font-size:18px;color:#172A52}.report-print-brand span{font-size:11px;color:#44536A}.report-print-brand small{font-size:9px;color:#68758A;margin-top:3px}.report-print-brand~.page-head{display:none!important}}

/* NASQ v2.1 — Web Push and internal support */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.muted{color:var(--muted)}
.support-assignment-box{background:#EEF7F6;border:1px solid #CFE5E2!important;border-radius:12px;padding:15px!important;margin:0 0 15px!important}.support-assignment-box .checkbox-row{align-items:flex-start}.support-assignment-box .checkbox-row>span{display:flex;flex-direction:column}.support-badge,.support-role-chip{display:inline-flex;align-items:center;gap:6px;background:#E8F4F3;color:#056B71;border:1px solid #CBE3E1;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:700}.support-badge .ui-icon,.support-role-chip .ui-icon{width:15px;height:15px}.support-role-chip{padding:8px 12px}
.support-fab{position:fixed;left:24px;bottom:24px;z-index:44;display:flex;align-items:center;gap:9px;min-height:50px;padding:6px 7px 6px 15px;border-radius:999px;background:#172A52;color:#fff;text-decoration:none;box-shadow:0 14px 34px #0F1E3F38;border:1px solid #ffffff1f;transition:.2s}.support-fab>span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#068189}.support-fab .ui-icon{width:20px;height:20px}.support-fab strong{font-size:11px}.support-fab>b{position:absolute;right:-3px;top:-5px;min-width:21px;height:21px;padding:0 5px;border:2px solid #fff;border-radius:999px;background:#D6A449;color:#172A52;display:grid;place-items:center;font-size:9px}.support-fab:hover,.support-fab.active{background:#0F1E3F;transform:translateY(-2px);color:#fff}
.support-workspace{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:15px;align-items:stretch;min-height:650px}.support-workspace.support-handler{grid-template-columns:330px minmax(0,1fr)}.support-inbox,.support-chat-card,.support-info-card{background:#fff;border:1px solid #E1E6EA;border-radius:16px;box-shadow:0 7px 24px #0F1E3F08;overflow:hidden}.support-inbox{display:flex;flex-direction:column;max-height:720px}.support-inbox>header{display:flex;align-items:center;justify-content:space-between;padding:16px 17px;border-bottom:1px solid #E8ECEE}.support-inbox h2,.support-info-card h2{margin:0;font-size:14px}.support-inbox header p{margin:1px 0 0;color:var(--muted);font-size:9px}.support-inbox header>span{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#E8F4F3;color:#068189}.support-inbox header .ui-icon{width:18px}.support-thread-list{overflow:auto}.support-thread-item{display:grid;grid-template-columns:39px minmax(0,1fr) auto;gap:9px;align-items:center;padding:11px 13px;text-decoration:none;border-bottom:1px solid #EEF1F2;transition:.18s}.support-thread-item:hover{background:#F6FAFA}.support-thread-item.active{background:#EAF5F4;box-shadow:inset -3px 0 #068189}.support-thread-copy,.support-thread-meta{display:flex;flex-direction:column;min-width:0}.support-thread-copy strong{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.support-thread-copy small{font-size:8px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.support-thread-meta{align-items:flex-end;gap:3px}.support-thread-meta>b{min-width:18px;height:18px;border-radius:999px;background:#068189;color:#fff;display:grid;place-items:center;font-size:8px}.support-thread-meta small{font-size:7px;color:var(--muted)}.support-empty-mini{padding:34px 18px;text-align:center;color:var(--muted)}.support-empty-mini>.ui-icon{width:28px;color:#2A8563}.support-empty-mini strong{display:block;color:#172A52;margin-top:7px}.support-empty-mini p{font-size:9px;margin:3px 0}
.support-chat-card{display:flex;flex-direction:column;min-width:0;height:720px}.support-chat-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px 18px;border-bottom:1px solid #E8ECEE;min-height:78px}.support-chat-identity{display:flex;align-items:center;gap:10px;min-width:0}.support-chat-identity>div{min-width:0}.support-chat-identity h2{font-size:13px;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.support-chat-identity p{font-size:9px;color:var(--muted);margin:1px 0}.support-main-icon{width:43px;height:43px;display:grid;place-items:center;border-radius:12px;background:#E7F3F2;color:#068189;flex:0 0 auto}.support-main-icon .ui-icon{width:22px}.support-chat-state{display:flex;align-items:center;gap:7px}.support-chat-state form{margin:0}.support-messages{flex:1;overflow:auto;background:linear-gradient(#F7FAFA,#F3F7F7);padding:20px;display:flex;flex-direction:column;gap:10px;scroll-behavior:smooth}.support-message{max-width:min(76%,650px);align-self:flex-start;background:#fff;border:1px solid #E0E7E8;border-radius:15px 15px 4px 15px;padding:9px 12px;box-shadow:0 4px 12px #0F1E3F08}.support-message.mine{align-self:flex-end;background:#068189;color:#fff;border-color:#068189;border-radius:15px 15px 15px 4px}.support-message-label{display:flex;align-items:center;gap:6px;margin-bottom:3px}.support-message-label strong{font-size:8px}.support-message-label span{display:flex;align-items:center;gap:3px;font-size:7px;color:#068189;background:#E6F4F2;border-radius:999px;padding:2px 5px}.support-message.mine .support-message-label span{color:#fff;background:#ffffff20}.support-message-label .ui-icon{width:10px;height:10px}.support-message p{margin:0;line-height:1.8;font-size:11px;word-break:break-word}.support-message>small{display:block;text-align:left;margin-top:3px;font-size:7px;color:#8692A2}.support-message.mine>small{color:#C8EBE8}.support-conversation-empty{margin:auto;text-align:center;color:var(--muted)}.support-conversation-empty>.ui-icon{width:35px;color:#83AAA7}.support-conversation-empty strong{display:block;color:#172A52;margin-top:8px}.support-conversation-empty p{font-size:9px}.support-composer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;padding:13px;border-top:1px solid #E5E9EB;background:#fff}.support-composer label{min-width:0}.support-composer textarea{width:100%;min-height:54px;max-height:130px;resize:vertical;margin:0}.support-composer .button{align-self:stretch}.support-agent-empty{margin:auto;text-align:center;padding:30px;color:var(--muted)}.support-agent-empty>.ui-icon{width:44px;color:#91B1AF}.support-agent-empty h2{font-size:15px;color:#172A52;margin:10px 0 3px}.support-agent-empty p{font-size:10px}
.support-info-card{padding:18px;height:max-content}.support-info-card>.support-main-icon{margin-bottom:11px}.support-info-card>p{font-size:10px;color:var(--muted)}.support-agent-list{display:flex;flex-direction:column;gap:8px;margin-top:13px}.support-agent-list>div{display:flex;align-items:center;gap:8px;border:1px solid #E5E9EB;border-radius:11px;padding:8px}.support-agent-list .avatar{width:34px;height:34px;border-radius:10px}.support-agent-list>div>span:last-child{display:flex;flex-direction:column}.support-agent-list strong{font-size:9px}.support-agent-list small{font-size:8px;color:var(--muted)}.support-privacy-note{display:flex;gap:7px;background:#F6F8FA;border-radius:10px;padding:10px;margin-top:15px;color:#607086}.support-privacy-note .ui-icon{width:15px;flex:0 0 auto}.support-privacy-note p{font-size:8px;margin:0}.push-status-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:11px;background:#EEF7F6;border:1px solid #D1E7E4;border-radius:12px;padding:13px}.push-status-card>span{width:39px;height:39px;border-radius:10px;background:#D6ECE9;color:#068189;display:grid;place-items:center}.push-status-card h3{font-size:11px;margin:0}.push-status-card p{font-size:9px;color:#607086;margin:2px 0}.push-metrics{display:flex;gap:8px}.push-metrics span{display:flex;flex-direction:column;align-items:center;background:#fff;border-radius:9px;padding:6px 10px}.push-metrics strong{font-size:14px;color:#172A52}.push-metrics small{font-size:7px;color:var(--muted)}
.device-push-note{display:flex;align-items:flex-start;gap:8px;background:#EEF7F6;border:1px solid #D1E7E4;color:#526478;border-radius:12px;padding:10px 12px;margin:-8px 0 15px}.device-push-note .ui-icon{width:17px;color:#068189;flex:0 0 auto;margin-top:2px}.device-push-note p{margin:0;font-size:9px}.device-push-note strong{color:#172A52}.button.is-enabled{background:#EAF5EF;border-color:#BFDCCB;color:#256D4A}
@media(max-width:1080px){.support-workspace,.support-workspace.support-handler{grid-template-columns:280px minmax(0,1fr)}.support-workspace:not(.support-handler){grid-template-columns:1fr}.support-info-card{display:none}}
@media(max-width:760px){.support-workspace.support-handler{grid-template-columns:1fr;min-height:0}.support-inbox{max-height:250px}.support-chat-card{height:calc(100vh - 235px);min-height:530px}.support-message{max-width:90%}.support-fab{left:14px;bottom:82px;min-width:49px;padding:5px}.support-fab>strong{display:none}.support-fab>span{width:38px;height:38px}.support-composer .button span{display:none}.support-composer .button{width:52px;padding:0;justify-content:center}}
@media(max-width:580px){.push-status-card{grid-template-columns:auto 1fr}.push-metrics{grid-column:1/-1}.push-metrics span{flex:1}.device-push-note{margin-top:0}.support-chat-head{padding:11px}.support-messages{padding:13px}}
@media print{.support-fab{display:none!important}}


/* NASQ v3.4 — live support, archive tabs, realtime notification feedback */
.support-tabs{display:inline-flex;gap:6px;background:#fff;border:1px solid #E1E6EA;border-radius:14px;padding:5px;margin:-6px 0 14px;box-shadow:0 5px 18px #0F1E3F08}
.support-tabs a{display:flex;align-items:center;gap:7px;min-height:38px;padding:7px 12px;border-radius:10px;text-decoration:none;color:#607086;font-size:10px;font-weight:700}
.support-tabs a .ui-icon{width:16px;height:16px}
.support-tabs a b{min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#EFF3F4;color:#526478;display:grid;place-items:center;font-size:8px}
.support-tabs a.active{background:#E8F4F3;color:#056B71}
.support-tabs a.active b{background:#068189;color:#fff}
.support-live-state{display:flex;align-items:center;gap:7px;padding:6px 14px 9px;background:#fff;color:#607086;font-size:8px}
.support-live-state i{width:7px;height:7px;border-radius:50%;background:#2A8563;box-shadow:0 0 0 3px #2A85631A}
.support-live-state[data-state="offline"] i{background:#C9862A;box-shadow:0 0 0 3px #C9862A1A}
.support-live-state[data-state="closed"] i{background:#8692A2;box-shadow:none}
.support-archive-note{display:flex;align-items:center;justify-content:center;gap:7px;padding:14px;background:#F6F8FA;border-top:1px solid #E5E9EB;color:#607086;font-size:9px}
.support-archive-note .ui-icon{width:16px;height:16px}
.live-notification-toast{position:relative;z-index:20}
.live-notification-toast p strong{display:inline-block;color:#172A52;margin-bottom:2px}
.live-notification-toast p small{color:#607086}
.cron-command{user-select:all}
@media(max-width:760px){
  .support-tabs{display:flex;width:100%;margin-top:0}
  .support-tabs a{flex:1;justify-content:center}
}


/* NASQ v3.5 — clean application UI */
:root{
  --surface-glow:linear-gradient(145deg,rgba(255,255,255,.98),rgba(248,251,252,.96));
  --soft-shadow:0 12px 34px rgba(15,30,63,.07);
  --lift-shadow:0 20px 45px rgba(15,30,63,.12);
}
.page-title h1{font-size:27px;letter-spacing:-.035em}
.page-head{align-items:center;margin-bottom:18px}
.page-title>p,.page-kicker,.section-title p{display:none!important}
.panel-head p{display:none}
.hint-card:not(.cron-card){box-shadow:none}
.stat-card{
  position:relative;overflow:hidden;isolation:isolate;
  background:var(--surface-glow);
  border:1px solid rgba(214,224,230,.92);
  border-radius:20px;
  padding:19px 18px;
  box-shadow:var(--soft-shadow);
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
.stat-card::before{
  content:"";position:absolute;inset:0 auto 0 0;width:4px;
  background:linear-gradient(180deg,var(--brand),var(--mint));opacity:.9
}
.stat-card::after{
  content:"";position:absolute;width:92px;height:92px;border-radius:50%;
  left:-34px;top:-38px;background:rgba(6,129,137,.06);z-index:-1
}
.stat-card:hover{transform:translateY(-3px);box-shadow:var(--lift-shadow);border-color:#cbdcdd}
.stat-icon{
  width:52px;height:52px;border-radius:17px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.72),0 8px 18px rgba(15,30,63,.08)
}
.stat-card strong{font-size:29px;letter-spacing:-.04em}
.stat-card small{font-size:10px;font-weight:600;margin-top:2px}
.panel,.form-card,.data-panel,.item-card{
  border-color:#dde5e8;border-radius:20px;
  box-shadow:var(--soft-shadow);
  background:rgba(255,255,255,.98)
}
.panel{overflow:hidden}
.panel-head{background:linear-gradient(180deg,#fff,#fbfcfd);border-bottom-color:#e7ecee}
.item-card{transition:transform .2s ease,box-shadow .2s ease}
.item-card:hover{transform:translateY(-3px);box-shadow:var(--lift-shadow)}
.user-avatar{
  width:40px;height:40px;border-radius:14px;overflow:hidden;display:grid;place-items:center;
  flex:0 0 auto;background:linear-gradient(145deg,#068189,#2A8563);color:#fff;
  box-shadow:0 7px 18px rgba(6,129,137,.2)
}
.user-avatar.compact{width:39px;height:39px}
.user-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.user-avatar b{font-size:15px}
.profile-avatar-editor{
  display:flex;align-items:center;gap:18px;padding:0 0 22px;margin-bottom:22px;border-bottom:1px solid var(--line)
}
.profile-avatar-preview{
  width:104px;height:104px;border-radius:30px;overflow:hidden;position:relative;display:grid;place-items:center;
  background:linear-gradient(145deg,#dff1ef,#eaf1f7);color:var(--navy);cursor:pointer;
  border:4px solid #fff;box-shadow:0 14px 32px rgba(15,30,63,.13)
}
.profile-avatar-preview img{width:100%;height:100%;object-fit:cover}
.profile-avatar-preview>span{font-size:34px;font-weight:800}
.profile-avatar-preview>i{
  position:absolute;left:6px;bottom:6px;width:30px;height:30px;border-radius:10px;
  background:rgba(15,30,63,.88);color:#fff;display:grid;place-items:center
}
.profile-avatar-preview>i .ui-icon{width:16px}
.profile-avatar-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.profile-avatar-actions>strong{width:100%;font-size:16px}
.checkbox-row.compact{font-size:10px;color:var(--muted)}
.support-page-head{margin-bottom:12px}
.support-close-button{background:#fff}
.support-user-workspace{display:block;max-width:980px;margin:0 auto;min-height:0}
.support-user-workspace .support-chat-card{height:calc(100vh - 178px);min-height:560px;border-radius:22px}
.support-chat-card{border-radius:20px;box-shadow:var(--soft-shadow)}
.support-chat-head{background:linear-gradient(180deg,#fff,#fbfcfd)}
.support-conversation-empty p,.support-empty-mini p,.support-agent-empty p{display:none!important}
.support-live-state{justify-content:flex-start;padding:5px 16px 8px}
.support-role-chip{box-shadow:none}
.support-tabs{border-radius:16px;box-shadow:0 8px 24px rgba(15,30,63,.06)}
.install-button[hidden]{display:none!important}
.app-standalone [data-install]{display:none!important}
@media(max-width:760px){
  .content-area{padding-top:18px}
  .profile-avatar-editor{align-items:flex-start}
  .profile-avatar-preview{width:86px;height:86px;border-radius:24px}
  .support-user-workspace .support-chat-card{height:calc(100dvh - 190px);min-height:480px}
}

.user-list-avatar{overflow:hidden}.user-list-avatar img{width:100%;height:100%;object-fit:cover;display:block}


/* NASQ v3.5 — final application polish */
.clean-stats{
  gap:14px;
}
.clean-stats .stat-card{
  --accent:#068189;
  min-height:112px;
  display:flex;
  align-items:center;
  gap:15px;
  border:1px solid rgba(216,226,230,.95);
  background:
    radial-gradient(circle at 8% 5%,color-mix(in srgb,var(--accent) 11%,transparent),transparent 38%),
    linear-gradient(145deg,#fff,#f8fbfc);
}
.clean-stats .stat-card:nth-child(2){--accent:#c18b2d}
.clean-stats .stat-card:nth-child(3){--accent:#254a7a}
.clean-stats .stat-card:nth-child(4){--accent:#b54a58}
.clean-stats .stat-card::before{
  width:5px;
  background:linear-gradient(180deg,var(--accent),color-mix(in srgb,var(--accent) 55%,#fff));
}
.clean-stats .stat-card::after{
  width:120px;height:120px;left:-48px;top:-56px;
  background:color-mix(in srgb,var(--accent) 8%,transparent);
}
.clean-stats .stat-icon{
  width:56px;height:56px;border-radius:18px;
  background:color-mix(in srgb,var(--accent) 10%,#fff)!important;
  color:var(--accent)!important;
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 13%,transparent),0 10px 24px rgba(15,30,63,.08);
}
.clean-stats .stat-icon .ui-icon{width:26px;height:26px}
.clean-stats .stat-card>span:last-child{display:flex;flex-direction:column;min-width:0}
.clean-stats .stat-card strong{font-size:31px;line-height:1;color:#10244a}
.clean-stats .stat-card small{color:#64738a;font-size:10px;letter-spacing:0}
.clean-stats .stat-card:hover{transform:translateY(-4px);box-shadow:0 24px 50px rgba(15,30,63,.12)}

.support-fab.is-opening,
.support-chat-opening .support-fab{
  opacity:0;
  transform:translateY(8px) scale(.92);
  pointer-events:none;
}
.support-live-state.compact{
  width:22px;height:22px;padding:0;margin:0 4px 6px 16px;
  display:grid;place-items:center;border-radius:999px;background:#f2f7f6;
}
.support-live-state.compact i{margin:0}
.support-live-state.compact[data-state="offline"]{background:#fbf4e8}
.support-live-state.compact[data-state="closed"]{background:#f1f3f5}

.app-standalone .sidebar-footer .install-button,
.app-standalone [data-install]{display:none!important}
@media (display-mode: standalone){
  [data-install]{display:none!important}
  body{overscroll-behavior-y:none}
}
@supports(padding:max(0px)){
  .app-standalone .topbar{padding-top:max(0px,env(safe-area-inset-top))}
  .app-standalone .mobile-nav{padding-bottom:max(8px,env(safe-area-inset-bottom))}
}

.profile-form .form-card{overflow:visible}
.profile-avatar-preview:focus-within,
.profile-avatar-preview:hover{box-shadow:0 18px 38px rgba(15,30,63,.17);transform:translateY(-2px)}
.profile-avatar-preview{transition:transform .2s ease,box-shadow .2s ease}
.user-list-avatar img{border-radius:inherit}

@media(max-width:760px){
  .clean-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .clean-stats .stat-card{min-height:102px;padding:15px;gap:11px;border-radius:18px}
  .clean-stats .stat-icon{width:48px;height:48px;border-radius:15px}
  .clean-stats .stat-card strong{font-size:26px}
}
@media(max-width:420px){
  .clean-stats .stat-card{min-height:94px;align-items:flex-start}
  .clean-stats .stat-icon{width:42px;height:42px;border-radius:14px}
  .clean-stats .stat-card strong{font-size:24px}
  .clean-stats .stat-card small{font-size:9px}
}


.report-stats .stat-card{
  --accent:#068189;
  min-height:108px;
  background:
    radial-gradient(circle at 8% 5%,color-mix(in srgb,var(--accent) 10%,transparent),transparent 38%),
    linear-gradient(145deg,#fff,#f8fbfc);
}
.report-stats .stat-card:nth-child(2){--accent:#254a7a}
.report-stats .stat-card:nth-child(3){--accent:#2a8563}
.report-stats .stat-card:nth-child(4){--accent:#b54a58}
.report-stats .stat-card::before{background:linear-gradient(180deg,var(--accent),color-mix(in srgb,var(--accent) 55%,#fff))}
.report-stats .stat-icon{background:color-mix(in srgb,var(--accent) 10%,#fff)!important;color:var(--accent)!important}

.rank-metrics span,.push-metrics span,.type-summary>div{
  border:1px solid #e3eaed;
  background:linear-gradient(145deg,#fff,#f8fbfc);
  box-shadow:0 7px 20px rgba(15,30,63,.05);
}
.rank-metrics span{border-radius:14px;padding:10px 12px}
.push-metrics span{border-radius:12px}


/* NASQ v3.6 — app-speed, groups, mobile UX and profile */
:root{
  --surface-elevated:#fff;
  --surface-soft:#f8fafc;
  --tap:46px;
}
body.modal-open{overflow:hidden}
.button,.icon-button,.icon-link,.notification-button,.quick-create{touch-action:manipulation}
.button:disabled,.icon-button:disabled,.group-send-button:disabled{opacity:.55;cursor:not-allowed}
[hidden]{display:none!important}
.ajax-toast{position:relative;z-index:120}

/* Professional profile */
.profile-page{max-width:1120px;margin:0 auto}
.profile-hero{position:relative;overflow:hidden;display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:34px;border-radius:26px;background:linear-gradient(135deg,#0f1e3f,#17395d 62%,#0b7077);color:#fff;box-shadow:0 22px 60px rgba(15,30,63,.16);margin-bottom:18px}
.profile-hero-glow{position:absolute;inset:auto -80px -120px auto;width:330px;height:330px;border-radius:50%;background:radial-gradient(circle,#36c1a8 0,rgba(54,193,168,0) 70%);opacity:.28;pointer-events:none}
.profile-identity{display:flex;align-items:center;gap:20px;position:relative;z-index:1;min-width:0}
.profile-avatar-xl{width:116px;height:116px;flex:0 0 116px;border-radius:34px;background:linear-gradient(145deg,#1db39a,#3d82a6);border:4px solid rgba(255,255,255,.2);box-shadow:0 16px 38px rgba(0,0,0,.2);display:grid;place-items:center;position:relative;overflow:hidden;cursor:pointer}
.profile-avatar-xl>img{width:100%;height:100%;object-fit:cover}
.profile-avatar-xl>span{font-size:42px;font-weight:800}
.profile-avatar-xl>i{position:absolute;bottom:7px;left:7px;width:34px;height:34px;border-radius:11px;background:#fff;color:var(--navy);display:grid;place-items:center;box-shadow:0 8px 18px rgba(0,0,0,.2)}
.profile-identity-copy{min-width:0}
.profile-role-pill{display:inline-flex;align-items:center;gap:7px;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.16);font-size:11px;font-weight:700}
.profile-role-pill .ui-icon{width:15px;height:15px;color:#a9f0df}
.profile-identity h1{font-size:28px;line-height:1.3;margin:10px 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.profile-identity p{margin:0;color:#d2daea}
.profile-hero-meta{display:flex;gap:10px;position:relative;z-index:1}
.profile-hero-meta>span{min-width:150px;padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.13);display:flex;align-items:center;gap:8px}
.profile-hero-meta .ui-icon{width:17px;height:17px;color:#8fe0d0}
.profile-hero-meta b{font-size:11px;font-weight:600}
.profile-modern-form{display:flex;flex-direction:column;gap:16px}
.profile-main-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:16px;align-items:start}
.profile-section-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:24px;box-shadow:0 12px 34px rgba(15,30,63,.045)}
.profile-section-head{display:flex;align-items:center;gap:10px;margin-bottom:20px}
.profile-section-head>span{width:38px;height:38px;border-radius:12px;background:#e9f6f4;color:var(--brand);display:grid;place-items:center}
.profile-section-head h2{font-size:15px;margin:0}
.profile-photo-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}
.profile-remove-photo{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:11px;cursor:pointer}
.profile-save-bar{position:sticky;bottom:14px;z-index:12;display:flex;justify-content:flex-end;align-items:center;gap:14px;padding:11px 12px;background:rgba(255,255,255,.92);backdrop-filter:blur(18px);border:1px solid var(--line);border-radius:18px;box-shadow:0 18px 44px rgba(15,30,63,.12)}
.profile-save-state{margin-inline-start:auto;color:var(--brand);font-size:11px;font-weight:700}

/* Quick profile drawer */
.profile-drawer-backdrop,.group-editor-backdrop{position:fixed;inset:0;background:rgba(10,18,36,.4);backdrop-filter:blur(3px);z-index:150;opacity:0;transition:opacity .18s ease}
.profile-drawer-backdrop.show,.group-editor-backdrop.show{opacity:1}
.profile-drawer{position:absolute;top:0;bottom:0;left:0;width:min(420px,94vw);background:#fff;box-shadow:30px 0 70px rgba(15,30,63,.18);transform:translateX(-102%);transition:transform .22s ease;display:flex;flex-direction:column}
.profile-drawer-backdrop.show .profile-drawer{transform:translateX(0)}
.profile-drawer>header{height:72px;padding:0 20px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}
.profile-drawer-body{padding:22px;overflow:auto}
.profile-drawer-loading{padding:60px 20px;text-align:center;color:var(--muted)}
.profile-drawer-hero{text-align:center;padding:12px 0 22px}
.profile-drawer-avatar{width:96px;height:96px;margin:0 auto 12px;border-radius:30px;background:linear-gradient(145deg,#1db39a,#3d82a6);color:#fff;display:grid;place-items:center;overflow:hidden;font-size:34px}
.profile-drawer-avatar img{width:100%;height:100%;object-fit:cover}
.profile-drawer-hero h2{margin:0;font-size:19px}
.profile-drawer-hero p{margin:4px 0 0;color:var(--muted)}
.profile-drawer-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:18px}
.profile-drawer-grid>span{padding:13px;border-radius:14px;background:var(--soft);border:1px solid var(--line);display:flex;flex-direction:column;gap:3px;min-width:0}
.profile-drawer-grid>span.wide{grid-column:1/-1}
.profile-drawer-grid small{font-size:9px;color:var(--muted)}
.profile-drawer-grid strong{font-size:11px;overflow-wrap:anywhere}

/* Communication groups */
.groups-page-head{margin-bottom:12px}
.groups-tabs{margin-bottom:12px}
.groups-workspace{display:grid;grid-template-columns:320px minmax(0,1fr);gap:14px;height:calc(100vh - 196px);min-height:580px}
.groups-list-panel,.group-chat-panel,.group-empty-panel{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:0 12px 34px rgba(15,30,63,.045)}
.groups-list-panel{display:flex;flex-direction:column;min-width:0}
.groups-list-head{padding:12px;border-bottom:1px solid var(--line)}
.compact-search input{background:#f7f9fb;border:1px solid #e5e9ef;height:42px}
.groups-list{overflow:auto;padding:7px;display:flex;flex-direction:column;gap:4px}
.group-list-item{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;border-radius:15px;text-decoration:none;transition:.16s ease}
.group-list-item:hover{background:#f7f9fb}
.group-list-item.active{background:#eef7f6;box-shadow:inset -3px 0 var(--brand)}
.group-symbol{--group-color:#068189;width:46px;height:46px;border-radius:15px;display:grid;place-items:center;background:color-mix(in srgb,var(--group-color) 15%,white);color:var(--group-color);font-weight:800;font-size:17px;border:1px solid color-mix(in srgb,var(--group-color) 22%,white);flex:0 0 auto}
.group-symbol.large{width:50px;height:50px;border-radius:16px}
.group-list-copy{min-width:0;display:flex;flex-direction:column}
.group-list-copy strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.group-list-copy small{font-size:10px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.group-unread{min-width:21px;height:21px;border-radius:999px;background:var(--brand);color:#fff;display:grid;place-items:center;font-size:9px;padding:0 5px}
.group-chat-panel{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;min-width:0}
.group-chat-head{min-height:74px;padding:11px 16px;display:flex;align-items:center;gap:11px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.94);backdrop-filter:blur(14px)}
.group-chat-title{min-width:0;flex:1}
.group-chat-title h2{font-size:14px;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.group-chat-title p{font-size:10px;color:var(--muted);margin:2px 0 0}
.group-chat-actions{display:flex;gap:7px}
.group-mobile-back{display:none}
.group-members-strip{padding:9px 14px;display:flex;gap:8px;overflow-x:auto;border-bottom:1px solid var(--line);background:#fbfcfd}
.group-member-chip{display:flex;align-items:center;gap:7px;min-width:max-content;padding:7px 9px;border-radius:12px;background:#fff;border:1px solid var(--line)}
.group-member-chip>span:last-child{display:flex;flex-direction:column}
.group-member-chip strong{font-size:10px}
.group-member-chip small{font-size:8px;color:var(--muted)}
.group-messages{overflow-y:auto;padding:18px;background:linear-gradient(180deg,#f8fafb,#f4f7f8);scroll-behavior:smooth}
.group-message{display:flex;align-items:flex-end;gap:7px;margin:9px 0;max-width:78%}
.group-message.mine{margin-right:auto;flex-direction:row-reverse}
.group-message-bubble{padding:10px 13px;border-radius:17px 17px 17px 5px;background:#fff;border:1px solid #e6eaee;box-shadow:0 5px 14px rgba(15,30,63,.04);min-width:90px}
.group-message.mine .group-message-bubble{background:linear-gradient(135deg,#0d858b,#14747e);color:#fff;border-color:transparent;border-radius:17px 17px 5px 17px}
.group-message-bubble strong{display:block;font-size:9px;color:var(--brand);margin-bottom:3px}
.group-message-bubble p{margin:0;font-size:12px;line-height:1.65;overflow-wrap:anywhere}
.group-message-bubble small{display:block;margin-top:4px;font-size:8px;color:#8994a5;text-align:left}
.group-message.mine small{color:#d7eeee}
.user-avatar.tiny{width:28px;height:28px;border-radius:10px;font-size:9px;overflow:hidden}
.user-avatar.tiny img{width:100%;height:100%;object-fit:cover}
.group-composer-wrap{padding:10px 12px;border-top:1px solid var(--line);background:#fff}
.group-composer{display:grid;grid-template-columns:minmax(0,1fr) 46px;gap:8px;align-items:end}
.group-composer textarea{min-height:46px;max-height:130px;resize:none;border-radius:15px;background:#f7f9fb;padding:12px 14px}
.group-send-button{width:46px;height:46px;border:0;border-radius:15px;background:var(--brand);color:#fff;display:grid;place-items:center;cursor:pointer}
.group-readonly{height:46px;border-radius:14px;background:#f5f6f8;color:var(--muted);display:flex;align-items:center;justify-content:center;gap:7px;font-size:11px}
.group-empty-panel{display:grid;place-items:center;align-content:center;text-align:center;color:var(--muted)}
.group-empty-panel h2{font-size:15px;color:var(--ink)}
.groups-workspace.is-loading .group-chat-panel{opacity:.65;pointer-events:none}

/* Group editor */
.group-editor-sheet{position:absolute;left:20px;top:20px;bottom:20px;width:min(600px,calc(100vw - 40px));background:#fff;border-radius:24px;box-shadow:0 32px 80px rgba(15,30,63,.22);transform:translateX(-110%);transition:transform .22s ease;display:flex;flex-direction:column;overflow:hidden}
.group-editor-backdrop.show .group-editor-sheet{transform:translateX(0)}
.group-editor-head{height:70px;padding:0 20px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}
.group-editor-head h2{margin:0;font-size:17px}
.group-editor-sheet>form{display:flex;flex-direction:column;min-height:0;flex:1}
.group-editor-grid{padding:18px 20px 10px;display:grid;grid-template-columns:1fr 110px;gap:12px}
.group-color-field input{height:44px;padding:5px}
.group-member-selector{display:flex;flex-direction:column;min-height:0;flex:1;padding:8px 20px 0}
.group-selector-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}
.group-selector-head h3{margin:0;font-size:13px}
.group-selector-head input{max-width:250px;height:39px}
.group-user-list{overflow:auto;border:1px solid var(--line);border-radius:16px;padding:5px}
.group-user-row{display:grid;grid-template-columns:38px minmax(0,1fr) auto auto;align-items:center;gap:9px;padding:8px;border-radius:12px}
.group-user-row:hover{background:#f8fafb}
.group-user-copy{display:flex;flex-direction:column;min-width:0}
.group-user-copy strong{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.group-user-copy small{font-size:9px;color:var(--muted)}
.group-access-toggle{display:flex;align-items:center;gap:5px;font-size:9px;color:var(--muted)}
.group-access-toggle input{width:17px;height:17px}
.group-access-toggle.sender{color:var(--brand)}
.group-editor-actions{display:flex;justify-content:space-between;gap:10px;padding:14px 20px;border-top:1px solid var(--line);margin-top:12px;background:#fbfcfd}

/* Mobile-first refinements across the product */
@media(max-width:860px){
  body{font-size:13px}
  .content-area{padding:16px 14px calc(90px + env(safe-area-inset-bottom))}
  .topbar{height:64px;padding:0 14px}
  .topbar-start>div{display:none}
  .topbar-actions{gap:7px}
  .quick-create{display:none}
  .page-head{align-items:center;gap:10px;margin-bottom:14px}
  .page-title h1{font-size:20px}
  .page-actions{gap:7px}
  .page-actions .button{min-height:42px}
  .button{min-height:44px;border-radius:13px}
  .icon-button,.notification-button,.icon-link{min-width:44px;min-height:44px}
  .toolbar{padding:10px;border-radius:16px;display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .toolbar .search{grid-column:1/-1;min-width:0}
  .toolbar label,.toolbar select,.toolbar .button{width:100%;min-width:0}
  .toolbar .button{grid-column:1/-1}
  .form-shell,.detail-grid,.notifications-layout{grid-template-columns:1fr}
  .form-aside{position:static}
  .form-grid{grid-template-columns:1fr}
  .field.wide{grid-column:auto}
  .form-card,.panel,.data-panel{border-radius:18px}
  .cards-grid{grid-template-columns:1fr}
  .appointment-card{grid-template-columns:58px minmax(0,1fr);gap:11px;padding:13px}
  .appointment-side{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;padding-top:9px;border-top:1px solid var(--line)}
  .appointment-meta{gap:7px 12px}
  .appointment-meta span{font-size:9px}
  .kanban{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:7px;gap:12px}
  .kanban-col{min-width:min(86vw,360px);scroll-snap-align:start}
  .mobile-nav{padding-bottom:max(8px,env(safe-area-inset-bottom));height:calc(67px + env(safe-area-inset-bottom))}
  .support-fab{bottom:calc(78px + env(safe-area-inset-bottom))}
  .profile-hero{padding:22px;align-items:flex-start;flex-direction:column;border-radius:22px}
  .profile-avatar-xl{width:92px;height:92px;flex-basis:92px;border-radius:27px}
  .profile-identity h1{font-size:22px}
  .profile-hero-meta{width:100%;display:grid;grid-template-columns:1fr 1fr}
  .profile-hero-meta>span{min-width:0}
  .profile-main-grid{grid-template-columns:1fr}
  .profile-section-card{padding:18px;border-radius:19px}
  .profile-save-bar{bottom:calc(76px + env(safe-area-inset-bottom));padding:9px}
  .profile-save-bar .button{width:100%}
  .profile-save-state{display:none}
  .users-table{min-width:0}
  .users-table thead{display:none}
  .users-table,.users-table tbody,.users-table tr,.users-table td{display:block;width:100%}
  .users-table tr{position:relative;padding:13px 12px 11px;border-bottom:1px solid var(--line)}
  .users-table td{padding:4px 0;border:0}
  .users-table td:nth-child(3),.users-table td:nth-child(4),.users-table td:nth-child(5){display:none}
  .users-table td:last-child{position:absolute;left:10px;top:10px;width:auto}
  .users-table .table-title{padding-left:92px;min-height:44px}
  .profile-drawer{width:min(92vw,400px)}
  .groups-workspace{display:block;height:calc(100dvh - 205px);min-height:520px}
  .groups-list-panel,.group-chat-panel,.group-empty-panel{height:100%;border-radius:18px}
  .group-chat-panel,.group-empty-panel{display:none}
  .groups-workspace.mobile-chat-open .groups-list-panel{display:none}
  .groups-workspace.mobile-chat-open .group-chat-panel{display:grid}
  .groups-workspace.mobile-chat-open .group-empty-panel{display:none}
  .group-mobile-back{display:grid}
  .group-list-item{padding:11px 9px}
  .group-message{max-width:90%}
  .group-chat-head{padding-inline:10px}
  .group-messages{padding:13px 10px}
  .group-editor-sheet{left:0;right:0;top:auto;bottom:0;width:100%;height:min(90dvh,760px);border-radius:24px 24px 0 0;transform:translateY(105%)}
  .group-editor-backdrop.show .group-editor-sheet{transform:translateY(0)}
  .group-editor-grid{grid-template-columns:1fr 90px;padding:15px}
  .group-member-selector{padding-inline:15px}
  .group-editor-actions{padding:12px 15px calc(12px + env(safe-area-inset-bottom))}
  .group-selector-head{align-items:stretch;flex-direction:column}
  .group-selector-head input{max-width:none;width:100%}
}
@media(max-width:520px){
  .content-area{padding-inline:10px}
  .page-head{align-items:flex-start}
  .page-title h1{font-size:18px}
  .page-actions .button{font-size:10px;padding-inline:10px}
  .stats-grid,.clean-stats{grid-template-columns:1fr 1fr!important;gap:8px!important}
  .stat-card{min-height:92px!important;padding:12px!important;border-radius:16px!important}
  .stat-card strong{font-size:20px!important}
  .profile-identity{gap:13px}
  .profile-avatar-xl{width:78px;height:78px;flex-basis:78px;border-radius:23px}
  .profile-avatar-xl>span{font-size:30px}
  .profile-identity h1{font-size:19px}
  .profile-role-pill{font-size:9px}
  .profile-hero-meta{grid-template-columns:1fr}
  .profile-drawer-grid{grid-template-columns:1fr}
  .profile-drawer-grid>span.wide{grid-column:auto}
  .group-user-row{grid-template-columns:34px minmax(0,1fr) auto}
  .group-access-toggle.sender{grid-column:3}
  .group-access-toggle em{font-style:normal;font-size:8px}
  .group-editor-grid{grid-template-columns:1fr}
}


/* =========================================================
   NASQ v4.0 — Glass UI, iOS login, fullscreen conversations
   ========================================================= */
:root{
  --glass-bg:rgba(255,255,255,var(--glass-alpha,.72));
  --glass-border:rgba(255,255,255,.64);
  --glass-shadow:0 18px 55px rgba(15,30,63,.10);
  --soft-shadow:0 8px 28px rgba(15,30,63,.07);
  --chat-in:#fff;
  --chat-out:#E5F4EE;
}
html,body{min-height:100%}
body{background:
  radial-gradient(circle at 8% 0%,color-mix(in srgb,var(--brand) 8%,transparent),transparent 30%),
  radial-gradient(circle at 100% 100%,color-mix(in srgb,var(--navy) 6%,transparent),transparent 34%),
  var(--paper)}
.icon-button{display:inline-grid;place-items:center;text-decoration:none}

/* Softer glass-like information inputs */
.field>span,.toolbar label>span{letter-spacing:-.01em}
.input,select,textarea,input[type=text],input[type=email],input[type=password],input[type=url],input[type=number],input[type=datetime-local],input[type=date],input[type=search]{
  border:1px solid rgba(145,158,177,.22);
  background:rgba(255,255,255,.68);
  -webkit-backdrop-filter:blur(16px) saturate(145%);
  backdrop-filter:blur(16px) saturate(145%);
  border-radius:16px;
  padding:11px 14px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.78),0 5px 16px rgba(15,30,63,.025);
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease,transform .18s ease;
}
.input:hover,select:hover,textarea:hover,input:hover{border-color:rgba(6,129,137,.28)}
.input:focus,select:focus,textarea:focus,input:focus{
  border-color:color-mix(in srgb,var(--brand) 58%,#fff);
  background:rgba(255,255,255,.94);
  box-shadow:0 0 0 4px color-mix(in srgb,var(--brand) 11%,transparent),0 10px 28px rgba(15,30,63,.06);
}
.form-card,.panel,.data-panel,.toolbar,.item-card{
  border-color:rgba(151,163,180,.18);
  box-shadow:var(--soft-shadow);
}
.form-card,.panel,.data-panel{
  background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(255,255,255,.76));
  -webkit-backdrop-filter:blur(18px) saturate(135%);
  backdrop-filter:blur(18px) saturate(135%);
}
.stat-card{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(153,164,181,.16);
  background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(255,255,255,.68));
  -webkit-backdrop-filter:blur(18px) saturate(140%);
  backdrop-filter:blur(18px) saturate(140%);
  box-shadow:0 14px 36px rgba(15,30,63,.065),inset 0 1px 0 rgba(255,255,255,.8);
}
.stat-card:after{content:"";position:absolute;width:88px;height:88px;border-radius:50%;background:color-mix(in srgb,var(--brand) 8%,transparent);left:-30px;top:-34px;pointer-events:none}
.dashboard-v4-heading .page-title{max-width:760px}
.dashboard-v4-heading .page-title h1{font-size:30px;letter-spacing:-.035em}
.dashboard-v4-heading .page-title p{margin-top:7px;max-width:670px}
.dashboard-greeting-kicker,.page-kicker,.panel-kicker{font-size:10px;color:var(--brand);font-weight:800;letter-spacing:.03em}

/* iOS-inspired login */
.auth-body.auth-v4{min-height:100dvh;overflow:auto;background:var(--navy)}
.ios-login-shell{
  min-height:100dvh;
  display:grid;
  place-items:center;
  padding:max(22px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) max(22px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left));
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:
    radial-gradient(circle at 18% 18%,color-mix(in srgb,var(--brand) 42%,transparent),transparent 30%),
    radial-gradient(circle at 82% 82%,rgba(255,255,255,.11),transparent 28%),
    linear-gradient(155deg,var(--navy),color-mix(in srgb,var(--navy) 78%,#050812));
}
.ios-login-shell:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.045),transparent 42%);z-index:-2}
.ios-login-orb{position:absolute;border-radius:50%;filter:blur(4px);opacity:.48;z-index:-1;pointer-events:none}
.ios-login-orb.orb-one{width:340px;height:340px;right:-120px;top:-95px;background:color-mix(in srgb,var(--brand) 74%,#fff)}
.ios-login-orb.orb-two{width:260px;height:260px;left:-90px;bottom:-80px;background:color-mix(in srgb,var(--brand) 38%,#6B8BA4)}
.ios-login-card{
  width:min(430px,100%);
  padding:34px 32px 24px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:34px;
  background:linear-gradient(160deg,rgba(255,255,255,.93),rgba(255,255,255,.77));
  -webkit-backdrop-filter:blur(30px) saturate(160%);
  backdrop-filter:blur(30px) saturate(160%);
  box-shadow:0 34px 90px rgba(2,8,24,.34),inset 0 1px 0 rgba(255,255,255,.85);
}
.ios-login-brand{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:26px}
.ios-app-icon{width:62px;height:62px;border-radius:17px;overflow:hidden;box-shadow:0 12px 26px rgba(15,30,63,.18);flex:0 0 62px;background:#fff}
.ios-app-icon img{width:100%;height:100%;object-fit:cover}
.ios-login-logo{max-width:190px;max-height:62px;object-fit:contain;object-position:left center}
.ios-login-copy{margin-bottom:26px}
.ios-login-kicker{display:block;color:var(--brand);font-size:11px;font-weight:800;margin-bottom:5px}
.ios-login-copy h1{font-size:29px;letter-spacing:-.04em;line-height:1.25;margin:0;color:var(--ink)}
.ios-login-copy p{margin:7px 0 0;color:var(--muted);font-size:11px;line-height:1.7}
.ios-login-form{display:flex;flex-direction:column;gap:12px}
.ios-floating-field{position:relative;display:block;height:62px;border-radius:18px;background:rgba(245,248,250,.75);border:1px solid rgba(144,157,174,.20);box-shadow:inset 0 1px 0 rgba(255,255,255,.9);overflow:hidden;transition:.2s}
.ios-floating-field:focus-within{border-color:color-mix(in srgb,var(--brand) 55%,#fff);background:#fff;box-shadow:0 0 0 4px color-mix(in srgb,var(--brand) 10%,transparent),0 9px 24px rgba(15,30,63,.06)}
.ios-floating-field input{height:100%;border:0!important;background:transparent!important;border-radius:0!important;box-shadow:none!important;padding:22px 44px 7px 48px;font-size:13px}
.ios-field-icon{position:absolute;right:16px;top:50%;transform:translateY(-50%);color:var(--muted);width:19px;height:19px;z-index:2}
.ios-field-icon .ui-icon{width:19px;height:19px}
.ios-floating-label{position:absolute;right:44px;top:50%;transform:translateY(-50%);color:#7A8798;font-size:12px;pointer-events:none;transition:.16s ease}
.ios-floating-field input:focus~.ios-floating-label,.ios-floating-field input:not(:placeholder-shown)~.ios-floating-label{top:16px;transform:none;font-size:9px;color:var(--brand);font-weight:700}
.ios-password-field input{padding-left:50px}
.ios-password-field>button{position:absolute;left:12px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:var(--muted);width:34px;height:34px;display:grid;place-items:center;cursor:pointer}
.ios-login-button{
  height:54px;border:0;border-radius:17px;margin-top:5px;padding:0 20px;
  display:flex;align-items:center;justify-content:center;gap:10px;
  background:linear-gradient(135deg,var(--brand),color-mix(in srgb,var(--brand) 76%,var(--navy)));
  color:#fff;font-weight:800;cursor:pointer;
  box-shadow:0 14px 30px color-mix(in srgb,var(--brand) 28%,transparent);
  transition:transform .16s,box-shadow .16s;
}
.ios-login-button:hover{transform:translateY(-1px);box-shadow:0 18px 35px color-mix(in srgb,var(--brand) 34%,transparent)}
.ios-login-button:active{transform:scale(.985)}
.ios-login-button .ui-icon{width:17px}
.ios-login-alert{border-radius:16px;margin-bottom:14px;background:#FFF1F2;border:1px solid #F3D4D8}
.ios-login-home-indicator{width:104px;height:4px;border-radius:999px;background:#1620371f;margin:22px auto 0}

/* Fullscreen modern conversations */
body.conversation-mode{overflow:hidden;background:#E8EDF0}
body.conversation-mode .sidebar,
body.conversation-mode .topbar,
body.conversation-mode .mobile-nav,
body.conversation-mode .support-fab,
body.conversation-mode .connection-banner{display:none!important}
body.conversation-mode .main-area{margin:0!important;height:100dvh;min-height:0}
body.conversation-mode .app-shell{height:100dvh;min-height:0}
body.conversation-mode .content-area{padding:0!important;max-width:none!important;margin:0!important;height:100dvh;min-height:0;overflow:hidden}
body.conversation-mode .toast{position:fixed;top:max(14px,env(safe-area-inset-top));left:50%;transform:translateX(-50%);z-index:500;width:min(420px,calc(100vw - 28px));box-shadow:0 18px 50px rgba(15,30,63,.16)}

.conversation-app{
  height:100dvh;min-height:0;width:100%;
  display:grid;grid-template-columns:minmax(310px,365px) minmax(0,1fr);
  background:#EEF2F3;color:var(--ink);overflow:hidden;
}
.support-conversation-app.is-user{grid-template-columns:1fr}
.conversation-sidebar{
  min-width:0;height:100dvh;display:flex;flex-direction:column;
  background:rgba(252,253,253,.92);
  -webkit-backdrop-filter:blur(24px) saturate(145%);
  backdrop-filter:blur(24px) saturate(145%);
  border-left:1px solid rgba(125,143,159,.18);
  position:relative;z-index:3;
}
.conversation-sidebar-head{
  min-height:74px;padding:max(12px,env(safe-area-inset-top)) 16px 10px;
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  border-bottom:1px solid rgba(137,151,166,.12);
}
.conversation-sidebar-title,.conversation-chat-identity{display:flex;align-items:center;gap:11px;min-width:0}
.conversation-sidebar-title h1,.conversation-chat-identity h2{margin:0;font-size:15px;letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.conversation-sidebar-title small,.conversation-chat-identity small{display:block;color:var(--muted);font-size:9px;margin-top:1px}
.conversation-brand-icon{width:40px;height:40px;border-radius:13px;background:linear-gradient(145deg,var(--brand),color-mix(in srgb,var(--brand) 68%,var(--navy)));color:#fff;display:grid;place-items:center;box-shadow:0 8px 18px color-mix(in srgb,var(--brand) 20%,transparent)}
.conversation-brand-icon .ui-icon{width:19px}
.conversation-sidebar-actions,.conversation-chat-actions{display:flex;align-items:center;gap:6px}
.conversation-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:8px 12px}
.conversation-tabs a{display:flex;align-items:center;justify-content:space-between;gap:7px;text-decoration:none;color:var(--muted);padding:8px 10px;border-radius:12px;font-size:10px;font-weight:700}
.conversation-tabs a>span{display:flex;align-items:center;gap:6px}
.conversation-tabs a .ui-icon{width:14px}
.conversation-tabs a b{min-width:20px;height:20px;border-radius:9px;background:rgba(107,122,143,.10);display:grid;place-items:center;font-size:9px}
.conversation-tabs a.active{background:color-mix(in srgb,var(--brand) 10%,#fff);color:var(--brand)}
.conversation-tabs a.active b{background:var(--brand);color:#fff}
.conversation-search{margin:4px 12px 8px;position:relative}
.conversation-search>.ui-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:15px;color:var(--muted);z-index:2}
.conversation-search input{height:40px;border-radius:13px;padding:8px 36px 8px 12px;background:rgba(237,241,243,.76)}
.conversation-list{flex:1;min-height:0;overflow:auto;padding:3px 8px 16px;scrollbar-width:thin}
.conversation-list-item{display:grid!important;grid-template-columns:46px minmax(0,1fr) auto!important;gap:10px!important;align-items:center!important;min-height:64px;padding:8px!important;margin:2px 0;border:0!important;border-radius:15px!important;text-decoration:none;background:transparent;transition:.16s}
.conversation-list-item:hover{background:rgba(225,232,235,.62)}
.conversation-list-item.active{background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 11%,#fff),rgba(255,255,255,.72));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--brand) 10%,transparent)}
.conversation-avatar{width:46px;height:46px;flex:0 0 46px;border-radius:16px;overflow:hidden;display:grid;place-items:center;background:linear-gradient(145deg,color-mix(in srgb,var(--brand) 16%,#fff),#fff);color:var(--brand);font-weight:800;box-shadow:inset 0 0 0 1px rgba(119,137,154,.12)}
.conversation-avatar img{width:100%;height:100%;object-fit:cover}
.conversation-avatar.large{width:44px;height:44px;flex-basis:44px;border-radius:14px}
.conversation-avatar.small{width:34px;height:34px;flex-basis:34px;border-radius:11px}
.conversation-avatar.tiny{width:28px;height:28px;flex-basis:28px;border-radius:10px}
.group-symbol.conversation-avatar{background:var(--group-color,#068189);color:#fff;box-shadow:0 7px 16px color-mix(in srgb,var(--group-color,#068189) 22%,transparent)}
.conversation-item-copy{min-width:0}
.conversation-item-copy strong{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.conversation-item-copy small{display:block;color:var(--muted);font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:3px}
.support-thread-meta b,.conversation-unread,.group-unread{min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--brand);color:#fff;display:grid;place-items:center;font-size:8px}
.conversation-list-empty{height:100%;min-height:180px;display:grid;place-items:center;align-content:center;gap:7px;color:var(--muted);text-align:center}
.conversation-list-empty .ui-icon{width:24px;color:var(--brand);opacity:.65}
.conversation-list-empty strong{font-size:11px}

.conversation-chat{
  min-width:0;height:100dvh;display:grid;grid-template-rows:auto minmax(0,1fr) auto;
  background:#E9EFF0;position:relative;overflow:hidden;border:0!important;border-radius:0!important;box-shadow:none!important;
}
.conversation-chat:before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.34;
  background-image:
    radial-gradient(circle at 20px 20px,rgba(15,30,63,.035) 1.2px,transparent 1.4px),
    radial-gradient(circle at 56px 56px,rgba(6,129,137,.025) 1px,transparent 1.2px);
  background-size:72px 72px;z-index:0;
}
.conversation-chat>*{position:relative;z-index:1}
.conversation-chat-head{
  min-height:68px;padding:max(9px,env(safe-area-inset-top)) 16px 9px;
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  background:rgba(255,255,255,.86);
  -webkit-backdrop-filter:blur(24px) saturate(150%);
  backdrop-filter:blur(24px) saturate(150%);
  border-bottom:1px solid rgba(126,145,160,.14);
  box-shadow:0 7px 22px rgba(15,30,63,.035);
}
.conversation-chat-identity{flex:1}
.conversation-chat-identity>div{min-width:0}
.conversation-status-dot{display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border-radius:999px;background:#EFF3F4;color:var(--muted);font-size:8px;font-weight:800}
.conversation-status-dot:before{content:"";width:6px;height:6px;border-radius:50%;background:#97A1AE}
.conversation-status-dot.online{background:#E7F5EF;color:#26735C}.conversation-status-dot.online:before{background:#39A879}
.conversation-status-dot.archived{background:#F0F1F3;color:#707A87}
.conversation-mobile-back{display:none}

.conversation-messages{
  min-height:0;overflow:auto;padding:22px clamp(16px,3vw,52px) 16px;
  scroll-behavior:smooth;overscroll-behavior:contain;
}
.conversation-message{width:100%;margin:5px 0;display:flex;align-items:flex-end;gap:7px;direction:ltr}
.conversation-message.mine{justify-content:flex-end}
.conversation-bubble{
  max-width:min(68%,680px);min-width:70px;
  padding:8px 11px 6px;border-radius:18px 18px 18px 6px;
  background:var(--chat-in);border:1px solid rgba(122,139,153,.12);
  box-shadow:0 4px 12px rgba(15,30,63,.055),0 1px 2px rgba(15,30,63,.04);
  direction:rtl;text-align:right;position:relative;
}
.conversation-message.mine .conversation-bubble,.group-message.mine .group-message-bubble{
  background:linear-gradient(145deg,#EAF7F1,#DDF0E8);
  border-color:rgba(42,133,99,.10);
  border-radius:18px 18px 6px 18px;
  color:var(--ink);
  box-shadow:0 4px 13px rgba(25,91,72,.07),0 1px 2px rgba(15,30,63,.03);
}
.conversation-bubble p,.group-message-bubble p{margin:0;font-size:12px;line-height:1.7;overflow-wrap:anywhere;white-space:normal}
.conversation-bubble small,.group-message-bubble small{display:block;text-align:left;color:#85919F;font-size:7.8px;line-height:1.2;margin-top:3px;direction:ltr}
.conversation-message.mine .conversation-bubble small,.group-message.mine .group-message-bubble small{color:#6F887F}
.group-message-bubble strong{display:block;font-size:8px;color:var(--brand);margin:0 0 3px}
.support-message{flex-direction:column;align-items:flex-start}
.support-message.mine{align-items:flex-end}
.support-message-label{display:flex;align-items:center;gap:6px;margin:0 6px 2px;direction:rtl;font-size:8px;color:var(--muted)}
.support-message-label strong{font-size:8px}.support-message.mine .support-message-label{display:none}
.support-message-label span{display:inline-flex;align-items:center;gap:3px;color:var(--brand)}
.support-message-label .ui-icon{width:10px}
.conversation-empty{height:100%;min-height:170px;display:grid;place-items:center;align-content:center;gap:8px;color:var(--muted);text-align:center}
.conversation-empty>.ui-icon,.conversation-empty>span .ui-icon{width:28px;color:var(--brand);opacity:.55}
.conversation-empty strong{font-size:11px}
.conversation-empty-large{grid-row:1/-1}

.conversation-composer-wrap{
  min-height:66px;padding:9px 12px max(9px,env(safe-area-inset-bottom));
  background:rgba(255,255,255,.87);
  -webkit-backdrop-filter:blur(24px) saturate(155%);
  backdrop-filter:blur(24px) saturate(155%);
  border-top:1px solid rgba(125,144,159,.14);
}
.conversation-composer{
  width:min(920px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) 46px;gap:8px;align-items:end;
}
.conversation-composer textarea{
  min-height:46px!important;max-height:124px!important;resize:none!important;border-radius:17px!important;
  padding:12px 15px!important;background:rgba(241,245,246,.90)!important;border:1px solid rgba(126,144,159,.12)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85)!important;
}
.conversation-send-button{
  width:46px;height:46px;border:0;border-radius:16px;background:linear-gradient(145deg,var(--brand),color-mix(in srgb,var(--brand) 75%,var(--navy)));
  color:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:0 8px 18px color-mix(in srgb,var(--brand) 22%,transparent);transition:.15s
}
.conversation-send-button:hover{transform:translateY(-1px)}.conversation-send-button:active{transform:scale(.95)}
.conversation-send-button .ui-icon{width:18px}
.support-live-state{position:absolute;left:13px;bottom:max(15px,env(safe-area-inset-bottom));width:8px;height:8px}
.support-live-state i{display:block;width:7px;height:7px;border-radius:50%;background:#36A87A;box-shadow:0 0 0 3px #36A87A18}
.conversation-readonly,.conversation-archive-note{min-height:46px;display:flex;align-items:center;justify-content:center;gap:7px;color:var(--muted);font-size:10px}
.conversation-archive-note{background:rgba(255,255,255,.82);padding:12px;border-top:1px solid rgba(125,144,159,.12)}
.conversation-members-strip{display:flex;gap:8px;padding:8px 12px;overflow:auto;background:rgba(255,255,255,.76);border-bottom:1px solid rgba(128,145,158,.12)}
.group-member-chip{display:flex;align-items:center;gap:7px;min-width:max-content;background:#fff;border:1px solid rgba(128,145,158,.12);border-radius:14px;padding:6px 8px}
.group-member-chip strong{font-size:9px}.group-member-chip small{display:block;font-size:7px;color:var(--muted)}
.groups-workspace{height:100dvh;min-width:0}
.groups-workspace .group-chat-panel{height:100dvh}
.group-empty-panel{height:100dvh;background:#E9EFF0}
.group-chat-title{min-width:0;flex:1}.group-chat-title>div{min-width:0}.group-chat-title h2{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.group-chat-actions{margin-right:auto}

/* Group editor: modern sheet */
.group-editor-backdrop{background:rgba(6,13,28,.40);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.group-editor-sheet{border-radius:26px 26px 0 0;box-shadow:0 -24px 70px rgba(15,30,63,.20);border:1px solid rgba(255,255,255,.65);background:rgba(250,252,252,.96)}
.group-editor-head{background:rgba(255,255,255,.75);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}
.group-user-row{border-radius:14px;border-color:rgba(131,148,162,.14);background:rgba(255,255,255,.72)}
.group-access-toggle{border-radius:11px}

/* Settings v4 */
.settings-v4{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:18px;align-items:start}
.settings-v4-main{display:flex;flex-direction:column;gap:16px}
.settings-section-card{
  border:1px solid rgba(143,158,174,.17);border-radius:calc(var(--radius) + 4px);padding:20px;
  background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(255,255,255,.72));
  -webkit-backdrop-filter:blur(20px) saturate(145%);backdrop-filter:blur(20px) saturate(145%);
  box-shadow:var(--soft-shadow)
}
.settings-section-head{display:flex;align-items:center;gap:10px;margin-bottom:18px}
.settings-section-head h2{margin:0;font-size:15px}
.settings-section-icon{width:38px;height:38px;border-radius:13px;background:color-mix(in srgb,var(--brand) 10%,#fff);color:var(--brand);display:grid;place-items:center}
.settings-section-icon .ui-icon{width:18px}
.identity-preview-grid{display:grid;grid-template-columns:1.5fr .8fr;gap:12px;margin-bottom:18px}
.brand-preview-tile{min-height:158px;border:1px solid rgba(132,149,164,.13);border-radius:18px;padding:14px;background:rgba(245,248,249,.65);display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.brand-preview-label{font-size:9px;color:var(--muted);font-weight:800}
.brand-logo-preview{height:54px;width:100%;display:flex;align-items:center}
.brand-logo-preview img{max-width:210px;max-height:52px;object-fit:contain;object-position:right center}
.app-icon-preview-tile{align-items:center}.app-icon-preview-tile .brand-preview-label{align-self:flex-start}
.app-icon-preview{width:74px;height:74px;border-radius:20px;overflow:hidden;box-shadow:0 12px 24px rgba(15,30,63,.15);background:#fff}
.app-icon-preview img{width:100%;height:100%;object-fit:cover}
.glass-upload-button{background:rgba(255,255,255,.72)}
.minimal-check{display:flex;align-items:center;gap:6px;font-size:8px;color:var(--muted);cursor:pointer}
.minimal-check input{width:14px;height:14px}
.theme-live-preview{height:150px;border-radius:20px;overflow:hidden;display:grid;grid-template-columns:28% 1fr;background:var(--paper);border:1px solid rgba(132,149,164,.14);box-shadow:inset 0 1px 0 rgba(255,255,255,.8);margin-bottom:16px}
.theme-preview-sidebar{background:linear-gradient(180deg,var(--navy),color-mix(in srgb,var(--navy) 86%,#050812))}
.theme-preview-content{padding:22px;display:flex;flex-direction:column;gap:10px}
.theme-preview-content>span{display:block;height:9px;border-radius:999px;background:rgba(99,118,139,.12);width:62%}
.theme-preview-content>span:nth-child(2){width:38%}
.theme-preview-content>div{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px}
.theme-preview-content i{height:48px;border-radius:calc(var(--radius) * .55);background:rgba(255,255,255,.8);box-shadow:0 7px 18px rgba(15,30,63,.06)}
.theme-preview-content i:first-child:after{content:"";display:block;width:18px;height:18px;border-radius:7px;background:var(--brand);margin:10px}
.theme-controls-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.theme-color-control,.range-control{display:flex;flex-direction:column;gap:7px}
.theme-color-control>span:first-child,.range-control>span:first-child{font-size:9px;font-weight:800;color:#556176}
.color-input-shell{height:44px;border:1px solid rgba(132,149,164,.14);border-radius:14px;background:rgba(249,250,251,.75);display:flex;align-items:center;gap:8px;padding:5px 9px;direction:ltr}
.color-input-shell input[type=color]{width:32px;height:32px;padding:0;border:0;border-radius:10px;overflow:hidden;background:transparent;box-shadow:none}
.color-input-shell b{font-size:9px;color:var(--muted);font-family:monospace}
.range-control{grid-column:span 3}
.range-control>span{display:flex;justify-content:space-between}.range-control output{color:var(--brand);font-size:9px;font-weight:800}
.range-control input[type=range]{width:100%;accent-color:var(--brand)}
.system-health-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:15px}
.health-tile{display:grid;grid-template-columns:34px 1fr auto;gap:8px;align-items:center;padding:11px;border-radius:15px;background:rgba(246,248,249,.75);border:1px solid rgba(133,150,164,.13)}
.health-tile>span{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:#EEF1F3;color:var(--muted)}
.health-tile.healthy>span{background:#E5F5EE;color:#23775C}.health-tile.warning>span{background:#FFF3E3;color:#A26E1D}
.health-tile strong{font-size:10px}.health-tile small{display:block;color:var(--muted);font-size:8px}.health-tile>b{font-size:9px;color:var(--muted)}
.cron-url-row{display:grid;grid-template-columns:minmax(0,1fr) 38px;gap:7px;align-items:center;margin-top:10px;padding:7px;border-radius:14px;background:#101C38;color:#D8E0EF}
.cron-url-row code{display:block;overflow:auto;white-space:nowrap;font-size:8px;padding:0 5px;direction:ltr;text-align:left}.cron-url-row .icon-button{background:#ffffff12;border-color:#ffffff18;color:#fff}
.settings-v4-actions{position:sticky;top:92px}
.settings-sticky-card{border:1px solid rgba(137,153,168,.16);border-radius:20px;padding:14px;background:rgba(255,255,255,.82);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:var(--soft-shadow)}
.settings-sticky-preview{display:flex;align-items:center;gap:9px;margin-bottom:12px}
.mini-app-icon{width:42px;height:42px;border-radius:12px;overflow:hidden;box-shadow:0 7px 16px rgba(15,30,63,.13)}.mini-app-icon img{width:100%;height:100%;object-fit:cover}
.settings-sticky-preview strong{font-size:10px}.settings-sticky-preview small{display:block;font-size:8px;color:var(--muted)}
.settings-save-state{display:inline-flex;align-items:center;gap:5px;color:#26775E;background:#E7F5EF;padding:7px 10px;border-radius:11px;font-size:9px;font-weight:800}
.settings-v4.is-saving{opacity:.78;pointer-events:none}

/* Reports v4 */
.report-filter-v4{position:sticky;top:74px;z-index:12;background:rgba(255,255,255,.86);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-color:rgba(139,155,170,.16);box-shadow:0 10px 30px rgba(15,30,63,.06)}
.report-filter-v4 input,.report-filter-v4 select{background:rgba(246,248,249,.82)}
[data-report-results]{transition:opacity .18s}
[data-report-results].is-loading{opacity:.45;pointer-events:none}
.report-stats-v4 .stat-card{min-height:92px}
.report-insight-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(250px,.7fr) minmax(230px,.65fr);gap:14px;margin-bottom:14px}
.report-chart-card{min-width:0}.report-chart-total{font-size:10px;color:var(--muted);font-weight:700}
.report-bars{overflow-x:auto;justify-content:flex-start;padding:0 6px}
.report-bars .bar-item{min-width:48px;flex:1}
.modern-bars .bar{border-radius:10px 10px 4px 4px;background:color-mix(in srgb,var(--brand) 10%,#E7ECEF)}
.modern-bars .bar i{background:linear-gradient(180deg,var(--brand),color-mix(in srgb,var(--brand) 74%,var(--navy)))}
.modern-bars .bar-item small b{display:block;font-size:7px;color:#A0A8B4;font-weight:500}
.report-task-card .panel-body{display:flex;flex-direction:column;align-items:center;gap:14px}
.report-ring-value{color:var(--brand);font-size:12px}
.report-task-ring{--size:112px;width:var(--size);height:var(--size);border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--brand) calc(var(--progress) * 1%),#E8ECEE 0);position:relative}
.report-task-ring:after{content:"";position:absolute;inset:10px;border-radius:50%;background:#fff}
.report-task-ring>span{position:relative;z-index:1;text-align:center}.report-task-ring strong{display:block;font-size:20px}.report-task-ring small{font-size:8px;color:var(--muted)}
.task-status-mini{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;width:100%}.task-status-mini span{text-align:center;padding:7px 4px;border-radius:10px;background:#F5F7F8}.task-status-mini b{display:block;font-size:10px}.task-status-mini small{font-size:7px;color:var(--muted)}
.report-secondary-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:14px;margin-bottom:14px}
.type-summary-v4>div{background:rgba(249,250,251,.7);border-color:rgba(137,153,168,.13);border-radius:13px}
.rank-report-v4{padding:12px}.rank-report-v4 article{background:rgba(248,250,250,.74);border-radius:13px;border-color:rgba(137,153,168,.13)}
.report-tables-v4{grid-template-columns:1.25fr .75fr}

/* General UI polish */
.button{border-radius:14px;transition:transform .15s,box-shadow .15s,border-color .15s}
.button.primary{background:linear-gradient(135deg,var(--brand),color-mix(in srgb,var(--brand) 76%,var(--navy)));box-shadow:0 10px 22px color-mix(in srgb,var(--brand) 17%,transparent)}
.button:hover{transform:translateY(-1px)}.button:active{transform:scale(.985)}
.panel-head{border-color:rgba(139,154,169,.13)}
.page-head{align-items:center}
.content-area{transition:padding .2s}

/* Mobile */
@media(max-width:980px){
  .settings-v4{grid-template-columns:1fr}.settings-v4-actions{position:static}
  .report-insight-grid{grid-template-columns:1fr 1fr}.report-chart-card{grid-column:1/-1}
  .report-secondary-grid,.report-tables-v4{grid-template-columns:1fr}
}
@media(max-width:720px){
  .dashboard-v4-heading{align-items:flex-start}.dashboard-v4-heading .page-title h1{font-size:25px}
  .dashboard-v4-heading .page-actions{width:100%}.dashboard-v4-heading .page-actions .button{flex:1}
  .identity-preview-grid{grid-template-columns:1fr 1fr}
  .theme-controls-grid{grid-template-columns:1fr}.range-control{grid-column:auto}.system-health-grid{grid-template-columns:1fr}
  .settings-section-card{padding:15px;border-radius:20px}
  .settings-v4-head{margin-bottom:12px}
  .report-filter-v4{position:static;grid-template-columns:1fr 1fr!important;border-radius:18px}
  .report-filter-v4 label:nth-of-type(3),.report-filter-v4 label:nth-of-type(4),.report-filter-v4 .button{grid-column:auto}
  .report-insight-grid{grid-template-columns:1fr}.report-chart-card{grid-column:auto}
  .report-secondary-grid{grid-template-columns:1fr}
}
@media(max-width:640px){
  .ios-login-shell{place-items:stretch;padding:0;background:linear-gradient(165deg,var(--navy),color-mix(in srgb,var(--navy) 80%,#070A12))}
  .ios-login-card{
    width:100%;min-height:100dvh;border-radius:0;border:0;
    padding:max(44px,calc(env(safe-area-inset-top) + 24px)) 24px max(18px,env(safe-area-inset-bottom));
    display:flex;flex-direction:column;justify-content:center;background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(247,249,250,.93));
  }
  .ios-login-brand{margin-bottom:34px}.ios-app-icon{width:68px;height:68px;flex-basis:68px;border-radius:19px}
  .ios-login-logo{max-width:170px}
  .ios-login-copy h1{font-size:30px}
  .ios-login-home-indicator{margin-top:auto;padding-top:28px;background:transparent;height:auto}
  .ios-login-home-indicator:after{content:"";display:block;width:108px;height:4px;border-radius:999px;background:#101A2D25;margin:auto}

  .conversation-app{grid-template-columns:1fr}
  .conversation-sidebar{grid-column:1;grid-row:1;width:100%;height:100dvh;border:0}
  .conversation-chat,.groups-workspace{grid-column:1;grid-row:1;width:100%;height:100dvh}
  .support-conversation-app.is-handler.has-thread .support-inbox{display:none}
  .support-conversation-app.is-handler:not(.has-thread) .conversation-chat{display:none}
  body.support-list-visible .support-conversation-app .support-inbox{display:flex!important}
  body.support-list-visible .support-conversation-app .conversation-chat{display:none!important}
  .groups-conversation-app.has-active-group .groups-list-panel{display:none}
  body:not(.group-chat-visible) .groups-conversation-app .groups-list-panel{display:flex}
  body:not(.group-chat-visible) .groups-conversation-app .groups-workspace{display:none}
  body.group-chat-visible .groups-conversation-app .groups-list-panel{display:none}
  body.group-chat-visible .groups-conversation-app .groups-workspace{display:block}
  .conversation-mobile-back{display:grid}
  .group-chat-exit{display:none}
  .conversation-chat-head{min-height:62px;padding:max(8px,env(safe-area-inset-top)) 10px 8px}
  .conversation-avatar.large{width:40px;height:40px;flex-basis:40px;border-radius:13px}
  .conversation-chat-identity h2{font-size:13px}
  .conversation-status-dot{display:none}
  .conversation-messages{padding:14px 10px 12px}
  .conversation-bubble{max-width:84%;padding:7px 10px 5px;border-radius:17px 17px 17px 5px}
  .conversation-message.mine .conversation-bubble,.group-message.mine .group-message-bubble{border-radius:17px 17px 5px 17px}
  .conversation-bubble p,.group-message-bubble p{font-size:11px;line-height:1.65}
  .conversation-composer-wrap{padding:7px 8px max(7px,env(safe-area-inset-bottom))}
  .conversation-composer{grid-template-columns:minmax(0,1fr) 44px;gap:6px}
  .conversation-composer textarea{min-height:44px!important;border-radius:16px!important}
  .conversation-send-button{width:44px;height:44px;border-radius:15px}
  .conversation-sidebar-head{min-height:66px;padding:max(9px,env(safe-area-inset-top)) 12px 8px}
  .conversation-tabs{padding:6px 9px}
  .conversation-list{padding:3px 6px 12px}
  .conversation-list-item{min-height:62px!important;border-radius:14px!important}
  .conversation-search{margin:4px 9px 7px}
  .group-editor-sheet{width:100%;max-height:92dvh;border-radius:24px 24px 0 0}
  .identity-preview-grid{grid-template-columns:1fr}
  .brand-preview-tile{min-height:140px}
  .report-filter-v4{grid-template-columns:1fr!important}
  .report-filter-v4 label,.report-filter-v4 .button{grid-column:1!important}
  .report-stats-v4{grid-template-columns:1fr 1fr}
  .report-stats-v4 .stat-card{padding:13px;min-height:82px}
  .report-stats-v4 .stat-icon{width:40px;height:40px}
  .report-stats-v4 .stat-card strong{font-size:20px}
}
@media(max-width:420px){
  .ios-login-card{padding-right:20px;padding-left:20px}
  .ios-login-logo{max-width:150px}
  .report-stats-v4{grid-template-columns:1fr}
  .theme-live-preview{height:130px}
}
@media print{
  .report-filter-v4{display:none!important}
  .report-insight-grid{grid-template-columns:1.4fr .8fr}
  .report-task-card{display:none}
  .report-secondary-grid{grid-template-columns:1fr 1fr}
}

/* Explicit rows keep the members strip from stealing the message viewport. */
.group-chat-panel.conversation-chat{grid-template-rows:auto auto minmax(0,1fr) auto}
.group-chat-panel>.group-chat-head{grid-row:1}
.group-chat-panel>.group-members-strip{grid-row:2}
.group-chat-panel>.group-messages{grid-row:3}
.group-chat-panel>.group-composer-wrap{grid-row:4}

.conversation-chat>.conversation-empty-large{grid-row:2;height:auto;min-height:0}


/* ===== NASQ v4.1.0 interaction & communication polish ===== */
.ios-login-brand-single{position:relative;justify-content:center;min-height:108px;margin-bottom:24px}
.ios-brand-halo{position:absolute;width:170px;height:82px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--brand) 18%,transparent),transparent 72%);filter:blur(12px);opacity:.8;pointer-events:none}
.ios-login-logo-primary{position:relative;z-index:1;max-width:min(260px,72vw);max-height:92px;object-fit:contain;filter:drop-shadow(0 12px 24px rgba(15,30,63,.10));animation:nasqBrandFloat 6s ease-in-out infinite}
@keyframes nasqBrandFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@media(prefers-reduced-motion:reduce){.ios-login-logo-primary{animation:none}}

.group-symbol img,.conversation-avatar img{width:100%;height:100%;object-fit:cover;border-radius:inherit}
.group-admin-badge{display:inline-grid;place-items:center;width:15px;height:15px;border-radius:50%;background:#1687ff;color:#fff;font-size:9px;font-style:normal;font-weight:900;box-shadow:0 2px 7px rgba(22,135,255,.28);vertical-align:middle;margin-inline-start:4px}
.role-inline-badge,.role-mini-badge{display:inline-flex!important;align-items:center;gap:4px;vertical-align:middle;border-radius:999px;padding:2px 6px;background:color-mix(in srgb,var(--role-color,#068189) 10%,#fff);color:var(--role-color,#068189);font-size:7px!important;font-weight:800;line-height:1.5}
.role-inline-badge img,.role-mini-badge img{width:13px;height:13px;border-radius:50%;object-fit:cover;box-shadow:0 1px 3px rgba(15,30,63,.12)}
.rank-emblem img{width:100%;height:100%;object-fit:contain;border-radius:inherit}.rank-label i img{width:18px;height:18px;border-radius:50%;object-fit:cover}

.group-access-actions{display:flex;align-items:center;gap:5px;flex-wrap:wrap;justify-content:flex-end}
.group-permission-button{position:relative;cursor:pointer;user-select:none}
.group-permission-button input{position:absolute;opacity:0;pointer-events:none}
.group-permission-button span{height:31px;display:inline-flex;align-items:center;gap:4px;padding:0 9px;border:1px solid rgba(132,149,164,.18);border-radius:11px;background:#F7F9FA;color:#667286;font-size:8px;font-weight:800;transition:.16s ease;white-space:nowrap}
.group-permission-button span .ui-icon{width:12px}
.group-permission-button input:checked+span{border-color:color-mix(in srgb,var(--brand) 35%,transparent);background:color-mix(in srgb,var(--brand) 11%,#fff);color:var(--brand);box-shadow:0 5px 13px color-mix(in srgb,var(--brand) 9%,transparent)}
.group-permission-button.admin input:checked+span{background:#E9F3FF;border-color:#BBD9FF;color:#086BD2;box-shadow:0 5px 13px rgba(22,135,255,.10)}
.group-permission-button input:disabled+span{opacity:.4;cursor:not-allowed}
.group-user-row{grid-template-columns:38px minmax(130px,1fr) auto!important}

.group-image-upload{display:flex;align-items:center;gap:12px;padding:9px;border:1px dashed rgba(126,145,160,.25);border-radius:15px;background:rgba(248,250,251,.75)}
.group-image-preview{width:58px;height:58px;flex:0 0 58px;display:grid;place-items:center;border-radius:17px;overflow:hidden;background:linear-gradient(145deg,#EDF3F3,#fff);color:var(--brand);border:1px solid rgba(128,145,158,.12)}
.group-image-preview img{width:100%;height:100%;object-fit:cover}.group-image-upload input{font-size:9px;max-width:240px}.group-image-upload small{display:block;font-size:7px;color:var(--muted);margin-top:3px}

.conversation-composer:has(.conversation-attach-button){grid-template-columns:42px minmax(0,1fr) 46px}
.conversation-attach-button{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;align-self:center;cursor:pointer;color:#68758A;background:rgba(242,246,247,.95);border:1px solid rgba(126,144,159,.13);transition:.15s}
.conversation-attach-button:hover,.conversation-composer.has-attachment .conversation-attach-button{color:var(--brand);background:color-mix(in srgb,var(--brand) 8%,#fff);border-color:color-mix(in srgb,var(--brand) 25%,transparent)}
.conversation-attach-button .ui-icon{width:18px}

.chat-attachment{margin:6px -3px 2px;max-width:440px}
.chat-attachment img,.chat-attachment video{display:block;max-width:100%;max-height:360px;border-radius:13px;object-fit:cover;background:#0d1524}
.chat-attachment audio{width:min(290px,72vw);height:38px}
.chat-file-card{display:flex;align-items:center;gap:8px;padding:9px 11px;border-radius:12px;background:rgba(255,255,255,.58);border:1px solid rgba(125,143,158,.14);text-decoration:none;color:inherit}
.chat-file-card .ui-icon{width:17px;color:var(--brand)}.chat-file-card span{font-size:9px;max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.notification-media{margin:9px 0 5px;max-width:520px}.notification-media img,.notification-media video{display:block;max-width:100%;max-height:330px;border-radius:15px;object-fit:cover;box-shadow:0 7px 18px rgba(15,30,63,.08)}
.notification-media.audio{display:flex;flex-direction:column;gap:4px}.notification-media audio{width:min(430px,100%);height:38px}.notification-media small{font-size:8px;color:var(--muted)}
.notification-file{display:inline-flex;align-items:center;gap:7px;margin:7px 0;padding:8px 11px;border-radius:12px;background:#F4F7F8;border:1px solid rgba(128,145,158,.14);text-decoration:none}.notification-file span{width:28px;height:28px;border-radius:9px;background:#fff;display:grid;place-items:center;color:var(--brand)}.notification-file strong{font-size:9px}

.notification-attachment-tools{display:flex;gap:7px;flex-wrap:wrap;margin:2px 0 12px}
.attachment-pick-button,.attachment-record-button{min-height:39px;padding:0 11px;border-radius:12px;border:1px solid rgba(132,149,164,.18);background:#F8FAFB;color:#566276;display:inline-flex;align-items:center;gap:6px;cursor:pointer;font:inherit;font-size:9px;font-weight:800}
.attachment-pick-button .ui-icon,.attachment-record-button .ui-icon{width:15px}.attachment-record-button.recording{background:#FFF0F2;color:#B64B5A;border-color:#F2C8CF}
.audio-record-state{display:inline-flex;align-items:center;gap:6px;padding:0 10px;border-radius:12px;background:#FFF5F6;color:#A43F4E;font-size:8px}.audio-record-state i{width:7px;height:7px;border-radius:50%;background:#E74D62;animation:nasqPulse 1s infinite}.audio-record-state b{font-variant-numeric:tabular-nums}
@keyframes nasqPulse{50%{opacity:.25;transform:scale(.75)}}
.attachment-selection{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border-radius:11px;background:#EDF8F4;color:#25745D;font-size:8px}.attachment-selection button{border:0;background:transparent;color:inherit;font-size:18px;cursor:pointer}

.role-badge-upload{margin:10px 0 14px}.role-badge-upload-shell{display:flex;align-items:center;gap:10px}.role-badge-image-preview{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;overflow:hidden;background:#F3F6F7;border:1px solid rgba(130,147,163,.15)}.role-badge-image-preview img{width:100%;height:100%;object-fit:cover}.role-badge-upload-shell input{font-size:9px}

@supports not (backdrop-filter:blur(10px)){
  .topbar,.settings-section-card,.settings-sticky-card,.conversation-composer-wrap,.group-editor-sheet{background:#fff!important}
}
@supports not (color:color-mix(in srgb,#000 50%,#fff)){
  .conversation-send-button,.button.primary{background:var(--brand)}
  .role-inline-badge,.role-mini-badge{background:#F0F7F6}
  .group-permission-button input:checked+span{background:#EAF6F4;border-color:#9CCFC7}
}
@supports not selector(:has(*)){
  .conversation-composer{grid-template-columns:42px minmax(0,1fr) 46px}
}

@media(min-width:1200px){
  body.conversation-mode .conversation-sidebar{width:360px}
  body.conversation-mode .conversation-messages{padding-inline:clamp(30px,5vw,92px)}
  body.conversation-mode .conversation-bubble{max-width:min(62%,720px)}
  body.conversation-mode .conversation-chat-head{padding-inline:24px}
}
@media(min-width:1600px){
  body.conversation-mode .conversation-sidebar{width:390px}
  body.conversation-mode .conversation-bubble{max-width:680px}
}
@media(max-width:720px){
  .group-user-row{grid-template-columns:36px minmax(0,1fr)!important;gap:7px}
  .group-access-actions{grid-column:1/-1;justify-content:stretch}
  .group-permission-button{flex:1}.group-permission-button span{width:100%;justify-content:center}
  .chat-attachment img,.chat-attachment video{max-height:280px}
  .notification-attachment-tools>*{flex:1}.attachment-selection{flex-basis:100%}
  .conversation-composer:has(.conversation-attach-button),.conversation-composer{grid-template-columns:40px minmax(0,1fr) 44px}
  .conversation-attach-button{width:40px;height:40px}
}

.ios-login-brand-single.is-icon .ios-login-icon-primary{width:92px;height:92px;border-radius:25px;object-fit:cover;box-shadow:0 18px 42px rgba(15,30,63,.18);animation:nasqBrandFloat 6s ease-in-out infinite}


/* ==========================================================================
   NASQ v4.4.0 — stable responsive workspace, people directory & conversations
   ========================================================================== */
.content-area{transition:opacity .16s ease,transform .16s ease}
body.panel-loading .content-area{opacity:.58;transform:translateY(2px);pointer-events:none}
@media (prefers-reduced-motion:reduce){
  .content-area,.person-card,.conversation-list-item,.login-v42-ambient,.mobile-brand-orbit{transition:none!important;animation:none!important}
}

/* Desktop conversations stay inside the application shell. */
@media(min-width:641px){
  body.conversation-mode{overflow:auto;background:var(--paper)}
  body.conversation-mode .sidebar{display:flex!important}
  body.conversation-mode .topbar{display:flex!important}
  body.conversation-mode .main-area{margin-right:var(--sidebar)!important;height:auto!important;min-height:100vh!important}
  body.conversation-mode .app-shell{height:auto!important;min-height:100vh!important}
  body.conversation-mode .content-area{
    padding:18px 22px 24px!important;max-width:1700px!important;margin:0 auto!important;
    height:calc(100vh - 72px)!important;min-height:620px!important;overflow:hidden!important;
  }
  body.conversation-mode .conversation-app{
    height:100%!important;min-height:0!important;border:1px solid rgba(118,137,151,.18);
    border-radius:24px;box-shadow:0 18px 48px rgba(15,30,63,.08);overflow:hidden;background:#eef2f3;
  }
  body.conversation-mode .conversation-sidebar{height:100%!important}
  body.conversation-mode .conversation-chat,
  body.conversation-mode .groups-workspace{height:100%!important;min-height:0!important}
  body.conversation-mode .mobile-nav{display:none!important}
  body.conversation-mode .support-fab{display:none!important}
  body.conversation-mode .conversation-exit{display:none!important}
  body.conversation-mode .conversation-chat{border-radius:0!important}
}
@media(min-width:1180px){
  body.conversation-mode .conversation-app{grid-template-columns:minmax(330px,390px) minmax(0,1fr)}
  body.conversation-mode .conversation-messages{padding-inline:clamp(26px,4vw,78px)}
}

/* Cleaner WhatsApp-like message alignment. */
.support-message{flex-direction:row!important;align-items:flex-end!important;justify-content:flex-start!important;gap:7px}
.support-message.mine{justify-content:flex-end!important}
.support-message-stack{display:flex;flex-direction:column;align-items:flex-start;max-width:min(72%,700px)}
.support-message.mine .support-message-stack{align-items:flex-end}
.support-message-stack .conversation-bubble{max-width:100%}
.support-message-avatar{margin-bottom:3px}
.conversation-avatar[role="button"],.group-member-chip[role="button"]{cursor:pointer}
.conversation-avatar[role="button"]:hover{box-shadow:0 0 0 3px rgba(6,129,137,.12)}
.conversation-list-item{border-bottom:1px solid rgba(130,148,160,.10);border-radius:0!important;margin:0 7px;padding:11px 8px!important}
.conversation-list-item:last-child{border-bottom:0}
.conversation-list-item.active{border-radius:14px!important;border-bottom-color:transparent}
.conversation-list .conversation-avatar{width:49px;height:49px;flex-basis:49px;border-radius:15px}
.conversation-item-copy strong{font-size:12px}
.conversation-item-copy small{font-size:9.5px;line-height:1.55}
.conversation-bubble,.group-message-bubble{box-shadow:0 4px 14px rgba(15,30,63,.06),0 1px 2px rgba(15,30,63,.035)!important}
.group-member-chip{transition:background .15s ease,transform .15s ease}
.group-member-chip:hover{background:#f2f7f7;transform:translateY(-1px)}

/* People directory */
.directory-head{align-items:center}
.directory-count-pill{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 8px 24px rgba(15,30,63,.04)}
.directory-count-pill strong{font-size:18px;color:var(--brand)}.directory-count-pill span{font-size:10px;color:var(--muted)}
.directory-toolbar{display:grid;grid-template-columns:minmax(240px,1fr) auto;align-items:center}
.directory-tabs{display:flex;gap:5px;padding:4px;background:#f1f4f5;border-radius:12px}
.directory-tabs a{padding:7px 11px;border-radius:9px;text-decoration:none;font-size:10px;font-weight:700;color:var(--muted)}
.directory-tabs a.active{background:#fff;color:var(--brand);box-shadow:0 3px 10px rgba(15,30,63,.06)}
.people-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.person-card{background:rgba(255,255,255,.94);border:1px solid var(--line);border-radius:20px;padding:14px;box-shadow:0 8px 26px rgba(15,30,63,.045);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;min-width:0}
.person-card:hover{transform:translateY(-2px);box-shadow:0 15px 34px rgba(15,30,63,.075);border-color:#cedcdd}
.person-card-main{width:100%;border:0;background:transparent;padding:0;display:flex;align-items:center;gap:12px;text-align:right;color:inherit;cursor:pointer}
.person-avatar-xl{width:62px;height:62px;flex:0 0 62px;border-radius:19px;overflow:hidden;background:linear-gradient(145deg,var(--brand),var(--navy));color:#fff;display:grid;place-items:center;font-size:20px;font-weight:800;box-shadow:0 8px 18px rgba(6,129,137,.16)}
.person-avatar-xl img{width:100%;height:100%;object-fit:cover}
.person-card-copy{min-width:0;display:flex;flex-direction:column;align-items:flex-start}
.person-card-copy>strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.person-card-copy>small{font-size:9px;color:var(--muted);margin:2px 0 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.person-role{--role-color:#068189;display:inline-flex;align-items:center;gap:5px;color:var(--role-color);font-size:8.5px;font-weight:800;padding:3px 7px;background:color-mix(in srgb,var(--role-color) 8%,white);border-radius:999px}
.person-role img,.person-role .ui-icon{width:14px;height:14px;object-fit:contain}
.contact-toggle{width:100%;margin-top:12px;min-height:38px;border:1px solid #d9e5e5;background:#f7fbfa;border-radius:12px;color:var(--brand);font:inherit;font-size:9.5px;font-weight:800;cursor:pointer;display:grid;place-items:center}
.contact-toggle .contact-added{display:none}.contact-toggle.is-contact{background:#e9f5f0;border-color:#cbe4d9;color:#26735c}.contact-toggle.is-contact .contact-add{display:none}.contact-toggle.is-contact .contact-added{display:inline-flex;align-items:center;gap:5px}
.self-profile-chip{display:block;text-align:center;margin-top:12px;padding:8px;border-radius:12px;background:#f3f5f6;color:var(--muted);font-size:9px}
.directory-empty{grid-column:1/-1}
.public-profile-drawer{width:min(430px,calc(100vw - 22px))}
.public-profile-hero{display:flex;align-items:center;gap:13px;padding:4px 0 16px;border-bottom:1px solid var(--line)}
.public-profile-hero>div{min-width:0}.public-profile-hero h2{margin:6px 0 1px;font-size:18px}.public-profile-hero p{margin:0;color:var(--muted);font-size:10px}
.public-profile-bio{padding:15px 0;line-height:1.9;font-size:11px;color:#4f5d6f;white-space:pre-line}
.profile-achievement-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:14px}
.profile-achievement-grid span{display:flex;flex-direction:column;background:#f7f9fa;border:1px solid #edf0f2;border-radius:13px;padding:11px}
.profile-achievement-grid strong{font-size:19px;color:var(--navy)}.profile-achievement-grid small{font-size:8px;color:var(--muted)}
.public-profile-meta{display:grid;gap:7px;margin-bottom:14px}.public-profile-meta span{display:flex;justify-content:space-between;gap:10px;font-size:9px;color:var(--muted)}.public-profile-meta b{color:var(--ink)}

/* v4.2 login — desktop split, mobile app-like */
.auth-body.auth-v42{min-height:100dvh;background:#eef2f3;overflow:hidden}
.login-v42-shell{min-height:100dvh;display:grid;grid-template-columns:minmax(420px,1.08fr) minmax(400px,.92fr)}
.login-v42-story{position:relative;overflow:hidden;display:flex;align-items:flex-end;padding:clamp(42px,6vw,88px);color:#fff;background:linear-gradient(145deg,var(--navy),#081326 75%);isolation:isolate}
.login-v42-story:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 78% 12%,rgba(6,129,137,.42),transparent 34%),radial-gradient(circle at 12% 84%,rgba(255,255,255,.08),transparent 30%);z-index:-2}
.login-v42-story[data-time-period="morning"],body[data-time-period="morning"] .login-v42-story{background:linear-gradient(145deg,var(--navy),#17364c)}
body[data-time-period="day"] .login-v42-story{background:linear-gradient(145deg,var(--navy),#15374b)}
body[data-time-period="evening"] .login-v42-story{background:linear-gradient(145deg,#172a52,#0c2237)}
body[data-time-period="night"] .login-v42-story{background:linear-gradient(145deg,#081326,var(--navy))}
.login-v42-story-inner{max-width:620px;position:relative;z-index:2}
.login-v42-brandmark{width:min(300px,72%);height:112px;position:relative;display:flex;align-items:center;margin-bottom:42px}
.login-v42-brandmark img{max-width:100%;max-height:100%;object-fit:contain;filter:drop-shadow(0 12px 30px rgba(0,0,0,.18))}
.login-v42-brand-glow{position:absolute;width:110px;height:110px;border-radius:50%;background:rgba(6,129,137,.28);filter:blur(24px);right:4px;animation:nasqFloat 7s ease-in-out infinite}
.login-v42-kicker{display:inline-flex;padding:5px 9px;border:1px solid rgba(255,255,255,.14);border-radius:999px;color:#c6e8e6;font-size:9px;font-weight:700}
.login-v42-story h1{font-size:clamp(40px,5vw,68px);line-height:1.08;margin:16px 0 12px;letter-spacing:-.045em}
.login-v42-story p{font-size:14px;color:#c9d5df;max-width:540px;margin:0 0 22px;line-height:1.9}
.login-v42-story blockquote{margin:0 0 30px;padding:0 14px 0 0;border-right:2px solid var(--brand);color:#f5f8fa;font-size:12px;max-width:540px}
.login-v42-story small{color:#9fb0c1;font-size:9px}
.login-v42-ambient{position:absolute;border-radius:50%;filter:blur(2px);opacity:.32;pointer-events:none;animation:nasqDrift 11s ease-in-out infinite alternate}
.login-v42-ambient.ambient-a{width:330px;height:330px;left:-110px;top:-90px;background:rgba(6,129,137,.55)}
.login-v42-ambient.ambient-b{width:210px;height:210px;right:8%;bottom:-80px;background:rgba(255,255,255,.11);animation-delay:-4s}
.login-v42-panel{display:grid;place-items:center;padding:clamp(26px,5vw,70px);background:linear-gradient(180deg,#f9fbfb,#eef2f3)}
.login-v42-card{width:min(440px,100%);background:rgba(255,255,255,.78);border:1px solid rgba(255,255,255,.92);border-radius:30px;padding:34px;box-shadow:0 30px 80px rgba(15,30,63,.12);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}
.login-v42-heading>span{color:var(--brand);font-size:9px;font-weight:800}.login-v42-heading h2{font-size:27px;margin:4px 0}.login-v42-heading p{margin:0 0 24px;color:var(--muted);font-size:10px}
.login-v42-form{display:flex;flex-direction:column;gap:12px}
.login-v42-field{position:relative;display:flex;align-items:center;height:58px;border:1px solid rgba(126,144,157,.22);border-radius:17px;background:rgba(255,255,255,.76);transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.login-v42-field:focus-within{border-color:var(--brand);box-shadow:0 0 0 4px rgba(6,129,137,.08);transform:translateY(-1px)}
.login-v42-field input{width:100%;height:100%;border:0!important;box-shadow:none!important;background:transparent!important;padding:19px 43px 8px 48px!important;border-radius:inherit}
.login-v42-field-icon{position:absolute;right:15px;color:#718091;display:grid;place-items:center}.login-v42-field-icon .ui-icon{width:18px;height:18px}
.login-v42-label{position:absolute;right:43px;top:18px;color:#778493;font-size:11px;pointer-events:none;transition:.16s ease}
.login-v42-field input:focus+.login-v42-label,.login-v42-field input:not(:placeholder-shown)+.login-v42-label{top:7px;font-size:7.5px;color:var(--brand)}
.login-v42-password button{position:absolute;left:10px;width:36px;height:36px;border:0;background:transparent;color:#788595;display:grid;place-items:center;cursor:pointer}
.login-v42-submit{height:54px;margin-top:4px;border:0;border-radius:17px;background:linear-gradient(135deg,var(--brand),#046b72);color:#fff;font:inherit;font-weight:800;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;box-shadow:0 13px 28px rgba(6,129,137,.20);transition:transform .16s ease,box-shadow .16s ease}
.login-v42-submit:hover{transform:translateY(-1px);box-shadow:0 17px 34px rgba(6,129,137,.24)}.login-v42-submit .ui-icon{width:18px}
.login-v42-mobile-brand,.login-v42-mobile-home{display:none}
@keyframes nasqFloat{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(-6px,8px,0) scale(1.05)}}
@keyframes nasqDrift{from{transform:translate3d(0,0,0)}to{transform:translate3d(18px,-22px,0)}}

@media(max-width:980px){
  .people-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .login-v42-shell{grid-template-columns:1fr}.login-v42-story{display:none}
  .login-v42-panel{min-height:100dvh;position:relative;overflow:hidden;padding:max(34px,env(safe-area-inset-top)) 18px max(18px,env(safe-area-inset-bottom));align-content:center;background:linear-gradient(165deg,var(--navy),#0b2134)}
  .login-v42-panel:before,.login-v42-panel:after{content:"";position:absolute;border-radius:50%;pointer-events:none;filter:blur(1px);opacity:.42;animation:nasqDrift 9s ease-in-out infinite alternate}
  .login-v42-panel:before{width:280px;height:280px;right:-110px;top:-70px;background:rgba(6,129,137,.55)}
  .login-v42-panel:after{width:190px;height:190px;left:-70px;bottom:4%;background:rgba(255,255,255,.12);animation-delay:-3s}
  .login-v42-mobile-brand{display:flex;position:relative;z-index:2;flex-direction:column;align-items:center;gap:12px;margin-bottom:24px;color:#fff}
  .login-v42-mobile-brand img{width:min(180px,52vw);height:78px;object-fit:contain;position:relative;z-index:2;filter:drop-shadow(0 10px 22px rgba(0,0,0,.18))}
  .login-v42-mobile-brand>span:last-child{font-size:13px;font-weight:700}
  .mobile-brand-orbit{position:absolute;top:-30px;width:130px;height:130px;border:1px solid rgba(255,255,255,.12);border-radius:50%;animation:nasqFloat 6s ease-in-out infinite}
  .login-v42-card{position:relative;z-index:2;width:min(430px,100%);padding:28px 22px 24px;border-radius:28px;background:rgba(255,255,255,.94);box-shadow:0 24px 70px rgba(1,8,20,.28)}
  .login-v42-heading h2{font-size:25px}
  .login-v42-mobile-home{display:block;position:relative;z-index:2;width:110px;height:4px;border-radius:99px;background:rgba(255,255,255,.35);margin:26px auto 0}
}
@media(max-width:640px){
  .people-grid{grid-template-columns:1fr;gap:10px}
  .directory-head{align-items:flex-start}.directory-count-pill{display:none}
  .directory-toolbar{grid-template-columns:1fr;gap:8px}.directory-tabs{width:100%}.directory-tabs a{flex:1;text-align:center}
  .person-card{padding:12px;border-radius:17px}.person-avatar-xl{width:56px;height:56px;flex-basis:56px;border-radius:17px}
  .public-profile-drawer{width:100%;max-width:none;border-radius:24px 24px 0 0}
  body.conversation-mode .content-area{padding:0!important}
  .conversation-list-item{padding:11px 9px!important;margin:0 5px}
  .conversation-list .conversation-avatar{width:52px;height:52px;flex-basis:52px;border-radius:50%}
  .conversation-message{gap:6px}.conversation-avatar.tiny{width:30px;height:30px;flex-basis:30px;border-radius:50%}
  .support-message-stack{max-width:82%}
  .conversation-bubble{max-width:84%!important;border-radius:18px 18px 18px 6px!important;padding:8px 10px 6px!important}
  .conversation-message.mine .conversation-bubble{border-radius:18px 18px 6px 18px!important}
  .conversation-chat-head{backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
  .login-v42-panel{padding-inline:14px}.login-v42-card{padding:25px 18px 20px}.login-v42-field{height:56px}
}


/* v4.3.0 — notification and conversation mute controls */
.group-member-chip{
  display:inline-flex;
  align-items:center;
  gap:.38rem;
}
.group-member-profile{
  display:inline-flex;
  align-items:center;
  gap:.42rem;
  min-width:0;
  border:0;
  background:transparent;
  color:inherit;
  padding:0;
  font:inherit;
  cursor:pointer;
}
.group-user-mute,
.group-mute-button,
.notification-delete{
  width:2.15rem;
  height:2.15rem;
  flex:0 0 2.15rem;
  display:inline-grid;
  place-items:center;
  border:1px solid var(--border, #d7dce4);
  border-color:color-mix(in srgb, var(--border, #d7dce4) 82%, transparent);
  border-radius:999px;
  background:var(--surface, #fff);
  background:color-mix(in srgb, var(--surface, #fff) 90%, transparent);
  color:var(--muted, #667085);
  cursor:pointer;
  transition:transform .16s ease, background-color .16s ease, color .16s ease, border-color .16s ease;
}
.group-user-mute:hover,
.group-mute-button:hover,
.notification-delete:hover{
  transform:translateY(-1px);
  color:var(--primary, #0f1e3f);
  border-color:color-mix(in srgb, var(--primary, #0f1e3f) 28%, var(--border, #d7dce4));
}
.group-user-mute.is-muted,
.group-mute-button.is-muted,
.group-mute-button[data-muted="1"]{
  color:#b42318;
  background:rgba(180,35,24,.08);
  border-color:rgba(180,35,24,.18);
}
.group-muted-indicator{
  display:inline-grid;
  place-items:center;
  min-width:1.35rem;
  height:1.35rem;
  margin-inline-start:.28rem;
  border-radius:999px;
  font-size:.72rem;
  background:rgba(102,112,133,.09);
  color:#667085;
}
.notification-delete{
  color:#9b1c1c;
  background:rgba(155,28,28,.045);
}
@media (max-width: 760px){
  .group-user-mute,
  .group-mute-button,
  .notification-delete{
    width:2.45rem;
    height:2.45rem;
    flex-basis:2.45rem;
  }
}
@media (prefers-reduced-motion: reduce){
  .group-user-mute,
  .group-mute-button,
  .notification-delete{
    transition:none;
  }
}


/* ==========================================================================
   NASQ v4.4.0 — refined login, resilient chat composer, motion & mobile polish
   ========================================================================== */
.auth-v44{min-height:100dvh;background:#eef2f5;color:var(--ink);overflow-x:hidden}
.login-v44-shell{min-height:100dvh;display:grid;grid-template-columns:minmax(480px,1.08fr) minmax(420px,.92fr);background:linear-gradient(180deg,#f7f9fb,#eef2f5)}
.login-v44-visual{position:relative;overflow:hidden;isolation:isolate;display:flex;min-height:100dvh;padding:clamp(42px,6vw,88px);background:linear-gradient(145deg,var(--navy) 0%,#102b4a 54%,#0a6e76 130%);color:#fff}
.login-v44-visual:before{content:"";position:absolute;inset:0;z-index:-3;background:
  radial-gradient(circle at 78% 18%,rgba(255,255,255,.11),transparent 24%),
  radial-gradient(circle at 14% 82%,rgba(6,129,137,.38),transparent 28%)}
.login-v44-grid{position:absolute;inset:0;z-index:-2;opacity:.13;background-image:
  linear-gradient(rgba(255,255,255,.22) 1px,transparent 1px),
  linear-gradient(90deg,rgba(255,255,255,.22) 1px,transparent 1px);
  background-size:46px 46px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.8),transparent 86%)}
.login-v44-orb{position:absolute;border-radius:50%;pointer-events:none;filter:blur(1px);opacity:.54;z-index:-1;animation:nasqV44Orbit 13s ease-in-out infinite alternate}
.login-v44-orb.orb-one{width:320px;height:320px;left:-120px;top:-90px;background:linear-gradient(145deg,rgba(6,129,137,.78),rgba(255,255,255,.10))}
.login-v44-orb.orb-two{width:210px;height:210px;right:8%;bottom:-70px;background:rgba(255,255,255,.10);animation-delay:-5s}
@keyframes nasqV44Orbit{from{transform:translate3d(0,0,0) rotate(0)}to{transform:translate3d(24px,18px,0) rotate(8deg)}}
.login-v44-visual-content{width:100%;max-width:720px;display:flex;flex-direction:column;justify-content:space-between;position:relative;z-index:1}
.login-v44-brand{display:flex;align-items:center;gap:14px}
.login-v44-logo-wrap{width:74px;height:74px;display:grid;place-items:center;border-radius:23px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.20);box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 16px 40px rgba(0,0,0,.16);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);overflow:hidden}
.login-v44-logo-wrap img{width:86%;height:86%;object-fit:contain;filter:drop-shadow(0 8px 18px rgba(0,0,0,.12))}
.login-v44-brand strong{display:block;font-size:18px;letter-spacing:-.02em}.login-v44-brand small{display:block;color:#c8d7e3;font-size:9px;margin-top:3px}
.login-v44-message{max-width:640px;padding-block:64px}
.login-v44-eyebrow{display:inline-flex;align-items:center;gap:7px;min-height:30px;padding:0 12px;border-radius:999px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.14);font-size:9px;font-weight:800;color:#d7f1ef}
.login-v44-message h1{font-size:clamp(42px,5.6vw,76px);line-height:1.06;letter-spacing:-.055em;margin:18px 0 16px;max-width:660px}
.login-v44-message p{font-size:14px;line-height:2;color:#d5e1e9;max-width:580px;margin:0}
.login-v44-quote{margin-top:24px;max-width:560px;padding:15px 17px;border-radius:16px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);font-size:10px;line-height:1.9;color:#f7fbfc;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.login-v44-progress{display:flex;gap:7px;direction:ltr}.login-v44-progress span{width:34px;height:4px;border-radius:999px;background:rgba(255,255,255,.20)}.login-v44-progress span:first-child{width:72px;background:var(--brand)}
.login-v44-access{position:relative;display:grid;place-items:center;padding:clamp(28px,5vw,70px);min-height:100dvh;background:
  radial-gradient(circle at 84% 10%,color-mix(in srgb,var(--brand) 8%,transparent),transparent 28%),
  linear-gradient(180deg,#f9fbfc,#eef2f5)}
.login-v44-card{width:min(460px,100%);padding:38px 36px 32px;border-radius:32px;background:rgba(255,255,255,.84);border:1px solid rgba(255,255,255,.95);box-shadow:0 30px 85px rgba(15,30,63,.12),inset 0 1px 0 rgba(255,255,255,.92);-webkit-backdrop-filter:blur(24px) saturate(145%);backdrop-filter:blur(24px) saturate(145%)}
.login-v44-heading>span{font-size:8.5px;font-weight:900;color:var(--brand);letter-spacing:.01em}
.login-v44-heading h2{font-size:29px;letter-spacing:-.035em;margin:6px 0 7px;color:var(--navy)}
.login-v44-heading p{font-size:10px;color:var(--muted);line-height:1.8;margin:0 0 24px}
.login-v44-form{display:flex;flex-direction:column;gap:12px}
.login-v44-field{position:relative;display:flex;align-items:center;gap:11px;min-height:64px;padding:8px 12px;border-radius:19px;background:rgba(245,248,249,.94);border:1px solid rgba(117,136,151,.15);box-shadow:inset 0 1px 0 rgba(255,255,255,.95);transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,background .18s ease}
.login-v44-field:hover{background:#fff}.login-v44-field:focus-within{transform:translateY(-1px);background:#fff;border-color:color-mix(in srgb,var(--brand) 42%,transparent);box-shadow:0 0 0 4px color-mix(in srgb,var(--brand) 8%,transparent),0 12px 28px rgba(15,30,63,.06)}
.login-v44-field-icon{width:40px;height:40px;flex:0 0 40px;border-radius:13px;display:grid;place-items:center;background:#fff;color:var(--brand);box-shadow:0 5px 14px rgba(15,30,63,.06)}
.login-v44-field-icon .ui-icon{width:18px}
.login-v44-input-wrap{display:flex;flex-direction:column;min-width:0;flex:1}.login-v44-input-wrap small{font-size:7.5px;color:#7b8795;margin-bottom:1px}.login-v44-input-wrap input{width:100%;height:28px!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;font:inherit;font-size:11px!important;color:var(--navy)}
.login-v44-input-wrap input::placeholder{color:#a3adb7}
.login-v44-password>button{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;border:0;border-radius:12px;background:transparent;color:#7d8996;cursor:pointer}.login-v44-password>button:hover{background:#fff;color:var(--brand)}
.login-v44-submit{min-height:56px;margin-top:4px;border:0;border-radius:18px;padding:0 18px;background:linear-gradient(135deg,var(--brand),color-mix(in srgb,var(--brand) 68%,var(--navy)));color:#fff;display:flex;align-items:center;justify-content:center;gap:9px;font:inherit;font-size:11px;font-weight:900;cursor:pointer;box-shadow:0 14px 30px color-mix(in srgb,var(--brand) 24%,transparent);transition:transform .16s ease,box-shadow .16s ease}
.login-v44-submit:hover{transform:translateY(-2px);box-shadow:0 18px 38px color-mix(in srgb,var(--brand) 30%,transparent)}.login-v44-submit:active{transform:translateY(0) scale(.985)}
.login-v44-submit .ui-icon{width:18px}.login-v44-trust{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:16px;font-size:7.5px;color:#8793a0}.login-v44-trust span{width:7px;height:7px;border-radius:50%;background:#39a47c;box-shadow:0 0 0 4px #39a47c14}
.login-v44-mobile-brand,.login-v44-mobile-copy{display:none}

/* Composer: flex is more robust than :has/grid across Safari/Firefox/Chromium. */
.conversation-composer{display:flex!important;grid-template-columns:none!important;align-items:flex-end!important;gap:8px!important;width:min(960px,100%)!important}
.conversation-composer textarea{flex:1 1 auto!important;min-width:0!important;width:auto!important;margin:0!important;line-height:1.55!important}
.conversation-composer .conversation-attach-button{flex:0 0 42px!important}
.conversation-composer .conversation-send-button{flex:0 0 46px!important;display:grid!important;visibility:visible!important;opacity:1!important}
.support-composer.conversation-composer{padding:0!important;background:transparent!important;border:0!important}
.conversation-composer-wrap{position:relative;z-index:8}
.support-live-state{pointer-events:none}
@supports not (color:color-mix(in srgb,#000 50%,#fff)){
  .login-v44-submit{background:var(--brand)}
  .login-v44-field:focus-within{border-color:var(--brand)}
}
@media(max-width:760px){
  .login-v44-shell{display:block;min-height:100dvh;background:linear-gradient(160deg,var(--navy),#0b263c 62%,#0a6f77 150%)}
  .login-v44-visual{display:none}
  .login-v44-access{display:flex;flex-direction:column;justify-content:center;min-height:100dvh;padding:max(28px,env(safe-area-inset-top)) 16px max(16px,env(safe-area-inset-bottom));background:transparent;overflow:hidden}
  .login-v44-access:before,.login-v44-access:after{content:"";position:absolute;border-radius:50%;pointer-events:none;animation:nasqV44Orbit 11s ease-in-out infinite alternate}
  .login-v44-access:before{width:300px;height:300px;right:-140px;top:-100px;background:rgba(6,129,137,.42)}
  .login-v44-access:after{width:220px;height:220px;left:-110px;bottom:-80px;background:rgba(255,255,255,.08);animation-delay:-4s}
  .login-v44-mobile-brand{display:flex;position:relative;z-index:2;align-items:center;gap:11px;width:min(430px,100%);margin:0 auto 18px;color:#fff;padding:0 4px}
  .login-v44-mobile-brand .login-v44-logo-wrap{width:60px;height:60px;border-radius:19px}
  .login-v44-mobile-brand strong{display:block;font-size:16px}.login-v44-mobile-brand small{display:block;font-size:8px;color:#c6d7e4;margin-top:2px}
  .login-v44-card{position:relative;z-index:2;width:min(430px,100%);padding:27px 20px 23px;border-radius:28px;background:rgba(255,255,255,.96);box-shadow:0 30px 80px rgba(2,10,22,.30);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}
  .login-v44-heading h2{font-size:25px}.login-v44-heading p{font-size:9px;margin-bottom:20px}
  .login-v44-field{min-height:60px;border-radius:17px}.login-v44-field-icon{width:38px;height:38px;flex-basis:38px;border-radius:12px}
  .login-v44-submit{min-height:54px;border-radius:17px}
  .login-v44-mobile-copy{display:flex;position:relative;z-index:2;width:min(430px,100%);margin:17px auto 0;padding:0 8px;flex-direction:column;gap:5px;color:#fff}
  .login-v44-mobile-copy strong{font-size:11px}.login-v44-mobile-copy span{font-size:8px;line-height:1.7;color:#c8d8e5}
  .conversation-composer-wrap{padding:7px 8px max(8px,env(safe-area-inset-bottom))!important}
  .conversation-composer{gap:6px!important;width:100%!important}
  .conversation-composer .conversation-attach-button{width:42px!important;height:42px!important;flex-basis:42px!important;border-radius:14px!important}
  .conversation-composer textarea{min-height:44px!important;max-height:110px!important;padding:11px 13px!important;border-radius:16px!important}
  .conversation-composer .conversation-send-button{width:44px!important;height:44px!important;flex-basis:44px!important;border-radius:15px!important}
  .conversation-messages{padding-bottom:18px!important}
}
@media(min-width:761px) and (max-width:1100px){
  .login-v44-shell{grid-template-columns:minmax(380px,.9fr) minmax(400px,1.1fr)}
  .login-v44-visual{padding:42px}.login-v44-message h1{font-size:44px}.login-v44-message p{font-size:12px}
}
@media(prefers-reduced-motion:reduce){
  .login-v44-orb,.login-v44-access:before,.login-v44-access:after{animation:none!important}
  .login-v44-submit,.login-v44-field{transition:none!important}
}

/* v4.4 contact requests + install helper */
.directory-request-count{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;margin-inline-start:5px;border-radius:999px;background:var(--brand);color:#fff;font-size:7.5px}
.contact-toggle.is-pending{background:#f4f7f8!important;border-color:#d8e1e5!important;color:#68758a!important}
.contact-request-actions{display:grid;grid-template-columns:1fr auto;gap:7px;margin-top:10px}
.contact-request-accept,.contact-request-reject{min-height:38px;border-radius:12px;border:1px solid rgba(120,140,155,.16);font:inherit;font-size:8.5px;font-weight:850;cursor:pointer}
.contact-request-accept{background:linear-gradient(135deg,var(--brand),color-mix(in srgb,var(--brand) 72%,var(--navy)));color:#fff;border-color:transparent}
.contact-request-reject{background:#fff;color:#68758a;padding-inline:13px}
.contact-request-actions.drawer-actions{margin-top:14px}
.install-guide-backdrop{position:fixed;inset:0;z-index:10020;display:grid;place-items:center;padding:18px;background:rgba(6,13,28,.50);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.install-guide{position:relative;width:min(420px,100%);padding:28px 24px 22px;border-radius:26px;background:rgba(255,255,255,.97);box-shadow:0 30px 90px rgba(0,0,0,.22);text-align:center;border:1px solid rgba(255,255,255,.9)}
.install-guide-close{position:absolute;left:12px;top:12px;width:34px;height:34px;border:0;border-radius:11px;background:#f2f5f6;color:#5c6878;font-size:20px;cursor:pointer}
.install-guide-icon{width:56px;height:56px;margin:0 auto 12px;display:grid;place-items:center;border-radius:17px;background:color-mix(in srgb,var(--brand) 11%,#fff);color:var(--brand);font-size:26px;font-weight:900}
.install-guide h2{font-size:18px;margin:0 0 8px;color:var(--navy)}.install-guide p{font-size:10px;line-height:1.9;color:var(--muted);margin:0 0 18px}
@media(max-width:640px){
  .install-guide-backdrop{align-items:end;padding:10px}
  .install-guide{border-radius:26px 26px 20px 20px;padding:28px 20px 20px}
}

.login-v44-install{width:100%;margin-top:10px;min-height:40px;border:1px solid rgba(120,139,154,.14);border-radius:13px;background:rgba(247,249,250,.76);color:#657286;font:inherit;font-size:8.5px;font-weight:800;cursor:pointer}
.login-v44-install:hover{background:#fff;color:var(--brand);border-color:color-mix(in srgb,var(--brand) 25%,transparent)}
.app-standalone .login-v44-install{display:none!important}


/* ==========================================================================
   NASQ v4.6.0 — stable desktop groups + keyboard-safe mobile composer
   ========================================================================== */
@media (min-width:761px){
  body.route-groups.conversation-mode .groups-conversation-app{
    grid-template-columns:minmax(300px,360px) minmax(0,1fr)!important;
    min-width:0!important;
  }
  body.route-groups.conversation-mode .groups-workspace{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:minmax(0,1fr)!important;
    gap:0!important;
    width:100%!important;
    height:100%!important;
    min-width:0!important;
    min-height:0!important;
    overflow:hidden!important;
  }
  body.route-groups.conversation-mode .groups-workspace .group-chat-panel,
  body.route-groups.conversation-mode .groups-workspace .group-empty-panel{
    grid-column:1!important;
    grid-row:1!important;
    width:100%!important;
    height:100%!important;
    min-width:0!important;
    min-height:0!important;
    overflow:hidden!important;
  }
  body.route-groups.conversation-mode .group-chat-panel.conversation-chat{
    grid-template-rows:auto auto minmax(0,1fr) auto!important;
  }
  body.route-groups.conversation-mode .group-messages{
    min-width:0!important;
    min-height:0!important;
    overflow:auto!important;
  }
  body.route-groups.conversation-mode .group-composer-wrap{
    min-width:0!important;
    width:100%!important;
  }
}

@media (max-width:760px){
  body.conversation-mode,
  body.conversation-mode .app-shell,
  body.conversation-mode .main-area,
  body.conversation-mode .content-area,
  body.conversation-mode .conversation-app,
  body.conversation-mode .conversation-sidebar,
  body.conversation-mode .conversation-chat,
  body.conversation-mode .groups-workspace,
  body.conversation-mode .groups-workspace .group-chat-panel,
  body.conversation-mode .groups-workspace .group-empty-panel{
    height:var(--nasq-visual-height,100dvh)!important;
    max-height:var(--nasq-visual-height,100dvh)!important;
    min-height:0!important;
  }

  body.conversation-mode .groups-workspace{
    display:block!important;
    width:100%!important;
    min-width:0!important;
  }

  .conversation-composer-wrap{
    padding:7px 8px max(8px,min(env(safe-area-inset-bottom),18px))!important;
    background:rgba(248,250,251,.97)!important;
    border-top:1px solid rgba(111,132,147,.13)!important;
    box-shadow:0 -8px 26px rgba(15,30,63,.045)!important;
  }

  .conversation-composer{
    display:flex!important;
    align-items:flex-end!important;
    gap:7px!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
  }

  .conversation-composer textarea{
    flex:1 1 auto!important;
    width:100%!important;
    min-width:0!important;
    min-height:46px!important;
    max-height:112px!important;
    padding:11px 14px!important;
    border-radius:18px!important;
    font-size:16px!important; /* prevents iOS focus zoom */
    line-height:1.45!important;
    background:#fff!important;
    border:1px solid rgba(105,126,143,.16)!important;
    box-shadow:0 3px 12px rgba(15,30,63,.045)!important;
  }

  .conversation-composer .conversation-attach-button{
    flex:0 0 44px!important;
    width:44px!important;
    height:44px!important;
    align-self:flex-end!important;
    border-radius:15px!important;
  }

  .conversation-composer .conversation-send-button{
    flex:0 0 46px!important;
    width:46px!important;
    height:46px!important;
    align-self:flex-end!important;
    display:grid!important;
    place-items:center!important;
    border-radius:16px!important;
    margin:0!important;
  }

  body.nasq-keyboard-open .conversation-composer-wrap{
    padding-bottom:6px!important;
  }

  body.nasq-keyboard-open .conversation-chat-head{
    padding-top:7px!important;
  }

  .conversation-messages,
  .group-messages{
    overscroll-behavior:contain!important;
    min-height:0!important;
  }
}

.copy-success{
  color:#26735c!important;
  border-color:#b9dfcf!important;
  background:#eaf7f1!important;
}


/* ===== NASQ v4.6.0 — visual polish, direct messaging & performance ===== */
:root{
  --motion-fast:140ms;
  --motion-base:220ms;
  --surface-elevated:rgba(255,255,255,.92);
}
@media(prefers-reduced-motion:no-preference){
  .panel,.stat-card,.person-card,.appointment-card,.task-card,.conversation-list-item,.button,.icon-button,.nav-link{
    transition:transform var(--motion-base) ease,box-shadow var(--motion-base) ease,border-color var(--motion-base) ease,background-color var(--motion-fast) ease,color var(--motion-fast) ease;
  }
  .panel:hover,.person-card:hover,.appointment-card:hover,.task-card:hover{
    transform:translateY(-2px);
    box-shadow:0 16px 34px rgba(15,30,63,.075);
  }
  .conversation-message{animation:nasqMessageIn .18s ease both}
  @keyframes nasqMessageIn{from{opacity:0;transform:translateY(5px) scale(.992)}to{opacity:1;transform:none}}
}
@media(prefers-reduced-motion:reduce){
  *{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
}
.person-card,.appointment-card,.task-card,.conversation-list-item{content-visibility:auto;contain-intrinsic-size:80px}
.panel,.data-panel,.toolbar,.person-card,.settings-section-card{
  border-color:color-mix(in srgb,var(--line) 82%,transparent);
}
.topbar{
  background:color-mix(in srgb,#fff 86%,transparent);
  -webkit-backdrop-filter:blur(18px) saturate(145%);
  backdrop-filter:blur(18px) saturate(145%);
}
.button.primary,.quick-create,.conversation-send-button{
  box-shadow:0 10px 24px color-mix(in srgb,var(--brand) 22%,transparent);
}
.input,select,textarea,input[type=text],input[type=email],input[type=password],input[type=url],input[type=number],input[type=datetime-local],input[type=date],input[type=search]{
  min-height:42px;
}
.person-card-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:7px;padding:0 12px 12px}
.contact-message-button{
  min-height:38px;border-radius:12px;text-decoration:none;display:flex;align-items:center;justify-content:center;gap:6px;
  background:color-mix(in srgb,var(--brand) 10%,#fff);color:var(--brand);font-size:10px;font-weight:800;
  border:1px solid color-mix(in srgb,var(--brand) 16%,transparent)
}
.contact-message-button:hover{background:color-mix(in srgb,var(--brand) 15%,#fff)}
.contact-message-button .ui-icon{width:15px}
.person-card-actions .contact-toggle{width:100%;margin:0}

/* ترتيب مستخدمي محرر المجموعات */
.group-user-row{
  display:grid;grid-template-columns:42px minmax(180px,1fr) auto;align-items:center;gap:10px;padding:9px 10px;
}
.group-user-copy{min-width:0}
.group-user-copy>strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.group-user-copy>small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.group-user-meta,.direct-contact-meta{display:flex;gap:5px;align-items:center;flex-wrap:wrap;margin-top:4px}
.group-user-meta i,.direct-contact-meta i{
  font-style:normal;font-size:7.5px;font-weight:800;padding:3px 6px;border-radius:999px;
  background:color-mix(in srgb,var(--role-color,#068189) 10%,#fff);color:var(--role-color,#068189);
  border:1px solid color-mix(in srgb,var(--role-color,#068189) 16%,transparent)
}
.group-user-meta em,.direct-contact-meta em{
  font-style:normal;font-size:7.5px;color:var(--muted);padding:3px 6px;border-radius:999px;background:#F1F4F6;
}

/* الرسائل الخاصة */
.direct-workspace{height:100dvh;min-width:0;background:#E9EFF0}
.direct-workspace .direct-chat-panel{height:100dvh}
.direct-peer-profile{
  flex:1;min-width:0;display:flex;align-items:center;gap:10px;border:0;background:transparent;padding:0;text-align:right;color:inherit;cursor:pointer
}
.direct-peer-profile .conversation-chat-identity{display:block}
.direct-peer-profile .conversation-chat-identity h2{margin:0}
.direct-contact-copy{min-width:0}
.direct-contact-meta{margin-top:5px;flex-wrap:nowrap;overflow:hidden}
.direct-contact-meta i,.direct-contact-meta em{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.direct-message .direct-bubble>strong{display:block;font-size:8.5px;color:var(--brand);margin:0 0 3px}
.direct-message .direct-bubble>p{margin:0;font-size:12px;line-height:1.72;overflow-wrap:anywhere}
.direct-message .role-inline-badge{margin-inline-start:4px}
.direct-empty-panel{height:100dvh;background:#E9EFF0;padding:24px}
.direct-empty-panel small,.conversation-list-empty small{max-width:260px;line-height:1.7}
.direct-contact-item.active .direct-contact-meta em{background:rgba(255,255,255,.72)}
.direct-composer textarea{scrollbar-width:thin}
.direct-unread{box-shadow:0 4px 12px color-mix(in srgb,var(--brand) 24%,transparent)}

/* تحميل أسرع للقوائم الطويلة دون التأثير على عناصر المحادثة المرئية */
.people-grid,.conversation-list,.data-table{contain:layout style}
img{image-rendering:auto}
img[loading="lazy"]{content-visibility:auto}

@media(max-width:900px){
  .group-user-row{grid-template-columns:38px minmax(0,1fr)}
  .group-access-actions{grid-column:1/-1;justify-content:flex-start;padding-inline-start:48px}
}
@media(max-width:640px){
  .direct-conversation-app{grid-template-columns:1fr}
  .direct-workspace{grid-column:1;grid-row:1;width:100%;height:100dvh;display:none}
  .direct-conversation-app.has-active-peer .direct-list-panel{display:none}
  .direct-conversation-app.has-active-peer .direct-workspace{display:block}
  .direct-workspace:not(.mobile-chat-open){display:none!important}
  .direct-workspace.mobile-chat-open{display:block!important}
  .direct-peer-profile{gap:8px}
  .direct-chat-head .conversation-exit{display:none}
  .direct-contact-meta{display:flex}
  .person-card-actions{grid-template-columns:1fr 1fr}
  .group-user-row{padding:8px}
  .group-access-actions{padding-inline-start:0;display:grid;grid-template-columns:repeat(3,1fr);width:100%}
  .group-permission-button span{justify-content:center}
}
@media(max-width:430px){
  .person-card-actions{grid-template-columns:1fr}
  .direct-contact-meta em{display:none}
}


/* === NASQ 4.8 Communication Pro === */
:root{
  --chat-surface:rgba(255,255,255,.92);
  --chat-line:rgba(93,115,132,.14);
  --chat-shadow:0 18px 55px rgba(15,30,63,.10);
}
.direct-workspace{
  display:grid;
  grid-template-columns:minmax(0,1fr) 280px;
  overflow:hidden;
}
.direct-details-panel{
  height:100dvh;padding:34px 20px;background:rgba(251,253,253,.94);
  border-right:1px solid var(--chat-line);display:flex;flex-direction:column;align-items:center;
  text-align:center;overflow:auto;animation:nasqPanelIn .35s cubic-bezier(.2,.8,.2,1) both;
}
.conversation-avatar.xlarge{width:88px;height:88px;border-radius:28px;font-size:28px}
.direct-details-panel h3{margin:16px 0 5px;font-size:17px}
.direct-details-panel p{margin:0;color:var(--muted);font-size:11px}
.direct-details-panel>span{margin-top:8px;padding:5px 9px;border-radius:999px;background:rgba(6,129,137,.08);color:var(--brand);font-size:9px}
.details-actions{width:100%;display:grid;gap:8px;margin-top:24px}
.details-actions form,.details-actions .button{width:100%}
.chat-presence-label{display:inline-flex!important;align-items:center;gap:5px;margin-top:3px!important;color:var(--muted)!important}
.chat-presence-label:before{content:"";width:6px;height:6px;border-radius:50%;background:#A0A9B4}
.chat-presence-label.online{color:#26735C!important}.chat-presence-label.online:before{background:#36A87A;box-shadow:0 0 0 3px rgba(54,168,122,.12)}
.conversation-avatar{position:relative}
.presence-dot{position:absolute;left:0;bottom:0;width:11px;height:11px;border-radius:50%;background:#B7C0C8;border:2px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.14)}
.presence-dot.online{background:#35AA79}

.conversation-composer-wrap{
  position:relative;z-index:8!important;
  padding-bottom:max(10px,env(safe-area-inset-bottom));
  box-shadow:0 -8px 30px rgba(15,30,63,.05);
}
.conversation-composer{
  grid-template-columns:44px minmax(0,1fr) 48px!important;
  align-items:end!important;
}
.conversation-composer textarea{
  width:100%!important;min-width:0!important;line-height:1.55!important;
  transition:height .12s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.conversation-composer textarea:focus{
  border-color:color-mix(in srgb,var(--brand) 35%,transparent)!important;
  box-shadow:0 0 0 4px color-mix(in srgb,var(--brand) 8%,transparent)!important;
  background:#fff!important;
}
.conversation-attach-button{
  width:44px;height:46px;border-radius:15px;display:grid;place-items:center;cursor:pointer;
  background:#EEF3F4;color:var(--brand);border:1px solid rgba(115,136,150,.12);
  transition:transform .16s ease,background .16s ease,color .16s ease;
}
.conversation-attach-button:hover{transform:translateY(-1px);background:color-mix(in srgb,var(--brand) 10%,#fff)}
.conversation-attach-button input{display:none}
.conversation-attach-button .ui-icon{width:18px}
.composer-file-preview{
  grid-column:1/-1;display:flex;align-items:center;gap:8px;min-height:34px;padding:6px 9px;margin-top:2px;
  border-radius:12px;background:rgba(6,129,137,.07);color:var(--ink);font-size:9px;
}
.composer-file-preview[hidden]{display:none!important}
.composer-file-preview span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}
.composer-file-preview small{color:var(--muted)}
.composer-file-preview button{border:0;background:transparent;font-size:18px;color:var(--muted);cursor:pointer}
.conversation-composer.is-sending{opacity:.78}
.conversation-send-button:disabled{opacity:.55;cursor:wait}

.chat-attachment{
  margin-top:7px;display:flex;align-items:center;gap:8px;text-decoration:none;color:inherit;
  border-radius:13px;background:rgba(255,255,255,.62);border:1px solid rgba(109,129,144,.13);overflow:hidden;
}
.chat-attachment.file{padding:9px 10px}
.chat-attachment.file>span:nth-child(2){min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chat-attachment.file small{font-size:8px;color:var(--muted)}
.chat-file-icon{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;background:rgba(6,129,137,.10);color:var(--brand);font-weight:800}
.chat-attachment.image{display:block;padding:4px}
.chat-attachment.image img{display:block;max-width:320px;max-height:260px;width:100%;object-fit:cover;border-radius:10px}
.chat-attachment.image span{display:block;padding:5px 7px 3px;font-size:8px;color:var(--muted)}
.message-state{font-weight:700;color:color-mix(in srgb,var(--brand) 76%,var(--muted))}

.typing-indicator{
  position:absolute;right:16px;bottom:calc(100% + 5px);display:flex;align-items:center;gap:3px;
  padding:6px 9px;border-radius:999px;background:rgba(255,255,255,.93);box-shadow:0 8px 24px rgba(15,30,63,.08);
  color:var(--muted);font-size:8px;animation:nasqFloatIn .22s ease both;
}
.typing-indicator[hidden]{display:none!important}
.typing-indicator>span{width:4px;height:4px;border-radius:50%;background:var(--brand);animation:nasqTyping 1s infinite ease-in-out}
.typing-indicator>span:nth-child(2){animation-delay:.12s}.typing-indicator>span:nth-child(3){animation-delay:.24s}
.typing-indicator b{margin-inline-start:3px;font-weight:700}

.conversation-message{animation:nasqMessageIn .25s cubic-bezier(.2,.8,.2,1) both;transform-origin:bottom left}
.conversation-message.mine{transform-origin:bottom right}
.conversation-list-item{will-change:transform}
.conversation-list-item:hover{transform:translateX(-2px)}
.conversation-send-button{position:relative;overflow:hidden}
.conversation-send-button:after{
  content:"";position:absolute;inset:0;background:radial-gradient(circle at center,rgba(255,255,255,.30),transparent 65%);
  opacity:0;transform:scale(.4);transition:.22s;
}
.conversation-send-button:active:after{opacity:1;transform:scale(1.15)}

@keyframes nasqMessageIn{from{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:none}}
@keyframes nasqPanelIn{from{opacity:0;transform:translateX(-14px)}to{opacity:1;transform:none}}
@keyframes nasqFloatIn{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
@keyframes nasqTyping{0%,60%,100%{transform:translateY(0);opacity:.45}30%{transform:translateY(-3px);opacity:1}}

@media(max-width:1180px){
  .direct-workspace{grid-template-columns:minmax(0,1fr)}
  .direct-details-panel{display:none}
}
@media(max-width:640px){
  .conversation-app,.conversation-sidebar,.conversation-chat,.direct-workspace,.support-chat-card{height:100dvh!important;max-height:100dvh!important}
  .conversation-chat{grid-template-rows:auto minmax(0,1fr) auto!important}
  .conversation-chat-head{min-height:62px;padding-inline:10px}
  .conversation-messages{padding:14px 10px 12px}
  .conversation-bubble{max-width:86%}
  .conversation-composer-wrap{min-height:70px;padding:8px 8px max(8px,env(safe-area-inset-bottom))}
  .conversation-composer{grid-template-columns:40px minmax(0,1fr) 44px!important;gap:6px}
  .conversation-attach-button{width:40px;height:44px;border-radius:14px}
  .conversation-send-button{width:44px;height:44px;border-radius:14px}
  .conversation-composer textarea{min-height:44px!important;font-size:16px!important}
  .typing-indicator{right:10px}
}
@media(prefers-reduced-motion:reduce){
  .conversation-message,.direct-details-panel,.typing-indicator{animation:none!important}
  .conversation-list-item,.conversation-send-button,.conversation-composer textarea{transition:none!important}
}


/* === NASQ 4.8 final communication layout & motion === */
.conversation-details{
  min-width:0;height:100%;padding:28px 18px;background:rgba(251,253,253,.95);
  border-right:1px solid var(--chat-line);overflow:auto;display:flex;flex-direction:column;gap:18px;
}
.conversation-details-profile{text-align:center;display:flex;flex-direction:column;align-items:center}
.conversation-details-profile h3{margin:13px 0 4px;font-size:16px}
.conversation-details-profile p{margin:0;color:var(--muted);font-size:10px;line-height:1.55}
.conversation-details-presence{
  display:inline-flex;align-items:center;gap:6px;margin-top:9px;padding:5px 9px;border-radius:999px;
  background:color-mix(in srgb,var(--brand) 8%,#fff);color:var(--brand);font-size:8.5px;font-weight:800
}
.conversation-details-presence .ui-icon{width:14px;height:14px}
.conversation-details-list{margin:0;display:grid;gap:0;border:1px solid rgba(110,130,145,.12);border-radius:16px;overflow:hidden;background:#fff}
.conversation-details-list>div{padding:10px 11px;border-bottom:1px solid rgba(110,130,145,.09);text-align:right}
.conversation-details-list>div:last-child{border-bottom:0}
.conversation-details-list dt{font-size:7.8px;color:var(--muted);font-weight:800;margin-bottom:3px}
.conversation-details-list dd{margin:0;font-size:9.5px;font-weight:800;color:var(--ink);overflow-wrap:anywhere}
.conversation-details-actions{margin-top:auto;display:grid;gap:8px}
.conversation-details-actions .btn,.conversation-details-actions .button{width:100%;justify-content:center}

@media(min-width:1181px){
  body.route-support.conversation-mode .support-conversation-app.is-handler.has-thread{
    grid-template-columns:minmax(300px,350px) minmax(0,1fr) 280px!important;
  }
  body.route-support.conversation-mode .support-conversation-app.is-handler.has-thread .conversation-messages{
    padding-inline:clamp(20px,3vw,56px)!important;
  }
}
@media(max-width:1180px){
  .support-details-panel{display:none!important}
}

.support-thread-meta{display:flex;flex-direction:column;align-items:flex-end;gap:5px}
.support-thread-meta time{font-size:7.5px;color:var(--muted);white-space:nowrap}
.conversation-item-role{color:var(--brand)!important;font-weight:800!important;font-size:7.8px!important;margin-bottom:1px}
.support-live-state{
  position:absolute!important;inset:auto 13px calc(100% + 5px) auto!important;
  width:auto!important;height:auto!important;display:inline-flex!important;align-items:center!important;gap:6px!important;
  padding:5px 9px!important;border-radius:999px!important;background:rgba(255,255,255,.94)!important;
  box-shadow:0 7px 20px rgba(15,30,63,.07)!important;color:var(--muted)!important;font-size:8px!important;
  pointer-events:none
}
.support-live-state i{flex:0 0 6px!important;width:6px!important;height:6px!important}
.chat-attachment.video,.chat-attachment.audio{display:block;padding:5px}
.chat-attachment video{display:block;width:min(100%,360px);max-height:280px;border-radius:10px;background:#0d1721}
.chat-attachment audio{display:block;width:min(100%,320px);height:38px}
.conversation-messages.is-loading-older::before{
  content:"جاري تحميل الرسائل السابقة";position:sticky;top:5px;z-index:4;display:block;width:max-content;max-width:90%;
  margin:0 auto 8px;padding:5px 9px;border-radius:999px;background:rgba(255,255,255,.92);box-shadow:0 5px 18px rgba(15,30,63,.07);
  color:var(--muted);font-size:8px;font-weight:800
}
.conversation-chat.is-syncing .conversation-chat-head::after{
  content:"";position:absolute;right:0;left:0;bottom:0;height:2px;
  background:linear-gradient(90deg,transparent,var(--brand),transparent);transform:translateX(-100%);
  animation:nasqSync 1.2s ease-in-out infinite
}
.conversation-chat-head{position:relative}
@keyframes nasqSync{to{transform:translateX(100%)}}

/* General interface motion: short and composited so it stays smooth on modest phones. */
@media(prefers-reduced-motion:no-preference){
  body:not(.conversation-mode) .content-area>.page-head,
  body:not(.conversation-mode) .content-area>.page-title{
    animation:nasqPageRise .34s cubic-bezier(.2,.8,.2,1) both
  }
  body:not(.conversation-mode) .content-area>.panel,
  body:not(.conversation-mode) .content-area>.data-panel,
  body:not(.conversation-mode) .content-area>.settings-section-card,
  body:not(.conversation-mode) .content-area>.stats-grid,
  body:not(.conversation-mode) .content-area>.people-grid{
    animation:nasqPageRise .42s cubic-bezier(.2,.8,.2,1) both
  }
  .people-grid>.person-card,.stats-grid>.stat-card{
    animation:nasqCardIn .34s cubic-bezier(.2,.8,.2,1) both
  }
  .people-grid>.person-card:nth-child(2n),.stats-grid>.stat-card:nth-child(2n){animation-delay:35ms}
  .people-grid>.person-card:nth-child(3n),.stats-grid>.stat-card:nth-child(3n){animation-delay:65ms}
  .conversation-details{animation:nasqPanelIn .34s cubic-bezier(.2,.8,.2,1) both}
}
@keyframes nasqPageRise{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}
@keyframes nasqCardIn{from{opacity:0;transform:translateY(7px) scale(.992)}to{opacity:1;transform:none}}

@media(max-width:760px){
  /* Force a stable three-cell composer; this overrides legacy flex rules that caused the send box to disappear. */
  .conversation-composer{
    display:grid!important;
    grid-template-columns:40px minmax(0,1fr) 44px!important;
    align-items:end!important;
    gap:6px!important;
  }
  .conversation-composer textarea{
    grid-column:2!important;grid-row:1!important;
    min-width:0!important;width:100%!important;max-width:100%!important;
  }
  .conversation-composer .conversation-attach-button{grid-column:1!important;grid-row:1!important}
  .conversation-composer .conversation-send-button{grid-column:3!important;grid-row:1!important}
  .conversation-composer .composer-file-preview{grid-column:1/-1!important;grid-row:2!important;width:100%!important}
  .support-live-state{right:9px!important}
  .conversation-details{display:none!important}
  .chat-attachment.image img{max-width:260px}
}

.directory-state-chip{display:flex;align-items:center;justify-content:center;width:100%;min-height:38px;padding:7px 10px;border-radius:12px;font-size:9px;font-weight:800;text-align:center}
.directory-state-chip.blocked{background:#fff2f2;color:#a44242;border:1px solid #f1d3d3}
.directory-state-chip.muted{background:#f3f5f7;color:var(--muted);border:1px solid rgba(110,130,145,.12)}


/* ========================================================================
   NASQ v4.9 — Modern Communication & Motion Edition
   Unified curves, glass surfaces, interaction motion and communication UI.
   ======================================================================== */
:root{
  --v49-surface:rgba(255,255,255,.78);
  --v49-surface-strong:rgba(255,255,255,.94);
  --v49-line:rgba(15,30,63,.09);
  --v49-text:#132238;
  --v49-muted:#708097;
  --v49-shadow:0 22px 70px rgba(15,30,63,.10);
  --v49-shadow-soft:0 10px 34px rgba(15,30,63,.08);
  --v49-radius-xl:calc(var(--radius,20px) + 12px);
  --v49-radius-lg:calc(var(--radius,20px) + 4px);
  --v49-radius-md:max(16px,calc(var(--radius,20px) - 3px));
  --v49-ease:cubic-bezier(.2,.72,.18,1);
}

/* Technology ambient background */
.content-area{position:relative;isolation:isolate;overflow-x:clip;background:
  radial-gradient(circle at 11% 8%,color-mix(in srgb,var(--brand) 10%,transparent),transparent 31rem),
  radial-gradient(circle at 91% 84%,color-mix(in srgb,var(--navy) 8%,transparent),transparent 34rem),
  var(--paper);
}
.content-area>.tech-ambient{position:fixed;pointer-events:none;z-index:-1;inset:72px 0 0 var(--sidebar-width,260px);overflow:hidden;opacity:.72}
.tech-ambient::before{content:"";position:absolute;inset:0;background-image:
  linear-gradient(rgba(15,30,63,.025) 1px,transparent 1px),
  linear-gradient(90deg,rgba(15,30,63,.025) 1px,transparent 1px);
  background-size:42px 42px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.65),transparent 80%);
  animation:v49-grid-drift 24s linear infinite}
.tech-ambient i{position:absolute;border:1px solid color-mix(in srgb,var(--brand) 22%,transparent);border-radius:999px;filter:blur(.1px);animation:v49-orbit 18s var(--v49-ease) infinite alternate}
.tech-ambient i:nth-child(1){width:280px;height:280px;right:-100px;top:8%;border-width:24px;opacity:.16}
.tech-ambient i:nth-child(2){width:120px;height:120px;left:12%;top:22%;animation-duration:13s;opacity:.13}
.tech-ambient i:nth-child(3){width:360px;height:360px;left:-180px;bottom:-120px;animation-duration:26s;opacity:.1}
.tech-ambient span{position:absolute;width:7px;height:7px;border-radius:50%;background:var(--brand);box-shadow:0 0 22px color-mix(in srgb,var(--brand) 60%,transparent);animation:v49-data-pulse 5s ease-in-out infinite}
.tech-ambient span:nth-last-child(2){right:18%;top:25%}.tech-ambient span:last-child{left:28%;bottom:19%;animation-delay:-2.2s}
@keyframes v49-grid-drift{to{background-position:42px 42px}}
@keyframes v49-orbit{to{transform:translate3d(32px,-22px,0) rotate(12deg) scale(1.06)}}
@keyframes v49-data-pulse{0%,100%{opacity:.12;transform:scale(.65)}45%{opacity:.6;transform:scale(1.45)}}

/* Modern global surfaces and curves */
.card,.panel,.stat-card,.settings-section-card,.profile-card,.table-card,.form-card,.dashboard-card,
.modal-card,.sheet,.empty-state,.calendar-shell{border-radius:var(--v49-radius-xl)!important;border:1px solid var(--v49-line)!important;
  box-shadow:var(--v49-shadow-soft);background:color-mix(in srgb,var(--v49-surface) calc(var(--glass-alpha, .72)*100%),#fff)!important;
  backdrop-filter:blur(18px) saturate(1.16);-webkit-backdrop-filter:blur(18px) saturate(1.16)}
.page-head{animation:v49-rise .58s var(--v49-ease) both}
.content-area>section:not(.conversation-app),.content-area>form,.content-area>.page-head{position:relative}
.content-area>section:not(.conversation-app){animation:v49-content-in .55s var(--v49-ease) both}
@keyframes v49-content-in{from{opacity:0;transform:translateY(10px) scale(.992)}to{opacity:1;transform:none}}
@keyframes v49-rise{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}

/* Fields: soft, curved, focus glow */
.field input:not([type=checkbox]):not([type=radio]):not([type=color]):not([type=range]),
.field select,.field textarea,.conversation-search input,.search-box input,
input[type="search"],.filter-bar input,.filter-bar select{
  border-radius:18px!important;border:1px solid rgba(15,30,63,.105)!important;background:rgba(255,255,255,.76)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72),0 8px 22px rgba(15,30,63,.035)!important;
  transition:border-color .22s ease,box-shadow .22s ease,background .22s ease,transform .22s ease!important;
}
.field input:focus,.field select:focus,.field textarea:focus,.conversation-search input:focus,
input[type="search"]:focus{border-color:color-mix(in srgb,var(--brand) 55%,transparent)!important;background:#fff!important;
  box-shadow:0 0 0 4px color-mix(in srgb,var(--brand) 11%,transparent),0 12px 30px rgba(15,30,63,.06)!important;outline:none}

/* Buttons and icon controls */
.button,.quick-create,.login-v44-submit,.conversation-send-button,.icon-button,.notification-button,.install-button{
  transition:transform .2s var(--v49-ease),box-shadow .24s ease,background .24s ease,border-color .24s ease,color .24s ease!important}
.button{border-radius:16px!important;min-height:42px;box-shadow:0 8px 20px rgba(15,30,63,.07);position:relative;overflow:hidden}
.button::after,.quick-create::after,.login-v44-submit::after{content:"";position:absolute;inset:-2px;background:linear-gradient(110deg,transparent 25%,rgba(255,255,255,.34) 48%,transparent 68%);
  transform:translateX(130%);transition:transform .7s var(--v49-ease);pointer-events:none}
.button:hover::after,.quick-create:hover::after,.login-v44-submit:hover::after{transform:translateX(-130%)}
.button:hover,.quick-create:hover{transform:translateY(-2px);box-shadow:0 13px 30px color-mix(in srgb,var(--brand) 17%,rgba(15,30,63,.08))}
.button:active,.quick-create:active,.icon-button:active,.notification-button:active{transform:translateY(0) scale(.96)}
.icon-button,.notification-button{border-radius:14px!important;background:rgba(255,255,255,.72)!important;border:1px solid var(--v49-line)!important;
  box-shadow:0 7px 18px rgba(15,30,63,.05)!important}
.icon-button:hover,.notification-button:hover{transform:translateY(-2px) rotate(-2deg);background:#fff!important;color:var(--brand)!important;
  border-color:color-mix(in srgb,var(--brand) 25%,transparent)!important;box-shadow:0 10px 25px color-mix(in srgb,var(--brand) 12%,transparent)!important}
.icon-button .ui-icon,.nav-icon .ui-icon,.notification-button .ui-icon{transition:transform .25s var(--v49-ease),stroke-width .25s ease}
.icon-button:hover .ui-icon,.notification-button:hover .ui-icon{transform:scale(1.08);stroke-width:2.15}

/* Sidebar/topbar more premium */
.sidebar{background:linear-gradient(180deg,color-mix(in srgb,var(--navy) 97%,#fff),color-mix(in srgb,var(--navy) 90%,#07142a))!important}
.nav-link{border-radius:16px!important;margin-inline:8px;position:relative;overflow:hidden}
.nav-link::before{content:"";position:absolute;inset:0;background:linear-gradient(95deg,color-mix(in srgb,var(--brand) 16%,transparent),transparent);opacity:0;transition:.25s ease}
.nav-link:hover::before,.nav-link.active::before{opacity:1}
.nav-link:hover{transform:translateX(-3px)}
.nav-link.active{box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 9px 24px rgba(0,0,0,.12)}
.nav-count{box-shadow:0 0 0 4px rgba(255,255,255,.06),0 8px 18px rgba(0,0,0,.14)}
.topbar{background:rgba(255,255,255,.78)!important;backdrop-filter:blur(20px) saturate(1.2)!important;border-bottom:1px solid var(--v49-line)!important}

/* Communication center — inspired by modern work chat references */
.conversation-app{
  --chat-border:rgba(15,30,63,.08);
  width:min(1560px,100%);height:calc(100dvh - 112px);min-height:620px;margin:0 auto;
  border:1px solid var(--chat-border);border-radius:30px;overflow:hidden;
  background:rgba(255,255,255,.88);box-shadow:0 28px 85px rgba(15,30,63,.13);
  backdrop-filter:blur(22px) saturate(1.14);animation:v49-chat-in .56s var(--v49-ease) both}
@keyframes v49-chat-in{from{opacity:0;transform:translateY(16px) scale(.988)}to{opacity:1;transform:none}}
.conversation-sidebar{background:rgba(250,252,255,.86)!important;border-inline-end:1px solid var(--chat-border)!important}
.conversation-sidebar-head{padding:20px 18px 12px!important}
.conversation-sidebar-title h1{font-size:1.18rem!important;letter-spacing:-.02em}
.conversation-brand-icon{width:42px!important;height:42px!important;border-radius:15px!important;background:linear-gradient(135deg,var(--brand),color-mix(in srgb,var(--brand) 62%,var(--navy)))!important;
  color:white!important;box-shadow:0 10px 25px color-mix(in srgb,var(--brand) 26%,transparent)}
.conversation-hub-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin:4px 14px 12px;padding:5px;background:rgba(15,30,63,.045);border:1px solid rgba(15,30,63,.055);border-radius:17px}
.conversation-hub-tabs a{min-width:0;display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 5px;border-radius:13px;color:var(--v49-muted);font-size:.78rem;font-weight:700;text-decoration:none;transition:.22s var(--v49-ease)}
.conversation-hub-tabs a .ui-icon{width:16px;height:16px}
.conversation-hub-tabs a:hover{color:var(--brand);background:rgba(255,255,255,.72);transform:translateY(-1px)}
.conversation-hub-tabs a.active{color:#fff;background:linear-gradient(135deg,var(--brand),color-mix(in srgb,var(--brand) 66%,var(--navy)));box-shadow:0 8px 18px color-mix(in srgb,var(--brand) 22%,transparent)}
.conversation-search{margin:0 14px 12px!important;border-radius:17px!important;background:#fff!important;border:1px solid var(--chat-border)!important;box-shadow:0 7px 18px rgba(15,30,63,.035)!important}
.conversation-list{padding:2px 9px 14px!important;scrollbar-width:thin;scrollbar-color:rgba(15,30,63,.15) transparent}
.conversation-list-item{margin:5px 0!important;border-radius:18px!important;border:1px solid transparent!important;padding:11px 10px!important;transition:.22s var(--v49-ease)!important}
.conversation-list-item:hover{transform:translateY(-1px) translateX(-2px);background:#fff!important;border-color:var(--chat-border)!important;box-shadow:0 11px 28px rgba(15,30,63,.065)}
.conversation-list-item.active{background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 12%,#fff),#fff)!important;border-color:color-mix(in srgb,var(--brand) 22%,transparent)!important;
  box-shadow:0 12px 30px color-mix(in srgb,var(--brand) 10%,rgba(15,30,63,.04))!important}
.conversation-list-item.active::after{content:"";position:absolute;inset-block:22%;right:0;width:3px;border-radius:4px;background:var(--brand);box-shadow:0 0 14px color-mix(in srgb,var(--brand) 60%,transparent)}
.conversation-avatar{border-radius:50%!important;box-shadow:0 0 0 3px rgba(255,255,255,.92),0 7px 18px rgba(15,30,63,.1)!important}
.presence-dot{box-shadow:0 0 0 3px #fff!important}.presence-dot.online{animation:v49-online 2.1s ease-in-out infinite}
@keyframes v49-online{50%{box-shadow:0 0 0 3px #fff,0 0 0 7px rgba(31,190,112,.12)}}
.conversation-unread{min-width:24px!important;height:24px!important;border-radius:9px!important;display:grid!important;place-items:center;background:linear-gradient(135deg,var(--brand),color-mix(in srgb,var(--brand) 55%,var(--navy)))!important;box-shadow:0 7px 17px color-mix(in srgb,var(--brand) 26%,transparent)}

.conversation-chat{background:rgba(255,255,255,.62)!important}
.conversation-chat-head{min-height:76px!important;padding:12px 18px!important;background:rgba(255,255,255,.85)!important;border-bottom:1px solid var(--chat-border)!important;backdrop-filter:blur(18px)}
.conversation-chat-identity h2{font-size:1.03rem!important}.conversation-chat-identity small{color:var(--v49-muted)}
.chat-presence-label,.conversation-status-dot{color:#25a765!important;font-size:.75rem!important}
.conversation-messages{padding:22px clamp(14px,2.2vw,32px) 18px!important;background:
  radial-gradient(circle at 84% 10%,color-mix(in srgb,var(--brand) 5%,transparent),transparent 28rem),
  linear-gradient(rgba(15,30,63,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(15,30,63,.018) 1px,transparent 1px)!important;
  background-size:auto,38px 38px,38px 38px!important;scroll-behavior:smooth}
.conversation-message{animation:v49-message-in .28s var(--v49-ease) both}
@keyframes v49-message-in{from{opacity:0;transform:translateY(7px) scale(.985)}to{opacity:1;transform:none}}
.conversation-bubble{border-radius:21px 21px 21px 7px!important;background:rgba(242,246,250,.94)!important;border:1px solid rgba(15,30,63,.05)!important;
  box-shadow:0 9px 24px rgba(15,30,63,.05)!important;padding:11px 14px!important;max-width:min(78%,680px)}
.conversation-message.mine .conversation-bubble{border-radius:21px 21px 7px 21px!important;color:#fff!important;background:linear-gradient(135deg,var(--brand),color-mix(in srgb,var(--brand) 62%,var(--navy)))!important;
  border-color:transparent!important;box-shadow:0 12px 28px color-mix(in srgb,var(--brand) 18%,transparent)!important}
.conversation-message.mine .conversation-bubble small,.conversation-message.mine .conversation-bubble a{color:rgba(255,255,255,.82)!important}
.conversation-bubble p{line-height:1.75!important}
.chat-attachment{border-radius:16px!important;overflow:hidden}
.chat-file-card,.chat-attachment.file{border-radius:15px!important;background:rgba(255,255,255,.12)!important;border:1px solid rgba(255,255,255,.18)!important}

/* Composer always visible and polished */
.conversation-composer-wrap{position:relative!important;z-index:7!important;padding:10px 14px calc(10px + env(safe-area-inset-bottom))!important;background:rgba(255,255,255,.9)!important;
  border-top:1px solid var(--chat-border)!important;backdrop-filter:blur(22px) saturate(1.2)}
.conversation-composer{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;align-items:end!important;gap:9px!important;border:1px solid rgba(15,30,63,.095)!important;
  background:#fff!important;border-radius:21px!important;padding:7px!important;box-shadow:0 10px 32px rgba(15,30,63,.07)!important}
.conversation-composer textarea{min-height:42px!important;max-height:130px!important;padding:10px 8px!important;border:0!important;outline:0!important;background:transparent!important;border-radius:14px!important;resize:none!important;box-shadow:none!important}
.conversation-attach-button,.conversation-send-button{width:42px!important;height:42px!important;border-radius:14px!important;display:grid!important;place-items:center!important}
.conversation-attach-button{background:rgba(15,30,63,.045)!important;color:var(--v49-muted)!important;transition:.2s var(--v49-ease)}
.conversation-attach-button:hover{background:color-mix(in srgb,var(--brand) 10%,white)!important;color:var(--brand)!important;transform:translateY(-1px) rotate(-4deg)}
.conversation-send-button{background:linear-gradient(135deg,var(--brand),color-mix(in srgb,var(--brand) 60%,var(--navy)))!important;color:#fff!important;box-shadow:0 8px 20px color-mix(in srgb,var(--brand) 24%,transparent)!important}
.conversation-send-button:hover{transform:translateY(-2px) rotate(-2deg) scale(1.03)!important}
.typing-indicator{border-radius:15px!important;background:rgba(255,255,255,.9)!important;box-shadow:0 8px 20px rgba(15,30,63,.06)!important}

/* Details panels */
.conversation-details{width:290px;min-width:260px;padding:24px 20px!important;background:rgba(250,252,255,.88)!important;border-inline-start:1px solid var(--chat-border)!important;text-align:center;overflow:auto}
.conversation-details h3{margin:15px 0 4px;font-size:1.05rem}.conversation-details p{margin:0;color:var(--v49-muted);line-height:1.65}
.details-avatar.xlarge,.conversation-avatar.xlarge{width:86px!important;height:86px!important;margin-inline:auto}
.details-actions,.conversation-details-actions{display:grid;gap:8px;margin-top:18px}
.detail-chip,.conversation-details-presence{display:inline-flex;align-items:center;gap:6px;margin-top:10px;padding:7px 11px;border-radius:999px;background:color-mix(in srgb,var(--brand) 9%,white);color:var(--brand);font-size:.76rem;font-weight:700}
.conversation-details-list{display:grid;gap:1px;margin:20px 0 0;text-align:start;border:1px solid var(--chat-border);border-radius:18px;overflow:hidden}
.conversation-details-list>div{display:flex;justify-content:space-between;gap:10px;padding:11px 12px;background:rgba(255,255,255,.7)}
.conversation-details-list dt{color:var(--v49-muted);font-size:.75rem}.conversation-details-list dd{margin:0;font-size:.78rem;font-weight:700}
.group-details-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:18px 0}
.group-details-stats span{padding:12px;border-radius:16px;background:rgba(255,255,255,.8);border:1px solid var(--chat-border);display:grid;gap:3px}
.group-details-stats b{font-size:1.15rem;color:var(--brand)}.group-details-stats small{color:var(--v49-muted)}
.group-details-members{text-align:start;margin:14px 0}.group-details-avatars{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}
.member-more{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:white;font-size:.72rem;font-weight:800}

/* Three-column behavior */
.direct-workspace,.groups-workspace{display:grid!important;grid-template-columns:minmax(0,1fr) 290px!important;min-width:0}
.direct-chat-panel,.group-chat-panel{min-width:0}
.support-conversation-app.is-handler{grid-template-columns:minmax(250px,320px) minmax(0,1fr) 290px!important}
.support-conversation-app.is-handler>.support-details-panel{display:block!important}
.groups-workspace>.group-details-panel{grid-column:2;grid-row:1}
.groups-workspace>.group-chat-panel{grid-column:1;grid-row:1}
.groups-workspace>.group-empty-panel{grid-column:1/-1}

/* Settings sound panel */
.notification-sound-settings{margin-top:18px;padding:18px;border:1px solid var(--v49-line);border-radius:22px;background:linear-gradient(135deg,rgba(255,255,255,.86),color-mix(in srgb,var(--brand) 4%,#fff))}
.sound-settings-copy{display:flex;align-items:center;gap:12px;margin-bottom:16px}.sound-settings-copy>span{width:42px;height:42px;border-radius:15px;display:grid;place-items:center;background:color-mix(in srgb,var(--brand) 11%,white);color:var(--brand)}
.sound-settings-copy div{display:grid;gap:3px}.sound-settings-copy small,.sound-upload-note,.settings-tech-note{color:var(--v49-muted)}
.sound-settings-grid{display:grid;grid-template-columns:minmax(220px,1fr) minmax(240px,1fr);gap:14px;align-items:end}
.sound-upload-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:14px}.sound-upload-note{font-size:.76rem}
.settings-tech-note{font-size:.73rem;line-height:1.7;margin:12px 0 0;padding-top:11px;border-top:1px dashed rgba(15,30,63,.09)}

/* Login v4.9 motion */
.auth-v49{overflow:hidden;background:linear-gradient(135deg,color-mix(in srgb,var(--paper) 94%,#fff),#fff)}
.auth-v49 .login-v44-visual{overflow:hidden}
.login-tech-stream{position:absolute;inset:0;pointer-events:none;opacity:.65}
.login-tech-stream::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);background-size:44px 44px;animation:v49-login-grid 18s linear infinite}
.login-tech-stream i{position:absolute;width:9px;height:9px;border:2px solid rgba(255,255,255,.6);border-radius:50%;box-shadow:0 0 22px rgba(255,255,255,.35);animation:v49-float-node 7s ease-in-out infinite}
.login-tech-stream i:nth-child(1){right:16%;top:18%}.login-tech-stream i:nth-child(2){left:18%;top:41%;animation-delay:-2s}.login-tech-stream i:nth-child(3){right:34%;bottom:20%;animation-delay:-4.4s}
.login-tech-stream span{position:absolute;height:1px;width:120px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent);animation:v49-data-line 6s ease-in-out infinite}
.login-tech-stream span:nth-of-type(1){right:8%;top:31%}.login-tech-stream span:nth-of-type(2){left:7%;top:60%;animation-delay:-1.6s}.login-tech-stream span:nth-of-type(3){right:28%;bottom:12%;animation-delay:-3s}
.auth-v49 .login-v44-brand{animation:v49-login-reveal .7s .08s var(--v49-ease) both}
.auth-v49 .login-v44-message>*{animation:v49-login-reveal .7s var(--v49-ease) both}
.auth-v49 .login-v44-message>*:nth-child(1){animation-delay:.12s}.auth-v49 .login-v44-message>*:nth-child(2){animation-delay:.2s}.auth-v49 .login-v44-message>*:nth-child(3){animation-delay:.28s}.auth-v49 .login-v44-message>*:nth-child(4){animation-delay:.36s}
.auth-v49 .login-v44-card{animation:v49-card-enter .78s .12s var(--v49-ease) both;box-shadow:0 30px 90px rgba(15,30,63,.14)!important;border-radius:30px!important}
.auth-v49 .login-v44-field{border-radius:19px!important;transition:.24s var(--v49-ease)!important}
.auth-v49 .login-v44-field:focus-within{transform:translateY(-2px);box-shadow:0 0 0 4px color-mix(in srgb,var(--brand) 10%,transparent),0 14px 34px rgba(15,30,63,.08)!important}
.auth-v49 .login-v44-submit{border-radius:18px!important;position:relative;overflow:hidden}
@keyframes v49-login-grid{to{background-position:44px 44px}}
@keyframes v49-float-node{50%{transform:translateY(-18px) scale(1.35);opacity:.4}}
@keyframes v49-data-line{0%,100%{transform:translateX(-22px);opacity:.15}50%{transform:translateX(36px);opacity:.65}}
@keyframes v49-login-reveal{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes v49-card-enter{from{opacity:0;transform:translateX(-24px) scale(.97)}to{opacity:1;transform:none}}

/* Dashboard/control page entrance */
.route-dashboard .content-area .dashboard-grid>*,
.route-reports .content-area .card,
.route-users .content-area .card,
.route-settings .settings-section-card{
  animation:v49-stagger .5s var(--v49-ease) both}
.route-dashboard .content-area .dashboard-grid>*:nth-child(2),.route-settings .settings-section-card:nth-child(2){animation-delay:.06s}
.route-dashboard .content-area .dashboard-grid>*:nth-child(3),.route-settings .settings-section-card:nth-child(3){animation-delay:.12s}
.route-dashboard .content-area .dashboard-grid>*:nth-child(4){animation-delay:.18s}
@keyframes v49-stagger{from{opacity:0;transform:translateY(13px) scale(.985)}to{opacity:1;transform:none}}

/* Mobile/tablet communication layout */
@media (max-width:1180px){
  .conversation-details,.group-details-panel,.support-details-panel{display:none!important}
  .direct-workspace,.groups-workspace{grid-template-columns:minmax(0,1fr)!important}
  .support-conversation-app.is-handler{grid-template-columns:minmax(250px,320px) minmax(0,1fr)!important}
  .content-area>.tech-ambient{inset-inline-start:0}
}
@media (max-width:780px){
  .conversation-app{height:calc(100dvh - var(--mobile-nav-height,66px) - 12px)!important;min-height:0;border-radius:22px;margin:0}
  .conversation-sidebar{width:100%!important}
  .conversation-hub-tabs{margin-inline:10px}
  .conversation-list-item{padding:10px 9px!important}
  .conversation-chat-head{min-height:68px!important;padding:8px 10px!important}
  .conversation-messages{padding:14px 10px 12px!important}
  .conversation-bubble{max-width:87%!important}
  .conversation-composer-wrap{position:sticky!important;bottom:0!important;padding:8px 8px calc(8px + env(safe-area-inset-bottom))!important}
  .conversation-composer{border-radius:19px!important;padding:5px!important}
  .conversation-composer textarea{font-size:16px!important}
  .sound-settings-grid{grid-template-columns:1fr}
  .notification-sound-settings{padding:14px}
  .button{border-radius:15px!important}
}
@media (prefers-reduced-motion:reduce){
  .tech-ambient::before,.tech-ambient i,.tech-ambient span,.login-tech-stream::before,.login-tech-stream i,.login-tech-stream span,
  .conversation-message,.conversation-app,.page-head,.content-area>section,.route-dashboard .content-area .dashboard-grid>*,
  .route-settings .settings-section-card{animation:none!important}
  *{scroll-behavior:auto!important}
}


/* =========================================================
   NASQ 5.0 — Living Interface Edition
   Motion, depth, modern communication and identity system
   ========================================================= */
:root{
  --v5-electric:#6f63ff;
  --v5-violet:#9b5cff;
  --v5-cyan:#2ecbd4;
  --v5-blue:#348cff;
  --v5-ink:#121a2b;
  --v5-soft:#f6f8fc;
  --v5-glass:rgba(255,255,255,.74);
  --v5-line:rgba(46,67,103,.10);
  --v5-ease:cubic-bezier(.2,.72,.2,1);
  --v5-spring:cubic-bezier(.18,.9,.32,1.25);
  --v5-glow:0 18px 55px color-mix(in srgb,var(--brand) 14%,transparent);
}

/* Living white canvas */
.nasq-v5:not(.conversation-mode) .content-area{
  position:relative;isolation:isolate;
  overflow:hidden;
  min-height:calc(100vh - 76px);
  background:
    radial-gradient(circle at 13% 18%,color-mix(in srgb,var(--v5-cyan) 9%,transparent),transparent 24%),
    radial-gradient(circle at 82% 15%,color-mix(in srgb,var(--v5-violet) 8%,transparent),transparent 26%),
    linear-gradient(180deg,rgba(255,255,255,.94),color-mix(in srgb,var(--paper) 78%,white));
}
.nasq-v5:not(.conversation-mode) .content-area::before{
  content:"";position:absolute;inset:0;z-index:-3;pointer-events:none;opacity:.5;
  background-image:
    linear-gradient(rgba(52,140,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(111,99,255,.03) 1px,transparent 1px);
  background-size:48px 48px;
  mask-image:linear-gradient(to bottom,black,transparent 86%);
  animation:v5-grid-drift 28s linear infinite;
}
.nasq-v5:not(.conversation-mode) .content-area::after{
  content:"";position:absolute;z-index:-2;pointer-events:none;width:46vw;height:46vw;min-width:420px;min-height:420px;
  right:-18vw;top:14vh;border-radius:50%;
  background:conic-gradient(from 110deg,transparent,color-mix(in srgb,var(--brand) 6%,transparent),transparent 28%,color-mix(in srgb,var(--v5-violet) 8%,transparent),transparent 58%);
  filter:blur(8px);animation:v5-ambient-spin 36s linear infinite;
}
.tech-ambient-v5{position:fixed!important;inset:76px var(--sidebar) 0 0!important;z-index:0!important;pointer-events:none;overflow:hidden;opacity:.62}
.tech-ambient-v5::before{content:"";position:absolute;width:390px;height:390px;left:7%;top:8%;border-radius:50%;border:1px solid color-mix(in srgb,var(--brand) 11%,transparent);box-shadow:inset 0 0 75px color-mix(in srgb,var(--brand) 4%,transparent);animation:v5-orbit-breathe 9s ease-in-out infinite}
.tech-ambient-v5::after{content:"";position:absolute;width:220px;height:220px;left:calc(7% + 85px);top:calc(8% + 85px);border-radius:50%;border:1px dashed color-mix(in srgb,var(--v5-violet) 16%,transparent);animation:v5-ambient-spin 20s linear infinite reverse}
.tech-ambient-v5 i{position:absolute!important;width:5px!important;height:5px!important;border-radius:50%;background:var(--v5-cyan)!important;box-shadow:0 0 18px var(--v5-cyan)!important;opacity:.45}
.tech-ambient-v5 i:nth-child(1){left:14%;top:18%;animation:v5-node-float 8s ease-in-out infinite}
.tech-ambient-v5 i:nth-child(2){left:38%;top:62%;animation:v5-node-float 10s -3s ease-in-out infinite}
.tech-ambient-v5 i:nth-child(3){right:12%;top:28%;animation:v5-node-float 9s -5s ease-in-out infinite}
.tech-ambient-v5 span{position:absolute!important;height:1px!important;width:150px!important;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--v5-blue) 25%,transparent),transparent)!important;opacity:.46}
.tech-ambient-v5 span:nth-of-type(1){left:24%;top:33%;animation:v5-data-pass 8s ease-in-out infinite}
.tech-ambient-v5 span:nth-of-type(2){right:20%;bottom:18%;animation:v5-data-pass 11s -4s ease-in-out infinite}
.tech-ambient-v5 b,.tech-ambient-v5 em{position:absolute;border-radius:999px;filter:blur(.2px)}
.tech-ambient-v5 b{width:10px;height:10px;left:67%;top:44%;border:2px solid color-mix(in srgb,var(--brand) 35%,transparent);animation:v5-ping 4s ease-out infinite}
.tech-ambient-v5 em{width:6px;height:6px;right:31%;bottom:29%;background:color-mix(in srgb,var(--v5-violet) 50%,transparent);box-shadow:0 0 20px var(--v5-violet);animation:v5-node-float 7s -2s infinite}

/* Premium surfaces and curved language */
.nasq-v5 .card,.nasq-v5 .form-card,.nasq-v5 .profile-section-card,.nasq-v5 .settings-section-card,.nasq-v5 .item-card{
  border-radius:clamp(20px,var(--radius),30px)!important;
  border-color:rgba(48,69,101,.095)!important;
  box-shadow:0 16px 48px rgba(18,30,58,.065),inset 0 1px rgba(255,255,255,.8)!important;
}
.nasq-v5 input:not([type="checkbox"]):not([type="radio"]):not([type="color"]),
.nasq-v5 select,.nasq-v5 textarea,
.auth-v50 input{
  border-radius:18px!important;
  border-color:rgba(63,84,116,.13)!important;
  background:rgba(248,250,253,.82)!important;
  box-shadow:inset 0 1px 2px rgba(22,34,56,.025);
  transition:border-color .24s var(--v5-ease),box-shadow .24s var(--v5-ease),transform .24s var(--v5-ease),background .24s ease!important;
}
.nasq-v5 input:focus,.nasq-v5 select:focus,.nasq-v5 textarea:focus,.auth-v50 input:focus{
  outline:none!important;background:white!important;border-color:color-mix(in srgb,var(--brand) 48%,white)!important;
  box-shadow:0 0 0 4px color-mix(in srgb,var(--brand) 9%,transparent),0 12px 32px rgba(27,53,84,.06)!important;
  transform:translateY(-1px);
}
.nasq-v5 .button,.nasq-v5 .quick-create,.nasq-v5 .icon-button,.nasq-v5 .notification-button{
  border-radius:16px!important;transition:transform .22s var(--v5-spring),box-shadow .22s ease,border-color .22s ease,filter .22s ease!important;
}
.nasq-v5 .button:hover,.nasq-v5 .quick-create:hover,.nasq-v5 .icon-button:hover,.nasq-v5 .notification-button:hover{transform:translateY(-2px) scale(1.015);box-shadow:0 12px 28px rgba(18,36,65,.10)}
.nasq-v5 .button:active,.nasq-v5 .quick-create:active,.nasq-v5 .icon-button:active{transform:translateY(0) scale(.96)}
.nasq-v5 .button.primary,.nasq-v5 .quick-create,.v5-primary-action{
  position:relative;overflow:hidden;
  background:linear-gradient(135deg,var(--brand),color-mix(in srgb,var(--brand) 70%,var(--v5-violet)))!important;
  box-shadow:0 12px 30px color-mix(in srgb,var(--brand) 22%,transparent)!important;
}
.nasq-v5 .button.primary::after,.nasq-v5 .quick-create::after,.v5-primary-action::after{
  content:"";position:absolute;inset:-80% auto -80% -38%;width:26%;transform:rotate(18deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.52),transparent);animation:v5-button-shine 4.8s 1.1s ease-in-out infinite;
}
.v5-ripple-host{position:relative!important;overflow:hidden!important}
.v5-button-ripple{position:absolute;width:12px;height:12px;border-radius:50%;background:rgba(255,255,255,.42);pointer-events:none;transform:translate(-50%,-50%) scale(0);animation:v5-ripple .65s ease-out forwards}

/* Modern icons */
.nasq-v5 .nav-icon,.nasq-v5 .conversation-brand-icon,.nasq-v5 .profile-section-head>span{
  position:relative;overflow:visible;border-radius:13px!important;
}
.nasq-v5 .nav-icon::after,.nasq-v5 .conversation-brand-icon::after{
  content:"";position:absolute;inset:18%;border-radius:50%;background:currentColor;filter:blur(12px);opacity:0;transition:.25s;
}
.nasq-v5 .nav-link:hover .nav-icon::after,.nasq-v5 .nav-link.active .nav-icon::after{opacity:.24}
.nasq-v5 .nav-link .ui-icon{transition:transform .3s var(--v5-spring),filter .3s ease}
.nasq-v5 .nav-link:hover .ui-icon{transform:rotate(-4deg) scale(1.13);filter:drop-shadow(0 0 7px currentColor)}
.nasq-v5 .nav-link.active{border-radius:16px!important;background:linear-gradient(90deg,color-mix(in srgb,var(--v5-electric) 22%,transparent),rgba(255,255,255,.035))!important}

/* Page titles / internal motion */
.v5-page-head,.nasq-v5 .page-head{position:relative;overflow:hidden}
.page-kicker{display:inline-flex;align-items:center;gap:7px;color:var(--brand);font-size:.72rem;font-weight:800;letter-spacing:.02em}
.page-kicker .ui-icon{width:16px}
.v5-page-head .page-title p{margin:5px 0 0;color:var(--muted);max-width:620px}
.page-head-orbit{position:absolute;left:10px;top:50%;width:110px;height:110px;transform:translateY(-50%);pointer-events:none;opacity:.45}
.page-head-orbit i{position:absolute;inset:10px;border:1px solid color-mix(in srgb,var(--brand) 22%,transparent);border-radius:50%;animation:v5-ambient-spin 13s linear infinite}
.page-head-orbit i:nth-child(2){inset:28px;border-style:dashed;animation-duration:8s;animation-direction:reverse}
.page-head-orbit span{position:absolute;width:7px;height:7px;border-radius:50%;background:var(--v5-violet);left:17px;top:28px;box-shadow:0 0 14px var(--v5-violet);animation:v5-pulse 2.4s infinite}

/* Reveals and soft-navigation */
.v5-reveal{opacity:0;transform:translateY(18px) scale(.986);filter:blur(2px);transition:opacity .62s var(--v5-ease) var(--reveal-delay,0ms),transform .62s var(--v5-ease) var(--reveal-delay,0ms),filter .62s ease var(--reveal-delay,0ms)}
.v5-reveal.v5-revealed{opacity:1;transform:none;filter:none}
.content-area.v5-route-leaving>*:not(.tech-ambient){animation:v5-route-out .16s ease both}
.content-area.v5-route-entering>*:not(.tech-ambient){animation:v5-route-in .55s var(--v5-ease) both}
.panel-loading .topbar::after{content:"";position:absolute;bottom:-1px;right:0;height:2px;width:34%;background:linear-gradient(90deg,transparent,var(--v5-electric),var(--v5-cyan),transparent);animation:v5-loading-bar .9s linear infinite}

/* Physically correct chat alternation: mine RIGHT, incoming LEFT */
.conversation-messages,.group-messages,.support-messages{
  background:
    radial-gradient(circle at 50% 0,color-mix(in srgb,var(--brand) 3.5%,white),transparent 45%),
    linear-gradient(180deg,#fbfcfe,#f6f8fb)!important;
}
.conversation-message,.group-message,.support-message{
  width:100%!important;max-width:none!important;display:flex!important;direction:ltr!important;align-items:flex-end!important;gap:8px!important;
  justify-content:flex-start!important;margin:7px 0!important;transform-origin:left bottom;
}
.conversation-message.mine,.group-message.mine,.support-message.mine{
  justify-content:flex-end!important;flex-direction:row!important;transform-origin:right bottom;
}
.conversation-message:not(.mine) .conversation-bubble,
.group-message:not(.mine) .group-message-bubble{
  border-radius:22px 22px 22px 7px!important;
  background:rgba(255,255,255,.94)!important;
  border:1px solid rgba(69,90,120,.10)!important;
  color:var(--ink)!important;box-shadow:0 8px 24px rgba(21,38,67,.055)!important;
}
.conversation-message.mine .conversation-bubble,
.group-message.mine .group-message-bubble{
  border-radius:22px 22px 7px 22px!important;
  background:linear-gradient(145deg,color-mix(in srgb,var(--brand) 92%,#fff),color-mix(in srgb,var(--v5-violet) 70%,var(--brand)))!important;
  color:#fff!important;border:1px solid rgba(255,255,255,.14)!important;
  box-shadow:0 10px 30px color-mix(in srgb,var(--brand) 18%,transparent)!important;
}
.conversation-message.mine .conversation-bubble small,.group-message.mine .group-message-bubble small{color:rgba(255,255,255,.72)!important}
.conversation-message .conversation-bubble,.group-message .group-message-bubble{direction:rtl!important;text-align:right!important;max-width:min(72%,720px)!important}
.support-message{align-self:stretch!important;background:none!important;border:0!important;padding:0!important;box-shadow:none!important}
.support-message-stack{max-width:min(72%,720px)!important;direction:rtl}
.support-message.mine .support-message-stack{align-items:flex-end}
.support-message:not(.mine) .support-message-stack{align-items:flex-start}
.support-message .conversation-bubble{max-width:100%!important}
.conversation-message{animation:v5-message-arrive .38s var(--v5-spring) both}
.conversation-message.mine{animation-name:v5-message-arrive-mine}
.conversation-avatar.tiny{box-shadow:0 0 0 3px white,0 6px 16px rgba(19,37,67,.1)!important}
.conversation-composer{
  border:1px solid rgba(60,83,115,.10)!important;border-radius:23px!important;padding:6px!important;
  background:rgba(255,255,255,.92)!important;box-shadow:0 14px 38px rgba(20,38,68,.09)!important;
}
.conversation-send-button{border-radius:18px!important;background:linear-gradient(145deg,var(--brand),var(--v5-electric))!important;box-shadow:0 10px 24px color-mix(in srgb,var(--brand) 28%,transparent)!important;transition:.25s var(--v5-spring)!important}
.conversation-send-button:hover{transform:translateY(-2px) rotate(-5deg) scale(1.06);filter:brightness(1.06)}
.conversation-send-button:active{transform:scale(.92)}
.conversation-list-item{transition:transform .24s var(--v5-ease),background .24s ease,box-shadow .24s ease!important}
.conversation-list-item:hover{transform:translateX(-3px)}
.conversation-list-item.active{box-shadow:0 10px 28px color-mix(in srgb,var(--brand) 10%,transparent)!important}

/* Department design */
.department-shell-v5{grid-template-columns:minmax(0,1fr) 330px!important;align-items:start;gap:22px}
.department-grid-v5{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important}
.department-card-v5{
  --pointer-x:50%;--pointer-y:50%;
  min-height:285px;position:relative;overflow:hidden;padding:21px;border-radius:27px;
  background:linear-gradient(145deg,rgba(255,255,255,.96),color-mix(in srgb,var(--dept-color) 4%,white));
  border:1px solid color-mix(in srgb,var(--dept-color) 18%,rgba(70,90,120,.08));
  box-shadow:0 18px 50px rgba(18,36,65,.075);
  transition:transform .34s var(--v5-ease),box-shadow .34s ease,border-color .34s ease;
}
.department-card-v5::before{
  content:"";position:absolute;width:180px;height:180px;border-radius:50%;left:calc(var(--pointer-x) - 90px);top:calc(var(--pointer-y) - 90px);
  background:radial-gradient(circle,color-mix(in srgb,var(--dept-color) 15%,transparent),transparent 68%);opacity:0;transition:opacity .28s;pointer-events:none
}
.department-card-v5:hover{transform:translateY(-7px);border-color:color-mix(in srgb,var(--dept-color) 35%,transparent);box-shadow:0 28px 70px color-mix(in srgb,var(--dept-color) 14%,rgba(18,36,65,.08))}
.department-card-v5:hover::before{opacity:1}
.department-card-glow{position:absolute;width:110px;height:110px;border-radius:50%;left:-32px;top:-34px;background:var(--dept-color);filter:blur(48px);opacity:.10}
.department-card-head-v5{display:flex;align-items:center;justify-content:space-between;position:relative}
.department-symbol-v5{width:50px;height:50px;border-radius:17px;display:grid;place-items:center;color:var(--dept-color);background:color-mix(in srgb,var(--dept-color) 10%,white);border:1px solid color-mix(in srgb,var(--dept-color) 20%,white);box-shadow:0 10px 26px color-mix(in srgb,var(--dept-color) 12%,transparent)}
.department-symbol-v5 .ui-icon{width:23px}
.department-state-v5{display:flex;align-items:center;gap:7px;font-size:.72rem;color:var(--muted)}
.department-state-v5 i{width:8px;height:8px;border-radius:50%;background:#9aa5b3}.department-state-v5 i.is-active{background:#28b67a;box-shadow:0 0 0 5px rgba(40,182,122,.10),0 0 16px rgba(40,182,122,.3)}
.department-card-copy-v5{margin:17px 0 14px}.department-card-copy-v5 small{color:var(--dept-color);font-weight:800}.department-card-copy-v5 h2{margin:2px 0 4px;font-size:1.18rem}.department-card-copy-v5 p{margin:0;color:var(--muted);font-size:.78rem}
.department-members-v5{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-block:1px solid rgba(58,78,108,.075)}
.department-avatar-stack{display:flex;direction:ltr;align-items:center;padding-left:8px}
.department-member-avatar,.department-more-members{width:38px;height:38px;border-radius:50%;border:3px solid white;margin-left:-9px;display:grid;place-items:center;padding:0;overflow:hidden;background:linear-gradient(145deg,var(--dept-color),var(--v5-violet));color:white;box-shadow:0 5px 14px rgba(25,42,70,.12);transition:.25s var(--v5-spring)}
.department-member-avatar:hover{transform:translateY(-5px) scale(1.1);z-index:5}.department-member-avatar img{width:100%;height:100%;object-fit:cover}.department-member-avatar b{font-size:.72rem}
.department-more-members{font-size:.66rem;background:#17233b;z-index:1}.department-no-members{font-size:.7rem;color:var(--muted)}
.department-member-count{font-size:.72rem;color:var(--muted);font-weight:700}
.department-stats-v5{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px 0}.department-stats-v5 span{display:flex;align-items:baseline;gap:5px}.department-stats-v5 strong{font-size:1rem}.department-stats-v5 small{color:var(--muted);font-size:.68rem}
.department-actions-v5{display:flex;gap:8px;margin-top:auto}.department-actions-v5 form{margin:0}
.v5-action-button{height:38px;padding:0 12px;border-radius:13px;border:1px solid rgba(61,81,110,.10);background:rgba(255,255,255,.72);display:inline-flex;align-items:center;justify-content:center;gap:6px;text-decoration:none;color:var(--ink);font:inherit;font-size:.74rem;font-weight:700;cursor:pointer;transition:.24s var(--v5-ease)}
.v5-action-button .ui-icon{width:15px}.v5-action-button.edit:hover{color:var(--brand);background:color-mix(in srgb,var(--brand) 7%,white);border-color:color-mix(in srgb,var(--brand) 22%,white);transform:translateY(-2px)}
.v5-action-button.delete:hover{color:#c7465b;background:#fff4f6;border-color:#f4cdd4;transform:translateY(-2px)}.v5-action-button:disabled{opacity:.4;cursor:not-allowed;transform:none!important}
.department-editor-v5{position:sticky;top:94px!important;border-radius:28px!important;background:rgba(255,255,255,.82)!important;backdrop-filter:blur(22px)}
.department-editor-icon{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(145deg,color-mix(in srgb,var(--brand) 12%,white),white);color:var(--brand);box-shadow:0 13px 28px color-mix(in srgb,var(--brand) 12%,transparent);margin-bottom:10px}
.department-editor-v5>p{color:var(--muted);font-size:.76rem}.color-field-v5 input[type=color]{width:100%;height:48px;border:0;border-radius:16px;padding:4px;background:#f5f7fa}
.v5-removing{animation:v5-remove-card .36s ease forwards!important}

/* Rank identity cards */
.rank-grid-v5{grid-template-columns:repeat(auto-fit,minmax(285px,1fr))!important;gap:17px!important}
.rank-card-v5{
  --pointer-x:50%;--pointer-y:50%;
  position:relative;overflow:hidden;min-height:365px;padding:22px!important;border-radius:29px!important;
  background:linear-gradient(145deg,color-mix(in srgb,var(--rank-color) 8%,white),rgba(255,255,255,.97) 42%,color-mix(in srgb,var(--rank-color) 3%,white))!important;
  border:1px solid color-mix(in srgb,var(--rank-color) 20%,rgba(60,80,110,.08))!important;
  transition:transform .36s var(--v5-ease),box-shadow .36s ease!important;
}
.rank-card-v5::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle 150px at var(--pointer-x) var(--pointer-y),color-mix(in srgb,var(--rank-color) 14%,transparent),transparent 70%);opacity:0;transition:.3s}
.rank-card-v5:hover{transform:translateY(-8px) rotateX(1deg);box-shadow:0 30px 78px color-mix(in srgb,var(--rank-color) 15%,rgba(18,36,65,.08))!important}.rank-card-v5:hover::before{opacity:1}
.rank-card-energy i{position:absolute;border:1px solid color-mix(in srgb,var(--rank-color) 18%,transparent);border-radius:50%;pointer-events:none}.rank-card-energy i:first-child{width:150px;height:150px;left:-65px;top:-58px;animation:v5-ambient-spin 16s linear infinite}.rank-card-energy i:last-child{width:100px;height:100px;right:-42px;bottom:-38px;border-style:dashed;animation:v5-ambient-spin 12s reverse linear infinite}
.rank-card-head-v5{position:relative;z-index:1}
.rank-emblem-v5{width:64px!important;height:64px!important;border-radius:21px!important;position:relative;color:var(--rank-color)!important;background:color-mix(in srgb,var(--rank-color) 8%,white)!important;border:1px solid color-mix(in srgb,var(--rank-color) 24%,white)!important;box-shadow:0 13px 35px color-mix(in srgb,var(--rank-color) 20%,transparent),inset 0 1px white!important}
.rank-emblem-v5 .ui-icon{width:31px;filter:drop-shadow(0 0 8px color-mix(in srgb,var(--rank-color) 65%,transparent));animation:v5-emblem-breathe 3.3s ease-in-out infinite}
.rank-emblem-halo{position:absolute;inset:-7px;border-radius:24px;border:1px solid color-mix(in srgb,var(--rank-color) 22%,transparent);animation:v5-halo 3s ease-out infinite}
.rank-system-pill{padding:6px 10px;border-radius:999px;background:color-mix(in srgb,var(--rank-color) 8%,white);color:color-mix(in srgb,var(--rank-color) 75%,#273248);font-size:.66rem;font-weight:800}
.rank-title-v5{position:relative;margin:18px 0 14px}.rank-title-v5 h2{font-size:1.26rem;margin:0;color:color-mix(in srgb,var(--rank-color) 72%,#152039)}.rank-title-v5 .rank-line{display:block;width:42px;height:3px;border-radius:99px;background:linear-gradient(90deg,var(--rank-color),transparent);margin:8px 0}.rank-title-v5 p{color:var(--muted);font-size:.75rem;min-height:36px;margin:0}
.rank-holders-v5{padding:13px;border-radius:18px;background:rgba(255,255,255,.63);border:1px solid rgba(62,82,112,.07)}.rank-holders-v5>small{display:block;color:var(--muted);font-size:.66rem;margin-bottom:8px}.rank-holder-list-v5{display:flex;flex-wrap:wrap;gap:7px}
.rank-holder-v5{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:var(--rank-color);font:inherit;padding:3px 5px 3px 8px;border-radius:999px;cursor:pointer;transition:.22s}.rank-holder-v5:hover{background:color-mix(in srgb,var(--rank-color) 9%,white);transform:translateY(-2px)}
.rank-holder-avatar{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;overflow:hidden;background:var(--rank-color);color:white;box-shadow:0 0 0 2px white,0 4px 12px color-mix(in srgb,var(--rank-color) 22%,transparent)}.rank-holder-avatar img{width:100%;height:100%;object-fit:cover}.rank-holder-v5 strong{font-size:.69rem}.rank-empty-holder{font-size:.7rem;color:var(--muted)}
.rank-metrics-v5{margin-top:13px!important;padding:12px 0!important;border-block:1px solid rgba(59,79,109,.07)}.rank-metrics-v5 strong{color:var(--rank-color)!important}
.rank-actions-v5{margin-top:13px!important}.rank-actions-v5 .v5-action-button{flex:1}.rank-actions-v5 form{display:flex;flex:1}

/* Public profile inspired by premium mobile profile menus */
.public-profile-drawer{background:linear-gradient(180deg,#fbfcff,#f4f7fc)!important}
.public-profile-drawer>header{background:rgba(255,255,255,.78);backdrop-filter:blur(18px);border-bottom:1px solid rgba(57,78,108,.08)}
.public-profile-v5-card{--pointer-x:50%;--pointer-y:50%;position:relative;padding:0 18px 22px;isolation:isolate}
.public-profile-v5-cover{height:145px;margin:0 -18px -52px;border-radius:0 0 34px 34px;overflow:hidden;position:relative;background:
  radial-gradient(circle at 24% 34%,color-mix(in srgb,var(--profile-accent) 56%,transparent),transparent 22%),
  linear-gradient(135deg,#11192d,color-mix(in srgb,var(--profile-accent) 44%,#17223d));}
.public-profile-v5-cover::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);background-size:28px 28px;animation:v5-grid-drift 16s linear infinite}
.public-profile-v5-cover i{position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.18)}.public-profile-v5-cover i:first-child{width:95px;height:95px;right:22px;top:20px;animation:v5-ambient-spin 10s linear infinite}.public-profile-v5-cover i:nth-child(2){width:54px;height:54px;right:42px;top:40px;border-style:dashed;animation:v5-ambient-spin 6s reverse linear infinite}.public-profile-v5-cover span{position:absolute;width:7px;height:7px;left:28px;top:38px;border-radius:50%;background:#fff;box-shadow:0 0 20px #fff;animation:v5-pulse 2s infinite}
.public-profile-v5-identity{position:relative;display:flex;align-items:flex-end;gap:15px;z-index:2}
.profile-drawer-avatar-v5{width:104px!important;height:104px!important;border-radius:30px!important;border:5px solid #fff!important;box-shadow:0 18px 44px rgba(12,25,51,.20)!important;background:linear-gradient(145deg,var(--profile-accent),var(--v5-violet))!important}
.profile-online-ring{position:absolute!important;width:16px!important;height:16px!important;border:3px solid white!important;border-radius:50%!important;background:#27bd78!important;right:1px!important;bottom:8px!important;box-shadow:0 0 0 4px rgba(39,189,120,.12),0 0 14px rgba(39,189,120,.45)!important}
.public-profile-v5-copy{padding-bottom:8px;min-width:0}.public-profile-v5-copy h2{font-size:1.28rem;margin:7px 0 1px}.public-profile-v5-copy p{margin:0;color:var(--muted);font-size:.78rem}.public-profile-v5-copy>small{color:#8b95a7;font-size:.64rem}
.role-glow-pill{box-shadow:0 5px 18px color-mix(in srgb,var(--role-color) 14%,transparent)}
.public-profile-v5-membership{margin:18px 0 12px;padding:15px 16px;border-radius:21px;color:white;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(130deg,#101827,#1f2a43);box-shadow:0 14px 38px rgba(14,25,46,.18);position:relative;overflow:hidden}
.public-profile-v5-membership::after{content:"";position:absolute;width:100px;height:100px;border:1px solid rgba(255,255,255,.11);border-radius:50%;left:-28px;top:-42px}.public-profile-v5-membership span{display:grid}.public-profile-v5-membership small{color:#aab4c9;font-size:.62rem}.public-profile-v5-membership strong{font-size:.88rem}.public-profile-v5-membership>b{font-size:.72rem;color:#c9d2e5}
.profile-achievement-grid-v5{grid-template-columns:repeat(4,1fr)!important;gap:7px!important}.profile-achievement-grid-v5 span{border-radius:16px!important;background:rgba(255,255,255,.78)!important;box-shadow:0 8px 22px rgba(20,38,66,.05)}
.public-profile-meta-v5{display:grid!important;grid-template-columns:1fr 1fr;gap:8px}.public-profile-meta-v5 span{display:grid!important;padding:11px 12px;border-radius:15px;background:rgba(255,255,255,.72);border:1px solid rgba(56,78,108,.08)}.public-profile-meta-v5 small{font-size:.62rem;color:var(--muted)}.public-profile-meta-v5 b{font-size:.74rem}

/* Own profile gets the same premium energy */
.nasq-v5 .profile-hero{--pointer-x:50%;--pointer-y:50%;position:relative;overflow:hidden;border-radius:32px!important;background:linear-gradient(135deg,#101a31,color-mix(in srgb,var(--brand) 38%,#15223c))!important;color:white!important;box-shadow:0 30px 80px rgba(14,28,52,.18)!important}
.nasq-v5 .profile-hero::before{content:"";position:absolute;width:260px;height:260px;border-radius:50%;left:calc(var(--pointer-x) - 130px);top:calc(var(--pointer-y) - 130px);background:radial-gradient(circle,color-mix(in srgb,var(--v5-cyan) 14%,transparent),transparent 67%);pointer-events:none}
.nasq-v5 .profile-hero::after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(90deg,black,transparent 80%);animation:v5-grid-drift 20s linear infinite}
.nasq-v5 .profile-identity,.nasq-v5 .profile-hero-meta{position:relative;z-index:2}.nasq-v5 .profile-identity-copy h1,.nasq-v5 .profile-hero-meta{color:white!important}.nasq-v5 .profile-identity-copy p{color:#c6d1df!important}

/* Custom precision cursor */
@media(pointer:fine){
  .v5-cursor-ready,.v5-cursor-ready a,.v5-cursor-ready button,.v5-cursor-ready input,.v5-cursor-ready select,.v5-cursor-ready textarea,.v5-cursor-ready label{cursor:none!important}
}
.v5-cursor{position:fixed;left:0;top:0;width:0;height:0;z-index:2147483647;pointer-events:none;opacity:0;transition:opacity .18s;mix-blend-mode:multiply}
.v5-cursor.is-visible{opacity:1}.v5-cursor i{position:absolute;width:32px;height:32px;left:-16px;top:-16px;border:1.5px solid color-mix(in srgb,var(--brand) 70%,var(--v5-violet));border-radius:50%;box-shadow:0 0 18px color-mix(in srgb,var(--brand) 22%,transparent);transition:width .2s,height .2s,left .2s,top .2s,background .2s,transform .2s}
.v5-cursor span{position:absolute;width:5px;height:5px;left:-2.5px;top:-2.5px;border-radius:50%;background:var(--brand);box-shadow:0 0 8px var(--brand)}
.v5-cursor.is-hover i{width:45px;height:45px;left:-22.5px;top:-22.5px;background:color-mix(in srgb,var(--brand) 6%,transparent);border-color:color-mix(in srgb,var(--v5-violet) 72%,var(--brand))}
.v5-cursor.is-clicking i{animation:v5-cursor-click .42s var(--v5-spring)}
.v5-click-pulse{position:fixed;z-index:2147483646;pointer-events:none;width:12px;height:12px;border-radius:50%;border:2px solid color-mix(in srgb,var(--brand) 70%,var(--v5-violet));transform:translate(-50%,-50%);animation:v5-click-pulse .72s ease-out forwards}

/* Mobile login: technical but calm */
.auth-v50{overflow:hidden;background:linear-gradient(135deg,#f8f9ff,#f4fbfd)}
.auth-v50 .login-v44-visual{overflow:hidden}
.login-v5-tech-core{position:absolute;left:8%;bottom:8%;width:290px;height:290px;pointer-events:none;opacity:.72}
.login-v5-ring{position:absolute;border:1px solid rgba(255,255,255,.22);border-radius:50%;inset:12%;animation:v5-ambient-spin 18s linear infinite}.login-v5-ring.ring-b{inset:26%;border-style:dashed;animation-duration:11s;animation-direction:reverse}.login-v5-ring.ring-c{inset:40%;border-color:rgba(62,218,227,.36);box-shadow:0 0 28px rgba(62,218,227,.08);animation:v5-orbit-breathe 5s ease-in-out infinite}
.login-v5-node{position:absolute;width:8px;height:8px;border-radius:50%;background:#82f1ff;box-shadow:0 0 20px #82f1ff}.login-v5-node.node-a{left:28px;top:112px;animation:v5-node-float 7s infinite}.login-v5-node.node-b{right:48px;top:36px;animation:v5-node-float 8s -2s infinite}.login-v5-node.node-c{right:18px;bottom:64px;animation:v5-node-float 6s -3s infinite}.login-v5-node.node-d{left:92px;bottom:24px;animation:v5-node-float 9s -5s infinite}
.login-v5-scan{position:absolute;left:18%;right:18%;top:50%;height:1px;background:linear-gradient(90deg,transparent,#8cf6ff,transparent);box-shadow:0 0 14px #8cf6ff;animation:v5-scan 4.5s ease-in-out infinite}
.login-v5-mobile-atmosphere{display:none}
.auth-v50 .login-v44-brand{animation:v5-login-rise .8s .05s var(--v5-ease) both}.auth-v50 .login-v44-message>*{animation:v5-login-rise .75s var(--v5-ease) both}.auth-v50 .login-v44-message>*:nth-child(1){animation-delay:.12s}.auth-v50 .login-v44-message>*:nth-child(2){animation-delay:.2s}.auth-v50 .login-v44-message>*:nth-child(3){animation-delay:.29s}.auth-v50 .login-v44-message>*:nth-child(4){animation-delay:.38s}
.auth-v50 .login-v44-card{animation:v5-login-card .82s .1s var(--v5-ease) both;border-radius:32px!important;box-shadow:0 34px 100px rgba(16,31,62,.15)!important}
.auth-v50 .login-v44-submit{position:relative;overflow:hidden;border-radius:19px!important;box-shadow:0 16px 36px color-mix(in srgb,var(--brand) 26%,transparent)}
.auth-v50 .login-v44-submit::after{content:"";position:absolute;inset:-60% auto -60% -35%;width:25%;transform:rotate(17deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);animation:v5-button-shine 4s 1s infinite}

/* Animations */
@keyframes v5-grid-drift{to{background-position:48px 48px}}
@keyframes v5-ambient-spin{to{transform:rotate(360deg)}}
@keyframes v5-orbit-breathe{0%,100%{transform:scale(.96);opacity:.4}50%{transform:scale(1.06);opacity:.8}}
@keyframes v5-node-float{0%,100%{transform:translate3d(0,0,0);opacity:.3}50%{transform:translate3d(10px,-18px,0) scale(1.35);opacity:.9}}
@keyframes v5-data-pass{0%,100%{transform:translateX(-30px);opacity:.1}50%{transform:translateX(55px);opacity:.7}}
@keyframes v5-ping{0%{transform:scale(.3);opacity:.8}70%,100%{transform:scale(4);opacity:0}}
@keyframes v5-pulse{0%,100%{transform:scale(.85);opacity:.45}50%{transform:scale(1.25);opacity:1}}
@keyframes v5-button-shine{0%,72%,100%{left:-38%;opacity:0}82%{opacity:1}94%{left:125%;opacity:0}}
@keyframes v5-ripple{to{transform:translate(-50%,-50%) scale(18);opacity:0}}
@keyframes v5-route-out{to{opacity:.15;transform:translateY(6px) scale(.995);filter:blur(2px)}}
@keyframes v5-route-in{from{opacity:0;transform:translateY(14px) scale(.992);filter:blur(3px)}to{opacity:1;transform:none;filter:none}}
@keyframes v5-loading-bar{from{transform:translateX(120%)}to{transform:translateX(-320%)}}
@keyframes v5-message-arrive{from{opacity:0;transform:translateX(-16px) translateY(7px) scale(.96)}to{opacity:1;transform:none}}
@keyframes v5-message-arrive-mine{from{opacity:0;transform:translateX(16px) translateY(7px) scale(.96)}to{opacity:1;transform:none}}
@keyframes v5-emblem-breathe{0%,100%{transform:scale(.96);filter:drop-shadow(0 0 5px color-mix(in srgb,var(--rank-color) 42%,transparent))}50%{transform:scale(1.06);filter:drop-shadow(0 0 13px color-mix(in srgb,var(--rank-color) 75%,transparent))}}
@keyframes v5-halo{0%{transform:scale(.86);opacity:.65}80%,100%{transform:scale(1.28);opacity:0}}
@keyframes v5-remove-card{to{opacity:0;transform:scale(.88) translateY(18px);filter:blur(5px)}}
@keyframes v5-cursor-click{50%{transform:scale(.62)}}
@keyframes v5-click-pulse{to{width:72px;height:72px;opacity:0}}
@keyframes v5-login-rise{from{opacity:0;transform:translateY(18px);filter:blur(4px)}to{opacity:1;transform:none;filter:none}}
@keyframes v5-login-card{from{opacity:0;transform:translateX(-28px) scale(.965);filter:blur(5px)}to{opacity:1;transform:none;filter:none}}
@keyframes v5-scan{0%,100%{transform:translateY(-80px);opacity:0}15%,85%{opacity:.75}50%{transform:translateY(80px)}}

/* Responsive */
@media(max-width:1180px){
  .department-shell-v5{grid-template-columns:1fr!important}.department-editor-v5{position:relative!important;top:auto!important}
}
@media(max-width:780px){
  .tech-ambient-v5{inset:66px 0 var(--mobile-nav-height,66px)!important}
  .page-head-orbit{display:none}
  .department-grid-v5{grid-template-columns:1fr!important}
  .rank-grid-v5{grid-template-columns:1fr!important}
  .department-card-v5,.rank-card-v5{border-radius:24px!important}
  .conversation-message .conversation-bubble,.group-message .group-message-bubble,.support-message-stack{max-width:86%!important}
  .profile-achievement-grid-v5{grid-template-columns:repeat(2,1fr)!important}
  .public-profile-v5-cover{height:125px}
  .profile-drawer-avatar-v5{width:88px!important;height:88px!important;border-radius:26px!important}
}
@media(max-width:640px){
  .auth-v50{overflow:auto;min-height:100dvh;background:
    radial-gradient(circle at 50% 5%,rgba(77,124,255,.20),transparent 32%),
    linear-gradient(180deg,#091225 0,#0d1830 44%,#f7f9fd 44%,#f7f9fd 100%)}
  .auth-v50 .login-v44-shell{min-height:100dvh;position:relative}
  .auth-v50 .login-v44-visual{display:none!important}
  .auth-v50 .login-v44-access{position:relative;overflow:hidden;padding-top:max(34px,env(safe-area-inset-top))!important;background:transparent!important}
  .login-v5-mobile-atmosphere{display:block;position:absolute;inset:0 0 auto;height:43vh;min-height:330px;pointer-events:none;overflow:hidden}
  .login-v5-mobile-atmosphere::before{content:"";position:absolute;width:240px;height:240px;border-radius:50%;left:50%;top:-70px;transform:translateX(-50%);border:1px solid rgba(105,170,255,.20);box-shadow:0 0 90px rgba(75,126,255,.13);animation:v5-orbit-breathe 7s infinite}
  .login-v5-mobile-atmosphere::after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(109,157,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(109,157,255,.055) 1px,transparent 1px);background-size:32px 32px;mask-image:linear-gradient(black,transparent 85%);animation:v5-grid-drift 18s linear infinite}
  .login-v5-mobile-atmosphere span{position:absolute;width:7px;height:7px;border-radius:50%;background:#78e9ff;box-shadow:0 0 18px #78e9ff;z-index:2;animation:v5-node-float 6s ease-in-out infinite}.login-v5-mobile-atmosphere span:nth-child(1){left:18%;top:18%}.login-v5-mobile-atmosphere span:nth-child(2){right:17%;top:30%;animation-delay:-2s}.login-v5-mobile-atmosphere span:nth-child(3){left:31%;top:52%;animation-delay:-4s}
  .login-v5-mobile-atmosphere i{position:absolute;width:130px;height:1px;background:linear-gradient(90deg,transparent,rgba(111,99,255,.65),transparent);z-index:2;animation:v5-data-pass 5s infinite}.login-v5-mobile-atmosphere i:nth-of-type(1){left:5%;top:33%}.login-v5-mobile-atmosphere i:nth-of-type(2){right:6%;top:55%;animation-delay:-2s}
  .login-v5-mobile-atmosphere b{position:absolute;width:92px;height:92px;border:1px dashed rgba(123,102,255,.3);border-radius:50%;left:calc(50% - 46px);top:76px;animation:v5-ambient-spin 9s linear infinite;z-index:2}
  .auth-v50 .login-v44-mobile-brand{position:relative;z-index:3;color:#fff;animation:v5-login-rise .7s .05s both}.auth-v50 .login-v44-mobile-brand small{color:#aebdd8!important}
  .auth-v50 .login-v44-card{position:relative;z-index:3;margin-top:54px!important;border-radius:32px 32px 24px 24px!important;background:rgba(255,255,255,.94)!important;backdrop-filter:blur(24px);box-shadow:0 28px 70px rgba(5,16,36,.26)!important}
  .auth-v50 .login-v44-mobile-copy{position:relative;z-index:3}
}
@media(prefers-reduced-motion:reduce){
  .nasq-v5 *,.auth-v50 *{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
  .v5-cursor,.v5-click-pulse{display:none!important}
}

/* v5 chat/profile finishing rules */
.support-message{flex-direction:row!important}
.support-message-stack{display:flex!important;flex-direction:column!important}
.role-inline-badge,.role-mini-badge,.person-role{
  border-radius:999px!important;
  color:var(--role-color)!important;
  background:color-mix(in srgb,var(--role-color) 8%,white)!important;
  border:1px solid color-mix(in srgb,var(--role-color) 17%,transparent)!important;
}
.role-inline-badge .ui-icon,.role-mini-badge .ui-icon,.person-role .ui-icon{filter:drop-shadow(0 0 7px color-mix(in srgb,var(--role-color) 55%,transparent))}
.profile-drawer-hero{position:relative;overflow:hidden;border-radius:25px;padding:26px 18px!important;background:linear-gradient(140deg,#10192d,color-mix(in srgb,var(--brand) 30%,#17233e))!important;color:white!important}
.profile-drawer-hero::after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:26px 26px;animation:v5-grid-drift 18s linear infinite}
.profile-drawer-hero>*{position:relative;z-index:1}.profile-drawer-hero p{color:#bdc9dc!important}
.profile-drawer-grid>span{border-radius:16px!important;background:rgba(255,255,255,.74)!important;transition:.25s var(--v5-ease)}
.profile-drawer-grid>span:hover{transform:translateY(-3px);box-shadow:0 10px 26px rgba(20,38,68,.07)}

.nasq-v5:not(.conversation-mode) .content-area>*:not(.tech-ambient){position:relative;z-index:1}

/* Cross-document transition fallback for routes that intentionally reload (e.g. dedicated chat runtimes). */
@view-transition{navigation:auto}
::view-transition-old(root){animation:v5-view-old .18s ease both}
::view-transition-new(root){animation:v5-view-new .42s var(--v5-ease) both}
@keyframes v5-view-old{to{opacity:0;transform:scale(.997);filter:blur(1.5px)}}
@keyframes v5-view-new{from{opacity:0;transform:translateY(7px) scale(.997);filter:blur(2px)}to{opacity:1;transform:none;filter:none}}

/* Additional glass/shine response for primary dashboard blocks */
.nasq-v5:not(.conversation-mode) .stat-card,
.nasq-v5:not(.conversation-mode) .dashboard-card,
.nasq-v5:not(.conversation-mode) .metric-card{
  position:relative;overflow:hidden;
  background:linear-gradient(145deg,rgba(255,255,255,.88),rgba(255,255,255,.68))!important;
  backdrop-filter:blur(18px) saturate(125%);
}
.nasq-v5:not(.conversation-mode) .stat-card::after,
.nasq-v5:not(.conversation-mode) .dashboard-card::after,
.nasq-v5:not(.conversation-mode) .metric-card::after{
  content:"";position:absolute;inset:-70% auto -70% -34%;width:16%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);
  transform:rotate(16deg);opacity:0;pointer-events:none;
}
.nasq-v5:not(.conversation-mode) .stat-card:hover::after,
.nasq-v5:not(.conversation-mode) .dashboard-card:hover::after,
.nasq-v5:not(.conversation-mode) .metric-card:hover::after{animation:v5-card-glint .9s ease}
@keyframes v5-card-glint{0%{left:-34%;opacity:0}25%{opacity:.85}100%{left:120%;opacity:0}}


/* ========================================================================
   NASQ v5.5.0 — Institutional Experience & Communication Fixes
   Uses the institute identity tokens only: --navy, --brand, --amber.
   ======================================================================== */
:root{
  --v55-sidebar-collapsed:86px;
  --v55-ease:cubic-bezier(.22,.8,.24,1);
  --v55-brand-soft:color-mix(in srgb,var(--brand) 9%,#fff);
  --v55-navy-soft:color-mix(in srgb,var(--navy) 6%,#fff);
}
/* keep decorative v5 accents inside institute palette */
.nasq-v5{--v5-violet:var(--brand)!important;--v5-cyan:color-mix(in srgb,var(--brand) 72%,#fff)!important}

/* Reports: filter is part of document flow and can never cover results */
.route-reports .report-filter-v4{
  position:relative!important;top:auto!important;z-index:4!important;
  margin:0 0 18px!important;
  background:rgba(255,255,255,.94)!important;
  border:1px solid color-mix(in srgb,var(--navy) 9%,transparent)!important;
  box-shadow:0 10px 30px rgba(15,30,63,.055)!important;
}
.route-reports [data-report-results]{
  position:relative!important;z-index:1!important;clear:both;
}
.route-reports .reports-v4-head{position:relative;z-index:2}

/* Desktop sidebar collapse / restore */
@media(min-width:861px){
  .sidebar{
    width:var(--sidebar)!important;
    transition:width .34s var(--v55-ease),padding .34s var(--v55-ease),box-shadow .34s ease!important;
    overflow-x:hidden!important;
  }
  .main-area{transition:margin-right .34s var(--v55-ease)!important}
  body.sidebar-collapsed .sidebar{
    width:var(--v55-sidebar-collapsed)!important;padding-inline:12px!important;
  }
  body.sidebar-collapsed .main-area{margin-right:var(--v55-sidebar-collapsed)!important}
  body.sidebar-collapsed .sidebar .institute-brand{
    padding-inline:2px!important;justify-content:center!important;
  }
  body.sidebar-collapsed .sidebar .institute-brand img{
    width:52px!important;max-width:52px!important;height:52px!important;object-fit:contain;
  }
  body.sidebar-collapsed .sidebar .nav-caption,
  body.sidebar-collapsed .sidebar .nav-link>span:not(.nav-icon),
  body.sidebar-collapsed .sidebar .nav-link>.nav-count,
  body.sidebar-collapsed .sidebar .install-button>span,
  body.sidebar-collapsed .sidebar .user-mini>span:last-child{
    opacity:0!important;width:0!important;max-width:0!important;overflow:hidden!important;
    pointer-events:none!important;margin:0!important;padding:0!important;
  }
  body.sidebar-collapsed .sidebar .nav-link{
    width:54px!important;height:50px!important;margin:4px auto!important;padding:0!important;
    justify-content:center!important;gap:0!important;border-radius:17px!important;
  }
  body.sidebar-collapsed .sidebar .nav-icon{margin:0!important}
  body.sidebar-collapsed .sidebar .nav-icon .ui-icon{width:22px!important;height:22px!important}
  body.sidebar-collapsed .sidebar .install-button{
    width:52px!important;min-width:52px!important;height:48px!important;margin-inline:auto!important;
    justify-content:center!important;padding:0!important;
  }
  body.sidebar-collapsed .sidebar .user-mini{
    width:52px!important;margin-inline:auto!important;justify-content:center!important;padding:4px!important;
  }
  body.sidebar-collapsed .sidebar .user-avatar.compact{margin:0!important}
  .menu-toggle{display:grid!important}
}

/* Profile drawers: large, balanced, readable on desktop; bottom-sheet on phones */
@media(min-width:781px){
  .profile-drawer-backdrop{
    display:grid!important;place-items:center!important;padding:28px!important;
  }
  .profile-drawer{
    position:relative!important;inset:auto!important;
    width:min(820px,calc(100vw - 72px))!important;
    height:auto!important;max-height:min(860px,90dvh)!important;
    border-radius:30px!important;overflow:hidden!important;
    box-shadow:0 38px 110px rgba(15,30,63,.24)!important;
    transform:translateY(22px) scale(.975)!important;
    opacity:0;
    transition:transform .28s var(--v55-ease),opacity .22s ease!important;
  }
  .profile-drawer-backdrop.show .profile-drawer{
    transform:none!important;opacity:1!important;
  }
  .profile-drawer>header{
    flex:0 0 68px!important;height:68px!important;padding-inline:24px!important;
  }
  .profile-drawer-body{padding:24px 28px 30px!important}
  .public-profile-drawer{width:min(860px,calc(100vw - 72px))!important}
}
@media(max-width:780px){
  .profile-drawer-backdrop{display:flex!important;align-items:flex-end!important}
  .profile-drawer{
    width:100%!important;max-width:none!important;height:auto!important;max-height:92dvh!important;
    top:auto!important;right:0!important;left:0!important;bottom:0!important;
    border-radius:28px 28px 0 0!important;
    transform:translateY(104%)!important;
  }
  .profile-drawer-backdrop.show .profile-drawer{transform:translateY(0)!important}
  .profile-drawer-body{padding:18px!important}
}
.profile-drawer-avatar,
.profile-drawer-avatar-v5{
  border-radius:50%!important;aspect-ratio:1/1!important;
}
.profile-drawer-avatar img,
.profile-drawer-avatar-v5 img{
  width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;border-radius:50%!important;
}
.public-profile-v5-card{
  max-width:760px!important;margin:0 auto!important;padding-bottom:26px!important;
}
.public-profile-v5-cover{
  background:
    radial-gradient(circle at 24% 34%,color-mix(in srgb,var(--profile-accent,var(--brand)) 42%,transparent),transparent 25%),
    linear-gradient(135deg,var(--navy),color-mix(in srgb,var(--brand) 34%,var(--navy)))!important;
}
.public-profile-v5-membership{
  background:linear-gradient(135deg,var(--navy),color-mix(in srgb,var(--brand) 20%,var(--navy)))!important;
}
.public-profile-meta-v5{grid-template-columns:repeat(2,minmax(0,1fr))!important}
@media(max-width:560px){.public-profile-meta-v5{grid-template-columns:1fr!important}}

/* Private messaging: composer is a guaranteed grid row, never hidden below viewport */
body.route-private-messages .conversation-app{
  min-height:0!important;
}
body.route-private-messages .direct-workspace{
  height:100%!important;min-height:0!important;overflow:hidden!important;
}
body.route-private-messages .direct-chat-panel{
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr) auto!important;
  min-height:0!important;height:100%!important;max-height:100%!important;
  overflow:hidden!important;
  background:linear-gradient(180deg,#f7fafb 0,#eef4f4 100%)!important;
}
body.route-private-messages .direct-chat-panel[hidden]{display:none!important}
body.route-private-messages .direct-chat-panel>.conversation-chat-head{
  grid-row:1;position:relative!important;z-index:9!important;min-height:72px!important;
}
body.route-private-messages .direct-chat-panel>.conversation-messages{
  grid-row:2;min-height:0!important;height:auto!important;overflow-y:auto!important;overflow-x:hidden!important;
  padding-bottom:18px!important;
}
body.route-private-messages .direct-chat-panel>.direct-composer-wrap{
  grid-row:3;display:block!important;visibility:visible!important;opacity:1!important;
  position:relative!important;inset:auto!important;bottom:auto!important;
  flex:0 0 auto!important;min-height:70px!important;width:100%!important;
  background:rgba(255,255,255,.96)!important;border-top:1px solid color-mix(in srgb,var(--navy) 8%,transparent)!important;
  backdrop-filter:blur(20px) saturate(1.1)!important;
}
body.route-private-messages .direct-composer{
  display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;
  align-items:end!important;gap:9px!important;width:100%!important;
}
body.route-private-messages .direct-composer textarea{
  display:block!important;visibility:visible!important;opacity:1!important;
  width:100%!important;min-width:0!important;min-height:46px!important;max-height:140px!important;
  border-radius:18px!important;padding:12px 15px!important;
  background:#f8fbfb!important;border:1px solid color-mix(in srgb,var(--navy) 9%,transparent)!important;
}
body.route-private-messages .conversation-send-button{
  display:grid!important;visibility:visible!important;opacity:1!important;
  width:48px!important;height:48px!important;min-width:48px!important;border-radius:16px!important;
  background:linear-gradient(135deg,var(--brand),color-mix(in srgb,var(--brand) 72%,var(--navy)))!important;
  color:#fff!important;box-shadow:0 10px 24px color-mix(in srgb,var(--brand) 24%,transparent)!important;
}
body.route-private-messages .direct-composer .conversation-attach-button{
  display:grid!important;visibility:visible!important;opacity:1!important;width:46px!important;height:46px!important;border-radius:15px!important;
}
@media(max-width:780px){
  body.route-private-messages .conversation-app{
    height:calc(100dvh - var(--mobile-nav-height,66px) - 8px)!important;min-height:0!important;
  }
  body.route-private-messages .direct-workspace,
  body.route-private-messages .direct-chat-panel{height:100%!important;max-height:100%!important}
  body.route-private-messages .direct-composer-wrap{
    padding:8px 8px calc(8px + env(safe-area-inset-bottom))!important;
  }
}

/* Direct-message avatars: truly circular at every size */
body.route-private-messages .conversation-avatar{
  display:grid!important;place-items:center!important;overflow:visible!important;
  border-radius:50%!important;aspect-ratio:1/1!important;flex-shrink:0!important;
}
body.route-private-messages .conversation-avatar>img{
  width:100%!important;height:100%!important;aspect-ratio:1/1!important;
  object-fit:cover!important;object-position:center!important;border-radius:50%!important;display:block!important;
}
body.route-private-messages .conversation-list .conversation-avatar{
  width:50px!important;height:50px!important;flex-basis:50px!important;
}
body.route-private-messages .conversation-avatar.large{
  width:48px!important;height:48px!important;flex-basis:48px!important;
}
body.route-private-messages .conversation-avatar.tiny{
  width:30px!important;height:30px!important;flex-basis:30px!important;
}
body.route-private-messages .conversation-avatar.xlarge{
  width:92px!important;height:92px!important;border-radius:50%!important;
}

/* Correct sender / receiver placement in RTL chats */
body.route-private-messages .conversation-message{
  width:100%!important;display:flex!important;align-items:flex-end!important;gap:8px!important;
  justify-content:flex-start!important;
}
body.route-private-messages .conversation-message.mine{
  justify-content:flex-end!important;flex-direction:row-reverse!important;
}
body.route-private-messages .conversation-message:not(.mine) .conversation-bubble{
  margin-left:auto!important;margin-right:0!important;border-radius:20px 20px 20px 6px!important;
}
body.route-private-messages .conversation-message.mine .conversation-bubble{
  margin-right:auto!important;margin-left:0!important;border-radius:20px 20px 6px 20px!important;
}

/* Last-seen label */
.chat-presence-label{display:inline-flex!important;align-items:center!important;gap:5px;color:var(--muted)!important;font-size:.68rem!important;line-height:1.45}
.chat-presence-label.online{color:var(--brand)!important;font-weight:750}
.chat-presence-label.online::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 12%,transparent)}

/* Desktop login: calmer and more institutional */
@media(min-width:641px){
  .auth-v50 .login-v5-tech-core{opacity:.34!important;transform:scale(.94)}
  .auth-v50 .login-v5-node{opacity:.35!important;animation-duration:15s!important}
  .auth-v50 .login-v5-ring{animation-duration:42s!important;opacity:.56!important}
  .auth-v50 .login-v5-ring.ring-b{animation-duration:32s!important;opacity:.42!important}
  .auth-v50 .login-v5-ring.ring-c{animation:v5-orbit-breathe 10s ease-in-out infinite!important;opacity:.38!important}
  .auth-v50 .login-v5-scan{animation-duration:11s!important;opacity:.24!important}
  .auth-v50 .login-v44-brand,
  .auth-v50 .login-v44-message>*,
  .auth-v50 .login-v44-card{
    animation-duration:.48s!important;filter:none!important;
  }
  .auth-v50 .login-v44-submit::after{animation-duration:7s!important;opacity:.6}
}

/* Cursor v5.5: precise, quiet, institute-branded */
@media(pointer:fine){
  .v5-cursor{mix-blend-mode:normal!important;filter:none!important}
  .v5-cursor i{
    width:28px!important;height:28px!important;left:-14px!important;top:-14px!important;
    border:1px solid color-mix(in srgb,var(--brand) 72%,var(--navy))!important;
    background:color-mix(in srgb,var(--brand) 4%,transparent)!important;
    box-shadow:0 0 0 1px rgba(255,255,255,.8) inset,0 4px 18px color-mix(in srgb,var(--brand) 14%,transparent)!important;
    backdrop-filter:blur(2px);
  }
  .v5-cursor span{
    width:4px!important;height:4px!important;left:-2px!important;top:-2px!important;
    background:var(--brand)!important;box-shadow:0 0 10px color-mix(in srgb,var(--brand) 60%,transparent)!important;
  }
  .v5-cursor.is-hover i{
    width:40px!important;height:40px!important;left:-20px!important;top:-20px!important;
    background:color-mix(in srgb,var(--brand) 7%,transparent)!important;
    border-color:var(--brand)!important;
  }
  .v5-click-pulse{
    border-color:var(--brand)!important;box-shadow:0 0 22px color-mix(in srgb,var(--brand) 18%,transparent)!important;
  }
}

/* Generic cards/controls remain faithful to institute navy + teal + gold */
.nasq-v5 .button.primary,
.nasq-v5 .quick-create{
  background:linear-gradient(135deg,var(--brand),color-mix(in srgb,var(--brand) 72%,var(--navy)))!important;
}
.nasq-v5 a:focus-visible,.nasq-v5 button:focus-visible,.nasq-v5 input:focus-visible,
.nasq-v5 select:focus-visible,.nasq-v5 textarea:focus-visible{
  outline-color:var(--amber)!important;
}

/* v5.5 admin profile presentation */
.admin-profile-v55{max-width:720px;margin:0 auto;padding-bottom:8px}
.admin-profile-v55 .profile-drawer-hero{
  padding:4px 0 18px;display:grid;justify-items:center;
}
.admin-profile-v55 .profile-drawer-avatar{
  width:118px!important;height:118px!important;border:5px solid #fff;
  box-shadow:0 18px 45px rgba(15,30,63,.16),0 0 0 1px color-mix(in srgb,var(--brand) 12%,transparent);
  background:linear-gradient(135deg,var(--brand),var(--navy))!important;
}
.admin-profile-v55 .profile-drawer-hero h2{font-size:1.45rem;margin-top:12px}
.admin-profile-v55 .profile-drawer-hero p{font-size:.82rem}
.admin-profile-v55 .profile-drawer-grid{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;
}
.admin-profile-v55 .profile-drawer-grid>span{
  padding:13px 14px!important;border-radius:17px!important;
  background:var(--v55-navy-soft)!important;border:1px solid color-mix(in srgb,var(--navy) 7%,transparent)!important;
}
.admin-profile-v55 .profile-drawer-grid>span.wide{grid-column:1/-1}
.admin-profile-v55 .profile-drawer-grid small{display:block;color:var(--muted);font-size:.66rem;margin-bottom:3px}
.admin-profile-v55 .profile-drawer-grid strong{font-size:.78rem;word-break:break-word}
@media(max-width:560px){
  .admin-profile-v55 .profile-drawer-grid{grid-template-columns:1fr!important}
  .admin-profile-v55 .profile-drawer-grid>span.wide{grid-column:auto}
}

/* Avoid content clipping caused by fixed-height decorative layers */
.content-area{isolation:isolate}
.content-area>.tech-ambient,.content-area>.tech-ambient-v5{z-index:-1!important}


.profile-drawer-backdrop[hidden]{display:none!important}
@media(min-width:861px){
  body.sidebar-collapsed .tech-ambient-v5{inset-right:var(--v55-sidebar-collapsed)!important}
}

/* === NASQ 5.6 — Unified Communication & Profile Layout === */
:root{
  --comm-sidebar:310px;
  --comm-details:270px;
  --comm-gap:0px;
  --comm-radius:24px;
}
body.route-private-messages .content-area,
body.route-groups .content-area,
body.route-support .content-area{
  padding-top:18px;
}
body.route-private-messages .conversation-app,
body.route-groups .conversation-app,
body.route-support .conversation-app{
  width:100%;
  max-width:1480px;
  margin-inline:auto;
  height:clamp(620px,calc(100dvh - 118px),860px);
  min-height:620px;
  border-radius:var(--comm-radius);
  overflow:hidden;
  border:1px solid color-mix(in srgb,var(--navy) 10%,transparent);
  box-shadow:0 28px 70px rgba(15,30,63,.12);
  background:rgba(255,255,255,.96);
  isolation:isolate;
}
body.route-private-messages .direct-conversation-app,
body.route-groups .groups-conversation-app{
  display:grid!important;
  grid-template-columns:var(--comm-sidebar) minmax(0,1fr)!important;
  direction:rtl;
}
body.route-private-messages .direct-workspace,
body.route-groups .groups-workspace{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) var(--comm-details)!important;
  min-width:0;
  min-height:0;
  height:100%;
  direction:rtl;
}
body.route-private-messages .conversation-sidebar,
body.route-groups .conversation-sidebar,
body.route-support .conversation-sidebar{
  width:auto!important;
  min-width:0!important;
  height:100%!important;
  border-left:1px solid color-mix(in srgb,var(--navy) 8%,transparent);
  border-right:0!important;
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,251,251,.98));
  overflow:hidden;
}
body.route-private-messages .conversation-chat,
body.route-groups .conversation-chat,
body.route-support .conversation-chat{
  min-width:0!important;
  min-height:0!important;
  height:100%!important;
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr) auto!important;
  background:
    radial-gradient(circle at 82% 10%,color-mix(in srgb,var(--brand) 6%,transparent),transparent 26%),
    linear-gradient(180deg,#fbfcfd 0%,#f5f8f9 100%)!important;
  overflow:hidden!important;
}
body.route-private-messages .conversation-chat-head,
body.route-groups .conversation-chat-head,
body.route-support .conversation-chat-head{
  grid-row:1;
  min-height:74px;
  padding:10px 16px!important;
  border-bottom:1px solid color-mix(in srgb,var(--navy) 8%,transparent);
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(18px) saturate(1.08);
  z-index:8;
}
body.route-private-messages .conversation-messages,
body.route-groups .conversation-messages,
body.route-support .conversation-messages{
  grid-row:2;
  min-height:0!important;
  height:auto!important;
  overflow:auto!important;
  padding:20px 22px 18px!important;
  scrollbar-width:thin;
  scrollbar-color:color-mix(in srgb,var(--brand) 35%,transparent) transparent;
  scroll-padding-bottom:18px;
}
body.route-private-messages .conversation-composer-wrap,
body.route-groups .conversation-composer-wrap,
body.route-support .conversation-composer-wrap{
  grid-row:3;
  position:relative!important;
  inset:auto!important;
  bottom:auto!important;
  min-height:74px;
  padding:9px 12px 11px!important;
  background:rgba(255,255,255,.95)!important;
  border-top:1px solid color-mix(in srgb,var(--navy) 8%,transparent)!important;
  backdrop-filter:blur(18px) saturate(1.08);
  z-index:10;
}
body.route-private-messages .conversation-composer,
body.route-groups .conversation-composer,
body.route-support .conversation-composer{
  min-height:52px!important;
  border-radius:18px!important;
  border:1px solid color-mix(in srgb,var(--navy) 10%,transparent)!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(15,30,63,.06)!important;
}
body.route-private-messages .conversation-composer textarea,
body.route-groups .conversation-composer textarea,
body.route-support .conversation-composer textarea{
  min-height:44px!important;
  max-height:120px!important;
  border-radius:14px!important;
  background:transparent!important;
}

/* One consistent message rhythm in private, groups and support */
body.route-private-messages .conversation-message,
body.route-groups .conversation-message,
body.route-support .conversation-message{
  width:100%!important;
  display:flex!important;
  align-items:flex-end!important;
  gap:8px!important;
  margin:0 0 12px!important;
  direction:rtl;
  animation:v56-message-in .22s ease both;
}
body.route-private-messages .conversation-message.mine,
body.route-groups .conversation-message.mine,
body.route-support .conversation-message.mine{
  justify-content:flex-start!important;
  padding-inline-start:0!important;
  padding-inline-end:52px!important;
}
body.route-private-messages .conversation-message:not(.mine),
body.route-groups .conversation-message:not(.mine),
body.route-support .conversation-message:not(.mine){
  justify-content:flex-end!important;
  padding-inline-start:52px!important;
  padding-inline-end:0!important;
}
body.route-private-messages .conversation-bubble,
body.route-groups .conversation-bubble,
body.route-support .conversation-bubble{
  width:fit-content!important;
  max-width:min(72%,620px)!important;
  min-width:72px;
  border-radius:18px!important;
  padding:10px 13px 8px!important;
  box-shadow:0 8px 22px rgba(15,30,63,.06)!important;
  overflow-wrap:anywhere;
}
body.route-private-messages .conversation-message.mine .conversation-bubble,
body.route-groups .conversation-message.mine .conversation-bubble,
body.route-support .conversation-message.mine .conversation-bubble{
  background:linear-gradient(145deg,var(--brand),color-mix(in srgb,var(--brand) 80%,var(--navy)))!important;
  color:#fff!important;
  border-bottom-right-radius:6px!important;
}
body.route-private-messages .conversation-message:not(.mine) .conversation-bubble,
body.route-groups .conversation-message:not(.mine) .conversation-bubble,
body.route-support .conversation-message:not(.mine) .conversation-bubble{
  background:#fff!important;
  color:var(--ink)!important;
  border:1px solid color-mix(in srgb,var(--navy) 7%,transparent)!important;
  border-bottom-left-radius:6px!important;
}
body.route-private-messages .conversation-message.mine .conversation-bubble small,
body.route-groups .conversation-message.mine .conversation-bubble small,
body.route-support .conversation-message.mine .conversation-bubble small{
  color:rgba(255,255,255,.72)!important;
}
body.route-private-messages .conversation-avatar,
body.route-groups .conversation-avatar,
body.route-support .conversation-avatar{
  flex:0 0 auto;
  aspect-ratio:1/1;
  border-radius:50%!important;
  overflow:hidden;
}
body.route-private-messages .conversation-avatar img,
body.route-groups .conversation-avatar img,
body.route-support .conversation-avatar img{
  width:100%!important;
  height:100%!important;
  display:block;
  object-fit:cover!important;
  object-position:center!important;
  border-radius:50%!important;
}
body.route-private-messages .conversation-list-item,
body.route-groups .conversation-list-item,
body.route-support .conversation-list-item{
  min-height:68px;
  border-radius:16px!important;
  margin:4px 8px!important;
  padding:9px 10px!important;
  align-items:center!important;
}
body.route-private-messages .conversation-list-item.active,
body.route-groups .conversation-list-item.active,
body.route-support .conversation-list-item.active{
  background:linear-gradient(100deg,color-mix(in srgb,var(--brand) 9%,#fff),#fff)!important;
  border-color:color-mix(in srgb,var(--brand) 22%,transparent)!important;
  box-shadow:0 8px 20px rgba(15,30,63,.055);
}
body.route-private-messages .conversation-item-copy,
body.route-groups .conversation-item-copy,
body.route-support .conversation-item-copy{
  min-width:0;
}
body.route-private-messages .conversation-item-copy strong,
body.route-groups .conversation-item-copy strong,
body.route-support .conversation-item-copy strong{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body.route-private-messages .conversation-item-copy small,
body.route-groups .conversation-item-copy small,
body.route-support .conversation-item-copy small{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

/* Details panels use the same width and spacing */
body.route-private-messages .conversation-details,
body.route-groups .conversation-details,
body.route-support .conversation-details{
  width:auto!important;
  min-width:0!important;
  height:100%!important;
  padding:22px 16px!important;
  border-right:1px solid color-mix(in srgb,var(--navy) 8%,transparent)!important;
  background:linear-gradient(180deg,#fbfcfd,#f5f8f9)!important;
  overflow:auto!important;
}
body.route-private-messages .conversation-details-profile,
body.route-groups .conversation-details-profile,
body.route-support .conversation-details-profile{
  padding:6px 0 12px;
}
body.route-private-messages .conversation-details .conversation-avatar.xlarge,
body.route-groups .conversation-details .conversation-avatar.xlarge,
body.route-support .conversation-details .conversation-avatar.xlarge{
  width:88px!important;
  height:88px!important;
  box-shadow:0 0 0 5px #fff,0 12px 30px rgba(15,30,63,.12);
}

/* Support handler matches the same three-column pattern */
body.route-support .support-conversation-app.is-handler.has-thread{
  display:grid!important;
  grid-template-columns:var(--comm-sidebar) minmax(0,1fr) var(--comm-details)!important;
  direction:rtl;
}
body.route-support .support-conversation-app.is-handler:not(.has-thread){
  display:grid!important;
  grid-template-columns:var(--comm-sidebar) minmax(0,1fr)!important;
  direction:rtl;
}
body.route-support .support-conversation-app.is-handler .support-inbox{grid-column:1}
body.route-support .support-conversation-app.is-handler .support-chat-card{grid-column:2}
body.route-support .support-conversation-app.is-handler .support-details-panel{grid-column:3}
body.route-support .support-conversation-app.is-user{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
}
body.route-support .support-user-hub{
  position:relative!important;
  inset:auto!important;
  margin:8px 12px 0!important;
}

/* Large profile dialogs: never overlap their own content */
.profile-drawer-backdrop,
.public-profile-backdrop{
  position:fixed!important;
  inset:0!important;
  display:grid!important;
  place-items:center!important;
  padding:24px!important;
  overflow:auto!important;
  background:rgba(9,20,40,.42)!important;
  backdrop-filter:blur(8px)!important;
  z-index:500!important;
}
.profile-drawer-backdrop[hidden],
.public-profile-backdrop[hidden]{display:none!important}
.profile-drawer,
.public-profile-drawer{
  position:relative!important;
  inset:auto!important;
  width:min(920px,calc(100vw - 48px))!important;
  max-width:920px!important;
  height:auto!important;
  max-height:min(860px,calc(100dvh - 48px))!important;
  transform:translateY(18px) scale(.985)!important;
  border-radius:26px!important;
  overflow:hidden!important;
  background:#fff!important;
  border:1px solid color-mix(in srgb,var(--navy) 10%,transparent)!important;
  box-shadow:0 32px 90px rgba(8,23,48,.24)!important;
  transition:transform .2s ease,opacity .2s ease!important;
  opacity:0;
  display:grid!important;
  grid-template-rows:64px minmax(0,1fr)!important;
}
.profile-drawer-backdrop.show .profile-drawer,
.public-profile-backdrop.show .public-profile-drawer{
  transform:none!important;
  opacity:1!important;
}
.profile-drawer>header,
.public-profile-drawer>header{
  position:relative!important;
  inset:auto!important;
  z-index:3;
  height:64px!important;
  padding:0 20px!important;
  background:rgba(255,255,255,.94)!important;
  backdrop-filter:blur(16px);
  border-bottom:1px solid color-mix(in srgb,var(--navy) 8%,transparent)!important;
}
.profile-drawer-body,
.public-profile-drawer .profile-drawer-body{
  min-height:0!important;
  overflow:auto!important;
  padding:24px!important;
}
.admin-profile-v55,
.public-profile-v5-card{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}
.admin-profile-v55 .profile-drawer-hero{
  display:grid;
  grid-template-columns:112px minmax(0,1fr);
  grid-template-areas:"avatar title" "avatar role";
  gap:6px 18px;
  align-items:center;
  text-align:right!important;
  padding:10px 0 18px!important;
}
.admin-profile-v55 .profile-drawer-avatar{
  grid-area:avatar;
  width:112px!important;
  height:112px!important;
  border-radius:28px!important;
}
.admin-profile-v55 .profile-drawer-hero h2{grid-area:title;font-size:24px!important;margin:0!important}
.admin-profile-v55 .profile-drawer-hero p{grid-area:title;align-self:end;margin:32px 0 0!important}
.admin-profile-v55 .role-glow-pill{grid-area:role;justify-self:start}
.profile-drawer-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
}
.profile-drawer-grid>span,
.profile-drawer-grid>span.wide{
  grid-column:auto!important;
  min-height:74px;
  justify-content:center;
}
.profile-drawer-grid>span.wide:last-child{grid-column:span 2!important}
.public-profile-v5-card{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:14px;
}
.public-profile-v5-cover{
  min-height:150px!important;
  border-radius:22px!important;
}
.public-profile-v5-identity{
  margin-top:-64px!important;
  position:relative;
  z-index:2;
  padding-inline:24px!important;
}
.public-profile-v5-identity .profile-drawer-avatar-v5{
  width:124px!important;
  height:124px!important;
  border-radius:30px!important;
  border:6px solid #fff!important;
}
.public-profile-v5-membership,
.public-profile-bio,
.public-profile-meta-v5,
.profile-achievement-grid-v5,
.drawer-contact-actions{
  margin-inline:0!important;
}

/* Mobile: one pane at a time without crushed columns */
@media(max-width:1180px){
  body.route-private-messages .conversation-app,
  body.route-groups .conversation-app,
  body.route-support .conversation-app{
    height:calc(100dvh - 96px);
    min-height:560px;
  }
  body.route-private-messages .direct-conversation-app,
  body.route-groups .groups-conversation-app{
    grid-template-columns:minmax(260px,310px) minmax(0,1fr)!important;
  }
  body.route-private-messages .direct-workspace,
  body.route-groups .groups-workspace{
    grid-template-columns:minmax(0,1fr)!important;
  }
  body.route-private-messages .conversation-details,
  body.route-groups .conversation-details,
  body.route-support .conversation-details{display:none!important}
  body.route-support .support-conversation-app.is-handler.has-thread,
  body.route-support .support-conversation-app.is-handler:not(.has-thread){
    grid-template-columns:minmax(260px,310px) minmax(0,1fr)!important;
  }
}
@media(max-width:780px){
  body.route-private-messages .content-area,
  body.route-groups .content-area,
  body.route-support .content-area{padding:6px 0 calc(74px + env(safe-area-inset-bottom))!important}
  body.route-private-messages .conversation-app,
  body.route-groups .conversation-app,
  body.route-support .conversation-app{
    width:100%!important;
    height:calc(100dvh - 80px)!important;
    min-height:0!important;
    border-radius:0!important;
    border-inline:0!important;
    box-shadow:none!important;
  }
  body.route-private-messages .direct-conversation-app,
  body.route-groups .groups-conversation-app,
  body.route-support .support-conversation-app.is-handler.has-thread,
  body.route-support .support-conversation-app.is-handler:not(.has-thread){
    grid-template-columns:minmax(0,1fr)!important;
  }
  body.route-private-messages .conversation-sidebar,
  body.route-groups .conversation-sidebar,
  body.route-support .support-inbox{
    grid-column:1!important;
    grid-row:1!important;
  }
  body.route-private-messages .direct-workspace,
  body.route-groups .groups-workspace,
  body.route-support .support-chat-card{
    grid-column:1!important;
    grid-row:1!important;
  }
  body.route-private-messages .has-active-peer>.conversation-sidebar,
  body.route-groups .has-active-group>.conversation-sidebar,
  body.route-support .support-conversation-app.is-handler.has-thread>.support-inbox{
    display:none!important;
  }
  body.route-private-messages .direct-workspace:not(.has-active-peer),
  body.route-groups .groups-workspace:not(.has-active-group),
  body.route-support .support-conversation-app.is-handler:not(.has-thread)>.support-chat-card{
    display:none!important;
  }
  body.route-private-messages .conversation-messages,
  body.route-groups .conversation-messages,
  body.route-support .conversation-messages{
    padding:14px 10px 12px!important;
  }
  body.route-private-messages .conversation-bubble,
  body.route-groups .conversation-bubble,
  body.route-support .conversation-bubble{
    max-width:84%!important;
  }
  body.route-private-messages .conversation-message.mine,
  body.route-groups .conversation-message.mine,
  body.route-support .conversation-message.mine{padding-inline-end:28px!important}
  body.route-private-messages .conversation-message:not(.mine),
  body.route-groups .conversation-message:not(.mine),
  body.route-support .conversation-message:not(.mine){padding-inline-start:28px!important}

  .profile-drawer-backdrop,.public-profile-backdrop{padding:0!important;align-items:stretch!important}
  .profile-drawer,.public-profile-drawer{
    width:100vw!important;
    max-width:none!important;
    max-height:100dvh!important;
    height:100dvh!important;
    border-radius:0!important;
    grid-template-rows:58px minmax(0,1fr)!important;
  }
  .profile-drawer-body,.public-profile-drawer .profile-drawer-body{padding:14px!important}
  .admin-profile-v55 .profile-drawer-hero{
    grid-template-columns:88px minmax(0,1fr);
  }
  .admin-profile-v55 .profile-drawer-avatar{width:88px!important;height:88px!important;border-radius:24px!important}
  .admin-profile-v55 .profile-drawer-hero h2{font-size:19px!important}
  .profile-drawer-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .profile-drawer-grid>span.wide:last-child{grid-column:1/-1!important}
  .public-profile-v5-identity{padding-inline:8px!important;margin-top:-46px!important;align-items:flex-end!important}
  .public-profile-v5-identity .profile-drawer-avatar-v5{width:96px!important;height:96px!important;border-radius:26px!important}
  .public-profile-v5-copy h2{font-size:20px!important}
  .profile-achievement-grid-v5{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(prefers-reduced-motion:reduce){
  body.route-private-messages .conversation-message,
  body.route-groups .conversation-message,
  body.route-support .conversation-message{animation:none!important}
}
@keyframes v56-message-in{
  from{opacity:0;transform:translateY(6px) scale(.992)}
  to{opacity:1;transform:none}
}
/* v5.6 admin profile polish */
.admin-profile-v56{
  position:relative;
  display:grid;
  gap:16px;
}
.admin-profile-v56-cover{
  height:118px;
  margin:-4px -4px -54px;
  border-radius:22px;
  overflow:hidden;
  position:relative;
  background:
    linear-gradient(120deg,color-mix(in srgb,var(--navy) 96%,#000),color-mix(in srgb,var(--brand) 28%,var(--navy)));
}
.admin-profile-v56-cover:before,
.admin-profile-v56-cover:after{
  content:"";
  position:absolute;
  border:1px solid rgba(255,255,255,.12);
  border-radius:50%;
}
.admin-profile-v56-cover:before{width:180px;height:180px;inset:-72px auto auto 8%}
.admin-profile-v56-cover:after{width:110px;height:110px;inset:auto 18% -64px auto}
.admin-profile-v56-cover span{
  position:absolute;inset:0;
  background:linear-gradient(90deg,transparent 0 48%,rgba(255,255,255,.035) 49% 50%,transparent 51%),
             linear-gradient(0deg,transparent 0 48%,rgba(255,255,255,.03) 49% 50%,transparent 51%);
  background-size:36px 36px;
  opacity:.55;
}
.admin-profile-v56 .profile-drawer-hero{
  position:relative;
  z-index:2;
  padding-inline:18px!important;
}
.admin-profile-v56 .profile-drawer-avatar{
  border:5px solid #fff;
  box-shadow:0 12px 34px rgba(15,30,63,.16);
}
.admin-profile-v56 .public-profile-bio{
  margin:0!important;
  padding:14px 16px!important;
  border:1px solid color-mix(in srgb,var(--navy) 8%,transparent);
  border-radius:16px;
  background:color-mix(in srgb,var(--brand) 3%,#fff);
  line-height:1.9;
}
.admin-profile-v56-grid>span{
  background:linear-gradient(180deg,#fff,#f9fbfc)!important;
  box-shadow:0 7px 18px rgba(15,30,63,.035);
}
.admin-profile-v56-actions{
  display:flex;
  justify-content:flex-end;
  padding-top:2px;
}
.admin-profile-v56-actions .button{
  min-width:190px;
}

/* prevent profile content from being hidden by fixed actions or headers */
body.modal-open{overflow:hidden!important}
.profile-drawer-body > :first-child{margin-top:0!important}
.profile-drawer-body > :last-child{margin-bottom:0!important}

@media(max-width:780px){
  .admin-profile-v56-cover{height:100px;margin-bottom:-42px}
  .admin-profile-v56 .profile-drawer-hero{padding-inline:6px!important}
  .admin-profile-v56-actions .button{width:100%;min-width:0}
}



/* =========================================================
   NASQ v5.7 — Multi-department membership
   ========================================================= */
.department-member-picker-field{gap:10px}
.department-member-picker-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center}
.department-member-picker-toolbar input{min-width:0}
.department-member-picker{
  display:grid;
  gap:8px;
  max-height:360px;
  overflow:auto;
  padding:6px;
  border:1px solid color-mix(in srgb,var(--navy) 9%,transparent);
  border-radius:20px;
  background:color-mix(in srgb,var(--brand) 2%,#fff);
  scrollbar-width:thin;
}
.department-member-option{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  padding:10px 12px;
  border:1px solid transparent;
  border-radius:16px;
  background:#fff;
  cursor:pointer;
  transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease,background .2s ease;
}
.department-member-option:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--brand) 28%,transparent);box-shadow:0 9px 22px rgba(15,30,63,.06)}
.department-member-option:has(input:checked){border-color:color-mix(in srgb,var(--brand) 42%,transparent);background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 8%,#fff),#fff)}
.department-member-option input{position:absolute;opacity:0;pointer-events:none}
.department-member-option-avatar{width:40px;height:40px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 16%,#fff),#fff);border:2px solid #fff;box-shadow:0 5px 13px rgba(15,30,63,.1)}
.department-member-option-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.department-member-option-copy{min-width:0;display:grid;gap:2px}
.department-member-option-copy strong,.department-member-option-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.department-member-option-copy small{color:var(--muted);font-size:.78rem}
.department-member-option-check{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--navy) 10%,transparent);color:transparent;background:#fff;transition:.2s ease}
.department-member-option:has(input:checked) .department-member-option-check{background:var(--brand);border-color:var(--brand);color:#fff;box-shadow:0 0 0 5px color-mix(in srgb,var(--brand) 10%,transparent)}
.department-member-option-check svg{width:14px;height:14px}
.multi-department-field{gap:10px}
.department-choice-grid{display:flex;flex-wrap:wrap;gap:9px}
.department-choice{position:relative;display:flex;align-items:center;gap:8px;padding:9px 12px;border-radius:999px;border:1px solid color-mix(in srgb,var(--navy) 10%,transparent);background:#fff;cursor:pointer;transition:.2s ease}
.department-choice:hover{transform:translateY(-1px);border-color:var(--dept-color)}
.department-choice input{position:absolute;opacity:0}
.department-choice-dot{width:10px;height:10px;border-radius:50%;background:var(--dept-color);box-shadow:0 0 0 4px color-mix(in srgb,var(--dept-color) 12%,transparent)}
.department-choice:has(input:checked){border-color:var(--dept-color);background:color-mix(in srgb,var(--dept-color) 7%,#fff);box-shadow:0 8px 20px color-mix(in srgb,var(--dept-color) 10%,transparent)}
@media(max-width:720px){
  .department-member-picker-toolbar{grid-template-columns:1fr 1fr}
  .department-member-picker-toolbar input{grid-column:1/-1}
  .department-member-picker{max-height:300px}
}


/* =========================================================
   NASQ 5.7.1 — Notifications header overlap hotfix
   Keeps the notification page below the sticky application bar.
   ========================================================= */
body.route-notifications .main-area{
  overflow:visible;
}
body.route-notifications .topbar{
  position:sticky;
  top:0;
  z-index:120!important;
  background:rgba(255,255,255,.96)!important;
  -webkit-backdrop-filter:blur(18px) saturate(145%);
  backdrop-filter:blur(18px) saturate(145%);
  isolation:isolate;
}
body.route-notifications .content-area{
  padding-top:30px!important;
  overflow:visible!important;
  scroll-padding-top:104px;
}
body.route-notifications .page-head{
  position:relative;
  z-index:2;
  margin-top:0!important;
  padding-top:2px;
}
body.route-notifications .notifications-layout{
  position:relative;
  z-index:1;
  isolation:isolate;
}
body.route-notifications .notification-list,
body.route-notifications .notification-item{
  scroll-margin-top:104px;
}
body.route-notifications .broadcast-card{
  top:96px;
}
@media(max-width:860px){
  body.route-notifications .content-area{
    padding-top:20px!important;
    scroll-padding-top:88px;
  }
  body.route-notifications .notification-list,
  body.route-notifications .notification-item{
    scroll-margin-top:88px;
  }
  body.route-notifications .broadcast-card{
    top:auto;
  }
}
@media(max-width:580px){
  body.route-notifications .content-area{
    padding-top:16px!important;
  }
}


/* === NASQ 5.7.2 — Profile & conversation geometry correction === */

/* Public profile: remove cover/text overlap and keep a stable visual hierarchy */
.public-profile-drawer .profile-drawer-body{
  background:linear-gradient(180deg,#f8fafc 0%,#ffffff 32%,#f7f9fc 100%)!important;
}
.public-profile-v5-card{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:16px!important;
  width:100%!important;
  max-width:820px!important;
  margin:0 auto!important;
  padding:0 0 8px!important;
}
.public-profile-v5-cover{
  height:150px!important;
  min-height:150px!important;
  margin:0!important;
  border-radius:24px!important;
  overflow:hidden!important;
}
.public-profile-v5-identity{
  display:grid!important;
  grid-template-columns:124px minmax(0,1fr)!important;
  gap:18px!important;
  align-items:start!important;
  margin:-54px 22px 0!important;
  padding:0!important;
  position:relative!important;
  z-index:2!important;
}
.public-profile-v5-identity .profile-drawer-avatar-v5{
  width:124px!important;
  height:124px!important;
  min-width:124px!important;
  min-height:124px!important;
  aspect-ratio:1/1!important;
  border-radius:50%!important;
  border:6px solid #fff!important;
  overflow:hidden!important;
  align-self:start!important;
  box-shadow:0 18px 42px rgba(14,32,62,.18)!important;
}
.public-profile-v5-identity .profile-drawer-avatar-v5 img{
  width:100%!important;
  height:100%!important;
  display:block!important;
  object-fit:cover!important;
  object-position:center!important;
  border-radius:50%!important;
}
.public-profile-v5-copy{
  min-width:0!important;
  padding:60px 0 0!important;
  text-align:right!important;
  display:grid!important;
  gap:5px!important;
}
.public-profile-v5-copy .role-glow-pill{
  width:max-content!important;
  max-width:100%!important;
  margin:0 0 2px!important;
  justify-self:start!important;
}
.public-profile-v5-copy h2{
  margin:0!important;
  font-size:clamp(21px,2.2vw,27px)!important;
  line-height:1.35!important;
  color:var(--navy)!important;
  overflow-wrap:anywhere;
}
.public-profile-v5-copy p{
  margin:0!important;
  color:#617087!important;
  font-size:14px!important;
  line-height:1.7!important;
}
.public-profile-v572-status{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:7px 12px!important;
  align-items:center!important;
  margin-top:4px!important;
  color:#7b8799!important;
  font-size:12px!important;
}
.public-profile-v572-status span{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
}
.public-profile-v572-status .is-online::before,
.public-profile-v572-status .is-offline::before{
  content:""!important;
  width:7px!important;
  height:7px!important;
  border-radius:50%!important;
  flex:none!important;
}
.public-profile-v572-status .is-online::before{background:#22b573!important;box-shadow:0 0 0 4px rgba(34,181,115,.10)!important}
.public-profile-v572-status .is-offline::before{background:#a7b0be!important}
.public-profile-v5-membership,
.public-profile-bio,
.profile-achievement-grid-v5,
.public-profile-meta-v5,
.drawer-contact-actions{
  margin:0 22px!important;
}
.public-profile-v5-membership{
  min-height:70px!important;
  padding:15px 18px!important;
}
.public-profile-bio{
  padding:14px 16px!important;
  border:1px solid rgba(15,44,80,.08)!important;
  border-radius:18px!important;
  background:#fff!important;
  color:#536174!important;
  line-height:1.8!important;
}
.profile-achievement-grid-v5{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
}
.profile-achievement-grid-v5>span{
  min-width:0!important;
  min-height:84px!important;
  display:grid!important;
  place-content:center!important;
  text-align:center!important;
}
.public-profile-meta-v5{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
}
.public-profile-meta-v5>span{
  min-height:68px!important;
  align-content:center!important;
}
.public-profile-drawer{
  width:min(920px,calc(100vw - 48px))!important;
}
.public-profile-drawer .profile-drawer-body{
  padding:22px!important;
}

/* Conversation flow: physical right/left positions independent of RTL text direction */
body.route-private-messages .conversation-messages,
body.route-groups .conversation-messages,
body.route-support .conversation-messages{
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
  padding:20px 18px 18px!important;
}
body.route-private-messages .conversation-message,
body.route-groups .conversation-message,
body.route-support .conversation-message{
  display:flex!important;
  width:100%!important;
  max-width:100%!important;
  align-items:flex-end!important;
  gap:8px!important;
  margin:0!important;
  padding:0 8px!important;
  direction:ltr!important;
  box-sizing:border-box!important;
}
body.route-private-messages .conversation-message.mine,
body.route-groups .conversation-message.mine,
body.route-support .conversation-message.mine{
  justify-content:flex-end!important;
  padding-inline:8px!important;
}
body.route-private-messages .conversation-message:not(.mine),
body.route-groups .conversation-message:not(.mine),
body.route-support .conversation-message:not(.mine){
  justify-content:flex-start!important;
  padding-inline:8px!important;
}
body.route-private-messages .conversation-bubble,
body.route-groups .conversation-bubble,
body.route-support .conversation-bubble{
  width:auto!important;
  max-width:min(72%,620px)!important;
  min-width:74px!important;
  padding:10px 13px 8px!important;
  border-radius:18px!important;
  direction:rtl!important;
  text-align:right!important;
  overflow-wrap:anywhere!important;
  word-break:break-word!important;
  box-sizing:border-box!important;
}
body.route-private-messages .conversation-message.mine .conversation-bubble,
body.route-groups .conversation-message.mine .conversation-bubble,
body.route-support .conversation-message.mine .conversation-bubble{
  border-bottom-right-radius:6px!important;
}
body.route-private-messages .conversation-message:not(.mine) .conversation-bubble,
body.route-groups .conversation-message:not(.mine) .conversation-bubble,
body.route-support .conversation-message:not(.mine) .conversation-bubble{
  border-bottom-left-radius:6px!important;
}
body.route-support .support-message-stack{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  max-width:min(72%,620px)!important;
  direction:rtl!important;
}
body.route-support .conversation-message.mine .support-message-stack{
  align-items:flex-end!important;
}
body.route-support .support-message-stack .conversation-bubble{
  max-width:100%!important;
}
body.route-private-messages .conversation-avatar.tiny,
body.route-groups .conversation-avatar.tiny,
body.route-support .conversation-avatar.tiny{
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  min-height:34px!important;
  flex:0 0 34px!important;
  aspect-ratio:1/1!important;
  border-radius:50%!important;
  overflow:hidden!important;
}
body.route-private-messages .conversation-avatar.tiny img,
body.route-groups .conversation-avatar.tiny img,
body.route-support .conversation-avatar.tiny img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  border-radius:50%!important;
}
body.route-private-messages .conversation-bubble>p,
body.route-groups .conversation-bubble>p,
body.route-support .conversation-bubble>p{
  margin:0 0 5px!important;
  line-height:1.75!important;
}
body.route-private-messages .conversation-bubble>small,
body.route-groups .conversation-bubble>small,
body.route-support .conversation-bubble>small{
  display:block!important;
  margin-top:4px!important;
  opacity:.72!important;
  font-size:10px!important;
  white-space:nowrap!important;
}

/* Keep headers and composer aligned with the message canvas */
body.route-private-messages .conversation-chat-head,
body.route-groups .conversation-chat-head,
body.route-support .conversation-chat-head{
  min-height:76px!important;
  padding:10px 18px!important;
}
body.route-private-messages .conversation-composer-wrap,
body.route-groups .conversation-composer-wrap,
body.route-support .conversation-composer-wrap{
  padding:10px 14px 12px!important;
}
body.route-private-messages .conversation-composer,
body.route-groups .conversation-composer,
body.route-support .conversation-composer{
  width:100%!important;
  max-width:none!important;
}

/* Responsive profile + messages */
@media(max-width:780px){
  .public-profile-drawer .profile-drawer-body{padding:12px!important}
  .public-profile-v5-card{gap:12px!important}
  .public-profile-v5-cover{height:118px!important;min-height:118px!important;border-radius:20px!important}
  .public-profile-v5-identity{
    grid-template-columns:88px minmax(0,1fr)!important;
    gap:12px!important;
    margin:-38px 10px 0!important;
  }
  .public-profile-v5-identity .profile-drawer-avatar-v5{
    width:88px!important;height:88px!important;min-width:88px!important;min-height:88px!important;border-width:4px!important;
  }
  .public-profile-v5-copy{padding-top:42px!important}
  .public-profile-v5-copy h2{font-size:19px!important}
  .public-profile-v5-copy p{font-size:12px!important}
  .public-profile-v572-status{font-size:11px!important}
  .public-profile-v5-membership,
  .public-profile-bio,
  .profile-achievement-grid-v5,
  .public-profile-meta-v5,
  .drawer-contact-actions{margin-inline:10px!important}
  .profile-achievement-grid-v5{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .public-profile-meta-v5{grid-template-columns:1fr!important}
  body.route-private-messages .conversation-messages,
  body.route-groups .conversation-messages,
  body.route-support .conversation-messages{padding:14px 8px 12px!important;gap:7px!important}
  body.route-private-messages .conversation-message,
  body.route-groups .conversation-message,
  body.route-support .conversation-message{padding:0 4px!important}
  body.route-private-messages .conversation-bubble,
  body.route-groups .conversation-bubble,
  body.route-support .conversation-bubble{max-width:82%!important}
  body.route-support .support-message-stack{max-width:82%!important}
}
@media(max-width:430px){
  .public-profile-v5-identity{
    grid-template-columns:76px minmax(0,1fr)!important;
    margin-top:-32px!important;
  }
  .public-profile-v5-identity .profile-drawer-avatar-v5{
    width:76px!important;height:76px!important;min-width:76px!important;min-height:76px!important;
  }
  .public-profile-v5-copy{padding-top:35px!important}
  .public-profile-v5-copy h2{font-size:17px!important}
  body.route-private-messages .conversation-bubble,
  body.route-groups .conversation-bubble,
  body.route-support .conversation-bubble{max-width:86%!important}
  body.route-support .support-message-stack{max-width:86%!important}
}

/* =========================================================
   v5.7.3 — Stable bottom composer / communication footer fix
   Keeps message input + attachment + send controls visible and
   physically anchored to the bottom of private, groups and support.
   ========================================================= */
body.route-private-messages .conversation-chat,
body.route-groups .conversation-chat,
body.route-support .conversation-chat{
  position:relative!important;
  min-height:0!important;
  overflow:hidden!important;
}

body.route-private-messages .direct-chat-panel{
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr) auto!important;
}
body.route-groups .group-chat-panel{
  display:grid!important;
  grid-template-rows:auto auto minmax(0,1fr) auto!important;
}
body.route-support .support-chat-card{
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr) auto!important;
}

body.route-private-messages .conversation-messages,
body.route-groups .conversation-messages,
body.route-support .conversation-messages{
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain;
  padding-bottom:18px!important;
}

body.route-private-messages .conversation-composer-wrap,
body.route-groups .conversation-composer-wrap,
body.route-support .conversation-composer-wrap{
  position:relative!important;
  inset:auto!important;
  bottom:auto!important;
  z-index:35!important;
  display:block!important;
  flex:none!important;
  width:100%!important;
  min-height:72px!important;
  box-sizing:border-box!important;
  padding:10px 12px calc(10px + env(safe-area-inset-bottom))!important;
  background:rgba(255,255,255,.985)!important;
  border-top:1px solid color-mix(in srgb,var(--navy) 10%,transparent)!important;
  box-shadow:0 -10px 28px rgba(15,30,63,.07)!important;
  -webkit-backdrop-filter:blur(18px) saturate(125%)!important;
  backdrop-filter:blur(18px) saturate(125%)!important;
}

body.route-private-messages .conversation-composer,
body.route-groups .conversation-composer,
body.route-support .conversation-composer{
  direction:ltr!important;
  display:grid!important;
  grid-template-columns:48px minmax(0,1fr) 48px!important;
  grid-template-areas:"send input attach"!important;
  align-items:end!important;
  gap:8px!important;
  width:100%!important;
  max-width:980px!important;
  min-width:0!important;
  margin:0 auto!important;
  padding:0!important;
  box-sizing:border-box!important;
}

body.route-private-messages .conversation-composer .conversation-send-button,
body.route-groups .conversation-composer .conversation-send-button,
body.route-support .conversation-composer .conversation-send-button{
  grid-area:send!important;
  align-self:end!important;
  display:grid!important;
  width:48px!important;
  height:48px!important;
  min-width:48px!important;
  min-height:48px!important;
  margin:0!important;
  border-radius:16px!important;
  place-items:center!important;
}

body.route-private-messages .conversation-composer textarea,
body.route-groups .conversation-composer textarea,
body.route-support .conversation-composer textarea{
  grid-area:input!important;
  direction:rtl!important;
  text-align:right!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  min-height:48px!important;
  max-height:132px!important;
  margin:0!important;
  padding:12px 15px!important;
  border-radius:18px!important;
  box-sizing:border-box!important;
  overflow-y:auto!important;
  resize:none!important;
  line-height:1.5!important;
}

body.route-private-messages .conversation-composer .conversation-attach-button,
body.route-groups .conversation-composer .conversation-attach-button,
body.route-support .conversation-composer .conversation-attach-button{
  grid-area:attach!important;
  align-self:end!important;
  display:grid!important;
  place-items:center!important;
  width:48px!important;
  height:48px!important;
  min-width:48px!important;
  min-height:48px!important;
  margin:0!important;
  border-radius:16px!important;
  overflow:hidden!important;
}
body.route-private-messages .conversation-composer .conversation-attach-button input,
body.route-groups .conversation-composer .conversation-attach-button input,
body.route-support .conversation-composer .conversation-attach-button input{
  position:absolute!important;
  inline-size:1px!important;
  block-size:1px!important;
  opacity:0!important;
  pointer-events:none!important;
}

/* Preview/typing rows span the whole composer without displacing controls. */
body.route-private-messages .conversation-composer .composer-file-preview,
body.route-groups .conversation-composer .composer-file-preview,
body.route-support .conversation-composer .composer-file-preview{
  grid-column:1/-1!important;
  direction:rtl!important;
}
body.route-private-messages .conversation-composer-wrap .typing-indicator,
body.route-support .conversation-composer-wrap .typing-indicator{
  margin:5px auto 0!important;
  width:min(980px,100%)!important;
}

/* Mobile: the footer remains inside the visible viewport even when the keyboard opens. */
@media(max-width:780px){
  body.route-private-messages .conversation-app,
  body.route-groups .conversation-app,
  body.route-support .conversation-app{
    height:min(calc(var(--nasq-visual-height,100dvh) - 8px),100dvh)!important;
    max-height:min(calc(var(--nasq-visual-height,100dvh) - 8px),100dvh)!important;
    min-height:320px!important;
  }
  body.route-private-messages .conversation-composer-wrap,
  body.route-groups .conversation-composer-wrap,
  body.route-support .conversation-composer-wrap{
    position:relative!important;
    bottom:auto!important;
    min-height:68px!important;
    padding:7px 8px calc(7px + min(env(safe-area-inset-bottom),18px))!important;
  }
  body.route-private-messages .conversation-composer,
  body.route-groups .conversation-composer,
  body.route-support .conversation-composer{
    grid-template-columns:44px minmax(0,1fr) 44px!important;
    gap:6px!important;
  }
  body.route-private-messages .conversation-composer textarea,
  body.route-groups .conversation-composer textarea,
  body.route-support .conversation-composer textarea{
    min-height:44px!important;
    max-height:108px!important;
    font-size:16px!important;
    border-radius:16px!important;
    padding:10px 12px!important;
  }
  body.route-private-messages .conversation-composer .conversation-send-button,
  body.route-groups .conversation-composer .conversation-send-button,
  body.route-support .conversation-composer .conversation-send-button,
  body.route-private-messages .conversation-composer .conversation-attach-button,
  body.route-groups .conversation-composer .conversation-attach-button,
  body.route-support .conversation-composer .conversation-attach-button{
    width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;border-radius:14px!important;
  }
}

@media(max-width:390px){
  body.route-private-messages .conversation-composer,
  body.route-groups .conversation-composer,
  body.route-support .conversation-composer{
    grid-template-columns:42px minmax(0,1fr) 42px!important;
    gap:5px!important;
  }
  body.route-private-messages .conversation-composer .conversation-send-button,
  body.route-groups .conversation-composer .conversation-send-button,
  body.route-support .conversation-composer .conversation-send-button,
  body.route-private-messages .conversation-composer .conversation-attach-button,
  body.route-groups .conversation-composer .conversation-attach-button,
  body.route-support .conversation-composer .conversation-attach-button{
    width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;
  }
}


/* === NASQ 5.7.4 — Private chat composer anchor fix ===
   The chat shell must never grow when a message is appended.
   Only the message viewport is allowed to flex/scroll. */
body.route-private-messages .direct-conversation-app{
  height:clamp(620px,calc(100dvh - 118px),860px)!important;
  min-height:0!important;
  max-height:calc(100dvh - 88px)!important;
  overflow:hidden!important;
  align-items:stretch!important;
}
body.route-private-messages .direct-workspace{
  height:100%!important;
  min-height:0!important;
  max-height:100%!important;
  overflow:hidden!important;
  align-items:stretch!important;
}
body.route-private-messages .direct-chat-panel{
  display:flex!important;
  flex-direction:column!important;
  height:100%!important;
  min-height:0!important;
  max-height:100%!important;
  overflow:hidden!important;
}
body.route-private-messages .direct-chat-panel > .conversation-chat-head{
  flex:0 0 auto!important;
}
body.route-private-messages .direct-chat-panel > .direct-messages{
  flex:1 1 0%!important;
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain!important;
  scrollbar-gutter:stable;
}
body.route-private-messages .direct-chat-panel > .direct-composer-wrap{
  flex:0 0 auto!important;
  position:relative!important;
  inset:auto!important;
  bottom:auto!important;
  width:100%!important;
  margin:0!important;
  z-index:50!important;
  transform:none!important;
  box-sizing:border-box!important;
}
body.route-private-messages .direct-composer{
  position:relative!important;
  display:grid!important;
  grid-template-columns:48px minmax(0,1fr) 48px!important;
  align-items:end!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  transform:none!important;
}
body.route-private-messages .direct-composer textarea{
  min-width:0!important;
  width:100%!important;
  box-sizing:border-box!important;
}
body.route-private-messages .direct-messages > :last-child{
  scroll-margin-bottom:16px;
}
@media(max-width:780px){
  body.route-private-messages .direct-conversation-app{
    height:calc(var(--nasq-visual-height,100dvh) - 72px)!important;
    max-height:calc(var(--nasq-visual-height,100dvh) - 72px)!important;
    min-height:0!important;
  }
  body.route-private-messages .direct-workspace,
  body.route-private-messages .direct-chat-panel{
    height:100%!important;
    max-height:100%!important;
    min-height:0!important;
  }
  body.route-private-messages .direct-composer-wrap{
    padding-bottom:calc(8px + env(safe-area-inset-bottom))!important;
  }
  body.route-private-messages .direct-composer{
    grid-template-columns:44px minmax(0,1fr) 44px!important;
  }
}


/* ==========================================================================
   NASQ v5.7.5 — Universal conversation viewport / composer anchor
   Root fix for private, groups and support:
   the shell owns a fixed visible height, only the message viewport can grow.
   ========================================================================== */
body.conversation-mode{
  --nasq-chat-safe-bottom:0px;
}
body.conversation-mode .content-area{
  height:var(--nasq-chat-available-height,calc(100dvh - 86px))!important;
  min-height:0!important;
  max-height:var(--nasq-chat-available-height,calc(100dvh - 86px))!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}
body.route-private-messages .conversation-app,
body.route-groups .conversation-app,
body.route-support .conversation-app{
  height:100%!important;
  min-height:0!important;
  max-height:100%!important;
  overflow:hidden!important;
  align-self:stretch!important;
}

/* The workspace can never become taller than the communication shell. */
body.route-private-messages .direct-workspace,
body.route-groups .groups-workspace{
  height:100%!important;
  min-height:0!important;
  max-height:100%!important;
  overflow:hidden!important;
}

/* One layout law for every actual chat panel. Extra header rows (group members /
   support hub) remain intrinsic, messages consume the remaining space, footer stays put. */
body.route-private-messages .direct-chat-panel,
body.route-groups .group-chat-panel,
body.route-support .support-chat-card{
  display:flex!important;
  flex-direction:column!important;
  height:100%!important;
  min-height:0!important;
  max-height:100%!important;
  overflow:hidden!important;
  position:relative!important;
  contain:layout paint;
}
body.route-private-messages .direct-chat-panel > .conversation-chat-head,
body.route-groups .group-chat-panel > .conversation-chat-head,
body.route-groups .group-chat-panel > .group-members-strip,
body.route-support .support-chat-card > .conversation-hub-tabs,
body.route-support .support-chat-card > .conversation-chat-head{
  flex:0 0 auto!important;
  min-height:0;
}
body.route-private-messages .direct-chat-panel > .conversation-messages,
body.route-groups .group-chat-panel > .conversation-messages,
body.route-support .support-chat-card > .conversation-messages{
  flex:1 1 0%!important;
  height:0!important;
  min-height:0!important;
  max-height:none!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior-y:contain!important;
  -webkit-overflow-scrolling:touch;
  scroll-behavior:smooth;
  scrollbar-gutter:stable;
}
body.route-private-messages .direct-chat-panel > .conversation-composer-wrap,
body.route-groups .group-chat-panel > .conversation-composer-wrap,
body.route-support .support-chat-card > .conversation-composer-wrap,
body.route-support .support-chat-card > .conversation-archive-note{
  flex:0 0 auto!important;
  position:relative!important;
  inset:auto!important;
  bottom:auto!important;
  width:100%!important;
  margin:0!important;
  transform:none!important;
  box-sizing:border-box!important;
  z-index:60!important;
}

/* Keep composer controls on a single stable control row. */
body.route-private-messages .conversation-composer,
body.route-groups .conversation-composer,
body.route-support .conversation-composer{
  display:grid!important;
  grid-template-columns:48px minmax(0,1fr) 48px!important;
  grid-template-areas:
    "send input attach"
    "preview preview preview"!important;
  align-items:end!important;
  column-gap:8px!important;
  row-gap:6px!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
}
body.route-private-messages .conversation-composer .conversation-send-button,
body.route-groups .conversation-composer .conversation-send-button,
body.route-support .conversation-composer .conversation-send-button{grid-area:send!important}
body.route-private-messages .conversation-composer textarea,
body.route-groups .conversation-composer textarea,
body.route-support .conversation-composer textarea{grid-area:input!important}
body.route-private-messages .conversation-composer .conversation-attach-button,
body.route-groups .conversation-composer .conversation-attach-button,
body.route-support .conversation-composer .conversation-attach-button{grid-area:attach!important}
body.route-private-messages .conversation-composer .composer-file-preview,
body.route-groups .conversation-composer .composer-file-preview,
body.route-support .conversation-composer .composer-file-preview{
  grid-area:preview!important;
  min-width:0!important;
  max-width:100%!important;
}

/* Status/typing feedback floats above the footer and no longer changes its block height. */
body.route-private-messages .conversation-composer-wrap,
body.route-support .conversation-composer-wrap{position:relative!important}
body.route-private-messages .conversation-composer-wrap > .typing-indicator,
body.route-support .conversation-composer-wrap > .typing-indicator,
body.route-support .conversation-composer-wrap > .support-live-state{
  position:absolute!important;
  inset-inline-start:14px;
  bottom:calc(100% + 6px)!important;
  width:auto!important;
  max-width:calc(100% - 28px)!important;
  margin:0!important;
  z-index:65!important;
  pointer-events:none;
}

/* When new content is appended it remains in the scroll viewport. */
body.route-private-messages .conversation-messages > :last-child,
body.route-groups .conversation-messages > :last-child,
body.route-support .conversation-messages > :last-child{
  scroll-margin-bottom:18px;
}

@media(max-width:780px){
  body.conversation-mode .content-area{
    padding:0!important;
    height:var(--nasq-chat-available-height,calc(100dvh - 64px))!important;
    max-height:var(--nasq-chat-available-height,calc(100dvh - 64px))!important;
  }
  body.route-private-messages .conversation-app,
  body.route-groups .conversation-app,
  body.route-support .conversation-app{
    height:100%!important;
    max-height:100%!important;
    min-height:0!important;
    border-radius:0!important;
  }
  body.route-private-messages .conversation-composer,
  body.route-groups .conversation-composer,
  body.route-support .conversation-composer{
    grid-template-columns:44px minmax(0,1fr) 44px!important;
    column-gap:6px!important;
  }
  body.route-private-messages .conversation-composer-wrap,
  body.route-groups .conversation-composer-wrap,
  body.route-support .conversation-composer-wrap{
    padding:7px 8px calc(7px + env(safe-area-inset-bottom))!important;
  }
}


/* =========================================================
   NASQ v6.0 — Institutional Operations / Living Workspace
   Uses institute theme tokens from settings: --navy / --brand.
   ========================================================= */
.nasq-v6 .content-area{isolation:isolate}
.nasq-v6 .v6-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:4px 0 22px;position:relative;z-index:2}
.nasq-v6 .v6-page-head h1{margin:5px 0 7px;font-size:clamp(1.55rem,2vw,2.15rem);letter-spacing:-.035em;color:var(--navy)}
.nasq-v6 .v6-page-head p{margin:0;color:#677287;max-width:760px;line-height:1.8}
.nasq-v6 .v6-kicker{display:inline-flex;align-items:center;gap:7px;color:var(--brand);font-weight:850;font-size:.78rem;letter-spacing:.02em}
.nasq-v6 .v6-kicker:before{content:"";width:23px;height:3px;border-radius:999px;background:linear-gradient(90deg,var(--brand),color-mix(in srgb,var(--brand),white 55%));box-shadow:0 0 16px color-mix(in srgb,var(--brand),transparent 55%)}
.nasq-v6 .button.success{background:linear-gradient(135deg,#15936c,#0a765c);color:white;border-color:transparent}
.nasq-v6 .button.danger{background:linear-gradient(135deg,#c94a56,#9f2e42);color:white;border-color:transparent}
.nasq-v6 .button.compact{padding:9px 14px}.nasq-v6 .button.full{width:100%;justify-content:center}
.nasq-v6 .button-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.nasq-v6 .button-row select{min-height:42px;border:1px solid #dce2ea;border-radius:13px;padding:0 12px;background:#fff}

.v6-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}
.v6-stat-card{min-height:142px;padding:19px;border:1px solid rgba(15,30,63,.08);background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(248,250,252,.92));border-radius:calc(var(--radius) + 3px);text-decoration:none;color:var(--navy);box-shadow:0 12px 32px rgba(15,30,63,.055);position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;transition:.28s ease}
.v6-stat-card:before{content:"";position:absolute;inset:auto -18% -55% auto;width:145px;height:145px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--brand),transparent 82%),transparent 70%);transition:.35s ease}
.v6-stat-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--brand),transparent 70%);box-shadow:0 18px 42px rgba(15,30,63,.09)}
.v6-stat-card:hover:before{transform:scale(1.28)}
.v6-stat-card>span{width:40px;height:40px;border-radius:14px;display:grid;place-items:center;background:color-mix(in srgb,var(--brand),white 89%);color:var(--brand);margin-bottom:auto}
.v6-stat-card>span svg{width:21px}
.v6-stat-card>b{font-size:2rem;line-height:1;margin:14px 0 7px;letter-spacing:-.05em}
.v6-stat-card small{color:#718096;font-weight:650}
.v6-stat-card.accent>span{background:var(--navy);color:white}.v6-stat-card.warning>span{background:#fff4db;color:#b8780d}.v6-stat-card.danger>span{background:#ffedf0;color:#ba394a}

.v6-dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
.v6-panel{background:rgba(255,255,255,.92);border:1px solid rgba(15,30,63,.075);border-radius:calc(var(--radius) + 4px);box-shadow:0 12px 34px rgba(15,30,63,.055);overflow:hidden;position:relative}
.v6-panel.span-2{grid-column:span 2}
.v6-panel>header{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px 20px;border-bottom:1px solid #edf0f4}
.v6-panel>header>div{display:flex;align-items:center;gap:11px;min-width:0}
.v6-panel>header h2{font-size:1rem;margin:0;color:var(--navy)}.v6-panel>header small{color:#8791a3}
.v6-panel>header a{color:var(--brand);font-size:.82rem;font-weight:800;text-decoration:none;white-space:nowrap}
.v6-panel-icon,.mini-icon{width:39px;height:39px;border-radius:13px;display:grid;place-items:center;background:color-mix(in srgb,var(--brand),white 90%);color:var(--brand);flex:0 0 auto}
.v6-panel-icon svg,.mini-icon svg{width:19px}
.v6-empty{padding:28px;text-align:center;color:#8a94a5}.v6-empty.compact{padding:20px}.v6-empty.large{min-height:430px;display:flex;flex-direction:column;align-items:center;justify-content:center}
.v6-empty.large>svg{width:52px;height:52px;color:color-mix(in srgb,var(--brand),transparent 25%);margin-bottom:10px}.v6-empty h3{color:var(--navy);margin:7px}.v6-empty p{margin:0;max-width:360px;line-height:1.7}

.v6-timeline{padding:12px 20px 20px}.v6-timeline-item{display:grid;grid-template-columns:58px 16px 1fr;align-items:center;gap:10px;text-decoration:none;color:inherit;min-height:68px}
.v6-timeline-item time{font-weight:900;color:var(--navy);font-size:.84rem}.v6-timeline-item>i{width:9px;height:9px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 5px color-mix(in srgb,var(--brand),transparent 88%);position:relative}
.v6-timeline-item>i:after{content:"";position:absolute;top:10px;right:4px;width:1px;height:58px;background:#e1e7ed}.v6-timeline-item:last-child>i:after{display:none}
.v6-timeline-item strong{display:block;color:var(--navy);margin-bottom:4px}.v6-timeline-item small{color:#7b8799}
.v6-presence-card{margin:22px;padding:20px;border-radius:18px;background:#f8fafc;display:flex;align-items:center;gap:13px}.presence-dot{width:12px;height:12px;border-radius:50%;background:#14a66f;box-shadow:0 0 0 6px rgba(20,166,111,.1)}.v6-presence-card strong{display:block;color:var(--navy)}.v6-presence-card small{display:block;color:#7b8799;margin-top:4px}
.status-meeting .presence-dot{background:#e49a24;box-shadow:0 0 0 6px rgba(228,154,36,.11)}.status-unavailable .presence-dot,.status-leave .presence-dot{background:#a0a8b5;box-shadow:0 0 0 6px rgba(160,168,181,.12)}.status-remote .presence-dot{background:#5e79d8;box-shadow:0 0 0 6px rgba(94,121,216,.11)}.status-field .presence-dot{background:#8b5cc7}
.v6-list{padding:8px 13px 14px}.v6-list-row{display:flex;align-items:center;gap:11px;padding:11px 8px;border-radius:14px;text-decoration:none;color:inherit;border:0;background:transparent;width:100%;text-align:right}.v6-list-row:hover{background:#f7f9fb}.v6-list-row>div{flex:1;min-width:0}.v6-list-row strong{display:block;color:var(--navy);font-size:.88rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v6-list-row small{display:block;color:#8a93a3;font-size:.74rem;margin-top:4px}.v6-list-row>b{font-size:.69rem;color:#7b8597}.priority-dot{width:9px;height:9px;border-radius:50%;background:#8b97aa}.priority-dot.p-urgent{background:#d33c4c}.priority-dot.p-high{background:#e49622}.priority-dot.p-medium{background:var(--brand)}.date-chip{width:43px;height:48px;border-radius:13px;background:color-mix(in srgb,var(--brand),white 91%);color:var(--brand);display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:900;line-height:1}.date-chip small{font-size:.65rem!important;margin-top:4px!important}
.v6-activity-feed{padding:10px 20px 18px}.v6-activity-row{display:flex;align-items:center;gap:11px;padding:9px 0;border-bottom:1px solid #f0f2f5}.v6-activity-row:last-child{border:0}.v6-activity-row>div{flex:1}.v6-activity-row strong{font-size:.84rem;color:var(--navy)}.v6-activity-row p{margin:2px 0;color:#737f92;font-size:.78rem}.v6-activity-row time{color:#9aa2af;font-size:.7rem;white-space:nowrap}

.v6-split-layout{display:grid;grid-template-columns:minmax(285px,34%) minmax(0,1fr);gap:17px;min-height:630px}.v6-list-panel,.v6-detail-panel{min-height:630px}
.v6-list-panel{display:flex;flex-direction:column}.v6-list-panel>header{flex:0 0 auto}.v6-filter-pills{display:flex;gap:6px;padding:12px 13px;border-bottom:1px solid #edf0f4;overflow:auto}.v6-filter-pills button{border:0;background:#f4f6f9;color:#6f7b8e;border-radius:999px;padding:7px 11px;font-weight:750;white-space:nowrap;cursor:pointer}.v6-filter-pills button.active{background:var(--navy);color:#fff}
.v6-master-list{overflow:auto;min-height:0;padding:8px}.v6-master-item{display:flex;align-items:center;gap:10px;padding:12px;border-radius:16px;color:inherit;text-decoration:none;position:relative;border:1px solid transparent;margin-bottom:3px}.v6-master-item:hover{background:#f7f9fb}.v6-master-item.active{background:linear-gradient(135deg,color-mix(in srgb,var(--brand),white 94%),#fff);border-color:color-mix(in srgb,var(--brand),transparent 75%);box-shadow:inset -3px 0 var(--brand)}.v6-master-item>div{flex:1;min-width:0}.v6-master-item strong{display:block;color:var(--navy);font-size:.88rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v6-master-item small,.v6-master-item time{display:block;color:#8a94a4;font-size:.7rem;margin-top:3px}.request-type-icon{width:39px;height:39px;border-radius:13px;display:grid;place-items:center;background:#f1f5f7;color:var(--brand);flex:0 0 auto}.request-type-icon svg{width:18px}
.v6-status{padding:5px 8px;border-radius:999px;background:#edf0f3;color:#6f7b8e;font-size:.66rem;white-space:nowrap}.status-new{background:#eef4ff;color:#4e71bb}.status-review,.status-in_progress{background:#fff6dc;color:#a66a05}.status-approved,.status-completed{background:#e8f8f2;color:#14805f}.status-rejected,.status-cancelled{background:#ffedf0;color:#b33b4b}.status-scheduled{background:#edf8f9;color:var(--brand)}.status-archived{background:#eff1f4;color:#7e8793}
.v6-detail-panel{overflow:auto}.detail-title{position:sticky;top:0;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);z-index:3}.detail-title h2{font-size:1.08rem!important}.v6-meta-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding:18px 20px 0}.v6-meta-grid>div{background:#f8fafb;border:1px solid #edf0f3;border-radius:15px;padding:12px}.v6-meta-grid small{display:block;color:#929baa;font-size:.69rem;margin-bottom:5px}.v6-meta-grid strong{display:block;color:var(--navy);font-size:.83rem}
.v6-rich-text{margin:18px 20px;padding:18px;background:linear-gradient(145deg,#fbfcfd,#f7f9fb);border:1px solid #edf0f3;border-radius:18px;color:#4e5c70;line-height:1.95;font-size:.9rem}.circular-body{font-size:.96rem;min-height:170px}
.v6-file-chip{display:inline-flex;align-items:center;gap:8px;padding:10px 12px;margin:0 20px 10px;border-radius:13px;background:#f4f8f8;color:var(--navy);text-decoration:none;border:1px solid #e2eeee;max-width:calc(100% - 40px)}.v6-file-chip svg{width:18px;color:var(--brand)}.v6-file-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v6-file-chip small{color:#929baa;white-space:nowrap}
.v6-callout{margin:14px 20px;padding:15px;border-radius:16px;background:#fff8e7;border:1px solid #f4e2b8;color:#735718}.v6-callout p{margin:7px 0 0}
.v6-history{padding:14px 22px}.v6-history>div{display:grid;grid-template-columns:14px 1fr;gap:10px;position:relative;padding-bottom:18px}.v6-history>div>i{width:10px;height:10px;border-radius:50%;background:var(--brand);margin-top:5px;box-shadow:0 0 0 4px color-mix(in srgb,var(--brand),transparent 88%)}.v6-history>div:not(:last-child):after{content:"";position:absolute;right:4px;top:16px;height:calc(100% - 10px);width:1px;background:#dde4ea}.v6-history strong{display:block;color:var(--navy);font-size:.83rem}.v6-history small{color:#8d96a6;font-size:.7rem}.v6-history p{margin:5px 0 0;color:#687487;font-size:.78rem}
.v6-action-box{margin:16px 20px 20px;padding:16px;border-radius:18px;background:#f8fafb;border:1px solid #e8edf1}.v6-action-box .field{margin-bottom:10px}
.v6-subsection{padding:4px 20px 18px}.v6-subsection>h3,.subsection-head h3{font-size:.9rem;color:var(--navy);margin:16px 0 10px}.subsection-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.v6-people-strip{display:flex;gap:8px;overflow:auto;padding:4px 0 8px}.v6-person-chip{display:flex;align-items:center;gap:8px;padding:8px 10px;background:#f7f9fb;border:1px solid #edf0f3;border-radius:14px;min-width:max-content}.v6-person-chip strong{display:block;font-size:.75rem;color:var(--navy)}.v6-person-chip small{display:block;font-size:.65rem;color:#8c95a3;margin-top:2px}.meeting-response{padding-top:10px}.meeting-response>span{font-size:.75rem;color:#7d8798}
.v6-file-list{display:flex;gap:7px;flex-wrap:wrap}.v6-file-list .v6-file-chip{margin:0}.inline-upload{margin-top:9px}
.v6-minutes-form textarea{width:100%;resize:vertical;min-height:150px;border:1px solid #dfe5eb;border-radius:16px;padding:13px;line-height:1.8;background:#fcfdfd}.v6-minutes-form .button-row{justify-content:flex-end;margin-top:9px}
.decision-list article{display:flex;gap:9px;padding:10px 0;border-bottom:1px solid #eef1f4}.decision-list article>span{width:31px;height:31px;display:grid;place-items:center;border-radius:10px;background:#e9f7f2;color:#14805f}.decision-list strong{display:block;color:var(--navy);font-size:.82rem}.decision-list small{display:block;color:#8b95a4;font-size:.69rem;margin-top:4px}

.v6-dialog{border:0;padding:0;border-radius:24px;box-shadow:0 28px 90px rgba(9,21,44,.25);width:min(620px,calc(100vw - 26px));max-height:min(850px,calc(100vh - 30px));overflow:auto;background:#fff;color:#24334c}.v6-dialog.wide{width:min(820px,calc(100vw - 26px))}.v6-dialog::backdrop{background:rgba(8,20,42,.48);backdrop-filter:blur(4px)}.v6-dialog>form>header{display:flex;justify-content:space-between;align-items:center;padding:19px 21px;border-bottom:1px solid #edf0f3;position:sticky;top:0;background:#fff;z-index:3}.v6-dialog h2{margin:0;color:var(--navy);font-size:1.05rem}.v6-dialog header small{display:block;color:#8993a3;margin-top:4px}.v6-dialog .form-grid{padding:19px 21px}.v6-dialog footer{display:flex;justify-content:flex-end;gap:8px;padding:15px 21px;border-top:1px solid #edf0f3;background:#fafbfc;position:sticky;bottom:0}
.v6-multi-select>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;max-height:220px;overflow:auto;padding:8px;background:#f8fafb;border:1px solid #e4e9ee;border-radius:15px}.v6-multi-select>div>label{display:flex;align-items:center;gap:7px;padding:8px;background:white;border-radius:11px;font-size:.75rem}.scroll-users{grid-template-columns:repeat(2,minmax(0,1fr))!important}.scroll-users label>span:last-child{display:flex;flex-direction:column}.scroll-users small{color:#8791a0;font-size:.65rem}
.brand-gif-note{display:block;margin-top:7px;color:#8791a1;font-size:.68rem}

.acknowledge-box{margin:18px 20px;padding:15px;border-radius:18px;background:linear-gradient(135deg,#f0faf7,#fff);border:1px solid #d7eee6;display:flex;align-items:center;justify-content:space-between;gap:14px}.acknowledge-box>div{display:flex;gap:10px;align-items:center}.acknowledge-box svg{width:24px;color:#14805f}.acknowledge-box strong,.acknowledge-box small{display:block}.acknowledge-box strong{color:var(--navy)}.acknowledge-box small{color:#788596;margin-top:3px}.read-ratio{color:var(--brand);font-size:.85rem}.v6-progress{height:8px;border-radius:99px;background:#edf1f3;overflow:hidden;margin-bottom:13px}.v6-progress i{display:block;height:100%;background:linear-gradient(90deg,var(--brand),color-mix(in srgb,var(--brand),white 30%));border-radius:inherit}
.conf-badge{padding:6px 9px;border-radius:999px;font-size:.68rem;background:#eef1f4;color:#687386}.conf-confidential{background:#fff0e3;color:#a05213}.conf-restricted{background:#ffeaee;color:#aa3044}

.v6-search-bar{display:flex;align-items:center;gap:8px;padding:10px 12px;margin-bottom:15px;border:1px solid #e1e6eb;border-radius:17px;background:rgba(255,255,255,.93);box-shadow:0 8px 26px rgba(15,30,63,.04)}.v6-search-bar>svg{width:19px;color:#8b95a5}.v6-search-bar input{flex:1;min-width:0;border:0;outline:0;background:transparent}.v6-search-bar select{border:0;border-right:1px solid #e5e8ec;background:#fff;padding:7px;color:#586579}
.knowledge-grid{padding:9px;display:flex;flex-direction:column;gap:4px;overflow:auto}.knowledge-card{display:flex;align-items:center;gap:10px;padding:12px;border-radius:15px;text-decoration:none;color:inherit;border:1px solid transparent;position:relative}.knowledge-card:hover{background:#f8fafb}.knowledge-card.active{background:color-mix(in srgb,var(--brand),white 95%);border-color:color-mix(in srgb,var(--brand),transparent 78%)}.knowledge-icon{width:40px;height:44px;border-radius:12px;display:grid;place-items:center;background:#eef4f4;color:var(--brand)}.knowledge-card>div{flex:1;min-width:0}.knowledge-card strong{display:block;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.84rem}.knowledge-card small,.knowledge-card time{display:block;color:#8b95a5;font-size:.68rem;margin-top:3px}.fav-star{color:#d49b28;font-size:1rem}.version-list a{display:flex;align-items:center;gap:10px;padding:10px;border-bottom:1px solid #eef1f4;text-decoration:none;color:inherit}.version-number{width:42px;height:34px;border-radius:10px;background:var(--navy);color:white;display:grid;place-items:center;font-size:.7rem;font-weight:850}.version-list a>div{flex:1;min-width:0}.version-list strong{display:block;color:var(--navy);font-size:.78rem}.version-list small{display:block;color:#8994a3;font-size:.67rem;margin-top:3px}.version-list svg{width:18px;color:var(--brand)}

.org-root{position:relative;padding-bottom:30px}.org-institute-node{width:min(520px,100%);margin:0 auto;padding:18px 22px;border-radius:23px;background:linear-gradient(135deg,var(--navy),color-mix(in srgb,var(--navy),var(--brand) 22%));color:#fff;display:flex;align-items:center;gap:14px;box-shadow:0 18px 44px color-mix(in srgb,var(--navy),transparent 78%)}.org-institute-node>span{width:48px;height:48px;border-radius:16px;background:rgba(255,255,255,.12);display:grid;place-items:center}.org-institute-node strong{display:block;font-size:1rem}.org-institute-node small{opacity:.7}.org-connector{width:2px;height:34px;background:linear-gradient(var(--brand),transparent);margin:auto}.org-department-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.org-department-card{background:rgba(255,255,255,.94);border:1px solid color-mix(in srgb,var(--dept-color),transparent 82%);border-radius:24px;box-shadow:0 12px 34px rgba(15,30,63,.055);overflow:hidden;position:relative}.org-department-card:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--dept-color),color-mix(in srgb,var(--dept-color),white 58%))}.org-department-card>header{display:flex;align-items:center;gap:10px;padding:17px;border-bottom:1px solid #eef1f4}.org-department-card>header>div{flex:1}.org-department-card h2{margin:0;color:var(--navy);font-size:.92rem}.org-department-card header small{color:#8b95a5}.org-department-card header a{color:#8a94a4}.org-dept-icon{width:39px;height:39px;border-radius:13px;display:grid;place-items:center;background:color-mix(in srgb,var(--dept-color),white 90%);color:var(--dept-color)}.org-manager{margin:13px;width:calc(100% - 26px);display:flex;align-items:center;gap:10px;border:1px solid color-mix(in srgb,var(--dept-color),transparent 83%);background:color-mix(in srgb,var(--dept-color),white 96%);border-radius:17px;padding:10px;text-align:right;cursor:pointer}.org-manager span:last-child{display:flex;flex-direction:column}.org-manager small{color:#8a94a4;font-size:.65rem}.org-manager strong{color:var(--navy);font-size:.78rem}.org-members{padding:0 11px 14px;display:flex;flex-direction:column;gap:3px}.org-member{display:flex;align-items:center;gap:9px;border:0;background:transparent;border-radius:13px;padding:7px;text-align:right;cursor:pointer;position:relative}.org-member:hover{background:#f7f9fb}.org-member>span:nth-child(2){flex:1;display:flex;flex-direction:column}.org-member strong{font-size:.74rem;color:var(--navy)}.org-member small{font-size:.64rem;color:#8c96a5}.org-member>i{width:6px;height:22px;border-radius:99px}

.presence-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.presence-person{display:flex;align-items:center;gap:13px;padding:15px;border:1px solid #e7ebef;background:rgba(255,255,255,.94);border-radius:20px;text-align:right;cursor:pointer;box-shadow:0 8px 26px rgba(15,30,63,.04);transition:.25s ease}.presence-person:hover{transform:translateY(-3px);box-shadow:0 15px 34px rgba(15,30,63,.08)}.presence-person .user-avatar{position:relative}.presence-person .user-avatar i{position:absolute;bottom:1px;left:1px;width:12px;height:12px;border-radius:50%;background:#14a66f;border:2px solid #fff}.presence-person.status-meeting .user-avatar i{background:#df9827}.presence-person.status-unavailable .user-avatar i,.presence-person.status-leave .user-avatar i{background:#a4adb9}.presence-person.status-remote .user-avatar i{background:#5a77d4}.presence-person.status-field .user-avatar i{background:#8b59c5}.presence-person>div{min-width:0;flex:1}.presence-person strong{display:block;color:var(--navy);font-size:.84rem}.presence-person small{display:block;color:#8b95a5;font-size:.68rem;margin:3px 0}.presence-label{display:inline-block;color:var(--brand);font-size:.68rem;font-weight:800}

.executive-stats{grid-template-columns:repeat(6,minmax(0,1fr))}.executive-stats .v6-stat-card{min-height:128px}.department-load-table{padding:9px 17px 17px}.department-load-table>a{display:grid;grid-template-columns:8px minmax(120px,1fr) repeat(3,82px);align-items:center;gap:10px;padding:12px 3px;border-bottom:1px solid #eef1f4;text-decoration:none;color:inherit;position:relative;overflow:hidden}.department-load-table>a>i{position:absolute;bottom:0;right:0;height:2px;background:color-mix(in srgb,var(--brand),transparent 35%)}.dept-color{width:7px;height:28px;border-radius:99px}.department-load-table strong{color:var(--navy);font-size:.82rem}.department-load-table div{text-align:center}.department-load-table small{display:block;color:#8b95a5;font-size:.61rem}.department-load-table b{color:var(--navy);font-size:.85rem}.danger-text b{color:#bd4050}.v6-mini-chart{height:220px;padding:18px;display:flex;align-items:flex-end;gap:7px}.chart-bar{height:100%;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:6px}.chart-bar i{width:min(22px,80%);background:linear-gradient(180deg,var(--brand),color-mix(in srgb,var(--brand),white 38%));border-radius:8px 8px 3px 3px;min-height:8px}.chart-bar small{font-size:.58rem;color:#8e98a7;writing-mode:vertical-rl;max-height:38px}

.activity-timeline{padding:18px 22px}.activity-timeline article{display:grid;grid-template-columns:34px 14px 1fr;gap:10px;position:relative;padding-bottom:19px}.activity-timeline article>i{width:9px;height:9px;margin-top:9px;border-radius:50%;background:var(--brand);box-shadow:0 0 0 5px color-mix(in srgb,var(--brand),transparent 90%)}.activity-timeline article:not(:last-child):after{content:"";position:absolute;right:51px;top:22px;width:1px;height:calc(100% - 15px);background:#dfe5ea}.activity-timeline header{display:flex;justify-content:space-between;gap:12px}.activity-timeline strong{color:var(--navy);font-size:.8rem}.activity-timeline time{font-size:.65rem;color:#929baa}.activity-timeline p{margin:3px 0;color:#556277;font-size:.79rem}.activity-timeline small{color:#929baa;font-size:.65rem}

.delegation-list{padding:13px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.delegation-card{display:flex;align-items:flex-start;gap:12px;padding:15px;border:1px solid #e7ebef;border-radius:19px;background:#fbfcfd}.delegation-card.active{border-color:color-mix(in srgb,var(--brand),transparent 72%);background:linear-gradient(145deg,color-mix(in srgb,var(--brand),white 96%),#fff)}.delegation-icon{width:44px;height:44px;border-radius:14px;background:var(--navy);color:white;display:grid;place-items:center;flex:0 0 auto}.delegation-card>div{flex:1}.delegation-card header{display:flex;align-items:center;justify-content:space-between;gap:9px}.delegation-card h3{font-size:.82rem;color:var(--brand);margin:8px 0 4px}.delegation-card small,.delegation-card em{display:block;color:#8892a2;font-size:.67rem;font-style:normal}.delegation-card p{margin:7px 0;color:#657185;font-size:.74rem}

.assistant-safety{display:inline-flex;align-items:center;gap:6px;padding:8px 11px;border-radius:999px;background:#eaf7f2;color:#167c60;font-size:.73rem;font-weight:800}.assistant-safety svg{width:17px}.assistant-shell{width:min(900px,100%);margin:20px auto;position:relative}.assistant-orb{width:82px;height:82px;margin:0 auto -36px;border-radius:28px;background:linear-gradient(135deg,var(--navy),var(--brand));color:white;display:grid;place-items:center;position:relative;z-index:3;box-shadow:0 18px 40px color-mix(in srgb,var(--brand),transparent 70%)}.assistant-orb svg{width:34px;height:34px}.assistant-orb i{position:absolute;inset:-8px;border:1px solid color-mix(in srgb,var(--brand),transparent 55%);border-radius:34px;animation:assistantPulse 3s ease-in-out infinite}.assistant-orb i:nth-child(3){inset:-17px;animation-delay:.7s;opacity:.45}@keyframes assistantPulse{50%{transform:scale(1.04);opacity:.25}}
.assistant-chat{min-height:430px;padding:60px 30px 24px;background:rgba(255,255,255,.94);border:1px solid #e4e9ed;border-radius:28px 28px 0 0;box-shadow:0 18px 50px rgba(15,30,63,.07)}.assistant-welcome{text-align:center;padding:60px 15px}.assistant-welcome h2{color:var(--navy)}.assistant-prompts{display:flex;gap:7px;flex-wrap:wrap;justify-content:center}.assistant-prompts button{border:1px solid #dfe6eb;background:#f8fafb;color:#5d697c;border-radius:999px;padding:9px 13px;cursor:pointer}.assistant-prompts button:hover{border-color:var(--brand);color:var(--brand)}
.assistant-message{width:min(76%,680px);padding:14px 16px;border-radius:19px;margin:10px 0}.assistant-message.mine{margin-right:auto;background:var(--navy);color:white;border-bottom-left-radius:7px}.assistant-message.bot{margin-left:auto;background:#f2f7f7;border:1px solid #dfebeb;color:#405065;border-bottom-right-radius:7px}.assistant-message strong{display:block;font-size:.72rem;margin-bottom:5px;color:var(--brand)}.assistant-message.mine strong{color:#aee8df}.assistant-message p{margin:0;line-height:1.9}
.assistant-composer{display:grid;grid-template-columns:1fr auto;gap:9px;padding:13px;background:#fff;border:1px solid #e2e7eb;border-top:0;border-radius:0 0 24px 24px;box-shadow:0 14px 38px rgba(15,30,63,.06)}.assistant-composer textarea{border:0;outline:0;resize:none;background:#f7f9fb;border-radius:16px;padding:12px;line-height:1.6}

.digital-id-wrap{display:flex;flex-direction:column;align-items:center;gap:18px}.digital-id-card{width:min(900px,100%);padding:26px;border-radius:32px;overflow:hidden;position:relative;background:linear-gradient(135deg,var(--navy) 0%,color-mix(in srgb,var(--navy),var(--brand) 18%) 62%,var(--brand) 145%);color:white;box-shadow:0 30px 70px rgba(15,30,63,.24)}.digital-id-glow{position:absolute;width:400px;height:400px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--role-color),transparent 35%),transparent 68%);left:-180px;top:-180px;opacity:.55}.digital-id-card>header{display:flex;align-items:center;justify-content:space-between;position:relative;z-index:2}.digital-id-card>header img{max-width:170px;max-height:65px;object-fit:contain;filter:drop-shadow(0 6px 15px rgba(0,0,0,.15))}.digital-id-card>header span{font-size:.73rem;opacity:.68}.digital-id-main{display:grid;grid-template-columns:120px 1fr 170px;gap:22px;align-items:center;padding:36px 0 27px;position:relative;z-index:2}.user-avatar.huge{width:112px;height:112px;border-radius:32px;border:3px solid rgba(255,255,255,.8);font-size:2.2rem}.digital-id-main h2{margin:0;font-size:1.55rem}.digital-id-main>div:nth-child(2)>strong{color:#91e2d9;display:block;margin-top:7px}.digital-id-main p{margin:5px 0 12px;opacity:.75}.digital-departments{display:flex;gap:6px;flex-wrap:wrap}.digital-departments span{padding:6px 9px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);font-size:.68rem}.digital-qr{background:white;padding:10px;border-radius:18px;color:var(--navy);text-align:center}.digital-qr svg{display:block;width:150px;height:150px}.digital-qr small{font-size:.56rem}.digital-id-card>footer{display:flex;align-items:center;gap:12px;border-top:1px solid rgba(255,255,255,.13);padding-top:15px;position:relative;z-index:2}.digital-id-card>footer span{opacity:.55;font-size:.7rem}.digital-id-card>footer b{font-size:1rem;letter-spacing:.08em}.digital-id-card>footer small{margin-right:auto;opacity:.6}.digital-id-actions{display:flex;align-items:flex-end;gap:8px;width:min(650px,100%)}.digital-id-actions label{flex:1;font-size:.7rem;color:#7c8798}.digital-id-actions input{width:100%;margin-top:5px;border:1px solid #dfe5ea;border-radius:13px;padding:10px;background:#fff}

.saved-message-list{padding:12px}.saved-message-list article{display:flex;gap:10px;padding:12px;border-bottom:1px solid #eef1f4}.saved-message-list article>div{flex:1}.saved-message-list strong{font-size:.72rem;color:var(--brand)}.saved-message-list p{margin:4px 0;color:#566378;font-size:.79rem}.saved-message-list small{color:#929baa;font-size:.65rem}

/* Command palette */
.global-search-trigger{height:40px;border:1px solid rgba(15,30,63,.09);background:rgba(255,255,255,.78);border-radius:13px;display:flex;align-items:center;gap:7px;padding:0 10px;color:#647085;cursor:pointer}.global-search-trigger svg{width:18px}.global-search-trigger span{font-size:.72rem;font-weight:750}.global-search-trigger kbd,.command-palette kbd{font:600 .58rem/1 system-ui;background:#f1f3f6;border:1px solid #e1e5e9;border-radius:6px;padding:4px 5px;color:#8a93a2}
.command-palette-backdrop{position:fixed;inset:0;background:rgba(7,17,36,.44);backdrop-filter:blur(5px);z-index:10050;padding:10vh 20px;display:flex;align-items:flex-start;justify-content:center}.command-palette-backdrop[hidden]{display:none}.command-palette{width:min(720px,100%);max-height:76vh;background:#fff;border-radius:23px;box-shadow:0 30px 100px rgba(5,18,43,.32);overflow:hidden;animation:commandIn .18s ease-out}@keyframes commandIn{from{opacity:0;transform:translateY(-10px) scale(.98)}to{opacity:1;transform:none}}.command-palette>header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:14px 17px;border-bottom:1px solid #e9edf1}.command-palette>header svg{width:21px;color:var(--brand)}.command-palette>header input{border:0;outline:0;font-size:.95rem;min-width:0}.command-quick{display:flex;gap:6px;padding:9px 13px;border-bottom:1px solid #eef1f4;overflow:auto}.command-quick a{display:flex;align-items:center;gap:5px;padding:7px 9px;border-radius:11px;background:#f6f8fa;color:#5d6879;text-decoration:none;font-size:.7rem;white-space:nowrap}.command-quick svg{width:15px}.command-results{padding:8px;overflow:auto;max-height:55vh}.command-result{display:grid;grid-template-columns:72px 1fr;gap:10px;align-items:center;padding:10px;border-radius:13px;text-decoration:none;color:inherit}.command-result:hover{background:#f6f9fa}.command-type{font-size:.61rem;color:var(--brand);background:color-mix(in srgb,var(--brand),white 92%);border-radius:999px;padding:5px 7px;text-align:center}.command-result strong{display:block;color:var(--navy);font-size:.8rem}.command-result small{display:block;color:#8993a2;font-size:.67rem;margin-top:3px}.command-hint{padding:30px;text-align:center;color:#8b95a5;font-size:.77rem}.loading-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--brand);animation:dotPulse .8s infinite alternate}@keyframes dotPulse{to{opacity:.25;transform:scale(.75)}}

/* Navigation can hold v6 modules without losing reachability. */
.nasq-v6 .sidebar .nav-list{overflow-y:auto;min-height:0;padding-bottom:10px;scrollbar-width:thin}.nasq-v6 .sidebar .nav-link{min-height:42px}.nasq-v6 .sidebar .nav-caption{margin-top:10px}
.nasq-v6 .institute-brand img[src*="brand.php"]{max-height:74px;object-fit:contain}

/* V6 reveal motion stays quiet and accessibility-safe. */
.v6-reveal{opacity:0;transform:translateY(8px);transition:opacity .42s ease var(--v6-delay,0ms),transform .42s cubic-bezier(.2,.75,.25,1) var(--v6-delay,0ms)}.v6-reveal.is-visible{opacity:1;transform:none}

@media (max-width:1200px){
 .executive-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
 .org-department-grid,.presence-board{grid-template-columns:repeat(2,minmax(0,1fr))}
 .v6-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
 .v6-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .v6-split-layout{grid-template-columns:1fr;min-height:0}
 .v6-list-panel,.v6-detail-panel{min-height:0}
 .v6-detail-panel{max-height:none}
 .v6-page-head{align-items:flex-start;flex-direction:column}
 .org-department-grid,.presence-board{grid-template-columns:1fr}
 .delegation-list{grid-template-columns:1fr}
 .digital-id-main{grid-template-columns:90px 1fr}.digital-id-main .digital-qr{grid-column:1/-1;justify-self:center}.user-avatar.huge{width:86px;height:86px;border-radius:25px}
 .v6-dashboard-grid{grid-template-columns:1fr}.v6-panel.span-2{grid-column:auto}
}
@media (max-width:640px){
 .v6-stat-grid,.executive-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .v6-stat-card{min-height:120px;padding:14px}.v6-stat-card>b{font-size:1.55rem}
 .v6-panel>header{padding:15px}.v6-meta-grid{padding:14px 14px 0;grid-template-columns:1fr 1fr}.v6-rich-text{margin:14px}.v6-subsection{padding-left:14px;padding-right:14px}.v6-action-box{margin:14px}
 .v6-dialog{border-radius:20px 20px 0 0;width:100%;max-height:90dvh;margin:auto 0 0;position:fixed;bottom:0}.v6-dialog.wide{width:100%}
 .v6-multi-select>div,.scroll-users{grid-template-columns:1fr!important}
 .v6-search-bar{flex-wrap:wrap}.v6-search-bar input{flex-basis:calc(100% - 36px)}.v6-search-bar select{flex:1;border:0}
 .department-load-table>a{grid-template-columns:8px 1fr 56px 56px}.department-load-table>a>div:nth-of-type(1){display:none}
 .digital-id-card{padding:18px;border-radius:24px}.digital-id-card>header img{max-width:130px}.digital-id-main{padding:24px 0;gap:13px}.digital-id-main h2{font-size:1.08rem}.digital-id-actions{flex-direction:column;align-items:stretch}.digital-id-main .digital-qr{width:170px}
 .global-search-trigger span,.global-search-trigger kbd{display:none}.command-palette-backdrop{padding:5vh 10px}
 .assistant-chat{padding-left:15px;padding-right:15px}.assistant-message{width:90%}.assistant-composer{grid-template-columns:1fr}.assistant-composer .button{justify-content:center}
}
@media (prefers-reduced-motion:reduce){.v6-reveal,.assistant-orb i,.command-palette{animation:none!important;transition:none!important;transform:none!important;opacity:1!important}}
@media print{.sidebar,.topbar,.mobile-nav,.support-fab,.v6-page-head,.digital-id-actions{display:none!important}.main-area,.content-area{margin:0!important;padding:0!important}.digital-id-card{box-shadow:none!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}}


/* ===== NASQ 6 — communication affordances ===== */
.message-microactions{
  display:flex;align-items:center;gap:4px;margin-block:6px 2px;opacity:.18;transform:translateY(2px);
  transition:opacity .18s ease,transform .18s ease;
}
.conversation-message:hover .message-microactions,.conversation-message:focus-within .message-microactions{opacity:1;transform:none}
.message-microactions button{
  inline-size:27px;block-size:27px;border:1px solid color-mix(in srgb,var(--brand) 18%,transparent);
  border-radius:999px;background:color-mix(in srgb,#fff 88%,var(--brand) 12%);color:var(--navy);
  display:grid;place-items:center;padding:0;cursor:pointer;font-size:12px;line-height:1;transition:.18s ease;
}
.message-microactions button:hover,.message-microactions button.active{transform:translateY(-2px) scale(1.05);box-shadow:0 7px 18px rgb(6 129 137 / .14);background:color-mix(in srgb,var(--brand) 14%,#fff)}
.message-reply-reference{
  border-inline-start:3px solid var(--brand);background:color-mix(in srgb,var(--brand) 7%,transparent);
  border-radius:10px;padding:6px 9px;margin-block-end:6px;color:color-mix(in srgb,var(--navy) 80%,var(--brand));
  font-size:.77rem;max-inline-size:100%;
}
.composer-reply-preview{
  grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:7px 11px;border:1px solid color-mix(in srgb,var(--brand) 17%,transparent);
  border-radius:12px;background:color-mix(in srgb,var(--brand) 5%,#fff);font-size:.78rem;color:var(--navy);
}
.composer-reply-preview[hidden]{display:none!important}
.composer-reply-preview button{border:0;background:transparent;cursor:pointer;font-size:1.2rem;color:var(--muted)}
.schedule-message-control{display:flex;align-items:center;gap:4px;min-inline-size:38px}
.schedule-message-control input{inline-size:38px;max-inline-size:38px;color:transparent;border:0;background:transparent;padding:0;cursor:pointer}
.schedule-message-control input::-webkit-calendar-picker-indicator{opacity:.8;cursor:pointer}
.archive-conversations{margin-block-start:0}
.archive-conversation-row>a{flex:1;min-inline-size:0;display:grid;gap:3px;text-decoration:none;color:inherit}
.dnd-panel{margin-block:18px}
.dnd-form{display:grid;grid-template-columns:minmax(170px,1fr) minmax(210px,1.2fr) auto;gap:12px;align-items:end}
@media(max-width:760px){
  .message-microactions{opacity:.78}
  .dnd-form{grid-template-columns:1fr}
}

/* === NASQ 6.1 production completion === */
.v5-cursor,.v5-click-pulse{isolation:isolate!important;pointer-events:none!important}
dialog[open] .v5-cursor,dialog[open] .v5-click-pulse{z-index:2147483647!important}
.assistant-head-status{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.assistant-engine-status{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;font-size:11px;font-weight:800;background:rgba(15,30,63,.06);color:var(--navy);border:1px solid rgba(15,30,63,.09)}
.assistant-engine-status.ready{background:rgba(6,129,137,.09);color:var(--brand);border-color:rgba(6,129,137,.18)}
.assistant-mode-badge{display:inline-flex;margin-inline-start:6px;padding:2px 7px;border-radius:999px;background:rgba(6,129,137,.08);color:var(--brand);font-size:9px;vertical-align:middle}
.assistant-settings-card .field small{display:block;margin-top:6px;color:var(--muted);font-size:11px}

/* NASQ 6.2 — PWA install center + organized navigation */
.install-center-page{min-height:100dvh;margin:0;background:radial-gradient(circle at 15% 10%,color-mix(in srgb,var(--brand) 18%,transparent),transparent 32%),linear-gradient(145deg,var(--navy),#09142b);font-family:inherit;color:#fff}
.install-center-shell{min-height:100dvh;display:grid;place-items:center;padding:24px}
.install-hero{width:min(680px,100%);text-align:center;padding:clamp(28px,6vw,58px);border:1px solid rgba(255,255,255,.14);border-radius:32px;background:rgba(255,255,255,.08);backdrop-filter:blur(22px);box-shadow:0 30px 80px rgba(0,0,0,.24)}
.install-logo img{max-width:150px;max-height:100px;object-fit:contain}.install-kicker{display:inline-block;margin:18px 0 6px;padding:6px 12px;border-radius:99px;background:rgba(255,255,255,.1)}
.install-hero h1{font-size:clamp(28px,6vw,48px);margin:8px 0}.install-hero>p{opacity:.78}.install-status{margin:22px auto 14px;padding:11px 16px;border-radius:16px;background:rgba(255,255,255,.08)}
.install-primary{min-width:210px;justify-content:center}.ios-install-guide{margin:20px 0;padding:18px;border-radius:18px;background:rgba(255,255,255,.1)}
.install-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:26px}.install-steps article{padding:14px 10px;border-radius:18px;background:rgba(255,255,255,.07)}.install-steps b{display:grid;place-items:center;width:30px;height:30px;margin:0 auto 8px;border-radius:50%;background:var(--brand)}
.nav-group{margin:5px 8px 10px}.nav-group-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;border:0;background:transparent;color:inherit;padding:8px 10px;font:inherit;font-weight:800;cursor:pointer;opacity:.72}.nav-group-toggle svg{width:15px;transition:transform .22s}.nav-group.collapsed .nav-group-toggle svg{transform:rotate(90deg)}.nav-group.collapsed .nav-group-items{display:none}.nav-group-items{display:grid;gap:2px}
.install-analytics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:18px 0}.install-analytics-grid .wide{grid-column:1/-1}.metric-list{display:grid;gap:10px}.metric-list>div{display:flex;justify-content:space-between;padding:12px 14px;border-radius:14px;background:var(--paper,#f5f5f5)}
.install-bars{height:220px;display:flex;align-items:end;gap:5px;padding:20px 4px 0;overflow-x:auto}.install-bars>div{height:100%;min-width:18px;display:flex;flex-direction:column;justify-content:end;align-items:center;gap:5px}.install-bars i{display:block;width:12px;min-height:8px;border-radius:8px 8px 3px 3px;background:linear-gradient(var(--brand),var(--navy));transition:.2s}.install-bars small{font-size:9px;writing-mode:vertical-rl;opacity:.6}
@media(max-width:700px){.install-steps{grid-template-columns:1fr}.install-analytics-grid{grid-template-columns:1fr}.install-analytics-grid .wide{grid-column:auto}}
