.class-accounts-page{font-size:20px}
.ca-main{padding-top:24px}.ca-main .panel{margin-bottom:24px}.ca-main h2{font-size:24px}
.ca-main .hint{font-size:18px}
.ca-main button{font-size:20px}
.ca-grid{display:grid;grid-template-columns:repeat(3,1fr) auto;gap:16px;align-items:end;margin-top:16px}.ca-grid label{margin:0}
.ca-row label{max-width:480px}
.ca-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.ca-summary>div{background:#f2f6fd;border-radius:16px;padding:16px 20px}.ca-summary span{display:block;color:#5d7090;font-size:18px}.ca-summary strong{font-size:32px}
.ca-actions{display:flex;gap:16px;flex-wrap:wrap;align-items:flex-end;margin:16px 0}
.ca-inline{display:flex;gap:12px;align-items:flex-end}.ca-inline label{margin:0;width:200px}
.ca-table-wrap{overflow-x:auto}.ca-table,.ca-cards table{width:100%;border-collapse:collapse}.ca-table th,.ca-table td,.ca-cards th,.ca-cards td{text-align:left;padding:12px 10px;border-bottom:1px solid #e3eaf5;vertical-align:middle}
.ca-table th,.ca-cards th{color:#5d7090;font-weight:600}
.ca-table input{min-height:44px;padding:8px 12px;min-width:120px}
.ca-table button{min-height:44px;padding:8px 14px;font-size:18px;margin:4px 6px 4px 0}
.ca-tag{display:inline-block;padding:4px 12px;border-radius:10px;font-size:18px}.ca-ok{background:#e4f5ec;color:#227e56}.ca-no{background:#fff0e6;color:#a3531b}.ca-off{background:#eef1f5;color:#6d7a8c}
.ca-cards td{font-family:Consolas,monospace;font-size:22px}
tr.ca-disabled td{color:#8a96a8}
@media(max-width:700px){.ca-grid{grid-template-columns:1fr}.ca-summary{grid-template-columns:1fr 1fr}.ca-inline{flex-wrap:wrap}.ca-inline label{width:100%}
.ca-table thead{display:none}.ca-table tr{display:block;border:1px solid #e3eaf5;border-radius:14px;padding:12px;margin-bottom:12px}.ca-table td{display:block;border:0;padding:6px 0}.ca-table td::before{content:attr(data-label)'：';color:#5d7090;font-size:16px}}
@media print{.sidebar,.ca-classes,#ca-detail,#ca-list-panel,.ca-cards .ca-actions{display:none!important}.teacher-main{margin:0}}
.ca-table td:first-child,.ca-table th,.ca-tag{white-space:nowrap}.ca-table td:first-child{font-weight:700}
.ca-table td:last-child{min-width:300px}
@media(max-width:700px){.ca-table td:last-child{min-width:0}}

/* Compact account rows: actions live in a small 操作 menu. */
.ca-summary span{white-space:nowrap}
.ca-table td:last-child{min-width:0;width:1%;white-space:nowrap}
.ca-menu{position:relative;display:inline-block}
.ca-menu>summary{list-style:none;cursor:pointer;min-height:44px;display:inline-flex;align-items:center;padding:6px 16px;border:2px solid #44448d;border-radius:10px;color:#303078;font-weight:700;font-size:18px;background:#fff}
.ca-menu>summary::-webkit-details-marker{display:none}.ca-menu>summary::after{content:' ▾'}
.ca-menu>summary:focus-visible{outline:3px solid #e0aa21;outline-offset:2px}
.ca-menu-list{position:absolute;right:0;top:calc(100% + 4px);z-index:20;display:flex;flex-direction:column;gap:6px;min-width:150px;padding:8px;background:#fff;border:1px solid #d6deeb;border-radius:12px;box-shadow:0 8px 24px rgba(30,40,80,.18)}
.ca-table .ca-menu-list button{margin:0;width:100%;text-align:left}
.ca-exp{display:block;color:#5d7090;font-size:15px}
@media(max-width:700px){
.ca-table tr{display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:'acc tags menu' 'name name name';align-items:center;gap:6px 10px;padding:8px 10px;margin-bottom:8px}
.ca-table td{padding:0}.ca-table td::before{display:none}
.ca-table td:nth-child(1){grid-area:acc}.ca-table td:nth-child(2){grid-area:name}.ca-table td:nth-child(5){grid-area:menu}
.ca-table td:nth-child(3),.ca-table td:nth-child(4){display:inline-block}
.ca-table tr>td:nth-child(3){grid-area:tags;justify-self:start}.ca-table tr>td:nth-child(4){grid-area:tags;justify-self:end}
.ca-table td:nth-child(2) input{width:100%;min-height:40px;font-size:18px}
.ca-tag{font-size:15px;padding:2px 8px}.ca-exp{display:none}
.ca-table tr:has(td[colspan]){display:block}
}
@media(max-width:700px){
.ca-main{padding:12px 12px 24px}.ca-main .panel{padding:14px;margin-bottom:14px;border-radius:14px}.ca-main h1{font-size:28px;margin:0}.ca-main .page-title p{font-size:17px;margin:4px 0 0}
.ca-main h2{font-size:21px;margin:0 0 8px}
.ca-summary{gap:8px;margin-bottom:12px}.ca-summary>div{padding:8px 12px;border-radius:12px}.ca-summary span{font-size:16px}.ca-summary strong{font-size:24px}
.ca-actions{gap:10px;margin:10px 0}.ca-inline{flex-wrap:nowrap;width:100%}.ca-inline label{flex:1;width:auto;font-size:17px}.ca-inline input{min-height:44px}.ca-inline button{white-space:nowrap;min-height:44px;padding:8px 14px;font-size:18px}
.ca-main .hint{font-size:16px;margin:8px 0}
.ca-actions>button{flex:1;font-size:17px;padding:8px 10px}
.ca-table-wrap{overflow:visible}
.ca-table tr{grid-template-columns:auto auto 1fr auto;grid-template-areas:'acc c s menu' 'name name name name';gap:6px 8px;padding:8px 10px;margin-bottom:6px}
.ca-table tr>td:nth-child(3){grid-area:c}.ca-table tr>td:nth-child(4){grid-area:s;justify-self:start}
.ca-table td:nth-child(1){font-size:19px}
.ca-menu>summary{min-height:40px;padding:4px 12px;font-size:17px}
}
@media(max-width:700px){
.ca-table tr{gap:4px 6px;padding:6px 8px}.ca-table td{min-width:0}
.ca-table td:nth-child(2) input{min-height:36px;padding:4px 10px;font-size:17px}
.ca-tag{font-size:14px;padding:1px 6px}
.ca-menu>summary{min-height:36px;padding:2px 10px;font-size:16px}
.ca-main .ca-classes .ca-row label{margin:0}.ca-main details#ca-new{margin-top:8px}
}
@media(max-width:700px){.ca-actions>button{white-space:nowrap;font-size:16px;padding:8px 6px}}

/* V79-07 three/four consent marks */
.ca-mini{display:inline-block;padding:2px 8px;border-radius:8px;font-size:14px;white-space:nowrap}.ca-opt{background:#eaf1ff;color:#2f5fc4}
.ca-lack{color:#c62828;font-size:15px;margin-top:4px}.ca-can{color:#1f2a37;font-size:15px;margin-top:4px}
.ca-consent-dialog{border:1px solid #d7deea;border-radius:16px;padding:18px 22px;max-width:min(480px,94vw)}
.ca-consent-dialog label{display:block;margin:8px 0}.ca-consent-dialog input[name=ref]{display:block;width:100%;margin-top:4px}
.ca-dialog-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
