/* COGO group workspace r1: restricted to the three management screens. */
#cogoGroupsPanel[data-gw1]{--gw-bg:var(--card,#fff);--gw-soft:var(--bg,#f5f7fc);--gw-text:var(--text,#20364d);--gw-muted:var(--muted,#66768c);--gw-line:var(--line,#dfe6f0);--gw-accent:#4a5be7;--gw-tint:#eef0ff;color:var(--gw-text)}
#cogoGroupsPanel[data-gw1] *{box-sizing:border-box}
#cogoGroupsPanel[data-gw1] [hidden]{display:none!important}
.teacher-group-page298:has(#cogoGroupsPanel[data-gw1]){padding:24px!important}
#cogoGroupsPanel[data-gw1]>.cogo-g-heading{gap:12px!important;align-items:center!important;margin:0 0 12px!important;padding:0 0 18px!important}
#cogoGroupsPanel[data-gw1]>.cogo-g-heading h2{font-size:clamp(18px,1.6vw,23px)!important;line-height:1.45;margin:7px 0 4px!important}
#cogoGroupsPanel[data-gw1]>.cogo-g-heading p{font-size:13px;margin:0 0 5px!important;line-height:1.55}
#cogoGroupsPanel[data-gw1]>.cogo-g-heading small{font-size:12px}
#cogoGroupsPanel[data-gw1]>.cgr-tabs{margin:0 0 24px!important;padding:0!important;gap:18px!important;min-height:42px}
#cogoGroupsPanel[data-gw1]>.cgr-tabs button{padding:10px 4px!important;min-height:42px;font-size:13px}
#cogoGroupsPanel[data-gw1] .gw-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 20px}
#cogoGroupsPanel[data-gw1] .gw-heading h3{font-size:21px;line-height:1.4;letter-spacing:-.5px;margin:0 0 5px}
#cogoGroupsPanel[data-gw1] .gw-heading p{font-size:13px;line-height:1.6;color:var(--gw-muted);margin:0}
#cogoGroupsPanel[data-gw1] .btn{border-radius:10px;min-height:40px;padding:9px 14px;font-size:13px;line-height:1.4;box-shadow:none;white-space:normal}
#cogoGroupsPanel[data-gw1] .btn.outline{color:var(--gw-text);background:var(--gw-bg);border:1px solid var(--gw-line)}
#cogoGroupsPanel[data-gw1] .gw-primary,#cogoGroupsPanel[data-gw1] [data-g-action=newclass],#cogoGroupsPanel[data-gw1] [data-g-action=member]{background:var(--gw-accent)!important;color:#fff!important;border:1px solid var(--gw-accent)!important}
#cogoGroupsPanel[data-gw1] :is(button,input,select):focus-visible{outline:3px solid #8795ff!important;outline-offset:3px!important;box-shadow:none!important}
#cogoGroupsPanel[data-gw1] button:disabled{cursor:default;opacity:.5}
#cogoGroupsPanel[data-gw1] :is(input,select){font-family:inherit;font-size:13px;border:1px solid var(--gw-line);border-radius:9px;background:var(--gw-bg);color:var(--gw-text);height:42px;min-height:42px;min-width:0;padding:9px 12px;box-shadow:none;max-width:100%}
#cogoGroupsPanel[data-gw1] input::placeholder{color:var(--gw-muted);opacity:.85}
#cogoGroupsPanel[data-gw1] .gw-status-tabs{display:flex;gap:6px;flex-wrap:wrap;width:fit-content;max-width:100%;padding:5px;margin:0 0 20px;border-radius:12px;background:var(--gw-soft);border:1px solid var(--gw-line)}
#cogoGroupsPanel[data-gw1] .gw-status-tabs button{display:flex;align-items:center;gap:8px;justify-content:center;border:0;min-height:40px;padding:8px 15px;background:transparent;color:var(--gw-muted);border-radius:8px;font-family:inherit;font-weight:600;font-size:13px}
#cogoGroupsPanel[data-gw1] .gw-status-tabs button[aria-current=page]{background:var(--gw-bg);color:var(--gw-accent);box-shadow:0 2px 6px #20364d0a}
#cogoGroupsPanel[data-gw1] .gw-status-tabs button>span{padding:2px 6px;border-radius:6px;background:var(--gw-tint);font-size:11px;min-width:21px;color:var(--gw-accent);font-weight:700}
#cogoGroupsPanel[data-gw1] .gw-list-toolbar,#cogoGroupsPanel[data-gw1] .gw-class-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:0 0 14px}
#cogoGroupsPanel[data-gw1] .gw-list-toolbar>p{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0;font-size:14px}
#cogoGroupsPanel[data-gw1] .gw-list-toolbar>p>span{font-size:12px;color:var(--gw-muted)}
#cogoGroupsPanel[data-gw1] .gw-search{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--gw-muted);min-width:0;max-width:100%}
#cogoGroupsPanel[data-gw1] .gw-search>span{white-space:nowrap}
#cogoGroupsPanel[data-gw1] .gw-search input{width:240px;max-width:100%;padding-inline:12px;height:40px;min-height:40px}
#cogoGroupsPanel[data-gw1] .gw-roster{border:1px solid var(--gw-line);border-radius:14px;overflow:hidden}
#cogoGroupsPanel[data-gw1] .gw-member-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;border-bottom:1px solid var(--gw-line);background:var(--gw-bg)}
#cogoGroupsPanel[data-gw1] .gw-member-row:last-child{border-bottom:0}
#cogoGroupsPanel[data-gw1] .gw-person{display:flex;align-items:center;gap:12px;min-width:0}
#cogoGroupsPanel[data-gw1] .gw-person>div{min-width:0}
#cogoGroupsPanel[data-gw1] .gw-initial{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border-radius:14px;background:var(--gw-tint);color:var(--gw-accent);font-size:17px;font-weight:750}
#cogoGroupsPanel[data-gw1] .gw-person b{display:block;font-size:14px;line-height:1.5;overflow-wrap:anywhere}
#cogoGroupsPanel[data-gw1] .gw-person .member-link283{font-size:inherit;line-height:inherit;text-align:left;white-space:normal;overflow-wrap:anywhere;color:inherit}
#cogoGroupsPanel[data-gw1] .gw-person small{display:block;color:var(--gw-muted);font-size:11px;line-height:1.5;margin:2px 0 4px;overflow-wrap:anywhere;max-width:none}
#cogoGroupsPanel[data-gw1] .gw-class-label{display:inline-block;color:var(--gw-muted);font-size:12px;line-height:1.5;overflow-wrap:anywhere}
#cogoGroupsPanel[data-gw1] .gw-member-actions{display:flex;gap:8px;flex-wrap:wrap;flex-shrink:0;align-items:center}
#cogoGroupsPanel[data-gw1] .gw-footer{display:flex!important;gap:8px;align-items:center;margin:16px 0 0!important;padding:0!important;border:0!important;flex-wrap:wrap}
#cogoGroupsPanel[data-gw1] .gw-page-count{margin-right:auto;color:var(--gw-muted);font-size:12px}
#cogoGroupsPanel[data-gw1] .gw-empty,#cogoGroupsPanel[data-gw1] .gw-search-empty{padding:36px 20px;margin:0;text-align:center;line-height:1.7;color:var(--gw-muted);grid-column:1/-1}
#cogoGroupsPanel[data-gw1] .gw-empty strong{font-size:15px;color:var(--gw-text)}
#cogoGroupsPanel[data-gw1] .gw-empty p{margin:6px 0 0;font-size:13px}
#cogoGroupsPanel[data-gw1] .gw-class-toolbar{background:var(--gw-soft);border:1px solid var(--gw-line);border-radius:12px;padding:14px 16px}
#cogoGroupsPanel[data-gw1] .gw-class-summary{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
#cogoGroupsPanel[data-gw1] .gw-class-summary>span{display:flex;align-items:baseline;gap:7px;font-size:13px}
#cogoGroupsPanel[data-gw1] .gw-class-summary b{font-size:22px;font-weight:750;color:var(--gw-accent)}
#cogoGroupsPanel[data-gw1] .gw-class-summary small{font-size:12px;color:var(--gw-muted)}
#cogoGroupsPanel[data-gw1] .gw-classes{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(240px,100%),1fr));gap:14px;margin:18px 0}
#cogoGroupsPanel[data-gw1] .gw-class-card{display:flex;flex-direction:column;align-items:stretch;padding:20px;border:1px solid var(--gw-line);border-radius:14px;background:var(--gw-bg);min-width:0}
#cogoGroupsPanel[data-gw1] .gw-class-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px}
#cogoGroupsPanel[data-gw1] .gw-class-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--gw-tint);color:var(--gw-accent)}
#cogoGroupsPanel[data-gw1] .gw-class-icon svg{width:21px;height:21px}
#cogoGroupsPanel[data-gw1] .gw-tag{display:inline-flex;border-radius:6px;align-items:center;padding:4px 8px;line-height:1.5;font-size:11px;font-weight:700;white-space:nowrap}
#cogoGroupsPanel[data-gw1] .gw-active{color:#19775f;background:#eaf7f0}
#cogoGroupsPanel[data-gw1] .gw-archived{color:var(--gw-muted);background:var(--gw-soft)}
#cogoGroupsPanel[data-gw1] .gw-class-card h4{font-size:17px;line-height:1.5;letter-spacing:-.3px;margin:0 0 6px;overflow-wrap:anywhere}
#cogoGroupsPanel[data-gw1] .gw-class-card p{font-size:12px;line-height:1.65;color:var(--gw-muted);margin:0 0 20px}
#cogoGroupsPanel[data-gw1] .gw-class-card .btn{margin-top:auto;text-align:center;width:100%}
#cogoGroupsPanel[data-gw1] .gw-class-card[data-active=false]{background:var(--gw-soft);border-style:dashed}
#cogoGroupsPanel[data-gw1] .gw-footnote,#cogoGroupsPanel[data-gw1] .gw-readonly{font-size:12px;color:var(--gw-muted);line-height:1.6}
#cogoGroupsPanel[data-gw1] .gw-filter{display:grid!important;grid-template-columns:minmax(220px,1.05fr) minmax(180px,1.4fr) 115px auto;align-items:end;gap:12px;padding:16px;margin:0 0 18px;background:var(--gw-soft);border:1px solid var(--gw-line);border-radius:12px}
#cogoGroupsPanel[data-gw1] .gw-filter label{display:block;font-size:12px;line-height:1.5;font-weight:650}
#cogoGroupsPanel[data-gw1] .gw-filter label>small{font-size:10px;color:var(--gw-muted);font-weight:400;margin-left:5px}
#cogoGroupsPanel[data-gw1] .gw-filter label>select{display:block;width:100%;margin-top:7px}
#cogoGroupsPanel[data-gw1] .gw-date-control{display:flex;gap:6px;margin-top:7px}
#cogoGroupsPanel[data-gw1] .gw-date-control input{flex:1;min-width:0;width:140px}
#cogoGroupsPanel[data-gw1] .gw-date-control button{flex:0 0 auto;padding:8px 11px}
#cogoGroupsPanel[data-gw1] .gw-filter>.btn{height:42px;min-width:74px}
#cogoGroupsPanel[data-gw1] .gw-attendance-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0 0 24px}
#cogoGroupsPanel[data-gw1] .gw-stat{border:1px solid var(--gw-line);border-radius:12px;padding:14px 16px;background:var(--gw-bg);--status-color:#79869b}
#cogoGroupsPanel[data-gw1] [data-status=present]{--status-color:#16816a}
#cogoGroupsPanel[data-gw1] [data-status=late]{--status-color:#ab710b}
#cogoGroupsPanel[data-gw1] [data-status=absent]{--status-color:#ce5465}
#cogoGroupsPanel[data-gw1] [data-status=excused]{--status-color:#6b61cc}
#cogoGroupsPanel[data-gw1] .gw-stat>span{display:flex;align-items:center;gap:7px;font-size:12px;line-height:1.5;color:var(--gw-muted);margin-bottom:8px}
#cogoGroupsPanel[data-gw1] .gw-stat i{width:6px;height:6px;border-radius:50%;background:var(--status-color);flex-shrink:0}
#cogoGroupsPanel[data-gw1] .gw-stat strong{font-size:25px;line-height:1.1;letter-spacing:-.6px;font-weight:750}
#cogoGroupsPanel[data-gw1] .gw-stat>small{font-size:11px;color:var(--gw-muted);margin-left:5px}
#cogoGroupsPanel[data-gw1] .gw-attendance-table{border:1px solid var(--gw-line);border-radius:14px;margin:0 0 16px;overflow:hidden}
#cogoGroupsPanel[data-gw1] .gw-attendance-table table{table-layout:fixed;width:100%;min-width:0;text-align:left;border-collapse:collapse}
#cogoGroupsPanel[data-gw1] .gw-attendance-table th{background:var(--gw-soft);color:var(--gw-muted);font-size:12px;font-weight:600;padding:12px 16px;border-bottom:1px solid var(--gw-line)}
#cogoGroupsPanel[data-gw1] .gw-attendance-table th:nth-child(1){width:30%}
#cogoGroupsPanel[data-gw1] .gw-attendance-table th:nth-child(2){width:145px}
#cogoGroupsPanel[data-gw1] .gw-attendance-table th:last-child{width:112px}
#cogoGroupsPanel[data-gw1] .gw-attendance-table td{padding:16px;vertical-align:middle;border-bottom:1px solid var(--gw-line)}
#cogoGroupsPanel[data-gw1] .gw-attendance-table tr:last-child td{border-bottom:0}
#cogoGroupsPanel[data-gw1] .gw-attendance-table select{width:100%;border-left:3px solid var(--status-color,#8792a7)}
#cogoGroupsPanel[data-gw1] .gw-attendance-table input{width:100%;min-width:0}
#cogoGroupsPanel[data-gw1] .gw-save-cell{text-align:center}
#cogoGroupsPanel[data-gw1] .gw-save-cell>small{font-size:11px;color:var(--gw-muted);margin-top:5px;overflow-wrap:anywhere}
#cogoGroupsPanel[data-gw1] .gw-save-cell>small[data-state=error]{color:#c34a56}
#cogoGroupsPanel[data-gw1] .gw-save-cell>small[data-state=saved]{color:#16816a}
#cogoGroupsPanel[data-gw1] tr[data-dirty=true] [data-g-action=mark]{background:var(--gw-accent);border-color:var(--gw-accent);color:#fff}
#cogoGroupsPanel[data-gw1] .gw-optional{font-size:10px;font-weight:400;margin-left:4px}
#cogoGroupsPanel[data-gw1] .gw-help{font-size:12px;color:var(--gw-muted);line-height:1.7;margin-top:16px}
#cogoGroupsPanel[data-gw1] .gw-help summary{cursor:pointer;width:fit-content}
#cogoGroupsPanel[data-gw1] .gw-help p{max-width:800px;margin:8px 0}
.gw-sr-only{position:absolute!important;clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap}
html[data-theme=dark] #cogoGroupsPanel[data-gw1]{--gw-bg:#19243a;--gw-soft:#141f33;--gw-text:#e7edfa;--gw-muted:#a3b2cb;--gw-line:#34415b;--gw-accent:#9ba8ff;--gw-tint:#30395b}
html[data-theme=dark] #cogoGroupsPanel[data-gw1] :is(.gw-primary,[data-g-action=newclass],[data-g-action=member],tr[data-dirty=true] [data-g-action=mark]){color:#111e3c!important}
html[data-theme=dark] #cogoGroupsPanel[data-gw1] .gw-active{background:#193e39;color:#87d6bd}
html[data-theme=dark] #cogoGroupsPanel[data-gw1] .gw-save-cell>small[data-state=saved]{color:#87d6bd}
html[data-theme=dark] #cogoGroupsPanel[data-gw1] .gw-save-cell>small[data-state=error]{color:#ffadb8}
@media(max-width:1000px){#cogoGroupsPanel[data-gw1] .gw-filter{grid-template-columns:1fr 1fr}#cogoGroupsPanel[data-gw1] .gw-filter>label:nth-child(3){max-width:none}#cogoGroupsPanel[data-gw1] .gw-filter>.btn{justify-self:end;min-width:100px}#cogoGroupsPanel[data-gw1] .gw-attendance-table th:nth-child(1){width:29%}#cogoGroupsPanel[data-gw1] .gw-attendance-table th:nth-child(2){width:122px}#cogoGroupsPanel[data-gw1] .gw-attendance-table :is(th,td){padding:12px}}
@media(max-width:700px){.teacher-group-page298:has(#cogoGroupsPanel[data-gw1]){padding:16px!important}#cogoGroupsPanel[data-gw1]>.cogo-g-heading{padding-bottom:14px!important}#cogoGroupsPanel[data-gw1]>.cogo-g-heading>div:first-child{flex-basis:100%}#cogoGroupsPanel[data-gw1]>.cogo-g-heading>.btn{flex:1 1 auto}#cogoGroupsPanel[data-gw1] .gw-heading{align-items:flex-start;gap:12px}#cogoGroupsPanel[data-gw1] .gw-heading h3{font-size:19px}#cogoGroupsPanel[data-gw1] .gw-heading>button{flex-shrink:0}#cogoGroupsPanel[data-gw1] .gw-heading p{font-size:12px}#cogoGroupsPanel[data-gw1] .gw-filter{grid-template-columns:minmax(0,1fr);gap:14px;padding:14px}#cogoGroupsPanel[data-gw1] .gw-filter>.btn{width:100%;justify-self:stretch}#cogoGroupsPanel[data-gw1] .gw-attendance-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:20px}#cogoGroupsPanel[data-gw1] .gw-stat{padding:12px 10px}#cogoGroupsPanel[data-gw1] .gw-stat strong{font-size:22px}#cogoGroupsPanel[data-gw1] .gw-stat>span{font-size:11px;gap:5px}#cogoGroupsPanel[data-gw1] .gw-list-toolbar{align-items:flex-start;gap:12px}#cogoGroupsPanel[data-gw1] .gw-list-toolbar>p{gap:5px;flex-direction:column;align-items:flex-start}#cogoGroupsPanel[data-gw1] .gw-search{width:100%;flex-direction:column;align-items:flex-start;gap:5px}#cogoGroupsPanel[data-gw1] .gw-search input{width:100%}#cogoGroupsPanel[data-gw1] .gw-status-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}#cogoGroupsPanel[data-gw1] .gw-status-tabs button{padding:9px 8px}#cogoGroupsPanel[data-gw1] .gw-member-row{align-items:stretch;flex-direction:column;gap:14px;padding:16px}#cogoGroupsPanel[data-gw1] .gw-member-actions>.btn{flex:1}#cogoGroupsPanel[data-gw1] .gw-attendance-table table,#cogoGroupsPanel[data-gw1] .gw-attendance-table tbody{display:block}#cogoGroupsPanel[data-gw1] .gw-attendance-table thead{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}#cogoGroupsPanel[data-gw1] .gw-attendance-table tr{display:grid;grid-template-columns:minmax(0,1fr);padding:16px;border-bottom:1px solid var(--gw-line);gap:12px}#cogoGroupsPanel[data-gw1] .gw-attendance-table tr:last-child{border:0}#cogoGroupsPanel[data-gw1] .gw-attendance-table td{display:block;padding:0;border:0;min-width:0}#cogoGroupsPanel[data-gw1] .gw-attendance-table td[data-label]:before{content:attr(data-label);display:block;font-size:11px;color:var(--gw-muted);margin-bottom:5px}#cogoGroupsPanel[data-gw1] .gw-save-cell{display:flex!important;align-items:center;justify-content:flex-end;gap:10px}#cogoGroupsPanel[data-gw1] .gw-save-cell>small{order:-1;flex:1;text-align:left;margin:0}#cogoGroupsPanel[data-gw1] .gw-save-cell>.btn{min-width:90px}#cogoGroupsPanel[data-gw1] .gw-class-summary{gap:16px}#cogoGroupsPanel[data-gw1] .gw-footer{gap:7px}#cogoGroupsPanel[data-gw1] .gw-page-count{flex-basis:100%;margin-bottom:3px}}
@media(prefers-reduced-motion:reduce){#cogoGroupsPanel[data-gw1] *{animation:none!important;transition:none!important}}

#cogoGroupsPanel[data-gw1]>.cogo-g-heading>div:first-child{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:10px;row-gap:4px}
#cogoGroupsPanel[data-gw1]>.cogo-g-heading>div:first-child>.badge{grid-column:1;align-self:start;margin-top:3px}
#cogoGroupsPanel[data-gw1]>.cogo-g-heading h2{grid-column:2;margin:0!important}
#cogoGroupsPanel[data-gw1]>.cogo-g-heading :is(p,small){grid-column:2}
html[data-theme=dark] .teacher-group-page298:has(#cogoGroupsPanel[data-gw1]){background:#19243a!important;border-color:#34415b!important}
html[data-theme=dark] #cogoGroupsPanel[data-gw1]>.cogo-g-heading{border-color:#34415b}
html[data-theme=dark] #cogoGroupsPanel[data-gw1]>.cgr-tabs{background:transparent!important;border-color:#34415b}
html[data-theme=dark] #cogoGroupsPanel[data-gw1] :is(.gw-heading h3,.cogo-g-heading h2){color:var(--gw-text)}
html[data-theme=dark] #cogoGroupsPanel[data-gw1] .cogo-g-heading :is(p,small){color:var(--gw-muted)}
html[data-theme=dark] #cogoGroupsPanel[data-gw1] .cgr-tabs button[aria-selected=true]{color:var(--gw-accent)!important;border-bottom-color:var(--gw-accent)!important}
@media(min-width:701px){#cogoGroupsPanel[data-gw1] .gw-attendance-table td{padding:13px 16px}#cogoGroupsPanel[data-gw1] .gw-attendance-table .gw-person small{display:inline;margin:0 8px 0 0}#cogoGroupsPanel[data-gw1] .gw-attendance-table .gw-class-label{font-size:11px}#cogoGroupsPanel[data-gw1] .gw-attendance-table .gw-initial{width:38px;height:38px;flex-basis:38px;border-radius:12px}}
