/* Only the server integration layer; approved typography and surfaces stay intact. */
.review-bar,.local-review-bar,.history-bar{display:none!important}
:root{--review-bar-height:0px;--history-height:0px}
.server-cart-notice,.server-form-status{font-size:14px;line-height:1.5;margin-top:16px}
.server-form-status.is-error{color:#9f3838}
.server-cart-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:24px}
.server-review-disclosure{margin-top:28px}
.purchase-os-tabs[hidden],.organization-reviews>[hidden]{display:none!important}
.review-source-meta{font-size:14px;color:#657164;line-height:1.5}
.server-review-filters{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}
.server-review-filters button{font:inherit;font-size:14px;padding:10px 16px;border-radius:999px;border:1px solid #c1cdb9;color:#415744;background:transparent;cursor:pointer}
.server-review-filters button[aria-pressed=true]{background:#415744;color:#f6f8f1}
.documents-list .document-unavailable{display:flex;gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid #d2dacb;color:#697568;font-size:14px}
.server-feedback{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:24px}
.server-feedback .wide,.server-feedback .server-challenge{grid-column:1/-1}
.server-feedback .consent{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.6}
.server-feedback .consent input{flex:0 0 18px;width:18px;height:18px;margin-top:3px}
.server-feedback input[type=file]{max-width:100%;font-size:14px}
@media(max-width:600px){.server-feedback{grid-template-columns:1fr}.server-feedback .wide{grid-column:auto}}
.server-challenge{max-width:340px;margin:20px 0;display:grid;gap:8px}
.server-challenge input{width:100%;border:1px solid #b8c3b1;border-radius:14px;padding:12px 16px;font:inherit;background:#f6f8f3;color:#2c3a31}
.server-trap{position:absolute;left:-10000px;opacity:0;pointer-events:none}
.server-account-link{font-size:14px;color:inherit;text-decoration:none}
.server-account-link:hover{color:#d4dec6}
.server-notice{position:fixed;left:50%;bottom:28px;transform:translateX(-50%);z-index:1000;background:#edf1e7;color:#27372e;border:1px solid #bcc6b5;border-radius:20px;padding:18px 24px;box-shadow:0 10px 40px #14231c26;max-width:min(92vw,600px);font-size:16px}
.transaction-page{background:#edf1e9;color:#2b3931;font-family:Onest,sans-serif}
.transaction-page .wrap{max-width:1104px;margin-left:auto;margin-right:auto;padding-left:24px;padding-right:24px}
.transaction-page main#main{min-height:40vh;padding-top:40px;padding-bottom:80px}
.transaction-page .info-panel,.transaction-page .cart-summary,.transaction-page .cart-row{border-radius:28px;background:#f5f7f1;border-color:#d2dacb}
.transaction-page h1{font-size:clamp(34px,4vw,54px);letter-spacing:-.035em;line-height:1.12}
.transaction-page .btn{border-radius:999px;font-size:16px;padding:14px 24px}
.transaction-page input:not([type=checkbox]):not([type=radio]),.transaction-page textarea{border-radius:16px;min-height:48px;font-size:16px}
.transaction-page .field{font-size:16px}
.transaction-page .site-header{position:sticky;top:0;z-index:80}
.transaction-page .site-header .header-inner{transition:background .36s,border-radius .36s,box-shadow .36s;min-height:90px}
.transaction-page .site-header.is-scrolled .header-inner{background:#f7f9f1ed;border-radius:999px;box-shadow:0 8px 28px #13201912}
.transaction-page .header-actions .cart-count{font-size:13px}
.transaction-page .catalog-mega{top:100%}
.transaction-page .institution-footer{margin-top:0}
.transaction-page .auth-entry{max-width:560px;margin-inline:auto}
.auth-card{padding:28px;border:1px solid #d3dbce;background:#f7f8f3;border-radius:28px}
.auth-tabs{display:flex;gap:6px;padding:5px;margin-bottom:30px;background:#e2e8da;border-radius:999px}
.auth-tabs button{flex:1;padding:13px 10px;border:0;border-radius:999px;background:transparent;color:#465747;font:inherit;font-size:16px;cursor:pointer}
.auth-tabs button[aria-selected=true]{background:#415744;color:#f6f8f1}
.auth-tabs button:focus-visible,.auth-quiet:focus-visible{outline:2px solid #718674;outline-offset:3px}
.auth-card [hidden]{display:none!important}
.auth-card .auth-form{display:grid;gap:20px}
.auth-card .auth-form h2{margin:0}
.auth-card .auth-form p{margin:0}
.auth-card .auth-form .small,.auth-complete p{font-size:14px;line-height:1.6}
.auth-card .consent{font-size:14px;line-height:1.5;align-items:flex-start}
.auth-card .consent input{flex-shrink:0;margin-top:3px}
.auth-card .btn{width:100%;justify-content:center}
.auth-card .text-link{font-size:14px;text-align:center}
.auth-complete{display:grid;gap:20px;padding:8px 0;overflow-wrap:anywhere}
.auth-complete h2{font-size:24px;margin:0}
.auth-complete p{margin:0}
.auth-quiet{border:0;background:none;font:inherit;font-size:14px;color:#526553;cursor:pointer;padding:8px}
.transaction-page .password-wrap{position:relative;display:block}
.transaction-page .password-wrap input{padding-right:95px;width:100%}
.transaction-page .password-toggle{position:absolute;right:14px;top:50%;transform:translateY(-50%);font-size:13px;border:0;background:none;color:#526553;padding:4px}
@media(max-width:600px){.auth-card{padding:22px 20px}.transaction-page .auth-entry{padding-inline:18px}}
@media(max-width:600px){.transaction-page main#main{padding-top:24px}.transaction-page .wrap{padding-inline:18px}.transaction-page .site-header .header-inner{min-height:68px}.server-cart-actions>.button{width:100%}}

.contact-field-error{display:block;color:#9b3434;font:400 14px/1.5 Onest,sans-serif;margin-top:6px}.contact-field-error[hidden]{display:none!important}input[aria-invalid=true]{border-color:#ae7770!important}.server-review-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.institution-bottom>span:last-child:not(:first-child),.prototype-note{display:none!important}
.institution-footer .contact-field-error{grid-column:1/-1;color:#e4b7ae;font-size:14px}
.institution-footer a[href^="mailto:"]{display:none!important}

/* Cart controls share the compact product-card shape without inheriting form borders. */
.transaction-page .cart-row-qty>.quantity{display:block;flex:none;width:max-content;max-width:none;padding:0;border:0;border-radius:0;background:transparent}
.transaction-page .cart-row-qty .stepper,#dialog .cart-item .quantity{display:grid;grid-template-columns:34px minmax(0,1fr) 34px;align-items:stretch;justify-content:normal;flex:0 0 104px;width:104px;max-width:104px;height:48px;min-height:48px;padding:0;gap:0;border:1px solid #cbd4c4;border-radius:999px;background:#f5f7f1;overflow:hidden;color:#2b3931}
.transaction-page .cart-row-qty .stepper input,#dialog .cart-item .quantity output{display:block;align-self:center;flex:none;width:100%;min-width:0;max-width:none;height:100%;min-height:0;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;text-align:center;color:inherit;font:400 16px/46px Onest,Arial,sans-serif;font-variant-numeric:tabular-nums}
.transaction-page .cart-row-qty .stepper-btn,#dialog .cart-item .quantity>button{display:grid;place-items:center;width:100%;min-width:0;height:100%;min-height:0;padding:0;border:0;border-radius:0;background:transparent;color:#526553;font:400 18px/1 Onest,Arial,sans-serif;cursor:pointer}
.transaction-page .cart-row-qty .stepper-btn svg{width:14px;height:14px}
.transaction-page .cart-row-qty .stepper-btn:disabled,#dialog .cart-item .quantity>button:disabled{visibility:visible;opacity:1;color:#b1bcad;cursor:default}
.transaction-page .cart-row-qty .stepper-btn:hover:not(:disabled),#dialog .cart-item .quantity>button:hover:not(:disabled){background:#e7ede1}
.transaction-page .cart-row-qty .stepper:focus-within,#dialog .cart-item .quantity:focus-within{border-color:#718674;box-shadow:0 0 0 3px #71867426}
.transaction-page .cart-row-qty .stepper-btn:focus-visible,#dialog .cart-item .quantity>button:focus-visible{outline:2px solid #718674;outline-offset:-3px}
.transaction-page .checkout-summary .btn:disabled{background:#dce3d6;border-color:#dce3d6;color:#7a8875;opacity:1;cursor:default;box-shadow:none}

/* One designed border: focus never adds an outer technical ring. */
input:focus,textarea:focus,select:focus,[role=combobox]:focus,[aria-haspopup=listbox]:focus,.custom-select-trigger:focus,.select-trigger:focus{outline:none!important;box-shadow:none!important}
input:focus:not([aria-invalid=true]),textarea:focus:not([aria-invalid=true]),select:focus:not([aria-invalid=true]),[role=combobox]:focus,[aria-haspopup=listbox]:focus{border-color:#718674!important}
input:is([type=checkbox],[type=radio]):focus-visible{filter:brightness(.8)}
.stepper:focus-within,.quantity:focus-within,.custom-select:focus-within{outline:none!important;box-shadow:none!important;border-color:#718674}
.stepper-btn:focus-visible,.quantity>button:focus-visible{outline:none!important;box-shadow:none!important;background:#dfe7d8!important}
.contact-field-error{font-size:14px;line-height:1.5;color:#9b3434;margin-top:6px;font-weight:400}
.consent+.contact-field-error,.subscription-consent+.contact-field-error{margin-top:0;grid-column:1/-1}

/* One shared coupon control in cart, popup and checkout. */
.coupon-entry{padding:18px 0;margin:8px 0;border-top:1px solid var(--line,#d4dbc9);font-size:14px}
.coupon-entry>label{display:block;margin-bottom:8px;font-weight:500}.coupon-entry__row{display:flex;align-items:stretch;gap:8px}.coupon-entry__row input{width:0;min-width:0;flex:1;padding:10px 12px;border:1px solid #b9c6ae;border-radius:14px;background:#f6f8f2;color:#303e35;font:inherit;box-shadow:none;outline:none}.coupon-entry__row .btn,.coupon-entry__row .button{width:auto;min-height:44px;padding:10px 14px;font-size:13px;flex:none;margin:0}.coupon-entry p{margin:8px 0 0}.coupon-entry .field{margin-top:12px}.coupon-entry__applied{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px}.coupon-entry__applied>span{overflow-wrap:anywhere}.coupon-discount{display:flex;justify-content:space-between;gap:16px;color:#33654b;font-size:14px;margin:12px 0}.coupon-entry input[aria-invalid=true]{border-color:#b55a51}.coupon-entry__row input:focus{border-color:#557358}
@media(max-width:380px){.coupon-entry__row{flex-wrap:wrap}.coupon-entry__row input{width:100%;flex-basis:100%}.coupon-entry__row .btn,.coupon-entry__row .button{width:100%}}

/* Cart rows use identical quantity/amount tracks, regardless of the price length. */
.transaction-page .cart-lines{container-type:inline-size}
.transaction-page .cart-row{grid-template-columns:80px minmax(0,1fr) 104px 132px;gap:16px;align-items:center;padding:18px;min-width:0}
.transaction-page .cart-row-image{grid-column:1;grid-row:1;width:80px;height:80px;border-radius:12px}
.transaction-page .cart-row-image img{max-width:72px;max-height:72px}
.transaction-page .cart-row-info{grid-column:2;grid-row:1;min-width:0}
.transaction-page .cart-row-info h3{font-size:19px;line-height:1.3;letter-spacing:-.015em;overflow-wrap:anywhere}
.transaction-page .cart-row-info .small{font-size:14px;line-height:1.5;margin-top:6px}
.transaction-page .cart-row-info .cart-line-remove{margin-top:7px}
.transaction-page .cart-row-qty{grid-column:3;grid-row:1;justify-self:start;min-width:0}
.transaction-page .cart-row-total{grid-column:4;grid-row:1;justify-self:stretch;text-align:right;font-size:18px;line-height:1.35;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}

/* Respond to the actual cart column, including tablets beside the order summary. */
@container(max-width:620px){
  .transaction-page .cart-row{grid-template-columns:80px minmax(0,1fr);gap:16px;padding:18px}
  .transaction-page .cart-row-image{align-self:start}
  .transaction-page .cart-row-qty{grid-column:1/-1;grid-row:2;justify-self:start;margin-top:2px}
  .transaction-page .cart-row-total{grid-column:1/-1;grid-row:2;justify-self:end;max-width:calc(100% - 120px);margin-top:2px}
}
@container(max-width:400px){
  .transaction-page .cart-row{grid-template-columns:64px minmax(0,1fr);gap:14px;padding:14px}
  .transaction-page .cart-row-image{width:64px;height:64px;border-radius:10px}
  .transaction-page .cart-row-image img{max-width:58px;max-height:58px}
  .transaction-page .cart-row-info h3{font-size:17px}
  .transaction-page .cart-row-total{font-size:16px}
}
/* Fallback for browsers without container queries. */
@supports not (container-type:inline-size){
  @media(max-width:1100px){
    .transaction-page .cart-row{grid-template-columns:72px minmax(0,1fr);gap:14px;padding:14px}
    .transaction-page .cart-row-image{width:72px;height:72px;align-self:start}
    .transaction-page .cart-row-image img{max-width:64px;max-height:64px}
    .transaction-page .cart-row-qty{grid-column:1/-1;grid-row:2;justify-self:start}
    .transaction-page .cart-row-total{grid-column:1/-1;grid-row:2;justify-self:end;max-width:calc(100% - 120px);font-size:16px}
  }
}
.transaction-page .order-shipping-row{display:flex;align-items:baseline;justify-content:space-between;gap:20px;padding:18px 0;border-top:1px solid var(--line,#d1d9c9);font-size:16px;line-height:1.5}
.transaction-page .order-shipping-row strong{flex:none;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:600}
.transaction-page .field input:disabled{color:#657063;background:#e8ece3;border-color:#d1d9c9;opacity:1;cursor:default}
