:root{font-family:Arial,sans-serif;color:#19392f;background:#f6f8f4;line-height:1.55}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0}header{max-width:1200px;margin:auto;padding:20px 24px;display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #d9e3db}a{color:#245942;text-underline-offset:3px}.brand{font-size:22px;font-weight:800;text-decoration:none}main{max-width:1200px;margin:auto;padding:28px 24px}h1{font-size:clamp(30px,5vw,46px);letter-spacing:-1px;margin:0 0 8px}h2{font-size:21px;margin:0 0 16px}h3{margin:0}.lead{max-width:760px;font-size:18px;margin:0 0 8px}.privacy-note,.hint{font-size:14px;color:#53695e}.workspace{display:grid;grid-template-columns:360px minmax(0,1fr);gap:24px;margin:24px 0 40px}.editor,.output{border:1px solid #d7e3d9;border-radius:16px;background:#fff;padding:24px;min-width:0}label{display:block;font-weight:600;margin:12px 0 6px}input,select,textarea,button{font:inherit}input:not([type=checkbox]),select,textarea{width:100%;border:1px solid #9eafa3;border-radius:8px;background:#fff;padding:10px;color:inherit}textarea{resize:vertical;min-height:112px}#class-task{min-height:86px}button,.exports a{padding:10px 14px;border-radius:8px;border:1px solid #9eafa3;background:#fff;color:#19392f;cursor:pointer;text-decoration:none;font-weight:600}button:hover,.exports a:hover{background:#eaf0e9}button:disabled{opacity:.55;cursor:default}.primary{width:100%;background:#245942;color:#fff;border-color:#245942;margin-top:8px}.primary:hover{background:#183f30}.actions,.exports{display:flex;flex-wrap:wrap;gap:8px}.actions button{padding:5px 9px;font-size:13px}.count{font-weight:600;color:#496554;font-size:14px;margin:10px 0}details{border-top:1px solid #e0e7df;margin:16px 0;padding-top:10px}summary{cursor:pointer;font-weight:600}#class-attendance{max-height:250px;overflow:auto;margin-top:10px}#class-attendance label{display:flex;align-items:start;gap:8px;font-size:14px;font-weight:400;margin:8px 0;overflow-wrap:anywhere}input[type=checkbox]{accent-color:#245942;width:18px;height:18px;flex-shrink:0}.hint{margin:6px 0}#class-preview{font-size:14px;background:#eff4ed;padding:10px;border-radius:8px}#class-message{font-size:14px;color:#963d23;margin:8px 0 0}#class-empty{padding:48px 16px;border:1px dashed #b7caba;border-radius:12px;color:#53695e;text-align:center}.class-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.class-card{border:1px solid #ccdbce;border-radius:12px;padding:18px;break-inside:avoid}.class-card h3{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px;border-bottom:1px solid #e1e8df;padding-bottom:10px}.class-card h3 span{font-size:12px;font-weight:400;color:#53695e}.class-card ul{padding:0;margin:10px 0;list-style:none}.class-card li{padding:8px 0;display:flex;flex-direction:column;overflow-wrap:anywhere}.class-card li span{font-size:13px;color:#53695e}.unassigned{font-size:13px;color:#8c4a2f;margin:12px 0 0;overflow-wrap:anywhere}.exports{margin-top:20px}.instructions{max-width:800px;margin:40px auto}.instructions h2{margin-top:30px}.instructions p{margin:12px 0}footer{border-top:1px solid #d9e3db;padding:22px 0}footer nav{display:flex;flex-wrap:wrap;gap:18px}.task-title{font-size:25px;margin:8px 0;overflow-wrap:anywhere}.task-text{white-space:pre-wrap;overflow-wrap:anywhere}#class-exit{display:none}.board header,.board .intro,.board .editor,.board .instructions,.board footer,.board .analytics-choice,.board .exports{display:none}.board main{max-width:1600px;padding-top:70px}.board .workspace{display:block;margin:0}.board .output{border:0;background:transparent;padding:0}.board .class-results{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.board .class-card{background:white;font-size:24px}.board .class-card li span{font-size:18px}.board #output-heading{display:none}.board #class-exit{display:block;position:fixed;right:20px;top:16px}.board .task-title{font-size:36px}:focus-visible{outline:3px solid #af691f;outline-offset:3px}@media(max-width:760px){header{padding:16px}main{padding:22px 16px}.workspace{grid-template-columns:1fr;gap:16px}.editor,.output{padding:18px}.class-results{grid-template-columns:1fr}.lead{font-size:16px}h1{font-size:32px}.instructions{margin-top:24px}}@media print{@page{margin:14mm}body{background:white;color:black}header,.intro,.editor,.instructions,footer,.analytics-choice,.exports,#class-exit{display:none!important}main,.board main{padding:0;max-width:none}.workspace,.board .workspace{display:block;margin:0}.output,.board .output{border:0;padding:0}#output-heading{display:none}.class-results,.board .class-results{display:block}.class-card,.board .class-card{margin:12px 0;font-size:14px;break-inside:avoid}.class-card li span,.board .class-card li span{font-size:12px}.class-card li{flex-direction:row;gap:16px}.task-title,.board .task-title{font-size:24px}.class-card li strong{flex:1}}

h1{line-height:1.2}.analytics-choice{max-width:1152px;margin:24px auto;padding:20px;border-top:1px solid #d9e3db}.analytics-choice button,.analytics-choice a{margin:5px}
@media(max-width:760px){header{padding:12px 16px}main{padding:16px}.workspace{margin-top:16px}.editor{padding:16px}.editor h2{margin-bottom:8px}#class-names{min-height:86px}.editor details{margin:12px 0;padding-top:8px}.editor .hint{font-size:13px;line-height:1.4}.privacy-note{margin:8px 0}.editor label{margin-top:8px}}

@media(min-width:761px){.editor h2{margin-bottom:8px}#class-names{min-height:86px}.editor details{margin:12px 0;padding-top:8px}}
@media(max-width:360px){h1{font-size:28px}.lead{font-size:15px}.editor .count{font-size:13px}}
