.signature-dialog{width:min(680px,calc(100vw - var(--space-panel)));max-height:calc(100dvh - var(--space-panel));font-size:var(--type-body)}
.signature-capture,.signature-request{display:grid;gap:var(--space-fields)}
.signature-identity{display:grid;grid-template-columns:2fr 1fr;gap:var(--space-inline)}
.signature-capture label,.signature-request label{display:grid;gap:var(--space-inline);font-size:var(--type-label);color:var(--text-secondary)}
.signature-capture input:not([type=checkbox]),.signature-request input:not([type=checkbox]),.signature-request select,.signature-dialog input[readonly]{box-sizing:border-box;min-width:0;width:100%;min-height:var(--control-target);padding:var(--space-inline) var(--space-fields);border:1px solid var(--border-surface);border-radius:var(--space-inline);background:var(--surface-field);color:var(--text-primary);font:inherit}
.signature-pad{display:block;width:100%;height:auto;aspect-ratio:1000/280;min-height:140px;background:#fff;border:1px solid var(--border-surface);border-radius:var(--space-inline);touch-action:none;box-sizing:border-box}
.signature-pad:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.signature-capture .signature-consent,.signature-request .signature-consent{display:flex;align-items:center;gap:var(--space-inline);min-height:var(--control-target);color:var(--text-primary)}
.signature-consent input{flex:none;width:20px;height:20px;margin:var(--space-fields)}
.signature-actions{display:flex;flex-wrap:wrap;gap:var(--space-inline)}
.signature-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:var(--space-inline);padding:var(--space-fields) 0;border-bottom:1px solid var(--border-surface)}
.signature-row>div{display:grid;gap:var(--space-inline);min-width:0;overflow-wrap:anywhere}.signature-row small,.signature-hint{font-size:var(--type-meta);color:var(--text-secondary)}
.signature-row a,.signature-actions button,.signature-capture button{min-height:var(--control-target);padding:var(--space-inline) var(--space-fields);margin:0}.signature-row a{display:flex;align-items:center;white-space:nowrap;text-decoration:none}
.signature-status{font-size:var(--type-meta);color:var(--text-secondary);display:inline-block;margin-inline-start:var(--space-inline)}
@media(max-width:700px){.signature-identity{grid-template-columns:1fr}.signature-row{align-items:flex-start}.signature-actions>*{flex:1 1 150px}.signature-dialog{max-height:calc(100dvh - var(--space-fields));padding:var(--space-fields)}}
@media(max-width:700px){.signature-row{grid-template-columns:repeat(2,minmax(0,1fr))}.signature-row>div{grid-column:1/-1}.signature-row a{white-space:normal}}
.signature-capture input,.signature-request input,.signature-request select{font-size:var(--type-control);font-family:inherit}
.signature-dialog>header h2{font-size:var(--type-dialog-title)}
.signature-dialog .os-body{min-width:0;overflow-wrap:anywhere}
@supports(-webkit-touch-callout:none){@media(max-width:700px){.signature-capture input,.signature-request input,.signature-request select{font-size:16px}}}
.signature-remote{font-size:var(--type-meta)}.signature-remote summary{cursor:pointer;min-height:var(--control-target);display:flex;align-items:center}.signature-remote[open]{display:grid;gap:var(--space-inline)}.signature-remote svg{background:white;margin-inline:auto;max-width:100%;height:auto}
.public-signature-page{font-size:var(--type-body)}.public-signature-page .quote-card{padding:var(--space-panel)}.public-signature-page h1{font-size:var(--type-dialog-title)}.public-signature-page h2{font-size:var(--type-section-title)}.public-signature-page p,.public-signature-page dd{font-size:var(--type-body)}.public-signature-page .glass-button{display:inline-flex;align-items:center;min-height:var(--control-target);padding:var(--action-padding-block) var(--action-padding-inline);box-sizing:border-box}

