/* Screen palette stays separate from the existing white, printable inquiry. */
@media screen {
  :root {
    color-scheme: light;
    --ink: #2a3733;
    --ink2: #4f5d55;
    --muted: #647168;
    --paper: #f8f7f3;
    --white: #ffffff;
    --line: #e3e5df;
    --accent: #8b6b3f;
    --sage: #edf2ea;
    --panel: #ffffff;
    --surface: #f3f4f0;
    --subtle: #6d766d;
    --shadow: 0 18px 50px #263c3110;
    background: var(--paper);
  }

  body { background: var(--paper); color: var(--ink); }
  ::selection { background: #e6ddca; color: #fff; }
  button { color: inherit; }
  button:focus-visible, a:focus-visible { outline-color: var(--accent); }
  input:focus, select:focus, textarea:focus { outline-color: var(--accent); }
  input::placeholder, textarea::placeholder { color: #727a70; opacity: 1; }
  input, select, textarea { color-scheme: light; }

  .topbar { background: #edf0e8; color: #52664f; border-bottom: 1px solid #e2e7dc; }
  .private-label { color: var(--accent); }
  .header { max-width: 1440px; height: 92px; border-color: #e2e7dc; }
  .brand { color: var(--ink); }
  .brand small { color: var(--subtle); }
  .brand-mark { background: #edf2e6; border: 1px solid #d5ddca; color: var(--accent); }
  .brand-mark svg { stroke: var(--accent); }
  .inquiry-link span, .basket-heading h3 > span { background: #e6eddb; color: #6a704c; }
  .nav-active { border-color: var(--accent); }
  nav a { color: #45564d; }
  nav a:hover { color: var(--accent); }

  .hero {
    display: block;
    max-width: 1440px;
    min-height: 0;
    margin: 0 auto;
    padding: 20px 5% 0;
    overflow: visible;
  }
  .hero-art, .hero-art.has-factory-cover {
    display: block;
    background: #fafaf7;
    min-height: 0;
    max-height: none;
    border: 1px solid #e2e5dd;
    border-radius: 12px;
    overflow: hidden;
  }
  .hero-art > img, .hero-art.has-factory-cover > img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    position: relative;
    inset: auto;
    object-fit: contain;
    border-radius: 0;
  }
  .visually-hidden, .hero-art.has-factory-cover .art-caption.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    clip-path: inset(50%);
    white-space: nowrap;
    border: 0;
  }
  .hero-stage { aspect-ratio: 1902 / 827; background: #f9f9f6; }
  .hero-stage > img { width: 100%; height: 100%; max-width: 100%; object-fit: contain; }
  .hero-carousel-toolbar { background: #fff; display: flex; justify-content: space-between; align-items: center; gap: 25px; padding: 22px 27px; border-top: 1px solid #e6e8df; }
  .hero-slide-copy { min-width: 0; }
  .hero-slide-copy .eyebrow { font-size: 8px; letter-spacing: 2px; }
  .hero-slide-copy strong { display: block; font-size: 17px; font-weight: 500; letter-spacing: .4px; overflow-wrap: anywhere; margin: 8px 0; color: #3f5041; }
  .hero-slide-copy p { font-size: 11px; line-height: 1.8; margin: 0; color: #727e68; white-space: pre-wrap; overflow-wrap: anywhere; }
  .hero-carousel-controls { display: flex; align-items: center; justify-content: flex-end; gap: 10px; flex-shrink: 0; max-width: 48%; flex-wrap: wrap; }
  .hero-count { font-size: 11px; font-variant-numeric: tabular-nums; letter-spacing: 2px; color: #8b6b3f; margin-right: 9px; }
  .hero-arrow { display: grid; place-items: center; width: 39px; height: 39px; border: 1px solid #d7dfcc; background: #f9fbf5; border-radius: 50%; color: #637748; font-size: 19px; }
  .hero-arrow:hover { background: #e9efdf; border-color: #9eae8a; }
  .hero-dots { display: flex; gap: 1px; flex-wrap: wrap; max-width: 150px; }
  .hero-dot { width: 24px; height: 32px; padding: 8px; display: grid; place-items: center; background: transparent; }
  .hero-dot > span { display: block; height: 5px; width: 5px; border-radius: 50%; background: #c8d1bd; }
  .hero-dot.selected > span { width: 17px; border-radius: 3px; background: #8b6b3f; }
  .hero-play-pause { background: transparent; color: #7a835f; font-size: 10px; padding: 8px 1px; min-height: 32px; text-decoration: underline; text-underline-offset: 4px; }
  #hero-carousel { touch-action: pan-y pinch-zoom; box-shadow: 0 12px 38px #344e3010; }
  #hero-carousel:focus-visible { outline: 2px solid #a4ae86; outline-offset: 5px; }
  .hero-copy {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 30px;
    align-items: center;
    padding: 37px 0 40px;
    position: relative;
    isolation: isolate;
  }
  .hero-copy::after { content: ''; position: absolute; z-index: -1; right: 0; bottom: 18px; width: 185px; height: 95px; background-image: linear-gradient(45deg,transparent 47%,#dfe5d34d 48%,#dfe5d34d 52%,transparent 53%),linear-gradient(-45deg,transparent 47%,#dfe5d34d 48%,#dfe5d34d 52%,transparent 53%); background-size: 26px 26px; pointer-events: none; opacity: .7; }
  .hero-service-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
  .hero-service-tags span { border: 1px solid #e3e6d8; border-radius: 20px; padding: 4px 11px; color: #65724b; background: #f0f2e6; font-size: 10px; letter-spacing: .5px; }
  .eyebrow { color: var(--accent); font-weight: 500; letter-spacing: 2.3px; }
  .hero-copy h1 { font-size: clamp(24px, 2.6vw, 36px); font-weight: 500; line-height: 1.5; margin: 13px 0 12px; letter-spacing: .5px; }
  .hero-intro > p { color: var(--muted); font-size: 13px; line-height: 1.9; margin: 0; }
  .hero-actions { gap: 25px; }
  .hero-clients { color: var(--subtle); margin-top: 20px; gap: 11px; }
  .hero-clients b { color: #a3a88e; }
  .button { border-radius: 5px; min-height: 46px; letter-spacing: .3px; }
  .primary { background: var(--accent); color: #ffffff; border-color: var(--accent); }
  .primary:hover { background: #735732; color: #ffffff; border-color: #735732; }
  .secondary { background: #ffffff; color: #5d6955; border-color: #bfcbb5; }
  .secondary:hover { background: #edf2e8; color: #42563b; }
  .text-link { color: #687249; }
  .text-link:hover, .text-button:hover { color: #465c33; }
  .text-button { color: #6e785b; }

  .trust-strip { border-color: var(--line); margin-bottom: 65px; background: #f0f3e9; border-radius: 9px; }
  .trust-strip > div { padding-top: 24px; padding-bottom: 24px; }
  .trust-strip span { color: var(--accent); }
  .trust-strip small { color: var(--subtle); font-size: 11px; }
  .section-heading h2 { font-weight: 500; font-size: 30px; letter-spacing: .3px; }
  .section-heading p { color: var(--muted); font-size: 13px; }
  .section-index { color: #7f846b; }
  .section-heading { position: relative; }
  .section-heading::before { content: ''; width: 35px; height: 2px; position: absolute; top: -15px; left: 0; background: #ad956c; }
  .data-notice { background: #f2f1e8; border-color: #e0deca; color: #70714f; line-height: 1.8; }
  .data-notice strong { color: #636536; }
  .workspace { gap: 24px; }
  .filter-panel { color: var(--ink2); }
  .unit, .filter-note, .filter-end { color: var(--subtle); }
  .filter-end strong { color: #68724c; }
  .filter-end span { color: var(--accent); }
  .filter-panel select, .form-grid select, .form-grid input,
  .form-grid textarea, .dimensions input, .admin-toolbar input,
  .admin-toolbar select, .extra-details textarea,
  .factory-edit-fields input, .factory-edit-fields select,
  .factory-edit-fields textarea, #copy-fallback {
    border-color: #cbd4c4;
    background: #ffffff;
    color: #314a39;
  }
  .type-filter input, .verified-toggle input, .checkbox-group input { accent-color: var(--accent); }
  .type-filter label { color: #61734f; }
  .type-filter label:hover { background: #f0f4e9; }
  .type-filter label:has(input:checked) { background: #e9efdf; color: #495d36; border-color: #a7b493; }
  .type-filter b { color: #7a8964; }
  .type-filter label:focus-within { outline-color: var(--accent); }
  .search-field { border-color: #bac8b0; }
  .search-field:focus-within { outline-color: var(--accent); }
  .search-field span { color: var(--accent); }
  .filter-chip { background: #edf2e7; border-color: #d5dfc9; color: #64784d; }
  .filter-chip.spec-chip { background: #f5f0e3; border-color: #ddd0b3; color: #826c42; }

  .product-card, .admin-card { background: var(--panel); border-color: #e2e7dc; border-radius: 9px; }
  .product-card:hover { border-color: #b4bda6; box-shadow: var(--shadow); }
  .product-visual, .product-visual.blue, .product-visual.sage,
  .product-visual.stone, .product-visual.clay, .admin-card-visual {
    background: radial-gradient(ellipse at 50% 40%, #f2f1e9, #e9ece2 80%);
    border-bottom: 1px solid #e3e7db;
  }
  .product-visual img { padding: 7px; }
  .visual-label { color: #7b866d; background: #ffffffe6; padding: 4px 6px; border-radius: 3px; }
  .card-tag, .admin-card-visual span { background: #ffffffdd; color: #687849; border: 1px solid #e1e7d8; }
  .product-info { padding: 21px; }
  .product-info .eyebrow { color: #89976e; font-size: 9px; }
  .product-info h3 { color: var(--ink); font-size: 21px; font-weight: 500; margin: 10px 0; }
  .product-info > p { color: var(--muted); font-size: 12px; }
  .product-tags span { color: #738468; border-color: #e1e7d7; font-size: 10px; }
  .card-spec { color: var(--subtle); border-color: #e2e7dc; font-size: 11px; }
  .card-spec strong { color: #6b7c5d; }
  .card-bottom > b { color: #836d45; font-size: 12px; }
  .card-detail { color: #7d8a60; }
  .card-add { color: #6a704c; background: #f0f4e9; border-color: #d5e1c5; min-height: 36px; }
  .card-add:hover { background: var(--accent); color: #ffffff; border-color: var(--accent); }
  .dual-prices { padding-top: 15px; margin-top: 12px; border-top: 1px solid #e2e7dc; }
  .dual-prices > div { display: flex; justify-content: space-between; align-items: baseline; gap: 8px; margin: 9px 0; }
  .dual-prices span { color: #6e7b63; font-size: 11px; }
  .dual-prices strong { color: #826438; font-size: 17px; font-weight: 500; overflow-wrap: anywhere; }
  .dual-prices > div:nth-child(2) strong { color: #566e55; }
  .dual-prices small { color: #687753; font-size: 9px; line-height: 1.7; display: block; }
  .card-buttons { width: 100%; justify-content: space-between; align-items: center; }
  .hero-clients { flex-wrap: wrap; }
  .basket-panel { background: #f2f1e8; border-color: #d8dfca; box-shadow: 0 12px 35px #34483009; }
  .basket-heading, .basket-row { border-color: #d9e2cc; }
  .empty-basket, .empty-basket > span, .empty-review { color: var(--subtle); }
  .empty-basket strong { color: #5d784b; }
  .basket-thumb { background: #e4edd8; }
  .basket-row p, .basket-note { color: #738a5e; }
  .remove-item { color: #879970; }
  .qty-stepper { border-color: #c7d7b7; background: #fbfdf6; }
  .qty-stepper button, .qty-stepper input { color: #385e2c; }
  .row-edit { color: #66834f; }
  .price-pending { color: #738a5e; }
  .price-pending b { color: #957647; }
  .empty-results { background: var(--panel); border-color: #c7d9b7; }
  .empty-results > span { color: var(--accent); }
  .empty-results p { color: var(--muted); }

  .factory-grid { background: var(--panel); border-color: #dce5d3; }
  .factory-intro { background: #eaf0e6; color: var(--ink); }
  .factory-symbol svg { stroke: #8d9f75; }
  .factory-intro .eyebrow { color: #687d4f; }
  .factory-intro p { color: #556a49; }
  .intro-missing { border-color: #cddabb; color: #7a8d66; }
  .intro-missing strong { color: #717a47; }
  .step-number { color: #afba9b; }
  .factory-details p { color: var(--muted); font-size: 12px; }
  .pending-line { background: #f5f0e3; color: #907443; }
  .factory-gallery-heading p { color: var(--muted); font-size: 12px; }
  .factory-gallery-filters button { background: #ffffff; border-color: #dce5d3; color: #74895e; min-height: 36px; }
  .factory-gallery-filters button.selected { background: var(--accent); border-color: var(--accent); color: #ffffff; }
  .factory-photo-card { background: var(--panel); border-color: #dce5d3; }
  .factory-photo-card > button { background: #eef2e7; }
  .factory-photo-card button > span { background: #ffffffdd; color: #637a48; }
  .factory-photo-card small { color: #8b6b3f; }
  .factory-photo-card p { color: var(--muted); }
  .factory-photo-placeholder { background: #f2f5ec; border-color: #cbdaba; }
  .factory-photo-placeholder > span { color: #8ca177; }
  .factory-photo-placeholder > div { color: #abc099; }
  .factory-photo-placeholder p { color: var(--muted); }

  #inquiry-form, .review-panel { background: var(--panel); border-color: #e0e7d8; }
  .form-header > span, .form-grid small, .form-bottom p { color: var(--subtle); }
  .form-grid > label, .dimensions > label { color: #607b50; }
  .dimensions > span { color: var(--accent); }
  .review-row p, .review-row .review-note { color: var(--muted); }
  .review-row small { color: #987c4f; }
  .quote-disclaimer { background: #f4f5ec; border: 1px solid #e2e7d5; }
  .quote-disclaimer strong { color: #657843; }
  .quote-disclaimer p { color: #7e8d6b; }
  footer { border-color: #dce5d1; }
  footer p, footer > a:last-child { color: var(--subtle); }
  footer > a:last-child:hover { color: var(--accent); }
  .skip-link { background: #ffffff; color: #3b582a; }

  dialog { color: var(--ink); background: var(--panel); border-color: #d4dfc6; box-shadow: 0 30px 100px #1730242e; }
  dialog::backdrop { background: #1d39276b; }
  .dialog-close, .factory-photo-dialog .dialog-close { background: #edf2e5; color: #516e3f; }
  .detail-visual { background: #efeee5; }
  .detail-content > p { color: var(--muted); }
  .pending-box { background: #f6f2e8; border-color: #e6dec9; color: #88754f; }
  .detail-gallery button { background: #efeee5; border-color: #c7d6b8; }
  .error-message { background: #fff2e9; border-color: #e5c6ad; color: #a2552d; }
  .toast { background: #365633; color: #ffffff; border: 1px solid #738765; }
  .quote-dialog { background: #fafbf7; }
  .quote-tools p, .quote-send-note { color: var(--muted); }
  .quote-image-status { color: #827045; font-size: 12px; line-height: 1.8; }
  .quote-images { display: grid; gap: 22px; }
  .quote-image-page { margin: 0; min-width: 0; }
  .quote-image-page > a { display: block; background: #fff; border: 1px solid #d9dfd0; }
  .quote-image-page img { width: 100%; height: auto; }
  .quote-image-page figcaption { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding-top: 11px; color: #7d8c6b; font-size: 11px; }
  .quote-image-page figcaption .button { min-height: 36px; padding: 9px 15px; font-size: 11px; }
  .quote-save-help { color: var(--muted); font-size: 11px; line-height: 1.9; text-align: center; margin: 20px 0 0; }
  .quote-document { background: #ffffff; border-color: #dce5d0; }
  .document-head { border-color: #8b6b3f; }
  .document-head p, .document-head > span, .document-meta span { color: #7f916c; }
  .quote-table th { background: #edf2e5; color: #5f7a4b; border-color: #d2dfc2; }
  .quote-table td { border-color: #dde7d0; }
  .quote-table td small { color: #7e8f69; }
  .document-notes { background: #f5f7ee; color: #657a50; }
  .document-disclosure { color: #92805d; }
  .factory-photo-dialog { background: #ffffff; }
  .factory-photo-dialog > img { background: #edf3e4; }
  .factory-photo-dialog p { color: var(--muted); }
  .noscript { background: #fff2da; color: #886132; }

  /* The same palette extends to all existing product and factory controls. */
  .admin-header { border-color: var(--line); }
  .access-panel, .admin-metrics > div, .category-card, .identity-card,
  .factory-edit-card, .factory-editor-empty, .gallery-tile {
    background: var(--panel);
    border-color: #dfe6d5;
  }
  .admin-main h1 { font-weight: 500; }
  .admin-metrics span, .category-heading p, .category-card p,
  .admin-card-body small, .admin-card p, .admin-help p,
  .upload-status, .editor-bottom p, .identity-card p,
  .factory-manager-heading p, .factory-manager-heading h2 span,
  .factory-editor-empty p { color: var(--muted); }
  .admin-metrics strong { color: #769054; }
  .admin-toolbar, .admin-help, .editor-tip, .profile-save-bar {
    background: #f0f4e7;
    border-color: #d7e3c9;
    color: #708857;
  }
  .admin-card-foot strong { color: #8c7044; }
  .admin-card.archived .admin-card-visual span { background: #e4e7de; color: #748168; }
  .admin-editor { background: #fafbf7; }
  .gallery-tile img, .factory-edit-image, .avatar-preview,
  .cover-preview { background: #edf3e5; border-color: #cbdaba; color: #8a9d73; }
  .gallery-tile button, .factory-image-actions button { background: #eff4e7; color: #6f8753; border-color: #d6e3c8; }
  .gallery-tile span { color: #809665; }
  .no-images { border-color: #cbdaba; color: var(--muted); }
  .editor-tip strong { color: #68824d; }
  .editor-fields > h3, .editor-bottom { border-color: #dce5d0; }
  .checkbox-group label { border-color: #dce6d0; background: #ffffff; color: #6f8557; }
  .checkbox-group label:has(input:checked) { background: #e9f0dc; border-color: #9bad84; color: #4c6d36; }
  .admin-tabs { border-color: #d5e1c7; }
  .admin-tabs .admin-tab { background: #edf2e6; border-color: #d8e4cc; color: #6b8350; }
  .admin-tabs .admin-tab.selected { background: var(--accent); border-color: var(--accent); color: #ffffff; }
  .cover-preview { aspect-ratio: 1320 / 757; }
  .cover-preview img { object-fit: contain; }
  .factory-edit-image > span { background: #ffffffdd; color: #758858; border: 1px solid #cbdaba; }
  .factory-edit-fields label { color: #7a9361; }
  .factory-editor-empty > span { color: #a7bb8b; }
  .profile-save-bar p { color: #65784f; }
  .billing-settings { margin-top: 22px; }
  .billing-settings .form-grid { margin-top: 23px; }
  .hero-manager { margin: 24px 0; }
  .hero-manager-top { display: flex; justify-content: space-between; align-items: center; gap: 24px; }
  .hero-manager-top h2 { margin: 11px 0; font-size: 23px; }
  .hero-manager-top p { margin-bottom: 0; max-width: 740px; }
  .hero-manager-controls { display: flex; flex-wrap: wrap; align-items: center; gap: 22px; padding: 18px 20px; margin: 20px 0; background: #f2f5ec; border: 1px solid #dfe7d4; border-radius: 7px; }
  .hero-auto-toggle { display: flex; gap: 8px; align-items: center; font-size: 12px; color: #63784d; }
  .hero-auto-toggle input { accent-color: var(--accent); }
  .hero-interval-label { font-size: 11px; display: flex; align-items: center; gap: 9px; color: #6e8059; }
  .hero-interval-label input { width: 65px; border: 1px solid #c7d3b9; background: #fff; color: #4f693d; border-radius: 5px; padding: 8px; }
  .hero-manager-controls .text-button { margin-left: auto; }
  .hero-slide-editor { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; margin-top: 20px; }
  .hero-edit-card { background: #fff; border: 1px solid #dce5d0; border-radius: 8px; overflow: hidden; }
  .hero-edit-card.inactive { opacity: .7; }
  .hero-edit-image { aspect-ratio: 1902 / 827; position: relative; background: #f3f5ed; }
  .hero-edit-image > img { width: 100%; height: 100%; object-fit: contain; }
  .hero-edit-image > span { position: absolute; top: 10px; left: 10px; font-size: 9px; background: #ffffffed; color: #5d7947; border: 1px solid #cfdcc1; border-radius: 4px; padding: 4px 7px; }
  .hero-edit-fields { padding: 18px; display: flex; flex-direction: column; gap: 13px; }
  .hero-edit-fields > label { font-size: 10px; color: #627b4d; display: flex; flex-direction: column; gap: 7px; }
  .hero-edit-fields input[type="text"], .hero-edit-fields textarea { width: 100%; padding: 10px 9px; font-size: 12px; color: #435e34; border: 1px solid #d0ddc3; border-radius: 5px; background: #fff; min-width: 0; }
  .hero-edit-fields textarea { resize: vertical; line-height: 1.8; }
  .hero-edit-fields > .hero-active-label { flex-direction: row; align-items: center; gap: 7px; font-size: 11px; }
  .hero-active-label input { accent-color: var(--accent); }
  .hero-edit-actions { padding: 0 14px 17px; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 6px; }
  .hero-edit-actions button { border: 1px solid #d5e2c7; border-radius: 5px; background: #f0f5e7; color: #5c7444; padding: 8px 9px; font-size: 10px; }
  .hero-editor-empty { grid-column: 1 / -1; border: 1px dashed #c4d5b0; border-radius: 8px; text-align: center; padding: 32px; font-size: 12px; color: #7a9166; background: #f4f7ef; }
  .hero-manager-note { font-size: 11px; color: #8b7959; line-height: 1.9; margin: 17px 0 0; }

  @media (max-width: 1000px) {
    .hero-slide-editor { grid-template-columns: 1fr 1fr; }
    .hero-carousel-toolbar { align-items: flex-start; gap: 18px; }
  }

  @media (min-width: 1550px) {
    .hero { max-width: 1296px; padding: 20px 0 0; }
  }
  @media (max-width: 1100px) {
    .hero-copy { grid-template-columns: 1fr; gap: 24px; }
    .hero-action-group { display: flex; align-items: center; justify-content: space-between; gap: 18px; }
    .hero-clients { margin-top: 0; }
  }
  @media (max-width: 800px) {
    .header { height: 80px; }
    .hero { padding-top: 16px; }
    .hero-copy { padding: 28px 0 32px; }
    .hero-copy h1 { font-size: 28px; }
    .hero-action-group { display: block; }
    .hero-actions .text-link { display: inline-flex; }
    .hero-clients { margin-top: 19px; font-size: 10px; }
    .section-heading h2 { font-size: 25px; }
    .product-info { padding: 15px; }
    .product-info h3 { font-size: 19px; }
    .product-info > p { font-size: 11px; }
    .product-tags span { font-size: 9px; }
    .card-spec { font-size: 10px; }
    .card-bottom > b { font-size: 11px; }
  }
  @media (max-width: 580px) {
    .topbar { font-size: 9px; }
    .header { height: auto; min-height: 96px; padding-top: 16px; padding-bottom: 14px; flex-wrap: wrap; gap: 13px; }
    .header nav { width: 100%; justify-content: space-between; gap: 10px; }
    .header nav a { padding: 7px 0; font-size: 11px; }
    .header nav a:first-child, .header nav a:nth-child(2), .header .admin-nav { display: inline-flex; }
    .hero { padding: 14px 4% 0; }
    .hero-art { border-radius: 7px; }
    .hero-carousel-toolbar { display: block; padding: 17px 18px; }
    .hero-slide-copy strong { font-size: 15px; }
    .hero-slide-copy p { font-size: 10px; }
    .hero-carousel-controls { max-width: 100%; justify-content: flex-start; gap: 8px; margin-top: 14px; }
    .hero-arrow { width: 44px; height: 44px; }
    .hero-dots { max-width: 120px; }
    .hero-play-pause { margin-left: auto; }
    .hero-service-tags { margin-top: 13px; }
    .hero-service-tags span { font-size: 9px; }
    .hero-manager-top { display: block; }
    .hero-manager-top > .button { width: 100%; margin-top: 18px; }
    .hero-manager-controls { gap: 17px; padding: 15px; }
    .hero-manager-controls .text-button { margin-left: 0; }
    .hero-slide-editor { grid-template-columns: 1fr; gap: 17px; }
    .hero-edit-fields input[type="text"], .hero-edit-fields textarea, .hero-interval-label input { font-size: 16px; }
    .hero-edit-actions button { min-height: 38px; }
    .hero-copy { gap: 22px; padding: 25px 1% 30px; }
    .hero-copy h1 { font-size: 25px; line-height: 1.5; margin: 12px 0; }
    .hero-intro > p { font-size: 12px; }
    .hero-actions { gap: 18px; }
    .hero-actions .button { padding: 13px 18px; }
    .hero-actions .text-link { font-size: 11px; }
    .hero-clients { gap: 9px; }
    .trust-strip { margin-bottom: 42px; }
    .trust-strip > div { padding: 17px 20px; }
    .trust-strip small { font-size: 10px; }
    .section-heading h2 { font-size: 23px; }
    .section-heading p { font-size: 12px; }
    .filter-panel { background: #f2f5ec; border-color: #e0e8d7; }
    .type-filter > label { background: #fafcf6; border-color: #dce6cf; }
    .product-info { padding: 13px; }
    .product-info .eyebrow { font-size: 7px; letter-spacing: 1px; }
    .product-info h3 { font-size: 18px; }
    .product-info > p { font-size: 10px; }
    .product-tags span { font-size: 9px; }
    .card-spec { font-size: 10px; }
    .card-bottom > b { font-size: 11px; }
    .card-add { min-height: 40px; }
    .card-detail { display: inline-block; min-height: 40px; }
    .card-buttons { align-items: stretch; }
    .card-detail { flex: 0 0 28px; }
    .card-add { flex: 1; }
    .dual-prices strong { font-size: 14px; }
    .dual-prices span { font-size: 10px; }
    .dual-prices small { font-size: 8px; }
    .form-grid { grid-template-columns: 1fr; }
    .form-grid > label { font-size: 11px; }
    .form-grid input, .form-grid select, .form-grid textarea,
    .filter-panel select, .admin-toolbar input, .admin-toolbar select,
    .dimensions input, .search-field input, .extra-details textarea,
    .factory-edit-fields input, .factory-edit-fields select,
    .factory-edit-fields textarea { font-size: 16px; }
    .form-grid input, .form-grid select, .filter-panel select { min-height: 46px; }
    .detail-visual { min-height: 220px; height: 220px; }
    .detail-visual > img { max-height: 178px; width: 100%; object-fit: contain; margin-bottom: 30px; }
    .identity-card .cover-preview { aspect-ratio: 1320 / 757; }
    .admin-header { align-items: flex-start; }
    .admin-header > div { flex-direction: column; gap: 10px; }
    .factory-edit-fields { grid-template-columns: 1fr; }
  }
}
.document-compliance { display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-top:20px; padding-top:15px; border-top:1px solid #ddd6ca; }
.document-compliance > div { flex:1; min-width:0; font-size:11px; line-height:1.8; }
.document-compliance p { margin:6px 0; white-space:pre-wrap; overflow-wrap:anywhere; }
.document-seal { width:160px; height:160px; flex-shrink:0; }
@media screen {
  .payment-fields { border:1px solid #d8dfcd; border-radius:9px; padding:20px; margin:24px 0 0; background:#f5f7f0; min-width:0; }
  .payment-fields legend { font-size:14px; font-weight:600; padding:0 7px; }
  .payment-fields-note { font-size:11px; color:var(--muted); line-height:1.9; margin:0 0 17px; }
  #remaining-balance { background:#edf0e8; font-weight:600; color:var(--ink); }
  .payment-calculation { font-size:12px; color:var(--accent); line-height:1.8; margin:15px 0 0; }
  .trust-payment-section { max-width:1440px; margin:0 auto 65px; padding:0 5%; }
  .warranty-banner { border:1px solid #ddd6c8; border-radius:10px; background:linear-gradient(110deg,#f1eddf,#f5f7ef); display:flex; align-items:center; gap:18px; padding:22px 27px; margin:0 0 25px; }
  .warranty-banner > span { font-size:34px; color:var(--accent); }
  .warranty-banner strong { display:block; font-size:19px; line-height:1.6; white-space:pre-wrap; overflow-wrap:anywhere; font-weight:600; }
  .warranty-banner p { font-size:11px; color:var(--muted); margin:7px 0 0; }
  .trust-payment-grid,.trust-admin-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
  .trust-card { min-width:0; border:1px solid var(--line); border-radius:12px; padding:30px; background:#fff; }
  .trust-card h3 { font-size:22px; font-weight:500; margin:12px 0; }
  .trust-card > p { font-size:12px; color:var(--muted); line-height:1.9; }
  .trust-preview { display:flex; align-items:center; justify-content:center; width:100%; height:290px; border:1px solid #dfe4d8; border-radius:8px; background:#f5f6f0; padding:16px; overflow:hidden; font-size:13px; color:var(--muted); }
  button.trust-preview:not(:disabled) { cursor:zoom-in; }
  .trust-preview > span { display:flex; align-items:center; justify-content:center; width:100%; height:100%; }
  .trust-preview img { display:block; width:100%; height:100%; object-fit:contain; }
  .payment-code-preview { background:#fff; }
  .trust-card > .payment-notice { padding:15px 18px; margin-top:17px; background:#f2f5eb; border:1px solid #d9e2ce; color:#3f5442; border-radius:7px; font-size:13px; white-space:pre-wrap; overflow-wrap:anywhere; }
  .payment-order-summary { color:var(--accent); padding:12px 0; font-size:12px; line-height:1.8; }
  .trust-status { font-size:11px; color:var(--muted); line-height:1.8; }
  .trust-management { margin:30px 0; }
  .trust-management .factory-manager-heading { margin-top:0; }
  .trust-admin-grid .identity-card { min-width:0; }
  .trust-admin-grid h3 { font-size:20px; margin:0 0 20px; }
  .trust-admin-grid .identity-actions { margin-top:18px; }
  .trust-text-settings { margin-top:22px; }
  .trust-text-settings > p { font-size:11px; line-height:1.8; color:var(--muted); }
  .trust-image-dialog { width:min(680px,94vw); padding:28px; background:#fff; }
  .trust-image-dialog h2 { padding-right:28px; font-size:21px; margin:7px 0 20px; }
  .trust-image-dialog > img { width:100%; max-height:65vh; object-fit:contain; display:block; background:#fafaf7; }
  .trust-image-dialog > p { font-size:12px; line-height:1.9; white-space:pre-wrap; overflow-wrap:anywhere; }
  #trust-image-amount { color:var(--accent); }
  .quote-image-page figcaption > div { display:flex; gap:8px; flex-wrap:wrap; justify-content:flex-end; }
  @media (min-width:1550px) { .trust-payment-section { max-width:1296px; padding:0; } }
  @media (max-width:580px) {
    .payment-fields { padding:17px 13px; }
    .payment-fields legend { font-size:13px; }
    .trust-payment-section { padding:0 4%; margin-bottom:40px; }
    .trust-payment-grid,.trust-admin-grid { grid-template-columns:1fr; gap:18px; }
    .trust-card { padding:22px 18px; }
    .trust-card h3 { font-size:20px; }
    .warranty-banner { padding:18px; gap:13px; }
    .warranty-banner strong { font-size:17px; }
    .trust-preview { height:270px; padding:12px; }
    .trust-image-dialog { padding:22px 15px; }
    .quote-image-page figcaption { flex-wrap:wrap; gap:10px; }
    .quote-image-page figcaption > div { justify-content:flex-start; }
    .quote-image-page figcaption .button { min-height:44px; }
  }
}
@media screen {
  .factory-address-banner { max-width:1440px; margin:0 auto; padding:15px 5%; display:flex; align-items:center; gap:13px; border-bottom:1px solid var(--line); background:#f0f3ec; }
  .address-icon { color:var(--accent); font-size:28px; flex-shrink:0; }
  .factory-address-banner > div { min-width:0; flex:1; display:flex; align-items:baseline; gap:14px; }
  .factory-address-banner > div > span { color:var(--muted); font-size:11px; flex-shrink:0; }
  .factory-address-banner strong { font-size:13px; font-weight:500; line-height:1.7; overflow-wrap:anywhere; }
  .factory-address-banner > a { font-size:11px; white-space:nowrap; color:var(--accent); padding:8px 0; }
  .factory-contact-details { display:grid; gap:8px; margin-bottom:15px; color:var(--muted); }
  .factory-contact-details strong { color:var(--ink); font-weight:500; overflow-wrap:anywhere; }
  .restored-draft { display:flex; justify-content:space-between; align-items:center; gap:18px; background:#eef3e8; border:1px solid #d4dfcc; border-radius:9px; padding:19px 23px; margin-bottom:22px; }
  .restored-draft > div { min-width:0; }
  .restored-draft strong { font-size:14px; font-weight:600; }
  .restored-draft p { margin:7px 0 0; font-size:12px; color:var(--muted); line-height:1.8; overflow-wrap:anywhere; }
  .restored-draft .button { flex-shrink:0; }
  .draft-actions { min-width:0; }
  .draft-actions #draft-status { max-width:360px; }
  .draft-actions #new-project { padding:10px 0; margin-top:3px; text-decoration:underline; text-underline-offset:4px; }
  .product-dialog-layout { align-items:start; }
  #product-carousel.detail-visual { display:block; height:auto; min-height:0; padding:32px 18px 18px; min-width:0; border-radius:9px; }
  .detail-stage { aspect-ratio:4 / 3; display:flex; justify-content:center; align-items:center; background:#fafaf7; border:1px solid var(--line); border-radius:8px; overflow:hidden; touch-action:pan-y pinch-zoom; }
  .detail-stage #detail-image { display:block; width:100%; height:100%; max-height:none; object-fit:contain; margin:0; }
  .product-carousel-toolbar { display:flex; justify-content:center; align-items:center; gap:9px; padding:15px 0 8px; flex-wrap:wrap; }
  .product-carousel-toolbar .hero-arrow { width:44px; height:44px; }
  .product-carousel-toolbar .hero-count { min-width:58px; text-align:center; }
  .product-carousel-toolbar .hero-play-pause { min-height:44px; }
  #detail-gallery.detail-gallery { position:static; display:flex; justify-content:flex-start; gap:9px; flex-wrap:nowrap; overflow-x:auto; padding:8px 2px; }
  #detail-gallery button { flex:0 0 64px; width:64px; height:56px; border:1px solid #c7d1bf; border-radius:7px; background:#fafaf7; }
  #detail-gallery button.selected { border:2px solid var(--accent); background:#fff; }
  #detail-gallery img { width:100%; height:100%; max-height:none; margin:0; object-fit:contain; }
  .product-carousel-help { margin:5px 0 0; color:var(--muted); font-size:10px; line-height:1.8; }
  .product-carousel-settings { background:#f0f3e9; border:1px solid #d8e1cf; border-radius:8px; padding:16px; margin-top:15px; }
  .product-carousel-settings h3 { font-size:12px; margin:0 0 15px; }
  .product-carousel-settings p { font-size:10px; line-height:1.8; color:var(--muted); margin:12px 0 0; }
  .gallery-tile button { min-height:32px; }
  @media (max-width:580px) {
    .factory-address-banner { padding:12px 4%; gap:9px; align-items:flex-start; }
    .factory-address-banner > div { display:block; }
    .factory-address-banner > div > span { display:block; margin-bottom:3px; }
    .factory-address-banner strong { display:block; font-size:12px; }
    .factory-address-banner > a { font-size:10px; }
    .restored-draft { display:block; padding:17px; }
    .restored-draft .button { margin-top:12px; }
    .draft-actions { order:2; }
    .draft-actions #draft-status { max-width:none; }
    .draft-actions #new-project { width:auto; display:block; margin:3px auto 0; min-height:44px; }
    #product-carousel.detail-visual { padding:45px 14px 14px; }
    .detail-stage { aspect-ratio:4 / 3; max-height:330px; }
    .product-carousel-toolbar { gap:7px; }
    #detail-gallery button { flex-basis:58px; width:58px; height:52px; }
    .gallery-tile button { min-height:38px; padding:7px; }
  }
}
