:root{color-scheme:light;--ink: #2b2620;--paper: #faf6ee;--accent: #7a3b2e;--muted: #7a7266;--border: #ddd3c0;font-family:Georgia,Iowan Old Style,serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink)}.page{min-height:100vh;display:flex;flex-direction:column}.site-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:2px solid var(--border)}.site-header .brand{font-size:1.3rem;font-weight:700;color:var(--accent);text-decoration:none}.site-header nav{display:flex;align-items:center;gap:1rem}.site-header nav a{color:var(--accent);text-decoration:none}.content{max-width:720px;margin:0 auto;padding:2rem 1.5rem;width:100%}h1{color:var(--accent)}.muted{color:var(--muted)}.error{color:#a33}.class-list,.homework-list,.admin-class-list,.admin-homework-list{list-style:none;padding:0}.class-list li{padding:1rem;border:1px solid var(--border);border-radius:6px;margin-bottom:.75rem;background:#fff}.class-list a{font-size:1.1rem;color:var(--accent);text-decoration:none}.homework-item{padding:1rem;border:1px solid var(--border);border-radius:6px;margin-bottom:1rem;background:#fff}.homework-item-header{display:flex;justify-content:space-between;align-items:baseline;gap:1rem}.homework-item-header h2{margin:0;font-size:1.05rem}.due-date{white-space:nowrap;font-size:.9rem;color:var(--accent);font-weight:700}.homework-description{white-space:pre-wrap;margin:.5rem 0 0}.sign-in-wrap{display:flex;justify-content:center;padding-top:2rem}.denied{color:#a33;padding:2rem;text-align:center}.admin section{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border)}.admin-class-list li,.admin-homework-list li{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;border-bottom:1px solid var(--border)}.admin-class-list li.active{background:#f1e9d8}.link-btn{background:none;border:none;color:var(--accent);cursor:pointer;font-size:1rem;padding:0;text-decoration:underline}.row-actions{display:flex;gap:.5rem}.row-actions button{font-size:.85rem}.inline-form{display:flex;flex-direction:column;gap:.5rem;padding:.75rem;background:#fff;border:1px solid var(--border);border-radius:6px;width:100%}.inline-form input,.inline-form textarea{font-family:inherit;font-size:1rem;padding:.4rem;border:1px solid var(--border);border-radius:4px}.form-actions{display:flex;gap:.5rem}button{cursor:pointer;background:var(--accent);color:#fff;border:none;border-radius:4px;padding:.4rem .8rem;font-family:inherit}button[type=button]{background:var(--muted)}
