.contract-entry,.contract-result{max-width:1100px;margin:1rem auto}.contract-type-options{display:flex;gap:.5rem;flex-wrap:wrap}.contract-type-options label,.contract-consent{display:flex;align-items:center;gap:.5rem;min-height:44px;padding:.65rem;border:1px solid #deddec;border-radius:.75rem}.contract-type-options input,.contract-consent input{width:22px;height:22px;flex-shrink:0}.contract-entry textarea{width:100%;min-height:240px;font-size:1rem;line-height:1.6}.contract-entry button,.contract-result button{min-height:44px;padding:.7rem 1rem;max-width:100%}.contract-entry input[type=file]{max-width:100%;min-height:44px}.contract-help{font-size:1rem;line-height:1.6}.contract-preview{white-space:pre-wrap;overflow-wrap:anywhere;max-height:320px;overflow:auto;padding:1rem;border:2px solid #deddec;background:#fafaff}.contract-preview mark{background:#fbe7a5}.contract-finding{margin:1rem 0;padding:1rem;border:1px solid #deddec;border-radius:1rem;overflow-wrap:anywhere}.contract-finding blockquote{white-space:pre-wrap;margin:.7rem 0;padding:1rem;border-left:4px solid #4a36b8;background:#faf9ff;overflow-wrap:anywhere}.contract-finding summary{min-height:44px;cursor:pointer;font-weight:bold}.contract-result ul,.contract-result ol{padding-left:1.5rem}.contract-actions{display:flex;flex-wrap:wrap;gap:.5rem}.contract-result h2,.contract-entry h1{overflow-wrap:anywhere}.contract-status{display:flex;align-items:center;gap:1rem;margin:1rem 0}.contract-status img{width:90px;height:auto}.contract-card-heading{display:flex;align-items:center;gap:1rem}.contract-card-heading img{width:96px;height:auto}.contract-help-links a{display:inline-block;margin:.5rem;min-height:44px}.contract-entry .hint,.contract-result .hint{font-size:1rem}.contract-error{color:#8b3700;font-weight:bold}.contract-preview-title{font-weight:bold}.contract-legal{padding:1rem;background:#f6f3ff}.contract-result [hidden],.contract-entry [hidden]{display:none!important}@media(max-width:440px){.contract-card-heading{align-items:flex-start}.contract-card-heading img{width:80px}.contract-type-options label{width:100%}.contract-entry,.contract-result{padding:1rem}.contract-entry textarea{min-height:200px}}@media print{header,footer,.contract-entry,.contract-actions,.contract-status,.flow-navigation{display:none!important}.contract-result{display:block!important}details> *{display:block}.contract-finding{break-inside:avoid}}
.contract-entry h1{font-size:clamp(2rem,4vw,3rem);line-height:1.2;flex:1;min-width:0}.contract-result h2{font-size:clamp(1.5rem,3vw,2rem)}

.contract-help-links{flex-wrap:wrap;gap:.5rem}.contract-help-links a{max-width:100%;overflow-wrap:anywhere}

/* Only the leading result guide grows; individual finding illustrations stay unchanged. */
#contract-result{margin-top:3rem}
#contract-result>.contract-card-heading{position:relative;display:grid;grid-template-columns:160px minmax(0,1fr);gap:1.5rem;min-height:110px;align-items:start}
#contract-result-verka{position:absolute;width:160px;height:auto;left:-40px;top:-56px}
#contract-result>.contract-card-heading h2{grid-column:2;margin:0;min-width:0}
@media(max-width:440px){
 #contract-result{margin-top:2.5rem}
 #contract-result>.contract-card-heading{grid-template-columns:116px minmax(0,1fr);gap:.75rem;min-height:100px}
 #contract-result-verka{width:128px;left:-24px;top:-40px}
}
@media print{#contract-result-verka{position:static;width:96px}#contract-result>.contract-card-heading{min-height:0;grid-template-columns:96px minmax(0,1fr)}}
/* S5.3 contract party choice: same option style, 48 px targets. */
.contract-party{margin-top:1.5rem}
.contract-party-options label{min-height:48px}
#contract-party-ico{display:block;box-sizing:border-box;width:100%;min-height:48px;padding:.65rem;font:inherit;border:2px solid #8b87a8;border-radius:.75rem}
.contract-party button{min-height:48px}
/* On narrow phones keep the guide beside the heading without squeezing the text. */
@media(max-width:440px){
 .contract-entry>.contract-card-heading{gap:12px;align-items:center}
 .contract-entry>.contract-card-heading img{width:64px;flex-shrink:0}
 .contract-entry h1{font-size:clamp(1.6rem,7vw,2rem)}
 #contract-result>.contract-card-heading{grid-template-columns:76px minmax(0,1fr);min-height:84px;gap:12px}
 #contract-result-verka{width:104px;left:-20px;top:-32px}
 .contract-status{flex-wrap:wrap;gap:12px}
 .contract-status span{flex:1;min-width:0}
 .contract-actions button{flex:1 1 160px}
 .contract-type-options label{min-height:48px}
}
