.sds-attendance{box-sizing:border-box;width:min(760px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:22px 24px 16px;border:1px solid #596b80;border-radius:12px;color:#1d1d1b;background:#fff;font:16px/1.45 system-ui,sans-serif;overflow:auto}
.sds-attendance::backdrop{background:rgb(0 0 0 / 65%)}
.sds-attendance h2{font:600 24px/1.3 system-ui,sans-serif;margin:0 48px 16px 0;color:inherit}
.sds-attendance-close{position:absolute;right:12px;top:10px;min-width:44px;min-height:44px;font-size:28px;border:0;background:none;color:inherit;cursor:pointer}
.sds-attendance [role=tablist]{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px;border-bottom:1px solid #b7c1ce;padding-bottom:12px}
.sds-attendance button,.sds-attendance a{font:inherit;min-height:44px;cursor:pointer;box-sizing:border-box}
.sds-attendance [role=tab]{padding:8px;border:1px solid #37527f;background:#fff;color:#243b5e;border-radius:4px}
.sds-attendance [role=tab][aria-selected=true]{background:#37527f;color:#fff}
.sds-attendance [hidden]{display:none!important}
.sds-attendance-grid{display:grid;grid-template-columns:230px minmax(0,1fr);gap:24px;align-items:center}
.sds-attendance-grid img{width:230px;height:230px;max-width:100%;object-fit:contain}
.sds-attendance-info strong{font-size:22px}.sds-attendance-info p{margin:10px 0}
.sds-attendance-message{white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;line-height:1.45}
.sds-attendance-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px}
.sds-attendance-primary,.sds-attendance-secondary{padding:10px 14px;border:1px solid #37527f;border-radius:4px;text-align:center;display:flex;align-items:center;justify-content:center;text-decoration:none!important}
.sds-attendance-primary{background:#37527f;color:#fff!important;font-weight:600!important}.sds-attendance-secondary{background:#fff;color:#243b5e!important}
.sds-attendance-status{margin:10px 0 0;font-size:14px;min-height:20px}.sds-attendance-hint{display:block;text-align:right;font-size:13px}
.sds-attendance :is(a,button,input,textarea,select):focus-visible{outline:3px solid #254e87;outline-offset:3px}
.sds-attendance form{margin:0;padding:0;background:none;border:0;box-shadow:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px}
.sds-attendance form label{font:16px/1.4 system-ui,sans-serif;display:grid;gap:4px;min-width:0}
.sds-attendance form :is(input,textarea,select){box-sizing:border-box;width:100%;font:16px/1.35 system-ui,sans-serif;min-height:44px;padding:8px;border:1px solid #8795a7;border-radius:4px;color:#1d1d1b;background:#fff}
.sds-attendance form textarea{height:68px;min-height:68px;resize:vertical}
.sds-attendance form .form-wide{grid-column:1/-1}.sds-attendance form .form-fallback{display:none}.sds-attendance form [data-form-note]:empty{display:none}.sds-attendance form .form-actions{margin:0;display:flex;gap:16px;align-items:center}
.sds-attendance form [type=submit]{background:#37527f;color:#fff;padding:10px 18px;border:0;border-radius:4px}
@media(max-width:600px){.sds-attendance{padding:20px 16px}.sds-attendance-grid{grid-template-columns:1fr}.sds-attendance-grid img{margin:auto}.sds-attendance-actions{grid-template-columns:1fr}.sds-attendance form{grid-template-columns:1fr}.sds-attendance form .form-wide{grid-column:auto}}
