.ht-file-control{position:relative;display:flex;align-items:center;gap:12px;width:100%;min-width:0;min-height:48px;margin-top:7px;padding:8px;background:#fff;border:1px solid #aebbc9;border-radius:3px;font-weight:400;overflow:hidden;cursor:pointer}
.ht-file-choice{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;min-height:32px;padding:5px 11px;border:1px solid #aab8c8;border-radius:2px;background:#eef2f7;color:#182c4a;font:600 14px/1.4 Arial,sans-serif;white-space:nowrap}
.ht-file-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#526174;font:14px/1.5 Arial,sans-serif}
.ht-file-control input[type=file].ht-file-input{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-height:0!important;max-width:none!important;opacity:0!important;padding:0!important;margin:0!important;border:0!important;cursor:pointer;z-index:1}
.ht-file-control:focus-within{outline:3px solid #c77723;outline-offset:3px}.ht-file-control:hover{border-color:#2455c7}.ht-file-control:hover .ht-file-choice{background:#e3eaf7}.ht-file-control.is-disabled{background:#f3f5f9;cursor:not-allowed}.ht-file-control.is-disabled .ht-file-choice{background:#e7ebf0;color:#526174}.ht-file-control.is-disabled input[type=file]{cursor:not-allowed}
.ht-field-error{display:block;margin-top:7px;color:#9b2626;font-size:14px;font-weight:400;line-height:1.5}[aria-invalid=true]:not(.ht-file-input){border-color:#9b2626}.ht-file-control:has([aria-invalid=true]){border-color:#9b2626}
.ht-confirm-dialog{width:min(460px,calc(100% - 32px));max-width:none;max-height:calc(100dvh - 48px);margin:auto;padding:28px;border:1px solid #c6cfda;border-radius:5px;background:white;color:#182c4a;font:16px/1.7 Arial,sans-serif;overflow:auto;overscroll-behavior:contain;box-shadow:0 16px 60px #182c4a33} /* taste-skill-ignore: modal overlay shadow is explicitly permitted. */
.ht-confirm-dialog::backdrop{background:#182c4a77}.ht-confirm-dialog h2{font:600 23px/1.25 Arial,sans-serif;margin:0 0 16px}.ht-confirm-dialog p{margin:0 0 24px;overflow-wrap:anywhere}.ht-dialog-actions{display:flex;justify-content:flex-end;gap:12px}.ht-dialog-actions button{min-width:90px;min-height:44px}.ht-dialog-open{overflow:hidden}.ht-confirm-dialog button:focus-visible{outline:3px solid #c77723;outline-offset:3px}
@media(max-width:350px){.ht-file-control{gap:8px}.ht-file-choice{font-size:13px;padding:5px 9px}.ht-file-name{font-size:13px}.ht-confirm-dialog{padding:22px}.ht-dialog-actions button{flex:1;min-width:0}}
@media print{.ht-file-control,.ht-confirm-dialog{display:none!important}}
