@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Playfair+Display:ital,wght@0,600;0,700;1,600&display=swap');
:root{--green:#164a39;--deep:#10392d;--dark:#173c32;--bright:#2d795b;--mint:#e9f4ed;--lime:#a5bb74;--gold:#d7bb7b;--ink:#223630;--sub:#7a8982;--border:#e7ede8;--canvas:#f7f9f7;--white:#fff;--shadow:0 12px 38px rgba(19,55,40,.055)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--canvas);font-family:'DM Sans',system-ui,Arial,sans-serif;font-size:14px}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}h1{font-size:32px;letter-spacing:-1.05px;line-height:1.3}h2{font-size:24px;letter-spacing:-.6px}h3{font-size:17px;letter-spacing:-.25px;margin-bottom:4px}p{line-height:1.65}.muted{color:var(--sub)}.tiny{font-size:12px}.eyebrow{display:inline-block;color:#58806b;font-size:11px;font-weight:800;letter-spacing:1.6px;text-transform:uppercase;margin:0 0 11px}.serif{font-family:'Playfair Display',Georgia,serif;font-weight:600;font-style:italic;color:#35765c}.brand-symbol{width:55px;height:55px;display:grid;place-items:center;border-radius:17px;background:linear-gradient(135deg,#25684d,#103c2f);color:#e3d7a4;border:1px solid rgba(255,255,255,.18);font-family:Georgia,serif;font-size:25px;letter-spacing:-2px;font-weight:700;box-shadow:0 8px 18px #143f3124}.brand-symbol.small{width:43px;height:43px;border-radius:13px;font-size:19px}.brand-symbol.large{width:67px;height:67px;border-radius:19px;font-size:30px;margin:0 auto 20px}
.btn{border-radius:10px;padding:12px 18px;display:inline-flex;align-items:center;justify-content:center;gap:11px;border:1px solid transparent;font-weight:700;font-size:13px;transition:transform .2s,background .2s;white-space:nowrap}.btn:hover{transform:translateY(-1px)}.btn.primary{color:white;background:var(--green);box-shadow:0 5px 15px #164a3917}.btn.primary:hover{background:#206d50}.btn.outline,.btn.ghost{background:white;color:var(--green);border-color:#d8e6dc}.btn.ghost{color:#245a44;background:#f7faf7}.btn.small{padding:9px 15px;font-size:12px}.btn.full{width:100%}.btn.danger-outline{color:#a84646;border-color:#e7caca;background:white}.btn.hero-btn{color:#164737;background:#f1e7c5;margin-top:9px}.btn.hero-btn:hover{background:white}.required{color:#cf7067}.optional{font-size:11px;color:#acb5ae;font-weight:500}.alert{border-radius:11px;padding:12px 15px;line-height:1.5;font-weight:600;font-size:12px;margin:12px 0}.alert.error{background:#fff0ed;color:#a53d38;border:1px solid #f9d8d2}.alert.success{background:#e8f6ec;color:#266342;border:1px solid #d4ead9}.alert.info{background:#ebf3fa;color:#34607d;border:1px solid #d4e4ef}
form label,.form-stack>label,.form-grid>label,.login-form>label{display:flex;flex-direction:column;gap:8px;color:#3e5549;font-size:12px;font-weight:800}input:not([type=file]):not([type=range]),select,textarea{border:1px solid #dce6dd;background:#fff;border-radius:9px;outline:none;color:#30463a;min-height:43px;padding:11px 13px;width:100%;font-size:13px;transition:border .2s,box-shadow .2s}input:focus,select:focus,textarea:focus{border-color:#81b298!important;box-shadow:0 0 0 3px #eaf5ed}input:disabled{color:#9eaaa2;background:#f6f8f6}input::placeholder{color:#a7b2aa}label small{font-weight:400;color:#8b9b90;line-height:1.5}.form-stack{display:flex;flex-direction:column;gap:19px}.form-grid{display:grid;gap:17px}.form-section-label{color:#21563e;font-weight:800;padding:12px 0 5px;border-bottom:1px solid var(--border);font-size:13px}
/* Authentication & setup */
.auth-body{min-height:100vh;background:#f5f8f5;display:flex;align-items:center;justify-content:center;padding:32px;gap:8vw;position:relative;overflow-x:hidden}.auth-body:before{content:'';width:400px;height:400px;position:absolute;left:-190px;top:-220px;border-radius:50%;background:#e1eee4;filter:blur(30px)}.login-card,.setup-card{position:relative;background:white;border:1px solid #edf0ed;border-radius:23px;box-shadow:0 25px 70px #173c3015;padding:46px;width:min(100%,460px);flex-shrink:0;z-index:1}.setup-card{width:min(100%,520px);max-height:none;padding:34px 43px}.setup-card>.brand-symbol{margin-bottom:17px}.setup-card h1{font-size:25px}.login-brand{text-align:center;border-bottom:1px solid #edf0ed;padding-bottom:25px;margin-bottom:28px}.login-brand h1{font-size:25px;font-weight:800;letter-spacing:-1px;color:#184634;margin:0 0 5px}.login-brand .eyebrow{font-size:9px}.login-brand .muted{font-size:12px;margin:0}.login-intro h2{font-size:18px;margin-bottom:5px}.login-intro p{font-size:12px;margin-bottom:24px}.login-form{display:flex;flex-direction:column;gap:17px}.login-form>.btn{margin-top:7px;min-height:46px}.login-bottom{display:flex;justify-content:space-between;margin-top:32px;font-size:10px;color:#9ba9a0}.login-bottom span:first-child{color:#3c8062}.auth-decoration{max-width:450px;color:#244c3d;z-index:1}.auth-decoration .ornament{font-size:70px;color:#b8c69a;margin-bottom:22px}.auth-decoration h2{font-family:'Playfair Display',Georgia,serif;font-size:41px;line-height:1.2;letter-spacing:-1px}.auth-decoration h2 em{color:#6a9b7e}.auth-decoration p{font-size:15px;max-width:360px;color:#7c9684}.school-pills{display:flex;gap:10px;margin-top:25px}.school-pills span{border:1px solid #cbdccc;padding:9px 13px;border-radius:30px;font-size:10px;font-weight:800;letter-spacing:.5px}
/* Layout */
.layout{display:flex;min-height:100vh}.sidebar{width:254px;background:linear-gradient(170deg,#174a38 0%,#103c2f 74%,#0d352a 100%);color:white;flex:0 0 254px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;z-index:20}.side-top{display:flex;align-items:center;gap:12px;padding:27px 20px 33px;border-bottom:1px solid #ffffff12}.side-top>div:last-child b{display:block;font-size:14px;letter-spacing:.35px}.side-top small{display:block;font-size:8px;color:#9bc2a8;letter-spacing:1.15px;margin-top:5px}.side-section{font-size:10px;font-weight:800;letter-spacing:1.5px;color:#91b59e;margin:31px 23px 13px}.nav-list{display:flex;flex-direction:column;gap:6px;padding:0 11px}.nav-link{width:100%;color:#c5dccd;text-align:left;background:transparent;border:0;border-radius:10px;display:flex;align-items:center;gap:13px;padding:13px 12px;font-size:13px;font-weight:650}.nav-link:hover{background:#ffffff12;color:white}.nav-link.active{background:#e5eddf;color:#164b37;box-shadow:0 4px 10px #08271a20}.nav-icon{width:22px;font-size:19px;text-align:center;display:inline-block;font-weight:600}.sidebar-bottom{margin-top:auto;padding:17px}.security-indicator{border-radius:14px;background:#ffffff10;border:1px solid #ffffff16;display:flex;gap:10px;align-items:center;padding:15px 13px}.security-indicator>span{font-size:22px;color:#d5d0a5}.security-indicator b{display:block;font-size:12px}.security-indicator small{font-size:9px;color:#a2bdab}.side-footer{font-size:9px;color:#83aa95;text-align:center;letter-spacing:1.1px;margin-top:25px}.main-area{width:calc(100% - 254px);min-width:0;display:flex;flex-direction:column}.topbar{height:79px;flex:0 0 79px;background:#fff;border-bottom:1px solid #e8eee8;display:flex;align-items:center;justify-content:space-between;padding:0 42px}.breadcrumb{color:#9baa9e;font-size:12px}.breadcrumb b{color:#3c5847}.breadcrumb span{padding:0 10px;color:#d1d8d2}.top-actions{display:flex;align-items:center;gap:12px}.live-indicator{font-size:10px;font-weight:800;letter-spacing:.5px;color:#528c6a;background:#f1f7f0;padding:9px 12px;border-radius:30px;margin-right:13px}.live-indicator i{display:inline-block;border-radius:100%;background:#4ea46b;width:7px;height:7px;margin-right:5px}.user-avatar{background:#deede3;color:#2d7152;width:35px;height:35px;border-radius:10px;display:grid;place-items:center;font-weight:800}.user-meta b{font-size:12px;display:block}.user-meta small{font-size:10px;color:#99aa9c}.content{padding:34px 43px 44px;max-width:1540px;width:100%;margin:0 auto;flex:1}.page{display:none;animation:rise .25s ease}.page.active{display:block}@keyframes rise{from{opacity:.5;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:27px}.page-heading h1{margin:0 0 8px}.page-heading p{margin:0;font-size:13px}.hero{background:radial-gradient(circle at 83% 50%,#287450 0,#154e38 38%,#113c30 100%);color:white;border-radius:19px;min-height:243px;padding:36px 44px;display:flex;align-items:center;justify-content:space-between;overflow:hidden;position:relative}.hero:before,.hero:after{content:'';position:absolute;border:1px solid #ffffff15;width:430px;height:430px;border-radius:50%;right:-70px;top:-120px}.hero:after{width:310px;height:310px;right:-12px;top:-55px}.hero>div:first-child{position:relative;z-index:2;max-width:560px}.hero-eyebrow{color:#bdcba5;letter-spacing:2px;font-size:10px;font-weight:800}.hero h2{margin:13px 0 10px;font-size:30px;letter-spacing:-.6px}.hero h2 em{font-family:'Playfair Display',Georgia,serif;color:#d7d39d;font-weight:500}.hero p{font-size:13px;color:#bad4c5;max-width:480px;margin-bottom:13px}.hero-mark{position:relative;z-index:2;width:260px;text-align:center;opacity:.9;flex-shrink:0}.mark-ring{margin:auto;display:grid;place-items:center;width:174px;height:174px;border-radius:100%;border:1px solid #dddeb849;box-shadow:0 0 0 13px #ffffff06,0 0 0 28px #ffffff05}.mark-inner{border:2px solid #d0c99090;width:125px;height:125px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:100%;font:700 61px Georgia,serif;letter-spacing:-7px;color:#efe5ae}.mark-inner small{letter-spacing:4px;font:600 10px 'DM Sans',sans-serif}.hero-mark>span{display:block;font-size:8px;color:#b6caa3;margin-top:24px;letter-spacing:1.8px}
.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin:22px 0}.stat-card{background:white;border:1px solid var(--border);border-radius:15px;box-shadow:var(--shadow);padding:21px 22px;position:relative;min-height:159px}.stat-icon{position:absolute;right:21px;top:18px;border-radius:10px;background:#e9f3ec;color:#53866c;width:34px;height:34px;display:grid;place-items:center;font-size:18px;font-weight:800}.stat-icon.emerald{background:#e7f1ec;font-size:13px}.stat-icon.lime{background:#f0f3e3;color:#82905e;font-size:11px}.stat-icon.amber{background:#fcf2e2;color:#b79651}.stat-label{font-size:10px;color:#839488;letter-spacing:1px;font-weight:800;margin-top:5px}.stat-number{font-size:32px;font-weight:800;letter-spacing:-1.4px;color:#204935;margin-top:13px}.stat-foot{color:#98a69b;font-size:11px}.content-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(290px,1fr);gap:19px}.panel{background:white;border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow);padding:24px}.panel-top{display:flex;justify-content:space-between;align-items:flex-start;gap:13px;margin-bottom:20px}.panel-top h3{margin:0 0 4px}.panel-top p{margin:0;font-size:11px;color:#a1afa3}.link-button{background:none;border:0;color:#388362;font-size:12px;font-weight:700}.recent-row{display:flex;align-items:center;gap:14px;padding:13px 0;border-bottom:1px solid #f0f3f0}.recent-row:last-child{border:0}.doc-icon{border:1px solid #e5eee7;background:#f1f7f2;color:#358163;border-radius:11px;width:42px;height:43px;display:grid;place-items:center;font-size:22px;flex-shrink:0}.recent-info{min-width:0;flex:1}.recent-info b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.recent-info small{display:block;color:#9aa99d;margin-top:5px;font-size:10px}.pill{font-size:10px;font-weight:800;border-radius:30px;padding:6px 10px;white-space:nowrap}.pill.ok{background:#eaf5ed;color:#39875d}.pill.bad{background:#ffede9;color:#b46058}.quick-panel{padding:24px 20px}.quick-card{display:flex;align-items:center;text-align:left;gap:12px;background:#fff;border:1px solid #edf0ed;width:100%;border-radius:11px;padding:13px;margin-bottom:11px}.quick-card:hover{background:#f8fbf8;border-color:#c9e0d0}.quick-card>span:nth-child(2){flex:1}.quick-card b{display:block;font-size:12px;color:#3a5a47}.quick-card small{display:block;color:#9aa99d;margin-top:3px;font-size:10px}.quick-card>span:last-child{color:#7ca48c}.quick-icon{display:grid;place-items:center;background:#eff5ee;color:#4b9472;border-radius:9px;font-size:21px;width:41px;height:41px;flex-shrink:0}.quick-note{background:#f1f6ed;border:1px solid #e4efde;border-radius:12px;padding:14px 16px;margin-top:19px}.quick-note b{color:#2f684a;font-size:12px}.quick-note p{font-size:11px;color:#708a71;line-height:1.55;margin:7px 0 0}.main-footer{padding:18px 42px;border-top:1px solid var(--border);color:#a6b3a7;font-size:10px}.main-footer span{padding:0 8px}
/* Sign */
.stepper{display:flex;align-items:center;gap:13px;flex-wrap:wrap;margin-bottom:21px}.step-pill{font-weight:700;font-size:12px;color:#a3b0a5;display:flex;align-items:center;gap:8px}.step-pill span{display:grid;place-items:center;width:27px;height:27px;border-radius:100%;background:#edf1ec;color:#a3b0a5;font-size:11px}.step-pill.active{color:#35795b}.step-pill.active span{color:#fff;background:#347859}.step-line{height:1px;background:#dce7df;width:30px}.sign-workspace{display:grid;grid-template-columns:minmax(315px, .9fr) minmax(390px,1.4fr);gap:21px;align-items:start}.sign-fields{padding:26px}.upload-zone{padding:22px 14px;border:1.5px dashed #afcdbc;background:#f9fcf9;border-radius:11px;text-align:center;cursor:pointer;transition:background .2s,border-color .2s}.upload-zone:hover,.upload-zone.drag{background:#edf8ef;border-color:#37835a}.upload-icon{width:42px;height:42px;margin:0 auto 10px;display:grid;place-items:center;border-radius:12px;background:#e4f1e7;color:#307a56;font-size:25px}.upload-zone b{display:block;color:#3e6650;font-size:12px;overflow-wrap:anywhere}.upload-zone p{font-size:11px;color:#9dab9d;margin:6px 0 13px}.field-footer{border-top:1px solid var(--border);margin-top:23px;padding-top:20px}.inline-note{background:#f2f7ef;color:#6b8871;font-size:11px;line-height:1.6;padding:12px;border-radius:9px;margin-bottom:16px}.pdf-panel{padding:0;overflow:hidden}.pdf-panel-header{padding:22px 24px 17px;display:flex;justify-content:space-between;align-items:center}.pdf-panel-header h3{margin:0 0 4px}.pdf-panel-header p{margin:0;font-size:11px;color:#9daaa0}.pdf-tag{background:#f2f6f2;color:#7b9e87;border-radius:5px;font-size:9px;font-weight:800;letter-spacing:1px;padding:8px 10px}.pdf-toolbar{background:#fbfcfa;display:flex;align-items:center;justify-content:space-between;padding:10px 20px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);gap:10px;flex-wrap:wrap}.page-controllers{display:flex;align-items:center;gap:10px;font-size:12px;color:#829487}.page-controllers b{color:#345c46}.icon-button{background:white;border:1px solid var(--border);border-radius:8px;width:30px;height:30px;display:grid;place-items:center;font-size:19px;color:#53735f}.qr-slider{display:flex;align-items:center;gap:9px;font-size:11px;color:#7c9280;font-weight:700}.qr-slider input{width:95px;accent-color:#297c55}.qr-slider b{font-size:11px;color:#456a53;width:23px}.paper-stage{min-height:520px;background:#edf0ed;display:flex;justify-content:center;align-items:flex-start;padding:30px 19px;max-height:750px;overflow:auto}.empty-paper{align-self:center;text-align:center;max-width:245px;padding:35px 10px}.empty-paper-icon{font-size:58px;color:#a4bbb0;margin-bottom:10px}.empty-paper b{color:#66826f}.empty-paper p{margin:9px 0;color:#a2b3a6;font-size:12px}.pdf-viewport{position:relative;line-height:0;box-shadow:0 10px 25px #163a2c17;background:#fff;max-width:100%;touch-action:pan-y}.pdf-viewport canvas{width:100%;height:auto;display:block}.stamp-preview{width:124px;height:124px;background:#fff9;border:2px dashed #278254;position:absolute;left:65%;top:70%;z-index:2;cursor:grab;user-select:none;touch-action:none;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1;box-shadow:0 3px 12px #183b291b}.stamp-preview.dragging{cursor:grabbing;border-color:#11422d;box-shadow:0 6px 20px #183b2933}.sample-qr{font-size:67px;color:#1d3024;font-family:monospace;line-height:.98}.stamp-preview-label{font-size:8px;color:#17372a;font-weight:800;letter-spacing:.2px;white-space:nowrap;margin-top:5px}.pdf-bottom{border-top:1px solid var(--border);padding:12px 22px;display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:10px;color:#879e8e}.result-box{background:#e8f6ee;border:1px solid #c1e1cc;border-radius:15px;padding:24px;max-width:830px;margin-top:23px}.result-box h3{color:#1d6240}.result-box p{font-size:12px}.result-actions{display:flex;gap:10px;flex-wrap:wrap}
/* Tables & users */
.table-controls{display:flex;align-items:center;gap:11px;margin-bottom:18px;flex-wrap:wrap}.table-controls select{width:auto;min-width:165px;min-height:40px}.search-wrap{height:40px;min-width:220px;flex:1;background:#fff;border:1px solid #e3ebe4;border-radius:9px;display:flex;align-items:center;padding-left:13px;color:#80a088;font-size:20px}.search-wrap input{min-height:35px!important;border:0!important;box-shadow:none!important;width:100%;background:transparent!important}.table-overflow{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}.data-table th{font-size:10px;font-weight:800;letter-spacing:.7px;background:#f7faf7;color:#8e9f91;padding:14px 13px;white-space:nowrap}.data-table td{border-bottom:1px solid #edf1ec;padding:15px 13px;color:#607b68;vertical-align:middle}.data-table .doc-cell b{color:#354f3d;display:block;min-width:160px}.data-table .doc-cell small{display:block;margin-top:5px;color:#a0aea3}.data-table td .row-actions{display:flex;gap:7px;white-space:nowrap}.mini-btn{background:#f1f7f1;border:1px solid #deecdf;border-radius:7px;padding:7px 9px;color:#377352;font-size:11px;font-weight:700}.mini-btn.danger{background:#fff4f2;color:#b46558;border-color:#ffdfd9}.table-footer{padding:18px 0 0;color:#9ba99c;font-size:11px}.table-empty{text-align:center;color:#9baa9d;padding:40px 12px!important}.signer-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.signer-card{border:1px solid #e3ece4;border-radius:13px;padding:20px;background:#fdfefd}.signer-card-head{display:flex;align-items:flex-start;gap:12px}.signer-profile-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:12px;background:#e4f2e8;color:#498366;font-size:22px}.signer-card-head>div:nth-child(2){flex:1;min-width:0}.signer-card-head b{font-size:14px}.signer-card-head p{font-size:11px;color:#859d8a;margin:4px 0}.school-chip{display:inline-block;background:#f0f5ef;border-radius:6px;padding:6px 8px;margin:13px 0;color:#59886c;font-size:10px;font-weight:800}.signer-card-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #e7eee8;padding-top:13px;gap:10px}.signer-card-bottom small{color:#99a89b}.signer-card-bottom>div{display:flex;gap:7px}.settings-panel{max-width:615px}.settings-panel h3{margin-bottom:24px}.settings-panel .form-stack{margin-bottom:24px}.settings-disclaimer{border-left:3px solid #9fb68a;background:#f5f8f1;padding:13px 17px;margin:25px 0}.settings-disclaimer b{font-size:12px}.settings-disclaimer p{font-size:11px;color:#7b917c;margin:5px 0 0}
/* Modal and notification */
.modal-backdrop{position:fixed;inset:0;z-index:40;background:#0d2419ab;display:grid;place-items:center;padding:25px;overflow-y:auto}.modal-backdrop[hidden]{display:none}.modal{position:relative;max-width:510px;width:100%;background:white;padding:29px;border-radius:19px;box-shadow:0 35px 90px #07180f60;max-height:95vh;overflow-y:auto}.modal h2{margin-bottom:6px}.modal>p{font-size:12px;margin-bottom:23px}.modal-close{position:absolute;right:18px;top:15px;font-size:25px;border:0;background:transparent;color:#8aa28f}.toast{position:fixed;bottom:27px;right:28px;z-index:60;color:white;background:#234c38;box-shadow:0 10px 34px #153a2b44;padding:13px 19px;max-width:360px;border-radius:11px;font-size:12px;font-weight:700;opacity:0;transform:translateY(14px);pointer-events:none;transition:all .25s}.toast.show{opacity:1;transform:translateY(0)}.toast.danger{background:#994b42}.mobile-menu{display:none}.sidebar-shade{display:none}
/* Verification */
.verify-body{min-height:100vh;background:radial-gradient(circle at 50% -180px,#dbe9dc 0,#f6f8f5 55%);padding:35px 16px 75px}.verify-top{display:flex;align-items:center;justify-content:center;gap:12px;color:#1b4a36;margin:0 auto 28px}.verify-top b,.verify-top strong{display:block;font-size:14px;letter-spacing:.5px}.verify-top span{display:block;font-size:11px;color:#8ca38c;margin-top:4px}.verify-card{max-width:590px;margin:auto;padding:35px;background:#fff;border:1px solid #e6ede6;border-radius:21px;box-shadow:0 23px 70px #22452c12;text-align:center}.verify-card h1{font-size:29px;margin-bottom:7px}.verify-card>.muted{font-size:12px;max-width:425px;margin:0 auto 23px}.verify-emblem{width:66px;height:66px;border-radius:100%;display:grid;place-items:center;margin:0 auto 17px;font-size:31px;font-weight:800}.verify-emblem.positive{background:#e4f4e9;color:#368c59}.verify-emblem.negative{background:#fff0eb;color:#b26052}.details{border:1px solid #e5eee6;border-radius:12px;text-align:left;overflow:hidden;margin:23px 0}.details>div{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #eef2ee;padding:13px 17px}.details>div:last-child{border:0}.details span{font-size:11px;color:#8fa391;min-width:120px}.details b{font-size:12px;color:#3e5e49;text-align:right;overflow-wrap:anywhere}.verify-hash{padding:15px;background:#f4f8f4;border-radius:10px;text-align:left}.verify-hash span{font-size:11px;color:#899b89;display:block;margin-bottom:8px;font-weight:800}.verify-hash code{overflow-wrap:anywhere;color:#2d7051;line-height:1.7;font-size:11px}.check-area{margin-top:22px;text-align:left;border:1px dashed #bfdac5;border-radius:12px;padding:20px}.check-area b{font-size:12px}.check-area p{margin:6px 0 15px}.check-area label{cursor:pointer}.check-area .alert{margin-bottom:0}.verify-footer{border-top:1px solid #e8eee8;padding-top:21px;color:#9bac9d;font-size:10px;margin-top:28px}
@media(max-width:1250px){.content{padding:31px 28px}.topbar{padding:0 28px}.stat-grid{gap:11px}.stat-card{padding:18px 14px}.sign-workspace{grid-template-columns:minmax(290px,.86fr) minmax(330px,1.15fr)}.hero-mark{width:195px}}
@media(max-width:1060px){.sidebar{width:225px;flex-basis:225px}.main-area{width:calc(100% - 225px)}.content-grid{grid-template-columns:1fr}.stat-grid{grid-template-columns:repeat(2,1fr)}.sign-workspace{grid-template-columns:1fr}.paper-stage{max-height:800px}.signer-cards{grid-template-columns:1fr}.auth-decoration{display:none}}
@media(max-width:720px){.sidebar{transform:translateX(-100%);position:fixed;transition:transform .25s}.layout.menu-open .sidebar{transform:translateX(0)}.layout.menu-open .sidebar-shade{display:block;position:fixed;inset:0;background:#061e1399;z-index:15}.main-area{width:100%}.mobile-menu{display:grid;place-items:center;margin-right:12px}.topbar{height:65px;flex-basis:65px;padding:0 17px}.user-meta{display:none}.live-indicator{display:none}.content{padding:26px 16px}.page-heading{align-items:flex-start;flex-direction:column}.page-heading h1{font-size:27px}.hero{padding:28px;min-height:215px}.hero-mark{display:none}.hero h2{font-size:24px}.stat-grid{gap:10px;margin-top:16px}.stat-card{min-height:145px}.stat-number{font-size:29px}.stat-label{font-size:9px}.stat-foot{font-size:10px}.panel{padding:19px}.sign-fields{padding:20px}.pdf-panel{padding:0}.paper-stage{min-height:300px;padding:17px 9px;max-height:580px}.pdf-panel-header{padding:18px}.pdf-toolbar{padding:11px}.pdf-bottom{flex-wrap:wrap}.content-grid{gap:13px}.quick-panel{padding:19px}.stepper{gap:7px}.step-pill{font-size:10px}.step-line{width:8px}.main-footer{padding:18px 16px}.login-card{padding:33px 24px}.auth-body{padding:16px}.setup-card{padding:26px 21px}.verify-card{padding:25px 17px}.details>div{flex-direction:column;gap:4px}.details b{text-align:left}.stamp-preview-label{font-size:6px}}
/* Keep generated QR bitmap fully inside the draggable positioning guide. */
.stamp-preview .sample-qr{width:82%;height:82%;flex:0 0 82%;display:grid;place-items:center;font-size:calc(var(--qr-font, 1) * 55px);overflow:hidden}
.stamp-preview .sample-qr canvas,.stamp-preview .sample-qr img{width:100%!important;height:100%!important;object-fit:contain}