.signature-flow{display:flex;flex-wrap:wrap;gap:var(--space-inline);padding:0;margin:0;list-style:none;counter-reset:signature-step;color:var(--text-secondary);font-size:var(--type-meta)}
.signature-flow li{display:flex;align-items:center;gap:var(--space-inline);counter-increment:signature-step}.signature-flow li::before{content:counter(signature-step);font-weight:600;color:var(--text-primary)}
.signature-row{grid-template-columns:minmax(0,1fr) auto}.signature-row-actions{display:flex!important;flex-flow:row nowrap;align-items:center;gap:var(--space-inline);justify-content:flex-end}
.signature-icon-action{display:inline-flex;align-items:center;justify-content:center;flex:none;box-sizing:border-box;width:var(--control-target);min-width:var(--control-target);height:var(--control-target);padding:var(--action-padding-block)!important;margin:0}
.signature-icon-action svg{width:18px;height:18px;flex:none}.signature-icon-action:hover{background:var(--surface-hover)}.signature-icon-action:active{background:var(--surface-pressed)}
.signature-request .signature-identity label{display:grid;gap:var(--space-inline);font-size:var(--type-label);color:var(--text-secondary)}
.signature-request .customer-dialog-actions{margin-top:var(--space-inline)}
@media(max-width:700px){.signature-row-copy{grid-column:1/-1}.signature-row-actions{grid-column:1/-1}.signature-request .customer-dialog-actions{flex-wrap:wrap}.signature-request .customer-dialog-actions .submit-button{flex:1 1 170px;white-space:normal}.signature-flow{row-gap:var(--space-inline)}}

/* Attendance tracking: compact hierarchy without additional card surfaces. */
body.in-workspace dialog.signature-hub{box-sizing:border-box;width:min(680px,calc(100vw - var(--space-panel)*2));padding:var(--space-inline)}
.signature-hub>.mobile-dialog-scroll{padding:var(--space-fields);scrollbar-gutter:auto}
.signature-hub .os-dialog-header{gap:var(--space-inline);margin:0 0 var(--space-fields)}
.signature-hub .os-dialog-header h2{font-size:var(--type-dialog-title);line-height:1.4}
body.in-workspace .signature-hub .os-body{gap:var(--space-fields)}
.signature-hub p{margin:0}
.signature-hub-intro{line-height:1.5}
.signature-hub-toolbar{align-items:center;flex-wrap:nowrap;padding-bottom:var(--space-fields);border-bottom:1px solid var(--border-surface)}
.signature-hub-toolbar .signature-request-trigger{display:inline-flex;align-items:center;width:auto;flex:0 1 auto;margin:0}
.signature-hub-tools{display:flex;gap:var(--space-inline);margin-inline-start:auto;flex:none}
body.in-workspace .signature-hub .signature-icon-action{flex:none;width:var(--control-target);height:var(--control-target);min-width:var(--control-target);padding:var(--action-padding-block);box-shadow:none}
.signature-hub-tools .signature-icon-action{background:transparent}
.signature-hub-tools .signature-icon-action:hover{background:var(--surface-hover)}
.signature-hub-tools .signature-icon-action:active{background:var(--surface-pressed)}
.signature-empty{display:flex;align-items:center;gap:var(--space-fields);padding:var(--space-fields) 0}
.signature-empty-icon{display:grid;place-items:center;flex:none;width:var(--control-target);height:var(--control-target);color:var(--text-link);background:var(--accent-soft);border-radius:var(--action-radius)}
.signature-empty-icon svg{width:22px;height:22px}
.signature-hub .signature-list{min-width:0}
.signature-hub .signature-row{grid-template-columns:minmax(0,1fr) auto;padding:var(--space-fields) 0;gap:var(--space-inline)}
.signature-hub .signature-row:first-child{padding-top:0}.signature-hub .signature-row:last-child{border-bottom:0;padding-bottom:0}
.signature-hub .signature-row-copy,.signature-hub .signature-row-actions{grid-column:auto}
.signature-row-title{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-inline)}
.signature-row-title strong{font-size:var(--type-body);font-weight:600}
.signature-state{font-size:var(--type-meta);color:var(--text-secondary);padding:0 var(--space-inline);border:1px solid var(--border-surface);border-radius:var(--action-radius);line-height:1.8;max-width:100%;box-sizing:border-box}
@media(max-width:400px){.signature-hub-toolbar{flex-wrap:wrap}.signature-hub-toolbar>.signature-request-trigger{flex:1 1 150px}.signature-hub-toolbar>.signature-hub-tools{flex:0 0 auto}.signature-hub .signature-row{grid-template-columns:minmax(0,1fr)}.signature-hub .signature-row-actions{justify-content:flex-end}}

