.td-hero {
  overflow: hidden;
  padding: 42px 0 38px;
  border-bottom: 1px solid #DDE5EF;
  background:
    radial-gradient(circle at 80% 8%, rgba(11, 92, 255, .14), transparent 27%),
    linear-gradient(135deg, #F7FAFF 0%, #FFFFFF 52%, #EDF4FF 100%);
}
.td-hero__inner { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(320px, .55fr); align-items: end; gap: 72px; }
.td-hero .breadcrumb { margin: 0 0 17px; }
.td-hero__badge { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 12px; color: #075DE6; font-size: 12px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.td-hero__badge .icon { width: 18px; height: 18px; }
.td-hero h1 { max-width: 920px; margin: 0; color: #071426; font-size: clamp(34px, 4vw, 54px); line-height: 1.08; letter-spacing: -.042em; }
.td-hero__lede { max-width: 780px; margin: 15px 0 0; color: #46556A; font-size: 18px; line-height: 1.65; }
.td-hero__trust { display: flex; gap: 13px; padding: 17px 18px; border: 1px solid rgba(11, 92, 255, .15); border-radius: 16px; background: rgba(255, 255, 255, .82); box-shadow: 0 16px 42px rgba(25, 65, 119, .07); backdrop-filter: blur(10px); }
.td-hero__trust > span { display: grid; flex: 0 0 40px; height: 40px; place-items: center; border-radius: 11px; background: #EAF2FF; color: #075DE6; }
.td-hero__trust p { margin: 0; color: #5C6879; font-size: 12px; line-height: 1.65; }
.td-hero__trust strong { color: #13233B; font-size: 13px; }

.td-desktop-required { display: none; margin: 20px; padding: 42px 24px; border: 1px solid #DCE3EC; border-radius: 20px; background: #F7F9FC; text-align: center; }
.td-desktop-required > span { display: grid; width: 52px; height: 52px; margin: 0 auto 15px; place-items: center; border-radius: 15px; background: #E7F0FF; color: #075DE6; }
.td-desktop-required h2 { margin: 0; color: #101C2E; font-size: 24px; }
.td-desktop-required p { max-width: 420px; margin: 10px auto 0; color: #667287; line-height: 1.7; }

.td-workspace {
  --td-brand: #0b5cff;
  --td-ink: #0b1f3a;
  --td-paper-ratio: 210 / 297;
  --td-paper-padding: 14mm;
  --td-preview-zoom: 1;
  padding: 20px 0 76px;
  background: #EEF2F7;
}
.td-app-shell { width: min(calc(100% - 32px), 1880px); margin-inline: auto; }
.td-appbar {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  grid-template-areas: "brand controls" "steps steps";
  align-items: center;
  gap: 15px 28px;
  margin-bottom: 18px;
  padding: 15px 20px 13px;
  border: 1px solid #D8E0EA;
  border-radius: 17px;
  background: rgba(255, 255, 255, .96);
  box-shadow: 0 10px 32px rgba(23, 40, 70, .06);
}
.td-appbar__brand { grid-area: brand; display: flex; align-items: center; gap: 10px; min-width: 190px; }
.td-appbar__brand > span { display: grid; width: 36px; height: 36px; place-items: center; border-radius: 10px; background: #0B5CFF; color: #FFFFFF; }
.td-appbar__brand .icon { width: 18px; height: 18px; }
.td-appbar__brand div { display: grid; gap: 1px; }
.td-appbar__brand strong { color: #101D30; font-size: 14px; }
.td-appbar__brand small { color: #7A8698; font-size: 10px; }
.td-appbar__controls { grid-area: controls; display: flex; align-items: center; justify-content: flex-end; gap: 20px; min-width: 0; }
.td-demo-button { padding: 9px 12px; border: 1px solid #BED4FA; border-radius: 9px; background: #F1F6FF; color: #075DE6; font: inherit; font-size: 12px; font-weight: 750; white-space: nowrap; cursor: pointer; }
.td-demo-button:hover { background: #E4EFFF; }
.td-demo-button:focus-visible { outline: 3px solid rgba(7, 93, 230, .2); outline-offset: 2px; }
.td-demo-notice { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 18px; padding: 14px 20px; border: 1px solid #BED4FA; border-radius: 13px; background: #F7FAFF; }
.td-demo-notice[hidden], .td-demo-button[hidden] { display: none !important; }
.td-demo-notice p { display: grid; gap: 4px; margin: 0; color: #586B84; font-size: 12px; line-height: 1.5; }
.td-demo-notice strong { color: #075DE6; font-size: 13px; }
.td-document__sample { margin: 0 0 12px; color: #718096; font-size: 9px; letter-spacing: .09em; }
.td-language-switch { display: flex; align-items: center; gap: 10px; color: #536176; font-size: 11px; font-weight: 760; }
.td-language-switch select { min-width: 150px; height: 38px; padding: 0 34px 0 11px; border: 1px solid #C9D3E0; border-radius: 9px; background-color: #FFFFFF; color: #17243A; font: inherit; cursor: pointer; }
.td-language-switch select:focus { outline: 0; border-color: #075DE6; box-shadow: 0 0 0 3px rgba(7, 93, 230, .1); }
.td-stepper { grid-area: steps; display: flex; align-items: center; width: 100%; padding-top: 12px; border-top: 1px solid #EDF0F4; }
.td-stepper > i { display: block; flex: 0 1 44px; height: 1px; background: #D5DCE6; }
.td-stepper button { display: grid; flex: 1 1 0; grid-template-columns: 30px minmax(0, 1fr); grid-template-rows: auto auto; align-items: center; column-gap: 9px; min-width: 0; padding: 2px 6px; border: 0; background: transparent; color: #737F91; text-align: left; cursor: pointer; }
.td-stepper button > span { grid-row: 1 / 3; display: grid; width: 30px; height: 30px; place-items: center; border: 1px solid #D5DCE7; border-radius: 50%; background: #F6F8FB; color: #728096; font-size: 11px; font-weight: 850; transition: .2s ease; }
.td-stepper button strong { overflow: hidden; color: #465367; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.td-stepper button small { overflow: hidden; color: #939BA7; font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.td-stepper button.is-active > span { border-color: #075DE6; background: #075DE6; color: #FFFFFF; box-shadow: 0 6px 14px rgba(7, 93, 230, .25); }
.td-stepper button.is-active strong { color: #071426; }
.td-stepper button.is-complete > span { border-color: #B7D1FF; background: #EAF2FF; color: #075DE6; }
.td-stepper button:focus-visible, .td-tabs button:focus-visible, .td-zoom button:focus-visible, .td-review-card button:focus-visible { outline: 3px solid rgba(7, 93, 230, .18); outline-offset: 2px; }
.td-appbar__status { display: flex; align-items: center; gap: 7px; white-space: nowrap; }
.td-autosave-dot { width: 7px; height: 7px; border-radius: 50%; background: #31A866; box-shadow: 0 0 0 4px rgba(49, 168, 102, .1); }
.td-save-status { min-height: 18px; color: #637084; font-size: 11px; }
.td-save-status.is-error { color: #C73535; }

.td-flow { display: grid; grid-template-columns: minmax(360px, 420px) minmax(0, 1fr); align-items: start; gap: 20px; transition: grid-template-columns .25s ease; }
.td-flow__editor { min-width: 0; margin: 0; }
.td-step { min-height: 760px; padding: 28px; border: 1px solid #DCE3EC; border-radius: 18px; background: #FFFFFF; box-shadow: 0 12px 36px rgba(27, 45, 75, .055); }
.td-step[hidden] { display: none !important; }
.td-step__header { margin-bottom: 21px; }
.td-step__header .eyebrow { margin: 0 0 7px; color: #075DE6; font-size: 11px; font-weight: 850; letter-spacing: .11em; }
.td-step__header h2 { margin: 0; color: #081427; font-size: 25px; line-height: 1.24; letter-spacing: -.035em; }
.td-step__header > p:last-child { margin: 9px 0 0; color: #667286; font-size: 14px; line-height: 1.65; }
.td-step__actions { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 24px; padding-top: 20px; border-top: 1px solid #E8ECF2; }
.td-step__actions .btn--lg { min-height: 48px; padding-inline: 22px; }
.td-workspace[data-current-step="6"] .td-flow { grid-template-columns: minmax(280px, 320px) minmax(0, 1fr); }
.td-workspace[data-current-step="6"] .td-step { min-height: auto; padding: 24px; }
.td-workspace.is-preview-focused .td-appbar { grid-template-areas: "brand controls"; }
.td-workspace.is-preview-focused .td-stepper { display: none; }
.td-workspace.is-preview-focused .td-flow { grid-template-columns: minmax(0, 1fr); }
.td-workspace.is-preview-focused .td-flow__editor { display: none; }

.td-smart-box { margin-bottom: 17px; padding: 19px; border: 1px solid #DCE5F2; border-radius: 15px; background: linear-gradient(145deg, #F8FBFF, #F2F6FC); }
.td-smart-box--featured { border-color: #BED4FA; background: linear-gradient(145deg, #F5F9FF, #EDF4FF); box-shadow: inset 0 0 0 1px rgba(11, 92, 255, .03); }
.td-smart-box__head { display: flex; align-items: center; gap: 11px; margin-bottom: 13px; }
.td-ai-mark { display: grid; width: 34px; height: 34px; place-items: center; border-radius: 10px; background: #075DE6; color: #FFFFFF; font-size: 10px; font-weight: 900; letter-spacing: .04em; box-shadow: 0 7px 17px rgba(7, 93, 230, .2); }
.td-smart-box__head div { display: grid; gap: 2px; }
.td-smart-box__head strong { color: #16243A; font-size: 14px; }
.td-smart-box__head small { color: #778296; font-size: 11px; }
.td-smart-box textarea { width: 100%; min-height: 104px; padding: 13px 14px; resize: vertical; border: 1px solid #C9D4E3; border-radius: 10px; background: #FFFFFF; color: #1B2A40; font-family: inherit; font-size: 13px; font-weight: 500; line-height: 1.62; }
.td-smart-box textarea:focus { outline: 0; border-color: #075DE6; box-shadow: 0 0 0 3px rgba(7, 93, 230, .1); }
.td-smart-box > .btn { margin-top: 11px; }
.td-import-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 11px; }
.td-import-actions small { color: #7C8798; font-size: 11px; }
.td-parse-status { min-height: 17px; margin: 9px 0 0; color: #258055; font-size: 11px; font-weight: 650; }
.td-parse-status:empty { display: none; }
.td-parse-status.is-error { color: #C33F3F; }

.td-simple-card, .td-style-card { padding: 21px; border: 1px solid #DFE5ED; border-radius: 15px; background: #FFFFFF; }
.td-simple-card + .td-simple-card { margin-top: 17px; }
.td-simple-card > h3 { margin: 0 0 17px; color: #17253A; font-size: 15px; }
.td-fields { display: grid; gap: 14px; }
.td-fields--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.td-fields--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.td-fields--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.td-fields--5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.td-flow__editor .td-fields--3, .td-flow__editor .td-fields--4, .td-flow__editor .td-fields--5 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.td-fields label, .td-standalone-field, .td-control-row label { display: grid; align-content: start; gap: 7px; min-width: 0; color: #334054; font-size: 11px; font-weight: 760; }
.td-fields input, .td-fields select, .td-fields textarea, .td-standalone-field textarea, .td-control-row input, .td-control-row select { width: 100%; min-width: 0; min-height: 43px; padding: 9px 11px; border: 1px solid #C9D1DC; border-radius: 9px; background: #FFFFFF; color: #172236; font-family: inherit; font-size: 13px; font-weight: 500; line-height: 1.4; transition: border-color .15s, box-shadow .15s; }
.td-fields textarea, .td-standalone-field textarea { resize: vertical; }
.td-fields input:focus, .td-fields select:focus, .td-fields textarea:focus, .td-standalone-field textarea:focus, .td-control-row input:focus, .td-control-row select:focus { outline: 0; border-color: var(--td-brand); box-shadow: 0 0 0 3px color-mix(in srgb, var(--td-brand) 13%, transparent); }
.td-fields label.is-readonly input { background: #F2F4F7; color: #6E7785; }
.td-field--wide { grid-column: 1 / -1; }
.td-doc-numbers { padding-top: 17px; border-top: 1px dashed #D9DFE7; }
.td-doc-numbers input { font-size: 11px; font-variant-numeric: tabular-nums; }

.td-more { margin-top: 17px; border-top: 1px solid #E7EBF1; }
.td-more summary, .td-item-more summary { padding-top: 15px; list-style: none; color: #075DE6; font-size: 11px; font-weight: 800; cursor: pointer; }
.td-more summary::-webkit-details-marker, .td-item-more summary::-webkit-details-marker { display: none; }
.td-more summary::after, .td-item-more summary::after { content: " +"; }
.td-more[open] summary::after, .td-item-more[open] summary::after { content: " −"; }
.td-more__body { display: grid; gap: 17px; padding-top: 16px; }
.td-more--compact { margin-top: 20px; }
.td-more--compact .td-control-row { padding-top: 15px; }
.td-manual-entry { margin: 0 0 17px; border: 1px solid #DDE4ED; border-radius: 13px; background: #FFFFFF; }
.td-manual-entry summary { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 15px 17px; list-style: none; color: #24344B; font-size: 12px; font-weight: 800; cursor: pointer; }
.td-manual-entry summary::-webkit-details-marker { display: none; }
.td-manual-entry summary::after { content: "+"; color: #075DE6; font-size: 16px; line-height: 1; }
.td-manual-entry[open] summary { border-bottom: 1px solid #E7EBF1; }
.td-manual-entry[open] summary::after { content: "−"; }
.td-manual-entry summary small { margin-left: auto; color: #8A94A3; font-size: 10px; font-weight: 600; }
.td-manual-entry__body { padding: 17px; }
.td-enterprise-assets { padding: 0 16px 16px; border: 1px solid #DFE5ED; border-radius: 13px; background: #FBFCFE; }
.td-assets-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.td-asset-control { display: flex; flex-wrap: wrap; align-content: start; align-items: center; gap: 8px; min-height: 122px; padding: 14px; border: 1px solid #DDE4ED; border-radius: 11px; background: #FFFFFF; }
.td-asset-control .td-label { flex-basis: 100%; }
.td-asset-control small { flex: 0 0 100%; color: #808B9A; font-size: 9px; line-height: 1.45; }
.td-asset-control--seal { background: linear-gradient(145deg, #FFFFFF, #FFF9F9); }
.td-local-note { display: flex; align-items: flex-start; gap: 7px; margin: 0; padding: 10px 12px; border-radius: 9px; background: #EEF5FF; color: #5B6A7F; font-size: 10px; line-height: 1.55; }
.td-local-note .icon { flex: 0 0 14px; width: 14px; height: 14px; margin-top: 1px; color: #075DE6; }
.td-logo-control { display: flex; flex-wrap: wrap; align-items: center; gap: 9px; }
.td-label { flex: 0 0 100%; color: #334054; font-size: 11px; font-weight: 760; }
.td-logo-upload { display: inline-flex; align-items: center; min-height: 42px; padding: 0 14px; border: 1px dashed #90A0B6; border-radius: 9px; color: #075DE6; font-size: 12px; font-weight: 800; cursor: pointer; }
.td-logo-upload:hover { border-color: #075DE6; background: #F3F7FF; }
.td-logo-upload input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.td-logo-control small { flex: 0 0 100%; color: #828B98; font-size: 10px; }
.td-text-button { padding: 7px 3px; border: 0; background: transparent; color: #657083; font-size: 12px; font-weight: 750; cursor: pointer; }
.td-text-button:hover { color: #075DE6; }

.td-products-card { display: grid; gap: 13px; }
.td-products-card[hidden] { display: none !important; }
.td-item-editor { display: grid; gap: 13px; }
.td-item-card { padding: 16px; border: 1px solid #DCE3EC; border-radius: 12px; background: #F9FBFD; }
.td-item-card__header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 13px; }
.td-item-card__header strong { color: #1B293D; font-size: 13px; }
.td-item-card__header button { padding: 2px 0; border: 0; background: transparent; color: #B33A3A; font-size: 11px; cursor: pointer; }
.td-item-card__header button:disabled { color: #ADB5C0; cursor: not-allowed; }
.td-item-main { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: end; }
.td-item-main .td-item-field--wide { grid-column: 1 / -1; }
.td-item-total { display: grid; align-content: end; min-width: 0; min-height: 43px; padding: 5px 2px; }
.td-item-total span { color: #667184; font-size: 10px; font-weight: 750; }
.td-item-total strong { overflow: hidden; margin-top: 4px; color: #075DE6; font-size: 14px; text-overflow: ellipsis; white-space: nowrap; }
.td-item-more { margin-top: 12px; border-top: 1px dashed #DDE3EB; }
.td-item-more > div { padding-top: 13px; }
.td-add-item { justify-self: start; min-height: 38px; padding: 0 15px; color: #075DE6; }

.td-style-card { display: grid; gap: 0; padding: 0; overflow: hidden; }
.td-control-group { display: grid; gap: 16px; padding: 21px; border-bottom: 1px solid #E7EBF1; }
.td-control-group > div:first-child { display: grid; gap: 3px; }
.td-control-group > div:first-child strong { color: #18263B; font-size: 13px; }
.td-control-group > div:first-child small { color: #7B8697; font-size: 10px; }
.td-template-picker { display: grid; grid-template-columns: 1fr; gap: 9px; }
.td-template-picker label { min-width: 0; cursor: pointer; }
.td-template-picker input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.td-template-picker label > span { display: grid; grid-template-columns: 58px minmax(0, 1fr); grid-template-rows: auto auto; align-items: center; gap: 2px 11px; min-height: 78px; padding: 10px; border: 1px solid #D9E0E9; border-radius: 11px; background: #FAFBFC; transition: .15s ease; }
.td-template-picker input:checked + span { border-color: #075DE6; background: #F3F7FF; box-shadow: 0 0 0 2px rgba(7, 93, 230, .08); }
.td-template-picker label strong { align-self: end; color: #1B293D; font-size: 11px; }
.td-template-picker label small { align-self: start; color: #828C9B; font-size: 9px; }
.td-template-thumb { grid-row: 1 / 3; display: block; position: relative; width: 58px; height: 54px; overflow: hidden; border: 1px solid #C9D2DE; border-radius: 4px; background: #FFFFFF; box-shadow: 0 4px 8px rgba(22, 36, 58, .07); }
.td-template-thumb::before, .td-template-thumb::after { content: ""; position: absolute; left: 7px; right: 7px; }
.td-template-thumb::before { top: 9px; height: 8px; background: #172A47; }
.td-template-thumb::after { top: 24px; height: 18px; border-top: 3px solid #0B5CFF; border-bottom: 1px solid #C7D0DC; }
.td-template-thumb--modern { border-top: 5px solid #0B5CFF; }
.td-template-thumb--modern::before { height: 4px; background: #0B5CFF; }
.td-template-thumb--minimal::before { height: 2px; background: #1E293B; }
.td-template-thumb--minimal::after { border-top-width: 1px; border-top-color: #64748B; }
.td-control-group--split { grid-template-columns: 1fr; align-items: start; }
.td-palette-group { min-width: 0; margin: 0; padding: 0; border: 0; }
.td-palette-group legend { margin-bottom: 9px; padding: 0; color: #566174; font-size: 11px; font-weight: 600; letter-spacing: .04em; }
.td-palette-picker { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.td-palette-picker > button { position: relative; display: flex; align-items: center; gap: 8px; min-width: 0; padding: 10px 8px; border: 1px solid #DEE3EA; border-radius: 8px; background: #FFFFFF; color: #364255; text-align: start; font-size: 11px; cursor: pointer; transition: border-color .15s, background .15s; }
.td-palette-picker > button:hover { border-color: #A0B2C9; background: #F8FAFC; }
.td-palette-picker > button.is-active { border-color: #075DE6; background: #F2F7FF; box-shadow: 0 0 0 1px #075DE6; color: #154DA6; }
.td-palette-picker > button:focus-visible { outline: 2px solid #075DE6; outline-offset: 3px; }
.td-palette-picker button i { display: block; flex: 0 0 22px; height: 28px; border-radius: 4px; background: linear-gradient(155deg, var(--a) 0 65%, var(--b) 65%); }
.td-palette-picker button span { font-weight: 600; white-space: nowrap; }
.td-palette-picker button b { position: absolute; top: -5px; right: -4px; display: none; width: 15px; height: 15px; border-radius: 50%; background: #075DE6; color: white; text-align: center; font-size: 10px; line-height: 15px; }
.td-palette-picker button.is-active b { display: block; }
.td-palette-custom { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; padding-top: 14px; border-top: 1px solid #E7EBF1; color: #566174; font-size: 11px; }
.td-palette-custom label { display: flex; align-items: center; gap: 6px; }
.td-palette-custom input[type="color"] { width: 30px; height: 30px; padding: 3px; border: 1px solid #CDD5E0; border-radius: 6px; background: #FFFFFF; cursor: pointer; }
.td-palette-status { margin: -6px 0 0; color: #52627A; font-size: 11px; }
.td-control-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; padding: 21px; }
.td-control-row--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.td-more--compact .td-control-row { padding-inline: 0; padding-bottom: 0; }

.td-seal-choice { display: grid; gap: 12px; padding: 19px 21px; border-bottom: 1px solid #E7EBF1; background: #FFFDFD; }
.td-toggle { display: flex; align-items: center; gap: 10px; color: #243249; font-size: 12px; cursor: pointer; }
.td-toggle input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.td-toggle > span { position: relative; width: 38px; height: 22px; border-radius: 999px; background: #C9D1DC; transition: background .2s ease; }
.td-toggle > span::after { content: ""; position: absolute; top: 3px; left: 3px; width: 16px; height: 16px; border-radius: 50%; background: #FFFFFF; box-shadow: 0 2px 5px rgba(24, 35, 51, .25); transition: transform .2s ease; }
.td-toggle input:checked + span { background: #075DE6; }
.td-toggle input:checked + span::after { transform: translateX(16px); }
.td-toggle input:focus-visible + span { outline: 3px solid rgba(7, 93, 230, .18); outline-offset: 2px; }
.td-seal-choice > p { margin: 0; color: #788496; font-size: 10px; line-height: 1.55; }
.td-range { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 12px; color: #526075; font-size: 10px; font-weight: 750; }
.td-range input { width: 100%; accent-color: #075DE6; }

.td-review-card { display: grid; overflow: hidden; border: 1px solid #DDE4ED; border-radius: 13px; background: #FFFFFF; }
.td-review-card button { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; align-items: center; gap: 9px; width: 100%; min-height: 64px; padding: 11px 14px; border: 0; border-bottom: 1px solid #E8ECF2; background: #FFFFFF; color: #29374C; text-align: left; cursor: pointer; }
.td-review-card button:last-child { border-bottom: 0; }
.td-review-card button:hover { background: #F6F9FE; }
.td-review-card button > span { font-size: 11px; font-weight: 800; }
.td-review-card button strong { max-width: 122px; overflow: hidden; color: #17253A; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.td-review-card button small { color: #075DE6; font-size: 9px; font-weight: 800; }
.td-customer-check { margin-top: 16px; padding: 16px; border: 1px solid #D8E5FA; border-radius: 13px; background: #F5F9FF; }
.td-customer-check strong { color: #172A47; font-size: 11px; }
.td-customer-check ol { display: grid; gap: 7px; margin: 12px 0 0; padding-left: 20px; color: #5D6B80; font-size: 10px; line-height: 1.55; }

.td-flow__preview { min-width: 0; overflow: visible; }
.td-preview__sticky { position: sticky; top: 14px; min-width: 0; }
.td-preview__header { display: flex; align-items: center; justify-content: space-between; gap: 18px; min-height: 70px; padding: 12px 15px; border: 1px solid #D5DDE8; border-radius: 15px 15px 0 0; background: #FFFFFF; }
.td-preview__customer { display: flex; align-items: center; gap: 6px; margin: 0; color: #68768A; font-size: 10px; font-weight: 800; }
.td-preview__customer > span { width: 7px; height: 7px; border-radius: 50%; background: #20A464; box-shadow: 0 0 0 4px rgba(32, 164, 100, .1); }
.td-preview__header h2 { margin: 4px 0 0; color: #0A1424; font-size: 20px; line-height: 1.1; letter-spacing: -.025em; }
.td-actions { display: flex; align-items: center; gap: 8px; }
.td-preview__header .btn { min-height: 39px; padding: 0 13px; font-size: 11px; }
.td-preview__toolbar { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 12px; padding: 10px 12px; border: 1px solid #D5DDE8; border-top: 0; background: #F9FBFD; }
.td-tabs { display: flex; gap: 4px; min-width: 0; max-width: 100%; padding: 4px; overflow-x: auto; border: 1px solid #D5DCE6; border-radius: 9px; background: #FFFFFF; scrollbar-width: thin; }
.td-tabs button { flex: 1 0 auto; min-height: 35px; padding: 0 9px; border: 0; border-radius: 7px; background: transparent; color: #647083; font-size: 10px; font-weight: 750; cursor: pointer; }
.td-tabs button[aria-selected="true"] { background: #0D1A2E; color: #FFFFFF; box-shadow: 0 5px 12px rgba(13, 26, 46, .16); }
.td-zoom { display: flex; align-items: center; gap: 3px; white-space: nowrap; }
.td-zoom button { min-width: 31px; height: 31px; padding: 0 8px; border: 1px solid #D3DAE4; border-radius: 7px; background: #FFFFFF; color: #415068; font-size: 12px; font-weight: 760; cursor: pointer; }
.td-zoom button:hover { border-color: #94B9F7; color: #075DE6; }
.td-zoom button:last-child { margin-left: 3px; }
.td-zoom strong { min-width: 44px; color: #5B687A; font-size: 10px; text-align: center; font-variant-numeric: tabular-nums; }
.td-paper-stage { display: grid; place-items: start center; height: calc(100vh - 194px); min-height: 720px; max-height: 1040px; padding: 28px 24px 48px; overflow: auto; border: 1px solid #CAD3DF; border-top: 0; border-radius: 0 0 15px 15px; background: #D9E0E8; box-shadow: inset 0 3px 12px rgba(38, 49, 64, .1); }
.td-documents { width: min(100%, 840px); transform: scale(var(--td-preview-zoom)); transform-origin: top center; transition: width .2s ease, transform .18s ease; will-change: transform; }
.td-workspace[data-current-step="6"] .td-documents { width: min(100%, 900px); }
.td-workspace.is-preview-focused .td-documents { width: min(100%, 940px); }
.td-workspace.is-preview-focused .td-paper-stage { height: calc(100vh - 170px); max-height: none; }
.td-workspace.is-preview-focused [data-td-focus-preview] { border-color: #075DE6; background: #EEF5FF; color: #075DE6; }
.td-document { box-sizing: border-box; display: none; width: 100%; min-width: 0; aspect-ratio: var(--td-paper-ratio); padding: var(--td-paper-padding); background: #FFFFFF; color: #182237; box-shadow: 0 24px 60px rgba(24, 34, 55, .18); font-family: Arial, "Noto Sans", "Noto Sans SC", sans-serif; font-size: 10.5px; line-height: 1.45; }
.td-document.is-active { display: block; }
.td-document[dir="rtl"] { font-family: Arial, "Noto Sans Arabic", sans-serif; }
.td-document__header { display: grid; grid-template-columns: 1fr auto; align-items: start; gap: 24px; padding-bottom: 15px; border-bottom: 3px solid var(--td-brand); }
.td-document__brand { display: flex; align-items: flex-start; gap: 12px; min-width: 0; }
.td-document__logo { width: 64px; height: 46px; object-fit: contain; object-position: left top; }
.td-document[dir="rtl"] .td-document__logo { object-position: right top; }
.td-document__logo-placeholder { display: none; }
.td-document__brand strong { display: block; max-width: 340px; color: var(--td-ink); font-size: 15px; line-height: 1.25; }
.td-document__brand span { display: block; max-width: 340px; margin-top: 5px; color: #697284; font-size: 8.5px; }
.td-document__title { text-align: right; }
.td-document[dir="rtl"] .td-document__title { text-align: left; }
.td-document__title h2 { margin: 0; color: var(--td-ink); font-size: 21px; line-height: 1.12; letter-spacing: .025em; }
.td-document__title span { display: block; margin-top: 6px; color: #9198A4; font-size: 8px; }
.td-document__parties { display: grid; grid-template-columns: 1fr 1fr .82fr; gap: 15px; padding: 15px 0; }
.td-document__party { min-width: 0; }
.td-document__party h3, .td-document__note h3, .td-document__contract h3 { margin: 0 0 5px; color: var(--td-brand); font-size: 8.5px; letter-spacing: .06em; text-transform: uppercase; }
.td-document__party strong { color: var(--td-ink); font-size: 10.5px; }
.td-document__party p { margin: 4px 0 0; color: #596577; font-size: 8.5px; }
.td-document__meta { margin: 0; }
.td-document__meta div { display: grid; grid-template-columns: 1fr 1.2fr; gap: 7px; padding: 3px 0; border-bottom: 1px solid #E9ECF0; }
.td-document__meta dt { color: #77808D; }
.td-document__meta dd { margin: 0; color: var(--td-ink); font-weight: 750; text-align: right; }
.td-document[dir="rtl"] .td-document__meta dd { text-align: left; }
.td-document__trade { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0 0 14px; border: 1px solid #DDE2E9; }
.td-document__trade div { min-height: 38px; padding: 5px 7px; border-right: 1px solid #DDE2E9; border-bottom: 1px solid #DDE2E9; }
.td-document__trade div:nth-child(4n) { border-right: 0; }
.td-document__trade dt { color: #818A98; font-size: 7.5px; }
.td-document__trade dd { margin: 2px 0 0; color: #263246; font-weight: 650; }
.td-table-wrap { width: 100%; overflow: visible; }
.td-document__table { width: 100%; border-collapse: collapse; table-layout: fixed; }
.td-document__table th { padding: 6px 4px; background: var(--td-ink); color: #FFFFFF; font-size: 7.5px; font-weight: 750; text-align: left; }
.td-document__table td { padding: 7px 4px; border-bottom: 1px solid #DDE2E9; color: #29364A; font-size: 8px; overflow-wrap: anywhere; vertical-align: top; }
.td-document__table tr { break-inside: avoid; page-break-inside: avoid; }
.td-document__table th:first-child, .td-document__table td:first-child { width: 5%; text-align: center; }
.td-document__table th:nth-last-child(-n+5), .td-document__table td:nth-last-child(-n+5) { text-align: right; }
.td-document[dir="rtl"] .td-document__table th { text-align: right; }
.td-document__totals { width: 42%; margin: 12px 0 10px auto; }
.td-document[dir="rtl"] .td-document__totals { margin-right: auto; margin-left: 0; }
.td-document__totals div { display: flex; justify-content: space-between; gap: 20px; padding: 3px 0; }
.td-document__totals dt { color: #657083; }
.td-document__totals dd { margin: 0; color: #273348; font-variant-numeric: tabular-nums; }
.td-document__totals .is-total { margin-top: 4px; padding-top: 7px; border-top: 2px solid var(--td-brand); font-size: 12px; font-weight: 850; }
.td-document__totals .is-total dt, .td-document__totals .is-total dd { color: var(--td-ink); }
.td-document__packing-totals { display: grid; grid-template-columns: repeat(5, 1fr); margin: 12px 0; border: 1px solid #DDE2E9; }
.td-document__packing-totals div { padding: 6px 8px; border-right: 1px solid #DDE2E9; }
.td-document__packing-totals div:last-child { border-right: 0; }
.td-document__packing-totals dt { color: #7C8593; font-size: 7.5px; }
.td-document__packing-totals dd { margin: 2px 0 0; color: var(--td-ink); font-weight: 800; }
.td-document__note, .td-document__contract { margin-top: 10px; padding: 8px 10px; border-left: 2px solid var(--td-brand); background: #F7F9FC; }
.td-document[dir="rtl"] .td-document__note, .td-document[dir="rtl"] .td-document__contract { border-right: 2px solid var(--td-brand); border-left: 0; }
.td-document__note p { margin: 0; color: #536074; font-size: 8px; }
.td-document__contract ol { display: grid; gap: 3px; margin: 0; padding-left: 18px; color: #4C586A; font-size: 8px; }
.td-document[dir="rtl"] .td-document__contract ol { padding-right: 18px; padding-left: 0; }
.td-document__footer { display: grid; grid-template-columns: 1fr 150px; align-items: end; gap: 20px; margin-top: 24px; color: #6C7583; font-size: 8px; }
.td-sign-line { position: relative; height: 56px; border-bottom: 1px solid #AEB5C0; }
.td-document__signatures { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; margin-top: 32px; }
.td-document__signatures div { position: relative; display: grid; gap: 7px; min-height: 78px; }
.td-document__signatures span { color: #536075; font-size: 8px; font-weight: 750; }
.td-document__signatures i { display: block; height: 25px; border-bottom: 1px solid #8E98A7; }
.td-document__signatures small { color: #828B98; font-size: 7.5px; }
.td-document__seal-wrap, .td-document__seal-zone { position: relative; min-height: 54px; }
.td-document__seal, .td-seal-image { position: absolute; z-index: 2; right: 8px; bottom: -5px; display: block; width: var(--td-seal-size, 96px); max-width: 140px; height: auto; pointer-events: none; object-fit: contain; filter: saturate(1.05); mix-blend-mode: multiply; }
.td-document[dir="rtl"] .td-document__seal, .td-document[dir="rtl"] .td-seal-image { right: auto; left: 8px; }
.td-document__signatures > div:first-child .td-document__seal, .td-document__signatures > div:first-child .td-seal-image { right: 18%; bottom: -8px; }

/* 三套成品版式 */
.td-document--executive .td-document__header { align-items: stretch; border-bottom-width: 1px; border-bottom-color: #D9DFE7; }
.td-document--executive .td-document__title { min-width: 205px; margin: calc(var(--td-paper-padding) * -.28) calc(var(--td-paper-padding) * -.28) 0 0; padding: 15px 16px 13px; border-top: 4px solid var(--td-brand); background: var(--td-ink); }
.td-document--executive[dir="rtl"] .td-document__title { margin-right: 0; margin-left: calc(var(--td-paper-padding) * -.28); }
.td-document--executive .td-document__title h2 { color: #FFFFFF; font-size: 19px; }
.td-document--executive .td-document__title span { color: rgba(255, 255, 255, .58); }
.td-document--executive .td-document__trade { border-top: 3px solid var(--td-brand); }

.td-document--modern { border-top: 10px solid var(--td-brand); }
.td-document--modern .td-document__header { border-bottom: 0; }
.td-document--modern .td-document__title { padding-left: 22px; border-left: 1px solid #D8DEE7; }
.td-document--modern[dir="rtl"] .td-document__title { padding-right: 22px; padding-left: 0; border-right: 1px solid #D8DEE7; border-left: 0; }
.td-document--modern .td-document__title h2 { color: var(--td-brand); font-size: 23px; }
.td-document--modern .td-document__party h3 { display: inline-block; padding: 3px 7px; border-radius: 3px; background: color-mix(in srgb, var(--td-brand) 10%, white); }
.td-document--modern .td-document__table th { background: var(--td-brand); }
.td-document--modern .td-document__note, .td-document--modern .td-document__contract { border-radius: 0 5px 5px 0; background: color-mix(in srgb, var(--td-brand) 5%, white); }

.td-document--minimal .td-document__header { padding-top: 5px; border-top: 1px solid #1F2937; border-bottom: 1px solid #1F2937; }
.td-document--minimal .td-document__title h2 { color: #111827; font-size: 19px; font-weight: 600; letter-spacing: .08em; }
.td-document--minimal .td-document__party h3, .td-document--minimal .td-document__note h3, .td-document--minimal .td-document__contract h3 { color: #3F4A5A; }
.td-document--minimal .td-document__trade { border-right: 0; border-left: 0; }
.td-document--minimal .td-document__table th { border-top: 1px solid #1F2937; border-bottom: 1px solid #1F2937; background: #FFFFFF; color: #111827; }
.td-document--minimal .td-document__totals .is-total { border-top-color: #1F2937; }
.td-document--minimal .td-document__note, .td-document--minimal .td-document__contract { border-left-color: #A3ABB7; background: #FAFAFA; }

.td-preview__hint { max-width: 680px; margin: 10px auto 0; color: #747E8D; font-size: 10px; line-height: 1.6; text-align: center; }
.td-help { background: #FFFFFF; }

@media (max-width: 1450px) {
  .td-flow { grid-template-columns: minmax(350px, 390px) minmax(0, 1fr); }
  .td-step { padding: 25px; }
  .td-stepper > i { flex-basis: 26px; }
  .td-stepper button { padding-inline: 4px; }
  .td-item-main { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .td-documents { width: min(100%, 800px); }
}

@media (max-width: 1180px) {
  .td-hero__inner { gap: 34px; }
  .td-app-shell { width: min(calc(100% - 24px), 1880px); }
  .td-flow { grid-template-columns: 350px minmax(0, 1fr); gap: 14px; }
  .td-step { padding: 22px; }
  .td-step__header h2 { font-size: 23px; }
  .td-stepper button small { display: none; }
  .td-stepper button { grid-template-rows: auto; }
  .td-stepper button > span { grid-row: auto; }
  .td-item-main { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .td-item-main .td-item-field--wide { grid-column: 1 / -1; }
  .td-paper-stage { padding-inline: 14px; }
  .td-preview__header { padding-inline: 12px; }
  .td-preview__header .td-actions { gap: 5px; }
  .td-preview__header .btn { padding-inline: 9px; }
  .td-preview__toolbar { grid-template-columns: 1fr; }
  .td-zoom { justify-content: flex-end; }
}

@media (max-width: 1099px) {
  .td-hero { padding: 34px 0; }
  .td-hero__inner { grid-template-columns: 1fr; }
  .td-hero__trust { display: none; }
  .td-hero h1 { font-size: 36px; }
  .td-desktop-required { display: block; }
  .td-workspace { display: none; }
}

.td-product-photo-editor { display: flex; align-items: center; gap: 16px; margin: 12px 0 20px; padding: 14px; border: 1px dashed #ccd8e8; border-radius: 10px; background: #f8faff; }
.td-product-photo-editor img, .td-product-photo-placeholder { width: 70px; height: 70px; object-fit: contain; background: white; border-radius: 8px; flex: 0 0 auto; }
.td-product-photo-placeholder { display: grid; place-items: center; color: #8ea8cd; font-size: 28px; }
.td-photo-upload { position: relative; display: inline-block; color: #075de6; font-weight: 700; cursor: pointer; }
.td-photo-upload input { position: absolute; inset: 0; opacity: 0; width: 100%; cursor: pointer; }
.td-photo-upload:focus-within { outline: 2px solid #075de6; outline-offset: 4px; }
.td-product-photo-editor small { display: block; margin: 5px 0; color: #66778d; font-size: 12px; }
.td-document { font-size: 12px; line-height: 1.4; overflow-wrap: anywhere; }
.td-document__parties { grid-template-columns: 1fr 1fr; padding: 12px 0; gap: 12px 22px; }
.td-document__meta { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 3px 18px; font-size: 11px; }
.td-document__brand span, .td-document__title span { font-size: 10px; }
.td-document__party p { font-size: 11px; }
.td-document__party strong { font-size: 12px; }
.td-document__party h3, .td-document__note h3, .td-document__contract h3 { font-size: 10px; }
.td-document__trade { grid-template-columns: repeat(3, minmax(0, 1fr)); margin-bottom: 12px; font-size: 11px; }
.td-document__trade dt, .td-document__packing-totals dt { font-size: 10px; color: #596577; }
.td-document__trade div:nth-child(4n) { border-right: 1px solid #DDE2E9; }
.td-document__trade div:nth-child(3n) { border-right: 0; }
.td-document__table th { font-size: 10px; padding: 8px 6px; }
.td-document__table td { font-size: 11px; padding: 9px 6px; }
.td-document__table th:nth-last-child(-n+5), .td-document__table td:nth-last-child(-n+5) { text-align: start; }
.td-document__table th.td-num, .td-document__table td.td-num { text-align: end; font-variant-numeric: tabular-nums; }
.td-document__table small { display: block; font-size: 10px; margin-top: 5px; }
.td-product-cell { display: flex; align-items: flex-start; gap: 12px; }
.td-product-cell img { width: 64px; height: 72px; flex: 0 0 64px; object-fit: contain; }
.td-product-cell > div { min-width: 0; }
.td-product-cell strong { display: block; color: var(--td-ink); }
.td-product-cell p { margin: 4px 0 0; }
.td-document__totals { width: 45%; break-inside: avoid; }
.td-document__totals .is-total { font-size: 15px; }
.td-document__note p, .td-document__contract ol { font-size: 11px; }
.td-document__footer, .td-document__signatures span, .td-document__signatures small { font-size: 10px; }
.td-document__header, .td-document__parties, .td-document__trade, .td-document__packing-totals, .td-document__footer, .td-document__signatures { break-inside: avoid; }
.td-document__note h3, .td-document__contract h3 { break-after: avoid; }
.td-payment-summary { clear: both; margin: 12px 0; padding: 12px 16px; border: 1px solid #cad8ea; border-radius: 5px; background: #f4f8ff; break-inside: avoid; }
.td-payment-summary h3 { margin: 0 0 8px; font-size: 11px; color: var(--td-ink); }
.td-payment-summary dl { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin: 0; }
.td-payment-summary dt { font-size: 11px; color: #536074; }
.td-payment-summary dd { margin: 3px 0 0; font-size: 16px; font-weight: 750; color: var(--td-ink); }
.td-payment-summary p { margin: 8px 0 0; font-size: 10px; color: #596577; }
.td-document__header { padding-bottom: 8px; gap: 18px; }
.td-document--executive .td-document__title { margin: 0; min-width: 180px; padding: 10px 14px; }
.td-document--executive[dir="rtl"] .td-document__title { margin: 0; }
.td-document__sample { margin-bottom: 6px; }
.td-document__parties { gap: 8px 22px; padding: 10px 0; }
.td-document__meta { grid-template-columns: 1fr 1fr; gap: 1px 22px; }
.td-document__meta div { grid-template-columns: auto minmax(0, 1fr); padding: 3px 0; }
.td-document__trade div { min-height: 32px; padding: 4px 7px; }
.td-financial-summary { display: grid; grid-template-columns: 1.2fr 1fr; align-items: start; gap: 22px; margin: 12px 0; break-inside: avoid; }
.td-financial-summary .td-payment-summary { margin: 0; padding: 10px 12px; }
.td-financial-summary .td-payment-summary dd { font-size: 14px; }
.td-financial-summary .td-document__totals { width: 100%; margin: 0; }
.td-document__closing { break-inside: avoid; }
.td-document__reference { margin: 14px 0 0; font-size: 10px; color: #596577; }
.td-document__supporting:has(> :nth-child(2)) { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.td-document__footer { margin-top: 12px; }
.td-document__seal-zone:has(.td-document__seal) { min-height: calc(var(--td-seal-size, 96px) + 8px); }
.td-document__seal { bottom: 5px; }
.td-document__signatures > div:first-child .td-document__seal { bottom: 5px; }

/* Editorial finish: quiet typography, shared alignment and rules instead of boxes.
   These are presentation-only rules shared by screen and printed documents. */
.td-document {
  --td-rule: #D8DDE3;
  --td-muted: #56616E;
  --td-text-size: 11.5px;
  --td-label-size: 10px;
  font-family: "Helvetica Neue", Arial, "PingFang SC", "Hiragino Sans", "Noto Sans", "Noto Sans SC", sans-serif;
  font-size: var(--td-text-size);
  line-height: 1.55;
  font-kerning: normal;
  color: #26303C;
}
.td-document__sample { margin-bottom: 8px; color: #687381; font-size: 9px; letter-spacing: .13em; }
.td-document .td-document__header {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr);
  align-items: start;
  gap: 28px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--td-ink);
}
.td-document__brand { align-items: center; gap: 14px; }
.td-document__brand > div { min-width: 0; }
.td-document__logo { flex: 0 0 58px; width: 58px; height: 50px; }
.td-document__brand strong { font-size: 15px; font-weight: 600; line-height: 1.4; letter-spacing: -.01em; }
.td-document__brand span { margin-top: 6px; font-size: 10.5px; line-height: 1.5; color: var(--td-muted); }
.td-document .td-document__title { min-width: 0; margin: 0; padding: 0; border: 0; background: transparent; }
.td-document .td-document__title h2 { color: var(--td-ink); font-size: 28px; font-weight: 600; line-height: 1.12; letter-spacing: -.025em; text-wrap: balance; }
.td-document .td-document__title span { margin-top: 9px; color: var(--td-muted); font-size: 10.5px; font-weight: 500; font-variant-numeric: tabular-nums; letter-spacing: .045em; }
.td-document--executive .td-document__title::before { content: ""; display: block; width: 28px; height: 2px; margin: 0 0 5px auto; background: var(--td-brand); }
.td-document--executive[dir="rtl"] .td-document__title::before { margin-inline-start: auto; margin-inline-end: 0; }
.td-document .td-document__parties { padding: 8px 0; gap: 7px 28px; }
.td-document .td-document__party h3,
.td-document .td-document__note h3,
.td-document .td-document__contract h3 { margin: 0 0 7px; padding: 0; border-radius: 0; background: transparent; font-size: var(--td-label-size); font-weight: 600; line-height: 1.4; letter-spacing: .075em; }
.td-document__party strong { display: block; font-size: 12.5px; font-weight: 600; line-height: 1.4; }
.td-document__party p { margin-top: 4px; color: var(--td-muted); font-size: var(--td-text-size); line-height: 1.5; }
.td-document__meta { gap: 0 28px; padding-top: 3px; }
.td-document:not([data-document="quotation"]) .td-document__meta { grid-template-columns: 1fr 1fr 1.25fr; gap: 0 16px; }
.td-document__meta div { padding: 3px 0; border-bottom-color: var(--td-rule); }
.td-document__meta dt { color: var(--td-muted); }
.td-document__meta dd { font-weight: 500; font-variant-numeric: tabular-nums; }
.td-document .td-document__trade { gap: 7px 20px; margin-bottom: 12px; padding: 0; border: 0; }
.td-document .td-document__trade div { min-height: 0; padding: 0; border: 0; }
.td-document__trade dt { color: var(--td-muted); font-size: var(--td-label-size); line-height: 1.4; }
.td-document__trade dd { margin-top: 3px; color: #293542; font-size: var(--td-text-size); font-weight: 500; line-height: 1.5; }
.td-document .td-document__table th { padding: 10px 7px; border-top: 1.5px solid var(--td-ink); border-bottom: 1px solid var(--td-rule); background: #FFFFFF; color: var(--td-ink); font-size: var(--td-label-size); font-weight: 600; line-height: 1.45; letter-spacing: .015em; }
.td-document .td-document__table td { padding: 9px 7px; border-bottom-color: var(--td-rule); color: #37424E; font-size: var(--td-text-size); line-height: 1.55; }
.td-document .td-document__table th:first-child,
.td-document .td-document__table td:first-child { padding-inline-start: 0; color: var(--td-muted); text-align: start; }
.td-document .td-document__table th:last-child,
.td-document .td-document__table td:last-child { padding-inline-end: 0; }
.td-document .td-price-table td.td-num { font-size: 12px; font-weight: 500; font-variant-numeric: lining-nums tabular-nums; letter-spacing: 0; }
.td-document .td-price-table td:last-child { font-weight: 600; color: var(--td-ink); }
.td-document .td-unit { display: block; margin-top: 3px; font-size: 10px; font-weight: 400; line-height: 1.4; color: var(--td-muted); }
.td-product-cell { gap: 12px; }
.td-product-cell img { width: 60px; height: 68px; flex-basis: 60px; }
.td-product-cell strong { font-size: 12px; font-weight: 600; line-height: 1.5; letter-spacing: .02em; }
.td-product-cell p { margin-top: 5px; }
.td-document__totals { margin-top: 8px; margin-bottom: 12px; font-size: var(--td-text-size); font-variant-numeric: lining-nums tabular-nums; }
.td-document__totals div { gap: 12px; padding: 3px 0; }
.td-document__totals dt { color: var(--td-muted); }
.td-document__totals .is-total { align-items: baseline; margin-top: 8px; padding-top: 10px; border-top: 1px solid var(--td-ink); font-weight: 600; }
.td-document__totals .is-total dt { font-size: 11px; letter-spacing: .06em; }
.td-document__totals .is-total dd { color: var(--td-brand); font-size: 25px; font-weight: 600; line-height: 1.2; letter-spacing: -.02em; }
.td-document .td-payment-summary { padding: 12px 0 0; border: 0; border-top: 1px solid var(--td-rule); border-radius: 0; background: transparent; }
.td-payment-summary h3 { margin-bottom: 12px; font-size: 10px; font-weight: 650; letter-spacing: .07em; }
.td-payment-summary dl { gap: 16px; }
.td-payment-summary dt { color: var(--td-muted); font-size: 10px; }
.td-financial-summary .td-payment-summary dd { margin-top: 5px; font-size: 18px; font-weight: 500; }
.td-payment-summary p { margin-top: 12px; font-size: 10px; line-height: 1.5; }
.td-financial-summary { grid-template-columns: 1fr 1fr; gap: 28px; margin: 10px 0 12px; }
.td-document__packing-totals { gap: 14px; margin: 14px 0; padding: 10px 0; border: 0; border-block: 1px solid var(--td-ink); }
.td-document__packing-totals div { padding: 0; border: 0; }
.td-document__packing-totals dd { margin-top: 5px; font-size: 15px; font-weight: 550; font-variant-numeric: tabular-nums; }
.td-document .td-document__note,
.td-document .td-document__contract { margin-top: 9px; padding: 9px 0 0; border: 0; border-top: 1px solid var(--td-rule); border-radius: 0; background: transparent; }
.td-document__note p { color: var(--td-muted); font-size: 11px; line-height: 1.55; text-align: start; }
.td-document__contract ol { gap: 8px; padding-inline-start: 20px; color: #37424E; line-height: 1.6; }
.td-document__contract li { padding-inline-start: 4px; }
.td-document__contract li::marker { color: var(--td-brand); font-size: 10px; font-weight: 650; }
.td-document__supporting:has(> :nth-child(2)) { grid-template-columns: minmax(0, 2fr) minmax(0, 3fr); gap: 28px; }
.td-document__reference { margin-top: 18px; color: var(--td-muted); font-size: 10px; letter-spacing: .035em; }
.td-document__footer { grid-template-columns: 1fr 180px; align-items: center; margin-top: 12px; color: var(--td-muted); }
.td-document__footer > p { margin: 0; padding-bottom: 4px; text-align: end; }
.td-sign-line, .td-document__signatures i { border-bottom-color: var(--td-ink); }
.td-document__signatures { gap: 60px; margin-top: 26px; }
.td-document__signatures span { color: var(--td-ink); font-weight: 550; }
.td-document__signatures small { color: var(--td-muted); line-height: 1.5; }
.td-document--modern { border-top-width: 6px; }
.td-document--modern .td-document__title h2 { color: var(--td-brand); }
.td-document--modern .td-document__table th { border-top-color: var(--td-brand); background: color-mix(in srgb, var(--td-brand) 5%, white); }
.td-document--minimal .td-document__title h2 { font-weight: 500; letter-spacing: .015em; }
.td-document:lang(zh) .td-document__title h2,
.td-document:lang(ja) .td-document__title h2,
.td-document:lang(ko) .td-document__title h2 { letter-spacing: .035em; line-height: 1.3; }
.td-document--minimal .td-document__totals .is-total dd,
.td-document--minimal .td-document__contract li::marker { color: var(--td-ink); }
.td-document[dir="rtl"] .td-document__title h2,
.td-document[dir="rtl"] .td-document__party h3,
.td-document[dir="rtl"] .td-document__note h3,
.td-document[dir="rtl"] .td-document__contract h3 { letter-spacing: normal; }
.td-document[dir="rtl"] .td-document__note,
.td-document[dir="rtl"] .td-document__contract { border-inline: 0; }
.td-document__brand strong, .td-document__brand span,
.td-document__party strong, .td-document__party p,
.td-document__trade dd, .td-document__note p { unicode-bidi: plaintext; }
.td-template-thumb--executive::before { left: 31px; height: 3px; background: #172A47; }
.td-template-thumb--executive::after { border-top: 1px solid #172A47; }

/* Guided editing: one task at a time, then a dedicated document workspace. */
@media screen {
  .td-hero--compact { padding: 28px 0; }
  .td-hero--compact h1 { font-size: 34px; }
  .td-hero--compact .td-hero__lede { font-size: 15px; }
  .td-workspace { scroll-margin-top: 86px; }
  .td-app-shell { width: min(calc(100% - 64px), 1480px); }
  .td-appbar { box-shadow: none; border-radius: 12px; padding: 18px 24px; }
  .td-stepper { padding-top: 18px; }
  .td-stepper button { padding: 5px 12px; column-gap: 12px; }
  .td-stepper button strong { font-size: 14px; }
  .td-stepper button small { font-size: 11px; line-height: 1.8; color: #788493; }
  .td-stepper button:disabled { cursor: not-allowed; opacity: .55; }
  .td-workspace:not([data-phase="3"]):not([data-phase="4"]) .td-language-switch { display: none; }
  .td-flow, .td-workspace[data-current-step="6"] .td-flow { display: block; }
  .td-flow__editor { width: min(100%, 900px); margin: 28px auto 0; }
  .td-flow__editor[hidden], .td-flow__preview[hidden], .td-workspace [hidden] { display: none !important; }
  .td-edit-context { display: flex; justify-content: space-between; align-items: center; min-height: 42px; margin-bottom: 14px; gap: 20px; }
  .td-substeps { display: flex; gap: 5px; }
  .td-substeps button { padding: 9px 16px; border: 0; border-radius: 8px; background: transparent; color: #68768a; font: inherit; font-size: 13px; cursor: pointer; }
  .td-substeps button.is-active { background: #fff; color: #16499f; box-shadow: 0 1px 5px #17283f12; font-weight: 650; }
  .td-substeps button:disabled { opacity: .5; cursor: not-allowed; }
  .td-return-review { display: inline-flex; align-items: center; gap: 8px; padding: 9px 0; border: 0; background: transparent; color: #075de6; font: inherit; font-size: 13px; font-weight: 650; cursor: pointer; }
  .td-return-review .icon { width: 16px; height: 16px; }
  .td-step { min-height: 0; padding: 36px 42px 28px; border-radius: 14px; box-shadow: 0 12px 40px #21364c05; }
  .td-step__header { margin-bottom: 28px; }
  .td-step__header .eyebrow { font-weight: 650; letter-spacing: .08em; }
  .td-step__header h2 { margin-top: 10px; font-size: 28px; letter-spacing: -.025em; }
  .td-step__header h2:focus, .td-preview__header h2:focus { outline: none; }
  .td-step__header > p:last-child { max-width: 650px; font-size: 14px; line-height: 1.85; }
  .td-step__actions { margin-top: 30px; padding-top: 24px; }
  .td-step__actions .btn { font-size: 14px; }
  .td-fields { gap: 20px 24px; }
  .td-fields label, .td-standalone-field, .td-control-row label { font-size: 13px; font-weight: 550; gap: 9px; }
  .td-fields label small { color: #768294; font-size: 11px; font-weight: 400; line-height: 1.7; }
  .td-fields input, .td-fields select, .td-fields textarea, .td-standalone-field textarea, .td-control-row input, .td-control-row select { min-height: 46px; font-size: 14px; font-weight: 400; }
  .td-simple-card, .td-manual-entry { border: 0; border-radius: 0; }
  .td-simple-card { padding: 0; }
  .td-manual-entry summary { padding: 0 0 16px; font-size: 14px; }
  .td-manual-entry__body { padding: 22px 0 0; }
  details.td-smart-box { margin-bottom: 26px; padding: 16px 20px; border-radius: 10px; box-shadow: none; background: #f6f9ff; }
  .td-smart-box > summary { color: #224573; font-size: 13px; font-weight: 600; cursor: pointer; }
  .td-smart-box > summary small { margin-left: 12px; color: #6c7c94; font-size: 11px; font-weight: 400; }
  .td-import-note { margin: 18px 0 10px; color: #6b7890; font-size: 12px; line-height: 1.7; }
  .td-parse-candidates { margin-top: 16px; padding-top: 12px; border-top: 1px solid #dce5f2; }
  .td-parse-candidates > p { font-size: 12px; color: #5b6b80; }
  .td-candidate-list, .td-candidate-table { max-height: 330px; overflow: auto; }
  .td-candidate-list > label { display: flex; align-items: start; gap: 12px; padding: 10px 0; border-bottom: 1px solid #e1e7ef; font-size: 13px; cursor: pointer; }
  .td-candidate-list input { margin-top: 5px; }
  .td-candidate-list > label > span { display: grid; min-width: 0; gap: 5px; overflow-wrap: anywhere; }
  .td-candidate-list small { color: #6e7888; }
  .td-candidate-table table { width: 100%; font-size: 12px; text-align: left; border-collapse: collapse; }
  .td-candidate-table th, .td-candidate-table td { padding: 10px; border-bottom: 1px solid #dce5f2; overflow-wrap: anywhere; }
  .td-flow-error { margin: 0 0 14px; padding: 14px 18px; color: #a72424; background: #fff0f0; border: 1px solid #ebc9c9; border-radius: 10px; font-size: 13px; }
  .td-item-card { padding: 22px; margin-bottom: 6px; background: #fbfcfe; }
  .td-item-main { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .td-item-card__header strong { font-size: 14px; }
  .td-template-picker { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .td-palette-picker { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .td-control-row { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .td-control-row--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .td-more--compact { margin-inline: 21px; }
  .td-more summary { font-size: 13px; font-weight: 600; }
  .td-control-group > div:first-child strong { font-size: 14px; }
  .td-template-picker label strong { font-size: 12px; }
  .td-template-picker label small { font-size: 11px; }
  .td-flow__preview { margin-top: 22px; scroll-margin-top: 86px; }
  .td-preview__sticky { position: static; }
  .td-preview__header { padding: 18px 24px; min-height: 82px; }
  .td-preview__header h2 { font-size: 23px; line-height: 1.5; }
  .td-preview__header .btn { min-height: 42px; font-size: 13px; padding-inline: 18px; }
  .td-preview__toolbar { padding: 12px 24px; }
  .td-tabs { max-width: 790px; gap: 8px; }
  .td-tabs button { padding: 0 18px; font-size: 13px; min-height: 38px; }
  .td-review-details { margin-bottom: 12px; }
  .td-review-details > summary { width: fit-content; padding: 6px 0; color: #263d5b; font-size: 13px; font-weight: 600; cursor: pointer; }
  .td-review-details > summary small { margin-left: 12px; font-weight: 400; color: #778498; }
  .td-review-card { grid-template-columns: repeat(5, minmax(0, 1fr)); margin-top: 10px; }
  .td-review-card button { grid-template-columns: 1fr auto; border-bottom: 0; border-right: 1px solid #e8ecf2; padding: 14px 18px; gap: 8px; }
  .td-review-card button > strong { grid-row: 2; grid-column: 1 / -1; max-width: 100%; font-size: 12px; font-weight: 400; }
  .td-review-card button > small { grid-column: 2; grid-row: 1; font-size: 11px; }
  .td-review-card button > span { font-size: 12px; }
  .td-paper-stage { height: calc(100vh - 290px); min-height: 580px; max-height: none; padding: 40px 48px 80px; background: #e3e8ef; }
  .td-workspace[data-current-step="6"] .td-documents { width: min(100%, 1000px); }
  .td-review-footer { display: flex; justify-content: space-between; align-items: center; gap: 24px; padding: 5px 3px; }
  .td-preview__hint { font-size: 12px; }
  .td-substeps button:focus-visible, .td-return-review:focus-visible, .td-smart-box > summary:focus-visible, .td-review-details > summary:focus-visible { outline: 2px solid #075de6; outline-offset: 4px; }
  @media (prefers-reduced-motion: reduce) {
    .td-workspace *, .td-workspace *::before, .td-workspace *::after { transition: none !important; scroll-behavior: auto !important; }
  }
}

@media print {
  html, body { margin: 0 !important; padding: 0 !important; background: #FFFFFF !important; }
  body.td-printing .site-header,
  body.td-printing .tabbar,
  body.td-printing .to-top,
  body.td-printing .jump-dialog,
  body.td-printing #wpadminbar,
  body.td-printing .skip-link,
  body.td-printing .td-hero,
  body.td-printing .td-desktop-required,
  body.td-printing .td-appbar,
  body.td-printing .td-demo-notice,
  body.td-printing .td-flow__editor,
  body.td-printing .td-preview__header,
  body.td-printing .td-preview__toolbar,
  body.td-printing .td-tabs,
  body.td-printing .td-zoom,
  body.td-printing .td-preview__hint,
  body.td-printing .td-help,
  body.td-printing .site-footer { display: none !important; }
  body.td-printing .site-main,
  body.td-printing .td-workspace,
  body.td-printing .td-flow,
  body.td-printing .td-flow__preview,
  body.td-printing .td-preview__sticky,
  body.td-printing .td-paper-stage,
  body.td-printing .td-documents { display: block !important; width: auto !important; max-width: none !important; min-width: 0 !important; height: auto !important; max-height: none !important; min-height: 0 !important; margin: 0 !important; padding: 0 !important; overflow: visible !important; border: 0 !important; background: #FFFFFF !important; box-shadow: none !important; transform: none !important; }
  body.td-printing .td-review-details, body.td-printing .td-review-footer { display: none !important; }
  body.td-printing .td-document { box-sizing: border-box; width: 100% !important; min-width: 0 !important; min-height: 0; aspect-ratio: auto; margin: 0 !important; padding: 0 !important; overflow: visible; box-shadow: none !important; break-after: page; page-break-after: always; print-color-adjust: exact; -webkit-print-color-adjust: exact; }
  body.td-printing .td-table-wrap { overflow: visible; }
  body.td-printing .td-document__table thead { display: table-header-group; }
  body.td-print-current .td-document { display: none !important; }
  body.td-print-current .td-document.is-active { display: block !important; }
  body.td-print-all .td-document { display: block !important; }
  body.td-printing .td-document:last-child { break-after: auto; page-break-after: auto; }
  body.td-print-current .td-document.is-active { break-after: auto; page-break-after: auto; }
}
