html.hw-cert-modal-open { overflow:hidden; }
.hw-cert-dialog { position:fixed;inset:0;margin:auto;box-sizing:border-box;width:min(760px,calc(100vw - 32px));height:min(700px,calc(100dvh - 32px));max-width:none;max-height:calc(100dvh - 32px);padding:0;border:0;border-radius:12px;background:#fff;color:#24324b;box-shadow:0 18px 70px #1326403d;overflow:hidden; }
.hw-cert-dialog[open] { display:flex;flex-direction:column; }
.hw-cert-dialog::backdrop { background:rgba(15,23,42,.42); }
.hw-cert-dialog-head { display:flex;align-items:center;justify-content:space-between;gap:16px;flex:none;padding:16px 22px;border-bottom:1px solid #e8edf4; }
.hw-cert-dialog-head h2 { font:600 18px/26px system-ui,sans-serif;margin:0; }
.hw-cert-dialog-close { width:32px;height:32px;padding:0;border:0;border-radius:6px;background:transparent;color:#65738a;cursor:pointer;font:26px/32px system-ui,sans-serif; }
.hw-cert-dialog-close:hover { background:#f0f4fa; }
.hw-cert-dialog-close:focus-visible { outline:2px solid #0f67fe;outline-offset:2px; }
.hw-cert-dialog iframe { display:block;border:0;width:100%;flex:1;min-height:0;background:#fff; }
.hw-cert-dialog-loading,.hw-cert-dialog-error { padding:24px;font:14px/1.7 system-ui,sans-serif;color:#68768c; }
.hw-cert-dialog-error button { margin-top:14px;padding:8px 16px;border:1px solid #c7d8f4;border-radius:6px;background:#fff;color:#0f67fe;cursor:pointer; }
.hw-cert-page { margin:0;padding:22px;box-sizing:border-box;background:#fff;color:#24324b;font:14px/1.65 system-ui,-apple-system,"Segoe UI",sans-serif; }
.hw-cert-page * { box-sizing:border-box; }
.hw-cert-page main { max-width:720px;margin:0 auto; }
.hw-cert-page .card { padding:18px 20px;margin-bottom:16px;border:1px solid #e3e9f2;border-radius:10px;background:#fff; }
.hw-cert-page h2 { margin:0 0 14px;font-size:17px;line-height:1.5; }
.hw-cert-page p { margin:0 0 14px; }
.hw-cert-page .hw-cert-role { color:#53637d; }
.hw-cert-page .form-group { margin-bottom:16px; }
.hw-cert-page label { display:block;margin-bottom:6px;font-weight:500; }
.hw-cert-page input[type=text],.hw-cert-page select { width:100%;max-width:420px;height:40px;padding:0 12px;border:1px solid #d9e1ed;border-radius:6px;background:#fff;color:inherit;font:inherit; }
.hw-cert-page input[type=file] { max-width:100%;font:inherit; }
.hw-cert-page input:focus-visible,.hw-cert-page select:focus-visible { outline:2px solid #bdd4ff;outline-offset:1px;border-color:#0f67fe; }
.hw-cert-page .btn { display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:7px 18px;border:1px solid #d6dfec;border-radius:6px;background:#fff;color:#36516f;font:inherit;text-decoration:none;cursor:pointer; }
.hw-cert-page .btn-primary { border-color:#0f67fe;background:#0f67fe;color:#fff; }
.hw-cert-page .alert { padding:12px 14px;margin:0 0 16px;border:1px solid #dfebfb;border-radius:7px;background:#f4f8fe;color:#385b89;overflow-wrap:anywhere; }
.hw-cert-page .alert-warn { background:#fff8e7;border-color:#f6e6af;color:#8d6a18; }
.hw-cert-page .alert-error { background:#fff1f0;border-color:#ffd6d1;color:#a83c32; }
.hw-cert-page .alert-success { background:#eefaf1;border-color:#c9e9d0;color:#287b40; }
.hw-cert-page .badge { display:inline-block;padding:2px 8px;border-radius:5px;font-size:12px;line-height:20px; }
.hw-cert-page .badge-amber { background:#fff1c7;color:#946918; }.hw-cert-page .badge-green { background:#e4f5e9;color:#287b40; }.hw-cert-page .badge-red { background:#fde7e5;color:#ad3a31; }.hw-cert-page .badge-gray { background:#edf1f6;color:#627087; }
.hw-cert-page .muted { color:#7b879b; }.hw-cert-page .small { font-size:12px; }
.hw-cert-page table { width:100%;border-collapse:collapse;margin:8px 0 18px;table-layout:fixed; }
.hw-cert-page th,.hw-cert-page td { padding:12px 14px;border-bottom:1px solid #e8edf4;text-align:left;vertical-align:top;overflow-wrap:anywhere; }
.hw-cert-page th { background:#f7f9fc;font-weight:500;color:#53637d; }
.hw-cert-page td img { max-width:100%!important;object-fit:contain; }
.hw-cert-page summary { cursor:pointer;color:#3867a8;font-weight:500; }
.hw-cert-page details[open] summary { margin-bottom:14px; }
@media(max-width:600px) { .hw-cert-page{padding:14px}.hw-cert-page .card{padding:16px}.hw-cert-page table tr{display:block;padding:12px 0;border-bottom:1px solid #e8edf4}.hw-cert-page table th,.hw-cert-page table td{display:block;width:100%!important;padding:6px 0;border:0;background:none}.hw-cert-dialog-head{padding:12px 16px} }