/* Signature request follows the compact attendance panel. */
body.in-workspace dialog.signature-request-dialog{box-sizing:border-box;width:min(600px,calc(100vw - var(--space-panel)*2));padding:var(--space-inline)}
.signature-request-dialog>.mobile-dialog-scroll{padding:var(--space-fields);scrollbar-gutter:auto}
.signature-request-dialog .os-dialog-header{gap:var(--space-inline);margin:0 0 var(--space-fields)}
.signature-request-dialog .os-dialog-header h2{font-size:var(--type-dialog-title);line-height:1.4}
body.in-workspace .signature-request-dialog .os-body,.signature-request-dialog .signature-request{gap:var(--space-fields)}
.signature-request-dialog .signature-request>.modal-content-scroll{display:grid;gap:var(--space-fields)}
.signature-request-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-fields)}
.signature-request-dialog .signature-identity{gap:var(--space-fields)}
.signature-request-dialog .signature-request label{min-width:0;margin:0}
.signature-request-channel{padding-top:var(--space-fields);border-top:1px solid var(--border-surface)}
.signature-request-dialog .signature-hint{margin:0;line-height:1.5}
.signature-request-dialog .customer-dialog-actions{gap:var(--space-inline);margin-top:var(--space-inline);padding-top:var(--space-inline)}
.signature-request-dialog .customer-dialog-actions>.submit-button{flex:0 1 auto}
@media(max-width:700px){.signature-request-options{grid-template-columns:minmax(0,1fr)}}

.signature-request-dialog :is(input,select):focus-visible{outline:2px solid var(--text-link);outline-offset:2px}

/* Local signing: document review, writing area and explicit footer actions. */
body.in-workspace dialog.signature-device-dialog{box-sizing:border-box;width:min(640px,calc(100vw - var(--space-panel)*2));padding:var(--space-inline)}
.signature-device-dialog>.mobile-dialog-scroll{padding:var(--space-fields);scrollbar-gutter:auto}
.signature-device-dialog .os-dialog-header{gap:var(--space-inline);margin:0 0 var(--space-fields)}
.signature-device-dialog .os-dialog-header h2{font-size:var(--type-dialog-title);line-height:1.4}
body.in-workspace .signature-device-dialog .os-body,.signature-device-dialog .signature-capture{gap:var(--space-fields)}
.signature-device-dialog .os-body>.modal-content-scroll{display:grid;gap:var(--space-fields)}
.signature-device-dialog .signature-hint{margin:0;line-height:1.5}
.signature-device-dialog .signature-device-preview{display:inline-flex;justify-self:start;align-items:center;margin:0;min-height:var(--control-target);padding:var(--action-padding-block) var(--action-padding-inline);box-shadow:none;text-decoration:none}
.signature-device-dialog .signature-identity{gap:var(--space-fields)}
.signature-device-dialog .signature-capture label{margin:0;min-width:0}
.signature-pad-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-inline);padding-top:var(--space-fields);border-top:1px solid var(--border-surface)}
.signature-pad-toolbar .signature-hint{flex:1;min-width:0}
.signature-pad-toolbar button{flex:none;width:auto;box-shadow:none}
.signature-device-dialog .signature-pad{min-height:160px}
.signature-device-dialog .signature-consent{font-size:var(--type-label);line-height:1.5;align-items:flex-start}
:root body.in-workspace dialog.mobile-scroll-shell.signature-device-dialog .signature-capture .signature-consent{flex-wrap:nowrap;align-items:flex-start}
.signature-device-dialog .signature-consent span{flex:1;min-width:0}
.signature-device-dialog .os-actions{gap:var(--space-inline);margin-top:var(--space-inline);padding-top:var(--space-inline)}
.signature-device-dialog .os-actions>.submit-button{width:auto;flex:0 1 auto}
.signature-device-dialog input:focus-visible{outline:2px solid var(--text-link);outline-offset:2px}
@media(max-width:360px){.signature-device-dialog .signature-pad-toolbar{flex-wrap:wrap}.signature-device-dialog .signature-pad-toolbar .signature-hint{flex-basis:100%}.signature-device-dialog .signature-pad-toolbar button{margin-inline-start:auto}}

