/* Rite close-up and sequence controls stay inside the fixed Master Screen frame. */
.rite-document-hotspot{position:absolute;z-index:4;left:36.8%;top:20%;width:26.4%;height:55.6%;padding:0;border:1px solid transparent;clip-path:polygon(10% 0,90% 0,100% 100%,0 100%);background:transparent;color:transparent;cursor:zoom-in;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,filter .16s ease}
.rite-document-hotspot:hover,.rite-document-hotspot:focus-visible{border-color:rgba(245,70,66,.76);background:rgba(172,27,28,.028);box-shadow:inset 0 0 11px rgba(212,32,35,.11);filter:drop-shadow(0 0 5px rgba(202,31,34,.32));outline:none}
.rite-document-hotspot:disabled{cursor:not-allowed;opacity:.48;pointer-events:none}
.rite-document-hotspot:disabled:hover,.rite-document-hotspot:disabled:focus-visible{border-color:transparent;background:transparent;box-shadow:none;filter:none;outline:none}
.rite-document-closeup{position:absolute;z-index:5;inset:0;overflow:hidden;background:#c8b58e;animation:riteCloseupIn .24s ease both}
.rite-closeup-paper{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;user-select:none}
.rite-ink-composite{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.master-plate .rite-ink-stage{position:absolute;left:0;width:100%;height:auto;opacity:0;transform:translateY(5px);transition:opacity 860ms cubic-bezier(.2,.66,.28,1),transform 860ms cubic-bezier(.2,.66,.28,1);user-select:none}
.master-plate .rite-ink-stage[data-rite-stage="1"]{top:0}
.master-plate .rite-ink-stage[data-rite-stage="2"]{top:24%}
.master-plate .rite-ink-stage[data-rite-stage="3"]{top:44%}
.master-plate .rite-ink-stage[data-rite-stage="4"]{top:64%}
.master-plate .rite-ink-stage[data-rite-stage="5"]{top:86%}
.master-plate .rite-ink-stage.is-visible{opacity:1;transform:translateY(0)}
@keyframes riteCloseupIn{from{opacity:.55;filter:brightness(.88)}to{opacity:1;filter:brightness(1)}}
.master-shell[data-scene="rite"] .wisp-medallion[aria-disabled="true"] .sigil-tag,.master-shell[data-dialogue-scene="cold-open"] .wisp-medallion[aria-disabled="true"] .sigil-tag{display:none}
@media(prefers-reduced-motion:reduce){
 .rite-document-closeup{animation:none}
 .master-plate .rite-ink-stage{transition-duration:180ms;transform:none}
 .rite-document-hotspot{transition:none}
}

/* Owner-approved signing touch: restrained script on the contract's lower page zone. */
.master-plate .rite-signature{position:absolute;z-index:4;left:50%;top:72.7%;width:34%;display:block;transform:translate(-50%,-50%) rotate(-1.8deg) skewX(-5deg);color:#c52843;font:400 clamp(3.5px,1.05vw,24px)/1 "MARGINALIA",cursive;letter-spacing:.015em;text-align:center;text-shadow:0 0 .08em rgba(109,12,22,.48),0 .025em .02em rgba(109,12,22,.22);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .18s ease-out}
.master-plate .rite-signature.is-visible{opacity:1}
.rite-signing-form{position:absolute;z-index:9;left:50%;bottom:4.2%;box-sizing:border-box;width:min(46%,430px);min-height:clamp(118px,19%,160px);margin:0;padding:14px 8px 12px;transform:translateX(-50%);display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto minmax(54px,auto);align-items:center;gap:10px 10px;border:0;background:transparent;box-shadow:none;color:#493827;text-align:center}
.rite-signing-form[hidden]{display:none}
.rite-signing-form label{position:relative;grid-column:1/-1;color:rgba(75,57,39,.74);font:500 clamp(8px,.66vw,11px)/1.2 "LEDGER",Georgia,serif;letter-spacing:.105em;text-transform:uppercase}
.rite-signing-row{display:contents}
.rite-signing-input{position:relative;box-sizing:border-box;min-width:0;width:100%;height:clamp(52px,7vh,62px);padding:8px 5px 5px;border:0;border-bottom:1px solid rgba(139,51,41,.72);border-radius:0;background:transparent;color:#30261d;font:400 clamp(12px,.95vw,17px)/1.2 "LEDGER",Georgia,serif;box-shadow:none;outline:none;text-align:center}
.rite-signing-input::placeholder{color:rgba(72,54,37,.5)}
.rite-signing-input:focus-visible{border-bottom-color:#b72f31;border-bottom-width:2px;box-shadow:0 2px 0 rgba(183,47,49,.24);outline:none}
.rite-save-sigil{position:relative;display:grid;place-items:center;width:clamp(30px,3.15vw,44px);height:clamp(30px,3.15vw,44px);padding:3px;border:1px solid rgba(209,190,150,.42);border-radius:50%;background:radial-gradient(circle at 35% 28%,rgba(43,47,39,.95),rgba(8,11,9,.97) 72%);box-shadow:inset 0 0 0 3px rgba(225,209,174,.025),0 3px 12px rgba(0,0,0,.22);cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,opacity .18s ease,filter .18s ease}
.rite-save-sigil[hidden]{display:none}
.rite-save-sigil img{display:block;width:100%;height:100%;object-fit:contain;opacity:.86;filter:drop-shadow(0 1px 2px rgba(0,0,0,.38));transition:opacity .18s ease,filter .18s ease}
.rite-save-sigil:hover:not(:disabled),.rite-save-sigil:focus-visible{border-color:#78c7b9;box-shadow:0 0 0 1px rgba(107,195,181,.25),0 0 16px rgba(69,175,160,.46),inset 0 0 0 3px rgba(127,209,196,.1),0 4px 14px rgba(0,0,0,.34)}
.rite-save-sigil:hover:not(:disabled){transform:translateY(-1px)}
.rite-save-sigil:hover:not(:disabled) img,.rite-save-sigil:focus-visible img{opacity:1;filter:drop-shadow(0 0 4px rgba(115,205,189,.38))}
.rite-save-sigil:focus-visible{outline:2px solid #a0e2d7;outline-offset:4px}
.rite-save-sigil:disabled{opacity:.43;filter:saturate(.55);cursor:not-allowed}
.master-shell[data-rite-state="signable-ready"] .rite-sequence-status,.master-shell[data-rite-state="signed"] .rite-sequence-status{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(max-width:680px){
 .rite-document-hotspot{left:35%;width:30%}
 .rite-signing-form{width:min(72%,360px);bottom:3.6%;min-height:clamp(112px,18%,146px);padding:12px 6px 8px;grid-template-rows:auto minmax(50px,auto);gap:9px 7px}
 .rite-signing-form label{font-size:7px}
 .rite-signing-input{height:50px;padding-inline:3px;font-size:clamp(11px,3vw,13px)}
 .rite-save-sigil{width:31px;height:31px}
}
@media(max-width:390px){.rite-signing-form label{font-size:7px}}
@media(prefers-reduced-motion:reduce){.master-plate .rite-signature{transition:none}.rite-save-sigil,.rite-save-sigil img{transition:none}}

/* The name is written only in the lower blank zone, then covered before the signed podium appears. */
.rite-closeup-signature{position:absolute;z-index:8;left:50%;top:84.8%;width:76%;display:block;transform:translate(-50%,-50%) rotate(-1.8deg) skewX(-5deg);color:#ad2038;font:400 clamp(14px,1.72vw,30px)/1 "MARGINALIA",cursive;letter-spacing:.015em;text-align:center;text-shadow:0 0 .08em rgba(109,12,22,.48),0 .025em .02em rgba(109,12,22,.22);white-space:nowrap;opacity:0;clip-path:inset(0 100% 0 0);pointer-events:none}
.rite-closeup-signature.is-burning{animation:riteNameScorch 1.24s cubic-bezier(.18,.72,.26,1) both}
@keyframes riteNameScorch{0%{opacity:0;filter:brightness(2.3) drop-shadow(0 0 7px rgba(236,92,40,.56))}12%{opacity:1}42%{filter:brightness(1.55) drop-shadow(0 0 5px rgba(212,65,33,.36))}100%{opacity:1;filter:brightness(1) drop-shadow(0 0 1px rgba(109,12,22,.28));clip-path:inset(0 0 0 0)}}
.rite-save-sigil{position:relative;display:grid;place-items:center;width:clamp(34px,3.25vw,46px);height:clamp(34px,3.25vw,46px);padding:0;border:0;background:transparent;cursor:pointer;transition:filter .18s ease,transform .18s ease}
.rite-save-sigil[hidden]{display:none}
.rite-save-sigil img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 1px 2px rgba(34,24,18,.28));transition:filter .18s ease}
.rite-save-sigil:hover:not(:disabled),.rite-save-sigil:focus-visible{transform:scale(1.045);filter:drop-shadow(0 0 5px rgba(212,61,46,.26));outline:1px solid rgba(117,87,53,.42);outline-offset:3px}
.rite-save-sigil .sigil-tag{position:absolute;top:-1.75em;left:50%;display:none;transform:translateX(-50%);padding:3px 6px;border:1px solid rgba(90,63,39,.48);background:rgba(237,220,184,.96);color:#40352b;font:500 clamp(7px,.52vw,10px)/1.1 "LEDGER",Georgia,serif;letter-spacing:.08em;white-space:nowrap;pointer-events:none}
.rite-save-sigil:hover .sigil-tag,.rite-save-sigil:focus-visible .sigil-tag{display:block}
.rite-save-sigil:disabled{opacity:.45;cursor:not-allowed;filter:saturate(.45)}
@media(max-width:680px){.rite-save-sigil{width:38px;height:38px}}
@media(prefers-reduced-motion:reduce){.rite-closeup-signature.is-burning{animation-duration:360ms}.rite-save-sigil,.rite-save-sigil img{transition:none}}


/* The signature underline sits directly on the printed contract rule. */
.rite-signing-form{left:50%;bottom:9%;width:min(52%,500px);height:clamp(46px,7vh,62px);min-height:0;margin:0;padding:0 8px;transform:translateX(-50%);display:flex;align-items:center;gap:0}
.rite-signing-form label{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.rite-signing-row{display:flex;align-items:stretch;gap:10px;width:100%;height:100%;min-width:0}
.rite-signing-input{flex:1 1 auto;width:auto;height:100%;padding:8px 5px 5px;font-size:clamp(12px,.95vw,17px)}
.rite-save-sigil{flex:none;width:clamp(48px,4vw,58px);height:clamp(48px,4vw,58px);margin-top:clamp(10px,1.6vh,16px);padding:0;border:0;background:transparent;transform:translateY(0);transition:filter .18s ease,transform .18s ease}
.rite-save-sigil img{width:100%;height:100%;object-fit:contain}
.rite-save-sigil:hover:not(:disabled),.rite-save-sigil:focus-visible{transform:translateY(-1px) scale(1.045)}
@media(max-width:680px){
 .rite-signing-form{bottom:9%;width:min(76%,390px);height:clamp(46px,7vh,56px);padding:0 5px}
 .rite-signing-row{gap:7px}
 .rite-signing-input{height:100%;padding-inline:3px;font-size:clamp(11px,3vw,13px)}
 .rite-save-sigil{width:46px;height:46px;margin-top:clamp(8px,1.4vh,12px)}
}
