.q-root { --q-line:#dedddd; --q-ink:#451324; --q-section:#ededed; --q-heading:#e4e4e4; --q-subtotal:#efefef; color:var(--ink,#383442); }
.q-root h1 {font-size:clamp(30px,3.2vw,52px);line-height:1.08;letter-spacing:-.045em;}
.q-root h2 {font-size:25px;letter-spacing:-.035em;line-height:1.2;}
.q-root h3 {font-size:17px;line-height:1.35;}
.q-root p {line-height:1.6;}
.q-root .panel,.q-hub-card,.q-home-link {border:var(--ds-section-border-width,2px) solid #dedddd;background:#fff;box-shadow:0 8px 30px #00000006;border-radius:24px;}
.q-root .panel {padding:20px 24px;}
.q-hero {display:flex;justify-content:space-between;align-items:center;gap:30px;min-height:260px;background:radial-gradient(ellipse at 90% 0%,#eed9e555,transparent 50%),radial-gradient(ellipse at 90% 100%,#ddf4f066,transparent 65%),#fff!important;}
.q-hero h1 {color:#451324;margin:18px 0;}
.q-hero p {margin:0;color:#716875;}
.q-hero-orb {width:210px;flex:none;}
.q-register-top,.q-tools,.q-header-actions,.q-breadcrumb,.q-meta,.q-breakdown-head,.q-option-top,.q-option-foot,.q-option-heading,.q-editor-top {display:flex;align-items:center;gap:16px;}
.q-register-top {justify-content:space-between;margin:30px 0 22px;}
.q-register-top h2,.q-register-top p {margin:0;}
.q-tools,.q-header-actions {flex-wrap:wrap;}
.q-metrics {display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:25px;margin-bottom:24px;}
.q-metrics>div {display:flex;flex-direction:column;gap:8px;border-right:1px solid #e7e7e7;}
.q-metrics>div:last-child {border:0;}
.q-metrics strong {font-size:32px;letter-spacing:-.04em;color:#451324;}
.q-metrics span,.q-meta,.q-table small,.q-audit,.q-row-total small {font-size:13px;color:#766d7a;}
.q-filters {display:flex;gap:20px;margin-bottom:24px;}
.q-filters label {display:flex;flex-direction:column;gap:8px;font-size:12px;min-width:180px;}
.q-filters label:first-child {flex:1;}
.q-root input,.q-root select,.q-root textarea,[data-q-form] input,[data-q-form] select,[data-q-form] textarea {border:1px solid #d9d7d8;border-radius:10px;background:#fff;padding:8px 10px;min-height:38px;min-width:0;font:inherit;color:inherit;width:100%;}
.q-root input:focus,.q-root select:focus,.q-root textarea:focus {outline:2px solid #451324;outline-offset:2px;}
.q-table-scroll {overflow-x:auto;}
.q-table {width:100%;border-collapse:collapse;text-align:left;font-size:14px;font-variant-numeric:tabular-nums;}
.q-table th {font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:#716a76;padding:10px 12px;background:var(--q-heading);}
.q-table td {padding:14px 12px;border-bottom:1px solid #e9e8e8;vertical-align:top;}
.q-table td:first-child {width:48%;}
.q-table td:not(:first-child) {white-space:nowrap;}
.q-table td small {display:block;margin-top:6px;white-space:normal;}
.q-table td strong {font-weight:550;}
.q-table tfoot th,.q-table tfoot td {padding:10px 12px;background:var(--q-subtotal);text-transform:none;letter-spacing:0;font-size:13px;border:0;}
.q-register-table td:first-child {width:36%;min-width:200px;}
.q-register-table a {color:inherit;}
.q-register-table tbody tr:hover {background:#fafafa;}
.q-value {color:#451324;}
.q-status {display:inline-flex;font-size:11px;padding:7px 11px;background:#f4f4f4;border:1px solid #e1dfe0;border-radius:100px;white-space:nowrap;}
.q-status.issued,.q-status.in_review {color:#451324;border-color:#b7a5ad;background:#fff;}
.q-status.approved {color:#365f45;background:#f2f7f3;border-color:#c6d9cc;}
.q-status.changes_requested {color:#805922;background:#faf7f1;}
.q-breadcrumb {justify-content:space-between;color:#766d7a;font-size:13px;margin:0 0 14px;}
.q-detail-header {display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:16px;}
.q-detail-header h1 {font-size:clamp(28px,3vw,43px);margin:12px 0 14px;}
.q-meta {flex-wrap:wrap;gap:15px;}
.q-header-actions {justify-content:flex-end;max-width:280px;}
.q-header-actions .q-field {width:100%;}
.q-field {display:flex;flex-direction:column;gap:4px;font-size:13px;line-height:1.35;margin:0;}
.q-field>span {font-size:11px;line-height:1.35;font-weight:550;color:#716875;}
.q-field textarea {resize:vertical;}
.q-option-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin-bottom:16px;}
.q-option-card {appearance:none;text-align:left;color:inherit;font:inherit;cursor:pointer;transition:border-color .2s,box-shadow .2s;display:flex;flex-direction:column;align-items:stretch;}
.q-option-card.is-viewed {border-color:#8e7b85;}
.q-option-card.is-selected {border-color:#451324;box-shadow:0 0 0 1px #451324;}
.q-option-card:focus-visible {outline:3px solid #451324;outline-offset:4px;}
.q-option-card h2 {margin:10px 0 6px;}
.q-option-card p {font-size:14px;color:#716875;margin:0 0 10px;flex:1;}
.q-option-top,.q-option-foot {justify-content:space-between;}
.q-radio {border:1.5px solid #b2aab0;border-radius:50%;width:24px;height:24px;text-align:center;line-height:22px;color:#fff;}
.is-selected .q-radio {background:#451324;border-color:#451324;}
.q-price {font-size:32px;font-weight:500;letter-spacing:-.04em;color:#451324;}
.q-option-foot {margin-top:12px;padding-top:10px;border-top:1px solid #e8e6e7;font-size:12px;}
.q-breakdown-head {justify-content:space-between;margin-bottom:12px;}
.q-breakdown-head h2 {margin:6px 0 0;}
.q-breakdown-head>span {font-size:12px;color:#766d7a;}
.q-section+.q-section {margin-top:18px;}
.q-section h3 {margin:10px 0;}
.q-additions {margin-top:12px;color:#716875;font-size:12px;max-width:360px;}
.q-additions summary {cursor:pointer;}
.q-additions div {display:flex;justify-content:space-between;gap:20px;padding:7px 0;border-bottom:1px solid #eee;}
.q-additions b {font-weight:500;white-space:nowrap;}
.q-grand-total,.q-option-total,.q-subtotal {display:flex;align-items:center;justify-content:space-between;gap:20px;}
.q-grand-total {border-top:2px solid #ddd;margin-top:16px;padding-top:14px;font-size:16px;color:#451324;}
.q-grand-total strong {font-size:32px;font-weight:500;letter-spacing:-.04em;}
.q-terms {margin-top:18px;padding-top:10px;border-top:1px solid #eee;}
.q-terms p,.q-messages p {white-space:pre-wrap;overflow-wrap:anywhere;}
.q-terms p {font-size:13px;color:#716875;}
.q-decision {display:flex;justify-content:space-between;align-items:center;gap:20px;margin:16px 0;}
.q-decision h3,.q-decision p {margin:0;}
.q-decision p {font-size:13px;color:#716875;margin-top:6px;}
.q-audit {margin:16px 4px;line-height:1.6;}
.q-conversation {margin-top:16px;}
.q-conversation h2 {margin:10px 0 12px;}
.q-conversation-tabs {display:flex;gap:10px;flex-wrap:wrap;}
.q-conversation-tabs [aria-pressed=true] {outline:1px solid #766d7a;}
.q-conversation>.muted {font-size:13px;}
.q-messages {max-height:420px;overflow:auto;margin:14px 0;border-top:1px solid #e4e3e3;}
.q-messages article {padding:14px 0;border-bottom:1px solid #e4e3e3;}
.q-messages article>div {display:flex;gap:15px;justify-content:space-between;font-size:13px;}
.q-messages time {font-size:12px;color:#716875;}
.q-messages p {font-size:14px;margin:10px 0 0;}
.q-conversation form {display:grid;gap:15px;}
.q-conversation form button {justify-self:end;}
.q-empty {padding:18px 0;color:#716875;font-size:14px;text-align:center;}
.q-error {border-left:4px solid #80294b;padding:16px;color:#80294b;background:#fafafa;}
.q-notice {padding:15px 20px;background:#f7f7f7;border-radius:12px;}
.q-approval-record {display:flex;align-items:center;gap:18px;margin-bottom:24px;color:#365f45;}
.q-approval-record span {display:block;font-size:13px;margin-top:6px;color:#716875;}
.q-form-grid {display:grid;grid-template-columns:2fr 1fr 1fr 100px;gap:15px;}
.q-editor-top {justify-content:space-between;align-items:flex-start;margin-bottom:16px;}
.q-editor-top h2 {margin:0;}
.q-editor-top p {font-size:13px;margin:6px 0 0;}
.q-editor-top>span {font-size:12px;color:#716875;white-space:nowrap;}
.q-editor-option {margin-top:18px;padding-top:18px;border-top:2px solid #dedddd;}
.q-option-letter {display:grid;place-items:center;width:38px;height:38px;background:#f4f4f4;border-radius:50%;color:#451324;flex:none;}
.q-option-heading {margin-bottom:10px;align-items:end;}
.q-option-heading>.q-field {flex:1;}
.q-option-heading>div {display:flex;gap:10px;}
.q-editor-section {padding:14px;background:var(--q-section);border:1px solid #d7d7d7;border-radius:14px;margin:14px 0;}
.q-edit-row {padding:12px 0;border-top:1px solid #ddd;}
.q-row-main {display:grid;grid-template-columns:minmax(180px,1fr) 130px 130px auto;gap:14px;align-items:end;}
.q-row-total {display:flex;flex-direction:column;gap:5px;padding-bottom:8px;text-align:right;}
.q-row-quantities {display:flex;gap:12px;flex-wrap:wrap;align-items:end;margin-top:10px;}
.q-row-quantities>div {display:flex;gap:10px;align-items:center;}
.q-row-quantities .q-field {width:90px;}
.q-row-quantities .q-field:first-child {width:115px;}
.q-row-details {font-size:12px;color:#716875;margin-top:10px;}
.q-row-details summary {cursor:pointer;margin-bottom:8px;}
.q-addition-edit {display:flex;gap:12px;align-items:end;margin:6px 0;}
.q-addition-edit .q-field:first-child {flex:1;}
.q-addition-edit .q-field:nth-child(2) {width:130px;}
.q-row-details>.q-field {margin-top:10px;}
.q-subtotal {margin-top:12px;font-size:13px;}
.q-option-total {padding:10px 0;margin-bottom:4px;font-size:18px;color:#451324;}
.q-notes {margin-top:18px;}
.q-hub-card,.q-home-link {display:flex;align-items:center;justify-content:space-between;gap:25px;padding:26px 30px;margin:26px 0;}
.q-hub-card h2,.q-home-link h2 {margin:10px 0;font-size:26px;}
.q-hub-card p,.q-home-link p {margin:0;color:#716875;font-size:14px;}
.q-recipients {display:grid;gap:10px;margin:20px 0;}
.q-recipients label {display:flex;align-items:center;gap:14px;padding:14px;border:1px solid #ddd;border-radius:12px;}
.q-recipients input {width:18px;height:18px;accent-color:#451324;}
.q-recipients small {display:block;color:#716875;font-size:12px;}
.q-confirm-total {display:flex;flex-direction:column;gap:12px;border:1px solid #ddd;border-radius:16px;padding:22px;color:#451324;}
.q-confirm-total b {font-size:32px;}
.q-access-list label {display:flex;justify-content:space-between;align-items:center;gap:20px;padding:12px 0;border-bottom:1px solid #eee;}
.q-access-list select {max-width:210px;}
[data-q-form]>.q-field {margin:18px 0;}
@media(max-width:900px){.q-detail-header,.q-decision {flex-direction:column;align-items:stretch;}.q-header-actions {max-width:none;justify-content:start;}.q-header-actions .q-field {width:auto;flex:1;}.q-form-grid {grid-template-columns:1fr 1fr;}.q-row-main {grid-template-columns:1fr 110px;}.q-row-main>.q-field:first-child {grid-column:1/-1;}.q-register-top {align-items:start;flex-direction:column;}}
@media(max-width:600px){.q-root .panel {padding:16px;border-radius:20px;}.q-hero-orb {display:none;}.q-metrics {grid-template-columns:1fr;gap:18px;}.q-metrics>div {border-right:0;border-bottom:1px solid #eee;padding-bottom:15px;}.q-metrics strong {font-size:28px;}.q-table {min-width:600px;}.q-filters {flex-direction:column;}.q-option-grid {grid-template-columns:1fr;}.q-option-heading {flex-wrap:wrap;}.q-option-heading>.q-field {min-width:170px;}.q-editor-section {padding:14px;}.q-hub-card,.q-home-link {flex-direction:column;align-items:start;}.q-breadcrumb {flex-wrap:wrap;}.q-editor-top {flex-direction:column;}.q-addition-edit {flex-wrap:wrap;}.q-table-scroll:focus-visible {outline:2px solid #451324;}}
html[data-surface] .q-root .q-option-card.is-viewed {border-color:#8e7b85;}
html[data-surface] .q-root .q-option-card.is-selected {border-color:#451324;box-shadow:0 0 0 1px #451324;}
html[data-surface] .q-root .q-detail-header {background:radial-gradient(ellipse at 100% 0%,#eed9e533,transparent 55%),radial-gradient(ellipse at 85% 100%,#ddf4f044,transparent 65%),#fff;}
@media(max-width:600px){
 .q-detail-table {min-width:0;display:block;}
 .q-detail-table thead {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);}
 .q-detail-table tbody,.q-detail-table tfoot {display:block;}
 .q-detail-table tbody tr {display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:14px 0;border-bottom:1px solid #e4e3e3;}
 .q-detail-table td {display:block;width:auto!important;border:0;padding:0;white-space:normal!important;}
 .q-detail-table td:first-child {grid-column:1/-1;}
 .q-detail-table td[data-label]::before {content:attr(data-label);display:block;font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:#716875;margin-bottom:7px;}
 .q-detail-table tfoot tr {display:flex;justify-content:space-between;align-items:center;gap:10px;background:var(--q-subtotal);padding:10px 8px;}
 .q-detail-table tfoot th,.q-detail-table tfoot td {padding:0;background:none;font-size:12px;}
 .q-grand-total strong {font-size:27px;}
}

/* Compact editor controls keep the shared soft-button treatment. */
.q-builder .btn.small {min-height:34px;padding:7px 14px;font-size:12px;}
@media (max-width:600px) {
 .q-builder .btn.small,.q-root input,.q-root select {min-height:40px;}
}
