:root{color:#1f2933;background:#f7f7f4;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{color:#fff;cursor:pointer;background:#244c5a;border:0;border-radius:6px;padding:.7rem 1rem}button.secondary{color:#1f2933;background:#e8ece8}button:disabled{cursor:not-allowed;opacity:.55}.app-shell{flex-direction:column;min-height:100vh;display:flex}.site-header{background:#fff;border-bottom:1px solid #d7ddd8;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem clamp(1rem,4vw,3rem);display:flex}.brand{color:#1f2933;background:0 0;padding:0;font-weight:800}.brand:disabled{cursor:default;opacity:1}nav{flex-wrap:wrap;justify-content:flex-end;gap:.35rem;display:flex}nav button{color:#324148;background:0 0;padding:.45rem .65rem}main{flex:1;padding:clamp(1rem,3vw,3rem)}footer{color:#5b6670;border-top:1px solid #d7ddd8;padding:1rem clamp(1rem,4vw,3rem)}.hero,.panel{max-width:1060px;margin:0 auto}.hero{align-items:center;min-height:58vh;display:grid}.hero h1{margin:0 0 1rem;font-size:clamp(2.3rem,8vw,5.5rem);line-height:.98}.hero p{max-width:680px}.coming-soon{color:#244c5a;margin:0 0 1rem;font-size:clamp(1.3rem,3vw,2rem);font-weight:800}.panel{background:#fff;border:1px solid #d7ddd8;border-radius:8px;padding:clamp(1rem,3vw,2rem)}.panel.narrow{max-width:460px}.panel.wide{max-width:1120px}.panel.readable{max-width:760px}.eyebrow{color:#8a4d2f;letter-spacing:0;text-transform:uppercase;margin:0 0 .6rem;font-size:.78rem;font-weight:800}.actions,.section-heading{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.section-heading{justify-content:space-between;margin-bottom:1.25rem}.section-heading h1{margin:0}form{gap:1rem;display:grid}label,.field-group{gap:.35rem;font-weight:700;display:grid}input,select,textarea{color:#1f2933;border:1px solid #bfc8c2;border-radius:6px;width:100%;padding:.68rem .75rem}textarea{resize:vertical;min-height:92px}fieldset{border:1px solid #d7ddd8;border-radius:8px;gap:.65rem;margin:0;padding:1rem;display:grid}fieldset:disabled{opacity:.72}legend{font-weight:800}.checkbox{grid-template-columns:auto 1fr;align-items:start;gap:.55rem;font-weight:500;display:grid}.checkbox input{width:auto;margin-top:.3rem}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.span-2{grid-column:span 2}.form-note{color:#244c5a;background:#eef4f2;border-radius:6px;padding:.75rem}.stack{gap:1rem;display:grid}.subsection-heading{justify-content:space-between;align-items:center;gap:1rem;display:flex}.subsection-heading h2,.admin-section h2,.stack h2{margin:0;font-size:1.15rem}.check-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.status-line{flex-wrap:wrap;gap:.5rem;display:flex}.status-line span{color:#244c5a;background:#eef4f2;border-radius:999px;padding:.35rem .65rem}.flashcard-page{max-width:560px}.flashcard{text-align:center;background:#111827;gap:1rem;width:100%;margin:1rem 0;padding:1rem;display:grid}.flashcard img{aspect-ratio:4/5;object-fit:cover;border-radius:6px;width:100%}.flashcard span{font-size:1.35rem;font-weight:800}.directory-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;display:grid}.directory-card{border:1px solid #d7ddd8;border-radius:8px;grid-template-columns:72px 1fr;gap:1rem;padding:1rem;display:grid}.directory-card img,.avatar-placeholder{aspect-ratio:1;object-fit:cover;background:#e8ece8;border-radius:8px;width:72px}.directory-card h2{margin:0 0 .25rem;font-size:1rem}.directory-card p{margin:.2rem 0}.directory-card a{color:#244c5a;display:block}.admin-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-bottom:1.5rem;display:grid}.admin-section{border:1px solid #d7ddd8;border-radius:8px;gap:1rem;padding:1rem;display:grid}.table-list{gap:.65rem;display:grid}.table-row,.moderation-row{border:1px solid #d7ddd8;border-radius:8px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.75rem;padding:.8rem;display:grid}.moderation-row{grid-template-columns:minmax(0,1fr) auto}.moderation-row h3{margin:0;font-size:1rem}.moderation-row p{margin:.2rem 0 0}button.danger{background:#8a3b36}.search{max-width:320px}code{background:#eef4f2;border-radius:4px;padding:.1rem .25rem}@media (width<=720px){.site-header{flex-direction:column;align-items:stretch}nav{justify-content:flex-start}.form-grid,.check-grid,.admin-grid,.table-row,.moderation-row{grid-template-columns:1fr}.span-2{grid-column:auto}}