/* Public customer page uses the same compact hierarchy as in-store signing. */
.public-signature-page .quote-page{max-width:720px;margin:var(--space-section) auto;padding:0 var(--space-panel) var(--space-panel)}
.public-signature-page .signature-public-document{margin:0;padding:var(--space-panel);border-radius:var(--space-section)}
.signature-public-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-fields);padding-bottom:var(--space-fields);border-bottom:1px solid var(--line)}
.signature-public-header>div{min-width:0}.public-signature-page h1{margin:0;font-size:var(--type-dialog-title);line-height:1.4;overflow-wrap:anywhere}
.public-signature-page p{margin:0;font-size:var(--type-meta);line-height:1.5;color:var(--text-secondary);overflow-wrap:anywhere}
.signature-public-header p{margin-top:var(--space-inline)}
.public-signature-page button,.public-signature-page .glass-button{font-size:var(--type-action);min-height:var(--control-target);padding:var(--action-padding-block) var(--action-padding-inline);border-radius:var(--action-radius)}
.public-signature-page #theme-toggle{display:grid;place-items:center;width:var(--control-target);height:var(--control-target);flex:none;padding:var(--space-inline);background:transparent}
#theme-toggle svg{width:18px;height:18px}
.signature-public-review{display:grid;gap:var(--space-fields);padding-block:var(--space-fields)}
.public-signature-page .quote-identity{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-fields);padding:0;border:0}
.public-signature-page dt{font-size:var(--type-label)}.public-signature-page dd{margin:var(--space-inline) 0 0;font-size:var(--type-body);line-height:1.4;font-weight:600}
.signature-public-review .glass-button{justify-self:start;box-shadow:none;text-decoration:none;border:1px solid var(--line)}
.signature-public-signing{display:grid;gap:var(--space-fields);padding-top:var(--space-fields);border-top:1px solid var(--line)}
.public-signature-page .signature-public-signing h2{margin:0;font-size:var(--type-section-title)}
.public-signature-page .signature-capture label{margin:0;min-width:0}
.public-signature-page .signature-identity{gap:var(--space-fields)}
.public-signature-page .signature-pad{min-height:160px}
.public-signature-page .signature-consent{flex-wrap:nowrap;align-items:flex-start;min-height:var(--control-target);line-height:1.5;padding:var(--space-inline) 0}
.public-signature-page .signature-consent input{width:20px;height:20px;margin:0;accent-color:var(--text-link)}
.public-signature-page .signature-consent span{flex:1;min-width:0;font-size:var(--type-label)}
.signature-public-actions{display:flex;justify-content:flex-end;padding-top:var(--space-inline);border-top:1px solid var(--line)}
.public-signature-page .primary:hover{background:var(--surface-hover);color:var(--text-primary)}.public-signature-page .primary:active{background:var(--surface-pressed);color:var(--text-primary)}
.public-signature-page #signature-error{color:var(--text-error);padding:var(--space-inline);border:1px solid var(--line);border-radius:var(--action-radius)}
.public-signature-page #signature-result,.public-signature-page .signature-demo-note{padding:var(--space-fields);background:var(--accent-soft);border:1px solid var(--accent-ring);border-radius:var(--action-radius);color:var(--text-primary)}
.signature-demo-note{margin-top:var(--space-fields)!important}
.public-signature-page input:focus-visible{outline:2px solid var(--text-link);outline-offset:2px}
@media(max-width:700px){.public-signature-page .signature-identity{grid-template-columns:minmax(0,1fr)}}
@media(max-width:360px){.public-signature-page .quote-identity{grid-template-columns:minmax(0,1fr)}.public-signature-page .signature-pad-toolbar{flex-wrap:wrap}.public-signature-page .signature-pad-toolbar button{margin-inline-start:auto}.signature-public-actions button{width:100%}}

