:root{--bg:#f4f6f9;--ink:#1a2433;--brand:#0b6b57;--line:#dde3ea;--warn:#b42318}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,sans-serif;background:var(--bg);color:var(--ink)}.layout{display:flex;min-height:100vh}aside{width:230px;background:#10241f;color:#fff;padding:20px;gap:16px}aside,aside nav{display:flex;flex-direction:column}aside nav{gap:4px;flex:1 1}aside a{color:#cfe5df;padding:8px 12px;border-radius:6px;text-decoration:none}aside a.active,aside a:hover{background:#1c3d35;color:#fff}.me{font-size:14px}main{flex:1 1;padding:28px;max-width:1200px}h1{margin-top:0}table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:8px}td,th{padding:10px 12px;text-align:left;border-bottom:1px solid var(--line);font-size:14px}th{background:#eef2f6}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));grid-gap:14px;gap:14px;margin-bottom:24px}.card{background:#fff;border:1px solid var(--line);border-radius:8px;padding:16px}.card b{font-size:26px;display:block}button{background:var(--brand);color:#fff;border:0;padding:7px 12px;border-radius:6px;cursor:pointer;font-size:13px}button.ghost{background:transparent;border:1px solid var(--line);color:inherit}button.danger{background:var(--warn)}input,select,textarea{padding:8px;border:1px solid var(--line);border-radius:6px;font:inherit;width:100%}.row{display:flex;gap:8px;align-items:center;margin-bottom:12px;flex-wrap:wrap}.row input,.row select{width:auto}.badge{padding:2px 8px;border-radius:99px;font-size:12px;background:#e6edf3}.ok{background:#d1f0e4}.bad{background:#fbd9d5}.err{color:var(--warn)}form.stack{display:grid;grid-gap:10px;gap:10px;max-width:420px}label{font-size:13px;display:grid;grid-gap:4px;gap:4px}.login{max-width:360px;margin:12vh auto;background:#fff;padding:28px;border-radius:10px;border:1px solid var(--line)}section{margin-bottom:28px}