:root{font-family:Segoe UI,system-ui,sans-serif;color:#1a2332;background:linear-gradient(160deg,#eef6f1,#f7f5f0 45%,#e8eef5);line-height:1.45}*{box-sizing:border-box}body{margin:0;min-height:100vh}.app{max-width:880px;margin:0 auto;padding:1.25rem}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.brand{font-weight:700;font-size:1.25rem;color:#16324f;text-decoration:none}nav{display:flex;gap:1rem}nav a{color:#2a7f7f;text-decoration:none;font-weight:600}.card{background:#ffffffeb;border:1px solid #dce6ec;border-radius:12px;padding:1.25rem 1.5rem;box-shadow:0 8px 24px #16324f0f}h1{margin-top:0;color:#16324f}label{display:block;font-size:.85rem;font-weight:600;margin:.75rem 0 .25rem}input,select,button,textarea{font:inherit}input,select{width:100%;padding:.55rem .65rem;border:1px solid #c5d0d8;border-radius:8px}button{margin-top:1rem;background:#16324f;color:#fff;border:none;border-radius:8px;padding:.65rem 1.1rem;cursor:pointer;font-weight:600}button.secondary{background:#2a7f7f;margin-left:.5rem}button:disabled{opacity:.55;cursor:not-allowed}.grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}@media (max-width: 640px){.grid{grid-template-columns:1fr}}.muted{color:#5b6b7c;font-size:.95rem}.error{color:#b42318;background:#fef3f2;border:1px solid #fecdca;padding:.75rem;border-radius:8px}.ok{color:#027a48;background:#ecfdf3;border:1px solid #abefc6;padding:.75rem;border-radius:8px}pre{overflow:auto;background:#0f1c2e;color:#d7e3f4;padding:1rem;border-radius:8px;font-size:.8rem}.badge{display:inline-block;background:#f0f9f4;border:1px solid #80ce9e;color:#207544;padding:.15rem .5rem;border-radius:999px;font-size:.75rem;font-weight:700}
