:root{--fg:#1d2330;--muted:#667085;--line:#e4e7ec;--bg:#f7f8fa;--brand:#2f5bea;--warn:#b54708;--ok:#067647;--err:#b42318;color:var(--fg);background:var(--bg);font-family:Pretendard,Apple SD Gothic Neo,Malgun Gothic,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}*{box-sizing:border-box}body{margin:0;line-height:1.6}a{color:var(--brand)}main{max-width:960px;margin:0 auto;padding:16px}header.top{border-bottom:1px solid var(--line);background:#fff;flex-wrap:wrap;align-items:center;gap:12px;padding:12px 16px;display:flex}header.top .brand{color:var(--fg);font-size:1.3rem;font-weight:800;text-decoration:none}header.top .tag{color:var(--muted);font-size:.85rem}header.top nav{flex-wrap:wrap;align-items:center;gap:12px;margin-left:auto;display:flex}header.top nav a{text-decoration:none}footer{max-width:960px;color:var(--muted);border-top:1px solid var(--line);margin:32px auto;padding:16px;font-size:.85rem}h1{margin:.4em 0;font-size:1.6rem}h2{margin:1.2em 0 .4em;font-size:1.2rem}h3{margin:.3em 0;font-size:1.05rem}.hero{padding:24px 0 8px}.hero h1{font-size:1.9rem}.muted{color:var(--muted)}.small{font-size:.85rem}.pre{white-space:pre-wrap}.lead{font-size:1.1rem}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.card{border:1px solid var(--line);color:inherit;background:#fff;border-radius:12px;margin:10px 0;padding:14px 16px;text-decoration:none;display:block}.card.builder:hover{border-color:var(--brand)}.card.narrow,.narrow{max-width:560px;margin:24px auto}.card.test{border-style:dashed;border-color:var(--warn);background:#fffaeb}.card.unread{border-left:4px solid var(--brand)}.card.warn{border-color:var(--warn)}.card.ok{border-color:var(--ok)}.card.danger{border-color:#fda29b}.form label{margin:10px 0;font-weight:600;display:block}.form label.check,label.check{align-items:flex-start;gap:8px;margin:10px 0;font-weight:400;display:flex}input,textarea,select{width:100%;font:inherit;background:#fff;border:1px solid #d0d5dd;border-radius:8px;margin-top:4px;padding:8px 10px}input[type=checkbox]{width:auto;margin-top:5px}button,.button{font:inherit;color:var(--fg);cursor:pointer;background:#fff;border:1px solid #d0d5dd;border-radius:8px;margin:4px 4px 4px 0;padding:8px 14px;text-decoration:none;display:inline-block}button.primary,.button.primary{background:var(--brand);border-color:var(--brand);color:#fff}button.subtle,.button.subtle{color:var(--muted);background:0 0}button.link{color:var(--brand);background:0 0;border:none;margin:0;padding:0}button:disabled{opacity:.5;cursor:wait}.button.kakao{color:#191919;background:#fee500;border-color:#fee500;font-weight:700}form.inline{display:inline}.search{gap:8px;margin:12px 0;display:flex}.search input{margin:0}.chips{flex-wrap:wrap;gap:6px;margin:6px 0;display:flex}.chip{color:#3538cd;background:#eef2ff;border-radius:999px;padding:2px 10px;font-size:.8rem}.pill{color:var(--fg);background:#f2f4f7;border-radius:999px;padding:2px 10px;font-size:.78rem}.pill.active{color:var(--ok);background:#ecfdf3}.pill.employed{color:var(--muted);background:#f2f4f7}.pill.resting{color:var(--warn);background:#fffaeb}.badge{background:var(--err);color:#fff;border-radius:999px;margin-left:4px;padding:0 6px;font-size:.7rem}.stats{background:#f5f8ff;border:1px solid #d1e0ff;border-radius:10px;margin:12px 0;padding:10px 14px}.stats.compact{margin:6px 0;padding:4px 10px;font-size:.9rem}.notice{background:#eff8ff;border:1px solid #b2ddff;border-radius:10px;margin:10px 0;padding:10px 14px}.notice.warn{background:#fffaeb;border-color:#fedf89}.notice.test{text-align:center;background:#fffaeb;border-color:#fedf89;border-radius:0;margin:0}.error{color:var(--err);background:#fef3f2;border:1px solid #fecdca;border-radius:10px;margin:10px 0;padding:10px 14px}.ok{color:var(--ok);background:#ecfdf3;border:1px solid #abefc6;border-radius:10px;margin:10px 0;padding:10px 14px}.guide,.agreement{border:1px solid var(--line);background:#f9fafb;border-radius:10px;margin:12px 0;padding:10px 14px}.agreement{background:#f6fef9;border-color:#abefc6}.actions{flex-wrap:wrap;align-items:center;gap:6px;margin:12px 0;display:flex}.messages{flex-direction:column;gap:8px;margin:12px 0;display:flex}.msg{border:1px solid var(--line);background:#fff;border-radius:12px;max-width:80%;padding:8px 12px}.msg.mine{background:#eef4ff;align-self:flex-end}dl dt{margin-top:8px;font-weight:700}dl dd{margin:0}.doc table{border-collapse:collapse;width:100%;font-size:.9rem}.doc th,.doc td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:6px 8px}