.xacc-app,
.xacc-dashboard,
.xacc-login-panel,
.xacc-notice,
.xacc-signing-portal,
.xacc-signing-error {
  --xacc-ink: #17202a;
  --xacc-muted: #64707d;
  --xacc-line: #dce2e8;
  --xacc-soft: #f4f6f8;
  --xacc-panel: #ffffff;
  --xacc-accent: #c98322;
  --xacc-accent-dark: #9d6217;
  --xacc-blue: #223a52;
  --xacc-danger: #a52a2a;
  color: var(--xacc-ink);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  box-sizing: border-box;
}
.xacc-app *, .xacc-dashboard *, .xacc-login-panel *, .xacc-signing-portal *, .xacc-signing-error * { box-sizing: border-box; }
.xacc-app { max-width: 1500px; margin: 0 auto; }
.xacc-hero {
  display: grid;
  grid-template-columns: minmax(0,1fr) 250px;
  gap: 28px;
  align-items: center;
  padding: 34px;
  color: #fff;
  background: linear-gradient(135deg,#172a3d,#2f4d68);
  border-radius: 18px 18px 0 0;
}
.xacc-eyebrow { display:block; margin-bottom:8px; color:#e9b76d; font-size:12px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.xacc-hero h2,.xacc-dashboard h2,.xacc-login-panel h3 { margin:0 0 10px; color:inherit; font-size:clamp(27px,3vw,42px); line-height:1.08; }
.xacc-hero p { max-width:780px; margin:0; color:#d9e3ec; font-size:16px; }
.xacc-token-card { padding:20px; color:var(--xacc-ink); background:#fff; border-radius:14px; box-shadow:0 14px 35px rgba(0,0,0,.18); }
.xacc-token-card span,.xacc-account-summary span { display:block; color:var(--xacc-muted); font-size:12px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.xacc-token-card strong { display:block; margin:4px 0 8px; font-size:34px; }
.xacc-token-card a,.xacc-account-summary a { color:var(--xacc-accent-dark); font-weight:800; text-decoration:none; }
.xacc-legal-note { padding:14px 22px; color:#4b3c22; background:#fff6df; border:1px solid #efd69d; border-top:0; }
.xacc-type-tabs { display:flex; gap:8px; padding:16px; background:#e9edf1; border-left:1px solid var(--xacc-line); border-right:1px solid var(--xacc-line); }
.xacc-type-tab { appearance:none; padding:12px 18px; color:var(--xacc-blue); background:#fff; border:1px solid var(--xacc-line); border-radius:10px; font:inherit; font-weight:800; cursor:pointer; }
.xacc-type-tab.is-active { color:#fff; background:var(--xacc-blue); border-color:var(--xacc-blue); }
.xacc-workspace { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr); gap:0; align-items:start; border:1px solid var(--xacc-line); border-top:0; background:#eef1f4; }
.xacc-builder { min-width:0; padding:22px; }
.xacc-form-section { margin:0 0 18px; padding:22px; background:var(--xacc-panel); border:1px solid var(--xacc-line); border-radius:14px; box-shadow:0 6px 20px rgba(26,42,58,.05); }
.xacc-form-section h4 { margin:24px 0 12px; font-size:14px; text-transform:uppercase; letter-spacing:.06em; color:var(--xacc-blue); }
.xacc-section-heading { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-bottom:18px; }
.xacc-section-heading>div { display:flex; align-items:center; gap:10px; }
.xacc-section-heading>div>span { display:grid; place-items:center; width:30px; height:30px; color:#fff; background:var(--xacc-accent); border-radius:50%; font-weight:900; }
.xacc-section-heading h3 { margin:0; color:var(--xacc-blue); font-size:19px; }
.xacc-grid { display:grid; gap:14px; }
.xacc-grid-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.xacc-field { display:flex; flex-direction:column; gap:7px; min-width:0; margin:0 0 14px; }
.xacc-field-wide { grid-column:1/-1; }
.xacc-field>span { font-size:13px; font-weight:800; color:#314255; }
.xacc-field small,.xacc-help { color:var(--xacc-muted); font-size:12px; line-height:1.45; }
.xacc-field input,.xacc-field textarea,.xacc-field select,.xacc-table-row input,.xacc-table-row textarea,.xacc-table-row select,.xacc-clause textarea {
  width:100%; min-height:44px; padding:10px 12px; color:var(--xacc-ink); background:#fff; border:1px solid #cbd3dc; border-radius:9px; font:inherit; line-height:1.45;
}
.xacc-field textarea,.xacc-table-row textarea,.xacc-clause textarea { resize:vertical; }
.xacc-field input:focus,.xacc-field textarea:focus,.xacc-field select:focus,.xacc-table-row input:focus,.xacc-table-row textarea:focus,.xacc-table-row select:focus,.xacc-clause textarea:focus { outline:3px solid rgba(201,131,34,.18); border-color:var(--xacc-accent); }
.xacc-field-wrap { display:flex; flex-direction:column; align-items:stretch; min-width:0; }
.xacc-refine-button { position:static; align-self:flex-end; margin-top:7px; padding:7px 10px; color:#fff; background:#6b42a1; border:0; border-radius:7px; font-size:11px; font-weight:900; cursor:pointer; box-shadow:0 3px 10px rgba(60,27,96,.2); }
.xacc-refine-button:disabled { opacity:.6; cursor:wait; }
.xacc-small-button { appearance:none; padding:8px 11px; color:var(--xacc-blue); background:#f1f4f7; border:1px solid #ccd4dc; border-radius:8px; font:inherit; font-size:12px; font-weight:800; cursor:pointer; }
.xacc-builder-table { display:grid; gap:10px; }
.xacc-table-row { display:grid; gap:9px; align-items:start; padding:12px; background:#f8fafb; border:1px solid var(--xacc-line); border-radius:10px; }
.xacc-milestone-row { grid-template-columns:minmax(0,1fr) minmax(0,1fr) 34px; }
.xacc-milestone-row [data-milestone="title"] { grid-column:1; grid-row:1; }
.xacc-milestone-row [data-milestone="basis"] { grid-column:2; grid-row:1; }
.xacc-milestone-row .xacc-remove-row { grid-column:3; grid-row:1; align-self:center; }
.xacc-milestone-row [data-milestone="target"] { grid-column:1; grid-row:2; }
.xacc-milestone-row [data-milestone="amount"] { grid-column:2; grid-row:2; }
.xacc-milestone-row [data-milestone="description"] { grid-column:1/-1; grid-row:3; min-height:78px; }
.xacc-line-row { grid-template-columns:minmax(220px,1fr) 85px 115px 110px 34px; align-items:center; }
.xacc-line-row strong { text-align:right; white-space:nowrap; }
.xacc-remove-row { display:grid; place-items:center; width:32px; height:32px; padding:0; color:var(--xacc-danger); background:#fff; border:1px solid #e2bcbc; border-radius:8px; font-size:22px; line-height:1; cursor:pointer; }
.xacc-clauses { display:grid; gap:10px; }
.xacc-clause { overflow:hidden; border:1px solid var(--xacc-line); border-radius:10px; background:#fafbfc; }
.xacc-clause summary { padding:13px 15px; color:var(--xacc-blue); background:#f0f3f6; cursor:pointer; font-weight:800; }
.xacc-clause summary label { cursor:pointer; }
.xacc-clause .xacc-field-wrap { margin:14px; }
.xacc-totals { width:min(100%,430px); margin:18px 0 0 auto; border:1px solid var(--xacc-line); border-radius:10px; overflow:hidden; }
.xacc-totals>div { display:flex; justify-content:space-between; gap:20px; padding:10px 14px; background:#fff; border-bottom:1px solid var(--xacc-line); }
.xacc-totals>div:last-child { border-bottom:0; }
.xacc-totals .is-total { color:#fff; background:var(--xacc-blue); font-size:17px; }
.xacc-approval-note { padding:14px; color:#33475a; background:#edf5fb; border-left:4px solid #4d82ad; border-radius:8px; }
.xacc-builder-actions { display:flex; flex-wrap:wrap; gap:10px; position:sticky; bottom:12px; z-index:20; padding:14px; background:rgba(255,255,255,.95); border:1px solid var(--xacc-line); border-radius:12px; box-shadow:0 12px 35px rgba(20,38,55,.15); backdrop-filter:blur(8px); }
.xacc-button { display:inline-flex; align-items:center; justify-content:center; min-height:42px; padding:10px 15px; color:var(--xacc-blue)!important; background:#fff; border:1px solid #bdc7d1; border-radius:9px; font:inherit; font-weight:800; line-height:1.15; text-decoration:none!important; cursor:pointer; }
.xacc-button:hover { transform:translateY(-1px); box-shadow:0 6px 16px rgba(20,38,55,.12); }
.xacc-button-primary { color:#fff!important; background:var(--xacc-blue); border-color:var(--xacc-blue); }
.xacc-button-ai { color:#fff!important; background:linear-gradient(135deg,#7045a5,#4d2e79); border-color:#4d2e79; }
.xacc-button-danger { color:var(--xacc-danger)!important; border-color:#dfb6b6; }
.xacc-button:disabled { opacity:.6; cursor:wait; transform:none; }
.xacc-status { min-height:22px; margin-top:10px; font-size:13px; font-weight:700; }
.xacc-status.is-success { color:#18753f; }
.xacc-status.is-error { color:#a52a2a; }
.xacc-status.is-working { color:#6b42a1; }
.xacc-preview-column { position:sticky; top:18px; min-width:0; max-height:calc(100vh - 36px); overflow:auto; padding:22px; background:#dfe4e9; border-left:1px solid var(--xacc-line); }
.xacc-preview-toolbar { display:flex; justify-content:space-between; align-items:center; gap:14px; margin-bottom:12px; }
.xacc-preview-toolbar>div span,.xacc-preview-toolbar>div strong { display:block; }
.xacc-preview-toolbar>div span { color:var(--xacc-muted); font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.xacc-live-dot { position:relative; padding-left:14px; color:#277243; font-size:12px; font-weight:900; }
.xacc-live-dot:before { content:""; position:absolute; left:0; top:50%; width:8px; height:8px; margin-top:-4px; background:#2ba35d; border-radius:50%; box-shadow:0 0 0 4px rgba(43,163,93,.13); }
.xacc-document-preview { min-height:800px; padding:42px 45px; color:#20262d; background:#fff; border:1px solid #c7ced5; box-shadow:0 15px 38px rgba(21,36,50,.15); font-family:Georgia,"Times New Roman",serif; font-size:13.5px; line-height:1.6; }
.xacc-document-preview header { margin-bottom:25px; padding-bottom:22px; text-align:center; border-bottom:2px solid #273849; }
.xacc-document-preview header span { font-family:Inter,Arial,sans-serif; font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.xacc-document-preview h1 { margin:7px 0; color:#172431; font-size:27px; line-height:1.2; }
.xacc-document-preview header p { margin:0; color:#5a6672; font-family:Inter,Arial,sans-serif; font-size:10px; text-transform:capitalize; }
.xacc-document-preview section { margin:24px 0; }
.xacc-document-preview section h3 { margin:0 0 9px; padding-bottom:5px; color:#233a4f; border-bottom:1px solid #bdc6ce; font-family:Inter,Arial,sans-serif; font-size:13px; letter-spacing:.02em; text-transform:uppercase; }
.xacc-document-preview p { margin:7px 0; }
.xacc-preview-parties { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:0 0 24px; }
.xacc-preview-parties>div { min-height:110px; padding:13px; border:1px solid #cbd2d8; }
.xacc-preview-parties span,.xacc-preview-signatures span { display:block; margin-bottom:7px; color:#5b6874; font-family:Inter,Arial,sans-serif; font-size:9px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.xacc-preview-parties strong { display:block; margin-bottom:6px; }
.xacc-document-preview dl { display:grid; grid-template-columns:145px minmax(0,1fr); gap:5px 12px; margin:8px 0; }
.xacc-document-preview dt { color:#374758; font-family:Inter,Arial,sans-serif; font-size:11px; font-weight:800; }
.xacc-document-preview dd { margin:0; }
.xacc-preview-list { padding-left:22px; }
.xacc-preview-list li { margin-bottom:10px; }
.xacc-preview-list li strong,.xacc-preview-list li span { display:block; }
.xacc-preview-list li span { color:#5c6875; font-family:Inter,Arial,sans-serif; font-size:10px; text-transform:capitalize; }
.xacc-preview-signatures { display:grid; grid-template-columns:1fr 1fr; gap:22px; margin-top:28px; }
.xacc-preview-signatures>div { padding-top:12px; border-top:1px solid #333; }
.xacc-preview-signatures strong,.xacc-preview-signatures small { display:block; }
.xacc-preview-signatures small { margin-top:5px; color:#626c76; }
.xacc-preview-price-table { border:1px solid #c3cbd2; }
.xacc-preview-price-table>div { display:grid; grid-template-columns:minmax(0,1fr) 48px 70px 78px; gap:6px; padding:7px 8px; border-bottom:1px solid #d7dde2; font-family:Inter,Arial,sans-serif; font-size:10px; }
.xacc-preview-price-table>div:last-child { border-bottom:0; }
.xacc-preview-price-table>div span:not(:first-child) { text-align:right; }
.xacc-preview-price-table .head,.xacc-preview-price-table .total { color:#fff; background:#2a3e51; font-weight:800; }
.xacc-dashboard { max-width:1200px; margin:0 auto; }
.xacc-dashboard-head { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-bottom:18px; padding:24px; color:#fff; background:linear-gradient(135deg,#172a3d,#2f4d68); border-radius:14px; }
.xacc-dashboard-head h2 { font-size:30px; }
.xacc-dashboard-actions { display:flex; flex-wrap:wrap; gap:8px; }
.xacc-account-summary { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-bottom:18px; padding:16px 20px; background:#fff8e8; border:1px solid #efd59a; border-radius:10px; }
.xacc-account-summary strong { font-size:24px; }
.xacc-document-list { display:grid; gap:12px; }
.xacc-document-card { display:grid; grid-template-columns:60px minmax(0,1fr) auto; gap:16px; align-items:center; padding:18px; background:#fff; border:1px solid var(--xacc-line); border-radius:12px; box-shadow:0 6px 18px rgba(26,42,58,.05); }
.xacc-document-icon { display:grid; place-items:center; width:54px; height:54px; color:#fff; background:var(--xacc-blue); border-radius:12px; font-size:12px; font-weight:900; }
.xacc-document-info span { color:var(--xacc-accent-dark); font-size:11px; font-weight:900; letter-spacing:.06em; text-transform:uppercase; }
.xacc-document-info h3 { margin:3px 0; color:var(--xacc-ink); font-size:18px; }
.xacc-document-info p,.xacc-document-info small { margin:0; color:var(--xacc-muted); }
.xacc-document-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:7px; }
.xacc-empty,.xacc-login-panel { padding:32px; text-align:center; background:#fff; border:1px solid var(--xacc-line); border-radius:14px; }
.xacc-login-panel { max-width:760px; margin:20px auto; }
.xacc-login-panel h3 { color:var(--xacc-blue); font-size:28px; }
.xacc-notice { padding:15px 18px; border-radius:9px; }
.xacc-notice-error { color:#7d2020; background:#fff0f0; border:1px solid #e4b9b9; }
.xacc-woo-summary { margin-top:24px; padding:20px; background:#f4f6f8; border:1px solid #dce2e8; border-radius:10px; }
@media (max-width:1180px) {
  .xacc-workspace { grid-template-columns:1fr; }
  .xacc-preview-column { position:relative; top:auto; max-height:none; border-left:0; border-top:1px solid var(--xacc-line); }
  .xacc-milestone-row { grid-template-columns:minmax(0,1fr) minmax(0,1fr) 34px; }
  .xacc-milestone-row textarea { grid-column:1/-1; }
  .xacc-milestone-row .xacc-remove-row { grid-column:3; justify-self:end; }
}
@media (max-width:760px) {
  .xacc-hero { grid-template-columns:1fr; padding:24px; }
  .xacc-token-card { width:100%; }
  .xacc-type-tabs { flex-direction:column; }
  .xacc-grid-2 { grid-template-columns:1fr; }
  .xacc-builder,.xacc-preview-column { padding:12px; }
  .xacc-form-section { padding:16px; }
  .xacc-line-row { grid-template-columns:1fr; }
  .xacc-milestone-row { grid-template-columns:minmax(0,1fr) 34px; }
  .xacc-milestone-row [data-milestone="title"],
  .xacc-milestone-row [data-milestone="basis"],
  .xacc-milestone-row [data-milestone="target"],
  .xacc-milestone-row [data-milestone="amount"],
  .xacc-milestone-row [data-milestone="description"] { grid-column:1; grid-row:auto; }
  .xacc-milestone-row .xacc-remove-row { grid-column:2; grid-row:1; justify-self:end; }
  .xacc-line-row strong { text-align:left; }
  .xacc-document-preview { min-height:0; padding:25px 20px; }
  .xacc-preview-parties,.xacc-preview-signatures { grid-template-columns:1fr; }
  .xacc-document-preview dl { grid-template-columns:1fr; }
  .xacc-document-card { grid-template-columns:1fr; }
  .xacc-document-icon { width:44px; height:44px; }
  .xacc-document-actions { justify-content:flex-start; }
  .xacc-dashboard-head { align-items:flex-start; flex-direction:column; }
  .xacc-account-summary { align-items:flex-start; flex-direction:column; }
}

/* 1.0.1 full-screen application layout */
.xacc-app{width:100%;max-width:none;margin:0}
.xacc-document-toolbar{display:grid;grid-template-columns:auto minmax(220px,1fr) auto;align-items:center;gap:16px;padding:12px 14px;border:1px solid var(--xacc-line);border-radius:14px 14px 0 0;background:#fff;box-shadow:0 7px 20px rgba(18,36,56,.06)}
.xacc-document-toolbar .xacc-type-tabs{display:flex;gap:7px;padding:0;border:0;background:transparent}
.xacc-document-toolbar .xacc-type-tab{min-height:42px;padding:9px 15px;border-radius:8px}
.xacc-toolbar-copy{display:grid;gap:2px;min-width:0;padding-left:4px}
.xacc-toolbar-copy strong{color:var(--xacc-blue);font-size:13px}
.xacc-toolbar-copy span{overflow:hidden;color:var(--xacc-muted);font-size:12px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}
.xacc-token-summary{display:grid;grid-template-columns:auto auto;align-items:center;column-gap:9px;min-width:166px;padding:7px 11px;border:1px solid #ead7ad;border-radius:10px;background:#fff8e8}
.xacc-token-summary span{color:var(--xacc-muted);font-size:10px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
.xacc-token-summary strong{grid-row:1/3;grid-column:2;align-self:center;color:var(--xacc-blue);font-size:24px;line-height:1}
.xacc-token-summary a{color:var(--xacc-accent-dark);font-size:11px;font-weight:900;text-decoration:none}
.xacc-legal-note{border:1px solid #efd69d;border-top:0}
.xacc-workspace{grid-template-columns:minmax(520px,1.08fr) minmax(460px,.92fr);border-radius:0 0 14px 14px;overflow:visible}
.xacc-builder{padding:18px}
.xacc-preview-column{padding:18px}
.xacc-dashboard{width:100%;max-width:none;margin:0}
.xacc-dashboard-head{border-radius:14px}
.xacc-standalone-body .xacc-preview-column{top:86px;max-height:calc(100vh - 104px)}
.xacc-standalone-body .xacc-builder-actions{bottom:10px}
.xacc-standalone-body .xacc-document-preview{max-width:860px;margin:0 auto}
.xacc-standalone-body .xacc-login-panel{max-width:900px;margin:24px auto}
@media(min-width:1700px){.xacc-workspace{grid-template-columns:minmax(650px,1.1fr) minmax(600px,.9fr)}.xacc-builder,.xacc-preview-column{padding:22px}.xacc-form-section{padding:24px}}
@media(max-width:1180px){.xacc-document-toolbar{grid-template-columns:1fr auto}.xacc-toolbar-copy{grid-column:1/-1;grid-row:2}.xacc-toolbar-copy span{white-space:normal}.xacc-standalone-body .xacc-preview-column{top:auto;max-height:none}}
@media(max-width:760px){.xacc-document-toolbar{grid-template-columns:1fr;padding:10px;border-radius:10px 10px 0 0}.xacc-document-toolbar .xacc-type-tabs{flex-direction:row;overflow-x:auto}.xacc-document-toolbar .xacc-type-tab{flex:1;white-space:nowrap}.xacc-token-summary{width:100%}.xacc-toolbar-copy{grid-column:auto;grid-row:auto}.xacc-workspace{border-radius:0 0 10px 10px}.xacc-legal-note{padding:11px 13px;font-size:12px}}
@media print{.xacc-document-toolbar,.xacc-legal-note,.xacc-builder,.xacc-preview-toolbar,.xacc-builder-actions,.xacc-status{display:none!important}.xacc-workspace{display:block;border:0}.xacc-preview-column{padding:0!important;border:0!important;background:#fff}.xacc-document-preview{max-width:none!important;min-height:0;border:0;box-shadow:none}}

/* 1.1.0 secure online signing */
.xacc-signing-lock-notice{padding:13px 18px;color:#5f3411;background:#fff0d8;border:1px solid #e8be7e;border-top:0;font-size:13px}
.xacc-online-signing{border-color:#b8cfbf;background:linear-gradient(180deg,#fff,#f8fcf9)}
.xacc-signing-email-check{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0}
.xacc-signing-email-check>div{padding:12px 14px;border:1px solid #d4ded7;border-radius:10px;background:#fff}
.xacc-signing-email-check span,.xacc-signing-summary-head span,.xacc-signer-status span{display:block;color:var(--xacc-muted);font-size:10px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}
.xacc-signing-email-check strong{display:block;margin-top:3px;overflow-wrap:anywhere;color:var(--xacc-blue);font-size:13px}
.xacc-signing-summary{margin-top:14px;padding:15px;border:1px solid #ccd7df;border-radius:12px;background:#f7f9fb}
.xacc-signing-summary.is-completed{border-color:#9fcaac;background:#edf8f0}
.xacc-signing-summary.is-partially_signed,.xacc-signing-summary.is-sent{border-color:#d9c38e;background:#fff9ea}
.xacc-signing-summary.is-expired_partial{border-color:#ddb1a7;background:#fff3f0}
.xacc-signing-summary-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}
.xacc-signing-summary-head strong{display:block;margin-top:2px;color:var(--xacc-blue);font-size:16px}
.xacc-signing-summary-head small{color:var(--xacc-muted);font-size:11px}
.xacc-signer-status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.xacc-signer-status{padding:11px;border:1px solid #d8e0e6;border-radius:9px;background:#fff}
.xacc-signer-status strong{display:block;margin:3px 0;color:#8a5a16}
.xacc-signer-status.is-signed strong{color:#18753f}
.xacc-signer-status small{display:block;color:var(--xacc-muted);font-size:11px;overflow-wrap:anywhere}
.xacc-signing-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px}
.xacc-button-sign{color:#fff!important;background:linear-gradient(135deg,#1f7243,#155731);border-color:#155731}
.xacc-card-signing-status{display:inline-flex!important;width:max-content;margin-top:7px;padding:4px 8px;border:1px solid #d3dbe2;border-radius:999px;background:#f5f7f9;color:#596879!important;font-size:10px!important;font-weight:900!important;letter-spacing:.03em!important;text-transform:uppercase}
.xacc-card-signing-status.is-completed{border-color:#a7cfb2;background:#edf8f0;color:#18753f!important}
.xacc-card-signing-status.is-sent,.xacc-card-signing-status.is-partially_signed{border-color:#dfc990;background:#fff9e9;color:#805811!important}
.xacc-card-signing-status.is-expired_partial{border-color:#dfaaa0;background:#fff2ef;color:#8a2d22!important}
.xacc-app[data-signing-locked="1"] .xacc-field input:disabled,.xacc-app[data-signing-locked="1"] .xacc-field textarea:disabled,.xacc-app[data-signing-locked="1"] .xacc-field select:disabled,.xacc-app[data-signing-locked="1"] .xacc-table-row input:disabled,.xacc-app[data-signing-locked="1"] .xacc-table-row textarea:disabled,.xacc-app[data-signing-locked="1"] .xacc-table-row select:disabled,.xacc-app[data-signing-locked="1"] .xacc-clause textarea:disabled{color:#3c4752;background:#eef1f4;opacity:1;cursor:not-allowed}

.xacc-signing-main{padding:clamp(10px,2vw,28px)}
.xacc-signing-portal{width:min(1180px,100%);margin:0 auto;display:grid;gap:18px}
.xacc-signing-gate,.xacc-signing-review,.xacc-signature-panel,.xacc-signing-error{padding:clamp(20px,3vw,34px);border:1px solid #d6dee7;border-radius:16px;background:#fff;box-shadow:0 12px 35px rgba(15,34,52,.08)}
.xacc-signing-gate h1,.xacc-signature-panel h2,.xacc-signing-error h1{margin:0 0 8px;color:#19324b;line-height:1.15}
.xacc-signing-gate>p,.xacc-signature-panel>p{color:#5e6c7a}
.xacc-signing-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0}
.xacc-signing-facts>div{padding:12px;border:1px solid #dce3e9;border-radius:10px;background:#f7f9fb}
.xacc-signing-facts span{display:block;color:#718090;font-size:10px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
.xacc-signing-facts strong{display:block;margin-top:4px;color:#233b52;font-size:13px;overflow-wrap:anywhere}
.xacc-portal-message{margin:14px 0;padding:12px 14px;border-radius:9px;font-weight:800}
.xacc-portal-message.is-success{color:#185f37;background:#ebf7ef;border:1px solid #acd2b8}
.xacc-portal-message.is-error{color:#8a2424;background:#fff0f0;border:1px solid #e0b5b5}
.xacc-otp-form,.xacc-signature-panel form{display:grid;gap:13px;margin-top:16px}
.xacc-otp-form label,.xacc-signature-panel label:not(.xacc-consent-check){display:grid;gap:7px;color:#2e4358;font-size:13px;font-weight:900}
.xacc-otp-form input,.xacc-signature-panel input[type="text"]{width:100%;min-height:50px;padding:11px 13px;border:1px solid #bfcbd5;border-radius:10px;background:#fff;font:inherit;font-size:18px}
.xacc-otp-form input{max-width:260px;letter-spacing:.28em;text-align:center;font-size:25px;font-weight:900}
.xacc-otp-form .xacc-button{width:max-content}
.xacc-otp-form small{color:#687786;line-height:1.5}
.xacc-signing-review{padding:18px;background:#dde4eb}
.xacc-signing-review-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:12px;padding:3px 4px}
.xacc-signing-review-head span,.xacc-signing-review-head strong{display:block}
.xacc-signing-review-head span{color:#5f6d7a;font-size:10px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}
.xacc-signing-review-head code{max-width:58%;padding:7px 9px;border-radius:7px;background:#fff;color:#455565;font-size:10px;overflow-wrap:anywhere}
.xacc-signing-document{max-width:850px;margin:0 auto;min-height:0}
.xacc-signature-panel{position:sticky;bottom:10px;z-index:30;border-color:#9ec5aa;box-shadow:0 18px 45px rgba(17,62,38,.16)}
.xacc-consent-check{display:grid!important;grid-template-columns:24px minmax(0,1fr);gap:10px;align-items:start;padding:13px;border:1px solid #c7d8cc;border-radius:10px;background:#f5fbf7;color:#31473a;font-weight:700;line-height:1.5}
.xacc-consent-check input{width:20px;height:20px;margin-top:2px}
.xacc-sign-submit{width:max-content;min-height:50px;padding-left:24px;padding-right:24px;font-size:16px}
.xacc-signed-confirmation{margin-top:18px;padding:18px;border:1px solid #a8cfb3;border-radius:12px;background:#edf8f0}
.xacc-signed-confirmation>strong{display:block;color:#176038;font-size:19px}
.xacc-signing-error{width:min(640px,100%);margin:10vh auto;text-align:center}
.xacc-signing-error .xacc-app-mark{margin:0 auto 15px}
@media(max-width:760px){.xacc-signing-email-check,.xacc-signer-status-grid,.xacc-signing-facts{grid-template-columns:1fr}.xacc-signing-summary-head,.xacc-signing-review-head{flex-direction:column}.xacc-signing-review-head code{max-width:100%}.xacc-signing-review{padding:8px}.xacc-signature-panel{position:relative;bottom:auto}.xacc-signing-document{padding:24px 18px}.xacc-otp-form .xacc-button,.xacc-sign-submit{width:100%}}

.xacc-signer-status .xacc-button-small {
  margin-top: 10px;
  padding: 7px 10px;
  min-height: 0;
  width: 100%;
  font-size: 11px;
  line-height: 1.2;
}

/* 1.1.1 field controls and milestone layout */
.xacc-clause .xacc-field-wrap{align-items:stretch}
.xacc-clause .xacc-refine-button{margin-right:0}


/* 1.1.3 direct field refinement, administrator AI, and drawn signatures */
.xacc-token-summary.is-admin-free small{color:#177348;font-size:11px;font-weight:900}
.xacc-signature-pad-field{display:grid;gap:8px}
.xacc-signature-pad-head{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#2e4358;font-size:13px;font-weight:900}
.xacc-signature-clear{padding:6px 11px;border:1px solid #b9c6d1;border-radius:8px;background:#fff;color:#44596d;font:inherit;font-size:12px;font-weight:900;cursor:pointer}
.xacc-signature-clear:hover{background:#f2f5f7}
.xacc-signature-canvas-wrap{position:relative;width:100%;min-height:190px;overflow:hidden;border:2px solid #9aabb9;border-radius:12px;background:#fff;touch-action:none}
.xacc-signature-canvas-wrap canvas{display:block;width:100%;height:190px;cursor:crosshair;touch-action:none}
.xacc-signature-line{position:absolute;left:6%;right:6%;bottom:37px;border-top:1px solid #aeb9c2;pointer-events:none}
.xacc-signature-pad-field small{color:#637383;font-size:11px}
.xacc-signature-pad-error{padding:9px 11px;border:1px solid #e0aaa4;border-radius:8px;background:#fff1ef;color:#8b2d25;font-size:12px;font-weight:800}
.xacc-recorded-signature,.xacc-preview-signature-image{display:block;width:min(330px,100%);height:auto;max-height:120px;object-fit:contain;object-position:left center;background:#fff}
.xacc-recorded-signature{margin:12px 0;padding:8px;border:1px solid #d5dee5;border-radius:9px}
.xacc-preview-signatures .xacc-preview-signature-image{margin:4px 0 8px}
@media(max-width:760px){.xacc-signature-canvas-wrap,.xacc-signature-canvas-wrap canvas{min-height:165px;height:165px}}

/* 1.1.4 business logo */
.xacc-logo-uploader{display:grid;grid-template-columns:150px minmax(0,1fr);gap:16px;align-items:center;margin:0 0 18px;padding:14px;border:1px solid var(--xacc-line);border-radius:11px;background:#f8fafb}
.xacc-logo-preview{display:flex;align-items:center;justify-content:center;width:150px;height:88px;padding:8px;border:1px solid #cbd3dc;border-radius:9px;background:#fff;overflow:hidden}
.xacc-logo-preview img{display:block;max-width:100%;max-height:100%;object-fit:contain}
.xacc-logo-preview span{color:var(--xacc-muted);font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.xacc-logo-controls{display:flex;flex-wrap:wrap;align-items:center;gap:9px;min-width:0}
.xacc-logo-controls>small{flex-basis:100%;color:var(--xacc-muted);font-size:11px;line-height:1.4}
.xacc-logo-upload-button{position:relative;overflow:hidden}
.xacc-logo-upload-button input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.xacc-logo-upload-button.is-working{opacity:.65;cursor:wait}
.xacc-preview-document-header{position:relative}
.xacc-preview-document-header.has-logo{min-height:90px;padding-left:155px;padding-right:12px}
.xacc-preview-logo{position:absolute;left:0;top:0;display:flex;align-items:flex-start;justify-content:flex-start;width:135px;height:74px}
.xacc-preview-logo img{display:block;max-width:135px;max-height:74px;object-fit:contain}
@media(max-width:760px){.xacc-logo-uploader{grid-template-columns:1fr}.xacc-logo-preview{width:100%;height:100px}.xacc-preview-document-header.has-logo{min-height:0;padding-left:0;padding-right:0;padding-top:82px}.xacc-preview-logo{left:50%;width:130px;height:68px;transform:translateX(-50%);justify-content:center}}
