:root{--ink:#102235;--muted:#667789;--line:#dbe4ec;--navy:#112d46;--blue:#2771c7;--bg:#f4f7fa;--panel:#fff;--warning:#fff8e8;--warning-line:#e6ad32}*{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline-offset:3px;outline:3px solid #2771c76b}.auth-shell{background:radial-gradient(circle at 0 0,#e6f0fa,#0000 35%),linear-gradient(135deg,#f8fafc,#eaf0f5);place-items:center;min-height:100vh;padding:24px;display:grid}.auth-panel{border:1px solid var(--line);background:#fff;border-radius:18px;width:min(440px,100%);padding:36px;box-shadow:0 24px 70px #122d461f}.brand-mark{color:#fff;background:var(--navy);border-radius:12px;place-items:center;width:48px;height:48px;margin-bottom:24px;display:grid}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-weight:800;color:var(--blue)!important;margin:0 0 7px!important;font-size:11px!important}h1,h2,p{margin-top:0}h1{letter-spacing:-.03em;margin-bottom:10px;font-size:30px}h2{margin-bottom:0;font-size:19px}.muted,.page-heading p{color:var(--muted);line-height:1.55}.auth-form{gap:17px;margin-top:28px;display:grid}.auth-form label{gap:7px;font-size:13px;font-weight:700;display:grid}.auth-form input{border:1px solid #cbd6df;border-radius:9px;outline:none;width:100%;padding:12px 13px}.password-field{display:block;position:relative}.password-field input{padding-right:46px}.password-toggle{width:36px;height:36px;color:var(--muted);background:0 0;border:0;border-radius:7px;place-items:center;display:grid;position:absolute;top:4px;right:4px}.password-toggle:hover{color:var(--navy);background:#eef3f7}.auth-form input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #2771c721}.auth-form button,.primary-action{background:var(--navy);color:#fff;border:0;border-radius:9px;justify-content:center;align-items:center;gap:9px;padding:12px 16px;font-weight:750;display:flex}.form-error{color:#a32b2b;margin:0;font-size:13px}.form-success{color:#176d43;background:#edf8f2;border:1px solid #b8e1ca;border-radius:8px;margin:0;padding:10px 12px;font-size:13px}.auth-link{color:var(--blue);justify-self:end;font-size:13px;font-weight:700;text-decoration:none}.auth-link:hover{text-decoration:underline}.auth-link-centered{text-align:center;margin-top:20px;display:block}.mfa-setup{justify-items:center;gap:12px;margin-top:20px;display:grid}.mfa-setup p{text-align:center;margin-bottom:0}.mfa-setup img{border:1px solid var(--line);background:#fff;border-radius:10px;padding:8px}.mfa-setup details{width:100%;color:var(--muted);font-size:12px}.mfa-setup code{overflow-wrap:anywhere;color:var(--ink);background:#eef3f7;border-radius:7px;margin-top:8px;padding:9px;display:block}.security-note{color:var(--muted);text-align:center;margin:20px 0 0;font-size:12px}.app-shell{grid-template-columns:244px 1fr;min-height:100vh;display:grid}.sidebar{color:#fff;background:linear-gradient(#102f4b 0%,#0b2238 100%);flex-direction:column;padding:22px 16px;display:flex}.sidebar-brand{border-bottom:1px solid #ffffff1f;align-items:center;gap:11px;padding:2px 6px 25px;display:flex}.sidebar-brand span{gap:2px;display:grid}.sidebar-brand small{color:#aebdcc}.sidebar nav{gap:5px;margin-top:20px;display:grid}.sidebar nav a{color:#dce6ef;border-radius:8px;align-items:center;gap:11px;padding:11px 12px;font-size:14px;text-decoration:none;display:flex}.sidebar nav a:hover,.sidebar nav a[aria-current=page]{color:#fff;background:#ffffff1f}.sidebar nav a[aria-current=page]{box-shadow:inset 3px 0 #68b6ff}.sidebar-footer{border-top:1px solid #ffffff1f;margin-top:auto;padding:16px 5px 0}.sidebar-footer p{color:#aebdcc;font-size:11px}.sidebar-footer button{color:#dce6ef;background:0 0;border:0;align-items:center;gap:8px;padding:0;display:flex}.app-content{min-width:0}.topbar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);z-index:10;background:#fffffff0;justify-content:space-between;align-items:center;height:68px;padding:0 28px;display:flex;position:sticky;top:0}.topbar p{margin:0 0 3px;font-size:13px;font-weight:800}.topbar span{color:var(--muted);font-size:11px}.status-pill{background:#e9f7ef;border:1px solid #b8e1ca;border-radius:999px;padding:6px 10px;font-weight:800;color:#176d43!important}.workspace-main{max-width:1440px;margin:auto;padding:30px}.page-stack{gap:24px;display:grid}.page-heading{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.page-heading h1{margin-bottom:7px}.page-heading p{max-width:720px;margin-bottom:0}.setup-banner{border:1px solid #efd28f;border-left:4px solid var(--warning-line);background:var(--warning);border-radius:9px;gap:13px;padding:15px 17px;display:flex}.setup-banner svg{color:#9b6300;flex:none}.setup-banner p{color:#6f5c35;margin:4px 0 0;font-size:13px}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.stat-card,.panel,.empty-state{background:var(--panel);border:1px solid var(--line);border-radius:14px}.stat-card{gap:8px;padding:18px;display:grid;box-shadow:0 1px 2px #10223508}.stat-card span,.stat-card small{color:var(--muted);font-size:12px}.stat-card strong{letter-spacing:-.035em;font-size:25px}.stat-card-link{color:inherit;cursor:pointer;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s}.stat-card-link:hover{border-color:var(--blue);transform:translateY(-1px);box-shadow:0 8px 20px #122d4614}.stat-card-link:focus-visible{outline-offset:3px;outline:3px solid #2771c759}.content-grid{grid-template-columns:1.25fr 1fr;gap:16px;display:grid}.panel{padding:22px;box-shadow:0 8px 24px #10223509}.panel-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;padding-bottom:17px;display:flex}.panel-heading svg{color:var(--blue)}.workflow-list,.readiness-list{gap:13px;margin:18px 0 0;padding:0;list-style:none;display:grid}.workflow-list li,.readiness-list li{align-items:center;gap:10px;font-size:14px;display:flex}.workflow-list svg{color:#2e8b62}.readiness-list span{background:#d6dee6;border-radius:50%;width:9px;height:9px}.text-action{color:var(--blue);background:0 0;border:0;align-items:center;gap:7px;padding:20px 0 0;font-weight:750;display:flex}.empty-state{text-align:center;color:var(--muted);padding:46px}.empty-state strong{color:var(--ink);margin-bottom:8px;display:block}.action-link{text-decoration:none}.notice-success,.notice-error{border-radius:9px;margin:0;padding:12px 14px;font-size:13px;font-weight:700}.notice-success{color:#176d43;background:#edf8f2;border:1px solid #b8e1ca}.notice-error{color:#922d2d;background:#fff1f1;border:1px solid #efc1c1}.notice-warning{color:#75520b;background:#fff8e8;border:1px solid #f5ca7b;border-radius:9px;margin:0;padding:12px 14px;font-size:13px;font-weight:700}.client-stats .stat-word{font-size:21px}.client-form-panel{padding:0;overflow:hidden}.client-form-panel .panel-heading{padding:22px}.form-hint{color:var(--muted);font-size:12px}.client-form{gap:0;display:grid}.client-form fieldset{border:0;border-top:1px solid var(--line);margin:0;padding:22px}.client-form legend{padding:0 8px 0 0;font-size:14px;font-weight:800}.conditional-section{background:#f5f9fd;border-left:4px solid var(--blue)!important}.section-help{color:var(--muted);margin:0 0 16px;font-size:12px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.form-grid label{color:#34485b;gap:7px;font-size:12px;font-weight:750;display:grid}.form-grid input,.form-grid select,.form-grid textarea,.client-toolbar input,.client-toolbar select{width:100%;color:var(--ink);background:#fff;border:1px solid #cbd6df;border-radius:8px;outline:none;padding:10px 11px}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.client-toolbar input:focus,.client-toolbar select:focus{border-color:var(--blue);box-shadow:0 0 0 3px #2771c71f}.form-grid textarea{resize:vertical}.span-2{grid-column:span 2}.form-grid label small{color:var(--muted);font-size:11px;font-weight:500}.masked-tax-id{background:#fff;border:1px solid #cbd6df;border-radius:8px;align-items:center;display:flex;overflow:hidden}.masked-tax-id span{color:#667789;letter-spacing:.06em;white-space:nowrap;padding-left:11px;font-size:14px}.masked-tax-id input{min-width:0;box-shadow:none!important;border:0!important;padding-left:3px!important}.masked-tax-id:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px #2771c71f}.form-actions{border-top:1px solid var(--line);justify-content:flex-end;gap:10px;padding:18px 22px 22px;display:flex}.secondary-action{color:var(--ink);background:#fff;border:1px solid #cbd6df;border-radius:8px;padding:10px 14px;font-weight:750;text-decoration:none;transition:border-color .15s,background .15s,box-shadow .15s}.secondary-action:hover{background:#f6faff;border-color:#8db6df;box-shadow:0 3px 10px #1022350f}.primary-action{transition:background .15s,transform .15s,box-shadow .15s}.primary-action:hover:not(:disabled){background:#174e79;transform:translateY(-1px);box-shadow:0 7px 16px #112d4633}.client-list-panel{padding:0;overflow:hidden}.client-toolbar{border-bottom:1px solid var(--line);grid-template-columns:minmax(220px,1fr) 190px auto;gap:10px;padding:17px 20px;display:grid}.search-field{position:relative}.search-field svg{color:var(--muted);position:absolute;top:11px;left:11px}.search-field input{padding-left:36px}.client-table-wrap{overflow:auto}.client-table{border-collapse:collapse;width:100%;font-size:13px}.client-table th{color:var(--muted);text-align:left;text-transform:uppercase;letter-spacing:.05em;background:#f8fafc;padding:11px 16px;font-size:11px}.client-table td{border-top:1px solid var(--line);vertical-align:middle;padding:14px 16px}.client-table td span,.client-table td small{display:block}.client-table td small{color:var(--muted);margin-top:4px}.client-name{align-items:center;gap:9px;min-width:170px;display:flex}.client-name svg{color:var(--blue)}.client-status{text-transform:capitalize;border-radius:999px;width:max-content;padding:5px 8px;font-size:11px;font-weight:800;display:inline-block!important}.status-active{color:#176d43;background:#e9f7ef}.status-prospect{color:#175b96;background:#e9f3fd}.status-inactive{color:#6c5b2a;background:#f7f1df}.status-archived{color:#5f6872;background:#edf0f2}.secure-badge{color:#176d43;white-space:nowrap;background:#e9f7ef;border:1px solid #b8e1ca;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-size:12px;font-weight:800;display:flex}.document-grid{grid-template-columns:1.35fr .8fr}.upload-panel{padding:0;overflow:hidden}.upload-panel .panel-heading{padding:22px}.document-form{gap:17px;padding:22px;display:grid}.document-security-strip{color:#175b96;background:#eef6fd;border:1px solid #c9dff4;border-radius:8px;align-items:center;gap:9px;padding:11px 12px;font-size:12px;font-weight:750;display:flex}.document-form .form-grid input,.document-form .form-grid select{width:100%;color:var(--ink);background:#fff;border:1px solid #cbd6df;border-radius:8px;padding:10px 11px}.document-form input[type=file]{padding:8px}.upload-help{color:var(--muted);margin:-5px 0 0;font-size:12px}.document-submit{justify-self:end}.notice-success svg{vertical-align:middle;margin-right:6px}.inline-action{width:max-content;margin:16px auto 0}.security-steps{gap:17px;margin:18px 0 0;padding:0;list-style:none;display:grid}.security-steps li{grid-template-columns:92px 1fr;gap:8px;font-size:12px;display:grid}.security-steps span{color:var(--muted);line-height:1.45}.document-list-heading{padding:20px 22px}.document-status{text-transform:capitalize;border-radius:999px;width:max-content;padding:5px 8px;font-size:11px;font-weight:800;display:inline-block!important}.document-quarantine{color:#805c0d;background:#fff3cd}.document-blocked{color:#922d2d;background:#fff1f1}.document-ready,.document-complete{color:#176d43;background:#e9f7ef}.document-validating,.document-processing,.document-needs_review{color:#175b96;background:#e9f3fd}.upload-link-notice{background:#edf8f2;border:1px solid #b8e1ca;border-radius:10px;justify-content:space-between;align-items:center;gap:18px;padding:15px 17px;display:flex}.upload-link-notice p{color:#175b96;overflow-wrap:anywhere;margin:6px 0;font-size:12px}.upload-link-notice .secure-request-label{color:var(--ink);overflow-wrap:normal;align-items:center;gap:7px;font-size:14px;font-weight:800;display:flex}.upload-link-notice small{color:var(--muted)}.upload-link-notice button{white-space:nowrap;align-items:center;gap:7px;display:flex}.public-upload-panel{width:min(520px,100%)}.public-upload-form{gap:16px;margin-top:24px;display:grid}.public-upload-form label{gap:8px;font-size:13px;font-weight:800;display:grid}.public-upload-form input[type=file]{background:#fff;border:1px solid #cbd6df;border-radius:9px;padding:11px}.public-upload-form small{color:var(--muted)}.public-upload-form .primary-action{width:100%}.expired-icon{color:var(--blue);margin-bottom:14px}@media (max-width:960px){.app-shell{grid-template-columns:76px 1fr}.sidebar-brand span,.sidebar-footer{display:none}.sidebar nav a:not(:has(svg)) span{display:none}.sidebar nav a{justify-content:center}.stats-grid{grid-template-columns:repeat(2,1fr)}.content-grid{grid-template-columns:1fr}}@media (max-width:640px){.workspace-main{padding:20px}.stats-grid{grid-template-columns:1fr}.page-heading{display:grid}.app-shell{grid-template-columns:1fr}.sidebar{display:none}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.client-toolbar{grid-template-columns:1fr}.form-hint{display:none}.upload-link-notice{flex-direction:column;align-items:stretch}}.page-heading .document-actions{justify-content:flex-end}.client-table tbody tr{transition:background .14s}.client-table tbody tr:hover{background:#f7fbff}.client-table td:first-child{font-weight:700}.document-status{letter-spacing:.02em}.notice-row-summary{transition:background .15s}.notice-row-summary:hover{background:#f7fbff}.ai-chat-log{background:linear-gradient(#fbfdff,#f5f9fd)}.client-file-link{color:inherit;text-decoration:none}.client-file-link:hover strong{color:var(--blue);text-decoration:underline}.client-document-card{scroll-margin-top:2rem}.notice-row{padding:0;overflow:hidden}.notice-row-summary{cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1.1rem;list-style:none;display:flex}.notice-row-summary::-webkit-details-marker{display:none}.notice-row-summary h2{align-items:center;gap:.4rem;margin:.22rem 0;font-size:1rem;display:flex}.notice-row-summary p{margin:0;font-size:.84rem}.notice-row-toggle{border:1px solid var(--line);color:var(--blue);border-radius:999px;padding:.36rem .68rem;font-size:.78rem;font-weight:750}.notice-row[open] .notice-row-toggle{font-size:0}.notice-row[open] .notice-row-toggle:after{content:"Close";font-size:.78rem}.notice-row-content{border-top:1px solid var(--line);padding:1rem 1.1rem 1.1rem}.document-actions{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.assessment-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem;display:grid}.assessment-grid article{border:1px solid var(--line);background:#f7fafc;border-radius:.9rem;padding:1rem}.assessment-grid h3{color:var(--blue);text-transform:uppercase;letter-spacing:.07em;margin:0 0 .45rem;font-size:.9rem}.assessment-grid p{white-space:pre-wrap;color:var(--muted);margin:0}.assessment-editor{border-top:1px solid var(--line);margin-top:1.15rem;padding-top:1rem}.assessment-editor summary{cursor:pointer;color:var(--blue);align-items:center;gap:.45rem;font-weight:700;display:flex}.assessment-editor form{margin-top:1rem}.assessment-editor textarea{resize:vertical;min-height:7rem}@media (max-width:760px){.assessment-grid{grid-template-columns:1fr}.notice-row-summary{align-items:flex-start}.notice-row-toggle{flex:none}}.document-bulk-panel{border-top:4px solid var(--blue);gap:.85rem;display:grid}.document-bulk-panel .panel-heading{align-items:center}.bulk-list{border:1px solid var(--line);background:#f8fbff;border-radius:10px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.55rem;max-height:160px;padding:.7rem;display:grid;overflow:auto}.bulk-list .bulk-option{background:#fff;border:1px solid #dce6f0;border-radius:8px;padding:.62rem .7rem}.bulk-option{align-items:center;gap:.5rem;font-size:.9rem;font-weight:700;display:flex}.bulk-option small{color:var(--muted);text-transform:capitalize;margin-left:auto}.danger-action{color:#9a2424;background:#fff;border:1px solid #b83a3a;border-radius:8px;padding:10px 14px;font-weight:750}.client-document-card[open]{box-shadow:0 12px 28px #0a2f4f14}.client-document-card[open] .notice-row-summary{background:#f7fbff}.assessment-grid article{min-height:120px}.assessment-grid article:nth-child(2),.assessment-grid article:nth-child(3),.assessment-grid article:nth-child(4){background:#fff}.assessment-grid p{color:#30485d;font-size:.92rem;line-height:1.52}.bulk-controls{border-bottom:1px solid var(--line);background:#fbfdff;flex-wrap:wrap;align-items:center;gap:.75rem;padding:13px 20px;display:flex}.bulk-controls .notice-success,.bulk-controls .notice-error{width:100%;margin:0}.selection-count{color:var(--muted);align-items:center;gap:.35rem;font-size:.86rem;font-weight:700;display:flex}.taxdome-import{gap:1rem;display:grid}.import-file{gap:.45rem;font-size:.9rem;font-weight:750;display:grid}.import-file input{border:1px solid var(--line);background:#fff;border-radius:8px;max-width:420px;padding:.55rem}.import-toolbar{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.import-toolbar .secondary-action{align-items:center;gap:.4rem;display:flex}.ai-chat-panel{gap:1rem;display:grid}.ai-chat-log{border:1px solid var(--line);background:#f8fafc;border-radius:10px;gap:.7rem;max-height:440px;padding:.9rem;display:grid;overflow:auto}.ai-message{border:1px solid var(--line);background:#fff;border-radius:10px;gap:.55rem;max-width:88%;padding:.7rem .8rem;display:flex}.ai-message.user{background:#eaf3fc;border-color:#cbdff1;margin-left:auto}.ai-message p{white-space:pre-wrap;margin:0;line-height:1.5}.ai-chat-form{gap:.5rem;font-size:.85rem;font-weight:750;display:grid}.ai-chat-form>div{grid-template-columns:1fr auto;gap:.65rem;display:grid}.ai-chat-form textarea{resize:vertical;min-height:78px;font:inherit;border:1px solid #cbd6df;border-radius:8px;padding:.7rem}.ai-chat-form button{align-self:end}
