.document-availability{background:#fff;border:1px solid #dce5e1;border-radius:20px;padding:clamp(16px,3vw,28px);color:#183b35;box-shadow:0 4px 18px #143e2f06}.document-availability h3{margin:0 0 8px;color:#07564f;font-size:1.2rem}.document-availability p{line-height:1.65;color:#52635c}.document-notice{background:#eff7f3;border-radius:12px;padding:14px 16px;font-size:.875rem}.document-category{padding:0 12px;margin:24px 0;border:1px solid #e2e9e5;border-radius:12px;min-width:0}.document-category legend{font-size:.8rem;font-weight:700;color:#07564f;padding:0 8px}.document-category legend span{color:#697a71;font-weight:400;margin-left:6px}.document-row{display:flex;align-items:center;gap:16px;padding:14px 0;border-bottom:1px solid #e8ece9}.document-row:last-child{border-bottom:0}.document-row[data-selected=true]{background:#f0f7f3;box-shadow:12px 0 #f0f7f3,-12px 0 #f0f7f3}.document-copy{flex:1;min-width:0;overflow-wrap:anywhere}.document-copy strong{font-size:.925rem}.document-copy small{display:block;color:#697a71;margin-top:5px;font-size:.75rem}.document-actions,.document-row-controls{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.document-availability input:not([type=checkbox]):not([type=radio]),.document-availability select{min-height:44px;border:1px solid #cbd8d1;border-radius:12px;background:#fff;color:#193b32;padding:10px 12px;font:inherit;max-width:100%}.document-availability input:not([type=checkbox]):not([type=radio]){width:100%;margin-top:8px;box-sizing:border-box}.document-availability button{min-height:44px;white-space:normal}.document-availability .primary{background:#07564f;color:white}.document-availability :is(button,input,select,summary):focus-visible{outline:3px solid #07564f;outline-offset:3px}.document-availability footer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:24px 0 12px;font-size:.85rem}.document-custom{padding:18px;border:1px solid #dce5e1;border-radius:14px;background:#fafcfb}.document-custom label{display:block;font-weight:600}.document-custom .document-actions{margin-top:12px}.document-choice{display:flex;gap:12px;align-items:center;flex:1;cursor:pointer;min-height:44px}.document-choice input{width:21px;height:21px;flex:0 0 21px;accent-color:#07564f}.document-availability .document-status{font-size:.75rem;text-align:right;color:#68736c}.document-availability .document-status.is-yes{color:#07564f;font-weight:600}.document-confirmation{margin:20px 0;padding:20px;border:1px solid #a3beb3;background:#f5faf7;border-radius:14px}.document-selected{margin:14px 0;padding:8px 14px;background:#f5f8f6;border-radius:10px;font-size:.85rem}.document-selected ul{padding-left:20px;line-height:1.8}.document-selected p{font-size:.8rem}.document-availability summary{cursor:pointer;min-height:44px;display:flex;align-items:center;color:#07564f;font-size:.85rem;gap:8px}.document-availability summary:after{content:"+";margin-left:auto}.document-availability details[open]>summary:after{content:"−"}.document-options{display:flex;flex-shrink:0;gap:3px;padding:3px;margin:0;border:1px solid #dce5e1;border-radius:10px;background:#f7f9f7}.document-options label{position:relative;cursor:pointer}.document-options input{position:absolute;opacity:0;width:1px;height:1px}.document-options span{display:flex;min-height:44px;align-items:center;justify-content:center;padding:6px 12px;border-radius:7px;font-size:.8rem;color:#52635c}.document-options input:checked+span{background:#07564f;color:#fff}.document-options input:focus-visible+span{outline:3px solid #07564f;outline-offset:3px}.document-options input:disabled+span{opacity:.55;cursor:not-allowed}.document-selection-summary{background:#eff7f3;border:1px solid #d4e5dc;padding:16px;border-radius:12px;color:#07564f;font-size:.9rem}.document-selection-summary ul{display:flex;flex-wrap:wrap;gap:6px;list-style:none;padding:0;margin:10px 0 0}.document-selection-summary li{background:#fff;border:1px solid #d4e5dc;border-radius:8px;padding:6px 9px;font-size:.8rem}.document-custom-count{margin:20px 0 10px;font-size:.8rem}.document-next{margin-top:8px}@media(max-width:600px){.document-row{gap:10px;flex-wrap:wrap}.document-row-controls{width:100%;justify-content:flex-end}.document-availability footer{align-items:stretch;flex-direction:column}.document-availability footer button{width:100%}.document-availability .document-status{padding-left:33px;text-align:left}.document-choice{min-width:100%}}