/* Readable type and controls, including when external fonts are unavailable. */
:root{--muted:#68766f}
body{font-family:'DM Sans','Segoe UI',Arial,sans-serif;font-size:16px;line-height:1.5}
h1,h2,h3,.brand,.stat>strong{font-family:Manrope,'DM Sans','Segoe UI',Arial,sans-serif}
small,.small{font-size:13px}
.eyebrow,.nav-label{font-size:11px}
.button{font-size:14px;min-height:44px;padding:11px 18px}
label{font-size:14px}
input,select,textarea{font-size:16px}
.sidebar{width:270px;padding:25px 20px 18px}
.main-shell{margin-left:270px}
.brand{font-size:25px}
.workspace{margin:26px 0 23px}
.workspace strong{font-size:14px}
.workspace small{font-size:12px}
.workspace>div{min-width:0;overflow-wrap:anywhere}
.nav-item{font-size:14px;padding:12px;min-height:44px}
.nav-item b{font-size:12px}
.profile strong{font-size:14px}
.profile small{font-size:12px;line-height:1.5}
.profile>div{min-width:0;overflow-wrap:anywhere}
.profile .avatar{width:38px;height:38px;font-size:13px}
.help-card strong,.help-card a{font-size:13px}
.help-card p{font-size:12px}
.topbar{font-size:14px}
.secure-label{display:none}
.topbar>div{gap:15px}
.logout-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:8px 14px;border:1px solid #dce5de;background:white;border-radius:8px;color:#354d40;font-size:14px;font-weight:600;white-space:nowrap}
.logout-button:hover{background:#edf3e9;border-color:#b7cab8}
.logout-button svg{width:18px;height:18px;flex-shrink:0}
.page-heading h1{font-size:34px}
.page-heading p{font-size:15px}
.company-context strong{font-size:17px}
.company-context select,.demo-banner select{font-size:14px;min-height:40px}
.role-badge{font-size:12px}
.demo-banner{font-size:13px;padding:13px 16px}
.demo-banner select{width:190px}
.welcome-panel p{font-size:14px}
.welcome-panel .button{font-size:13px;min-height:42px}
.stat>div{font-size:14px;color:#617165;gap:8px}
.stat>small{font-size:12px;color:#748173}
.stat>strong{font-size:34px}
.section-heading h2{font-size:20px}
.section-heading h2 span{font-size:12px}
.section-heading p{font-size:14px}
.search input{font-size:14px;width:210px;min-height:42px}
.tabs{gap:20px}
.tabs button{font-size:13px;min-height:45px}
.table-toolbar select{font-size:13px;width:130px;min-height:36px}
th,.admin-panel th{font-size:11px;color:#6c7b70;font-weight:600}
td,.admin-panel td{font-size:14px;color:#607065}
.doc-cell strong{font-size:14px}.doc-cell small{font-size:12px}
.status{font-size:12px}.row-open{font-size:13px;min-height:36px;padding:7px 10px}
.table-footer{font-size:12px;gap:15px}
.empty h3{font-size:19px}.empty p,.empty .button{font-size:14px}
.footer,.footer a,.footer button{font-size:12px}
.footer{flex-wrap:wrap}.footer>span:last-child{flex-wrap:wrap}
.context-note,.management-form input,.management-form select{font-size:14px}
.management-form legend,.permission-choice{font-size:14px}
.dialog-heading h2{font-size:22px}.dialog-heading .eyebrow{font-size:11px}
.editor-controls input,.editor-controls select,.editor-controls textarea{font-size:14px}
.control-heading,.control-heading button{font-size:13px}
.field-types button{font-size:12px;min-height:42px}
.journey-step strong{font-size:14px}.journey-step small{font-size:12px}
.viewer-side h3{font-size:16px}.consent{font-size:13px}
.audit-item{font-size:14px}.audit-item small{font-size:12px}
.auth{grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:100vh;background:#fbfcfa}
.auth-story{background:radial-gradient(ellipse at 12% 80%,#275d47 0,transparent 62%),#173e30;color:#fff;padding:44px clamp(32px,5vw,80px);min-height:100vh;overflow:hidden;position:relative}
.auth-story .brand{color:#fff}.auth-story .brand-icon{background:#e6f1d6;color:#214532;box-shadow:none}.auth-story .brand-dot{color:#b8d590}
.auth-story-content{padding:60px 0;max-width:530px;position:relative;z-index:1}
.auth-story .eyebrow{font-size:11px;letter-spacing:2px;color:#b7cdad;margin-bottom:24px}
.auth-story h1{font-size:clamp(38px,3.7vw,56px);line-height:1.17;letter-spacing:-2px;font-weight:650;margin:0 0 24px}
.auth-story h1>span{color:#c5e1a6}.auth-story-content>p{font-size:17px;line-height:1.85;color:#c5d5c9;max-width:435px;margin-bottom:36px}
.auth-workflow{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;border-top:1px solid #ffffff25;border-bottom:1px solid #ffffff25;padding:26px 0}
.auth-workflow>div{display:flex;flex-direction:column;align-items:flex-start}
.auth-workflow span{display:grid;place-items:center;width:32px;height:32px;border:1px solid #a8c69155;border-radius:50%;font-size:12px;color:#c8dfb7;margin-bottom:14px}
.auth-workflow strong{font-size:15px;font-weight:600;margin-bottom:6px}
.auth-workflow small{font-size:12px;color:#b3cbb9;line-height:1.7}
.auth-company-note{display:flex;align-items:center;gap:12px;margin-top:28px}
.auth-company-note>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;color:#c8e6ad;background:#ffffff12;flex-shrink:0}
.auth-company-note p{font-size:13px;color:#bbd0c1;margin:0;line-height:1.7}
.auth-story-footer{display:flex;flex-direction:column;gap:6px;font-size:13px;color:#bdd0c3}
.auth-story-footer strong{font-size:14px;color:#e4ede3}
.auth-form{background:#fbfcfa;padding:38px clamp(25px,4vw,66px);min-width:0}
.auth-top{font-size:13px;letter-spacing:0;color:#708075;text-align:right}
.auth-top a{font-weight:600;color:#285f46;margin-left:8px}
.auth-inner{max-width:440px;margin:48px auto;width:100%}
.auth-kicker{font-size:11px;letter-spacing:1.6px;color:#63806c;font-weight:700;display:block;margin-bottom:14px}
.auth-inner h2{font-size:34px;font-weight:750;line-height:1.2;letter-spacing:-1px;margin-bottom:13px;max-width:390px}
.auth-inner>p{font-size:16px;margin-bottom:30px}
.auth-inner label{font-size:14px;margin-bottom:9px;color:#354d3d;font-weight:600}
.auth-inner input{font-size:16px;padding:14px 15px;min-height:52px;border-radius:9px;border-color:#d8e1d8;background:white;line-height:1.4}
.auth-inner input::placeholder{color:#89958e}
#login-email{margin-bottom:24px}
.auth-inner #setup-fields label,.auth-inner #name-label{margin-bottom:20px}
.password-label{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.password-label span{font-size:12px;color:#7c8a80}
.password-control{position:relative;margin-bottom:24px}
.password-control input{padding-right:75px}
.password-control button{position:absolute;right:7px;top:6px;bottom:6px;border:0;background:transparent;color:#36664a;font-size:13px;font-weight:600;padding:0 12px;border-radius:6px;min-width:58px}
.password-control button:hover{background:#edf3e9}
.auth-inner .button{font-size:15px;min-height:52px;border-radius:9px}
.auth-inner .primary{background:#286348;box-shadow:0 4px 10px #204d2314;justify-content:space-between;padding:13px 20px}
.auth-toggle{font-size:13px!important;line-height:1.8;text-align:left;margin:22px 0!important;color:#728075}
.auth-toggle button{font-size:14px;margin-left:3px;text-decoration:underline;text-underline-offset:3px}
.auth-notice{border:1px solid #cee0cf;background:#eef6eb;color:#3e6644;border-radius:8px;padding:13px 15px;margin:20px 0;font-size:14px;line-height:1.6}
.auth-notice.error{border-color:#ebc7bd;background:#fff2ee;color:#984c3a}
.demo-box{margin:28px 0 22px;padding:20px;background:#f0f4eb;border:1px solid #dfe7d7;border-radius:12px}
.demo-badge{font-size:10px;font-weight:700;letter-spacing:1.2px;background:#dfead5;color:#547045;padding:4px 7px;border-radius:4px;display:inline-block;margin-bottom:10px}
.demo-box strong{display:block;font-size:16px;color:#344c3a}
.demo-box p{font-size:14px;line-height:1.7;margin:7px 0 16px}
.demo-box .button{min-height:46px;font-size:14px;justify-content:space-between}
.login-help{border-top:1px solid #e2e8df;padding-top:20px;font-size:13px;color:#6e7d73;line-height:1.7}
.login-help>span{font-weight:600;color:#4f6254}.login-help p{font-size:13px;margin:5px 0 0}.login-help a{color:#2c6748;text-decoration:underline;text-underline-offset:3px}
.auth-bottom{display:flex;justify-content:center;flex-wrap:wrap;gap:12px 20px;font-size:12px;color:#7a897c;text-align:center}
.auth-bottom button{font-size:12px}
.auth.setup-mode .auth-story{justify-content:flex-start}.auth.setup-mode .auth-story-content{padding-top:110px}.auth.setup-mode .auth-story-footer{margin-top:auto;padding-top:40px}
@media(max-width:1150px){.sidebar{width:245px;padding:24px 15px}.main-shell{margin-left:245px}.content{padding:25px}.stats{gap:12px}.stat{padding:16px}.stat>div{font-size:13px}.table-toolbar{flex-wrap:wrap;gap:5px}.auth-story{padding:35px}.auth-form{padding:35px}.auth-workflow{gap:12px}.auth-inner h2{font-size:31px}.footer>span:last-child{gap:12px}}
@media(max-width:800px){.sidebar{width:76px;padding:22px 12px}.main-shell{margin-left:76px}.sidebar .brand{font-size:0}.sidebar .nav-item{font-size:0}.sidebar .nav-item>span{font-size:22px}.sidebar .profile{display:none}.sidebar nav{margin-top:24px;min-height:0}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar{padding:0 18px}.topbar>div{gap:8px}.topbar .avatar{display:none}.logout-button{font-size:13px;padding:8px 10px;min-height:40px}.auth{display:flex;flex-direction:column}.auth-story{min-height:0;padding:26px 28px 32px}.auth-story-content{padding:28px 0 0;max-width:none}.auth-story h1{font-size:34px;letter-spacing:-1px;margin-bottom:14px}.auth-story h1 br:first-child{display:none}.auth-story .eyebrow,.auth-workflow,.auth-company-note,.auth-story-footer{display:none}.auth-story-content>p{font-size:15px;margin:0;max-width:550px}.auth-form{padding:26px 24px 24px}.auth-top{display:block;text-align:center;font-size:13px}.auth-inner{margin:34px auto}.auth-inner h2{font-size:31px}.auth.setup-mode .auth-story-content{padding:28px 0 0}.auth.setup-mode .auth-story-footer{display:none}.page-heading h1{font-size:29px}.section-heading{align-items:flex-start}.role-badge{font-size:11px}.demo-banner{font-size:13px}.dialog-heading .button{font-size:12px}.section-heading p{font-size:13px}}
@media(max-width:500px){.content{padding:22px 15px 0}.topbar{height:68px;font-size:12px;padding:0 12px}.breadcrumb{margin:0 7px}.topbar>span{min-width:0}.topbar>span>.muted,.breadcrumb{display:none}.logout-button{font-size:13px}.page-heading{gap:12px;flex-wrap:wrap}.page-heading h1{font-size:28px}.page-heading .eyebrow{font-size:10px}.page-heading p{font-size:14px}.page-heading .button{font-size:13px;min-height:42px}.stats{gap:10px}.stat{padding:12px}.stat>div{font-size:12px;align-items:flex-start}.stat-icon{width:24px;height:24px;flex-shrink:0}.stat>strong{font-size:29px}.stat>small{font-size:11px}.section-heading{padding:20px 15px}.section-heading h2{font-size:19px}.search{width:100%}.search input{width:100%}.tabs{gap:16px}.tabs button{font-size:12px}.footer,.footer a,.footer button{font-size:11px}.auth-story{padding:23px 24px 28px}.auth-story h1{font-size:30px;line-height:1.22}.auth-story-content>p{font-size:14px}.auth-form{padding:25px 22px}.auth-inner{margin:30px auto}.auth-inner h2{font-size:30px}.auth-inner>p{font-size:15px}.auth-inner input{font-size:16px}.auth-bottom{font-size:12px;gap:10px 15px}.password-label span{display:none}.demo-box{padding:18px}.management-form input,.management-form select{font-size:16px}}
@media(max-width:800px){.auth-story>.auth-story-content{margin:0}.auth-story h1 br:first-child{display:initial}}
@media(max-width:600px){.auth-story>.auth-story-content{display:none}.auth-story{padding:22px 24px}.auth-form{padding-top:24px}}

/* Compact sign-in page: keep the form and demo link together. */
.auth{min-height:100svh}
.auth-story{min-height:100svh;padding:28px clamp(32px,5vw,80px)}
.auth-story>.auth-story-content{padding:24px 0;margin:0}
.auth-story-content>p{margin-bottom:0;line-height:1.65}
.auth-form{padding:22px clamp(25px,4vw,66px);gap:18px}
.auth-inner{margin:auto;max-width:440px}
.auth-kicker{margin-bottom:8px}
.auth-inner h2{font-size:30px;margin-bottom:8px;max-width:none}
.auth-inner>p{margin-bottom:20px}
.auth-inner label{margin-bottom:7px}
.auth-inner #login-email{margin-bottom:16px}
.auth-inner .password-control{margin-bottom:18px}
.auth-inner .auth-toggle{margin:14px 0!important;font-size:12px!important}
.auth-demo-link{justify-content:space-between}
@media(max-width:800px){
 .auth-story{min-height:0;padding:18px 24px}
 .auth-story>.auth-story-content,.auth-story-footer{display:none}
 .auth-form{flex:1;padding:18px 24px;gap:18px}
 .auth-inner{margin:auto}
 .auth-top{font-size:12px}
 .auth-inner h2{font-size:28px}
 .auth-bottom{gap:8px 14px}
}

.auth-inner .remember-choice{display:flex;align-items:center;gap:9px;margin:0 0 16px;font-size:13px;font-weight:400;cursor:pointer}
.auth-inner .remember-choice input{width:17px;height:17px;min-height:0;margin:0;padding:0;accent-color:var(--green)}

.nav-item>.menu-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:22px;height:22px}.menu-icon svg{display:block}

/* Navigation uses the full sidebar height. */
.sidebar nav{margin-top:0;flex:1;min-height:0;overflow-y:auto}

.company-brand{display:flex;align-items:center;gap:12px;padding:4px 0 22px;margin-bottom:14px;border-bottom:1px solid var(--line);font-size:17px;font-weight:700;line-height:1.35}
.company-logo{display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex-shrink:0;border-radius:10px;background:#eaf2df;color:#286348;font-size:18px;overflow:hidden}
.company-logo img{width:100%;height:100%;object-fit:contain;background:white}
#sidebar-company-name{overflow-wrap:anywhere;min-width:0}
@media(max-width:800px){.company-brand{flex-direction:column;gap:6px;padding-bottom:14px;font-size:10px;text-align:center}.company-logo{width:40px;height:40px}#sidebar-company-name{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}

/* Focused screens: forms, current context and actions. */
.auth{display:flex;flex-direction:column;max-width:560px;margin:0 auto;background:#fbfcfa}
.auth-story{min-height:0;padding:24px 28px;background:transparent;color:var(--ink)}
.auth-story .brand{color:var(--ink)}
.auth-form{flex:1;padding:12px 28px 24px}
.auth-inner{max-width:440px}
.auth-inner h2{margin-bottom:24px}
.document-history{margin-top:20px}.document-history summary{cursor:pointer;font-weight:600;font-size:14px}

.signing-order-choice{display:flex;align-items:center;gap:9px;margin-top:16px}.signing-order-choice input{width:17px;min-height:0;margin:0;flex-shrink:0}#signing-order-help{margin:7px 0 14px}.signer-row [data-move]{padding:4px 6px;min-width:26px}

.account-identity{display:flex;flex-direction:column;gap:3px;min-width:0;text-align:right}.account-identity small{overflow-wrap:anywhere;color:var(--muted,#65766f)}
@media(max-width:600px){.topbar{flex-wrap:wrap;height:auto;gap:12px;padding:14px 18px}.topbar>div{max-width:100%;flex-wrap:wrap}.account-identity{max-width:210px}}
