body .photo-read-licence, body.photo-library-page .photo-licence .photo-read-licence { display:inline-flex; align-items:center; min-height:44px; height:auto; padding:8px 12px; border:1px solid #cdd9e6; border-radius:6px; background:#fff; color:#102d63; font:600 13px/1.4 Manrope,sans-serif; cursor:pointer; }
body .photo-read-licence:hover, body.photo-library-page .photo-licence .photo-read-licence:hover { background:#f3f6fa; color:#102d63; }
body .photo-licence-modal { box-sizing:border-box; width:min(680px,calc(100% - 32px)); max-height:calc(100dvh - 32px); padding:24px; border:0; border-radius:12px; background:#fff; color:#23324d; box-shadow:0 24px 80px #0004; font:15px/1.65 Manrope,sans-serif; overflow:auto; }
.photo-licence-modal::backdrop { background:#09172cb3; }
.photo-licence-modal header,.photo-licence-modal footer { display:flex; justify-content:space-between; align-items:center; gap:16px; }
body .photo-licence-modal h2 { margin:0; font-size:24px; line-height:1.3; color:#102d63; }
body .photo-licence-modal button { min-height:44px; padding:8px 14px; border:1px solid #cdd9e6; border-radius:6px; background:#fff; color:#102d63; font:inherit; cursor:pointer; }
.photo-licence-modal__meta { color:#607087; font-size:13px; }
.photo-licence-modal__terms { white-space:pre-wrap; overflow-wrap:anywhere; }
.photo-licence-modal footer { margin-top:24px; flex-wrap:wrap; }
.photo-licence-modal a,.photo-licensing-contact a { color:#b31d3b; }
body .photo-licence-selector { padding:0; border:0; margin:0 0 16px; min-width:0; }
body .photo-licence-selector legend { margin-bottom:8px; color:#536780; font-size:14px; }
.photo-licence-choice { display:flex; align-items:start; gap:10px; }
.photo-licence-choice input { width:18px; height:18px; margin-top:4px; accent-color:#102d63; flex:none; }
.photo-licence-choice label { flex:1; min-width:0; font-weight:700; }
.photo-licence-choice strong { color:#ce0732; white-space:nowrap; }
.photo-order-item { margin:16px 0; padding:20px; border:1px solid #dce4ee; border-radius:8px; }
.photo-order-actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin-top:16px; }
.photo-checkout-acceptance { display:flex; align-items:start; gap:10px; }
.photo-checkout-acceptance input { width:18px; height:18px; flex:none; margin-top:4px; }
@media(max-width:600px) { body .photo-licence-modal { padding:18px; font-size:14px; } body .photo-licence-modal h2 { font-size:20px; } .photo-order-item { padding:14px; } }

body .photo-add-to-basket { min-height:46px; padding:10px 20px; border:0; border-radius:6px; background:#ce0732; color:#fff; font:600 14px/1.4 Manrope,sans-serif; cursor:pointer; }

body .photo-add-to-basket:disabled { background:#dde4ed; color:#65758b; cursor:not-allowed; }

.photo-basket-actions { display:flex; align-items:center; flex-wrap:wrap; gap:12px; }
body .photo-go-to-basket { display:inline-flex; align-items:center; min-height:46px; padding:10px 16px; border:1px solid #cdd9e6; border-radius:6px; color:#102850; background:#fff; font:600 14px/1.4 Manrope,sans-serif; text-decoration:none; }
.photo-go-to-basket:hover { text-decoration:underline; }
.photo-basket-status { margin:12px 0 0; color:#23324d; font-size:14px; }
.photo-basket-status:empty { display:none; }
.photo-basket-status[role="alert"] { color:#a40025; }
.photo-preview-purchase { max-width:680px; margin:24px auto 0; }
body .photo-preview-purchase .photo-licence { padding:14px 0; }
body .photo-preview-purchase .photo-licence p { margin:8px 0; }
body .photo-preview-purchase .photo-basket-status { margin-top:12px; }
@media(max-width:600px) { body.photo-library-page .photo-basket-actions .photo-add-to-basket { width:auto; } }
