.zc-root{color:var(--text,#494451)}.zc-root [hidden]{display:none!important}.zc-root .panel{min-width:0}.zc-root .button-row{flex-wrap:wrap;gap:10px}.zc-root .field-label input,.zc-root .field-label select,.zc-root .field-label textarea{width:100%;max-width:100%;font:inherit;box-sizing:border-box}.zc-root button:disabled{opacity:.5;cursor:wait}.zc-status{min-height:1.7em;color:#7e6a91;font-size:13px;line-height:1.7;margin:14px 0;overflow-wrap:anywhere}.zc-status.error{color:#a66467}.zc-note{font-size:12px;line-height:1.9;color:#94869f}.zc-empty{text-align:center;padding:40px 22px;color:#93879e}.zc-empty>span{display:block;font-size:38px;margin-bottom:13px}.zc-empty h3{font-size:18px;color:#71627e;margin:10px 0}.zc-empty p{font-size:13px;line-height:1.8;max-width:430px;margin:10px auto 22px}.zc-overview-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(260px,1fr);gap:24px;align-items:start}.zc-overview-layout>aside>.panel{margin-bottom:20px}.zc-class-grid{display:grid;gap:15px;grid-template-columns:repeat(2,minmax(0,1fr))}.zc-class-card{display:block;text-align:left;background:#fbf9fd;border:1px solid #e9e0f2;border-radius:16px;padding:23px;cursor:pointer;font:inherit;min-width:0}.zc-class-card:hover{border-color:#bfa9d5;background:#f8f4fc}.zc-class-card h3{font-size:21px;margin:17px 0 10px;color:#675574;overflow-wrap:anywhere}.zc-class-card p{font-size:12px;line-height:1.8;color:#998ba4}.zc-class-card>span:last-child{display:block;color:#9a7ab6;font-size:12px;margin-top:20px}.zc-badge{display:inline-block;border-radius:20px;background:#eee6f5;color:#8a6aa2;padding:5px 11px;font-size:11px;line-height:1.5}.zc-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.zc-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0 0 24px}.zc-stats>div{border:1px solid #e9e2ef;border-radius:16px;background:#fff;padding:20px 25px}.zc-stats>div>span{display:block;color:#9b8aa7;font-size:12px;margin-bottom:12px}.zc-stats strong{font-size:30px;color:#705684}.zc-stats strong small{font-size:13px;font-weight:400;color:#a597ad}.zc-table-scroll{overflow-x:auto}.zc-roster{border-collapse:collapse;text-align:left;width:100%;min-width:600px}.zc-roster th{font-weight:500;color:#a092ab;font-size:12px;padding:13px 10px;border-bottom:1px solid #eee8f2}.zc-roster td{padding:18px 10px;border-bottom:1px solid #f2edf6;font-size:13px;color:#796986}.zc-roster td strong{color:#5f526a}.zc-roster td small{display:block;margin-top:7px;font-size:11px;color:#a497ad}.zc-small.button{font-size:11px;padding:7px 11px;min-height:32px}.zc-detail-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(270px,1fr);gap:24px;align-items:start}.zc-assignment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.zc-detail-layout .zc-assignment-grid{grid-template-columns:1fr}.zc-assignment{padding:22px;border:1px solid #e8e1ef;border-radius:16px;background:linear-gradient(135deg,#fff,#faf8fc);min-width:0}.zc-assignment-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.zc-assignment-top small{color:#a798af;font-size:11px}.zc-assignment h3{font-size:19px;margin:18px 0 10px;color:#65556f;overflow-wrap:anywhere}.zc-assignment>p{font-size:12px;line-height:1.9;color:#9a8ba4;min-height:2em}.zc-word-preview{display:flex;gap:7px;flex-wrap:wrap;margin:18px 0 22px}.zc-word-preview>span{min-width:32px;text-align:center;box-sizing:border-box;border-radius:8px;padding:7px 8px;background:#f0eaf7;color:#846995;font-size:17px}.zc-assignment-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid #eee6f4;padding-top:15px}.zc-assignment-foot>small{color:#a08eaa;font-size:11px;line-height:1.8}.zc-assignment-foot .button{font-size:12px;padding:9px 14px;min-height:36px}.zc-publish{margin-top:27px;padding-top:24px;border-top:1px solid #eee6f4}.zc-publish h3{font-size:17px;color:#6c5b79}.zc-detail-layout>aside .panel{margin-bottom:22px}.zc-detail-layout textarea{font-size:12px!important;line-height:1.6;resize:vertical;background:#faf8fd}.zc-child-list{display:flex;flex-wrap:wrap;gap:9px;margin:14px 0}.zc-child-chip{display:inline-block;padding:10px 15px;border-radius:10px;background:#f3edf8;color:#8a6c9f;font-size:13px}.zc-family-banner{display:flex;align-items:center;gap:22px;background:#eef3e4;border:1px solid #e1e9d5;border-radius:18px;padding:24px;margin-bottom:24px}.zc-family-banner>span:first-child{font-size:38px}.zc-family-banner>div{flex:1}.zc-family-banner h2{font-size:19px;color:#6f835e;margin:0 0 9px}.zc-family-banner p{font-size:12px;line-height:1.8;color:#8b9b7d;margin:0}.zc-family-banner .zc-badge{background:#e1ebd5;color:#7a8c68}.zc-result-list{padding:0;list-style:none;margin:0}.zc-result-list li{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 0;border-bottom:1px solid #f0eaf4}.zc-result-list li:last-child{border:0}.zc-result-list strong{display:block;color:#756180;font-size:14px}.zc-result-list span{display:block;color:#a08daa;font-size:12px;margin-top:7px}.zc-result-list time{font-size:12px;color:#a597ad;white-space:nowrap}.zc-login-panel{text-align:center;padding:45px!important}.zc-illustration{display:inline-grid;place-items:center;font-size:45px;width:95px;height:95px;border-radius:28px;background:#eff3e6;margin-bottom:15px}.zc-login-panel h2{font-size:25px;color:#72617f}.zc-login-panel>p{max-width:650px;margin:15px auto;line-height:1.9;color:#9a8ba5;font-size:14px}.zc-login-panel .button-row{justify-content:center;margin-top:25px}.zc-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:30px auto;max-width:820px;text-align:left}.zc-feature-grid>div{background:#faf7fd;border:1px solid #eee7f4;border-radius:13px;padding:20px}.zc-feature-grid strong{display:block;font-size:14px;color:#8c729f;margin-bottom:10px}.zc-feature-grid span{display:block;font-size:12px;color:#ab9cb4;line-height:1.7}.zc-invite-intro{display:flex;align-items:center;gap:20px;padding:22px 26px;background:#f0eaf8;border:1px solid #e4d8f0;border-radius:16px;margin:0 0 25px}.zc-invite-intro>span{font-size:38px;color:#a285b9}.zc-invite-intro strong{color:#846897;font-size:18px}.zc-invite-intro p{color:#a28cb0;font-size:12px;line-height:1.8;margin-bottom:0}.zc-join-panel{background:#fffdfb!important}.zc-join-panel>p{font-size:13px;line-height:1.9;color:#9a8ba5}.zc-join-panel form{max-width:650px}.zc-consent{display:flex;align-items:flex-start;gap:10px;font-size:12px;line-height:1.8;color:#8f7c9b;margin:18px 0}.zc-consent input{width:17px!important;height:17px;flex:none;margin:3px 0 0;accent-color:#a589bf}.zc-root input:focus-visible,.zc-root select:focus-visible,.zc-root textarea:focus-visible,.zc-root button:focus-visible{outline:2px solid #bda3d3;outline-offset:3px}
@media(max-width:1050px){.zc-overview-layout,.zc-detail-layout{grid-template-columns:1fr}.zc-overview-layout>aside,.zc-detail-layout>aside{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.zc-detail-layout .zc-assignment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.zc-login-panel{padding:30px!important}}
@media(max-width:700px){.zc-root .page-heading p{font-size:12px}.zc-class-grid,.zc-assignment-grid,.zc-detail-layout .zc-assignment-grid{grid-template-columns:1fr}.zc-overview-layout>aside,.zc-detail-layout>aside{display:block}.zc-stats{gap:9px;margin-bottom:17px}.zc-stats>div{padding:14px 11px;border-radius:12px}.zc-stats>div>span{font-size:10px;margin-bottom:8px}.zc-stats strong{font-size:23px}.zc-stats strong small{font-size:10px}.zc-overview-layout,.zc-detail-layout{gap:0}.zc-class-card{padding:19px}.zc-class-card h3{font-size:19px}.zc-assignment{padding:18px}.zc-assignment h3{font-size:17px}.zc-feature-grid{grid-template-columns:1fr;margin:22px auto;gap:10px}.zc-feature-grid>div{padding:15px}.zc-login-panel{padding:25px 18px!important}.zc-login-panel h2{font-size:21px}.zc-login-panel>p{font-size:12px}.zc-family-banner{gap:14px;align-items:flex-start;flex-wrap:wrap;padding:20px}.zc-family-banner>div{min-width:180px}.zc-family-banner h2{font-size:17px}.zc-family-banner .zc-badge{margin-left:52px}.zc-invite-intro{padding:18px;gap:15px}.zc-invite-intro strong{font-size:16px}.zc-invite-intro p{font-size:11px}.zc-root .field-label{font-size:12px}.zc-root .field-label input,.zc-root .field-label select{font-size:14px;min-height:42px}.zc-root .button{font-size:12px}.zc-empty{padding:25px 15px}.zc-status{font-size:12px}.zc-roster{min-width:560px}.zc-roster td{font-size:12px}}

.zc-practice-actions{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.zc-mode-label{display:flex;flex-direction:column;gap:5px;font-size:10px;color:#a08eaa}.zc-mode-label select{font:inherit;font-size:12px;border:1px solid #e4d9ed;border-radius:8px;background:#fff;color:#806b91;padding:9px 10px;min-height:36px}
