/* EMS Boost teacher panel, modern look. Scoped to #adminMain.tq-ui (teachers only). */
body:has(#adminMain.tq-ui){ background:#f2f5fd; }
#adminMain.tq-ui{ max-width:1180px; margin:0 auto; padding-top:18px; }

/* hero */
#adminMain.tq-ui .admin-header.tq-hero{ position:relative; overflow:hidden; display:grid; grid-template-columns:1fr auto; gap:14px 18px; align-items:center; padding:24px 26px; border-radius:26px; color:#fff; margin-bottom:18px;
  background:radial-gradient(520px 240px at 92% -30%,rgba(79,141,253,.75),transparent 70%),radial-gradient(380px 200px at 0% 120%,rgba(139,92,246,.45),transparent 70%),linear-gradient(135deg,#070d24,#10216a); box-shadow:0 18px 40px rgba(15,33,106,.22); }
#adminMain.tq-ui .tq-hero:before{ content:""; position:absolute; right:-40px; top:-40px; width:220px; height:220px; border-radius:50%; border:1.5px solid rgba(255,255,255,.12); box-shadow:0 0 0 38px rgba(255,255,255,.04),0 0 0 78px rgba(255,255,255,.025); pointer-events:none; }
.tq-who{ display:flex; align-items:center; gap:16px; min-width:0; position:relative; }
.tq-av{ width:60px; height:60px; border-radius:20px; flex:0 0 auto; display:grid; place-items:center; font-family:'Sora','Manrope',sans-serif; font-weight:800; font-size:21px; color:#2b1d00; background:linear-gradient(135deg,#ffd24a,#ff8a1f); box-shadow:0 8px 22px rgba(255,138,31,.4); }
.tq-pill{ display:inline-block; font-size:12px; font-weight:700; color:#bcd0ff; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.18); border-radius:999px; padding:3px 11px; margin-bottom:6px; }
#adminMain.tq-ui .tq-hero h2{ color:#fff; font-family:'Sora','Manrope',sans-serif; font-size:26px; letter-spacing:-.01em; margin:0; }
#adminMain.tq-ui .tq-hero .sub{ color:#b9c8ee; font-size:13.5px; margin-top:4px; }
.tq-quick{ display:flex; gap:8px; flex-wrap:wrap; position:relative; grid-column:1; }
.tq-quick button{ border:1px solid rgba(255,255,255,.2); background:rgba(255,255,255,.1); color:#fff; font:inherit; font-size:13.5px; font-weight:700; padding:9px 15px; border-radius:999px; cursor:pointer; transition:background .15s, transform .15s; }
.tq-quick button:hover{ background:rgba(255,255,255,.2); transform:translateY(-1px); }
#adminMain.tq-ui .tq-hero > div:last-child{ grid-column:2; grid-row:1 / span 2; align-self:start; position:relative; }
#adminMain.tq-ui .tq-hero .btn-ghost{ background:rgba(255,255,255,.1); color:#fff; border:1px solid rgba(255,255,255,.22); border-radius:999px; font-size:13px; padding:8px 14px; }
#adminMain.tq-ui .tq-hero .btn-ghost:hover{ background:rgba(255,255,255,.2); }

/* menu: tile bar across the top */
#adminMain.tq-tch.adm-side{ display:block; }
#adminMain.tq-tch.adm-side > .adm-nav{ position:static; max-height:none; overflow:visible; background:none; border:0; padding:0; margin:0 0 18px; }
#adminMain.tq-tch .adm-gt{ display:none; }
#adminMain.tq-tch .adm-grp.shut .adm-gi{ display:grid; }
#adminMain.tq-tch .adm-gi{ display:grid; grid-template-columns:repeat(auto-fit,minmax(176px,1fr)); gap:10px; }
#adminMain.tq-tch .adm-it{ display:flex; align-items:center; gap:11px; padding:11px 12px; border-radius:18px; background:#fff; border:1.5px solid #e3eaf9; box-shadow:0 2px 6px rgba(15,40,90,.04); color:#0b1b33; margin:0; transition:transform .15s, box-shadow .15s; position:relative; }
#adminMain.tq-tch .adm-it:hover{ transform:translateY(-2px); box-shadow:0 12px 26px rgba(15,40,90,.1); background:#fff; }
#adminMain.tq-tch .adm-it.on{ background:linear-gradient(135deg,#2f5bff,#5b3df5); color:#fff; border-color:transparent; box-shadow:0 12px 28px rgba(47,91,255,.35); }
.tq-ic{ font-style:normal; font-size:20px; width:40px; height:40px; border-radius:13px; background:#eef3ff; display:grid; place-items:center; flex:0 0 auto; }
.adm-it.on .tq-ic{ background:rgba(255,255,255,.2); }
.tq-tt{ display:flex; flex-direction:column; min-width:0; text-align:left; }
.tq-tt b{ font-family:'Sora','Manrope',sans-serif; font-size:14px; font-weight:700; line-height:1.2; }
.tq-tt small{ font-size:11.5px; line-height:1.25; color:#5a6788; font-weight:500; }
.adm-it.on .tq-tt small{ color:#d6e0ff; }
#adminMain.tq-tch .adm-bd{ position:absolute; top:-6px; right:-4px; }

/* cards */
#adminMain.tq-ui .section-card{ border:1px solid #e3eaf9; border-radius:24px; padding:24px 26px; box-shadow:0 8px 28px rgba(15,40,90,.06); margin-top:0; }
#adminMain.tq-ui .section-card > h4{ font-family:'Sora','Manrope',sans-serif; font-size:19px; letter-spacing:-.01em; margin:0 0 4px; }
#adminMain.tq-ui .btn-primary{ background:linear-gradient(135deg,#2f5bff,#5b3df5); border:0; border-radius:12px; box-shadow:0 8px 18px rgba(47,91,255,.28); }
#adminMain.tq-ui .btn-ghost{ border-radius:12px; }
#adminMain.tq-ui input, #adminMain.tq-ui select, #adminMain.tq-ui textarea{ border-radius:12px; }

/* start-here steps */
.tq-welcome .sub{ margin:0 0 16px; color:#5a6788; }
.tq-steps{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.tq-step{ display:flex; gap:14px; align-items:flex-start; padding:16px; border-radius:20px; background:linear-gradient(160deg,#f6f9ff,#eef3ff); border:1px solid #dfe8fb; }
.tq-step i{ font-style:normal; font-size:24px; width:48px; height:48px; border-radius:16px; background:#fff; display:grid; place-items:center; flex:0 0 auto; box-shadow:0 4px 12px rgba(47,91,255,.12); }
.tq-step b{ display:block; font-family:'Sora','Manrope',sans-serif; font-size:15px; margin-bottom:3px; }
.tq-step span{ font-size:13.5px; line-height:1.55; color:#46557a; }
.tq-tip{ margin:16px 0 0; font-size:13px; color:#5a6788; background:#fff8e1; border-radius:12px; padding:10px 14px; }

/* batch / class list items */
#adminMain.tq-ui .section-card [class*="bt-item"], #adminMain.tq-ui .bt-card{ border-radius:20px; }

@media(max-width:760px){
  #adminMain.tq-ui{ padding:10px 12px 90px; }
  #adminMain.tq-ui .admin-header.tq-hero{ grid-template-columns:1fr; padding:18px; border-radius:22px; }
  #adminMain.tq-ui .tq-hero > div:last-child{ grid-column:1; grid-row:auto; }
  #adminMain.tq-ui .tq-hero h2{ font-size:21px; }
  .tq-av{ width:50px; height:50px; font-size:18px; border-radius:16px; }
  .tq-quick{ display:none; }
  #adminMain.tq-tch.adm-side > .adm-nav{ position:fixed; left:0; right:0; bottom:0; top:auto; z-index:60; margin:0; padding:6px 6px calc(6px + env(safe-area-inset-bottom)); background:rgba(255,255,255,.96); backdrop-filter:blur(14px); border-top:1px solid #e3eaf9; box-shadow:0 -8px 24px rgba(15,40,90,.1); }
  #adminMain.tq-tch .adm-tg{ display:none; }
  #adminMain.tq-tch .adm-list{ display:block !important; max-height:none; border:0; margin:0; padding:0; overflow-x:auto; }
  #adminMain.tq-tch .adm-gi{ display:flex; gap:4px; overflow-x:auto; scrollbar-width:none; }
  #adminMain.tq-tch .adm-it{ flex:0 0 74px; flex-direction:column; gap:2px; padding:6px 2px; border:0; box-shadow:none; background:none; text-align:center; border-radius:14px; }
  #adminMain.tq-tch .adm-it:hover{ transform:none; box-shadow:none; }
  #adminMain.tq-tch .adm-it.on{ background:#eef3ff; color:#2f5bff; box-shadow:none; }
  .tq-ic{ width:34px; height:34px; font-size:19px; background:none; }
  .adm-it.on .tq-ic{ background:#dfe8ff; }
  .tq-tt{ align-items:center; text-align:center; } .tq-tt small{ display:none; }
  .tq-tt b{ font-size:11px; font-weight:700; }
  .adm-it.on .tq-tt b{ color:#2f5bff; }
  #adminMain.tq-ui .section-card{ padding:18px 16px; border-radius:20px; }
  .tq-steps{ grid-template-columns:1fr; }
}
.tq-step > div > b{ display:block; }
.tq-step span b{ display:inline; font-family:inherit; font-size:inherit; margin:0; color:#0b1b33; }
.tq-step span{ display:block; }
@media(min-width:761px){ #adminMain.tq-tch .adm-gi{ grid-template-columns:repeat(4,minmax(0,1fr)); } }
#adminMain.tq-tch .adm-it{ justify-content:flex-start; }
#adminMain.tq-ui .ot, #adminMain.tq-ui .section-card > div{ max-width:none; margin-left:0; margin-right:0; }

/* ---- Admin / Super Admin: dark side menu with group icons ---- */
#adminMain.tq-adm.adm-side{ grid-template-columns:268px minmax(0,1fr); column-gap:22px; }
#adminMain.tq-adm.adm-side > .adm-nav{ background:linear-gradient(170deg,#0a1238,#11235f); border:0; border-radius:26px; padding:14px 12px; box-shadow:0 18px 40px rgba(15,33,106,.22); top:16px; }
#adminMain.tq-adm .adm-gt{ color:#9fb4ea; font-family:'Sora','Manrope',sans-serif; font-size:13px; font-weight:700; padding:10px 10px; border-radius:12px; gap:10px; justify-content:flex-start; }
#adminMain.tq-adm .adm-gt .tq-gi{ font-style:normal; font-size:16px; width:30px; height:30px; display:grid; place-items:center; border-radius:10px; background:rgba(255,255,255,.1); }
#adminMain.tq-adm .adm-gt span{ flex:1; text-align:left; }
#adminMain.tq-adm .adm-gt:hover{ background:rgba(255,255,255,.07); }
#adminMain.tq-adm .adm-it{ color:#e6edff; font-size:13.5px; font-weight:600; border-radius:12px; padding:9px 12px 9px 50px; }
#adminMain.tq-adm .adm-it:hover{ background:rgba(255,255,255,.1); }
#adminMain.tq-adm .adm-it.on{ background:linear-gradient(135deg,#2f5bff,#5b3df5); color:#fff; box-shadow:0 8px 20px rgba(47,91,255,.4); }
#adminMain.tq-adm .adm-bd{ background:#ffd24a; }
#adminMain.tq-adm .adm-todo{ border:1.5px solid #e3eaf9; border-radius:18px; background:linear-gradient(160deg,#f8faff,#f0f4ff); padding:14px 44px 14px 18px; transition:transform .15s, box-shadow .15s; }
#adminMain.tq-adm .adm-todo:hover{ transform:translateY(-2px); box-shadow:0 12px 26px rgba(15,40,90,.1); border-color:#2f5bff; }
#adminMain.tq-adm .adm-todo b{ font-family:'Sora','Manrope',sans-serif; }
#adminMain.tq-adm .adm-todo i{ width:30px; height:30px; border-radius:50%; background:#e8eeff; display:grid; place-items:center; font-size:20px; line-height:1; }
#adminMain.tq-adm table{ border-collapse:separate; border-spacing:0; }
#adminMain.tq-adm th{ background:#f3f6ff; }
@media(max-width:760px){
  #adminMain.tq-adm.adm-side > .adm-nav{ border-radius:20px; padding:6px; top:8px; background:linear-gradient(135deg,#0a1238,#11235f); }
  #adminMain.tq-adm .adm-tg span{ color:#9fb4ea; } #adminMain.tq-adm .adm-tg b{ color:#fff; } #adminMain.tq-adm .adm-tg i{ color:#9fb4ea; }
  #adminMain.tq-adm .adm-list{ border-top-color:rgba(255,255,255,.15); }
  #adminMain.tq-adm .adm-it{ padding:10px 12px; }
}

/* 3D icons in the teacher/admin menus (replaces emoji) */
.tq-3d{ width:26px; height:26px; display:block; object-fit:contain; }
.tq-step i .tq-3d{ width:32px; height:32px; }
.tq-gi .tq-3d{ width:20px; height:20px; }
.tq-quick button{ display:inline-flex; align-items:center; gap:7px; }
.tq-quick .tq-3d.q{ width:20px; height:20px; }
@media(max-width:760px){ .tq-ic .tq-3d{ width:24px; height:24px; } }

/* ---------- teacher Today ---------- */
.tq-today h5{ margin:18px 0 8px; font-size:15px; color:#0b1b4a; }
.tq-today .tq-date{ margin:-4px 0 6px; }
.tq-list{ display:grid; gap:10px; }
.tq-row{ display:grid; grid-template-columns:86px minmax(0,1fr) auto auto; align-items:center; gap:12px; background:#f7f9ff; border:1.5px solid #e1e8f5; border-radius:16px; padding:12px 14px; }
.tq-when b{ display:block; font-size:17px; color:#0b1b4a; } .tq-when span{ font-size:12.5px; color:#5b6b85; }
.tq-lrn{ min-width:0; } .tq-lrn b{ display:block; font-size:15.5px; color:#0b1b4a; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; } .tq-lrn span{ display:block; font-size:13px; color:#5b6b85; }
.tq-tag{ font-size:12px; font-weight:800; border-radius:99px; padding:4px 10px; background:#eef3ff; color:#1d3fbf; white-space:nowrap; }
.tq-tag.ok{ background:#dcfce7; color:#166534; } .tq-tag.bad{ background:#fee2e2; color:#991b1b; } .tq-tag.due{ background:#fff4cc; color:#7a5600; }
.tq-acts{ display:flex; flex-wrap:wrap; gap:6px; justify-content:flex-end; }
.tq-b{ font:inherit; font-size:14px; font-weight:700; min-height:40px; padding:0 14px; border-radius:12px; border:1.5px solid #cfdcff; background:#fff; color:#1d3a78; cursor:pointer; display:inline-flex; align-items:center; text-decoration:none; }
.tq-b.ok{ background:#16a34a; border-color:#16a34a; color:#fff; } .tq-b.go{ background:#2f5bff; border-color:#2f5bff; color:#fff; } .tq-b.ghost{ border-color:transparent; background:none; color:#5b6b85; text-decoration:underline; }
.tq-b:disabled{ opacity:.6; }
.tq-empty{ margin:0; padding:12px 14px; border:1.5px dashed #dbe5f7; border-radius:14px; color:#5b6b85; font-size:14px; }
.tq-warn{ margin:10px 0; padding:10px 14px; border-radius:12px; background:#fff7ed; border:1px solid #fed7aa; color:#7c2d12; font-size:14px; }
.tq-link{ background:none; border:0; padding:4px 0; color:#1d4ed8; font:inherit; font-weight:700; cursor:pointer; text-decoration:underline; text-underline-offset:3px; }
.tq-more{ display:flex; flex-wrap:wrap; gap:6px 18px; margin-top:16px; }
@media(max-width:640px){
  .tq-row{ grid-template-columns:78px minmax(0,1fr) auto; }
  .tq-when b{ font-size:16px; white-space:nowrap; }
  #adminMain.tq-tch{ padding-bottom:110px; }
  .tq-acts{ grid-column:1 / -1; justify-content:stretch; }
  .tq-acts > *{ flex:1; justify-content:center; }
  .tq-b.ghost{ flex:0 0 100%; }
  .tq-b{ white-space:nowrap; padding:0 10px; font-size:13.5px; }
}

/* ---------- admin: today's key numbers ---------- */
.adm-kpis{ display:grid; grid-template-columns:repeat(auto-fit,minmax(160px,1fr)); gap:10px; margin:6px 0 18px; }
.adm-kpi{ display:grid; grid-template-columns:40px 1fr; grid-template-rows:auto auto auto; column-gap:12px; align-items:center; text-align:left; font:inherit; cursor:pointer;
  background:#fff; border:1.5px solid #e1e8f5; border-radius:16px; padding:14px; box-shadow:0 6px 18px rgba(15,40,90,.05); transition:border-color .15s; }
.adm-kpi:hover{ border-color:#9fb6ff; }
.adm-kpi:focus-visible{ outline:3px solid #ffc928; outline-offset:2px; }
.adm-kpi img{ grid-row:1 / 4; width:40px; height:40px; }
.adm-kpi b{ font-size:24px; line-height:1.1; color:#0b1b4a; font-variant-numeric:tabular-nums; }
.adm-kpi span{ font-size:13.5px; font-weight:700; color:#1d3a78; }
.adm-kpi small{ font-size:12px; color:#5b6b85; }
@media(max-width:560px){ .adm-kpis{ grid-template-columns:1fr 1fr; } .adm-kpi{ grid-template-columns:1fr; } .adm-kpi img{ grid-row:auto; width:30px; height:30px; margin-bottom:4px; } .adm-kpi b{ font-size:21px; } }
.tq-b.log{ background:#2f5bff; border-color:#2f5bff; color:#fff; }
.tq-later{ font-size:13px; color:#5b6b85; align-self:center; padding:0 4px; }
.adm-sub{ margin:8px 0 8px; font-size:13px; font-weight:800; color:#5b6b85; }
@media(max-width:640px){
  .tq-acts .tq-b.go{ flex:0 0 100%; }
  .tq-later{ flex:0 0 100%; text-align:center; }
}
@media(max-width:560px){ .adm-kpis:has(> :nth-child(3):last-child){ grid-template-columns:repeat(3,1fr); } .adm-kpis:has(> :nth-child(3):last-child) .adm-kpi small{ display:none; } }

/* ---------- new sign-ups to reply to ---------- */
.lq{ margin:6px 0 18px; border:1.5px solid #ffd36b; background:#fffaf0; border-radius:18px; padding:14px; }
.lq-h b{ display:block; font-size:16px; color:#6b4a00; } .lq-h span{ display:block; font-size:13px; color:#7a5600; margin:2px 0 10px; }
.lq-row{ display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:10px; align-items:center; background:#fff; border:1px solid #f1e1b0; border-radius:14px; padding:10px 12px; margin-top:8px; }
.lq-row.late .lq-t{ color:#b42318; font-weight:800; }
.lq-row.done{ opacity:.55; } .lq-row.done .lq-t{ color:#166534; }
.lq-who b{ display:block; color:#0b1b4a; font-size:15px; } .lq-who span{ font-size:12.5px; color:#5b6b85; }
.lq-t{ font-size:12.5px; color:#5b6b85; white-space:nowrap; }
.lq-a{ display:flex; gap:6px; }
.lq-b{ display:inline-flex; align-items:center; min-height:38px; padding:0 12px; border-radius:10px; border:1.5px solid #cfdcff; background:#fff; color:#1d3a78; font-weight:700; font-size:14px; text-decoration:none; }
.lq-b.wa{ background:#25d366; border-color:#25d366; color:#fff; }
@media(max-width:560px){ .lq-row{ grid-template-columns:minmax(0,1fr) auto; } .lq-a{ grid-column:1 / -1; } .lq-a .lq-b{ flex:1; justify-content:center; } }
.pr-list{ display:grid; gap:8px; margin-top:10px; }
.pr-row{ display:grid; grid-template-columns:minmax(0,1fr) auto; gap:10px; align-items:center; background:#f7f9ff; border:1.5px solid #e1e8f5; border-radius:14px; padding:10px 12px; }
.pr-row.done{ background:#f0fdf4; border-color:#bbf7d0; }
.pr-who b{ display:block; color:#0b1b4a; } .pr-who span{ display:block; font-size:13px; color:#33415c; } .pr-who small{ font-size:12px; color:#5b6b85; }
.pr-a{ display:flex; gap:6px; }
@media(max-width:560px){ .pr-row{ grid-template-columns:1fr; } .pr-a .lq-b{ flex:1; justify-content:center; } }
.lq-b{ white-space:nowrap; justify-content:center; } @media(max-width:560px){ .lq-b{ font-size:13.5px; padding:0 10px; } }

/* ---------- lead queue, round 3: institute pill, late rows in red, contacted ---------- */
.lq-who{ min-width:0; } .lq-who span{ display:block; line-height:1.45; overflow-wrap:anywhere; }
.lq-who .lq-pill{ display:inline-block; vertical-align:2px; margin-left:6px; font-size:11.5px; font-weight:800; line-height:1; color:#5b21b6; background:#ede9fe; border-radius:99px; padding:4px 8px; }
.lq-row.late{ border-color:#f5b5b0; background:#fff6f5; }
.lq-row.late .lq-t{ color:#fff; background:#d92d20; border-radius:99px; padding:4px 9px; font-weight:800; font-size:12px; }
.lq-row.done{ opacity:1; background:#f4fbf6; border-color:#bfe6cb; }
.lq-row.done .lq-who, .lq-row.done .lq-a{ opacity:.6; }
.lq-row.done .lq-t{ color:#166534; background:#dcfce7; border-radius:99px; padding:4px 9px; font-weight:800; font-size:12px; }

/* ---------- teacher on a phone (<900px): slim header, bottom bar of 4, More sheet ---------- */
.tq-tbar, .tq-slim{ display:none; }
@media(max-width:899px){
  #adminMain.tq-tch.adm-side > .adm-nav{ display:none !important; }
  #adminMain.tq-tch{ padding-bottom:96px !important; }
  #adminMain.tq-tch .tq-tbar{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:4px; position:fixed; left:0; right:0; bottom:0; z-index:60; padding:6px 6px calc(6px + env(safe-area-inset-bottom)); background:rgba(255,255,255,.97); -webkit-backdrop-filter:blur(14px); backdrop-filter:blur(14px); border-top:1px solid #e3eaf9; box-shadow:0 -8px 24px rgba(15,40,90,.1); }
  .tq-tbar button{ display:flex; flex-direction:column; align-items:center; gap:3px; border:0; background:none; font:inherit; font-size:12.5px; font-weight:700; color:#33415c; padding:6px 2px; border-radius:14px; cursor:pointer; min-height:56px; }
  .tq-tbar button img{ width:26px; height:26px; }
  .tq-tbar button span{ white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:100%; }
  .tq-tbar button.on{ background:#eef3ff; color:#2f5bff; }
  .tq-dots{ display:flex; gap:3px; align-items:center; justify-content:center; height:26px; } .tq-dots b{ width:6px; height:6px; border-radius:50%; background:currentColor; }
  /* slim header: about 64px, name + date */
  #adminMain.tq-tch .admin-header.tq-hero{ display:block; padding:10px 14px; border-radius:18px; margin-bottom:12px; min-height:0; }
  #adminMain.tq-tch .admin-header.tq-hero:before{ display:none; }
  #adminMain.tq-tch .tq-hero > :not(.tq-slim){ display:none !important; }
  #adminMain.tq-tch .tq-slim{ display:flex; align-items:center; gap:12px; }
  #adminMain.tq-tch .tq-slim .tq-av{ width:40px; height:40px; border-radius:13px; font-size:15px; box-shadow:none; }
  #adminMain.tq-tch .tq-slim b{ display:block; color:#fff; font-family:'Sora','Manrope',sans-serif; font-size:16px; line-height:1.2; }
  #adminMain.tq-tch .tq-slim > div > span{ display:block; color:#b9c8ee; font-size:13px; }
  #adminMain.tq-tch .tq-slim .tq-av{ color:#2b1d00; }
}
.tq-sheet{ position:fixed; inset:0; z-index:200; }
.tq-sheet-bg{ position:absolute; inset:0; background:rgba(7,13,36,.45); }
.tq-sheet-p{ position:absolute; left:0; right:0; bottom:0; max-height:80vh; overflow:auto; background:#fff; border-radius:22px 22px 0 0; padding:10px 14px calc(16px + env(safe-area-inset-bottom)); box-shadow:0 -12px 40px rgba(7,13,36,.25); }
.tq-sheet-h{ display:flex; align-items:center; justify-content:space-between; padding:6px 4px 8px; } .tq-sheet-h b{ font-family:'Sora','Manrope',sans-serif; font-size:18px; color:#0b1b4a; }
.tq-sheet-x{ border:0; background:#eef3ff; color:#1d3a78; width:38px; height:38px; border-radius:50%; font-size:24px; line-height:1; cursor:pointer; }
.tq-sheet-i{ display:flex; align-items:center; gap:12px; width:100%; text-align:left; border:0; background:none; font:inherit; padding:11px 8px; border-radius:14px; cursor:pointer; color:#0b1b33; min-height:52px; }
.tq-sheet-i.on{ background:#eef3ff; }
.tq-sheet-i img{ width:30px; height:30px; flex:0 0 30px; }
.tq-sheet-i b{ display:block; font-size:15.5px; } .tq-sheet-i small{ display:block; font-size:13px; color:#5b6b85; }
.tq-sheet-i.plain{ padding-left:12px; } .tq-sheet-i.plain b{ color:#1d3a78; font-weight:700; }
.tq-sheet-sep{ height:1px; background:#e3eaf9; margin:6px 4px; }
@media(min-width:900px){ .tq-sheet{ display:none; } }

/* Google Meet attendance line under a class */
.tq-lrn .tq-meet{display:block;margin-top:3px;font-size:12.5px;line-height:1.35;color:#1a7f4b;font-weight:600}
/* round 4: lead queue details as chips; the separator dot sits before each chip and is clipped at a line start */
.lq-who .lq-meta{ display:block; overflow:hidden; }
.lq-who .lq-meta .lq-in{ display:flex; flex-wrap:wrap; margin-left:-16px; line-height:1.45; }
.lq-who .lq-meta i{ font-style:normal; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:100%; min-width:0; }
.lq-who .lq-meta i::before{ content:'\00b7'; display:inline-block; width:16px; text-align:center; color:#9aa6bd; }
/* round 4: parent updates — add a parent number inline, nudge idle students first */
.pr-add{ margin:6px 0 0; } .pr-add b{ display:block; font-size:12.5px; color:#1d3a78; margin-bottom:4px; }
.pr-add-f{ display:flex; gap:6px; flex-wrap:wrap; }
.pr-add-f input{ flex:1 1 120px; min-width:0; height:38px; padding:0 10px; border:1.5px solid #d5e0f5; border-radius:10px; font:inherit; font-size:14px; background:#fff; }
.pr-add-f .lq-b{ flex:none; }
.pr-add-e{ display:block; color:#b42318; font-size:12.5px; margin-top:4px; } .pr-add-e:empty{ display:none; }
.lq-b.nudge{ background:#fff4cc; border-color:#f1d78a; color:#6b4a00; }
.pr-row.idle{ background:#fffdf5; border-color:#f3e3b5; }
@media(max-width:560px){ .pr-add-f{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto; } .pr-add-f input{ padding:0 8px; } .pr-add-f .lq-b{ padding:0 12px; } }
/* round 4: full student names (up to 2 lines), short day labels */
.tq-lrn b{ white-space:normal !important; overflow:visible !important; text-overflow:clip !important; overflow-wrap:anywhere; line-height:1.3; }
.tq-when span{ white-space:nowrap; }
@media(max-width:640px){
  .tq-row{ grid-template-columns:minmax(0,1fr) auto; row-gap:6px; }
  .tq-row .tq-when{ grid-column:1; grid-row:1; display:flex; align-items:baseline; gap:8px; flex-wrap:wrap; }
  .tq-row > .tq-tag{ grid-column:2; grid-row:1; }
  .tq-row .tq-lrn{ grid-column:1 / -1; grid-row:2; }
  .tq-row .tq-acts{ grid-row:3; }
}

/* unfinished payments + paid orders not set up (lead queue) */
.lq.lq-pay{ border-color:#bfdbfe; background:linear-gradient(180deg,#eff6ff,#fff); }
.lq.lq-pay .lq-h b{ color:#1e3a8a; }
.lq-who .lq-pill.pay{ color:#1e40af; background:#dbeafe; }
.lq.lq-stuck{ border-color:#fecaca; background:#fef2f2; }
.lq.lq-stuck .lq-h b{ color:#b42318; }
.lq-b.ghost{ background:transparent; border:1px dashed #cbd5e1; color:#475569; cursor:pointer; font:inherit; }