/* Light public signing needs distinct reading, readonly and writing surfaces. */
:root[data-theme=light] .public-signature-page{min-height:100dvh;background:var(--surface-page);--signature-divider:color-mix(in srgb,var(--text-secondary) 30%,var(--surface-page))}
:root[data-theme=light] .public-signature-page .signature-public-document{background:var(--surface-field-focus);border-color:var(--signature-divider);border-top:3px solid var(--accent);box-shadow:0 8px 24px color-mix(in srgb,var(--text-primary) 8%,transparent)}
:root[data-theme=light] .public-signature-page .signature-public-header{border-bottom-color:var(--signature-divider)}
:root[data-theme=light] .public-signature-page .quote-identity{padding:var(--space-fields);border-radius:var(--action-radius);background:var(--surface-page)}
:root[data-theme=light] .public-signature-page .signature-identity input[readonly]{background:var(--surface-page);border-color:var(--signature-divider);color:var(--text-primary)}
:root[data-theme=light] .public-signature-page .signature-public-signing,:root[data-theme=light] .public-signature-page .signature-public-actions{border-top-color:var(--signature-divider)}
:root[data-theme=light] .public-signature-page .signature-pad-toolbar{border-top-color:var(--signature-divider)}
:root[data-theme=light] .public-signature-page .signature-pad{border:2px solid color-mix(in srgb,var(--text-secondary) 65%,var(--surface-page));box-shadow:0 2px 8px color-mix(in srgb,var(--text-primary) 6%,transparent)}
:root[data-theme=light] .public-signature-page .signature-consent{padding:var(--space-fields);border:1px solid var(--signature-divider);border-radius:var(--action-radius);background:var(--surface-page)}
:root[data-theme=light] .public-signature-page .signature-consent:has(input:checked){background:var(--accent-soft);border-color:var(--accent-ring)}
:root[data-theme=light] .signature-public-review .glass-button{background:var(--accent-soft);border-color:var(--accent-ring);color:var(--text-link)}
:root[data-theme=light] .signature-public-review .glass-button:hover{background:var(--surface-hover)}
:root[data-theme=light] .signature-public-review .glass-button:active{background:var(--surface-pressed)}
:root[data-theme=light] .public-signature-page #theme-toggle{background:var(--surface-page);border-color:var(--signature-divider)}

