.dfa-front{direction:rtl;font-family:Tahoma,Arial,sans-serif;max-width:1200px;margin:25px auto;color:#172033}.dfa-front *{box-sizing:border-box}.dfa-front-head{padding:22px 25px;border-radius:18px;background:linear-gradient(135deg,#172554,#312e81);color:#fff;box-shadow:0 12px 30px #17255422}.dfa-front-head strong{font-size:22px;display:block}.dfa-front-head small{display:block;margin-top:7px;opacity:.8}.dfa-front-nav{display:flex;gap:7px;flex-wrap:wrap;background:#fff;padding:12px;margin:14px 0;border:1px solid #e5e7eb;border-radius:14px}.dfa-front-nav a{padding:9px 13px;border-radius:9px;text-decoration:none;color:#334155}.dfa-front-nav a.active,.dfa-front-nav a:hover{background:#312e81;color:#fff}.dfa-front-panel,.dfa-front .dfa-letter{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:22px;margin:14px 0;box-shadow:0 6px 22px #0f172a0a}.dfa-front label{display:block;font-weight:700;margin:12px 0 6px}.dfa-front input,.dfa-front select,.dfa-front textarea{width:100%;padding:10px;border:1px solid #cbd5e1;border-radius:9px}.dfa-primary{margin-top:16px;padding:11px 20px;border:0;border-radius:9px;background:#312e81;color:#fff;cursor:pointer}.dfa-front-grid,.dfa-front-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.dfa-front-cards>div{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:22px}.dfa-front-cards b{display:block;font-size:30px}.dfa-front-cards span{color:#64748b}.dfa-front-table{width:100%;border-collapse:collapse;margin-top:12px}.dfa-front-table th,.dfa-front-table td{text-align:right;padding:11px;border-bottom:1px solid #e5e7eb}.dfa-letterhead{text-align:center;margin:-22px -22px 20px}.dfa-letterhead img{max-width:100%;height:auto}.dfa-letterhead-text{text-align:center;font-size:24px;border-bottom:2px solid #e5e7eb;padding:10px 0 18px;margin-bottom:18px}.dfa-login-note{background:#fff;border:1px solid #ddd;padding:25px;border-radius:14px}.dfa-letter-footer{border-top:1px solid #ddd;margin-top:25px;padding-top:12px;color:#64748b}@media(max-width:800px){.dfa-front-grid,.dfa-front-cards{grid-template-columns:1fr}.dfa-front-table-wrap{overflow:auto}}
.dfa-preview-overlay{position:fixed;inset:0;background:#0f172acc;z-index:999999;overflow:auto;padding:25px}.dfa-preview-modal{max-width:900px;margin:auto;background:#f1f5f9;border-radius:16px;overflow:hidden}.dfa-preview-toolbar{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;background:#172554;color:#fff}.dfa-preview-close{font-size:26px;background:none;border:0;color:#fff;cursor:pointer}.dfa-paper{background:#fff;width:min(794px,100%);min-height:1050px;margin:25px auto;padding:55px 65px;box-shadow:0 10px 35px #0f172a22;direction:rtl}.dfa-preview-head{width:100%;max-height:150px;object-fit:contain}.dfa-preview-org{text-align:center;font-size:25px;font-weight:700;border-bottom:2px solid #172554;padding-bottom:18px}.dfa-preview-meta{display:flex;justify-content:space-between;align-items:center;margin:25px 0;line-height:2}.dfa-letter-icon{font-size:45px}.dfa-preview-to{margin:25px 0}.dfa-preview-body{line-height:2.3;min-height:350px;white-space:normal}.dfa-preview-sign{display:flex;justify-content:flex-end;margin-top:40px}.dfa-sign-placeholder{width:190px;text-align:center;border:2px dashed #94a3b8;border-radius:12px;padding:28px 10px;color:#64748b}.dfa-preview-footer{border-top:1px solid #cbd5e1;margin-top:45px;padding-top:12px;text-align:center;color:#64748b}.dfa-preview-actions{display:flex;justify-content:center;gap:12px;padding:0 20px 25px}.dfa-preview-actions button{padding:12px 22px;border-radius:9px;border:1px solid #cbd5e1;cursor:pointer}.dfa-preview-send{background:#166534!important;color:#fff;border-color:#166534!important}@media(max-width:700px){.dfa-preview-overlay{padding:8px}.dfa-paper{padding:28px 20px;min-height:850px}}
/* v2.3 official letter preview */
.dfa-paper{border:1px solid #cbd5e1;border-radius:15px;color:var(--dfa-text,#172033);font-size:var(--dfa-size,16px);overflow:hidden}.dfa-letter-header{display:grid;grid-template-columns:1fr 180px 1fr;align-items:center;gap:18px;border:1px solid #cbd5e1;border-radius:15px;padding:18px;color:var(--dfa-meta,#334155);font-size:var(--dfa-meta-size,14px)}.dfa-head-right{text-align:right}.dfa-head-right b{display:block;font-size:1.25em}.dfa-head-right span,.dfa-head-left span{display:block;margin-top:6px}.dfa-head-center{text-align:center}.dfa-head-center img{max-width:150px;max-height:95px;object-fit:contain}.dfa-logo-placeholder{border:1px dashed #94a3b8;border-radius:15px;padding:25px;color:#94a3b8}.dfa-head-left{text-align:left;direction:rtl}.dfa-opening{text-align:center;font-weight:700;font-size:1.1em;margin:25px 0 18px}.dfa-address-box{border:1px solid #cbd5e1;border-radius:15px;padding:14px 18px;line-height:2}.dfa-letter-text{border:1px solid #cbd5e1;border-radius:15px;margin-top:16px;padding:22px;line-height:2.25;min-height:390px;text-align:justify}.dfa-preview-sign{display:flex;justify-content:flex-start;margin:25px 0 0}.dfa-sign-placeholder{border-radius:15px}.dfa-preview-footer{border:1px solid #cbd5e1!important;border-radius:15px;padding:12px!important;margin-top:22px!important}@media(max-width:700px){.dfa-letter-header{grid-template-columns:1fr;text-align:center}.dfa-head-right,.dfa-head-left{text-align:center}.dfa-head-center{grid-row:1}.dfa-letter-text{min-height:280px}}
/* v2.4 two-box official letter layout */
.dfa-letter-content-box{border:1px solid #cbd5e1;border-radius:15px;margin-top:18px;padding:22px 26px;min-height:650px;display:flex;flex-direction:column}.dfa-letter-content-box .dfa-opening{margin:0 0 22px;text-align:center}.dfa-letter-fields{line-height:2.2;border-bottom:1px solid #e2e8f0;padding-bottom:14px}.dfa-letter-maintext{line-height:2.35;text-align:justify;white-space:normal;min-height:330px;padding-top:20px;flex:1}.dfa-manager-signature{display:flex;align-items:center;justify-content:flex-start;gap:14px;margin-top:30px;min-height:105px}.dfa-sign-image{width:130px;height:85px;display:flex;align-items:center;justify-content:center;color:#94a3b8}.dfa-sign-image img{max-width:125px;max-height:80px;object-fit:contain}.dfa-sign-image span{border:1px dashed #94a3b8;border-radius:15px;padding:18px}.dfa-sign-name{display:flex;flex-direction:column;gap:7px}.dfa-sign-name b{font-size:1.05em}.dfa-sign-name small{color:#64748b}.dfa-saved-letter{margin:20px auto!important}.dfa-saved-letter+.dfa-files{margin:12px 0}.dfa-paper>.dfa-preview-footer{border:0!important;border-top:1px solid #cbd5e1!important;border-radius:0!important}

/* v2.6 typography */
.dfa-wrap,.dfa-front,.dfa-preview-modal,.dfa-paper{font-family:Vazirmatn,Tahoma,Arial,sans-serif}

/* v2.7 compact UI + robust letter wrapping/line breaks */
.dfa-wrap,.dfa-front{font-size:12px!important;line-height:1.7}
.dfa-wrap input,.dfa-wrap select,.dfa-wrap textarea,.dfa-wrap button,.dfa-wrap .button,.dfa-front input,.dfa-front select,.dfa-front textarea,.dfa-front button,.dfa-front a{font-size:12px}
.dfa-wrap h1{font-size:22px}.dfa-wrap h2,.dfa-front h2{font-size:17px}.dfa-wrap h3,.dfa-front h3{font-size:15px}
.dfa-letter-maintext,.dfa-preview-body,.dfa-letter-text{max-width:100%;min-width:0;box-sizing:border-box;overflow:hidden;overflow-wrap:anywhere;word-wrap:break-word;word-break:break-word;white-space:normal}
.dfa-letter-maintext p,.dfa-preview-body p,.dfa-letter-text p{max-width:100%;overflow-wrap:anywhere;word-break:break-word;margin:.55em 0}
.dfa-letter-maintext pre,.dfa-preview-body pre,.dfa-letter-text pre{white-space:pre-wrap;max-width:100%;overflow-wrap:anywhere}
.dfa-letter-maintext img,.dfa-preview-body img,.dfa-letter-text img{max-width:100%;height:auto}
.dfa-letter-content-box{min-width:0;overflow:hidden}
/* v2.8 full width + dedicated login/logout */
.dfa-front{max-width:none!important;width:100%!important;padding:0 18px}.dfa-front-head{display:flex;align-items:center;justify-content:space-between}.dfa-logout{background:#fff;color:#991b1b!important;text-decoration:none;padding:8px 14px;border-radius:9px}.dfa-front input+select,.dfa-front select+input,.dfa-front input+input,.dfa-front select+select{margin-top:10px}.dfa-login-page{min-height:70vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#eef2ff,#f8fafc);border-radius:24px}.dfa-login-card{width:min(440px,92%);text-align:center;background:#fff;padding:42px 30px;border:1px solid #e2e8f0;border-radius:22px;box-shadow:0 20px 50px #0f172a18}.dfa-login-card h2{margin-top:0}.dfa-login-button{display:inline-block;margin-top:18px;background:#312e81;color:#fff!important;text-decoration:none;padding:12px 26px;border-radius:10px}
.dfa-login-page{min-height:70vh;display:flex;align-items:center;justify-content:center;padding:30px}.dfa-login-card{width:min(430px,92vw);background:#fff;border:1px solid #e2e8f0;border-radius:22px;padding:32px;box-shadow:0 20px 60px rgba(15,23,42,.12);text-align:center}.dfa-login-mark{width:64px;height:64px;border-radius:20px;background:#eef2ff;margin:0 auto 15px;display:grid;place-items:center;font-size:30px}.dfa-login-card label{display:block;text-align:right;margin:12px 0 5px}.dfa-login-card input[type=text],.dfa-login-card input[type=password]{width:100%;box-sizing:border-box;padding:12px;border:1px solid #cbd5e1;border-radius:12px}.dfa-login-card .button-primary{width:100%;padding:11px;border:0;border-radius:12px;cursor:pointer}.dfa-thread-item{border-right:3px solid #cbd5e1;padding:10px 14px;margin:10px 0;background:#f8fafc;border-radius:10px}.dfa-thread-item small{display:block;color:#64748b;margin-top:3px}.dfa-thread textarea,.dfa-thread input[type=file]{width:100%;box-sizing:border-box;margin:8px 0}
