:root{--bg:#fff;--fg:#1a1a1a;--muted:#5f6368;--accent:#1f4fd8;--ok:#1e7f3c;--bad:#b3261e;--card:#f5f6f8;--border:#dfe1e5}@media (prefers-color-scheme:dark){:root{--bg:#121314;--fg:#e8eaed;--muted:#9aa0a6;--accent:#8ab4f8;--ok:#81c995;--bad:#f28b82;--card:#1e1f21;--border:#3c4043}}*{box-sizing:border-box}body{background:var(--bg);color:var(--fg);margin:0;font:16px/1.5 system-ui,-apple-system,sans-serif}.wrap{max-width:760px;margin:0 auto;padding:24px 16px 64px}nav{border-bottom:1px solid var(--border);gap:16px;padding-bottom:16px;display:flex}nav a{color:var(--accent);text-decoration:none}.card{background:var(--card);border:1px solid var(--border);border-radius:10px;margin:16px 0;padding:16px}.ok{color:var(--ok)}.bad{color:var(--bad)}.muted{color:var(--muted)}textarea{width:100%;min-height:90px;font:inherit;color:var(--fg);background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:10px}button{font:inherit;background:var(--accent);color:var(--bg);cursor:pointer;border:0;border-radius:8px;margin-top:8px;padding:8px 16px}button:disabled{opacity:.5;cursor:default}ol.loop{padding-left:20px}.field{width:100%;font:inherit;color:var(--fg);background:var(--bg);border:1px solid var(--border);border-radius:8px;margin:12px 0 4px;padding:10px;display:block}.field.small{width:90px;margin:0 8px;display:inline-block}button.secondary{color:var(--accent);border:1px solid var(--border);background:0 0}.radio{flex-wrap:wrap;align-items:center;gap:8px;margin:10px 0;display:flex}details summary{cursor:pointer;margin-bottom:8px;font-weight:600}.skills{border-collapse:collapse;width:100%;font-size:14px}.skills th,.skills td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:6px 8px}.skills tr.ok td:nth-child(3){color:var(--ok)}.skills tr.bad td:nth-child(3){color:var(--bad)}@media (max-width:600px){.skills td:nth-child(5),.skills th:nth-child(5){display:none}}nav{flex-wrap:wrap;align-items:center}a.button{background:var(--accent);color:var(--bg);border-radius:8px;padding:8px 16px;text-decoration:none;display:inline-block}a.button.secondary{color:var(--accent);border:1px solid var(--border);background:0 0}form label{margin-top:8px;display:block}