.signature-purpose{display:grid;gap:var(--space-inline);padding:var(--space-fields);border-inline-start:3px solid var(--accent);background:var(--surface-page);border-radius:0 var(--action-radius) var(--action-radius) 0;min-width:0;overflow-wrap:anywhere}
.signature-purpose-label,.signature-purpose-reference,.signature-purpose-limit{font-size:var(--type-meta);line-height:1.5;color:var(--text-secondary)}
.signature-purpose strong{font-size:var(--type-body);font-weight:600;line-height:1.4}
.signature-purpose p{margin:0}
.public-signature-page .signature-purpose .signature-purpose-effect,.signature-device-dialog .signature-purpose .signature-purpose-effect,.quote-response .signature-purpose .signature-purpose-effect{font-size:var(--type-body);line-height:1.5;color:var(--text-primary)}
.signature-device-dialog .signature-purpose p,.quote-response .signature-purpose p{margin:0;font-size:var(--type-meta);line-height:1.5}
#quote-signature>.signature-purpose{margin-block:var(--space-fields)}
.document-evidence-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-fields)}
.document-evidence-item{min-width:0;padding:var(--space-fields);border:1px solid var(--line);border-radius:12px}
.document-evidence-item h2{font-size:var(--type-body);margin:0 0 var(--space-inline)}
.document-evidence-item img,.document-evidence-item video{display:block;width:100%;max-height:360px;object-fit:contain;border-radius:8px}
.document-evidence-item a,.document-evidence-item summary{min-height:var(--control-target);display:flex;align-items:center;overflow-wrap:anywhere}
.document-evidence-item details[open] summary{margin-bottom:var(--space-inline)}
.document-evidence-hash{overflow-wrap:anywhere;font-size:var(--type-meta)}
@media(max-width:700px){.document-evidence-grid{grid-template-columns:1fr}}

