/* Printing services: the account shell is shared with dashboardPrintShops. */
.print-services-root { min-width: 0; }
.print-services-page { min-width: 0; }
/* Main width and responsive padding inherit the dashboard's .printshop-main. */
.print-services-page .services-breadcrumb { margin-bottom: 8px; }
.print-services-page .services-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 22px; }
.print-services-page .services-heading h1 { margin: 0; color: var(--pp-navy-900); font-size: 26px; font-weight: 800; }
.print-services-page .services-heading h1 i { margin-inline-end: 8px; color: var(--pp-blue-600); }
.print-services-page .services-heading p { margin: 4px 0 12px; color: var(--pp-navy-500); font-size: 13px; }
.print-services-page .services-summary { display: inline-flex; align-items: center; gap: 10px; padding: 10px 14px; background: var(--pp-surface); border: 1px solid var(--pp-border); border-radius: var(--pp-radius-sm); color: var(--pp-navy-500); font-size: 12px; }
.print-services-page .services-summary i { color: var(--pp-navy-900); font-size: 22px; }
.print-services-page .services-summary strong { color: var(--pp-navy-900); }
.print-services-page .services-button { display: inline-flex; justify-content: center; align-items: center; gap: 9px; min-height: 40px; padding: 9px 17px; border: 1px solid transparent; border-radius: var(--pp-radius-sm); font: 700 13px/1.5 Cairo, sans-serif; cursor: pointer; transition: background .18s, box-shadow .18s; }
.print-services-page .services-button--primary { color: #fff; background: var(--pp-blue-600); }
.print-services-page .services-button--primary:hover { background: var(--pp-blue-700); box-shadow: var(--pp-shadow-primary); }
.print-services-page .services-button--secondary { color: var(--pp-navy-900); background: #fff; border-color: var(--pp-border); }
.print-services-page .services-button--secondary:hover { background: var(--pp-blue-50); color: var(--pp-blue-600); }
.print-services-page #openCatalog { flex-shrink: 0; min-width: 240px; margin-bottom: 2px; }
.print-services-page .services-panel { padding: 0; }
.print-services-page .services-panel > header h2 { margin: 0; font-size: 18px; font-weight: 800; color: var(--pp-navy-900); }
.print-services-page .services-panel > header h2 i { color: var(--pp-blue-600); margin-inline-end: 7px; }
.print-services-page .services-panel > header p { margin: 2px 0 16px; color: var(--pp-navy-500); font-size: 11px; }
.print-services-page .services-products { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.print-services-page .services-product { min-width: 0; position: relative; display: flex; flex-direction: column; padding: 17px 16px; border: 1px solid var(--pp-border); border-radius: var(--pp-radius-lg); background: var(--pp-surface); box-shadow: var(--pp-shadow-sm); }
.print-services-page .services-product-top { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.print-services-page .services-badge { padding: 3px 11px; color: #15803d; background: #e6f8ee; border-radius: var(--pp-radius-pill); font-size: 10px; font-weight: 700; }
.print-services-page .services-badge--paused { color: #dc2626; background: #fef2f2; }
.print-services-page .services-switch { width: 38px; height: 22px; padding: 3px; background: #a5b1c2; border: 0; border-radius: 99px; cursor: pointer; direction: ltr; flex-shrink: 0; }
.print-services-page .services-switch::after { content: ""; display: block; width: 16px; height: 16px; background: #fff; border-radius: 50%; box-shadow: 0 1px 3px #0b1f3a26; transition: transform .18s; }
.print-services-page .services-switch[aria-checked="true"] { background: var(--pp-blue-600); }
.print-services-page .services-switch[aria-checked="true"]::after { transform: translateX(16px); }
.print-services-page .services-product-art { position: relative; display: grid; grid-template: minmax(0, 1fr) / minmax(0, 1fr); place-items: center; min-width: 0; overflow: hidden; height: 140px; margin: 4px 0 8px; }
.print-services-page .services-product-photo { position: relative; justify-self: center; min-height: 0; height: 100%; max-width: 100%; aspect-ratio: var(--product-ratio, 1); }
.print-services-page .services-product-photo > img:not(.services-brand) { display: block; width: 100%; height: 100%; object-fit: contain; }
.print-services-page .services-product h3, .print-services-page .services-product-preview h3 { margin: 0; font-size: 15px; color: var(--pp-navy-900); font-weight: 800; }
.print-services-page .services-product > .services-product-art { height: 180px; margin-block: 12px; }
.print-services-page .services-product > h3 { font-size: 17px; }
.print-services-page .services-product > .services-category { font-size: 13px; margin-bottom: 10px; }
.print-services-page .services-category { margin: 0 0 6px; color: var(--pp-navy-500); font-size: 11px; }
.print-services-page .services-details { display: grid; gap: 6px; margin: 0 0 14px; padding: 0; list-style: none; font-size: 13px; color: var(--pp-navy-500); }
.print-services-page .services-details li { display: flex; align-items: center; gap: 8px; }
.print-services-page .services-details i { color: var(--pp-navy-900); width: 15px; text-align: center; }
.print-services-page .services-details .services-money { color: var(--pp-success); font-size: 16px; font-weight: 600; font-variant-numeric: tabular-nums; }
.print-services-page .services-edit { width: 100%; margin-top: auto; background: var(--pp-blue-50); color: var(--pp-blue-800); min-height: 40px; padding: 9px; font-size: 13px; }
.print-services-page .services-edit:hover { background: var(--pp-blue-100); }
.print-services-page .services-empty { padding: 45px 16px; text-align: center; color: var(--pp-navy-500); }
.print-services-page .services-empty > i { color: var(--pp-blue-600); font-size: 28px; }
.print-services-page .services-empty h3 { color: var(--pp-navy-900); font-size: 16px; }
.print-services-page .services-empty p { font-size: 13px; }
.print-services-page [hidden] { display: none !important; }
.print-services-page :where(button, input, a):focus-visible { outline: 3px solid var(--pp-blue-600); outline-offset: 3px; }
.print-services-page .services-dialog { width: min(840px, calc(100% - 32px)); max-height: calc(100dvh - 40px); margin: auto; padding: 20px; overflow-y: auto; border: 1px solid var(--pp-border); border-radius: var(--pp-radius); color: var(--pp-navy-900); background: #fff; box-shadow: var(--pp-shadow-lg); }
.print-services-page .services-dialog::backdrop { background: rgb(11 31 58 / 48%); backdrop-filter: blur(2px); }
.print-services-page .services-dialog-heading { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; margin-bottom: 18px; }
.print-services-page .services-dialog-heading > div { display: flex; gap: 10px; align-items: center; }
.print-services-page .services-dialog-heading h2 { margin: 0; font-size: 18px; font-weight: 800; }
.print-services-page .services-dialog-heading p { margin: 2px 0 0; font-size: 11px; color: var(--pp-navy-500); }
.print-services-page .services-dialog-icon { display: grid; place-items: center; width: 40px; height: 40px; flex-shrink: 0; background: var(--pp-blue-50); color: var(--pp-blue-600); border-radius: var(--pp-radius-sm); font-size: 24px; }
.print-services-page .services-close { display: grid; place-items: center; width: 32px; height: 32px; padding: 0; background: var(--pp-navy-50); color: var(--pp-navy-900); border: 0; border-radius: 6px; cursor: pointer; flex-shrink: 0; }
.print-services-page .services-close:hover { color: var(--pp-danger); background: #fef2f2; }
.print-services-page .services-catalog-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; }
.print-services-page .services-catalog-card { display: flex; flex-direction: column; text-align: center; padding: 10px; min-width: 0; border: 1px solid var(--pp-border); border-radius: var(--pp-radius-sm); }
.print-services-page .services-catalog-card .services-product-art { height: 105px; margin: 0 0 7px; }
.print-services-page .services-catalog-card h3 { font-size: 12px; margin: 0; font-weight: 800; }
.print-services-page .services-catalog-card .services-category { font-size: 10px; }
.print-services-page .services-catalog-card .services-button { margin-top: auto; min-height: 28px; padding: 5px; font-size: 11px; width: 100%; }
.print-services-page .services-added { display: block; padding: 5px; margin-top: auto; border-radius: 6px; color: #15803d; background: #e6f8ee; font-size: 11px; font-weight: 700; }
.print-services-page .services-settings-dialog { width: min(900px, calc(100% - 32px)); }
.print-services-page .services-settings-body { display: grid; grid-template-columns: minmax(0, 1fr) 170px; gap: 22px; min-height: 270px; }
.print-services-page .services-product-preview { grid-column: 2; grid-row: 1; text-align: center; align-self: start; border: 1px solid var(--pp-border); border-radius: 8px; background: var(--pp-navy-50); padding: 12px; }
.print-services-page .services-product-preview .services-product-art { height: 150px; }
.print-services-page .services-product-preview > p:last-child { margin: 10px 0 0; font-size: 10px; color: var(--pp-navy-500); }
.print-services-page .services-settings-fields { min-width: 0; grid-column: 1; grid-row: 1; }
.print-services-page .services-number-fields { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.print-services-page .services-number-fields label { display: block; color: var(--pp-navy-900); font-size: 11px; font-weight: 700; }
.print-services-page .services-required { color: var(--pp-danger); }
.print-services-page .services-number-fields input { display: block; width: 100%; min-width: 0; height: 38px; margin-top: 7px; padding: 6px 10px; border: 1px solid var(--pp-border); border-radius: 6px; color: var(--pp-navy-900); background: #fff; direction: ltr; font-weight: 700; }
.print-services-page .services-price-field { display: flex; align-items: baseline; gap: 8px; direction: ltr; height: 38px; margin-top: 7px; padding: 6px 10px; background: #fff; border: 1px solid var(--pp-border); border-radius: 6px; }
.print-services-page .services-price-field input { flex: 1; width: 0; height: auto; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; line-height: 1.5; }
.print-services-page .services-price-field b { order: -1; font: inherit; line-height: 1.5; }
.print-services-page .services-price-field:focus-within { outline: 3px solid var(--pp-blue-600); outline-offset: 3px; }
.print-services-page .services-price-field input:focus-visible { outline: none; }
.print-services-page .services-options { display: flex; flex-wrap: wrap; gap: 8px; padding: 0; margin: 16px 0 0; border: 0; }
.print-services-page .services-options legend { margin-bottom: 8px; font-size: 13px; font-weight: 800; }
.print-services-page .services-choice { display: inline-flex; align-items: center; gap: 7px; padding: 7px 8px; background: #fff; border: 1px solid var(--pp-border); border-radius: 6px; font-size: 11px; color: var(--pp-navy-500); cursor: pointer; }
.print-services-page .services-choice:has(input:checked) { color: var(--pp-blue-800); background: #f8fbff; }
.print-services-page .services-choice input { width: 15px; height: 15px; margin: 0; accent-color: var(--pp-blue-600); cursor: pointer; }
.print-services-page .services-color { width: 23px; height: 23px; border: 1px solid #0b1f3a26; border-radius: 50%; background: var(--swatch); }
.print-services-page .services-dialog-footer { display: flex; gap: 14px; margin-top: 24px; }
.print-services-page .services-dialog-footer .services-button--primary { flex: 1; }
.print-services-page .services-dialog-footer .services-button--secondary { min-width: 120px; }
.print-services-page .services-form-error, .print-services-page .services-storage-warning { padding: 10px 12px; font-size: 12px; border-radius: 8px; color: #b25500; background: #fff6ed; }
.print-services-page .services-toast { position: fixed; z-index: 3000; top: 86px; left: 24px; display: flex; align-items: center; gap: 10px; width: max-content; max-width: calc(100% - 32px); padding: 12px 18px; transform: translate(0, -14px); opacity: 0; pointer-events: none; border-radius: 12px; color: #14532d; background: #f0fdf4; border: 1px solid #86efac; box-shadow: 0 12px 28px rgb(22 101 52 / 18%); font-size: 14px; font-weight: 700; visibility: hidden; transition: opacity .2s ease, transform .2s ease, visibility 0s linear .2s; }
.print-services-page .services-toast:empty { display: none; }
.print-services-page .services-toast::before { content: "\2713"; display: grid; place-items: center; flex: none; width: 24px; height: 24px; color: #fff; font-size: 14px; background: #16a34a; border-radius: 50%; }
.print-services-page .services-toast.is-error { color: #92400e; background: #fffbeb; border-color: #fcd34d; box-shadow: 0 12px 28px rgb(146 64 14 / 18%); }
.print-services-page .services-toast.is-error::before { content: "!"; background: #d97706; font-weight: 800; }
.print-services-page .services-toast.is-visible { opacity: 1; visibility: visible; transform: translate(0, 0); transition-delay: 0s; }
/* Small compositions use the project's original product photography. */
.print-services-page .services-brand { position: absolute; width: 34%; height: auto; top: 48%; left: 33%; }
.print-services-page .services-art--mug .services-brand { top: 52%; left: 27%; width: 29%; }
.print-services-page .services-art--hoodie .services-brand { top: 49%; }
.print-services-page .services-art--phone .services-brand { top: 60%; width: 28%; left: 36%; }
.print-services-page .services-art--bag .services-brand { top: 65%; }
.print-services-page .services-art--cap .services-brand { top: 45%; width: 26%; left: 45%; }
.print-services-page .services-stickers { position: relative; width: 115px; height: 100px; transform: rotate(-12deg); }
.print-services-page .services-stickers span { position: absolute; border: 3px solid #fff; box-shadow: 0 2px 5px #0b1f3a26; border-radius: 18px; padding: 4px 9px; font: 800 15px/1.2 Cairo; direction: ltr; }
.print-services-page .services-stickers span:nth-child(1) { top: 3px; left: 14px; background: #b94ce0; color: #fff; }
.print-services-page .services-stickers span:nth-child(2) { top: 28px; left: 0; background: #ffdc59; color: var(--pp-navy-900); z-index: 2; }
.print-services-page .services-stickers span:nth-child(3) { top: 59px; left: 20px; background: #1677ff; color: #fff; }
.print-services-page .services-poster { padding: 8px 12px; background: #fff9ef; border: 5px solid #e8dfd6; box-shadow: 0 2px 5px #0b1f3a26; font: 900 15px/1.1 Cairo; direction: ltr; text-align: left; }
.print-services-page .services-poster em { color: #d334a6; font-style: normal; }
.print-services-page .services-mousepad { display: grid; place-items: center; width: 110px; height: 74px; background: #141414; border: 2px solid #343434; border-radius: 13px; transform: rotate(-15deg); box-shadow: 0 5px 6px #0b1f3a26; }
.print-services-page .services-mousepad img { width: 78px; }
@media (max-width: 1180px) { .print-services-page .services-products { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 760px) {
  .print-services-page .services-heading { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; column-gap: 10px; row-gap: 0; }
  .print-services-page .services-heading > div { display: contents; }
  .print-services-page .services-heading h1, .print-services-page .services-heading p { grid-column: 1 / -1; }
  .print-services-page .services-heading h1 { font-size: 23px; }
  .print-services-page .services-heading h1 { display: flex; align-items: center; gap: 8px; }
  .print-services-page .services-heading h1 i { margin-inline-end: 0; }
  .print-services-page .services-heading p { margin-bottom: 12px; line-height: 1.8; }
  .print-services-page .services-summary { display: flex; min-width: 0; }
  .print-services-page #openCatalog { width: auto; min-width: 0; margin-bottom: 0; padding-inline: 12px; }
  .print-services-page .services-catalog-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .print-services-page .services-settings-body { grid-template-columns: 1fr; gap: 16px; }
  .print-services-page .services-product-preview { grid-column: 1; grid-row: 1; display: grid; grid-template-columns: 105px 1fr; align-items: center; column-gap: 12px; text-align: start; }
  .print-services-page .services-product-preview .services-product-art { grid-row: 1 / 4; height: 100px; margin: 0; }
  .print-services-page .services-settings-fields { grid-column: 1; grid-row: 2; }
  .print-services-page .services-summary { font-size: 11px; }
  .print-services-page .services-dialog { padding: 16px; }
}
@media (max-width: 575.98px) {
  .print-services-page .services-products { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .print-services-page .services-product { padding: 12px 10px; }
  .print-services-page .services-product > .services-product-art { height: 110px; margin-block: 8px; }
  .print-services-page .services-product > h3 { font-size: 14px; }
  .print-services-page .services-product > .services-category { font-size: 11px; margin-bottom: 8px; }
  .print-services-page .services-details { gap: 5px; margin-bottom: 10px; font-size: 11px; }
  .print-services-page .services-details li { gap: 6px; }
  .print-services-page .services-details .services-money { font-size: 14px; }
  .print-services-page .services-edit { min-height: 36px; padding: 7px; font-size: 12px; }
}
@media (max-width: 480px) {
  .print-services-page .services-catalog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .print-services-page .services-catalog-card .services-stickers { transform: rotate(-12deg) scale(.75); }
  .print-services-page .services-catalog-card .services-mousepad { width: 80px; height: 60px; }
  .print-services-page .services-number-fields { grid-template-columns: 1fr; }
  .print-services-page .services-dialog-heading h2 { font-size: 15px; }
  .print-services-page .services-dialog-footer { gap: 8px; }
  .print-services-page .services-dialog-footer .services-button--secondary { min-width: 80px; }
  .print-services-page .topbar { grid-template-columns: 88px 44px 1fr; }
  .print-services-page .header-actions { display: flex; grid-column: 3; }
  .print-services-page .search-box, .print-services-page .search-box:hover, .print-services-page .search-box:focus-within { display: flex; position: fixed; top: 72px; left: 12px; right: 12px; width: auto; height: 38px; z-index: 15; gap: 10px; padding-inline: 12px; background: #fff; border-color: var(--pp-border); }
  .print-services-page .search-box input { width: auto; max-width: 100%; opacity: 1; pointer-events: auto; }
  .print-services-page .wallet-shell { padding-top: 116px; }
}
@media (prefers-reduced-motion: reduce) { .print-services-page *, .print-services-page *::after { transition: none !important; } }

/* Printing methods in the product settings: one card per method with its price beside the name. */
.print-services-page .services-methods { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.print-services-page .services-methods legend { grid-column: 1 / -1; float: none; width: 100%; margin-bottom: 2px; }
.print-services-page .services-methods-hint { grid-column: 1 / -1; margin: 0 0 2px; color: #667a96; font-size: 12px; line-height: 1.7; }
.print-services-page .services-method { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-width: 0; padding: 10px 12px; background: #fff; border: 1px solid #e1eaf5; border-radius: 10px; transition: border-color .16s ease, background .16s ease; }
.print-services-page .services-method:has(input[type="checkbox"]:checked) { background: #f8fbff; border-color: #8ebeff; }
.print-services-page .services-method-name { display: flex; align-items: center; gap: 9px; min-width: 0; color: #0b1f3a; font-size: 13px; font-weight: 800; cursor: pointer; }
.print-services-page .services-method-name input { width: 17px; height: 17px; margin: 0; flex: none; accent-color: var(--pp-blue-600); cursor: pointer; }
.print-services-page .services-method-price { position: relative; flex: none; width: 112px; display: flex; align-items: center; direction: ltr; }
.print-services-page .services-method-price input { box-sizing: border-box; width: 100%; min-height: 38px; padding: 0 28px 0 10px; color: #0b1f3a; font: inherit; font-size: 13px; text-align: left; background: #fff; border: 1px solid #d9e4f2; border-radius: 8px; }
.print-services-page .services-method-price input:disabled { background: #f1f5fa; }
.print-services-page .services-method-price input:focus { border-color: var(--pp-blue-600); box-shadow: 0 0 0 3px rgb(22 119 255 / 14%); outline: 0; }
.print-services-page .services-method-price b { position: absolute; right: 10px; color: #667a96; font-size: 13px; pointer-events: none; }
@media (max-width: 640px) { .print-services-page .services-methods { grid-template-columns: 1fr; } }

/* Two prices per printing method: a fixed fee and a rate per square centimetre of design. */
.print-services-page .services-method { flex-direction: column; align-items: stretch; gap: 10px; }
.print-services-page .services-method-prices { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.print-services-page .services-method-price { flex: none; width: auto; display: grid; gap: 4px; direction: rtl; }
.print-services-page .services-method-price small { color: #667a96; font-size: 11px; font-weight: 700; }
.print-services-page .services-method-input { position: relative; display: flex; align-items: center; direction: ltr; }
.print-services-page .services-method-price input { padding-right: 28px; }

/* Print areas reuse the method cards; the zone limit sits under the name. */
.print-services-page .services-area-limit { margin-inline-start: 6px; color: #667a96; font-size: 11px; font-weight: 600; }

.services-paper-since { display: block; margin-top: 2px; color: var(--muted, #5b6b82); font-weight: 400; }

/* Paper: "every N sheets/pages cost X" rows */
.services-paper-type { display: grid; gap: 12px; padding: 14px 16px; }
.services-paper-block { display: grid; gap: 8px; padding: 10px 12px; border: 1px dashed var(--line, #d9e1ec); border-radius: 10px; }
.services-paper-title { font-size: 13px; color: var(--muted, #5b6b82); }
.services-pack { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; }
.services-pack-name { min-width: 64px; font-weight: 600; }
.services-pack-line { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.services-pack-line input { width: 92px; min-height: 36px; padding: 4px 8px; border: 1px solid var(--line, #d9e1ec); border-radius: 8px; font: inherit; }
.services-pack-line input:disabled { background: var(--page, #f3f6fb); }
.services-paper-ink { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; }
.services-paper-ink .services-method-name { min-width: 120px; }

.services-pack-money { display: inline-flex; align-items: center; gap: 4px; white-space: nowrap; }

/* The settings error sits right under the dialog title so it is seen without scrolling. */
.print-services-page .services-settings-dialog #settingsError { margin: 12px 20px 0; }

/* A mistake found on saving: kept a little below the top edge and flashed once so it is noticed. */
.print-services-page .services-section-error { display: flex; align-items: center; gap: 10px; scroll-margin-top: 16px; margin: 4px 0 14px; padding: 12px 14px; color: #9a4a00; font-size: 13px; font-weight: 800; line-height: 1.6; background: #fff6ed; border: 1px solid #ffd2a6; border-inline-start: 4px solid #e8730c; border-radius: 10px; }
.print-services-page .services-section-error::before { content: "!"; flex: none; display: grid; place-items: center; width: 22px; height: 22px; color: #fff; font-size: 14px; font-weight: 900; background: #e8730c; border-radius: 50%; }
.print-services-page .services-section-error.is-flashing { animation: services-error-flash 1.2s ease; }
@keyframes services-error-flash { 0%, 40% { background: #ffe3c8; box-shadow: 0 0 0 4px rgb(232 115 12 / 22%); } 100% { background: #fff6ed; box-shadow: none; } }
html[data-bs-theme="dark"] .print-services-page .services-section-error { color: #f3c79d; background: #3b2917; border-color: #6b4524; border-inline-start-color: #e8730c; }
@media (prefers-reduced-motion: reduce) { .print-services-page .services-section-error.is-flashing { animation: none; } }

/* Paper cards: full width, one tidy line per size / colour. */
.print-services-page .services-method.services-paper-type { grid-column: 1 / -1; gap: 14px; padding: 16px; }
.print-services-page .services-paper-type > .services-method-name { font-size: 14px; padding-bottom: 10px; border-bottom: 1px solid #e1eaf5; }
.print-services-page .services-paper-block { gap: 0; padding: 12px 14px; background: #f8fbff; border: 1px solid #e1eaf5; border-radius: 12px; }
.print-services-page .services-paper-title { margin-bottom: 8px; color: #0b1f3a; font-size: 13px; font-weight: 800; }
.print-services-page .services-pack { display: grid; grid-template-columns: 90px 1fr; align-items: center; gap: 4px 12px; padding: 8px 0; border-top: 1px solid #e6eef8; }
.print-services-page .services-paper-title + .services-pack { border-top: 0; }
.print-services-page .services-pack-name { min-width: 0; color: #0b1f3a; font-size: 13px; font-weight: 700; }
.print-services-page .services-pack-line { display: flex; flex-wrap: nowrap; align-items: center; gap: 8px; color: #667a96; font-size: 13px; }
.print-services-page .services-pack-line input { box-sizing: border-box; width: 84px; min-height: 38px; padding: 0 10px; color: #0b1f3a; font: inherit; font-size: 13px; text-align: center; background: #fff; border: 1px solid #d9e4f2; border-radius: 8px; }
.print-services-page .services-pack-line input:focus { border-color: var(--pp-blue-600); box-shadow: 0 0 0 3px rgb(22 119 255 / 14%); outline: 0; }
.print-services-page .services-pack-line input:disabled { background: #f1f5fa; }
.print-services-page .services-pack-money b { color: #667a96; font-size: 14px; font-weight: 700; }
.print-services-page .services-pack .services-paper-since { grid-column: 2; margin: 0; font-size: 11px; }
.print-services-page .services-paper-ink { display: grid; grid-template-columns: 130px 1fr; align-items: center; gap: 4px 12px; padding: 8px 0; border-top: 1px solid #e6eef8; }
.print-services-page .services-paper-title + .services-paper-ink { border-top: 0; }
.print-services-page .services-paper-ink .services-method-name { min-width: 0; }
.print-services-page .services-paper-ink .services-pack { display: block; padding: 0; border: 0; }
@media (max-width: 640px) {
  .print-services-page .services-pack, .print-services-page .services-paper-ink { grid-template-columns: 1fr; }
  .print-services-page .services-pack .services-paper-since { grid-column: 1; }
  .print-services-page .services-pack-line { flex-wrap: wrap; }
}
