:root{--navy:#052b53;--navy-2:#0c3b69;--navy-3:#164d7d;--cream:#f8f3e8;--cream-2:#efe6d5;--cream-3:#fffdf8;--ink:#1f2a36;--muted:#68717c;--line:#ddd2bf;--success:#226545;--danger:#a83b4b;--shadow:0 12px 34px #052b5317}*{box-sizing:border-box}body{background:var(--cream);color:var(--ink);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}main{max-width:1480px;margin:0 auto;padding:0 32px 70px}.topbar{align-items:center;gap:20px;min-height:116px;padding:20px 0;display:flex}.brandLogo{object-fit:contain;object-position:left center;width:138px;height:74px}.titleBlock{border-left:1px solid var(--line);padding-left:20px}.topbar h1,.clientHeader h1{color:var(--navy);margin:3px 0 0;font-size:22px}.eyebrow{color:var(--navy-3);letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:10px;font-weight:900}.draftBadge,.readonlyBadge{background:var(--cream-3);color:var(--navy);letter-spacing:.03em;border:1px solid #d5c6ab;border-radius:99px;margin-left:auto;padding:8px 13px;font-size:11px;font-weight:800}.staffSession{color:var(--muted);align-items:center;gap:10px;margin-left:auto;font-size:12px;display:flex}.staffSession strong{color:var(--navy)}.hero{background:linear-gradient(135deg, var(--navy), #0a3b6d);color:#fff;border-radius:24px;align-items:center;gap:36px;padding:38px;display:flex;position:relative;overflow:hidden;box-shadow:0 20px 52px #052b532e}.hero:after{content:"";border:55px solid #f8f3e814;border-radius:50%;width:280px;height:280px;position:absolute;top:-130px;right:-110px}.hero>*{z-index:1;position:relative}.hero>div{flex:1}.hero .eyebrow{color:#e7dbc5}.hero h2{max-width:900px;margin:10px 0 14px;font-family:Georgia,Times New Roman,serif;font-size:clamp(32px,4vw,53px);font-weight:500;line-height:1.06}.hero p:not(.eyebrow){color:#e9edf3;max-width:830px;margin:0;line-height:1.65}.primary,.secondary{white-space:nowrap;border:1px solid #0000;border-radius:10px;padding:12px 17px;font-weight:800;transition:transform .15s,background .15s,border-color .15s}.primary{background:var(--navy);color:#fff;border-color:var(--navy)}.hero .primary{background:var(--cream);border-color:var(--cream);color:var(--navy)}.primary:hover,.secondary:hover{transform:translateY(-1px)}.primary:hover{background:var(--navy-2)}.hero .primary:hover{background:#fff}.primary:disabled,.secondary:disabled{opacity:.45;cursor:not-allowed;transform:none}.secondary{background:var(--cream-3);color:var(--navy);border-color:#cfc0a5}.secondary:hover{border-color:var(--navy)}.small{padding:10px 14px}.panel{background:var(--cream-3);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:18px;margin-top:20px}.detailsPanel{padding:24px}.sectionHeading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:22px 24px;display:flex}.sectionHeading>div:first-child{align-items:center;gap:12px;display:flex}.sectionHeading h3,.modal h3{color:var(--navy);margin:0;font-size:20px}.step{background:var(--navy);color:var(--cream);border-radius:8px;place-items:center;width:30px;height:30px;margin:0;font-weight:900;display:grid}.formGrid{grid-template-columns:2fr 1.2fr 1fr 1fr 1.2fr;gap:14px;margin-top:18px;display:grid}label{color:#4f5d6b;font-size:12px;font-weight:800}input,select,textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #cec1aa;border-radius:9px;margin-top:6px;padding:10px 11px}input:focus,select:focus,textarea:focus{border-color:var(--navy-2);outline:3px solid #0c3b6921}.frequency{border-top:1px solid var(--line);align-items:center;gap:8px;margin-top:20px;padding-top:18px;display:flex}.frequency span{color:var(--muted);margin-right:4px;font-size:12px;font-weight:800}.frequency button{color:var(--navy);background:#fff;border:1px solid #cdbfa6;border-radius:9px;padding:9px 14px;font-weight:800}.frequency button.selected{background:var(--navy);color:#fff;border-color:var(--navy)}.summaryGrid{grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0;display:grid}.summaryGrid article{background:var(--cream-3);border:1px solid var(--line);border-radius:15px;padding:18px;position:relative;overflow:hidden;box-shadow:0 5px 20px #052b530d}.summaryGrid article:before{content:"";background:var(--navy);width:4px;position:absolute;inset:0 auto 0 0}.summaryGrid span{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:11px;font-weight:900;display:block}.summaryGrid strong{color:var(--navy);margin-top:6px;font-size:25px;display:block}.summaryGrid .positive strong{color:var(--success)}.summaryGrid .negative strong{color:var(--danger)}.actions{gap:9px;display:flex}.empty{text-align:center;color:var(--muted);padding:55px}.empty strong{color:var(--navy);margin-bottom:7px;font-size:18px;display:block}.tableWrap,.previewTable{overflow:auto}table{border-collapse:collapse;width:100%}th{text-align:left;background:var(--navy);color:#fff;letter-spacing:.07em;text-transform:uppercase;padding:12px 11px;font-size:10px}td{vertical-align:top;border-top:1px solid #e6dccb;min-width:100px;padding:10px 8px}tbody tr:nth-child(2n){background:#fbf7ef}td:nth-child(3){min-width:240px}td input,td select{min-width:80px;margin-top:0}.tiny{margin-right:5px;width:46px!important}.inline{gap:5px;display:flex}.inline input{min-width:105px}.subInput{margin-top:5px}small{color:var(--muted);margin-top:5px;font-size:11px;display:block}.ratio{width:68px!important}.check{align-items:center;gap:5px;margin-top:7px;display:flex}.check input{width:auto;margin:0}.moneyInput{background:#fff;border:1px solid #cec1aa;border-radius:9px;align-items:center;padding-left:8px;display:flex}.moneyInput input{border:0}.iconButton{color:#9b3041;background:#f4e5e6;border:0;border-radius:8px;width:32px;height:32px;font-size:20px}.mutedRow{opacity:.58;background:#f3efe7!important}.accessPanel,.finishPanel,.savePanel{justify-content:space-between;align-items:center;gap:24px;padding:24px;display:flex}.accessPanel h3,.savePanel h3,.finishPanel h3{color:var(--navy);margin:4px 0}.accessPanel p,.savePanel p,.finishPanel p{color:var(--muted);margin:0}.codeControls{align-items:center;gap:8px;display:flex}.codeControls select{min-width:300px;margin:0}.textButton{color:var(--navy-2);background:0 0;border:0;padding:8px;font-weight:800}.dangerButton{color:#9b3041;white-space:nowrap;background:#fff6f7;border:1px solid #d9aeb4;border-radius:9px;padding:9px 13px;font-weight:800}.dangerButton:hover{background:#f8e6e9;border-color:#9b3041}.dangerButton:disabled{opacity:.45;cursor:not-allowed}.alert{color:#765b16;background:#fff5db;border:1px solid #edd7a2;border-radius:10px;max-width:100%;margin:14px 0;padding:12px 15px}.alert.error{color:#8f2940;background:#f9e9eb;border-color:#ecc8ce}.alert.success{color:#185d3c;background:#e8f3ec;border-color:#bfd9c9}.modalBackdrop{z-index:50;background:#051f3ac2;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.modal{background:var(--cream-3);border-radius:22px;width:min(1050px,100%);max-height:90vh;padding:28px;overflow:auto;box-shadow:0 30px 90px #0006}.modal h3{margin-top:6px;font-family:Georgia,Times New Roman,serif;font-size:29px}.modalIntro,.moreRows{color:var(--muted)}.mapping{background:var(--cream);border:1px solid var(--line);border-radius:12px;flex-wrap:wrap;gap:7px;margin:18px 0;padding:14px;display:flex}.mapping h4{width:100%;color:var(--navy);margin:0 0 5px}.mapping span{border:1px solid var(--line);background:#fff;border-radius:8px;padding:7px 9px;font-size:12px}.worksheetModal{width:min(720px,100%)}.worksheetPicker{color:var(--navy);margin-top:22px;font-weight:700;display:block}.worksheetList{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin-top:14px;display:grid}.worksheetList button{border:1px solid var(--line);color:var(--ink);text-align:left;background:#fff;border-radius:10px;flex-direction:column;align-items:flex-start;gap:4px;padding:13px 14px;display:flex}.worksheetList button span{color:var(--muted);font-size:12px}.worksheetList button.selected{border-color:var(--navy);background:#edf3f8;box-shadow:0 0 0 2px #0c3b691f}.modalActions{justify-content:flex-end;gap:9px;margin-top:20px;display:flex}@media (width<=1000px){.summaryGrid{grid-template-columns:1fr 1fr}.signingGrid{grid-template-columns:1fr}}@media (width<=900px){main{padding:0 15px 50px}.hero{display:block}.hero button{margin-top:24px}.formGrid{grid-template-columns:1fr 1fr}.sectionHeading,.finishPanel,.savePanel,.accessPanel{flex-direction:column;align-items:flex-start;gap:14px}.draftBadge,.staffSession span{display:none}.codeControls{flex-wrap:wrap;width:100%}.codeControls select{flex:1;min-width:220px}}@media (width<=540px){.formGrid,.summaryGrid{grid-template-columns:1fr}.topbar{gap:12px;min-height:92px}.brandLogo{width:105px;height:58px}.titleBlock{padding-left:12px}.topbar h1{font-size:17px}.hero{padding:25px}.actions{flex-wrap:wrap;width:100%}.actions button{flex:1}.frequency{flex-direction:column;align-items:stretch}}@media print{body{background:#fff}main{max-width:none;padding:0}.topbar,.hero button,.actions,.iconButton,.draftBadge,.accessPanel,.savePanel{display:none!important}.hero{color:var(--navy);box-shadow:none;background:#fff;padding:15px 0}.hero p{color:#555!important}.panel{box-shadow:none;break-inside:avoid}.tableWrap{overflow:visible}input,select{appearance:none;border:0;padding:0}}.clientShell{background:radial-gradient(circle at top, #fffdf8 0, var(--cream) 52%, #efe6d6 100%);place-items:center;min-height:100vh;padding:24px;display:grid}.clientCard{background:var(--cream-3);border:1px solid var(--line);text-align:center;border-radius:24px;width:min(640px,100%);padding:42px;box-shadow:0 26px 75px #052b5326}.clientLogo{width:min(245px,70%);height:auto;margin:0 auto 24px;display:block}.clientCard h1{color:var(--navy);margin:8px 0 14px;font-family:Georgia,Times New Roman,serif;font-size:34px;font-weight:500}.clientCard p{color:var(--muted);line-height:1.7}.loginCard{width:min(600px,100%)}.loginForm{text-align:left;gap:15px;max-width:440px;margin:26px auto 0;display:grid}.loginForm .primary{width:100%;margin-top:2px}.loginForm .alert{margin:0}.passwordHint{color:var(--muted);margin:-4px 0 2px;line-height:1.5}.microsoftButton{justify-content:center;align-items:center;gap:12px;width:min(440px,100%);margin:24px auto 0;text-decoration:none;display:flex}.microsoftMark{grid-template-rows:repeat(2,8px);grid-template-columns:repeat(2,8px);gap:2px;width:18px;height:18px;display:grid}.microsoftMark i{background:#f25022;display:block}.microsoftMark i:nth-child(2){background:#7fba00}.microsoftMark i:nth-child(3){background:#00a4ef}.microsoftMark i:nth-child(4){background:#ffb900}.microsoftAlert{text-align:left;max-width:440px;margin:18px auto 0}.clientAccessNote{border:1px solid var(--line);background:var(--cream);text-align:left;border-radius:12px;max-width:440px;margin:28px auto 0;padding:16px 18px}.clientAccessNote strong{color:var(--navy)}.clientAccessNote p{margin:4px 0 0;font-size:13px;line-height:1.55}.linkButton{margin-top:14px;text-decoration:none;display:inline-block}.helpText{font-size:13px;margin-top:25px!important}.helpText a{color:var(--navy-2);font-weight:800}.spinner{border:4px solid var(--cream-2);border-top-color:var(--navy);border-radius:50%;width:38px;height:38px;margin:0 auto 18px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.clientReview{max-width:1280px}.clientHeader{align-items:center;gap:18px;min-height:116px;padding:20px 0;display:flex}.clientHeader .brandLogo{width:136px}.clientHeader>div{border-left:1px solid var(--line);padding-left:18px}.reviewIntro{background:linear-gradient(135deg,var(--navy),#0b416f);color:#fff;border-radius:22px;padding:34px;position:relative;overflow:hidden;box-shadow:0 18px 45px #052b5329}.reviewIntro:after{content:"";border:44px solid #f8f3e814;border-radius:50%;width:220px;height:220px;position:absolute;top:-100px;right:-95px}.reviewIntro .eyebrow{color:#e7dbc5;margin-bottom:9px}.reviewIntro h2{z-index:1;margin:0 0 8px;font-family:Georgia,Times New Roman,serif;font-size:35px;font-weight:500;position:relative}.reviewIntro p:not(.eyebrow){z-index:1;color:#e4ebf2;max-width:880px;margin:0;line-height:1.65;position:relative}.clientSummary{margin-top:16px}.signingGrid{grid-template-columns:1fr 1.4fr;gap:28px;padding:24px;display:grid}.signingGrid p{color:var(--muted);line-height:1.65}.signingGrid canvas{touch-action:none;background:#fff;border:1px dashed #aa9b82;border-radius:12px;width:100%;height:145px;margin-top:6px;display:block}.changesPanel{padding:24px}.changesPanel h3{color:var(--navy);margin-top:0}.changesPanel p{color:var(--muted)}textarea{resize:vertical;min-height:130px;margin:10px 0}.clientActions{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--line);background:#fffdf8f2;border-radius:16px;justify-content:flex-end;gap:10px;margin-top:20px;padding:14px;display:flex;position:sticky;bottom:14px;box-shadow:0 14px 40px #052b532e}.inviteContent{grid-template-columns:1fr auto;align-items:center;gap:24px;padding:24px;display:grid}.inviteContent p{color:var(--muted);margin-top:0;line-height:1.65}.inviteContent label{max-width:520px;display:block}.inviteLink{grid-template-columns:1fr auto;align-items:end;gap:8px;margin-top:16px;display:grid}.inviteLink span{color:var(--navy-2);text-transform:uppercase;letter-spacing:.06em;grid-column:1/-1;font-size:11px;font-weight:900}.inviteLink input{margin:0}.successCard{border-color:#afcdbd}@media (width<=700px){.clientReview{padding:0 12px 45px}.clientHeader{gap:10px;min-height:95px}.clientHeader .brandLogo{width:105px}.clientHeader>div{padding-left:10px}.clientHeader h1{font-size:17px}.readonlyBadge{display:none}.reviewIntro{padding:25px}.inviteContent{grid-template-columns:1fr}.clientActions{flex-direction:column}.clientActions button{width:100%}.clientCard{padding:32px 22px}}
