/* Certificate UI. PDF, issuance rules and database schema are unchanged. */
.pmcs-panel { box-sizing:border-box; min-width:0; max-width:760px; margin:28px 0; padding:24px; border:1px solid #dfe3dc; border-radius:12px; background:#f5f6f3; color:#232624; font-family:inherit; font-size:16px; line-height:1.65; text-align:left; overflow-wrap:anywhere; }
.pmcs-panel h2 { margin:0 0 16px; padding:0; font-size:26px; line-height:1.25; letter-spacing:-.025em; color:#232624; }
.pmcs-panel p { margin:12px 0; }
.pmcs-panel form { margin:20px 0; }
.pmcs-panel .pmcs-label { display:block; font-weight:600; margin-bottom:8px; }
.pmcs-panel input[type=text] { display:block; box-sizing:border-box; width:100%; max-width:560px; height:auto; min-height:48px; padding:12px; border:1px solid #aab2a7; border-radius:8px; background:#fff; color:#232624; font:inherit; }
.pmcs-panel .pmcs-check { display:flex; align-items:flex-start; gap:10px; margin:16px 0; font-size:15px; line-height:1.6; cursor:pointer; }
.pmcs-panel input[type=checkbox] { flex:0 0 18px; width:18px; height:18px; margin:4px 0 0; accent-color:#b93038; }
.pmcs-panel .pmcs-button { display:inline-flex; align-items:center; justify-content:center; box-sizing:border-box; min-height:48px; max-width:100%; padding:12px 20px; border:0; border-radius:8px; background:#b93038; color:#fff; text-decoration:none; font-family:inherit; font-size:16px; font-weight:600; line-height:1.4; white-space:normal; text-align:center; cursor:pointer; }
.pmcs-panel .pmcs-button:hover { background:#982730; color:#fff; }
.pmcs-panel :focus-visible { outline:3px solid #982730; outline-offset:4px; }
.pmcs-panel .pmcs-help { margin:16px 0 0; color:#5b625d; font-size:14px; line-height:1.6; }
.pmcs-panel .pmcs-status { font-weight:700; color:#245b38; }
.pmcs-notice { box-sizing:border-box; margin:16px 0; padding:16px 18px; border:1px solid #e9bcba; border-radius:10px; background:#fff0ef; color:#902a2d; font-size:15px; line-height:1.6; }
.pmcs-panel .pmcs-notice--success { border-color:#b9d8c2; background:#edf7ef; color:#205b38; }
.pmcs-panel a:not(.pmcs-button) { color:#982730; text-decoration:underline; text-underline-offset:3px; }
@media(max-width:600px) {
 .pmcs-panel { padding:20px; }
 .pmcs-panel h2 { font-size:23px; }
 .pmcs-panel .pmcs-button { width:100%; }
}
