@font-face{font-family:VazirLocal;src:local('Vazirmatn'),local('Vazir'),local('Tahoma')}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f2f4f7;color:#17191f;font-family:VazirLocal,Tahoma,Arial,sans-serif;line-height:1.75}a{text-decoration:none;color:inherit}button,input,select,textarea{font-family:inherit}img{max-width:100%}.muted{color:#747c8b}.app-shell{display:grid;grid-template-columns:304px 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:linear-gradient(180deg,#0f141e,#171f2d 55%,#101721);color:#fff;padding:22px;display:flex;flex-direction:column;gap:20px;box-shadow:-24px 0 70px rgba(13,19,30,.22);z-index:10}.brand-box{display:grid;gap:12px;padding-bottom:18px;border-bottom:1px solid rgba(255,255,255,.10)}.brand-logo-wide{width:200px;height:100px;max-width:100%;border-radius:18px;background:#fff;color:#111722;display:flex;align-items:center;justify-content:center;box-shadow:0 18px 38px rgba(0,0,0,.25);overflow:hidden;padding:8px}.brand-logo-wide img{width:100%;height:100%;object-fit:contain}.brand-logo-wide span{font-size:14px;font-weight:900;text-align:center;color:#111722}.brand-copy strong{display:block;font-size:16px;letter-spacing:-.3px}.brand-copy small,.user-card small{display:block;color:#b9c2d0;font-size:12px}.side-nav{display:grid;gap:10px}.side-nav a{padding:13px 16px;border-radius:18px;color:#dce2ec;transition:.22s ease;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.035)}.side-nav a:hover,.side-nav a.active{background:#fff;color:#111722;transform:translateX(-4px);box-shadow:0 16px 30px rgba(0,0,0,.25)}.user-card{margin-top:auto;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.10);padding:14px;border-radius:24px;display:flex;align-items:center;gap:12px}.avatar{width:44px;height:44px;border-radius:16px;background:#fff;color:#111722;font-weight:900;display:flex;align-items:center;justify-content:center}.logout-link{display:block;text-align:center;border:1px solid rgba(255,255,255,.16);color:#fff;border-radius:18px;padding:10px;transition:.2s}.logout-link:hover{background:rgba(255,255,255,.10);transform:translateY(-1px)}.dev-credit-side{display:grid;gap:4px;font-size:11px;color:#aeb7c7;border-top:1px solid rgba(255,255,255,.10);padding-top:13px}.dev-credit-side a{color:#fff;font-weight:800}.content{padding:30px 36px}.app-footer-credit{margin:16px 0 0;padding:14px 18px;border:1px solid #e5e8ef;border-radius:22px;background:#fff;color:#646c7b;display:flex;justify-content:center;gap:8px;flex-wrap:wrap;box-shadow:0 12px 34px rgba(20,24,33,.05);font-size:12px}.app-footer-credit a{font-weight:900;color:#111722}.top-title{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:22px}.top-title h1{margin:0;font-size:26px;letter-spacing:-.7px}.top-title p{margin:4px 0 0;color:#687083}.hero-card{background:radial-gradient(circle at 8% 8%,#4a5568 0,#182130 44%,#101620 100%);color:#fff;border-radius:34px;padding:30px;display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px;box-shadow:0 30px 74px rgba(17,23,34,.24);overflow:hidden;position:relative}.hero-card:before{content:"";position:absolute;width:260px;height:260px;border-radius:999px;background:rgba(255,255,255,.08);left:-70px;top:-100px}.hero-card>*{position:relative}.hero-card h1{margin:7px 0 8px;font-size:29px;letter-spacing:-.9px}.hero-card p{margin:0;color:#d0d7e2;max-width:760px}.eyebrow{font-size:12px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.14);border-radius:999px;padding:4px 12px;color:#fff}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px}.stat-card{background:#fff;border-radius:28px;padding:20px;border:1px solid #e6eaf0;box-shadow:0 18px 44px rgba(23,25,31,.06);transition:.2s}.stat-card:hover{transform:translateY(-3px);box-shadow:0 24px 54px rgba(23,25,31,.09)}.stat-card span{display:block;color:#6d7483;font-size:13px}.stat-card strong{display:block;margin-top:6px;font-size:22px}.panel{background:#fff;border:1px solid #e5e8ef;border-radius:30px;padding:24px;margin-bottom:22px;box-shadow:0 18px 48px rgba(20,24,33,.06)}.panel-header{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px}.section-gap{margin-top:30px}.panel-header h2{margin:0;font-size:19px;letter-spacing:-.4px}.panel-header p{margin:3px 0 0;color:#757d8c;font-size:13px}.btn{border:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 18px;border-radius:17px;font-weight:900;font-size:14px;transition:.22s ease;white-space:nowrap}.btn:hover{transform:translateY(-2px)}.btn-primary{background:#111722;color:#fff;box-shadow:0 15px 32px rgba(18,25,39,.25)}.btn-primary:hover{box-shadow:0 20px 42px rgba(18,25,39,.32)}.btn-light{background:#fff;color:#121927;box-shadow:0 15px 32px rgba(0,0,0,.14)}.btn-ghost{background:#eef1f5;color:#121927;box-shadow:0 10px 24px rgba(0,0,0,.04)}.btn-soft{background:#f5f6f8;color:#545b68;border:1px solid #e6eaf0}.btn-danger{background:#fff0f0;color:#a00000;border:1px solid #ffd6d6}.btn-small{min-height:36px;padding:7px 12px;border-radius:13px;font-size:12px}.filter-form,.form-grid{display:grid;gap:14px}.filter-form{grid-template-columns:1.4fr 1fr 1fr .9fr .9fr auto auto;align-items:end}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.field{display:grid;gap:6px}.field label{font-size:13px;color:#4f5664;font-weight:900}.field.full{grid-column:1/-1}input,select,textarea{width:100%;border:1px solid #dfe4ec;background:#fbfcfe;border-radius:17px;min-height:44px;padding:10px 13px;outline:none;transition:.2s ease;color:#17191f}textarea{min-height:96px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:#131927;box-shadow:0 0 0 4px rgba(19,25,39,.08);background:#fff}.table-wrap{overflow:auto;border-radius:22px;border:1px solid #edf0f4}.data-table{width:100%;border-collapse:collapse;background:#fff;min-width:980px}.data-table th,.data-table td{padding:13px 14px;text-align:right;border-bottom:1px solid #edf0f4;vertical-align:middle}.data-table th{background:#f8f9fb;color:#4f5664;font-size:12px}.data-table td small{display:block;color:#7a8291;font-size:12px}.data-table tr:hover td{background:#fcfcfd}.badge{display:inline-flex;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:900}.badge.paid{background:#eaf7ee;color:#187138}.badge.pending{background:#fff7e5;color:#8a5a00}.badge.cancelled{background:#fff0f0;color:#a00000}.badge.draft{background:#eef0f4;color:#525966}.actions{display:flex;gap:7px;flex-wrap:wrap}.mini-btn{display:inline-flex;align-items:center;justify-content:center;padding:7px 10px;border-radius:13px;background:#f1f3f7;color:#17191f;font-size:12px;font-weight:900;transition:.2s}.mini-btn:hover{transform:translateY(-1px);box-shadow:0 10px 20px rgba(0,0,0,.07)}.mini-btn.edit{background:#eef2f8}.mini-btn.danger{background:#fff0f0;color:#a00000}.empty-state{text-align:center;color:#858d9c;padding:30px!important}.login-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 8% 8%,#4a5568,#151b26 55%,#0d1017);padding:20px}.login-card{width:min(460px,100%);background:#fff;border-radius:34px;padding:30px;box-shadow:0 35px 90px rgba(0,0,0,.26)}.login-logo-wide{width:200px;height:100px;border:1px solid #edf0f4;border-radius:18px;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:8px;margin:0 auto 18px;box-shadow:0 16px 34px rgba(20,24,33,.08)}.login-logo-wide img{width:100%;height:100%;object-fit:contain}.login-logo-wide span{font-size:14px;font-weight:900}.login-card h1{margin:0 0 6px;font-size:25px}.login-card p{margin:0 0 22px;color:#6e7685}.login-credit{margin-top:18px;padding-top:14px;border-top:1px solid #edf0f4;text-align:center;font-size:12px;color:#687083;display:grid;gap:2px}.login-credit a{font-weight:900;color:#111722}.alert{border-radius:18px;padding:12px 14px;margin-bottom:14px;background:#fff4e5;color:#744800;border:1px solid #ffe2a9}.alert.success{background:#ecfff3;color:#116b32;border-color:#c7f1d3}.check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.check-card{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid #e1e5ec;border-radius:17px;background:#fbfcfe}.check-card input{width:auto;min-height:auto}.upload-preview{display:flex;align-items:center;gap:12px;border:1px dashed #cfd5de;border-radius:20px;padding:12px;background:#fafbfc;min-height:120px}.upload-preview img{object-fit:contain;background:#fff;border:1px solid #edf0f4;border-radius:12px}.wide-logo-preview img{width:200px;height:100px}.stamp-preview img{width:120px;height:100px}.settings-panel h2{letter-spacing:-.4px}.items-table{width:100%;border-collapse:separate;border-spacing:0 10px}.items-table th{font-size:12px;color:#626a78;text-align:right}.items-table td{padding:0 4px}.items-table input{border-radius:14px}.row-remove{background:#fff0f0;color:#a00000;border:0;border-radius:13px;width:42px;height:42px;cursor:pointer;font-weight:900}.totals-card{max-width:390px;margin-right:auto;background:#f8f9fb;border:1px solid #e7eaf0;border-radius:24px;padding:18px}.total-line{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #e1e5ec}.total-line:last-child{border:0;font-weight:900;font-size:18px}.template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.template-card{border:1px solid #e5e8ef;border-radius:24px;padding:16px;background:#fff;transition:.22s;cursor:pointer}.template-card:hover{transform:translateY(-3px);box-shadow:0 18px 38px rgba(0,0,0,.08)}.template-card input{width:auto;min-height:auto}.template-thumb{height:150px;border:1px solid #dfe3ea;border-radius:17px;background:linear-gradient(#fff,#f8f9fb);padding:12px;margin-bottom:10px;position:relative;overflow:hidden}.thumb-line{height:8px;background:#d8dde6;border-radius:99px;margin-bottom:7px}.thumb-box{height:48px;border:1px solid #cfd5de;border-radius:12px;margin-top:12px}.template-thumb-classic-boxed{border:2px solid #aeb5c0}.template-thumb-classic-letter:before{content:"";position:absolute;right:0;top:0;width:10px;height:100%;background:#222}.template-thumb-classic-compact{height:120px}.template-thumb-classic-arch:after{content:"";position:absolute;left:14px;top:14px;width:54px;height:54px;border:1px solid #c9ced7;border-radius:999px}.template-thumb-classic-service .thumb-box{border-radius:18px;border-style:dashed}.sample-wrap{display:grid;gap:24px}.role-note{background:#f8f9fb;border:1px solid #e6eaf0;border-radius:22px;padding:16px}.role-note h3{margin:0 0 8px}.role-note ul{margin:0;padding-right:20px;color:#5d6574}.invoice-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;margin:0 0 18px}.print-area{background:#fff}.mobile-menu{display:none}

