:root{
  --brand:#0c375c;
  --brand-2:#174d79;
  --brand-3:#245f8d;
  --silver:#9cafc7;
  --ink:#152633;
  --ink-soft:#405463;
  --muted:#5f707c;
  --line:#e2e8ee;
  --line-strong:#d4dee7;
  --soft:#f4f7fb;
  --soft-2:#eef3f8;
  --panel:#ffffff;
  --panel-alt:#f8fbfd;
  --green:#258b5c;
  --green-soft:#e8f6ee;
  --red:#c44f4f;
  --red-soft:#fff1f1;
  --warn:#9f6b21;
  --warn-soft:#fff6e7;
  --shadow-sm:0 10px 24px rgba(14,42,63,.06);
  --shadow-md:0 18px 42px rgba(14,42,63,.10);
  --shadow-lg:0 30px 80px rgba(8,33,55,.22);
  --radius:18px;
  --radius-sm:12px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Onest","Segoe UI",Arial,sans-serif;color:var(--ink);background:linear-gradient(180deg,#f7f9fc 0%,#eef3f7 100%);font-size:14.5px;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
img{max-width:100%;display:block}
.ui-icon{width:18px;height:18px;display:inline-block;flex:0 0 auto}
.ui-icon.small-icon{width:16px;height:16px}
.ui-icon.mini{width:14px;height:14px}
.app-shell{min-height:100vh;display:grid;grid-template-columns:258px 1fr}
.sidebar{position:sticky;top:0;height:100vh;background:linear-gradient(180deg,var(--brand) 0%,#0b2e4d 45%,#082846 100%);color:#fff;padding:18px 14px 16px;display:flex;flex-direction:column;box-shadow:20px 0 60px rgba(5,25,41,.12)}
.brand{display:flex;gap:12px;align-items:center;padding:4px 8px 24px;min-height:66px}
.brand-symbol{width:35px;height:44px;object-fit:contain;filter:drop-shadow(0 8px 18px rgba(0,0,0,.15))}
.brand-word{width:150px;height:auto}
.sidebar nav{display:grid;gap:6px}
.nav-item{height:46px;border-radius:14px;display:flex;align-items:center;gap:12px;padding:0 12px;color:#b7c7d3;font-weight:700;letter-spacing:-.01em;transition:.18s ease}
.nav-item .ico{width:22px;height:22px;display:grid;place-items:center;color:#b8cad8;transition:inherit}
.nav-item .nav-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nav-item:hover{background:rgba(255,255,255,.09);color:#fff;transform:translateX(2px)}
.nav-item:hover .ico,.nav-item.active .ico{color:#fff}
.nav-item.active{background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.08));color:#fff;box-shadow:inset 3px 0 #d0d9e2,0 10px 26px rgba(0,0,0,.12)}
.nav-label{padding:22px 12px 8px;color:#7e97ab;font-size:12.5px;text-transform:none;letter-spacing:0;font-weight:700}
.me{margin-top:auto;border-top:1px solid rgba(255,255,255,.08);padding:16px 8px 0;display:flex;gap:10px;align-items:center}
.me b,.me small{display:block}
.me b{font-size:13.5px;line-height:1.3}
.me small{font-size:12.5px;color:#577083;margin-top:3px}
.avatar,.big-avatar{display:grid;place-items:center;border-radius:50%;background:linear-gradient(180deg,#eaf1f7,#dbe6ee);color:#34586f;font-weight:800;flex:0 0 auto;box-shadow:inset 0 1px 0 rgba(255,255,255,.9)}
.avatar{width:40px;height:40px;font-size:13px}
.avatar.small{width:36px;height:36px;border:1px solid rgba(21,38,51,.06)}
.big-avatar{width:74px;height:74px;font-size:20px;margin:auto}
.main{min-width:0}
.topbar{height:72px;background:rgba(255,255,255,.85);border-bottom:1px solid rgba(212,222,231,.85);display:flex;align-items:center;justify-content:space-between;padding:0 24px;position:sticky;top:0;z-index:30;backdrop-filter:blur(16px);box-shadow:0 8px 20px rgba(13,37,56,.03)}
.topbar-title{display:flex;align-items:center;gap:6px}
.topbar small{color:#5d6f7a;font-weight:600}
.topbar b{font-size:15.5px;letter-spacing:-.02em}
.top-actions{display:flex;align-items:center;gap:8px}
.search-trigger{height:40px;display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:12px;background:#f8fafc;padding:0 14px;color:#60707b;font-weight:600;cursor:pointer;transition:.18s ease}
.search-trigger:hover{background:#fff;border-color:#cad7e1;color:var(--brand);box-shadow:var(--shadow-sm)}
.content{padding:24px;max-width:1600px;margin:auto}
.page-title{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px}
.page-title h1{margin:0;font-size:29px;letter-spacing:-.045em;line-height:1.05}
.page-title p{margin:8px 0 0;color:var(--muted);max-width:760px;line-height:1.55}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 14px;border:1px solid var(--line);border-radius:12px;background:#fff;color:#425767;font-weight:700;cursor:pointer;transition:.18s ease;box-shadow:0 1px 0 rgba(255,255,255,.9)}
.btn:hover{transform:translateY(-1px);border-color:#c9d6df;box-shadow:var(--shadow-sm)}
.btn.primary{background:linear-gradient(180deg,var(--brand),#0a3154);border-color:var(--brand);color:#fff;box-shadow:0 14px 34px rgba(12,55,92,.22)}
.btn.primary:hover{background:linear-gradient(180deg,#12446f,#0a3154)}
.btn.light{background:#fff;color:var(--brand);border-color:#fff}
.btn.glass{background:rgba(255,255,255,.09);color:#fff;border-color:rgba(255,255,255,.18);backdrop-filter:blur(8px)}
.btn.ghost{background:#f7fafc}
.btn.success{background:var(--green-soft);color:#247e54;border-color:#d8efe3}
.danger-btn{color:var(--red)}
.hero{min-height:236px;background:linear-gradient(135deg,var(--brand),#194a74 48%,#2a6391 100%);border-radius:26px;color:#fff;padding:30px 32px;display:flex;justify-content:space-between;overflow:hidden;position:relative;box-shadow:0 24px 60px rgba(12,55,92,.18);border:1px solid rgba(255,255,255,.08)}
.hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at top left,rgba(255,255,255,.12),transparent 36%),linear-gradient(90deg,transparent,rgba(255,255,255,.04));pointer-events:none}
.hero span{color:#c2d4e2;text-transform:none;letter-spacing:0;font-size:12.5px;font-weight:800}
.hero h1{font-size:34px;margin:14px 0 10px;letter-spacing:-.055em;line-height:1.04}
.hero p{color:#d7e4ed;max-width:640px;line-height:1.65;font-size:15.5px}
.hero-actions{display:flex;gap:10px;margin-top:20px;flex-wrap:wrap}
.hero-symbol{position:absolute;right:28px;bottom:-62px;width:248px;opacity:.12;pointer-events:none}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:14px 0}
.stat,.card{background:rgba(255,255,255,.96);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow-sm)}
.stat{padding:18px 18px 16px;transition:.18s ease}
.stat:hover,.card:hover{box-shadow:var(--shadow-md)}
.stat small,.stat span{display:block;color:var(--muted);font-size:13px}
.stat strong{display:block;font-size:30px;letter-spacing:-.06em;margin:8px 0 4px;line-height:1}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.card{overflow:hidden}
.card-head{min-height:58px;border-bottom:1px solid #eef2f5;display:flex;align-items:center;justify-content:space-between;padding:0 18px;background:linear-gradient(180deg,#fff,#fbfdfe)}
.card-head h3{margin:0;font-size:15.5px;letter-spacing:-.01em}
.card-head a{color:var(--brand-2);font-size:13px;font-weight:800}
.row-link,.event-row{min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px;border-bottom:1px solid #f0f3f6;transition:.18s ease}
.row-link:last-child,.event-row:last-child{border-bottom:0}
.row-link:hover{background:#f8fbfd}
.row-link b,.event-row b{display:block;font-size:14px;line-height:1.35}
.row-link small,.event-row small{display:block;color:var(--muted);font-size:13px;margin-top:4px;line-height:1.4}
.row-link time{font-size:13px;color:#5f707b;font-weight:700;text-align:right}
.event-row{justify-content:flex-start}
.event-row time{width:50px;color:var(--brand);font-weight:800;font-size:14px}
.danger{color:var(--red)!important}
.empty{padding:30px;text-align:center;color:#616e77;font-size:14px}
.alert{padding:12px 14px;border-radius:13px;margin-bottom:12px;border:1px solid transparent;box-shadow:var(--shadow-sm)}
.alert.success{background:#eaf8f1;color:#247e54;border-color:#d6eadf}
.alert.danger{background:var(--red-soft);color:#b84848;border-color:#efd4d4}
.form-card{padding:18px;margin-bottom:14px}
.form-card h3{margin:0 0 14px;font-size:16px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.form-grid label{display:grid;gap:6px;font-size:12.5px;color:#616f79;font-weight:800;text-transform:none;letter-spacing:0}
.form-grid .full{grid-column:1/-1}
.form-grid input,.form-grid textarea,.form-grid select,.inline-form input,.approval-actions input,.search-form input,.composer textarea,.login-form input{width:100%;border:1px solid var(--line);border-radius:12px;background:#fff;padding:11px 12px;color:var(--ink);outline:none;transition:.18s ease}
.form-grid textarea{min-height:92px;resize:vertical}
.form-grid input:focus,.form-grid textarea:focus,.form-grid select:focus,.inline-form input:focus,.approval-actions input:focus,.search-form input:focus,.composer textarea:focus,.login-form input:focus{border-color:#a5bed1;box-shadow:0 0 0 4px rgba(12,55,92,.06)}
.form-grid small{font-size:12.5px;text-transform:none;letter-spacing:0;font-weight:500;color:var(--muted)}
.hidden{display:none!important}
.table-card{overflow:auto}
table{width:100%;border-collapse:collapse}
th,td{text-align:left;padding:14px 16px;border-bottom:1px solid #eef2f4;font-size:13.5px}
tr:hover td{background:#fbfdfe}
th{background:#f8fafc;color:#616f79;text-transform:none;letter-spacing:0;font-size:12px;font-weight:800}
td b,td small{display:block}
td small{color:var(--muted);margin-top:4px}
.badge{display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:999px;background:#eef2f4;color:#60717c;font-size:12.5px;font-weight:800;letter-spacing:.02em}
.badge.done,.badge.approved{background:var(--green-soft);color:#277d55}
.badge.new{background:#eef4fb;color:#416d95}
.badge.in_progress,.badge.active{background:#edf5fb;color:#2f6894}
.badge.rejected{background:var(--red-soft);color:#bd4e4e}
.badge.returned{background:var(--warn-soft);color:var(--warn)}
.icon-action{border:1px solid var(--line);background:#f7fafc;width:34px;height:34px;border-radius:11px;cursor:pointer;display:grid;place-items:center;color:var(--brand);transition:.18s ease}
.icon-action:hover{background:#fff;border-color:#c7d4dd;box-shadow:var(--shadow-sm)}
.people-grid{display:grid;grid-template-columns:repeat(4,minmax(220px,1fr));gap:12px}
.person-card{background:rgba(255,255,255,.96);border:1px solid var(--line);border-radius:20px;padding:18px;text-align:center;position:relative;box-shadow:var(--shadow-sm);transition:.18s ease}
.person-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}
.person-card h3{font-size:14.5px;margin:12px 0 4px;letter-spacing:-.01em}
.person-card p{font-size:13.5px;margin:0;color:#596c78}
.person-card>small{display:block;color:#627079;font-size:12.5px;margin-top:5px}
.person-status{position:absolute;right:12px;top:12px;color:#27875a;background:#eaf8f1;border:1px solid #d8efe3;border-radius:999px;padding:5px 8px;font-size:12px;font-weight:700;display:inline-flex;align-items:center;gap:5px}
.person-status .dot{width:8px;height:8px;border-radius:50%;background:#2ea86c;box-shadow:0 0 0 3px rgba(46,168,108,.14)}
.contact-list{border-top:1px solid #eef2f4;margin-top:14px;padding-top:10px;text-align:left;display:grid;gap:8px;color:#5d707c;font-size:13px}
.contact-list span{display:flex;align-items:center;gap:8px}
.actions{display:flex;gap:8px;margin-top:12px}.actions .btn{flex:1;min-height:34px;font-size:13px}
.messenger-layout{height:calc(100vh - 120px);min-height:560px;display:grid;grid-template-columns:290px minmax(0,1fr) 300px;background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:var(--shadow-sm)}
.chat-side{border-right:1px solid var(--line);overflow:auto;background:#fbfdfe}
.chat-link{display:flex;gap:10px;align-items:center;padding:10px 12px;margin:5px 8px;border-radius:12px;transition:.18s ease}
.chat-link.active,.chat-link:hover{background:#eef5fa}
.chat-link b,.chat-link small{display:block}.chat-link b{font-size:13.5px}.chat-link small{font-size:12.5px;color:var(--muted);margin-top:3px}
.chat-panel{display:grid;grid-template-rows:60px 1fr auto;min-width:0}.chat-panel>header{border-bottom:1px solid var(--line);padding:12px 16px;background:#fff}.chat-panel h3{margin:0;font-size:14.5px}.chat-panel header small{color:var(--muted);font-size:12.5px}
.messages{padding:18px;overflow:auto;background:linear-gradient(180deg,#f9fbfd,#f3f7fb)}
.msg{max-width:72%;background:#fff;border:1px solid var(--line);border-radius:16px 16px 16px 6px;padding:10px 12px;margin:8px 0;font-size:13.5px;box-shadow:0 6px 18px rgba(14,42,63,.04)}
.msg.mine{margin-left:auto;background:#eaf4fb;border-color:#dbeaf4;border-radius:16px 16px 6px 16px}.msg-name{font-size:12.5px;color:var(--brand-2);font-weight:800;margin-bottom:4px}.msg time{font-size:12px;color:#626f79;display:block;text-align:right;margin-top:4px}
.composer{display:grid;grid-template-columns:1fr auto;gap:8px;padding:11px;border-top:1px solid var(--line);background:#fff}.composer textarea{min-height:42px;resize:none}
.approval-list{display:grid;gap:12px}.approval-card{padding:17px}.approval-card h3{margin:8px 0 5px;font-size:16px}.approval-card p{color:#5e707b;font-size:13.5px;line-height:1.55}.approval-card small{color:#626f79}.route-current{margin-top:12px;padding:10px 12px;border-radius:12px;background:#f4f8fa;font-size:13px}.approval-actions{display:flex;gap:7px;margin-top:13px;flex-wrap:wrap}.approval-actions input{flex:1;min-width:220px}
.integration-card{padding:18px;display:flex;gap:14px;align-items:center}.integration-logo{width:58px;height:58px;border-radius:16px;background:#0f6cbd;color:#fff;display:grid;place-items:center;font-size:25px;font-weight:800;box-shadow:0 16px 32px rgba(15,108,189,.24)}.integration-card h3{margin:0}.integration-card p{color:var(--muted);font-size:13.5px;line-height:1.6}.feature-list{line-height:2;color:#5d6f7d;font-size:13.5px}.notice{margin-top:14px;background:#fffdf4;border:1px solid #eee4ad;border-radius:14px;padding:13px 15px;color:#766622;font-size:13px;line-height:1.55}
.admin-tabs{display:flex;gap:8px;margin-bottom:14px;flex-wrap:wrap}.admin-tabs a{background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 12px;font-size:13px;font-weight:700;box-shadow:var(--shadow-sm)}
.compact-list>div{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid #eef2f4}.compact-list b,.compact-list small{display:block}.compact-list b{font-size:13px}.compact-list small{font-size:12.5px;color:var(--muted);margin-top:3px}.inline-form{display:flex;gap:8px}.chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}.chips span{background:#f1f5f7;border-radius:999px;padding:6px 10px;font-size:12.5px;color:#5e7280;border:1px solid #e6edf2}
.role-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:14px}.role-grid article{border:1px solid var(--line);border-radius:14px;padding:12px;background:#fbfdfe}.role-grid b,.role-grid small,.role-grid code{display:block}.role-grid small{color:var(--muted);margin:3px 0 9px}.role-grid code{font-size:12px;white-space:normal;color:#5e6f7b;line-height:1.5}
.profile-page{text-align:center;padding:32px}.profile-page h1{font-size:24px;margin:12px 0 4px;letter-spacing:-.03em}.profile-page p{color:var(--muted)}.profile-data{max-width:600px;margin:20px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:10px;text-align:left}.profile-data span{background:#f7fafb;border:1px solid var(--line);border-radius:12px;padding:11px}.profile-data small{display:block;color:#616f78;margin-bottom:4px;font-size:13px}
.command{display:none;position:fixed;inset:0;background:rgba(4,21,33,.46);z-index:100;align-items:flex-start;justify-content:center;padding-top:14vh;backdrop-filter:blur(6px)}.command.show{display:flex}.command-card{width:min(640px,92vw);background:#fff;border-radius:20px;padding:9px;box-shadow:var(--shadow-lg);border:1px solid rgba(213,223,231,.75)}.command-input{height:54px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:10px;padding:0 10px;color:#6b7d89}.command-input input{flex:1;border:0;outline:0;font-size:15.5px}.command-input kbd{font-size:12.5px;color:#84929c;background:#f3f7fa;border:1px solid #e4ebf0;padding:4px 6px;border-radius:8px}.command-card>a{display:flex;align-items:center;gap:10px;padding:11px 10px;border-radius:10px;font-size:13.5px;font-weight:600}.command-card>a:hover{background:#f3f7f9}.command-icon{width:28px;height:28px;border-radius:9px;background:#eef4f8;color:var(--brand);display:grid;place-items:center;flex:0 0 auto}
.install-body,.login-body{min-height:100vh;background:linear-gradient(135deg,#092e4d,#0c375c 48%,#174d79 100%);display:grid;place-items:center;padding:20px}
.install-card{width:min(760px,96vw);background:#fff;border-radius:24px;padding:28px;box-shadow:var(--shadow-lg)}.install-logo{width:230px;display:block}.install-card h1{margin:22px 0 7px;letter-spacing:-.04em}.install-card>p{color:var(--muted);line-height:1.6}
.login-layout{width:min(1050px,96vw);min-height:620px;background:#fff;border-radius:26px;overflow:hidden;display:grid;grid-template-columns:1.05fr .95fr;box-shadow:var(--shadow-lg)}.login-art{background:linear-gradient(145deg,#0c375c,#174d79);color:#fff;padding:45px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;position:relative}.login-art::before{content:"";position:absolute;inset:auto -80px -120px auto;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.12),transparent 70%)}.login-symbol{width:390px;opacity:.18;margin:-80px auto 0}.login-art h1{font-size:34px;letter-spacing:-.05em;margin:0;line-height:1.05}.login-art p{color:#c1d2df;line-height:1.6}.login-form{padding:56px;display:flex;flex-direction:column;justify-content:center}.login-word{width:260px;display:block;margin-bottom:36px}.login-form h2{font-size:26px;margin:0;letter-spacing:-.03em}.login-form>p{color:var(--muted);margin:7px 0 24px}.login-form form{display:grid;gap:13px}.login-form label{display:grid;gap:6px;color:#657783;font-size:12.5px;font-weight:800;text-transform:none;letter-spacing:0}.login-form input{height:46px}.login-form .btn{height:46px}.muted{color:#636f77;margin-top:18px;line-height:1.55}
.search-form{display:flex;gap:8px}.search-form input{min-width:360px}
@media(max-width:1150px){.people-grid{grid-template-columns:repeat(3,1fr)}.stats{grid-template-columns:repeat(2,1fr)}.hero h1{font-size:30px}}
@media(max-width:850px){.app-shell{grid-template-columns:84px 1fr}.sidebar{padding-left:10px;padding-right:10px}.brand{justify-content:center}.brand-word{display:none}.nav-item{font-size:0;justify-content:center;padding:0}.nav-item .nav-text{display:none}.nav-item .ico{width:24px;height:24px}.nav-label,.me>div:last-child{display:none}.me{justify-content:center}.content{padding:16px}.grid2{grid-template-columns:1fr}.people-grid{grid-template-columns:repeat(2,1fr)}.messenger-layout{grid-template-columns:220px 1fr}.role-grid{grid-template-columns:1fr}.login-layout{grid-template-columns:1fr}.login-art{display:none}.login-form{padding:35px}.hero-symbol{display:none}.topbar{padding:0 16px}}
@media(max-width:620px){.app-shell{display:block}.sidebar{display:none}.topbar{position:sticky;height:auto;min-height:68px;padding:12px}.topbar-title{min-width:0}.top-actions{gap:6px}.search-trigger{display:none}.content{padding:12px}.page-title{display:block}.page-title .btn{margin-top:10px}.stats{grid-template-columns:1fr 1fr}.people-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.messenger-layout{grid-template-columns:1fr;height:auto}.chat-side{max-height:190px}.chat-panel{min-height:550px}.search-form{margin-top:10px;display:flex}.search-form input{min-width:0;flex:1}.hero{padding:22px;min-height:auto}.hero h1{font-size:26px}.hero-actions{flex-wrap:wrap}.profile-data{grid-template-columns:1fr}.inline-form{display:grid}.page-title p{max-width:none}}

/* Calendar — interactive work calendar */
.calendar-page{display:grid;gap:14px}
.calendar-topline{display:flex;justify-content:space-between;align-items:flex-start;gap:24px}
.calendar-topline .eyebrow{font-size:12.5px;letter-spacing:0;text-transform:none;color:#5f6f79;font-weight:800;margin-bottom:6px}
.calendar-topline h1{font-size:30px;line-height:1.05;letter-spacing:-.045em;margin:0}
.calendar-topline p{margin:8px 0 0;color:var(--muted);max-width:780px;line-height:1.55}
.calendar-create{white-space:nowrap}
.calendar-toolbar{min-height:58px;padding:8px 12px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.calendar-nav{display:flex;align-items:center;gap:8px;min-width:0}
.calendar-nav strong{margin-left:6px;font-size:14.5px;letter-spacing:-.02em;white-space:nowrap}
.icon-button{width:38px;height:38px;border:1px solid var(--line);border-radius:11px;background:#fff;display:inline-grid;place-items:center;color:#405665;font-size:24px;line-height:1;cursor:pointer;transition:.16s ease}
.icon-button:hover{border-color:#c6d4df;box-shadow:var(--shadow-sm);transform:translateY(-1px)}
.btn.compact{min-height:38px;padding:0 12px;font-size:13px}
.calendar-view-switch{display:flex;align-items:center;background:#eef3f7;border:1px solid #e1e8ed;border-radius:12px;padding:3px;gap:2px}
.calendar-view-switch a{min-height:32px;padding:0 12px;border-radius:9px;display:flex;align-items:center;font-size:13px;color:#5d707c;font-weight:700}
.calendar-view-switch a.active{background:#fff;color:var(--brand);box-shadow:0 3px 10px rgba(16,43,63,.07)}
.calendar-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:14px;min-height:680px}
.calendar-sidebar{padding:0;overflow:hidden;align-self:start;position:sticky;top:86px}
.calendar-side-section{padding:15px 14px;border-bottom:1px solid #edf1f4}
.calendar-side-section:last-child{border-bottom:0}
.calendar-side-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px}
.calendar-side-title b{font-size:13px;text-transform:none;letter-spacing:0;color:#5e6f7b}
.calendar-side-title span{font-size:12px;color:#606f79;background:#f1f5f7;border-radius:999px;padding:3px 7px}
.calendar-person{display:grid;grid-template-columns:18px 10px minmax(0,1fr);gap:8px;align-items:center;padding:8px 7px;border-radius:10px;cursor:pointer;transition:.15s ease}
.calendar-person:hover{background:#f5f9fb}
.calendar-person input{width:15px;height:15px;margin:0;accent-color:var(--brand)}
.calendar-person b,.calendar-person small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.calendar-person b{font-size:13px;color:#324956}
.calendar-person small{font-size:12px;color:#616f79;margin-top:2px}
.calendar-person.is-me b{font-weight:800}
.calendar-color{width:9px;height:9px;border-radius:3px;box-shadow:0 0 0 3px rgba(28,78,113,.05)}
.c1{--event:#3f7eaa;--event-bg:#e8f2f9}.c2{--event:#657fb0;--event-bg:#edf0fa}.c3{--event:#348e77;--event-bg:#e8f6f1}.c4{--event:#a47738;--event-bg:#fff3de}.c5{--event:#7b6aa9;--event-bg:#f1eef9}.c6{--event:#b45f72;--event-bg:#faedf1}
.calendar-color.c1{background:#3f7eaa}.calendar-color.c2{background:#657fb0}.calendar-color.c3{background:#348e77}.calendar-color.c4{background:#a47738}.calendar-color.c5{background:#7b6aa9}.calendar-color.c6{background:#b45f72}
.room-mini{display:grid;grid-template-columns:27px 1fr;gap:8px;align-items:center;padding:7px;border-radius:9px}
.room-mini>span{width:27px;height:27px;border-radius:8px;background:#eef4f8;color:#4a708b;display:grid;place-items:center}
.room-mini b,.room-mini small{display:block}.room-mini b{font-size:12.5px}.room-mini small{font-size:12px;color:#626f79;margin-top:2px}.side-empty{font-size:12.5px;color:#616f7a;line-height:1.5;padding:3px 2px}
.calendar-main{min-width:0;overflow:hidden}
.week-calendar{min-width:820px;background:#fff}
.week-head{display:grid;grid-template-columns:62px repeat(7,minmax(105px,1fr));border-bottom:1px solid var(--line);background:#fbfdfe;position:sticky;top:0;z-index:6}
.week-time-head{border-right:1px solid #edf1f4}
.week-day-head{min-height:62px;padding:8px 7px;text-align:center;border-right:1px solid #edf1f4;display:flex;align-items:center;justify-content:center;gap:5px}
.week-day-head:last-child{border-right:0}.week-day-head span{font-size:12px;text-transform:none;color:#61707b;font-weight:800}.week-day-head b{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;font-size:14px}.week-day-head small{font-size:12px;color:#616e77}.week-day-head.today b{background:var(--brand);color:#fff;box-shadow:0 6px 14px rgba(12,55,92,.18)}
.week-scroll{display:grid;grid-template-columns:62px 1fr;height:720px;overflow-y:auto;overflow-x:hidden}
.week-time-col{position:relative;background:#fbfdfe;border-right:1px solid #edf1f4}
.time-hour{height:60px;position:relative;border-bottom:1px solid #eef2f5}
.time-hour span{position:absolute;right:8px;top:-7px;font-size:12px;color:#61707b;background:#fbfdfe;padding-left:3px}
.week-days-grid{display:grid;grid-template-columns:repeat(7,minmax(105px,1fr));min-width:0}
.week-day-col{height:720px;position:relative;border-right:1px solid #edf1f4;background:#fff;overflow:hidden}
.week-day-col:last-child{border-right:0}.week-day-col.today{background:linear-gradient(180deg,rgba(234,244,251,.45),rgba(255,255,255,.6))}
.slot-grid{position:absolute;inset:0;display:grid;grid-template-rows:repeat(24,30px);z-index:1}
.calendar-slot{border:0;border-bottom:1px solid #f1f4f6;background:transparent;cursor:crosshair;position:relative;padding:0}
.calendar-slot:nth-child(odd){border-bottom-style:dashed;border-bottom-color:#f4f6f8}
.calendar-slot:hover{background:rgba(56,115,158,.06)}
.calendar-slot:hover::after{content:"+";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid #d6e2eb;color:var(--brand);font-size:14.5px;box-shadow:0 5px 14px rgba(17,49,72,.09)}
.calendar-event{position:absolute;left:4px;right:4px;z-index:3;border:0;border-left:3px solid var(--event);background:var(--event-bg);border-radius:8px;padding:5px 6px;text-align:left;color:#24404f;overflow:hidden;cursor:pointer;box-shadow:0 3px 8px rgba(14,42,63,.08);transition:.15s ease}
.calendar-event:hover{transform:translateY(-1px);box-shadow:0 7px 18px rgba(14,42,63,.13);z-index:4}
.calendar-event b,.calendar-event span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-event b{font-size:12.5px;line-height:1.2}.calendar-event span{font-size:11.5px;color:#5c717c;margin-top:2px}
.now-line{position:absolute;left:0;right:0;height:1px;background:#d95050;z-index:5;pointer-events:none}.now-line span{position:absolute;left:-3px;top:-3px;width:7px;height:7px;border-radius:50%;background:#d95050}
.schedule-view{padding:6px 0 16px}.schedule-day{padding:12px 17px 6px;color:#61707b;font-size:12.5px;text-transform:none;letter-spacing:0;font-weight:800}.schedule-event{width:calc(100% - 24px);margin:4px 12px;border:1px solid var(--line);background:#fff;border-radius:12px;display:grid;grid-template-columns:60px 1fr;gap:12px;padding:11px 12px;text-align:left;cursor:pointer;transition:.15s}.schedule-event:hover{background:#f8fbfd;border-color:#d4e0e8}.schedule-event time{font-size:13.5px;font-weight:800;color:var(--brand)}.schedule-event b,.schedule-event small{display:block}.schedule-event b{font-size:13.5px}.schedule-event small{font-size:12.5px;color:#61707a;margin-top:4px}
.calendar-empty{min-height:320px;display:grid;place-content:center;text-align:center;color:#61707a}.calendar-empty b{font-size:14.5px}.calendar-empty span{font-size:13px;margin-top:5px}
.month-calendar{padding:0}.month-weekdays{display:grid;grid-template-columns:repeat(7,1fr);background:#f8fafc;border-bottom:1px solid var(--line)}.month-weekdays div{padding:9px;text-align:center;font-size:12px;color:#616e78;text-transform:none;font-weight:800;letter-spacing:0;border-right:1px solid #edf1f4}.month-weekdays div:last-child{border-right:0}.month-grid{display:grid;grid-template-columns:repeat(7,1fr)}
.month-day{min-height:116px;border:0;border-right:1px solid #edf1f4;border-bottom:1px solid #edf1f4;background:#fff;text-align:left;padding:7px;cursor:pointer;overflow:hidden}.month-day:nth-child(7n){border-right:0}.month-day:hover{background:#f9fbfd}.month-day.muted{background:#fafbfc;color:#aeb8bf}.month-day.today .month-number{background:var(--brand);color:#fff}.month-number{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;font-size:12.5px;font-weight:800}.month-events{display:grid;gap:3px;margin-top:5px}.month-event{font-style:normal;display:block;padding:3px 5px;border-radius:5px;background:var(--event-bg);border-left:2px solid var(--event);font-size:11.5px;color:#48606e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.month-more{font-style:normal;font-size:11.5px;color:#606f79;padding-left:4px}
.modal-backdrop{position:fixed;inset:0;background:rgba(7,26,40,.42);backdrop-filter:blur(4px);display:flex;align-items:flex-start;justify-content:flex-end;z-index:120;padding:0}
.event-modal{height:100vh;width:min(560px,96vw);background:#fff;box-shadow:-25px 0 70px rgba(5,26,42,.22);overflow-y:auto;animation:slideIn .2s ease both}
@keyframes slideIn{from{transform:translateX(24px);opacity:.5}to{transform:none;opacity:1}}
.event-modal-head{min-height:74px;padding:16px 18px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);z-index:2}.event-modal-head small{display:block;font-size:12px;color:#616f79;text-transform:none;letter-spacing:0;font-weight:800}.event-modal-head h2{margin:3px 0 0;font-size:20px;letter-spacing:-.035em}.event-modal form{padding:18px;display:grid;gap:13px}.field{display:grid;gap:6px}.field>span{font-size:12px;color:#61707a;text-transform:none;letter-spacing:0;font-weight:800}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:11px;background:#fff;padding:10px 11px;color:var(--ink);outline:none;transition:.15s}.field input:focus,.field select:focus,.field textarea:focus{border-color:#abc1d1;box-shadow:0 0 0 4px rgba(12,55,92,.055)}.field small{font-size:12px;color:#606e77;line-height:1.45}.event-datetime-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.participant-picker{border:1px solid var(--line);border-radius:12px;max-height:215px;overflow:auto;padding:5px;background:#fbfdfe}.participant-option{display:grid;grid-template-columns:18px 31px minmax(0,1fr) auto;gap:8px;align-items:center;padding:7px;border-radius:9px;cursor:pointer}.participant-option:hover{background:#f1f6f9}.participant-option input{width:15px;height:15px;margin:0;accent-color:var(--brand)}.mini-avatar{width:31px;height:31px;border-radius:50%;background:#e2ebf1;color:#42637a;display:grid;place-items:center;font-size:12px;font-weight:800}.participant-option b,.participant-option small{display:block}.participant-option b{font-size:12.5px}.participant-option small{font-size:11.5px;color:#627079;margin-top:2px}.busy-mark{display:none;font-style:normal;font-size:11.5px;color:#b84d4d;background:#fff0f0;border-radius:999px;padding:3px 6px}.participant-option.is-busy .busy-mark{display:inline-flex}.participant-option.is-busy{background:#fff9f9}.availability-line{margin-top:6px;padding:8px 9px;background:#f4f8fa;border-radius:9px;color:#5d6e79;font-size:12px}.availability-line.warning{background:#fff5e8;color:#956821}.availability-line.good{background:#eaf8f1;color:#277e55}
.event-place-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.event-place-tabs label{cursor:pointer}.event-place-tabs input{display:none}.event-place-tabs span{height:36px;border:1px solid var(--line);border-radius:10px;display:flex;align-items:center;justify-content:center;text-align:center;padding:0 6px;font-size:12px;font-weight:700;color:#5d6f7a;background:#fff}.event-place-tabs input:checked+span{background:#edf5fa;border-color:#c9dbe8;color:var(--brand);box-shadow:inset 0 0 0 1px rgba(12,55,92,.03)}
.event-modal-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:4px}.event-preview{position:fixed;z-index:130;width:min(340px,calc(100vw - 30px));right:24px;top:92px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px;box-shadow:var(--shadow-lg)}.event-preview small{display:block;color:#5f6e79;font-size:12.5px;font-weight:800}.event-preview h3{margin:6px 24px 10px 0;font-size:16px}.event-preview div{font-size:12.5px;color:#5d707c;margin:6px 0}.event-preview p{font-size:12.5px;line-height:1.5;color:#606f77;margin:10px 0 0}.preview-close{position:absolute;right:9px;top:8px;width:29px;height:29px;border:0;border-radius:9px;background:#f2f6f8;color:#5e6f7b;cursor:pointer;font-size:17px}
@media(max-width:1100px){.calendar-layout{grid-template-columns:200px minmax(0,1fr)}.calendar-sidebar{position:static}.calendar-toolbar{align-items:flex-start}.calendar-view-switch a{padding:0 9px}}
@media(max-width:850px){.calendar-layout{grid-template-columns:1fr}.calendar-sidebar{display:none}.calendar-main{overflow-x:auto}.calendar-toolbar{flex-wrap:wrap}.week-calendar{min-width:780px}.calendar-topline p{max-width:600px}}
@media(max-width:620px){.calendar-topline{display:block}.calendar-create{margin-top:12px}.calendar-toolbar{display:block}.calendar-nav{flex-wrap:wrap}.calendar-nav strong{width:100%;margin:4px 0}.calendar-view-switch{margin-top:8px;width:max-content}.event-datetime-grid{grid-template-columns:1fr}.event-place-tabs{grid-template-columns:1fr 1fr}.event-modal{width:100vw}.month-day{min-height:92px;padding:4px}.month-event{font-size:10.5px}.calendar-topline h1{font-size:27px}}

/* Admin employee management */
.admin-users-grid{align-items:start}
.employee-admin-card{min-height:100%}
.admin-employee-list{max-height:620px;overflow:auto}
.admin-employee-row{grid-template-columns:42px 1fr auto!important;padding:12px 16px!important;transition:.16s ease}
.admin-employee-row:hover{background:#f8fbfd}
.admin-employee-row.dismissed{opacity:.58;background:#fbfbfc}
.employee-main{min-width:0}.employee-main b{font-size:13.5px!important}.employee-main small{font-size:12.5px!important}.employee-main em{font-style:normal}
.user-status{display:inline-flex;margin-top:6px;padding:3px 7px;border-radius:999px;font-size:11.5px;font-weight:800;text-transform:none;letter-spacing:0}
.status-active{background:#e9f7ef;color:#267d55}.status-blocked{background:#fff6e7;color:#93621d}.status-dismissed{background:#f0f2f4;color:#626e76}
.admin-edit-btn{min-height:34px;font-size:12.5px;padding:0 10px}
.password-inline{display:grid;grid-template-columns:1fr 38px;gap:7px;align-items:center}.password-inline input{min-width:0}
.temp-password-card{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;background:linear-gradient(135deg,#0c375c,#174d79);color:#fff;border-radius:16px;padding:14px 16px;margin-bottom:14px;box-shadow:0 16px 36px rgba(12,55,92,.18)}
.temp-password-card small,.temp-password-card b{display:block}.temp-password-card small{font-size:12px;text-transform:none;letter-spacing:0;color:#bdd0df}.temp-password-card b{font-size:13.5px;margin-top:4px}.temp-password-card code{font-size:15.5px;font-weight:800;background:rgba(255,255,255,.1);padding:8px 11px;border-radius:10px;letter-spacing:.06em}.temp-password-card .btn{background:#fff;border-color:#fff;color:#0c375c}
.admin-user-drawer{height:100vh;width:min(680px,96vw);background:#fff;box-shadow:-25px 0 70px rgba(5,26,42,.22);overflow-y:auto;animation:slideIn .2s ease both}
.admin-edit-form{padding:18px;display:grid;gap:14px;border-bottom:1px solid var(--line)}
.custom-permissions-box{border:1px solid var(--line);border-radius:14px;background:#f8fbfd;padding:13px}
.custom-permissions-switch{display:flex;align-items:flex-start;gap:10px;cursor:pointer}.custom-permissions-switch>input{margin-top:3px}.custom-permissions-switch b,.custom-permissions-switch small{display:block}.custom-permissions-switch b{font-size:13.5px}.custom-permissions-switch small{font-size:12px;color:#606f78;margin-top:3px;line-height:1.45}
.permission-checks{display:grid;grid-template-columns:1fr 1fr;gap:7px 10px;margin-top:12px}.permission-checks label{display:flex;align-items:center;gap:8px;font-size:12.5px;color:#526774;cursor:pointer}.permission-checks input{accent-color:#0c375c}.permission-checks input:disabled+span{opacity:.62}
.admin-danger-zone{padding:18px;display:grid;gap:12px;background:#fbfcfd}.admin-danger-zone>div:first-child b,.admin-danger-zone>div:first-child small{display:block}.admin-danger-zone>div:first-child b{font-size:13.5px}.admin-danger-zone>div:first-child small{font-size:12.5px;color:#606f78;margin-top:4px;line-height:1.5}
.password-reset-form{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center}.password-reset-form .password-inline{min-width:0}.admin-user-actions{display:flex;gap:8px;flex-wrap:wrap}.admin-user-actions form{margin:0}.admin-user-actions .btn:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}
.role-permission-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:14px}.role-permission-card{border:1px solid var(--line);border-radius:16px;background:#fbfdfe;padding:14px;display:flex;flex-direction:column;gap:10px}.role-permission-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.role-permission-head b,.role-permission-head small{display:block}.role-permission-head b{font-size:13.5px}.role-permission-head small{font-size:12px;color:#616e77;margin-top:3px}.role-permission-card>.permission-checks{grid-template-columns:1fr}.role-permission-card>.btn{margin-top:auto}
#roles .card-head span{font-size:12px;color:#627079;font-weight:500;max-width:560px;text-align:right;line-height:1.4}
@media(max-width:1150px){.role-permission-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.temp-password-card{grid-template-columns:1fr}.permission-checks{grid-template-columns:1fr}.role-permission-grid{grid-template-columns:1fr}.password-reset-form{grid-template-columns:1fr}.admin-employee-row{grid-template-columns:40px 1fr!important}.admin-edit-btn{grid-column:1/-1;margin-left:50px}.admin-user-drawer{width:100vw}.admin-user-actions{display:grid}.admin-user-actions form,.admin-user-actions .btn{width:100%}}


/* v1.2.0 — messenger UX and robust admin employee drawer */
.messenger-page{min-height:calc(100vh - 120px)}
.chat-side{display:flex;flex-direction:column;min-width:0}
.chat-side-head{min-height:70px;padding:13px 12px 10px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line);background:#fff}
.chat-side-head small{display:block;color:#61707b;font-size:12px;text-transform:none;letter-spacing:0;font-weight:800}
.chat-side-head h3{margin:3px 0 0;font-size:17px;letter-spacing:-.03em}
.chat-new-button{width:38px;height:38px}
.chat-search-wrap{margin:10px 10px 8px;height:40px;border:1px solid var(--line);border-radius:12px;background:#fff;display:flex;align-items:center;gap:8px;padding:0 11px;color:#60707b;box-shadow:0 2px 8px rgba(14,42,63,.025)}
.chat-search-wrap input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:var(--ink);font-size:13px}
.chat-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:0 10px 8px}
.chat-tabs button{height:34px;border:0;border-radius:10px;background:transparent;color:#61707a;font-weight:700;font-size:12.5px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px}
.chat-tabs button span{min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#eef3f6;display:inline-flex;align-items:center;justify-content:center;font-size:11.5px}
.chat-tabs button.active{background:#eaf2f8;color:var(--brand)}
.chat-tabs button.active span{background:#fff;color:var(--brand)}
.chat-tab-panel{overflow:auto;min-height:0;flex:1;padding-bottom:8px}
.chat-link{display:grid;grid-template-columns:40px minmax(0,1fr);gap:9px;align-items:center}
.chat-link-main{min-width:0}
.chat-link-title{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}
.chat-link-title b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chat-link-title time{font-size:11.5px;color:#61707a;flex:0 0 auto}
.chat-link-main>small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.chat-person-row{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:9px;align-items:center;padding:9px 10px;margin:4px 8px;border-radius:12px}
.chat-person-row:hover{background:#f1f6f9}
.chat-person-row form{margin:0}
.chat-person-main{min-width:0}
.chat-person-main b,.chat-person-main small{display:block}
.chat-person-main b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chat-person-main small{font-size:12px;color:var(--muted);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chat-empty-side{padding:24px 16px;text-align:center;color:#606f78}
.chat-empty-side b,.chat-empty-side span{display:block}
.chat-empty-side b{font-size:13px;color:#506574}
.chat-empty-side span{font-size:12px;margin-top:4px;line-height:1.5}
.chat-header{display:flex!important;align-items:center;justify-content:space-between;gap:12px}
.chat-header-person{display:flex;align-items:center;gap:9px;min-width:0}
.chat-header-person h3{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chat-header-members{display:flex;align-items:center}
.chat-header-members .mini-avatar{margin-left:-6px;border:2px solid #fff}
.chat-header-members .mini-avatar:first-child{margin-left:0}
.chat-header-members em{font-style:normal;font-size:12px;color:#617079;margin-left:5px}
.messages-loading{color:#606e78;font-size:12.5px;text-align:center;padding:20px}
.messages .messages-loading:not(:only-child){display:none}
.chat-empty-main{display:grid!important;place-items:center;background:linear-gradient(180deg,#fff,#f8fbfd)}
.chat-empty-state{text-align:center;max-width:360px;padding:30px}
.chat-empty-state>.ui-icon{width:46px;height:46px;color:#547086;background:#eef4f8;border-radius:15px;padding:11px}
.chat-empty-state h3{font-size:18px;margin:14px 0 6px}
.chat-empty-state p{font-size:13px;color:#616e78;line-height:1.6;margin:0 0 16px}
.new-chat-form{padding:18px;display:grid;gap:13px}
.member-search{height:40px;border:1px solid var(--line);border-radius:11px;background:#fff;display:flex;align-items:center;gap:8px;padding:0 10px;color:#5f6f7a}
.member-search input{flex:1;min-width:0;border:0!important;box-shadow:none!important;padding:0!important}
.group-member-picker{border:1px solid var(--line);border-radius:13px;background:#fbfdfe;max-height:360px;overflow:auto;padding:5px}
.group-member-option{display:grid;grid-template-columns:18px 32px minmax(0,1fr);gap:8px;align-items:center;padding:8px;border-radius:9px;cursor:pointer}
.group-member-option:hover{background:#eef5f9}
.group-member-option>input{width:15px;height:15px;margin:0;accent-color:var(--brand)}
.group-member-option b,.group-member-option small{display:block}
.group-member-option b{font-size:12.5px}.group-member-option small{font-size:11.5px;color:#617079;margin-top:3px}
.admin-edit-btn{display:inline-flex}
.admin-user-drawer .preview-close{display:grid;place-items:center;text-decoration:none}
@media(max-width:850px){
  .messenger-layout{grid-template-columns:250px 1fr}
}
@media(max-width:620px){
  .messenger-layout{display:block;height:auto}
  .chat-side{max-height:330px;border-right:0;border-bottom:1px solid var(--line)}
  .chat-panel{min-height:580px}
  .chat-header-members{display:none}
}

/* v1.3.0 — employee photos + messenger files + unread notifications */
.avatar-photo{overflow:hidden;background:#dbe6ee}
.avatar-photo img{width:100%;height:100%;object-fit:cover;display:block}
.profile-avatar-link{display:inline-grid;border-radius:50%}
.nav-item{position:relative}
.nav-badge{margin-left:auto;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#fff;color:var(--brand);font-size:12px;font-style:normal;font-weight:900;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(0,0,0,.16)}
.notification-toggle.enabled{background:#e8f6ee!important;color:#27875a!important;border-color:#cae8d8!important}
.chat-head-actions{display:flex;gap:6px}
.chat-link-bottom{display:flex;align-items:center;gap:7px;min-width:0}
.chat-link-bottom>small{min-width:0;flex:1}
.chat-unread-badge{min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--brand);color:#fff;font-size:12px;font-style:normal;font-weight:900;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}
.message-avatar{width:30px;height:30px;border-radius:50%;background:#e2ebf1;color:#42637a;display:grid;place-items:center;font-size:11.5px;font-weight:900;flex:0 0 auto;overflow:hidden;margin-top:4px}
.message-avatar img{width:100%;height:100%;object-fit:cover}
.msg-row{display:flex;align-items:flex-start;gap:8px;margin:8px 0}
.msg-row.mine{justify-content:flex-end}
.msg-row .msg{margin:0;max-width:min(72%,620px)}
.msg-body{line-height:1.55;word-break:break-word}
.msg-attachments{display:grid;gap:7px;margin-top:8px}
.msg-image{display:block;border-radius:11px;overflow:hidden;border:1px solid #e1e8ed;background:#f5f8fa;max-width:330px;color:#5d6f7d}
.msg-image img{width:100%;max-height:260px;object-fit:cover;background:#edf2f5}
.msg-image span{display:block;padding:6px 8px;font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.msg-file{display:grid;grid-template-columns:34px minmax(0,1fr) 22px;align-items:center;gap:8px;min-width:230px;max-width:390px;padding:8px 9px;border:1px solid #dfe7ec;border-radius:11px;background:#f8fbfd;color:#405766;transition:.15s}
.msg-file:hover{background:#fff;border-color:#c8d5de;box-shadow:0 8px 20px rgba(14,42,63,.07)}
.msg-file-icon{width:34px;height:34px;border-radius:9px;background:#eaf2f8;display:grid;place-items:center;font-size:16px}
.msg-file-copy{min-width:0}.msg-file-copy b,.msg-file-copy small{display:block}.msg-file-copy b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.msg-file-copy small{font-size:11.5px;color:#606e77;margin-top:2px}.msg-file-download{font-size:18px;color:#5d707d;text-align:center}
.composer{display:block;padding:10px 11px 9px;transition:.15s;position:relative}
.composer.dragging{background:#eef6fb;box-shadow:inset 0 0 0 2px #9abbd0}
.composer-row{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:8px;align-items:end}
.composer-row textarea{min-height:42px;max-height:140px;line-height:1.45;resize:none;overflow-y:auto}
.attachment-button{width:40px;height:40px;margin-bottom:1px}
.send-message-button{min-height:40px;white-space:nowrap}
.composer-hint{display:block;margin:6px 48px 0;color:#606e77;font-size:11.5px}
.file-preview{display:flex;gap:6px;flex-wrap:wrap;padding:0 0 8px 48px}
.file-preview-chip{max-width:250px;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:8px;align-items:center;background:#eef4f8;border:1px solid #dfe9ef;border-radius:10px;padding:6px 7px 6px 9px}
.file-preview-chip b{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-preview-chip small{font-size:10.5px;color:#616f79}.file-preview-chip button{grid-column:2;grid-row:1/3;border:0;background:transparent;color:#606e77;font-size:16px;cursor:pointer;padding:0 3px}
.message-send-error{margin:7px 48px 0;padding:7px 9px;border-radius:9px;background:#fff0f0;color:#b84848;font-size:12px}
.chat-toast-stack{position:fixed;right:18px;top:86px;z-index:300;display:grid;gap:8px;width:min(350px,calc(100vw - 28px));pointer-events:none}
.chat-toast{pointer-events:auto;display:grid;background:#fff;border:1px solid var(--line);border-left:4px solid var(--brand);border-radius:14px;padding:11px 12px;box-shadow:0 18px 45px rgba(7,31,49,.18);transform:translateX(18px);opacity:0;transition:.22s ease}
.chat-toast.show{transform:none;opacity:1}.chat-toast b{font-size:13px}.chat-toast small{font-size:11.5px;color:var(--brand);font-weight:800;margin-top:2px}.chat-toast span{font-size:12px;color:#687b87;margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.employee-photo-editor{display:grid;grid-template-columns:104px 1fr;gap:16px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(180deg,#fbfdfe,#f6f9fb)}
.employee-photo-preview{width:104px;height:104px}
.employee-edit-avatar{width:104px;height:104px;border-radius:24px;background:#dfe8ee;color:#3f6279;display:grid;place-items:center;font-size:25px;font-weight:900;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(12,55,92,.05)}
.employee-edit-avatar img{width:100%;height:100%;object-fit:cover}
.employee-photo-editor>div:last-child b,.employee-photo-editor>div:last-child small{display:block}.employee-photo-editor>div:last-child b{font-size:13.5px}.employee-photo-editor>div:last-child small{font-size:12px;color:#606f78;margin:4px 0 10px}.upload-avatar-button{width:max-content;cursor:pointer}.remove-avatar-check{display:flex!important;align-items:center;gap:7px;margin-top:9px!important;font-size:12px!important;color:#7b8b95!important;text-transform:none!important;letter-spacing:0!important;font-weight:600!important}.remove-avatar-check input{width:auto!important}
.mini-avatar.avatar-photo{overflow:hidden}.mini-avatar.avatar-photo img{width:100%;height:100%;object-fit:cover}
@media(max-width:620px){.composer-row{grid-template-columns:38px minmax(0,1fr)}.send-message-button{grid-column:1/-1}.composer-hint,.message-send-error{margin-left:0}.file-preview{padding-left:0}.employee-photo-editor{grid-template-columns:78px 1fr}.employee-photo-preview,.employee-edit-avatar{width:78px;height:78px}.chat-toast-stack{right:10px;top:78px}}


/* v1.4.0 — advanced messenger */
.chat-header-right{display:flex;align-items:center;gap:9px}
.pinned-banner{width:100%;min-height:48px;border:0;border-bottom:1px solid #dce7ef;background:linear-gradient(90deg,#eef6fb,#f9fcfe);display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:9px;align-items:center;padding:8px 14px;text-align:left;color:var(--ink);cursor:pointer}
.pinned-banner:hover{background:#e9f3f9}
.pinned-banner .pin-icon{font-size:15.5px}
.pinned-banner b,.pinned-banner small{display:block}.pinned-banner b{font-size:12.5px}.pinned-banner small{font-size:12px;color:#5f6f79;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pinned-banner em{font-style:normal;font-size:12px;color:var(--brand);font-weight:800}
.reply-composer{margin:0 0 7px 48px;border-left:3px solid var(--brand-2);background:#eef5fa;border-radius:8px;padding:7px 9px;display:flex;align-items:center;justify-content:space-between;gap:8px}
.reply-composer span{min-width:0}.reply-composer b,.reply-composer small{display:block}.reply-composer b{font-size:12px;color:var(--brand)}.reply-composer small{font-size:12px;color:#5f6e78;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.reply-composer button{border:0;background:transparent;color:#606f78;font-size:17px;cursor:pointer}
.message-reply-quote{width:100%;border:0;border-left:3px solid #8eacc1;background:rgba(12,55,92,.045);border-radius:6px;padding:6px 8px;margin-bottom:7px;text-align:left;cursor:pointer;color:#5c7180}.message-reply-quote:hover{background:rgba(12,55,92,.075)}.message-reply-quote b,.message-reply-quote span{display:block}.message-reply-quote b{font-size:12px;color:var(--brand)}.message-reply-quote span{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}
.msg{position:relative}
.message-actions{position:absolute;top:-30px;right:2px;display:flex;align-items:center;gap:2px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:3px;box-shadow:0 8px 22px rgba(14,42,63,.10);opacity:0;pointer-events:none;transform:translateY(3px);transition:.14s;z-index:4}
.msg-row:not(.mine) .message-actions{left:2px;right:auto}
.msg-row:hover .message-actions,.message-actions:focus-within{opacity:1;pointer-events:auto;transform:none}
.message-actions>button{width:27px;height:27px;border:0;border-radius:7px;background:transparent;color:#5d707d;display:grid;place-items:center;cursor:pointer;font-size:14px}.message-actions>button:hover{background:#eef4f8;color:var(--brand)}
.reaction-picker{position:absolute;bottom:34px;right:0;display:flex;gap:2px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:4px;box-shadow:0 12px 28px rgba(14,42,63,.14);white-space:nowrap}.msg-row:not(.mine) .reaction-picker{left:0;right:auto}.reaction-picker button{width:30px;height:30px;border:0;background:transparent;border-radius:50%;cursor:pointer;font-size:16px}.reaction-picker button:hover{background:#eef4f8;transform:scale(1.08)}
.message-reactions{display:flex;gap:4px;flex-wrap:wrap;margin-top:6px}
.reaction-chip{height:25px;border:1px solid #dfe8ee;border-radius:999px;background:#f7fafc;padding:0 7px;display:inline-flex;align-items:center;gap:4px;cursor:pointer}.reaction-chip:hover,.reaction-chip.mine{border-color:#b9d0df;background:#eaf4fa}.reaction-chip span{font-size:13.5px}.reaction-chip b{font-size:12px;color:#5d7280}
.pinned-mark{display:inline-flex;margin-left:6px;padding:2px 5px;border-radius:999px;background:#fff4d8;color:#8b6a20;font-size:10.5px;text-transform:none;letter-spacing:0;vertical-align:middle}
.msg-meta{display:flex;justify-content:flex-end;align-items:center;gap:5px}.msg-deleted{color:#616e76;font-style:italic;font-size:12.5px;padding:2px 0}.msg-row.deleted{opacity:.8}
.message-highlight .msg{animation:messageFlash 1.8s ease}
@keyframes messageFlash{0%,100%{box-shadow:0 6px 18px rgba(14,42,63,.04)}20%{box-shadow:0 0 0 4px rgba(40,120,180,.16),0 12px 30px rgba(14,42,63,.12)}}
.center-modal-backdrop{position:fixed;inset:0;z-index:140;background:rgba(7,26,40,.48);backdrop-filter:blur(5px);display:grid;place-items:center;padding:20px}
.center-modal-card{width:min(540px,96vw);background:#fff;border-radius:20px;box-shadow:0 30px 80px rgba(5,26,42,.28);padding:16px;display:grid;gap:13px}
.center-modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.center-modal-head small{font-size:11.5px;color:#5f6e79;text-transform:none;letter-spacing:0;font-weight:800}.center-modal-head h3{margin:3px 0 0;font-size:18px}.center-modal-head button{width:34px;height:34px;border:0;border-radius:10px;background:#f2f6f8;color:#5e7280;font-size:18px;cursor:pointer}
.center-modal-card>textarea{width:100%;border:1px solid var(--line);border-radius:12px;padding:11px;resize:vertical;outline:0}.center-modal-card>textarea:focus{border-color:#abc1d1;box-shadow:0 0 0 4px rgba(12,55,92,.055)}
.center-modal-actions{display:flex;justify-content:flex-end;gap:8px}.task-from-message-card{width:min(620px,96vw)}
.task-message-source{border-left:3px solid #a1bacb;background:#f4f8fa;border-radius:8px;padding:9px 10px;color:#5d6e79;font-size:12px;line-height:1.5;max-height:100px;overflow:auto}
.chat-toast{position:fixed;right:24px;bottom:24px;z-index:180;background:#0c375c;color:#fff;border-radius:14px;padding:12px 14px;box-shadow:0 18px 45px rgba(8,33,55,.28);font-size:12.5px}.chat-toast a{color:#d5e9f6;font-weight:800;margin-left:8px}
.group-manage-modal .group-member-picker{max-height:430px}
@media(max-width:620px){
  .message-actions{opacity:1;pointer-events:auto;position:static;margin-top:6px;display:flex;width:max-content;box-shadow:none;background:transparent;border:0;padding:0;transform:none}
  .reaction-picker{bottom:35px}
  .reply-composer{margin-left:0}
  .pinned-banner em{display:none}
}


/* v1.5.0 — presence, read states, forwarding, search and chat info */
.messenger-layout.info-hidden{grid-template-columns:290px minmax(0,1fr)}
.messenger-layout.info-hidden .chat-info-panel{display:none}
.chat-empty-main{grid-column:2/-1}
.chat-avatar-wrap{position:relative;display:inline-grid;place-items:center;flex:0 0 auto}
.online-dot{position:absolute;right:0;bottom:1px;width:10px;height:10px;border-radius:50%;background:#2eaa70;border:2px solid #fff;box-shadow:0 0 0 1px rgba(46,170,112,.12)}
.chat-avatar-wrap.is-online::after{content:"";position:absolute;right:0;bottom:1px;width:10px;height:10px;border-radius:50%;background:#2eaa70;border:2px solid #fff}
.typing-indicator{min-height:27px;padding:6px 16px 5px 62px;border-top:1px solid #eef2f5;background:#fbfdfe;color:#5f7079;font-size:12px;font-style:italic}
.forwarded-label{display:inline-flex;align-items:center;gap:4px;margin-bottom:6px;color:#527087;font-size:11.5px;font-weight:800;text-transform:none;letter-spacing:0}
.read-state{display:inline-flex;align-items:center;color:#606f79;font-size:12.5px;font-weight:800;margin-left:5px}.read-state.read{color:#2b82b9}.read-state i{font-style:normal;font-size:10.5px;margin-left:3px}
.chat-info-panel{border-left:1px solid var(--line);background:#fbfdfe;overflow:auto;min-width:0}
.chat-info-head{min-height:69px;padding:13px 14px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:10px;background:#fff;position:sticky;top:0;z-index:4}.chat-info-head small,.chat-info-head b{display:block}.chat-info-head small{font-size:11.5px;text-transform:none;letter-spacing:0;color:#5f6e77;font-weight:800}.chat-info-head b{font-size:14px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}.chat-info-head button{width:32px;height:32px;border:0;border-radius:9px;background:#f1f5f7;color:#5a6e79;font-size:18px;cursor:pointer}
.chat-info-section{padding:12px 12px 13px;border-bottom:1px solid #e9eff3}
.chat-info-search{height:38px;border:1px solid var(--line);border-radius:11px;background:#fff;display:flex;align-items:center;gap:7px;padding:0 9px;color:#5f707b}.chat-info-search input{min-width:0;flex:1;border:0;outline:0;background:transparent;font-size:12.5px;color:var(--ink)}
.chat-info-title{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.chat-info-title b{font-size:12.5px}.chat-info-title span{min-width:20px;height:20px;border-radius:999px;background:#edf3f6;color:#5d6f7a;display:inline-flex;align-items:center;justify-content:center;font-size:11.5px;font-weight:800}
.chat-info-members,.chat-info-files,.chat-info-pins{display:grid;gap:4px}
.info-member{display:grid;grid-template-columns:32px minmax(0,1fr) 8px;gap:8px;align-items:center;padding:7px;border-radius:10px}.info-member:hover{background:#f0f5f8}.info-member>span:nth-child(2){min-width:0}.info-member b,.info-member small,.info-member em{display:block}.info-member b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.info-member small{font-size:11.5px;color:#5f6f78;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.info-member em{font-style:normal;font-size:10.5px;color:#606e77;margin-top:2px}.info-member>i{width:7px;height:7px;border-radius:50%;background:#c6d0d6}.info-member.online>i{background:#2eaa70;box-shadow:0 0 0 3px rgba(46,170,112,.11)}
.info-file{display:grid;grid-template-columns:26px minmax(0,1fr);gap:7px;align-items:center;padding:7px;border-radius:9px}.info-file:hover{background:#eef5f9}.info-file>span:first-child{width:26px;height:26px;border-radius:8px;background:#eaf1f6;display:grid;place-items:center;font-size:13.5px}.info-file b,.info-file small{display:block}.info-file b{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.info-file small{font-size:10.5px;color:#606e78;margin-top:2px}
.info-pin{border:0;background:transparent;text-align:left;padding:7px;border-radius:9px;cursor:pointer}.info-pin:hover{background:#eef5f9}.info-pin b,.info-pin span{display:block}.info-pin b{font-size:11.5px;color:var(--brand)}.info-pin span{font-size:11.5px;color:#5e6f7a;margin-top:2px;line-height:1.4}
.info-empty,.info-loading{padding:12px 7px;color:#5f6e77;font-size:11.5px;line-height:1.5}
.inside-chat-results{margin-top:7px;border:1px solid var(--line);border-radius:10px;background:#fff;max-height:260px;overflow:auto}.inside-chat-results>button{width:100%;border:0;border-bottom:1px solid #eef2f4;background:#fff;text-align:left;padding:8px;cursor:pointer}.inside-chat-results>button:last-child{border-bottom:0}.inside-chat-results>button:hover{background:#f4f8fa}.inside-chat-results b,.inside-chat-results span,.inside-chat-results small{display:block}.inside-chat-results b{font-size:11.5px;color:var(--brand)}.inside-chat-results span{font-size:11.5px;color:#536a78;line-height:1.4;margin:2px 0}.inside-chat-results small{font-size:10.5px;color:#616e77}
.forward-chat-list{border:1px solid var(--line);border-radius:13px;background:#fbfdfe;max-height:340px;overflow:auto;padding:5px}.forward-chat-option{display:grid;grid-template-columns:18px 32px minmax(0,1fr);gap:8px;align-items:center;padding:8px;border-radius:9px;cursor:pointer}.forward-chat-option:hover{background:#eef5f9}.forward-chat-option input{accent-color:var(--brand)}.forward-chat-option b,.forward-chat-option small{display:block}.forward-chat-option b{font-size:12.5px}.forward-chat-option small{font-size:11.5px;color:#617079;margin-top:2px}
@media(max-width:1200px){
  .messenger-layout{grid-template-columns:260px minmax(0,1fr)}
  .chat-info-panel{display:none}
}
@media(max-width:620px){
  .messenger-layout,.messenger-layout.info-hidden{display:block}
  .chat-info-panel{position:fixed;display:block;right:0;top:0;bottom:0;width:min(330px,92vw);z-index:150;box-shadow:-25px 0 70px rgba(5,26,42,.22);transform:translateX(0);transition:.2s}
  .messenger-layout.info-hidden .chat-info-panel{display:block;transform:translateX(105%)}
}


/* v1.5.1 — reaction picker hotfix */
.reaction-picker{display:none!important}
.global-reaction-picker{
  position:fixed;
  z-index:500;
  display:flex;
  align-items:center;
  gap:3px;
  width:max-content;
  min-width:0;
  height:46px;
  padding:5px 7px;
  background:#fff;
  border:1px solid #dce5eb;
  border-radius:999px;
  box-shadow:0 18px 44px rgba(7,31,49,.22);
  opacity:0;
  transform:translateY(-4px) scale(.97);
  transition:opacity .12s ease,transform .12s ease;
}
.global-reaction-picker.show{opacity:1;transform:none}
.global-reaction-picker button{
  width:34px;
  height:34px;
  padding:0;
  border:0;
  border-radius:50%;
  background:transparent;
  display:grid;
  place-items:center;
  font-size:19px;
  line-height:1;
  cursor:pointer;
  transition:background .12s ease,transform .12s ease;
}
.global-reaction-picker button:hover{
  background:#eef5f9;
  transform:scale(1.13);
}


/* v1.6.0 — Tasks Pro */
.tasks-page{min-height:calc(100vh - 120px)}
.tasks-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:16px}
.tasks-topline .eyebrow{font-size:12px;color:#5f6e78;text-transform:none;letter-spacing:0;font-weight:800}
.tasks-topline h1{font-size:30px;letter-spacing:-.045em;margin:5px 0 5px}.tasks-topline p{margin:0;color:var(--muted);font-size:13.5px}
.task-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:12px}
.task-stats article{background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px 15px;box-shadow:var(--shadow-sm)}
.task-stats small,.task-stats span{display:block}.task-stats small{font-size:11.5px;color:#606f79;text-transform:none;letter-spacing:0;font-weight:800}.task-stats strong{display:block;font-size:26px;letter-spacing:-.05em;margin:6px 0 2px}.task-stats span{font-size:12px;color:#626f79}.task-stats .danger-stat{border-color:#efd8d8;background:linear-gradient(180deg,#fff,#fff8f8)}.task-stats .danger-stat strong{color:var(--red)}
.task-toolbar{padding:10px;margin-bottom:12px;display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center}
.task-scope-tabs,.task-view-switch{display:flex;align-items:center;gap:4px;background:#f3f7f9;border-radius:11px;padding:3px}
.task-scope-tabs a,.task-view-switch a{height:31px;padding:0 10px;border-radius:8px;display:flex;align-items:center;color:#5f707b;font-size:12px;font-weight:800;white-space:nowrap}.task-scope-tabs a.active,.task-view-switch a.active{background:#fff;color:var(--brand);box-shadow:0 4px 12px rgba(12,55,92,.08)}
.task-filters{display:flex;align-items:center;gap:6px;min-width:0}.task-filters select{height:37px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:0 9px;color:#566b79;font-size:12px;min-width:105px}.task-search{height:37px;border:1px solid var(--line);border-radius:10px;background:#fff;display:flex;align-items:center;gap:6px;padding:0 9px;color:#5f6f7a;min-width:150px;flex:1}.task-search input{border:0;outline:0;background:transparent;min-width:0;width:100%;font-size:12.5px}
.task-kanban{display:grid;grid-template-columns:repeat(4,minmax(220px,1fr));gap:10px;align-items:start}
.kanban-column{background:#edf3f6;border:1px solid #dfe8ed;border-radius:17px;min-height:510px;overflow:hidden;transition:.15s}
.kanban-column.drag-over{border-color:#9cbcd1;background:#e8f2f8;box-shadow:0 0 0 3px rgba(35,105,151,.08)}
.kanban-column>header{min-height:59px;padding:11px 12px;border-bottom:1px solid #dfe8ed;display:flex;align-items:center;justify-content:space-between}.kanban-column>header b,.kanban-column>header small{display:block}.kanban-column>header b{font-size:13px}.kanban-column>header small{font-size:11.5px;color:#606f79;margin-top:2px}.kanban-column>header>span{min-width:24px;height:24px;border-radius:999px;background:#fff;display:grid;place-items:center;font-size:12px;font-weight:800;color:#5d707d}
.kanban-dropzone{padding:8px;min-height:448px;display:grid;align-content:start;gap:7px}
.task-card{display:block;background:#fff;border:1px solid #e0e7ec;border-radius:14px;padding:11px 11px 9px;box-shadow:0 6px 16px rgba(14,42,63,.045);transition:.15s;cursor:pointer;position:relative}
.task-card:hover{transform:translateY(-1px);box-shadow:0 12px 24px rgba(14,42,63,.09);border-color:#cedae2}.task-card.dragging{opacity:.45;transform:rotate(1deg) scale(.98)}.task-card.overdue{border-color:#edcaca;background:#fffafa}
.task-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.priority-dot{width:8px;height:8px;border-radius:50%;background:#9db0bc;box-shadow:0 0 0 3px rgba(157,176,188,.12)}.priority-high .priority-dot{background:#dd9a35;box-shadow:0 0 0 3px rgba(221,154,53,.12)}.priority-critical .priority-dot{background:#d65454;box-shadow:0 0 0 3px rgba(214,84,84,.12)}.task-card-top em{font-style:normal;font-size:10.5px;color:#5d6f7c;background:#f0f5f8;border-radius:999px;padding:3px 6px;max-width:130px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.task-card h3{font-size:13px;line-height:1.45;margin:8px 0 6px;letter-spacing:-.01em}.parent-task{display:block;color:#616f79;font-size:11.5px;margin:-2px 0 7px}
.task-card-meta{display:grid;gap:6px;margin-top:8px}.task-card-meta>span{display:flex;align-items:center;gap:6px;color:#5d6e79;font-size:11.5px;min-width:0}.task-card-meta .mini-avatar{width:22px;height:22px;font-size:10.5px}.task-card-meta>span:last-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-card-meta .danger{color:var(--red)!important;font-weight:800}
.task-card-footer{display:flex;align-items:center;gap:8px;margin-top:9px;padding-top:7px;border-top:1px solid #eff3f5;color:#606f78;font-size:11.5px}.kanban-empty{padding:24px 8px;text-align:center;color:#626f78;font-size:11.5px;border:1px dashed #ced9df;border-radius:12px}
.task-list-card{overflow:hidden}.task-list-head,.task-list-row{display:grid;grid-template-columns:minmax(260px,2fr) minmax(150px,1fr) 115px 95px 105px;gap:12px;align-items:center}.task-list-head{padding:9px 13px;background:#f6f9fb;border-bottom:1px solid var(--line);color:#606e78;text-transform:none;letter-spacing:0;font-size:10.5px;font-weight:800}.task-list-row{padding:11px 13px;border-bottom:1px solid #edf2f5;transition:.12s}.task-list-row:hover{background:#f9fbfd}.task-list-row:last-child{border-bottom:0}.task-list-row b,.task-list-row small{display:block}.task-list-row b{font-size:12.5px}.task-list-row small{font-size:11.5px;color:#616e77;margin-top:3px}.task-list-row>div{font-size:12px;color:#5d707b}.task-person{display:flex;align-items:center;gap:7px}.task-person .mini-avatar{width:25px;height:25px;font-size:10.5px}.task-priority-label{display:inline-flex;padding:4px 7px;border-radius:999px;background:#f0f4f6;font-size:11.5px;font-weight:800}.task-priority-label.high{background:#fff4df;color:#9b6a20}.task-priority-label.critical{background:#fff0f0;color:#b64b4b}
.task-create-modal{width:min(670px,96vw)}.task-create-form{padding:18px;display:grid;gap:12px}.task-people-picker{border:1px solid var(--line);border-radius:12px;background:#fbfdfe;max-height:170px;overflow:auto;padding:5px;display:grid;grid-template-columns:1fr 1fr;gap:2px}.task-people-picker label{display:grid;grid-template-columns:16px 27px minmax(0,1fr);gap:7px;align-items:center;padding:6px;border-radius:8px;cursor:pointer}.task-people-picker label:hover{background:#eef5f9}.task-people-picker input{accent-color:var(--brand)}.task-people-picker .mini-avatar{width:27px;height:27px;font-size:10.5px}.task-people-picker span{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.task-drawer-backdrop{z-index:135}.task-drawer{height:100vh;width:min(1120px,98vw);background:#f6f9fb;box-shadow:-30px 0 80px rgba(5,26,42,.24);overflow:hidden;animation:slideIn .2s ease both;display:grid;grid-template-rows:auto 1fr}.task-drawer-head{min-height:78px;background:#fff;border-bottom:1px solid var(--line);padding:15px 18px;display:flex;align-items:center;justify-content:space-between;gap:18px}.task-drawer-head small{display:block;font-size:11.5px;color:#82929c;text-transform:none;letter-spacing:0;font-weight:800}.task-drawer-head h2{font-size:20px;margin:4px 0 0;letter-spacing:-.03em;line-height:1.2}.task-drawer-body{overflow:auto;padding:14px;display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:12px}.task-main-panel{display:grid;align-content:start;gap:11px}.task-side-panel{display:grid;align-content:start;gap:9px}
.task-edit-form,.task-detail-section,.task-side-card{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 6px 18px rgba(14,42,63,.035)}.task-edit-form{padding:14px;display:grid;gap:11px}.task-meta-strip{display:flex;gap:14px;flex-wrap:wrap;padding:9px 10px;background:#f6f9fb;border-radius:10px;color:#5f6f78;font-size:11.5px}.task-meta-strip a{color:var(--brand);font-weight:800}
.task-detail-section{padding:14px}.task-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.task-section-head b,.task-section-head small{display:block}.task-section-head b{font-size:13px}.task-section-head small{font-size:11.5px;color:#616f78;margin-top:2px}.task-section-head>span{font-size:12px;font-weight:800;color:var(--brand)}
.check-progress{height:5px;border-radius:999px;background:#edf2f5;overflow:hidden;margin-bottom:8px}.check-progress i{display:block;height:100%;background:linear-gradient(90deg,#276d9d,#44a476);border-radius:999px;transition:.2s}
.task-checklist{display:grid;gap:3px}.task-checklist label{display:flex;align-items:flex-start;gap:8px;padding:7px 8px;border-radius:9px;font-size:12px;cursor:pointer}.task-checklist label:hover{background:#f4f8fa}.task-checklist input{accent-color:#27865b;margin-top:1px}.task-checklist label.done span{text-decoration:line-through;color:#637076}.task-add-line{margin-top:8px}.task-empty-inline{padding:10px;border:1px dashed #d3dde3;border-radius:10px;color:#606f79;font-size:11.5px;text-align:center}
.subtask-list{display:grid;gap:4px}.subtask-list a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 8px;border-radius:9px}.subtask-list a:hover{background:#f4f8fa}.subtask-list b{font-size:12px}.subtask-list small{font-size:11.5px;color:#606e78}.task-subtask-form{display:grid;grid-template-columns:minmax(0,1fr) 180px auto;gap:6px;margin-top:8px}.task-subtask-form input,.task-subtask-form select{border:1px solid var(--line);border-radius:10px;padding:9px;font-size:12px;background:#fff}
.task-comments{display:grid;gap:6px}.task-comments article{display:grid;grid-template-columns:30px minmax(0,1fr);gap:8px;padding:8px 0;border-bottom:1px solid #edf2f4}.task-comments article:last-child{border-bottom:0}.task-comments .mini-avatar{width:30px;height:30px;font-size:11.5px}.task-comments header{display:flex;align-items:center;justify-content:space-between;gap:8px}.task-comments header b{font-size:12px}.task-comments time{font-size:10.5px;color:#627079}.task-comments p{margin:5px 0 0;color:#536b78;font-size:12px;line-height:1.55}.task-comment-files{display:flex;gap:5px;flex-wrap:wrap;margin-top:6px}.task-comment-files a{padding:5px 7px;background:#f1f6f9;border-radius:7px;font-size:11.5px;color:#557180}.task-comment-form{margin-top:9px;border-top:1px solid #eef2f4;padding-top:9px}.task-comment-form textarea{width:100%;border:1px solid var(--line);border-radius:11px;padding:9px;outline:0;resize:vertical}.task-comment-form>div{display:flex;justify-content:space-between;gap:8px;margin-top:7px}.task-file-button{cursor:pointer}
.task-side-card{padding:12px}.task-side-card>small{display:block;font-size:10.5px;color:#606f79;text-transform:none;letter-spacing:0;font-weight:800;margin-bottom:7px}.task-side-card>strong{font-size:13px}.task-status-control{display:grid;gap:4px}.task-status-control form{margin:0}.task-status-control button{width:100%;height:32px;border:1px solid transparent;border-radius:9px;background:#f4f7f9;color:#5b6f7b;text-align:left;padding:0 9px;font-size:11.5px;font-weight:800;cursor:pointer}.task-status-control button:hover{background:#edf4f8}.task-status-control button.active{background:#e6f1f7;color:var(--brand);border-color:#cfe0ea}.task-owner{display:flex;align-items:center;gap:8px}.task-owner .avatar{width:35px;height:35px}.task-owner b,.task-owner span{display:block}.task-owner b{font-size:12px}.task-owner span{font-size:11.5px;color:#616e76;margin-top:2px}
.task-files{display:grid;gap:3px}.task-files a{display:grid;grid-template-columns:25px minmax(0,1fr);gap:7px;align-items:center;padding:6px;border-radius:8px}.task-files a:hover{background:#f1f6f9}.task-files a>span:first-child{width:25px;height:25px;border-radius:7px;background:#eaf2f6;display:grid;place-items:center}.task-files b,.task-files small{display:block}.task-files b{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-files small{font-size:10.5px;color:#606d75;margin-top:2px}
.task-history{display:grid}.task-history>div{display:grid;grid-template-columns:10px minmax(0,1fr);gap:7px;position:relative;padding:5px 0}.task-history>div:not(:last-child)::after{content:"";position:absolute;left:4px;top:15px;bottom:-5px;width:1px;background:#dce5ea}.task-history i{width:9px;height:9px;border-radius:50%;background:#a7bac7;margin-top:2px;z-index:1}.task-history b,.task-history small{display:block}.task-history b{font-size:11.5px}.task-history small{font-size:10.5px;color:#606e76;margin-top:2px}
@media(max-width:1280px){
  .task-toolbar{grid-template-columns:1fr auto}.task-scope-tabs{grid-column:1/-1;width:max-content}.task-filters{overflow-x:auto}.task-kanban{grid-template-columns:repeat(4,280px);overflow-x:auto;padding-bottom:8px}.kanban-column{min-height:480px}
}
@media(max-width:900px){
  .task-stats{grid-template-columns:1fr 1fr}.task-drawer-body{grid-template-columns:1fr}.task-side-panel{grid-template-columns:repeat(2,1fr)}.task-list-head,.task-list-row{grid-template-columns:minmax(220px,2fr) 150px 110px 90px}.task-list-head span:nth-child(5),.task-list-row>div:nth-child(5){display:none}
}
@media(max-width:620px){
  .tasks-topline{display:block}.tasks-topline .btn{margin-top:10px}.task-stats{grid-template-columns:1fr 1fr}.task-toolbar{display:block}.task-scope-tabs{width:100%;overflow:auto;margin-bottom:8px}.task-filters{display:grid;grid-template-columns:1fr 1fr}.task-search{grid-column:1/-1}.task-view-switch{margin-top:8px;width:max-content}.task-kanban{grid-template-columns:repeat(4,270px)}.task-drawer{width:100vw}.task-drawer-body{padding:8px}.task-side-panel{grid-template-columns:1fr}.task-people-picker{grid-template-columns:1fr}.task-subtask-form{grid-template-columns:1fr}.task-list-head{display:none}.task-list-row{grid-template-columns:1fr 1fr;gap:7px}.task-list-row>div:first-child{grid-column:1/-1}.task-list-row>div:nth-child(4),.task-list-row>div:nth-child(5){display:none}
}


/* v1.7.0 — Tasks Control */
.tasks-top-actions{display:flex;align-items:center;gap:8px}
.task-notifications-wrap{position:relative}
.task-notifications-button{position:relative;width:40px;height:40px;background:#fff;border:1px solid var(--line)}
.task-notifications-button>em{position:absolute;right:-4px;top:-5px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:#d95353;color:#fff;font-style:normal;font-size:11.5px;font-weight:800;display:grid;place-items:center;border:2px solid #fff}
.task-notifications-panel{position:absolute;right:0;top:48px;width:min(380px,88vw);max-height:520px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 24px 60px rgba(7,31,49,.20);z-index:210;overflow:hidden}
.task-notifications-panel>header{padding:11px 12px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:10px}.task-notifications-panel>header b,.task-notifications-panel>header small{display:block}.task-notifications-panel>header b{font-size:13px}.task-notifications-panel>header small{font-size:11.5px;color:#616f79;margin-top:2px}.task-notifications-panel>header form{margin:0}.task-notifications-panel>header button{border:0;background:transparent;color:var(--brand);font-size:11.5px;font-weight:800;cursor:pointer}
.task-notifications-panel>div{max-height:440px;overflow:auto}.task-notifications-panel a{display:grid;grid-template-columns:8px minmax(0,1fr);gap:8px;padding:10px 12px;border-bottom:1px solid #eef2f4}.task-notifications-panel a:last-child{border-bottom:0}.task-notifications-panel a:hover{background:#f7fafc}.task-notifications-panel a>i{width:7px;height:7px;border-radius:50%;background:#c6d0d6;margin-top:4px}.task-notifications-panel a.unread>i{background:#2c7faa;box-shadow:0 0 0 3px rgba(44,127,170,.10)}.task-notifications-panel a span{min-width:0}.task-notifications-panel a b,.task-notifications-panel a small,.task-notifications-panel a time{display:block}.task-notifications-panel a b{font-size:12px}.task-notifications-panel a small{font-size:11.5px;color:#5e6e79;margin-top:3px;line-height:1.45}.task-notifications-panel a time{font-size:10.5px;color:#616e76;margin-top:4px}
.task-quick-filters{display:flex;gap:6px;flex-wrap:wrap;margin:-2px 0 10px}.task-quick-filters a{height:30px;padding:0 10px;border:1px solid var(--line);background:#fff;border-radius:999px;display:inline-flex;align-items:center;color:#5d6e79;font-size:11.5px;font-weight:800;box-shadow:0 3px 10px rgba(14,42,63,.025)}.task-quick-filters a:hover{border-color:#c7d5de;background:#f7fafc}.task-quick-filters a.active{background:#0c375c;color:#fff;border-color:#0c375c}
.team-control-board{margin-bottom:12px;padding:12px}.team-control-board .card-head{padding:2px 2px 10px}.team-control-board .card-head h3{margin:0;font-size:13.5px}.team-control-board .card-head small{font-size:11.5px;color:#616f78}.team-control-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.team-control-grid>a{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:9px;align-items:center;padding:9px 10px;border:1px solid #e7edf1;border-radius:12px;background:#fbfdfe}.team-control-grid>a:hover{background:#f4f8fa;border-color:#d9e3e9}.team-control-grid .avatar{width:38px;height:38px}.team-control-grid>a>span b,.team-control-grid>a>span small{display:block}.team-control-grid>a>span b{font-size:12px}.team-control-grid>a>span small{font-size:11.5px;color:#616f78;margin-top:2px}.team-control-grid>a>div{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}.team-control-grid em{font-style:normal;padding:4px 6px;border-radius:999px;background:#eef3f6;color:#5d707c;font-size:10.5px;font-weight:800}.team-control-grid em.danger{background:#fff0f0;color:#b64949}.team-control-grid em.critical{background:#fff1e5;color:#a86320}
.task-kanban-five{grid-template-columns:repeat(5,minmax(215px,1fr))}
.task-card{overflow:visible}
.task-card-open{display:block}
.task-card.priority-critical{border-left:4px solid #d95656}.task-card.priority-high{border-left:4px solid #dfa047}.task-card.priority-normal{border-left:4px solid transparent}
.priority-badge{display:inline-flex;align-items:center;height:21px;padding:0 7px;border-radius:999px;background:#eef3f6;color:#6b7f8b;font-size:10.5px;font-weight:900;text-transform:none;letter-spacing:0}.priority-badge.high{background:#fff1dc;color:#96641c}.priority-badge.critical{background:#ffe9e9;color:#b94747}
.task-card.deadline-near{box-shadow:0 0 0 1px #ecdba8,0 7px 18px rgba(14,42,63,.05)}.task-card.deadline-soon{box-shadow:0 0 0 1px #e8c28a,0 8px 20px rgba(171,107,31,.09)}.task-card.deadline-late{background:#fff9f9;border-color:#e6bcbc}.task-card.deadline-late-severe{background:#fff5f5;border-color:#dc9292;box-shadow:0 0 0 2px rgba(206,68,68,.06),0 10px 24px rgba(171,47,47,.10)}
.task-deadline{font-weight:700}.task-deadline.deadline-near{color:#9a7b2d}.task-deadline.deadline-soon{color:#b36b1f}.task-deadline.deadline-late,.task-deadline.deadline-late-severe{color:#c34747;font-weight:900}.deadline-near{color:#9a7b2d}.deadline-soon{color:#b36b1f}.deadline-late,.deadline-late-severe{color:#c34747!important}
.waiting-note{margin:7px 0;padding:6px 7px;border-radius:8px;background:#eef5fa;color:#557083;font-size:11.5px;line-height:1.4}
.shift-count{background:#f0f4f6;padding:2px 5px;border-radius:999px;font-weight:800;color:#5f6f78}
.task-quick-actions{position:absolute;top:7px;right:7px;display:flex;gap:3px;opacity:0;transform:translateY(-2px);transition:.12s;z-index:5}.task-card:hover .task-quick-actions{opacity:1;transform:none}.task-quick-actions button,.task-quick-actions>a{width:28px;height:28px;border:1px solid #dfe7ec;border-radius:8px;background:#fff;color:#5c707c;display:grid;place-items:center;font-size:12px;font-weight:900;cursor:pointer;box-shadow:0 5px 12px rgba(14,42,63,.08)}.task-quick-actions button:hover,.task-quick-actions>a:hover{background:#eef5f9;color:var(--brand)}
.task-card:hover .task-card-top{padding-right:68px}
.task-status-control>button{width:100%;height:32px;border:1px solid transparent;border-radius:9px;background:#f4f7f9;color:#5b6f7b;text-align:left;padding:0 9px;font-size:11.5px;font-weight:800;cursor:pointer}.task-status-control>button:hover{background:#edf4f8}.task-status-control>button.active{background:#e6f1f7;color:var(--brand);border-color:#cfe0ea}
.badge.waiting{background:#eaf3f9;color:#476e88}
.task-waiting-banner{display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center;background:#eaf3f9;border:1px solid #d5e4ed;border-radius:14px;padding:10px 12px;color:#4f6f83}.task-waiting-banner b{font-size:12px}.task-waiting-banner span{font-size:12px}.task-waiting-banner em{font-style:normal;font-size:11.5px;color:#5b6f7b}
.task-shift-note{display:block;margin-top:4px;font-size:11.5px;color:#626f79}.task-postpone-button{margin-top:8px}
.task-danger-card{border-color:#efd9d9;background:#fffafa}.task-danger-card form{margin:0}.task-danger-card>small:last-child{display:block;margin-top:6px;color:#7e6666;text-transform:none;letter-spacing:0;font-weight:500;line-height:1.4}
.archive-label{display:inline-flex;padding:5px 8px;border-radius:999px;background:#edf1f3;color:#606f77;font-size:11.5px;font-weight:800}.task-drawer-head-actions{display:flex;align-items:center;gap:8px}
.task-list-row.deadline-near{background:#fffdf7}.task-list-row.deadline-soon{background:#fff9f2}.task-list-row.deadline-late,.task-list-row.deadline-late-severe{background:#fff7f7}
#inlineShiftReason{border:1px solid #f0d5a9;background:#fffaf2;border-radius:11px;padding:9px}
.full{width:100%}
@media(max-width:1500px){.task-kanban-five{grid-template-columns:repeat(5,250px);overflow-x:auto;padding-bottom:8px}}
@media(max-width:1100px){.team-control-grid{grid-template-columns:1fr}.task-filters{flex-wrap:wrap}.task-toolbar{grid-template-columns:1fr}.task-view-switch{width:max-content}}
@media(max-width:620px){.tasks-top-actions{margin-top:10px}.team-control-grid>a{grid-template-columns:34px minmax(0,1fr)}.team-control-grid>a>div{grid-column:1/-1;justify-content:flex-start}.task-quick-actions{opacity:1;position:static;margin-top:7px}.task-card:hover .task-card-top{padding-right:0}.task-waiting-banner{grid-template-columns:1fr}.task-notifications-panel{position:fixed;right:10px;left:10px;top:72px;width:auto}}


/* v1.8.0 — Tasks final UX polish */
.task-toolbar{display:block!important;padding:10px 12px!important}
.task-toolbar-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}
.task-filters-clean{display:block!important}
.task-filter-main{display:flex;align-items:center;gap:6px}
.task-filter-main .task-search{min-width:260px;max-width:none;flex:1}
.task-filter-main select{height:38px;min-width:130px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:0 9px;color:#556b79;font-size:12px}
.task-filter-toggle{position:relative;white-space:nowrap}
.task-filter-toggle.active{background:#eef5f9;border-color:#cbdbe5;color:var(--brand)}
.task-filter-toggle em{display:inline-grid;place-items:center;min-width:18px;height:18px;margin-left:5px;padding:0 4px;border-radius:999px;background:#0c375c;color:#fff;font-style:normal;font-size:10.5px}
.task-filter-reset{display:inline-flex;align-items:center;height:36px;padding:0 7px;color:#616f79;font-size:11.5px;font-weight:800}
.task-filter-reset:hover{color:var(--red)}
.task-advanced-filters{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:8px;padding:10px;margin-top:9px;border-top:1px solid #edf2f5;background:#fafcfd;border-radius:0 0 12px 12px}
.task-advanced-filters label span{display:block;margin-bottom:4px;color:#616f79;font-size:10.5px;text-transform:none;letter-spacing:0;font-weight:800}
.task-advanced-filters select{width:100%;height:36px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:0 8px;color:#566b78;font-size:12px}
.due-presets{display:flex;gap:4px;flex-wrap:wrap;margin-top:5px}
.due-presets button{height:24px;padding:0 7px;border:1px solid #dde6ec;border-radius:999px;background:#f7fafc;color:#5c6e7a;font-size:10.5px;font-weight:800;cursor:pointer}
.due-presets button:hover{background:#eaf3f8;border-color:#c8dae5;color:var(--brand)}
.task-mini-progress{height:4px;border-radius:999px;background:#edf2f5;overflow:hidden;margin:8px 0 2px}
.task-mini-progress i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#2f7eaa,#4aa06d)}
.waiting-note.late,.task-waiting-banner.late{background:#fff1f1!important;border-color:#efc6c6!important;color:#a74747!important}
.task-card.wait-control-late{box-shadow:0 0 0 1px #e4a7a7,0 9px 22px rgba(158,51,51,.08)}
.task-drawer-nav{position:sticky;top:-1px;z-index:10;display:flex;gap:4px;padding:7px;background:rgba(246,249,251,.94);backdrop-filter:blur(10px);border:1px solid #e2e9ed;border-radius:12px}
.task-drawer-nav a{height:29px;padding:0 9px;border-radius:8px;display:flex;align-items:center;color:#687b87;font-size:11.5px;font-weight:800}
.task-drawer-nav a:hover{background:#fff;color:var(--brand);box-shadow:0 3px 10px rgba(14,42,63,.06)}
.task-copy-link{height:32px!important;padding:0 9px!important;font-size:11.5px!important}
.task-history{max-height:340px;overflow:auto;padding-right:3px}
.task-list-head-wrap,.task-list-item{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:stretch}
.task-list-head-wrap{background:#f6f9fb;border-bottom:1px solid var(--line)}
.task-list-head-wrap .task-list-head{border-bottom:0;background:transparent}
.task-list-item{border-bottom:1px solid #edf2f5}
.task-list-item:last-child{border-bottom:0}
.task-list-item .task-list-row{border-bottom:0}
.task-list-check{display:grid;place-items:center;border-right:1px solid #edf2f5;background:#fbfdfe;cursor:pointer}
.task-list-check input{width:15px;height:15px;accent-color:var(--brand);cursor:pointer}
.task-list-check-all{background:#f6f9fb}
.task-bulk-bar{position:sticky;top:0;z-index:12;display:grid;grid-template-columns:minmax(180px,1fr) 180px 190px auto auto;gap:7px;align-items:center;padding:9px 10px;background:#0c375c;color:#fff;border-radius:13px;margin:8px;box-shadow:0 12px 30px rgba(12,55,92,.20)}
.task-bulk-bar b,.task-bulk-bar small{display:block}.task-bulk-bar b{font-size:12px}.task-bulk-bar small{font-size:10.5px;color:#c5d7e4;margin-top:2px}
.task-bulk-bar select{height:34px;border:1px solid rgba(255,255,255,.22);border-radius:9px;background:#fff;color:#405766;padding:0 8px;font-size:11.5px}
.task-bulk-bar .btn{height:34px;font-size:11.5px}
.task-bulk-bar .btn.primary{background:#fff;color:#0c375c}
.task-bulk-bar .btn.ghost{border-color:rgba(255,255,255,.28);color:#fff;background:rgba(255,255,255,.07)}
.task-list-empty{padding:34px!important;line-height:1.8}.task-list-empty .btn{margin-top:10px}
.task-comments article{scroll-margin-top:90px}.task-detail-section,.task-edit-form{scroll-margin-top:62px}
.task-card-open:focus-visible,.task-list-row:focus-visible,.task-scope-tabs a:focus-visible,.task-view-switch a:focus-visible{outline:3px solid rgba(39,111,155,.18);outline-offset:2px}
@media(max-width:1200px){
  .task-filter-main{flex-wrap:wrap}.task-filter-main .task-search{min-width:260px;flex:1 1 100%}.task-advanced-filters{grid-template-columns:repeat(2,minmax(160px,1fr))}
  .task-bulk-bar{grid-template-columns:1fr 1fr 1fr}.task-bulk-bar>div{grid-column:1/-1}
}
@media(max-width:760px){
  .task-toolbar-top{display:block}.task-view-switch{margin-top:8px}
  .task-filter-main{display:grid;grid-template-columns:1fr 1fr}.task-filter-main .task-search{grid-column:1/-1;min-width:0}.task-filter-main select{min-width:0;width:100%}.task-filter-reset{justify-content:center}
  .task-advanced-filters{grid-template-columns:1fr}
  .task-bulk-bar{position:fixed;left:8px;right:8px;bottom:8px;top:auto;z-index:220;grid-template-columns:1fr 1fr;margin:0}.task-bulk-bar>div,.task-bulk-bar select{grid-column:1/-1}
  .task-list-head-wrap{display:none}.task-list-item{grid-template-columns:30px minmax(0,1fr)}
  .task-drawer-nav{overflow-x:auto;white-space:nowrap}
}


/* v1.9.0 — Approvals Core */
.approvals-page{min-height:calc(100vh - 120px)}
.approvals-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px}
.approvals-topline .eyebrow{font-size:12px;color:#5f6e78;text-transform:none;letter-spacing:0;font-weight:800}
.approvals-topline h1{font-size:30px;letter-spacing:-.045em;margin:5px 0}.approvals-topline p{margin:0;color:var(--muted);font-size:13px}
.approvals-top-actions{display:flex;align-items:center;gap:8px}.approval-notes-wrap{position:relative}.approval-notes-button{position:relative;width:40px;height:40px;background:#fff;border:1px solid var(--line)}.approval-notes-button>em{position:absolute;right:-4px;top:-5px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:#d95353;color:#fff;font-style:normal;font-size:11.5px;font-weight:800;display:grid;place-items:center;border:2px solid #fff}
.approval-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:11px}.approval-stats>a{background:#fff;border:1px solid var(--line);border-radius:15px;padding:12px 14px;box-shadow:var(--shadow-sm);transition:.14s}.approval-stats>a:hover,.approval-stats>a.active{border-color:#bfd1dc;box-shadow:0 10px 24px rgba(14,42,63,.07)}.approval-stats small,.approval-stats span{display:block}.approval-stats small{font-size:10.5px;text-transform:none;letter-spacing:0;color:#606f78;font-weight:800}.approval-stats strong{display:block;font-size:24px;letter-spacing:-.05em;margin:5px 0 2px}.approval-stats span{font-size:11.5px;color:#606e76}.approval-stats .danger-stat{background:#fff8f8;border-color:#efd3d3}.approval-stats .danger-stat strong{color:#c64e4e}.approval-stats .warn-stat{background:#fffaf1;border-color:#eadaba}.approval-stats .warn-stat strong{color:#a87627}
.approval-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px;margin-bottom:10px}.approval-scope-tabs{display:flex;align-items:center;gap:4px;background:#f3f7f9;border-radius:11px;padding:3px}.approval-scope-tabs a{height:31px;padding:0 10px;border-radius:8px;display:flex;align-items:center;color:#5f707b;font-size:12px;font-weight:800;white-space:nowrap}.approval-scope-tabs a.active{background:#fff;color:var(--brand);box-shadow:0 4px 12px rgba(12,55,92,.08)}.approval-toolbar>form{display:flex;align-items:center;gap:6px;min-width:0}.approval-toolbar select{height:37px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:0 9px;color:#566b79;font-size:12px}.approval-toolbar .task-search{min-width:240px}
.approval-process-list{display:grid;gap:7px}.approval-process-card{display:grid;grid-template-columns:130px minmax(0,1fr) 300px;gap:12px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:15px;padding:11px 12px;box-shadow:0 5px 15px rgba(14,42,63,.035);transition:.14s}.approval-process-card:hover{transform:translateY(-1px);border-color:#ccdbe4;box-shadow:0 11px 24px rgba(14,42,63,.075)}.approval-process-card.needs-me{border-left:4px solid #297ba8}.approval-process-card.approval-late{background:#fff9f9;border-color:#e9c1c1}.approval-card-state{display:grid;gap:6px;align-content:center}.approval-card-state .badge{width:max-content}.approval-card-state em{font-style:normal;width:max-content;padding:3px 6px;border-radius:999px;background:#e8f3f9;color:#2b739c;font-size:10.5px;font-weight:900}.approval-card-main{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}.approval-card-main>div{min-width:0}.approval-card-main small{display:block;color:#606e78;font-size:10.5px;text-transform:none;letter-spacing:0;font-weight:800}.approval-card-main h3{font-size:13px;margin:4px 0 3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.approval-card-main p{margin:0;font-size:11.5px;color:#606f78}.approval-card-main>strong{font-size:12.5px;white-space:nowrap}.approval-card-route{display:grid;gap:3px;padding-left:12px;border-left:1px solid #edf2f5}.approval-card-route span{font-size:11.5px;color:#5f6f7a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.approval-card-route .danger{color:#c54e4e;font-weight:900}.approval-empty{text-align:center;padding:38px}.approval-empty h3{font-size:15.5px;margin:0}.approval-empty p{font-size:12px;color:#617078;margin:6px 0 13px}
.approval-create-modal{width:min(720px,96vw)}.approval-create-form{padding:18px;display:grid;gap:12px}.approval-route-preview{border:1px solid #dfe8ed;background:#f8fbfc;border-radius:13px;padding:10px}.approval-preview-flow{display:flex;align-items:stretch;gap:7px;overflow-x:auto;padding:2px}.approval-preview-flow>i{display:grid;place-items:center;color:#5a6f7b;font-style:normal}.approval-preview-stage{min-width:150px;display:grid;grid-template-columns:24px minmax(0,1fr);gap:7px;align-items:start;background:#fff;border:1px solid #e2e9ed;border-radius:11px;padding:8px}.approval-preview-stage>span{width:24px;height:24px;border-radius:50%;background:#e9f2f7;color:#2d7198;display:grid;place-items:center;font-size:11.5px;font-weight:900}.approval-preview-stage.parallel{border-color:#cedee8;background:#fafdff}.approval-preview-stage b,.approval-preview-stage small,.approval-preview-stage em{display:block}.approval-preview-stage b{font-size:12px}.approval-preview-stage small{font-size:11.5px;color:#606f78;margin-top:3px;line-height:1.35}.approval-preview-stage em{font-style:normal;font-size:10.5px;color:#3c799b;font-weight:800;margin-top:4px}
.approval-drawer-backdrop{z-index:136}.approval-drawer{height:100vh;width:min(1180px,98vw);background:#f6f9fb;box-shadow:-30px 0 80px rgba(5,26,42,.24);overflow:hidden;animation:slideIn .2s ease both;display:grid;grid-template-rows:auto 1fr}.approval-drawer-head{min-height:78px;background:#fff;border-bottom:1px solid var(--line);padding:14px 17px;display:flex;align-items:center;justify-content:space-between;gap:16px}.approval-drawer-head>div:first-child{min-width:0}.approval-drawer-head small{display:block;font-size:11.5px;color:#82929c;text-transform:none;letter-spacing:0;font-weight:800}.approval-drawer-head h2{font-size:19px;letter-spacing:-.03em;margin:4px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.approval-drawer-head>div:last-child{display:flex;align-items:center;gap:7px}.approval-copy-link{height:32px!important;font-size:11.5px!important}
.approval-drawer-body{overflow:auto;padding:13px;display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:11px}.approval-main-panel,.approval-side-panel{display:grid;align-content:start;gap:10px}.approval-summary-card{padding:13px}.approval-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.approval-summary-grid>div{padding:8px;background:#f7fafc;border-radius:9px}.approval-summary-grid small,.approval-summary-grid b{display:block}.approval-summary-grid small{font-size:10.5px;color:#616f78;text-transform:none;letter-spacing:0;font-weight:800;margin-bottom:5px}.approval-summary-grid b{font-size:12px}.approval-person{display:flex;align-items:center;gap:6px}.approval-summary-card>p{font-size:12px;line-height:1.55;color:#5a7080;margin:10px 0 0}
.approval-route-card{padding:13px}.approval-route-card .card-head{padding:0 0 10px}.approval-route-card .card-head h3{margin:0;font-size:13.5px}.approval-route-card .card-head small{font-size:11.5px;color:#616f79}.approval-timeline{display:grid}.approval-stage{display:grid;grid-template-columns:34px minmax(0,1fr);gap:9px;position:relative;padding-bottom:12px}.approval-stage:not(:last-child)::before{content:"";position:absolute;left:16px;top:31px;bottom:-2px;width:2px;background:#e1e8ec}.stage-marker{z-index:1}.stage-marker span{width:33px;height:33px;border-radius:50%;background:#edf2f5;color:#606f78;display:grid;place-items:center;font-size:12px;font-weight:900;border:4px solid #fff;box-shadow:0 0 0 1px #dce5ea}.approval-stage.current .stage-marker span{background:#dff0f8;color:#23729c;box-shadow:0 0 0 1px #a9cfdf}.approval-stage.approved .stage-marker span{background:#e4f4ea;color:#34805b;box-shadow:0 0 0 1px #b5dbc5}.approval-stage.rejected .stage-marker span,.approval-stage.returned .stage-marker span{background:#fde9e9;color:#b84949;box-shadow:0 0 0 1px #e4b9b9}.approval-stage.late .stage-marker span{background:#ffe9e9;color:#b84949}
.stage-body{background:#fbfdfe;border:1px solid #e4eaee;border-radius:12px;padding:9px}.approval-stage.current .stage-body{background:#f7fbfd;border-color:#cfe1eb}.approval-stage.late .stage-body{background:#fff8f8;border-color:#ebc4c4}.stage-body>header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.stage-body>header b,.stage-body>header small{display:block}.stage-body>header b{font-size:12.5px}.stage-body>header small{font-size:10.5px;color:#617079;margin-top:2px}.stage-body>footer{margin-top:7px;padding-top:6px;border-top:1px solid #e9eef1;font-size:10.5px;color:#607079}.stage-body>footer.danger{color:#c24a4a;font-weight:900}.stage-actors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;margin-top:7px}.stage-actors>div{display:grid;grid-template-columns:28px minmax(0,1fr);gap:6px;align-items:center;padding:6px;border-radius:8px;background:#f2f6f8}.stage-actors .mini-avatar{width:28px;height:28px;font-size:10.5px}.stage-actors b,.stage-actors small{display:block}.stage-actors b{font-size:11.5px}.stage-actors small{font-size:10.5px;color:#616f78;margin-top:2px}.stage-actors>div.current{background:#eaf4fa}.stage-actors>div.approved{background:#edf7f1}.stage-actors>div.rejected,.stage-actors>div.returned{background:#fff0f0}.stage-actors>div.skipped{opacity:.55}
.approval-decision-card,.approval-resubmit-card{padding:13px}.approval-decision-card .card-head,.approval-resubmit-card .card-head{padding:0 0 9px}.approval-decision-form{display:grid;grid-template-columns:170px minmax(0,1fr);gap:8px;padding:9px;border:1px solid #dce6eb;border-radius:11px;background:#fbfdfe;margin-top:6px}.approval-decision-form>div:first-child b,.approval-decision-form>div:first-child small{display:block}.approval-decision-form>div:first-child b{font-size:12px}.approval-decision-form>div:first-child small{font-size:10.5px;color:#606e78;margin-top:3px}.approval-decision-form textarea{grid-column:2;border:1px solid var(--line);border-radius:9px;padding:8px;font-size:12px;min-height:60px}.approval-decision-form>div:last-child{grid-column:2;display:flex;gap:6px;justify-content:flex-end}.field-error{outline:3px solid rgba(205,68,68,.14)!important;border-color:#da8585!important}
.approval-comments{display:grid}.approval-comments article{display:grid;grid-template-columns:30px minmax(0,1fr);gap:8px;padding:9px 0;border-bottom:1px solid #edf2f4}.approval-comments .mini-avatar{width:30px;height:30px;font-size:10.5px}.approval-comments header{display:flex;align-items:center;justify-content:space-between;gap:8px}.approval-comments header b{font-size:12px}.approval-comments header time{font-size:10.5px;color:#616d76}.approval-comments p{font-size:12px;line-height:1.5;color:#566c79;margin:5px 0 0}.approval-comment-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;margin-top:9px}.approval-comment-form textarea{border:1px solid var(--line);border-radius:10px;padding:9px;font-size:12px;resize:vertical}
.approval-docs-card{padding:12px}.approval-docs-card .card-head{padding:0 0 8px}.approval-doc-version{padding:7px 0;border-top:1px solid #edf2f4}.approval-doc-version:first-of-type{border-top:0}.approval-doc-version>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:5px}.approval-doc-version>header b{font-size:11.5px}.approval-doc-version>header span{padding:3px 6px;border-radius:999px;background:#e6f2f8;color:#34789b;font-size:10.5px;font-weight:800}.approval-doc-version>a{display:grid;grid-template-columns:26px minmax(0,1fr);gap:7px;padding:6px;border-radius:8px}.approval-doc-version>a:hover{background:#f1f6f9}.approval-doc-version>a>span:first-child{width:26px;height:26px;border-radius:7px;background:#eaf2f6;display:grid;place-items:center}.approval-doc-version b,.approval-doc-version small{display:block}.approval-doc-version b{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.approval-doc-version small{font-size:10.5px;color:#627079;margin-top:2px}
.approval-history{display:grid;max-height:380px;overflow:auto}.approval-history>div{display:grid;grid-template-columns:10px minmax(0,1fr);gap:7px;position:relative;padding:5px 0}.approval-history>div:not(:last-child)::after{content:"";position:absolute;left:4px;top:15px;bottom:-5px;width:1px;background:#dce5ea}.approval-history i{width:9px;height:9px;border-radius:50%;background:#9db2c0;margin-top:2px;z-index:1}.approval-history b,.approval-history small{display:block}.approval-history b{font-size:11.5px;line-height:1.4}.approval-history small{font-size:10.5px;color:#606d75;margin-top:2px}.approval-danger-card{padding:11px;background:#fffafa;border-color:#edd3d3}.approval-danger-card>small{display:block;font-size:10.5px;color:#896363;text-transform:none;letter-spacing:0;font-weight:800;margin-bottom:7px}

/* Admin route builder */
.approval-routes-admin{padding:13px;margin:12px 0}.approval-routes-admin>.card-head{padding:0 0 11px}.approval-routes-admin>.card-head h3{margin:0;font-size:14px}.approval-routes-admin>.card-head small{font-size:11.5px;color:#606f79}.approval-route-admin-grid{display:grid;grid-template-columns:minmax(360px,.9fr) minmax(520px,1.35fr);gap:12px;align-items:start}.approval-route-list{display:grid;gap:5px;max-height:620px;overflow:auto}.approval-route-list>article{display:flex;align-items:center;justify-content:space-between;gap:9px;padding:9px;border:1px solid #e3eaee;border-radius:11px;background:#fbfdfe}.approval-route-list>article.inactive{opacity:.58}.approval-route-list>article>div:first-child{display:grid;grid-template-columns:10px minmax(0,1fr);gap:8px;align-items:center;min-width:0}.route-state-dot{width:8px;height:8px;border-radius:50%;background:#3d9b6c}.approval-route-list>article.inactive .route-state-dot{background:#adb8be}.approval-route-list b,.approval-route-list small{display:block}.approval-route-list b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.approval-route-list small{font-size:10.5px;color:#606f79;margin-top:2px}.approval-route-list>article>div:last-child{display:flex;gap:4px;align-items:center}.approval-route-list form{margin:0}.approval-route-list .btn{height:29px;padding:0 7px;font-size:10.5px}
.approval-route-editor{border:1px solid #d9e4ea;background:#f8fbfc;border-radius:14px;padding:12px;position:sticky;top:10px}.route-editor-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.route-editor-head small{font-size:10.5px;text-transform:none;letter-spacing:0;color:#606f79;font-weight:800}.route-editor-head h3{margin:3px 0 0;font-size:14.5px}.route-default-sla{max-width:220px}.route-builder-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:12px 0 7px}.route-builder-toolbar b,.route-builder-toolbar small{display:block}.route-builder-toolbar b{font-size:12.5px}.route-builder-toolbar small{font-size:10.5px;color:#606f79;margin-top:2px}.approval-stage-builder{display:grid;gap:8px}.route-stage-builder{background:#fff;border:1px solid #dfe7ec;border-radius:12px;padding:10px;position:relative}.route-stage-builder>header{display:grid;grid-template-columns:28px minmax(0,1fr) 28px;gap:8px;align-items:center;margin-bottom:9px}.route-stage-number{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#e9f3f8;color:#2f7398;font-size:11.5px;font-weight:900}.route-stage-builder>header b,.route-stage-builder>header small{display:block}.route-stage-builder>header b{font-size:12px}.route-stage-builder>header small{font-size:10.5px;color:#606d77;margin-top:2px}.route-stage-builder>header>button,.route-actor>button{width:28px;height:28px;border:0;border-radius:8px;background:#f2f5f7;color:#606f78;cursor:pointer;font-size:15.5px}.route-stage-fields{display:grid;grid-template-columns:1.4fr 1fr 1fr 90px;gap:6px}.route-stage-rule.hidden{display:none!important}.route-actors{display:grid;gap:4px;margin-top:8px}.route-actor{display:grid;grid-template-columns:24px 190px minmax(0,1fr) 28px;gap:6px;align-items:center;padding:6px;background:#f6f9fb;border-radius:9px}.actor-handle{width:24px;text-align:center;color:#5f6e78;font-size:13.5px}.route-actor select{height:34px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:0 7px;font-size:11.5px;color:#566b78}.add-route-actor{margin-top:6px;height:30px;font-size:11.5px}.route-editor-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:12px;padding-top:10px;border-top:1px solid #e1e8ec}
@media(max-width:1250px){.approval-route-admin-grid{grid-template-columns:1fr}.approval-route-editor{position:static}.approval-process-card{grid-template-columns:110px minmax(0,1fr) 250px}.approval-summary-grid{grid-template-columns:1fr 1fr}}
@media(max-width:950px){.approval-drawer-body{grid-template-columns:1fr}.approval-side-panel{grid-template-columns:1fr 1fr}.approval-toolbar{display:block}.approval-scope-tabs{width:max-content;max-width:100%;overflow:auto}.approval-toolbar>form{margin-top:7px}.approval-stats{grid-template-columns:1fr 1fr}.approval-process-card{grid-template-columns:1fr}.approval-card-route{padding:7px 0 0;border-left:0;border-top:1px solid #edf2f5}.route-stage-fields{grid-template-columns:1fr 1fr}.route-actor{grid-template-columns:24px 1fr 1fr 28px}}
@media(max-width:620px){.approvals-topline{display:block}.approvals-top-actions{margin-top:10px}.approval-stats{grid-template-columns:1fr 1fr}.approval-toolbar>form{display:grid;grid-template-columns:1fr 1fr}.approval-toolbar .task-search{grid-column:1/-1;min-width:0}.approval-process-card{padding:10px}.approval-drawer{width:100vw}.approval-drawer-body{padding:8px}.approval-side-panel{grid-template-columns:1fr}.approval-summary-grid{grid-template-columns:1fr 1fr}.stage-actors{grid-template-columns:1fr}.approval-decision-form{grid-template-columns:1fr}.approval-decision-form textarea,.approval-decision-form>div:last-child{grid-column:1}.approval-comment-form{grid-template-columns:1fr}.route-stage-fields{grid-template-columns:1fr}.route-actor{grid-template-columns:24px minmax(0,1fr) 28px}.route-actor [data-actor-user]{grid-column:2}.approval-route-list>article{display:block}.approval-route-list>article>div:last-child{margin-top:7px;flex-wrap:wrap}}

.badge.current{background:#e7f2f8;color:#2d759d}.badge.skipped{background:#eef1f3;color:#8a969d}


/* v1.10.0 — Employee profile */
.sidebar-profile-wrap{display:grid;grid-template-columns:minmax(0,1fr) 36px;gap:6px;align-items:center;padding:8px 7px 9px;border-top:1px solid rgba(255,255,255,.08)}
.sidebar-profile-wrap .me{min-width:0;padding:4px!important;border-radius:10px;transition:.12s}.sidebar-profile-wrap .me:hover{background:rgba(255,255,255,.07)}.sidebar-logout-form{margin:0}.sidebar-logout{width:34px;height:34px;border:0;border-radius:9px;background:rgba(255,255,255,.06);color:#c7d4de;display:grid;place-items:center;cursor:pointer;transition:.12s}.sidebar-logout:hover{background:rgba(220,83,83,.18);color:#fff}.sidebar-logout .ui-icon{width:16px;height:16px}
.profile-workspace{display:grid;gap:12px}.profile-hero{padding:18px;display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(135deg,#fff 0%,#f7fafc 100%)}.profile-hero-main{display:flex;align-items:center;gap:14px;min-width:0}.profile-xl-avatar{width:82px;height:82px;border-radius:23px;font-size:22px;box-shadow:0 10px 28px rgba(12,55,92,.12)}.profile-xl-avatar img{width:100%;height:100%;object-fit:cover;border-radius:inherit}.profile-hero .eyebrow{font-size:11.5px;color:#81919b;text-transform:none;letter-spacing:0;font-weight:800}.profile-hero h1{font-size:25px;letter-spacing:-.04em;margin:4px 0}.profile-hero p{margin:0;color:#667b88;font-size:12.5px}.profile-hero-chips{display:flex;gap:5px;flex-wrap:wrap;margin-top:7px}.profile-hero-chips span{padding:4px 7px;border-radius:999px;background:#edf3f6;color:#637987;font-size:10.5px;font-weight:800}
.profile-completion{width:260px;padding:11px 12px;border:1px solid #e1e8ed;border-radius:13px;background:#fff}.profile-completion>div{display:flex;align-items:flex-end;justify-content:space-between}.profile-completion small{font-size:10.5px;text-transform:none;letter-spacing:0;color:#606f79;font-weight:800}.profile-completion strong{font-size:20px;letter-spacing:-.04em}.profile-completion>span{display:block;height:6px;background:#edf2f5;border-radius:999px;overflow:hidden;margin:7px 0}.profile-completion>span i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#2c739d,#43a072)}.profile-completion p{margin:0;font-size:10.5px;line-height:1.45;color:#616e77}
.profile-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(290px,.72fr);gap:12px;align-items:start}.profile-edit-card,.profile-company-card,.profile-security-card,.profile-logout-card{padding:14px}.profile-edit-card>.card-head,.profile-company-card>.card-head,.profile-security-card>.card-head{padding:0 0 11px}.profile-edit-card .card-head h3,.profile-company-card .card-head h3,.profile-security-card .card-head h3{margin:0;font-size:13.5px}.profile-edit-card .card-head small,.profile-company-card .card-head small,.profile-security-card .card-head small{font-size:11.5px;color:#616e78}
.profile-edit-form{display:grid;gap:13px}.profile-photo-editor{display:grid;grid-template-columns:92px minmax(0,1fr);gap:13px;align-items:center;padding:11px;background:#f7fafc;border:1px solid #e5ebef;border-radius:13px}.profile-photo-preview .employee-edit-avatar{width:82px;height:82px;border-radius:20px;font-size:20px}.profile-photo-preview img{width:100%;height:100%;object-fit:cover;border-radius:inherit}.profile-photo-editor b,.profile-photo-editor small{display:block}.profile-photo-editor b{font-size:12.5px}.profile-photo-editor small{font-size:11.5px;color:#616f78;margin:3px 0 8px}.profile-photo-editor .btn{width:max-content}.profile-remove-photo{display:block;margin-top:7px;color:#7f6767;font-size:11.5px;cursor:pointer}.profile-remove-photo input{accent-color:#c45353}
.profile-fields-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.profile-fields-grid .full{grid-column:1/-1}.profile-form-actions{display:flex;justify-content:flex-end;padding-top:4px}.profile-side{display:grid;gap:10px}.profile-company-card dl{margin:0;display:grid}.profile-company-card dl>div{padding:8px 0;border-bottom:1px solid #edf2f4}.profile-company-card dl>div:last-child{border-bottom:0}.profile-company-card dt{font-size:10.5px;text-transform:none;letter-spacing:0;color:#616e77;font-weight:800}.profile-company-card dd{margin:3px 0 0;font-size:12px;color:#526977;word-break:break-word}.profile-password-form{display:grid;gap:8px}.profile-logout-card{display:grid;gap:10px;background:#fffafa;border-color:#ecd4d4}.profile-logout-card b,.profile-logout-card small{display:block}.profile-logout-card b{font-size:12.5px}.profile-logout-card small{font-size:11.5px;color:#796868;margin-top:2px;line-height:1.4}.profile-logout-card form{margin:0}
.contact-list span em{font-style:normal;margin-left:5px;padding:2px 5px;border-radius:999px;background:#edf3f6;color:#5a6f7a;font-size:10.5px;font-weight:800}.contact-list .employee-extra{color:#606f79!important;font-size:11.5px!important;padding-left:22px}
@media(max-width:1000px){.profile-layout{grid-template-columns:1fr}.profile-side{grid-template-columns:1fr 1fr}.profile-logout-card{grid-column:1/-1}.profile-hero{align-items:flex-start}.profile-completion{width:230px}}
@media(max-width:650px){.profile-hero{display:block}.profile-completion{width:100%;margin-top:12px}.profile-xl-avatar{width:68px;height:68px;border-radius:18px}.profile-hero h1{font-size:21px}.profile-side{grid-template-columns:1fr}.profile-logout-card{grid-column:auto}.profile-fields-grid{grid-template-columns:1fr}.profile-fields-grid .full{grid-column:auto}.profile-photo-editor{grid-template-columns:72px minmax(0,1fr)}.profile-photo-preview .employee-edit-avatar{width:66px;height:66px;border-radius:17px}}


/* v1.11.0 — Responsive system: desktop / laptop / tablet / phone */
:root{--mobile-nav-h:0px}
.mobile-menu-button,.sidebar-mobile-close,.mobile-nav-backdrop,.mobile-bottom-nav,.mobile-chat-back{display:none}

/* Large desktop: let the workspace breathe without stretching text too far */
@media(min-width:1601px){
  .content{max-width:1720px;padding:28px 32px}
  .app-shell{grid-template-columns:270px minmax(0,1fr)}
  .sidebar{padding-left:16px;padding-right:16px}
}

/* Common laptops: 1280–1599 */
@media(min-width:1280px) and (max-width:1599px){
  .app-shell{grid-template-columns:228px minmax(0,1fr)}
  .sidebar{padding-left:11px;padding-right:11px}
  .brand-word{width:132px}
  .nav-item{height:43px;padding:0 10px;font-size:13.5px}
  .content{max-width:none;padding:20px}
  .topbar{padding:0 20px}
  .hero{min-height:210px;padding:26px 28px}
  .hero h1{font-size:31px}
  .people-grid{grid-template-columns:repeat(3,minmax(220px,1fr))}
  .approval-process-card{grid-template-columns:116px minmax(0,1fr) 260px}
  .task-kanban-five{grid-template-columns:repeat(5,235px)}
}

/* Small laptops / landscape tablets: compact icon rail, but keep full workspace */
@media(min-width:721px) and (max-width:1024px){
  .app-shell{grid-template-columns:76px minmax(0,1fr)}
  .sidebar{padding:12px 8px}
  .brand{padding:5px 0 18px;justify-content:center}.brand-symbol{width:32px}.brand-word{display:none}
  .nav-item{height:44px;padding:0;justify-content:center;border-radius:12px}.nav-item .nav-text,.nav-label{display:none}.nav-item .ico{width:22px;height:22px}
  .sidebar-profile-wrap{grid-template-columns:1fr;padding:8px 2px}.sidebar-profile-wrap .me{justify-content:center;padding:4px!important}.sidebar-profile-wrap .me>div{display:none}.sidebar-logout-form{display:none}
  .content{padding:16px;max-width:none}.topbar{padding:0 16px}.search-trigger{padding:0 10px;font-size:0}.search-trigger .ui-icon{margin:0}.top-actions>.btn.ghost{padding:0 10px}
  .hero{padding:22px;min-height:190px}.hero h1{font-size:28px}.hero p{font-size:14px;max-width:520px}.hero-symbol{width:190px}
  .stats{grid-template-columns:repeat(2,1fr)}
  .grid2{grid-template-columns:1fr}
  .people-grid{grid-template-columns:repeat(2,minmax(220px,1fr))}
  .profile-layout{grid-template-columns:1fr}.profile-side{grid-template-columns:1fr 1fr}.profile-logout-card{grid-column:1/-1}
  .approval-process-card{grid-template-columns:100px minmax(0,1fr)}.approval-card-route{grid-column:1/-1;padding:8px 0 0;border-left:0;border-top:1px solid #edf2f5}
  .approval-drawer-body,.task-drawer-body{grid-template-columns:1fr}.approval-side-panel,.task-side-panel{grid-template-columns:repeat(2,minmax(0,1fr))}
  .approval-route-admin-grid{grid-template-columns:1fr}.approval-route-editor{position:static}
  .role-permission-grid{grid-template-columns:1fr 1fr}
  .calendar-layout{grid-template-columns:1fr}.calendar-sidebar{display:none}.calendar-main{overflow-x:auto;-webkit-overflow-scrolling:touch}
}

/* Phone shell */
@media(max-width:720px){
  :root{--mobile-nav-h:68px}
  html,body{max-width:100%;overflow-x:hidden}
  body{font-size:14px;padding-bottom:env(safe-area-inset-bottom,0px)}
  .app-shell{display:block;min-height:100dvh}
  .main{min-height:100dvh;width:100%}

  /* Drawer navigation */
  .sidebar{
    display:flex!important;position:fixed!important;z-index:400;left:0;top:0;bottom:0;width:min(310px,86vw)!important;height:100dvh!important;
    transform:translateX(-105%);transition:transform .22s ease;box-shadow:26px 0 70px rgba(3,20,33,.28);padding:14px 12px calc(14px + env(safe-area-inset-bottom,0px));
  }
  .mobile-nav-open .sidebar{transform:translateX(0)}
  .mobile-nav-backdrop{display:block;position:fixed;inset:0;z-index:390;border:0;background:rgba(5,22,35,.48);backdrop-filter:blur(3px);opacity:0;visibility:hidden;transition:.2s}
  .mobile-nav-open .mobile-nav-backdrop{opacity:1;visibility:visible}
  .mobile-nav-open{overflow:hidden}
  .sidebar .brand{justify-content:flex-start;padding:4px 7px 15px}.sidebar .brand-symbol{width:32px;height:40px}.sidebar .brand-word{display:block!important;width:142px}
  .sidebar-mobile-close{display:grid;margin-left:auto;width:35px;height:35px;place-items:center;border:0;border-radius:10px;background:rgba(255,255,255,.08);color:#fff;font-size:22px;cursor:pointer}
  .sidebar nav{gap:3px;overflow-y:auto}.sidebar .nav-item{height:45px;font-size:13.5px!important;justify-content:flex-start!important;padding:0 11px!important}.sidebar .nav-item .nav-text{display:block!important}.sidebar .nav-label{display:block!important;padding:15px 11px 6px}
  .sidebar-profile-wrap{grid-template-columns:minmax(0,1fr) 36px!important;margin-top:auto}.sidebar-profile-wrap .me{justify-content:flex-start!important}.sidebar-profile-wrap .me>div{display:block!important}.sidebar-logout-form{display:block!important}

  /* Top bar */
  .topbar{height:58px!important;min-height:58px!important;padding:0 10px!important;position:sticky;top:0;z-index:60}
  .topbar-title{min-width:0;gap:8px}.topbar-title-copy{min-width:0}.topbar-title-copy small{display:none}.topbar-title-copy b{display:block;max-width:42vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14.5px}
  .mobile-menu-button{display:grid;width:36px;height:36px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:8px;align-content:center;gap:4px;cursor:pointer;flex:0 0 auto}
  .mobile-menu-button span{display:block;height:2px;border-radius:2px;background:#49606f}
  .top-actions{gap:5px}.search-trigger{display:none!important}.top-actions>.btn.ghost{width:36px;height:36px;min-height:36px;padding:0!important;font-size:0;border-radius:10px}.top-actions>.btn.ghost .ui-icon{width:17px;height:17px}.profile-avatar-link .avatar.small{width:34px;height:34px}

  /* Bottom nav */
  .mobile-bottom-nav{
    display:flex;position:fixed;left:0;right:0;bottom:0;z-index:350;height:calc(var(--mobile-nav-h) + env(safe-area-inset-bottom,0px));
    padding:6px 6px calc(6px + env(safe-area-inset-bottom,0px));background:rgba(255,255,255,.96);border-top:1px solid #dfe7ec;backdrop-filter:blur(18px);box-shadow:0 -10px 28px rgba(8,33,55,.08)
  }
  .mobile-bottom-nav>a,.mobile-bottom-nav>button{position:relative;flex:1;min-width:0;border:0;background:transparent;color:#81919b;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:0;cursor:pointer;border-radius:10px}
  .mobile-bottom-nav>a.active{color:var(--brand);background:#eef5f9}.mobile-bottom-nav .ui-icon{width:20px;height:20px}.mobile-bottom-nav small{font-size:11.5px;font-weight:800;line-height:1}.mobile-bottom-nav em{position:absolute;top:4px;left:calc(50% + 7px);min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:#d65353;color:#fff;font-style:normal;font-size:10.5px;font-weight:800;display:grid;place-items:center;border:2px solid #fff}
  .mobile-more-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;gap:3px}.mobile-more-icon i{width:4px;height:4px;border-radius:50%;background:currentColor}

  /* Global content sizing */
  .content{padding:10px 10px calc(var(--mobile-nav-h) + 16px)!important;max-width:none!important;width:100%}
  .page-title,.tasks-topline,.calendar-topline,.approvals-topline{display:block!important;margin-bottom:12px}
  .page-title h1,.tasks-topline h1,.calendar-topline h1,.approvals-topline h1{font-size:24px!important;line-height:1.08}
  .page-title p,.tasks-topline p,.calendar-topline p,.approvals-topline p{font-size:12.5px!important;line-height:1.45;margin-top:5px!important}
  .page-title .btn,.tasks-topline .btn,.calendar-topline .btn,.approvals-top-actions{margin-top:9px}
  .card,.stat,.person-card{border-radius:15px}
  .card-head{min-height:50px;padding:0 12px}.card-head h3{font-size:13.5px}
  .btn{min-height:38px;border-radius:10px;padding:0 11px;font-size:12.5px}
  .field input,.field textarea,.field select{font-size:16px!important} /* prevent iOS zoom */
  input,textarea,select{max-width:100%}
  .event-datetime-grid,.form-grid,.profile-fields-grid{grid-template-columns:1fr!important}.form-grid .full,.profile-fields-grid .full{grid-column:auto!important}
  .grid2{grid-template-columns:1fr!important;gap:9px}
  .inline-form{display:grid!important}
  .table-card{overflow-x:auto;-webkit-overflow-scrolling:touch}table{min-width:680px}

  /* Dashboard */
  .hero{padding:18px!important;min-height:auto!important;border-radius:18px}.hero h1{font-size:24px!important;margin:9px 0 7px}.hero p{font-size:13px!important;line-height:1.5}.hero span{font-size:11.5px}.hero-symbol{display:none}.hero-actions{gap:6px;margin-top:13px}.hero-actions .btn{flex:1;min-width:120px}
  .stats{grid-template-columns:1fr 1fr!important;gap:8px;margin:9px 0}.stat{padding:13px}.stat strong{font-size:24px;margin:5px 0}.stat small,.stat span{font-size:12px}
  .row-link,.event-row{min-height:58px;padding:10px 12px}.row-link b,.event-row b{font-size:13px}.row-link small,.event-row small{font-size:12px}.row-link time{font-size:12px}

  /* Employees */
  .people-grid{grid-template-columns:1fr!important;gap:8px}.person-card{padding:14px;text-align:left;display:grid;grid-template-columns:64px minmax(0,1fr);column-gap:11px}.person-card .big-avatar{width:60px;height:60px;margin:0;grid-row:1/5}.person-card h3{margin:3px 0 2px;font-size:14px}.person-card p{font-size:12.5px}.person-card>small{font-size:12px;margin-top:3px}.person-status{right:9px;top:9px;font-size:10.5px;padding:4px 6px}.contact-list,.person-card .actions{grid-column:1/-1}.contact-list{margin-top:10px;font-size:12.5px}.person-card .actions{display:flex}.person-card .actions .btn{font-size:12px}

  /* Messenger: on phone show either chats OR active conversation */
  .messenger-page{min-height:auto}.messenger-layout,.messenger-layout.info-hidden{display:block!important;height:calc(100dvh - 58px - var(--mobile-nav-h) - 20px)!important;min-height:0!important;border-radius:15px}
  .messenger-layout .chat-side{display:flex!important;height:100%;max-height:none!important;border-right:0}
  .messenger-layout.has-active-chat .chat-side{display:none!important}
  .messenger-layout:not(.has-active-chat) .chat-panel,.messenger-layout:not(.has-active-chat) .chat-info-panel{display:none!important}
  .messenger-layout.has-active-chat .chat-panel{display:grid!important;height:100%;min-height:0!important;grid-template-rows:auto minmax(0,1fr) auto}
  .chat-header{min-height:58px;padding:9px!important}.mobile-chat-back{display:grid;width:32px;height:32px;place-items:center;border:0;border-radius:9px;background:#eef4f7;color:#456578;font-size:28px;line-height:1;flex:0 0 auto}.chat-header-person{gap:6px}.chat-header-person .avatar{width:34px;height:34px}.chat-header-person h3{font-size:13.5px}.chat-header-right .chat-header-members{display:none}
  .messages{padding:10px!important}.msg{max-width:86%!important;font-size:13px}.composer{padding:8px!important}.composer-row{gap:5px}.composer-row textarea{font-size:16px!important}.composer-hint{display:none}.send-message-button{font-size:0!important;width:40px;padding:0!important}.send-message-button .ui-icon{margin:0}
  .chat-info-panel{position:fixed!important;top:58px!important;bottom:var(--mobile-nav-h)!important;width:min(340px,92vw)!important;z-index:300!important}
  .chat-side-head{min-height:58px;padding:9px 10px}.chat-side-head h3{font-size:15.5px}.chat-search-wrap{height:38px}.chat-link{padding:9px}.chat-person-row{padding:8px}
  .center-modal-card,.new-chat-drawer,.group-manage-drawer{width:calc(100vw - 16px)!important;max-width:none!important;border-radius:16px!important}

  /* Tasks */
  .task-stats,.approval-stats{grid-template-columns:1fr 1fr!important;gap:7px}.task-stats article,.approval-stats>a{padding:10px}.task-stats strong,.approval-stats strong{font-size:21px}
  .task-quick-filters{overflow-x:auto;flex-wrap:nowrap;padding-bottom:3px;-webkit-overflow-scrolling:touch}.task-quick-filters a{flex:0 0 auto}
  .task-toolbar{padding:8px!important}.task-toolbar-top{display:block!important}.task-scope-tabs{width:100%!important;overflow-x:auto;flex-wrap:nowrap}.task-scope-tabs a{flex:0 0 auto}.task-view-switch{margin-top:6px}
  .task-filter-main{display:grid!important;grid-template-columns:1fr 1fr!important}.task-filter-main .task-search{grid-column:1/-1!important;min-width:0!important}.task-filter-main select{width:100%;min-width:0!important}.task-filter-toggle,.task-filter-main>.btn,.task-filter-reset{width:100%}
  .task-advanced-filters{grid-template-columns:1fr!important}
  .task-kanban,.task-kanban-five{grid-template-columns:repeat(5,84vw)!important;gap:8px;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:8px}.kanban-column{min-height:calc(100dvh - 260px);scroll-snap-align:start}.task-card{padding:10px}.task-quick-actions{opacity:1!important;position:static!important;margin-top:7px}.task-card:hover .task-card-top{padding-right:0!important}
  .task-list-item{grid-template-columns:28px minmax(0,1fr)!important}.task-list-row{grid-template-columns:1fr 1fr!important;gap:6px!important;padding:9px!important}.task-list-row>div:first-child{grid-column:1/-1}.task-list-row>div:nth-child(4),.task-list-row>div:nth-child(5){display:none}
  .task-bulk-bar{bottom:calc(var(--mobile-nav-h) + 8px)!important}
  .task-drawer,.approval-drawer,.admin-user-drawer{width:100vw!important;height:100dvh!important}.task-drawer-body,.approval-drawer-body{padding:7px!important}.task-side-panel,.approval-side-panel{grid-template-columns:1fr!important}.task-drawer-head,.approval-drawer-head{min-height:62px;padding:9px 10px}.task-drawer-head h2,.approval-drawer-head h2{font-size:15.5px;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .task-drawer-nav{top:0;overflow-x:auto;white-space:nowrap}.task-drawer-nav a{flex:0 0 auto}
  .task-people-picker{grid-template-columns:1fr!important}.task-subtask-form{grid-template-columns:1fr!important}

  /* Calendar */
  .calendar-toolbar{padding:8px!important}.calendar-nav{gap:5px}.calendar-nav strong{font-size:13.5px}.calendar-view-switch{overflow-x:auto;max-width:100%}.calendar-view-switch a{flex:0 0 auto}
  .calendar-layout{display:block!important;min-height:0}.calendar-sidebar{display:none!important}.calendar-main{overflow-x:auto!important;-webkit-overflow-scrolling:touch;border-radius:14px}.week-calendar{min-width:760px!important}.week-head{grid-template-columns:52px repeat(7,minmax(95px,1fr))}.month-grid{min-width:720px}.schedule-list{min-width:0}
  .event-modal{width:100vw!important;height:100dvh!important;max-height:none!important;border-radius:0!important;overflow:auto}.event-modal-head{position:sticky;top:0;z-index:4;background:#fff}
  .calendar-create{width:100%;margin-top:8px!important}

  /* Approvals */
  .approvals-top-actions{display:flex!important}.approval-toolbar{display:block!important;padding:8px}.approval-scope-tabs{overflow-x:auto;flex-wrap:nowrap;width:100%!important}.approval-scope-tabs a{flex:0 0 auto}.approval-toolbar>form{display:grid!important;grid-template-columns:1fr 1fr!important;margin-top:7px}.approval-toolbar .task-search{grid-column:1/-1;min-width:0!important}
  .approval-process-card{grid-template-columns:1fr!important;padding:10px}.approval-card-main{align-items:flex-start}.approval-card-main h3{white-space:normal}.approval-card-route{padding:7px 0 0!important;border-left:0!important;border-top:1px solid #edf2f5}.approval-card-route span{white-space:normal}.approval-card-state{display:flex;align-items:center;gap:6px}
  .approval-summary-grid{grid-template-columns:1fr 1fr!important}.stage-actors{grid-template-columns:1fr!important}.approval-decision-form{grid-template-columns:1fr!important}.approval-decision-form textarea,.approval-decision-form>div:last-child{grid-column:1!important}.approval-decision-form>div:last-child{display:grid!important;grid-template-columns:1fr}.approval-comment-form{grid-template-columns:1fr!important}
  .approval-route-admin-grid{grid-template-columns:1fr!important}.approval-route-editor{position:static!important}.approval-route-list>article{display:block}.approval-route-list>article>div:last-child{margin-top:7px;flex-wrap:wrap}.route-stage-fields{grid-template-columns:1fr!important}.route-actor{grid-template-columns:22px minmax(0,1fr) 28px!important}.route-actor [data-actor-user]{grid-column:2}
  .approval-create-modal{width:100vw!important;height:100dvh;max-height:none;border-radius:0!important;overflow:auto}

  /* Profile */
  .profile-hero{display:block!important;padding:13px}.profile-hero-main{align-items:flex-start}.profile-xl-avatar{width:64px;height:64px;border-radius:17px}.profile-hero h1{font-size:20px;margin:3px 0}.profile-completion{width:100%!important;margin-top:11px}.profile-layout{grid-template-columns:1fr!important}.profile-side{grid-template-columns:1fr!important}.profile-logout-card{grid-column:auto!important}.profile-edit-card,.profile-company-card,.profile-security-card,.profile-logout-card{padding:11px}.profile-photo-editor{grid-template-columns:68px minmax(0,1fr);padding:9px}.profile-photo-preview .employee-edit-avatar{width:60px;height:60px}.profile-form-actions .btn{width:100%}

  /* Admin */
  .admin-tabs{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px;-webkit-overflow-scrolling:touch}.admin-tabs a{flex:0 0 auto;font-size:12px;padding:7px 10px}.admin-users-grid{grid-template-columns:1fr!important}.admin-employee-list{max-height:none}.admin-employee-row{grid-template-columns:38px minmax(0,1fr)!important;padding:9px!important}.admin-edit-btn{grid-column:1/-1;margin-left:46px}
  .role-permission-grid{grid-template-columns:1fr!important;padding:8px}.permission-checks{grid-template-columns:1fr!important}.password-reset-form{grid-template-columns:1fr!important}
  #roles .card-head{display:block;padding:11px}#roles .card-head span{display:block;max-width:none;text-align:left;margin-top:4px}
  .approval-route-list{max-height:none}.route-editor-actions{position:sticky;bottom:0;background:#f8fbfc;padding:9px 0 calc(3px + env(safe-area-inset-bottom));z-index:3}

  /* Command palette */
  .command{padding:8px;align-items:flex-start}.command-card{width:100%;max-height:calc(100dvh - 16px);overflow:auto;border-radius:16px}.command-input{height:48px}.command-input input{font-size:16px}.command-input kbd{display:none}

  /* Login */
  .login-body,.install-body{padding:10px}.login-layout{width:100%;min-height:auto;border-radius:20px;grid-template-columns:1fr}.login-art{display:none}.login-form{padding:26px 20px}.login-word{max-width:190px}.install-card{width:100%;padding:20px;border-radius:20px}

  /* Touch targets and iPhone safe areas */
  button,a,input[type="checkbox"],input[type="radio"]{-webkit-tap-highlight-color:transparent}
  .icon-button,.icon-action{min-width:38px;min-height:38px}
}

/* Very small phones */
@media(max-width:390px){
  .content{padding-left:7px!important;padding-right:7px!important}
  .stats,.task-stats,.approval-stats{grid-template-columns:1fr!important}
  .topbar-title-copy b{max-width:34vw}
  .mobile-bottom-nav small{font-size:10.5px}
  .profile-hero-main{gap:9px}.profile-xl-avatar{width:56px;height:56px}
  .approval-summary-grid{grid-template-columns:1fr!important}
  .task-filter-main,.approval-toolbar>form{grid-template-columns:1fr!important}.task-filter-main .task-search,.approval-toolbar .task-search{grid-column:auto!important}
  .hero-actions .btn{min-width:100%;flex-basis:100%}
}

/* Short-height laptop/desktop screens */
@media(min-width:721px) and (max-height:760px){
  .sidebar{padding-top:10px;padding-bottom:10px}.brand{padding-bottom:12px;min-height:52px}.nav-item{height:39px}.nav-label{padding-top:12px}.sidebar-profile-wrap{padding-top:5px}
  .topbar{height:62px}.content{padding-top:14px}.messenger-layout{height:calc(100vh - 92px);min-height:500px}
}

/* Landscape phone: preserve usable vertical workspace */
@media(max-width:900px) and (max-height:500px) and (orientation:landscape){
  :root{--mobile-nav-h:54px}
  .topbar{height:50px!important;min-height:50px!important}.mobile-bottom-nav{height:calc(var(--mobile-nav-h) + env(safe-area-inset-bottom,0px));padding-top:3px}
  .mobile-bottom-nav small{display:none}.content{padding-top:7px!important}
  .messenger-layout,.messenger-layout.info-hidden{height:calc(100dvh - 50px - var(--mobile-nav-h) - 12px)!important}
  .sidebar{width:min(300px,60vw)!important}
}


/* v1.11.1 — Mobile Messenger UX hotfix */
@media(max-width:720px){
  .page-chat .topbar{display:none!important}
  .page-chat .content{padding:0 0 calc(var(--mobile-nav-h) + env(safe-area-inset-bottom,0px))!important}
  .page-chat.mobile-chat-open .content{padding:0!important}
  .page-chat.mobile-chat-open .mobile-bottom-nav{display:none!important}

  .page-chat .messenger-page{height:calc(var(--chat-vh,100dvh) - var(--mobile-nav-h));min-height:0;background:#fff}
  .page-chat.mobile-chat-open .messenger-page{height:var(--chat-vh,100dvh)}
  .page-chat .messenger-layout,
  .page-chat .messenger-layout.info-hidden{
    height:100%!important;min-height:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:#fff
  }

  /* Chat list */
  .page-chat .messenger-layout:not(.has-active-chat) .chat-side{display:flex!important;height:100%;background:#fff}
  .page-chat .chat-side-head{
    position:sticky;top:0;z-index:8;min-height:64px!important;padding:11px 12px 8px!important;
    background:rgba(255,255,255,.96);backdrop-filter:blur(18px);border-bottom:0
  }
  .page-chat .chat-side-head small{font-size:11.5px}.page-chat .chat-side-head h3{font-size:21px;margin-top:1px}
  .page-chat .chat-head-actions{gap:5px}.page-chat .chat-head-actions .icon-button{width:38px;height:38px;border-radius:11px}
  .page-chat .chat-search-wrap{position:sticky;top:64px;z-index:7;margin:0 10px 8px;height:42px;border-radius:12px;background:#f3f6f8;box-shadow:none}
  .page-chat .chat-search-wrap input{font-size:16px}
  .page-chat .chat-tabs{position:sticky;top:114px;z-index:7;padding:0 10px 7px;background:#fff}
  .page-chat .chat-tabs button{height:34px}
  .page-chat .chat-tab-panel{padding:0 6px 8px;overflow:auto;-webkit-overflow-scrolling:touch}
  .page-chat .chat-link{
    display:grid!important;grid-template-columns:48px minmax(0,1fr)!important;gap:10px!important;
    margin:0!important;padding:10px 8px!important;border-radius:12px!important;border-bottom:1px solid #f0f3f5
  }
  .page-chat .chat-link:last-child{border-bottom:0}
  .page-chat .chat-link.active{background:transparent!important}
  .page-chat .chat-link:active{background:#f1f6f9!important}
  .page-chat .chat-link .avatar{width:48px;height:48px;font-size:13.5px}
  .page-chat .chat-link-title b{font-size:14px}.page-chat .chat-link-title time{font-size:11.5px}
  .page-chat .chat-link-main>small,.page-chat .chat-link-bottom>small{font-size:12.5px;line-height:1.4;color:#7b8b95}
  .page-chat .chat-unread-badge{min-width:19px;height:19px;font-size:11.5px}
  .page-chat .online-dot{width:11px;height:11px}
  .page-chat .chat-person-row{grid-template-columns:46px minmax(0,1fr) auto;margin:0;padding:9px 8px;border-bottom:1px solid #f0f3f5;border-radius:0}
  .page-chat .chat-person-row .mini-avatar,.page-chat .chat-person-row .avatar{width:46px;height:46px}

  /* Conversation */
  .page-chat.mobile-chat-open .messenger-layout.has-active-chat .chat-panel{
    display:grid!important;height:var(--chat-vh,100dvh)!important;min-height:0!important;
    grid-template-rows:auto auto minmax(0,1fr) auto auto;background:#f4f7fa
  }
  .page-chat.mobile-chat-open .chat-header{
    position:relative;z-index:10;min-height:60px!important;padding:8px 9px!important;background:rgba(255,255,255,.97);
    border-bottom:1px solid #e8edf0;backdrop-filter:blur(18px)
  }
  .page-chat .mobile-chat-back{
    display:grid!important;width:36px;height:36px;place-items:center;border:0;border-radius:10px;background:transparent!important;color:#345a72;
    font-size:32px;line-height:1;padding:0;margin-right:1px
  }
  .page-chat .chat-header-person{min-width:0;gap:7px;flex:1}
  .page-chat .chat-header-person .chat-avatar-wrap>.avatar{width:38px;height:38px}
  .page-chat .chat-header-person>div{min-width:0}
  .page-chat .chat-header-person h3{font-size:14px!important;max-width:42vw}
  .page-chat .chat-header-person small{font-size:11.5px!important;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:42vw}
  .page-chat .chat-header-right{gap:3px}
  .page-chat .chat-header-right .chat-header-members{display:none!important}
  .page-chat .chat-header-right .icon-button{width:34px;height:34px;min-width:34px;min-height:34px;border:0;background:transparent;border-radius:10px;box-shadow:none}
  .page-chat .chat-header-right .icon-button:first-of-type{display:none}
  .page-chat .chat-header-right .icon-button:hover{transform:none;background:#f0f4f7}

  .page-chat .pinned-banner{min-height:38px;padding:6px 10px;grid-template-columns:22px minmax(0,1fr);gap:6px;background:#f2f7fa}
  .page-chat .pinned-banner .pin-icon{font-size:13.5px}.page-chat .pinned-banner b{font-size:11.5px}.page-chat .pinned-banner small{font-size:11.5px}.page-chat .pinned-banner em{display:none}

  /* Messages */
  .page-chat .messages{
    min-height:0!important;padding:12px 9px 10px!important;overflow-y:auto!important;overscroll-behavior:contain;
    background:linear-gradient(180deg,#f5f8fa 0%,#edf3f7 100%);-webkit-overflow-scrolling:touch
  }
  .page-chat .msg-row{gap:6px;margin:7px 0}
  .page-chat .message-avatar{width:28px;height:28px;margin-top:2px;font-size:10.5px}
  .page-chat .msg-row .msg{max-width:84%!important;padding:9px 10px!important;border-radius:15px 15px 15px 5px!important;font-size:14px!important;box-shadow:0 3px 10px rgba(13,39,58,.045)}
  .page-chat .msg-row.mine .msg{border-radius:15px 15px 5px 15px!important;background:#dff0fa;border-color:#cfe4ef}
  .page-chat .msg-name{font-size:12px;margin-bottom:3px}
  .page-chat .msg-body{line-height:1.48;word-break:break-word}
  .page-chat .msg-meta{margin-top:3px}.page-chat .msg time{font-size:11.5px;margin:0}.page-chat .read-state{font-size:12px}
  .page-chat .message-reply-quote{padding:5px 7px;margin-bottom:5px}.page-chat .message-reply-quote b,.page-chat .message-reply-quote span{font-size:11.5px}
  .page-chat .forwarded-label{font-size:10.5px;margin-bottom:4px}
  .page-chat .msg-image{max-width:min(72vw,330px)}.page-chat .msg-image img{max-height:230px}
  .page-chat .msg-file{min-width:0;width:min(70vw,330px);max-width:100%;grid-template-columns:31px minmax(0,1fr) 20px;padding:7px}.page-chat .msg-file-icon{width:31px;height:31px}
  .page-chat .message-reactions{gap:3px;margin-top:5px}.page-chat .reaction-chip{height:23px;padding:0 6px}

  /* Tap a message to reveal its actions. */
  .page-chat .message-actions{
    display:none!important;position:static!important;margin-top:6px!important;width:max-content!important;max-width:100%;
    background:rgba(255,255,255,.92)!important;border:1px solid #e3e9ed!important;border-radius:9px!important;padding:2px!important;
    box-shadow:0 5px 12px rgba(14,42,63,.06)!important;opacity:1!important;pointer-events:auto!important;transform:none!important
  }
  .page-chat .msg-row.mobile-actions-open .message-actions{display:flex!important}
  .page-chat .message-actions>button{width:30px;height:30px}
  .page-chat .global-reaction-picker{max-width:calc(100vw - 16px);height:44px;padding:4px 6px}.page-chat .global-reaction-picker button{width:34px;height:34px}

  /* Typing + composer */
  .page-chat .typing-indicator{min-height:22px;padding:4px 10px 3px 44px;border-top:0;background:#f7fafc;font-size:11.5px}
  .page-chat .composer{
    position:relative;z-index:12;padding:7px 8px calc(7px + env(safe-area-inset-bottom,0px))!important;background:#fff;border-top:1px solid #e0e7eb
  }
  .page-chat .composer-row{
    display:grid!important;grid-template-columns:38px minmax(0,1fr) 40px!important;gap:5px!important;align-items:end
  }
  .page-chat .attachment-button{width:38px;height:38px;border:0!important;background:#f1f5f7!important;border-radius:11px;margin:0}
  .page-chat .composer-row textarea{
    min-height:38px!important;max-height:112px!important;padding:9px 11px!important;border-radius:14px!important;background:#f2f5f7!important;border-color:#edf1f3!important;
    font-size:16px!important;line-height:1.3
  }
  .page-chat .send-message-button{
    grid-column:auto!important;width:40px!important;height:40px!important;min-height:40px!important;padding:0!important;border-radius:12px!important;font-size:0!important
  }
  .page-chat .send-message-button .ui-icon{width:18px;height:18px;margin:0}
  .page-chat .composer-hint{display:none!important}.page-chat .message-send-error{margin:5px 0 0!important;font-size:11.5px}
  .page-chat .reply-composer{margin:0 0 6px!important;padding:6px 8px}.page-chat .reply-composer b,.page-chat .reply-composer small{font-size:11.5px}
  .page-chat .file-preview{padding:0 0 6px!important;flex-wrap:nowrap;overflow-x:auto}.page-chat .file-preview-chip{min-width:170px}

  /* Info/search drawer */
  .page-chat .chat-info-panel{
    position:fixed!important;display:block!important;top:0!important;bottom:0!important;right:0!important;width:min(340px,94vw)!important;
    z-index:520!important;box-shadow:-22px 0 60px rgba(5,26,42,.25);transform:translateX(0);background:#fbfdfe
  }
  .page-chat .messenger-layout.info-hidden .chat-info-panel{display:block!important;transform:translateX(105%)}
  .page-chat .chat-info-head{min-height:58px;padding:10px 11px}.page-chat .chat-info-section{padding:10px}

  .page-chat .new-chat-modal,.page-chat .group-manage-modal{width:100vw!important;height:100dvh!important;max-height:none!important;border-radius:0!important;overflow:auto}
  .page-chat .center-modal-backdrop{padding:8px!important}.page-chat .center-modal-card{width:100%!important;max-height:calc(100dvh - 16px);overflow:auto;border-radius:16px!important}
}

@media(max-width:390px){
  .page-chat .chat-header-person h3,.page-chat .chat-header-person small{max-width:36vw}
  .page-chat .chat-header-right .icon-button{width:32px;height:32px;min-width:32px}
  .page-chat .msg-row .msg{max-width:87%!important}
}


/* v1.12.0 — Documents Core */
.documents-page{display:grid;gap:11px}.documents-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.documents-topline .eyebrow{font-size:11.5px;text-transform:none;letter-spacing:0;color:#607079;font-weight:800}.documents-topline h1{font-size:29px;letter-spacing:-.045em;margin:4px 0}.documents-topline p{margin:0;color:var(--muted);font-size:12.5px}.documents-top-actions{display:flex;gap:7px}
.documents-layout{display:grid;grid-template-columns:235px minmax(0,1fr);gap:11px;align-items:start}.document-nav{padding:8px;position:sticky;top:84px}.document-scopes{display:grid;gap:3px;padding-bottom:8px;border-bottom:1px solid #edf2f4}.document-scopes a,.document-folder-tree a{min-height:35px;padding:0 9px;border-radius:9px;display:flex;align-items:center;gap:8px;color:#5d6f7b;font-size:12px;font-weight:800}.document-scopes a:hover,.document-folder-tree a:hover{background:#f1f6f9}.document-scopes a.active,.document-folder-tree a.active{background:#e9f3f8;color:var(--brand)}.document-folder-head{display:flex;align-items:center;justify-content:space-between;padding:12px 8px 5px}.document-folder-head b{font-size:11.5px;text-transform:none;letter-spacing:0;color:#5f6f79}.document-folder-head small{font-size:10.5px;color:#606d75}.document-folder-tree{display:grid}.document-folder-tree a.child{padding-left:25px;font-weight:700}.folder-icon{width:22px;height:22px;border-radius:7px;background:#eef4f8;color:#4a7290;display:grid;place-items:center;flex:0 0 auto}
.document-main{min-width:0;display:grid;gap:9px}.document-toolbar{min-height:52px;padding:7px 9px;display:grid;grid-template-columns:minmax(160px,1fr) auto auto;gap:8px;align-items:center}.document-breadcrumb{min-width:0;display:flex;align-items:center;gap:6px;font-size:11.5px;color:#606d77}.document-breadcrumb b{color:#405967;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.document-toolbar form{display:flex;align-items:center;gap:5px}.document-toolbar .task-search{min-width:220px}.document-toolbar select{height:36px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:0 8px;font-size:11.5px;color:#586d79}.document-access-button{width:36px;height:36px;font-size:16px}.document-folder-cards{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:7px}.document-folder-cards>a{display:grid;grid-template-columns:38px minmax(0,1fr);gap:8px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:12px;padding:9px;box-shadow:0 4px 12px rgba(14,42,63,.025)}.document-folder-cards>a:hover{border-color:#cad9e2;box-shadow:var(--shadow-sm)}.document-folder-cards>a>span{width:38px;height:38px;border-radius:10px;background:#edf4f8;color:#47738e;display:grid;place-items:center}.document-folder-cards b,.document-folder-cards small{display:block}.document-folder-cards b{font-size:12px}.document-folder-cards small{font-size:10.5px;color:#616e77;margin-top:2px}
.document-list-card{overflow:hidden}.document-list-head,.document-row{display:grid;grid-template-columns:minmax(280px,1.8fr) minmax(130px,.85fr) 105px minmax(130px,.8fr) 90px;gap:10px;align-items:center}.document-list-head{min-height:38px;background:#f7fafc;border-bottom:1px solid var(--line);padding:0 12px;color:#626f78;text-transform:none;letter-spacing:0;font-size:10.5px;font-weight:800}.document-row{min-height:62px;padding:8px 12px;border-bottom:1px solid #eef2f4;transition:.12s}.document-row:last-child{border-bottom:0}.document-row:hover{background:#f8fbfd}.document-row>div{min-width:0}.document-row b,.document-row small,.document-row time{display:block}.document-row b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.document-row small{font-size:10.5px;color:#616e77;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.document-row time{font-size:11.5px;font-weight:800;color:#596f7c}.document-title-cell{display:grid;grid-template-columns:36px minmax(0,1fr) 18px;gap:8px;align-items:center}.document-title-cell>em{font-style:normal;color:#d19b31;font-size:14px}.document-type-icon{width:36px;height:36px;border-radius:10px;background:#edf4f8;color:#47728d;display:grid;place-items:center}.document-version-badge{display:inline-flex;padding:4px 6px;border-radius:999px;background:#eef4f7;color:#496c81;font-size:11.5px;font-weight:900}.document-empty{text-align:center;padding:42px 16px}.document-empty>span{width:54px;height:54px;border-radius:16px;background:#eef4f8;color:#596f7e;display:grid;place-items:center;margin:0 auto}.document-empty h3{font-size:14px;margin:10px 0 4px}.document-empty p{font-size:11.5px;color:#616e77;margin:0 0 12px}
.document-upload-modal{width:min(720px,96vw)}.document-upload-form{padding:16px;display:grid;gap:10px}.folder-access-modal{width:min(760px,96vw)}#folderAccessForm{padding:16px;display:grid;gap:10px}.folder-acl-row{display:grid;grid-template-columns:145px minmax(0,1fr) 110px 30px;gap:6px;align-items:center;padding:6px;background:#f6f9fb;border-radius:9px;margin-bottom:5px}.folder-acl-row select{height:34px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:0 7px;font-size:11.5px}.folder-acl-row button{width:30px;height:30px;border:0;border-radius:8px;background:#edf2f4;color:#5f6e78;font-size:15.5px;cursor:pointer}
.document-drawer-backdrop{z-index:140}.document-drawer{height:100vh;width:min(1180px,98vw);background:#f6f9fb;box-shadow:-30px 0 80px rgba(5,26,42,.24);overflow:hidden;animation:slideIn .2s ease both;display:grid;grid-template-rows:auto 1fr}.document-drawer-head{min-height:74px;background:#fff;border-bottom:1px solid var(--line);padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px}.document-drawer-head>div:first-child{min-width:0}.document-drawer-head small{display:block;font-size:10.5px;color:#83919b;text-transform:none;letter-spacing:0;font-weight:800}.document-drawer-head h2{font-size:18px;letter-spacing:-.03em;margin:4px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.document-drawer-head>div:last-child{display:flex;align-items:center;gap:6px}.document-drawer-head form{margin:0}.document-fav-button{width:34px;height:34px;font-size:14.5px;color:#686e74}.document-fav-button.active{color:#d09b2d;background:#fff8e5}.document-drawer-body{overflow:auto;padding:11px;display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:10px}.document-detail-main,.document-detail-side{display:grid;align-content:start;gap:9px}.document-meta-card{padding:10px;display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.document-meta-card>div{padding:8px;border-radius:9px;background:#f7fafc}.document-meta-card small,.document-meta-card b{display:block}.document-meta-card small{font-size:10.5px;text-transform:none;letter-spacing:0;color:#616f78;font-weight:800}.document-meta-card b{font-size:12px;margin-top:4px}.document-versions-card .card-head{padding:0 12px}.document-version-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:6px;padding:9px 12px;background:#f8fbfd;border-bottom:1px solid #e8eef1}.document-version-form input{min-width:0;border:1px solid var(--line);border-radius:9px;background:#fff;padding:8px;font-size:11.5px}.document-version-block{padding:10px 12px;border-bottom:1px solid #edf2f4}.document-version-block:last-child{border-bottom:0}.document-version-block>header{display:flex;align-items:center;justify-content:space-between;gap:8px}.document-version-block>header>div{display:flex;align-items:center;gap:6px}.document-version-block>header b{font-size:12px}.document-version-block>header span{padding:3px 6px;border-radius:999px;background:#e5f3ea;color:#377a58;font-size:10.5px;font-weight:800}.document-version-block>header small{font-size:10.5px;color:#606d75}.document-version-block>p{margin:6px 0;font-size:11.5px;color:#5c6e79}.document-version-block>div{display:grid;gap:4px;margin-top:6px}.document-version-block a{display:grid;grid-template-columns:34px minmax(0,1fr) 18px;gap:7px;align-items:center;padding:7px;border-radius:9px;background:#f8fafc}.document-version-block a:hover{background:#eef4f7}.document-file-icon{width:34px;height:34px;border-radius:8px;background:#e9f1f5;display:grid;place-items:center}.document-version-block a b,.document-version-block a small{display:block}.document-version-block a b{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.document-version-block a small{font-size:10.5px;color:#626f77;margin-top:2px}
.document-comments{padding:0 12px}.document-comments article{display:grid;grid-template-columns:30px minmax(0,1fr);gap:7px;padding:9px 0;border-bottom:1px solid #edf2f4}.document-comments header{display:flex;align-items:center;justify-content:space-between;gap:8px}.document-comments header b{font-size:11.5px}.document-comments header time{font-size:10.5px;color:#616d75}.document-comments p{font-size:11.5px;line-height:1.5;margin:4px 0 0;color:#586e7a}.document-comment-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;padding:9px 12px}.document-comment-form textarea{border:1px solid var(--line);border-radius:9px;padding:8px;font-size:12px}.document-detail-side>.card{padding:10px}.document-detail-side>.card>.card-head{padding:0 0 8px;min-height:auto;border-bottom:0;background:transparent}.document-detail-side>.card>.card-head h3{font-size:12.5px}.document-detail-side>.card>.card-head small{font-size:10.5px;color:#616e78}.document-approval-card form,.document-control-card form{display:grid;gap:7px;margin:0 0 7px}.document-share-card form{display:grid;grid-template-columns:1fr 100px auto;gap:5px}.document-share-card select{height:34px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:0 6px;font-size:11.5px}.document-shares{display:flex;gap:4px;flex-wrap:wrap;margin-top:7px}.document-shares span{padding:4px 6px;border-radius:999px;background:#edf3f6;color:#5a6f79;font-size:10.5px}.document-history{display:grid;max-height:330px;overflow:auto}.document-history>div{display:grid;grid-template-columns:10px minmax(0,1fr);gap:6px;padding:5px 0;position:relative}.document-history>div:not(:last-child)::after{content:"";position:absolute;left:4px;top:14px;bottom:-5px;width:1px;background:#dce5ea}.document-history i{width:9px;height:9px;border-radius:50%;background:#8ea8b7;margin-top:2px;z-index:1}.document-history b,.document-history small{display:block}.document-history b{font-size:11.5px}.document-history small{font-size:10.5px;color:#606d75;margin-top:2px}.approval-library-card{padding:10px}.approval-library-card .card-head{padding:0 0 8px;min-height:auto;border:0;background:transparent}.approval-library-card form{display:grid;gap:7px}
@media(max-width:1200px){.documents-layout{grid-template-columns:200px minmax(0,1fr)}.document-folder-cards{grid-template-columns:repeat(3,1fr)}.document-list-head,.document-row{grid-template-columns:minmax(240px,1.6fr) 130px 95px 130px}.document-list-head>span:last-child,.document-row>div:last-child{display:none}.document-drawer-body{grid-template-columns:1fr}.document-detail-side{grid-template-columns:repeat(2,minmax(0,1fr))}.document-toolbar{grid-template-columns:1fr}.document-toolbar form{grid-row:2;overflow-x:auto}.document-access-button{position:absolute;right:18px}}
@media(max-width:720px){.documents-topline{display:block}.documents-top-actions{margin-top:8px}.documents-top-actions .btn{flex:1}.documents-layout{display:block}.document-nav{position:static;margin-bottom:8px;padding:6px}.document-scopes{display:flex;overflow-x:auto;gap:4px;border-bottom:0;padding-bottom:5px}.document-scopes a{flex:0 0 auto;min-height:32px}.document-folder-head{padding:6px 7px 3px}.document-folder-tree{display:flex;overflow-x:auto;gap:4px}.document-folder-tree a,.document-folder-tree a.child{flex:0 0 auto;padding:0 8px!important}.document-folder-cards{grid-template-columns:1fr 1fr}.document-toolbar{padding:7px}.document-toolbar form{display:grid;grid-template-columns:1fr 1fr;overflow:visible}.document-toolbar .task-search{grid-column:1/-1;min-width:0}.document-toolbar form .btn{width:100%}.document-list-head{display:none}.document-row{grid-template-columns:minmax(0,1fr) auto!important;gap:7px;padding:10px}.document-row>div:nth-child(2),.document-row>div:nth-child(4),.document-row>div:nth-child(5){display:none}.document-title-cell{grid-template-columns:34px minmax(0,1fr) 16px}.document-row>div:nth-child(3){text-align:right}.document-drawer{width:100vw;height:100dvh}.document-drawer-head{min-height:62px;padding:8px 9px}.document-drawer-head h2{font-size:14.5px;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.document-drawer-body{padding:6px}.document-detail-side{grid-template-columns:1fr}.document-meta-card{grid-template-columns:1fr 1fr}.document-version-form{grid-template-columns:1fr}.document-comment-form{grid-template-columns:1fr}.document-share-card form{grid-template-columns:1fr}.document-upload-modal,.folder-access-modal{width:100vw!important;height:100dvh!important;max-height:none!important;border-radius:0!important;overflow:auto}.folder-acl-row{grid-template-columns:1fr 1fr 30px}.folder-acl-row [data-acl-id]{grid-column:1/3}.document-folder-cards>a{grid-template-columns:34px minmax(0,1fr)}.document-folder-cards>a>span{width:34px;height:34px}}
@media(max-width:390px){.document-folder-cards{grid-template-columns:1fr}.document-meta-card{grid-template-columns:1fr}.document-toolbar form{grid-template-columns:1fr}.document-toolbar .task-search{grid-column:auto}}


/* v1.13.0 — Employees & Organization */
.employees-page{display:grid;gap:12px}
.employees-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.employees-topline .eyebrow{font-size:12.5px;letter-spacing:0;text-transform:none;color:#5f6f79;font-weight:800}
.employees-topline h1{font-size:30px;letter-spacing:-.045em;margin:5px 0}
.employees-topline p{margin:0;color:var(--muted);font-size:14px;line-height:1.55}
.employees-top-actions{display:flex;gap:7px}
.employee-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.employee-stats article{background:#fff;border:1px solid var(--line);border-radius:16px;padding:13px 15px;box-shadow:var(--shadow-sm)}
.employee-stats small,.employee-stats span{display:block}.employee-stats small{font-size:12.5px;color:#5f6f79;text-transform:none;letter-spacing:0;font-weight:800}.employee-stats strong{display:block;font-size:26px;letter-spacing:-.05em;margin:5px 0 2px}.employee-stats span{font-size:13px;color:#616e77}.employee-stats article.warn{background:#fffaf2;border-color:#eadbbd}.employee-stats article.warn strong{color:#a47225}

.employee-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px}
.employee-view-tabs{display:flex;gap:4px;padding:3px;background:#f1f5f7;border-radius:11px}
.employee-view-tabs a{min-height:33px;padding:0 11px;border-radius:8px;display:flex;align-items:center;color:#5c6e7a;font-size:13px;font-weight:800;white-space:nowrap}
.employee-view-tabs a.active{background:#fff;color:var(--brand);box-shadow:0 3px 10px rgba(14,42,63,.07)}
.employee-toolbar form{display:flex;align-items:center;gap:6px;min-width:0}.employee-toolbar .task-search{min-width:290px}
.employee-toolbar select{height:38px;border:1px solid var(--line);border-radius:10px;background:#fff;color:#506675;padding:0 9px;font-size:13px}
.employee-reset{font-size:12.5px;font-weight:800;color:#617079;padding:0 5px}.employee-reset:hover{color:var(--brand)}

.employee-directory-grid{display:grid;grid-template-columns:repeat(3,minmax(250px,1fr));gap:9px}
.employee-directory-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:12px;box-shadow:0 6px 17px rgba(14,42,63,.04);transition:.14s}
.employee-directory-card:hover{border-color:#cbd9e2;box-shadow:0 12px 26px rgba(14,42,63,.08);transform:translateY(-1px)}
.employee-card-main{display:grid;grid-template-columns:54px minmax(0,1fr);gap:10px;align-items:center}
.employee-avatar-wrap{position:relative;width:54px;height:54px}.employee-card-avatar{width:54px;height:54px;font-size:14px}.employee-card-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}
.presence-dot{position:absolute;right:1px;bottom:2px;width:12px;height:12px;border-radius:50%;background:#b9c3c9;border:3px solid #fff}.presence-dot.online{background:#35a56e}
.employee-card-main h3{font-size:14px;margin:0 0 3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.employee-card-main p{font-size:13px;color:#526a78;margin:0}.employee-card-main small{display:block;font-size:12.5px;color:#616e77;margin-top:3px}
.employee-card-info{display:grid;gap:6px;padding:9px 0;margin-top:9px;border-top:1px solid #eef2f4;border-bottom:1px solid #eef2f4}.employee-card-info>span{min-width:0;display:grid;grid-template-columns:16px minmax(0,1fr) auto;gap:6px;align-items:center;color:#5c6f7b}.employee-card-info b{font-size:12.5px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.employee-card-info em{font-style:normal;padding:3px 6px;background:#edf3f6;border-radius:999px;font-size:11.5px;font-weight:800}.employee-card-info .muted-line{display:block;padding-left:22px;font-size:12px;color:#606e78}
.employee-card-footer{display:flex;justify-content:space-between;gap:8px;padding-top:8px}.employee-card-footer span{font-size:12px;color:#627079}.employee-card-footer span.online{color:#278458;font-weight:800}
.employee-empty{grid-column:1/-1;text-align:center;padding:38px}.employee-empty h3{font-size:15.5px;margin:0}.employee-empty p{font-size:13px;color:#606f79}.employee-empty-inline{padding:24px;color:#617078;text-align:center;font-size:13px}

/* Org hierarchy */
.org-chart-card{padding:0;overflow:hidden}.org-chart-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:13px 15px;border-bottom:1px solid #edf2f4;background:linear-gradient(180deg,#fff,#fbfdfe)}
.org-chart-head h3{font-size:15.5px;margin:0}.org-chart-head p{font-size:13px;color:#60707a;margin:4px 0 0}.org-chart-head>span{font-size:12px;color:#5d6f7c;background:#eef4f7;border-radius:999px;padding:5px 8px;white-space:nowrap}
.org-tree{padding:12px 14px 18px;overflow-x:auto}.org-node{position:relative}.org-node+.org-node{margin-top:6px}
.org-person-card{min-height:64px;display:grid;grid-template-columns:28px 42px minmax(220px,1fr) auto;gap:8px;align-items:center;padding:7px 10px;border:1px solid #e2e9ed;border-radius:12px;background:#fff;box-shadow:0 4px 12px rgba(14,42,63,.03)}
.org-person-card:hover{border-color:#c9d9e2;background:#fbfdfe}.org-toggle,.org-toggle-spacer{width:26px;height:26px}.org-toggle{border:1px solid #dce5ea;border-radius:8px;background:#f4f8fa;color:#5a707f;font-size:15.5px;cursor:pointer;display:grid;place-items:center;line-height:1}.org-toggle:hover{background:#eaf3f7;color:var(--brand)}.org-avatar{width:42px;height:42px;font-size:12.5px}.org-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}
.org-person-main{min-width:0}.org-person-main b,.org-person-main span,.org-person-main small{display:block}.org-person-main b{font-size:13.5px}.org-person-main span{font-size:12.5px;color:#526a78;margin-top:2px}.org-person-main small{font-size:12px;color:#616e76;margin-top:2px}.org-person-meta{display:flex;align-items:center;gap:5px;justify-content:flex-end}.org-person-meta span,.org-person-meta em{font-style:normal;padding:4px 6px;border-radius:999px;background:#f0f4f6;color:#5f6e77;font-size:11.5px;font-weight:800}.org-person-meta span.online{background:#e8f6ef;color:#287d56}.org-children{margin:6px 0 0 41px;padding-left:16px;border-left:2px solid #dce5ea;display:grid;gap:6px;position:relative}.org-children>.org-node::before{content:"";position:absolute;left:-16px;top:31px;width:15px;height:2px;background:#dce5ea}.org-node.collapsed>.org-children{display:none}

/* Departments */
.department-grid{display:grid;grid-template-columns:repeat(2,minmax(300px,1fr));gap:9px}.department-card{padding:0}.department-card>header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid #edf2f4}.department-card>header small{display:block;font-size:12px;text-transform:none;letter-spacing:0;color:#627079;font-weight:800}.department-card>header h3{font-size:14.5px;margin:3px 0 0}.department-card>header strong{width:36px;height:36px;border-radius:11px;background:#eaf3f8;color:#327798;display:grid;place-items:center;font-size:14.5px}
.department-summary{padding:7px 14px;background:#f8fafc;border-bottom:1px solid #edf2f4}.department-summary span{font-size:12px;color:#607079}.department-people{display:grid}.department-people>a{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:8px;align-items:center;padding:8px 13px;border-bottom:1px solid #f0f3f5}.department-people>a:last-child{border-bottom:0}.department-people>a:hover{background:#f8fbfd}.department-people b,.department-people small{display:block}.department-people b{font-size:13px}.department-people small{font-size:12px;color:#616e77;margin-top:2px}.department-people em{font-style:normal;min-width:22px;height:22px;padding:0 5px;border-radius:999px;background:#edf3f6;color:#5c6f79;font-size:11.5px;font-weight:800;display:grid;place-items:center}

/* Employee drawer */
.employee-drawer-backdrop{z-index:145}.employee-drawer{height:100vh;width:min(620px,96vw);background:#f6f9fb;box-shadow:-30px 0 80px rgba(5,26,42,.24);overflow:hidden;animation:slideIn .2s ease both;display:grid;grid-template-rows:auto 1fr}.employee-drawer-head{min-height:88px;background:#fff;border-bottom:1px solid var(--line);padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px}.employee-drawer-person{display:flex;align-items:center;gap:11px;min-width:0}.employee-drawer-avatar{width:58px;height:58px;font-size:14.5px}.employee-drawer-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.employee-drawer-person>div{min-width:0}.employee-drawer-person small{display:block;font-size:12px;color:#5f6f79;text-transform:none;letter-spacing:0;font-weight:800}.employee-drawer-person h2{font-size:17px;margin:3px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.employee-drawer-person p{font-size:12.5px;color:#5d707b;margin:0}.employee-drawer-body{overflow:auto;padding:11px;display:grid;gap:9px;align-content:start}.employee-contact-hero{background:linear-gradient(135deg,#0c375c,#174d79);border-radius:15px;padding:11px;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:10px}.employee-presence{display:flex;align-items:center;gap:6px;font-size:12px;color:#c5d4df}.employee-presence i{width:8px;height:8px;border-radius:50%;background:#9daeb9}.employee-presence.online{color:#dff8ea}.employee-presence.online i{background:#43c382;box-shadow:0 0 0 4px rgba(67,195,130,.13)}.employee-quick-actions{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.employee-quick-actions form{margin:0}.employee-quick-actions .btn{min-height:34px;font-size:12px}.employee-quick-actions .btn:not(.primary){background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.18)}
.employee-detail-card,.employee-about-card,.employee-structure-editor{padding:11px}.employee-detail-card>.card-head,.employee-about-card>.card-head,.employee-structure-editor>.card-head{padding:0 0 9px;min-height:auto;background:transparent}.employee-detail-card>.card-head h3,.employee-about-card>.card-head h3,.employee-structure-editor>.card-head h3{font-size:13.5px}.employee-detail-card>.card-head small,.employee-structure-editor>.card-head small{font-size:12px;color:#617078}.employee-detail-card dl{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:0}.employee-detail-card dl>div{padding:8px;background:#f7fafc;border-radius:9px}.employee-detail-card dt{font-size:11.5px;color:#616e78;text-transform:none;letter-spacing:0;font-weight:800}.employee-detail-card dd{margin:3px 0 0;font-size:12.5px;color:#4d6574;word-break:break-word}.employee-detail-card dd span{padding:2px 5px;background:#eaf2f6;border-radius:999px;font-size:11.5px}.employee-detail-card dd a{color:var(--brand-2);font-weight:700}
.employee-reports{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:8px}.employee-reports>a{display:grid;grid-template-columns:30px minmax(0,1fr);gap:6px;align-items:center;padding:6px;border-radius:8px;background:#f6f9fb}.employee-reports b,.employee-reports small{display:block}.employee-reports b{font-size:12px}.employee-reports small{font-size:11.5px;color:#616f78;margin-top:2px}.employee-about-card p{font-size:12.5px;line-height:1.6;color:#536b79;margin:0}.employee-structure-editor form{display:grid;gap:8px}.employee-own-profile{margin-bottom:4px}

/* v1.13.0 — Readability pass across the whole portal */
body{font-size:15.5px}
.nav-item{font-size:14px}.me b{font-size:14px}.me small{font-size:13px}
.topbar small{font-size:13px}.topbar b{font-size:16px}.search-trigger{font-size:13.5px}
.page-title p{font-size:14px}.btn{font-size:13.5px}
.card-head h3{font-size:16px}.card-head a{font-size:13.5px}
.stat small,.stat span{font-size:13.5px}.row-link b,.event-row b{font-size:14.5px}.row-link small,.event-row small{font-size:13.5px}.row-link time{font-size:13.5px}
.badge{font-size:13px}.form-grid label,.field>span{font-size:13px}.form-grid small,.field small{font-size:12.5px}
.form-grid input,.form-grid textarea,.form-grid select,.inline-form input,.search-form input,.composer textarea,.login-form input,.field input,.field textarea,.field select{font-size:14px}
table th{font-size:12.5px}table td{font-size:14px}

/* Tasks readability */
.tasks-topline .eyebrow{font-size:12.5px!important}.tasks-topline p{font-size:14px!important}
.task-stats small{font-size:12.5px!important}.task-stats span{font-size:12.5px!important}
.task-quick-filters a,.task-scope-tabs a,.task-view-switch a{font-size:12.5px!important}
.task-filter-main select,.task-advanced-filters select{font-size:13px!important}
.task-card h3{font-size:14px!important;line-height:1.35}.task-card-top em{font-size:12px!important}.priority-badge{font-size:12px!important}.task-card-meta{font-size:12.5px!important}.task-card-footer{font-size:12px!important}.waiting-note{font-size:12px!important}
.task-list-row b{font-size:13.5px!important}.task-list-row small{font-size:12.5px!important}.task-deadline,.task-priority-label{font-size:12.5px!important}
.task-drawer-head small{font-size:12px!important}.task-meta-strip{font-size:12.5px!important}.task-section-head small{font-size:12px!important}.task-comments header b{font-size:12.5px!important}.task-comments header time,.task-comments p{font-size:12px!important}
.task-history b{font-size:12px!important}.task-history small{font-size:11.5px!important}

/* Approvals readability */
.approvals-topline .eyebrow{font-size:12.5px!important}.approvals-topline p{font-size:14px!important}
.approval-stats small{font-size:12.5px!important}.approval-stats span{font-size:12.5px!important}.approval-scope-tabs a{font-size:12.5px!important}
.approval-card-main small{font-size:12px!important}.approval-card-main h3{font-size:14px!important}.approval-card-main p{font-size:12.5px!important}.approval-card-route span{font-size:12.5px!important}.approval-card-state em{font-size:12px!important}
.stage-body>header b{font-size:13px!important}.stage-body>header small,.stage-body>footer{font-size:12px!important}.stage-actors b{font-size:12.5px!important}.stage-actors small{font-size:12px!important}
.approval-comments header b{font-size:12.5px!important}.approval-comments header time,.approval-comments p{font-size:12px!important}.approval-history b{font-size:12px!important}.approval-history small{font-size:11.5px!important}

/* Documents readability */
.documents-topline .eyebrow{font-size:12.5px!important}.documents-topline p{font-size:14px!important}
.document-scopes a,.document-folder-tree a{font-size:12.5px!important}.document-folder-head b{font-size:12px!important}.document-folder-head small{font-size:11.5px!important}
.document-breadcrumb{font-size:12.5px!important}.document-toolbar select{font-size:12.5px!important}
.document-folder-cards b{font-size:13px!important}.document-folder-cards small{font-size:12px!important}
.document-list-head{font-size:12px!important}.document-row b{font-size:13px!important}.document-row small{font-size:12px!important}.document-row time{font-size:12.5px!important}.document-version-badge{font-size:12px!important}
.document-meta-card small{font-size:12px!important}.document-meta-card b{font-size:13px!important}
.document-version-block>header b{font-size:12.5px!important}.document-version-block>header span,.document-version-block>header small{font-size:12px!important}.document-version-block>p,.document-version-block a b{font-size:12px!important}.document-version-block a small{font-size:11.5px!important}
.document-comments header b{font-size:12.5px!important}.document-comments header time,.document-comments p{font-size:12px!important}.document-detail-side>.card>.card-head h3{font-size:13px!important}.document-detail-side>.card>.card-head small{font-size:12px!important}.document-history b{font-size:12px!important}.document-history small{font-size:11.5px!important}

/* Messenger readability on desktop */
.chat-side-head small{font-size:12.5px}.chat-link-title b,.chat-person-main b{font-size:13.5px}.chat-link-main>small,.chat-person-main small{font-size:12.5px}
.chat-panel h3{font-size:15.5px}.chat-panel header small{font-size:13px}.msg{font-size:14px}.msg-name{font-size:13px}.msg time{font-size:12.5px}.composer-hint{font-size:12.5px}

/* Calendar & admin readability */
.calendar-topline .eyebrow{font-size:12.5px}.calendar-topline p{font-size:14px}.calendar-person b{font-size:13.5px}.calendar-person small{font-size:12.5px}.room-mini b{font-size:13px}.room-mini small{font-size:12.5px}
.admin-tabs a{font-size:13.5px}.admin-employee-row .employee-main b{font-size:14px!important}.admin-employee-row .employee-main small{font-size:13px!important}.permission-checks label{font-size:13px}
.route-builder-toolbar b{font-size:13px}.route-builder-toolbar small{font-size:12px}.route-stage-builder>header b{font-size:12.5px}.route-stage-builder>header small{font-size:12px}.route-actor select{font-size:12.5px}
.profile-company-card dt{font-size:12px}.profile-company-card dd{font-size:13px}.profile-hero p{font-size:13.5px}.profile-photo-editor small{font-size:12.5px}

@media(max-width:1250px){
  .employee-directory-grid{grid-template-columns:repeat(2,minmax(240px,1fr))}
  .employee-toolbar{display:block}.employee-toolbar form{margin-top:8px}.department-grid{grid-template-columns:1fr}
}
@media(max-width:850px){
  .employee-stats{grid-template-columns:1fr 1fr}.employee-toolbar form{flex-wrap:wrap}.employee-toolbar .task-search{flex:1 1 100%;min-width:0}
  .employee-directory-grid{grid-template-columns:1fr}.employee-drawer{width:min(620px,100vw)}
  .org-person-card{grid-template-columns:28px 42px minmax(190px,1fr)}.org-person-meta{grid-column:3;justify-content:flex-start}
}
@media(max-width:720px){
  body{font-size:14.5px}
  .employees-topline{display:block}.employees-topline h1{font-size:24px}.employees-topline p{font-size:13px}.employees-top-actions{margin-top:8px}
  .employee-stats{grid-template-columns:1fr 1fr;gap:7px}.employee-stats article{padding:10px}.employee-stats strong{font-size:22px}.employee-stats small{font-size:12px}.employee-stats span{font-size:12px}
  .employee-toolbar{padding:7px}.employee-view-tabs{overflow-x:auto;width:100%}.employee-view-tabs a{flex:0 0 auto;font-size:12.5px}.employee-toolbar form{display:grid;grid-template-columns:1fr 1fr}.employee-toolbar .task-search{grid-column:1/-1}.employee-toolbar select{width:100%;font-size:16px}.employee-toolbar form .btn{width:100%}.employee-reset{display:grid;place-items:center}
  .employee-directory-card{padding:10px}.employee-card-main{grid-template-columns:48px minmax(0,1fr)}.employee-avatar-wrap,.employee-card-avatar{width:48px;height:48px}.employee-card-main h3{font-size:13.5px}.employee-card-main p{font-size:12.5px}
  .org-chart-head{display:block;padding:10px}.org-chart-head h3{font-size:14px}.org-chart-head p{font-size:12.5px}.org-chart-head>span{display:inline-flex;margin-top:6px}.org-tree{padding:8px;min-width:580px}.org-children{margin-left:33px;padding-left:12px}.org-person-card{grid-template-columns:26px 38px minmax(190px,1fr) auto;padding:6px}.org-avatar{width:38px;height:38px}.org-person-main b{font-size:13px}.org-person-main span{font-size:12px}.org-person-main small{font-size:11.5px}.org-person-meta{grid-column:auto}
  .department-grid{grid-template-columns:1fr}.department-card>header{padding:10px}.department-people>a{padding:8px 10px}
  .employee-drawer{width:100vw;height:100dvh}.employee-drawer-head{min-height:72px;padding:9px}.employee-drawer-avatar{width:48px;height:48px}.employee-drawer-person h2{font-size:15.5px}.employee-drawer-body{padding:7px}.employee-contact-hero{display:block}.employee-quick-actions{justify-content:flex-start;margin-top:8px}.employee-quick-actions .btn{flex:1}.employee-detail-card dl{grid-template-columns:1fr}.employee-reports{grid-template-columns:1fr}
  .card-head h3{font-size:14.5px}.btn{font-size:13px}.page-title p{font-size:13px}
  .documents-topline p,.tasks-topline p,.approvals-topline p,.calendar-topline p{font-size:13px!important}
}
@media(max-width:390px){
  .employee-stats{grid-template-columns:1fr}.employee-toolbar form{grid-template-columns:1fr}.employee-toolbar .task-search{grid-column:auto}
}


/* v1.14.0 — People & Org Pro */
.employee-stats article.away-stat{background:#f8fbff;border-color:#d9e7f0}.employee-stats article.away-stat strong{color:#3a7398}
.people-insights{display:grid;grid-template-columns:1.35fr .85fr;gap:9px}.people-insights.single{grid-template-columns:1fr}.my-team-card,.birthday-card{overflow:hidden}.my-team-card .card-head,.birthday-card .card-head{padding:0 13px}.my-team-card .card-head small,.birthday-card .card-head small{font-size:12.5px;color:#627079}.my-team-list,.birthday-list{display:grid}.my-team-list>a,.birthday-list>a{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:8px;align-items:center;padding:8px 12px;border-bottom:1px solid #eef2f4}.my-team-list>a:last-child,.birthday-list>a:last-child{border-bottom:0}.my-team-list>a:hover,.birthday-list>a:hover{background:#f8fbfd}.my-team-list b,.my-team-list small,.birthday-list b,.birthday-list small{display:block}.my-team-list b,.birthday-list b{font-size:13px}.my-team-list small,.birthday-list small{font-size:12px;color:#606d77;margin-top:2px}.my-team-list>a>div{display:flex;gap:4px;justify-content:flex-end;flex-wrap:wrap}.my-team-list em{font-style:normal;padding:3px 5px;border-radius:999px;background:#eef3f6;color:#5d707b;font-size:11.5px;font-weight:800}.my-team-list em.danger{background:#fff0f0;color:#b84f4f}.birthday-list time{text-align:right;font-size:12.5px;font-weight:800;color:#536a78}.birthday-list time em{display:block;font-style:normal;font-size:11.5px;color:#616e76;font-weight:600;margin-top:2px}
.structure-health-card{overflow:hidden}.structure-health-card .card-head{padding:0 13px}.structure-health-card .card-head small{font-size:12.5px;color:#606e76}.structure-health-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;padding:10px}.structure-health-grid span{padding:9px;border-radius:10px;background:#f7fafc;color:#617078;font-size:12px;line-height:1.35}.structure-health-grid span b{display:block;font-size:17px;color:#405967;margin-bottom:3px}.structure-health-grid span.warn{background:#fff9ef;color:#8b6a36}.structure-health-grid span.warn b{color:#9a6c24}

.employee-availability{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:9px;padding:6px 8px;border-radius:9px;background:#eef5f8;color:#547181}.employee-availability span{font-size:12px;font-weight:800}.employee-availability small{font-size:11.5px;color:#5f707a}.employee-availability.away{background:#fff6e8;color:#956521}.employee-availability.remote{background:#eef2fb;color:#5d6f9b}.employee-availability.office{background:#edf7f1;color:#3f7f5d}
.employee-workload{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin-top:7px}.employee-workload span{display:block;padding:6px 4px;border-radius:8px;background:#f7fafc;text-align:center;color:#617079;font-size:11.5px}.employee-workload b{display:block;font-size:14px;color:#415966;margin-bottom:1px}.employee-workload span.danger{background:#fff0f0;color:#b64c4c}.employee-workload span.danger b{color:#b64c4c}
.responsibility-line{display:block!important;padding:7px 8px!important;margin-top:1px;background:#f7fafc;border-radius:8px;color:#5d7280!important;font-size:12px!important;line-height:1.45}

.org-person-meta span.away{background:#fff4e5;color:#9a6823}.org-person-meta span.remote{background:#edf1fb;color:#5f6f99}.org-person-meta span.office{background:#edf7f1;color:#33795a}.org-person-meta em.danger{background:#fff0f0;color:#b54a4a}
.org-root-drop{margin:8px 12px 0;padding:8px 10px;border:1px dashed #cbd8e0;border-radius:10px;color:#5e6e78;font-size:12px;text-align:center;background:#fafcfd;transition:.14s}.org-root-drop.active{background:#eaf4f8;border-color:#6ea4c1;color:#2f718f}
.org-draggable{cursor:grab}.org-draggable:active{cursor:grabbing}.org-dragging{opacity:.45}.org-drop-target{outline:2px solid #4a8fb3!important;outline-offset:2px;background:#f1f8fb!important}

.department-purpose{padding:9px 13px;background:#fbfdfe;border-bottom:1px solid #eef2f4}.department-purpose span{display:block;font-size:12px;color:#5e6e78}.department-purpose p{margin:6px 0 0;font-size:12px;line-height:1.5;color:#526b79}.department-person-load{display:flex;gap:4px;justify-content:flex-end}.department-person-load em{font-style:normal;padding:3px 5px;border-radius:999px;background:#eef3f6;color:#5e707b;font-size:11.5px;font-weight:800}.department-person-load em.danger{background:#fff0f0;color:#b34c4c}.department-admin-form{padding:10px 12px;border-top:1px solid #edf2f4;background:#f9fbfc;display:grid;grid-template-columns:1fr 1.4fr auto;gap:7px;align-items:end}.department-admin-form .field{min-width:0}.department-admin-form textarea{min-height:58px}

.employee-load-card{padding:11px}.employee-load-card>.card-head{padding:0 0 9px;min-height:auto;background:transparent}.employee-load-card>.card-head h3{font-size:13.5px}.employee-load-card>.card-head small{font-size:12px;color:#606d77}.employee-load-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:5px}.employee-load-grid>a,.employee-load-grid>span{padding:9px 6px;border-radius:9px;background:#f6f9fb;text-align:center}.employee-load-grid strong{display:block;font-size:18px;letter-spacing:-.04em;color:#415968}.employee-load-grid span,.employee-load-grid small{display:block;font-size:11.5px;color:#606f78;margin-top:2px}.employee-load-grid>a.danger{background:#fff1f1}.employee-load-grid>a.danger strong,.employee-load-grid>a.danger span{color:#b84c4c}
.employee-substitute-card{padding:10px 11px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;background:#fff9ef;border-color:#ecdcbf}.employee-substitute-card>div:first-child b,.employee-substitute-card>div:first-child small{display:block}.employee-substitute-card>div:first-child b{font-size:12.5px;color:#8a6124}.employee-substitute-card>div:first-child small{font-size:12px;color:#796a55;margin-top:2px}.employee-substitute-card>div:not(:first-child){padding-left:10px;border-left:1px solid #eadcc5}.employee-substitute-card span,.employee-substitute-card b{display:block}.employee-substitute-card span{font-size:11.5px;color:#796b55;text-transform:none;letter-spacing:0}.employee-substitute-card b{font-size:12px;margin-top:3px;color:#705a38}
.employee-reports>a{grid-template-columns:30px minmax(0,1fr) auto}.employee-reports>a>em{font-style:normal;font-size:11.5px;color:#606f77;padding:3px 5px;background:#edf3f6;border-radius:999px}

.profile-availability-card{padding:14px}.profile-availability-card>.card-head{padding:0 0 11px}.profile-availability-card>.card-head h3{margin:0;font-size:13.5px}.profile-availability-card>.card-head small{font-size:12px;color:#606f79}.profile-availability-form{display:grid;gap:8px}.profile-field-muted{opacity:.62}
.onboarding-toggle{display:flex!important;grid-column:1/-1!important;align-items:flex-start;gap:9px!important;padding:10px;border:1px solid #e1e8ed;border-radius:11px;background:#f7fafc;text-transform:none!important;letter-spacing:0!important;cursor:pointer}.onboarding-toggle input{width:16px!important;height:16px;margin-top:2px;accent-color:var(--brand)}.onboarding-toggle span{display:block}.onboarding-toggle b,.onboarding-toggle small{display:block}.onboarding-toggle b{font-size:13px;color:#455e6d}.onboarding-toggle small{font-size:12px!important;margin-top:2px;color:#617078!important}

/* Readability refinement after the first pass */
body{line-height:1.45}
.content p,.content small,.content span{letter-spacing:0}
.task-card h3,.approval-card-main h3,.document-row b,.employee-card-main h3{font-weight:750}
.nav-item{font-weight:750}
@media(min-width:1280px){
  .content{padding-top:22px}
  .card-head{min-height:60px}
}
@media(max-width:1100px){
  .people-insights{grid-template-columns:1fr}
  .structure-health-grid{grid-template-columns:repeat(3,1fr)}
  .department-admin-form{grid-template-columns:1fr}
}
@media(max-width:720px){
  .people-insights{grid-template-columns:1fr}.structure-health-grid{grid-template-columns:1fr 1fr}.my-team-list>a,.birthday-list>a{padding:8px 9px}
  .employee-workload{grid-template-columns:1fr 1fr}.employee-load-grid{grid-template-columns:1fr 1fr}.employee-substitute-card{grid-template-columns:1fr}.employee-substitute-card>div:not(:first-child){border-left:0;padding-left:0;border-top:1px solid #eadcc5;padding-top:7px}
  .department-admin-form{grid-template-columns:1fr}.department-person-load{display:none}.profile-availability-card{padding:11px}
}
@media(max-width:390px){
  .structure-health-grid{grid-template-columns:1fr}.employee-load-grid{grid-template-columns:1fr 1fr}
}


/* v1.15.0 — Bulk Employee Import */
.force-password-banner{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px;padding:13px 15px;border:1px solid #ead59d;border-radius:14px;background:#fff9e8;box-shadow:0 6px 18px rgba(116,84,28,.06)}
.force-password-banner b,.force-password-banner span{display:block}.force-password-banner b{font-size:14px;color:#73531d}.force-password-banner span{font-size:12.5px;color:#8a754f;margin-top:3px;line-height:1.45}

.employee-import-admin{padding:14px;margin:12px 0}.employee-import-admin>.card-head{padding:0 0 12px;min-height:auto}.employee-import-admin>.card-head h3{font-size:15.5px;margin:0}.employee-import-admin>.card-head small{font-size:12.5px;color:#5f6f79}
.employee-import-intro{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:11px}.employee-import-intro>div{display:grid;grid-template-columns:34px minmax(0,1fr);gap:8px;align-items:start;padding:10px;border:1px solid #e5ebef;border-radius:12px;background:#f8fbfc}.employee-import-intro>div>strong{width:34px;height:34px;border-radius:10px;background:#e8f2f7;color:#2f7397;display:grid;place-items:center;font-size:14px}.employee-import-intro b,.employee-import-intro small{display:block}.employee-import-intro b{font-size:13px}.employee-import-intro small{font-size:12px;color:#5f6f78;line-height:1.45;margin-top:2px}.employee-import-intro code{padding:2px 5px;border-radius:5px;background:#eaf0f3;color:#32586f;font-size:12px;font-weight:800}

.employee-import-upload{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:stretch;margin-bottom:10px}.employee-import-drop{position:relative;display:grid;grid-template-columns:38px minmax(0,1fr);gap:9px;align-items:center;min-height:62px;padding:9px 11px;border:1px dashed #bdcdd7;border-radius:12px;background:#fbfdfe;cursor:pointer}.employee-import-drop:hover{border-color:#7ca8bf;background:#f5fafc}.employee-import-drop>span{width:38px;height:38px;border-radius:10px;background:#eaf3f7;color:#34789b;display:grid;place-items:center}.employee-import-drop b,.employee-import-drop small{display:block}.employee-import-drop b{font-size:13px}.employee-import-drop small{font-size:12px;color:#617078;margin-top:2px}.employee-import-drop input{position:absolute;inset:0;opacity:0;cursor:pointer}

.employee-import-preview{border:1px solid #dae5eb;border-radius:14px;overflow:hidden;background:#fff}.employee-import-preview.valid{border-color:#c8e1d3}.employee-import-preview.invalid{border-color:#e6c9c9}.employee-import-preview-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;background:#f8fbfc;border-bottom:1px solid #e8eef1}.employee-import-preview-head small{font-size:11.5px;text-transform:none;letter-spacing:0;color:#607078;font-weight:800}.employee-import-preview-head h4{font-size:13.5px;margin:2px 0}.employee-import-preview-head>div:first-child>span{font-size:11.5px;color:#616e76}.employee-import-summary{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.employee-import-summary span{padding:5px 7px;border-radius:999px;background:#eef3f6;color:#5d707c;font-size:11.5px}.employee-import-summary span b{font-size:12.5px;margin-right:2px}.employee-import-summary span.create{background:#e8f5ee;color:#337a57}

.employee-import-errors,.employee-import-warnings{margin:9px 10px 0;padding:9px 10px;border-radius:10px;display:grid;gap:3px}.employee-import-errors{background:#fff1f1;color:#9f4545;border:1px solid #efd2d2}.employee-import-warnings{background:#fff9ed;color:#85652f;border:1px solid #eadcc0}.employee-import-errors>b,.employee-import-warnings>b{font-size:12.5px;margin-bottom:2px}.employee-import-errors span,.employee-import-warnings span{font-size:12px;line-height:1.4}.employee-import-errors em{font-size:11.5px;font-style:normal;margin-top:3px}

.employee-import-table-wrap{overflow:auto;margin-top:9px;border-top:1px solid #edf2f4;border-bottom:1px solid #edf2f4}.employee-import-table{width:100%;min-width:920px;border-collapse:collapse}.employee-import-table th{padding:8px 9px;background:#f7fafc;text-align:left;color:#617078;text-transform:none;letter-spacing:0;font-size:11.5px;border-bottom:1px solid #e9eef1}.employee-import-table td{padding:8px 9px;border-bottom:1px solid #eef2f4;font-size:12px;color:#526a78;vertical-align:top}.employee-import-table tr:last-child td{border-bottom:0}.employee-import-table td b,.employee-import-table td small{display:block}.employee-import-table td b{font-size:12.5px}.employee-import-table td small{font-size:11.5px;color:#627079;margin-top:2px}.import-action{display:inline-flex;padding:4px 6px;border-radius:999px;font-size:11.5px;font-weight:800}.import-action.create{background:#e7f5ed;color:#327853}.import-action.update{background:#eaf3f8;color:#337798}.import-action.protected{background:#f0f2f4;color:#656f75}.employee-import-more{padding:7px 10px;background:#fafcfd;color:#617079;font-size:11.5px}

.employee-import-confirm{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;background:#fbfdfe}.employee-import-confirm b,.employee-import-confirm small{display:block}.employee-import-confirm b{font-size:13px}.employee-import-confirm small{font-size:12px;color:#5f6f78;line-height:1.45;margin-top:2px}.employee-import-confirm-actions{display:flex;align-items:center;gap:6px}.employee-import-confirm-actions form{margin:0;display:flex;align-items:center;gap:7px}.import-onboarding{display:flex;align-items:center;gap:5px;padding:0 4px;color:#5b6e79;font-size:11.5px;white-space:nowrap}.import-onboarding input{accent-color:var(--brand)}

.employee-import-history{margin-top:12px;border-top:1px solid #e8eef1;padding-top:10px}.employee-import-history>.card-head{padding:0 0 7px;min-height:auto}.employee-import-history h4{font-size:13px;margin:0}.employee-import-history .card-head small{font-size:11.5px;color:#616e78}.employee-import-history>div:last-child{display:grid}.employee-import-history article{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 2px;border-bottom:1px solid #eef2f4}.employee-import-history article:last-child{border-bottom:0}.employee-import-history article b,.employee-import-history article small{display:block}.employee-import-history article b{font-size:12px}.employee-import-history article small{font-size:11.5px;color:#606d75;margin-top:2px}.employee-import-history article>div{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}.employee-import-history em{font-style:normal;padding:3px 5px;border-radius:999px;background:#eef3f6;color:#5d707b;font-size:11.5px}

@media(max-width:900px){
  .employee-import-intro{grid-template-columns:1fr}.employee-import-preview-head,.employee-import-confirm{display:block}.employee-import-summary{justify-content:flex-start;margin-top:7px}.employee-import-confirm-actions{margin-top:9px;justify-content:flex-end}
}
@media(max-width:720px){
  .force-password-banner{display:block}.force-password-banner .btn{margin-top:8px;width:100%}
  .employee-import-admin{padding:10px}.employee-import-admin>.card-head{display:block}.employee-import-admin>.card-head .btn{margin-top:8px;width:100%}
  .employee-import-upload{grid-template-columns:1fr}.employee-import-upload>.btn{width:100%}
  .employee-import-confirm-actions{display:grid;grid-template-columns:1fr}.employee-import-confirm-actions form{display:grid;grid-template-columns:1fr}.employee-import-confirm-actions .btn{width:100%}.import-onboarding{white-space:normal;padding:6px 0}
  .employee-import-history article{display:block}.employee-import-history article>div{justify-content:flex-start;margin-top:5px}
}

.employee-import-templates{display:flex;gap:6px;align-items:center}.employee-import-templates .btn{white-space:nowrap}@media(max-width:720px){.employee-import-templates{display:grid;grid-template-columns:1fr 1fr;margin-top:8px}.employee-import-admin>.card-head .employee-import-templates .btn{margin-top:0;width:100%}}


/* v1.16.0 — Executive Dashboard */
.executive-dashboard{display:grid;gap:12px}
.executive-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px;border-radius:18px;background:linear-gradient(135deg,#0c375c 0%,#164f7a 68%,#1d5d8a 100%);color:#fff;box-shadow:0 16px 36px rgba(9,44,72,.16);overflow:hidden;position:relative}
.executive-hero::after{content:"";position:absolute;width:270px;height:270px;border-radius:50%;right:-90px;top:-150px;border:1px solid rgba(255,255,255,.12);box-shadow:0 0 0 40px rgba(255,255,255,.025),0 0 0 80px rgba(255,255,255,.018)}
.executive-hero-copy{position:relative;z-index:1;min-width:0}.executive-hero-copy>span{font-size:12.5px;text-transform:none;letter-spacing:0;color:#aecaDC;font-weight:800}.executive-hero-copy h1{font-size:28px;letter-spacing:-.045em;margin:5px 0 4px}.executive-hero-copy p{font-size:13.5px;color:#ccdae4;margin:0;line-height:1.5}
.executive-quick-actions{position:relative;z-index:2;display:flex;gap:7px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.executive-quick-actions>a{min-width:78px;height:68px;padding:8px;border:1px solid rgba(255,255,255,.13);border-radius:13px;background:rgba(255,255,255,.08);color:#fff;display:grid;place-items:center;text-align:center;backdrop-filter:blur(5px);transition:.14s}.executive-quick-actions>a:hover{background:rgba(255,255,255,.14);transform:translateY(-1px)}.executive-quick-actions span{width:26px;height:26px;display:grid;place-items:center}.executive-quick-actions .ui-icon{width:20px;height:20px}.executive-quick-actions b{font-size:12px}

.executive-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.executive-kpis>a{background:#fff;border:1px solid var(--line);border-radius:15px;padding:12px 14px;box-shadow:var(--shadow-sm);transition:.14s}.executive-kpis>a:hover{border-color:#c8d8e1;box-shadow:0 10px 24px rgba(14,42,63,.07);transform:translateY(-1px)}.executive-kpis small,.executive-kpis span{display:block}.executive-kpis small{font-size:12px;text-transform:none;letter-spacing:0;color:#606f78;font-weight:800}.executive-kpis strong{display:block;font-size:26px;letter-spacing:-.05em;margin:4px 0 2px;color:#193f5c}.executive-kpis span{font-size:12.5px;color:#616e77}.executive-kpis>a.danger{background:#fff8f8;border-color:#eccdcd}.executive-kpis>a.danger strong{color:#ba4949}.executive-kpis>a.attention{background:#f6fbfe;border-color:#cfe1ea}.executive-kpis>a.attention strong{color:#27779e}

.executive-primary-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:9px}.executive-secondary-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.executive-attention,.executive-today,.executive-documents,.executive-activity,.executive-team{overflow:hidden}.executive-attention>.card-head,.executive-today>.card-head,.executive-documents>.card-head,.executive-activity>.card-head,.executive-team>.card-head{padding:0 13px}.executive-attention .card-head h3,.executive-today .card-head h3,.executive-documents .card-head h3,.executive-activity .card-head h3,.executive-team .card-head h3{font-size:14.5px}.executive-attention .card-head small,.executive-today .card-head small,.executive-documents .card-head small,.executive-activity .card-head small,.executive-team .card-head small{font-size:12px;color:#82919a}
.executive-live-dot{width:8px;height:8px;border-radius:50%;background:#3ba675;box-shadow:0 0 0 5px rgba(59,166,117,.1)}

.executive-attention-list{display:grid}.executive-attention-list>a{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:8px;align-items:center;padding:9px 12px;border-top:1px solid #eef2f4;transition:.12s}.executive-attention-list>a:hover{background:#f8fbfd}.attention-icon{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:#eef3f6;color:#5c717c;font-size:13.5px;font-weight:900}.executive-attention-list>a.danger .attention-icon{background:#ffeded;color:#b94a4a}.executive-attention-list>a.warning .attention-icon{background:#fff3df;color:#a37126}.executive-attention-list>a.info .attention-icon{background:#eaf3f8;color:#32799c}.executive-attention-list b,.executive-attention-list small{display:block}.executive-attention-list b{font-size:13px}.executive-attention-list small{font-size:12px;color:#627079;margin-top:2px}.executive-attention-list em{font-style:normal;max-width:125px;text-align:right;font-size:11.5px;color:#607079}.executive-attention-list>a.danger em{color:#b74a4a;font-weight:800}.executive-attention footer{display:flex;gap:12px;padding:8px 12px;border-top:1px solid #eef2f4;background:#fbfdfe}.executive-attention footer a{font-size:12px;font-weight:800;color:#4e7489}

.executive-timeline{display:grid;padding:2px 0 8px}.executive-timeline>a{display:grid;grid-template-columns:42px 12px minmax(0,1fr);gap:7px;align-items:start;padding:7px 12px;position:relative}.executive-timeline>a:not(:last-child)::after{content:"";position:absolute;left:59px;top:25px;bottom:-8px;width:1px;background:#e2e9ed}.executive-timeline time{font-size:12.5px;font-weight:800;color:#536d7b;padding-top:2px}.executive-timeline i{z-index:1;width:10px;height:10px;border-radius:50%;margin-top:3px;background:#6b96ad;border:2px solid #fff;box-shadow:0 0 0 1px #bcd0dc}.executive-timeline i.task{background:#d59a3b;box-shadow:0 0 0 1px #e3c58f}.executive-timeline b,.executive-timeline small{display:block}.executive-timeline b{font-size:12.5px}.executive-timeline small{font-size:12px;color:#616e77;margin-top:2px}.executive-timeline>a.past{opacity:.6}

.executive-empty{display:grid;grid-template-columns:34px minmax(0,1fr);gap:8px;align-items:center;padding:16px 12px}.executive-empty.compact{padding:13px 12px}.executive-empty>span{width:32px;height:32px;border-radius:10px;background:#edf6f1;color:#36805a;display:grid;place-items:center;font-size:14.5px;font-weight:900}.executive-empty b,.executive-empty small{display:block}.executive-empty b{font-size:12.5px}.executive-empty small{font-size:12px;color:#616e77;margin-top:2px}

.executive-team-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0}.executive-team-grid>a{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:8px;align-items:center;padding:9px 12px;border-top:1px solid #eef2f4}.executive-team-grid>a:nth-child(odd){border-right:1px solid #eef2f4}.executive-team-grid>a:hover{background:#f8fbfd}.executive-team-grid>a.has-risk{background:#fffafa}.executive-team-avatar{width:40px;height:40px;font-size:12.5px}.executive-team-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.team-person b,.team-person small,.team-person span{display:block}.team-person b{font-size:12.5px}.team-person small{font-size:11.5px;color:#627079;margin-top:1px}.team-person span{width:max-content;margin-top:4px;padding:2px 5px;border-radius:999px;font-size:10.5px;font-weight:800}.team-person span.office{background:#eaf6ef;color:#367b58}.team-person span.remote{background:#edf1fb;color:#5d6e98}.team-person span.away{background:#fff3df;color:#9a6925}.team-load{display:flex;gap:3px;justify-content:flex-end;flex-wrap:wrap;max-width:155px}.team-load span{padding:3px 5px;border-radius:999px;background:#eef3f6;color:#5e6e78;font-size:10.5px}.team-load span b{font-size:11.5px}.team-load span.danger{background:#ffecec;color:#b64a4a}

.executive-document-list,.executive-activity-list{display:grid}.executive-document-list>a,.executive-activity-list>a{display:grid;align-items:center;gap:7px;padding:8px 11px;border-top:1px solid #eef2f4}.executive-document-list>a{grid-template-columns:30px minmax(0,1fr) auto auto}.executive-activity-list>a{grid-template-columns:10px minmax(0,1fr) auto}.executive-document-list>a:hover,.executive-activity-list>a:hover{background:#f8fbfd}.executive-doc-icon{width:30px;height:30px;border-radius:8px;background:#eaf3f7;color:#34799b;display:grid;place-items:center}.executive-document-list b,.executive-document-list small,.executive-activity-list b,.executive-activity-list small{display:block}.executive-document-list b,.executive-activity-list b{font-size:12.5px}.executive-document-list small,.executive-activity-list small{font-size:11.5px;color:#616f78;margin-top:2px}.executive-document-list time,.executive-activity-list time{font-size:11.5px;color:#616e76;white-space:nowrap}.executive-activity-list i{width:8px;height:8px;border-radius:50%;background:#6f95aa}.executive-activity-list i.task{background:#668faa}.executive-activity-list i.approval{background:#d39a3f}.executive-activity-list i.document{background:#4c9b70}

@media(max-width:1150px){
  .executive-primary-grid,.executive-secondary-grid{grid-template-columns:1fr}.executive-team-grid{grid-template-columns:1fr}.executive-team-grid>a:nth-child(odd){border-right:0}
  .executive-hero{align-items:flex-start}.executive-quick-actions{max-width:390px}
}
@media(max-width:850px){
  .executive-hero{display:block}.executive-quick-actions{margin-top:12px;justify-content:flex-start;max-width:none}.executive-kpis{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
  .executive-dashboard{gap:8px}.executive-hero{padding:14px;border-radius:16px}.executive-hero-copy h1{font-size:22px}.executive-hero-copy p{font-size:12.5px}.executive-hero-copy>span{font-size:11.5px}
  .executive-quick-actions{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;overflow-x:auto}.executive-quick-actions>a{min-width:62px;height:58px;padding:6px}.executive-quick-actions b{font-size:11.5px}.executive-quick-actions .ui-icon{width:18px;height:18px}
  .executive-kpis{gap:6px}.executive-kpis>a{padding:9px 10px}.executive-kpis strong{font-size:21px}.executive-kpis small{font-size:11.5px}.executive-kpis span{font-size:11.5px}
  .executive-attention-list>a{grid-template-columns:30px minmax(0,1fr);padding:8px 9px}.executive-attention-list em{grid-column:2;text-align:left;max-width:none}.executive-timeline>a{padding-left:9px;padding-right:9px}
  .executive-document-list>a{grid-template-columns:28px minmax(0,1fr) auto}.executive-document-list time{display:none}.executive-activity-list>a{grid-template-columns:9px minmax(0,1fr)}.executive-activity-list time{grid-column:2}
  .executive-team-grid>a{grid-template-columns:38px minmax(0,1fr)}.team-load{grid-column:2;justify-content:flex-start;max-width:none}.executive-team-avatar{width:38px;height:38px}
}
@media(max-width:390px){
  .executive-kpis{grid-template-columns:1fr 1fr}.executive-quick-actions{grid-template-columns:repeat(3,1fr)}.executive-hero::after{display:none}
}


/* v1.16.1 — Exchange Connection Test */
.exchange-integration-card{padding:14px;margin:12px 0;scroll-margin-top:90px}.exchange-integration-card>.card-head{padding:0 0 12px;min-height:auto}.exchange-integration-card>.card-head h3{font-size:15.5px;margin:0}.exchange-integration-card>.card-head small{font-size:12.5px;color:#5f6f78;line-height:1.45}.exchange-test-badge{padding:5px 8px;border-radius:999px;background:#eef4f7;color:#577486;font-size:11.5px;font-weight:800;white-space:nowrap}
.exchange-safety-note{display:grid;grid-template-columns:38px minmax(0,1fr);gap:9px;align-items:start;padding:10px 11px;border:1px solid #d9e7ee;border-radius:12px;background:#f7fbfd;margin-bottom:10px}.exchange-safety-note>span{width:38px;height:38px;border-radius:10px;background:#e8f2f7;color:#33799c;display:grid;place-items:center}.exchange-safety-note b{display:block;font-size:13px;color:#405b6a}.exchange-safety-note p{font-size:12px;color:#5e6e78;line-height:1.55;margin:3px 0 0}
.exchange-capabilities{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-bottom:10px}.exchange-capabilities>div{position:relative;padding:9px 9px 9px 25px;border:1px solid #e2e9ed;border-radius:10px;background:#fafcfd}.exchange-capabilities>div>span{position:absolute;left:10px;top:12px;width:8px;height:8px;border-radius:50%;background:#aebbc3}.exchange-capabilities>div.ok>span{background:#3aa36f;box-shadow:0 0 0 4px rgba(58,163,111,.09)}.exchange-capabilities>div.bad{background:#fff7f7;border-color:#ebd0d0}.exchange-capabilities>div.bad>span{background:#c45a5a}.exchange-capabilities b,.exchange-capabilities small{display:block}.exchange-capabilities b{font-size:12px}.exchange-capabilities small{font-size:11.5px;color:#627079;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.exchange-test-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,.8fr);gap:10px;align-items:start}.exchange-test-form{display:grid;gap:8px;padding:12px;border:1px solid #e3eaee;border-radius:13px;background:#fff}.exchange-test-form .field small{font-size:11.5px;color:#627079}.exchange-password-line{display:grid;grid-template-columns:minmax(0,1fr) 38px;gap:5px}.exchange-password-line input{min-width:0}.exchange-password-line .icon-action{height:38px;width:38px}
.exchange-test-result{min-height:100%;border:1px solid #e2e9ed;border-radius:13px;background:#fafcfd;overflow:hidden}.exchange-test-result.success{border-color:#bcdcc9;background:#f8fcfa}.exchange-test-result.error{border-color:#e6caca;background:#fffafa}.exchange-result-empty{min-height:280px;display:grid;place-items:center;align-content:center;text-align:center;padding:24px}.exchange-result-empty>span{width:50px;height:50px;border-radius:15px;background:#eaf3f7;color:#397a9a;display:grid;place-items:center;font-size:20px}.exchange-result-empty h4{font-size:14px;margin:10px 0 4px}.exchange-result-empty p{max-width:330px;font-size:12px;line-height:1.55;color:#5f6f78;margin:0}
.exchange-result-head{display:grid;grid-template-columns:38px minmax(0,1fr);gap:9px;align-items:start;padding:12px;border-bottom:1px solid #e8eef1}.exchange-result-head>span{width:38px;height:38px;border-radius:11px;background:#edf2f5;color:#5c717c;display:grid;place-items:center;font-size:17px;font-weight:900}.exchange-test-result.success .exchange-result-head>span{background:#e3f4ea;color:#307c55}.exchange-test-result.error .exchange-result-head>span{background:#ffeded;color:#b94b4b}.exchange-result-head small{display:block;font-size:11.5px;text-transform:none;letter-spacing:0;color:#607079;font-weight:800}.exchange-result-head h4{font-size:13px;line-height:1.45;margin:3px 0;color:#405967}
.exchange-result-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;padding:9px 10px}.exchange-result-meta>div{padding:8px;border-radius:9px;background:#fff;border:1px solid #e9eef1}.exchange-result-meta small,.exchange-result-meta b{display:block}.exchange-result-meta small{font-size:10.5px;color:#616e77;text-transform:none;letter-spacing:0}.exchange-result-meta b{font-size:12px;color:#536a78;margin-top:3px;word-break:break-word}
.exchange-server-version{margin:0 10px 9px;padding:8px 9px;border-radius:9px;background:#edf5f8}.exchange-server-version small,.exchange-server-version b{display:block}.exchange-server-version small{font-size:10.5px;color:#5e6f78}.exchange-server-version b{font-size:12px;color:#486979;margin-top:2px}
.exchange-folder-results{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;padding:0 10px 10px}.exchange-folder-results>div{padding:9px;border-radius:9px;background:#fff;border:1px solid #dfe9e4}.exchange-folder-results span,.exchange-folder-results b,.exchange-folder-results small{display:block}.exchange-folder-results span{font-size:10.5px;text-transform:none;letter-spacing:0;color:#5e6f76}.exchange-folder-results b{font-size:12.5px;color:#405b69;margin-top:3px}.exchange-folder-results small{font-size:11.5px;color:#5f6e76;margin-top:2px}
.exchange-result-help{margin:0 10px 10px;padding:9px;border-radius:9px;background:#fff1f1;color:#8f4b4b}.exchange-result-help b{display:block;font-size:12px}.exchange-result-help p{font-size:11.5px;line-height:1.45;margin:3px 0 0}

@media(max-width:1050px){.exchange-test-layout{grid-template-columns:1fr}.exchange-capabilities{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.exchange-integration-card{padding:10px}.exchange-integration-card>.card-head{display:block}.exchange-test-badge{display:inline-flex;margin-top:7px}.exchange-capabilities{grid-template-columns:1fr 1fr}.exchange-result-meta{grid-template-columns:1fr}.exchange-folder-results{grid-template-columns:1fr}.exchange-test-layout{grid-template-columns:1fr}}
@media(max-width:390px){.exchange-capabilities{grid-template-columns:1fr}.exchange-safety-note{grid-template-columns:32px minmax(0,1fr)}.exchange-safety-note>span{width:32px;height:32px}}

/* v1.16.2 — Exchange diagnostics hotfix */
.exchange-result-meta{grid-template-columns:repeat(3,1fr)}
.exchange-result-meta>div:nth-child(6) b{font-size:10.5px;word-break:break-all}
.exchange-attempts{margin:0 10px 9px;padding:9px;border:1px solid #e4e9ed;border-radius:9px;background:#fff}
.exchange-attempts>b{display:block;font-size:12px;margin-bottom:5px;color:#536a78}
.exchange-attempts>span{display:grid;grid-template-columns:90px minmax(0,1fr) auto;gap:6px;align-items:center;padding:4px 0;border-top:1px solid #f0f3f5}
.exchange-attempts>span:first-of-type{border-top:0}
.exchange-attempts em{font-style:normal;font-size:11.5px;color:#5a707d}
.exchange-attempts code{font-size:11.5px;color:#526a78;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.exchange-attempts strong{font-size:11.5px;color:#617078}
@media(max-width:720px){.exchange-result-meta{grid-template-columns:1fr 1fr}.exchange-attempts>span{grid-template-columns:74px minmax(0,1fr)}.exchange-attempts strong{grid-column:2}}


/* v1.16.3 — Mail Core */
.mail-page{display:grid;gap:12px}.mail-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.mail-topline .eyebrow{font-size:12.5px;letter-spacing:0;text-transform:none;color:#5e6f79;font-weight:800}.mail-topline h1{font-size:30px;letter-spacing:-.045em;margin:5px 0}.mail-topline p{font-size:14px;color:var(--muted);margin:0}
.mail-connect-card{padding:16px}.mail-connect-copy{display:grid;grid-template-columns:48px minmax(0,1fr);gap:11px;align-items:start}.mail-connect-copy>span{width:48px;height:48px;border-radius:14px;background:#e8f2f7;color:#347a9d;display:grid;place-items:center}.mail-connect-copy small{font-size:12px;text-transform:none;letter-spacing:0;color:#616e77;font-weight:800}.mail-connect-copy h2{font-size:18px;margin:3px 0 4px}.mail-connect-copy p{font-size:12.5px;line-height:1.55;color:#5e6f79;margin:0}
.mail-security-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:12px 0}.mail-security-grid>div{padding:10px;border:1px solid #e3eaee;border-radius:11px;background:#f8fbfc}.mail-security-grid b,.mail-security-grid small{display:block}.mail-security-grid b{font-size:12.5px;color:#455f6e}.mail-security-grid small{font-size:12px;color:#5f7079;line-height:1.45;margin-top:3px}.mail-connect-form{display:grid;gap:8px;max-width:760px}.mail-connect-form .field small{font-size:11.5px;color:#627079}

.mail-error-banner{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid #e7cbcb;border-radius:12px;background:#fff6f6}.mail-error-banner b,.mail-error-banner span{display:block}.mail-error-banner b{font-size:12.5px;color:#9b4545}.mail-error-banner span{font-size:12px;color:#896464;margin-top:2px}.mail-reconnect{padding:12px}.mail-reconnect>.card-head{padding:0 0 9px;min-height:auto}.mail-reconnect h3{font-size:13.5px}

.mail-layout{display:grid;grid-template-columns:220px minmax(300px,400px) minmax(0,1fr);gap:9px;min-height:650px}.mail-sidebar,.mail-list-panel,.mail-reader{overflow:hidden}.mail-sidebar{padding:10px;display:grid;align-content:start;gap:10px}.mail-account{display:grid;grid-template-columns:32px minmax(0,1fr) 8px;gap:7px;align-items:center;padding:8px;border-radius:10px;background:#f7fafc}.mail-account b,.mail-account small{display:block}.mail-account b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mail-account small{font-size:11.5px;color:#627079;margin-top:2px}.mail-account>i{width:8px;height:8px;border-radius:50%;background:#3ba56f;box-shadow:0 0 0 4px rgba(59,165,111,.08)}
.mail-folders{display:grid;gap:3px}.mail-folders>a{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:6px;align-items:center;min-height:38px;padding:0 8px;border-radius:9px;color:#5b6f7b}.mail-folders>a:hover{background:#f2f7f9}.mail-folders>a.active{background:#eaf3f7;color:#2e7092}.mail-folders>a>span{font-size:14.5px}.mail-folders b{font-size:12.5px}.mail-folders em{min-width:23px;height:20px;border-radius:999px;background:#fff;display:grid;place-items:center;font-size:11.5px;font-style:normal;font-weight:800}.mail-private-note{padding:9px;border:1px solid #e4eaee;border-radius:10px;background:#fbfdfe}.mail-private-note b,.mail-private-note small{display:block}.mail-private-note b{font-size:12px}.mail-private-note small{font-size:11.5px;color:#606f78;line-height:1.45;margin-top:2px}

.mail-list-panel{display:grid;grid-template-rows:auto 1fr}.mail-list-head{display:flex;align-items:center;justify-content:space-between;padding:10px 11px;border-bottom:1px solid #edf2f4}.mail-list-head h3{font-size:14px;margin:0}.mail-list-head small{font-size:11.5px;color:#616e77}.mail-message-list{overflow:auto}.mail-message-list>a{display:grid;grid-template-columns:8px minmax(0,1fr);gap:6px;padding:9px 10px;border-bottom:1px solid #eef2f4;transition:.12s}.mail-message-list>a:hover,.mail-message-list>a.active{background:#f7fbfd}.mail-message-list>a.unread{background:#fbfdff}.mail-read-dot{width:6px;height:6px;border-radius:50%;background:transparent;margin-top:8px}.mail-message-list>a.unread .mail-read-dot{background:#347eaa}.mail-list-main>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.mail-list-main b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mail-list-main time{font-size:10.5px;color:#627079;white-space:nowrap}.mail-list-main strong{display:block;font-size:12.5px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mail-list-main small{display:block;min-height:12px;font-size:11.5px;color:#616e78;margin-top:3px}
.mail-empty-state{min-height:250px;display:grid;place-items:center;align-content:center;text-align:center;padding:20px}.mail-empty-state span{font-size:24px;color:#57717f}.mail-empty-state b,.mail-empty-state small{display:block}.mail-empty-state b{font-size:13px;margin-top:6px}.mail-empty-state small{font-size:11.5px;color:#616e77;margin-top:2px}

.mail-reader{display:grid;align-content:start;min-width:0}.mail-reader-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:12px 14px;border-bottom:1px solid #edf2f4}.mail-reader-head small{display:block;font-size:11.5px;text-transform:none;letter-spacing:0;color:#606f78;font-weight:800}.mail-reader-head h2{font-size:17px;line-height:1.3;margin:3px 0 0}.mail-reader-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px}.mail-reader-meta>div{display:flex;align-items:center;gap:7px;min-width:0}.mail-reader-meta b,.mail-reader-meta small{display:block}.mail-reader-meta b{font-size:12px}.mail-reader-meta small{font-size:11.5px;color:#616e78;margin-top:2px}.mail-reader-meta time{font-size:11.5px;color:#617079;white-space:nowrap}.mail-recipients{padding:0 14px 9px;font-size:11.5px;color:#616e77}.mail-recipients b{color:#5c717d}.mail-body-text{padding:15px 14px 18px;border-top:1px solid #f0f3f5;font-size:13px;line-height:1.68;color:#354f5e;white-space:normal;word-break:break-word;min-height:220px}
.mail-attachments{padding:0 14px 12px}.mail-attachments>.card-head{padding:0 0 7px;min-height:auto}.mail-attachments>.card-head h3{font-size:13px}.mail-attachments>.card-head small{font-size:11.5px;color:#616f78}.mail-attachments>div:last-child{display:grid;gap:5px}.mail-attachments a{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:7px;align-items:center;padding:8px;border:1px solid #e4eaee;border-radius:9px;background:#fafcfd}.mail-attachments a:hover{background:#f4f9fb}.mail-attachments a b,.mail-attachments a small{display:block}.mail-attachments a b{font-size:12px}.mail-attachments a small{font-size:11.5px;color:#606d77;margin-top:2px}.mail-attachments a em{font-style:normal;font-size:11.5px;font-weight:800;color:#387b9d}.mail-reader-security{margin:0 14px 14px;padding:9px;border-radius:9px;background:#f5faf7;border:1px solid #dce9e0}.mail-reader-security b,.mail-reader-security small{display:block}.mail-reader-security b{font-size:12px;color:#47705a}.mail-reader-security small{font-size:11.5px;color:#617268;margin-top:2px}
.mail-reader-empty{min-height:500px;display:grid;place-items:center;align-content:center;text-align:center;padding:24px}.mail-reader-empty>span{width:50px;height:50px;border-radius:15px;background:#eaf3f7;color:#367a9b;display:grid;place-items:center}.mail-reader-empty h3{font-size:14px;margin:9px 0 3px}.mail-reader-empty p{max-width:360px;font-size:12px;line-height:1.55;color:#616e77;margin:0}.mail-reader-empty.error>span{background:#ffeded;color:#b94a4a}

.mail-compose-modal{width:min(680px,96vw)}.mail-compose-form{display:grid;gap:8px;padding:12px}.mail-compose-note{padding:8px 9px;border-radius:9px;background:#f3f8fa;color:#5d6f78;font-size:11.5px}.mail-compose-form textarea{min-height:220px}
.profile-mail-card{padding:11px}.profile-mail-card>.card-head{padding:0 0 9px;min-height:auto}.profile-mail-card>.card-head h3{font-size:13.5px}.profile-mail-card>.card-head small{font-size:12px;color:#616e77}.profile-mail-state{padding:4px 6px;border-radius:999px;font-size:11.5px;font-weight:800}.profile-mail-state.connected{background:#e8f6ef;color:#317d58}.profile-mail-state.disconnected{background:#eef2f4;color:#627077}.profile-mail-account{display:grid;grid-template-columns:34px minmax(0,1fr);gap:8px;align-items:center;padding:8px;background:#f7fafc;border-radius:9px;margin-bottom:8px}.profile-mail-account>span{width:34px;height:34px;border-radius:9px;background:#e9f2f7;color:#367a9b;display:grid;place-items:center}.profile-mail-account b,.profile-mail-account small{display:block}.profile-mail-account b{font-size:12px}.profile-mail-account small{font-size:11.5px;color:#617078;margin-top:2px}.profile-mail-card>p{font-size:12px;line-height:1.5;color:#617079}

@media(max-width:1200px){.mail-layout{grid-template-columns:200px 340px minmax(0,1fr)}}
@media(max-width:980px){.mail-layout{grid-template-columns:190px minmax(0,1fr)}.mail-reader{grid-column:1/-1;min-height:460px}.mail-reader-empty{min-height:350px}}
@media(max-width:720px){
  .mail-topline{display:block}.mail-topline h1{font-size:24px}.mail-topline p{font-size:12.5px}.mail-topline>.btn{width:100%;margin-top:8px}
  .mail-security-grid{grid-template-columns:1fr}.mail-layout{grid-template-columns:1fr;min-height:0}.mail-sidebar{display:block}.mail-account{margin-bottom:7px}.mail-folders{grid-template-columns:repeat(3,1fr);margin-bottom:7px}.mail-folders>a{grid-template-columns:18px minmax(0,1fr) auto;padding:0 5px}.mail-private-note{margin-bottom:7px}
  .mail-list-panel{min-height:360px}.mail-reader{grid-column:auto;min-height:420px}.mail-reader-head h2{font-size:15.5px}.mail-body-text{font-size:12.5px}.mail-compose-modal{width:100vw;height:100dvh}.mail-compose-form textarea{min-height:280px}
}
@media(max-width:390px){.mail-folders{grid-template-columns:1fr}.mail-reader-meta{display:block}.mail-reader-meta time{display:block;margin-top:7px}.mail-attachments a{grid-template-columns:24px minmax(0,1fr)}.mail-attachments a em{grid-column:2}}


/* v1.16.4 — Live notifications + Mail UX */
.sound-toggle{position:relative;width:38px;height:38px;border:1px solid #dfe7ec;border-radius:11px;background:#fff;color:#536b79;display:grid;place-items:center;cursor:pointer;transition:.15s;box-shadow:0 2px 7px rgba(18,48,68,.03)}
.sound-toggle:hover{background:#f7fafc;border-color:#cbd9e1}.sound-toggle .ui-icon{width:18px;height:18px}.sound-toggle>span{position:absolute;right:6px;bottom:5px;min-width:7px;height:7px;border-radius:999px;background:#3ba56f;color:#fff;font-size:10.5px;line-height:7px;text-align:center;font-weight:900}.sound-toggle.muted{color:#606e77;background:#f7f9fa}.sound-toggle.muted>span{width:13px;height:13px;right:3px;bottom:3px;line-height:13px;background:#8d9ba3}
.live-toast-stack{position:fixed;right:18px;top:82px;z-index:2000;display:grid;gap:7px;width:min(360px,calc(100vw - 28px));pointer-events:none}.live-toast{pointer-events:auto;display:grid;grid-template-columns:34px minmax(0,1fr);gap:9px;align-items:center;padding:10px 11px;border-radius:13px;background:#fff;border:1px solid #dfe7eb;box-shadow:0 14px 35px rgba(23,51,69,.16);animation:liveToastIn .18s ease-out;color:#334f5f}.live-toast:hover{transform:translateY(-1px)}.live-toast.leaving{opacity:0;transform:translateX(18px);transition:.2s}.live-toast-icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#edf3f6;color:#55727f;font-weight:900}.live-toast.mail .live-toast-icon{background:#eaf3f8;color:#33799c}.live-toast.chat .live-toast-icon{background:#edf5fb;color:#3975a2}.live-toast.task .live-toast-icon{background:#eaf6ef;color:#377c59}.live-toast.approval .live-toast-icon{background:#fff3df;color:#986823}.live-toast b,.live-toast small{display:block}.live-toast b{font-size:12.5px}.live-toast small{font-size:12px;color:#7f9099;line-height:1.35;margin-top:2px}.live-toast.system{border-style:dashed}
@keyframes liveToastIn{from{opacity:0;transform:translateY(-7px) scale(.98)}to{opacity:1;transform:none}}

.mail-layout{grid-template-columns:210px minmax(330px,410px) minmax(0,1fr);height:calc(100vh - 232px);min-height:610px;align-items:stretch}
.mail-sidebar,.mail-list-panel,.mail-reader{height:100%;min-height:0}
.mail-sidebar{overflow:auto}.mail-list-panel{grid-template-rows:auto auto 1fr}.mail-message-list{min-height:0}
.mail-list-head{position:sticky;top:0;z-index:3;background:#fff}.mail-list-head small{display:block;margin-top:2px}.mail-list-toolbar{display:flex;gap:6px;align-items:center;padding:8px 9px;border-bottom:1px solid #edf2f4;background:#fafcfd}.mail-list-toolbar label{flex:1;min-width:0;height:34px;display:flex;align-items:center;gap:6px;padding:0 8px;border:1px solid #dfe7eb;border-radius:9px;background:#fff}.mail-list-toolbar label .ui-icon{width:14px;height:14px;color:#5f7079}.mail-list-toolbar input{width:100%;min-width:0;border:0!important;outline:0;background:transparent;font-size:12px;padding:0!important;height:auto!important;box-shadow:none!important}.mail-filter-pill{height:34px;padding:0 9px;border:1px solid #dfe7eb;border-radius:9px;background:#fff;color:#5c707b;font-size:11.5px;font-weight:800;cursor:pointer;white-space:nowrap}.mail-filter-pill.active{background:#eaf3f8;color:#2f7395;border-color:#c9dce7}.mail-filter-hidden{display:none!important}.mail-message-list.filtered-empty::after{content:"Ничего не найдено";display:grid;place-items:center;min-height:150px;color:#626f76;font-size:12px}
.mail-message-list>a{padding:10px 10px;min-height:68px}.mail-message-list>a.unread .mail-list-main b,.mail-message-list>a.unread .mail-list-main strong{font-weight:800;color:#234b65}.mail-message-list>a.active{background:#eaf4f9;border-left:3px solid #367ea3;padding-left:7px}.mail-message-list>a.active:hover{background:#e6f1f7}.mail-list-main strong{font-size:12.5px;line-height:1.35}.mail-list-main small{color:#637077}
.mail-account{position:sticky;top:0;z-index:2;background:#f7fafc}.mail-account i{animation:mailPulse 2.4s ease-in-out infinite}.mail-private-note{background:#f7faf8;border-color:#dce9e0}.mail-private-note b{color:#47715a}
@keyframes mailPulse{0%,100%{box-shadow:0 0 0 4px rgba(59,165,111,.07)}50%{box-shadow:0 0 0 7px rgba(59,165,111,.03)}}
.mail-reader{overflow:auto;background:#fff}.mail-reader-head{position:sticky;top:0;z-index:2;background:rgba(255,255,255,.96);backdrop-filter:blur(10px)}.mail-reader-head h2{max-width:780px}.mail-reader-meta{background:#fbfdfe;border-bottom:1px solid #f0f3f5}.mail-body-text{max-width:920px;width:100%;font-size:13px;line-height:1.72;padding-top:18px}.mail-reader-security{margin-top:auto}.mail-attachments a{transition:.12s}.mail-attachments a:hover{border-color:#cadce5;transform:translateY(-1px)}
.mail-topline{align-items:center}.mail-topline>div:first-child{min-width:0}.mail-topline p{max-width:760px}.mail-topline>.btn{min-width:130px}
.mail-folders>a{transition:.12s}.mail-folders>a.active{box-shadow:inset 3px 0 0 #3d80a2}.mail-folders>a em{background:#fff;border:1px solid #e2e9ed}.mail-folders>a.active em{border-color:#c9dce6;color:#2f7294}
.nav-item .nav-badge[data-mail-unread],.nav-item .nav-badge[data-task-unread],.nav-item .nav-badge[data-approval-unread]{background:#d84f4f;color:#fff}
.nav-item.active .nav-badge[data-mail-unread],.nav-item.active .nav-badge[data-task-unread],.nav-item.active .nav-badge[data-approval-unread]{background:#fff;color:#315d78}

@media(max-width:1180px){
  .mail-layout{grid-template-columns:190px 340px minmax(0,1fr);height:auto;min-height:620px}.mail-sidebar,.mail-list-panel,.mail-reader{height:auto}.mail-list-panel{min-height:620px}.mail-reader{min-height:620px}
}
@media(max-width:960px){
  .mail-layout{grid-template-columns:180px minmax(0,1fr);height:auto}.mail-reader{grid-column:1/-1;min-height:520px}.mail-list-panel{min-height:520px}
}
@media(max-width:720px){
  .sound-toggle{width:36px;height:36px}.search-trigger{display:none}
  .live-toast-stack{right:8px;top:72px;width:calc(100vw - 16px)}
  .mail-layout{display:block}.mail-sidebar{margin-bottom:8px}.mail-list-panel{min-height:440px;margin-bottom:8px}.mail-reader{min-height:460px}
  .mail-list-toolbar{position:sticky;top:0;z-index:4}.mail-filter-pill{padding:0 7px}.mail-message-list>a{min-height:64px}
}


/* v1.17.0 — Unified Notification Center */
.notification-center-toggle{position:relative;width:40px;height:40px;border:1px solid var(--line);border-radius:12px;background:#fff;color:#536b79;display:grid;place-items:center;cursor:pointer;transition:.15s;box-shadow:0 1px 0 rgba(255,255,255,.9)}
.notification-center-toggle:hover{background:#f7fafc;border-color:#cbd9e1}.notification-center-toggle .ui-icon{width:19px;height:19px}.notification-center-toggle em{position:absolute;right:-5px;top:-5px;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:#d84f4f;color:#fff;border:2px solid #fff;display:grid;place-items:center;font-size:11.5px;font-style:normal;font-weight:900;line-height:1}
.notification-center-toggle em.hidden{display:none}
.notification-center-backdrop{position:fixed;inset:0;background:rgba(6,26,42,.14);backdrop-filter:blur(1px);z-index:1080;opacity:0;pointer-events:none;transition:.2s}
.notification-center-backdrop.open{opacity:1;pointer-events:auto}
.notification-center{position:fixed;top:0;right:0;width:min(460px,96vw);height:100dvh;background:#fff;z-index:1090;box-shadow:-24px 0 70px rgba(8,31,49,.18);transform:translateX(102%);transition:transform .22s ease;display:grid;grid-template-rows:auto auto auto auto auto minmax(0,1fr) auto;overflow:hidden}
.notification-center.open{transform:translateX(0)}body.notification-center-open{overflow:hidden}
.notification-center>header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:18px 18px 13px;border-bottom:1px solid #edf1f4}.notification-center>header small{display:block;font-size:12px;letter-spacing:0;text-transform:none;color:#617079;font-weight:800}.notification-center>header h2{font-size:20px;letter-spacing:-.035em;margin:3px 0 0}.notification-center>header .preview-close{position:static}
.notification-center-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;padding:10px 12px;border-bottom:1px solid #edf1f4;overflow-x:auto}
.notification-summary-pill{min-width:67px;min-height:54px;border:1px solid #e1e8ec;border-radius:11px;background:#fafcfd;color:#5b6e7a;cursor:pointer;display:grid;place-items:center;align-content:center;gap:1px;padding:5px;transition:.14s}.notification-summary-pill:hover{border-color:#cbdbe3;background:#f6fafc}.notification-summary-pill.active{background:#eaf3f8;border-color:#c6dce7;color:#2f7396}.notification-summary-pill b{font-size:14.5px}.notification-summary-pill span{font-size:11.5px;font-weight:800}
.notification-settings{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 13px;border-bottom:1px solid #eef2f4}.notification-settings b,.notification-settings small{display:block}.notification-settings b{font-size:12.5px}.notification-settings small{font-size:12px;color:#607078;margin-top:2px;line-height:1.4}
.notification-setting-button{height:34px;min-width:72px;border:1px solid #dce5e9;border-radius:10px;background:#fff;display:flex;align-items:center;justify-content:center;gap:6px;color:#58707d;font-size:11.5px;font-weight:800;cursor:pointer}.notification-setting-button i{width:8px;height:8px;border-radius:50%;background:#38a26c;box-shadow:0 0 0 4px rgba(56,162,108,.08)}.notification-setting-button.muted i{background:#a1adb4;box-shadow:none}.notification-setting-button.muted{background:#f7f9fa;color:#616f76}
.browser-notification-setting .btn{min-height:34px;height:34px;padding:0 10px;font-size:11.5px}.browser-notification-setting .btn.success{background:#e8f6ef;color:#337b58;border-color:#d5eadf}
.notification-center-toolbar{display:flex;align-items:center;justify-content:space-between;padding:8px 13px;background:#fafcfd;border-bottom:1px solid #edf2f4}.notification-center-toolbar span{font-size:12px;text-transform:none;letter-spacing:0;color:#607078;font-weight:800}.notification-center-toolbar button{border:0;background:transparent;color:#397a9b;font-size:11.5px;font-weight:800;cursor:pointer}
.notification-center-list{overflow:auto;min-height:0;background:#fff}.notification-center-item{display:grid;grid-template-columns:36px minmax(0,1fr);gap:9px;padding:10px 13px;border-bottom:1px solid #eef2f4;transition:.12s;position:relative}.notification-center-item:hover{background:#f8fbfd}.notification-center-item.unread{background:#fbfdff}.notification-center-item.unread::after{content:"";position:absolute;right:12px;top:12px;width:6px;height:6px;border-radius:50%;background:#3b7fa6}.notification-center-item-icon{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;font-weight:900;background:#edf3f6;color:#59717e}.notification-center-item.mail .notification-center-item-icon{background:#eaf3f8;color:#33799c}.notification-center-item.chat .notification-center-item-icon{background:#edf5fb;color:#3975a2}.notification-center-item.task .notification-center-item-icon{background:#eaf6ef;color:#377c59}.notification-center-item.approval .notification-center-item-icon{background:#fff3df;color:#986823}
.notification-center-item-copy>div{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-right:8px}.notification-center-item-copy em{font-style:normal;font-size:10.5px;text-transform:none;letter-spacing:0;color:#627078;font-weight:800}.notification-center-item-copy time{font-size:11.5px;color:#617078;white-space:nowrap}.notification-center-item-copy>b,.notification-center-item-copy>small,.notification-center-item-copy>span{display:block}.notification-center-item-copy>b{font-size:12.5px;margin-top:3px;color:#37515f}.notification-center-item.unread .notification-center-item-copy>b{font-weight:800;color:#234d65}.notification-center-item-copy>small{font-size:12px;color:#5d707b;line-height:1.4;margin-top:2px;padding-right:14px}.notification-center-item-copy>span{font-size:11.5px;color:#626e75;margin-top:3px}
.notification-center-loading,.notification-center-empty{min-height:240px;display:grid;place-items:center;align-content:center;text-align:center;padding:24px;color:#607078}.notification-center-loading span{width:28px;height:28px;border:2px solid #d8e2e7;border-top-color:#377a9c;border-radius:50%;animation:notificationSpin .8s linear infinite}.notification-center-loading p{font-size:12px;margin:8px 0 0}.notification-center-empty>span{width:42px;height:42px;border-radius:12px;background:#edf6f1;color:#3b825e;display:grid;place-items:center;font-size:17px;font-weight:900}.notification-center-empty b,.notification-center-empty small{display:block}.notification-center-empty b{font-size:13px;margin-top:8px}.notification-center-empty small{font-size:12px;margin-top:3px}.notification-center-empty.error>span{background:#ffeded;color:#b94a4a}
.notification-center>footer{padding:9px 13px;border-top:1px solid #edf2f4;background:#fafcfd}.notification-center>footer span{font-size:11.5px;color:#627078}
@keyframes notificationSpin{to{transform:rotate(360deg)}}

/* v1.17.0 — readability pass */
.content .card small{font-size:13px;line-height:1.45}
.content .card p{font-size:13.5px;line-height:1.55}
.content .field>span{font-size:13px;font-weight:700}
.content .field input,.content .field textarea,.content .field select{font-size:13.5px;line-height:1.45}
.content table td{font-size:13px;line-height:1.45}
.content table th{font-size:12.5px;line-height:1.35}
.content .card h3{font-size:15.5px}
.content .mail-list-main b{font-size:13px}.content .mail-list-main strong{font-size:13.5px}.content .mail-list-main time{font-size:12px}.content .mail-list-main small{font-size:12.5px}
.content .mail-reader-meta b{font-size:13px}.content .mail-reader-meta small{font-size:12.5px}.content .mail-recipients{font-size:12.5px}.content .mail-body-text{font-size:14px;line-height:1.72}
.content .mail-folders b{font-size:13px}.content .mail-account b{font-size:12.5px}.content .mail-account small{font-size:12px}
.content .executive-attention-list b{font-size:13.5px}.content .executive-attention-list small{font-size:12.5px}.content .executive-timeline b{font-size:13px}.content .executive-timeline small{font-size:12.5px}
.content .team-person b{font-size:13px}.content .team-person small{font-size:12px}.content .executive-document-list b,.content .executive-activity-list b{font-size:13px}.content .executive-document-list small,.content .executive-activity-list small{font-size:12px}

@media(max-width:720px){
  .notification-center{width:100vw}.notification-center-summary{grid-template-columns:repeat(5,72px)}.notification-settings{padding:9px 11px}.notification-center-item{padding:10px 11px}
  .notification-center-toggle{width:38px;height:38px}
  .content .card small{font-size:13px}.content .card p{font-size:13px}.content .mail-body-text{font-size:13.5px}
}


/* v1.17.1 — Chat emoji picker */
.composer-row{grid-template-columns:40px 40px minmax(0,1fr) auto}
.emoji-button{width:40px;height:40px;margin-bottom:1px;font-size:20px;line-height:1;border:1px solid var(--line);background:#f8fafc;color:#425767}
.emoji-button:hover,.emoji-button.active{background:#eaf3f8;border-color:#c7dbe6;transform:none}
.chat-emoji-picker{position:fixed;z-index:560;width:min(356px,calc(100vw - 20px));height:360px;display:grid;grid-template-rows:auto auto minmax(0,1fr);background:#fff;border:1px solid #dce5eb;border-radius:16px;box-shadow:0 22px 60px rgba(7,31,49,.24);opacity:0;transform:translateY(6px) scale(.985);transition:opacity .13s ease,transform .13s ease;overflow:hidden}
.chat-emoji-picker.show{opacity:1;transform:none}
.chat-emoji-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 11px 8px;border-bottom:1px solid #edf2f4}
.chat-emoji-head small,.chat-emoji-head b{display:block}.chat-emoji-head small{font-size:11.5px;color:#616f79;text-transform:none;letter-spacing:0;font-weight:800}.chat-emoji-head b{font-size:13px;margin-top:2px;color:#415968}
.chat-emoji-head>button{width:30px;height:30px;border:0;border-radius:9px;background:#f2f5f7;color:#5f6e78;font-size:18px;cursor:pointer}
.chat-emoji-tabs{display:grid;grid-template-columns:repeat(6,1fr);gap:3px;padding:6px 7px;border-bottom:1px solid #eef2f4;background:#fafcfd}
.chat-emoji-tabs button{min-width:0;height:42px;border:0;border-radius:9px;background:transparent;color:#5f6f78;cursor:pointer;display:grid;place-items:center;align-content:center;gap:1px;padding:2px;transition:.12s}
.chat-emoji-tabs button:hover,.chat-emoji-tabs button.active{background:#eaf3f8;color:#2f7394}
.chat-emoji-tabs button span{font-size:16px;line-height:1}.chat-emoji-tabs button small{font-size:10.5px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.chat-emoji-grid{overflow:auto;padding:8px;display:grid;grid-template-columns:repeat(8,1fr);gap:3px;align-content:start}
.chat-emoji-item{aspect-ratio:1;border:0;border-radius:9px;background:transparent;display:grid;place-items:center;font-size:22px;line-height:1;cursor:pointer;transition:background .1s ease,transform .1s ease}
.chat-emoji-item:hover{background:#eef5f9;transform:scale(1.12)}
.chat-emoji-empty{grid-column:1/-1;min-height:180px;display:grid;place-items:center;align-content:center;text-align:center;color:#5f6f78;padding:16px}
.chat-emoji-empty span{font-size:34px}.chat-emoji-empty b,.chat-emoji-empty small{display:block}.chat-emoji-empty b{font-size:12.5px;margin-top:6px}.chat-emoji-empty small{font-size:11.5px;line-height:1.4;margin-top:3px;max-width:220px}

@media(max-width:720px){
  .page-chat .composer-row{grid-template-columns:38px 38px minmax(0,1fr) 40px!important}
  .page-chat .emoji-button{width:38px;height:38px;border:0!important;background:#f1f5f7!important;border-radius:11px;margin:0;font-size:19px}
  .page-chat .emoji-button.active{background:#e5f0f5!important}
  .chat-emoji-picker{width:auto;height:min(330px,45dvh);border-radius:15px;box-shadow:0 16px 45px rgba(7,31,49,.24)}
  .chat-emoji-tabs{overflow-x:auto;grid-template-columns:repeat(6,64px);-webkit-overflow-scrolling:touch}
  .chat-emoji-grid{grid-template-columns:repeat(7,1fr);padding:7px}.chat-emoji-item{font-size:21px}
}
@media(max-width:390px){
  .chat-emoji-grid{grid-template-columns:repeat(6,1fr)}
  .chat-emoji-tabs{grid-template-columns:repeat(6,58px)}
}


/* v1.18.0 — Mail Pro */
.mail-pro .mail-layout{grid-template-columns:215px minmax(340px,420px) minmax(0,1fr)}
.mail-pro .mail-message-list>a[data-mail-important="1"] .mail-list-main strong{color:#694b15}
.mail-pro .mail-message-list>a[data-mail-important="1"] .mail-list-main small{color:#a16f20;font-weight:700}
.mail-reader-head-pro{align-items:flex-start;gap:14px}.mail-reader-head-pro>div:first-child{min-width:0}.mail-reader-head-pro h2{overflow-wrap:anywhere}
.mail-reader-actions{display:flex;align-items:center;justify-content:flex-end;gap:5px;flex-wrap:wrap;position:relative;flex:0 0 auto}.mail-reader-actions .btn{min-height:34px;padding:0 10px;font-size:12px}.mail-more-button{width:34px;height:34px;border:1px solid #dfe7eb;border-radius:9px;background:#fff;color:#5a6f7b;font-size:15.5px;cursor:pointer}.mail-more-button:hover{background:#f5f9fb}
.mail-more-menu{position:absolute;right:0;top:40px;z-index:25;width:235px;padding:5px;background:#fff;border:1px solid #dce5ea;border-radius:11px;box-shadow:0 16px 42px rgba(13,42,61,.17)}.mail-more-menu form{margin:0}.mail-more-menu button{width:100%;border:0;background:transparent;text-align:left;padding:8px 9px;border-radius:8px;color:#526a78;font-size:12px;cursor:pointer}.mail-more-menu button:hover{background:#f1f6f8}.mail-more-menu button.danger{color:#b54b4b}.mail-more-menu.hidden{display:none}

.mail-compose-pro{width:min(860px,96vw);max-height:min(850px,94dvh);overflow:visible;position:relative}.mail-compose-pro .event-modal-head{border-bottom:1px solid #e8eef1}.mail-compose-pro .mail-compose-form{padding:0;display:grid;gap:0}.mail-compose-recipients{position:relative;border-bottom:1px solid #e9eef1;padding:7px 12px 5px}.mail-recipient-row{position:relative;display:grid;grid-template-columns:72px minmax(0,1fr);align-items:start;gap:7px;min-height:38px;padding:3px 0}.mail-recipient-row>label{padding-top:9px;font-size:12px;font-weight:800;color:#5f7078}.mail-recipient-row.optional.hidden{display:none}
.mail-recipient-control{min-height:35px;display:flex;align-items:center;flex-wrap:wrap;gap:4px;padding:3px 7px;border:1px solid transparent;border-radius:9px;background:#f7fafc;transition:.12s}.mail-recipient-control:focus-within{border-color:#bad3e0;background:#fff;box-shadow:0 0 0 3px rgba(52,122,157,.07)}.mail-recipient-control.field-error{border-color:#d86a6a}.mail-recipient-control input[data-recipient-input]{flex:1;min-width:160px;height:27px;border:0!important;background:transparent!important;box-shadow:none!important;padding:0 3px!important;font-size:12.5px!important;outline:0}.mail-recipient-chips{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.mail-recipient-chip{display:inline-flex;align-items:center;gap:4px;max-width:250px;padding:4px 4px 4px 7px;border-radius:999px;background:#eaf3f8;color:#356c89}.mail-recipient-chip b{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mail-recipient-chip button{width:18px;height:18px;border:0;border-radius:50%;background:rgba(255,255,255,.8);color:#59707d;cursor:pointer;line-height:1;font-size:14px;padding:0}
.mail-recipient-row.locked .mail-recipient-control{background:#f2f5f7}.mail-recipient-row.locked .mail-recipient-chip button,.mail-recipient-row.locked input[data-recipient-input]{display:none}
.mail-recipient-suggestions{position:absolute;left:79px;right:0;top:39px;z-index:35;background:#fff;border:1px solid #dce5ea;border-radius:10px;box-shadow:0 14px 34px rgba(12,42,61,.15);padding:4px;max-height:270px;overflow:auto}.mail-recipient-suggestions.hidden{display:none}.mail-recipient-suggestion{width:100%;border:0;background:#fff;display:grid;grid-template-columns:30px minmax(0,1fr);gap:7px;align-items:center;text-align:left;padding:6px;border-radius:8px;cursor:pointer}.mail-recipient-suggestion:hover{background:#f2f7f9}.mail-recipient-suggestion>span{width:30px;height:30px;border-radius:50%;background:#e9f1f5;color:#497083;display:grid;place-items:center;font-size:11.5px;font-weight:900}.mail-recipient-suggestion b,.mail-recipient-suggestion small{display:block}.mail-recipient-suggestion b{font-size:12px}.mail-recipient-suggestion small{font-size:11.5px;color:#626f77;margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mail-compose-recipient-tools{display:flex;justify-content:flex-end;gap:5px;padding:3px 0 2px 79px}.mail-compose-recipient-tools button{border:0;background:transparent;color:#4f7890;font-size:11.5px;font-weight:800;cursor:pointer;padding:4px 5px}.mail-compose-recipient-tools button.directory{margin-left:auto;color:#2f7397}
.mail-subject-field{display:grid!important;grid-template-columns:72px minmax(0,1fr);align-items:center;gap:7px;margin:0!important;padding:7px 12px;border-bottom:1px solid #e9eef1}.mail-subject-field>span{font-size:12px!important;color:#5f7078!important}.mail-subject-field input{border:0!important;background:transparent!important;box-shadow:none!important;padding:6px 7px!important;font-size:13.5px!important}
.mail-compose-tools{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 12px;background:#fafcfd;border-bottom:1px solid #edf2f4}.mail-compose-tools button{height:30px;border:1px solid #dfe7eb;border-radius:8px;background:#fff;color:#5d707b;padding:0 9px;font-size:11.5px;font-weight:800;cursor:pointer}.mail-compose-tools button.active{background:#fff7df;color:#8b631c;border-color:#ead9a6}.mail-compose-tools span{font-size:11.5px;color:#606d75}
.mail-compose-body{padding:9px 12px 0;margin:0!important}.mail-compose-body>span{font-size:12px!important;color:#5f7078!important}.mail-compose-body textarea{min-height:260px!important;max-height:430px;resize:vertical;font-size:13.5px!important;line-height:1.6!important;border-color:#e1e8ec!important;background:#fff!important}.mail-compose-pro .mail-compose-note{margin:7px 12px 0}.mail-compose-actions{padding:10px 12px!important;border-top:1px solid #edf2f4;margin-top:9px;background:#fafcfd}.mail-compose-actions .btn{min-height:36px}
.mail-directory-panel{position:absolute;top:0;right:0;bottom:0;width:min(340px,88vw);z-index:45;background:#fff;border-left:1px solid #dfe7eb;box-shadow:-18px 0 45px rgba(12,40,58,.16);display:grid;grid-template-rows:auto auto auto minmax(0,1fr);border-radius:0 15px 15px 0;overflow:hidden}.mail-directory-panel.hidden{display:none}.mail-directory-head{display:flex;align-items:center;justify-content:space-between;padding:12px;border-bottom:1px solid #edf1f4}.mail-directory-head small,.mail-directory-head b{display:block}.mail-directory-head small{font-size:11.5px;color:#627078;text-transform:none;letter-spacing:0}.mail-directory-head b{font-size:13.5px;margin-top:2px}.mail-directory-head button{width:30px;height:30px;border:0;border-radius:9px;background:#f1f5f7;color:#5e707b;font-size:17px;cursor:pointer}
.mail-directory-search{height:38px;margin:9px;display:flex;align-items:center;gap:6px;padding:0 8px;border:1px solid #dfe6ea;border-radius:9px;background:#f9fbfc}.mail-directory-search .ui-icon{width:14px;height:14px;color:#606f78}.mail-directory-search input{width:100%;border:0!important;background:transparent!important;box-shadow:none!important;padding:0!important;font-size:12px!important;outline:0}.mail-directory-target{display:flex;align-items:center;gap:4px;padding:0 9px 8px}.mail-directory-target>span{font-size:11.5px;color:#617078;margin-right:auto}.mail-directory-target button{height:27px;border:1px solid #dfe7eb;border-radius:8px;background:#fff;color:#5c707b;font-size:10.5px;font-weight:800;cursor:pointer;padding:0 7px}.mail-directory-target button.active{background:#eaf3f8;color:#2f7395;border-color:#c9dce7}
.mail-directory-list{overflow:auto;border-top:1px solid #eef2f4}.mail-directory-person{width:100%;display:grid;grid-template-columns:36px minmax(0,1fr) 26px;gap:7px;align-items:center;border:0;border-bottom:1px solid #eef2f4;background:#fff;text-align:left;padding:8px 10px;cursor:pointer}.mail-directory-person:hover{background:#f7fafc}.mail-directory-person.added{background:#edf8f2}.mail-directory-avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#eaf2f6;color:#4d7083;font-size:11.5px;font-weight:900}.mail-directory-person b,.mail-directory-person small,.mail-directory-person em{display:block}.mail-directory-person b{font-size:12px}.mail-directory-person small{font-size:11.5px;color:#5f7079;margin-top:1px}.mail-directory-person em{font-size:11.5px;color:#537a90;font-style:normal;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mail-directory-person strong{width:26px;height:26px;border-radius:8px;background:#eef4f7;color:#397997;display:grid;place-items:center;font-size:14.5px}.mail-directory-empty{padding:25px;text-align:center;font-size:12px;color:#616e76}

@media(max-width:1200px){.mail-pro .mail-layout{grid-template-columns:190px 350px minmax(0,1fr)}.mail-reader-actions .btn{padding:0 8px}}
@media(max-width:980px){.mail-pro .mail-layout{grid-template-columns:190px minmax(0,1fr)}.mail-pro .mail-reader{grid-column:1/-1}.mail-reader-head-pro{position:relative}}
@media(max-width:720px){
  .mail-reader-head-pro{display:block}.mail-reader-actions{justify-content:flex-start;margin-top:9px}.mail-reader-actions .btn{flex:1;min-width:92px}.mail-more-button{flex:0 0 36px}.mail-more-menu{left:0;right:auto;top:40px}
  .mail-compose-pro{width:100vw!important;height:100dvh!important;max-height:none!important;border-radius:0!important;overflow:hidden}.mail-compose-pro .mail-compose-form{height:calc(100dvh - 60px);overflow:auto}.mail-recipient-row{grid-template-columns:52px minmax(0,1fr)}.mail-recipient-suggestions{left:59px}.mail-compose-recipient-tools{padding-left:59px;overflow-x:auto;white-space:nowrap}.mail-subject-field{grid-template-columns:52px minmax(0,1fr)}.mail-compose-body textarea{min-height:230px!important}
  .mail-directory-panel{width:100vw;border-radius:0;border-left:0}.mail-directory-person{padding:9px 11px}
}

.mail-compose-form.mail-native-response .mail-compose-recipient-tools{display:none}.mail-compose-form.mail-native-response .mail-subject-field input[readonly]{color:#5c6e79;background:#f7fafc!important}.mail-compose-form.mail-native-response [data-recipient-row="cc"],.mail-compose-form.mail-native-response [data-recipient-row="bcc"]{display:none!important}


/* v1.18.1 — Mail Final */
.mail-message-row{position:relative;display:grid;grid-template-columns:30px minmax(0,1fr);align-items:stretch;border-bottom:1px solid #eef2f4;transition:.12s;background:#fff}
.mail-message-row:hover{background:#f7fbfd}.mail-message-row.unread{background:#fbfdff}.mail-message-row.active{background:#eaf4f9;box-shadow:inset 3px 0 0 #367ea3}.mail-message-row.selected{background:#eef6fa}
.mail-message-row>a{display:grid;grid-template-columns:8px minmax(0,1fr);gap:6px;padding:10px 10px 10px 2px;min-width:0;color:inherit}
.mail-message-row.unread .mail-read-dot{background:#347eaa}.mail-message-row.unread .mail-list-main b,.mail-message-row.unread .mail-list-main strong{font-weight:800;color:#234b65}
.mail-select-box{display:grid;place-items:center;cursor:pointer}.mail-select-box input{position:absolute;opacity:0;pointer-events:none}.mail-select-box span{width:15px;height:15px;border:1px solid #cbd7dd;border-radius:4px;background:#fff;display:grid;place-items:center;transition:.12s}.mail-select-box input:checked+span{background:#347b9d;border-color:#347b9d}.mail-select-box input:checked+span::after{content:"✓";font-size:12px;font-weight:900;color:#fff}
.mail-bulk-bar{display:flex;align-items:center;gap:5px;flex-wrap:wrap;padding:7px 9px;border-bottom:1px solid #e7edf0;background:#f2f7fa}.mail-bulk-bar.hidden{display:none}.mail-bulk-bar b{font-size:12px;color:#526a77;margin-right:auto}.mail-bulk-bar button{height:30px;border:1px solid #dce5ea;border-radius:8px;background:#fff;color:#5a7180;font-size:11.5px;font-weight:800;padding:0 8px;cursor:pointer}.mail-bulk-bar button:hover{background:#f9fbfc}.mail-bulk-bar button.danger{color:#b44c4c;border-color:#ead3d3}
.mail-search-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto auto}.mail-search-submit{height:34px;border:1px solid #cddde5;border-radius:9px;background:#eaf3f8;color:#2f7395;font-size:11.5px;font-weight:800;padding:0 10px;cursor:pointer}.mail-search-toolbar .mail-filter-pill{display:flex;align-items:center;text-decoration:none}
.mail-message-list.search-mode{min-height:0}.mail-message-list.search-mode .mail-message-row small{color:#5e6e77}

.mail-settings-open{margin-bottom:7px}.mail-settings-modal{width:min(560px,95vw)}.mail-settings-form{display:grid;gap:10px;padding:12px}.mail-setting-toggle{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 11px;border:1px solid #e2e9ed;border-radius:11px;background:#f9fbfc}.mail-setting-toggle b,.mail-setting-toggle small{display:block}.mail-setting-toggle b{font-size:12.5px}.mail-setting-toggle small{font-size:12px;color:#607078;margin-top:2px}.mail-setting-toggle input{width:18px;height:18px}.mail-settings-form textarea{min-height:150px}

.mail-task-modal{width:min(650px,95vw)}.mail-task-form{display:grid;gap:10px;padding:12px}.mail-task-grid{display:grid;grid-template-columns:1.25fr 1fr .8fr;gap:8px}

.mail-compose-tools>div{display:flex;align-items:center;gap:5px}.mail-attach-button{height:30px;border:1px solid #dfe7eb;border-radius:8px;background:#fff;color:#5d707b;padding:0 9px;display:flex;align-items:center;font-size:11.5px;font-weight:800;cursor:pointer}.mail-attach-button:hover{background:#f6fafc}.mail-attach-button.hidden{display:none}.mail-compose-attachment-preview{display:flex;gap:5px;flex-wrap:wrap;padding:7px 12px 0}.mail-compose-attachment-preview.hidden{display:none}.mail-compose-attachment-chip{max-width:230px;display:grid;grid-template-columns:minmax(0,1fr);gap:1px;padding:6px 8px;border:1px solid #dce6eb;border-radius:9px;background:#f5f9fb}.mail-compose-attachment-chip b{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mail-compose-attachment-chip small{font-size:10.5px;color:#616e77}
.mail-attach-button{gap:5px}.mail-attach-button .ui-icon{width:15px;height:15px}.mail-compose-form.mail-drop-active{outline:2px dashed var(--brand-3);outline-offset:-6px;background:#f4f8fc}

@media(max-width:720px){
  .mail-message-row{grid-template-columns:28px minmax(0,1fr)}.mail-message-row>a{padding:9px 8px 9px 0}
  .mail-bulk-bar{position:sticky;top:0;z-index:6;overflow-x:auto;flex-wrap:nowrap}.mail-bulk-bar b{white-space:nowrap}.mail-bulk-bar button{white-space:nowrap}
  .mail-search-toolbar{grid-template-columns:minmax(0,1fr) auto}.mail-search-toolbar .mail-filter-pill{grid-column:1/-1;justify-content:center}
  .mail-task-grid{grid-template-columns:1fr}.mail-settings-modal,.mail-task-modal{width:100vw!important;height:100dvh!important;border-radius:0!important}
}

.mail-compose-attachment-chip{grid-template-columns:minmax(0,1fr) 20px;align-items:center}.mail-compose-attachment-chip>div{min-width:0}.mail-compose-attachment-chip button{width:20px;height:20px;border:0;border-radius:6px;background:#fff;color:#607078;cursor:pointer;font-size:14.5px;padding:0}

.mail-thread-panel{margin:0 14px 12px;border:1px solid #dfe8ec;border-radius:11px;background:#fbfdfe;overflow:hidden}.mail-thread-panel>.card-head{padding:9px 10px;min-height:auto;border-bottom:1px solid #eaf0f2}.mail-thread-panel>.card-head h3{font-size:13px}.mail-thread-panel>.card-head small{font-size:11.5px;color:#616e76}.mail-thread-panel>.card-head a{font-size:11.5px;font-weight:800;color:#397a9b}.mail-thread-list{display:grid}.mail-thread-list>a{display:grid;grid-template-columns:74px minmax(0,1fr) auto;gap:7px;align-items:center;padding:8px 9px;border-bottom:1px solid #eef2f4}.mail-thread-list>a:hover{background:#f5f9fb}.mail-thread-list>a>span{font-size:10.5px;text-transform:none;letter-spacing:0;color:#607078;font-weight:800}.mail-thread-list b,.mail-thread-list small{display:block}.mail-thread-list b{font-size:12px}.mail-thread-list small{font-size:11.5px;color:#5f6f77;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mail-thread-list time{font-size:11.5px;color:#626f76;white-space:nowrap}.mail-thread-empty{padding:14px;text-align:center;font-size:12px;color:#616e77}
@media(max-width:720px){.mail-thread-list>a{grid-template-columns:58px minmax(0,1fr)}.mail-thread-list time{grid-column:2}}

/* v1.19.0 — PWA + real Web Push */
.pwa-install-setting .btn,.push-notification-setting .btn{min-width:112px}.pwa-install-setting .btn.success,.push-notification-setting .btn.success{background:#e8f6ef;color:#337b58;border-color:#d5eadf}.notification-delivery-status{display:grid;grid-template-columns:12px minmax(0,1fr);gap:9px;align-items:center;padding:8px 13px;border-bottom:1px solid #eef2f4;background:#fafcfd}.notification-delivery-status>span{width:9px;height:9px;border-radius:50%;background:#c0cad0;box-shadow:0 0 0 4px rgba(120,139,151,.08)}.notification-delivery-status b,.notification-delivery-status small{display:block}.notification-delivery-status b{font-size:12px}.notification-delivery-status small{font-size:11.5px;color:#616e77;margin-top:2px}.notification-delivery-status.active>span{background:#38a26c;box-shadow:0 0 0 4px rgba(56,162,108,.09)}.notification-delivery-status.active b{color:#39785a}.notification-delivery-status.waiting>span{background:#d69b42;box-shadow:0 0 0 4px rgba(214,155,66,.09)}
.pwa-admin-card{padding:0;overflow:hidden}.pwa-admin-card>.card-head{padding:13px 14px;border-bottom:1px solid #eaf0f3}.pwa-admin-state{padding:5px 8px;border-radius:999px;font-size:11.5px;font-weight:900}.pwa-admin-state.ok{background:#e7f6ee;color:#337b58}.pwa-admin-state.wait{background:#fff4de;color:#986b25}.pwa-admin-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:12px 14px}.pwa-admin-grid>div{display:grid;grid-template-columns:10px minmax(0,1fr);gap:8px;align-items:start;padding:10px;border:1px solid #e1e8ec;border-radius:11px;background:#fafcfd}.pwa-admin-grid b,.pwa-admin-grid small{display:block}.pwa-admin-grid b{font-size:12.5px}.pwa-admin-grid small{font-size:11.5px;color:#607078;line-height:1.45;margin-top:3px}.pwa-admin-dot{width:9px;height:9px;border-radius:50%;margin-top:3px;background:#aebbc2}.pwa-admin-dot.ok{background:#3aa46f}.pwa-admin-dot.wait{background:#d69b42}.pwa-cron-setup{display:grid;gap:7px;padding:12px 14px;border-top:1px solid #eaf0f3;background:#f5f9fb}.pwa-cron-setup b,.pwa-cron-setup small{display:block}.pwa-cron-setup b{font-size:12.5px}.pwa-cron-setup small{font-size:11.5px;color:#5e6f78;line-height:1.45;margin-top:2px}.pwa-cron-setup code{display:block;max-width:100%;overflow:auto;padding:9px 10px;border:1px solid #dce6eb;border-radius:9px;background:#fff;color:#385c72;font:9px/1.45 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:nowrap}
@media(max-width:900px){.pwa-admin-grid{grid-template-columns:1fr}.pwa-install-setting,.push-notification-setting{align-items:flex-start}.pwa-install-setting .btn,.push-notification-setting .btn{min-width:105px}}
@media(max-width:720px){.notification-settings.pwa-install-setting,.notification-settings.push-notification-setting{display:grid;grid-template-columns:minmax(0,1fr) auto}.pwa-admin-grid{padding:10px}.pwa-cron-setup{padding:10px}.pwa-cron-setup code{font-size:11.5px}}
.push-setting-actions{display:flex;align-items:center;gap:5px}.push-setting-actions .btn.hidden{display:none}.push-setting-actions [data-push-test]{min-width:54px}
@media(max-width:720px){.push-setting-actions{justify-content:flex-end;flex-wrap:wrap}.push-setting-actions .btn{min-width:76px}}


/* =========================================================
   v1.19.2 — MOBILE UX PRO
   Messenger + Calendar + Mail
   ========================================================= */

.mobile-mail-back,.mail-mobile-folder-head,.calendar-mobile-actions,.calendar-mobile-side-head,.calendar-mobile-backdrop{display:none}

/* ---------- PHONE ---------- */
@media(max-width:720px){

  /* ---------- MESSENGER ---------- */
  .page-chat .messenger-page{
    height:calc(var(--chat-vh,100dvh) - var(--mobile-nav-h) - env(safe-area-inset-top,0px));
    background:#fff
  }
  .page-chat.mobile-chat-open .messenger-page{
    height:var(--chat-vh,100dvh);
    padding-top:env(safe-area-inset-top,0px)
  }
  .page-chat .chat-side-head{
    min-height:calc(62px + env(safe-area-inset-top,0px))!important;
    padding:calc(9px + env(safe-area-inset-top,0px)) 12px 7px!important
  }
  .page-chat .chat-search-wrap{top:calc(62px + env(safe-area-inset-top,0px))}
  .page-chat .chat-tabs{top:calc(111px + env(safe-area-inset-top,0px))}
  .page-chat .chat-head-actions .notification-toggle{display:none!important}
  .page-chat .chat-side-head h3{font-size:22px!important;letter-spacing:-.03em}
  .page-chat .chat-link{
    grid-template-columns:50px minmax(0,1fr)!important;
    min-height:70px;padding:10px 9px!important
  }
  .page-chat .chat-link .avatar{width:50px;height:50px}
  .page-chat .chat-link-title b{font-size:14.5px!important}
  .page-chat .chat-link-bottom>small{font-size:13px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .page-chat.mobile-chat-open .chat-header{
    min-height:calc(58px + env(safe-area-inset-top,0px))!important;
    padding:calc(7px + env(safe-area-inset-top,0px)) 8px 7px!important
  }
  .page-chat .chat-header-person h3{font-size:14.5px!important;max-width:46vw}
  .page-chat .chat-header-person small{font-size:12px!important;max-width:46vw}
  .page-chat .messages{padding:11px 8px 8px!important;scroll-padding-bottom:90px}
  .page-chat .msg-row{margin:6px 0}
  .page-chat .msg-row .msg{max-width:88%!important;font-size:14.5px!important;line-height:1.45!important;padding:9px 11px!important}
  .page-chat .message-avatar{width:27px;height:27px}
  .page-chat .msg-name{font-size:12.5px}
  .page-chat .msg time{font-size:12px}
  .page-chat .typing-indicator{min-height:20px;padding-left:41px;font-size:12px}
  .page-chat .composer{
    padding:6px 7px calc(6px + env(safe-area-inset-bottom,0px))!important;
    box-shadow:0 -5px 20px rgba(15,43,61,.045)
  }
  .page-chat .composer-row{
    grid-template-columns:38px 38px minmax(0,1fr) 42px!important;
    gap:5px!important;align-items:end!important
  }
  .page-chat .attachment-button,.page-chat .emoji-button{
    width:38px!important;height:38px!important;min-width:38px!important;border-radius:11px!important
  }
  .page-chat .emoji-button{font-size:19px!important}
  .page-chat .composer-row textarea{
    min-height:40px!important;max-height:118px!important;border-radius:15px!important;
    padding:10px 11px!important
  }
  .page-chat .send-message-button{
    width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;border-radius:13px!important
  }
  .page-chat .chat-info-panel{width:100vw!important;max-width:none!important;padding-top:env(safe-area-inset-top,0px)}
  .page-chat .global-reaction-picker{z-index:900!important}
  .page-chat .chat-emoji-picker{z-index:920!important}

  /* ---------- CALENDAR ---------- */
  .page-calendar .content{padding:8px 8px calc(var(--mobile-nav-h) + 12px)!important}
  .page-calendar .calendar-page{gap:8px}
  .page-calendar .calendar-topline{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;margin:0 0 5px!important}
  .page-calendar .calendar-topline .eyebrow,.page-calendar .calendar-topline p{display:none!important}
  .page-calendar .calendar-topline h1{font-size:22px!important;margin:0!important}
  .page-calendar .calendar-create{width:auto!important;margin:0!important;min-height:38px;padding:0 10px}
  .page-calendar .calendar-toolbar{
    position:sticky;top:58px;z-index:35;display:grid!important;grid-template-columns:1fr;gap:7px;
    padding:7px!important;border-radius:13px;background:rgba(255,255,255,.97);backdrop-filter:blur(16px)
  }
  .page-calendar .calendar-nav{
    display:grid!important;grid-template-columns:38px 64px 38px minmax(0,1fr);gap:5px;align-items:center
  }
  .page-calendar .calendar-nav .icon-button{width:38px;height:38px}
  .page-calendar .calendar-nav .btn{height:38px;min-height:38px;padding:0 8px}
  .page-calendar .calendar-nav strong{
    width:auto!important;margin:0!important;text-align:right;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis
  }
  .page-calendar .calendar-view-switch{
    margin:0!important;width:100%!important;display:grid;grid-template-columns:repeat(3,1fr);gap:3px;background:#f0f4f6;border-radius:10px;padding:3px
  }
  .page-calendar .calendar-view-switch a{min-height:34px;display:grid;place-items:center;padding:0 5px;font-size:12px;border-radius:8px}
  .page-calendar .calendar-mobile-actions{display:block;position:absolute;right:8px;top:52px;z-index:40}
  .page-calendar .calendar-mobile-actions .btn{min-height:30px;height:30px;padding:0 8px;font-size:11.5px;background:#f5f8fa}
  .page-calendar .calendar-layout{display:block!important}
  .page-calendar .calendar-main{width:100%;overflow:hidden!important;border-radius:14px}
  .page-calendar .calendar-sidebar{
    display:block!important;position:fixed!important;left:0!important;right:0!important;bottom:0!important;top:auto!important;
    z-index:610!important;max-height:min(72dvh,620px);overflow:auto;border-radius:20px 20px 0 0!important;
    transform:translateY(105%);transition:transform .22s ease;background:#fff;padding-bottom:calc(12px + env(safe-area-inset-bottom,0px));
    box-shadow:0 -24px 60px rgba(5,26,42,.2)
  }
  .page-calendar .calendar-sidebar.mobile-open{transform:translateY(0)}
  .page-calendar .calendar-mobile-side-head{
    position:sticky;top:0;z-index:3;display:flex;align-items:center;justify-content:space-between;padding:12px 13px;
    background:rgba(255,255,255,.97);backdrop-filter:blur(16px);border-bottom:1px solid #e9eef1
  }
  .page-calendar .calendar-mobile-side-head small,.page-calendar .calendar-mobile-side-head b{display:block}
  .page-calendar .calendar-mobile-side-head small{font-size:11.5px;text-transform:none;letter-spacing:0;color:#616f78}
  .page-calendar .calendar-mobile-side-head b{font-size:14.5px;margin-top:2px}
  .page-calendar .calendar-mobile-side-head button{width:34px;height:34px;border:0;border-radius:10px;background:#f1f5f7;font-size:19px;color:#5d707b}
  .page-calendar .calendar-mobile-backdrop{
    display:block;position:fixed;inset:0;z-index:600;border:0;background:rgba(5,22,35,.42);backdrop-filter:blur(2px);
    opacity:0;visibility:hidden;transition:.2s
  }
  .page-calendar .calendar-mobile-backdrop.show{opacity:1;visibility:visible}
  body.calendar-mobile-filter-open{overflow:hidden}
  .page-calendar .calendar-side-section{padding:10px!important}
  .page-calendar .calendar-person{min-height:48px;padding:6px 7px!important}
  .page-calendar .calendar-person b{font-size:13px}.page-calendar .calendar-person small{font-size:12px}
  .page-calendar .room-mini{min-height:46px}

  /* Mobile agenda is the primary experience. */
  .page-calendar .schedule-view{padding:2px 0 10px;background:#f6f9fb}
  .page-calendar .schedule-day{
    position:sticky;top:0;z-index:3;padding:12px 12px 6px;background:rgba(246,249,251,.96);backdrop-filter:blur(10px);
    font-size:12px;color:#5e707b
  }
  .page-calendar .schedule-event{
    width:calc(100% - 14px);margin:5px 7px;grid-template-columns:54px minmax(0,1fr);gap:9px;
    min-height:68px;padding:11px;border-radius:13px;border-color:#e0e7eb;box-shadow:0 3px 12px rgba(13,42,61,.035)
  }
  .page-calendar .schedule-event time{font-size:14px}
  .page-calendar .schedule-event b{font-size:13.5px;line-height:1.35}
  .page-calendar .schedule-event small{font-size:12px;line-height:1.4;white-space:normal}
  .page-calendar .calendar-empty{min-height:300px}

  /* Explicit week view stays available and scrolls horizontally. */
  .page-calendar .week-calendar{min-width:760px!important}
  .page-calendar .calendar-main:has(.week-calendar){overflow-x:auto!important;-webkit-overflow-scrolling:touch}
  .page-calendar .week-head{grid-template-columns:48px repeat(7,minmax(92px,1fr))}
  .page-calendar .week-scroll{grid-template-columns:48px 1fr;height:620px}
  .page-calendar .week-days-grid{grid-template-columns:repeat(7,minmax(92px,1fr))}
  .page-calendar .week-day-head{min-height:54px;padding:5px}
  .page-calendar .week-day-head small{display:none}

  /* Month view becomes a real compact phone month, not a desktop grid squeezed down. */
  .page-calendar .month-calendar{width:100%;overflow:hidden}
  .page-calendar .month-weekdays{grid-template-columns:repeat(7,minmax(0,1fr))}
  .page-calendar .month-weekdays div{padding:7px 2px;font-size:11.5px}
  .page-calendar .month-grid{grid-template-columns:repeat(7,minmax(0,1fr));min-width:0!important}
  .page-calendar .month-day{min-width:0;min-height:58px;padding:4px 3px}
  .page-calendar .month-number{width:24px;height:24px;font-size:12px}
  .page-calendar .month-events{display:flex;flex-wrap:wrap;gap:3px;margin-top:4px}
  .page-calendar .month-event{width:6px;height:6px;padding:0;border:0;border-radius:50%;background:var(--event);font-size:0;line-height:0}
  .page-calendar .month-more{font-size:10.5px;padding:0;color:#5f6e77}

  .page-calendar .event-modal{
    width:100vw!important;height:100dvh!important;max-height:none!important;border-radius:0!important;padding-bottom:env(safe-area-inset-bottom,0px)
  }
  .page-calendar .event-modal-head{padding-top:calc(12px + env(safe-area-inset-top,0px));min-height:calc(68px + env(safe-area-inset-top,0px))}
  .page-calendar .event-modal form{padding:12px;gap:11px}
  .page-calendar .participant-picker{max-height:220px;overflow:auto}
  .page-calendar .event-place-tabs{grid-template-columns:1fr 1fr!important}
  .page-calendar .event-preview{left:8px!important;right:8px!important;bottom:calc(var(--mobile-nav-h) + 8px)!important;width:auto!important;max-width:none!important}

  /* ---------- MAIL LIST ---------- */
  .page-mail.mobile-mail-list-open .content{
    height:calc(100dvh - 58px);overflow:hidden;
    padding:7px 7px calc(var(--mobile-nav-h) + env(safe-area-inset-bottom,0px) + 7px)!important
  }
  .page-mail.mobile-mail-list-open .mail-page.mobile-mail-list{
    height:100%;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:7px
  }
  .page-mail.mobile-mail-list-open .mail-topline{
    display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:7px;margin:0
  }
  .page-mail.mobile-mail-list-open .mail-topline .eyebrow,.page-mail.mobile-mail-list-open .mail-topline p{display:none}
  .page-mail.mobile-mail-list-open .mail-topline h1{font-size:22px!important;margin:0}
  .page-mail.mobile-mail-list-open .mail-topline>.btn{width:auto!important;margin:0!important;min-height:38px;padding:0 10px}
  .page-mail.mobile-mail-list-open .mail-layout{
    display:grid!important;grid-template-rows:auto minmax(0,1fr);height:100%!important;min-height:0!important;gap:6px
  }
  .page-mail.mobile-mail-list-open .mail-sidebar{
    display:block!important;height:auto!important;min-height:0!important;margin:0!important;padding:5px!important;
    border-radius:12px;overflow:visible;background:#fff
  }
  .page-mail.mobile-mail-list-open .mail-account,
  .page-mail.mobile-mail-list-open .mail-private-note,
  .page-mail.mobile-mail-list-open .mail-sidebar>form,
  .page-mail.mobile-mail-list-open .mail-settings-open{display:none!important}
  .page-mail .mail-mobile-folder-head{display:none}
  .page-mail.mobile-mail-list-open .mail-folders{
    display:grid!important;grid-template-columns:repeat(4,minmax(78px,1fr))!important;gap:3px;margin:0!important;overflow-x:auto;-webkit-overflow-scrolling:touch
  }
  .page-mail.mobile-mail-list-open .mail-folders>a{
    min-width:78px;min-height:42px;display:grid!important;grid-template-columns:16px minmax(0,1fr) auto!important;
    padding:0 6px!important;border-radius:9px
  }
  .page-mail.mobile-mail-list-open .mail-folders b{font-size:12px!important}
  .page-mail.mobile-mail-list-open .mail-folders em{min-width:18px;height:18px;font-size:10.5px}
  .page-mail.mobile-mail-list-open .mail-list-panel{
    display:grid!important;grid-template-rows:auto auto auto minmax(0,1fr);height:100%!important;min-height:0!important;margin:0!important;border-radius:13px
  }
  .page-mail.mobile-mail-list-open .mail-list-head{padding:8px 9px}
  .page-mail.mobile-mail-list-open .mail-list-head h3{font-size:14px}
  .page-mail.mobile-mail-list-open .mail-search-toolbar{position:relative!important;top:auto!important;padding:6px}
  .page-mail.mobile-mail-list-open .mail-message-list{min-height:0!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch}
  .page-mail.mobile-mail-list-open .mail-message-row{grid-template-columns:28px minmax(0,1fr)}
  .page-mail.mobile-mail-list-open .mail-message-row>a{min-height:68px;padding:9px 8px 9px 0}
  .page-mail.mobile-mail-list-open .mail-list-main b{font-size:13px!important}
  .page-mail.mobile-mail-list-open .mail-list-main strong{font-size:13.5px!important}
  .page-mail.mobile-mail-list-open .mail-list-main small{font-size:12px!important}
  .page-mail.mobile-mail-list-open .mail-reader{display:none!important}

  /* ---------- MAIL READER = A SEPARATE MOBILE SCREEN ---------- */
  .page-mail.mobile-mail-reader-open{overflow:hidden}
  .page-mail.mobile-mail-reader-open .topbar,
  .page-mail.mobile-mail-reader-open .mobile-bottom-nav{display:none!important}
  .page-mail.mobile-mail-reader-open .content{padding:0!important;height:100dvh!important;overflow:hidden!important}
  .page-mail.mobile-mail-reader-open .mail-page.mobile-mail-open{height:100dvh!important;display:block!important;margin:0!important}
  .page-mail.mobile-mail-reader-open .mail-topline,
  .page-mail.mobile-mail-reader-open .mail-sidebar,
  .page-mail.mobile-mail-reader-open .mail-list-panel{display:none!important}
  .page-mail.mobile-mail-reader-open .mail-layout{display:block!important;height:100dvh!important;margin:0!important}
  .page-mail.mobile-mail-reader-open .mail-reader{
    display:block!important;height:100dvh!important;min-height:0!important;overflow-y:auto!important;border:0!important;border-radius:0!important;
    padding-bottom:calc(20px + env(safe-area-inset-bottom,0px));background:#fff
  }
  .page-mail.mobile-mail-reader-open .mail-reader-head-pro{
    position:sticky!important;top:0!important;z-index:25;display:grid!important;
    grid-template-columns:38px minmax(0,1fr);gap:7px;align-items:start;
    padding:calc(8px + env(safe-area-inset-top,0px)) 8px 8px!important;
    min-height:calc(62px + env(safe-area-inset-top,0px));background:rgba(255,255,255,.98);backdrop-filter:blur(18px)
  }
  .page-mail .mobile-mail-back{
    display:grid;width:38px;height:38px;place-items:center;border-radius:10px;background:#eef4f7;color:#365d74;
    font-size:30px;line-height:1;text-decoration:none
  }
  .page-mail .mail-reader-title{min-width:0;padding-top:2px}
  .page-mail .mail-reader-title small{font-size:11.5px!important}
  .page-mail .mail-reader-title h2{font-size:15.5px!important;line-height:1.3;margin:2px 0 0!important}
  .page-mail.mobile-mail-reader-open .mail-reader-actions{
    grid-column:1/-1;display:flex!important;justify-content:flex-start;gap:5px;overflow-x:auto;flex-wrap:nowrap;margin:3px 0 0!important;padding:0 0 1px 45px;
    -webkit-overflow-scrolling:touch
  }
  .page-mail.mobile-mail-reader-open .mail-reader-actions .btn{flex:0 0 auto!important;min-width:auto!important;height:34px;min-height:34px;white-space:nowrap}
  .page-mail.mobile-mail-reader-open .mail-more-button{flex:0 0 36px}
  .page-mail.mobile-mail-reader-open .mail-more-menu{left:auto!important;right:0!important;top:39px!important}
  .page-mail.mobile-mail-reader-open .mail-reader-meta{padding:11px 12px}
  .page-mail.mobile-mail-reader-open .mail-reader-meta b{font-size:13px!important}
  .page-mail.mobile-mail-reader-open .mail-reader-meta small{font-size:12px!important}
  .page-mail.mobile-mail-reader-open .mail-recipients{padding:0 12px 7px;font-size:12px}
  .page-mail.mobile-mail-reader-open .mail-body-text{
    min-height:0!important;padding:14px 12px 18px!important;font-size:14px!important;line-height:1.65!important;max-width:none!important
  }
  .page-mail.mobile-mail-reader-open .mail-attachments,
  .page-mail.mobile-mail-reader-open .mail-thread-panel{margin-left:10px;margin-right:10px}
  .page-mail.mobile-mail-reader-open .mail-reader-security{margin:0 10px 12px}

  /* Mail compose stays full-screen and respects phone safe areas. */
  .page-mail .mail-compose-pro{padding-top:env(safe-area-inset-top,0px)}
  .page-mail .mail-compose-pro .event-modal-head{min-height:calc(58px + env(safe-area-inset-top,0px));padding-top:calc(8px + env(safe-area-inset-top,0px))}
  .page-mail .mail-compose-actions{padding-bottom:calc(10px + env(safe-area-inset-bottom,0px))!important}
}

@media(max-width:390px){
  .page-chat .chat-header-person h3,.page-chat .chat-header-person small{max-width:39vw!important}
  .page-calendar .calendar-nav{grid-template-columns:36px 58px 36px minmax(0,1fr)}
  .page-calendar .calendar-nav strong{font-size:12.5px}
  .page-mail.mobile-mail-list-open .mail-folders{grid-template-columns:repeat(4,82px)!important}
}


/* v1.19.2 mobile micro-adjustments */
@media(max-width:720px){
  .page-calendar .calendar-toolbar{grid-template-columns:minmax(0,1fr) auto!important}
  .page-calendar .calendar-nav{grid-column:1/-1}
  .page-calendar .calendar-view-switch{grid-column:1/2}
  .page-calendar .calendar-mobile-actions{
    position:static!important;display:flex!important;grid-column:2/3;align-items:center;justify-content:flex-end
  }
  .page-calendar .calendar-mobile-actions .btn{height:40px;min-height:40px;padding:0 9px}

  .page-mail.mobile-mail-list-open .mail-mobile-folder-head{
    display:flex!important;align-items:center;justify-content:space-between;padding:2px 4px 5px
  }
  .page-mail.mobile-mail-list-open .mail-mobile-folder-head b{font-size:12px;text-transform:none;letter-spacing:0;color:#607079}
  .page-mail.mobile-mail-list-open .mail-mobile-folder-head button{
    width:30px;height:30px;border:0;border-radius:8px;background:#f0f4f6;color:#5a717f;font-size:14.5px
  }
}


/* v1.19.3 — Mobile hotfix: messenger first + mail one-column */
@media(max-width:720px){
  .page-mail.mobile-mail-list-open .mail-layout{
    grid-template-columns:minmax(0,1fr)!important;
    grid-auto-columns:minmax(0,1fr)!important;
    width:100%!important;
  }
  .page-mail.mobile-mail-list-open .mail-sidebar,
  .page-mail.mobile-mail-list-open .mail-list-panel{
    grid-column:1/-1!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
  }
  .page-mail.mobile-mail-list-open .mail-folders{
    width:100%!important;
    min-width:0!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    overflow:visible!important;
  }
  .page-mail.mobile-mail-list-open .mail-folders>a{
    min-width:0!important;
    width:auto!important;
    overflow:hidden;
  }
  .page-mail.mobile-mail-list-open .mail-folders b{
    min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  }
  .page-mail.mobile-mail-list-open .mail-list-panel{
    overflow:hidden!important;
  }
  .page-mail.mobile-mail-list-open .mail-message-list{
    width:100%!important;
  }

  /* The chat info drawer is closed by JS on entry; this avoids a visible flash. */
  .page-chat.mobile-chat-open .messenger-layout.has-active-chat.info-hidden .chat-info-panel{
    transform:translateX(105%)!important;
    pointer-events:none;
  }
  .page-chat.mobile-chat-open .messenger-layout.has-active-chat:not(.info-hidden) .chat-info-panel{
    transform:translateX(0)!important;
    pointer-events:auto;
  }
}


/* v2.0.0 — CRM CORE */
.crm-page{display:grid;gap:12px;min-width:0}.crm-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.crm-hero .eyebrow{font-size:12px;letter-spacing:0;text-transform:none;color:#80909a;font-weight:900}.crm-hero h1{font-size:31px;letter-spacing:-.045em;margin:4px 0 2px}.crm-hero p{font-size:13px;color:#768892;margin:0}
.crm-view-tabs{display:flex;gap:3px;width:max-content;padding:3px;border:1px solid #e1e8ec;border-radius:11px;background:#f8fafb}.crm-view-tabs a{min-height:34px;padding:0 12px;border-radius:8px;display:grid;place-items:center;font-size:12px;font-weight:850;color:#5c6e79}.crm-view-tabs a.active{background:#fff;color:#315f78;box-shadow:0 3px 10px rgba(18,50,70,.07)}
.crm-pipeline-strip{display:flex;gap:6px;overflow-x:auto;padding:1px 0 4px;scrollbar-width:thin}.crm-pipeline-chip{flex:0 0 auto;min-width:150px;display:grid;grid-template-columns:5px minmax(0,1fr);gap:8px;align-items:center;padding:8px 10px 8px 7px;border:1px solid #e1e8ec;border-radius:11px;background:#fff;color:#5c717d}.crm-pipeline-chip>span{width:5px;height:30px;border-radius:999px;background:var(--pipe)}.crm-pipeline-chip b,.crm-pipeline-chip small{display:block}.crm-pipeline-chip b{font-size:12.5px;color:#405966}.crm-pipeline-chip small{font-size:11.5px;color:#616f76;margin-top:2px}.crm-pipeline-chip.active{background:#f7fbfd;border-color:#c5d8e2}.crm-pipeline-chip.type-warmup{background:#fffcf7}.crm-pipeline-chip.type-cas{background:#f7fbff}.crm-pipeline-chip.type-archive{background:#fafafa}
.crm-kpi-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.crm-kpi{min-height:78px;padding:10px 11px;border:1px solid #e2e9ed;border-radius:12px;background:#fff}.crm-kpi small,.crm-kpi b,.crm-kpi span{display:block}.crm-kpi small{font-size:11.5px;color:#616f77;font-weight:750}.crm-kpi b{font-size:19px;letter-spacing:-.035em;color:#355261;margin-top:4px}.crm-kpi span{font-size:11.5px;color:#617078;margin-top:2px}.crm-kpi.attention{background:#fff9f4;border-color:#eedfce}.crm-kpi.attention b{color:#9b6330}.crm-kpi.hot{background:#fff7f4;border-color:#edd9d3}.crm-kpi.hot b{color:#a55745}
.crm-kanban-wrap{width:100%;overflow-x:auto;padding-bottom:7px}.crm-kanban{display:flex;align-items:flex-start;gap:8px;min-width:max-content}.crm-stage-column{width:280px;min-width:280px;display:grid;grid-template-rows:auto minmax(150px,auto);border:1px solid #e2e8ec;border-radius:13px;background:#f6f8f9;overflow:hidden}.crm-stage-column>header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 10px;border-bottom:1px solid #e3e9ed;background:#fff}.crm-stage-column>header>div{display:flex;align-items:center;gap:7px;min-width:0}.crm-stage-column>header i{width:8px;height:8px;border-radius:50%;background:var(--stage)}.crm-stage-column>header b{font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.crm-stage-column>header em{min-width:24px;height:22px;border-radius:999px;background:#f1f5f7;color:#5f6f78;display:grid;place-items:center;font-size:11.5px;font-style:normal;font-weight:900}.crm-stage-cards{min-height:180px;padding:7px;display:grid;align-content:start;gap:6px}.crm-stage-column.drag-over .crm-stage-cards{background:#eaf3f8}
.crm-deal-card{display:block;padding:9px;border:1px solid #e1e8ec;border-radius:10px;background:#fff;color:#455d69;box-shadow:0 3px 10px rgba(16,47,66,.035)}.crm-deal-card:hover{border-color:#cadbe3;transform:translateY(-1px)}.crm-deal-card.dragging{opacity:.35}.crm-deal-card.overdue{border-color:#e7c7c0;background:#fffafa}.crm-deal-top{display:flex;align-items:center;gap:5px}.crm-temp-dot{width:7px;height:7px;border-radius:50%;background:#d0a15b}.temp-hot .crm-temp-dot{background:#da6a55}.temp-cold .crm-temp-dot{background:#7fa5bb}.crm-deal-top small{font-size:11.5px;color:#616f77;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.crm-deal-top em{font-size:10.5px;font-style:normal;font-weight:900;color:#4477a6;background:#edf4fa;border-radius:999px;padding:3px 5px}.crm-deal-card h3{font-size:13.5px!important;margin:7px 0 2px}.crm-deal-card p{font-size:12px!important;color:#5f7079;margin:0!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.crm-deal-meta{display:flex;justify-content:space-between;gap:8px;margin-top:8px}.crm-deal-meta b{font-size:12.5px}.crm-deal-meta span{font-size:11.5px;color:#616f76}.crm-deal-card footer{margin-top:7px;padding-top:6px;border-top:1px solid #eef2f4;font-size:11.5px;color:#617078}.crm-deal-card footer.danger{color:#b05b4d;font-weight:800}.crm-stage-empty{min-height:54px;border:1px dashed #d9e2e7;border-radius:9px;display:grid;place-items:center;color:#637077;font-size:11.5px}
.crm-clients-card{overflow:hidden}.crm-list-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border-bottom:1px solid #e8eef1}.crm-list-head h2{font-size:16px;margin:0}.crm-list-head small{font-size:12px;color:#616e77}.crm-list-head form label{width:min(340px,38vw);height:36px;display:flex;align-items:center;gap:6px;padding:0 8px;border:1px solid #dde6ea;border-radius:9px;background:#fafcfd}.crm-list-head form input{width:100%;border:0!important;background:transparent!important;box-shadow:none!important;font-size:12px!important;padding:0!important}.crm-client-row{display:grid;grid-template-columns:1.35fr 1.2fr 1fr .65fr 1fr;gap:10px;align-items:center;min-height:56px;padding:8px 12px;border-bottom:1px solid #edf1f3;color:#526975}.crm-client-row.head{min-height:34px;background:#fafcfd;font-size:11.5px;text-transform:none;letter-spacing:0;color:#616f77;font-weight:850}.crm-client-row b,.crm-client-row small{display:block}.crm-client-row b{font-size:12.5px}.crm-client-row small{font-size:11.5px;color:#616e76;margin-top:2px}.crm-client-row>span{font-size:12px}.crm-client-row em{display:inline-grid;min-width:24px;height:22px;place-items:center;border-radius:999px;background:#edf4f7;color:#3d7089;font-style:normal;font-size:11.5px;font-weight:900}.crm-table-empty{padding:28px;text-align:center;font-size:12px;color:#627079}
.crm-settings-grid{display:grid;grid-template-columns:330px minmax(0,1fr);gap:9px;align-items:start}.crm-settings-card{padding:11px}.crm-settings-pipelines{display:grid;gap:4px}.crm-settings-pipelines a{display:grid;grid-template-columns:7px minmax(0,1fr);gap:8px;align-items:center;padding:7px 8px;border-radius:9px}.crm-settings-pipelines a.active{background:#f1f6f8}.crm-settings-pipelines i{width:7px;height:27px;border-radius:999px}.crm-settings-pipelines b,.crm-settings-pipelines small{display:block}.crm-settings-pipelines b{font-size:12px}.crm-settings-pipelines small{font-size:10.5px;color:#616e75}.crm-inline-create{display:grid;grid-template-columns:minmax(0,1fr) 42px auto;gap:5px;margin-top:9px;padding-top:9px;border-top:1px solid #edf1f3}.crm-inline-create input{height:34px;border:1px solid #dde5e9;border-radius:8px;padding:0 8px;font-size:12px}.crm-stage-settings{display:grid;gap:5px}.crm-stage-settings form{display:grid;grid-template-columns:8px minmax(0,1fr) 120px 70px;gap:7px;align-items:center;padding:7px;border:1px solid #e6ecef;border-radius:9px;background:#fafcfd}.crm-stage-settings i{width:8px;height:26px;border-radius:999px}.crm-stage-settings input{height:32px;border:1px solid #dfe6ea;border-radius:7px;padding:0 7px;font-size:12px}.crm-stage-settings small{font-size:11.5px;color:#616f77}.crm-stage-settings button{height:30px;border:0;border-radius:7px;background:#eaf3f8;color:#377798;font-size:11.5px;font-weight:850}.crm-settings-card.sources{grid-column:1/-1}.crm-source-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.crm-source-list span{padding:8px;border:1px solid #e6ecef;border-radius:9px;background:#fafcfd}.crm-source-list b,.crm-source-list small{display:block}.crm-source-list b{font-size:12px}.crm-source-list small{font-size:10.5px;color:#636f76}
.crm-modal{width:min(760px,96vw);max-height:92dvh;overflow:auto}.crm-client-form{display:grid;gap:9px;padding:12px}.crm-form-grid{display:grid;gap:8px}.crm-form-grid.two{grid-template-columns:1fr 1fr}.crm-form-grid.three{grid-template-columns:1fr 1.2fr .8fr}.crm-dedupe-note{padding:8px 9px;border-radius:9px;background:#f4f8fa;color:#5e7079;font-size:11.5px;line-height:1.45;border:1px solid #e1e9ed}
.crm-client-backdrop{position:fixed;inset:0;background:rgba(5,25,39,.18);z-index:1050}.crm-client-drawer{position:fixed;top:0;right:0;width:min(650px,96vw);height:100dvh;z-index:1060;background:#fff;box-shadow:-22px 0 60px rgba(10,34,50,.18);display:grid;grid-template-rows:auto auto minmax(0,1fr)}.crm-client-drawer-head{display:flex;justify-content:space-between;gap:12px;padding:16px;border-bottom:1px solid #e8eef1}.crm-client-drawer-head h2{font-size:21px;margin:3px 0}.crm-client-drawer-head p{font-size:12px;color:#7e8f99;margin:0}.crm-client-drawer-head>a{width:34px;height:34px;border-radius:10px;background:#f0f4f6;display:grid;place-items:center;font-size:20px}.crm-client-quick{display:flex;gap:5px;padding:8px 12px;border-bottom:1px solid #edf1f3;background:#fafcfd}.crm-client-quick a,.crm-client-quick button{min-height:34px;border:1px solid #dce5e9;border-radius:8px;background:#fff;color:#527080;padding:0 9px;display:flex;align-items:center;gap:5px;font-size:11.5px;font-weight:850}.crm-client-scroll{min-height:0;overflow-y:auto;padding:10px 12px 20px}.crm-client-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.crm-client-summary>div{padding:8px;border:1px solid #e5ebee;border-radius:9px;background:#fafcfd}.crm-client-summary small,.crm-client-summary b{display:block}.crm-client-summary small{font-size:10.5px;color:#606d75}.crm-client-summary b{font-size:12px;margin-top:3px}.crm-client-edit{display:grid;gap:7px;margin-top:8px;padding:9px;border:1px solid #dfe7eb;border-radius:10px;background:#fbfdfe}.crm-client-edit.hidden,.crm-mini-form.hidden{display:none}.crm-client-section{margin-top:14px;padding-top:11px;border-top:1px solid #e9eef1}.crm-section-title{display:flex;justify-content:space-between;gap:8px;margin-bottom:8px}.crm-section-title h3{font-size:14px;margin:0}.crm-section-title small{font-size:11.5px;color:#626f77}.crm-section-title>button{border:0;background:#eaf3f8;color:#377899;height:31px;border-radius:8px;padding:0 8px;font-size:11.5px;font-weight:850}
.crm-mini-form{display:grid;grid-template-columns:1.2fr .9fr 1fr .8fr auto;gap:5px;padding:7px;margin-bottom:7px;border:1px solid #e1e9ed;border-radius:9px;background:#f8fbfc}.crm-mini-form select,.crm-mini-form input{height:32px;border:1px solid #dce5e9;border-radius:7px;padding:0 6px;font-size:11.5px}.crm-client-deals{display:grid;gap:7px}.crm-client-deal{border:1px solid #e1e8ec;border-radius:10px;background:#fff;overflow:hidden}.crm-client-deal>header{display:grid;grid-template-columns:6px minmax(0,1fr) auto;gap:8px;align-items:center;padding:8px 9px;background:#fafcfd;border-bottom:1px solid #edf1f3}.crm-client-deal>header>i{width:6px;height:30px;border-radius:999px;background:var(--deal)}.crm-client-deal header b,.crm-client-deal header small{display:block}.crm-client-deal header b{font-size:12.5px}.crm-client-deal header small{font-size:11.5px;color:#616e76}.crm-client-deal header strong{font-size:12.5px}.crm-deal-control{display:grid;gap:5px;padding:7px 9px;border-bottom:1px solid #edf1f3}.crm-deal-control label{display:grid;grid-template-columns:90px minmax(0,1fr);gap:6px;align-items:center}.crm-deal-control label>span{font-size:10.5px;color:#616e76}.crm-deal-control select,.crm-deal-control input{height:30px;border:1px solid #dce5e9;border-radius:7px;padding:0 6px;font-size:11.5px}.crm-deal-control.compact{grid-template-columns:1fr 1fr}.crm-deal-actions{display:flex;gap:5px;flex-wrap:wrap;padding:7px 9px}.crm-deal-actions button{height:30px;border:1px solid #dce5e9;border-radius:7px;background:#fff;color:#5b707c;padding:0 7px;font-size:11.5px;font-weight:800}.crm-deal-actions button.primary{background:#eaf5ef;color:#367b58}.crm-archive-form{display:flex;gap:4px}.crm-archive-form select{height:30px;border:1px solid #dce5e9;border-radius:7px;font-size:11.5px}
.crm-activity-form{display:grid;grid-template-columns:105px minmax(0,1fr) auto;gap:5px;margin-bottom:9px}.crm-activity-form select,.crm-activity-form input{height:34px;border:1px solid #dce5e9;border-radius:8px;padding:0 7px;font-size:12px}.crm-activity-form button{border:0;border-radius:8px;background:#eaf3f8;color:#39799a;font-size:11.5px;font-weight:850}.crm-timeline-item{display:grid;grid-template-columns:18px minmax(0,1fr);gap:7px;padding:5px 0 9px}.crm-timeline-item>i{width:13px;height:13px;border-radius:50%;background:#7fa1b4;border:3px solid #edf4f7}.crm-timeline-item>div>span{display:flex;justify-content:space-between;gap:7px}.crm-timeline-item b{font-size:12px}.crm-timeline-item time{font-size:10.5px;color:#616e75}.crm-timeline-item p{font-size:12px!important;color:#5c717c;margin:3px 0!important}.crm-timeline-item small{font-size:10.5px;color:#626f77}.crm-timeline-empty{padding:18px;text-align:center;font-size:11.5px;color:#606d75}
@media(max-width:1100px){.crm-kpi-row{grid-template-columns:repeat(3,1fr)}.crm-settings-grid{grid-template-columns:280px minmax(0,1fr)}.crm-source-list{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.page-crm .content{padding:8px 7px calc(var(--mobile-nav-h) + 14px)!important}.crm-page{gap:8px}.crm-hero .eyebrow,.crm-hero p{display:none}.crm-hero h1{font-size:23px;margin:0}.crm-view-tabs{width:100%;display:grid;grid-template-columns:repeat(3,1fr)}.crm-pipeline-strip{margin:0 -7px;padding:0 7px 5px}.crm-pipeline-chip{min-width:135px}.crm-kpi-row{grid-template-columns:repeat(2,1fr);gap:5px}.crm-kpi{min-height:66px;padding:8px}.crm-kpi b{font-size:16px}.crm-kanban-wrap{margin:0 -7px;width:calc(100% + 14px);padding:0 7px 8px;scroll-snap-type:x proximity}.crm-stage-column{width:84vw;min-width:84vw;scroll-snap-align:start}.crm-client-table{overflow-x:auto}.crm-client-row{min-width:760px}.crm-settings-grid{grid-template-columns:1fr}.crm-settings-card.sources{grid-column:auto}.crm-source-list{grid-template-columns:repeat(2,1fr)}.crm-modal{width:100vw!important;height:100dvh!important;max-height:none!important;border-radius:0!important}.crm-form-grid.two,.crm-form-grid.three{grid-template-columns:1fr}.crm-client-drawer{width:100vw}.crm-client-drawer-head{padding:calc(11px + env(safe-area-inset-top,0px)) 11px 9px}.crm-client-scroll{padding:8px 9px calc(16px + env(safe-area-inset-bottom,0px))}.crm-client-summary{grid-template-columns:repeat(2,1fr)}.crm-mini-form{grid-template-columns:1fr 1fr}.crm-mini-form .btn{grid-column:1/-1}.crm-deal-control.compact{grid-template-columns:1fr}.crm-deal-actions{overflow-x:auto;flex-wrap:nowrap}.crm-activity-form{grid-template-columns:90px minmax(0,1fr)}.crm-activity-form button{grid-column:1/-1;height:32px}}

/* v2.1.0 — CRM Migration + UX Pro */
.crm-deal-card{position:relative;cursor:pointer;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease,opacity .14s ease}.crm-deal-card:focus-visible{outline:2px solid #5d91ac;outline-offset:2px}.crm-drag-handle{position:absolute;right:7px;top:7px;width:27px;height:27px;border:0;border-radius:8px;background:#f2f6f8;color:#5b717d;font-size:13.5px;line-height:1;letter-spacing:-2px;cursor:grab;opacity:.42;transition:.12s;z-index:2}.crm-deal-card:hover .crm-drag-handle,.crm-drag-handle:focus{opacity:1;background:#e8f1f5;color:#3f7895}.crm-drag-handle:active{cursor:grabbing}.crm-deal-card.dragging{opacity:.45;transform:rotate(.4deg) scale(.99)}.crm-deal-card.saving{pointer-events:none;opacity:.65}.crm-deal-card.saved{border-color:#9bc6ae;box-shadow:0 0 0 3px rgba(90,151,111,.10)}body.crm-drag-active{cursor:grabbing!important;user-select:none}.crm-stage-column.drag-over{border-color:#9ebdcd;box-shadow:0 0 0 3px rgba(72,127,156,.08)}.crm-stage-column>header>div>span{min-width:0}.crm-stage-column>header>div>span b,.crm-stage-column>header>div>span small{display:block}.crm-stage-column>header>div>span small{font-size:10.5px;color:#616e76;margin-top:1px}.crm-deal-source{margin-top:6px}.crm-deal-source span{display:inline-flex;max-width:100%;padding:3px 6px;border-radius:999px;background:#f2f6f8;color:#5d6e77;font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.crm-kanban-limit{margin-top:8px;padding:8px 10px;border:1px solid #dfe8ec;border-radius:9px;background:#f8fbfc;color:#5d6e77;font-size:11.5px;text-align:center}

.crm-data-hero{display:flex;justify-content:space-between;gap:16px;align-items:flex-end;padding:14px 15px;border:1px solid #dfe7eb;border-radius:14px;background:linear-gradient(135deg,#f8fbfc,#eef5f8)}.crm-data-hero .eyebrow{font-size:11.5px;font-weight:900;letter-spacing:.08em;color:#6f8997}.crm-data-hero h2{font-size:22px;margin:3px 0 2px;letter-spacing:-.03em}.crm-data-hero p{margin:0;font-size:12px;color:#718590}.crm-data-counters{display:flex;gap:6px}.crm-data-counters span{min-width:82px;padding:8px 9px;border-radius:10px;background:#fff;border:1px solid #dde6ea}.crm-data-counters b,.crm-data-counters small{display:block}.crm-data-counters b{font-size:15.5px}.crm-data-counters small{font-size:10.5px;color:#616f77;margin-top:2px}.crm-data-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:9px;align-items:start}.crm-import-card,.crm-export-card{padding:11px}.crm-upload-zone{display:grid;gap:8px}.crm-upload-zone>label{min-height:130px;border:1.5px dashed #bfcfd7;border-radius:12px;background:#f8fbfc;display:grid;place-items:center;text-align:center;padding:14px;cursor:pointer}.crm-upload-zone>label span,.crm-upload-zone>label small{display:block}.crm-upload-zone>label span{font-size:13px;font-weight:850;color:#456778}.crm-upload-zone>label small{font-size:11.5px;color:#616f77;margin-top:4px}.crm-upload-zone>label input{margin-top:10px;font-size:11.5px}.crm-upload-zone>div{display:grid;grid-template-columns:1fr auto;gap:6px}.crm-upload-zone select{height:36px;border:1px solid #dce5e9;border-radius:9px;padding:0 8px;font-size:12px}.crm-template-link{display:inline-block;margin-top:8px;font-size:11.5px;font-weight:800;color:#3f7b99}.crm-import-file{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px;border-radius:10px;background:#f4f8fa;border:1px solid #e0e8ec;margin-bottom:9px}.crm-import-file b,.crm-import-file small{display:block}.crm-import-file b{font-size:12px}.crm-import-file small{font-size:10.5px;color:#616e77;margin-top:2px}.crm-import-file a{font-size:11.5px;color:#4c7d95}.crm-mapping-form{display:grid;gap:8px}.crm-mapping-head b,.crm-mapping-head small{display:block}.crm-mapping-head b{font-size:12.5px}.crm-mapping-head small{font-size:11.5px;color:#616e77;margin-top:2px}.crm-mapping-list{display:grid;grid-template-columns:1fr 1fr;gap:5px;max-height:340px;overflow:auto;padding-right:3px}.crm-mapping-list label{display:grid;gap:3px;padding:6px;border:1px solid #e4eaed;border-radius:8px;background:#fbfcfd}.crm-mapping-list label>span{font-size:10.5px;color:#5d6e78;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.crm-mapping-list select{height:30px;border:1px solid #dbe4e8;border-radius:7px;background:#fff;font-size:11.5px;padding:0 5px}.crm-import-audit{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-top:10px}.crm-import-audit>div{padding:8px;border-radius:9px;border:1px solid #e2e9ec;background:#fafcfd}.crm-import-audit b,.crm-import-audit span{display:block}.crm-import-audit b{font-size:15.5px}.crm-import-audit span{font-size:10.5px;color:#616e77;margin-top:2px}.crm-import-audit .ok{background:#f4fbf7;border-color:#dceee3}.crm-import-audit .warn{background:#fff9f4;border-color:#efdfcf}.crm-import-warning{margin-top:6px;padding:7px 8px;border-radius:8px;background:#fff8f1;border:1px solid #efdfcf;color:#80664f;font-size:11.5px;line-height:1.45}.crm-import-preview{margin-top:8px;border:1px solid #e3eaed;border-radius:10px;overflow:auto}.crm-import-preview-row{min-width:720px;display:grid;grid-template-columns:38px 1.2fr 1fr 1.4fr 1fr .8fr;gap:7px;align-items:center;min-height:40px;padding:5px 8px;border-bottom:1px solid #edf1f3;font-size:11.5px}.crm-import-preview-row.head{background:#f8fafb;color:#607078;text-transform:none;font-weight:850;font-size:10.5px}.crm-import-commit{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:9px;padding:9px;border:1px solid #dbe9df;border-radius:10px;background:#f6fbf8}.crm-import-commit b,.crm-import-commit small{display:block}.crm-import-commit b{font-size:11.5px}.crm-import-commit small{font-size:10.5px;color:#607169;margin-top:2px}.crm-export-form{display:grid;grid-template-columns:1fr 1fr;gap:7px}.crm-export-form label{display:grid;gap:3px}.crm-export-form label span{font-size:10.5px;color:#607078}.crm-export-form select,.crm-export-form input{height:34px;border:1px solid #dce5e9;border-radius:8px;padding:0 7px;font-size:11.5px;background:#fff}.crm-export-form .wide,.crm-export-buttons{grid-column:1/-1}.crm-export-buttons{display:grid;grid-template-columns:1fr 1fr;gap:6px}.crm-export-note{margin-top:8px;padding:7px 8px;border-radius:8px;background:#f4f8fa;color:#5d6e78;font-size:11.5px}.crm-import-history{overflow:hidden}.crm-import-history-list>div{display:grid;grid-template-columns:1.6fr .8fr .8fr .5fr;gap:9px;align-items:center;min-height:48px;padding:7px 11px;border-bottom:1px solid #edf1f3}.crm-import-history-list b,.crm-import-history-list small{display:block}.crm-import-history-list b{font-size:11.5px}.crm-import-history-list small{font-size:10.5px;color:#606d75;margin-top:2px}.crm-import-history-list .warn b{color:#a45843}

@media(max-width:1100px){.crm-data-grid{grid-template-columns:1fr}.crm-data-counters{flex-wrap:wrap}.crm-mapping-list{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.crm-view-tabs{grid-template-columns:repeat(4,1fr)!important;overflow-x:auto}.crm-view-tabs a{font-size:11.5px;white-space:nowrap}.crm-drag-handle{display:none}.crm-data-hero{display:grid;align-items:start}.crm-data-counters{display:grid;grid-template-columns:repeat(3,1fr)}.crm-data-counters span{min-width:0}.crm-data-grid{grid-template-columns:1fr}.crm-mapping-list{grid-template-columns:1fr;max-height:300px}.crm-import-audit{grid-template-columns:1fr 1fr}.crm-import-commit{display:grid}.crm-export-form{grid-template-columns:1fr}.crm-export-form .wide,.crm-export-buttons{grid-column:auto}.crm-import-history-list>div{grid-template-columns:1fr 1fr}.crm-import-history-list>div>span:first-child{grid-column:1/-1}.crm-deal-card{padding-right:9px}}
.crm-import-history-list>a{display:grid;grid-template-columns:1.6fr .8fr .8fr .5fr;gap:9px;align-items:center;min-height:48px;padding:7px 11px;border-bottom:1px solid #edf1f3;color:inherit}.crm-import-history-list>a:hover{background:#f8fbfc}.crm-import-history-list>a b,.crm-import-history-list>a small{display:block}.crm-import-history-list>a b{font-size:11.5px}.crm-import-history-list>a small{font-size:10.5px;color:#606d75;margin-top:2px}.crm-import-history-list>a .warn b{color:#a45843}.crm-import-result{overflow:hidden}.crm-import-errors{display:grid}.crm-import-errors>div{display:grid;grid-template-columns:70px minmax(0,1fr);gap:8px;min-height:38px;align-items:center;padding:6px 10px;border-top:1px solid #edf1f3;font-size:11.5px}.crm-import-errors>.head{background:#f8fafb;font-size:10.5px;text-transform:none;font-weight:850;color:#617078}.crm-import-errors>div:not(.head)>span:last-child{color:#8c594c}.crm-import-clean{padding:16px;color:#48765a;font-size:12px;font-weight:800}
@media(max-width:720px){.crm-import-history-list>a{grid-template-columns:1fr 1fr}.crm-import-history-list>a>span:first-child{grid-column:1/-1}}
.crm-kanban-filters{display:grid;grid-template-columns:minmax(210px,1.4fr) repeat(4,minmax(125px,.8fr)) auto auto;gap:5px;align-items:center;padding:7px;border:1px solid #e1e8ec;border-radius:11px;background:#fff}.crm-kanban-filters .search{height:34px;display:flex;align-items:center;gap:5px;padding:0 8px;border:1px solid #dce5e9;border-radius:8px;background:#fafcfd}.crm-kanban-filters .search input{width:100%;border:0!important;background:transparent!important;box-shadow:none!important;padding:0!important;font-size:11.5px!important}.crm-kanban-filters select{height:34px;border:1px solid #dce5e9;border-radius:8px;background:#fff;padding:0 7px;font-size:11.5px;color:#5b6f7a}.crm-kanban-filters .btn{height:34px;min-height:34px;padding:0 9px;font-size:11.5px}.crm-kanban-filters>a{font-size:11.5px;font-weight:800;color:#5d707a;text-align:center}
@media(max-width:1100px){.crm-kanban-filters{grid-template-columns:1.3fr repeat(2,1fr) auto}.crm-kanban-filters select:nth-of-type(n+3){display:none}}
@media(max-width:720px){.crm-kanban-filters{display:flex;overflow-x:auto;gap:5px;margin:0 -7px;padding:6px 7px;border-left:0;border-right:0;border-radius:0}.crm-kanban-filters .search{flex:0 0 210px}.crm-kanban-filters select{display:block!important;flex:0 0 145px}.crm-kanban-filters .btn,.crm-kanban-filters>a{flex:0 0 auto;white-space:nowrap}}
.alert.warning{background:#fff8ef;color:#9a6735;border-color:#ecdcc8}


/* v2.1.1 — Persistent login */
.login-remember{display:grid!important;grid-template-columns:18px minmax(0,1fr);gap:9px!important;align-items:start!important;padding:9px 10px;border:1px solid #e4eaee;border-radius:11px;background:#f8fbfc;text-transform:none!important;letter-spacing:0!important;cursor:pointer}
.login-remember input{width:17px!important;height:17px!important;margin:1px 0 0!important;padding:0!important}
.login-remember b,.login-remember small{display:block}.login-remember b{font-size:12.5px;color:#4b6471}.login-remember small{font-size:11.5px;color:#81919a;line-height:1.45;margin-top:2px;font-weight:500}
.profile-trusted-login{display:grid;grid-template-columns:28px minmax(0,1fr);gap:8px;align-items:start;padding:9px 10px;margin-bottom:10px;border:1px solid #dce9e1;border-radius:10px;background:#f5fbf7}
.profile-trusted-login>span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#e2f3e8;color:#3c8058;font-size:13.5px;font-weight:900}.profile-trusted-login b,.profile-trusted-login small{display:block}.profile-trusted-login b{font-size:12px;color:#496457}.profile-trusted-login small{font-size:11.5px;color:#7b8e82;line-height:1.45;margin-top:2px}

.profile-trusted-login.off{border-color:#e3e8eb;background:#fafbfc}.profile-trusted-login.off>span{background:#edf1f3;color:#83919a}.profile-trusted-login.off b{color:#687b86}

/* =========================================================
   v2.1.2 — EMPLOYEE PORTAL UX FINAL
   Readability / daily-use polish. CRM intentionally excluded.
   ========================================================= */

/* Better keyboard accessibility across the employee portal. */
body:not(.page-crm) :where(a,button,input,select,textarea,[tabindex]):focus-visible{
  outline:3px solid rgba(48,120,159,.22)!important;
  outline-offset:2px!important;
}
body:not(.page-crm) :where(.btn,button,input,select){min-height:38px}
body:not(.page-crm) :where(input,select,textarea){font-size:13.5px}
body:not(.page-crm) .field>span,
body:not(.page-crm) .form-grid label{font-size:12.5px;letter-spacing:.055em}
body:not(.page-crm) .field small{font-size:12.5px}
body:not(.page-crm) .card-head h3{font-size:15.5px}
body:not(.page-crm) .card-head small{font-size:12.5px;line-height:1.45}
body:not(.page-crm) .empty,
body:not(.page-crm) .info-empty{font-size:13px;line-height:1.55}

/* Navigation should be readable for a full working day, not micro-UI. */
body:not(.page-crm) .nav-item{font-size:14px}
body:not(.page-crm) .nav-label{font-size:12.5px}
body:not(.page-crm) .topbar small{font-size:13px}
body:not(.page-crm) .topbar b{font-size:16px}
body:not(.page-crm) .search-trigger{font-size:13.5px}
body:not(.page-crm) .mobile-bottom-nav small{font-size:12.5px}

/* Dashboard */
.page-dashboard .executive-kpis{grid-template-columns:repeat(5,minmax(0,1fr))}
.page-dashboard .executive-kpis small{font-size:12.5px}
.page-dashboard .executive-kpis span{font-size:12.5px}
.page-dashboard .executive-kpis>a.done{background:#f5fbf7;border-color:#d9eadf}
.page-dashboard .executive-kpis>a.done strong{color:#397a56}
.page-dashboard .executive-attention-list b,
.page-dashboard .executive-timeline b,
.page-dashboard .executive-document-list b,
.page-dashboard .executive-activity-list b{font-size:13px}
.page-dashboard .executive-attention-list small,
.page-dashboard .executive-timeline small,
.page-dashboard .executive-document-list small,
.page-dashboard .executive-activity-list small{font-size:12.5px;line-height:1.4}
.page-dashboard .executive-quick-actions b{font-size:12.5px}

/* Tasks: completed work remains a first-class part of the module. */
.page-tasks .task-stats.task-stats-five{grid-template-columns:repeat(5,minmax(0,1fr))}
.page-tasks .task-stats>a{display:block;background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px 15px;box-shadow:var(--shadow-sm);transition:.15s}
.page-tasks .task-stats>a:hover{border-color:#cbd9e1;box-shadow:var(--shadow-md);transform:translateY(-1px)}
.page-tasks .task-stats>a.done-stat{background:#f5fbf7;border-color:#d9eadf}
.page-tasks .task-stats>a.done-stat strong{color:#397a56}
.page-tasks .task-stats small{font-size:12.5px!important}
.page-tasks .task-stats span{font-size:12.5px!important;line-height:1.35}
.page-tasks .task-quick-filters a{font-size:12.5px;min-height:32px;display:inline-flex;align-items:center}
.page-tasks .task-quick-filters .task-quick-done{color:#397a56}
.page-tasks .task-quick-filters .task-quick-done.active{background:#eaf6ee;border-color:#d3e7da}
.page-tasks .task-toolbar :where(select,input,.btn){font-size:13px}
.page-tasks .task-scope-tabs a,
.page-tasks .task-view-switch a{font-size:12.5px}
.page-tasks .kanban-column>header{grid-template-columns:minmax(0,1fr) auto auto;gap:6px}
.page-tasks .kanban-column>header b{font-size:13px}
.page-tasks .kanban-column>header small{font-size:12px}
.page-tasks .kanban-done-history{font-size:12px;font-weight:850;color:#3d7857;background:#eef7f1;border-radius:999px;padding:4px 7px}
.page-tasks .task-card h3{font-size:14px!important;line-height:1.4}
.page-tasks .task-card .parent-task,
.page-tasks .waiting-note{font-size:12.5px}
.page-tasks .task-card-meta,
.page-tasks .task-card-footer{font-size:12px}
.page-tasks .priority-badge,
.page-tasks .task-priority-label{font-size:12px}
.page-tasks .task-list-row b{font-size:13.5px}
.page-tasks .task-list-row small,
.page-tasks .task-list-row>div{font-size:12.5px;line-height:1.4}
.page-tasks .task-drawer-head h2{font-size:20px}
.page-tasks .task-detail-section p,
.page-tasks .task-comments p{font-size:13.5px;line-height:1.6}
.page-tasks .task-side-card small{font-size:12.5px}
.page-tasks .task-history b,
.page-tasks .task-checklist b,
.page-tasks .subtask-list b{font-size:12.5px}
.page-tasks .task-history small,
.page-tasks .subtask-list small{font-size:12px}

/* Messenger */
.page-chat .chat-link-title b{font-size:13.5px}
.page-chat .chat-link-bottom>small{font-size:12.5px}
.page-chat .chat-header-person h3{font-size:14.5px}
.page-chat .chat-header-person small{font-size:12.5px}
.page-chat .msg{font-size:14px;line-height:1.5}
.page-chat .msg-name{font-size:12.5px}
.page-chat .msg time{font-size:12px}
.page-chat .composer textarea{font-size:14px;line-height:1.45}
.page-chat .chat-info-panel b{font-size:13px}
.page-chat .chat-info-panel small{font-size:12.5px}

/* Calendar */
.page-calendar .calendar-view-switch a,
.page-calendar .calendar-nav .btn{font-size:12.5px}
.page-calendar .week-day-head span,
.page-calendar .week-day-head small,
.page-calendar .time-hour span{font-size:12px}
.page-calendar .calendar-event b{font-size:13px}
.page-calendar .calendar-event span{font-size:12px}
.page-calendar .schedule-day{font-size:12.5px}
.page-calendar .schedule-event b{font-size:14px}
.page-calendar .schedule-event small{font-size:12.5px;line-height:1.45}
.page-calendar .month-event{font-size:12px}
.page-calendar .calendar-person b,.page-calendar .room-mini b{font-size:13px}
.page-calendar .calendar-person small,.page-calendar .room-mini small{font-size:12px}

/* Employees */
.page-employees .employee-toolbar :where(input,select,.btn){font-size:13px}
.page-employees .employee-card-info b,
.page-employees .employee-directory-card b{font-size:13.5px}
.page-employees .employee-card-info small,
.page-employees .employee-directory-card small{font-size:12.5px;line-height:1.4}
.page-employees .employee-workload span,
.page-employees .employee-availability,
.page-employees .employee-presence{font-size:12px}
.page-employees .employee-drawer h2{font-size:21px}
.page-employees .employee-detail-card b{font-size:13px}
.page-employees .employee-detail-card small{font-size:12.5px;line-height:1.45}

/* Documents */
.page-documents .document-folder-tree a,
.page-documents .document-nav a{font-size:12.5px}
.page-documents .document-list-head{font-size:12px}
.page-documents .document-row{min-height:58px}
.page-documents .document-title-cell b{font-size:13.5px}
.page-documents .document-title-cell small,
.page-documents .document-row>span{font-size:12.5px;line-height:1.4}
.page-documents .document-drawer h2{font-size:20px}
.page-documents .document-meta-card b,
.page-documents .document-version-block b{font-size:13px}
.page-documents .document-meta-card small,
.page-documents .document-version-block small,
.page-documents .document-comments p{font-size:12.5px;line-height:1.5}

/* Approvals */
.page-approvals .approval-scope-tabs a,
.page-approvals .approval-toolbar :where(input,select,.btn){font-size:12.5px}
.page-approvals .approval-card-main b{font-size:13.5px}
.page-approvals .approval-card-main small,
.page-approvals .approval-card-route,
.page-approvals .approval-card-state{font-size:12.5px;line-height:1.4}
.page-approvals .approval-stage b{font-size:13px}
.page-approvals .approval-stage small{font-size:12px}
.page-approvals .approval-drawer h2{font-size:20px}
.page-approvals .approval-comments p{font-size:13.5px;line-height:1.55}
.page-approvals .approval-decision-form textarea{font-size:13.5px}

/* Mail */
.page-mail .mail-folder-link b{font-size:12.5px}
.page-mail .mail-list-main b{font-size:13px}
.page-mail .mail-list-main strong{font-size:13.5px;line-height:1.35}
.page-mail .mail-list-main small{font-size:12px}
.page-mail .mail-reader-title h2{font-size:18px}
.page-mail .mail-reader-meta b{font-size:13px}
.page-mail .mail-reader-meta small,
.page-mail .mail-recipients{font-size:12.5px;line-height:1.45}
.page-mail .mail-body-text{font-size:14px;line-height:1.7}
.page-mail .mail-compose-form :where(input,textarea,button){font-size:13.5px}

/* Profile and admin remain readable without becoming visually heavy. */
.page-profile .profile-card b,
.page-profile .profile-security-card b{font-size:13px}
.page-profile .profile-card small,
.page-profile .profile-security-card small{font-size:12.5px;line-height:1.5}
.page-admin .admin-tabs a,
.page-admin .admin-user-row,
.page-admin .form-card{font-size:13px}

/* Keep dense data areas usable on laptop screens. */
@media(max-width:1180px){
  .page-dashboard .executive-kpis{grid-template-columns:repeat(3,1fr)}
  .page-tasks .task-stats.task-stats-five{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:720px){
  body:not(.page-crm) .content{font-size:14.5px}
  body:not(.page-crm) :where(.btn,button,input,select){min-height:40px}
  .page-dashboard .executive-kpis{grid-template-columns:1fr 1fr}
  .page-dashboard .executive-kpis small{font-size:12px!important}.page-dashboard .executive-kpis span{font-size:12px!important}
  .page-tasks .task-stats.task-stats-five{grid-template-columns:1fr 1fr!important}
  .page-tasks .task-stats>a{padding:10px 11px}
  .page-tasks .task-card h3{font-size:14.5px!important}
  .page-tasks .task-list-row b{font-size:14px}
  .page-tasks .task-list-row small{font-size:12.5px}
  .page-chat .msg{font-size:14.5px}
  .page-calendar .schedule-event b{font-size:14px}
  .page-mail .mail-body-text{font-size:14.5px!important;line-height:1.68!important}
  .page-employees .employee-directory-card b{font-size:14px}
  .page-documents .document-title-cell b{font-size:14px}
  .page-approvals .approval-card-main b{font-size:14px}
}
.page-tasks .task-completed-card{background:#f5fbf7;border-color:#d9eadf}.page-tasks .task-completed-card strong{color:#397a56;font-size:13.5px}.page-tasks .task-completed-card span{display:block;margin-top:5px;font-size:12px;color:#617267;line-height:1.45}

/* v2.1.5 — clickable links in mail, notification prompt */
.mail-body-text a.mail-link{color:#0c5a8f;text-decoration:underline;text-underline-offset:2px;overflow-wrap:anywhere;font-weight:600}
.mail-body-text a.mail-link:hover{color:#0c375c}
.mail-body-text .mail-link-host{display:inline-block;margin-left:4px;padding:0 5px;border-radius:6px;background:#eef3f6;color:#5d707d;font-size:.82em;font-weight:600;text-decoration:none;vertical-align:baseline}
.mail-body-text{overflow-wrap:anywhere}
.live-toast.notify-prompt{align-items:flex-start}
.notify-prompt-actions{display:flex;gap:6px;margin-top:8px}
.notify-prompt-actions .btn{padding:5px 12px;font-size:13px;min-height:0}
@font-face{font-family:"Onest";font-style:normal;font-display:swap;font-weight:100 900;src:url("../fonts/onest-cyrillic-ext-wght-normal.woff2") format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:"Onest";font-style:normal;font-display:swap;font-weight:100 900;src:url("../fonts/onest-cyrillic-wght-normal.woff2") format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Onest";font-style:normal;font-display:swap;font-weight:100 900;src:url("../fonts/onest-latin-ext-wght-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Onest";font-style:normal;font-display:swap;font-weight:100 900;src:url("../fonts/onest-latin-wght-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* ===================================================================
   v2.1.6 — UI refresh: typeface, rhythm, calendar grid, chat panel
   =================================================================== */
body.portal,body.login-body{font-family:"Onest","Segoe UI",Arial,sans-serif;line-height:1.5}
body.portal *{scrollbar-width:thin;scrollbar-color:#c4d0d9 transparent}
body.portal a:focus-visible,body.portal button:focus-visible,body.portal [role=button]:focus-visible,body.portal input:focus-visible,body.portal select:focus-visible,body.portal textarea:focus-visible{outline:2px solid #245f8d;outline-offset:2px}
@media (prefers-reduced-motion:reduce){body.portal *,body.portal *::before,body.portal *::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* Page headers: one quiet line instead of a three-storey block */
body.portal main.content .eyebrow{display:none!important}
body.portal main.content h1{font-size:26px!important;line-height:1.15!important;letter-spacing:-.02em!important;margin:0!important;font-weight:700}
body.portal main.content h1 + p{font-size:14px!important;line-height:1.45!important;color:var(--ink-soft);margin:5px 0 0!important;max-width:78ch}
body.portal main.content .executive-hero h1,body.portal main.content [class*=hero] h1{font-size:28px!important}
body.portal main.content .card-head h3{font-size:16px;letter-spacing:-.01em}

/* Phone: KPI tiles become one swipeable row so real work is on the first screen */
@media (max-width:720px){
  body.portal main.content h1{font-size:22px!important}
  body.portal main.content h1 + p{display:none}
  body.portal .executive-kpis,body.portal .task-stats,body.portal .employee-stats,body.portal .approval-stats,body.portal .crm-kpi-row{display:flex!important;gap:8px!important;overflow-x:auto!important;scroll-snap-type:x mandatory;padding:2px 2px 8px!important;margin-bottom:8px!important;scrollbar-width:none;grid-template-columns:none!important}
  body.portal .executive-kpis::-webkit-scrollbar,body.portal .task-stats::-webkit-scrollbar,body.portal .employee-stats::-webkit-scrollbar,body.portal .approval-stats::-webkit-scrollbar,body.portal .crm-kpi-row::-webkit-scrollbar{display:none}
  body.portal .executive-kpis>*,body.portal .task-stats>*,body.portal .employee-stats>*,body.portal .approval-stats>*,body.portal .crm-kpi-row>*{flex:0 0 42%!important;min-width:0!important;min-height:0!important;height:auto!important;scroll-snap-align:start;grid-column:auto!important}
}

/* Tasks: the five kanban columns fit a laptop screen without sideways scroll */
@media (min-width:1025px){
  body.portal .task-kanban.task-kanban-five{grid-template-columns:repeat(5,minmax(190px,1fr))!important;overflow-x:auto}
}

/* ---------- Calendar: week ---------- */
@media (min-width:721px){
  .page-calendar .week-scroll{height:auto!important;overflow:visible!important;padding-top:12px}
}
@media (min-width:1025px){
  .page-calendar .calendar-layout{grid-template-columns:224px minmax(0,1fr)}
  .page-calendar .week-head{grid-template-columns:62px repeat(5,minmax(0,1fr)) repeat(2,minmax(0,.62fr))!important}
  .page-calendar .week-days-grid{grid-template-columns:repeat(5,minmax(0,1fr)) repeat(2,minmax(0,.62fr))!important}
  .page-calendar .week-calendar{min-width:0}
}
.page-calendar .week-day-col:nth-child(n+6){background:#fafcfd}
.page-calendar .week-day-col.today{background:linear-gradient(180deg,rgba(234,244,251,.6),rgba(255,255,255,.7))}
.page-calendar .calendar-event{border-radius:8px;padding:5px 7px;display:flex!important;flex-direction:column;justify-content:flex-start;align-items:stretch;text-align:left}
.page-calendar .calendar-event.is-split{right:auto}
.page-calendar .calendar-event.is-narrow{padding:4px 5px}
.page-calendar .calendar-event.is-narrow span{display:none}
.page-calendar .calendar-event b{font-size:12.5px;font-weight:650;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.page-calendar .calendar-event[style*="height:28px"] b,.page-calendar .calendar-event[style*="height:30px"] b{-webkit-line-clamp:1}
.page-calendar .calendar-event span{font-size:11.5px}
.page-calendar .now-line{z-index:7}
.page-calendar .week-day-head span{font-weight:700}

@media (min-width:1025px){.page-calendar .week-day-head small{display:none}}
.page-calendar .calendar-event.is-stacked{box-shadow:0 0 0 2px #fff,0 6px 16px rgba(14,42,63,.14)}
.page-calendar .calendar-event span{color:#455a68}

/* ---------- Calendar: month ---------- */
.page-calendar .month-grid{grid-auto-rows:minmax(112px,auto)}
.page-calendar .month-grid .month-day{display:flex!important;flex-direction:column;align-items:stretch;justify-content:flex-start;width:auto!important;height:auto!important;min-height:112px!important;margin:0!important;border-radius:0!important;box-shadow:none!important;font-size:inherit;line-height:1.3;color:var(--ink)}
.page-calendar .month-grid .month-day.is-outside{background:#f7f9fb;color:#8794a0}
.page-calendar .month-grid .month-day.is-outside .month-number{font-weight:600}
.page-calendar .month-number{align-self:flex-start;flex:0 0 auto;width:28px;height:28px;font-size:13px}
.page-calendar .month-events{width:100%;min-width:0}
.page-calendar .month-event{font-size:11.5px;padding:3px 6px}
@media (max-width:720px){
  .page-calendar .month-grid{grid-auto-rows:minmax(58px,auto)}
  .page-calendar .month-grid .month-day{min-height:58px!important;padding:4px 3px}
  .page-calendar .month-number{width:26px;height:26px;font-size:12px}
}

/* ---------- Calendar: toolbar on phones ---------- */
@media (max-width:720px){
  .page-calendar .calendar-toolbar{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:8px!important;align-items:center}
  .page-calendar .calendar-nav{grid-column:1/-1;display:flex!important;align-items:center;gap:6px;flex-wrap:nowrap!important;width:100%}
  .page-calendar .calendar-nav strong{margin-left:auto;font-size:13px;text-align:right;white-space:nowrap}
  .page-calendar .calendar-view-switch{grid-column:1;grid-row:2;width:100%!important;display:grid!important;grid-template-columns:repeat(3,1fr);margin:0!important}
  .page-calendar .calendar-mobile-actions{grid-column:2;grid-row:2;display:block!important;margin:0!important}
}
/* Tasks filters on phones: two compact rows instead of five full-width controls */
@media (max-width:720px){
  body.portal .task-filter-main{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}
  body.portal .task-filter-main .task-search{grid-column:1/-1!important}
  body.portal .task-filter-main select,body.portal .task-filter-main .btn{width:100%!important;min-width:0;margin:0!important}
  body.portal .task-filter-main .task-filter-reset{grid-column:1/-1;justify-self:center}
}

/* ---------- Contrast fixes found by rendering audit ---------- */
body.portal .executive-hero-copy p,body.portal main.content .executive-hero-copy h1 + p{color:rgba(255,255,255,.82)!important}
body.portal .me small,body.portal .sidebar-profile-wrap small{color:#b9c9d6!important}
body.portal .nav-label{color:#a9bccb!important}
body.portal .card-head small{color:#5b6c78}
body.portal .nav-badge,body.portal .notification-center-toggle em,body.portal .icon-button>em{background:#c43c3c!important;color:#fff!important}
body.portal .task-scope-tabs a,body.portal .task-view-switch a,body.portal .calendar-view-switch a,body.portal .employee-view-tabs a,body.portal .crm-view-tabs a{color:#4f606c}
body.portal .document-list-head span{color:#566773}

/* ---------- Messenger: info panel opens from the chat header ---------- */
.page-chat .chat-header-person{cursor:pointer;border-radius:12px;padding:4px 10px 4px 4px;margin:-4px 0 -4px -4px;transition:background .15s ease;min-width:0}
.page-chat .chat-header-person:hover{background:var(--soft)}
.page-chat .chat-header-person h3{display:flex;align-items:center;gap:6px}
.page-chat .chat-header-person h3::after{content:"";width:7px;height:7px;border-right:2px solid #8a99a4;border-bottom:2px solid #8a99a4;transform:rotate(-45deg);flex:0 0 auto;margin-top:1px;opacity:.75;transition:transform .15s ease}
.page-chat .messenger-layout:not(.info-hidden) .chat-header-person h3::after{transform:rotate(135deg);margin-top:4px}

/* ===================================================================
   v2.1.7 — Mail: full-height three panes, the message gets the space
   =================================================================== */
.mail-page.mail-v3{display:block!important;min-width:0;width:100%}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
body.portal .mail-v3 .mail3-layout{display:grid;grid-template-columns:212px minmax(300px,360px) minmax(0,1fr);gap:12px;height:calc(100dvh - 116px);min-height:520px}
body.portal .mail-v3 .mail3-folders,body.portal .mail-v3 .mail3-list,body.portal .mail-v3 .mail3-reader{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 1px 2px rgba(14,42,63,.04),0 8px 24px rgba(14,42,63,.05);min-height:0;min-width:0;display:flex;flex-direction:column;overflow:hidden}
.mail-v3 .mail3-ico{width:18px;height:18px;flex:0 0 auto}

/* folders */
.mail-v3 .mail3-folders{padding:12px;gap:10px;overflow:visible}
.mail-v3 .mail3-compose{display:flex;align-items:center;gap:8px;justify-content:center;height:42px;width:100%;border:0;border-radius:11px;background:var(--brand);color:#fff;font:inherit;font-weight:650;font-size:14px;cursor:pointer;box-shadow:0 6px 16px rgba(12,55,92,.22);transition:background .15s}
.mail-v3 .mail3-compose:hover{background:var(--brand-2)}
.mail-v3 .mail3-folder-nav{display:flex;flex-direction:column;gap:2px}
.mail-v3 .mail3-folder-nav a{display:flex;align-items:center;gap:10px;height:40px;padding:0 10px;border-radius:10px;color:#3d5260;text-decoration:none;font-size:14px;font-weight:550;transition:background .12s}
.mail-v3 .mail3-folder-nav a:hover{background:#f2f6f9}
.mail-v3 .mail3-folder-nav a.active{background:#e8f1f8;color:var(--brand);font-weight:700}
.mail-v3 .mail3-folder-nav a>span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mail-v3 .mail3-folder-nav a em{font-style:normal;font-size:12px;font-weight:650;color:#5b6c78;background:#eef2f5;border-radius:999px;padding:1px 8px;min-width:22px;text-align:center}
.mail-v3 .mail3-folder-nav a em.is-unread{background:var(--brand);color:#fff}
.mail-v3 .mail3-folder-nav a em.hidden{display:none}
.mail-v3 .mail3-account{margin-top:auto;display:flex;flex-direction:column;gap:8px;padding-top:10px;border-top:1px solid var(--line)}
.mail-v3 .mail3-account-line{display:flex;align-items:center;gap:8px;min-width:0}
.mail-v3 .mail3-sync-dot{width:8px;height:8px;border-radius:50%;background:#2f9e68;box-shadow:0 0 0 3px #e3f4ea;flex:0 0 auto}
.mail-v3 .mail3-account-text{min-width:0}
.mail-v3 .mail3-account-text b{display:block;font-size:12.5px;font-weight:650;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mail-v3 .mail3-account-text small{display:block;font-size:11.5px;color:#5f707c}
.mail-v3 .mail3-account-actions{display:flex;align-items:center;gap:6px}
.mail-v3 .mail3-account-actions>.mail3-icon-btn{flex:1;justify-content:flex-start;padding:0 10px;gap:8px;font-size:13px}
.mail-v3 .mail3-icon-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:auto;min-width:34px;height:34px;padding:0 8px;border:1px solid var(--line);border-radius:9px;background:#fff;color:#3d5260;font:inherit;font-weight:600;cursor:pointer;list-style:none;transition:background .12s,border-color .12s}
.mail-v3 .mail3-icon-btn:hover{background:#f2f6f9;border-color:#cfdbe4}
.mail-v3 summary.mail3-icon-btn::-webkit-details-marker{display:none}
.mail-v3 .mail3-account-more{position:relative}
.mail-v3 .mail3-popover{position:absolute;bottom:calc(100% + 8px);right:0;width:260px;padding:14px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow-md);z-index:30}
.mail-v3 .mail3-popover b{font-size:13.5px}
.mail-v3 .mail3-popover p{font-size:12.5px;color:#4f606c;margin:6px 0 10px;line-height:1.45}

/* list */
.mail-v3 .mail3-list-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:14px 14px 8px 16px}
.mail-v3 .mail3-list-head h2{font-size:17px;margin:0;letter-spacing:-.01em}
.mail-v3 .mail3-list-head small{display:block;font-size:12px;color:#5f707c;margin-top:2px}
.mail-v3 .mail3-search{display:flex;gap:6px;padding:0 12px 10px;border-bottom:1px solid var(--line)}
.mail-v3 .mail3-search label{flex:1;min-width:0;display:flex;align-items:center;gap:6px;height:36px;padding:0 10px;border:1px solid var(--line);border-radius:10px;background:#f8fafc;color:#5f707c}
.mail-v3 .mail3-search label:focus-within{border-color:#9db8cc;background:#fff}
.mail-v3 .mail3-search input{flex:1;min-width:0;border:0;outline:0;background:transparent;font:inherit;font-size:13.5px;color:var(--ink);height:34px;padding:0}
.mail-v3 .mail3-chip{display:inline-flex;align-items:center;height:36px;padding:0 11px;border:1px solid var(--line);border-radius:10px;background:#fff;color:#3d5260;font:inherit;font-size:12.5px;font-weight:600;white-space:nowrap;cursor:pointer;text-decoration:none;width:auto}
.mail-v3 .mail3-chip.active{background:#e8f1f8;border-color:#b8cfe0;color:var(--brand)}
.mail-v3 .mail-bulk-bar:not(.hidden){display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:8px 12px;border-bottom:1px solid var(--line);background:#f6f9fb}
.mail-v3 .mail-bulk-bar button{height:30px;width:auto;padding:0 10px;font-size:12.5px;border-radius:8px}
body.portal .mail-v3 .mail3-rows{flex:1;min-height:0;overflow-y:auto;padding:6px;display:block;max-height:none;border:0}
body.portal .mail-v3 .mail3-rows .mail-message-row{position:relative;display:block;border:0;border-radius:10px;margin:0 0 2px;background:transparent;padding:0;min-height:0;box-shadow:none}
body.portal .mail-v3 .mail3-rows .mail-message-row>a{display:flex;align-items:flex-start;gap:0;padding:10px 12px 10px 28px;border-radius:10px;color:inherit;text-decoration:none;min-height:0;background:transparent}
body.portal .mail-v3 .mail3-rows .mail-message-row:hover{background:#f4f7fa}
body.portal .mail-v3 .mail3-rows .mail-message-row.active{background:#e9f1f8;box-shadow:inset 3px 0 0 var(--brand)}
body.portal .mail-v3 .mail3-rows .mail-read-dot{position:absolute;left:12px;top:17px;width:8px;height:8px;border-radius:50%;background:transparent;margin:0}
body.portal .mail-v3 .mail3-rows .mail-message-row.unread .mail-read-dot{background:var(--brand)}
body.portal .mail-v3 .mail3-rows .mail-select-box{position:absolute;left:6px;top:11px;z-index:2;opacity:0;transition:opacity .12s;width:18px;height:18px;margin:0}
body.portal .mail-v3 .mail3-rows .mail-message-row:hover .mail-select-box,body.portal .mail-v3 .mail3-rows .mail-select-box:focus-within,body.portal .mail-v3 .mail3-rows .mail-message-row:has(input:checked) .mail-select-box{opacity:1}
body.portal .mail-v3 .mail3-rows .mail-message-row:hover .mail-read-dot,body.portal .mail-v3 .mail3-rows .mail-message-row:has(input:checked) .mail-read-dot{opacity:0}
body.portal .mail-v3 .mail3-rows .mail-list-main{flex:1;min-width:0;display:block}
body.portal .mail-v3 .mail3-rows .mail-list-main>div{display:flex;align-items:center;gap:6px;min-width:0}
body.portal .mail-v3 .mail3-rows .mail-list-main b{flex:1;min-width:0;font-size:13.5px;font-weight:500;color:#3d5260;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body.portal .mail-v3 .mail3-rows .mail-message-row.unread .mail-list-main b{font-weight:700;color:var(--ink)}
body.portal .mail-v3 .mail3-rows .mail-list-main time{flex:0 0 auto;font-size:12px;color:#5f707c;font-weight:500}
body.portal .mail-v3 .mail3-rows .mail-message-row.unread .mail-list-main time{color:var(--brand);font-weight:700}
body.portal .mail-v3 .mail3-rows .mail-list-main strong{display:block;margin-top:3px;font-size:13.5px;font-weight:500;color:#4a5d6a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body.portal .mail-v3 .mail3-rows .mail-message-row.unread .mail-list-main strong{color:var(--ink);font-weight:600}
body.portal .mail-v3 .mail3-rows .mail-list-main small{display:block;margin-top:2px;font-size:11.5px;color:#5f707c}
.mail-v3 .mail3-row-icons{display:inline-flex;gap:3px;color:#6b7c88}
.mail-v3 .mail3-row-icons i{display:inline-flex}
.mail-v3 .mail3-row-icons .mail3-ico{width:14px;height:14px}
.mail-v3 .mail3-row-icons i.is-star{color:#c98a12}
.mail-v3 .mail3-row-icons i.is-star .mail3-ico{fill:currentColor}
.mail-v3 .mail-message-row.mail-filter-hidden{display:none!important}

/* reader */
.mail-v3 .mail3-head{padding:16px 22px 12px;border-bottom:1px solid var(--line);flex:0 0 auto}
.mail-v3 .mail3-head-top{display:flex;align-items:flex-start;gap:10px}
.mail-v3 .mail3-back{display:none}
.mail-v3 .mail3-subject{flex:1;min-width:0;margin:2px 0 0;font-size:20px;line-height:1.3;letter-spacing:-.015em;font-weight:700;color:var(--ink);overflow-wrap:anywhere}
.mail-v3 .mail3-important{display:inline-flex;vertical-align:-2px;margin-right:6px;color:#c98a12}
.mail-v3 .mail3-important .mail3-ico{fill:currentColor}
.mail-v3 .mail3-wide-toggle .when-wide{display:none}
.mail-v3 .mail3-layout.is-wide .mail3-wide-toggle .when-wide{display:inline-flex}
.mail-v3 .mail3-layout.is-wide .mail3-wide-toggle .when-normal{display:none}
.mail-v3 .mail3-from{display:flex;align-items:center;gap:10px;margin-top:12px;min-width:0}
.mail-v3 .mail3-from .mini-avatar{width:36px;height:36px;font-size:13px;flex:0 0 auto}
.mail-v3 .mail3-from-text{flex:1;min-width:0}
.mail-v3 .mail3-from-text>div{display:flex;align-items:baseline;gap:8px;min-width:0}
.mail-v3 .mail3-from-text b{font-size:14.5px;font-weight:650;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mail-v3 .mail3-from-text span{font-size:13px;color:#5f707c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mail-v3 .mail3-from-text small{display:block;font-size:12.5px;color:#5f707c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}
.mail-v3 .mail3-from time{flex:0 0 auto;font-size:12.5px;color:#5f707c;white-space:nowrap}
body.portal .mail-v3 .mail3-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start!important;gap:6px;margin-top:12px;position:relative}
body.portal .mail-v3 .mail3-actions>.btn{display:inline-flex;align-items:center;gap:6px;height:34px;min-height:0;width:auto;padding:0 12px;border-radius:9px;font-size:13.5px;font-weight:600;box-shadow:none}
body.portal .mail-v3 .mail3-actions>.btn.ghost{background:#fff;border:1px solid var(--line);color:#2f4655}
body.portal .mail-v3 .mail3-actions>.btn.ghost:hover{background:#f2f6f9;border-color:#cfdbe4}
body.portal .mail-v3 .mail3-actions .mail3-ico{width:16px;height:16px}
body.portal .mail-v3 .mail3-actions .mail-more-menu{position:absolute;top:calc(100% + 6px);left:auto;right:auto;z-index:40;min-width:240px}
.mail-v3 .mail3-scroll{flex:1;min-height:0;overflow-y:auto;padding:16px 22px 22px}
.mail-v3 .mail3-attachments{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px;align-items:flex-start}
.mail-v3 .mail3-file{display:inline-flex;align-items:center;gap:9px;max-width:300px;min-width:0;padding:6px 8px 6px 6px;border:1px solid var(--line);border-radius:11px;background:#fff;color:inherit;text-decoration:none;transition:border-color .12s,background .12s}
.mail-v3 .mail3-file:hover{border-color:#9db8cc;background:#f7fafc}
.mail-v3 .mail3-file-badge{flex:0 0 auto;display:grid;place-items:center;width:34px;height:34px;border-radius:8px;font-size:10px;font-weight:800;letter-spacing:.02em;color:#fff;background:#5f707c}
.mail-v3 .mail3-file-badge.is-doc{background:#2b5797}.mail-v3 .mail3-file-badge.is-xls{background:#1f7244}.mail-v3 .mail3-file-badge.is-pdf{background:#c43c3c}.mail-v3 .mail3-file-badge.is-img{background:#6b5ca5}.mail-v3 .mail3-file-badge.is-zip{background:#8a6a1f}.mail-v3 .mail3-file-badge.is-ppt{background:#c4572b}.mail-v3 .mail3-file-badge.is-cad{background:#0f6e7a}
.mail-v3 .mail3-file-text{min-width:0;display:flex;flex-direction:column}
.mail-v3 .mail3-file-text b{font-size:13px;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mail-v3 .mail3-file-text small{font-size:11.5px;color:#5f707c}
.mail-v3 .mail3-file-dl{color:#5f707c;display:inline-flex;margin-left:2px}
.mail-v3 .mail3-file.is-small{padding:4px 8px 4px 4px}
.mail-v3 .mail3-file.is-small .mail3-file-badge{width:26px;height:26px;font-size:9px}
.mail-v3 .mail3-sig-images{flex-basis:100%}
.mail-v3 .mail3-sig-images summary{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:#5f707c;cursor:pointer;list-style:none;padding:2px 0}
.mail-v3 .mail3-sig-images summary::-webkit-details-marker{display:none}
.mail-v3 .mail3-sig-images summary .mail3-ico{width:14px;height:14px}
.mail-v3 .mail3-sig-images[open] summary{margin-bottom:8px}
.mail-v3 .mail3-sig-images>div{display:flex;flex-wrap:wrap;gap:6px}
body.portal .mail-v3 .mail3-body{padding:0!important;border:0!important;min-height:0!important;max-width:860px;font-size:14.5px!important;line-height:1.65!important;color:#22394a;background:none!important}
body.portal .mail-v3 .mail3-body blockquote{margin:12px 0;padding:2px 0 2px 14px;border-left:3px solid #d5e0e8;color:#4f606c}
.mail-v3 .mail3-thread{margin-top:22px}
.mail-v3 .mail3-safe{display:flex;align-items:center;gap:6px;margin:28px 0 0;font-size:12px;color:#5f707c;cursor:help}
.mail-v3 .mail3-safe .mail3-ico{width:15px;height:15px;color:#2f9e68}
.mail-v3 .mail3-empty{margin:auto;text-align:center;padding:30px;max-width:340px;color:#4f606c}
.mail-v3 .mail3-empty>span{display:inline-grid;place-items:center;width:64px;height:64px;border-radius:18px;background:#eef4f8;color:var(--brand);margin-bottom:12px}
.mail-v3 .mail3-empty>span .mail3-ico{width:30px;height:30px}
.mail-v3 .mail3-empty h3{margin:0 0 6px;font-size:17px;color:var(--ink)}
.mail-v3 .mail3-empty p{margin:0 0 14px;font-size:13.5px}
.mail-v3 .mail3-empty .btn{display:inline-flex;align-items:center;gap:6px;width:auto}
.mail-v3 .mail3-empty.is-error>span{background:#fff1f1;color:#c43c3c;font-size:26px;font-weight:800}

/* reader container is narrow → secondary buttons become icons */
.mail-v3 .mail3-reader{container-type:inline-size}
@container (max-width:560px){
  body.portal .mail-v3 .mail3-actions>.btn.ghost>span{display:none}
  body.portal .mail-v3 .mail3-actions>.btn.ghost{padding:0 9px}
  .mail-v3 .mail3-from-text span{display:none}
}

/* wide reading mode: list hidden, folders as a rail */
body.portal .mail-v3 .mail3-layout.is-wide{grid-template-columns:68px minmax(0,1fr)}
body.portal .mail-v3 .mail3-layout.is-wide .mail3-list{display:none}

body.portal .mail-v3 .mail3-layout.is-wide .mail3-folders{padding:10px 8px;align-items:center}
body.portal .mail-v3 .mail3-layout.is-wide .mail3-compose{width:44px;height:44px;padding:0;justify-content:center;border-radius:12px}
body.portal .mail-v3 .mail3-layout.is-wide .mail3-compose span,body.portal .mail-v3 .mail3-layout.is-wide .mail3-folder-nav a>span,body.portal .mail-v3 .mail3-layout.is-wide .mail3-account-text,body.portal .mail-v3 .mail3-layout.is-wide .mail3-account-actions .mail3-icon-btn>span{display:none}
body.portal .mail-v3 .mail3-layout.is-wide .mail3-folder-nav{width:100%}
body.portal .mail-v3 .mail3-layout.is-wide .mail3-folder-nav a{justify-content:center;padding:0;height:44px;position:relative}
body.portal .mail-v3 .mail3-layout.is-wide .mail3-folder-nav a em{position:absolute;top:4px;right:3px;min-width:18px;height:18px;padding:0 5px;font-size:11px;line-height:18px}
body.portal .mail-v3 .mail3-layout.is-wide .mail3-account{padding:8px 0 0;border-top:1px solid var(--line);width:100%;align-items:center}
body.portal .mail-v3 .mail3-layout.is-wide .mail3-account-line{justify-content:center}
body.portal .mail-v3 .mail3-layout.is-wide .mail3-account-actions{flex-direction:column;gap:4px}
body.portal .mail-v3 .mail3-layout.is-wide .mail3-popover{left:calc(100% + 10px);bottom:0}

/* laptops: folders become an icon rail */
@media (max-width:1499px){
  body.portal .mail-v3 .mail3-layout{grid-template-columns:68px minmax(280px,340px) minmax(0,1fr)}

  body.portal .mail-v3 .mail3-folders{padding:10px 8px;align-items:center}
  body.portal .mail-v3 .mail3-compose{width:44px;height:44px;padding:0;justify-content:center;border-radius:12px}
  body.portal .mail-v3 .mail3-compose span,  body.portal .mail-v3 .mail3-folder-nav a>span,  body.portal .mail-v3 .mail3-account-text,  body.portal .mail-v3 .mail3-account-actions .mail3-icon-btn>span{display:none}
  body.portal .mail-v3 .mail3-folder-nav{width:100%}
  body.portal .mail-v3 .mail3-folder-nav a{justify-content:center;padding:0;height:44px;position:relative}
  body.portal .mail-v3 .mail3-folder-nav a em{position:absolute;top:4px;right:3px;min-width:18px;height:18px;padding:0 5px;font-size:11px;line-height:18px}
  body.portal .mail-v3 .mail3-account{padding:8px 0 0;border-top:1px solid var(--line);width:100%;align-items:center}
  body.portal .mail-v3 .mail3-account-line{justify-content:center}
  body.portal .mail-v3 .mail3-account-actions{flex-direction:column;gap:4px}
  body.portal .mail-v3 .mail3-popover{left:calc(100% + 10px);bottom:0}
}
@media (max-width:1024px){
  body.portal .mail-v3 .mail3-layout{grid-template-columns:64px 280px minmax(0,1fr);gap:10px;height:calc(100dvh - 104px)}
  .mail-v3 .mail3-head{padding:14px 16px 10px}.mail-v3 .mail3-scroll{padding:14px 16px 18px}
}

/* phones: list and message are two screens; folders become a chip row */
@media (max-width:720px){
  body.portal .mail-v3 .mail3-layout,body.portal .mail-v3 .mail3-layout.is-wide{display:block;height:auto;min-height:0}
  body.portal .mail-v3.mobile-mail-list .mail3-reader{display:none}
  body.portal .mail-v3.mobile-mail-open .mail3-folders,body.portal .mail-v3.mobile-mail-open .mail3-list{display:none}
  body.portal .mail-v3 .mail3-folders{flex-direction:row;align-items:center;gap:6px;padding:8px;margin-bottom:8px;overflow-x:auto;overflow-y:visible;border-radius:14px;scrollbar-width:none}
  body.portal .mail-v3 .mail3-folders::-webkit-scrollbar{display:none}
  body.portal .mail-v3 .mail3-compose{width:auto;height:38px;padding:0 12px;flex:0 0 auto;font-size:13.5px}
  body.portal .mail-v3 .mail3-compose span{display:inline}
  body.portal .mail-v3 .mail3-folder-nav{flex-direction:row;gap:4px;width:auto;flex:0 0 auto}
  body.portal .mail-v3 .mail3-folder-nav a{height:38px;padding:0 10px;gap:6px;justify-content:flex-start;white-space:nowrap}
  body.portal .mail-v3 .mail3-folder-nav a>span{display:inline}
  body.portal .mail-v3 .mail3-folder-nav a em{position:static;min-width:20px;height:auto;line-height:1.4}
  body.portal .mail-v3 .mail3-account{margin:0;padding:0;border:0;flex-direction:row;width:auto;flex:0 0 auto}
  body.portal .mail-v3 .mail3-account-line{display:none}
  body.portal .mail-v3 .mail3-account-actions{flex-direction:row}
  body.portal .mail-v3 .mail3-account-actions>.mail3-icon-btn>span{display:none}
  body.portal .mail-v3 .mail3-popover{position:fixed;left:12px;right:12px;bottom:auto;top:120px;width:auto}
  body.portal .mail-v3 .mail3-list{border-radius:14px}
  body.portal .mail-v3 .mail3-rows{overflow:visible;max-height:none}
  body.portal .mail-v3 .mail3-rows .mail-select-box{display:none}
  body.portal .mail-v3 .mail3-reader{border-radius:14px;min-height:calc(100dvh - 150px)}
  .mail-v3 .mail3-back{display:inline-grid;place-items:center;width:34px;height:34px;margin:-2px 0 0 -6px;border-radius:9px;color:var(--ink);flex:0 0 auto}
  .mail-v3 .mail3-head{padding:12px 14px 10px}
  .mail-v3 .mail3-subject{font-size:18px}
  .mail-v3 .mail3-wide-toggle{display:none}
  .mail-v3 .mail3-scroll{overflow:visible;padding:14px}
  .mail-v3 .mail3-file{max-width:100%}
}

/* ===================================================================
   v2.1.8 — section access + admin-managed mail
   =================================================================== */
.role-badge{display:inline-flex;align-items:center;font-style:normal;font-size:11.5px;font-weight:650;line-height:1;padding:4px 7px;border-radius:999px;background:#eef2f5;color:#4a5d6a;margin:4px 4px 0 0}
.role-badge.is-admin{background:#fde9e7;color:#a5352c}
.role-badge.is-module{background:#e6f1fa;color:#0c4f86}
.admin-role-line{display:flex;flex-wrap:wrap}
.admin-user-form label small{display:block;font-weight:400;color:#5f707c;font-size:11.5px;margin-top:4px}

.module-access-box{margin:14px 0 10px;padding:14px;border:1px solid var(--line);border-radius:14px;background:#fbfdfe}
.module-access-head b{display:block;font-size:14.5px}
.module-access-head small{display:block;font-size:12.5px;color:#5f707c;margin-top:3px;line-height:1.45}
.module-access-row{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:6px 12px;align-items:center;padding:12px 0 0;margin-top:12px;border-top:1px solid var(--line)}
.module-access-label b{display:block;font-size:14px}
.module-access-label small{display:block;font-size:12px;color:#5f707c;margin-top:2px}
.module-access-label em{font-style:normal;color:#0c4f86;font-weight:600}
.module-access-row select{height:38px;border:1px solid var(--line);border-radius:10px;padding:0 10px;font:inherit;font-size:13.5px;background:#fff;width:100%}
.module-access-extras{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px 16px}
.module-access-extras label{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#2f4655}
@media (max-width:620px){.module-access-row{grid-template-columns:1fr}}

.mail-admin-card .card-head small{max-width:72ch}
.mail-admin-grid{display:grid;grid-template-columns:minmax(300px,420px) minmax(0,1fr);gap:18px;margin-top:6px}
.mail-admin-grid h4{margin:0 0 10px;font-size:15px}
.mail-server-row{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;padding:12px;border:1px solid var(--line);border-radius:12px;margin-bottom:8px;background:#fff}
.mail-server-row.is-off{opacity:.65}
.mail-server-row b{display:block;font-size:14px}
.mail-server-row small{display:block;font-size:12px;color:#5f707c;margin-top:2px;overflow-wrap:anywhere}
.mail-server-actions{display:flex;gap:6px;flex:0 0 auto}
.mail-server-actions .btn{height:32px;min-height:0;padding:0 10px;font-size:12.5px;width:auto}
.mail-server-form{display:grid;gap:10px;padding:14px;border:1px dashed #c9d6e0;border-radius:12px;background:#fbfdfe;margin-top:4px}
.mail-server-form>b{font-size:14px}
.mail-server-active{display:flex;align-items:center;gap:8px;font-size:13px}
.mail-server-form-actions{display:flex;justify-content:flex-end;gap:8px}
.mail-admin-boxes-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}
.mail-admin-boxes-head h4{margin:0}
.mail-admin-boxes-head .btn{width:auto;height:34px;min-height:0;font-size:13px}
.mail-box-list{display:grid;gap:6px}
.mail-box-row{border:1px solid var(--line);border-radius:12px;background:#fff}
.mail-box-row summary{display:flex;align-items:center;gap:10px;padding:10px 12px;cursor:pointer;list-style:none}
.mail-box-row summary::-webkit-details-marker{display:none}
.mail-box-row[open] summary{border-bottom:1px solid var(--line)}
.mail-box-dot{width:9px;height:9px;border-radius:50%;background:#b9c4cc;flex:0 0 auto}
.mail-box-row.is-ok .mail-box-dot{background:#2f9e68}.mail-box-row.is-wait .mail-box-dot{background:#d29a1e}.mail-box-row.is-err .mail-box-dot{background:#c43c3c}
.mail-box-name{flex:1;min-width:0}
.mail-box-name b{display:block;font-size:13.5px}
.mail-box-name small{display:block;font-size:12px;color:#5f707c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mail-box-row summary em{font-style:normal;font-size:12px;font-weight:650;padding:3px 8px;border-radius:999px;background:#eef2f5;color:#4a5d6a;white-space:nowrap}
.mail-box-row.is-ok summary em{background:#e3f4ea;color:#1f6e45}.mail-box-row.is-wait summary em{background:#fdf2dc;color:#7a5408}.mail-box-row.is-err summary em{background:#fde9e7;color:#a5352c}
.mail-box-edit{padding:12px}
.mail-box-form{display:grid;grid-template-columns:1fr 1.4fr 1fr auto;gap:8px;align-items:end}
.mail-box-form .btn{height:40px;width:auto}
.mail-box-actions{display:flex;gap:8px;margin-top:8px}
.mail-box-actions .btn{height:32px;min-height:0;font-size:12.5px;width:auto}
.mail-box-error{margin:0 0 10px;padding:8px 10px;border-radius:9px;background:#fff1f1;color:#a5352c;font-size:12.5px}
@media (max-width:1100px){.mail-admin-grid{grid-template-columns:1fr}.mail-box-form{grid-template-columns:1fr 1fr}.mail-box-form .btn{grid-column:1/-1}}

.mail-connect-simple,.mail-connect-wait{max-width:620px;margin:8px auto}
.mail-connect-facts{display:grid;gap:6px;margin:14px 0;padding:12px 14px;border-radius:12px;background:#f6f9fb;border:1px solid var(--line)}
.mail-connect-facts div{display:flex;gap:10px;font-size:13.5px}
.mail-connect-facts dt{width:70px;color:#5f707c;flex:0 0 auto}
.mail-connect-facts dd{margin:0;font-weight:600;overflow-wrap:anywhere}
.mail-v3 .mail3-admin-link{margin-bottom:12px;height:36px;display:flex;align-items:center;justify-content:center}

/* v2.2.3 — Мессенджер на ноутбуках и мониторах: окно чата по высоте экрана,
   лента сообщений прокручивается внутри, поле ввода всегда видно внизу.
   Телефонная раскладка (до 720px) не меняется. */
@media(min-width:721px){
  .page-chat .messenger-page{min-height:0}
  .page-chat .messenger-layout{height:calc(100vh - 124px);height:calc(100dvh - 124px);min-height:420px}
  .page-chat .messenger-layout>*{min-height:0}
  .page-chat .chat-side{height:100%;min-height:0;overflow:hidden}
  .page-chat .chat-side .chat-tab-panel{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain}
  .page-chat .chat-panel{display:flex!important;flex-direction:column;height:100%;min-height:0!important;overflow:hidden}
  .page-chat .chat-panel>*{flex:0 0 auto}
  .page-chat .chat-panel>#messages{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain}
  .page-chat .chat-info-panel{height:100%;min-height:0;overflow-y:auto}
  .page-chat .composer textarea{max-height:32vh;overflow-y:auto}
}
/* Телефон: та же схема — лента между шапкой и полем ввода. Раньше лента попадала
   не в ту строку сетки (закреплённое и «печатает…» скрыты) и выталкивала поле ввода за экран. */
@media(max-width:720px){
  .page-chat .messenger-layout.has-active-chat .chat-panel,
  .page-chat.mobile-chat-open .messenger-layout.has-active-chat .chat-panel{display:flex!important;flex-direction:column;min-height:0!important;overflow:hidden}
  .page-chat .messenger-layout.has-active-chat .chat-panel>*{flex:0 0 auto}
  .page-chat .messenger-layout.has-active-chat .chat-panel>#messages{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
}
/* невысокие экраны ноутбуков (масштаб Windows 125–200%) */
@media(min-width:721px) and (max-height:760px){
  .page-chat .content{padding-top:10px;padding-bottom:10px}
  .page-chat .messenger-layout{height:calc(100vh - 96px);height:calc(100dvh - 96px);min-height:340px}
  .page-chat .composer-hint{display:none}
  .page-chat .chat-panel>header{padding-top:8px;padding-bottom:8px}
  .page-chat .messages{padding:12px 16px}
}
.composer.dragging{outline:2px dashed var(--brand-3);outline-offset:-4px}
/* невысокие экраны: меню слева помещается целиком и прокручивается само, страница не «ездит» */
@media(min-width:621px) and (max-height:760px){
  .sidebar{overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
  .sidebar nav{gap:3px}.nav-item{height:40px}.brand{min-height:54px;padding-bottom:14px}
}

/* v2.2.5 — letters rendered with their own layout and pictures */
.mail3-body.is-html{white-space:normal;color:#1f2d36;background:#fff;overflow-x:auto;overflow-wrap:anywhere}
.mail3-body.is-html img{max-width:100%;height:auto;vertical-align:middle;border:0}
.mail3-body.is-html img[data-gs-src]{min-width:22px;min-height:16px;background:#eef2f5;outline:1px dashed #c9d4db;outline-offset:-1px}
.mail3-body.is-html img{display:inline-block}
.mail3-body.is-html table{width:auto;min-width:0;max-width:100%;border-collapse:separate;border-spacing:0}
.mail3-body.is-html td,.mail3-body.is-html th{vertical-align:top;text-align:inherit;padding:0;border:0;font-size:inherit;line-height:inherit;background:transparent;color:inherit;letter-spacing:inherit}
.mail3-body.is-html th{font-weight:700}
.mail3-body.is-html p{margin:0 0 .7em}
.mail3-body.is-html blockquote{margin:.6em 0 .6em .2em;padding-left:.9em;border-left:3px solid #d7e1e7;color:#4c5f6b}
.mail3-body.is-html pre{white-space:pre-wrap;font-family:inherit}
.mail3-body.is-html h1,.mail3-body.is-html h2,.mail3-body.is-html h3{line-height:1.3;margin:.6em 0 .4em}
.mail3-images-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:10px 14px 0;padding:9px 12px;border:1px solid #e3e9ee;border-radius:12px;background:#f7fafc;font-size:13px;color:#4a5d69}
.mail3-images-bar svg{width:16px;height:16px;flex:none;color:#5d7a8a}
.mail3-images-bar span{flex:1;min-width:180px}
.mail3-images-bar .btn{padding:6px 12px;font-size:13px}

/* ===================== v2.3.0 — Центр управления ===================== */
.adm{display:grid;grid-template-columns:236px minmax(0,1fr);gap:22px;align-items:start}
.adm-ico{width:18px;height:18px;flex:none}
.adm-nav{position:sticky;top:84px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:14px 10px;box-shadow:var(--shadow-sm)}
.adm-nav-head{padding:4px 10px 12px;border-bottom:1px solid #eef2f5;margin-bottom:8px}
.adm-nav-head small{display:block;font-size:11.5px;color:var(--muted);font-weight:700;letter-spacing:.02em}
.adm-nav-head b{display:block;font-size:16px;margin-top:2px;color:var(--ink)}
.adm-nav nav{display:grid;gap:2px}
.adm-nav a{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:12px;color:#435867;font-weight:650;font-size:14px;transition:background .15s,color .15s}
.adm-nav a:hover{background:#f3f7fa;color:var(--ink)}
.adm-nav a.active{background:linear-gradient(180deg,#0c375c,#0a3154);color:#fff;box-shadow:0 8px 20px rgba(12,55,92,.2)}
.adm-nav a span{flex:1;min-width:0}
.adm-nav a em{font-style:normal;font-size:11.5px;font-weight:800;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:#fff1e0;color:#9a5a10;display:inline-flex;align-items:center;justify-content:center}
.adm-nav a.active em{background:rgba(255,255,255,.18);color:#fff}
.adm-main{min-width:0;display:grid;gap:16px}
.adm-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}
.adm-head h1{margin:0;font-size:28px;letter-spacing:-.04em;line-height:1.1}
.adm-head p{margin:6px 0 0;color:var(--muted)}
.adm-head-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.adm-head-actions .btn .adm-ico{width:16px;height:16px}
.adm-inline-create{display:flex;gap:8px}
.adm-inline-create input{height:40px;border:1px solid var(--line);border-radius:12px;padding:0 12px;min-width:220px;font:inherit}
.adm-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px;box-shadow:var(--shadow-sm);min-width:0}
.adm-card.adm-card-flush{padding:0;overflow:hidden}
.adm-card.is-focus{border-color:#9fc1dc;box-shadow:0 0 0 4px rgba(36,95,141,.10),var(--shadow-sm)}
.adm-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;flex-wrap:wrap}
.adm-card-head.pad{padding:16px 18px 12px;margin:0;border-bottom:1px solid #eef2f5}
.adm-card-head h3{margin:0;font-size:16px}
.adm-card-head small{color:var(--muted);font-size:12.5px}
.adm-card-head a{font-size:13px;font-weight:700;color:var(--brand-3)}
.adm-grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
.adm-grid2.wide-left{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)}
.adm-muted{color:var(--muted);font-size:13px}
.adm-empty{padding:18px;color:var(--muted);text-align:center;font-size:13.5px}
.adm-empty.ok{display:flex;align-items:center;justify-content:center;gap:8px;color:var(--green);font-weight:700}
.adm-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.adm-kpis>a,.adm-kpis>div{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px;display:grid;gap:4px;box-shadow:var(--shadow-sm);transition:transform .15s,border-color .15s}
.adm-kpis>a:hover{transform:translateY(-1px);border-color:#c9d9e6}
.adm-kpis small{color:var(--muted);font-weight:700;font-size:12.5px}
.adm-kpis strong{font-size:30px;letter-spacing:-.04em;line-height:1.05}
.adm-kpis span{font-size:12.5px;color:var(--muted)}
.adm-kpis .bad,.adm-kpis .bad strong{color:var(--red)}
.adm-kpis.small strong{font-size:24px}
.adm-attn{display:grid;gap:6px}
.adm-attn a{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:12px;background:#f7fafc;border:1px solid #edf2f6;font-size:14px;color:var(--ink);transition:background .15s}
.adm-attn a:hover{background:#eef4f9}
.adm-attn a i{width:8px;height:8px;border-radius:50%;background:#7a9bb5;flex:none}
.adm-attn a.tone-warn i{background:#d7962c}.adm-attn a.tone-bad i{background:var(--red)}
.adm-attn a span{flex:1}.adm-attn a .adm-ico{color:#9aaab6;width:16px;height:16px}
.adm-feed{display:grid}
.adm-feed>div{display:flex;gap:12px;padding:9px 2px;border-top:1px solid #f0f3f6;align-items:flex-start}
.adm-feed>div:first-child{border-top:0}
.adm-feed time{font-size:12px;color:var(--muted);min-width:74px;padding-top:2px;font-variant-numeric:tabular-nums}
.adm-feed span{display:grid;gap:1px}.adm-feed b{font-size:13.5px;font-weight:650}.adm-feed small{font-size:12.5px;color:var(--muted)}
.adm-quick{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.adm-quick a{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px;display:grid;gap:4px;box-shadow:var(--shadow-sm);transition:transform .15s}
.adm-quick a:hover{transform:translateY(-1px)}
.adm-quick .adm-ico{width:22px;height:22px;color:var(--brand-3);margin-bottom:4px}
.adm-quick b{font-size:14px}.adm-quick small{font-size:12.5px;color:var(--muted)}
.adm-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.adm-toolbar select{height:40px;border:1px solid var(--line);border-radius:12px;padding:0 10px;background:#fff;font:inherit}
.adm-search{display:flex;align-items:center;gap:8px;height:40px;padding:0 12px;border:1px solid var(--line);border-radius:12px;background:#fff;min-width:280px;flex:0 1 360px}
.adm-search.small{min-width:180px;height:36px}
.adm-search .adm-ico{color:#8b9ba7;width:16px;height:16px}
.adm-search input{border:0;outline:0;background:transparent;font:inherit;width:100%;min-width:0}
.adm-chips{display:flex;gap:6px;flex-wrap:wrap}
.adm-chips a{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 12px;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:13px;font-weight:650;color:#4b6070}
.adm-chips a em{font-style:normal;font-size:11.5px;color:#7b8c98;font-weight:800}
.adm-chips a.active{background:#0c375c;border-color:#0c375c;color:#fff}.adm-chips a.active em{color:#cfe0ee}
.adm-chips.tabs{margin-bottom:2px}
.adm-banner{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:16px;border:1px solid #f0dcb6;background:#fff8ec;flex-wrap:wrap}
.adm-banner>.adm-ico{width:22px;height:22px;color:#b07514}
.adm-banner>div{flex:1;min-width:220px;display:grid;gap:2px}.adm-banner small{color:#6c5a3e;font-size:13px}
.adm-banner.ok{background:var(--green-soft);border-color:#c5e6d3}.adm-banner.ok>.adm-ico{color:var(--green)}
.adm-banner.bad{background:var(--red-soft);border-color:#f2caca}.adm-banner.bad>.adm-ico{color:var(--red)}
.adm-info{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:14px;background:#f3f8fc;border:1px solid #e1edf6;color:#3f586a;font-size:13.5px;line-height:1.5}
.adm-info .adm-ico{color:#4f7fa3;margin-top:1px}
.adm-info.big{font-size:14px}
.adm-table-wrap{overflow-x:auto}
.adm-table{width:100%;min-width:0;border-collapse:collapse}
.adm-table th{background:#f8fafc;text-align:left;font-size:12px;font-weight:800;color:#61717c;padding:10px 14px;border-bottom:1px solid #edf1f4;white-space:nowrap}
.adm-table td{padding:10px 14px;border-bottom:1px solid #f0f3f6;font-size:13.5px;vertical-align:middle}
.adm-table tbody tr:last-child td{border-bottom:0}
.adm-table tr[data-href]{cursor:pointer;transition:background .12s}
.adm-table tr[data-href]:hover{background:#f7fafc}
.adm-table tr.st-blocked td,.adm-table tr.st-dismissed td{opacity:.62}
.adm-person{display:flex;align-items:center;gap:10px;min-width:0}
.adm-person>span{display:grid;min-width:0}
.adm-person b{font-size:14px;font-weight:700;line-height:1.3}
.adm-person small{font-size:12.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:340px}
.adm-person .avatar{width:36px;height:36px;font-size:13px;flex:none}
.adm-two{display:grid}.adm-two b{font-weight:600;font-size:13.5px}.adm-two small{color:var(--muted);font-size:12.5px}
.adm-badges{display:flex;gap:5px;flex-wrap:wrap}
.adm-role,.adm-mod,.adm-status{font-style:normal;display:inline-flex;align-items:center;height:24px;padding:0 9px;border-radius:999px;font-size:12px;font-weight:750;background:#eef3f7;color:#4d6476;white-space:nowrap}
.adm-role.is-admin{background:#0c375c;color:#fff}.adm-role.is-director{background:#e7e2fb;color:#4b3a9a}.adm-role.is-manager{background:#e2f0fb;color:#1e5d8a}
.adm-mod{background:#fff4e2;color:#8a5a12}
.adm-status.s-ok{background:var(--green-soft);color:var(--green)}.adm-status.s-warn{background:#fff3df;color:#9a6215}.adm-status.s-off{background:#f0f2f4;color:#77838c}
.adm-note{display:block;font-size:11.5px;color:#9a6215;margin-top:3px}
.adm-temp{border:1px solid #f0dcb6;background:#fffaf1;border-radius:20px;padding:16px;display:grid;gap:12px}
.adm-temp-head{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.adm-temp-head>.adm-ico{width:22px;height:22px;color:#b07514}
.adm-temp-head>div:not(.adm-temp-actions){flex:1;min-width:240px;display:grid;gap:2px}.adm-temp-head small{color:#6c5a3e;font-size:13px}
.adm-temp-actions{display:flex;gap:8px}
.adm-temp-table{background:#fff;border-radius:12px;overflow:hidden}
.adm-temp-table code{font-size:14px;font-weight:700;letter-spacing:.04em;background:#f4f6f8;padding:3px 8px;border-radius:6px}
/* drawer */
.adm-drawer-backdrop{z-index:130}
.adm-drawer{width:min(640px,100vw);height:100dvh;background:#fff;display:flex;flex-direction:column;box-shadow:var(--shadow-lg);animation:admIn .18s ease}
.adm-drawer.narrow{width:min(520px,100vw)}
@keyframes admIn{from{transform:translateX(24px);opacity:.6}to{transform:none;opacity:1}}
.adm-drawer-head{display:flex;align-items:center;gap:12px;padding:18px 20px;border-bottom:1px solid #edf1f4}
.adm-drawer-head>div{flex:1;min-width:0}
.adm-drawer-head small{font-size:12.5px;color:var(--muted);font-weight:700}
.adm-drawer-head h2{margin:2px 0 0;font-size:20px;letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.adm-drawer-head .avatar{width:44px;height:44px}
.adm-x{width:38px;height:38px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;color:#5d6f7b;background:#f4f7f9;flex:none}
.adm-x:hover{background:#e9eff3;color:var(--ink)}
.adm-drawer-tabs{display:flex;gap:4px;padding:10px 20px 0;border-bottom:1px solid #edf1f4}
.adm-drawer-tabs a{padding:9px 12px;font-size:13.5px;font-weight:700;color:#5d6f7b;border-bottom:2px solid transparent;margin-bottom:-1px}
.adm-drawer-tabs a.active{color:var(--brand);border-color:var(--brand)}
.adm-drawer-body{flex:1;overflow:auto;padding:18px 20px 0;display:grid;align-content:start;gap:16px}
.adm-form{display:grid;gap:14px}
.adm-tab{display:grid;gap:14px}
.adm-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.adm-form .field input,.adm-form .field select,.adm-form .field textarea{width:100%}
.adm-form .field small{color:var(--muted);font-size:12px}
.adm-check{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid #edf1f4;border-radius:12px;background:#fafcfd;cursor:pointer}
.adm-check input{margin-top:3px}
.adm-check span{display:grid;gap:1px}.adm-check small{color:var(--muted);font-size:12.5px}
.adm-drawer-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px;padding:12px 0 16px}
.adm-drawer-actions.sticky{position:sticky;bottom:0;background:linear-gradient(180deg,rgba(255,255,255,0),#fff 28%);padding-top:18px;z-index:2}
.adm-drawer-actions .adm-muted{margin-right:auto}
.adm-danger{border-top:1px solid #edf1f4;padding:14px 0 20px;display:grid;gap:12px}
.adm-danger-row{display:grid;gap:8px}
.adm-danger-row>div:first-child{display:grid;gap:2px}.adm-danger-row small{color:var(--muted);font-size:12.5px}
.adm-row-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.adm-row-actions form{margin:0}
.password-reset-form{display:flex;gap:8px;flex-wrap:wrap}
.password-reset-form .password-inline{flex:1;min-width:200px}
.adm-perm-group{display:grid;gap:4px;margin-top:8px}
.adm-perm-group>small{font-size:11.5px;font-weight:800;color:#7b8b96;text-transform:uppercase;letter-spacing:.06em;margin:4px 0 2px}
.adm-perm{display:flex;gap:10px;align-items:flex-start;padding:8px 10px;border-radius:10px;cursor:pointer}
.adm-perm:hover{background:#f6f9fb}
.adm-perm input{margin-top:3px}
.adm-perm span{display:grid}.adm-perm b{font-size:13.5px;font-weight:650}.adm-perm small{font-size:12px;color:var(--muted)}
#userPermissionChecks{display:grid;gap:2px}
#userPermissionChecks label{display:flex;gap:8px;align-items:center;font-size:13.5px;padding:3px 0}
/* structure */
.adm-deps{display:grid;gap:4px}
.adm-dep{padding-left:calc(var(--lvl) * 22px)}
.adm-dep-row{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) auto 18px;gap:10px;align-items:center;padding:10px 12px;border-radius:12px;border:1px solid #edf1f4;background:#fbfcfd;transition:background .12s}
.adm-dep-row:hover{background:#f2f7fb}
.adm-dep-name{display:flex;gap:8px;align-items:center;min-width:0}.adm-dep-name b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.adm-dep-name .adm-ico{color:#7d9bb3}
.adm-dep-head{display:flex;align-items:center;gap:6px;font-size:13px;color:#4b5f6d;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.adm-dep-head i{color:#a2733b;font-style:normal;font-size:12.5px}
.adm-dep-row em{font-style:normal;font-size:12.5px;color:var(--muted)}
.adm-dep-row>.adm-ico{width:16px;height:16px;color:#a5b3bd}
.adm-mgrs{display:grid;gap:2px}
.adm-mgrs a{display:flex;align-items:center;gap:10px;padding:8px 6px;border-radius:10px}
.adm-mgrs a:hover{background:#f6f9fb}
.adm-mgrs a>span{flex:1;display:grid;min-width:0}.adm-mgrs b{font-size:13.5px}.adm-mgrs small{font-size:12px;color:var(--muted)}
.adm-mgrs em{font-style:normal;font-size:12px;color:#4b6476;background:#eef4f8;border-radius:999px;padding:3px 8px;white-space:nowrap}
.adm-quick-rows{display:grid;gap:6px}
.adm-quick-row{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr) auto;gap:8px;align-items:center;padding:6px 0;border-top:1px solid #f0f3f6}
.adm-quick-row:first-child{border-top:0}
.adm-quick-row select{height:36px;border:1px solid var(--line);border-radius:10px;padding:0 8px;background:#fff;font:inherit;font-size:13px;min-width:0}
.adm-sub{display:grid;gap:4px;padding:14px 0;border-top:1px solid #edf1f4}
.adm-sub a{display:flex;align-items:center;gap:8px;padding:5px 0;font-size:13.5px}
.adm-sub a small{color:var(--muted);margin-left:auto;font-size:12px}
.adm-delete{padding:4px 0 20px}
/* roles */
.adm-roles{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;align-items:start}
.adm-role-card{display:flex;flex-direction:column;gap:4px}
.adm-role-head{display:flex;align-items:center;justify-content:space-between;gap:8px}
.adm-role-head b{font-size:17px}
.adm-role-name{font:inherit;font-size:17px;font-weight:750;border:1px solid transparent;border-radius:8px;padding:3px 6px;margin-left:-6px;min-width:0;flex:1;color:var(--ink);background:transparent}
.adm-role-name:hover,.adm-role-name:focus{border-color:var(--line);background:#fafcfd;outline:0}
.adm-role-card>p{margin:0 0 4px}
.adm-role-actions{display:flex;gap:8px;margin-top:auto;padding-top:10px}
.danger-text{color:var(--red)!important}
.adm-holders{display:grid;gap:8px}
.adm-holders>div{display:grid;grid-template-columns:220px minmax(0,1fr);gap:10px;padding:6px 0;border-top:1px solid #f0f3f6}
.adm-holders>div:first-child{border-top:0}
.adm-holders b{font-size:13.5px}
.adm-holders span{display:flex;flex-wrap:wrap;gap:6px}
.adm-holders span a{font-size:13px;background:#f1f5f8;border-radius:999px;padding:3px 10px}
/* documents */
.adm-folder{border-top:1px solid #f0f3f6}
.adm-folder:first-child{border-top:0}
.adm-folder summary{list-style:none;display:grid;grid-template-columns:minmax(0,1fr) auto 18px;gap:12px;align-items:center;padding:11px 16px 11px calc(16px + var(--lvl) * 24px);cursor:pointer}
.adm-folder summary::-webkit-details-marker{display:none}
.adm-folder summary:hover{background:#f7fafc}
.adm-folder[open]>summary{background:#f3f8fc}
.adm-folder-name{display:flex;gap:8px;align-items:center;min-width:0}.adm-folder-name b{font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.adm-folder-name .adm-ico{color:#d29a2f}
.adm-folder summary small{color:var(--muted);font-size:12.5px;white-space:nowrap}
.adm-folder summary>.adm-ico{width:16px;height:16px;color:#a5b3bd}
.adm-folder.is-arch .adm-folder-name b{color:#8a959d;text-decoration:line-through}
.adm-folder-actions{display:grid;gap:8px;padding:10px 16px 14px calc(16px + var(--lvl) * 24px);background:#f9fbfd}
.adm-inline{display:flex;gap:8px;flex-wrap:wrap}
.adm-inline input,.adm-inline select{flex:1;min-width:200px;height:38px;border:1px solid var(--line);border-radius:10px;padding:0 10px;font:inherit;background:#fff}
.adm-inline .btn .adm-ico,.adm-row-actions .btn .adm-ico{width:15px;height:15px}
/* mail */
.adm-servers{display:grid;gap:8px}
.adm-servers>div{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:12px;border:1px solid #edf1f4;border-radius:14px;flex-wrap:wrap}
.adm-servers>div.is-off{opacity:.6}
.adm-servers span{display:grid;gap:2px;min-width:0}.adm-servers small{color:var(--muted);font-size:12.5px}.adm-servers small.bad{color:var(--red)}
.adm-boxes .mail-box-row{border-top:1px solid #f0f3f6;border-radius:0}
.adm-boxes .mail-box-row:first-child{border-top:0}
/* rooms */
.adm-rooms{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}
.adm-room{display:grid;gap:12px}
.adm-room.is-off{opacity:.7}
.adm-room.is-new{border-style:dashed;background:#fbfcfd}
.adm-room-head{display:flex;gap:8px;align-items:center}
.adm-room-head .adm-ico{color:var(--brand-3)}
.adm-room-head input{flex:1;min-width:0;font:inherit;font-size:16px;font-weight:700;border:1px solid transparent;border-radius:8px;padding:4px 6px;background:transparent}
.adm-room-head input:hover,.adm-room-head input:focus{border-color:var(--line);outline:0;background:#fff}
.adm-room-foot{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
/* import, system */
.adm-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}
.adm-steps>div{display:flex;gap:10px;align-items:flex-start;padding:12px;border-radius:14px;background:#f7fafc}
.adm-steps strong{width:28px;height:28px;border-radius:50%;background:#0c375c;color:#fff;display:inline-flex;align-items:center;justify-content:center;flex:none;font-size:13px}
.adm-steps span{display:grid;gap:2px}.adm-steps small{color:var(--muted);font-size:12.5px}.adm-steps a{color:var(--brand-3);font-weight:700}
.adm-dl{margin:0;display:grid;gap:8px}
.adm-dl>div{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #f0f3f6;padding-top:8px}
.adm-dl>div:first-child{border-top:0;padding-top:0}
.adm-dl dt{color:var(--muted);font-size:13px}.adm-dl dd{margin:0;font-weight:650;font-size:13.5px}
.adm-details summary{cursor:pointer;font-weight:700;color:var(--brand-3);font-size:13.5px}
.adm-code{display:block;white-space:pre-wrap;word-break:break-all;background:#0f2537;color:#d6e6f2;padding:10px 12px;border-radius:10px;font-size:12.5px;margin:8px 0}
.adm-pager{display:flex;justify-content:space-between;padding:12px 14px}
.adm .gs-upd-section{margin:0}
.adm-routes{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:16px;align-items:start}
.adm-routes .approval-route-list{padding:8px}
.adm-routes .approval-route-editor.hidden{display:none}
@media(max-width:1180px){
  .adm{grid-template-columns:1fr;gap:14px}
  .adm-nav{position:static;padding:8px;border-radius:16px}
  .adm-nav-head{display:none}
  .adm-nav nav{display:flex;overflow-x:auto;gap:4px;scrollbar-width:none}
  .adm-nav nav::-webkit-scrollbar{display:none}
  .adm-nav a{white-space:nowrap;padding:8px 12px}
  .adm-kpis,.adm-quick{grid-template-columns:repeat(2,minmax(0,1fr))}
  .adm-routes{grid-template-columns:1fr}
}
@media(max-width:860px){
  .adm-grid2,.adm-grid2.wide-left,.adm-steps{grid-template-columns:1fr}
  .adm-head h1{font-size:23px}
  .adm-head-actions{width:100%}
  .adm-inline-create{width:100%}.adm-inline-create input{flex:1;min-width:0}
  .adm-search{min-width:0;flex:1 1 100%}
  .adm-fields{grid-template-columns:1fr}
  .adm-quick-row{grid-template-columns:1fr 1fr}.adm-quick-row .adm-person{grid-column:1/-1}
  .adm-holders>div{grid-template-columns:1fr}
  .adm-people thead{display:none}
  .adm-people tr{display:grid;grid-template-columns:1fr auto;gap:4px 10px;padding:12px 14px;border-bottom:1px solid #f0f3f6}
  .adm-people td{padding:0;border:0}
  .adm-people td:nth-child(1){grid-column:1/-1}
  .adm-people td:nth-child(2){grid-column:1/-1;padding-left:46px}
  .adm-people td:nth-child(3){padding-left:46px}
  .adm-people td:nth-child(5){display:none}
  .adm-folder summary{grid-template-columns:minmax(0,1fr) 18px}.adm-folder summary small{display:none}
  .adm-dep-row{grid-template-columns:minmax(0,1fr) auto}.adm-dep-head,.adm-dep-row>.adm-ico{display:none}
  .adm-drawer-head{padding:14px 16px}.adm-drawer-body{padding:14px 16px 0}.adm-drawer-tabs{padding:8px 16px 0;overflow-x:auto}
}

.adm .mini-avatar{flex:none;width:28px;height:28px;min-width:28px;font-size:11px}
.adm-perm-group{gap:0}
.adm .adm-perm{display:flex!important;margin:0!important;padding:6px 8px!important;min-height:0!important;gap:10px;align-items:flex-start}
.adm .adm-perm input{width:16px;height:16px;flex:none;margin:2px 0 0}
.adm-admin-all{display:flex;gap:10px;align-items:flex-start;padding:12px;border-radius:12px;background:#f3f8fc;color:#3f586a;font-size:13.5px}
.adm-admin-all .adm-ico{color:var(--green)}
.adm-people td:first-child{min-width:240px}
.modal-backdrop.adm-drawer-backdrop{z-index:1200}
@media(max-width:860px){
  .adm-chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;max-width:100%}
  .adm-chips::-webkit-scrollbar{display:none}
  .adm-chips a{flex:none}
  .adm-toolbar{min-width:0}
  .adm-toolbar>*{min-width:0}
  .adm-drawer{width:100vw}
  .adm-drawer-actions.sticky{padding-bottom:calc(16px + env(safe-area-inset-bottom,0px))}
}
.document-toolbar .document-manage-link{white-space:nowrap;flex:none;width:auto;min-height:40px;height:40px;margin:0;padding:0 12px}
.document-toolbar-admin{display:flex;gap:6px;align-items:center}

/* ===================== v2.3.1 — карточка задачи ===================== */
.modal-backdrop.task-drawer-backdrop{z-index:1200}
.task-drawer.tk{width:min(1060px,100vw);background:#f5f8fb;display:flex;flex-direction:column;height:100dvh}
.tk-head{background:#fff;border-bottom:1px solid #e6edf2;padding:16px 22px 14px;display:grid;gap:10px;flex:none}
.tk-head-top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.tk-crumbs{font-size:12.5px;color:var(--muted);font-weight:650;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tk-crumbs a{color:var(--brand-3)}
.tk-tools{display:flex;gap:6px;align-items:center;flex:none}
.tk-tool{height:34px;padding:0 12px;border-radius:10px;border:1px solid var(--line);background:#fff;font:inherit;font-size:13px;font-weight:650;color:#4b6070;cursor:pointer}
.tk-tool:hover{background:#f4f7fa}
.tk-close{width:36px;height:36px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;font-size:24px;line-height:1;color:#5d6f7b;background:#f2f5f8}
.tk-close:hover{background:#e7edf2;color:var(--ink)}
.tk-title{margin:0;font-size:23px;line-height:1.25;letter-spacing:-.02em;overflow-wrap:anywhere}
.tk-chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.tk-status{display:inline-flex;align-items:center;height:26px;padding:0 10px;border-radius:999px;font-size:12.5px;font-weight:750;background:#eef2f5;color:#55697a;white-space:nowrap}
.tk-status.s-new{background:#eaf2fb;color:#2a5f8f}.tk-status.s-in_progress{background:#e8f1ff;color:#1f5bb5}.tk-status.s-waiting{background:#fff3df;color:#9a6215}
.tk-status.s-review{background:#efe9fd;color:#5b3fb0}.tk-status.s-done{background:var(--green-soft);color:var(--green)}.tk-status.s-cancelled,.tk-status.s-archived{background:#f0f2f4;color:#7a868f}
.tk-due{display:inline-flex;align-items:center;height:26px;padding:0 10px;border-radius:999px;background:#f3f6f9;color:#4d6170;font-size:12.5px;font-weight:650}
.tk-due.deadline-late,.tk-due.deadline-late-severe{background:var(--red-soft);color:var(--red)}
.tk-due.deadline-soon{background:#fff3df;color:#9a6215}
.tk-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.tk-actions form{margin:0}
.tk-actions .btn{min-height:38px;height:38px;flex:none;width:auto;margin:0;white-space:nowrap}
.tk-hint{font-size:13px;color:var(--muted);padding:0 4px}
.tk-more{position:relative}
.tk-more-menu{display:none;position:absolute;right:0;top:calc(100% + 6px);z-index:5;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-md);padding:6px;min-width:220px}
.tk-more.open .tk-more-menu{display:grid}
.tk-more-menu form{margin:0}
.tk-menu-item{width:100%;text-align:left;border:0;background:none;padding:9px 10px;border-radius:9px;font:inherit;font-size:13.5px;cursor:pointer;color:var(--ink)}
.tk-menu-item:hover{background:#f3f7fa}
.tk-menu-item.danger{color:var(--red)}
.task-drawer-body.tk-body{flex:1;overflow:auto;padding:16px 22px 28px;display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:14px;align-items:start}
.tk-main,.tk-side{display:grid;gap:12px;min-width:0}
.tk-side{position:sticky;top:0}
.tk-card{background:#fff;border:1px solid #e6edf2;border-radius:16px;padding:14px 16px;min-width:0}
.tk-card.hidden{display:none}
.tk-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.tk-card-head>div{display:flex;align-items:baseline;gap:8px}
.tk-card-head b{font-size:14.5px}
.tk-card-head small{color:var(--muted);font-size:12.5px}
.tk-link{border:0;background:none;color:var(--brand-3);font:inherit;font-size:13px;font-weight:700;cursor:pointer;padding:0}
.tk-text{font-size:14.5px;line-height:1.65;color:#22343f;overflow-wrap:anywhere}
.tk-text a.mail-link{color:#0c5a8f;text-decoration:underline}
.tk-empty{color:var(--muted);font-size:13.5px}
.tk-grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.task-edit-form.tk-card{display:grid;gap:12px}
.task-edit-form .field input,.task-edit-form .field select,.task-edit-form .field textarea{width:100%}
.tk-form-actions{display:flex;justify-content:flex-end;gap:8px}
.tk-form-actions .btn{flex:none;width:auto;margin:0}
.tk-picker-search{height:36px;border:1px solid var(--line);border-radius:10px;padding:0 10px;font:inherit;font-size:13.5px;margin-bottom:6px}
.tk-add-line{display:flex;gap:8px;margin-top:10px}
.tk-add-line input,.tk-add-line select{flex:1;min-width:0;height:38px;border:1px solid var(--line);border-radius:10px;padding:0 10px;font:inherit;font-size:13.5px;background:#fff}
.tk-add-line select{flex:0 1 200px}
.tk-add-line .btn{flex:none;width:auto;margin:0;height:38px;min-height:38px}
.tk .task-checklist label{display:flex;gap:10px;align-items:flex-start;padding:7px 4px;border-radius:8px;font-size:14px}
.tk .task-checklist label:hover{background:#f7fafc}
.tk .subtask-list{display:grid;gap:4px}
.tk .subtask-list a{display:flex;gap:10px;align-items:center;padding:8px 6px;border-radius:10px}
.tk .subtask-list a:hover{background:#f7fafc}
.tk .subtask-list a b{flex:1;font-weight:600;font-size:14px;min-width:0}
.tk .subtask-list a small{color:var(--muted);font-size:12.5px;white-space:nowrap}
.tk .task-comments{display:grid;gap:12px}
.tk .task-comments article{display:flex;gap:10px}
.tk .task-comments article>div{flex:1;min-width:0;background:#f6f9fb;border-radius:12px;padding:9px 12px}
.tk .task-comments header{display:flex;gap:8px;align-items:baseline;justify-content:space-between}
.tk .task-comments header time{font-size:12px;color:var(--muted)}
.tk .task-comments p{margin:4px 0 0;font-size:14px;line-height:1.55;overflow-wrap:anywhere}
.tk .task-comment-form{display:grid;gap:8px;margin-top:12px}
.tk .task-comment-form textarea{width:100%;border:1px solid var(--line);border-radius:12px;padding:10px 12px;font:inherit;font-size:14px;resize:vertical}
.tk .task-comment-form>div{display:flex;justify-content:space-between;gap:8px}
.tk .task-comment-form .btn{flex:none;width:auto;margin:0}
.tk-meta{display:grid;gap:12px}
.tk-meta>div{display:grid;gap:3px}
.tk-meta small{font-size:12px;color:var(--muted);font-weight:650}
.tk-meta b{font-size:14px;font-weight:650}
.tk-meta .deadline-late,.tk-meta .deadline-late-severe{color:var(--red)}
.tk-ok{color:var(--green)}
.tk-person{display:flex;align-items:center;gap:8px}
.tk .mini-avatar{width:26px;height:26px;min-width:26px;font-size:10.5px;flex:none}
.tk-watchers>span{display:flex;flex-wrap:wrap;gap:4px}
.tk-muted{color:var(--muted)!important;font-weight:500!important}
.tk-history summary{list-style:none;display:flex;justify-content:space-between;cursor:pointer}
.tk-history summary::-webkit-details-marker{display:none}
.tk-history summary small{color:var(--muted)}
.tk-history[open] summary{margin-bottom:10px}
.tk .task-files{display:grid;gap:6px}
.task-create-modal .tk-picker-search{width:100%}
@media(max-width:900px){
  .task-drawer-body.tk-body{grid-template-columns:1fr;padding:12px 12px 90px}
  .tk-side{position:static}
  .tk-head{padding:12px 14px}
  .tk-title{font-size:19px}
  .tk-actions{overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none;padding-bottom:2px}
  .tk-actions::-webkit-scrollbar{display:none}
  .tk-grid2{grid-template-columns:1fr}
  .tk-meta{grid-template-columns:1fr 1fr}
  .tk-meta .tk-watchers{grid-column:1/-1}
  .tk-add-line{flex-wrap:wrap}.tk-add-line select{flex:1 1 100%}
  .tk-more{position:static}
  .tk-more-menu{right:12px;left:12px;top:auto}
}
.tk-head{position:relative}
@media(max-width:900px){.tk-more-menu{top:calc(100% - 6px)}}

/* ===================== v2.4.0 — CRM: пилот «Скандинавия» ===================== */
.crm-page [hidden],.crm-close-modal [hidden]{display:none!important}
.crm-pipeline-bar{display:flex;align-items:center;gap:10px;min-width:0}
.crm-pipeline-bar .crm-pipeline-strip{flex:1;min-width:0}
.crm-line-toggle{margin:0;flex:none}
.crm-line-toggle button{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 14px;border-radius:999px;border:1px solid var(--line);background:#fff;font:inherit;font-size:13px;font-weight:750;color:#6b7c87;cursor:pointer;white-space:nowrap}
.crm-line-toggle button i{width:9px;height:9px;border-radius:50%;background:#b8c3ca}
.crm-line-toggle.on button{border-color:#bfe0cc;background:#effaf3;color:#256b43}
.crm-line-toggle.on button i{background:#2fa463;box-shadow:0 0 0 4px rgba(47,164,99,.16)}
.crm-kpi.danger{border-color:#f1c5c0;background:linear-gradient(180deg,#fff6f5,#fff)}
.crm-kpi.danger b{color:var(--red)}
.crm-closed-summary{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0 0 10px;font-size:12.5px;color:var(--muted)}
.crm-closed-summary em{font-style:normal;display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 10px;border-radius:999px;background:#fff;border:1px solid #e3e9ed;color:#4e626e;font-weight:650}
.crm-closed-summary em i{width:8px;height:8px;border-radius:50%;background:var(--stage)}
.crm-closed-summary small{margin-left:auto;font-size:12px}
.crm-stage-column.is-won header{background:linear-gradient(180deg,#eef8f1,#fff)}
.crm-deal-card.is-waiting{border-color:#cfe0ef;box-shadow:inset 3px 0 0 #4a8fd0,0 3px 10px rgba(16,47,66,.05)}
.crm-deal-card.sla-late{border-color:#f0b9b3;box-shadow:inset 3px 0 0 var(--red),0 3px 12px rgba(190,60,50,.12)}
.crm-sla{display:inline-flex;align-items:center;gap:5px;margin:2px 0 6px;height:24px;padding:0 9px;border-radius:999px;background:#eaf3fc;color:#1f5f99;font-size:12px;font-weight:750;font-variant-numeric:tabular-nums}
.crm-sla.late{background:var(--red-soft);color:var(--red);animation:crmPulse 1.6s ease-in-out infinite}
@keyframes crmPulse{50%{box-shadow:0 0 0 4px rgba(200,60,50,.12)}}
.crm-deal-source{display:flex;flex-wrap:wrap;gap:4px}
.crm-deal-source .q-quality_target{background:#e6f6ec;color:#256b43}
.crm-deal-source .q-target{background:#eaf2fb;color:#2a5f8f}
.crm-deal-source .q-non_target{background:#f1f2f4;color:#7a868f}
.crm-close-dock{position:fixed;left:50%;bottom:18px;z-index:1150;display:flex;align-items:stretch;gap:10px;padding:10px;border-radius:18px;background:rgba(18,38,52,.92);box-shadow:0 18px 50px rgba(10,30,45,.35);transform:translate(-50%,150%);opacity:0;pointer-events:none;transition:transform .18s ease,opacity .18s ease;max-width:calc(100vw - 32px)}
.crm-close-dock>span{align-self:center;color:#c9d6de;font-size:12.5px;font-weight:650;max-width:150px;line-height:1.3}
body.crm-drag-active .crm-close-dock{transform:translate(-50%,0);opacity:1;pointer-events:auto}
.crm-close-zone{min-width:140px;padding:16px 18px;border-radius:12px;border:2px dashed rgba(255,255,255,.28);color:#fff;font-weight:800;font-size:14px;text-align:center;background:rgba(255,255,255,.05);transition:background .12s,border-color .12s,transform .12s}
.crm-close-zone.over{background:var(--stage);border-color:#fff;border-style:solid;transform:scale(1.04)}
.crm-close-zone.kind-lost{box-shadow:inset 0 -3px 0 #e38c84}
.crm-close-zone.kind-non_target{box-shadow:inset 0 -3px 0 #aab3ba}
/* карточка сделки в панели клиента */
.crm-client-deal.v240{display:grid}
.crm-client-deal.v240.status-lost{background:#fbfbfc}
.crm-client-deal.v240.status-won header strong{color:var(--green)}
.crm-sla-banner{display:grid;grid-template-columns:1fr auto;gap:2px 10px;align-items:center;margin:8px 10px 0;padding:9px 12px;border-radius:11px;background:#eaf3fc;color:#1f5f99}
.crm-sla-banner span{font-weight:750;font-size:13.5px}
.crm-sla-banner b{font-size:18px;font-variant-numeric:tabular-nums;grid-row:span 2}
.crm-sla-banner small{font-size:12px;opacity:.85}
.crm-sla-banner.late{background:var(--red-soft);color:var(--red)}
.crm-stage-track{display:flex;flex-wrap:wrap;gap:4px;padding:10px;border-bottom:1px solid #edf1f3;margin:0}
.crm-stage-track button{height:30px;padding:0 10px;border-radius:8px;border:1px solid #dfe7ec;background:#fff;color:#5d707c;font:inherit;font-size:12.5px;font-weight:700;cursor:pointer;white-space:nowrap}
.crm-stage-track button:hover:not(:disabled){border-color:var(--stage);color:var(--ink)}
.crm-stage-track button.done{background:color-mix(in srgb,var(--stage) 14%,#fff);border-color:color-mix(in srgb,var(--stage) 35%,#fff);color:#3f5562}
.crm-stage-track button.current{background:var(--stage);border-color:var(--stage);color:#fff;cursor:default;opacity:1}
.crm-stage-track button.won:not(.current){border-style:dashed;color:var(--green)}
.crm-lost-box{display:flex;gap:12px;align-items:flex-start;justify-content:space-between;margin:10px;padding:11px 13px;border-radius:11px;background:#f5f6f8;border:1px solid #e5e9ec}
.crm-lost-box>div{display:grid;gap:3px;min-width:0}
.crm-lost-box b{font-size:14px}
.crm-lost-box span{font-size:13px;color:#4e626e}
.crm-lost-box p{margin:2px 0 0;font-size:13px;color:#3c4f5b;overflow-wrap:anywhere}
.crm-lost-box small{font-size:12px;color:var(--muted)}
.crm-lost-box form{margin:0;flex:none}
.crm-lost-box .btn{width:auto;margin:0;height:34px;min-height:34px}
.crm-deal-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px;padding:10px;border-bottom:1px solid #edf1f3;margin:0}
.crm-deal-fields label{display:grid;gap:4px;min-width:0}
.crm-deal-fields label span{font-size:11.5px;font-weight:750;color:var(--muted)}
.crm-deal-fields input,.crm-deal-fields select{width:100%;height:36px;border:1px solid #dde5ea;border-radius:9px;padding:0 9px;font:inherit;font-size:13.5px;background:#fff;min-width:0}
.crm-deal-fields-actions{grid-column:1/-1;display:flex;justify-content:flex-end}
.crm-deal-fields-actions .btn{width:auto;margin:0;height:34px;min-height:34px}
.crm-deal-actions .crm-close-btn{border-color:#efc9c4;color:#b2453b;background:#fff7f6}
/* окно закрытия */
#crmCloseModal{z-index:1250}
.crm-close-modal{width:min(560px,100vw)}
.crm-close-form{display:grid;gap:12px}
.crm-close-kinds{display:flex;flex-wrap:wrap;gap:6px}
.crm-close-kinds label{position:relative;cursor:pointer}
.crm-close-kinds input{position:absolute;opacity:0;pointer-events:none}
.crm-close-kinds span{display:inline-flex;align-items:center;height:36px;padding:0 14px;border-radius:10px;border:1px solid var(--line);background:#fff;font-weight:750;font-size:13.5px;color:#4e626e}
.crm-close-kinds input:checked+span{background:#1e3a4c;border-color:#1e3a4c;color:#fff}
.crm-close-kinds .kind-lost input:checked+span{background:#b0605a;border-color:#b0605a}
.crm-close-kinds input:focus-visible+span{outline:2px solid var(--brand-3);outline-offset:2px}
.crm-close-form .field em{font-style:normal;font-weight:600;color:var(--muted)}
.crm-close-form select,.crm-close-form textarea{width:100%}
.crm-close-next{border:0;padding:0;margin:0;display:grid;gap:6px}
.crm-close-next legend{font-size:12.5px;font-weight:750;color:var(--muted);margin-bottom:4px;padding:0}
.crm-close-next label{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;align-items:start;padding:9px 11px;border:1px solid #e3e9ed;border-radius:11px;cursor:pointer;background:#fff}
.crm-close-next label:has(input[type=radio]:checked){border-color:#9cc0dc;background:#f4f9fd}
.crm-close-next label input[type=radio]{margin-top:3px}
.crm-close-next label span{display:grid;gap:2px}
.crm-close-next label b{font-size:13.5px}
.crm-close-next label small{font-size:12px;color:var(--muted)}
.crm-close-next input[type=date]{grid-column:2;height:34px;border:1px solid var(--line);border-radius:9px;padding:0 9px;font:inherit;max-width:180px}
/* настройки */
.crm-settings-v240{display:grid;grid-template-columns:260px minmax(0,1fr);gap:12px;align-items:start}
.crm-settings-main{display:grid;gap:12px;min-width:0}
.crm-settings-side{position:sticky;top:12px}
.crm-stage-editor{display:grid;gap:6px}
.crm-default-submit{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.crm-stage-row{position:relative;display:grid;grid-template-columns:24px 34px minmax(140px,1fr) 210px 36px auto 34px;gap:8px;align-items:center;margin:0;padding:7px 8px;border:1px solid #e6ecef;border-radius:11px;background:#fff}
.crm-stage-row.type-won{background:#f3faf5}
.crm-stage-row.type-lost,.crm-stage-row.type-non_target,.crm-stage-row.type-duplicate,.crm-stage-row.type-final{background:#f8f9fa}
.crm-stage-no{font-size:12px;font-weight:800;color:#9aa8b1;text-align:center}
.crm-stage-row input[type=color]{width:34px;height:34px;padding:2px;border:1px solid #dde5ea;border-radius:9px;background:#fff;cursor:pointer}
.crm-stage-row input[name=name],.crm-stage-row select{height:36px;border:1px solid #dde5ea;border-radius:9px;padding:0 9px;font:inherit;font-size:13.5px;background:#fff;min-width:0;width:100%}
.crm-stage-count{justify-self:center;min-width:28px;height:24px;border-radius:999px;background:#eef3f6;color:#4e626e;font-weight:800;font-size:12px;display:inline-flex;align-items:center;justify-content:center;padding:0 7px}
.crm-stage-ops{display:flex;gap:4px}
.crm-stage-ops button,.crm-stage-del summary{height:34px;min-width:34px;border:1px solid #dde5ea;border-radius:9px;background:#fff;font:inherit;font-size:13px;font-weight:750;color:#4e626e;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0 9px;list-style:none}
.crm-stage-ops button:disabled{opacity:.35;cursor:default}
.crm-stage-ops button.save{color:#4e626e}
.crm-stage-row.dirty .crm-stage-ops button.save,.crm-reason-row.dirty button{background:#1e3a4c;border-color:#1e3a4c;color:#fff}
.crm-stage-row.dirty{border-color:#9cc0dc;box-shadow:0 0 0 3px rgba(74,143,208,.12)}
.crm-stage-del summary::-webkit-details-marker{display:none}
.crm-stage-del summary:hover{color:var(--red);border-color:#efc9c4}
.crm-stage-del>div{position:absolute;right:8px;top:calc(100% + 4px);z-index:5;display:grid;gap:8px;width:300px;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:var(--shadow-md)}
.crm-stage-del label{display:grid;gap:4px;font-size:12.5px;color:var(--muted);font-weight:650}
.crm-stage-del select{height:34px;border:1px solid var(--line);border-radius:9px;font:inherit}
.crm-stage-del .danger{height:34px;border:0;border-radius:9px;background:var(--red);color:#fff;font:inherit;font-weight:750;cursor:pointer}
.crm-stage-add{margin-top:10px;display:grid!important;grid-template-columns:34px minmax(0,1fr) 210px auto;gap:8px}
.crm-stage-add input[type=color]{width:34px;height:36px;padding:2px}
.crm-stage-add input[name=name],.crm-stage-add select{height:36px!important;min-height:36px;font-size:13.5px}
.crm-rotation-add{display:flex;gap:8px;margin:0}
.crm-rotation-add select{flex:1;min-width:0;height:36px;border:1px solid var(--line);border-radius:9px;padding:0 9px;font:inherit;font-size:13.5px;background:#fff}
.crm-rotation-add .btn{width:auto;margin:0;height:36px;min-height:36px;white-space:nowrap}
.crm-rotation-list .crm-table-empty{padding:14px;text-align:left}
.crm-sla-form{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 12px}
.crm-sla-form label{display:flex;align-items:center;gap:8px;font-weight:650;font-size:13.5px}
.crm-sla-form input{width:80px;height:36px;border:1px solid var(--line);border-radius:9px;padding:0 9px;font:inherit}
.crm-sla-form .btn{width:auto;margin:0;height:36px;min-height:36px}
.crm-rotation-list{display:grid;gap:6px;margin-bottom:10px}
.crm-rotation-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;padding:8px 10px;border:1px solid #e6ecef;border-radius:11px;background:#fafbfc}
.crm-rotation-row.on{background:#fff}
.crm-rotation-row span{display:grid;gap:2px;min-width:0}
.crm-rotation-row small{color:var(--muted);font-size:12px}
.crm-rotation-row form{margin:0}
.crm-switch{display:inline-flex;align-items:center;gap:7px;height:32px;padding:0 12px;border-radius:999px;border:1px solid var(--line);background:#fff;font:inherit;font-size:12.5px;font-weight:750;color:#6b7c87;cursor:pointer}
.crm-switch i{width:8px;height:8px;border-radius:50%;background:#b8c3ca}
.crm-switch.on{border-color:#bfe0cc;background:#effaf3;color:#256b43}.crm-switch.on i{background:#2fa463}
.crm-icon-btn{width:32px;height:32px;border:1px solid #e3e9ed;border-radius:9px;background:#fff;color:#7a868f;cursor:pointer}
.crm-icon-btn:hover{color:var(--red);border-color:#efc9c4}
.crm-reasons-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.crm-reasons-grid h4{margin:0 0 8px;font-size:14px}
.crm-reasons-grid>div{display:grid;gap:5px;align-content:start}
.crm-reason-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:6px;align-items:center;margin:0}
.crm-reason-row.add{grid-template-columns:minmax(0,1fr) auto;margin-top:4px}
.crm-reason-row input[name=name]{height:34px;border:1px solid #e1e8ec;border-radius:9px;padding:0 9px;font:inherit;font-size:13px;min-width:0}
.crm-reason-row.off input[name=name]{color:#9aa8b1;text-decoration:line-through}
.crm-reason-row label{font-size:12px;color:var(--muted);display:flex;gap:4px;align-items:center;white-space:nowrap}
.crm-reason-row button{height:34px;border:1px solid #dde5ea;border-radius:9px;background:#fff;font:inherit;font-size:12.5px;font-weight:700;color:#4e626e;cursor:pointer;padding:0 10px}
.crm-reason-row .btn{width:auto;margin:0;min-height:34px}
@media(max-width:1100px){
  .crm-settings-v240{grid-template-columns:1fr}
  .crm-settings-side{position:static}
  .crm-stage-row{grid-template-columns:22px 34px minmax(0,1fr) 34px;grid-auto-flow:row}
  .crm-stage-row input[name=name]{grid-column:3/-1}
  .crm-stage-row select{grid-column:2/-1}
  .crm-stage-row .crm-stage-count{grid-column:1;grid-row:2}
  .crm-stage-row .crm-stage-ops{grid-column:2/4}
  .crm-stage-row .crm-stage-del{grid-column:4;grid-row:3}
  .crm-stage-add{grid-template-columns:34px minmax(0,1fr)}
  .crm-stage-add select,.crm-stage-add .btn{grid-column:1/-1}
  .crm-reasons-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
  .crm-pipeline-bar{flex-wrap:wrap}
  .crm-line-toggle{width:100%}.crm-line-toggle button{width:100%;justify-content:center}
  .crm-closed-summary small{display:none}
  .crm-deal-fields{grid-template-columns:1fr}
  .crm-lost-box{flex-direction:column}
  .crm-close-dock{display:none}
}

/* ===================== v2.4.1 — почта: папки, «Показать ещё», поиск ===================== */
body.portal .mail-v3 .mail3-folder-nav{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin}
.mail-v3 .mail3-tree-row{position:relative;display:flex;align-items:center;min-width:0}
.mail-v3 .mail3-tree-row>a{flex:1;min-width:0;padding-left:calc(10px + var(--depth,0) * 14px)}
.mail-v3 .mail3-tree-row.has-caret>a,.mail-v3 .mail3-tree-row:has(.mail3-tree-caret)>a{padding-right:30px}
.mail-v3 .mail3-tree-row.is-collapsed-out{display:none}
.mail-v3 .mail3-tree-row.is-sub>a{height:34px;font-size:13.5px}
.mail-v3 .mail3-tree-row.is-sub>a .mail3-ico{width:16px;height:16px;opacity:.75}
.mail-v3 .mail3-tree-caret{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:24px;height:24px;border:0;border-radius:7px;background:transparent;cursor:pointer;color:#7a8b96;display:inline-flex;align-items:center;justify-content:center}
.mail-v3 .mail3-tree-caret::before{content:"";width:6px;height:6px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(-45deg);transition:transform .15s}
.mail-v3 .mail3-tree-row.is-open>.mail3-tree-caret::before{transform:rotate(45deg) translate(-1px,-1px)}
.mail-v3 .mail3-tree-caret:hover{background:#eef3f6;color:var(--ink)}
.mail-v3 .mail3-tree-row:has(.mail3-tree-caret) em{margin-right:2px}
.mail-v3 .mail3-tree-sep{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#93a2ac;padding:12px 10px 4px}
.mail-v3 .mail3-tree-more{display:none;align-items:center;gap:10px;height:40px;padding:0 10px;border:0;border-radius:10px;background:transparent;color:#3d5260;font:inherit;font-size:14px;font-weight:550;cursor:pointer}
.mail-v3 .mail3-tree-more:hover{background:#f2f6f9}
.mail3-tree-pop{position:fixed;z-index:1300;width:300px;max-height:min(70vh,560px);display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 50px rgba(10,30,45,.22);overflow:hidden}
.mail3-tree-pop.hidden{display:none}
.mail3-tree-pop-head{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid #edf1f3}
.mail3-tree-pop-head button{width:30px;height:30px;border:0;border-radius:8px;background:#f2f5f8;font-size:20px;line-height:1;cursor:pointer;color:#5d6f7b}
.mail3-tree-pop-list{overflow-y:auto;padding:6px}
.mail3-tree-pop-list a{display:flex;align-items:center;gap:9px;min-height:36px;padding:0 10px 0 calc(10px + var(--depth,0) * 14px);border-radius:9px;color:#3d5260;text-decoration:none;font-size:14px}
.mail3-tree-pop-list a:hover{background:#f2f6f9}
.mail3-tree-pop-list a.active{background:#e8f1f8;color:var(--brand);font-weight:700}
.mail3-tree-pop-list a span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mail3-tree-pop-list a em{font-style:normal;font-size:12px;font-weight:700;color:#fff;background:var(--brand);border-radius:999px;padding:1px 7px}
.mail3-tree-pop-list .mail3-ico{width:17px;height:17px;flex:none}
/* узкая колонка папок (только иконки) */
@media (max-width:1499px) and (min-width:721px){
  body.portal .mail-v3 .mail3-tree-row.is-sub,body.portal .mail-v3 .mail3-tree-sep,body.portal .mail-v3 .mail3-tree-caret{display:none}
  body.portal .mail-v3 .mail3-tree-row>a{padding-left:0}
  body.portal .mail-v3 .mail3-tree-more{display:flex;justify-content:center;padding:0;height:44px;width:100%}
  body.portal .mail-v3 .mail3-tree-more span{display:none}
}
body.portal .mail-v3 .mail3-layout.is-wide .mail3-tree-row.is-sub,body.portal .mail-v3 .mail3-layout.is-wide .mail3-tree-sep,body.portal .mail-v3 .mail3-layout.is-wide .mail3-tree-caret{display:none}
body.portal .mail-v3 .mail3-layout.is-wide .mail3-tree-row>a{padding-left:0}
body.portal .mail-v3 .mail3-layout.is-wide .mail3-tree-more{display:flex;justify-content:center;padding:0;height:44px;width:100%}
body.portal .mail-v3 .mail3-layout.is-wide .mail3-tree-more span{display:none}
@media (max-width:720px){
  body.portal .mail-v3 .mail3-folder-nav{overflow:visible;flex:0 0 auto}
  body.portal .mail-v3 .mail3-tree-row.is-sub,body.portal .mail-v3 .mail3-tree-sep,body.portal .mail-v3 .mail3-tree-caret{display:none}
  body.portal .mail-v3 .mail3-tree-row>a{padding-left:10px;padding-right:10px}
  body.portal .mail-v3 .mail3-tree-more{display:flex;height:38px;gap:6px;white-space:nowrap;background:#f2f6f9}
  .mail3-tree-pop{left:12px!important;right:12px;top:auto!important;bottom:calc(var(--mobile-nav-h,64px) + 12px);width:auto;max-height:65vh}
}
/* «Показать ещё» */
.mail-v3 .mail3-more{flex:none;margin:8px 10px 10px;height:38px;border:1px dashed #c9d6df;border-radius:10px;background:#f8fafc;color:#2f5f86;font:inherit;font-size:13.5px;font-weight:700;cursor:pointer}
.mail-v3 .mail3-more:hover:not(:disabled){background:#eef5fb;border-style:solid}
.mail-v3 .mail3-more:disabled{opacity:.7;cursor:progress}
/* поиск */
.mail-v3 .mail3-search{flex-wrap:wrap}
.mail-v3 .mail3-search-opts{display:none;width:100%;gap:6px;flex-wrap:wrap;align-items:center}
.mail-v3 .mail3-search:focus-within .mail3-search-opts,.mail-v3 .mail3-search.has-query .mail3-search-opts{display:flex}
.mail-v3 .mail3-search-opts select{flex:1 1 120px;min-width:0;height:32px;border:1px solid var(--line);border-radius:9px;padding:0 8px;font:inherit;font-size:12.5px;background:#fff;color:#3d5260}
.mail-v3 .mail3-search-opts .mail3-chip.primary{background:var(--brand);border-color:var(--brand);color:#fff;cursor:pointer}
.mail-v3 .mail3-list.is-searching .mail3-rows{opacity:.35;pointer-events:none}
.mail-v3 .mail3-list.is-searching .mail3-list-head small::after{content:"";display:inline-block;width:10px;height:10px;margin-left:6px;border:2px solid #9cb4c6;border-top-color:transparent;border-radius:50%;animation:gsSpin .8s linear infinite;vertical-align:-1px}
@keyframes gsSpin{to{transform:rotate(360deg)}}
.mail-v3 .mail3-search-note{flex:none;margin:0 10px 8px;padding:8px 10px;border-radius:10px;background:#fff7e8;color:#87601c;font-size:12.5px;line-height:1.4}

/* ===================== v2.4.2 — CRM: агентства недвижимости ===================== */
.crm-agency-fields [hidden],.crm-agency-slot[hidden],.crm-agency-toggle[hidden]{display:none!important}
.crm-agency-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px;align-items:start}
.crm-deal-fields .crm-agency-fields{grid-column:1/-1;padding:10px;border-radius:11px;background:#f8f6fc;border:1px solid #ebe5f6}
.crm-agency-fields label{display:grid;gap:4px;min-width:0}
.crm-agency-fields select,.crm-agency-fields input{width:100%;min-width:0}
.crm-agency-fields input[data-agency-new]{margin-top:6px}
.crm-agent-new{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:6px}
.crm-agency-wrap{margin:2px 0 4px}
.crm-agency-toggle{border:0;background:none;padding:4px 0;color:#5b3fb0;font:inherit;font-size:13.5px;font-weight:700;cursor:pointer}
.crm-agency-toggle:hover{text-decoration:underline}
.crm-agency-slot{padding:10px;border-radius:11px;background:#f8f6fc;border:1px solid #ebe5f6}
.crm-deal-source .is-agency{background:#f1ecfb;color:#5b3fb0}
.crm-agency-add{display:grid;grid-template-columns:minmax(0,1fr) 180px auto;gap:8px;margin:0 0 10px}
.crm-agency-add input,.crm-agency-edit input,.crm-agent-row input{height:36px;border:1px solid #dde5ea;border-radius:9px;padding:0 9px;font:inherit;font-size:13.5px;min-width:0;background:#fff}
.crm-agency-add .btn,.crm-agent-row .btn{width:auto;margin:0;height:36px;min-height:36px;white-space:nowrap}
.crm-agency-list{display:grid;gap:6px}
.crm-agency-item{border:1px solid #e6ecef;border-radius:11px;background:#fff}
.crm-agency-item.off{background:#f8f9fa}
.crm-agency-item>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;cursor:pointer}
.crm-agency-item>summary::-webkit-details-marker{display:none}
.crm-agency-item>summary span{display:grid;gap:2px;min-width:0}
.crm-agency-item>summary small{color:var(--muted);font-size:12px}
.crm-agency-item>summary em{font-style:normal;font-weight:800;font-size:15px;text-align:right;display:grid}
.crm-agency-item>summary em small{font-weight:600}
.crm-agency-item[open]>summary{border-bottom:1px solid #edf1f3}
.crm-agency-edit,.crm-agent-row{display:grid;grid-template-columns:minmax(0,1fr) 170px auto auto;gap:6px;align-items:center;margin:0}
.crm-agency-edit{padding:10px 12px 4px}
.crm-agent-list{display:grid;gap:5px;padding:6px 12px 12px 26px}
.crm-agent-row.add{grid-template-columns:minmax(0,1fr) 170px auto}
.crm-agent-row.off input[name=name]{color:#9aa8b1;text-decoration:line-through}
.crm-agency-edit label,.crm-agent-row label{font-size:12px;color:var(--muted);display:flex;gap:4px;align-items:center;white-space:nowrap}
.crm-agency-edit button,.crm-agent-row button:not(.btn){height:36px;border:1px solid #dde5ea;border-radius:9px;background:#fff;font:inherit;font-size:12.5px;font-weight:700;color:#4e626e;cursor:pointer;padding:0 10px}
@media(max-width:700px){
  .crm-agency-fields,.crm-agent-new{grid-template-columns:1fr}
  .crm-agency-add,.crm-agency-edit,.crm-agent-row,.crm-agent-row.add{grid-template-columns:1fr 1fr}
  .crm-agency-add input[name=name],.crm-agency-edit input[name=name],.crm-agent-row input[name=name]{grid-column:1/-1}
  .crm-agent-list{padding-left:12px}
}

/* ===================== v2.5.0 — Рассрочки ===================== */
.inst-page{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;min-width:0}
.inst-page [hidden],.inst-modal [hidden],.inst-drawer [hidden]{display:none!important}
.inst-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}
.inst-hero h1{font-size:31px;letter-spacing:-.045em;margin:4px 0 2px}
.inst-hero p{margin:0;color:var(--muted)}
.inst-hero-actions{display:flex;gap:8px;flex-wrap:wrap}
.inst-hero-actions .btn{width:auto;margin:0}
.inst-tabs{display:flex;gap:3px;width:max-content;max-width:100%;overflow-x:auto;padding:3px;border:1px solid #e1e8ec;border-radius:11px;background:#f8fafb;scrollbar-width:none}
.inst-tabs::-webkit-scrollbar{display:none}
.inst-tabs a{min-height:34px;padding:0 13px;border-radius:8px;display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:800;color:#5c6e79;white-space:nowrap}
.inst-tabs a.active{background:#fff;color:#315f78;box-shadow:0 3px 10px rgba(18,50,70,.07)}
.inst-tabs a em{font-style:normal;font-size:11px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--red);color:#fff;display:inline-grid;place-items:center}
.inst-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}
.inst-kpis.mini{grid-template-columns:repeat(3,minmax(0,1fr));margin:10px 0}
.inst-kpi{display:grid;gap:3px;min-height:86px;padding:12px 14px;border:1px solid #e2e9ed;border-radius:14px;background:#fff;color:inherit;text-decoration:none}
a.inst-kpi:hover{border-color:#c9d8e2}
.inst-kpi small{font-size:12px;color:#616f77;font-weight:750}
.inst-kpi b{font-size:21px;letter-spacing:-.03em;color:#2a4757}
.inst-kpi span{font-size:12px;color:var(--muted)}
.inst-kpi.is-bad{border-color:#f1c5c0;background:linear-gradient(180deg,#fff6f5,#fff)}.inst-kpi.is-bad b{color:var(--red)}
.inst-kpi.is-good{border-color:#cfe7da;background:linear-gradient(180deg,#f2fbf5,#fff)}.inst-kpi.is-good b{color:var(--green)}
.inst-kpi.is-info{border-color:#cfe0ef;background:linear-gradient(180deg,#f2f8fd,#fff)}
.inst-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
.inst-grid.cal{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
.inst-card{padding:14px 16px;min-width:0}
.inst-card-head,.inst-table-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}
.inst-card-head h3,.inst-table-head h3{margin:0;font-size:16px}
.inst-card-head small,.inst-table-head small{color:var(--muted);font-size:12.5px}
.inst-card-head>a{font-size:13px;font-weight:750;color:var(--brand-3);white-space:nowrap}
.inst-head-actions{display:flex;gap:8px;align-items:center}.inst-head-actions form{margin:0}.inst-head-actions .btn{width:auto;margin:0;white-space:nowrap}
.inst-list{display:grid;gap:4px}
.inst-list a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border-radius:10px;color:inherit}
.inst-list a:hover{background:#f4f8fa}
.inst-list a>span{display:grid;min-width:0}.inst-list b{font-size:13.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.inst-list small{color:var(--muted);font-size:12px}
.inst-list em{font-style:normal;font-weight:800;text-align:right;display:grid;white-space:nowrap}
.inst-list em small{font-weight:600}
.is-bad,.inst-list em.is-bad{color:var(--red)!important}
.is-good{color:var(--green)}
.inst-empty{padding:22px;text-align:center;color:var(--muted);font-size:13.5px}
.inst-bars{display:grid;gap:5px}
.inst-bars a{display:grid;grid-template-columns:56px minmax(0,1fr) 112px 112px;gap:8px;align-items:center;padding:4px 6px;border-radius:8px;color:inherit;font-size:12px}
.inst-bars small{white-space:nowrap;font-size:11.5px}
.inst-bars a:hover{background:#f4f8fa}.inst-bars a.is-sel{background:#e8f1f8}
.inst-bars a.is-now b{color:var(--brand-3)}
.inst-bars b{font-size:12px;text-transform:capitalize}
.inst-bars small{text-align:right;font-variant-numeric:tabular-nums;color:#55707f}.inst-bars small.fact{color:#256b43;font-weight:700}
.inst-bar{position:relative;height:16px;border-radius:6px;background:#eef3f6;overflow:hidden}
.inst-bar i{position:absolute;inset:0 auto 0 0;background:#c7d8e6;border-radius:6px}
.inst-bar s{position:absolute;left:0;top:4px;bottom:4px;background:#2f9c66;border-radius:4px}
.inst-legend{display:flex;gap:14px;margin-top:8px;font-size:12px;color:var(--muted)}
.inst-legend i,.inst-legend s{display:inline-block;width:12px;height:8px;border-radius:3px;margin-right:5px;background:#c7d8e6}.inst-legend s{background:#2f9c66}
.inst-projects{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:9px}
.inst-projects a{display:grid;gap:4px;padding:12px;border:1px solid #e6ecef;border-radius:12px;color:inherit}
.inst-projects a:hover{border-color:#c9d8e2}
.inst-projects strong{font-size:18px;letter-spacing:-.02em}
.inst-projects small{font-size:12px;color:var(--muted)}
.inst-progress{display:block;height:5px;border-radius:999px;background:#e9eff3;overflow:hidden;margin-top:3px}
.inst-progress i{display:block;height:100%;background:#2f9c66;border-radius:999px}
.inst-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px 12px}
.inst-filters select,.inst-filters input{height:38px;border:1px solid var(--line);border-radius:10px;padding:0 10px;font:inherit;font-size:13.5px;background:#fff;min-width:0}
.inst-filters .btn{width:auto;margin:0;height:38px;min-height:38px}
.inst-search{display:flex;align-items:center;gap:6px;flex:1 1 260px;height:38px;border:1px solid var(--line);border-radius:10px;padding:0 10px;background:#fff}
.inst-search input{border:0!important;height:34px!important;padding:0!important;flex:1;outline:none}
.inst-inline{display:flex;align-items:center;gap:5px;font-size:12.5px;color:var(--muted)}.inst-inline input{width:130px}
.inst-check{display:flex;align-items:center;gap:6px;font-size:13px;color:#4e626e}
.inst-reset{font-size:13px;font-weight:700;color:var(--brand-3)}
.inst-more-filters{position:relative}
.inst-more-filters summary{list-style:none;height:38px;display:flex;align-items:center;padding:0 12px;border:1px solid var(--line);border-radius:10px;font-size:13.5px;cursor:pointer;background:#fff;color:#4e626e;font-weight:650}
.inst-more-filters summary::-webkit-details-marker{display:none}
.inst-more-filters[open] summary{border-color:#9cc0dc;background:#f4f9fd}
.inst-more-filters>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;margin-top:8px}
.inst-more-filters[open]{flex-basis:100%}
.inst-more-filters label{display:grid;gap:3px;font-size:12px;color:var(--muted);font-weight:650}
.inst-table-card{padding:12px 0 0;min-width:0;overflow:hidden}
.inst-table-card .inst-table-head{padding:0 14px}
.inst-table-wrap{overflow:auto;max-height:calc(100dvh - 300px);min-height:120px}
.inst-table{width:100%;border-collapse:collapse;font-size:13px}
.inst-table th{position:sticky;top:0;z-index:1;background:#f8fafb;text-align:left;font-size:11.5px;font-weight:800;color:#5c6e79;padding:8px 10px;border-bottom:1px solid #e6ecef;white-space:nowrap}
.inst-table th a{color:inherit}.inst-table th a:hover{color:var(--brand-3)}
.inst-table td{padding:8px 10px;border-bottom:1px solid #eef2f4;vertical-align:top}
.inst-table td small{display:block;color:var(--muted);font-size:11.5px}
.inst-table td.num,.inst-table th.num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.inst-table tbody tr[data-href]{cursor:pointer}
.inst-table tbody tr:hover{background:#f7fafc}
.inst-table tbody tr.is-active{background:#eaf3fb}
.inst-table tr.st-overdue td:first-child{box-shadow:inset 3px 0 0 var(--red)}
.inst-table .inst-client{font-weight:700}
.inst-table td:first-child{white-space:nowrap}
.inst-table td.inst-comment{white-space:normal;min-width:180px;max-width:360px;color:#3c4f5b}
.inst-table.compact td,.inst-table.compact th{padding:6px 8px}
.inst-badge{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:999px;font-size:11.5px;font-weight:800;white-space:nowrap;background:#eef2f5;color:#55697a}
.inst-badge.is-bad{background:var(--red-soft);color:var(--red)}.inst-badge.is-warn{background:#fff3df;color:#9a6215}.inst-badge.is-ok{background:#eaf2fb;color:#2a5f8f}
.inst-badge.is-info{background:#efe9fd;color:#5b3fb0}.inst-badge.is-done{background:var(--green-soft);color:var(--green)}
.inst-icon-btn{width:28px;height:28px;border:1px solid #e3e9ed;border-radius:8px;background:#fff;color:#8a99a3;cursor:pointer;font-size:16px;line-height:1}
.inst-icon-btn:hover{color:var(--red);border-color:#efc9c4}
.inst-link-btn{border:0;background:none;padding:0;color:var(--brand-3);font:inherit;font-size:13px;font-weight:750;cursor:pointer}
.inst-table form,.inst-pay-row form{margin:0}
/* карточка договора */
.inst-backdrop{position:fixed;inset:0;background:rgba(5,25,39,.2);z-index:1150}
.inst-drawer{position:fixed;top:0;right:0;width:min(760px,100vw);height:100dvh;z-index:1160;background:#f5f8fb;box-shadow:-22px 0 60px rgba(10,34,50,.18);display:flex;flex-direction:column}
.inst-drawer-head{display:flex;justify-content:space-between;gap:12px;padding:16px 20px 10px;background:#fff}
.inst-drawer-head small{color:var(--muted);font-size:12.5px;font-weight:650}
.inst-drawer-head h2{margin:2px 0;font-size:23px;letter-spacing:-.02em}
.inst-drawer-head p{margin:0;color:#3c4f5b}
.inst-close{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;font-size:24px;color:#5d6f7b;background:#f2f5f8;flex:none}
.inst-drawer-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-start;padding:0 20px 12px;background:#fff;border-bottom:1px solid #e6edf2}
.inst-drawer-actions>form{margin:0}.inst-drawer-actions .btn{width:auto;margin:0;height:38px;min-height:38px}
.inst-archive-btn{background:var(--green-soft)!important;color:var(--green)!important;border-color:#bfe0cc!important}
.inst-danger{margin-left:auto;position:relative}
.inst-danger summary{list-style:none;height:38px;display:flex;align-items:center;padding:0 12px;border-radius:10px;color:var(--red);font-size:13px;font-weight:750;cursor:pointer}
.inst-danger summary::-webkit-details-marker{display:none}
.inst-danger summary:hover{background:var(--red-soft)}
.inst-danger form{position:absolute;right:0;top:calc(100% + 4px);z-index:5;width:340px;display:grid;gap:8px;padding:14px;border:1px solid #efc9c4;border-radius:14px;background:#fff;box-shadow:var(--shadow-md)}
.inst-danger p{margin:0;font-size:13px;color:#7a3b35}
.inst-danger label{display:grid;gap:4px;font-size:12.5px;color:var(--muted)}
.inst-danger input{height:36px;border:1px solid var(--line);border-radius:9px;padding:0 9px;font:inherit}
.inst-danger .btn.danger{background:var(--red);border-color:var(--red);color:#fff;width:100%}
.inst-drawer-body{flex:1;overflow:auto;padding:14px 20px 40px;display:grid;gap:12px;align-content:start}
.inst-sum{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.inst-sum>div{background:#fff;border:1px solid #e6edf2;border-radius:12px;padding:10px 12px;display:grid;gap:2px;min-width:0}
.inst-sum small{font-size:11.5px;color:var(--muted);font-weight:700}
.inst-sum b{font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.inst-sum span{font-size:12px;color:var(--muted)}
.inst-sum .is-bad b,.inst-sum .is-bad span{color:var(--red)}
.inst-status-line{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.inst-warn{font-size:12.5px;color:#9a6215;background:#fff3df;border-radius:999px;padding:3px 10px;font-weight:700}
.inst-block{background:#fff;border:1px solid #e6edf2;border-radius:14px;padding:12px 14px;min-width:0}
.inst-block-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
.inst-block-head h3,.inst-history summary h3{margin:0;font-size:15px}
.inst-block-head h3 small{color:var(--muted);font-weight:600;font-size:12.5px}
.inst-sched-view{max-height:340px;overflow:auto;border:1px solid #eef2f4;border-radius:10px}
.inst-sched-view tr.sch-paid td{color:#6c7b85}
.inst-sched-view tr.sch-overdue td{background:#fff7f6}
.inst-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;background:#c7d3db}
.inst-dot.is-paid{background:#2f9c66}.inst-dot.is-partial{background:#e0a33a}.inst-dot.is-overdue{background:var(--red)}
.inst-sched-edit{margin-top:12px;padding-top:12px;border-top:1px dashed #dfe7ec}
.inst-sched{display:grid;gap:8px}
.inst-gen{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end;padding:10px;border-radius:12px;background:#f4f8fb;border:1px solid #e3ecf2}
.inst-gen>b{width:100%;font-size:12.5px;color:#4e626e}
.inst-gen label{display:grid;gap:3px;font-size:11.5px;color:var(--muted);font-weight:700}
.inst-gen input,.inst-gen select{height:34px;border:1px solid var(--line);border-radius:9px;padding:0 8px;font:inherit;font-size:13px;background:#fff;width:auto}
.inst-gen input[data-gen-count]{width:70px}.inst-gen input[data-gen-sum]{width:150px}
.inst-gen .btn{width:auto;margin:0;height:34px;min-height:34px}
.inst-sched-table{width:100%;border-collapse:collapse}
.inst-sched-table th{text-align:left;font-size:11.5px;color:var(--muted);font-weight:800;padding:0 4px 4px}
.inst-sched-table td{padding:2px 4px}
.inst-sched-table input{width:100%;height:34px;border:1px solid #dde5ea;border-radius:9px;padding:0 8px;font:inherit;font-size:13.5px;background:#fff}
.inst-sched-table td:nth-child(1){width:160px}.inst-sched-table td:nth-child(2){width:150px}.inst-sched-table td:nth-child(4){width:34px}
.inst-sched-foot{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;font-size:13px;color:#4e626e}
.inst-sched-foot .btn{width:auto;margin:0;height:34px;min-height:34px}
.inst-sched-foot em{font-style:normal;font-weight:800}.inst-sched-foot em.bad{color:var(--red)}.inst-sched-foot em.ok{color:var(--green)}
.inst-form-actions{display:flex;justify-content:flex-end;margin-top:10px}.inst-form-actions .btn{width:auto;margin:0}
.inst-pay-inline{display:grid;grid-template-columns:150px 160px minmax(0,1fr) auto;gap:8px;align-items:end;padding:10px;border-radius:12px;background:#f4f8fb;border:1px solid #e3ecf2;margin-bottom:10px}
.inst-pay-inline label{display:grid;gap:3px;font-size:11.5px;color:var(--muted);font-weight:700}
.inst-pay-inline input,.inst-pay-inline textarea{border:1px solid var(--line);border-radius:9px;padding:7px 9px;font:inherit;font-size:13.5px;background:#fff;resize:vertical;min-height:36px}
.inst-pay-inline .btn{width:auto;margin:0;height:38px;min-height:38px}
.inst-pay-list{display:grid;gap:6px}
.inst-pay-row{display:grid;grid-template-columns:130px minmax(0,1fr) auto 30px;gap:10px;align-items:start;padding:8px 10px;border:1px solid #eef2f4;border-radius:10px}
.inst-pay-row>div{display:grid}.inst-pay-row>div span{font-size:12px;color:var(--muted)}
.inst-pay-row p{margin:0;font-size:13px;color:#3c4f5b;overflow-wrap:anywhere}.inst-pay-row .muted{color:#a0adb6}
.inst-pay-row small{font-size:12px;color:var(--muted);white-space:nowrap}
.inst-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 14px;margin:0}
.inst-facts div{display:grid;gap:2px;min-width:0}.inst-facts .wide{grid-column:1/-1}
.inst-facts dt{font-size:11.5px;color:var(--muted);font-weight:700}.inst-facts dd{margin:0;font-size:13.5px;overflow-wrap:anywhere}
.inst-form{display:grid;gap:10px;margin-top:10px}
.inst-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.inst-form-grid label{display:grid;gap:4px;font-size:12px;color:var(--muted);font-weight:700;min-width:0}
.inst-form-grid label.wide{grid-column:span 2}
.inst-form-grid em{font-style:normal;font-weight:500;color:#9aa8b1}
.inst-form-grid input,.inst-form-grid select,.inst-form-grid textarea{width:100%;min-width:0;height:38px;border:1px solid var(--line);border-radius:10px;padding:0 10px;font:inherit;font-size:14px;background:#fff;color:var(--ink)}
.inst-form-grid textarea{height:auto;padding:8px 10px;resize:vertical}
.inst-form-grid input[data-inst-project-new]{margin-top:6px}
.inst-history summary{list-style:none;display:flex;align-items:center;gap:8px;cursor:pointer}
.inst-history summary::-webkit-details-marker{display:none}
.inst-history summary small{color:var(--muted)}
.inst-history[open] summary{margin-bottom:8px}
.inst-hist-row{display:grid;grid-template-columns:120px 170px minmax(0,1fr) auto;gap:8px;padding:6px 0;border-top:1px solid #f0f3f5;font-size:12.5px}
.inst-hist-row time,.inst-hist-row small{color:var(--muted)}
/* окна */
.inst-modal-backdrop{z-index:1250}
.inst-modal{width:min(620px,100vw)}
.inst-modal.wide{width:min(860px,100vw)}
.inst-modal .inst-form{margin:0}
.inst-sub{margin:6px 0 0;font-size:15px}
.inst-hint{margin:0;font-size:12.5px;color:var(--muted)}
.inst-picker{display:grid;gap:4px;font-size:12px;color:var(--muted);font-weight:700}
.inst-picker input{height:42px;border:1px solid var(--line);border-radius:10px;padding:0 12px;font:inherit;font-size:15px}
.inst-pay-info{padding:9px 12px;border-radius:10px;background:#eef6fc;color:#25587f;font-size:13px;font-weight:650}
.inst-import{display:grid;gap:12px}
.inst-steps{margin:0;padding-left:20px;display:grid;gap:6px;font-size:14px;color:#3c4f5b}
.inst-note{padding:9px 12px;border-radius:10px;background:#fff7e8;color:#87601c;font-size:13px}
.inst-upload{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.inst-upload .btn{width:auto;margin:0}
.inst-preview{padding:12px;border:1px solid #cfe0ef;border-radius:12px;background:#f6fafd;display:grid;gap:4px}
.inst-preview small{color:var(--muted)}.inst-preview .btn{width:auto;margin:0}
@media(max-width:1200px){.inst-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.inst-grid,.inst-grid.cal{grid-template-columns:1fr}.inst-sum{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){
  .inst-hero{flex-direction:column;align-items:stretch}.inst-hero h1{font-size:24px}.inst-hero-actions .btn{flex:1}
  .inst-kpis,.inst-kpis.mini{grid-template-columns:repeat(2,minmax(0,1fr))}
  .inst-filters>*{flex:1 1 100%}.inst-inline{flex:1 1 45%!important}.inst-inline input{width:100%}
  .inst-table-wrap{max-height:none}
  .inst-bars a{grid-template-columns:52px minmax(0,1fr) 84px}.inst-bars small.fact{display:none}
  .inst-sum{grid-template-columns:repeat(2,minmax(0,1fr))}
  .inst-drawer-head,.inst-drawer-actions,.inst-drawer-body{padding-left:12px;padding-right:12px}
  .inst-drawer-body{padding-bottom:90px}
  .inst-danger{margin-left:0}.inst-danger form{left:0;right:auto;width:min(340px,calc(100vw - 24px))}
  .inst-pay-inline{grid-template-columns:1fr 1fr}.inst-pay-inline .wide,.inst-pay-inline .btn{grid-column:1/-1}
  .inst-pay-row{grid-template-columns:1fr auto 30px}.inst-pay-row p{grid-column:1/-1;grid-row:2}
  .inst-facts,.inst-form-grid{grid-template-columns:1fr 1fr}.inst-form-grid label.wide{grid-column:1/-1}
  .inst-sched-table td:nth-child(1){width:auto}.inst-sched-table td:nth-child(2){width:110px}.inst-sched-table th:nth-child(3),.inst-sched-table td:nth-child(3){display:none}
  .inst-hist-row{grid-template-columns:1fr;gap:2px}
  .inst-sched-view .inst-table th:nth-child(3),.inst-sched-view .inst-table td:nth-child(3){display:none}
  .inst-sched-view .inst-table{min-width:0!important}
  .inst-sched-view .inst-table td{white-space:nowrap}
  .inst-sched-view .inst-table td:first-child{white-space:normal}
  .inst-sched-view .inst-table td small{white-space:normal;max-width:130px}
}

/* v2.5.1 — менеджеры в рассрочках */
.inst-pct{display:inline-flex;align-items:center;gap:8px;white-space:nowrap}
.inst-pct .inst-progress{width:80px;margin:0}
.inst-pct b{font-size:13px}
.inst-pct.is-good b{color:var(--green)}.inst-pct.is-warn b{color:#9a6215}.inst-pct.is-bad b{color:var(--red)}
.inst-pct.is-warn .inst-progress i{background:#e0a33a}.inst-pct.is-bad .inst-progress i{background:var(--red)}
.inst-mgr-table tfoot td{background:#f8fafb;border-top:2px solid #e2e9ed;border-bottom:0;position:sticky;bottom:0}
.inst-mgr-table td a{color:inherit}
.inst-mgr-table .muted{color:#a0adb6;font-size:12px}
.inst-mgr-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:9px}
.inst-mgr-cards a{display:grid;gap:5px;padding:12px;border:1px solid #e6ecef;border-radius:12px;color:inherit}
.inst-mgr-cards a:hover{border-color:#c9d8e2}
.inst-mgr-cards a>span{font-size:13px;font-weight:750}
.inst-mgr-cards small{font-size:12px;color:var(--muted)}
.inst-projects .inst-empty{grid-column:1/-1}
.inst-projects .inst-empty a,.inst-mgr-cards .inst-empty a{display:inline;padding:0;border:0;color:var(--brand-3);font-weight:700}

/* ===================== v2.6.0 — Правление ===================== */
.board-page{--b-green:#2f9e5b;--b-yellow:#e3a21a;--b-red:#d64541;--b-blue:#2f6fd0}
.board-page .is-bad{color:var(--red)}
.board-switch{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:0}
.board-switch select{width:auto;min-width:240px;margin:0}.board-switch .btn{width:auto;margin:0}
.board-deadline{font-size:12.5px;font-weight:750;color:#5c6e79;padding:6px 10px;border-radius:9px;background:#f2f6f8}
.board-deadline.is-late{background:var(--red-soft);color:var(--red)}
.board-head{padding:14px 16px;display:grid;gap:12px}
.board-head-main{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}
.board-head h2{margin:6px 0 2px;font-size:20px;letter-spacing:-.02em}
.board-head p{margin:0;color:#4d606b;font-size:13px}
.board-head-actions{display:flex;gap:8px;flex-wrap:wrap}.board-head-actions form{margin:0}.board-head-actions .btn{width:auto;margin:0;white-space:nowrap}
.board-meet-edit{border-top:1px solid #e6ecef;padding-top:12px}
.board-two{display:flex;gap:6px}.board-two input{min-width:0}
.board-clock{position:sticky;top:8px;z-index:20;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:stretch}
.board-clock>div{border:1px solid #e1e8ec;border-radius:12px;padding:8px 12px;background:#fbfcfd;display:grid;gap:1px;min-width:0}
.board-clock small{font-size:11px;font-weight:800;color:#6b7b85;text-transform:uppercase;letter-spacing:.04em}
.board-clock b{font-size:18px;color:#2a4757;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.board-timer{grid-template-columns:auto auto;align-items:center;column-gap:12px!important}
.board-timer small{grid-column:1/-1;max-width:340px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.board-timer b{font-size:26px;font-variant-numeric:tabular-nums;min-width:74px}
.board-timer span{display:flex;gap:4px}
.board-timer button{height:30px;padding:0 9px;border-radius:8px;border:1px solid #d5e0e6;background:#fff;font-size:12px;font-weight:800;color:#315f78;cursor:pointer;white-space:nowrap}
.board-timer.is-run{background:#eef6fc;border-color:#c5dcee}
.board-timer.is-last{background:#fff6e5;border-color:#f1d29a}.board-timer.is-last b{color:#9a6215}
.board-timer.is-over{background:var(--red-soft);border-color:#f1c5c0}.board-timer.is-over b{color:var(--red)}
.board-section-title{display:grid;gap:2px;margin:6px 2px 0}.board-section-title h3{margin:0;font-size:16px}.board-section-title small{color:var(--muted);font-size:12.5px}
.board-agenda{display:grid;gap:10px;min-width:0}
.board-item{padding:12px 14px;display:grid;gap:10px;border-left:4px solid #dfe6ea;min-width:0}
.board-item.is-green{border-left-color:var(--b-green)}.board-item.is-yellow{border-left-color:var(--b-yellow)}.board-item.is-red{border-left-color:var(--b-red)}
.board-item.is-current{box-shadow:0 0 0 2px #8fbbdc,0 10px 30px rgba(18,50,70,.10)}
.board-item.is-plan-now .board-item-n{background:#315f78;color:#fff}
.board-item header{display:flex;gap:10px;align-items:flex-start}
.board-item-n{flex:0 0 28px;height:28px;border-radius:9px;background:#eef3f6;color:#315f78;font-weight:850;display:grid;place-items:center;font-size:13px}
.board-item-title{flex:1;min-width:0}.board-item-title h3{margin:2px 0 0;font-size:15.5px}.board-item-title small{color:var(--muted);font-size:12.5px}
.board-item-tools{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.board-mini{display:inline-flex;align-items:center;height:28px;padding:0 9px;border-radius:8px;border:1px solid #d5e0e6;background:#fff;font-size:12px;font-weight:800;color:#315f78;cursor:pointer;white-space:nowrap;text-decoration:none;margin:0;width:auto}
.board-mini:hover{border-color:#a9c2d3}.board-mini.is-primary{background:#315f78;border-color:#315f78;color:#fff}.board-mini.is-ok{color:#2f6fd0;border-color:#c7d9f3}
.board-st-form{display:inline-flex;gap:3px;margin:0;align-items:center}
.board-dot{width:20px;height:20px;min-width:20px;min-height:0;max-height:20px;flex:0 0 20px;line-height:0;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px #d5dee3;cursor:pointer;padding:0;margin:0;opacity:.35}
.board-dot.is-green{background:var(--b-green)}.board-dot.is-yellow{background:var(--b-yellow)}.board-dot.is-red{background:var(--b-red)}
.board-dot.is-on{opacity:1;box-shadow:0 0 0 2px #24414f}.board-dot:hover{opacity:.8}
.board-st{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:800;white-space:nowrap;color:#4d606b}
.board-st i{width:10px;height:10px;border-radius:50%;background:#c3ced4;flex:0 0 10px}
.board-st.is-green i{background:var(--b-green)}.board-st.is-yellow i{background:var(--b-yellow)}.board-st.is-red i{background:var(--b-red)}.board-st.is-blue i{background:var(--b-blue)}
.board-st.is-red{color:var(--b-red)}.board-st.is-blue{color:var(--b-blue)}.board-st.is-cancelled{color:#8a979e}
.board-kpi{width:100%;border-collapse:collapse;font-size:12.5px}
.board-kpi th{text-align:left;font-size:11px;color:#6b7b85;font-weight:800;padding:5px 8px;background:#f8fafb;border-bottom:1px solid #e6ecef;white-space:nowrap}
.board-kpi td{padding:6px 8px;border-bottom:1px solid #eef2f4;vertical-align:top}
.board-text p{margin:0 0 4px;font-size:13px;color:#33454f}
.board-question{border:1px solid #f1d29a;background:#fffaf0;border-radius:12px;padding:10px 12px}
.board-item.is-red .board-question{border-color:#f1c5c0;background:#fff7f6}
.board-question>b{font-size:13.5px}
.board-question dl{display:grid;grid-template-columns:minmax(120px,190px) minmax(0,1fr);gap:4px 12px;margin:8px 0 0;font-size:13px}
.board-question dt{color:#6b7b85;font-weight:750}.board-question dd{margin:0}
.board-noq,.board-missing{margin:0;font-size:12.5px;color:var(--muted)}.board-missing{color:#9a6215}
.board-decs{list-style:none;margin:0;padding:0;display:grid;gap:6px}.board-decs:empty{display:none}
.board-decs li{display:flex;gap:10px;align-items:flex-start;padding:8px 10px;border-radius:10px;background:#f4f8fb;border:1px solid #e3ecf2;font-size:13px}
.board-decs li>div{flex:1;min-width:0}.board-decs li small{display:block;color:var(--muted);font-size:12px}
.board-num{font-weight:850;color:#315f78;white-space:nowrap;font-variant-numeric:tabular-nums}
.board-notes summary,.board-item-edit summary,.board-add-item summary{cursor:pointer;font-size:12.5px;font-weight:800;color:#5c6e79}
.board-notes form,.board-item-edit form{margin-top:6px;display:grid;gap:6px}.board-notes textarea{margin:0}.board-notes .btn{width:auto;justify-self:start;margin:0}
.board-add-item{padding:12px 14px}.board-add-item form{margin-top:10px}.board-add-item .btn{width:auto}
.board-table td{font-size:13px}
.board-table tr.is-red td:first-child{box-shadow:inset 3px 0 0 var(--b-red)}.board-table tr.is-yellow td:first-child{box-shadow:inset 3px 0 0 var(--b-yellow)}
.board-table tr.is-green td:first-child{box-shadow:inset 3px 0 0 var(--b-green)}.board-table tr.is-blue td:first-child{box-shadow:inset 3px 0 0 var(--b-blue)}
.board-table tr.is-blue td,.board-table tr.is-cancelled td{color:#6b7b85}
.board-table td:nth-child(2){min-width:240px;max-width:520px}
.board-table td.nowrap{white-space:nowrap}
.board-proof{color:#2f6fd0!important}
.board-acts{display:flex;gap:5px;align-items:center;flex-wrap:wrap;justify-content:flex-end;min-width:150px}.board-acts form{margin:0}
.board-task{font-size:12px;font-weight:750;white-space:nowrap}.board-task.is-done{color:var(--green)}.board-task.is-review{color:#9a6215}
.board-kpis{grid-template-columns:repeat(5,minmax(0,1fr))}
.board-kpi-s{font-size:15px!important}
.board-empty{padding:18px}.board-empty h3{margin:0 0 4px}.board-empty form{margin-top:12px;max-width:640px}
.board-report-form{padding:14px 16px}
.board-kpi-edit{width:100%;border-collapse:collapse}.board-kpi-edit th{text-align:left;font-size:11.5px;color:#6b7b85;font-weight:800;padding:4px 6px}
.board-kpi-edit td{padding:3px 4px}.board-kpi-edit input,.board-kpi-edit select{margin:0;min-width:90px}
.board-quick-due{display:flex;gap:5px;align-items:center;flex-wrap:wrap;font-size:12px;color:var(--muted);margin:2px 0 8px}
.board-quick-due button{height:26px;padding:0 9px;border-radius:999px;border:1px solid #d5e0e6;background:#fff;font-size:12px;font-weight:750;color:#315f78;cursor:pointer}
.board-backdrop{position:fixed;inset:0;z-index:1150;background:rgba(14,32,44,.28)}
.board-drawer .inst-log{list-style:none;padding:0;margin:0;display:grid;gap:6px;font-size:13px}.board-drawer .inst-log small{display:block;color:var(--muted)}
.board-drawer .board-acts{justify-content:flex-start}
.board-drawer .inst-drawer-body textarea{margin:0}
@media (max-width:900px){
  .board-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .board-clock{grid-template-columns:1fr 1fr;position:static}
  .board-decs li{flex-wrap:wrap}.board-decs li>div{flex-basis:calc(100% - 60px)}.board-timer{grid-column:1/-1}
  .board-head-main{flex-direction:column}.board-item header{flex-wrap:wrap}.board-item-tools{justify-content:flex-start;width:100%}
  .board-question dl{grid-template-columns:1fr}.board-switch select{min-width:0;flex:1}
  .board-table td:nth-child(2){min-width:200px}
}
@media print{.board-noprint,.sidebar,.topbar,.mobile-bottom-nav,.board-clock,.board-item-tools,.board-notes,.board-item-edit,.board-add-item,.board-acts{display:none!important}}
/* ===================== v2.6.1 — почта: исходное письмо в окне ответа / пересылки ===================== */
.mail-compose-original{margin:0 12px;border:1px solid #dfe7ec;border-radius:12px;background:#f8fafb;overflow:hidden}
.mail-compose-original.hidden{display:none}
.mail-orig-head{padding:8px 12px;border-bottom:1px solid #e6edf1;font-size:12.5px;color:#315f78;background:#f1f6f9}
.mail-orig-meta{padding:8px 12px 4px;display:grid;gap:2px;font-size:12.5px;color:#33454f}
.mail-orig-meta span{display:inline-block;min-width:52px;color:#7a8a93;font-weight:700}
.mail-orig-files{padding:4px 12px 8px;display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:12px}
.mail-orig-files>span:first-child{color:#7a8a93;font-weight:700;width:100%}
.mail-orig-file{display:inline-flex;gap:6px;align-items:center;padding:4px 9px;border-radius:999px;background:#fff;border:1px solid #d9e3e9;font-weight:650;color:#2a4757;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mail-orig-file small{color:#7a8a93;font-weight:600}
.mail-orig-text{margin:0 12px 10px;padding:8px 10px;border-left:3px solid #c9d8e2;background:#fff;border-radius:0 8px 8px 0;font-size:12.5px;color:#4a5b65;white-space:pre-wrap;max-height:180px;overflow:auto}
.mail-orig-text:empty{display:none}
#mailComposeForm{max-height:calc(100dvh - 70px);overflow:auto}
#mailComposeForm .mail-compose-actions{position:sticky;bottom:0;z-index:3}
#mailComposeForm.has-original .mail-compose-body textarea{min-height:150px!important}
.mail-compose-original{max-height:300px;overflow:auto;flex:0 0 auto}
/* ===================== v2.6.2 — Правление: файлы докладов ===================== */
.board-upload{margin:0;display:inline-flex}.board-upload label{cursor:pointer}
.board-files{display:grid;gap:6px}
.board-file{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid #e1e8ec;border-radius:11px;background:#fbfcfd}
.board-file form{margin:0}
.board-file-ext{flex:0 0 44px;height:30px;border-radius:7px;display:grid;place-items:center;font-size:10.5px;font-weight:900;color:#fff;background:#7a8a93;letter-spacing:.03em}
.board-file-ext.is-pdf{background:#d64541}.board-file-ext.is-doc,.board-file-ext.is-docx,.board-file-ext.is-rtf,.board-file-ext.is-odt{background:#2f6fd0}.board-file-ext.is-xls,.board-file-ext.is-xlsx,.board-file-ext.is-csv,.board-file-ext.is-ods{background:#2f9e5b}.board-file-ext.is-ppt,.board-file-ext.is-pptx{background:#d9822b}
.board-file-name{flex:1;min-width:0}.board-file-name b{display:block;font-size:13.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-file-name small{color:var(--muted);font-size:11.5px}
.board-file-link{display:block;font-weight:700;font-size:13px}
.board-viewer{border:1px solid #d5e0e6;border-radius:12px;background:#fff;overflow:hidden}
.board-viewer.hidden{display:none}
.board-viewer-bar{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:6px 10px;background:#f1f6f9;border-bottom:1px solid #e1e8ec}
.board-viewer-bar b{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-viewer-bar span{display:flex;gap:5px;flex-wrap:wrap}
.board-viewer-body{height:72vh;overflow:auto;background:#fff}
.board-viewer-body iframe{width:100%;height:100%;border:0;display:block}
.board-viewer-body img{max-width:100%;display:block;margin:0 auto}
.board-viewer.is-full{position:fixed;inset:0;z-index:1300;border-radius:0;display:flex;flex-direction:column}
.board-viewer.is-full .board-viewer-body{height:auto;flex:1}
.board-doc{padding:18px 26px;max-width:1100px;margin:0 auto;font-size:15px;line-height:1.55;color:#1f2a30}
.board-viewer.is-full .board-doc{font-size:17px}
.board-doc p{margin:0 0 8px}.board-doc p.li{padding-left:14px}
.board-doc h2,.board-doc h3,.board-doc h4,.board-doc h5{margin:14px 0 8px;color:#24414f}
.board-doc-tw{overflow:auto;margin:8px 0 14px}
.board-doc table{border-collapse:collapse;width:100%;font-size:.92em}
.board-doc td{border:1px solid #cfd8dd;padding:6px 8px;vertical-align:top}.board-doc td p{margin:0 0 4px}.board-doc td.m{border-top:0}
.board-doc tr:first-child td{background:#f2f6f8;font-weight:700}
.board-doc-pre{padding:16px;white-space:pre-wrap;font-size:14px}
.board-doc-wait,.board-doc-err{padding:18px;color:var(--muted)}.board-doc-err{color:var(--red)}
@media (max-width:900px){.board-file{flex-wrap:wrap}.board-file-name{flex-basis:calc(100% - 60px)}.board-viewer-body{height:65vh}.board-doc{padding:12px}}
/* ===================== v2.6.3 — меню слева: прокрутка пунктов, логотип и профиль на месте ===================== */
@media(min-width:721px){
  .sidebar{height:100vh;height:100dvh;overflow:hidden}
  .sidebar>.brand,.sidebar>.sidebar-profile-wrap{flex:0 0 auto}
  .sidebar>nav{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;align-content:start;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.22) transparent;padding-right:4px;margin-right:-4px}
  .sidebar>nav::-webkit-scrollbar{width:6px}.sidebar>nav::-webkit-scrollbar-thumb{background:rgba(255,255,255,.22);border-radius:6px}.sidebar>nav::-webkit-scrollbar-track{background:transparent}
  .sidebar>nav.is-scroll-more{-webkit-mask-image:linear-gradient(180deg,#000 calc(100% - 28px),transparent);mask-image:linear-gradient(180deg,#000 calc(100% - 28px),transparent)}
}
@media(min-width:721px) and (max-height:980px){
  .sidebar>nav{gap:3px}
  .sidebar .nav-item{height:40px}
  .sidebar .nav-label{padding-top:12px;padding-bottom:5px}
}
/* ===================== v2.6.4 — Календарь: карточка встречи и приглашения ===================== */
.calendar-event.rsp-pending,.schedule-event.rsp-pending{outline:2px dashed rgba(49,95,120,.55);outline-offset:-2px;background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.55) 0 6px,transparent 6px 12px)}
.calendar-event.rsp-pending b::before,.schedule-event.rsp-pending b::before{content:"? ";color:#c47f0f}
.calendar-event.rsp-tentative,.schedule-event.rsp-tentative{background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.45) 0 4px,transparent 4px 10px)}
.calendar-event.rsp-declined,.schedule-event.rsp-declined,.month-event.rsp-declined{opacity:.45}.calendar-event.rsp-declined b,.month-event.rsp-declined{text-decoration:line-through}
.month-event.rsp-pending{outline:1px dashed rgba(49,95,120,.6)}
.month-event{cursor:pointer}
.cal-invites{background:#fff8ec;border-radius:12px;padding:10px!important;border:1px solid #f1d9a8}
.calendar-side-title .is-hot{background:#e3a21a!important;color:#fff!important}
.cal-invite{display:grid;gap:6px;padding:8px 0;border-bottom:1px dashed #ecd9b2}.cal-invite:last-child{border-bottom:0}
.cal-invite-open{all:unset;cursor:pointer;display:grid;gap:1px}.cal-invite-open b{font-size:13px;color:#24414f}.cal-invite-open small{font-size:11.5px;color:#6b7b85}
.cal-invite-btns{display:flex;gap:4px;margin:0}
.cal-rbtn{height:30px;padding:0 11px;border-radius:9px;border:1px solid #d5e0e6;background:#fff;font-size:12.5px;font-weight:800;cursor:pointer;color:#315f78;white-space:nowrap}
.cal-rbtn.is-ok{color:#2f8f57;border-color:#bfe2cd}.cal-rbtn.is-maybe{color:#a86d0c;border-color:#efd6a6}.cal-rbtn.is-no{color:#c0392b;border-color:#f1c5c0}
.cal-rbtn.is-on.is-ok{background:#2f9e5b;color:#fff;border-color:#2f9e5b}.cal-rbtn.is-on.is-maybe{background:#e3a21a;color:#fff;border-color:#e3a21a}.cal-rbtn.is-on.is-no{background:#d64541;color:#fff;border-color:#d64541}
.cal-card-backdrop{position:fixed;inset:0;z-index:1250;background:rgba(14,32,44,.32);display:flex;justify-content:flex-end}
.cal-card-backdrop.hidden{display:none}
.cal-card{width:min(560px,100vw);height:100dvh;background:#f5f8fb;box-shadow:-22px 0 60px rgba(10,34,50,.18);display:flex;flex-direction:column;animation:calIn .16s ease-out}
@keyframes calIn{from{transform:translateX(30px)}to{transform:none}}
.cal-card-head{display:flex;justify-content:space-between;gap:12px;padding:18px 20px 14px;background:#fff;border-bottom:1px solid #e6edf2}
.cal-card-head small{color:#5c6e79;font-size:12.5px;font-weight:700}.cal-card-head h2{margin:4px 0 8px;font-size:22px;letter-spacing:-.02em;line-height:1.2;overflow-wrap:anywhere}
.cal-resp-chip{display:inline-flex;height:24px;align-items:center;padding:0 10px;border-radius:999px;font-size:12px;font-weight:800;background:#eef2f5;color:#55697a}
.cal-resp-chip.is-wait{background:#fff3df;color:#9a6215}.cal-resp-chip.is-ok{background:var(--green-soft);color:var(--green)}.cal-resp-chip.is-no{background:var(--red-soft);color:var(--red)}.cal-resp-chip.is-maybe{background:#fff3df;color:#9a6215}.cal-resp-chip.is-org{background:#eaf2fb;color:#2a5f8f}
.cal-card-body{flex:1;overflow:auto;padding:14px 20px 40px;display:grid;gap:14px;align-content:start}
.cal-respond{display:grid;gap:8px;padding:12px;border-radius:14px;background:#fff;border:1px solid #f1d9a8;margin:0}
.cal-respond-btns{display:flex;gap:6px;flex-wrap:wrap}.cal-respond-btns .cal-rbtn{height:38px;padding:0 16px;font-size:13.5px}
.cal-respond input{margin:0}
.cal-facts{display:grid;grid-template-columns:110px minmax(0,1fr);gap:8px 12px;margin:0;padding:12px 14px;background:#fff;border-radius:14px;border:1px solid #e3eaef}
.cal-facts dt{color:#6b7b85;font-weight:750;font-size:13px}.cal-facts dd{margin:0;font-size:13.5px;overflow-wrap:anywhere}.cal-facts .btn{width:auto;margin:0}
.cal-desc{padding:12px 14px;background:#fff;border-radius:14px;border:1px solid #e3eaef;font-size:13.5px;line-height:1.55}
.cal-desc>b{display:block;font-size:12px;color:#6b7b85;margin-bottom:4px}.cal-desc>div{overflow-wrap:anywhere;word-break:break-word}.cal-desc a{color:var(--brand-3);font-weight:650}
.cal-people{padding:12px 14px;background:#fff;border-radius:14px;border:1px solid #e3eaef}
.cal-people-head{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-bottom:6px}.cal-people-head b{font-size:13.5px}
.cal-people-head span{display:flex;gap:5px;flex-wrap:wrap}.cal-people-head i{font-style:normal;font-size:11.5px;font-weight:800;padding:2px 8px;border-radius:999px;background:#eef2f5;color:#55697a}
.cal-people-head i.is-ok{background:var(--green-soft);color:var(--green)}.cal-people-head i.is-no{background:var(--red-soft);color:var(--red)}.cal-people-head i.is-maybe,.cal-people-head i.is-wait{background:#fff3df;color:#9a6215}
.cal-people ul{list-style:none;margin:0;padding:0;display:grid}
.cal-people li{display:flex;gap:10px;align-items:center;padding:7px 0;border-bottom:1px solid #f0f4f6}.cal-people li:last-child{border-bottom:0}
.cal-people li>div{flex:1;min-width:0}.cal-people li b{display:block;font-size:13px}.cal-people li small{display:block;font-size:11.5px;color:#6b7b85}.cal-people li em{display:block;font-size:12px;color:#4d606b;margin-top:2px}
.cal-pi{flex:0 0 26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:13px;font-weight:900;color:#fff;background:#b9c5cc}
.cal-pi.is-ok{background:#2f9e5b}.cal-pi.is-no{background:#d64541}.cal-pi.is-maybe{background:#e3a21a}.cal-pi.is-wait{background:#b9c5cc}.cal-pi.is-org{background:#315f78}
.cal-pl{font-size:11.5px;font-weight:800;color:#6b7b85;white-space:nowrap}.cal-pl.is-ok{color:#2f8f57}.cal-pl.is-no{color:#c0392b}.cal-pl.is-maybe{color:#a86d0c}.cal-pl.is-org{color:#315f78}
.cal-card-actions{display:flex;gap:8px;flex-wrap:wrap}.cal-card-actions form{margin:0}.cal-card-actions .btn{width:auto;margin:0}
.event-preview a{overflow-wrap:anywhere}
@media(max-width:720px){.cal-card{width:100vw}.cal-facts{grid-template-columns:1fr}.cal-card-head h2{font-size:19px}}
/* ===================== v2.6.5 — отправка доступа ===================== */
.adm-access{white-space:nowrap;width:1%}.adm-access form{margin:0}.adm-access .btn{width:auto;margin:0;min-height:32px;height:32px;padding:0 11px;font-size:12.5px}.adm-access small{display:block;margin-top:3px}
/* ===================== v2.6.6 — восстановление пароля ===================== */
.login-forgot{display:inline-block;margin-top:14px;font-size:13.5px;font-weight:750;color:var(--brand-3);text-decoration:none}.login-forgot:hover{text-decoration:underline}
.login-form .btn.primary{width:100%}.login-form>.btn{margin-top:4px}
.adm-pwreq ul{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:6px}
.adm-pwreq li{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.adm-pwreq li>span{flex:1;min-width:220px;font-size:13px}.adm-pwreq form{margin:0}.adm-pwreq .btn{width:auto;margin:0}
.adm-pwset{padding:10px 14px;margin-bottom:12px}.adm-pwset summary{cursor:pointer;display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}.adm-pwset summary b{font-size:14px}
.adm-pwset-form{display:grid;gap:10px;margin-top:10px;max-width:720px}.adm-pwset-form p{margin:0;color:var(--muted);font-size:13px}.adm-pwset-form .btn{width:auto;justify-self:start}
/* ===================== v2.6.7 — Партнёрский отдел ===================== */
.prt-page{display:grid;gap:10px;min-width:0}
.prt-page .hidden{display:none!important}
.prt-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.prt-title{display:grid;gap:1px}.prt-title b{font-size:18px;letter-spacing:-.02em}.prt-title small{font-size:12.5px;color:var(--muted);font-weight:650}
.prt-title small[data-tone=ok]{color:var(--green)}.prt-title small[data-tone=bad]{color:var(--red)}.prt-title small[data-tone=wait]{color:#9a6215}
.prt-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.prt-actions .btn{width:auto;margin:0}
.prt-conflict{display:flex;gap:6px;align-items:center;flex-wrap:wrap;padding:6px 10px;border-radius:10px;background:var(--red-soft);color:var(--red);font-size:12.5px;font-weight:650;max-width:720px}
.prt-manage{padding:12px 14px;display:grid;gap:10px}
.prt-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.prt-step{display:grid;gap:6px;padding:12px;border:1px dashed #cfdbe3;border-radius:12px;margin:0;align-content:start}
.prt-step.is-done{border-style:solid;background:#f6fbf8;border-color:#cfe7da}.prt-step b{font-size:14px}.prt-step small{color:var(--muted);font-size:12.5px}.prt-step .btn{width:auto;justify-self:start;margin:0;cursor:pointer}
.prt-history summary{cursor:pointer;font-weight:800;font-size:13px;color:#5c6e79}
.prt-frame{width:100%;min-height:480px;border:1px solid #dfe7ec;border-radius:14px;background:#f1f4f7;display:block}
.prt-empty{padding:18px}
@media(max-width:720px){.prt-steps{grid-template-columns:1fr}}
/* ===================== v2.6.8 — рабочие места отделов ===================== */
.wp-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}
.wp-card{display:grid;gap:4px;padding:14px 16px;color:inherit;text-decoration:none}.wp-card:hover{border-color:#c9d8e2}
.wp-card .ico svg{width:26px;height:26px;color:#315f78}.wp-card b{font-size:15px}.wp-card small{color:var(--muted);font-size:12.5px}.wp-card em{font-style:normal;font-size:11.5px;font-weight:800;color:#315f78}
.wp-acc{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px;padding:4px 0;border-bottom:1px solid #eef2f4}.wp-acc form{margin:0}
.wp-acc-add{display:flex;gap:6px;flex-wrap:wrap;margin:4px 0 0}.wp-acc-add select{width:auto;min-width:0;flex:1;margin:0}.wp-acc-add .btn{width:auto;margin:0}
.wp-cmd{display:block;font-size:12px;background:#f2f6f8;border:1px solid #e1e8ec;border-radius:8px;padding:5px 8px;user-select:all;overflow-wrap:anywhere}
.prt-step textarea,.prt-step select{margin:0}

/* ===================== v2.6.9 — Проекты (стройка) ===================== */
.pj-page .eyebrow a{color:inherit}.pj-page h1 .pj-light{font-size:22px;vertical-align:4px}
.pj-light{color:#b9c4cb;font-size:15px;line-height:1}.pj-light.is-red{color:var(--red)}.pj-light.is-yellow{color:#d39a2c}.pj-light.is-green{color:var(--green)}
.pj-bad{color:var(--red)!important;font-weight:750}.pj-ok{color:var(--green);font-weight:700}.pj-warn{color:var(--warn)!important}
.pj-new{padding:16px}.pj-new p{margin:12px 0 0}.pj-new .btn{width:auto}
.pj-pbar{display:inline-block;width:56px;height:6px;border-radius:9px;background:#e7edf1;vertical-align:middle;overflow:hidden}.pj-pbar i{display:block;height:100%;background:#3f7fae}
.pj-portfolio td{vertical-align:middle}.pj-archived{opacity:.6}
.pj-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.pj-block{padding:14px 16px;min-width:0}.pj-block h4{margin:12px 0 6px;font-size:13px;color:#4c5f6b}
.pj-block-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.pj-block-head h3{margin:0;font-size:16px}.pj-block-head a{font-size:12.5px;font-weight:750;color:var(--brand-3)}.pj-block-head .btn{width:auto;margin:0}
.pj-block .inst-table td,.pj-block .inst-table th{padding:6px 8px}
.pj-list{margin:0;padding:0 0 0 16px;display:grid;gap:4px;font-size:13px}.pj-list small{color:var(--muted)}
.pj-mchip{display:inline-block;margin:1px 3px 1px 0;padding:1px 7px;border-radius:999px;font-size:11.5px;font-weight:700;background:#eef2f5;color:#55697a}
.pj-mchip.is-late,.pj-mchip.is-overdue{background:var(--red-soft);color:var(--red)}.pj-mchip.is-soon,.pj-mchip.is-need,.pj-mchip.is-requested{background:#fff3df;color:#9a6215}.pj-mchip.is-ordered,.pj-mchip.is-partial{background:#eaf2fb;color:#2a5f8f}.pj-mchip.is-delivered{background:var(--green-soft);color:var(--green)}
.pj-crit-row td:first-child{box-shadow:inset 3px 0 0 var(--red)}
.pj-facts{display:grid;grid-template-columns:220px 1fr;gap:6px 12px;margin:0;font-size:13.5px}.pj-facts dt{color:var(--muted);font-weight:650}.pj-facts dd{margin:0}
.pj-desc{margin-top:10px;font-size:13.5px;color:#3c4f5b}#pjPassport{margin-top:12px}#pjPassport p .btn{width:auto}
.pj-start{padding:14px 18px}.pj-start ol{margin:6px 0 0;padding-left:20px;display:grid;gap:4px}
.pj-qrow{display:flex;gap:6px;align-items:center;margin-bottom:6px}.pj-qrow form{margin:0}
.pj-inline{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin:0}.pj-inline input,.pj-inline select{height:36px;border:1px solid var(--line);border-radius:9px;padding:0 9px;font:inherit;font-size:13.5px;background:#fff;width:auto;min-width:0;margin:0}.pj-inline .btn{width:auto;margin:0}
.pj-team-add{margin-top:12px}.pj-team-add select{max-width:280px}
.pj-objform{padding:10px 0}.pj-objform p .btn{width:auto}
.pj-help{margin:6px 0 14px;padding-left:18px;display:grid;gap:5px;font-size:13.5px}.pj-help code{background:#f0f4f7;border-radius:5px;padding:0 5px}
.pj-map{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:10px}
.pj-checks{display:grid;gap:6px;margin:12px 0;font-size:13.5px}.pj-checks label{display:flex;gap:8px;align-items:flex-start}.pj-checks input{width:16px;height:16px;flex:0 0 16px;margin:2px 0 0;padding:0}.pj-danger{color:var(--red)}
.pj-preview{max-height:420px}.pj-preview td{white-space:nowrap;max-width:240px;overflow:hidden;text-overflow:ellipsis}.pj-hdr td{background:#eaf3fb;font-weight:800}
.pj-loading{padding:40px;text-align:center;color:var(--muted)}
/* график */
.pj-app{display:grid;gap:8px;min-width:0}.pj-app.is-busy{cursor:progress}.pj-app.is-busy .pj-gwrap{opacity:.85}
.pj-toolbar{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center}.pj-tgroup{display:flex;gap:5px;align-items:center;flex-wrap:wrap}.pj-tright{margin-left:auto}
.pj-toolbar .btn{width:auto;margin:0;min-height:34px;height:34px;padding:0 11px}.pj-toolbar .btn[disabled]{opacity:.45;pointer-events:none}
.pj-sel,.pj-search{height:34px;border:1px solid var(--line);border-radius:9px;padding:0 9px;font:inherit;font-size:13px;background:#fff;width:auto;margin:0}.pj-search{min-width:240px}
.pj-seg{display:inline-flex;gap:2px;padding:2px;border:1px solid #e1e8ec;border-radius:10px;background:#f8fafb}.pj-seg button{border:0;background:none;font:inherit;font-size:12.5px;font-weight:750;color:#5c6e79;padding:0 10px;height:28px;border-radius:7px;cursor:pointer;display:inline-flex;gap:5px;align-items:center}
.pj-seg button.is-on{background:#fff;color:#315f78;box-shadow:0 2px 8px rgba(18,50,70,.08)}.pj-seg button em{font-style:normal;font-size:11px;background:#e7edf1;border-radius:999px;padding:0 6px}.pj-seg button.is-bad em{background:var(--red);color:#fff}.pj-seg-wrap{flex-wrap:wrap}
.pj-chk{display:inline-flex;gap:5px;align-items:center;font-size:12.5px;color:#4c5f6b;font-weight:650}.pj-chk input{width:auto;margin:0}
.pj-sum{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:center;font-size:13px;color:#3c4f5b;padding:2px 2px}
.pj-legend{margin-left:auto;display:inline-flex;gap:6px;align-items:center;font-size:11.5px;color:var(--muted)}.pj-legend i{display:inline-block;width:18px;height:8px;border-radius:3px;margin-left:6px}
.pj-legend .lg-t{background:#5b93bd}.pj-legend .lg-c{background:#d26a5f}.pj-legend .lg-b{height:4px;background:#b8c3ca}.pj-legend .lg-m{width:8px;height:8px;background:#2a4757;transform:rotate(45deg);border-radius:1px}
.pj-empty{padding:28px;text-align:center}.pj-empty .btn{width:auto}
.pj-gwrap{position:relative;overflow:auto;max-height:calc(100dvh - 250px);min-height:260px;border:1px solid #e1e8ec;border-radius:14px;background:#fff;overscroll-behavior:contain}
.pj-ghead{position:sticky;top:0;z-index:6;display:flex;width:max-content;min-width:100%;background:#f8fafb;border-bottom:1px solid #e1e8ec;height:46px}
.pj-lhead,.pj-lcell{position:sticky;left:0;flex:0 0 var(--lw);width:var(--lw);display:flex;align-items:center;border-right:1px solid #e1e8ec}
.pj-lhead{z-index:7;background:#f8fafb;font-size:11.5px;font-weight:800;color:#5c6e79}
.pj-lhead>span,.pj-lcell>span{padding:0 5px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.c-num{flex:0 0 38px;text-align:right;color:#8a9aa4;font-variant-numeric:tabular-nums}.c-name{flex:1 1 auto;min-width:0;display:flex!important;align-items:center;gap:3px}.c-dur{flex:0 0 40px;text-align:right}.c-d{flex:0 0 84px;font-variant-numeric:tabular-nums}.c-pr{flex:0 0 74px;color:#4c5f6b}.c-pc{flex:0 0 32px;text-align:right;color:#4c5f6b}
.c-d.has-c::after{content:"⚑";font-size:10px;color:#9f6b21;margin-left:2px}
.pj-thead{position:relative;flex:0 0 auto;height:46px}
.pj-th-m{position:absolute;top:4px;font-size:11.5px;font-weight:800;color:#3c4f5b;white-space:nowrap;padding-left:4px;border-left:1px solid #d4dee7}
.pj-th-d{position:absolute;top:24px;height:20px;font-size:10.5px;color:#7a8b96;text-align:center;line-height:20px;white-space:nowrap;overflow:hidden}.pj-th-d.is-off{color:#b0bcc4}.pj-th-d.is-today{background:#c44f4f;color:#fff;border-radius:4px;font-weight:800}
.pj-gbody{position:relative;width:max-content;min-width:100%}
.pj-bg{position:absolute;top:0;bottom:0;left:var(--lw);pointer-events:none}.pj-bg i{position:absolute;top:0;bottom:0}.pj-bg .off{background:#f5f7f9}.pj-bg .mon{width:1px;background:#e4eaee}.pj-bg .today{width:2px;margin-left:-1px;background:rgba(196,79,79,.55);z-index:3}
.pj-arrows{position:absolute;top:0;left:var(--lw);pointer-events:none;z-index:1;overflow:visible}.pj-arrows path{fill:none;stroke:#8fa0ab;stroke-width:1.2}.pj-arrows path.crit{stroke:#c44f4f}
.pj-row{position:relative;display:flex;height:30px;width:max-content;min-width:100%;font-size:12.5px;cursor:default}
.pj-lcell{z-index:4;background:#fff;height:30px;border-bottom:1px solid #f0f3f5}
.pj-row:hover .pj-lcell{background:#f6f9fb}.pj-row.is-sel .pj-lcell{background:#e8f1fa}.pj-row.is-sel .pj-track{background:rgba(52,120,180,.06)}
.pj-row.is-group .pj-lcell{font-weight:800;color:#203845}.pj-row.is-crit .c-num{color:var(--red);font-weight:800}.pj-row.is-late .c-name .pj-nm{color:var(--red)}
.pj-row.pj-flash .pj-lcell{animation:pjFlash 4s ease-out}@keyframes pjFlash{0%,30%{background:#fff1cc}100%{background:#fff}}
.pj-caret{border:0;background:none;padding:0;width:14px;flex:0 0 14px;cursor:pointer;color:#5c6e79;font-size:11px}.pj-caret-sp{flex:0 0 14px}
.pj-ms-ico{font-style:normal;font-size:10px;color:#2a4757}.pj-nm{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.c-name small{color:#8a9aa4;font-size:10.5px;white-space:nowrap;margin-left:4px}
[data-edit]{cursor:text}.pj-cell-in{width:100%;height:24px;border:1px solid #6aa0c8;border-radius:5px;padding:0 5px;font:inherit;font-size:12.5px;margin:0;background:#fff}
.pj-track{position:relative;flex:0 0 auto;height:30px;z-index:2}
.pj-base{position:absolute;top:21px;height:4px;border-radius:2px;background:#c3ccd2}
.pj-bar{position:absolute;top:7px;height:14px;border-radius:4px;background:#8fb8d6;border:1px solid #5b93bd;overflow:hidden;box-sizing:border-box}
.pj-bar .pj-prog{position:absolute;left:0;top:0;bottom:0;background:#3f7fae}.pj-bar.crit{background:#eaa49c;border-color:#c44f4f}.pj-bar.crit .pj-prog{background:#c44f4f}
.pj-bar.late{box-shadow:0 0 0 2px rgba(196,79,79,.35)}.pj-bar.done{background:#9fcdb2;border-color:#258b5c}.pj-bar.done .pj-prog{background:#258b5c}
.pj-bar.can-move{cursor:grab;touch-action:none}.pj-bar.is-drag{cursor:grabbing;opacity:.85;overflow:visible;z-index:5}.pj-bar.is-drag::after{content:attr(data-tip);position:absolute;left:0;top:-22px;background:#203845;color:#fff;font-size:11px;padding:2px 6px;border-radius:5px;white-space:nowrap}
.pj-grip{position:absolute;right:0;top:0;bottom:0;width:7px;cursor:ew-resize;touch-action:none}.pj-grip:hover{background:rgba(0,0,0,.15)}
.pj-ms{position:absolute;top:8px;width:13px;height:13px;background:#2a4757;transform:rotate(45deg);border-radius:2px}.pj-ms.crit{background:var(--red)}.pj-ms.done{background:var(--green)}
.pj-gbar{position:absolute;top:10px;height:8px;background:#40535f;border-radius:1px}.pj-gbar::before,.pj-gbar::after{content:"";position:absolute;bottom:-5px;border:5px solid transparent;border-top-color:#40535f}.pj-gbar::before{left:-1px;border-left-color:#40535f}.pj-gbar::after{right:-1px;border-right-color:#40535f}
.pj-gbar i{display:block;height:100%;background:#7fa9c6;opacity:.75}
.pj-blabel{position:absolute;top:8px;font-size:11px;color:#5c6e79;white-space:nowrap;pointer-events:none}
.pj-hint{margin:0;font-size:12px;color:var(--muted)}
.pj-toasts{position:fixed;right:16px;bottom:16px;z-index:1300;display:grid;gap:8px;width:min(480px,calc(100vw - 32px))}
.pj-toast{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:12px;background:#203845;color:#fff;font-size:13px;box-shadow:var(--shadow-md)}.pj-toast span{flex:1}.pj-toast button{border:0;background:none;color:inherit;font-size:18px;line-height:1;cursor:pointer;padding:0}
.pj-toast.is-warn{background:#7a4f12}.pj-toast.is-bad{background:#a33d3d}.pj-toast.is-ok{background:#1f5a3f}
.pj-side{position:fixed;top:0;right:0;width:min(440px,100vw);height:100dvh;z-index:1150;background:#fff;box-shadow:-18px 0 50px rgba(10,34,50,.16);display:flex;flex-direction:column;overflow:auto}
.pj-side-head{display:flex;justify-content:space-between;gap:10px;padding:14px 16px 10px;border-bottom:1px solid #e6edf2;position:sticky;top:0;background:#fff;z-index:1}.pj-side-head small{color:var(--muted);font-size:12px;font-weight:700}.pj-side-head h3{margin:3px 0 6px;font-size:18px;line-height:1.25}
.pj-side-badges{display:flex;gap:4px;flex-wrap:wrap}
.pj-side-body{display:grid;gap:9px;padding:12px 16px}.pj-f{display:grid;gap:3px;font-size:12px;color:var(--muted);font-weight:700;min-width:0}.pj-f em{font-style:normal;font-weight:500;color:#8a9aa4;font-size:11.5px}
.pj-f input,.pj-f select,.pj-f textarea{width:100%;min-width:0;height:36px;border:1px solid var(--line);border-radius:9px;padding:0 9px;font:inherit;font-size:13.5px;background:#fff;color:var(--ink);margin:0}.pj-f textarea{height:auto;padding:7px 9px;resize:vertical}.pj-f input:disabled,.pj-f select:disabled,.pj-f textarea:disabled{background:#f6f8fa;color:#4c5f6b}
.pj-f2{display:grid;grid-template-columns:1fr 1fr;gap:8px}.pj-f3{display:grid;grid-template-columns:1.6fr .8fr .6fr;gap:8px}
.pj-succ{font-size:12.5px;color:var(--muted);display:flex;flex-wrap:wrap;gap:4px 8px}.pj-succ a{color:var(--brand-3);font-weight:650}
.pj-side-act .btn{width:100%;margin:0}
.pj-side-mat{padding:4px 16px 24px;border-top:1px solid #e6edf2}.pj-side-mat h4{margin:12px 0 8px;font-size:14px}.pj-side-mat h4 small{color:var(--muted);font-weight:500}
.pj-mrow{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:6px 8px;border-radius:9px;background:#f6f8fa;margin-bottom:5px;font-size:13px}.pj-mrow small{display:block;color:var(--muted);font-size:11.5px}.pj-mrow select{width:auto;height:30px;font-size:12px;border:1px solid var(--line);border-radius:7px;margin:0}
.pj-mrow.is-late,.pj-mrow.is-overdue{background:var(--red-soft)}.pj-mrow.is-late small,.pj-mrow.is-overdue small{color:var(--red)}.pj-mrow.is-soon{background:#fff6e7}.pj-mrow.is-delivered{background:var(--green-soft)}
.pj-madd{display:grid;grid-template-columns:1.6fr .7fr .5fr .5fr auto;gap:5px;margin-top:8px}.pj-madd input,.pj-madd select{height:34px;border:1px solid var(--line);border-radius:8px;padding:0 8px;font:inherit;font-size:13px;min-width:0;width:100%;margin:0;background:#fff}.pj-madd .btn{width:auto;margin:0;min-height:34px;height:34px}
.pj-madd-wide{grid-template-columns:2fr .6fr .5fr 2fr .5fr .9fr 1fr auto;padding:10px;margin:0}
.pj-mwrap{padding-top:0}.pj-mtable td{vertical-align:middle}.pj-mtable td small{display:block}
.pj-m.is-late td:first-child,.pj-m.is-overdue td:first-child{box-shadow:inset 3px 0 0 var(--red)}.pj-m.is-soon td:first-child{box-shadow:inset 3px 0 0 #d39a2c}.pj-m.is-delivered{opacity:.75}
.pj-min{height:30px;border:1px solid transparent;border-radius:7px;padding:0 6px;font:inherit;font-size:13px;background:transparent;width:100%;min-width:90px;margin:0}.pj-min:hover,.pj-min:focus{border-color:var(--line);background:#fff}select.pj-min{border-color:var(--line);background:#fff;width:auto}
.pj-qty{display:inline-flex;gap:2px}.pj-num{width:70px;min-width:0;text-align:right}.pj-unit{width:50px;min-width:0}
.pj-moved{display:inline-flex;gap:4px;align-items:center;margin-top:2px;font-size:11px;font-weight:750;color:#9a6215;background:#fff3df;border-radius:6px;padding:1px 6px}.pj-moved button{border:0;background:#fff;border-radius:4px;cursor:pointer;font-size:11px;padding:0 4px}
.pj-x{border:0;background:none;font-size:18px;color:#9aa8b1;cursor:pointer}.pj-x:hover{color:var(--red)}
@media (min-width:1700px){body.pj-side-open .pj-app{margin-right:440px}}
@media (max-width:1100px){.pj-two{grid-template-columns:1fr}.pj-map{grid-template-columns:repeat(2,minmax(0,1fr))}.pj-madd-wide{grid-template-columns:1fr 1fr}}
@media (max-width:720px){.c-pr,.c-pc,.c-d,.c-dur{display:none!important}.c-name small{display:none}.pj-facts{grid-template-columns:1fr}.pj-legend{display:none}.pj-tright{margin-left:0}.pj-search{min-width:0;flex:1}}
/* ===================== v2.6.10 — выбор людей ===================== */
.gs-pt{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:6px 0 8px}
.gs-pt input[type=search]{flex:1 1 180px;min-width:0;height:34px;border:1px solid var(--line);border-radius:9px;padding:0 10px;font:inherit;font-size:13px;margin:0;background:#fff}
.gs-pt select{height:34px;border:1px solid var(--line);border-radius:9px;padding:0 8px;font:inherit;font-size:13px;background:#fff;width:auto;max-width:240px;margin:0}
.gs-pt button{height:32px;border:1px solid var(--line);border-radius:9px;background:#fff;font:inherit;font-size:12.5px;font-weight:700;color:#315f78;padding:0 10px;cursor:pointer}
.gs-pt button:hover{background:#f2f7fb}.gs-pt .gs-pt-n{margin-left:auto;font-size:12px;color:var(--muted);font-weight:700}
.gs-allco{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid #d7e6f3;border-radius:12px;background:#f4f9fd;margin:2px 0 10px;cursor:pointer}
.gs-allco input{width:18px;height:18px;margin:2px 0 0;flex:0 0 18px}.gs-allco b{display:block;font-size:14px}.gs-allco small{display:block;color:var(--muted);font-size:12px;margin-top:2px}
form.is-allco .group-member-picker,form.is-allco .gs-pt,form.is-allco .member-search{opacity:.35;pointer-events:none}
.cal-people-search{width:100%;height:34px;border:1px solid var(--line);border-radius:9px;padding:0 10px;font:inherit;font-size:13px;margin:0 0 8px;background:#fff;box-sizing:border-box}
/* ===================== v2.6.10 — права роли в редакторе ===================== */
#userPermissionChecks label.from-role{opacity:.6}#userPermissionChecks label.from-role span::after{content:" · роль";font-size:11px;color:var(--muted)}
/* ===================== v2.6.10 — Лента компании ===================== */
.feed-page{max-width:820px;margin:0 auto;display:grid;gap:12px}
.feed-head h1{margin:0 0 4px}.feed-head p{margin:0;color:var(--muted);font-size:14px}
.feed-write{padding:14px}.feed-write-top{display:flex;gap:10px;align-items:flex-start}.feed-write textarea{flex:1;min-width:0;border:1px solid var(--line);border-radius:12px;padding:10px 12px;font:inherit;font-size:14.5px;resize:vertical;min-height:46px;margin:0}
.feed-write-bottom{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:10px;padding-left:52px}
.feed-write-bottom select{height:36px;border:1px solid var(--line);border-radius:9px;padding:0 8px;font:inherit;font-size:13px;width:auto;margin:0;background:#fff}
.feed-write-bottom .btn{width:auto;margin:0 0 0 auto}
.feed-attach{position:relative;display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 12px;border:1px dashed #b8c8d6;border-radius:9px;font-size:13px;font-weight:700;color:#315f78;cursor:pointer}.feed-attach input{position:absolute;inset:0;opacity:0;cursor:pointer}.feed-attach em{font-style:normal;color:var(--muted);font-weight:500}
.feed-chk{display:inline-flex;gap:5px;align-items:center;font-size:13px;color:#4c5f6b}.feed-chk input{width:auto;margin:0}
.feed-filters{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.feed-filters a{padding:6px 11px;border-radius:999px;background:#fff;border:1px solid #e1e8ec;font-size:13px;font-weight:700;color:#4c5f6b;text-decoration:none}
.feed-filters a.active{background:#203845;color:#fff;border-color:#203845}.feed-filters a em{font-style:normal;background:var(--red);color:#fff;border-radius:999px;padding:0 6px;font-size:11px}
.feed-search{margin-left:auto}.feed-search input{height:34px;border:1px solid var(--line);border-radius:999px;padding:0 12px;font:inherit;font-size:13px;width:200px;margin:0;background:#fff}
.feed-empty{padding:30px;text-align:center;display:grid;gap:4px}.feed-empty span{color:var(--muted)}
.feed-post{padding:14px 16px 10px;display:grid;gap:10px;scroll-margin-top:90px}.feed-post.is-pinned{border-color:#d7c38a;box-shadow:inset 3px 0 0 #d3a42c}.feed-post.is-need{box-shadow:inset 3px 0 0 var(--red)}
.feed-post header{display:flex;gap:10px;align-items:center}.feed-post header>div:nth-child(2){flex:1;min-width:0}.feed-post header b{display:block;font-size:14.5px}.feed-post header small{color:var(--muted);font-size:12px}.feed-post header small a{color:inherit}
.feed-badges{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}
.feed-cat{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:800;background:#eef2f5;color:#55697a}
.feed-cat.is-announce{background:#fff3df;color:#9a6215}.feed-cat.is-order{background:#fdecea;color:#b23b3b}.feed-cat.is-congrats{background:#fcebf6;color:#a3307a}.feed-cat.is-site{background:#e8f4ec;color:#256b43}.feed-cat.is-news{background:#eaf2fb;color:#2a5f8f}
.feed-pin{font-size:11px;font-weight:800;color:#9a6215;font-style:normal}.feed-ackb{font-size:11px;font-weight:800;color:#b23b3b;background:#fdecea;border-radius:999px;padding:2px 8px}
.feed-menu{position:relative}.feed-menu summary{list-style:none;cursor:pointer;font-size:20px;line-height:1;color:#7a8b96;padding:0 6px}.feed-menu summary::-webkit-details-marker{display:none}
.feed-menu>div{position:absolute;right:0;top:26px;z-index:5;background:#fff;border:1px solid #e1e8ec;border-radius:12px;box-shadow:var(--shadow-md);padding:6px;display:grid;min-width:210px}
.feed-menu form{margin:0}.feed-menu button{width:100%;text-align:left;border:0;background:none;padding:8px 10px;border-radius:8px;font:inherit;font-size:13.5px;cursor:pointer}.feed-menu button:hover{background:#f2f6f9}.feed-menu button.danger{color:var(--red)}
.feed-body{font-size:15px;line-height:1.5;white-space:normal;word-wrap:break-word}.feed-body.is-long{max-height:260px;overflow:hidden;-webkit-mask-image:linear-gradient(#000 70%,transparent)}
.feed-more{border:0;background:none;color:var(--brand-3);font-weight:700;cursor:pointer;padding:0;justify-self:start;font:inherit;font-size:13.5px}
.feed-edit{display:none;gap:8px}.feed-post.is-edit .feed-edit{display:grid}.feed-post.is-edit .feed-body,.feed-post.is-edit .feed-more{display:none}
.feed-edit textarea{border:1px solid var(--line);border-radius:10px;padding:8px 10px;font:inherit;margin:0}.feed-edit>div{display:flex;gap:6px;justify-content:flex-end}.feed-edit select{height:32px;border:1px solid var(--line);border-radius:8px;margin:0 auto 0 0;width:auto}.feed-edit .btn{width:auto;margin:0}
.feed-imgs{display:grid;gap:4px;border-radius:12px;overflow:hidden}.feed-imgs.n1{grid-template-columns:1fr}.feed-imgs.n2{grid-template-columns:1fr 1fr}.feed-imgs.n3{grid-template-columns:2fr 1fr 1fr}.feed-imgs.n4{grid-template-columns:1fr 1fr}
.feed-img{position:relative;display:block;background:#eef2f5;aspect-ratio:4/3}.feed-imgs.n1 .feed-img{aspect-ratio:auto;max-height:520px}.feed-img img{width:100%;height:100%;object-fit:cover;display:block}.feed-imgs.n1 .feed-img img{max-height:520px;object-fit:contain;background:#0f1d26}
.feed-img span{position:absolute;inset:0;display:grid;place-items:center;background:rgba(15,29,38,.55);color:#fff;font-size:26px;font-weight:800}
.feed-imgs-more{display:flex;flex-wrap:wrap;gap:6px;font-size:12.5px}
.feed-docs{display:grid;gap:4px}.feed-docs a{display:flex;gap:6px;align-items:center;padding:7px 10px;border:1px solid #e1e8ec;border-radius:10px;text-decoration:none;color:#203845;font-size:13.5px;font-weight:650}.feed-docs small{color:var(--muted);font-weight:500;margin-left:auto}
.feed-ack{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:8px 10px;border-radius:10px;background:#fff8ef;font-size:13px}.feed-ack form{margin:0}.feed-ack .btn{width:auto;margin:0}.feed-ack-ok{color:var(--green);font-weight:800}
.feed-ack details summary{cursor:pointer;font-weight:700;color:#7a4f12}.feed-ack-list{margin-top:6px;color:#4c5f6b;font-size:12.5px;line-height:1.5}
.feed-react{display:flex;flex-wrap:wrap;gap:6px;align-items:center;border-top:1px solid #eef2f5;padding-top:8px}.feed-react form{margin:0}
.feed-react button{border:1px solid #e1e8ec;background:#fff;border-radius:999px;height:30px;padding:0 10px;font:inherit;font-size:14px;cursor:pointer;display:inline-flex;gap:4px;align-items:center}
.feed-react button span{font-size:12px;font-weight:800;color:#4c5f6b}.feed-react button.is-on{background:#eaf2fb;border-color:#9cc0e0}.feed-cbtn{margin-left:auto;font-size:13px!important;font-weight:700;color:#315f78}
.feed-comments{display:none;gap:8px}.feed-comments.is-open{display:grid}.feed-c{display:flex;gap:8px;align-items:flex-start}.feed-c>div{flex:1;background:#f5f8fa;border-radius:12px;padding:7px 10px;font-size:13.5px}.feed-c p{margin:2px 0 0;white-space:normal}.feed-c small{color:var(--muted);font-size:11.5px}
.feed-c form{margin:0}.feed-c button{border:0;background:none;color:#9aa8b1;cursor:pointer;font-size:16px}.feed-c.is-old{display:none}.feed-comments.show-all .feed-c.is-old{display:flex}
.feed-call{border:0;background:none;color:var(--brand-3);font-weight:700;cursor:pointer;justify-self:start;font:inherit;font-size:13px;padding:0}
.feed-cform{display:flex;gap:6px;align-items:flex-end}.feed-cform textarea{flex:1;min-width:0;border:1px solid var(--line);border-radius:12px;padding:8px 10px;font:inherit;font-size:13.5px;resize:none;margin:0;min-height:38px}.feed-cform .btn{width:auto;margin:0;height:38px}
.feed-pages{display:flex;gap:4px;justify-content:center}.feed-pages a{min-width:34px;height:34px;display:grid;place-items:center;border-radius:9px;border:1px solid #e1e8ec;background:#fff;text-decoration:none;color:#203845;font-weight:700}.feed-pages a.active{background:#203845;color:#fff}
.feed-dash{grid-column:1/-1;margin-top:12px}.feed-dash .card-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.feed-dash-act{display:flex;gap:10px;align-items:center}.feed-dash-act .btn{width:auto;margin:0}.feed-dash-act a:not(.btn){font-weight:800;color:var(--brand-3);font-size:13px}
.feed-dash-need{margin:4px 14px 8px;padding:10px 12px;border-radius:12px;background:#fdecea;display:grid;gap:6px}.feed-dash-need>b{color:#b23b3b;font-size:13px}.feed-dash-need a{display:block;color:#203845;text-decoration:none;font-size:13.5px}.feed-dash-need small{display:block;color:var(--muted);font-size:11.5px}.feed-dash-need .feed-cat{margin-right:6px}
.feed-dash-list{display:grid}.feed-dash-list a{display:flex;gap:10px;align-items:flex-start;padding:10px 14px;border-top:1px solid #eef2f5;text-decoration:none;color:#203845}.feed-dash-list a:hover{background:#f7fafc}
.feed-dash-list b{display:block;font-size:13.5px}.feed-dash-list div>span{display:block;font-size:13.5px;color:#3c4f5b}.feed-dash-list small .feed-cat{margin-right:4px}.feed-dash-list small{display:block;color:var(--muted);font-size:11.5px;margin-top:2px}.feed-dash-empty{padding:16px 14px;color:var(--muted)}
@media (max-width:720px){.feed-write-bottom{padding-left:0}.feed-search{margin-left:0;width:100%}.feed-search input{width:100%}.feed-badges{display:none}.feed-imgs.n3{grid-template-columns:1fr 1fr}}
/* ===================== v2.6.11 — Проекты 2.0 ===================== */
.pj-ptabs{margin-bottom:2px}.inst-tabs a em{font-style:normal;font-size:11px;font-weight:800;background:var(--red);color:#fff;border-radius:999px;padding:0 6px;min-width:18px;text-align:center}
/* фишки готовности в графике */
.c-rdy{flex:0 0 50px;display:flex!important;gap:2px;align-items:center;justify-content:center;padding:0 2px!important}
.c-rdy i{width:10px;height:10px;border-radius:3px;font-style:normal;font-size:0;background:#e3e9ee;flex:0 0 10px}
.c-rdy i.rd-ok{background:#2f9a68}.c-rdy i.rd-wait{background:#e7b74e}.c-rdy i.rd-bad{background:#d0473f}.c-rdy i.rd-na{background:transparent;box-shadow:inset 0 0 0 1px #dbe3e8}
.c-rdy.is-threat{background:rgba(208,71,63,.07);border-radius:5px}
.pj-lhead .c-rdy{font-size:10.5px}
.pj-fishes{display:flex;flex-wrap:wrap;gap:5px}
.pj-fish{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;font-size:11.5px;font-weight:750;background:#eef2f5;color:#55697a;margin:1px 3px 1px 0;white-space:nowrap}
.pj-fish::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.pj-fish.is-ok{background:var(--green-soft);color:var(--green)}.pj-fish.is-wait{background:#fff3df;color:#9a6215}.pj-fish.is-bad{background:var(--red-soft);color:var(--red)}
.pj-side-rdy{padding:10px 16px 2px}.pj-side-rdy h4{margin:0 0 7px;font-size:13.5px}.pj-side-rdy h4 small{color:var(--muted);font-weight:600}.pj-side-rdy p{margin:7px 0 0;font-size:12.5px}
/* связи мышкой */
.pj-lh{position:absolute;top:9px;width:11px;height:11px;margin-left:-1px;border-radius:50%;background:#fff;border:2px solid #5b93bd;cursor:crosshair;opacity:0;transition:opacity .12s;z-index:4;touch-action:none}
.pj-row:hover .pj-lh,.pj-row.is-sel .pj-lh,.pj-app.is-linking .pj-lh{opacity:1}.pj-lh:hover{background:#5b93bd;transform:scale(1.2)}
.pj-track{pointer-events:none}.pj-track>.pj-bar,.pj-track>.pj-ms,.pj-track>.pj-gbar,.pj-track>.pj-lh{pointer-events:auto}.pj-arrows path.hit{stroke:transparent;stroke-width:8;pointer-events:stroke;cursor:pointer;fill:none}.pj-arrows path.hit:hover{stroke:rgba(52,120,180,.25)}
.pj-arrows path.tmp{stroke:#3478b4;stroke-width:2;stroke-dasharray:5 4;fill:none}
.pj-row.is-ltarget .pj-lcell,.pj-row.is-ltarget .pj-track{background:#e2f2e9!important}.pj-row.is-lbad .pj-lcell{background:#fbeceb!important}
.pj-app.is-linking{cursor:crosshair;user-select:none}
.pj-pop{position:fixed;z-index:1400;width:320px;display:grid;gap:8px;padding:12px 14px;border-radius:12px;background:#fff;box-shadow:0 18px 50px rgba(10,34,50,.22);border:1px solid #e1e8ec;font-size:13px}.pj-pop small{color:var(--muted)}
.pj-pop-act{display:flex;justify-content:space-between;gap:6px}.pj-pop-act .btn{width:auto;margin:0}
/* меню «Ещё» */
.pj-more{position:relative}.pj-more-menu{display:none;position:absolute;top:calc(100% + 4px);left:0;z-index:30;width:300px;padding:6px;border-radius:12px;background:#fff;border:1px solid #e1e8ec;box-shadow:0 14px 40px rgba(10,34,50,.16)}
.pj-more.is-open .pj-more-menu{display:grid;gap:2px}.pj-more-menu button{display:grid;gap:1px;text-align:left;border:0;background:none;padding:7px 9px;border-radius:8px;cursor:pointer;font:inherit}.pj-more-menu button:hover{background:#f1f6fa}.pj-more-menu button[disabled]{opacity:.45;cursor:default;background:none}
.pj-more-menu b{font-size:13px}.pj-more-menu small{font-size:11.5px;color:var(--muted)}.pj-more-note{margin:4px 8px 6px;font-size:12px;color:#9a6215}
.pj-empty-act{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.pj-empty-act .btn{width:auto;margin:0}
/* окна */
.pj-modal-bg{position:fixed;inset:0;z-index:1200;background:rgba(14,32,44,.38);display:flex;align-items:flex-start;justify-content:center;padding:6vh 16px 16px;overflow:auto}
.pj-modal{width:min(560px,100%);background:#fff;border-radius:16px;box-shadow:0 30px 80px rgba(10,34,50,.3);display:flex;flex-direction:column;max-height:88vh}.pj-modal.is-wide{width:min(760px,100%)}
.pj-modal-head{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 18px 10px;border-bottom:1px solid #e6edf2}.pj-modal-head h3{margin:0;font-size:17px}
.pj-modal-body{padding:12px 18px 18px;overflow:auto;display:grid;gap:10px}.pj-modal-body>p{margin:0;font-size:13px}
.pj-modal-body textarea{width:100%;min-height:200px;border:1px solid var(--line);border-radius:10px;padding:9px 10px;font:inherit;font-size:13.5px;font-family:ui-monospace,Menlo,Consolas,monospace;margin:0}
.pj-modal-act{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.pj-modal-act .btn{width:auto;margin:0}.pj-modal-act .pj-danger{margin-right:auto;color:var(--red)}
body.pj-modal-open{overflow:hidden}
.pj-chk-mid{align-self:end;min-height:36px}
.pj-tpl-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;max-height:46vh;overflow:auto;padding:2px}
.pj-tpl-list h4{grid-column:1/-1;margin:6px 0 0;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#7a8b96}
.pj-tpl-i{display:grid;gap:2px;text-align:left;border:1px solid #e1e8ec;border-radius:10px;background:#fff;padding:9px 11px;cursor:pointer;font:inherit}.pj-tpl-i:hover{border-color:#a9c6dc;background:#f7fbfe}
.pj-tpl-i.is-on{border-color:#3478b4;background:#eaf3fb;box-shadow:0 0 0 2px rgba(52,120,180,.18)}.pj-tpl-i b{font-size:13.5px}.pj-tpl-i small{font-size:11.5px;color:var(--muted)}.pj-tpl-i em{font-style:normal;font-size:11px;font-weight:750;color:#2a5f8f}
.pj-tpl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:8px}.pj-tpl{display:grid;gap:3px;padding:11px 13px;border:1px solid #e1e8ec;border-radius:12px;background:#fbfcfd}.pj-tpl small{color:var(--muted);font-size:12px}.pj-tpl em{font-style:normal;font-size:11.5px;color:#2a5f8f;font-weight:700}
/* карточка материала / документа */
.pj-mform{display:grid;gap:9px}.pj-mneed{font-size:13px;display:flex;flex-wrap:wrap;gap:4px 8px;align-items:center;padding:7px 10px;border-radius:9px;background:#f4f7f9}.pj-mneed small{color:var(--muted)}
.pj-checks2{display:flex;gap:14px;align-items:flex-end;padding-bottom:8px}
.pj-msum{font-size:13px;font-weight:750;color:#2a4757}
.pj-deliv{border-top:1px solid #e6edf2;padding-top:6px}.pj-deliv h4{margin:6px 0 8px;font-size:14px}.pj-deliv h4 small{color:var(--muted);font-weight:500}
.pj-drow{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:6px 9px;border-radius:9px;background:#f6f8fa;margin-bottom:5px;font-size:13px}.pj-drow small{color:var(--muted)}.pj-drow .btn{width:auto;margin:0}
.pj-dlvadd{grid-template-columns:1fr 1fr 1fr auto}
.pj-upl{display:flex;align-items:center;gap:8px;padding:10px;border:1.5px dashed #c9d6df;border-radius:10px;cursor:pointer;font-size:13px;font-weight:700;color:#2a5f8f}.pj-upl input{width:auto;margin:0;font-size:12px}
.pj-cd{display:inline-block;font-size:11px;font-weight:800;padding:1px 7px;border-radius:999px;background:#eef2f5;color:#55697a;white-space:nowrap}.pj-cd.is-bad{background:var(--red-soft);color:var(--red)}.pj-cd.is-warn{background:#fff3df;color:#9a6215}
.pj-mrow-main{cursor:pointer;min-width:0;flex:1}.pj-mrow-main:hover b{text-decoration:underline}
.pj-dsub{font-size:11.5px;font-weight:800;color:#7a8b96;text-transform:uppercase;letter-spacing:.03em;margin:8px 0 4px}
.pj-dadd{grid-template-columns:.5fr 2fr .5fr auto}.pj-dadd-wide{grid-template-columns:2.2fr .7fr 2fr .5fr .9fr 1.2fr auto;padding:10px;margin:0}
.pj-plink{font-size:12.5px;font-weight:750;color:var(--brand-3)}
.pj-mname{font-weight:800;color:inherit}
/* доски снабжения и ПТО */
.pj-board{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(230px,1fr);gap:10px;overflow-x:auto;padding-bottom:6px;align-items:start}
.pj-col{background:#f3f6f8;border-radius:14px;padding:8px;min-height:180px;display:grid;gap:7px;align-content:start;border:2px solid transparent;transition:border-color .12s,background .12s}
.pj-col.is-over{border-color:#5b93bd;background:#eaf3fb}
.pj-col-head{display:flex;justify-content:space-between;align-items:center;padding:2px 4px 4px;font-size:13px}.pj-col-head em{font-style:normal;font-size:11.5px;font-weight:800;background:#fff;border-radius:999px;padding:0 8px;color:#55697a}
.pj-col.is-delivered .pj-col-head b{color:var(--green)}.pj-col.is-need .pj-col-head b{color:#9a6215}
.pj-card{display:grid;gap:3px;padding:9px 10px;border-radius:11px;background:#fff;box-shadow:0 1px 3px rgba(15,40,60,.08);cursor:pointer;border-left:3px solid #c6d3dc;font-size:12.5px}
.pj-card:hover{box-shadow:0 6px 18px rgba(15,40,60,.12)}.pj-card[draggable=true]{cursor:grab}.pj-card.is-drag{opacity:.5}
.pj-card.is-late,.pj-card.is-overdue{border-left-color:var(--red)}.pj-card.is-soon{border-left-color:#e0a43a}.pj-card.is-delivered{border-left-color:var(--green);opacity:.85}
.pj-card-top{display:flex;justify-content:space-between;gap:6px;align-items:flex-start}.pj-card-top b{font-size:13px;line-height:1.25}
.pj-card small{color:var(--muted);font-size:11.5px}.pj-card-task{color:#4c5f6b!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pj-card-foot{display:flex;gap:6px;align-items:center;flex-wrap:wrap;font-size:11.5px;color:#4c5f6b;margin-top:2px}.pj-card-foot .pj-ava{margin-left:auto}
.pj-paid{color:var(--green);font-weight:750}
.pj-ava{width:22px;height:22px;border-radius:50%;background:#dfe9f1;color:#2a5f8f;font-style:normal;font-size:10px;font-weight:800;display:inline-flex;align-items:center;justify-content:center}
/* табло */
.pj-scores{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.pj-score{display:flex;gap:12px;align-items:center;padding:10px 12px;border:1px solid #e6edf2;border-radius:14px;background:#fbfcfd}.pj-score h4{margin:0 0 2px;font-size:14px;color:#203845}.pj-score small{display:block;color:var(--muted);font-size:12px}.pj-score span{font-size:12px}
.pj-ring{--c:#9aa8b1;flex:0 0 62px;width:62px;height:62px;border-radius:50%;background:conic-gradient(var(--c) calc(var(--p)*1%),#e7edf1 0);display:grid;place-items:center;position:relative}
.pj-ring::before{content:"";position:absolute;inset:7px;border-radius:50%;background:#fff}.pj-ring b{position:relative;font-size:15px;color:#203845}
.pj-score.is-good .pj-ring{--c:#2f9a68}.pj-score.is-mid .pj-ring{--c:#e0a43a}.pj-score.is-bad .pj-ring{--c:#d0473f}
/* Мой фронт */
.pj-front{display:grid;gap:12px}
.pj-front-head{display:flex;gap:16px;align-items:center;padding:14px 16px}.pj-front-score{display:grid;place-items:center;min-width:96px;padding:8px 12px;border-radius:14px;text-align:center}.pj-front-score b{font-size:28px;line-height:1}.pj-front-score span{font-size:11.5px;font-weight:700}
.pj-front-score.is-good{background:var(--green-soft);color:var(--green)}.pj-front-score.is-bad{background:var(--red-soft);color:var(--red)}
.pj-front-stats{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:13.5px;color:#3c4f5b}
.pj-flist{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.pj-flist li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 11px;border-radius:11px;background:#f6f8fa;border-left:3px solid #c6d3dc;transition:opacity .2s,background .2s}
.pj-flist li small{display:block;color:var(--muted);font-size:12px;margin-top:2px}.pj-flist li a{color:inherit}.pj-flist li.is-late{border-left-color:var(--red);background:#fdf5f4}.pj-flist li.is-done{border-left-color:var(--green);background:var(--green-soft);opacity:.7}.pj-flist li.is-busy{opacity:.6;pointer-events:none}
.pj-flist select{width:auto;flex:0 0 auto}
.pj-wprog{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.pj-wprog .pj-pbar{width:80px}.pj-qbtns{display:inline-flex;gap:4px}.pj-qbtns .btn{width:auto;margin:0;min-height:30px;height:30px;padding:0 9px}
.pj-why{display:flex;flex-wrap:wrap;justify-content:flex-end}
.pj-accept{display:flex;gap:5px;flex:0 0 auto}.pj-accept input{height:32px;width:130px;border:1px solid var(--line);border-radius:8px;padding:0 8px;font:inherit;font-size:13px;margin:0}.pj-accept .btn{width:auto;margin:0;min-height:32px;height:32px}
/* подрядчики */
.pj-stars{color:#e0a43a;letter-spacing:1px;font-size:14px;white-space:nowrap}.pj-stars i{font-style:normal;color:#dfe5ea}.pj-stars.is-none{color:var(--muted);font-size:12px;letter-spacing:0}
.pj-pstats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:6px 0 12px}.pj-pstats>div{padding:9px 11px;border-radius:12px;background:#f6f8fa}.pj-pstats b{font-size:20px;color:#203845}.pj-pstats small{display:block;color:var(--muted);font-size:12px}.pj-pstats .pj-bad b{color:var(--red)}
.pj-pbtns{display:flex;gap:6px;margin-top:10px}.pj-pbtns form{margin:0}.pj-pbtns .btn{width:auto;margin:0}#pjPartnerEdit{margin-top:10px}#pjPartnerEdit p .btn,#pjPartnerNew p .btn{width:auto}
.pj-partners td{vertical-align:middle}.pj-partners td small{display:block}
@media (max-width:1200px){.pj-scores{grid-template-columns:repeat(2,minmax(0,1fr))}.pj-pstats{grid-template-columns:repeat(3,minmax(0,1fr))}.pj-dadd-wide{grid-template-columns:1fr 1fr}}
@media (max-width:720px){.c-rdy{display:none!important}.pj-scores,.pj-tpl-list{grid-template-columns:1fr}.pj-pstats{grid-template-columns:1fr 1fr}.pj-flist li{flex-direction:column;align-items:stretch}.pj-wprog,.pj-why{justify-content:flex-start}.pj-accept{flex-wrap:wrap}.pj-accept input{flex:1;width:auto}
  .pj-board{grid-auto-columns:82%}.pj-front-head{flex-direction:column;align-items:flex-start}.pj-modal-bg{padding:0}.pj-modal{border-radius:0;max-height:100dvh;min-height:100dvh}.pj-dlvadd,.pj-dadd{grid-template-columns:1fr 1fr}}
.pj-card .muted,.pj-card span,.pj-flist .muted,.pj-col-head em{margin:0}.pj-col,.pj-card{min-width:0}.pj-card{overflow-wrap:anywhere}.pj-card-top b{min-width:0}.pj-cd{flex:0 0 auto}
.pj-tpl-i{height:auto;min-height:0;align-content:start;white-space:normal}.pj-tpl-list{align-items:start}
.pj-card{overflow-wrap:break-word;hyphens:auto}.pj-card-top{flex-wrap:wrap}.pj-card-top b{flex:1 1 150px}.pj-board{grid-auto-columns:minmax(240px,1fr)}
.pj-delete{border-color:#f1c5c0}.pj-delete h3{color:var(--red)}.pj-delete input{min-width:280px}.pj-portfolio form{margin:0}
