:root{--bg:#f8f6f1;--paper:#fffefa;--ink:#332c2e;--muted:#8c817b;--line:#e7dfd8;--plum:#654358;--soft:#efe7e1;--rose:#d2b3a1;--green:#72816c}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.65 Arial,Helvetica,sans-serif}button,input,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer;color:inherit}button:disabled{opacity:.45;cursor:default}a{text-decoration:none;color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #bb9276;outline-offset:4px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,serif;font-weight:400;line-height:1.15;letter-spacing:-1px}em{color:var(--plum);font-weight:400}button{border:0;background:none}img{max-width:100%;display:block}[hidden]{display:none!important}.eyebrow{font-size:9px;letter-spacing:1.8px;font-weight:600}.brand{font-family:Georgia,serif;font-size:37px;letter-spacing:-2px;line-height:1}.brand span{font:7px/1.5 Arial,sans-serif;letter-spacing:2px;display:block;margin-top:12px}.login{min-height:100dvh;display:grid;grid-template-columns:1.15fr 1fr}.login-photo{position:relative;background:#847a6c;min-height:100vh;color:white;overflow:hidden}.login-photo>img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:60% center;filter:brightness(.62)}.login-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#271e2030,transparent 35%,#201a20c9)}.login-photo .brand{position:absolute;top:45px;left:55px;z-index:2}.login-statement{position:absolute;left:55px;bottom:100px;z-index:2}.login-statement .eyebrow{opacity:.8}.login-statement h1{font-size:clamp(40px,4.1vw,67px);margin:25px 0}.login-statement em{color:#f1d6c6}.login-statement p{font-size:13px;opacity:.85}.photo-credit{position:absolute;bottom:27px;left:55px;font-size:8px;letter-spacing:1.5px;z-index:2;opacity:.6}.login-right{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:65px 55px;position:relative}.login-form{max-width:390px;width:100%}.login-form>.eyebrow{color:#a28879}.login-form h2{font-size:42px;margin:28px 0 20px}.login-form>p{font-size:12px;color:var(--muted);line-height:1.85}.login-form form{margin-top:25px}.login-form label{font-size:11px;display:block;margin:17px 0 7px}.login-form input{width:100%;border:1px solid var(--line);background:var(--paper);padding:13px 15px;border-radius:4px;color:var(--ink)}input::placeholder{color:#b2a59c}.password-field{position:relative}.password-field input{padding-right:40px}.password-field button{position:absolute;right:6px;top:8px;color:#9b8579}.error{font-size:11px;color:#ac5656;min-height:19px;margin:7px 0}.button{background:var(--plum);color:#fff;padding:15px 21px;display:inline-flex;justify-content:space-between;align-items:center;gap:25px;font-size:11px;border-radius:4px;transition:background .2s,transform .2s}.button:hover{background:#7a536a;transform:translateY(-1px)}.button span{font-size:20px;line-height:1}.login-form .button{width:100%}.demo{border-top:1px solid var(--line);margin-top:26px;padding-top:20px}.demo>span{font-size:8px;letter-spacing:1.5px;color:#9d8374;display:block}.demo b{font-size:11px;display:block;margin:8px 0;font-weight:400}.demo code{font-size:12px;color:var(--plum);background:#eee4e7;padding:3px 6px;border-radius:3px}.demo small{font-size:9px;color:var(--muted)}.subtle{color:var(--muted);font-size:10px;display:inline-block;margin-top:25px}.login-foot{position:absolute;bottom:25px;font-size:7px;letter-spacing:1.4px;color:#b3a297}aside{position:fixed;inset:0 auto 0 0;width:260px;background:var(--paper);border-right:1px solid var(--line);padding:32px 20px 18px;display:flex;flex-direction:column;overflow:auto;z-index:30}.brand{display:block}aside .brand{font-size:32px;padding:0 7px}.course-chip{background:#f3ece5;padding:15px;border-radius:5px;margin-top:31px}.course-chip span{font-size:8px;letter-spacing:1px;color:#a18b7d;display:block}.course-chip b{font-size:11px;display:block;margin:5px 0}.course-chip small{font-size:9px;color:var(--muted)}#nav{display:grid;gap:4px;margin-top:18px}#nav button{font-size:11px;text-align:left;padding:11px 10px;border-radius:4px;display:flex;gap:11px;align-items:center}#nav button>span{font-size:16px;color:#a08d80;width:20px}#nav button.active{background:#eee4e9;color:var(--plum);font-weight:600}#nav i{font-style:normal;font-size:9px;margin-left:auto;background:#e7dce1;padding:0 5px;border-radius:10px}.side-title{font-size:8px;letter-spacing:1.5px;color:#a48f81;border-top:1px solid var(--line);padding-top:22px;margin:18px 8px 12px}.side-module{font-size:10px;line-height:1.4;display:flex;gap:10px;align-items:start;width:100%;text-align:left;padding:8px 7px;color:#80736b;border-radius:4px}.side-module>span:first-child{font-size:8px;width:18px;flex-shrink:0;color:#b29a8a;padding-top:2px}.side-module.selected{color:var(--plum);background:#f3ecef}.side-module .check{margin-left:auto;color:var(--green)}.side-bottom{margin-top:auto;padding-top:20px}.support-note{padding:14px;background:#f4eee7;border-radius:4px}.support-note>span{font-size:7px;letter-spacing:.7px;color:#a08979}.support-note p{font-size:10px;color:var(--muted);margin:8px 0}.support-note button{font-size:10px;color:var(--plum);padding:0}.user{display:flex;align-items:center;gap:10px;text-align:left;width:100%;margin-top:17px;padding:15px 3px 0;border-top:1px solid var(--line)}.avatar{border-radius:50%;width:32px;height:32px;background:#e8d9ce;display:grid;place-items:center;color:var(--plum);font-size:12px;flex-shrink:0}.user b{font-size:10px;display:block}.user small{font-size:8px;color:var(--muted)}.user i{font-style:normal;margin-left:auto;font-size:9px;color:var(--muted)}main{margin-left:260px;min-height:100vh;display:flex;flex-direction:column}header{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 42px;border-bottom:1px solid var(--line);background:#fffefaeb;position:sticky;top:0;z-index:20;backdrop-filter:blur(15px)}.breadcrumbs{font-size:10px;display:flex;align-items:center;gap:12px;color:var(--muted)}.breadcrumbs button{padding:0;font-size:10px;color:#75665c}.breadcrumbs>span:last-child{color:var(--ink)}.header-right{display:flex;align-items:center;gap:22px}.saved{font-size:9px;color:#9d8c80}.saved i{background:#8ca382;width:5px;height:5px;display:inline-block;border-radius:50%;margin-right:6px}#page{max-width:1450px;width:100%;padding:35px 42px 60px;margin:0 auto;flex:1}footer{display:flex;justify-content:space-between;gap:20px;font-size:7px;letter-spacing:1px;padding:20px 0;margin:0 42px;border-top:1px solid var(--line);color:#b09e90}footer a{color:var(--plum)}.welcome{display:grid;grid-template-columns:1.25fr .85fr;min-height:300px;background:#ede2d9;border-radius:7px;overflow:hidden}.welcome-copy{padding:34px 38px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.welcome-copy .eyebrow{color:#a18676;font-size:8px}.welcome h1{font-size:clamp(30px,3.3vw,48px);margin:20px 0 14px}.welcome p{font-size:11px;color:#897367;max-width:330px;margin-bottom:24px}.welcome .button{font-size:10px;padding:12px 18px}.welcome-photo{position:relative;overflow:hidden}.welcome-photo img{width:100%;height:100%;object-fit:cover}.welcome-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#ede2d9,transparent 30%)}.welcome-photo span{position:absolute;right:20px;bottom:20px;font-size:7px;letter-spacing:1.3px;color:white;z-index:1}.stats-row{display:grid;grid-template-columns:1.45fr 1fr 1fr;gap:13px;margin-top:18px}.stat{background:var(--paper);border:1px solid var(--line);padding:20px;border-radius:6px;display:flex;align-items:center;gap:17px}.stat-icon{width:39px;height:39px;display:grid;place-items:center;background:#f0e6e3;color:var(--plum);border-radius:50%;font-family:Georgia,serif;font-size:17px}.stat b{font-size:15px;font-weight:500;display:block}.stat small{font-size:9px;color:var(--muted)}.progress-line{height:3px;background:#e9ded6;margin-top:9px;width:100%;min-width:70px}.progress-line i{display:block;background:var(--plum);height:100%}.section-head{display:flex;align-items:end;justify-content:space-between;gap:25px;margin:35px 0 18px}.section-head h2{font-size:26px;margin:0}.section-head p{font-size:10px;color:var(--muted);margin:7px 0 0}.text-button{font-size:10px;color:var(--plum);padding:0}.course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.course-card{background:var(--paper);border:1px solid var(--line);border-radius:6px;overflow:hidden;text-align:left;padding:0;transition:transform .2s,box-shadow .2s;position:relative;display:flex;flex-direction:column}.course-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px #4a34300d}.card-photo{height:155px;position:relative;background:#ede8e0;overflow:hidden}.card-photo img{height:100%;width:100%;object-fit:cover}.card-photo.contain img{object-fit:contain;padding:12px;background:#fffefa}.card-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 50%,#35232b32)}.card-number{position:absolute;top:13px;left:13px;border-radius:50%;background:#fffaf3ed;width:28px;height:28px;display:grid;place-items:center;font-size:9px;color:var(--plum);z-index:1}.card-count{position:absolute;bottom:10px;left:13px;font-size:8px;background:#fffaf3e8;padding:2px 7px;border-radius:3px;z-index:1;color:#745c4e}.card-copy{padding:18px;flex:1;display:flex;flex-direction:column}.card-copy h3{font-family:Georgia,serif;font-size:19px;font-weight:400;line-height:1.25;margin:0 0 9px}.card-copy p{font-size:10px;line-height:1.6;color:var(--muted);margin:0 0 16px}.card-foot{margin-top:auto;display:flex;justify-content:space-between;gap:8px;font-size:8px;border-top:1px solid var(--line);padding-top:11px;color:#a18c7d}.card-foot>span:last-child{color:var(--plum)}.feature-strip{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:30px}.feature{padding:27px;border-radius:6px;background:#eee4e1;position:relative;overflow:hidden}.feature:nth-child(2){background:#e8e9df}.feature h3{font:400 24px Georgia,serif;max-width:260px;margin:10px 0 14px}.feature p{font-size:10px;color:#8b7365;max-width:290px}.feature .eyebrow{font-size:7px;color:#9b7c6b}.feature>span:last-child{position:absolute;right:22px;top:30px;font-size:65px;color:#bd9c8e;opacity:.4}.page-title{display:flex;justify-content:space-between;gap:20px;align-items:end;margin:10px 0 27px}.page-title h1{font-size:38px;margin:13px 0}.page-title p{font-size:11px;color:var(--muted);margin:0;max-width:560px}.pill{font-size:8px;display:inline-block;background:#ede4df;border:1px solid #dfd2c8;color:#9a7c68;border-radius:20px;padding:4px 10px;white-space:nowrap}.search-field{background:var(--paper);border:1px solid var(--line);padding:13px 18px;width:100%;border-radius:5px;font-size:12px;outline:none;color:var(--ink)}.filter-row{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0 25px}.filter-row button{font-size:9px;border:1px solid var(--line);border-radius:20px;padding:7px 13px;background:var(--paper);color:var(--muted)}.filter-row button.active{background:var(--plum);color:white;border-color:var(--plum)}.reader-top{display:grid;grid-template-columns:1.5fr .7fr;gap:25px;align-items:center;margin-bottom:26px}.reader-top h1{font-size:35px;margin:13px 0 15px}.reader-top p{font-size:11px;color:var(--muted)}.reader-top .reader-cover{height:180px;background:#ede7df;border-radius:5px;overflow:hidden}.reader-cover img{width:100%;height:100%;object-fit:contain;background:#fffefa}.reader-layout{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:24px;align-items:start}.reader{background:var(--paper);border:1px solid var(--line);border-radius:6px;padding:32px}.reader .eyebrow{font-size:8px;color:#a18674}.reader h2{font-size:29px;margin:16px 0}.reading-meta{display:flex;gap:15px;font-size:8px;letter-spacing:.5px;border-block:1px solid var(--line);padding:12px 0;margin-bottom:22px;color:#a28e7d}.reading-body p{font-size:12px;line-height:1.95;margin-bottom:13px;color:#6d6059}.reading-body h3{font-size:14px;font-weight:500;margin:24px 0 11px;color:#654358}.reading-body ul{padding-left:17px}.reading-body li{font-size:12px;line-height:1.9;color:#6d6059}.reading-body p.lead{font-size:14px;color:#594e49}.callout{border-left:3px solid #bb9b85;padding:16px 18px;background:#f4ede5;font-size:10px;color:#927a68;margin:22px 0;line-height:1.8}.callout b{display:block;color:#795e50;margin-bottom:3px}.lesson-images{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:22px 0}.figure{margin:0;border:1px solid var(--line);border-radius:5px;overflow:hidden;background:white;text-align:left;padding:0}.figure img{height:190px;width:100%;object-fit:contain;background:#fff}.figure figcaption{display:block;border-top:1px solid var(--line);padding:10px 12px;font-size:9px;line-height:1.5;color:#776053}.figure small{display:block;font-size:7px;color:#b29b88;margin-top:4px}.figure:hover{border-color:#b68e9f}.reader-sidebar{position:sticky;top:95px}.contents{border:1px solid var(--line);border-radius:5px;background:var(--paper);padding:18px}.contents h3{font-size:10px;margin:0 0 17px;font-weight:500}.contents button{display:flex;gap:10px;align-items:start;text-align:left;font-size:9px;line-height:1.5;padding:9px 0;width:100%;color:#9a8677;border-bottom:1px solid #eee6df}.contents button:last-child{border-bottom:0}.contents button span{font-size:8px;color:#b8a18e}.contents button.active{color:var(--plum);font-weight:600}.contents button.done span{color:var(--green)}.side-note{padding:18px;margin-top:12px;background:#ede7df;border-radius:5px}.side-note h4{font:400 18px Georgia,serif;margin:0 0 11px}.side-note p{font-size:9px;color:#967d6a}.side-note button{font-size:9px;padding:0;color:var(--plum)}.reading-controls{display:flex;justify-content:space-between;gap:12px;align-items:center;border-top:1px solid var(--line);padding-top:22px;margin-top:26px}.reading-controls button{font-size:9px}.reading-controls .button{padding:11px 15px}.notes{margin-top:24px;border-top:1px solid var(--line);padding-top:20px}.notes label{font-size:10px;display:block;margin-bottom:8px}.notes textarea,.assignment textarea{width:100%;border:1px solid var(--line);background:#fffdf8;border-radius:4px;resize:vertical;padding:12px;font-size:11px;color:var(--ink)}.notes small{font-size:8px;color:#a68b76}.quiz{margin:25px 0;padding:18px;background:#f3ece6;border-radius:5px}.quiz h3{font-size:12px;font-weight:500;margin-bottom:12px}.quiz>p{font-size:11px;color:#8e7462}.quiz button{display:block;background:var(--paper);border:1px solid var(--line);width:100%;padding:10px 12px;text-align:left;font-size:10px;margin:7px 0;border-radius:4px}.quiz button.right{background:#e7eee3;border-color:#a3b19a}.quiz button.wrong{background:#f1dcd7;border-color:#c99b91}.quiz-feedback{font-size:10px;color:var(--plum);margin-top:11px}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.gallery .figure img{height:210px}.gallery .figure figcaption{font-size:10px}.library-counter{font-size:10px;color:#ac927d;margin-bottom:17px}.empty{text-align:center;padding:60px 20px;color:#a48d7c;font-size:12px}.assignment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.assignment{background:var(--paper);border:1px solid var(--line);padding:24px;border-radius:6px}.assignment .eyebrow{color:#a78c78;font-size:8px}.assignment h3{font:400 23px/1.2 Georgia,serif;margin:14px 0}.assignment p{font-size:11px;color:#9a7e68}.assignment a{font-size:10px;color:var(--plum)}.assignment button{font-size:10px}.assignment .status{font-size:9px;color:var(--green);margin-top:10px}.upload{padding:23px;border:1px dashed #cbb39e;border-radius:4px;background:#fcf9f2;margin:18px 0;text-align:center}.upload strong{font:400 20px Georgia,serif}.upload p{font-size:10px}.upload input{max-width:100%;font-size:10px;margin:13px 0}.preview-images{display:flex;gap:10px;flex-wrap:wrap;margin-top:13px}.preview-images img{height:90px;width:100px;object-fit:cover;border-radius:4px}.practice-layout{display:grid;grid-template-columns:1.6fr .8fr;gap:20px;align-items:start}.practice-layout .assignment{padding:28px}.feedback-card{background:var(--paper);border:1px solid var(--line);padding:25px;border-radius:6px;margin-bottom:15px}.feedback-card h3{font:400 24px Georgia,serif;margin:10px 0}.feedback-card p{font-size:12px;line-height:1.8;color:#8e7563}.feedback-card .eyebrow{color:#a48a74;font-size:8px}.feedback-avatar{display:flex;gap:12px;align-items:center;margin:17px 0}.feedback-avatar .avatar{width:35px;height:35px}.feedback-avatar b{font-size:11px;font-weight:400}.feedback-avatar small{display:block;font-size:9px;color:var(--muted)}.rubric{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.rubric div{padding:13px;background:#f4eee6;border-radius:4px;font-size:9px}.rubric b{display:block;color:#9a7b65;font-size:8px;letter-spacing:1px;margin-bottom:5px}.timeline{padding-left:20px;border-left:1px solid #d8c4b0;margin-top:25px}.timeline p{position:relative}.timeline p:before{content:'';width:7px;height:7px;background:#be9d83;border-radius:50%;position:absolute;left:-24px;top:7px}#menu,.close-menu{display:none}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);background:var(--plum);color:white;padding:12px 23px;border-radius:5px;font-size:11px;z-index:100;opacity:0;pointer-events:none;transition:.2s}#toast.show{opacity:1;transform:translate(-50%,0)}dialog{max-width:1100px;width:calc(100% - 40px);height:90vh;border:0;border-radius:6px;padding:22px;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#201720ca;backdrop-filter:blur(9px)}.lightbox-toolbar{display:flex;justify-content:space-between;align-items:center;gap:35px;font-size:9px;color:#9d8169;padding-right:35px}.lightbox-toolbar button{font-size:10px;color:var(--plum)}.lightbox-close{position:absolute;right:13px;top:10px;font-size:26px;color:var(--plum)}.lightbox-image{height:calc(100% - 90px);overflow:auto;margin-top:17px;display:flex;align-items:flex-start;justify-content:center;background:white}.lightbox-image img{max-height:100%;object-fit:contain;width:auto;max-width:100%}.lightbox-image.zoom img{max-height:none;width:1600px;max-width:none}.lightbox-image.zoom{justify-content:flex-start}.lightbox-image img{margin:auto}#image-caption{font-size:10px;margin:12px 0}.review-label{font-size:8px;color:#9c7761;background:#f2e4d5;padding:3px 6px;display:inline-block;margin-top:12px}body:has(dialog[open]){overflow:hidden}
@media(min-width:1600px){.card-photo{height:190px}.welcome{min-height:350px}}@media(max-width:1150px){aside{width:235px;padding-inline:15px}main{margin-left:235px}header{padding-inline:28px}#page{padding-inline:28px}.course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reader-layout{grid-template-columns:minmax(0,1fr) 195px;gap:16px}.reader{padding:25px}.welcome-copy{padding:28px}.welcome h1{font-size:35px}.stat{padding:16px;gap:12px}.stat b{font-size:12px}.saved{font-size:8px}.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:850px){aside{transform:translateX(-100%);width:275px;transition:.2s}aside.open{transform:translateX(0)}main{margin-left:0}#menu{display:block;font-size:17px;margin-right:12px;padding:0}.close-menu{display:block;position:absolute;right:12px;top:22px;font-size:25px;color:var(--muted)}#scrim.show{position:fixed;inset:0;background:#30212c90;z-index:25}header{justify-content:flex-start}.header-right{margin-left:auto}.login{grid-template-columns:1fr 1fr}.login-right{padding:40px 30px}.login-form h2{font-size:34px}.login-photo .brand,.login-statement,.photo-credit{left:30px}.login-statement h1{font-size:43px}.reader-layout{grid-template-columns:minmax(0,1fr) 200px}.practice-layout{grid-template-columns:1fr}.login-foot{font-size:6px}}
@media(max-width:600px){.login{display:block}.login-photo{height:250px;min-height:0}.login-photo>img{object-position:center 38%}.login-photo .brand{top:23px;font-size:29px;left:25px}.login-photo .brand span{font-size:6px;margin-top:9px}.login-statement{bottom:26px;left:25px}.login-statement .eyebrow{font-size:7px}.login-statement h1{font-size:31px;margin:11px 0 0}.login-statement p,.photo-credit{display:none}.login-right{padding:33px 25px 50px}.login-form{max-width:none}.login-form h2{font-size:32px;margin:17px 0}.login-form>p{font-size:11px}.login-foot{bottom:16px}.demo{margin-top:22px}.login-form form{margin-top:20px}header{height:60px;padding:0 18px}.breadcrumbs{font-size:9px;gap:8px}.breadcrumbs button{font-size:9px}.breadcrumbs span:last-child{max-width:145px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.saved{display:none}.header-right .avatar{width:28px;height:28px}#page{padding:22px 18px 40px}.welcome{grid-template-columns:1fr;position:relative;min-height:300px}.welcome-photo{position:absolute;inset:0;opacity:.2}.welcome-photo:after{background:linear-gradient(90deg,#ede2d9,transparent)}.welcome-copy{position:relative;z-index:1;padding:28px}.welcome h1{font-size:34px}.welcome-copy .eyebrow{font-size:7px}.welcome p{font-size:11px;color:#846b5b}.welcome-photo span{display:none}.stats-row{grid-template-columns:1fr 1fr;gap:9px;margin-top:11px}.stat{padding:13px;gap:10px}.stat:first-child{grid-column:1/-1}.stat-icon{width:31px;height:31px;font-size:14px}.stat b{font-size:13px}.stat small{font-size:8px}.section-head{margin-top:29px;gap:10px}.section-head h2{font-size:25px}.section-head .text-button{font-size:8px}.course-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.card-photo{height:110px}.card-copy{padding:13px 11px}.card-copy h3{font-size:16px}.card-copy p{font-size:9px;line-height:1.5}.card-foot{font-size:7px;gap:4px;flex-wrap:wrap}.card-number{width:23px;height:23px;left:8px;top:8px;font-size:8px}.card-count{font-size:7px;bottom:7px;left:8px}.feature-strip{grid-template-columns:1fr;gap:10px}.feature{padding:23px}.feature h3{font-size:23px}.page-title{display:block}.page-title h1{font-size:33px}.page-title .pill{margin-top:15px}.filter-row{gap:6px}.filter-row button{font-size:8px;padding:6px 10px}.reader-top{grid-template-columns:1fr;gap:12px}.reader-top .reader-cover{height:150px;order:-1}.reader-top h1{font-size:30px}.reader-layout{display:flex;flex-direction:column-reverse}.reader-sidebar{position:static;width:100%}.contents{padding:14px}.contents h3{margin-bottom:9px}.contents button{padding:7px 0;font-size:9px}.contents{max-height:230px;overflow:auto}.side-note{display:none}.reader{padding:21px 16px;width:100%}.reader h2{font-size:25px}.reading-body p,.reading-body li{font-size:12px}.reading-meta{font-size:7px;gap:10px}.lesson-images{gap:8px}.figure img{height:155px}.figure figcaption{font-size:8px;padding:9px}.figure small{font-size:7px}.reading-controls{gap:7px;flex-wrap:wrap}.reading-controls .button{font-size:8px;padding:10px 12px}.reading-controls .text-button{font-size:8px}.gallery{gap:10px}.gallery .figure img{height:160px}.gallery .figure figcaption{font-size:9px}.assignment-grid{grid-template-columns:1fr}.assignment{padding:20px}.practice-layout .assignment{padding:22px}.rubric{grid-template-columns:1fr}.feedback-card{padding:22px}.feedback-card h3{font-size:23px}footer{margin:0 18px;font-size:6px;flex-wrap:wrap;gap:10px}.lightbox-toolbar{font-size:7px}.lightbox-toolbar button{font-size:9px}dialog{padding:16px;width:calc(100% - 20px)}#toast{font-size:10px;width:calc(100% - 35px);text-align:center}.review-label{font-size:7px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

@media(min-width:601px){.contents{max-height:58vh;overflow:auto}}
.review-photos{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin:20px 0}.review-photos img{height:190px;object-fit:contain}.review-message{border-left:3px solid #b79782;background:#f7f1e8;padding:16px;margin:14px 0}.review-message small{display:block;color:#9c8779;font-size:9px;margin-top:8px}.review-message p{white-space:pre-wrap}.pill.accepted{background:#e5eee0;color:#4c7146;border-color:#b6c8ad}.pill.revision{background:#f6e6d3;color:#976323;border-color:#d8bd98}.pill.pending{background:#eee5f1;color:#73547e}.review-form{border-top:1px solid var(--line);padding-top:20px;margin-top:20px}.review-form>label{display:block;font-size:11px;margin-bottom:8px}.review-form textarea{width:100%;padding:13px;border:1px solid var(--line);border-radius:4px;background:var(--paper);resize:vertical;color:var(--ink)}.review-controls{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:15px}.review-controls label{font-size:11px}.review-controls select{padding:10px;border:1px solid var(--line);border-radius:4px;background:white;color:var(--ink);font:inherit;margin-left:10px}@media(max-width:600px){.review-controls{align-items:flex-start;flex-direction:column}.review-photos{grid-template-columns:repeat(2,1fr)}.review-photos img{height:150px}}
.auth-switch{font-size:11px;color:var(--plum);padding:16px 0 0}.login-form input:invalid:not(:placeholder-shown){border-color:#bb847b}#registration-confirm small{display:block;font-size:9px;color:var(--muted);margin-top:9px}.students-table{overflow-x:auto;background:var(--paper);border:1px solid var(--line);border-radius:5px;margin-bottom:20px}.students-table table{width:100%;border-collapse:collapse;text-align:left;font-size:11px}.students-table td,.students-table th{padding:14px 17px;border-bottom:1px solid var(--line)}.students-table th{font-size:9px;color:var(--muted);font-weight:500;white-space:nowrap}.students-table td small{display:block;color:var(--muted);font-size:9px}.students-table td b{font-weight:500}.student-filter-label{display:block;font-size:10px;color:var(--muted);margin:20px 0 8px}.student-overview{margin-bottom:30px}@media(max-width:600px){.students-table td,.students-table th{padding:12px;font-size:10px}.students-table{max-width:100%}}
