/* ==========================================================================
   Per-section waiver signing (Oct-B wave 4): views/waiver/sign-adopt.php,
   sign-block.php, assets/js/npe-sign.js. Loaded on the front end (My KCDC, the
   public sign-up, the waiver page) and with the console's kiosk.

   Colours, radii and type are the npe-tokens.css tokens (light only). My KCDC,
   the public pages and the kiosk define them (.npe-my, .npe-vk); the fallback
   after each is the same token's value, for the legacy waiver page outside
   those scopes. Touch targets are 44px; it works from 390px wide.
   ========================================================================== */

.npe-sig{display:flex;flex-direction:column;gap:8px;min-width:0;}
.npe-sig [hidden]{display:none!important;}
/* The theme styles bare elements (Divi: p{padding-bottom:1em}, button text transforms): reset them here. */
.npe-sig p,.npe-sig h3{padding:0;}
.npe-sig button{text-transform:none;letter-spacing:normal;}
.npe-sig__bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;}
.npe-sig__adopted{font-weight:600;color:var(--fg0,#1B1D21);}
.npe-sig__status{flex:1 1 180px;font-size:14px;color:var(--fg1,#4A4F57);}
.npe-sig__how{margin:0;font-size:13px;color:var(--fg1,#4A4F57);}
.npe-sig__error{margin:0;font-size:14px;color:var(--crit,#C0453C);}
.npe-sig__doc{display:flex;flex-direction:column;gap:4px;min-width:0;}
.npe-sig__doc-title{margin:8px 0 0;font-weight:700;color:var(--fg0,#1B1D21);}

/* A place in the waiver text: the tag, its caption, its hidden time field. */
.npe-sig-place{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:8px 0 14px;}
.npe-sig-tag{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;min-width:132px;padding:4px 14px;border:2px dashed var(--sig,#15659f);border-radius:var(--rbtn,8px);background:var(--arc0,#EFF5FA);color:var(--sig-text,#0f4a78);font:inherit;font-size:15px;font-weight:700;line-height:1.2;cursor:pointer;}
.npe-sig-place.is-initial .npe-sig-tag{min-width:96px;}
.npe-sig-tag:hover{background:var(--arc1,#DCE9F4);}
.npe-sig-tag:focus-visible{outline:3px solid var(--sig,#15659f);outline-offset:2px;}
.npe-sig-tag.is-placed{border-style:solid;border-color:var(--line2,#C7CAD1);background:var(--bg0,#FFFFFF);color:var(--fg0,#1B1D21);font-weight:400;}
.npe-sig-tag__flag::before{content:"\270E";margin-right:6px;}
.npe-sig-tag__mark{display:inline-flex;flex-direction:column;align-items:flex-start;gap:2px;}
.npe-sig-place__cap{flex:1 1 220px;font-size:13px;color:var(--fg1,#4A4F57);}

/* The adopted signature: typed in a signature style, or drawn. */
.npe-sig-typed{font-family:"Segoe Script","Bradley Hand","Snell Roundhand","Brush Script MT",cursive;font-size:26px;line-height:1.1;color:var(--fg0,#1B1D21);}
.npe-sig-typed.is-initials{font-size:22px;}
.npe-sig-mark{display:inline-flex;flex-direction:column;align-items:flex-start;gap:2px;margin:6px 0 12px;padding:4px 10px;border-left:3px solid var(--sig,#15659f);}
.npe-sig-mark__img,.npe-sig-tag .npe-sig-mark__img{display:block;max-width:220px;height:auto;max-height:56px;}
.npe-sig-mark.is-initial .npe-sig-mark__img,.npe-sig-tag[data-kind="initial"] .npe-sig-mark__img{max-width:96px;}
.npe-sig-mark__meta{font-size:12px;color:var(--fg2,#727880);}

/* The "Adopt your signature" dialog. */
.npe-sig-dialog{width:min(560px,calc(100vw - 32px));max-height:calc(100vh - 32px);padding:0;border:1px solid var(--line,#DCDEE3);border-radius:var(--rcard,11px);background:var(--bg0,#FFFFFF);color:var(--fg0,#1B1D21);box-shadow:var(--sh-lg,0 20px 40px rgba(16,25,43,.18));}
.npe-sig-dialog::backdrop{background:var(--scrim,rgba(20,26,38,.42));}
.npe-sig-dialog__body{display:flex;flex-direction:column;gap:8px;padding:20px;}
.npe-sig-dialog__title{margin:0;padding:0;font-size:18px;font-weight:700;line-height:1.3;color:var(--fg0,#1B1D21);}
.npe-sig-dialog__lede,.npe-sig-dialog__label{margin:0;font-size:14px;color:var(--fg1,#4A4F57);}
.npe-sig-dialog__legal{margin:4px 0 0;font-size:13px;color:var(--fg1,#4A4F57);}
.npe-sig-dialog__field{margin:4px 0 0;font-size:14px;font-weight:600;}
.npe-sig-dialog__input{box-sizing:border-box;width:100%;min-height:44px;padding:8px 12px;border:1px solid var(--line2,#C7CAD1);border-radius:var(--rbtn,8px);background:var(--bg0,#FFFFFF);color:var(--fg0,#1B1D21);font:inherit;font-size:16px;}
.npe-sig-dialog__input.is-short{max-width:140px;}
.npe-sig-dialog__seg,.npe-sig-dialog__actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px;}
.npe-sig-dialog .npe-sig-go{border-color:var(--sig-fill,#15659f);background:var(--sig-fill,#15659f);color:var(--bg0,#FFFFFF);}
.npe-sig-dialog .npe-sig-go:hover{background:var(--sig-fill-hover,#0f4a78);}
.npe-sig-dialog__seg [aria-pressed="true"]{border-color:var(--sig,#15659f);background:var(--arc1,#DCE9F4);color:var(--sig-text,#0f4a78);}
.npe-sig-dialog__pane{display:flex;flex-direction:column;gap:8px;}
.npe-sig-preview{display:flex;flex-wrap:wrap;align-items:baseline;gap:16px;min-height:56px;padding:8px 12px;border:1px solid var(--line,#DCDEE3);border-radius:var(--rbtn,8px);background:var(--bg1,#F5F6F8);}
.npe-sig-pad{display:flex;flex-direction:column;align-items:flex-start;gap:6px;}
.npe-sig-pad canvas{box-sizing:border-box;width:100%;height:auto;aspect-ratio:600/160;border:1px dashed var(--line2,#C7CAD1);border-radius:var(--rbtn,8px);background:var(--bg0,#FFFFFF);touch-action:none;cursor:crosshair;}
.npe-sig-pad.is-initials canvas{width:45%;min-width:140px;aspect-ratio:240/160;}

@media print{
	.npe-sig-tag{border-style:solid;}
}
