:root { --navy:#102e38; --ink:#173842; --teal:#24786f; --muted:#647b80; --line:#dce6e6; --canvas:#f4f8f7; --white:#fff; }
*{box-sizing:border-box}html{color-scheme:light}body{margin:0;background:var(--canvas);color:var(--ink);font:14px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}button,input{font:inherit}button{cursor:pointer}button:disabled{opacity:.6;cursor:wait}a{color:var(--teal)}.page{min-height:100vh;display:grid;grid-template-columns:minmax(280px,41%) minmax(360px,1fr)}.brand{background:var(--navy);color:#f7fbf9;padding:clamp(24px,5vw,72px);display:flex;flex-direction:column;justify-content:space-between;gap:50px}.brand-row{display:flex;align-items:center;gap:14px}.brand-mark{border:1px solid #658983;border-radius:13px;display:grid;place-items:center;width:52px;height:52px;font:700 30px Georgia,serif;color:#b6e1d3}.brand-name{font:normal 32px Georgia,serif;line-height:1}.brand-name small{font:600 10px Arial,sans-serif;display:block;color:#9dbfb9;margin-top:10px;letter-spacing:1.8px}.brand h1{font:normal clamp(34px,4vw,56px)/1.17 Georgia,serif;margin:0;max-width:500px}.brand p{font-size:14px;max-width:450px;color:#c0d3d4;line-height:1.8}.brand-bottom{color:#96b7b8;font-size:11px;letter-spacing:.5px}.main{padding:40px 24px;display:flex;align-items:center;justify-content:center}.card{width:100%;max-width:470px;padding:clamp(23px,4vw,42px);background:white;border:1px solid var(--line);border-radius:18px;box-shadow:0 20px 70px rgba(16,45,53,.06)}.eyebrow{color:#2e837b;font-size:11px;font-weight:750;letter-spacing:2px;margin:0 0 10px}.card h2{font:normal 32px Georgia,serif;margin:0 0 10px}.card .sub{font-size:13px;color:var(--muted);margin:0 0 28px;line-height:1.7}.field{margin-bottom:19px}.field label{display:block;font-size:12px;font-weight:700;color:#344f55;margin-bottom:7px}.field input{width:100%;padding:13px 14px;background:#fff;border:1px solid #cbd9d8;border-radius:9px;color:var(--ink);outline:none}.field input:focus{border-color:#34877c;box-shadow:0 0 0 3px rgba(58,147,133,.12)}.primary{border:0;background:var(--teal);color:white;padding:13px 18px;border-radius:9px;font-size:13px;font-weight:700}.primary:hover:not(:disabled){background:#1c635d}.primary.full{width:100%}.muted{font-size:12px;color:var(--muted)}.error{min-height:24px;color:#a1372b;font-size:12px;margin:12px 0 0}.success{min-height:24px;color:#23765b;font-size:12px;margin:12px 0 0}.note{background:#f1f6f5;color:#557175;border:1px solid #dcebe7;border-radius:9px;padding:11px 14px;font-size:12px;margin:20px 0 0}.login-footer{margin-top:24px;padding-top:18px;border-top:1px solid var(--line);font-size:12px;color:#809397}.small-link{font-size:12px}.hidden{display:none!important}
.admin-page{max-width:1080px;margin:0 auto;padding:28px 20px 70px}.admin-top{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid var(--line);padding:0 0 21px}.admin-brand{font:normal 24px Georgia,serif;color:var(--navy)}.admin-brand span{font:600 11px Arial;color:#528a82;display:block;letter-spacing:1.4px;margin-top:3px}.admin-buttons{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.outline-button{border:1px solid #cadad7;background:white;border-radius:8px;padding:9px 13px;color:#326a65;font-size:12px;font-weight:700}.admin-head h1{font:normal 38px Georgia,serif;margin:26px 0 7px}.admin-head p{color:var(--muted);font-size:13px;max-width:760px;margin:0 0 25px}.admin-columns{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:17px;align-items:start}.box{border:1px solid var(--line);border-radius:14px;background:white;padding:23px;box-shadow:0 6px 24px rgba(16,47,53,.03)}.box h2{font-size:16px;margin:0 0 5px}.box .sub{font-size:12px;color:var(--muted);margin:0 0 19px}.user-row{border:1px solid #e1e9e8;padding:12px;border-radius:9px;margin-bottom:10px;display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}.user-details strong{display:block;font-size:13px}.user-details span{font-size:11px;color:var(--muted)}.user-actions{display:flex;gap:6px;flex-wrap:wrap}.user-actions button{border-radius:7px;border:1px solid #cdded8;padding:7px 10px;color:#27776c;background:#f8fcfa;font-size:11px;font-weight:700}.user-actions button.warn{color:#a14834;background:#fffaf7;border-color:#f2d8cc}.chip{display:inline-block;color:#277b6b;background:#e7f5ef;border-radius:4px;font-size:10px;padding:2px 7px;margin-left:5px;font-weight:700}.chip.off{color:#936448;background:#faf1e9}.box .field{margin-bottom:14px}.box .field input{padding:10px 12px;font-size:13px}.divider{border:0;border-top:1px solid #e2eae9;margin:24px 0}.footnote{margin-top:25px;color:#8b9e9c;font-size:11px}.inline-msg{min-height:20px;font-size:12px;color:#277b69}.inline-msg.error{color:#a33830}.admin-disabled{opacity:.65;pointer-events:none}
@media(max-width:850px){.page{grid-template-columns:1fr}.brand{min-height:210px;padding:26px;gap:20px}.brand h1{font-size:31px}.brand p{display:none}.main{padding:25px 15px}.card{padding:28px}.admin-columns{grid-template-columns:1fr}}@media(max-width:430px){.admin-page{padding:18px 12px}.admin-top{align-items:start;flex-direction:column}.admin-head h1{font-size:30px}.user-row{align-items:stretch}.user-actions{width:100%}}

.reset-dialog{border:1px solid #d0ddda;border-radius:15px;box-shadow:0 25px 80px rgba(16,45,53,.25);width:min(94vw,430px);padding:28px;color:#19333d}.reset-dialog::backdrop{background:rgba(11,39,47,.55)}.reset-dialog h2{font:normal 26px Georgia,serif;margin:0 0 5px}.reset-dialog .field{margin-top:18px}.reset-dialog .error{min-height:16px}.dialog-buttons{display:flex;justify-content:end;gap:10px;margin-top:16px}
