:root{--green:#315c3b;--green2:#527b4b;--cream:#f5f3e8;--ink:#263329;--line:#dce3d7}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.55 system-ui,-apple-system,Segoe UI,sans-serif}.top{background:#fff;display:flex;justify-content:space-between;align-items:center;padding:14px max(20px,calc((100% - 1080px)/2));gap:18px;box-shadow:0 2px 12px #253a2510}.brand{display:flex;align-items:center;gap:12px;color:var(--green);text-decoration:none;font-size:15px;line-height:1.2}.brand b{font-size:19px}.leaf{font-size:35px;color:var(--green2)}nav{display:flex;gap:16px;flex-wrap:wrap}a{color:var(--green)}nav a{color:var(--green);text-decoration:none;font-weight:650}.wrap{max-width:1080px;margin:34px auto;padding:0 18px;min-height:70vh}.welcome{background:linear-gradient(120deg,#e0ead9,#f8f6e9);padding:28px;border-radius:18px;margin-bottom:22px}.welcome h1{margin:0 0 5px;color:var(--green)}.welcome p{margin:0}.panel{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px;margin:0 0 22px;box-shadow:0 5px 20px #283b2410}.panel h1,.panel h2{color:var(--green);margin-top:0}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.panel-head h2{margin:0}.button,button{display:inline-block;border:0;border-radius:9px;background:var(--green);color:#fff;padding:11px 17px;font-weight:700;text-decoration:none;font:inherit;cursor:pointer}.secondary{background:#e8eee5;color:var(--green)}.small{padding:7px 10px;font-size:14px;margin:5px 0}.login{max-width:460px;margin:55px auto}.narrow{max-width:620px;margin:20px auto}label{display:block;font-weight:650;margin:13px 0}input,select,textarea{display:block;width:100%;margin-top:6px;padding:12px;border:1px solid #bfcdbb;border-radius:8px;font:inherit;background:#fff;color:var(--ink)}textarea{resize:vertical}form button{margin-top:10px}.error{background:#fff0ed;color:#a22;padding:10px;border-radius:8px}.flash{background:#e2f1df;color:#24552d;padding:12px 16px;border-radius:9px;margin-bottom:18px}.messages{display:flex;flex-direction:column}.message{display:flex;justify-content:space-between;gap:15px;padding:14px 4px;border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink)}.message:last-child{border:0}.message.unread strong{color:var(--green)}.message small{display:block;color:#657266}.message time,.muted{color:#687568;font-size:14px}.bodytext{padding:18px;background:#f7f8f3;border-radius:10px;white-space:normal}.tablewrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;padding:10px;border-bottom:1px solid var(--line);vertical-align:top}th{color:var(--green)}details summary{cursor:pointer;color:var(--green);font-weight:700}.inlineform{min-width:190px}.gridform{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.gridform button{align-self:end;margin-bottom:13px}footer{text-align:center;color:#667264;padding:24px}code{overflow-wrap:anywhere}@media(max-width:650px){.top{align-items:flex-start;flex-direction:column}nav{gap:12px}.wrap{margin:18px auto}.panel{padding:18px}.panel-head{align-items:flex-start;flex-direction:column}.gridform{grid-template-columns:1fr}.message{flex-direction:column;gap:4px}}