/* Company signing policy: readable stages, native switches and compact neutral surfaces. */
.signature-settings-form{display:grid;gap:var(--space-fields);min-width:0}
.signature-settings-intro,.signature-settings-help{margin:0;color:var(--text-secondary);font-size:var(--type-body);line-height:1.6}
.signature-settings-help{font-size:var(--type-meta)}
.signature-policy-list{min-width:0}
.signature-settings-form .signature-policy-row{display:grid;grid-template-columns:32px minmax(0,1fr) var(--control-target);align-items:start;gap:var(--space-inline);padding:var(--space-fields) 0;border-bottom:1px solid var(--border-surface);cursor:pointer;min-height:var(--control-target)}
.signature-policy-step{display:grid;place-items:center;min-height:32px;border-radius:var(--action-radius);background:var(--accent-soft);color:var(--text-link);font-size:var(--type-meta);font-variant-numeric:tabular-nums;font-weight:600}
.signature-policy-copy{display:grid;gap:var(--space-inline);min-width:0}
.signature-policy-heading{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-inline);min-height:32px}
.signature-policy-heading strong{font-size:var(--type-body);font-weight:600;color:var(--text-primary)}
.signature-policy-status{font-size:var(--type-meta);color:var(--text-secondary);padding:2px var(--space-inline);border:1px solid var(--border-surface);border-radius:999px}
.signature-policy-row[data-required=true] .signature-policy-status{color:var(--text-link);border-color:var(--accent-ring);background:var(--accent-soft)}
.signature-policy-description{font-size:var(--type-meta);line-height:1.6;color:var(--text-secondary);overflow-wrap:anywhere}
.signature-settings-form .signature-policy-row input{appearance:none;position:relative;box-sizing:border-box;min-width:var(--control-target);width:var(--control-target);height:var(--control-target);margin:0;cursor:pointer;border:0;border-radius:var(--action-radius);background:transparent}
.signature-policy-row input::before{content:'';position:absolute;inset:10px 0;border-radius:999px;background:var(--surface-field);border:1px solid var(--border-surface)}
.signature-policy-row input::after{content:'';position:absolute;top:14px;left:4px;width:16px;height:16px;border-radius:50%;background:var(--text-secondary)}
.signature-policy-row input:checked::before{background:var(--accent);border-color:var(--accent)}
.signature-policy-row input:checked::after{left:24px;background:var(--on-accent,#fff)}
.signature-policy-row:hover input:not(:disabled),.signature-policy-row input:hover:not(:disabled){background:var(--surface-hover)}
.signature-policy-row input:active:not(:disabled){background:var(--surface-pressed)}
.signature-policy-row input:focus-visible{outline:2px solid var(--text-link);outline-offset:2px}
.signature-policy-row input:disabled{opacity:.55;cursor:wait}
.signature-settings-protection{display:flex;align-items:flex-start;gap:var(--space-inline);padding:var(--space-fields);border:1px solid var(--border-surface);border-radius:var(--action-radius);min-width:0}
.signature-settings-protection-icon{color:var(--text-link);flex:none;display:flex}
.signature-settings-protection-icon .icon{width:18px;height:18px}
.signature-settings-protection strong{font-size:var(--type-label);font-weight:600;color:var(--text-primary)}
.signature-settings-protection p{margin:var(--space-inline) 0 0;font-size:var(--type-meta);line-height:1.6;color:var(--text-secondary)}
.signature-settings-form .customer-dialog-actions{margin-top:0}

/* Kanban shows only an actionable signature issue; the hub contains the stages. */
body.in-workspace .os-kanban-card>.os-signature-summary{display:flex;align-items:center;gap:var(--space-inline);width:fit-content;max-width:100%;align-self:flex-start;min-width:0;min-height:var(--control-target);margin:0;padding:var(--space-inline);border:1px solid var(--line);border-radius:var(--action-radius);background:transparent;color:var(--text-secondary);text-align:left;font:inherit;font-size:var(--type-action);line-height:1.4;overflow-wrap:anywhere;cursor:pointer;box-shadow:none}
.os-signature-symbol{display:flex;flex:none}.os-signature-symbol>.icon{width:16px;height:16px}
body.in-workspace .os-kanban-card>.os-signature-summary[data-attention=true]{color:var(--text-warning);border-color:var(--border-warning);background:var(--surface-warning)}
body.in-workspace .os-kanban-card>.os-signature-summary:hover{background:var(--surface-hover)}
body.in-workspace .os-kanban-card>.os-signature-summary:active{background:var(--surface-pressed)}
.os-signature-summary:focus-visible{outline:2px solid var(--text-link);outline-offset:2px}
.signature-phase-summary{display:grid;gap:var(--space-inline);min-width:0}
.signature-phase{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:start;gap:var(--space-inline);padding:var(--space-fields);border:1px solid var(--line);border-radius:var(--action-radius)}
.signature-phase-step{display:grid;place-items:center;width:28px;height:28px;background:var(--surface-hover);color:var(--text-secondary);border-radius:8px;font-size:var(--type-meta);font-variant-numeric:tabular-nums}
.signature-phase-copy{display:grid;gap:4px;min-width:0;overflow-wrap:anywhere}
.signature-phase-heading{display:flex;align-items:center;flex-wrap:wrap;gap:4px var(--space-inline)}
.signature-phase-heading>strong{font-size:var(--type-body);font-weight:600}
.signature-phase-policy{font-size:var(--type-meta);color:var(--text-secondary)}
.signature-phase-state{font-size:var(--type-label);color:var(--text-secondary)}
.signature-phase[data-state=attention] .signature-phase-state{color:var(--text-warning)}
.signature-phase[data-state=done] .signature-phase-state{color:var(--text-success)}
.signature-phase-copy>small{font-size:var(--type-meta);line-height:1.5;color:var(--text-secondary)}
.signature-phase>.signature-icon-action{margin:0;align-self:center}
@media(max-width:360px){.signature-phase{grid-template-columns:24px minmax(0,1fr) auto;padding:var(--space-inline)}.signature-phase-step{width:24px;height:24px}}

/* Attendance signatures: separate the current stages from document versions. */
body.in-workspace dialog.signature-hub{width:min(600px,calc(100vw - var(--space-panel)*2))}
body.in-workspace .signature-hub .os-body{grid-template-columns:minmax(0,1fr);grid-auto-rows:max-content;align-content:start;gap:var(--space-fields)}
.signature-hub-heading{display:grid;gap:var(--space-inline);min-width:0}
.signature-hub-heading .eyebrow{margin:0}
.signature-hub-intro{display:flex;flex-wrap:wrap;gap:var(--space-inline);align-items:center;font-size:var(--type-body)}
.signature-hub-intro>span{font-size:var(--type-meta);color:var(--text-secondary)}
.signature-hub-panel{display:grid;gap:var(--space-fields);min-width:0}
.signature-hub-panel[hidden]{display:none!important}
.signature-hub-tabs>button{gap:var(--space-inline)}
.signature-document-count{font-size:var(--type-meta);padding:0 6px;border-radius:6px;background:var(--surface-hover);color:var(--text-secondary)}
.signature-hub .signature-phase-summary{gap:0;background:var(--surface-field);border:1px solid var(--line);border-radius:var(--action-radius);overflow:hidden}
.signature-hub .signature-phase{border:0;border-bottom:1px solid var(--line);border-radius:0;align-items:center;padding:var(--space-fields)}
.signature-hub .signature-phase:last-child{border-bottom:0}
.signature-hub .signature-phase-heading{justify-content:space-between}
.signature-hub .signature-phase-copy{gap:var(--space-inline)}
.signature-hub .signature-phase-state{font-size:var(--type-meta)}
.signature-hub .signature-hub-toolbar{padding:var(--space-fields) 0 0;border-bottom:0;border-top:1px solid var(--line)}
.signature-hub .signature-request-trigger{gap:var(--space-inline)}
.signature-hub .signature-row{padding:var(--space-fields) 0}
.signature-hub .signature-row-copy{gap:var(--space-inline)}
.signature-hub .signature-row-actions{align-self:start;flex-wrap:nowrap}
body.in-workspace .signature-hub .signature-document-action{width:auto;gap:var(--space-inline);font-size:var(--type-action);padding:var(--action-padding-block) var(--action-padding-inline)!important}
.signature-hub .signature-state{border:0;background:var(--surface-hover);padding:2px var(--space-inline);line-height:1.5}
.signature-hub .signature-row-title{align-items:flex-start}
@media(max-width:480px){.signature-hub .signature-row{grid-template-columns:minmax(0,1fr)}.signature-hub .signature-row-actions{justify-content:flex-start}.signature-hub .signature-phase-heading{justify-content:flex-start}.signature-hub .signature-phase{padding:var(--space-inline)}}

body.in-workspace .os-kanban-card>.os-signature-summary[data-attention=true]:hover{background:color-mix(in srgb,var(--surface-hover) 50%,var(--surface-warning))}

/* The small visible signature label sits inside a transparent 44 px touch target. */
body.in-workspace .os-kanban-card>.os-signature-summary{padding:0;border:0;background:transparent;gap:0}
body.in-workspace .os-kanban-card>.os-signature-summary[data-attention=true]{background:transparent;border:0}
.os-signature-chip{display:flex;align-items:center;gap:6px;min-width:0;max-width:100%;padding:4px 8px;border:1px solid var(--line);border-radius:7px;background:transparent;font-size:var(--type-meta);line-height:1.4}
.os-signature-chip>span:last-child{min-width:0;font-size:inherit;overflow-wrap:anywhere}
.os-signature-chip .os-signature-symbol>.icon{width:16px;height:16px}
.os-signature-summary[data-attention=true]>.os-signature-chip{background:var(--surface-warning);border-color:var(--border-warning)}
body.in-workspace .os-kanban-card>.os-signature-summary:hover,body.in-workspace .os-kanban-card>.os-signature-summary[data-attention=true]:hover{background:transparent}
.os-signature-summary:hover>.os-signature-chip{background:var(--surface-hover)}
.os-signature-summary[data-attention=true]:hover>.os-signature-chip{background:color-mix(in srgb,var(--surface-hover) 50%,var(--surface-warning))}
body.in-workspace .os-kanban-card>.os-signature-summary:active{background:transparent}
.os-signature-summary:active>.os-signature-chip{background:var(--surface-pressed)}

/* The transparent portion of the signature target supplies the visual row spacing. */
body.in-workspace .os-kanban-card>.os-signature-summary:not(:first-child){margin-top:calc(-1 * var(--space-inline))}
body.in-workspace .os-kanban-card>.os-signature-summary:not(:last-child){margin-bottom:calc(-1 * var(--space-inline))}
