:root{--bg:#f5f5f0;--paper:#fff;--ink:#172b27;--muted:#64736e;--line:#dce3dc;--green:#205a49;--dark:#143d35;--lime:#dcefaf;--red:#ae3d32}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.5 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}
.wrap{max-width:440px;margin:0 auto;padding:48px 16px}.wide{max-width:760px}
.brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:1.3rem;margin-bottom:28px;color:var(--dark);text-decoration:none}
.brand span{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:var(--lime);color:var(--dark)}
.card{background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:24px;margin-bottom:20px}
h1{font-size:1.5rem;margin:0 0 6px}h2{font-size:1.1rem;margin:0 0 12px}p.muted,.muted{color:var(--muted);font-size:.92rem}
label{display:block;font-size:.85rem;font-weight:600;margin:14px 0 4px}
input{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:10px;font:inherit;background:#fff}
input:focus{outline:2px solid var(--green);outline-offset:1px}
button{margin-top:18px;padding:11px 18px;border:0;border-radius:10px;background:var(--green);color:#fff;font:inherit;font-weight:600;cursor:pointer}
button.ghost{background:transparent;color:var(--green);border:1px solid var(--line);margin-top:0;padding:6px 10px;font-size:.85rem}
button.danger{color:var(--red)}
.msg{min-height:1.4em;margin-top:12px;font-size:.9rem}.msg.err{color:var(--red)}.msg.ok{color:var(--green)}
table{width:100%;border-collapse:collapse;font-size:.9rem}td,th{text-align:left;padding:8px 6px;border-bottom:1px solid var(--line);vertical-align:middle}
.row{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}@media(max-width:560px){.row{grid-template-columns:1fr}td:nth-child(3),th:nth-child(3){display:none}}
a{color:var(--green)}
