/* FIX-001/002: contrast and clear interaction, deliberately no lift/transform. */
button{transition:background-color .14s ease,color .14s ease,border-color .14s ease,box-shadow .14s ease;transform:none!important}
.btn,.btn:visited{color:#fff;background:#087fc3}
.btn:hover,.btn:focus-visible{background:#075d91;color:#fff}
.btn:active{background:#054b76;color:#fff}
.btn.secondary{background:#fff;color:#24566f;border-color:#cddde6}
.btn.secondary:hover,.btn.secondary:focus-visible{background:#e8f4fc;color:#075d91;border-color:#7bb5d7}
.btn.secondary:active{background:#d7eaf7;color:#054b76}
.btn.soft{background:#e7f4fc;color:#075d91}
.btn.soft:hover,.btn.soft:focus-visible{background:#cce9fa;color:#054b76}
.btn.soft:active{background:#b4dcf3;color:#043f63}
.link:hover,.link:focus-visible{background:#e7f4fc;color:#075d91;border-radius:7px;text-decoration:underline}
.nav button:hover,.mobilebar button:hover{background:#e7f4fc;color:#075d91}
.nav button.active:hover,.mobilebar button.active:hover{background:#d6edfa;color:#054b76}
.actions button:hover,.actions button:focus-visible{background:#dff0fa;border-color:#77b4d6;color:#075d91}
.actions button:active{background:#c6e5f6;color:#054b76}
button:focus-visible{outline:3px solid #ffbd59;outline-offset:2px}
button:disabled{opacity:.48;cursor:not-allowed;filter:grayscale(.25)}
.modal-close{width:40px;height:40px;display:grid;place-items:center;border:1px solid transparent!important;border-radius:10px!important;background:#f2f6f9!important;color:#536a76!important;font-size:25px!important;line-height:1;float:right;padding:0!important;margin:-6px -6px 2px 12px}
.modal-close:hover,.modal-close:focus-visible{background:#dfedf6!important;color:#075d91!important;border-color:#9ac7e0!important;box-shadow:inset 0 0 0 1px #9ac7e0}
.modal-close:active{background:#cce2f1!important;color:#054b76!important}
.docactions{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}
.manager-message-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.msg-preview{white-space:pre-wrap;background:#f6f9fb;border:1px solid #dae8f0;border-radius:12px;padding:16px;color:#314650;line-height:1.6;font-size:13px;margin-top:13px}
.template-area{min-height:145px;line-height:1.5}
.fieldhint{font-size:11px;color:#718893;line-height:1.5}
.doc-box{background:#edf4fa;border-radius:10px;padding:13px 15px;margin-top:17px}
.doc-box-title{font-size:11px;letter-spacing:1px;color:#007bbc;font-weight:800}
.doc-extra{font-size:11px;line-height:1.5;margin-top:5px}
.doc-footerbar{position:absolute;left:0;right:0;bottom:0;height:28px;background:#073968;color:white;padding:8px 18px;font-size:9px;display:flex;justify-content:space-between;align-items:center}
@media print{
 @page{size:A4;margin:0}
 html,body{width:210mm!important;margin:0!important;padding:0!important;background:white!important}
 .app,.main,#documentView{display:block!important;margin:0!important;padding:0!important;width:210mm!important;max-width:none!important}
 .printdoc{box-sizing:border-box;display:block;position:relative;width:210mm!important;min-height:297mm!important;margin:0!important;padding:22mm 17mm 24mm!important;border:0!important;border-radius:0!important;overflow:visible!important;page-break-after:auto!important;break-after:auto!important}
 .printdoc:before,.printdoc:after{display:none!important}
 .doc-footerbar{position:absolute;bottom:0!important;left:0;right:0;break-inside:avoid;-webkit-print-color-adjust:exact;print-color-adjust:exact}
 .doc-corners{position:absolute!important;break-inside:avoid}
 .doc-table{width:100%;break-inside:auto}
 .doc-table thead{display:table-header-group}
 .doc-table tr{break-inside:avoid;page-break-inside:avoid}
 .doc-totals,.doc-box,.doc-footer,.doc-disclaimer{break-inside:avoid;page-break-inside:avoid}
 .doc-brand,.doc-meta{break-inside:avoid;page-break-inside:avoid}
 .doc-title{font-size:28px}
}
