:root{--red: #e72419;--ink: #1a1a1a;--muted: #666;--paper: #fff;--page: #f4f2f8}*{box-sizing:border-box}html{background:var(--page);color:var(--ink)}body{margin:0;min-width:320px;background:var(--page);font-family:Source Han Sans CN,PingFang SC,Microsoft YaHei,sans-serif;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.mobile-app,.login-page,.success-page,.screen-state{width:min(100%,750px);min-height:100vh;margin:0 auto;position:relative;overflow:hidden}.with-nav{padding-bottom:72px}.primary-button,.ghost-button{border:0;min-height:45px;display:inline-flex;align-items:center;justify-content:center;font-weight:500}.primary-button{background:var(--red);color:#fff}.ghost-button{background:#f5f5fa;color:var(--ink)}.form-message{margin:14px 20px 0;padding:10px 13px;border-radius:5px;font-size:13px;line-height:1.5}.form-message.error{color:#a22721;background:#fff0ee}.form-message.success{color:#287043;background:#edf9f1}.mobile-app{background:#fff}.home-hero{height:375px;background:linear-gradient(to bottom,var(--red),#fff);display:flex;justify-content:space-between}.brand-lockup{margin:100px 0 0 48px;width:141px}.brand-lockup img:first-child{width:141px;height:auto}.brand-lockup img+img{width:132px;height:auto;margin:6px 0 0 5px}.hero-art{width:141px;height:164px;object-fit:contain;margin:14px 30px 0 0}.contract-card{margin:-195px 10px 0;position:relative;z-index:2;background:#fff;border-radius:15px;padding:25px 0 28px}.contract-heading{text-align:center}.contract-heading h1{margin:0;font-size:24px;line-height:1.35;font-weight:700}.contract-form{padding:0 23px}.party-a{min-height:50px;display:flex;align-items:center;font-size:13px}.contract-form label{min-height:50px;display:grid;grid-template-columns:100px minmax(0,1fr) auto;align-items:center}.contract-form label>span{font-size:14px}.contract-form input{min-width:0;width:100%;border:0;outline:0;padding:12px 0;font-size:14px;color:var(--ink);background:transparent}.contract-form input::placeholder{color:#999}.contract-form small{color:var(--red);font-size:13px}.contract-terms{padding:10px 20px 0}.contract-terms section{margin-top:30px}.contract-terms h2{margin:0 0 15px;font-size:15px;line-height:1.4}.contract-terms p{margin:10px 0 0;font-size:13px;line-height:1.42;color:var(--ink);text-align:justify}.assessment-card{margin-top:6px}.assessment-card>h2{margin:0;padding:0 20px 10px;text-align:center;font-size:13px}.assessment-card>img{width:100%;height:auto}.assessment-choice{width:calc(100% - 40px);height:93px;margin:19px 20px 0;padding:0 15px;display:grid;grid-template-columns:minmax(130px,.9fr) minmax(0,1.1fr);grid-template-rows:58px 35px;align-items:center;background:#fff6f5;border-radius:5px}.assessment-copy{padding-left:13px;border-left:3px solid #ef3829}.assessment-copy span{display:block;font-size:13px;line-height:18px;font-weight:500}.assessment-choice select{width:100%;min-width:0;border:0;outline:0;color:var(--ink);background:transparent;font-size:13px;padding:10px 4px}.assessment-choice select.placeholder{color:#ef3829}.assessment-choice select option{color:var(--ink)}.assessment-choice p{grid-column:1 / -1;align-self:stretch;margin:0;border-top:1px solid #dbd9de;text-align:right;line-height:35px;font-size:13px}.signing-block{position:relative;padding:0 15px;margin-top:48px}.signing-block>p{width:62%;margin:0 0 48px;font-size:13px;line-height:24px}.company-seal{position:absolute;z-index:0;width:125px;right:25px;top:45px}.signing-block dl{position:relative;z-index:1;margin:0}.signing-block dl>div{display:grid;grid-template-columns:70px 1fr;align-items:center;min-height:45px;margin-top:15px}.signing-block dl>div:first-child{margin-top:0;margin-bottom:10px}.signing-block dt{font-size:15px}.signing-block dd{margin:0;font-size:15px;font-weight:500}.signature-entry{width:124px;height:75px;border:1px dashed var(--red);border-radius:5px;background:#fff;color:#f0d0cd;font-size:13px}.signature-preview{width:124px;height:75px;border:1px dashed var(--red);border-radius:5px;background:#fff;display:flex;align-items:center;justify-content:center;gap:5px;padding:4px}.signature-preview img{max-width:82px;max-height:66px;object-fit:contain}.signature-preview span{font-size:10px;color:#999}.submit-contract{width:calc(100% - 80px);min-height:45px;margin:60px 40px 0;border-radius:23px;font-size:15px}.bottom-nav{position:fixed;z-index:20;left:50%;bottom:0;transform:translate(-50%);width:min(100%,750px);height:64px;padding:4px 19%;display:flex;justify-content:space-between;background:#fff;border-top:1px solid #e6e6e6}.bottom-nav a{width:64px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:#c2c0c4;font-size:11px}.bottom-nav a.active{color:#ef3829}.bottom-nav img{width:24px;height:24px;object-fit:contain}.signature-modal{position:fixed;z-index:100;inset:0;background:#fbfbfb}.signature-panel{width:100%;height:100dvh;padding:15px 0;display:grid;grid-template-columns:74px minmax(0,1fr) 48px;position:relative}.signature-toolbar{display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:6px;padding:5px 7px}.signature-toolbar>button:not(.color-dot){border:0;background:transparent;color:#666;padding:7px 4px;font-size:13px}.signature-toolbar .finish-signature{background:#008ef6!important;color:#fff!important;border-radius:5px;padding:10px 6px!important}.signature-toolbar .close-signature{font-size:12px!important}.color-dot{width:30px;height:30px;flex:0 0 30px;border-radius:50%;border:4px solid #fff;box-shadow:0 0 0 1px #d8cfca}.color-dot.black{background:#1a1a1a}.color-dot.red{background:#ca262a}.color-dot.selected{width:42px;height:42px;flex-basis:42px;box-shadow:0 0 0 2px var(--red)}.signature-canvas{width:100%;height:100%;display:block;background:#fff;border:2px dashed #e9e9e9;touch-action:none}.signature-side-title{display:flex;align-items:center;justify-content:center;color:#666;font-size:14px;writing-mode:vertical-rl}.signature-panel>.form-message{position:absolute;left:80px;right:55px;bottom:25px;text-align:center}.login-page{background:#efebe7;display:flex;flex-direction:column}.login-visual{height:50vh;min-height:360px;position:relative;overflow:hidden;background:#dcdbd8}.login-visual>img{width:100%;height:100%;object-fit:cover;object-position:center top;opacity:.78}.login-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#2114110d,#311814c2)}.login-brand{position:absolute;z-index:1;left:28px;right:28px;bottom:38px;color:#fff}.login-brand span{font-size:11px;letter-spacing:.15em;font-weight:800;opacity:.8}.login-brand h1{font-size:clamp(30px,8vw,42px);line-height:1.17;margin:9px 0}.login-brand p{margin:0;font-size:13px;color:#ffffffc2}.login-card{flex:1;position:relative;z-index:2;margin-top:-22px;background:#fff;border-radius:28px 28px 0 0;padding:28px 24px 34px}.login-card-heading>span{color:var(--red);font-size:11px;font-weight:800;letter-spacing:.16em}.login-card-heading h2{margin:6px 0 5px;font-size:24px}.login-card-heading p{margin:0 0 22px;color:#756f6c;font-size:12px}.stacked-field{display:grid;gap:8px;margin-top:15px}.stacked-field>span{font-size:13px;font-weight:700}.stacked-field input{width:100%;height:54px;border:1px solid #e7dfd9;border-radius:14px;padding:0 15px;outline:0;background:#fff}.stacked-field input:focus{border-color:#dc817a;box-shadow:0 0 0 3px #fff0ee}.code-field{display:grid;grid-template-columns:1fr 112px;gap:10px}.code-field button{border:0;border-radius:14px;color:var(--red);background:#fff0ed;font-size:12px;font-weight:700}.login-submit{width:100%;margin-top:20px;border-radius:23px}.login-notice{text-align:center;color:#aaa19b;font-size:10px;margin:15px 0 0}.profile-page{background:var(--page);min-height:100vh}.profile-hero{height:245px;position:relative;overflow:hidden;background:linear-gradient(to bottom,var(--red),#fff);color:#fff;padding:18px 15px}.profile-leaf,.profile-lines{position:absolute}.profile-lines{width:159px;height:245px;left:0;top:0}.profile-leaf{width:141px;height:164px;right:23px;top:5px}.profile-topbar{position:relative;z-index:1;display:grid;grid-template-columns:1fr auto 1fr;align-items:center}.profile-topbar h1{grid-column:2;margin:0;font-size:17px;font-weight:500}.profile-topbar button{grid-column:3;justify-self:end;border:0;color:#ffffffd9;background:transparent;font-size:12px}.profile-identity{position:relative;z-index:1;display:flex;align-items:center;gap:15px;margin-top:45px}.profile-identity>img{width:50px;height:50px;border-radius:50%;background:#fff;object-fit:cover}.profile-identity strong,.profile-identity span{display:block}.profile-identity strong{font-size:18px;font-weight:400}.profile-identity span{margin-top:5px;font-size:14px}.contract-list-card{position:relative;z-index:2;min-height:520px;margin:-76px 15px 18px;padding:28px 12px;border-radius:15px;background:#fff;overflow:auto}.contract-list article{display:grid;grid-template-columns:32px minmax(0,1fr) 64px;gap:10px;align-items:center;min-height:38px;padding:0 0 40px}.contract-list article:last-child{padding-bottom:0}.document-icon,.document-icon img{width:32px;height:38px}.contract-summary{min-width:0}.contract-summary h3{margin:0;font-size:15px;line-height:21px;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.contract-summary p{margin:0;color:#999;font-size:12px;line-height:17px;white-space:nowrap}.contract-list article>button{width:64px;height:30px;padding:0;border:0;border-radius:15px;color:#fff;background:#f5221c;font-size:12px}.empty-state{text-align:center;padding:70px 20px;color:#999}.empty-state img{width:42px;margin:0 auto 14px;opacity:.5}.empty-state h3{margin:0 0 7px;color:var(--ink);font-size:16px}.empty-state p{font-size:12px;line-height:1.6}.empty-state a{display:inline-flex;margin-top:8px;padding:8px 16px;border-radius:18px;color:#fff;background:var(--red);font-size:12px}.success-page{min-height:100vh;padding:25px 29px;background:linear-gradient(to bottom,#fff8ec,#fff)}.success-heading{display:flex;justify-content:space-between;align-items:flex-start}.success-heading h1,.success-heading h2{margin:0;font-size:24px;line-height:36px}.success-heading span{display:block;width:65px;height:5px;margin-top:4px;border-radius:3px;background:var(--red)}.success-heading img{width:72px;height:84px;object-fit:contain}.success-copy{width:225px;margin:23px 0 0;color:#666;font-size:14px;line-height:24px}.success-copy strong{color:var(--red);font-weight:400}.success-actions{margin-top:50px;display:flex;flex-direction:column;align-items:center;gap:20px}.success-actions .primary-button{width:min(292px,100%);min-height:45px;border-radius:10px;font-size:15px}.success-actions .form-message{width:min(292px,100%);margin:0}.screen-state{display:grid;place-content:center;justify-items:center;gap:12px;background:#fff;color:#666}.spinner{width:34px;height:34px;border:3px solid #f0d4d0;border-top-color:var(--red);border-radius:50%;animation:spin .8s linear infinite}.screen-state p{font-size:13px}@keyframes spin{to{transform:rotate(360deg)}}@media(min-width:751px){.mobile-app,.login-page,.success-page,.screen-state{border-left:1px solid #eee;border-right:1px solid #eee}}@media(max-width:420px){.brand-lockup{margin-left:32px}.hero-art{margin-right:18px}.contract-form label{grid-template-columns:88px minmax(0,1fr) auto}.assessment-choice{grid-template-columns:140px minmax(0,1fr)}.contract-list article{grid-template-columns:32px minmax(0,1fr) 64px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
