:root { --r8-forest:#183d2b; --r8-olive:#55763e; --r8-sage:#dce5d4; --r8-cream:#fbf7ed; --r8-ink:#173025; }
* { box-sizing:border-box; }
body.regulat8-portal { margin:0; background:var(--r8-cream); color:var(--r8-ink); font:16px/1.55 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.r8-shell { display:grid; grid-template-columns:260px 1fr; min-height:100vh; }
.r8-sidebar { padding:2rem 1.25rem; background:linear-gradient(160deg,var(--r8-forest),#29573c); color:#fff; }
.r8-brand { display:inline-block; color:inherit; font-family:Georgia,serif; font-size:1.8rem; letter-spacing:.15em; text-decoration:none; }
.r8-sidebar nav { display:grid; gap:.35rem; margin-top:3rem; }
.r8-sidebar nav a { padding:.65rem .75rem; border-radius:.5rem; color:#fff; text-decoration:none; }
.r8-sidebar nav a:hover,.r8-sidebar nav a:focus { background:#ffffff20; }
.r8-content { padding:2rem; max-width:1280px; width:100%; }
.r8-content>header { display:flex; justify-content:space-between; align-items:center; }
.r8-content>header a { color:var(--r8-forest); }
.r8-hero,.r8-card { border:1px solid #d9dfd2; border-radius:1rem; background:#fff; box-shadow:0 8px 24px #1730250d; }
.r8-hero { margin:1.5rem 0; padding:2rem; background:linear-gradient(135deg,var(--r8-sage),#f7f1e6); }
.r8-hero p { margin:0; color:var(--r8-olive); font-weight:700; }
.r8-hero h1,.r8-hero h2,.r8-card h2 { margin:.2rem 0 0; font-family:Georgia,serif; }
.r8-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.r8-card { padding:1.25rem; margin-bottom:1rem; }
.r8-auth { display:grid; place-content:center; min-height:100vh; padding:1rem; background:radial-gradient(circle at top,#789a55,var(--r8-forest)); }
.r8-auth>.r8-brand { text-align:center; margin-bottom:1rem; }
.r8-auth .r8-card { width:min(100%,460px); }
.r8-auth label,.r8-form label { display:block; margin-top:1rem; font-weight:700; }
.r8-auth input,.r8-form input,.r8-form select,.r8-form textarea { width:100%; padding:.7rem; border:1px solid #b5c2ae; border-radius:.4rem; background:#fff; }
.r8-form textarea { min-height:7rem; resize:vertical; }
.r8-auth input[type=submit],.r8-form button { margin-top:1rem; padding:.7rem 1rem; background:var(--r8-forest); color:#fff; border:0; border-radius:.4rem; font-weight:700; cursor:pointer; }
.r8-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 1rem; }
.r8-form button { align-self:end; }
.r8-list { list-style:none; margin:0; padding:0; }
.r8-list li { display:flex; justify-content:space-between; gap:1rem; padding:.65rem 0; border-bottom:1px solid #e7eadf; }
.r8-list li:last-child { border-bottom:0; }
.r8-list span { color:var(--r8-olive); font-size:.9rem; }
.r8-notice { padding:1rem; border-radius:.5rem; background:#e5f0df; color:#284e2e; text-transform:capitalize; }
@media(max-width:760px) { .r8-shell { grid-template-columns:1fr; } .r8-sidebar { padding:1.25rem; } .r8-sidebar nav { grid-template-columns:repeat(2,minmax(0,1fr)); margin-top:1.5rem; } .r8-content { padding:1rem; } .r8-grid,.r8-form { grid-template-columns:1fr; } }