.invoice-paper{width:210mm;min-height:297mm;margin:0 auto;background:#fff;color:#141414;border:1px solid #cfd2d7;border-radius:24px;padding:18mm;box-shadow:0 24px 70px rgba(0,0,0,.10);font-family:VazirLocal,Tahoma,Arial,sans-serif;position:relative;overflow:hidden}.invoice-paper h2,.invoice-paper h3{margin:0}.inv-header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;border-bottom:2px solid #171717;padding-bottom:15px;margin-bottom:16px}.inv-company{display:flex;gap:14px;align-items:flex-start}.inv-logo-wide{width:200px;height:100px;min-width:200px;border:1px solid #222;border-radius:12px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#fff;padding:6px}.inv-logo-wide img{width:100%;height:100%;object-fit:contain}.inv-company-text{max-width:360px}.inv-company small,.inv-title small{display:block;color:#555;margin-top:3px}.inv-title{text-align:left;min-width:180px}.inv-title h2{font-size:22px;letter-spacing:-.5px}.inv-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:16px}.inv-card{border:1px solid #d3d5da;border-radius:16px;padding:12px;background:#fff}.inv-card h3{font-size:14px;border-bottom:1px solid #e4e5e8;padding-bottom:7px;margin-bottom:8px}.inv-row{display:flex;justify-content:space-between;gap:8px;border-bottom:1px dashed #e3e4e7;padding:5px 0;font-size:13px}.inv-row:last-child{border-bottom:0}.inv-row span:first-child{color:#666}.inv-table{width:100%;border-collapse:collapse;margin:14px 0;border:1px solid #222;border-radius:14px;overflow:hidden}.inv-table th,.inv-table td{border:1px solid #d4d6db;padding:9px;text-align:right;font-size:13px}.inv-table th{background:#efefef;color:#111}.inv-after-table{display:grid;grid-template-columns:1fr 330px;gap:14px;align-items:start}.inv-notes-col{display:grid;gap:10px}.inv-totals{border:1px solid #222;border-radius:16px;overflow:hidden;background:#fff}.inv-total-line{display:flex;justify-content:space-between;gap:8px;padding:9px 12px;border-bottom:1px solid #dedede}.inv-total-line.final{background:#151515;color:#fff;font-weight:900;font-size:15px}.inv-total-line:last-child{border-bottom:0}.inv-note{border:1px solid #dedede;border-radius:16px;padding:12px;color:#333;background:#fafafa;font-size:12px}.inv-sign{display:flex;justify-content:space-between;gap:20px;margin-top:34px;align-items:flex-end}.sign-box{width:180px;height:105px;border:1px dashed #999;border-radius:16px;text-align:center;padding:10px;color:#555;position:relative}.sign-box img{max-height:76px;object-fit:contain;opacity:.88}.inv-footer-text{text-align:center;margin-top:18px}.watermark-stamp{position:absolute;left:22mm;bottom:34mm;width:125px;opacity:.055;transform:rotate(-12deg)}.tpl-boxed{border:2px solid #111;border-radius:12px;padding:15mm}.tpl-boxed .inv-header{border:2px solid #111;border-radius:18px;padding:14px}.tpl-boxed .inv-card{border-color:#111;border-radius:10px}.tpl-boxed .inv-table th{background:#e9e9e9}.tpl-letter{border:0;border-radius:0;padding:18mm 17mm}.tpl-letter:before{content:"";position:absolute;right:0;top:0;width:8mm;height:100%;background:#161616}.tpl-letter .inv-header{border-bottom:1px solid #222}.tpl-letter .inv-card{border:0;border-bottom:1px solid #ddd;border-radius:0;padding:9px 0}.tpl-letter .inv-table{border-radius:0}.tpl-compact{min-height:auto;padding:13mm;border-radius:18px}.tpl-compact .inv-header{padding-bottom:10px;margin-bottom:12px}.tpl-compact .inv-logo-wide{width:150px;height:75px;min-width:150px}.tpl-compact .inv-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.tpl-compact .inv-card{padding:9px;border-radius:12px}.tpl-compact .inv-row{font-size:12px;display:grid}.tpl-compact .inv-table th,.tpl-compact .inv-table td{padding:6px;font-size:12px}.tpl-compact .inv-note{font-size:11px}.tpl-compact .inv-after-table{grid-template-columns:1fr 300px}.tpl-arch{border-radius:30px;padding:20mm;border:1px solid #bfc3ca}.tpl-arch:before{content:"";position:absolute;left:-70mm;top:-80mm;width:180mm;height:180mm;border:1px solid #e0e2e6;border-radius:999px}.tpl-arch .inv-header{border-bottom:0;position:relative}.tpl-arch .inv-header:after{content:"";position:absolute;right:0;bottom:-6px;width:100%;height:2px;background:#171717}.tpl-arch .inv-card{border-radius:22px}.tpl-arch .inv-table{border-radius:20px}.tpl-service{padding:16mm;border-radius:10px;border:1px solid #222}.tpl-service .inv-header{border:1px solid #222;border-radius:18px;padding:12px}.tpl-service .inv-grid{grid-template-columns:1.2fr 1fr 1fr 1fr}.tpl-service .inv-card{border-radius:14px;background:#fdfdfd}.tpl-service .inv-table{border-radius:18px}.tpl-service .inv-after-table{grid-template-columns:1fr 360px}@page{size:A4;margin:8mm}@media print{body{background:#fff}.sidebar,.invoice-actions,.no-print,.top-title:not(.print-title),.panel.no-print-panel,.app-footer-credit{display:none!important}.app-shell{display:block}.content{padding:0}.panel{box-shadow:none;border:0;padding:0;margin:0}.print-area{box-shadow:none}.invoice-paper{width:auto;min-height:auto;margin:0 auto!important;box-shadow:none!important;border-color:#222!important;border-radius:0;padding:10mm;print-color-adjust:exact;-webkit-print-color-adjust:exact}.invoice-paper *{print-color-adjust:exact;-webkit-print-color-adjust:exact}.tpl-letter:before{display:none}.inv-total-line.final{background:#151515!important;color:#fff!important}.inv-table th{background:#efefef!important}}
@media(max-width:1240px){.app-shell{grid-template-columns:270px 1fr}.brand-logo-wide{width:180px;height:90px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-form{grid-template-columns:repeat(2,minmax(0,1fr))}.template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.content{padding:20px}.hero-card{display:block}.hero-card .btn{margin-top:15px}.check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.content{padding:14px}.stats-grid,.template-grid,.form-grid.two,.form-grid.three,.form-grid.four,.filter-form,.check-grid{grid-template-columns:1fr}.panel,.hero-card{border-radius:22px;padding:16px}.top-title,.panel-header{display:block}.btn{width:100%}.actions .mini-btn{flex:1}.login-card{border-radius:24px;padding:20px}.inv-after-table{grid-template-columns:1fr}.invoice-paper{width:100%;min-height:auto;padding:14px;border-radius:18px}.inv-header,.inv-company{display:grid}.inv-logo-wide{width:200px;height:100px}.inv-grid,.tpl-compact .inv-grid,.tpl-service .inv-grid{grid-template-columns:1fr}.inv-title{text-align:right}.sign-box{width:48%}}

/* ================= V3 POLISH / MR.code ================= */
.locked-credit{user-select:none}.panel-mini{margin:18px 0 0;padding:16px 18px;border:1px solid #e1e5ec;border-radius:22px;background:linear-gradient(180deg,#ffffff,#f7f8fb);box-shadow:0 14px 34px rgba(20,24,33,.05);display:grid;gap:6px;color:#303745}.panel-mini strong{font-size:14px;color:#111722}.panel-mini span{font-weight:900}.panel-mini a{font-weight:900;color:#111722}.panel-mini small{color:#747c8b}.brand-logo-wide,.login-logo-wide,.inv-logo-wide{border-radius:16px!important}.sidebar{background:linear-gradient(180deg,#10141d,#161e2c 58%,#0d121b)}.side-nav a{border-radius:20px}.btn,.mini-btn,input,select,textarea,.panel,.stat-card,.template-card{will-change:transform}.btn:active,.mini-btn:active{transform:translateY(0) scale(.98)}

/* Invoice layout v3: organized header + compact classic print */
.invoice-paper{width:204mm;min-height:286mm;padding:14mm;border:1px solid #1d1d1d;border-radius:22px;background:#fff;color:#111;box-shadow:0 24px 70px rgba(0,0,0,.10);position:relative;overflow:hidden;line-height:1.55}.inv-header{direction:ltr;display:grid!important;grid-template-columns:1fr 1.35fr 1fr;align-items:stretch;gap:12px;border:1.5px solid #141414!important;border-radius:18px!important;padding:12px!important;margin-bottom:14px!important;background:#fff!important}.inv-header>*{direction:rtl}.inv-company{display:contents}.inv-company-text{text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;max-width:none!important;padding:0 4px}.inv-company-text h2,.inv-title h2{font-size:21px;line-height:1.55;margin:0 0 4px;font-weight:900;letter-spacing:-.55px}.inv-company-text small{display:block;color:#555;margin:1px 0;font-size:12px;line-height:1.55}.inv-title{min-width:0!important;text-align:right!important;display:flex;flex-direction:column;justify-content:center}.inv-meta-card{border:0;background:#fff;padding:0}.inv-meta-line{display:flex;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px dashed #d9dce2;padding:4px 0;font-size:12px;color:#555}.inv-meta-line:last-child{border-bottom:0}.inv-meta-line b{color:#111;font-weight:900;text-align:left}.inv-logo-wide{width:200px!important;height:100px!important;min-width:200px!important;max-width:100%;justify-self:end;align-self:center;border:1.5px solid #222;border-radius:16px!important;background:#fff;padding:8px;display:flex;align-items:center;justify-content:center;overflow:hidden}.inv-logo-wide img{width:100%!important;height:100%!important;object-fit:contain!important}.inv-logo-placeholder{color:#999;border-style:dashed}.inv-grid{gap:10px;margin-bottom:12px}.inv-card{border-color:#202020;border-radius:14px;padding:10px}.inv-card h3{font-size:13px}.inv-row{font-size:12.2px;line-height:1.55}.inv-table{margin:12px 0;border-color:#1b1b1b}.inv-table th{background:#f1f1f1;color:#111;font-weight:900}.inv-table th,.inv-table td{font-size:12px;padding:7px}.inv-after-table{grid-template-columns:1fr 300px;gap:12px}.inv-note{font-size:11.4px;line-height:1.55;padding:10px;border-radius:12px}.inv-total-line{padding:7px 10px;font-size:12px}.inv-sign{margin-top:18px}.sign-box{height:76px;border-radius:12px;font-size:12px}.sign-box img{max-height:48px}.inv-footer-text{margin-top:10px;padding:7px 10px}.watermark-stamp{opacity:.035}.tpl-clean .inv-header{border-radius:18px}.tpl-boxed{border:2px solid #111;border-radius:18px}.tpl-boxed .inv-header{border-width:2px!important}.tpl-letter{padding:14mm 13mm}.tpl-letter:before{width:5mm;background:#202020}.tpl-compact .inv-header{grid-template-columns:50mm 1fr 50mm}.tpl-compact .inv-logo-wide{width:150px!important;height:75px!important;min-width:150px!important}.tpl-compact .inv-company-text h2,.tpl-compact .inv-title h2{font-size:17px}.tpl-compact .inv-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.tpl-compact .inv-after-table{grid-template-columns:1fr 270px}.tpl-service .inv-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.tpl-arch:before{opacity:.6}

@page{size:A4 portrait;margin:6mm}
@media print{html,body{width:210mm;margin:0!important;background:#fff!important;overflow:visible}.sidebar,.invoice-actions,.no-print,.top-title:not(.print-title),.panel.no-print-panel,.app-footer-credit{display:none!important}.app-shell{display:block!important;min-height:0!important}.content{padding:0!important;margin:0!important}.panel{box-shadow:none!important;border:0!important;padding:0!important;margin:0!important}.print-area{box-shadow:none!important;background:#fff!important}.invoice-paper{box-sizing:border-box!important;width:198mm!important;max-width:198mm!important;min-height:auto!important;height:auto!important;margin:0 auto!important;padding:6mm!important;box-shadow:none!important;border:1px solid #111!important;border-radius:0!important;overflow:visible!important;font-size:9px!important;line-height:1.35!important;page-break-inside:avoid!important;break-inside:avoid!important;page-break-after:avoid!important;break-after:avoid-page!important}.invoice-paper *{print-color-adjust:exact;-webkit-print-color-adjust:exact}.inv-header{grid-template-columns:51mm 1fr 51mm!important;gap:3mm!important;padding:3mm!important;margin-bottom:3mm!important;border-radius:7px!important}.inv-title h2,.inv-company-text h2{font-size:12.5px!important;line-height:1.35!important;margin:0 0 1mm!important}.inv-company-text small{font-size:8.5px!important;line-height:1.35!important;margin:0!important}.inv-meta-line{font-size:8.6px!important;line-height:1.3!important;padding:.75mm 0!important}.inv-logo-wide{width:48mm!important;height:24mm!important;min-width:48mm!important;border-radius:5px!important;padding:1.2mm!important}.inv-grid,.tpl-compact .inv-grid,.tpl-service .inv-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:2mm!important;margin-bottom:2.6mm!important}.inv-card{padding:2.1mm!important;border-radius:6px!important}.inv-card h3{font-size:8.9px!important;line-height:1.25!important;padding-bottom:1mm!important;margin-bottom:1mm!important}.inv-row{font-size:8.15px!important;line-height:1.25!important;padding:.7mm 0!important;gap:1mm!important;display:grid!important;grid-template-columns:1fr!important}.inv-row span:first-child{font-size:7.7px!important}.inv-table{margin:2.5mm 0!important;border-radius:0!important}.inv-table th,.inv-table td{font-size:8.25px!important;line-height:1.25!important;padding:1.15mm!important}.inv-table th:nth-child(1),.inv-table td:nth-child(1){width:8mm!important}.inv-table th:nth-child(3),.inv-table td:nth-child(3){width:12mm!important}.inv-table th:nth-child(4),.inv-table td:nth-child(4){width:25mm!important}.inv-table th:nth-child(5),.inv-table td:nth-child(5){width:25mm!important}.inv-after-table{grid-template-columns:1fr 54mm!important;gap:2.5mm!important}.inv-note{font-size:7.9px!important;line-height:1.35!important;padding:1.6mm!important;border-radius:5px!important}.inv-total-line{font-size:8.2px!important;line-height:1.25!important;padding:1.05mm 2mm!important}.inv-total-line.final{background:#151515!important;color:#fff!important;font-size:8.8px!important}.inv-sign{margin-top:2.5mm!important}.sign-box{width:40mm!important;height:17mm!important;border-radius:5px!important;font-size:8px!important;padding:1.4mm!important}.sign-box img{max-height:10mm!important}.inv-footer-text{margin-top:1.8mm!important;text-align:center}.watermark-stamp{display:none!important}.tpl-letter:before{display:none!important}.tpl-letter,.tpl-boxed,.tpl-arch,.tpl-service,.tpl-compact{padding:6mm!important;border-radius:0!important}.tpl-boxed .inv-header,.tpl-service .inv-header{padding:3mm!important}.tpl-compact .inv-company-text h2,.tpl-compact .inv-title h2{font-size:12.5px!important}}

/* ================= V4 CREATIVE LINEAR INVOICE HEADERS / MR.code ================= */
.inv-header-v4{direction:rtl;border:1.5px solid #111;border-radius:18px;margin-bottom:12px;background:#fff;overflow:hidden;display:grid;gap:0;position:relative}.inv-header-v4 .h-line{display:flex;align-items:center;gap:10px;min-width:0}.inv-header-v4 .h-line-main{min-height:92px;padding:10px 12px}.inv-header-v4 .h-line-sub{border-top:1px solid #d9d9d9;background:#fafafa;min-height:32px;padding:6px 12px;justify-content:space-between;color:#444;font-size:11.5px;white-space:nowrap}.inv-header-v4 .h-line-sub span,.inv-header-v4 .h-company-block span,.inv-header-v4 .h-logo-stack span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.inv-header-v4 strong{font-weight:950;color:#111;letter-spacing:-.45px}.inv-header-v4 .h-company-block{display:grid;gap:4px;min-width:0}.inv-header-v4 .h-company-block strong{font-size:20px;line-height:1.25}.inv-header-v4 .h-company-block span{font-size:12px;color:#404040;line-height:1.35}.inv-header-v4 .h-grow{flex:1 1 auto}.inv-header-v4 .h-center-text{text-align:center;justify-items:center}.inv-header-v4 .h-doc-block{display:flex;align-items:center;gap:7px;flex-wrap:wrap;min-width:190px}.inv-header-v4 .h-doc-block>strong{width:100%;font-size:18px;line-height:1.25}.h-chip{display:inline-flex;align-items:center;gap:5px;border:1px solid #d5d5d5;background:#fff;border-radius:999px;padding:4px 8px;line-height:1;white-space:nowrap}.h-chip em{font-style:normal;color:#666;font-size:10.5px}.h-chip b{font-size:11.5px;color:#111}.h-logo-center .h-line-main{display:grid;grid-template-columns:1.05fr auto 1.35fr;align-items:center}.h-logo-center .inv-logo-wide{justify-self:center}.h-logo-right .h-line-main{display:grid;grid-template-columns:auto 1fr 210px;align-items:center}.h-logo-stack{display:grid;justify-items:center;gap:5px;min-width:210px}.h-logo-stack .inv-logo-wide{width:200px!important;height:88px!important}.h-logo-stack span{font-size:10.5px;color:#555;max-width:200px;text-align:center}.h-logo-top .h-line-logo-top{justify-content:center;gap:14px;min-height:92px;padding:10px}.h-logo-top .h-line-logo-top .inv-logo-wide{width:200px!important;height:88px!important}.h-logo-top .h-line-logo-top strong{font-size:22px}.h-logo-top .h-top-texts{justify-content:center;gap:18px}.h-compact-strip .h-line-main{min-height:72px;justify-content:space-between;flex-wrap:nowrap}.h-compact-strip .inv-logo-wide{width:150px!important;height:70px!important;min-width:150px!important}.h-compact-strip .h-line-main>span,.h-compact-strip .h-line-main>strong{white-space:nowrap}.h-stamp-layout .h-line-main{display:grid;grid-template-columns:210px 1fr auto auto;align-items:center}.h-stamp-layout .h-doc-tight{min-width:0;display:flex}.h-stamp-layout .h-stamp-mini{width:54px;height:54px;object-fit:contain;border:1px dashed #bbb;border-radius:12px;padding:4px;background:#fff}.h-service-line .h-line-main{display:grid;grid-template-columns:auto 1fr minmax(230px,.9fr);align-items:center}.h-service-line .h-service-pill{border:1px solid #222;border-radius:14px;padding:10px 12px;font-weight:900;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:#fbfbfb}.h-service-line .h-line-sub{gap:18px}.tpl-v4-right-logo{border-radius:18px}.tpl-v4-top-logo{border-top-width:3px}.tpl-v4-compact{padding-top:10mm}.tpl-v4-compact .inv-grid-v4{gap:7px}.tpl-v4-stamp:before{content:"";position:absolute;left:16px;bottom:16px;width:84px;height:84px;border:1px solid rgba(0,0,0,.08);border-radius:999px;pointer-events:none}.tpl-v4-service .inv-card h3{border-bottom:2px solid #111}.inv-grid-v4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:10px}.inv-grid-v4 .inv-card{min-width:0}.inv-grid-v4 .inv-row{display:grid;grid-template-columns:1fr;gap:1px}.template-thumb-classic-clean{background:linear-gradient(#fff,#fafafa)}.template-thumb-classic-clean:before{content:"";position:absolute;left:50%;top:12px;transform:translateX(-50%);width:54px;height:28px;border:1px solid #c9ced7;border-radius:8px}.template-thumb-classic-boxed:before{content:"";position:absolute;right:12px;top:12px;width:54px;height:28px;border:1px solid #c9ced7;border-radius:8px}.template-thumb-classic-letter:after{content:"";position:absolute;left:50%;top:10px;transform:translateX(-50%);width:66px;height:30px;border:1px solid #c9ced7;border-radius:8px;background:#fff}.template-thumb-classic-compact:before{content:"";position:absolute;right:12px;left:12px;top:12px;height:34px;border:1px solid #c9ced7;border-radius:9px}.template-thumb-classic-service:before{content:"";position:absolute;left:12px;top:14px;width:80px;height:24px;border:1px solid #222;border-radius:10px;background:#fff}.template-card small strong{color:#111}

@media(max-width:900px){.inv-header-v4 .h-line-main,.h-logo-center .h-line-main,.h-logo-right .h-line-main,.h-stamp-layout .h-line-main,.h-service-line .h-line-main{display:flex;flex-wrap:wrap}.inv-header-v4 .h-line-sub{white-space:normal;flex-wrap:wrap}.inv-grid-v4{grid-template-columns:1fr}.h-logo-stack{min-width:0}.h-logo-right .h-doc-block{min-width:0}}

@media print{.inv-header-v4{border-radius:5px!important;margin-bottom:2.2mm!important;border:1px solid #111!important}.inv-header-v4 .h-line-main{min-height:18mm!important;padding:2mm 2.4mm!important;gap:2mm!important}.inv-header-v4 .h-line-sub{min-height:6mm!important;padding:1mm 2.4mm!important;font-size:7.6px!important;line-height:1.2!important;gap:3mm!important}.inv-header-v4 .h-company-block{gap:.6mm!important}.inv-header-v4 .h-company-block strong{font-size:11.2px!important;line-height:1.15!important}.inv-header-v4 .h-company-block span{font-size:7.7px!important;line-height:1.15!important}.inv-header-v4 .h-doc-block{gap:1mm!important;min-width:35mm!important}.inv-header-v4 .h-doc-block>strong{font-size:10.2px!important;line-height:1.15!important}.h-chip{padding:.85mm 1.4mm!important;gap:.9mm!important}.h-chip em{font-size:6.8px!important}.h-chip b{font-size:7.5px!important}.inv-header-v4 .inv-logo-wide{width:42mm!important;height:18mm!important;min-width:42mm!important;border-radius:3mm!important;padding:1mm!important}.h-logo-center .h-line-main{grid-template-columns:1fr auto 1.25fr!important}.h-logo-right .h-line-main{grid-template-columns:auto 1fr 39mm!important}.h-logo-stack{min-width:42mm!important;gap:.5mm!important}.h-logo-stack .inv-logo-wide{width:42mm!important;height:17mm!important}.h-logo-stack span{font-size:6.6px!important;max-width:42mm!important}.h-logo-top .h-line-logo-top{min-height:16mm!important;padding:1.6mm!important}.h-logo-top .h-line-logo-top .inv-logo-wide{width:39mm!important;height:15mm!important}.h-logo-top .h-line-logo-top strong{font-size:11.8px!important}.h-logo-top .h-top-texts{gap:3mm!important;justify-content:center!important}.h-compact-strip .h-line-main{min-height:14mm!important;gap:2.5mm!important}.h-compact-strip .inv-logo-wide{width:32mm!important;height:12.5mm!important;min-width:32mm!important}.h-compact-strip .h-line-main>span,.h-compact-strip .h-line-main>strong{font-size:7.7px!important;max-width:35mm!important;overflow:hidden;text-overflow:ellipsis}.h-stamp-layout .h-line-main{grid-template-columns:37mm 1fr 34mm 12mm!important}.h-stamp-layout .h-stamp-mini{width:10mm!important;height:10mm!important;border-radius:2mm!important;padding:.6mm!important}.h-service-line .h-line-main{grid-template-columns:34mm 1fr 44mm!important}.h-service-line .h-service-pill{font-size:7.4px!important;padding:2mm!important;border-radius:3mm!important}.inv-grid-v4,.tpl-compact .inv-grid-v4,.tpl-service .inv-grid-v4{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:1.7mm!important;margin-bottom:2mm!important}.inv-grid-v4 .inv-row{display:grid!important;grid-template-columns:1fr!important}.tpl-v4-compact{padding:6mm!important}.tpl-v4-stamp:before{display:none!important}}


/* ================= ADMISSION MODULE / black-and-white printable intake ================= */
.hero-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.muted-light{background:rgba(255,255,255,.88)!important}.admission-hero{background:radial-gradient(circle at 8% 8%,#596273 0,#202936 46%,#121820 100%)}.admission-form textarea{min-height:118px}.form-grid.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.admission-print-wrap{display:flex;justify-content:center}.admission-print-sheet{width:min(100%,960px);background:#fff;color:#111;border:1px solid #cfd4dc;border-radius:24px;padding:22px;box-shadow:0 22px 60px rgba(17,24,39,.10);direction:rtl}.admission-print-header{display:grid;grid-template-columns:1fr 270px;gap:16px;align-items:stretch;border:2px solid #111;border-radius:18px;padding:14px;margin-bottom:14px;background:#fff}.admission-brand-print{display:flex;gap:14px;align-items:center}.admission-brand-print img{width:110px;height:70px;object-fit:contain;border:1px solid #d7dce3;border-radius:12px;padding:6px;background:#fff}.admission-brand-print h1{margin:0;font-size:24px;letter-spacing:-.7px}.admission-brand-print p{margin:3px 0;color:#343a46}.admission-brand-print small{display:block;color:#5d6472}.admission-doc-box{border:1.5px solid #111;border-radius:14px;padding:10px;display:grid;gap:5px;align-content:center;background:#fafafa}.admission-doc-box strong{font-size:18px}.admission-doc-box span{font-size:13px}.admission-print-section{border:1px solid #1f2937;border-radius:16px;margin-top:12px;overflow:hidden;background:#fff}.admission-print-section h2{margin:0;padding:8px 12px;border-bottom:1px solid #1f2937;background:#f6f7f9;font-size:15px}.admission-print-grid{display:grid;gap:0}.admission-print-grid.three{grid-template-columns:repeat(3,1fr)}.admission-print-grid.four{grid-template-columns:repeat(4,1fr)}.admission-print-grid>div{min-height:44px;border-left:1px solid #d7dce3;border-bottom:1px solid #d7dce3;padding:8px 10px;display:grid;gap:3px}.admission-print-grid>div:nth-last-child(-n+4){border-bottom:0}.admission-print-grid.three>div:nth-last-child(-n+3){border-bottom:0}.admission-print-grid .wide{grid-column:1/-1}.admission-print-grid b,.admission-print-notes b{font-size:12px;color:#111}.admission-print-grid span{font-size:13px;color:#222;white-space:pre-wrap}.admission-print-notes{display:grid;grid-template-columns:1fr 1fr;gap:0}.admission-print-notes>div{min-height:96px;border-left:1px solid #d7dce3;border-bottom:1px solid #d7dce3;padding:10px}.admission-print-notes>div:nth-last-child(-n+2){border-bottom:0}.admission-print-notes p{margin:4px 0 0;color:#222;min-height:48px;white-space:pre-wrap}.admission-check-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:12px}.admission-check-grid label{display:flex;align-items:center;gap:7px;border:1px solid #d1d5db;border-radius:10px;padding:8px;font-size:13px}.admission-check-grid span{width:16px;height:16px;border:1.7px solid #111;display:inline-block;border-radius:3px;flex:none}.admission-terms-box{border:1.5px dashed #111;border-radius:14px;padding:11px 13px;margin-top:12px;font-size:12.5px;background:#fff;line-height:1.9}.admission-signatures{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px}.admission-signatures div{border:1.5px solid #111;border-radius:14px;min-height:104px;padding:10px;display:grid;align-content:space-between}.admission-signatures strong{font-size:13px}.admission-signatures span{display:block;border-top:1px solid #111;height:28px}@media(max-width:900px){.hero-actions{justify-content:flex-start}.form-grid.two,.admission-print-header,.admission-print-notes{grid-template-columns:1fr}.admission-print-grid.three,.admission-print-grid.four,.admission-check-grid,.admission-signatures{grid-template-columns:1fr}.admission-print-grid>div,.admission-print-notes>div{border-left:0}.admission-print-grid>div:nth-last-child(-n+4),.admission-print-grid.three>div:nth-last-child(-n+3),.admission-print-notes>div:nth-last-child(-n+2){border-bottom:1px solid #d7dce3}}
@media print{body:has(.admission-print-sheet){background:#fff!important;color:#000!important}.admission-print-sheet,.admission-print-sheet *{color:#000!important;box-shadow:none!important;text-shadow:none!important}.admission-print-sheet{width:100%!important;max-width:100%!important;border:0!important;border-radius:0!important;padding:0!important;margin:0!important;background:#fff!important}.admission-print-header{border:1.4px solid #000!important;border-radius:3mm!important;padding:2.4mm!important;margin-bottom:2.5mm!important;grid-template-columns:1fr 48mm!important;gap:2.5mm!important}.admission-brand-print{gap:2mm!important}.admission-brand-print img{width:28mm!important;height:16mm!important;border:1px solid #000!important;border-radius:2mm!important;padding:1mm!important;filter:grayscale(1)!important}.admission-brand-print h1{font-size:14px!important;line-height:1.2!important}.admission-brand-print p{font-size:8px!important;line-height:1.25!important;margin:.5mm 0!important}.admission-brand-print small{font-size:7px!important;line-height:1.25!important}.admission-doc-box{border:1px solid #000!important;border-radius:2mm!important;padding:1.8mm!important;gap:.8mm!important;background:#fff!important}.admission-doc-box strong{font-size:11px!important}.admission-doc-box span{font-size:7.5px!important;line-height:1.25!important}.admission-print-section{border:1px solid #000!important;border-radius:2mm!important;margin-top:2mm!important;break-inside:avoid!important}.admission-print-section h2{background:#fff!important;border-bottom:1px solid #000!important;font-size:9px!important;padding:1.3mm 2mm!important}.admission-print-grid.three{grid-template-columns:repeat(3,1fr)!important}.admission-print-grid.four{grid-template-columns:repeat(4,1fr)!important}.admission-print-grid>div{min-height:10mm!important;padding:1.4mm 1.8mm!important;border-color:#000!important}.admission-print-grid b,.admission-print-notes b{font-size:7.3px!important;line-height:1.25!important}.admission-print-grid span,.admission-print-notes p{font-size:7.8px!important;line-height:1.45!important}.admission-print-notes{grid-template-columns:1fr 1fr!important}.admission-print-notes>div{min-height:22mm!important;padding:1.8mm!important;border-color:#000!important}.admission-print-notes p{margin:.7mm 0 0!important;min-height:0!important}.admission-check-grid{grid-template-columns:repeat(4,1fr)!important;gap:1.2mm!important;padding:1.8mm!important}.admission-check-grid label{font-size:7.5px!important;border-color:#000!important;border-radius:1.5mm!important;padding:1mm!important;gap:1mm!important}.admission-check-grid span{width:3.2mm!important;height:3.2mm!important;border-color:#000!important}.admission-terms-box{border:1px dashed #000!important;border-radius:2mm!important;padding:1.8mm!important;margin-top:2mm!important;font-size:7.5px!important;line-height:1.55!important;background:#fff!important}.admission-signatures{grid-template-columns:repeat(3,1fr)!important;gap:2mm!important;margin-top:2.2mm!important}.admission-signatures div{min-height:23mm!important;border-color:#000!important;border-radius:2mm!important;padding:1.8mm!important}.admission-signatures strong{font-size:7.8px!important}.admission-signatures span{height:8mm!important;border-color:#000!important}@page{size:A4;margin:9mm}}

/* ===== Production hosting + accounting/reception polish ===== */
.form-grid.five{grid-template-columns:repeat(5,minmax(0,1fr))}.access-panel{border-top:4px solid #111722}.access-toolbar{margin:22px 0 14px;padding:12px 14px;border:1px solid #e2e6ed;border-radius:18px;background:#f9fafb;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.access-toolbar>div{display:flex;gap:8px;flex-wrap:wrap}.permission-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.permission-box{border:1px solid #dfe4ec;border-radius:22px;background:#fff;padding:15px;box-shadow:0 10px 28px rgba(20,24,33,.04)}.permission-box h3{margin:0 0 10px;font-size:15px;padding-bottom:8px;border-bottom:1px solid #e8ebf1}.permission-check{display:flex;align-items:flex-start;gap:9px;padding:8px 0;border-bottom:1px dashed #eceff4;font-size:12.5px;line-height:1.65;color:#252b36}.permission-check:last-child{border-bottom:0}.permission-check input{width:16px;min-height:16px;margin-top:4px;accent-color:#111722}.role-note{border:1px solid #e0e4eb;background:#fbfcfe;border-radius:20px;padding:14px}.role-note h3{margin:0 0 8px;font-size:15px}.role-note ul{margin:0;padding-right:18px;color:#5d6574;font-size:13px}.user-main-grid .field{min-width:0}

/* Invoice print redesign: compact linear B/W header */
.invoice-paper{font-size:12px;line-height:1.5}.inv-header-v4{border:1.8px solid #111!important;border-radius:14px!important;overflow:hidden!important;background:#fff!important;margin-bottom:10px!important}.inv-header-v4 .h-line{border-bottom:1px solid #111!important;background:#fff!important}.inv-header-v4 .h-line:last-child{border-bottom:0!important}.inv-header-v4 .h-line-main{min-height:64px!important;padding:8px 10px!important;gap:10px!important}.inv-header-v4 .h-line-sub{min-height:28px!important;padding:5px 10px!important;gap:10px!important;font-size:11px!important;line-height:1.4!important;display:flex!important;align-items:center!important;justify-content:space-between!important}.inv-header-v4 .h-line-sub span{padding:0 8px;border-right:1px solid #cfd2d7}.inv-header-v4 .h-line-sub span:first-child{border-right:0}.inv-header-v4 .h-company-block strong{font-size:15px!important;line-height:1.25!important}.inv-header-v4 .h-company-block span{font-size:11px!important;line-height:1.35!important;color:#222!important}.inv-header-v4 .h-doc-block{gap:6px!important;min-width:160px!important}.inv-header-v4 .h-doc-block>strong{font-size:14px!important;line-height:1.2!important}.h-chip{border:1px solid #111!important;border-radius:6px!important;padding:4px 7px!important;background:#fff!important}.h-chip em{font-size:10px!important;color:#444!important}.h-chip b{font-size:11px!important;color:#000!important}.inv-header-v4 .inv-logo-wide{width:136px!important;height:58px!important;min-width:136px!important;border:1.5px solid #111!important;border-radius:8px!important;padding:5px!important;box-shadow:none!important}.h-logo-stack .inv-logo-wide{width:136px!important;height:58px!important;min-width:136px!important}.h-logo-stack span{font-size:10px!important;max-width:150px!important}.h-logo-top .h-line-logo-top{min-height:62px!important;padding:7px!important}.h-logo-top .h-line-logo-top .inv-logo-wide{width:136px!important;height:58px!important;min-width:136px!important}.h-compact-strip .inv-logo-wide{width:108px!important;height:46px!important;min-width:108px!important}.h-service-line .h-service-pill{border-radius:8px!important;font-size:11px!important;padding:7px 9px!important;background:#fff!important}.inv-grid-v4{gap:7px!important;margin-bottom:8px!important}.inv-card{border:1px solid #111!important;border-radius:10px!important;padding:8px!important;background:#fff!important}.inv-card h3{font-size:12px!important;padding-bottom:5px!important;margin-bottom:5px!important;border-bottom:1px solid #111!important}.inv-row{font-size:11.2px!important;line-height:1.35!important;padding:4px 0!important;border-bottom:1px dashed #c9cdd4!important}.inv-table th,.inv-table td{font-size:11.2px!important;padding:6px 7px!important}.inv-after-table{gap:9px!important}.inv-note{font-size:11px!important;line-height:1.55!important}.inv-totals{border-radius:10px!important}.inv-total-line{font-size:11px!important;padding:6px 8px!important}.inv-total-line.final{font-size:13px!important}.sign-box{font-size:11px!important}

/* Reception/admission form: clear boxes for front-desk usage */
.admission-form{padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}.admission-form>.panel-header,.admission-form>.form-grid,.admission-form>datalist,.admission-form>div[style]{background:#fff;border:1px solid #e1e5ec;margin-bottom:14px}.admission-form>.panel-header{border-radius:22px 22px 0 0;border-bottom:0;padding:18px 20px;margin-bottom:0}.admission-form>.form-grid{border-radius:0 0 22px 22px;padding:20px;box-shadow:0 12px 34px rgba(20,24,33,.04)}.admission-form .section-gap{margin-top:18px}.admission-form .field label{font-size:12.5px;color:#202632}.admission-form input,.admission-form select,.admission-form textarea{background:#fff;border-color:#cfd5df;border-radius:12px}.admission-form textarea{min-height:92px}.admission-form>.form-grid.two textarea{min-height:116px}.admission-form>div[style]{border-radius:22px!important;padding:16px!important;background:#fff!important}.admission-print-header{grid-template-columns:1fr 235px}.admission-brand-print img{width:92px;height:58px;border-color:#111;border-radius:8px}.admission-brand-print h1{font-size:20px}.admission-brand-print p,.admission-brand-print small{font-size:12px}.admission-doc-box{border-color:#111;border-radius:10px;background:#fff}.admission-print-section{border-radius:10px;border-color:#111}.admission-print-section h2{background:#fff;border-bottom-color:#111;font-size:13px}.admission-print-grid b,.admission-print-notes b{font-size:11px}.admission-print-grid span,.admission-print-notes p{font-size:11.5px}

@media(max-width:1200px){.form-grid.five,.permission-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.form-grid.five,.permission-grid{grid-template-columns:1fr}.access-toolbar{align-items:stretch}.access-toolbar>div{display:grid;grid-template-columns:1fr;width:100%}}
@media print{.invoice-paper{width:198mm!important;max-width:198mm!important;padding:6mm!important;font-size:8.2px!important;line-height:1.28!important;border:1px solid #000!important;color:#000!important}.invoice-paper *{color:#000!important;box-shadow:none!important;text-shadow:none!important}.inv-header-v4{border:1px solid #000!important;border-radius:0!important;margin-bottom:1.8mm!important}.inv-header-v4 .h-line-main{min-height:13mm!important;padding:1.4mm 1.8mm!important;gap:1.6mm!important}.inv-header-v4 .h-line-sub{min-height:4.6mm!important;padding:.8mm 1.8mm!important;font-size:6.8px!important;line-height:1.15!important;gap:1.5mm!important}.inv-header-v4 .h-line-sub span{padding:0 1.3mm!important;border-color:#000!important}.inv-header-v4 .h-company-block strong{font-size:9.2px!important}.inv-header-v4 .h-company-block span{font-size:6.9px!important}.inv-header-v4 .h-doc-block{min-width:27mm!important;gap:.6mm!important}.inv-header-v4 .h-doc-block>strong{font-size:8.5px!important}.h-chip{border-radius:1mm!important;padding:.6mm 1mm!important}.h-chip em{font-size:6px!important}.h-chip b{font-size:6.7px!important}.inv-header-v4 .inv-logo-wide,.h-logo-stack .inv-logo-wide,.h-logo-top .h-line-logo-top .inv-logo-wide{width:30mm!important;height:12mm!important;min-width:30mm!important;border-radius:1mm!important;padding:.7mm!important;filter:grayscale(1)!important}.h-compact-strip .inv-logo-wide{width:24mm!important;height:10mm!important;min-width:24mm!important}.h-logo-right .h-line-main{grid-template-columns:30mm 1fr 31mm!important}.h-logo-center .h-line-main{grid-template-columns:1fr 30mm 1.2fr!important}.h-stamp-layout .h-line-main{grid-template-columns:31mm 1fr 30mm 9mm!important}.h-service-line .h-line-main{grid-template-columns:30mm 1fr 38mm!important}.h-service-line .h-service-pill{font-size:6.5px!important;padding:1.2mm!important}.inv-grid-v4{grid-template-columns:repeat(4,1fr)!important;gap:1.3mm!important;margin-bottom:1.7mm!important}.inv-card{border-radius:0!important;padding:1.4mm!important}.inv-card h3{font-size:7.3px!important;line-height:1.15!important;padding-bottom:.7mm!important;margin-bottom:.7mm!important}.inv-row{font-size:6.8px!important;line-height:1.18!important;padding:.55mm 0!important;display:grid!important;grid-template-columns:1fr!important}.inv-row span:first-child{font-size:6.3px!important}.inv-table{margin:1.8mm 0!important}.inv-table th,.inv-table td{font-size:6.9px!important;line-height:1.18!important;padding:.8mm!important}.inv-after-table{grid-template-columns:1fr 48mm!important;gap:1.5mm!important}.inv-note{font-size:6.8px!important;line-height:1.35!important;padding:1mm!important}.inv-total-line{font-size:6.8px!important;padding:.75mm 1mm!important}.inv-total-line.final{font-size:7.8px!important}.inv-sign{margin-top:1.8mm!important;gap:2mm!important}.sign-box{font-size:6.9px!important;min-height:16mm!important;padding:1mm!important}.sign-box img{max-height:12mm!important}.inv-footer-text{margin-top:1.5mm!important}@page{size:A4;margin:7mm}}

/* Jalali/accounting/admission templates update */
.template-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.template-card{border:1px solid #d9d9d9;border-radius:18px;padding:18px;background:#fff}.template-card h3{font-size:16px;margin:0 0 8px}.template-card p{font-size:12px;color:#555;margin:0 0 14px}.template-preview-box{margin:22px 0;border:1px dashed #aaa;padding:14px;border-radius:16px;background:#fafafa}.admission-template-compact{font-size:11px}.admission-template-compact .admission-print-section{padding:8px 0}.admission-template-compact .admission-print-grid{gap:4px}.admission-template-checklist .admission-check-section{border:2px solid #111;padding:10px}.admission-template-checklist .admission-check-grid label{font-weight:700}.admission-template-service .admission-print-notes{grid-template-columns:1fr}.admission-template-service .admission-print-notes div:first-child,.admission-template-service .admission-print-notes div:nth-child(4){border:2px solid #111;background:#fff}.admission-template-official .admission-print-header{border-bottom:2px solid #111}.badge.cancelled{background:#fff0f0;color:#8a0000;border-color:#8a0000}.badge.paid{background:#effaf1;color:#126b28;border-color:#126b28}.filter-form .btn{white-space:nowrap}
@media print{.admission-template-compact{font-size:10.5px}.template-preview-box{border:0;padding:0}.admission-print-sheet{box-shadow:none!important}.admission-print-header,.admission-print-section,.admission-terms-box,.admission-signatures div{border-color:#111!important;background:#fff!important;color:#000!important}}


/* Print paper-size and one-page fixes + font settings */
.paper-switch-label{display:inline-flex;align-items:center;color:#565e6b;font-weight:900;font-size:13px;margin:0 4px}.font-upload-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin-top:14px}.font-upload-card{border:1px solid #e1e5ec;background:#fbfcfe;border-radius:18px;padding:14px;display:grid;gap:10px}.font-upload-card small{font-size:11px;color:#777}.font-current{display:block;direction:ltr;text-align:left;background:#fff;border:1px dashed #d7dce5;border-radius:10px;padding:7px 9px}.admission-print-wrap.print-paper-a5{align-items:flex-start}.print-area.print-paper-a5 .admission-print-sheet{max-width:620px}.print-area.print-paper-a4 .admission-print-sheet{max-width:880px}.print-area.print-paper-a5 .admission-print-header{grid-template-columns:1fr 190px;gap:10px;padding:10px}.print-area.print-paper-a5 .admission-brand-print img{width:76px;height:48px}.print-area.print-paper-a5 .admission-brand-print h1{font-size:17px}.print-area.print-paper-a5 .admission-brand-print p,.print-area.print-paper-a5 .admission-brand-print small{font-size:10px}.print-area.print-paper-a5 .admission-doc-box span{font-size:11px}.print-area.print-paper-a5 .admission-print-section{margin-top:8px}.print-area.print-paper-a5 .admission-print-section h2{font-size:12px;padding:5px 8px}.print-area.print-paper-a5 .admission-print-grid>div{min-height:34px;padding:5px 7px}.print-area.print-paper-a5 .admission-print-grid b,.print-area.print-paper-a5 .admission-print-notes b{font-size:9.5px}.print-area.print-paper-a5 .admission-print-grid span,.print-area.print-paper-a5 .admission-print-notes p{font-size:10px;line-height:1.35}.print-area.print-paper-a5 .admission-print-notes>div{min-height:64px;padding:7px}.print-area.print-paper-a5 .admission-check-grid{gap:5px;padding:7px}.print-area.print-paper-a5 .admission-check-grid label{font-size:10px;padding:5px}.print-area.print-paper-a5 .admission-terms-box{font-size:10px;padding:7px;margin-top:8px;line-height:1.55}.print-area.print-paper-a5 .admission-signatures{margin-top:8px;gap:8px}.print-area.print-paper-a5 .admission-signatures div{min-height:64px;padding:7px}.print-area.print-paper-a5 .admission-signatures strong{font-size:10px}.print-area.print-paper-a5 .admission-signatures span{height:18px}.print-area.print-paper-a5 .invoice-paper{max-width:620px}
@media print{html,body{margin:0!important;padding:0!important;background:#fff!important}.content{width:100%!important}.print-area{width:100%!important;margin:0!important;padding:0!important;display:block!important}.print-area.print-paper-a4{width:200mm!important;max-width:200mm!important}.print-area.print-paper-a5{width:141mm!important;max-width:141mm!important}.print-area.print-paper-a4 .invoice-paper,.print-area.print-paper-a4 .admission-print-sheet{width:200mm!important;max-width:200mm!important;min-height:auto!important;max-height:287mm!important;margin:0 auto!important;overflow:hidden!important;page-break-inside:avoid!important;break-inside:avoid!important;page-break-after:avoid!important;break-after:avoid-page!important}.print-area.print-paper-a5 .invoice-paper,.print-area.print-paper-a5 .admission-print-sheet{width:141mm!important;max-width:141mm!important;min-height:auto!important;max-height:202mm!important;margin:0 auto!important;overflow:hidden!important;page-break-inside:avoid!important;break-inside:avoid!important;page-break-after:avoid!important;break-after:avoid-page!important}.print-area.print-paper-a4 .admission-print-sheet{padding:2mm!important;border:0!important}.print-area.print-paper-a5 .admission-print-sheet{padding:1.5mm!important;border:0!important;font-size:6.2px!important;line-height:1.16!important}.print-area.print-paper-a5 .admission-print-header{grid-template-columns:1fr 34mm!important;gap:1.2mm!important;padding:1.2mm!important;margin-bottom:1.2mm!important;border-radius:1mm!important}.print-area.print-paper-a5 .admission-brand-print{gap:1mm!important}.print-area.print-paper-a5 .admission-brand-print img{width:20mm!important;height:10mm!important;padding:.4mm!important;border-radius:.6mm!important}.print-area.print-paper-a5 .admission-brand-print h1{font-size:8px!important;line-height:1.05!important}.print-area.print-paper-a5 .admission-brand-print p{font-size:5.7px!important;line-height:1.08!important;margin:.2mm 0!important}.print-area.print-paper-a5 .admission-brand-print small{font-size:5px!important;line-height:1.05!important}.print-area.print-paper-a5 .admission-doc-box{padding:.8mm!important;gap:.3mm!important;border-radius:.7mm!important}.print-area.print-paper-a5 .admission-doc-box strong{font-size:7px!important}.print-area.print-paper-a5 .admission-doc-box span{font-size:5.2px!important;line-height:1.08!important}.print-area.print-paper-a5 .admission-print-section{margin-top:1mm!important;border-radius:.8mm!important}.print-area.print-paper-a5 .admission-print-section h2{font-size:6px!important;padding:.6mm 1mm!important;line-height:1.05!important}.print-area.print-paper-a5 .admission-print-grid.three{grid-template-columns:repeat(3,1fr)!important}.print-area.print-paper-a5 .admission-print-grid.four{grid-template-columns:repeat(4,1fr)!important}.print-area.print-paper-a5 .admission-print-grid>div{min-height:5.5mm!important;padding:.7mm!important}.print-area.print-paper-a5 .admission-print-grid b,.print-area.print-paper-a5 .admission-print-notes b{font-size:5px!important;line-height:1.05!important}.print-area.print-paper-a5 .admission-print-grid span,.print-area.print-paper-a5 .admission-print-notes p{font-size:5.4px!important;line-height:1.18!important}.print-area.print-paper-a5 .admission-print-notes{grid-template-columns:1fr 1fr!important}.print-area.print-paper-a5 .admission-print-notes>div{min-height:12mm!important;max-height:15mm!important;padding:.7mm!important;overflow:hidden!important}.print-area.print-paper-a5 .admission-print-notes p{margin:.2mm 0 0!important}.print-area.print-paper-a5 .admission-check-grid{grid-template-columns:repeat(4,1fr)!important;gap:.6mm!important;padding:.8mm!important}.print-area.print-paper-a5 .admission-check-grid label{font-size:5.2px!important;line-height:1!important;border-radius:.6mm!important;padding:.55mm!important;gap:.45mm!important}.print-area.print-paper-a5 .admission-check-grid span{width:2mm!important;height:2mm!important;border-width:1px!important}.print-area.print-paper-a5 .admission-terms-box{font-size:5.2px!important;line-height:1.18!important;padding:.8mm!important;margin-top:1mm!important;border-radius:.6mm!important;max-height:9mm!important;overflow:hidden!important}.print-area.print-paper-a5 .admission-signatures{grid-template-columns:repeat(3,1fr)!important;gap:1mm!important;margin-top:1mm!important}.print-area.print-paper-a5 .admission-signatures div{min-height:13mm!important;padding:.8mm!important;border-radius:.7mm!important}.print-area.print-paper-a5 .admission-signatures strong{font-size:5.2px!important}.print-area.print-paper-a5 .admission-signatures span{height:4mm!important}.print-area.print-paper-a4 .admission-print-notes>div{max-height:24mm!important;overflow:hidden!important}.print-area.print-paper-a4 .admission-terms-box{max-height:11mm!important;overflow:hidden!important}.print-area.print-paper-a5 .invoice-paper{padding:2mm!important;font-size:5.4px!important;line-height:1.12!important;max-height:202mm!important}.print-area.print-paper-a5 .inv-header-v4{margin-bottom:.8mm!important;border-radius:0!important}.print-area.print-paper-a5 .inv-header-v4 .h-line-main{min-height:9mm!important;padding:.7mm 1mm!important;gap:.8mm!important}.print-area.print-paper-a5 .inv-header-v4 .h-line-sub{min-height:3mm!important;padding:.4mm 1mm!important;font-size:4.6px!important;line-height:1.05!important;gap:.8mm!important}.print-area.print-paper-a5 .inv-header-v4 .h-company-block strong{font-size:6.5px!important}.print-area.print-paper-a5 .inv-header-v4 .h-company-block span{font-size:4.8px!important}.print-area.print-paper-a5 .h-chip{padding:.35mm .55mm!important;border-radius:.4mm!important}.print-area.print-paper-a5 .h-chip em{font-size:4.2px!important}.print-area.print-paper-a5 .h-chip b{font-size:4.8px!important}.print-area.print-paper-a5 .inv-header-v4 .inv-logo-wide,.print-area.print-paper-a5 .h-logo-stack .inv-logo-wide,.print-area.print-paper-a5 .h-logo-top .h-line-logo-top .inv-logo-wide{width:20mm!important;height:8mm!important;min-width:20mm!important;padding:.3mm!important;border-radius:.5mm!important}.print-area.print-paper-a5 .h-logo-center .h-line-main{grid-template-columns:31mm 20mm 1fr!important}.print-area.print-paper-a5 .h-logo-right .h-line-main{grid-template-columns:20mm 1fr 28mm!important}.print-area.print-paper-a5 .h-stamp-layout .h-line-main{grid-template-columns:26mm 1fr 20mm 7mm!important}.print-area.print-paper-a5 .h-service-line .h-line-main{grid-template-columns:20mm 1fr 28mm!important}.print-area.print-paper-a5 .inv-grid-v4{grid-template-columns:repeat(4,1fr)!important;gap:.7mm!important;margin-bottom:.8mm!important}.print-area.print-paper-a5 .inv-card{padding:.7mm!important;border-radius:0!important}.print-area.print-paper-a5 .inv-card h3{font-size:5.1px!important;padding-bottom:.35mm!important;margin-bottom:.35mm!important}.print-area.print-paper-a5 .inv-row{font-size:4.9px!important;line-height:1.08!important;padding:.25mm 0!important}.print-area.print-paper-a5 .inv-row span:first-child{font-size:4.5px!important}.print-area.print-paper-a5 .inv-table{margin:.8mm 0!important}.print-area.print-paper-a5 .inv-table th,.print-area.print-paper-a5 .inv-table td{font-size:4.9px!important;line-height:1.08!important;padding:.35mm!important}.print-area.print-paper-a5 .inv-after-table{grid-template-columns:1fr 32mm!important;gap:.8mm!important}.print-area.print-paper-a5 .inv-note{font-size:4.8px!important;line-height:1.15!important;padding:.45mm!important;max-height:14mm!important;overflow:hidden!important}.print-area.print-paper-a5 .inv-total-line{font-size:4.8px!important;padding:.35mm .5mm!important}.print-area.print-paper-a5 .inv-total-line.final{font-size:5.3px!important}.print-area.print-paper-a5 .inv-sign{margin-top:.8mm!important;gap:1mm!important}.print-area.print-paper-a5 .sign-box{min-height:10mm!important;width:auto!important;font-size:5px!important;padding:.5mm!important}.print-area.print-paper-a5 .sign-box img{max-height:7mm!important}.print-area.print-paper-a5 .inv-footer-text{margin-top:.5mm!important;max-height:5mm!important;overflow:hidden!important}}


/* ================= DAILY LEDGER GROUPING / INVOICE PRINT FIX ================= */
.daily-ledger-panel{display:grid;gap:16px}
.daily-ledger{display:grid;gap:18px}
.daily-ledger-card{border:2px solid #d9e0ea;border-radius:22px;background:#fff;overflow:hidden;box-shadow:0 4px 14px rgba(17,23,34,.045);transition:border-color .2s ease,box-shadow .2s ease}
.daily-ledger-card[open]{border-color:#111722;box-shadow:0 16px 34px rgba(17,23,34,.10)}
.daily-ledger-summary{display:grid;gap:14px;padding:16px 18px;cursor:pointer;list-style:none;user-select:none;background:#fff}
.daily-ledger-summary::-webkit-details-marker{display:none}
.daily-ledger-summary::marker{content:"";display:none}
.daily-ledger-summary:hover{background:#fbfcfe}
.daily-top-row{display:flex;align-items:center;justify-content:space-between;gap:14px}
.daily-date{display:grid;gap:4px}
.daily-date strong{font-size:16px;color:#17191f;font-weight:900}
.daily-date small{font-size:12px;color:#687083;font-weight:700}
.daily-toggle-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;min-width:128px;border-radius:13px;padding:8px 14px;background:#111722;color:#fff;font-size:12px;font-weight:900;transition:background .2s ease,color .2s ease}
.daily-state-open{display:none}
.daily-ledger-card[open] .daily-toggle-button{background:#eef1f5;color:#111722;border:1px solid #dfe4ec}
.daily-ledger-card[open] .daily-state-closed{display:none}
.daily-ledger-card[open] .daily-state-open{display:inline}
.daily-amounts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.daily-amounts span{display:grid;gap:4px;border-radius:14px;padding:9px 12px;font-weight:800;min-width:0}
.daily-amounts em{font-size:12px;font-style:normal;font-weight:800;opacity:.82}
.daily-amounts b{font-size:15px;line-height:1.5;font-weight:900;white-space:nowrap}
.daily-income{background:#eaf7ee;color:#187138;border:1px solid #cbead6}
.daily-expense{background:#fff0f0;color:#9c1720;border:1px solid #f1cdcf}
.daily-balance{background:#edf2fb;color:#243d69;border:1px solid #d4dded}
.daily-table-wrap{border-radius:0;border-width:1px 0 0;border-color:#dfe4ec}
.daily-table{min-width:980px}
.daily-empty{padding:34px 16px;border:1px dashed #dfe4ec;border-radius:18px;text-align:center;color:#687083;background:#fbfcfe}
@media(max-width:760px){
  .daily-ledger-panel{padding:14px}
  .daily-ledger{gap:12px}
  .daily-ledger-card{border-width:2px;border-radius:17px}
  .daily-ledger-summary{gap:12px;padding:12px}
  .daily-top-row{gap:8px;align-items:flex-start}
  .daily-date strong{font-size:15px}
  .daily-date small{font-size:11px}
  .daily-toggle-button{min-width:108px;min-height:38px;padding:7px 10px;font-size:11px;border-radius:11px}
  .daily-amounts{gap:6px}
  .daily-amounts span{justify-items:center;text-align:center;gap:3px;padding:8px 4px;border-radius:11px}
  .daily-amounts em{font-size:10.5px}
  .daily-amounts b{font-size:12.5px;white-space:normal;overflow-wrap:anywhere}
}
@media(max-width:390px){
  .daily-top-row{display:grid;grid-template-columns:1fr}
  .daily-toggle-button{width:100%}
  .daily-amounts b{font-size:11.5px}
}

/* ============= A4 INVOICE PRINT - LARGE READABLE ONE-PAGE LAYOUT ============= */
@media print {
  @page { size: A4 portrait; margin: 5mm; }

  /* A normal invoice occupies the full printable A4 page. Extra-long invoices
     are allowed to continue on another page instead of shrinking or clipping. */
  .print-area.print-paper-a4 {
    width: 200mm !important;
    max-width: 200mm !important;
    min-height: 287mm !important;
    margin: 0 auto !important;
  }
  .print-area.print-paper-a4 .invoice-paper {
    box-sizing: border-box !important;
    width: 200mm !important;
    max-width: 200mm !important;
    min-height: 287mm !important;
    height: auto !important;
    max-height: none !important;
    padding: 5.5mm !important;
    margin: 0 auto !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: visible !important;
    border: 1.4px solid #000 !important;
    color: #000 !important;
    font-size: 9.4pt !important;
    line-height: 1.42 !important;
    page-break-inside: auto !important;
    break-inside: auto !important;
  }

  /* Header */
  .print-area.print-paper-a4 .inv-header-v4 {
    margin-bottom: 2.5mm !important;
    border: 1.35px solid #000 !important;
    border-radius: 2mm !important;
  }
  .print-area.print-paper-a4 .inv-header-v4 .h-line-main {
    min-height: 20.5mm !important;
    padding: 2.4mm 2.7mm !important;
    gap: 2.8mm !important;
  }
  .print-area.print-paper-a4 .inv-header-v4 .h-line-sub {
    min-height: 6.5mm !important;
    padding: 1.1mm 2.7mm !important;
    font-size: 8.2pt !important;
    line-height: 1.35 !important;
    gap: 3mm !important;
  }
  .print-area.print-paper-a4 .inv-header-v4 .h-company-block strong {
    font-size: 13pt !important;
    line-height: 1.3 !important;
    font-weight: 900 !important;
  }
  .print-area.print-paper-a4 .inv-header-v4 .h-company-block span {
    font-size: 8.6pt !important;
    line-height: 1.4 !important;
  }
  .print-area.print-paper-a4 .inv-header-v4 .h-doc-block {
    min-width: 42mm !important;
    gap: 1.1mm !important;
  }
  .print-area.print-paper-a4 .inv-header-v4 .h-doc-block > strong {
    font-size: 10pt !important;
    line-height: 1.3 !important;
  }
  .print-area.print-paper-a4 .h-chip {
    padding: .8mm 1.2mm !important;
    border: 1px solid #000 !important;
  }
  .print-area.print-paper-a4 .h-chip em {
    font-size: 7.5pt !important;
  }
  .print-area.print-paper-a4 .h-chip b {
    font-size: 8.3pt !important;
    font-weight: 900 !important;
  }
  .print-area.print-paper-a4 .inv-header-v4 .inv-logo-wide,
  .print-area.print-paper-a4 .h-logo-stack .inv-logo-wide,
  .print-area.print-paper-a4 .h-logo-top .h-line-logo-top .inv-logo-wide {
    width: 38mm !important;
    height: 17mm !important;
    min-width: 38mm !important;
    border: 1px solid #000 !important;
    border-radius: 1.7mm !important;
    padding: 1mm !important;
  }

  /* Four information fields */
  .print-area.print-paper-a4 .inv-grid-v4,
  .print-area.print-paper-a4 .tpl-compact .inv-grid-v4,
  .print-area.print-paper-a4 .tpl-service .inv-grid-v4 {
    gap: 1.7mm !important;
    margin-bottom: 2.4mm !important;
  }
  .print-area.print-paper-a4 .inv-card {
    border: 1.2px solid #000 !important;
    border-radius: 1.4mm !important;
    padding: 1.8mm !important;
  }
  .print-area.print-paper-a4 .inv-card h3 {
    font-size: 9pt !important;
    line-height: 1.3 !important;
    font-weight: 900 !important;
    padding: 0 0 1mm !important;
    margin: 0 0 1mm !important;
    border-bottom: 1.1px solid #000 !important;
  }
  .print-area.print-paper-a4 .inv-row {
    font-size: 8.25pt !important;
    line-height: 1.42 !important;
    padding: .65mm 0 !important;
    gap: .5mm !important;
    border-bottom: 1px dashed #9a9a9a !important;
  }
  .print-area.print-paper-a4 .inv-row span:first-child {
    font-size: 7.8pt !important;
    color: #222 !important;
  }
  .print-area.print-paper-a4 .inv-row b {
    font-size: 8.65pt !important;
    font-weight: 900 !important;
    color: #000 !important;
  }

  /* Item table: larger figures, clearer ruled cells */
  .print-area.print-paper-a4 .inv-table {
    table-layout: fixed !important;
    margin: 2.4mm 0 2.6mm !important;
    border: 1.35px solid #000 !important;
  }
  .print-area.print-paper-a4 .inv-table th,
  .print-area.print-paper-a4 .inv-table td {
    border: 1px solid #737373 !important;
    font-size: 8.8pt !important;
    line-height: 1.35 !important;
    padding: 1.12mm 1.35mm !important;
    color: #000 !important;
  }
  .print-area.print-paper-a4 .inv-table th {
    font-size: 9pt !important;
    font-weight: 900 !important;
    background: #f0f0f0 !important;
  }
  .print-area.print-paper-a4 .inv-table td:nth-child(1),
  .print-area.print-paper-a4 .inv-table td:nth-child(3),
  .print-area.print-paper-a4 .inv-table td:nth-child(4),
  .print-area.print-paper-a4 .inv-table td:nth-child(5) {
    font-weight: 800 !important;
  }
  .print-area.print-paper-a4 .inv-table th:nth-child(1),
  .print-area.print-paper-a4 .inv-table td:nth-child(1) { width: 10mm !important; text-align: center !important; }
  .print-area.print-paper-a4 .inv-table th:nth-child(3),
  .print-area.print-paper-a4 .inv-table td:nth-child(3) { width: 15mm !important; text-align: center !important; }
  .print-area.print-paper-a4 .inv-table th:nth-child(4),
  .print-area.print-paper-a4 .inv-table td:nth-child(4),
  .print-area.print-paper-a4 .inv-table th:nth-child(5),
  .print-area.print-paper-a4 .inv-table td:nth-child(5) { width: 30mm !important; }

  /* Terms and totals */
  .print-area.print-paper-a4 .inv-after-table {
    grid-template-columns: 1fr 61mm !important;
    gap: 2.8mm !important;
    align-items: stretch !important;
  }
  .print-area.print-paper-a4 .inv-note {
    border: 1.15px solid #333 !important;
    border-radius: 1.7mm !important;
    background: #fff !important;
    color: #000 !important;
    font-size: 8.35pt !important;
    line-height: 1.62 !important;
    padding: 2mm 2.4mm !important;
    max-height: none !important;
    overflow: visible !important;
  }
  .print-area.print-paper-a4 .inv-note b {
    font-size: 8.8pt !important;
    font-weight: 900 !important;
  }
  .print-area.print-paper-a4 .inv-totals {
    border: 1.35px solid #000 !important;
    border-radius: 1.7mm !important;
  }
  .print-area.print-paper-a4 .inv-total-line {
    padding: 1.25mm 1.7mm !important;
    font-size: 9pt !important;
    line-height: 1.35 !important;
    border-bottom: 1px solid #666 !important;
  }
  .print-area.print-paper-a4 .inv-total-line b {
    font-size: 9.3pt !important;
    font-weight: 900 !important;
  }
  .print-area.print-paper-a4 .inv-total-line.final {
    padding: 1.55mm 1.7mm !important;
    font-size: 10.6pt !important;
    border: 2px solid #000 !important;
    background: #fff !important;
    color: #000 !important;
    font-weight: 900 !important;
  }
  .print-area.print-paper-a4 .inv-total-line.final b {
    font-size: 11pt !important;
  }

  /* Signatures sit at the bottom of a normal one-page invoice. */
  .print-area.print-paper-a4 .inv-sign {
    margin-top: auto !important;
    padding-top: 4mm !important;
    gap: 5mm !important;
  }
  .print-area.print-paper-a4 .sign-box {
    width: 48mm !important;
    min-height: 26mm !important;
    height: 26mm !important;
    padding: 2mm !important;
    border: 1.2px dashed #555 !important;
    border-radius: 1.7mm !important;
    font-size: 8.8pt !important;
    font-weight: 700 !important;
  }
  .print-area.print-paper-a4 .sign-box img {
    max-height: 18mm !important;
  }
  .print-area.print-paper-a4 .inv-footer-text {
    flex: 0 0 auto !important;
    margin-top: 2.5mm !important;
    padding: 1.6mm 2mm !important;
    font-size: 7.8pt !important;
    line-height: 1.4 !important;
    text-align: center !important;
    border-color: #888 !important;
  }
}

/* A4 refinement: keep the readable enlarged type while preserving one-page fit
   for standard 15-line invoices by presenting metadata as label/value rows. */
@media print {
  .print-area.print-paper-a4 .inv-grid-v4 .inv-row {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: baseline !important;
    gap: 1mm !important;
    padding: .72mm 0 !important;
  }
  .print-area.print-paper-a4 .inv-grid-v4 .inv-row span:first-child {
    flex: 0 0 auto !important;
  }
  .print-area.print-paper-a4 .inv-grid-v4 .inv-row b {
    min-width: 0 !important;
    max-width: 64% !important;
    text-align: left !important;
    overflow-wrap: anywhere !important;
  }
  .print-area.print-paper-a4 .inv-table th,
  .print-area.print-paper-a4 .inv-table td {
    padding-top: 1.02mm !important;
    padding-bottom: 1.02mm !important;
  }
  .print-area.print-paper-a4 .inv-note {
    line-height: 1.52 !important;
    padding-top: 1.7mm !important;
    padding-bottom: 1.7mm !important;
  }
  .print-area.print-paper-a4 .inv-sign {
    padding-top: 3mm !important;
  }
  .print-area.print-paper-a4 .sign-box {
    min-height: 23mm !important;
    height: 23mm !important;
  }
}

/* Final A4 pagination correction: block flow prevents the page footer from
   spilling onto a blank second sheet while retaining the full-page border. */
@media print {
  .print-area.print-paper-a4 .invoice-paper {
    display: block !important;
    min-height: 287mm !important;
    height: auto !important;
  }
  .print-area.print-paper-a4 .inv-sign {
    margin-top: 14mm !important;
    padding-top: 0 !important;
  }
}

/* ============= LONG A4 INVOICE PAGINATION FIX =============
   هدف: اگر تعداد ردیف های فاکتور از ظرفیت یک صفحه بیشتر شد، ادامه ردیف ها
   در صفحه دوم چاپ شود و محتوای انتهای صفحه بریده نشود. */
@media print {
  @page { size: A4 portrait; margin: 5mm; }

  html,
  body,
  .app-shell,
  .content,
  .print-area {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
  }

  .print-area.print-paper-a4 {
    width: 200mm !important;
    max-width: 200mm !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    display: block !important;
  }

  .print-area.print-paper-a4 .invoice-paper {
    box-sizing: border-box !important;
    width: 200mm !important;
    max-width: 200mm !important;
    min-height: 287mm !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    display: block !important;
    page-break-inside: auto !important;
    break-inside: auto !important;
    page-break-after: auto !important;
    break-after: auto !important;
  }

  .print-area.print-paper-a4 .inv-table {
    overflow: visible !important;
    page-break-inside: auto !important;
    break-inside: auto !important;
  }

  .print-area.print-paper-a4 .inv-table thead {
    display: table-header-group !important;
  }

  .print-area.print-paper-a4 .inv-table tbody {
    display: table-row-group !important;
  }

  .print-area.print-paper-a4 .inv-table tr {
    page-break-inside: avoid !important;
    break-inside: avoid !important;
    page-break-after: auto !important;
    break-after: auto !important;
  }

  .print-area.print-paper-a4 .inv-after-table,
  .print-area.print-paper-a4 .inv-notes-col,
  .print-area.print-paper-a4 .inv-totals,
  .print-area.print-paper-a4 .inv-note,
  .print-area.print-paper-a4 .inv-sign,
  .print-area.print-paper-a4 .inv-footer-text {
    page-break-inside: avoid !important;
    break-inside: avoid !important;
  }
}
