:root{--bg:#f6f8fa;--ink:#1e2937;--muted:#7b8695;--border:#e9edf0;--teal:#0b8179;--teal-dark:#086b64}*{box-sizing:border-box}body{margin:0;font-family:Vazir,Tahoma,sans-serif;background:var(--bg);color:var(--ink);font-size:15px}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{transition:background .15s,color .15s,box-shadow .15s}button{cursor:pointer}button:disabled{opacity:.48;cursor:not-allowed}button{border:0}a{text-decoration:none;color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #7dd3c8;outline-offset:3px}h1,h2,h3,p{margin:0}input,textarea,select{color:var(--ink)}.app-shell{min-height:100vh}.sidebar{width:236px;position:fixed;right:0;top:0;bottom:0;background:white;border-left:1px solid var(--border);display:flex;flex-direction:column;padding:32px 20px 18px;z-index:20}.brand{display:flex;align-items:center;gap:11px;font-size:28px;font-weight:700;letter-spacing:-1px}.brand-icon{display:flex;align-items:center;justify-content:center;background:var(--teal);color:white;width:46px;height:46px;border-radius:14px;box-shadow:0 5px 10px #0b81791a}.brand small{display:block;font-size:12px;font-weight:400;color:var(--muted);letter-spacing:0;margin-top:0}.nav-label{color:#a0a8b3;font-size:13px;margin:44px 15px 13px}nav{display:grid;gap:7px}.nav-item{display:flex;align-items:center;gap:12px;background:transparent;color:#737d8b;width:100%;padding:13px 15px;text-align:right;border-radius:9px;font-size:14px;white-space:nowrap}.nav-item:hover{background:#f6f9f9}.nav-item.active{color:var(--teal);background:#e9f5f2;font-weight:700}.nav-item.active:before{content:'';position:absolute;right:0;width:3px;height:25px;border-radius:3px;background:var(--teal)}.nav-item b{font-size:13px;background:#d5eee7;min-width:23px;padding:1px 6px;border-radius:5px;margin-right:auto;text-align:center}.side-card{border:1px solid #e7eceb;border-radius:12px;background:linear-gradient(145deg,#f6faf9,#fff);padding:18px 15px;margin:44px 0 20px}.side-symbol{display:flex;color:var(--teal);margin-bottom:12px}.side-card strong{font-size:14px}.side-card p{font-size:13px;line-height:2;color:var(--muted);margin:6px 0 13px}.side-card button{background:white;border:1px solid var(--border);width:100%;border-radius:7px;padding:9px 4px;display:flex;justify-content:center;align-items:center;gap:16px;font-size:13px;color:#526070}.help{margin-top:auto}.profile{border-top:1px solid var(--border);margin-top:15px;padding-top:20px;display:flex;align-items:center;gap:10px}.avatar{background:#ececf7;color:#7b70a1;border-radius:50%;width:36px;height:36px;display:grid;place-items:center;font-weight:700}.profile strong{font-size:14px}.profile small{display:block;font-size:12px;color:var(--muted);margin-top:3px}.profile>svg{margin-right:auto;color:#a1aab4}.main-shell{margin-right:236px}.topbar{height:77px;background:#fff;border-bottom:1px solid var(--border);padding:0 38px;display:flex;align-items:center;justify-content:space-between}.crumb{display:flex;align-items:center;gap:13px;font-size:14px;color:#929ba7}.crumb strong{font-weight:500;color:#4e5a69}.top-date{font-size:13px;color:#7f8a97;display:flex;gap:7px;align-items:center}.dot{display:inline-block;width:6px;height:6px;background:currentColor;border-radius:50%;flex-shrink:0}.top-date .dot{color:#38a58e}.date-divider{height:15px;border-right:1px solid var(--border);margin:0 9px}main{max-width:1560px;margin:auto;padding:32px 38px 20px}.page-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px;gap:15px}.eyebrow{font-size:12px;letter-spacing:.4px;color:#99a2ad}.page-heading h1{font-size:24px;letter-spacing:-.7px;margin-top:3px;font-weight:700}.page-heading p{font-size:14px;color:var(--muted);margin-top:6px}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:8px;font-weight:500;padding:11px 17px;min-height:42px;white-space:nowrap;font-size:14px}.primary{background:var(--teal);color:white;box-shadow:0 3px 5px #0b817911}.primary:hover{background:var(--teal-dark)}.secondary{background:white;color:#667180;border:1px solid #e3e8ec}.secondary:hover{background:#f3f7f6}.compact{padding:8px 12px;min-height:34px;font-size:13px}.text-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;color:var(--teal);background:transparent;font-size:14px;padding:5px 0;white-space:nowrap}.text-button:hover{color:#034e46}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;background:transparent;color:#8a95a2;border-radius:6px}.icon-button:hover{background:#edf3f2;color:var(--teal)}.welcome{min-height:223px;border:1px solid #dceee8;background:linear-gradient(105deg,#e9f5ee 0%,#f0f8f4 45%,#f1f8f7 100%);border-radius:13px;display:flex;align-items:center;justify-content:space-between;padding:26px 32px;position:relative;overflow:hidden}.welcome-content{z-index:1}.tag{font-size:12px;display:inline-flex;align-items:center;gap:7px;color:#559181;background:#e1f1e9;border:1px solid #d5eae1;padding:4px 9px;border-radius:20px}.tag .dot{width:4px;height:4px}.welcome h2{font-size:23px;letter-spacing:-.7px;margin:12px 0 8px;color:#244d47}.welcome p{font-size:14px;line-height:2.1;color:#6d8b81}.welcome .text-button{font-size:13px;margin-top:10px;font-weight:700}.hero-art{width:315px;min-width:255px;height:180px;position:relative;margin-left:12px;direction:ltr}.art-orbit{width:180px;height:180px;border:1px dashed #c3dfd2;border-radius:50%;position:absolute;left:60px;top:0}.art-orbit:before{content:'';position:absolute;inset:-25px;border:1px solid #d7e9df;border-radius:50%;opacity:.6}.art-file{width:105px;height:142px;background:#fff;border-radius:12px;position:absolute;left:106px;top:3px;transform:rotate(-9deg);box-shadow:7px 15px 25px #497d6116;color:#d87968;padding:21px;display:flex;align-items:center;flex-direction:column;gap:4px}.art-fold{position:absolute;right:0;top:0;border-top:23px solid #e4eee9;border-left:23px solid transparent;border-radius:0 10px 0 0}.art-file b{font:700 12px sans-serif;color:#ce8c80}.art-lines{width:55px;margin-top:6px}.art-lines i{height:3px;display:block;background:#e7efeb;border-radius:4px;margin:6px 0}.art-lines i:last-child{width:65%}.art-link{position:absolute;left:73px;top:76px;width:47px;height:47px;border-radius:12px;background:var(--teal);color:white;display:grid;place-items:center;transform:rotate(9deg);border:4px solid #e9f5ef;box-shadow:0 7px 10px #0b81791c}.art-msg{position:absolute;bottom:8px;left:74px;background:white;border:1px solid #deede5;box-shadow:0 10px 20px #436c5410;border-radius:9px;display:flex;align-items:center;gap:10px;padding:12px 14px;direction:rtl;color:#638378;font-size:12px;transform:rotate(2deg)}.art-msg>svg:first-child{color:var(--teal)}.art-msg>svg:last-child{color:#57a58d}.art-dot{position:absolute;width:7px;height:7px;background:#bedbcb;border-radius:50%}.art-dot.one{left:44px;top:40px}.art-dot.two{right:37px;bottom:48px;width:5px;height:5px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:22px 0}.stat{background:white;border:1px solid var(--border);border-radius:11px;padding:18px;display:flex;align-items:center;gap:14px}.stat-icon{width:43px;height:43px;border-radius:11px;display:grid;place-items:center;flex-shrink:0}.violet{background:#f0edfb;color:#9380bf}.teal{background:#e8f5ef;color:#419b7c}.blue{background:#ecf3ff;color:#6b94cd}.amber{background:#fff5e7;color:#caa060}.stat div>span{display:block;font-size:13px;color:#8b95a3}.stat strong{display:block;font-size:23px;font-weight:500;margin-top:3px}.file-panel{background:#fff;border:1px solid var(--border);border-radius:12px;overflow:hidden}.panel-heading{padding:22px 23px 19px;display:flex;justify-content:space-between;align-items:center;gap:12px}.panel-heading h2{display:flex;align-items:center;gap:9px;font-size:16px}.count{background:#f1f4f6;border:1px solid #e8edf1;color:#8d99a4;display:inline-flex;align-items:center;justify-content:center;min-width:23px;height:22px;border-radius:6px;font-size:13px;font-weight:400}.panel-heading p{font-size:13px;color:#929ba6;margin-top:7px}.filters{padding:0 23px 19px;display:flex;gap:10px;align-items:center}.search{display:flex;align-items:center;border:1px solid #e5e9ed;background:#fff;border-radius:7px;height:38px;padding:0 12px;gap:9px;flex:1;color:#a1abb6}.search input{border:0;outline:0!important;min-width:0;width:100%;font-size:13px;background:transparent}.search input::placeholder{color:#9ea7b0}.filters select{height:38px;border:1px solid #e5e9ed;border-radius:7px;background:#fff;padding:0 11px;color:#7d8793;font-size:13px;max-width:180px}.table-scroll{overflow:auto}table{border-collapse:collapse;text-align:right;width:100%;font-size:14px;white-space:nowrap}thead{background:#f9fafb;color:#939da9;font-weight:400}th{padding:13px 15px;font-weight:400;font-size:13px;border-block:1px solid #eef1f3}td{padding:17px 15px;border-bottom:1px solid #f1f3f5;color:#6a7786}th:first-child,td:first-child{padding-right:23px;width:43px}input[type=checkbox]{width:14px;height:14px;accent-color:var(--teal);vertical-align:middle;cursor:pointer}.file-name{display:flex;text-align:right;align-items:center;gap:10px;max-width:270px;background:none;padding:0}.file-name strong{display:block;font-size:14px;color:#485767;font-weight:500;white-space:normal;overflow-wrap:anywhere}.file-name small{display:block;color:#a0a8b1;font-size:12px;margin-top:5px}.pdf-icon{width:36px;height:43px;background:#fff0ed;border:1px solid #f8e4de;border-radius:7px;color:#d69b8d;display:flex;align-items:center;justify-content:center;flex-direction:column;flex-shrink:0}.pdf-icon small{font:6px sans-serif;color:#d69b8d;margin-top:0}.recipient{font-size:13px;font-weight:500;color:#667383}.cell-sub{display:block;color:#9aa3ad;font-size:12px;margin-top:4px;text-align:right}.badge{display:inline-flex;align-items:center;gap:6px;border-radius:20px;padding:4px 8px;font-size:12px;white-space:nowrap}.badge .dot{width:4px;height:4px}.success{background:#edf7f1;color:#58a17c}.muted{background:#f2f3f5;color:#98a1ac}.sms-state{font-size:12px;color:#99a2ad}.sms-state.sent{color:#5d9e85}.row-actions{display:flex;gap:1px}.row-actions .icon-button{width:29px;height:29px}.empty{min-height:245px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:25px;gap:8px;color:#8f9aa7}.empty h3{font-size:16px;color:#5d6d7b;font-weight:500;margin-top:8px}.empty p{font-size:14px;line-height:2}.empty .primary,.empty .secondary{margin-top:10px}.empty-illustration{width:85px;height:70px;position:relative;color:#87b8a8;background:radial-gradient(ellipse,#e9f4ed 0%,#f4f9f6 64%,#fff 65%);display:grid;place-items:center}.empty-illustration>span{position:absolute;bottom:5px;left:11px;border:3px solid white;display:grid;place-items:center;background:#67a48b;color:white;border-radius:50%;width:26px;height:26px}.empty-round{display:grid;place-items:center;background:#edf6f2;border-radius:50%;width:65px;height:65px;color:#77aa97}.table-footer{padding:13px 23px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--border);color:#a2abb4;font-size:12px;min-height:43px}.table-footer span:last-child{display:flex;align-items:center;gap:5px}.setup-note{display:flex;align-items:center;gap:14px;margin-top:20px;padding:15px 18px;background:#f0f3f7;border:1px dashed #d8e0e7;border-radius:10px}.note-icon{width:38px;height:38px;border-radius:9px;background:white;display:grid;place-items:center;color:#8e9dab}.setup-note strong{font-size:14px;font-weight:500;color:#73808e}.setup-note p{font-size:12px;color:#929eaa;margin-top:4px}.setup-note>.text-button{margin-right:auto;font-size:13px}.footer{display:flex;justify-content:space-between;color:#a9b0b9;font-size:12px;padding:27px 0 4px}.selection-bar{background:#eff8f4;padding:12px 23px;display:flex;align-items:center;gap:15px;color:var(--teal);font-size:14px}.selection-bar>.primary{margin-right:auto}.settings-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:22px;align-items:start}.settings-card{padding:26px}.settings-card h2{font-size:16px;margin-bottom:8px}.settings-card>p{font-size:14px;color:var(--muted);line-height:2;margin-bottom:24px}.section-icon{display:inline-flex;background:#e9f4f0;color:#579783;padding:12px;border-radius:12px;margin-bottom:17px}.connection{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:17px 0;border-bottom:1px solid var(--border);font-size:14px}.soft-note{display:flex;gap:10px;background:#f4f8f7;color:#6c877c;border:1px solid #e5eeea;border-radius:8px;padding:14px;font-size:14px;line-height:2;margin:22px 0}.soft-note svg{flex-shrink:0;margin-top:3px}.field{display:flex;flex-direction:column;gap:8px;font-size:13px;color:#6f7c8a}.field input,.field textarea{border:1px solid #dfe6e9;padding:10px 12px;border-radius:7px;width:100%;font-size:14px;background:white}.field input{height:40px}.field textarea{resize:vertical;line-height:2}.variables{display:flex;gap:8px;font-size:13px;align-items:center;margin:13px 0 20px;color:#8f9aa6}.variables code{direction:ltr;padding:4px 7px;background:#f1f5f4;color:#6f9888;border-radius:4px}.message-preview{border:1px solid #e3ece6;background:#f4f8f5;padding:15px;border-radius:9px;margin:15px 0;overflow-wrap:anywhere}.message-preview>span{font-size:12px;color:#91a699}.message-preview p{white-space:pre-wrap;font-size:14px;line-height:2.2;margin-top:8px;color:#688375}.message-preview strong{font-size:14px;font-weight:500;display:flex;justify-content:space-between}.guide{padding:30px;max-width:860px}.guide>h2{font-size:18px;margin-bottom:28px}.guide-step{display:flex;gap:17px;margin-bottom:28px}.guide-step>span{background:#e9f5ef;color:#64a28a;width:36px;height:36px;border-radius:10px;display:grid;place-items:center;flex-shrink:0}.guide-step h3{font-size:15px;margin-bottom:7px}.guide-step p{line-height:2.2;color:#88939e;font-size:14px}.message-cell{white-space:pre-wrap;max-width:270px;min-width:190px;line-height:2;font-size:13px}.panel-footnote{font-size:13px;color:var(--muted);padding:20px;line-height:2}.alert{display:flex;align-items:center;gap:12px;padding:14px;border-radius:8px;margin-bottom:20px;font-size:14px;line-height:1.8}.alert.error{color:#b96d62;background:#fff0eb;border:1px solid #f8dcd3}.alert svg{flex-shrink:0}.alert .icon-button{margin-right:auto}.toast{position:fixed;bottom:24px;left:24px;background:#fff;box-shadow:0 6px 35px #0a3a2420;border:1px solid #dfeae3;color:#588f78;border-radius:12px;padding:15px 18px;display:flex;align-items:center;gap:12px;z-index:100;font-size:14px;max-width:calc(100% - 32px)}.toast>svg{flex-shrink:0}.modal-backdrop{position:fixed;inset:0;background:#1d333869;backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:50;padding:25px;overflow-y:auto}.modal{background:#fff;border-radius:16px;width:580px;max-width:100%;max-height:calc(100dvh - 50px);overflow-y:auto;padding:25px;box-shadow:0 20px 65px #112c3020}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.modal-header h2{font-size:17px}.modal-header p{font-size:13px;color:#8b99a5;margin-top:6px;overflow-wrap:anywhere}.upload-modal{width:840px}.dropzone{border:1.5px dashed #b6d5c8;background:#f7fbf8;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:11px;padding:24px;color:#84ad99;gap:8px}.dropzone h3{font-size:15px;color:#5c8473}.dropzone p{font-size:13px;color:#9aada2}.dropzone .secondary{margin-top:6px}.csv-tools{display:flex;align-items:center;gap:15px;margin:20px 0;font-size:13px;flex-wrap:wrap}.csv-tools>div{display:flex;align-items:center;gap:8px;color:#8a98a3}.csv-tools>.text-button{margin-right:auto;font-size:13px}.upload-rows{display:grid;gap:15px}.upload-row{border:1px solid var(--border);border-radius:10px;padding:16px}.upload-row-title{display:flex;align-items:center;gap:10px;margin-bottom:14px}.upload-row-title strong{font-size:14px;overflow-wrap:anywhere;min-width:0}.upload-row-title small{font-size:12px;white-space:nowrap;color:#94a0aa}.upload-row-title .icon-button{margin-right:auto}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.modal-footer{display:flex;gap:10px;align-items:center;justify-content:flex-end;border-top:1px solid var(--border);padding-top:20px;margin-top:24px;font-size:14px;color:var(--muted)}.modal-footer>span{margin-left:auto;font-size:13px}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.detail-file{display:flex;align-items:center;gap:14px;padding:20px 0;border-top:1px solid var(--border);overflow-wrap:anywhere}.detail-file .pdf-icon{width:49px;height:58px}.detail-file h3{font-size:16px}.detail-file p{font-size:13px;color:#9aa6ae;margin-top:5px}.details-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:17px;padding:15px 0;margin:0 0 20px}.details-grid dt{font-size:13px;color:#97a1ad}.details-grid dd{font-size:14px;margin:6px 0 0;text-align:right}.detail-description{font-size:14px;line-height:2;color:#758b7f;padding:15px;background:#f6f9f7;border-radius:8px;margin-bottom:20px;white-space:pre-wrap}.detail-actions{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.detail-danger{border-top:1px solid var(--border);padding-top:18px;display:flex;justify-content:space-between;gap:10px}.danger{color:#bb786a}.destructive{background:#bc6d61}.destructive:hover{background:#a85a50}.send-preview-list{max-height:45vh;overflow:auto}.mobile-menu{display:none}.viewer-shell{min-height:100vh}.viewer-top{background:#fff;border-bottom:1px solid var(--border);padding:20px 5%;display:flex;justify-content:space-between;align-items:center;color:#94a29b;font-size:14px}.viewer-top .brand{color:var(--ink);font-size:25px}.viewer-main{max-width:1100px;padding:32px 24px}.viewer-info{display:flex;gap:14px;align-items:center;margin-bottom:23px}.viewer-info h1{font-size:21px}.viewer-info p{font-size:14px;color:#8a9c92;margin-top:7px}.viewer-info .primary{margin-right:auto}.viewer-description{margin-bottom:20px;font-size:15px;color:#6c8075;line-height:2;white-space:pre-wrap}.viewer-frame{background:#fff;border:1px solid #dde7e1;border-radius:13px;overflow:hidden}.viewer-frame iframe{display:block;width:100%;height:72vh;min-height:400px;border:0}.viewer-hint{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:15px;font-size:13px;color:#8b9a90}.viewer-error{padding:70px 10px;text-align:center;color:#7d9e8b;display:flex;flex-direction:column;align-items:center;gap:17px}.viewer-error h1{font-size:22px;color:#486c58}.viewer-error p{font-size:15px}.viewer-footer{text-align:center;padding:22px;color:#a3b0a7;font-size:13px}
@media(min-width:1600px){.welcome h2{font-size:27px}.welcome{min-height:250px}.hero-art{margin-left:70px}.stat{padding:23px}.empty{min-height:290px}main{padding-top:38px}}
@media(max-width:1180px){.sidebar{width:210px;padding-inline:15px}.main-shell{margin-right:210px}main{padding-inline:24px}.topbar{padding-inline:24px}.stat{padding:14px;gap:10px}.stat div>span{font-size:12px}.stat-icon{width:36px;height:36px}.hero-art{min-width:225px;width:240px;margin-left:0}.welcome{padding:24px}.welcome h2{font-size:21px}.table-scroll table{min-width:770px}.filters select{max-width:145px}.settings-grid{grid-template-columns:1fr}}
@media(max-width:900px){.sidebar{width:185px;padding-inline:12px}.main-shell{margin-right:185px}.brand{font-size:25px}.brand small{font-size:12px}.brand-icon{width:40px;height:40px}.stats{grid-template-columns:repeat(2,1fr)}.hero-art{min-width:150px;width:160px;transform:scale(.8);transform-origin:left center;margin-left:-10px}.welcome h2{font-size:19px}.welcome p{font-size:13px}.welcome{padding:20px;gap:0}.hero-art .art-orbit{left:-5px}.hero-art .art-file{left:41px}.hero-art .art-link{left:8px}.hero-art .art-msg{left:9px}.top-date{font-size:12px}.top-date .date-divider{display:none}.top-date{max-width:180px;flex-wrap:wrap;gap:3px}.page-heading h1{font-size:22px}.side-card{padding:12px 10px}.nav-item{padding:12px;font-size:14px}.filters{flex-wrap:wrap}.search{flex-basis:100%}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.sidebar{transform:translateX(100%);transition:transform .2s;width:236px;box-shadow:-15px 0 45px #1c36351a}.sidebar.mobile-open{transform:translateX(0)}.main-shell{margin-right:0}.mobile-menu{display:flex}.topbar{height:65px;padding:0 16px}.top-date{font-size:12px;max-width:155px}.crumb{font-size:13px;gap:6px}.crumb>span{display:none}main{padding:25px 16px 15px}.page-heading{align-items:flex-start;margin-bottom:22px}.page-heading h1{font-size:23px}.page-heading p{font-size:13px;line-height:1.9;max-width:220px}.page-heading>.primary{font-size:13px;padding:9px 11px;min-height:38px;margin-top:15px;gap:4px}.eyebrow{font-size:12px}.welcome{min-height:203px;padding:21px 20px}.welcome h2{font-size:19px}.welcome-content{max-width:78%}.welcome .tag{font-size:12px}.hero-art{position:absolute;left:-45px;bottom:8px;opacity:.45;transform:scale(.65);z-index:0}.welcome p{font-size:13px}.stats{gap:11px;margin:16px 0}.stat{padding:15px;gap:12px}.stat strong{font-size:21px}.stat div>span{font-size:12px}.stat-icon{width:37px;height:37px}.panel-heading{padding:19px 16px 16px}.panel-heading p{font-size:12px}.panel-heading h2{font-size:15px}.panel-heading .compact{font-size:12px;gap:5px;padding-inline:9px}.filters{padding:0 16px 16px;gap:8px}.filters select{flex:1;max-width:initial;font-size:13px}.filters .text-button{font-size:12px}.search{height:39px}.empty{min-height:260px;padding:25px 18px}.empty p{font-size:13px}.empty h3{font-size:15px}.table-footer{font-size:12px;padding:12px 16px;gap:9px}.table-footer span:last-child{max-width:185px}.setup-note{padding:13px 12px;gap:9px}.setup-note p{font-size:12px;line-height:2}.setup-note strong{font-size:13px}.setup-note>.text-button{font-size:12px}.note-icon{display:none}.footer{font-size:12px;gap:10px}.settings-card{padding:20px}.settings-grid{gap:16px}.modal-backdrop{padding:12px}.modal{max-height:calc(100dvh - 24px);padding:19px;border-radius:12px}.modal-header h2{font-size:15px}.modal-header p{font-size:12px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.upload-row{padding:12px}.upload-row-title{gap:6px}.upload-row-title strong{font-size:13px}.upload-row-title small{font-size:12px}.csv-tools{gap:8px}.csv-tools>div{flex-basis:100%}.csv-tools>.text-button{margin-right:0;margin-left:auto}.modal-footer{flex-wrap:wrap}.modal-footer>span{flex-basis:100%}.modal-footer>.primary{flex:1}.detail-actions .primary,.detail-actions .secondary{flex:1}.toast{bottom:14px;left:16px;padding:12px;font-size:13px}.guide{padding:23px}.guide>h2{font-size:16px}.guide-step{gap:12px}.guide-step p{font-size:13px}.viewer-info{flex-wrap:wrap}.viewer-info h1{font-size:18px}.viewer-info .primary{width:100%;margin-top:5px}.viewer-main{padding-inline:16px}.viewer-hint{flex-direction:column;gap:10px;text-align:center}.viewer-frame iframe{min-height:350px;height:65vh}.viewer-top{padding:14px 18px}.viewer-top>span:last-child{font-size:13px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
.login-screen{min-height:100vh;max-width:none;display:grid;place-items:center;padding:35px 18px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 20% 10%,#e2f0e8 0%,transparent 55%),#f5f8f6}.login-decoration{position:absolute;width:520px;height:520px;left:-220px;bottom:-220px;border:1px solid #d9e8df;border-radius:50%;box-shadow:0 0 0 65px #eaf3ed88,0 0 0 130px #eef5f0aa;pointer-events:none}.login-card{position:relative;width:410px;max-width:100%;padding:35px;background:#fff;border:1px solid #e1eae4;border-radius:19px;box-shadow:0 20px 65px #234d3610;text-align:center}.login-brand{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:33px}.login-brand strong{font-size:29px}.login-symbol{display:inline-flex;background:#eef7f2;color:#79a591;padding:16px;border-radius:16px;margin-bottom:17px}.login-card h1{font-size:21px;margin-bottom:12px}.login-card>p{font-size:14px;line-height:2.2;color:#87978c;margin-bottom:24px}.login-submit{width:100%;margin-top:8px;min-height:45px}.login-safe{display:flex;align-items:center;justify-content:center;gap:6px;font-size:12px;color:#93aa9b;margin:18px 0 25px}.login-footnote{padding-top:20px;border-top:1px solid #edf2ef;font-size:13px;line-height:2.2;color:#94a398}.login-card .field{text-align:right;margin-bottom:15px}.login-card .alert{text-align:right}.login-card .login-mode{font-size:12px;color:#97a69b;margin-bottom:16px}
/* All list headings and values are centered, including row numbers. */
table th,table td{text-align:center;vertical-align:middle}table .file-name{justify-content:center;text-align:center;margin:auto}table .file-name>span:last-child{text-align:center}table .cell-sub{text-align:center}table .row-actions{justify-content:center}table th.row-number,table td.row-number{width:54px;padding:14px 10px;text-align:center;color:#81918a}table .check-cell{width:38px}.patients-table{min-width:1050px}.patients-table .file-name{max-width:210px}.patients-table td,.patients-table th{padding-inline:12px}.patients-table .row-actions{min-width:125px}

.sidebar{overflow-y:auto}

/* One locally hosted typeface for the entire interface. */
html,body{font-family:Vazir,Tahoma,sans-serif}button,input,textarea,select{font-family:inherit}.profile{margin-top:auto;padding-top:20px}.simple-dashboard .stats{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:0}.dashboard-links{display:flex;align-items:center;gap:12px;margin-top:20px}.login-screen{direction:rtl;background:#f6f8fa;min-height:100dvh;padding:24px 16px}.login-card{direction:rtl;text-align:right;width:410px;padding:32px;border:1px solid #e0e6e4;border-radius:14px;box-shadow:0 10px 40px #1d3c2c0b}.login-brand{justify-content:flex-start;margin-bottom:26px}.login-brand strong{font-size:28px}.login-card h1{text-align:right;font-size:21px;margin-bottom:8px}.login-card>p{text-align:right;color:#7b8981;line-height:2;margin-bottom:26px}.login-card form,.login-card .field{direction:rtl;text-align:right}.login-card .field{font-size:14px;gap:9px;margin-bottom:18px}.login-card .field input{direction:rtl;text-align:right;height:46px;font-size:15px;border:1px solid #dce3df;border-radius:8px;padding:11px 13px}.login-card .field input::placeholder{color:#a4ada7}.login-card .login-submit{min-height:46px;font-size:15px;margin-top:6px}.login-safe{justify-content:flex-start;text-align:right;margin:17px 0 23px}.login-footnote{text-align:right;font-size:13px;line-height:2.1}.login-card .alert{direction:rtl;text-align:right}@media(max-width:700px){.simple-dashboard .stats{grid-template-columns:1fr}.dashboard-links{flex-wrap:wrap}.login-card{padding:26px 22px}}

/* Patient registration and reviewed Excel import. */
.login-card h1{margin-bottom:24px}.patient-register-actions{display:flex;gap:10px;flex-wrap:wrap}.bulk-modal{width:1150px;max-width:100%}.bulk-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:20px 0}.bulk-steps>section{border:1px solid var(--border);border-radius:12px;padding:18px;background:#fafcfc;min-width:0}.bulk-steps h3{font-size:16px;margin:12px 0 8px}.bulk-steps p{font-size:14px;color:var(--muted);line-height:1.9;min-height:43px;overflow-wrap:anywhere;margin-bottom:14px}.step-number{display:grid;place-items:center;background:#e3f1ee;color:var(--teal);width:29px;height:29px;border-radius:50%;font-weight:bold}.bulk-check{display:flex;gap:14px;align-items:center;margin:22px 0}.bulk-check>span{font-size:14px;line-height:1.9;color:#61716b}.bulk-review{max-height:360px;margin-top:14px;border:1px solid var(--border);border-radius:9px}.bulk-review table{min-width:1050px}.bulk-review th{position:sticky;top:0;background:#f0f6f4;z-index:1}.bulk-review td{white-space:normal;overflow-wrap:anywhere;min-width:105px}.bulk-review td:last-child{min-width:220px;font-size:14px;line-height:1.9}.review-error{color:#a32c31;background:#fff5f5}.review-ok{color:#256d50}.bulk-files{border:1px solid var(--border);border-radius:8px;padding:12px;margin-top:12px}.bulk-files summary{cursor:pointer}.bulk-files>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:5px 10px;border-bottom:1px solid var(--border)}.bulk-files[open]{max-height:200px;overflow:auto}.bulk-modal .modal-footer{margin-top:24px}.bulk-modal .alert{overflow-wrap:anywhere}.bulk-modal h2:focus{outline:none}@media(max-width:700px){.patient-register-actions{margin-top:15px;gap:7px}.patient-register-actions button{padding:9px;font-size:14px}.page-heading:has(.patient-register-actions){flex-wrap:wrap}.bulk-steps{grid-template-columns:1fr}.bulk-steps>section{padding:14px}.bulk-steps p{min-height:0}.bulk-check{align-items:flex-start;flex-direction:column}.bulk-check>span{font-size:14px}.bulk-modal .modal-footer .primary{font-size:14px}}

/* Shared readable typography across desktop and mobile. */
:root{--text-body:16px;--text-small:14px;--text-label:15px;--text-title:27px}body{font-size:var(--text-body);line-height:1.85}.nav-item{font-size:15px;padding:13px 14px;min-height:48px}.nav-item b{font-size:13px}.brand small{font-size:12px}.nav-label{font-size:13px}.profile strong{font-size:14px}.profile small{font-size:12px}.crumb,.top-date{font-size:13px}.topbar{gap:18px}.top-date{max-width:none;gap:9px}.page-heading h1{font-size:var(--text-title)}.page-heading p{font-size:15px;line-height:1.9}.eyebrow{font-size:13px}.primary,.secondary,.text-button{font-size:15px;line-height:1.7}.primary,.secondary{min-height:44px;padding:10px 16px}.compact{font-size:14px;min-height:40px}.field{font-size:15px;line-height:1.8}.field input,.field textarea,.field select,input,textarea,select{font-size:16px}.field input{min-height:46px}.filters select,.search input{font-size:15px}.search{min-height:46px}.panel-heading h2,.settings-card h2{font-size:18px}.panel-heading p,.panel-footnote,.settings-card>p{font-size:14px;line-height:2}.modal{width:650px;line-height:1.9}.upload-modal{width:900px}.bulk-modal{width:1180px}.modal-header h2{font-size:21px}.modal-header p{font-size:14px;line-height:1.9}.form-grid{gap:16px}.modal-footer{gap:12px}.modal-footer>span{font-size:14px}.dropzone h3{font-size:18px}.dropzone p,.upload-row-title small{font-size:14px}.upload-row-title strong{font-size:15px}.bulk-steps h3{font-size:17px}.bulk-steps p,.bulk-check>span{font-size:14px}.bulk-review td:last-child{font-size:14px}.table-scroll table{font-size:15px}.table-scroll th{font-size:14px;white-space:nowrap;padding:17px 14px}.table-scroll td{font-size:15px;padding:17px 14px}.patients-table{min-width:1260px}.file-name strong{font-size:15px}.file-name small,.cell-sub{font-size:13px}.pdf-icon small{font-size:11px}.badge,.sms-state{font-size:13px}.table-footer,.footer,.viewer-footer{font-size:13px}.soft-note p,.message-preview p,.message-cell,.details-grid dd,.detail-description{font-size:15px;line-height:2}.details-grid dt,.variables,.connection,.toast{font-size:14px}.icon-button{min-width:34px;min-height:34px}.empty h3{font-size:18px}.empty p{font-size:15px;line-height:1.9}.login-card{width:440px}.login-card h1{font-size:24px}.login-card .field{font-size:15px}.login-card .field input{font-size:16px;min-height:48px}.login-card .login-submit{font-size:16px;min-height:48px}.viewer-info h1{font-size:24px}.viewer-info p,.viewer-hint p,.viewer-top>span:last-child{font-size:14px}.viewer-description{font-size:16px;line-height:2}.viewer-error p{font-size:16px}
/* Quiet, task-focused dashboard: four totals and two small sections. */
.dashboard-overview .stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0 0 24px}.dashboard-overview .stat{padding:22px 20px;border-radius:14px;align-items:flex-start;min-height:132px;box-shadow:0 3px 12px #223b3104}.dashboard-overview .stat div>span{font-size:14px;color:#68776f;line-height:1.8}.dashboard-overview .stat strong{font-size:31px;line-height:1.4;margin-top:9px}.dashboard-overview .stat-icon{width:43px;height:43px;border-radius:12px;flex-shrink:0}.dashboard-body{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:22px;align-items:start}.dashboard-body .panel-heading{padding:22px 24px 18px}.dashboard-body .section-icon{margin:0;width:38px;height:38px;border-radius:11px}.recent-list{padding:0 24px 12px}.recent-item{display:flex;gap:13px;align-items:center;padding:17px 0;border-top:1px solid #edf1ef}.recent-icon{display:grid;place-items:center;flex-shrink:0;width:40px;height:44px;border-radius:10px;background:#f0f6f4;color:var(--teal)}.recent-person{display:grid;gap:3px;min-width:0;flex:1}.recent-person strong{font-size:15px;font-weight:500;overflow-wrap:anywhere}.recent-person>span{font-size:13px;color:#7a8981;line-height:1.8}.recent-item>.badge{white-space:nowrap}.delivery-content{padding:0 24px 22px}.delivery-content .connection{padding:15px 0;gap:10px;border-bottom:1px solid var(--border);margin:0}.delivery-totals{display:grid;gap:15px;padding:22px 0 14px}.delivery-totals>span{display:flex;justify-content:space-between;gap:18px;font-size:14px;color:#65756c}.delivery-totals strong{color:#30483d;font-size:16px}.dashboard-note{font-size:13px;line-height:2;color:#7a8981;margin-top:12px;padding-top:16px;border-top:1px solid var(--border)}.dashboard-empty{padding:30px 24px;display:grid;place-items:center;gap:12px;min-height:230px;text-align:center;color:#718279}.dashboard-empty strong{font-size:16px;color:#42594d}.dashboard-empty p{font-size:14px;line-height:1.9}
@media(max-width:1200px){.dashboard-overview .stats{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-body{grid-template-columns:1fr}.top-date{flex-wrap:wrap;justify-content:flex-end}.main-shell main{padding-inline:24px}}@media(max-width:700px){.main-shell main{padding:25px 16px}.page-heading{gap:16px}.page-heading p{font-size:14px;max-width:none}.page-heading h1{font-size:25px}.topbar{min-height:72px;height:auto;padding-block:10px}.top-date{font-size:12px;max-width:185px}.top-date .date-divider{display:none}.crumb{font-size:13px}.patient-register-actions{margin-top:0;gap:10px}.patient-register-actions button{font-size:15px;padding:10px 14px}.form-grid{grid-template-columns:1fr}.dashboard-overview .stats{gap:12px}.dashboard-overview .stat{padding:17px 14px;min-height:126px;gap:10px;flex-direction:column}.dashboard-overview .stat div>span{font-size:13px}.dashboard-overview .stat strong{font-size:28px;margin-top:4px}.dashboard-body{gap:16px}.dashboard-body .panel-heading{padding:20px 18px 16px}.recent-list{padding-inline:18px}.delivery-content{padding-inline:18px}.recent-item{gap:10px}.recent-person strong{font-size:14px}.recent-person>span{font-size:13px}.recent-item>.badge{font-size:12px}.recent-icon{width:34px}.modal{padding:20px 16px}.modal-header h2{font-size:19px}.modal-header p{font-size:14px}.modal-footer .primary{font-size:15px}.modal-footer>span{font-size:14px}.bulk-steps h3{font-size:17px}.bulk-steps p,.bulk-check>span{font-size:14px}.panel-heading h2{font-size:17px}.panel-heading .compact{font-size:13px;padding-inline:10px}.filters .text-button{font-size:14px}.filters select{font-size:14px;min-height:44px}.settings-card{padding:22px 18px}.footer{font-size:12px;line-height:1.9;flex-wrap:wrap}.viewer-info h1{font-size:22px}.viewer-top>span:last-child{font-size:14px}.viewer-hint p{font-size:14px}.login-card{padding:28px 24px}}

/* Bordered administrative tables, aligned with the panel content. */
.structured-table{margin:0 24px;border:1px solid #d6e2dd;border-radius:12px;max-height:620px;overflow:auto;scrollbar-gutter:stable}.structured-table table{border-collapse:separate;border-spacing:0;width:100%;margin:0}.structured-table thead th{position:sticky;top:0;z-index:3;background:#22564d;color:white;font-size:14px;font-weight:500;line-height:1.8;padding:17px 14px;border-left:1px solid #ffffff26;border-bottom:1px solid #1a463f;text-align:center}.structured-table tbody td{border-left:1px solid #e4ece8;border-bottom:1px solid #dfe8e3;padding:16px 14px;background:white;vertical-align:middle;text-align:center;line-height:1.8}.structured-table tbody tr:nth-child(even) td{background:#f5f8f7}.structured-table tbody tr.data-row:hover > td{background:#eaf5f1}.structured-table tbody tr:last-child td{border-bottom:0}.structured-table th:last-child,.structured-table td:last-child{border-left:0}.structured-table table .row-number{position:sticky;right:0;min-width:66px;width:66px;padding:16px 12px;text-align:center;border-left:1px solid #d6e2dd}.structured-table thead .row-number{z-index:4;background:#194b42;color:#fff;border-left-color:#ffffff35}.structured-table tbody .row-number{z-index:1;color:#28584b;font-weight:500;background:#eef4f1;font-variant-numeric:tabular-nums}.structured-table tbody tr:nth-child(even) .row-number{background:#e6efea}.structured-table tbody tr.data-row:hover > .row-number{background:#dbeee4}.structured-table .check-cell{min-width:48px;width:48px}.structured-table input[type=checkbox]{width:17px;height:17px;accent-color:#0b8179;cursor:pointer}.sms-table{min-width:1140px}.structured-table .message-cell{min-width:320px;max-width:420px;white-space:pre-wrap;overflow-wrap:anywhere}.structured-table .file-name strong{max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-pagination{display:flex;align-items:center;flex-wrap:wrap;gap:16px;padding:22px 24px;color:#6b7c72;border-top:0;font-size:14px}.table-pagination p{margin:0}.table-pagination b{font-weight:500;color:#2f4c3d}.page-size{display:flex;align-items:center;gap:9px;font-size:14px;margin-inline-start:auto;white-space:nowrap}.page-size select{border:1px solid #d9e4dd;border-radius:8px;background:white;padding:6px 10px;min-height:39px;width:74px;font-size:14px}.pager{display:flex;align-items:center;gap:6px;direction:rtl}.page-number-wrap{display:flex;align-items:center;gap:6px}.page-control{display:grid;place-items:center;width:37px;height:39px;min-height:39px;padding:0;border:1px solid #dce6df;border-radius:8px;background:#fff;color:#466354;font-size:14px}.page-control:hover:not(:disabled){background:#edf6f1;border-color:#a7cabb}.page-control.current{background:#0b8179;border-color:#0b8179;color:white}.page-control:disabled{opacity:.35}.page-gap{min-width:18px;text-align:center;color:#86998d}
/* Matched dashboard cards: content scrolls within the same fixed frame. */
.dashboard-body{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}.dashboard-body>.file-panel{height:470px;min-height:0;display:flex;flex-direction:column;margin-bottom:0;overflow:hidden}.dashboard-body .panel-heading{flex-shrink:0;min-height:98px;align-items:flex-start}.dashboard-body .recent-list{flex:1;min-height:0;overflow:auto}.dashboard-body .delivery-content{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column}.dashboard-body .dashboard-empty{flex:1;min-height:0}.recent-person strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.recent-person>span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-note{margin-top:auto}.delivery-totals{padding-bottom:24px}.dashboard-body .connection{flex-shrink:0}
/* The recipient first sees file information; the PDF opens on demand. */
.recipient-card{max-width:860px;margin:14px auto 28px;padding:32px;background:#fff;border:1px solid #dce6e0;border-radius:18px;box-shadow:0 8px 32px #234d3610}.recipient-heading{display:flex;align-items:center;gap:18px;padding-bottom:24px;border-bottom:1px solid #e6ece8}.recipient-heading h1{font-size:25px;line-height:1.8;margin-top:5px;overflow-wrap:anywhere}.recipient-file-icon{display:grid;place-items:center;width:66px;height:72px;flex-shrink:0;border-radius:14px;background:#e9f4ef;color:#0b8179}.recipient-info{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;margin:12px 0 26px}.recipient-info>div{padding:19px 0;border-bottom:1px solid #edf1ee;min-width:0}.recipient-info dt{display:flex;align-items:center;gap:7px;font-size:14px;color:#819087;margin-bottom:8px}.recipient-info dd{margin:0;font-size:16px;color:#304a3c;overflow-wrap:anywhere;line-height:1.9}.recipient-description{font-size:16px;line-height:2;white-space:pre-wrap;overflow-wrap:anywhere;margin-bottom:24px}.recipient-actions{display:flex;gap:13px}.recipient-actions>a,.recipient-actions>button{flex:1;min-height:48px;justify-content:center;font-size:16px}.recipient-note{color:#819087;font-size:14px;line-height:2;margin-top:18px}.recipient-preview{margin-top:26px}.recipient-preview .viewer-frame{background:#fff}.recipient-preview iframe{width:100%;height:76vh;border:0}
@media(max-width:1200px){.dashboard-body{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-body .panel-heading{padding:20px 18px 16px}.delivery-content,.recent-list{padding-inline:18px}.recent-item{gap:9px}.recent-icon{display:none}}@media(max-width:900px){.dashboard-body{grid-template-columns:1fr}.recent-icon{display:grid}}@media(max-width:700px){.structured-table{margin-inline:16px;border-radius:9px}.table-pagination{padding:19px 16px;gap:13px}.table-pagination>p{flex-basis:100%}.page-size{margin-inline-start:0;margin-inline-end:auto;font-size:13px;gap:6px}.pager{gap:4px}.page-control{width:33px;height:37px;min-height:37px}.page-number-wrap{gap:4px}.page-gap{min-width:12px}.dashboard-body>.file-panel{height:440px}.recipient-card{padding:24px 20px;margin-top:0;border-radius:13px}.recipient-heading{gap:13px}.recipient-heading h1{font-size:22px}.recipient-file-icon{width:52px;height:62px}.recipient-info{grid-template-columns:1fr;gap:0}.recipient-info>div{padding:15px 0}.recipient-actions{flex-direction:column;gap:11px}.recipient-note{font-size:14px}.recipient-heading .eyebrow{font-size:13px}.recipient-preview iframe{height:68vh}}

.pager{flex-wrap:wrap;max-width:100%}@media(max-width:700px){.pager{flex-basis:100%;justify-content:center}}

/* Softer table surfaces and balanced edges. */
.structured-table{margin-inline:24px;border:1px solid #e0e9e4;border-radius:14px;scrollbar-gutter:stable both-edges;background:#fff;box-shadow:0 2px 8px #243e3103;isolation:isolate}.structured-table thead th{background:#edf5f1;color:#527266;border-bottom:1px solid #dce8e1;border-left:1px solid #e1ebe5;font-weight:500;padding-block:16px}.structured-table thead .row-number{background:#edf5f1;color:#527266;border-left-color:#e1ebe5}.structured-table tbody td{background:#fff;border-left-color:#edf2ef;border-bottom-color:#e9f0ec;transition:background-color .15s ease}.structured-table tbody tr:nth-child(even) td{background:#fafcfb}.structured-table tbody tr.data-row:hover > td{background:#f0f7f3}.structured-table tbody .row-number{background:#f7faf8;color:#698275;border-left-color:#e8eeea;font-weight:400}.structured-table tbody tr:nth-child(even) .row-number{background:#f3f8f5}.structured-table tbody tr.data-row:hover > .row-number{background:#e9f3ed}.structured-table .check-cell{position:sticky;right:0;min-width:52px;width:52px;max-width:52px;padding:16px 12px;border-left:1px solid #e8eeea;text-align:center}.structured-table thead .check-cell{z-index:5;background:#edf5f1;border-left-color:#e1ebe5}.structured-table tbody .check-cell{z-index:2}.structured-table .patients-table .row-number{right:52px}.structured-table .sms-table .row-number{right:0}.structured-table th:first-child,.structured-table td:first-child,.structured-table th:last-child,.structured-table td:last-child{padding-inline:16px}.structured-table .check-cell:first-child{padding-inline:12px}.structured-table th:last-child,.structured-table td:last-child{border-left:0}.structured-table input[type=checkbox]{accent-color:#659c88;border-radius:4px}.structured-table .row-actions{gap:5px}.structured-table .row-actions .icon-button{border-radius:9px;color:#82978c}.structured-table .row-actions .icon-button:hover{background:#e5f1e9;color:#3c7d62}
/* Physical left-to-right order: logout, then the Persian date. */
.top-date{direction:ltr;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;flex-wrap:nowrap;gap:16px;max-width:none;flex-shrink:0}.header-logout{direction:rtl;order:0;white-space:nowrap;border-radius:9px}.header-date{direction:rtl;order:1;white-space:nowrap;font-size:13px;color:#7d8d83;padding-left:16px;border-left:1px solid #e8eeeb;line-height:1.9}@media(max-width:700px){.structured-table{margin-inline:16px;border-radius:12px}.topbar{flex-wrap:wrap;gap:12px}.top-date{max-width:none;margin-right:auto;margin-left:0;gap:11px}.header-date{font-size:12px;padding-left:11px}.header-logout{font-size:13px;min-height:39px;padding:7px 11px}.topbar .crumb{flex-shrink:0}}@media(prefers-reduced-motion:reduce){.structured-table tbody td{transition:none}}

.pdf-preview-backdrop{position:fixed;inset:0;z-index:200;background:#24382f99;display:flex;align-items:center;justify-content:center;padding:22px;backdrop-filter:blur(3px)}.pdf-preview-dialog{display:flex;flex-direction:column;overflow:hidden;background:#fff;border:1px solid #dce6e0;box-shadow:0 20px 80px #102c3b40;border-radius:16px;width:min(1200px,100%);height:92vh;height:92dvh;max-height:100%;direction:rtl}.pdf-preview-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 24px;border-bottom:1px solid #e4ece7;flex-shrink:0}.pdf-preview-header h2{font-size:19px;color:#345b49}.pdf-preview-header p{font-size:14px;color:#83938a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:65vw;margin-top:4px}.pdf-preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-shrink:0;padding:10px 22px;background:#f6faf7;border-bottom:1px solid #e5ece7}.pdf-page-controls,.pdf-zoom-controls{display:flex;align-items:center;gap:12px;font-size:14px;color:#557464}.pdf-preview-toolbar .icon-button{background:#fff;border:1px solid #dfe8e1;border-radius:8px;color:#5f7f6c}.pdf-canvas-pane{flex:1;min-height:0;overflow:auto;background:#e8edea;padding:20px;direction:ltr;text-align:center;position:relative}.pdf-canvas-pane canvas{display:block;margin:0 auto;background:white;box-shadow:0 3px 18px #253e3b20;max-width:none}.pdf-canvas-pane canvas[hidden]{display:none}.pdf-canvas-pane .alert{direction:rtl;max-width:650px;margin:25px auto;text-align:right}.pdf-loading{position:sticky;top:0;display:inline-flex;align-items:center;gap:9px;direction:rtl;color:#315d47;background:#ffffffeb;border:1px solid #d6e3d9;border-radius:10px;padding:10px 17px;box-shadow:0 2px 10px #244b3111;margin:0 auto 14px;font-size:14px;z-index:1}.expiry-help{font-size:13px;line-height:2;color:#809087;margin-top:16px}@media(max-width:700px){.pdf-preview-backdrop{padding:9px}.pdf-preview-dialog{height:96vh;height:96dvh;border-radius:12px}.pdf-preview-header{padding:14px}.pdf-preview-header h2{font-size:17px}.pdf-preview-header p{font-size:13px;max-width:52vw}.pdf-preview-toolbar{padding:9px 12px;gap:8px;flex-wrap:wrap}.pdf-page-controls,.pdf-zoom-controls{gap:7px;font-size:13px}.pdf-canvas-pane{padding:12px}.pdf-loading{font-size:13px}.expiry-help{font-size:13px}}

/* A fixed rounded frame around the scrolling table, on all four sides. */
.table-frame{margin:0 24px;border:1px solid #dce8e0;border-radius:16px;padding:6px;background:#f7faf8;overflow:hidden;box-shadow:0 3px 12px #2b4e3b05}.table-frame>.structured-table{margin:0!important;border:0!important;border-radius:11px;max-height:620px;background:#fff;scrollbar-gutter:stable both-edges;box-shadow:inset 0 0 0 1px #edf3ef}.table-frame .structured-table table{margin:0}.table-frame .structured-table thead th{border-top:0}.table-frame .structured-table tbody tr:last-child td{border-bottom:0}.table-frame .structured-table th:last-child,.table-frame .structured-table td:last-child{border-left:0}@media(max-width:700px){.table-frame{margin-inline:16px;border-radius:14px;padding:5px}.table-frame>.structured-table{border-radius:9px}}

/* Clean header edges: the rounded outer frame is the only perimeter line. */
.table-frame .structured-table{scrollbar-gutter:auto;background:#fff;box-shadow:none}.table-frame .structured-table thead th:first-child{border-right:0;border-inline-start:0}.table-frame .structured-table thead th:last-child{border-left:0;border-inline-end:0}.table-frame .structured-table thead .check-cell{border-right:0}.table-frame .structured-table thead .row-number{border-right:0}.table-frame .structured-table thead th{border-top:0}.pdf-page-image{display:block;max-width:none;height:auto;margin:0 auto;background:#fff;box-shadow:0 3px 18px #253e3b20;user-select:none}

.table-frame .structured-table thead th{border-inline:0!important}

.server-filters{flex-wrap:wrap}.server-filters .search{min-width:260px;flex:2}.server-filters select{max-width:190px;flex:1;min-width:140px}.date-filter-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:0 24px 22px;color:#72877a;font-size:14px}.date-filter-row>label{display:flex;align-items:center;gap:8px}.date-filter-row input{width:132px;border:1px solid #e0e9e3;border-radius:8px;padding:8px 10px;font-size:14px;min-height:40px;text-align:center;background:#fff}.date-filter-row>span{font-size:13px}.date-filter-row .export-results{margin-inline-start:auto}.filter-error{margin:0 24px 16px;color:#b0393d;font-size:14px}.list-summary{font-size:14px;color:#7c8d81;margin:-5px 24px 20px}.list-loading{padding:24px;text-align:center;color:#7e9184;font-size:14px}.history-scope{display:flex;align-items:center;justify-content:space-between;gap:18px;background:#eff7f2;border:1px solid #dfebe3;border-radius:9px;padding:12px 16px;margin:0 24px 20px;font-size:14px;color:#5d7e68}.sms-table{min-width:1540px}@media(max-width:700px){.date-filter-row{padding-inline:16px;gap:11px}.date-filter-row>span{flex-basis:100%}.date-filter-row input{width:120px}.date-filter-row .export-results{margin-inline-start:0}.server-filters .search{min-width:0;flex-basis:100%}.server-filters select{min-width:120px;max-width:none}.history-scope{margin-inline:16px;flex-wrap:wrap}.list-summary{margin-inline:16px}}

.demo-banner{padding:14px 18px;background:#fff8e9;border:1px solid #eee0be;border-radius:10px;color:#8e713c;font-size:14px;line-height:1.9;margin-bottom:22px}

/* Keep SMS loading/empty states inside the table; pagination follows the full body. */
.messages-panel>.table-frame{position:relative;isolation:isolate;flex-shrink:0}.messages-panel>.table-pagination{position:relative;clear:both;isolation:isolate;background:#fff;border-top:1px solid #edf2ef;margin-top:18px}.messages-panel .table-status-cell{height:200px;padding:24px!important;text-align:center!important;white-space:normal}.messages-panel .table-status-cell .empty{padding:20px;min-height:0}.messages-panel .table-status-cell .list-loading{display:flex;align-items:center;justify-content:center;gap:12px}.messages-panel .table-status-cell .empty p{margin-block:12px}

/* Patient report workspace. */
.reports-view{display:grid;gap:22px;min-width:0}.report-summary{display:flex;gap:16px;flex-wrap:wrap}.report-summary>span{display:flex;align-items:center;gap:16px;padding:14px 18px;background:#fff;border:1px solid var(--border);border-radius:12px;color:#728478;font-size:14px;flex:1;min-width:180px}.report-summary b{color:var(--teal);font-size:22px;margin-inline-start:auto}.report-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.report-card{display:flex;flex-direction:column;padding:24px;gap:15px}.report-card h2{font-size:18px}.report-card p{font-size:15px;line-height:2;color:#7b8c80}.report-card .section-icon{margin:0}.report-card>.primary{margin-top:auto;width:100%;justify-content:center}.report-date-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.report-date-fields input{width:100%;min-width:0;text-align:center;font-size:14px}.report-new-count{color:var(--teal);font-size:19px;font-weight:500}.report-help{font-size:14px;line-height:2.1;color:#7d8c82}.report-notice{border:1px solid #d5e9dc;background:#edf7f0;border-radius:10px;padding:14px 18px;color:#3d7655;line-height:2;font-size:15px}.reports-table{min-width:850px}.structured-table .report-empty{height:130px;text-align:center;color:#7e8e83}.reports-view .table-pagination{position:relative;background:#fff;margin-top:14px}
@media(max-width:1150px){.report-options{grid-template-columns:1fr}.report-card{gap:12px}.report-card>.primary{width:auto;align-self:flex-start}.report-date-fields{max-width:460px}.report-summary>span{min-width:180px}}@media(max-width:600px){.report-date-fields{grid-template-columns:1fr}.report-card{padding:20px}.report-summary{gap:10px}.report-summary>span{min-width:100%}}

/* Reports and manual sending outcomes */
.report-options{grid-template-columns:repeat(3,minmax(0,1fr))}.delivery-modal{width:min(1100px,96vw);max-width:1100px;max-height:92vh;overflow:auto;padding:24px}.delivery-modal header,.delivery-modal footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.delivery-modal .table-frame{margin-top:16px}.delivery-modal table{width:100%;min-width:760px}.delivery-modal th,.delivery-modal td{text-align:center;padding:12px}.delivery-modal>input{width:100%;padding:12px}.delivery-controls{display:grid;grid-template-columns:1fr 2fr;gap:16px;margin:16px 0}.delivery-date{display:block;font-size:12px;color:var(--muted);margin-top:6px}.delivery-modal footer{flex-wrap:wrap}.delivery-modal>small{display:block;margin-top:12px}.reports-table{min-width:1250px}@media(max-width:1100px){.report-options{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.report-options,.delivery-controls{grid-template-columns:1fr}.delivery-modal{padding:16px}}
/* Delivery result dialog: shared teal palette, controls and table treatment. */
.modal.delivery-modal{padding:0;width:min(1120px,calc(100vw - 48px));max-height:calc(100dvh - 48px);display:flex;flex-direction:column;overflow:hidden;line-height:1.8}
.delivery-header{padding:22px 26px;border-bottom:1px solid var(--border);flex-shrink:0;background:#fff}.delivery-header-icon{width:48px;height:48px;border-radius:14px;background:#e9f5f2;color:var(--teal);display:grid;place-items:center;flex-shrink:0}.delivery-header>div{flex:1}.delivery-header h2{font-size:19px;font-weight:700;line-height:1.6}.delivery-header p{font-size:13px;color:var(--muted);margin-top:3px}.delivery-header p span{padding:0 9px}.delivery-close{background:#f5f8f8;border:1px solid var(--border);border-radius:10px;width:36px;height:36px}
.delivery-content{padding:22px 26px;overflow-y:auto;min-height:0}.delivery-intro{font-size:14px;line-height:2;color:#687887;margin-bottom:18px}.delivery-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:20px}.delivery-stat{display:flex;align-items:center;gap:9px;border:1px solid #e4ece9;background:#f8fbfa;border-radius:11px;padding:13px;color:#697d77}.delivery-stat span{font-size:13px;white-space:nowrap}.delivery-stat strong{font-size:20px;margin-inline-start:auto;color:var(--ink)}.delivery-stat.sent{color:var(--teal);background:#f0f8f5}.delivery-stat.failed{color:#b06761;background:#fff9f7;border-color:#f0e7e3}.delivery-stat.deleted{color:#89929c;background:#fafbfc;border-color:var(--border)}
.delivery-toolbar{display:flex;align-items:center;gap:16px;margin-bottom:14px}.delivery-search{flex:1;min-width:0;border:1px solid #dfe8e4;background:#fff;border-radius:10px;padding:0 13px;min-height:45px}.delivery-search input{min-width:0;width:100%;height:44px;border:0;background:transparent;outline:none;font-size:14px}.delivery-search:focus-within{border-color:#71b8a8;box-shadow:0 0 0 3px #0b81790c}.delivery-selected{color:var(--teal);font-size:13px;background:#edf7f3;padding:7px 11px;border-radius:8px;white-space:nowrap}.delivery-selection-bar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:10px 1px;color:var(--muted);font-size:12px}.delivery-selection-bar label{display:flex;align-items:center;gap:8px;color:#415c55;font-size:14px;cursor:pointer}.delivery-modal input[type=checkbox]{width:17px;height:17px;accent-color:var(--teal);cursor:pointer}.delivery-selection-bar .text-button{margin-inline-start:auto;font-size:12px}.delivery-modal .table-frame{margin-top:4px}.delivery-modal .table-pagination{padding:16px 0;margin:0}.delivery-modal th,.delivery-modal td{padding:12px 10px}.delivery-stamp{font-size:12px;color:var(--muted);white-space:nowrap}.delivery-badge{display:inline-flex;align-items:center;border-radius:7px;font-size:12px;padding:4px 9px;background:#f0f4f6;color:#71808a;white-space:nowrap}.delivery-badge.sent{background:#e9f5f0;color:#187966}.delivery-badge.failed{background:#fbefec;color:#ab6258}.delivery-badge.pending{background:#f4f5ee;color:#828456}
.delivery-form{background:#f8faf9;border:1px solid #e5ede9;border-radius:12px;padding:17px 18px;margin-top:8px}.delivery-form h3{font-size:15px;color:#34584d;margin:0 0 12px}.delivery-controls{grid-template-columns:minmax(180px,1fr) 2fr;margin:0;gap:16px;align-items:start}.delivery-modal .field{display:flex;flex-direction:column;gap:7px;color:#586d64;font-size:13px}.delivery-modal .field input,.delivery-modal .field select{width:100%;min-height:45px;border:1px solid #dce6e1;border-radius:9px;background:#fff;font:inherit;font-size:14px;color:var(--ink);padding:10px 12px;transition:border-color .15s,box-shadow .15s}.delivery-modal .field input:focus,.delivery-modal .field select:focus{outline:none;border-color:#67ac9b;box-shadow:0 0 0 3px #0b817910}.delivery-modal .field input::placeholder{color:#98a49e;font-size:13px}.delivery-select-wrap{position:relative}.delivery-select-wrap select{appearance:none;padding-inline-end:40px!important;cursor:pointer}.delivery-select-wrap>svg{position:absolute;left:13px;top:14px;color:#70877e;pointer-events:none}.delivery-form>p{font-size:12px;color:var(--muted);margin-top:12px}.delivery-footer{padding:17px 26px;border-top:1px solid var(--border);background:#fff;flex-shrink:0}.delivery-footer>span{font-size:13px;color:#536e63}.delivery-footer small{display:block;font-size:11px;color:var(--muted);margin-top:3px}.delivery-footer>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.delivery-footer .primary,.delivery-footer .secondary{min-height:43px;font-size:13px}
@media(max-width:850px){.delivery-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.delivery-footer>span{display:none}.delivery-footer>div{width:100%;justify-content:flex-end}.delivery-controls{grid-template-columns:1fr 2fr}}
@media(max-width:600px){.modal.delivery-modal{width:100%;max-height:calc(100dvh - 24px)}.delivery-header,.delivery-content,.delivery-footer{padding:16px}.delivery-header h2{font-size:17px}.delivery-header-icon{width:40px;height:40px}.delivery-toolbar{align-items:stretch;flex-direction:column;gap:8px}.delivery-selected{align-self:flex-start}.delivery-controls{grid-template-columns:1fr}.delivery-selection-bar{gap:7px}.delivery-footer>div{flex-direction:column}.delivery-footer button{width:100%}.delivery-stat{padding:10px;gap:6px}.delivery-stat strong{font-size:18px}.delivery-form{padding:14px}}
