:root{--p:#0f5132;--pl:#34c38f;--g:#c9a227;--d:#dc2626;--s:#059669}
*{box-sizing:border-box}
body{margin:0;font-family:-apple-system,Segoe UI,Arial,sans-serif;background:linear-gradient(180deg,#0f5132 0,#f4f7f6 220px);min-height:100vh}
.top{padding:24px 20px 8px;color:#fff;text-align:center}.top h1{margin:0;font-size:1.2rem}.top p{margin:4px 0 0;font-size:.8rem;opacity:.85}
.logo{width:80px;height:80px;border-radius:50%;border:3px solid var(--g);background:#fff;padding:5px;object-fit:cover;margin-bottom:10px}
.wrap{max-width:440px;margin:16px auto 40px;padding:0 16px}
.card{background:#fff;border-radius:20px;padding:22px 20px;box-shadow:0 14px 34px rgba(15,32,39,.15);border-top:4px solid var(--g)}
label{display:block;font-size:.8rem;color:#567;margin:14px 0 6px;font-weight:600}
input[type=text],input[type=date],textarea{width:100%;padding:12px 14px;border:1.5px solid #dfe6e4;border-radius:12px;font:inherit}
input:focus,textarea:focus{outline:0;border-color:var(--p)}textarea{min-height:80px;resize:vertical}
.hint{font-size:.72rem;color:#899;margin-top:5px}
.filebox{border:2px dashed #cfe0da;border-radius:12px;padding:18px;text-align:center;color:#678;font-size:.85rem;cursor:pointer}
.filebox.has{border-color:var(--pl);color:var(--p);background:#f1faf6}input[type=file]{display:none}
.btn{width:100%;padding:15px;border:0;border-radius:14px;background:var(--p);color:#fff;font-weight:700;font-size:1rem;margin-top:20px;cursor:pointer}
.btn:disabled{opacity:.6}.hp{position:absolute;left:-9999px}
.alert{padding:12px 14px;border-radius:10px;font-size:.88rem;margin-bottom:14px}
.ok{background:#eaf7f0;color:#0f5132}.err{background:#fde2e1;color:#a4231b}
.row{border-bottom:1px solid #f1f5f9;padding:10px 0}.row small{display:block;color:#64748b;font-weight:600;text-transform:uppercase;font-size:.75rem}
.lnk{display:inline-block;background:#eff6ff;color:#2563eb;padding:6px 12px;border-radius:8px;text-decoration:none;font-weight:600;font-size:.85rem;border:1px solid #bfdbfe}
.acts{display:flex;gap:10px}.acts .btn{margin-top:10px}.b-ok{background:var(--s)}.b-no{background:var(--d)}
.badge{text-align:center;padding:10px;border-radius:20px;font-weight:700;margin-top:14px}
.s-ok{background:#d1fae5;color:#047857}.s-no{background:#fee2e2;color:#b91c1c}
