/* Rudraamshika catalog + delivery-area administration: responsive extension. */
:root { --catalog-accent: #375c43; --catalog-accent-deep: #214934; --catalog-soft: #f1f7f2; --catalog-line: #dbe6dd; }
.catalogue-form, .catalogue-category-form, .service-area-page { width: min(100%, 1060px); }
.catalogue-form, .catalogue-category-form, .service-area-page { border-color: var(--catalog-line); box-shadow: 0 14px 40px rgba(24, 52, 36, .07); }
.catalogue-form .form-heading h1, .catalogue-category-form .form-heading h1, .service-area-page h1 { letter-spacing: -.045em; }
.catalogue-form .eyebrow, .catalogue-category-form .eyebrow { color: var(--catalog-accent); }
.catalogue-form .three-column { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.catalogue-form small, .catalogue-category-form small, .service-area-page small { display: block; color: #66746b; line-height: 1.5; font-size: .77rem; font-weight: 450; }
.catalogue-form input, .catalogue-form select, .catalogue-form textarea, .catalogue-category-form input, .catalogue-category-form select, .catalogue-category-form textarea,
.service-area-page input, .service-area-page select { min-width: 0; transition: border-color .15s ease, box-shadow .15s ease; }
.catalogue-form :is(input,select,textarea):focus-visible, .catalogue-category-form :is(input,select,textarea):focus-visible, .service-area-page :is(input,select):focus-visible { outline: none; border-color: var(--catalog-accent); box-shadow: 0 0 0 4px rgba(55,92,67,.12); }
.catalogue-form input[type=file] { padding: 10px; min-height: 54px; border-style: dashed; border-color: #b8cbbd; background: #fff; cursor: pointer; }
.catalogue-form input[type=file]::file-selector-button { border: 0; border-radius: 9px; padding: 9px 12px; background: #eaf2eb; color: #214934; font: inherit; font-weight: 750; cursor: pointer; margin-right: 14px; }
.catalogue-form input[type=file]:hover { border-color: #668977; }
.catalogue-form .item-image-editor { margin: 8px 0 16px; padding: 22px; border: 1px solid var(--catalog-line); border-radius: 18px; background: #f7faf7; }
.catalogue-form .item-image-editor h2 { margin: 0 0 8px; font-size: 1.15rem; color: #183324; }
.catalogue-form .item-image-editor .section-heading { margin-bottom: 17px; }
.catalogue-form .item-image-editor .section-heading p { margin: 0; color: var(--muted); font-size: .87rem; }
.catalogue-form .image-editor-grid { display: grid; grid-template-columns: minmax(170px,240px) minmax(0,1fr); gap: 23px; align-items: start; }
.catalogue-form .image-preview-card { display: grid; place-items: center; min-height: 222px; overflow: hidden; border: 1px dashed #b8cbbd; border-radius: 14px; background: #fff; }
.catalogue-form .item-image-preview { width: 100%; height: 222px; object-fit: contain; }
.catalogue-form .image-preview-placeholder { display: grid; gap: 7px; text-align: center; padding: 20px; color: var(--muted); }
.catalogue-form .image-preview-placeholder strong { color: var(--text); }
.catalogue-form .image-preview-placeholder span { font-size: .8rem; }
.catalogue-form .image-inputs { min-width: 0; }
.catalogue-form .catalogue-delivery-media { position: relative; }
.catalogue-form .catalogue-delivery-media:before { content: 'Product fulfilment'; display: inline-flex; margin-bottom: 9px; padding: 5px 9px; border-radius: 99px; background: #e3efe4; color: var(--catalog-accent-deep); font-weight: 800; letter-spacing: .045em; font-size: .7rem; text-transform: uppercase; }
.catalogue-form .catalogue-delivery-media > label { max-width: 100%; }
.catalogue-form .catalogue-delivery-media > label:first-of-type { max-width: 340px; }
.catalogue-form .catalogue-media-list { display: grid; gap: 9px; padding: 16px; margin: 12px 0 0; border: 1px solid #e3eae5; border-radius: 13px; background: white; }
.catalogue-form .catalogue-media-list > strong { color: #244531; }
.catalogue-form .catalogue-media-entry { display: flex; align-items: center; min-width: 0; gap: 10px; padding: 9px 12px; margin: 0; border: 1px solid #e6eae7; border-radius: 10px; background: #fbfdfb; font-weight: 550; }
.catalogue-form .catalogue-media-entry a { overflow-wrap: anywhere; min-width: 0; }
.catalogue-form .checkbox-card, .catalogue-category-form .checkbox-card { display: flex; align-items: flex-start; gap: 12px; min-width: 0; padding: 13px 14px; border: 1px solid var(--catalog-line); border-radius: 12px; background: #f8fbf8; }
.catalogue-form .checkbox-card input[type=checkbox], .catalogue-category-form .checkbox-card input[type=checkbox], .catalogue-media-entry input[type=checkbox] { flex: 0 0 18px; width: 18px; height: 18px; margin: 2px 0 0; box-shadow: none; }
.catalogue-form .checkbox-card span, .catalogue-category-form .checkbox-card span { min-width: 0; display: grid; gap: 3px; }
.catalogue-form .checkbox-card strong, .catalogue-category-form .checkbox-card strong { color: #253b2c; }
.catalogue-form .form-actions, .catalogue-category-form .form-actions { display: flex; justify-content: flex-end; flex-wrap: wrap; align-items: center; gap: 12px; padding-top: 22px; margin-top: 10px; border-top: 1px solid var(--catalog-line); }
.catalogue-form .button.primary, .catalogue-category-form .button.primary, .service-area-page .button.primary { background: var(--catalog-accent); }
.catalogue-form .button.primary:hover, .catalogue-category-form .button.primary:hover, .service-area-page .button.primary:hover { background: var(--catalog-accent-deep); }
.service-area-page { width: min(100%, 1060px) !important; }
.service-area-page .service-area-intro { margin: 6px 0 24px; color: #66756a; line-height: 1.65; max-width: 760px; }
.service-area-page .service-area-form { display: grid; grid-template-columns: 160px minmax(140px,1fr) 170px auto; gap: 14px; align-items: end; padding: 20px; border: 1px solid var(--catalog-line); border-radius: 16px; background: #f5faf6; }
.service-area-page .service-area-form label { margin-bottom: 0; }
.service-area-page .service-area-form .button { min-height: 46px; white-space: nowrap; }
.service-area-page .service-area-notice { padding: 12px 15px; border-left: 4px solid #53996d; border-radius: 9px; margin: 0 0 18px; background: #edf7ef; color: #234b33; }
.service-area-page .service-area-table-wrap { width: 100%; overflow-x: auto; margin-top: 22px; border: 1px solid var(--catalog-line); border-radius: 14px; }
.service-area-page table { width: 100%; min-width: 550px; border: 0; }
.service-area-page th { background: #f2f7f2; }
.service-area-page tbody tr:last-child td { border-bottom: 0; }
.service-area-page .area-policy { display: inline-block; padding: 5px 10px; border-radius: 99px; font-weight: 800; font-size: .75rem; text-transform: capitalize; }
.service-area-page .area-policy.allow { color: #16603c; background: #dff5e7; }
.service-area-page .area-policy.block { color: #a12824; background: #ffebe9; }
.service-area-page .service-area-table-wrap form { margin: 0; }
.service-area-page .service-area-back { margin-top: 20px; }
.is-hidden { display: none !important; }
@media(max-width:960px){.service-area-page .service-area-form{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.catalogue-form .three-column,.catalogue-form .image-editor-grid{grid-template-columns:1fr}.catalogue-form .item-image-preview,.catalogue-form .image-preview-card{height:200px;min-height:200px}.service-area-page .service-area-form{grid-template-columns:1fr}.catalogue-form .form-actions > *, .catalogue-category-form .form-actions > * { flex:1 1 auto; }.service-area-page .service-area-form .button{width:100%;}.catalogue-form .item-image-editor{padding:16px}}
@media(max-width:440px){.catalogue-form,.catalogue-category-form,.service-area-page{padding:20px 15px}.catalogue-form .form-actions,.catalogue-category-form .form-actions{flex-direction:column}.catalogue-form .form-actions>* ,.catalogue-category-form .form-actions>*{width:100%}}

/* OneDrive-backed category image management */
.catalogue-category-image-upload {
  display: grid;
  gap: .55rem;
  margin: 1rem 0;
}
.catalogue-category-image-upload input[type="file"] {
  padding: .8rem;
  border: 1px dashed #a5b7a9;
  border-radius: 10px;
  max-width: 100%;
}
.catalogue-category-current-image {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1rem;
  margin: .75rem 0 1rem;
}

/* 2026-10 media CRUD: saved cover, image gallery, deletion controls. */
.catalogue-form .saved-cover-panel { display:grid; gap: 5px; margin-bottom: 15px; padding: 12px 14px; border-radius: 12px; border: 1px solid #c9d8cb; background: #fff; }
.catalogue-form .saved-cover-panel > strong { color:#214b35; font-size:.88rem; }
.catalogue-form .saved-image-path { overflow-wrap:anywhere; font-size:.74rem; max-height: 3.2em; overflow:hidden; }
.catalogue-form .saved-file-link { color:#16634d; font-size:.83rem; font-weight: 700; }
.catalogue-form .image-load-warning { color:#983222; padding:8px; border-radius:8px; background:#fff1e9; }
.catalogue-form .gallery-heading { margin:18px 0 4px; font-size:1.05rem; color:#193d2d; }
.catalogue-form .gallery-help { margin:0 0 13px; font-size:.84rem; color:#596c60; }
.catalogue-form .product-media-grid { display:grid; grid-template-columns: repeat(auto-fill,minmax(165px,1fr)); gap:12px; margin:12px 0; }
.catalogue-form .product-media-grid:empty { display:none; }
.catalogue-form .product-media-tile { display:flex; flex-direction:column; gap:8px; padding:10px; border-radius:14px; border:1px solid #c9d7cd; background:#fff; min-width:0; }
.catalogue-form .product-media-tile.is-pending-removal { opacity:.6; border-color:#d47e7e; background:#fff0f0; }
.catalogue-form .product-media-thumb { height:118px; display:grid; place-items:center; overflow:hidden; border-radius:9px; background:#f2f5f2; }
.catalogue-form .product-media-thumb img, .catalogue-form .product-media-thumb video { width:100%; height:100%; object-fit:contain; }
.catalogue-form .product-media-file-icon { font-size:2.4rem; display:grid;place-items:center; }
.catalogue-form .product-media-filename { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:.78rem; font-weight:700; }
.catalogue-form .gallery-keep-input, .catalogue-form .gallery-cover-input { display:flex; align-items:center; gap:8px; min-height:28px; margin:0; font-size:.81rem; font-weight:650; }
.catalogue-form .gallery-keep-input input, .catalogue-form .gallery-cover-input input { width:17px; height:17px; min-height:0; margin:0; flex:0 0 auto; }
.catalogue-form .media-delete-button { border:1px solid #d89191; background:#fff8f8; color:#a22b2b; border-radius:9px; padding:7px 10px; cursor:pointer; font-weight:700; font-size:.82rem; }
.catalogue-form .pending-deletion-note { display:none; font-size:.74rem; color:#a22b2b; }
.catalogue-form .is-pending-removal .pending-deletion-note { display:block; }
.catalog-image-missing { display:flex; min-height:100px; flex:1;flex-direction:column; align-items:center;justify-content:center;gap:6px; background:#f4f5f7; color:#68717d; border-radius:12px; padding:12px; text-align:center; }
.catalog-image-missing span { font-size:2rem; }
.catalog-image-missing small { font-size:.7rem; }
@media(max-width:630px) { .catalogue-form .product-media-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .catalogue-form .image-editor-grid{grid-template-columns:1fr;} }

/* Variable attributes & delivery size policy */
.rv-category-options,.rv-variant-editor,.rv-html-options{border:1px solid #dcc5a6;border-radius:16px;padding:20px;margin:20px 0;background:#fffcf7}
.rv-category-options legend,.rv-html-options legend{font-weight:800;color:#751f2b;padding:0 8px}
.rv-option-checklist{display:flex;flex-wrap:wrap;gap:12px;margin:15px 0}
.rv-option-checklist label{display:flex;align-items:center;gap:8px;border:1px solid #dbcab2;border-radius:9px;padding:10px 15px;cursor:pointer;background:#fff}
.rv-variant-row{border:1px solid #ead5b5;border-radius:12px;padding:16px;margin:12px 0;background:#fff}
.rv-variant-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:12px}
.rv-variant-fields label{font-weight:600;font-size:.85rem;display:grid;gap:6px}
.rv-variant-fields input{min-width:0;width:100%;padding:10px;border:1px solid #d5d0c9;border-radius:7px}
.rv-variant-preview{width:90px;height:90px;object-fit:contain;margin:10px 0;border:1px solid #ddd;border-radius:7px}
.rv-shop-options{border-top:1px solid #e5d3b6;border-bottom:1px solid #e5d3b6;padding:18px 0;margin:14px 0}
.rv-shop-options h2{font-size:1.12rem;margin:0 0 12px}
.rv-shop-option{margin-bottom:12px}.rv-shop-option strong{display:block;margin-bottom:7px}
.rv-swatch-list{display:flex;flex-wrap:wrap;gap:9px}.rv-swatch-list button{display:inline-flex;align-items:center;gap:7px;background:#fff;border:1px solid #a49c93;color:#30221f;border-radius:9px;padding:8px 12px;cursor:pointer}
.rv-swatch-list button.selected{border:2px solid #751f2b;background:#fff1e8;color:#751f2b;font-weight:700}
.rv-color-dot{width:18px;height:18px;border:1px solid #aaa;border-radius:50%;display:inline-block}
.rv-variant-summary{color:#315b48;margin:8px 0 0;font-size:.9rem}
@media(max-width:650px){.rv-category-options,.rv-variant-editor{padding:14px}.rv-variant-fields{grid-template-columns:1fr 1fr}}
