:root{color:#273e37;--forest:#244f46;background:#f5f3eb;font-family:Arial,Helvetica,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.6;cursor:wait}a{color:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline-offset:4px;outline:3px solid #956b2b}h1,h2{letter-spacing:-1px;font-family:Georgia,serif;font-weight:400}h1{margin:15px 0 20px;font-size:38px;line-height:1.15}h2{margin:0 0 15px;font-size:25px}p{line-height:1.7}img{object-fit:contain;flex-shrink:0}.login-page{background:radial-gradient(at 0 0,#e5ecdd,#0000 60%);place-items:center;min-height:100svh;padding:35px 20px;display:grid}.login-card{background:#fffefb;border:1px solid #d7e0d1;border-radius:14px;width:min(100%,540px);padding:35px 42px;box-shadow:0 15px 50px #244f4609}.eyebrow{letter-spacing:1.5px;color:#536e5b;margin-top:24px;font-size:10px;line-height:1.8}.intro{color:#5a6b60;max-width:650px;margin-bottom:25px;font-size:14px}.field{margin:20px 0}label,legend{font-size:13px;font-weight:600;line-height:1.6}input:not([type=checkbox]),select{color:#273e37;background:#fffefb;border:1px solid #afbfad;border-radius:6px;width:100%;min-width:0;margin-top:7px;padding:13px;display:block}input[type=checkbox]{accent-color:var(--forest);flex-shrink:0;width:18px;height:18px}input[autocomplete=one-time-code]{letter-spacing:5px;font:24px monospace}.button{border:1px solid var(--forest);background:var(--forest);color:#fff;border-radius:5px;justify-content:center;align-items:center;min-height:44px;padding:13px 19px;font-size:13px;text-decoration:none;transition:background .2s;display:inline-flex}.button:hover{background:#356757}.secondary{color:var(--forest);background:0 0;border-color:#b6c5b1}.secondary:hover{background:#e8eedf}.message{color:#345d49;overflow-wrap:anywhere;min-height:0;font-size:13px}.message:not(:empty){background:#ecf1e3;border-radius:5px;margin:15px 0;padding:12px}.message.error{color:#87372d;background:#f7e8e2}.privacy-note{color:#617160;font-size:12px;line-height:1.8}.back-link{margin-top:15px;font-size:12px;display:inline-block}.admin-header{background:#fffefb;border-bottom:1px solid #dce4d5;justify-content:space-between;align-items:center;gap:20px;padding:13px 40px;display:flex}.brand{align-items:center;gap:17px;text-decoration:none;display:flex}.brand img{width:65px;height:65px}.brand>span{font:24px Georgia,serif}.brand small{letter-spacing:1px;margin-top:8px;font:10px Arial,sans-serif;display:block}.admin-layout{grid-template-columns:230px 1fr;min-height:calc(100svh - 92px);display:grid}aside{background:#eaf0e3;border-right:1px solid #d7e2ce;min-width:0;padding:26px 20px}aside .eyebrow{margin-top:0;padding:0 10px}nav{flex-direction:column;gap:8px;min-width:0;max-width:100%;display:flex}.nav-button{text-align:left;color:var(--forest);background:0 0;border:0;border-radius:6px;padding:14px 12px;font-size:13px}.nav-button:hover,.nav-button[aria-current=true]{background:#dce7d1}.admin-main{width:100%;min-width:0;max-width:1250px;padding:25px 40px 50px}.panel{background:#fffefb;border:1px solid #d8e2d0;border-radius:9px;margin:20px 0;padding:25px}.panel p{color:#52634f;font-size:13px}.panel small{overflow-wrap:anywhere;font-size:11px;line-height:1.8}.panel .tag{background:#e6eddc;border-radius:15px;padding:5px 9px;font-size:10px;display:inline-block}.tag.inactive{background:#f4e2d7}.user-card{justify-content:space-between;align-items:center;gap:25px;display:flex}.user-card p{overflow-wrap:anywhere}.actions{flex-direction:column;gap:10px;min-width:150px;display:flex}.module-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.module-grid .panel{margin-bottom:0}.audit-list strong{font-size:13px}.audit-list pre{white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%;font:12px/1.7 monospace}details{margin-top:15px}summary{cursor:pointer;font-size:12px}dialog{color:#273e37;background:#fffefb;border:1px solid #cedbc3;border-radius:12px;width:min(680px,100% - 30px);max-height:90svh;margin:0 auto;padding:32px;top:5svh;bottom:auto;overflow-y:auto}dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#19392f80}dialog h2{padding-right:60px}.close{float:right;color:#4b6755;background:0 0;border:0;padding:8px;font-size:12px;text-decoration:underline}fieldset{border:1px solid #ccd8c2;border-radius:6px;margin:25px 0;padding:18px}.permission-line{grid-template-columns:1fr 145px;align-items:center;gap:15px;margin:10px 0;font-size:12px;font-weight:400;display:grid}.permission-line select{padding:9px;font-size:12px}.check-line{align-items:center;gap:12px;margin:15px 0;font-weight:400;display:flex}.skip-link{z-index:99;background:#fff;padding:12px;position:fixed;top:-100px;left:15px}.skip-link:focus{top:15px}[hidden]{display:none!important}@media (width<=760px){.admin-header{gap:12px;padding:13px 18px}.brand{gap:9px}.brand>span{font-size:19px}.brand img{width:50px;height:50px}.admin-header .button{padding:10px;font-size:11px}.admin-layout{grid-template-columns:minmax(0,1fr)}aside{border-bottom:1px solid #d7e2ce;border-right:0;padding:12px 18px}aside .eyebrow{display:none}nav{flex-direction:row;gap:5px;overflow-x:auto}.nav-button{white-space:nowrap;padding:12px;font-size:12px}.admin-main{padding:20px 18px 35px}h1{font-size:32px}.user-card{display:block}.actions{flex-flow:wrap;margin-top:20px}.module-grid{grid-template-columns:1fr;gap:0}.login-card{padding:26px}.login-card h1{font-size:32px}dialog{padding:25px 20px}.permission-line{grid-template-columns:1fr 125px;gap:10px}.panel{padding:23px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
