.product-details-purchase-card--installment { --product-purchase-color: #38d689; }
.installment-editor, .installment-modal, .installment-admin { --installment-green: #61dfa2; --installment-border: rgba(106,160,145,.25); }
.installment-terms { display:flex; flex-wrap:wrap; gap:7px; margin:18px 0; }
.installment-term, .installment-button { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:34px; padding:8px 13px; border:1px solid rgba(114,143,161,.28); border-radius:0; background:rgba(8,13,23,.65); color:#a4b3bd; font:inherit; font-size:12px; line-height:1.3; cursor:pointer; transition:color 160ms,border-color 160ms,background 160ms,box-shadow 160ms; }
.installment-term:hover, .installment-button:hover, .installment-term:focus-visible, .installment-button:focus-visible { color:#e6fff2; border-color:rgba(97,223,162,.65); background:rgba(24,55,46,.4); outline:none; box-shadow:0 0 12px rgba(56,214,137,.08); }
.installment-term[aria-selected="true"], .installment-term[aria-pressed="true"] { border-color:#50c990; color:#c3f6dc; background:rgba(56,214,137,.12); }
.installment-editor .installment-term::after { content:""; flex:0 0 5px; width:5px; height:5px; border-radius:50%; background:#ee8c9d; transition:background-color 160ms; }
.installment-editor .installment-term.is-enabled:not(.is-invalid)::after { background:#61dfa2; }
.installment-button:disabled, .installment-term:disabled { opacity:.45; cursor:default; }
.installment-button--primary { border-color:rgba(56,214,137,.45); color:#8ae9b7; background:rgba(17,55,38,.3); }
.installment-button--danger { color:#f299a5; border-color:rgba(240,110,134,.4); }
.installment-editor__tools, .installment-editor__tools > div { display:flex; align-items:center; flex-wrap:wrap; gap:10px; }
.installment-editor__tools { justify-content:space-between; margin-bottom:15px; }
.installment-editor .installment-editor__term-toggle { min-height:40px; padding:8px 10px; }
.installment-editor .admin-product-editor-toggle:hover { border-color:rgba(56,214,137,.4); background:rgba(56,214,137,.025); }
.installment-editor .admin-product-editor-toggle:has(input:disabled) { cursor:not-allowed; }
.installment-check { display:flex; align-items:center; gap:9px; color:#c5d2d8; font-size:13px; cursor:pointer; }
.installment-check input, .installment-payment-mode input { accent-color:#38d689; width:16px; height:16px; }
.installment-editor__payments { display:grid; grid-template-columns:repeat(auto-fit,minmax(135px,1fr)); gap:10px; }
.installment-payment-input { position:relative; display:grid; gap:9px; padding:13px; border:1px solid rgba(106,160,145,.25); background:rgba(6,13,20,.38); }
.installment-payment-input > span { color:#8898a6; font-size:11px; }
.installment-payment-input input { box-sizing:border-box; width:100%; min-width:0; height:36px; padding:6px 27px 6px 9px; border:1px solid rgba(106,160,145,.3); border-radius:0; color:#d1efe0; background:rgba(7,12,23,.65); font:inherit; font-size:14px; font-weight:400; outline:none; appearance:textfield; }
.installment-payment-input input::-webkit-inner-spin-button { appearance:none; }
.installment-payment-input input:focus, .installment-payment-input input:hover { border-color:rgba(97,223,162,.65); box-shadow:none; }
.installment-payment-input > small { position:absolute; right:23px; bottom:23px; color:#759c8a; font-size:12px; pointer-events:none; }
.installment-note, .installment-editor__difference { margin:14px 0 0; color:#8b9ba9; font-size:12px; line-height:1.65; }
.installment-editor__difference { color:#76dba6; }
.installment-editor__difference.is-invalid { color:#f19a9e; font-size:12px; }
.installment-editor__title { display:flex; align-items:center; gap:10px; min-height:26px; }
.installment-editor__title h2 { flex:0 0 auto; }
.installment-warning { display:inline-flex; align-items:center; min-width:0; margin:0; padding:3px 7px; border:1px solid rgba(241,154,158,.3); border-radius:3px; color:#f19a9e; background:rgba(220,65,100,.06); font-size:10px; font-weight:400; line-height:1.3; }
.installment-modal, .installment-editor { font-weight:400; }
:is(.installment-modal,.installment-editor) :is(h1,h2,h3,h4,h5,h6,strong,b,button,label,legend) { font-weight:400; }
.site-modal.installment-modal .installment-modal__window { width:min(720px,100%); display:flex; flex-direction:column; overflow:hidden; }
.installment-modal .site-modal__header { flex:0 0 46px; }
.installment-modal__content { padding:24px; min-height:0; overflow:auto; overscroll-behavior:contain; }
.installment-modal__content h2 { margin:0; font-size:21px; font-weight:400; overflow-wrap:anywhere; }
.installment-modal.is-offer .installment-product { display:grid; grid-template-columns:104px minmax(0,1fr); align-items:center; gap:18px; }
.installment-product__copy { min-width:0; }
.installment-product__image { position:relative; width:104px; aspect-ratio:1; border:1px solid var(--installment-border); background:rgba(5,13,22,.44); }
.installment-product__image::after { position:absolute; top:-1px; bottom:-1px; left:-1px; z-index:2; width:2px; background:var(--installment-green); box-shadow:0 0 8px rgba(97,223,162,.5); pointer-events:none; content:""; }
.installment-product__image > img { display:block; width:100%; height:100%; object-fit:cover; image-rendering:auto; backface-visibility:hidden; }
.installment-product__placeholder { display:grid; width:100%; height:100%; place-items:center; color:#8ae9b7; font-size:30px; }
.installment-product__price { display:grid; gap:4px; margin-top:12px; }
.installment-product__price > small { color:#8e9eac; font-size:13px; line-height:1.4; }
.installment-product__prices { display:flex; align-items:center; gap:10px; white-space:nowrap; }
.installment-product__prices > strong { color:#8ae9b7; font-size:32px; font-weight:400; line-height:1.15; font-variant-numeric:tabular-nums; }
.installment-schedule-header { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-top:24px; }
.installment-schedule-header h3 { min-width:0; margin:0; color:#dcece6; font-size:15px; font-weight:400; line-height:1.4; }
.installment-schedule-header .installment-duration { flex:0 0 auto; width:186px; max-width:55%; }
.installment-duration .site-dropdown__trigger { min-height:48px; gap:8px; padding:7px 10px 7px 12px; }
.installment-duration .site-dropdown__copy small { letter-spacing:.055em; white-space:nowrap; }
.installment-duration .site-dropdown__trigger > svg { width:14px; height:14px; }
.installment-duration .site-dropdown__surface { max-height:clamp(96px,calc(100dvh - var(--site-header-height) - 300px),260px); }
.installment-modal.is-offer .installment-schedule { margin-top:12px; }
/* Keep the window's existing glass on a separate background layer, so the nested dropdown can blur the schedule. */
.site-modal.installment-modal.is-offer .installment-modal__window {
	background:transparent; backdrop-filter:none; -webkit-backdrop-filter:none;
	transition:opacity var(--site-modal-duration) linear;
}
.installment-modal.is-offer .installment-modal__window::before {
	position:absolute; inset:0; z-index:-1; border-radius:inherit; pointer-events:none; content:"";
	background:linear-gradient(145deg,rgba(8,11,25,.46),rgba(15,14,34,.38));
	backdrop-filter:blur(0) saturate(100%); -webkit-backdrop-filter:blur(0) saturate(100%);
	transition:backdrop-filter var(--site-modal-duration) linear,-webkit-backdrop-filter var(--site-modal-duration) linear;
}
.installment-modal.is-offer.is-open .installment-modal__window::before { backdrop-filter:blur(16px) saturate(120%); -webkit-backdrop-filter:blur(16px) saturate(120%); }
.installment-modal__actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:10px; margin-top:20px; padding-top:18px; border-top:1px solid var(--installment-border); }
.installment-modal__actions .installment-button { min-height:40px; padding:10px 20px; }
.installment-schedule { display:grid; gap:8px; margin:20px 0 0; padding:0; list-style:none; }
.installment-schedule__row { display:flex; align-items:center; justify-content:space-between; gap:14px; min-height:48px; padding:9px 15px; border:1px solid var(--installment-border); background:rgba(5,13,22,.44); transition:border-color 160ms,box-shadow 160ms,background-color 160ms; }
.installment-schedule__row:has(.installment-pay-badge:hover,.installment-pay-badge:focus-visible) { border-color:rgba(97,223,162,.68); background:rgba(17,36,29,.44); box-shadow:0 0 14px rgba(56,214,137,.1); }
.installment-schedule__period { display:flex; align-items:center; gap:10px; min-width:0; }
.installment-schedule__period > strong { white-space:nowrap; }
.installment-schedule__date { padding-left:10px; border-left:1px solid var(--installment-border); }
.installment-schedule__payment { display:grid; gap:5px; min-width:0; margin-left:auto; text-align:right; justify-items:end; }
.installment-schedule__row:has(.site-discount-badge) { flex-wrap:wrap; }
.installment-schedule__prices { display:flex; align-items:center; justify-content:flex-end; gap:9px; white-space:nowrap; }
.installment-schedule__amount-line { display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:3px 7px; }
.installment-schedule__row strong { font-size:14px; color:#dcece6; font-weight:400; }
.installment-schedule__row .installment-schedule__amount { font-size:20px; line-height:1.25; white-space:nowrap; font-variant-numeric:tabular-nums; }
.installment-schedule__row small { font-size:11px; line-height:1.5; color:#8e9eac; }
.installment-schedule__row.is-paid { border-color:rgba(56,214,137,.16); }
.installment-schedule__row.is-paid > div:last-child strong { color:#6fdba3; }
.installment-schedule__row.is-due { border-left:2px solid #61dfa2; }
.installment-schedule__row.is-due .installment-schedule__payment { margin-right:-18px; }
.installment-pay-badge { --installment-badge-color:#38d689; position:relative; display:inline-flex; align-items:center; justify-content:flex-end; flex-shrink:0; gap:7px; min-width:0; height:32px; min-height:32px; padding:0 8px 0 10px; border:1px solid color-mix(in srgb,var(--installment-badge-color) 42%,transparent); border-radius:0; color:color-mix(in srgb,var(--installment-badge-color) 72%,white); background:rgba(10,12,28,.72); box-shadow:0 0 10px color-mix(in srgb,var(--installment-badge-color) 10%,transparent); backdrop-filter:blur(14px) saturate(135%); -webkit-backdrop-filter:blur(14px) saturate(135%); font-family:inherit; font-size:10px; font-weight:400; letter-spacing:.06em; line-height:1; text-transform:uppercase; cursor:pointer; transition:border-color 160ms,box-shadow 160ms,color 160ms,filter 160ms; }
.installment-pay-badge > span { display:block; flex:1 1 auto; line-height:1; text-align:center; white-space:nowrap; }
.installment-pay-badge::after { position:absolute; top:-1px; right:-1px; bottom:-1px; width:3px; background:var(--installment-badge-color); box-shadow:0 0 6px color-mix(in srgb,var(--installment-badge-color) 58%,transparent); content:""; pointer-events:none; }
.installment-pay-badge svg { width:16px; height:16px; flex:0 0 16px; fill:none; stroke:currentColor; stroke-width:1.6; }
.installment-pay-badge:hover, .installment-pay-badge:focus-visible { border-color:color-mix(in srgb,var(--installment-badge-color) 75%,transparent); box-shadow:0 0 14px color-mix(in srgb,var(--installment-badge-color) 19%,transparent); color:color-mix(in srgb,var(--installment-badge-color) 48%,white); filter:brightness(1.12); outline:none; }
.installment-pay-badge:disabled { cursor:wait; filter:none; opacity:.62; }
.installment-payment-mode { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; min-width:0; margin:20px 0 0; padding:0; border:0; }
.installment-payment-mode legend { padding:0; margin-bottom:8px; font-size:11px; color:#8e9eac; }
.installment-payment-mode label { position:relative; display:block; min-width:0; cursor:pointer; }
.installment-payment-mode label > input { position:absolute; width:1px; height:1px; min-height:0; padding:0; opacity:0; pointer-events:none; }
.installment-payment-mode label > span { display:grid; align-content:center; gap:5px; min-height:66px; height:100%; padding:12px 13px; border:1px solid var(--installment-border); background:rgba(7,10,22,.28); transition:border-color 150ms,background-color 150ms,box-shadow 150ms; }
.installment-payment-mode strong { color:#c5d8d0; font-size:13px; line-height:1.4; }
.installment-payment-mode small { color:#8e9eac; font-size:10px; line-height:1.35; font-weight:400; }
.installment-payment-mode label:hover > span { border-color:rgba(97,223,162,.4); background:rgba(56,214,137,.035); }
.installment-payment-mode input:checked + span { border-color:rgba(97,223,162,.58); background:rgba(56,214,137,.075); box-shadow:inset 2px 0 0 #61dfa2,0 0 14px rgba(56,214,137,.07); }
.installment-payment-mode input:focus-visible + span { outline:1px solid #61dfa2; outline-offset:2px; }
.installment-payment-mode input:disabled + span { opacity:.6; cursor:default; }
.is-installment-pending { position:relative; color:transparent !important; text-shadow:none !important; cursor:wait; pointer-events:none; }
.is-installment-pending > :not(.installment-button-spinner) { visibility:hidden; }
.is-installment-pending > .installment-button-spinner { position:absolute; inset:0; display:block; width:16px; height:16px; min-width:0; min-height:0; margin:auto; padding:0; border:2px solid color-mix(in srgb,var(--installment-loading-color,#61dfa2) 20%,transparent); border-top-color:var(--installment-loading-color,#61dfa2); border-radius:50%; background:none; box-shadow:none; opacity:1; visibility:visible; pointer-events:none; animation:installment-spin .75s linear infinite; }
@keyframes installment-spin { to { transform:rotate(360deg); } }
.installment-modal [hidden], .installment-editor [hidden], .installment-admin [hidden] { display:none !important; }
.account-license-card--installment .account-license-card__date { font-size:12px; }
.account-license-card--installment .account-license-card__badge--renew { color:#89dfb4; }
.installment-admin .admin-rental-filters { flex-wrap:wrap; }
.installment-admin .admin-rental-toolbar { flex-wrap:wrap; }
@media(max-width:600px) { .installment-modal__content { padding:16px; } .installment-schedule__row { padding:8px 10px; gap:8px; } .installment-schedule__period { gap:7px; } .installment-schedule__date { padding-left:7px; } .installment-schedule__row strong { font-size:12px; } .installment-editor__payments { grid-template-columns:repeat(2,minmax(0,1fr)); } .installment-editor__title { min-height:36px; } }
@media(max-width:600px) { .installment-schedule__row.is-due .installment-schedule__payment { margin-right:-13px; } }
@media(max-width:600px) {
	.installment-modal.is-offer .installment-product { grid-template-columns:88px minmax(0,1fr); gap:14px; }
	.installment-product__image { width:88px; }
	.installment-modal.is-offer .installment-product h2 { font-size:18px; }
	.installment-product__price { margin-top:9px; }
	.installment-product__prices > strong { font-size:28px; }
	.installment-product__prices, .installment-schedule__prices { gap:6px; }
	.installment-schedule__prices del { font-size:12px; }
	.installment-schedule__prices .site-discount-badge { padding-inline:5px; }
	.installment-schedule__prices .installment-pay-badge { letter-spacing:0; }
	.installment-schedule-header { gap:10px; }
	.installment-schedule-header h3 { font-size:13px; }
	.installment-schedule-header .installment-duration { width:154px; }
}
@media(max-width:480px) {
	.installment-modal.is-offer .installment-product:has([data-installment-original-total]:not([hidden])) .installment-product__copy { display:contents; }
	.installment-modal.is-offer .installment-product:has([data-installment-original-total]:not([hidden])) h2 { grid-column:2; }
	.installment-modal.is-offer .installment-product:has([data-installment-original-total]:not([hidden])) .installment-product__price { grid-column:1 / -1; margin-top:0; }
}
@media(prefers-reduced-motion:reduce) { .installment-term,.installment-button,.installment-editor .installment-term::after,.installment-payment-mode label > span,.installment-pay-badge,.installment-schedule__row { transition:none; } }
