@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Fraunces:opsz,wght@9..144,600;9..144,700&display=swap";:root{color:#1e302c;font-synthesis:none;--green:#173f36;--green-2:#24594b;--cream:#f6f3ec;--gold:#e9a23b;--coral:#d96c52;--ink:#1e302c;--muted:#6d7772;--line:#dedbd1;background:#f6f3ec;font-family:DM Sans,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Fraunces,serif;line-height:1.05}h1{letter-spacing:-.04em;font-size:clamp(2.4rem,5vw,4.8rem)}h2{font-size:clamp(1.7rem,3vw,2.4rem)}a{color:inherit}.shell{width:min(1180px,100% - 40px);margin-inline:auto}.narrow{width:min(1000px,100% - 40px)}.eyebrow{color:#af671d;letter-spacing:.16em;text-transform:uppercase;margin-bottom:.65rem;font-size:.74rem;font-weight:700}.eyebrow.light{color:#f1b85f}.muted{color:var(--muted)}.brand{align-items:center;gap:.7rem;font-family:Fraunces,serif;font-size:1.1rem;font-weight:700;text-decoration:none;display:inline-flex}.brand-mark{color:#fff;background:var(--coral);border-radius:4px 9px 9px 4px;place-items:center;width:34px;height:38px;display:grid;box-shadow:inset 4px 0 #00000024}.brand-light{color:#fff}.button{border:0;border-radius:8px;padding:.85rem 1.15rem;font-weight:700;transition:transform .15s,background .15s,opacity .15s}.button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled{opacity:.5;cursor:not-allowed}.button.primary{color:#fff;background:var(--green)}.button.accent{color:#24342e;background:var(--gold)}.button.subtle{color:var(--green);background:#e9efeb}.button.text{color:var(--muted);background:0 0}.button.danger{color:#9c3c2a}.button.small{padding:.6rem .9rem}.button.large{padding:1rem 1.5rem}.button.full{width:100%}.button-row{gap:.4rem;display:flex}label{color:#33443f;gap:.42rem;font-size:.83rem;font-weight:700;display:grid}.field-hint{color:var(--muted);font-size:.76rem;font-weight:400}input,textarea{width:100%;color:var(--ink);resize:vertical;background:#fff;border:1px solid #cbcfc9;border-radius:7px;outline:none;padding:.78rem .85rem}input:focus,textarea:focus{border-color:var(--green-2);box-shadow:0 0 0 3px #24594b1c}.message{border-radius:7px;padding:.75rem .9rem;font-size:.87rem}.message.error{color:#8f3525;background:#fae4de}.center-page{place-items:center;min-height:100vh;padding:2rem;display:grid}.center-block{place-items:center;min-height:300px;display:grid}.loader{border:3px solid #ccd5d0;border-top-color:var(--green);border-radius:50%;width:34px;height:34px;animation:.8s linear infinite spin}.light-loader{border-color:#fff #ffffff4d #ffffff4d}@keyframes spin{to{transform:rotate(360deg)}}.auth-page{grid-template-columns:1.08fr .92fr;min-height:100vh;display:grid}.auth-intro{color:#fff;background:var(--green);flex-direction:column;min-height:680px;padding:50px clamp(40px,7vw,110px);display:flex;position:relative;overflow:hidden}.auth-intro:after{content:"";border:1px solid #ffffff17;border-radius:50%;width:500px;height:500px;position:absolute;top:120px;right:-260px;box-shadow:0 0 0 80px #ffffff06,0 0 0 160px #ffffff05}.intro-copy{z-index:1;max-width:650px;margin:auto 0 30px;position:relative}.intro-copy h1{max-width:620px}.intro-copy>p:last-child{color:#cbd9d4;max-width:520px;font-size:1.12rem;line-height:1.65}.book-stack{z-index:1;width:360px;height:90px;position:relative}.book{letter-spacing:.1em;text-transform:uppercase;border-radius:3px 7px 7px 3px;height:35px;padding:8px 20px;font-family:Fraunces,serif;font-size:.78rem;position:absolute;box-shadow:0 8px 13px #0000002e}.book-one{background:#d96c52;width:300px;bottom:0;left:0;transform:rotate(2deg)}.book-two{color:#263c35;background:#e9a23b;width:270px;bottom:34px;left:35px;transform:rotate(-2deg)}.book-three{background:#4c7467;width:225px;bottom:67px;left:70px;transform:rotate(1deg)}.intro-credit{z-index:1;color:#cbd9d4;align-self:flex-start;align-items:center;gap:.6rem;margin-top:30px;font-size:.82rem;font-weight:600;text-decoration:none;display:inline-flex;position:relative}.intro-credit:hover span{text-underline-offset:3px;text-decoration:underline}.auth-panel{background:var(--cream);place-items:center;padding:40px;display:grid}.auth-card{width:min(430px,100%)}.auth-card h2{margin-bottom:.5rem}.auth-card form{gap:1rem;display:grid}.tabs{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;margin:2rem 0 1.5rem;display:grid}.tabs button{color:var(--muted);background:0 0;border:0;border-bottom:3px solid #0000;padding:.8rem;font-weight:700}.tabs button.active{border-color:var(--coral);color:var(--ink)}.fine-print{color:var(--muted);text-align:center;margin:1.25rem 0 0;font-size:.76rem}.topbar{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;height:76px;padding:0 max(20px,50vw - 590px);display:flex}.teacher-menu{align-items:center;gap:.7rem;font-size:.87rem;font-weight:600;display:flex}.avatar{color:#fff;background:var(--green-2);border-radius:50%;place-items:center;width:32px;height:32px;display:grid}.text-link{color:var(--muted);background:0 0;border:0;text-decoration:underline}.dashboard{padding-block:60px 100px}.dashboard-heading{justify-content:space-between;align-items:end;gap:2rem;display:flex}.dashboard-heading>div:first-child{max-width:800px}.dashboard-heading h1{margin-bottom:1rem;font-size:clamp(2.5rem,5vw,4.3rem)}.dashboard-heading p:last-child{color:var(--muted);max-width:700px;line-height:1.6}.progress-ring{text-align:center;background:radial-gradient(closest-side, var(--cream) 77%, transparent 78% 99%), conic-gradient(var(--coral) var(--progress), #ddd9cf 0);border-radius:50%;flex:0 0 105px;place-content:center;height:105px;display:grid}.progress-ring strong{font:700 1.9rem/1 Fraunces,serif}.progress-ring span{color:var(--muted);font-size:.7rem}.text-link.danger{color:#9c3c2a}.text-link:disabled{opacity:.45;cursor:not-allowed}.back-link{border:1px solid var(--line);color:var(--muted);background:#ffffffb3;border-radius:999px;align-items:center;gap:.4rem;margin-bottom:1.6rem;padding:.5rem .85rem .5rem .7rem;font-size:.82rem;font-weight:700;display:inline-flex}.back-link:hover{color:var(--green);border-color:var(--green-2);background:#fff}.list-grid{grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:1rem;margin-top:2.5rem;display:grid}.list-card{border:1px solid var(--line);background:#fff;border-radius:12px;flex-direction:column;gap:1rem;padding:1.4rem;display:flex;box-shadow:0 4px 16px #2938320a}.list-card-head{justify-content:space-between;align-items:start;gap:.8rem;display:flex}.list-card h2{margin:0 0 .35rem;font-size:1.5rem}.list-title{font:inherit;color:inherit;text-align:left;background:0 0;border:0;padding:0}.list-title:hover{color:var(--green-2);text-decoration:underline}.list-card-head p{color:var(--muted);margin:0;font-size:.85rem;line-height:1.5}.list-no-note{opacity:.7;font-style:italic}.list-stats{gap:.6rem;margin:0;display:flex}.list-stats>div{background:#f4f6f2;border-radius:8px;flex:1;padding:.7rem .8rem}.list-stats dt{color:var(--muted);letter-spacing:.09em;text-transform:uppercase;font-size:.68rem;font-weight:700}.list-stats dd{margin:.2rem 0 0;font:700 1.6rem/1 Fraunces,serif}.list-hint{color:var(--muted);margin:0;font-size:.82rem}.list-card .share-actions input{color:#44534e;font-size:.8rem}.list-card-actions{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:auto;padding-top:.2rem;display:flex}.list-card-actions .text-link{margin-left:auto;font-size:.82rem}.list-card-actions .text-link+.text-link{margin-left:0}.list-form{border:1px solid var(--line);background:#fff;border-radius:12px;gap:.9rem;max-width:620px;margin-top:2rem;padding:1.5rem;display:grid}.list-form h2{margin:0;font-size:1.5rem}.list-form .muted{margin:0;font-size:.85rem;line-height:1.5}.list-note{font-weight:600;color:var(--ink)!important}.dashboard-tabs{border-bottom:1px solid var(--line);margin:2.5rem 0 1.5rem;display:flex}.dashboard-tabs button{color:var(--muted);background:0 0;border:0;border-bottom:3px solid #0000;gap:.6rem;padding:1rem 1.2rem;font-weight:700;display:flex}.dashboard-tabs button.active{color:var(--green);border-color:var(--coral)}.dashboard-tabs span{background:#e4e6e0;border-radius:10px;place-items:center;min-width:25px;height:20px;padding:0 5px;font-size:.68rem;display:grid}.notice{border-radius:8px;flex-wrap:wrap;gap:.8rem;margin-bottom:1rem;padding:1rem 1.2rem;display:flex}.locked-notice{color:#6f4a15;background:#fff1d9}.ranking-setting{border:1px solid var(--line);background:#fff;border-radius:10px;justify-content:space-between;align-items:center;gap:1.5rem;margin-bottom:1rem;padding:1.1rem 1.3rem;display:flex}.ranking-setting h3{margin-bottom:.3rem;font:700 1.2rem Fraunces,serif}.ranking-setting p{color:var(--muted);max-width:640px;margin:0;font-size:.83rem;line-height:1.5}.ranking-setting label{flex:none;justify-items:center}.ranking-setting input{text-align:center;width:85px;padding:.6rem .5rem;font:700 1.1rem Fraunces,serif}.ranking-setting input:disabled{color:var(--muted);cursor:not-allowed;background:#f2f1ec}.book-list-actions{justify-content:flex-end;margin-bottom:.8rem;display:flex}.editor-list{gap:.8rem;display:grid}.editor-card{background:#ffffffa6;border:1px dashed #c8c6bd;border-radius:10px;grid-template-columns:76px 92px 1fr auto;align-items:center;gap:1.3rem;min-height:145px;padding:1rem 1.2rem 1rem 0;display:grid;position:relative;overflow:hidden}.editor-card.complete{background:#fff;border-style:solid;box-shadow:0 4px 16px #2938320a}.slot-number{border-right:1px solid var(--line);color:#a9ada8;align-self:stretch;place-items:center;font:700 1.6rem Fraunces,serif;display:grid}.editor-cover{object-fit:cover;border-radius:4px;width:82px;height:112px;box-shadow:0 4px 10px #a9aaa4}.editor-summary h3{margin-bottom:.35rem;font:700 1.25rem Fraunces,serif}.editor-summary p:last-child{color:var(--muted);margin:0;font-size:.86rem;line-height:1.45}.editor-actions{justify-items:stretch;gap:.3rem;display:grid}.add-book{min-height:92px;color:var(--muted);background:#fff6;border:1px dashed #c8c6bd;border-radius:10px;place-content:center;justify-items:center;gap:.2rem;padding:1rem;font-weight:700;transition:color .15s,background .15s,border-color .15s;display:grid}.add-book:hover{color:var(--green);border-color:var(--green-2);background:#fffc}.list-full{color:var(--muted);text-align:center;margin:.4rem 0 0;font-size:.85rem}.slot-label{color:#a86d32;letter-spacing:.1em;text-transform:uppercase;margin-bottom:.4rem;font-size:.66rem;font-weight:700}.book-form{grid-column:2/-1;grid-template-columns:120px 1fr;gap:1.3rem;padding-right:.4rem;display:grid}.cover-drop{cursor:pointer;height:155px;color:var(--muted);background:#edf0eb;border:1px dashed #aeb7b0;border-radius:7px;align-content:center;place-items:center;gap:.3rem;font-size:.75rem;display:grid;overflow:hidden}.cover-drop.dragging{border-color:var(--green);background:#dde9e1;box-shadow:0 0 0 3px #2a4f411f}.cover-drop input{display:none}.cover-drop img{object-fit:cover;width:100%;height:100%}.cover-plus{font-size:1.6rem;font-weight:400}.book-fields{grid-template-columns:1fr 1.3fr;align-items:end;gap:.7rem 1rem;display:grid}.book-fields .slot-label,.book-fields .message,.book-fields .button-row{grid-column:1/-1}.share-card{color:#fff;background:#55645f;border-radius:12px;grid-template-columns:1fr 1.1fr;align-items:center;gap:2rem;margin-top:2rem;padding:2rem;display:grid}.share-card.ready{background:var(--green)}.share-card h2{margin-bottom:.5rem;font-size:1.8rem}.share-card p:last-child{color:#d2dcd8;margin:0}.share-actions{gap:.5rem;display:flex}.share-actions input{color:#44534e;min-width:0}.results-head{justify-content:space-between;align-items:center;gap:1rem;margin:2rem 0;display:flex}.results-head h2{margin:0}.response-actions{align-items:end;gap:.5rem;display:flex}.response-actions label{color:var(--muted);gap:.25rem;font-size:.7rem}.response-actions input{width:80px;padding:.78rem .55rem}.group-intro{justify-content:space-between;align-items:start;gap:2rem;margin:2rem 0 1.5rem;display:flex}.group-intro h2{margin-bottom:.55rem}.group-intro p:last-child{max-width:700px;color:var(--muted);line-height:1.5}.saved-badge{color:#276047;background:#dcecdf;border-radius:20px;flex:none;padding:.55rem .8rem;font-size:.75rem;font-weight:700}.group-settings{grid-template-columns:.7fr 1.3fr;gap:1rem;display:grid}.size-settings,.strategy-settings,.book-limits{border:1px solid var(--line);background:#fff;border-radius:10px;padding:1.3rem}.size-settings{grid-template-columns:1fr 1fr;align-content:start;gap:1rem;display:grid}.strategy-settings{gap:.6rem;margin:0;display:grid}.strategy-settings legend{padding:0 .25rem;font-weight:700}.strategy-settings label{cursor:pointer;border:1px solid var(--line);border-radius:8px;grid-template-columns:20px 1fr;align-items:start;padding:.8rem}.strategy-settings label.chosen{border-color:var(--green-2);background:#f0f5f1}.strategy-settings input{width:auto;accent-color:var(--green);margin-top:.2rem}.strategy-settings span{gap:.2rem;display:grid}.strategy-settings small{color:var(--muted);font-weight:400;line-height:1.4}.book-limits{margin-top:1rem}.section-row{justify-content:space-between;align-items:start;gap:1rem;display:flex}.section-row h3{margin-bottom:.3rem;font:700 1.2rem Fraunces,serif}.section-row p{color:var(--muted);font-size:.83rem}.limit-grid{grid-template-columns:repeat(5,1fr);gap:.6rem;display:grid}.limit-card{border:1px solid #e7e5de;border-radius:7px;grid-template-columns:35px 1fr 55px;align-items:center;gap:.6rem;padding:.55rem}.limit-card img{object-fit:cover;border-radius:2px;width:35px;height:48px}.limit-card span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.limit-card input{text-align:center;padding:.55rem .35rem}.generate-bar{color:#fff;background:var(--green);border-radius:10px;justify-content:space-between;align-items:center;gap:1rem;margin:1rem 0 2.5rem;padding:1.2rem 1.4rem;display:flex}.generate-bar div{gap:.25rem;display:grid}.generate-bar span{color:#c5d5cf;font-size:.77rem}.group-results{border-top:1px solid var(--line);padding-top:.3rem}.result-actions{flex-wrap:wrap;flex:none;gap:.5rem;display:flex}.export-note{color:var(--muted);margin:-1.2rem 0 1.2rem;font-size:.8rem}.placement-summary{grid-template-columns:repeat(auto-fill,minmax(135px,1fr));gap:.6rem;margin-bottom:1rem;display:grid}.placement-summary span{border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:8px;align-items:baseline;gap:.4rem;padding:.9rem;font-size:.75rem;display:flex}.placement-summary strong{color:var(--ink);font:700 1.5rem Fraunces,serif}.placement-summary .attention{color:#8f3525;background:#fff0eb;border-color:#edc7bb}.generated-groups{grid-template-columns:repeat(2,1fr);gap:.8rem;display:grid}.generated-group{border:1px solid var(--line);background:#fff;border-radius:9px;overflow:hidden}.generated-group header{background:#eeece5;grid-template-columns:50px 1fr auto;align-items:center;gap:.8rem;padding:.7rem;display:grid}.generated-group header img{object-fit:cover;border-radius:3px;width:50px;height:68px}.generated-group header span{color:#a86525;letter-spacing:.1em;text-transform:uppercase;font-size:.65rem;font-weight:700}.generated-group header h3{margin:.2rem 0 0;font:700 1.05rem Fraunces,serif}.generated-group header b{color:#fff;background:var(--green-2);border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.generated-group ul,.unplaced-card ul{margin:0;padding:.3rem 1rem .6rem;list-style:none}.generated-group li{border-bottom:1px solid #eceae4;justify-content:space-between;gap:1rem;padding:.7rem 0;font-size:.85rem;display:flex}.generated-group li:last-child{border:0}.generated-group small{color:#256044;background:#e1eee5;border-radius:4px;padding:.2rem .45rem;font-weight:700}.generated-group .last-rank{color:#8f4d28;background:#f8e6da}.unplaced-card{color:#6e3c2e;background:#fff0eb;border:1px solid #edc7bb;border-radius:9px;grid-template-columns:1.5fr 1fr;gap:2rem;margin-top:1rem;padding:1.3rem;display:grid}.unplaced-card h3{margin-bottom:.4rem;font:700 1.2rem Fraunces,serif}.unplaced-card p:last-child{margin:0;font-size:.83rem;line-height:1.5}.unplaced-card ul{flex-wrap:wrap;align-content:start;gap:.4rem;padding:0;display:flex}.unplaced-card li{background:#fff;border-radius:5px;padding:.4rem .6rem;font-size:.8rem;font-weight:700}.empty-state{text-align:center;min-height:360px;color:var(--muted);place-content:center;display:grid}.empty-state h3{color:var(--ink);margin:1.5rem 0 .4rem;font:700 1.5rem Fraunces,serif}.empty-books{color:#fff;background:var(--green-2);box-shadow:8px 8px var(--gold), -8px -8px var(--coral);border-radius:6px;padding:1rem}.summary-grid{grid-template-columns:repeat(2,1fr);gap:.8rem;margin-bottom:2rem;display:grid}.summary-card{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:58px 1fr auto;align-items:center;gap:.9rem;padding:.75rem;display:grid}.summary-card img{object-fit:cover;border-radius:3px;width:58px;height:78px}.summary-card h3{margin-bottom:.4rem;font:700 1rem Fraunces,serif}.summary-card strong{font-size:1.4rem}.summary-card div>span{color:var(--muted);margin-left:.35rem;font-size:.72rem}.rank-dots{flex-wrap:wrap;justify-content:end;gap:.35rem;display:flex}.rank-dots span{background:#eff1ed;border-radius:5px;place-items:center;min-width:31px;height:40px;display:grid;color:var(--ink)!important;margin:0!important}.rank-dots b{color:var(--coral);font-size:.6rem}.table-wrap{border:1px solid var(--line);background:#fff;border-radius:9px;overflow-x:auto}table{border-collapse:collapse;text-align:left;width:100%}th,td{border-bottom:1px solid #e7e5de;padding:1rem;font-size:.84rem}thead th{color:var(--muted);text-transform:uppercase;letter-spacing:.07em;background:#f0eee8;font-size:.7rem}.choices-table thead th:last-child,.choices-table td.row-action{text-align:right}.choices-table td.row-action{white-space:nowrap;width:1%;padding:.5rem 1rem}.student-header{background:var(--green);align-items:center;height:72px;padding:0 max(20px,50vw - 500px);display:flex}.student-bg{color:#fff;background:var(--green)}.student-page{background:#f7f4ed;min-height:calc(100vh - 72px)}.student-hero{color:#fff;padding-block:60px 120px}.student-page:before{content:"";z-index:0;background:var(--green);height:390px;position:absolute;top:72px;left:0;right:0}.student-hero{z-index:1;position:relative}.student-hero h1{max-width:780px;margin-bottom:.8rem}.hero-lede{color:#d2dfda;font-size:1.08rem}.hero-labels{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:.65rem;display:flex}.hero-labels .eyebrow{margin-bottom:0}.list-chip{color:#fff;background:#ffffff14;border:1px solid #67847b;border-radius:999px;padding:.3rem .75rem;font-size:.82rem;font-weight:700}.ranking-progress{flex-wrap:wrap;align-items:center;gap:.55rem;margin-top:2rem;display:flex}.ranking-progress span{color:#fff;border:2px solid #67847b;border-radius:50%;place-items:center;width:34px;height:34px;font-weight:700;display:grid}.ranking-progress span.filled{color:#263b35;border-color:var(--gold);background:var(--gold)}.ranking-progress strong{color:#d2dfda;margin-left:.5rem;font-size:.82rem}.student-content{z-index:1;margin-top:-75px;padding-bottom:120px;position:relative}.name-card{background:#fff;border-radius:12px;grid-template-columns:1fr 1fr 150px;align-items:end;gap:1.2rem;padding:1.5rem;display:grid;box-shadow:0 10px 30px #1f322c1f}.name-card>div,.section-title{align-items:flex-start;gap:1rem;display:flex}.name-card h2,.section-title h2{margin-bottom:.25rem;font-size:1.45rem}.name-card p,.section-title p{color:var(--muted);margin:0;font-size:.82rem}.step{color:#fff;background:var(--coral);border-radius:50%;flex:none;place-items:center;width:28px;height:28px;font-weight:700;display:grid}.initial-input{text-transform:uppercase}.section-title{margin:3rem 0 1.3rem}.student-books{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}.choice-card{text-align:left;min-height:160px;color:var(--ink);background:#fff;border:2px solid #0000;border-radius:10px;grid-template-columns:105px 1fr auto;align-items:center;gap:1.1rem;padding:.8rem 1rem .8rem .8rem;transition:transform .15s,border .15s,opacity .15s;display:grid;position:relative;box-shadow:0 4px 14px #28373112}.choice-card:hover:not(:disabled){transform:translateY(-2px)}.choice-card:disabled{opacity:.48;cursor:not-allowed}.choice-card.selected{border-color:var(--gold);background:#fffbf1}.choice-card img{object-fit:cover;border-radius:4px;width:105px;height:140px}.choice-copy{gap:.55rem;display:grid}.choice-copy strong{font:700 1.16rem Fraunces,serif}.choice-copy>span{color:var(--muted);-webkit-line-clamp:4;-webkit-box-orient:vertical;font-size:.8rem;line-height:1.45;display:-webkit-box;overflow:hidden}.choose-action{color:var(--green-2);text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;font-weight:700}.rank-badge{color:#273831;background:var(--gold);border:3px solid #f7f4ed;border-radius:50%;place-items:center;width:38px;height:38px;font-weight:800;display:grid;position:absolute;top:-10px;left:-9px}.submit-bar{color:#fff;background:var(--green);border-radius:10px;justify-content:space-between;align-items:center;gap:1rem;margin-top:2rem;padding:1rem 1.2rem;display:flex;position:sticky;bottom:14px;box-shadow:0 9px 30px #13352d40}.submit-bar div{gap:.2rem;display:grid}.submit-bar span{color:#c4d2cd;font-size:.75rem}.success-card,.student-error{text-align:center;width:min(550px,100%);color:var(--ink);background:var(--cream);border-radius:14px;padding:3rem}.success-card h1,.student-error h1{font-size:2.7rem}.success-card>p:not(.eyebrow),.student-error p{color:var(--muted);line-height:1.6}.success-check{width:68px;height:68px;color:var(--green);background:var(--gold);border-radius:50%;place-items:center;margin:0 auto 1.5rem;font-size:2rem;font-weight:800;display:grid}.info-page{padding-block:55px 90px}.info-page h1{margin-bottom:.8rem;font-size:clamp(2.3rem,4.5vw,3.6rem)}.info-lede{max-width:640px;color:var(--muted);margin-bottom:2.2rem;font-size:1.08rem;line-height:1.6}.info-card{border:1px solid var(--line);background:#fff;border-radius:12px;margin-bottom:1rem;padding:1.6rem 1.8rem;box-shadow:0 4px 16px #2938320a}.info-card h2{margin-bottom:.8rem;font-size:1.5rem}.info-card h3{margin-bottom:.25rem;font:700 1.1rem Fraunces,serif}.info-card p{color:#44534e;max-width:720px;font-size:.95rem;line-height:1.65}.info-card p:last-of-type{margin-bottom:0}.info-card a:not(.button){color:#a86d32;text-underline-offset:3px;font-weight:700}.info-card .button{margin-top:1.1rem;text-decoration:none;display:inline-block}.info-card .table-wrap{margin-bottom:1.2rem}.info-card th,.info-card td{vertical-align:top}.info-card tbody th{width:30%;font-weight:700}.info-steps,.promise-list{gap:1rem;margin:0 0 1.2rem;padding:0;list-style:none;display:grid}.info-steps li,.promise-list li{grid-template-columns:28px 1fr;align-items:start;gap:.9rem;display:grid}.info-steps p,.promise-list span{color:var(--muted);margin:0;font-size:.92rem;line-height:1.6}.promise-list div{gap:.2rem;display:grid}.promise-list strong{font-family:Fraunces,serif;font-size:1.05rem}.tick{width:28px;height:28px;color:var(--green);background:#dcecdf;border-radius:50%;place-items:center;font-size:.8rem;font-weight:800;display:grid}.card-heading{align-items:center;gap:.8rem;margin-bottom:.8rem;display:flex}.card-heading h2{margin-bottom:0}.edtech-logo{flex:none;width:44px;height:44px}.edtech-logo.small{width:26px;height:26px}.polaroid{background:#fffdf7;border:1px solid #e6e1d4;width:min(660px,100%);margin:1.8rem auto .5rem;padding:14px 14px 0;transform:rotate(-1.4deg);box-shadow:0 12px 26px #2938322e}.polaroid img{background:#ded9cd;width:100%;height:auto;display:block}.polaroid figcaption{color:#5b6560;text-align:center;padding:.9rem .3rem 1.15rem;font:600 1rem Fraunces,serif}.site-footer{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.7rem 1.5rem;padding:1.4rem max(20px,50vw - 590px);font-size:.82rem;display:flex}.site-footer p{margin:0}.footer-credit{align-items:center;gap:.6rem;display:flex}.site-footer nav{flex-wrap:wrap;gap:1.2rem;display:flex}.site-footer a{text-underline-offset:3px;font-weight:600}.fine-links{gap:1rem;margin-left:.5rem;display:inline-flex}.fine-links a{font-weight:700}@media (width<=850px){.auth-page{grid-template-columns:1fr}.auth-intro{min-height:430px;padding:35px 28px}.intro-copy{margin-top:70px}.intro-copy h1{font-size:2.8rem}.book-stack{display:none}.auth-panel{padding:50px 24px}.summary-grid,.student-books,.generated-groups,.group-settings{grid-template-columns:1fr}.limit-grid{grid-template-columns:repeat(2,1fr)}.name-card{grid-template-columns:1fr 1fr}.name-card>div{grid-column:1/-1}.share-card{grid-template-columns:1fr}}@media (width<=600px){.shell,.narrow{width:min(100% - 24px,1180px)}.topbar{height:66px;padding:0 12px}.teacher-menu>span:not(.avatar){display:none}.dashboard{padding-top:38px}.dashboard-heading{align-items:start}.progress-ring{flex-basis:78px;width:78px;height:78px}.progress-ring strong{font-size:1.4rem}.list-grid{grid-template-columns:1fr}.list-card-actions .text-link{margin-left:0}.dashboard-tabs button{padding-inline:.7rem;font-size:.8rem}.dashboard-tabs{overflow-x:auto}.dashboard-tabs button{flex:none}.editor-card{grid-template-columns:42px 68px 1fr;gap:.75rem;padding-right:.75rem}.slot-number{font-size:1.15rem}.editor-cover{width:65px;height:90px}.editor-card>.editor-actions{grid-column:3;grid-auto-flow:column;justify-self:start}.book-form{grid-column:2/-1;grid-template-columns:75px 1fr}.cover-drop{height:110px}.book-fields{grid-template-columns:1fr}.book-fields>*{grid-column:1!important}.share-card{padding:1.3rem}.share-actions{flex-direction:column}.results-head{flex-direction:column;align-items:flex-start}.response-actions{flex-wrap:wrap;width:100%}.group-intro,.generate-bar,.section-row,.ranking-setting{flex-direction:column;align-items:stretch}.ranking-setting label{justify-items:start}.size-settings,.limit-grid{grid-template-columns:1fr}.placement-summary{grid-template-columns:repeat(2,1fr)}.unplaced-card{grid-template-columns:1fr;gap:1rem}.summary-card{grid-template-columns:50px 1fr}.summary-card img{width:50px;height:68px}.rank-dots{grid-column:1/-1;justify-content:end}.student-hero{padding:45px 0 105px}.student-page:before{height:360px}.name-card{grid-template-columns:1fr 90px;padding:1rem}.choice-card{grid-template-columns:78px 1fr;gap:.8rem;min-height:125px}.choice-card img{width:78px;height:108px}.choose-action{display:none}.choice-copy>span{-webkit-line-clamp:3}.submit-bar{bottom:8px}.submit-bar span{display:none}.submit-bar .button{padding:.8rem}.info-page{padding-block:34px 60px}.info-card{padding:1.2rem 1.1rem}.info-card tbody th{width:auto}.site-footer{padding:1.2rem 12px}.fine-links{justify-content:center;margin:.5rem 0 0;display:flex}}
