@charset "UTF-8";
:root{--blue:#2965e8;--blue-dark:#174bd0;--ink:#1a2640;--muted:#8590a3;--line:#e9edf4;--bg:#f5f7fb;--green:#1a9a76;--shadow:0 4px 24px #1d376408;--radius:16px;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;color:var(--ink);font-size:14px;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:var(--bg)}button,input,select{font:inherit}button,a,input,canvas{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:var(--blue);text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #94baff;outline-offset:3px}button{color:inherit}input,select{width:100%;border:1px solid #dfe5ef;border-radius:9px;background:white;padding:13px 14px;color:var(--ink);transition:border-color .15s}input:focus,select:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px #2965e80b}input::placeholder{color:#a3adbd}input[type=checkbox]{width:16px;height:16px;accent-color:var(--blue);flex-shrink:0;margin:3px 0}label{display:flex;flex-direction:column;gap:9px;font-weight:500;font-size:13px}form{display:grid;gap:20px}h1,h2,h3,p{margin:0}h1{font-size:30px;line-height:1.45;letter-spacing:-.8px;font-weight:650}h2{font-size:18px;font-weight:650;line-height:1.5}p{line-height:1.8}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:43px;padding:12px 20px;border-radius:9px;border:1px solid transparent;font-weight:550;font-size:13px;transition:background .15s,transform .15s;white-space:nowrap}.button:hover{transform:translateY(-1px)}.primary{background:var(--blue);color:white;box-shadow:0 4px 10px #2965e81a}.primary:hover{background:var(--blue-dark)}.secondary{background:white;color:#475974;border-color:#dfe5ef}.secondary:hover{background:#f7f9fd}.full{width:100%}.text-button{border:0;background:none;color:#75839a;padding:5px;font-size:12px}.text-button:hover{color:var(--blue)}.icon-button{border:0;background:transparent;padding:5px 9px;font-size:22px;color:#8a97ab;border-radius:6px}.icon-button:hover{background:#eff4fc;color:var(--blue)}.eyebrow{color:#8e9db5;font-size:10px;font-weight:650;letter-spacing:2px}.helper{font-size:12px;color:var(--muted);line-height:1.8}.center{text-align:center}.form-error{color:#cd4b5a;font-size:13px;line-height:1.7}.form-error:empty{display:none}.notice{background:#edf4ff;color:#476b9e;border-radius:10px;padding:15px;font-size:12px;line-height:1.9}.danger{background:#fff1f2;color:#bf3b51}.brand{display:flex;gap:11px;align-items:center;color:#1c2c4b;font-size:23px;font-weight:750;letter-spacing:.5px;flex-shrink:0}.brand small{display:block;font-size:8px;color:#94a0b5;font-weight:600;letter-spacing:2px;margin-top:3px}.brand-icon{position:relative;display:grid;place-items:center;background:var(--blue);color:white;width:40px;height:43px;border-radius:12px;font-size:32px;font-weight:500;box-shadow:0 4px 10px #2965e820;font-family:Arial}.brand-icon span{position:absolute;width:15px;height:7px;border-left:2px solid #93d9ff;border-bottom:2px solid #93d9ff;transform:rotate(-45deg);right:3px;top:17px}.sidebar{position:fixed;width:238px;inset:0 auto 0 0;background:white;border-right:1px solid var(--line);display:flex;flex-direction:column;padding:31px 22px 20px;z-index:10}.sidebar .brand{padding:0 5px}.workspace{display:flex;align-items:center;gap:11px;margin:34px 0 31px;padding:14px 10px;background:#f7f9fd;border:1px solid #edf0f6;border-radius:11px;font-size:12px;font-weight:550}.workspace small,.sidebar-user small{display:block;font-size:10px;color:var(--muted);margin-top:5px;font-weight:400}.company-avatar{display:grid;place-items:center;width:32px;height:32px;background:#e9efff;border-radius:8px;color:var(--blue);font-weight:600}.workspace-dot{width:6px;height:6px;background:#21b88b;border-radius:50%;margin-left:auto}.nav-caption{font-size:10px;color:#acb5c3;margin:0 12px 14px;letter-spacing:1px}.sidebar nav{display:grid;gap:7px}.nav-item{display:flex;align-items:center;gap:12px;width:100%;padding:13px 14px;border:none;background:none;color:#78869c;text-align:left;border-radius:8px;font-size:12px}.nav-item>span{font-size:18px;width:19px}.nav-item.active{background:#edf3ff;color:var(--blue);font-weight:600}.nav-item:hover{background:#f5f8fd}.nav-item b{margin-left:auto;background:#dce8ff;font-size:10px;padding:2px 6px;border-radius:5px}.sidebar-help{margin-top:auto;background:linear-gradient(145deg,#f0f6ff,#f8faff);border:1px solid #e8eefb;border-radius:12px;padding:17px 13px}.mini-lock{display:inline-grid;place-items:center;background:#e0eaff;color:var(--blue);width:30px;height:30px;border-radius:9px;font-size:23px;margin-bottom:10px}.sidebar-help strong{display:block;font-size:11px;margin-bottom:7px}.sidebar-help p{font-size:10px;color:#97a4bb;line-height:1.9}.sidebar-user{display:flex;align-items:center;gap:10px;margin-top:24px;padding-top:18px;border-top:1px solid var(--line);font-size:11px}.avatar{display:grid;place-items:center;flex-shrink:0;width:34px;height:34px;border-radius:50%;background:#eaf0ff;color:#4871c1;font-size:12px}.sidebar-user button{margin-left:auto}.main-shell{margin-left:238px}.topbar{height:76px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 39px;font-size:11px;color:#50617b}.breadcrumb{color:#a6b0bf}.separator{margin:0 16px;color:#d4dae4}.topbar-right{display:flex;align-items:center;gap:24px}.system-status{font-size:10px;color:#8b99aa;display:flex;align-items:center;gap:7px}.system-status i,.hero-kicker i{width:5px;height:5px;border-radius:50%;background:#2eac88}.dashboard{max-width:1440px;margin:auto;padding:34px 39px 0}.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:27px}.page-heading .eyebrow{font-size:9px;color:#9aa8bc}.page-heading h1{margin:8px 0 7px;font-size:29px}.heading-dot{color:var(--blue);padding-left:3px}.page-heading p{font-size:12px;color:#929db0}.page-heading .button{padding:12px 22px}.page-heading .button span{font-size:19px;line-height:1}.hero-card{position:relative;display:flex;justify-content:space-between;overflow:hidden;min-height:235px;border:1px solid #e3ebfa;background:linear-gradient(115deg,#edf3ff 0%,#f0f5ff 48%,#e7efff 100%);border-radius:var(--radius);margin-bottom:25px}.hero-copy{padding:31px 34px;position:relative;z-index:1}.hero-kicker{display:flex;align-items:center;gap:7px;color:#728ab4;font-size:10px;letter-spacing:1px}.hero-kicker i{background:#6594ed}.hero-copy h2{font-size:23px;letter-spacing:.3px;margin:17px 0 11px;color:#2a4169}.hero-copy p{font-size:12px;color:#8194b2;line-height:1.9}.hero-chips{display:flex;gap:21px;font-size:10px;color:#6784b0;margin-top:19px}.hero-art{position:relative;width:340px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.orbit{position:absolute;border:1px solid #d5e2fb;border-radius:50%;transform:rotate(-28deg)}.orbit-a{width:310px;height:205px}.orbit-b{width:220px;height:320px;border-color:#dae6fa}.art-document{position:relative;width:132px;height:174px;background:linear-gradient(145deg,#fff,#fafcff);border-radius:8px;box-shadow:12px 19px 34px #5c80c52a;transform:rotate(9deg);padding:25px 20px}.art-fold{position:absolute;right:0;top:0;width:28px;height:28px;background:linear-gradient(45deg,#e4edff 50%,#edf3ff 50%);border-bottom-left-radius:6px}.art-title{font-size:9px;color:#5c7cb2;font-weight:650;letter-spacing:2px}.art-line{height:4px;width:70px;background:#e6ecf6;border-radius:3px;margin-top:11px}.art-line.wide{width:88px}.art-line.short{width:45px}.art-sign{font-family:Georgia,serif;font-style:italic;font-size:23px;color:#4179d3;margin-top:13px;transform:rotate(-8deg)}.art-seal{position:absolute;bottom:12px;right:-18px;display:grid;place-items:center;width:48px;height:48px;border:5px solid #f4f8ff;background:linear-gradient(150deg,#548df5,#1f5de1);border-radius:50%;font-size:23px;color:white;box-shadow:0 5px 10px #3967b833}.floating-label{position:absolute;background:#ffffffd9;box-shadow:0 7px 18px #6585b51b;border:1px solid white;border-radius:9px;padding:10px 14px;font-size:10px;color:#617a9d;z-index:2;backdrop-filter:blur(5px)}.label-one{top:43px;right:28px;color:#26896f;transform:rotate(-5deg)}.label-two{bottom:36px;left:14px;transform:rotate(-5deg);font-size:9px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:29px}.stat-card{border:1px solid var(--line);background:white;border-radius:12px;padding:20px 22px;text-align:left;box-shadow:var(--shadow)}.stat-card:hover{border-color:#cadcfd}.stat-top{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#8996aa}.stat-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;font-size:18px}.blue{background:#edf3ff;color:#5a87e5}.amber{background:#fff7e8;color:#d2a250}.green{background:#eaf8f2;color:#52ae8d}.gray{background:#f1f3f7;color:#a1afc4}.stat-bottom{display:flex;align-items:baseline;gap:12px;margin-top:8px}.stat-bottom strong{font-size:31px;font-weight:550;line-height:1.4;font-family:Arial}.stat-bottom span{font-size:9px;color:#a7b0c0}.stat-bottom span.amber-text{color:#cba26b}.stat-bottom span.green-text{color:#64a98b}.contract-panel{background:white;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.panel-heading{display:flex;align-items:center;justify-content:space-between;padding:23px 26px 19px}.panel-heading h2{font-size:16px;display:flex;align-items:center;gap:9px}.count-pill{background:#edf3ff;color:#658be0;font-size:10px;padding:2px 7px;border-radius:5px;font-weight:500}.panel-heading p{font-size:10px;color:#a4afbf;margin-top:6px}.search-box{flex-direction:row;gap:7px;align-items:center;border:1px solid #e8edf4;border-radius:8px;padding-left:11px;width:240px}.search-box span{font-size:23px;color:#97a8bf;line-height:1}.search-box input{border:0;box-shadow:none!important;background:none;font-size:11px;padding:10px 10px 10px 0}.filter-bar{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:0 26px}.tabs{display:flex;gap:27px}.tab{position:relative;border:0;background:none;font-size:11px;padding:13px 0 16px;color:#99a5b7}.tab.active{color:var(--blue);font-weight:600}.tab.active:after{position:absolute;content:'';height:2px;background:var(--blue);inset:auto 0 -1px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th{padding:16px 24px;background:#fbfcfe;color:#9ba7bb;font-size:10px;font-weight:500}td{padding:19px 24px;border-bottom:1px solid #f0f3f7;font-size:11px;color:#8390a5}td:first-child{width:35%;color:#40516b;font-weight:500}.contract-name{display:flex;gap:12px;align-items:center}.file-icon{display:grid;place-items:center;background:#edf3ff;color:#729beb;border-radius:8px;min-width:32px;height:37px;font-size:18px}.contract-name small{display:block;color:#b1bac8;font-size:9px;font-weight:400;margin-top:6px}.row-action{border:0;background:transparent;font-size:11px;color:var(--blue);padding:6px}.badge{display:inline-flex;align-items:center;border-radius:5px;padding:5px 8px;font-size:10px;white-space:nowrap;font-weight:400}.badge.pending{background:#fff7e8;color:#c09346}.badge.signed{background:#eaf8f1;color:#3c9c78}.badge.draft,.badge.neutral{background:#f1f4f8;color:#91a0b5}.badge.expired{background:#fff0f0;color:#c77575}.empty-state{text-align:center;padding:38px 20px 44px}.empty-icon{display:grid;place-items:center;width:54px;height:60px;margin:0 auto 17px;border-radius:13px;background:#f0f5ff;color:#7ca1e8;font-size:31px}.empty-state h3{font-size:14px;font-weight:550;color:#5d6c83}.empty-state p{font-size:11px;color:#a5b0c0;margin:8px 0 19px}.empty-state .button{min-height:36px;padding:9px 15px;font-size:11px}.panel-footer{display:flex;justify-content:space-between;padding:15px 25px;font-size:9px;color:#b0b9c8;background:#fff}.page-footer{display:flex;justify-content:space-between;gap:15px;padding:25px 0;font-size:9px;color:#acb5c3}.modal{border:0;border-radius:18px;padding:28px;width:min(520px,calc(100vw - 28px));box-shadow:0 24px 100px #15274835;max-height:92dvh;overflow:auto;color:var(--ink)}.modal::backdrop{background:#13244460;backdrop-filter:blur(4px)}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:23px}.modal-head h2{font-size:21px}.modal-head .eyebrow{display:block;margin-bottom:9px}.steps{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#acb5c5;margin:23px 0}.steps span{display:flex;align-items:center;gap:7px}.steps b{display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:#f0f3f8;font-size:10px}.steps .active{color:var(--blue)}.steps .active b{background:var(--blue);color:white}.steps .done{color:var(--green)}.upload-drop{position:relative;text-align:center;border:1.5px dashed #cfdcf6;border-radius:12px;padding:26px 15px;background:#f8faff;align-items:center;gap:9px;overflow:hidden;cursor:pointer}.upload-drop.dragging{background:#e6efff;border-color:var(--blue)}.upload-drop strong{font-size:13px;color:#5677ac}.upload-drop>span{font-size:10px;color:#9eadc2}.upload-drop .upload-symbol{display:grid;place-items:center;font-size:28px;width:42px;height:42px;background:#eaf1ff;color:#739ae7;border-radius:10px;margin-bottom:4px}.upload-drop input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}.upload-drop:focus-within{outline:2px solid var(--blue)}.upload-drop:has(input:focus){outline:2px solid var(--blue)}.wide-modal{width:min(720px,calc(100vw - 28px))}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:22px 0}.detail-grid span{font-size:11px;color:var(--muted);display:block;margin-bottom:7px}.detail-grid strong{font-size:13px;font-weight:500}.hash-card{background:#f6f8fc;padding:14px;border:1px solid var(--line);border-radius:9px;margin:18px 0}.hash-card>span{font-size:10px;color:#94a1b5;display:block;margin-bottom:8px}.hash-card code{display:block;font-size:11px;line-height:1.8;overflow-wrap:anywhere;color:#5d7496}.link-box{display:flex;gap:8px;margin:17px 0}.link-box input{font-size:11px;background:#f8faff}.detail-buttons{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.timeline{border-top:1px solid var(--line);margin-top:24px;padding-top:19px}.timeline h3{font-size:13px;margin-bottom:14px}.event{border-left:2px solid #e2eafb;padding:0 0 17px 15px;margin-left:5px}.event strong{font-size:12px;font-weight:500}.event small{display:block;color:#9facbf;font-size:10px;margin-top:5px}.success-icon{display:grid;place-items:center;background:#e8f8f0;color:#23a277;border-radius:50%;width:63px;height:63px;font-size:28px;margin:12px auto 22px}.auth-shell{display:grid;grid-template-columns:48% 52%;min-height:100dvh}.auth-story{display:flex;flex-direction:column;justify-content:space-between;padding:45px 60px;background:radial-gradient(ellipse at 0 100%,#1c4786 0,transparent 65%),radial-gradient(ellipse at 100% 0,#2c58ab 0,transparent 70%),#122642;color:white;position:relative;overflow:hidden}.auth-story:after{content:'';position:absolute;width:460px;height:460px;border:1px solid #ffffff0b;border-radius:50%;right:-260px;bottom:80px;box-shadow:0 0 0 70px #ffffff03,0 0 0 140px #ffffff02}.brand.light{color:white}.brand.light small{color:#819ec9}.auth-story .eyebrow{color:#7194ca}.auth-story h1{font-size:38px;font-weight:600;line-height:1.7;letter-spacing:1px;margin:21px 0}.auth-story p{color:#829cc0;font-size:13px;line-height:2}.story-lines{display:grid;gap:24px;margin-top:43px;color:#587caf;font-size:11px;letter-spacing:1px}.story-lines b{color:#a5b9d7;font-weight:400;letter-spacing:0;margin-left:17px}.auth-story .auth-company{font-size:10px;color:#6682aa}.auth-form-wrap{display:flex;align-items:center;justify-content:center;flex-direction:column;position:relative;background:#fbfcff;padding:45px}.auth-form{width:340px;max-width:100%}.auth-form h2{font-size:26px;margin:14px 0 11px}.auth-form>p{color:#99a4b7;font-size:12px;margin-bottom:35px}.auth-note{font-size:11px;color:#9baac0;text-align:center;margin-top:28px}.auth-form-wrap footer{position:absolute;bottom:28px;font-size:9px;color:#b0b8c5;text-align:center}.install-shell{max-width:590px;margin:50px auto;padding:0 20px}.install-shell .brand{justify-content:center;margin-bottom:35px}.install-card{background:white;padding:35px;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}.install-card h1{font-size:25px;margin:10px 0}.install-card>p{font-size:12px;color:#99a4b7}.install-card .notice{margin:23px 0}.editor-header{display:flex;align-items:center;height:79px;padding:0 30px;gap:35px;background:white;border-bottom:1px solid var(--line)}.editor-title{font-size:13px;color:#5a6d8b;margin-left:auto;max-width:40%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.save-state{color:#a0adc1;font-size:11px}.editor-layout{display:grid;grid-template-columns:minmax(0,1fr) 328px;min-height:calc(100dvh - 79px)}.pdf-area{min-width:0}.pdf-toolbar{display:flex;justify-content:space-between;align-items:center;background:white;padding:11px 24px;border-bottom:1px solid var(--line);font-size:12px;color:#798aa5;gap:12px;position:sticky;top:0;z-index:3}.pdf-toolbar>div{display:flex;align-items:center;gap:12px}.pdf-toolbar .icon-button{font-size:24px}.toolbar-hint{font-size:10px;color:#a3b0c4}.pdf-scroll{padding:30px 34px;overflow:auto;background:#eef1f6;min-height:400px}.pdf-stage{position:relative;margin:0 auto;background:white;box-shadow:0 7px 25px #31436314;max-width:860px;width:100%;line-height:0}.pdf-stage canvas{display:block;width:100%;height:auto}.pdf-stage canvas:not([width]){min-height:600px}#regions-layer{position:absolute;inset:0;touch-action:none;user-select:none}.region-box{position:absolute;border:1.5px dashed #4c86ec;background:#4285f519;border-radius:3px;display:grid;place-items:center;color:#3775db;font-size:clamp(9px,1.2vw,13px);line-height:1.4}.region-box.selected{border-style:solid;background:#4285f52a}.region-box small{position:absolute;top:-20px;left:0;font-size:9px;line-height:1.3;padding:3px 5px;background:var(--blue);color:white;border-radius:3px}.editor-settings{padding:27px 24px;background:white;border-left:1px solid var(--line);display:flex;flex-direction:column}.vertical{flex-direction:column;align-items:flex-start;gap:18px;margin:0 0 22px;font-size:12px}.vertical b{width:24px;height:24px;font-size:11px}.editor-settings hr{width:100%;border:none;border-top:1px solid var(--line);margin:0 0 25px}.editor-settings h2{font-size:18px;margin:8px 0 11px}.signer-card{display:flex;gap:9px;align-items:center;padding:14px 9px;background:#f7f9fd;border-radius:9px;margin:20px 0;font-size:12px}.signer-card .badge{margin-left:auto;font-size:9px}.region-list{display:grid;gap:8px;margin-bottom:13px}.region-item{display:flex;align-items:center;justify-content:space-between;padding:10px;border:1px solid #e4ecfc;border-radius:7px;font-size:11px;color:#6484b8}.editor-settings>.helper{margin-top:15px}.editor-actions{margin-top:auto;padding-top:32px;display:grid;gap:12px}.editor-actions select{padding:10px}.editor-actions label{font-size:11px}.editor-actions .button{font-size:12px}.sign-header{height:82px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 max(28px,calc((100vw - 1150px)/2));background:white;border-bottom:1px solid var(--line)}.sign-company{font-size:12px;color:#7f8da4}.sign-main{max-width:1150px;margin:auto;padding:35px 28px 0}.sign-intro{margin-bottom:28px}.sign-intro h1{font-size:25px;margin:9px 0}.sign-intro p{font-size:12px;color:#8e9bb1}.sign-layout{display:grid;grid-template-columns:minmax(0,1fr) 294px;gap:25px;align-items:start}.sign-document{border:1px solid var(--line);border-radius:13px;overflow:hidden;background:white}.sign-document .pdf-scroll{padding:21px;max-height:calc(100dvh - 250px);min-height:350px}.sign-document .pdf-toolbar{padding:10px 15px}.sign-card{background:white;border:1px solid var(--line);border-radius:13px;padding:25px 22px}.sign-card-icon{display:grid;place-items:center;width:43px;height:43px;border-radius:12px;background:#edf3ff;color:var(--blue);font-size:25px;margin-bottom:16px}.sign-card h2{font-size:17px;margin-bottom:9px}.sign-info{display:grid;gap:9px;padding:18px 0;margin:10px 0;border-bottom:1px solid var(--line)}.sign-info span{font-size:10px;color:#a3afbf}.sign-info strong{font-size:12px;font-weight:500;line-height:1.8;margin-bottom:8px}.checkbox-label{flex-direction:row;align-items:flex-start;gap:9px;font-size:11px;color:#8291a6;line-height:1.9;margin:20px 0}.signature-security{margin-top:25px;padding-top:18px;border-top:1px solid var(--line)}.signature-security>span{color:#7894bd;font-size:11px}.signature-security p{font-size:10px;color:#a0adc0;margin-top:8px}.sign-card #read-progress{margin-top:12px;font-size:10px}.signature-modal{width:min(600px,calc(100vw - 24px))}.signature-pad-wrap{position:relative;background:#f7f9fd;border:1px solid #e1e8f3;border-radius:12px;margin-top:22px;overflow:hidden}.signature-pad-wrap canvas{display:block;width:100%;height:210px;touch-action:none;cursor:crosshair}.signature-pad-wrap>span{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;color:#c4cfdf;font-size:21px;letter-spacing:5px}.pad-toolbar{display:flex;align-items:center;justify-content:space-between;margin:10px 0 23px;font-size:10px;color:#9da9bb}.signature-preview h3{font-size:14px;margin:20px 0 5px}.signature-preview .button{margin-top:12px}.progress-note{color:#7390bb;font-size:11px;margin:14px 0;text-align:center}.signed-success{margin:25px 0;background:white;border:1px solid #deeee5;border-radius:15px;text-align:center;padding:30px;max-width:750px;margin-inline:auto}.signed-success h2{font-size:23px;margin-bottom:12px}.signed-success p{color:#879b91;font-size:12px}.signed-success .hash-card{text-align:left;max-width:550px;margin:23px auto}.sign-main>.danger{margin-top:20px}#toast{position:fixed;top:20px;left:50%;transform:translateX(-50%) translateY(-80px);background:#1f3453;color:white;padding:13px 22px;border-radius:9px;box-shadow:0 5px 30px #15294f30;font-size:12px;z-index:1000;transition:transform .2s;max-width:90vw}#toast.visible{transform:translateX(-50%) translateY(0)}[hidden]{display:none!important}
@media(min-width:1500px){.dashboard{padding-top:42px}.hero-card{min-height:260px}.hero-copy{padding:37px 40px}.hero-copy h2{font-size:26px}.hero-art{width:430px}.art-document{transform:scale(1.1) rotate(9deg)}.stats-grid{margin-top:28px}.stat-card{padding:25px}}
@media(max-width:1100px){.sidebar{width:205px;padding:25px 15px}.main-shell{margin-left:205px}.dashboard{padding:28px 25px 0}.topbar{padding:0 25px}.hero-art{width:255px}.label-one{right:10px}.label-two{left:-5px}.hero-copy{padding:28px}.hero-copy h2{font-size:20px}.hero-chips{gap:13px}.stats-grid{gap:12px}.stat-card{padding:17px}.stat-top{font-size:10px}.stat-bottom span{font-size:8px}th,td{padding-left:18px;padding-right:18px}.auth-story{padding:40px}.auth-story h1{font-size:30px}.editor-layout{grid-template-columns:minmax(0,1fr) 285px}.editor-settings{padding:24px 18px}.toolbar-hint{display:none}}
@media(max-width:800px){.sidebar{width:76px;padding:25px 11px}.sidebar .brand>span:last-child,.workspace,.nav-caption,.nav-item b,.sidebar-help,.sidebar-user>div,.sidebar-user .icon-button{display:none}.sidebar .brand{padding:0;justify-content:center}.sidebar nav{margin-top:37px}.nav-item{font-size:0;padding:13px;justify-content:center}.nav-item>span{font-size:21px}.sidebar-user{justify-content:center}.main-shell{margin-left:76px}.hero-art{width:195px;opacity:.85}.floating-label{display:none}.hero-copy h2{font-size:19px}.hero-copy{padding:25px}.hero-chips{font-size:9px;gap:12px}.stats-grid{grid-template-columns:repeat(2,1fr)}.stat-card{padding:18px}.search-box{width:200px}.sign-layout{grid-template-columns:minmax(0,1fr) 250px;gap:16px}.sign-card{padding:20px 17px}.sign-document .pdf-scroll{padding:13px}.sign-header .badge{display:none}.sign-company{font-size:10px}.editor-header{gap:20px;padding:0 20px}.editor-header .brand>span:last-child{display:none}.editor-title{font-size:12px}.editor-layout{grid-template-columns:minmax(0,1fr) 250px}.pdf-scroll{padding:20px}.editor-settings{padding:22px 16px}.editor-settings .eyebrow{font-size:8px}.auth-story{padding:35px 28px}.auth-story h1{font-size:27px}.auth-form-wrap{padding:30px}.story-lines{font-size:10px}}
@media(max-width:600px){.sidebar{display:none}.main-shell{margin-left:0}.topbar{height:60px;padding:0 20px}.topbar-right{gap:12px}.system-status{font-size:8px}.topbar .text-button{font-size:10px}.dashboard{padding:25px 18px 0}.page-heading{align-items:flex-start;gap:15px}.page-heading h1{font-size:24px}.page-heading p{font-size:10px;max-width:205px}.page-heading .eyebrow{font-size:8px}.page-heading .button{padding:11px 13px;min-height:38px;font-size:10px;margin-top:20px}.hero-card{min-height:213px}.hero-copy{padding:24px 22px}.hero-copy h2{font-size:18px}.hero-copy p{font-size:11px}.hero-art{position:absolute;right:-75px;bottom:-17px;opacity:.24;transform:scale(.9)}.hero-chips{margin-top:18px}.stats-grid{gap:10px;margin-bottom:22px}.stat-card{padding:16px 18px}.stat-top{font-size:10px}.stat-bottom strong{font-size:28px}.stat-bottom span{font-size:9px}.stat-icon{width:29px;height:29px}.panel-heading{align-items:flex-start;gap:14px;padding:21px 18px;flex-direction:column}.panel-heading h2{font-size:15px}.search-box{width:100%}.filter-bar{padding:0 18px}.tabs{gap:22px}.tab{font-size:10px}.panel-footer{padding:14px 18px;font-size:8px}.panel-footer>span:last-child{display:none}.page-footer{font-size:8px;padding:20px 0;flex-wrap:wrap;gap:8px}.modal{padding:23px}.modal-head h2{font-size:19px}.auth-shell{display:block}.auth-story{min-height:240px;padding:23px 27px}.auth-story>.brand{font-size:20px}.auth-story .brand-icon{width:34px;height:36px;font-size:27px}.auth-story h1{font-size:24px;line-height:1.5;margin:17px 0 8px}.auth-story .eyebrow,.auth-story .story-lines,.auth-story .auth-company{display:none}.auth-story>div{margin-top:20px}.auth-story>div>p{font-size:10px}.auth-form-wrap{padding:35px 28px 75px;min-height:calc(100dvh - 240px)}.auth-form h2{font-size:23px}.auth-form>p{margin-bottom:24px}.auth-form-wrap footer{font-size:8px;bottom:20px}.install-shell{margin:28px auto}.install-card{padding:25px}.install-card h1{font-size:22px}.editor-header{height:64px;padding:0 14px;gap:14px}.editor-title{max-width:35%;font-size:10px}.save-state{font-size:9px}.editor-layout{display:flex;flex-direction:column}.editor-settings{border:0;border-top:1px solid var(--line);padding:23px}.editor-settings .steps{flex-direction:row;gap:12px;font-size:10px}.editor-settings hr{margin-bottom:20px}.editor-settings .eyebrow{font-size:9px}.editor-actions{padding-top:20px}.editor-layout .pdf-scroll{max-height:65dvh;min-height:350px;padding:17px}.sign-header{height:68px;padding:0 18px;gap:15px}.sign-header .brand{font-size:19px;gap:8px}.sign-header .brand small{font-size:6px;letter-spacing:1px}.sign-header .brand-icon{width:33px;height:36px;font-size:27px}.sign-company{font-size:9px;max-width:165px;line-height:1.7;text-align:right}.sign-main{padding:25px 16px 0}.sign-intro h1{font-size:22px}.sign-intro .eyebrow{font-size:8px}.sign-intro p{font-size:11px}.sign-layout{display:flex;flex-direction:column;gap:17px}.sign-document,.sign-card{width:100%}.sign-document .pdf-scroll{max-height:65dvh;min-height:280px;padding:12px}.sign-document .pdf-toolbar{font-size:10px;gap:5px}.sign-document .pdf-toolbar .text-button{font-size:10px}.sign-card{padding:24px}.sign-card-icon{float:left;margin-right:14px}.sign-info{grid-template-columns:70px 1fr;gap:13px}.sign-info strong{margin:0}.signature-pad-wrap canvas{height:190px}.signature-pad-wrap>span{font-size:17px}.signature-modal label{font-size:12px}.signed-success{padding:25px 17px}.signed-success h2{font-size:21px}.link-box{flex-direction:column}}
.editor-layout{height:calc(100dvh - 79px);min-height:0}.editor-layout .pdf-area{display:flex;flex-direction:column;min-height:0}.editor-layout .pdf-toolbar{position:static;flex-shrink:0}.editor-layout .pdf-scroll{flex:1;min-height:0}.editor-settings{overflow:auto}body[data-mode=sign] #regions-layer{pointer-events:none;touch-action:auto}#toast{opacity:0;pointer-events:none}#toast.visible{opacity:1}
@media(max-width:600px){.editor-layout{height:auto;min-height:calc(100dvh - 64px)}.editor-layout .pdf-area{display:block}.editor-layout .pdf-scroll{min-height:350px}.editor-settings{overflow:visible}}
.company-region{border-color:#e36363;background:#ef53530c;color:#ca4b4b}.company-region small{background:#d95c5c}.region-box img{height:96%;width:96%;object-fit:contain;pointer-events:none}.resize-handle{position:absolute;width:11px;height:11px;border:1px solid currentColor;background:white;z-index:2;touch-action:none}.resize-handle.nw{left:-6px;top:-6px;cursor:nwse-resize}.resize-handle.ne{right:-6px;top:-6px;cursor:nesw-resize}.resize-handle.sw{left:-6px;bottom:-6px;cursor:nesw-resize}.resize-handle.se{right:-6px;bottom:-6px;cursor:nwse-resize}.region-box{cursor:move}.region-select{background:none;border:none;color:inherit;font-size:11px;text-align:left;padding:2px}.region-item.chosen{background:#edf3ff}.size-controls{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:15px}.size-controls label{font-size:10px}.size-controls input{padding:9px}.seal-mini{display:flex;align-items:center;gap:12px;padding:10px;background:#fff7f7;border:1px solid #fde8e8;border-radius:8px;font-size:11px;color:#bb7272;margin:0 0 15px}.seal-mini img{width:46px;height:46px;object-fit:contain}.seal-image-wrap{margin:22px 0;min-height:130px;background:#f8faff;border:1px solid var(--line);border-radius:10px;display:grid;place-items:center;color:#9cabc0;font-size:12px}.seal-image-wrap img{max-height:170px;max-width:80%;padding:14px}#add-company{margin-top:10px}.editor-settings #region-type{padding:9px}.editor-settings #region-list{margin-top:16px}.progress-note{line-height:1.8}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

.party-form-card{border:1px solid var(--line);background:#f8faff;border-radius:12px;padding:16px;display:grid;gap:13px;margin-bottom:14px}.party-form-head{display:flex;align-items:center;justify-content:space-between}.party-add{display:flex;gap:8px;flex-wrap:wrap}.party-detail{padding:15px 0;border-bottom:1px solid var(--line)}.party-detail>.badge{margin-left:10px}.party-detail .link-box{margin-top:9px}.party-progress{display:block;color:var(--muted);font-size:11px;margin-top:6px}#party-links{max-height:45vh;overflow:auto}#party-select-wrap{margin-bottom:12px}#upload-dialog{max-height:90vh;overflow:auto}#handwriting-fields{margin-top:15px}#company-seal-field{margin-top:16px}[hidden]{display:none!important}

.party-form-card[data-side=own]{border-color:#bcd2fa;background:#f4f8ff}.party-form-card[data-side=own] .party-form-head strong{color:#2965e8}.party-form-card[data-side=counterparty] .party-form-head strong{color:#48715f}

.pdf-toolbar .pdf-pager{gap:8px}.pdf-toolbar .page-nav-button{display:inline-flex;align-items:center;gap:4px;min-height:38px;padding:8px 16px;border:1px solid #b8cdf4;border-radius:999px;background:#eaf2ff;color:#1d4fc4;font-size:13px;font-weight:650;white-space:nowrap;box-shadow:0 1px 2px #2965e816}.pdf-toolbar .page-nav-button:hover:enabled{background:#d7e7ff;border-color:#8fb2ef}.pdf-toolbar .page-nav-button:active:enabled{transform:translateY(1px)}.pdf-toolbar .page-nav-button:disabled{background:#f2f4f8;color:#aab3c1;border-color:#e5e9f0;box-shadow:none}.pdf-toolbar #page-number{font-weight:700;font-size:14px;color:#1f3a68;white-space:nowrap;background:#f0f5ff;border:1px solid #dbe6fb;border-radius:999px;padding:6px 14px;font-variant-numeric:tabular-nums}.pdf-progress{height:6px;background:#e1e8f5;flex-shrink:0}.pdf-progress span{display:block;height:100%;width:0;border-radius:0 999px 999px 0;background:linear-gradient(90deg,#1d4fc4,#4b8bff);transition:width .2s}.event .event-hash{margin:8px 0 0;padding:10px 12px}.event-hash code{font-size:11px;user-select:all}.sign-document .pdf-toolbar,.editor-layout .pdf-toolbar{position:sticky;top:0;z-index:4}.pdf-toolbar{flex-wrap:wrap}.pdf-toolbar>div{justify-content:center;gap:10px}@media(max-width:600px){.pdf-toolbar>div{order:3;width:100%;justify-content:space-between}.pdf-toolbar .page-nav-button{min-width:100px;font-size:14px;padding:10px 13px}.pdf-toolbar #page-number{font-size:13px}.sign-document .pdf-toolbar{padding:12px}.toolbar-hint{display:none}}

.pdf-pages{display:grid;gap:26px}.pdf-page{min-width:0}.pdf-page-caption{text-align:center;color:#8292aa;font-size:12px;line-height:1.5;margin-bottom:10px}.continuous-stage{overflow:visible;background:#fff}.continuous-stage canvas{width:100%!important;height:100%!important;position:absolute;inset:0;min-height:0!important}.continuous-stage:not(.rendered)::before{content:'合同页面加载中…';position:absolute;inset:0;display:grid;place-items:center;font-size:13px;line-height:1.5;color:#91a0b7}.regions-layer{position:absolute;inset:0;user-select:none;touch-action:none}body[data-mode=sign] .regions-layer{pointer-events:none;touch-action:auto}.scroll-reading-hint{font-size:12px;color:#7288a9;white-space:nowrap}.pdf-toolbar>div{gap:14px}.pdf-scroll{scroll-behavior:auto;overscroll-behavior:contain}body[data-mode=sign] .pdf-scroll{touch-action:pan-y pinch-zoom}@media(max-width:600px){.pdf-toolbar>div{order:0;width:auto}.pdf-pages{gap:20px}.scroll-reading-hint{font-size:12px}}

body[data-mode=editor] #pdf-pages .regions-layer{touch-action:pan-y}body[data-mode=editor] #pdf-pages[data-drawing=on] .regions-layer{touch-action:none}body[data-mode=editor] .region-box{touch-action:none}#draw-region-mode[aria-pressed=true]{background:#2965e8;border-color:#2965e8;color:white}
