/* Generated by script */
@font-face {
  font-family: 'Vazirmatn';
  src: url('../fonts/webfonts/Vazirmatn-FD-Thin.woff2') format('woff2');
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Vazirmatn';
  src: url('../fonts/webfonts/Vazirmatn-FD-ExtraLight.woff2') format('woff2');
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Vazirmatn';
  src: url('../fonts/webfonts/Vazirmatn-FD-Light.woff2') format('woff2');
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Vazirmatn';
  src: url('../fonts/webfonts/Vazirmatn-FD-Regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Vazirmatn';
  src: url('../fonts/webfonts/Vazirmatn-FD-Medium.woff2') format('woff2');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Vazirmatn';
  src: url('../fonts/webfonts/Vazirmatn-FD-SemiBold.woff2') format('woff2');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Vazirmatn';
  src: url('../fonts/webfonts/Vazirmatn-FD-Bold.woff2') format('woff2');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Vazirmatn';
  src: url('../fonts/webfonts/Vazirmatn-FD-ExtraBold.woff2') format('woff2');
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Vazirmatn';
  src: url('../fonts/webfonts/Vazirmatn-FD-Black.woff2') format('woff2');
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}

:root{--bg:#f9fbf5;--panel:#fff;--ink:#293515;--muted:#7a8498;--line:#eff3e7;--accent:#b3ea55;--accent2:#19b99a;--danger:#e95b74;--shadow:0 18px 60px rgba(55,71,28,.08);--radius:24px}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:'Vazirmatn',Tahoma,sans-serif;background:var(--bg);color:var(--ink)}button,input,select,textarea{font:inherit}button{cursor:pointer}.muted{color:var(--muted)}body.modal-open{overflow:hidden}
.toast-stack{position:fixed;z-index:4000;top:22px;left:22px;display:flex;flex-direction:column;gap:10px}.toast{min-width:280px;max-width:420px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:16px;padding:13px 15px;display:flex;align-items:center;gap:11px;transform:translateY(-10px);opacity:0;transition:.25s}.toast.show{transform:none;opacity:1}.toast.error{border-color:#ffd3dc}.toast-icon{width:30px;height:30px;border-radius:10px;background:#eafaf6;color:#0d9d82;display:grid;place-items:center;font-weight:800}.toast.error .toast-icon{background:#fff0f3;color:var(--danger)}
.eyebrow{font-size:12px;font-weight:700;color:var(--accent);letter-spacing:.1px}.eyebrow.light{color:#e2f8bd}.brand-mark{width:48px;height:48px;border-radius:17px;background:linear-gradient(145deg,#bdf066,#9fd443);position:relative;box-shadow:0 10px 24px rgba(179,234,85,.28);overflow:hidden}.brand-mark span{position:absolute;background:#fff;border-radius:8px;opacity:.95}.brand-mark span:nth-child(1){width:8px;height:25px;right:12px;top:12px}.brand-mark span:nth-child(2){width:8px;height:17px;right:22px;top:20px}.brand-mark span:nth-child(3){width:8px;height:11px;right:32px;top:26px}.brand-mark.small{width:40px;height:40px;border-radius:14px}.brand-mark.small span:nth-child(1){right:9px;top:9px}.brand-mark.small span:nth-child(2){right:18px;top:17px}.brand-mark.small span:nth-child(3){right:27px;top:23px}
.login-stage{min-height:100vh;display:grid;grid-template-columns:minmax(430px,48%) 1fr;position:relative;overflow:hidden;background:#fdfefa}.login-card{width:min(520px,calc(100% - 52px));margin:auto;background:rgba(255,255,255,.9);border:1px solid rgba(234,240,223,.9);border-radius:32px;padding:34px 40px 28px;box-shadow:0 30px 90px rgba(45,58,22,.09);position:relative;z-index:2;backdrop-filter:blur(20px)}.brand-lockup{display:flex;align-items:center;gap:13px;margin-bottom:56px}.brand-lockup div:last-child{display:flex;flex-direction:column}.brand-lockup strong{font-size:15px}.brand-lockup small{font-size:11px;color:var(--muted);margin-top:2px}.login-step{display:none}.login-step.active{display:block;animation:stepIn .3s ease}@keyframes stepIn{from{opacity:0;transform:translateX(14px)}to{opacity:1;transform:none}}.login-step h1{font-size:27px;line-height:1.5;margin:8px 0 9px}.login-step p{font-size:13px;line-height:2;color:var(--muted);margin:0 0 28px}.floating-field{display:block;position:relative;margin-bottom:17px}.floating-field input{width:100%;height:66px;border:1px solid var(--line);background:#fdfefa;border-radius:18px;padding:23px 17px 8px;outline:0;direction:ltr;text-align:left;font-size:17px;letter-spacing:1px;transition:.2s}.floating-field span{position:absolute;right:17px;top:20px;color:var(--muted);font-size:13px;transition:.2s;pointer-events:none}.floating-field i{position:absolute;left:17px;top:23px;color:#b6bdca;font-style:normal;font-size:11px}.floating-field input:focus{border-color:#e1f8b9;box-shadow:0 0 0 4px rgba(179,234,85,.08);background:#fff}.floating-field input:focus+span,.floating-field input:not(:placeholder-shown)+span{top:8px;font-size:10px;color:var(--accent)}.login-submit{width:100%;height:58px;border:0;border-radius:18px;background:linear-gradient(135deg,#b6e95d,#9fd443);color:#fff;font-weight:700;display:flex;align-items:center;justify-content:space-between;padding:0 21px;box-shadow:0 14px 30px rgba(179,234,85,.22)}.login-submit b{font-size:20px}.login-submit:disabled{opacity:.72;cursor:wait}.login-foot{border-top:1px solid var(--line);margin-top:36px;padding-top:18px;font-size:11px;color:var(--muted);display:flex;align-items:center;gap:8px}.secure-dot{width:8px;height:8px;background:#23c49f;border-radius:50%;box-shadow:0 0 0 4px rgba(35,196,159,.12)}.login-visual{margin:18px 18px 18px 0;border-radius:34px;background:radial-gradient(circle at 22% 20%,rgba(194,241,113,.7),transparent 25%),linear-gradient(145deg,#323e1d,#202910 65%);position:relative;overflow:hidden;display:flex;align-items:flex-end;padding:72px;color:#fff}.visual-content{position:relative;z-index:3;max-width:520px}.visual-content h2{font-size:38px;line-height:1.7;margin:10px 0 25px;font-weight:700}.mini-live{width:max-content;display:flex;align-items:center;gap:12px;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.07);padding:12px 15px;border-radius:17px;backdrop-filter:blur(10px)}.mini-live div{display:flex;flex-direction:column}.mini-live strong{font-size:12px}.mini-live small{font-size:10px;color:#cad7b4;margin-top:2px}.pulse{width:10px;height:10px;border-radius:50%;background:#36dbb9;box-shadow:0 0 0 7px rgba(54,219,185,.11)}.visual-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(to top,#000,transparent 85%)}.login-orb{position:absolute;border-radius:50%;filter:blur(2px);z-index:0}.orb-one{width:270px;height:270px;background:#f6fdeb;right:43%;top:-80px}.orb-two{width:190px;height:190px;background:#e4fbf6;right:41%;bottom:-60px}.back-link{border:0;background:none;color:var(--muted);font-size:11px;padding:0 0 16px}.otp-boxes{display:flex;gap:8px;margin:26px 0}.otp-boxes input{width:calc((100% - 40px)/6);height:58px;border:1px solid var(--line);border-radius:15px;background:#fdfefa;text-align:center;font-size:20px;outline:0}.otp-boxes input:focus{border-color:#d6f6a0;box-shadow:0 0 0 4px rgba(179,234,85,.08);background:#fff}.debug-otp{margin-top:14px;border:1px dashed #e6f9c6;background:#fbfef6;color:#a3d44f;border-radius:13px;padding:10px 12px;font-size:11px;text-align:center}
.app-shell{display:flex;min-height:100vh}.sidebar{position:fixed;right:0;top:0;bottom:0;width:250px;background:#252e15;color:#fff;padding:22px 16px;display:flex;flex-direction:column;z-index:100}.sidebar-brand{display:flex;align-items:center;gap:11px;padding:0 7px 25px;border-bottom:1px solid rgba(255,255,255,.07)}.sidebar-brand>div:last-child{display:flex;flex-direction:column}.sidebar-brand strong{font-size:14px}.sidebar-brand small{color:#8f98ad;font-size:10px;margin-top:2px}.main-nav{padding:22px 0;display:flex;flex-direction:column;gap:7px}.nav-item{height:49px;border:0;border-radius:14px;background:transparent;color:#c1cea9;display:flex;align-items:center;gap:12px;padding:0 14px;text-align:right;transition:.2s}.nav-item i{width:25px;height:25px;border-radius:8px;display:grid;place-items:center;font-style:normal;font-size:15px}.nav-item:hover{background:rgba(255,255,255,.05);color:#fff}.nav-item.active{color:#fff;background:linear-gradient(90deg,rgba(182,233,93,.3),rgba(182,233,93,.09));box-shadow:inset -3px 0 #bbed64}.nav-item.active i{background:#b1e458}.sidebar-bottom{margin-top:auto;border-top:1px solid rgba(255,255,255,.07);padding:18px 5px 0;display:flex;align-items:center;gap:8px}.account-mini{min-width:0;display:flex;align-items:center;gap:9px;flex:1}.account-mini>div:last-child{min-width:0;display:flex;flex-direction:column}.account-mini strong{font-size:11px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.account-mini small{font-size:9px;color:#8f98ad;direction:ltr;text-align:right}.avatar{width:38px;height:38px;border-radius:13px;background:linear-gradient(145deg,#f6fdeb,#effbdb);color:#b3ea55;display:grid;place-items:center;font-weight:800;flex:0 0 auto}.logout-btn{width:35px;height:35px;border:0;border-radius:11px;background:rgba(255,255,255,.06);color:#c7d4b1}.main-area{margin-right:250px;width:calc(100% - 250px);min-height:100vh}.topbar{height:78px;background:rgba(249,251,245,.9);backdrop-filter:blur(18px);position:sticky;top:0;z-index:70;padding:0 30px;display:flex;align-items:center;border-bottom:1px solid rgba(234,240,223,.7)}.topbar-title{display:flex;flex-direction:column}.topbar-title strong{font-size:14px}.topbar-title small{font-size:10px;color:var(--muted);margin-top:1px}.topbar-actions{margin-right:auto;display:flex;align-items:center;gap:12px}.status-chip{font-size:10px;color:#4b5a68;background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 11px;display:flex;align-items:center;gap:7px}.status-chip i{width:7px;height:7px;border-radius:50%;background:#24c49f}.top-avatar{width:38px;height:38px}.mobile-menu{display:none;border:0;background:#fff;border:1px solid var(--line);border-radius:11px;width:38px;height:38px;margin-left:10px}.workspace{padding:25px 30px 60px;max-width:1600px;margin:auto}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:23px}.page-head h1{font-size:26px;margin:3px 0 2px}.page-head p{margin:0;color:var(--muted);font-size:12px}.date-pill{background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px 13px;font-size:11px;color:#5e687a}.primary-btn,.ghost-btn,.soft-btn{height:43px;border-radius:13px;padding:0 16px;border:0;font-weight:600;font-size:12px;display:inline-flex;align-items:center;justify-content:center;gap:7px}.primary-btn{background:linear-gradient(135deg,#b6e95d,#9dd045);color:#fff;box-shadow:0 9px 20px rgba(179,234,85,.18)}.ghost-btn{background:#f7faf3;color:#5f6878}.soft-btn{background:#fafef2;color:#a3d44f}.primary-btn:disabled{opacity:.7}.btn-loader{width:15px;height:15px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:spin .65s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.metric-card{background:#fff;border:1px solid var(--line);border-radius:21px;padding:20px;min-height:155px;box-shadow:0 8px 28px rgba(52,68,24,.035)}.metric-top{display:flex;align-items:center;justify-content:space-between}.metric-icon{width:37px;height:37px;border-radius:12px;background:#f9fef0;color:#acdf53;display:grid;place-items:center;font-size:16px}.trend-dot{width:8px;height:8px;background:#bceee3;border-radius:50%}.metric-card>strong{font-size:30px;display:block;margin-top:18px}.metric-card h3{font-size:11px;margin:0}.metric-card small{font-size:9px;color:var(--muted)}.skeleton-card,.group-skeleton{background:linear-gradient(90deg,#fff,#f8faf4,#fff);background-size:200% 100%;animation:shimmer 1.2s infinite}.dashboard-panels{display:grid;grid-template-columns:1.5fr 1fr;gap:15px;margin-top:15px}.panel-card{background:#fff;border:1px solid var(--line);border-radius:21px;padding:20px;box-shadow:0 8px 28px rgba(52,68,24,.035)}.accent-panel{display:flex;align-items:center;gap:18px;background:radial-gradient(circle at 90% 15%,rgba(179,234,85,.09),transparent 35%),#fff}.panel-icon{width:58px;height:58px;border-radius:18px;background:#f8fdef;color:#b3ea55;display:grid;place-items:center;font-size:26px}.accent-panel h3{font-size:16px;margin:5px 0}.accent-panel p{font-size:11px;color:var(--muted);margin:0}.section-title{display:flex;align-items:center;justify-content:space-between;gap:15px}.section-title h3{font-size:14px;margin:0}.section-title p{font-size:10px;color:var(--muted);margin:2px 0 0}.quick-actions{display:flex;gap:8px;margin-top:20px}.user-welcome{margin-bottom:15px;background:radial-gradient(circle at 10% 0,rgba(179,234,85,.08),transparent 30%),#fff}.user-welcome h2{margin:6px 0}.user-welcome p{color:var(--muted);font-size:12px}.chip-cloud{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.group-chip{background:#fbfef6;color:#9ccb4c;border:1px solid #f6fdea;border-radius:999px;padding:8px 11px;font-size:11px}.group-chip b{font-size:8px;margin-right:7px;background:#b3ea55;color:#fff;border-radius:999px;padding:2px 6px}
.filter-bar{background:#fff;border:1px solid var(--line);border-radius:18px;padding:10px;display:flex;gap:8px;margin-bottom:13px}.filter-bar select{height:42px;border:1px solid var(--line);background:#fdfefa;border-radius:12px;color:#505a6c;padding:0 12px;outline:0;font-size:11px}.search-box{flex:1;min-width:220px;height:42px;border:1px solid var(--line);background:#fdfefa;border-radius:12px;display:flex;align-items:center;padding:0 12px;gap:8px}.search-box span{color:#9aa3b4}.search-box input{border:0;outline:0;background:transparent;width:100%;font-size:11px;color:var(--ink)}.compact-filter{max-width:660px}.table-card{padding:0;overflow:hidden}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;min-width:880px}.data-table th{text-align:right;background:#fbfcfa;color:#8b94a5;font-size:10px;font-weight:600;padding:13px 17px;border-bottom:1px solid var(--line)}.data-table td{padding:14px 17px;border-bottom:1px solid #f4f7ef;font-size:11px;vertical-align:middle}.data-table tbody tr:hover{background:#fefffd}.user-cell{display:flex;align-items:center;gap:9px}.small-avatar{width:34px;height:34px;border-radius:11px;font-size:12px}.mobile-col{text-align:right}.groups-text{max-width:280px;color:#596375;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.badge,.status{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:9px;font-weight:600}.badge{background:#f5f8f0;color:#606a7b}.badge.admin{background:#f8fdef;color:#a3d44f}.badge.rep{background:#fff8dd;color:#9f7912}.status.active{background:#eafaf6;color:#0b9278}.status.inactive{background:#fff0f3;color:#ce4b65}.row-actions{display:flex;gap:5px;justify-content:flex-end}.icon-btn{width:33px;height:33px;border:1px solid var(--line);background:#fff;border-radius:10px;color:#707a8b}.icon-btn:hover{border-color:#ebfad0;color:#a3d44f;background:#fcfef9}.empty-row,.empty-state{min-height:160px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--muted);gap:4px}.empty-row strong,.empty-state strong{color:#5b6575}.empty-row span,.empty-state span{font-size:10px}.table-loading{height:120px;background:linear-gradient(90deg,#fff,#f8faf4,#fff);background-size:200% 100%;animation:shimmer 1.2s infinite;border-radius:14px}.pagination{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;font-size:10px;color:var(--muted);border-top:1px solid var(--line)}.pagination>div{display:flex;align-items:center;gap:7px}.pagination button{border:1px solid var(--line);background:#fff;border-radius:9px;padding:6px 10px;color:#657083}.pagination button:disabled{opacity:.4}.pagination b{font-weight:600;color:#555f70}
.group-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.group-card{background:#fff;border:1px solid var(--line);border-radius:21px;padding:18px;box-shadow:0 8px 28px rgba(52,68,24,.03);transition:.2s}.group-card:hover{transform:translateY(-2px);box-shadow:0 14px 36px rgba(52,68,24,.06)}.group-card-head{display:flex;justify-content:space-between}.group-symbol{width:40px;height:40px;border-radius:13px;background:#f9fef0;color:#a3d44f;display:grid;place-items:center;font-size:20px}.group-card h3{font-size:15px;margin:15px 0 9px}.group-meta{display:flex;gap:18px;color:var(--muted);font-size:10px}.group-meta b{color:#475164;font-size:13px}.rep-line{margin-top:16px;padding:12px;background:#fdfefa;border-radius:13px}.rep-line small{font-size:9px;color:#929bad}.rep-line p{font-size:10px;color:#5c6678;margin:3px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.group-footer{display:flex;align-items:center;justify-content:space-between;margin-top:15px}.text-btn{border:0;background:transparent;color:#a3d44f;font-size:10px}.group-skeleton{height:220px;border-radius:21px;border:1px solid var(--line)}.full-grid{grid-column:1/-1}
.modal-layer{position:fixed;inset:0;z-index:3000;background:rgba(33,42,18,.48);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:24px;opacity:0;visibility:hidden;transition:.2s}.modal-layer.open{opacity:1;visibility:visible}.modal-card{width:min(620px,100%);max-height:calc(100vh - 48px);background:#fff;border-radius:26px;box-shadow:0 30px 100px rgba(28,36,13,.22);overflow:hidden;transform:translateY(15px) scale(.985);transition:.25s}.modal-layer.open .modal-card{transform:none}.modal-card.wide{width:min(850px,100%)}.modal-head{height:82px;padding:18px 22px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.modal-head h2{font-size:18px;margin:2px 0}.modal-close{width:36px;height:36px;border:0;border-radius:12px;background:#f6f8f2;color:#7c8595;font-size:21px}.modal-body{padding:20px 22px;max-height:calc(100vh - 130px);overflow:auto}.modal-loading{height:260px;border-radius:18px;background:linear-gradient(90deg,#fff,#f8faf4,#fff);background-size:200% 100%;animation:shimmer 1.2s infinite}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.field{display:flex;flex-direction:column;gap:6px}.field.full,.switch-field.full{grid-column:1/-1}.field span,.switch-field>span{font-size:10px;color:#707a8c}.field input{height:46px;border:1px solid var(--line);border-radius:13px;background:#fdfefa;padding:0 12px;outline:0;font-size:12px}.field input:focus{border-color:#ddf6b2;background:#fff;box-shadow:0 0 0 4px rgba(179,234,85,.06)}.switch-field{display:flex;align-items:end;justify-content:space-between;gap:10px}.switch{height:46px;flex:1;border:1px solid var(--line);border-radius:13px;background:#fdfefa;padding:0 12px;display:flex;align-items:center;gap:9px;cursor:pointer}.switch input{display:none}.switch i{width:33px;height:19px;background:#e1e8d5;border-radius:999px;position:relative;transition:.2s}.switch i:after{content:'';width:13px;height:13px;background:#fff;border-radius:50%;position:absolute;top:3px;right:3px;box-shadow:0 1px 4px rgba(0,0,0,.15);transition:.2s}.switch input:checked+i{background:#b3ea55}.switch input:checked+i:after{right:17px}.switch b{font-size:10px;font-weight:500}.subsection{border-top:1px solid var(--line);margin-top:20px;padding-top:18px}.check-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.check-card{border:1px solid var(--line);border-radius:12px;padding:10px 11px;display:flex;align-items:center;gap:8px;cursor:pointer}.check-card input{display:none}.check-card span{flex:1}.check-card b{font-size:10px}.check-card i{width:22px;height:22px;border:1px solid #e7ecdd;border-radius:7px;color:transparent;display:grid;place-items:center;font-size:11px;font-style:normal}.check-card:has(input:checked){border-color:#e8faca;background:#fdfefa}.check-card input:checked~i{background:#b3ea55;border-color:#b3ea55;color:#fff}.modal-actions{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid var(--line);margin:22px -22px -20px;padding:15px 22px;background:#fdfdfc}.mini-search{height:38px;border:1px solid var(--line);border-radius:11px;background:#fdfefa;padding:0 10px;display:flex;align-items:center;gap:7px;min-width:220px}.mini-search input{border:0;background:transparent;outline:0;width:100%;font-size:10px}.member-picker{margin-top:12px;display:grid;grid-template-columns:1fr 1fr;gap:7px;max-height:370px;overflow:auto;padding:2px}.member-pick{display:flex;align-items:center;border:1px solid var(--line);border-radius:14px;padding:8px;gap:8px}.member-pick.selected{border-color:#edfbd4;background:#fdfffa}.member-pick>label{display:flex;align-items:center;gap:8px;flex:1;min-width:0;cursor:pointer}.member-check{display:none}.member-copy{display:flex;flex-direction:column;min-width:0}.member-copy b{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.member-copy small{font-size:9px;color:#9aa3b4;text-align:right}.rep-toggle{border:0;background:#f6f8f2;color:#a2a9b6;border-radius:9px;padding:6px 8px;font-size:9px;white-space:nowrap}.rep-toggle.on{background:#fff5cf;color:#997115}.my-group-row{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid var(--line)}.my-group-row:last-child{border-bottom:0}.my-group-row>div:nth-child(2){flex:1;display:flex;flex-direction:column}.my-group-row strong{font-size:12px}.my-group-row small{font-size:9px;color:var(--muted)}
.page-skeleton{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.page-skeleton div{height:170px;border-radius:20px;background:linear-gradient(90deg,#fff,#f6f9f1,#fff);background-size:200% 100%;animation:shimmer 1.15s infinite}.page-skeleton div:first-child{grid-column:1/-1;height:70px}@keyframes shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}.sidebar-backdrop{display:none}
@media(max-width:1180px){.metric-grid{grid-template-columns:repeat(2,1fr)}.group-grid{grid-template-columns:repeat(2,1fr)}.login-visual{padding:45px}.visual-content h2{font-size:31px}.member-picker{grid-template-columns:1fr}}
@media(max-width:980px){.sidebar{transform:translateX(105%);transition:.25s}.sidebar.open{transform:none}.main-area{margin-right:0;width:100%}.mobile-menu{display:grid;place-items:center}.sidebar-backdrop{position:fixed;inset:0;background:rgba(22,29,11,.42);z-index:90}.sidebar-backdrop.open{display:block}.login-stage{grid-template-columns:1fr}.login-visual{display:none}.login-card{margin:auto}.orb-one{right:auto;left:-70px}.orb-two{right:-70px}}
@media(max-width:720px){.workspace{padding:18px 14px 45px}.topbar{padding:0 14px;height:70px}.status-chip{display:none}.page-head{align-items:flex-start;flex-direction:column}.page-head .primary-btn{width:100%}.metric-grid{grid-template-columns:1fr 1fr;gap:9px}.metric-card{min-height:140px;padding:15px}.metric-card>strong{font-size:25px}.dashboard-panels{grid-template-columns:1fr}.filter-bar{flex-wrap:wrap}.search-box{flex-basis:100%}.filter-bar select{flex:1}.group-grid{grid-template-columns:1fr}.modal-layer{padding:10px}.modal-card{max-height:calc(100vh - 20px);border-radius:20px}.modal-body{max-height:calc(100vh - 102px)}.form-grid,.check-grid{grid-template-columns:1fr}.field.full,.switch-field.full{grid-column:auto}.section-title{align-items:flex-start;flex-direction:column}.mini-search{width:100%}.member-picker{grid-template-columns:1fr}.toast-stack{left:12px;right:12px;top:12px}.toast{min-width:0;max-width:none}.page-skeleton{grid-template-columns:1fr}}
@media(max-width:520px){.login-card{width:calc(100% - 20px);padding:26px 20px 22px;border-radius:24px}.brand-lockup{margin-bottom:42px}.login-step h1{font-size:22px}.otp-boxes{gap:5px}.otp-boxes input{height:52px;border-radius:12px}.metric-grid{grid-template-columns:1fr}.quick-actions{flex-direction:column}.topbar-title small{display:none}}

/* ===== Stage 3: Meetings & Calendar ===== */
#modalCard.wide{width:min(1080px,100%)}
.field textarea,.field select{border:1px solid var(--line);border-radius:13px;background:#fdfefa;padding:11px 12px;outline:0;font:inherit;font-size:12px;resize:vertical;color:var(--text)}
.field textarea:focus,.field select:focus{border-color:#ddf6b2;background:#fff;box-shadow:0 0 0 4px rgba(179,234,85,.06)}
.field span em{font-style:normal;color:#a5adbb;font-size:9px;margin-right:4px}.field-hint{font-size:9px;color:#b0dc65;min-height:15px}
.meeting-filter-bar{gap:9px}.meeting-filter-bar .search-box{min-width:260px}.meeting-list{display:flex;flex-direction:column;gap:10px}.meeting-list-skeleton{height:132px;border-radius:20px;background:linear-gradient(90deg,#fff,#f6f9f1,#fff);background-size:200% 100%;animation:shimmer 1.15s infinite}
.meeting-row-card{background:#fff;border:1px solid var(--line);border-radius:20px;display:grid;grid-template-columns:125px minmax(0,1fr) 70px auto;align-items:stretch;min-height:132px;overflow:hidden;box-shadow:0 8px 26px rgba(60,74,36,.035);transition:.18s}.meeting-row-card:hover{transform:translateY(-1px);box-shadow:0 13px 32px rgba(60,74,36,.06);border-color:#edf7dc}.meeting-date-block{background:linear-gradient(145deg,#fcfef8,#f9fbf5);border-left:1px solid var(--line);padding:18px 15px;display:flex;flex-direction:column;justify-content:center;text-align:center}.meeting-date-block b{font-size:20px;color:#9acd42}.meeting-date-block span{font-size:9px;line-height:1.8;color:#81899a;margin-top:6px}.meeting-main{padding:16px 18px;min-width:0}.meeting-main h3{font-size:15px;margin:7px 0 4px}.meeting-main>p{font-size:10px;color:#8b94a4;margin:0 0 10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.meeting-badges{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.meeting-state,.mini-privacy,.mini-feature{font-size:8px;padding:4px 7px;border-radius:999px;font-weight:600}.meeting-state.draft{background:#f3f6ef;color:#777f8e}.meeting-state.scheduled{background:#f8fdf0;color:#9bc553}.meeting-state.live{background:#e8fbf2;color:#22825a}.meeting-state.ended{background:#f5f7f1;color:#7c8492}.meeting-state.cancelled{background:#fff0f0;color:#b14e52}.mini-privacy.private{background:#f9fef1;color:#89ad4a}.mini-privacy.public{background:#f8fdee;color:#79a233}.mini-feature{background:#fff7e4;color:#98722d}.meeting-inline-meta{display:flex;gap:14px;flex-wrap:wrap;align-items:center;font-size:9px;color:#8e96a6}.meeting-inline-meta b{color:#555f70}.meeting-groups{max-width:360px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.meeting-time-span{align-self:center;text-align:center;border-right:1px solid var(--line);padding:0 14px}.meeting-time-span small{display:block;font-size:8px;color:#a1a8b5}.meeting-time-span strong{font-size:13px}.meeting-row-actions{display:flex;align-items:center;gap:5px;padding:0 13px}.soft-icon{width:34px;height:34px;border:1px solid var(--line);border-radius:11px;background:#fdfefa;color:#697386;cursor:pointer}.soft-icon:hover{background:#f9fef0;color:#a2d54a}.soft-icon.danger:hover{background:#fff0f0;color:#b45055;border-color:#f3d3d5}
.meeting-scope-tabs{display:inline-flex;background:#f2f6eb;border-radius:13px;padding:4px;margin-bottom:12px}.meeting-scope-tabs button{border:0;background:transparent;padding:8px 15px;border-radius:10px;color:#7c8596;font-size:10px}.meeting-scope-tabs button.active{background:#fff;color:#9bcd44;box-shadow:0 3px 12px rgba(63,77,40,.08)}.user-meeting-search{max-width:360px;margin-bottom:12px}
.meeting-form-summary{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#fbfef7,#fbfcf8);border:1px solid #f6fdeb;border-radius:17px;padding:12px 14px;margin-bottom:14px}.meeting-form-summary>div:first-child{display:flex;flex-direction:column}.meeting-form-summary strong{font-size:13px}.participant-counter{text-align:center;min-width:95px;border-right:1px solid #f0f8e2}.participant-counter b{display:block;font-size:20px;color:#a6d84f}.participant-counter small{font-size:8px;color:#8f97a7}.meeting-form-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;background:#f5f8f0;border-radius:15px;padding:4px;margin-bottom:18px;position:sticky;top:-20px;z-index:5}.meeting-form-tabs button{border:0;background:transparent;border-radius:11px;padding:9px 10px;color:#81899a;font-size:10px;display:flex;align-items:center;justify-content:center;gap:7px}.meeting-form-tabs button span{width:20px;height:20px;border-radius:7px;background:#e9eee0;display:grid;place-items:center;font-size:9px}.meeting-form-tabs button.active{background:#fff;color:#9dd144;box-shadow:0 4px 14px rgba(60,74,36,.07)}.meeting-form-tabs button.active span{background:#aee255;color:#fff}.meeting-form-step{display:none}.meeting-form-step.active{display:block;animation:fadeIn .18s ease}@keyframes fadeIn{from{opacity:.35;transform:translateY(3px)}to{opacity:1;transform:none}}
.meeting-primary-switches,.advanced-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-top:16px}.feature-switch{border:1px solid var(--line);background:#fdfefa;border-radius:15px;padding:12px;display:flex;align-items:center;gap:10px;cursor:pointer;min-height:62px}.feature-switch:hover{border-color:#e9f5d4;background:#fff}.feature-switch input{display:none}.feature-switch>i{width:34px;height:20px;border-radius:999px;background:#e1e8d6;position:relative;flex:none;transition:.2s}.feature-switch>i:after{content:'';position:absolute;width:14px;height:14px;background:#fff;border-radius:50%;top:3px;right:3px;box-shadow:0 1px 4px rgba(0,0,0,.14);transition:.2s}.feature-switch input:checked+i{background:#aee255}.feature-switch input:checked+i:after{right:17px}.feature-switch>span{display:flex;flex-direction:column}.feature-switch b{font-size:10px}.feature-switch small{font-size:8px;color:#969ead;line-height:1.6}.audience-note{display:flex;gap:11px;align-items:flex-start;background:#fbfef7;border:1px solid #f6fdea;border-radius:15px;padding:12px 14px;margin-bottom:18px}.audience-note>span{width:32px;height:32px;border-radius:11px;background:#b1e458;color:#fff;display:grid;place-items:center}.audience-note div{display:flex;flex-direction:column}.audience-note b{font-size:10px}.audience-note small{font-size:9px;color:#858e9f;line-height:1.8}.audience-block+.audience-block{border-top:1px solid var(--line);margin-top:19px;padding-top:18px}.meeting-group-choices{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:11px;max-height:340px;overflow:auto;padding:2px}.meeting-group-choice{border:1px solid var(--line);border-radius:15px;background:#fff;padding:9px}.meeting-group-choice.selected{border-color:#edfbd4;background:#fdfffa}.meeting-group-choice>label{display:flex;align-items:center;gap:8px;cursor:pointer}.meeting-group-check{display:none}.group-choice-copy{display:flex;flex-direction:column;flex:1}.group-choice-copy b{font-size:10px}.group-choice-copy small{font-size:8px;color:#959eae}.meeting-group-choice>label>i{width:22px;height:22px;border:1px solid #e7ecdd;border-radius:7px;display:grid;place-items:center;font-style:normal;color:transparent}.meeting-group-choice.selected>label>i{background:#aee255;border-color:#aee255;color:#fff}.group-choice-tools{display:flex;gap:6px;margin-top:8px;padding-top:8px;border-top:1px dashed #eef2e7}.group-choice-tools select{flex:1;min-width:0;border:1px solid var(--line);border-radius:9px;background:#fff;height:34px;padding:0 7px;font-size:9px}.group-exclusions{border:0;border-radius:9px;background:#f6f9f1;color:#697386;padding:0 9px;font-size:9px}.group-exclusions b{background:#fff;border-radius:6px;padding:2px 5px;margin-right:4px}.group-choice-tools :disabled{opacity:.45;cursor:not-allowed}.direct-user-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:11px;max-height:330px;overflow:auto;padding:2px}.direct-user-choice{border:1px solid var(--line);border-radius:13px;padding:8px;display:flex;align-items:center;gap:8px;cursor:pointer}.direct-user-choice input{display:none}.direct-user-choice>span:nth-of-type(2){display:flex;flex-direction:column;flex:1;min-width:0}.direct-user-choice b{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.direct-user-choice small{font-size:8px;color:#9aa2b0}.direct-user-choice>i{width:20px;height:20px;border:1px solid #e7ecdd;border-radius:6px;display:grid;place-items:center;color:transparent;font-style:normal}.direct-user-choice.selected{border-color:#ebfad0;background:#fdfffa}.direct-user-choice.selected>i{background:#aee255;color:#fff;border-color:#aee255}.settings-fields{border-top:1px solid var(--line);margin-top:18px;padding-top:18px}.meeting-modal-actions>div{display:flex;gap:8px}
.exclusion-overlay{position:absolute;inset:0;background:rgba(249,251,245,.88);backdrop-filter:blur(5px);z-index:30;border-radius:24px;display:grid;place-items:center;padding:22px}.exclusion-panel{width:min(660px,100%);max-height:90%;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 20px 60px rgba(58,71,35,.16);display:flex;flex-direction:column;overflow:hidden}.exclusion-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--line)}.exclusion-head h3{margin:2px 0;font-size:15px}.exclusion-head button{width:34px;height:34px;border:0;border-radius:10px;background:#f6f9f1;font-size:18px}.exclusion-help{font-size:9px;color:#7d8798;padding:10px 18px;margin:0;background:#fdfefa}.exclusion-list{overflow:auto;padding:10px 18px;display:grid;grid-template-columns:repeat(2,1fr);gap:7px}.exclusion-member{border:1px solid var(--line);border-radius:12px;padding:8px;display:flex;align-items:center;gap:8px;cursor:pointer}.exclusion-member input{display:none}.exclusion-member>span:nth-of-type(2){display:flex;flex-direction:column;flex:1}.exclusion-member b{font-size:9px}.exclusion-member small{font-size:8px;color:#9ba3b1}.exclusion-member>i{width:20px;height:20px;border:1px solid #e7ecdd;border-radius:6px;color:transparent;font-style:normal;display:grid;place-items:center}.exclusion-member:has(input:checked){background:#fdfffa;border-color:#ebfad2}.exclusion-member input:checked~i{background:#aee255;color:#fff;border-color:#aee255}.exclusion-actions{display:flex;justify-content:flex-end;gap:7px;padding:12px 18px;border-top:1px solid var(--line)}
.meeting-detail-hero{background:linear-gradient(135deg,#fbfef7,#fbfcf8);border:1px solid #f6fdea;border-radius:18px;padding:18px;display:flex;justify-content:space-between;gap:20px}.meeting-detail-hero h2{font-size:19px;margin:8px 0 4px}.meeting-detail-hero p{font-size:10px;color:#858e9f;margin:0;max-width:680px;line-height:1.8}.detail-time{text-align:center;min-width:90px;align-self:center}.detail-time strong{display:block;font-size:24px;color:#a2d549}.detail-time span{font-size:9px;color:#8c95a5}.detail-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}.detail-facts>div{border:1px solid var(--line);border-radius:13px;padding:10px;display:flex;flex-direction:column}.detail-facts small{font-size:8px;color:#9aa2b1}.detail-facts b{font-size:10px;margin-top:3px}.detail-section{border-top:1px solid var(--line);margin-top:18px;padding-top:16px}.detail-group-cloud{display:flex;gap:7px;flex-wrap:wrap}.detail-group-chip{background:#fbfef5;color:#9bc74e;border-radius:12px;padding:8px 10px;font-size:9px;display:flex;flex-direction:column}.detail-group-chip b{font-size:7px;color:#b6ce8c;margin-top:2px}.detail-people{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;max-height:300px;overflow:auto}.detail-person{border:1px solid var(--line);border-radius:12px;padding:8px;display:flex;align-items:center;gap:8px}.detail-person>div{display:flex;flex-direction:column;flex:1;min-width:0}.detail-person b{font-size:9px}.detail-person small{font-size:8px;color:#9aa2b1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.calendar-shell{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:0 8px 26px rgba(60,74,36,.035)}.calendar-toolbar{min-height:76px;padding:13px 16px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid var(--line);gap:15px}.calendar-nav{display:flex;gap:6px}.calendar-nav button{height:34px;border:1px solid var(--line);background:#fdfefa;border-radius:10px;padding:0 10px;color:#667082}.calendar-nav button:first-child,.calendar-nav button:last-child{width:34px;font-size:19px;padding:0}.calendar-month-title{text-align:center;display:flex;flex-direction:column}.calendar-month-title strong{font-size:15px}.calendar-month-title small{font-size:8px;color:#98a0ae;margin-top:3px}.calendar-legend{justify-self:end;display:flex;gap:10px;font-size:8px;color:#7f8999}.calendar-legend span{display:flex;align-items:center;gap:5px}.calendar-legend i{width:8px;height:8px;border-radius:3px}.lg-private{background:#acd85f}.lg-public{background:#97c548}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);background:#fdfefa;border-bottom:1px solid var(--line)}.calendar-weekdays span{text-align:center;padding:9px 4px;font-size:8px;color:#8992a1;border-left:1px solid #f0f1f4}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);position:relative}.calendar-day{min-height:128px;border-left:1px solid #f2f5ed;border-bottom:1px solid #f2f5ed;padding:7px;background:#fff}.calendar-day.outside{background:#fbfcfa}.calendar-day.outside .calendar-day-head b{opacity:.35}.calendar-day.today{background:#fefffc;box-shadow:inset 0 0 0 1px #edfbd5}.calendar-day-head{display:flex;align-items:center;justify-content:space-between}.calendar-day-head>b{width:25px;height:25px;border-radius:8px;display:grid;place-items:center;font-size:9px}.calendar-day.today .calendar-day-head>b{background:#ade055;color:#fff}.calendar-day-add{width:22px;height:22px;border:0;border-radius:7px;background:transparent;color:#a4aaba;opacity:0}.calendar-day:hover .calendar-day-add{opacity:1;background:#f9fef0;color:#a8d854}.calendar-events{display:flex;flex-direction:column;gap:4px;margin-top:5px}.calendar-event{border:0;border-right:3px solid;border-radius:8px;background:#fbfef6;padding:5px 6px;text-align:right;display:flex;align-items:center;gap:5px;min-width:0}.calendar-event.private{border-color:#aad65f}.calendar-event.public{border-color:#95c443;background:#fafef2}.calendar-event b{font-size:7px;flex:none}.calendar-event span{font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-more{border:0;background:transparent;color:#a5cd61;font-size:7px;text-align:right;padding:2px}.calendar-loading{grid-column:1/-1;height:520px;background:linear-gradient(90deg,#fff,#f7f9f3,#fff);background-size:200% 100%;animation:shimmer 1.15s infinite}
.dashboard-meeting-metrics{margin-bottom:14px}.dashboard-meeting-list{display:flex;flex-direction:column}.dashboard-meeting-item{border:0;border-bottom:1px solid var(--line);background:transparent;padding:9px 0;display:grid;grid-template-columns:115px 1fr auto;align-items:center;text-align:right;gap:10px}.dashboard-meeting-item:last-child{border-bottom:0}.dash-date{display:flex;flex-direction:column}.dash-date b{font-size:11px;color:#a4d64d}.dash-date small{font-size:8px;color:#9ba3b2}.dashboard-meeting-item>span:nth-child(2){display:flex;flex-direction:column}.dashboard-meeting-item strong{font-size:10px}.dashboard-meeting-item small{font-size:8px;color:#999fad}.dashboard-meeting-item i{font-style:normal;color:#9ca4b3}.vertical-actions{flex-direction:column}.vertical-actions .soft-btn{width:100%;justify-content:flex-start}
@media(max-width:950px){.meeting-row-card{grid-template-columns:105px 1fr auto}.meeting-time-span{display:none}.direct-user-grid{grid-template-columns:repeat(2,1fr)}.calendar-day{min-height:112px}.calendar-event b{display:none}.detail-facts{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){#modalCard.wide{width:100%}.meeting-row-card{grid-template-columns:1fr;position:relative}.meeting-date-block{border-left:0;border-bottom:1px solid var(--line);flex-direction:row;gap:8px;align-items:center;padding:9px 13px;justify-content:flex-start;text-align:right}.meeting-date-block b{font-size:14px}.meeting-date-block span{margin:0}.meeting-row-actions{position:absolute;top:7px;left:7px;padding:0}.meeting-main{padding:13px}.meeting-group-choices,.direct-user-grid,.advanced-grid,.meeting-primary-switches,.exclusion-list,.detail-people{grid-template-columns:1fr}.meeting-form-tabs{top:-20px}.meeting-form-tabs button{font-size:9px;padding:8px 4px}.meeting-form-tabs button span{display:none}.meeting-form-summary{align-items:flex-start}.participant-counter{min-width:75px}.meeting-modal-actions{flex-direction:column}.meeting-modal-actions>div{width:100%;display:grid;grid-template-columns:1fr 1fr}.calendar-toolbar{grid-template-columns:1fr auto}.calendar-legend{display:none}.calendar-weekdays span{font-size:7px}.calendar-day{min-height:92px;padding:4px}.calendar-day-add{display:none}.calendar-event{padding:4px}.calendar-event span{font-size:7px}.calendar-grid,.calendar-weekdays{min-width:700px}.calendar-shell{overflow:auto}.calendar-toolbar{min-width:700px}.detail-facts{grid-template-columns:1fr 1fr}.meeting-detail-hero{flex-direction:column}.detail-time{text-align:right;align-self:flex-start}.dashboard-meeting-item{grid-template-columns:85px 1fr auto}}

/* ===== Stage 4: live meetings ===== */
.live-layout{display:grid;grid-template-columns:minmax(280px,340px) 1fr;gap:18px;align-items:start}.live-session-list-panel,.live-monitor-pane{background:#fff;border:1px solid rgba(41,55,18,.08);border-radius:26px;box-shadow:0 18px 50px rgba(56,69,33,.06)}.live-session-list-panel{padding:16px;position:sticky;top:18px}.panel-title{display:flex;align-items:center;justify-content:space-between;padding:5px 4px 14px}.panel-title strong{display:block;font-size:14px}.panel-title small{color:#8a93a5;font-size:11px}.live-pulse-dot{width:10px;height:10px;border-radius:50%;background:#25b876;box-shadow:0 0 0 7px rgba(37,184,118,.1);animation:livePulse 1.8s infinite}.live-session-list{display:grid;gap:8px}.live-session-card{width:100%;border:1px solid #f2f6ec;background:#fbfcfa;border-radius:18px;padding:13px;text-align:right;display:flex;gap:10px;align-items:center;cursor:pointer;transition:.2s}.live-session-card:hover,.live-session-card.active{background:#fff;border-color:#ecfbd3;box-shadow:0 8px 25px rgba(135,185,48,.09);transform:translateY(-1px)}.live-session-card .live-indicator{width:9px;height:9px;border-radius:50%;background:#c5cad3;flex:none}.live-session-card.running .live-indicator{background:#20b978;box-shadow:0 0 0 5px rgba(32,185,120,.1)}.live-session-card>span:nth-child(2){min-width:0;flex:1}.live-session-card b{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.live-session-card small{display:block;color:#9098a7;font-size:10px;margin-top:4px}.live-session-card em{font-style:normal;font-size:10px;border-radius:999px;padding:5px 7px;background:#f4f8ed;color:#657083}.live-session-card.running em{background:#e9f9f2;color:#14875a}.live-monitor-pane{min-height:520px;overflow:hidden}.live-empty{min-height:520px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:40px}.live-empty strong{font-size:18px;margin-top:18px}.live-empty p{color:#8a93a5;max-width:350px}.live-radar{position:relative;width:82px;height:82px;border:1px solid #e8efdd;border-radius:50%;display:block}.live-radar i{position:absolute;inset:12px;border:1px solid #ebf0e2;border-radius:50%}.live-radar i:nth-child(2){inset:27px}.live-radar b{position:absolute;width:11px;height:11px;left:36px;top:36px;background:#24b778;border-radius:50%;box-shadow:0 0 0 7px rgba(36,183,120,.12)}.live-monitor-head{padding:24px 25px;background:linear-gradient(135deg,#2e3c16,#455725);color:#fff;display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.live-monitor-head .eyebrow{color:#bfd599}.live-monitor-head h2{font-size:21px;margin:5px 0 6px}.live-monitor-head p{font-size:11px;color:#cfddb8;margin:0}.live-monitor-actions{display:flex;gap:8px}.live-monitor-actions button{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.09);color:#fff;border-radius:12px;padding:9px 12px;cursor:pointer}.live-monitor-actions .danger-live{background:rgba(239,83,80,.14);border-color:rgba(239,83,80,.28)}.live-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:16px 20px;background:#fafcf7;border-bottom:1px solid #f2f6ec}.live-stat{background:#fff;border:1px solid #f2f6ec;border-radius:16px;padding:12px}.live-stat small{display:block;color:#9098a7;font-size:10px}.live-stat b{display:block;font-size:17px;margin-top:4px}.live-monitor-body{padding:20px}.live-section-head{display:flex;justify-content:space-between;align-items:center;margin:5px 0 12px}.live-section-head h3{font-size:14px;margin:0}.live-section-head small{color:#8f98a8}.live-groups{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:21px}.live-group{display:flex;gap:8px;align-items:center;border:1px solid #f2f6ec;border-radius:13px;padding:8px 10px;background:#fbfcfa}.live-group i{width:7px;height:7px;border-radius:50%;background:#c7ccd5}.live-group.present i{background:#21b978}.live-group b{font-size:11px}.live-group small{font-size:9px;color:#9098a7}.live-people{display:grid;gap:7px}.live-person{display:grid;grid-template-columns:36px minmax(150px,1fr) 110px 110px 90px;gap:10px;align-items:center;border:1px solid #f2f6ec;border-radius:15px;padding:9px 11px}.live-person.online{border-color:#d5f1e4;background:#fbfffd}.presence-dot{width:10px;height:10px;border-radius:50%;background:#c7cbd3;margin:auto}.live-person.online .presence-dot{background:#20b978;box-shadow:0 0 0 5px rgba(32,185,120,.1)}.live-person .person-copy b{display:block;font-size:12px}.live-person .person-copy small{display:block;color:#949ba8;font-size:9px}.live-person .live-cell small{display:block;color:#9da3af;font-size:9px}.live-person .live-cell b{font-size:11px}.live-person .online-label{font-size:10px;border-radius:999px;padding:5px 7px;background:#f3f6ef;color:#7b8493;text-align:center}.live-person.online .online-label{background:#e9f9f2;color:#15865a}.meeting-join-btn{border:0;border-radius:11px;background:#39491c;color:#fff;padding:8px 11px;font-size:11px;cursor:pointer;white-space:nowrap}.meeting-monitor-btn{border:1px solid #e8efdb;border-radius:11px;background:#fff;color:#4a5a2f;padding:7px 9px;font-size:11px;cursor:pointer}.meeting-otp-card{text-align:center;padding:8px 2px}.meeting-otp-card .otp-boxes{margin:24px auto 15px;justify-content:center}.meeting-otp-card p{color:#7e8796;font-size:12px}.meeting-otp-actions{display:flex;gap:8px;justify-content:center;margin-top:18px}.meeting-live-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:14px}@keyframes livePulse{0%,100%{box-shadow:0 0 0 6px rgba(37,184,118,.1)}50%{box-shadow:0 0 0 12px rgba(37,184,118,0)}}
@media(max-width:980px){.live-layout{grid-template-columns:1fr}.live-session-list-panel{position:static}.live-stats{grid-template-columns:repeat(2,1fr)}.live-person{grid-template-columns:28px 1fr 80px}.live-person .live-cell:nth-of-type(2),.live-person .live-cell:nth-of-type(3){display:none}}
@media(max-width:620px){.live-monitor-head{flex-direction:column}.live-stats{grid-template-columns:1fr 1fr}.live-person{grid-template-columns:24px 1fr 70px}.live-monitor-body{padding:12px}.live-monitor-head{padding:19px}.live-layout{gap:12px}}

/* ===== Stage 5: attendance & reports ===== */
.attendance-page-head .page-actions{display:flex;gap:8px}.attendance-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.attendance-metric{position:relative;overflow:hidden;background:#fff;border:1px solid #f0f4e9;border-radius:22px;padding:17px 18px;box-shadow:0 12px 35px rgba(56,71,29,.045)}.attendance-metric:after{content:"";position:absolute;width:74px;height:74px;border-radius:50%;left:-24px;bottom:-34px;background:#f9fef0}.attendance-metric small{display:block;color:#8c95a5;font-size:10px}.attendance-metric b{display:block;font-size:24px;margin:5px 0 1px}.attendance-metric span{color:#9aa2b0;font-size:9px}.attendance-metric.present:after{background:#e9f9f2}.attendance-metric.partial:after{background:#fff5dd}.attendance-metric.absent:after{background:#fff0f2}.attendance-panel,.attendance-group-panel{background:#fff;border:1px solid #f0f4e9;border-radius:25px;box-shadow:0 18px 50px rgba(55,71,28,.05);overflow:hidden}.attendance-toolbar{padding:14px;display:grid;grid-template-columns:minmax(230px,1.5fr) repeat(4,minmax(130px,.7fr));gap:8px;border-bottom:1px solid #f2f6ec}.attendance-toolbar select,.attendance-subtoolbar select,.attendance-subtoolbar input{border:1px solid #ebf1e2;background:#fbfcfa;border-radius:12px;padding:9px 10px;font-family:inherit;color:#495730;outline:none}.attendance-subtoolbar{padding:9px 14px;background:#fbfcfa;display:flex;gap:10px;align-items:center;flex-wrap:wrap;border-bottom:1px solid #f2f6ec}.attendance-subtoolbar label{display:flex;align-items:center;gap:6px;font-size:9px;color:#8d95a3}.attendance-subtoolbar input,.attendance-subtoolbar select{padding:7px 8px;font-size:10px}.attendance-rule-hint{margin-right:auto;display:flex;gap:8px;flex-wrap:wrap}.attendance-rule-hint span{font-size:9px;color:#818b9b;background:#fff;border:1px solid #eef2e8;border-radius:999px;padding:5px 8px}.attendance-rule-hint b{color:#677a45}.attendance-table-wrap{overflow:auto}.attendance-table{min-width:1180px}.attendance-table td{vertical-align:middle}.attendance-person{display:flex;gap:9px;align-items:center;min-width:170px}.attendance-person>div{display:flex;flex-direction:column}.attendance-person strong{font-size:11px}.attendance-person small{font-size:8px;color:#929aa8}.attendance-meeting-cell{display:flex;flex-direction:column;min-width:180px}.attendance-meeting-cell strong{font-size:10px;max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.attendance-meeting-cell small{font-size:8px;color:#979eaa}.attendance-status{display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:5px 8px;font-size:9px;font-weight:700;white-space:nowrap}.attendance-status.present{background:#eaf9f2;color:#16875c}.attendance-status.partial{background:#fff5dd;color:#a66f09}.attendance-status.absent{background:#fff0f2;color:#c74e61}.attendance-status i{font-style:normal;opacity:.7}.duration-value{display:block;font-size:10px;white-space:nowrap}.attendance-table td>small{display:block;color:#9aa1ad;font-size:8px}.attendance-percent{min-width:80px}.attendance-percent b{font-size:10px}.attendance-percent span{display:block;height:5px;background:#f2f5ec;border-radius:99px;margin-top:5px;overflow:hidden}.attendance-percent i{display:block;height:100%;background:linear-gradient(90deg,#b4e165,#39b79b);border-radius:99px}.timing-flag{font-size:9px;white-space:nowrap}.timing-flag.warn{color:#c25b39;font-weight:700}.timing-flag.ok{color:#87909e}.attendance-row.online td:first-child{box-shadow:inset -3px 0 #20b978}.attendance-group-panel{margin-top:16px;padding:18px}.attendance-groups-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.attendance-group-card{display:grid;grid-template-columns:36px minmax(0,1fr);gap:10px;align-items:center;padding:13px;border:1px solid #f0f4e8;border-radius:17px;background:#fcfdfb}.attendance-group-card.present{border-color:#d9f0e5;background:#fbfffd}.group-presence-icon{width:34px;height:34px;border-radius:12px;background:#f2f5ed;color:#9098a5;display:grid;place-items:center;font-weight:800}.attendance-group-card.present .group-presence-icon{background:#e5f8ef;color:#14875a}.attendance-group-card strong{font-size:11px;display:block}.attendance-group-card small{font-size:8px;color:#949ca9}.group-presence-meta{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #f2f5ec;padding-top:9px;gap:5px}.group-presence-meta span{font-size:8px;color:#8c94a2}.group-presence-meta b{color:#4c586d}.attendance-detail-hero{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:4px 0 18px;border-bottom:1px solid #f2f6ec}.attendance-detail-hero>div:first-child{display:flex;align-items:center;gap:11px}.attendance-detail-hero h3{margin:0;font-size:16px}.attendance-detail-hero p{margin:3px 0 0;color:#8e97a6;font-size:10px}.attendance-detail-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:14px 0}.attendance-detail-stats>div{border:1px solid #f2f5ec;border-radius:14px;padding:10px;background:#fbfcfa}.attendance-detail-stats small{display:block;color:#9099a8;font-size:8px}.attendance-detail-stats b{font-size:11px;display:block;margin-top:4px}.attendance-detail-sections{display:grid;gap:14px}.attendance-session-list{display:grid;gap:7px}.attendance-session{display:grid;grid-template-columns:30px 1.2fr 1.2fr .7fr auto 30px;gap:8px;align-items:center;border:1px solid #eff3e8;border-radius:14px;padding:9px 10px}.attendance-session.manual{background:#fffaf0;border-color:#f4e7bd}.session-index{width:26px;height:26px;border-radius:9px;background:#f4f7ef;display:grid;place-items:center;font-size:9px}.attendance-session small{display:block;font-size:8px;color:#9aa1ad}.attendance-session b{font-size:9px}.source-badge{font-size:8px;padding:4px 7px;border-radius:999px;background:#f4f7f0;color:#768092}.attendance-session.manual .source-badge{background:#fff0ca;color:#9b6c12}.raw-events{border:1px solid #f2f5ec;border-radius:15px;background:#fbfcfa}.raw-events summary{cursor:pointer;padding:11px 13px;font-size:10px;font-weight:700}.raw-events summary b{float:left;background:#f3f6ed;border-radius:99px;padding:2px 6px}.raw-event-list{padding:0 13px 12px;display:grid;gap:6px}.raw-event{display:grid;grid-template-columns:15px 1fr auto;align-items:center;gap:7px;padding:6px 0;border-top:1px dashed #edf2e5}.event-dot{width:7px;height:7px;border-radius:50%;background:#afdc60}.raw-event b{display:block;font-size:9px}.raw-event small{font-size:8px;color:#959eab}.raw-event code{font-size:7px;color:#9299a4;direction:ltr}.attendance-correction{border-top:1px solid #f2f5ec;padding-top:12px}.attendance-correction form{display:flex;align-items:end;gap:8px;background:#fbfcfa;border:1px solid #f2f5ec;border-radius:15px;padding:10px;margin-top:8px}.attendance-correction .field{margin:0;min-width:150px}.attendance-correction .field.grow{flex:1}.attendance-correction .field input,.attendance-correction .field select{padding:8px 9px}.rules-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.rules-note{margin-top:12px;background:#f9fbf6;border:1px solid #eff3e8;border-radius:14px;padding:10px;color:#7c8594;font-size:9px;line-height:1.9}
@media(max-width:1050px){.attendance-toolbar{grid-template-columns:1fr 1fr 1fr}.attendance-metrics{grid-template-columns:1fr 1fr}.attendance-groups-grid{grid-template-columns:1fr 1fr}.attendance-detail-stats{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.attendance-page-head{align-items:flex-start}.attendance-page-head .page-actions{width:100%}.attendance-page-head .page-actions button{flex:1}.attendance-toolbar{grid-template-columns:1fr}.attendance-subtoolbar{align-items:stretch}.attendance-subtoolbar label{flex:1;min-width:130px}.attendance-rule-hint{margin-right:0}.attendance-groups-grid{grid-template-columns:1fr}.attendance-detail-stats{grid-template-columns:1fr 1fr}.attendance-session{grid-template-columns:28px 1fr 1fr}.attendance-session>div:nth-of-type(3),.attendance-session .source-badge{display:none}.attendance-correction form{flex-direction:column;align-items:stretch}.rules-grid{grid-template-columns:1fr}.attendance-metrics{grid-template-columns:1fr 1fr}}
.attendance-engagement{display:flex;gap:7px;flex-wrap:wrap;margin:-5px 0 14px}.attendance-engagement span{display:flex;align-items:center;gap:5px;border-radius:999px;background:#f8fbf4;border:1px solid #eff3e9;padding:5px 8px}.attendance-engagement small{font-size:8px;color:#8f98a7}.attendance-engagement b{font-size:9px;color:#637642}
.raw-event .event-kind{font-size:8px;color:#8f98a7;background:#f3f6ed;border-radius:999px;padding:3px 6px}

/* ===== Stage 6: secure file center ===== */
.files-page-head .primary-btn{box-shadow:0 12px 28px rgba(71,92,34,.13)}
.files-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.file-metric{position:relative;overflow:hidden;background:#fff;border:1px solid #f0f4e9;border-radius:22px;padding:17px 18px;box-shadow:0 12px 35px rgba(56,71,29,.045)}.file-metric:after{content:"";position:absolute;width:80px;height:80px;border-radius:50%;left:-27px;bottom:-39px;background:#f7fcee}.file-metric.active:after{background:#e8f9f1}.file-metric.global:after{background:#f7fdec}.file-metric.storage:after{background:#fff5df}.file-metric small{display:block;color:#9098a6;font-size:10px}.file-metric b{display:block;font-size:23px;margin:5px 0 1px;max-width:90%;overflow:hidden;text-overflow:ellipsis}.file-metric span{font-size:9px;color:#9ba3b0}.files-panel{background:#fff;border:1px solid #f0f4e9;border-radius:25px;box-shadow:0 18px 50px rgba(55,71,28,.05);overflow:hidden}.files-toolbar{display:grid;grid-template-columns:minmax(240px,1.6fr) repeat(4,minmax(120px,.7fr));gap:8px;padding:14px;border-bottom:1px solid #f2f6ec}.files-toolbar select{border:1px solid #ebf1e2;background:#fbfcfa;border-radius:12px;padding:9px 10px;font-family:inherit;color:#495730;outline:none}.file-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;padding:16px}.file-card{min-width:0;border:1px solid #eff3e7;border-radius:21px;background:linear-gradient(180deg,#fff,#fefffc);padding:14px;box-shadow:0 9px 26px rgba(64,81,36,.035);transition:.2s ease}.file-card:hover{transform:translateY(-2px);border-color:#e7efda;box-shadow:0 16px 36px rgba(64,81,36,.07)}.file-card-top{display:flex;align-items:center;justify-content:space-between}.file-type{width:47px;height:47px;border-radius:15px;background:#f5f8f0;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#59647a;flex:0 0 auto}.file-type b{font-size:12px;line-height:1;font-weight:850}.file-type small{font-size:7px;margin-top:3px;font-weight:700;opacity:.72}.file-type.pdf{background:#fff0f1;color:#c84e59}.file-type.image{background:#ecf8f4;color:#238b69}.file-type.word{background:#f8fdf0;color:#8dbd39}.file-type.sheet{background:#edf8f1;color:#31845c}.file-type.slide{background:#fff3ea;color:#c66b38}.file-type.archive{background:#f9fef1;color:#a5ce60}.file-type.text{background:#f5f8f1;color:#687386}.file-type.large{width:62px;height:62px;border-radius:19px}.file-type.large b{font-size:15px}.file-card-actions{display:flex;gap:5px}.file-action{width:31px;height:31px;border:1px solid #edf2e7;border-radius:10px;background:#fff;display:grid;place-items:center;text-decoration:none;color:#667085;font:inherit;cursor:pointer}.file-action:hover{background:#f9fbf5;color:#556638}.file-card-body{padding:12px 1px 10px}.file-badges{display:flex;gap:5px;flex-wrap:wrap;min-height:20px}.file-badge{display:inline-flex;border-radius:999px;padding:4px 7px;font-size:7px;font-weight:750;background:#f4f7ef;color:#727c8d}.file-badge.global{background:#f7fdec;color:#7eac2f}.file-badge.presentation{background:#f9fef0;color:#9ac54f}.file-badge.admin{background:#fff2df;color:#a87120}.file-badge.inactive{background:#f3f3f4;color:#9297a0}.file-badge.scheduled{background:#fff6df;color:#a8781d}.file-card h3{font-size:13px;margin:7px 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-card p{height:32px;margin:0;color:#9098a5;font-size:9px;line-height:1.8;overflow:hidden}.file-target{margin-top:10px;border-radius:11px;background:#f9faf7;border:1px solid #f3f6ee;padding:7px 8px;display:flex;gap:6px;align-items:center;color:#818a98}.file-target i{font-style:normal;color:#a8d45c}.file-target span{font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-card-foot{border-top:1px solid #f2f5ed;padding-top:9px;display:flex;justify-content:space-between;gap:5px;color:#929aa7;font-size:8px}.file-skeleton{height:214px;border-radius:21px;background:linear-gradient(90deg,#f4f5f7,#fbfcfa,#f4f5f7);background-size:200% 100%;animation:skeletonMove 1.5s infinite}.file-empty{grid-column:1/-1;padding:55px 20px}.file-dropzone{position:relative;border:1.5px dashed #dbe5cb;border-radius:20px;background:#fdfefa;padding:25px;text-align:center;margin-bottom:13px;transition:.2s}.file-dropzone:hover{border-color:#b8e073;background:#fdfffa}.file-dropzone input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}.drop-icon{width:46px;height:46px;border-radius:16px;background:#f8fdef;color:#a7d559;display:grid;place-items:center;margin:0 auto 8px;font-size:20px;font-weight:800}.file-dropzone strong{display:block;font-size:12px}.file-dropzone>span{display:block;font-size:9px;color:#929ba9;margin-top:3px}.file-dropzone #fileSelectedNames{display:flex;flex-wrap:wrap;justify-content:center;gap:5px;margin-top:9px}.file-dropzone #fileSelectedNames span{font-size:8px;border:1px solid #ecf1e3;background:#fff;border-radius:999px;padding:4px 7px}.file-dropzone #fileSelectedNames b{color:#939baa;margin-right:3px}.file-progress{height:6px;border-radius:99px;background:#f4f7ef;position:relative;margin:-3px 0 15px;overflow:visible}.file-progress i{display:block;width:0;height:100%;border-radius:99px;background:linear-gradient(90deg,#b0dc65,#47bda0);transition:.15s}.file-progress span{position:absolute;left:0;top:-18px;font-size:7px;color:#858e9d}.file-meta-grid textarea{resize:vertical;min-height:70px}.file-switches{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:12px 0}.file-switches .switch{border:1px solid #eef2e7;background:#fbfcfa;border-radius:14px;padding:9px;justify-content:flex-start}.file-access-tabs{display:flex;gap:5px;border-bottom:1px solid #eef2e8;margin-top:14px}.file-access-tabs button{border:0;background:transparent;padding:10px 14px;font-family:inherit;color:#8d95a2;cursor:pointer;border-bottom:2px solid transparent}.file-access-tabs button.active{color:#8ebb41;border-bottom-color:#a7d559;font-weight:750}.file-access-pane{display:none;padding-top:12px}.file-access-pane.active{display:block}.file-link-settings{display:flex;align-items:end;gap:12px;background:#fafbf8;border:1px solid #f2f5ec;border-radius:15px;padding:10px;margin-bottom:9px}.file-link-settings .field{margin:0;min-width:180px}.presentation-switch{margin-bottom:3px}.access-search{max-width:360px;margin-bottom:8px}.file-access-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;max-height:270px;overflow:auto;padding-left:3px}.file-access-choice{position:relative;display:flex;align-items:center;gap:9px;border:1px solid #eef2e7;border-radius:13px;padding:9px;background:#fff;cursor:pointer}.file-access-choice input{position:absolute;opacity:0}.file-access-choice>span{display:flex;flex-direction:column;min-width:0}.file-access-choice b{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-access-choice small{font-size:7px;color:#929ba8}.file-access-choice>i{font-style:normal;margin-right:auto;width:18px;height:18px;border-radius:6px;background:#f3f6ef;color:transparent;display:grid;place-items:center;font-size:8px}.file-access-choice:has(input:checked){border-color:#e9f6d2;background:#fdfffa}.file-access-choice input:checked~i{background:#a4d059;color:#fff}.file-detail-hero{display:flex;align-items:center;gap:13px;padding-bottom:14px;border-bottom:1px solid #f2f5ec}.file-detail-hero h2{margin:5px 0 3px;font-size:18px}.file-detail-hero p{margin:0;color:#8a94a3;font-size:10px}.file-detail-meta{display:flex;gap:9px;flex-wrap:wrap;margin-top:8px}.file-detail-meta span{font-size:8px;color:#7e8796;background:#f7faf3;border-radius:999px;padding:4px 7px}.file-detail-actions{display:flex;gap:7px;margin:12px 0}.file-preview{border:1px solid #eef2e7;background:#f9faf7;border-radius:18px;overflow:hidden;margin:11px 0;display:grid;place-items:center}.file-preview.image{max-height:430px;padding:8px}.file-preview.image img{display:block;max-width:100%;max-height:410px;border-radius:12px}.file-preview.pdf{height:440px}.file-preview.pdf iframe{width:100%;height:100%;border:0;background:#fff}.file-target-section{margin-top:14px}.file-detail-targets{display:flex;flex-wrap:wrap;gap:6px}.file-detail-targets span{border:1px solid #edf2e5;background:#fbfcfa;border-radius:999px;padding:6px 9px;font-size:8px;color:#667185}.file-target-section>.soft-btn{margin-top:10px;margin-left:5px}.file-admin-detail{display:grid;gap:16px;margin-top:17px;padding-top:15px;border-top:1px solid #f2f5ec}.file-versions{display:grid;gap:6px}.file-version{display:grid;grid-template-columns:34px 1fr 28px;align-items:center;gap:8px;border:1px solid #eff3e8;border-radius:13px;padding:8px;background:#fff}.file-version.current{background:#fdfffa;border-color:#edf9d8}.version-no{width:30px;height:30px;border-radius:10px;background:#f3f6ee;display:grid;place-items:center;font-size:8px;font-weight:800}.file-version.current .version-no{background:#f6fdeb;color:#9dc852}.file-version b{display:block;font-size:9px}.file-version small{display:block;color:#929ba7;font-size:7px;margin-top:2px}.file-version a{text-decoration:none;color:#5d687a}.file-version-form{display:flex;align-items:end;gap:7px;background:#fbfcfa;border:1px solid #f2f5ec;border-radius:14px;padding:9px;margin-top:8px}.file-version-form .field{margin:0;min-width:180px}.file-version-form .grow{flex:1}.file-access-logs{border:1px solid #f2f5ec;border-radius:14px;max-height:240px;overflow:auto}.file-access-log{display:grid;grid-template-columns:1fr 70px 150px;gap:8px;padding:8px 10px;border-bottom:1px solid #f3f6ef;align-items:center}.file-access-log:last-child{border-bottom:0}.file-access-log span{font-size:9px}.file-access-log b{font-size:8px;color:#606b7e}.file-access-log small{font-size:7px;color:#979faa;text-align:left}.danger-zone{display:flex;justify-content:flex-end;gap:7px;border-top:1px solid #f1e5e7;padding-top:12px}.danger-btn{border:0;background:#fff0f2;color:#c64f62;border-radius:11px;padding:9px 12px;font-family:inherit;cursor:pointer}.danger-btn:hover{background:#ffe7ea}
@media(max-width:1100px){.file-grid{grid-template-columns:repeat(2,1fr)}.files-toolbar{grid-template-columns:1fr 1fr 1fr}.files-metrics{grid-template-columns:1fr 1fr}.file-switches{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.file-grid{grid-template-columns:1fr;padding:11px}.files-toolbar{grid-template-columns:1fr}.files-metrics{grid-template-columns:1fr 1fr}.file-access-grid{grid-template-columns:1fr}.file-switches{grid-template-columns:1fr 1fr}.file-link-settings{flex-direction:column;align-items:stretch}.file-link-settings .field{min-width:0}.file-preview.pdf{height:360px}.file-version-form{flex-direction:column;align-items:stretch}.file-version-form .field{min-width:0}.file-access-log{grid-template-columns:1fr 65px}.file-access-log small{grid-column:1/-1;text-align:right}.file-detail-hero{align-items:flex-start}.file-card-foot{font-size:7px}}
.meeting-files-inline{margin-top:14px}.meeting-files-mini{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.meeting-file-mini{border:1px solid #eef2e7;border-radius:14px;background:#fff;padding:8px;display:grid;grid-template-columns:32px 1fr 20px;gap:8px;align-items:center;text-align:right;font-family:inherit;cursor:pointer}.meeting-file-mini:hover{background:#fdfefa;border-color:#ebf6d7}.file-type.mini{width:31px;height:31px;border-radius:10px}.file-type.mini b{font-size:8px}.meeting-file-mini>span:nth-child(2){min-width:0}.meeting-file-mini>span:nth-child(2)>b{display:block;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.meeting-file-mini small{display:block;font-size:7px;color:#959da9}.meeting-file-mini>i{font-style:normal;color:#8b93a0}@media(max-width:650px){.meeting-files-mini{grid-template-columns:1fr}}

/* ===== Stage 7: Recording archive ===== */
.recordings-page-head{align-items:center}.recording-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:18px 0}.recording-metric{min-height:118px;background:linear-gradient(145deg,#fff,#fdfffa);border:1px solid var(--line);border-radius:22px;padding:20px;box-shadow:0 12px 35px rgba(55,71,28,.04);position:relative;overflow:hidden}.recording-metric:after{content:"";position:absolute;width:92px;height:92px;border-radius:50%;left:-22px;bottom:-34px;background:rgba(179,234,85,.07)}.recording-metric.processing:after{background:rgba(244,173,71,.1)}.recording-metric.views:after{background:rgba(25,185,154,.09)}.recording-metric.downloads:after{background:rgba(182,238,84,.1)}.recording-metric small,.recording-metric span{display:block;color:var(--muted);font-size:11px}.recording-metric b{font-size:27px;display:block;margin:8px 0 5px}.recordings-panel{background:#fff;border:1px solid var(--line);border-radius:26px;padding:18px;box-shadow:0 14px 50px rgba(55,71,28,.04)}.recordings-toolbar{display:grid;grid-template-columns:minmax(250px,1fr) repeat(4,max-content);gap:10px;align-items:center;margin-bottom:18px}.recordings-toolbar select{height:43px;border:1px solid var(--line);border-radius:13px;background:#fdfefa;color:var(--ink);padding:0 12px;outline:0}.recording-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.recording-card{border:1px solid var(--line);border-radius:23px;overflow:hidden;background:#fff;transition:.22s;min-width:0}.recording-card:hover{transform:translateY(-3px);box-shadow:0 18px 45px rgba(55,71,28,.09);border-color:#eef9da}.recording-card.processing{opacity:.9}.recording-card.deleted{opacity:.58}.recording-cover{height:190px;background:linear-gradient(145deg,#323e1d,#abe051);background-position:center;background-size:cover;position:relative;overflow:hidden}.recording-cover-shade{position:absolute;inset:0;background:linear-gradient(to top,rgba(18,25,7,.78),rgba(18,25,7,.08) 65%)}.recording-play-glyph{position:absolute;right:50%;top:50%;transform:translate(50%,-50%);width:54px;height:54px;border-radius:50%;display:grid;place-items:center;padding-right:3px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.28);backdrop-filter:blur(10px);color:#fff;font-size:20px;box-shadow:0 10px 28px rgba(0,0,0,.18)}.recording-cover-top{position:absolute;top:13px;right:13px;left:13px;display:flex;justify-content:space-between;gap:8px;align-items:center}.recording-state,.recording-published,.recording-private-badge{display:inline-flex!important;align-items:center;width:max-content;border-radius:999px;padding:6px 9px;font-size:10px!important;font-weight:700;line-height:1;background:#f5f8ef;color:#5e687b}.recording-state.ready{background:#e8faf5;color:#0b9479}.recording-state.processing{background:#fff6e8;color:#b8791f}.recording-state.error{background:#fff0f3;color:#cb4560}.recording-state.deleted{background:#f2f5ed;color:#778095}.recording-published{background:rgba(25,185,154,.93);color:#fff}.recording-private-badge{background:#f9fef0;color:#b3ea55}.recording-duration{position:absolute;left:13px;bottom:12px;background:rgba(16,21,8,.72);color:#fff;border-radius:9px;padding:5px 8px;font-size:10px;backdrop-filter:blur(8px)}.recording-card-body{padding:15px}.recording-format-chips{display:flex;gap:5px;flex-wrap:wrap;min-height:23px}.recording-format-chips span{font-size:9px;background:#fafef4;color:#a9db54;padding:4px 7px;border-radius:7px}.recording-card h3{font-size:15px;margin:9px 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recording-card-body>p{font-size:11px;color:var(--muted);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recording-meta,.recording-stats{display:flex;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:10px;margin-top:11px}.recording-stats{padding-top:10px;border-top:1px solid var(--line)}.recording-actions{display:flex;gap:7px;margin-top:13px}.recording-actions a,.recording-actions button{height:38px;border-radius:11px;border:0;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font:inherit;font-size:11px;font-weight:700}.recording-play{background:#b3ea55;color:#fff;flex:1}.recording-download{background:#eafaf6;color:#0c977c}.recording-more{background:#f6f9f1;color:#667086}.recording-skeleton{height:390px;border-radius:23px;background:linear-gradient(90deg,#f7faf2 25%,#fbfcfa 40%,#f7faf2 60%);background-size:300% 100%;animation:sk 1.3s infinite}.recording-empty{grid-column:1/-1;min-height:280px}.recording-detail-hero{display:grid;grid-template-columns:300px 1fr;gap:25px;align-items:center;background:linear-gradient(145deg,#fdfefa,#fff);border:1px solid var(--line);border-radius:24px;padding:18px}.recording-detail-cover{height:175px;border-radius:18px;background:#252e15;overflow:hidden;position:relative}.recording-detail-cover img{width:100%;height:100%;object-fit:cover;display:block}.recording-detail-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(14,19,5,.5),transparent)}.recording-detail-cover>span{position:absolute;z-index:2;right:50%;top:50%;transform:translate(50%,-50%);width:50px;height:50px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.2);color:#fff;border:1px solid rgba(255,255,255,.3)}.recording-detail-badges{display:flex;gap:7px;flex-wrap:wrap}.recording-detail-hero h2{margin:9px 0 6px;font-size:22px}.recording-detail-hero p{margin:0;color:var(--muted);font-size:12px;line-height:1.9}.recording-detail-meta{display:flex;gap:12px;flex-wrap:wrap;color:#737e92;font-size:10px;margin-top:13px}.recording-detail-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:17px}.recording-format-list{display:grid;gap:9px}.recording-format-row{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--line);border-radius:15px;padding:12px 13px;background:#fdfefb}.recording-format-row.preferred{border-color:#eefbd8;background:#fcfef9}.recording-format-row>div:first-child{display:flex;flex-direction:column}.recording-format-row b{font-size:12px}.recording-format-row small{font-size:10px;color:var(--muted);margin-top:3px}.recording-format-row>div:last-child{display:flex;gap:6px}.recording-log-list{max-height:280px;overflow:auto;border:1px solid var(--line);border-radius:15px}.recording-log{display:grid;grid-template-columns:1fr 90px 150px;gap:10px;align-items:center;padding:10px 12px;border-bottom:1px solid var(--line);font-size:11px}.recording-log:last-child{border-bottom:0}.recording-log b{color:#9fce4d}.recording-log small{color:var(--muted);direction:ltr;text-align:right}.recording-target-pane{display:none;margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.recording-access-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-height:320px;overflow:auto}.recording-access-choice{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:13px;padding:10px;background:#fff;cursor:pointer}.recording-access-choice input{accent-color:#b3ea55}.recording-access-choice span{min-width:0;flex:1}.recording-access-choice b{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.recording-access-choice i{font-style:normal;color:#b3ea55;opacity:0}.recording-access-choice:has(input:checked){border-color:#eafacd;background:#fbfef7}.recording-access-choice:has(input:checked) i{opacity:1}.meeting-recordings-mini{display:grid;gap:8px}.meeting-recording-mini{width:100%;border:1px solid var(--line);background:#fff;border-radius:14px;padding:10px;display:grid;grid-template-columns:40px 1fr 20px;align-items:center;gap:10px;text-align:right;color:var(--ink)}.mini-record-play{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#f8fdf0;color:#aadd52}.meeting-recording-mini>span:nth-child(2){display:flex;flex-direction:column;min-width:0}.meeting-recording-mini b{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.meeting-recording-mini small{display:flex;align-items:center;gap:5px;font-size:9px;color:var(--muted);margin-top:3px}.meeting-recording-mini .recording-state{padding:2px 6px;font-size:8px!important}.meeting-recording-mini>i{font-style:normal;color:#a2aabc}@media(max-width:1200px){.recording-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.recordings-toolbar{grid-template-columns:1fr repeat(2,max-content)}.recordings-toolbar .search-box{grid-column:1/-1}.recording-metrics{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.recording-grid,.recording-metrics{grid-template-columns:1fr}.recordings-toolbar{display:flex;flex-direction:column;align-items:stretch}.recording-detail-hero{grid-template-columns:1fr}.recording-detail-cover{height:190px}.recording-access-grid{grid-template-columns:1fr}.recording-log{grid-template-columns:1fr auto}.recording-log small{grid-column:1/-1}.recording-cover{height:205px}}

/* Stage 8 - communications */
.notification-bell{position:relative;width:42px;height:42px;border:1px solid var(--line,#edf2e5);background:#fff;border-radius:14px;display:grid;place-items:center;cursor:pointer;font-size:22px;color:#3c4b22;transition:.2s}.notification-bell:hover{transform:translateY(-1px);box-shadow:0 8px 24px rgba(43,58,18,.08)}.notification-bell b{position:absolute;top:-5px;left:-5px;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:#ef4444;color:#fff;font-size:10px;line-height:19px;text-align:center;border:2px solid #fff}.notification-popover{display:none;position:absolute;top:64px;left:24px;width:min(390px,calc(100vw - 30px));background:#fff;border:1px solid #eef2e7;border-radius:20px;box-shadow:0 24px 60px rgba(31,41,15,.16);z-index:80;overflow:hidden}.notification-popover.open{display:block}.notification-popover-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid #f2f5ec}.notification-popover-head div{display:grid;gap:2px}.notification-popover-head small{color:#8992a4}.notification-popover-head button{border:0;background:transparent;color:#a5dd44;cursor:pointer}.notification-list{max-height:440px;overflow:auto}.notification-item{width:100%;border:0;border-bottom:1px solid #f5f8f0;background:#fff;text-align:right;padding:14px 16px;display:flex;gap:12px;cursor:pointer}.notification-item.unread{background:#fcfef8}.notification-dot{width:9px;height:9px;border-radius:50%;background:#b1e458;margin-top:8px;flex:0 0 auto}.notification-item:not(.unread) .notification-dot{background:#dfe6d3}.notification-copy{display:grid;gap:4px;min-width:0}.notification-copy strong{font-size:13px;color:#2f3b1a}.notification-copy span{font-size:12px;color:#687386;white-space:normal}.notification-copy small{font-size:10px;color:#9aa2b1}.communication-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.communications-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(300px,.8fr);gap:18px}.communications-toolbar{display:flex;gap:10px;margin:14px 0}.communications-toolbar .search-box{flex:1}.sms-template-list{display:grid;gap:10px}.sms-template-card{border:1px solid #f0f4e9;border-radius:16px;padding:13px;background:#fdfefb;display:grid;gap:6px}.sms-template-card .row{display:flex;justify-content:space-between;gap:8px;align-items:center}.sms-template-card p{margin:0;color:#697386;font-size:12px;line-height:1.9;max-height:50px;overflow:hidden}.sms-template-card button{border:0;background:#f8fdf0;color:#9dd046;border-radius:9px;padding:6px 9px;cursor:pointer}.template-vars-note{margin-top:14px;padding:12px;border-radius:14px;background:#fafbf7;display:grid;gap:5px}.template-vars-note span{font-size:11px;color:#70798c;direction:ltr;text-align:left}.manual-recipient-grid{max-height:320px;overflow:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.manual-recipient{display:flex;gap:9px;align-items:center;border:1px solid #eef2e7;border-radius:13px;padding:9px 10px;cursor:pointer}.manual-recipient input{accent-color:#a9de4e}.sms-status{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:11px;background:#f5f8f0;color:#596273}.sms-status.delivered{background:#eaf8ef;color:#177443}.sms-status.sent{background:#f8fdf0;color:#8cc22f}.sms-status.failed{background:#fff0f0;color:#b42318}.sms-status.queued,.sms-status.sending{background:#fff7df;color:#946200}.sms-status.cancelled{background:#f3f4f6;color:#6b7280}@media(max-width:1100px){.communications-layout{grid-template-columns:1fr}.communication-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.communication-metrics{grid-template-columns:1fr 1fr}.manual-recipient-grid{grid-template-columns:1fr}.notification-popover{left:8px}.communications-toolbar{flex-direction:column}}
.settings-switch-list{display:grid;gap:10px}.settings-switch-list .switch-field{border:1px solid #eff3e8;border-radius:14px;padding:12px 14px;background:#fdfefb}.page-actions{display:flex;gap:9px;align-items:center}.table-sub{display:block;color:#8b93a3;margin-top:3px}.sms-text-cell{max-width:380px;line-height:1.8}.error-text{display:block;color:#b42318;margin-top:4px}
.topbar-actions{position:relative}

/* ===== Stage 9: reports ===== */
.reports-page-head .page-actions{display:flex;gap:8px}.report-filter-card{background:#fff;border:1px solid #f0f4e8;border-radius:22px;padding:13px 14px;margin-bottom:14px;box-shadow:0 14px 38px rgba(55,71,27,.045)}.report-filter-main{display:grid;grid-template-columns:minmax(250px,1.5fr) repeat(3,minmax(150px,.8fr));gap:9px}.report-filter-main select,.report-filter-dates input{border:1px solid #ebf1e2;background:#fbfcfa;border-radius:12px;padding:9px 10px;font-family:inherit;color:#495730;outline:none}.report-filter-dates{display:flex;align-items:end;gap:8px;margin-top:9px;padding-top:9px;border-top:1px solid #f3f6ef}.report-filter-dates label{display:grid;gap:4px;font-size:9px;color:#8d95a3}.report-filter-dates input{padding:7px 8px;font-size:10px}.report-overview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.report-kpi{position:relative;overflow:hidden;background:#fff;border:1px solid #f0f4e8;border-radius:21px;padding:16px 17px;min-height:112px;box-shadow:0 14px 40px rgba(55,71,28,.045)}.report-kpi:after{content:"";position:absolute;width:88px;height:88px;border-radius:50%;left:-34px;bottom:-43px;background:#f8fdee}.report-kpi.green:after{background:#e8f8ef}.report-kpi.blue:after{background:#f6fdeb}.report-kpi.orange:after{background:#fff2de}.report-kpi small{display:block;color:#8d96a4;font-size:9px}.report-kpi b{display:block;font-size:23px;margin:6px 0 2px;color:#3e4d24}.report-kpi span{font-size:9px;color:#9aa2ae}.report-insight-row{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(270px,.75fr);gap:14px;margin-bottom:15px}.report-trend-panel,.report-side-summary{padding:16px}.report-trend{height:185px;display:flex;align-items:stretch;gap:8px;padding-top:15px;border-top:1px solid #f4f7f0}.report-trend-col{flex:1;display:grid;grid-template-rows:35px 1fr 23px;gap:5px;text-align:center;min-width:34px}.report-trend-value{font-size:10px;font-weight:800;color:#495730}.report-trend-value small{display:block;color:#8590a1;font-size:8px;font-weight:500}.report-trend-bar{height:100%;display:flex;align-items:flex-end;justify-content:center;background:linear-gradient(to top,#fbfcfa 1px,transparent 1px);background-size:100% 25%;border-radius:10px}.report-trend-bar i{display:block;width:min(26px,60%);min-height:8px;background:linear-gradient(180deg,#b3e067,#abdc56);border-radius:8px 8px 3px 3px;box-shadow:0 5px 15px rgba(169,214,90,.22)}.report-trend-col>span{font-size:8px;color:#8d96a5;white-space:nowrap}.report-side-list{display:grid;grid-template-columns:1fr 1fr;gap:8px}.report-side-list>div{border:1px solid #f2f5ec;background:#fbfcfa;border-radius:14px;padding:11px}.report-side-list span{display:block;font-size:8px;color:#8e97a5}.report-side-list b{display:block;font-size:15px;margin-top:4px}.report-tabs{display:flex;gap:6px;overflow:auto;padding:4px;margin:0 0 9px;background:#f3f6ed;border-radius:14px;width:max-content;max-width:100%}.report-tabs button{border:0;background:transparent;padding:8px 12px;border-radius:10px;color:#758093;font-family:inherit;white-space:nowrap;cursor:pointer;font-size:10px}.report-tabs button.active{background:#fff;color:#405025;box-shadow:0 5px 15px rgba(55,71,28,.08);font-weight:800}.report-table-panel{overflow:hidden}.report-table-panel>.section-title{padding:15px 16px;border-bottom:1px solid #f2f5ec}.report-record-count{font-size:9px;background:#f5f8f1;color:#667085;border-radius:999px;padding:5px 9px}.report-table{min-width:980px}.report-table td{vertical-align:middle}.report-link{border:0;background:transparent;text-align:right;cursor:pointer;font-family:inherit;color:inherit;padding:0;display:grid;gap:2px}.report-link b{font-size:10px;color:#4a592f}.report-link small{font-size:8px;color:#98a0ad}.report-percent{display:block;min-width:85px}.report-percent b{font-size:9px}.report-percent i{display:block;height:4px;background:#f2f5ec;border-radius:99px;overflow:hidden;margin-top:5px}.report-percent em{display:block;height:100%;background:linear-gradient(90deg,#b1dd64,#32b493);border-radius:99px}.report-status{display:inline-flex;align-items:center;border-radius:999px;padding:5px 8px;background:#f4f7f0;color:#667085;font-size:8px;font-weight:700;white-space:nowrap}.report-status.live,.report-status.ready,.report-status.delivered{background:#e8f8ef;color:#16754a}.report-status.scheduled,.report-status.sent{background:#f8fdef;color:#8abd32}.report-status.cancelled,.report-status.error,.report-status.failed{background:#fff0f1;color:#b53d50}.report-status.processing,.report-status.queued,.report-status.sending{background:#fff6df;color:#976710}.report-detail-hero{display:flex;align-items:center;justify-content:space-between;padding-bottom:14px;border-bottom:1px solid #f2f5ec}.report-detail-hero h2{margin:6px 0 3px;font-size:18px}.report-detail-hero p{margin:0;color:#8993a4;font-size:10px}.report-detail-hero>div:last-child{text-align:center;border:1px solid #f0f4e8;border-radius:16px;padding:9px 14px;min-width:88px}.report-detail-hero>div:last-child b{display:block;font-size:20px}.report-detail-hero>div:last-child small{font-size:8px;color:#929aa8}.report-detail-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:13px 0}.report-detail-grid>div{border:1px solid #f2f5ec;border-radius:14px;padding:10px;background:#fbfcfa}.report-detail-grid small{display:block;font-size:8px;color:#9099a8}.report-detail-grid b{display:block;margin-top:4px;font-size:10px}.report-mini-table{display:grid;border:1px solid #f2f5ec;border-radius:15px;overflow:hidden}.report-mini-table>div{display:grid;grid-template-columns:minmax(220px,1.7fr) .6fr .5fr .7fr;gap:8px;align-items:center;padding:9px 11px;border-bottom:1px solid #f2f5ec;font-size:9px}.report-mini-table>div:last-child{border-bottom:0}.report-mini-table span:first-child{display:grid}.report-mini-table b{font-size:9px}.report-mini-table small{font-size:8px;color:#929aa7}.report-user-groups{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0}.report-user-groups span{background:#f7faf3;border:1px solid #eef2e7;border-radius:999px;padding:5px 8px;font-size:9px}.report-user-groups b{margin-right:5px;color:#a1ce53;font-size:8px}
@media(max-width:1100px){.report-filter-main{grid-template-columns:1fr 1fr}.report-overview-grid{grid-template-columns:1fr 1fr}.report-insight-row{grid-template-columns:1fr}.report-detail-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.reports-page-head{align-items:flex-start}.reports-page-head .page-actions{width:100%;display:grid;grid-template-columns:1fr 1fr 1fr}.report-filter-main{grid-template-columns:1fr}.report-filter-dates{flex-wrap:wrap}.report-filter-dates label{flex:1;min-width:135px}.report-overview-grid{grid-template-columns:1fr 1fr}.report-side-list{grid-template-columns:1fr 1fr}.report-trend{overflow-x:auto}.report-trend-col{min-width:50px}.report-detail-grid{grid-template-columns:1fr 1fr}.report-mini-table>div{grid-template-columns:1fr .5fr}.report-mini-table>div span:nth-child(3),.report-mini-table>div span:nth-child(4){display:none}}

/* Stage 10 - Governance */
.governance-head{margin-bottom:18px}.governance-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.mini-kpi{background:#fff;border:1px solid var(--line,#eff3e7);border-radius:18px;padding:16px 18px;min-height:96px;display:flex;flex-direction:column;gap:5px}.mini-kpi small{color:#80889a}.mini-kpi b{font-size:24px}.mini-kpi em{font-style:normal;color:#d06060;font-size:12px}.governance-tabs{display:flex;gap:7px;overflow:auto;background:#fff;border:1px solid #eff3e7;border-radius:18px;padding:6px;margin-bottom:16px}.governance-tabs button{border:0;background:transparent;padding:11px 16px;border-radius:13px;white-space:nowrap;color:#626b7c;cursor:pointer}.governance-tabs button.active{background:#252e14;color:#fff;box-shadow:0 7px 20px rgba(37,46,20,.14)}.governance-pane{min-height:360px}.gov-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;flex-wrap:wrap}.gov-toolbar>div{display:flex;flex-direction:column}.gov-toolbar>div small{color:#7c8493;margin-top:3px}.gov-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.gov-card{background:#fff;border:1px solid #edf2e4;border-radius:20px;padding:18px;display:flex;flex-direction:column;gap:10px;box-shadow:0 8px 28px rgba(48,61,26,.035)}.gov-card.disabled{opacity:.55}.gov-card h3{margin:0;font-size:16px}.gov-card p{margin:0;color:#757e8f;line-height:1.8;min-height:27px}.gov-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.gov-type{font-size:11px;padding:5px 9px;border-radius:999px;background:#f6faef;color:#596377}.gov-state{font-size:11px;padding:5px 9px;border-radius:999px;background:#f1f2f5;color:#667}.gov-state.done,.gov-state.closed{background:#e8f8f0;color:#18865b}.gov-state.open,.gov-state.in_progress{background:#f7fdec;color:#80b229}.gov-state.overdue{background:#fff0ef;color:#c13d39}.gov-state.pending,.gov-state.draft{background:#fff7df;color:#a87400}.gov-card-meta,.resolution-meta{display:flex;gap:10px;flex-wrap:wrap;color:#7e8798;font-size:12px}.card-actions{display:flex;gap:7px;align-items:center;margin-top:auto}.card-actions .primary-btn{flex:1}.resolution-board{display:flex;flex-direction:column;gap:10px}.resolution-card{background:#fff;border:1px solid #edf2e5;border-radius:18px;padding:16px 18px;display:flex;justify-content:space-between;gap:15px;align-items:center;border-right:4px solid #e2e8d6}.resolution-card.overdue{border-right-color:#e15752}.resolution-card.in_progress{border-right-color:#a9e04b}.resolution-card.done{border-right-color:#31a56f}.resolution-main{flex:1;min-width:0}.resolution-main h3{margin:8px 0 5px}.resolution-main p{margin:0 0 8px;color:#747d8f}.resolution-actions{display:flex;gap:7px;align-items:center}.gov-progress{height:20px;background:#f6f9f1;border-radius:999px;position:relative;overflow:hidden;margin-top:10px}.gov-progress i{position:absolute;right:0;top:0;bottom:0;background:linear-gradient(90deg,#bff06b,#42bca1);border-radius:999px}.gov-progress b{position:absolute;inset:0;display:grid;place-items:center;font-size:10px;z-index:2;color:#424f2b}.minute-resolution{display:grid;grid-template-columns:1fr auto;gap:3px 10px;padding:12px;border:1px solid #eff3e7;border-radius:14px;margin-bottom:8px}.minute-resolution small{color:#7f8797}.minute-resolution .gov-state{grid-column:2;grid-row:1/3;align-self:center}.final-minutes-text{background:#fbfcf8;border:1px solid #eff3e7;border-radius:16px;padding:20px;line-height:2.1}.resolution-detail>h2{margin:10px 0}.resolution-detail>p{color:#6f7889;line-height:1.9}.resolution-updates{display:flex;flex-direction:column}.resolution-update{display:grid;grid-template-columns:12px 1fr auto;gap:10px;border-right:1px solid #e8efdd;padding:0 14px 18px 0;position:relative}.resolution-update i{width:9px;height:9px;border-radius:50%;background:#b8ef59;position:absolute;right:-5px;top:7px}.resolution-update p{margin:3px 0;color:#6f7888}.resolution-update small{color:#969ead}.weekday-picker{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0}.weekday-picker>span{width:100%;font-size:12px;color:#697386}.weekday-picker label{border:1px solid #eaf0e0;border-radius:11px;padding:8px 10px;display:flex;gap:6px;align-items:center;background:#fbfcfa}.poll-options-editor{display:flex;flex-direction:column;gap:8px;margin-bottom:8px}.poll-option-edit{display:grid;grid-template-columns:1fr auto auto;gap:8px}.poll-option-edit>input{border:1px solid #e7eddd;border-radius:11px;padding:10px}.poll-option-edit>label{display:flex;align-items:center;gap:5px;padding:0 9px}.poll-answer-list{display:flex;flex-direction:column;gap:8px;margin:15px 0}.poll-answer-option{border:1px solid #e8eede;border-radius:14px;padding:13px 14px;display:flex;align-items:center;gap:10px;cursor:pointer}.poll-answer-option.selected{border-color:#bcf063;background:#fbfef6}.poll-answer-option span{flex:1}.poll-answer-option b{font-size:10px;color:#16865c}.poll-admin-actions{display:flex;gap:8px;margin:12px 0}.poll-question{font-size:16px;line-height:1.9}.poll-result-row{margin:10px 0}.poll-result-row>div{display:flex;justify-content:space-between;gap:10px}.poll-result-row>i{height:8px;background:#f2f6ec;border-radius:99px;display:block;margin-top:6px;overflow:hidden}.poll-result-row em{display:block;height:100%;background:#baef5f;border-radius:99px}.poll-person-result{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;border-bottom:1px solid #f2f5ec;padding:10px 0}.poll-person-result em{font-style:normal;font-size:11px}.poll-person-result em.correct{color:#14855a}.poll-person-result em.wrong{color:#c94542}.answered-mark{color:#18865b}.hint-box{background:#fafcf6;border:1px solid #eef3e5;border-radius:13px;padding:12px;color:#697286;font-size:12px;line-height:1.8;margin-bottom:12px}.toggle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}
@media(max-width:1100px){.gov-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.governance-stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.gov-grid,.governance-stats,.toggle-grid{grid-template-columns:1fr}.resolution-card{align-items:flex-start;flex-direction:column}.resolution-actions{width:100%}.resolution-actions .primary-btn{flex:1}.poll-person-result{grid-template-columns:1fr}.gov-toolbar .search-box{width:100%}}

.resolution-file-picker{margin:12px 0}.resolution-file-picker>span{display:block;font-size:12px;color:#626c7d;margin-bottom:7px}.resolution-file-options{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}.resolution-file-options label{display:flex;align-items:center;gap:8px;border:1px solid #ebf1e2;border-radius:12px;padding:9px 10px}.resolution-file-options label span{display:flex;flex-direction:column}.resolution-file-options small{color:#9299a7}@media(max-width:700px){.resolution-file-options{grid-template-columns:1fr}}

.resolution-attachments{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.resolution-attachment{display:flex;gap:9px;align-items:center;border:1px solid #ebf1e2;border-radius:13px;padding:10px;text-decoration:none;color:inherit}.resolution-attachment>span{width:34px;height:34px;border-radius:10px;background:#f7faf0;display:grid;place-items:center}.resolution-attachment div{display:flex;flex-direction:column}.resolution-attachment small{color:#8d95a4}@media(max-width:700px){.resolution-attachments{grid-template-columns:1fr}}

/* Automatic server pairing */
.integration-overview{margin-bottom:18px}.integration-url-box{margin-top:16px;padding:15px 18px;border-radius:16px;background:#fbfef7;display:flex;flex-direction:column;gap:7px}.integration-url-box code{direction:ltr;text-align:left;font-size:14px}.integration-server-list{display:grid;gap:16px}.integration-server-card .section-title small{display:block;direction:ltr;text-align:right;margin-top:5px}.integration-check-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0}.integration-check{display:flex;align-items:center;gap:8px;padding:11px 12px;border-radius:14px;background:#fafcf7;font-size:13px}.integration-check b{display:grid;place-items:center;width:25px;height:25px;border-radius:50%}.integration-check.ok b{background:#e7f8f2;color:#0b9b70}.integration-check.bad b{background:#fff0f0;color:#dc4d55}.integration-meta{display:flex;flex-wrap:wrap;gap:14px;color:#7b8194;font-size:12px}.danger-text{color:#c9454d!important}@media(max-width:760px){.integration-check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.users-page-head .page-actions{display:flex;gap:8px;flex-wrap:wrap}
.secondary-btn{height:42px;border:1px solid #e9eee0;background:#fff;color:#596477;border-radius:13px;padding:0 14px;font-family:inherit;font-size:10px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;transition:.2s}
.secondary-btn:hover{border-color:#e8faca;background:#fdfefa;color:#a3d44f}
.group-manager-modal{min-height:360px}
.group-manager-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) 160px auto;gap:9px;align-items:center;margin-bottom:14px}
.group-manager-toolbar select{height:38px;border:1px solid var(--line);border-radius:11px;background:#fdfefa;padding:0 10px;font-family:inherit;font-size:10px;color:#596477;outline:0}
.group-manager-toolbar .mini-search{min-width:0;width:100%}
.modal-group-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-height:58vh;overflow:auto;padding:2px}
.modal-group-grid .group-card{box-shadow:none}
@media(max-width:720px){.users-page-head .page-actions{width:100%}.users-page-head .page-actions>*{flex:1}.group-manager-toolbar{grid-template-columns:1fr 1fr}.group-manager-toolbar .mini-search{grid-column:1/-1}.modal-group-grid{grid-template-columns:1fr}}
